1import{r as C,R as T,a as $l,b as Jc}from"./elements-DVh2jUIM.js";var qt=class{constructor(){this.allSyncListeners=new Map,this.allAsyncListeners=new Map,this.globalSyncListeners=new Set,this.globalAsyncListeners=new Set,this.asyncFunctionsQueue=[],this.scheduled=!1,this.firedEvents={}}setFrameworkOverrides(e){this.frameworkOverrides=e}getListeners(e,t,s){const i=t?this.allAsyncListeners:this.allSyncListeners;let o=i.get(e);return!o&&s&&(o=new Set,i.set(e,o)),o}noRegisteredListenersExist(){return this.allSyncListeners.size===0&&this.allAsyncListeners.size===0&&this.globalSyncListeners.size===0&&this.globalAsyncListeners.size===0}addEventListener(e,t,s=!1){this.getListeners(e,s,!0).add(t)}removeEventListener(e,t,s=!1){const i=this.getListeners(e,s,!1);i&&(i.delete(t),i.size===0&&(s?this.allAsyncListeners:this.allSyncListeners).delete(e))}addGlobalListener(e,t=!1){(t?this.globalAsyncListeners:this.globalSyncListeners).add(e)}removeGlobalListener(e,t=!1){(t?this.globalAsyncListeners:this.globalSyncListeners).delete(e)}dispatchEvent(e){const t=e;this.dispatchToListeners(t,!0),this.dispatchToListeners(t,!1),this.firedEvents[t.type]=!0}dispatchEventOnce(e){this.firedEvents[e.type]||this.dispatchEvent(e)}dispatchToListeners(e,t){const s=e.type;if(t&&"event"in e){const l=e.event;l instanceof Event&&(e.eventPath=l.composedPath())}const i=(l,a)=>l.forEach(d=>{if(!a.has(d))return;const c=this.frameworkOverrides?()=>this.frameworkOverrides.wrapIncoming(()=>d(e)):()=>d(e);t?this.dispatchAsync(c):c()}),o=this.getListeners(s,t,!1)??new Set,r=new Set(o);r.size>0&&i(r,o),new Set(t?this.globalAsyncListeners:this.globalSyncListeners).forEach(l=>{const a=this.frameworkOverrides?()=>this.frameworkOverrides.wrapIncoming(()=>l(s,e)):()=>l(s,e);t?this.dispatchAsync(a):a()})}dispatchAsync(e){if(this.asyncFunctionsQueue.push(e),!this.scheduled){const t=()=>{window.setTimeout(this.flushAsyncQueue.bind(this),0)};this.frameworkOverrides?this.frameworkOverrides.wrapIncoming(t):t(),this.scheduled=!0}}flushAsyncQueue(){this.scheduled=!1;const e=this.asyncFunctionsQueue.slice();this.asyncFunctionsQueue=[],e.forEach(t=>t())}},U=(e=>(e.CommunityCoreModule="@ag-grid-community/core",e.InfiniteRowModelModule="@ag-grid-community/infinite-row-model",e.ClientSideRowModelModule="@ag-grid-community/client-side-row-model",e.CsvExportModule="@ag-grid-community/csv-export",e.EnterpriseCoreModule="@ag-grid-enterprise/core",e.RowGroupingModule="@ag-grid-enterprise/row-grouping",e.ColumnsToolPanelModule="@ag-grid-enterprise/column-tool-panel",e.FiltersToolPanelModule="@ag-grid-enterprise/filter-tool-panel",e.MenuModule="@ag-grid-enterprise/menu",e.SetFilterModule="@ag-grid-enterprise/set-filter",e.MultiFilterModule="@ag-grid-enterprise/multi-filter",e.StatusBarModule="@ag-grid-enterprise/status-bar",e.SideBarModule="@ag-grid-enterprise/side-bar",e.RangeSelectionModule="@ag-grid-enterprise/range-selection",e.MasterDetailModule="@ag-grid-enterprise/master-detail",e.RichSelectModule="@ag-grid-enterprise/rich-select",e.GridChartsModule="@ag-grid-enterprise/charts",e.ViewportRowModelModule="@ag-grid-enterprise/viewport-row-model",e.ServerSideRowModelModule="@ag-grid-enterprise/server-side-row-model",e.ExcelExportModule="@ag-grid-enterprise/excel-export",e.ClipboardModule="@ag-grid-enterprise/clipboard",e.SparklinesModule="@ag-grid-enterprise/sparklines",e.AdvancedFilterModule="@ag-grid-enterprise/advanced-filter",e.AngularModule="@ag-grid-community/angular",e.ReactModule="@ag-grid-community/react",e.VueModule="@ag-grid-community/vue",e))(U||{}),kn={};function co(e,t){kn[t]||(e(),kn[t]=!0)}function ut(e,...t){console.log("AG Grid: "+e,...t)}function R(e,...t){co(()=>console.warn("AG Grid: "+e,...t),e+(t==null?void 0:t.join("")))}function _(e,...t){co(()=>console.error("AG Grid: "+e,...t),e+(t==null?void 0:t.join("")))}function Ar(e){return!!(e&&e.constructor&&e.call&&e.apply)}function eu(e){tu(e,400)}var xo=[],Ao=!1;function On(e){xo.push(e),!Ao&&(Ao=!0,window.setTimeout(()=>{const t=xo.slice();xo.length=0,Ao=!1,t.forEach(s=>s())},0))}function tu(e,t=0){e.length>0&&window.setTimeout(()=>e.forEach(s=>s()),t)}function Me(e,t){let s;return function(...i){const o=this;window.clearTimeout(s),s=window.setTimeout(function(){e.apply(o,i)},t)}}function Nn(e,t){let s=0;return function(...i){const o=this,r=new Date().getTime();r-s<t||(s=r,e.apply(o,i))}}function jl(e,t,s=100,i){const o=new Date().getTime();let r=null,n=!1;const l=()=>{const a=new Date().getTime()-o>s;(e()||a)&&(t(),n=!0,r!=null&&(window.clearInterval(r),r=null))};l(),n||(r=window.setInterval(l,10))}function ql(...e){return t=>e.reduce((s,i)=>i(s),t)}function Oe(e){return e==null||e===""?null:e}function E(e,t=!1){return e!=null&&(e!==""||t)}function z(e){return!E(e)}function Re(e){return e==null||e.length===0}function xt(e){return e!=null&&typeof e.toString=="function"?e.toString():null}function is(e){if(e===void 0)return;if(e===null||e==="")return null;if(typeof e=="number")return isNaN(e)?void 0:e;const t=parseInt(e,10);return isNaN(t)?void 0:t}function tr(e){if(e!==void 0)return e===null||e===""?!1:sr(e)}function sr(e){return typeof e=="boolean"?e:typeof e=="string"?e.toUpperCase()==="TRUE"||e=="":!1}function ci(e,t){const s=e?JSON.stringify(e):null,i=t?JSON.stringify(t):null;return s===i}function Hi(e,t,s=!1){const i=e==null,o=t==null;if(e&&e.toNumber&&(e=e.toNumber()),t&&t.toNumber&&(t=t.toNumber()),i&&o)return 0;if(i)return-1;if(o)return 1;function r(n,l){return n>l?1:n<l?-1:0}if(typeof e!="string"||!s)return r(e,t);try{return e.localeCompare(t)}catch{return r(e,t)}}function Wi(e){if(e instanceof Set||e instanceof Map){const t=[];return e.forEach(s=>t.push(s)),t}return Object.values(e)}function Yl(e,t){return e.get("rowModelType")===t}function re(e){return Yl(e,"clientSide")}function Ue(e){return Yl(e,"serverSide")}function De(e,t){return e.get("domLayout")===t}function ui(e){return os(e)!==void 0}function qi(e){return!e.get("suppressAsyncEvents")}function Tr(e){return typeof e.get("getRowHeight")=="function"}function su(e,t){return t?!e.get("enableStrictPivotColumnOrder"):e.get("maintainColumnOrder")}function Ge(e,t,s=!1,i){if(i==null&&(i=e.environment.getDefaultRowHeight()),Tr(e)){if(s)return{height:i,estimated:!0};const n={node:t,data:t.data},l=e.getCallback("getRowHeight")(n);if(ir(l))return l===0&&R("The return of `getRowHeight` cannot be zero. If the intention is to hide rows, use a filter instead."),{height:Math.max(1,l),estimated:!1}}if(t.detail&&e.get("masterDetail"))return iu(e);const o=e.get("rowHeight");return{height:o&&ir(o)?o:i,estimated:!1}}function iu(e){if(e.get("detailRowAutoHeight"))return{height:1,estimated:!1};const t=e.get("detailRowHeight");return ir(t)?{height:t,estimated:!1}:{height:300,estimated:!1}}function At(e){const{environment:t}=e,s=e.get("rowHeight");if(!s||z(s))return t.getDefaultRowHeight();const i=t.refreshRowHeightVariable();return i!==-1?i:(R("row height must be a number if not using standard row model"),t.getDefaultRowHeight())}function ir(e){return!isNaN(e)&&typeof e=="number"&&isFinite(e)}function hi(e,t,s){const i=t[e.getDomDataKey()];return i?i[s]:void 0}function ls(e,t,s,i){const o=e.getDomDataKey();let r=t[o];z(r)&&(r={},t[o]=r),r[s]=i}function le(e){let t=null;const s=e.get("getDocument");return s&&E(s)?t=s():e.eGridDiv&&(t=e.eGridDiv.ownerDocument),t&&E(t)?t:document}function Ql(e){return le(e).defaultView||window}function pi(e){return e.eGridDiv.getRootNode()}function Q(e){return pi(e).activeElement}function gi(e){const t=le(e),s=Q(e);return s===null||s===t.body}function bs(e){return e.get("ensureDomOrder")?!1:e.get("animateRows")}function uo(e){return!(e.get("paginateChildRows")||e.get("groupHideOpenParents")||De(e,"print"))}function ct(e){const t=e.get("autoGroupColumnDef");return!(t!=null&&t.comparator)&&!e.get("treeData")}function fi(e){const t=e.get("groupAggFiltering");if(typeof t=="function")return e.getCallback("groupAggFiltering");if(t===!0)return()=>!0}function ho(e){const t=e.get("grandTotalRow");if(t)return t;if(e.get("groupIncludeTotalFooter"))return"bottom"}function As(e){const t=e.get("groupTotalRow");if(typeof t=="function")return e.getCallback("groupTotalRow");if(t)return()=>t;const s=e.get("groupIncludeFooter");if(typeof s=="function"){const i=e.getCallback("groupIncludeFooter");return o=>i(o)?"bottom":void 0}return()=>s?"bottom":void 0}function Ir(e){return e.exists("groupDisplayType")?e.get("groupDisplayType")==="multipleColumns":e.get("groupHideOpenParents")}function po(e,t){return t?!1:e.get("groupDisplayType")==="groupRows"}function Tt(e){const t=e.getCallback("getRowId");return t===void 0?t:s=>{let i=t(s);
1return typeof i!="string"&&(R("The getRowId callback must return a string. The ID ",i," is being cast to a string."),i=String(i)),i}}function Ts(e){return(e==null?void 0:e.checkboxes)??!0}function Yi(e){return(e==null?void 0:e.mode)==="multiRow"&&(e.headerCheckbox??!0)}function ou(e){return(e==null?void 0:e.hideDisabledCheckboxes)??!1}function Lr(e){return typeof e.get("rowSelection")!="string"}function ru(e){return e.get("cellSelection")!==void 0}function nu(e){const t=e.get("cellSelection");return t!==void 0?typeof t!="boolean"?(t==null?void 0:t.suppressMultiRanges)??!1:!1:e.get("suppressMultiRangeSelection")}function yt(e){const t=e.get("cellSelection");return t!==void 0?!!t:e.get("enableRangeSelection")}function lu(e){var i;const t=e.get("cellSelection");return t!==void 0?typeof t!="boolean"?((i=t.handle)==null?void 0:i.mode)==="range":!1:e.get("enableRangeHandle")}function Bn(e){var i;const t=e.get("cellSelection");return t!==void 0?typeof t!="boolean"?((i=t.handle)==null?void 0:i.mode)==="fill":!1:e.get("enableFillHandle")}function Xl(e){const t=e.get("rowSelection")??"single";if(typeof t=="string"){const s=e.get("suppressRowClickSelection"),i=e.get("suppressRowDeselection");return s&&i?!1:s?"enableDeselection":i?"enableSelection":!0}return t.mode==="singleRow"||t.mode==="multiRow"?t.enableClickSelection??!1:!1}function au(e){const t=Xl(e);return t===!0||t==="enableSelection"}function Vn(e){const t=Xl(e);return t===!0||t==="enableDeselection"}function Gr(e){const t=e.get("rowSelection");return typeof t=="string"?e.get("isRowSelectable"):t==null?void 0:t.isRowSelectable}function os(e){const t=e.get("rowSelection");if(typeof t=="string")switch(t){case"multiple":return"multiRow";case"single":return"singleRow";default:return}return t==null?void 0:t.mode}function Is(e){return os(e)==="multiRow"}function du(e){const t=e.get("rowSelection");return typeof t=="string"?e.get("rowMultiSelectWithClick"):(t==null?void 0:t.enableSelectionWithoutKeys)??!1}function kr(e){const t=e.get("rowSelection");if(typeof t=="string"){const s=e.get("groupSelectsChildren"),i=e.get("groupSelectsFiltered");return s&&i?"filteredDescendants":s?"descendants":"self"}return(t==null?void 0:t.mode)==="multiRow"?t.groupSelects:void 0}function It(e){const t=kr(e);return t==="descendants"||t==="filteredDescendants"}function To(e){return e.isModuleRegistered("@ag-grid-enterprise/set-filter")&&!e.get("suppressSetFilterByDefault")}function ei(e){return e!=null&&e.length>0}function W(e){if(!(!e||!e.length))return e[e.length-1]}function Je(e,t,s){return e==null&&t==null?!0:e!=null&&t!=null&&e.length===t.length&&e.every((i,o)=>s?s(i,t[o]):t[o]===i)}function cu(e){return e.sort((t,s)=>t-s)}function uu(e,t){if(e)for(let s=e.length-2;s>=0;s--){const i=e[s]===t,o=e[s+1]===t;i&&o&&e.splice(s+1,1)}}function Zl(e,t){const s=e.indexOf(t);s>=0&&(e[s]=e[e.length-1],e.pop())}function ke(e,t){const s=e.indexOf(t);s>=0&&e.splice(s,1)}function hu(e,t){for(let s=0;s<t.length;s++)Zl(e,t[s])}function pu(e,t){for(let s=0;s<t.length;s++)ke(e,t[s])}function Ls(e,t,s){e.splice(s,0,t)}function Hn(e,t,s){if(!(e==null||t==null))for(let i=t.length-1;i>=0;i--){const o=t[i];Ls(e,o,s)}}function Jl(e,t,s){pu(e,t),t.slice().reverse().forEach(i=>Ls(e,i,s))}function et(e,t){return e.indexOf(t)>-1}function gu(e){return(e==null?void 0:e.flatMap(t=>t))??[]}function Wn(e,t){t==null||e==null||t.forEach(s=>e.push(s))}var ea="__ag_Grid_Stop_Propagation",fu=["touchstart","touchend","touchmove","touchcancel","scroll"],Io={};function Rt(e){e[ea]=!0}function ht(e){return e[ea]===!0}var ta=(()=>{const e={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return s=>{if(typeof Io[s]=="boolean")return Io[s];const i=document.createElement(e[s]||"div");return s="on"+s,Io[s]=s in i}})();function or(e,t,s){let i=t;for(;i;){const o=hi(e,i,s);if(o)return o;i=i.parentElement}return null}function rr(e,t){return!t||!e?!1:Cu(t).indexOf(e)>=0}function mu(e){const t=[];let s=e.target;for(;s;)t.push(s),s=s.parentElement;return t}function Cu(e){const t=e;return t.path?t.path:t.composedPath?t.composedPath():mu(t)}function vu(e,t,s,i){const r=et(fu,s)?{passive:!0}:void 0;e&&e.addEventListener&&e.addEventListener(t,s,i,r)}var b=class{constructor(){this.destroyFunctions=[],this.destroyed=!1,this.__v_skip=!0,this.propertyListenerId=0,this.lastChangeSetIdLookup={},this.isAlive=()=>!this.destroyed}preWireBeans(e){this.frameworkOverrides=e.frameworkOverrides,this.stubContext=e.context,this.eventService=e.eventService,this.gos=e.gos,this.localeService=e.localeService}getFrameworkOverrides(){return this.frameworkOverrides}destroy(){for(let e=0;e<this.destroyFunctions.length;e++)this.destroyFunctions[e]();this.destroyFunctions.length=0,this.destroyed=!0,this.dispatchLocalEvent({type:"destroyed"})}addEventListener(e,t,s){this.localEventService||(this.localEventService=new qt),this.localEventService.addEventListener(e,t,s)}removeEventListener(e,t,s){this.localEventService&&this.localEventService.removeEventListener(e,t,s)}dispatchLocalEvent(e){this.localEventService&&this.localEventService.dispatchEvent(e)}
1addManagedElementListeners(e,t){return this._setupListeners(e,t)}addManagedEventListeners(e){return this._setupListeners(this.eventService,e)}addManagedListeners(e,t){return this._setupListeners(e,t)}_setupListeners(e,t){const s=[];for(const i in t){const o=t[i];o&&s.push(this._setupListener(e,i,o))}return s}_setupListener(e,t,s){if(this.destroyed)return()=>null;e instanceof HTMLElement?vu(this.getFrameworkOverrides(),e,t,s):e.addEventListener(t,s);const i=()=>(e.removeEventListener(t,s),null);return this.destroyFunctions.push(i),()=>(i(),this.destroyFunctions=this.destroyFunctions.filter(o=>o!==i),null)}setupGridOptionListener(e,t){this.gos.addPropertyEventListener(e,t);const s=()=>(this.gos.removePropertyEventListener(e,t),null);return this.destroyFunctions.push(s),()=>(s(),this.destroyFunctions=this.destroyFunctions.filter(i=>i!==s),null)}addManagedPropertyListener(e,t){return this.destroyed?()=>null:this.setupGridOptionListener(e,t)}addManagedPropertyListeners(e,t){if(this.destroyed)return;const s=e.join("-")+this.propertyListenerId++,i=o=>{if(o.changeSet){if(o.changeSet&&o.changeSet.id===this.lastChangeSetIdLookup[s])return;this.lastChangeSetIdLookup[s]=o.changeSet.id}const r={type:"gridPropertyChanged",changeSet:o.changeSet,source:o.source};t(r)};e.forEach(o=>this.setupGridOptionListener(o,i))}addDestroyFunc(e){this.isAlive()?this.destroyFunctions.push(e):e()}createManagedBean(e,t){const s=this.createBean(e,t);return this.addDestroyFunc(this.destroyBean.bind(this,e,t)),s}createBean(e,t,s){return(t||this.stubContext).createBean(e,s)}destroyBean(e,t){return(t||this.stubContext).destroyBean(e)}destroyBeans(e,t){return(t||this.stubContext).destroyBeans(e)}};function be(e){return e instanceof ti}var ti=class extends b{constructor(e,t,s,i){super(),this.isColumn=!1,this.expandable=!1,this.instanceId=ia(),this.expandableListenerRemoveCallback=null,this.colGroupDef=e,this.groupId=t,this.expanded=!!e&&!!e.openByDefault,this.padding=s,this.level=i}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}setOriginalParent(e){this.originalParent=e}getOriginalParent(){return this.originalParent}getLevel(){return this.level}isVisible(){return this.children?this.children.some(e=>e.isVisible()):!1}isPadding(){return this.padding}setExpanded(e){this.expanded=e===void 0?!1: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}addLeafColumns(e){this.children&&this.children.forEach(t=>{bt(t)?e.push(t):be(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);this.getLeafColumns().forEach(t=>t.addEventListener("visibleChanged",e)),this.expandableListenerRemoveCallback=()=>{this.getLeafColumns().forEach(t=>t.removeEventListener("visibleChanged",e)),this.expandableListenerRemoveCallback=null}}setExpandable(){if(this.isPadding())return;let e=!1,t=!1,s=!1;const i=this.findChildrenRemovingPadding();for(let r=0,n=i.length;r<n;r++){const l=i[r];if(!l.isVisible())continue;const a=l.getColumnGroupShow();a==="open"?(e=!0,s=!0):a==="closed"?(t=!0,s=!0):(e=!0,t=!0)}const o=e&&t&&s;this.expandable!==o&&(this.expandable=o,this.dispatchLocalEvent({type:"expandableChanged"}))}findChildrenRemovingPadding(){const e=[],t=s=>{s.forEach(i=>{be(i)&&i.isPadding()?t(i.children):e.push(i)})};return t(this.children),e}onColumnVisibilityChanged(){this.setExpandable()}},sa="ag-Grid-ControlsColumn",Su=class extends b{constructor(){super(...arguments),this.beanName="
1controlsColService"}createControlsCols(){const{gos:e}=this,t=e.get("rowSelection");if(!t||typeof t!="object")return[];const s=Ts(t),i=Yi(t);if(s||i){const o=e.get("selectionColumnDef"),n={maxWidth:50,resizable:!1,suppressHeaderMenuButton:!0,sortable:!1,suppressMovable:!0,lockPosition:e.get("enableRtl")?"right":"left",comparator(a,d,c,u){const h=c.isSelected(),p=u.isSelected();return h&&p?0:h?1:-1},editable:!1,suppressFillHandle:!0,...o,colId:`${sa}`},l=new fo(n,null,n.colId,!1);return this.createBean(l),[l]}return[]}},as="ag-Grid-AutoColumn";function Or(e){const t=[],s=i=>{for(let o=0;o<i.length;o++){const r=i[o];bt(r)?t.push(r):be(r)&&s(r.getChildren())}};return s(e),t}function Mt(e){return e.reduce((t,s)=>t+s.getActualWidth(),0)}function zt(e,t,s){const i={};if(!t)return;Lt(null,t,r=>{i[r.getInstanceId()]=r}),s&&Lt(null,s,r=>{i[r.getInstanceId()]=null});const o=Object.values(i).filter(r=>r!=null);e.destroyBeans(o)}function nr(e){return e.getId().startsWith(as)}function Si(e){return e.getColId().startsWith(sa)}function zi(e){let t=[];return e instanceof Array?e.some(i=>typeof i!="string")?R("if colDef.type is supplied an array it should be of type 'string[]'"):t=e:typeof e=="string"?t=e.split(","):R("colDef.type should be of type 'string' | 'string[]'"),t}var Nr=class{constructor(e){this.frameworkOverrides=e,this.wrappedListeners=new Map,this.wrappedGlobalListeners=new Map}wrap(e){let t=e;return this.frameworkOverrides.shouldWrapOutgoing&&(t=s=>{this.frameworkOverrides.wrapOutgoing(()=>e(s))},this.wrappedListeners.set(e,t)),t}wrapGlobal(e){let t=e;return this.frameworkOverrides.shouldWrapOutgoing&&(t=(s,i)=>{this.frameworkOverrides.wrapOutgoing(()=>e(s,i))},this.wrappedGlobalListeners.set(e,t)),t}unwrap(e){return this.wrappedListeners.get(e)??e}unwrapGlobal(e){return this.wrappedGlobalListeners.get(e)??e}},Br=new Set(["__proto__","constructor","prototype"]);function Pe(e,t){if(e!=null){if(Array.isArray(e)){for(let s=0;s<e.length;s++)t(s.toString(),e[s]);return}for(const[s,i]of Object.entries(e))t(s,i)}}function go(e){const t={},s=Object.keys(e);for(let i=0;i<s.length;i++){if(Br.has(s[i]))continue;const o=s[i],r=e[o];t[o]=r}return t}function lr(e,t){if(!e)return;const s=e,i={};return Object.keys(s).forEach(o=>{if(t&&t.indexOf(o)>=0||Br.has(o))return;const r=s[o];ar(r)&&r.constructor===Object?i[o]=lr(r):i[o]=r}),i}function jt(e){if(!e)return[];const t=Object;if(typeof t.values=="function")return t.values(e);const s=[];for(const i in e)e.hasOwnProperty(i)&&e.propertyIsEnumerable(i)&&s.push(e[i]);return s}function Ee(e,t,s=!0,i=!1){E(t)&&Pe(t,(o,r)=>{if(Br.has(o))return;let n=e[o];n!==r&&(i&&n==null&&r!=null&&typeof r=="object"&&r.constructor===Object&&(n={},e[o]=n),ar(r)&&ar(n)&&!Array.isArray(n)?Ee(n,r,s,i):(s||r!==void 0)&&(e[o]=r))})}function si(e,t,s){if(!t||!e)return;if(!s)return e[t];const i=t.split(".");let o=e;for(let r=0;r<i.length;r++){if(o==null)return;o=o[i[r]]}return o}function ar(e){return typeof e=="object"&&e!==null}var wu={resizable:!0,sortable:!0},yu=0;function ia(){return yu++}function bt(e){return e instanceof fo}var fo=class extends b{constructor(e,t,s,i){super(),this.isColumn=!0,this.instanceId=ia(),this.autoHeaderHeight=null,this.moving=!1,this.menuVisible=!1,this.lastLeftPinned=!1,this.firstRightPinned=!1,this.filterActive=!1,this.columnEventService=new qt,this.tooltipEnabled=!1,this.rowGroupActive=!1,this.pivotActive=!1,this.aggregationActive=!1,this.colDef=e,this.userProvidedColDef=t,this.colId=s,this.primary=i,this.setState(e)}wireBeans(e){this.columnHoverService=e.columnHoverService}getInstanceId(){return this.instanceId}setState(e){e.sort!==void 0?(e.sort==="asc"||e.sort==="desc")&&(this.sort=e.sort):(e.initialSort==="asc"||e.initialSort==="desc")&&(this.sort=e.initialSort);const t=e.sortIndex,s=e.initialSortIndex;t!==void 0?t!==null&&(this.sortIndex=t):s!==null&&(this.sortIndex=s);const i=e.hide,o=e.initialHide;i!==void 0?this.visible=!i:this.visible=!o,e.pinned!==void 0?this.setPinned(e.pinned):this.setPinned(e.initialPinned);const r=e.flex,n=e.initialFlex;r!==void 0?this.flex=r:n!==void 0&&(this.flex=n)}setColDef(e,t,s){this.colDef=e,this.userProvidedColDef=t,this.initMinAndMaxWidths(),this.initDotNotation(),this.initTooltip(),this.columnEventService.dispatchEvent(this.createColumnEvent("colDefChanged",s))}getUserProvidedColDef(){return this.userProvidedColDef}setParent(e){this.parent=e}getParent(){return this.parent}setOriginalParent(e){this.originalParent=e}getOriginalParent(){return this.originalParent}postConstruct(){this.initMinAndMaxWidths(),this.resetActualWidth("gridInitializing"),this.initDotNotation(),this.initTooltip()}initDotNotation(){const e=this.gos.get("suppressFieldDotNotation");this.fieldContainsDots=E(this.colDef.field)&&this.colDef.field.indexOf(".")>=0&&!e,this.tooltipFieldContainsDots=E(this.colDef.tooltipField)&&this.colDef.tooltipField.indexOf(".")>=0&&!e}initMinAndMaxWidths(){const e=this.colDef;this.minWidth=e.minWidth??this.gos.environment.getDefaultColumnMinWidth(),this.maxWidth=e.maxWidth??Number.MAX_SAFE_INTEGER}initTooltip(){this.tooltipEnabled=E(this.colDef.tooltipField)||E(this.colDef.tooltipValueGetter)||E(this.colDef.tooltipComponent)}resetActualWidth(e){const t=this.calculateColInitialWidth(this.colDef);this.setActualWidth(t,e,!0)}calculateColInitialWidth(e){let t;const s=is(e.width),i=is(e.initialWidth);return s!=null?t=s:i!=null?t=i:t=200,Math.max(Math.min(t,this.maxWidth),this.minWidth)}isEmptyGroup(){return!1}isRowGroupDisplayed(e){if(z(this.colDef)||z(this.colDef.showRowGroup))return!1;const t=this.colDef.showRowGroup===!0,s=this.colDef.showRowGroup===e;return t||s}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){var i;this.frameworkOverrides.shouldWrapOutgoing&&!this.frameworkEventListenerService&&(this.columnEventService.setFrameworkOverrides(this.frameworkOverrides),this.frameworkEventListenerService=new Nr(this.frameworkOverrides));const s=((i=this.frameworkEventListenerService)==null?void 0:i.wrap(t))??t;this.columnEventService.addEventListener(e,s)}removeEventListener(e,t){var i;const s=((i=this.frameworkEventListenerService)==null?void 0:i.unwrap(t))??t;this.columnEventService.removeEventListener(e,s)}createColumnFunctionCallbackParams(e){return this.gos.addGridCommonParams({node:e,data:e.data,column:this,colDef:this.colDef})}isSuppressNavigable(e){if(typeof this.colDef.suppressNavigable=="boolean")return this.colDef.suppressNavigable;if(typeof this.colDef.suppressNavigable=="function"){const t=this.createColumnFunctionCallbackParams(e),s=this.colDef.suppressNavigable;return s(t)}return!1}isCellEditable(e){if(e.group){if(this.gos.get("treeData")){if(!e.data&&!this.gos.get("enableGroupEdit"))return!1}else if(!this.gos.get("enableGroupEdit"))return!1}return this.isColumnFunc(e,this.colDef.editable)}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){const t=this.gos.get("rowSelection");if(t&&typeof t!="string"){const s=Si(this)&&Ts(t);return this.isColumnFunc(e,s)}else return this.isColumnFunc(e,this.colDef.checkboxSelection)}isSuppressPaste(e){return this.isColumnFunc(e,this.colDef?this.colDef.suppressPaste:null)}isResizable(){return!!this.getColDefValue("resizable")}getColDefValue(e){return this.colDef[e]??wu[e]}isColumnFunc(e,t){if(typeof t=="boolean")return t;if(typeof t=="function"){const s=this.createColumnFunctionCallbackParams(e);return t(s)}return!1}setHighlighted(e){this.highlighted!==e&&(this.highlighted=e,this.columnEventService.dispatchEvent(this.createColumnEvent("headerHighlightChanged","uiColumnMoved")))}setMoving(e,t){this.moving=e,this.columnEventService.dispatchEvent(this.createColumnEvent("movingChanged",t))}createColumnEvent(e,t){return this.gos.addGridCommonParams({type:e,column:this,columns:[this],source:t})}isMoving(){return this.moving}getSort(){return this.sort}setSort(e,t){this.sort!==e&&(this.sort=e,this.columnEventService.dispatchEvent(this.createColumnEvent("sortChanged",t))),this.dispatchStateUpdatedEvent("sort")}isSortable(){return!!this.getColDefValue("sortable")}isSortAscending(){return this.sort==="asc"}isSortDescending(){return this.sort==="desc"}isSortNone(){return z(this.sort)}isSorting(){return E(this.sort)}getSortIndex(){return this.sortIndex}setSortIndex(e){this.sortIndex=e,this.dispatchStateUpdatedEvent("sortIndex")}setMenuVisible(e,t){this.menuVisible!==e&&(this.menuVisible=e,this.columnEventService.dispatchEvent(this.createColumnEvent("menuVisibleChanged",t)))}isMenuVisible(){return this.menuVisible}setAggFunc(e){this.aggFunc=e,this.dispatchStateUpdatedEvent("aggFunc")}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.columnEventService.dispatchEvent(this.createColumnEvent("leftChanged",t)))}isFilterActive(){return this.filterActive}setFilterActive(e,t,s){this.filterActive!==e&&(this.filterActive=e,this.columnEventService.dispatchEvent(this.createColumnEvent("filterActiveChanged",t)));const i=this.createColumnEvent("filterChanged",t);s&&Ee(i,s),this.columnEventService.dispatchEvent(i)}isHovered(){return this.columnHoverService.isHovered(this)}setPinned(e){e===!0||e==="left"?this.pinned="left":e==="right"?this.pinned="right":this.pinned=null,this.dispatchStateUpdatedEvent("pinned")}setFirstRightPinned(e,t){this.firstRightPinned!==e&&(this.firstRightPinned=e,this.columnEventService.dispatchEvent(this.createColumnEvent("firstRightPinnedChanged",t)))}setLastLeftPinned(e,t){this.lastLeftPinned!==e&&(this.lastLeftPinned=e,this.columnEventService.dispatchEvent(this.createColumnEvent("lastLeftPinnedChanged",t)))}isFirstRightPinned(){return this.firstRightPinned}isLastLeftPinned(){return this.lastLeftPinned}isPinned(){return this.pinned==="left"||this.pinned==="right"}isPinnedLeft(){return this.pinned==="left"}isPinnedRight(){return this.pinned==="right"}getPinned(){return this.pinned}setVisible(e,t){const s=e===!0;this.visible!==s&&(this.visible=s,this.columnEventService.dispatchEvent(this.createColumnEvent("visibleChanged",t))),this.dispatchStateUpdatedEvent("hide")}isVisible(){return this.visible}
1isSpanHeaderHeight(){return!this.getColDef().suppressSpanHeaderHeight}getColumnGroupPaddingInfo(){let e=this.getParent();if(!e||!e.isPadding())return{numberOfParents:0,isSpanningTotal:!1};const t=e.getPaddingLevel()+1;let s=!0;for(;e;){if(!e.isPadding()){s=!1;break}e=e.getParent()}return{numberOfParents:t,isSpanningTotal:s}}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 this.gos.addGridCommonParams({node:e,data:e.data,colDef:this.colDef,column:this})}getColSpan(e){if(z(this.colDef.colSpan))return 1;const t=this.createBaseColDefParams(e),s=this.colDef.colSpan(t);return Math.max(s,1)}getRowSpan(e){if(z(this.colDef.rowSpan))return 1;const t=this.createBaseColDefParams(e),s=this.colDef.rowSpan(t);return Math.max(s,1)}setActualWidth(e,t,s=!1){e=Math.max(e,this.minWidth),e=Math.min(e,this.maxWidth),this.actualWidth!==e&&(this.actualWidth=e,this.flex&&t!=="flex"&&t!=="gridInitializing"&&(this.flex=null),s||this.fireColumnWidthChangedEvent(t)),this.dispatchStateUpdatedEvent("width")}fireColumnWidthChangedEvent(e){this.columnEventService.dispatchEvent(this.createColumnEvent("widthChanged",e))}isGreaterThanMax(e){return e>this.maxWidth}getMinWidth(){return this.minWidth}getMaxWidth(){return this.maxWidth}getFlex(){return this.flex||0}setFlex(e){this.flex!==e&&(this.flex=e),this.dispatchStateUpdatedEvent("flex")}setMinimum(e){this.setActualWidth(this.minWidth,e)}setRowGroupActive(e,t){this.rowGroupActive!==e&&(this.rowGroupActive=e,this.columnEventService.dispatchEvent(this.createColumnEvent("columnRowGroupChanged",t))),this.dispatchStateUpdatedEvent("rowGroup")}isRowGroupActive(){return this.rowGroupActive}setPivotActive(e,t){this.pivotActive!==e&&(this.pivotActive=e,this.columnEventService.dispatchEvent(this.createColumnEvent("columnPivotChanged",t))),this.dispatchStateUpdatedEvent("pivot")}isPivotActive(){return this.pivotActive}isAnyFunctionActive(){return this.isPivotActive()||this.isRowGroupActive()||this.isValueActive()}isAnyFunctionAllowed(){return this.isAllowPivot()||this.isAllowRowGroup()||this.isAllowValue()}setValueActive(e,t){this.aggregationActive!==e&&(this.aggregationActive=e,this.columnEventService.dispatchEvent(this.createColumnEvent("columnValueChanged",t)))}isValueActive(){return this.aggregationActive}isAllowPivot(){return this.colDef.enablePivot===!0}isAllowValue(){return this.colDef.enableValue===!0}isAllowRowGroup(){return this.colDef.enableRowGroup===!0}dispatchStateUpdatedEvent(e){this.columnEventService.dispatchEvent({type:"columnStateUpdated",key:e})}},Ru={numericColumn:{headerClass:"ag-right-aligned-header",cellClass:"ag-right-aligned-cell"},rightAligned:{headerClass:"ag-right-aligned-header",cellClass:"ag-right-aligned-cell"}},bu=class{constructor(){this.existingKeys={}}addExistingKeys(e){for(let t=0;t<e.length;t++)this.existingKeys[e[t]]=!0}getUniqueKey(e,t){e=xt(e);let s=0;for(;;){let i;if(e?(i=e,s!==0&&(i+="_"+s)):t?(i=t,s!==0&&(i+="_"+s)):i=s,!this.existingKeys[i])return this.existingKeys[i]=!0,String(i);s++}}},Fu=class extends b{constructor(){super(...arguments),this.beanName="columnFactory"}wireBeans(e){this.dataTypeService=e.dataTypeService}createColumnTree(e,t,s,i){const o=new bu,{existingCols:r,existingGroups:n,existingColKeys:l}=this.extractExistingTreeData(s);o.addExistingKeys(l);const a=this.recursivelyCreateColumns(e,0,t,r,o,n,i),d=this.findMaxDept(a,0),c=this.balanceColumnTree(a,0,d,o);return Lt(null,c,(h,p)=>{be(h)&&h.setupExpandable(),h.setOriginalParent(p)}),{columnTree:c,treeDept:d}}extractExistingTreeData(e){const t=[],s=[],i=[];return e&&Lt(null,e,o=>{if(be(o)){const r=o;s.push(r)}else{const r=o;i.push(r.getId()),t.push(r)}}),{existingCols:t,existingGroups:s,existingColKeys:i}}balanceTreeForAutoCols(e,t){const s=[],i=this.findDepth(t);return e.forEach(o=>{let r=o;for(let n=i-1;n>=0;n--){const l=new ti(null,`FAKE_PATH_${o.getId()}}_${n}`,!0,n);this.createBean(l),l.setChildren([r]),r.setOriginalParent(l),r=l}i===0&&o.setOriginalParent(null),s.push(r)}),[s,i]}findDepth(e){let t=0,s=e;for(;s&&s[0]&&be(s[0]);)t++,s=s[0].getChildren();return t}balanceColumnTree(e,t,s,i){const o=[];for(let r=0;r<e.length;r++){const n=e[r];if(be(n)){const l=n,a=this.balanceColumnTree(l.getChildren(),t+1,s,i);l.setChildren(a),o.push(l)}else{let l,a;for(let d=s-1;d>=t;d--){const c=i.getUniqueKey(null,null),u=this.createMergedColGroupDef(null),h=new ti(u,c,!0,t);this.createBean(h),a&&a.setChildren([h]),a=h,l||(l=a)}if(l&&a)if(o.push(l),e.some(c=>
1be(c))){a.setChildren([n]);continue}else{a.setChildren(e);break}o.push(n)}}return o}findMaxDept(e,t){let s=t;for(let i=0;i<e.length;i++){const o=e[i];if(be(o)){const r=o,n=this.findMaxDept(r.getChildren(),t+1);s<n&&(s=n)}}return s}recursivelyCreateColumns(e,t,s,i,o,r,n){if(!e)return[];const l=new Array(e.length);for(let a=0;a<l.length;a++){const d=e[a];this.isColumnGroup(d)?l[a]=this.createColumnGroup(s,d,t,i,o,r,n):l[a]=this.createColumn(s,d,i,o,n)}return l}createColumnGroup(e,t,s,i,o,r,n){const l=this.createMergedColGroupDef(t),a=o.getUniqueKey(l.groupId||null,null),d=new ti(l,a,!1,s);this.createBean(d);const c=this.findExistingGroup(t,r);c&&r.splice(c.idx,1);const u=c==null?void 0:c.group;u&&d.setExpanded(u.isExpanded());const h=this.recursivelyCreateColumns(l.children,s+1,e,i,o,r,n);return d.setChildren(h),d}createMergedColGroupDef(e){const t={};return Object.assign(t,this.gos.get("defaultColGroupDef")),Object.assign(t,e),t}createColumn(e,t,s,i,o){var l;const r=this.findExistingColumn(t,s);r&&(s==null||s.splice(r.idx,1));let n=r==null?void 0:r.column;if(n){const a=this.addColumnDefaultAndTypes(t,n.getColId());n.setColDef(a,t,o),this.applyColumnState(n,a,o)}else{const a=i.getUniqueKey(t.colId,t.field),d=this.addColumnDefaultAndTypes(t,a);n=new fo(d,t,a,e),this.createBean(n)}return(l=this.dataTypeService)==null||l.addColumnListeners(n),n}applyColumnState(e,t,s){const i=is(t.flex);if(i!==void 0&&e.setFlex(i),e.getFlex()<=0){const l=is(t.width);if(l!=null)e.setActualWidth(l,s);else{const a=e.getActualWidth();e.setActualWidth(a,s)}}t.sort!==void 0&&(t.sort=="asc"||t.sort=="desc"?e.setSort(t.sort,s):e.setSort(void 0,s));const r=is(t.sortIndex);r!==void 0&&e.setSortIndex(r);const n=tr(t.hide);n!==void 0&&e.setVisible(!n,s),t.pinned!==void 0&&e.setPinned(t.pinned)}findExistingColumn(e,t){if(t)for(let s=0;s<t.length;s++){const i=t[s].getUserProvidedColDef();if(!i)continue;if(e.colId!=null){if(t[s].getId()===e.colId)return{idx:s,column:t[s]};continue}if(e.field!=null){if(i.field===e.field)return{idx:s,column:t[s]};continue}if(i===e)return{idx:s,column:t[s]}}}findExistingGroup(e,t){if(e.groupId!=null)for(let i=0;i<t.length;i++){const o=t[i];if(o.getColGroupDef()&&o.getId()===e.groupId)return{idx:i,group:o}}}addColumnDefaultAndTypes(e,t){var l;const s={},i=this.gos.get("defaultColDef");Ee(s,i,!1,!0);const o=this.updateColDefAndGetColumnType(s,e,t);o&&this.assignColumnTypes(o,s),Ee(s,e,!1,!0);const r=this.gos.get("autoGroupColumnDef"),n=ct(this.gos);return e.rowGroup&&r&&n&&Ee(s,{sort:r.sort,initialSort:r.initialSort},!1,!0),(l=this.dataTypeService)==null||l.validateColDef(s),s}updateColDefAndGetColumnType(e,t,s){var r;const i=(r=this.dataTypeService)==null?void 0:r.updateColDefAndGetColumnType(e,t,s),o=t.type??i??e.type;return e.type=o,o?zi(o):void 0}assignColumnTypes(e,t){if(!e.length)return;const s=Object.assign({},Ru),i=this.gos.get("columnTypes")||{};Pe(i,(o,r)=>{o in s?R(`the column type '${o}' is a default column type and cannot be overridden.`):(r.type&&R("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."),s[o]=r)}),e.forEach(o=>{const r=s[o.trim()];r?Ee(t,r,!1,!0):R("colDef.type '"+o+"' does not correspond to defined gridOptions.columnTypes")})}isColumnGroup(e){return e.children!==void 0}};function Lt(e,t,s){if(t)for(let i=0;i<t.length;i++){const o=t[i];be(o)&&Lt(o,o.getChildren(),s),s(o,e)}}var Pu=class extends b{constructor(){super(...arguments),this.beanName="columnModel",this.pivotMode=!1,this.autoHeightActiveAtLeastOnce=!1,this.ready=!1,this.changeEventsDispatching=!1,this.shouldQueueResizeOperations=!1,this.resizeOperationQueue=[]}wireBeans(e){this.context=e.context,this.ctrlsService=e.ctrlsService,this.columnFactory=e.columnFactory,this.columnSizeService=e.columnSizeService,this.visibleColsService=e.visibleColsService,this.columnViewportService=e.columnViewportService,this.pivotResultColsService=e.pivotResultColsService,this.columnAnimationService=e.columnAnimationService,this.autoColService=e.autoColService,this.controlsColService=e.controlsColService,this.valueCache=e.valueCache,this.columnDefFactory=e.columnDefFactory,this.columnApplyStateService=e.columnApplyStateService,this.columnGroupStateService=e.columnGroupStateService,this.eventDispatcher=e.columnEventDispatcher,this.columnMoveService=e.columnMoveService,this.columnAutosizeService=e.columnAutosizeService,this.funcColsService=e.funcColsService,this.quickFilterService=e.quickFilterService,this.showRowGroupColsService=e.showRowGroupColsService,this.environment=e.environment}postConstruct(){const e=this.gos.get("pivotMode");this.isPivotSettingAllowed(e)&&(this.pivotMode=e),this.addManagedPropertyListeners(["groupDisplayType","treeData","treeDataDisplayType","groupHideOpenParents"],t=>this.refreshAll(Zt(t.source))),this.addManagedPropertyListener("rowSelection",t=>{this.onSelectionOptionsChanged(t.currentValue,t.previousValue,Zt(t.source))}),this.addManagedPropertyListener("autoGroupColumnDef",t=>this.onAutoGroupColumnDefChanged(Zt(t.source))),this.addManagedPropertyListeners(["defaultColDef","defaultColGroupDef","columnTypes","suppressFieldDotNotation"],t=>this.recreateColumnDefs(Zt(t.source))),this.addManagedPropertyListener("pivotMode",t=>this.setPivotMode(this.gos.get("pivotMode"),Zt(t.source))),this.addManagedEventListeners({firstDataRendered:()=>this.onFirstDataRendered()})}createColsFromColDefs(e){var d,c,u;const t=this.colDefs?this.columnApplyStateService.compareColumnStatesAndDispatchEvents(e):void 0;this.valueCache.expire();const s=(d=this.colDefCols)==null?void 0:d.list,i=(c=this.colDefCols)==null?void 0:c.tree,o=this.columnFactory.createColumnTree(this.colDefs,!0,i,e);zt(this.context,(u=this.colDefCols)==null?void 0:u.tree,o.columnTree);const r=o.columnTree,n=o.treeDept,l=Or(r),a={};l.forEach(h=>a[h.getId()]=h),this.colDefCols={tree:r,treeDepth:n,list:l,map:a},this.funcColsService.extractCols(e,s),this.ready=!0,this.refreshCols(!0),this.visibleColsService.refresh(e),this.columnViewportService.checkViewportColumns(),this.eventDispatcher.everythingChanged(e),t&&(this.changeEventsDispat
1ching=!0,t(),this.changeEventsDispatching=!1),this.eventDispatcher.newColumnsLoaded(e),e==="gridInitializing"&&this.columnSizeService.applyAutosizeStrategy()}refreshCols(e){var o,r,n;if(!this.colDefCols)return;const t=(o=this.cols)==null?void 0:o.tree;this.saveColOrder(),this.selectCols(),this.createAutoCols(),this.addAutoCols(),this.createControlsCols(),this.addControlsCols();const s=su(this.gos,this.showingPivotResult);(!e||s)&&this.restoreColOrder(),this.positionLockedCols(),(r=this.showRowGroupColsService)==null||r.refresh(),(n=this.quickFilterService)==null||n.refreshQuickFilterCols(),this.setColSpanActive(),this.setAutoHeightActive(),this.visibleColsService.clear(),this.columnViewportService.clear(),!Je(t,this.cols.tree)&&this.eventDispatcher.gridColumns()}selectCols(){const e=this.pivotResultColsService.getPivotResultCols();if(this.showingPivotResult=e!=null,e){const{map:t,list:s,tree:i,treeDepth:o}=e;this.cols={list:s.slice(),map:{...t},tree:i.slice(),treeDepth:o},e.list.some(n=>{var l;return((l=this.cols)==null?void 0:l.map[n.getColId()])!==void 0})||(this.lastPivotOrder=null)}else{const{map:t,list:s,tree:i,treeDepth:o}=this.colDefCols;this.cols={list:s.slice(),map:{...t},tree:i.slice(),treeDepth:o}}}getColsToShow(){const e=this.isPivotMode()&&!this.isShowingPivotResult(),t=this.funcColsService.getValueColumns();return this.cols.list.filter(i=>{const o=nr(i);if(e){const r=t&&et(t,i);return o||r}else return o||i.isVisible()})}addAutoCols(){this.autoCols!=null&&(this.cols.list=this.autoCols.list.concat(this.cols.list),this.cols.tree=this.autoCols.tree.concat(this.cols.tree),zn(this.cols))}createAutoCols(){var g;const e=po(this.gos,this.pivotMode),t=this.pivotMode?this.gos.get("pivotSuppressAutoColumn"):this.isSuppressAutoCol(),s=this.funcColsService.getRowGroupColumns(),o=!(s.length>0||this.gos.get("treeData"))||t||e,r=()=>{this.autoCols&&(zt(this.context,this.autoCols.tree),this.autoCols=null)};if(o||!this.autoColService){r();return}const n=this.autoColService.createAutoCols(s)??[],l=_n(n,((g=this.autoCols)==null?void 0:g.list)||null),a=this.cols.treeDepth,c=(this.autoCols?this.autoCols.treeDepth:-1)==a;if(l&&c)return;r();const[u,h]=this.columnFactory.balanceTreeForAutoCols(n,this.cols.tree);this.autoCols={list:n,tree:u,treeDepth:h,map:{}};const p=f=>{if(!f)return null;const m=f.filter(v=>!nr(v));return[...n,...m]};this.lastOrder=p(this.lastOrder),this.lastPivotOrder=p(this.lastPivotOrder)}createControlsCols(){var d,c,u;const e=()=>{var h;zt(this.context,(h=this.controlsCols)==null?void 0:h.tree),this.controlsCols=null};this.controlsColService||e();const t=this.cols.treeDepth,i=(((d=this.controlsCols)==null?void 0:d.treeDepth)??-1)==t,o=((c=this.controlsColService)==null?void 0:c.createControlsCols())??[];if(_n(o,((u=this.controlsCols)==null?void 0:u.list)??[])&&i)return;e();const[n,l]=this.columnFactory.balanceTreeForAutoCols(o,this.cols.tree);this.controlsCols={list:o,tree:n,treeDepth:l,map:{}};const a=h=>{if(!h)return null;const p=h.filter(g=>!Si(g));return[...o,...p]};this.lastOrder=a(this.lastOrder),this.lastPivotOrder=a(this.lastPivotOrder)}addControlsCols(){this.controlsCols!=null&&(this.cols.list=this.controlsCols.list.concat(this.cols.list),this.cols.tree=this.controlsCols.tree.concat(this.cols.tree),zn(this.cols))}refreshAll(e){this.isReady()&&(this.refreshCols(!1),this.visibleColsService.refresh(e))}setColsVisible(e,t=!1,s){this.columnApplyStateService.applyColumnState({state:e.map(i=>({colId:typeof i=="string"?i:i.getColId(),hide:!t}))},s)}setColsPinned(e,t,s){if(!this.cols||Re(e))return;if(De(this.gos,"print")){R("Changing the column pinning status is not allowed with domLayout='print'");return}this.columnAnimationService.start();let i;t===!0||t==="left"?i="left":t==="right"?i="right":i=null;const o=[];e.forEach(r=>{if(!r)return;const n=this.getCol(r);n&&n.getPinned()!==i&&(n.setPinned(i),o.push(n))}),o.length&&(this.visibleColsService.refresh(s),this.eventDispatcher.columnPinned(o,s)),this.columnAnimationService.finish()}setColumnGroupOpened(e,t,s){let i;be(e)?i=e.getId():i=e||"",this.columnGroupStateService.setColumnGroupState([{groupId:i,open:t}],s)}getProvidedColGroup(e){var s;let t=null;return Lt(null,(s=this.cols)==null?void 0:s.tree,i=>{be(i)&&i.getId()===e&&(t=i)}),t}isColGroupLocked(e){const t=this.gos.get("groupLockGroupColumns");if(!e.isRowGroupActive()||t===0)return!1;if(t===-1)return!0;const i=this.funcColsService.getRowGroupColumns().findIndex(o=>o.getColId()===e.getColId());return t>i}isSuppressAutoCol(){return this.gos.get("groupDisplayType")==="custom"?!0:this.gos.get("treeDataDisplayType")==="custom"}setAutoHeightActive(){this.autoHeightActive=this.cols.list.some(e=>e.isVisible()&&e.isAutoHeight()),this.autoHeightActive&&(this.autoHeightActiveAtLeastOnce=!0,re(this.gos)||Ue(this.gos)||R("autoHeight columns only work with Client Side Row Model and Server Side Row Model."))}restoreColOrder(){const e=this.showingPivotResult?this.lastPivotOrder:this.lastOrder;if(!e)return;const t=new Map(e.map((a,d)=>[a,d]));if(!this.cols.list.some(a=>t.has(a)))return;const i=new Map(this.cols.list.map(a=>[a,!0])),o=e.filter(a=>i.has(a)),r=new Map(o.map(a=>[a,!0])),n=this.cols.list.filter(a=>!r.has(a)),l=o.slice();
1n.forEach(a=>{let d=a.getOriginalParent();if(!d){l.push(a);return}const c=[];for(;!c.length&&d;)d.getLeafColumns().forEach(g=>{const f=l.indexOf(g)>=0,m=c.indexOf(g)<0;f&&m&&c.push(g)}),d=d.getOriginalParent();if(!c.length){l.push(a);return}const u=c.map(p=>l.indexOf(p)),h=Math.max(...u);Ls(l,a,h+1)}),this.cols.list=l}sortColsLikeKeys(e){if(this.cols==null)return;let t=[];const s={};e.forEach(o=>{if(s[o])return;const r=this.cols.map[o];r&&(t.push(r),s[o]=!0)});let i=0;if(this.cols.list.forEach(o=>{const r=o.getColId();if(s[r]!=null)return;r.startsWith(as)?Ls(t,o,i++):t.push(o)}),t=this.columnMoveService.placeLockedColumns(t),!this.columnMoveService.doesMovePassMarryChildren(t)){R("Applying column order broke a group where columns should be married together. Applying new order has been discarded.");return}this.cols.list=t}sortColsLikeCols(e){!e||e.length<=1||e.filter(s=>this.cols.list.indexOf(s)<0).length>0||e.sort((s,i)=>{const o=this.cols.list.indexOf(s),r=this.cols.list.indexOf(i);return o-r})}resetColDefIntoCol(e,t){const s=e.getUserProvidedColDef();if(!s)return!1;const i=this.columnFactory.addColumnDefaultAndTypes(s,e.getColId());return e.setColDef(i,s,t),!0}queueResizeOperations(){this.shouldQueueResizeOperations=!0}isShouldQueueResizeOperations(){return this.shouldQueueResizeOperations}processResizeOperations(){this.shouldQueueResizeOperations=!1,this.resizeOperationQueue.forEach(e=>e()),this.resizeOperationQueue=[]}pushResizeOperation(e){this.resizeOperationQueue.push(e)}moveInCols(e,t,s){var i;Jl((i=this.cols)==null?void 0:i.list,e,t),this.visibleColsService.refresh(s)}positionLockedCols(){this.cols.list=this.columnMoveService.placeLockedColumns(this.cols.list)}saveColOrder(){var e,t;this.showingPivotResult?this.lastPivotOrder=(e=this.cols)==null?void 0:e.list:this.lastOrder=(t=this.cols)==null?void 0:t.list}getColumnDefs(){if(!this.colDefCols)return;const e=this.colDefCols.list.slice();this.showingPivotResult?e.sort((i,o)=>this.lastOrder.indexOf(i)-this.lastOrder.indexOf(o)):this.lastOrder&&e.sort((i,o)=>this.cols.list.indexOf(i)-this.cols.list.indexOf(o));const t=this.funcColsService.getRowGroupColumns(),s=this.funcColsService.getPivotColumns();return this.columnDefFactory.buildColumnDefs(e,t,s)}isShowingPivotResult(){return this.showingPivotResult}isChangeEventsDispatching(){return this.changeEventsDispatching}isColSpanActive(){return this.colSpanActive}isProvidedColGroupsPresent(){var e;return((e=this.colDefCols)==null?void 0:e.treeDepth)>0}setColSpanActive(){this.colSpanActive=this.cols.list.some(e=>e.getColDef().colSpan!=null)}isAutoRowHeightActive(){return this.autoHeightActive}wasAutoRowHeightEverActive(){return this.autoHeightActiveAtLeastOnce}getHeaderRowCount(){return this.cols?this.cols.treeDepth+1:-1}isReady(){return this.ready}isPivotMode(){return this.pivotMode}setPivotMode(e,t){e===this.pivotMode||!this.isPivotSettingAllowed(this.pivotMode)||(this.pivotMode=e,this.ready&&(this.refreshCols(!1),this.visibleColsService.refresh(t),this.eventDispatcher.pivotModeChanged()))}isPivotSettingAllowed(e){return e&&this.gos.get("treeData")?(R("Pivot mode not available with treeData."),!1):!0}isPivotActive(){const e=this.funcColsService.getPivotColumns();return this.pivotMode&&!Re(e)}recreateColumnDefs(e){this.cols&&(this.autoCols&&this.autoColService.updateAutoCols(this.autoCols.list,e),this.createColsFromColDefs(e))}setColumnDefs(e,t){this.colDefs=e,this.createColsFromColDefs(t)}destroy(){var e,t,s;zt(this.context,(e=this.colDefCols)==null?void 0:e.tree),zt(this.context,(t=this.autoCols)==null?void 0:t.tree),zt(this.context,(s=this.controlsCols)==null?void 0:s.tree),super.destroy()}getColTree(){return this.cols.tree}getColDefColTree(){return this.colDefCols.tree}getColDefCols(){var e;return(e=this.colDefCols)!=null&&e.list?this.colDefCols.list:null}getCols(){var e;return((e=this.cols)==null?void 0:e.list)??[]}getAllCols(){var s,i,o;const e=this.pivotResultColsService.getPivotResultCols(),t=e==null?void 0:e.list;return[((s=this.colDefCols)==null?void 0:s.list)??[],((i=this.autoCols)==null?void 0:i.list)??[],((o=this.controlsCols)==null?void 0:o.list)??[],t??[]].flat()}getColsForKeys(e){return e?e.map(t=>this.getCol(t)).filter(t=>t!=null):[]}getColDefCol(e){var t;return(t=this.colDefCols)!=null&&t.list?this.getColFromCollection(e,this.colDefCols):null}getCol(e){return e==null?null:this.getColFromCollection(e,this.cols)}getColFromCollection(e,t){if(t==null)return null;const{map:s,list:i}=t;if(typeof e=="string"&&s[e])return s[e];for(let o=0;o<i.length;o++)if(Un(i[o],e))return i[o];return this.getAutoCol(e)}getAutoCol(e){var t;return((t=this.autoCols)==null?void 0:t.list.find(s=>
1Un(s,e)))??null}getAutoCols(){var e;return((e=this.autoCols)==null?void 0:e.list)??null}setColHeaderHeight(e,t){e.setAutoHeaderHeight(t)&&(e.isColumn?this.eventDispatcher.headerHeight(e):this.eventDispatcher.groupHeaderHeight(e))}getGroupRowsHeight(){const e=[],t=this.ctrlsService.getHeaderRowContainerCtrls();for(const s of t){if(!s)continue;const i=s.getGroupRowCount()||0;for(let o=0;o<i;o++){const r=s.getGroupRowCtrlAtIndex(o),n=e[o];if(r){const l=this.getColumnGroupHeaderRowHeight(r);(n==null||l>n)&&(e[o]=l)}}}return e}getColumnGroupHeaderRowHeight(e){const t=this.isPivotMode()?this.getPivotGroupHeaderHeight():this.getGroupHeaderHeight();let s=0;const i=e.getHeaderCtrls();for(const o of i){const r=o.getColumn();if(r.isAutoHeaderHeight()){const n=r.getAutoHeaderHeight();n!=null&&n>s&&(s=n)}}return Math.max(t,s)}getColumnHeaderRowHeight(){const e=this.isPivotMode()?this.getPivotHeaderHeight():this.getHeaderHeight(),s=this.visibleColsService.getAllCols().filter(i=>i.isAutoHeaderHeight()).map(i=>i.getAutoHeaderHeight()||0);return Math.max(e,...s)}getHeaderHeight(){return this.gos.get("headerHeight")??this.environment.getDefaultHeaderHeight()}getFloatingFiltersHeight(){return this.gos.get("floatingFiltersHeight")??this.getHeaderHeight()}getGroupHeaderHeight(){return this.gos.get("groupHeaderHeight")??this.getHeaderHeight()}getPivotHeaderHeight(){return this.gos.get("pivotHeaderHeight")??this.getHeaderHeight()}getPivotGroupHeaderHeight(){return this.gos.get("pivotGroupHeaderHeight")??this.getGroupHeaderHeight()}onFirstDataRendered(){const e=this.gos.get("autoSizeStrategy");if((e==null?void 0:e.type)!=="fitCellContents")return;const{colIds:t,skipHeader:s}=e;setTimeout(()=>{t?this.columnAutosizeService.autoSizeCols({colKeys:t,skipHeader:s,source:"autosizeColumns"}):this.columnAutosizeService.autoSizeAllColumns("autosizeColumns",s)})}onAutoGroupColumnDefChanged(e){this.autoCols&&this.autoColService.updateAutoCols(this.autoCols.list,e)}onSelectionOptionsChanged(e,t,s){const i=t&&typeof t!="string"?Ts(t):void 0,o=e&&typeof e!="string"?Ts(e):void 0,r=i!==o,n=t&&typeof t!="string"?Yi(t):void 0,l=e&&typeof e!="string"?Yi(e):void 0;(r||n!==l)&&this.refreshAll(s)}};function Zt(e){return e==="gridOptionsUpdated"?"gridOptionsChanged":e}function zn(e){e.map={},e.list.forEach(t=>e.map[t.getId()]=t)}function Un(e,t){const s=e===t,i=e.getColDef()===t,o=e.getColId()==t;return s||i||o}function _n(e,t){return Je(e,t,(s,i)=>s.getColId()===i.getColId())}var Eu=class extends b{constructor(){super(...arguments),this.beanName="columnAutosizeService",this.timesDelayed=0}wireBeans(e){this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.animationFrameService=e.animationFrameService,this.autoWidthCalculator=e.autoWidthCalculator,this.eventDispatcher=e.columnEventDispatcher,this.ctrlsService=e.ctrlsService,this.renderStatusService=e.renderStatusService}autoSizeCols(e){if(this.columnModel.isShouldQueueResizeOperations()){this.columnModel.pushResizeOperation(()=>this.autoSizeCols(e));return}const{colKeys:t,skipHeader:s,skipHeaderGroups:i,stopAtGroup:o,source:r="api"}=e;if(this.animationFrameService.flushAllFrames(),this.timesDelayed<5&&this.renderStatusService&&!this.renderStatusService.areHeaderCellsRendered()){this.timesDelayed++,setTimeout(()=>this.autoSizeCols(e));return}this.timesDelayed=0;const n=[];let l=-1;const a=s??this.gos.get("skipHeaderOnAutoSize"),d=i??a;for(;l!==0;){l=0;const c=[];t.forEach(u=>{if(!u)return;const h=this.columnModel.getCol(u);if(!h||n.indexOf(h)>=0)return;const p=this.autoWidthCalculator.getPreferredWidthForColumn(h,a);if(p>0){const g=this.normaliseColumnWidth(h,p);h.setActualWidth(g,r),n.push(h),l++}c.push(h)}),c.length&&this.visibleColsService.refresh(r)}d||this.autoSizeColumnGroupsByColumns(t,r,o),this.eventDispatcher.columnResized(n,!0,"autosizeColumns")}autoSizeColumn(e,t,s){e&&this.autoSizeCols({colKeys:[e],skipHeader:s,skipHeaderGroups:!0,source:t})}autoSizeColumnGroupsByColumns(e,t,s){const i=new Set;this.columnModel.getColsForKeys(e).forEach(l=>{let a=l.getParent();for(;a&&a!=s;)a.isPadding()||i.add(a),a=a.getParent()});let r;const n=[];for(const l of i){for(const a of this.ctrlsService.getHeaderRowContainerCtrls())if(r=a.getHeaderCtrlForColumn(l),r)break;r&&r.resizeLeafColumnsToFit(t)}
1return n}autoSizeAllColumns(e,t){if(this.columnModel.isShouldQueueResizeOperations()){this.columnModel.pushResizeOperation(()=>this.autoSizeAllColumns(e,t));return}const s=this.visibleColsService.getAllCols();this.autoSizeCols({colKeys:s,skipHeader:t,source:e})}normaliseColumnWidth(e,t){const s=e.getMinWidth();t<s&&(t=s);const i=e.getMaxWidth();return e.isGreaterThanMax(t)&&(t=i),t}},Mu=class extends b{constructor(){super(...arguments),this.beanName="funcColsService",this.rowGroupCols=[],this.valueCols=[],this.pivotCols=[]}wireBeans(e){this.columnModel=e.columnModel,this.eventDispatcher=e.columnEventDispatcher,this.aggFuncService=e.aggFuncService,this.visibleColsService=e.visibleColsService}getModifyColumnsNoEventsCallbacks(){return{addGroupCol:e=>this.rowGroupCols.push(e),removeGroupCol:e=>ke(this.rowGroupCols,e),addPivotCol:e=>this.pivotCols.push(e),removePivotCol:e=>ke(this.pivotCols,e),addValueCol:e=>this.valueCols.push(e),removeValueCol:e=>ke(this.valueCols,e)}}getSourceColumnsForGroupColumn(e){const t=e.getColDef().showRowGroup;if(!t)return null;if(t===!0)return this.rowGroupCols.slice(0);const s=this.columnModel.getColDefCol(t);return s?[s]:null}sortRowGroupColumns(e){this.rowGroupCols.sort(e)}sortPivotColumns(e){this.pivotCols.sort(e)}getValueColumns(){return this.valueCols?this.valueCols:[]}getPivotColumns(){return this.pivotCols?this.pivotCols:[]}getRowGroupColumns(){return this.rowGroupCols?this.rowGroupCols:[]}isRowGroupEmpty(){return Re(this.rowGroupCols)}setColumnAggFunc(e,t,s){if(!e)return;const i=this.columnModel.getColDefCol(e);i&&(i.setAggFunc(t),this.eventDispatcher.columnChanged("columnValueChanged",[i],s))}setRowGroupColumns(e,t){this.setColList(e,this.rowGroupCols,"columnRowGroupChanged",!0,!0,(s,i)=>this.setRowGroupActive(s,i,t),t)}setRowGroupActive(e,t,s){e!==t.isRowGroupActive()&&(t.setRowGroupActive(e,s),e&&!this.gos.get("suppressRowGroupHidesColumns")&&this.columnModel.setColsVisible([t],!1,s),!e&&!this.gos.get("suppressMakeColumnVisibleAfterUnGroup")&&this.columnModel.setColsVisible([t],!0,s))}addRowGroupColumns(e,t){this.updateColList(e,this.rowGroupCols,!0,!0,s=>this.setRowGroupActive(!0,s,t),"columnRowGroupChanged",t)}removeRowGroupColumns(e,t){this.updateColList(e,this.rowGroupCols,!1,!0,s=>this.setRowGroupActive(!1,s,t),"columnRowGroupChanged",t)}addPivotColumns(e,t){this.updateColList(e,this.pivotCols,!0,!1,s=>s.setPivotActive(!0,t),"columnPivotChanged",t)}setPivotColumns(e,t){this.setColList(e,this.pivotCols,"columnPivotChanged",!0,!1,(s,i)=>{i.setPivotActive(s,t)},t)}removePivotColumns(e,t){this.updateColList(e,this.pivotCols,!1,!1,s=>s.setPivotActive(!1,t),"columnPivotChanged",t)}setValueColumns(e,t){this.setColList(e,this.valueCols,"columnValueChanged",!1,!1,(s,i)=>this.setValueActive(s,i,t),t)}setValueActive(e,t,s){if(e!==t.isValueActive()&&(t.setValueActive(e,s),e&&!t.getAggFunc()&&this.aggFuncService)){const i=this.aggFuncService.getDefaultAggFunc(t);t.setAggFunc(i)}}addValueColumns(e,t){this.updateColList(e,this.valueCols,!0,!1,s=>this.setValueActive(!0,s,t),"columnValueChanged",t)}removeValueColumns(e,t){this.updateColList(e,this.valueCols,!1,!1,s=>this.setValueActive(!1,s,t),"columnValueChanged",t)}moveRowGroupColumn(e,t,s){if(this.isRowGroupEmpty())return;const i=this.rowGroupCols[e],o=this.rowGroupCols.slice(e,t);this.rowGroupCols.splice(e,1),this.rowGroupCols.splice(t,0,i),this.eventDispatcher.rowGroupChanged(o,s)}setColList(e,t,s,i,o,r,n){if(!this.columnModel.getCols())return;const l=new Map;t.forEach((d,c)=>l.set(d,c)),t.length=0,E(e)&&e.forEach(d=>{const c=this.columnModel.getColDefCol(d);c&&t.push(c)}),t.forEach((d,c)=>{const u=l.get(d);if(u===void 0){l.set(d,0);return}i&&u!==c||l.delete(d)}),(this.columnModel.getColDefCols()||[]).forEach(d=>{const c=t.indexOf(d)>=0;r(c,d)}),o&&this.columnModel.refreshCols(!1),this.visibleColsService.refresh(n),this.eventDispatcher.columnChanged(s,[...l.keys()],n)}updateColList(e,t,s,i,o,r,n){if(!e||Re(e))return;let l=!1;const a=new Set;e.forEach(d=>{if(!d)return;const c=this.columnModel.getColDefCol(d);if(c){if(a.add(c),s){if(t.indexOf(c)>=0)return;t.push(c)}else{const u=t.indexOf(c);if(u<0)return;for(let h=u+1;h<t.length;h++)a.add(t[h]);ke(t,c)}o(c),l=!0}}),l&&(i&&this.columnModel.refreshCols(!1),this.visibleColsService.refresh(n),this.eventDispatcher.genericColumnEvent(r,Array.from(a),n))}extractCols(e,t){this.extractRowGroupCols(e,t),this.extractPivotCols(e,t),this.extractValueCols(e,t)}extractValueCols(e,t){this.valueCols=this.extractColsCommon(t,this.valueCols,(s,i)=>s.setValueActive(i,e),()=>{},()=>{},s=>{const i=s.aggFunc;if(i===null||i==="")return null;if(i!==void 0)return!!i},s=>s.initialAggFunc!=null&&s.initialAggFunc!=""),this.valueCols.forEac
1h(s=>{const i=s.getColDef();i.aggFunc!=null&&i.aggFunc!=""?s.setAggFunc(i.aggFunc):s.getAggFunc()||s.setAggFunc(i.initialAggFunc)})}extractRowGroupCols(e,t){this.rowGroupCols=this.extractColsCommon(t,this.rowGroupCols,(s,i)=>s.setRowGroupActive(i,e),s=>s.rowGroupIndex,s=>s.initialRowGroupIndex,s=>s.rowGroup,s=>s.initialRowGroup)}extractPivotCols(e,t){this.pivotCols=this.extractColsCommon(t,this.pivotCols,(s,i)=>s.setPivotActive(i,e),s=>s.pivotIndex,s=>s.initialPivotIndex,s=>s.pivot,s=>s.initialPivot)}extractColsCommon(e=[],t=[],s,i,o,r,n){const l=[],a=[];(this.columnModel.getColDefCols()||[]).forEach(h=>{const p=e.indexOf(h)<0,g=h.getColDef(),f=tr(r(g)),m=tr(n(g)),v=is(i(g)),y=is(o(g));let w;f!==void 0?w=f:v!==void 0?v===null?w=!1:w=v>=0:p?m!==void 0?w=m:y!==void 0?w=y!=null&&y>=0:w=!1:w=t.indexOf(h)>=0,w&&((p?v!=null||y!=null:v!=null)?l.push(h):a.push(h))});const c=h=>{const p=i(h.getColDef()),g=o(h.getColDef());return p??g};l.sort((h,p)=>{const g=c(h),f=c(p);return g===f?0:g<f?-1:1});const u=[].concat(l);return t.forEach(h=>{a.indexOf(h)>=0&&u.push(h)}),a.forEach(h=>{u.indexOf(h)<0&&u.push(h)}),t.forEach(h=>{u.indexOf(h)<0&&s(h,!1)}),u.forEach(h=>{t.indexOf(h)<0&&s(h,!0)}),u}generateColumnStateForRowGroupAndPivotIndexes(e,t){const s={},i=(o,r,n,l,a,d)=>{const c=this.columnModel.getColDefCols();if(!r.length||!c)return[];const u=Object.keys(o),h=new Set(u),p=new Set(u),g=new Set(r.map(M=>{const x=M.getColId();return p.delete(x),x}).concat(u)),f=[],m={};let v=0;for(let M=0;M<c.length;M++){const x=c[M].getColId();g.has(x)&&(f.push(x),m[x]=v++)}let y=1e3,w=!1,F=0;const D=M=>{const x=m[M];for(let I=F;I<x;I++){const G=f[I];p.has(G)&&(o[G][a]=y++,p.delete(G))}F=x};r.forEach(M=>{const x=M.getColId();if(h.has(x))D(x),o[x][a]=y++;else{const I=M.getColDef();(I[a]===null||I[a]===void 0&&I[d]==null)&&(w||(I[n]||I[n]===void 0&&I[l]?D(x):(p.forEach(L=>{o[L][a]=y+m[L]}),y+=f.length,w=!0)),s[x]||(s[x]={colId:x}),s[x][a]=y++)}})};return i(e,this.rowGroupCols,"rowGroup","initialRowGroup","rowGroupIndex","initialRowGroupIndex"),i(t,this.pivotCols,"pivot","initialPivot","pivotIndex","initialPivotIndex"),Object.values(s)}},Du=class extends b{constructor(){super(...arguments),this.beanName="columnApplyStateService"}wireBeans(e){this.columnModel=e.columnModel,this.eventDispatcher=e.columnEventDispatcher,this.sortController=e.sortController,this.columnGetStateService=e.columnGetStateService,this.funcColsService=e.funcColsService,this.visibleColsService=e.visibleColsService,this.columnAnimationService=e.columnAnimationService,this.pivotResultColsService=e.pivotResultColsService}applyColumnState(e,t){const s=this.columnModel.getColDefCols()||[];if(Re(s))return!1;if(e&&e.state&&!e.state.forEach)return R("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."),!1;const i=this.funcColsService.getModifyColumnsNoEventsCallbacks(),o=(l,a,d)=>{const c=this.compareColumnStatesAndDispatchEvents(t),u=a.slice(),h={},p={},g=[],f=[];let m=0;const v=this.funcColsService.getRowGroupColumns().slice(),y=this.funcColsService.getPivotColumns().slice();l.forEach(M=>{const x=M.colId||"";if(x.startsWith(as)){g.push(M),f.push(M);return}const G=d(x);G?(this.syncColumnWithStateItem(G,M,e.defaultState,h,p,!1,t,i),ke(u,G)):(f.push(M),m+=1)});const w=M=>this.syncColumnWithStateItem(M,null,e.defaultState,h,p,!1,t,i);u.forEach(w),this.funcColsService.sortRowGroupColumns(Kn.bind(this,h,v)),this.funcColsService.sortPivotColumns(Kn.bind(this,p,y)),this.columnModel.refreshCols(!1);const D=(this.columnModel.getAutoCols()||[]).slice();return g.forEach(M=>{const x=this.columnModel.getAutoCol(M.colId);ke(D,x),this.syncColumnWithStateItem(x,M,e.defaultState,null,null,!0,t,i)}),D.forEach(w),this.orderLiveColsLikeState(e),this.visibleColsService.refresh(t),this.eventDispatcher.everythingChanged(t),c(),{unmatchedAndAutoStates:f,unmatchedCount:m}};this.columnAnimationService.start();let{unmatchedAndAutoStates:r,unmatchedCount:n}=o(e.state||[],s,l=>this.columnModel.getColDefCol(l));if(r.length>0||E(e.defaultState)){const l=this.pivotResultColsService.getPivotResultCols(),a=l==null?void 0:l.list;n=o(r,a||[],d=>this.pivotResultColsService.getPivotResultCol(d)).unmatchedCount}return this.columnAnimationService.finish(),n===0}resetColumnState(e){const t=this.columnModel.getColDefCols();if(Re(t))return;const s=this.columnModel.getColDefColTree(),i=Or(s),o=[];let r=1e3,n=1e3,l=[];const a=this.columnModel.getAutoCols();a&&(l=l.concat(a)),i&&(l=l.concat(i)),l.forEach(d=>{const c=this.getColumnStateFromColDef(d);z(c.rowGroupIndex)&&c.rowGroup&&(c.rowGroupIndex=r++),z(c.pivotIndex)&&c.pivot&&(c.pivotIndex=n++),o.push(c)}),this.applyColumnState({state:o,applyOrder:!0},e)}getColumnStateFromColDef(e){const t=(g,f)=>g??f??null,s=e.getColDef(),i=t(s.sort,s.initialSort),o=t(s.sortIndex,s.initialSortIndex),r=t(s.hide,s.initialHide),n=t(s.pinned,s.initialPinned),l=t(s.width,s.initialWidth),a=t(s.flex,s.initialFlex);let d=t(s.rowGroupIndex,s.initialRowGroupIndex),c=t(s.rowGroup,s.initialRowGroup);d==null&&(c==null||c==!1)&&(d=null,c=null);let u=t(s.pivotIndex,s.initialPivotIndex),h=t(s.pivot,s.initialPivot);u==null&&(h==null||h==!1)&&(u=null,h=null);const p=t(s.aggFunc,s.initialAggFunc);return{colId:e.getColId(),sort:i,sortIndex:o,hide:r,pinned:n,width:l,flex:a,rowGroup:c,rowGroupIndex:d,pivot:h,pivotIndex:u,aggFunc:p}}syncColumnWithStateItem(e,t,s,i,o,r,n,l){if(!e)return;const a=(F,D)=>{const M={value1:void 0,value2:void 0};let x=!1;return t&&(t[F]!==void 0&&(M.value1=t[F],x=!0),E(D)&&t[D]!==void 0&&(M.value2=t[D],x=!0)),!x&&s&&(s[F]!==void 0&&(M.value1=s[F]),E(D)&&s[D]!==void 0&&(M.value2=s[D])),M},d=a("hide").value1;d!==void 0&&e.setVisible(!d,n);const c=a("pinned").value1;c!==void 0&&e.setPinned(c);const u=e.getColDef().minWidth??this.gos.environment.getDefaultColumnMinWidth(),h=a("flex").value1;if(h!==void 0&&e.setFlex(h),h==null){const F=a("width").value1;F!=null&&u!=null&&F>=u&&e.setActualWidth(F,n)}const p=a("sort").value1;p!==void 0&&(p==="desc"||p==="asc"?e.setSort(p,n):e.setSort(void 0,n));const g=a("sortIndex").value1;if(g!==void 0&&e.setSortIndex(g),r||!e.isPrimary())return;const f=a("aggFunc").value1;f!==void 0&&(typeof f=="string"?(e.setAggFunc(f),e.isValueActive()||(e.setValueActive(!0,n),l.addValueCol(e))):(E(f)&&R("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."),e.isValueActive()&&(e.setValueActive(!1,n),l.removeValueCol(e))));const{value1:m,value2:v}=a("rowGroup","rowGroupIndex");(m!==void 0||v!==void 0)&&(typeof v=="number"||m?(e.isRowGroupActive()||(e.setRowGroupActive(!0,n),l.addGroupCol(e)),i&&typeof v=="number"&&(i[e.getId()]=v)):e.isRowGroupActive()&&(e.setRowGroupActive(!1,n),l.removeGroupCol(e)));const{value1:y,value2:w}=a("pivot","pivotIndex");(y!==void 0||w!==void 0)&&(typeof w=="number"||y?(e.isPivotActive()||(e.setPivotActive(!0,n),l.addPivotCol(e)),o&&typeof w=="number"&&(o[e.getId()]=w)):e.isPivotActive()&&(e.setPivotActive(!1,n),l.removePivotCol(e)))}orderLiveColsLikeState(e){if(!e.applyOrder||!e.state)return;const t=[];e.state.forEach(s=>{s.colId!=null&&t.push(s.colId)}),this.columnModel.sortColsLikeKeys(t)}compareColumnStatesAndDispatchEvents(e){const t={rowGroupColumns:this.funcColsService.getRowGroupColumns().slice(),pivotColumns:this.funcColsService.getPivotColumns().slice(),valueColumns:this.funcColsService.getValueColumns().slice()},s=this.columnGetStateService.getColumnState(),i={};
1return s.forEach(o=>{i[o.colId]=o}),()=>{const o=this.columnModel.getAllCols(),r=(f,m,v,y)=>{const w=m.map(y),F=v.map(y);if(Je(w,F))return;const M=new Set(m);v.forEach(I=>{M.delete(I)||M.add(I)});const x=[...M];this.eventService.dispatchEvent({type:f,columns:x,column:x.length===1?x[0]:null,source:e})},n=f=>{const m=[];return o.forEach(v=>{const y=i[v.getColId()];y&&f(y,v)&&m.push(v)}),m},l=f=>f.getColId();r("columnRowGroupChanged",t.rowGroupColumns,this.funcColsService.getRowGroupColumns(),l),r("columnPivotChanged",t.pivotColumns,this.funcColsService.getPivotColumns(),l);const d=n((f,m)=>{const v=f.aggFunc!=null,y=v!=m.isValueActive(),w=v&&f.aggFunc!=m.getAggFunc();return y||w});d.length>0&&this.eventDispatcher.columnChanged("columnValueChanged",d,e);const c=(f,m)=>f.width!=m.getActualWidth();this.eventDispatcher.columnResized(n(c),!0,e);const u=(f,m)=>f.pinned!=m.getPinned();this.eventDispatcher.columnPinned(n(u),e);const h=(f,m)=>f.hide==m.isVisible();this.eventDispatcher.columnVisible(n(h),e);const g=n((f,m)=>f.sort!=m.getSort()||f.sortIndex!=m.getSortIndex());g.length>0&&this.sortController.dispatchSortChangedEvents(e,g),this.normaliseColumnMovedEventForColumnState(s,e)}}normaliseColumnMovedEventForColumnState(e,t){const s=this.columnGetStateService.getColumnState(),i={};s.forEach(a=>i[a.colId]=a);const o={};e.forEach(a=>{i[a.colId]&&(o[a.colId]=!0)});const r=e.filter(a=>o[a.colId]),n=s.filter(a=>o[a.colId]),l=[];n.forEach((a,d)=>{const c=r&&r[d];if(c&&c.colId!==a.colId){const u=this.columnModel.getCol(c.colId);u&&l.push(u)}}),l.length&&this.eventDispatcher.columnMoved({movedColumns:l,source:t,finished:!0})}},Kn=(e,t,s,i)=>{const o=e[s.getId()],r=e[i.getId()],n=o!=null,l=r!=null;if(n&&l)return o-r;if(n)return-1;if(l)return 1;const a=t.indexOf(s),d=t.indexOf(i),c=a>=0,u=d>=0;return c&&u?a-d:c?-1:1},xu=class extends b{constructor(){super(...arguments),this.beanName="columnMoveService"}wireBeans(e){this.columnModel=e.columnModel,this.columnAnimationService=e.columnAnimationService,this.eventDispatcher=e.columnEventDispatcher}moveColumnByIndex(e,t,s){const i=this.columnModel.getCols();if(!i)return;const o=i[e];this.moveColumns([o],t,s)}moveColumns(e,t,s,i=!0){const o=this.columnModel.getCols();if(!o)return;if(t>o.length-e.length){R("tried to insert columns in invalid location, toIndex = ",t),R("remember that you should not count the moving columns when calculating the new index");return}this.columnAnimationService.start();const r=this.columnModel.getColsForKeys(e);this.doesMovePassRules(r,t)&&(this.columnModel.moveInCols(r,t,s),this.eventDispatcher.columnMoved({movedColumns:r,source:s,toIndex:t,finished:i})),this.columnAnimationService.finish()}doesMovePassRules(e,t){const s=this.getProposedColumnOrder(e,t);return this.doesOrderPassRules(s)}doesOrderPassRules(e){return!(!this.doesMovePassMarryChildren(e)||!this.doesMovePassLockedPositions(e))}getProposedColumnOrder(e,t){const i=this.columnModel.getCols().slice();return Jl(i,e,t),i}doesMovePassLockedPositions(e){const t=r=>r?r==="left"||r===!0?-1:1:0,s=this.gos.get("enableRtl");let i=s?1:-1,o=!0;return e.forEach(r=>{const n=t(r.getColDef().lockPosition);s?n>i&&(o=!1):n<i&&(o=!1),i=n}),o}doesMovePassMarryChildren(e){let t=!0;const s=this.columnModel.getColTree();return Lt(null,s,i=>{if(!be(i))return;const o=i,r=o.getColGroupDef();if(!(r&&r.marryChildren))return;const l=[];o.getLeafColumns().forEach(h=>{const p=e.indexOf(h);l.push(p)});const a=Math.max.apply(Math,l),d=Math.min.apply(Math,l),c=a-d,u=o.getLeafColumns().length-1;c>u&&(t=!1)}),t}placeLockedColumns(e){const t=[],s=[],i=[];return e.forEach(r=>{const n=r.getColDef().lockPosition;n==="right"?i.push(r):n==="left"||n===!0?t.push(r):s.push(r)}),this.gos.get("enableRtl")?[...i,...s,...t]:[...t,...s,...i]}},Au=/[&<>"']/g,Tu={"&":"&","<":"<",">":">",'"':""","'":"'"};function Iu(e){const t=String.fromCharCode;function s(u){const h=[];if(!u)return[];const p=u.length;let g=0,f,m;for(;g<p;)f=u.charCodeAt(g++),f>=55296&&f<=56319&&g<p?(m=u.charCodeAt(g++),(m&64512)==56320?h.push(((f&1023)<<10)+(m&1023)+65536):(h.push(f),g--)):h.push(f);return h}function i(u){if(u>=55296&&u<=57343)throw Error("Lone surrogate U+"+u.toString(16).toUpperCase()+" is not a scalar value")}function o(u,h){return t(u>>h&63|128)}function r(u){if((u&4294967168)==0)return t(u);let h="";return(u&4294965248)==0?h=t(u>>6&31|192):(u&4294901760)==0?(i(u),h=t(u>>12&15|224),h+=o(u,6)):(u&4292870144)==0&&(h=t(u>>18&7|240),h+=o(u,12),h+=o(u,6)),h+=t(u&63|128),h}const n=s(e),l=n.length;let a=-1,d,c="";for(;++a<l;)d=n[a],c+=r(d);return c}function Ce(e,t){if(e==null)return null;const s=e.toString().toString();return t?s:s.replace(Au,i=>Tu[i])}function Lu(e){if(!e||e==null)return null;const t=/([a-z])([A-Z])/g,s=/([A-Z]+)([A-Z])([a-z])/g;return e.replace(t,"$1 $2").replace(s,"$1 $2$3").replace(/\./g," ").split(" ").map(o=>o.substring(0,1).toUpperCase()+(o.length>1?o.substring(1,o.length):"")).join(" ")}function Gu(e){return e.replace(/[A-Z]/g,t=>`-${t.toLocaleLowerCase()}`)}var ku=class extends b{constructor(){super(...arguments),this.beanName="
1columnNameService"}wireBeans(e){this.expressionService=e.expressionService,this.funcColsService=e.funcColsService,this.columnModel=e.columnModel}getDisplayNameForColumn(e,t,s=!1){if(!e)return null;const i=this.getHeaderName(e.getColDef(),e,null,null,t);return s?this.wrapHeaderNameWithAggFunc(e,i):i}getDisplayNameForProvidedColumnGroup(e,t,s){const i=t?t.getColGroupDef():null;return i?this.getHeaderName(i,null,e,t,s):null}getDisplayNameForColumnGroup(e,t){return this.getDisplayNameForProvidedColumnGroup(e,e.getProvidedColumnGroup(),t)}getHeaderName(e,t,s,i,o){const r=e.headerValueGetter;if(r){const n=this.gos.addGridCommonParams({colDef:e,column:t,columnGroup:s,providedColumnGroup:i,location:o});return typeof r=="function"?r(n):typeof r=="string"?this.expressionService.evaluate(r,n):(R("headerValueGetter must be a function or a string"),"")}else{if(e.headerName!=null)return e.headerName;if(e.field)return Lu(e.field)}return""}wrapHeaderNameWithAggFunc(e,t){if(this.gos.get("suppressAggFuncInHeader"))return t;const s=e.getColDef().pivotValueColumn,i=E(s);let o=null,r;if(i){const n=this.funcColsService.getValueColumns(),l=this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&n.length===1,a=e.getColDef().pivotTotalColumnIds!==void 0;if(l&&!a)return t;o=s?s.getAggFunc():null,r=!0}else{const n=e.isValueActive(),l=this.columnModel.isPivotMode()||!this.funcColsService.isRowGroupEmpty();n&&l?(o=e.getAggFunc(),r=!0):r=!1}if(r){const n=typeof o=="string"?o:"func";return`${this.localeService.getLocaleTextFunc()(n,n)}(${t})`}return t}},Ou=class extends b{constructor(){super(...arguments),this.beanName="pivotResultColsService"}wireBeans(e){this.context=e.context,this.columnModel=e.columnModel,this.columnFactory=e.columnFactory,this.visibleColsService=e.visibleColsService}destroy(){var e;zt(this.context,(e=this.pivotResultCols)==null?void 0:e.tree),super.destroy()}isPivotResultColsPresent(){return this.pivotResultCols!=null}lookupPivotResultCol(e,t){if(this.pivotResultCols==null)return null;const s=this.columnModel.getColDefCol(t);let i=null;return this.pivotResultCols.list.forEach(o=>{const r=o.getColDef().pivotKeys,n=o.getColDef().pivotValueColumn;Je(r,e)&&n===s&&(i=o)}),i}getPivotResultCols(){return this.pivotResultCols}getPivotResultCol(e){return this.pivotResultCols?this.columnModel.getColFromCollection(e,this.pivotResultCols):null}setPivotResultCols(e,t){var s,i;if(this.columnModel.isReady()&&!(e==null&&this.pivotResultCols==null)){if(e){this.processPivotResultColDef(e);const o=this.columnFactory.createColumnTree(e,!1,((s=this.pivotResultCols)==null?void 0:s.tree)||this.previousPivotResultCols||void 0,t);zt(this.context,(i=this.pivotResultCols)==null?void 0:i.tree,o.columnTree);const r=o.columnTree,n=o.treeDept,l=Or(r),a={};this.pivotResultCols={tree:r,treeDepth:n,list:l,map:a},this.pivotResultCols.list.forEach(c=>this.pivotResultCols.map[c.getId()]=c);const d=!!this.previousPivotResultCols;this.previousPivotResultCols=null,this.columnModel.refreshCols(!d)}else this.previousPivotResultCols=this.pivotResultCols?this.pivotResultCols.tree:null,this.pivotResultCols=null,this.columnModel.refreshCols(!1);this.visibleColsService.refresh(t)}}processPivotResultColDef(e){const t=this.gos.get("processPivotResultColDef"),s=this.gos.get("processPivotResultColGroupDef");if(!t&&!s)return;const i=o=>{o.forEach(r=>{if(E(r.children)){const l=r;s&&s(l),i(l.children)}else t&&t(r)})};e&&i(e)}},Nu=class extends b{constructor(){super(...arguments),this.beanName="columnSizeService"}wireBeans(e){this.columnModel=e.columnModel,this.columnViewportService=e.columnViewportService,this.eventDispatcher=e.columnEventDispatcher,this.visibleColsService=e.visibleColsService,this.ctrlsService=e.ctrlsService}setColumnWidths(e,t,s,i){const o=[];e.forEach(r=>{const n=this.columnModel.getColDefCol(r.key)||this.columnModel.getCol(r.key);if(!n)return;if(o.push({width:r.newWidth,ratios:[1],columns:[n]}),this.gos.get("colResizeDefault")==="shift"&&(t=!t),t){const a=this.visibleColsService.getColAfter(n);if(!a)return;const d=n.getActualWidth()-r.newWidth,c=a.getActualWidth()+d;o.push({width:c,ratios:[1],columns:[a]})}}),o.length!==0&&this.resizeColumnSets({resizeSets:o,finished:s,source:i})}resizeColumnSets(e){const{resizeSets:t,finished:s,source:i}=e;if(!(!t||t.every(c=>this.checkMinAndMaxWidthsForSet(c)))){if(s){const c=t&&t.length>0?t[0].columns:null;this.eventDispatcher.columnResized(c,s,i)}return}const r=[],n=[];t.forEach(c=>{const{width:u,columns:h,ratios:p}=c,g={},f={};h.forEach(y=>n.push(y));let m=!0,v=0;for(;m;){if(v++,v>1e3){_("infinite loop in resizeColumnSets");break}m=!1;const y=[];let w=0,F=u;h.forEach((M,x)=>
1{if(f[M.getId()])F-=g[M.getId()];else{y.push(M);const G=p[x];w+=G}});const D=1/w;y.forEach((M,x)=>{const I=x===y.length-1;let G;I?G=F:(G=Math.round(p[x]*u*D),F-=G);const k=M.getMinWidth(),L=M.getMaxWidth();G<k?(G=k,f[M.getId()]=!0,m=!0):L>0&&G>L&&(G=L,f[M.getId()]=!0,m=!0),g[M.getId()]=G})}h.forEach(y=>{const w=g[y.getId()];y.getActualWidth()!==w&&(y.setActualWidth(w,i),r.push(y))})});const l=r.length>0;let a=[];l&&(a=this.refreshFlexedColumns({resizingCols:n,skipSetLeft:!0}),this.visibleColsService.setLeftValues(i),this.visibleColsService.updateBodyWidths(),this.columnViewportService.checkViewportColumns());const d=n.concat(a);(l||s)&&this.eventDispatcher.columnResized(d,s,i,a)}checkMinAndMaxWidthsForSet(e){const{columns:t,width:s}=e;let i=0,o=0,r=!0;t.forEach(a=>{const d=a.getMinWidth();i+=d||0;const c=a.getMaxWidth();c>0?o+=c:r=!1});const n=s>=i,l=!r||s<=o;return n&&l}refreshFlexedColumns(e={}){const t=e.source?e.source:"flex";if(e.viewportWidth!=null&&(this.flexViewportWidth=e.viewportWidth),!this.flexViewportWidth)return[];const s=this.visibleColsService.getCenterCols();let i=-1;if(e.resizingCols){const h=new Set(e.resizingCols);for(let p=s.length-1;p>=0;p--)if(h.has(s[p])){i=p;break}}let o=0,r=[],n=0,l=0;for(let h=0;h<s.length;h++)s[h].getFlex()&&h>i?(r.push(s[h]),l+=s[h].getFlex(),n+=s[h].getMinWidth()):o+=s[h].getActualWidth();if(!r.length)return[];let a=[];o+n>this.flexViewportWidth&&(r.forEach(h=>h.setActualWidth(h.getMinWidth(),t)),a=r,r=[]);const d=[];let c;e:for(;;){c=this.flexViewportWidth-o;const h=c/l;for(let p=0;p<r.length;p++){const g=r[p],f=h*g.getFlex();let m=0;const v=g.getMinWidth(),y=g.getMaxWidth();if(f<v?m=v:f>y&&(m=y),m){g.setActualWidth(m,t),Zl(r,g),l-=g.getFlex(),a.push(g),o+=g.getActualWidth();continue e}d[p]=Math.floor(f)}break}let u=c;return r.forEach((h,p)=>{const g=p<r.length-1?Math.min(d[p],u):Math.max(d[p],u);h.setActualWidth(g,t),a.push(h),u-=d[p]}),e.skipSetLeft||this.visibleColsService.setLeftValues(t),e.updateBodyWidths&&this.visibleColsService.updateBodyWidths(),e.fireResizedEvent&&this.eventDispatcher.columnResized(a,!0,t,r),r}sizeColumnsToFit(e,t="sizeColumnsToFit",s,i){var h;if(this.columnModel.isShouldQueueResizeOperations()){this.columnModel.pushResizeOperation(()=>this.sizeColumnsToFit(e,t,s,i));return}const o={};i&&((h=i==null?void 0:i.columnLimits)==null||h.forEach(({key:p,...g})=>{o[typeof p=="string"?p:p.getColId()]=g}));const r=this.visibleColsService.getAllCols(),n=e===Mt(r);if(e<=0||!r.length||n)return;const l=[],a=[];r.forEach(p=>{p.getColDef().suppressSizeToFit===!0?a.push(p):l.push(p)});const d=l.slice(0);let c=!1;const u=p=>{ke(l,p),a.push(p)};for(l.forEach(p=>{p.resetActualWidth(t);const g=o==null?void 0:o[p.getId()],f=(g==null?void 0:g.minWidth)??(i==null?void 0:i.defaultMinWidth),m=(g==null?void 0:g.maxWidth)??(i==null?void 0:i.defaultMaxWidth),v=p.getActualWidth();typeof f=="number"&&v<f?p.setActualWidth(f,t,!0):typeof m=="number"&&v>m&&p.setActualWidth(m,t,!0)});!c;){c=!0;const p=e-Mt(a);if(p<=0)l.forEach(g=>{var m;const f=((m=o==null?void 0:o[g.getId()])==null?void 0:m.minWidth)??(i==null?void 0:i.defaultMinWidth);if(typeof f=="number"){g.setActualWidth(f,t,!0);return}g.setMinimum(t)});else{const g=p/Mt(l);let f=p;for(let m=l.length-1;m>=0;m--){const v=l[m],y=o==null?void 0:o[v.getId()],w=(y==null?void 0:y.minWidth)??(i==null?void 0:i.defaultMinWidth),F=(y==null?void 0:y.maxWidth)??(i==null?void 0:i.defaultMaxWidth),D=v.getMinWidth(),M=v.getMaxWidth(),x=typeof w=="number"&&w>D?w:D,I=typeof F=="number"&&F<M?F:M;let G=Math.round(v.getActualWidth()*g);G<x?(G=x,u(v),c=!1):G>I?(G=I,u(v),c=!1):m===0&&(G=f),v.setActualWidth(G,t,!0),f-=G}}}d.forEach(p=>{p.fireColumnWidthChangedEvent(t)}),this.visibleColsService.setLeftValues(t),this.visibleColsService.updateBodyWidths(),!s&&this.eventDispatcher.columnResized(d,!0,t)}
1applyAutosizeStrategy(){const e=this.gos.get("autoSizeStrategy");if(!e)return;const{type:t}=e;setTimeout(()=>{if(t==="fitGridWidth"){const{columnLimits:s,defaultMinWidth:i,defaultMaxWidth:o}=e,r=s==null?void 0:s.map(({colId:n,minWidth:l,maxWidth:a})=>({key:n,minWidth:l,maxWidth:a}));this.ctrlsService.getGridBodyCtrl().sizeColumnsToFit({defaultMinWidth:i,defaultMaxWidth:o,columnLimits:r})}else t==="fitProvidedWidth"&&this.sizeColumnsToFit(e.width,"sizeColumnsToFit")})}};function oa(e,t){return e+"_"+t}function Se(e){return e instanceof ra}var ra=class extends b{constructor(e,t,s,i){super(),this.isColumn=!1,this.displayedChildren=[],this.autoHeaderHeight=null,this.parent=null,this.groupId=t,this.partId=s,this.providedColumnGroup=e,this.pinned=i}reset(){this.parent=null,this.children=null,this.displayedChildren=null}getParent(){return this.parent}setParent(e){this.parent=e}getUniqueId(){return oa(this.groupId,this.partId)}isEmptyGroup(){return this.displayedChildren.length===0}isMoving(){const e=this.getProvidedColumnGroup().getLeafColumns();return!e||e.length===0?!1:e.every(t=>t.isMoving())}checkLeft(){if(this.displayedChildren.forEach(e=>{Se(e)&&e.checkLeft()}),this.displayedChildren.length>0)if(this.gos.get("enableRtl")){const t=W(this.displayedChildren).getLeft();this.setLeft(t)}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;return this.displayedChildren&&this.displayedChildren.forEach(t=>{e+=t.getActualWidth()}),e}isResizable(){if(!this.displayedChildren)return!1;let e=!1;return this.displayedChildren.forEach(t=>{t.isResizable()&&(e=!0)}),e}getMinWidth(){let e=0;return this.displayedChildren.forEach(t=>{e+=t.getMinWidth()}),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(){var e;return!!((e=this.getColGroupDef())!=null&&e.autoHeaderHeight)}getAutoHeaderHeight(){return this.autoHeaderHeight}setAutoHeaderHeight(e){const t=e!==this.autoHeaderHeight;return this.autoHeaderHeight=e,t}addDisplayedLeafColumns(e){this.displayedChildren.forEach(t=>{bt(t)?e.push(t):Se(t)&&t.addDisplayedLeafColumns(e)})}addLeafColumns(e){this.children.forEach(t=>{bt(t)?e.push(t):Se(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||!e.isPadding()?0:1+e.getPaddingLevel()}calculateDisplayedColumns(){this.displayedChildren=[];let e=this;for(;e!=null&&e.isPadding();)e=e.getParent();if(!(e?e.getProvidedColumnGroup().isExpandable():!1)){this.displayedChildren=this.children,this.dispatchLocalEvent({type:"displayedChildrenChanged"});return}this.children.forEach(s=>{if(Se(s)&&(!s.displayedChildren||!s.displayedChildren.length))return;switch(s.getColumnGroupShow()){case"open":e.getProvidedColumnGroup().isExpanded()&&this.displayedChildren.push(s);break;case"closed":e.getProvidedColumnGroup().isExpanded()||this.displayedChildren.push(s);break;default:this.displayedChildren.push(s);break}}),this.dispatchLocalEvent({type:"displayedChildrenChanged"})}},na=class{constructor(){this.existingIds={}}getInstanceIdForKey(e){const t=this.existingIds[e];let s;return typeof t!="number"?s=0:s=t+1,this.existingIds[e]=s,s}},Bu=class extends b{constructor(){super(...arguments),this.beanName="visibleColsService",this.colsAndGroupsMap={},this.columnsLeft=[],this.columnsRight=[],this.columnsCenter=[],this.columns=[],this.bodyWidth=0,this.leftWidth=0,this.rightWidth=0,this.bodyWidthDirty=!0}wireBeans(e){this.columnModel=e.columnModel,this.columnSizeService=e.columnSizeService,this.columnViewportService=e.columnViewportService,this.eventDispatcher=e.columnEventDispatcher}refresh(e,t=!1){t||this.buildTrees(),this.updateOpenClosedVisibilityInColumnGroups(),this.columnsLeft=Lo(this.treeLeft),this.columnsCenter=Lo(this.treeCenter),this.columnsRight=Lo(this.treeRight),this.joinColsAriaOrder(),this.joinCols(),this.setLeftValues(e),this.autoHeightCols=this.columns.filter(s=>s.isAutoHeight()),this.columnSizeService.refreshFlexedColumns(),this.updateBodyWidths(),this.columnViewportService.checkViewportColumns(!1),this.setFirstRightAndLastLeftPinned(e),this.eventDispatcher.visibleCols(e)}updateBodyWidths(){const e=Mt(this.columnsCenter),t=Mt(this.columnsLeft),s=Mt(this.columnsRight);this.bodyWidthDirty=this.bodyWidth!==e,(this.bodyWidth!==e||this.leftWidth!==t||this.rightWidth!==s)&&(this.bodyWidth=e,this.leftWidth=t,this.rightWidth=s,this.eventService.dispatchEvent({type:"columnContainerWidthChanged"}),this.eventService.dispatchEvent({type:"displayedColumnsWidthChanged"}))}setLeftValues(e){this.setLeftValuesOfCols(e),this.setLeftValuesOfGroups()}setFirstRightAndLastLeftPinned(e){let t,s;this.gos.get("enableRtl")?(t=this.columnsLeft?this.columnsLeft[0]:null,s=this.columnsRight?W(this.columnsRight):null):(t=this.columnsLeft?W(this.columnsLeft):null,s=this.columnsRight?this.columnsRight[0]:null),this.columnModel.getCols().forEac
1h(i=>{i.setLastLeftPinned(i===t,e),i.setFirstRightPinned(i===s,e)})}buildTrees(){const e=this.columnModel.getColsToShow(),t=e.filter(r=>r.getPinned()=="left"),s=e.filter(r=>r.getPinned()=="right"),i=e.filter(r=>r.getPinned()!="left"&&r.getPinned()!="right"),o=new na;this.treeLeft=this.createGroups({columns:t,idCreator:o,pinned:"left",oldDisplayedGroups:this.treeLeft}),this.treeRight=this.createGroups({columns:s,idCreator:o,pinned:"right",oldDisplayedGroups:this.treeRight}),this.treeCenter=this.createGroups({columns:i,idCreator:o,pinned:null,oldDisplayedGroups:this.treeCenter}),this.updateColsAndGroupsMap()}clear(){this.columnsLeft=[],this.columnsRight=[],this.columnsCenter=[],this.columns=[],this.ariaOrderColumns=[]}joinColsAriaOrder(){const e=this.columnModel.getCols(),t=[],s=[],i=[];for(const o of e){const r=o.getPinned();r?r===!0||r==="left"?t.push(o):i.push(o):s.push(o)}this.ariaOrderColumns=t.concat(s).concat(i)}getAriaColIndex(e){let t;return Se(e)?t=e.getLeafColumns()[0]:t=e,this.ariaOrderColumns.indexOf(t)+1}getAllAutoHeightCols(){return this.autoHeightCols}setLeftValuesOfGroups(){[this.treeLeft,this.treeRight,this.treeCenter].forEach(e=>{e.forEach(t=>{Se(t)&&t.checkLeft()})})}setLeftValuesOfCols(e){if(!this.columnModel.getColDefCols())return;const s=this.columnModel.getCols().slice(0),i=this.gos.get("enableRtl");[this.columnsLeft,this.columnsRight,this.columnsCenter].forEach(o=>{if(i){let r=Mt(o);o.forEach(n=>{r-=n.getActualWidth(),n.setLeft(r,e)})}else{let r=0;o.forEach(n=>{n.setLeft(r,e),r+=n.getActualWidth()})}hu(s,o)}),s.forEach(o=>{o.setLeft(null,e)})}joinCols(){this.gos.get("enableRtl")?this.columns=this.columnsRight.concat(this.columnsCenter).concat(this.columnsLeft):this.columns=this.columnsLeft.concat(this.columnsCenter).concat(this.columnsRight)}getColsCenter(){return this.columnsCenter}getAllTrees(){return this.treeLeft&&this.treeRight&&this.treeCenter?this.treeLeft.concat(this.treeCenter).concat(this.treeRight):null}getTreeLeft(){return this.treeLeft}getTreeRight(){return this.treeRight}getTreeCenter(){return this.treeCenter}getAllCols(){return this.columns}isColDisplayed(e){return this.getAllCols().indexOf(e)>=0}getLeftColsForRow(e){return this.columnModel.isColSpanActive()?this.getColsForRow(e,this.columnsLeft):this.columnsLeft}getRightColsForRow(e){return this.columnModel.isColSpanActive()?this.getColsForRow(e,this.columnsRight):this.columnsRight}getColsForRow(e,t,s,i){const o=[];let r=null;for(let n=0;n<t.length;n++){const l=t[n],a=t.length-n,d=Math.min(l.getColSpan(e),a),c=[l];if(d>1){const h=d-1;for(let p=1;p<=h;p++)c.push(t[n+p]);n+=h}let u;s?(u=!1,c.forEach(h=>{s(h)&&(u=!0)})):u=!0,u&&(o.length===0&&r&&(i&&i(l))&&o.push(r),o.push(l)),r=l}return o}getBodyContainerWidth(){return this.bodyWidth}getContainerWidth(e){switch(e){case"left":return this.leftWidth;case"right":return this.rightWidth;default:return this.bodyWidth}}getCenterCols(){return this.columnsCenter}getLeftCols(){return this.columnsLeft}getRightCols(){return this.columnsRight}getColBefore(e){const t=this.getAllCols(),s=t.indexOf(e);return s>0?t[s-1]:null}getGroupAtDirection(e,t){const s=e.getProvidedColumnGroup().getLevel()+e.getPaddingLevel(),i=e.getDisplayedLeafColumns(),o=t==="After"?W(i):i[0],r=`getCol${t}`;for(;;){const n=this[r](o);if(!n)return null;const l=this.getColGroupAtLevel(n,s);if(l!==e)return l}}getColGroupAtLevel(e,t){let s=e.getParent(),i,o;for(;i=s.getProvidedColumnGroup().getLevel(),o=s.getPaddingLevel(),!(i+o<=t);)s=s.getParent();return s}isPinningLeft(){return this.columnsLeft.length>0}isPinningRight(){return this.columnsRight.length>0}updateColsAndGroupsMap(){this.colsAndGroupsMap={};const e=t=>{this.colsAndGroupsMap[t.getUniqueId()]=t};Jt(this.treeCenter,!1,e),Jt(this.treeLeft,!1,e),Jt(this.treeRight,!1,e)}isVisible(e){return this.colsAndGroupsMap[e.getUniqueId()]===e}updateOpenClosedVisibilityInColumnGroups(){const e=this.getAllTrees();Jt(e,!1,t=>{Se(t)&&t.calculateDisplayedColumns()})}getFirstColumn(){const e=this.gos.get("enableRtl"),t=["getLeftCols","getCenterCols","getRightCols"];e&&t.reverse();for(let s=0;s<t.length;s++){const i=this[t[s]]();if(i.length)return e?W(i):i[0]}return null}getColumnGroup(e,t){if(!e)return null;if(Se(e))return e;const s=this.getAllTrees(),i=typeof t=="number";let o=null;return Jt(s,!1,r=>{if(Se(r)){const n=r;let l;i?l=e===n.getGroupId()&&t===n.getPartId():l=e===n.getGroupId(),l&&(o=n)}}),o}getColAfter(e){const t=this.getAllCols(),s=t.indexOf(e);return s<t.length-1?t[s+1]:null}isBodyWidthDirty(){return this.bodyWidthDirty}setBodyWidthDirty(){this.bodyWidthDirty=!0}getColsLeftWidth(){return Mt(this.columnsLeft)}getDisplayedColumnsRightWidth(){return Mt(this.columnsRight)}isColAtEdge(e,t){const s=this.getAllCols();if(!s.length)return!1;const i=t==="first";let o;if(Se(e)){const r=e.getDisplayedLeafColumns();if(!r.length)return!1;o=i?r[0]:W(r)}else o=e;return(i?s[0]:W(s))===o}createGroups(e){const{columns:t,idCreator:s,pinned:i,oldDisplayedGroups:o,isStandaloneStructure:r}=e,n=this.mapOldGroupsById(o),l=[];let a=t;for(;a.length;){const d=a;a=[];let c=0;const u=h=>{const p=c;c=h;const g=d[p],m=(Se(g)?g.getProvidedColumnGroup():g).getOriginalParent();if(m==null){for(let y=p;y<h;
1y++)l.push(d[y]);return}const v=this.createColGroup(m,s,n,i,r);for(let y=p;y<h;y++)v.addChild(d[y]);a.push(v)};for(let h=1;h<d.length;h++){const p=d[h],f=(Se(p)?p.getProvidedColumnGroup():p).getOriginalParent(),m=d[c],y=(Se(m)?m.getProvidedColumnGroup():m).getOriginalParent();f!==y&&u(h)}c<d.length&&u(d.length)}return r||this.setupParentsIntoCols(l,null),l}createColGroup(e,t,s,i,o){const r=e.getGroupId(),n=t.getInstanceIdForKey(r),l=oa(r,n);let a=s[l];return a&&a.getProvidedColumnGroup()!==e&&(a=null),E(a)?a.reset():(a=new ra(e,r,n,i),o||this.createBean(a)),a}mapOldGroupsById(e){const t={},s=i=>{i.forEach(o=>{if(Se(o)){const r=o;t[o.getUniqueId()]=r,s(r.getChildren())}})};return e&&s(e),t}setupParentsIntoCols(e,t){e.forEach(s=>{if(s.setParent(t),Se(s)){const i=s;this.setupParentsIntoCols(i.getChildren(),i)}})}};function Jt(e,t,s){if(e)for(let i=0;i<e.length;i++){const o=e[i];if(Se(o)){const r=t?o.getDisplayedChildren():o.getChildren();Jt(r,t,s)}s(o)}}function Lo(e){const t=[];return Jt(e,!0,s=>{bt(s)&&t.push(s)}),t}var la=["columnEverythingChanged","newColumnsLoaded","columnPivotModeChanged","pivotMaxColumnsExceeded","columnRowGroupChanged","expandOrCollapseAll","columnPivotChanged","gridColumnsChanged","columnValueChanged","columnMoved","columnVisible","columnPinned","columnGroupOpened","columnResized","displayedColumnsChanged","virtualColumnsChanged","columnHeaderMouseOver","columnHeaderMouseLeave","columnHeaderClicked","columnHeaderContextMenu","asyncTransactionsFlushed","rowGroupOpened","rowDataUpdated","pinnedRowDataChanged","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","filterOpened","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"],Vu=["scrollbarWidthChanged","keyShortcutChangedCellStart","keyShortcutChangedCellEnd","pinnedHeightChanged","cellFocusCleared","fullWidthRowFocused","checkboxChanged","heightScaleChanged","suppressMovableColumns","suppressMenuHide","suppressFieldDotNotation","columnPanelItemDragStart","columnPanelItemDragEnd","bodyHeightChanged","columnContainerWidthChanged","displayedColumnsWidthChanged","scrollVisibilityChanged","scrollGapChanged","columnHoverChanged","flashCells","paginationPixelOffsetChanged","displayedRowsChanged","leftPinnedWidthChanged","rightPinnedWidthChanged","rowContainerHeightChanged","headerHeightChanged","columnGroupHeaderHeightChanged","columnHeaderHeightChanged","gridStylesChanged","storeUpdated","filterDestroyed","rowDataUpdateStarted","rowCountReady","advancedFilterEnabledChanged","dataTypesInferred","fieldValueChanged","fieldPickerValueSelected","richSelectListRowSelected","sideBarUpdated","alignedGridScroll","alignedGridColumn","gridOptionsChanged","chartTitleEdit","recalculateRowBounds","stickyTopOffsetChanged","overlayExclusiveChanged"],Hu=[...la,...Vu],Wu={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,advancedFilterModel:!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,suppressAsyncEvents:!0,suppressBrowserResizeObserver:!0,suppressPropertyNamesCheck:!0,debug:!0,dragAndDropImageComponent:!0,loadingOverlayComponent:!0,suppressLoadingOverlay:!0,noRowsOverlayComponent:!0,paginationPageSizeSelector:!0,paginateChildRows:!0,pivotPanelShow:!0,pivotSuppressAutoColumn:!0,suppressExpandablePivotGroups:!0,aggFuncs:!0,suppressAggFuncInHeader:!0,allowShowChangeAfterFilter:!0,ensureDomOrder:!0,enableRtl:!0,suppressColumnVirtualisation:!0,suppressMaxRenderedRowRestriction:!0,suppressRowVirtualisation:!0,rowDragText:!0,suppressGroupMaintainValueType:!0,groupLockGroupColumns:!0,rowGroupPanelSuppressSort:!0,suppressGroupRowsSticky:!0,rowModelType:!0,cacheOverflowSize:!0,infiniteInitialRowCount:!0,serverSideInitialRowCount:!0,suppressServerSideInfiniteScroll:!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,columnMenu:!0,suppressSetFilterByDefault:!0},Ie=class{};Ie.STRING_PROPERTIES=["overlayLoadingTemplate","overlayNoRowsTemplate","gridId","quickFilterText","rowModelType","editType","domLayout","clipboardDelimiter","rowGroupPanelShow","multiSortKey","pivotColumnGroupTotals","pivotRowTotals","pivotPanelShow","fillHandleDirection","groupDisplayType","treeDataDisplayType","colResizeDefault","tooltipTrigger","serverSidePivotResultFieldSeparator","columnMenu","tooltipShowMode","grandTotalRow"];Ie.OBJECT_PROPERTIES=["components","rowStyle","context","autoGroupColumnDef","localeText","icons","datasource","dragAndDropImageComponentParams","serverSideDatasource","viewportDatasource","groupRowRendererParams","aggFuncs","fullWidthCellRendererParams","defaultColGroupDef","defaultColDef","defaultCsvExportParams","defaultExcelExportParams","columnTypes","rowClassRules","detailCellRendererParams","loadingCellRendererParams","loadingOverlayComponentParams","noRowsOverlayComponentParams","popupParent","statusBar","sideBar","theme","chartThemeOverrides","customChartThemes","chartToolPanelsDef","dataTypeDefinitions","advancedFilterModel","advancedFilterParent","advancedFilterBuilderParams","initialState","autoSizeStrategy","cellSelection","selectionColumnDef"];Ie.ARRAY_PROPERTIES=["sortingOrder","alignedGrids","rowData","columnDefs","excelStyles","pinnedTopRowData","pinnedBottomRowData","chartThemes","rowClass","paginationPageSizeSelector"];Ie.NUMBER_PROPERTIES=["rowHeight","detailRowHeight","rowBuffer","headerHeight","groupHeaderHeight","groupLockGroupColumns","floatingFiltersHeight","pivotHeaderHeight","pivotGroupHeaderHeight","groupDefaultExpanded","pivotDefaultExpanded","viewportRowModelPageSize","viewportRowModelBufferSize","autoSizePadding","maxBlocksInCache","maxConcurrentDatasourceRequests","tooltipShowDelay","tooltipHideDelay","cacheOverflowSize","paginationPageSize","cacheBlockSize","infiniteInitialRowCount","serverSideInitialRowCount","scrollbarWidth","asyncTransactionWaitMillis","blockLoadDebounceMillis","keepDetailRowsCount","undoRedoCellEditingLimit","cellFlashDelay","cellFadeDelay","cellFlashDuration","cellFadeDuration","tabIndex","pivotMaxGeneratedColumns"];Ie.BOOLEAN_PROPERTIES=["suppressMakeColumnVisibleAfterUnGroup","suppressRowClickSelection","suppressCellFocus","suppressHeaderFocus","suppressHorizontalScroll","groupSelectsChildren","alwaysShowHorizontalScroll","alwaysShowVerticalScroll","debug","enableBrowserTooltips","enableCellExpressions","groupIncludeTotalFooter","groupSuppressBlankHeader","suppressMenuHide","suppressRowDeselection","unSortIcon","suppressMultiSort","alwaysMultiSort","singleClickEdit","suppressLoadingOverlay","suppressNoRowsOverlay","suppressAutoSize","skipHeaderOnAutoSize","suppressColumnMoveAnimation","suppressMoveWhenColumnDragging","suppressMovableColumns","suppressFieldDotNotation","enableRangeSelection","enableRangeHandle","enableFillHandle","suppressClearOnFillReduction","deltaSort","suppressTouch","suppressAsyncEvents","allowContextMenuWithControlKey","suppressContextMenu","enableCellChangeFlash","suppressDragLeaveHidesColumns","suppressRowGroupHidesColumns","suppressMiddleClickScrolls","suppressPreventDefaultOnMouseWheel","suppressCopyRowsToClipboard","copyHeadersToClipboard","copyGroupHeadersToClipboard","pivotMode","suppressAggFuncInHeader","suppressColumnVirtualisation","alwaysAggregateAtRootLevel","suppressFocusAfterRefresh","functionsReadOnly","animateRows","groupSelectsFiltered","groupRemoveSingleChildren","groupRemoveLowestSingleChildren","enableRtl","suppressClickEdit","rowDragEntireRow","rowDragManaged","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","serverSideSortOnServer","serverSideFilterOnServer","suppressAggFilteredOnly","showOpenedGroup","suppressClipboardApi","suppressModelUpdateAfterUpdateTransaction","stopEditingWhenCellsLoseFocus","groupMaintainOrder","columnHoverHighlight","readOnlyEdit","suppressRowVirtualisation","enableCellEditingOnBackspace","resetRowDataOnUpdate","removePivotHeaderRowWhenSingleValueColumn","suppressCopySingleCellRanges","suppressGroupRowsSticky","suppressCutToClipboard","suppressServerSideInfiniteScroll","rowGroupPanelSuppressSort","allowShowChangeAfterFilter","enableAdvancedFilter","masterDetail","treeData","suppressGroupMaintainValueType","reactiveCustomComponents","applyQuickFilterBeforePivotOrAgg","suppressServerSideFullWidthLoadingRow","suppressAdvancedFilterEval","loading","maintainColumnOrder","enableStrictPivotColumnOrder","suppressSetFilterByDefault"];Ie.OTHER_PROPERTIES=["suppressStickyTotalRow","loadThemeGoogleFonts","rowSelection"];Ie.FUNCTION_PROPERTIES=["doesExternalFilterPass","processPivotResultColDef","processPivotResultColGroupDef","getBusinessKeyForNode","isRowSelectable","rowDragText","groupRowRenderer","dragAndDropImageComponent","fullWidthCellRenderer","loadingCellRenderer","loadingOverlayComponent","noRowsOverlayComponent","detailCellRenderer","quickFilterParser","quickFilterMatcher","getLocaleText","isExternalFilterPresent","getRowHeight","getRowClass","getRowStyle","getContextMenuItems","getMainMenuItems","processRowPostCreate","processCellForClipboard","getGroupRowAgg","isFullWidthRow","
1sendToClipboard","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","groupIncludeFooter","loadingCellRendererSelector","getRowId","groupAggFiltering","chartMenuItems","groupTotalRow"];Ie.ALL_PROPERTIES=[...Ie.ARRAY_PROPERTIES,...Ie.OBJECT_PROPERTIES,...Ie.STRING_PROPERTIES,...Ie.NUMBER_PROPERTIES,...Ie.FUNCTION_PROPERTIES,...Ie.BOOLEAN_PROPERTIES,...Ie.OTHER_PROPERTIES];var mi=Ie,rt=class{static getCallbackForEvent(t){return!t||t.length<2?t:"on"+t[0].toUpperCase()+t.substring(1)}};rt.VUE_OMITTED_PROPERTY="AG-VUE-OMITTED-PROPERTY";rt.PUBLIC_EVENTS=la;rt.EVENT_CALLBACKS=Hu.map(e=>rt.getCallbackForEvent(e));rt.BOOLEAN_PROPERTIES=mi.BOOLEAN_PROPERTIES;rt.ALL_PROPERTIES=mi.ALL_PROPERTIES;rt.ALL_PROPERTIES_AND_CALLBACKS=[...rt.ALL_PROPERTIES,...rt.EVENT_CALLBACKS];rt.ALL_PROPERTIES_AND_CALLBACKS_SET=new Set(rt.ALL_PROPERTIES_AND_CALLBACKS);var Ci=rt;function zu(e,t){typeof e!="object"&&(e={});const s={...e};return Ci.ALL_PROPERTIES_AND_CALLBACKS.forEach(o=>{const r=t[o];typeof r<"u"&&r!==Ci.VUE_OMITTED_PROPERTY&&(s[o]=r)}),s}function Uu(e,t){if(!e)return;const s={};let i=!1;if(Object.keys(e).filter(n=>Ci.ALL_PROPERTIES_AND_CALLBACKS_SET.has(n)).forEach(n=>{s[n]=e[n],i=!0}),!i)return;const o={type:"gridOptionsChanged",options:s};t.dispatchEvent(o);const r={type:"componentStateChanged"};Pe(s,(n,l)=>{r[n]=l}),t.dispatchEvent(r)}var Os=class extends b{};function wi(e,t,s){return s&&e.addDestroyFunc(()=>t.destroyBean(s)),s??e}var yi=class{constructor(e){this.cssClassStates={},this.getGui=e}addCssClass(e){const t=(e||"").split(" ");if(t.length>1){t.forEach(i=>this.addCssClass(i));return}if(this.cssClassStates[e]!==!0&&e.length){const i=this.getGui();i&&i.classList.add(e),this.cssClassStates[e]=!0}}removeCssClass(e){const t=(e||"").split(" ");if(t.length>1){t.forEach(i=>this.removeCssClass(i));return}if(this.cssClassStates[e]!==!1&&e.length){const i=this.getGui();i&&i.classList.remove(e),this.cssClassStates[e]=!1}}containsCssClass(e){const t=this.getGui();return t?t.classList.contains(e):!1}addOrRemoveCssClass(e,t){if(!e)return;if(e.indexOf(" ")>=0){const i=(e||"").split(" ");if(i.length>1){i.forEach(o=>this.addOrRemoveCssClass(o,t));return}}if(this.cssClassStates[e]!==t&&e.length){const i=this.getGui();i&&i.classList.toggle(e,t),this.cssClassStates[e]=t}}};function gt(e,t,s){s==null||typeof s=="string"&&s==""?Vr(e,t):at(e,t,s)}function at(e,t,s){e.setAttribute(aa(t),s.toString())}function Vr(e,t){e.removeAttribute(aa(t))}function aa(e){return`aria-${e}`}function he(e,t){t?e.setAttribute("role",t):e.removeAttribute("role")}function _u(e){let t;return e==="asc"?t="ascending":e==="desc"?t="descending":e==="mixed"?t="other":t="none",t}function Ku(e){return parseInt(e.getAttribute("aria-posinset"),10)}function $u(e){return e.getAttribute("aria-label")}function ze(e,t){gt(e,"label",t)}function Gs(e,t){gt(e,"labelledby",t)}function Hr(e,t){gt(e,"describedby",t)}function da(e,t){gt(e,"live",t)}function ju(e,t){gt(e,"atomic",t)}function qu(e,t){gt(e,"relevant",t)}function Wr(e,t){gt(e,"level",t)}function ca(e,t){gt(e,"disabled",t)}function zr(e,t){gt(e,"hidden",t)}function Ft(e,t){at(e,"expanded",t)}function Yu(e){Vr(e,"expanded")}function Ur(e,t){at(e,"setsize",t)}function _r(e,t){at(e,"posinset",t)}function Qu(e,t){at(e,"multiselectable",t)}function ua(e,t){at(e,"rowcount",t)}function ha(e,t){at(e,"rowindex",t)}function pa(e,t){at(e,"colcount",t)}function ga(e,t){at(e,"colindex",t)}function Xu(e,t){at(e,"colspan",t)}function fa(e,t){at(e,"sort",t)}function ma(e){Vr(e,"sort")}function Qi(e,t){gt(e,"selected",t)}function Zu(e,t){at(e,"checked",t===void 0?"mixed":t)}function Ca(e,t){gt(e,"controls",t.id),Gs(t,e.id)}function Kr(e,t){return t===void 0?e("ariaIndeterminate","indeterminate"):t===!0?e("ariaChecked","checked"):e("ariaUnchecked","unchecked")}var Go,Mi,ko,Oo,No,Bo,dr,cr,Vo;function Pt(){return Go===void 0&&(Go=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)),Go}function va(){if(Mi===void 0)if(Pt()){const e=navigator.userAgent.match(/version\/(\d+)/i);e&&(Mi=e[1]!=null?parseFloat(e[1]):0)}else Mi=0;return Mi}function $r(){if(ko===void 0){const e=window;ko=!!e.chrome&&(!!e.chrome.webstore||!!e.chrome.runtime)||/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor)}return ko}function jr(){return Oo===void 0&&(Oo=/(firefox)/i.test(navigator.userAgent)),Oo}function Sa(){return No===void 0&&(No=/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)),No}function Gt(){return Bo===void 0&&(Bo=/iPad|iPhone|iPod/.test(navigator.platform)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1),Bo}function ur(){return!Pt()||va()>=15}function hr(e){if(!e)return null;const t=e.tabIndex,s=e.getAttribute("tabIndex");return t===-1&&(s===null||s===""&&!jr())?null:t.toString()}function Ju(){if(Vo!==void 0)return Vo;if(!document.body)return-1;let e=1e6;const t=jr()?6e6:1e9,s=document.createElement("div");for(document.body.appendChild(s);;){const i=e*2;if(s.style.height=i+"px",i>t||s.clientHeight!==i)break;e=i}return document.body.removeChild(s),Vo=e,e}function eh(){var e,t;return((e=document.body)==null?void 0:e.clientWidth)??(window.innerHeight||((t=document.documentElement)==null?void 0:t.clientWidth)||-1)}function th(){var e,t;return((e=document.body)==null?void 0:e.clientHeight)??(window.innerHeight||((t=document.documentElement)==null?void 0:t.clientHeight)||-1)}function sh(){return cr==null&&wa(),cr}function wa(){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 s=t.offsetWidth-t.clientWidth;s===0&&t.clientWidth===0&&(s=null),t.parentNode&&t.parentNode.removeChild(t),s!=null&&(cr=s,dr=s===0)}function ya(){return dr==null&&wa(),dr}var Di;function $n(e,t,s){const i=e.parentElement;let o=i&&i.firstChild;for(;o;)t&&o.classList.toggle(t,o===e),o=o.nextSibling}var ih="[tabindex], input, select, button, textarea, [href]",Ra="[disabled], .ag-disabled:not(.ag-button), .ag-disabled *";function qr(e){const t=Element.prototype.matches||Element.prototype.msMatchesSelector,i=t.call(e,"input, select, button, textarea"),o=t.call(e,Ra),r=tt(e);return i&&!o&&r}function H(e,t,s={}){const{skipAriaHidden:i}=s;e.classList.toggle("ag-hidden",!t),i||zr(e,!t)}function oh(e,t,s={}){const{skipAriaHidden:i}=s;e.classList.toggle("ag-invisible",!t),i||zr(e,!t)}function vi(e,t){const s="disabled",i=t?o=>o.setAttribute(s,""):o=>o.removeAttribute(s);i(e),xa(e.querySelectorAll("input"),o=>i(o))}function Fs(e,t,s){let i=0;for(;e;){if(e.classList.contains(t))return!0;
1if(e=e.parentElement,typeof s=="number"){if(++i>s)break}else if(e===s)break}return!1}function cs(e){const{height:t,width:s,borderTopWidth:i,borderRightWidth:o,borderBottomWidth:r,borderLeftWidth:n,paddingTop:l,paddingRight:a,paddingBottom:d,paddingLeft:c,marginTop:u,marginRight:h,marginBottom:p,marginLeft:g,boxSizing:f}=window.getComputedStyle(e);return{height:parseFloat(t||"0"),width:parseFloat(s||"0"),borderTopWidth:parseFloat(i||"0"),borderRightWidth:parseFloat(o||"0"),borderBottomWidth:parseFloat(r||"0"),borderLeftWidth:parseFloat(n||"0"),paddingTop:parseFloat(l||"0"),paddingRight:parseFloat(a||"0"),paddingBottom:parseFloat(d||"0"),paddingLeft:parseFloat(c||"0"),marginTop:parseFloat(u||"0"),marginRight:parseFloat(h||"0"),marginBottom:parseFloat(p||"0"),marginLeft:parseFloat(g||"0"),boxSizing:f}}function mo(e){const t=cs(e);return t.boxSizing==="border-box"?t.height-t.paddingTop-t.paddingBottom:t.height}function Ns(e){const t=cs(e);return t.boxSizing==="border-box"?t.width-t.paddingLeft-t.paddingRight:t.width}function ba(e){const{height:t,marginBottom:s,marginTop:i}=cs(e);return Math.floor(t+s+i)}function Xi(e){const{width:t,marginLeft:s,marginRight:i}=cs(e);return Math.floor(t+s+i)}function Fa(e){const t=e.getBoundingClientRect(),{borderTopWidth:s,borderLeftWidth:i,borderRightWidth:o,borderBottomWidth:r}=cs(e);return{top:t.top+(s||0),left:t.left+(i||0),right:t.right+(o||0),bottom:t.bottom+(r||0)}}function Zi(){if(typeof Di=="boolean")return Di;const e=document.createElement("div");return e.style.direction="rtl",e.style.width="1px",e.style.height="1px",e.style.position="fixed",e.style.top="0px",e.style.overflow="hidden",e.dir="rtl",e.innerHTML=`<div style="width: 2px"> 2 <span style="display: inline-block; width: 1px"></span> 3 <span style="display: inline-block; width: 1px"></span> 4 </div>`,document.body.appendChild(e),e.scrollLeft=1,Di=Math.floor(e.scrollLeft)===0,document.body.removeChild(e),Di}function Ji(e,t){let s=e.scrollLeft;return t&&(s=Math.abs(s),$r()&&!Zi()&&(s=e.scrollWidth-e.getBoundingClientRect().width-s)),s}function eo(e,t,s){s&&(Zi()?t*=-1:(Pt()||$r())&&(t=e.scrollWidth-e.getBoundingClientRect().width-t)),e.scrollLeft=t}function de(e){for(;e&&e.firstChild;)e.removeChild(e.firstChild)}function Qe(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Pa(e){return!!e.offsetParent}function tt(e){const t=e;return t.checkVisibility?t.checkVisibility({checkVisibilityCSS:!0}):!(!Pa(e)||window.getComputedStyle(e).visibility!=="visible")}function Xe(e){const t=document.createElement("div");return t.innerHTML=(e||"").trim(),t.firstChild}function Ea(e,t,s){s&&s.nextSibling===t||(s?s.nextSibling?e.insertBefore(t,s.nextSibling):e.appendChild(t):e.firstChild&&e.firstChild!==t&&e.insertAdjacentElement("afterbegin",t))}function Ma(e,t){for(let s=0;s<t.length;s++){const i=t[s],o=e.children[s];o!==i&&e.insertBefore(i,o)}}function rh(e,t,s){s?s.insertAdjacentElement("afterend",t):e.firstChild?e.insertAdjacentElement("afterbegin",t):e.appendChild(t)}function Da(e,t){if(t)for(const[s,i]of Object.entries(t)){if(!s||!s.length||i==null)continue;const o=Gu(s),r=i.toString(),n=r.replace(/\s*!important/g,""),l=n.length!=r.length?"important":void 0;e.style.setProperty(o,n,l)}}function nh(e){return e.clientWidth<e.scrollWidth}function lh(e){return e.clientHeight<e.scrollHeight}function to(e,t){t==="flex"?(e.style.removeProperty("width"),e.style.removeProperty("minWidth"),e.style.removeProperty("maxWidth"),e.style.flex="1 1 auto"):pt(e,t)}function pt(e,t){t=Yr(t),e.style.width=t.toString(),e.style.maxWidth=t.toString(),e.style.minWidth=t.toString()}function ii(e,t){t=Yr(t),e.style.height=t.toString(),e.style.maxHeight=t.toString(),e.style.minHeight=t.toString()}function Yr(e){return typeof e=="number"?`${e}px`:e}function Co(e){return e instanceof Node||e instanceof HTMLElement}function ah(e){if(e==null)return[];const t=[];return xa(e,s=>t.push(s)),t}function dh(e,t){if(e)for(let s=0;s<e.length;s++){const i=e[s];t(i.name,i.value)}}function nt(e,t,s){s==null||s===""?e.removeAttribute(t):e.setAttribute(t,s.toString())}function xa(e,t){if(e!=null)for(let s=0;s<e.length;s++)t(e[s])}var Ze=class{constructor(e=0,t=1){this.nextValue=e,this.step=t}next(){const e=this.nextValue;return this.nextValue+=this.step,e}peek(){return this.nextValue}skip(e){this.nextValue+=e}},ch=1e3,uh=1e3,jn=100,Aa=class Qt extends b{constructor(t,s,i,o){super(),this.parentComp=t,this.tooltipShowDelayOverride=s,this.tooltipHideDelayOverride=i,this.shouldDisplayTooltip=o,this.interactionEnabled=!1,this.isInteractingWithTooltip=!1,this.state=0,this.tooltipInstanceCount=0,this.tooltipMouseTrack=!1}wireBeans(t){this.popupService=t.popupService,this.userComponentFactory=t.userComponentFactory}postConstruct(){this.gos.get("tooltipInteraction")&&(this.interactionEnabled=!0),this.tooltipTrigger=this.getTooltipTrigger(),this.tooltipMouseTrack=this.gos.get("tooltipMouseTrack");const t=this.parentComp.getGui();this.tooltipTrigger===0&&this.addManagedListeners(t,{mouseenter:this.onMouseEnter.bind(this),mouseleave:this.onMouseLeave.bind(this)}),this.tooltipTrigger===1&&this.addManagedListeners(t,{focusin:this.onFocusIn.bind(this),focusout:this.onFocusOut.bind(this)}),this.addManagedListeners(t,{mousemove:this.onMouseMove.bind(this)}),this.interactionEnabled||this.addManagedListeners(t,{mousedown:this.onMouseDown.bind(this),keydown:this.onKeyDown.bind(this)})}getGridOptionsTooltipDelay(t){const s=this.gos.get(t);return s<0&&R(`${t} should not be lower than 0`),Math.max(200,s)}getTooltipDelay(t){return t==="show"?this.tooltipShowDelayOverride??this.getGridOptionsTooltipDelay("tooltipShowDelay"):this.tooltipHideDelayOverride??this.getGridOptionsTooltipDelay("tooltipHideDelay")}destroy(){this.setToDoNothing(),super.destroy()}getTooltipTrigger(){const t=this.gos.get("tooltipTrigger");return!t||t==="hover"?0:1}onMouseEnter(t){this.interactionEnabled&&this.interactiveTooltipTimeoutId&&(this.unlockService(),this.startHideTimeout()),!Gt()&&(Qt.isLocked?this.showTooltipTimeoutId=window.setTimeout(()=>{this.prepareToShowTooltip(t)},jn):this.prepareToShowTooltip(t))}onMouseMove(t){this.lastMouseEvent&&(this.lastMouseEvent=t),this.tooltipMouseTrack&&this.state===2&&this.tooltipComp&&this.positionTooltip()}onMouseDown(){this.setToDoNothing()}onMouseLeave(){this.interactionEnabled?this.lockService():this.setToDoNothing()}onFocusIn(){this.prepareToShowTooltip()}onFocusOut(t){var r;const s=t.relatedTarget,i=this.parentComp.getGui(),o=(r=this.tooltipComp)==null?void 0:r.getGui();this.isInteractingWithTooltip||i.contains(s)||this.interactionEnabled&&(o!=null&&o.contains(s))||this.setToDoNothing()}onKeyDown(){this.isInteractingWithTooltip&&(this.isInteractingWithTooltip=!1),this.setToDoNothing()}prepareToShowTooltip(t){if(this.state!=0||Qt.isLocked)return;let s=0;t&&(s=this.isLastTooltipHiddenRecently()?200:this.getTooltipDelay("show")),this.lastMouseEvent=t||null,this.showTooltipTimeoutId=window.setTimeout(this.showTooltip.bind(this),s),this.state=1}isLastTooltipHiddenRecently(){const t=new Date().getTime(),s=Qt.lastTooltipHideTime;return t-s<ch}setToDoNothing(t){!t&&this.state===2&&this.hideTooltip(),this.onBodyScrollEventCallback&&(this.onBodyScrollEventCallback(),this.onBodyScrollEventCallback=void 0),this.onColumnMovedEventCallback&&(this.onColumnMovedEventCallback(),this.onColumnMovedEventCallback=void 0),this.onDocumentKeyDownCallback&&(this.onDocumentKeyDownCallback(),this.onDocumentKeyDownCallback=void 0),this.clearTimeouts(),this.state=0,this.lastMouseEvent=null}showTooltip(){const t={...this.parentComp.getTooltipParams()};if(!E(t.value)||this.shouldDisplayTooltip&&!this.shouldDisplayTooltip()){this.setToDoNothing();return}this.state=2,this.tooltipInstanceCount++;const s=this.newTooltipComponentCallback.bind(this,this.tooltipInstanceCount);
4this.userComponentFactory.getTooltipCompDetails(t).newAgStackInstance().then(s)}hideTooltip(t){!t&&this.isInteractingWithTooltip||(this.tooltipComp&&(this.destroyTooltipComp(),Qt.lastTooltipHideTime=new Date().getTime()),this.eventService.dispatchEvent({type:"tooltipHide",parentGui:this.parentComp.getGui()}),t&&(this.isInteractingWithTooltip=!1),this.setToDoNothing(!0))}newTooltipComponentCallback(t,s){if(this.state!==2||this.tooltipInstanceCount!==t){this.destroyBean(s);return}const o=s.getGui();this.tooltipComp=s,o.classList.contains("ag-tooltip")||o.classList.add("ag-tooltip-custom"),this.tooltipTrigger===0&&o.classList.add("ag-tooltip-animate"),this.interactionEnabled&&o.classList.add("ag-tooltip-interactive");const r=this.localeService.getLocaleTextFunc(),n=this.popupService.addPopup({eChild:o,ariaLabel:r("ariaLabelTooltip","Tooltip")});if(n&&(this.tooltipPopupDestroyFunc=n.hideFunc),this.positionTooltip(),this.tooltipTrigger===1){const l=()=>this.setToDoNothing();[this.onBodyScrollEventCallback,this.onColumnMovedEventCallback]=this.addManagedEventListeners({bodyScroll:l,columnMoved:l})}this.interactionEnabled&&([this.tooltipMouseEnterListener,this.tooltipMouseLeaveListener]=this.addManagedElementListeners(o,{mouseenter:this.onTooltipMouseEnter.bind(this),mouseleave:this.onTooltipMouseLeave.bind(this)}),[this.onDocumentKeyDownCallback]=this.addManagedElementListeners(le(this.gos),{keydown:l=>{o.contains(l==null?void 0:l.target)||this.onKeyDown()}}),this.tooltipTrigger===1&&([this.tooltipFocusInListener,this.tooltipFocusOutListener]=this.addManagedElementListeners(o,{focusin:this.onTooltipFocusIn.bind(this),focusout:this.onTooltipFocusOut.bind(this)}))),this.eventService.dispatchEvent({type:"tooltipShow",tooltipGui:o,parentGui:this.parentComp.getGui()}),this.startHideTimeout()}onTooltipMouseEnter(){this.isInteractingWithTooltip=!0,this.unlockService()}onTooltipMouseLeave(){this.isTooltipFocused()||(this.isInteractingWithTooltip=!1,this.lockService())}onTooltipFocusIn(){this.isInteractingWithTooltip=!0}isTooltipFocused(){var i;const t=(i=this.tooltipComp)==null?void 0:i.getGui(),s=Q(this.gos);return!!t&&t.contains(s)}onTooltipFocusOut(t){const s=this.parentComp.getGui();this.isTooltipFocused()||(this.isInteractingWithTooltip=!1,s.contains(t.relatedTarget)?this.startHideTimeout():this.hideTooltip())}positionTooltip(){const t={type:"tooltip",ePopup:this.tooltipComp.getGui(),nudgeY:18,skipObserver:this.tooltipMouseTrack};this.lastMouseEvent?this.popupService.positionPopupUnderMouseEvent({...t,mouseEvent:this.lastMouseEvent}):this.popupService.positionPopupByComponent({...t,eventSource:this.parentComp.getGui(),position:"under",keepWithinBounds:!0,nudgeY:5})}destroyTooltipComp(){this.tooltipComp.getGui().classList.add("ag-tooltip-hiding");const t=this.tooltipPopupDestroyFunc,s=this.tooltipComp,i=this.tooltipTrigger===0?uh:0;window.setTimeout(()=>{t(),this.destroyBean(s)},i),this.clearTooltipListeners(),this.tooltipPopupDestroyFunc=void 0,this.tooltipComp=void 0}clearTooltipListeners(){[this.tooltipMouseEnterListener,this.tooltipMouseLeaveListener,this.tooltipFocusInListener,this.tooltipFocusOutListener].forEach(t=>{t&&t()}),this.tooltipMouseEnterListener=this.tooltipMouseLeaveListener=this.tooltipFocusInListener=this.tooltipFocusOutListener=null}lockService(){Qt.isLocked=!0,this.interactiveTooltipTimeoutId=window.setTimeout(()=>{this.unlockService(),this.setToDoNothing()},jn)}unlockService(){Qt.isLocked=!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()}};Aa.isLocked=!1;var hh=Aa,us=class extends b{constructor(e,t){super(),this.ctrl=e,t&&(this.beans=t)}wireBeans(e){this.beans=e}postConstruct(){this.refreshToolTip()}setBrowserTooltip(e){const t="title",s=this.ctrl.getGui();s&&(e!=null&&e!=""?s.setAttribute(t,e):s.removeAttribute(t))}updateTooltipText(){this.tooltip=this.ctrl.getTooltipValue()}createTooltipFeatureIfNeeded(){var t,s,i,o;if(this.tooltipManager!=null)return;const e={getTooltipParams:()=>this.getTooltipParams(),getGui:()=>this.ctrl.getGui()};this.tooltipManager=this.createBean(new hh(e,(s=(t=this.ctrl).getTooltipShowDelayOverride)==null?void 0:s.call(t),(o=(i=this.ctrl).getTooltipHideDelayOverride)==null?void 0:o.call(i),this.ctrl.
4shouldDisplayTooltip),this.beans.context)}refreshToolTip(){this.browserTooltips=this.beans.gos.get("enableBrowserTooltips"),this.updateTooltipText(),this.browserTooltips?(this.setBrowserTooltip(this.tooltip),this.tooltipManager&&(this.tooltipManager=this.destroyBean(this.tooltipManager,this.beans.context))):(this.setBrowserTooltip(null),this.createTooltipFeatureIfNeeded())}getTooltipParams(){var o,r,n,l,a;const e=this.ctrl,t=(o=e.getColumn)==null?void 0:o.call(e),s=(r=e.getColDef)==null?void 0:r.call(e),i=(n=e.getRowNode)==null?void 0:n.call(e);return{location:e.getLocation(),colDef:s,column:t,rowIndex:(l=e.getRowIndex)==null?void 0:l.call(e),node:i,data:i==null?void 0:i.data,value:this.getTooltipText(),valueFormatted:(a=e.getValueFormatted)==null?void 0:a.call(e),hideTooltipCallback:()=>{var d;return(d=this.tooltipManager)==null?void 0:d.hideTooltip(!0)}}}getTooltipText(){return this.tooltip}destroy(){this.tooltipManager&&(this.tooltipManager=this.destroyBean(this.tooltipManager,this.beans.context)),super.destroy()}},ph=new Ze,P=null,O=class Ta extends b{constructor(t,s){super(),this.suppressDataRefValidation=!1,this.displayed=!0,this.visible=!0,this.compId=ph.next(),this.cssClassManager=new yi(()=>this.eGui),this.componentSelectors=new Map((s??[]).map(i=>[i.selector,i])),t&&this.setTemplate(t)}preWireBeans(t){super.preWireBeans(t)}preConstruct(){this.usingBrowserTooltips=this.gos.get("enableBrowserTooltips"),this.wireTemplate(this.getGui())}wireTemplate(t,s){t&&this.gos&&(this.applyElementsToComponent(t),this.createChildComponentsFromTags(t,s))}getCompId(){return this.compId}getTooltipParams(){return{value:this.tooltipText,location:"UNKNOWN"}}setTooltip(t){const{newTooltipText:s,showDelayOverride:i,hideDelayOverride:o,location:r,shouldDisplayTooltip:n}=t||{};this.tooltipFeature&&(this.tooltipFeature=this.destroyBean(this.tooltipFeature)),this.tooltipText!==s&&(this.tooltipText=s);const l=()=>this.tooltipText;s!=null&&(this.tooltipFeature=this.createBean(new us({getTooltipValue:l,getGui:()=>this.getGui(),getLocation:()=>r??"UNKNOWN",getColDef:t==null?void 0:t.getColDef,getColumn:t==null?void 0:t.getColumn,getTooltipShowDelayOverride:i!=null?()=>i:void 0,getTooltipHideDelayOverride:o!=null?()=>o:void 0,shouldDisplayTooltip:n})))}getDataRefAttribute(t){return t.getAttribute?t.getAttribute("data-ref"):null}applyElementsToComponent(t,s,i,o=null){if(s===void 0&&(s=this.getDataRefAttribute(t)),s){const r=this[s];if(r===P)this[s]=o??t;else{const n=i&&i[s];!this.suppressDataRefValidation&&!n&&R(`Issue with data-ref: ${s} on ${this.constructor.name} with ${r}`)}}}createChildComponentsFromTags(t,s){ah(t.childNodes).forEach(o=>{if(!(o instanceof HTMLElement))return;const r=this.createComponentFromElement(o,n=>{n.getGui()&&this.copyAttributesFromNode(o,n.getGui())},s);if(r){if(r.addItems&&o.children.length){this.createChildComponentsFromTags(o,s);const n=Array.prototype.slice.call(o.children);r.addItems(n)}this.swapComponentForNode(r,t,o)}else o.childNodes&&this.createChildComponentsFromTags(o,s)})}createComponentFromElement(t,s,i){const o=t.nodeName,r=this.getDataRefAttribute(t),n=o.indexOf("AG-")===0,l=n?this.componentSelectors.get(o):null;let a=null;if(l){Ta.elementGettingCreated=t;const d=i&&r?i[r]:void 0;a=new l.component(d),a.setParentComponent(this),this.createBean(a,null,s)}else n&&R(`Missing selector: ${o}`);return this.applyElementsToComponent(t,r,i,a),a}copyAttributesFromNode(t,s){dh(t.attributes,(i,o)=>s.setAttribute(i,o))}swapComponentForNode(t,s,i){const o=t.getGui();s.replaceChild(o,i),s.insertBefore(document.createComment(i.nodeName),o),this.addDestroyFunc(this.destroyBean.bind(this,t))}activateTabIndex(t){const s=this.gos.get("tabIndex");t||(t=[]),t.length||t.push(this.getGui()),t.forEach(i=>i.setAttribute("tabindex",s.toString()))}setTemplate(t,s,i){const o=Xe(t);this.setTemplateFromElement(o,s,i)}setTemplateFromElement(t,s,i,o=!1){if(this.eGui=t,this.suppressDataRefValidation=o,s)for(let r=0;r<s.length;r++){const n=s[r];this.componentSelectors.set(n.selector,n)}this.wireTemplate(t,i)}getGui(){return this.eGui}getFocusableElement(){return this.eGui}getAriaElement(){return this.getFocusableElement()}setParentComponent(t){this.parentComponent=t}getParentComponent(){return this.parentComponent}setGui(t){this.eGui=t}queryForHtmlElement(t){return this.eGui.querySelector(t)}getContainerAndElement(t,s){let i=s;return t==null?null:(i||(i=this.eGui),Co(t)?{element:t,parent:i}:{element:t.getGui(),parent:i})}prependChild(t,s){const{element:i,parent:o}=this.getContainerAndElement(t,s)||{};!i||!o||o.insertAdjacentElement("afterbegin",i)}appendChild(t,s){const{element:i,parent:o}=this.getContainerAndElement(t,s)||{};!i||!o||o.appendChild(i)}isDisplayed(){return this.displayed}setVisible(t,s={}){if(t!==this.visible){this.visible=t;const{skipAriaHidden:i}=s;oh(this.eGui,t,{skipAriaHidden:i})}}setDisplayed(t,s={}){if(t!==this.displayed){this.displayed=t;const{skipAriaHidden:i}=s;H(this.eGui,t,{skipAriaHidden:i});const o={type:"displayChanged",visible:this.displayed};this.dispatchLocalEvent(o)}}destroy(){this.parentComponent&&(this.parentComponent=void 0),this.tooltipFeature&&(this.tooltipFeature=this.destroyBean(this.tooltipFeature)),super.destroy()}
4addGuiEventListener(t,s,i){this.eGui.addEventListener(t,s,i),this.addDestroyFunc(()=>this.eGui.removeEventListener(t,s))}addCssClass(t){this.cssClassManager.addCssClass(t)}removeCssClass(t){this.cssClassManager.removeCssClass(t)}containsCssClass(t){return this.cssClassManager.containsCssClass(t)}addOrRemoveCssClass(t,s){this.cssClassManager.addOrRemoveCssClass(t,s)}},Ia={columnGroupOpened:"expanded",columnGroupClosed:"contracted",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate",columnMovePin:"pin",columnMoveHide:"eye-slash",columnMoveMove:"arrows",columnMoveLeft:"left",columnMoveRight:"right",columnMoveGroup:"group",columnMoveValue:"aggregation",columnMovePivot:"pivot",dropNotAllowed:"not-allowed",groupContracted:"tree-closed",groupExpanded:"tree-open",setFilterGroupClosed:"tree-closed",setFilterGroupOpen:"tree-open",setFilterGroupIndeterminate:"tree-indeterminate",chart:"chart",close:"cross",cancel:"cancel",check:"tick",first:"first",previous:"previous",next:"next",last:"last",linked:"linked",unlinked:"unlinked",colorPicker:"color-picker",groupLoading:"loading",menu:"menu",menuAlt:"menu-alt",filter:"filter",columns:"columns",maximize:"maximize",minimize:"minimize",menuPin:"pin",menuValue:"aggregation",menuAddRowGroup:"group",menuRemoveRowGroup:"group",clipboardCopy:"copy",clipboardCut:"cut",clipboardPaste:"paste",pivotPanel:"pivot",rowGroupPanel:"group",valuePanel:"aggregation",columnDrag:"grip",rowDrag:"grip",save:"save",csvExport:"csv",excelExport:"excel",smallDown:"small-down",smallLeft:"small-left",smallRight:"small-right",smallUp:"small-up",sortAscending:"asc",sortDescending:"desc",sortUnSort:"none",advancedFilterBuilder:"group",advancedFilterBuilderDrag:"grip",advancedFilterBuilderInvalid:"not-allowed",advancedFilterBuilderMoveUp:"up",advancedFilterBuilderMoveDown:"down",advancedFilterBuilderAdd:"plus",advancedFilterBuilderRemove:"minus",chartsMenuEdit:"chart",chartsMenuAdvancedSettings:"settings",chartsMenuAdd:"plus",checkboxChecked:"checkbox-checked",checkboxIndeterminate:"checkbox-indeterminate",checkboxUnchecked:"checkbox-unchecked",radioButtonOn:"radio-button-on",radioButtonOff:"radio-button-off"},gh=(()=>{const e=new Set(Object.values(Ia));return e.add("eye"),e})();function Ps(e,t,s){const i=N(e,t,s);if(i){const{className:r}=i;if(typeof r=="string"&&r.indexOf("ag-icon")>-1||typeof r=="object"&&r["ag-icon"])return i}const o=document.createElement("span");return o.appendChild(i),o}function N(e,t,s,i){let o=null;const r=s&&s.getColDef().icons;if(r&&(o=r[e]),t&&!o){const n=t.get("icons");n&&(o=n[e])}if(o){let n;if(typeof o=="function")n=o();else if(typeof o=="string")n=o;else throw new Error("icon from grid options needs to be a string or a function");if(typeof n=="string")return Xe(n);if(Co(n))return n;R("iconRenderer should return back a string or a dom object")}else{const n=document.createElement("span");let l=Ia[e]??(gh.has(e)?e:void 0);return l||(i?l=e:(R(`Did not find icon ${e}`),l="")),n.setAttribute("class",`ag-icon ag-icon-${l}`),n.setAttribute("unselectable","on"),he(n,"presentation"),n}}var fh=class extends O{constructor(){super(...arguments),this.dragSource=null,this.eIcon=P,this.eLabel=P}postConstruct(){const e=t=>Ps(t,this.gos,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(`<div class="ag-dnd-ghost ag-unselectable"> 5 <span data-ref="eIcon" class="ag-dnd-ghost-icon ag-shake-left-to-right"></span> 6 <div data-ref="eLabel" class="ag-dnd-ghost-label"></div> 7 </div>`)}destroy(){this.dragSource=null,super.destroy()}setIcon(e,t=!1){var i,o;de(this.eIcon);let s=null;e||(e=(i=this.dragSource)!=null&&i.getDefaultIconName?(o=this.dragSource)==null?void 0:o.getDefaultIconName():"notAllowed"),s=this.dropIconMap[e],this.eIcon.classList.toggle("ag-shake-left-to-right",t),
7!(s===this.dropIconMap.hide&&this.gos.get("suppressDragLeaveHidesColumns"))&&s&&this.eIcon.appendChild(s)}setLabel(e){this.eLabel.textContent=Ce(e)}};function La(e,t,s){if(s===0)return!1;const i=Math.abs(e.clientX-t.clientX),o=Math.abs(e.clientY-t.clientY);return Math.max(i,o)<=s}var wt=class{constructor(e,t=!1){this.DOUBLE_TAP_MILLIS=500,this.destroyFuncs=[],this.touching=!1,this.localEventService=new qt,this.eElement=e,this.preventMouseClick=t;const s=this.onTouchStart.bind(this),i=this.onTouchMove.bind(this),o=this.onTouchEnd.bind(this);this.eElement.addEventListener("touchstart",s,{passive:!0}),this.eElement.addEventListener("touchmove",i,{passive:!0}),this.eElement.addEventListener("touchend",o,{passive:!1}),this.destroyFuncs.push(()=>{this.eElement.removeEventListener("touchstart",s,{passive:!0}),this.eElement.removeEventListener("touchmove",i,{passive:!0}),this.eElement.removeEventListener("touchend",o,{passive:!1})})}getActiveTouch(e){for(let t=0;t<e.length;t++)if(e[t].identifier===this.touchStart.identifier)return e[t];return null}addEventListener(e,t){this.localEventService.addEventListener(e,t)}removeEventListener(e,t){this.localEventService.removeEventListener(e,t)}onTouchStart(e){if(this.touching)return;this.touchStart=e.touches[0],this.touching=!0,this.moved=!1;const t=this.touchStart;window.setTimeout(()=>{const s=this.touchStart===t;if(this.touching&&s&&!this.moved){this.moved=!0;const i={type:"longTap",touchStart:this.touchStart,touchEvent:e};this.localEventService.dispatchEvent(i)}},500)}onTouchMove(e){if(!this.touching)return;const t=this.getActiveTouch(e.touches);if(!t)return;!La(t,this.touchStart,4)&&(this.moved=!0)}onTouchEnd(e){if(this.touching){if(!this.moved){const t={type:"tap",touchStart:this.touchStart};this.localEventService.dispatchEvent(t),this.checkForDoubleTap()}this.preventMouseClick&&e.cancelable&&e.preventDefault(),this.touching=!1}}checkForDoubleTap(){const e=new Date().getTime();if(this.lastTapTime&&this.lastTapTime>0)if(e-this.lastTapTime>this.DOUBLE_TAP_MILLIS){const s={type:"doubleTap",touchStart:this.touchStart};this.localEventService.dispatchEvent(s),this.lastTapTime=null}else this.lastTapTime=e;else this.lastTapTime=e}destroy(){this.destroyFuncs.forEach(e=>e())}};function _s(e,t){return`<span data-ref="eSort${e}" class="ag-sort-indicator-icon ag-sort-${t} ag-hidden" aria-hidden="true"></span>`}var mh=`<span class="ag-sort-indicator-container"> 8 ${_s("Order","order")} 9 ${_s("Asc","ascending-icon")} 10 ${_s("Desc","descending-icon")} 11 ${_s("Mixed","mixed-icon")} 12 ${_s("None","none-icon")} 13 </span>`,Qr=class extends O{constructor(e){super(),this.eSortOrder=P,this.eSortAsc=P,this.eSortDesc=P,this.eSortMixed=P,this.eSortNone=P,e||this.setTemplate(mh)}wireBeans(e){this.sortController=e.sortController}attachCustomElements(e,t,s,i,o){this.eSortOrder=e,this.eSortAsc=t,this.eSortDesc=s,this.eSortMixed=i,this.eSortNone=o}setupSort(e,t=!1){if(this.column=e,this.suppressOrder=t,this.setupMultiSortIndicator(),!this.column.isSortable()&&!this.column.getColDef().showRowGroup)return;this.addInIcon("sortAscending",this.eSortAsc,e),this.addInIcon("sortDescending",this.eSortDesc,e),this.addInIcon("sortUnSort",this.eSortNone,e);const s=this.updateIcons.bind(this),i=this.onSortChanged.bind(this);this.addManagedPropertyListener("unSortIcon",s),this.addManagedEventListeners({newColumnsLoaded:s,sortChanged:i,columnRowGroupChanged:i}),this.onSortChanged()}addInIcon(e,t,s){if(t==null)return;const i=N(e,this.gos,s);i&&t.appendChild(i)}onSortChanged(){this.updateIcons(),this.suppressOrder||this.updateSortOrder()}updateIcons(){const e=this.sortController.getDisplaySortForColumn(this.column);if(this.eSortAsc){const t=e==="asc";H(this.eSortAsc,t,{skipAriaHidden:!0})}if(this.eSortDesc){const t=e==="desc";H(this.eSortDesc,t,{skipAriaHidden:!0})}if(this.eSortNone){const t=!this.column.getColDef().unSortIcon&&!this.gos.get("unSortIcon"),s=e==null;H(this.eSortNone,!t&&s,{skipAriaHidden:!0})}}setupMultiSortIndicator(){this.addInIcon("sortUnSort",this.eSortMixed,this.column);const e=this.column.getColDef().showRowGroup;ct(this.gos)&&e&&(this.addManagedEventListeners({sortChanged:this.updateMultiSortIndicator.bind(this),columnRowGroupChanged:this.updateMultiSortIndicator.bind(this)}),this.updateMultiSortIndicator())}updateMultiSortIndicator(){if(this.eSortMixed){const e=this.sortController.getDisplaySortForColumn(this.column)==="mixed";H(this.eSortMixed,e,{skipAriaHidden:!0})}}updateSortOrder(){if(!this.eSortOrder)return;const e=this.sortController.getColumnsWithSortingOrdered(),t=this.sortController.getDisplaySortIndexForColumn(this.column)??-1,s=e.some(o=>this.sortController.getDisplaySortIndexForColumn(o)??!1),i=t>=0&&s;H(this.eSortOrder,i,{skipAriaHidden:!0}),t>=0?this.eSortOrder.textContent=(t+1).toString():de(this.eSortOrder)}},Ga={selector:"AG-SORT-INDICATOR",component:Qr},Ch=`<div class="ag-cell-label-container" role="presentation">
14 <span data-ref="eMenu" class="ag-header-icon ag-header-cell-menu-button" aria-hidden="true"></span> 15 <span data-ref="eFilterButton" class="ag-header-icon ag-header-cell-filter-button" aria-hidden="true"></span> 16 <div data-ref="eLabel" class="ag-header-cell-label" role="presentation"> 17 <span data-ref="eText" class="ag-header-cell-text"></span> 18 <span data-ref="eFilter" class="ag-header-icon ag-header-label-icon ag-filter-icon" aria-hidden="true"></span> 19 <ag-sort-indicator data-ref="eSortIndicator"></ag-sort-indicator> 20 </div> 21 </div>`,pr=class extends O{constructor(){super(...arguments),this.eFilter=P,this.eFilterButton=P,this.eSortIndicator=P,this.eMenu=P,this.eLabel=P,this.eText=P,this.eSortOrder=P,this.eSortAsc=P,this.eSortDesc=P,this.eSortMixed=P,this.eSortNone=P,this.lastMovingChanged=0}wireBeans(e){this.sortController=e.sortController,this.menuService=e.menuService,this.funcColsService=e.funcColsService}destroy(){super.destroy()}refresh(e){const t=this.params;return this.params=e,this.workOutTemplate()!=this.currentTemplate||this.workOutShowMenu()!=this.currentShowMenu||this.workOutSort()!=this.currentSort||this.shouldSuppressMenuHide()!=this.currentSuppressMenuHide||t.enableFilterButton!=e.enableFilterButton||t.enableFilterIcon!=e.enableFilterIcon?!1:(this.setDisplayName(e),!0)}workOutTemplate(){let e=this.params.template??Ch;return e=e&&e.trim?e.trim():e,e}init(e){this.params=e,this.currentTemplate=this.workOutTemplate(),this.setTemplate(this.currentTemplate,[Ga]),this.setupTap(),this.setMenu(),this.setupSort(),this.setupFilterIcon(),this.setupFilterButton(),this.setDisplayName(e)}setDisplayName(e){if(this.currentDisplayName!=e.displayName){this.currentDisplayName=e.displayName;const t=Ce(this.currentDisplayName,!0);this.eText&&(this.eText.textContent=t)}}addInIcon(e,t,s){if(t==null)return;const i=N(e,this.gos,s);i&&t.appendChild(i)}setupTap(){const{gos:e}=this;if(e.get("suppressTouch"))return;const t=new wt(this.getGui(),!0),s=this.shouldSuppressMenuHide(),i=s&&E(this.eMenu),o=i?new wt(this.eMenu,!0):t;if(this.params.enableMenu){const r=i?"tap":"longTap",n=l=>this.params.showColumnMenuAfterMouseClick(l.touchStart);this.addManagedListeners(o,{[r]:n})}if(this.params.enableSorting){const r=n=>{var a,d;const l=n.touchStart.target;s&&((a=this.eMenu)!=null&&a.contains(l)||(d=this.eFilterButton)!=null&&d.contains(l))||this.sortController.progressSort(this.params.column,!1,"uiColumnSorted")};this.addManagedListeners(t,{tap:r})}if(this.params.enableFilterButton){const r=new wt(this.eFilterButton,!0);this.addManagedListeners(r,{tap:()=>this.params.showFilter(this.eFilterButton)}),this.addDestroyFunc(()=>r.destroy())}this.addDestroyFunc(()=>t.destroy()),i&&this.addDestroyFunc(()=>o.destroy())}workOutShowMenu(){return this.params.enableMenu&&this.menuService.isHeaderMenuButtonEnabled()}shouldSuppressMenuHide(){return this.menuService.isHeaderMenuButtonAlwaysShowEnabled()}setMenu(){if(!this.eMenu)return;if(this.currentShowMenu=this.workOutShowMenu(),!this.currentShowMenu){Qe(this.eMenu),this.eMenu=void 0;return}const e=this.menuService.isLegacyMenuEnabled();this.addInIcon(e?"menu":"menuAlt",this.eMenu,this.params.column),this.eMenu.classList.toggle("ag-header-menu-icon",!e),this.currentSuppressMenuHide=this.shouldSuppressMenuHide(),this.addManagedElementListeners(this.eMenu,{click:()=>this.params.showColumnMenu(this.eMenu)}),this.eMenu.classList.toggle("ag-header-menu-always-show",this.currentSuppressMenuHide)}onMenuKeyboardShortcut(e){const t=this.params.column,s=this.menuService.isLegacyMenuEnabled();if(e&&!s){if(this.menuService.isFilterMenuInHeaderEnabled(t))return this.params.showFilter(this.eFilterButton??this.eMenu??this.getGui()),!0}else if(this.params.enableMenu)return this.params.showColumnMenu(this.eMenu??this.eFilterButton??this.getGui()),!0;return!1}workOutSort(){return this.params.enableSorting}setupSort(){if(this.currentSort=this.params.enableSorting,this.eSortIndicator||(this.eSortIndicator=this.createBean(new Qr(!0)),this.eSortIndicator.attachCustomElements(this.eSortOrder,this.eSortAsc,this.eSortDe
21sc,this.eSortMixed,this.eSortNone)),this.eSortIndicator.setupSort(this.params.column),!this.currentSort)return;this.addManagedListeners(this.params.column,{movingChanged:()=>{this.lastMovingChanged=new Date().getTime()}}),this.eLabel&&this.addManagedElementListeners(this.eLabel,{click:t=>{const s=this.params.column.isMoving(),o=new Date().getTime()-this.lastMovingChanged<50;if(!(s||o)){const l=this.gos.get("multiSortKey")==="ctrl"?t.ctrlKey||t.metaKey:t.shiftKey;this.params.progressSort(l)}}});const e=()=>{const t=this.params.column.getSort();if(this.addOrRemoveCssClass("ag-header-cell-sorted-asc",t==="asc"),this.addOrRemoveCssClass("ag-header-cell-sorted-desc",t==="desc"),this.addOrRemoveCssClass("ag-header-cell-sorted-none",!t),this.params.column.getColDef().showRowGroup){const s=this.funcColsService.getSourceColumnsForGroupColumn(this.params.column),o=!(s==null?void 0:s.every(r=>this.params.column.getSort()==r.getSort()));this.addOrRemoveCssClass("ag-header-cell-sorted-mixed",o)}};this.addManagedEventListeners({sortChanged:e,columnRowGroupChanged:e})}setupFilterIcon(){this.eFilter&&this.configureFilter(this.params.enableFilterIcon,this.eFilter,this.onFilterChangedIcon.bind(this))}setupFilterButton(){if(!this.eFilterButton)return;this.configureFilter(this.params.enableFilterButton,this.eFilterButton,this.onFilterChangedButton.bind(this))?this.addManagedElementListeners(this.eFilterButton,{click:()=>this.params.showFilter(this.eFilterButton)}):this.eFilterButton=void 0}configureFilter(e,t,s){if(!e)return Qe(t),!1;const i=this.params.column;return this.addInIcon("filter",t,i),this.addManagedListeners(i,{filterChanged:s}),s(),!0}onFilterChangedIcon(){const e=this.params.column.isFilterActive();H(this.eFilter,e,{skipAriaHidden:!0})}onFilterChangedButton(){const e=this.params.column.isFilterActive();this.eFilterButton.classList.toggle("ag-filter-active",e)}getAnchorElementForMenu(e){return e?this.eFilterButton??this.eMenu??this.getGui():this.eMenu??this.eFilterButton??this.getGui()}},vh=class extends O{constructor(){super(`<div class="ag-header-group-cell-label" role="presentation"> 22 <span data-ref="agLabel" class="ag-header-group-text" role="presentation"></span> 23 <span data-ref="agOpened" class="ag-header-icon ag-header-expand-icon ag-header-expand-icon-expanded"></span> 24 <span data-ref="agClosed" class="ag-header-icon ag-header-expand-icon ag-header-expand-icon-collapsed"></span> 25 </div>`),this.agOpened=P,this.agClosed=P,this.agLabel=P}wireBeans(e){this.columnModel=e.columnModel}destroy(){super.destroy()}init(e){this.params=e,this.checkWarnings(),this.setupLabel(),this.addGroupExpandIcon(),this.setupExpandIcons()}checkWarnings(){this.params.template&&R("A template was provided for Header Group Comp - templates are only supported for Header Comps (not groups)")}setupExpandIcons(){this.addInIcon("columnGroupOpened",this.agOpened),this.addInIcon("columnGroupClosed",this.agClosed);const e=o=>{if(ht(o))return;const r=!this.params.columnGroup.isExpanded();this.columnModel.setColumnGroupOpened(this.params.columnGroup.getProvidedColumnGroup(),r,"uiColumnExpanded")};this.addTouchAndClickListeners(this.agClosed,e),this.addTouchAndClickListeners(this.agOpened,e);const t=o=>{Rt(o)};this.addManagedElementListeners(this.agClosed,{dblclick:t}),this.addManagedElementListeners(this.agOpened,{dblclick:t}),this.addManagedElementListeners(this.getGui(),{dblclick:e}),this.updateIconVisibility();const s=this.params.columnGroup.getProvidedColumnGroup(),i=this.updateIconVisibility.bind(this);this.addManagedListeners(s,{expandedChanged:i,expandableChanged:i})}addTouchAndClickListeners(e,t){const s=new wt(e,!0);this.addManagedListeners(s,{tap:t}),this.addDestroyFunc(()=>s.destroy()),this.addManagedElementListeners(e,{click:t})}updateIconVisibility(){if(this.params.columnGroup.isExpandable()){const t=this.params.columnGroup.isExpanded();H(this.agOpened,t),H(this.agClosed,!t)}else H(this.agOpened,!1),H(this.agClosed,!1)}addInIcon(e,t){const s=N(e,this.gos,null);s&&t.appendChild(s)}addGroupExpandIcon(){if(!this.params.columnGroup.isExpandable()){H(this.agOpened,!1),H(this.agClosed,!1);return}}setupLabel(){var s;const{displayName:e,columnGroup:t}=this.params;if(E(e)){const i=Ce(e,!0);this.agLabel.textContent=i}this.addOrRemoveCssClass("ag-sticky-label",!((s=t.getColGroupDef())!=null&&s.suppressStickyLabel))}},Sh="â",wh="â",yh=class extends O{constructor(){super(),this.refreshCount=0;const e=document.createElement("span"),t=document.createElement("span");t.setAttribute("class","ag-value-change-delta");const s=document.createElement("span");s.setAttribute("class","ag-value-change-value"),e.appendChild(t),e.appendChild(s),this.setTemplateFromElement(e)}wireBeans(e){this.filterManager=e.filterManager}init(e){this.eValue=this.queryForHtmlElement(".ag-value-change-value"),this.eDelta=this.queryForHtmlElement(".ag-value-change-delta"),this.refresh(e,!0)}showDelta(e,t){const s=Math.abs(t),i=e.formatValue(s),o=E(i)?i:s,r=t>=0;r?this.eDelta.textContent=Sh+o:this.eDelta.textContent=wh+o,this.eDelta.classList.toggle("ag-value-change-delta-up",r),this.eDelta.classList.toggle("ag-value-change-delta-down",!r)}setTimerToRemoveDelta(){this.refreshCount++;const e=this.refreshCount;this.getFrameworkOverrides().wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.hideDeltaValue()},2e3)})}hideDeltaValue(){this.eValue.classList.remove("ag-value-change-value-highlight"),de(this.eDelta)}refresh(e,t=!1){var i;const s=e.value;if(s===this.lastValue||(E(e.valueFormatted)?this.eValue.textContent=e.valueFormatted:E(e.value)?this.eValue.textContent=s:de(this.eValue),(i=this.filterManager)!=null&&i.isSuppressFlashingCellsBecauseFiltering()))return!1;if(typeof s=="number"&&typeof this.lastValue=="number"){const o=s-this.lastValue;this.showDelta(e,o)}return this.lastValue&&this.eValue.classList.add("ag-value-change-value-highlight"),t||this.setTimerToRemoveDelta(),this.lastValue=s,!0}},Rh=class extends O{constructor(){super(),this.refreshCount=0;const e=document.createElement("span"),t=document.createElement("span");t.setAttribute("class","ag-value-slide-current"),e.appendChild(t),this.setTemplateFromElement(e),this.eCurrent=this.queryForHtmlElement(".ag-value-slide-current")}wireBeans(e){this.filterManager=e.filterManager}init(e){this.refresh(e,!0)}addSlideAnimation(){this.refreshCount++;const e=this.refreshCount;this.ePrevious&&this.getGui().removeChild(this.ePrevious);const t=document.createElement("span");t.setAttribute("class","ag-value-slide-previous ag-value-slide-out"),this.ePrevious=t,this.ePrevious.textContent=this.eCurrent.textContent,this.getGui().insertBefore(this.ePrevious,this.eCurrent),this.getFrameworkOverrides().wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.ePrevious.classList.add("ag-value-slide-out-end")},50),window.setTimeout(()=>{e===this.refreshCount&&(this.getGui().removeChild(this.ePrevious),this.ePrevious=null)},3e3)})}refresh(e,t=!1){var i;let s=e.value;return z(s)&&(s=""),s===this.lastValue||(i=this.filterManager)!=null&&i.isSuppressFlashingCellsBecauseFiltering()?!1:(t||this.addSlideAnimation(),this.lastValue=s,E(e.valueFormatted)?this.eCurrent.textContent=e.valueFormatted:E(e.value)?this.eCurrent.textContent=s:de(this.eCurrent),!0)}},S=class{};S.BACKSPACE="Backspace";S.TAB="Tab";S.ENTER="Enter";S.ESCAPE="Escape";S.SPACE=" ";S.LEFT="ArrowLeft";S.UP="ArrowUp";S.RIGHT="ArrowRight";S.DOWN="ArrowDown";S.DELETE="Delete";S.F2="F2";S.PAGE_UP="PageUp";S.PAGE_DOWN="PageDown";S.PAGE_HOME="Home";S.PAGE_END="End";S.A="KeyA";S.C="KeyC";S.D="KeyD";S.V="KeyV";S.X="KeyX";S.Y="KeyY";S.Z="KeyZ";var bh=class extends O{constructor(e,t,s){super(t,s),this.labelSeparator="",this.labelAlignment="left",this.disabled=!1,this.label="",this.config=e||{}}postConstruct(){this.addCssClass("ag-labeled"),this.eLabel.classList.add("ag-label");const{labelSeparator:e,label:t,labelWidth:s,labelAlignment:i,disabled:o}=this.config;o!=null&&this.setDisabled(o),e!=null&&this.setLabelSeparator(e),t!=null&&this.setLabel(t),s!=null&&this.setLabelWidth(s),this.setLabelAlignment(i||this.labelAlignment),this.refreshLabel()}refreshLabel(){de(this.eLabel),typeof this.label=="string"?this.eLabel.innerText=this.label+this.labelSeparator:this.label&&this.eLabel.appendChild(this.label),this.label===""?(H(this.eLabel,!1),he(this.eLabel,"presentation")):(H(this.eLabel,!0),he(this.eLabel,null))}setLabelSeparator(e){return this.labelSeparator===e?this:(this.labelSeparator=e,this.label!=null&&this.refreshLabel(),this)}getLabelId(){return this.eLabel.id=this.eLabel.id||`ag-${this.getCompId()}-label`,this.eLabel.id}getLabel(){return this.label}setLabel(e){return this.label===e?this:(this.label=e,this.refreshLabel(),this)}setLabelAlignment(e){const s=this.getGui().classList;return s.toggle("ag-label-align-left",e==="left"),s.toggle("ag-label-align-right",e==="right"),s.toggle("ag-label-align-top",e==="top"),this}setLabelEllipsis(e){return this.eLabel.classList.toggle("ag-label-ellipsis",e),this}setLabelWidth(e){return this.label==null?this:(to(this.eLabel,e),this)}setDisabled(e){e=!!e;const t=this.getGui();return vi(t,e),t.classList.toggle("ag-disabled",e),this.disabled=e,this}isDisabled(){return!!this.disabled}},ka=class extends bh{constructor(e,t,s,i){super(e,t,s),this.className=i}
25postConstruct(){super.postConstruct();const{width:e,value:t,onValueChange:s}=this.config;e!=null&&this.setWidth(e),t!=null&&this.setValue(t),s!=null&&this.onValueChange(s),this.className&&this.addCssClass(this.className),this.refreshAriaLabelledBy()}setLabel(e){return super.setLabel(e),this.refreshAriaLabelledBy(),this}refreshAriaLabelledBy(){const e=this.getAriaElement(),t=this.getLabelId(),s=this.getLabel();s==null||s==""||$u(e)!==null?Gs(e,""):Gs(e,t??"")}setAriaLabel(e){return ze(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 pt(this.getGui(),e),this}getPreviousValue(){return this.previousValue}getValue(){return this.value}setValue(e,t){return this.value===e?this:(this.previousValue=this.value,this.value=e,t||this.dispatchLocalEvent({type:"fieldValueChanged"}),this)}},ts=class extends ka{constructor(e,t,s="text",i="input"){super(e,(e==null?void 0:e.template)??` 26 <div role="presentation"> 27 <div data-ref="eLabel" class="ag-input-field-label"></div> 28 <div data-ref="eWrapper" class="ag-wrapper ag-input-wrapper" role="presentation"> 29 <${i} data-ref="eInput" class="ag-input-field-input"></${i}> 30 </div> 31 </div>`,[],t),this.inputType=s,this.displayFieldTag=i,this.eLabel=P,this.eWrapper=P,this.eInput=P}postConstruct(){super.postConstruct(),this.setInputType(),this.eLabel.classList.add(`${this.className}-label`),this.eWrapper.classList.add(`${this.className}-input-wrapper`),this.eInput.classList.add(`${this.className}-input`),this.addCssClass("ag-input-field"),this.eInput.id=this.eInput.id||`ag-${this.getCompId()}-input`;const{inputName:e,inputWidth:t}=this.config;e!=null&&this.setInputName(e),t!=null&&this.setInputWidth(t),this.addInputListeners(),this.activateTabIndex([this.eInput])}addInputListeners(){this.addManagedElementListeners(this.eInput,{input
31:e=>this.setValue(e.target.value)})}setInputType(){this.displayFieldTag==="input"&&this.eInput.setAttribute("type",this.inputType)}getInputElement(){return this.eInput}setInputWidth(e){return to(this.eWrapper,e),this}setInputName(e){return this.getInputElement().setAttribute("name",e),this}getFocusableElement(){return this.eInput}setMaxLength(e){const t=this.eInput;return t.maxLength=e,this}setInputPlaceholder(e){return nt(this.eInput,"placeholder",e),this}setInputAriaLabel(e){return ze(this.eInput,e),this.refreshAriaLabelledBy(),this}setDisabled(e){return vi(this.eInput,e),super.setDisabled(e)}setAutoComplete(e){if(e===!0)nt(this.eInput,"autocomplete",null);else{const t=typeof e=="string"?e:"off";nt(this.eInput,"autocomplete",t)}return this}},vo=class extends ts{constructor(e,t="ag-checkbox",s="checkbox"){super(e,t,s),this.labelAlignment="right",this.selected=!1,this.readOnly=!1,this.passive=!1}postConstruct(){super.postConstruct();const{readOnly:e,passive:t}=this.config;typeof e=="boolean"&&this.setReadOnly(e),typeof t=="boolean"&&this.setPassive(t)}addInputListeners(){this.addManagedElementListeners(this.eInput,{click:this.onCheckboxClick.bind(this)}),this.addManagedElementListeners(this.eLabel,{click:this.toggle.bind(this)})}getNextValue(){return this.selected===void 0?!0:!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){const t=this.getInputElement();return t.name=e,this}isSelected(){return this.selected}setSelected(e,t){this.isSelected()!==e&&(this.previousValue=this.isSelected(),e=this.selected=typeof e=="boolean"?e:void 0,this.eInput.checked=e,this.eInput.indeterminate=e===void 0,t||this.dispatchChange(this.selected,this.previousValue))}dispatchChange(e,t,s){this.dispatchLocalEvent({type:"fieldValueChanged",selected:e,previousValue:t,event:s});const i=this.getInputElement();this.eventService.dispatchEvent({type:"checkboxChanged",id:i.id,name:i.name,selected:e,previousValue:t})}onCheckboxClick(e){if(this.passive||this.eInput.disabled)return;const t=this.isSelected(),s=this.selected=e.target.checked;this.refreshSelectedClass(s),this.dispatchChange(s,t,e)}refreshSelectedClass(e){this.eWrapper.classList.toggle("ag-checked",e===!0),this.eWrapper.classList.toggle("ag-indeterminate",e==null)}},hs={selector:"AG-CHECKBOX",component:vo},Fh=class extends O{constructor(){super(` 32 <div class="ag-cell-wrapper ag-checkbox-cell" role="presentation"> 33 <ag-checkbox role="presentation" data-ref="eCheckbox"></ag-checkbox> 34 </div>`,[hs]),this.eCheckbox=P}init(e){this.refresh(e);const t=this.eCheckbox.getInputElement();t.setAttribute("tabindex","-1"),da(t,"polite"),this.addManagedListeners(t,{click:s=>{if(Rt(s),this.eCheckbox.isDisabled())return;const i=this.eCheckbox.getValue();this.onCheckboxChanged(i)},dblclick:s=>
34{Rt(s)}}),this.addManagedElementListeners(this.params.eGridCell,{keydown:s=>{if(s.key===S.SPACE&&!this.eCheckbox.isDisabled()){this.params.eGridCell===Q(this.gos)&&this.eCheckbox.toggle();const i=this.eCheckbox.getValue();this.onCheckboxChanged(i),s.preventDefault()}}})}refresh(e){return this.params=e,this.updateCheckbox(e),!0}updateCheckbox(e){var l;let t,s=!0;if(e.node.group&&e.column)if(typeof e.value=="boolean")t=e.value;else{const a=e.column.getColId();a.startsWith(as)?t=e.value==null||e.value===""?void 0:e.value==="true":e.node.aggData&&e.node.aggData[a]!==void 0?t=e.value??void 0:s=!1}else t=e.value??void 0;if(!s){this.eCheckbox.setDisplayed(!1);return}this.eCheckbox.setValue(t);const i=e.disabled!=null?e.disabled:!((l=e.column)!=null&&l.isCellEditable(e.node));this.eCheckbox.setDisabled(i);const o=this.localeService.getLocaleTextFunc(),r=Kr(o,t),n=i?r:`${o("ariaToggleCellValue","Press SPACE to toggle cell value")} (${r})`;this.eCheckbox.setInputAriaLabel(n)}onCheckboxChanged(e){const{column:t,node:s,value:i}=this.params;this.eventService.dispatchEvent({type:"cellEditingStarted",column:t,colDef:t==null?void 0:t.getColDef(),data:s.data,node:s,rowIndex:s.rowIndex,rowPinned:s.rowPinned,value:i});const o=this.params.node.setDataValue(this.params.column,e,"edit");this.eventService.dispatchEvent({type:"cellEditingStopped",column:t,colDef:t==null?void 0:t.getColDef(),data:s.data,node:s,rowIndex:s.rowIndex,rowPinned:s.rowPinned,value:i,oldValue:i,newValue:e,valueChanged:o}),o||this.updateCheckbox(this.params)}},Ph=class extends O{constructor(){super(`<div class="ag-loading"> 35 <span class="ag-loading-icon" data-ref="eLoadingIcon"></span> 36 <span class="ag-loading-text" data-ref="eLoadingText"></span> 37 </div>`),this.eLoadingIcon=P,this.eLoadingText=P}init(e){e.node.failedLoad?this.setupFailed():this.setupLoading()}setupFailed(){const e=this.localeService.getLocaleTextFunc();this.eLoadingText.innerText=e("loadingError","ERR")}setupLoading(){const e=N("groupLoading",this.gos,null);e&&this.eLoadingIcon.appendChild(e);const t=this.localeService.getLocaleTextFunc();this.eLoadingText.innerText=t("loadingOoo","Loading")}refresh(e){return!1}destroy(){super.destroy()}},Eh=class extends O{constructor(){super('<div class="ag-skeleton-container"></div>')}init(e){const t=`ag-cell-skeleton-renderer-${this.getCompId()}`;this.getGui().setAttribute("id",t),this.addDestroyFunc(()=>Gs(e.eParentOfValue)),Gs(e.eParentOfValue,t),e.node.failedLoad?this.setupFailed():this.setupLoading(e)}setupFailed(){const e=this.localeService.getLocaleTextFunc();this.getGui().innerText=e("loadingError","ERR");const t=e("ariaSkeletonCellLoadingFailed","Row failed to load");ze(this.getGui(),t)}setupLoading(e){const s=le(this.gos).createElement("div");s.classList.add("ag-skeleton-effect");const i=e.node.rowIndex;if(i!=null){const n=75+25*(i%2===0?Math.sin(i):Math.cos(i));s.style.width=`${n}%`}this.getGui().appendChild(s);const r=this.localeService.getLocaleTextFunc()("ariaSkeletonCellLoading","Row data is loading");ze(this.getGui(),r)}refresh(e){return!1}destroy(){super.destroy()}},Oa=class extends O{constructor(){super()}destroy(){super.destroy()}},Mh=class extends Oa{init(){var t;const e=Oe((t=this.gos.get("overlayLoadingTemplate"))==null?void 0:t.trim());if(this.setTemplate(e??'<span aria-live="polite" aria-atomic="true" class="ag-overlay-loading-center"></span>'),!e){const s=this.localeService.getLocaleTextFunc();setTimeout(()=>{this.getGui().textContent=s("loadingOoo","Loading...")})}}},Dh=class extends Oa{init(){var t;const e=Oe((t=this.gos.get("overlayNoRowsTemplate"))==null?void 0:t.trim());if(this.setTemplate(e??'<span class="ag-overlay-no-rows-center"></span>'),!e){const s=this.localeService.getLocaleTextFunc();setTimeout(()=>{this.getGui().textContent=s("noRowsToShow","No Rows To Show")})}}},Bs=class extends O{isPopup(){return!0}setParentComponent(e){e.addCssClass("ag-has-popup"),super.setParentComponent(e)}destroy(){const e=this.parentComponent;e&&e.isAlive()&&e.getGui().classList.remove("ag-has-popup"),super.destroy()}},xh=class extends Bs{constructor(){super('<div class="ag-tooltip"></div>')}init(e){const{value:t}=e;this.getGui().textContent=Ce(t,!0)}};function Na(e){const{inputValue:t,allSuggestions:s,hideIrrelevant:i,filterByPercentageOfBestMatch:o,addSequentialWeight:r}=e;
37let n=s.map((d,c)=>({value:d,relevance:Th(t.toLowerCase(),d.toLocaleLowerCase(),r),idx:c}));if(n.sort((d,c)=>c.relevance-d.relevance),i&&(n=n.filter(d=>d.relevance!==0)),n.length>0&&o&&o>0){const c=n[0].relevance*o;n=n.filter(u=>c-u.relevance<0)}const l=[],a=[];for(const d of n)l.push(d.value),a.push(d.idx);return{values:l,indices:a}}function Ah(e){const t=[],s=e.length;for(let i=1;i<=s;i++)for(let o=0;o<=s-i;o++){const r=o+i-1;t.push(e.slice(o,r+1))}return t}function Th(e,t,s=!1){const i=e.replace(/\s/g,""),o=t.replace(/\s/g,""),r=i.length,n=o.length,l=new Array(r+1).fill(null).map(()=>new Array(n+1).fill(0));for(let u=0;u<=r;u+=1)l[u][0]=u;for(let u=0;u<=n;u+=1)l[0][u]=u;for(let u=1;u<=r;u++)for(let h=1;h<=n;h++)i[u-1]===o[h-1]?l[u][h]=l[u-1][h-1]:l[u][h]=1+Math.min(l[u][h-1],Math.min(l[u-1][h],l[u-1][h-1]));const a=l[r][n];let c=Math.max(r,n)-a;if(s){const u=Ah(i);for(let h=0;h<u.length;h++){const p=u[h];o.indexOf(p)!==-1&&(c+=1,c*=p.length)}}return c}var Ih=class extends b{constructor(){super(...arguments),this.beanName="userComponentRegistry",this.agGridDefaults={agDragAndDropImage:fh,agColumnHeader:pr,agColumnGroupHeader:vh,agSortIndicator:Qr,agAnimateShowChangeCellRenderer:yh,agAnimateSlideCellRenderer:Rh,agLoadingCellRenderer:Ph,agSkeletonCellRenderer:Eh,agCheckboxCellRenderer:Fh,agLoadingOverlay:Mh,agNoRowsOverlay:Dh,agTooltipComponent:xh},this.agGridDefaultParams={},this.enterpriseAgDefaultCompsModule={agSetColumnFilter:"@ag-grid-enterprise/set-filter",agSetColumnFloatingFilter:"@ag-grid-enterprise/set-filter",agMultiColumnFilter:"@ag-grid-enterprise/multi-filter",agMultiColumnFloatingFilter:"@ag-grid-enterprise/multi-filter",agGroupColumnFilter:"@ag-grid-enterprise/row-grouping",agGroupColumnFloatingFilter:"@ag-grid-enterprise/row-grouping",agGroupCellRenderer:"@ag-grid-enterprise/row-grouping",agGroupRowRenderer:"@ag-grid-enterprise/row-grouping",agRichSelect:"@ag-grid-enterprise/rich-select",agRichSelectCellEditor:"@ag-grid-enterprise/rich-select",agDetailCellRenderer:"@ag-grid-enterprise/master-detail",agSparklineCellRenderer:"@ag-grid-enterprise/sparklines"},this.jsComps={}}postConstruct(){const e=this.gos.get("components");e!=null&&Pe(e,(t,s)=>this.registerJsComponent(t,s))}registerDefaultComponent(e,t,s){this.agGridDefaults[e]=t,s&&(this.agGridDefaultParams[e]=s)}registerJsComponent(e,t){this.jsComps[e]=t}retrieve(e,t){const s=(l,a,d)=>({componentFromFramework:a,component:l,params:d}),i=this.getFrameworkOverrides().frameworkComponent(t,this.gos.get("components"));if(i!=null)return s(i,!0);const o=this.jsComps[t];if(o){const l=this.getFrameworkOverrides().isFrameworkComponent(o);return s(o,l)}const r=this.agGridDefaults[t];if(r)return s(r,!1,this.agGridDefaultParams[t]);const n=this.enterpriseAgDefaultCompsModule[t];return n?this.gos.assertModuleRegistered(n,`AG Grid '${e}' component: ${t}`):co(()=>{this.warnAboutMissingComponent(e,t)},"MissingComp"+t),null}warnAboutMissingComponent(e,t){const s=[...Object.keys(this.agGridDefaults).filter(o=>!["agCellEditor","agGroupRowRenderer","agSortIndicator"].includes(o)),...Object.keys(this.jsComps)],i=Na({inputValue:t,allSuggestions:s,hideIrrelevant:!0,filterByPercentageOfBestMatch:.8}).values;R(`Could not find '${t}' component. It was configured as "${e}: '${t}'" but it wasn't found in the list of registered components.`),i.length>0&&R(` Did you mean: [${i.slice(0,3)}]?`),R(`If using a custom component check it has been registered as described in: ${this.getFrameworkOverrides().getDocLink("components/")}`)}},K=class Xs{constructor(t){this.status=0,this.resolution=null,this.waiters=[],t(s=>this.onDone(s),s=>this.onReject(s))}static all(t){return t.length?new Xs(s=>{let i=t.length;const o=new Array(i);t.forEach((r,n)=>{r.then(l=>{o[n]=l,i--,i===0&&s(o)})})}):Xs.resolve()}static resolve(t=null){return new Xs(s=>s(t))}then(t){return new Xs(s=>{this.status===1?s(t(this.resolution)):this.waiters.push(i=>s(t(i)))})}onDone(t){this.status=1,this.resolution=t,this.waiters.forEach(s=>s(t))}onReject(t){}},Lh={propertyName:"dateComponent",cellRenderer:!1},Gh={propertyName:"dragAndDropImageComponent",cellRenderer:!1},kh={propertyName:"headerComponent",cellRenderer:!1},Oh={propertyName:"headerGroupComponent",cellRenderer:!1},qn={propertyName:"cellRenderer",cellRenderer:!0},Nh={propertyName:"cellRenderer",cellRenderer:!1},Bh={propertyName:"loadingCellRenderer",cellRenderer:!0},Vh={propertyName:"cellEditor",cellRenderer:!1},Yn={propertyName:"innerRenderer",cellRenderer:!0},Hh={propertyName:"loadingOverlayComponent",cellRenderer:!1},Wh={propertyName:"noRowsOverlayComponent",cellRenderer:!1},zh={propertyName:"tooltipComponent",cellRenderer:!1},Xr={propertyName:"filter",cellRenderer:!1},Uh={propertyName:"floatingFilterComponent",cellRenderer:!1},_h={propertyName:"toolPanel",cellRenderer:!1},Kh={propertyName:"statusPanel",cellRenderer:!1},$h={propertyName:"fullWidthCellRenderer",cellRenderer:!0},jh={propertyName:"loadingCellRenderer",cellRenderer:!0},qh={propertyName:"groupRowRenderer",cellRenderer:!0},Yh={propertyName:"detailCellRenderer",cellRenderer:!0},Qh={propertyName:"menuItem",cellRenderer:!1},Ba=class Va extends b{constructor(){super(...arguments),this.beanName="userComponentFactory"}wireBeans(t){this.agComponentUtils=t.agComponentUtils,this.componentMetadataProvider=t.componentMetadataProvider,this.userComponentRegistry=t.userComponentRegistry,this.frameworkComponentWrapper=t.frameworkComponentWrapper,this.gridOptions=t.gridOptions}
37getDragAndDropImageCompDetails(t){return this.getCompDetails(this.gridOptions,Gh,"agDragAndDropImage",t,!0)}getHeaderCompDetails(t,s){return this.getCompDetails(t,kh,"agColumnHeader",s)}getHeaderGroupCompDetails(t){const s=t.columnGroup.getColGroupDef();return this.getCompDetails(s,Oh,"agColumnGroupHeader",t)}getFullWidthCellRendererDetails(t){return this.getCompDetails(this.gridOptions,$h,null,t,!0)}getFullWidthLoadingCellRendererDetails(t){return this.getCompDetails(this.gridOptions,jh,"agLoadingCellRenderer",t,!0)}getFullWidthGroupCellRendererDetails(t){return this.getCompDetails(this.gridOptions,qh,"agGroupRowRenderer",t,!0)}getFullWidthDetailCellRendererDetails(t){return this.getCompDetails(this.gridOptions,Yh,"agDetailCellRenderer",t,!0)}getInnerRendererDetails(t,s){return this.getCompDetails(t,Yn,null,s)}getFullWidthGroupRowInnerCellRenderer(t,s){return this.getCompDetails(t,Yn,null,s)}getCellRendererDetails(t,s){return this.getCompDetails(t,qn,null,s)}getEditorRendererDetails(t,s){return this.getCompDetails(t,Nh,null,s)}getLoadingCellRendererDetails(t,s){return this.getCompDetails(t,Bh,"agSkeletonCellRenderer",s,!0)}getCellEditorDetails(t,s){return this.getCompDetails(t,Vh,"agCellEditor",s,!0)}getFilterDetails(t,s,i){return this.getCompDetails(t,Xr,i,s,!0)}getDateCompDetails(t){return this.getCompDetails(this.gridOptions,Lh,"agDateInput",t,!0)}getLoadingOverlayCompDetails(t){return this.getCompDetails(this.gridOptions,Hh,"agLoadingOverlay",t,!0)}getNoRowsOverlayCompDetails(t){return this.getCompDetails(this.gridOptions,Wh,"agNoRowsOverlay",t,!0)}getTooltipCompDetails(t){return this.getCompDetails(t.colDef,zh,"agTooltipComponent",t,!0)}getSetFilterCellRendererDetails(t,s){return this.getCompDetails(t,qn,null,s)}getFloatingFilterCompDetails(t,s,i){return this.getCompDetails(t,Uh,i,s)}getToolPanelCompDetails(t,s){return this.getCompDetails(t,_h,null,s,!0)}getStatusPanelCompDetails(t,s){return this.getCompDetails(t,Kh,null,s,!0)}getMenuItemCompDetails(t,s){return this.getCompDetails(t,Qh,"agMenuItem",s,!0)}getCompDetails(t,s,i,o,r=!1){const{propertyName:n,cellRenderer:l}=s;let{compName:a,jsComp:d,fwComp:c,paramsFromSelector:u,popupFromSelector:h,popupPositionFromSelector:p}=Va.getCompKeys(this.frameworkOverrides,t,s,o),g;const f=w=>{const F=this.userComponentRegistry.retrieve(n,w);F&&(d=F.componentFromFramework?void 0:F.component,c=F.componentFromFramework?F.component:void 0,g=F.params)};if(a!=null&&f(a),d==null&&c==null&&i!=null&&f(i),d&&l&&!this.agComponentUtils.doesImplementIComponent(d)&&(d=this.agComponentUtils.adaptFunction(n,d)),!d&&!c){r&&_(`Could not find component ${a}, did you forget to configure this component?`);return}
37const m=this.mergeParamsWithApplicationProvidedParams(t,s,o,u,g),v=d==null,y=d||c;return{componentFromFramework:v,componentClass:y,params:m,type:s,popupFromSelector:h,popupPositionFromSelector:p,newAgStackInstance:()=>this.newAgStackInstance(y,v,m,s)}}static getCompKeys(t,s,i,o){const{propertyName:r}=i;let n,l,a,d,c,u;if(s){const h=s,p=h[r+"Selector"],g=p?p(o):null,f=m=>{typeof m=="string"?n=m:m!=null&&m!==!0&&(t.isFrameworkComponent(m)?a=m:l=m)};g?(f(g.component),d=g.params,c=g.popup,u=g.popupPosition):f(h[r])}return{compName:n,jsComp:l,fwComp:a,paramsFromSelector:d,popupFromSelector:c,popupPositionFromSelector:u}}newAgStackInstance(t,s,i,o){const r=o.propertyName,n=!s;let l;if(n)l=new t;else{const d=this.componentMetadataProvider.retrieve(r);l=this.frameworkComponentWrapper.wrap(t,d.mandatoryMethodList,d.optionalMethodList,o)}const a=this.initComponent(l,i);return a==null?K.resolve(l):a.then(()=>l)}mergeParamsWithApplicationProvidedParams(t,s,i,o=null,r){const n=this.gos.getGridCommonParams();Ee(n,i),r&&Ee(n,r);const l=t,a=l&&l[s.propertyName+"Params"];if(typeof a=="function"){const d=a(i);Ee(n,d)}else typeof a=="object"&&Ee(n,a);return Ee(n,o),n}initComponent(t,s){if(this.createBean(t),t.init!=null)return t.init(s)}};function Es(e){const t=e;return t!=null&&t.getFrameworkComponentInstance!=null?t.getFrameworkComponentInstance():e}var So=class Z{static register(t){Z.__register(t,!0,void 0)}static registerModules(t){Z.__registerModules(t,!0,void 0)}static __register(t,s,i){Z.runVersionChecks(t),i!==void 0?(Z.areGridScopedModules=!0,Z.gridModulesMap[i]===void 0&&(Z.gridModulesMap[i]={}),Z.gridModulesMap[i][t.moduleName]=t):Z.globalModulesMap[t.moduleName]=t,Z.setModuleBased(s)}static __unRegisterGridModules(t){delete Z.gridModulesMap[t]}static __registerModules(t,s,i){Z.setModuleBased(s),t&&t.forEach(o=>Z.__register(o,s,i))}static isValidModuleVersion(t){const[s,i]=t.version.split(".")||[],[o,r]=Z.currentModuleVersion.split(".")||[];return s===o&&i===r}static runVersionChecks(t){Z.currentModuleVersion||(Z.currentModuleVersion=t.version);const s=i=>`You are using incompatible versions of AG Grid modules. Major and minor versions should always match across modules. ${i} Please update all modules to the same version.`;if(t.version?Z.isValidModuleVersion(t)||_(s(`'${t.moduleName}' is version ${t.version} but the other modules are version ${Z.currentModuleVersion}.`)):_(s(`'${t.moduleName}' is incompatible.`)),t.validate){const i=t.validate();i.isValid||_(`${i.message}`)}}static setModuleBased(t){Z.moduleBased===void 0?Z.moduleBased=t:Z.moduleBased!==t&&(_("AG Grid: You are mixing modules (i.e. @ag-grid-community/core) and packages (ag-grid-community)
37- you can only use one or the other of these mechanisms."),_("Please see https://www.ag-grid.com/javascript-grid/modules/ for more information."))}static __setIsBundled(){Z.isBundled=!0}static __assertRegistered(t,s,i){var r;if(this.__isRegistered(t,i))return!0;let o;if(Z.isBundled)o=`AG Grid: unable to use ${s} as 'ag-grid-enterprise' has not been loaded. Check you are using the Enterprise bundle: 38 39 <script src="https://cdn.jsdelivr.net/npm/ag-grid-enterprise@AG_GRID_VERSION/dist/ag-grid-enterprise.min.js"><\/script> 40 41For more info see: https://ag-grid.com/javascript-data-grid/getting-started/#getting-started-with-ag-grid-enterprise`;else if(Z.moduleBased||Z.moduleBased===void 0){const n=(r=Object.entries(U).find(([l,a])=>a===t))==null?void 0:r[0];o=`AG Grid: unable to use ${s} as the ${n} is not registered${Z.areGridScopedModules?` for gridId: ${i}`:""}. Check if you have registered the module: 42 43 import { ModuleRegistry } from '@ag-grid-community/core'; 44 import { ${n} } from '${t}'; 45 46 ModuleRegistry.registerModules([ ${n} ]); 47 48For more info see: https://www.ag-grid.com/javascript-grid/modules/`}else o=`AG Grid: unable to use ${s} as package 'ag-grid-enterprise' has not been imported. Check that you have imported the package: 49 50 import 'ag-grid-enterprise';`;return _(o),!1}static __isRegistered(t,s){var i;return!!Z.globalModulesMap[t]||!!((i=Z.gridModulesMap[s])!=null&&i[t])}static __getRegisteredModules(t){return[...Wi(Z.globalModulesMap),...Wi(Z.gridModulesMap[t]||{})]}static __getGridRegisteredModules(t){return Wi(Z.gridModulesMap[t]??{})||[]}static __isPackageBased(){return!Z.moduleBased}};So.globalModulesMap={};So.gridModulesMap={};So.areGridScopedModules=!1;var Dt=So,Xh=class{constructor(e){this.beans={}
50,this.createdBeans=[],this.destroyed=!1,!(!e||!e.beanClasses)&&(this.beanDestroyComparator=e.beanDestroyComparator,this.init(e))}init(e){var t;Object.entries(e.providedBeanInstances).forEach(([s,i])=>{this.beans[s]=i}),e.beanClasses.forEach(s=>{const i=new s;i.beanName?this.beans[i.beanName]=i:console.error(`Bean ${s.name} is missing beanName`),this.createdBeans.push(i)}),(t=e.derivedBeans)==null||t.forEach(s=>{const{beanName:i,bean:o}=s(this);this.beans[i]=o,this.createdBeans.push(o)}),e.beanInitComparator&&this.createdBeans.sort(e.beanInitComparator),this.initBeans(this.createdBeans)}getBeanInstances(){return Object.values(this.beans)}createBean(e,t){if(!e)throw Error("Can't wire to bean since it is null");return this.initBeans([e],t),e}initBeans(e,t){e.forEach(s=>{var i,o;(i=s.preWireBeans)==null||i.call(s,this.beans),(o=s.wireBeans)==null||o.call(s,this.beans)}),e.forEach(s=>{var i;return(i=s.preConstruct)==null?void 0:i.call(s)}),t&&e.forEach(t),e.forEach(s=>{var i;return(i=s.postConstruct)==null?void 0:i.call(s)})}getBeans(){return this.beans}getBean(e){return this.beans[e]}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=[]}destroyBean(e){var t;(t=e==null?void 0:e.destroy)==null||t.call(e)}destroyBeans(e){if(e)for(let t=0;t<e.length;t++)this.destroyBean(e[t]);return[]}isDestroyed(){return this.destroyed}},Zh=class extends Xh{init(e){this.gridId=e.gridId,this.beans.context=this,super.init(e)}destroy(){super.destroy(),Dt.__unRegisterGridModules(this.gridId)}getGridId(){return this.gridId}},Ri=(e=>(e[e.SINGLE_SHEET=0]="SINGLE_SHEET",e[e.MULTI_SHEET=1]="MULTI_SHEET",e))(Ri||{}),Ha=(e=>(e[e.Left=0]="Left",e[e.Right=1]="Right",e))(Ha||{}),ds=(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))(ds||{}),Jh=class extends b{constructor(){super(...arguments),this.beanName="dragAndDropService",this.dragSourceAndParamsList=[],this.dropTargets=[]}wireBeans(e){this.ctrlsService=e.ctrlsService,this.dragService=e.dragService,this.mouseEventService=e.mouseEventService,this.environment=e.environment,this.userComponentFactory=e.userComponentFactory}addDragSource(e,t=!1){const s={eElement:e.eElement,dragStartPixels:e.dragStartPixels,onDragStart:this.onDragStart.bind(this,e),onDragStop:this.onDragStop.bind(this),onDragging:this.onDragging.bind(this),onDragCancel:this.onDragCancel.bind(this),includeTouch:t};this.dragSourceAndParamsList.push({params:s,dragSource:e}),this.dragService.addDragSource(s)}getDragAndDropImageComponent(){const{dragAndDropImageComp:e}=this;return!e||!e.comp?null:e.comp}removeDragSource(e){const t=this.dragSourceAndParamsList.find(s=>
50s.dragSource===e);t&&(this.dragService.removeDragSource(t.params),ke(this.dragSourceAndParamsList,t))}destroy(){this.dragSourceAndParamsList.forEach(e=>this.dragService.removeDragSource(e.params)),this.dragSourceAndParamsList.length=0,this.dropTargets.length=0,this.clearDragAndDropProperties(),super.destroy()}nudge(){this.dragging&&this.onDragging(this.eventLastTime,!0)}onDragStart(e,t){var s,i;this.dragging=!0,this.dragSource=e,this.eventLastTime=t,this.dragItem=this.dragSource.getDragItem(),(i=(s=this.dragSource).onDragStarted)==null||i.call(s),this.createDragAndDropImageComponent()}onDragStop(e){var t,s,i;if((s=(t=this.dragSource)==null?void 0:t.onDragStopped)==null||s.call(t),(i=this.lastDropTarget)!=null&&i.onDragStop){const o=this.createDropTargetEvent(this.lastDropTarget,e,null,null,!1);this.lastDropTarget.onDragStop(o)}this.clearDragAndDropProperties()}onDragCancel(){var e,t,s;(t=(e=this.dragSource)==null?void 0:e.onDragCancelled)==null||t.call(e),(s=this.lastDropTarget)!=null&&s.onDragCancel&&this.lastDropTarget.onDragCancel(this.createDropTargetEvent(this.lastDropTarget,this.eventLastTime,null,null,!1)),this.clearDragAndDropProperties()}clearDragAndDropProperties(){this.eventLastTime=null,this.dragging=!1,this.lastDropTarget=void 0,this.dragItem=null,this.dragSource=null,this.removeDragAndDropImageComponent()}onDragging(e,t=!1){var n,l,a,d;const s=this.getHorizontalDirection(e),i=this.getVerticalDirection(e);this.eventLastTime=e,this.positionDragAndDropImageComp(e);const o=this.dropTargets.filter(c=>this.isMouseOnDropTarget(e,c)),r=this.findCurrentDropTarget(e,o);if(r!==this.lastDropTarget){if(this.leaveLastTargetIfExists(e,s,i,t),this.lastDropTarget!==null&&r===null&&((l=(n=this.dragSource)==null?void 0:n.onGridExit)==null||l.call(n,this.dragItem)),this.lastDropTarget===null&&r!==null&&((d=(a=this.dragSource)==null?void 0:a.onGridEnter)==null||d.call(a,this.dragItem)),this.enterDragTargetIfExists(r,e,s,i,t),r&&this.dragAndDropImageComp){const{comp:c,promise:u}=this.dragAndDropImageComp;c?c.setIcon(r.getIconName?r.getIconName():null):u.then(h=>{h&&h.setIcon(r.getIconName?r.getIconName():null)})}this.lastDropTarget=r}else if(r&&r.onDragging){const c=this.createDropTargetEvent(r,e,s,i,t);r.onDragging(c)}}getAllContainersFromDropTarget(e){const t=e.getSecondaryContainers?e.getSecondaryContainers():null,s=[[e.getContainer()]];return t?s.concat(t):s}allContainersIntersect(e,t){for(const s of t){const{width:i,height:o,left:r,right:n,top:l,bottom:a}=s.getBoundingClientRect();if(i===0||o===0)return!1;const d=e.clientX>=r&&e.clientX<n,c=e.clientY>=l&&e.clientY<a;if(!d||!c)return!1}return!0}isMouseOnDropTarget(e,t){const s=this.getAllContainersFromDropTarget(t);let i=!1;for(const n of s)if(this.allContainersIntersect(e,n)){i=!0;break}const{eElement:o,type:r}=this.dragSource;return t.targetContainsSource&&!t.getContainer().contains(o)?!1:i&&t.isInterestedIn(r,o)}findCurrentDropTarget(e,t){const s=t.length;if(s===0)return null;if(s===1)return t[0];const o=pi(this.gos).elementsFromPoint(e.clientX,e.clientY);for(const r of o)for(const n of t)if(gu(this.getAllContainersFromDropTarget(n)).indexOf(r)!==-1)return n;return null}enterDragTargetIfExists(e,t,s,i,o){if(e&&e.onDragEnter){const r=this.createDropTargetEvent(e,t,s,i,o);e.onDragEnter(r)}}leaveLastTargetIfExists(e,t,s,i){if(!this.lastDropTarget)return;if(this.lastDropTarget.onDragLeave){const r=this.createDropTargetEvent(this.lastDropTarget,e,t,s,i);this.lastDropTarget.onDragLeave(r)}const o=this.getDragAndDropImageComponent();o&&o.setIcon(null)}addDropTarget(e){this.dropTargets.push(e)}removeDropTarget(e){this.dropTargets=this.dropTargets.filter(t=>t.getContainer()!==e.getContainer())}hasExternalDropZones(){return this.dropTargets.some(e=>e.external)}findExternalZone(e){return this.dropTargets.filter(s=>s.external).find(s=>s.getContainer()===e.getContainer())||null}isDropZoneWithinThisGrid(e){const s=this.ctrlsService.getGridBodyCtrl().getGui(),{dropZoneTarget:i}=e;return s.contains(i)}getHorizontalDirection(e){const t=this.eventLastTime&&this.eventLastTime.clientX,s=e.clientX;return t===s?null:t>s?0:1}getVerticalDirection(e){const t=this.eventLastTime&&this.eventLastTime.clientY,s=e.clientY;return t===s?null:t>s?0:1}createDropTargetEvent(e,t,s,i,o){const r=e.getContainer(),n=r.getBoundingClientRect(),{dragItem:l,dragSource:a}=this,d=t.clientX-n.left,c=t.clientY-n.top;return this.gos.addGridCommonParams({event:t,x:d,y:c,vDirection:i,hDirection:s,dragSource:a,fromNudge:o,dragItem:l,dropZoneTarget:r})}positionDragAndDropImageComp(e){const t=this.getDragAndDropImageComponent();if(!t)return;const s=t.getGui(),o=s.getBoundingClientRect().height,r=eh()-2,n=th()-2;if(!s.offsetParent)return;const a=Fa(s.offsetParent),{clientY:d,clientX:c}=e;let u=d-a.top-o/2,h=c-a.left-10;
50const p=le(this.gos),g=p.defaultView||window,f=g.pageYOffset||p.documentElement.scrollTop,m=g.pageXOffset||p.documentElement.scrollLeft;r>0&&h+s.clientWidth>r+m&&(h=r+m-s.clientWidth),h<0&&(h=0),n>0&&u+s.clientHeight>n+f&&(u=n+f-s.clientHeight),u<0&&(u=0),s.style.left=`${h}px`,s.style.top=`${u}px`}removeDragAndDropImageComponent(){if(this.dragAndDropImageComp){const{comp:e}=this.dragAndDropImageComp;if(e){const t=e.getGui();this.dragAndDropImageParent&&this.dragAndDropImageParent.removeChild(t),this.destroyBean(e)}}this.dragAndDropImageComp=null}createDragAndDropImageComponent(){const{dragSource:e}=this;if(!e)return;const s=this.userComponentFactory.getDragAndDropImageCompDetails({dragSource:e}).newAgStackInstance();this.dragAndDropImageComp={promise:s},s.then(i=>{!i||!this.isAlive()||(this.processDragAndDropImageComponent(i),this.dragAndDropImageComp.comp=i)})}processDragAndDropImageComponent(e){const{dragSource:t,mouseEventService:s,environment:i}=this;if(!t)return;const o=e.getGui();o.style.setProperty("position","absolute"),o.style.setProperty("z-index","9999"),s.stampTopLevelGridCompWithGridInstance(o),i.applyThemeClasses(o),e.setIcon(null);let{dragItemName:r}=t;Ar(r)&&(r=r()),e.setLabel(r||""),o.style.top="20px",o.style.left="20px";const n=le(this.gos);let l=null,a=null;try{l=n.fullscreenElement}catch{}finally{l||(l=pi(this.gos));const d=l.querySelector("body");d?a=d:l instanceof ShadowRoot?a=l:l instanceof Document?a=l==null?void 0:l.documentElement:a=l}this.dragAndDropImageParent=a,a?a.appendChild(o):R("Could not find document body, it is needed for drag and drop.")}},Wa=class{constructor(e){this.tickingInterval=null,this.onScrollCallback=null,this.scrollContainer=e.scrollContainer,this.scrollHorizontally=e.scrollAxis.indexOf("x")!==-1,this.scrollVertically=e.scrollAxis.indexOf("y")!==-1,this.scrollByTick=e.scrollByTick!=null?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)}check(e,t=!1){const s=t||this.shouldSkipVerticalScroll();if(s&&this.shouldSkipHorizontalScroll())return;const i=this.scrollContainer.getBoundingClientRect(),o=this.scrollByTick;this.tickLeft=e.clientX<i.left+o,this.tickRight=e.clientX>i.right-o,this.tickUp=e.clientY<i.top+o&&!s,this.tickDown=e.clientY>i.bottom-o&&!s,this.tickLeft||this.tickRight||this.tickUp||this.tickDown?this.ensureTickingStarted():this.ensureCleared()}ensureTickingStarted(){this.tickingInterval===null&&(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)}},Zs=(e=>(e[e.Above=0]="Above",e[e.Below=1]="Below",e))(Zs||{}),ep=class extends b{wireBeans(e){this.dragAndDropService=e.dragAndDropService,this.rowModel=e.rowModel,this.pageBoundsService=e.pageBoundsService,this.focusService=e.focusService,this.sortController=e.sortController,this.filterManager=e.filterManager,this.selectionService=e.selectionService,this.mouseEventService=e.mouseEventService,this.ctrlsService=e.ctrlsService,this.funcColsService=e.funcColsService,this.rangeService=e.rangeService}constructor(e){super(),this.eContainer=e}postConstruct(){re(this.gos)&&(this.clientSideRowModel=this.rowModel),this.ctrlsService.whenReady(this,e=>{const t=e.gridBodyCtrl;
50this.autoScrollService=new Wa({scrollContainer:t.getBodyViewportElement(),scrollAxis:"y",getVerticalPosition:()=>t.getScrollFeature().getVScrollPosition().top,setVerticalPosition:s=>t.getScrollFeature().setVerticalScrollPosition(s),onScrollCallback:()=>{this.onDragging(this.lastDraggingEvent)}})})}getContainer(){return this.eContainer}isInterestedIn(e){return e===2}getIconName(){return this.gos.get("rowDragManaged")&&this.shouldPreventRowMove()?"notAllowed":"move"}shouldPreventRowMove(){var i;return!!(this.funcColsService.getRowGroupColumns().length||((i=this.filterManager)==null?void 0:i.isAnyFilterPresent())||this.sortController.isSortActive())}getRowNodes(e){if(!this.isFromThisGrid(e))return e.dragItem.rowNodes||[];const t=e.dragItem.rowNode;if(this.gos.get("rowDragMultiRow")){const i=[...this.selectionService.getSelectedNodes()].sort((o,r)=>o.rowIndex==null||r.rowIndex==null?0:this.getRowIndexNumber(o)-this.getRowIndexNumber(r));if(i.indexOf(t)!==-1)return i}return[t]}onDragEnter(e){e.dragItem.rowNodes=this.getRowNodes(e),this.dispatchGridEvent("rowDragEnter",e),this.getRowNodes(e).forEach(t=>{t.setDragging(!0)}),this.onEnterOrDragging(e)}onDragging(e){this.onEnterOrDragging(e)}isFromThisGrid(e){const{dragSourceDomDataKey:t}=e.dragSource;return t===this.gos.getDomDataKey()}onEnterOrDragging(e){this.dispatchGridEvent("rowDragMove",e),this.lastDraggingEvent=e;const t=this.mouseEventService.getNormalisedPosition(e).y;this.gos.get("rowDragManaged")&&this.doManagedDrag(e,t),this.autoScrollService.check(e.event)}doManagedDrag(e,t){const s=this.isFromThisGrid(e),i=this.gos.get("rowDragManaged"),o=e.dragItem.rowNodes;i&&this.shouldPreventRowMove()||(this.gos.get("suppressMoveWhenRowDragging")||!s?this.dragAndDropService.isDropZoneWithinThisGrid(e)&&this.clientSideRowModel.highlightRowAtPixel(o[0],t):this.moveRows(o,t))}getRowIndexNumber(e){const t=e.getRowIndexString();return parseInt(W(t.split("-")),10)}moveRowAndClearHighlight(e){const t=this.clientSideRowModel.getLastHighlightedRowNode(),s=t&&t.highlighted===1,i=this.mouseEventService.getNormalisedPosition(e).y,o=e.dragItem.rowNodes;let r=s?1:0;if(this.isFromThisGrid(e))o.forEach(n=>{n.rowTop<i&&(r-=1)}),this.moveRows(o,i,r);else{const n=Tt(this.gos);let l=this.clientSideRowModel.getRowIndexAtPixel(i)+1;this.clientSideRowModel.getHighlightPosition(i)===0&&l--,this.clientSideRowModel.updateRowData({add:o.filter(a=>!this.clientSideRowModel.getRowNode((n==null?void 0:n({data:a.data,level:0,rowPinned:a.rowPinned}))??a.data.id)).map(a=>a.data),addIndex:l})}this.clearRowHighlight()}clearRowHighlight(){this.clientSideRowModel.highlightRowAtPixel(null)}moveRows(e,t,s=0){var o;this.clientSideRowModel.ensureRowsAtPixel(e,t,s)&&(this.focusService.clearFocusedCell(),(o=this.rangeService)==null||o.removeAllCellRanges())}addRowDropZone(e){if(!e.getContainer()){R("addRowDropZone - A container target needs to be provided");return}if(this.dragAndDropService.findExternalZone(e)){R("addRowDropZone - target already exists in the list of DropZones. Use `removeRowDropZone` before adding it again.");return}let t={getContainer:e.getContainer};e.fromGrid?t=e:(e.onDragEnter&&(t.onDragEnter=i=>{e.onDragEnter(this.draggingToRowDragEvent("rowDragEnter",i))}),e.onDragLeave&&(t.onDragLeave=i=>{e.onDragLeave(this.draggingToRowDragEvent("rowDragLeave",i))}),e.onDragging&&(t.onDragging=i=>{e.onDragging(this.draggingToRowDragEvent("rowDragMove",i))}),e.onDragStop&&(t.onDragStop=i=>{e.onDragStop(this.draggingToRowDragEvent("rowDragEnd",i))}),e.onDragCancel&&(t.onDragCancel=i=>{e.onDragCancel(this.draggingToRowDragEvent("rowDragCancel",i))}));const s={isInterestedIn:i=>i===2,getIconName:()=>"move",external:!0,...t};this.dragAndDropService.addDropTarget(s),this.addDestroyFunc(()=>this.dragAndDropService.removeDropTarget(s))}getRowDropZone(e){const t=this.getContainer.bind(this),s=this.onDragEnter.bind(this),i=this.onDragLeave.bind(this),o=this.onDragging.bind(this),r=this.onDragStop.bind(this),n=this.onDragCancel.bind(this);let l;return e?l={getContainer:t,onDragEnter:e.onDragEnter?a=>{s(a),e.onDragEnter(this.draggingToRowDragEvent("rowDragEnter",a))}:s,onDragLeave:e.onDragLeave?a=>{i(a),e.onDragLeave(this.draggingToRowDragEvent("rowDragLeave",a))}:i,onDragging:e.onDragging?a=>{o(a),e.onDragging(this.draggingToRowDragEvent("rowDragMove",a))}:o,onDragStop:e.onDragStop?a=>{r(a),e.onDragStop(this.draggingToRowDragEvent("rowDragEnd",a))}
50:r,onDragCancel:e.onDragCancel?a=>{n(a),e.onDragCancel(this.draggingToRowDragEvent("rowDragCancel",a))}:n,fromGrid:!0}:l={getContainer:t,onDragEnter:s,onDragLeave:i,onDragging:o,onDragStop:r,onDragCancel:n,fromGrid:!0},l}draggingToRowDragEvent(e,t){const s=this.mouseEventService.getNormalisedPosition(t).y,i=s>this.pageBoundsService.getCurrentPageHeight();let o=-1,r;i||(o=this.rowModel.getRowIndexAtPixel(s),r=this.rowModel.getRow(o));let n;switch(t.vDirection){case 1:n="down";break;case 0:n="up";break;default:n=null;break}return this.gos.addGridCommonParams({type:e,event:t.event,node:t.dragItem.rowNode,nodes:t.dragItem.rowNodes,overIndex:o,overNode:r,y:s,vDirection:n})}dispatchGridEvent(e,t){const s=this.draggingToRowDragEvent(e,t);this.eventService.dispatchEvent(s)}onDragLeave(e){this.dispatchGridEvent("rowDragLeave",e),this.stopDragging(e),this.gos.get("rowDragManaged")&&this.clearRowHighlight()}onDragStop(e){this.dispatchGridEvent("rowDragEnd",e),this.stopDragging(e),this.gos.get("rowDragManaged")&&(this.gos.get("suppressMoveWhenRowDragging")||!this.isFromThisGrid(e))&&this.dragAndDropService.isDropZoneWithinThisGrid(e)&&this.moveRowAndClearHighlight(e)}onDragCancel(e){this.dispatchGridEvent("rowDragCancel",e),this.stopDragging(e),this.gos.get("rowDragManaged")&&(this.gos.get("suppressMoveWhenRowDragging")||!this.isFromThisGrid(e))&&this.dragAndDropService.isDropZoneWithinThisGrid(e)&&this.clearRowHighlight()}stopDragging(e){this.autoScrollService.ensureCleared(),this.getRowNodes(e).forEach(t=>{t.setDragging(!1)})}},tp=class extends b{constructor(){super(...arguments),this.beanName="dragService",this.dragEndFunctions=[],this.dragSources=[]}wireBeans(e){this.mouseEventService=e.mouseEventService}destroy(){this.dragSources.forEach(this.removeListener.bind(this)),this.dragSources.length=0,super.destroy()}removeListener(e){const t=e.dragSource.eElement,s=e.mouseDownListener;if(t.removeEventListener("mousedown",s),e.touchEnabled){const i=e.touchStartListener;t.removeEventListener("touchstart",i,{passive:!0})}}removeDragSource(e){const t=this.dragSources.find(s=>s.dragSource===e);t&&(this.removeListener(t),ke(this.dragSources,t))}isDragging(){return this.dragging}addDragSource(e){const t=this.onMouseDown.bind(this,e),{eElement:s,includeTouch:i,stopPropagationForTouch:o}=e;s.addEventListener("mousedown",t);let r=null;const n=this.gos.get("suppressTouch");i&&!n&&(r=l=>{qr(l.target)||(o&&l.stopPropagation(),this.onTouchStart(e,l))},s.addEventListener("touchstart",r,{passive:!1})),this.dragSources.push({dragSource:e,mouseDownListener:t,touchStartListener:r,touchEnabled:!!i})}getStartTarget(){return this.startTarget}onTouchStart(e,t){this.currentDragParams=e,this.dragging=!1;const s=t.touches[0];this.touchLastTime=s,this.touchStart=s;const i=a=>this.onTouchMove(a,e.eElement),o=a=>this.onTouchUp(a,e.eElement),r=a=>{a.cancelable&&a.preventDefault()},n=t.target,l=[{target:pi(this.gos),type:"touchmove",listener:r,options:{passive:!1}},{target:n,type:"touchmove",listener:i,options:{passive:!0}},{target:n,type:"touchend",listener:o,options:{passive:!0}},{target:n,type:"touchcancel",listener:o,options:{passive:!0}}];this.addTemporaryEvents(l),e.dragStartPixels===0&&this.onCommonMove(s,this.touchStart,e.eElement)}onMouseDown(e,t){const s=t;if(e.skipMouseEvent&&e.skipMouseEvent(t)||s._alreadyProcessedByDragService||(s._alreadyProcessedByDragService=!0,t.button!==0))return;this.shouldPreventMouseEvent(t)&&t.preventDefault(),this.currentDragParams=e,this.dragging=!1,this.mouseStartEvent=t,this.startTarget=t.target;const i=d=>this.onMouseMove(d,e.eElement),o=d=>this.onMouseUp(d,e.eElement),r=d=>d.preventDefault(),n=d=>{d.key===S.ESCAPE&&this.cancelDrag(e.eElement)},l=pi(this.gos),a=[{target:l,type:"mousemove",listener:i},{target:l,type:"mouseup",listener:o},{target:l,type:"contextmenu",listener:r},{target:l,type:"keydown",listener:n}];this.addTemporaryEvents(a),e.dragStartPixels===0&&this.onMouseMove(t,e.eElement)}addTemporaryEvents(e){e.forEach(t=>{const{target:s,type:i,listener:o,options:r}=t;s.addEventListener(i,o,r)}),this.dragEndFunctions.push(()=>{e.forEach(t=>{const{target:s,type:i,listener:o,options:r}=t;s.removeEventListener(i,o,r)})})}isEventNearStartEvent(e,t){const{dragStartPixels:s}=this.currentDragParams,i=E(s)?s:4;return La(e,t,i)}getFirstActiveTouch(e){for(let t=0;t<e.length;t++)if(e[t].identifier===this.touchStart.identifier)return e[t];return null}onCommonMove(e,t,s){var i;if(!this.dragging){if(this.isEventNearStartEvent(e,t))return;if(this.dragging=!0,this.eventService.dispatchEvent({type:"dragStarted",target:s}),this.currentDragParams.onDragStart(t),!this.currentDragParams){this.dragging=!1;return}this.currentDragParams.onDragging(t)}(i=this.currentDragParams)==null||i.onDragging(e)}onTouchMove(e,t){const s=this.getFirstActiveTouch(e.touches);s&&this.onCommonMove(s,this.touchStart,t)}onMouseMove(e,t){var s;Pt()&&((s=le(this.gos).getSelection())==null||s.removeAllRanges()),this.shouldPreventMouseEvent(e)&&e.preventDefault(),this.onCommonMove(e,this.mouseStartEvent,t)}shouldPreventMouseEvent(e){const t=this.gos.get("enableCellTextSelection"),s=e.type==="mousemove";return t&&s&&e.cancelable&&this.mouseEventService.isEventFromThisGrid(e)&&!this.isOverFormFieldElement(e)}isOverFormFieldElement(e){const t=e.target,s=t==null?void 0:t.tagName.toLocaleLowerCase();return!!(s!=null&&s.match("^a$|textarea|input|select|button"))}onTouchUp(e,t){let s=this.getFirstActiveTouch(e.changedTouches);s||(s=this.touchLastTime),this.onUpCommon(s,t)}onMouseUp(e,t){this.onUpCommon(e,t)}
50onUpCommon(e,t){this.dragging&&(this.dragging=!1,this.currentDragParams.onDragStop(e),this.eventService.dispatchEvent({type:"dragStopped",target:t})),this.resetDragProperties()}cancelDrag(e){var t,s;this.eventService.dispatchEvent({type:"dragCancelled",target:e}),(s=(t=this.currentDragParams)==null?void 0:t.onDragCancel)==null||s.call(t),this.resetDragProperties()}resetDragProperties(){this.mouseStartEvent=null,this.startTarget=null,this.touchStart=null,this.touchLastTime=null,this.currentDragParams=null,this.dragEndFunctions.forEach(e=>e()),this.dragEndFunctions.length=0}},so=class extends O{constructor(e,t,s,i,o,r){super(),this.cellValueFn=e,this.rowNode=t,this.column=s,this.customGui=i,this.dragStartPixels=o,this.suppressVisibilityChange=r,this.dragSource=null}wireBeans(e){this.beans=e}isCustomGui(){return this.customGui!=null}postConstruct(){if(this.customGui?this.setDragElement(this.customGui,this.dragStartPixels):(this.setTemplate('<div class="ag-drag-handle ag-row-drag" aria-hidden="true"></div>'),this.getGui().appendChild(N("rowDrag",this.gos,null)),this.addDragSource()),this.checkCompatibility(),!this.suppressVisibilityChange){const e=this.gos.get("rowDragManaged")?new ip(this,this.beans,this.rowNode,this.column):new sp(this,this.beans,this.rowNode,this.column);this.createManagedBean(e,this.beans.context)}}setDragElement(e,t){this.setTemplateFromElement(e,void 0,void 0,!0),this.addDragSource(t)}getSelectedNodes(){if(!this.gos.get("rowDragMultiRow"))return[this.rowNode];const t=this.beans.selectionService.getSelectedNodes();return t.indexOf(this.rowNode)!==-1?t:[this.rowNode]}checkCompatibility(){const e=this.gos.get("rowDragManaged");this.gos.get("treeData")&&e&&R("If using row drag with tree data, you cannot have rowDragManaged=true")}getDragItem(){return{rowNode:this.rowNode,rowNodes:this.getSelectedNodes(),columns:this.column?[this.column]:void 0,defaultTextValue:this.cellValueFn()}}getRowDragText(e){if(e){const t=e.getColDef();if(t.rowDragText)return t.rowDragText}return this.gos.get("rowDragText")}addDragSource(e=4){this.dragSource&&this.removeDragSource();const t=this.getGui();this.gos.get("enableCellTextSelection")&&(this.removeMouseDownListener(),this.mouseDownListener=this.addManagedElementListeners(t,{mousedown:i=>{i==null||i.preventDefault()}})[0]);const s=this.localeService.getLocaleTextFunc();this.dragSource={type:2,eElement:t,dragItemName:()=>{var n;const i=this.getDragItem(),o=((n=i.rowNodes)==null?void 0:n.length)||1,r=this.getRowDragText(this.column);return r?r(i,o):o===1?this.cellValueFn():`${o} ${s("rowDragRows","rows")}`},getDragItem:()=>this.getDragItem(),dragStartPixels:e,dragSourceDomDataKey:this.gos.getDomDataKey()},this.beans.dragAndDropService.addDragSource(this.dragSource,!0)}destroy(){this.removeDragSource(),this.removeMouseDownListener(),super.destroy()}removeDragSource(){this.dragSource&&(this.beans.dragAndDropService.removeDragSource(this.dragSource),this.dragSource=null)}removeMouseDownListener(){this.mouseDownListener&&(this.mouseDownListener(),this.mouseDownListener=void 0)}},za=class extends b{constructor(e,t,s){super(),this.parent=e,this.rowNode=t,this.column=s}setDisplayedOrVisible(e){const t={skipAriaHidden:!0};if(e)this.parent.setDisplayed(!1,t);else{let s=!0,i=!1;this.column&&(s=this.column.isRowDrag(this.rowNode)||this.parent.isCustomGui(),i=Ar(this.column.getColDef().rowDrag)),i?(this.parent.setDisplayed(!0,t),this.parent.setVisible(s,t)):(this.parent.setDisplayed(s,t),this.parent.setVisible(!0,t))}}},sp=class extends za{constructor(e,t,s,i){super(e,s,i),this.beans=t}postConstruct(){this.addManagedPropertyListener("suppressRowDrag",this.onSuppressRowDrag.bind(this));const e=this.workOutVisibility.bind(this);this.addManagedListeners(this.rowNode,{dataChanged:e,cellChanged:e}),this.addManagedListeners(this.beans.eventService,{newColumnsLoaded:e}),this.workOutVisibility()}onSuppressRowDrag(){this.workOutVisibility()}workOutVisibility(){const e=this.gos.get("suppressRowDrag");this.setDisplayedOrVisible(e)}},ip=class extends za{constructor(e,t,s,i){super(e,s,i),this.beans=t}postConstruct(){const e=this.workOutVisibility.bind(this);this.addManagedListeners(this.beans.eventService,{sortChanged:e,filterChanged:e,columnRowGroupChanged:e,newColumnsLoaded:e}),this.addManagedListeners(this.rowNode,{dataChanged:e,cellChanged:e}),this.addManagedPropertyListener("suppressRowDrag",this.onSuppressRowDrag.bind(this)),this.workOutVisibility()}onSuppressRowDrag(){this.workOutVisibility()}workOutVisibility(){const t=this.beans.ctrlsService.getGridBodyCtrl().getRowDragFeature
50(),s=t&&t.shouldPreventRowMove(),i=this.gos.get("suppressRowDrag"),o=this.beans.dragAndDropService.hasExternalDropZones(),r=s&&!o||i;this.setDisplayedOrVisible(r)}},op=new Set(["localEventService","__objectId","sticky","__autoHeights","checkAutoHeightsDebounced"]),bi=class Ht{constructor(t){this.rowIndex=null,this.key=null,this.sourceRowIndex=-1,this.childrenMapped={},this.treeNode=null,this.treeNodeFlags=0,this.displayed=!1,this.rowTop=null,this.oldRowTop=null,this.selectable=!0,this.__objectId=Ht.OBJECT_ID_SEQUENCE++,this.__autoHeights={},this.alreadyRendered=!1,this.highlighted=null,this.hovered=!1,this.selected=!1,this.beans=t}setData(t){this.setDataCommon(t,!1)}updateData(t){this.setDataCommon(t,!0)}setDataCommon(t,s){var r;const i=this.data;this.data=t,this.beans.valueCache.onDataChanged(),this.updateDataOnDetailNode(),this.checkRowSelectable(),this.resetQuickFilterAggregateText();const o=this.createDataChangedEvent(t,i,s);(r=this.localEventService)==null||r.dispatchEvent(o)}updateDataOnDetailNode(){this.detailNode&&(this.detailNode.data=this.data)}createDataChangedEvent(t,s,i){return{type:"dataChanged",node:this,oldData:s,newData:t,update:i}}getRowIndexString(){return this.rowIndex==null?(_("Could not find rowIndex, this means tasks are being executed on a rowNode that has been removed from the grid."),null):this.rowPinned==="top"?Ht.ID_PREFIX_TOP_PINNED+this.rowIndex:this.rowPinned==="bottom"?Ht.ID_PREFIX_BOTTOM_PINNED+this.rowIndex:this.rowIndex.toString()}createDaemonNode(){const t=new Ht(this.beans);return t.id=this.id,t.data=this.data,t.__daemon=!0,t.selected=this.selected,t.level=this.level,t}setDataAndId(t,s){var n;const i=E(this.id)?this.createDaemonNode():null,o=this.data;this.data=t,this.updateDataOnDetailNode(),this.setId(s),this.checkRowSelectable(),this.beans.selectionService.syncInRowNode(this,i);const r=this.createDataChangedEvent(t,o,!1);(n=this.localEventService)==null||n.dispatchEvent(r)}checkRowSelectable(){const t=Gr(this.beans.gos);this.setRowSelectable(t?t(this):!0)}setRowSelectable(t,s){if(this.selectable!==t){if(this.selectable=t,this.dispatchRowEvent("selectableChanged"),s)return;if(It(this.beans.gos)){const o=this.calculateSelectedFromChildren();this.setSelectedParams({newValue:o??!1,source:"selectableChanged"});return}this.isSelected()&&!this.selectable&&this.setSelectedParams({newValue:!1,source:"selectableChanged"})}}setId(t){var i;const s=Tt(this.beans.gos);if(s)if(this.data){const o=((i=this.parent)==null?void 0:i.getRoute())??[];this.id=s({data:this.data,parentKeys:o.length>0?o:void 0,level:this.level,rowPinned:this.rowPinned}),this.id.startsWith(Ht.ID_PREFIX_ROW_GROUP)&&_(`Row IDs cannot start with ${Ht.ID_PREFIX_ROW_GROUP}, this is a reserved prefix for AG Grid's row grouping feature.`)}else this.id=void 0;else this.id=t}setRowTop(t){this.oldRowTop=this.rowTop,this.rowTop!==t&&(this.rowTop=t,this.dispatchRowEvent("topChanged"),this.setDisplayed(t!==null))}clearRowTopAndRowIndex(){this.oldRowTop=null,this.setRowTop(null),this.setRowIndex(null)}setHovered(t){this.hovered=t}isHovered(){return this.hovered}setMaster(t){this.master!==t&&(this.master&&!t&&(this.expanded=!1),this.master=t,this.dispatchRowEvent("masterChanged"))}setGroup(t){this.group!==t&&(this.group&&!t&&(this.expanded=!1),this.group=t,this.updateHasChildren(),this.checkRowSelectable(),this.dispatchRowEvent("groupChanged"))}setRowHeight(t,s=!1){this.rowHeight=t,this.rowHeightEstimated=s,this.dispatchRowEvent("heightChanged")}setRowAutoHeight(t,s){this.__autoHeights||(this.__autoHeights={}),this.__autoHeights[s.getId()]=t,t!=null&&(this.checkAutoHeightsDebounced==null&&(this.checkAutoHeightsDebounced=Me(this.checkAutoHeights.bind(this),1)),this.checkAutoHeightsDebounced())}checkAutoHeights(){var l;let t=!1,s=!0,i=0;const o=this.__autoHeights;if(o==null||(this.beans.visibleColsService.getAllAutoHeightCols().forEach(a=>{let d=o[a.getId()];if(d==null)if(this.beans.columnModel.isColSpanActive()){let c=[];switch(a.getPinned()){case"left":c=this.beans.visibleColsService.getLeftColsForRow(this);break;case"right":c=this.beans.visibleColsService.getRightColsForRow(this);break;case null:c=this.beans.columnViewportService.getColsWithinViewport(this);break}if(c.includes(a)){t=!0;return}d=-1}else{t=!0;return}else s=!1;d>i&&(i=d)}),t)||((s||i<10)&&(i=Ge(this.beans.gos,this).height),i==this.rowHeight))return;this.setRowHeight(i);const n=this.beans.rowModel;(l=n.onRowHeightChangedDebounced)==null||l.call(n)}setExpanded(t,s,i){if(this.expanded===t)return;this.expanded=t,this.dispatchRowEvent("expandedChanged");const o={...this.createGlobalRowEvent("rowGroupOpened"),expanded:t,event:s||null};this.beans.rowNodeEventThrottle.dispatchExpanded(o,i),this.beans.rowRenderer.refreshCells({rowNodes:[this]})}createGlobalRowEvent(t){return this.beans.gos.addGridCommonParams({type:t,node:this,data:this.data,rowIndex:this.rowIndex,rowPinned:this.rowPinned})}setDataValue(t,s,i){const r=typeof t!="string"?t:this.beans.columnModel.getCol(t)??this.beans.columnModel.getColDefCol(t),n=this.beans.valueService.getValueForDisplay(r,this);if(this.beans.gos.get("readOnlyEdit"))return this.beans.eventService.dispatchEvent({type:"cellEditRequest",event:null,rowIndex:this.rowIndex,rowPinned:this.rowPinned,column:r,colDef:r.getColDef(),data:this.data,node:this,oldValue:n,newValue:s,value:s,source:i}),!1;const l=this.beans.valueService.setValue(this,r,s,i);return this.dispatchCellChangedEvent(r,s,n),this.checkRowSelectable(),l}setGroupValue(t,s){const i=this.beans.columnModel.getCol(t);z(this.groupData)&&(this.groupData={});const o=i.getColId(),r=this.groupData[o];r!==s&&(this.groupData[o]=s,this.dispatchCellChangedEvent(i,s,r))}setAggData(t){const s=this.aggData;if(this.aggData=t,this.localEventService){const i=o=>{const r=this.aggData?this.aggData[o]:void 0,n=s?s[o]:void 0;if(r===n)return;const l=this.beans.columnModel.getCol(o);l&&this.dispatchCellChangedEvent(l,r,n)};for(const o in s)i(o);for(const o in t)(!s||!(o in s))&&i(o)}}updateHasChildren(){let t=this.group&&!this.footer||this.childrenAfterGroup&&this.childrenAfterGroup.length>0;if(Ue(this.beans.gos)){const i=this.beans.gos.get("treeData"),o=this.beans.gos.get("isServerSideGroup");t=!this.stub&&!this.footer&&(i?!!o&&o(this.data):!!this.group)}t!==this.__hasChildren&&(this.__hasChildren=!!t,this.dispatchRowEvent("hasChildrenChanged"))}hasChildren(){return this.__hasChildren==null&&this.updateHasChildren(),this.__hasChildren}dispatchCellChangedEvent(t,s,i){var r;const o={type:"cellChanged",node:this,column:t,newValue:s,oldValue:i};(r=this.localEventService)==null||r.dispatchEvent(o)}resetQuickFilterAggregateText(){this.quickFilterAggregateText=null}isExpandable(){return this.footer?!1:this.beans.columnModel.isPivotMode()?this.hasChildren()&&!this.leafGroup:this.hasChildren()||
50!!this.master}isSelected(){return this.footer?this.sibling.isSelected():this.selected}depthFirstSearch(t){this.childrenAfterGroup&&this.childrenAfterGroup.forEach(s=>s.depthFirstSearch(t)),t(this)}calculateSelectedFromChildren(){var i;let t=!1,s=!1;if(!((i=this.childrenAfterGroup)!=null&&i.length))return this.selectable?this.selected:null;for(let o=0;o<this.childrenAfterGroup.length;o++){const r=this.childrenAfterGroup[o];let n=r.isSelected();if(!r.selectable){const l=r.calculateSelectedFromChildren();if(l===null)continue;n=l}switch(n){case!0:t=!0;break;case!1:s=!0;break;default:return}}if(!(t&&s))return t?!0:s?!1:this.selectable?this.selected:null}setSelectedInitialValue(t){this.selected=t}dispatchRowEvent(t){var s;(s=this.localEventService)==null||s.dispatchEvent({type:t,node:this})}selectThisNode(t,s,i="api"){const o=!this.selectable&&t,r=this.selected===t;if(o||r)return!1;this.selected=t,this.dispatchRowEvent("rowSelected");const n=this.sibling;return n&&n.footer&&n.localEventService&&n.dispatchRowEvent("rowSelected"),this.beans.eventService.dispatchEvent({...this.createGlobalRowEvent("rowSelected"),event:s||null,source:i}),!0}setSelected(t,s=!1,i="api"){if(typeof i=="boolean"){R("since version v30, rowNode.setSelected() property `suppressFinishActions` has been removed, please use `gridApi.setNodesSelected()` for bulk actions, and the event `source` property for ignoring events instead.");return}this.setSelectedParams({newValue:t,clearSelection:s,rangeSelect:!1,source:i})}setSelectedParams(t){return this.rowPinned?(R("cannot select pinned rows"),0):this.id===void 0?(R("cannot select node until id for node is known"),0):this.beans.selectionService.setNodesSelected({...t,nodes:[this.footer?this.sibling:this]})}isRowPinned(){return!!this.rowPinned}addEventListener(t,s){var o;this.localEventService||(this.localEventService=new qt),this.beans.frameworkOverrides.shouldWrapOutgoing&&!this.frameworkEventListenerService&&(this.localEventService.setFrameworkOverrides(this.beans.frameworkOverrides),this.frameworkEventListenerService=new Nr(this.beans.frameworkOverrides));const i=((o=this.frameworkEventListenerService)==null?void 0:o.wrap(s))??s;this.localEventService.addEventListener(t,i)}removeEventListener(t,s){var o;if(!this.localEventService)return;const i=((o=this.frameworkEventListenerService)==null?void 0:o.unwrap(s))??s;this.localEventService.removeEventListener(t,i),this.localEventService.noRegisteredListenersExist()&&(this.localEventService=null)}onMouseEnter(){this.dispatchRowEvent("mouseEnter")}onMouseLeave(){this.dispatchRowEvent("mouseLeave")}isFullWidthCell(){if(R("since version v32.2.0, rowNode.isFullWidthCell() has been deprecated. Instead check `rowNode.detail` followed by the user provided `isFullWidthRow` grid option."),this.detail)return!0;const t=this.beans.gos.getCallback("isFullWidthRow");return t?t({rowNode:this}):!1}getRoute(){if(this.level===-1)return[];if(this.key==null)return;const t=[];let s=this;for(;s&&s.key!=null;)t.push(s.key),s=s.parent;return t.reverse()}createFooter(){if(this.sibling)return;const t=new Ht(this.beans);Object.keys(this).forEach(s=>{op.has(s)||(t[s]=this[s])}),t.footer=!0,t.setRowTop(null),t.setRowIndex(null),t.oldRowTop=null,t.id="rowGroupFooter_"+this.id,t.sibling=this,this.sibling=t}destroyFooter(){this.sibling&&(this.sibling.setRowTop(null),this.sibling.setRowIndex(null),this.sibling=void 0)}setFirstChild(t){this.firstChild!==t&&(this.firstChild=t,this.dispatchRowEvent("firstChildChanged"))}setLastChild(t){this.lastChild!==t&&(this.lastChild=t,this.dispatchRowEvent("lastChildChanged"))}setChildIndex(t){this.childIndex!==t&&(this.childIndex=t,this.dispatchRowEvent("childIndexChanged"))}setDisplayed(t){this.displayed!==t&&(this.displayed=t,this.dispatchRowEvent("displayedChanged"))}setDragging(t){this.dragging!==t&&(this.dragging=t,this.dispatchRowEvent("draggingChanged"))}setHighlighted(t){this.highlighted!==t&&(this.highlighted=t,this.dispatchRowEvent("rowHighlightChanged"))}setAllChildrenCount(t){this.allChildrenCount!==t&&(this.allChildrenCount=t,this.dispatchRowEvent("allChildrenCountChanged"))}setRowIndex(t){this.rowIndex!==t&&(this.rowIndex=t,this.dispatchRowEvent("rowIndexChanged"))}setUiLevel(t){this.uiLevel!==t&&(this.uiLevel=t,this.dispatchRowEvent("uiLevelChanged"))}};bi.ID_PREFIX_ROW_GROUP="row-group-";bi.ID_PREFIX_TOP_PINNED="t-";bi.ID_PREFIX_BOTTOM_PINNED="b-";bi.OBJECT_ID_SEQUENCE=0;var qe=bi,rp=class extends b{constructor(){super(...arguments),this.beanName="filterManager",this.advancedFilterModelUpdateQueue=[]}wireBeans(e){this.columnModel=e.columnModel,this.dataTypeService=e.dataTypeService,this.quickFilterService=e.quickFilterService,this.advancedFilterService=e.advancedFilterService,this.columnFilterService=e.columnFilterService}postConstruct(){const e=this.refreshFiltersForAggregations.bind(this),t=this.updateAdvancedFilterColumns.bind(this);this.addManagedEventListeners({columnValueChanged:e,columnPivotChanged:e,columnPivotModeChanged:e,newColumnsLoaded:t,columnVisible:t,advancedFilterEnabledChanged:({enabled:s})=>this.onAdvancedFilterEnabledChanged(s),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.addManagedPropertyListener("advancedFilterModel",s=>this.setAdvancedFilterModel(s.currentValue)),this.quickFilterService&&this.addManagedListeners(this.quickFilterService,{quickFilterChanged:()=>this.onFilterChanged({source:"quickFilter"})})}isExternalFilterPresentCallback(){const e=this.gos.getCallback("isExternalFilterPresent");return typeof e=="function"?e({}):!1}doesExternalFilterPass(e){const t=this.gos.get("doesExternalFilterPass");return typeof t=="function"?t(e):!1}setFilterModel(e,t="api"){var s;if(this.isAdvancedFilterEnabled()){this.warnAdvancedFilters();return}(s=this.columnFilterService)==null||s.setFilterModel(e,t)}getFilterModel(){var e;return((e=this.columnFilterService)==null?void 0:e.getFilterModel())??{}}isColumnFilterPresent(){var e;return!!((e=this.columnFilterService)!=null&&e.isColumnFilterPresent())}isAggregateFilterPresent(){var e;return!!((e=this.columnFilterService)!=null&&e.isAggregateFilterPresent())}isExternalFilterPresent(){return this.externalFilterPresent}isChildFilterPresent(){return this.isColumnFilterPresent()||this.isQuickFilterPresent()||this.isExternalFilterPresent()||this.isAdvancedFilterPresent()}isAdvancedFilterPresent(){return this.isAdvancedFilterEnabled()&&this.advancedFilterService.isFilterPresent()}onAdvancedFilterEnabledChanged(e){var t,s;e?(t=this.columnFilterService)!=null&&t.disableColumnFilters()&&this.onFilterChanged({source:"advancedFilter"}):(s=this.advancedFilterService)!=null&&s.isFilterPresent()&&(this.advancedFilterService.setModel(null),this.onFilterChanged({source:"advancedFilter"}))}isAdvancedFilterEnabled(){var e;return!!((e=this.advancedFilterService)!=null&&e.isEnabled())}isAdvancedFilterHeaderActive(){return this.isAdvancedFilterEnabled()&&this.advancedFilterService.isHeaderActive()}isAnyFilterPresent(){return this.isQuickFilterPresent()||this.isColumnFilterPresent()||this.isAggregateFilterPresent()||this.isExternalFilterPresent()||this.isAdvancedFilterPresent()}resetQuickFilterCache(){var e;(e=this.quickFilterService)==null||e.resetQuickFilterCache()}refreshFiltersForAggregations(){fi(this.gos)&&this.onFilterChanged()}onFilterChanged(e={}){const{source:t,additionalEventAttributes:s,columns:i=[]}=e;this.externalFilterPresent=this.isExternalFilterPresentCallback(),(this.columnFilterService?this.columnFilterService.updateBeforeFilterChanged(e):K.resolve()).then(()=>{var r;const o={source:t,type:"filterChanged",columns:i};s&&Ee(o,s),this.eventService.dispatchEvent(o),(r=this.columnFilterService)==null||r.updateAfterFilterChanged()})}isSuppressFlashingCellsBecauseFiltering(){var e;return!!((e=this.columnFilterService)!=null&&e.isSuppressFlashingCellsBecauseFiltering())}isQuickFilterPresent(){var e;return!!((e=this.quickFilterService)!=null&&e.isQuickFilterPresent())}updateAggFiltering(){this.aggFiltering=!!fi(this.gos)}isAggregateQuickFilterPresent(){return this.isQuickFilterPresent()&&this.shouldApplyQuickFilterAfterAgg()}isNonAggregateQuickFilterPresent(){return this.isQuickFilterPresent()&&!this.shouldApplyQuickFilterAfterAgg()}shouldApplyQuickFilterAfterAgg(){return(this.aggFiltering||this.columnModel.isPivotMode())&&!this.gos.get("applyQuickFilterBeforePivotOrAgg")}doesRowPassOtherFilters(e,t){return this.doesRowPassFilter({rowNode:t,filterInstanceToSkip:e})}doesRowPassAggregateFilters(e){return!(this.isAggregateQuickFilterPresent()&&!this.quickFilterService.doesRowPassQuickFilter(e.rowNode)||this.isAggregateFilterPresent()&&!this.columnFilterService.doAggregateFiltersPass(e.rowNode,e.filterInstanceToSkip))}doesRowPassFilter(e){return!(this.isNonAggregateQuickFilterPresent()&&!this.quickFilterService.doesRowPassQuickFilter(e.rowNode)||this.isExternalFilterPresent()&&!this.doesExternalFilterPass(e.rowNode)||this.isColumnFilterPresent()&&!this.columnFilterService.doColumnFiltersPass(e.rowNode,e.filterInstanceToSkip)||this.isAdvancedFilterPresent()&&!this.advancedFilterService.doesFilterPass(e.rowNode))}isFilterActive(e){var t;return!!((t=this.columnFilterService)!=null&&t.isFilterActive(e))}getOrCreateFilterWrapper(e){var t;return((t=this.columnFilterService)==null?void 0:t.getOrCreateFilterWrapper(e))??null}getDefaultFloatingFilter(e){return this.columnFilterService.getDefaultFloatingFilter(e)}createFilterParams(e,t){return this.columnFilterService.createFilterParams(e,t)}isFilterAllowed(e){var t;return this.isAdvancedFilterEnabled()?!1:!!((t=this.columnFilterService)!=null&&t.isFilterAllowed(e))}
50getFloatingFilterCompDetails(e,t){var s;return(s=this.columnFilterService)==null?void 0:s.getFloatingFilterCompDetails(e,t)}getCurrentFloatingFilterParentModel(e){var t;return(t=this.columnFilterService)==null?void 0:t.getCurrentFloatingFilterParentModel(e)}destroyFilter(e,t="api"){var s;(s=this.columnFilterService)==null||s.destroyFilter(e,t)}areFilterCompsDifferent(e,t){var s;return!!((s=this.columnFilterService)!=null&&s.areFilterCompsDifferent(e,t))}getAdvancedFilterModel(){return this.isAdvancedFilterEnabled()?this.advancedFilterService.getModel():null}setAdvancedFilterModel(e){var t;if(this.isAdvancedFilterEnabled()){if((t=this.dataTypeService)!=null&&t.isPendingInference()){this.advancedFilterModelUpdateQueue.push(e);return}this.advancedFilterService.setModel(e??null),this.onFilterChanged({source:"advancedFilter"})}}toggleAdvancedFilterBuilder(e,t){this.isAdvancedFilterEnabled()&&this.advancedFilterService.getCtrl().toggleFilterBuilder({source:t,force:e})}updateAdvancedFilterColumns(){this.isAdvancedFilterEnabled()&&this.advancedFilterService.updateValidity()&&this.onFilterChanged({source:"advancedFilter"})}hasFloatingFilters(){var e;return this.isAdvancedFilterEnabled()?!1:!!((e=this.columnFilterService)!=null&&e.hasFloatingFilters())}getFilterInstance(e,t){var s;if(this.isAdvancedFilterEnabled()){this.warnAdvancedFilters();return}return(s=this.columnFilterService)==null?void 0:s.getFilterInstance(e,t)}getColumnFilterInstance(e){var t;return this.isAdvancedFilterEnabled()?(this.warnAdvancedFilters(),Promise.resolve(void 0)):((t=this.columnFilterService)==null?void 0:t.getColumnFilterInstance(e))??Promise.resolve(void 0)}warnAdvancedFilters(){R("Column Filter API methods have been disabled as Advanced Filters are enabled.")}setupAdvancedFilterHeaderComp(e){var t;(t=this.advancedFilterService)==null||t.getCtrl().setupHeaderComp(e)}getHeaderRowCount(){return this.isAdvancedFilterHeaderActive()?1:0}getHeaderHeight(){return this.isAdvancedFilterHeaderActive()?this.advancedFilterService.getCtrl().getHeaderHeight():0}processFilterModelUpdateQueue(){this.advancedFilterModelUpdateQueue.forEach(e=>this.setAdvancedFilterModel(e)),this.advancedFilterModelUpdateQueue=[]}getColumnFilterModel(e){var t;return(t=this.columnFilterService)==null?void 0:t.getColumnFilterModel(e)}setColumnFilterModel(e,t){var s;return this.isAdvancedFilterEnabled()?(this.warnAdvancedFilters(),Promise.resolve()):((s=this.columnFilterService)==null?void 0:s.setColumnFilterModel(e,t))??Promise.resolve()}setColDefPropertiesForDataType(e,t,s){var i;(i=this.columnFilterService)==null||i.setColDefPropertiesForDataType(e,t,s)}},Zr=class extends O{constructor(e,t){super('<div class="ag-filter"></div>'),this.column=e,this.source=t,this.filterWrapper=null}wireBeans(e){this.filterManager=e.filterManager,this.columnModel=e.columnModel}postConstruct(){this.createFilter(!0),this.addManagedEventListeners({filterDestroyed:this.onFilterDestroyed.bind(this)})}hasFilter(){return!!this.filterWrapper}getFilter(){var e;return((e=this.filterWrapper)==null?void 0:e.filterPromise)??null}afterInit(){var e,t;return((t=(e=this.filterWrapper)==null?void 0:e.filterPromise)==null?void 0:t.then(()=>{}))??K.resolve()}afterGuiAttached(e){var t,s;(s=(t=this.filterWrapper)==null?void 0:t.filterPromise)==null||s.then(i=>{var o;(o=i==null?void 0:i.afterGuiAttached)==null||o.call(i,e)})}afterGuiDetached(){var e,t;(t=(e=this.filterWrapper)==null?void 0:e.filterPromise)==null||t.then(s=>{var i;(i=s==null?void 0:s.afterGuiDetached)==null||i.call(s)})}createFilter(e){var i,o;const{column:t,source:s}=this;this.filterWrapper=((i=this.filterManager)==null?void 0:i.getOrCreateFilterWrapper(t))??null,(o=this.filterWrapper)!=null&&o.filterPromise&&this.filterWrapper.filterPromise.then(r=>{const n=r.getGui();E(n)||R(`getGui method from filter returned ${n}; it should be a DOM element.`),this.appendChild(n),e&&this.eventService.dispatchEvent({type:"filterOpened",column:t,source:s,eGui:this.getGui()})})}onFilterDestroyed(e){(e.source==="api"||e.source==="paramsUpdated")&&e.column.getId()===this.column.getId()&&this.columnModel.getColDefCol(this.column)&&(de(this.getGui()),this.createFilter())}destroy(){this.filterWrapper=null,super.destroy()}},Ua="ag-resizer-wrapper",Nt=(e,t)=>
50`<div data-ref="${e}Resizer" class="ag-resizer ag-resizer-${t}"></div>`,np=`<div class="${Ua}"> 51 ${Nt("eTopLeft","topLeft")} 52 ${Nt("eTop","top")} 53 ${Nt("eTopRight","topRight")} 54 ${Nt("eRight","right")} 55 ${Nt("eBottomRight","bottomRight")} 56 ${Nt("eBottom","bottom")} 57 ${Nt("eBottomLeft","bottomLeft")} 58 ${Nt("eLeft","left")} 59 </div>`,wo=class extends b{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=Object.assign({},{popup:!1},t)}wireBeans(e){this.popupService=e.popupService,this.resizeObserverService=e.resizeObserverService,this.dragService=e.dragService}center(){const{clientHeight:e,clientWidth:t}=this.offsetParent,s=t/2-this.getWidth()/2,i=e/2-this.getHeight()/2;this.offsetElement(s,i)}initialisePosition(){if(this.positioned)return;const{centered:e,forcePopupParentAsOffsetParent:t,minWidth:s,width:i,minHeight:o,height:r,x:n,y:l}=this.config;this.offsetParent||this.setOffsetParent();let a=0,d=0;const c=tt(this.element);if(c){const u=this.findBoundaryElement(),h=window.getComputedStyle(u);if(h.minWidth!=null){const p=u.offsetWidth-this.element.offsetWidth;d=parseInt(h.minWidth,10)-p}if(h.minHeight!=null){const p=u.offsetHeight-this.element.offsetHeight;a=parseInt(h.minHeight,10)-p}}if(this.minHeight=o||a,this.minWidth=s||d,i&&this.setWidth(i),r&&this.setHeight(r),(!i||!r)&&this.refreshSize(),e)this.center();else if(n||l)this.offsetElement(n,l);else if(c&&t){let u=this.boundaryEl,h=!0;if(u||(u=this.findBoundaryElement(),h=!1),u){const p=parseFloat(u.style.top),g=parseFloat(u.style.left);h?this.offsetElement(isNaN(g)?0:g,isNaN(p)?0:p):this.setPosition(g,p)}}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 s=this.moveElementDragListener||{eElement:t,onDragStart:this.onMoveStart.bind(this),onDragging:this.onMove.bind(this),onDragStop:this.onMoveEnd.bind(this)};e?(this.dragService.addDragSource(s),this.moveElementDragListener=s):(this.dragService.removeDragSource(s),this.moveElementDragListener=void 0)}setResizable(e){if(this.clearResizeListeners(),e?this.addResizers():this.removeResizers(),typeof e=="boolean"){if(e===!1)return;e={topLeft:e,top:e,topRight:e,right:e,bottomRight:e,bottom:e,bottomLeft:e,left:e}}Object.keys(e).forEach(t=>{const i=!!e[t],o=this.getResizerElement(t),r={dragStartPixels:0,eElement:o,onDragStart:n=>this.onResizeStart(n,t),onDragging:this.onResize.bind(this),onDragStop:n=>this.onResizeEnd(n,t)};(i||!this.isAlive()&&!i)&&(i?(this.dragService.addDragSource(r),this.resizeListeners.push(r),o.style.pointerEvents="all"):o.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;t!==-1&&(this.element.style.width=`${t}px`),e!==-1&&(this.element.style.height=`${e}px`)}getHeight(){return this.element.offsetHeight}setHeight(e){const{popup:t}=this.config,s=this.element;let i=!1;if(typeof e=="string"&&e.indexOf("%")!==-1)ii(s,e),e=ba(s),i=!0;else if(e=Math.max(this.minHeight,e),this.positioned){const o=this.getAvailableHeight();o&&e>o&&(e=o)}this.getHeight()!==e&&(i?(s.style.maxHeight="unset",s.style.minHeight="unset"):t?ii(s,e):(s.style.height=`${e}px`,s.style.flex="0 0 auto",this.lastSize.height=typeof e=="number"?e:parseFloat(e)))}getAvailableHeight(){const{popup:e,forcePopupParentAsOffsetParent:t}=this.config;this.positioned||this.initialisePosition();const{clientHeight:s}=this.offsetParent;if(!s)return null;const i=this.element.getBoundingClientRect(),o=this.offsetParent.getBoundingClientRect(),r=e?this.position.y:i.top,n=e?0:o.top;let l=0;if(t){const d=this.element.parentElement;if(d){const{bottom:c}=d.getBoundingClientRect();l=c-i.bottom}}return s+n-r-l}getWidth(){return this.element.offsetWidth}setWidth(e){const t=this.element,{popup:s}=this.config;let i=!1;if(typeof e=="string"&&e.indexOf("%")!==-1)pt(t,e),e=Xi(t),i=!0;else if(this.positioned){e=Math.max(this.minWidth,e);const{clientWidth:o}=this.offsetParent,r=s?this.position.x:this.element.getBoundingClientRect().left;o&&e+r>o&&(e=o-r)}this.getWidth()!==e&&(i?(t.style.maxWidth="unset",t.style.minWidth="unset"):this.config.popup?pt(t,e):(t.style.width=`${e}px`,t.style.flex=" unset",this.lastSize.width=typeof e=="number"?e:parseFloat(e)))}offsetElement(e=0,t=0){const{forcePopupParentAsOffsetParent:s}=this.config,i=s?this.boundaryEl:this.element;i&&(this.popupService.positionPopup({ePopup:i,keepWithinBounds:!0,skipObserver:this.movable||this.isResizable(),updatePosition:()=>({x:e,y:t})}),this.setPosition(parseFloat(i.style.left),parseFloat(i.style.top)))}constrainSizeToAvailableHeight(e){if(!this.config.forcePopupParentAsOffsetParent)return;const t=()=>{const s=this.getAvailableHeight();this.element.style.setProperty("max-height",`${s}px`)};e?this.resizeObserverSubscriber=this.resizeObserverService.observeResize(this.popupService.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:s,isTop:i,anywhereWithin:o,topBuffer:r}=e,n=t.clientX-this.dragStartPosition.x,l=t.clientY-this.dragStartPosition.y,a=this.shouldSkipX(t,!!s,!!o,n)?0:n,d=this.shouldSkipY(t,!!i,r,l)?0:l;return{movementX:a,movementY:d}}shouldSkipX(e,t,s,i){const o=this.element.getBoundingClientRect(),r=this.offsetParent.getBoundingClientRect(),n=this.boundaryEl.getBoundingClientRect(),l=this.config.popup?this.position.x:o.left;let a=l<=0&&r.left>=e.clientX||r.right<=e.clientX&&r.right<=n.right;return a?!0:(t?a=i<0&&e.clientX>l+r.left||i>0&&e.clientX<l+r.left:s?a=i<0&&e.clientX>n.right||i>0&&e.clientX<l+r.left:a=i<0&&e.clientX>n.right||i>0&&e.clientX<n.right,a)}shouldSkipY(e,t,s=0,i){const o=this.element.getBoundingClientRect(),r=this.offsetParent.getBoundingClientRect(),n=this.boundaryEl.getBoundingClientRect(),l=this.config.popup?this.position.y:o.top;let a=l<=0&&r.top>=e.clientY||r.bottom<=e.clientY&&r.bottom<=n.bottom;return a?!0:(t?a=i<0&&e.clientY>l+r.top+s||i>
590&&e.clientY<l+r.top:a=i<0&&e.clientY>n.bottom||i>0&&e.clientY<n.bottom,a)}createResizeMap(){const e=this.element;this.resizerMap={topLeft:{element:e.querySelector("[data-ref=eTopLeftResizer]")},top:{element:e.querySelector("[data-ref=eTopResizer]")},topRight:{element:e.querySelector("[data-ref=eTopRightResizer]")},right:{element:e.querySelector("[data-ref=eRightResizer]")},bottomRight:{element:e.querySelector("[data-ref=eBottomRightResizer]")},bottom:{element:e.querySelector("[data-ref=eBottomResizer]")},bottomLeft:{element:e.querySelector("[data-ref=eBottomLeftResizer]")},left:{element:e.querySelector("[data-ref=eLeftResizer]")}}}addResizers(){if(this.resizersAdded)return;const e=this.element;if(!e)return;const s=new DOMParser().parseFromString(np,"text/html").body;e.appendChild(s.firstChild),this.createResizeMap(),this.resizersAdded=!0}removeResizers(){this.resizerMap=void 0;const e=this.element.querySelector(`.${Ua}`);e&&this.element.removeChild(e),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:s,forcePopupParentAsOffsetParent:i}=this.config;!s&&!i&&this.applySizeToSiblings(this.currentResizer.isBottom||this.currentResizer.isTop),this.isResizing=!0,this.updateDragStartPosition(e.clientX,e.clientY)}getSiblings(){const t=this.element.parentElement;return t?Array.prototype.slice.call(t.children).filter(s=>!s.classList.contains("ag-hidden")):null}getMinSizeOfSiblings(){const e=this.getSiblings()||[];let t=0,s=0;for(let i=0;i<e.length;i++){const o=e[i],r=!!o.style.flex&&o.style.flex!=="0 0 auto";if(o===this.element)continue;let n=this.minHeight||0,l=this.minWidth||0;if(r){const a=window.getComputedStyle(o);a.minHeight&&(n=parseInt(a.minHeight,10)),a.minWidth&&(l=parseInt(a.minWidth,10))}else n=o.offsetHeight,l=o.offsetWidth;t+=n,s+=l}return{height:t,width:s}}applySizeToSiblings(e){let t=null;const s=this.getSiblings();if(s){for(let i=0;i<s.length;i++){const o=s[i];o!==t&&(e?o.style.height=`${o.offsetHeight}px`:o.style.width=`${o.offsetWidth}px`,o.style.flex="0 0 auto",o===this.element&&(t=s[i+1]))}t&&(t.style.removeProperty("height"),t.style.removeProperty("min-height"),t.style.removeProperty("max-height"),t.style.flex="1 1 auto")}}isResizable(){return Object.values(this.resizable).some(e=>e)}onResize(e){if(!this.isResizing||!this.currentResizer)return;const{popup:t,forcePopupParentAsOffsetParent:s}=this.config,{isTop:i,isRight:o,isBottom:r,isLeft:n}=this.currentResizer,l=o||n,a=r||i,{movementX:d,movementY:c}=this.calculateMouseMovement({e,isLeft:n,isTop:i}),u=this.position.x,h=this.position.y;let p=0,g=0;if(l&&d){const f=n?-1:1,m=this.getWidth(),v=m+d*f;let y=!1;n&&(p=m-v,(u+p<=0||v<=this.minWidth)&&(y=!0,p=0)),y||this.setWidth(v)}if(a&&c){const f=i?-1:1,m=this.getHeight(),v=m+c*f;let y=!1;i?(g=m-v,(h+g<=0||v<=this.minHeight)&&(y=!0,g=0)):!this.config.popup&&!this.config.forcePopupParentAsOffsetParent&&m<v&&this.getMinSizeOfSiblings().height+v>this.element.parentElement.offsetHeight&&(y=!0),y||this.setHeight(v)}this.updateDragStartPosition(e.clientX,e.clientY),((t||s)&&p||g)&&this.offsetElement(u+p,h+g)}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:s}=this.position;let i;this.config.calculateTopBuffer&&(i=this.config.calculateTopBuffer());const{movementX:o,movementY:r}=this.calculateMouseMovement({e,isTop:!0,anywhereWithin:!0,topBuffer:i});this.offsetElement(t+o,s+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.offsetParent=this.popupService.getPopupParent():this.offsetParent=this.element.offsetParent}findBoundaryElement(){let e=this.element;for(;e;){if(window.getComputedStyle(e).position!=="static")return e;e=e.parentElement}return this.element}clearResizeListeners(){for(;this.resizeListeners.length;){const e=this.resizeListeners.pop();this.dragService.removeDragSource(e)}}destroy(){super.destroy(),this.moveElementDragListener&&this.dragService.removeDragSource(this.moveElementDragListener),this.constrainSizeToAvailableHeight(!1),this.clearResizeListeners(),this.removeResizers()}},_a=class Ka extends b{constructor(t,s={}){super(),this.eFocusableElement=t,this.callbacks=s,this.callbacks={shouldStopEventPropagation:()=>!1,onTabKeyDown:i=>{if(i.defaultPrevented)return;const o=this.focusService.findNextFocusableElement(this.eFocusableElement,!1,i.shiftKey);o&&(o.focus(),i.preventDefault())},...s}}wireBeans(t){this.focusService=t.focusService}postConstruct(){this.eFocusableElement.classList.add(Ka.FOCUS_MANAGED_CLASS),this.addKeyDownListeners(this.eFocusableElement),this.callbacks.onFocusIn&&this.addManagedElementListeners(this.eFocusableElement,{focusin:this.callbacks.onFocusIn}),this.callbacks.onFocusOut&&this.addManagedElementListeners(this.eFocusableElement,{focusout:this.callbacks.onFocusOut})}addKeyDownListeners(t){this.addManagedElementListeners(t,{keydown:s=>{if(!(s.defaultPrevented||ht(s))){if(this.callbacks.shouldStopEventPropagation(s)){Rt(s);return}s.key===S.TAB?this.callbacks.onTabKeyDown(s):this.callbacks.handleKeyDown&&this.callbacks.handleKeyDown(s)}}})}};_a.FOCUS_MANAGED_CLASS="ag-focus-managed";var kt=_a,$a={applyFilter:"Apply",clearFilter:"Clear",resetFilter:"Reset",cancelFilter:"Cancel",textFilter:"Text Filter",numberFilter:"Number 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"};function Jr(e,t){return io(e)?(e.debounceMs!=null&&R("debounceMs is ignored when apply button is present"),0):e.debounceMs!=null?e.debounceMs:t}function io(e){return!!e.buttons&&e.buttons.indexOf("apply")>=0}var ja=class extends O{constructor(e){super(),this.filterNameKey=e,this.applyActive=!1,this.hidePopup=null,this.debouncePending=!1,this.appliedModel=null,this.eFilterBody=P,this.buttonListeners=[]}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.resetTemplate(),this.createManagedBean(new kt(this.getFocusableElement(),{handleKeyDown:this.handleKeyDown.bind(this)})),this.positionableFeature=new wo(this.getPositionableElement(),{forcePopupParentAsOffsetParent:!0}),this.createBean(this.positionableFeature)}handleKeyDown(e){}getFilterTitle(){return this.translate(this.filterNameKey)}isFilterActive(){return!!this.appliedModel}resetTemplate(e){let t=this.getGui();t&&t.removeEventListener("submit",this.onFormSubmit);const s=` 60 <form class="ag-filter-wrapper"> 61 <div class="ag-filter-body-wrapper ag-${this.getCssIdentifier()}-body-wrapper" data-ref="eFilterBody"> 62 ${this.createBodyTemplate()} 63 </div> 64 </form>`;this.setTemplate(s,this.getAgComponents(),e),t=this.getGui(),t&&t.addEventListener("submit",this.onFormSubmit)}isReadOnly(){return!!this.providedFilterParams.readOnly}init(e){this.setParams(e),this.resetUiToDefaults(!0).then(()=>{this.updateUiVisibility(),this.setupOnBtApplyDebounce()})}setParams(e){this.providedFilterParams=e,this.applyActive=io(e),this.resetButtonsPanel(e)}updateParams(e){this.providedFilterParams=e,this.applyActive=io(e),this.resetUiToActiveModel(this.getModel(),()=>{this.updateUiVisibility(),this.setupOnBtApplyDebounce()})}resetButtonsPanel(e,t){const{buttons:s,readOnly:i}=t??{},{buttons:o,readOnly:r}=e;if(i===r&&ci(s,o))return;const n=o&&o.length>0&&!this.isReadOnly();if(this.eButtonsPanel?(de(this.eButtonsPanel),this.buttonListeners.forEac
64h(d=>d()),this.buttonListeners=[]):n&&(this.eButtonsPanel=document.createElement("div"),this.eButtonsPanel.classList.add("ag-filter-apply-panel")),!n){this.eButtonsPanel&&Qe(this.eButtonsPanel);return}const l=document.createDocumentFragment(),a=d=>{let c,u;switch(d){case"apply":c=this.translate("applyFilter"),u=g=>this.onBtApply(!1,!1,g);break;case"clear":c=this.translate("clearFilter"),u=()=>this.onBtClear();break;case"reset":c=this.translate("resetFilter"),u=()=>this.onBtReset();break;case"cancel":c=this.translate("cancelFilter"),u=g=>{this.onBtCancel(g)};break;default:R("Unknown button type specified");return}const p=Xe(`<button 65 type="${d==="apply"?"submit":"button"}" 66 data-ref="${d}FilterButton" 67 class="ag-button ag-standard-button ag-filter-apply-panel-button" 68 >${c} 69 </button>`);this.buttonListeners.push(...this.addManagedElementListeners(p,{click:u})),l.append(p)};o.forEach(d=>a(d)),this.eButtonsPanel.append(l),this.getGui().appendChild(this.eButtonsPanel)}getDefaultDebounceMs(){return 0}setupOnBtApplyDebounce(){const e=Jr(this.providedFilterParams,this.getDefaultDebounceMs()),t=Me(this.checkApplyDebounce.bind(this),e);this.onBtApplyDebounce=()=>{this.debouncePending=!0,t()}}checkApplyDebounce(){this.debouncePending&&(this.debouncePending=!1,this.onBtApply())}getModel(){return this.appliedModel?this.appliedModel:null}setModel(e){return(e!=null?this.setModelIntoUi(e):this.resetUiToDefaults()).then(()=>{this.updateUiVisibility(),this.applyModel("api")})}onBtCancel(e){this.resetUiToActiveModel(this.getModel(),()=>{this.handleCancelEnd(e)})}handleCancelEnd(e){this.providedFilterParams.closeOnApply&&this.close(e)}resetUiToActiveModel(e,t){const s=()=>{this.onUiChanged(!1,"prevent"),t==null||t()};e!=null?this.setModelIntoUi(e).then(s):this.resetUiToDefaults().then(s)}onBtClear(){this.resetUiToDefaults().then(()=>this.onUiChanged())}onBtReset(){this.onBtClear(),this.onBtApply()}applyModel(e="api"){const t=this.getModelFromUi();if(!this.isModelValid(t))return!1;const s=this.appliedModel;return this.appliedModel=t,!this.areModelsEqual(s,t)}isModelValid(e){return!0}onFormSubmit(e){e.preventDefault()}onBtApply(e=!1,t=!1,s){s&&s.preventDefault(),this.applyModel(t?"rowDataUpdated":"ui")&&this.providedFilterParams.filterChangedCallback({afterFloatingFilter:e,afterDataChange:t,source:"columnFilter"});const{closeOnApply:i}=this.providedFilterParams;i&&this.applyActive&&!e&&!t&&this.close(s)}onNewRowsLoaded(){}close(e){if(!this.hidePopup)return;const t=e,s=t&&t.key;let i;(s==="Enter"||s==="Space")&&(i={keyboardEvent:t}),this.hidePopup(i),this.hidePopup=null}onUiChanged(e=!1,t){if(this.updateUiVisibility(),this.providedFilterParams.filterModifiedCallback(),this.applyActive&&!this.isReadOnly()){const s=this.isModelValid(this.getModelFromUi()),i=this.queryForHtmlElement('[data-ref="applyFilterButton"]');i&&vi(i,!s)}e&&!t||t==="immediately"?this.onBtApply(e):(!this.applyActive&&!t||t==="debounce")&&this.onBtApplyDebounce()}afterGuiAttached(e){e&&(this.hidePopup=e.hidePopup),this.refreshFilterResizer(e==null?void 0:e.container)}refreshFilterResizer(e){if(!this.positionableFeature||e==="toolPanel")return;const t=e==="floatingFilter"||e==="columnFilter",{positionableFeature:s,gos:i}=this;t?(s.restoreLastSize(),s.setResizable(i.get("enableRtl")?{bottom:!0,bottomLeft:!0,left:!0}:{bottom:!0,bottomRight:!0,right:!0})):(this.positionableFeature.removeSizeFromEl(),this.positionableFeature.setResizable(!1)),this.positionableFeature.constrainSizeToAvailableHeight(!0)}afterGuiDetached(){this.checkApplyDebounce(),this.positionableFeature&&this.positionableFeature.constrainSizeToAvailableHeight(!1)}refresh(e){const t=this.providedFilterParams;return this.providedFilterParams=e,this.resetButtonsPanel(e,t),!0}destroy(){const e=this.getGui();e&&e.removeEventListener("submit",this.onFormSubmit),this.hidePopup=null,this.positionableFeature&&(this.positionableFeature=this.destroyBean(this.positionableFeature)),this.appliedModel=null,super.destroy()}translate(e){return this.localeService.getLocaleTextFunc()(e,$a[e])}getCellValue(e){return this.providedFilterParams.getValue(e)}getPositionableElement(){return this.eFilterBody}},lp=class extends vo{constructor(e){super(e,"ag-radio-button","radio")}isSelected(){return this.eInput.checked}toggle(){this.eInput.disabled||this.isSelected()||this.setValue(!0)}
69addInputListeners(){super.addInputListeners(),this.addManagedEventListeners({checkboxChanged:this.onChange.bind(this)})}onChange(e){e.selected&&e.name&&this.eInput.name&&this.eInput.name===e.name&&e.id&&this.eInput.id!==e.id&&this.setValue(!1,!0)}},ap=class extends O{constructor(e="default",t=!1){super(`<div class="ag-list ag-${e}-list" role="listbox"></div>`),this.cssIdentifier=e,this.unFocusable=t,this.activeClass="ag-active-item",this.options=[],this.itemEls=[]}postConstruct(){const e=this.getGui();this.addManagedElementListeners(e,{mouseleave:()=>this.clearHighlighted()}),!this.unFocusable&&this.addManagedElementListeners(e,{keydown:this.handleKeyDown.bind(this)})}handleKeyDown(e){const t=e.key;switch(t){case S.ENTER:if(!this.highlightedEl)this.setValue(this.getValue());else{const s=this.itemEls.indexOf(this.highlightedEl);this.setValueByIndex(s)}break;case S.DOWN:case S.UP:e.preventDefault(),this.navigate(t);break;case S.PAGE_DOWN:case S.PAGE_UP:case S.PAGE_HOME:case S.PAGE_END:e.preventDefault(),this.navigateToPage(t);break}}navigate(e){const t=e===S.DOWN;let s;if(!this.highlightedEl)s=this.itemEls[t?0:this.itemEls.length-1];else{let o=this.itemEls.indexOf(this.highlightedEl)+(t?1:-1);o=Math.min(Math.max(o,0),this.itemEls.length-1),s=this.itemEls[o]}this.highlightItem(s)}navigateToPage(e){if(!this.highlightedEl||this.itemEls.length===0)return;const t=this.itemEls.indexOf(this.highlightedEl),s=this.options.length-1,i=this.itemEls[0].clientHeight,o=Math.floor(this.getGui().clientHeight/i);let r=-1;e===S.PAGE_HOME?r=0:e===S.PAGE_END?r=s:e===S.PAGE_DOWN?r=Math.min(t+o,s):e===S.PAGE_UP&&(r=Math.max(t-o,0)),r!==-1&&this.highlightItem(this.itemEls[r])}addOptions(e){return e.forEach(t=>this.addOption(t)),this}addOption(e){const{value:t,text:s}=e,i=s||t;return this.options.push({value:t,text:i}),this.renderOption(t,i),this.updateIndices(),this}clearOptions(){this.options=[],this.reset(!0),this.itemEls.forEach(e=>{Qe(e)}),this.itemEls=[]}updateIndices(){const e=this.getGui().querySelectorAll(".ag-list-item");e.forEach((t,s)=>{_r(t,s+1),Ur(t,e.length)})}renderOption(e,t){const s=le(this.gos),i=s.createElement("div");he(i,"option"),i.classList.add("ag-list-item",`ag-${this.cssIdentifier}-list-item`);const o=s.createElement("span");i.appendChild(o),o.textContent=t,this.unFocusable||(i.tabIndex=-1),this.itemEls.push(i),this.addManagedListeners(i,{mouseover:()=>this.highlightItem(i),mousedown:r=>{r.preventDefault(),r.stopPropagation(),this.setValue(e)}}),this.createManagedBean(new us({getTooltipValue:()=>t,getGui:()=>i,getLocation:()=>"UNKNOWN",shouldDisplayTooltip:()=>o.scrollWidth>o.clientWidth})),this.getGui().appendChild(i)}setValue(e,t){if(this.value===e)return this.fireItemSelected(),this;if(e==null)return this.reset(t),this;const s=this.options.findIndex(i=>i.value===e);if(s!==-1){const i=this.options[s];this.value=i.value,this.displayValue=i.text,this.highlightItem(this.itemEls[s]),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(t=>t.value===this.value);e!==-1&&this.highlightItem(this.itemEls[e])}reset(e){this.value=null,this.displayValue=null,this.clearHighlighted(),e||this.fireChangeEvent()}highlightItem(e){if(!tt(e))return;this.clearHighlighted(),this.highlightedEl=e,this.highlightedEl.classList.add(this.activeClass),Qi(this.highlightedEl,!0);const t=this.getGui(),{scrollTop:s,clientHeight:i}=t,{offsetTop:o,offsetHeight:r}=e;(o+r>s+i||o<s)&&this.highlightedEl.scrollIntoView({block:"nearest"}),this.unFocusable||this.highlightedEl.focus()}clearHighlighted(){!this.highlightedEl||!tt(this.highlightedEl)||(this.highlightedEl.classList.remove(this.activeClass),Qi(this.highlightedEl,!1),this.highlightedEl=null)}fireChangeEvent(){this.dispatchLocalEvent({type:"fieldValueChanged"}),this.fireItemSelected()}fireItemSelected(){this.dispatchLocalEvent({type:"selectedItem"})}},dp=class extends ka{constructor(e){if(super(e,(e==null?void 0:e.template)||` 70 <div class="ag-picker-field" role="presentation"> 71 <div data-ref="eLabel"></div> 72 <div data-ref="eWrapper" class="ag-wrapper ag-picker-field-wrapper ag-picker-collapsed"> 73 <div data-ref="eDisplayField" class="ag-picker-field-display"></div> 74 <div data-ref="eIcon" class="ag-picker-field-icon" aria-hidden="true"></div> 75 </div> 76 </div>`,(e==null?void 0:e.agComponents)||[],e==null?void 0:e.className),this.isPickerDisplayed=!1,this.skipClick=!1,this.pickerGap=4,this.hideCurrentPicker=null,this.eLabel=P,this.eWrapper=P,this.eDisplayField=P,this.eIcon=P,this.ariaRole=e==null?void 0:e.ariaRole,this.onPickerFocusIn=this.onPickerFocusIn.bind(this),this.onPickerFocusOut=this.onPickerFocusOut.bind(this),!e)return;const{pickerGap:t,maxPickerHeight:s,variableWidth:i,minPickerWidth:o,maxPickerWidth:r}=e;t!=null&&(this.pickerGap=t),this.variableWidth=!!i,s!=null&&this.setPickerMaxHeight(s),o!=null&&this.setPickerMinWidth(o),r!=null&&this.setPickerMaxWidth(r)}wireBeans(e){this.popupService=e.popupService}
76postConstruct(){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:s,inputWidth:i}=this.config;if(s){const o=N(s,this.gos);o&&this.eIcon.appendChild(o)}i!=null&&this.setInputWidth(i)}setupAria(){const e=this.getAriaElement();e.setAttribute("tabindex",this.gos.get("tabIndex").toString()),Ft(e,!1),this.ariaRole&&he(e,this.ariaRole)}onLabelOrWrapperMouseDown(e){if(e){const t=this.getFocusableElement();if(t!==this.eWrapper&&(e==null?void 0:e.target)===t)return;e.preventDefault(),this.getFocusableElement().focus()}if(this.skipClick){this.skipClick=!1;return}this.isDisabled()||(this.isPickerDisplayed?this.hidePicker():this.showPicker())}onKeyDown(e){switch(e.key){case S.UP:case S.DOWN:case S.ENTER:case S.SPACE:e.preventDefault(),this.onLabelOrWrapperMouseDown();break;case S.ESCAPE:this.isPickerDisplayed&&(e.preventDefault(),e.stopPropagation(),this.hideCurrentPicker&&this.hideCurrentPicker());break}}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.localeService.getLocaleTextFunc(),{pickerAriaLabelKey:s,pickerAriaLabelValue:i,modalPicker:o=!0}=this.config,r={modal:o,eChild:e,closeOnEsc:!0,closedCallback:()=>{const h=gi(this.gos);this.beforeHidePicker(),h&&this.isAlive()&&this.getFocusableElement().focus()},ariaLabel:t(s,i),anchorToElement:this.eWrapper};e.style.position="absolute";const n=this.popupService.addPopup(r),{maxPickerHeight:l,minPickerWidth:a,maxPickerWidth:d,variableWidth:c}=this;c?(a&&(e.style.minWidth=a),e.style.width=Yr(Xi(this.eWrapper)),d&&(e.style.maxWidth=d)):to(e,d??Xi(this.eWrapper));const u=l??`${mo(this.popupService.getPopupParent())}px`;return e.style.setProperty("max-height",u),this.alignPickerToComponent(),n.hideFunc}alignPickerToComponent(){if(!this.pickerComponent)return;const{pickerType:e}=this.config,{pickerGap:t}=this,s=this.gos.get("enableRtl")?"right":"left";this.popupService.positionPopupByComponent({type:e,eventSource:this.eWrapper,ePopup:this.pickerComponent.getGui(),position:"under",alignSide:s,keepWithinBounds:!0,nudgeY:t})}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;const t=this.getAriaElement();Ft(t,e),this.eWrapper.classList.toggle("ag-picker-expanded",e),this.eWrapper.classList.toggle("ag-picker-collapsed",!e)}onPickerFocusIn(){this.togglePickerHasFocus(!0)}onPickerFocusOut(e){var t;(t=this.pickerComponent)!=null&&t.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()}setInputWidth(e){return to(this.eWrapper,e),this}getFocusableElement(){return this.eWrapper}setPickerGap(e){return this.pickerGap=e,this}setPickerMinWidth(e){return typeof e=="number"&&(e=`${e}px`),this.minPickerWidth=e??void 0,this}setPickerMaxWidth(e){return typeof e=="number"&&(e=`${e}px`),this.maxPickerWidth=e??void 0,this}setPickerMaxHeight(e){return typeof e=="number"&&(e=`${e}px`),this.maxPickerHeight=e??void 0,this}destroy(){this.hidePicker(),super.destroy()}},yo=class extends dp{constructor(e){super({pickerAriaLabelKey:"ariaLabelSelectField",pickerAriaLabelValue:"Select Field",pickerType:"ag-list",className:"ag-select",pickerIcon:"smallDown",ariaRole:"combobox",...e})}
76postConstruct(){super.postConstruct(),this.createListComponent(),this.eWrapper.tabIndex=this.gos.get("tabIndex");const{options:e,value:t,placeholder:s}=this.config;e!=null&&this.addOptions(e),t!=null&&this.setValue(t,!0),s&&t==null&&(this.eDisplayField.textContent=s),this.addManagedElementListeners(this.eWrapper,{focusout:this.onWrapperFocusOut.bind(this)})}onWrapperFocusOut(e){this.eWrapper.contains(e.relatedTarget)||this.hidePicker()}createListComponent(){this.listComponent=this.createBean(new ap("select",!0)),this.listComponent.setParentComponent(this);const e=this.listComponent.getAriaElement(),t=`ag-select-list-${this.listComponent.getCompId()}`;e.setAttribute("id",t),Ca(this.getAriaElement(),e),this.listComponent.addManagedListeners(this.listComponent,{selectedItem:()=>{this.hidePicker(),this.dispatchLocalEvent({type:"selectedItem"})}}),this.listComponent.addManagedListeners(this.listComponent,{fieldValueChanged:()=>{this.listComponent&&(this.setValue(this.listComponent.getValue(),!1,!0),this.hidePicker())}})}createPickerComponent(){return this.listComponent}onKeyDown(e){var s;const{key:t}=e;switch(t===S.TAB&&this.hidePicker(),t){case S.ENTER:case S.UP:case S.DOWN:case S.PAGE_UP:case S.PAGE_DOWN:case S.PAGE_HOME:case S.PAGE_END:e.preventDefault(),this.isPickerDisplayed?(s=this.listComponent)==null||s.handleKeyDown(e):super.onKeyDown(e);break;case S.ESCAPE:super.onKeyDown(e);break;case S.SPACE:this.isPickerDisplayed?e.preventDefault():super.onKeyDown(e);break}}showPicker(){this.listComponent&&(super.showPicker(),this.listComponent.refreshHighlighted())}addOptions(e){return e.forEach(t=>this.addOption(t)),this}addOption(e){return this.listComponent.addOption(e),this}clearOptions(){var e;return(e=this.listComponent)==null||e.clearOptions(),this}setValue(e,t,s){if(this.value===e||!this.listComponent)return this;if(s||this.listComponent.setValue(e,!0),this.listComponent.getValue()===this.getValue())return this;let o=this.listComponent.getDisplayValue();return o==null&&this.config.placeholder&&(o=this.config.placeholder),this.eDisplayField.textContent=o,this.setTooltip({newTooltipText:o??null,shouldDisplayTooltip:()=>this.eDisplayField.scrollWidth>this.eDisplayField.clientWidth}),super.setValue(e,t)}destroy(){this.listComponent&&(this.listComponent=this.destroyBean(this.listComponent)),super.destroy()}},cp={selector:"AG-SELECT",component:yo},qa=class{constructor(){this.customFilterOptions={}}init(e,t){this.filterOptions=e.filterOptions||t,this.mapCustomOptions(),this.selectDefaultItem(e)}getFilterOptions(){return this.filterOptions}mapCustomOptions(){this.filterOptions&&this.filterOptions.forEach(e=>{if(typeof e=="string")return;const t=[["displayKey"],["displayName"],["predicate","test"]],s=i=>i.some(o=>e[o]!=null)?!0:(R(`ignoring FilterOptionDef as it doesn't contain one of '${i}'`),!1);if(!t.every(s)){this.filterOptions=this.filterOptions.filter(i=>i===e)||[];return}this.customFilterOptions[e.displayKey]=e})}selectDefaultItem(e){if(e.defaultOption)this.defaultOption=e.defaultOption;else if(this.filterOptions.length>=1){const t=this.filterOptions[0];typeof t=="string"?this.defaultOption=t:t.displayKey?this.defaultOption=t.displayKey:R("invalid FilterOptionDef supplied as it doesn't contain a 'displayKey'")}else R("no filter options for filter")}getDefaultOption(){return this.defaultOption}getCustomOption(e){return this.customFilterOptions[e]}},Ya=class extends ja{constructor(){super(...arguments),this.eTypes=[],this.eJoinOperatorPanels=[],this.eJoinOperatorsAnd=[],this.eJoinOperatorsOr=[],this.eConditionBodies=[],this.listener=()=>this.onUiChanged(),this.lastUiCompletePosition=null,this.joinOperatorId=0}getNumberOfInputs(e){const t=this.optionsFactory.getCustomOption(e);if(t){const{numberOfInputs:i}=t;return i??1}return e&&["empty","notBlank","blank"].indexOf(e)>=0?0:e==="inRange"?2:1}onFloatingFilterChanged(e,t){this.setTypeFromFloatingFilter(e),this.setValueFromFloatingFilter(t),this.onUiChanged(!0)}setTypeFromFloatingFilter(e){this.eTypes.forEach((t,s)=>{s===0?t.setValue(e,!0):t.setValue(this.optionsFactory.getDefaultOption(),!0)})}getModelFromUi(){const e=this.getUiCompleteConditions();return e.length===0?null:this.maxNumConditions>1&&e.length>1?{filterType:this.getFilterType(),operator:this.getJoinOperator(),conditions:e}:e[0]}getConditionTypes(){return this.eTypes.map(e=>e.getValue())}getConditionType(e){return this.eTypes[e].getValue()}getJoinOperator(){return this.eJoinOperatorsOr.length===0?this.defaultJoinOperator:this.eJoinOperatorsOr[0].getValue()===!0?"OR":"AND"}areModelsEqual(e,t){if(!e&&!t)return!0;
76if(!e&&t||e&&!t)return!1;const s=!e.operator,i=!t.operator;if(!s&&i||s&&!i)return!1;let r;if(s){const n=e,l=t;r=this.areSimpleModelsEqual(n,l)}else{const n=e,l=t;r=n.operator===l.operator&&Je(n.conditions,l.conditions,(a,d)=>this.areSimpleModelsEqual(a,d))}return r}shouldRefresh(e){var r;const t=this.getModel(),s=t?t.conditions??[t]:null,i=((r=e.filterOptions)==null?void 0:r.map(n=>typeof n=="string"?n:n.displayKey))??this.getDefaultFilterOptions();return!(!(!s||s.every(n=>i.find(l=>l===n.type)!==void 0))||typeof e.maxNumConditions=="number"&&s&&s.length>e.maxNumConditions)}refresh(e){return!this.shouldRefresh(e)||!super.refresh(e)?!1:(this.setParams(e),this.removeConditionsAndOperators(0),this.createOption(),this.setModel(this.getModel()),!0)}setModelIntoUi(e){if(e.operator){const s=e;let i=s.conditions;i==null&&(i=[],R("Filter model is missing 'conditions'"));const o=this.validateAndUpdateConditions(i),r=this.getNumConditions();if(o<r)this.removeConditionsAndOperators(o);else if(o>r)for(let l=r;l<o;l++)this.createJoinOperatorPanel(),this.createOption();const n=s.operator==="OR";this.eJoinOperatorsAnd.forEach(l=>l.setValue(!n,!0)),this.eJoinOperatorsOr.forEach(l=>
76l.setValue(n,!0)),i.forEach((l,a)=>{this.eTypes[a].setValue(l.type,!0),this.setConditionIntoUi(l,a)})}else{const s=e;this.getNumConditions()>1&&this.removeConditionsAndOperators(1),this.eTypes[0].setValue(s.type,!0),this.setConditionIntoUi(s,0)}return this.lastUiCompletePosition=this.getNumConditions()-1,this.createMissingConditionsAndOperators(),this.onUiChanged(),K.resolve()}validateAndUpdateConditions(e){let t=e.length;return t>this.maxNumConditions&&(e.splice(this.maxNumConditions),R('Filter Model contains more conditions than "filterParams.maxNumConditions". Additional conditions have been ignored.'),t=this.maxNumConditions),t}doesFilterPass(e){const t=this.getModel();if(t==null)return!0;const{operator:s}=t,i=[];if(s){const r=t;i.push(...r.conditions??[])}else i.push(t);return i[s&&s==="OR"?"some":"every"](r=>this.individualConditionPasses(e,r))}setParams(e){super.setParams(e),this.setNumConditions(e),this.defaultJoinOperator=this.getDefaultJoinOperator(e.defaultJoinOperator),this.filterPlaceholder=e.filterPlaceholder,this.optionsFactory=new qa,this.optionsFactory.init(e,this.getDefaultFilterOptions()),this.createFilterListOptions(),this.createOption(),this.createMissingConditionsAndOperators(),this.isReadOnly()&&this.eFilterBody.setAttribute("tabindex","-1")}setNumConditions(e){this.maxNumConditions=e.maxNumConditions??2,this.maxNumConditions<1&&(R('"filterParams.maxNumConditions" must be greater than or equal to zero.'),this.maxNumConditions=1),this.numAlwaysVisibleConditions=e.numAlwaysVisibleConditions??1,this.numAlwaysVisibleConditions<1&&(R('"filterParams.numAlwaysVisibleConditions" must be greater than or equal to zero.'),this.numAlwaysVisibleConditions=1),this.numAlwaysVisibleConditions>this.maxNumConditions&&(R('"filterParams.numAlwaysVisibleConditions" cannot be greater than "filterParams.maxNumConditions".'),this.numAlwaysVisibleConditions=this.maxNumConditions)}createOption(){const e=this.createManagedBean(new yo);this.eTypes.push(e),e.addCssClass("ag-filter-select"),this.eFilterBody.appendChild(e.getGui());const t=this.createValueElement();this.eConditionBodies.push(t),this.eFilterBody.appendChild(t),this.putOptionsIntoDropdown(e),this.resetType(e);const s=this.getNumConditions()-1;this.forEachPositionInput(s,i=>this.resetInput(i)),this.addChangedListeners(e,s)}createJoinOperatorPanel(){const e=document.createElement("div");this.eJoinOperatorPanels.push(e),e.classList.add("ag-filter-condition");const t=this.createJoinOperator(this.eJoinOperatorsAnd,e,"and"),s=this.createJoinOperator(this.eJoinOperatorsOr,e,"or");this.eFilterBody.appendChild(e);const i=this.eJoinOperatorPanels.length-1,o=this.joinOperatorId++;this.resetJoinOperatorAnd(t,i,o),this.resetJoinOperatorOr(s,i,o),this.isReadOnly()||(t.onValueChange(this.listener),s.onValueChange(this.listener))}createJoinOperator(e,t,s){const i=this.createManagedBean(new lp);return e.push(i),i.addCssClass("ag-filter-condition-operator"),i.addCssClass(`ag-filter-condition-operator-${s}`),t.appendChild(i.getGui()),i}getDefaultJoinOperator(e){return e==="AND"||e==="OR"?e:"AND"}createFilterListOptions(){const e=this.optionsFactory.getFilterOptions();this.filterListOptions=e.map(t=>typeof t=="string"?this.createBoilerplateListOption(t):this.createCustomListOption(t))}putOptionsIntoDropdown(e){this.filterListOptions.forEach(t=>{e.addOption(t)}),e.setDisabled(this.filterListOptions.length<=1)}createBoilerplateListOption(e){return{value:e,text:this.translate(e)}}createCustomListOption(e){const{displayKey:t}=e,s=this.optionsFactory.getCustomOption(e.displayKey);return{value:t,text:s?this.localeService.getLocaleTextFunc()(s.displayKey,s.displayName):this.translate(t)}}createBodyTemplate(){return""}getAgComponents(){return[]}getCssIdentifier(){return"simple-filter"}updateUiVisibility(){const e=this.getJoinOperator();this.updateNumConditions(),this.updateConditionStatusesAndValues(this.lastUiCompletePosition,e)}updateNumConditions(){let e=-1,t=!0;for(let s=0;s<this.getNumConditions();s++)this.isConditionUiComplete(s)?e=s:t=!1;if(this.shouldAddNewConditionAtEnd(t))this.createJoinOperatorPanel(),this.createOption();
76else{const s=this.lastUiCompletePosition??this.getNumConditions()-2;if(e<s){this.removeConditionsAndOperators(s+1);const i=e+1,o=s-i;o>0&&this.removeConditionsAndOperators(i,o),this.createMissingConditionsAndOperators()}}this.lastUiCompletePosition=e}updateConditionStatusesAndValues(e,t){this.eTypes.forEach((i,o)=>{const r=this.isConditionDisabled(o,e);i.setDisabled(r||this.filterListOptions.length<=1),o===1&&(vi(this.eJoinOperatorPanels[0],r),this.eJoinOperatorsAnd[0].setDisabled(r),this.eJoinOperatorsOr[0].setDisabled(r))}),this.eConditionBodies.forEach((i,o)=>{H(i,this.isConditionBodyVisible(o))});const s=(t??this.getJoinOperator())==="OR";this.eJoinOperatorsAnd.forEach(i=>{i.setValue(!s,!0)}),this.eJoinOperatorsOr.forEach(i=>{i.setValue(s,!0)}),this.forEachInput((i,o,r,n)=>{this.setElementDisplayed(i,o<n),this.setElementDisabled(i,this.isConditionDisabled(r,e))}),this.resetPlaceholder()}shouldAddNewConditionAtEnd(e){return e&&this.getNumConditions()<this.maxNumConditions&&!this.isReadOnly()}removeConditionsAndOperators(e,t){if(e>=this.getNumConditions())return;this.removeComponents(this.eTypes,e,t),this.removeElements(this.eConditionBodies,e,t),this.removeValueElements(e,t);const s=Math.max(e-1,0);this.removeElements(this.eJoinOperatorPanels,s,t),this.removeComponents(this.eJoinOperatorsAnd,s,t),this.removeComponents(this.eJoinOperatorsOr,s,t)}removeElements(e,t,s){this.removeItems(e,t,s).forEach(o=>Qe(o))}removeComponents(e,t,s){this.removeItems(e,t,s).forEach(o=>{Qe(o.getGui()),this.destroyBean(o)})}removeItems(e,t,s){return s==null?e.splice(t):e.splice(t,s)}afterGuiAttached(e){if(super.afterGuiAttached(e),this.resetPlaceholder(),!(e!=null&&e.suppressFocus))if(this.isReadOnly())this.eFilterBody.focus();else{const t=this.getInputs(0)[0];if(!t)return;t instanceof ts&&t.getInputElement().focus()}}afterGuiDetached(){super.afterGuiDetached();const e=this.getModel();this.resetUiToActiveModel(e);let t=-1,s=-1,i=!1;const o=this.getJoinOperator();for(let n=this.getNumConditions()-1;n>=0;n--)if(this.isConditionUiComplete(n))t===-1&&(t=n,s=n);else{const l=n>=this.numAlwaysVisibleConditions&&!this.isConditionUiComplete(n-1),a=n<t;(l||a)&&(this.removeConditionsAndOperators(n,1),i=!0,a&&s--)}let r=!1;this.getNumConditions()<this.numAlwaysVisibleConditions&&(this.createMissingConditionsAndOperators(),r=!0),this.shouldAddNewConditionAtEnd(s===this.getNumConditions()-1)&&(this.createJoinOperatorPanel(),this.createOption(),r=!0),r&&this.updateConditionStatusesAndValues(s,o),i&&this.updateJoinOperatorsDisabled(),this.lastUiCompletePosition=s}getPlaceholderText(e,t){let s=this.translate(e);if(Ar(this.filterPlaceholder)){const i=this.filterPlaceholder,o=this.eTypes[t].getValue(),r=this.translate(o);s=i({filterOptionKey:o,filterOption:r,placeholder:s})}else typeof this.filterPlaceholder=="string"&&(s=this.filterPlaceholder);return s}resetPlaceholder(){const e=this.localeService.getLocaleTextFunc();this.forEachInput((t,s,i,o)=>{if(!(t instanceof ts))return;const r=s===0&&o>1?"inRangeStart":s===0?"filterOoo":"inRangeEnd",n=s===0&&o>1?e("ariaFilterFromValue","Filter from value"):s===0?e("ariaFilterValue","Filter Value"):e("ariaFilterToValue","Filter to Value");t.setInputPlaceholder(this.getPlaceholderText(r,i)),t.setInputAriaLabel(n)})}setElementValue(e,t,s){e instanceof ts&&e.setValue(t!=null?String(t):null,!0)}setElementDisplayed(e,t){e instanceof O&&H(e.getGui(),t)}setElementDisabled(e,t){e instanceof O&&vi(e.getGui(),t)}attachElementOnChange(e,t){e instanceof ts&&e.onValueChange(t)}forEachInput(e){this.getConditionTypes().forEach((t,s)=>{this.forEachPositionTypeInput(s,t,e)})}forEachPositionInput(e,t){const s=this.getConditionType(e);this.forEachPositionTypeInput(e,s,t)}forEachPositionTypeInput(e,t,s){const i=this.getNumberOfInputs(t),o=this.getInputs(e);for(let r=0;r<o.length;r++){const n=o[r];n!=null&&s(n,r,e,i)}}isConditionDisabled(e,t){return this.isReadOnly()?!0:e===0?!1:e>t+1}isConditionBodyVisible(e){const t=this.getConditionType(e);return this.getNumberOfInputs(t)>0}isConditionUiComplete(e){return!(e>=this.getNumConditions()||this.getConditionType(e)==="empty"||this.getValues(e).some(s=>s==null))}getNumConditions(){return this.eTypes.length}getUiCompleteConditions(){const e=[];for(let t=0;
76t<this.getNumConditions();t++)this.isConditionUiComplete(t)&&e.push(this.createCondition(t));return e}createMissingConditionsAndOperators(){if(!this.isReadOnly())for(let e=this.getNumConditions();e<this.numAlwaysVisibleConditions;e++)this.createJoinOperatorPanel(),this.createOption()}resetUiToDefaults(e){return this.removeConditionsAndOperators(this.isReadOnly()?1:this.numAlwaysVisibleConditions),this.eTypes.forEach(t=>this.resetType(t)),this.eJoinOperatorsAnd.forEach((t,s)=>this.resetJoinOperatorAnd(t,s,this.joinOperatorId+s)),this.eJoinOperatorsOr.forEach((t,s)=>this.resetJoinOperatorOr(t,s,this.joinOperatorId+s)),this.joinOperatorId++,this.forEachInput(t=>this.resetInput(t)),this.resetPlaceholder(),this.createMissingConditionsAndOperators(),this.lastUiCompletePosition=null,e||this.onUiChanged(),K.resolve()}resetType(e){const s=this.localeService.getLocaleTextFunc()("ariaFilteringOperator","Filtering operator");e.setValue(this.optionsFactory.getDefaultOption(),!0).setAriaLabel(s).setDisabled(this.isReadOnly()||this.filterListOptions.length<=1)}resetJoinOperatorAnd(e,t,s){this.resetJoinOperator(e,t,this.isDefaultOperator("AND"),this.translate("andCondition"),s)}resetJoinOperatorOr(e,t,s){this.resetJoinOperator(e,t,this.isDefaultOperator("OR"),this.translate("orCondition"),s)}resetJoinOperator(e,t,s,i,o){this.updateJoinOperatorDisabled(e.setValue(s,!0).setName(`ag-simple-filter-and-or-${this.getCompId()}-${o}`).setLabel(i),t)}updateJoinOperatorsDisabled(){this.eJoinOperatorsAnd.forEach((e,t)=>this.updateJoinOperatorDisabled(e,t)),this.eJoinOperatorsOr.forEach((e,t)=>this.updateJoinOperatorDisabled(e,t))}updateJoinOperatorDisabled(e,t){e.setDisabled(this.isReadOnly()||t>0)}resetInput(e){this.setElementValue(e,null),this.setElementDisabled(e,this.isReadOnly())}setConditionIntoUi(e,t){const s=this.mapValuesFromModel(e);this.forEachInput((i,o,r)=>{r===t&&this.setElementValue(i,s[o]!=null?s[o]:null)})}setValueFromFloatingFilter(e){this.forEachInput((t,s,i)=>{this.setElementValue(t,s===0&&i===0?e:null,!0)})}isDefaultOperator(e){return e===this.defaultJoinOperator}addChangedListeners(e,t){this.isReadOnly()||(e.onValueChange(this.listener),this.forEachPositionInput(t,s=>{this.attachElementOnChange(s,this.listener)}))}individualConditionPasses(e,t){const s=this.getCellValue(e.node),i=this.mapValuesFromModel(t),o=this.optionsFactory.getCustomOption(t.type),r=this.evaluateCustomFilter(o,i,s);return r??(s==null?this.evaluateNullValue(t.type):this.evaluateNonNullValue(i,s,t,e))}evaluateCustomFilter(e,t,s){if(e==null)return;const{predicate:i}=e;if(i!=null&&!t.some(o=>o==null))return i(t,s)}isBlank(e){return e==null||typeof e=="string"&&e.trim().length===0}hasInvalidInputs(){return!1}},Qa=class extends Ya{setParams(e){super.setParams(e),this.scalarFilterParams=e}evaluateNullValue(e){switch(e){case"equals":if(this.scalarFilterParams.includeBlanksInEquals)return!0;break;case"notEqual":if(this.scalarFilterParams.includeBlanksInNotEqual)return!0;break;case"greaterThan":case"greaterThanOrEqual":if(this.scalarFilterParams.includeBlanksInGreaterThan)return!0;break;case"lessThan":case"lessThanOrEqual":if(this.scalarFilterParams.includeBlanksInLessThan)return!0;break;case"inRange":if(this.scalarFilterParams.includeBlanksInRange)return!0;break;case"blank":return!0;case"notBlank":return!1}return!1}evaluateNonNullValue(e,t,s){const i=this.comparator(),o=e[0]!=null?i(e[0],t):0;switch(s.type){case"equals":return o===0;case"notEqual":return o!==0;case"greaterThan":return o>0;case"greaterThanOrEqual":return o>=0;case"lessThan":return o<0;case"lessThanOrEqual":return o<=0;case"inRange":{const r=i(e[1],t);return this.scalarFilterParams.inRangeInclusive?o>=0&&r<=0:o>0&&r<0}case"blank":return this.isBlank(t);case"notBlank":return!this.isBlank(t);default:return R('Unexpected type of filter "'+s.type+'", it looks like the filter was configured with incorrect Filter Options'),!0}}},up=65,hp=67,pp=86,gp=68,fp=90,mp=89;function Xa(e){var s;return e.altKey||e.ctrlKey||e.metaKey?!1:((s=e.key)==null?void 0:s.length)===1}function gr(e,t,s,i,o){const r=i?i.getColDef().suppressKeyboardEvent:void 0;if(!r)return!1;
76const n=e.addGridCommonParams({event:t,editing:o,column:i,node:s,data:s.data,colDef:i.getColDef()});return!!(r&&r(n))}function Cp(e,t,s,i){const o=i.getDefinition(),r=o&&o.suppressHeaderKeyboardEvent;if(!E(r))return!1;const n=e.addGridCommonParams({colDef:o,column:i,headerRowIndex:s,event:t});return!!r(n)}function vp(e){const{keyCode:t}=e;let s;switch(t){case up:s=S.A;break;case hp:s=S.C;break;case pp:s=S.V;break;case gp:s=S.D;break;case fp:s=S.Z;break;case mp:s=S.Y;break;default:s=e.code}return s}function Sp(e,t=!1){return e===S.DELETE?!0:!t&&e===S.BACKSPACE?Sa():!1}var Yt=class extends ts{constructor(e,t="ag-text-field",s="text"){super(e,t,s)}postConstruct(){super.postConstruct(),this.config.allowedCharPattern&&this.preventDisallowedCharacters()}setValue(e,t){return this.eInput.value!==e&&(this.eInput.value=E(e)?e:""),super.setValue(e,t)}setStartValue(e){this.setValue(e,!0)}preventDisallowedCharacters(){const e=new RegExp(`[${this.config.allowedCharPattern}]`),t=s=>{Xa(s)&&s.key&&!e.test(s.key)&&s.preventDefault()};this.addManagedListeners(this.eInput,{keydown:t,paste:s=>{var o;const i=(o=s.clipboardData)==null?void 0:o.getData("text");i&&i.split("").some(r=>!e.test(r))&&s.preventDefault()}})}},ps={selector:"AG-INPUT-TEXT-FIELD",component:Yt},en=class extends Yt{constructor(e){super(e,"ag-number-field","number")}postConstruct(){super.postConstruct(),this.addManagedListeners(this.eInput,{blur:()=>{const o=parseFloat(this.eInput.value),r=isNaN(o)?"":this.normalizeValue(o.toString());this.value!==r&&this.setValue(r)},wheel:this.onWheel.bind(this)}),this.eInput.step="any";const{precision:e,min:t,max:s,step:i}=this.config;typeof e=="number"&&this.setPrecision(e),typeof t=="number"&&this.setMin(t),typeof s=="number"&&this.setMax(s),typeof i=="number"&&this.setStep(i)}onWheel(e){Q(this.gos)===this.eInput&&e.preventDefault()}normalizeValue(e){if(e==="")return"";this.precision!=null&&(e=this.adjustPrecision(e));const t=parseFloat(e);return this.min!=null&&t<this.min?e=this.min.toString():this.max!=null&&t>this.max&&(e=this.max.toString()),e}adjustPrecision(e,t){if(this.precision==null)return e;if(t){const i=parseFloat(e).toFixed(this.precision);return parseFloat(i).toString()}const s=String(e).split(".");if(s.length>1){if(s[1].length<=this.precision)return e;if(this.precision>0)return`${s[0]}.${s[1].slice(0,this.precision)}`}return s[0]}setMin(e){return this.min===e?this:(this.min=e,nt(this.eInput,"min",e),this)}setMax(e){return this.max===e?this:(this.max=e,nt(this.eInput,"max",e),this)}setPrecision(e){return this.precision=e,this}setStep(e){return this.step===e?this:(this.step=e,nt(this.eInput,"step",e),this)}setValue(e,t){return this.setValueOrInputValue(s=>super.setValue(s,t),()=>this,e)}setStartValue(e){return this.setValueOrInputValue(t=>super.setValue(t,!0),t=>{this.eInput.value=t},e)}setValueOrInputValue(e,t,s){if(E(s)){let i=this.isScientificNotation(s);if(i&&this.eInput.validity.valid)return e(s);if(!i){s=this.adjustPrecision(s);const o=this.normalizeValue(s);i=s!=o}if(i)return t(s)}return e(s)}getValue(){if(!this.eInput.validity.valid)return;const e=this.eInput.value;return this.isScientificNotation(e)?this.adjustPrecision(e,!0):super.getValue()}isScientificNotation(e){return typeof e=="string"&&e.includes("e")}},wp={selector:"AG-INPUT-NUMBER-FIELD",component:en},Za=["equals","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","inRange","blank","notBlank"],tn=class{constructor(e,t,s){this.localeService=e,this.optionsFactory=t,this.valueFormatter=s}getModelAsString(e){if(!e)return null;const t=e.operator!=null,s=this.localeService.getLocaleTextFunc();if(t){const i=e,r=(i.conditions??[]).map(l=>this.getModelAsString(l)),n=i.operator==="AND"?"andCondition":"orCondition";return r.join(` ${s(n,$a[n])} `)}else{if(e.type==="blank"||e.type==="notBlank")return s(e.type,e.type);{const i=e,o=this.optionsFactory.getCustomOption(i.type),{displayKey:r,displayName:n,numberOfInputs:l}=o||{};return r&&n&&l===0?(s(r,n),n):this.conditionToString(i,o)}}}updateParams(e){this.optionsFactory=e.optionsFactory}formatValue(e){return this.valueFormatter?this.valueFormatter(e??null)??"":String(e)}},Ja=class extends tn{conditionToString(e,t){const{numberOfInputs:s}=t||{};return e.type=="inRange"||s===2?`${this.formatValue(e.filter)}-${this.formatValue(e.filterTo)}`:e.filter!=null?this.formatValue(e.filter):`${e.type}`}};function fr(e){const{allowedCharPattern:t}=e??{};return t??null}var yp=class extends Qa{constructor(){super("numberFilter"),this.eValuesFrom=[],this.eValuesTo=[]}refresh(e){return this.numberFilterParams.allowedCharPattern!==e.allowedCharPattern?!1:super.refresh(e)}mapValuesFromModel(e){const{filter:t,filterTo:s,type:i}=e||{};return[this.processValue(t),this.processValue(s)].slice(0,this.getNumberOfInputs(i))}getDefaultDebounceMs(){return 500}comparator(){return(e,t)=>e===t?0:e<t?1:-1}setParams(e){this.numberFilterParams=e,super.setParams(e),this.filterModelFormatter=new Ja(this.localeService,this.optionsFactory,this.numberFilterParams.numberFormatter)}getDefaultFilterOptions(){return Za}
76setElementValue(e,t,s){const i=!s&&this.numberFilterParams.numberFormatter?this.numberFilterParams.numberFormatter(t??null):t;super.setElementValue(e,i)}createValueElement(){const e=fr(this.numberFilterParams),t=document.createElement("div");return t.classList.add("ag-filter-body"),he(t,"presentation"),this.createFromToElement(t,this.eValuesFrom,"from",e),this.createFromToElement(t,this.eValuesTo,"to",e),t}createFromToElement(e,t,s,i){const o=this.createManagedBean(i?new Yt({allowedCharPattern:i}):new en);o.addCssClass(`ag-filter-${s}`),o.addCssClass("ag-filter-filter"),t.push(o),e.appendChild(o.getGui())}removeValueElements(e,t){this.removeComponents(this.eValuesFrom,e,t),this.removeComponents(this.eValuesTo,e,t)}getValues(e){const t=[];return this.forEachPositionInput(e,(s,i,o,r)=>{i<r&&t.push(this.processValue(this.stringToFloat(s.getValue())))}),t}areSimpleModelsEqual(e,t){return e.filter===t.filter&&e.filterTo===t.filterTo&&e.type===t.type}getFilterType(){return"number"}processValue(e){return e==null||isNaN(e)?null:e}stringToFloat(e){if(typeof e=="number")return e;let t=Oe(e);return t!=null&&t.trim()===""&&(t=null),this.numberFilterParams.numberParser?this.numberFilterParams.numberParser(t):t==null||t.trim()==="-"?null:parseFloat(t)}createCondition(e){const t=this.getConditionType(e),s={filterType:this.getFilterType(),type:t},i=this.getValues(e);return i.length>0&&(s.filter=i[0]),i.length>1&&(s.filterTo=i[1]),s}getInputs(e){return e>=this.eValuesFrom.length?[null,null]:[this.eValuesFrom[e],this.eValuesTo[e]]}getModelAsString(e){return this.filterModelFormatter.getModelAsString(e)??""}hasInvalidInputs(){let e=!1;return this.forEachInput(t=>{if(!t.getInputElement().validity.valid){e=!0;return}}),e}},ed=["contains","notContains","equals","notEqual","startsWith","endsWith","blank","notBlank"],td=class extends tn{conditionToString(e,t){const{numberOfInputs:s}=t||{};return e.type=="inRange"||s===2?`${e.filter}-${e.filterTo}`:e.filter!=null?`${e.filter}`:`${e.type}`}};function sd(e){const t=e&&e.trim();return t===""?e:t}var Rp=class extends Ya{constructor(){super("textFilter"),this.defaultFormatter=e=>e,this.defaultLowercaseFormatter=e=>e==null?null:e.toString().toLowerCase(),this.defaultMatcher=({filterOption:e,value:t,filterText:s})=>{if(s==null)return!1;switch(e){case"contains":return t.indexOf(s)>=0;case"notContains":return t.indexOf(s)<0;case"equals":return t===s;case"notEqual":return t!=s;case"startsWith":return t.indexOf(s)===0;case"endsWith":{const i=t.lastIndexOf(s);return i>=0&&i===t.length-s.length}default:return!1}},this.eValuesFrom=[],this.eValuesTo=[]}getDefaultDebounceMs(){return 500}setParams(e){this.textFilterParams=e,super.setParams(e),this.matcher=this.getTextMatcher(),this.formatter=this.textFilterParams.textFormatter||(this.textFilterParams.caseSensitive?this.defaultFormatter:this.defaultLowercaseFormatter),this.filterModelFormatter=new td(this.localeService,this.optionsFactory)}getTextMatcher(){const e=this.textFilterParams.textCustomComparator;return e?(R("textCustomComparator is deprecated, use textMatcher instead."),({filterOption:t,value:s,filterText:i})=>e(t,s,i)):this.textFilterParams.textMatcher||this.defaultMatcher}createCondition(e){const t=this.getConditionType(e),s={filterType:this.getFilterType(),type:t},i=this.getValuesWithSideEffects(e,!0);return i.length>0&&(s.filter=i[0]),i.length>1&&(s.filterTo=i[1]),s}getFilterType(){return"text"}areSimpleModelsEqual(e,t){return e.filter===t.filter&&e.filterTo===t.filterTo&&e.type===t.type}getInputs(e){return e>=this.eValuesFrom.length?[null,null]:[this.eValuesFrom[e],this.eValuesTo[e]]}getValues(e){return this.getValuesWithSideEffects(e,!1)}getValuesWithSideEffects(e,t){const s=[];return this.forEachPositionInput(e,(i,o,r,n)=>{if(o<n){let l=Oe(i.getValue());t&&this.textFilterParams.trimInput&&(l=sd(l)??null,i.setValue(l,!0)),s.push(l)}}),s}getDefaultFilterOptions(){return ed}createValueElement(){const e=document.createElement("div");return e.classList.add("ag-filter-body"),he(e,"presentation"),this.createFromToElement(e,this.eValuesFrom,"from"),this.createFromToElement(e,this.eValuesTo,"to"),e}createFromToElement(e,t,s){const i=this.createManagedBean(new Yt);i.addCssClass(`ag-filter-${s}`),i.addCssClass("ag-filter-filter"),t.push(i),e.appendChild(i.getGui())}
76removeValueElements(e,t){this.removeComponents(this.eValuesFrom,e,t),this.removeComponents(this.eValuesTo,e,t)}mapValuesFromModel(e){const{filter:t,filterTo:s,type:i}=e||{};return[t||null,s||null].slice(0,this.getNumberOfInputs(i))}evaluateNullValue(e){return e?["notEqual","notContains","blank"].indexOf(e)>=0:!1}evaluateNonNullValue(e,t,s,i){const o=e.map(h=>this.formatter(h))||[],r=this.formatter(t),{api:n,colDef:l,column:a,context:d,textFormatter:c}=this.textFilterParams;if(s.type==="blank")return this.isBlank(t);if(s.type==="notBlank")return!this.isBlank(t);const u={api:n,colDef:l,column:a,context:d,node:i.node,data:i.data,filterOption:s.type,value:r,textFormatter:c};return o.some(h=>this.matcher({...u,filterText:h}))}getModelAsString(e){return this.filterModelFormatter.getModelAsString(e)??""}};function id(e){if(typeof e=="number")return e;if(typeof e=="string"){const t=parseInt(e);return isNaN(t)?void 0:t}}function vt(e,t=Number.MAX_VALUE){return s=>{const i=id(s);if(!(i==null||i<e||i>t))return i}}function oi(e,t){return e.toString().padStart(t,"0")}function bp(e,t){const s=[];for(let i=e;i<=t;i++)s.push(i);return s}function Fp(e,t,s){return typeof e!="number"?"":e.toString().replace(".",s).replace(/(\d)(?=(\d{3})+(?!\d))/g,`$1${t}`)}function lt(e,t=!0,s="-"){if(!e)return null;let i=[e.getFullYear(),e.getMonth()+1,e.getDate()].map(o=>oi(o,2)).join(s);return t&&(i+=" "+[e.getHours(),e.getMinutes(),e.getSeconds()].map(o=>oi(o,2)).join(":")),i}var Ho=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"};function ri(e,t="YYYY-MM-DD"){const s=oi(e.getFullYear(),4),i=["January","February","March","April","May","June","July","August","September","October","November","December"],o=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],r={YYYY:()=>s.slice(s.length-4,s.length),YY:()=>s.slice(s.length-2,s.length),Y:()=>`${e.getFullYear()}`,MMMM:()=>i[e.getMonth()],MMM:()=>i[e.getMonth()].slice(0,3),MM:()=>oi(e.getMonth()+1,2),Mo:()=>`${e.getMonth()+1}${Ho(e.getMonth()+1)}`,M:()=>`${e.getMonth()+1}`,Do:()=>`${e.getDate()}${Ho(e.getDate())}`,DD:()=>oi(e.getDate(),2),D:()=>`${e.getDate()}`,dddd:()=>o[e.getDay()],ddd:()=>o[e.getDay()].slice(0,3),dd:()=>o[e.getDay()].slice(0,2),do:()=>`${e.getDay()}${Ho(e.getDay())}`,d:()=>`${e.getDay()}`},n=new RegExp(Object.keys(r).join("|"),"g");return t.replace(n,l=>l in r?r[l]():l)}function je(e){if(!e)return null;const[t,s]=e.split(" ");if(!t)return null;const i=t.split("-").map(u=>parseInt(u,10));if(i.filter(u=>!isNaN(u)).length!==3)return null;const[o,r,n]=i,l=new Date(o,r-1,n);if(l.getFullYear()!==o||l.getMonth()!==r-1||l.getDate()!==n)return null;if(!s||s==="00:00:00")return l;const[a,d,c]=s.split(":").map(u=>parseInt(u,10));return a>=0&&a<24&&l.setHours(a),d>=0&&d<60&&l.setMinutes(d),c>=0&&c<60&&l.setSeconds(c),l}var od=class{constructor(e,t,s,i,o){this.alive=!0,this.context=e,this.eParent=i,t.getDateCompDetails(s).newAgStackInstance().then(l=>{if(!this.alive){e.destroyBean(l);return}this.dateComp=l,l&&(i.appendChild(l.getGui()),l.afterGuiAttached&&l.afterGuiAttached(),this.tempValue&&l.setDate(this.tempValue),this.disabled!=null&&this.setDateCompDisabled(this.disabled),o==null||o(this))})}destroy(){this.alive=!1,this.dateComp=this.context.destroyBean(this.dateComp)}getDate(){return this.dateComp?this.dateComp.getDate():this.tempValue}setDate(e){this.dateComp?this.dateComp.setDate(e):this.tempValue=e}setDisabled(e){this.dateComp?this.setDateCompDisabled(e):this.disabled=e}setDisplayed(e){H(this.eParent,e)}setInputPlaceholder(e){this.dateComp&&this.dateComp.setInputPlaceholder&&this.dateComp.setInputPlaceholder(e)}setInputAriaLabel(e){this.dateComp&&this.dateComp.setInputAriaLabel&&this.dateComp.setInputAriaLabel(e)}afterGuiAttached(e){this.dateComp&&typeof this.dateComp.afterGuiAttached=="function"&&this.dateComp.afterGuiAttached(e)}updateParams(e){var s,i;let t=!1;(s=this.dateComp)!=null&&s.refresh&&typeof this.dateComp.refresh=="function"&&this.dateComp.refresh(e)!==null&&(t=!0),!t&&((i=this.dateComp)!=null&&i.onParamsUpdated)&&typeof this.dateComp.onParamsUpdated=="function"&&this.dateComp.onParamsUpdated(e)!==null&&R("Custom date component method 'onParamsUpdated' is deprecated. Use 'refresh' instead.")}setDateCompDisabled(e){this.dateComp!=null&&this.dateComp.setDisabled!=null&&this.dateComp.setDisabled(e)}},rd=["equals","notEqual","lessThan","greaterThan","inRange","blank","notBlank"],nd=class extends tn{constructor(e,t,s){super(t,s),this.dateFilterParams=e}conditionToString(e,t){const{type:s}=e,{numberOfInputs:i}=t||{},o=s=="inRange"||i===2,r=je(e.dateFrom),n=je(e.dateTo),l=this.dateFilterParams.inRangeFloatingFilterDateFormat;if(o){const a=r!==null?ri(r,l):"null",d=n!==null?ri(n,l):"null";return`${a}-${d}`}return r!=null?ri(r,l):`${s}`}updateParams(e){super.updateParams(e),this.dateFilterParams=e.dateFilterParams}},Qn=1e3,Xn=1/0,Pp=class extends Qa{constructor(){super("dateFilter"),this.eConditionPanelsFrom=[],this.eConditionPanelsTo=[],this.dateConditionFromComps=[],this.dateConditionToComps=[],this.minValidYear=Qn,this.maxValidYear=Xn,this.minValidDate=null,this.maxValidDate=null}wireBeans(e){super.wireBeans(e),this.context=e.context,this.userComponentFactory=e.userComponentFactory}afterGuiAttached(e){super.afterGuiAttached(e),this.dateConditionFromComps[0].afterGuiAttached(e)}mapValuesFromModel(e){const{dateFrom:t,dateTo:s,type:i}=e||{};return[t&&je(t)||null,s&&je(s)||null].slice(0,this.getNumberOfInputs(i))}comparator(){return this.dateFilterParams.comparator?this.dateFilterParams.comparator:this.defaultComparator.bind(this)}defaultComparator(e,t){const s=t;return t==null||s<e?-1:s>e?1:0}setParams(e){this.dateFilterParams=e,super.setParams(e);const t=(s,i)=>{if(e[s]!=null)if(isNaN(e[s]))R(`DateFilter ${s} is not a number`);else return e[s]==null?i:Number(e[s]);return i};this.minValidYear=t("minValidYear",Qn),this.maxValidYear=t("maxValidYear",Xn),this.minValidYear>this.maxValidYear&&R("DateFilter minValidYear should be <= maxValidYear"),e.minValidDate?this.minValidDate=e.minValidDate instanceof Date?e.minValidDate:je(e.minValidDate):this.minValidDate=null,e.maxValidDate?this.maxValidDate=e.maxValidDate instanceof Date?e.maxValidDate:je(e.maxValidDate):this.maxValidDate=null,this.minValidDate&&this.maxValidDate&&this.minValidDate>this.maxValidDate&&R("DateFilter minValidDate should be <= maxValidDate"),this.filterModelFormatter=new nd(this.dateFilterParams,this.localeService,this.optionsFactory)}createDateCompWrapper(e){const t=new od(this.context,this.userComponentFactory,{onDateChanged:()=>this.onUiChanged(),filterParams:this.dateFilterParams},e);return this.addDestroyFunc(()=>t.destroy()),t}setElementValue(e,t){e.setDate(t)}setElementDisplayed(e,t){e.setDisplayed(t)}setElementDisabled(e,t){e.setDisabled(t)}getDefaultFilterOptions(){return rd}createValueElement(){const t=le(this.gos).createElement("div");return t.classList.add("ag-filter-body"),this.createFromToElement(t,this.eConditionPanelsFrom,this.dateConditionFromComps,"from"),this.createFromToElement(t,this.eConditionPanelsTo,this.dateConditionToComps,"to"),t}createFromToElement(e,t,s,i){const r=le(this.gos).createElement("div");r.classList.add(`ag-filter-${i}`),r.classList.add(`ag-filter-date-${i}
76`),t.push(r),e.appendChild(r),s.push(this.createDateCompWrapper(r))}removeValueElements(e,t){this.removeDateComps(this.dateConditionFromComps,e,t),this.removeDateComps(this.dateConditionToComps,e,t),this.removeItems(this.eConditionPanelsFrom,e,t),this.removeItems(this.eConditionPanelsTo,e,t)}removeDateComps(e,t,s){this.removeItems(e,t,s).forEach(o=>o.destroy())}isValidDateValue(e){if(e===null)return!1;if(this.minValidDate){if(e<this.minValidDate)return!1}else if(e.getUTCFullYear()<this.minValidYear)return!1;if(this.maxValidDate){if(e>this.maxValidDate)return!1}else if(e.getUTCFullYear()>this.maxValidYear)return!1;return!0}isConditionUiComplete(e){if(!super.isConditionUiComplete(e))return!1;let t=!0;return this.forEachInput((s,i,o,r)=>{o!==e||!t||i>=r||(t=t&&this.isValidDateValue(s.getDate()))}),t}areSimpleModelsEqual(e,t){return e.dateFrom===t.dateFrom&&e.dateTo===t.dateTo&&e.type===t.type}getFilterType(){return"date"}createCondition(e){const t=this.getConditionType(e),s={},i=this.getValues(e);return i.length>0&&(s.dateFrom=lt(i[0])),i.length>1&&(s.dateTo=lt(i[1])),{dateFrom:null,dateTo:null,filterType:this.getFilterType(),type:t,...s}}resetPlaceholder(){const e=this.localeService.getLocaleTextFunc(),t=this.translate("dateFormatOoo"),s=e("ariaFilterValue","Filter Value");this.forEachInput(i=>{i.setInputPlaceholder(t),i.setInputAriaLabel(s)})}getInputs(e){return e>=this.dateConditionFromComps.length?[null,null]:[this.dateConditionFromComps[e],this.dateConditionToComps[e]]}getValues(e){const t=[];return this.forEachPositionInput(e,(s,i,o,r)=>{i<r&&t.push(s.getDate())}),t}translate(e){return e==="lessThan"?super.translate("before"):e==="greaterThan"?super.translate("after"):super.translate(e)}getModelAsString(e){return this.filterModelFormatter.getModelAsString(e)??""}},sn=class extends b{constructor(e,t,s,i){super(),this.columnOrGroup=e,this.columnOrGroup=e,this.eCell=t,this.ariaEl=this.eCell.querySelector("[role=columnheader]")||this.eCell,this.colsSpanning=i,this.beans=s}setColsSpanning(e){this.colsSpanning=e,this.onLeftChanged()}getColumnOrGroup(){return this.beans.gos.get("enableRtl")&&this.colsSpanning?W(this.colsSpanning):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 e=this.beans.gos.get("suppressColumnMoveAnimation"),t=E(this.columnOrGroup.getOldLeft());this.beans.columnAnimationService.isActive()&&t&&!e?this.animateInLeft():this.onLeftChanged()}animateInLeft(){const e=this.getColumnOrGroup(),t=e.getLeft(),s=e.getOldLeft(),i=this.modifyLeftForPrintLayout(e,s),o=this.modifyLeftForPrintLayout(e,t);this.setLeft(i),this.actualLeft=o,this.beans.columnAnimationService.executeNextVMTurn(()=>{this.actualLeft===o&&this.setLeft(o)})}onLeftChanged(){const e=this.getColumnOrGroup(),t=e.getLeft();this.actualLeft=this.modifyLeftForPrintLayout(e,t),this.setLeft(this.actualLeft)}modifyLeftForPrintLayout(e,t){if(!De(this.beans.gos,"print")||e.getPinned()==="left")return t;const i=this.beans.visibleColsService.getColsLeftWidth();if(e.getPinned()==="right"){const o=this.beans.visibleColsService.getBodyContainerWidth();return i+o+t}return i+t}setLeft(e){if(E(e)&&(this.eCell.style.left=`${e}px`),Se(this.columnOrGroup)){const t=this.columnOrGroup.getLeafColumns();if(!t.length)return;t.length>1&&Xu(this.ariaEl,t.length)}}},Ep="ag-column-first",Mp="ag-column-last";function on(e,t,s,i){return z(e)?[]:dd(e.headerClass,e,t,s,i)}function ld(e,t,s,i){return z(e)?[]:dd(e.toolPanelClass,e,t,s,i)}function ad(e,t,s){e.addOrRemoveCssClass(Ep,s.isColAtEdge(t,"first")),e.addOrRemoveCssClass(Mp,s.isColAtEdge(t,"last"))}function Dp(e,t,s,i){return t.addGridCommonParams({colDef:e,column:s,columnGroup:i})}function dd(e,t,s,i,o){if(z(e))return[];let r;if(typeof e=="function"){const n=Dp(t,s,i,o);r=e(n)}else r=e;return typeof r=="string"?[r]:Array.isArray(r)?[...r]:[]}var xp=0,cd=class ud extends b{constructor(t,s,i){super(),this.resizeToggleTimeout=0,this.resizeMultiplier=1,this.resizeFeature=null,this.lastFocusEvent=null,this.dragSource=null,this.columnGroupChild=t,this.parentRowCtrl=i,this.beans=s,this.instanceId=t.getUniqueId()+"-"+xp++}
76wireBeans(t){this.pinnedWidthService=t.pinnedWidthService,this.focusService=t.focusService,this.userComponentFactory=t.userComponentFactory,this.ctrlsService=t.ctrlsService,this.dragAndDropService=t.dragAndDropService,this.menuService=t.menuService}postConstruct(){const t=this.refreshTabIndex.bind(this);this.addManagedPropertyListeners(["suppressHeaderFocus"],t),this.addManagedEventListeners({overlayExclusiveChanged:t})}shouldStopEventPropagation(t){const{headerRowIndex:s,column:i}=this.focusService.getFocusedHeader();return Cp(this.gos,t,s,i)}getWrapperHasFocus(){return Q(this.gos)===this.eGui}setGui(t,s){this.eGui=t,this.addDomData(s),s.addManagedListeners(this.beans.eventService,{displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this)}),s.addManagedElementListeners(this.eGui,{focus:this.onGuiFocus.bind(this)}),this.onDisplayedColumnsChanged(),this.refreshTabIndex()}onGuiFocus(){this.eventService.dispatchEvent({type:"headerFocused",column:this.column})}setupAutoHeight(t){const{wrapperElement:s,checkMeasuringCallback:i,compBean:o}=t,{animationFrameService:r,resizeObserverService:n,columnModel:l,gos:a}=this.beans,d=f=>{if(!this.isAlive()||!o.isAlive())return;const{paddingTop:m,paddingBottom:v,borderBottomWidth:y,borderTopWidth:w}=cs(this.getGui()),F=m+v+y+w,M=s.offsetHeight+F;if(f<5){const x=le(a),I=!x||!x.contains(s),G=M==0;if(I||G){r.requestAnimationFrame(()=>d(f+1));return}}l.setColHeaderHeight(this.column,M)};let c=!1,u;const h=()=>{const f=this.column.isAutoHeaderHeight();f&&!c&&p(),!f&&c&&g()},p=()=>{c=!0,d(0),this.comp.addOrRemoveCssClass("ag-header-cell-auto-height",!0),u=n.observeResize(s,()=>d(0))},g=()=>{c=!1,u&&u(),this.comp.addOrRemoveCssClass("ag-header-cell-auto-height",!1),u=void 0};h(),o.addDestroyFunc(()=>g()),o.addManagedListeners(this.column,{widthChanged:()=>c&&d(0)}),o.addManagedEventListeners({sortChanged:()=>{c&&window.setTimeout(()=>d(0))}}),i&&i(h)}onDisplayedColumnsChanged(){const{comp:t,column:s,beans:i,eGui:o}=this;!t||!s||!o||(ad(t,s,i.visibleColsService),ga(o,i.visibleColsService.getAriaColIndex(s)))}addResizeAndMoveKeyboardListeners(t){this.resizeFeature&&t.addManagedListeners(this.eGui,{keydown:this.onGuiKeyDown.bind(this),keyup:this.onGuiKeyUp.bind(this)})}refreshTabIndex(){const t=this.focusService.isHeaderFocusSuppressed();this.eGui&&nt(this.eGui,"tabindex",t?null:"-1")}onGuiKeyDown(t){var n;const s=Q(this.gos),i=t.key===S.LEFT||t.key===S.RIGHT;if(this.isResizing&&(t.preventDefault(),t.stopImmediatePropagation()),s!==this.eGui||!t.shiftKey&&!t.altKey||((this.isResizing||i)&&(t.preventDefault(),t.stopImmediatePropagation()),!i))return;const o=t.key===S.LEFT!==this.gos.get("enableRtl"),r=Ha[o?"Left":"Right"];if(t.altKey){this.isResizing=!0,this.resizeMultiplier+=1;const l=this.getViewportAdjustedResizeDiff(t);this.resizeHeader(l,t.shiftKey),(n=this.resizeFeature)==null||n.toggleColumnResizing(!0)}else this.moveHeader(r)}getViewportAdjustedResizeDiff(t){let s=this.getResizeDiff(t);if(this.column.getPinned()){const o=this.pinnedWidthService.getPinnedLeftWidth(),r=this.pinnedWidthService.getPinnedRightWidth(),n=Ns(this.ctrlsService.getGridBodyCtrl().getBodyViewportElement())-50;if(o+r+s>n)if(n>o+r)s=n-o-r;else return 0}return s}getResizeDiff(t){let s=t.key===S.LEFT!==this.gos.get("enableRtl");const i=this.column.getPinned(),o=this.gos.get("enableRtl");return i&&o!==(i==="right")&&(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(()=>{var t;(t=this.resizeFeature)==null||t.toggleColumnResizing(!1)},150))}handleKeyDown(t){const s=this.getWrapperHasFocus();switch(t.key){case S.PAGE_DOWN:case S.PAGE_UP:case S.PAGE_HOME:case S.PAGE_END:s&&t.preventDefault()}}addDomData(t){const s=ud.DOM_DATA_KEY_HEADER_CTRL;ls(this.gos,this.eGui,s,this),t.addDestroyFunc(()=>ls(this.gos,this.eGui,s,null))}getGui(){return this.eGui}focus(t){return this.eGui?(this.lastFocusEvent=t||null,this.eGui.focus(),!0):!1}getRowIndex(){return this.parentRowCtrl.getRowIndex()}getParentRowCtrl(){return this.parentRowCtrl}getPinned(){return this.parentRowCtrl.getPinned()}getColumnGroupChild(){return this.columnGroupChild}removeDragSource(){this.dragSource&&(this.dragAndDropService.removeDragSource(this.dragSource),this.dragSource=null)}handleContextMenuMouseEvent(t,s,i){const o=t??s;this.gos.get("preventDefaultOnContextMenu")&&o.preventDefault(),this.menuService.isHeaderContextMenuEnabled(i)&&this.menuService.showHeaderContextMenu(i,t,s),this.dispatchColumnMouseEvent("columnHeaderContextMenu",i)}dispatchColumnMouseEvent(t,s){this.eventService.dispatchEvent({type:t,column:s})}clearComponent(){this.removeDragSource(),this.resizeFeature=null,this.comp=null,this.eGui=null}destroy(){super.destroy(),this.column=null,this.lastFocusEvent=null,this.columnGroupChild=null,this.parentRowCtrl=null}};cd.DOM_DATA_KEY_HEADER_CTRL="headerCtrl";var Ro=cd,rn=class extends b{wireBeans(e){this.columnHoverService=e.columnHoverService}constructor(e,t){super(),this.columns=e,this.element=t}postConstruct(){this.gos.get("columnHoverHighlight")&&this.addMouseHoverListeners()}addMouseHoverListeners(){this.addManagedListeners(this.element,{mouseout:this.onMouseOut.bind(this),mouseover:this.onMouseOver.bind(this)})}onMouseOut(){this.columnHoverService.clearMouseOver()}onMouseOver(){this.columnHoverService.setMouseOver(this.columns)}},Ap=class extends Ro{constructor(e,t,s){super(e,t,s),this.iconCreated=!1,this.column=e}setComp(e,t,s,i,o){this.comp=e,o=wi(this,this.beans.context,o),this.eButtonShowMainFilter=s,this.eFloatingFilterBody=i,this.setGui(t,o),this.setupActive(),this.setupWidth(o),this.setupLeft(o),this.setupHover(o),this.setupFocus(o),this.setupAria(),this.setupFilterButton(),this.setupUserComp(),this.setupSyncWithFilter(o),this.setupUi(),o.addManagedElementListeners(this.eButtonShowMainFilter,{click:this.showParentFilter.bind(this)}),this.setupFilterChangedListener(o),o.addManagedListeners(this.column,{colDefChanged:()=>this.onColDefChanged(o)}),o.addDestroyFunc(()=>{this.eButtonShowMainFilter=null,this.eFloatingFilterBody=null,this.userCompDetail
76s=null,this.clearComponent()})}resizeHeader(){}moveHeader(){}setupActive(){const e=this.column.getColDef(),t=!!e.filter,s=!!e.floatingFilter;this.active=t&&s}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=N("filter",this.gos,this.column);e&&(this.iconCreated=!0,this.eButtonShowMainFilter.appendChild(e))}setupFocus(e){e.createManagedBean(new kt(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.localeService.getLocaleTextFunc();ze(this.eButtonShowMainFilter,e("ariaFilterMenuOpen","Open Filter Menu"))}onTabKeyDown(e){if(Q(this.gos)===this.eGui)return;const i=this.focusService.findNextFocusableElement(this.eGui,null,e.shiftKey);if(i){this.beans.headerNavigationService.scrollToColumn(this.column),e.preventDefault(),i.focus();return}const o=this.findNextColumnWithFloatingFilter(e.shiftKey);o&&this.focusService.focusHeaderPosition({headerPosition:{headerRowIndex:this.getParentRowCtrl().getRowIndex(),column:o},event:e})&&e.preventDefault()}findNextColumnWithFloatingFilter(e){const t=this.beans.visibleColsService;let s=this.column;do if(s=e?t.getColBefore(s):t.getColAfter(s),!s)break;while(!s.getColDef().filter||!s.getColDef().floatingFilter);return s}handleKeyDown(e){super.handleKeyDown(e);const t=this.getWrapperHasFocus();switch(e.key){case S.UP:case S.DOWN:t||e.preventDefault();case S.LEFT:case S.RIGHT:if(t)return;e.stopPropagation();case S.ENTER:t&&this.focusService.focusInto(this.eGui)&&e.preventDefault();break;case S.ESCAPE:t||this.eGui.focus()}}onFocusIn(e){if(this.eGui.contains(e.relatedTarget))return;const s=!!e.relatedTarget&&!e.relatedTarget.classList.contains("ag-floating-filter"),i=!!e.relatedTarget&&Fs(e.relatedTarget,"ag-floating-filter");if(s&&i&&e.target===this.eGui){const r=this.lastFocusEvent,n=!!(r&&r.key===S.TAB);if(r&&n){const l=r.shiftKey;this.focusService.focusInto(this.eGui,l)}}const o=this.getRowIndex();this.beans.focusService.setFocusedHeader(o,this.column)}setupHover(e){e.createManagedBean(new rn([this.column],this.eGui));const t=()=>{if(!this.gos.get("columnHoverHighlight"))return;const s=this.beans.columnHoverService.isHovered(this.column);this.comp.addOrRemoveCssClass("ag-column-hover",s)};e.addManagedEventListeners({columnHoverChanged:t}),t()}setupLeft(e){const t=new sn(this.column,this.eGui,this.beans);e.createManagedBean(t)}setupFilterButton(){this.suppressFilterButton=!this.menuService.isFloatingFilterButtonEnabled(this.column),this.highlightFilterButtonWhenActive=!this.menuService.isLegacyMenuEnabled()}setupUserComp(){var t;if(!this.active)return;const e=(t=this.beans.filterManager)==null?void 0:t.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.menuService.showFilterMenu({column:this.column,buttonElement:e,containerType:"floatingFilter",positionBy:"button"})}setupSyncWithFilter(e){if(!this.active)return;const{filterManager:t}=this.beans,s=i=>{if((i==null?void 0:i.source)==="filterDestroyed"&&!this.isAlive())return;const o=this.comp.getFloatingFilterComp();o&&o.then(r=>{if(r){const n=t==null?void 0:t.getCurrentFloatingFilterParentModel(this.column),l=i?{...i,columns:i.columns??[],source:i.source==="api"?"api":"columnFilter"}:null;r.onParentModelChanged(n,l)}})};[this.destroySyncListener]=e.addManagedListeners(this.column,{filterChanged:s}),t!=null&&t.isFilterActive(this.column)&&s(null)}setupWidth(e){const t=()=>{const s=`${this.column.getActualWidth()}px`;this.comp.setWidth(s)};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(){var e;if(!this.suppressFilterButton&&this.comp){const t=!!((e=this.beans.filterManager)!=null&&e.isFilterAllowed(this.column));this.comp.setButtonWrapperDisplayed(t),this.highlightFilterButtonWhenActive&&t&&this.eButtonShowMainFilter.classList.toggle("ag-filter-active",this.column.isFilterActive())}}onColDefChanged(e){var r;const t=this.active;this.setupActive();const s=!t&&this.active;t&&!this.active&&(this.destroySyncListener(),this.destroyFilterChangedListener());const i=this.active?(r=this.beans.filterManager)==null?void 0:r.getFloatingFilterCompDetail
76s(this.column,()=>this.showParentFilter()):null,o=this.comp.getFloatingFilterComp();!o||!i?this.updateCompDetails(e,i,s):o.then(n=>{var l;!n||(l=this.beans.filterManager)!=null&&l.areFilterCompsDifferent(this.userCompDetails??null,i)?this.updateCompDetails(e,i,s):this.updateFloatingFilterParams(i)})}updateCompDetails(e,t,s){this.isAlive()&&(this.setCompDetails(t),this.setupFilterButton(),this.setupUi(),s&&(this.setupSyncWithFilter(e),this.setupFilterChangedListener(e)))}updateFloatingFilterParams(e){var s;if(!e)return;const t=e.params;(s=this.comp.getFloatingFilterComp())==null||s.then(i=>{let o=!1;i!=null&&i.refresh&&typeof i.refresh=="function"&&i.refresh(t)!==null&&(o=!0),!o&&(i!=null&&i.onParamsUpdated)&&typeof i.onParamsUpdated=="function"&&i.onParamsUpdated(t)!==null&&R("Custom floating filter method 'onParamsUpdated' is deprecated. Use 'refresh' instead.")})}destroy(){super.destroy(),this.destroySyncListener=null,this.destroyFilterChangedListener=null}};function ID(e){return e}var V="32.3.2";function Tp(e){var t,s;return!!((t=e.filterManager)!=null&&t.isColumnFilterPresent())||!!((s=e.filterManager)!=null&&s.isAggregateFilterPresent())}function Ip(e,t,s){var i;return(i=e.filterManager)==null?void 0:i.getFilterInstance(t,s)}function Lp(e,t){var s;return((s=e.filterManager)==null?void 0:s.getColumnFilterInstance(t))??Promise.resolve(void 0)}function Gp(e,t){var i;const s=e.columnModel.getColDefCol(t);if(s)return(i=e.filterManager)==null?void 0:i.destroyFilter(s,"api")}function kp(e,t){e.frameworkOverrides.wrapIncoming(()=>{var s;return(s=e.filterManager)==null?void 0:s.setFilterModel(t)})}function Op(e){var t;return((t=e.filterManager)==null?void 0:t.getFilterModel())??{}}function Np(e,t){var s;return((s=e.filterManager)==null?void 0:s.getColumnFilterModel(t))??null}function Bp(e,t,s){var i;return((i=e.filterManager)==null?void 0:i.setColumnFilterModel(t,s))??Promise.resolve()}function Vp(e,t){const s=e.columnModel.getCol(t);if(!s){_(`column '${t}' not found`);return}e.menuService.showFilterMenu({column:s,containerType:"columnFilter",positionBy:"auto"})}function Hp(e,t,s){if(t==null)return null;let i=null;const{compName:o,jsComp:r,fwComp:n}=Ba.getCompKeys(e,t,Xr);return o?i={set:"agSetColumnFloatingFilter",agSetColumnFilter:"agSetColumnFloatingFilter",multi:"agMultiColumnFloatingFilter",agMultiColumnFilter:"agMultiColumnFloatingFilter",group:"agGroupColumnFloatingFilter",agGroupColumnFilter:"agGroupColumnFloatingFilter",number:"agNumberColumnFloatingFilter",agNumberColumnFilter:"agNumberColumnFloatingFilter",date:"agDateColumnFloatingFilter",agDateColumnFilter:"agDateColumnFloatingFilter",text:"agTextColumnFloatingFilter",agTextColumnFilter:"agTextColumnFloatingFilter"}[o]:r==null&&n==null&&t.filter===!0&&(i=s()),i}var Zn={january:"January",february:"February",march:"March",april:"April",may:"May",june:"June",july:"July",august:"August",september:"September",october:"October",november:"November",december:"December"},Jn=["january","february","march","april","may","june","july","august","september","october","november","december"],Wp=class extends b{constructor(){super(...arguments),this.beanName="columnFilterService",this.allColumnFilters=new Map,this.allColumnListeners=new Map,this.activeAggregateFilters=[],this.activeColumnFilters=[],this.processingFilterChange=!1,this.filterModelUpdateQueue=[],this.columnFilterModelUpdateQueue=[]}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.rowModel=e.rowModel,this.userComponentFactory=e.userComponentFactory,this.rowRenderer=e.rowRenderer,this.dataTypeService=e.dataTypeService,this.filterManager=e.filterManager}postConstruct(){var e,t;this.addManagedEventListeners({gridColumnsChanged:this.onColumnsChanged.bind(this),rowDataUpdated:()=>this.onNewRowsLoaded("rowDataUpdated"),dataTypesInferred:this.processFilterModelUpdateQueue.bind(this)}),this.initialFilterModel={...((t=(e=this.gos.get("initialState"))==null?void 0:e.filter)==null?void 0:t.filterModel)??{}}}setFilterModel(e,t="api"){var o;if((o=this.dataTypeService)!=null&&o.isPendingInference()){this.filterModelUpdateQueue.push({model:e,source:t});return}const s=[],i=this.getFilterModel(!0);if(e){const r=new Set(Object.keys(e));
76this.allColumnFilters.forEach((n,l)=>{const a=e[l];s.push(this.setModelOnFilterWrapper(n.filterPromise,a)),r.delete(l)}),r.forEach(n=>{const l=this.columnModel.getColDefCol(n)||this.columnModel.getCol(n);if(!l){R("setFilterModel() - no column found for colId: "+n);return}if(!l.isFilterAllowed()){R("setFilterModel() - unable to fully apply model, filtering disabled for colId: "+n);return}const a=this.getOrCreateFilterWrapper(l);if(!a){R("setFilterModel() - unable to fully apply model, unable to create filter for colId: "+n);return}s.push(this.setModelOnFilterWrapper(a.filterPromise,e[n]))})}else this.allColumnFilters.forEach(r=>{s.push(this.setModelOnFilterWrapper(r.filterPromise,null))});K.all(s).then(()=>{var l;const r=this.getFilterModel(!0),n=[];this.allColumnFilters.forEach((a,d)=>{const c=i?i[d]:null,u=r?r[d]:null;ci(c,u)||n.push(a.column)}),n.length>0&&((l=this.filterManager)==null||l.onFilterChanged({columns:n,source:t}))})}setModelOnFilterWrapper(e,t){return new K(s=>{e.then(i=>{typeof i.setModel!="function"&&(R("filter missing setModel method, which is needed for setFilterModel"),s()),(i.setModel(t)||K.resolve()).then(()=>s())})})}getFilterModel(e){const t={},{allColumnFilters:s,initialFilterModel:i}=this;return s.forEach((o,r)=>{const n=this.getModelFromFilterWrapper(o);E(n)&&(t[r]=n)}),e||Object.entries(i).forEach(([o,r])=>{var n;E(r)&&!s.has(o)&&((n=this.columnModel.getCol(o))!=null&&n.isFilterAllowed())&&(t[o]=r)}),t}getModelFromFilterWrapper(e){const{filter:t}=e;return t?typeof t.getModel!="function"?(R("filter API missing getModel method, which is needed for getFilterModel"),null):t.getModel():this.getModelFromInitialState(e.column)}getModelFromInitialState(e){return this.initialFilterModel[e.getColId()]??null}isColumnFilterPresent(){return this.activeColumnFilters.length>0}isAggregateFilterPresent(){return!!this.activeAggregateFilters.length}disableColumnFilters(){return this.allColumnFilters.size?(this.allColumnFilters.forEach(e=>this.disposeFilterWrapper(e,"advancedFilterEnabled")),!0):!1}doAggregateFiltersPass(e,t){return this.doColumnFiltersPass(e,t,!0)}updateActiveFilters(){const e=r=>r?r.isFilterActive?r.isFilterActive():(R("Filter is missing isFilterActive() method"),!1):!1,t=!!fi(this.gos),s=r=>{if(!r.isPrimary())return!0;const l=!this.columnModel.isPivotActive();return!r.isValueActive()||!l?!1:this.columnModel.isPivotMode()?!0:t},i=[],o=[];return this.forEachColumnFilter((r,n)=>{e(r)&&(s(n.column)?i.push(r):o.push(r))}).then(()=>{this.activeAggregateFilters=i,this.activeColumnFilters=o})}updateFilterFlagInColumns(e,t){return this.forEachColumnFilter((s,i)=>i.column.setFilterActive(s.isFilterActive(),e,t))}forEachColumnFilter(e){return K.all(Array.from(this.allColumnFilters.values()).map(t=>t.filterPromise.then(s=>e(s,t))))}doColumnFiltersPass(e,t,s){const{data:i,aggData:o}=e,r=s?this.activeAggregateFilters:this.activeColumnFilters,n=s?o:i;for(let l=0;l<r.length;l++){const a=r[l];if(!(a==null||a===t)){if(typeof a.doesFilterPass!="function")throw new Error("Filter is missing method doesFilterPass");if(!a.doesFilterPass({node:e,data:n}))return!1}}return!0}callOnFilterChangedOutsideRenderCycle(e){const t=()=>{var s;return(s=this.filterManager)==null?void 0:s.onFilterChanged(e)};this.rowRenderer.isRefreshInProgress()?setTimeout(t,0):t()}updateBeforeFilterChanged(e={}){const{filterInstance:t,additionalEventAttributes:s}=e;return this.updateDependentFilters(),this.updateActiveFilters().then(()=>this.updateFilterFlagInColumns("filterChanged",s).then(()=>{this.allColumnFilters.forEach(i=>{i.filterPromise&&i.filterPromise.then(o=>{o&&o!==t&&o.onAnyFilterChanged&&o.onAnyFilterChanged()})}),this.processingFilterChange=!0}))}updateAfterFilterChanged(){this.processingFilterChange=!1}isSuppressFlashingCellsBecauseFiltering(){return!(this.gos.get("allowShowChangeAfterFilter")??!1)&&this.processingFilterChange}onNewRowsLoaded(e){this.forEachColumnFilter(t=>{t.onNewRowsLoaded&&t.onNewRowsLoaded()}).then(()=>this.updateFilterFlagInColumns(e,{afterDataChange:!0})).then(()=>this.updateActiveFilters())}createValueGetter(e){return({node:t})=>this.valueService.getValue(e,t,!0)}createGetValue(e){return(t,s)=>{const i=s?this.columnModel.getCol(s):e;return i?this.valueService.getValue(i,t,!0):void 0}}isFilterActive(e){const{filter:t}=this.cachedFilter(e)??{};return t?t.isFilterActive():this.getModelFromInitialState(e)!=null}getOrCreateFilterWrapper(e){if(!e.isFilterAllowed())return null;let t=this.cachedFilter(e);return t||(t=this.createFilterWrapper(e),this.setColumnFilterWrapper(e,t)),t}cachedFilter(e){return this.allColumnFilters.get(e.getColId())}getDefaultFilter(e){var s;let t;if(To(this.gos))t="agSetColumnFilter";else{const i=(s=this.dataTypeService)==null?void 0:s.getBaseDataType(e);i==="number"?t="agNumberColumnFilter":i==="date"||i==="dateString"?t="agDateColumnFilter":t="agTextColumnFilter"}return t}getDefaultFloatingFilter(e){var s;let t;if(To(this.gos))t="agSetColumnFloatingFilter";else{const i=(s=this.dataTypeService)==null?void 0:s.getBaseDataType(e);i==="number"?t="agNumberColumnFloatingFilter":i==="date"||i==="dateString"?t="agDateColumnFloatingFilter":t="agTextColumnFloatingFilter"}return t}createFilterInstance(e,t){const s=this.getDefaultFilter(e),i=e.getColDef();let o;const r={...this.createFilterParams(e,i),filterModifiedCallback:()=>this.filterModifiedCallbackFactory(o,e)(),filterChangedCallback:l=>this.filterChangedCallbackFactory(o,e)(l),doesRowPassOtherFilter:l=>this.filterManager?this.filterManager.doesRowPassOtherFilters(o,l):!0},n=this.userComponentFactory.getFilterDetails(i,r,s);return n?{filterPromise:()=>{const l=n.newAgStackInstance();return l!=null&&l.then(a=>{o=a,t&&(t.filter=a)}),l}
76,compDetails:n}:{filterPromise:null,compDetails:null}}createFilterParams(e,t){return this.gos.addGridCommonParams({column:e,colDef:go(t),rowModel:this.rowModel,filterChangedCallback:()=>{},filterModifiedCallback:()=>{},valueGetter:this.createValueGetter(e),getValue:this.createGetValue(e),doesRowPassOtherFilter:()=>!0})}createFilterWrapper(e){const t={column:e,filterPromise:null,compiledElement:null,compDetails:null},{filterPromise:s,compDetails:i}=this.createFilterInstance(e,t);return t.filterPromise=(s==null?void 0:s())??null,t.compDetails=i,t}onColumnsChanged(){var s;const e=[];this.allColumnFilters.forEach((i,o)=>{let r;i.column.isPrimary()?r=this.columnModel.getColDefCol(o):r=this.columnModel.getCol(o),!(r&&r===i.column)&&(e.push(i.column),this.disposeFilterWrapper(i,"columnChanged"),this.disposeColumnListener(o))});const t=e.every(i=>i.getColDef().filter==="agGroupColumnFilter");e.length>0&&!t?(s=this.filterManager)==null||s.onFilterChanged({columns:e,source:"api"}):this.updateDependentFilters()}updateDependentFilters(){const e=this.columnModel.getAutoCols();e==null||e.forEach(t=>{t.getColDef().filter==="agGroupColumnFilter"&&this.getOrCreateFilterWrapper(t)})}isFilterAllowed(e){if(!e.isFilterAllowed())return!1;const{filter:s}=this.allColumnFilters.get(e.getColId())??{};return s&&typeof(s==null?void 0:s.isFilterAllowed)=="function"?s.isFilterAllowed():!0}getFloatingFilterCompDetails(e,t){const s=a=>{var c;const d=(c=this.getOrCreateFilterWrapper(e))==null?void 0:c.filterPromise;d!=null&&d.then(u=>{a(Es(u))})},i=e.getColDef(),o={...this.createFilterParams(e,i),filterChangedCallback:()=>s(a=>this.filterChangedCallbackFactory(a,e)())},r=this.userComponentFactory.mergeParamsWithApplicationProvidedParams(i,Xr,o);let n=Hp(this.frameworkOverrides,i,()=>this.getDefaultFloatingFilter(e));n==null&&(n="agReadOnlyFloatingFilter");const l={column:e,filterParams:r,currentParentModel:()=>this.getCurrentFloatingFilterParentModel(e),parentFilterInstance:s,showParentFilter:t,suppressFilterButton:!1};return this.userComponentFactory.getFloatingFilterCompDetails(i,l,n)}getCurrentFloatingFilterParentModel(e){return this.getModelFromFilterWrapper(this.cachedFilter(e)??{column:e})}destroyFilter(e,t="api"){var o;const s=e.getColId(),i=this.allColumnFilters.get(s);this.disposeColumnListener(s),delete this.initialFilterModel[s],i&&(this.disposeFilterWrapper(i,t),(o=this.filterManager)==null||o.onFilterChanged({columns:[e],source:"api"}))}disposeColumnListener(e){const t=this.allColumnListeners.get(e);t&&(this.allColumnListeners.delete(e),t())}disposeFilterWrapper(e,t){e.filterPromise.then(s=>{this.destroyBean(s),e.column.setFilterActive(!1,"filterDestroyed"),this.allColumnFilters.delete(e.column.getColId()),this.eventService.dispatchEvent({type:"filterDestroyed",source:t,column:e.column})})}filterModifiedCallbackFactory(e,t){return()=>{this.eventService.dispatchEvent({type:"filterModified",column:t,filterInstance:e})}}filterChangedCallbackFactory(e,t){return s=>{const i=(s==null?void 0:s.source)??"columnFilter",o={filter:e,additionalEventAttributes:s,columns:[t],source:i};this.callOnFilterChangedOutsideRenderCycle(o)}}checkDestroyFilter(e){const t=this.allColumnFilters.get(e);if(!t)return;const s=t.column,{compDetails:i}=s.isFilterAllowed()?this.createFilterInstance(s):{compDetails:null};if(this.areFilterCompsDifferent(t.compDetails,i)){this.destroyFilter(s,"paramsUpdated");return}const o=s.getColDef().filterParams;if(!t.filterPromise){this.destroyFilter(s,"paramsUpdated");return}t.filterPromise.then(r=>{(r!=null&&r.refresh?r.refresh({...this.createFilterParams(s,s.getColDef()),filterModifiedCallback:this.filterModifiedCallbackFactory(r,s),filterChangedCallback:this.filterChangedCallbackFactory(r,s),doesRowPassOtherFilter:l=>this.filterManager?this.filterManager.doesRowPassOtherFilters(r,l):!0,...o}):!0)===!1&&this.destroyFilter(s,"paramsUpdated")})}setColumnFilterWrapper(e,t){const s=e.getColId();this.allColumnFilters.set(s,t),this.allColumnListeners.set(s,this.addManagedListeners(e,{colDefChanged:()=>this.checkDestroyFilter(s)})[0])}areFilterCompsDifferent(e,t){if(!t||!e)return!0;const{componentClass:s}=e,{componentClass:i}=t;return!(s===i||(s==null?void 0:s.render)&&(i==null?void 0:i.render)&&s.render===i.render)}hasFloatingFilters(){return this.columnModel.getCols().some(t=>t.getColDef().floatingFilter)}getFilterInstance(e,t){t&&this.getFilterInstanceImpl(e).then(s=>{const i=Es(s);t(i)})}getColumnFilterInstance(e){return new Promise(t=>{this.getFilterInstanceImpl(e).then(s=>{t(Es(s))})})}getFilterInstanceImpl(e){var i;const t=this.columnModel.getColDefCol(e);return t?((i=this.getOrCreateFilterWrapper(t))==null?void 0:i.filterPromise)??K.resolve(null):K.resolve(void 0)}processFilterModelUpdateQueue(){this.filterModelUpdateQueue.forEach(({model:e,source:t})=>this.setFilterModel(e,t)),this.filterModelUpdateQueue=[],this.columnFilterModelUpdateQueue.forEach(({key:e,model:t,resolve:s})=>{this.setColumnFilterModel(e,t).then(()=>s())}),this.columnFilterModelUpdateQueue=[]}getColumnFilterModel(e){const t=this.getFilterWrapper(e);return t?this.getModelFromFilterWrapper(t):null}setColumnFilterModel(e,t){var r;if((r=this.dataTypeService)!=null&&r.isPendingInference()){let n=()=>{};const l=new Promise(a=>{n=a});return this.columnFilterModelUpdateQueue.push({key:e,model:t,resolve:n}),l}const s=this.columnModel.getColDefCol(e),i=s?this.getOrCreateFilterWrapper(s):null;return i?(n=>new Promise(l=>{n.then(a=>l(a))}))(this.setModelOnFilterWrapper(i.filterPromise,t)):Promise.resolve()}getFilterWrapper(e){const t=this.columnModel.getColDefCol(e);return t?this.cachedFilter(t)??null:null}setColDefPropertiesForDataType(e,t,s){const i=To(this.gos),o=this.localeService.getLocaleTextFunc(),r=n=>{const{filterParams:l}=e;e.filterParams=typeof l=="object"?{...l,...n}:n};switch(t.baseDataType){case"number":{i&&r({comparator:(n,l)=>{const a=n==null?0:parseInt(n),d=l==null?0:parseInt(l);return a===d?0:a>d?1:-1}});break}case"boolean":{r(i?{valueFormatter:n=>E(n.value)?o(String(n.value),n.value?"True":"False"):o("blanks","(Blanks)")}:{maxNumConditions:1,debounceMs:0,filterOptions:["empty",{displayKey:"true",displayName:"True",predicate:(n,l)=>l,numberOfInputs:0}
76,{displayKey:"false",displayName:"False",predicate:(n,l)=>l===!1,numberOfInputs:0}]});break}case"date":{i&&r({valueFormatter:n=>{const l=s(n);return E(l)?l:o("blanks","(Blanks)")},treeList:!0,treeListFormatter:(n,l)=>{if(l===1&&n!=null){const a=Jn[Number(n)-1];return o(a,Zn[a])}return n??o("blanks","(Blanks)")}});break}case"dateString":{const n=t.dateParser;r(i?{valueFormatter:l=>{const a=s(l);return E(a)?a:o("blanks","(Blanks)")},treeList:!0,treeListPathGetter:l=>{const a=n(l??void 0);return a?[String(a.getFullYear()),String(a.getMonth()+1),String(a.getDate())]:null},treeListFormatter:(l,a)=>{if(a===1&&l!=null){const d=Jn[Number(l)-1];return o(d,Zn[d])}return l??o("blanks","(Blanks)")}}:{comparator:(l,a)=>{const d=n(a);return a==null||d<l?-1:d>l?1:0}});break}case"object":{i?r({valueFormatter:n=>{const l=s(n);return E(l)?l:o("blanks","(Blanks)")}}):e.filterValueGetter=n=>s({column:n.column,node:n.node,value:this.valueService.getValue(n.column,n.node)});break}}}destroy(){super.destroy(),this.allColumnFilters.forEach(e=>this.disposeFilterWrapper(e,"gridDestroyed")),this.allColumnListeners.clear()}};function zp(e){var t;return!!((t=e.filterManager)!=null&&t.isAnyFilterPresent())}function Up(e,t="api"){var s;(s=e.filterManager)==null||s.onFilterChanged({source:t})}var _p=class extends O{constructor(){super(` 77 <div class="ag-floating-filter-input" role="presentation"> 78 <ag-input-text-field data-ref="eFloatingFilterText"></ag-input-text-field> 79 </div>`,[ps]),this.eFloatingFilterText=P}wireBeans(e){this.columnNameService=e.columnNameService}destroy(){super.destroy()}init(e){this.params=e;const t=this.columnNameService.getDisplayNameForColumn(e.column,"header",!0),s=this.localeService.getLocaleTextFunc();this.eFloatingFilterText.setDisabled(!0).setInputAriaLabel(`${t} ${s("ariaFilterInput","Filter Input")}`)}onParentModelChanged(e){if(e==null){this.eFloatingFilterText.setValue("");return}this.params.parentFilterInstance(t=>{if(t.getModelAsString){const s=t.getModelAsString(e);this.eFloatingFilterText.setValue(s)}})}onParamsUpdated(e){this.refresh(e)}refresh(e){this.init(e)}},hd=class extends O{wireBeans(e){this.columnNameService=e.columnNameService}getDefaultDebounceMs(){return 0}destroy(){super.destroy()}isEventFromFloatingFilter(e){return e&&e.afterFloatingFilter}isEventFromDataChange(e){return e==null?void 0:e.afterDataChange}getLastType(){return this.lastType}isReadOnly(){return this.readOnly}setLastTypeFromModel(e){if(!e){this.lastType=this.optionsFactory.getDefaultOption();return}const t=e.operator;let s;t?s=e.conditions[0]:s=e,this.lastType=s.type}canWeEditAfterModelFromParentFilter(e){if(!e)return this.isTypeEditable(this.lastType);if(e.operator)return!1;const s=e;return this.isTypeEditable(s.type)}init(e){this.setSimpleParams(e,!1)}setSimpleParams(e,t=!0){this.optionsFactory=new qa,this.optionsFactory.init(e.filterParams,this.getDefaultFilterOptions()),t||(this.lastType=this.optionsFactory.getDefaultOption()),this.readOnly=!!e.filterParams.readOnly;const s=this.isTypeEditable(this.optionsFactory.getDefaultOption());this.setEditable(s)}onParamsUpdated(e){this.refresh(e)}refresh(e){this.setSimpleParams(e)}doesFilterHaveSingleInput(e){const t=this.optionsFactory.getCustomOption(e),{numberOfInputs:s}=t||{};return s==null||s==1}isTypeEditable(e){const t=["inRange","empty","blank","notBlank"];return!!e&&!this.isReadOnly()&&this.doesFilterHaveSingleInput(e)&&t.indexOf(e)<0}getAriaLabel(e){const t=this.columnNameService.getDisplayNameForColumn(e.column,"header",!0),s=this.localeService.getLocaleTextFunc();return`${t} ${s("ariaFilterInput","Filter Input")}`}},Kp=class extends hd{constructor(){super(` 80 <div class="ag-floating-filter-input" role="presentation"> 81 <ag-input-text-field data-ref="eReadOnlyText"></ag-input-text-field> 82 <div data-ref="eDateWrapper" style="display: flex;"></div> 83 </div>`,[ps]),this.eReadOnlyText=P,this.eDateWrapper=P}wireBeans(e){super.wireBeans(e),this.context=e.context,this.userComponentFactory=e.userComponentFactory}getDefaultFilterOptions(){return rd}init(e){super.init(e),this.params=e,this.filterParams=e.filterParams,this.createDateComponent(),this.filterModelFormatter=new nd(this.filterParams,this.localeService,this.optionsFactory);const t=this.localeService.getLocaleTextFunc();this.eReadOnlyText.setDisabled(!0).setInputAriaLabel(t("ariaDateFilterInput","Date Filter Input"))}onParamsUpdated(e){this.refresh(e)}refresh(e){super.refresh(e),this.params=e,this.filterParams=e.filterParams,this.updateDateComponent(),this.filterModelFormatter.updateParams({optionsFactory:this.optionsFactory,dateFilterParams:this.filterParams}),this.updateCompOnModelChange(e.currentParentModel())}updateCompOnModelChange(e){const t=!this.isReadOnly()&&this.canWeEditAfterModelFromParentFilter(e);if(this.setEditable(t),t){if(e){const s=e;this.dateComp.setDate(je(s.dateFrom))}else this.dateComp.setDate(null);this.eReadOnlyText.setValue("")}else this.eReadOnlyText.setValue(this.filterModelFormatter.getModelAsString(e)),this.dateComp.setDate(null)}setEditable(e){H(this.eDateWrapper,e),H(this.eReadOnlyText.getGui(),!e)}onParentModelChanged(e,t){this.isEventFromFloatingFilter(t)||this.isEventFromDataChange(t)||(super.setLastTypeFromModel(e),this.updateCompOnModelChange(e))}onDateChanged(){const e=this.dateComp.getDate(),t=lt(e);this.params.parentFilterInstance(s=>{if(s){const i=je(t);s.onFloatingFilterChanged(this.getLastType()||null,i)}})}getDateComponentParams(){const e=Jr(this.params.filterParams,this.getDefaultDebounceMs());return{onDateChanged:Me(this.onDateChanged.bind(this),e),filterParams:this.params.column.getColDef().filterParams}}createDateComponent(){this.dateComp=new od(this.context,this.userComponentFactory,this.getDateComponentParams(),this.eDateWrapper,e=>{e.setInputAriaLabel(this.getAriaLabel(this.params))}),this.addDestroyFunc(()=>this.dateComp.destroy())}updateDateComponent(){const e=this.gos.addGridCommonParams(this.getDateComponentParams());this.dateComp.updateParams(e)}getFilterModelFormatter(){return this.filterModelFormatter}},$p=class extends O{constructor(){super(` 84 <div class="ag-filter-filter"> 85 <ag-input-text-field class="ag-date-filter" data-ref="eDateInput"></ag-input-text-field> 86 </div>`,[ps]),this.eDateInput=P}destroy(){super.destroy()}init(e){this.params=e,this.setParams(e);const t=this.eDateInput.getInputElement();this.addManagedListeners(t,{mouseDown:()=>{this.eDateInput.isDisabled()||this.usingSafariDatePicker||t.focus()},input:s=>{s.target===Q(this.gos)&&(this.eDateInput.isDisabled()||this.params.onDateChanged())}})}setParams(e){const t=this.eDateInput.getInputElement(),s=this.shouldUseBrowserDatePicker(e);this.usingSafariDatePicker=s&&Pt(),t.type=s?"date":"text";const{minValidYear:i,maxValidYear:o,minValidDate:r,maxValidDate:n}=e.filterParams||{};if(r&&i&&R("DateFilter should not have both minValidDate and minValidYear parameters set at the same time! minValidYear will be ignored."),n&&o&&R("DateFilter should not have both maxValidDate and maxValidYear parameters set at the same time! maxValidYear will be ignored."),r&&n){const[l,a]=[r,n].map(d=>d instanceof Date?d:je(d));l&&a&&l.getTime()>a.getTime()&&R("DateFilter parameter minValidDate should always be lower than or equal to parameter maxValidDate.")}r?r instanceof Date?t.min=ri(r):t.min=r:i&&(t.min=`${i}-01-01`),n?n instanceof Date?t.max=ri(n):t.max=n:o&&(t.max=`${o}-12-31`)}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e,this.setParams(e)}getDate(){return je(this.eDateInput.getValue())}setDate(e){this.eDateInput.setValue(lt(e,!1))}setInputPlaceholder(e){this.eDateInput.setInputPlaceholder(e)}setInputAriaLabel(e){this.eDateInput.setAriaLabel(e)}setDisabled(e){this.eDateInput.setDisabled(e)}afterGuiAttached(e){(!e||!e.suppressFocus)&&this.eDateInput.getInputElement().focus()}shouldUseBrowserDatePicker(e){return e.filterParams&&e.filterParams.browserDatePicker!=null?e.filterParams.browserDatePicker:$r()||jr()||Pt()&&va()>=14.1}},pd=class extends b{constructor(e){super(),this.params=e,this.eFloatingFilterTextInput=P,this.valueChangedListener=()=>{}}setupGui(e){var i;this.eFloatingFilterTextInput=this.createManagedBean(new Yt((i=this.params)==null?void 0:i.config));const t=this.eFloatingFilterTextInput.getGui();e.appendChild(t);const s=o=>this.valueChangedListener(o);this.addManagedListeners(t,{input:s,keydown:s})}setEditable(e){this.eFloatingFilterTextInput.setDisabled(!e)}setAutoComplete(e){this.eFloatingFilterTextInput.setAutoComplete(e)}getValue(){return this.eFloatingFilterTextInput.getValue()}setValue(e,t){this.eFloatingFilterTextInput.setValue(e,t)}setValueChangedListener(e){this.valueChangedListener=e}setParams(e){this.setAriaLabel(e.ariaLabel),e.autoComplete!==void 0&&this.setAutoComplete(e.autoComplete)}setAriaLabel(e){this.eFloatingFilterTextInput.setInputAriaLabel(e)}},gd=class extends hd{constructor(){super(...arguments),this.eFloatingFilterInputContainer=P}postConstruct(){this.setTemplate(` 87 <div class="ag-floating-filter-input" role="presentation" data-ref="eFloatingFilterInputContainer"></div> 88 `)}getDefaultDebounceMs(){return 500}onParentModelChanged(e,t){this.isEventFromFloatingFilter(t)||this.isEventFromDataChange(t)||(this.setLastTypeFromModel(e),this.setEditable(this.canWeEditAfterModelFromParentFilter(e)),this.floatingFilterInputService.setValue(this.getFilterModelFormatter().getModelAsString(e)))}init(e){this.setupFloatingFilterInputService(e),super.init(e),this.setTextInputParams(e)}setupFloatingFilterInputService(e){this.floatingFilterInputService=this.createFloatingFilterInputService(e),this.floatingFilterInputService.setupGui(this.eFloatingFilterInputContainer)}setTextInputParams(e){this.params=e;const t=e.browserAutoComplete??!1;if(this.floatingFilterInputService.setParams({ariaLabel:this.getAriaLabel(e),autoComplete:t}),this.applyActive=io(this.params.filterParams),!this.isReadOnly()){const s=Jr(this.params.filterParams,this.getDefaultDebounceMs()),i=Me(this.syncUpWithParentFilter.bind(this),s);this.floatingFilterInputService.setValueChangedListener(i)}}onParamsUpdated(e){this.refresh(e)}refresh(e){super.refresh(e),this.setTextInputParams(e)}recreateFloatingFilterInputService(e){const t=this.floatingFilterInputService.getValue();de(this.eFloatingFilterInputContainer),this.destroyBean(this.floatingFilterInputService),this.setupFloatingFilterInputService(e),this.floatingFilterInputService.setValue(t,!0)}syncUpWithParentFilter(e){const t=e.key===S.ENTER;if(this.applyActive&&!t)return;let s=this.floatingFilterInputService.getValue();this.params.filterParams.trimInput&&(s=sd(s),this.floatingFilterInputService.setValue(s,!0)),this.params.parentFilterInstance(i=>{i&&i.onFloatingFilterChanged(this.getLastType()||null,s||null)})}setEditable(e){this.floatingFilterInputService.setEditable(e)}},jp=class extends b{constructor(){super(...arguments),this.valueChangedListener=()=>{},this.numberInputActive=!0}setupGui(e){this.eFloatingFilterNumberInput=this.createManagedBean(new en),this.eFloatingFilterTextInput=this.createManagedBean(new Yt),this.eFloatingFilterTextInput.setDisabled(!0);const t=this.eFloatingFilterNumberInput.getGui(),s=this.eFloatingFilterTextInput.getGui();e.appendChild(t),e.appendChild(s),this.setupListeners(t,i=>this.valueChangedListener(i)),this.setupListeners(s,i=>this.valueChangedListener(i))}setEditable(e){this.numberInputActive=e,this.eFloatingFilterNumberInput.setDisplayed(this.numberInputActive),this.eFloatingFilterTextInput.setDisplayed(!this.numberInputActive)}setAutoComplete(e){this.eFloatingFilterNumberInput.setAutoComplete(e),this.eFloatingFilterTextInput.setAutoComplete(e)}getValue(){return this.getActiveInputElement().getValue()}setValue(e,t){this.getActiveInputElement().setValue(e,t)}getActiveInputElement(){return this.numberInputActive?this.eFloatingFilterNumberInput:this.eFloatingFilterTextInput}setValueChangedListener(e){this.valueChangedListener=e}
88setupListeners(e,t){this.addManagedListeners(e,{input:t,keydown:t})}setParams(e){this.setAriaLabel(e.ariaLabel),e.autoComplete!==void 0&&this.setAutoComplete(e.autoComplete)}setAriaLabel(e){this.eFloatingFilterNumberInput.setInputAriaLabel(e),this.eFloatingFilterTextInput.setInputAriaLabel(e)}},qp=class extends gd{init(e){var t;super.init(e),this.filterModelFormatter=new Ja(this.localeService,this.optionsFactory,(t=e.filterParams)==null?void 0:t.numberFormatter)}onParamsUpdated(e){this.refresh(e)}refresh(e){fr(e.filterParams)!==this.allowedCharPattern&&this.recreateFloatingFilterInputService(e),super.refresh(e),this.filterModelFormatter.updateParams({optionsFactory:this.optionsFactory})}getDefaultFilterOptions(){return Za}getFilterModelFormatter(){return this.filterModelFormatter}createFloatingFilterInputService(e){return this.allowedCharPattern=fr(e.filterParams),this.allowedCharPattern?this.createManagedBean(new pd({config:{allowedCharPattern:this.allowedCharPattern}})):this.createManagedBean(new jp)}},Yp=class extends gd{init(e){super.init(e),this.filterModelFormatter=new td(this.localeService,this.optionsFactory)}onParamsUpdated(e){this.refresh(e)}refresh(e){super.refresh(e),this.filterModelFormatter.updateParams({optionsFactory:this.optionsFactory})}getDefaultFilterOptions(){return ed}getFilterModelFormatter(){return this.filterModelFormatter}createFloatingFilterInputService(){return this.createManagedBean(new pd)}};function Qp(e){var t;return!!((t=e.filterManager)!=null&&t.isQuickFilterPresent())}function Xp(e){return e.gos.get("quickFilterText")}function Zp(e){var t;(t=e.filterManager)==null||t.resetQuickFilterCache()}var Jp=class extends b{constructor(){super(...arguments),this.beanName="quickFilterService",this.quickFilter=null,this.quickFilterParts=null}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.rowModel=e.rowModel,this.pivotResultColsService=e.pivotResultColsService}postConstruct(){const e=this.resetQuickFilterCache.bind(this);this.addManagedEventListeners({columnPivotModeChanged:e,newColumnsLoaded:e,columnRowGroupChanged:e,columnVisible:()=>{this.gos.get("includeHiddenColumnsInQuickFilter")||this.resetQuickFilterCache()}}),this.addManagedPropertyListener("quickFilterText",t=>this.setQuickFilter(t.currentValue)),this.addManagedPropertyListeners(["includeHiddenColumnsInQuickFilter","applyQuickFilterBeforePivotOrAgg"],()=>this.onQuickFilterColumnConfigChanged()),this.quickFilter=this.parseQuickFilter(this.gos.get("quickFilterText")),this.parser=this.gos.get("quickFilterParser"),this.matcher=this.gos.get("quickFilterMatcher"),this.setQuickFilterParts(),this.addManagedPropertyListeners(["quickFilterMatcher","quickFilterParser"],()=>this.setQuickFilterParserAndMatcher())}refreshQuickFilterCols(){var o;const e=this.columnModel.isPivotMode(),t=this.columnModel.getAutoCols(),s=this.columnModel.getColDefCols();let i=(e&&!this.gos.get("applyQuickFilterBeforePivotOrAgg")?(o=this.pivotResultColsService.getPivotResultCols())==null?void 0:o.list:s)??[];t&&(i=i.concat(t)),this.colsForQuickFilter=this.gos.get("includeHiddenColumnsInQuickFilter")?i:i.filter(r=>r.isVisible()||r.isRowGroupActive())}isQuickFilterPresent(){return this.quickFilter!==null}doesRowPassQuickFilter(e){const t=this.gos.get("cacheQuickFilter");return this.matcher?this.doesRowPassQuickFilterMatcher(t,e):this.quickFilterParts.every(s=>t?this.doesRowPassQuickFilterCache(e,s):this.doesRowPassQuickFilterNoCache(e,s))}resetQuickFilterCache(){this.rowModel.forEachNode(e=>e.quickFilterAggregateText=null)}setQuickFilterParts(){const{quickFilter:e,parser:t}=this;e?this.quickFilterParts=t?t(e):e.split(" "):this.quickFilterParts=null}parseQuickFilter(e){return E(e)?re(this.gos)?e.toUpperCase():(R("Quick filtering only works with the Client-Side Row Model"),null):null}setQuickFilter(e){if(e!=null&&typeof e!="string"){R(`Grid option quickFilterText only supports string inputs, received: ${typeof e}`);return}const t=this.parseQuickFilter(e);this.quickFilter!==t&&(this.quickFilter=t,this.setQuickFilterParts(),this.dispatchLocalEvent({type:"quickFilterChanged"}))}setQuickFilterParserAndMatcher(){const e=this.gos.get("quickFilterParser"),t=this.gos.get("quickFilterMatcher"),s=e!==this.parser||t!==this.matcher;this.parser=e,this.matcher=t,s&&(this.setQuickFilterParts(),this.dispatchLocalEvent({type:"quickFilterChanged"}))}onQuickFilterColumnConfigChanged(){this.refreshQuickFilterCols(),this.resetQuickFilterCache(),this.isQuickFilterPresent()&&this.dispatchLocalEvent({type:"quickFilterChanged"})}doesRowPassQuickFilterNoCache(e,t){return this.colsForQuickFilter.some(s=>{const i=this.getQuickFilterTextForColumn(s,e);return E(i)&&i.indexOf(t)>=0})}doesRowPassQuickFilterCache(e,t){return this.checkGenerateQuickFilterAggregateText(e),e.quickFilterAggregateText.indexOf(t)>=0}doesRowPassQuickFilterMatcher(e,t){let s;e?(this.checkGenerateQuickFilterAggregateText(t),s=t.quickFilterAggregateText):s=this.getQuickFilterAggregateText(t);const{quickFilterParts:i,matcher:o}=this;return o(i,s)}checkGenerateQuickFilterAggregateText(e){e.quickFilterAggregateText||(e.quickFilterAggregateText=this.getQuickFilterAggregateText(e))}getQuickFilterTextForColumn(e,t){let s=this.valueService.getValue(e,t,!0);const i=e.getColDef();if(i.getQuickFilterText){const o=this.gos.addGridCommonParams({value:s,node:t,data:t.data,column:e,colDef:i});s=i.getQuickFilterText(o)}return E(s)?s.toString().toUpperCase():null}getQuickFilterAggregateText(e){const t=[];return this.colsForQuickFilter.forEach(s=>{const i=this.getQuickFilterTextForColumn(s,e);E(i)&&t.push(i)}),t.join(` 89`)}},nn={version:V,moduleName:"@ag-grid-community/filter-core",beans:[rp]},eg={version:V,moduleName:"@ag-grid-community/filter-api",apiFunctions:{isAnyFilterPresent:zp,onFilterChanged:Up},dependantModules:[nn]},Vs={version:V,moduleName:"@ag-grid-community/column-filter",beans:[Wp],dependantModules:[nn]},tg={version:V,moduleName:"@ag-grid-community/column-filter-api",apiFunctions:{isColumnFilterPresent:Tp,getFilterInstance:Ip,getColumnFilterInstance:Lp,destroyFilter:Gp,setFilterModel:kp,getFilterModel:Op,getColumnFilterModel:Np,setColumnFilterModel:Bp,showColumnFilter:Vp},dependantModules:[Vs,eg]},ln={version:V,moduleName:"@ag-grid-community/floating-filter-core",controllers:[{name:"headerFilterCell",classImp:Ap}],dependantModules:[Vs]},fd={version:V,moduleName:"@ag-grid-community/floating-filter",depen
89dantModules:[ln,Vs]},sg={version:V,moduleName:"@ag-grid-community/read-only-floating-filter",userComponents:[{name:"agReadOnlyFloatingFilter",classImp:_p}],dependantModules:[ln]},ig={version:V,moduleName:"@ag-grid-community/simple-filter",dependantModules:[Vs],userComponents:[{name:"agTextColumnFilter",classImp:Rp},{name:"agNumberColumnFilter",classImp:yp},{name:"agDateColumnFilter",classImp:Pp},{name:"agDateInput",classImp:$p}]},og={version:V,moduleName:"@ag-grid-community/simple-floating-filter",dependantModules:[ig,ln],userComponents:[{name:"agTextColumnFloatingFilter",classImp:Yp},{name:"agNumberColumnFloatingFilter",classImp:qp},{name:"agDateColumnFloatingFilter",classImp:Kp}]},md={version:V,moduleName:"@ag-grid-community/quick-filter-core",beans:[Jp],dependantModules:[nn]},rg={version:V,moduleName:"@ag-grid-community/quick-filter-api",apiFunctions:{isQuickFilterPresent:Qp,getQuickFilter:Xp,resetQuickFilter:Zp},dependantModules:[md]},ng={version:V,moduleName:"@ag-grid-community/quick-filter",dependantModules:[md,rg]},lg={version:V,moduleName:"@ag-grid-community/filter",dependantModules:[og,sg,ng,tg]},an=class extends O{constructor(e,t){super(e),this.ctrl=t}getCtrl(){return this.ctrl}},ag=class extends an{constructor(t){super(`<div class="ag-header-cell ag-floating-filter" role="gridcell"> 90 <div data-ref="eFloatingFilterBody" role="presentation"></div> 91 <div class="ag-floating-filter-button ag-hidden" data-ref="eButtonWrapper" role="presentation"> 92 <button type="button" class="ag-button ag-floating-filter-button-button" data-ref="eButtonShowMainFilter" tabindex="-1"></button> 93 </div> 94 </div>`,t),this.eFloatingFilterBody=P,this.eButtonWrapper=P,this.eButtonShowMainFilter=P}postConstruct(){const t=this.getGui(),s={addOrRemoveCssClass:(i,o)=>this.addOrRemoveCssClass(i,o),addOrRemoveBodyCssClass:(i,o)=>this.eFloatingFilterBody.classList.toggle(i,o),setButtonWrapperDisplayed:i=>H(this.eButtonWrapper,i),setCompDetails:i=>this.setCompDetails(i),getFloatingFilterComp:()=>this.compPromise,setWidth:i=>t.style.width=i,setMenuIcon:i=>this.eButtonShowMainFilter.appendChild(i)};this.ctrl.setComp(s,t,this.eButtonShowMainFilter,this.eFloatingFilterBody,void 0)}setCompDetails(t){if(!t){this.destroyFloatingFilterComp(),this.compPromise=null;return}this.compPromise=t.newAgStackInstance(),this.compPromise.then(s=>this.afterCompCreated(s))}destroy(){this.destroyFloatingFilterComp(),super.destroy()}destroyFloatingFilterComp(){this.floatingFilterComp&&(this.eFloatingFilterBody.removeChild(this.floatingFilterComp.getGui()),this.floatingFilterComp=this.destroyBean(this.floatingFilterComp))}afterCompCreated(t){if(t){if(!this.isAlive()){this.destroyBean(t);return}this.destroyFloatingFilterComp(),this.floatingFilterComp=t,this.eFloatingFilterBody.appendChild(t.getGui()),t.afterGuiAttached&&t.afterGuiAttached()}}},dg=class extends an{constructor(t){super(`<div class="ag-header-cell" role="columnheader"> 95 <div data-ref="eResize" class="ag-header-cell-resize" role="presentation"></div> 96 <div data-ref="eHeaderCompWrapper" class="ag-header-cell-comp-wrapper" role="presentation"></div> 97 </div>`,t),this.eResize=P,this.eHeaderCompWrapper=P,this.headerCompVersion=0,this.column=t.getColumnGroupChild(),this.pinned=t.getPinned()}postConstruct(){const t=this.getGui();((r,n)=>{n!=null&&n!=""?t.setAttribute(r,n):t.removeAttribute(r)})("col-id",this.column.getColId());const i={setWidth:r=>t.style.width=r,addOrRemoveCssClass:(r,n)=>this.addOrRemoveCssClass(r,n),setAriaSort:r=>r?fa(t,r):ma(t),setUserCompDetails:r=>this.setUserCompDetails(r),getUserCompInstance:()=>this.headerComp};this.ctrl.setComp(i,this.getGui(),this.eResize,this.eHeaderCompWrapper,void 0);const o=this.ctrl.getSelectAllGui();this.eResize.insertAdjacentElement("afterend",o)}destroy(){this.destroyHeaderComp(),super.destroy()}destroyHeaderComp(){this.headerComp&&(this.eHeaderCompWrapper.removeChild(this.headerCompGui),this.headerComp=this.destroyBean(this.headerComp),this.headerCompGui=void 0)}setUserCompDetails(t){this.headerCompVersion++;const s=this.headerCompVersion;t.newAgStackInstance().then(i=>this.afterCompCreated(s,i))}afterCompCreated(t,s){if(t!=this.headerCompVersion||!this.isAlive()){this.destroyBean(s);return}this.destroyHeaderComp(),this.headerComp=s,this.headerCompGui=s.getGui(),this.eHeaderCompWrapper.appendChild(this.headerCompGui),this.ctrl.
97setDragSource(this.getGui())}},cg=class extends an{constructor(t){super(`<div class="ag-header-group-cell" role="columnheader"> 98 <div data-ref="eHeaderCompWrapper" class="ag-header-cell-comp-wrapper" role="presentation"></div> 99 <div data-ref="eResize" class="ag-header-cell-resize" role="presentation"></div> 100 </div>`,t),this.eResize=P,this.eHeaderCompWrapper=P}postConstruct(){const t=this.getGui(),s=(o,r)=>r!=null?t.setAttribute(o,r):t.removeAttribute(o);t.setAttribute("col-id",this.ctrl.getColId());const i={addOrRemoveCssClass:(o,r)=>this.addOrRemoveCssClass(o,r),setHeaderWrapperHidden:o=>{o?this.eHeaderCompWrapper.style.setProperty("display","none"):this.eHeaderCompWrapper.style.removeProperty("display")},setHeaderWrapperMaxHeight:o=>{o!=null?this.eHeaderCompWrapper.style.setProperty("max-height",`${o}px`):this.eHeaderCompWrapper.style.removeProperty("max-height"),this.eHeaderCompWrapper.classList.toggle("ag-header-cell-comp-wrapper-limited-height",o!=null)},setResizableDisplayed:o=>H(this.eResize,o),setWidth:o=>t.style.width=o,setAriaExpanded:o=>s("aria-expanded",o),setUserCompDetails:o=>this.setUserCompDetails(o),getUserCompInstance:()=>this.headerGroupComp};this.ctrl.setComp(i,t,this.eResize,this.eHeaderCompWrapper,void 0)}setUserCompDetails(t){t.newAgStackInstance().then(s=>this.afterHeaderCompCreated(s))}afterHeaderCompCreated(t){const s=()=>this.destroyBean(t);if(!this.isAlive()){s();return}const i=this.getGui(),o=t.getGui();this.eHeaderCompWrapper.appendChild(o),this.addDestroyFunc(s),this.headerGroupComp=t,this.ctrl.setDragSource(i)}addOrRemoveHeaderWrapperStyle(t,s){const{eHeaderCompWrapper:i}=this;s?i.style.setProperty(t,s):i.style.removeProperty(t)}},mr=(e=>(e.COLUMN_GROUP="group",e.COLUMN="column",e.FLOATING_FILTER="filter",e))(mr||{}),ug=class extends O{constructor(t){super(),this.headerComps={},this.ctrl=t,this.setTemplate(`<div class="${this.ctrl.getHeaderRowClass()}" role="row"></div>`)}postConstruct(){ha(this.getGui(),this.ctrl.getAriaRowIndex());const t={setHeight:s=>this.getGui().style.height=s,setTop:s=>this.getGui().style.top=s,setHeaderCtrls:(s,i)=>this.setHeaderCtrls(s,i),setWidth:s=>this.getGui().style.width=s};this.ctrl.setComp(t,void 0)}destroy(){this.setHeaderCtrls([],!1),super.destroy()}setHeaderCtrls(t,s){if(!this.isAlive())return;const i=this.headerComps;if(this.headerComps={},t.forEach(o=>{const r=o.instanceId;let n=i[r];delete i[r],n==null&&(n=this.createHeaderComp(o),this.getGui().appendChild(n.getGui())),this.headerComps[r]=n}),Pe(i,(o,r)=>{this.getGui().removeChild(r.getGui()),this.destroyBean(r)}),s){const o=jt(this.headerComps);o.sort((n,l)=>{const a=n.getCtrl().getColumnGroupChild().getLeft(),d=l.getCtrl().getColumnGroupChild().getLeft();return a-d});const r=o.map(n=>n.getGui());Ma(this.getGui(),r)}}createHeaderComp(t){let s;switch(this.ctrl.getType()){case"group":s=new cg(t);break;case"filter":s=new ag(t);break;default:s=new dg(t);break}return this.createBean(s),s.setParentComponent(this),s}},hg=class extends b{constructor(){super(...arguments),this.beanName="headerNavigationService",this.currentHeaderRowWithoutSpan=-1}wireBeans(e){this.focusService=e.focusService,this.headerPositionUtils=e.headerPositionUtils,this.ctrlsService=e.ctrlsService,this.columnModel=e.columnModel,this.visibleColService=e.visibleColsService}postConstruct(){this.ctrlsService.whenReady(this,t=>{this.gridBodyCon=t.gridBodyCtrl});const e=le(this.gos);this.addManagedElementListeners(e,{mousedown:()=>this.setCurrentHeaderRowWithoutSpan(-1)})}getHeaderRowCount(){var e;return((e=this.ctrlsService.getHeaderRowContainerCtrl())==null?void 0:e.getRowCount())??0}getHeaderPositionForColumn(e,t){let s;if(typeof e=="string"?(s=this.columnModel.getCol(e),s||(s=this.visibleColService.getColumnGroup(e))):s=e,!s)return null;const i=this.ctrlsService.getHeaderRowContainerCtrl(),o=i==null?void 0:i.getAllCtrls(),r=W(o||[]).getType()==="filter",n=this.getHeaderRowCount()-1;let l=-1,a=s;for(;a;)l++,a=a.getParent();let d=l;return t&&r&&d===n-1&&d++,d===-1?null:{headerRowIndex:d,column:s}}navigateVertically(e,t,s){if(t||(t=this.focusService.getFocusedHeader()),!t)return!1;const{headerRowIndex:i}=t,o=t.column,r=this.getHeaderRowCount(),n=e===0;let{headerRowIndex:l,column:a,headerRowIndexWithoutSpan:d}=n?this.headerPositionUtils.getColumnVisibleParent(o,i):this.headerPositionUtils.getColumnVisibleChild(o,i),c=!1;return l<0&&(l=0,a=o,c=!0),l>=r?(l=-1,this.setCurrentHeaderRowWithoutSpan(-1)):d!==void 0&&(this.currentHeaderRowWithoutSpan=d),!c&&!a?!1:this.focusService.focusHeaderPosition({headerPosition:{headerRowIndex:l,column:a},allowUserOverride:!0,event:s})}setCurrentHeaderRowWithoutSpan(e){this.currentHeaderRowWithoutSpan=e}navigateHorizontally(e,t=!1,s){const i=this.focusService.getFocusedHeader(),o=e===2,r=this.gos.get("enableRtl");let n,l;if(this.currentHeaderRowWithoutSpan!==-1?i.headerRowIndex=this.currentHeaderRowWithoutSpan:this.currentHeaderRowWithoutSpan=i.headerRowIndex,o!==r?(l="Before",n=this.headerPositionUtils.findHeader(i,l)):(l="After",n=this.headerPositionUtils.findHeader(i,l)),n||!t)return this.focusService.focusHeaderPosition({headerPosition:n,direction:l,fromTab:t,allowUserOverride:!0,event:s});if(t){const a=this.gos.getCallback("tabToNextHeader");if(a)return this.focusService.focusHeaderPositionFromUserFunc({userFunc:a,headerPosition:n,direction:l})}return this.focusNextHeaderRow(i,l,s)}focusNextHeaderRow(e,t,s){const i=e.headerRowIndex;let o=null,r;if(t==="Before"?i>0&&(r=i-1,this.currentHeaderRowWithoutSpan-=1,o=this.headerPositionUtils.findColAtEdgeForHeaderRow(r,"end")):(r=i+1,this.currentHeaderRowWithoutSpan<this.getHeaderRowCount()?this.currentHeaderRowWithoutSpan+=1:this.setCurrentHeaderRowWithoutSpan(-1),o=this.headerPositionUtils.findColAtEdgeForHeaderRow(r,"start")),!o)return!1;const{column:n,headerRowIndex:l}=this.headerPositionUtils.getHeaderIndexToFocus(o.column,o==null?void 0:o.headerRowIndex);return this.focusService.focusHeaderPosition({headerPosition:{column:n,headerRowIndex:l},direction:t,fromTab:!0,allowUserOverride:!0,event:s})}scrollToColumn(e,t="After"){if(e.getPinned())return;let s;if(Se(e)){const i=e.getDisplayedLeafColumns();s=t==="Before"?W(i):i[0]}else s=e;
100this.gridBodyCon.getScrollFeature().ensureColumnVisible(s)}},Cd=class extends b{wireBeans(e){this.animationFrameService=e.animationFrameService,this.headerNavigationService=e.headerNavigationService,this.focusService=e.focusService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.ctrlsService=e.ctrlsService,this.filterManager=e.filterManager,this.menuService=e.menuService}setComp(e,t,s){this.comp=e,this.eGui=t,this.createManagedBean(new kt(s,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),onFocusOut:this.onFocusOut.bind(this)})),this.addManagedEventListeners({columnPivotModeChanged:this.onPivotModeChanged.bind(this),displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this)}),this.onPivotModeChanged(),this.setupHeaderHeight();const i=this.onHeaderContextMenu.bind(this);this.addManagedElementListeners(this.eGui,{contextmenu:i}),this.mockContextMenuForIPad(i),this.ctrlsService.register("gridHeaderCtrl",this)}setupHeaderHeight(){const e=this.setHeaderHeight.bind(this);e(),this.addManagedPropertyListeners(["headerHeight","pivotHeaderHeight","groupHeaderHeight","pivotGroupHeaderHeight","floatingFiltersHeight"],e),this.addManagedEventListeners({displayedColumnsChanged:e,columnHeaderHeightChanged:e,columnGroupHeaderHeightChanged:()=>this.animationFrameService.requestAnimationFrame(()=>e()),gridStylesChanged:e,advancedFilterEnabledChanged:e})}getHeaderHeight(){return this.headerHeight}setHeaderHeight(){var r;const{columnModel:e}=this;let t=0;const s=this.columnModel.getGroupRowsHeight().reduce((n,l)=>n+l,0),i=this.columnModel.getColumnHeaderRowHeight();if((r=this.filterManager)!=null&&r.hasFloatingFilters()&&(t+=e.getFloatingFiltersHeight()),t+=s,t+=i,this.headerHeight===t)return;this.headerHeight=t;const o=`${t+1}px`;this.comp.setHeightAndMinHeight(o),this.eventService.dispatchEvent({type:"headerHeightChanged"})}onPivotModeChanged(){const e=this.columnModel.isPivotMode();this.comp.addOrRemoveCssClass("ag-pivot-on",e),this.comp.addOrRemoveCssClass("ag-pivot-off",!e)}onDisplayedColumnsChanged(){const t=this.visibleColsService.getAllCols().some(s=>s.isSpanHeaderHeight());this.comp.addOrRemoveCssClass("ag-header-allow-overflow",t)}onTabKeyDown(e){const t=this.gos.get("enableRtl"),s=e.shiftKey,i=s!==t?2:3;(this.headerNavigationService.navigateHorizontally(i,!0,e)||!s&&this.focusService.focusOverlay(!1)||this.focusService.focusNextGridCoreContainer(s,!0))&&e.preventDefault()}handleKeyDown(e){let t=null;switch(e.key){case S.LEFT:t=2;case S.RIGHT:{E(t)||(t=3),this.headerNavigationService.navigateHorizontally(t,!1,e)&&e.preventDefault();break}case S.UP:t=0;case S.DOWN:{E(t)||(t=1),this.headerNavigationService.navigateVertically(t,null,e)&&e.preventDefault();break}default:return}}onFocusOut(e){const{relatedTarget:t}=e;!t&&this.eGui.contains(Q(this.gos))||this.eGui.contains(t)||this.focusService.clearFocusedHeader()}onHeaderContextMenu(e,t,s){var o;if(!e&&!s||!this.menuService.isHeaderContextMenuEnabled())return;const{target:i}=e??t;(i===this.eGui||i===((o=this.ctrlsService.getHeaderRowContainerCtrl())==null?void 0:o.getViewportElement()))&&this.menuService.showHeaderContextMenu(void 0,e,s)}mockContextMenuForIPad(e){if(!Gt())return;const t=new wt(this.eGui),s=i=>{e(void 0,i.touchStart,i.touchEvent)};this.addManagedListeners(t,{longTap:s}),this.addDestroyFunc(()=>t.destroy())}},dn=class extends b{constructor(e,t=!1){super(),this.callback=e,this.addSpacer=t}wireBeans(e){this.visibleColsService=e.visibleColsService,this.scrollVisibleService=e.scrollVisibleService}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=De(this.gos,"print"),t=this.visibleColsService.getBodyContainerWidth(),s=this.visibleColsService.getColsLeftWidth(),i=this.visibleColsService.getDisplayedColumnsRightWidth();let o;e?o=t+s+i:(o=t,this.addSpacer&&(this.gos.get("enableRtl")?s:i)===0&&this.scrollVisibleService.isVerticalScrollShowing()&&(o+=this.scrollVisibleService.getScrollbarWidth())),this.callback(o)}},pg=class extends b{constructor(e){super(),this.columnsToAggregate=[],this.columnsToGroup=[],this.columnsToPivot=[],this.pinned=e}wireBeans(e){this.funcColsService=e.funcColsService}onDragEnter(e){if(this.clearColumnsList(),this.gos.get("functionsReadOnly"))return;const t=e.dragItem.columns;t&&t.forEach(s=>{s.isPrimary()&&(s.isAnyFunctionActive()||(s.isAllowValue()?this.columnsToAggregate.push(s):s.isAllowRowGroup()?this.columnsToGroup.push(s):s.isAllowPivot()&&this.columnsToPivot.push(s)))})}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){this.columnsToAggregate.length>0&&this.funcColsService.addValueColumns(this.columnsToAggregate,"toolPanelDragAndDrop"),this.columnsToGroup.length>0&&this.funcColsService.addRowGroupColumns(this.columnsToGroup,"toolPanelDragAndDrop"),this.columnsToPivot.length>0&&this.funcColsService.addPivotColumns(this.columnsToPivot,"toolPanelDragAndDrop")}onDragCancel(){this.clearColumnsList()}};function vd(e){const{isFromHeader:t,fromLeft:s,xPosition:i,fromEnter:o,fakeEvent:r,pinned:n,gos:l,columnModel:a,columnMoveService:d,visibleColsService:c}=e;let{allMovingColumns:u}=e;if(t){const D=[];u.forEach(M=>{var G;let x=null,I=M.getParent();for(;I!=null&&I.getDisplayedLeafColumns().length===1;)x=I,I=I.getParent();x!=null?(!!((G=x.getColGroupDef())!=null&&G.marryChildren)?x.getProvidedColumnGroup().getLeafColumns():x.getLeafColumns()).forEac
100h(B=>{D.includes(B)||D.push(B)}):D.includes(M)||D.push(M)}),u=D}const h=u.slice();a.sortColsLikeCols(h);const p=Cg({movingCols:h,draggingRight:s,xPosition:i,pinned:n,gos:l,columnModel:a,visibleColsService:c}),g=gg(h,a);if(p.length===0)return;const f=p[0];let m=g!==null&&!o;if(t&&(m=g!==null),m&&!r&&(!s&&f>=g||s&&f<=g))return;const v=c.getAllCols(),y=[];let w=null;for(let D=0;D<p.length;D++){const M=p[D],x=d.getProposedColumnOrder(h,M);if(!d.doesOrderPassRules(x))continue;const I=x.filter(k=>v.includes(k));if(w===null)w=I;else if(!Je(I,w))break;const G=fg(x);y.push({move:M,fragCount:G})}if(y.length===0)return;y.sort((D,M)=>D.fragCount-M.fragCount);const F=y[0].move;if(!(F>a.getCols().length-u.length))return{columns:u,toIndex:F}}function cn(e){const{columns:t,toIndex:s}=vd(e)||{},{finished:i,columnMoveService:o}=e;return!t||s==null?null:(o.moveColumns(t,s,"uiColumnMoved",i),i?null:{columns:t,toIndex:s})}function gg(e,t){const s=t.getCols(),i=cu(e.map(a=>s.indexOf(a))),o=i[0];return W(i)-o!==i.length-1?null:o}function fg(e){function t(i){const o=[];let r=i.getOriginalParent();for(;r!=null;)o.push(r),r=r.getOriginalParent();return o}let s=0;for(let i=0;i<e.length-1;i++){let o=t(e[i]),r=t(e[i+1]);[o,r]=o.length>r.length?[o,r]:[r,o],o.forEach(n=>{r.indexOf(n)===-1&&s++})}return s}function mg(e,t){switch(t){case"left":return e.getLeftCols();case"right":return e.getRightCols();default:return e.getCenterCols()}}function Cg(e){const{movingCols:t,draggingRight:s,xPosition:i,pinned:o,gos:r,columnModel:n,visibleColsService:l}=e;if(r.get("suppressMovableColumns")||t.some(w=>w.getColDef().suppressMovable))return[];const d=mg(l,o),c=n.getCols(),u=d.filter(w=>et(t,w)),h=d.filter(w=>!et(t,w)),p=c.filter(w=>!et(t,w));let g=0,f=i;if(s){let w=0;u.forEach(F=>w+=F.getActualWidth()),f-=w}if(f>0){for(let w=0;w<h.length;w++){const F=h[w];if(f-=F.getActualWidth(),f<0)break;g++}s&&g++}let m;if(g>0){const w=h[g-1];m=p.indexOf(w)+1}else m=p.indexOf(h[0]),m===-1&&(m=0);const v=[m],y=(w,F)=>w-F;if(s){let w=m+1;const F=c.length-1;for(;w<=F;)v.push(w),w++;v.sort(y)}else{let w=m;const F=c.length-1;let D=c[w];for(;w<=F&&d.indexOf(D)<0;)w++,v.push(w),D=c[w];w=m-1;const M=0;for(;w>=M;)v.push(w),w--;v.sort(y).reverse()}return v}function oo(e){var d;const{pinned:t,fromKeyboard:s,gos:i,ctrlsService:o,useHeaderRow:r,skipScrollPadding:n}=e;let l=(d=o.getHeaderRowContainerCtrl(t))==null?void 0:d.getViewportElement(),{x:a}=e;return l?(s&&(a-=l.getBoundingClientRect().left),i.get("enableRtl")&&(r&&(l=l.querySelector(".ag-header-row")),a=l.clientWidth-a),t==null&&!n&&(a+=o.get("center").getCenterViewportScrollLeft()),a):0}function Ms(e,t){for(const s of e)s.setMoving(t,"uiColumnMoved")}var el=7,Cr=100,xi=Cr/2,vg=5,Sg=100,wg=class extends b{constructor(e){super(),this.needToMoveLeft=!1,this.needToMoveRight=!1,this.lastMovedInfo=null,this.pinned=e,this.isCenterContainer=!E(e)}wireBeans(e){this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.columnMoveService=e.columnMoveService,this.dragAndDropService=e.dragAndDropService,this.ctrlsService=e.ctrlsService}postConstruct(){this.ctrlsService.whenReady(this,e=>{this.gridBodyCon=e.gridBodyCtrl})}getIconName(){var t;const e=((t=this.lastDraggingEvent)==null?void 0:t.dragItem.columns)??[];for(const s of e){const i=s.getPinned();if(s.getColDef().lockPinned){if(i==this.pinned)return"move";continue}if(i===this.pinned||!this.pinned)return"move";if(!i&&this.pinned)return"pinned"}return"notAllowed"}onDragEnter(e){const t=e.dragItem.columns;if(e.dragSource.type===0)this.setColumnsVisible(t,!0,"uiColumnDragged");else{const i=e.dragItem.visibleState,o=(t||[]).filter(r=>i[r.getId()]);this.setColumnsVisible(o,!0,"uiColumnDragged")}this.gos.get("suppressMoveWhenColumnDragging")||this.attemptToPinColumns(t,this.pinned),this.onDragging(e,!0,!0)}onDragging(e=this.lastDraggingEvent,t=!1,s=!1,i=!1){const o=this.gos.get("suppressMoveWhenColumnDragging");if(i&&!o){this.finishColumnMoving();return}if(this.lastDraggingEvent=e,!e||!i&&z(e.hDirection))return;const{pinned:r,gos:n,ctrlsService:l}=this,a=oo({x:e.x,pinned:r,gos:n,ctrlsService:l});t||this.checkCenterForScrolling(a),o?this.handleColumnDragWhileSuppressingMovement(e,t,s,a,i):this.handleColumnDragWhileAllowingMovement(e,t,s,a,i)}onDragLeave(){this.ensureIntervalCleared(),this.clearHighlighted(),this.lastMovedInfo=null}onDragStop(){this.onDragging(this.lastDraggingEvent,!1,!0,!0),this.ensureIntervalCleared(),this.lastMovedInfo=null}onDragCancel(){this.clearHighlighted(),this.ensureIntervalCleared(),this.lastMovedInfo=null}
100setColumnsVisible(e,t,s){if(!e)return;const i=e.filter(o=>!o.getColDef().lockVisible);this.columnModel.setColsVisible(i,t,s)}finishColumnMoving(){if(this.clearHighlighted(),!this.lastMovedInfo)return;const{columns:e,toIndex:t}=this.lastMovedInfo;this.columnMoveService.moveColumns(e,t,"uiColumnMoved",!0)}handleColumnDragWhileSuppressingMovement(e,t,s,i,o){const r=this.getAllMovingColumns(e,!0);if(o){const n=this.isAttemptingToPin(r);n&&this.attemptToPinColumns(r,void 0,!0);const{fromLeft:l,xPosition:a}=this.getNormalisedXPositionInfo(r,n)||{};if(l==null||a==null){this.finishColumnMoving();return}this.moveColumnsAfterHighlight({allMovingColumns:r,xPosition:a,fromEnter:t,fakeEvent:s,fromLeft:l})}else{if(!this.dragAndDropService.isDropZoneWithinThisGrid(e))return;this.highlightHoveredColumn(r,i)}}handleColumnDragWhileAllowingMovement(e,t,s,i,o){const r=this.getAllMovingColumns(e),n=this.normaliseDirection(e.hDirection)===1,l=e.dragSource.type===1,a=this.getMoveColumnParams({allMovingColumns:r,isFromHeader:l,xPosition:i,fromLeft:n,fromEnter:t,fakeEvent:s}),d=cn({...a,finished:o});d&&(this.lastMovedInfo=d)}getAllMovingColumns(e,t=!1){const s=e.dragSource.getDragItem();let i=null;t?(i=s.columnsInSplit,i||(i=s.columns)):i=s.columns;const o=r=>r.getColDef().lockPinned?r.getPinned()==this.pinned:!0;return i?i.filter(o):[]}getMoveColumnParams(e){const{allMovingColumns:t,isFromHeader:s,xPosition:i,fromLeft:o,fromEnter:r,fakeEvent:n}=e,{pinned:l,gos:a,columnModel:d,columnMoveService:c,visibleColsService:u}=this;return{allMovingColumns:t,isFromHeader:s,fromLeft:o,xPosition:i,pinned:l,fromEnter:r,fakeEvent:n,gos:a,columnModel:d,columnMoveService:c,visibleColsService:u}}findFirstAndLastMovingColumns(e){const t=e.length;let s,i;for(let o=0;o<=t;o++){if(!s){const r=e[o];r.getLeft()!=null&&(s=r)}if(!i){const r=e[t-1-o];r.getLeft()!=null&&(i=r)}if(s&&i)break}return{firstMovingCol:s,lastMovingCol:i}}highlightHoveredColumn(e,t){var c;const{gos:s,columnModel:i}=this,o=s.get("enableRtl"),r=i.getCols().filter(u=>u.isVisible()&&u.getPinned()===this.pinned);let n=null,l=null,a=null;for(const u of r){if(l=u.getActualWidth(),n=this.getNormalisedColumnLeft(u,0,o),n!=null){const h=n+l;if(n<=t&&h>=t){a=u;break}}n=null,l=null}if(a)e.indexOf(a)!==-1&&(a=null);else{for(let u=r.length-1;u>=0;u--){const h=r[u],p=r[u].getParent();if(!p){a=h;break}const g=p==null?void 0:p.getDisplayedLeafColumns();if(g.length){a=W(g);break}}if(!a)return;n=this.getNormalisedColumnLeft(a,0,o),l=a.getActualWidth()}if(((c=this.lastHighlightedColumn)==null?void 0:c.column)!==a&&this.clearHighlighted(),a==null||n==null||l==null)return;let d;t-n<l/2!==o?d=0:d=1,a.setHighlighted(d),this.lastHighlightedColumn={column:a,position:d}}getNormalisedXPositionInfo(e,t){const{gos:s,visibleColsService:i}=this,o=s.get("enableRtl"),{firstMovingCol:r,column:n,position:l}=this.getColumnMoveAndTargetInfo(e,t,o);if(!r||!n||l==null)return;const a=i.getAllCols(),d=a.indexOf(r),c=a.indexOf(n),u=l===0!==o,h=d<c||d===c&&!u;let p=0;if(u?h&&(p-=1):h||(p+=1),c+p===d)return;const g=a[c+p];if(!g)return;const f=this.getNormalisedColumnLeft(g,20,o);return{fromLeft:h,xPosition:f}}getColumnMoveAndTargetInfo(e,t,s){const i=this.lastHighlightedColumn||{},{firstMovingCol:o,lastMovingCol:r}=this.findFirstAndLastMovingColumns(e);if(!o||!r||i.column||!t)return{firstMovingCol:o,...i};const l=this.getPinDirection()==="left";return{firstMovingCol:o,position:l?1:0,column:l!==s?o:r}}normaliseDirection(e){if(this.gos.get("enableRtl"))switch(e){case 0:return 1;case 1:return 0}return e}getNormalisedColumnLeft(e,t,s){const{gos:i,ctrlsService:o}=this,r=e.getLeft();if(r==null)return null;const n=e.getActualWidth();return oo({x:s?r+n-t:r+t,pinned:e.getPinned(),useHeaderRow:s,skipScrollPadding:!0,gos:i,ctrlsService:o})}isAttemptingToPin(e){const t=this.needToMoveLeft||this.needToMoveRight,s=this.failedMoveAttempts>el;return t&&s||e.some(i=>i.getPinned()!==this.pinned)}moveColumnsAfterHighlight(e){const{allMovingColumns:t,xPosition:s,fromEnter:i,fakeEvent:o,fromLeft:r}=e,n=this.getMoveColumnParams({allMovingColumns:t,isFromHeader:!0,xPosition:s,fromLeft:r,fromEnter:i,fakeEvent:o}),{columns:l,toIndex:a}=vd(n)||{};l&&a!=null&&(this.lastMovedInfo={columns:l,toIndex:a}),this.finishColumnMoving()}clearHighlighted(){this.lastHighlightedColumn&&(this.lastHighlightedColumn.column.setHighlighted(null),this.lastHighlightedColumn=null)}checkCenterForScrolling(e){if(!this.isCenterContainer)return;
100const t=this.ctrlsService.get("center"),s=t.getCenterViewportScrollLeft(),i=s+t.getCenterWidth();this.gos.get("enableRtl")?(this.needToMoveRight=e<s+xi,this.needToMoveLeft=e>i-xi):(this.needToMoveLeft=e<s+xi,this.needToMoveRight=e>i-xi),this.needToMoveLeft||this.needToMoveRight?this.ensureIntervalStarted():this.ensureIntervalCleared()}ensureIntervalStarted(){var e;this.movingIntervalId||(this.intervalCount=0,this.failedMoveAttempts=0,this.movingIntervalId=window.setInterval(this.moveInterval.bind(this),Sg),(e=this.dragAndDropService.getDragAndDropImageComponent())==null||e.setIcon(this.needToMoveLeft?"left":"right",!0))}ensureIntervalCleared(){var e;this.movingIntervalId&&(window.clearInterval(this.movingIntervalId),this.movingIntervalId=null,this.failedMoveAttempts=0,(e=this.dragAndDropService.getDragAndDropImageComponent())==null||e.setIcon(this.getIconName()))}moveInterval(){var i,o;let e;this.intervalCount++,e=10+this.intervalCount*vg,e>Cr&&(e=Cr);let t=null;const s=this.gridBodyCon.getScrollFeature();if(this.needToMoveLeft?t=s.scrollHorizontally(-e):this.needToMoveRight&&(t=s.scrollHorizontally(e)),t!==0)this.onDragging(this.lastDraggingEvent),this.failedMoveAttempts=0;else{if(this.failedMoveAttempts++,this.failedMoveAttempts<=el+1)return;if((i=this.dragAndDropService.getDragAndDropImageComponent())==null||i.setIcon("pinned"),!this.gos.get("suppressMoveWhenColumnDragging")){const r=(o=this.lastDraggingEvent)==null?void 0:o.dragItem.columns;this.attemptToPinColumns(r,void 0,!0)}}}getPinDirection(){if(this.needToMoveLeft||this.pinned==="left")return"left";if(this.needToMoveRight||this.pinned==="right")return"right"}attemptToPinColumns(e,t,s=!1){const i=(e||[]).filter(o=>!o.getColDef().lockPinned);return i.length?(s&&(t=this.getPinDirection()),this.columnModel.setColsPinned(i,t,"uiColumnDragged"),s&&this.dragAndDropService.nudge(),i.length):0}destroy(){super.destroy(),this.lastDraggingEvent=null,this.clearHighlighted(),this.lastMovedInfo=null}},yg=class extends b{wireBeans(e){this.dragAndDropService=e.dragAndDropService,this.columnModel=e.columnModel,this.ctrlsService=e.ctrlsService}constructor(e,t){super(),this.pinned=e,this.eContainer=t}postConstruct(){this.ctrlsService.whenReady(this,e=>{switch(this.pinned){case"left":this.eSecondaryContainers=[[e.gridBodyCtrl.getBodyViewportElement(),e.left.getContainerElement()],[e.bottomLeft.getContainerElement()],[e.topLeft.getContainerElement()]];break;case"right":this.eSecondaryContainers=[[e.gridBodyCtrl.getBodyViewportElement(),e.right.getContainerElement()],[e.bottomRight.getContainerElement()],[e.topRight.getContainerElement()]];break;default:this.eSecondaryContainers=[[e.gridBodyCtrl.getBodyViewportElement(),e.center.getViewportElement()],[e.bottomCenter.getViewportElement()],[e.topCenter.getViewportElement()]];break}}),this.moveColumnFeature=this.createManagedBean(new wg(this.pinned)),this.bodyDropPivotTarget=this.createManagedBean(new pg(this.pinned)),this.dragAndDropService.addDropTarget(this),this.addDestroyFunc(()=>this.dragAndDropService.removeDropTarget(this))}isInterestedIn(e){return e===1||e===0&&this.gos.get("allowDragFromColumnsToolPanel")}getSecondaryContainers(){return this.eSecondaryContainers}getContainer(){return this.eContainer}getIconName(){return this.currentDropListener.getIconName()}isDropColumnInPivotMode(e){return this.columnModel.isPivotMode()&&e.dragSource.type===0}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()}},Rg=class extends b{wireBeans(e){this.horizontalResizeService=e.horizontalResizeService,this.pinnedWidthService=e.pinnedWidthService,this.ctrlsService=e.ctrlsService,this.columnSizeService=e.columnSizeService,this.columnAutosizeService=e.columnAutosizeService}constructor(e,t,s,i,o){super(),this.pinned=e,this.column=t,this.eResize=s,this.comp=i,this.ctrl=o}postConstruct(){const e=[];let t,s;const i=()=>
100{if(H(this.eResize,t),!t)return;const n=this.horizontalResizeService.addResizeBar({eResizeBar:this.eResize,onResizeStart:this.onResizeStart.bind(this),onResizing:this.onResizing.bind(this,!1),onResizeEnd:this.onResizing.bind(this,!0)});if(e.push(n),s){const l=this.gos.get("skipHeaderOnAutoSize"),a=()=>{this.columnAutosizeService.autoSizeColumn(this.column,"uiColumnResized",l)};this.eResize.addEventListener("dblclick",a);const d=new wt(this.eResize);d.addEventListener("doubleTap",a),e.push(()=>{this.eResize.removeEventListener("dblclick",a),d.removeEventListener("doubleTap",a),d.destroy()})}},o=()=>{e.forEach(n=>n()),e.length=0},r=()=>{const n=this.column.isResizable(),l=!this.gos.get("suppressAutoSize")&&!this.column.getColDef().suppressAutoSize;(n!==t||l!==s)&&(t=n,s=l,o(),i())};r(),this.addDestroyFunc(o),this.ctrl.setRefreshFunction("resize",r)}onResizing(e,t){const{column:s,lastResizeAmount:i,resizeStartWidth:o}=this,r=this.normaliseResizeAmount(t),n=o+r,l=[{key:s,newWidth:n}];if(this.column.getPinned()){const a=this.pinnedWidthService.getPinnedLeftWidth(),d=this.pinnedWidthService.getPinnedRightWidth(),c=Ns(this.ctrlsService.getGridBodyCtrl().getBodyViewportElement())-50;if(a+d+(r-i)>c)return}this.lastResizeAmount=r,this.columnSizeService.setColumnWidths(l,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.comp.addOrRemoveCssClass("ag-column-resizing",e)}normaliseResizeAmount(e){let t=e;const s=this.pinned!=="left",i=this.pinned==="right";return this.gos.get("enableRtl")?s&&(t*=-1):i&&(t*=-1),t}},bg=class extends b{constructor(e){super(),this.cbSelectAllVisible=!1,this.processingEventFromCheckbox=!1,this.column=e}wireBeans(e){this.rowModel=e.rowModel,this.selectionService=e.selectionService}onSpaceKeyDown(e){const t=this.cbSelectAll;t.isDisplayed()&&!t.getGui().contains(Q(this.gos))&&(e.preventDefault(),t.setValue(!t.getValue()))}getCheckboxGui(){return this.cbSelectAll.getGui()}setComp(e){this.headerCellCtrl=e,this.cbSelectAll=this.createManagedBean(new vo),this.cbSelectAll.addCssClass("ag-header-select-all"),he(this.cbSelectAll.getGui(),"presentation"),this.showOrHideSelectAll(),this.addManagedEventListeners({newColumnsLoaded:this.onNewColumnsLoaded.bind(this),displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this),selectionChanged:this.onSelectionChanged.bind(this),paginationChanged:this.onSelectionChanged.bind(this),modelUpdated:this.onModelChanged.bind(this)}),this.addManagedListeners(this.cbSelectAll,{fieldValueChanged:this.onCbSelectAll.bind(this)}),this.cbSelectAll.getInputElement().setAttribute("tabindex","-1"),this.refreshSelectAllLabel()}onNewColumnsLoaded(){this.showOrHideSelectAll()}onDisplayedColumnsChanged(){this.isAlive()&&this.showOrHideSelectAll()}showOrHideSelectAll(){this.cbSelectAllVisible=this.isCheckboxSelection(),this.cbSelectAll.setDisplayed(this.cbSelectAllVisible),this.cbSelectAllVisible&&(this.checkRightRowModelType("selectAllCheckbox"),this.checkSelectionType("selectAllCheckbox"),this.updateStateOfCheckbox()),this.refreshSelectAllLabel()}onModelChanged(){this.cbSelectAllVisible&&this.updateStateOfCheckbox()}onSelectionChanged(){this.cbSelectAllVisible&&this.updateStateOfCheckbox()}updateStateOfCheckbox(){if(this.processingEventFromCheckbox)return;this.processingEventFromCheckbox=!0;const e=this.selectionService.getSelectAllState(this.isFilteredOnly(),this.isCurrentPageOnly());this.cbSelectAll.setValue(e);const t=this.selectionService.hasNodesToSelect(this.isFilteredOnly(),this.isCurrentPageOnly());this.cbSelectAll.setDisabled(!t),this.refreshSelectAllLabel(),this.processingEventFromCheckbox=!1}refreshSelectAllLabel(){const e=this.localeService.getLocaleTextFunc(),s=this.cbSelectAll.getValue()?e("ariaChecked","checked"):e("ariaUnchecked","unchecked"),i=e("ariaRowSelectAll","Press Space to toggle all rows selection");this.cbSelectAllVisible?this.headerCellCtrl.setAriaDescriptionProperty("selectAll",`${i} (${s}
100)`):this.headerCellCtrl.setAriaDescriptionProperty("selectAll",null),this.cbSelectAll.setInputAriaLabel(e("ariaHeaderSelection","Column with Header Selection")),this.headerCellCtrl.announceAriaDescription()}checkSelectionType(e){return Is(this.gos)?!0:(R(`${e} is only available if using 'multiRow' selection mode.`),!1)}checkRightRowModelType(e){return re(this.gos)||Ue(this.gos)?!0:(R(`${e} is only available if using 'clientSide' or 'serverSide' rowModelType, you are using ${this.rowModel.getType()}.`),!1)}onCbSelectAll(){if(this.processingEventFromCheckbox||!this.cbSelectAllVisible)return;const e=this.cbSelectAll.getValue(),t=this.isFilteredOnly(),s=this.isCurrentPageOnly();let i="uiSelectAll";s?i="uiSelectAllCurrentPage":t&&(i="uiSelectAllFiltered");const o={source:i,justFiltered:t,justCurrentPage:s};e?this.selectionService.selectAllRowNodes(o):this.selectionService.deselectAllRowNodes(o)}isCheckboxSelection(){const e=this.gos.get("rowSelection"),t=typeof e=="object"&&Yi(e)&&Si(this.column),s=this.column.getColDef().headerCheckboxSelection;let i=!1;return t?i=!0:typeof s=="function"?i=s(this.gos.addGridCommonParams({column:this.column,colDef:this.column.getColDef()})):i=!!s,i&&this.checkRightRowModelType(t?"headerCheckbox":"headerCheckboxSelection")&&this.checkSelectionType(t?"headerCheckbox":"headerCheckboxSelection")}isFilteredOnly(){const e=this.gos.get("rowSelection");return typeof e=="object"?e.mode==="multiRow"&&e.selectAll==="filtered":!!this.column.getColDef().headerCheckboxSelectionFilteredOnly}isCurrentPageOnly(){const e=this.gos.get("rowSelection");return typeof e=="object"?e.mode==="multiRow"&&e.selectAll==="currentPage":!!this.column.getColDef().headerCheckboxSelectionCurrentPageOnly}},Fg=class extends Ro{constructor(e,t,s){super(e,t,s),this.refreshFunctions={},this.userHeaderClasses=new Set,this.ariaDescriptionProperties=new Map,this.column=e}setComp(e,t,s,i,o){this.comp=e,o=wi(this,this.beans.context,o),this.setGui(t,o),this.updateState(),this.setupWidth(o),this.setupMovingCss(o),this.setupMenuClass(o),this.setupSortableClass(o),this.setupWrapTextClass(),this.refreshSpanHeaderHeight(),this.setupAutoHeight({wrapperElement:i,checkMeasuringCallback:n=>this.setRefreshFunction("measuring",n),compBean:o}),this.addColumnHoverListener(o),this.setupFilterClass(o),this.setupClassesFromColDef(),this.setupTooltip(o),this.addActiveHeaderMouseListeners(o),this.setupSelectAll(o),this.setupUserComp(o),this.refreshAria(),this.resizeFeature=o.createManagedBean(new Rg(this.getPinned(),this.column,s,e,this)),o.createManagedBean(new rn([this.column],t)),o.createManagedBean(new sn(this.column,t,this.beans)),o.createManagedBean(new kt(t,{shouldStopEventPropagation:n=>this.shouldStopEventPropagation(n),onTabKeyDown:()=>null,handleKeyDown:this.handleKeyDown.bind(this),onFocusIn:this.onFocusIn.bind(this),onFocusOut:this.onFocusOut.bind(this)})),this.addResizeAndMoveKeyboardListeners(o),o.addManagedPropertyListeners(["suppressMovableColumns","suppressMenuHide","suppressAggFuncInHeader"],()=>this.refresh(o)),o.addManagedListeners(this.column,{colDefChanged:()=>this.refresh(o)}),o.addManagedListeners(this.column,{headerHighlightChanged:this.onHeaderHighlightChanged.bind(this)});const r=()=>this.checkDisplayName(o);o.addManagedEventListeners({columnValueChanged:r,columnRowGroupChanged:r,columnPivotChanged:r,headerHeightChanged:this.onHeaderHeightChanged.bind(this)}),o.addDestroyFunc(()=>{this.refreshFunctions={},this.selectAllFeature=null,this.dragSourceElement=void 0,this.userCompDetails=null,this.userHeaderClasses.clear(),this.ariaDescriptionProperties.clear(),this.clearComponent()})}resizeHeader(e,t){if(!this.column.isResizable())return;const s=this.column.getActualWidth(),i=this.column.getMinWidth(),o=this.column.getMaxWidth(),r=Math.min(Math.max(s+e,i),o);this.beans.columnSizeService.setColumnWidths([{key:this.column,newWidth:r}],t,!0,"uiColumnResized")}moveHeader(e){const{eGui:t,beans:s,column:i,ctrlsService:o}=this,{gos:r,columnModel:n,columnMoveService:l,visibleColsService:a}=s,d=this.getPinned(),c=t.getBoundingClientRect().left,u=i.getActualWidth(),h=r.get("enableRtl"),g=oo({x:e===0!==h?c-20:c+u+20,pinned:d,fromKeyboard:!0,gos:r,ctrlsService:o}),f=this.focusService.getFocusedHeader();cn({allMovingColumns:[i],isFromHeader:!0,fromLeft:e===1,xPosition:g,pinned:d,fromEnter:!1,fakeEvent:!1,gos:r,columnModel:n,columnMoveService:l,visibleColsService:a,finished:!0}
100),o.getGridBodyCtrl().getScrollFeature().ensureColumnVisible(i,"auto"),(!this.isAlive()||this.beans.gos.get("ensureDomOrder"))&&f&&this.restoreFocus(f)}restoreFocus(e){this.focusService.focusHeaderPosition({headerPosition:{...e,column:this.column}})}setupUserComp(e){const t=this.lookupUserCompDetails(e);this.setCompDetails(t)}setCompDetails(e){this.userCompDetails=e,this.comp.setUserCompDetails(e)}lookupUserCompDetails(e){const t=this.createParams(e),s=this.column.getColDef();return this.userComponentFactory.getHeaderCompDetails(s,t)}createParams(e){return this.gos.addGridCommonParams({column:this.column,displayName:this.displayName,enableSorting:this.column.isSortable(),enableMenu:this.menuEnabled,enableFilterButton:this.openFilterEnabled&&this.menuService.isHeaderFilterButtonEnabled(this.column),enableFilterIcon:!this.openFilterEnabled||this.menuService.isLegacyMenuEnabled(),showColumnMenu:s=>{this.menuService.showColumnMenu({column:this.column,buttonElement:s,positionBy:"button"})},showColumnMenuAfterMouseClick:s=>{this.menuService.showColumnMenu({column:this.column,mouseEvent:s,positionBy:"mouse"})},showFilter:s=>{this.menuService.showFilterMenu({column:this.column,buttonElement:s,containerType:"columnFilter",positionBy:"button"})},progressSort:s=>{this.beans.sortController.progressSort(this.column,!!s,"uiColumnSorted")},setSort:(s,i)=>{this.beans.sortController.setSortForColumn(this.column,s,!!i,"uiColumnSorted")},eGridHeader:this.getGui(),setTooltip:(s,i)=>{this.setupTooltip(e,s,i)}})}setupSelectAll(e){this.selectAllFeature=e.createManagedBean(new bg(this.column)),this.selectAllFeature.setComp(this)}getSelectAllGui(){return this.selectAllFeature.getCheckboxGui()}handleKeyDown(e){super.handleKeyDown(e),e.key===S.SPACE&&this.selectAllFeature.onSpaceKeyDown(e),e.key===S.ENTER&&this.onEnterKeyDown(e),e.key===S.DOWN&&e.altKey&&this.showMenuOnKeyPress(e,!1)}onEnterKeyDown(e){if(e.ctrlKey||e.metaKey)this.showMenuOnKeyPress(e,!0);else if(this.sortable){const t=e.shiftKey;this.beans.sortController.progressSort(this.column,t,"uiColumnSorted")}}showMenuOnKeyPress(e,t){const s=this.comp.getUserCompInstance();!s||!(s instanceof pr)||s.onMenuKeyboardShortcut(t)&&e.preventDefault()}onFocusIn(e){if(!this.getGui().contains(e.relatedTarget)){const t=this.getRowIndex();this.focusService.setFocusedHeader(t,this.column),this.announceAriaDescription()}this.focusService.isKeyboardMode()&&this.setActiveHeader(!0)}onFocusOut(e){this.getGui().contains(e.relatedTarget)||this.setActiveHeader(!1)}setupTooltip(e,t,s){this.tooltipFeature&&(this.tooltipFeature=this.destroyBean(this.tooltipFeature));const i=this.gos.get("tooltipShowMode")==="whenTruncated",o=this.eGui,r=this.column.getColDef();!s&&i&&!r.headerComponent&&(s=()=>{const a=o.querySelector(".ag-header-cell-text");return a?a.scrollWidth>a.clientWidth:!0});const n={getColumn:()=>this.column,getColDef:()=>this.column.getColDef(),getGui:()=>o,getLocation:()=>"header",getTooltipValue:()=>t??this.column.getColDef().headerTooltip,shouldDisplayTooltip:s},l=e.createManagedBean(new us(n));this.setRefreshFunction("tooltip",()=>l.refreshToolTip())}setupClassesFromColDef(){const e=()=>{const t=this.column.getColDef(),s=on(t,this.gos,this.column,null),i=this.userHeaderClasses;this.userHeaderClasses=new Set(s),s.forEach(o=>{i.has(o)?i.delete(o):this.comp.addOrRemoveCssClass(o,!0)}
100),i.forEach(o=>this.comp.addOrRemoveCssClass(o,!1))};this.setRefreshFunction("headerClasses",e),e()}setDragSource(e){if(this.dragSourceElement=e,this.removeDragSource(),!e||!this.draggable)return;const{column:t,beans:s,displayName:i,dragAndDropService:o,gos:r}=this,{columnModel:n}=s;let l=!this.gos.get("suppressDragLeaveHidesColumns");const a=this.dragSource={type:1,eElement:e,getDefaultIconName:()=>l?"hide":"notAllowed",getDragItem:()=>this.createDragItem(t),dragItemName:i,onDragStarted:()=>{l=!r.get("suppressDragLeaveHidesColumns"),Ms([t],!0)},onDragStopped:()=>Ms([t],!1),onDragCancelled:()=>Ms([t],!1),onGridEnter:d=>{var c;if(l){const u=((c=d==null?void 0:d.columns)==null?void 0:c.filter(h=>!h.getColDef().lockVisible))||[];n.setColsVisible(u,!0,"uiColumnMoved")}},onGridExit:d=>{var c;if(l){const u=((c=d==null?void 0:d.columns)==null?void 0:c.filter(h=>!h.getColDef().lockVisible))||[];n.setColsVisible(u,!1,"uiColumnMoved")}}};o.addDragSource(a,!0)}createDragItem(e){const t={};return t[e.getId()]=e.isVisible(),{columns:[e],visibleState:t}}updateState(){this.menuEnabled=this.menuService.isColumnMenuInHeaderEnabled(this.column),this.openFilterEnabled=this.menuService.isFilterMenuInHeaderEnabled(this.column),this.sortable=this.column.isSortable(),this.displayName=this.calculateDisplayName(),this.draggable=this.workOutDraggable()}setRefreshFunction(e,t){this.refreshFunctions[e]=t}refresh(e){this.updateState(),this.refreshHeaderComp(e),this.refreshAria(),Object.values(this.refreshFunctions).forEach(t=>t())}refreshHeaderComp(e){const t=this.lookupUserCompDetails(e);(this.comp.getUserCompInstance()!=null&&this.userCompDetails.componentClass==t.componentClass?this.attemptHeaderCompRefresh(t.params):!1)?this.setDragSource(this.dragSourceElement):this.setCompDetails(t)}attemptHeaderCompRefresh(e){const t=this.comp.getUserCompInstance();return!t||!t.refresh?!1:t.refresh(e)}calculateDisplayName(){return this.beans.columnNameService.getDisplayNameForColumn(this.column,"header",!0)}checkDisplayName(e){this.displayName!==this.calculateDisplayName()&&this.refresh(e)}workOutDraggable(){const e=this.column.getColDef();return!!(!this.gos.get("suppressMovableColumns")&&!e.suppressMovable&&!e.lockPosition)||!!e.enableRowGroup||!!e.enablePivot}setupWidth(e){const t=()=>{const s=this.column.getActualWidth();this.comp.setWidth(`${s}px`)};e.addManagedListeners(this.column,{widthChanged:t}),t()}setupMovingCss(e){const t=()=>{this.comp.addOrRemoveCssClass("ag-header-cell-moving",this.column.isMoving())};e.addManagedListeners(this.column,{movingChanged:t}),t()}setupMenuClass(e){const t=()=>{this.comp.addOrRemoveCssClass("ag-column-menu-visible",this.column.isMenuVisible())};e.addManagedListeners(this.column,{menuVisibleChanged:t}),t()}setupSortableClass(e){const t=()=>{this.comp.addOrRemoveCssClass("ag-header-cell-sortable",!!this.sortable)};t(),this.setRefreshFunction("updateSortable",t),e.addManagedEventListeners({sortChanged:this.refreshAriaSort.bind(this)})}setupFilterClass(e){const t=()=>{const s=this.column.isFilterActive();this.comp.addOrRemoveCssClass("ag-header-cell-filtered",s),this.refreshAria()};e.addManagedListeners(this.column,{filterActiveChanged:t}),t()}setupWrapTextClass(){const e=()=>{const t=!!this.column.getColDef().wrapHeaderText;this.comp.addOrRemoveCssClass("ag-header-cell-wrap-text",t)};e(),this.setRefreshFunction("wrapText",e)}onHeaderHighlightChanged(){const e=this.column.getHighlighted(),t=e===0,s=e===1;this.comp.addOrRemoveCssClass("ag-header-highlight-before",t),this.comp.addOrRemoveCssClass("ag-header-highlight-after",s)}onDisplayedColumnsChanged(){super.onDisplayedColumnsChanged(),this.isAlive()&&this.onHeaderHeightChanged()}onHeaderHeightChanged(){this.refreshSpanHeaderHeight()}refreshSpanHeaderHeight(){const{eGui:e,column:t,comp:s,beans:i}=this,o=this.beans.columnModel.getGroupRowsHeight(),r=o.reduce((u,h)=>u+=h,0)===0;if(s.addOrRemoveCssClass("ag-header-parent-hidden",r),!t.isSpanHeaderHeight()){e.style.removeProperty("top"),e.style.removeProperty("height"),s.addOrRemoveCssClass("ag-header-span-height",!1),s.addOrRemoveCssClass("ag-header-span-total",!1);return}const{numberOfParents:n,isSpanningTotal:l}=this.column.getColumnGroupPaddingInfo();s.addOrRemoveCssClass("ag-header-span-height",n>0);const{columnModel:a}=i,d=a.getColumnHeaderRowHeight();if(n===0){s.addOrRemoveCssClass("ag-header-span-total",!1),e.style.setProperty("top","0px"),e.style.setProperty("height",`${d}px`);return}s.addOrRemoveCssClass("ag-header-span-total",l);let c=0;for(let u=0;u<n;u++)c+=o[o.length-1-u];e.style.setProperty("top",`${-c}px`),e.style.setProperty("height",`${d+c}px`)}refreshAriaSort(){if(this.sortable){const e=this.localeService.getLocaleTextFunc(),t=this.beans.sortController.getDisplaySortForColumn(this.column)||null;this.comp.setAriaSort(_u(t)),this.setAriaDescriptionProperty("sort",e("ariaSortableColumn","Press ENTER to sort"))}else this.comp.setAriaSort(),this.setAriaDescriptionProperty("sort",null)}
100refreshAriaMenu(){if(this.menuEnabled){const e=this.localeService.getLocaleTextFunc();this.setAriaDescriptionProperty("menu",e("ariaMenuColumn","Press ALT DOWN to open column menu"))}else this.setAriaDescriptionProperty("menu",null)}refreshAriaFilterButton(){if(this.openFilterEnabled&&!this.menuService.isLegacyMenuEnabled()){const e=this.localeService.getLocaleTextFunc();this.setAriaDescriptionProperty("filterButton",e("ariaFilterColumn","Press CTRL ENTER to open filter"))}else this.setAriaDescriptionProperty("filterButton",null)}refreshAriaFiltered(){const e=this.localeService.getLocaleTextFunc();this.column.isFilterActive()?this.setAriaDescriptionProperty("filter",e("ariaColumnFiltered","Column Filtered")):this.setAriaDescriptionProperty("filter",null)}setAriaDescriptionProperty(e,t){t!=null?this.ariaDescriptionProperties.set(e,t):this.ariaDescriptionProperties.delete(e)}announceAriaDescription(){if(!this.eGui.contains(Q(this.beans.gos)))return;const e=Array.from(this.ariaDescriptionProperties.keys()).sort((t,s)=>t==="filter"?-1:s.charCodeAt(0)-t.charCodeAt(0)).map(t=>this.ariaDescriptionProperties.get(t)).join(". ");this.beans.ariaAnnouncementService.announceValue(e,"columnHeader")}refreshAria(){this.refreshAriaSort(),this.refreshAriaMenu(),this.refreshAriaFilterButton(),this.refreshAriaFiltered()}addColumnHoverListener(e){const t=()=>{if(!this.gos.get("columnHoverHighlight"))return;const s=this.beans.columnHoverService.isHovered(this.column);this.comp.addOrRemoveCssClass("ag-column-hover",s)};e.addManagedEventListeners({columnHoverChanged:t}),t()}getColId(){return this.column.getColId()}addActiveHeaderMouseListeners(e){const t=o=>this.handleMouseOverChange(o.type==="mouseenter"),s=()=>this.dispatchColumnMouseEvent("columnHeaderClicked",this.column),i=o=>this.handleContextMenuMouseEvent(o,void 0,this.column);e.addManagedListeners(this.getGui(),{mouseenter:t,mouseleave:t,click:s,contextmenu:i})}handleMouseOverChange(e){this.setActiveHeader(e),this.eventService.dispatchEvent({type:e?"columnHeaderMouseOver":"columnHeaderMouseLeave",column:this.column})}setActiveHeader(e){this.comp.addOrRemoveCssClass("ag-header-active",e)}getAnchorElementForMenu(e){const t=this.comp.getUserCompInstance();return t instanceof pr?t.getAnchorElementForMenu(e):this.getGui()}destroy(){super.destroy()}},Pg=class extends b{wireBeans(e){this.horizontalResizeService=e.horizontalResizeService,this.autoWidthCalculator=e.autoWidthCalculator,this.visibleColsService=e.visibleColsService,this.columnSizeService=e.columnSizeService,this.columnAutosizeService=e.columnAutosizeService}constructor(e,t,s,i){super(),this.eResize=t,this.comp=e,this.pinned=s,this.columnGroup=i}postConstruct(){if(!this.columnGroup.isResizable()){this.comp.setResizableDisplayed(!1);return}const e=this.horizontalResizeService.addResizeBar({eResizeBar:this.eResize,onResizeStart:this.onResizeStart.bind(this),onResizing:this.onResizing.bind(this,!1),onResizeEnd:this.onResizing.bind(this,!0)});if(this.addDestroyFunc(e),!this.gos.get("suppressAutoSize")){const t=this.gos.get("skipHeaderOnAutoSize");this.eResize.addEventListener("dblclick",()=>{const s=[];this.columnGroup.getDisplayedLeafColumns().forEach(o=>{o.getColDef().suppressAutoSize||s.push(o.getColId())}),s.length>0&&this.columnAutosizeService.autoSizeCols({colKeys:s,skipHeader:t,stopAtGroup:this.columnGroup,source:"uiColumnResized"}),this.resizeLeafColumnsToFit("uiColumnResized")})}}onResizeStart(e){const t=this.getInitialValues(e);this.storeLocalValues(t),this.toggleColumnResizing(!0)}onResizing(e,t,s="uiColumnResized"){const i=this.normaliseDragChange(t),o=this.resizeStartWidth+i;this.resizeColumnsFromLocalValues(o,s,e)}getInitialValues(e){const t=this.getColumnsToResize(),s=this.getInitialSizeOfColumns(t),i=this.getSizeRatiosOfColumns(t,s),o={columnsToResize:t,resizeStartWidth:s,resizeRatios:i};let r=null;if(e&&(r=this.visibleColsService.getGroupAtDirection(this.columnGroup,"After")),r){const n=r.getDisplayedLeafColumns(),l=o.groupAfterColumns=n.filter(d=>d.isResizable()),a=o.groupAfterStartWidth=this.getInitialSizeOfColumns(l);o.groupAfterRatios=this.getSizeRatiosOfColumns(l,a)}else o.groupAfterColumns=void 0,o.groupAfterStartWidth=void 0,o.groupAfterRatios=void 0;return o}storeLocalValues(e){const{columnsToResize:t,resizeStartWidth:s,resizeRatios:i,groupAfterColumns:o,groupAfterStartWidth:r,groupAfterRatios:n}=e;this.resizeCols=t,this.resizeStartWidth=s,this.resizeRatios=i,this.resizeTakeFromCols=o,this.resizeTakeFromStartWidth=r,this.resizeTakeFromRatios=n}clearLocalValues(){this.resizeCols=void 0,this.resizeRatios=void 0,this.resizeTakeFromCols=void 0,this.resizeTakeFromRatios=void 0}resizeLeafColumnsToFit(e){const t=this.autoWidthCalculator.getPreferredWidthForColumnGroup(this.columnGroup),s=this.getInitialValues();t>s.resizeStartWidth&&this.resizeColumns(s,t,e,!0)}resizeColumnsFromLocalValues(e,t,s=!0){if(!this.resizeCols||!this.resizeRatios)return;const i={columnsToResize:this.resizeCols,resizeStartWidth:this.resizeStartWidth,resizeRatios:this.resizeRatios,groupAfterColumns:this.resizeTakeFromCols??void 0,groupAfterStartWidth:this.resizeTakeFromStartWidth??void 0,groupAfterRatios:this.resizeTakeFromRatios??void 0};this.resizeColumns(i,e,t,s)}resizeColumns(e,t,s,i=!0){const{columnsToResize:o,resizeStartWidth:r,resizeRatios:n,groupAfterColumns:l,groupAfterStartWidth:a,groupAfterRatios:d}=e,c=[];if(c.push({columns:o,ratios:n,width:t}),l){const u=t-r;c.push({columns:l,ratios:d,width:a-u})}this.columnSizeService.resizeColumnSets({resizeSets:c,finished:i,source:s}),i&&this.toggleColumnResizing(!1)}toggleColumnResizing(e){this.comp.addOrRemoveCssClass("ag-column-resizing",e)}getColumnsToResize(){return this.columnGroup.getDisplayedLeafColumns().filter(t=>t.isResizable())}getInitialSizeOfColumns(e){return e.reduce((t,s)=>t+s.getActualWidth(),0)}getSizeRatiosOfColumns(e,t){return e.map(s=>s.getActualWidth()/t)}normaliseDragChange(e){let t=e;return this.gos.get("enableRtl")?this.pinned!=="left"&&(t*=-1):this.pinned==="right"&&(t*=-1),t}destroy(){super.destroy(),this.clearLocalValues()}},Eg=class extends b{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);
100this.columnGroup.getLeafColumns().forEach(t=>{t.addEventListener("widthChanged",e),t.addEventListener("visibleChanged",e),this.removeChildListenersFuncs.push(()=>{t.removeEventListener("widthChanged",e),t.removeEventListener("visibleChanged",e)})})}removeListenersOnChildrenColumns(){this.removeChildListenersFuncs.forEach(e=>e()),this.removeChildListenersFuncs=[]}onDisplayedChildrenChanged(){this.addListenersToChildrenColumns(),this.onWidthChanged()}onWidthChanged(){const e=this.columnGroup.getActualWidth();this.comp.setWidth(`${e}px`),this.comp.addOrRemoveCssClass("ag-hidden",e===0)}},Mg=class extends Ro{constructor(e,t,s){super(e,t,s),this.onSuppressColMoveChange=()=>{if(!this.isAlive()||this.isSuppressMoving())this.removeDragSource();else if(!this.dragSource){const i=this.getGui();this.setDragSource(i)}},this.column=e}setComp(e,t,s,i,o){this.comp=e,o=wi(this,this.beans.context,o),this.setGui(t,o),this.displayName=this.beans.columnNameService.getDisplayNameForColumnGroup(this.column,"header"),this.addClasses(),this.setupMovingCss(o),this.setupExpandable(o),this.setupTooltip(o),this.setupAutoHeight({wrapperElement:i,compBean:o}),this.setupUserComp(o),this.addHeaderMouseListeners(o),this.addManagedPropertyListener("groupHeaderHeight",this.refreshMaxHeaderHeight.bind(this)),this.refreshMaxHeaderHeight();const r=this.getParentRowCtrl().getPinned(),n=this.column.getProvidedColumnGroup().getLeafColumns();o.createManagedBean(new rn(n,t)),o.createManagedBean(new sn(this.column,t,this.beans)),o.createManagedBean(new Eg(e,this.column)),this.resizeFeature=o.createManagedBean(new Pg(e,s,r,this.column)),o.createManagedBean(new kt(t,{shouldStopEventPropagation:this.shouldStopEventPropagation.bind(this),onTabKeyDown:()=>{},handleKeyDown:this.handleKeyDown.bind(this),onFocusIn:this.onFocusIn.bind(this)})),this.addHighlightListeners(o,n),o.addManagedPropertyListener("suppressMovableColumns",this.onSuppressColMoveChange),this.addResizeAndMoveKeyboardListeners(o),o.addDestroyFunc(()=>this.clearComponent())}refreshMaxHeaderHeight(){const{gos:e,comp:t}=this,s=e.get("groupHeaderHeight");s!=null?s===0?t.setHeaderWrapperHidden(!0):t.setHeaderWrapperMaxHeight(s):(t.setHeaderWrapperHidden(!1),t.setHeaderWrapperMaxHeight(null))}addHighlightListeners(e,t){if(this.beans.gos.get("suppressMoveWhenColumnDragging"))for(const s of t)e.addManagedListeners(s,{headerHighlightChanged:this.onLeafColumnHighlightChanged.bind(this,s)})}onLeafColumnHighlightChanged(e){const t=this.column.getDisplayedLeafColumns(),s=t[0]===e,i=W(t)===e;if(!s&&!i)return;const o=e.getHighlighted(),r=!!this.getParentRowCtrl().findHeaderCellCtrl(a=>a.getColumnGroupChild().isMoving());let n=!1,l=!1;if(r){const a=this.beans.gos.get("enableRtl"),d=o===1,c=o===0;s&&(a?l=d:n=c),i&&(a?n=c:l=d)}this.comp.addOrRemoveCssClass("ag-header-highlight-before",n),this.comp.addOrRemoveCssClass("ag-header-highlight-after",l)}getColumn(){return this.column}resizeHeader(e,t){if(!this.resizeFeature)return;const s=this.resizeFeature.getInitialValues(t);this.resizeFeature.resizeColumns(s,s.resizeStartWidth+e,"uiColumnResized",!0)}moveHeader(e){const{beans:t,eGui:s,column:i,ctrlsService:o}=this,{gos:r,columnModel:n,columnMoveService:l,visibleColsService:a}=t,d=r.get("enableRtl"),c=e===0,u=this.getPinned(),h=s.getBoundingClientRect(),p=h.left,g=h.width,f=oo({x:c!==d?p-20:p+g+20,pinned:u,fromKeyboard:!0,gos:r,ctrlsService:o}),m=i.getGroupId(),v=this.focusService.getFocusedHeader();cn({allMovingColumns:this.column.getLeafColumns(),isFromHeader:!0,fromLeft:e===1,xPosition:f,pinned:u,fromEnter:!1,fakeEvent:!1,gos:r,columnModel:n,columnMoveService:l,visibleColsService:a,finished:!0});const y=i.getDisplayedLeafColumns(),w=c?y[0]:W(y);this.ctrlsService.getGridBodyCtrl().getScrollFeature().ensureColumnVisible(w,"auto"),(!this.isAlive()||this.beans.gos.get("ensureDomOrder"))&&v&&this.restoreFocus(m,i,v)}restoreFocus(e,t,s){const i=t.getLeafColumns();if(!i.length)return;const o=i[0].getParent();if(!o)return;const r=this.findGroupWidthId(o,e);r&&this.focusService.focusHeaderPosition({headerPosition:{...s,column:r}})}findGroupWidthId(e,t){for(;e;){if(e.getGroupId()===t)return e;e=e.getParent()}return null}resizeLeafColumnsToFit(e){this.resizeFeature&&this.resizeFeature.resizeLeafColumnsToFit(e)}setupUserComp(e){const t=this.gos.addGridCommonParams({displayName:this.displayName,columnGroup:this.column,setExpanded:i=>{this.beans.columnModel.setColumnGroupOpened(this.column.getProvidedColumnGroup(),i,"gridInitializing")},setTooltip:(i,o)=>{this.setupTooltip(e,i,o)}}
100),s=this.userComponentFactory.getHeaderGroupCompDetails(t);this.comp.setUserCompDetails(s)}addHeaderMouseListeners(e){const t=o=>this.handleMouseOverChange(o.type==="mouseenter"),s=()=>this.dispatchColumnMouseEvent("columnHeaderClicked",this.column.getProvidedColumnGroup()),i=o=>this.handleContextMenuMouseEvent(o,void 0,this.column.getProvidedColumnGroup());e.addManagedListeners(this.getGui(),{mouseenter:t,mouseleave:t,click:s,contextmenu:i})}handleMouseOverChange(e){this.eventService.dispatchEvent({type:e?"columnHeaderMouseOver":"columnHeaderMouseLeave",column:this.column.getProvidedColumnGroup()})}setupTooltip(e,t,s){this.tooltipFeature&&(this.tooltipFeature=this.destroyBean(this.tooltipFeature));const i=this.column.getColGroupDef(),o=this.gos.get("tooltipShowMode")==="whenTruncated",r=this.eGui;!s&&o&&!(i!=null&&i.headerGroupComponent)&&(s=()=>{const l=r.querySelector(".ag-header-group-text");return l?l.scrollWidth>l.clientWidth:!0});const n={getColumn:()=>this.column,getGui:()=>r,getLocation:()=>"headerGroup",getTooltipValue:()=>t??(i&&i.headerTooltip),shouldDisplayTooltip:s};i&&(n.getColDef=()=>i),e.createManagedBean(new us(n))}setupExpandable(e){const t=this.column.getProvidedColumnGroup();this.refreshExpanded();const s=this.refreshExpanded.bind(this);e.addManagedListeners(t,{expandedChanged:s,expandableChanged:s})}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)}getColId(){return this.column.getUniqueId()}addClasses(){const e=this.column.getColGroupDef(),t=on(e,this.gos,null,this.column);this.column.isPadding()?(t.push("ag-header-group-cell-no-group"),this.column.getLeafColumns().every(i=>i.isSpanHeaderHeight())&&t.push("ag-header-span-height")):(t.push("ag-header-group-cell-with-group"),e!=null&&e.wrapHeaderText&&t.push("ag-header-cell-wrap-text")),t.forEach(s=>this.comp.addOrRemoveCssClass(s,!0))}setupMovingCss(e){const s=this.column.getProvidedColumnGroup().getLeafColumns(),i=()=>this.comp.addOrRemoveCssClass("ag-header-cell-moving",this.column.isMoving());s.forEach(o=>{e.addManagedListeners(o,{movingChanged:i})}),i()}onFocusIn(e){if(!this.eGui.contains(e.relatedTarget)){const t=this.getRowIndex();this.beans.focusService.setFocusedHeader(t,this.column)}}handleKeyDown(e){super.handleKeyDown(e);const t=this.getWrapperHasFocus();if(!(!this.expandable||!t)&&e.key===S.ENTER){const s=this.column,i=!s.isExpanded();this.beans.columnModel.setColumnGroupOpened(s.getProvidedColumnGroup(),i,"uiColumnExpanded")}}setDragSource(e){if(!this.isAlive()||this.isSuppressMoving()||(this.removeDragSource(),!e))return;const{beans:t,column:s,displayName:i,gos:o,dragAndDropService:r}=this,{columnModel:n}=t,l=s.getProvidedColumnGroup().getLeafColumns();let a=!o.get("suppressDragLeaveHidesColumns");const d=this.dragSource={type:1,eElement:e,getDefaultIconName:()=>a?"hide":"notAllowed",dragItemName:i,getDragItem:()=>this.getDragItemForGroup(s),onDragStarted:()=>{a=!o.get("suppressDragLeaveHidesColumns"),Ms(l,!0)},onDragStopped:()=>Ms(l,!1),onDragCancelled:()=>Ms(l,!1),onGridEnter:c=>{if(a){const{columns:u=[],visibleState:h}=c??{},p=u.filter(g=>!g.getColDef().lockVisible&&(!h||h[g.getColId()]));n.setColsVisible(p,!0,"uiColumnMoved")}},onGridExit:c=>{var u;if(a){const h=((u=c==null?void 0:c.columns)==null?void 0:u.filter(p=>!p.getColDef().lockVisible))||[];n.setColsVisible(h,!1,"uiColumnMoved")}}};r.addDragSource(d,!0)}getDragItemForGroup(e){const t=e.getProvidedColumnGroup().getLeafColumns(),s={};t.forEach(n=>s[n.getId()]=n.isVisible());const i=[];this.beans.visibleColsService.getAllCols().forEach(n=>{t.indexOf(n)>=0&&(i.push(n),ke(t,n))}),t.forEach(n=>i.push(n));const o=[],r=e.getLeafColumns();for(const n of i)r.indexOf(n)!==-1&&o.push(n);return{columns:i,columnsInSplit:o,visibleState:s}}isSuppressMoving(){let e=!1;return this.column.getLeafColumns().forEach(s=>{(s.getColDef().suppressMovable||s.getColDef().lockPosition)&&(e=!0)}),e||this.gos.get("suppressMovableColumns")}destroy(){super.destroy()}},Dg=0,Wo=class extends b{constructor(e,t,s){super(),this.instanceId=Dg++,this.rowIndex=e,this.pinned=t,this.type=s;const i=s=="group"?"ag-header-row-column-group":s=="filter"?"ag-header-row-column-filter":"ag-header-row-column";this.headerRowClass=`ag-header-row ${i}`}wireBeans(e){this.beans=e}postConstruct(){this.isPrintLayout=De(this.gos,"print"),this.isEnsureDomOrder=this.gos.get("ensureDomOrder")}areCellsRendered(){return this.comp?this.getHeaderCellCtrls().every(e=>e.getGui()!=null):!1}setComp(e,t,s=!0){this.comp=e,t=wi(this,this.beans.context,t),s&&(this.onRowHeightChanged(),this.onVirtualColumnsChanged()),this.setWidth(),this.addEventListeners(t)}getHeaderRowClass(){return this.headerRowClass}getAriaRowIndex(){return this.rowIndex+1}addEventListeners(e){const t=this.onRowHeightChanged.bind(this);e.addManagedEventListeners({columnResized:this.onColumnResized.bind(this),displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this),virtualColumnsChanged:s=>this.onVirtualColumnsChanged(s.afterScroll),columnGroupHeaderHeight
100Changed:t,columnHeaderHeightChanged:t,gridStylesChanged:t,advancedFilterEnabledChanged:t}),e.addManagedPropertyListener("domLayout",this.onDisplayedColumnsChanged.bind(this)),e.addManagedPropertyListener("ensureDomOrder",s=>this.isEnsureDomOrder=s.currentValue),e.addManagedPropertyListeners(["headerHeight","pivotHeaderHeight","groupHeaderHeight","pivotGroupHeaderHeight","floatingFiltersHeight"],t)}getHeaderCellCtrl(e){if(this.headerCellCtrls)return Wi(this.headerCellCtrls).find(t=>t.getColumnGroupChild()===e)}onDisplayedColumnsChanged(){this.isPrintLayout=De(this.gos,"print"),this.onVirtualColumnsChanged(),this.setWidth(),this.onRowHeightChanged()}getType(){return this.type}onColumnResized(){this.setWidth()}setWidth(){const e=this.getWidthForRow();this.comp.setWidth(`${e}px`)}getWidthForRow(){const{visibleColsService:e}=this.beans;return this.isPrintLayout?this.pinned!=null?0:e.getContainerWidth("right")+e.getContainerWidth("left")+e.getContainerWidth(null):e.getContainerWidth(this.pinned)}onRowHeightChanged(){const{topOffset:e,rowHeight:t}=this.getTopAndHeight();this.comp.setTop(e+"px"),this.comp.setHeight(t+"px")}getTopAndHeight(){const{columnModel:e,filterManager:t}=this.beans,s=[],i=e.getGroupRowsHeight(),o=e.getColumnHeaderRowHeight();s.push(...i),s.push(o),t!=null&&t.hasFloatingFilters()&&s.push(e.getFloatingFiltersHeight());let r=0;for(let l=0;l<this.rowIndex;l++)r+=s[l];const n=s[this.rowIndex];return{topOffset:r,rowHeight:n}}getPinned(){return this.pinned}getRowIndex(){return this.rowIndex}onVirtualColumnsChanged(e=!1){const t=this.getHeaderCtrls(),s=this.isEnsureDomOrder||this.isPrintLayout;this.comp.setHeaderCtrls(t,s,e)}getHeaderCtrls(){const e=this.headerCellCtrls;this.headerCellCtrls=new Map;const t=this.getColumnsInViewport();for(const i of t)this.recycleAndCreateHeaderCtrls(i,e);const s=i=>{const{focusService:o,visibleColsService:r}=this.beans;return o.isHeaderWrapperFocused(i)?r.isVisible(i.getColumnGroupChild()):!1};if(e)for(const[i,o]of e)s(o)?this.headerCellCtrls.set(i,o):this.destroyBean(o);return this.getHeaderCellCtrls()}getHeaderCellCtrls(){var e;return Array.from(((e=this.headerCellCtrls)==null?void 0:e.values())??[])}recycleAndCreateHeaderCtrls(e,t){if(!this.headerCellCtrls||e.isEmptyGroup())return;const s=e.getUniqueId();let i;if(t&&(i=t.get(s),t.delete(s)),i&&i.getColumnGroupChild()!=e&&(this.destroyBean(i),i=void 0),i==null)switch(this.type){case"filter":{i=this.createBean(this.beans.ctrlsFactory.getInstance("headerFilterCell",e,this.beans,this));break}case"group":i=this.createBean(new Mg(e,this.beans,this));break;default:i=this.createBean(new Fg(e,this.beans,this));break}this.headerCellCtrls.set(s,i)}getColumnsInViewport(){return this.isPrintLayout?this.getColumnsInViewportPrintLayout():this.getColumnsInViewportNormalLayout()}getColumnsInViewportPrintLayout(){if(this.pinned!=null)return[];let e=[];const t=this.getActualDepth(),{columnViewportService:s}=this.beans;return["left",null,"right"].forEach(i=>{const o=s.getHeadersToRender(i,t);e=e.concat(o)}),e}getActualDepth(){return this.type=="filter"?this.rowIndex-1:this.rowIndex}getColumnsInViewportNormalLayout(){return this.beans.columnViewportService.getHeadersToRender(this.pinned,this.getActualDepth())}findHeaderCellCtrl(e){if(!this.headerCellCtrls)return;const t=this.getHeaderCellCtrls();let s;return typeof e=="function"?s=t.find(e):s=t.find(i=>i.getColumnGroupChild()==e),s}focusHeader(e,t){const s=this.findHeaderCellCtrl(e);return s?s.focus(t):!1}destroy(){var e;(e=this.headerCellCtrls)==null||e.forEach(t=>{this.destroyBean(t)}),this.headerCellCtrls=void 0,super.destroy()}},Sd=class extends b{constructor(e){super(),this.hidden=!1,this.includeFloatingFilter=!1,this.groupsRowCtrls=[],this.pinned=e}wireBeans(e){this.ctrlsService=e.ctrlsService,this.scrollVisibleService=e.scrollVisibleService,this.pinnedWidthService=e.pinnedWidthService,this.columnModel=e.columnModel,this.focusService=e.focusService,this.filterManager=e.filterManager}setComp(e,t){this.comp=e,this.eViewport=t,this.setupCenterWidth(),this.setupPinnedWidth(),this.setupDragAndDrop(this.eViewport);const s=this.onDisplayedColumnsChanged.bind(this);this.addManagedEventListeners({gridColumnsChanged:this.onGridColumnsChanged.bind(this),displayedColumnsChanged:s,advancedFilterEnabledChanged:s});const i=`${typeof this.pinned=="string"?this.pinned:"center"}Header`;this.ctrlsService.register(i,this),this.columnModel.isReady()&&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 t=new Ze,s=this.focusService.getFocusHeaderToUseAfterRefresh(),i=()=>{const l=this.columnModel.getHeaderRowCount()-1;this.groupsRowCtrls=this.destroyBeans(this.groupsRowCtrls);for(let a=0;a<l;a++){const d=this.createBean(new Wo(t.next(),this.pinned,"group"));this.groupsRowCtrls.push(d)}},o=()=>{const l=t.next(),a=!this.hidden&&(this.columnsRowCtrl==null||!e||this.columnsRowCtrl.getRowIndex()!==l);(a||this.hidden)&&(this.columnsRowCtrl=this.destroyBean(this.columnsRowCtrl)),a&&(this.columnsRowCtrl=this.createBean(new Wo(l,this.pinned,"column")))},r=()=>{var d;this.includeFloatingFilter=!!((d=this.filterManager)!=null&&d.hasFloatingFilters())&&!this.hidden;const l=()=>{this.filtersRowCtrl=this.destroyBean(this.filtersRowCtrl)};if(!this.includeFloatingFilter){l();return}const a=t.next();if(this.filtersRowCtrl){const c=this.filtersRowCtrl.getRowIndex()!==a;(!e||c)&&l()}this.filtersRowCtrl||(this.filtersRowCtrl=this.createBean(new Wo(a,this.pinned,"filter")))};i(),o(),r();const n=this.getAllCtrls();this.comp.setCtrls(n),this.restoreFocusOnHeader(s)}getHeaderCtrlForColumn(e){var t;if(bt(e))return(t=this.columnsRowCtrl)==null?void 0:t.getHeaderCellCtrl(e);
100if(this.groupsRowCtrls.length!==0)for(let s=0;s<this.groupsRowCtrls.length;s++){const i=this.groupsRowCtrls[s].getHeaderCellCtrl(e);if(i)return i}}getHtmlElementForColumnHeader(e){const t=this.getHeaderCtrlForColumn(e);return t?t.getGui():null}getRowType(e){const s=this.getAllCtrls()[e];return s?s.getType():void 0}focusHeader(e,t,s){const o=this.getAllCtrls()[e];return o?o.focusHeader(t,s):!1}getViewportElement(){return this.eViewport}getGroupRowCount(){return this.groupsRowCtrls.length}getGroupRowCtrlAtIndex(e){return this.groupsRowCtrls[e]}getRowCount(){return this.groupsRowCtrls.length+(this.columnsRowCtrl?1:0)+(this.filtersRowCtrl?1:0)}setHorizontalScroll(e){this.comp.setViewportScrollLeft(e)}onScrollCallback(e){this.addManagedElementListeners(this.getViewportElement(),{scroll:e})}destroy(){this.filtersRowCtrl&&(this.filtersRowCtrl=this.destroyBean(this.filtersRowCtrl)),this.columnsRowCtrl&&(this.columnsRowCtrl=this.destroyBean(this.columnsRowCtrl)),this.groupsRowCtrls&&this.groupsRowCtrls.length&&(this.groupsRowCtrls=this.destroyBeans(this.groupsRowCtrls)),super.destroy()}setupDragAndDrop(e){const t=new yg(this.pinned,e);this.createManagedBean(t)}restoreFocusOnHeader(e){if(!e)return;const{column:t}=e;t.getPinned()==this.pinned&&this.focusService.focusHeaderPosition({headerPosition:e})}onGridColumnsChanged(){this.refresh(!0)}onDisplayedColumnsChanged(){var t;const e=((t=this.filterManager)==null?void 0:t.hasFloatingFilters())&&!this.hidden;this.includeFloatingFilter!==e&&this.refresh(!0)}setupCenterWidth(){this.pinned==null&&this.createManagedBean(new dn(e=>this.comp.setCenterWidth(`${e}px`),!0))}setupPinnedWidth(){if(this.pinned==null)return;const e=this.pinned==="left",t=this.pinned==="right";this.hidden=!0;const s=()=>{const i=e?this.pinnedWidthService.getPinnedLeftWidth():this.pinnedWidthService.getPinnedRightWidth();if(i==null)return;const o=i==0,r=this.hidden!==o,n=this.gos.get("enableRtl"),l=this.scrollVisibleService.getScrollbarWidth(),d=this.scrollVisibleService.isVerticalScrollShowing()&&(n&&e||!n&&t)?i+l:i;this.comp.setPinnedContainerWidth(`${d}px`),this.comp.setDisplayed(!o),r&&(this.hidden=o,this.refresh())};this.addManagedEventListeners({leftPinnedWidthChanged:s,rightPinnedWidthChanged:s,scrollVisibilityChanged:s,scrollbarWidthChanged:s})}},xg='<div class="ag-pinned-left-header" role="rowgroup"></div>',Ag='<div class="ag-pinned-right-header" role="rowgroup"></div>',Tg=`<div class="ag-header-viewport" role="presentation"> 101 <div class="ag-header-container" data-ref="eCenterContainer" role="rowgroup"></div> 102 </div>`,zo=class extends O{constructor(t){super(),this.eCenterContainer=P,this.headerRowComps={},this.rowCompsList=[],this.pinned=t}postConstruct(){this.selectAndSetTemplate();const t={setDisplayed:i=>this.setDisplayed(i),setCtrls:i=>this.setCtrls(i),setCenterWidth:i=>this.eCenterContainer.style.width=i,setViewportScrollLeft:i=>this.getGui().scrollLeft=i,setPinnedContainerWidth:i=>{const o=this.getGui();o.style.width=i,o.style.maxWidth=i,o.style.minWidth=i}};this.createManagedBean(new Sd(this.pinned)).setComp(t,this.getGui())}selectAndSetTemplate(){const t=this.pinned=="left",s=this.pinned=="right",i=t?xg:s?Ag:Tg;this.setTemplate(i),this.eRowContainer=this.eCenterContainer!==P?this.eCenterContainer:this.getGui()}destroy(){this.setCtrls([]),super.destroy()}destroyRowComp(t){this.destroyBean(t),this.eRowContainer.removeChild(t.getGui())}setCtrls(t){const s=this.headerRowComps;this.headerRowComps={},this.rowCompsList=[];let i;const o=r=>{const n=r.getGui();n.parentElement!=this.eRowContainer&&this.eRowContainer.appendChild(n),i&&Ea(this.eRowContainer,n,i),i=n};t.forEach(r=>{const n=r.instanceId,l=s[n];delete s[n];const a=l||this.createBean(new ug(r));this.headerRowComps[n]=a,this.rowCompsList.push(a),o(a)}),jt(s).forEach(r=>this.destroyRowComp(r))}},Ig=class extends O{constructor(){super('<div class="ag-header" role="presentation"/>')}postConstruct(){const t={addOrRemoveCssClass:(o,r)=>this.addOrRemoveCssClass(o,r),setHeightAndMinHeight:o=>{this.getGui().style.height=o,this.getGui().style.minHeight=o}};this.createManagedBean(new Cd).setComp(t,this.getGui(),this.getFocusableElement());const i=o=>{this.createManagedBean(o),this.appendChild(o)};i(new zo("left")),i(new zo(null)),i(new zo("right"))}},Lg={selector:"AG-HEADER-ROOT",component:Ig},un=class extends b{constructor(e){super(),this.view=e}postConstruct(){this.addManagedPropertyListener("domLayout",this.updateLayoutClasses.bind(this)),this.updateLayoutClasses()}updateLayoutClasses(){const e=this.getDomLayout(),t={autoHeight:e==="autoHeight",normal:e==="normal",print:e==="print"},s=t.autoHeight?"ag-layout-auto-height":t.print?"ag-layout-print":"ag-layout-normal";this.view.updateLayoutClasses(s,t)}getDomLayout(){const e=this.gos.get("domLayout")??"normal";return["normal","print","autoHeight"].indexOf(e)===-1?(R(`${e}
102 is not valid for DOM Layout, valid values are 'normal', 'autoHeight', 'print'.`),"normal"):e}},wd=class extends O{constructor(){super(` 103 <div class="ag-overlay" role="presentation"> 104 <div class="ag-overlay-panel" role="presentation"> 105 <div class="ag-overlay-wrapper" data-ref="eOverlayWrapper" role="presentation"></div> 106 </div> 107 </div>`),this.eOverlayWrapper=P,this.activePromise=null,this.activeOverlay=null,this.updateListenerDestroyFunc=null,this.activeOverlayWrapperCssClass=null,this.elToFocusAfter=null}wireBeans(e){this.overlayService=e.overlayService,this.focusService=e.focusService,this.visibleColsService=e.visibleColsService}handleKeyDown(e){if(e.key!==S.TAB||e.defaultPrevented||ht(e)||this.focusService.findNextFocusableElement(this.eOverlayWrapper,!1,e.shiftKey))return;let s=!1;e.shiftKey?s=this.focusService.focusGridView(W(this.visibleColsService.getAllCols()),!0,!1):s=this.focusService.focusNextGridCoreContainer(!1),s&&e.preventDefault()}updateLayoutClasses(e,t){const s=this.eOverlayWrapper.classList;s.toggle("ag-layout-auto-height",t.autoHeight),s.toggle("ag-layout-normal",t.normal),s.toggle("ag-layout-print",t.print)}postConstruct(){this.createManagedBean(new un(this)),this.setDisplayed(!1,{skipAriaHidden:!0}),this.overlayService.setOverlayWrapperComp(this),this.addManagedElementListeners(this.getFocusableElement(),{keydown:this.handleKeyDown.bind(this)})}setWrapperTypeClass(e){const t=this.eOverlayWrapper.classList;this.activeOverlayWrapperCssClass&&t.toggle(this.activeOverlayWrapperCssClass,!1),this.activeOverlayWrapperCssClass=e,t.toggle(e,!0)}showOverlay(e,t,s,i){if(this.setWrapperTypeClass(t),this.destroyActiveOverlay(),this.elToFocusAfter=null,this.activePromise=e,!!e){if(this.setDisplayed(!0,{skipAriaHidden:!0}),s&&this.focusService.isGridFocused()){const o=Q(this.gos);o&&!gi(this.gos)&&(this.elToFocusAfter=o)}e.then(o=>{if(this.activePromise!==e){this.activeOverlay!==o&&(this.destroyBean(o),o=null);return}if(this.activePromise=null,!o)return;if(this.activeOverlay!==o&&(this.eOverlayWrapper.appendChild(o.getGui()),this.activeOverlay=o,i)){const n=o;this.updateListenerDestroyFunc=this.addManagedPropertyListener(i,({currentValue:l})=>{var a;(a=n.refresh)==null||a.call(n,this.gos.addGridCommonParams({...l??{}}))})}const r=this.focusService;s&&r.isGridFocused()&&r.focusInto(this.eOverlayWrapper)})}}updateOverlayWrapperPaddingTop(e){this.eOverlayWrapper.style.setProperty("padding-top",`${e}px`)}destroyActiveOverlay(){var i;this.activePromise=null;const e=this.activeOverlay;if(!e)return;let t=this.elToFocusAfter;this.activeOverlay=null,this.elToFocusAfter=null,t&&!this.focusService.isGridFocused()&&(t=null);const s=this.updateListenerDestroyFunc;s&&(s(),this.updateListenerDestroyFunc=null),this.destroyBean(e),de(this.eOverlayWrapper),(i=t==null?void 0:t.focus)==null||i.call(t,{preventScroll:!0})}hideOverlay(){this.destroyActiveOverlay(),this.setDisplayed(!1,{skipAriaHidden:!0})}destroy(){this.elToFocusAfter=null,this.destroyActiveOverlay(),this.overlayService.setOverlayWrapperComp(void 0),super.destroy()}},Gg={selector:"AG-OVERLAY-WRAPPER",component:wd},yd=class extends O{constructor(e,t){super(),this.direction=t,this.eViewport=P,this.eContainer=P,this.hideTimeout=null,this.setTemplate(e)}wireBeans(e){this.animationFrameService=e.animationFrameService}postConstruct(){this.addManagedEventListeners({scrollVisibilityChanged:this.onScrollVisibilityChanged.bind(this)}),this.onScrollVisibilityChanged(),this.addOrRemoveCssClass("ag-apple-scrollbar",Sa()||Gt())}initialiseInvisibleScrollbar(){this.invisibleScrollbar===void 0&&(this.invisibleScrollbar=ya(),this.invisibleScrollbar&&(this.hideAndShowInvisibleScrollAsNeeded(),this.addActiveListenerToggles()))}addActiveListenerToggles(){const e=this.getGui(),t=()=>this.addOrRemoveCssClass("ag-scrollbar-active",!0),s=()=>this.addOrRemoveCssClass("ag-scrollbar-active",!1);this.addManagedListeners(e,{mouseenter:t,mousedown:t,touchstart:t,mouseleave:s,touchend:s})}onScrollVisibilityChanged(){this.invisibleScrollbar===void 0&&this.initialiseInvisibleScrollbar(),this.animationFrameService.requestAnimationFrame(()=>this.setScrollVisible())}hideAndShowInvisibleScrollAsNeeded(){this.addManagedEventListeners({bodyScroll:e=>{e.direction===this.direction&&(this.hideTimeout!==null&&(window.clearTimeout(this.hideTimeout),this.hideTimeout=null),this.addOrRemoveCssClass("ag-scrollbar-scrolling",!0))},bodyScrollEnd:()=>{this.hideTimeout=window.setTimeout(()=>{this.addOrRemoveCssClass("ag-scrollbar-scrolling",!1),this.hideTimeout=null},400)}})}attemptSettingScrollPosition(e){const t=this.getViewportElement();jl(()=>tt(t),()=>this.setScrollPosition(e),100)}getViewportElement(){return this.eViewport}getContainer(){return this.eContainer}onScrollCallback(e){this.addManagedElementListeners(this.getViewportElement(),{scroll:e})}},Rd=class extends yd{constructor(){super(`<div class="ag-body-horizontal-scroll" aria-hidden="true"> 108 <div class="ag-horizontal-left-spacer" data-ref="eLeftSpacer"></div> 109 <div class="ag-body-horizontal-scroll-viewport" data-ref="eViewport"> 110 <div class="ag-body-horizontal-scroll-container" data-ref="eContainer"></div> 111 </div> 112 <div class="ag-horizontal-right-spacer" data-ref="eRightSpacer"></div> 113 </div>`,"horizontal"),this.eLeftSpacer=P,this.eRightSpacer=P}wireBeans(e){super.wireBeans(e),this.visibleColsService=e.visibleColsService,this.pinnedRowModel=e.pinnedRowModel,this.ctrlsService=e.ctrlsService,this.scrollVisibleService=e.scrollVisibleService}
113postConstruct(){super.postConstruct();const e=this.setFakeHScrollSpacerWidths.bind(this);this.addManagedEventListeners({displayedColumnsChanged:e,displayedColumnsWidthChanged:e,pinnedRowDataChanged:this.onPinnedRowDataChanged.bind(this)}),this.addManagedPropertyListener("domLayout",e),this.ctrlsService.register("fakeHScrollComp",this),this.createManagedBean(new dn(t=>this.eContainer.style.width=`${t}px`)),this.addManagedPropertyListeners(["suppressHorizontalScroll"],this.onScrollVisibilityChanged.bind(this))}initialiseInvisibleScrollbar(){this.invisibleScrollbar===void 0&&(this.enableRtl=this.gos.get("enableRtl"),super.initialiseInvisibleScrollbar(),this.invisibleScrollbar&&this.refreshCompBottom())}onPinnedRowDataChanged(){this.refreshCompBottom()}refreshCompBottom(){if(!this.invisibleScrollbar)return;const e=this.pinnedRowModel.getPinnedBottomTotalHeight();this.getGui().style.bottom=`${e}px`}onScrollVisibilityChanged(){super.onScrollVisibilityChanged(),this.setFakeHScrollSpacerWidths()}setFakeHScrollSpacerWidths(){const e=this.scrollVisibleService.isVerticalScrollShowing();let t=this.visibleColsService.getDisplayedColumnsRightWidth();const s=!this.enableRtl&&e,i=this.scrollVisibleService.getScrollbarWidth();s&&(t+=i),pt(this.eRightSpacer,t),this.eRightSpacer.classList.toggle("ag-scroller-corner",t<=i);let o=this.visibleColsService.getColsLeftWidth();this.enableRtl&&e&&(o+=i),pt(this.eLeftSpacer,o),this.eLeftSpacer.classList.toggle("ag-scroller-corner",o<=i)}setScrollVisible(){const e=this.scrollVisibleService.isHorizontalScrollShowing(),t=this.invisibleScrollbar,s=this.gos.get("suppressHorizontalScroll"),i=e&&this.scrollVisibleService.getScrollbarWidth()||0,r=s?0:i===0&&t?16:i;this.addOrRemoveCssClass("ag-scrollbar-invisible",t),ii(this.getGui(),r),ii(this.eViewport,r),ii(this.eContainer,r),this.setDisplayed(e,{skipAriaHidden:!0})}getScrollPosition(){return Ji(this.getViewportElement(),this.enableRtl)}setScrollPosition(e){tt(this.getViewportElement())||this.attemptSettingScrollPosition(e),eo(this.getViewportElement(),e,this.enableRtl)}},kg={selector:"AG-FAKE-HORIZONTAL-SCROLL",component:Rd},bd=class extends b{wireBeans(e){this.maxDivHeightScaler=e.rowContainerHeightService}constructor(e,t){super(),this.eContainer=e,this.eViewport=t}postConstruct(){this.addManagedEventListeners({rowContainerHeightChanged:this.onHeightChanged.bind(this)})}onHeightChanged(){const e=this.maxDivHeightScaler.getUiContainerHeight(),t=e!=null?`${e}px`:"";this.eContainer.style.height=t,this.eViewport&&(this.eViewport.style.height=t)}},Fd=class extends yd{wireBeans(e){super.wireBeans(e),this.ctrlsService=e.ctrlsService,this.scrollVisibleService=e.scrollVisibleService}constructor(){super(`<div class="ag-body-vertical-scroll" aria-hidden="true"> 114 <div class="ag-body-vertical-scroll-viewport" data-ref="eViewport"> 115 <div class="ag-body-vertical-scroll-container" data-ref="eContainer"></div> 116 </div> 117 </div>`,"vertical")}postConstruct(){super.postConstruct(),this.createManagedBean(new bd(this.eContainer)),this.ctrlsService.register("fakeVScrollComp",this),this.addManagedEventListeners({rowContainerHeightChanged:this.onRowContainerHeightChanged.bind(this)})}setScrollVisible(){const e=this.scrollVisibleService.isVerticalScrollShowing(),t=this.invisibleScrollbar,s=e&&this.scrollVisibleService.getScrollbarWidth()||0,i=s===0&&t?16:s;this.addOrRemoveCssClass("ag-scrollbar-invisible",t),pt(this.getGui(),i),pt(this.eViewport,i),pt(this.eContainer,i),this.setDisplayed(e,{skipAriaHidden:!0})}onRowContainerHeightChanged(){const{ctrlsService:e}=this,s=e.getGridBodyCtrl().getBodyViewportElement(),i=this.getScrollPosition(),o=s.scrollTop;i!=o&&this.setScrollPosition(o,!0)}getScrollPosition(){return this.getViewportElement().scrollTop}setScrollPosition(e,t){!t&&!tt(this.getViewportElement())&&this.attemptSettingScrollPosition(e),this.getViewportElement().scrollTop=e}},Og={selector:"AG-FAKE-VERTICAL-SCROLL",component:Fd},vr=(e=>(e.FakeHScrollbar="fakeHScrollComp",e.Header="centerHeader",e.PinnedTop="topCenter",e.PinnedBottom="bottomCenter",e.StickyTop="stickyTopCenter",e.StickyBottom="stickyBottomCenter",e))(vr||{}),Ng=class extends b{constructor(e){super(),this.lastScrollSource=[null,
117null],this.scrollLeft=-1,this.nextScrollTop=-1,this.scrollTop=-1,this.lastOffsetHeight=-1,this.lastScrollTop=-1,this.eBodyViewport=e,this.resetLastHScrollDebounced=Me(()=>this.lastScrollSource[1]=null,500),this.resetLastVScrollDebounced=Me(()=>this.lastScrollSource[0]=null,500)}wireBeans(e){this.ctrlsService=e.ctrlsService,this.animationFrameService=e.animationFrameService,this.paginationService=e.paginationService,this.pageBoundsService=e.pageBoundsService,this.rowModel=e.rowModel,this.heightScaler=e.rowContainerHeightService,this.rowRenderer=e.rowRenderer,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService}postConstruct(){this.enableRtl=this.gos.get("enableRtl"),this.addManagedEventListeners({displayedColumnsWidthChanged:this.onDisplayedColumnsWidthChanged.bind(this)}),this.ctrlsService.whenReady(this,e=>{this.centerRowsCtrl=e.center,this.onDisplayedColumnsWidthChanged(),this.addScrollListener()})}addScrollListener(){this.addHorizontalScrollListeners(),this.addVerticalScrollListeners()}addHorizontalScrollListeners(){this.addManagedElementListeners(this.centerRowsCtrl.getViewportElement(),{scroll:this.onHScroll.bind(this,"Viewport")});for(const e of Object.values(vr)){const t=this.ctrlsService.get(e);this.registerScrollPartner(t,this.onHScroll.bind(this,e))}}addVerticalScrollListeners(){const e=this.ctrlsService.get("fakeVScrollComp"),t=this.gos.get("debounceVerticalScrollbar"),s=t?Me(this.onVScroll.bind(this,"Viewport"),100):this.onVScroll.bind(this,"Viewport"),i=t?Me(this.onVScroll.bind(this,"fakeVScrollComp"),100):this.onVScroll.bind(this,"fakeVScrollComp");this.addManagedElementListeners(this.eBodyViewport,{scroll:s}),this.registerScrollPartner(e,i)}registerScrollPartner(e,t){e.onScrollCallback(t)}onDisplayedColumnsWidthChanged(){this.enableRtl&&this.horizontallyScrollHeaderCenterAndFloatingCenter()}horizontallyScrollHeaderCenterAndFloatingCenter(e){this.centerRowsCtrl!=null&&(e===void 0&&(e=this.centerRowsCtrl.getCenterViewportScrollLeft()),this.setScrollLeftForAllContainersExceptCurrent(Math.abs(e)))}setScrollLeftForAllContainersExceptCurrent(e){for(const t of[...Object.values(vr),"Viewport"]){if(this.lastScrollSource[1]===t)continue;const s=this.getViewportForSource(t);eo(s,e,this.enableRtl)}}getViewportForSource(e){return e==="Viewport"?this.centerRowsCtrl.getViewportElement():this.ctrlsService.get(e).getViewportElement()}isControllingScroll(e,t){return this.lastScrollSource[t]==null?(t===0?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.getViewportElement(),{scrollLeft:s}=t;if(this.shouldBlockScrollUpdate(1,s,!0))return;const i=Ji(this.getViewportForSource(e),this.enableRtl);this.doHorizontalScroll(i),this.resetLastHScrollDebounced()}onVScroll(e){if(!this.isControllingScroll(e,0))return;let t;e==="Viewport"?t=this.eBodyViewport.scrollTop:t=this.ctrlsService.get("fakeVScrollComp").getScrollPosition(),!this.shouldBlockScrollUpdate(0,t,!0)&&(this.animationFrameService.setScrollTop(t),this.nextScrollTop=t,e==="Viewport"?this.ctrlsService.get("fakeVScrollComp").setScrollPosition(t):this.eBodyViewport.scrollTop=t,this.gos.get("suppressAnimationFrame")?this.scrollGridIfNeeded():this.animationFrameService.schedule(),this.resetLastVScrollDebounced())}doHorizontalScroll(e){const t=this.ctrlsService.get("fakeHScrollComp").getScrollPosition();this.scrollLeft===e&&e===t||(this.scrollLeft=e,this.fireScrollEvent(1),this.horizontallyScrollHeaderCenterAndFloatingCenter(e),this.centerRowsCtrl.onHorizontalViewportChanged(!0))}fireScrollEvent(e){const t={type:"bodyScroll",direction:e===1?"horizontal":"vertical",left:this.scrollLeft,top:this.scrollTop};this.eventService.dispatchEvent(t),window.clearTimeout(this.scrollTimer),this.scrollTimer=void 0,this.scrollTimer=window.setTimeout(()=>{this.eventService.dispatchEvent({...t,type:"bodyScrollEnd"})},100)}shouldBlockScrollUpdate(e,t,s=!1){return s&&!Gt()?!1:e===0?this.shouldBlockVerticalScroll(t):this.shouldBlockHorizontalScroll(t)}shouldBlockVerticalScroll(e){const t=mo(this.eBodyViewport),{scrollHeight:s}=this.eBodyViewport;return e<0||e+t>s}shouldBlockHorizontalScroll(e){const t=this.centerRowsCtrl.getCenterWidth(),{scrollWidth:s}=this.centerRowsCtrl.getViewportElement();if(this.enableRtl&&Zi()){if(e>0)return!0}else if(e<0)return!0;return Math.abs(e)+t>s}redrawRowsAfterScroll(){this.fireScrollEvent(0)}checkScrollLeft(){this.scrollLeft!==this.centerRowsCtrl.getCenterViewportScrollLeft()&&this.onHScroll("Viewport")}scrollGridIfNeeded(){const e=this.scrollTop!=this.nextScrollTop;return e&&(this.scrollTop=this.nextScrollTop,this.redrawRowsAfterScroll()),e}setHorizontalScrollPosition(e,t=!1){const i=this.centerRowsCtrl.getViewportElement().scrollWidth-this.centerRowsCtrl.getCenterWidth();!t&&this.shouldBlockScrollUpdate(1,e)&&(this.enableRtl&&Zi()?e=e>
1170?0:i:e=Math.min(Math.max(e,0),i)),eo(this.centerRowsCtrl.getViewportElement(),Math.abs(e),this.enableRtl),this.doHorizontalScroll(e)}setVerticalScrollPosition(e){this.eBodyViewport.scrollTop=e}getVScrollPosition(){return this.lastScrollTop=this.eBodyViewport.scrollTop,this.lastOffsetHeight=this.eBodyViewport.offsetHeight,{top:this.lastScrollTop,bottom:this.lastScrollTop+this.lastOffsetHeight}}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.centerRowsCtrl.isHorizontalScrollShowing()}scrollHorizontally(e){const t=this.centerRowsCtrl.getViewportElement().scrollLeft;return this.setHorizontalScrollPosition(t+e),this.centerRowsCtrl.getViewportElement().scrollLeft-t}scrollToTop(){this.eBodyViewport.scrollTop=0}ensureNodeVisible(e,t=null){const s=this.rowModel.getRowCount();let i=-1;for(let o=0;o<s;o++){const r=this.rowModel.getRow(o);if(typeof e=="function"){if(r&&e(r)){i=o;break}}else if(e===r||e===r.data){i=o;break}}i>=0&&this.ensureIndexVisible(i,t)}ensureIndexVisible(e,t){if(De(this.gos,"print"))return;const s=this.rowModel.getRowCount();if(typeof e!="number"||e<0||e>=s){R("Invalid row index for ensureIndexVisible: "+e);return}const o=this.gos.get("pagination")&&!this.gos.get("suppressPaginationPanel");this.getFrameworkOverrides().wrapIncoming(()=>{var c;o||(c=this.paginationService)==null||c.goToPageWithIndex(e);const r=this.ctrlsService.getGridBodyCtrl(),n=r.getStickyTopHeight(),l=r.getStickyBottomHeight(),a=this.rowModel.getRow(e);let d;do{const u=a.rowTop,h=a.rowHeight,p=this.pageBoundsService.getPixelOffset(),g=a.rowTop-p,f=g+a.rowHeight,m=this.getVScrollPosition(),v=this.heightScaler.getDivStretchOffset(),y=m.top+v,w=m.bottom+v,F=w-y,D=this.heightScaler.getScrollPositionForPixel(g),M=this.heightScaler.getScrollPositionForPixel(f-F),x=Math.min((D+M)/2,g),I=y+n>g,G=w-l<f;let k=null;t==="top"?k=D:t==="bottom"?k=M:t==="middle"?k=x:I?k=D-n:G&&(k=M+l),k!==null&&(this.setVerticalScrollPosition(k),this.rowRenderer.redraw({afterScroll:!0})),d=u!==a.rowTop||h!==a.rowHeight}while(d);this.animationFrameService.flushAllFrames()})}ensureColumnVisible(e,t="auto"){const s=this.columnModel.getCol(e);if(!s||s.isPinned()||!this.visibleColsService.isColDisplayed(s))return;const i=this.getPositionedHorizontalScroll(s,t);this.getFrameworkOverrides().wrapIncoming(()=>{i!==null&&this.centerRowsCtrl.setCenterViewportScrollLeft(i),this.centerRowsCtrl.onHorizontalViewportChanged(),this.animationFrameService.flushAllFrames()})}setScrollPosition(e,t){this.getFrameworkOverrides().wrapIncoming(()=>{this.centerRowsCtrl.setCenterViewportScrollLeft(t),this.setVerticalScrollPosition(e),this.rowRenderer.redraw({afterScroll:!0}),this.animationFrameService.flushAllFrames()})}getPositionedHorizontalScroll(e,t){const{columnBeforeStart:s,columnAfterEnd:i}=this.isColumnOutsideViewport(e),o=this.centerRowsCtrl.getCenterWidth()<e.getActualWidth(),r=this.centerRowsCtrl.getCenterWidth(),n=this.enableRtl;let l=(n?s:i)||o,a=n?i:s;t!=="auto"&&(l=t==="start",a=t==="end");const d=t==="middle";if(l||a||d){const{colLeft:c,colMiddle:u,colRight:h}=this.getColumnBounds(e);return d?u-r/2:l?n?h:c:n?c-r:h-r}return null}isColumnOutsideViewport(e){const{start:t,end:s}=this.getViewportBounds(),{colLeft:i,colRight:o}=this.getColumnBounds(e),r=this.enableRtl,n=r?t>o:s<o,l=r?s<i:t>i;return{columnBeforeStart:n,columnAfterEnd:l}}getColumnBounds(e){const t=this.enableRtl,s=this.visibleColsService.getBodyContainerWidth(),i=e.getActualWidth(),o=e.getLeft(),r=t?-1:1,n=t?s-o:o,l=n+i*r,a=n+i/2*r;return{colLeft:n,colMiddle:a,colRight:l}}getViewportBounds(){const e=this.centerRowsCtrl.getCenterWidth(),t=this.centerRowsCtrl.getCenterViewportScrollLeft(),s=t,i=e+t;return{start:s,end:i,width:e}}},Bg=class extends b{wireBeans(e){this.animationFrameService=e.animationFrameService,this.ctrlsService=e.ctrlsService,this.pinnedWidthService=e.pinnedWidthService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.columnSizeService=e.columnSizeService,this.scrollVisibleService=e.scrollVisibleService,this.columnViewportService=e.columnViewportService}constructor(e){super(),this.centerContainerCtrl=e}postConstruct(){this.ctrlsService.whenReady(this,e=>{this.gridBodyCtrl=e.gridBodyCtrl,this.listenForResize()}),this.addManagedEventListeners({scrollbarWidthChanged:this.onScrollbarWidthChanged.bind(this)}),this.addManagedPropertyListeners(["alwaysShowHorizontalScroll","alwaysShowVerticalScroll"],()=>{this.checkViewportAndScrolls()})}listenForResize(){const e=()=>{this.animationFrameService.requestAnimationFrame(()=>{this.onCenterViewportResized()})};this.centerContainerCtrl.registerViewportResizeListener(e),this.gridBodyCtrl.registerBodyViewportResizeListener(e)}onScrollbarWidthChanged(){this.checkViewportAndScrolls()}onCenterViewportResized(){if(this.scrollVisibleService.onCentreViewportResized(),this.centerContainerCtrl.isViewportInTheDOMTree()){this.keepPinnedColumnsNarrowerThanViewport(),this.checkViewportAndScrolls();const e=this.centerContainerCtrl.getCenterWidth();e!==this.centerWidth&&(this.centerWidth=e,this.columnSizeService.refreshFlexedColumns({viewportWidth:this.centerWidth,updateBodyWidths:!0,fireResizedEvent:!0}))}else this.bodyHeight=0}keepPinnedColumnsNarrowerThanViewport(){const e=this.gridBodyCtrl.getBodyViewportElement(),t=Ns(e);if(t<=50)return;let s=this.getPinnedColumnsOverflowingViewport(t-50);const i=this.gos.getCallback("processUnpinnedColumns");s.length&&(i&&(s=i({columns:s,viewportWidth:t})),this.columnModel.setColsPinned(s,null,"viewportSizeFeature"))}getPinnedColumnsOverflowingViewport(e){const t=this.pinnedWidthService.getPinnedRightWidth(),s=this.pinnedWidthService.getPinnedLeftWidth(),i=t+s;if(i<e)return[];const o=[...this.visibleColsService.getLeftCols()],r=[...this.visibleColsService.getRightCols()];let n=0,l=0;const a=0,d=[];let c=i-a-e;for(;(l<o.length||n<r.length)&&c>0;){if(n<r.length){const u=r[n++];c-=u.getActualWidth(),d.push(u)}if(l<o.length&&c>0){const u=o[l++];c-=u.getActualWidth(),d.push(u)}}return d}checkViewportAndScrolls(){this.updateScrollVisibleService(),this.checkBodyHeight(),this.onHorizontalViewportChanged(),this.gridBodyCtrl.getScrollFeature
117().checkScrollLeft()}getBodyHeight(){return this.bodyHeight}checkBodyHeight(){const e=this.gridBodyCtrl.getBodyViewportElement(),t=mo(e);this.bodyHeight!==t&&(this.bodyHeight=t,this.eventService.dispatchEvent({type:"bodyHeightChanged"}))}updateScrollVisibleService(){this.updateScrollVisibleServiceImpl(),setTimeout(this.updateScrollVisibleServiceImpl.bind(this),500)}updateScrollVisibleServiceImpl(){const e={horizontalScrollShowing:this.isHorizontalScrollShowing(),verticalScrollShowing:this.gridBodyCtrl.isVerticalScrollShowing()};this.scrollVisibleService.setScrollsVisible(e)}isHorizontalScrollShowing(){return this.centerContainerCtrl.isHorizontalScrollShowing()}onHorizontalViewportChanged(){const e=this.centerContainerCtrl.getCenterWidth(),t=this.centerContainerCtrl.getViewportScrollLeft();this.columnViewportService.setScrollPosition(e,t)}},Vg=class extends b{wireBeans(e){this.dragService=e.dragService,this.rangeService=e.rangeService}constructor(e){super(),this.eContainer=e}postConstruct(){if(!this.rangeService)return;this.params={eElement:this.eContainer,onDragStart:this.rangeService.onDragStart.bind(this.rangeService),onDragStop:this.rangeService.onDragStop.bind(this.rangeService),onDragging:this.rangeService.onDragging.bind(this.rangeService)},this.addManagedPropertyListeners(["enableRangeSelection","cellSelection"],()=>{yt(this.gos)?this.enableFeature():this.disableFeature()}),this.addDestroyFunc(()=>this.disableFeature()),yt(this.gos)&&this.enableFeature()}enableFeature(){this.dragService.addDragSource(this.params)}disableFeature(){this.dragService.removeDragSource(this.params)}},Pd=class extends O{constructor(){super(` 118 <div class="ag-selection-checkbox" role="presentation"> 119 <ag-checkbox role="presentation" data-ref="eCheckbox"></ag-checkbox> 120 </div>`,[hs]),this.eCheckbox=P}postConstruct(){this.eCheckbox.setPassive(!0)}getCheckboxId(){return this.eCheckbox.getInputElement().id}onDataChanged(){this.onSelectionChanged()}onSelectableChanged(){this.showOrHideSelect()}onSelectionChanged(){const e=this.localeService.getLocaleTextFunc(),t=this.rowNode.isSelected(),s=Kr(e,t),[i,o]=this.rowNode.selectable?["ariaRowToggleSelection","Press Space to toggle row selection"]:["ariaRowSelectionDisabled","Row Selection is disabled for this row"],r=e(i,o);this.eCheckbox.setValue(t,!0),this.eCheckbox.setInputAriaLabel(`${r} (${s})`)}onClicked(e,t,s){return this.rowNode.setSelectedParams({newValue:e,rangeSelect:s.shiftKey,groupSelectsFiltered:t,event:s,source:"checkboxSelected"})}init(e){if(this.rowNode=e.rowNode,this.column=e.column,this.overrides=e.overrides,this.onSelectionChanged(),this.addManagedListeners(this.eCheckbox.getInputElement(),{dblclick:i=>Rt(i),click:i=>{Rt(i);const o=kr(this.gos)==="filteredDescendants",r=this.eCheckbox.getValue();this.shouldHandleIndeterminateState(r,o)?this.onClicked(!0,o,i||{})===0&&this.onClicked(!1,o,i):r?this.onClicked(!1,o,i):this.onClicked(!0,o,i||{})}}),this.addManagedListeners(this.rowNode,{rowSelected:this.onSelectionChanged.bind(this),dataChanged:this.onDataChanged.bind(this),selectableChanged:this.onSelectableChanged.bind(this)}),Gr(this.gos)||typeof this.getIsVisible()=="function"){const i=this.showOrHideSelect.bind(this);this.addManagedEventListeners({displayedColumnsChanged:i}),this.addManagedListeners(this.rowNode,{dataChanged:i,cellChanged:i}),this.showOrHideSelect()}this.eCheckbox.getInputElement().setAttribute("tabindex","-1")}shouldHandleIndeterminateState(e,t){return t&&(this.eCheckbox.getPreviousValue()===void 0||e===void 0)&&re(this.gos)}showOrHideSelect(){var o,r,n;let e=this.rowNode.selectable;const t=this.getIsVisible();if(e)if(typeof t=="function"){const l=(o=this.overrides)==null?void 0:o.callbackParams;if(!this.column)e=t({...l,node:this.rowNode,data:this.rowNode.data});else{const a=this.column.createColumnFunctionCallbackParams(this.rowNode);e=t({...l,...a})}}else e=t??!1;const s=this.gos.get("rowSelection");if(s&&typeof s!="string"?!ou(s):(r=this.column)==null?void 0:r.getColDef().showDisabledCheckboxes){this.eCheckbox.setDisabled(!e),this.setVisible(!0),this.setDisplayed(!0);return}if((n=this.overrides)!=null&&n.removeHidden){this.setDisplayed(e);return}this.setVisible(e)}getIsVisible(){var t,s;if(this.overrides)return this.overrides.isVisible;const e=this.gos.get("rowSelection");return e&&typeof e!="string"?Ts(e):(s=(t=this.column)==null?void 0:t.getColDef())==null?void 0:s.checkboxSelection}},Hg=class extends O{constructor(e,t,s){super('<div class="ag-drag-handle ag-row-drag" draggable="true"></div>'),this.rowNode=e,this.column=t,this.eCell=s}postConstruct(){this.getGui().appendChild(N("rowDrag",this.gos,null)),this.addGuiEventListener("mousedown",t=>{t.stopPropagation()}),this.addDragSource(),this.checkVisibility()}addDragSource(){this.addGuiEventListener("dragstart",this.onDragStart.bind(this))}onDragStart(e){const t=this.column.getColDef().dndSourceOnRowDrag;e.dataTransfer.setDragImage(this.eCell,0,0);const s=()=>{try{const i=JSON.stringify(this.rowNode.data);e.dataTransfer.setData("application/json",i),e.dataTransfer.setData("text/plain",i)}catch{}};if(t){const i=this.gos.addGridCommonParams({rowNode:this.rowNode,dragEvent:e});t(i)}else s()}checkVisibility(){const e=this.column.isDndSource(this.rowNode);this.setDisplayed(e)}}
120,Wg=class extends b{constructor(e,t){super(),this.staticClasses=[],this.cellCtrl=e,this.beans=t,this.column=e.getColumn(),this.rowNode=e.getRowNode()}setComp(e){this.cellComp=e,this.applyUserStyles(),this.applyCellClassRules(),this.applyClassesFromColDef()}applyCellClassRules(){const e=this.column.getColDef(),{cellClassRules:t}=e,s=this.beans.gos.addGridCommonParams({value:this.cellCtrl.getValue(),data:this.rowNode.data,node:this.rowNode,colDef:e,column:this.column,rowIndex:this.rowNode.rowIndex});this.beans.stylingService.processClassRules(t===this.cellClassRules?void 0:this.cellClassRules,t,s,i=>this.cellComp.addOrRemoveCssClass(i,!0),i=>this.cellComp.addOrRemoveCssClass(i,!1)),this.cellClassRules=t}applyUserStyles(){const e=this.column.getColDef();if(!e.cellStyle)return;let t;if(typeof e.cellStyle=="function"){const s=this.beans.gos.addGridCommonParams({column:this.column,value:this.cellCtrl.getValue(),colDef:e,data:this.rowNode.data,node:this.rowNode,rowIndex:this.rowNode.rowIndex}),i=e.cellStyle;t=i(s)}else t=e.cellStyle;t&&this.cellComp.setUserStyles(t)}applyClassesFromColDef(){const e=this.column.getColDef(),t=this.beans.gos.addGridCommonParams({value:this.cellCtrl.getValue(),data:this.rowNode.data,node:this.rowNode,column:this.column,colDef:e,rowIndex:this.rowNode.rowIndex});this.staticClasses.length&&this.staticClasses.forEach(s=>this.cellComp.addOrRemoveCssClass(s,!1)),this.staticClasses=this.beans.stylingService.getStaticCellClasses(e,t),this.staticClasses.length&&this.staticClasses.forEach(s=>this.cellComp.addOrRemoveCssClass(s,!0))}destroy(){super.destroy()}},zg=class extends b{constructor(e,t,s,i,o){super(),this.cellCtrl=e,this.beans=t,this.rowNode=i,this.rowCtrl=o}setComp(e){this.eGui=e}onKeyDown(e){const t=e.key;switch(t){case S.ENTER:this.onEnterKeyDown(e);break;case S.F2:this.onF2KeyDown(e);break;case S.ESCAPE:this.onEscapeKeyDown(e);break;case S.TAB:this.onTabKeyDown(e);break;case S.BACKSPACE:case S.DELETE:this.onBackspaceOrDeleteKeyDown(t,e);break;case S.DOWN:case S.UP:case S.RIGHT:case S.LEFT:this.onNavigationKeyDown(e,t);break}}onNavigationKeyDown(e,t){this.cellCtrl.isEditing()||(e.shiftKey&&this.cellCtrl.isRangeSelectionEnabled()?this.onShiftRangeSelect(e):this.beans.navigationService.navigateToNextCell(e,t,this.cellCtrl.getCellPosition(),!0),e.preventDefault())}onShiftRangeSelect(e){if(!this.beans.rangeService)return;const t=this.beans.rangeService.extendLatestRangeInDirection(e);t&&this.beans.navigationService.ensureCellVisible(t)}onTabKeyDown(e){this.beans.navigationService.onTabKeyDown(this.cellCtrl,e)}onBackspaceOrDeleteKeyDown(e,t){const{cellCtrl:s,beans:i,rowNode:o}=this,{gos:r,rangeService:n,eventService:l}=i;if(!s.isEditing()){if(l.dispatchEvent({type:"keyShortcutChangedCellStart"}),Sp(e,r.get("enableCellEditingOnBackspace"))){if(n&&yt(r))n.clearCellRangeCellValues({dispatchWrapperEvents:!0,wrapperEventSource:"deleteKey"});else if(s.isCellEditable()){const a=s.getColumn(),d=this.beans.valueService.getDeleteValue(a,o);o.setDataValue(a,d,"cellClear")}}else s.startRowOrCellEdit(e,t);l.dispatchEvent({type:"keyShortcutChangedCellEnd"})}}onEnterKeyDown(e){if(this.cellCtrl.isEditing()||this.rowCtrl.isEditing())this.cellCtrl.stopEditingAndFocus(!1,e.shiftKey);else if(this.beans.gos.get("enterNavigatesVertically")){const t=e.shiftKey?S.UP:S.DOWN;this.beans.navigationService.navigateToNextCell(null,t,this.cellCtrl.getCellPosition(),!1)}else this.cellCtrl.startRowOrCellEdit(S.ENTER,e),this.cellCtrl.isEditing()&&e.preventDefault()}onF2KeyDown(e){this.cellCtrl.isEditing()||this.cellCtrl.startRowOrCellEdit(S.F2,e)}onEscapeKeyDown(e){this.cellCtrl.isEditing()&&(this.cellCtrl.stopRowOrCellEdit(!0),this.cellCtrl.focusCell(!0))}processCharacter(e){if(e.target!==this.eGui||this.cellCtrl.isEditing())return;const i=e.key;i===" "?this.onSpaceKeyDown(e):this.cellCtrl.startRowOrCellEdit(i,e)&&e.preventDefault()}onSpaceKeyDown(e){const{gos:t}=this.beans;if(!this.cellCtrl.isEditing()&&ui(t)){const s=this.rowNode.isSelected(),i=!s,o=kr(t)==="filteredDescendants",r=this.rowNode.setSelectedParams({newValue:i,rangeSelect:e.shiftKey,groupSelectsFiltered:o,event:e,source:"spaceKey"});s===void 0&&r===0&&this.rowNode.setSelectedParams({newValue:!1,rangeSelect:e.shiftKey,groupSelectsFiltered:o,event:e,source:"spaceKey"})}e.preventDefault()}destroy(){super.destroy()}},Ug=class extends b{constructor(e,t,s){super(),this.cellCtrl=e,this.beans=t,this.column=s}onMouseEvent(e,t){if(!ht(t))switch(e){case"click":this.onCellClicked(t);break;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);break}}onCellClicked(e){if(this.isDoubleClickOnIPad()){this.onCellDoubleClicked(e),e.preventDefault();return}const{eventService:t,rangeService:s,gos:i}=this.beans,o=e.ctrlKey||e.metaKey;s&&o&&s.getCellRangeCount(this.cellCtrl.getCellPosition())>1&&s.intersectLastRange(!0);const r=this.cellCtrl.createEvent(e,"cellClicked");t.dispatchEvent(r);const n=this.column.getColDef();n.onCellClicked&&window.setTimeout(()=>{this.beans.frameworkOverrides.wrapOutgoing(()=>{n.onCellClicked(r)})},0),(i.get("singleClickEdit")||n.singleClickEdit)&&!i.get("suppressClickEdit")&&!(e.shiftKey&&(s==null?void 0:s.getCellRanges().length)!=0)&&this.cellCtrl.
120startRowOrCellEdit()}isDoubleClickOnIPad(){if(!Gt()||ta("dblclick"))return!1;const e=new Date().getTime(),t=e-this.lastIPadMouseClickEvent<200;return this.lastIPadMouseClickEvent=e,t}onCellDoubleClicked(e){const{column:t,beans:s,cellCtrl:i}=this,{eventService:o,frameworkOverrides:r,gos:n}=s,l=t.getColDef(),a=i.createEvent(e,"cellDoubleClicked");o.dispatchEvent(a),typeof l.onCellDoubleClicked=="function"&&window.setTimeout(()=>{r.wrapOutgoing(()=>{l.onCellDoubleClicked(a)})},0),!n.get("singleClickEdit")&&!n.get("suppressClickEdit")&&i.startRowOrCellEdit(null,e)}onMouseDown(e){const{ctrlKey:t,metaKey:s,shiftKey:i}=e,o=e.target,{cellCtrl:r,beans:n}=this,{eventService:l,rangeService:a,focusService:d,gos:c}=n;if(this.isRightClickInExistingRange(e))return;const u=a&&a.getCellRanges().length!=0;if(!i||!u){const p=c.get("enableCellTextSelection")&&e.defaultPrevented,g=(Pt()||p)&&!r.isEditing()&&!qr(o);r.focusCell(g)}if(i&&u&&!d.isCellFocused(r.getCellPosition())){e.preventDefault();const h=d.getFocusedCell();if(h){const{column:p,rowIndex:g,rowPinned:f}=h,m=n.rowRenderer.getRowByPosition({rowIndex:g,rowPinned:f}),v=m==null?void 0:m.getCellCtrl(p);v!=null&&v.isEditing()&&v.stopEditing(),d.setFocusedCell({column:p,rowIndex:g,rowPinned:f,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}}if(!this.containsWidget(o)){if(a){const h=this.cellCtrl.getCellPosition();if(i)a.extendLatestRangeToCell(h);else{const p=t||s;a.setRangeToCell(h,p)}}l.dispatchEvent(this.cellCtrl.createEvent(e,"cellMouseDown"))}}isRightClickInExistingRange(e){const{rangeService:t}=this.beans;if(t){const s=t.isCellInAnyRange(this.cellCtrl.getCellPosition()),i=e.button===2||e.ctrlKey&&this.beans.gos.get("allowContextMenuWithControlKey");if(s&&i)return!0}return!1}containsWidget(e){return Fs(e,"ag-selection-checkbox",3)}onMouseOut(e){this.mouseStayingInsideCell(e)||(this.beans.eventService.dispatchEvent(this.cellCtrl.createEvent(e,"cellMouseOut")),this.beans.columnHoverService.clearMouseOver())}onMouseOver(e){this.mouseStayingInsideCell(e)||(this.beans.eventService.dispatchEvent(this.cellCtrl.createEvent(e,"cellMouseOver")),this.beans.columnHoverService.setMouseOver([this.column]))}mouseStayingInsideCell(e){if(!e.target||!e.relatedTarget)return!1;const t=this.cellCtrl.getGui(),s=t.contains(e.target),i=t.contains(e.relatedTarget);return s&&i}destroy(){super.destroy()}},_g=class extends b{constructor(e,t){super(),this.cellCtrl=e,this.beans=t,this.column=e.getColumn(),this.rowNode=e.getRowNode()}setupRowSpan(){this.rowSpan=this.column.getRowSpan(this.rowNode),this.addManagedListeners(this.beans.eventService,{newColumnsLoaded:()=>this.onNewColumnsLoaded()})}setComp(e){this.eGui=e,this.setupColSpan(),this.setupRowSpan(),this.onLeftChanged(),this.onWidthChanged(),this.applyRowSpan()}onNewColumnsLoaded(){const e=this.column.getRowSpan(this.rowNode);this.rowSpan!==e&&(this.rowSpan=e,this.applyRowSpan(!0))}onDisplayColumnsChanged(){const e=this.getColSpanningList();Je(this.colsSpanning,e)||(this.colsSpanning=e,this.onWidthChanged(),this.onLeftChanged())}setupColSpan(){this.column.getColDef().colSpan!=null&&(this.colsSpanning=this.getColSpanningList(),this.addManagedListeners(this.beans.eventService,{displayedColumnsChanged:this.onDisplayColumnsChanged.bind(this),displayedColumnsWidthChanged:this.onWidthChanged.bind(this)}))}onWidthChanged(){if(!this.eGui)return;const e=this.getCellWidth();this.eGui.style.width=`${e}px`}getCellWidth(){return this.colsSpanning?this.colsSpanning.reduce((e,t)=>e+t.getActualWidth(),0):this.column.getActualWidth()}getColSpanningList(){const e=this.column.getColSpan(this.rowNode),t=[];if(e===1)t.push(this.column);else{let s=this.column;const i=this.column.getPinned();for(let o=0;s&&o<e&&(t.push(s),s=this.beans.visibleColsService.getColAfter(s),!(!s||z(s)||i!==s.getPinned()));o++);}return t}onLeftChanged(){if(!this.eGui)return;const e=this.modifyLeftForPrintLayout(this.getCellLeft());this.eGui.style.left=e+"px"}getCellLeft(){let e;return this.beans.gos.get("enableRtl")&&this.colsSpanning?e=W(this.colsSpanning):e=this.column,e.getLeft()}modifyLeftForPrintLayout(e){if(!this.cellCtrl.isPrintLayout()||this.column.getPinned()==="left")return e;const t=this.beans.visibleColsService.getColsLeftWidth();if(this.column.getPinned()==="right"){const s=this.beans.visibleColsService.getBodyContainerWidth();return t+s+(e||0)}return t+(e||0)}applyRowSpan(e){if(this.rowSpan===1&&!e)return;const s=At(this.beans.gos)*this.rowSpan;this.eGui.style.height=`${s}px`,this.eGui.style.zIndex="1"}destroy(){super.destroy()}},Ks="ag-cell-range-selected",Kg="ag-cell-range-chart",$g="ag-cell-range-single-cell",jg="ag-cell-range-chart-category",qg="ag-cell-range-handle",Yg="ag-cell-range-top",Qg="ag-cell-range-right",Xg="ag-cell-range-bottom",Zg="ag-cell-range-left",Jg=class{constructor(e,t){this.beans=e,this.rangeService=e.rangeService,this.selectionHandleFactory=e.selectionHandleFactory,this.cellCtrl=t}setComp(e,t){this.cellComp=e,this.eGui=t,this.onCellSelectionChanged()}onCellSelectionChanged(){this.cellComp&&(this.rangeCount=this.rangeService.getCellRangeCount(this.cellCtrl.getCellPosition()),this.hasChartRange=this.getHasChartRange(),this.cellComp.addOrRemoveCssClass(Ks,this.rangeCount!==0),this.cellComp.addOrRemoveCssClass(`${Ks}-1`,this.rangeCount===1),this.cellComp.addOrRemoveCssClass(`${Ks}-2`,this.rangeCount===2),this.cellComp.addOrRemoveCssClass(`${Ks}-3`,this.rangeCount===3),this.cellComp.addOrRemoveCssClass(`${Ks}-4`,this.rangeCount>=4),this.cellComp.addOrRemoveCssClass(Kg,this.hasChartRange),Qi(this.eGui,this.rangeCount>0?!0:void 0),this.cellComp.addOrRemoveCssClass($g,this.isSingleCell()),this.updateRangeBorders(),this.refreshHandle())}updateRangeBorders(){const e=this.getRangeBorders(),t=this.isSingleCell(),s=!t&&e.top,i=!t&&e.right,o=!t&&e.bottom,r=!t&&e.left;this.cellComp.addOrRemoveCssClass(Yg,s),this.cellComp.addOrRemoveCssClass(Qg,i),this.cellComp.addOrRemoveCssClass(Xg,o),this.cellComp.addOrRemoveCssClass(Zg,r)}isSingleCell(){const{rangeService:e}=this.beans;return this.rangeCount===1&&!!e&&!e.isMoreThanOneCell()}getHasChartRange(){const{rangeService:e}=this.beans;if(!this.rangeCount||!e)return!1;const t=e.getCellRanges();return t.length>0&&t.every(s=>et([1,0],s.type))}updateRangeBordersIfRangeCount(){this.rangeCount>0&&(this.updateRangeBorders(),this.refreshHandle())}getRangeBorders(){const e=this.beans.gos.get("enableRtl");let t=!1,s=!1,i=!1,o=!1;const r=this.cellCtrl.getCellPosition().column,n=this.beans.visibleColsService;let l,a;e?(l=n.getColAfter(r),a=n.getColBefore(r)):(l=n.getColBefore(r),a=n.getColAfter(r));const d=this.rangeService.getCellRanges().filter(c=>this.rangeService.isCellInSpecificRange(this.cellCtrl.getCellPosition(),c));l||(o=!0),a||(s=!0);for(let c=0;c<d.length&&!(t&&s&&i&&o);
120c++){const u=d[c],h=this.rangeService.getRangeStartRow(u),p=this.rangeService.getRangeEndRow(u);!t&&this.beans.rowPositionUtils.sameRow(h,this.cellCtrl.getCellPosition())&&(t=!0),!i&&this.beans.rowPositionUtils.sameRow(p,this.cellCtrl.getCellPosition())&&(i=!0),!o&&l&&u.columns.indexOf(l)<0&&(o=!0),!s&&a&&u.columns.indexOf(a)<0&&(s=!0)}return{top:t,right:s,bottom:i,left:o}}refreshHandle(){if(this.beans.context.isDestroyed())return;const e=this.shouldHaveSelectionHandle();this.selectionHandle&&!e&&(this.selectionHandle=this.beans.context.destroyBean(this.selectionHandle)),e&&this.addSelectionHandle(),this.cellComp.addOrRemoveCssClass(qg,!!this.selectionHandle)}shouldHaveSelectionHandle(){const e=this.beans.gos,t=this.rangeService.getCellRanges(),s=t.length;if(this.rangeCount<1||s<1)return!1;const i=W(t),o=this.cellCtrl.getCellPosition(),r=Bn(e)&&!this.cellCtrl.isSuppressFillHandle(),n=lu(e);let l=s===1&&!this.cellCtrl.isEditing()&&(r||n);if(this.hasChartRange){const d=t[0].type===1&&this.rangeService.isCellInSpecificRange(o,t[0]);this.cellComp.addOrRemoveCssClass(jg,d),l=i.type===0}return l&&i.endRow!=null&&this.rangeService.isContiguousRange(i)&&this.rangeService.isBottomRightCell(i,o)}addSelectionHandle(){const e=W(this.rangeService.getCellRanges()).type,s=Bn(this.beans.gos)&&z(e)?0:1;this.selectionHandle&&this.selectionHandle.getType()!==s&&(this.selectionHandle=this.beans.context.destroyBean(this.selectionHandle)),this.selectionHandle||(this.selectionHandle=this.selectionHandleFactory.createSelectionHandle(s)),this.selectionHandle.refresh(this.cellCtrl)}destroy(){this.beans.context.destroyBean(this.selectionHandle)}},ef="ag-cell",tf="ag-cell-auto-height",sf="ag-cell-normal-height",of="ag-cell-focus",rf="ag-cell-first-right-pinned",nf="ag-cell-last-left-pinned",lf="ag-cell-not-inline-editing",af="ag-column-hover",df="ag-cell-wrap-text",cf=0,Ed=class Sr extends b{constructor(t,s,i,o){super(),this.column=t,this.rowNode=s,this.beans=i,this.rowCtrl=o,this.cellRangeFeature=void 0,this.cellPositionFeature=void 0,this.cellCustomStyleFeature=void 0,this.tooltipFeature=void 0,this.cellMouseListenerFeature=void 0,this.cellKeyboardListenerFeature=void 0,this.suppressRefreshCell=!1,this.onCellCompAttachedFuncs=[],this.onCellEditorAttachedFuncs=[],this.instanceId=t.getId()+"-"+cf++,this.colIdSanitised=Ce(this.column.getId()),this.createCellPosition(),this.updateAndFormatValue(!1)}shouldRestoreFocus(){return this.beans.focusService.shouldRestoreFocus(this.cellPosition)}onFocusOut(){this.beans.focusService.clearRestoreFocus()}addFeatures(){this.cellPositionFeature=new _g(this,this.beans),this.cellCustomStyleFeature=new Wg(this,this.beans),this.cellMouseListenerFeature=new Ug(this,this.beans,this.column),this.cellKeyboardListenerFeature=new zg(this,this.beans,this.column,this.rowNode,this.rowCtrl),this.column.isTooltipEnabled()&&this.enableTooltipFeature(),this.beans.rangeService&&yt(this.beans.gos)&&(this.cellRangeFeature=new Jg(this.beans,this))}removeFeatures(){const t=this.beans.context;this.cellPositionFeature=t.destroyBean(this.cellPositionFeature),this.cellCustomStyleFeature=t.destroyBean(this.cellCustomStyleFeature),this.cellMouseListenerFeature=t.destroyBean(this.cellMouseListenerFeature),this.cellKeyboardListenerFeature=t.destroyBean(this.cellKeyboardListenerFeature),this.cellRangeFeature=t.destroyBean(this.cellRangeFeature),this.disableTooltipFeature()}enableTooltipFeature(t,s){const i=()=>{const n=this.column.getColDef(),l=this.rowNode.data;if(n.tooltipField&&E(l))return si(l,n.tooltipField,this.column.isTooltipFieldContainsDots());const a=n.tooltipValueGetter;return a?a(this.beans.gos.addGridCommonParams({location:"cell",colDef:this.column.getColDef(),column:this.column,rowIndex:this.cellPosition.rowIndex,node:this.rowNode,data:this.rowNode.data,value:this.value,valueFormatted:this.valueFormatted})):null},o=this.beans.gos.get("tooltipShowMode")==="whenTruncated";!s&&o&&!this.isCellRenderer()&&(s=()=>{const n=this.getGui(),l=n.children.length===0?n:n.querySelector(".ag-cell-value");return l?l.scrollWidth>l.clientWidth:!0});const r={getColumn:()=>this.column,getColDef:()=>this.column.getColDef(),getRowIndex:()=>this.cellPosition.rowIndex,getRowNode:()=>this.rowNode,getGui:()=>this.getGui(),getLocation:()=>"cell",getTooltipValue:t!=null?()=>t:i,getValueFormatted:()=>this.valueFormatted,shouldDisplayTooltip:s};this.tooltipFeature=new us(r,this.beans)}disableTooltipFeature(){this.tooltipFeature=this.beans.context.destroyBean(this.tooltipFeature)}setComp(t,s,i,o,r,n){var l,a,d,c;this.cellComp=t,this.eGui=s,this.printLayout=o,n??(n=this),this.addDomData(n),this.addFeatures(),n.addDestroyFunc(()=>this.removeFeatures()),this.onSuppressCellFocusChanged(this.beans.gos.get("suppressCellFocus")),this.onCellFocused(this.focusEventToRestore),this.applyStaticCssClasse
120s(),this.setWrapText(),this.onFirstRightPinnedChanged(),this.onLastLeftPinnedChanged(),this.onColumnHover(),this.setupControlComps(),this.setupAutoHeight(i,n),this.refreshFirstAndLastStyles(),this.refreshAriaColIndex(),(l=this.cellPositionFeature)==null||l.setComp(s),(a=this.cellCustomStyleFeature)==null||a.setComp(t),(d=this.tooltipFeature)==null||d.refreshToolTip(),(c=this.cellKeyboardListenerFeature)==null||c.setComp(this.eGui),this.cellRangeFeature&&this.cellRangeFeature.setComp(t,s),r&&this.isCellEditable()?this.startEditing():this.showValue(),this.onCellCompAttachedFuncs.length&&(this.onCellCompAttachedFuncs.forEach(u=>u()),this.onCellCompAttachedFuncs=[])}setupAutoHeight(t,s){if(this.isAutoHeight=this.column.isAutoHeight(),!this.isAutoHeight||!t)return;const i=t.parentElement,o=Ge(this.beans.gos,this.rowNode).height,r=a=>{if(this.editing||!this.isAlive()||!s.isAlive())return;const{paddingTop:d,paddingBottom:c,borderBottomWidth:u,borderTopWidth:h}=cs(i),p=d+c+u+h,f=t.offsetHeight+p;if(a<5){const v=le(this.beans.gos),y=!v||!v.contains(t),w=f==0;if(y||w){window.setTimeout(()=>r(a+1),0);return}}const m=Math.max(f,o);this.rowNode.setRowAutoHeight(m,this.column)},n=()=>r(0);n();const l=this.beans.resizeObserverService.observeResize(t,n);s.addDestroyFunc(()=>{l(),this.rowNode.setRowAutoHeight(void 0,this.column)})}getCellAriaRole(){return this.column.getColDef().cellAriaRole??"gridcell"}isCellRenderer(){const t=this.column.getColDef();return t.cellRenderer!=null||t.cellRendererSelector!=null}getValueToDisplay(){return this.valueFormatted??this.value}showValue(t=!1){var h;const{beans:s,column:i,rowNode:o,cellRangeFeature:r,cellComp:n}=this,{userComponentFactory:l,animationFrameService:a}=s,d=this.getValueToDisplay();let c;if(o.stub&&((h=o.groupData)==null?void 0:h[this.column.getId()])==null){const p=this.createCellRendererParams();c=l.getLoadingCellRendererDetails(i.getColDef(),p)}else if(this.isCellRenderer()){const p=this.createCellRendererParams();c=l.getCellRendererDetails(i.getColDef(),p)}n.setRenderDetails(c,d,t),a.requestAnimationFrame(()=>r==null?void 0:r.refreshHandle())}setupControlComps(){const t=this.column.getColDef();this.includeSelection=this.isIncludeControl(this.isCheckboxSelection(t)),this.includeRowDrag=this.isIncludeControl(t.rowDrag),this.includeDndSource=this.isIncludeControl(t.dndSource),this.cellComp.setIncludeSelection(this.includeSelection),this.cellComp.setIncludeDndSource(this.includeDndSource),this.cellComp.setIncludeRowDrag(this.includeRowDrag)}isForceWrapper(){return this.beans.gos.get("enableCellTextSelection")||this.column.isAutoHeight()}isIncludeControl(t){return this.rowNode.rowPinned!=null?!1:typeof t=="function"||t===!0}isCheckboxSelection(t){const{rowSelection:s}=this.beans.gridOptions;return t.checkboxSelection||Si(this.column)&&s&&typeof s!="string"&&Ts(s)}refreshShouldDestroy(){const t=this.column.getColDef(),s=this.includeSelection!=this.isIncludeControl(this.isCheckboxSelection(t)),i=this.includeRowDrag!=this.isIncludeControl(t.rowDrag),o=this.includeDndSource!=this.isIncludeControl(t.dndSource),r=this.isAutoHeight!=this.column.isAutoHeight();return s||i||o||r}startEditing(t=null,s=!1,i=null){const{editService:o}=this.beans;return!this.isCellEditable()||this.editing||!o?!0:this.cellComp?o.startEditing(this,t,s,i):(this.onCellCompAttachedFuncs.push(()=>{this.startEditing(t,s,i)}),!0)}setEditing(t,s){this.editCompDetails=s,this.editing!==t&&(this.editing=t)}stopRowOrCellEdit(t=!1){this.beans.gos.get("editType")==="fullRow"?this.rowCtrl.stopEditing(t):this.stopEditing(t)}onPopupEditorClosed(){this.editing&&this.stopEditingAndFocus()}stopEditing(t=!1){this.onCellEditorAttachedFuncs=[];const{editService:s}=this.beans;return!this.editing||!s?!1:s.stopEditing(this,t)}createCellRendererParams(){return this.beans.gos.addGridCommonParams({value:this.value,valueFormatted:this.valueFormatted,getValue:()=>this.beans.valueService.getValueForDisplay(this.column,this.rowNode),setValue:s=>this.beans.valueService.setValue(this.rowNode,this.column,s),formatValue:this.formatValue.bind(this),data:this.rowNode.data,node:this.rowNode,pinned:this.column.getPinned(),colDef:this.column.getColDef(),column:this.column,refreshCell:this.refreshCell.bind(this),eGridCell:this.getGui(),eParentOfValue:this.cellComp.getParentOfValue(),registerRowDragger:(s,i,o,r)=>this.registerRowDragger(s,i,r),setTooltip:(s,i)=>{var o;this.tooltipFeature&&this.disableTooltipFeature(),this.enableTooltipFeature(s,i),(o=this.tooltipFeature)==null||o.refreshToolTip()}})}setFocusOutOnEditor(){var t;this.editing&&((t=this.beans.editService)==null||t.setFocusOutOnEditor(this))}setFocusInOnEditor(){var t;this.editing&&((t=this.beans.editService)==null||t.setFocusInOnEditor(this))}onCellChanged(t){t.column===this.column&&this.refreshCell({})}refreshOrDestroyCell(t){var s;this.refreshShouldDestroy()?(s=this.rowCtrl)==null||s.recreateCell(this):this.refreshCell(t)}refreshCell(t){var c,u,h,p,g;if(this.suppressRefreshCell||this.editing)return;const s=this.column.getColDef(),i=t!=null&&!!t.newData,o=t!=null&&!!t.suppressFlash||!!s.suppressCellFlash,r=s.field==null&&s.valueGetter==null&&s.showRowGroup==null,n=t&&t.forceRefresh||r||i,l=!!this.cellComp,a=this.updateAndFormatValue(l),d=n||a;if(l){if(d){this.showValue(i);const f=(c=this.beans.filterManager)==null?void 0:c.isSuppressFlashingCellsBecauseFiltering();!o&&!f&&(this.beans.gos.get("enableCellChangeFlash")||s.enableCellChangeFlash)&&this.flashCell(),(u=this.cellCustomStyleFeature)==null||u.applyUserStyles(),(h=this.cellCustomStyleFeature)==null||h.applyClassesFromColDef()}(p=this.tooltipFeature)==null||p.refreshToolTip(),(g=this.cellCustomStyleFeature)==null||g.applyCellClassRules()}}stopEditingAndFocus(t=!1,s=!1){var i;(i=this.beans.editService)==null||i.stopEditingAndFocus(this,t,s)}flashCell(t){const s=(t==null?void 0:t.flashDuration)??(t==null?void 0:t.flashDelay),i=(t==null?void 0:t.fadeDuration)??(t==null?void 0:t.fadeDelay);this.animateCell("data-changed",s,i)}animateCell(t,s,i){if(!this.cellComp)return;const{gos:o}=this.beans;if(s||(s=o.get("cellFlashDuration")),s===0)return;E(i)||(i=o.get("cellFadeDuration"));const r=`ag-cell-${t}`,n=`ag-cell-${t}-animation`;this.cellComp.addOrRemoveCssClass(r,!0),this.cellComp.addOrRemoveCssClass(n,!1),this.beans.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{this.isAlive()&&(this.cellComp.addOrRemoveCssClass(r,!1),this.cellComp.addOrRemoveCssClass(n,!0),this.eGui.style.transition=`background-color ${i}ms`,window.setTimeout(()=>{this.isAlive()&&(this.cellComp.addOrRemoveCssClass(n,!1),this.eGui.style.transition="")},i))},s)})}onFlashCells(t){if(!this.cellComp)return;const s=this.beans.cellPositionUtils.createId(this.getCellPosition());t.cells[s]&&this.animateCell("highlight")}isCellEditable(){return this.column.isCellEditable(this.rowNode)}isSuppressFillHandle(){return this.column.isSuppressFillHandle()}formatValue(t){return this.callValueFormatter(t)??t}callValueFormatter(t){return this.beans.valueService.formatValue(this.column,this.rowNode,t)}updateAndFormatValue(t){const s=this.value,i=this.valueFormatted;return this.value=this.beans.valueService.getValueForDisplay(this.column,this.rowNode),this.valueFormatted=this.callValueFormatter(this.value),t?!this.valuesAreEqual(s,this.value)||this.valueFormatted!=i:!0}valuesAreEqual(t,s){const i=this.column.getColDef();return i.equals?i.equals(t,s):t===s}getComp(){return this.cellComp}getValue(){return this.value}addDomData(t){const s=this.getGui();ls(this.beans.gos,s,Sr.DOM_DATA_KEY_CELL_CTRL,this),t.addDestroyFunc(()=>ls(this.beans.gos,s,Sr.DOM_DATA_KEY_CELL_CTRL,null))}createEvent(t,s){return this.beans.gos.addGridCommonParams({type:s,node:this.rowNode,data:this.rowNode.data,value:this.value,column:this.column,colDef:this.column.getColDef(),rowPinned:this.rowNode.rowPinned,event:t,rowIndex:this.rowNode.rowIndex})}processCharacter(t){var s;(s=this.cellKeyboardListenerFeature)==null||s.processCharacter(t)}onKeyDown(t){var s;(s=this.cellKeyboardListenerFeature)==null||s.onKeyDown(t)}onMouseEvent(t,s){var i;(i=this.cellMouseListenerFeature)==null||i.onMouseEvent(t,s)}getGui(){return this.eGui}
120getColSpanningList(){return this.cellPositionFeature.getColSpanningList()}onLeftChanged(){var t;this.cellComp&&((t=this.cellPositionFeature)==null||t.onLeftChanged())}onDisplayedColumnsChanged(){this.eGui&&(this.refreshAriaColIndex(),this.refreshFirstAndLastStyles())}refreshFirstAndLastStyles(){const{cellComp:t,column:s,beans:i}=this;ad(t,s,i.visibleColsService)}refreshAriaColIndex(){const t=this.beans.visibleColsService.getAriaColIndex(this.column);ga(this.getGui(),t)}isSuppressNavigable(){return this.column.isSuppressNavigable(this.rowNode)}onWidthChanged(){var t;return(t=this.cellPositionFeature)==null?void 0:t.onWidthChanged()}getColumn(){return this.column}getRowNode(){return this.rowNode}isPrintLayout(){return this.printLayout}getCellPosition(){return this.cellPosition}isEditing(){return this.editing}startRowOrCellEdit(t,s=null){return this.cellComp?this.beans.gos.get("editType")==="fullRow"?this.rowCtrl.startRowEditing(t,this):this.startEditing(t,!0,s):(this.onCellCompAttachedFuncs.push(()=>{this.startRowOrCellEdit(t,s)}),!0)}getRowCtrl(){return this.rowCtrl}getRowPosition(){return{rowIndex:this.cellPosition.rowIndex,rowPinned:this.cellPosition.rowPinned}}updateRangeBordersIfRangeCount(){this.cellComp&&this.cellRangeFeature&&this.cellRangeFeature.updateRangeBordersIfRangeCount()}onCellSelectionChanged(){this.cellComp&&this.cellRangeFeature&&this.cellRangeFeature.onCellSelectionChanged()}isRangeSelectionEnabled(){return this.cellRangeFeature!=null}focusCell(t=!1){this.beans.focusService.setFocusedCell({rowIndex:this.getCellPosition().rowIndex,column:this.column,rowPinned:this.rowNode.rowPinned,forceBrowserFocus:t})}onRowIndexChanged(){this.createCellPosition(),this.onCellFocused(),this.cellRangeFeature&&this.cellRangeFeature.onCellSelectionChanged()}onSuppressCellFocusChanged(t){this.eGui&&nt(this.eGui,"tabindex",t?void 0:-1)}onFirstRightPinnedChanged(){if(!this.cellComp)return;const t=this.column.isFirstRightPinned();this.cellComp.addOrRemoveCssClass(rf,t)}onLastLeftPinnedChanged(){if(!this.cellComp)return;const t=this.column.isLastLeftPinned();this.cellComp.addOrRemoveCssClass(nf,t)}onCellFocused(t){if(this.beans.focusService.isCellFocusSuppressed())return;const s=this.beans.focusService.isCellFocused(this.cellPosition);if(!this.cellComp){s&&(t!=null&&t.forceBrowserFocus)&&(this.focusEventToRestore=t);return}if(this.focusEventToRestore=void 0,this.cellComp.addOrRemoveCssClass(of,s),s&&t&&t.forceBrowserFocus){let o=this.cellComp.getFocusableElement();if(this.editing){const r=this.beans.focusService.findFocusableElements(o,null,!0);r.length&&(o=r[0])}o.focus({preventScroll:!!t.preventScrollOnBrowserFocus})}const i=this.beans.gos.get("editType")==="fullRow";!s&&!i&&this.editing&&this.stopRowOrCellEdit(),s&&this.rowCtrl.announceDescription()}createCellPosition(){this.cellPosition={rowIndex:this.rowNode.rowIndex,rowPinned:Oe(this.rowNode.rowPinned),column:this.column}}applyStaticCssClasses(){this.cellComp.addOrRemoveCssClass(ef,!0),this.cellComp.addOrRemoveCssClass(lf,!0);const t=this.column.isAutoHeight()==!0;this.cellComp.addOrRemoveCssClass(tf,t),this.cellComp.addOrRemoveCssClass(sf,!t)}onColumnHover(){if(!this.cellComp||!this.beans.gos.get("columnHoverHighlight"))return;const t=this.beans.columnHoverService.isHovered(this.column);this.cellComp.addOrRemoveCssClass(af,t)}onColDefChanged(){var s;if(!this.cellComp)return;this.column.isTooltipEnabled()?(this.disableTooltipFeature(),this.enableTooltipFeature()):this.disableTooltipFeature(),this.setWrapText(),this.editing?(s=this.beans.editService)==null||s.handleColDefChanged(this):this.refreshOrDestroyCell({forceRefresh:!0,suppressFlash:!0})}setWrapText(){const t=this.column.getColDef().wrapText==!0;this.cellComp.addOrRemoveCssClass(df,t)}
120dispatchCellContextMenuEvent(t){const s=this.column.getColDef(),i=this.createEvent(t,"cellContextMenu");this.beans.eventService.dispatchEvent(i),s.onCellContextMenu&&window.setTimeout(()=>{this.beans.frameworkOverrides.wrapOutgoing(()=>{s.onCellContextMenu(i)})},0)}getCellRenderer(){return this.cellComp?this.cellComp.getCellRenderer():null}getCellEditor(){return this.cellComp?this.cellComp.getCellEditor():null}destroy(){this.onCellCompAttachedFuncs=[],this.onCellEditorAttachedFuncs=[],super.destroy()}createSelectionCheckbox(){const t=new Pd;return this.beans.context.createBean(t),t.init({rowNode:this.rowNode,column:this.column}),t}createDndSource(){const t=new Hg(this.rowNode,this.column,this.eGui);return this.beans.context.createBean(t),t}registerRowDragger(t,s,i){if(this.customRowDragComp){this.customRowDragComp.setDragElement(t,s);return}const o=this.createRowDragComp(t,s,i);o&&(this.customRowDragComp=o,this.addDestroyFunc(()=>{this.beans.context.destroyBean(o),this.customRowDragComp=null}))}createRowDragComp(t,s,i){const o=this.beans.gos.get("pagination"),r=this.beans.gos.get("rowDragManaged"),n=re(this.beans.gos);if(r){if(!n){R("managed row dragging is only allowed in the Client Side Row Model");return}if(o){R("managed row dragging is not possible when doing pagination");return}}const l=new so(()=>this.value,this.rowNode,this.column,t,s,i);return this.beans.context.createBean(l),l}setSuppressRefreshCell(t){this.suppressRefreshCell=t}getEditCompDetails(){return this.editCompDetails}onCellEditorAttached(t){this.onCellEditorAttachedFuncs.push(t)}cellEditorAttached(){this.onCellEditorAttachedFuncs.forEach(t=>t()),this.onCellEditorAttachedFuncs=[]}};Ed.DOM_DATA_KEY_CELL_CTRL="cellCtrl";var rs=Ed,uf=0,Md=class wr extends b{constructor(t,s,i,o,r){var n;super(),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.businessKeySanitised=null,this.beans=s,this.gos=s.gos,this.rowNode=t,this.paginationPage=((n=s.paginationService)==null?void 0:n.getCurrentPage())??0,this.useAnimationFrameForCreate=o,this.printLayout=r,this.suppressRowTransform=this.gos.get("suppressRowTransform"),this.instanceId=t.id+"-"+uf++,this.rowId=Ce(t.id),this.initRowBusinessKey(),this.rowFocused=s.focusService.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned),this.rowLevel=s.rowCssClassCalculator.calculateRowLevel(this.rowNode),this.setRowType(),this.setAnimateFlags(i),this.rowStyles=this.processStylesFromGridOptions(),this.addListeners()}initRowBusinessKey(){this.businessKeyForNodeFunc=this.gos.get("getBusinessKeyForNode"),this.updateRowBusinessKey()}updateRowBusinessKey(){if(typeof this.businessKeyForNodeFunc!="function")return;const t=this.businessKeyForNodeFunc(this.rowNode);this.businessKeySanitised=Ce(t)}getRowId(){return this.rowId}getRowStyles(){return this.rowStyles}isSticky(){return this.rowNode.sticky}updateGui(t,s){t==="left"?this.leftGui=s:t==="right"?this.rightGui=s:t==="fullWidth"?this.fullWidthGui=s:this.centerGui=s}setComp(t,s,i,o){o=wi(this,this.beans.context,o);const r={rowComp:t,element:s,containerType:i,compBean:o};this.allRowGuis.push(r),this.updateGui(i,r),this.initialiseRowComp(r),this.rowType!=="FullWidthLoading"&&!this.rowNode.rowPinned&&this.beans.rowRenderer.dispatchFirstDataRenderedEvent()}unsetComp(t){this.allRowGuis=this.allRowGuis.filter(s=>s.containerType!==t),this.updateGui(t,void 0)}isCacheable(){return this.rowType==="FullWidthDetail"&&this.gos.get("keepDetailRows")}setCached(t){const s=t?"none":"";this.allRowGuis.forEach(i=>i.element.style.display=s)}initialiseRowComp(t){const s=this.gos;this.onSuppressCellFocusChanged(this.beans.gos.get("suppressCellFocus")),this.listenOnDomOrder(t),this.beans.columnModel.wasAutoRowHeightEverActive()&&this.rowNode.checkAutoHeights(),this.onRowHeightChanged(t),this.updateRowIndexes(t),this.setFocusedClasse
120s(t),this.setStylesFromGridOptions(!1,t),ui(s)&&this.rowNode.selectable&&this.onRowSelected(t),this.updateColumnLists(!this.useAnimationFrameForCreate);const i=t.rowComp;this.getInitialRowClasses(t.containerType).forEach(r=>i.addOrRemoveCssClass(r,!0)),this.executeSlideAndFadeAnimations(t),this.rowNode.group&&Ft(t.element,this.rowNode.expanded==!0),this.setRowCompRowId(i),this.setRowCompRowBusinessKey(i),ls(s,t.element,wr.DOM_DATA_KEY_ROW_CTRL,this),t.compBean.addDestroyFunc(()=>ls(s,t.element,wr.DOM_DATA_KEY_ROW_CTRL,null)),this.useAnimationFrameForCreate?this.beans.animationFrameService.createTask(this.addHoverFunctionality.bind(this,t),this.rowNode.rowIndex,"createTasksP2"):this.addHoverFunctionality(t),this.isFullWidth()&&this.setupFullWidth(t),s.get("rowDragEntireRow")&&this.addRowDraggerToRow(t),this.useAnimationFrameForCreate&&this.beans.animationFrameService.addDestroyTask(()=>{this.isAlive()&&t.rowComp.addOrRemoveCssClass("ag-after-created",!0)}),this.executeProcessRowPostCreateFunc()}setRowCompRowBusinessKey(t){this.businessKeySanitised!=null&&t.setRowBusinessKey(this.businessKeySanitised)}getBusinessKey(){return this.businessKeySanitised}setRowCompRowId(t){this.rowId=Ce(this.rowNode.id),this.rowId!=null&&t.setRowId(this.rowId)}executeSlideAndFadeAnimations(t){const{containerType:s}=t;this.slideInAnimation[s]&&(On(()=>{this.onTopChanged()}),this.slideInAnimation[s]=!1),this.fadeInAnimation[s]&&(On(()=>{t.rowComp.addOrRemoveCssClass("ag-opacity-zero",!1)}),this.fadeInAnimation[s]=!1)}addRowDraggerToRow(t){if(yt(this.gos)){R("Setting `rowDragEntireRow: true` in the gridOptions doesn't work with `cellSelection: true`");return}const s=this.beans.localeService.getLocaleTextFunc(),i=new so(()=>`1 ${s("rowDragRow","row")}`,this.rowNode,void 0,t.element,void 0,!0),o=this.createBean(i,this.beans.context);this.rowDragComps.push(o),t.compBean.addDestroyFunc(()=>{this.rowDragComps=this.rowDragComps.filter(r=>r!==o),this.destroyBean(o,this.beans.context)})}setupFullWidth(t){const s=this.getPinnedForContainer(t.containerType);if(this.rowType=="FullWidthDetail"&&!this.gos.assertModuleRegistered("@ag-grid-enterprise/master-detail","cell renderer 'agDetailCellRenderer' (for master detail)"))return;const i=this.createFullWidthCompDetails(t.element,s);t.rowComp.showFullWidth(i)}isPrintLayout(){return this.printLayout}getFullWidthCellRenderers(){var t,s;return this.gos.get("embedFullWidthRows")?this.allRowGuis.map(i=>{var o;return(o=i==null?void 0:i.rowComp)==null?void 0:o.getFullWidthCellRenderer()}):[(s=(t=this.fullWidthGui)==null?void 0:t.rowComp)==null?void 0:s.getFullWidthCellRenderer()]}getCellElement(t){const s=this.getCellCtrl(t);return s?s.getGui():null}executeProcessRowPostCreateFunc(){const t=this.gos.getCallback("processRowPostCreate");if(!t||!this.areAllContainersReady())return;const s={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)};t(s)}areAllContainersReady(){const t=!!this.leftGui||!this.beans.visibleColsService.isPinningLeft(),s=!!this.centerGui,i=!!this.rightGui||!this.beans.visibleColsService.isPinningRight();return t&&s&&i}isNodeFullWidthCell(){if(this.rowNode.detail)return!0;const t=this.beans.gos.getCallback("isFullWidthRow");return t?t({rowNode:this.rowNode}):!1}setRowType(){const t=this.rowNode.stub&&!this.gos.get("suppressServerSideFullWidthLoadingRow")&&!this.gos.get("groupHideOpenParents"),s=this.isNodeFullWidthCell(),i=this.gos.get("masterDetail")&&this.rowNode.detail,o=this.beans.columnModel.isPivotMode(),n=!!this.rowNode.group&&!this.rowNode.footer&&po(this.gos,o);t?this.rowType="FullWidthLoading":i?this.rowType="FullWidthDetail":s?this.rowType="FullWidth":n?this.rowType="FullWidthGroup":this.rowType="Normal"}updateColumnLists(t=!1,s=!1){if(this.isFullWidth())return;if(t||this.gos.get("suppressAnimationFrame")||this.printLayout){this.updateColumnListsImpl(s);return}this.updateColumnListsPending||(this.beans.animationFrameService.createTask(()=>{this.active&&this.updateColumnListsImpl(!0)},this.rowNode.rowIndex,"createTasksP1"),this.updateColumnListsPending=!0)}createCellCtrls(t,s,i=null){const o={list:[],map:{}},r=(n,l)=>{o.list.push(l),o.map[n]=l};
120return s.forEach(n=>{const l=n.getInstanceId();let a=t.map[l];a||(a=new rs(n,this.rowNode,this.beans,this)),r(l,a)}),t.list.forEach(n=>{const l=n.getColumn().getInstanceId();if(o.map[l]!=null)return;if(!this.isCellEligibleToBeRemoved(n,i)){r(l,n);return}n.destroy()}),o}updateColumnListsImpl(t){this.updateColumnListsPending=!1,this.createAllCellCtrls(),this.setCellCtrls(t)}setCellCtrls(t){this.allRowGuis.forEach(s=>{const i=this.getCellCtrlsForContainer(s.containerType);s.rowComp.setCellCtrls(i,t)})}getCellCtrlsForContainer(t){switch(t){case"left":return this.leftCellCtrls.list;case"right":return this.rightCellCtrls.list;case"fullWidth":return[];case"center":return this.centerCellCtrls.list}}createAllCellCtrls(){const t=this.beans.columnViewportService,s=this.beans.visibleColsService;if(this.printLayout)this.centerCellCtrls=this.createCellCtrls(this.centerCellCtrls,s.getAllCols()),this.leftCellCtrls={list:[],map:{}},this.rightCellCtrls={list:[],map:{}};else{const i=t.getColsWithinViewport(this.rowNode);this.centerCellCtrls=this.createCellCtrls(this.centerCellCtrls,i);const o=s.getLeftColsForRow(this.rowNode);this.leftCellCtrls=this.createCellCtrls(this.leftCellCtrls,o,"left");const r=s.getRightColsForRow(this.rowNode);this.rightCellCtrls=this.createCellCtrls(this.rightCellCtrls,r,"right")}}isCellEligibleToBeRemoved(t,s){if(t.getColumn().getPinned()!=s)return!0;const n=t.isEditing(),l=this.beans.focusService.isCellFocused(t.getCellPosition());if(n||l){const d=t.getColumn();return!(this.beans.visibleColsService.getAllCols().indexOf(d)>=0)}return!0}getDomOrder(){return this.gos.get("ensureDomOrder")||De(this.gos,"print")}listenOnDomOrder(t){const s=()=>{t.rowComp.setDomOrder(this.getDomOrder())};t.compBean.addManagedPropertyListeners(["domLayout","ensureDomOrder"],s)}setAnimateFlags(t){if(this.isSticky()||!t)return;const s=E(this.rowNode.oldRowTop),i=this.beans.visibleColsService.isPinningLeft(),o=this.beans.visibleColsService.isPinningRight();if(s){if(this.isFullWidth()&&!this.gos.get("embedFullWidthRows")){this.slideInAnimation.fullWidth=!0;return}this.slideInAnimation.center=!0,this.slideInAnimation.left=i,this.slideInAnimation.right=o}else{if(this.isFullWidth()&&!this.gos.get("embedFullWidthRows")){this.fadeInAnimation.fullWidth=!0;return}this.fadeInAnimation.center=!0,this.fadeInAnimation.left=i,this.fadeInAnimation.right=o}}isEditing(){return this.editingRow}isFullWidth(){return this.rowType!=="Normal"}refreshFullWidth(){const t=(l,a)=>l?l.rowComp.refreshFullWidth(()=>this.createFullWidthCompDetails(l.element,a).params):!0,s=t(this.fullWidthGui,null),i=t(this.centerGui,null),o=t(this.leftGui,"left"),r=t(this.rightGui,"right");return s&&i&&o&&r}addListeners(){this.addManagedListeners(this.rowNode,{heightChanged:()=>this.onRowHeightChanged(),rowSelected:()=>this.onRowSelected(),rowIndexChanged:this.onRowIndexChanged.bind(this),topChanged:this.onTopChanged.bind(this),expandedChanged:this.updateExpandedCss.bind(this),hasChildrenChanged:this.updateExpandedCss.bind(this)}),this.rowNode.detail&&this.addManagedListeners(this.rowNode.parent,{dataChanged:this.onRowNodeDataChanged.bind(this)}),this.addManagedListeners(this.rowNode,{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)}),this.addManagedListeners(this.beans.eventService,{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()}),this.addDestroyFunc(()=>{this.rowDragComps=this.destroyBeans(this.rowDragComps,this.beans.context),this.tooltipFeature&&(this.tooltipFeature=this.destroyBean(this.tooltipFeature,this.beans.context))}),this.addManagedPropertyListeners(["rowStyle","getRowStyle","rowClass","getRowClass","rowClassRules"],this.postProcessCss.bind(this)),this.addManagedPropertyListener("rowDragEntireRow",()=>{if(this.gos.get("rowDragEntireRow")){this.allRowGuis.forEach(s=>{this.addRowDraggerToRow(s)});return}this.rowDragComps=this.destroyBeans(this.rowDragComps,this.beans.context)}),this.addListenersForCellComps()}
120addListenersForCellComps(){this.addManagedListeners(this.rowNode,{rowIndexChanged:()=>{this.getAllCellCtrls().forEach(t=>t.onRowIndexChanged())},cellChanged:t=>{this.getAllCellCtrls().forEach(s=>s.onCellChanged(t))}})}onRowNodeDataChanged(t){if(this.isFullWidth()!==!!this.isNodeFullWidthCell()){this.beans.rowRenderer.redrawRow(this.rowNode);return}if(this.isFullWidth()){this.refreshFullWidth()||this.beans.rowRenderer.redrawRow(this.rowNode);return}this.getAllCellCtrls().forEach(i=>i.refreshCell({suppressFlash:!t.update,newData:!t.update})),this.allRowGuis.forEach(i=>{this.setRowCompRowId(i.rowComp),this.updateRowBusinessKey(),this.setRowCompRowBusinessKey(i.rowComp)}),this.onRowSelected(),this.postProcessCss()}postProcessCss(){this.setStylesFromGridOptions(!0),this.postProcessClassesFromGridOptions(),this.postProcessRowClassRules(),this.postProcessRowDragging()}onRowNodeHighlightChanged(){const t=this.rowNode.highlighted;this.allRowGuis.forEach(s=>{const i=t===0,o=t===1;s.rowComp.addOrRemoveCssClass("ag-row-highlight-above",i),s.rowComp.addOrRemoveCssClass("ag-row-highlight-below",o)})}postProcessRowDragging(){const t=this.rowNode.dragging;this.allRowGuis.forEach(s=>s.rowComp.addOrRemoveCssClass("ag-row-dragging",t))}updateExpandedCss(){const t=this.rowNode.isExpandable(),s=this.rowNode.expanded==!0;this.allRowGuis.forEach(i=>{i.rowComp.addOrRemoveCssClass("ag-row-group",t),i.rowComp.addOrRemoveCssClass("ag-row-group-expanded",t&&s),i.rowComp.addOrRemoveCssClass("ag-row-group-contracted",t&&!s),Ft(i.element,t&&s)})}onDisplayedColumnsChanged(){this.updateColumnLists(!0),this.beans.columnModel.wasAutoRowHeightEverActive()&&this.rowNode.checkAutoHeights()}onVirtualColumnsChanged(){this.updateColumnLists(!1,!0)}getRowPosition(){return{rowPinned:Oe(this.rowNode.rowPinned),rowIndex:this.rowNode.rowIndex}}findFullWidthRowGui(t){return this.allRowGuis.find(s=>s.element.contains(t))}onKeyboardNavigate(t){const s=this.findFullWidthRowGui(t.target);if(!((s?s.element:null)===t.target))return;const r=this.rowNode,n=this.beans.focusService.getFocusedCell(),l={rowIndex:r.rowIndex,rowPinned:r.rowPinned,column:(n==null?void 0:n.column)??this.getColumnForFullWidth(s)};this.beans.navigationService.navigateToNextCell(t,t.key,l,!0),t.preventDefault()}onTabKeyDown(t){if(t.defaultPrevented||ht(t))return;const s=this.allRowGuis.find(a=>a.element.contains(t.target)),i=s?s.element:null,o=i===t.target,r=Q(this.gos);let n=!1;i&&r&&(n=i.contains(r)&&r.classList.contains("ag-cell"));let l=null;!o&&!n&&(l=this.beans.focusService.findNextFocusableElement(i,!1,t.shiftKey)),(this.isFullWidth()&&o||!l)&&this.beans.navigationService.onTabKeyDown(this,t)}getFullWidthElement(){return this.fullWidthGui?this.fullWidthGui.element:null}getRowYPosition(){var s;const t=(s=this.allRowGuis.find(i=>tt(i.element)))==null?void 0:s.element;return t?t.getBoundingClientRect().top:0}onSuppressCellFocusChanged(t){const s=this.isFullWidth()&&t?void 0:-1;this.allRowGuis.forEach(i=>{nt(i.element,"tabindex",s)})}onFullWidthRowFocused(t){var r;const s=this.rowNode,i=t?this.isFullWidth()&&t.rowIndex===s.rowIndex&&t.rowPinned==s.rowPinned:!1,o=this.fullWidthGui?this.fullWidthGui.element:(r=this.centerGui)==null?void 0:r.element;o&&(o.classList.toggle("ag-full-width-focus",i),i&&(t!=null&&t.forceBrowserFocus)&&o.focus({preventScroll:!0}))}recreateCell(t){this.centerCellCtrls=this.removeCellCtrl(this.centerCellCtrls,t),this.leftCellCtrls=this.removeCellCtrl(this.leftCellCtrls,t),this.rightCellCtrls=this.removeCellCtrl(this.rightCellCtrls,t),t.destroy(),this.updateColumnLists()}removeCellCtrl(t,s){const i={list:[],map:{}};return t.list.forEach(o=>{o!==s&&(i.list.push(o),i.map[o.getColumn().getInstanceId()]=o)}),i}onMouseEvent(t,s){switch(t){case"dblclick":this.onRowDblClick(s);break;case"click":this.onRowClick(s);break;case"touchstart":case"mousedown":this.onRowMouseDown(s);break}}createRowEvent(t,s){return this.gos.addGridCommonParams({type:t,node:this.rowNode,data:this.rowNode.data,rowIndex:this.rowNode.rowIndex,rowPinned:this.rowNode.rowPinned,event:s})}createRowEventWithSource(t,s){const i=this.createRowEvent(t,s);return i.source=this,i}onRowDblClick(t){ht(t)||this.beans.eventService.dispatchEvent(this.createRowEventWithSource("rowDoubleClicked",t))}getColumnForFullWidth(t){const{visibleColsService:s}=this.beans;switch(t==null?void 0:t.containerType){case"center":return s.getCenterCols()[0];case"left":return s.getLeftCols()[0];case"right":return s.getRightCols()[0];default:return s.getAllCols()[0]}}onRowMouseDown(t){if(this.lastMouseDownOnDragger=Fs(t.target,"ag-row-drag",3),!this.isFullWidth())return;const s=this.rowNode;this.beans.rangeService&&this.beans.rangeService.removeAllCellRanges();const i=this.findFullWidthRowGui(t.target),o=i==null?void 0:i.element,r=t.target;let n=!0;o&&o.contains(r)&&qr(r)&&(n=!1),this.beans.focusService.setFocusedCell({rowIndex:s.rowIndex,column:this.getColumnForFullWidth(i),rowPinned:s.rowPinned,forceBrowserFocus:n})}onRowClick(t){if(ht(t)||this.lastMouseDownOnDragger)return;const{gos:i}=this;this.beans.eventService.dispatchEvent(this.createRowEventWithSource("rowClicked",t));const o=t.ctrlKey||t.metaKey,r=t.shiftKey,n=this.rowNode.isSelected(),l=It(i),a=Vn(i),d=au(i);if(l&&this.rowNode.group||this.isRowSelectionBlocked()||!d&&!n||!a&&n)return;const c=du(i),u="rowClicked";if(n)c?this.rowNode.setSelectedParams({newValue:!1,event:t,source:u}):o?a&&this.rowNode.setSelectedParams({newValue:!1,event:t,source:u}):d&&this.rowNode.setSelectedParams({newValue:!0,clearSelection:!r,rangeSelect:r,event:t,source:u});else{const h=c?!1:!o;this.rowNode.setSelectedParams({newValue:!0,clearSelection:h,rangeSelect:r,event:t,source:u})}}isRowSelectionBlocked(){return!this.rowNode.selectable||!!this.rowNode.rowPinned||!ui(this.gos)}setupDetailRowAutoHeight(t){if(this.rowType!=="FullWidthDetail"||!this.gos.get("detailRowAutoHeight"))return;const s=()=>{const o=t.clientHeight;if(o!=null&&o>0){const r=()=>{this.rowNode.setRowHeight(o),(re(this.gos)||Ue(this.gos))&&this.beans.rowModel.onRowHeightChanged()};window.setTimeout(r,0)}},i=this.beans.resizeObserverService.observeResize(t,s);this.addDestroyFunc(i),s()}
120createFullWidthCompDetails(t,s){const{gos:i,rowNode:o}=this,r=i.addGridCommonParams({fullWidth:!0,data:o.data,node:o,value:o.key,valueFormatted:o.key,eGridCell:t,eParentOfValue:t,pinned:s,addRenderedRowListener:this.addEventListener.bind(this),registerRowDragger:(l,a,d,c)=>this.addFullWidthRowDragging(l,a,d,c),setTooltip:(l,a)=>this.refreshRowTooltip(l,a)}),n=this.beans.userComponentFactory;switch(this.rowType){case"FullWidthDetail":return n.getFullWidthDetailCellRendererDetails(r);case"FullWidthGroup":return n.getFullWidthGroupCellRendererDetails(r);case"FullWidthLoading":return n.getFullWidthLoadingCellRendererDetails(r);default:return n.getFullWidthCellRendererDetails(r)}}refreshRowTooltip(t,s){if(!this.fullWidthGui)return;const i={getGui:()=>this.fullWidthGui.element,getTooltipValue:()=>t,getLocation:()=>"fullWidthRow",shouldDisplayTooltip:s};this.tooltipFeature&&this.destroyBean(this.tooltipFeature,this.beans.context),this.tooltipFeature=this.createBean(new us(i,this.beans))}addFullWidthRowDragging(t,s,i="",o){if(!this.isFullWidth())return;const r=new so(()=>i,this.rowNode,void 0,t,s,o);this.createBean(r,this.beans.context),this.addDestroyFunc(()=>{this.destroyBean(r,this.beans.context)})}onUiLevelChanged(){const t=this.beans.rowCssClassCalculator.calculateRowLevel(this.rowNode);if(this.rowLevel!=t){const s="ag-row-level-"+t,i="ag-row-level-"+this.rowLevel;this.allRowGuis.forEach(o=>{o.rowComp.addOrRemoveCssClass(s,!0),o.rowComp.addOrRemoveCssClass(i,!1)})}this.rowLevel=t}isFirstRowOnPage(){return this.rowNode.rowIndex===this.beans.pageBoundsService.getFirstRow()}isLastRowOnPage(){return this.rowNode.rowIndex===this.beans.pageBoundsService.getLastRow()}refreshFirstAndLastRowStyles(){const t=this.isFirstRowOnPage(),s=this.isLastRowOnPage();this.firstRowOnPage!==t&&(this.firstRowOnPage=t,this.allRowGuis.forEach(i=>i.rowComp.addOrRemoveCssClass("ag-row-first",t))),this.lastRowOnPage!==s&&(this.lastRowOnPage=s,this.allRowGuis.forEach(i=>i.rowComp.addOrRemoveCssClass("ag-row-last",s)))}stopEditing(t=!1){var s;this.stoppingRowEdit||(s=this.beans.rowEditService)==null||s.stopEditing(this,t)}setInlineEditingCss(){const t=this.editingRow||this.getAllCellCtrls().some(s=>s.isEditing());this.allRowGuis.forEach(s=>{s.rowComp.addOrRemoveCssClass("ag-row-inline-editing",t),s.rowComp.addOrRemoveCssClass("ag-row-not-inline-editing",!t)})}setEditingRow(t){this.editingRow=t}startRowEditing(t=null,s=null,i=null){var o;return this.editingRow?!0:((o=this.beans.rowEditService)==null?void 0:o.startEditing(this,t,s,i))??!0}getAllCellCtrls(){return this.leftCellCtrls.list.length===0&&this.rightCellCtrls.list.length===0?this.centerCellCtrls.list:[...this.centerCellCtrls.list,...this.leftCellCtrls.list,...this.rightCellCtrls.list]}postProcessClassesFromGridOptions(){const t=this.beans.rowCssClassCalculator.processClassesFromGridOptions(this.rowNode);!t||!t.length||t.forEach(s=>{this.allRowGuis.forEach(i=>i.rowComp.addOrRemoveCssClass(s,!0))})}postProcessRowClassRules(){this.beans.rowCssClassCalculator.processRowClassRules(this.rowNode,t=>{this.allRowGuis.forEach(s=>s.rowComp.addOrRemoveCssClass(t,!0))},t=>{this.allRowGuis.forEach(s=>s.rowComp.addOrRemoveCssClass(t,!1))})}setStylesFromGridOptions(t,s){t&&(this.rowStyles=this.processStylesFromGridOptions()),this.forEachGui(s,i=>i.rowComp.setUserStyles(this.rowStyles))}getPinnedForContainer(t){return t==="left"||t==="right"?t:null}getInitialRowClasses(t){const s=this.getPinnedForContainer(t),i={rowNode:this.rowNode,rowFocused:this.rowFocused,fadeRowIn:this.fadeInAnimation[t],rowIsEven:this.rowNode.rowIndex%2===0,rowLevel:this.rowLevel,fullWidthRow:this.isFullWidth(),firstRowOnPage:this.isFirstRowOnPage(),lastRowOnPage:this.isLastRowOnPage(),printLayout:this.printLayout,expandable:this.rowNode.isExpandable(),pinned:s};return this.beans.rowCssClassCalculator.getInitialRowClasses(i)}processStylesFromGridOptions(){const t=this.gos.get("rowStyle");if(t&&typeof t=="function"){R("rowStyle should be an object of key/value styles, not be a function, use getRowStyle() instead");return}const s=this.gos.getCallback("getRowStyle");let i;if(s){const o={data:this.rowNode.data,node:this.rowNode,rowIndex:this.rowNode.rowIndex};i=s(o)}return i||t?Object.assign({},t,i):this.emptyStyle}onRowSelected(t){const s=!!this.rowNode.isSelected();this.forEachGui(t,i=>{i.rowComp.addOrRemoveCssClass("ag-row-selected",s),Qi(i.element,s),i.element.contains(Q(this.gos))&&(i===this.centerGui||i===this.fullWidthGui)&&this.announceDescription()})}announceDescription(){if(this.isRowSelectionBlocked())return;const t=this.rowNode.isSelected();if(t&&!Vn(this.gos))return;const i=this.beans.localeService.getLocaleTextFunc()(t?"ariaRowDeselect":"ariaRowSelect",`Press SPACE to ${t?"deselect":"select"} this row.`);this.beans.ariaAnnouncementService.announceValue(i,"rowSelection")}addHoverFunctionality(t){if(!this.active)return;const{element:s,compBean:i}=t,{rowNode:o,beans:r,gos:n}=this;i.addManagedListeners(s,{mouseenter:()=>o.onMouseEnter(),mouseleave:()=>o.onMouseLeave()}),i.addManagedListeners(o,{mouseEnter:()=>{!r.dragService.isDragging()&&!n.get("suppressRowHoverHighlight")&&(s.classList.add("ag-row-hover"),o.setHovered(!0))},mouseLeave:()=>{s.classList.remove("ag-row-hover"),o.setHovered(!1)}})}roundRowTopToBounds(t){const s=this.beans.ctrlsService.getGridBodyCtrl().getScrollFeature
120().getApproximateVScollPosition(),i=this.applyPaginationOffset(s.top,!0)-100,o=this.applyPaginationOffset(s.bottom,!0)+100;return Math.min(Math.max(i,t),o)}getFrameworkOverrides(){return this.beans.frameworkOverrides}forEachGui(t,s){t?s(t):this.allRowGuis.forEach(s)}onRowHeightChanged(t){if(this.rowNode.rowHeight==null)return;const s=this.rowNode.rowHeight,i=this.beans.environment.getDefaultRowHeight(),r=Tr(this.gos)?Ge(this.gos,this.rowNode).height:void 0,n=r?`${Math.min(i,r)-2}px`:void 0;this.forEachGui(t,l=>{l.element.style.height=`${s}px`,n&&l.element.style.setProperty("--ag-line-height",n)})}addEventListener(t,s){super.addEventListener(t,s)}removeEventListener(t,s){super.removeEventListener(t,s)}destroyFirstPass(t=!1){if(this.active=!1,!t&&bs(this.gos)&&!this.isSticky())if(this.rowNode.rowTop!=null){const o=this.roundRowTopToBounds(this.rowNode.rowTop);this.setRowTop(o)}else this.allRowGuis.forEach(o=>o.rowComp.addOrRemoveCssClass("ag-opacity-zero",!0));this.rowNode.setHovered(!1);const s=this.createRowEvent("virtualRowRemoved");this.dispatchLocalEvent(s),this.beans.eventService.dispatchEvent(s),super.destroy()}destroySecondPass(){this.allRowGuis.length=0,this.stopEditing();const t=s=>(s.list.forEach(i=>i.destroy()),{list:[],map:{}});this.centerCellCtrls=t(this.centerCellCtrls),this.leftCellCtrls=t(this.leftCellCtrls),this.rightCellCtrls=t(this.rightCellCtrls)}setFocusedClasses(t){this.forEachGui(t,s=>{s.rowComp.addOrRemoveCssClass("ag-row-focus",this.rowFocused),s.rowComp.addOrRemoveCssClass("ag-row-no-focus",!this.rowFocused)})}onCellFocusChanged(){const t=this.beans.focusService.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned);t!==this.rowFocused&&(this.rowFocused=t,this.setFocusedClasses()),!t&&this.editingRow&&this.stopEditing(!1)}onPaginationChanged(){var s;const t=((s=this.beans.paginationService)==null?void 0:s.getCurrentPage())??0;this.paginationPage!==t&&(this.paginationPage=t,this.onTopChanged()),this.refreshFirstAndLastRowStyles()}onTopChanged(){this.setRowTop(this.rowNode.rowTop)}onPaginationPixelOffsetChanged(){this.onTopChanged()}applyPaginationOffset(t,s=!1){if(this.rowNode.isRowPinned()||this.rowNode.sticky)return t;const i=this.beans.pageBoundsService.getPixelOffset();return t+i*(s?1:-1)}setRowTop(t){if(!this.printLayout&&E(t)){const s=this.applyPaginationOffset(t),r=`${this.rowNode.isRowPinned()||this.rowNode.sticky?s:this.beans.rowContainerHeightService.getRealPixelPosition(s)}px`;this.setRowTopStyle(r)}}getInitialRowTop(t){return this.suppressRowTransform?this.getInitialRowTopShared(t):void 0}getInitialTransform(t){return this.suppressRowTransform?void 0:`translateY(${this.getInitialRowTopShared(t)})`}getInitialRowTopShared(t){if(this.printLayout)return"";const s=this.rowNode;let i;if(this.isSticky())i=s.stickyRowTop;else{const o=this.slideInAnimation[t]?this.roundRowTopToBounds(s.oldRowTop):s.rowTop,r=this.applyPaginationOffset(o);i=s.isRowPinned()?r:this.beans.rowContainerHeightService.getRealPixelPosition(r)}return i+"px"}setRowTopStyle(t){this.allRowGuis.forEach(s=>this.suppressRowTransform?s.rowComp.setTop(t):s.rowComp.setTransform(`translateY(${t})`))}getRowNode(){return this.rowNode}getCellCtrl(t){let s=null;return this.getAllCellCtrls().forEach(i=>{i.getColumn()==t&&(s=i)}),s!=null||this.getAllCellCtrls().forEach(i=>{i.getColSpanningList().indexOf(t)>=0&&(s=i)}),s}onRowIndexChanged(){this.rowNode.rowIndex!=null&&(this.onCellFocusChanged(),this.updateRowIndexes(),this.postProcessCss())}getRowIndex(){return this.rowNode.getRowIndexString()}updateRowIndexes(t){var n;const s=this.rowNode.getRowIndexString();if(s===null)return;const i=this.beans.headerNavigationService.getHeaderRowCount()+(((n=this.beans.filterManager)==null?void 0:n.getHeaderRowCount())??0),o=this.rowNode.rowIndex%2===0,r=i+this.rowNode.rowIndex+1;this.forEachGui(t,l=>{l.rowComp.setRowIndex(s),l.rowComp.addOrRemoveCssClass("ag-row-even",o),l.rowComp.addOrRemoveCssClass("ag-row-odd",!o),ha(l.element,r)})}setStoppingRowEdit(t){this.stoppingRowEdit=t}};Md.DOM_DATA_KEY_ROW_CTRL="renderedRow";var ns=Md,hf=class extends b{wireBeans(e){this.mouseEventService=e.mouseEventService,this.valueService=e.valueService,this.menuService=e.menuService,this.ctrlsService=e.ctrlsService,this.navigationService=e.navigationService,this.focusService=e.focusService,this.undoRedoService=e.undoRedoService,this.visibleColsService=e.visibleColsService,this.rowModel=e.rowModel,this.pinnedRowModel=e.pinnedRowModel,this.rangeService=e.rangeService,this.clipboardService=e.clipboardService}constructor(e){super(),this.element=e}postConstruct(){this.addKeyboardListeners(),this.addMouseListeners(),this.mockContextMenuForIPad()}addKeyboardListeners(){const e="keydown",t=this.processKeyboardEvent.bind(this,e);this.addManagedElementListeners(this.element,{[e]:t})}addMouseListeners(){["dblclick","contextmenu","mouseover","mouseout","click",ta("touchstart")?"touchstart":"mousedown"].forEach(s=>{const i=this.processMouseEvent.bind(this,s);this.addManagedElementListeners(this.element,{[s]:i})})}processMouseEvent(e,t){if(!this.mouseEventService.isEventFromThisGrid(t)||ht(t))return;const s=this.getRowForEvent(t),i=this.mouseEventService.getRenderedCellForEvent(t);e==="contextmenu"?this.handleContextMenuMouseEvent(t,void 0,s,i):(i&&i.onMouseEvent(e,t),s&&s.onMouseEvent(e,t))}mockContextMenuForIPad(){if(!Gt())return;const e=new wt(this.element),t=s=>{const i=this.getRowForEvent(s.touchEvent),o=this.mouseEventService.getRenderedCellForEvent(s.touchEvent);this.handleContextMenuMouseEvent(void 0,s.touchEvent,i,o)};this.addManagedListeners(e,{longTap:t}),this.addDestroyFunc(()=>e.destroy())}getRowForEvent(e){let t=e.target;for(;t;){const s=hi(this.gos,t,ns.DOM_DATA_KEY_ROW_CTRL);if(s)return s;t=t.parentElement}return null}handleContextMenuMouseEvent(e,t,s,i){const o=s?s.getRowNode():null,r=i?i.getColumn():null;let n=null;if(r){const d=e||t;i.dispatchCellContextMenuEvent(d??null),n=this.valueService.getValue(r,o)}const l=this.ctrlsService.getGridBodyCtrl(),a=i?i.getGui():l.getGridBodyElement();this.menuService.showContextMenu({mouseEvent:e,touchEvent:t,rowNode:o,column:r,value:n,anchorToElement:a})}getControlsForEventTarget(e){return{cellCtrl:or(this.gos,e,rs.DOM_DATA_KEY_CELL_CTRL),rowCtrl:or(this.gos,e,ns.DOM_DATA_KEY_ROW_CTRL)}}processKeyboardEvent(e,t){const{cellCtrl:s,rowCtrl:i}=this.getControlsForEventTarget(t.target);t.defaultPrevented||(s?this.processCellKeyboardEvent(s,e,t):i&&i.isFullWidth()&&this.processFullWidthRowKeyboardEvent(i,e,t))}processCellKeyboardEvent(e,t,s){const i=e.getRowNode(),o=e.getColumn(),r=e.isEditing();!gr(this.gos,s,i,o,r)&&t==="keydown"&&(!r&&this.navigationService.handlePageScrollingKey(s)||e.onKeyDown(s),this.doGridOperations(s,e.isEditing()),Xa(s)&&e.processCharacter(s)),t==="keydown"&&this.eventService.dispatchEvent(e.createEvent(s,"cellKeyDown"))}processFullWidthRowKeyboardEvent(e,t,s){const i=e.getRowNode(),o=this.focusService.getFocusedCell(),r=o&&o.column;if(!gr(this.gos,s,i,r,!1)){const l=s.key;if(t==="keydown")switch(l){case S.PAGE_HOME:case S.PAGE_END:case S.PAGE_UP:case S.PAGE_DOWN:this.navigationService.handlePageScrollingKey(s,!0);break;case S.UP:case S.DOWN:e.onKeyboardNavigate(s);break;case S.TAB:e.onTabKeyDown(s);break}}t==="keydown"&&this.eventService.dispatchEvent(e.createRowEvent("cellKeyDown",s))}doGridOperations(e,t){if(!e.ctrlKey&&!e.metaKey||t||!this.mouseEventService.isEventFromThisGrid(e))return;const s=vp(e);if(s===S.A)return this.onCtrlAndA(e);if(s===S.C)return this.onCtrlAndC(e);if(s===S.D)return this.onCtrlAndD(e);if(s===S.V)return this.onCtrlAndV(e);if(s===S.X)return this.onCtrlAndX(e);if(s===S.Y)return this.onCtrlAndY();if(s===S.Z)return this.onCtrlAndZ(e)}onCtrlAndA(e){const{pinnedRowModel:t,rowModel:s,rangeService:i}=this;if(i&&s.isRowsToRender()){const[o,r]=[t.isEmpty("top"),t.isEmpty("bottom")],n=o?null:"top";let l,a;r?(l=null,a=s.getRowCount()-1):(l="bottom",a=t.getPinnedBottomRowCount()-1);const d=this.visibleColsService.getAllCols();if(Re(d))return;i.setCellRange({rowStartIndex:0,rowStartPinned:n,rowEndIndex:a,rowEndPinned:l,columnStart:d[0],columnEnd:W(d)})}e.preventDefault()}onCtrlAndC(e){if(!this.clipboardService||this.gos.get("enableCellTextSelection"))return;const{cellCtrl:t,rowCtrl:s}=this.getControlsForEventTarget(e.target);t!=null&&t.isEditing()||s!=null&&s.isEditing()||(e.preventDefault(),this.clipboardService.copyToClipboard())}onCtrlAndX(e){if(!this.clipboardService||this.gos.get("enableCellTextSelection")||this.gos.get("suppressCutToClipboard"))return;const{cellCtrl:t,rowCtrl:s}=this.getControlsForEventTarget(e.target);t!=null&&t.isEditing()||s!=null&&s.isEditing()||(e.preventDefault(),this.clipboardService.cutToClipboard(void 0,"ui"))}onCtrlAndV(e){const{cellCtrl:t,rowCtrl:s}=this.getControlsForEventTarget(e.target);t!=null&&t.isEditing()||s!=null&&s.isEditing()||this.clipboardService&&!this.gos.get("suppressClipboardPaste")&&this.clipboardService.pasteFromClipboard()}onCtrlAndD(e){this.clipboardService&&!this.gos.get("suppressClipboardPaste")&&this.clipboardService.copyRangeDown(),e.preventDefault()}onCtrlAndZ(e){!this.gos.get("undoRedoCellEditing")||!this.undoRedoService||(e.preventDefault(),e.shiftKey?this.undoRedoService.redo("ui"):this.undoRedoService.undo("ui"))}onCtrlAndY(){var e;(e=this.undoRedoService)==null||e.redo("ui")}
120},pf=class extends b{wireBeans(e){this.pinnedWidthService=e.pinnedWidthService}constructor(e){super(),this.element=e}postConstruct(){this.addManagedEventListeners({leftPinnedWidthChanged:this.onPinnedLeftWidthChanged.bind(this)})}onPinnedLeftWidthChanged(){const e=this.pinnedWidthService.getPinnedLeftWidth(),t=e>0;H(this.element,t),pt(this.element,e)}getWidth(){return this.pinnedWidthService.getPinnedLeftWidth()}},gf=class extends b{wireBeans(e){this.pinnedWidthService=e.pinnedWidthService}constructor(e){super(),this.element=e}postConstruct(){this.addManagedEventListeners({rightPinnedWidthChanged:this.onPinnedRightWidthChanged.bind(this)})}onPinnedRightWidthChanged(){const e=this.pinnedWidthService.getPinnedRightWidth(),t=e>0;H(this.element,t),pt(this.element,e)}getWidth(){return this.pinnedWidthService.getPinnedRightWidth()}},Ai=e=>e.getTopRowCtrls(),Ti=e=>e.getStickyTopRowCtrls(),Ii=e=>e.getStickyBottomRowCtrls(),Li=e=>e.getBottomRowCtrls(),Gi=e=>e.getCentreRowCtrls(),ff={center:{type:"center",container:"ag-center-cols-container",viewport:"ag-center-cols-viewport",getRowCtrls:Gi},left:{type:"left",container:"ag-pinned-left-cols-container",pinnedType:"left",getRowCtrls:Gi},right:{type:"right",container:"ag-pinned-right-cols-container",pinnedType:"right",getRowCtrls:Gi},fullWidth:{type:"fullWidth",container:"ag-full-width-container",fullWidth:!0,getRowCtrls:Gi},topCenter:{type:"center",container:"ag-floating-top-container",viewport:"ag-floating-top-viewport",getRowCtrls:Ai},topLeft:{type:"left",container:"ag-pinned-left-floating-top",pinnedType:"left",getRowCtrls:Ai},topRight:{type:"right",container:"ag-pinned-right-floating-top",pinnedType:"right",getRowCtrls:Ai},topFullWidth:{type:"fullWidth",container:"ag-floating-top-full-width-container",fullWidth:!0,getRowCtrls:Ai},stickyTopCenter:{type:"center",container:"ag-sticky-top-container",viewport:"ag-sticky-top-viewport",getRowCtrls:Ti},stickyTopLeft:{type:"left",container:"ag-pinned-left-sticky-top",pinnedType:"left",getRowCtrls:Ti},stickyTopRight:{type:"right",container:"ag-pinned-right-sticky-top",pinnedType:"right",getRowCtrls:Ti},stickyTopFullWidth:{type:"fullWidth",container:"ag-sticky-top-full-width-container",fullWidth:!0,getRowCtrls:Ti},stickyBottomCenter:{type:"center",container:"ag-sticky-bottom-container",viewport:"ag-sticky-bottom-viewport",getRowCtrls:Ii},stickyBottomLeft:{type:"left",container:"ag-pinned-left-sticky-bottom",pinnedType:"left",getRowCtrls:Ii},stickyBottomRight:{type:"right",container:"ag-pinned-right-sticky-bottom",pinnedType:"right",getRowCtrls:Ii},stickyBottomFullWidth:{type:"fullWidth",container:"ag-sticky-bottom-full-width-container",fullWidth:!0,getRowCtrls:Ii},bottomCenter:{type:"center",container:"ag-floating-bottom-container",viewport:"ag-floating-bottom-viewport",getRowCtrls:Li},bottomLeft:{type:"left",container:"ag-pinned-left-floating-bottom",pinnedType:"left",getRowCtrls:Li},bottomRight:{type:"right",container:"ag-pinned-right-floating-bottom",pinnedType:"right",getRowCtrls:Li},bottomFullWidth:{type:"fullWidth",container:"ag-floating-bottom-full-width-container",fullWidth:!0,getRowCtrls:Li}};function ss(e){return ff[e]}var mf=["topCenter","topLeft","topRight"],Cf=["bottomCenter","bottomLeft","bottomRight"],vf=["center","left","right"],Sf=["center","left","right","fullWidth"],wf=["stickyTopCenter","stickyBottomCenter","center","topCenter","bottomCenter"],yf=["left","bottomLeft","topLeft","stickyTopLeft","stickyBottomLeft"],Rf=["right","bottomRight","topRight","stickyTopRight","stickyBottomRight"],Dd=["stickyTopCenter","stickyTopLeft","stickyTopRight"],xd=["stickyBottomCenter","stickyBottomLeft","stickyBottomRight"],bf=[...Dd,"stickyTopFullWidth",...xd,"stickyBottomFullWidth"],Ff=[...mf,...Cf,...vf,...Dd,...xd],Ad=class extends b{constructor(e){super(),this.visible=!0,this.EMPTY_CTRLS=[],this.name=e,this.options=ss(e)}wireBeans(e){this.dragService=e.dragService,this.ctrlsService=e.ctrlsService,this.columnViewportService=e.columnViewportService,this.resizeObserverService=e.resizeObserverService,this.rowRenderer=e.rowRenderer}postConstruct(){this.enableRtl=this.gos.get("enableRtl"),this.forContainers(["center"],()=>{this.viewportSizeFeature=this.createManagedBean(new Bg(this)),this.addManagedEventListeners({stickyTopOffsetChanged:this.onStickyTopOffsetChanged.bind(this)})})}onStickyTopOffsetChanged(e){this.comp.setOffsetTop(`${e.offset}px`)}registerWithCtrlsService(){this.options.fullWidth||this.ctrlsService.register(this.name,this)}forContainers(e,t){e.indexOf(this.name)>=0&&t()}getContainerElement(){return this.eContainer}
120getViewportSizeFeature(){return this.viewportSizeFeature}setComp(e,t,s){this.comp=e,this.eContainer=t,this.eViewport=s,this.createManagedBean(new hf(this.eContainer)),this.addPreventScrollWhileDragging(),this.listenOnDomOrder();const i=()=>this.onPinnedWidthChanged();this.forContainers(yf,()=>{this.pinnedWidthFeature=this.createManagedBean(new pf(this.eContainer)),this.addManagedEventListeners({leftPinnedWidthChanged:i})}),this.forContainers(Rf,()=>{this.pinnedWidthFeature=this.createManagedBean(new gf(this.eContainer)),this.addManagedEventListeners({rightPinnedWidthChanged:i})}),this.forContainers(Sf,()=>this.createManagedBean(new bd(this.eContainer,this.name==="center"?s:void 0))),this.forContainers(Ff,()=>this.createManagedBean(new Vg(this.eContainer))),this.forContainers(wf,()=>this.createManagedBean(new dn(o=>this.comp.setContainerWidth(`${o}px`)))),this.visible=this.isContainerVisible(),this.addListeners(),this.registerWithCtrlsService()}onScrollCallback(e){this.addManagedElementListeners(this.getViewportElement(),{scroll:e})}addListeners(){this.addManagedEventListeners({displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this),displayedColumnsWidthChanged:this.onDisplayedColumnsWidthChanged.bind(this),displayedRowsChanged:e=>this.onDisplayedRowsChanged(e.afterScroll)}),this.onDisplayedColumnsChanged(),this.onDisplayedColumnsWidthChanged(),this.onDisplayedRowsChanged()}listenOnDomOrder(){if(bf.indexOf(this.name)>=0){this.comp.setDomOrder(!0);return}const t=()=>{const s=this.gos.get("ensureDomOrder"),i=De(this.gos,"print");this.comp.setDomOrder(s||i)};this.addManagedPropertyListener("domLayout",t),t()}onDisplayedColumnsChanged(){this.forContainers(["center"],()=>this.onHorizontalViewportChanged())}onDisplayedColumnsWidthChanged(){this.forContainers(["center"],()=>this.onHorizontalViewportChanged())}addPreventScrollWhileDragging(){const e=t=>{this.dragService.isDragging()&&t.cancelable&&t.preventDefault()};this.eContainer.addEventListener("touchmove",e,{passive:!1}),this.addDestroyFunc(()=>this.eContainer.removeEventListener("touchmove",e))}onHorizontalViewportChanged(e=!1){const t=this.getCenterWidth(),s=this.getCenterViewportScrollLeft();this.columnViewportService.setScrollPosition(t,s,e)}hasHorizontalScrollGap(){return this.eContainer.clientWidth-this.eViewport.clientWidth<0}hasVerticalScrollGap(){return this.eContainer.clientHeight-this.eViewport.clientHeight<0}getCenterWidth(){return Ns(this.eViewport)}getCenterViewportScrollLeft(){return Ji(this.eViewport,this.enableRtl)}registerViewportResizeListener(e){const t=this.resizeObserverService.observeResize(this.eViewport,e);this.addDestroyFunc(()=>t())}isViewportInTheDOMTree(){return Pa(this.eViewport)}getViewportScrollLeft(){return Ji(this.eViewport,this.enableRtl)}isHorizontalScrollShowing(){return this.gos.get("alwaysShowHorizontalScroll")||nh(this.eViewport)}getViewportElement(){return this.eViewport}setHorizontalScroll(e){this.comp.setHorizontalScroll(e)}getHScrollPosition(){return{left:this.eViewport.scrollLeft,right:this.eViewport.scrollLeft+this.eViewport.offsetWidth}}setCenterViewportScrollLeft(e){eo(this.eViewport,e,this.enableRtl)}isContainerVisible(){return!(this.options.pinnedType!=null)||!!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.rowRenderer);if(!this.visible||t.length===0){this.comp.setRowCtrls({rowCtrls:this.EMPTY_CTRLS});return}const s=De(this.gos,"print"),o=this.gos.get("embedFullWidthRows")||s,r=t.filter(n=>{const l=n.isFullWidth();return this.options.fullWidth?!o&&l:o||!l});this.comp.setRowCtrls({rowCtrls:r,useFlushSync:e})}},Td="ag-force-vertical-scroll",Pf="ag-selectable",Ef="ag-column-moving",Id=class extends b{constructor(){super(...arguments),this.stickyTopHeight=0,this.stickyBottomHeight=0}wireBeans(e){this.animationFrameService=e.animationFrameService,this.rowContainerHeightService=e.rowContainerHeightService,this.ctrlsService=e.ctrlsService,this.columnModel=e.columnModel,this.columnSizeService=e.columnSizeService,this.scrollVisibleService=e.scrollVisibleService,this.menuService=e.menuService,this.headerNavigationService=e.headerNavigationService,this.dragAndDropService=e.dragAndDropService,this.pinnedRowModel=e.pinnedRowModel,this.rowRenderer=e.rowRenderer,this.popupService=e.popupService,this.mouseEventService=e.mouseEventService,this.rowModel=e.rowModel,this.filterManager=e.filterManager,this.environment=e.environment}
120getScrollFeature(){return this.bodyScrollFeature}getBodyViewportElement(){return this.eBodyViewport}setComp(e,t,s,i,o,r,n){var l;this.comp=e,this.eGridBody=t,this.eBodyViewport=s,this.eTop=i,this.eBottom=o,this.eStickyTop=r,this.eStickyBottom=n,this.eCenterColsViewport=s.querySelector(`.${ss("center").viewport}`),this.eFullWidthContainer=s.querySelector(`.${ss("fullWidth").container}`),this.eStickyTopFullWidthContainer=r.querySelector(`.${ss("stickyTopFullWidth").container}`),this.eStickyBottomFullWidthContainer=n.querySelector(`.${ss("stickyBottomFullWidth").container}`),this.setCellTextSelection(this.gos.get("enableCellTextSelection")),this.addManagedPropertyListener("enableCellTextSelection",a=>this.setCellTextSelection(a.currentValue)),this.createManagedBean(new un(this.comp)),this.bodyScrollFeature=this.createManagedBean(new Ng(this.eBodyViewport)),this.addRowDragListener(),this.setupRowAnimationCssClass(),this.addEventListeners(),this.addFocusListeners([i,s,o,r,n]),this.onGridColumnsChanged(),this.addBodyViewportListener(),this.setFloatingHeights(),this.disableBrowserDragging(),this.addStopEditingWhenGridLosesFocus(),this.updateScrollingClasses(),(l=this.filterManager)==null||l.setupAdvancedFilterHeaderComp(i),this.ctrlsService.register("gridBodyCtrl",this)}getComp(){return this.comp}addEventListeners(){const e=this.setFloatingHeights.bind(this);this.addManagedEventListeners({gridColumnsChanged:this.onGridColumnsChanged.bind(this),scrollVisibilityChanged:this.onScrollVisibilityChanged.bind(this),scrollGapChanged:this.onScrollGapChanged.bind(this),pinnedRowDataChanged:e,pinnedHeightChanged:e,headerHeightChanged:this.onHeaderHeightChanged.bind(this)})}addFocusListeners(e){e.forEach(t=>{this.addManagedElementListeners(t,{focusin:s=>{const{target:i}=s,o=Fs(i,"ag-root",t);t.classList.toggle("ag-has-focus",!o)},focusout:s=>{const{target:i,relatedTarget:o}=s,r=t.contains(o),n=Fs(o,"ag-root",t);Fs(i,"ag-root",t)||(!r||n)&&t.classList.remove("ag-has-focus")}})})}setColumnMovingCss(e){this.comp.setColumnMovingCss(Ef,e)}setCellTextSelection(e=!1){this.comp.setCellSelectableCss(Pf,e)}onScrollVisibilityChanged(){const e=this.scrollVisibleService.isVerticalScrollShowing();this.setVerticalScrollPaddingVisible(e),this.setStickyWidth(e),this.setStickyBottomOffsetBottom();const t=e&&this.scrollVisibleService.getScrollbarWidth()||0,s=ya()?16:0,i=`calc(100% + ${t+s}px)`;this.animationFrameService.requestAnimationFrame(()=>this.comp.setBodyViewportWidth(i)),this.updateScrollingClasses()}onScrollGapChanged(){this.updateScrollingClasses()}updateScrollingClasses(){this.eGridBody.classList.toggle("ag-body-vertical-content-no-gap",!this.scrollVisibleService.hasVerticalScrollGap()),this.eGridBody.classList.toggle("ag-body-horizontal-content-no-gap",!this.scrollVisibleService.hasHorizontalScrollGap())}onGridColumnsChanged(){const e=this.columnModel.getCols();this.comp.setColumnCount(e.length)}disableBrowserDragging(){this.addManagedElementListeners(this.eGridBody,{dragstart:e=>{if(e.target instanceof HTMLImageElement)return e.preventDefault(),!1}})}addStopEditingWhenGridLosesFocus(){if(!this.gos.get("stopEditingWhenCellsLoseFocus"))return;const e=s=>{const i=s.relatedTarget;if(hr(i)===null){this.rowRenderer.stopEditing();return}let o=t.some(r=>r.contains(i))&&this.mouseEventService.isElementInThisGrid(i);if(!o){const r=this.popupService;o=r.getActivePopups().some(n=>n.contains(i))||r.isElementWithinCustomPopup(i)}o||this.rowRenderer.stopEditing()},t=[this.eBodyViewport,this.eBottom,this.eTop,this.eStickyTop,this.eStickyBottom];t.forEach(s=>this.addManagedElementListeners(s,{focusout:e}))}updateRowCount(){var i;const e=this.headerNavigationService.getHeaderRowCount()+(((i=this.filterManager)==null?void 0:i.getHeaderRowCount())??0),t=this.rowModel.isLastRowIndexKnown()?this.rowModel.getRowCount():-1,s=t===-1?-1:e+t;this.comp.setRowCount(s)}registerBodyViewportResizeListener(e){this.comp.registerBodyViewportResizeListener(e)}setVerticalScrollPaddingVisible(e){const t=e?"scroll":"hidden";this.comp.setPinnedTopBottomOverflowY(t)}isVerticalScrollShowing(){const e=this.gos.get("alwaysShowVerticalScroll"),t=e?Td:null,s=De(this.gos,"normal");return this.comp.setAlwaysVerticalScrollClass(t,e),e||s&&lh(this.eBodyViewport)}setupRowAnimationCssClass(){let e=this.environment.hasMeasuredSizes();const t=()=>{const s=e&&bs(this.gos)&&!this.rowContainerHeightService.isStretching(),i=s?"ag-row-animation":"ag-row-no-animation";this.comp.setRowAnimationCssOnBodyViewport(i,s)};t(),this.addManagedEventListeners({heightScaleChanged:t}),this.addManagedPropertyListener("animateRows",t),this.addManagedEventListeners({gridStylesChanged:()=>{!e&&this.environment.hasMeasuredSizes()&&(e=!0,t())}})}getGridBodyElement(){return this.eGridBody}addBodyViewportListener(){const e=this.onBodyViewportContextMenu.bind(this);this.addManagedElementListeners(this.eBodyViewport,{contextmenu:e}),this.mockContextMenuForIPad(e),this.addManagedElementListeners(this.eBodyViewport,{wheel:this.onBodyViewportWheel.bind(this)}),this.addManagedElementListeners(this.eStickyTop,{wheel:this.onStickyWheel.bind(this)}),this.addManagedElementListeners(this.eStickyBottom,{wheel:this.onStickyWheel.bind(this)}),this.addFullWidthContainerWheelListener()}addFullWidthContainerWheelListener(){this.addManagedElementListeners(this.eFullWidthContainer,{wheel:e=>this.onFullWidthContainerWheel(e)})}onFullWidthContainerWheel(e){const{deltaX:t,deltaY:s,shiftKey:i}=e;(i||Math.abs(t)>Math.abs(s))&&this.mouseEventService.isEventFromThisGrid(e)&&this.scrollGridBodyToMatchEvent(e)}onStickyWheel(e){const{deltaX:t,deltaY:s,shiftKey:i}=e,o=i||Math.abs(t)>Math.abs(s),r=e.target;o?(this.eStickyTopFullWidthContainer.contains(r)||this.eStickyBottomFullWidthContainer.contains(r))&&this.scrollGridBodyToMatchEvent(e):(e.preventDefault(),this.scrollVertically(s))}scrollGridBodyToMatchEvent(e){const{deltaX:t,deltaY:s}=e;e.preventDefault(),this.eCenterColsViewport.scrollBy({left:t||s})}onBodyViewportContextMenu(e,t,s){if(!e&&!s)return;this.gos.get("preventDefaultOnContextMenu")&&(e||s).preventDefault();const{target:i}=e||t;
120(i===this.eBodyViewport||i===this.ctrlsService.get("center").getViewportElement())&&this.menuService.showContextMenu({mouseEvent:e,touchEvent:s,value:null,anchorToElement:this.eGridBody})}mockContextMenuForIPad(e){if(!Gt())return;const t=new wt(this.eBodyViewport),s=i=>{e(void 0,i.touchStart,i.touchEvent)};this.addManagedListeners(t,{longTap:s}),this.addDestroyFunc(()=>t.destroy())}onBodyViewportWheel(e){this.gos.get("suppressScrollWhenPopupsAreOpen")&&this.popupService.hasAnchoredPopup()&&e.preventDefault()}getGui(){return this.eGridBody}scrollVertically(e){const t=this.eBodyViewport.scrollTop;return this.bodyScrollFeature.setVerticalScrollPosition(t+e),this.eBodyViewport.scrollTop-t}addRowDragListener(){this.rowDragFeature=this.createManagedBean(new ep(this.eBodyViewport)),this.dragAndDropService.addDropTarget(this.rowDragFeature),this.addDestroyFunc(()=>this.dragAndDropService.removeDropTarget(this.rowDragFeature))}getRowDragFeature(){return this.rowDragFeature}setFloatingHeights(){const{pinnedRowModel:e}=this,t=e.getPinnedTopTotalHeight(),s=e.getPinnedBottomTotalHeight();this.comp.setTopHeight(t),this.comp.setBottomHeight(s),this.comp.setTopDisplay(t?"inherit":"none"),this.comp.setBottomDisplay(s?"inherit":"none"),this.setStickyTopOffsetTop(),this.setStickyBottomOffsetBottom()}setStickyTopHeight(e=0){this.comp.setStickyTopHeight(`${e}px`),this.stickyTopHeight=e}getStickyTopHeight(){return this.stickyTopHeight}setStickyBottomHeight(e=0){this.comp.setStickyBottomHeight(`${e}px`),this.stickyBottomHeight=e}getStickyBottomHeight(){return this.stickyBottomHeight}setStickyWidth(e){if(!e)this.comp.setStickyTopWidth("100%"),this.comp.setStickyBottomWidth("100%");else{const t=this.scrollVisibleService.getScrollbarWidth();this.comp.setStickyTopWidth(`calc(100% - ${t}px)`),this.comp.setStickyBottomWidth(`calc(100% - ${t}px)`)}}onHeaderHeightChanged(){this.setStickyTopOffsetTop()}setStickyTopOffsetTop(){var o;const t=this.ctrlsService.get("gridHeaderCtrl").getHeaderHeight()+(((o=this.filterManager)==null?void 0:o.getHeaderHeight())??0),s=this.pinnedRowModel.getPinnedTopTotalHeight();let i=0;t>0&&(i+=t),s>0&&(i+=s),i>0&&(i+=1),this.comp.setStickyTopTop(`${i}px`)}setStickyBottomOffsetBottom(){const e=this.pinnedRowModel.getPinnedBottomTotalHeight(),s=this.scrollVisibleService.isHorizontalScrollShowing()&&this.scrollVisibleService.getScrollbarWidth()||0,i=e+s;this.comp.setStickyBottomBottom(`${i}px`)}sizeColumnsToFit(e,t){const i=this.isVerticalScrollShowing()?this.scrollVisibleService.getScrollbarWidth():0,r=Ns(this.eGridBody)-i;if(r>0){this.columnSizeService.sizeColumnsToFit(r,"sizeColumnsToFit",!1,e);return}t===void 0?window.setTimeout(()=>{this.sizeColumnsToFit(e,100)},0):t===100?window.setTimeout(()=>{this.sizeColumnsToFit(e,500)},100):t===500?window.setTimeout(()=>{this.sizeColumnsToFit(e,-1)},500):R("tried to call sizeColumnsToFit() but the grid is coming back with zero width, maybe the grid is not visible yet on the screen?")}addScrollEventListener(e){this.eBodyViewport.addEventListener("scroll",e,{passive:!0})}removeScrollEventListener(e){this.eBodyViewport.removeEventListener("scroll",e)}},Mf=class extends O{constructor(t,s,i,o,r){super(),this.rendererVersion=0,this.editorVersion=0,this.beans=t,this.column=s.getColumn(),this.rowNode=s.getRowNode(),this.rowCtrl=s.getRowCtrl(),this.eRow=o,this.cellCtrl=s;const n=document.createElement("div");n.setAttribute("comp-id",`${this.getCompId()}`),this.setTemplateFromElement(n);const l=this.getGui();this.forceWrapper=s.isForceWrapper(),this.refreshWrapper(!1),he(l,s.getCellAriaRole()),l.setAttribute("col-id",s.colIdSanitised);const a={addOrRemoveCssClass:(d,c)=>this.addOrRemoveCssClass(d,c),setUserStyles:d=>Da(l,d),getFocusableElement:()=>this.getFocusableElement(),setIncludeSelection:d=>this.includeSelection=d,setIncludeRowDrag:d=>this.includeRowDrag=d,setIncludeDndSource:d=>this.includeDndSource=d,setRenderDetails:(d,c,u)=>this.setRenderDetails(d,c,u),setEditDetails:(d,c,u)=>this.setEditDetails(d,c,u),getCellEditor:()=>this.cellEditor||null,getCellRenderer:()=>this.cellRenderer||null,getParentOfValue:()=>this.getParentOfValue()};s.setComp(a,this.getGui(),this.eCellWrapper,i,r,void 0)}getParentOfValue(){return this.eCellValue?this.eCellValue:this.eCellWrapper?this.eCellWrapper:this.getGui()}setRenderDetails(t,s,i){if(this.cellEditor&&!this.cellEditorPopupWrapper)return;
120this.firstRender=this.firstRender==null;const r=this.refreshWrapper(!1);this.refreshEditStyles(!1),t?!(i||r)&&this.refreshCellRenderer(t)||(this.destroyRenderer(),this.createCellRendererInstance(t)):(this.destroyRenderer(),this.insertValueWithoutCellRenderer(s))}setEditDetails(t,s,i){t?this.createCellEditorInstance(t,s,i):this.destroyEditor()}removeControls(){this.checkboxSelectionComp=this.beans.context.destroyBean(this.checkboxSelectionComp),this.dndSourceComp=this.beans.context.destroyBean(this.dndSourceComp),this.rowDraggingComp=this.beans.context.destroyBean(this.rowDraggingComp)}refreshWrapper(t){const s=this.includeRowDrag||this.includeDndSource||this.includeSelection,i=s||this.forceWrapper,o=i&&this.eCellWrapper==null;if(o){const c=document.createElement("div");c.setAttribute("role","presentation"),c.setAttribute("class","ag-cell-wrapper"),this.eCellWrapper=c,this.getGui().appendChild(this.eCellWrapper)}const r=!i&&this.eCellWrapper!=null;r&&(Qe(this.eCellWrapper),this.eCellWrapper=void 0),this.addOrRemoveCssClass("ag-cell-value",!i);const n=!t&&i,l=n&&this.eCellValue==null;if(l){const c=document.createElement("span");c.setAttribute("role","presentation"),c.setAttribute("class","ag-cell-value"),this.eCellValue=c,this.eCellWrapper.appendChild(this.eCellValue)}const a=!n&&this.eCellValue!=null;a&&(Qe(this.eCellValue),this.eCellValue=void 0);const d=o||r||l||a;return d&&this.removeControls(),t||s&&this.addControls(),d}addControls(){this.includeRowDrag&&this.rowDraggingComp==null&&(this.rowDraggingComp=this.cellCtrl.createRowDragComp(),this.rowDraggingComp&&this.eCellWrapper.insertBefore(this.rowDraggingComp.getGui(),this.eCellValue)),this.includeDndSource&&this.dndSourceComp==null&&(this.dndSourceComp=this.cellCtrl.createDndSource(),this.eCellWrapper.insertBefore(this.dndSourceComp.getGui(),this.eCellValue)),this.includeSelection&&this.checkboxSelectionComp==null&&(this.checkboxSelectionComp=this.cellCtrl.createSelectionCheckbox(),this.eCellWrapper.insertBefore(this.checkboxSelectionComp.getGui(),this.eCellValue))}createCellEditorInstance(t,s,i){const o=this.editorVersion,r=t.newAgStackInstance();if(r==null)return;const{params:n}=t;r.then(a=>this.afterCellEditorCreated(o,a,n,s,i)),z(this.cellEditor)&&n.cellStartedEdit&&this.cellCtrl.focusCell(!0)}insertValueWithoutCellRenderer(t){const s=this.getParentOfValue();de(s);const i=t!=null?Ce(t,!0):null;i!=null&&(s.textContent=i)}destroyEditorAndRenderer(){this.destroyRenderer(),this.destroyEditor()}destroyRenderer(){const{context:t}=this.beans;this.cellRenderer=t.destroyBean(this.cellRenderer),Qe(this.cellRendererGui),this.cellRendererGui=null,this.rendererVersion++}destroyEditor(){const{context:t}=this.beans;this.hideEditorPopup&&this.hideEditorPopup(),this.hideEditorPopup=void 0,this.cellEditor=t.destroyBean(this.cellEditor),this.cellEditorPopupWrapper=t.destroyBean(this.cellEditorPopupWrapper),Qe(this.cellEditorGui),this.cellEditorGui=null,this.editorVersion++}refreshCellRenderer(t){if(this.cellRenderer==null||this.cellRenderer.refresh==null||this.cellRendererClass!==t.componentClass)return!1;const s=this.cellRenderer.refresh(t.params);return s===!0||s===void 0}createCellRendererInstance(t){const i=!this.beans.gos.get("suppressAnimationFrame"),o=this.rendererVersion,{componentClass:r}=t,n=()=>{if(this.rendererVersion!==o||!this.isAlive())return;const a=t.newAgStackInstance(),d=this.afterCellRendererCreated.bind(this,o,r);a&&a.then(d)};i&&this.firstRender?this.beans.animationFrameService.createTask(n,this.rowNode.rowIndex,"createTasksP2"):n()}getCtrl(){return this.cellCtrl}getRowCtrl(){return this.rowCtrl}getCellRenderer(){return this.cellRenderer}getCellEditor(){return this.cellEditor}afterCellRendererCreated(t,s,i){if(!this.isAlive()||t!==this.rendererVersion){this.beans.context.destroyBean(i);return}if(this.cellRenderer=i,this.cellRendererClass=s,this.cellRendererGui=this.cellRenderer.getGui(),this.cellRendererGui!=null){const r=this.getParentOfValue();de(r),r.appendChild(this.cellRendererGui)}}afterCellEditorCreated(t,s,i,o,r){if(t!==this.editorVersion){this.beans.context.destroyBean(s);return}if(s.isCancelBeforeStart&&s.isCancelBeforeStart()){this.beans.context.destroyBean(s),this.cellCtrl.
120stopEditing(!0);return}if(!s.getGui){R(`cellEditor for column ${this.column.getId()} is missing getGui() method`),this.beans.context.destroyBean(s);return}this.cellEditor=s,this.cellEditorGui=s.getGui();const a=o||s.isPopup!==void 0&&s.isPopup();a?this.addPopupCellEditor(i,r):this.addInCellEditor(),this.refreshEditStyles(!0,a),s.afterGuiAttached&&s.afterGuiAttached(),this.cellCtrl.cellEditorAttached()}refreshEditStyles(t,s){var i;this.addOrRemoveCssClass("ag-cell-inline-editing",t&&!s),this.addOrRemoveCssClass("ag-cell-popup-editing",t&&!!s),this.addOrRemoveCssClass("ag-cell-not-inline-editing",!t||!!s),(i=this.rowCtrl)==null||i.setInlineEditingCss()}addInCellEditor(){const t=this.getGui();t.contains(Q(this.beans.gos))&&t.focus(),this.destroyRenderer(),this.refreshWrapper(!0),this.clearParentOfValue(),this.cellEditorGui&&this.getParentOfValue().appendChild(this.cellEditorGui)}addPopupCellEditor(t,s){var p;this.beans.gos.get("editType")==="fullRow"&&R("popup cellEditor does not work with fullRowEdit - you cannot use them both - either turn off fullRowEdit, or stop using popup editors.");const i=this.cellEditor;this.cellEditorPopupWrapper=this.beans.context.createBean(this.beans.editService.createPopupEditorWrapper(t));const o=this.cellEditorPopupWrapper.getGui();this.cellEditorGui&&o.appendChild(this.cellEditorGui);const r=this.beans.popupService,n=this.beans.gos.get("stopEditingWhenCellsLoseFocus"),l=s??((p=i.getPopupPosition)==null?void 0:p.call(i))??"over",a=this.beans.gos.get("enableRtl"),d={ePopup:o,column:this.column,rowNode:this.rowNode,type:"popupCellEditor",eventSource:this.getGui(),position:l,alignSide:a?"right":"left",keepWithinBounds:!0},c=r.positionPopupByComponent.bind(r,d),u=this.beans.localeService.getLocaleTextFunc(),h=r.addPopup({modal:n,eChild:o,closeOnEsc:!0,closedCallback:()=>{this.cellCtrl.onPopupEditorClosed()},anchorToElement:this.getGui(),positionCallback:c,ariaLabel:u("ariaLabelCellEditor","Cell Editor")});h&&(this.hideEditorPopup=h.hideFunc)}detach(){this.eRow.removeChild(this.getGui())}destroy(){this.cellCtrl.stopEditing(),this.destroyEditorAndRenderer(),this.removeControls(),super.destroy()}clearParentOfValue(){const t=this.getGui();t.contains(Q(this.beans.gos))&&ur()&&t.focus({preventScroll:!0}),de(this.getParentOfValue())}},Df=class extends O{constructor(t,s,i){super(),this.cellComps={},this.beans=s,this.rowCtrl=t;const o=document.createElement("div");o.setAttribute("comp-id",`${this.getCompId()}`),o.setAttribute("style",this.getInitialStyle(i)),this.setTemplateFromElement(o);const r=this.getGui(),n=r.style;this.domOrder=this.rowCtrl.getDomOrder(),he(r,"row");const l={setDomOrder:a=>this.domOrder=a,setCellCtrls:a=>this.setCellCtrls(a),showFullWidth:a=>
120this.showFullWidth(a),getFullWidthCellRenderer:()=>this.fullWidthCellRenderer,addOrRemoveCssClass:(a,d)=>this.addOrRemoveCssClass(a,d),setUserStyles:a=>Da(r,a),setTop:a=>n.top=a,setTransform:a=>n.transform=a,setRowIndex:a=>r.setAttribute("row-index",a),setRowId:a=>r.setAttribute("row-id",a),setRowBusinessKey:a=>r.setAttribute("row-business-key",a),refreshFullWidth:a=>{var d,c;return((c=(d=this.fullWidthCellRenderer)==null?void 0:d.refresh)==null?void 0:c.call(d,a()))??!1}};t.setComp(l,this.getGui(),i,void 0),this.addDestroyFunc(()=>{t.unsetComp(i)})}getInitialStyle(t){const s=this.rowCtrl.getInitialTransform(t);return s?`transform: ${s}`:`top: ${this.rowCtrl.getInitialRowTop(t)}`}showFullWidth(t){const s=o=>{if(this.isAlive()){const r=o.getGui();this.getGui().appendChild(r),this.rowCtrl.setupDetailRowAutoHeight(r),this.setFullWidthRowComp(o)}else this.beans.context.destroyBean(o)},i=t.newAgStackInstance();i!=null&&i.then(s)}setCellCtrls(t){const s=Object.assign({},this.cellComps);t.forEach(o=>{const r=o.instanceId;this.cellComps[r]==null?this.newCellComp(o):s[r]=null});const i=jt(s).filter(o=>o!=null);this.destroyCells(i),this.ensureDomOrder(t)}ensureDomOrder(t){if(!this.domOrder)return;const s=[];t.forEach(i=>{const o=this.cellComps[i.instanceId];o&&s.push(o.getGui())}),Ma(this.getGui(),s)}newCellComp(t){const s=new Mf(this.beans,t,this.rowCtrl.isPrintLayout(),this.getGui(),this.rowCtrl.isEditing());this.cellComps[t.instanceId]=s,this.getGui().appendChild(s.getGui())}destroy(){super.destroy(),this.destroyAllCells()}destroyAllCells(){const t=jt(this.cellComps).filter(s=>s!=null);this.destroyCells(t)}setFullWidthRowComp(t){this.fullWidthCellRenderer&&_("should not be setting fullWidthRowComponent twice"),this.fullWidthCellRenderer=t,this.addDestroyFunc(()=>{this.fullWidthCellRenderer=this.beans.context.destroyBean(this.fullWidthCellRenderer)})}destroyCells(t){t.forEach(s=>{if(!s)return;const i=s.getCtrl().instanceId;this.cellComps[i]===s&&(s.detach(),s.destroy(),this.cellComps[i]=null)})}};function xf(e){let t;return e.type==="center"?t=`<div class="${e.viewport}" data-ref="eViewport" role="presentation"> 121 <div class="${e.container}" data-ref="eContainer"></div> 122 </div>`:t=`<div class="${e.container}" data-ref="eContainer"></div>`,t}var Af=class extends O{constructor(){super(),this.eViewport=P,this.eContainer=P,this.rowComps={},this.name=O.elementGettingCreated.getAttribute("name"),this.options=ss(this.name),this.setTemplate(xf(this.options))}wireBeans(t){this.beans=t}postConstruct(){const t={setHorizontalScroll:i=>this.eViewport.scrollLeft=i,setViewportHeight:i=>this.eViewport.style.height=i,setRowCtrls:({rowCtrls:i})=>this.setRowCtrls(i),setDomOrder:i=>{this.domOrder=i},setContainerWidth:i=>this.eContainer.style.width=i,setOffsetTop:i=>this.eContainer.style.transform=`translateY(${i})`};this.createManagedBean(new Ad(this.name)).setComp(t,this.eContainer,this.eViewport)}destroy(){this.setRowCtrls([]),super.destroy()}setRowCtrls(t){const s={...this.rowComps};this.rowComps={},this.lastPlacedElement=null;const i=o=>{const r=o.instanceId,n=s[r];if(n)this.rowComps[r]=n,delete s[r],this.ensureDomOrder(n.getGui());else{if(!o.getRowNode().displayed)return;const l=new Df(o,this.beans,this.options.type);this.rowComps[r]=l,this.appendRow(l.getGui())}};t.forEach(i),jt(s).forEach(o=>{this.eContainer.removeChild(o.getGui()),o.destroy()}),he(this.eContainer,"rowgroup")}appendRow(t){this.domOrder?rh(this.eContainer,t,this.lastPlacedElement):this.eContainer.appendChild(t),this.lastPlacedElement=t}ensureDomOrder(t){this.domOrder&&(Ea(this.eContainer,t,this.lastPlacedElement),this.lastPlacedElement=t)}},Tf={selector:"AG-ROW-CONTAINER",component:Af};function $s(e){return e.map(t=>`<ag-row-container name="${t}"></ag-row-container>`).join("")}var If=`<div class="ag-root ag-unselectable" role="treegrid"> 123 <ag-header-root></ag-header-root> 124 <div class="ag-floating-top" data-ref="eTop" role="presentation"> 125 ${$s(["topLeft","topCenter","topRight","topFullWidth"])} 126 </div> 127 <div class="ag-body" data-ref="eBody" role="presentation"> 128 <div class="ag-body-viewport" data-ref="eBodyViewport" role="presentation"> 129 ${$s(["left","center","right","fullWidth"])} 130 </div> 131 <ag-fake-vertical-scroll></ag-fake-vertical-scroll> 132 </div> 133 <div class="ag-sticky-top" data-ref="eStickyTop" role="presentation"> 134 ${$s(["stickyTopLeft","stickyTopCenter","stickyTopRight","stickyTopFullWidth"])} 135 </div> 136 <div class="ag-sticky-bottom" data-ref="eStickyBottom" role="presentation"> 137 ${$s(["stickyBottomLeft","stickyBottomCenter","stickyBottomRight","stickyBottomFullWidth"])} 138 </div> 139 <div class="ag-floating-bottom" data-ref="eBottom" role="presentation"> 140 ${$s(["bottomLeft","bottomCenter","bottomRight","bottomFullWidth"])} 141 </div> 142 <ag-fake-horizontal-scroll></ag-fake-horizontal-scroll> 143 <ag-overlay-wrapper></ag-overlay-wrapper> 144 </div>`,Lf=class extends O{constructor(){super(If,[Gg,kg,Og,Lg,Tf]),this.eBodyViewport=P,this.eStickyTop=P,this.eStickyBottom=P,this.eTop=P,this.eBottom=P,this.eBody=P}wireBeans(t){this.resizeObserverService=t.resizeObserverService,this.rangeService=t.rangeService}postConstruct(){const t=(i,o)=>{const r=`${i}px`;o.style.minHeight=r,o.style.height=r},s={setRowAnimationCssOnBodyViewport:(i,o)=>this.setRowAnimationCssOnBodyViewport(i,o),setColumnCount:i=>pa(this.getGui(),i),setRowCount:i=>ua(this.getGui(),i),setTopHeight:i=>t(i,this.eTop),setBottomHeight:i=>t(i,this.eBottom),setTopDisplay:i=>this.eTop.style.display=i,setBottomDisplay:i=>this.eBottom.style.display=i,setStickyTopHeight:i=>this.eStickyTop.style.height=i,setStickyTopTop:i=>this.eStickyTop.style.top=i,setStickyTopWidth:i=>this.eStickyTop.style.width=i,setStickyBottomHeight:i=>{this.eStickyBottom.style.height=i,this.eStickyBottom.classList.toggle("ag-hidden",i==="0px")},setStickyBottomBottom:i=>this.eStickyBottom.style.bottom=i,setStickyBottomWidth:i=>this.eStickyBottom.style.width=i,setColumnMovingCss:(i,o)=>this.addOrRemoveCssClass(i,o),updateLayoutClasses:(i,o)=>{[this.eBodyViewport.classList,this.eBody.classList].forEach(n=>
144{n.toggle("ag-layout-auto-height",o.autoHeight),n.toggle("ag-layout-normal",o.normal),n.toggle("ag-layout-print",o.print)}),this.addOrRemoveCssClass("ag-layout-auto-height",o.autoHeight),this.addOrRemoveCssClass("ag-layout-normal",o.normal),this.addOrRemoveCssClass("ag-layout-print",o.print)},setAlwaysVerticalScrollClass:(i,o)=>this.eBodyViewport.classList.toggle(Td,o),registerBodyViewportResizeListener:i=>{const o=this.resizeObserverService.observeResize(this.eBodyViewport,i);this.addDestroyFunc(()=>o())},setPinnedTopBottomOverflowY:i=>this.eTop.style.overflowY=this.eBottom.style.overflowY=i,setCellSelectableCss:(i,o)=>{[this.eTop,this.eBodyViewport,this.eBottom].forEach(r=>r.classList.toggle(i,o))},setBodyViewportWidth:i=>this.eBodyViewport.style.width=i};this.ctrl=this.createManagedBean(new Id),this.ctrl.setComp(s,this.getGui(),this.eBodyViewport,this.eTop,this.eBottom,this.eStickyTop,this.eStickyBottom),(this.rangeService&&yt(this.gos)||Is(this.gos))&&Qu(this.getGui(),!0)}setRowAnimationCssOnBodyViewport(t,s){const i=this.eBodyViewport.classList;i.toggle("ag-row-animation",s),i.toggle("ag-row-no-animation",!s)}getFloatingTopBottom(){return[this.eTop,this.eBottom]}},Gf={selector:"AG-GRID-BODY",component:Lf},kf=class extends b{constructor(){super(...arguments),this.beanName="scrollVisibleService"}wireBeans(e){this.ctrlsService=e.ctrlsService,this.columnAnimationService=e.columnAnimationService}postConstruct(){this.getScrollbarWidth(),this.addManagedEventListeners({displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this),displayedColumnsWidthChanged:this.onDisplayedColumnsWidthChanged.bind(this)})}onDisplayedColumnsChanged(){this.updateScrollVisible()}onDisplayedColumnsWidthChanged(){this.updateScrollVisible()}onCentreViewportResized(){this.updateScrollGap()}updateScrollVisible(){this.columnAnimationService.isActive()?this.columnAnimationService.executeLaterVMTurn(()=>{this.columnAnimationService.executeLaterVMTurn(()=>this.updateScrollVisibleImpl())}):this.updateScrollVisibleImpl()}updateScrollVisibleImpl(){const e=this.ctrlsService.get("center");if(!e||this.columnAnimationService.isActive())return;const t={horizontalScrollShowing:e.isHorizontalScrollShowing(),verticalScrollShowing:this.isVerticalScrollShowing()};this.setScrollsVisible(t),this.updateScrollGap()}updateScrollGap(){const e=this.ctrlsService.get("center"),t=e.hasHorizontalScrollGap(),s=e.hasVerticalScrollGap();(this.horizontalScrollGap!==t||this.verticalScrollGap!==s)&&(this.horizontalScrollGap=t,this.verticalScrollGap=s,this.eventService.dispatchEvent({type:"scrollGapChanged"}))}setScrollsVisible(e){(this.horizontalScrollShowing!==e.horizontalScrollShowing||this.verticalScrollShowing!==e.verticalScrollShowing)&&(this.horizontalScrollShowing=e.horizontalScrollShowing,this.verticalScrollShowing=e.verticalScrollShowing,this.eventService.dispatchEvent({type:"scrollVisibilityChanged"}))}isHorizontalScrollShowing(){return this.horizontalScrollShowing}isVerticalScrollShowing(){return this.verticalScrollShowing}hasHorizontalScrollGap(){return this.horizontalScrollGap}hasVerticalScrollGap(){return this.verticalScrollGap}getScrollbarWidth(){if(this.scrollbarWidth==null){const e=this.gos.get("scrollbarWidth"),s=typeof e=="number"&&e>=0?e:sh();s!=null&&(this.scrollbarWidth=s,this.eventService.dispatchEvent({type:"scrollbarWidthChanged"}))}return this.scrollbarWidth}},tl="__ag_grid_instance",Ld=class Gd extends b{constructor(){super(...arguments),this.beanName="mouseEventService",this.gridInstanceId=Gd.gridInstanceSequence.next()}wireBeans(t){this.ctrlsService=t.ctrlsService}stampTopLevelGridCompWithGridInstance(t){t[tl]=this.gridInstanceId}getRenderedCellForEvent(t){return or(this.gos,t.target,rs.DOM_DATA_KEY_CELL_CTRL)}isEventFromThisGrid(t){return this.isElementInThisGrid(t.target)}isElementInThisGrid(t){let s=t;for(;s;){const i=s[tl];if(E(i))return i===this.gridInstanceId;s=s.parentElement}return!1}getCellPositionForEvent(t){const s=this.getRenderedCellForEvent(t);return s?s.getCellPosition():null}getNormalisedPosition(t){const s=De(this.gos,"normal"),i=t;let o,r;if(i.clientX!=null||i.clientY!=null?(o=i.clientX,r=i.clientY):(o=i.x,r=i.y),s){const n=this.ctrlsService.getGridBodyCtrl(),l=n.getScrollFeature
144().getVScrollPosition(),a=n.getScrollFeature().getHScrollPosition();o+=a.left,r+=l.top}return{x:o,y:r}}};Ld.gridInstanceSequence=new Ze;var Of=Ld,Nf=class extends b{constructor(){super(),this.beanName="navigationService",this.onPageDown=Nn(this.onPageDown,100),this.onPageUp=Nn(this.onPageUp,100)}wireBeans(e){this.mouseEventService=e.mouseEventService,this.pageBoundsService=e.pageBoundsService,this.focusService=e.focusService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.rowModel=e.rowModel,this.ctrlsService=e.ctrlsService,this.rowRenderer=e.rowRenderer,this.headerNavigationService=e.headerNavigationService,this.rowPositionUtils=e.rowPositionUtils,this.cellNavigationService=e.cellNavigationService,this.pinnedRowModel=e.pinnedRowModel,this.scrollVisibleService=e.scrollVisibleService,this.rangeService=e.rangeService}postConstruct(){this.ctrlsService.whenReady(this,e=>{this.gridBodyCon=e.gridBodyCtrl})}handlePageScrollingKey(e,t=!1){const s=e.key,i=e.altKey,o=e.ctrlKey||e.metaKey,r=!!this.rangeService&&e.shiftKey,n=this.mouseEventService.getCellPositionForEvent(e);let l=!1;switch(s){case S.PAGE_HOME:case S.PAGE_END:!o&&!i&&(this.onHomeOrEndKey(s),l=!0);break;case S.LEFT:case S.RIGHT:case S.UP:case S.DOWN:if(!n)return!1;o&&!i&&!r&&(this.onCtrlUpDownLeftRight(s,n),l=!0);break;case S.PAGE_DOWN:case S.PAGE_UP:!o&&!i&&(l=this.handlePageUpDown(s,n,t));break}return l&&e.preventDefault(),l}handlePageUpDown(e,t,s){return s&&(t=this.focusService.getFocusedCell()),t?(e===S.PAGE_UP?this.onPageUp(t):this.onPageDown(t),!0):!1}navigateTo(e){var n;const{scrollIndex:t,scrollType:s,scrollColumn:i,focusIndex:o,focusColumn:r}=e;E(i)&&!i.isPinned()&&this.gridBodyCon.getScrollFeature().ensureColumnVisible(i),E(t)&&this.gridBodyCon.getScrollFeature().ensureIndexVisible(t,s),e.isAsync||this.gridBodyCon.getScrollFeature().ensureIndexVisible(o),this.focusService.setFocusedCell({rowIndex:o,column:r,rowPinned:null,forceBrowserFocus:!0}),(n=this.rangeService)==null||n.setRangeToCell({rowIndex:o,rowPinned:null,column:r})}onPageDown(e){const s=this.ctrlsService.getGridBodyCtrl().getScrollFeature().getVScrollPosition(),i=this.getViewportHeight(),o=this.pageBoundsService.getPixelOffset(),r=s.top+i,n=this.rowModel.getRowIndexAtPixel(r+o);this.columnModel.isAutoRowHeightActive()?this.navigateToNextPageWithAutoHeight(e,n):this.navigateToNextPage(e,n)}onPageUp(e){const s=this.ctrlsService.getGridBodyCtrl().getScrollFeature().getVScrollPosition(),i=this.pageBoundsService.getPixelOffset(),o=s.top,r=this.rowModel.getRowIndexAtPixel(o+i);this.columnModel.isAutoRowHeightActive()?this.navigateToNextPageWithAutoHeight(e,r,!0):this.navigateToNextPage(e,r,!0)}navigateToNextPage(e,t,s=!1){const i=this.getViewportHeight(),o=this.pageBoundsService.getFirstRow(),r=this.pageBoundsService.getLastRow(),n=this.pageBoundsService.getPixelOffset(),l=this.rowModel.getRow(e.rowIndex),a=s?(l==null?void 0:l.rowHeight)-i-n:i-n,d=(l==null?void 0:l.rowTop)+a;let c=this.rowModel.getRowIndexAtPixel(d+n);if(c===e.rowIndex){const h=s?-1:1;t=c=e.rowIndex+h}let u;s?(u="bottom",c<o&&(c=o),t<o&&(t=o)):(u="top",c>r&&(c=r),t>r&&(t=r)),this.isRowTallerThanView(c)&&(t=c,u="top"),this.navigateTo({scrollIndex:t,scrollType:u,scrollColumn:null,focusIndex:c,focusColumn:e.column})}navigateToNextPageWithAutoHeight(e,t,s=!1){this.navigateTo({scrollIndex:t,scrollType:s?"bottom":"top",scrollColumn:null,focusIndex:t,focusColumn:e.column}),setTimeout(()=>{const i=this.getNextFocusIndexForAutoHeight(e,s);this.navigateTo({scrollIndex:t,scrollType:s?"bottom":"top",scrollColumn:null,focusIndex:i,focusColumn:e.column,isAsync:!0})},50)}getNextFocusIndexForAutoHeight(e,t=!1){const s=t?-1:1,i=this.getViewportHeight(),o=this.pageBoundsService.getLastRow();let r=0,n=e.rowIndex;for(;n>=0&&n<=o;){const l=this.rowModel.getRow(n);if(l){const a=l.rowHeight??0;if(r+a>i)break;r+=a}n+=s}return Math.max(0,Math.min(n,o))}getViewportHeight(){const e=this.ctrlsService.getGridBodyCtrl().getScrollFeature().getVScrollPosition(),t=this.scrollVisibleService.getScrollbarWidth();let s=e.bottom-e.top;
144return this.ctrlsService.get("center").isHorizontalScrollShowing()&&(s-=t),s}isRowTallerThanView(e){const t=this.rowModel.getRow(e);if(!t)return!1;const s=t.rowHeight;return typeof s!="number"?!1:s>this.getViewportHeight()}onCtrlUpDownLeftRight(e,t){const s=this.cellNavigationService.getNextCellToFocus(e,t,!0),{rowIndex:i}=s,o=s.column;this.navigateTo({scrollIndex:i,scrollType:null,scrollColumn:o,focusIndex:i,focusColumn:o})}onHomeOrEndKey(e){const t=e===S.PAGE_HOME,s=this.visibleColsService.getAllCols(),i=t?s[0]:W(s),o=t?this.pageBoundsService.getFirstRow():this.pageBoundsService.getLastRow();this.navigateTo({scrollIndex:o,scrollType:null,scrollColumn:i,focusIndex:o,focusColumn:i})}onTabKeyDown(e,t){const s=t.shiftKey,i=this.tabToNextCellCommon(e,s,t);if(i!==!1){i?t.preventDefault():i===null&&this.focusService.allowFocusForNextGridCoreContainer(s);return}if(s){const{rowIndex:o,rowPinned:r}=e.getRowPosition();(r?o===0:o===this.pageBoundsService.getFirstRow())&&(this.gos.get("headerHeight")===0||this.focusService.isHeaderFocusSuppressed()?this.focusService.focusNextGridCoreContainer(!0,!0):(t.preventDefault(),this.focusService.focusPreviousFromFirstCell(t)))}else e instanceof rs&&e.focusCell(!0),(!s&&this.focusService.focusOverlay(!1)||this.focusService.focusNextGridCoreContainer(s))&&t.preventDefault()}tabToNextCell(e,t){const s=this.focusService.getFocusedCell();if(!s)return!1;let i=this.getCellByPosition(s);return!i&&(i=this.rowRenderer.getRowByPosition(s),!i||!i.isFullWidth())?!1:!!this.tabToNextCellCommon(i,e,t)}tabToNextCellCommon(e,t,s){let i=e.isEditing();if(!i&&e instanceof rs){const n=e.getRowCtrl();n&&(i=n.isEditing())}let o;return i?this.gos.get("editType")==="fullRow"?o=this.moveToNextEditingRow(e,t,s):o=this.moveToNextEditingCell(e,t,s):o=this.moveToNextCellNotEditing(e,t),o===null?o:o||!!this.focusService.getFocusedHeader()}moveToNextEditingCell(e,t,s=null){const i=e.getCellPosition();e.getGui().focus(),e.stopEditing();const o=this.findNextCellToFocusOn(i,t,!0);return o===!1?null:o==null?!1:(o.startEditing(null,!0,s),o.focusCell(!1),!0)}moveToNextEditingRow(e,t,s=null){const i=e.getCellPosition(),o=this.findNextCellToFocusOn(i,t,!0);if(o===!1)return null;if(o==null)return!1;const r=o.getCellPosition(),n=this.isCellEditable(i),l=this.isCellEditable(r),a=r&&i.rowIndex===r.rowIndex&&i.rowPinned===r.rowPinned;return n&&e.setFocusOutOnEditor(),a||(e.getRowCtrl().stopEditing(),o.getRowCtrl().startRowEditing(void 0,void 0,s)),l?(o.setFocusInOnEditor(),o.focusCell()):o.focusCell(!0),!0}moveToNextCellNotEditing(e,t){const s=this.visibleColsService.getAllCols();let i;e instanceof ns?i={...e.getRowPosition(),column:t?s[0]:W(s)}:i=e.getCellPosition();const o=this.findNextCellToFocusOn(i,t,!1);if(o===!1)return null;if(o instanceof rs)o.focusCell(!0);else if(o)return this.tryToFocusFullWidthRow(o.getRowPosition(),t);return E(o)}findNextCellToFocusOn(e,t,s){var o;let i=e;for(;;){e!==i&&(e=i),t||(i=this.getLastCellOfColSpan(i)),i=this.cellNavigationService.getNextTabbedCell(i,t);const r=this.gos.getCallback("tabToNextCell");if(E(r)){const d=r({backwards:t,editing:s,previousCellPosition:e,nextCellPosition:i||null});if(d===!0||d===null)d===null&&R("Returning `null` from tabToNextCell is deprecated. Return `true` to stay on the current cell, or `false` to let the browser handle the tab behaviour."),i=e;else{if(d===!1)return!1;i={rowIndex:d.rowIndex,column:d.column,rowPinned:d.rowPinned}}}if(!i)return null;if(i.rowIndex<0){const a=this.headerNavigationService.getHeaderRowCount();return this.focusService.focusHeaderPosition({headerPosition:{headerRowIndex:a+i.rowIndex,column:i.column},fromCell:!0}),null}const n=this.gos.get("editType")==="fullRow";if(s&&!n&&!this.isCellEditable(i))continue;this.ensureCellVisible(i);const l=this.getCellByPosition(i);if(!l){const a=this.rowRenderer.getRowByPosition(i);if(!a||!a.isFullWidth()||s)continue;return a}if(!l.isSuppressNavigable())return(o=this.rangeService)==null||o.setRangeToCell(i),l}}isCellEditable(e){const t=this.lookupRowNodeForCell(e);return t?e.column.isCellEditable(t):!1}getCellByPosition(e){const t=this.rowRenderer.getRowByPosition(e);return t?t.getCellCtrl(e.column):null}lookupRowNodeForCell(e){return e.rowPinned==="top"?this.pinnedRowModel.getPinnedTopRow(e.rowIndex):e.rowPinned==="bottom"?this.pinnedRowModel.getPinnedBottomRow(e.rowIndex):this.rowModel.getRow(e.rowIndex)}navigateToNextCell(e,t,s,i){let o=s,r=!1;for(;o&&(o===s||!this.isValidNavigateCell(o));)this.gos.get("enableRtl")?t===S.LEFT&&(o=this.getLastCellOfColSpan(o)):t===S.RIGHT&&(
144o=this.getLastCellOfColSpan(o)),o=this.cellNavigationService.getNextCellToFocus(t,o),r=z(o);if(r&&e&&e.key===S.UP&&(o={rowIndex:-1,rowPinned:null,column:s.column}),i){const l=this.gos.getCallback("navigateToNextCell");if(E(l)){const d=l({key:t,previousCellPosition:s,nextCellPosition:o||null,event:e});E(d)?o={rowPinned:d.rowPinned,rowIndex:d.rowIndex,column:d.column}:o=null}}if(!o)return;if(o.rowIndex<0){const l=this.headerNavigationService.getHeaderRowCount();this.focusService.focusHeaderPosition({headerPosition:{headerRowIndex:l+o.rowIndex,column:s.column},event:e||void 0,fromCell:!0});return}const n=this.getNormalisedPosition(o);n?this.focusPosition(n):this.tryToFocusFullWidthRow(o)}getNormalisedPosition(e){this.ensureCellVisible(e);const t=this.getCellByPosition(e);return t?(e=t.getCellPosition(),this.ensureCellVisible(e),e):null}tryToFocusFullWidthRow(e,t){const s=this.visibleColsService.getAllCols(),i=this.rowRenderer.getRowByPosition(e);if(!i||!i.isFullWidth())return!1;const o=this.focusService.getFocusedCell(),r={rowIndex:e.rowIndex,rowPinned:e.rowPinned,column:e.column||(t?W(s):s[0])};this.focusPosition(r);const n=t??(o!=null&&this.rowPositionUtils.before(r,o));return this.eventService.dispatchEvent({type:"fullWidthRowFocused",rowIndex:r.rowIndex,rowPinned:r.rowPinned,column:r.column,isFullWidthCell:!0,fromBelow:n}),!0}focusPosition(e){var t;this.focusService.setFocusedCell({rowIndex:e.rowIndex,column:e.column,rowPinned:e.rowPinned,forceBrowserFocus:!0}),(t=this.rangeService)==null||t.setRangeToCell(e)}isValidNavigateCell(e){return!!this.rowPositionUtils.getRowNode(e)}getLastCellOfColSpan(e){const t=this.getCellByPosition(e);if(!t)return e;const s=t.getColSpanningList();return s.length===1?e:{rowIndex:e.rowIndex,column:W(s),rowPinned:e.rowPinned}}ensureCellVisible(e){const t=uo(this.gos),s=this.rowModel.getRow(e.rowIndex);!(t&&(s==null?void 0:s.sticky))&&z(e.rowPinned)&&this.gridBodyCon.getScrollFeature().ensureIndexVisible(e.rowIndex),e.column.isPinned()||this.gridBodyCon.getScrollFeature().ensureColumnVisible(e.column)}},Bf=class extends b{constructor(){super(...arguments),this.beanName="horizontalResizeService"}wireBeans(e){this.dragService=e.dragService,this.ctrlsService=e.ctrlsService}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};return this.dragService.addDragSource(t),()=>this.dragService.removeDragSource(t)}onDragStart(e,t){this.dragStartX=t.clientX,this.setResizeIcons();const s=t instanceof MouseEvent&&t.shiftKey===!0;e.onResizeStart(s)}setResizeIcons(){const e=this.ctrlsService.get("gridCtrl");e.setResizeCursor(!0),e.disableUserSelect(!0)}onDragStop(e){e.onResizeEnd(this.resizeAmount),this.resetIcons()}resetIcons(){const e=this.ctrlsService.get("gridCtrl");e.setResizeCursor(!1),e.disableUserSelect(!1)}onDragging(e,t){this.resizeAmount=t.clientX-this.dragStartX,e.onResizing(this.resizeAmount)}},Vf=class extends b{constructor(){super(...arguments),this.beanName="filterMenuFactory"}wireBeans(e){this.popupService=e.popupService,this.focusService=e.focusService,this.ctrlsService=e.ctrlsService,this.menuService=e.menuService}hideActiveMenu(){this.hidePopup&&this.hidePopup()}showMenuAfterMouseEvent(e,t,s){this.showPopup(e,i=>{this.popupService.positionPopupUnderMouseEvent({column:e,type:s,mouseEvent:t,ePopup:i})},s,t.target,this.menuService.isLegacyMenuEnabled())}showMenuAfterButtonClick(e,t,s){let i=-1,o="left";const r=this.menuService.isLegacyMenuEnabled();!r&&this.gos.get("enableRtl")&&(i=1,o="right");const n=r?void 0:4*i,l=r?void 0:4;this.showPopup(e,a=>{this.popupService.positionPopupByComponent({type:s,eventSource:t,ePopup:a,nudgeX:n,nudgeY:l,alignSide:o,keepWithinBounds:!0,position:"under",column:e})},s,t,r)}showPopup(e,t,s,i,o){const r=e?this.createBean(new Zr(e,"COLUMN_MENU")):void 0;if(this.activeMenu=r,!(r!=null&&r.hasFilter())||!e)throw new Error("AG Grid - unable to show popup filter, filter instantiation failed");const n=document.createElement("div");he(n,"presentation"),n.classList.add("ag-menu"),o||n.classList.add("ag-filter-menu"),[this.tabListener]=this.addManagedElementListeners(n,{keydown:g=>
144this.trapFocusWithin(g,n)}),n.appendChild(r==null?void 0:r.getGui());let l;const a=()=>r==null?void 0:r.afterGuiDetached(),d=this.menuService.isColumnMenuAnchoringEnabled()?i??this.ctrlsService.getGridBodyCtrl().getGui():void 0,c=g=>{e.setMenuVisible(!1,"contextMenu");const f=g instanceof KeyboardEvent;if(this.tabListener&&(this.tabListener=this.tabListener()),f&&i&&tt(i)){const m=this.focusService.findTabbableParent(i);m&&m.focus()}a(),this.destroyBean(this.activeMenu),this.dispatchVisibleChangedEvent(!1,s,e)},u=this.localeService.getLocaleTextFunc(),h=o&&s!=="columnFilter"?u("ariaLabelColumnMenu","Column Menu"):u("ariaLabelColumnFilter","Column Filter"),p=this.popupService.addPopup({modal:!0,eChild:n,closeOnEsc:!0,closedCallback:c,positionCallback:()=>t(n),anchorToElement:d,ariaLabel:h});p&&(this.hidePopup=l=p.hideFunc),r.afterInit().then(()=>{t(n),r.afterGuiAttached({container:s,hidePopup:l})}),e.setMenuVisible(!0,"contextMenu"),this.dispatchVisibleChangedEvent(!0,s,e)}trapFocusWithin(e,t){e.key!==S.TAB||e.defaultPrevented||this.focusService.findNextFocusableElement(t,!1,e.shiftKey)||(e.preventDefault(),this.focusService.focusInto(t,e.shiftKey))}dispatchVisibleChangedEvent(e,t,s){this.eventService.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:t,column:s??null,columnGroup:null})}isMenuEnabled(e){return e.isFilterAllowed()&&(e.getColDef().menuTabs??["filterMenuTab"]).includes("filterMenuTab")}showMenuAfterContextMenuEvent(){}destroy(){this.destroyBean(this.activeMenu),super.destroy()}},Hf=class extends b{constructor(){super(...arguments),this.beanName="resizeObserverService"}observeResize(e,t){const i=Ql(this.gos).ResizeObserver,o=i?new i(t):null;return o==null||o.observe(e),()=>o==null?void 0:o.disconnect()}},Wf=class extends b{constructor(){super(...arguments),this.beanName="animationFrameService",this.createTasksP1={list:[],sorted:!1},this.createTasksP2={list:[],sorted:!1},this.destroyTasks=[],this.ticking=!1,this.scrollGoingDown=!0,this.lastPage=0,this.lastScrollTop=0,this.taskCount=0,this.cancelledTasks=new Set}wireBeans(e){this.ctrlsService=e.ctrlsService,this.paginationService=e.paginationService}setScrollTop(e){var s;const t=this.gos.get("pagination");if(this.scrollGoingDown=e>=this.lastScrollTop,t&&e===0){const i=((s=this.paginationService)==null?void 0:s.getCurrentPage())??0;i!==this.lastPage&&(this.lastPage=i,this.scrollGoingDown=!0)}this.lastScrollTop=e}postConstruct(){this.useAnimationFrame=!this.gos.get("suppressAnimationFrame")}isOn(){return this.useAnimationFrame}verifyAnimationFrameOn(e){this.useAnimationFrame===!1&&R(`AnimationFrameService.${e} called but animation frames are off`)}createTask(e,t,s){this.verifyAnimationFrameOn(s);const i={task:e,index:t,createOrder:++this.taskCount};this.addTaskToList(this[s],i),this.schedule()}cancelTask(e){this.cancelledTasks.add(e)}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((s,i)=>s.index!==i.index?t*(i.index-s.index):i.createOrder-s.createOrder),e.sorted=!0}addDestroyTask(e){this.verifyAnimationFrameOn("createTasksP3"),this.destroyTasks.push(e),this.schedule()}executeFrame(e){this.verifyAnimationFrameOn("executeFrame");const t=this.createTasksP1,s=t.list,i=this.createTasksP2,o=i.list,r=this.destroyTasks,n=new Date().getTime();let l=new Date().getTime()-n;const a=e<=0,d=this.ctrlsService.getGridBodyCtrl();for(;a||l<e;){if(!d.getScrollFeature().scrollGridIfNeeded()){let u;if(s.length)this.sortTaskList(t),u=s.pop().task;else if(o.length)this.sortTaskList(i),u=o.pop().task;else if(r.length)u=r.pop();else{this.cancelledTasks.clear();break}this.cancelledTasks.has(u)||u()}l=new Date().getTime()-n}s.length||o.length||r.length?this.requestFrame():this.stopTicking()}stopTicking(){this.ticking=!1}flushAllFrames(){this.useAnimationFrame&&this.executeFrame(-1)}schedule(){this.useAnimationFrame&&(this.ticking||(this.ticking=!0,this.requestFrame()))}requestFrame(){const e=this.executeFrame.bind(this,60);this.requestAnimationFrame(e)}requestAnimationFrame(e){const t=Ql(this.gos);t.requestAnimationFrame?t.requestAnimationFrame(e):t.webkitRequestAnimationFrame?t.webkitRequestAnimationFrame(e):t.setTimeout(e,0)}isQueueEmpty(){return!this.ticking}debounce(e){let t=!1;return()=>{if(!this.isOn()){window.setTimeout(e,0);return}t||(t=!0,this.addDestroyTask(()=>{t=!1,e()}))}}},j=(e=>(e.EVERYTHING="group",e.FILTER="filter",e.SORT="sort",e.MAP="map",e.AGGREGATE="aggregate",e.FILTER_AGGREGATES="filter_aggregates",e.PIVOT="pivot",e.NOTHING="nothing",e))(j||{}),kd=class extends b{constructor(){super(...arguments),this.beanName="expansionService"}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.isClientSideRowModel=re(this.gos)}expandRows(e){if(!this.isClientSideRowModel)return;const t=new Set(e);this.rowModel.forEachNode(s=>{s.id&&t.has(s.id)&&(s.expanded=!0)}),this.onGroupExpandedOrCollapsed()}getExpandedRows(){const e=[];return this.rowModel.forEachNode(({expanded:t,id:s})=>{t&&s&&e.push(s)}),e}expandAll(e){this.isClientSideRowModel&&this.rowModel.expandOrCollapseAll(e)}setRowNodeExpanded(e,t,s,i){e&&(s&&e.parent&&e.parent.level!==-1&&this.setRowNodeExpanded(e.parent,t,s,i),e.setExpanded(t,void 0,i))}onGroupExpandedOrCollapsed(){this.isClientSideRowModel&&this.rowModel.refreshModel({step:"map"})}},zf=class extends b{constructor(){super(...arguments),this.beanName="menuService"}wireBeans(e){this.valueService=e.valueService,this.filterMenuFactory=e.filterMenuFactory,this.ctrlsService=e.ctrlsService,this.animationFrameService=e.animationFrameService,this.filterManager=e.filterManager,this.rowRenderer=e.rowRenderer,this.columnChooserFactory=e.columnChooserFactory,this.contextMenuFactory=e.contextMenuFactory,this.enterpriseMenuFactory=e.enterpriseMenuFactory}postConstruct(){this.activeMenuFactory=this.enterpriseMenuFactory??this.filterMenuFactory}showColumnMenu(e){this.showColumnMenuCommon(this.activeMenuFactory,e,"columnMenu")}showFilterMenu(e){const t=this.enterpriseMenuFactory&&this.isLegacyMenuEnabled()?this.enterpriseMenuFactory:this.filterMenuFactory;this.showColumnMenuCommon(t,e,e.containerType,!0)}showHeaderContextMenu(e,t,s){this.activeMenuFactory.showMenuAfterContextMenuEvent(e,t,s)}getContextMenuPosition(e,t){const s=this.getRowCtrl(e),i=this.getCellGui(s,t);if(!i)return s?{x:0,y:s.getRowYPosition()}:{x:0,y:0};const o=i.getBoundingClientRect();return{x:o.x+o.width/2,y:o.y+o.height/2}}showContextMenu(e){var r;const t=e.rowNode,s=e.column;let{anchorToElement:i,value:o}=e;t&&s&&o==null&&(o=this.valueService.getValueForDisplay(s,t)),i==null&&(i=this.getContextMenuAnchorElement(t,s)),(r=this.contextMenuFactory)==null||r.onContextMenu(e.mouseEvent??null,e.touchEvent??null,t??null,s??null,o,i)}showColumnChooser(e){var t;(t=this.columnChooserFactory)==null||t.showColumnChooser(e)}hidePopupMenu(){var e;(e=this.contextMenuFactory)==null||e.hideActiveMenu(),this.activeMenuFactory.hideActiveMenu()}hideColumnChooser(){var e;(e=this.columnChooserFactory)==null||e.hideActiveColumnChooser()}isColumnMenuInHeaderEnabled(e){const{suppressMenu:t,suppressHeaderMenuButton:s}=e.getColDef();return!(s??t)&&this.activeMenuFactory.isMenuEnabled(e)&&(this.isLegacyMenuEnabled()||!!this.enterpriseMenuFactory)}isFilterMenuInHeaderEnabled(e){var t;return!e.getColDef().suppressHeaderFilterButton&&!!((t=this.filterManager)!=null&&t.isFilterAllowed(e))}isHeaderContextMenuEnabled(e){const t=e&&bt(e)?e.getColDef():e==null?void 0:e.getColGroupDef();return!(t!=null&&t.suppressHeaderContextMenu)&&this.getColumnMenuType()==="new"}isHeaderMenuButtonAlwaysShowEnabled(){return this.isSuppressMenuHide()}isHeaderMenuButtonEnabled(){const e=!this.isSuppressMenuHide();return!(Gt()&&e)}isHeaderFilterButtonEnabled(e){return this.isFilterMenuInHeaderEnabled(e)&&!this.isLegacyMenuEnabled()&&!this.isFloatingFilterButtonDisplayed(e)}isFilterMenuItemEnabled(e){var t;return!!((t=this.filterManager)!=null&&t.isFilterAllowed(e))&&!this.isLegacyMenuEnabled()&&!this.isFilterMenuInHeaderEnabled(e)&&!this.isFloatingFilterButtonDisplayed(e)}isColumnMenuAnchoringEnabled(){return!this.isLegacyMenuEnabled()}areAdditionalColumnMenuItemsEnabled(){return this.getColumnMenuType()==="new"}isLegacyMenuEnabled(){return this.getColumnMenuType()==="legacy"}isFloatingFilterButtonEnabled(e){var i;const t=e.getColDef(),s=(i=t.floatingFilterComponentParams)==null?void 0:i.suppressFilterButton;return s!=null&&R("As of v31.1, 'colDef.floatingFilterComponentParams.suppressFilterButton' is deprecated. Use 'colDef.suppressFloatingFilterButton' instead."),t.suppressFloatingFilterButton==null?!s:!t.suppressFloatingFilterButton}getColumnMenuType(){return this.gos.get("columnMenu")}isFloatingFilterButtonDisplayed(e){return!!e.getColDef().floatingFilter&&this.isFloatingFilterButtonEnabled(e)}isSuppressMenuHide(){const e=this.gos.get("suppressMenuHide");return this.isLegacyMenuEnabled()?this.gos.exists("suppressMenuHide")?e:!1:e}showColumnMenuCommon(e,t,s,i){const{positionBy:o}=t,r=t.column;if(o==="button"){const{buttonElement:n}=t;e.showMenuAfterButtonClick(r,n,s,i)}
144else if(o==="mouse"){const{mouseEvent:n}=t;e.showMenuAfterMouseEvent(r,n,s,i)}else r&&(this.ctrlsService.getGridBodyCtrl().getScrollFeature().ensureColumnVisible(r,"auto"),this.animationFrameService.requestAnimationFrame(()=>{var l;const n=(l=this.ctrlsService.getHeaderRowContainerCtrl(r.getPinned()))==null?void 0:l.getHeaderCtrlForColumn(r);n&&e.showMenuAfterButtonClick(r,n.getAnchorElementForMenu(i),s,!0)}))}getRowCtrl(e){const{rowIndex:t,rowPinned:s}=e||{};if(t!=null)return this.rowRenderer.getRowByPosition({rowIndex:t,rowPinned:s})||void 0}getCellGui(e,t){if(!e||!t)return;const s=e.getCellCtrl(t);return(s==null?void 0:s.getGui())||void 0}getContextMenuAnchorElement(e,t){const s=this.ctrlsService.getGridBodyCtrl().getGridBodyElement(),i=this.getRowCtrl(e);if(!i)return s;const o=this.getCellGui(i,t);return o||(i.isFullWidth()?i.getFullWidthElement():s)}},Uf=class extends ts{constructor(e){super(e,"ag-text-area",null,"textarea")}setValue(e,t){const s=super.setValue(e,t);return this.eInput.value=e,s}setCols(e){return this.eInput.cols=e,this}setRows(e){return this.eInput.rows=e,this}},_f={selector:"AG-INPUT-TEXT-AREA",component:Uf},Kf=class extends Bs{constructor(){super(`<div class="ag-large-text"> 145 <ag-input-text-area data-ref="eTextArea" class="ag-large-text-input"></ag-input-text-area> 146 </div>`,[_f]),this.eTextArea=P}init(e){this.params=e,this.focusAfterAttached=e.cellStartedEdit,this.eTextArea.setMaxLength(e.maxLength||200).setCols(e.cols||60).setRows(e.rows||10),E(e.value,!0)&&this.eTextArea.setValue(e.value.toString(),!0),this.addGuiEventListener("keydown",this.onKeyDown.bind(this)),this.activateTabIndex()}onKeyDown(e){const t=e.key;(t===S.LEFT||t===S.UP||t===S.RIGHT||t===S.DOWN||e.shiftKey&&t===S.ENTER)&&e.stopPropagation()}afterGuiAttached(){const e=this.localeService.getLocaleTextFunc();this.eTextArea.setInputAriaLabel(e("ariaInputEditor","Input Editor")),this.focusAfterAttached&&this.eTextArea.getFocusableElement().focus()}getValue(){const e=this.eTextArea.getValue();return!E(e)&&!E(this.params.value)?this.params.value:this.params.parseValue(e)}},$f=class extends Bs{constructor(e){super('<div class="ag-popup-editor" tabindex="-1"/>'),this.params=e}postConstruct(){ls(this.gos,this.getGui(),"popupEditorWrapper",!0),this.addKeyDownListener()}addKeyDownListener(){const e=this.getGui(),t=this.params,s=i=>{gr(this.gos,i,t.node,t.column,!0)||t.onKeyDown(i)};this.addManagedElementListeners(e,{keydown:s})}},jf=class extends Bs{constructor(){super(`<div class="ag-cell-edit-wrapper"> 147 <ag-select class="ag-cell-editor" data-ref="eSelect"></ag-select> 148 </div>`,[cp]),this.eSelect=P,this.startedByEnter=!1}wireBeans(e){this.valueService=e.valueService}init(e){this.focusAfterAttached=e.cellStartedEdit;const{eSelect:t,valueService:s,gos:i}=this,{values:o,value:r,eventKey:n}=e;if(z(o)){R("no values found for select cellEditor");return}this.startedByEnter=n!=null?n===S.ENTER:!1;let l=!1;o.forEach(u=>{const h={value:u},p=s.formatValue(e.column,null,u),g=p!=null;h.text=g?p:u,t.addOption(h),l=l||r===u}),l?t.setValue(e.value,!0):e.values.length&&t.setValue(e.values[0],!0);const{valueListGap:a,valueListMaxWidth:d,valueListMaxHeight:c}=e;a!=null&&t.setPickerGap(a),c!=null&&t.setPickerMaxHeight(c),d!=null&&t.setPickerMaxWidth(d),i.get("editType")!=="fullRow"&&this.addManagedListeners(this.eSelect,{selectedItem:()=>e.stopEditing()})}afterGuiAttached(){this.focusAfterAttached&&this.eSelect.getFocusableElement().focus(),this.startedByEnter&&setTimeout(()=>{this.isAlive()&&this.eSelect.showPicker()})}focusIn(){this.eSelect.getFocusableElement().focus()}getValue(){return this.eSelect.getValue()}isPopup(){return!1}},bo=class extends Bs{constructor(e){super(` 149 <div class="ag-cell-edit-wrapper"> 150 ${e.getTemplate()} 151 </div>`,e.getAgComponents()),this.cellEditorInput=e,this.eInput=P}init(e){this.params=e;const{cellStartedEdit:t,eventKey:s,suppressPreventDefault:i}=e,o=this.eInput;this.cellEditorInput.init(o,e);let r,n=!0;t?(this.focusAfterAttached=!0,s===S.BACKSPACE||s===S.DELETE?r="":s&&s.length===1?i?n=!1:r=s:(r=this.cellEditorInput.getStartValue(),s!==S.F2&&(this.highlightAllOnFocus=!0))):(this.focusAfterAttached=!1,r=this.cellEditorInput.getStartValue()),n&&r!=null&&o.setStartValue(r),this.addManagedElementListeners(o.getGui(),{keydown:l=>{const{key:a}=l;(a===S.PAGE_UP||a===S.PAGE_DOWN)&&l.preventDefault()}})}afterGuiAttached(){var i,o;const e=this.localeService.getLocaleTextFunc(),t=this.eInput;if(t.setInputAriaLabel(e("ariaInputEditor","Input Editor")),!this.focusAfterAttached)return;Pt()||t.getFocusableElement().focus();const s=t.getInputElement();this.highlightAllOnFocus?s.select():(o=(i=this.cellEditorInput).setCaret)==null||o.call(i)}focusIn(){const e=this.eInput,t=e.getFocusableElement(),s=e.getInputElement();t.focus(),s.select()}getValue(){return this.cellEditorInput.getValue()}isPopup(){return!1}},qf=class{getTemplate(){return'<ag-input-text-field class="ag-cell-editor" data-ref="eInput"></ag-input-text-field>'}getAgComponents(){return[ps]}init(e,t){this.eInput=e,this.params=t,t.maxLength!=null&&e.setMaxLength(t.maxLength)}getValue(){const e=this.eInput.getValue();return!E(e)&&!E(this.params.value)?this.params.value:this.params.parseValue(e)}getStartValue(){return this.params.useFormatter||this.params.column.getColDef().refData?this.params.formatValue(this.params.value):this.params.value}setCaret(){const e=this.eInput.getValue(),t=E(e)&&e.length||0;t&&this.eInput.getInputElement().setSelectionRange(t,t)}},Od=class extends bo{constructor(){super(new qf)}},Yf=class{getTemplate(){return'<ag-input-number-field class="ag-cell-editor" data-ref="eInput"></ag-input-number-field>'}getAgComponents(){return[wp]}init(e,t){this.eInput=e,this.params=t,t.max!=null&&e.setMax(t.max),t.min!=null&&e.setMin(t.min),t.precision!=null&&e.setPrecision(t.precision),t.step!=null&&e.setStep(t.step);const s=e.getInputElement();t.preventStepping?e.addManagedElementListeners(s,{keydown:this.preventStepping}):t.showStepperButtons&&s.classList.add("ag-number-field-input-stepper")}preventStepping(e){(e.key===S.UP||e.key===S.DOWN)&&e.preventDefault()}getValue(){const e=this.eInput.getValue();if(!E(e)&&!E(this.params.value))return this.params.value;let t=this.params.parseValue(e);if(t==null)return t;if(typeof t=="string"){if(t==="")return null;t=Number(t)}return isNaN(t)?null:t}getStartValue(){return this.params.value}setCaret(){Pt()&&this.eInput.getInputElement().focus({preventScroll:!0})}},Qf=class extends bo{constructor(){super(new Yf)}},Xf=class extends Yt{constructor(e){super(e,"ag-date-field","date")}
151postConstruct(){super.postConstruct();const e=Pt();this.addManagedListeners(this.eInput,{wheel:this.onWheel.bind(this),mousedown:()=>{this.isDisabled()||e||this.eInput.focus()}}),this.eInput.step="any"}onWheel(e){Q(this.gos)===this.eInput&&e.preventDefault()}setMin(e){const t=e instanceof Date?lt(e??null,!1)??void 0:e;return this.min===t?this:(this.min=t,nt(this.eInput,"min",t),this)}setMax(e){const t=e instanceof Date?lt(e??null,!1)??void 0:e;return this.max===t?this:(this.max=t,nt(this.eInput,"max",t),this)}setStep(e){return this.step===e?this:(this.step=e,nt(this.eInput,"step",e),this)}getDate(){if(this.eInput.validity.valid)return je(this.getValue())??void 0}setDate(e,t){this.setValue(lt(e??null,!1),t)}},Nd={selector:"AG-INPUT-DATE-FIELD",component:Xf},Zf=class{getTemplate(){return'<ag-input-date-field class="ag-cell-editor" data-ref="eInput"></ag-input-date-field>'}getAgComponents(){return[Nd]}init(e,t){this.eInput=e,this.params=t,t.min!=null&&e.setMin(t.min),t.max!=null&&e.setMax(t.max),t.step!=null&&e.setStep(t.step)}getValue(){const e=this.eInput.getDate();return!E(e)&&!E(this.params.value)?this.params.value:e??null}getStartValue(){const{value:e}=this.params;if(e instanceof Date)return lt(e,!1)}},Jf=class extends bo{constructor(){super(new Zf)}},em=class{constructor(e){this.getDataTypeService=e}getTemplate(){return'<ag-input-date-field class="ag-cell-editor" data-ref="eInput"></ag-input-date-field>'}getAgComponents(){return[Nd]}init(e,t){this.eInput=e,this.params=t,t.min!=null&&e.setMin(t.min),t.max!=null&&e.setMax(t.max),t.step!=null&&e.setStep(t.step)}getValue(){const e=this.formatDate(this.eInput.getDate());return!E(e)&&!E(this.params.value)?this.params.value:this.params.parseValue(e??"")}getStartValue(){return lt(this.parseDate(this.params.value??void 0)??null,!1)}parseDate(e){const t=this.getDataTypeService();return t?t.getDateParserFunction(this.params.column)(e):je(e)??void 0}formatDate(e){const t=this.getDataTypeService();return t?t.getDateFormatterFunction(this.params.column)(e):lt(e??null,!1)??void 0}},tm=class extends bo{wireBeans(e){this.dataTypeService=e.dataTypeService}constructor(){super(new em(()=>this.dataTypeService))}},sm=class extends Bs{constructor(){super(` 152 <div class="ag-cell-wrapper ag-cell-edit-wrapper ag-checkbox-edit"> 153 <ag-checkbox role="presentation" data-ref="eCheckbox"></ag-checkbox> 154 </div>`,[hs]),this.eCheckbox=P}init(e){this.params=e;const t=e.value??void 0;this.eCheckbox.setValue(t),this.eCheckbox.getInputElement().setAttribute("tabindex","-1"),this.setAriaLabel(t),this.addManagedListeners(this.eCheckbox,{fieldValueChanged:i=>this.setAriaLabel(i.selected)})}getValue(){return this.eCheckbox.getValue()}focusIn(){this.eCheckbox.getFocusableElement().focus()}afterGuiAttached(){this.params.cellStartedEdit&&this.focusIn()}isPopup(){return!1}setAriaLabel(e){const t=this.localeService.getLocaleTextFunc(),s=Kr(t,e),i=t("ariaToggleCellValue","Press SPACE to toggle cell value");this.eCheckbox.setInputAriaLabel(`${i} (${s})`)}},Js=class{constructor(e){this.cellValueChanges=e}},Uo=class extends Js{constructor(e,t,s,i){super(e),this.initialRange=t,this.finalRange=s,this.ranges=i}},im=10,sl=class{constructor(e){this.actionStack=[],this.maxStackSize=e||im,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}},om=class extends b{constructor(){super(...arguments),this.beanName="undoRedoService",this.cellValueChanges=[],this.activeCellEdit=null,this.activeRowEdit=null,this.isPasting=!1,this.isRangeInAction=!1,this.onCellValueChanged=e=>{const t={column:e.column,rowIndex:e.rowIndex,rowPinned:e.rowPinned},s=this.activeCellEdit!==null&&this.cellPositionUtils.equals(this.activeCellEdit,t),i=this.activeRowEdit!==null&&this.rowPositionUtils.sameRow(this.activeRowEdit,t);if(!(s||i||this.isPasting||this.isRangeInAction))return;const{rowPinned:r,rowIndex:n,column:l,oldValue:a,value:d}=e,c={rowPinned:r,rowIndex:n,columnId:l.getColId(),newValue:d,oldValue:a};this.cellValueChanges.push(c)},this.clearStacks=()=>{this.undoStack.clear(),this.redoStack.clear()}}wireBeans(e){this.focusService=e.focusService,this.ctrlsService=e.ctrlsService,this.cellPositionUtils=e.cellPositionUtils,this.rowPositionUtils=e.rowPositionUtils,this.columnModel=e.columnModel,this.rangeService=e.rangeService}postConstruct(){if(!this.gos.get("undoRedoCellEditing"))return;const e=this.gos.get("undoRedoCellEditingLimit");if(e<=0)return;this.undoStack=new sl(e),this.redoStack=new sl(e),this.addListeners();const t=this.clearStacks.bind(this);this.addManagedEventListeners({cellValueChanged:this.onCellValueChanged.bind(this),modelUpdated:s=>{s.keepUndoRedoStack||this.clearStacks()},columnPivotModeChanged:t,newColumnsLoaded:t,columnGroupOpened:t,columnRowGroupChanged:t,columnMoved:t,columnPinned:t,columnVisible:t,rowDragEnd:t}),this.ctrlsService.whenReady(this,s=>{this.gridBodyCtrl=s.gridBodyCtrl})}getCurrentUndoStackSize(){return this.undoStack?this.undoStack.getCurrentStackSize():0}getCurrentRedoStackSize(){return this.redoStack?this.redoStack.getCurrentStackSize():0}undo(e){this.eventService.dispatchEvent({type:"undoStarted",source:e});const t=this.undoRedo(this.undoStack,this.redoStack,"initialRange","oldValue","undo");this.eventService.dispatchEvent({type:"undoEnded",source:e,operationPerformed:t})}redo(e){this.eventService.dispatchEvent({type:"redoStarted",source:e});const t=this.undoRedo(this.redoStack,this.undoStack,"finalRange","newValue","redo");this.eventService.dispatchEvent({type:"redoEnded",source:e,operationPerformed:t})}undoRedo(e,t,s,i,o){if(!e)return!1;const r=e.pop();return!r||!r.cellValueChanges?!1:(this.processAction(r,n=>n[i],o),r instanceof Uo?this.processRange(this.rangeService,r.ranges||[r[s]]):this.processCell(r.cellValueChanges),t.push(r),!0)}
154processAction(e,t,s){e.cellValueChanges.forEach(i=>{const{rowIndex:o,rowPinned:r,columnId:n}=i,l={rowIndex:o,rowPinned:r},a=this.rowPositionUtils.getRowNode(l);a.displayed&&a.setDataValue(n,t(i),s)})}processRange(e,t){let s;e.removeAllCellRanges(!0),t.forEach((i,o)=>{if(!i)return;const r=i.startRow,n=i.endRow;o===t.length-1&&(s={rowPinned:r.rowPinned,rowIndex:r.rowIndex,columnId:i.startColumn.getColId()},this.setLastFocusedCell(s));const l={rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,rowEndIndex:n.rowIndex,rowEndPinned:n.rowPinned,columnStart:i.startColumn,columns:i.columns};e.addCellRange(l)})}processCell(e){const t=e[0],{rowIndex:s,rowPinned:i}=t,o={rowIndex:s,rowPinned:i},r=this.rowPositionUtils.getRowNode(o),n={rowPinned:t.rowPinned,rowIndex:r.rowIndex,columnId:t.columnId};this.setLastFocusedCell(n,this.rangeService)}setLastFocusedCell(e,t){const{rowIndex:s,columnId:i,rowPinned:o}=e,r=this.gridBodyCtrl.getScrollFeature(),n=this.columnModel.getCol(i);if(!n)return;r.ensureIndexVisible(s),r.ensureColumnVisible(n);const l={rowIndex:s,column:n,rowPinned:o};this.focusService.setFocusedCell({...l,forceBrowserFocus:!0}),t==null||t.setRangeToCell(l)}addListeners(){this.addManagedEventListeners({rowEditingStarted:e=>{this.activeRowEdit={rowIndex:e.rowIndex,rowPinned:e.rowPinned}},rowEditingStopped:()=>{const e=new Js(this.cellValueChanges);this.pushActionsToUndoStack(e),this.activeRowEdit=null},cellEditingStarted:e=>{this.activeCellEdit={column:e.column,rowIndex:e.rowIndex,rowPinned:e.rowPinned}},cellEditingStopped:e=>{if(this.activeCellEdit=null,e.valueChanged&&!this.activeRowEdit&&!this.isPasting&&!this.isRangeInAction){const s=new Js(this.cellValueChanges);this.pushActionsToUndoStack(s)}},pasteStart:()=>{this.isPasting=!0},pasteEnd:()=>{const e=new Js(this.cellValueChanges);this.pushActionsToUndoStack(e),this.isPasting=!1},fillStart:()=>{this.isRangeInAction=!0},fillEnd:e=>{const t=new Uo(this.cellValueChanges,e.initialRange,e.finalRange);this.pushActionsToUndoStack(t),this.isRangeInAction=!1},keyShortcutChangedCellStart:()=>{this.isRangeInAction=!0},keyShortcutChangedCellEnd:()=>{let e;this.rangeService&&yt(this.gos)?e=new Uo(this.cellValueChanges,void 0,void 0,[...this.rangeService.getCellRanges()]):e=new Js(this.cellValueChanges),this.pushActionsToUndoStack(e),this.isRangeInAction=!1}})}pushActionsToUndoStack(e){this.undoStack.push(e),this.cellValueChanges=[],this.redoStack.clear()}};function rm(e){return e.ctrlsService.getGridBodyCtrl().getScrollFeature().getVScrollPosition()}function nm(e){return e.ctrlsService.getGridBodyCtrl().getScrollFeature().getHScrollPosition()}function Bd(e,t,s="auto"){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsService.getGridBodyCtrl().getScrollFeature().ensureColumnVisible(t,s),"ensureVisible")}function Vd(e,t,s){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsService.getGridBodyCtrl().getScrollFeature().ensureIndexVisible(t,s),"ensureVisible")}function lm(e,t,s=null){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsService.getGridBodyCtrl().getScrollFeature().ensureNodeVisible(t,s),"ensureVisible")}function am(e){var t;(t=e.undoRedoService)==null||t.undo("api")}function dm(e){var t;(t=e.undoRedoService)==null||t.redo("api")}function cm(e,t={}){return e.rowRenderer.getCellEditorInstances(t).map(Es)}function um(e){return e.rowRenderer.getEditingCells()}function hm(e,t=!1){e.rowRenderer.stopEditing(t)}function pm(e,t){const s=e.columnModel.getCol(t.colKey);if(!s){R(`no column found for ${t.colKey}`);return}const i={rowIndex:t.rowIndex,rowPinned:t.rowPinned||null,column:s};t.rowPinned==null&&Vd(e,t.rowIndex),Bd(e,t.colKey);const r=e.navigationService.getCellByPosition(i);if(!r)return;const{focusService:n,gos:l}=e,a=()=>{const c=Q(l),u=r.getGui();return c!==u&&!!(u!=null&&u.contains(c))},d=l.get("stopEditingWhenCellsLoseFocus")&&a();(d||!n.isCellFocused(i))&&n.setFocusedCell({...i,forceBrowserFocus:d,preventScrollOnBrowserFocus:!0}),r.startRowOrCellEdit(t.key)}function gm(e){var t;return((t=e.undoRedoService)==null?void 0:t.getCurrentUndoStackSize())??0}function fm(e){var t;return((t=e.undoRedoService)==null?void 0:t.getCurrentRedoStackSize())??0}var mm=class extends b{constructor(){super(...arguments),this.beanName="editService"}wireBeans(e){this.navigationService=e.navigationService,this.userComponentFactory=e.userComponentFactory,this.valueService=e.valueService}startEditing(e,t=null,s=!1,i=null){var d;const o=this.createCellEditorParams(e,t,s),r=e.getColumn().getColDef(),n=this.userComponentFactory.getCellEditorDetails(r,o),l=(n==null?void 0:n.popupFromSelector)!=null?n.popupFromSelector:!!r.cellEditorPopup,a=(n==null?void 0:n.popupPositionFromSelector)!=null?n.popupPositionFromSelector:r.cellEditorPopupPosition;return e.setEditing(!0,n),e.getComp().setEditDetails(n,l,a,this.gos.get("reactiveCustomComponents")),this.eventService.dispatchEvent(e.createEvent(i,"cellEditingStarted")),!((d=n==null?void 0:n.params)!=null&&d.suppressPreventDefault)}
154stopEditing(e,t){const s=e.getComp(),{newValue:i,newValueExists:o}=this.takeValueFromCellEditor(t,s),r=e.getRowNode(),n=e.getColumn(),l=this.valueService.getValueForDisplay(n,r);let a=!1;return o&&(a=this.saveNewValue(e,l,i,r,n)),e.setEditing(!1,void 0),s.setEditDetails(),e.updateAndFormatValue(!1),e.refreshCell({forceRefresh:!0,suppressFlash:!0}),this.eventService.dispatchEvent({...e.createEvent(null,"cellEditingStopped"),oldValue:l,newValue:i,valueChanged:a}),a}handleColDefChanged(e){const t=e.getCellEditor();if(t!=null&&t.refresh){const{eventKey:s,cellStartedEdit:i}=e.getEditCompDetails().params,o=this.createCellEditorParams(e,s,i),r=e.getColumn().getColDef(),n=this.userComponentFactory.getCellEditorDetails(r,o);t.refresh(n.params)}}setFocusOutOnEditor(e){const t=e.getComp().getCellEditor();t&&t.focusOut&&t.focusOut()}setFocusInOnEditor(e){const t=e.getComp(),s=t.getCellEditor();s!=null&&s.focusIn?s.focusIn():(e.focusCell(!0),e.onCellEditorAttached(()=>{var i,o;return(o=(i=t.getCellEditor())==null?void 0:i.focusIn)==null?void 0:o.call(i)}))}stopEditingAndFocus(e,t=!1,s=!1){e.stopRowOrCellEdit(),e.focusCell(!0),t||this.navigateAfterEdit(s,e.getCellPosition())}createPopupEditorWrapper(e){return new $f(e)}takeValueFromCellEditor(e,t){const s={newValueExists:!1};if(e)return s;const i=t.getCellEditor();return!i||i.isCancelAfterEnd&&i.isCancelAfterEnd()?s:{newValue:i.getValue(),newValueExists:!0}}saveNewValue(e,t,s,i,o){if(s===t)return!1;e.setSuppressRefreshCell(!0);const r=i.setDataValue(o,s,"edit");return e.setSuppressRefreshCell(!1),r}createCellEditorParams(e,t,s){const i=e.getColumn(),o=e.getRowNode();return this.gos.addGridCommonParams({value:this.valueService.getValueForDisplay(i,o),eventKey:t,column:i,colDef:i.getColDef(),rowIndex:e.getCellPosition().rowIndex,node:o,data:o.data,cellStartedEdit:s,onKeyDown:e.onKeyDown.bind(e),stopEditing:e.stopEditingAndFocus.bind(e),eGridCell:e.getGui(),parseValue:r=>this.valueService.parseValue(i,o,r,e.getValue()),formatValue:e.formatValue.bind(e)})}navigateAfterEdit(e,t){if(this.gos.get("enterNavigatesVerticallyAfterEdit")){const i=e?S.UP:S.DOWN;this.navigationService.navigateToNextCell(null,i,t,!1)}}},Cm=class extends b{constructor(){super(...arguments),this.beanName="rowEditService"}startEditing(e,t=null,s=null,i=null){let o=!0;return e.getAllCellCtrls().reduce((n,l)=>{const a=l===s;return a?o=l.startEditing(t,a,i):l.startEditing(null,a,i),n?!0:l.isEditing()},!1)&&this.setEditing(e,!0),o}stopEditing(e,t=!1){const s=e.getAllCellCtrls(),i=e.isEditing();e.setStoppingRowEdit(!0);let o=!1;for(const r of s){const n=r.stopEditing(t);i&&!t&&!o&&n&&(o=!0)}o&&this.eventService.dispatchEvent(e.createRowEvent("rowValueChanged")),i&&this.setEditing(e,!1),e.setStoppingRowEdit(!1)}setEditing(e,t){e.setEditingRow(t),e.forEachGui(void 0,i=>i.rowComp.addOrRemoveCssClass("ag-row-editing",t));const s=t?e.createRowEvent("rowEditingStarted"):e.createRowEvent("rowEditingStopped");this.eventService.dispatchEvent(s)}},gs={version:V,moduleName:"@ag-grid-community/edit-core",beans:[mm]},vm={version:V,moduleName:"@ag-grid-community/edit-api",apiFunctions:{undoCellEditing:am,redoCellEditing:dm,getCellEditorInstances:cm,getEditingCells:um,stopEditing:hm,startEditingCell:pm,getCurrentUndoSize:gm,getCurrentRedoSize:fm},dependantModules:[gs]},Sm={version:V,moduleName:"@ag-grid-community/undo-redo-edit",beans:[om],dependantModules:[gs]},wm={version:V,moduleName:"@ag-grid-community/full-row-edit",beans:[Cm],dependantModules:[gs]},Hd={version:V,moduleName:"@ag-grid-community/default-editor",userComponents:[{name:"agCellEditor",classImp:Od}],dependantModules:[gs]},ym={version:V,moduleName:"@ag-grid-community/data-type-editors",userComponents:[{name:"agTextCellEditor",classImp:Od},{name:"agNumberCellEditor",classImp:Qf,params:{suppressPreventDefault:!0}},{name:"agDateCellEditor",classImp:Jf},{name:"agDateStringCellEditor",classImp:tm},{name:"agCheckboxCellEditor",classImp:sm}],dependantModules:[Hd]},Rm={version:V,moduleName:"@ag-grid-community/select-editor",userComponents:[{name:"agSelectCellEditor",classImp:jf}],dependantModules:[gs]},bm={version:V,moduleName:"@ag-grid-community/large-text-editor",userComponents:[{name:"agLargeTextCellEditor",classImp:Kf}],dependantModules:[gs]},Fm={version:V,moduleName:"@ag-grid-community/all-editors",dependantModules:[Hd,ym,Rm,bm]},Pm={version:V,moduleName:"@ag-grid-community/editing",dependantModules:[gs,Sm,wm,Fm,vm]},Em=class extends b{constructor(){super(...arguments),this.beanName="autoWidthCalculator"}wireBeans(e){this.rowRenderer=e.rowRenderer,this.ctrlsService=e.ctrlsService}postConstruct(){this.ctrlsService.whenReady(this,e=>{this.centerRowContainerCtrl=e.center})}getPreferredWidthForColumn(e,t){const s=this.getHeaderCellForColumn(e);if(!s)return-1;const i=this.rowRenderer.getAllCellsForColumn(e);return t||i.push(s),this.addElementsToContainerAndGetWidth(i)}getPreferredWidthForColumnGroup(e){const t=this.getHeaderCellForColumn(e);return t?this.addElementsToContainerAndGetWidth([t]):-1}addElementsToContainerAndGetWidth(e){const t=document.createElement("form");t.style.position="fixed";const s=this.centerRowContainerCtrl.getContainerElement();e.forEach(r=>this.cloneItemIntoDummy(r,t)),s.appendChild(t);const i=t.offsetWidth;s.removeChild(t);const o=this.getAutoSizePadding();return i+o}getAutoSizePadding(){return this.gos.get("autoSizePadding")}getHeaderCellForColumn(e){let t=null;
154return this.ctrlsService.getHeaderRowContainerCtrls().forEach(s=>{const i=s.getHtmlElementForColumnHeader(e);i!=null&&(t=i)}),t}cloneItemIntoDummy(e,t){const s=e.cloneNode(!0);s.style.width="",s.style.position="static",s.style.left="";const i=document.createElement("div"),o=i.classList;["ag-header-cell","ag-header-group-cell"].some(l=>s.classList.contains(l))?(o.add("ag-header","ag-header-row"),i.style.position="static"):o.add("ag-row");let n=e.parentElement;for(;n;){if(["ag-header-row","ag-row"].some(a=>n.classList.contains(a))){for(let a=0;a<n.classList.length;a++){const d=n.classList[a];d!="ag-row-position-absolute"&&o.add(d)}break}n=n.parentElement}i.appendChild(s),t.appendChild(i)}},Mm=class extends b{constructor(e,t){super(),this.createRowCon=e,this.destroyRowCtrls=t,this.stickyTopRowCtrls=[],this.stickyBottomRowCtrls=[],this.extraTopHeight=0,this.extraBottomHeight=0}wireBeans(e){this.rowModel=e.rowModel,this.rowRenderer=e.rowRenderer,this.ctrlsService=e.ctrlsService,this.pageBoundsService=e.pageBoundsService}postConstruct(){this.isClientSide=re(this.gos),this.ctrlsService.whenReady(this,e=>{this.gridBodyCtrl=e.gridBodyCtrl}),this.resetStickyContainers()}getStickyTopRowCtrls(){return this.stickyTopRowCtrls}getStickyBottomRowCtrls(){return this.stickyBottomRowCtrls}setOffsetTop(e){this.extraTopHeight!==e&&(this.extraTopHeight=e,this.eventService.dispatchEvent({type:"stickyTopOffsetChanged",offset:e}))}setOffsetBottom(e){this.extraBottomHeight!==e&&(this.extraBottomHeight=e)}resetOffsets(){this.setOffsetBottom(0),this.setOffsetTop(0)}getExtraTopHeight(){return this.extraTopHeight}getExtraBottomHeight(){return this.extraBottomHeight}getLastPixelOfGroup(e){return this.isClientSide?this.getClientSideLastPixelOfGroup(e):this.getServerSideLastPixelOfGroup(e)}getFirstPixelOfGroup(e){return e.footer?e.sibling.rowTop+e.sibling.rowHeight-1:e.hasChildren()?e.rowTop-1:0}getServerSideLastPixelOfGroup(e){var t,s;if(this.isClientSide)throw new Error("This func should only be called in server side row model.");if(e.isExpandable()||e.footer){if(e.master)return e.detailNode.rowTop+e.detailNode.rowHeight;if(!e.sibling||Math.abs(e.sibling.rowIndex-e.rowIndex)===1){let o=(t=e.childStore)==null?void 0:t.getStoreBounds();return e.footer&&(o=(s=e.sibling.childStore)==null?void 0:s.getStoreBounds()),((o==null?void 0:o.heightPx)??0)+((o==null?void 0:o.topPx)??0)}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return Number.MAX_SAFE_INTEGER}getClientSideLastPixelOfGroup(e){if(!this.isClientSide)throw new Error("This func should only be called in client side row model.");if(e.isExpandable()||e.footer){if(e.footer&&e.rowIndex===0)return Number.MAX_SAFE_INTEGER;if(!e.sibling||Math.abs(e.sibling.rowIndex-e.rowIndex)===1){let i=e.footer?e.sibling:e;for(;i.isExpandable()&&i.expanded;)if(i.master)i=i.detailNode;else if(i.childrenAfterSort){if(i.childrenAfterSort.length===0)break;i=W(i.childrenAfterSort)}return i.rowTop+i.rowHeight}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return Number.MAX_SAFE_INTEGER}updateStickyRows(e){const t=e==="top";let s=0;if(!this.canRowsBeSticky())return this.refreshNodesAndContainerHeight(e,new Set,s);const i=t?this.rowRenderer.getFirstVisibleVerticalPixel()-this.extraTopHeight:this.rowRenderer.getLastVisibleVerticalPixel()-this.extraTopHeight,o=new Set,r=d=>{if(o.add(d),t){const c=this.getLastPixelOfGroup(d),u=i+s+d.rowHeight;c<u?d.stickyRowTop=s+(c-u):d.stickyRowTop=s}else{const c=this.getFirstPixelOfGroup(d),u=i-(s+d.rowHeight);c>u?d.stickyRowTop=s-(c-u):d.stickyRowTop=s}s=0,o.forEach(c=>{const u=c.stickyRowTop+c.rowHeight;s<u&&(s=u)})},n=this.areFooterRowsStickySuppressed(),l=this.gos.get("suppressGroupRowsSticky"),a=d=>{if(!d.displayed)return!1;if(d.footer){if(n===!0||n==="grand"&&d.level===-1||n==="group"&&d.level>-1)return!1;const c=d.sibling.rowIndex?d.sibling.rowIndex+1===d.rowIndex:!1;return e==="bottom"&&c?!1:!o.has(d)}return d.isExpandable()?l===!0||e==="bottom"?!1:!o.has(d)&&d.expanded:!1};for(let d=0;d<100;d++){let c=i+s;t||(c=i-s);const u=this.rowModel.getRowIndexAtPixel(c),h=this.rowModel.getRow(u);if(h==null)break;const g=this.getStickyAncestors(h).find(m=>(t?m.rowIndex<u:m.rowIndex>u)&&a(m));if(g){r(g);continue}if((t?h.rowTop<c:h.rowTop+h.rowHeight>c)&&a(h)){r(h);continue}break}return t||o.forEach(d=>{d.stickyRowTop=s-(d.stickyRowTop+d.rowHeight)}),this.refreshNodesAndContainerHeight(e,o,s)}areFooterRowsStickySuppressed(){const e=this.gos.get("suppressStickyTotalRow");if(e===!0)return!0;const t=!!this.gos.get("groupIncludeFooter")||e==="group",s=!!this.gos.get("groupIncludeTotalFooter")||e==="grand";return t&&s?!0:s?"grand":t?"group":!1}canRowsBeSticky(){const e=uo(this.gos),t=this.areFooterRowsStickySuppressed(),s=this.gos.get("suppressGroupRowsSticky");return e&&(!t||!s)}getStickyAncestors(e){const t=[];let s=e.footer?e.sibling:e.parent;for(;s;)s.sibling&&t.push(s.sibling),t.push(s),s=s.parent;return t.reverse()}checkStickyRows(){const e=this.updateStickyRows("top"),t=this.updateStickyRows("bottom");return e||t}destroyStickyCtrls(){this.resetStickyContainers()}resetStickyContainers(){this.refreshNodesAndContainerHeight("top",new Set,0),this.refreshNodesAndContainerHeight("bottom",new Set,0)}refreshStickyNode(e){const t=new Set;if(this.stickyTopRowCtrls.some(s=>s.getRowNode()===e)){for(let s=0;s<this.stickyTopRowCtrls.length;s++){const i=this.stickyTopRowCtrls[s].getRowNode();i!==e&&t.add(i)}this.refreshNodesAndContainerHeight("top",t,this.topContainerHeight)&&this.checkStickyRows();return}for(let s=0;s<this.stickyBottomRowCtrls.length;s++){const i=this.stickyBottomRowCtrls[s].getRowNode();i!==e&&t.add(i)}this.refreshNodesAndContainerHeight("bottom",t,this.bottomContainerHeight)&&this.checkStickyRows()}
154refreshNodesAndContainerHeight(e,t,s){const i=e==="top",o=i?this.stickyTopRowCtrls:this.stickyBottomRowCtrls,r={},n=[];for(let h=0;h<o.length;h++){const p=o[h].getRowNode();if(!t.has(p)){r[p.id]=o[h],p.sticky=!1;continue}n.push(o[h])}const l=new Set;for(let h=0;h<n.length;h++)l.add(n[h].getRowNode());const a=[];t.forEach(h=>{l.has(h)||(h.sticky=!0,a.push(this.createRowCon(h,!1,!1)))});let d=!!a.length||n.length!==o.length;i?this.topContainerHeight!==s&&(this.topContainerHeight=s,this.gridBodyCtrl.setStickyTopHeight(s),d=!0):this.bottomContainerHeight!==s&&(this.bottomContainerHeight=s,this.gridBodyCtrl.setStickyBottomHeight(s),d=!0),this.destroyRowCtrls(r,!1);const c=[...n,...a];c.sort((h,p)=>p.getRowNode().rowIndex-h.getRowNode().rowIndex),i||c.reverse(),c.forEach(h=>h.setRowTop(h.getRowNode().stickyRowTop));let u=0;return i?(t.forEach(h=>{h.rowIndex<this.pageBoundsService.getFirstRow()&&(u+=h.rowHeight)}),u>this.topContainerHeight&&(u=this.topContainerHeight),this.setOffsetTop(u)):(t.forEach(h=>{h.rowIndex>this.pageBoundsService.getLastRow()&&(u+=h.rowHeight)}),u>this.bottomContainerHeight&&(u=this.bottomContainerHeight),this.setOffsetBottom(u)),d?(i?this.stickyTopRowCtrls=c:this.stickyBottomRowCtrls=c,!0):!1}ensureRowHeightsValid(){let e=!1;const t=s=>{const i=s.getRowNode();if(i.rowHeightEstimated){const o=Ge(this.gos,i);i.setRowHeight(o.height),e=!0}};return this.stickyTopRowCtrls.forEach(t),this.stickyBottomRowCtrls.forEach(t),e}},Dm=class extends b{constructor(){super(...arguments),this.beanName="rowRenderer",this.destroyFuncsForColumnListeners=[],this.rowCtrlsByRowIndex={},this.zombieRowCtrls={},this.allRowCtrls=[],this.topRowCtrls=[],this.bottomRowCtrls=[],this.refreshInProgress=!1,this.dataFirstRenderedFired=!1,this.setupRangeSelectionListeners=()=>{const e=()=>{this.getAllCellCtrls().forEach(r=>r.onCellSelectionChanged())},t=()=>{this.getAllCellCtrls().forEach(r=>r.updateRangeBordersIfRangeCount())},s=()=>{this.eventService.addEventListener("cellSelectionChanged",e),this.eventService.addEventListener("columnMoved",t),this.eventService.addEventListener("columnPinned",t),this.eventService.addEventListener("columnVisible",t)},i=()=>{this.eventService.removeEventListener("cellSelectionChanged",e),this.eventService.removeEventListener("columnMoved",t),this.eventService.removeEventListener("columnPinned",t),this.eventService.removeEventListener("columnVisible",t)};this.addDestroyFunc(()=>i()),this.addManagedPropertyListeners(["enableRangeSelection","cellSelection"],()=>{yt(this.gos)?s():i()}),yt(this.gos)&&s()}}wireBeans(e){this.animationFrameService=e.animationFrameService,this.paginationService=e.paginationService,this.pageBoundsService=e.pageBoundsService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.pinnedRowModel=e.pinnedRowModel,this.rowModel=e.rowModel,this.focusService=e.focusService,this.beans=e,this.rowContainerHeightService=e.rowContainerHeightService,this.ctrlsService=e.ctrlsService,this.environment=e.environment}postConstruct(){this.ctrlsService.whenReady(this,e=>{this.gridBodyCtrl=e.gridBodyCtrl,this.initialise()})}initialise(){this.addManagedEventListeners({paginationChanged:this.onPageLoaded.bind(this),pinnedRowDataChanged:this.onPinnedRowDataChanged.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","rowSelection"],()=>this.redrawRows()),uo(this.gos)&&(re(this.gos)||Ue(this.gos))&&(this.stickyRowFeature=this.createManagedBean(new Mm(this.createRowCon.bind(this),this.destroyRowCtrls.bind(this)))),this.registerCellEventListeners(),this.initialiseCache(),this.printLayout=De(this.gos,"print"),this.embedFullWidthRows=this.printLayout||this.gos.get("embedFullWidthRows"),this.redrawAfterModelUpdate()}initialiseCache(){if(this.gos.get("keepDetailRows")){const e=this.getKeepDetailRowsCount(),t=e??3;this.cachedRowCtrls=new xm(t)}}getKeepDetailRowsCount(){return this.gos.get("keepDetailRowsCount")}getStickyTopRowCtrls(){return this.stickyRowFeature?this.stickyRowFeature.getStickyTopRowCtrls():[]}getStickyBottomRowCtrls(){return this.stickyRowFeature?this.stickyRowFeature.getStickyBottomRowCtrls():[]}updateAllRowCtrls(){const e=jt(this.rowCtrlsByRowIndex),t=jt(this.zombieRowCtrls),s=this.cachedRowCtrls?this.cachedRowCtrls.getEntries():[];t.length>0||s.length>0?this.allRowCtrls=[...e,...t,...s]:this.allRowCtrls=e}
154onCellFocusChanged(e){this.getAllCellCtrls().forEach(t=>t.onCellFocused(e)),this.getFullWidthRowCtrls().forEach(t=>t.onFullWidthRowFocused(e))}onSuppressCellFocusChanged(e){this.getAllCellCtrls().forEach(t=>t.onSuppressCellFocusChanged(e)),this.getFullWidthRowCtrls().forEach(t=>t.onSuppressCellFocusChanged(e))}registerCellEventListeners(){this.addManagedEventListeners({cellFocused:e=>{this.onCellFocusChanged(e)},cellFocusCleared:()=>this.onCellFocusChanged(),flashCells:e=>{this.getAllCellCtrls().forEach(t=>t.onFlashCells(e))},columnHoverChanged:()=>{this.getAllCellCtrls().forEach(e=>e.onColumnHover())},displayedColumnsChanged:()=>{this.getAllCellCtrls().forEach(e=>e.onDisplayedColumnsChanged())},displayedColumnsWidthChanged:()=>{this.printLayout&&this.getAllCellCtrls().forEach(e=>e.onLeftChanged())}}),this.setupRangeSelectionListeners(),this.refreshListenersToColumnsForCellComps(),this.addManagedEventListeners({gridColumnsChanged:this.refreshListenersToColumnsForCellComps.bind(this)}),this.addDestroyFunc(this.removeGridColumnListeners.bind(this))}removeGridColumnListeners(){this.destroyFuncsForColumnListeners.forEach(e=>e()),this.destroyFuncsForColumnListeners.length=0}refreshListenersToColumnsForCellComps(){this.removeGridColumnListeners(),this.columnModel.getCols().forEach(t=>{const s=a=>{this.getAllCellCtrls().forEach(d=>{d.getColumn()===t&&a(d)})},i=()=>{s(a=>a.onLeftChanged())},o=()=>{s(a=>a.onWidthChanged())},r=()=>{s(a=>a.onFirstRightPinnedChanged())},n=()=>{s(a=>a.onLastLeftPinnedChanged())},l=()=>{s(a=>a.onColDefChanged())};t.addEventListener("leftChanged",i),t.addEventListener("widthChanged",o),t.addEventListener("firstRightPinnedChanged",r),t.addEventListener("lastLeftPinnedChanged",n),t.addEventListener("colDefChanged",l),this.destroyFuncsForColumnListeners.push(()=>{t.removeEventListener("leftChanged",i),t.removeEventListener("widthChanged",o),t.removeEventListener("firstRightPinnedChanged",r),t.removeEventListener("lastLeftPinnedChanged",n),t.removeEventListener("colDefChanged",l)})})}onDomLayoutChanged(){const e=De(this.gos,"print"),t=e||this.gos.get("embedFullWidthRows"),s=t!==this.embedFullWidthRows||this.printLayout!==e;this.printLayout=e,this.embedFullWidthRows=t,s&&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)}getAllCellsForColumn(e){const t=[];return this.getAllRowCtrls().forEach(s=>{const i=s.getCellElement(e);i&&t.push(i)}),t}refreshFloatingRowComps(){this.refreshFloatingRows(this.topRowCtrls,"top"),this.refreshFloatingRows(this.bottomRowCtrls,"bottom")}getTopRowCtrls(){return this.topRowCtrls}getCentreRowCtrls(){return this.allRowCtrls}getBottomRowCtrls(){return this.bottomRowCtrls}refreshFloatingRows(e,t){const{pinnedRowModel:s,beans:i,printLayout:o}=this,r=Object.fromEntries(e.map(l=>[l.getRowNode().id,l]));s.forEachPinnedRow(t,(l,a)=>{const d=e[a];d&&s.getPinnedRowById(d.getRowNode().id,t)===void 0&&(d.destroyFirstPass(),d.destroySecondPass()),l.id in r?(e[a]=r[l.id],delete r[l.id]):e[a]=new ns(l,i,!1,!1,o)});const n=t==="top"?s.getPinnedTopRowCount():s.getPinnedBottomRowCount();e.length=n}onPinnedRowDataChanged(){const e={recycleRows:!0};this.redrawAfterModelUpdate(e)}redrawRow(e,t=!1){var s;if(e.sticky)this.stickyRowFeature.refreshStickyNode(e);else if((s=this.cachedRowCtrls)!=null&&s.has(e)){this.cachedRowCtrls.removeRow(e);return}else{const i=o=>{const r=o[e.rowIndex];r&&r.getRowNode()===e&&(r.destroyFirstPass(),r.destroySecondPass(),o[e.rowIndex]=this.createRowCon(e,!1,!1))};switch(e.rowPinned){case"top":i(this.topRowCtrls);break;case"bottom":i(this.bottomRowCtrls);break;default:i(this.rowCtrlsByRowIndex),this.updateAllRowCtrls()}}t||this.dispatchDisplayedRowsChanged(!1)}redrawRows(e){if(e!=null){e==null||e.forEach(s=>this.redrawRow(s,!0)),this.dispatchDisplayedRowsChanged(!1);return}this.redrawAfterModelUpdate()}getCellToRestoreFocusToAfterRefresh(e){const t=e!=null&&e.suppressKeepFocus?null:this.focusService.getFocusCellToUseAfterRefresh();if(t==null)return null;const s=Q(this.gos),i=hi(this.gos,s,rs.DOM_DATA_KEY_CELL_CTRL),o=hi(this.gos,s,ns.DOM_DATA_KEY_ROW_CTRL);return i||o?t:null}redrawAfterModelUpdate(e={}){this.getLockOnRefresh();const t=this.getCellToRestoreFocusToAfterRefresh(e);this.updateContainerHeights(),this.scrollToTopIfNewData(e);
154const s=!e.domLayoutChanged&&!!e.recycleRows,i=e.animate&&bs(this.gos),o=s?this.getRowsToRecycle():null;if(s||this.removeAllRowComps(),this.workOutFirstAndLastRowsToRender(),this.stickyRowFeature){this.stickyRowFeature.checkStickyRows();const r=this.stickyRowFeature.getExtraTopHeight()+this.stickyRowFeature.getExtraBottomHeight();r&&this.updateContainerHeights(r)}this.recycleRows(o,i),this.gridBodyCtrl.updateRowCount(),e.onlyBody||this.refreshFloatingRowComps(),this.dispatchDisplayedRowsChanged(),t!=null&&this.restoreFocusedCell(t),this.releaseLockOnRefresh()}scrollToTopIfNewData(e){var i;const t=e.newData||e.newPage,s=this.gos.get("suppressScrollOnNewData");t&&!s&&(this.gridBodyCtrl.getScrollFeature().scrollToTop(),(i=this.stickyRowFeature)==null||i.resetOffsets())}updateContainerHeights(e=0){if(this.printLayout){this.rowContainerHeightService.setModelHeight(null);return}let t=this.pageBoundsService.getCurrentPageHeight();t===0&&(t=1),this.rowContainerHeightService.setModelHeight(t+e)}getLockOnRefresh(){var e,t;if(this.refreshInProgress)throw new Error("AG Grid: cannot get grid to draw rows when it is in the middle of drawing rows. Your code probably called a grid API method while the grid was in the render stage. To overcome this, put the API call into a timeout, e.g. instead of api.redrawRows(), call setTimeout(function() { api.redrawRows(); }
154, 0). To see what part of your code that caused the refresh check this stacktrace.");this.refreshInProgress=!0,(t=(e=this.frameworkOverrides).getLockOnRefresh)==null||t.call(e)}releaseLockOnRefresh(){var e,t;this.refreshInProgress=!1,(t=(e=this.frameworkOverrides).releaseLockOnRefresh)==null||t.call(e)}isRefreshInProgress(){return this.refreshInProgress}restoreFocusedCell(e){e&&this.focusService.restoreFocusedCell(e,()=>{this.onCellFocusChanged(this.gos.addGridCommonParams({rowIndex:e.rowIndex,column:e.column,rowPinned:e.rowPinned,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0,type:"cellFocused"}))})}stopEditing(e=!1){this.getAllRowCtrls().forEach(t=>{t.stopEditing(e)})}getAllCellCtrls(){const e=[],t=this.getAllRowCtrls(),s=t.length;for(let i=0;i<s;i++){const o=t[i].getAllCellCtrls(),r=o.length;for(let n=0;n<r;n++)e.push(o[n])}return e}getAllRowCtrls(){const e=this.stickyRowFeature&&this.stickyRowFeature.getStickyTopRowCtrls()||[],t=this.stickyRowFeature&&this.stickyRowFeature.getStickyBottomRowCtrls()||[],s=[...this.topRowCtrls,...this.bottomRowCtrls,...e,...t];for(const i in this.rowCtrlsByRowIndex)s.push(this.rowCtrlsByRowIndex[i]);return s}addRenderedRowListener(e,t,s){const i=this.rowCtrlsByRowIndex[t];i&&i.addEventListener(e,s)}flashCells(e={}){this.getCellCtrls(e.rowNodes,e.columns).forEach(t=>t.flashCell(e))}refreshCells(e={}){const t={forceRefresh:e.force,newData:!1,suppressFlash:e.suppressFlash};for(const s of this.getCellCtrls(e.rowNodes,e.columns))s.refreshOrDestroyCell(t);this.refreshFullWidth(e.rowNodes)}refreshFullWidth(e){if(!e)return;let t=null;this.stickyRowFeature&&ur()&&(t=this.getCellToRestoreFocusToAfterRefresh()||null);for(const s of this.getRowCtrls(e)){if(!s.isFullWidth())continue;s.refreshFullWidth()||this.redrawRow(s.getRowNode(),!0)}this.dispatchDisplayedRowsChanged(!1),t&&this.restoreFocusedCell(t)}getCellRendererInstances(e){var o;const t=this.getCellCtrls(e.rowNodes,e.columns).map(r=>r.getCellRenderer()).filter(r=>r!=null);if((o=e.columns)!=null&&o.length)return t;const s=[],i=this.mapRowNodes(e.rowNodes);return this.getAllRowCtrls().forEach(r=>{if(i&&!this.isRowInMap(r.getRowNode(),i)||!r.isFullWidth())return;const n=r.getFullWidthCellRenderers();for(let l=0;l<n.length;l++){const a=n[l];a!=null&&s.push(a)}}),[...s,...t]}getCellEditorInstances(e){const t=[];return this.getCellCtrls(e.rowNodes,e.columns).forEach(s=>{const i=s.getCellEditor();i&&t.push(i)}),t}getEditingCells(){const e=[];return this.getAllCellCtrls().forEach(t=>{if(t.isEditing()){const s=t.getCellPosition();e.push(s)}}),e}mapRowNodes(e){if(!e)return;const t={top:{},bottom:{},normal:{}};return e.forEach(s=>{const i=s.id;switch(s.rowPinned){case"top":t.top[i]=s;break;case"bottom":t.bottom[i]=s;break;default:t.normal[i]=s;break}}),t}isRowInMap(e,t){const s=e.id;switch(e.rowPinned){case"top":return t.top[s]!=null;case"bottom":return t.bottom[s]!=null;default:return t.normal[s]!=null}}getRowCtrls(e){const t=this.mapRowNodes(e),s=this.getAllRowCtrls();return!e||!t?s:s.filter(i=>{const o=i.getRowNode();return this.isRowInMap(o,t)})}getCellCtrls(e,t){let s;E(t)&&(s={},t.forEach(o=>{const r=this.columnModel.getCol(o);E(r)&&(s[r.getId()]=!0)}));const i=[];return this.getRowCtrls(e).forEach(o=>{o.getAllCellCtrls().forEach(r=>{const n=r.getColumn().getId();s&&!s[n]||i.push(r)})}),i}destroy(){this.removeAllRowComps(!0),super.destroy()}removeAllRowComps(e=!1){const t=Object.keys(this.rowCtrlsByRowIndex);this.removeRowCtrls(t,e),this.stickyRowFeature&&this.stickyRowFeature.destroyStickyCtrls()}getRowsToRecycle(){const e=[];Pe(this.rowCtrlsByRowIndex,(s,i)=>{i.getRowNode().id==null&&e.push(s)}),this.removeRowCtrls(e);const t={};return Pe(this.rowCtrlsByRowIndex,(s,i)=>{const o=i.getRowNode();t[o.id]=i}),this.rowCtrlsByRowIndex={},t}removeRowCtrls(e,t=!1){e.forEach(s=>{const i=this.rowCtrlsByRowIndex[s];i&&(i.destroyFirstPass(t),i.destroySecondPass()),delete this.rowCtrlsByRowIndex[s]})}onBodyScroll(e){e.direction==="vertical"&&this.redraw({afterScroll:!0})}redraw(e={}){const{afterScroll:t}=e;let s;this.stickyRowFeature&&ur()&&(s=this.getCellToRestoreFocusToAfterRefresh()||void 0);
154const i=this.firstRenderedRow,o=this.lastRenderedRow;this.workOutFirstAndLastRowsToRender();let r=!1;if(this.stickyRowFeature){r=this.stickyRowFeature.checkStickyRows();const l=this.stickyRowFeature.getExtraTopHeight()+this.stickyRowFeature.getExtraBottomHeight();l&&this.updateContainerHeights(l)}const n=this.firstRenderedRow!==i||this.lastRenderedRow!==o;if(!(t&&!r&&!n)&&(this.getLockOnRefresh(),this.recycleRows(null,!1,t),this.releaseLockOnRefresh(),this.dispatchDisplayedRowsChanged(t&&!r),s!=null)){const l=this.getCellToRestoreFocusToAfterRefresh();s!=null&&l==null&&(this.animationFrameService.flushAllFrames(),this.restoreFocusedCell(s))}}removeRowCompsNotToDraw(e,t){const s={};e.forEach(r=>s[r]=!0);const o=Object.keys(this.rowCtrlsByRowIndex).filter(r=>!s[r]);this.removeRowCtrls(o,t)}calculateIndexesToDraw(e){const t=bp(this.firstRenderedRow,this.lastRenderedRow),s=(o,r)=>{const n=r.getRowNode().rowIndex;n!=null&&(n<this.firstRenderedRow||n>this.lastRenderedRow)&&this.doNotUnVirtualiseRow(r)&&t.push(n)};Pe(this.rowCtrlsByRowIndex,s),Pe(e,s),t.sort((o,r)=>o-r);const i=[];for(let o=0;o<t.length;o++){const r=t[o],n=this.rowModel.getRow(r);n&&!n.sticky&&i.push(r)}return i}recycleRows(e,t=!1,s=!1){const i=this.calculateIndexesToDraw(e);(this.printLayout||s)&&(t=!1),this.removeRowCompsNotToDraw(i,!t),i.forEach(o=>{this.createOrUpdateRowCtrl(o,e,t,s)}),e&&(s&&!this.gos.get("suppressAnimationFrame")&&!this.printLayout?this.beans.animationFrameService.addDestroyTask(()=>{this.destroyRowCtrls(e,t),this.updateAllRowCtrls(),this.dispatchDisplayedRowsChanged()}):this.destroyRowCtrls(e,t)),this.updateAllRowCtrls()}dispatchDisplayedRowsChanged(e=!1){this.eventService.dispatchEvent({type:"displayedRowsChanged",afterScroll:e})}onDisplayedColumnsChanged(){const e=this.visibleColsService.isPinningLeft(),t=this.visibleColsService.isPinningRight();(this.pinningLeft!==e||t!==this.pinningRight)&&(this.pinningLeft=e,this.pinningRight=t,this.embedFullWidthRows&&this.redrawFullWidthEmbeddedRows())}redrawFullWidthEmbeddedRows(){const e=[];this.getFullWidthRowCtrls().forEach(t=>{const s=t.getRowNode().rowIndex;e.push(s.toString())}),this.refreshFloatingRowComps(),this.removeRowCtrls(e),this.redraw({afterScroll:!0})}getFullWidthRowCtrls(e){const t=this.mapRowNodes(e);return this.getAllRowCtrls().filter(s=>{if(!s.isFullWidth())return!1;const i=s.getRowNode();return!(t!=null&&!this.isRowInMap(i,t))})}createOrUpdateRowCtrl(e,t,s,i){let o,r=this.rowCtrlsByRowIndex[e];if(r||(o=this.rowModel.getRow(e),E(o)&&E(t)&&t[o.id]&&o.alreadyRendered&&(r=t[o.id],t[o.id]=null)),!r)if(o||(o=this.rowModel.getRow(e)),E(o))r=this.createRowCon(o,s,i);else return;return o&&(o.alreadyRendered=!0),this.rowCtrlsByRowIndex[e]=r,r}destroyRowCtrls(e,t){const s=[];Pe(e,(i,o)=>{if(o){if(this.cachedRowCtrls&&o.isCacheable()){this.cachedRowCtrls.addRow(o);return}if(o.destroyFirstPass(!t),t){const r=o.instanceId;this.zombieRowCtrls[r]=o,s.push(()=>{o.destroySecondPass(),delete this.zombieRowCtrls[r]})}else o.destroySecondPass()}}),t&&(s.push(()=>{this.updateAllRowCtrls(),this.dispatchDisplayedRowsChanged()}),eu(s))}getRowBuffer(){return this.gos.get("rowBuffer")}getRowBufferInPixels(){const e=this.getRowBuffer(),t=At(this.gos);return e*t}workOutFirstAndLastRowsToRender(){this.rowContainerHeightService.updateOffset();let e,t;if(!this.rowModel.isRowsToRender())e=0,t=-1;else if(this.printLayout)this.environment.refreshRowHeightVariable(),e=this.pageBoundsService.getFirstRow(),t=this.pageBoundsService.getLastRow();else{const l=this.getRowBufferInPixels(),a=this.ctrlsService.getGridBodyCtrl(),d=this.gos.get("suppressRowVirtualisation");let c=!1,u,h;do{const v=this.pageBoundsService.getPixelOffset(),{pageFirstPixel:y,pageLastPixel:w}=this.pageBoundsService.getCurrentPagePixelRange(),F=this.rowContainerHeightService.getDivStretchOffset(),D=a.getScrollFeature().getVScrollPosition(),M=D.top,x=D.bottom;d?(u=y+F,h=w+F):(u=Math.max(M+v-l,y)+F,h=Math.min(x+v+l,w)+F),this.firstVisibleVPixel=Math.max(M+v,y)+F,this.lastVisibleVPixel=Math.min(x+v,w)+F,c=this.ensureAllRowsInRangeHaveHeightsCalculated(u,h)}while(c);let p=this.rowModel.getRowIndexAtPixel(u),g=this.rowModel.getRowIndexAtPixel(h);const f=this.pageBoundsService.getFirstRow(),m=this.pageBoundsService.getLastRow();p<f&&(p=f),g>m&&(g=m),e=p,t=g}const s=De(this.gos,"normal"),i=this.gos.get("suppressMaxRenderedRowRestriction"),o=Math.max(this.getRowBuffer(),500);s&&!i&&t-e>o&&(t=e+o);
154const r=e!==this.firstRenderedRow,n=t!==this.lastRenderedRow;(r||n)&&(this.firstRenderedRow=e,this.lastRenderedRow=t,this.eventService.dispatchEvent({type:"viewportChanged",firstRow:e,lastRow:t}))}dispatchFirstDataRenderedEvent(){this.dataFirstRenderedFired||(this.dataFirstRenderedFired=!0,window.requestAnimationFrame(()=>{this.beans.eventService.dispatchEvent({type:"firstDataRendered",firstRow:this.firstRenderedRow,lastRow:this.lastRenderedRow})}))}ensureAllRowsInRangeHaveHeightsCalculated(e,t){var r,n;const s=(r=this.pinnedRowModel)==null?void 0:r.ensureRowHeightsValid(),i=(n=this.stickyRowFeature)==null?void 0:n.ensureRowHeightsValid(),o=this.rowModel.ensureRowHeightsValid(e,t,this.pageBoundsService.getFirstRow(),this.pageBoundsService.getLastRow());return(o||i)&&this.eventService.dispatchEvent({type:"recalculateRowBounds"}),i||o||s?(this.updateContainerHeights(),!0):!1}getFirstVisibleVerticalPixel(){return this.firstVisibleVPixel}getLastVisibleVerticalPixel(){return this.lastVisibleVPixel}getFirstVirtualRenderedRow(){return this.firstRenderedRow}getLastVirtualRenderedRow(){return this.lastRenderedRow}doNotUnVirtualiseRow(e){const i=e.getRowNode(),o=this.focusService.isRowNodeFocused(i),r=e.isEditing(),n=i.detail;return o||r||n?!!this.isRowPresent(i):!1}isRowPresent(e){return this.rowModel.isRowPresent(e)?this.paginationService?this.paginationService.isRowPresent(e):!0:!1}createRowCon(e,t,s){const i=this.cachedRowCtrls?this.cachedRowCtrls.getRow(e):null;if(i)return i;const o=this.gos.get("suppressAnimationFrame"),r=s&&!o&&!this.printLayout;return new ns(e,this.beans,t,r,this.printLayout)}getRenderedNodes(){const e=this.rowCtrlsByRowIndex;return Object.values(e).map(t=>t.getRowNode())}getRowByPosition(e){let t;const{rowIndex:s}=e;switch(e.rowPinned){case"top":t=this.topRowCtrls[s];break;case"bottom":t=this.bottomRowCtrls[s];break;default:t=this.rowCtrlsByRowIndex[s],t||(t=this.getStickyTopRowCtrls().find(i=>i.getRowNode().rowIndex===s)||null,t||(t=this.getStickyBottomRowCtrls().find(i=>i.getRowNode().rowIndex===s)||null));break}return t}isRangeInRenderedViewport(e,t){if(e==null||t==null)return!1;const i=e>this.lastRenderedRow;return!(t<this.firstRenderedRow)&&!i}},xm=class{constructor(e){this.entriesMap={},this.entriesList=[],this.maxCount=e}addRow(e){if(this.entriesMap[e.getRowNode().id]=e,this.entriesList.push(e),e.setCached(!0),this.entriesList.length>this.maxCount){const t=this.entriesList[0];t.destroyFirstPass(),t.destroySecondPass(),this.removeFromCache(t)}}getRow(e){if(e==null||e.id==null)return null;const t=this.entriesMap[e.id];return t?(this.removeFromCache(t),t.setCached(!1),t.getRowNode()!=e?null:t):null}has(e){return this.entriesMap[e.id]!=null}removeRow(e){const t=e.id,s=this.entriesMap[t];delete this.entriesMap[t],ke(this.entriesList,s)}removeFromCache(e){const t=e.getRowNode().id;delete this.entriesMap[t],ke(this.entriesList,e)}getEntries(){return this.entriesList}},Am=class extends b{constructor(){super(...arguments),this.beanName="pinnedRowModel",this.nextId=0,this.pinnedTopRows=new il,this.pinnedBottomRows=new il}wireBeans(e){this.beans=e}postConstruct(){this.setPinnedRowData(this.gos.get("pinnedTopRowData"),"top"),this.setPinnedRowData(this.gos.get("pinnedBottomRowData"),"bottom"),this.addManagedPropertyListener("pinnedTopRowData",e=>this.setPinnedRowData(e.currentValue,"top")),this.addManagedPropertyListener("pinnedBottomRowData",e=>this.setPinnedRowData(e.currentValue,"bottom")),this.addManagedEventListeners({gridStylesChanged:this.onGridStylesChanges.bind(this)})}isEmpty(e){return(e==="top"?this.pinnedTopRows:this.pinnedBottomRows).isEmpty()}isRowsToRender(e){return!this.isEmpty(e)}onGridStylesChanges(e){if(e.rowHeightChanged){const t=s=>{s.setRowHeight(s.rowHeight,!0)};this.pinnedBottomRows.forEach(t),this.pinnedTopRows.forEach(t)}}ensureRowHeightsValid(){var i,o;let e=!1,t=0;const s=r=>{if(r.rowHeightEstimated){const n=Ge(this.gos,r);r.setRowTop(t),r.setRowHeight(n.height),t+=n.height,e=!0}};return(i=this.pinnedBottomRows)==null||i.forEach(s),t=0,(o=this.pinnedTopRows)==null||o.forEach(s),this.eventService.dispatchEvent({type:"pinnedHeightChanged"}),e}setPinnedRowData(e,t){this.updateNodesFromRowData(e,t),this.eventService.dispatchEvent({type:"pinnedRowDataChanged"})}updateNodesFromRowData(e,t){const s=t==="top"?this.pinnedTopRows:this.pinnedBottomRows;if(e===void 0){s.clear();return}const i=Tt(this.gos),o=t==="top"?qe.ID_PREFIX_TOP_PINNED:qe.ID_PREFIX_BOTTOM_PINNED,r=s.getIds(),n=[],l=new Set;let a=0,d=-1;for(const c of e){const u=(i==null?void 0:i({data:c,level:0,rowPinned:t}))??o+this.nextId++;
154if(l.has(u)){R("Duplicate ID",u,"found for pinned row with data",c,"When `getRowId` is defined, it must return unique IDs for all pinned rows. Use the `rowPinned` parameter.");continue}d++,l.add(u),n.push(u);const h=s.getById(u);if(h!==void 0)h.data!==c&&h.setData(c),a+=this.setRowTopAndRowIndex(h,a,d),r.delete(u);else{const p=new qe(this.beans);p.id=u,p.data=c,p.rowPinned=t,a+=this.setRowTopAndRowIndex(p,a,d),s.push(p)}}r.forEach(c=>{var u;(u=s.getById(c))==null||u.clearRowTopAndRowIndex()}),s.removeAllById(r),s.setOrder(n)}setRowTopAndRowIndex(e,t,s){return e.setRowTop(t),e.setRowHeight(Ge(this.gos,e).height),e.setRowIndex(s),e.rowHeight}getPinnedTopTotalHeight(){return this.getTotalHeight(this.pinnedTopRows)}getPinnedBottomTotalHeight(){return this.getTotalHeight(this.pinnedBottomRows)}getPinnedTopRowCount(){return this.pinnedTopRows.getSize()}getPinnedBottomRowCount(){return this.pinnedBottomRows.getSize()}getPinnedTopRow(e){return this.pinnedTopRows.getByIndex(e)}getPinnedBottomRow(e){return this.pinnedBottomRows.getByIndex(e)}getPinnedRowById(e,t){return t==="top"?this.pinnedTopRows.getById(e):this.pinnedBottomRows.getById(e)}forEachPinnedRow(e,t){return e==="top"?this.pinnedTopRows.forEach(t):this.pinnedBottomRows.forEach(t)}getTotalHeight(e){const t=e.getSize();if(t===0)return 0;const s=e.getByIndex(t-1);return s===void 0?0:s.rowTop+s.rowHeight}},il=class{constructor(){this.cache={},this.ordering=[]}getById(e){return this.cache[e]}getByIndex(e){const t=this.ordering[e];return this.cache[t]}push(e){this.cache[e.id]=e,this.ordering.push(e.id)}removeAllById(e){for(const t of e)delete this.cache[t];this.ordering=this.ordering.filter(t=>!e.has(t))}setOrder(e){this.ordering=e}forEach(e){this.ordering.forEach((t,s)=>{const i=this.cache[t];i&&e(i,s)})}clear(){this.ordering.length=0,this.cache={}}isEmpty(){return this.ordering.length===0}getSize(){return this.ordering.length}getIds(){return new Set(this.ordering)}},We=(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))(We||{}),Tm=class extends b{constructor(e){super(),this.state="needsLoading",this.version=0,this.id=e}getId(){return this.id}load(){this.state="loading",this.loadFromDatasource()}getVersion(){return this.version}setStateWaitingToLoad(){this.version++,this.state="needsLoading"}getState(){return this.state}pageLoadFailed(e){this.isRequestMostRecentAndLive(e)&&(this.state="failed",this.processServerFail()),this.dispatchLoadCompleted(!1)}success(e,t){this.successCommon(e,t)}pageLoaded(e,t,s){this.successCommon(e,{rowData:t,rowCount:s})}isRequestMostRecentAndLive(e){const t=e===this.version,s=this.isAlive();return t&&s}successCommon(e,t){this.dispatchLoadCompleted(),this.isRequestMostRecentAndLive(e)&&(this.state="loaded",this.processServerResult(t))}dispatchLoadCompleted(e=!0){const t={type:"loadComplete",success:e,block:this};this.dispatchLocalEvent(t)}},Im=class extends b{constructor(){super(...arguments),this.beanName="rowNodeBlockLoader",this.activeBlockLoadsCount=0,this.blocks=[],this.active=!0}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.maxConcurrentRequests=this.getMaxConcurrentDatasourceRequests();const e=this.gos.get("blockLoadDebounceMillis");e&&e>0&&(this.checkBlockToLoadDebounce=Me(this.performCheckBlocksToLoad.bind(this),e))}getMaxConcurrentDatasourceRequests(){const e=this.gos.get("maxConcurrentDatasourceRequests");if(e==null)return 2;if(!(e<=0))return e}addBlock(e){this.blocks.push(e),e.addEventListener("loadComplete",this.loadComplete.bind(this)),this.checkBlockToLoad()}removeBlock(e){ke(this.blocks,e)}destroy(){super.destroy(),this.active=!1}loadComplete(){this.activeBlockLoadsCount--,this.checkBlockToLoad(),this.dispatchLocalEvent({type:"blockLoaded"}),this.activeBlockLoadsCount==0&&this.dispatchLocalEvent({type:"blockLoaderFinished"})}checkBlockToLoad(){this.checkBlockToLoadDebounce?this.checkBlockToLoadDebounce():this.performCheckBlocksToLoad()}performCheckBlocksToLoad(){if(!this.active)return;if(this.printCacheStatus(),this.maxConcurrentRequests!=null&&this.activeBlockLoadsCount>=this.maxConcurrentRequests){this.gos.get("debug")&&ut("RowNodeBlockLoader - checkBlockToLoad: max loads exceeded");return}const e=this.getAvailableLoadingCount(),t=this.blocks.filter(s=>s.getState()==="needsLoading").slice(0,e);this.registerLoads(t.length),t.forEach(s=>s.load()),this.printCacheStatus()}getBlockState(){if(Ue(this.gos))return this.rowModel.getBlockStates();const e={};return this.blocks.forEach(t=>{const{id:s,state:i}=t.getBlockStateJson();e[s]=i}),e}printCacheStatus(){this.gos.get("debug")&&ut(`RowNodeBlockLoader - printCacheStatus: activePageLoadsCount = ${this.activeBlockLoadsCount}, blocks = ${JSON.stringify(this.getBlockState())}`)}isLoading(){return this.activeBlockLoadsCount>0}registerLoads(e){this.activeBlockLoadsCount+=e}getAvailableLoadingCount(){return this.maxConcurrentRequests!==void 0?this.maxConcurrentRequests-this.activeBlockLoadsCount:void 0}},Lm={version:V,moduleName:"@ag-grid-community/row-node-block",beans:[Im]},Gm=class{constructor(){this.root=null,this.end=null,this.cachedRange=[]}init(e){this.rowModel=e}reset(){this.root=null,this.end=null,this.cachedRange.length=0}setRoot(e){this.root=e,this.end=null,this.cachedRange.length=0}setEndRange(e){this.end=e,this.cachedRange.length=0}getRange(){if(this.cachedRange.length===0){const e=this.getRoot(),t=this.getEnd();if(e==null||t==null)return this.cachedRange;this.cachedRange=this.rowModel.getNodesInRangeForSelection(e,t)}return this.cachedRange}isInRange(e){return this.root===null?!1:this.getRange().some(t=>t.id===e.id)}getRoot(){var e;return this.root&&((e=this.root)==null?void 0:e.key)===null&&(this.root=this.rowModel.getRowNode(this.root.id)??null),this.root}getEnd(){var e;return this.end&&((e=this.end)==null?void 0:e.key)===null&&(this.end=this.rowModel.getRowNode(this.end.id)??null),this.end}truncate(e){const t=this.getRange();if(t.length===0)return{keep:[],discard:[]};const s=t[0].id===this.root.id,i=t.findIndex(o=>o.id===e.id);if(i>
154-1){const o=t.slice(0,i),r=t.slice(i+1);return this.setEndRange(e),s?{keep:o,discard:r}:{keep:r,discard:o}}else return{keep:t,discard:[]}}extend(e,t=!1){const s=this.getRoot();if(s==null){const o=this.getRange().slice();return t&&e.depthFirstSearch(r=>!r.group&&o.push(r)),o.push(e),this.setRoot(e),{keep:o,discard:[]}}if(this.rowModel.getNodesInRangeForSelection(s,e).find(o=>{var r;return o.id===((r=this.end)==null?void 0:r.id)}))return this.setEndRange(e),{keep:this.getRange(),discard:[]};{const o=this.getRange().slice();return this.setEndRange(e),{keep:this.getRange(),discard:o}}}},km=class extends b{constructor(){super(...arguments),this.beanName="stylingService"}wireBeans(e){this.expressionService=e.expressionService}processAllCellClasses(e,t,s,i){this.processClassRules(void 0,e.cellClassRules,t,s,i),this.processStaticCellClasses(e,t,s)}processClassRules(e,t,s,i,o){if(t==null&&e==null)return;const r={},n={},l=(a,d)=>{a.split(" ").forEach(c=>{c.trim()!=""&&d(c)})};if(t){const a=Object.keys(t);for(let d=0;d<a.length;d++){const c=a[d],u=t[c];let h;typeof u=="string"?h=this.expressionService.evaluate(u,s):typeof u=="function"&&(h=u(s)),l(c,p=>{h?r[p]=!0:n[p]=!0})}}e&&o&&Object.keys(e).forEach(a=>l(a,d=>{r[d]||(n[d]=!0)})),o&&Object.keys(n).forEach(o),Object.keys(r).forEach(i)}getStaticCellClasses(e,t){const{cellClass:s}=e;if(!s)return[];let i;return typeof s=="function"?i=s(t):i=s,typeof i=="string"&&(i=[i]),i||[]}processStaticCellClasses(e,t,s){this.getStaticCellClasses(e,t).forEach(o=>{s(o)})}},Om=class extends vo{constructor(e){super(e,"ag-toggle-button")}setValue(e,t){return super.setValue(e,t),this.addOrRemoveCssClass("ag-selected",this.getValue()),this}},Nm={selector:"AG-TOGGLE-BUTTON",component:Om},Ui=(e=>(e.TAB_GUARD="ag-tab-guard",e.TAB_GUARD_TOP="ag-tab-guard-top",e.TAB_GUARD_BOTTOM="ag-tab-guard-bottom",e))(Ui||{}),Wd=class extends b{constructor(e){super(),this.skipTabGuardFocus=!1,this.forcingFocusOut=!1,this.allowFocus=!1;const{comp:t,eTopGuard:s,eBottomGuard:i,focusTrapActive:o,forceFocusOutWhenTabGuardsAreEmpty:r,isFocusableContainer:n,focusInnerElement:l,onFocusIn:a,onFocusOut:d,shouldStopEventPropagation:c,onTabKeyDown:u,handleKeyDown:h,eFocusableElement:p}=e;this.comp=t,this.eTopGuard=s,this.eBottomGuard=i,this.providedFocusInnerElement=l,this.eFocusableElement=p,this.focusTrapActive=!!o,this.forceFocusOutWhenTabGuardsAreEmpty=!!r,this.isFocusableContainer=!!n,this.providedFocusIn=a,this.providedFocusOut=d,this.providedShouldStopEventPropagation=c,this.providedOnTabKeyDown=u,this.providedHandleKeyDown=h}wireBeans(e){this.focusService=e.focusService}postConstruct(){this.createManagedBean(new kt(this.eFocusableElement,{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(),[this.eTopGuard,this.eBottomGuard].forEach(e=>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():!1}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){this.findNextElementOutsideAndFocus(e.target===this.eBottomGuard);return}if(this.skipTabGuardFocus){this.skipTabGuardFocus=!1;return}if(this.forceFocusOutWhenTabGuardsAreEmpty&&this.focusService.findFocusableElements(this.eFocusableElement,".ag-tab-guard").length===0){this.findNextElementOutsideAndFocus(e.target===this.eBottomGuard);return}if(this.isFocusableContainer&&this.eFocusableElement.contains(e.relatedTarget))return;const t=e.target===this.eBottomGuard;this.providedFocusInnerElement?this.providedFocusInnerElement(t):this.focusInnerElement(t)}findNextElementOutsideAndFocus(e){var a;const t=le(this.gos),s=this.focusService.findFocusableElements(t.body,null,!0),i=s.indexOf(e?this.eTopGuard:this.eBottomGuard);if(i===-1)return;let o,r;e?(o=0,r=i):(o=i+1,r=s.length);const n=s.slice(o,r),l=this.gos.get("tabIndex");n.sort((d,c)=>{const u=parseInt(d.getAttribute("tabindex")||"0"),h=parseInt(c.getAttribute("tabindex")||"0");return h===l?1:u===l?-1:u===0?1:h===0?-1:u-h}),(a=n[e?n.length-1:0])==null||a.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){this.providedOnTabKeyDown(e);return}if(this.focusTrapActive||e.defaultPrevented)return;const t=this.tabGuardsAreActive();t&&this.deactivateTabGuards();const s=this.getNextFocusableElement(e.shiftKey);t&&setTimeout(()=>this.activateTabGuards(),0),s&&(s.focus(),e.preventDefault())}focusInnerElement(e=!1){const t=this.focusService.findFocusableElements(this.eFocusableElement);this.tabGuardsAreActive()&&(t.splice(0,1),t.splice(t.length-1,1)),t.length&&t[e?t.length-1:0].focus({preventScroll:!0})}getNextFocusableElement(e){return this.focusService.findNextFocusableElement(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.focu
154s(),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}},zd=class extends b{constructor(e){super(),this.comp=e}initialiseTabGuard(e){this.eTopGuard=this.createTabGuard("top"),this.eBottomGuard=this.createTabGuard("bottom"),this.eFocusableElement=this.comp.getFocusableElement();const{eTopGuard:t,eBottomGuard:s,eFocusableElement:i}=this,o=[t,s],r={setTabIndex:f=>{o.forEach(m=>f!=null?m.setAttribute("tabindex",f):m.removeAttribute("tabindex"))}};this.addTabGuards(t,s);const{focusTrapActive:n=!1,onFocusIn:l,onFocusOut:a,focusInnerElement:d,handleKeyDown:c,onTabKeyDown:u,shouldStopEventPropagation:h,forceFocusOutWhenTabGuardsAreEmpty:p,isFocusableContainer:g}=e;this.tabGuardCtrl=this.createManagedBean(new Wd({comp:r,focusTrapActive:n,eTopGuard:t,eBottomGuard:s,eFocusableElement:i,onFocusIn:l,onFocusOut:a,focusInnerElement:d,handleKeyDown:c,onTabKeyDown:u,shouldStopEventPropagation:h,forceFocusOutWhenTabGuardsAreEmpty:p,isFocusableContainer:g}))}getTabGuardCtrl(){return this.tabGuardCtrl}createTabGuard(e){const t=le(this.gos).createElement("div"),s=e==="top"?"ag-tab-guard-top":"ag-tab-guard-bottom";return t.classList.add("ag-tab-guard",s),he(t,"presentation"),t}addTabGuards(e,t){this.eFocusableElement.insertAdjacentElement("afterbegin",e),this.eFocusableElement.insertAdjacentElement("beforeend",t)}removeAllChildrenExceptTabGuards(){const e=[this.eTopGuard,this.eBottomGuard];de(this.comp.getFocusableElement()),this.addTabGuards(...e)}forceFocusOutOfContainer(e=!1){this.tabGuardCtrl.forceFocusOutOfContainer(e)}appendChild(e,t,s){Co(t)||(t=t.getGui());const{eBottomGuard:i}=this;i?i.insertAdjacentElement("beforebegin",t):e(t,s)}},fs=class extends O{initialiseTabGuard(t){this.tabGuardFeature=this.createManagedBean(new zd(this)),this.tabGuardFeature.initialiseTabGuard(t)}forceFocusOutOfContainer(t=!1){this.tabGuardFeature.forceFocusOutOfContainer(t)}appendChild(t,s){this.tabGuardFeature.appendChild(super.appendChild.bind(this),t,s)}},Bm=0,Vm=200,Hm=class extends b{constructor(){super(...arguments),this.beanName="popupService",this.popupList=[]}wireBeans(e){this.ctrlsService=e.ctrlsService,this.resizeObserverService=e.resizeObserverService,this.environment=e.environment}postConstruct(){this.ctrlsService.whenReady(this,e=>{this.gridCtrl=e.gridCtrl}),this.addManagedEventListeners({gridStylesChanged:this.handleThemeChange.bind(this)})}getPopupParent(){const e=this.gos.get("popupParent");return e||this.gridCtrl.getGui()}positionPopupForMenu(e){const{eventSource:t,ePopup:s}=e,i=this.getPopupIndex(s);if(i!==-1){const p=this.popupList[i];p.alignedToElement=t}const o=t.getBoundingClientRect(),r=this.getParentRect(),n=this.keepXYWithinBounds(s,o.top-r.top,0),l=s.clientWidth>0?s.clientWidth:200;s.style.minWidth=`${l}px`;const d=r.right-r.left-l;let c;this.gos.get("enableRtl")?(c=h(),c<0&&(c=u(),this.setAlignedStyles(s,"left")),c>d&&(c=0,this.setAlignedStyles(s,"right"))):(c=u(),c>d&&(c=h(),this.setAlignedStyles(s,"right")),c<0&&(c=0,this.setAlignedStyles(s,"left"))),s.style.left=`${c}px`,s.style.top=`${n}px`;function u(){return o.right-r.left-2}function h(){return o.left-r.left-l}}positionPopupUnderMouseEvent(e){const{ePopup:t,nudgeX:s,nudgeY:i,skipObserver:o}=e;this.positionPopup({ePopup:t,nudgeX:s,nudgeY:i,keepWithinBounds:!0,skipObserver:o,updatePosition:()=>this.calculatePointerAlign(e.mouseEvent),postProcessCallback:()=>this.callPostProcessPopup(e.type,e.ePopup,null,e.mouseEvent,e.column,e.rowNode)})}calculatePointerAlign(e){const t=this.getParentRect();return{x:e.clientX-t.left,y:e.clientY-t.top}}positionPopupByComponent(e){const{ePopup:t,nudgeX:s,nudgeY:i,keepWithinBounds:o,eventSource:r,alignSide:n="left",position:l="over",column:a,rowNode:d,type:c}=e,u=r.getBoundingClientRect(),h=this.getParentRect(),p=this.getPopupIndex(t);if(p!==-1){const f=this.popupList[p];f.alignedToElement=r}const g=()=>{let f=u.left-h.left;n==="right"&&(f-=t.offsetWidth-u.width);let m;return l==="over"?(m=u.top-h.top,this.setAlignedStyles(t,"over")):(this.setAlignedStyles(t,"under"),this.shouldRenderUnderOrAbove(t,u,h,e.nudgeY||0)==="under"?m=u.top-h.top+u.height:m=u.top-t.offsetHeight-(i||0)*2-h.top),{x:f,y:m}};this.positionPopup({ePopup:t,nudgeX:s,nudgeY:i,keepWithinBounds:o,updatePosition:g,postProcessCallback:()=>this.callPostProcessPopup(c,t,r,null,a,d)})}shouldRenderUnderOrAbove(e,t,s,i){const o=s.bottom-t.bottom,r=t.top-s.top,n=e.offsetHeight+i;return o>n?"under":r>n||r>o?"above":"under"}setAlignedStyles(e,t){const s=this.getPopupIndex(e);if(s===-1)return;const i=this.popupList[s],{alignedToElement:o}=i;!o||(["right","left","over","above","under"].forEach(n=>{o.classList.remove(`ag-has-popup-positioned-${n}`),e.classList.remove(`ag-popup-positioned-${n}`)}),!t)||(o.classList.add(`ag-has-popup-positioned-${t}`),e.classList.add(`ag-popup-positioned-${t}`))}callPostProcessPopup(e,t,s,i,o,r){const n=this.gos.getCallback("postProcessPopup");n&&n({column:o,rowNode:r,ePopup:t,type:e,eventSource:s,mouseEvent:i})}positionPopup(e){const{ePopup:t,keepWithinBounds:s,nudgeX:i,nudgeY:o,skipObserver:r,updatePosition:n}=e,l={width:0,height:0},a=(d=!1)=>{let{x:c,y:u}=n();d&&t.clientWidth===l.width&&t.clientHeight===l.height||(l.width=t.clientWidth,l.height=t.clientHeight,i&&(c+=i),o&&(u+=o),s&&(c=this.keepXYWithinBounds(t,c,1),u=this.keepXYWithinBounds(t,u,0)),t.style.left=`${c}px`,t.style.top=`${u}px`,e.postProcessCallback&&e.postProcessCallback())};if(a(),!r){const d=this.resizeObserverService.observeResize(t,()=>a(!0));setTimeout(()=>d(),Vm)}}getActivePopups(){return this.popupList.map(e=>e.element)}getPopupList(){return this.popupList}getParentRect(){const e=le(this.gos);let t=this.getPopupParent();return t===e.body?t=e.documentElement:getComputedStyle(t).position==="static"&&(t=t.offsetParent),Fa(t)}keepXYWithinBounds(e,t,s){const i=s===0,o=i?"clientHeight":"clientWidth",r=i?"top":"left",n=i?"height":"width",l=i?"scrollTop":"scrollLeft",a=le(this.gos),d=a.documentElement,c=this.getPopupParent(),u=e.getBoundingClientRect(),h=c.getBoundingClientRect(),p=a.documentElement.getBoundingClientRect(),g=c===a.body,f=Math.ceil(u[n]);let v=g?(i?ba:Xi)(d)+d[l]:c[o];
154g&&(v-=Math.abs(p[r]-h[r]));const y=v-f;return Math.min(Math.max(t,0),Math.abs(y))}addPopup(e){const t=le(this.gos),{eChild:s,ariaLabel:i,alwaysOnTop:o,positionCallback:r,anchorToElement:n}=e;if(!t)return R("could not find the document, document is empty"),{hideFunc:()=>{}};const l=this.getPopupIndex(s);if(l!==-1)return{hideFunc:this.popupList[l].hideFunc};this.initialisePopupPosition(s);const a=this.createPopupWrapper(s,i,!!o),d=this.addEventListenersToPopup({...e,wrapperEl:a});return r&&r(),this.addPopupToPopupList(s,a,d,n),{hideFunc:d}}initialisePopupPosition(e){const s=this.getPopupParent().getBoundingClientRect();E(e.style.top)||(e.style.top=`${s.top*-1}px`),E(e.style.left)||(e.style.left=`${s.left*-1}px`)}createPopupWrapper(e,t,s){const i=this.getPopupParent(),o=document.createElement("div");return this.environment.applyThemeClasses(o),o.classList.add("ag-popup"),e.classList.add(this.gos.get("enableRtl")?"ag-rtl":"ag-ltr","ag-popup-child"),e.hasAttribute("role")||he(e,"dialog"),ze(e,t),o.appendChild(e),i.appendChild(o),s?this.setAlwaysOnTop(e,!0):this.bringPopupToFront(e),o}handleThemeChange(e){if(e.themeChanged)for(const t of this.popupList)this.environment.applyThemeClasses(t.wrapper)}addEventListenersToPopup(e){const t=le(this.gos),s=this.getPopupParent(),{wrapperEl:i,eChild:o,closedCallback:r,afterGuiAttached:n,closeOnEsc:l,modal:a}=e;let d=!1;const c=g=>{if(!i.contains(Q(this.gos)))return;g.key===S.ESCAPE&&!ht(g)&&p({keyboardEvent:g})},u=g=>p({mouseEvent:g}),h=g=>p({touchEvent:g}),p=(g={})=>{const{mouseEvent:f,touchEvent:m,keyboardEvent:v,forceHide:y}=g;!y&&(this.isEventFromCurrentPopup({mouseEvent:f,touchEvent:m},o)||d)||(d=!0,s.removeChild(i),t.removeEventListener("keydown",c),t.removeEventListener("mousedown",u),t.removeEventListener("touchstart",h),t.removeEventListener("contextmenu",u),this.eventService.removeEventListener("dragStarted",u),r&&r(f||m||v),this.removePopupFromPopupList(o))};return n&&n({hidePopup:p}),window.setTimeout(()=>{l&&t.addEventListener("keydown",c),a&&(t.addEventListener("mousedown",u),this.eventService.addEventListener("dragStarted",u),t.addEventListener("touchstart",h),t.addEventListener("contextmenu",u))},0),p}addPopupToPopupList(e,t,s,i){this.popupList.push({element:e,wrapper:t,hideFunc:s,instanceId:Bm++,isAnchored:!!i}),i&&this.setPopupPositionRelatedToElement(e,i)}getPopupIndex(e){return this.popupList.findIndex(t=>t.element===e)}setPopupPositionRelatedToElement(e,t){const s=this.getPopupIndex(e);if(s===-1)return;const i=this.popupList[s];if(i.stopAnchoringPromise&&i.stopAnchoringPromise.then(r=>r&&r()),i.stopAnchoringPromise=void 0,i.isAnchored=!1,!t)return;const o=this.keepPopupPositionedRelativeTo({element:t,ePopup:e,hidePopup:i.hideFunc});return i.stopAnchoringPromise=o,i.isAnchored=!0,o}removePopupFromPopupList(e){this.setAlignedStyles(e,null),this.setPopupPositionRelatedToElement(e,null),this.popupList=this.popupList.filter(t=>t.element!==e)}keepPopupPositionedRelativeTo(e){const t=this.getPopupParent(),s=t.getBoundingClientRect(),{element:i,ePopup:o}=e,r=i.getBoundingClientRect(),n=u=>parseInt(u.substring(0,u.length-1),10),l=(u,h)=>{const p=s[u]-r[u],g=n(o.style[u]);return{initialDiff:p,lastDiff:p,initial:g,last:g,direction:h}},a=l("top",0),d=l("left",1),c=this.getFrameworkOverrides();return new K(u=>{c.wrapIncoming(()=>{c.setInterval(()=>{const h=t.getBoundingClientRect(),p=i.getBoundingClientRect();if(p.top==0&&p.left==0&&p.height==0&&p.width==0){e.hidePopup();return}const f=(m,v)=>{const y=n(o.style[v]);m.last!==y&&(m.initial=y,m.last=y);const w=h[v]-p[v];if(w!=m.lastDiff){const F=this.keepXYWithinBounds(o,m.initial+m.initialDiff-w,m.direction);o.style[v]=`${F}px`,m.last=F}m.lastDiff=w};f(a,"top"),f(d,"left")},200).then(h=>{u(()=>{h!=null&&window.clearInterval(h)})})},"popupPositioning")})}hasAnchoredPopup(){return this.popupList.some(e=>e.isAnchored)}isEventFromCurrentPopup(e,t){const{mouseEvent:s,touchEvent:i}=e,o=s||i;if(!o)return!1;const r=this.getPopupIndex(t);if(r===-1)return!1;for(let n=r;n<this.popupList.length;n++){const l=this.popupList[n];if(rr(l.element,o))return!0}return this.isElementWithinCustomPopup(o.target)}isElementWithinCustomPopup(e){const t=le(this.gos);for(;e&&e!==t.body;){if(e.classList.contains("ag-custom-component-popup")||e.parentElement===null)return!0;e=e.parentElement}return!1}getWrapper(e){for(;!e.classList.contains("ag-popup")&&e.parentElement;)e=e.parentElement;return e.classList.contains("ag-popup")?e:null}setAlwaysOnTop(e,t){const s=this.getWrapper(e);s&&(s.classList.toggle("ag-always-on-top",!!t),t&&this.bringPopupToFront(s))}bringPopupToFront(e){const t=this.getPopupParent(),s=Array.prototype.slice.call(t.querySelectorAll(".ag-popup")),i=s.length,o=this.getWrapper(e);if(!o||i<=1||!t.contains(e))return;const r=[],n=[];for(const h of s)h!==o&&(h.classList.contains("ag-always-on-top")?n.push(h):r.push(h));const l=[],a=n.length,u=o.classList.contains("ag-always-on-top")||!a?[...r,...n,o]:[...r,o,...n];for(let h=0;h<=i;h++){const p=u[h];if(s[h]===u[h]||p===o)continue;p.querySelectorAll("div").forEach(f=>{f.scrollTop!==0&&l.push([f,f.scrollTop])}),h===0?t.insertAdjacentElement("afterbegin",p):u[h-1].insertAdjacentElement("afterend",p)}for(;l.length;){const h=l.pop();h[0].scrollTop=h[1]}}},Wm=["touchstart","touchend","touchmove","touchcancel"],Ud=class{constructor(e="javascript"){this.frameworkName=e,this.renderingEngine="vanilla",this.wrapIncoming=t=>t(),this.wrapOutgoing=t=>t()}setInterval(e,t){return new K(s=>{s(window.setInterval(e,t))})}addEventListener(e,t,s,i){const o=et(Wm,t);e.addEventListener(t,s,{capture:!!i,passive:o})}get shouldWrapOutgoing(){return!1}frameworkComponent(e){return null}isFrameworkComponent(e){return!1}getDocLink(e){return`https://www.ag-grid.com/${this.frameworkName==="solid"?"react":this.frameworkName}-data-grid${e?`/${e}`:""}`}},zm=class extends b{constructor(){super(...arguments),this.beanName="
154cellNavigationService"}wireBeans(e){this.visibleColsService=e.visibleColsService,this.rowModel=e.rowModel,this.rowRenderer=e.rowRenderer,this.pinnedRowModel=e.pinnedRowModel,this.paginationService=e.paginationService,this.pageBoundsService=e.pageBoundsService}getNextCellToFocus(e,t,s=!1){return s?this.getNextCellToFocusWithCtrlPressed(e,t):this.getNextCellToFocusWithoutCtrlPressed(e,t)}getNextCellToFocusWithCtrlPressed(e,t){const s=e===S.UP,i=e===S.DOWN,o=e===S.LEFT;let r,n;if(s||i)n=s?this.pageBoundsService.getFirstRow():this.pageBoundsService.getLastRow(),r=t.column;else{const l=this.visibleColsService.getAllCols(),a=this.gos.get("enableRtl");n=t.rowIndex,r=o!==a?l[0]:W(l)}return{rowIndex:n,rowPinned:null,column:r}}getNextCellToFocusWithoutCtrlPressed(e,t){let s=t,i=!1;for(;!i;){switch(e){case S.UP:s=this.getCellAbove(s);break;case S.DOWN:s=this.getCellBelow(s);break;case S.RIGHT:this.gos.get("enableRtl")?s=this.getCellToLeft(s):s=this.getCellToRight(s);break;case S.LEFT:this.gos.get("enableRtl")?s=this.getCellToRight(s):s=this.getCellToLeft(s);break;default:s=null,R("unknown key for navigation ",e);break}s?i=this.isCellGoodToFocusOn(s):i=!0}return s}isCellGoodToFocusOn(e){const t=e.column;let s;switch(e.rowPinned){case"top":s=this.pinnedRowModel.getPinnedTopRow(e.rowIndex);break;case"bottom":s=this.pinnedRowModel.getPinnedBottomRow(e.rowIndex);break;default:s=this.rowModel.getRow(e.rowIndex);break}return s?!t.isSuppressNavigable(s):!1}getCellToLeft(e){if(!e)return null;const t=this.visibleColsService.getColBefore(e.column);return t?{rowIndex:e.rowIndex,column:t,rowPinned:e.rowPinned}:null}getCellToRight(e){if(!e)return null;const t=this.visibleColsService.getColAfter(e.column);return t?{rowIndex:e.rowIndex,column:t,rowPinned:e.rowPinned}:null}getRowBelow(e){const t=e.rowIndex,s=e.rowPinned;let i=!1;if(this.isLastRowInContainer(e))switch(s){case"bottom":return null;case"top":return this.rowModel.isRowsToRender()?{rowIndex:this.pageBoundsService.getFirstRow(),rowPinned:null}:this.pinnedRowModel.isRowsToRender("bottom")?{rowIndex:0,rowPinned:"bottom"}:null;default:return this.pinnedRowModel.isRowsToRender("bottom")?{rowIndex:0,rowPinned:"bottom"}:null}else s&&(i=!0);const o=this.rowModel.getRow(e.rowIndex),r=i?void 0:this.getNextStickyPosition(o);return r||{rowIndex:t+1,rowPinned:s}}getNextStickyPosition(e,t){if(!uo(this.gos)||!e||!e.sticky)return;const s=this.rowRenderer.getStickyTopRowCtrls().some(l=>l.getRowNode().rowIndex===e.rowIndex);let i=[];s?i=[...this.rowRenderer.getStickyTopRowCtrls()].sort((l,a)=>l.getRowNode().rowIndex-a.getRowNode().rowIndex):i=[...this.rowRenderer.getStickyBottomRowCtrls()].sort((l,a)=>a.getRowNode().rowIndex-l.getRowNode().rowIndex);const o=t?-1:1,r=i.findIndex(l=>l.getRowNode().rowIndex===e.rowIndex),n=i[r+o];if(n)return{rowIndex:n.getRowNode().rowIndex,rowPinned:null}}getCellBelow(e){if(!e)return null;const t=this.getRowBelow(e);return t?{rowIndex:t.rowIndex,column:e.column,rowPinned:t.rowPinned}:null}isLastRowInContainer(e){const t=e.rowPinned,s=e.rowIndex;return t==="top"?this.pinnedRowModel.getPinnedTopRowCount()-1<=s:t==="bottom"?this.pinnedRowModel.getPinnedBottomRowCount()-1<=s:this.pageBoundsService.getLastRow()<=s}getRowAbove(e){const t=e.rowIndex,s=e.rowPinned,i=s?t===0:t===this.pageBoundsService.getFirstRow();let o=!1;if(i)return s==="top"?null:s?this.rowModel.isRowsToRender()?this.getLastBodyCell():this.pinnedRowModel.isRowsToRender("top")?this.getLastFloatingTopRow():null:this.pinnedRowModel.isRowsToRender("top")?this.getLastFloatingTopRow():null;s&&(o=!0);const r=this.rowModel.getRow(e.rowIndex),n=o?void 0:this.getNextStickyPosition(r,!0);return n||{rowIndex:t-1,rowPinned:s}}getCellAbove(e){if(!e)return null;const t=this.getRowAbove({rowIndex:e.rowIndex,rowPinned:e.rowPinned});return t?{rowIndex:t.rowIndex,column:e.column,rowPinned:t.rowPinned}:null}getLastBodyCell(){return{rowIndex:this.pageBoundsService.getLastRow(),rowPinned:null}}getLastFloatingTopRow(){return{rowIndex:this.pinnedRowModel.getPinnedTopRowCount()-1,rowPinned:"top"}}getNextTabbedCell(e,t){return t?this.getNextTabbedCellBackwards(e):this.getNextTabbedCellForwards(e)}getNextTabbedCellForwards(e){var r;const t=this.visibleColsService.getAllCols();let s=e.rowIndex,i=e.rowPinned,o=this.visibleColsService.getColAfter(e.column);if(!o){o=t[0];const n=this.getRowBelow(e);if(z(n)||!n.rowPinned&&!(((r=this.paginationService)==null?void 0:r.isRowInPage(n))??!0))return null;s=n?n.rowIndex:null,i=n?n.rowPinned:null}return{rowIndex:s,column:o,rowPinned:i}}getNextTabbedCellBackwards(e){var r;const t=this.visibleColsService.getAllCols();let s=e.rowIndex,i=e.rowPinned,o=this.visibleColsService.getColBefore(e.column);if(!o){o=W(t);const n=this.getRowAbove({rowIndex:e.rowIndex,rowPinned:e.rowPinned});if(z(n)||!n.rowPinned&&!(((r=this.paginationService)==null?void 0:r.isRowInPage(n))??!0))return null;s=n?n.rowIndex:null,i=n?n.rowPinned:null}return{rowIndex:s,column:o,rowPinned:i}}},Be=(e,t)=>{for(const s in t)t[s]=e;return t},ol={...Be("@ag-grid-community/core",{dispatchEvent:0,destroy:0,getGridId:0,getGridOption:0,isDestroyed:0,setGridOption:0,updateGridOptions:0,getState:0,setNodesSelected:0,selectAll:0,deselectAll:0,selectAllFiltered:0,deselectAllFiltered:0,selectAllOnCurrentPage:0,deselectAllOnCurrentPage:0,getSelectedNodes:0,getSelectedRows:0,redrawRows:0,setRowNodeExpanded:0,getRowNode:0,addRenderedRowListener:0,getRenderedNodes:0,forEachNode:0,getFirstDisplayedRow:0,getFirstDisplayedRowIndex:0,getLastDisplayedRow:0,getLastDisplayedRowIndex:0,getDisplayedRowAtIndex:0,getDisplayedRowCount:0,getModel:0,getVerticalPixelRange:0,getHorizontalPixelRange:0,ensureColumnVisible:0,ensureIndexVisible:0,ensureNodeVisible:0,getFocusedCell:0,clearFocusedCell:0,setFocusedCell:0,tabToNextCell:0,tabToPreviousCell:0,setFocusedHeader:0,addEventListener:0,addGlobalListener:0,removeEventListener:0,removeGlobalListener:0,expireValueCache:0,getValue:0,getCellValue:0,showColumnMenuAfterButtonClick:0,showColumnMenuAfterMouseClick:0,showColumnMenu:0,hidePopupMenu:0,onSortChanged:0,getPinnedTopRowCount:0,getPinnedBottomRowCount:0,getPinnedTopRow:0,getPinnedBottomRow:0,showLoadingOverlay:0,showNoRowsOverlay:0,hideOverlay:0,setGridAriaProperty:0,refreshCells:0,flashCells:0,refreshHeader:0,isAnimationFrameQueueEmpty:0,flushAllAnimationFrames:0,get
154SizesForCurrentTheme:0,getCellRendererInstances:0,addRowDropZone:0,removeRowDropZone:0,getRowDropZoneParams:0,getColumnDef:0,getColumnDefs:0,sizeColumnsToFit:0,setColumnGroupOpened:0,getColumnGroup:0,getProvidedColumnGroup:0,getDisplayNameForColumn:0,getDisplayNameForColumnGroup:0,getColumn:0,getColumns:0,applyColumnState:0,getColumnState:0,resetColumnState:0,getColumnGroupState:0,setColumnGroupState:0,resetColumnGroupState:0,isPinning:0,isPinningLeft:0,isPinningRight:0,getDisplayedColAfter:0,getDisplayedColBefore:0,setColumnVisible:0,setColumnsVisible:0,setColumnPinned:0,setColumnsPinned:0,getAllGridColumns:0,getDisplayedLeftColumns:0,getDisplayedCenterColumns:0,getDisplayedRightColumns:0,getAllDisplayedColumns:0,getAllDisplayedVirtualColumns:0,moveColumn:0,moveColumnByIndex:0,moveColumns:0,setColumnWidth:0,setColumnWidths:0,getLeftDisplayedColumnGroups:0,getCenterDisplayedColumnGroups:0,getRightDisplayedColumnGroups:0,getAllDisplayedColumnGroups:0,autoSizeColumn:0,autoSizeColumns:0,autoSizeAllColumns:0,undoCellEditing:0,redoCellEditing:0,getCellEditorInstances:0,getEditingCells:0,stopEditing:0,startEditingCell:0,getCurrentUndoSize:0,getCurrentRedoSize:0,isAnyFilterPresent:0,onFilterChanged:0,isColumnFilterPresent:0,getFilterInstance:0,getColumnFilterInstance:0,destroyFilter:0,setFilterModel:0,getFilterModel:0,getColumnFilterModel:0,setColumnFilterModel:0,showColumnFilter:0,isQuickFilterPresent:0,getQuickFilter:0,resetQuickFilter:0,paginationIsLastPageFound:0,paginationGetPageSize:0,paginationGetCurrentPage:0,paginationGetTotalPages:0,paginationGetRowCount:0,paginationGoToNextPage:0,paginationGoToPreviousPage:0,paginationGoToFirstPage:0,paginationGoToLastPage:0,paginationGoToPage:0,expandAll:0,collapseAll:0,onRowHeightChanged:0,setRowCount:0,getCacheBlockState:0,isLastRowIndexKnown:0}),...Be("@ag-grid-community/client-side-row-model",{onGroupExpandedOrCollapsed:0,refreshClientSideRowModel:0,isRowDataEmpty:0,forEachLeafNode:0,forEachNodeAfterFilter:0,forEachNodeAfterFilterAndSort:0,resetRowHeights:0,applyTransaction:0,applyTransactionAsync:0,flushAsyncTransactions:0,getBestCostNodeSelection:0}),...Be("@ag-grid-community/csv-export",{getDataAsCsv:0,exportDataAsCsv:0}),...Be("@ag-grid-community/infinite-row-model",{refreshInfiniteCache:0,purgeInfiniteCache:0,getInfiniteRowCount:0}),...Be("@ag-grid-enterprise/advanced-filter",{getAdvancedFilterModel:0,setAdvancedFilterModel:0,showAdvancedFilterBuilder:0,hideAdvancedFilterBuilder:0}),...Be("@ag-grid-enterprise/charts",{getChartModels:0,getChartRef:0,getChartImageDataURL:0,downloadChart:0,openChartToolPanel:0,closeChartToolPanel:0,createRangeChart:0,createPivotChart:0,createCrossFilterChart:0,updateChart:0,restoreChart:0}),...Be("@ag-grid-enterprise/clipboard",{copyToClipboard:0,cutToClipboard:0,copySelectedRowsToClipboard:0,copySelectedRangeToClipboard:0,copySelectedRangeDown:0,pasteFromClipboard:0}),...Be("@ag-grid-enterprise/excel-export",{getDataAsExcel:0,exportDataAsExcel:0,getSheetDataForExcel:0,getMultipleSheetsAsExcel:0,exportMultipleSheetsAsExcel:0}),...Be("@ag-grid-enterprise/master-detail",{addDetailGridInfo:0,removeDetailGridInfo:0,getDetailGridInfo:0,forEachDetailGridInfo:0}),...Be("@ag-grid-enterprise/menu",{showContextMenu:0,showColumnChooser:0,hideColumnChooser:0}),...Be("@ag-grid-enterprise/range-selection",{getCellRanges:0,addCellRange:0,clearRangeSelection:0,clearCellSelection:0}),...Be("@ag-grid-enterprise/row-grouping",{addAggFunc:0,addAggFuncs:0,clearAggFuncs:0,setColumnAggFunc:0,isPivotMode:0,getPivotResultColumn:0,setValueColumns:0,getValueColumns:0,removeValueColumn:0,removeValueColumns:0,addValueColumn:0,addValueColumns:0,setRowGroupColumns:0,removeRowGroupColumn:0,removeRowGroupColumns:0,addRowGroupColumn:0,addRowGroupColumns:0,getRowGroupColumns:0,moveRowGroupColumn:0,setPivotColumns:0,removePivotColumn:0,removePivotColumns:0,addPivotColumn:0,addPivotColumns:0,getPivotColumns:0,setPivotResultColumns:0,getPivotResultColumns:0}),...Be("@ag-grid-enterprise/server-side-row-model",{getServerSideSelectionState:0,setServerSideSelectionState:0,applyServerSideTransaction:0,applyServerSideTransactionAsync:0,applyServerSideRowData:0,retryServerSideLoads:0,flushServerSideAsyncTransactions:0,refreshServerSide:0,getServerSideGroupLevelState:0}),...Be("@ag-grid-enterprise/side-bar",{isSideBarVisible:0,setSideBarVisible:0,setSideBarPosition:0,openToolPanel:0,closeToolPanel:0,getOpenedToolPanel:0,refreshToolPanel:0,isToolPanelShowing:0,getToolPanelInstance:0,getSideBar:0}),...Be("@ag-grid-enterprise/status-bar",{getStatusPanel:0})},_o={isDestroyed:()=>!0,destroy(){},preConstruct(){},postConstruct(){},preWireBeans(){},wireBeans(){}},Um=(e,t)=>e.eventService.dispatchEvent(t),_d=class{};Reflect.defineProperty(_d,"name",{value:"GridApi"});
154var _m=class extends b{constructor(){super(),this.beanName="apiFunctionService",this.api=new _d,this.fns={..._o,dispatchEvent:Um},this.beans=null,this.preDestroyLink="";const{api:e}=this;for(const t in ol)e[t]=this.makeApi(t)[t]}wireBeans(e){this.beans=e}postConstruct(){this.preDestroyLink=this.frameworkOverrides.getDocLink("grid-lifecycle/#grid-pre-destroyed")}addFunction(e,t){var o;const{fns:s,beans:i}=this;s!==_o&&(s[e]=((o=i==null?void 0:i.validationService)==null?void 0:o.validateApiFunction(e,t))??t)}makeApi(e){return{[e]:(...t)=>{const{beans:s,fns:{[e]:i}}=this;return i?i(s,...t):this.apiNotFound(e)}}}apiNotFound(e){const{beans:t,gos:s,preDestroyLink:i}=this;if(!t)R(`Grid API function ${e}() cannot be called as the grid has been destroyed. 155Either clear local references to the grid api, when it is destroyed, or check gridApi.isDestroyed() to avoid calling methods against a destroyed grid. 156To run logic when the grid is about to be destroyed use the gridPreDestroy event. See: ${i}`);else{const o=ol[e];s.assertModuleRegistered(o,`api.${e}`)&&R(`API function '${e}' not registered to module '${o}'`)}}destroy(){super.destroy(),this.fns=_o,this.beans=null}};function Km(e){return{beanName:"gridApi",bean:e.getBean("apiFunctionService").api}}var $m=class extends b{constructor(){super(...arguments),this.beanName="columnDefFactory"}buildColumnDefs(e,t,s){const i=[],o={};return e.forEach(r=>{const n=this.createDefFromColumn(r,t,s);let l=!0,a=n,d=r.getOriginalParent(),c=null;for(;d;){let u=null;if(d.isPadding()){d=d.getOriginalParent();continue}const h=o[d.getGroupId()];if(h){h.children.push(a),l=!1;break}if(u=this.createDefFromGroup(d),u&&(u.children=[a],o[u.groupId]=u,a=u,d=d.getOriginalParent()),d!=null&&c===d){l=!1;break}c=d}l&&i.push(a)}),i}createDefFromGroup(e){const t=lr(e.getColGroupDef(),["children"]);return t&&(t.groupId=e.getGroupId()),t}createDefFromColumn(e,t,s){const i=lr(e.getColDef());return i.colId=e.getColId(),i.width=e.getActualWidth(),i.rowGroup=e.isRowGroupActive(),i.rowGroupIndex=e.isRowGroupActive()?t.indexOf(e):null,i.pivot=e.isPivotActive(),i.pivotIndex=e.isPivotActive()?s.indexOf(e):null,i.aggFunc=e.isValueActive()?e.getAggFunc():null,i.hide=e.isVisible()?void 0:!0,i.pinned=e.isPinned()?e.getPinned():null,i.sort=e.getSort()?e.getSort():null,i.sortIndex=e.getSortIndex()!=null?e.getSortIndex():null,i}},jm=class extends b{constructor(){super(...arguments),this.beanName="columnEventDispatcher"}visibleCols(e){this.eventService.dispatchEvent({type:"displayedColumnsChanged",source:e})}gridColumns(){this.eventService.dispatchEvent({type:"gridColumnsChanged"})}headerHeight(e){this.eventService.dispatchEvent({type:"columnHeaderHeightChanged",column:e,columns:[e],source:"autosizeColumnHeaderHeight"})}groupHeaderHeight(e){this.eventService.dispatchEvent({type:"columnGroupHeaderHeightChanged",columnGroup:e,source:"autosizeColumnGroupHeaderHeight"})}groupOpened(e){this.eventService.dispatchEvent({type:"columnGroupOpened",columnGroup:e.length===1?e[0]:void 0,columnGroups:e})}rowGroupChanged(e,t){this.eventService.dispatchEvent({type:"columnRowGroupChanged",columns:e,column:e.length===1?e[0]:null,source:t})}genericColumnEvent(e,t,s){this.eventService.dispatchEvent({type:e,columns:t,column:t.length===1?t[0]:null,source:s})}pivotModeChanged(){this.eventService.dispatchEvent({type:"columnPivotModeChanged"})}virtualColumnsChanged(e){this.eventService.dispatchEvent({type:"virtualColumnsChanged",afterScroll:e})}newColumnsLoaded(e){this.eventService.dispatchEvent({type:"newColumnsLoaded",source:e})}everythingChanged(e){this.eventService.dispatchEvent({type:"columnEverythingChanged",source:e})}columnMoved(e){const{movedColumns:t,source:s,toIndex:i,finished:o}=e;this.eventService.dispatchEvent({type:"columnMoved",columns:t,column:t&&t.length===1?t[0]:null,toIndex:i,finished:o,source:s})}columnPinned(e,t){if(!e.length)return;const s=e.length===1?e[0]:null,i=this.getCommonValue(e,o=>o.getPinned());this.eventService.dispatchEvent({type:"columnPinned",pinned:i??null,columns:e,column:s,source:t})}columnVisible(e,t){if(!e.length)return;const s=e.length===1?e[0]:null,i=this.getCommonValue(e,o=>o.isVisible());this.eventService.dispatchEvent({type:"columnVisible",visible:i,columns:e,column:s,source:t})}getCommonValue(e,t){if(!e||e.length==0)return;const s=t(e[0]);for(let i=1;i<e.length;i++)if(s!==t(e[i]))return;return s}columnChanged(e,t,s){this.eventService.dispatchEvent({type:e,columns:t,column:t&&t.length==1?t[0]:null,source:s})}columnResized(e,t,s,i=null){e&&e.length&&this.eventService.dispatchEvent({type:"columnResized",columns:e,column:e.length===1?e[0]:null,flexColumns:i,finished:t,source:s})}},qm=class extends b{constructor(){super(...arguments),this.beanName="
156columnGetStateService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}getColumnState(){const e=this.columnModel.getColDefCols();if(z(e)||!this.columnModel.isAlive())return[];const s=this.columnModel.getAllCols().map(i=>this.createStateItemFromColumn(i));return this.orderColumnStateList(s),s}createStateItemFromColumn(e){const t=this.funcColsService.getRowGroupColumns(),s=this.funcColsService.getPivotColumns(),i=e.isRowGroupActive()?t.indexOf(e):null,o=e.isPivotActive()?s.indexOf(e):null,r=e.isValueActive()?e.getAggFunc():null,n=e.getSort()!=null?e.getSort():null,l=e.getSortIndex()!=null?e.getSortIndex():null,a=e.getFlex()!=null&&e.getFlex()>0?e.getFlex():null;return{colId:e.getColId(),width:e.getActualWidth(),hide:!e.isVisible(),pinned:e.getPinned(),sort:n,sortIndex:l,aggFunc:r,rowGroup:e.isRowGroupActive(),rowGroupIndex:i,pivot:e.isPivotActive(),pivotIndex:o,flex:a}}orderColumnStateList(e){const t=this.columnModel.getCols(),s=new Map(t.map((i,o)=>[i.getColId(),o]));e.sort((i,o)=>{const r=s.has(i.colId)?s.get(i.colId):-1,n=s.has(o.colId)?s.get(o.colId):-1;return r-n})}},Ym=class extends b{constructor(){super(...arguments),this.beanName="columnGroupStateService"}wireBeans(e){this.columnModel=e.columnModel,this.columnAnimationService=e.columnAnimationService,this.eventDispatcher=e.columnEventDispatcher,this.visibleColsService=e.visibleColsService}getColumnGroupState(){const e=[],t=this.columnModel.getColTree();return Lt(null,t,s=>{be(s)&&e.push({groupId:s.getGroupId(),open:s.isExpanded()})}),e}resetColumnGroupState(e){const t=this.columnModel.getColDefColTree();if(!t)return;const s=[];Lt(null,t,i=>{if(be(i)){const o=i.getColGroupDef(),r={groupId:i.getGroupId(),open:o?o.openByDefault:void 0};s.push(r)}}),this.setColumnGroupState(s,e)}setColumnGroupState(e,t){if(!this.columnModel.getColTree())return;this.columnAnimationService.start();const i=[];e.forEach(o=>{const r=o.groupId,n=o.open,l=this.columnModel.getProvidedColGroup(r);l&&l.isExpanded()!==n&&(l.setExpanded(n),i.push(l))}),this.visibleColsService.refresh(t,!0),i.length&&this.eventDispatcher.groupOpened(i),this.columnAnimationService.finish()}},Qm=class extends b{constructor(){super(...arguments),this.beanName="columnViewportService",this.colsWithinViewport=[],this.headerColsWithinViewport=[],this.colsWithinViewportHash="",this.rowsOfHeadersToRenderLeft={},this.rowsOfHeadersToRenderRight={},this.rowsOfHeadersToRenderCenter={}}wireBeans(e){this.visibleColsService=e.visibleColsService,this.columnModel=e.columnModel,this.eventDispatcher=e.columnEventDispatcher}postConstruct(){this.suppressColumnVirtualisation=this.gos.get("suppressColumnVirtualisation")}setScrollPosition(e,t,s=!1){const i=this.visibleColsService.isBodyWidthDirty();if(!(e===this.scrollWidth&&t===this.scrollPosition&&!i)){if(this.scrollWidth=e,this.scrollPosition=t,this.visibleColsService.setBodyWidthDirty(),this.gos.get("enableRtl")){const r=this.visibleColsService.getBodyContainerWidth();this.viewportLeft=r-this.scrollPosition-this.scrollWidth,this.viewportRight=r-this.scrollPosition}else this.viewportLeft=this.scrollPosition,this.viewportRight=this.scrollWidth+this.scrollPosition;this.columnModel.isReady()&&this.checkViewportColumns(s)}}getHeadersToRender(e,t){let s;switch(e){case"left":s=this.rowsOfHeadersToRenderLeft[t];break;case"right":s=this.rowsOfHeadersToRenderRight[t];break;default:s=this.rowsOfHeadersToRenderCenter[t];break}return s||[]}extractViewportColumns(){const e=this.visibleColsService.getCenterCols();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||this.viewportRight===0}clear(){this.rowsOfHeadersToRenderLeft={},this.rowsOfHeadersToRenderRight={},this.rowsOfHeadersToRenderCenter={},this.colsWithinViewportHash=""}isColumnInHeaderViewport(e){return e.isAutoHeaderHeight()||this.isAnyParentAutoHeaderHeight(e)?!0:this.isColumnInRowViewport(e)}isAnyParentAutoHeaderHeight(e){for(;e;){if(e.isAutoHeaderHeight())return!0;e=e.getParent()}return!1}isColumnInRowViewport(e){if(e.isAutoHeight())return!0;const t=e.getLeft()||0,s=t+e.getActualWidth(),i=this.viewportLeft-200,o=this.viewportRight+200,r=t<i&&s<i,n=t>o&&s>o;return!r&&!n}getViewportColumns(){const e=this.visibleColsService.getLeftCols(),t=this.visibleColsService.getRightCols();return this.colsWithinViewport.concat(e).concat(t)}getColsWithinViewport(e){if(!this.columnModel.isColSpanActive())return this.colsWithinViewport;const t=o=>{const r=o.getLeft();return E(r)&&r>this.viewportLeft},s=this.isColumnVirtualisationSuppressed()?void 0:this.isColumnInRowViewport.bind(this),i=this.visibleColsService.getColsCenter();return this.visibleColsService.getColsForRow(e,i,s,t)}checkViewportColumns(e=!1){this.extractViewport()&&this.eventDispatcher.virtualColumnsChanged(e)}calculateHeaderRows(){this.rowsOfHeadersToRenderLeft={},this.rowsOfHeadersToRenderRight={},this.rowsOfHeadersToRenderCenter={};const e={},t=this.visibleColsService.getLeftCols(),s=this.visibleColsService.getRightCols();
156this.headerColsWithinViewport.concat(t).concat(s).forEach(r=>e[r.getId()]=!0);const o=(r,n,l)=>{let a=!1;for(let d=0;d<r.length;d++){const c=r[d];let u=!1;if(bt(c))u=e[c.getId()]===!0;else{const p=c.getDisplayedChildren();p&&(u=o(p,n,l+1))}u&&(a=!0,n[l]||(n[l]=[]),n[l].push(c))}return a};o(this.visibleColsService.getTreeLeft(),this.rowsOfHeadersToRenderLeft,0),o(this.visibleColsService.getTreeRight(),this.rowsOfHeadersToRenderRight,0),o(this.visibleColsService.getTreeCenter(),this.rowsOfHeadersToRenderCenter,0)}extractViewport(){const e=i=>`${i.getId()}-${i.getPinned()||"normal"}`;this.extractViewportColumns();const t=this.getViewportColumns().map(e).join("#"),s=this.colsWithinViewportHash!==t;return s&&(this.colsWithinViewportHash=t,this.calculateHeaderRows()),s}},Xm=class extends b{constructor(){super(...arguments),this.beanName="agComponentUtils"}wireBeans(e){this.componentMetadataProvider=e.componentMetadataProvider}adaptFunction(e,t){const s=this.componentMetadataProvider.retrieve(e);return s&&s.functionAdapter?s.functionAdapter(t):null}adaptCellRendererFunction(e){class t{refresh(){return!1}getGui(){return this.eGui}init(i){const o=e(i),r=typeof o;if(r==="string"||r==="number"||r==="boolean"){this.eGui=Xe("<span>"+o+"</span>");return}if(o==null){this.eGui=Xe("<span></span>");return}this.eGui=o}}return t}doesImplementIComponent(e){return e?e.prototype&&"getGui"in e.prototype:!1}},Zm=class extends b{constructor(){super(...arguments),this.beanName="componentMetadataProvider"}wireBeans(e){this.agComponentUtils=e.agComponentUtils}postConstruct(){this.componentMetaData={dateComponent:{mandatoryMethodList:["getDate","setDate"],optionalMethodList:["afterGuiAttached","setInputPlaceholder","setInputAriaLabel","setDisabled","onParamsUpdated","refresh"]},detailCellRenderer:{mandatoryMethodList:[],optionalMethodList:["refresh"],functionAdapter:this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)},dragAndDropImageComponent:{mandatoryMethodList:["setIcon","setLabel"],optionalMethodList:[]},headerComponent:{mandatoryMethodList:[],optionalMethodList:["refresh"]},headerGroupComponent:{mandatoryMethodList:[],optionalMethodList:[]},loadingCellRenderer:{mandatoryMethodList:[],optionalMethodList:[],functionAdapter:this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)},loadingOverlayComponent:{mandatoryMethodList:[],optionalMethodList:["refresh"]},noRowsOverlayComponent:{mandatoryMethodList:[],optionalMethodList:["refresh"]},floatingFilterComponent:{mandatoryMethodList:["onParentModelChanged"],optionalMethodList:["afterGuiAttached","onParamsUpdated","refresh"]},cellRenderer:{mandatoryMethodList:[],optionalMethodList:["refresh","afterGuiAttached"],functionAdapter:this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)},cellEditor:{mandatoryMethodList:["getValue"],optionalMethodList:["isPopup","isCancelBeforeStart","isCancelAfterEnd","getPopupPosition","focusIn","focusOut","afterGuiAttached","refresh"]},innerRenderer:{mandatoryMethodList:[],optionalMethodList:["afterGuiAttached"],functionAdapter:this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)},fullWidthCellRenderer:{mandatoryMethodList:[],optionalMethodList:["refresh","afterGuiAttached"],functionAdapter:this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)},groupRowRenderer:{mandatoryMethodList:[],optionalMethodList:["afterGuiAttached"],functionAdapter:this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)},filter:{mandatoryMethodList:["isFilterActive","doesFilterPass","getModel","setModel"],optionalMethodList:["afterGuiAttached","afterGuiDetached","onNewRowsLoaded","getModelAsString","onFloatingFilterChanged","onAnyFilterChanged","refresh"]},statusPanel:{mandatoryMethodList:[],optionalMethodList:["refresh"]},toolPanel:{mandatoryMethodList:[],optionalMethodList:["refresh","getState"]},tooltipComponent:{mandatoryMethodList:[],optionalMethodList:[]},menuItem:{mandatoryMethodList:[],optionalMethodList:["setActive","select","setExpanded","configureDefaults"]}}}retrieve(e){return this.componentMetaData[e]}},Jm=["rowPositionUtils","cellPositionUtils","headerPositionUtils","paginationAutoPageSizeService","apiFunctionService","gridApi","userComponentRegistry","agComponentUtils","componentMetadataProvider","resizeObserverService","userComponentFactory","rowContainerHeightService","horizontalResizeService","localeService","validationService","pinnedRowModel","dragService","visibleColsService","eventService","gos","popupService","selectionService","columnFilterService","quickFilterService","filterManager","columnModel","headerNavigationService","pageBoundsService","paginationService","pageBoundsListener","rowRenderer","expressionService","columnFactory","alignedGridsService","navigationService","valueCache","valueService","loggerFactory","autoWidthCalculator","filterMenuFactory","dragAndDropService","focusService","mouseEventService","environment","cellNavigationService","stylingService","scrollVisibleService","sortController","columnHoverService","columnAnimationService","selectableService","autoColService","controlsColService","changeDetectionService","animationFrameService","undoRedoService","columnDefFactory","rowCssClassCalculator","rowNodeBlockLoader","rowNodeSorter","ctrlsService","pinnedWidthService","rowNodeEventThrottle","ctrlsFactory","dataTypeService","syncService","overlayService","stateService","expansionService","apiEventService","ariaAnnouncementService","menuService","columnApplyStateService","columnEventDispatcher","columnMoveService","columnAutosizeService","columnGetStateService","columnGroupStateService","columnSizeService","funcColsService","columnNameService","columnViewportService","pivotResultColsService","showRowGroupColsService"],rl=Object.fromEntries(Jm.map((e,t)=>[e,t]));function eC(e,t){const s=(e.beanName?rl[e.beanName]:void 0)??Number.MAX_SAFE_INTEGER,i=(t.beanName?rl[t.beanName]:void 0)??Number.MAX_SAFE_INTEGER;return s-i}function tC(e,t){return(e==null?void 0:e.beanName)==="gridDestroyService"?-1:0}var sC=class extends b{constructor(){super(...arguments),this.beanName="
156ctrlsFactory",this.registry={}}register(e){this.registry[e.name]=e.classImp}getInstance(e,...t){const s=this.registry[e];if(s!=null)return new s(...t)}},iC=class extends b{constructor(){super(...arguments),this.beanName="ctrlsService",this.params={gridCtrl:void 0,gridBodyCtrl:void 0,center:void 0,left:void 0,right:void 0,bottomCenter:void 0,bottomLeft:void 0,bottomRight:void 0,topCenter:void 0,topLeft:void 0,topRight:void 0,stickyTopCenter:void 0,stickyTopLeft:void 0,stickyTopRight:void 0,stickyBottomCenter:void 0,stickyBottomLeft:void 0,stickyBottomRight:void 0,fakeHScrollComp:void 0,fakeVScrollComp:void 0,gridHeaderCtrl:void 0,centerHeader:void 0,leftHeader:void 0,rightHeader:void 0},this.ready=!1,this.readyCallbacks=[],this.runReadyCallbacksAsync=!1}wireBeans(e){var t,s;this.runReadyCallbacksAsync=((s=(t=e.frameworkOverrides).runWhenReadyAsync)==null?void 0:s.call(t))??!1}postConstruct(){this.addEventListener("ready",()=>{this.updateReady(),this.ready&&(this.readyCallbacks.forEach(e=>e(this.params)),this.readyCallbacks.length=0)},this.runReadyCallbacksAsync)}updateReady(){this.ready=Object.values(this.params).every(e=>(e==null?void 0:e.isAlive())??!1)}whenReady(e,t){this.ready?t(this.params):this.readyCallbacks.push(t),e.addDestroyFunc(()=>{const s=this.readyCallbacks.indexOf(t);s>=0&&this.readyCallbacks.splice(s,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:s}=this.params;return[e,s,t]}getHeaderRowContainerCtrl(e){const t=this.params;switch(e){case"left":return t.leftHeader;case"right":return t.rightHeader;default:return t.centerHeader}}},oC=class extends b{constructor(){super(...arguments),this.beanName="cellPositionUtils"}createId(e){const{rowIndex:t,rowPinned:s,column:i}=e;return this.createIdFromValues({rowIndex:t,column:i,rowPinned:s})}createIdFromValues(e){const{rowIndex:t,rowPinned:s,column:i}=e;return`${t}.${s??"null"}.${i.getId()}`}equals(e,t){const s=e.column===t.column,i=e.rowPinned===t.rowPinned,o=e.rowIndex===t.rowIndex;return s&&i&&o}},rC=class extends b{constructor(){super(...arguments),this.beanName="rowNodeEventThrottle",this.events=[]}wireBeans(e){this.animationFrameService=e.animationFrameService,this.rowModel=e.rowModel}postConstruct(){re(this.gos)&&(this.clientSideRowModel=this.rowModel)}dispatchExpanded(e,t){if(this.clientSideRowModel==null){this.eventService.dispatchEvent(e);return}this.events.push(e);const s=()=>{this.clientSideRowModel&&this.clientSideRowModel.onRowGroupOpened(),this.events.forEach(i=>this.eventService.dispatchEvent(i)),this.events=[]};t?s():(this.dispatchExpandedDebounced==null&&(this.dispatchExpandedDebounced=this.animationFrameService.debounce(s)),this.dispatchExpandedDebounced())}},nC=class extends b{constructor(){super(...arguments),this.beanName="rowPositionUtils"}wireBeans(e){this.rowModel=e.rowModel,this.pinnedRowModel=e.pinnedRowModel,this.pageBoundsService=e.pageBoundsService}getFirstRow(){let e=0,t;return this.pinnedRowModel.getPinnedTopRowCount()?t="top":this.rowModel.getRowCount()?(t=null,e=this.pageBoundsService.getFirstRow()):this.pinnedRowModel.getPinnedBottomRowCount()&&(t="bottom"),t===void 0?null:{rowIndex:e,rowPinned:t}}getLastRow(){let e,t=null;const s=this.pinnedRowModel.getPinnedBottomRowCount(),i=this.pinnedRowModel.getPinnedTopRowCount();return s?(t="bottom",e=s-1):this.rowModel.getRowCount()?(t=null,e=this.pageBoundsService.getLastRow()):i&&(t="top",e=i-1),e===void 0?null:{rowIndex:e,rowPinned:t}}getRowNode(e){switch(e.rowPinned){case"top":return this.pinnedRowModel.getPinnedTopRow(e.rowIndex);case"bottom":return this.pinnedRowModel.getPinnedBottomRow(e.rowIndex);default:return this.rowModel.getRow(e.rowIndex)}}sameRow(e,t){return!e&&!t?!0:e&&!t||!e&&t?!1:e.rowIndex===t.rowIndex&&e.rowPinned==t.rowPinned}before(e,t){switch(e.rowPinned){case"top":if(t.rowPinned!=="top")return!0;break;case"bottom":if(t.rowPinned!=="bottom")return!1;break;default:if(E(t.rowPinned))return t.rowPinned!=="top";break}return e.rowIndex<t.rowIndex}},nl={cssName:"--ag-row-height",changeKey:"rowHeightChanged",defaultValue:42}
156,ll={cssName:"--ag-header-height",changeKey:"headerHeightChanged",defaultValue:48},al={cssName:"--ag-list-item-height",changeKey:"listItemHeightChanged",defaultValue:24},lC=class extends b{constructor(){super(...arguments),this.beanName="environment",this.sizeEls=new Map,this.lastKnownValues=new Map,this.ancestorThemeClasses=[],this.sizesMeasured=!1,this.gridTheme=null}wireBeans(e){this.resizeObserverService=e.resizeObserverService,this.eGridDiv=e.eGridDiv}postConstruct(){this.addManagedPropertyListener("theme",()=>this.handleThemeGridOptionChange()),this.handleThemeGridOptionChange(),this.addDestroyFunc(()=>this.stopUsingTheme()),this.addManagedPropertyListener("rowHeight",()=>this.refreshRowHeightVariable()),this.ancestorThemeClasses=this.readAncestorThemeClasses(),this.setUpThemeClassObservers(),this.getSizeEl(nl),this.getSizeEl(ll),this.getSizeEl(al)}getDefaultRowHeight(){return this.getCSSVariablePixelValue(nl)}getDefaultHeaderHeight(){return this.getCSSVariablePixelValue(ll)}getDefaultColumnMinWidth(){return Math.min(36,this.getDefaultRowHeight())}getDefaultListItemHeight(){return this.getCSSVariablePixelValue(al)}hasMeasuredSizes(){return this.sizesMeasured}getGridThemeClass(){var e;return((e=this.gridTheme)==null?void 0:e.getCssClass())||null}getThemeClasses(){return this.gridTheme?[this.gridTheme.getCssClass()]:this.ancestorThemeClasses}applyThemeClasses(e){const t=this.getThemeClasses();for(const s of Array.from(e.classList))s.startsWith("ag-theme-")&&!t.includes(s)&&e.classList.remove(s);e.classList.add(...t)}refreshRowHeightVariable(){const e=this.eGridDiv.style.getPropertyValue("--ag-line-height").trim(),t=this.gos.get("rowHeight");if(t==null||isNaN(t)||!isFinite(t))return e!==null&&this.eGridDiv.style.setProperty("--ag-line-height",null),-1;const s=`${t}px`;return e!=s?(this.eGridDiv.style.setProperty("--ag-line-height",s),t):e!=""?parseFloat(e):-1}getCSSVariablePixelValue(e){const t=this.lastKnownValues.get(e);if(t!=null)return t;const s=this.measureSizeEl(e);return s==="detached"||s==="no-styles"?e.defaultValue:(this.lastKnownValues.set(e,s),s)}measureSizeEl(e){const t=this.getSizeEl(e);if(t.offsetParent==null)return"detached";const s=t.offsetWidth;return s===dl?"no-styles":(this.sizesMeasured=!0,s)}getSizeEl(e){let t=this.sizeEls.get(e);if(t)return t;let s=this.eMeasurementContainer;s||(s=this.eMeasurementContainer=document.createElement("div"),s.className="ag-measurement-container",this.gos.get("theme")&&this.applyThemeClasses(s),this.eGridDiv.appendChild(s)),t=document.createElement("div"),t.style.width=`var(${e.cssName}, ${dl}px)`,s.appendChild(t),this.sizeEls.set(e,t);let i=this.measureSizeEl(e);i==="no-styles"&&R(`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.`);const o=this.resizeObserverService.observeResize(t,()=>{const r=this.measureSizeEl(e);r==="detached"||r==="no-styles"||(this.lastKnownValues.set(e,r),r!==i&&(i=r,this.fireGridStylesChangedEvent(e.changeKey)))});return this.addDestroyFunc(()=>o()),t}fireGridStylesChangedEvent(e){this.eventService.dispatchEvent({type:"gridStylesChanged",[e]:!0})}setUpThemeClassObservers(){const e=new MutationObserver(()=>{const s=this.readAncestorThemeClasses();aC(s,this.ancestorThemeClasses)||(this.ancestorThemeClasses=s,this.fireGridStylesChangedEvent("themeChanged"))});let t=this.eGridDiv;for(;t;)e.observe(t||this.eGridDiv,{attributes:!0,attributeFilter:["class"]}),t=t.parentElement;this.addDestroyFunc(()=>e.disconnect())}readAncestorThemeClasses(){let e=this.eGridDiv;const t=[];for(;e;){const s=Array.from(e.classList).filter(i=>i.startsWith("ag-theme-"));for(const i of s)t.includes(i)||t.unshift(i);e=e.parentElement}return Object.freeze(t)}handleThemeGridOptionChange(){const{gos:e,eMeasurementContainer:t,gridTheme:s}=this,i=e.get("theme")||null;i!==s&&(s==null||s.stopUse(),this.gridTheme=i,i==null||i.startUse({loadThemeGoogleFonts:e.get("loadThemeGoogleFonts"),container:this.eGridDiv}),t&&this.applyThemeClasses(t),this.fireGridStylesChangedEvent("themeChanged"))}stopUsingTheme(){var e;(e=this.gridTheme)==null||e.stopUse(),this.gridTheme=null}},aC=(e,t)=>e.length===t.length&&e.findIndex((s,i)=>e[i]!==t[i])===-1,dl=15538,dC=class extends b{constructor(){super(...arguments),this.beanName="eventService",this.globalEventService=new qt}wireBeans(e){this.globalEventListener=e.globalEventListener,this.globalSyncEventListener=e.globalSyncEventListener}postConstruct(){if(this.globalEventListener){const e=qi(this.gos);this.addGlobalListener(this.globalEventListener,e)}this.globalSyncEventListener&&this.addGlobalListener(this.globalSyncEventListener,!1)}addEventListener(e,t,s){this.globalEventService.addEventListener(e,t,s)}removeEventListener(e,t,s){this.globalEventService.removeEventListener(e,t,s)}addGlobalListener(e,t=!1){this.globalEventService.addGlobalListener(e,t)}removeGlobalListener(e,t=!1){this.globalEventService.removeGlobalListener(e,t)}
156dispatchLocalEvent(){}dispatchEvent(e){this.globalEventService.dispatchEvent(this.gos.addGridCommonParams(e))}dispatchEventOnce(e){this.globalEventService.dispatchEventOnce(this.gos.addGridCommonParams(e))}},hn=class it extends b{constructor(){super(...arguments),this.beanName="focusService"}wireBeans(t){this.eGridDiv=t.eGridDiv,this.columnModel=t.columnModel,this.visibleColsService=t.visibleColsService,this.headerNavigationService=t.headerNavigationService,this.headerPositionUtils=t.headerPositionUtils,this.rowRenderer=t.rowRenderer,this.rowPositionUtils=t.rowPositionUtils,this.cellPositionUtils=t.cellPositionUtils,this.navigationService=t.navigationService,this.ctrlsService=t.ctrlsService,this.filterManager=t.filterManager,this.rangeService=t.rangeService,this.advancedFilterService=t.advancedFilterService,this.overlayService=t.overlayService}static addKeyboardModeEvents(t){this.instanceCount>0||(t.addEventListener("keydown",it.toggleKeyboardMode),t.addEventListener("mousedown",it.toggleKeyboardMode))}static removeKeyboardModeEvents(t){this.instanceCount>0||(t.removeEventListener("keydown",it.toggleKeyboardMode),t.removeEventListener("mousedown",it.toggleKeyboardMode))}static toggleKeyboardMode(t){const s=it.keyboardModeActive,i=t.type==="keydown";i&&(t.ctrlKey||t.metaKey||t.altKey)||s!==i&&(it.keyboardModeActive=i)}postConstruct(){const t=this.clearFocusedCell.bind(this);this.addManagedEventListeners({columnPivotModeChanged:t,newColumnsLoaded:this.onColumnEverythingChanged.bind(this),columnGroupOpened:t,columnRowGroupChanged:t}),this.registerKeyboardFocusEvents(),this.ctrlsService.whenReady(this,s=>{this.gridCtrl=s.gridCtrl})}registerKeyboardFocusEvents(){const t=le(this.gos);it.addKeyboardModeEvents(t),it.instanceCount++,this.addDestroyFunc(()=>{it.instanceCount--,it.removeKeyboardModeEvents(t)})}onColumnEverythingChanged(){if(!this.focusedCellPosition)return;const t=this.focusedCellPosition.column,s=this.columnModel.getCol(t.getId());t!==s&&this.clearFocusedCell()}isKeyboardMode(){return it.keyboardModeActive}getFocusCellToUseAfterRefresh(){return this.gos.get("suppressFocusAfterRefresh")||!this.focusedCellPosition||this.isDomDataMissingInHierarchy(Q(this.gos),ns.DOM_DATA_KEY_ROW_CTRL)?null:this.focusedCellPosition}getFocusHeaderToUseAfterRefresh(){return this.gos.get("suppressFocusAfterRefresh")||!this.focusedHeaderPosition||this.isDomDataMissingInHierarchy(Q(this.gos),Ro.DOM_DATA_KEY_HEADER_CTRL)?null:this.focusedHeaderPosition}isDomDataMissingInHierarchy(t,s){let i=t;for(;i;){if(hi(this.gos,i,s))return!1;i=i.parentNode}return!0}getFocusedCell(){return this.focusedCellPosition}shouldRestoreFocus(t){return this.isCellRestoreFocused(t)?(setTimeout(()=>{this.restoredFocusedCellPosition=null},0),!0):!1}clearRestoreFocus(){this.restoredFocusedCellPosition=null,this.awaitRestoreFocusedCell=!1}restoreFocusedCell(t,s){this.awaitRestoreFocusedCell=!0,setTimeout(()=>{this.awaitRestoreFocusedCell&&(this.setRestoreFocusedCell(t),s())})}isCellRestoreFocused(t){return this.restoredFocusedCellPosition==null?!1:this.cellPositionUtils.equals(t,this.restoredFocusedCellPosition)}setRestoreFocusedCell(t){this.getFrameworkOverrides().renderingEngine==="react"&&(this.restoredFocusedCellPosition=t)}getFocusEventParams(t){const{rowIndex:s,rowPinned:i,column:o}=t,r={rowIndex:s,rowPinned:i,column:o,isFullWidthCell:!1},n=this.rowRenderer.getRowByPosition({rowIndex:s,rowPinned:i});return n&&(r.isFullWidthCell=n.isFullWidth()),r}clearFocusedCell(){if(this.restoredFocusedCellPosition=null,this.focusedCellPosition==null)return;const t=this.getFocusEventParams(this.focusedCellPosition);this.focusedCellPosition=null,this.eventService.dispatchEvent({type:"cellFocusCleared",...t})}setFocusedCell(t){const{column:s,rowIndex:i,rowPinned:o,forceBrowserFocus:r=!1,preventScrollOnBrowserFocus:n=!1}=t,l=this.columnModel.getCol(s);if(!l){this.focusedCellPosition=null;return}this.focusedCellPosition={rowIndex:i,rowPinned:Oe(o),column:l},this.eventService.dispatchEvent({type:"cellFocused",...this.getFocusEventParams(this.focusedCellPosition),forceBrowserFocus:r,preventScrollOnBrowserFocus:n})}isCellFocused(t){return this.focusedCellPosition==null?!1:this.cellPositionUtils.equals(t,this.focusedCellPosition)}isRowNodeFocused(t){return this.isRowFocused(t.rowIndex,t.rowPinned)}
156isHeaderWrapperFocused(t){if(this.focusedHeaderPosition==null)return!1;const s=t.getColumnGroupChild(),i=t.getRowIndex(),o=t.getPinned(),{column:r,headerRowIndex:n}=this.focusedHeaderPosition;return s===r&&i===n&&o==r.getPinned()}clearFocusedHeader(){this.focusedHeaderPosition=null}getFocusedHeader(){return this.focusedHeaderPosition}setFocusedHeader(t,s){this.focusedHeaderPosition={headerRowIndex:t,column:s}}isHeaderFocusSuppressed(){return this.gos.get("suppressHeaderFocus")||this.overlayService.isExclusive()}isCellFocusSuppressed(){return this.gos.get("suppressCellFocus")||this.overlayService.isExclusive()}focusHeaderPosition(t){var d;if(this.isHeaderFocusSuppressed())return!1;const{direction:s,fromTab:i,allowUserOverride:o,event:r,fromCell:n,rowWithoutSpanValue:l}=t;let{headerPosition:a}=t;if(n&&((d=this.filterManager)!=null&&d.isAdvancedFilterHeaderActive()))return this.focusAdvancedFilter(a);if(o){const c=this.getFocusedHeader(),u=this.headerNavigationService.getHeaderRowCount();if(i){const h=this.gos.getCallback("tabToNextHeader");h&&(a=this.getHeaderPositionFromUserFunc({userFunc:h,direction:s,currentPosition:c,headerPosition:a,headerRowCount:u}))}else{const h=this.gos.getCallback("navigateToNextHeader");if(h&&r){const p={key:r.key,previousHeaderPosition:c,nextHeaderPosition:a,headerRowCount:u,event:r};a=h(p)}}}return a?this.focusProvidedHeaderPosition({headerPosition:a,direction:s,event:r,fromCell:n,rowWithoutSpanValue:l}):!1}focusHeaderPositionFromUserFunc(t){if(this.isHeaderFocusSuppressed())return!1;const{userFunc:s,headerPosition:i,direction:o,event:r}=t,n=this.getFocusedHeader(),l=this.headerNavigationService.getHeaderRowCount(),a=this.getHeaderPositionFromUserFunc({userFunc:s,direction:o,currentPosition:n,headerPosition:i,headerRowCount:l});return!!a&&this.focusProvidedHeaderPosition({headerPosition:a,direction:o,event:r})}getHeaderPositionFromUserFunc(t){const{userFunc:s,direction:i,currentPosition:o,headerPosition:r,headerRowCount:n}=t,a=s({backwards:i==="Before",previousHeaderPosition:o,nextHeaderPosition:r,headerRowCount:n});return a===!0||a===null?(a===null&&R("Since v31.3 Returning `null` from tabToNextHeader is deprecated. Return `true` to stay on the current header, or `false` to let the browser handle the tab behaviour."),o):a===!1?null:a}focusProvidedHeaderPosition(t){var u;const{headerPosition:s,direction:i,fromCell:o,rowWithoutSpanValue:r,event:n}=t,{column:l,headerRowIndex:a}=s;if(a===-1)return(u=this.filterManager)!=null&&u.isAdvancedFilterHeaderActive()?this.focusAdvancedFilter(s):this.focusGridView(l);this.headerNavigationService.scrollToColumn(l,i);const d=this.ctrlsService.getHeaderRowContainerCtrl(l.getPinned()),c=(d==null?void 0:d.focusHeader(s.headerRowIndex,l,n))||!1;return c&&(r!=null||o)&&this.headerNavigationService.setCurrentHeaderRowWithoutSpan(r??-1),c}focusFirstHeader(){if(this.overlayService.isExclusive()&&this.focusOverlay())return!0;let t=this.visibleColsService.getAllCols()[0];if(!t)return!1;t.getParent()&&(t=this.visibleColsService.getColGroupAtLevel(t,0));const s=this.headerPositionUtils.getHeaderIndexToFocus(t,0);return this.focusHeaderPosition({headerPosition:s,rowWithoutSpanValue:0})}focusLastHeader(t){if(this.overlayService.isExclusive()&&this.focusOverlay(!0))return!0;const s=this.headerNavigationService.getHeaderRowCount()-1,i=W(this.visibleColsService.getAllCols());return this.focusHeaderPosition({headerPosition:{headerRowIndex:s,column:i},rowWithoutSpanValue:-1,event:t})}focusPreviousFromFirstCell(t){var s;return(s=this.filterManager)!=null&&s.isAdvancedFilterHeaderActive()?this.focusAdvancedFilter(null):this.focusLastHeader(t)}isAnyCellFocused(){return!!this.focusedCellPosition}isRowFocused(t,s){return this.focusedCellPosition==null?!1:this.focusedCellPosition.rowIndex===t&&this.focusedCellPosition.rowPinned===Oe(s)}findFocusableElements(t,s,i=!1){const o=ih;let r=Ra;s&&(r+=", "+s),i&&(r+=', [tabindex="-1"]');const n=Array.prototype.slice.apply(t.querySelectorAll(o)).filter(d=>tt(d)),l=Array.prototype.slice.apply(t.querySelectorAll(r));return l.length?((d,c)=>d.filter(u=>c.indexOf(u)===-1))(n,l):n}focusInto(t,s=!1,i=!1){const o=this.findFocusableElements(t,null,i),r=s?W(o):o[0];return r?(r.focus({preventScroll:!0}),!0):!1}findFocusableElementBeforeTabGuard(t,s){if(!s)return null;const i=this.findFocusableElements(t),o=i.indexOf(s);if(o===-1)return null;let r=-1;for(let n=o-1;n>=0;n--)if(i[n].classList.contains("ag-tab-guard-top")){r=n;break}return r<=0?null:i[r-1]}findNextFocusableElement(t=this.eGridDiv,s,i){const o=this.findFocusableElements(t,s?':not([tabindex="-1"])':null),r=Q(this.gos);let n;s?n=o.findIndex(a=>a.contains(r)):n=o.indexOf(r);const l=n+(i?-1:1);return l<0||l>=o.length?null:o[l]}isTargetUnderManagedComponent(t,s){if(!s)return!1;const i=t.querySelectorAll(`.${kt.FOCUS_MANAGED_CLASS}`);if(!i.length)return!1;for(let o=0;o<i.length;o++)if(i[o].contains(s))return!0;return!1}findTabbableParent(t,s=5){let i=0;for(;t&&hr(t)===null&&++i<=s;)t=t.parentElement;return hr(t)===null?null:t}focusOverlay(t){var i;const s=this.overlayService.isVisible()&&((i=this.overlayService.getOverlayWrapper())==null?void 0:i.getGui());return!!s&&this.focusInto(s,t)}focusGridViewFailed(t,s){return s&&this.focusOverlay(t)||t&&this.focusLastHeader()}
156focusGridView(t,s=!1,i=!0){var r,n;if(this.overlayService.isExclusive())return i&&this.focusOverlay(s);if(this.isCellFocusSuppressed())return s&&!this.isHeaderFocusSuppressed()?this.focusLastHeader():i&&this.focusOverlay(s)?!0:this.focusNextGridCoreContainer(!1);const o=s?this.rowPositionUtils.getLastRow():this.rowPositionUtils.getFirstRow();if(o){const{rowIndex:l,rowPinned:a}=o;if(t??(t=(r=this.getFocusedHeader())==null?void 0:r.column),t&&l!==void 0&&l!==null){if(this.navigationService.ensureCellVisible({rowIndex:l,column:t,rowPinned:a}),s){const d=this.rowRenderer.getRowByPosition(o);if(d!=null&&d.isFullWidth()&&this.navigationService.tryToFocusFullWidthRow(o,s))return!0}return this.setFocusedCell({rowIndex:l,column:t,rowPinned:Oe(a),forceBrowserFocus:!0}),(n=this.rangeService)==null||n.setRangeToCell({rowIndex:l,rowPinned:a,column:t}),!0}}return!!(i&&this.focusOverlay(s)||s&&this.focusLastHeader())}isGridFocused(){const t=Q(this.gos);return!!t&&this.eGridDiv.contains(t)}focusNextGridCoreContainer(t,s=!1){return!s&&this.gridCtrl.focusNextInnerContainer(t)?!0:((s||!t&&!this.gridCtrl.isDetailGrid())&&this.gridCtrl.forceFocusOutOfContainer(t),!1)}focusAdvancedFilter(t){var s;return this.advancedFilterFocusColumn=t==null?void 0:t.column,((s=this.advancedFilterService)==null?void 0:s.getCtrl().focusHeaderComp())??!1}focusNextFromAdvancedFilter(t,s){var o;const i=(s?void 0:this.advancedFilterFocusColumn)??((o=this.visibleColsService.getAllCols())==null?void 0:o[0]);return t?this.focusHeaderPosition({headerPosition:{column:i,headerRowIndex:this.headerNavigationService.getHeaderRowCount()-1}}):this.focusGridView(i)}clearAdvancedFilterColumn(){this.advancedFilterFocusColumn=void 0}addFocusableContainer(t){this.gridCtrl.addFocusableContainer(t)}removeFocusableContainer(t){this.gridCtrl.removeFocusableContainer(t)}focusGridInnerElement(t){return this.gridCtrl.focusInnerElement(t)}allowFocusForNextGridCoreContainer(t){this.gridCtrl.allowFocusForNextCoreContainer(t)}};hn.keyboardModeActive=!1;hn.instanceCount=0;var cC=hn,uC=class extends b{constructor(){super(...arguments),this.beanName="pinnedWidthService"}wireBeans(e){this.visibleColsService=e.visibleColsService}postConstruct(){const e=this.checkContainerWidths.bind(this);this.addManagedEventListeners({displayedColumnsChanged:e,displayedColumnsWidthChanged:e}),this.addManagedPropertyListener("domLayout",e)}checkContainerWidths(){const e=De(this.gos,"print"),t=e?0:this.visibleColsService.getColsLeftWidth(),s=e?0:this.visibleColsService.getDisplayedColumnsRightWidth();t!=this.leftWidth&&(this.leftWidth=t,this.eventService.dispatchEvent({type:"leftPinnedWidthChanged"})),s!=this.rightWidth&&(this.rightWidth=s,this.eventService.dispatchEvent({type:"rightPinnedWidthChanged"}))}getPinnedRightWidth(){return this.rightWidth}getPinnedLeftWidth(){return this.leftWidth}},Kd=class extends b{constructor(){super(...arguments),this.additionalFocusableContainers=new Set}wireBeans(e){this.beans=e,this.focusService=e.focusService,this.visibleColsService=e.visibleColsService}setComp(e,t,s){this.view=e,this.eGridHostDiv=t,this.eGui=s,this.eGui.setAttribute("grid-id",this.beans.context.getGridId());const{dragAndDropService:i,mouseEventService:o,ctrlsService:r,resizeObserverService:n}=this.beans,l={getContainer:()=>this.eGui,isInterestedIn:d=>d===1||d===0,getIconName:()=>"notAllowed"};i.addDropTarget(l),this.addDestroyFunc(()=>i.removeDropTarget(l)),o.stampTopLevelGridCompWithGridInstance(t),this.createManagedBean(new un(this.view)),this.view.setRtlClass(this.gos.get("enableRtl")?"ag-rtl":"ag-ltr"),this.updateGridThemeClass(),this.addManagedEventListeners({gridStylesChanged:this.handleThemeChange.bind(this)});const a=n.observeResize(this.eGridHostDiv,this.onGridSizeChanged.bind(this));this.addDestroyFunc(()=>a()),r.register("gridCtrl",this)}isDetailGrid(){var t;const e=this.focusService.findTabbableParent(this.getGui());return((t=e==null?void 0:e.getAttribute("row-id"))==null?void 0:t.startsWith("detail"))||!1}getOptionalSelectors(){var t,s,i,o,r;const e=this.beans;return{paginationSelector:(t=e.paginationService)==null?void 0:t.getPaginationSelector(),gridHeaderDropZonesSelector:(s=e.columnDropZonesService)==null?void 0:s.getDropZoneSelector(),sideBarSelector:(i=e.sideBarService)==null?void 0:i.getSideBarSelector(),statusBarSelector:(o=e.statusBarService)==null?void 0:o.getStatusPanelSelector(),watermarkSelector:(r=e.licenseManager)==null?void 0:r.getWatermarkSelector()}}onGridSizeChanged(){this.eventService.dispatchEvent({type:"gridSizeChanged",clientWidth:this.eGridHostDiv.clientWidth,clientHeight:this.eGridHostDiv.clientHeight})}destroyGridUi(){this.view.destroyGridUi()}getGui(){return this.eGui}setResizeCursor(e){this.view.setCursor(e?"ew-resize":null)}disableUserSelect(e){this.view.setUserSelect(e?"none":null)}focusNextInnerContainer(e){const t=this.getFocusableContainers(),{indexWithFocus:s,nextIndex:i}=this.getNextFocusableIndex(t,e);if(i<0||i>=t.length)return!1;if(i===0){if(s>0){const o=this.visibleColsService.getAllCols(),r=W(o);if(this.focusService.focusGridView(r,!0))return!0}return!1}return this.focusContainer(t[i],e)}focusInnerElement(e){const t=this.gos.getCallback("focusGridInnerElement");
156if(t&&t({fromBottom:!!e}))return!0;const s=this.getFocusableContainers(),i=this.visibleColsService.getAllCols();if(e){if(s.length>1)return this.focusContainer(W(s),!0);const o=W(i);if(this.focusService.focusGridView(o,!0))return!0}if(this.gos.get("headerHeight")===0||this.focusService.isHeaderFocusSuppressed()){if(this.focusService.focusGridView(i[0]))return!0;for(let o=1;o<s.length;o++)if(this.focusService.focusInto(s[o].getGui()))return!0;return!1}return this.focusService.focusFirstHeader()}forceFocusOutOfContainer(e=!1){this.view.forceFocusOutOfContainer(e)}addFocusableContainer(e){this.additionalFocusableContainers.add(e)}removeFocusableContainer(e){this.additionalFocusableContainers.delete(e)}allowFocusForNextCoreContainer(e){var r;const t=this.view.getFocusableContainers(),{nextIndex:s,indexWithFocus:i}=this.getNextFocusableIndex(t,e);if(i===-1||s<0||s>=t.length)return;const o=t[s];(r=o.setAllowFocus)==null||r.call(o,!0),setTimeout(()=>{var n;(n=o.setAllowFocus)==null||n.call(o,!1)})}getNextFocusableIndex(e,t){const s=Q(this.gos),i=e.findIndex(r=>r.getGui().contains(s)),o=i+(t?-1:1);return{indexWithFocus:i,nextIndex:o}}focusContainer(e,t){var i,o;(i=e.setAllowFocus)==null||i.call(e,!0);const s=this.focusService.focusInto(e.getGui(),t);return(o=e.setAllowFocus)==null||o.call(e,!1),s}getFocusableContainers(){return[...this.view.getFocusableContainers(),...this.additionalFocusableContainers]}updateGridThemeClass(){const e=this.beans.environment.getGridThemeClass();e&&this.view.setGridThemeClass(e)}handleThemeChange(e){e.themeChanged&&this.updateGridThemeClass()}destroy(){this.additionalFocusableContainers.clear(),super.destroy()}},hC=class extends fs{constructor(t){super(),this.gridBody=P,this.sideBar=P,this.pagination=P,this.rootWrapperBody=P,this.eGridDiv=t}postConstruct(){const t={destroyGridUi:()=>this.destroyBean(this),setRtlClass:n=>this.addCssClass(n),setGridThemeClass:n=>this.addCssClass(n),forceFocusOutOfContainer:this.forceFocusOutOfContainer.bind(this),updateLayoutClasses:this.updateLayoutClasses.bind(this),getFocusableContainers:this.getFocusableContainers.bind(this),setUserSelect:n=>{this.getGui().style.userSelect=n??"",this.getGui().style.webkitUserSelect=n??""},setCursor:n=>{this.getGui().style.cursor=n??""}},s=this.createManagedBean(new Kd),i=s.getOptionalSelectors(),o=this.createTemplate(i),r=[Gf,...Object.values(i).filter(n=>!!n)];this.setTemplate(o,r),s.setComp(t,this.eGridDiv,this.getGui()),this.insertGridIntoDom(),this.initialiseTabGuard({onTabKeyDown:()=>{},focusInnerElement:n=>s.focusInnerElement(n),forceFocusOutWhenTabGuardsAreEmpty:!0})}insertGridIntoDom(){const t=this.getGui();this.eGridDiv.appendChild(t),this.addDestroyFunc(()=>{this.eGridDiv.removeChild(t),this.gos.get("debug")&&ut("Grid removed from DOM")})}updateLayoutClasses(t,s){const i=this.rootWrapperBody.classList;i.toggle("ag-layout-auto-height",s.autoHeight),i.toggle("ag-layout-normal",s.normal),i.toggle("ag-layout-print",s.print),this.addOrRemoveCssClass("ag-layout-auto-height",s.autoHeight),this.addOrRemoveCssClass("ag-layout-normal",s.normal),this.addOrRemoveCssClass("ag-layout-print",s.print)}createTemplate(t){const s=t.gridHeaderDropZonesSelector?"<ag-grid-header-drop-zones></ag-grid-header-drop-zones>":"",i=t.sideBarSelector?'<ag-side-bar data-ref="sideBar"></ag-side-bar>':"",o=t.statusBarSelector?"<ag-status-bar></ag-status-bar>":"",r=t.watermarkSelector?"<ag-watermark></ag-watermark>":"",n=t.paginationSelector?'<ag-pagination data-ref="pagination"></ag-pagination>':"";return`<div class="ag-root-wrapper" role="presentation"> 157 ${s} 158 <div class="ag-root-wrapper-body" data-ref="rootWrapperBody" role="presentation"> 159 <ag-grid-body data-ref="gridBody"></ag-grid-body> 160 ${i} 161 </div> 162 ${o} 163 ${n} 164 ${r} 165 </div>`}getFocusableElement(){return this.rootWrapperBody}forceFocusOutOfContainer(t=!1){var s;if(!t&&((s=this.pagination)!=null&&s.isDisplayed())){this.pagination.forceFocusOutOfContainer(t);return}super.forceFocusOutOfContainer(t)}getFocusableContainers(){const t=[this.gridBody];
165return[this.sideBar,this.pagination].forEach(s=>{s&&t.push(s)}),t.filter(s=>tt(s.getGui()))}},pC=class extends b{constructor(){super(...arguments),this.beanName="alignedGridsService",this.consuming=!1}wireBeans(e){this.columnModel=e.columnModel,this.columnSizeService=e.columnSizeService,this.ctrlsService=e.ctrlsService,this.columnApplyStateService=e.columnApplyStateService}getAlignedGridApis(){let e=this.gos.get("alignedGrids")??[];const t=typeof e=="function";typeof e=="function"&&(e=e());const s=()=>`See ${this.getFrameworkOverrides().getDocLink("aligned-grids")}`;return e.map(o=>{var n;if(!o){_("alignedGrids contains an undefined option."),t||_(`You may want to configure via a callback to avoid setup race conditions: 166 "alignedGrids: () => [linkedGrid]"`),_(s());return}if(this.isGridApi(o))return o;const r=o;return"current"in r?(n=r.current)==null?void 0:n.api:(r.api||_(`alignedGrids - No api found on the linked grid. If you are passing gridOptions to alignedGrids since v31 this is no longer valid. ${s()}`),r.api)}).filter(o=>!!o&&!o.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:t})=>this.onColumnEvent(t),alignedGridScroll:({event:t})=>this.onScrollEvent(t)})}fireEvent(e){this.consuming||this.getAlignedGridApis().forEach(t=>{t.isDestroyed()||t.dispatchEvent(e)})}onEvent(e){this.consuming=!0,e(),this.consuming=!1}fireColumnEvent(e){this.fireEvent({type:"alignedGridColumn",event:e})}fireScrollEvent(e){e.direction==="horizontal"&&this.fireEvent({type:"alignedGridScroll",event:e})}onScrollEvent(e){this.onEvent(()=>{this.ctrlsService.getGridBodyCtrl().getScrollFeature().setHorizontalScrollPosition(e.left,!0)})}extractDataFromEvent(e,t){const s=[];return e.columns?e.columns.forEach(i=>{s.push(t(i))}):e.column&&s.push(t(e.column)),s}getMasterColumns(e){return this.extractDataFromEvent(e,t=>t)}getColumnIds(e){return this.extractDataFromEvent(e,t=>t.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":R("pivoting is not supported with aligned grids. You can only use one of these features at a time in a grid.");break}})}processGroupOpenedEvent(e){const{columnModel:t}=this;e.columnGroups.forEach(s=>{let i=null;s&&(i=t.getProvidedColGroup(s.getGroupId())),!(s&&!i)&&t.setColumnGroupOpened(i,s.isExpanded(),"alignedGridChanged")})}processColumnEvent(e){var d;const t=e.column;let s=null;if(t&&(s=this.columnModel.getColDefCol(t.getColId())),t&&!s)return;const i=this.getMasterColumns(e),{columnApplyStateService:o,columnSizeService:r,ctrlsService:n}=this;switch(e.type){case"columnMoved":{const u=e.api.getColumnState().map(h=>({colId:h.colId}));o.applyColumnState({state:u,applyOrder:!0},"alignedGridChanged")}break;case"columnVisible":{const u=e.api.getColumnState().map(h=>({colId:h.colId,hide:h.hide}));o.applyColumnState({state:u},"alignedGridChanged")}break;case"columnPinned":{const u=e.api.getColumnState().map(h=>({colId:h.colId,pinned:h.pinned}));o.applyColumnState({state:u},"alignedGridChanged")}break;case"columnResized":{const c=e,u={};i.forEach(h=>{u[h.getId()]={key:h.getColId(),newWidth:h.getActualWidth()}}),(d=c.flexColumns)==null||d.forEach(h=>{u[h.getId()]&&delete u[h.getId()]}),r.setColumnWidths(Object.values(u),!1,c.finished,"alignedGridChanged");break}}const a=n.getGridBodyCtrl().isVerticalScrollShowing();this.getAlignedGridApis().forEach(c=>{c.setGridOption("alwaysShowVerticalScroll",a)})}},gC={version:V,moduleName:"@ag-grid-community/aligned-grid",beans:[pC]};function fC(e,t){const s=e.columnModel.getColDefCol(t);return s?s.getColDef():null}function mC(e){return e.columnModel.getColumnDefs()}function CC(e,t){typeof t=="number"?e.columnSizeService.sizeColumnsToFit(t,"api"):e.ctrlsService.getGridBodyCtrl().sizeColumnsToFit(t)}
166function vC(e,t,s){e.columnModel.setColumnGroupOpened(t,s,"api")}function SC(e,t,s){return e.visibleColsService.getColumnGroup(t,s)}function wC(e,t){return e.columnModel.getProvidedColGroup(t)}function yC(e,t,s){return e.columnNameService.getDisplayNameForColumn(t,s)||""}function RC(e,t,s){return e.columnNameService.getDisplayNameForColumnGroup(t,s)||""}function bC(e,t){return e.columnModel.getColDefCol(t)}function FC(e){return e.columnModel.getColDefCols()}function PC(e,t){return e.columnApplyStateService.applyColumnState(t,"api")}function EC(e){return e.columnGetStateService.getColumnState()}function MC(e){e.columnApplyStateService.resetColumnState("api")}function DC(e){return e.columnGroupStateService.getColumnGroupState()}function xC(e,t){e.columnGroupStateService.setColumnGroupState(t,"api")}function AC(e){e.columnGroupStateService.resetColumnGroupState("api")}function TC(e){return e.visibleColsService.isPinningLeft()||e.visibleColsService.isPinningRight()}function IC(e){return e.visibleColsService.isPinningLeft()}function LC(e){return e.visibleColsService.isPinningRight()}function GC(e,t){return e.visibleColsService.getColAfter(t)}function kC(e,t){return e.visibleColsService.getColBefore(t)}function OC(e,t,s){e.columnModel.setColsVisible([t],s,"api")}function NC(e,t,s){e.columnModel.setColsVisible(t,s,"api")}function BC(e,t,s){e.columnModel.setColsPinned([t],s,"api")}function VC(e,t,s){e.columnModel.setColsPinned(t,s,"api")}function HC(e){return e.columnModel.getCols()}function WC(e){return e.visibleColsService.getLeftCols()}function zC(e){return e.visibleColsService.getCenterCols()}function UC(e){return e.visibleColsService.getRightCols()}function _C(e){return e.visibleColsService.getAllCols()}function KC(e){return e.columnViewportService.getViewportColumns()}function $C(e,t,s){e.columnMoveService.moveColumns([t],s,"api")}function jC(e,t,s){e.columnMoveService.moveColumnByIndex(t,s,"api")}function qC(e,t,s){e.columnMoveService.moveColumns(t,s,"api")}function YC(e,t,s,i=!0,o="api"){e.columnSizeService.setColumnWidths([{key:t,newWidth:s}],!1,i,o)}function QC(e,t,s=!0,i="api"){e.columnSizeService.setColumnWidths(t,!1,s,i)}function XC(e){return e.visibleColsService.getTreeLeft()}function ZC(e){return e.visibleColsService.getTreeCenter()}function JC(e){return e.visibleColsService.getTreeRight()}function ev(e){return e.visibleColsService.getAllTrees()}function tv(e,t,s){return e.columnAutosizeService.autoSizeCols({colKeys:[t],skipHeader:s,source:"api"})}function sv(e,t,s){e.columnAutosizeService.autoSizeCols({colKeys:t,skipHeader:s,source:"api"})}function iv(e,t){e.columnAutosizeService.autoSizeAllColumns("api",t)}var ov=class extends b{constructor(){super(...arguments),this.beanName="dataTypeService",this.dataTypeDefinitions={},this.isWaitingForRowData=!1,this.isColumnTypeOverrideInDataTypeDefinitions=!1,this.columnStateUpdatesPendingInference={},this.columnStateUpdateListenerDestroyFuncs=[]}wireBeans(e){this.rowModel=e.rowModel,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.columnApplyStateService=e.columnApplyStateService,this.filterManager=e.filterManager}postConstruct(){this.groupHideOpenParents=this.gos.get("groupHideOpenParents"),this.addManagedPropertyListener("groupHideOpenParents",()=>{this.groupHideOpenParents=this.gos.get("groupHideOpenParents")}),this.processDataTypeDefinitions(),this.addManagedPropertyListener("dataTypeDefinitions",e=>{this.processDataTypeDefinitions(),this.columnModel.recreateColumnDefs(Zt(e.source))})}processDataTypeDefinitions(){const e=this.getDefaultDataTypes();this.dataTypeDefinitions={},this.formatValueFuncs={};const t=i=>o=>{const{column:r,node:n,value:l}=o;let a=r.getColDef().valueFormatter;return a===i.groupSafeValueFormatter&&(a=i.valueFormatter),this.valueService.formatValue(r,n,l,a)};Object.entries(e).forEach(([i,o])=>{const r={...o,groupSafeValueFormatter:this.createGroupSafeValueFormatter(o)};this.dataTypeDefinitions[i]=r,this.formatValueFuncs[i]=t(r)});const s=this.gos.get("dataTypeDefinitions")??{};this.dataTypeMatchers={}
166,Object.entries(s).forEach(([i,o])=>{const r=this.processDataTypeDefinition(o,s,[i],e);r&&(this.dataTypeDefinitions[i]=r,o.dataTypeMatcher&&(this.dataTypeMatchers[i]=o.dataTypeMatcher),this.formatValueFuncs[i]=t(r))}),this.checkObjectValueHandlers(e),["dateString","text","number","boolean","date"].forEach(i=>{const o=this.dataTypeMatchers[i];o&&delete this.dataTypeMatchers[i],this.dataTypeMatchers[i]=o??e[i].dataTypeMatcher})}mergeDataTypeDefinitions(e,t){const s={...e,...t};return e.columnTypes&&t.columnTypes&&t.appendColumnTypes&&(s.columnTypes=[...zi(e.columnTypes),...zi(t.columnTypes)]),s}processDataTypeDefinition(e,t,s,i){let o;const r=e.extendsDataType;if(e.columnTypes&&(this.isColumnTypeOverrideInDataTypeDefinitions=!0),e.extendsDataType===e.baseDataType){let n=i[r];const l=t[r];if(n&&l&&(n=l),!this.validateDataTypeDefinition(e,n,r))return;o=this.mergeDataTypeDefinitions(n,e)}else{if(s.includes(r)){R('Data type definition hierarchies (via the "extendsDataType" property) cannot contain circular references.');return}const n=t[r];if(!this.validateDataTypeDefinition(e,n,r))return;const l=this.processDataTypeDefinition(n,t,[...s,r],i);if(!l)return;o=this.mergeDataTypeDefinitions(l,e)}return{...o,groupSafeValueFormatter:this.createGroupSafeValueFormatter(o)}}validateDataTypeDefinition(e,t,s){return t?t.baseDataType!==e.baseDataType?(R('The "baseDataType" property of a data type definition must match that of its parent.'),!1):!0:(R(`The data type definition ${s} does not exist.`),!1)}createGroupSafeValueFormatter(e){if(e.valueFormatter)return t=>{var s,i;if((s=t.node)!=null&&s.group){const o=(t.colDef.pivotValueColumn??t.column).getAggFunc();if(o){if(o==="first"||o==="last")return e.valueFormatter(t);if(e.baseDataType==="number"&&o!=="count"){if(typeof t.value=="number")return e.valueFormatter(t);if(typeof t.value=="object"){if(!t.value)return;if("toNumber"in t.value)return e.valueFormatter({...t,value:t.value.toNumber()});if("value"in t.value)return e.valueFormatter({...t,value:t.value.value})}}return}if((this.gos.get("suppressGroupMaintainValueType")||this.gos.get("groupDisplayType")==="groupRows")&&!this.gos.get("treeData"))return}else if(this.groupHideOpenParents&&t.column.isRowGroupActive()&&typeof t.value=="string"&&!((i=e.dataTypeMatcher)!=null&&i.call(e,t.value)))return;return e.valueFormatter(t)}}updateColDefAndGetColumnType(e,t,s){let{cellDataType:i}=t;const{field:o}=t;if(i===void 0&&(i=e.cellDataType),(i==null||i===!0)&&(i=this.canInferCellDataType(e,t)?this.inferCellDataType(o,s):!1),!i){e.cellDataType=!1;return}const r=this.dataTypeDefinitions[i];if(!r){R(`Missing data type definition - "${i}"`);return}return e.cellDataType=i,r.groupSafeValueFormatter&&(e.valueFormatter=r.groupSafeValueFormatter),r.valueParser&&(e.valueParser=r.valueParser),r.suppressDefaultProperties||this.setColDefPropertiesForBaseDataType(e,i,r,s),r.columnTypes}addColumnListeners(e){if(!this.isWaitingForRowData)return;const t=this.columnStateUpdatesPendingInference[e.getColId()];if(!t)return;const s=i=>{t.add(i.key)};e.addEventListener("columnStateUpdated",s),this.columnStateUpdateListenerDestroyFuncs.push(()=>e.removeEventListener("columnStateUpdated",s))}canInferCellDataType(e,t){if(!re(this.gos))return!1;const s={cellRenderer:!0,valueGetter:!0,valueParser:!0,refData:!0}
166;if(this.doColDefPropsPreventInference(t,s))return!1;const i=t.type===null?e.type:t.type;if(i){const o=this.gos.get("columnTypes")??{};if(zi(i).some(n=>{const l=o[n.trim()];return l&&this.doColDefPropsPreventInference(l,s)}))return!1}return!this.doColDefPropsPreventInference(e,s)}doColDefPropsPreventInference(e,t){return[["cellRenderer","agSparklineCellRenderer"],["valueGetter",void 0],["valueParser",void 0],["refData",void 0]].some(([s,i])=>this.doesColDefPropPreventInference(e,t,s,i))}doesColDefPropPreventInference(e,t,s,i){if(!t[s])return!1;const o=e[s];return o===null?(t[s]=!1,!1):i===void 0?!!o:o===i}inferCellDataType(e,t){if(!e)return;let s;const i=this.getInitialData();if(i){const r=e.indexOf(".")>=0&&!this.gos.get("suppressFieldDotNotation");s=si(i,e,r)}else this.initWaitForRowData(t);if(s==null)return;const[o]=Object.entries(this.dataTypeMatchers).find(([r,n])=>n(s))??["object"];return o}getInitialData(){const e=this.gos.get("rowData");if(e!=null&&e.length)return e[0];if(this.initialData)return this.initialData;{const t=this.rowModel.getRootNode().allLeafChildren;if(t!=null&&t.length)return t[0].data}return null}initWaitForRowData(e){if(this.columnStateUpdatesPendingInference[e]=new Set,this.isWaitingForRowData)return;this.isWaitingForRowData=!0;const t=this.isColumnTypeOverrideInDataTypeDefinitions;t&&this.columnModel.queueResizeOperations();const[s]=this.addManagedEventListeners({rowDataUpdateStarted:i=>{const{firstRowData:o}=i;o&&(s==null||s(),this.isWaitingForRowData=!1,this.processColumnsPendingInference(o,t),this.columnStateUpdatesPendingInference={},t&&this.columnModel.processResizeOperations(),this.eventService.dispatchEvent({type:"dataTypesInferred"}))}})}isPendingInference(){return this.isWaitingForRowData}processColumnsPendingInference(e,t){this.initialData=e;const s=[];this.destroyColumnStateUpdateListeners();const i={},o={};Object.entries(this.columnStateUpdatesPendingInference).forEach(([r,n])=>{const l=this.columnModel.getCol(r);if(!l)return;const a=l.getColDef();if(!this.columnModel.resetColDefIntoCol(l,"cellDataTypeInferred"))return;const d=l.getColDef();if(t&&d.type&&d.type!==a.type){const c=this.getUpdatedColumnState(l,n);c.rowGroup&&c.rowGroupIndex==null&&(i[r]=c),c.pivot&&c.pivotIndex==null&&(o[r]=c),s.push(c)}}),t&&s.push(...this.funcColsService.generateColumnStateForRowGroupAndPivotIndexes(i,o)),s.length&&this.columnApplyStateService.applyColumnState({state:s},"cellDataTypeInferred"),this.initialData=null}getUpdatedColumnState(e,t){const s=this.columnApplyStateService.getColumnStateFromColDef(e);return t.forEach(i=>{delete s[i],i==="rowGroup"?delete s.rowGroupIndex:i==="pivot"&&delete s.pivotIndex}),s}checkObjectValueHandlers(e){const t=this.dataTypeDefinitions.object,s=e.object;this.hasObjectValueParser=t.valueParser!==s.valueParser,this.hasObjectValueFormatter=t.valueFormatter!==s.valueFormatter}getDateStringTypeDefinition(e){return e?this.getDataTypeDefinition(e)??this.dataTypeDefinitions.dateString:this.dataTypeDefinitions.dateString}getDateParserFunction(e){return this.getDateStringTypeDefinition(e).dateParser}getDateFormatterFunction(e){return this.getDateStringTypeDefinition(e).dateFormatter}getDataTypeDefinition(e){const t=e.getColDef();if(t.cellDataType)return this.dataTypeDefinitions[t.cellDataType]}getBaseDataType(e){var t;return(t=this.getDataTypeDefinition(e))==null?void 0:t.baseDataType}checkType(e,t){var i;if(t==null)return!0;const s=(i=this.getDataTypeDefinition(e))==null?void 0:i.dataTypeMatcher;return s?s(t):!0}validateColDef(e){const t=s=>R(`Cell data type is "object" but no Value ${s} has been provided. Please either provide an object data type definition with a Value ${s}, or set "colDef.value${s}"`);e.cellDataType==="object"&&(e.valueFormatter===this.dataTypeDefinitions.object.groupSafeValueFormatter&&!this.hasObjectValueFormatter&&t("Formatter"),e.editable&&e.valueParser===this.dataTypeDefinitions.object.valueParser&&!this.hasObjectValueParser&&t("Parser"))}getFormatValue(e){return this.formatValueFuncs[e]}setColDefPropertiesForBaseDataType(e,t,s,i){var r;const o=this.formatValueFuncs[t];switch(s.baseDataType){case"number":{e.cellEditor="agNumberCellEditor";break}case"boolean":{e.cellEditor="agCheckboxCellEditor",e.cellRenderer="agCheckboxCellRenderer",e.suppressKeyboardEvent=n=>!!n.colDef.editable&&n.event.key===S.SPACE;break}case"date":{e.cellEditor="agDateCellEditor",e.keyCreator=o;break}case"dateString":{e.cellEditor="agDateStringCellEditor",e.keyCreator=o;break}case"object":{e.cellEditorParams={useFormatter:!0},e.comparator=(n,l)=>{const a=this.columnModel.getColDefCol(i),d=a==null?void 0:a.getColDef();if(!a||!d)return 0;const c=n==null?"":o({column:a,node:null,value:n}),u=l==null?"":o({column:a,node:null,value:l});return c===u?0:c>u?1:-1},e.keyCreator=o;break}}(r=this.filterManager)==null||r.setColDefPropertiesForDataType(e,s,o)}getDefaultDataTypes(){const e=s=>!!s.match("^\\d{4}-\\d{2}-\\d{2}$"),t=this.localeService.getLocaleTextFunc();return{number:{baseDataType:"number",valueParser:s=>{var i,o;return((o=(i=s.newValue)==null?void 0:i.trim)==null?void 0:o.call(i))===""?null:Number(s.newValue)},valueFormatter:s=>s.value==null?"":typeof s.value!="number"||isNaN(s.value)?t("invalidNumber","Invalid Number"):String(s.value),dataTypeMatcher:s=>typeof s=="number"},text:{baseDataType:"text",valueParser:s=>s.newValue===""?null:xt(s.newValue),dataTypeMatcher:s=>typeof s=="string"},boolean:{baseDataType:"boolean",valueParser:s=>{var i,o;return s.newValue==null?s.newValue:((o=(i=s.newValue)==null?void 0:i.trim)==null?void 0:o.call(i))===""?null:String(s.newValue).toLowerCase()==="true"},valueFormatter:s=>s.value==null?"":String(s.value),dataTypeMatcher:s=>typeof s=="boolean"},date:{baseDataType:"date",valueParser:s=>je(s.newValue==null?null:String(s.newValue)),valueFormatter:s=>s.value==null?"":!(s.value instanceof Date)||isNaN(s.value.getTime())?t("invalidDate","Invalid Date"):lt(s.value,!1)??"",dataTypeMatcher:s=>s instanceof Date},dateString:{baseDataType:"dateString",dateParser:s=>je(s)??void 0,dateFormatter:s=>lt(s??null,!1)??void 0,valueParser:s=>e(String(s.newValue))?s.newValue:null,valueFormatter:s=>e(String(s.value))?s.value:"",dataTypeMatcher:s=>typeof s=="string"&&e(s)},object:{baseDataType:"object",valueParser:()=>null,valueFormatter:s=>xt(s.value)??""}}}destroyColumnStateUpdateListeners(){this.columnStateUpdateListenerDestroyFuncs.forEach(e
166=>e()),this.columnStateUpdateListenerDestroyFuncs=[]}destroy(){this.dataTypeDefinitions={},this.dataTypeMatchers={},this.formatValueFuncs={},this.columnStateUpdatesPendingInference={},this.destroyColumnStateUpdateListeners(),super.destroy()}},rv={version:V,moduleName:"@ag-grid-community/data-type",beans:[ov]},nv={version:V,moduleName:"@ag-grid-community/column-api",apiFunctions:{getColumnDef:fC,getColumnDefs:mC,sizeColumnsToFit:CC,setColumnGroupOpened:vC,getColumnGroup:SC,getProvidedColumnGroup:wC,getDisplayNameForColumn:yC,getDisplayNameForColumnGroup:RC,getColumn:bC,getColumns:FC,applyColumnState:PC,getColumnState:EC,resetColumnState:MC,getColumnGroupState:DC,setColumnGroupState:xC,resetColumnGroupState:AC,isPinning:TC,isPinningLeft:IC,isPinningRight:LC,getDisplayedColAfter:GC,getDisplayedColBefore:kC,setColumnVisible:OC,setColumnsVisible:NC,setColumnPinned:BC,setColumnsPinned:VC,getAllGridColumns:HC,getDisplayedLeftColumns:WC,getDisplayedCenterColumns:zC,getDisplayedRightColumns:UC,getAllDisplayedColumns:_C,getAllDisplayedVirtualColumns:KC,moveColumn:$C,moveColumnByIndex:jC,moveColumns:qC,setColumnWidth:YC,setColumnWidths:QC,getLeftDisplayedColumnGroups:XC,getCenterDisplayedColumnGroups:ZC,getRightDisplayedColumnGroups:JC,getAllDisplayedColumnGroups:ev,autoSizeColumn:tv,autoSizeColumns:sv,autoSizeAllColumns:iv}};function lv(e,t){e.ctrlsService.getGridBodyCtrl().getRowDragFeature().addRowDropZone(t)}function av(e,t){const s=e.dragAndDropService.findExternalZone(t);s&&e.dragAndDropService.removeDropTarget(s)}function dv(e,t){return e.ctrlsService.getGridBodyCtrl().getRowDragFeature().getRowDropZone(t)}var cv={version:V,moduleName:"@ag-grid-community/drag-api",apiFunctions:{addRowDropZone:lv,removeRowDropZone:av,getRowDropZoneParams:dv}};function uv(e){return e.pinnedRowModel.getPinnedTopRowCount()}function hv(e){return e.pinnedRowModel.getPinnedBottomRowCount()}function pv(e,t){return e.pinnedRowModel.getPinnedTopRow(t)}function gv(e,t){return e.pinnedRowModel.getPinnedBottomRow(t)}var fv={version:V,moduleName:"@ag-grid-community/pinned-row-api",apiFunctions:{getPinnedTopRowCount:uv,getPinnedBottomRowCount:hv,getPinnedTopRow:pv,getPinnedBottomRow:gv}};function mv(e){e.overlayService.showLoadingOverlay()}function Cv(e){e.overlayService.showNoRowsOverlay()}function vv(e){e.overlayService.hideOverlay()}var Sv={version:V,moduleName:"@ag-grid-community/overlay-api",apiFunctions:{showLoadingOverlay:mv,showNoRowsOverlay:Cv,hideOverlay:vv}};function wv(e,t,s){if(!t)return;const i=e.ctrlsService.getGridBodyCtrl().getGui(),o=`aria-${t}`;s===null?i.removeAttribute(o):i.setAttribute(o,s)}function yv(e,t={}){e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.refreshCells(t))}function Rv(e,t={}){const s=i=>R(`Since v31.1 api.flashCells parameter '${i}Delay' is deprecated. Please use '${i}Duration' instead.`);E(t.fadeDelay)&&s("fade"),E(t.flashDelay)&&s("flash"),e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.flashCells(t))}function bv(e){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsService.getHeaderRowContainerCtrls().forEach(t=>t.refresh()))}function Fv(e){return e.animationFrameService.isQueueEmpty()}function Pv(e){e.animationFrameService.flushAllFrames()}function Ev(e){return{rowHeight:At(e.gos),headerHeight:e.columnModel.getHeaderHeight()}}function Mv(e,t={}){return e.rowRenderer.getCellRendererInstances(t).map(Es)}var Dv={version:V,moduleName:"@ag-grid-community/render-api",apiFunctions:{setGridAriaProperty:wv,refreshCells:yv,flashCells:Rv,refreshHeader:bv,isAnimationFrameQueueEmpty:Fv,flushAllAnimationFrames:Pv,getSizesForCurrentTheme:Ev,getCellRendererInstances:Mv}};function xv(e){e.valueCache.expire()}function Av(e,t,s){return $d(e,{colKey:t,rowNode:s})}function $d(e,t){const{colKey:s,rowNode:i,useFormatter:o}=t,r=e.columnModel.getColDefCol(s)??e.columnModel.getCol(s);if(z(r))return null;const n=e.valueService.getValueForDisplay(r,i);return o?e.valueService.formatValue(r,i,n)??Ce(n,!0):n}function Tv(e){return e.context.getGridId()}function Iv(e){e.gridDestroyService.destroy()}function Lv(e){return e.gridDestroyService.isDestroyCalled()}function Gv(e,t){return e.gos.get(t)}function kv(e,t,s){jd(e,{[t]:s})}
166function jd(e,t){e.gos.updateGridOptions({options:t})}function Ov(e,t,s){e.apiEventService.addEventListener(t,s)}function Nv(e,t,s){e.apiEventService.removeEventListener(t,s)}function Bv(e,t){e.apiEventService.addGlobalListener(t)}function Vv(e,t){e.apiEventService.removeGlobalListener(t)}function Hv(e){return e.focusService.getFocusedCell()}function Wv(e){return e.focusService.clearFocusedCell()}function zv(e,t,s,i){e.focusService.setFocusedCell({rowIndex:t,column:s,rowPinned:i,forceBrowserFocus:!0})}function Uv(e,t){return e.navigationService.tabToNextCell(!1,t)}function _v(e,t){return e.navigationService.tabToNextCell(!0,t)}function Kv(e,t,s=!1){const i=e.headerNavigationService.getHeaderPositionForColumn(t,s);i&&e.focusService.focusHeaderPosition({headerPosition:i})}function $v(e,t,s){const i=e.columnModel.getCol(t);e.menuService.showColumnMenu({column:i,buttonElement:s,positionBy:"button"})}function jv(e,t,s){let i=e.columnModel.getCol(t);if(i||(i=e.columnModel.getColDefCol(t)),!i){_(`column '${t}' not found`);return}e.menuService.showColumnMenu({column:i,mouseEvent:s,positionBy:"mouse"})}function qv(e,t){const s=e.columnModel.getCol(t);if(!s){_(`column '${t}' not found`);return}e.menuService.showColumnMenu({column:s,positionBy:"auto"})}function Yv(e){e.menuService.hidePopupMenu()}function Qv(e,t={}){const s=t?t.rowNodes:void 0;e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.redrawRows(s))}function Xv(e,t,s,i,o){e.expansionService.setRowNodeExpanded(t,s,i,o)}function Zv(e,t){return e.rowModel.getRowNode(t)}function Jv(e,t,s,i){e.rowRenderer.addRenderedRowListener(t,s,i)}function eS(e){return e.rowRenderer.getRenderedNodes()}function tS(e,t,s){e.rowModel.forEachNode(t,s)}function sS(e){return qd(e)}function qd(e){return e.rowRenderer.getFirstVirtualRenderedRow()}function iS(e){return Yd(e)}function Yd(e){return e.rowRenderer.getLastVirtualRenderedRow()}function oS(e,t){return e.rowModel.getRow(t)}function rS(e){return e.rowModel.getRowCount()}function nS(e){return e.rowModel}function lS(e,t){if(!t.nodes.every(l=>l.rowPinned?(R("cannot select pinned rows"),!1):l.id===void 0?(R("cannot select node until id for node is known"),!1):!0))return;const{nodes:i,source:o,newValue:r}=t,n=i;e.selectionService.setNodesSelected({nodes:n,source:o??"api",newValue:r})}function aS(e,t="apiSelectAll"){e.selectionService.selectAllRowNodes({source:t})}function dS(e,t="apiSelectAll"){e.selectionService.deselectAllRowNodes({source:t})}function cS(e,t="apiSelectAllFiltered"){e.selectionService.selectAllRowNodes({source:t,justFiltered:!0})}function uS(e,t="apiSelectAllFiltered"){e.selectionService.deselectAllRowNodes({source:t,justFiltered:!0})}function hS(e,t="apiSelectAllCurrentPage"){e.selectionService.selectAllRowNodes({source:t,justCurrentPage:!0})}function pS(e,t="apiSelectAllCurrentPage"){e.selectionService.deselectAllRowNodes({source:t,justCurrentPage:!0})}function gS(e){return e.selectionService.getSelectedNodes()}function fS(e){return e.selectionService.getSelectedRows()}function mS(e){e.sortController.onSortChanged("api")}var CS={version:V,moduleName:"@ag-grid-community/core-api",apiFunctions:{getGridId:Tv,destroy:Iv,isDestroyed:Lv,getGridOption:Gv,setGridOption:kv,updateGridOptions:jd}},vS={version:V,moduleName:"@ag-grid-community/row-selection-api",apiFunctions:{setNodesSelected:lS,selectAll:aS,deselectAll:dS,selectAllFiltered:cS,deselectAllFiltered:uS,selectAllOnCurrentPage:hS,deselectAllOnCurrentPage:pS,getSelectedNodes:gS,getSelectedRows:fS}},SS={version:V,moduleName:"@ag-grid-community/row-api",apiFunctions:{redrawRows:Qv,setRowNodeExpanded:Xv,getRowNode:Zv,addRenderedRowListener:Jv,getRenderedNodes:eS,forEachNode:tS,getFirstDisplayedRow:sS,getFirstDisplayedRowIndex:qd,getLastDisplayedRow:iS,getLastDisplayedRowIndex:Yd,getDisplayedRowAtIndex:oS,getDisplayedRowCount:rS,getModel:nS}},wS={version:V,moduleName:"@ag-grid-community/scroll-api",apiFunctions:{getVerticalPixelRange:rm,getHorizontalPixelRange:nm,ensureColumnVisible:Bd,ensureIndexVisible:Vd,ensureNodeVisible:lm}},yS={version:V,moduleName:"@ag-grid-community/keyboard-navigation-api",apiFunctions:{getFocusedCell:Hv,clearFocusedCell:Wv,setFocusedCell:zv,setFocusedHeader:Kv,tabToNextCell:Uv,tabToPreviousCell:_v}},RS={version:V,moduleName:"@ag-grid-community/event-api",apiFunctions:{addEventListener:Ov,addGlobalListener:Bv,removeEventListener:Nv,removeGlobalListener:Vv}},bS={version:V,moduleName:"@ag-grid-community/cell-api",apiFunctions:{expireValueCache:xv,getValue:Av,getCellValue:$d}
166},Qd={version:V,moduleName:"@ag-grid-community/menu-api",apiFunctions:{showColumnMenuAfterButtonClick:$v,showColumnMenuAfterMouseClick:jv,showColumnMenu:qv,hidePopupMenu:Yv}},FS={version:V,moduleName:"@ag-grid-community/sort-api",apiFunctions:{onSortChanged:mS}},PS={version:V,moduleName:"@ag-grid-community/api",dependantModules:[CS,fv,vS,nv,SS,cv,wS,Sv,yS,RS,Dv,bS,Qd,FS]};function ES(e){var t;return((t=e.stateService)==null?void 0:t.getState())??{}}function MS(e){switch(e={...e},e.version||(e.version="32.1.0"),e.version){case"32.1.0":e=DS(e)}return e}function DS(e){return e.cellSelection=xS(e,"rangeSelection"),e}function xS(e,t){if(e&&typeof e=="object")return e[t]}var AS=class extends b{constructor(){super(...arguments),this.beanName="stateService",this.suppressEvents=!0,this.queuedUpdateSources=new Set,this.dispatchStateUpdateEventDebounced=Me(()=>this.dispatchQueuedStateUpdateEvents(),0),this.onRowGroupOpenedDebounced=Me(()=>this.updateCachedState("rowGroupExpansion",this.getRowGroupExpansionState()),0),this.onRowSelectedDebounced=Me(()=>{this.staleStateKeys.delete("rowSelection"),this.updateCachedState("rowSelection",this.getRowSelectionState())},0),this.staleStateKeys=new Set}wireBeans(e){this.filterManager=e.filterManager,this.ctrlsService=e.ctrlsService,this.pivotResultColsService=e.pivotResultColsService,this.focusService=e.focusService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.columnGroupStateService=e.columnGroupStateService,this.columnGetStateService=e.columnGetStateService,this.paginationService=e.paginationService,this.selectionService=e.selectionService,this.expansionService=e.expansionService,this.columnAnimationService=e.columnAnimationService,this.columnApplyStateService=e.columnApplyStateService,this.sideBarService=e.sideBarService,this.rangeService=e.rangeService}postConstruct(){this.isClientSideRowModel=re(this.gos),this.cachedState=this.getInitialState(),this.setCachedStateValue("version",V),this.ctrlsService.whenReady(this,()=>this.suppressEventsAndDispatchInitEvent(()=>this.setupStateOnGridReady()));const[e,t,s]=this.addManagedEventListeners({newColumnsLoaded:({source:i})=>{i==="gridInitializing"&&(e(),this.suppressEventsAndDispatchInitEvent(()=>this.setupStateOnColumnsInitialised()))},rowCountReady:()=>{t==null||t(),this.suppressEventsAndDispatchInitEvent(()=>this.setupStateOnRowCountReady())},firstDataRendered:()=>{s==null||s(),this.suppressEventsAndDispatchInitEvent(()=>this.setupStateOnFirstDataRendered())}})}getInitialState(){return MS(this.gos.get("initialState")??{})}getState(){return this.staleStateKeys.size&&this.refreshStaleState(),this.cachedState}setupStateOnGridReady(){this.updateCachedState("sideBar",this.getSideBarState());const e=()=>this.updateCachedState("sideBar",this.getSideBarState());this.addManagedEventListeners({toolPanelVisibleChanged:e,sideBarUpdated:e})}setupStateOnColumnsInitialised(){const e=this.getInitialState();this.setColumnState(e),this.setColumnGroupState(e),this.updateColumnState(["aggregation","columnOrder","columnPinning","columnSizing","columnVisibility","pivot","pivot","rowGroup","sort"]),this.updateCachedState("columnGroup",this.getColumnGroupState());const t=s=>()=>this.updateColumnState([s]);this.addManagedEventListeners({columnValueChanged:t("aggregation"),columnMoved:t("columnOrder"),columnPinned:t("columnPinning"),columnResized:t("columnSizing"),columnVisible:t("columnVisibility"),columnPivotChanged:t("pivot"),columnPivotModeChanged:t("pivot"),columnRowGroupChanged:t("rowGroup"),sortChanged:t("sort"),newColumnsLoaded:()=>this.updateColumnState(["aggregation","columnOrder","columnPinning","columnSizing","columnVisibility","pivot","rowGroup","sort"]),columnGroupOpened:()=>this.updateCachedState("columnGroup",this.getColumnGroupState())})}setupStateOnRowCountReady(){const{filter:e,rowGroupExpansion:t,rowSelection:s,pagination:i}=this.getInitialState(),o=this.gos.get("advancedFilterModel");(e||o)&&this.setFilterState(e,o),t&&this.setRowGroupExpansionState(t),s&&this.setRowSelectionState(s),i&&this.setPaginationState(i),this.updateCachedState("filter",this.getFilterState()),this.updateCachedState("rowGroupExpansion",this.getRowGroupExpansionState()),this.updateCachedState("rowSelection",this.getRowSelectionState()),this.updateCachedState("pagination",this.getPaginationState());const r=()=>this.updateCachedState("rowGroupExpansion",this.getRowGroupExpansionState());this.addManagedEventListeners({filterChanged:()=>this.updateCachedState("filter",this.getFilterState()),rowGroupOpened:()=>this.onRowGroupOpenedDebounced(),expandOrCollapseAll:r,columnRowGroupChanged:r,rowDataUpdated:()=>{this.gos.get("groupDefaultExpanded")!==0&&setTimeout(()=>{r()})},selectionChanged:()=>{this.staleStateKeys.add("rowSelection"),this.onRowSelectedDebounced()},paginationChanged:n=>{(n.newPage||n.newPageSize)&&this.updateCachedState("pagination",this.getPaginationState())}})}setupStateOnFirstDataRendered(){const{scroll:e,cellSelection:t,focusedCell:s,columnOrder:i}=this.getInitialState();s&&this.setFocusedCellState(s),t&&this.setCellSelectionState(t),e&&this.setScrollState(e),this.setColumnPivotState(!!(i!=null&&i.orderedColIds)),this.updateCachedState("sideBar",this.get
166SideBarState()),this.updateCachedState("focusedCell",this.getFocusedCellState());const o=this.getRangeSelectionState();this.updateCachedState("rangeSelection",o),this.updateCachedState("cellSelection",o),this.updateCachedState("scroll",this.getScrollState()),this.addManagedEventListeners({cellFocused:()=>this.updateCachedState("focusedCell",this.getFocusedCellState()),cellSelectionChanged:r=>{if(r.finished){const n=this.getRangeSelectionState();this.updateCachedState("rangeSelection",n),this.updateCachedState("cellSelection",n)}},bodyScrollEnd:()=>this.updateCachedState("scroll",this.getScrollState())})}getColumnState(){const e=this.columnModel.isPivotMode(),t=[],s=[],i=[],o=[],r=[],n=[],l=[],a=[],d=[];let c=0;const u=this.columnGetStateService.getColumnState();for(let h=0;h<u.length;h++){const{colId:p,sort:g,sortIndex:f,rowGroup:m,rowGroupIndex:v,aggFunc:y,pivot:w,pivotIndex:F,pinned:D,hide:M,width:x,flex:I}=u[h];d.push(p),g&&(t[f??c++]={colId:p,sort:g}),m&&(s[v??0]=p),typeof y=="string"&&i.push({colId:p,aggFunc:y}),w&&(o[F??0]=p),D&&(D==="right"?n:r).push(p),M&&l.push(p),(I||x)&&a.push({colId:p,flex:I??void 0,width:x})}return{sort:t.length?{sortModel:t}:void 0,rowGroup:s.length?{groupColIds:s}:void 0,aggregation:i.length?{aggregationModel:i}:void 0,pivot:o.length||e?{pivotMode:e,pivotColIds:o}:void 0,columnPinning:r.length||n.length?{leftColIds:r,rightColIds:n}:void 0,columnVisibility:l.length?{hiddenColIds:l}:void 0,columnSizing:a.length?{columnSizingModel:a}:void 0,columnOrder:d.length?{orderedColIds:d}:void 0}}setColumnState(e){const{sort:t,rowGroup:s,aggregation:i,pivot:o,columnPinning:r,columnVisibility:n,columnSizing:l,columnOrder:a,partialColumnState:d}=e,c={},u=m=>{let v=c[m];return v||(v={colId:m},c[m]=v,v)},h=d?{}:{sort:null,sortIndex:null,rowGroup:null,rowGroupIndex:null,aggFunc:null,pivot:null,pivotIndex:null,pinned:null,hide:null,flex:null};t&&(t.sortModel.forEach(({colId:m,sort:v},y)=>{const w=u(m);w.sort=v,w.sortIndex=y}),h.sort=null,h.sortIndex=null),s&&(s.groupColIds.forEach((m,v)=>{const y=u(m);y.rowGroup=!0,y.rowGroupIndex=v}),h.rowGroup=null,h.rowGroupIndex=null),i&&(i.aggregationModel.forEach(({colId:m,aggFunc:v})=>{u(m).aggFunc=v}),h.aggFunc=null),o&&(o.pivotColIds.forEach((m,v)=>{const y=u(m);y.pivot=!0,y.pivotIndex=v}),this.gos.updateGridOptions({options:{pivotMode:o.pivotMode},source:"gridInitializing"}),h.pivot=null,h.pivotIndex=null),r&&(r.leftColIds.forEach(m=>{u(m).pinned="left"}),r.rightColIds.forEach(m=>{u(m).pinned="right"}),h.pinned=null),n&&(n.hiddenColIds.forEach(m=>{u(m).hide=!0}),h.hide=null),l&&(l.columnSizingModel.forEach(({colId:m,flex:v,width:y})=>{const w=u(m);w.flex=v??null,w.width=y}),h.flex=null);const p=a==null?void 0:a.orderedColIds,g=!!(p!=null&&p.length),f=g?p.map(m=>u(m)):Object.values(c);f.length&&(this.columnStates=f,this.columnApplyStateService.applyColumnState({state:f,applyOrder:g,defaultState:h},"gridInitializing"))}setColumnPivotState(e){const t=this.columnStates;this.columnStates=void 0;const s=this.columnGroupStates;if(this.columnGroupStates=void 0,!!this.pivotResultColsService.isPivotResultColsPresent()){if(t){const i=[];for(const o of t)this.pivotResultColsService.getPivotResultCol(o.colId)&&i.push(o);this.columnApplyStateService.applyColumnState({state:i,applyOrder:e},"gridInitializing")}s&&this.columnGroupStateService.setColumnGroupState(s,"gridInitializing")}}getColumnGroupState(){const e=this.columnGroupStateService.getColumnGroupState(),t=[];return e.forEach(({groupId:s,open:i})=>
166{i&&t.push(s)}),t.length?{openColumnGroupIds:t}:void 0}setColumnGroupState(e){var o;if(!Object.prototype.hasOwnProperty.call(e,"columnGroup"))return;const t=new Set((o=e.columnGroup)==null?void 0:o.openColumnGroupIds),i=this.columnGroupStateService.getColumnGroupState().map(({groupId:r})=>{const n=t.has(r);return n&&t.delete(r),{groupId:r,open:n}});t.forEach(r=>{i.push({groupId:r,open:!0})}),i.length&&(this.columnGroupStates=i),this.columnGroupStateService.setColumnGroupState(i,"gridInitializing")}getFilterState(){var s,i;let e=(s=this.filterManager)==null?void 0:s.getFilterModel();e&&Object.keys(e).length===0&&(e=void 0);const t=((i=this.filterManager)==null?void 0:i.getAdvancedFilterModel())??void 0;return e||t?{filterModel:e,advancedFilterModel:t}:void 0}setFilterState(e,t){var o,r;const{filterModel:s,advancedFilterModel:i}=e??{advancedFilterModel:t};s&&((o=this.filterManager)==null||o.setFilterModel(s,"columnFilter")),i&&((r=this.filterManager)==null||r.setAdvancedFilterModel(i))}getRangeSelectionState(){var t;const e=(t=this.rangeService)==null?void 0:t.getCellRanges().map(s=>{const{id:i,type:o,startRow:r,endRow:n,columns:l,startColumn:a}=s;return{id:i,type:o,startRow:r,endRow:n,colIds:l.map(d=>d.getColId()),startColId:a.getColId()}});return e!=null&&e.length?{cellRanges:e}:void 0}setCellSelectionState(e){const{gos:t,rangeService:s,columnModel:i,visibleColsService:o}=this;if(!yt(t)||!s)return;const r=[];
166if(e.cellRanges.forEach(n=>{const l=[];if(n.colIds.forEach(d=>{const c=i.getCol(d);c&&l.push(c)}),!l.length)return;let a=i.getCol(n.startColId);if(!a){const d=o.getAllCols(),c=new Set(l);a=d.find(u=>c.has(u))}r.push({...n,columns:l,startColumn:a})}),ru(t)&&nu(t)&&r.length>1)return R("cannot add multiple ranges when `cellSelection.suppressMultiRanges = true`");s.setCellRanges(r)}getScrollState(){var i;if(!this.isClientSideRowModel)return;const e=(i=this.ctrlsService.getGridBodyCtrl())==null?void 0:i.getScrollFeature(),{left:t}=(e==null?void 0:e.getHScrollPosition())??{left:0},{top:s}=(e==null?void 0:e.getVScrollPosition())??{top:0};return s||t?{top:s,left:t}:void 0}setScrollState(e){var i;if(!this.isClientSideRowModel)return;const{top:t,left:s}=e;(i=this.ctrlsService.getGridBodyCtrl())==null||i.getScrollFeature().setScrollPosition(t,s)}getSideBarState(){var e,t;return(t=(e=this.sideBarService)==null?void 0:e.getSideBarComp())==null?void 0:t.getState()}getFocusedCellState(){if(!this.isClientSideRowModel)return;const e=this.focusService.getFocusedCell();if(e){const{column:t,rowIndex:s,rowPinned:i}=e;return{colId:t.getColId(),rowIndex:s,rowPinned:i}}}setFocusedCellState(e){if(!this.isClientSideRowModel)return;const{colId:t,rowIndex:s,rowPinned:i}=e;this.focusService.setFocusedCell({column:this.columnModel.getCol(t),rowIndex:s,rowPinned:i,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}getPaginationState(){if(!this.paginationService)return;const e=this.paginationService.getCurrentPage(),t=this.gos.get("paginationAutoPageSize")?void 0:this.paginationService.getPageSize();if(!(!e&&!t))return{page:e,pageSize:t}}setPaginationState(e){this.paginationService&&(e.pageSize&&!this.gos.get("paginationAutoPageSize")&&this.paginationService.setPageSize(e.pageSize,"initialState"),typeof e.page=="number"&&this.paginationService.setPage(e.page))}getRowSelectionState(){var s;const e=this.selectionService.getSelectionState();return!e||!Array.isArray(e)&&(e.selectAll===!1||e.selectAllChildren===!1)&&!((s=e==null?void 0:e.toggledNodes)!=null&&s.length)?void 0:e}setRowSelectionState(e){this.selectionService.setSelectionState(e,"gridInitializing")}getRowGroupExpansionState(){const e=this.expansionService.getExpandedRows();return e.length?{expandedRowGroupIds:e}:void 0}setRowGroupExpansionState(e){this.expansionService.expandRows(e.expandedRowGroupIds)}updateColumnState(e){const t=this.getColumnState();let s=!1;Object.entries(t).forEach(([i,o])=>{ci(o,this.cachedState[i])||(s=!0)}),this.cachedState={...this.cachedState,...t},s&&this.dispatchStateUpdateEvent(e)}updateCachedState(e,t){const s=this.cachedState[e];this.setCachedStateValue(e,t),ci(t,s)||this.dispatchStateUpdateEvent([e])}setCachedStateValue(e,t){this.cachedState={...this.cachedState,[e]:t}}refreshStaleState(){this.staleStateKeys.forEach(e=>{switch(e){case"rowSelection":this.setCachedStateValue(e,this.getRowSelectionState());break}}),this.staleStateKeys.clear()}dispatchStateUpdateEvent(e){this.suppressEvents||(e.forEach(t=>this.queuedUpdateSources.add(t)),this.dispatchStateUpdateEventDebounced())}dispatchQueuedStateUpdateEvents(){const e=Array.from(this.queuedUpdateSources);this.queuedUpdateSources.clear(),this.eventService.dispatchEvent({type:"stateUpdated",sources:e,state:this.cachedState})}suppressEventsAndDispatchInitEvent(e){this.suppressEvents=!0,this.columnAnimationService.setSuppressAnimation(!0),e(),setTimeout(()=>{this.suppressEvents=!1,this.queuedUpdateSources.clear(),this.isAlive()&&(this.columnAnimationService.setSuppressAnimation(!1),this.dispatchStateUpdateEvent(["gridInitializing"]))})}},Xd={version:V,moduleName:"@ag-grid-community/state-core",beans:[AS]},TS={version:V,moduleName:"@ag-grid-community/state-api",apiFunctions:{getState:ES},dependantModules:[Xd]},IS={version:V,moduleName:"@ag-grid-community/state",dependantModules:[Xd,TS]};function LS(e){return e.rowModel.isLastRowIndexKnown()}function GS(e){var t;return((t=e.paginationService)==null?void 0:t.getPageSize())??100}function kS(e){var t;return((t=e.paginationService)==null?void 0:t.getCurrentPage())??0}function OS(e){var t;return((t=e.paginationService)==null?void 0:t.getTotalPages())??1}function NS(e){return e.paginationService?e.paginationService.getMasterRowCount():e.rowModel.getRowCount()}function BS(e){var t;(t=e.paginationService)==null||t.goToNextPage()}function VS(e){var t;(t=e.paginationService)==null||t.goToPreviousPage()}function HS(e){var t;(t=e.paginationService)==null||t.goToFirstPage()}function WS(e){var t;(t=e.paginationService)==null||t.goToLastPage()}function zS(e,t){var s;(s=e.paginationService)==null||s.goToPage(t)}var US=class extends b{constructor(){super(...arguments),this.beanName="paginationAutoPageSizeService"}wireBeans(e){this.ctrlsService=e.ctrlsService,this.paginationService=e.paginationService}postConstruct(){this.ctrlsService.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")||this.centerRowsCtrl==null}onPaginationAutoSizeChanged(){this.notActive()?this.paginationService.unsetAutoCalculatedPageSize():this.checkPageSize()}checkPageSize(){if(this.notActive())return;
166const e=this.centerRowsCtrl.getViewportSizeFeature().getBodyHeight();if(e>0){const t=()=>{const s=Math.max(At(this.gos),1),i=Math.floor(e/s);this.paginationService.setPageSize(i,"autoCalculated")};this.isBodyRendered?Me(()=>t(),50)():(t(),this.isBodyRendered=!0)}else this.isBodyRendered=!1}};function Zd(e,t,s){e.addManagedElementListeners(t,{keydown:i=>{if(!i.defaultPrevented&&i.key===S.TAB){const o=i.shiftKey;s.findNextFocusableElement(t,!1,o)||s.focusNextGridCoreContainer(o)&&i.preventDefault()}}})}var js="paginationPageSizeSelector",_S=class extends O{constructor(){super('<span class="ag-paging-page-size"></span>'),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.paginationService.getPageSize()||(this.paginationService.setPageSize(t,"pageSizeSelector"),this.hasEmptyOption&&this.toggleSelectDisplay(!0),this.selectPageSizeComp.getFocusableElement().focus())}}wireBeans(e){this.paginationService=e.paginationService}postConstruct(){this.addManagedPropertyListener(js,()=>{this.onPageSizeSelectorValuesChange()}),this.addManagedEventListeners({paginationChanged:e=>this.handlePaginationChanged(e)})}handlePaginationChanged(e){if(!this.selectPageSizeComp||!(e!=null&&e.newPageSize))return;const t=this.paginationService.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(){de(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")&&this.gos.get(js)!==!1}reloadPageSizesSelector(){const e=this.getPageSizeSelectorValues(),t=this.paginationService.getPageSize(),s=!t||!e.includes(t);if(s){const o=this.gos.exists("paginationPageSize"),r=this.gos.get(js)!==!0;R(`'paginationPageSize=${t}'${o?"":" (default value)"}, but ${t} is not included in${r?"":" the default"} paginationPageSizeSelector=[${e.join(", ")}].`),r||R(`Either set '${js}' to an array that includes ${t} or to 'false' to disable the page size selector.`),e.unshift("")}const i=String(s?"":t);this.selectPageSizeComp?(Je(this.pageSizeOptions,e)||(this.selectPageSizeComp.clearOptions().addOptions(this.createPageSizeSelectOptions(e)),this.pageSizeOptions=e),this.selectPageSizeComp.setValue(i,!0)):this.createPageSizeSelectorComp(e,i),this.hasEmptyOption=s}createPageSizeSelectOptions(e){return e.map(t=>({value:String(t)}))}createPageSizeSelectorComp(e,t){const s=this.localeService.getLocaleTextFunc(),i=s("pageSizeSelectorLabel","Page Size:"),o=s("ariaPageSizeSelectorLabel","Page Size");this.selectPageSizeComp=this.createManagedBean(new yo).addOptions(this.createPageSizeSelectOptions(e)).setValue(t).setAriaLabel(o).setLabel(i).onValueChange(()=>this.handlePageSizeItemSelected()),this.appendChild(this.selectPageSizeComp)}getPageSizeSelectorValues(){const e=[20,50,100],t=this.gos.get(js);return!Array.isArray(t)||Re(t)?e:[...t].sort((s,i)=>s-i)}destroy(){this.toggleSelectDisplay(!1),super.destroy()}},KS={selector:"AG-PAGE-SIZE-SELECTOR",component:_S},$S=class extends fs{constructor(){super(),this.btFirst=P,this.btPrevious=P,this.btNext=P,this.btLast=P,this.lbRecordCount=P,this.lbFirstRowOnPage=P,this.lbLastRowOnPage=P,this.lbCurrent=P,this.lbTotal=P,this.pageSizeComp=P,this.previousAndFirstButtonsDisabled=!1,this.nextButtonDisabled=!1,this.lastButtonDisabled=!1,this.areListenersSetup=!1,this.allowFocusInnerElement=!1}wireBeans(e){this.rowModel=e.rowModel,this.paginationService=e.paginationService,this.focusService=e.focusService,this.ariaAnnouncementService=e.ariaAnnouncementService}postConstruct(){const e=this.gos.get("enableRtl");this.setTemplate(this.getTemplate(),[KS]);const{btFirst:t,btPrevious:s,btNext:i,btLast:o}=this;this.activateTabIndex([t,s,i,o]),t.insertAdjacentElement("afterbegin",N(e?"last":"first",this.gos)),s.insertAdjacentElement("afterbegin",N(e?"next":"previous",this.gos)),i.insertAdjacentElement("afterbegin",N(e?"previous":"next",this.gos)),o.insertAdjacentElement("afterbegin",N(e?"first":"last",this.gos)),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:r=>{this.allowFocusInnerElement?this.tabGuardFeature.getTabGuardCtrl().focusInnerElement(r):this.focusService.focusGridInnerElement(r)},forceFocusOutWhenTabGuardsAreEmpty:!0}),this.onPaginationChanged()}setAllowFocus(e){this.allowFocusInnerElement=e}onPaginationChanged(){const t=this.gos.get("pagination")&&!this.gos.get("suppressPaginationPanel");this.setDisplayed(t),t&&(this.setupListeners(),this.enableOrDisableButtons(),this.updateLabels(),this.onPageSizeRelatedOptionsChange())}onPageSizeRelatedOptionsChange(){this.pageSizeComp.toggleSelectDisplay(this.pageSizeComp.shouldShowPageSizeSelector())}setupListeners(){this.areListenersSetup||(this.addManagedEventListeners({paginationChanged:this.onPaginationChanged.bind(this)}),[{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)}
166].forEach(e=>{const{el:t,fn:s}=e;this.addManagedListeners(t,{click:s,keydown:i=>{(i.key===S.ENTER||i.key===S.SPACE)&&(i.preventDefault(),s())}})}),Zd(this,this.getGui(),this.focusService),this.areListenersSetup=!0)}onBtFirst(){this.previousAndFirstButtonsDisabled||this.paginationService.goToFirstPage()}formatNumber(e){const t=this.gos.getCallback("paginationNumberFormatter");if(t)return t({value:e});const s=this.localeService.getLocaleTextFunc(),i=s("thousandSeparator",","),o=s("decimalSeparator",".");return Fp(e,i,o)}getTemplate(){const e=this.localeService.getLocaleTextFunc(),t=e("page","Page"),s=e("to","to"),i=e("of","of"),o=e("firstPage","First Page"),r=e("previousPage","Previous Page"),n=e("nextPage","Next Page"),l=e("lastPage","Last Page"),a=this.getCompId();return`<div class="ag-paging-panel ag-unselectable" id="ag-${a}"> 167 <ag-page-size-selector data-ref="pageSizeComp"></ag-page-size-selector> 168 <span class="ag-paging-row-summary-panel"> 169 <span id="ag-${a}-first-row" data-ref="lbFirstRowOnPage" class="ag-paging-row-summary-panel-number"></span> 170 <span id="ag-${a}-to">${s}</span> 171 <span id="ag-${a}-last-row" data-ref="lbLastRowOnPage" class="ag-paging-row-summary-panel-number"></span> 172 <span id="ag-${a}-of">${i}</span> 173 <span id="ag-${a}-row-count" data-ref="lbRecordCount" class="ag-paging-row-summary-panel-number"></span> 174 </span> 175 <span class="ag-paging-page-summary-panel" role="presentation"> 176 <div data-ref="btFirst" class="ag-button ag-paging-button" role="button" aria-label="${o}"></div> 177 <div data-ref="btPrevious" class="ag-button ag-paging-button" role="button" aria-label="${r}"></div> 178 <span class="ag-paging-description"> 179 <span id="ag-${a}-start-page">${t}</span> 180 <span id="ag-${a}-start-page-number" data-ref="lbCurrent" class="ag-paging-number"></span> 181 <span id="ag-${a}-of-page">${i}</span> 182 <span id="ag-${a}-of-page-number" data-ref="lbTotal" class="ag-paging-number"></span> 183 </span> 184 <div data-ref="btNext" class="ag-button ag-paging-button" role="button" aria-label="${n}"></div> 185 <div data-ref="btLast" class="ag-button ag-paging-button" role="button" aria-label="${l}"></div> 186 </span> 187 </div>`}onBtNext(){this.nextButtonDisabled||this.paginationService.goToNextPage()}onBtPrevious(){this.previousAndFirstButtonsDisabled||this.paginationService.goToPreviousPage()}onBtLast(){this.lastButtonDisabled||this.paginationService.goToLastPage()}enableOrDisableButtons(){const e=this.paginationService.getCurrentPage(),t=this.rowModel.isLastRowIndexKnown(),s=this.paginationService.getTotalPages();this.previousAndFirstButtonsDisabled=e===0,this.toggleButtonDisabled(this.btFirst,this.previousAndFirstButtonsDisabled),this.toggleButtonDisabled(this.btPrevious,this.previousAndFirstButtonsDisabled);const i=this.isZeroPagesToDisplay(),o=e===s-1;this.nextButtonDisabled=o||i,this.lastButtonDisabled=!t||i||e===s-1,this.toggleButtonDisabled(this.btNext,this.nextButtonDisabled),this.toggleButtonDisabled(this.btLast,this.lastButtonDisabled)}toggleButtonDisabled(e,t){ca(e,t),e.classList.toggle("ag-disabled",t)}isZeroPagesToDisplay(){const e=this.rowModel.isLastRowIndexKnown(),t=this.paginationService.getTotalPages();return e&&t===0}updateLabels(){const e=this.rowModel.isLastRowIndexKnown(),t=this.paginationService.getTotalPages(),s=this.paginationService.getMasterRowCount(),i=e?s:null;if(i===1){const y=this.rowModel.getRow(0);if(y&&y.group&&!(y.groupData||y.aggData)){this.setTotalLabelsToZero();return}}const o=this.paginationService.getCurrentPage(),r=this.paginationService.getPageSize();let n,l;this.isZeroPagesToDisplay()?n=l=0:(n=r*o+1,l=n+r-1,e&&l>i&&(l=i));const a=n+r-1,d=!e&&s<a,c=this.formatNumber(n);this.lbFirstRowOnPage.textContent=c;let u;const h=this.localeService.getLocaleTextFunc();d?u=h("pageLastRowUnknown","?"):u=this.formatNumber(l),this.lbLastRowOnPage.textContent=u;const g=t>0?o+1:0,f=this.formatNumber(g);this.lbCurrent.textContent=f;let m,v;if(e)m=this.formatNumber(t),v=this.formatNumber(i);else{const y=h("more","more");m=y,v=y}this.lbTotal.textContent=m,this.lbRecordCount.textContent=v,this.announceAriaStatus(c,u,v,f,m)}announceAriaStatus(e,t,s,i,o){const r=this.localeService.getLocaleTextFunc(),n=r("page","Page"),l=r("to","to"),a=r("of","of"),d=`${e} ${l} ${t} ${a} ${s}`,c=`${n} ${i} ${a} ${o}`;d!==this.ariaRowStatus&&(this.ariaRowStatus=d,this.ariaAnnouncementService.announceValue(d,"paginationRow")),c!==this.ariaPageStatus&&(this.ariaPageStatus=c,this.ariaAnnouncementService.announceValue(c,"paginationPage"))}setTotalLabelsToZero(){const e=this.formatNumber(0);this.lbFirstRowOnPage.textContent=e,this.lbCurrent.textContent=e,this.lbLastRowOnPage.textContent=e,this.lbTotal.textContent=e,this.lbRecordCount.textContent=e,this.announceAriaStatus(e,e,e,e,e)}},jS={selector:"AG-PAGINATION",component:$S},qS=class extends b{constructor(){super(...arguments),this.beanName="paginationService",this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDis
187playedRowIndex=0,this.masterRowCount=0}wireBeans(e){this.rowModel=e.rowModel,this.pageBoundsService=e.pageBoundsService}postConstruct(){this.active=this.gos.get("pagination"),this.pageSizeFromGridOptions=this.gos.get("paginationPageSize"),this.paginateChildRows=this.isPaginateChildRows(),this.addManagedPropertyListener("pagination",this.onPaginationGridOptionChanged.bind(this)),this.addManagedPropertyListener("paginationPageSize",this.onPageSizeGridOptionChanged.bind(this))}getPaginationSelector(){return jS}isPaginateChildRows(){return this.gos.get("groupRemoveSingleChildren")||this.gos.get("groupRemoveLowestSingleChildren")?!0:this.gos.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){!this.active||this.currentPage===e||typeof this.currentPage!="number"||(this.currentPage=e,this.calculatePages(),this.dispatchPaginationChangedEvent({newPage:!0}))}isRowPresent(e){return e.rowIndex>=this.topDisplayedRowIndex&&e.rowIndex<=this.bottomDisplayedRowIndex}getPageForIndex(e){return Math.floor(e/this.pageSize)}goToPageWithIndex(e){if(!this.active)return;const t=this.getPageForIndex(e);this.goToPage(t)}isRowInPage(e){return this.active?this.getPageForIndex(e.rowIndex)===this.currentPage:!0}getCurrentPage(){return this.currentPage}goToNextPage(){this.goToPage(this.currentPage+1)}goToPreviousPage(){this.goToPage(this.currentPage-1)}goToFirstPage(){this.goToPage(0)}goToLastPage(){const e=this.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 E(this.pageSizeAutoCalculated)&&this.gos.get("paginationAutoPageSize")?this.pageSizeAutoCalculated:E(this.pageSizeFromPageSizeSelector)?this.pageSizeFromPageSizeSelector:E(this.pageSizeFromInitialState)?this.pageSizeFromInitialState:E(this.pageSizeFromGridOptions)?this.pageSizeFromGridOptions:this.defaultPageSize}calculatePages(){this.active?this.paginateChildRows?this.calculatePagesAllRows():this.calculatePagesMasterRowsOnly():this.calculatedPagesNotActive(),this.pageBoundsService.calculateBounds(this.topDisplayedRowIndex,this.bottomDisplayedRowIndex)}unsetAutoCalculatedPageSize(){if(this.pageSizeAutoCalculated===void 0)return;const e=this.pageSizeAutoCalculated;this.pageSizeAutoCalculated=void 0,this.pageSize!==e&&(this.calculatePages(),this.dispatchPaginationChangedEvent({newPageSize:!0}))}setPageSize(e,t){const s=this.pageSize;switch(t){case"autoCalculated":this.pageSizeAutoCalculated=e;break;case"pageSizeSelector":this.pageSizeFromPageSizeSelector=e,this.currentPage!==0&&this.goToFirstPage();break;case"initialState":this.pageSizeFromInitialState=e;break;case"gridOptions":this.pageSizeFromGridOptions=e,this.pageSizeFromInitialState=void 0,this.pageSizeFromPageSizeSelector=void 0,this.currentPage!==0&&this.goToFirstPage();break}s!==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(){this.currentPage>=this.totalPages&&(this.currentPage=this.totalPages-1),(!isFinite(this.currentPage)||isNaN(this.currentPage)||this.currentPage<0)&&(this.currentPage=0)}calculatePagesMasterRowsOnly(){if(this.masterRowCount=this.rowModel.getTopLevelRowCount(),this.masterRowCount<=0){this.setZeroRows();return}const e=this.masterRowCount-1;this.totalPages=Math.floor(e/this.pageSize)+1,this.adjustCurrentPageIfInvalid();const t=this.pageSize*this.currentPage;let s=this.pageSize*(this.currentPage+1)-1;if(s>e&&(s=e),this.topDisplayedRowIndex=this.rowModel.getTopLevelRowDisplayedIndex(t),s===e)this.bottomDisplayedRowIndex=this.rowModel.getRowCount()-1;else{const i=this.rowModel.getTopLevelRowDisplayedIndex(s+1);this.bottomDisplayedRowIndex=i-1}}getMasterRowCount(){return this.masterRowCount}calculatePagesAllRows(){if(this.masterRowCount=this.rowModel.getRowCount(),this.masterRowCount===0){this.setZeroRows();return}const e=this.masterRowCount-1;this.totalPages=Math.floor(e/this.pageSize)+1,this.adjustCurrentPageIfInvalid(),this.topDisplayedRowIndex=this.pageSize*this.currentPage,this.bottomDis
187playedRowIndex=this.pageSize*(this.currentPage+1)-1,this.bottomDisplayedRowIndex>e&&(this.bottomDisplayedRowIndex=e)}calculatedPagesNotActive(){this.setPageSize(void 0,"autoCalculated"),this.totalPages=1,this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=this.rowModel.getRowCount()-1}dispatchPaginationChangedEvent(e){const{keepRenderedRows:t=!1,newPage:s=!1,newPageSize:i=!1}=e;this.eventService.dispatchEvent({type:"paginationChanged",animate:!1,newData:!1,newPage:s,newPageSize:i,keepRenderedRows:t})}},Jd={version:V,moduleName:"@ag-grid-community/pagination-core",beans:[qS,US]},YS={version:V,moduleName:"@ag-grid-community/pagination-api",dependantModules:[Jd],apiFunctions:{paginationIsLastPageFound:LS,paginationGetPageSize:GS,paginationGetCurrentPage:kS,paginationGetTotalPages:OS,paginationGetRowCount:NS,paginationGoToNextPage:BS,paginationGoToPreviousPage:VS,paginationGoToFirstPage:HS,paginationGoToLastPage:WS,paginationGoToPage:zS}},QS={version:V,moduleName:"@ag-grid-community/pagination",dependantModules:[Jd,YS]},Ke="clientSide",Ve="serverSide",vs="infinite",XS={onGroupExpandedOrCollapsed:[Ke],refreshClientSideRowModel:[Ke],isRowDataEmpty:[Ke],forEachLeafNode:[Ke],forEachNodeAfterFilter:[Ke],forEachNodeAfterFilterAndSort:[Ke],resetRowHeights:[Ke],applyTransaction:[Ke],applyTransactionAsync:[Ke],flushAsyncTransactions:[Ke],getBestCostNodeSelection:[Ke],getServerSideSelectionState:[Ve],setServerSideSelectionState:[Ve],applyServerSideTransaction:[Ve],applyServerSideTransactionAsync:[Ve],applyServerSideRowData:[Ve],retryServerSideLoads:[Ve],flushServerSideAsyncTransactions:[Ve],refreshServerSide:[Ve],getServerSideGroupLevelState:[Ve],refreshInfiniteCache:[vs],purgeInfiniteCache:[vs],getInfiniteRowCount:[vs],isLastRowIndexKnown:[vs,Ve],expandAll:[Ke,Ve],collapseAll:[Ke,Ve],onRowHeightChanged:[Ke,Ve],setRowCount:[vs,Ve],getCacheBlockState:[vs,Ve]},ZS={getValue:{version:"v31.3",new:"getCellValue"},getFirstDisplayedRow:{version:"v31.1",new:"getFirstDisplayedRowIndex"},getLastDisplayedRow:{version:"v31.1",new:"getLastDisplayedRowIndex"},getModel:{version:"v31.1",message:"Please use the appropriate grid API methods instead."},setColumnVisible:{version:"v31.1",old:"setColumnVisible(key,visible)",new:"setColumnsVisible([key],visible)"},setColumnPinned:{version:"v31.1",old:"setColumnPinned(key,pinned)",new:"setColumnsPinned([key],pinned)"},moveColumn:{version:"v31.1",old:"moveColumn(key, toIndex)",new:"moveColumns([key], toIndex)"},setColumnWidth:{version:"v31.1",old:"setColumnWidth(col, width)",new:"setColumnWidths([{key: col, newWidth: width}])"},autoSizeColumn:{version:"v31.1",old:"autoSizeColumn(key, skipHeader)",new:"autoSizeColumns([key], skipHeader)"},addAggFunc:{version:"v31.1",old:"addAggFunc(key, func)",new:"addAggFuncs({ key: func })"},removeValueColumn:{version:"v31.1",old:"removeValueColumn(colKey)",new:"removeValueColumns([colKey])"},addValueColumn:{version:"v31.1",old:"addValueColumn(colKey)",new:"addValueColumns([colKey])"},removeRowGroupColumn:{version:"v31.1",old:"removeRowGroupColumn(colKey)",new:"removeRowGroupColumns([colKey])"},addRowGroupColumn:{version:"v31.1",old:"addRowGroupColumn(colKey)",new:"addRowGroupColumns([colKey])"},removePivotColumn:{version:"v31.1",old:"removePivotColumn(colKey)",new:"removePivotColumns([colKey])"},addPivotColumn:{version:"v31.1",old:"addPivotColumn(colKey)",new:"addPivotColumns([colKey])"},showColumnMenuAfterButtonClick:{version:"v31.1",message:"Use 'IHeaderParams.showColumnMenu' within a header component, or 'api.showColumnMenu' elsewhere."},showColumnMenuAfterMouseClick:{version:"v31.1",message:"Use 'IHeaderParams.showColumnMenuAfterMouseClick' within a header component, or 'api.showColumnMenu' elsewhere."},getFilterInstance:{version:"v31.1",message:"'getFilterInstance' is deprecated. To get/set individual filter models, use 'getColumnFilterModel' or 'setColumnFilterModel' instead. To get hold of the filter instance, use 'getColumnFilterInstance' which returns the instance asynchronously."},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()"}};function JS(e,t,s){const i=ZS[e];if(i){const{version:r,new:n,old:l,message:a}=i,d=l??e;return(...c)=>{const u=n?`Please use ${n} instead. `:"";return R(`Since ${r} api.${d} is deprecated. ${u}${a??""}`),t.apply(t,c)}}const o=XS[e];return o?(...r)=>{const n=s.rowModel.getType();if(!o.includes(n)){_(`api.${e} can only be called when gridOptions.rowModelType is ${o.join(" or ")}`);return}return t.apply(t,r)}:t}var ew={columnsMenuParams:{version:"31.1",message:"Use `columnChooserParams` instead."},suppressMenu:{version:"31.1",message:"Use `suppressHeaderMenuButton` instead."},suppressCellFlash:{version:"31.2",message:"Use `enableCellChangeFlash={false}` in the ColDef"},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."}},Bt=(e,t)=>
187{const s=t.rowModelType??"clientSide";return s==="clientSide"||s==="serverSide"?{module:"@ag-grid-enterprise/row-grouping"}:null},tw={enableRowGroup:Bt,rowGroup:Bt,rowGroupIndex:Bt,enablePivot:Bt,enableValue:Bt,pivot:Bt,pivotIndex:Bt,aggFunc:Bt,cellEditor:e=>e.cellEditor==="agRichSelect"||e.cellEditor==="agRichSelectCellEditor"?{module:"@ag-grid-enterprise/rich-select"}:null,menuTabs:e=>{var s;const t=["columnsMenuTab","generalMenuTab"];return(s=e.menuTabs)!=null&&s.some(i=>t.includes(i))?{module:"@ag-grid-enterprise/menu"}:null},columnsMenuParams:{module:["@ag-grid-enterprise/menu","@ag-grid-enterprise/column-tool-panel"]},columnChooserParams:{module:["@ag-grid-enterprise/menu","@ag-grid-enterprise/column-tool-panel"]},headerCheckboxSelection:{supportedRowModels:["clientSide","serverSide"],validate:(e,{rowSelection:t})=>t==="multiple"?null:"headerCheckboxSelection is only supported with rowSelection=multiple"},headerCheckboxSelectionFilteredOnly:{supportedRowModels:["clientSide"],validate:(e,{rowSelection:t})=>t==="multiple"?null:"headerCheckboxSelectionFilteredOnly is only supported with rowSelection=multiple"},headerCheckboxSelectionCurrentPageOnly:{supportedRowModels:["clientSide"],validate:(e,{rowSelection:t})=>t==="multiple"?null:"headerCheckboxSelectionCurrentPageOnly is only supported with rowSelection=multiple"},children:()=>ys},sw={headerName:void 0,columnGroupShow: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,cellClass:void 0,showRowGroup:void 0,filter:void 0,initialAggFunc:void 0,defaultAggFunc:void 0,aggFunc: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,columnsMenuParams: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,suppressCellFlash: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,suppressMenu: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,getQuickFilterText:void 0,onCellValueChanged:void 0,onCellClicked:void 0,onCellDoubleClicked:void 0,onCellContextMenu:void 0,rowDragText:void 0,tooltipValueGetter:void 0,cellRendererSelector:void 0,cellEditorSelector:void 0,suppressS
187panHeaderHeight: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},iw=Object.keys(sw),ys={objectName:"colDef",allProperties:iw,docsUrl:"column-properties/",deprecations:ew,validations:tw},ow=()=>({advancedFilterModel:{version:"31",message:"Use `initialState.filter.advancedFilterModel` instead."},suppressAsyncEvents:{version:"31",message:"Events should be handled asynchronously."},cellFadeDelay:{version:"31.1",renamed:"cellFadeDuration"},cellFlashDelay:{version:"31.1",renamed:"cellFlashDuration"},suppressServerSideInfiniteScroll:{version:"31.1"},serverSideSortOnServer:{version:"31.1"},serverSideFilterOnServer:{version:"31.1"},enableCellChangeFlash:{version:"31.2",message:"Use `enableCellChangeFlash` in the `ColDef` or `defaultColDef` for all columns."},groupIncludeFooter:{version:"31.3",message:"Use `groupTotalRow` instead."},groupIncludeTotalFooter:{version:"31.3",message:"Use `grandTotalRow` instead."},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."}}),rw={suppressContextMenu:!1,preventDefaultOnContextMenu:!1,allowContextMenuWithControlKey:!1,suppressMenuHide:!0,enableBrowserTooltips:!1,tooltipTrigger:"hover",tooltipShowDelay:2e3,tooltipHideDelay:1e4,tooltipMouseTrack:!1,tooltipShowMode:"standard",tooltipInteraction:!1,copyHeadersToClipboard:!1,copyGroupHeadersToClipboard:!1,clipboardDelimiter:" ",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,suppressAsyncEvents:!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,enableCellChangeFlash:!1,cellFlashDelay:500,cellFlashDuration:500,cellFadeDelay:1e3,cellFadeDuration:1e3,allowShowChangeAfterFilter:!1,domLayout:"normal",ensureDomOrder:!1,enableRtl:!1,suppressColumnVirtualisation:!1,suppressMaxRenderedRowRestriction:!1,suppressRowVirtualisation:!1,rowDragManaged:!1,suppressRowDrag:!1,suppressMoveWhenRowDragging:!1,rowDragEntireRow:!1,rowDragMultiRow:!1,embedFullWidthRows:!1,groupDisplayType:"singleColumn",groupDefaultExpanded:0,groupMaintainOrder:!1,groupSelectsChildren:!1,groupIncludeTotalFooter:!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,suppressServerSideInfiniteScroll:!1,cacheBlockSize:100,maxBlocksInCache:-1,maxConcurrentDatasourceRequests:2,blockLoadDebounceMillis:0,purgeClosedRowNodes:!1,serverSideSortAllLevels:!1,serverSideOnlyRefreshFilteredGroups:!1,serverSideSortOnServer:!1,serverSideFilterOnServer:!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,suppressGroupMaintainValueType:!1,groupLockGroupColumns:0,serverSideEnableClientSideSort:!1,suppressServerSideFullWidthLoadingRow:!1,pivotMaxGeneratedColumns:-1,columnMenu:"new",reactiveCustomComponents:!0,suppressSetFilterByDefault:!1},nw=()=>({sideBar:{module:"@ag-grid-enterprise/side-bar"},statusBar:{module:"@ag-grid-enterprise/status-bar"},enableCharts:{module:"@ag-grid-enterprise/charts"},getMainMenuItems:{module:"@ag-grid-enterprise/menu"},getContextMenuItems:{module:"@ag-grid-enterprise/menu"},allowContextMenuWithControlKey:{module:"@ag-grid-enterprise/menu"},enableAdvancedFilter:{module:"@ag-grid-enterprise/advanced-filter"},treeData:{supportedRowModels:["clientSide","serverSide"],module:"@ag-grid-enterprise/row-grouping",validate:e=>{const t=e.rowModelType??"clientSide";switch(t){case"clientSide":{const s=`treeData requires 'getDataPath' in the ${t} row model.`;return e.getDataPath?null:s}case"serverSide":{const s=`treeData requires 'isServerSideGroup' and 'getServerSideGroupKey' in the ${t} row model.`;return e.isServerSideGroup&&e.getServerSideGroupKey?null:s}}return null}},masterDetail:{module:"@ag-grid-enterprise/master-detail"},enableRangeSelection:{module:"@ag-grid-enterprise/range-selection"},enableRangeHandle:{dependencies:{enableRangeSelection:[!0]}},enableFillHandle:{dependencies:{enableRangeSelection:[!0]}},groupDefaultExpanded:{supportedRowModels:["clientSide"]},groupIncludeFooter:{supportedRowModels:["clientSide","serverSide"],validate:e=>{switch(e.rowModelType??"clientSide"){case"clientSide":return null;case"serverSide":return e.suppressServerSideInfiniteScroll?"groupIncludeFooter is not supported alongside suppressServerSideInfiniteScroll":null}return null}},groupHideOpenParents:{supportedRowModels:["clientSide","serverSide"],dependencies:{groupTotalRow:[void 0,"bottom"]}},groupIncludeTotalFooter:{supportedRowModels:["clientSide"]}
187,groupRemoveSingleChildren:{dependencies:{groupHideOpenParents:[void 0,!1],groupRemoveLowestSingleChildren:[void 0,!1]}},groupRemoveLowestSingleChildren:{dependencies:{groupHideOpenParents:[void 0,!1],groupRemoveSingleChildren:[void 0,!1]}},groupSelectsChildren:{dependencies:{rowSelection:["multiple"]}},viewportDatasource:{supportedRowModels:["viewport"],module:"@ag-grid-enterprise/viewport-row-model"},serverSideDatasource:{supportedRowModels:["serverSide"],module:"@ag-grid-enterprise/server-side-row-model"},cacheBlockSize:{supportedRowModels:["serverSide","infinite"]},datasource:{supportedRowModels:["infinite"],module:"@ag-grid-community/infinite-row-model"},rowData:{supportedRowModels:["clientSide"],module:"@ag-grid-community/client-side-row-model"},paginationPageSizeSelector:{validate:e=>{const t=e.paginationPageSizeSelector;return typeof t=="boolean"||t==null||t.length?null:`'paginationPageSizeSelector' cannot be an empty array. 188 If you want to hide the page size selector, set paginationPageSizeSelector to false.`}},rowSelection:{validate({rowSelection:e}){return e&&typeof e=="string"?'As of version 32.2.1, using `rowSelection` with the values "single" or "multiple" has been deprecated. Use the object value instead.':e&&typeof e!="object"?"Expected `RowSelectionOptions` object for the `rowSelection` property.":null}},cellSelection:{module:"@ag-grid-enterprise/range-selection"},columnDefs:()=>ys,defaultColDef:()=>ys,defaultColGroupDef:()=>ys,autoGroupColumnDef:()=>ys,selectionColumnDef:()=>ys}),lw=()=>({objectName:"gridOptions",allProperties:[...mi.ALL_PROPERTIES,...Ci.EVENT_CALLBACKS],propertyExceptions:["api"],docsUrl:"grid-options/",deprecations:ow(),validations:nw()}),aw=class extends b{constructor(){super(...arguments),this.beanName="validationService"}wireBeans(e){this.beans=e,this.gridOptions=e.gridOptions}postConstruct(){this.processGridOptions(this.gridOptions)}processGridOptions(e){this.processOptions(e,lw())}validateApiFunction(e,t){return JS(e,t,this.beans)}processOptions(e,t){const{validations:s,deprecations:i,allProperties:o,propertyExceptions:r,objectName:n,docsUrl:l}=t;o&&this.gridOptions.suppressPropertyNamesCheck!==!0&&this.checkProperties(e,[...r??[],...Object.keys(i)],o,n,l);const a=new Set;Object.keys(e).forEach(c=>{const u=i[c];if(u)if("renamed"in u){const{renamed:w,version:F}=u;a.add(`As of v${F}, ${String(c)} is deprecated. Please use ${String(w)} instead.`),e[w]=e[c]}else{const{message:w,version:F}=u;a.add(`As of v${F}, ${String(c)} is deprecated. ${w??""}`)}const h=e[c];if(h==null||h===!1)return;const p=s[c];let g;if(p)if(typeof p=="function"){const w=p(e,this.gridOptions);if(!w)return;if("objectName"in w){const F=e[c];if(Array.isArray(F)){F.forEach(D=>{this.processOptions(D,w)});return}this.processOptions(e[c],w);return}g=w}else g=p;else return;const{module:f,dependencies:m,validate:v,supportedRowModels:y}=g;if(y){const w=this.gridOptions.rowModelType??"clientSide";if(!y.includes(w)){a.add(`${String(c)} is not supported with the '${w}' row model.`);return}}if(f){const w=Array.isArray(f)?f:[f];let F=!0;if(w.forEach(D=>{this.gos.assertModuleRegistered(D,String(c))||(F=!1,a.add(`${String(c)} is only available when ${D} is loaded.`))}),!F)return}if(m){const w=this.checkForRequiredDependencies(c,m,e);if(w){a.add(w);return}}if(v){const w=v(e,this.gridOptions);if(w){a.add(w);return}}}),a.size>0&&a.forEach(c=>{R(c)})}checkForRequiredDependencies(e,t,s){const o=Object.entries(t).find(([l,a])=>{const d=s[l];return!a.includes(d)});if(!o)return null;const[r,n]=o;return n.length>1?`'${String(e)}' requires '${r}' to be one of [${n.join(", ")}].`:`'${String(e)}' requires '${r}' to be ${n[0]}.`}checkProperties(e,t,s,i,o){const r=["__ob__","__v_skip","__metadata__"],n=dw(Object.getOwnPropertyNames(e),[...r,...t,...s],s);if(Pe(n,(l,a)=>{let d=`invalid ${i} property '${l}' did you mean any of these: ${a.slice(0,8).join(", ")}.`;s.includes("context")&&(d+=` 189If you are trying to annotate ${i} with application data, use the '${i}.context' property instead.`),R(d)}),Object.keys(n).length>0&&o){const l=this.getFrameworkOverrides().getDocLink(o);R(`to see all the valid ${i} properties please check: ${l}`)}}};function dw(e,t,s){const i={},o=e.filter(r=>!t.some(n=>n===r));return o.length>0&&o.forEach(r=>i[r]=Na({inputValue:r,allSuggestions:s}).values),i}var cw={version:V,moduleName:"@ag-grid-community/core"},uw={version:V,moduleName:"@ag-grid-community/core-validations",beans:[aw]},hw={version:V,moduleName:"@ag-grid-community/core-community-features",dependantModules:[cw,uw,Pm,lg,IS,rv,gC,QS,P
189S]},pw=class extends b{constructor(){super(...arguments),this.beanName="gridDestroyService",this.destroyCalled=!1}wireBeans(e){this.beans=e}destroy(){var e,t;this.destroyCalled||(this.eventService.dispatchEvent({type:"gridPreDestroyed",state:((e=this.beans.stateService)==null?void 0:e.getState())??{}}),this.destroyCalled=!0,(t=this.beans.ctrlsService.get("gridCtrl"))==null||t.destroyGridUi(),this.beans.context.destroy(),super.destroy())}isDestroyCalled(){return this.destroyCalled}},_i=new Set(["gridPreDestroyed","fillStart","pasteStart"]),pn=e=>e==="checkboxSelected"||e==="rowClicked"||e==="spaceKey"||e==="uiSelectAll"||e==="uiSelectAllCurrentPage"||e==="uiSelectAllFiltered",gw=new Map([...mi.BOOLEAN_PROPERTIES.map(e=>[e,sr]),...mi.NUMBER_PROPERTIES.map(e=>[e,id]),["groupAggFiltering",e=>typeof e=="function"?e:sr(e)],["pageSize",vt(1)],["autoSizePadding",vt(0)],["keepDetailRowsCount",vt(1)],["rowBuffer",vt(0)],["infiniteInitialRowCount",vt(1)],["cacheOverflowSize",vt(1)],["cacheBlockSize",vt(1)],["serverSideInitialRowCount",vt(1)],["viewportRowModelPageSize",vt(1)],["viewportRowModelBufferSize",vt(0)]]);function ec(e,t){const s=gw.get(e);return s?s(t):t}function fw(e){const t={};return Object.entries(e).forEach(([s,i])=>{const o=ec(s,i);t[s]=o}),t}var tc=class sc extends b{constructor(){super(...arguments),this.beanName="gos",this.domDataKey="__AG_"+Math.random().toString(),this.propertyEventService=new qt,this.globalEventHandlerFactory=t=>(s,i)=>{if(!this.isAlive())return;const o=_i.has(s);if(o&&!t||!o&&t)return;const r=Ci.getCallbackForEvent(s),n=this.gridOptions[r];typeof n=="function"&&this.frameworkOverrides.wrapOutgoing(()=>{n(i)})}}wireBeans(t){this.gridOptions=t.gridOptions,this.eGridDiv=t.eGridDiv,this.validationService=t.validationService,this.environment=t.environment,this.api=t.gridApi,this.gridId=t.context.getGridId()}get gridOptionsContext(){return this.gridOptions.context}postConstruct(){const t=!this.get("suppressAsyncEvents");this.eventService.addGlobalListener(this.globalEventHandlerFactory().bind(this),t),this.eventService.addGlobalListener(this.globalEventHandlerFactory(!0).bind(this),!1),this.propertyEventService.setFrameworkOverrides(this.frameworkOverrides),this.addManagedEventListeners({gridOptionsChanged:({options:s})=>{this.updateGridOptions({options:s,force:!0,source:"gridOptionsUpdated"})}})}get(t){return this.gridOptions[t]??rw[t]}getCallback(t){return this.mergeGridCommonParams(this.gridOptions[t])}exists(t){return E(this.gridOptions[t])}mergeGridCommonParams(t){return t&&(i=>{const o=i;return o.api=this.api,o.context=this.gridOptionsContext,t(o)})}updateGridOptions({options:t,force:s,source:i="api"}){var n;const o={id:sc.changeSetId++,properties:[]},r=[];Object.entries(t).forEach(([l,a])=>{i==="api"&&Wu[l]&&R(`${l} is an initial property and cannot be updated.`);const d=ec(l,a),c=s||typeof d=="object"&&i==="api",u=this.gridOptions[l];if(c||u!==d){this.gridOptions[l]=d;const h={type:l,currentValue:d,previousValue:u,changeSet:o,source:i};r.push(h)}}),(n=this.validationService)==null||n.processGridOptions(this.gridOptions),o.properties=r.map(l=>l.type),r.forEach(l=>{this.gridOptions.debug&&ut(`Updated property ${l.type} from`,l.previousValue," to ",l.currentValue),this.propertyEventService.dispatchEvent(l)})}addPropertyEventListener(t,s){this.propertyEventService.addEventListener(t,s)}removePropertyEventListener(t,s){this.propertyEventService.removeEventListener(t,s)}getDomDataKey(){return this.domDataKey}getGridCommonParams(){return{api:this.api,context:this.gridOptionsContext}}addGridCommonParams(t){const s=t;return s.api=this.api,s.context=this.gridOptionsContext,s}assertModuleRegistered(t,s){return Dt.__assertRegistered(t,s,this.gridId)}isModuleRegistered(t){return Dt.__isRegistered(t,this.gridId)}};tc.changeSetId=0;var mw=tc,Cw=class extends b{constructor(){super(...arguments),this.beanName="headerPositionUtils"}wireBeans(e){this.visibleColsService=e.visibleColsService,this.ctrlsService=e.ctrlsService}findHeader(e,t){let s,i;if(Se(e.column)?s=this.visibleColsService.getGroupAtDirection(e.column,t):(i=`getCol${t}`,s=this.visibleColsService[i](e.column)),!s)return;const{headerRowIndex:o}=e;if(this.getHeaderRowType(o)!=="filter"){const l=[s];for(;s.getParent();)s=s.getParent(),l.push(s);s=l[l.length-1-o]}const{column:r,headerRowIndex:n}=this.getHeaderIndexToFocus(s,o);return{column:r,headerRowIndex:n}}getHeaderIndexToFocus(e,t){let s;if(Se(e)&&this.isAnyChildSpanningHeaderHeight(e)&&e.isPadding()){const i=e;s=i.getLeafColumns()[0];let o=s;for(;o!==i;)t++,o=o.getParent()}return{column:s||e,headerRowIndex:t}}isAnyChildSpanningHeaderHeight(e){return e?e.getLeafColumns().some(t=>t.isSpanHeaderHeight()):!1}getColumnVisibleParent(e,t){const s=this.getHeaderRowType(t),i=s==="filter",o=s==="column";let r=i?e:e.getParent(),n=t-1,l=n;if(o&&this.isAnyChildSpanningHeaderHeight(e.getParent())){for(;r&&r.isPadding();)r=r.getParent(),n--;l=n,n<0&&(r=e,n=t,l=void 0)}return{column:r,headerRowIndex:n,headerRowIndexWithoutSpan:l}}getColumnVisibleChild(e,t,s="After"){const i=this.getHeaderRowType(t);let o=e,r=t+1;const n=r;if(i==="group"){const l=e.getDisplayedLeafColumns(),a=s==="After"?l[0]:W(l),d=[];let c=a;for(;c.getParent()!==e;)c=c.getParent(),d.push(c);if(o=a,a.isSpanHeaderHeight())for(let u=d.length-1;u>=0;u--){const h=d[u];if(!h.isPadding()){o=h;break}r++}else o=W(d),o||(o=a)}return{column:o,headerRowIndex:r,headerRowIndexWithoutSpan:n}}getHeaderRowType(e){const t=this.ctrlsService.getHeaderRowContainerCtrl();if(t)return t.getRowType(e)}findColAtEdgeForHeaderRow(e,t){const s=this.visibleColsService.getAllCols(),i=s[t==="start"?0:s.length-1];if(!i)return;const o=this.ctrlsService.getHeaderRowContainerCtrl(i.getPinned()),r=o==null?void 0:o.getRowType(e);if(r=="group"){const n=this.visibleColsService.getColGroupAtLevel(i,e);return{headerRowIndex:e,column:n}}return{headerRowIndex:r==null?-1:e,column:i}}},vw=class extends b{constructor(){super(...arguments),this.beanName="localeService"}getLocaleTextFunc(){const e=this.gos.getCallback("getLocaleText");if(e)return(s,i,o)=>e({key:s,defaultValue:i,variableValues:o});const t=this.gos.get("localeText");return(s,i,o)=>{let r=t&&t[s];if(r&&o&&o.length){let n=0;for(;!(n>=o.length||r.indexOf("${variable}")===-1);)r=r.replace("${variable}",o[n++])}return r??i}}},Sw=class extends b{constructor(){super(...arguments),this.beanName="apiEventService",this.syncEventListeners=new Map,this.asyncEventListeners=new Map,this.syncGlobalEventListeners=new Set,this.globalEventListenerPairs=new Map}postConstruct(){this.frameworkEventWrappingService=new Nr(this.getFrameworkOverrides())}addEventListener(e,t){const s=this.frameworkEventWrappingService.wrap(t),i=qi(this.gos)&&!_i.has(e),o=i?this.asyncEventListeners:this.syncEventListeners;o.has(e)||o.set(e,new Set),o.get(e).add(s),this.eventService.addEventListener(e,s,i)}removeEventListener(e,t){var r;const s=this.frameworkEventWrappingService.unwrap(t),i=this.asyncEventListeners.get(e),o=!!(i!=null&&i.delete(s));o||(r=this.syncEventListeners.get(e))==null||r.delete(s),this.eventService.removeEventListener(e,s,o)}addGlobalListener(e){const t=this.frameworkEventWrappingService.wrapGlobal(e);if(qi(this.gos)){const i=(r,n)=>{_i.has(r)&&t(r,n)},o=(r,n)=>{_i.has(r)||t(r,n)};this.globalEventListenerPairs.set(e,{syncListener:i,asyncListener:o}),this.eventService.addGlobalListener(i,!1),this.eventService.addGlobalListener(o,!0)}else this.syncGlobalEventListeners.add(t),this.eventService.addGlobalListener(t,!1)}removeGlobalListener(e){const t=this.frameworkEventWrappingService.unwrapGlobal(e);if(this.globalEventListenerPairs.has(t)){const{syncListener:i,asyncListener:o}=this.globalEventListenerPairs.get(t);this.eventService.removeGlobalListener(i,!1),this.eventService.removeGlobalListener(o,!0),this.globalEventListenerPairs.delete(e)}else this.syncGlobalEventListeners.delete(t),this.eventService.removeGlobalListener(t,!1)}destroyEventListeners(e,t){e.forEach((s,i)=>
189{s.forEach(o=>this.eventService.removeEventListener(i,o,t)),s.clear()}),e.clear()}destroyGlobalListeners(e,t){e.forEach(s=>this.eventService.removeGlobalListener(s,t)),e.clear()}destroy(){super.destroy(),this.destroyEventListeners(this.syncEventListeners,!1),this.destroyEventListeners(this.asyncEventListeners,!0),this.destroyGlobalListeners(this.syncGlobalEventListeners,!1),this.globalEventListenerPairs.forEach(({syncListener:e,asyncListener:t})=>{this.eventService.removeGlobalListener(e,!1),this.eventService.removeGlobalListener(t,!0)}),this.globalEventListenerPairs.clear()}},ww=class extends b{constructor(){super(...arguments),this.beanName="pageBoundsListener"}wireBeans(e){this.rowModel=e.rowModel,this.paginationService=e.paginationService,this.pageBoundsService=e.pageBoundsService}postConstruct(){this.addManagedEventListeners({modelUpdated:this.onModelUpdated.bind(this),recalculateRowBounds:this.calculatePages.bind(this)}),this.onModelUpdated()}onModelUpdated(e){this.calculatePages(),this.eventService.dispatchEvent({type:"paginationChanged",animate:(e==null?void 0:e.animate)??!1,newData:(e==null?void 0:e.newData)??!1,newPage:(e==null?void 0:e.newPage)??!1,newPageSize:(e==null?void 0:e.newPageSize)??!1,keepRenderedRows:(e==null?void 0:e.keepRenderedRows)??!1})}calculatePages(){this.paginationService?this.paginationService.calculatePages():this.pageBoundsService.calculateBounds(0,this.rowModel.getRowCount()-1)}},yw=class extends b{constructor(){super(...arguments),this.beanName="pageBoundsService",this.pixelOffset=0}wireBeans(e){this.rowModel=e.rowModel}getFirstRow(){return this.topRowBounds?this.topRowBounds.rowIndex:-1}getLastRow(){return this.bottomRowBounds?this.bottomRowBounds.rowIndex:-1}getCurrentPageHeight(){return z(this.topRowBounds)||z(this.bottomRowBounds)?0:Math.max(this.bottomRowBounds.rowTop+this.bottomRowBounds.rowHeight-this.topRowBounds.rowTop,0)}getCurrentPagePixelRange(){const e=this.topRowBounds?this.topRowBounds.rowTop:0,t=this.bottomRowBounds?this.bottomRowBounds.rowTop+this.bottomRowBounds.rowHeight:0;return{pageFirstPixel:e,pageLastPixel:t}}calculateBounds(e,t){this.topRowBounds=this.rowModel.getRowBounds(e),this.topRowBounds&&(this.topRowBounds.rowIndex=e),this.bottomRowBounds=this.rowModel.getRowBounds(t),this.bottomRowBounds&&(this.bottomRowBounds.rowIndex=t),this.calculatePixelOffset()}getPixelOffset(){return this.pixelOffset}calculatePixelOffset(){const e=E(this.topRowBounds)?this.topRowBounds.rowTop:0;this.pixelOffset!==e&&(this.pixelOffset=e,this.eventService.dispatchEvent({type:"paginationPixelOffsetChanged"}))}},Rw=class extends b{constructor(){super(),this.beanName="ariaAnnouncementService",this.descriptionContainer=null,this.pendingAnnouncements=new Map,this.updateAnnouncement=Me(this.updateAnnouncement.bind(this),200)}wireBeans(e){this.eGridDiv=e.eGridDiv}postConstruct(){const e=le(this.gos),t=this.descriptionContainer=e.createElement("div");t.classList.add("ag-aria-description-container"),da(t,"polite"),qu(t,"additions text"),ju(t,!0),this.eGridDiv.appendChild(t)}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.isAlive()&&this.descriptionContainer&&(this.descriptionContainer.textContent=e)},50)}destroy(){super.destroy();const{descriptionContainer:e}=this;e&&(de(e),e.parentElement&&e.parentElement.removeChild(e)),this.descriptionContainer=null,this.eGridDiv=null,this.pendingAnnouncements.clear()}},bw=class extends b{constructor(){super(...arguments),this.beanName="columnAnimationService",this.executeNextFuncs=[],this.executeLaterFuncs=[],this.active=!1,this.activeNext=!1,this.suppressAnimation=!1,this.animationThreadCount=0}wireBeans(e){this.ctrlsService=e.ctrlsService}postConstruct(){this.ctrlsService.whenReady(this,e=>this.gridBodyCtrl=e.gridBodyCtrl)}isActive(){return this.active&&!this.suppressAnimation}setSuppressAnimation(e){this.suppressAnimation=e}start(){this.active||this.gos.get("suppressColumnMoveAnimation")||this.gos.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;this.gridBodyCtrl.setColumnMovingCss(!0),this.executeLaterFuncs.push(()=>{this.animationThreadCount===e&&this.gridBodyCtrl.setColumnMovingCss(!1)})}flush(e,t){if(this.executeNextFuncs.length===0&&this.executeLaterFuncs.length===0){e(),t();return}const s=i=>{for(;i.length;){const o=i.pop();o&&o()}};this.getFrameworkOverrides().wrapIncoming(()=>{window.setTimeout(()=>{e(),s(this.executeNextFuncs)},0),window.setTimeout(()=>{t(),s(this.executeLaterFuncs)},200)})}},Fw=class extends b{constructor(){super(...arguments),this.beanName="
189columnHoverService"}setMouseOver(e){this.updateState(e)}clearMouseOver(){this.updateState(null)}isHovered(e){return!!this.selectedColumns&&this.selectedColumns.indexOf(e)>=0}updateState(e){this.selectedColumns=e,this.eventService.dispatchEvent({type:"columnHoverChanged"})}},Pw=class extends b{constructor(){super(...arguments),this.beanName="overlayService",this.state=0,this.showInitialOverlay=!0,this.wrapperPadding=0}wireBeans(e){this.userComponentFactory=e.userComponentFactory,this.rowModel=e.rowModel,this.columnModel=e.columnModel,this.ctrlsService=e.ctrlsService}postConstruct(){this.isClientSide=re(this.gos);const e=()=>this.updateOverlayVisibility();this.addManagedEventListeners({newColumnsLoaded:e,rowDataUpdated:e,gridSizeChanged:this.onGridSizeChanged.bind(this),rowCountReady:()=>{this.showInitialOverlay=!1,this.updateOverlayVisibility()}}),this.addManagedPropertyListener("loading",e)}setOverlayWrapperComp(e){this.overlayWrapperComp=e,this.updateOverlayVisibility()}isVisible(){return this.state!==0&&!!this.overlayWrapperComp}isExclusive(){return this.state===1&&!!this.overlayWrapperComp}getOverlayWrapper(){return this.overlayWrapperComp}showLoadingOverlay(){this.showInitialOverlay=!1;const e=this.gos.get("loading");!e&&(e!==void 0||this.gos.get("suppressLoadingOverlay"))||this.doShowLoadingOverlay()}showNoRowsOverlay(){this.showInitialOverlay=!1,!(this.gos.get("loading")||this.gos.get("suppressNoRowsOverlay"))&&this.doShowNoRowsOverlay()}hideOverlay(){if(this.showInitialOverlay=!1,this.gos.get("loading")){R("Since v32, `api.hideOverlay()` does not hide the loading overlay when `loading=true`. Set `loading=false` instead.");return}this.doHideOverlay()}updateOverlayVisibility(){if(!this.overlayWrapperComp){this.state=0;return}let e=this.gos.get("loading");this.showInitialOverlay&&e===void 0&&!this.gos.get("suppressLoadingOverlay")&&(e=!this.gos.get("columnDefs")||!this.columnModel.isReady()||!this.gos.get("rowData")&&this.isClientSide),e?this.state!==1&&this.doShowLoadingOverlay():(this.showInitialOverlay=!1,this.rowModel.isEmpty()&&!this.gos.get("suppressNoRowsOverlay")&&this.isClientSide?this.state!==2&&this.doShowNoRowsOverlay():this.state!==0&&this.doHideOverlay())}doShowLoadingOverlay(){this.overlayWrapperComp&&(this.state=1,this.showOverlay(this.userComponentFactory.getLoadingOverlayCompDetails({}),"ag-overlay-loading-wrapper","loadingOverlayComponentParams"),this.updateExclusive())}doShowNoRowsOverlay(){this.overlayWrapperComp&&(this.state=2,this.showOverlay(this.userComponentFactory.getNoRowsOverlayCompDetails({}),"ag-overlay-no-rows-wrapper","noRowsOverlayComponentParams"),this.updateExclusive())}doHideOverlay(){this.overlayWrapperComp&&(this.state=0,this.overlayWrapperComp.hideOverlay(),this.updateExclusive())}showOverlay(e,t,s){var o;const i=e.newAgStackInstance();(o=this.overlayWrapperComp)==null||o.showOverlay(i,t,this.isExclusive(),s),this.refreshWrapperPadding()}updateExclusive(){const e=this.exclusive;this.exclusive=this.isExclusive(),this.exclusive!==e&&this.eventService.dispatchEvent({type:"overlayExclusiveChanged"})}onGridSizeChanged(){this.refreshWrapperPadding()}refreshWrapperPadding(){if(!this.overlayWrapperComp)return;let e=0;if(this.state===2){const t=this.ctrlsService.get("gridHeaderCtrl");e=(t==null?void 0:t.getHeaderHeight())||0}else this.wrapperPadding!==0&&(e=0);this.wrapperPadding!==e&&(this.wrapperPadding=e,this.overlayWrapperComp.updateOverlayWrapperPaddingTop(e))}},Ew=class extends b{constructor(){super(...arguments),this.beanName="rowCssClassCalculator"}wireBeans(e){this.stylingService=e.stylingService}getInitialRowClasses(e){const t=[];return E(e.extraCssClass)&&t.push(e.extraCssClass),t.push("ag-row"),t.push(e.rowFocused?"ag-row-focus":"ag-row-no-focus"),e.fadeRowIn&&t.push("ag-opacity-zero"),t.push(e.rowIsEven?"ag-row-even":"ag-row-odd"),e.rowNode.isRowPinned()&&t.push("ag-row-pinned"),e.rowNode.isSelected()&&t.push("ag-row-selected"),e.rowNode.footer&&t.push("ag-row-footer"),t.push("ag-row-level-"+e.rowLevel),e.rowNode.stub&&t.push("ag-row-loading"),e.fullWidthRow&&t.push("ag-full-width-row"),e.expandable&&(t.push("ag-row-group"),t.push(e.rowNode.expanded?"ag-row-group-expanded":"ag-row-group-contracted")),e.rowNode.dragging&&t.push("ag-row-dragging"),Wn(t,this.processClassesFromGridOptions(e.rowNode)),Wn(t,this.preProcessRowClassRules(e.rowNode)),t.push(e.printLayout?"ag-row-position-relative":"ag-row-position-absolute"),e.firstRowOnPage&&t.push("ag-row-first"),e.lastRowOnPage&&t.push("ag-row-last"),e.fullWidthRow&&(e.pinned==="left"&&t.push("ag-cell-last-left-pinned"),e.pinned==="right"&&t.push("ag-cell-first-right-pinned")),t}processClassesFromGridOptions(e){const t=[],s=r=>{typeof r=="string"?t.push(r):Array.isArray(r)&&r.forEach(n=>t.push(n))},i=this.gos.get("rowClass");if(i){if(typeof i=="function")return R("rowClass should not be a function, please use getRowClass instead"),[];s(i)}const o=this.gos.getCallback("getRowClass");if(o){const r={data:e.data,node:e,rowIndex:e.rowIndex},n=o(r);s(n)}return t}preProcessRowClassRules(e){const t=[];return this.processRowClassRules(e,s=>{t.push(s)},()=>{}),t}processRowClassRules(e,t,s){const i=this.gos.addGridCommonParams({data:e.data,node:e,rowIndex:e.rowIndex});this.stylingService.processClassRules(void 0,this.gos.get("rowClassRules"),i,t,s)}calculateRowLevel(e){return e.group?e.level:e.parent?e.parent.level+1:0}},Mw=class extends b{constructor(){super(...arguments),this.beanName="rowContainerHeightService",this.scrollY=0,this.uiBodyHeight=0}wireBeans(e){this.ctrlsService=e.ctrlsService}postConstruct(){this.addManagedEventListeners({bodyHeightChanged:this.updateOffset.bind(this)}),this.maxDivHeight=Ju(),this.gos.get("debug")&&ut("RowContainerHeightService - maxDivHeight = "+this.maxDivHeight)}isStretching(){return this.stretching}getDivStretchOffset(){return this.divStretchOffset}updateOffset(){if(!this.stretching)return;
189const t=this.ctrlsService.getGridBodyCtrl().getScrollFeature().getVScrollPosition().top,s=this.getUiBodyHeight();(t!==this.scrollY||s!==this.uiBodyHeight)&&(this.scrollY=t,this.uiBodyHeight=s,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;this.gos.get("debug")&&ut(`RowContainerHeightService - Div Stretch Offset = ${t} (${this.pixelsToShave} * ${e})`),this.setDivStretchOffset(t)}setUiContainerHeight(e){e!==this.uiContainerHeight&&(this.uiContainerHeight=e,this.eventService.dispatchEvent({type:"rowContainerHeightChanged"}))}clearOffset(){this.setUiContainerHeight(this.modelHeight),this.pixelsToShave=0,this.setDivStretchOffset(0)}setDivStretchOffset(e){const t=typeof e=="number"?Math.floor(e):null;this.divStretchOffset!==t&&(this.divStretchOffset=t,this.eventService.dispatchEvent({type:"heightScaleChanged"}))}setModelHeight(e){this.modelHeight=e,this.stretching=e!=null&&this.maxDivHeight>0&&e>this.maxDivHeight,this.stretching?this.calculateOffset():this.clearOffset()}getUiContainerHeight(){return this.uiContainerHeight}getRealPixelPosition(e){return e-this.divStretchOffset}getUiBodyHeight(){const t=this.ctrlsService.getGridBodyCtrl().getScrollFeature().getVScrollPosition();return t.bottom-t.top}getScrollPositionForPixel(e){if(this.pixelsToShave<=0)return e;const t=this.modelHeight-this.getUiBodyHeight(),s=e/t;return this.maxScrollY*s}},Dw=class extends b{constructor(){super(...arguments),this.beanName="rowNodeSorter"}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.showRowGroupColsService=e.showRowGroupColsService}postConstruct(){this.isAccentedSort=this.gos.get("accentedSort"),this.primaryColumnsSortGroups=ct(this.gos),this.addManagedPropertyListener("accentedSort",e=>this.isAccentedSort=e.currentValue),this.addManagedPropertyListener("autoGroupColumnDef",()=>this.primaryColumnsSortGroups=ct(this.gos))}doFullSort(e,t){const s=(o,r)=>({currentPos:r,rowNode:o}),i=e.map(s);return i.sort(this.compareRowNodes.bind(this,t)),i.map(o=>o.rowNode)}compareRowNodes(e,t,s){const i=t.rowNode,o=s.rowNode;for(let r=0,n=e.length;r<n;r++){const l=e[r],a=l.sort==="desc",d=this.getValue(i,l.column),c=this.getValue(o,l.column);let u;const h=this.getComparator(l,i);if(h?u=h(d,c,i,o,a):u=Hi(d,c,this.isAccentedSort),!isNaN(u)&&u!==0)return l.sort==="asc"?u:u*-1}return t.currentPos-s.currentPos}getComparator(e,t){const s=e.column,i=s.getColDef().comparator;if(i!=null)return i;if(!s.getColDef().showRowGroup)return;const o=!t.group&&s.getColDef().field;if(!o)return;const r=this.columnModel.getColDefCol(o);if(r)return r.getColDef().comparator}getValue(e,t){var i,o,r;if(!this.primaryColumnsSortGroups)return this.valueService.getValue(t,e,!1,!1);if(e.rowGroupColumn===t){if(po(this.gos,this.columnModel.isPivotActive())){const a=(i=e.allLeafChildren)==null?void 0:i[0];return a?this.valueService.getValue(t,a,!1,!1):void 0}const l=(o=this.showRowGroupColsService)==null?void 0:o.getShowRowGroupCol(t.getId());return l?(r=e.groupData)==null?void 0:r[l.getId()]:void 0}if(!(e.group&&t.getColDef().showRowGroup))return this.valueService.getValue(t,e,!1,!1)}},Fo=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}setInactive(){this.active=!1}isActive(){return this.active}depthFirstSearchChangedPath(e,t){if(e.children)for(let s=0;s<e.children.length;s++)this.depthFirstSearchChangedPath(e.children[s],t);t(e.rowNode)}depthFirstSearchEverything(e,t,s){if(e.childrenAfterGroup)for(let i=0;i<e.childrenAfterGroup.length;i++){const o=e.childrenAfterGroup[i];o.childrenAfterGroup?this.depthFirstSearchEverything(e.childrenAfterGroup[i],t,s):s&&t(o)}t(e)}forEachChangedNodeDepthFirst(e,t=!1,s=!1){this.active&&!s?this.depthFirstSearchChangedPath(this.pathRoot,e):this.depthFirstSearchEverything(this.pathRoot.rowNode,e,t)}executeFromRootNode(e){e(this.pathRoot.rowNode)}createPathItems(e){let t=e,s=0;for(;!this.mapToItems[t.id];){const i={rowNode:t,children:null};this.mapToItems[t.id]=i,s++,t=t.parent}return s}populateColumnsMap(e,t){if(!this.keepingColumns||!t)return;let s=e;for(;s;)this.nodeIdsToColumns[s.id]||(this.nodeIdsToColumns[s.id]={}),t.forEach(i=>
189this.nodeIdsToColumns[s.id][i.getId()]=!0),s=s.parent}linkPathItems(e,t){let s=e;for(let i=0;i<t;i++){const o=this.mapToItems[s.id],r=this.mapToItems[s.parent.id];r.children||(r.children=[]),r.children.push(o),s=s.parent}}addParentNode(e,t){if(!e||e.isRowPinned())return;const s=this.createPathItems(e);this.linkPathItems(e,s),this.populateColumnsMap(e,t)}canSkip(e){return this.active&&!this.mapToItems[e.id]}getValueColumnsForNode(e,t){if(!this.keepingColumns)return t;const s=this.nodeIdsToColumns[e.id];return t.filter(o=>s[o.getId()])}getNotValueColumnsForNode(e,t){if(!this.keepingColumns)return null;const s=this.nodeIdsToColumns[e.id];return t.filter(o=>!s[o.getId()])}},ic=class extends b{constructor(){super(...arguments),this.beanName="selectionService",this.selectedNodes=new Map,this.selectionCtx=new Gm,this.rowSelectionMode=void 0}wireBeans(e){this.rowModel=e.rowModel,this.pageBoundsService=e.pageBoundsService}postConstruct(){const{gos:e,rowModel:t,onRowSelected:s}=this;this.selectionCtx.init(t),this.rowSelectionMode=os(e),this.groupSelectsChildren=It(e),this.addManagedPropertyListeners(["groupSelectsChildren","rowSelection"],()=>{const i=It(e),o=os(e);(i!==this.groupSelectsChildren||o!==this.rowSelectionMode)&&(this.groupSelectsChildren=i,this.rowSelectionMode=o,this.deselectAllRowNodes({source:"api"}))}),this.addManagedEventListeners({rowSelected:s.bind(this)})}destroy(){super.destroy(),this.resetNodes(),this.selectionCtx.reset()}isMultiSelect(){return this.rowSelectionMode==="multiRow"}overrideSelectionValue(e,t){if(!pn(t))return e;const s=this.selectionCtx.getRoot();return s?s.isSelected()??!1:!0}setNodesSelected(e){var u;const{newValue:t,clearSelection:s,suppressFinishActions:i,rangeSelect:o,nodes:r,event:n,source:l}=e;if(r.length===0)return 0;if(r.length>1&&!this.isMultiSelect())return R("cannot multi select unless selection mode is 'multiRow'"),0;const a=this.groupSelectsChildren&&e.groupSelectsFiltered===!0,d=r.map(h=>h.footer?h.sibling:h);if(o){if(d.length>1)return R("cannot range select while selecting multiple rows"),0;const h=d[0],p=this.overrideSelectionValue(t,l);if(this.isMultiSelect()){if(this.selectionCtx.isInRange(h)){const g=this.selectionCtx.truncate(h);return p&&this.selectRange(g.discard,!1,l),this.selectRange(g.keep,p,l)}else if(this.selectionCtx.getRoot()!==h){const m=this.selectionCtx.extend(h,this.groupSelectsChildren);return p&&this.selectRange(m.discard,!1,l),this.selectRange(m.keep,p,l)}}}i||this.selectionCtx.setRoot(d[0]);let c=0;for(let h=0;h<d.length;h++){const p=d[h];a&&p.group||p.selectThisNode(t,n,l)&&c++,this.groupSelectsChildren&&((u=p.childrenAfterGroup)!=null&&u.length)&&(c+=this.selectChildren(p,t,a,l))}return i||(t&&(s||!this.isMultiSelect())&&(c+=this.clearOtherNodes(d[0],l)),c>0&&(this.updateGroupsFromChildrenSelections(l),this.dispatchSelectionChanged(l))),c}selectRange(e,t,s){let i=0;return e.forEach(o=>{if(o.group&&this.groupSelectsChildren)return;o.selectThisNode(t,void 0,s)&&i++}),i>0&&(this.updateGroupsFromChildrenSelections(s),this.dispatchSelectionChanged(s)),i}selectChildren(e,t,s,i){const o=s?e.childrenAfterAggFilter:e.childrenAfterGroup;return z(o)?0:this.setNodesSelected({newValue:t,clearSelection:!1,suppressFinishActions:!0,groupSelectsFiltered:s,source:i,nodes:o})}getSelectedNodes(){const e=[];return this.selectedNodes.forEach(t=>{t&&e.push(t)}),e}getSelectedRows(){const e=[];return this.selectedNodes.forEach(t=>{t&&t.data&&e.push(t.data)}),e}getSelectionCount(){return this.selectedNodes.size}filterFromSelection(e){const t=new Map;this.selectedNodes.forEach((s,i)=>{s&&e(s)&&t.set(i,s)}),this.selectedNodes=t}updateGroupsFromChildrenSelections(e,t){if(!this.groupSelectsChildren||!re(this.gos))return!1;const i=this.rowModel.getRootNode();t||(t=new Fo(!0,i),t.setInactive());let o=!1;return t.forEachChangedNodeDepthFirst(r=>{if(r!==i){const n=r.calculateSelectedFromChildren();o=r.selectThisNode(n===null?!1:n,void 0,e)||o}}),o}clearOtherNodes(e,t){const s=new Map;let i=0;return this.selectedNodes.forEach(o=>{if(o&&o.id!==e.id){const r=this.selectedNodes.get(o.id);i+=r.setSelectedParams({newValue:!1,clearSelection:!1,suppressFinishActions:!0,source:t}),this.groupSelectsChildren&&o.parent&&s.set(o.parent.id,o.parent)}}
189),s.forEach(o=>{const r=o.calculateSelectedFromChildren();o.selectThisNode(r===null?!1:r,void 0,t)}),i}onRowSelected(e){const t=e.node;this.groupSelectsChildren&&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)}syncInOldRowNode(e,t){if(E(t)&&e.id!==t.id&&t){const i=t.id;this.selectedNodes.get(i)==e&&this.selectedNodes.set(t.id,t)}}syncInNewRowNode(e){this.selectedNodes.has(e.id)?(e.setSelectedInitialValue(!0),this.selectedNodes.set(e.id,e)):e.setSelectedInitialValue(!1)}reset(e){const t=this.getSelectionCount();this.resetNodes(),t&&this.dispatchSelectionChanged(e)}resetNodes(){var e;(e=this.selectedNodes)==null||e.clear()}getBestCostNodeSelection(){if(!re(this.gos))return;const t=this.rowModel.getTopLevelNodes();if(t===null)return;const s=[];function i(o){for(let r=0,n=o.length;r<n;r++){const l=o[r];if(l.isSelected())s.push(l);else{const a=l;a.group&&a.children&&i(a.children)}}}return i(t),s}isEmpty(){let e=0;return this.selectedNodes.forEach(t=>{t&&e++}),e===0}deselectAllRowNodes(e){const t=n=>n.selectThisNode(!1,void 0,i),s=re(this.gos),{source:i,justFiltered:o,justCurrentPage:r}=e;if(r||o){if(!s){_("selecting just filtered only works when gridOptions.rowModelType='clientSide'");return}this.getNodesToSelect(o,r).forEach(t)}else this.selectedNodes.forEach(n=>{n&&t(n)}),this.reset(i);this.selectionCtx.reset(),s&&this.groupSelectsChildren&&this.updateGroupsFromChildrenSelections(i),this.dispatchSelectionChanged(i)}getSelectedCounts(e,t){let s=0,i=0;const o=r=>{this.groupSelectsChildren&&r.group||(r.isSelected()?s++:r.selectable&&i++)};return this.getNodesToSelect(e,t).forEach(o),{selectedCount:s,notSelectedCount:i}}getSelectAllState(e,t){const{selectedCount:s,notSelectedCount:i}=this.getSelectedCounts(e,t);return s===0&&i===0?!1:s>0&&i>0?null:s>0}hasNodesToSelect(e=!1,t=!1){return this.getNodesToSelect(e,t).filter(s=>s.selectable).length>0}getNodesToSelect(e=!1,t=!1){this.validateSelectAllType();const s=[];if(t)return this.forEachNodeOnPage(o=>{if(!o.group){s.push(o);return}if(!o.expanded){const r=n=>{var l;s.push(n),(l=n.childrenAfterFilter)!=null&&l.length&&n.childrenAfterFilter.forEach(r)};r(o);return}this.groupSelectsChildren||s.push(o)}),s;const i=this.rowModel;return e?(i.forEachNodeAfterFilter(o=>{s.push(o)}),s):(i.forEachNode(o=>{s.push(o)}),s)}forEachNodeOnPage(e){const t=this.pageBoundsService.getFirstRow(),s=this.pageBoundsService.getLastRow();for(let i=t;i<=s;i++){const o=this.rowModel.getRow(i);o&&e(o)}}selectAllRowNodes(e){if(Lr(this.gos)&&!Is(this.gos))return R("cannot multi select unless selection mode is 'multiRow'");this.validateSelectAllType();const{source:t,justFiltered:s,justCurrentPage:i}=e,o=this.getNodesToSelect(s,i);o.forEach(r=>r.selectThisNode(!0,void 0,t)),this.selectionCtx.setRoot(o[0]??null),this.selectionCtx.setEndRange(W(o)??null),re(this.gos)&&this.groupSelectsChildren&&this.updateGroupsFromChildrenSelections(t),this.dispatchSelectionChanged(t)}getSelectionState(){const e=[];return this.selectedNodes.forEach(t=>{t!=null&&t.id&&e.push(t.id)}),e.length?e:null}setSelectionState(e,t){if(!Array.isArray(e))return _("Invalid selection state. When using client-side row model, the state must conform to `string[]`.");const s=new Set(e),i=[];this.rowModel.forEachNode(o=>{s.has(o.id)&&i.push(o)}),this.setNodesSelected({newValue:!0,nodes:i,source:t})}dispatchSelectionChanged(e){this.eventService.dispatchEvent({type:"selectionChanged",source:e})}validateSelectAllType(){if(!re(this.gos))throw new Error(`selectAll only available when rowModelType='clientSide', ie not ${this.rowModel.getType()}`)}},xw=class extends b{constructor(){super(...arguments),this.beanName="selectableService"}wireBeans(e){this.rowModel=e.rowModel,this.selectionService=e.selectionService}postConstruct(){this.addManagedPropertyListeners(["isRowSelectable","rowSelection"],()=>this.updateSelectable())}updateSelectableAfterGrouping(){this.updateSelectable(!0)}updateSelectable(e=!1){const{gos:t}=this,s=ui(t),i=Gr(t);if(!s||!i)return;const o=It(t),r=re(t)&&o,n=[],l=a=>{if(e&&!a.group)return;if(r&&a.group){const c=a.childrenAfterGroup.some(u=>u.selectable===!0);a.setRowSelectable(c,!0);return}const d=(i==null?void 0:i(a))??!0;a.setRowSelectable(d,!0),!d&&a.isSelected()&&n.push(a)};if(r){const a=this.rowModel;
189new Fo(!1,a.getRootNode()).forEachChangedNodeDepthFirst(l,!0,!0)}else this.rowModel.forEachNode(l);n.length&&this.selectionService.setNodesSelected({nodes:n,newValue:!1,source:"selectableChanged"}),r&&this.selectionService instanceof ic&&this.selectionService.updateGroupsFromChildrenSelections("selectableChanged")}},cl=["asc","desc",null],Aw=class extends b{constructor(){super(...arguments),this.beanName="sortController"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.showRowGroupColsService=e.showRowGroupColsService}progressSort(e,t,s){const i=this.getNextSortDirection(e);this.setSortForColumn(e,i,t,s)}setSortForColumn(e,t,s,i){t!=="asc"&&t!=="desc"&&(t=null);const o=ct(this.gos);let r=[e];if(o&&e.getColDef().showRowGroup){const a=this.funcColsService.getSourceColumnsForGroupColumn(e),d=a==null?void 0:a.filter(c=>c.isSortable());d&&(r=[e,...d])}r.forEach(a=>a.setSort(t,i));const n=(s||this.gos.get("alwaysMultiSort"))&&!this.gos.get("suppressMultiSort"),l=[];if(!n){const a=this.clearSortBarTheseColumns(r,i);l.push(...a)}this.updateSortIndex(e),l.push(...r),this.dispatchSortChangedEvents(i,l)}updateSortIndex(e){var l;const t=ct(this.gos),s=(l=this.showRowGroupColsService)==null?void 0:l.getShowRowGroupCol(e.getId()),i=t&&s||e,o=this.getColumnsWithSortingOrdered();this.columnModel.getAllCols().forEach(a=>a.setSortIndex(null));const r=o.filter(a=>t&&a.getColDef().showRowGroup?!1:a!==i);(i.getSort()?[...r,i]:r).forEach((a,d)=>{a.setSortIndex(d)})}onSortChanged(e,t){this.dispatchSortChangedEvents(e,t)}isSortActive(){const t=this.columnModel.getAllCols().filter(s=>!!s.getSort());return t&&t.length>0}dispatchSortChangedEvents(e,t){const s={type:"sortChanged",source:e};t&&(s.columns=t),this.eventService.dispatchEvent(s)}clearSortBarTheseColumns(e,t){const s=[];return this.columnModel.getAllCols().forEach(i=>{e.includes(i)||(i.getSort()&&s.push(i),i.setSort(void 0,t))}),s}getNextSortDirection(e){let t;if(e.getColDef().sortingOrder?t=e.getColDef().sortingOrder:this.gos.get("sortingOrder")?t=this.gos.get("sortingOrder"):t=cl,!Array.isArray(t)||t.length<=0)return R(`sortingOrder must be an array with at least one element, currently it's ${t}`),null;const s=t.indexOf(e.getSort()),i=s<0,o=s==t.length-1;let r;return i||o?r=t[0]:r=t[s+1],cl.indexOf(r)<0?(R("invalid sort type ",r),null):r}getIndexedSortMap(){let e=this.columnModel.getAllCols().filter(r=>!!r.getSort());if(this.columnModel.isPivotMode()){const r=ct(this.gos);e=e.filter(n=>{var c;const l=!!n.getAggFunc(),a=!n.isPrimary(),d=r?(c=this.showRowGroupColsService)==null?void 0:c.getShowRowGroupCol(n.getId()):n.getColDef().showRowGroup;return l||a||d})}const t=this.funcColsService.getRowGroupColumns().filter(r=>!!r.getSort()),s={};e.forEach((r,n)=>s[r.getId()]=n),e.sort((r,n)=>{const l=r.getSortIndex(),a=n.getSortIndex();if(l!=null&&a!=null)return l-a;if(l==null&&a==null){const d=s[r.getId()],c=s[n.getId()];return d>c?1:-1}else return a==null?-1:1});const i=ct(this.gos)&&!!t.length;i&&(e=[...new Set(e.map(r=>{var n;return((n=this.showRowGroupColsService)==null?void 0:n.getShowRowGroupCol(r.getId()))??r}))]);const o=new Map;return e.forEach((r,n)=>o.set(r,n)),i&&t.forEach(r=>{const n=this.showRowGroupColsService.getShowRowGroupCol(r.getId());o.set(r,o.get(n))}),o}getColumnsWithSortingOrdered(){return[...this.getIndexedSortMap().entries()].sort(([e,t],[s,i])=>t-i).map(([e])=>e)}getSortModel(){return this.getColumnsWithSortingOrdered().filter(e=>e.getSort()).map(e=>({sort:e.getSort(),colId:e.getId()}))}getSortOptions(){return this.getColumnsWithSortingOrdered().filter(e=>e.getSort()).map(e=>({sort:e.getSort(),column:e}))}canColumnDisplayMixedSort(e){const t=ct(this.gos),s=!!e.getColDef().showRowGroup;return t&&s}getDisplaySortForColumn(e){const t=this.funcColsService.getSourceColumnsForGroupColumn(e);if(!this.canColumnDisplayMixedSort(e)||!(t!=null&&t.length))return e.getSort();const i=e.getColDef().field!=null||!!e.getColDef().valueGetter?[e,...t]:t,o=i[0].getSort();return i.every(n=>n.getSort()==o)?o:"mixed"}getDisplaySortIndexForColumn(e){return this.getIndexedSortMap().get(e)}},Tw=class extends b{constructor(){super(...arguments),this.beanName="syncService",this.waitingForColumns=!1}wireBeans(e){this.ctrlsService=e.ctrlsService,this.columnModel=e.columnModel,this.rowModel=e.rowModel}postConstruct(){this.addManagedPropertyListener("columnDefs",e=>this.setColumnDefs(e))}start(){this.ctrlsService.whenReady(this,()=>{const e=this.gos.get("columnDefs");e?this.setColumnsAndData(e):this.waitingForColumns=!0,this.gridReady()})}setColumnsAndData(e){this.columnModel.setColumnDefs(e??[],"gridInitializing"),this.rowModel.start()}gridReady(){this.eventService.dispatchEvent({type:"gridReady"});const e=this.gos.isModuleRegistered("@ag-grid-enterprise/core");this.gos.get("debug")&&ut(`initialised successfully, enterprise = ${e}`)}setColumnDefs(e){const t=this.gos.get("columnDefs");if(t){if(this.waitingForColumns){this.waitingForColumns=!1,this.setColumnsAndData(t);return}this.columnModel.setColumnDefs(t,Zt(e.source))}}},Iw="paste",Lw=class extends b{constructor(){super(...arguments),this.beanName="
189changeDetectionService"}wireBeans(e){this.rowModel=e.rowModel,this.rowRenderer=e.rowRenderer}postConstruct(){re(this.gos)&&(this.clientSideRowModel=this.rowModel),this.addManagedEventListeners({cellValueChanged:this.onCellValueChanged.bind(this)})}onCellValueChanged(e){e.source!==Iw&&this.doChangeDetection(e.node,e.column)}doChangeDetection(e,t){if(this.gos.get("suppressChangeDetection"))return;const s=[e];if(this.clientSideRowModel&&!e.isRowPinned()){const i=this.gos.get("aggregateOnlyChangedColumns"),o=new Fo(i,this.clientSideRowModel.getRootNode());o.addParentNode(e.parent,[t]),this.clientSideRowModel.doAggregate(o),o.forEachChangedNodeDepthFirst(r=>{s.push(r)})}this.rowRenderer.refreshCells({rowNodes:s})}},Gw=class extends b{constructor(){super(...arguments),this.beanName="expressionService",this.expressionToFunctionCache={}}evaluate(e,t){if(typeof e=="string")return this.evaluateExpression(e,t);_("value should be either a string or a function",e)}evaluateExpression(e,t){try{return this.createExpressionFunction(e)(t.value,t.context,t.oldValue,t.newValue,t.value,t.node,t.data,t.colDef,t.rowIndex,t.api,t.getValue,t.column,t.columnGroup)}catch(s){return ut("Processing of the expression failed"),ut("Expression = ",e),ut("Params = ",t),ut("Exception = ",s),null}}createExpressionFunction(e){if(this.expressionToFunctionCache[e])return this.expressionToFunctionCache[e];const t=this.createFunctionBody(e),s=new Function("x, ctx, oldValue, newValue, value, node, data, colDef, rowIndex, api, getValue, column, columnGroup",t);return this.expressionToFunctionCache[e]=s,s}createFunctionBody(e){return e.indexOf("return")>=0?e:"return "+e+";"}},kw=class extends b{constructor(){super(...arguments),this.beanName="valueCache",this.cacheVersion=0}postConstruct(){this.active=this.gos.get("valueCache"),this.neverExpires=this.gos.get("valueCacheNeverExpires")}onDataChanged(){this.neverExpires||this.expire()}expire(){this.cacheVersion++}setValue(e,t,s){this.active&&(e.__cacheVersion!==this.cacheVersion&&(e.__cacheVersion=this.cacheVersion,e.__cacheData={}),e.__cacheData[t]=s)}getValue(e,t){if(!(!this.active||e.__cacheVersion!==this.cacheVersion))return e.__cacheData[t]}},Ow=class extends b{constructor(){super(...arguments),this.beanName="valueService",this.initialised=!1,this.isSsrm=!1}wireBeans(e){this.expressionService=e.expressionService,this.columnModel=e.columnModel,this.valueCache=e.valueCache,this.dataTypeService=e.dataTypeService}postConstruct(){this.initialised||this.init()}init(){this.isSsrm=Ue(this.gos),this.cellExpressions=this.gos.get("enableCellExpressions"),this.isTreeData=this.gos.get("treeData"),this.initialised=!0;const e=s=>this.callColumnCellValueChangedHandler(s),t=qi(this.gos);this.eventService.addEventListener("cellValueChanged",e,t),this.addDestroyFunc(()=>this.eventService.removeEventListener("cellValueChanged",e,t)),this.addManagedPropertyListener("treeData",s=>this.isTreeData=s.currentValue)}getValueForDisplay(e,t){const s=t.leafGroup&&this.columnModel.isPivotMode(),i=t.group&&t.expanded&&!t.footer&&!s,o=this.gos.get("groupSuppressBlankHeader");if(!i||o)return this.getValue(e,t);let r=!1;const n=this.gos.get("groupTotalRow")??this.gos.get("groupIncludeFooter");typeof n!="function"?r=!!n:r=!!(this.gos.getCallback("groupTotalRow")??this.gos.getCallback("groupIncludeFooter"))({node:this});const l=i&&r;return this.getValue(e,t,!1,l)}getValue(e,t,s=!1,i=!1){if(this.initialised||this.init(),!t)return;const o=e.getColDef(),r=o.field,n=e.getColId(),l=t.data;let a;const d=t.groupData&&t.groupData[n]!==void 0,c=!i&&t.aggData&&t.aggData[n]!==void 0,u=this.isSsrm&&i&&!!e.getColDef().aggFunc,h=this.isSsrm&&t.footer&&t.field&&(e.getColDef().showRowGroup===!0||e.getColDef().showRowGroup===t.field);if(s&&o.filterValueGetter?a=this.executeFilterValueGetter(o.filterValueGetter,l,e,t):this.isTreeData&&c?a=t.aggData[n]:this.isTreeData&&o.valueGetter?a=this.executeValueGetter(o.valueGetter,l,e,t):this.isTreeData&&r&&l?a=si(l,r,e.isFieldContainsDots()):d?a=t.groupData[n]:c?a=t.aggData[n]:o.valueGetter?a=this.executeValueGetter(o.valueGetter,l,e,t):h?a=si(l,t.field,e.isFieldContainsDots()):r&&l&&!u&&(a=si(l,r,e.isFieldContainsDots())),this.cellExpressions&&typeof a=="str
189ing"&&a.indexOf("=")===0){const p=a.substring(1);a=this.executeValueGetter(p,l,e,t)}if(a==null){const p=this.getOpenedGroup(t,e);if(p!=null)return p}return a}parseValue(e,t,s,i){const o=e.getColDef(),r=o.valueParser;if(E(r)){const n=this.gos.addGridCommonParams({node:t,data:t==null?void 0:t.data,oldValue:i,newValue:s,colDef:o,column:e});return typeof r=="function"?r(n):this.expressionService.evaluate(r,n)}return s}getDeleteValue(e,t){return E(e.getColDef().valueParser)?this.parseValue(e,t,"",this.getValueForDisplay(e,t))??null:null}formatValue(e,t,s,i,o=!0){let r=null,n;const l=e.getColDef();if(i?n=i:o&&(n=l.valueFormatter),n){const a=this.gos.addGridCommonParams({value:s,node:t,data:t?t.data:null,colDef:l,column:e});typeof n=="function"?r=n(a):r=this.expressionService.evaluate(n,a)}else if(l.refData)return l.refData[s]||"";return r==null&&Array.isArray(s)&&(r=s.join(", ")),r}getOpenedGroup(e,t){if(!this.gos.get("showOpenedGroup")||!t.getColDef().showRowGroup)return;const i=t.getColDef().showRowGroup;let o=e.parent;for(;o!=null;){if(o.rowGroupColumn&&(i===!0||i===o.rowGroupColumn.getColId()))return o.key;o=o.parent}}setValue(e,t,s,i){const o=this.columnModel.getColDefCol(t);if(!e||!o)return!1;z(e.data)&&(e.data={});const{field:r,valueSetter:n}=o.getColDef();if(z(r)&&z(n))return R("you need either field or valueSetter set on colDef for editing to work"),!1;if(this.dataTypeService&&!this.dataTypeService.checkType(o,s))return R("Data type of the new value does not match the cell data type of the column"),!1;const l=this.gos.addGridCommonParams({node:e,data:e.data,oldValue:this.getValue(o,e),newValue:s,colDef:o.getColDef(),column:o});l.newValue=s;let a;if(E(n)?typeof n=="function"?a=n(l):a=this.expressionService.evaluate(n,l):a=this.setValueUsingField(e.data,r,s,o.isFieldContainsDots()),a===void 0&&(a=!0),!a)return!1;e.resetQuickFilterAggregateText(),this.valueCache.onDataChanged();const d=this.getValue(o,e);return this.eventService.dispatchEvent({type:"cellValueChanged",event:null,rowIndex:e.rowIndex,rowPinned:e.rowPinned,column:l.column,colDef:l.colDef,data:e.data,node:e,oldValue:l.oldValue,newValue:d,value:d,source:i}),!0}callColumnCellValueChangedHandler(e){const t=e.colDef.onCellValueChanged;typeof t=="function"&&this.getFrameworkOverrides().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,s,i){if(!t)return!1;let o=!1;if(!i)o=e[t]===s,o||(e[t]=s);else{const r=t.split(".");let n=e;for(;r.length>0&&n;){const l=r.shift();r.length===0?(o=n[l]===s,o||(n[l]=s)):n=n[l]}}return!o}executeFilterValueGetter(e,t,s,i){const o=this.gos.addGridCommonParams({data:t,node:i,column:s,colDef:s.getColDef(),getValue:this.getValueCallback.bind(this,i)});return typeof e=="function"?e(o):this.expressionService.evaluate(e,o)}executeValueGetter(e,t,s,i){const o=s.getColId(),r=this.valueCache.getValue(i,o);if(r!==void 0)return r;const n=this.gos.addGridCommonParams({data:t,node:i,column:s,colDef:s.getColDef(),getValue:this.getValueCallback.bind(this,i)});let l;return typeof e=="function"?l=e(n):l=this.expressionService.evaluate(e,n),this.valueCache.setValue(i,o,l),l}getValueCallback(e,t){const s=this.columnModel.getColDefCol(t);return s?this.getValue(s,e):null}getKeyForNode(e,t){const s=this.getValue(e,t),i=e.getColDef().keyCreator;let o=s;if(i){const r=this.gos.addGridCommonParams({value:s,colDef:e.getColDef(),column:e,node:t,data:t.data});o=i(r)}return typeof o=="string"||o==null||(o=String(o),o==="[object Object]"&&R("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 (se AG Grid docs) or b) to toString() on the object to return a key")),o}},gn=class Xt{static applyGlobalGridOptions(t){if(!Xt.gridOptions)return t;let s={};return Ee(s,Xt.gridOptions,!0,!0),Xt.mergeStrategy==="deep"?Ee(s,t,!0,!0):s={...s,...t},Xt.gridOptions.context&&(s.context=Xt.gridOptions.context),t.context&&(Xt.mergeStrategy==="deep"&&s.context&&Ee(t.context,s.context,!0,!0),s.context=t.context),s}};gn.gridOptions=void 0;gn.mergeStrategy="shallow";var oc=gn;function Nw(e){var t;return(t=oc.gridOptions)==null?void 0:t[e]}function KD(e,t,s){if(!t)return _("No gridOptions provided to createGrid"),{};const i=new rc().create(e,t,o=>{const r=new hC(e);o.createBean(r)},void 0,s);if(!Object.isFrozen(t)&&!(s!=null&&s.frameworkOverrides)){const o="https://ag-grid.com/javascript-data-grid/grid-interface/#grid-api";
189Object.defineProperty(t,"api",{get:()=>{_(`gridOptions.api is no longer supported. See ${o}.`)},configurable:!0})}return i}var Bw=1,rc=class{create(e,t,s,i,o){const r=oc.applyGlobalGridOptions(t),n=fw(r),l=n.gridId??String(Bw++),a=this.getRegisteredModules(o,l),d=this.createBeansList(n.rowModelType,a,l),c=this.createProvidedBeans(e,n,o);if(!d){_("Failed to create grid.");return}const u={providedBeanInstances:c,beanClasses:d,gridId:l,beanInitComparator:eC,beanDestroyComparator:tC,derivedBeans:[Km]},h=new Zh(u);return this.registerModuleUserComponents(h,a),this.registerControllers(h,a),this.registerModuleApiFunctions(h,a),s(h),h.getBean("syncService").start(),i&&i(h),h.getBean("gridApi")}registerControllers(e,t){const s=e.getBean("ctrlsFactory");t.forEach(i=>{i.controllers&&i.controllers.forEach(o=>s.register(o))})}getRegisteredModules(e,t){const s=e?e.modules:null,i=Dt.__getRegisteredModules(t),o=[],r={},n=(l,a,d)=>{(u=>{r[u.moduleName]||(r[u.moduleName]=!0,o.push(u),Dt.__register(u,l,d))})(a),a.dependantModules&&a.dependantModules.forEach(u=>n(l,u,d))};return n(!!(s!=null&&s.length)||!Dt.__isPackageBased(),hw,void 0),s&&s.forEach(l=>n(!0,l,t)),i&&i.forEach(l=>n(!Dt.__isPackageBased(),l,void 0)),o}registerModuleUserComponents(e,t){const s=this.extractModuleEntity(t,o=>o.userComponents?o.userComponents:[]),i=e.getBean("userComponentRegistry");s.forEach(({name:o,classImp:r,params:n})=>{i.registerDefaultComponent(o,r,n)})}registerModuleApiFunctions(e,t){const s=e.getBean("apiFunctionService");t.forEach(i=>{const o=i.apiFunctions;o&&Object.keys(o).forEach(n=>{s==null||s.addFunction(n,o[n])})})}createProvidedBeans(e,t,s){let i=s?s.frameworkOverrides:null;z(i)&&(i=new Ud);const o={gridOptions:t,eGridDiv:e,globalEventListener:s?s.globalEventListener:null,globalSyncEventListener:s?s.globalSyncEventListener:null,frameworkOverrides:i};return s&&s.providedBeanInstances&&Object.assign(o,s.providedBeanInstances),o}createBeansList(e="clientSide",t,s){const i=t.filter(a=>!a.rowModel||a.rowModel===e),o={clientSide:"@ag-grid-community/client-side-row-model",infinite:"@ag-grid-community/infinite-row-model",serverSide:"@ag-grid-enterprise/server-side-row-model",viewport:"@ag-grid-enterprise/viewport-row-model"};if(!o[e]){_("Could not find row model for rowModelType = ",e);return}if(!Dt.__assertRegistered(o[e],`rowModelType = '${e}'`,s))return;const r=[nC,oC,Cw,pw,_m,Ih,Xm,Zm,Hf,Ba,Mw,Bf,vw,Am,tp,Bu,dC,mw,Hm,ic,Pu,hg,yw,ww,Dm,Gw,Fu,Nf,kw,Ow,Em,Vf,Jh,cC,Of,lC,zm,km,kf,Aw,Fw,bw,xw,Lw,Wf,$m,Ew,Dw,iC,uC,rC,sC,Tw,Pw,kd,Sw,Rw,zf,Du,jm,xu,Eu,qm,Ym,Nu,Mu,ku,Qm,Ou,Su],n=this.extractModuleEntity(i,a=>a.beans?a.beans:[]);r.push(...n);const l=[];return r.forEach(a=>{l.indexOf(a)<0&&l.push(a)}),l}extractModuleEntity(e,t){return[].concat(...e.map(t))}},nc=class extends b{constructor(){super(...arguments),this.beanName="rowModelHelperService"}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){const e=this.rowModel;switch(e.getType()){case"clientSide":this.clientSideRowModel=e;break;case"infinite":this.infiniteRowModel=e;break;case"serverSide":this.serverSideRowModel=e;break}}getClientSideRowModel(){return this.clientSideRowModel}getInfiniteRowModel(){return this.infiniteRowModel}getServerSideRowModel(){return this.serverSideRowModel}};function Vw(e){e.expansionService.expandAll(!0)}function Hw(e){e.expansionService.expandAll(!1)}function Ww(e){var i,o;const t=(i=e.rowModelHelperService)==null?void 0:i.getClientSideRowModel(),s=(o=e.rowModelHelperService)==null?void 0:o.getServerSideRowModel();t?t.onRowHeightChanged():s&&s.onRowHeightChanged()}function zw(e,t,s){var r,n;const i=(r=e.rowModelHelperService)==null?void 0:r.getServerSideRowModel();if(i){if(e.funcColsService.isRowGroupEmpty()){i.setRowCount(t,s);return}_("setRowCount cannot be used while using row grouping.");return}const o=(n=e.rowModelHelperService)==null?void 0:n.getInfiniteRowModel();if(o){o.setRowCount(t,s);return}}function Uw(e){var t;return((t=e.rowNodeBlockLoader)==null?void 0:t.getBlockState())??{}}function _w(e){return e.rowModel.isLastRowIndexKnown()}var lc={version:V,moduleName:"@ag-grid-community/csrm-ssrm-shared-api",apiFunctions:{expandAll:Vw,collapseAll:Hw,onRowHeightChanged:Ww}},Kw={version:V,moduleName:"@ag-grid-community/ssrm-infinite-shared-api",apiFunctions:{setRowCount:zw,getCacheBlockState:Uw,isLastRowIndexKnown:_w}},$w=class{wrap(e,t,s=[],i){const o=this.createWrapper(e,i);return t.forEach(r=>{this.createMethod(o,r,!0)}
189),s.forEach(r=>{this.createMethod(o,r,!1)}),o}createMethod(e,t,s){e.addMethod(t,this.createMethodProxy(e,t,s))}createMethodProxy(e,t,s){return function(){return e.hasMethod(t)?e.callMethod(t,arguments):(s&&R("Framework component is missing the method "+t+"()"),null)}}},Hs=typeof global>"u"?{}:global;Hs.HTMLElement=typeof HTMLElement>"u"?{}:HTMLElement;Hs.HTMLButtonElement=typeof HTMLButtonElement>"u"?{}:HTMLButtonElement;Hs.HTMLSelectElement=typeof HTMLSelectElement>"u"?{}:HTMLSelectElement;Hs.HTMLInputElement=typeof HTMLInputElement>"u"?{}:HTMLInputElement;Hs.Node=typeof Node>"u"?{}:Node;Hs.MouseEvent=typeof MouseEvent>"u"?{}:MouseEvent;var jw=class{constructor(){this.ieCompatibility=!1}init(){this.ieCompatibility=this.md5("hello")!="5d41402abc4b2a76b9719d911017c592"}md5cycle(e,t){let s=e[0],i=e[1],o=e[2],r=e[3];s=this.ff(s,i,o,r,t[0],7,-680876936),r=this.ff(r,s,i,o,t[1],12,-389564586),o=this.ff(o,r,s,i,t[2],17,606105819),i=this.ff(i,o,r,s,t[3],22,-1044525330),s=this.ff(s,i,o,r,t[4],7,-176418897),r=this.ff(r,s,i,o,t[5],12,1200080426),o=this.ff(o,r,s,i,t[6],17,-1473231341),i=this.ff(i,o,r,s,t[7],22,-45705983),s=this.ff(s,i,o,r,t[8],7,1770035416),r=this.ff(r,s,i,o,t[9],12,-1958414417),o=this.ff(o,r,s,i,t[10],17,-42063),i=this.ff(i,o,r,s,t[11],22,-1990404162),s=this.ff(s,i,o,r,t[12],7,1804603682),r=this.ff(r,s,i,o,t[13],12,-40341101),o=this.ff(o,r,s,i,t[14],17,-1502002290),i=this.ff(i,o,r,s,t[15],22,1236535329),s=this.gg(s,i,o,r,t[1],5,-165796510),r=this.gg(r,s,i,o,t[6],9,-1069501632),o=this.gg(o,r,s,i,t[11],14,643717713),i=this.gg(i,o,r,s,t[0],20,-373897302),s=this.gg(s,i,o,r,t[5],5,-701558691),r=this.gg(r,s,i,o,t[10],9,38016083),o=this.gg(o,r,s,i,t[15],14,-660478335),i=this.gg(i,o,r,s,t[4],20,-405537848),s=this.gg(s,i,o,r,t[9],5,568446438),r=this.gg(r,s,i,o,t[14],9,-1019803690),o=this.gg(o,r,s,i,t[3],14,-187363961),i=this.gg(i,o,r,s,t[8],20,1163531501),s=this.gg(s,i,o,r,t[13],5,-1444681467),r
vendor: 8,939 bytes, line 189
189=this.gg(r,s,i,o,t[2],9,-51403784),o=this.gg(o,r,s,i,t[7],14,1735328473),i=this.gg(i,o,r,s,t[12],20,-1926607734),s=this.hh(s,i,o,r,t[5],4,-378558),r=this.hh(r,s,i,o,t[8],11,-2022574463),o=this.hh(o,r,s,i,t[11],16,1839030562),i=this.hh(i,o,r,s,t[14],23,-35309556),s=this.hh(s,i,o,r,t[1],4,-1530992060),r=this.hh(r,s,i,o,t[4],11,1272893353),o=this.hh(o,r,s,i,t[7],16,-155497632),i=this.hh(i,o,r,s,t[10],23,-1094730640),s=this.hh(s,i,o,r,t[13],4,681279174),r=this.hh(r,s,i,o,t[0],11,-358537222),o=this.hh(o,r,s,i,t[3],16,-722521979),i=this.hh(i,o,r,s,t[6],23,76029189),s=this.hh(s,i,o,r,t[9],4,-640364487),r=this.hh(r,s,i,o,t[12],11,-421815835),o=this.hh(o,r,s,i,t[15],16,530742520),i=this.hh(i,o,r,s,t[2],23,-995338651),s=this.ii(s,i,o,r,t[0],6,-198630844),r=this.ii(r,s,i,o,t[7],10,1126891415),o=this.ii(o,r,s,i,t[14],15,-1416354905),i=this.ii(i,o,r,s,t[5],21,-57434055),s=this.ii(s,i,o,r,t[12],6,1700485571),r=this.ii(r,s,i,o,t[3],10,-1894986606),o=this.ii(o,r,s,i,t[10],15,-1051523),i=this.ii(i,o,r,s,t[1],21,-2054922799),s=this.ii(s,i,o,r,t[8],6,1873313359),r=this.ii(r,s,i,o,t[15],10,-30611744),o=this.ii(o,r,s,i,t[6],15,-1560198380),i=this.ii(i,o,r,s,t[13],21,1309151649),s=this.ii(s,i,o,r,t[4],6,-145523070),r=this.ii(r,s,i,o,t[11],10,-1120210379),o=this.ii(o,r,s,i,t[2],15,718787259),i=this.ii(i,o,r,s,t[9],21,-343485551),e[0]=this.add32(s,e[0]),e[1]=this.add32(i,e[1]),e[2]=this.add32(o,e[2]),e[3]=this.add32(r,e[3])}cmn(e,t,s,i,o,r){return t=this.add32(this.add32(t,e),this.add32(i,r)),this.add32(t<<o|t>>>32-o,s)}ff(e,t,s,i,o,r,n){return this.cmn(t&s|~t&i,e,t,o,r,n)}gg(e,t,s,i,o,r,n){return this.cmn(t&i|s&~i,e,t,o,r,n)}hh(e,t,s,i,o,r,n){return this.cmn(t^s^i,e,t,o,r,n)}ii(e,t,s,i,o,r,n){return this.cmn(s^(t|~i),e,t,o,r,n)}md51(e){const t=e.length,s=[1732584193,-271733879,-1732584194,271733878];let i;for(i=64;i<=e.length;i+=64)this.md5cycle(s,this.md5blk(e.substring(i-64,i)));e=e.substring(i-64);const o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(i=0;i<e.length;i++)o[i>>2]|=e.charCodeAt(i)<<(i%4<<3);if(o[i>>2]|=128<<(i%4<<3),i>55)for(this.md5cycle(s,o),i=0;i<16;i++)o[i]=0;return o[14]=t*8,this.md5cycle(s,o),s}md5blk(e){const t=[];for(let s=0;s<64;s+=4)t[s>>2]=e.charCodeAt(s)+(e.charCodeAt(s+1)<<8)+(e.charCodeAt(s+2)<<16)+(e.charCodeAt(s+3)<<24);return t}rhex(e){const t="0123456789abcdef".split("");let s="",i=0;for(;i<4;i++)s+=t[e>>i*8+4&15]+t[e>>i*8&15];return s}hex(e){for(let t=0;t<e.length;t++)e[t]=this.rhex(e[t]);return e.join("")}md5(e){return this.hex(this.md51(e))}add32(e,t){return this.ieCompatibility?this.add32Compat(e,t):this.add32Std(e,t)}add32Std(e,t){return e+t&4294967295}add32Compat(e,t){const s=(e&65535)+(t&65535);return(e>>16)+(t>>16)+(s>>16)<<16|s&65535}},ki={"01":"GRID","02":"CHARTS","0102":"BOTH"},ul="https://ag-grid.com/licensing/",ac=class $e{constructor(t){this.watermarkMessage=void 0,this.totalMessageLength=124,this.document=t,this.md5=new jw,this.md5.init()}validateLicense(){const t=this.getLicenseDetails($e.licenseKey),s=`AG Grid ${t.currentLicenseType==="BOTH"?"and AG Charts ":""}Enterprise`,i=t.suppliedLicenseType===void 0?"":`AG ${t.suppliedLicenseType==="BOTH"?"Grid and AG Charts":t.suppliedLicenseType==="GRID"?"Grid":"Charts"} Enterprise`;if(t.missing)(!this.isWebsiteUrl()||this.isForceWatermark())&&this.outputMissingLicenseKey(s);else if(t.expired){const o=$e.getGridReleaseDate(),r=$e.formatDate(o);this.outputExpiredKey(t.expiry,r,s,i)}else t.valid?t.isTrial&&t.trialExpired&&this.outputExpiredTrialKey(t.expiry,s,i):this.outputInvalidLicenseKey(!!t.incorrectLicenseType,s,i)}static extractExpiry(t){const s=t.substring(t.lastIndexOf("_")+1,t.length);return new Date(parseInt($e.decode(s),10))}static extractLicenseComponents(t){let s=t.replace(/[\u200B-\u200D\uFEFF]/g,"");if(s=s.replace(/\r?\n|\r/g,""),t.length<=32)return{md5:null,license:t,version:null,isTrial:null};const i=s.length-32,o=s.substring(i),r=s.substring(0,i),[n,l,a]=$e.extractBracketedInformation(s);return{md5:o,license:r,version:n,isTrial:l,type:a}}getLicenseDetails(t){const s=$e.chartsLicenseManager?"BOTH":"GRID";if(Re(t))return{licenseKey:t,valid:!1,missing:!0,currentLicenseType:s};const i=$e.getGridReleaseDate(),{md5:o,license:r,version:n,isTrial:l,type:a}=$e.extractLicenseComponents(t);let d=o===this.md5.md5(r)&&t.indexOf("For_Trialing_ag-Grid_Only")===-1,c,u,h=null,p=!1,g;function f(){c=h<new Date,u=void 0}if(d&&(h=$e.extractExpiry(r),d=!isNaN(h.getTime()),d))switch(u=i>h,n){case"legacy":case"2":{l&&f();break}case"3":Re(a)?d=!1:(g=a,a!==ki["01"]&&a!==ki["0102"]||s==="BOTH"&&g!=="BOTH"?(d=!1,p=!0):l&&f())}return d?{licenseKey:t,valid:d,expiry:$e.formatDate(h),expired:u,version:n,isTrial:l,trialExpired:c,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}:{licenseKey:t,valid:d,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}}isDisplayWatermark(){return this.isForceWatermark()||!this.isLocalhost()&&!this.isWebsiteUrl()&&!Re(this.watermarkMessage)}getWatermarkMessage(){return this.watermarkMessage||""}getHostname(){const s=(this.document.defaultView||window).location,{hostname:i=""}=s;return i}isForceWatermark(){const s=(this.document.defaultView||window).location,{pathname:i}=s;return i?i.indexOf("forceWatermark")!==-1:!1}isWebsiteUrl(){return this.getHostname().match(/^((?:[\w-]+\.)?ag-grid\.com)$/)!==null}isLocalhost(){return this.getHostname().match(/^(?:127\.0\.0\.1|localhost)$/)!==null}static formatDate(t){const s=["January","February","March","April","May","June","July","August","September","October","November","December"],i=t.getDate(),o=t.getMonth(),r=t.getFullYear();return i+" "+s[o]+" "+r}static getGridReleaseDate(){return new Date(parseInt($e.decode($e.RELEASE_INFORMATION),10))}static decode(t){const s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let i="",o,r,n,l,a,d,c,u=0;const h=t.replace(/[^A-Za-z0-9+/=]/g,"");for(;u<h.length;)l=s.indexOf(h.charAt(u++)),a=s.indexOf(h.charAt(u++)),d=s.indexOf(h.charAt(u++)),c=s.indexOf(h.charAt(u++)),o=l<<2|a>>4,r=(a&15)<<4|d>>2,n=(d&3)<<6|c,i=i+String.fromCharCode(o),d!=64&&(i=i+String.fromCharCode(r)),c!=64&&(i=i+String.fromCharCode(n));return i=$e.utf8_decode(i),i}static utf8_decode(t){t=t.replace(/rn/g,"n");let s="";for(let i=0;i<t.length;i++){const o=t.charCodeAt(i);o<128?s+=String.fromCharCode(o):o>127&&o<2048?(s+=String.fromCharCode(o>>6|192),s+=String.fromCharCode(o&63|128)):(s+=String.fromCharCode(o>>12|224),s+=String.fromCharCode(o>>6&63|128),s+=String.fromCharCode(o&63|128))}return s}static setChartsLicenseManager(t){this.chartsLicenseManager=t}static setLicenseKey(t){this.licenseKey=t,this.chartsLicenseManager&&this.chartsLicenseManager.setLicenseKey(t,!0)}static extractBracketedInformation(t){if(!t.includes("["))return["legacy",!1,void 0];const s=t.match(/\[(.*?)\]/g).map(l=>l.replace("[","").replace("]",""));if(!s||s.length===0)return["legacy",!1,void 0];const i=s.filter(l=>l==="TRIAL").length===1,o=s.filter(l=>l.indexOf("v")===0)[0],r=o?o.replace("v",""):"legacy",n=ki[s.filter(l=>ki[l])[0]];return[r,i,n]}centerPadAndOutput(t){const s=this.totalMessageLength-t.length;console.error(t.padStart(s/2+t.length,"*").padEnd(this.totalMessageLength,"*"))}padAndOutput(t,s="*",i=""){console.error(t.padEnd(this.totalMessageLength-i.length,s)+i)}outputInvalidLicenseKey(t,s,i){t?(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Incompatible License Key "),this.padAndOutput(`* Your license key is for ${i} only and does not cover you for ${s}.`," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${ul}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")):(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Invalid License Key "),this.padAndOutput("* Your license key is not valid."," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${ul}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")),this.watermarkMessage="Invalid License"}outputExpiredTrialKey(t,s,i){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Trial Period Expired. "),this.padAndOutput(`* Your trial only license for ${i} expired on ${t}.`," ","*"),this.padAndOutput("* Please email [email protected] to purchase a license."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="Trial Period Expired"}outputMissingLicenseKey(t){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(" License Key Not Found "),this.padAndOutput(`* All ${t} features are unlocked for trial.`," ","*"),this.padAndOutput("* If you want to hide the watermark please email [email protected] for a trial license key."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="For Trial Use Only"}outputExpiredKey(t,s,i,o){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${i}
189 License `),this.centerPadAndOutput(" Incompatible Software Version "),this.padAndOutput(`* Your license key works with versions of ${o} released before ${t}.`," ","*"),this.padAndOutput(`* The version you are trying to use was released on ${s}.`," ","*"),this.padAndOutput("* Please contact [email protected] to renew your license key."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="License Expired"}};ac.RELEASE_INFORMATION="MTczMDI4MjY0MzYwNg==";var Oi=ac,qw=class extends O{constructor(){super(`<div class="ag-watermark"> 190 <div data-ref="eLicenseTextRef" class="ag-watermark-text"></div> 191 </div>`),this.eLicenseTextRef=P}wireBeans(e){this.licenseManager=e.licenseManager}postConstruct(){const e=this.shouldDisplayWatermark();this.setDisplayed(e),e&&(this.eLicenseTextRef.innerText=this.licenseManager.getWatermarkMessage(),window.setTimeout(()=>this.addCssClass("ag-opacity-zero"),0),window.setTimeout(()=>this.setDisplayed(!1),5e3))}shouldDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}},Yw={selector:"AG-WATERMARK",component:qw},Qw=class extends b{constructor(){super(...arguments),this.beanName="licenseManager"}postConstruct(){this.validateLicense()}validateLicense(){this.licenseManager=new Oi(le(this.gos)),this.licenseManager.validateLicense()}static getLicenseDetails(e){return new Oi(null).getLicenseDetails(e)}getWatermarkSelector(){return Yw}isDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}getWatermarkMessage(){return this.licenseManager.getWatermarkMessage()}static setLicenseKey(e){Oi.setLicenseKey(e)}static setChartsLicenseManager(e){Oi.setChartsLicenseManager(e)}},Xw="32.3.2",fn=class extends O{constructor(){super(),this.setTemplate("<div></div>")}init(e){this.params=e,this.cssClassPrefix=this.params.cssClassPrefix??"ag-menu-option",this.addIcon(),this.addName(),this.addShortcut(),this.addSubMenu()}configureDefaults(){return!0}addIcon(){if(this.params.isCompact)return;const e=Xe(`<span data-ref="eIcon" class="${this.getClassName("part")} ${this.getClassName("icon")}" role="presentation"></span>`),{checked:t,icon:s}=this.params;t?e.appendChild(N("check",this.gos)):s&&(Co(s)?e.appendChild(s):typeof s=="string"?e.innerHTML=s:R("menu item icon must be DOM node or string")),this.getGui().appendChild(e)}addName(){const e=Xe(`<span data-ref="eName" class="${this.getClassName("part")} ${this.getClassName("text")}">${this.params.name||""}</span>`);this.getGui().appendChild(e)}addShortcut(){if(this.params.isCompact)return;const e=Xe(`<span data-ref="eShortcut" class="${this.getClassName("part")} ${this.getClassName("shortcut")}">${this.params.shortcut||""}</span>`);this.getGui().appendChild(e)}addSubMenu(){const e=Xe(`<span data-ref="ePopupPointer" class="${this.getClassName("part")} ${this.getClassName("popup-pointer")}"></span>`),t=this.getGui();if(this.params.subMenu){const s=this.gos.get("enableRtl")?"smallLeft":"smallRight";Ft(t,!1),e.appendChild(N(s,this.gos))}t.appendChild(e)}getClassName(e){return`${this.cssClassPrefix}-${e}`}destroy(){super.destroy()}},ms={version:Xw,moduleName:U.EnterpriseCoreModule,beans:[Qw],userComponents:[{name:"agMenuItem",classImp:fn}]};function Zw(e){return`<div class="ag-virtual-list-viewport ag-${e}-virtual-list-viewport" role="presentation"> 192 <div class="ag-virtual-list-container ag-${e}-virtual-list-container" data-ref="eContainer"></div> 193 </div>`}var mn=class extends fs{constructor(e){super(Zw((e==null?void 0:e.cssIdentifier)||"default")),this.renderedRows=new Map,this.rowHeight=20,this.pageSize=-1,this.isScrolling=!1,this.isHeightFromTheme=!0,this.eContainer=P,this.awaitStableCallbacks=[];const{cssIdentifier:t="default",ariaRole:s="listbox",listName:i}=e||{};this.cssIdentifier=t,this.ariaRole=s,this.listName=i}wireBeans(e){this.resizeObserverService=e.resizeObserverService,this.animationFrameService=e.animationFrameService,this.environment=e.environment}postConstruct(){this.addScrollListener(),this.rowHeight=this.getItemHeight(),this.addResizeObserver(),this.initialiseTabGuard({onFocusIn:e=>this.onFocusIn(e),onFocusOut:e=>this.onFocusOut(e),focusInnerElement:e=>this.focusInnerElement(e),onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e)}),this.setAriaProperties(),this.addManagedEventListeners({gridStylesChanged:this.onGridStylesChanged.bind(this)})}onGridStylesChanged(e){e.listItemHeightChanged&&(this.rowHeight=this.getItemHeight(),this.refresh())}setAriaProperties(){const t=this.localeService.getLocaleTextFunc()("ariaDefaultListName",this.listName||"List"),s=this.eContainer;he(s,this.ariaRole),ze(s,t)}addResizeObserver(){const e=()=>this.animationFrameService.requestAnimationFrame(()=>this.drawVirtualRows()),t=this.resizeObserverService.observeResize(this.getGui(),e);this.addDestroyFunc(t)}focusInnerElement(e){this.focusRow(e?this.model.getRowCount()-1:0)}onFocusIn(e){const t=e.target;t.classList.contains("ag-virtual-list-item")&&(this.lastFocusedRowIndex=Ku(t)-1)}onFocusOut(e){this.getFocusableElement().contains(e.relatedTarget)||(this.lastFocusedRowIndex=null)}handleKeyDown(e){switch(e.key){case S.UP:case S.DOWN:this.navigate(e.key===S.UP)&&e.preventDefault();break;case S.PAGE_HOME:case S.PAGE_END:case S.PAGE_UP:case S.PAGE_DOWN:this.navigateToPage(e.key)!==null&&e.preventDefault();break}}onTabKeyDown(e){Rt(e),this.forceFocusOutOfContainer(e.shiftKey)}navigate(e){if(this.lastFocusedRowIndex==null)return!1;const t=this.lastFocusedRowIndex+(e?-1:1);return t<0||t>=this.model.getRowCount()?!1:(this.focusRow(t),!0)}navigateToPage(e,t="focused"){let s=!1;t==="focused"&&(t=this.getLastFocusedRow(),s=!0);const i=this.model.getRowCount()-1;let o=-1;return e===S.PAGE_HOME?o=0:e===S.PAGE_END?o=i:e===S.PAGE_DOWN?o=Math.min(t+this.pageSize,i):e===S.PAGE_UP&&(o=Math.max(t-this.pageSize,0)),o===-1?null:(s?this.focusRow(o):this.ensureIndexVisible(o),o)}getLastFocusedRow(){return this.lastFocusedRowIndex}focusRow(e){this.isScrolling||(this.isScrolling=!0,this.ensureIndexVisible(e),this.animationFrameService.requestAnimationFrame(()=>{if(this.isScrolling=!1,!this.isAlive())return;const t=this.renderedRows.get(e);t&&t.eDiv.focus()}))}getComponentAt(e){const t=this.renderedRows.get(e);return t&&t.rowComponent}forEachRenderedRow(e){this.renderedRows.forEach((t,s)=>e(t.rowComponent,s))}getItemHeight(){return this.isHeightFromTheme?this.environment.getDefaultListItemHeight():this.rowHeight}ensureIndexVisible(e,t=!0){const s=this.model.getRowCount();if(typeof e!="number"||e<0||e>=s)return R("invalid row index for ensureIndexVisible: ",e),!1;const i=e*this.rowHeight,o=i+this.rowHeight,r=this.getGui(),n=r.scrollTop,l=r.offsetHeight,a=n+l,d=t?0:this.rowHeight,c=n>i+d,u=a<o-d;if(c)return r.scrollTop=i,!0;if(u){const h=o-l;return r.scrollTop=h,!0}return!1}setComponentCreator(e){this.componentCreator=e}setComponentUpdater(e){this.componentUpdater=e}getRowHeight(){return this.rowHeight}getScrollTop(){return this.getGui().scrollTop}setRowHeight(e){this.isHeightFromTheme=!1,this.rowHeight=e,this.refresh()}refresh(e){if(this.model==null||!this.isAlive())return;const t=this.model.getRowCount();this.eContainer.style.height=`${t*this.rowHeight}px`,this.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();jl(()=>this.eContainer.clientHeight>=t*this.rowHeight,()=>{const s=this.awaitStableCallbacks;
193this.awaitStableCallbacks=[],s.forEach(i=>i())})}canSoftRefresh(e){return!!(e&&this.renderedRows.size&&typeof this.model.areRowsEqual=="function"&&this.componentUpdater)}clearVirtualRows(){this.renderedRows.forEach((e,t)=>this.removeRow(t))}drawVirtualRows(e){if(!this.isAlive()||!this.model)return;const t=this.getGui(),s=t.scrollTop,i=s+t.offsetHeight,o=Math.floor(s/this.rowHeight),r=Math.floor(i/this.rowHeight);this.pageSize=Math.floor((i-s)/this.rowHeight),this.ensureRowsRendered(o,r,e)}ensureRowsRendered(e,t,s){this.renderedRows.forEach((i,o)=>{(o<e||o>t)&&o!==this.lastFocusedRowIndex&&this.removeRow(o)}),s&&this.refreshRows();for(let i=e;i<=t;i++)this.renderedRows.has(i)||i<this.model.getRowCount()&&this.insertRow(i)}insertRow(e){const t=this.model.getRow(e),s=document.createElement("div");s.classList.add("ag-virtual-list-item",`ag-${this.cssIdentifier}-virtual-list-item`),he(s,this.ariaRole==="tree"?"treeitem":"option"),Ur(s,this.model.getRowCount()),_r(s,e+1),s.setAttribute("tabindex","-1"),s.style.height=`${this.rowHeight}px`,s.style.top=`${this.rowHeight*e}px`;const i=this.componentCreator(t,s);i.addGuiEventListener("focusin",()=>this.lastFocusedRowIndex=e),s.appendChild(i.getGui()),this.renderedRows.has(e-1)?this.renderedRows.get(e-1).eDiv.insertAdjacentElement("afterend",s):this.renderedRows.has(e+1)?this.renderedRows.get(e+1).eDiv.insertAdjacentElement("beforebegin",s):this.eContainer.appendChild(s),this.renderedRows.set(e,{rowComponent:i,eDiv:s,value:t})}removeRow(e){const t=this.renderedRows.get(e);this.eContainer.removeChild(t.eDiv),this.destroyBean(t.rowComponent),this.renderedRows.delete(e)}refreshRows(){const e=this.model.getRowCount();this.renderedRows.forEach((t,s)=>{var i,o;if(s>=e)this.removeRow(s);else{const r=this.model.getRow(s);(o=(i=this.model).areRowsEqual)!=null&&o.call(i,t.value,r)?this.componentUpdater(r,t.rowComponent):this.removeRow(s)}})}addScrollListener(){this.addGuiEventListener("scroll",()=>this.drawVirtualRows(),{passive:!0})}setModel(e){this.model=e}getAriaElement(){return this.eContainer}destroy(){this.isAlive()&&(this.clearVirtualRows(),this.awaitStableCallbacks.length=0,super.destroy())}},Jw=class extends O{constructor(e,t,s,i,o){super(),this.dragSourceDropTarget=e,this.ghost=t,this.horizontal=s,this.template=i,this.agComponents=o,this.eText=P,this.eDragHandle=P,this.eButton=P}wireBeans(e){this.dragAndDropService=e.dragAndDropService}postConstruct(){this.setTemplate(this.template??` 194 <span role="option"> 195 <span data-ref="eDragHandle" class="ag-drag-handle ag-column-drop-cell-drag-handle" role="presentation"></span> 196 <span data-ref="eText" class="ag-column-drop-cell-text" aria-hidden="true"></span> 197 <span data-ref="eButton" class="ag-column-drop-cell-button" role="presentation"></span> 198 </span>`,this.agComponents);const e=this.getGui();this.addElementClasses(e),this.addElementClasses(this.eDragHandle,"drag-handle"),this.addElementClasses(this.eText,"text"),this.addElementClasses(this.eButton,"button"),this.eDragHandle.appendChild(N("columnDrag",this.gos)),this.eButton.appendChild(N("cancel",this.gos)),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.localeService.getLocaleTextFunc(),t=[this.getAriaDisplayName()];this.addAdditionalAriaInstructions(t,e),ze(this.getGui(),t.join(". "))}addAdditionalAriaInstructions(e,t){if(this.isRemovable()){const s=t("ariaDropZoneColumnComponentDescription","Press DELETE to remove");e.push(s)}}setupTooltip(){const e=()=>{const t=this.getTooltip();this.setTooltip({newTooltipText:t})};e(),this.addManagedEventListeners({newColumnsLoaded:e})}getDragSourceId(){}getDefaultIconName(){return"notAllowed"}addDragSource(){const{dragAndDropService:e,eDragHandle:t}=this,s=this.createGetDragItem(),i=this.getDefaultIconName(),o={type:this.getDragSourceType(),sourceId:this.getDragSourceId(),eElement:t,getDefaultIconName:()=>i,getDragItem:s,dragItemName:this.getDisplayName()};e.addDragSource(o,!0),this.addDestroyFunc(()=>e.removeDragSource(o))}setupComponents(){this.setTextValue(),this.setupRemove(),this.ghost&&this.addCssClass("ag-column-drop-cell-ghost")}isRemovable(){return!0}refreshRemove(){H(this.eButton,this.isRemovable())}setupRemove(){this.refreshRemove();const e={type:"columnRemove"};this.addGuiEventListener("keydown",s=>this.onKeyDown(s)),this.addManagedElementListeners(this.eButton,{click:s=>
198{this.dispatchLocalEvent(e),s.stopPropagation()}});const t=new wt(this.eButton);this.addManagedListeners(t,{tap:()=>this.dispatchLocalEvent(e)}),this.addDestroyFunc(t.destroy.bind(t))}onKeyDown(e){e.key===S.DELETE&&this.isRemovable()&&(e.preventDefault(),this.dispatchLocalEvent({type:"columnRemove"}))}getDisplayValue(){return this.getDisplayName()}setTextValue(){const e=this.getDisplayValue(),t=Ce(e);this.eText.innerHTML=t}addElementClasses(e,t){t=t?`-${t}`:"";const s=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop-cell${t}`,`ag-column-drop-${s}-cell${t}`)}destroy(){super.destroy(),this.dragSourceDropTarget=null}},ey=class extends O{constructor(e){super('<div class="ag-unselectable" role="presentation"></div>'),this.horizontal=e,this.state="notDragging",this.guiDestroyFunctions=[],this.childPillComponents=[],this.resizeEnabled=!1,this.addElementClasses(this.getGui()),this.ePillDropList=document.createElement("div"),this.addElementClasses(this.ePillDropList,"list"),he(this.ePillDropList,"listbox")}wireBeans(e){this.focusService=e.focusService,this.dragAndDropService=e.dragAndDropService}isHorizontal(){return this.horizontal}toggleResizable(e){this.positionableFeature.setResizable(e?{bottom:!0}:!1),this.resizeEnabled=e}isSourceEventFromTarget(e){const{dropZoneTarget:t,dragSource:s}=e;return t.contains(s.eElement)}destroy(){this.destroyGui(),super.destroy()}destroyGui(){this.guiDestroyFunctions.forEach(e=>e()),this.guiDestroyFunctions.length=0,this.childPillComponents.length=0,de(this.getGui()),de(this.ePillDropList)}init(e){this.params=e??{},this.createManagedBean(new kt(this.getFocusableElement(),{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.onKeyDown.bind(this)})),this.setupDropTarget(),this.positionableFeature=new wo(this.getGui()),this.createManagedBean(this.positionableFeature),this.refreshGui(),ze(this.ePillDropList,this.getAriaLabel())}onTabKeyDown(e){const t=this.focusService.findFocusableElements(this.getFocusableElement(),null,!0),s=t.length;if(s===0)return;const{shiftKey:i}=e,o=Q(this.gos),r=o===t[0],n=o===W(t);s===1||r&&i||n&&!i||t[i?0:s-1].focus()}onKeyDown(e){const{key:t}=e,s=!this.horizontal;let i=t===S.DOWN,o=t===S.UP;if(!s){const n=this.gos.get("enableRtl");i=!n&&t===S.RIGHT||n&&t===S.LEFT,o=!n&&t===S.LEFT||n&&t===S.RIGHT}if(!i&&!o)return;const r=this.focusService.findNextFocusableElement(this.getFocusableElement(),!1,o);r&&(e.preventDefault(),r.focus())}addElementClasses(e,t){t=t?`-${t}`:"";const s=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop${t}`,`ag-column-drop-${s}${t}`)}setupDropTarget(){this.dropTarget={getContainer:this.getGui.bind(this),getIconName:this.getIconName.bind(this),onDragging:this.onDragging.bind(this),onDragEnter:this.onDragEnter.bind(this),onDragLeave:this.onDragLeave.bind(this),onDragStop:this.onDragStop.bind(this),onDragCancel:this.onDragCancel.bind(this),isInterestedIn:this.isInterestedIn.bind(this)},this.dragAndDropService.addDropTarget(this.dropTarget)}minimumAllowedNewInsertIndex(){return 0}checkInsertIndex(e){const t=this.getNewInsertIndex(e);if(t<0)return!1;const s=this.minimumAllowedNewInsertIndex(),i=Math.max(s,t),o=i!==this.insertIndex;return o&&(this.insertIndex=i),o}getNewInsertIndex(e){const t=e.event,s=this.horizontal?t.clientX:t.clientY,i=this.childPillComponents.map(r=>r.getGui().getBoundingClientRect()),o=i.findIndex(r=>this.horizontal?r.right>s&&r.left<s:r.top<s&&r.bottom>s);if(o===-1){const r=this.gos.get("enableRtl");return i.every(a=>s>(this.horizontal?a.right:a.bottom))?r&&this.horizontal?0:this.childPillComponents.length:i.every(a=>s<(this.horizontal?a.left:a.top))?r&&this.horizontal?this.childPillComponents.length:0:this.insertIndex}return this.insertIndex<=o?o+1:o}checkDragStartedBySelf(e){this.state==="notDragging"&&(this.state="rearrangeItems",this.potentialDndItems=this.getItems(e.dragSource.getDragItem()),this.refreshGui(),this.checkInsertIndex(e),this.refreshGui())}onDragging(e){this.checkDragStartedBySelf(e),this.checkInsertIndex(e)&&this.refreshGui()}handleDragEnterEnd(e){}onDragEnter(e){const t=this.getItems(e.dragSource.getDragItem());this.state="newItemsIn";const s=t.filter(o=>this.isItemDroppable(o,e)),i=s.every(o=>this.childPillComponents.map(r=>r.getItem()).indexOf(o)!==-1);if(s.length!==0){if(this.potentialDndItems=s,i){this.state="notDragging";return}this.handleDragEnterEnd(e),this.checkInsertIndex(e),this.refreshGui()}}isPotentialDndItems(){return ei(this.potentialDndItems)}handleDragLeaveEnd(e){}onDragLeave(e){if(this.state==="rearrangeItems"){const t=this.getItems(e.dragSource.getDragItem());this.removeItems(t)}this.isPotentialDndItems()&&(this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragCancel(e){this.isPotentialDndItems()&&(this.state==="newItemsIn"&&this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragStop(){this.isPotentialDndItems()&&(this.state==="newItemsIn"?this.addItems(this.potentialDndItems):this.rearrangeItems(this.potentialDndItems),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}removeItems(e){const t=this.getExistingItems().filter(s=>!et(e,s));this.updateItems(t)}addItems(e){if(!e)return;const t=this.getExistingItems().slice(),s=e.filter(i=>t.indexOf(i)<0);Hn(t,s,this.insertIndex),this.updateItems(t)}addItem(e){this.insertIndex=this.getExistingItems().length,this.addItems([e]),this.refreshGui()}rearrangeItems(e){const t=this.getNonGhostItems().slice();return Hn(t,e,this.insertIndex),Je(t,this.getExistingItems())?!1:(this.updateItems(t),!0)}refreshGui(){const e=this.ePillDropList.scrollTop,t=this.resizeEnabled,s=this.getFocusedItem();let i=this.focusService.findNextFocusableElement();
198i||(i=this.focusService.findNextFocusableElement(void 0,!1,!0)),this.toggleResizable(!1),this.destroyGui(),this.addIconAndTitleToGui(),this.addEmptyMessageToGui(),this.addItemsToGui(),this.isHorizontal()||(this.ePillDropList.scrollTop=e),t&&this.toggleResizable(t),this.focusService.isKeyboardMode()&&this.restoreFocus(s,i)}getFocusedItem(){const e=this.getGui(),t=Q(this.gos);return e.contains(t)?Array.from(e.querySelectorAll(".ag-column-drop-cell")).indexOf(t):-1}restoreFocus(e,t){const s=this.getGui(),i=Array.from(s.querySelectorAll(".ag-column-drop-cell"));if(e===-1)return;i.length===0&&t.focus();const o=Math.min(i.length-1,e),r=i[o];r&&r.focus()}focusList(e){const t=e?this.childPillComponents.length-1:0;this.restoreFocus(t,this.getFocusableElement())}getNonGhostItems(){const e=this.getExistingItems();return this.isPotentialDndItems()?e.filter(t=>!et(this.potentialDndItems,t)):e}addItemsToGui(){const t=this.getNonGhostItems().map(s=>this.createItemComponent(s,!1));if(this.isPotentialDndItems()){const s=this.potentialDndItems.map(i=>this.createItemComponent(i,!0));this.insertIndex>
198=t.length?t.push(...s):t.splice(this.insertIndex,0,...s)}this.appendChild(this.ePillDropList),t.forEach((s,i)=>{i>0&&this.addArrow(this.ePillDropList),this.ePillDropList.appendChild(s.getGui())}),this.addAriaLabelsToComponents()}addAriaLabelsToComponents(){this.childPillComponents.forEach((e,t)=>{const s=e.getGui();_r(s,t+1),Ur(s,this.childPillComponents.length)})}createItemComponent(e,t){const s=this.createPillComponent(e,this.dropTarget,t,this.horizontal);return s.addEventListener("columnRemove",this.removeItems.bind(this,[e])),this.createBean(s),this.guiDestroyFunctions.push(()=>this.destroyBean(s)),t||this.childPillComponents.push(s),s}addIconAndTitleToGui(){const{title:e,icon:t}=this.params;if(!e||!t)return;const s=document.createElement("div");if(zr(s,!0),this.addElementClasses(s,"title-bar"),this.addElementClasses(t,"icon"),this.addOrRemoveCssClass("ag-column-drop-empty",this.isExistingItemsEmpty()),s.appendChild(t),!this.horizontal){const i=document.createElement("span");this.addElementClasses(i,"title"),i.innerHTML=e,s.appendChild(i)}this.appendChild(s)}isExistingItemsEmpty(){return this.getExistingItems().length===0}addEmptyMessageToGui(){const{emptyMessage:e}=this.params;if(!e||!this.isExistingItemsEmpty()||this.isPotentialDndItems())return;const t=document.createElement("span");t.innerHTML=e,this.addElementClasses(t,"empty-message"),this.ePillDropList.appendChild(t)}addArrow(e){if(this.horizontal){const t=this.gos.get("enableRtl"),s=N(t?"smallLeft":"smallRight",this.gos);this.addElementClasses(s,"cell-separator"),e.appendChild(s)}}};function ty(e){const t=e.cssIdentifier||"default";return`<div class="ag-panel ag-${t}-panel" tabindex="-1"> 199 <div data-ref="eTitleBar" class="ag-panel-title-bar ag-${t}-panel-title-bar ag-unselectable"> 200 <span data-ref="eTitle" class="ag-panel-title-bar-title ag-${t}-panel-title-bar-title"></span> 201 <div data-ref="eTitleBarButtons" class="ag-panel-title-bar-buttons ag-${t}-panel-title-bar-buttons"></div> 202 </div> 203 <div data-ref="eContentWrapper" class="ag-panel-content-wrapper ag-${t}-panel-content-wrapper"></div> 204 </div>`}var dc=class cc extends O{constructor(t){super(ty(t)),this.config=t,this.closable=!0,this.eContentWrapper=P,this.eTitleBar=P,this.eTitleBarButtons=P,this.eTitle=P}postConstruct(){const{component:t,closable:s,hideTitleBar:i,title:o,minWidth:r=250,width:n,minHeight:l=250,height:a,centered:d,popup:c,x:u,y:h}=this.config;this.positionableFeature=new wo(this.getGui(),{minWidth:r,width:n,minHeight:l,height:a,centered:d,x:u,y:h,popup:c,calculateTopBuffer:()=>this.positionableFeature.getHeight()-this.getBodyHeight()}),this.createManagedBean(this.positionableFeature);const p=this.getGui();t&&this.setBodyComponent(t),i?H(this.eTitleBar,!1):(o&&this.setTitle(o),this.setClosable(s??this.closable)),this.addManagedElementListeners(this.eTitleBar,{mousedown:g=>{if(p.contains(g.relatedTarget)||p.contains(Q(this.gos))||this.eTitleBarButtons.contains(g.target)){g.preventDefault();return}const f=this.eContentWrapper.querySelector("button, [href], input, select, textarea, [tabindex]");f&&f.focus()}}),!(c&&this.positionableFeature.isPositioned())&&(this.renderComponent&&this.renderComponent(),this.positionableFeature.initialisePosition(),this.eContentWrapper.style.height="0")}renderComponent(){const t=this.getGui();t.focus(),this.close=()=>{t.parentElement.removeChild(t),this.destroy()}}getHeight(){return this.positionableFeature.getHeight()}setHeight(t){this.positionableFeature.setHeight(t)}getWidth(){return this.positionableFeature.getWidth()}setWidth(t){this.positionableFeature.setWidth(t)}setClosable(t){if(t!==this.closable&&(this.closable=t),t){const s=this.closeButtonComp=new O(cc.CLOSE_BTN_TEMPLATE);this.createBean(s);const i=s.getGui(),o=N("close",this.gos);o.classList.add("ag-panel-title-bar-button-icon"),i.appendChild(o),this.addTitleBarButton(s),s.addManagedElementListeners(i,{click:this.onBtClose.bind(this)})}else if(this.closeButtonComp){const s=this.closeButtonComp.getGui();s.parentElement.removeChild(s),this.closeButtonComp=this.destroyBean(this.closeButtonComp)}}setBodyComponent(t){t.setParentComponent(this),this.eContentWrapper.appendChild(t.getGui())}addTitleBarButton(t,s){const i=this.eTitleBarButtons,o=i.children,r=o.length;s==null&&(s=r),s=Math.max(0,Math.min(s,r)),t.addCssClass("ag-panel-title-bar-button");const n=t.getGui();s===0?i.insertAdjacentElement("afterbegin",n):s===r?i.insertAdjacentElement("beforeend",n):o[s-1].insertAdjacentElement("afterend",n),t.setParentComponent(this)}getBodyHeight(){return mo(this.eContentWrapper)}getBodyWidth(){return Ns(this.eContentWrapper)}setTitle(t){this.eTitle.innerText=t}onBtClose(){this.close()}destroy(){this.closeButtonComp&&(this.closeButtonComp=this.destroyBean(this.closeButtonComp));const t=this.getGui();t&&tt(t)&&this.close(),super.destroy()}};dc.CLOSE_BTN_TEMPLATE='<div class="ag-button"></div>';var sy=dc,iy=class extends sy{constructor(e){super({...e,popup:!0}),this.isMaximizable=!1,this.isMaximized=!1,this.maximizeListeners=[],this.resizeListenerDestroy=null,this.lastPosition={x:0,y:0,width:0,height:0}}wireBeans(e){this.popupService=e.popupService,this.focusService=e.focusService}postConstruct(){const e=this.getGui(),{movable:t,resizable:s,maximizable:i,modal:o,postProcessPopupParams:r}=this.config;if(this.addCssClass("ag-dialog"),super.postConstruct(),r){const{type:n,eventSource:l,column:a,mouseEvent:d,rowNode:c}=r;this.popupService.callPostProcessPopup(n,e,l,d,a,c)}if(this.tabGuardFeature=this.createManagedBean(new zd(this)),this.tabGuardFeature.initialiseTabGuard({isFocusableContainer:!0,onFocusIn:()=>{this.popupService.bringPopupToFront(e)},onTabKeyDown:n=>{if(o)return;const l=n.shiftKey,a=this.focusService.findNextFocusableElement(e,!1,l);(!a||this.tabGuardFeature.getTabGuardCtrl().isTabGuard(a))&&this.focusService.focusNextGridCoreContainer(l)&&n.preventDefault()}}),t&&this.setMovable(t),i&&this.setMaximizable(i),s&&this.setResizable(s),!this.config.modal){const{focusService:n}=this;n.addFocusableContainer(this),this.addDestroyFunc(()=>n.removeFocusableContainer(this))}}setAllowFocus(e){this.tabGuardFeature.getTabGuardCtrl().setAllowFocus(e)}renderComponent(){const e=this.getGui(),{alwaysOnTop:t,modal:s,title:i,afterGuiAttached:o}=this.config,r=this.localeService.getLocaleTextFunc(),n=this.popupService.addPopup({modal:s,eChild:e,closeOnEsc:!0,closedCallback:this.onClosed.bind(this),alwaysOnTop:t,ariaLabel:i||r("ariaLabelDialog","Dialog"),afterGuiAttached:o});n&&(this.close=n.hideFunc)}onClosed(e){var t,s;this.destroy(),(s=(t=this.config).closedCallback)==null||s.call(t,e)}toggleMaximize(){const e=this.positionableFeature.getPosition();if(this.isMaximized){const{x:t,y:s,width:i,height:o}=this.lastPosition;this.setWidth(i),this.setHeight(o),this.positionableFeature.offsetElement(t,s)}else this.lastPosition.width=this.getWidth(),this.lastPosition.height=this.getHeight(),this.lastPosition.x=e.x,this.lastPosition.y=e.y,this.positionableFeature.offsetElement(0,0),this.setHeight("100%"),this.setWidth("100%");this.isMaximized=!this.isMaximized,this.refreshMaximizeIcon()}refreshMaximizeIcon(){H(this.maximizeIcon,!this.isMaximized),H(this.minimizeIcon,this.isMaximized)}clearMaximizebleListeners(){this.maximizeListeners.length&&(this.maximizeListeners.forEac
204h(e=>e()),this.maximizeListeners.length=0),this.resizeListenerDestroy&&(this.resizeListenerDestroy(),this.resizeListenerDestroy=null)}destroy(){this.maximizeButtonComp=this.destroyBean(this.maximizeButtonComp),this.clearMaximizebleListeners(),super.destroy()}setResizable(e){this.positionableFeature.setResizable(e)}setMovable(e){this.positionableFeature.setMovable(e,this.eTitleBar)}setMaximizable(e){if(!e){this.clearMaximizebleListeners(),this.maximizeButtonComp&&(this.destroyBean(this.maximizeButtonComp),this.maximizeButtonComp=this.maximizeIcon=this.minimizeIcon=void 0);return}const t=this.eTitleBar;if(!t||e===this.isMaximizable)return;const s=this.buildMaximizeAndMinimizeElements();this.refreshMaximizeIcon(),s.addManagedElementListeners(s.getGui(),{click:this.toggleMaximize.bind(this)}),this.addTitleBarButton(s,0),this.maximizeListeners.push(...this.addManagedElementListeners(t,{dblclick:this.toggleMaximize.bind(this)})),[this.resizeListenerDestroy]=this.addManagedListeners(this.positionableFeature,{resize:()=>{this.isMaximized=!1,this.refreshMaximizeIcon()}})}buildMaximizeAndMinimizeElements(){const e=this.maximizeButtonComp=this.createBean(new O('<div class="ag-dialog-button"></span>')),t=e.getGui();return this.maximizeIcon=N("maximize",this.gos),t.appendChild(this.maximizeIcon),this.maximizeIcon.classList.add("ag-panel-title-bar-button-icon"),this.minimizeIcon=N("minimize",this.gos),t.appendChild(this.minimizeIcon),this.minimizeIcon.classList.add("ag-panel-title-bar-button-icon"),e}},Po=class extends fs{constructor(e=0,t){super('<div class="ag-menu-list" role="tree"></div>'),this.level=e,this.menuItems=[],this.params=t??{column:null,node:null,value:null}}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e),onFocusIn:e=>this.handleFocusIn(e),onFocusOut:e=>this.handleFocusOut(e)})}onTabKeyDown(e){const t=this.getParentComponent(),s=t&&t.getGui();s&&s.classList.contains("ag-focus-managed")||e.preventDefault(),e.shiftKey&&this.closeIfIsChild(e)}handleKeyDown(e){switch(e.key){case S.UP:case S.RIGHT:case S.DOWN:case S.LEFT:e.preventDefault(),this.handleNavKey(e.key);break;case S.ESCAPE:this.closeIfIsChild()&&Rt(e);break}}handleFocusIn(e){var s,i;const t=e.relatedTarget;!this.tabGuardFeature.getTabGuardCtrl().isTabGuard(t)&&(this.getGui().contains(t)||(i=(s=this.activeMenuItem)==null?void 0:s.getSubMenuGui())!=null&&i.contains(t))||(this.activeMenuItem?this.activeMenuItem.activate():this.activateFirstItem())}handleFocusOut(e){var s;const t=e.relatedTarget;!this.activeMenuItem||this.getGui().contains(t)||(s=this.activeMenuItem.getSubMenuGui())!=null&&s.contains(t)||this.activeMenuItem.isSubMenuOpening()||this.activeMenuItem.deactivate()}clearActiveItem(){this.activeMenuItem&&(this.activeMenuItem.deactivate(),this.activeMenuItem=null)}addMenuItems(e){e!=null&&K.all(e.map(t=>t==="separator"?K.resolve({eGui:this.createSeparator()}):typeof t=="string"?(R(`unrecognised menu item ${t}`),K.resolve({eGui:null})):this.addItem(t))).then(t=>{(t??[]).forEach(s=>{s!=null&&s.eGui&&(this.appendChild(s.eGui),s.comp&&this.menuItems.push(s.comp))})})}addItem(e){const t=this.createManagedBean(new hl);return t.init({menuItemDef:e,isAnotherSubMenuOpen:()=>this.menuItems.some(s=>s.isSubMenuOpen()),level:this.level,contextParams:this.params}).then(()=>(t.setParentComponent(this),this.addManagedListeners(t,{closeMenu:s=>{this.dispatchLocalEvent(s)},menuItemActivated:s=>{this.activeMenuItem&&this.activeMenuItem!==s.menuItem&&this.activeMenuItem.deactivate(),this.activeMenuItem=s.menuItem}}),{comp:t,eGui:t.getGui()}))}activateFirstItem(){const e=this.menuItems.filter(t=>!t.isDisabled())[0];e&&e.activate()}createSeparator(){return Xe(` 205 <div class="ag-menu-separator" aria-hidden="true"> 206 <div class="ag-menu-separator-part"></div> 207 <div class="ag-menu-separator-part"></div> 208 <div class="ag-menu-separator-part"></div> 209 <div class="ag-menu-separator-part"></div> 210 </div>`)}handleNavKey(e){switch(e){case S.UP:case S.DOWN:{const s=this.findNextItem(e===S.UP);s&&s!==this.activeMenuItem&&s.activate();return}}const t=this.gos.get("enableRtl")?S.RIGHT:S.LEFT;e===t?this.closeIfIsChild():this.openChild()}closeIfIsChild(e){const t=this.getParentComponent();return t&&t instanceof hl?(e&&e.preventDefault(),t.closeSubMenu(),t.getGui().focus(),!0):!1}openChild(){this.activeMenuItem&&this.activeMenuItem.openSubMenu(!0)}findNextItem(e){const t=this.menuItems.filter(o=>!o.isDisabled());if(!t.length)return;if(!this.activeMenuItem)return e?W(t):t[0];e&&t.reverse();let s,i=!1;for(let o=0;o<t.length;o++){const r=t[o];if(!i){r===this.activeMenuItem&&(i=!0);continue}s=r;break}return i&&!s?t[0]:s||this.activeMenuItem}destroy(){this.clearActiveItem(),super.destroy()}},oy=class extends fs{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.ESCAPE&&this.closePanel()}onTabKeyDown(e){e.defaultPrevented||(this.closePanel(),e.preventDefault())}closePanel(){const e=this.parentComponent;e.closeSubMenu(),setTimeout(()=>
210e.getGui().focus(),0)}},hl=class extends b{constructor(){super(...arguments),this.ACTIVATION_DELAY=80,this.isActive=!1,this.subMenuIsOpen=!1,this.subMenuIsOpening=!1,this.suppressRootStyles=!0,this.suppressAria=!0,this.suppressFocus=!0}wireBeans(e){this.popupService=e.popupService,this.userComponentFactory=e.userComponentFactory}init(e){var l;const{menuItemDef:t,isAnotherSubMenuOpen:s,level:i,childComponent:o,contextParams:r}=e;return this.params=e.menuItemDef,this.level=i,this.isAnotherSubMenuOpen=s,this.childComponent=o,this.contextParams=r,this.cssClassPrefix=((l=this.params.menuItemParams)==null?void 0:l.cssClassPrefix)??"ag-menu-option",this.userComponentFactory.getMenuItemCompDetails(this.params,{...t,level:i,isAnotherSubMenuOpen:s,openSubMenu:a=>this.openSubMenu(a),closeSubMenu:()=>this.closeSubMenu(),closeMenu:a=>this.closeMenu(a),updateTooltip:(a,d)=>this.refreshTooltip(a,d),onItemActivated:()=>this.onItemActivated()}).newAgStackInstance().then(a=>{var c;this.menuItemComp=a;const d=(c=a.configureDefaults)==null?void 0:c.call(a);d&&this.configureDefaults(d===!0?void 0:d)})}addListeners(e,t){t!=null&&t.suppressClick||this.addManagedElementListeners(e,{click:s=>this.onItemSelected(s)}),t!=null&&t.suppressKeyboardSelect||this.addManagedElementListeners(e,{keydown:s=>{(s.key===S.ENTER||s.key===S.SPACE)&&(s.preventDefault(),this.onItemSelected(s))}}),t!=null&&t.suppressMouseDown||this.addManagedElementListeners(e,{mousedown:s=>{s.stopPropagation(),s.preventDefault()}}),t!=null&&t.suppressMouseOver||this.addManagedElementListeners(e,{mouseenter:()=>this.onMouseEnter(),mouseleave:()=>this.onMouseLeave()})}isDisabled(){return!!this.params.disabled}openSubMenu(e=!1,t){var d,c;if(this.closeSubMenu(),!this.params.subMenu)return;this.subMenuIsOpening=!0;const s=Xe('<div class="ag-menu" role="presentation"></div>');this.eSubMenuGui=s;let i,o=()=>{this.subMenuIsOpening=!1};if(this.childComponent){const u=this.createBean(new oy(this.childComponent));u.setParentComponent(this);const h=u.getGui(),p="mouseenter",g=()=>this.cancelDeactivate();h.addEventListener(p,g),i=()=>h.removeEventListener(p,g),s.appendChild(h),this.childComponent.afterGuiAttached&&(o=()=>{this.childComponent.afterGuiAttached(),this.subMenuIsOpening=!1})}else if(this.params.subMenu){const u=this.createBean(new Po(this.level+1,this.contextParams));u.setParentComponent(this),u.addMenuItems(this.params.subMenu),s.appendChild(u.getGui()),this.addManagedListeners(u,{closeMenu:h=>this.dispatchLocalEvent(h)}),u.addGuiEventListener("mouseenter",()=>this.cancelDeactivate()),i=()=>this.destroyBean(u),e&&(o=()=>{u.activateFirstItem(),this.subMenuIsOpening=!1})}const{popupService:r}=this,n=()=>{const u=this.eGui;r.positionPopupForMenu({eventSource:u,ePopup:s});const{column:h,node:p}=this.contextParams;r.callPostProcessPopup("subMenu",s,u,t instanceof MouseEvent?t:void 0,h,p)},l=this.localeService.getLocaleTextFunc(),a=r.addPopup({modal:!0,eChild:s,positionCallback:n,anchorToElement:this.eGui,ariaLabel:l("ariaLabelSubMenu","SubMenu"),afterGuiAttached:o});this.subMenuIsOpen=!0,this.setAriaExpanded(!0),this.hideSubMenu=()=>{var u,h;a&&a.hideFunc(),this.subMenuIsOpen=!1,this.setAriaExpanded(!1),i(),(h=(u=this.menuItemComp).setExpanded)==null||h.call(u,!1),this.eSubMenuGui=void 0},(c=(d=this.menuItemComp).setExpanded)==null||c.call(d,!0)}setAriaExpanded(e){this.suppressAria||Ft(this.eGui,e)}closeSubMenu(){this.hideSubMenu&&(this.hideSubMenu(),this.hideSubMenu=null,this.setAriaExpanded(!1))}isSubMenuOpen(){return this.subMenuIsOpen}isSubMenuOpening(){return this.subMenuIsOpening}activate(e){var t,s;this.cancelActivate(),!this.params.disabled&&(this.isActive=!0,this.suppressRootStyles||this.eGui.classList.add(`${this.cssClassPrefix}-active`),(s=(t=this.menuItemComp).setActive)==null||s.call(t,!0),this.suppressFocus||this.eGui.focus({preventScroll:!0}),e&&this.params.subMenu&&window.setTimeout(()=>{this.isAlive()&&this.isActive&&this.openSubMenu()},300),this.onItemActivated())}deactivate(){var e,t;this.cancelDeactivate(),this.suppressRootStyles||this.eGui.classList.remove(`${this.cssClassPrefix}-active`),(t=(e=this.menuItemComp).setActive)==null||t.call(e,!1),this.isActive=!1,this.subMenuIsOpen&&this.hideSubMenu()}getGui(){return this.menuItemComp.getGui()}getParentComponent(){return this.parentComponent}setParentComponent(e){this.parentComponent=e}getSubMenuGui(){return this.eSubMenuGui}onItemSelected(e){var t,s;(s=(t=this.menuItemComp).select)==null||s.call(t),this.params.action?this.getFrameworkOverrides().wrapOutgoing(()=>this.params.action(this.gos.addGridCommonParams({...this.contextParams}
210))):this.openSubMenu(e&&e.type==="keydown",e),!(this.params.subMenu&&!this.params.action||this.params.suppressCloseOnSelect)&&this.closeMenu(e)}closeMenu(e){const t={type:"closeMenu"};e&&(e instanceof MouseEvent?t.mouseEvent=e:t.keyboardEvent=e),this.dispatchLocalEvent(t)}onItemActivated(){const e={type:"menuItemActivated",menuItem:this};this.dispatchLocalEvent(e)}cancelActivate(){this.activateTimeoutId&&(window.clearTimeout(this.activateTimeoutId),this.activateTimeoutId=0)}cancelDeactivate(){this.deactivateTimeoutId&&(window.clearTimeout(this.deactivateTimeoutId),this.deactivateTimeoutId=0)}onMouseEnter(){this.cancelDeactivate(),this.isAnotherSubMenuOpen()?this.activateTimeoutId=window.setTimeout(()=>this.activate(!0),this.ACTIVATION_DELAY):this.activate(!0)}onMouseLeave(){this.cancelActivate(),this.isSubMenuOpen()?this.deactivateTimeoutId=window.setTimeout(()=>this.deactivate(),this.ACTIVATION_DELAY):this.deactivate()}configureDefaults(e){var i,o,r;if(!this.menuItemComp){setTimeout(()=>this.configureDefaults(e));return}let t=this.menuItemComp.getGui();const s=(o=(i=this.menuItemComp).getRootElement)==null?void 0:o.call(i);s&&(e!=null&&e.suppressRootStyles||t.classList.add("ag-menu-option-custom"),t=s),this.eGui=t,this.suppressRootStyles=!!(e!=null&&e.suppressRootStyles),this.suppressRootStyles||(t.classList.add(this.cssClassPrefix),(r=this.params.cssClasses)==null||r.forEach(n=>t.classList.add(n)),this.params.disabled&&t.classList.add(`${this.cssClassPrefix}-disabled`)),e!=null&&e.suppressTooltip||this.refreshTooltip(this.params.tooltip),this.suppressAria=!!(e!=null&&e.suppressAria),this.suppressAria||(he(t,"treeitem"),Wr(t,this.level+1),this.params.disabled&&ca(t,!0)),e!=null&&e.suppressTabIndex||t.setAttribute("tabindex","-1"),this.params.disabled||this.addListeners(t,e),this.suppressFocus=!!(e!=null&&e.suppressFocus)}refreshTooltip(e,t){this.tooltip=e,this.tooltipFeature&&(this.tooltipFeature=this.destroyBean(this.tooltipFeature)),!(!e||!this.menuItemComp)&&(this.tooltipFeature=this.createBean(new us({getGui:()=>this.getGui(),getTooltipValue:()=>this.tooltip,getLocation:()=>"menu",shouldDisplayTooltip:t})))}destroy(){var e,t;this.tooltipFeature&&(this.tooltipFeature=this.destroyBean(this.tooltipFeature)),(t=(e=this.menuItemComp)==null?void 0:e.destroy)==null||t.call(e),super.destroy()}},Ko="ag-list-item-hovered",ry=class extends b{constructor(e,t,s){super(),this.comp=e,this.virtualList=t,this.params=s,this.currentDragValue=null,this.lastHoveredListItem=null}wireBeans(e){this.dragAndDropService=e.dragAndDropService}postConstruct(){this.addManagedListeners(this.params.eventSource,{[this.params.listItemDragStartEvent]:this.listItemDragStart.bind(this),[this.params.listItemDragEndEvent]:this.listItemDragEnd.bind(this)}),this.createDropTarget(),this.createAutoScrollService()}listItemDragStart(e){this.currentDragValue=this.params.getCurrentDragValue(e),this.moveBlocked=this.params.isMoveBlocked(this.currentDragValue)}listItemDragEnd(){window.setTimeout(()=>{this.currentDragValue=null,this.moveBlocked=!1},10)}createDropTarget(){const e={isInterestedIn:t=>t===this.params.dragSourceType,getIconName:()=>this.moveBlocked?"pinned":"move",getContainer:()=>this.comp.getGui(),onDragging:t=>this.onDragging(t),onDragStop:()=>this.onDragStop(),onDragLeave:()=>this.onDragLeave(),onDragCancel:()=>this.onDragCancel()};this.dragAndDropService.addDropTarget(e)}createAutoScrollService(){const e=this.virtualList.getGui();this.autoScrollService=new Wa({scrollContainer:e,scrollAxis:"y",getVerticalPosition:()=>e.scrollTop,setVerticalPosition:t=>e.scrollTop=t})}onDragging(e){if(!this.currentDragValue||this.moveBlocked)return;const t=this.getListDragItem(e),s=this.virtualList.getComponentAt(t.rowIndex);if(!s)return;const i=s.getGui().parentElement;this.lastHoveredListItem&&this.lastHoveredListItem.rowIndex===t.rowIndex&&this.lastHoveredListItem.position===t.position||(this.autoScrollService.check(e.event),this.clearHoveredItems(),this.lastHoveredListItem=t,$n(i,Ko),$n(i,`ag-item-highlight-${t.position}`))}getListDragItem(e){const t=this.virtualList.getGui(),s=parseFloat(window.getComputedStyle(t).paddingTop),i=this.virtualList.getRowHeight(),o=this.virtualList.getScrollTop(),r=Math.max(0,(e.y-s+o)/i),n=this.params.getNumRows(this.comp)-1,l=Math.min(n,r)|0;return{rowIndex:l,position:Math.round(r)>r||r>n?"bottom":"top",component:this.virtualList.getComponentAt(l)}}onDragStop(){this.moveBlocked||(this.params.moveItem(this.currentDragValue,this.lastHoveredListItem),this.clearDragProperties())}onDragCancel(){this.clearDragProperties()}onDragLeave(){this.clearDragProperties()}clearDragProperties(){this.clearHoveredItems(),this.autoScrollService.ensureCleared()}clearHoveredItems(){this.virtualList.getGui().querySelectorAll(`.${Ko}`).forEach(t=>{[Ko,"ag-item-highlight-top","ag-item-highlight-bottom"].forEach(s=>{t.classList.remove(s)})}),this.lastHoveredListItem=null}};function ny(e){return`<div class="ag-tabs ${e}"> 211 <div data-ref="eHeader"></div> 212 <div data-ref="eBody" role="presentation" class="ag-tabs-body ${e?`${e}-body`:""}"></div> 213 </div>`}var ly=class extends fs{constructor(e){super(ny(e.cssClass)),this.eHeader=P,this.eBody=P,this.items=[],this.tabbedItemScrollMap=new Map,this.params=e}wireBeans(e){this.focusService=e.focusService}postConstruct(){this.setupHeader(),this.params.items&&this.params.items.forEac
213h(e=>this.addItem(e)),this.initialiseTabGuard({onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),focusInnerElement:this.focusInnerElement.bind(this),focusTrapActive:!0}),this.addDestroyFunc(()=>{var e,t,s;return(s=(t=(e=this.activeItem)==null?void 0:e.tabbedItem)==null?void 0:t.afterDetachedCallback)==null?void 0:s.call(t)})}setupHeader(){const{enableCloseButton:e,cssClass:t}=this.params,s=(i,o)=>{i.classList.add(`ag-tabs-${o}`),t&&i.classList.add(`${t}-${o}`)};e?(this.setupCloseButton(s),this.eTabHeader=le(this.gos).createElement("div"),s(this.eHeader,"header-wrapper"),he(this.eHeader,"presentation"),this.eHeader.appendChild(this.eTabHeader)):this.eTabHeader=this.eHeader,he(this.eTabHeader,"tablist"),s(this.eTabHeader,"header")}setupCloseButton(e){const t=le(this.gos),s=t.createElement("button");e(s,"close-button");const i=N("close",this.gos,void 0,!0);ze(s,this.params.closeButtonAriaLabel),s.appendChild(i),this.addManagedElementListeners(s,{click:()=>{var r,n;return(n=(r=this.params).onCloseClicked)==null?void 0:n.call(r)}});const o=t.createElement("div");e(o,"close-button-wrapper"),he(o,"presentation"),o.appendChild(s),this.eHeader.appendChild(o),this.eCloseButton=s}handleKeyDown(e){switch(e.key){case S.RIGHT:case S.LEFT:{if(!this.eTabHeader.contains(Q(this.gos)))return;const t=e.key===S.RIGHT,s=this.gos.get("enableRtl"),i=this.items.indexOf(this.activeItem),o=t!==s?Math.min(i+1,this.items.length-1):Math.max(i-1,0);if(i===o)return;e.preventDefault();const r=this.items[o];this.showItemWrapper(r),r.eHeaderButton.focus();break}case S.UP:case S.DOWN:e.stopPropagation();break}}onTabKeyDown(e){var h,p,g,f;if(e.defaultPrevented)return;const{focusService:t,eHeader:s,eBody:i,activeItem:o,params:r}=this,{suppressTrapFocus:n,enableCloseButton:l}=r,a=Q(this.gos),d=e.target,c=e.shiftKey;if(s.contains(a)){e.preventDefault(),l&&c&&!((h=this.eCloseButton)!=null&&h.contains(a))?(p=this.eCloseButton)==null||p.focus():n&&c?(g=this.focusService.findFocusableElementBeforeTabGuard(le(this.gos).body,d))==null||g.focus():this.focusBody(e.shiftKey);return}let u=null;if(t.isTargetUnderManagedComponent(i,d)&&(c&&(u=this.focusService.findFocusableElementBeforeTabGuard(i,d)),!u&&!n&&(u=o.eHeaderButton)),!u&&i.contains(a)&&(u=t.findNextFocusableElement(i,!1,c),!u)){n&&!c?this.forceFocusOutOfContainer(c):l&&!c?(e.preventDefault(),(f=this.eCloseButton)==null||f.focus()):(e.preventDefault(),this.focusHeader());return}u&&(e.preventDefault(),u.focus())}focusInnerElement(e){e?this.focusBody(!0):this.focusHeader()}focusHeader(e){this.activeItem.eHeaderButton.focus({preventScroll:e})}focusBody(e){this.focusService.focusInto(this.eBody,e)}setAfterAttachedParams(e){this.afterAttachedParams=e}showFirstItem(){this.items.length>0&&this.showItemWrapper(this.items[0])}addItem(e){const t=document.createElement("span");he(t,"tab"),t.setAttribute("tabindex","-1"),t.appendChild(e.title),t.classList.add("ag-tab"),this.eTabHeader.appendChild(t),ze(t,e.titleLabel);const s={tabbedItem:e,eHeaderButton:t};this.items.push(s),t.addEventListener("click",this.showItemWrapper.bind(this,s))}showItem(e){const t=this.items.find(s=>s.tabbedItem===e);t&&this.showItemWrapper(t)}showItemWrapper(e){var i,o,r,n,l,a;const{tabbedItem:t,eHeaderButton:s}=e;if((o=(i=this.params).onItemClicked)==null||o.call(i,{item:t}),this.activeItem===e){(n=(r=this.params).onActiveItemClicked)==null||n.call(r);return}this.lastScrollListener&&(this.lastScrollListener=this.lastScrollListener()),de(this.eBody),t.bodyPromise.then(d=>{this.eBody.appendChild(d);const c=!this.focusService.isKeyboardMode();if(this.params.suppressFocusBodyOnOpen||this.focusService.focusInto(this.eBody,!1,c),t.afterAttachedCallback&&t.afterAttachedCallback(this.afterAttachedParams),this.params.keepScrollPosition){const u=t.getScrollableContainer&&t.getScrollableContainer()||d;[this.lastScrollListener]=this.addManagedElementListeners(u,{scroll:()=>{this.tabbedItemScrollMap.set(t.name,u.scrollTop)}});const h=this.tabbedItemScrollMap.get(t.name);h!==void 0&&setTimeout(()=>{u.scrollTop=h},0)}}),this.activeItem&&(this.activeItem.eHeaderButton.classList.remove("ag-tab-selected"),(a=(l=this.activeItem.tabbedItem).afterDetachedCallback)==null||a.call(l)),s.classList.add("ag-tab-selected"),this.activeItem=e}},uc=class extends b{wireBeans(e){this.expressionService=e.expressionService,this.valueService=e.valueService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.userComponentFactory=e.userComponentFactory,this.ctrlsService=e.ctrlsService,this.funcColsService=e.funcColsService}init(e,t,s,i,o,r,n){var c,u,h,p;this.params=n,this.eGui=t,this.eCheckbox=s,this.eExpanded=i,this.eContracted=o,this.comp=e,this.compClass=r;const{node:l,colDef:a}=n,d=this.isTopLevelFooter();if(!d){if(this.isEmbeddedRowMismatch())return;if(l.footer&&this.gos.get("groupHideOpenParents")){const f=a&&a.showRowGroup,m=l.rowGroupColumn&&l.rowGroupColumn.getColId();if(f!==m)return}}if(this.setupShowingValueForOpenedParent(),this.findDisplayedGroupNode(),!d){const g=n.node.footer&&n.node.rowGroupIndex===this.funcColsService.getRowGroupColumns().findIndex(D=>{var M;return D.getColId()===((M=n.colDef)==null?void 0:M.showRowGroup)}),m=this.gos.get("groupDisplayType")!="multipleColumns"||this.gos.get("treeData")||this.gos.get("showOpenedGroup")&&!n.node.footer&&(!n.node.group||n.node.rowGroupIndex!=null&&n.node.rowGroupIndex>this.funcColsService.getRowGroupColumns().findIndex(D=>{var M;return D.getColId()===((M=n.colDef)==null?void 0:M.showRowGroup)})),v=!l.group&&(((c=this.params.colDef)==null?void 0:c.field)||((u=this.params.colDef)==null?void 0:u.valueGetter)),y=this.isExpandable(),w=this.columnModel.isPivotMode()&&l.leafGroup&&((h=l.rowGroupColumn)==null?void 0:h.getColId())===((p=n.column)==null?void 0:p.getColDef().showRowGroup);if(!this.showingValueForOpenedParent&&!y&&!v&&!m&&!g&&!w)return}this.addExpandAndContract(),this.addFullWidthRowDraggerIfNeeded(),this.addCheckboxIfNeeded(),this.addValueElement(),this.setupIndent(),this.refreshAriaExpanded()}getCellAriaRole(){var s,i;const e=(s=this.params.colDef)==null?void 0:s.cellAriaRole,t=(i=this.params.column)==null?void 0:i.getColDef().cellAriaRole;return e||t||"gridcell"}destroy(){super.destroy(),this.expandListener=null}refreshAriaExpanded(){const{node:e,eGridCell:t}=this.params;if(this.expandListener&&(this.expandListener=this.expandListener()),!this.isExpandable()){Yu(t);return}const s=()=>{Ft(t,this.showingValueForOpenedParent||!!e.expanded)};[this.expandListener]=this.addManagedListeners(e,{expandedChanged:s})||null,s()}
213isTopLevelFooter(){if(!ho(this.gos)||this.params.value!=null||this.params.node.level!=-1)return!1;const t=this.params.colDef;if(t==null||t.showRowGroup===!0)return!0;const i=this.funcColsService.getRowGroupColumns();return!i||i.length===0?!0:i[0].getId()===t.showRowGroup}isEmbeddedRowMismatch(){if(!this.params.fullWidth||!this.gos.get("embedFullWidthRows"))return!1;const e=this.params.pinned==="left",t=this.params.pinned==="right",s=!e&&!t;return this.gos.get("enableRtl")?this.visibleColsService.isPinningLeft()?!t:!s:this.visibleColsService.isPinningLeft()?!e:!s}findDisplayedGroupNode(){const e=this.params.column,t=this.params.node;if(this.showingValueForOpenedParent){let s=t.parent;for(;s!=null;){if(s.rowGroupColumn&&e.isRowGroupDisplayed(s.rowGroupColumn.getId())){this.displayedGroupNode=s;break}s=s.parent}}z(this.displayedGroupNode)&&(this.displayedGroupNode=t)}setupShowingValueForOpenedParent(){const e=this.params.node,t=this.params.column;if(!this.gos.get("groupHideOpenParents")){this.showingValueForOpenedParent=!1;return}if(!e.groupData){this.showingValueForOpenedParent=!1;return}if(e.rowGroupColumn!=null){const o=e.rowGroupColumn.getId();if(t.isRowGroupDisplayed(o)){this.showingValueForOpenedParent=!1;return}}const i=e.groupData[t.getId()]!=null;this.showingValueForOpenedParent=i}addValueElement(){this.displayedGroupNode.footer?this.addFooterValue():(this.addGroupValue(),this.addChildCount())}addGroupValue(){var r;const e=this.adjustParamsWithDetailsFromRelatedColumn(),t=this.getInnerCompDetails(e),{valueFormatted:s,value:i}=e;let o=s;if(o==null){const n=this.displayedGroupNode.rowGroupColumn&&((r=this.params.column)==null?void 0:r.isRowGroupDisplayed(this.displayedGroupNode.rowGroupColumn.getId()));this.displayedGroupNode.key===""&&this.displayedGroupNode.group&&n?o=this.localeService.getLocaleTextFunc()("blanks","(Blanks)"):o=i??null}this.comp.setInnerRenderer(t,o)}adjustParamsWithDetailsFromRelatedColumn(){const e=this.displayedGroupNode.rowGroupColumn,t=this.params.column;if(!e)return this.params;if(t!=null&&!t.isRowGroupDisplayed(e.getId()))return this.params;const i=this.params,{value:o,node:r}=this.params,n=this.valueService.formatValue(e,r,o);return{...i,valueFormatted:n}}addFooterValue(){let e=this.params.totalValueGetter;if(!e){const i=this.params.footerValueGetter;i&&(e=i,R("As of v31.3, footerValueGetter is deprecated. Use `totalValueGetter` instead."))}let t="";if(e){const i=go(this.params);i.value=this.params.value,typeof e=="function"?t=e(i):typeof e=="string"?t=this.expressionService.evaluate(e,i):R("footerValueGetter should be either a function or a string (expression)")}else t=this.localeService.getLocaleTextFunc()("footerTotal","Total")+" "+(this.params.value!=null?this.params.value:"");const s=this.getInnerCompDetails(this.params);this.comp.setInnerRenderer(s,t)}getInnerCompDetails(e){if(e.fullWidth)return this.userComponentFactory.getFullWidthGroupRowInnerCellRenderer(this.gos.get("groupRowRendererParams"),e);const t=this.userComponentFactory.getInnerRendererDetails(e,e),s=n=>n&&n.componentClass==this.compClass;if(t&&!s(t))return t;const i=this.displayedGroupNode.rowGroupColumn,o=i?i.getColDef():void 0;if(!o)return;const r=this.userComponentFactory.getCellRendererDetails(o,e);if(r&&!s(r))return r;if(s(r)&&o.cellRendererParams&&o.cellRendererParams.innerRenderer)return this.userComponentFactory.getInnerRendererDetails(o.cellRendererParams,e)}addChildCount(){this.params.suppressCount||(this.addManagedListeners(this.displayedGroupNode,{allChildrenCountChanged:this.updateChildCount.bind(this)}),this.updateChildCount())}updateChildCount(){const e=this.displayedGroupNode.allChildrenCount,i=this.isShowRowGroupForThisRow()&&e!=null&&e>=0?`(${e})`:"";this.comp.setChildCount(i)}isShowRowGroupForThisRow(){if(this.gos.get("treeData"))return!0;const e=this.displayedGroupNode.rowGroupColumn;if(!e)return!1;const t=this.params.column;return t==null||t.isRowGroupDisplayed(e.getId())}addExpandAndContract(){var r;const e=this.params,t=(n,l)=>{const a=N(n,this.gos,null);a&&(l.appendChild(a),this.addDestroyFunc(()=>l.removeChild(a)))};t("groupExpanded",this.eExpanded),t("groupContracted",this.eContracted);const s=e.eGridCell;!(((r=this.params.column)==null?void 0:r.isCellEditable(e.node))&&this.gos.get("enableGroupEdit"))&&this.isExpandable()&&!e.suppressDoubleClickExpand&&this.addManagedListeners(s,{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(s,{keydown:this.onKeyDown.bind(this)}),this.addManagedListeners(e.node,{expandedChanged:this.showExpandAndContractIcons.bind(this)}),this.showExpandAndContractIcons();const o=this.onRowNodeIsExpandableChanged.bind(this);this.addManagedListeners(this.displayedGroupNode,{allChildrenCountChanged:o,masterChanged:o,groupChanged:o,hasChildrenChanged:o})}onExpandClicked(e){ht(e)||(Rt(e),this.onExpandOrContract(e))}onExpandOrContract(e){const t=this.displayedGroupNode,s=!t.expanded;!s&&t.sticky&&this.scrollToStickyNode(t),t.setExpanded(s,e)}scrollToStickyNode(e){this.ctrlsService.getGridBodyCtrl().getScrollFeature
213().setVerticalScrollPosition(e.rowTop-e.stickyRowTop)}isExpandable(){if(this.showingValueForOpenedParent)return!0;const e=this.displayedGroupNode,t=this.columnModel.isPivotMode()&&e.leafGroup;if(!(e.isExpandable()&&!e.footer&&!t))return!1;const i=this.params.column;return i!=null&&typeof i.getColDef().showRowGroup=="string"?this.isShowRowGroupForThisRow():!0}showExpandAndContractIcons(){const{params:e,displayedGroupNode:t,columnModel:s}=this,{node:i}=e,o=this.isExpandable();if(o){const d=this.showingValueForOpenedParent?!0:i.expanded;this.comp.setExpandedDisplayed(d),this.comp.setContractedDisplayed(!d)}else this.comp.setExpandedDisplayed(!1),this.comp.setContractedDisplayed(!1);const r=s.isPivotMode(),n=r&&t.leafGroup,l=o&&!n,a=i.footer&&i.level===-1;this.comp.addOrRemoveCssClass("ag-cell-expandable",l),this.comp.addOrRemoveCssClass("ag-row-group",l),r?this.comp.addOrRemoveCssClass("ag-pivot-leaf-group",!!n):a||this.comp.addOrRemoveCssClass("ag-row-group-leaf-indent",!l)}onRowNodeIsExpandableChanged(){this.showExpandAndContractIcons(),this.setIndent(),this.refreshAriaExpanded()}setupIndent(){const e=this.params.node;this.params.suppressPadding||(this.addManagedListeners(e,{uiLevelChanged:this.setIndent.bind(this)}),this.setIndent())}setIndent(){if(this.gos.get("groupHideOpenParents"))return;const e=this.params,t=e.node,s=!!e.colDef,i=this.gos.get("treeData"),r=!s||i||e.colDef.showRowGroup===!0?t.uiLevel:0;this.indentClass&&this.comp.addOrRemoveCssClass(this.indentClass,!1),this.indentClass="ag-row-group-indent-"+r,this.comp.addOrRemoveCssClass(this.indentClass,!0),this.eGui.style.setProperty("--ag-indentation-level",String(r))}addFullWidthRowDraggerIfNeeded(){if(!this.params.fullWidth||!this.params.rowDrag)return;const e=new so(()=>this.params.value,this.params.node);this.createManagedBean(e),this.eGui.insertAdjacentElement("afterbegin",e.getGui())}isUserWantsSelected(){const e=this.params.checkbox;return typeof e=="function"||e===!0}addCheckboxIfNeeded(){const e=this.displayedGroupNode,t=this.isUserWantsSelected()&&!e.footer&&!e.rowPinned&&!e.detail;if(t){const s=new Pd;this.createBean(s),s.init({rowNode:this.params.node,column:this.params.column,overrides:{isVisible:this.params.checkbox,callbackParams:this.params,removeHidden:!0}}),this.eCheckbox.appendChild(s.getGui()),this.addDestroyFunc(()=>{this.eCheckbox.removeChild(s.getGui()),this.destroyBean(s)})}this.comp.setCheckboxVisible(t)}onKeyDown(e){!(e.key===S.ENTER)||this.params.suppressEnterExpand||this.params.column&&this.params.column.isCellEditable(this.params.node)||this.onExpandOrContract(e)}onCellDblClicked(e){if(ht(e))return;rr(this.eExpanded,e)||rr(this.eContracted,e)||this.onExpandOrContract(e)}},ay=`<span class="ag-cell-wrapper"> 214 <span class="ag-group-expanded" data-ref="eExpanded"></span> 215 <span class="ag-group-contracted" data-ref="eContracted"></span> 216 <span class="ag-group-checkbox ag-invisible" data-ref="eCheckbox"></span> 217 <span class="ag-group-value" data-ref="eValue"></span> 218 <span class="ag-group-child-count" data-ref="eChildCount"></span> 219 </span>`,pl=class extends O{constructor(){super(ay),this.eExpanded=P,this.eContracted=P,this.eCheckbox=P,this.eValue=P,this.eChildCount=P}init(t){const s={setInnerRenderer:(n,l)=>this.setRenderDetails(n,l),setChildCount:n=>this.eChildCount.textContent=n,addOrRemoveCssClass:(n,l)=>this.addOrRemoveCssClass(n,l),setContractedDisplayed:n=>H(this.eContracted,n),setExpandedDisplayed:n=>H(this.eExpanded,n),setCheckboxVisible:n=>this.eCheckbox.classList.toggle("ag-invisible",!n)},i=this.createManagedBean(new uc),o=!t.colDef,r=this.getGui();i.init(s,r,this.eCheckbox,this.eExpanded,this.eContracted,this.constructor,t),o&&he(r,i.getCellAriaRole())}setRenderDetails(t,s){if(t){const i=t.newAgStackInstance();if(i==null)return;i.then(o=>{if(!o)return;const r=()=>this.destroyBean(o);this.isAlive()?(this.eValue.appendChild(o.getGui()),this.addDestroyFunc(r)):r()})}else this.eValue.innerText=s}destroy(){this.destroyBean(this.innerCellRenderer),super.destroy()}refresh(){return!1}},dy="ROOT_NODE_ID",$o=0,cy=class{constructor(e,t,s,i,o,r){this.nextId=0,this.rowCountReady=!1,this.allNodesMap={},this.rootNode=e,this.gos=t,this.eventService=s,this.funcColsService=i,this.beans=r,this.selectionService=o,this.rootNode.group=!0,this.rootNode.level=-1,this.rootNode.id=dy,this.rootNode.allLeafChildren=[],this.rootNode.childrenAfterGroup=[],this.rootNode.childrenAfterSort=[],this.rootNode.childrenAfterAggFilter=[],this.rootNode.childrenAfterFilter=[]}getCopyOfNodesMap(){return go(this.allNodesMap)}getRowNode(e){return this.allNodesMap[e]}setRowData(e){if(typeof e=="string"){R("rowData must be an array.");return}this.rowCountReady=!0,this.dispatchRowDataUpdateStartedEvent(e);const t=this.rootNode,s=this.rootNode.sibling;t.childrenAfterFilter=null,t.childrenAfterGroup=null,t.childrenAfterAggFilter=null,t.childrenAfterSort=null,t.childrenMapped=null,t.updateHasChildren(),this.nextId=0,this.allNodesMap={},e?t.allLeafChildren=e.map((i,o)=>this.createNode(i,this.rootNode,$o,o)):(t.allLeafChildren=[],t.childrenAfterGroup=[]),s&&(s.childrenAfterFilter=t.childrenAfterFilter,s.childrenAfterGroup=t.childrenAfterGroup,s.childrenAfterAggFilter=t.childrenAfterAggFilter,s.childrenAfterSort=t.childrenAfterSort,s.childrenMapped=t.childrenMapped,s.allLeafChildren=t.allLeafChildren)}updateRowData(e){this.rowCountReady=!0,this.dispatchRowDataUpdateStartedEvent(e.add);const t={rowNodeTransaction:{remove:[],update:[],add:[]},rowsInserted:!1},s=[];
219return this.executeRemove(e,t,s),this.executeUpdate(e,t,s),this.executeAdd(e,t),this.updateSelection(s,"rowDataChanged"),t}updateRowOrderFromRowData(e){const t=this.rootNode.allLeafChildren,s=(t==null?void 0:t.length)??0,i=new Map;let o=-1,r=-1;for(let n=0;n<s;++n){const l=t[n],a=l.data;a!==e[n]&&(r<0&&(o=n),r=n,i.set(a,l))}if(o<0)return!1;for(let n=o;n<=r;++n){const l=i.get(e[n]);l!==void 0&&(t[n]=l,l.sourceRowIndex=n)}return!0}isRowCountReady(){return this.rowCountReady}dispatchRowDataUpdateStartedEvent(e){this.eventService.dispatchEvent({type:"rowDataUpdateStarted",firstRowData:e!=null&&e.length?e[0]:null})}updateSelection(e,t){const s=e.length>0;s&&this.selectionService.setNodesSelected({newValue:!1,nodes:e,suppressFinishActions:!0,source:t}),this.selectionService.updateGroupsFromChildrenSelections(t),s&&this.eventService.dispatchEvent({type:"selectionChanged",source:t})}executeAdd(e,t){const s=e.add;if(Re(s))return;const i=this.rootNode.allLeafChildren;let o=i.length;if(typeof e.addIndex=="number"&&(o=this.sanitizeAddIndex(e.addIndex),o>0&&this.gos.get("treeData")))for(let a=0;a<i.length;a++){const d=i[a];if((d==null?void 0:d.rowIndex)==o-1){o=a+1;break}}const r=s.map((l,a)=>this.createNode(l,this.rootNode,$o,o+a));if(o<i.length){const l=i.slice(0,o),a=i.slice(o,i.length),d=l.length+r.length;for(let c=0,u=a.length;c<u;++c)a[c].sourceRowIndex=d+c;this.rootNode.allLeafChildren=[...l,...r,...a],t.rowsInserted=!0}else this.rootNode.allLeafChildren=i.concat(r);const n=this.rootNode.sibling;n&&(n.allLeafChildren=i),t.rowNodeTransaction.add=r}sanitizeAddIndex(e){var s;const t=((s=this.rootNode.allLeafChildren)==null?void 0:s.length)??0;return e<0||e>=t||Number.isNaN(e)?t:Math.ceil(e)}executeRemove(e,{rowNodeTransaction:t},s){var n,l;const{remove:i}=e;if(Re(i))return;const o={};i.forEach(a=>{const d=this.lookupRowNode(a);d&&(d.isSelected()&&s.push(d),d.clearRowTopAndRowIndex(),o[d.id]=!0,delete this.allNodesMap[d.id],t.remove.push(d))}),this.rootNode.allLeafChildren=((n=this.rootNode.allLeafChildren)==null?void 0:n.filter(a=>!o[a.id]))??null,(l=this.rootNode.allLeafChildren)==null||l.forEach((a,d)=>{a.sourceRowIndex=d});const r=this.rootNode.sibling;r&&(r.allLeafChildren=this.rootNode.allLeafChildren)}executeUpdate(e,{rowNodeTransaction:t},s){const{update:i}=e;Re(i)||i.forEach(o=>{const r=this.lookupRowNode(o);r&&(r.updateData(o),!r.selectable&&r.isSelected()&&s.push(r),this.setMasterForRow(r,o,$o,!1),t.update.push(r))})}lookupRowNode(e){var i;const t=Tt(this.gos);let s;if(t){const o=t({data:e,level:0});if(s=this.allNodesMap[o],!s)return _(`could not find row id=${o}, data item was not found for this id`),null}else if(s=(i=this.rootNode.allLeafChildren)==null?void 0:i.find(o=>o.data===e),!s)return _("could not find data item as object was not found",e),_("Consider using getRowId to help the Grid find matching row data"),null;return s||null}createNode(e,t,s,i){const o=new qe(this.beans);return o.sourceRowIndex=i,o.group=!1,this.setMasterForRow(o,e,s,!0),t&&(o.parent=t),o.level=s,o.setDataAndId(e,this.nextId.toString()),this.allNodesMap[o.id]&&R(`duplicate node id '${o.id}' detected from getRowId callback, this could cause issues in your grid.`),this.allNodesMap[o.id]=o,this.nextId++,o}setMasterForRow(e,t,s,i){if(this.gos.get("treeData"))e.setMaster(!1),i&&(e.expanded=!1);else{if(this.gos.get("masterDetail")){const n=this.gos.get("isRowMaster");n?e.setMaster(n(t)):e.setMaster(!0)}else e.setMaster(!1);if(i){const n=this.funcColsService.getRowGroupColumns(),l=n?n.length:0,a=s+l;e.expanded=e.master?this.isExpanded(a):!1}}}isExpanded(e){const t=this.gos.get("groupDefaultExpanded");return t===-1?!0:e<t}},uy=class extends b{constructor(){super(...arguments),this.beanName="rowModel",this.onRowHeightChanged_debounced=Me(this.onRowHeightChanged.bind(this),100),this.rowsToDisplay=[],this.hasStarted=!1,this.shouldSkipSettingDataOnStart=!1,this.isRefreshingModel=!1,this.rowCountReady=!1}wireBeans(e){this.beans=e,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.selectionService=e.selectionService,this.valueCache=e.valueCache,this.environment=e.environment,this.filterStage=e.filterStage,this.sortStage=e.sortStage,this.flattenStage=e.flattenStage,this.groupStage=e.groupStage,this.aggregationStage=e.aggregationStage,this.pivotStage=e.pivotStage,this.filterAggregatesStage=e.filterAggregatesStage}postConstruct(){const e=this.refreshModel.bind(this,{step:j.EVERYTHING}),t=!this.gos.get("suppressAnimationFrame"),s=this.refreshModel.bind(this,{step:j.EVERYTHING,afterColumnsChanged:!0,keepRenderedRows:!0,animate:t});this.addManagedEventListeners({newColumnsLoaded:s,columnRowGroupChanged:e,columnValueChanged:this.onValueChanged.bind(this),columnPivotChanged:this.refreshModel.bind(this,{step:j.PIVOT}),filterChanged:this.onFilterChanged.bind(this),sortChanged:this.onSortChanged.bind(this),columnPivotModeChanged:e,gridStylesChanged:this.onGridStylesChanges.bind(this),gridReady:this.onGridReady.bind(this)}),this.addPropertyListeners(),this.rootNode=new qe(this.beans),this.nodeManager=new cy(this.rootNode,this.gos,this.eventService,this.funcColsService,this.selectionService,this.beans)}addPropertyListeners(){const e=new Set(["treeData","masterDetail"]),t=new Set(["groupDefaultExpanded","groupAllowUnbalanced","initialGroupOrderComparator","groupHideOpenParents","groupDisplayType"]),s=new Set(["excludeChildrenWhenTreeDataFiltering"]),i=new Set(["removePivotHeaderRowWhenSingleValueColumn","pivotRowTotals","pivotColumnGroupTotals","suppressExpandablePivotGroups"]),o=new Set(["getGroupRowAgg","alwaysAggregateAtRootLevel","groupIncludeTotalFooter","suppressAggFilteredOnly","grandTotalRow"]),r=new Set(["postSortRows","groupDisplayType","accentedSort"]),n=new Set([]),l=new Set(["groupRemoveSingleChildren","groupRemoveLowestSingleChildren","groupIncludeFooter","groupTotalRow"]),a=[...e,...t,...s,...i,...i,...o,...r,...n,...l];this.addManagedPropertyListeners(a,d=>{var h;const c=(h=d.changeSet)==null?void 0:h.properties;if(!c)return;const u=p=>c.some(g=>p.has(g));if(u(e)){this.setRowData(this.rootNode.allLeafChildren.map(p=>p.data));return}if(u(t)){this.refreshModel({step:j.EVERYTHING});return}if(u(s)){this.refreshModel({step:j.FILTER});return}if(u(i)){this.refreshModel({step:j.PIVOT});return}if(u(o)){this.refreshModel({step:j.AGGREGATE});return}if(u(r)){this.refreshModel({step:j.SORT});return}if(u(n)){this.refreshModel({step:j.FILTER_AGGREGATES});return}u(l)&&this.refreshModel({step:j.MAP})}),this.addManagedPropertyListener("rowHeight",()=>this.resetRowHeights())}start(){this.hasStarted=!0,this.shouldSkipSettingDataOnStart?this.dispatchUpdateEventsAndRefresh():this.setInitialData()}setInitialData(){const e=this.gos.get("rowData");e&&(this.shouldSkipSettingDataOnStart=!0,this.setRowData(e))}ensureRowHeightsValid(e,t,s,i){let o,r=!1;do{o=!1;const n=this.getRowIndexAtPixel(e),l=this.getRowIndexAtPixel(t),a=Math.max(n,s),d=Math.min(l,i);for(let c=a;c<=d;c++){const u=this.getRow(c);if(u.rowHeightEstimated){const h=Ge(this.gos,u);u.setRowHeight(h.height),o=!0,r=!0}}o&&this.setRowTopAndRowIndex()}while(o);return r}setRowTopAndRowIndex(){const e=this.environment.getDefaultRowHeight();let t=0;const s=new Set,i=De(this.gos,"normal");for(let o=0;o<this.rowsToDisplay.length;o++){const r=this.rowsToDisplay[o];if(r.id!=null&&s.add(r.id),r.rowHeight==null){const n=Ge(this.gos,r,i,e);r.setRowHeight(n.height,n.estimated)}r.setRowTop(t),r.setRowIndex(o),t+=r.rowHeight}return s}clearRowTopAndRowIndex(e,t){const s=e.isActive(),i=r=>{r&&r.id!=null&&!t.has(r.id)&&r.clearRowTopAndRowIndex()},o=r=>{if(i(r),i(r.detailNode),i(r.sibling),r.hasChildren()&&r.childrenAfterGroup){const n=r.level==-1;s&&!n&&!r.expanded||r.childrenAfterGroup.forEach(o)}};o(this.rootNode)}ensureRowsAtPixel(e,t,s=0){const i=this.getRowIndexAtPixel(t),o=this.getRow(i),r=!this.gos.get("suppressAnimationFrame");
219if(o===e[0])return!1;const n=this.rootNode.allLeafChildren;return e.forEach(l=>{ke(n,l)}),e.forEach((l,a)=>{Ls(n,l,Math.max(i+s,0)+a)}),e.forEach((l,a)=>{l.sourceRowIndex=a}),this.refreshModel({step:j.EVERYTHING,keepRenderedRows:!0,keepEditingRows:!0,animate:r,rowNodesOrderChanged:!0}),!0}highlightRowAtPixel(e,t){const s=t!=null?this.getRowIndexAtPixel(t):null,i=s!=null?this.getRow(s):null;if(!i||!e||t==null){this.clearHighlightedRow();return}const o=this.getHighlightPosition(t,i),r=this.isHighlightingCurrentPosition(e,i,o),n=this.lastHighlightedRow!=null&&this.lastHighlightedRow!==i;(r||n)&&(this.clearHighlightedRow(),r)||(i.setHighlighted(o),this.lastHighlightedRow=i)}getHighlightPosition(e,t){if(!t){const o=this.getRowIndexAtPixel(e);if(t=this.getRow(o||0),!t)return Zs.Below}const{rowTop:s,rowHeight:i}=t;return e-s<i/2?Zs.Above:Zs.Below}getLastHighlightedRowNode(){return this.lastHighlightedRow}isHighlightingCurrentPosition(e,t,s){if(e===t)return!0;const i=s===Zs.Above?-1:1;return this.getRow(t.rowIndex+i)===e}clearHighlightedRow(){this.lastHighlightedRow&&(this.lastHighlightedRow.setHighlighted(null),this.lastHighlightedRow=null)}isLastRowIndexKnown(){return!0}getRowCount(){return this.rowsToDisplay?this.rowsToDisplay.length:0}getTopLevelRowCount(){if(this.rowsToDisplay.length===0)return 0;if(this.rowsToDisplay&&this.rowsToDisplay[0]===this.rootNode)return 1;const t=this.rootNode.childrenAfterAggFilter,s=this.rootNode.sibling?1:0;return(t?t.length:0)+s}getTopLevelRowDisplayedIndex(e){if(this.rowsToDisplay&&this.rowsToDisplay[0]===this.rootNode)return e;let s=e;if(this.rowsToDisplay[0].footer){if(e===0)return 0;s-=1}const i=this.rowsToDisplay[this.rowsToDisplay.length-1],o=s>=this.rootNode.childrenAfterSort.length;if(i.footer&&o)return i.rowIndex;let r=this.rootNode.childrenAfterSort[s];if(this.gos.get("groupHideOpenParents"))for(;r.expanded&&r.childrenAfterSort&&r.childrenAfterSort.length>0;)r=r.childrenAfterSort[0];return r.rowIndex}getRowBounds(e){if(z(this.rowsToDisplay))return null;const t=this.rowsToDisplay[e];return t?{rowTop:t.rowTop,rowHeight:t.rowHeight}:null}onRowGroupOpened(){const e=bs(this.gos);this.refreshModel({step:j.MAP,keepRenderedRows:!0,animate:e})}onFilterChanged(e){if(e.afterDataChange)return;const t=bs(this.gos),i=e.columns.length===0||e.columns.some(o=>o.isPrimary())?j.FILTER:j.FILTER_AGGREGATES;this.refreshModel({step:i,keepRenderedRows:!0,animate:t})}onSortChanged(){const e=bs(this.gos);this.refreshModel({step:j.SORT,keepRenderedRows:!0,animate:e,keepEditingRows:!0})}getType(){return"clientSide"}onValueChanged(){this.columnModel.isPivotActive()?this.refreshModel({step:j.PIVOT}):this.refreshModel({step:j.AGGREGATE})}createChangePath(e){const t=Re(e),s=new Fo(!1,this.rootNode);return t&&s.setInactive(),s}isSuppressModelUpdateAfterUpdateTransaction(e){if(!this.gos.get("suppressModelUpdateAfterUpdateTransaction")||e.rowNodeTransactions==null)return!1;const t=e.rowNodeTransactions.filter(i=>i.add!=null&&i.add.length>0||i.remove!=null&&i.remove.length>0);return t==null||t.length==0}buildRefreshModelParams(e){let t=j.EVERYTHING;const s={everything:j.EVERYTHING,group:j.EVERYTHING,filter:j.FILTER,map:j.MAP,aggregate:j.AGGREGATE,filter_aggregates:j.FILTER_AGGREGATES,sort:j.SORT,pivot:j.PIVOT,nothing:j.NOTHING};if(E(e)&&(t=s[e]),z(t)){_(`invalid step ${e}, available steps are ${Object.keys(s).join(", ")}`);return}const i=!this.gos.get("suppressAnimationFrame");return{step:t,keepRenderedRows:!0,keepEditingRows:!0,animate:i}}refreshModel(e){if(!this.hasStarted||this.isRefreshingModel||this.columnModel.isChangeEventsDispatching())return;const t=typeof e=="object"&&"step"in e?e:this.buildRefreshModelParams(e);if(!t||this.isSuppressModelUpdateAfterUpdateTransaction(t))return;const s=this.createChangePath(t.rowNodeTransactions);switch(this.isRefreshingModel=!0,t.step){case j.EVERYTHING:this.doRowGrouping(t.rowNodeTransactions,s,!!t.rowNodesOrderChanged,!!t.afterColumnsChanged);case j.FILTER:this.doFilter(s);case j.PIVOT:this.doPivot(s);case j.AGGREGATE:this.doAggregate(s);case j.FILTER_AGGREGATES:this.doFilterAggregates(s);case j.SORT:this.doSort(t.rowNodeTransactions,s);case j.MAP:this.doRowsToDisplay()}const i=this.setRowTopAndRowIndex();this.clearRowTopAndRowIndex(s,i),this.isRefreshingModel=!1,this.eventService.dispatchEvent({type:"modelUpdated",animate:t.animate,keepRenderedRows:t.keepRenderedRows,newD
219ata:t.newData,newPage:!1,keepUndoRedoStack:t.keepUndoRedoStack})}isEmpty(){const e=z(this.rootNode.allLeafChildren)||this.rootNode.allLeafChildren.length===0;return z(this.rootNode)||e||!this.columnModel.isReady()}isRowsToRender(){return E(this.rowsToDisplay)&&this.rowsToDisplay.length>0}getNodesInRangeForSelection(e,t){let s=!1,i=!1;const o=[],r=It(this.gos);return this.forEachNodeAfterFilterAndSort(n=>{if(i)return;if(s&&(n===t||n===e)&&(i=!0,n.group&&r)){o.push(...n.allLeafChildren);return}if(!s){if(n!==t&&n!==e)return;s=!0}if(!n.group||!r){o.push(n);return}}),o}setDatasource(e){_("should never call setDatasource on clientSideRowController")}getTopLevelNodes(){return this.rootNode?this.rootNode.childrenAfterGroup:null}getRootNode(){return this.rootNode}getRow(e){return this.rowsToDisplay[e]}isRowPresent(e){return this.rowsToDisplay.indexOf(e)>=0}getRowIndexAtPixel(e){if(this.isEmpty()||this.rowsToDisplay.length===0)return-1;let t=0,s=this.rowsToDisplay.length-1;if(e<=0)return 0;if(W(this.rowsToDisplay).rowTop<=e)return this.rowsToDisplay.length-1;let o=-1,r=-1;for(;;){const n=Math.floor((t+s)/2),l=this.rowsToDisplay[n];if(this.isRowInPixel(l,e)||(l.rowTop<e?t=n+1:l.rowTop>e&&(s=n-1),o===t&&r===s))return n;o=t,r=s}}isRowInPixel(e,t){const s=e.rowTop,i=e.rowTop+e.rowHeight;return s<=t&&i>t}forEachLeafNode(e){this.rootNode.allLeafChildren&&this.rootNode.allLeafChildren.forEach((t,s)=>e(t,s))}forEachNode(e,t=!1){this.recursivelyWalkNodesAndCallback({nodes:[...this.rootNode.childrenAfterGroup||[]],callback:e,recursionType:0,index:0,includeFooterNodes:t})}forEachNodeAfterFilter(e,t=!1){this.recursivelyWalkNodesAndCallback({nodes:[...this.rootNode.childrenAfterAggFilter||[]],callback:e,recursionType:1,index:0,includeFooterNodes:t})}forEachNodeAfterFilterAndSort(e,t=!1){this.recursivelyWalkNodesAndCallback({nodes:[...this.rootNode.childrenAfterSort||[]],callback:e,recursionType:2,index:0,includeFooterNodes:t})}forEachPivotNode(e,t=!1){this.recursivelyWalkNodesAndCallback({nodes:[this.rootNode],callback:e,recursionType:3,index:0,includeFooterNodes:t})}recursivelyWalkNodesAndCallback(e){const{nodes:t,callback:s,recursionType:i,includeFooterNodes:o}=e;let{index:r}=e;const n=l=>{var p;const a=(p=t[0])==null?void 0:p.parent;if(!a)return;const d=o&&ho(this.gos),c=As(this.gos),u=o&&c({node:a});if(a===this.rootNode){d===l&&(a.createFooter(),s(a.sibling,r++));return}u===l&&(a.createFooter(),s(a.sibling,r++))};n("top");for(let l=0;l<t.length;l++){const a=t[l];if(s(a,r++),a.hasChildren()&&!a.footer){let d=null;switch(i){case 0:d=a.childrenAfterGroup;break;case 1:d=a.childrenAfterAggFilter;break;case 2:d=a.childrenAfterSort;break;case 3:d=a.leafGroup?null:a.childrenAfterSort;break}d&&(r=this.recursivelyWalkNodesAndCallback({nodes:[...d],callback:s,recursionType:i,index:r,includeFooterNodes:o}))}}return n("bottom"),r}doAggregate(e){var t;(t=this.aggregationStage)==null||t.execute({rowNode:this.rootNode,changedPath:e})}doFilterAggregates(e){this.filterAggregatesStage?this.filterAggregatesStage.execute({rowNode:this.rootNode,changedPath:e}):this.rootNode.childrenAfterAggFilter=this.rootNode.childrenAfterFilter}expandOrCollapseAll(e){const t=this.gos.get("treeData"),s=this.columnModel.isPivotActive(),i=o=>{o&&o.forEach(r=>{const n=()=>{r.expanded=e,i(r.childrenAfterGroup)};if(t){E(r.childrenAfterGroup)&&n();return}if(s){!r.leafGroup&&n();return}r.group&&n()})};this.rootNode&&i(this.rootNode.childrenAfterGroup),this.refreshModel({step:j.MAP}),this.eventService.dispatchEvent({type:"expandOrCollapseAll",source:e?"expandAll":"collapseAll"})}doSort(e,t){this.sortStage.execute({rowNode:this.rootNode,rowNodeTransactions:e,changedPath:t})}doRowGrouping(e,t,s,i){if(this.groupStage)e?this.groupStage.execute({rowNode:this.rootNode,rowNodeTransactions:e,rowNodesOrderChanged:s,changedPath:t}):this.groupStage.execute({rowNode:this.rootNode,changedPath:t,afterColumnsChanged:i}),It(this.gos)&&this.selectionService.updateGroupsFromChildrenSelections("rowGroupChanged",t)&&this.eventService.dispatchEvent({type:"selectionChanged",source:"rowGroupChanged"});else{const o=this.rootNode,r=o.sibling;o.childrenAfterGroup=o.allLeafChildren,r&&(r.childrenAfterGroup=o.childrenAfterGroup),this.rootNode.updateHasChildren()}this.nodeManager.isRowCountReady()&&(this.rowCountReady=!0,this.eventService.dispatchEventOnce({type:"rowCountReady"}))}doFilter(e){this.filterStage.execute({rowNode:this.rootNode,changedPath:e})}doPivot(e){var t;(t=this.pivotStage)==null||t.execute({rowNode:this.rootNode,changedPath:e})}getNodeManager(){return this.nodeManager}getRowNode(e){if(typeof e=="string"&&e.indexOf(qe.ID_PREFIX_ROW_GROUP)==0){let s;return this.forEachNode(i=>{i.id===e&&(s=i)}),s}return this.nodeManager.getRowNode(e)}setRowData(e){this.selectionService.reset("rowDataChanged"),this.nodeManager.setRowData(e),this.hasStarted&&this.dispatchUpdateEventsAndRefresh()}dispatchUpdateEventsAndRefresh(){this.eventService.dispatchEvent({type:"rowDataUpdated"}),this.refreshModel({step:j.EVERYTHING,newData:!0})}batchUpdateRowData(e,t){if(this.applyAsyncTransactionsTimeout==null){this.rowDataTransactionBatch=[];const s=this.gos.get("asyncTransactionWaitMillis");this.applyAsyncTransactionsTimeout=window.setTimeout(()=>{this.isAlive()&&this.executeBatchUpdateRowData()},s)}this.rowDataTransactionBatch.push({rowDataTransaction:e,callback:t})}flushAsyncTransactions(){this.applyAsyncTransactionsTimeout!=null&&(clearTimeout(this.applyAsyncTransactionsTimeout),this.executeBatchUpdateRowData())}executeBatchUpdateRowData(){var i;this.valueCache.onDataChanged();const e=[],t=[];let s=!1;
219(i=this.rowDataTransactionBatch)==null||i.forEach(o=>{const{rowNodeTransaction:r,rowsInserted:n}=this.nodeManager.updateRowData(o.rowDataTransaction);n&&(s=!0),t.push(r),o.callback&&e.push(o.callback.bind(null,r))}),this.commonUpdateRowData(t,s),e.length>0&&window.setTimeout(()=>{e.forEach(o=>o())},0),t.length>0&&this.eventService.dispatchEvent({type:"asyncTransactionsFlushed",results:t}),this.rowDataTransactionBatch=null,this.applyAsyncTransactionsTimeout=void 0}updateRowData(e){this.valueCache.onDataChanged();const{rowNodeTransaction:t,rowsInserted:s}=this.nodeManager.updateRowData(e);return this.commonUpdateRowData([t],s),t}afterImmutableDataChange(e,t){this.commonUpdateRowData([e],t)}commonUpdateRowData(e,t){if(!this.hasStarted)return;const s=!this.gos.get("suppressAnimationFrame");this.eventService.dispatchEvent({type:"rowDataUpdated"}),this.refreshModel({step:j.EVERYTHING,rowNodeTransactions:e,rowNodesOrderChanged:t,keepRenderedRows:!0,keepEditingRows:!0,animate:s})}doRowsToDisplay(){this.rowsToDisplay=this.flattenStage.execute({rowNode:this.rootNode})}onRowHeightChanged(){this.refreshModel({step:j.MAP,keepRenderedRows:!0,keepEditingRows:!0,keepUndoRedoStack:!0})}onRowHeightChangedDebounced(){this.onRowHeightChanged_debounced()}resetRowHeights(){const e=this.resetRowHeightsForAllRowNodes();this.rootNode.setRowHeight(this.rootNode.rowHeight,!0),this.rootNode.sibling&&this.rootNode.sibling.setRowHeight(this.rootNode.sibling.rowHeight,!0),e&&this.onRowHeightChanged()}resetRowHeightsForAllRowNodes(){let e=!1;return this.forEachNode(t=>{t.setRowHeight(t.rowHeight,!0);const s=t.detailNode;s&&s.setRowHeight(s.rowHeight,!0),t.sibling&&t.sibling.setRowHeight(t.sibling.rowHeight,!0),e=!0}),e}onGridStylesChanges(e){if(e.rowHeightChanged){if(this.columnModel.isAutoRowHeightActive())return;this.resetRowHeights()}}onGridReady(){this.hasStarted||this.setInitialData()}isRowDataLoaded(){return this.rowCountReady}destroy(){super.destroy(),this.clearHighlightedRow()}};function hy(e){e.expansionService.onGroupExpandedOrCollapsed()}function py(e,t){var s,i;(i=(s=e.rowModelHelperService)==null?void 0:s.getClientSideRowModel())==null||i.refreshModel(t)}function gy(e){var t,s;return((s=(t=e.rowModelHelperService)==null?void 0:t.getClientSideRowModel())==null?void 0:s.isEmpty())??!0}function fy(e,t){var s,i;(i=(s=e.rowModelHelperService)==null?void 0:s.getClientSideRowModel())==null||i.forEachLeafNode(t)}function my(e,t){var s,i;(i=(s=e.rowModelHelperService)==null?void 0:s.getClientSideRowModel())==null||i.forEachNodeAfterFilter(t)}function Cy(e,t){var s,i;(i=(s=e.rowModelHelperService)==null?void 0:s.getClientSideRowModel())==null||i.forEachNodeAfterFilterAndSort(t)}function vy(e){var t,s;if(e.columnModel.isAutoRowHeightActive()){R("calling gridApi.resetRowHeights() makes no sense when using Auto Row Height.");return}(s=(t=e.rowModelHelperService)==null?void 0:t.getClientSideRowModel())==null||s.resetRowHeights()}function Sy(e,t){return e.frameworkOverrides.wrapIncoming(()=>{var s,i;return(i=(s=e.rowModelHelperService)==null?void 0:s.getClientSideRowModel())==null?void 0:i.updateRowData(t)})}function wy(e,t,s){e.frameworkOverrides.wrapIncoming(()=>{var i,o;return(o=(i=e.rowModelHelperService)==null?void 0:i.getClientSideRowModel())==null?void 0:o.batchUpdateRowData(t,s)})}function yy(e){e.frameworkOverrides.wrapIncoming(()=>{var t,s;return(s=(t=e.rowModelHelperService)==null?void 0:t.getClientSideRowModel())==null?void 0:s.flushAsyncTransactions()})}function Ry(e){return e.selectionService.getBestCostNodeSelection()}var by=class extends b{constructor(){super(...arguments),this.beanName="filterStage"}wireBeans(e){this.filterManager=e.filterManager}execute(e){const{changedPath:t}=e;this.filter(t)}filter(e){var s;const t=!!((s=this.filterManager)!=null&&s.isChildFilterPresent());this.filterNodes(t,e)}filterNodes(e,t){const s=(i,o)=>{i.hasChildren()&&e&&!o?i.childrenAfterFilter=i.childrenAfterGroup.filter(r=>{const n=r.childrenAfterFilter&&r.childrenAfterFilter.length>0,l=r.data&&this.filterManager.doesRowPassFilter({rowNode:r});return n||l}):i.childrenAfterFilter=i.childrenAfterGroup,i.sibling&&(i.sibling.childrenAfterFilter=i.childrenAfterFilter)};if(this.doingTreeDataFiltering()){const i=(r,n)=>{if(r.childrenAfterGroup)for(let l=0;l<r.childrenAfterGroup.length;l++){const a=r.childrenAfterGroup[l],d=n||this.filterManager.doesRowPassFilter({rowNode:a});a.childrenAfterGroup?i(r.childrenAfterGroup[l],d):s(a,d)}s(r,n)},o=r=>i(r,!1);t.executeFromRootNode(o)}else{const i=o=>s(o,!1);t.forEachChangedNodeDepthFirst(i,!0)}}doingTreeDataFiltering(){return this.gos.get("treeData")&&!this.gos.get("excludeChildrenWhenTreeDataFiltering")}},Fy=class extends b{constructor(){super(...arguments),this.beanName="flattenStage"}wireBeans(e){this.beans=e,this.columnModel=e.columnModel}execute(e){const t=e.rowNode,s=[],i=this.columnModel.isPivotMode(),o=i&&t.leafGroup,r=o?[t]:t.childrenAfterSort,n=this.getFlattenDetails();this.recursivelyAddToRowsToDisplay(n,r,s,i,0);const l=s.length>0;if(!o&&l&&n.grandTotalRow){t.createFooter();const d=n.grandTotalRow==="top";this.addRowNodeToRowsToDisplay(n,t.sibling,s,0,d)}return s}getFlattenDetails(){const e=this.gos.get("groupRemoveSingleChildren");return{groupRemoveLowestSingleChildren:!e&&this.gos.get("groupRemoveLowestSingleChildren"),groupRemoveSingleChildren:e,isGroupMultiAutoColumn:Ir(this.gos),hideOpenParents:this.gos.get("groupHideOpenParents"),grandTotalRow:ho(this.gos),groupTotalRow:As(this.gos)}}recursivelyAddToRowsToDisplay(e,t,s,i,o){if(!Re(t))for(let r=0;r<t.length;r++){const n=t[r],l=n.hasChildren(),a=i&&!l,d=e.groupRemoveSingleChildren&&l&&n.childrenAfterGroup.length===1,c=e.groupRemoveLowestSingleChildren&&l&&n.leafGroup&&n.childrenAfterGroup.length===1,u=i&&n.leafGroup,h=e.hideOpenParents&&n.expanded&&!n.master&&!u;if(!a&&!h&&!d&&!c&&this.addRowNodeToRowsToDisplay(e,n,s,o),!(i&&n.leafGroup)){if
219(l){const g=d||c;if(n.expanded||g){const f=e.groupTotalRow({node:n});f||n.destroyFooter();const m=g?o:o+1;f==="top"&&(n.createFooter(),this.addRowNodeToRowsToDisplay(e,n.sibling,s,m)),this.recursivelyAddToRowsToDisplay(e,n.childrenAfterSort,s,i,m),f==="bottom"&&(n.createFooter(),this.addRowNodeToRowsToDisplay(e,n.sibling,s,m))}}else if(n.master&&n.expanded){const g=this.createDetailNode(n);this.addRowNodeToRowsToDisplay(e,g,s,o)}}}}addRowNodeToRowsToDisplay(e,t,s,i,o){o?s.unshift(t):s.push(t),t.setUiLevel(e.isGroupMultiAutoColumn?0:i)}createDetailNode(e){if(E(e.detailNode))return e.detailNode;const t=new qe(this.beans);return t.detail=!0,t.selectable=!1,t.parent=e,E(e.id)&&(t.id="detail_"+e.id),t.data=e.data,t.level=e.level+1,e.detailNode=t,t}},Py=class extends b{constructor(){super(...arguments),this.beanName="immutableService"}wireBeans(e){this.rowModel=e.rowModel,this.selectionService=e.selectionService}postConstruct(){re(this.gos)&&(this.clientSideRowModel=this.rowModel,this.addManagedPropertyListener("rowData",()=>this.onRowDataUpdated()))}isActive(){const e=this.gos.exists("getRowId");return this.gos.get("resetRowDataOnUpdate")?!1:e}setRowData(e){const t=this.createTransactionForRowData(e);if(!t)return;const s=this.clientSideRowModel.getNodeManager(),{rowNodeTransaction:i,rowsInserted:o}=s.updateRowData(t);let r=!1;this.gos.get("suppressMaintainUnsortedOrder")||(r=s.updateRowOrderFromRowData(e)),this.clientSideRowModel.afterImmutableDataChange(i,r||o)}createTransactionForRowData(e){if(!re(this.gos))return _("ImmutableService only works with ClientSideRowModel"),null;const t=Tt(this.gos);if(t==null)return _("ImmutableService requires getRowId() callback to be implemented, your row data needs IDs!"),null;const s=this.clientSideRowModel.getNodeManager().getCopyOfNodesMap(),i=[],o=[],r=[];return E(e)&&e.forEach(n=>{const l=t({data:n,level:0}),a=s[l];a?(a.data!==n&&o.push(n),s[l]=void 0):r.push(n)}),Pe(s,(n,l)=>{l&&i.push(l.data)}),{remove:i,update:o,add:r}}onRowDataUpdated(){const e=this.gos.get("rowData");e&&(this.isActive()?this.setRowData(e):(this.selectionService.reset("rowDataChanged"),this.clientSideRowModel.setRowData(e)))}},Ey=class extends b{constructor(){super(...arguments),this.beanName="sortService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.rowNodeSorter=e.rowNodeSorter,this.showRowGroupColsService=e.showRowGroupColsService}sort(e,t,s,i,o,r){const n=this.gos.get("groupMaintainOrder"),l=this.columnModel.getCols().some(h=>h.isRowGroupActive());let a={};s&&i&&(a=this.calculateDirtyNodes(i));const d=this.columnModel.isPivotMode(),c=this.gos.getCallback("postSortRows"),u=h=>{var f;this.pullDownGroupDataForHideOpenParents(h.childrenAfterAggFilter,!0);const p=d&&h.leafGroup;if(n&&l&&!h.leafGroup&&!r){const m=(f=this.funcColsService.getRowGroupColumns())==null?void 0:f[h.level+1],v=(m==null?void 0:m.getSort())===null,y=h.childrenAfterAggFilter.slice(0);if(h.childrenAfterSort&&!v){const w={};h.childrenAfterSort.forEach((F,D)=>{w[F.id]=D}),y.sort((F,D)=>(w[F.id]??0)-(w[D.id]??0))}h.childrenAfterSort=y}else!t||p?h.childrenAfterSort=h.childrenAfterAggFilter.slice(0):s?h.childrenAfterSort=this.doDeltaSort(h,a,o,e):h.childrenAfterSort=this.rowNodeSorter.doFullSort(h.childrenAfterAggFilter,e);if(h.sibling&&(h.sibling.childrenAfterSort=h.childrenAfterSort),this.updateChildIndexes(h),c){const m={nodes:h.childrenAfterSort};c(m)}};o&&o.forEachChangedNodeDepthFirst(u),this.updateGroupDataForHideOpenParents(o)}calculateDirtyNodes(e){const t={},s=i=>{i&&i.forEach(o=>t[o.id]=!0)};return e&&e.forEach(i=>{s(i.add),s(i.update),s(i.remove)}),t}doDeltaSort(e,t,s,i){const o=e.childrenAfterAggFilter,r=e.childrenAfterSort;if(!r)return this.rowNodeSorter.doFullSort(o,i);const n={},l=[];o.forEach(u=>{t[u.id]||!s.canSkip(u)?l.push(u):n[u.id]=!0});const a=r.filter(u=>n[u.id]),d=(u,h)=>({currentPos:h,rowNode:u}),c=l.map(d).sort((u,h)=>this.rowNodeSorter.compareRowNodes(i,u,h));return this.mergeSortedArrays(i,c,a.map(d)).map(({rowNode:u})=>u)}mergeSortedArrays(e,t,s){const i=[];let o=0,r=0;for(;o<t.length&&r<s.length;)this.rowNodeSorter.compareRowNodes(e,t[o],s[r])<0?i.push(t[o++]):i.push(s[r++]);for(;o<t.length;)i.push(t[o++]);for(;r<s.length;)i.push(s[r++]);return i}updateChildIndexes(e){if(z(e.childrenAfterSort))return;const t=e.childrenAfterSort;for(let s=0;s<t.length;s++){const i=t[s],o=s===0,r=s===e.childrenAfterSort.length-1;i.setFirstChild(o),i.setLastChild(r),i.setChildIndex(s)}}updateGroupDataForHideOpenParents(e){if(!this.gos.get("groupHideOpenParents"))return;if(this.gos.get("treeData"))return R("The property hideOpenParents dose not work with Tree Data. This is because Tree Data has values at the group level, it doesn't make sense to hide them."),!1;const t=s=>{this.pullDownGroupDataForHideOpenParents(s.childrenAfterSort,!1),s.childrenAfterSort.forEach(i=>
219{i.hasChildren()&&t(i)})};e&&e.executeFromRootNode(s=>t(s))}pullDownGroupDataForHideOpenParents(e,t){!this.gos.get("groupHideOpenParents")||z(e)||e.forEach(s=>{var o;(((o=this.showRowGroupColsService)==null?void 0:o.getShowRowGroupCols())??[]).forEach(r=>{const n=r.getColDef().showRowGroup;if(typeof n!="string"){_("groupHideOpenParents only works when specifying specific columns for colDef.showRowGroup");return}const l=n,a=this.columnModel.getColDefCol(l);if(a!==s.rowGroupColumn)if(t)s.setGroupValue(r.getId(),void 0);else{const c=this.getFirstChildOfFirstChild(s,a);c&&s.setGroupValue(r.getId(),c.key)}})})}getFirstChildOfFirstChild(e,t){let s=e;for(;s;){const i=s.parent;if(i&&s.firstChild){if(i.rowGroupColumn===t)return i}else return null;s=i}return null}},My=class extends b{constructor(){super(...arguments),this.beanName="sortStage"}wireBeans(e){this.sortService=e.sortService,this.sortController=e.sortController}execute(e){const t=this.sortController.getSortOptions(),s=E(t)&&t.length>0,i=s&&E(e.rowNodeTransactions)&&this.gos.get("deltaSort"),o=t.some(r=>ct(this.gos)?r.column.isPrimary()&&r.column.isRowGroupActive():!!r.column.getColDef().showRowGroup);this.sortService.sort(t,s,i,e.rowNodeTransactions,e.changedPath,o)}},Cn="32.3.2",hc={version:Cn,moduleName:`${U.ClientSideRowModelModule}-core`,rowModel:"clientSide",beans:[uy,by,My,Fy,Ey,Py]},Dy={version:Cn,moduleName:`${U.ClientSideRowModelModule}-api`,beans:[nc],apiFunctions:{onGroupExpandedOrCollapsed:hy,refreshClientSideRowModel:py,isRowDataEmpty:gy,forEachLeafNode:fy,forEachNodeAfterFilter:my,forEachNodeAfterFilterAndSort:Cy,resetRowHeights:vy,applyTransaction:Sy,applyTransactionAsync:wy,flushAsyncTransactions:yy,getBestCostNodeSelection:Ry},dependantModules:[hc,lc]},jD={version:Cn,moduleName:U.ClientSideRowModelModule,dependantModules:[hc,Dy]},pc=class extends b{setBeans(e){this.beans=e}getFileName(e){const t=this.getDefaultFileExtension();return(e==null||!e.length)&&(e=this.getDefaultFileName()),e.indexOf(".")===-1?`${e}.${t}`:e}getData(e){const t=this.createSerializingSession(e);return this.beans.gridSerializer.serialize(t,e)}getDefaultFileName(){return`export.${this.getDefaultFileExtension()}`}},gc=class{constructor(e){this.groupColumns=[];const{columnModel:t,funcColsService:s,columnNameService:i,valueService:o,gos:r,processCellCallback:n,processHeaderCallback:l,processGroupHeaderCallback:a,processRowGroupCallback:d}=e;this.columnModel=t,this.funcColsService=s,this.columnNameService=i,this.valueService=o,this.gos=r,this.processCellCallback=n,this.processHeaderCallback=l,this.processGroupHeaderCallback=a,this.processRowGroupCallback=d}prepare(e){this.groupColumns=e.filter(t=>!!t.getColDef().showRowGroup)}extractHeaderValue(e){return this.getHeaderName(this.processHeaderCallback,e)??""}extractRowCellValue(e,t,s,i,o){const n=(!this.gos.get("groupHideOpenParents")||o.footer)&&this.shouldRenderGroupSummaryCell(o,e,t)?this.createValueForGroupNode(e,o):this.valueService.getValue(e,o);return this.processCell({accumulatedRowIndex:s,rowNode:o,column:e,value:n,processCellCallback:this.processCellCallback,type:i})}shouldRenderGroupSummaryCell(e,t,s){var n;if(!(e&&e.group))return!1;if(this.groupColumns.indexOf(t)!==-1){const l=(n=e.groupData)==null?void 0:n[t.getId()],a=this.gos.get("suppressGroupMaintainValueType");if(a&&l!=null||!a&&l!==void 0||Ue(this.gos)&&e.group)return!0;if(e.footer&&e.level===-1){const d=t.getColDef();return d==null||d.showRowGroup===!0||d.showRowGroup===this.funcColsService.getRowGroupColumns()[0].getId()}}const r=po(this.gos,this.columnModel.isPivotMode());return s===0&&r}getHeaderName(e,t){return e?e(this.gos.addGridCommonParams({column:t})):this.columnNameService.getDisplayNameForColumn(t,"csv",!0)}createValueForGroupNode(e,t){if(this.processRowGroupCallback)return this.processRowGroupCallback(this.gos.addGridCommonParams({column:e,node:t}));const s=this.gos.get("treeData"),i=this.gos.get("suppressGroupMaintainValueType"),o=a=>{var c;if(s||i)return a.key;const d=(c=a.groupData)==null?void 0:c[e.getId()];return!d||!a.rowGroupColumn||a.rowGroupColumn.getColDef().useValueFormatterForExport===!1?d:this.valueService.formatValue(a.rowGroupColumn,a,d)??d},r=t.footer,n=[o(t)];if(!Ir(this.gos))for(;t.parent;)t=t.parent,n.push(o(t));const l=n.reverse().join(" -> ");return r?`Total ${l}`:l}processCell(e){const{accumulatedRowIndex:t,rowNode:s,column:i,value:o,processCellCallback:r,type:n}=e;return r?{value:r(this.gos.addGridCommonParams({accumulatedRowIndex:t,column:i,node:s,value:o,type:n,parseValue:l=>this.valueService.parseValue(i,s,l,this.valueService.getValue(i,s)),formatValue:l=>this.valueService.formatValue(i,s,l)??l}))??""}:i.getColDef().useValueFormatterForExport!==!1?{value:o??"",valueFormatted:this.valueService.formatValue(i,s,o)}:{value:o??""}}},vn=class{static download(e,t){const s=document.defaultView||window;if(!s){R("There is no `window` associated with the current `document`");return}const i=document.createElement("a"),o=s.URL.createObjectURL(t);
219i.setAttribute("href",o),i.setAttribute("download",e),i.style.display="none",document.body.appendChild(i),i.dispatchEvent(new MouseEvent("click",{bubbles:!1,cancelable:!0,view:s})),document.body.removeChild(i),s.setTimeout(()=>{s.URL.revokeObjectURL(o)},0)}},gl=`\r 220`,xy=class extends gc{constructor(e){super(e),this.isFirstLine=!0,this.result="";const{suppressQuotes:t,columnSeparator:s}=e;this.suppressQuotes=t,this.columnSeparator=s}addCustomContent(e){e&&(typeof e=="string"?(/^\s*\n/.test(e)||this.beginNewLine(),e=e.replace(/\r?\n/g,gl),this.result+=e):e.forEach(t=>{this.beginNewLine(),t.forEach((s,i)=>{i!==0&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(s.data.value||""),s.mergeAcross&&this.appendEmptyCells(s.mergeAcross)})}))}onNewHeaderGroupingRow(){return this.beginNewLine(),{onColumn:this.onNewHeaderGroupingRowColumn.bind(this)}}onNewHeaderGroupingRowColumn(e,t,s,i){s!=0&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(t),this.appendEmptyCells(i)}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){t!=0&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(this.extractHeaderValue(e))}onNewBodyRow(){return this.beginNewLine(),{onColumn:this.onNewBodyRowColumn.bind(this)}}onNewBodyRowColumn(e,t,s){t!=0&&(this.result+=this.columnSeparator);const i=this.extractRowCellValue(e,t,t,"csv",s);this.result+=this.putInQuotes(i.valueFormatted??i.value)}putInQuotes(e){if(this.suppressQuotes)return e;if(e==null)return'""';let t;return typeof e=="string"?t=e:typeof e.toString=="function"?t=e.toString():(R("unknown value type during csv conversion"),t=""),'"'+t.replace(/"/g,'""')+'"'}parse(){return this.result}beginNewLine(){this.isFirstLine||(this.result+=gl),this.isFirstLine=!1}},Ay=class extends pc{constructor(){super(...arguments),this.beanName="csvCreator"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.gridSerializer=e.gridSerializer}postConstruct(){this.setBeans({gridSerializer:this.gridSerializer,gos:this.gos})}getMergedParams(e){const t=this.gos.get("defaultCsvExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){R("Export cancelled. Export is not allowed as per your configuration.");return}const t=this.getMergedParams(e),s=this.getData(t),i=new Blob(["\uFEFF",s],{type:"text/plain"}),o=typeof t.fileName=="function"?t.fileName(this.gos.getGridCommonParams()):t.fileName;vn.download(this.getFileName(o),i)}exportDataAsCsv(e){this.export(e)}getDataAsCsv(e,t=!1){const s=t?Object.assign({},e):this.getMergedParams(e);return this.getData(s)}getDefaultFileExtension(){return"csv"}createSerializingSession(e){const{columnModel:t,columnNameService:s,funcColsService:i,valueService:o,gos:r}=this,{processCellCallback:n,processHeaderCallback:l,processGroupHeaderCallback:a,processRowGroupCallback:d,suppressQuotes:c,columnSeparator:u}=e;return new xy({columnModel:t,columnNameService:s,funcColsService:i,valueService:o,gos:r,processCellCallback:n||void 0,processHeaderCallback:l||void 0,processGroupHeaderCallback:a||void 0,processRowGroupCallback:d||void 0,suppressQuotes:c||!1,columnSeparator:u||","})}isExportSuppressed(){return this.gos.get("suppressCsvExport")}};function Ty(e,t){var s;return(s=e.csvCreator)==null?void 0:s.getDataAsCsv(t)}function Iy(e,t){var s;(s=e.csvCreator)==null||s.exportDataAsCsv(t)}var Ds=(e=>(e[e.HEADER_GROUPING=0]="HEADER_GROUPING",e[e.HEADER=1]="HEADER",e[e.BODY=2]="BODY",e))(Ds||{}),Ly=class extends b{constructor(){super(...arguments),this.beanName="gridSerializer"}wireBeans(e){this.visibleColsService=e.visibleColsService,this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.rowModel=e.rowModel,this.pinnedRowModel=e.pinnedRowModel,this.selectionService=e.selectionService,this.rowNodeSorter=e.rowNodeSorter,this.sortController=e.sortController}serialize(e,t={}){const{allColumns:s,columnKeys:i,skipRowGroups:o}=t,r=this.getColumnsToExport(s,o,i);return ql(this.prepareSession(r),this.prependContent(t),this.exportColumnGroups(t,r),this.exportHeaders(t,r),this.processPinnedTopRows(t,r),this.processRows(t,r),this.processPinnedBottomRows(t,r),this.appendContent(t))(e).parse()}processRow(e,t,s,i){var v;const o=t.shouldRowBeSkipped||(()=>!1),r=this.gos.get("groupRemoveSingleChildren"),n=this.gos.get("groupRemoveLowestSingleChildren"),a=t.rowPositions!=null||!!t.onlySelected,d=this.gos.get("groupHideOpenParents")&&!a,c=this.columnModel.isPivotMode()?i.leafGroup:!i.group,u=!!i.footer,h=n&&i.leafGroup,p=i.allChildrenCount===1&&((v=i.childrenAfterGroup)==null?void 0:v.length)===1&&(r||h);if(!c&&!u&&(t.skipRowGroups||p||d)||t.onlySelected&&!i.isSelected()||t.skipPinnedTop&&i.rowPinned==="top"||t.skipPinnedBottom&&i.rowPinned==="bottom"||i.level===-1&&!c&&!u||o(this.gos.addGridCommonParams({node:i}
220)))return;const m=e.onNewBodyRow(i);if(s.forEach((y,w)=>{m.onColumn(y,w,i)}),t.getCustomContentBelowRow){const y=t.getCustomContentBelowRow(this.gos.addGridCommonParams({node:i}));y&&e.addCustomContent(y)}}appendContent(e){return t=>{const s=e.appendContent;return s&&t.addCustomContent(s),t}}prependContent(e){return t=>{const s=e.prependContent;return s&&t.addCustomContent(s),t}}prepareSession(e){return t=>(t.prepare(e),t)}exportColumnGroups(e,t){return s=>{if(!e.skipColumnGroupHeaders){const i=new na,o=this.visibleColsService.createGroups({columns:t,idCreator:i,pinned:null,isStandaloneStructure:!0});this.recursivelyAddHeaderGroups(o,s,e.processGroupHeaderCallback)}return s}}exportHeaders(e,t){return s=>{if(!e.skipColumnHeaders){const i=s.onNewHeaderRow();t.forEach((o,r)=>{i.onColumn(o,r,void 0)})}return s}}processPinnedTopRows(e,t){return s=>{const i=this.processRow.bind(this,s,e,t);return e.rowPositions?e.rowPositions.filter(o=>o.rowPinned==="top").sort((o,r)=>o.rowIndex-r.rowIndex).map(o=>this.pinnedRowModel.getPinnedTopRow(o.rowIndex)).forEach(i):this.pinnedRowModel.forEachPinnedRow("top",i),s}}processRows(e,t){return s=>{const i=this.rowModel,o=re(this.gos),r=Ue(this.gos),n=!o&&e.onlySelected,l=this.processRow.bind(this,s,e,t),{exportedRows:a="filteredAndSorted"}=e;if(e.rowPositions)e.rowPositions.filter(d=>d.rowPinned==null).sort((d,c)=>d.rowIndex-c.rowIndex).map(d=>i.getRow(d.rowIndex)).forEach(l);else if(this.columnModel.isPivotMode())o?i.forEachPivotNode(l,!0):r?i.forEachNodeAfterFilterAndSort(l,!0):i.forEachNode(l);else if(e.onlySelectedAllPages||n){const d=this.selectionService.getSelectedNodes();this.replicateSortedOrder(d),d.forEach(l)}else a==="all"?i.forEachNode(l):o||r?i.forEachNodeAfterFilterAndSort(l,!0):i.forEachNode(l);return s}}replicateSortedOrder(e){const t=this.sortController.getSortOptions(),s=(i,o)=>{var r,n;return i.rowIndex!=null&&o.rowIndex!=null?i.rowIndex-o.rowIndex:i.level===o.level?((r=i.parent)==null?void 0:r.id)===((n=o.parent)==null?void 0:n.id)?this.rowNodeSorter.compareRowNodes(t,{rowNode:i,currentPos:i.rowIndex??-1},{rowNode:o,currentPos:o.rowIndex??-1}):s(i.parent,o.parent):i.level>o.level?s(i.parent,o):s(i,o.parent)};e.sort(s)}processPinnedBottomRows(e,t){return s=>{const i=this.processRow.bind(this,s,e,t);return e.rowPositions?e.rowPositions.filter(o=>o.rowPinned==="bottom").sort((o,r)=>o.rowIndex-r.rowIndex).map(o=>this.pinnedRowModel.getPinnedBottomRow(o.rowIndex)).forEach(i):this.pinnedRowModel.forEachPinnedRow("bottom",i),s}}getColumnsToExport(e=!1,t=!1,s){const i=this.columnModel.isPivotMode();if(s&&s.length)return this.columnModel.getColsForKeys(s);const o=this.gos.get("treeData");let r=[];return e&&!i?r=this.columnModel.getCols():r=this.visibleColsService.getAllCols(),t&&!o&&(r=r.filter(n=>nr(n)||Si(n))),r}recursivelyAddHeaderGroups(e,t,s){const i=[];e.forEach(o=>{const r=o;
220r.getChildren&&r.getChildren().forEach(n=>i.push(n))}),e.length>0&&Se(e[0])&&this.doAddHeaderHeader(t,e,s),i&&i.length>0&&this.recursivelyAddHeaderGroups(i,t,s)}doAddHeaderHeader(e,t,s){const i=e.onNewHeaderGroupingRow();let o=0;t.forEach(r=>{const n=r;let l;s?l=s(this.gos.addGridCommonParams({columnGroup:n})):l=this.columnNameService.getDisplayNameForColumnGroup(n,"header");const a=n.getLeafColumns().reduce((d,c,u,h)=>{let p=W(d);return c.getColumnGroupShow()==="open"?(!p||p[1]!=null)&&(p=[u],d.push(p)):p&&p[1]==null&&(p[1]=u-1),u===h.length-1&&p&&p[1]==null&&(p[1]=u),d},[]);i.onColumn(n,l||"",o++,n.getLeafColumns().length-1,a)})}},Sn="32.3.2",wn={version:Sn,moduleName:`${U.CsvExportModule}-core`,beans:[Ay,Ly]},Gy={version:Sn,moduleName:`${U.CsvExportModule}-api`,apiFunctions:{getDataAsCsv:Ty,exportDataAsCsv:Iy},dependantModules:[wn]},qD={version:Sn,moduleName:U.CsvExportModule,dependantModules:[wn,Gy]},Ni=`\r 221`;function fl(e,t,s){if(!t&&t!==""&&t!==0)return"";let i=t;return typeof t=="boolean"&&s&&(i=s(t)),` ${e}="${i}"`}var ml=class{static createHeader(e={}){const i=["version"];return e.version||(e.version="1.0"),e.encoding&&i.push("encoding"),e.standalone&&i.push("standalone"),`<?xml ${i.map(r=>`${r}="${e[r]}"`).join(" ")} ?>`}static createXml(e,t){let s="";e.properties&&(e.properties.prefixedAttributes&&e.properties.prefixedAttributes.forEach(o=>{Object.keys(o.map).forEach(r=>{s+=fl(o.prefix+r,o.map[r],t)})}),e.properties.rawMap&&Object.keys(e.properties.rawMap).forEach(o=>{s+=fl(o,e.properties.rawMap[o],t)}));let i="<"+e.name+s;return!e.children&&e.textNode==null?i+"/>"+Ni:e.textNode!=null?i+">"+e.textNode+"</"+e.name+">"+Ni:(i+=">"+Ni,e.children&&e.children.forEach(o=>{i+=this.createXml(o,t)}),i+"</"+e.name+">"+Ni)}},ky=async e=>{let t=0;const s=[],i=new WritableStream({write:n=>{s.push(n),t+=n.length}}),o=new ReadableStream({start:n=>{const l=new FileReader;l.onload=a=>{var d;(d=a.target)!=null&&d.result&&n.enqueue(a.target.result),n.close()},l.readAsArrayBuffer(e)}}),r=new window.CompressionStream("deflate-raw");return await o.pipeThrough(r).pipeTo(i),{size:t,content:new Blob(s)}},Oy=async e=>{const t=new Blob([e]),{size:s,content:i}=await ky(t),o=new Uint8Array(await i.arrayBuffer());return{size:s,content:o}},Ny=e=>{let t=e.getHours();return t<<=6,t=t|e.getMinutes(),t<<=5,t=t|e.getSeconds()/2,t},By=e=>{let t=e.getFullYear()-1980;return t<<=4,t=t|e.getMonth()+1,t<<=5,t=t|e.getDate(),t};function Te(e,t){let s="";for(let i=0;i<t;i++)s+=String.fromCharCode(e&255),e>>>=8;return s}var Cl=e=>{if(!e.length)return 0;let t=-1,s=0,i=0,o=0;for(let r=0;r<e.length;r++)s=e[r],i=(t^s)&255,o=Vy[i],t=t>>>8^o;return t^-1},vl=e=>e.length?Cl(typeof e=="string"?new TextEncoder().encode(e):e):0,Vy=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]),fc=(e,t,s,i,o,r)=>{const{content:n,path:l,created:a}=e,d=Ny(a),c=By(a),u=vl(o),h=r!==void 0?r:i,p=Iu(l),g=p!==l;let f="";if(g){const w=Te(1,1)+Te(vl(p),4)+p;f="up"+Te(w.length,2)+w}const m="�\0"+(g?"\0\b":"\0\0")+Te(t?8:0,2)+Te(d,2)+Te(c,2)+Te(h?u:0,4)+Te(r??i,4)+Te(i,4)+Te(p.length,2)+Te(f.length,2),v="PK��"+m+p+f,y="PK���\0"+m+"\0\0\0\0\0\0"+(n?"\0\0\0\0":"�\0\0\0")+Te(s,4)+p+f;return{localFileHeader:Uint8Array.from(v,w=>w.charCodeAt(0)),centralDirectoryHeader:Uint8Array.from(y,w=>w.charCodeAt(0))}},mc=e=>{let t;if(typeof e=="string"){const s=atob(e.split(";base64,")[1]);t=Uint8Array.from(s,i=>i.charCodeAt(0))}else t=e;return{size:t.length,content:t}},Hy=async(e,t)=>{const{content:s}=e,{size:i,content:o}=s?mc(s):{size:0,content:Uint8Array.from([])};let r,n,l=!1;if(e.type==="file"&&o&&i>0){const c=await Oy(o);r=c.content,n=c.size,l=!0}return{...fc(e,l,t,i,o,n),content:r||o,isCompressed:l}},Wy=(e,t)=>{const{content:s}=e,{content:i}=s?mc(s):{content:Uint8Array.from([])};return{...fc(e,!1,t,i.length,i,void 0),content:i,isCompressed:!1}},zy=(e,t,s)=>{const i="PK��\0\0\0\0"+Te(e,2)+Te(e,2)+Te(t,4)+Te(s,4)+"\0\0";return Uint8Array.from(i,o=>
221o.charCodeAt(0))},me=class{static addFolders(e){e.forEach(this.addFolder.bind(this))}static addFolder(e){this.folders.push({path:e,created:new Date,isBase64:!1,type:"folder"})}static addFile(e,t,s=!1){this.files.push({path:e,created:new Date,content:s?t:new TextEncoder().encode(t),isBase64:s,type:"file"})}static async getZipFile(e="application/zip"){const t=await this.buildCompressedFileStream();return this.clearStream(),new Blob([t],{type:e})}static getUncompressedZipFile(e="application/zip"){const t=this.buildFileStream();return this.clearStream(),new Blob([t],{type:e})}static clearStream(){this.folders=[],this.files=[]}static packageFiles(e){let t=0,s=0;for(const d of e){const{localFileHeader:c,centralDirectoryHeader:u,content:h}=d;t+=c.length+h.length,s+=u.length}const i=new Uint8Array(t),o=new Uint8Array(s);let r=0,n=0;for(const d of e){const{localFileHeader:c,centralDirectoryHeader:u,content:h}=d;i.set(c,r),r+=c.length,i.set(h,r),r+=h.length,o.set(u,n),n+=u.length}const l=zy(e.length,s,t),a=new Uint8Array(i.length+o.length+l.length);return a.set(i),a.set(o,i.length),a.set(l,i.length+o.length),a}static async buildCompressedFileStream(){const e=[...this.folders,...this.files],t=[];let s=0;for(const i of e){const o=await Hy(i,s),{localFileHeader:r,content:n}=o;t.push(o),s+=r.length+n.length}return this.packageFiles(t)}static buildFileStream(){const e=[...this.folders,...this.files],t=[];let s=0;for(const i of e){const o=Wy(i,s),{localFileHeader:r,content:n}=o;t.push(o),s+=r.length+n.length}return this.packageFiles(t)}};me.folders=[];me.files=[];var Ne=T.createContext({}),Fi=(e,t,s,i)=>{if(!e||e.componentFromFramework||t.isDestroyed())return;const r=e.newAgStackInstance();if(r==null)return;let n,l,a=!1;return r.then(d=>{if(a){t.destroyBean(d);return}n=d,l=n.getGui(),s.appendChild(l),Sl(i,n)}),()=>{var d;a=!0,n&&((d=l==null?void 0:l.parentElement)==null||d.removeChild(l),t.destroyBean(n),i&&Sl(i,void 0))}},Sl=(e,t)=>{if(e)if(e instanceof Function)e(t);else{const s=e;s.current=t}},dt=(...e)=>e.filter(s=>s!=null&&s!=="").join(" "),ot=class Cc{constructor(...t){this.classesMap={},t.forEach(s=>{this.classesMap[s]=!0})}setClass(t,s){if(!!this.classesMap[t]==s)return this;const o=new Cc;return o.classesMap={...this.classesMap},o.classesMap[t]=s,o}toString(){return Object.keys(this.classesMap).filter(s=>this.classesMap[s]).join(" ")}},Ws=e=>{const t=()=>typeof Symbol=="function"&&Symbol.for,s=()=>t()?Symbol.for("react.memo"):60115;return typeof e=="function"&&!(e.prototype&&e.prototype.isReactComponent)||typeof e=="object"&&e.$$typeof===s()},Kl,yr=(Kl=T.version)==null?void 0:Kl.split(".")[0],Uy=yr==="16"||yr==="17";function _y(){return yr==="19"}var Ki=!1;function Ky(e){return Ki||setTimeout(()=>Ki=!1,0),Ki=!0,e()}var yn=(e,t)=>{!Uy&&e&&!Ki?Jc.flushSync(t):t()};function Rn(e,t,s){if(t==null||e==null)return t;if(e===t||t.length===0&&e.length===0)return e;if(s||e.length===0&&t.length>0||e.length>0&&t.length===0)return t;const i=[],o=[],r=new Map,n=new Map;for(let l=0;l<t.length;l++){const a=t[l];n.set(a.instanceId,a)}for(let l=0;l<e.length;l++){const a=e[l];r.set(a.instanceId,a),n.has(a.instanceId)&&i.push(a)}for(let l=0;l<t.length;l++){const a=t[l],d=a.instanceId;r.has(d)||o.push(a)}return i.length===e.length&&o.length===0?e:i.length===0&&o.length===t.length?t:i.length===0?o:o.length===0?i:[...i,...o]}var vc=C.forwardRef((e,t)=>{var se;const{ctrlsFactory:s,context:i}=C.useContext(Ne),o=C.useRef(null),r=C.useRef(null),n=C.useRef(null),l=C.useRef(null),a=C.useRef(null),d=C.useRef(),[c,u]=C.useState(),[h,p]=C.useState(),[g,f]=C.useState(),[m,v]=C.useState(()=>new ot),[y,w]=C.useState(()=>new ot("ag-hidden")),[F,D]=C.useState(()=>new ot("ag-hidden")),[M,x]=C.useState(()=>new ot("ag-invisible"));C.useImperativeHandle(t,()=>({refresh(){return!1}})),C.useLayoutEffect(()=>Fi(c,i,r.current),[c]);const I=C.useCallback(Y=>{if(o.current=Y,!Y){d.current=i.destroyBean(d.current);return}const oe={setInnerRenderer:(ae,X)=>{u(ae),f(X)},setChildCount:ae=>p(ae),addOrRemoveCssClass:(ae,X)=>v(_e=>_e.setClass(ae,X)),setContractedDisplayed:ae=>D(X=>X.setClass("ag-hidden",!ae)),setExpandedDisplayed:ae=>w(X=>X.setClass("ag-hidden",!ae)),setCheckboxVisible:ae=>x(X=>X.setClass("ag-invisible",!ae))},ce=s.getInstance("groupCellRendererCtrl");ce&&(d.current=i.createBean(ce),d.current.init(oe,Y,n.current,l.current,a.current,vc,e))},[]),G=C.useMemo(()=>`ag-cell-wrapper ${m.toString()}`,[m]),k=C.useMemo(()=>`ag-group-expanded ${y.toString()}`,[y]),L=C.useMemo(()=>`ag-group-contracted ${F.toString()}`,[F]),B=C.useMemo(()=>`ag-group-checkbox ${M.toString()}`,[M]),J=c&&c.componentFromFramework,te=J?c.componentClass:void 0,fe=c==null&&g!=null,ee=Ce(g,!0);return T.createElement("span",{className:G,ref:I,...e.colDef?{}:{role:(se=d.current)==null?void 0:se.getCellAriaRole()}},T.createElement("span",{className:k,ref:l}),T.createElement("span",{className:L,ref:a}),T.createElement("span",{className:B,ref:n}),T.createElement("span",{className:"ag-group-value",ref:r},fe&&T.createElement(T.Fragment,null,ee),J&&T.createElement(te,{...c.params})),T.createElement("span",{className:"ag-group-child-count"},h))}),wl=vc,Eo=C.createContext({setMethods:()=>{}}),$y=e=>{const{initialProps:t,addUpdateCallback:s,CustomComponentClass:i,setMethods:o}=e,[{key:r,...n},l]=C.useState(t);return C.useEffect(()=>{s(a=>l(a))},[]),T.createElement(Eo.Provider,{value:{setMethods:o}},T.createElement(i,{key:r,...n}))},jy=C.memo($y),qy=0;function yl(){return`agPortalKey_${++qy}`}var Sc=class{constructor(e,t,s,i){this.portal=null,this.oldPortal=null,this.reactComponent=e,this.portalManager=t,this.componentType=s,this.suppressFallbackMethods=!!i,this.statelessComponent=this.isStateless(this.reactComponent),this.key=yl(),this.portalKey=yl(),this.instanceCreated=this.isStatelessComponent()?K.resolve(!1):new K(o=>{this.resolveInstanceCreated=o})}getGui(){return this.eParentElement}getRootElement(){return this.eParentElement.firstChild}destroy(){this.componentInstance&&typeof this.componentInstance.destroy=="function"&&this.componentInstance.destroy();const e=this.portal;e&&this.portalManager.destroyPortal(e)}createParentElement(e){const t=this.portalManager.getComponentWrappingElement(),s=document.createElement(t||"div");return s.classList.add("ag-react-container"),e.reactContainer=s,s}addParentContainerStyleAndClasses(){this.componentInstance&&(this.componentInstance.getReactContainerStyle&&this.componentInstance.getReactContainerStyle()&&(R('Since v31.1 "getReactContainerStyle" is deprecated. Apply styling directly to ".ag-react-container" if needed.'),Object.assign(this.eParentElement.style,this.componentInstance.getReactContainerStyle())),this.componentInstance.getReactContainerClasses&&this.componentInstance.getReactContainerClasses()&&(R('Since v31.1 "getReactContainerClasses" is deprecated. Apply styling directly to ".ag-react-container" if needed.'),this.componentInstance.getReactContainerClasses().forEac
221h(t=>this.eParentElement.classList.add(t))))}statelessComponentRendered(){return this.eParentElement.childElementCount>0||this.eParentElement.childNodes.length>0}getFrameworkComponentInstance(){return this.componentInstance}isStatelessComponent(){return this.statelessComponent}getReactComponentName(){return this.reactComponent.name}getMemoType(){return this.hasSymbol()?Symbol.for("react.memo"):60115}hasSymbol(){return typeof Symbol=="function"&&Symbol.for}isStateless(e){return typeof e=="function"&&!(e.prototype&&e.prototype.isReactComponent)||typeof e=="object"&&e.$$typeof===this.getMemoType()}hasMethod(e){const t=this.getFrameworkComponentInstance();return!!t&&t[e]!=null||this.fallbackMethodAvailable(e)}callMethod(e,t){const s=this.getFrameworkComponentInstance();if(this.isStatelessComponent())return this.fallbackMethod(e,t&&t[0]?t[0]:{});if(!s){setTimeout(()=>this.callMethod(e,t));return}const i=s[e];if(i)return i.apply(s,t);if(this.fallbackMethodAvailable(e))return this.fallbackMethod(e,t&&t[0]?t[0]:{})}addMethod(e,t){this[e]=t}init(e){return this.eParentElement=this.createParentElement(e),this.createOrUpdatePortal(e),new K(t=>this.createReactComponent(t))}createOrUpdatePortal(e){this.isStatelessComponent()||(this.ref=t=>{var s;this.componentInstance=t,this.addParentContainerStyleAndClasses(),(s=this.resolveInstanceCreated)==null||s.call(this,!0),this.resolveInstanceCreated=void 0},e.ref=this.ref),this.reactElement=this.createElement(this.reactComponent,{...e,key:this.key}),this.portal=$l.createPortal(this.reactElement,this.eParentElement,this.portalKey)}createElement(e,t){return C.createElement(e,t)}createReactComponent(e){this.portalManager.mountReactPortal(this.portal,this,e)}rendered(){return this.isStatelessComponent()&&this.statelessComponentRendered()||!!(!this.isStatelessComponent()&&this.getFrameworkComponentInstance())}refreshComponent(e){this.oldPortal=this.portal,this.createOrUpdatePortal(e),this.portalManager.updateReactPortal(this.oldPortal,this.portal)}fallbackMethod(e,t){const s=this[`${e}Component`];if(!this.suppressFallbackMethods&&s)return s.bind(this)(t)}fallbackMethodAvailable(e){return this.suppressFallbackMethods?!1:!!this[`${e}Component`]}};function bn(e,t,s){e.forEach(i=>{const o=t[i];o&&(s[i]=o)})}var Et=class extends Sc{constructor(){super(...arguments),this.awaitUpdateCallback=new K(e=>{this.resolveUpdateCallback=e}),this.wrapperComponent=jy}init(e){return this.sourceParams=e,super.init(this.getProps())}addMethod(){}getInstance(){return this.instanceCreated.then(()=>this.componentInstance)}getFrameworkComponentInstance(){return this}createElement(e,t){return super.createElement(this.wrapperComponent,{initialProps:t,CustomComponentClass:e,setMethods:s=>this.setMethods(s),addUpdateCallback:s=>{this.updateCallback=()=>(s(this.getProps()),new K(i=>
221{setTimeout(()=>{i()})})),this.resolveUpdateCallback()}})}setMethods(e){this.providedMethods=e,bn(this.getOptionalMethods(),this.providedMethods,this)}getOptionalMethods(){return[]}getProps(){return{...this.sourceParams,key:this.key,ref:this.ref}}refreshProps(){return this.updateCallback?this.updateCallback():new K(e=>this.awaitUpdateCallback.then(()=>{this.updateCallback().then(()=>e())}))}},Yy=class extends Et{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},Qy=class extends Et{constructor(){super(...arguments),this.date=null,this.onDateChange=e=>this.updateDate(e)}getDate(){return this.date}setDate(e){this.date=e,this.refreshProps()}refresh(e){this.sourceParams=e,this.refreshProps()}getOptionalMethods(){return["afterGuiAttached","setInputPlaceholder","setInputAriaLabel","setDisabled"]}updateDate(e){this.setDate(e),this.sourceParams.onDateChanged()}getProps(){const e=super.getProps();return e.date=this.date,e.onDateChange=this.onDateChange,delete e.onDateChanged,e}},Xy=class extends Et{constructor(){super(...arguments),this.label="",this.icon=null,this.shake=!1}setIcon(e,t){this.icon=e,this.shake=t,this.refreshProps()}setLabel(e){this.label=e,this.refreshProps()}getProps(){const e=super.getProps(),{label:t,icon:s,shake:i}=this;return e.label=t,e.icon=s,e.shake=i,e}},Zy=class extends Et{constructor(){super(...arguments),this.model=null,this.onModelChange=e=>this.updateModel(e),this.onUiChange=()=>this.sourceParams.filterChangedCallback(),this.expectingNewMethods=!0,this.hasBeenActive=!1}isFilterActive(){return this.model!=null}doesFilterPass(e){return this.providedMethods.doesFilterPass(e)}getModel(){return this.model}setModel(e){return this.expectingNewMethods=!0,this.model=e,this.hasBeenActive||(this.hasBeenActive=this.isFilterActive()),this.refreshProps()}refresh(e){return this.sourceParams=e,this.refreshProps(),!0}getOptionalMethods(){return["afterGuiAttached","afterGuiDetached","onNewRowsLoaded","getModelAsString","onAnyFilterChanged"]}setMethods(e){var t;this.expectingNewMethods===!1&&this.hasBeenActive&&((t=this.providedMethods)==null?void 0:t.doesFilterPass)!==(e==null?void 0:e.doesFilterPass)&&setTimeout(()=>{this.sourceParams.filterChangedCallback()}),this.expectingNewMethods=!1,super.setMethods(e)}updateModel(e){this.setModel(e).then(()=>this.sourceParams.filterChangedCallback())}getProps(){const e=super.getProps();return e.model=this.model,e.onModelChange=this.onModelChange,e.onUiChange=this.onUiChange,delete e.filterChangedCallback,delete e.filterModifiedCallback,delete e.valueGetter,e}};function wc(e,t){e.parentFilterInstance(s=>{(s.setModel(t)||K.resolve()).then(()=>{e.filterParams.filterChangedCallback()})})}var Jy=class{constructor(e,t){this.floatingFilterParams=e,this.refreshProps=t,this.model=null,this.onModelChange=s=>this.updateModel(s)}getProps(){return{...this.floatingFilterParams,model:this.model,onModelChange:this.onModelChange}}onParentModelChanged(e){this.model=e,this.refreshProps()}refresh(e){this.floatingFilterParams=e,this.refreshProps()}setMethods(e){bn(this.getOptionalMethods(),e,this)}getOptionalMethods(){return["afterGuiAttached"]}updateModel(e){this.model=e,this.refreshProps(),wc(this.floatingFilterParams,e)}},eR=class extends Et{constructor(){super(...arguments),this.model=null,this.onModelChange=e=>this.updateModel(e)}onParentModelChanged(e){this.model=e,this.refreshProps()}refresh(e){this.sourceParams=e,this.refreshProps()}getOptionalMethods(){return["afterGuiAttached"]}updateModel(e){this.model=e,this.refreshProps(),wc(this.sourceParams,e)}getProps(){const e=super.getProps();return e.model=this.model,e.onModelChange=this.onModelChange,e}},tR=class extends Et{refresh(e){this.sourceParams=e,this.refreshProps()}},sR=class extends Et{constructor(){super(...arguments),this.active=!1,this.expanded=!1,this.onActiveChange=e=>this.updateActive(e)}setActive(e){this.awaitSetActive(e)}setExpanded(e){this.expanded=e,this.refreshProps()}getOptionalMethods(){return["select","configureDefaults"]}awaitSetActive(e){return this.active=e,this.refreshProps()}updateActive(e){const t=this.awaitSetActive(e);e&&t.then(()=>this.sourceParams.onItemActivated())}getProps(){const e=super.getProps();return e.active=this.active,e.expanded=this.expanded,e.onActiveChange=this.onActiveChange,delete e.onItemActivated,e}}
221,iR=class extends Et{refresh(e){this.sourceParams=e,this.refreshProps()}},oR=class extends Et{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},rR=class extends Et{constructor(){super(...arguments),this.onStateChange=e=>this.updateState(e)}refresh(e){return this.sourceParams=e,this.refreshProps(),!0}getState(){return this.state}updateState(e){this.state=e,this.refreshProps(),this.sourceParams.onStateUpdated()}getProps(){const e=super.getProps();return e.state=this.state,e.onStateChange=this.onStateChange,e}};function Fn(){R("As of v32, using custom components with `reactiveCustomComponents = false` is deprecated.")}var nR=1e3,lR=class{constructor(e,t,s){this.destroyed=!1,this.portals=[],this.hasPendingPortalUpdate=!1,this.wrappingElement=t||"div",this.refresher=e,this.maxComponentCreationTimeMs=s||nR}getPortals(){return this.portals}destroy(){this.destroyed=!0}destroyPortal(e){this.portals=this.portals.filter(t=>t!==e),this.batchUpdate()}getComponentWrappingElement(){return this.wrappingElement}mountReactPortal(e,t,s){this.portals=[...this.portals,e],this.waitForInstance(t,s),this.batchUpdate()}updateReactPortal(e,t){this.portals[this.portals.indexOf(e)]=t,this.batchUpdate()}batchUpdate(){this.hasPendingPortalUpdate||(setTimeout(()=>{this.destroyed||(this.refresher(),this.hasPendingPortalUpdate=!1)}),this.hasPendingPortalUpdate=!0)}waitForInstance(e,t,s=Date.now()){if(this.destroyed){t(null);return}if(e.rendered())t(e);else{if(Date.now()-s>=this.maxComponentCreationTimeMs&&!this.hasPendingPortalUpdate)return;window.setTimeout(()=>{this.waitForInstance(e,t,s)})}}},aR=({ctrl:e})=>{const t=e.isAlive(),{context:s}=C.useContext(Ne),i=t?e.getColId():void 0,[o,r]=C.useState(),n=C.useRef(),l=C.useRef(null),a=C.useRef(null),d=C.useRef(null),c=C.useRef(),u=C.useRef();t&&!u.current&&(u.current=new yi(()=>l.current));const h=C.useCallback(m=>{var w;if(l.current=m,n.current=m?s.createBean(new Os):s.destroyBean(n.current),!m||!t)return;const v={setWidth:F=>{l.current&&(l.current.style.width=F)},addOrRemoveCssClass:(F,D)=>u.current.addOrRemoveCssClass(F,D),setAriaSort:F=>{l.current&&(F?fa(l.current,F):ma(l.current))},setUserCompDetails:F=>r(F),getUserCompInstance:()=>c.current||void 0};e.setComp(v,m,a.current,d.current,n.current);const y=e.getSelectAllGui();(w=a.current)==null||w.insertAdjacentElement("afterend",y),n.current.addDestroyFunc(()=>y.remove())},[]);C.useLayoutEffect(()=>Fi(o,s,d.current,c),[o]),C.useEffect(()=>{e.setDragSource(l.current)},[o]);const p=C.useMemo(()=>!!((o==null?void 0:o.componentFromFramework)&&Ws(o.componentClass)),[o]),g=o&&o.componentFromFramework,f=o&&o.componentClass;return T.createElement("div",{ref:h,className:"ag-header-cell","col-id":i,role:"columnheader"},T.createElement("div",{ref:a,className:"ag-header-cell-resize",role:"presentation"}),T.createElement("div",{ref:d,className:"ag-header-cell-comp-wrapper",role:"presentation"},g&&p&&T.createElement(f,{...o.params}),g&&!p&&T.createElement(f,{...o.params,ref:c})))},dR=C.memo(aR),cR=({ctrl:e})=>{const{context:t,gos:s}=C.useContext(Ne),[i,o]=C.useState(()=>new ot("ag-header-cell","ag-floating-filter")),[r,n]=C.useState(()=>new ot),[l,a]=C.useState(()=>new ot("ag-floating-filter-button","ag-hidden")),[d,c]=C.useState("false"),[u,h]=C.useState(),[,p]=C.useState(1),g=C.useRef(),f=C.useRef(null),m=C.useRef(null),v=C.useRef(null),y=C.useRef(null),w=C.useRef(),F=C.useRef(),D=ee=>{ee!=null&&w.current&&w.current(ee)},M=C.useCallback(ee=>{if(f.current=ee,g.current=ee?t.createBean(new Os):t.destroyBean(g.current),!ee)return;F.current=new K(Y=>{w.current=Y});const se={addOrRemoveCssClass:(Y,oe)=>o(ce=>ce.setClass(Y,oe)),addOrRemoveBodyCssClass:(Y,oe)=>n(ce=>ce.setClass(Y,oe)),setButtonWrapperDisplayed:Y=>{a(oe=>oe.setClass("ag-hidden",!Y)),c(Y?"false":"true")},setWidth:Y=>{f.current&&(f.current.style.width=Y)},setCompDetails:Y=>h(Y),getFloatingFilterComp:()=>F.current?F.current:null,setMenuIcon:Y=>{var oe;return(oe=y.current)==null?void 0:oe.appendChild(Y)}};e.setComp(se,ee,y.current,m.current,g.current)},[]);C.useLayoutEffect(()=>Fi(u,t,m.current,D),[u]);const x=C.useMemo(()=>i.toString(),[i]),I=C.useMemo(()=>r.toString(),[r]),G=C.useMemo(()=>l.toString(),[l]),k=C.useMemo(()=>!!(u&&u.componentFromFramework&&Ws(u.componentClass)),[u]),L=C.useMemo(()=>s.get("reactiveCustomComponents"),[]),B=C.useMemo(()=>
221{if(u)if(L){const ee=new Jy(u.params,()=>p(se=>se+1));return D(ee),ee}else u.componentFromFramework&&Fn()},[u]),J=B==null?void 0:B.getProps(),te=u&&u.componentFromFramework,fe=u&&u.componentClass;return T.createElement("div",{ref:M,className:x,role:"gridcell"},T.createElement("div",{ref:m,className:I,role:"presentation"},te&&!L&&T.createElement(fe,{...u.params,ref:k?()=>{}:D}),te&&L&&T.createElement(Eo.Provider,{value:{setMethods:ee=>B.setMethods(ee)}},T.createElement(fe,{...J}))),T.createElement("div",{ref:v,"aria-hidden":d,className:G,role:"presentation"},T.createElement("button",{ref:y,type:"button",className:"ag-button ag-floating-filter-button-button",tabIndex:-1})))},uR=C.memo(cR),hR=({ctrl:e})=>{const{context:t}=C.useContext(Ne),[s,i]=C.useState(()=>new ot),[o,r]=C.useState(()=>new ot),[n,l]=C.useState("false"),[a,d]=C.useState(),[c,u]=C.useState(),h=C.useMemo(()=>e.getColId(),[]),p=C.useRef(),g=C.useRef(null),f=C.useRef(null),m=C.useRef(null),v=C.useRef(),y=C.useCallback(I=>{if(g.current=I,p.current=I?t.createBean(new Os):t.destroyBean(p.current),!I)return;const G={setWidth:k=>{g.current&&(g.current.style.width=k)},addOrRemoveCssClass:(k,L)=>i(B=>B.setClass(k,L)),setHeaderWrapperHidden:k=>{const L=m.current;L&&(k?L.style.setProperty("display","none"):L.style.removeProperty("display"))},setHeaderWrapperMaxHeight:k=>{const L=m.current;L&&(k!=null?L.style.setProperty("max-height",`${k}px`):L.style.removeProperty("max-height"),L.classList.toggle("ag-header-cell-comp-wrapper-limited-height",k!=null))},setUserCompDetails:k=>u(k),setResizableDisplayed:k=>{r(L=>L.setClass("ag-hidden",!k)),l(k?"false":"true")},setAriaExpanded:k=>d(k),getUserCompInstance:()=>v.current||void 0};e.setComp(G,I,f.current,m.current,p.current)},[]);C.useLayoutEffect(()=>Fi(c,t,m.current),[c]),C.useEffect(()=>{g.current&&e.setDragSource(g.current)},[c]);const w=C.useMemo(()=>!!((c==null?void 0:c.componentFromFramework)&&Ws(c.componentClass)),[c]),F=C.useMemo(()=>"ag-header-group-cell "+s.toString(),[s]),D=C.useMemo(()=>"ag-header-cell-resize "+o.toString(),[o]),M=c&&c.componentFromFramework,x=c&&c.componentClass;return T.createElement("div",{ref:y,className:F,"col-id":h,role:"columnheader","aria-expanded":a},T.createElement("div",{ref:m,className:"ag-header-cell-comp-wrapper",role:"presentation"},M&&w&&T.createElement(x,{...c.params}),M&&!w&&T.createElement(x,{...c.params,ref:v})),T.createElement("div",{ref:f,"aria-hidden":n,className:D}))},pR=C.memo(hR),gR=({ctrl:e})=>{const{context:t}=C.useContext(Ne),{topOffset:s,rowHeight:i}=C.useMemo(()=>e.getTopAndHeight(),[]),o=e.getAriaRowIndex(),r=e.getHeaderRowClass(),[n,l]=C.useState(()=>i+"px"),[a,d]=C.useState(()=>s+"px"),c=C.useRef(null),u=C.useRef(null),[h,p]=C.useState(()=>e.getHeaderCtrls()),g=C.useRef(),f=C.useRef(null),m=C.useCallback(w=>{if(f.current=w,g.current=w?t.createBean(new Os):t.destroyBean(g.current),!w)return;const F={setHeight:D=>l(D),setTop:D=>d(D),setHeaderCtrls:(D,M,x)=>{u.current=c.current,c.current=D;const I=Rn(u.current,D,M);I!==u.current&&yn(x,()=>p(I))},setWidth:D=>{f.current&&(f.current.style.width=D)}};e.setComp(F,g.current,!1)},[]),v=C.useMemo(()=>({height:n,top:a}),[n,a]),y=C.useCallback(w=>{switch(e.getType()){case mr.COLUMN_GROUP:return T.createElement(pR,{ctrl:w,key:w.instanceId});case mr.FLOATING_FILTER:return T.createElement(uR,{ctrl:w,key:w.instanceId});default:return T.createElement(dR,{ctrl:w,key:w.instanceId})}},[]);return T.createElement("div",{ref:m,className:r,role:"row",style:v,"aria-rowindex":o},h.map(y))},fR=C.memo(gR),mR=({pinned:e})=>{const[t,s]=C.useState(!0),[i,o]=C.useState([]),{context:r}=C.useContext(Ne),n=C.useRef(null),l=C.useRef(null),a=C.useRef(),d=e==="left",c=e==="right",u=!d&&!c,h=C.useCallback(f=>{if(n.current=f,a.current=f?r.createBean(new Sd(e)):r.destroyBean(a.current),!f)return;const m={setDisplayed:s,setCtrls:v=>o(v),setCenterWidth:v=>{l.current&&(l.current.style.width=v)},setViewportScrollLeft:v=>{n.current&&(n.current.scrollLeft=v)},setPinnedContainerWidth:v=>{n.current&&(n.current.style.width=v,n.current.style.minWidth=v,n.current.style.maxWidth=v)}};a.current.setComp(m,n.current)},[]),p=t?"":"ag-hidden",g=()=>i.map(f=>T.createElement(fR,{ctrl:f,key:f.instanceId}));return T.createElement(T.Fragment,null,d&&T.createElement("div",{ref:h,className:"ag-pinned-left-header "+p,"aria-hidden":!t,role:"rowgroup"},g()),c&&T.createElement("div",{ref:h,className:"ag-pinned-right-header "+p,"aria-hidden":!t,role:"rowgroup"},g()),u&&T.createElement("div",{ref:h,className:"ag-header-viewport "+p,role:"presentation"},T.createElement("div",{ref:l,className:"ag-header-container",role:"rowgroup"},g())))},jo=C.memo(mR),CR=()=>{const[e,t]=C.useState(()=>new ot),[s,i]=C.useState(),{context:o}=C.useContext(Ne),r=C.useRef(null),n=C.useRef(),l=C.useCallback(c=>{if(r.current=c,n.current=c?o.createBean(new Cd):o.destroyBean(n.current),!c)return;const u={addOrRemoveCssClass:(h,p)=>t(g=>g.setClass(h,p)),setHeightAndMinHeight:h=>i(h)};n.current.setComp(u,c,c)},[]),a=C.useMemo(()=>"ag-header "+e.toString(),[e]),d=C.useMemo(()=>({height:s,minHeight:s}),[s]);return T.createElement("div",{ref:l,className:a,style:d,role:"presentation"},T.createElement(jo,{pinned:"left"}),T.createElement(jo,{pinned:null}),T.createElement(jo,{pinned:"right"}))},vR=C.memo(CR),SR=(e,t)=>{C.useEffect(()=>{const s=t.current;if(s){const i=s.parentElement;if(i){const o=document.createComment(e);return i.insertBefore(o,s),()=>{i.removeChild(o)}}}},[e])},es=SR,wR=class{constructor(e,t){this.cellEditorParams=e,this.refreshPro
221ps=t,this.instanceCreated=new K(s=>{this.resolveInstanceCreated=s}),this.onValueChange=s=>this.updateValue(s),this.value=e.value}getProps(){return{...this.cellEditorParams,initialValue:this.cellEditorParams.value,value:this.value,onValueChange:this.onValueChange}}getValue(){return this.value}refresh(e){this.cellEditorParams=e,this.refreshProps()}setMethods(e){bn(this.getOptionalMethods(),e,this)}getInstance(){return this.instanceCreated.then(()=>this.componentInstance)}setRef(e){var t;this.componentInstance=e,(t=this.resolveInstanceCreated)==null||t.call(this),this.resolveInstanceCreated=void 0}getOptionalMethods(){return["isCancelBeforeStart","isCancelAfterEnd","focusIn","focusOut","afterGuiAttached"]}updateValue(e){this.value=e,this.refreshProps()}},yR=e=>{const t=C.useRef(e),s=C.useRef(),i=C.useRef(!1),o=C.useRef(!1),[,r]=C.useState(0);i.current&&(o.current=!0),C.useEffect(()=>(i.current||(s.current=t.current(),i.current=!0),r(n=>n+1),()=>{var n;o.current&&((n=s.current)==null||n.call(s))}),[])},RR=e=>{const[t,s]=C.useState(),{context:i,popupService:o,localeService:r,gos:n,editService:l}=C.useContext(Ne);return yR(()=>{var F,D;const{editDetails:a,cellCtrl:d,eParentCell:c}=e,{compDetails:u}=a,h=n.get("stopEditingWhenCellsLoseFocus"),p=i.createBean(l.createPopupEditorWrapper(u.params)),g=p.getGui();if(e.jsChildComp){const M=e.jsChildComp.getGui();M&&g.appendChild(M)}const f={column:d.getColumn(),rowNode:d.getRowNode(),type:"popupCellEditor",eventSource:c,ePopup:g,position:a.popupPosition,keepWithinBounds:!0},m=o.positionPopupByComponent.bind(o,f),v=r.getLocaleTextFunc(),y=o.addPopup({modal:h,eChild:g,closeOnEsc:!0,closedCallback:()=>{d.onPopupEditorClosed()},anchorToElement:c,positionCallback:m,ariaLabel:v("ariaLabelCellEditor","Cell Editor")}),w=y?y.hideFunc:void 0;return s(p),(D=(F=e.jsChildComp)==null?void 0:F.afterGuiAttached)==null||D.call(F),()=>{w==null||w(),i.destroyBean(p)}}),T.createElement(T.Fragment,null,t&&e.wrappedContent&&$l.createPortal(e.wrappedContent,t.getGui()))},Rl=C.memo(RR),bR=(e,t,s,i,o,r)=>{const{context:n}=C.useContext(Ne),l=C.useCallback(()=>{const a=o.current;if(!a)return;const d=a.getGui();d&&d.parentElement&&d.parentElement.removeChild(d),n.destroyBean(a),o.current=void 0},[]);C.useEffect(()=>{const a=e!=null,d=(e==null?void 0:e.compDetails)&&!e.compDetails.componentFromFramework,c=t&&s==null;if(!(a&&d&&!c)){l();return}const h=e.compDetails;if(o.current){const g=o.current,m=g.refresh!=null&&e.force==!1?g.refresh(h.params):!1;if(m===!0||m===void 0)return;l()}const p=h.newAgStackInstance();p!=null&&p.then(g=>{if(!g)return;const f=g.getGui();if(!f)return;(t?s:r.current).appendChild(f),o.current=g})},[e,t,i]),C.useEffect(()=>l,[])},FR=bR,PR=(e,t,s)=>{const{compProxy:i}=e;s(i);const o=i.getProps(),r=Ws(t);return T.createElement(Eo.Provider,{value:{setMethods:n=>i.setMethods(n)}},r?T.createElement(t,{...o}):T.createElement(t,{...o,ref:n=>i.setRef(n)}))},bl=(e,t,s)=>{const i=e.compProxy;return T.createElement(T.Fragment,null,i?PR(e,t,s):T.createElement(t,{...e.compDetails.params,ref:s}))},ER=(e,t,s,i,o)=>{const r=e.compDetails,n=r.componentClass,l=r.componentFromFramework&&!e.popup,a=r.componentFromFramework&&e.popup,d=!r.componentFromFramework&&e.popup;return T.createElement(T.Fragment,null,l&&bl(e,n,t),a&&T.createElement(Rl,{editDetails:e,cellCtrl:i,eParentCell:s,wrappedContent:bl(e,n,t)}),d&&o&&T.createElement(Rl,{editDetails:e,cellCtrl:i,eParentCell:s,jsChildComp:o}))},MR=(e,t,s,i,o,r,n)=>{const{compDetails:l,value:a}=e,d=!l,c=l&&l.componentFromFramework,u=l&&l.componentClass,h=a!=null&&a.toString?a.toString():a,p=()=>T.createElement(T.Fragment,null,d&&T.createElement(T.Fragment,null,h),c&&!r&&T.createElement(u,{...l.params,key:t,ref:i}),c&&r&&T.createElement(u,{...l.params,key:t}));return T.createElement(T.Fragment,null,o?T.createElement("span",{role:"presentation",id:`cell-${s}`,className:"ag-cell-value",ref:n},p()):p())},DR=({cellCtrl:e,printLayout:t,editingRow:s})=>{const{context:i}=C.useContext(Ne),{colIdSanitised:o,instanceId:r}=e,n=C.useRef(),[l,a]=C.useState(()=>
221e.isCellRenderer()?void 0:{compDetails:void 0,value:e.getValueToDisplay(),force:!1}),[d,c]=C.useState(),[u,h]=C.useState(1),[p,g]=C.useState(),[f,m]=C.useState(!1),[v,y]=C.useState(!1),[w,F]=C.useState(!1),[D,M]=C.useState(),x=C.useMemo(()=>e.isForceWrapper(),[e]),I=C.useMemo(()=>e.getCellAriaRole(),[e]),G=C.useRef(null),k=C.useRef(null),L=C.useRef(),B=C.useRef(),J=C.useRef(),te=C.useRef([]),fe=C.useRef(),[ee,se]=C.useState(0),Y=C.useCallback(ne=>{fe.current=ne,se(we=>we+1)},[]),oe=l!=null&&(f||w||v),ce=x||oe,ae=C.useCallback(ne=>{if(B.current=ne,ne){const we=ne.isCancelBeforeStart&&ne.isCancelBeforeStart();setTimeout(()=>{we?(e.stopEditing(!0),e.focusCell(!0)):e.cellEditorAttached()})}},[e]),X=C.useRef();X.current||(X.current=new yi(()=>G.current)),FR(l,ce,fe.current,ee,L,G);const _e=C.useRef();C.useLayoutEffect(()=>{var Ae;const ne=_e.current,we=l;if(_e.current=l,ne==null||ne.compDetails==null||we==null||we.compDetails==null)return;const xe=ne.compDetails,ie=we.compDetails;if(xe.componentClass!=ie.componentClass||((Ae=k.current)==null?void 0:Ae.refresh)==null)return;k.current.refresh(ie.params)!=!0&&h(ge=>ge+1)},[l]),C.useLayoutEffect(()=>{if(!(d&&!d.compDetails.componentFromFramework))return;const we=d.compDetails,xe=d.popup===!0,ie=we.newAgStackInstance();return ie.then(ye=>{if(!ye)return;const Ae=ye.getGui();if(ae(ye),!xe){const ge=(x?J:G).current;ge==null||ge.appendChild(Ae),ye.afterGuiAttached&&ye.afterGuiAttached()}M(ye)}),()=>{ie.then(ye=>{var ge;const Ae=ye.getGui();i.destroyBean(ye),ae(void 0),M(void 0),(ge=Ae==null?void 0:Ae.parentElement)==null||ge.removeChild(Ae)})}},[d]);const $=C.useCallback(ne=>{if(J.current=ne,!ne){te.current.forEach(xe=>xe()),te.current=[];return}const we=xe=>{if(xe){const ie=xe.getGui();ne.insertAdjacentElement("afterbegin",ie),te.current.push(()=>{i.destroyBean(xe),Qe(ie)})}return xe};if(f){const xe=e.createSelectionCheckbox();we(xe)}w&&we(e.createDndSource()),v&&we(e.createRowDragComp())},[e,i,w,v,f]),ue=C.useCallback(ne=>{if(G.current=ne,n.current=ne?i.createBean(new Os):i.destroyBean(n.current),!ne||!e)return;const we={addOrRemoveCssClass:(ie,ye)=>X.current.addOrRemoveCssClass(ie,ye),setUserStyles:ie=>g(ie),getFocusableElement:()=>G.current,setIncludeSelection:ie=>m(ie),setIncludeRowDrag:ie=>y(ie),setIncludeDndSource:ie=>F(ie),getCellEditor:()=>B.current||null,getCellRenderer:()=>k.current??L.current,getParentOfValue:()=>fe.current??J.current??G.current,setRenderDetails:(ie,ye,Ae)=>{a(ge=>(ge==null?void 0:ge.compDetails)!==ie||(ge==null?void 0:ge.value)!==ye||(ge==null?void 0:ge.force)!==Ae?{value:ye,compDetails:ie,force:Ae}:ge)},setEditDetails:(ie,ye,Ae,ge)=>{if(ie){let Ot;ge?Ot=new wR(ie.params,()=>h(Mo=>Mo+1)):ie.componentFromFramework&&Fn(),c({compDetails:ie,popup:ye,popupPosition:Ae,compProxy:Ot}),ye||a(void 0)}else c(Ot=>{Ot!=null&&Ot.compProxy&&(B.current=void 0)})}},xe=J.current||void 0;e.setComp(we,ne,xe,t,s,n.current)},[]),pe=C.useMemo(()=>{var we;return!!(((we=l==null?void 0:l.compDetails)==null?void 0:we.componentFromFramework)&&Ws(l.compDetails.componentClass))},[l]);C.useLayoutEffect(()=>{var ne;G.current&&(X.current.addOrRemoveCssClass("ag-cell-value",!ce),X.current.addOrRemoveCssClass("ag-cell-inline-editing",!!d&&!d.popup),X.current.addOrRemoveCssClass("ag-cell-popup-editing",!!d&&!!d.popup),X.current.addOrRemoveCssClass("ag-cell-not-inline-editing",!d||!!d.popup),(ne=e.getRowCtrl())==null||ne.setInlineEditingCss(),e.shouldRestoreFocus()&&!e.isEditing()&&G.current.focus({preventScroll:!0}))});const mt=()=>T.createElement(T.Fragment,null,l!=null&&MR(l,u,r,k,ce,pe,Y),d!=null&&ER(d,ae,G.current,e,D)),Cs=C.useCallback(()=>e.onFocusOut(),[]);return T.createElement("div",{ref:ue,style:p,role:I,"col-id":o,onBlur:Cs},ce?T.createElement("div",{className:"ag-cell-wrapper",role:"presentation",ref:$},mt()):mt())},xR=C.memo(DR),AR=({rowCtrl:e,containerType:t})=>{const{context:s,gos:i}=C.useContext(Ne),o=C.useRef(),r=C.useRef(e.getDomOrder()),n=e.isFullWidth(),l=e.getRowNode().displayed,[a,d]=C.useState(()=>l?e.getRowIndex():null),[c,u]=C.useState(()=>e.getRowId()),[h,p]=C.useState(()=>e.getBusinessKey()),[g,f]=C.useState(()=>e.getRowStyles()),m=C.useRef(null),v=C.useRef(null),[y,w]=C.useState(()=>null),[F,D]=C.useState(),[M,x]=C.useState(()=>l?e.getInitialRowTop(t):void 0),[I,G]=C.useState(()=>l?e.getInitialTransform(t):void 0),k=C.useRef(null),L=C.useRef(),B=C.useRef(!1),[J,te]=C.useState(0);C.useEffect(()=>{var ue;if(B.current||!F||J>10)return;const $=(ue=k.current)==null?void 0:ue.firstChild;$?(e.setupDetailRowAutoHeight($),B.current=!0):te(pe=>pe+1)},[F,J]);const fe=C.useRef();
221fe.current||(fe.current=new yi(()=>k.current));const ee=C.useCallback($=>{if(k.current=$,o.current=$?s.createBean(new Os):s.destroyBean(o.current),!$){e.unsetComp(t);return}if(!e.isAlive())return;const ue={setTop:x,setTransform:G,addOrRemoveCssClass:(pe,mt)=>fe.current.addOrRemoveCssClass(pe,mt),setDomOrder:pe=>r.current=pe,setRowIndex:d,setRowId:u,setRowBusinessKey:p,setUserStyles:f,setCellCtrls:(pe,mt)=>{v.current=m.current,m.current=pe;const Cs=Rn(v.current,pe,r.current);Cs!==v.current&&yn(mt,()=>w(Cs))},showFullWidth:pe=>D(pe),getFullWidthCellRenderer:()=>L.current,refreshFullWidth:pe=>ae.current?(D(mt=>({...mt,params:pe()})),!0):!L.current||!L.current.refresh?!1:L.current.refresh(pe())};e.setComp(ue,$,t,o.current)},[]);C.useLayoutEffect(()=>Fi(F,s,k.current,L),[F]);const se=C.useMemo(()=>{const $={top:M,transform:I};return Object.assign($,g),$},[M,I,g]),Y=n&&(F==null?void 0:F.componentFromFramework),oe=!n&&y!=null,ce=C.useMemo(()=>!!((F==null?void 0:F.componentFromFramework)&&Ws(F.componentClass)),[F]),ae=C.useRef(!1);C.useEffect(()=>{ae.current=ce&&!!F&&!!i.get("reactiveCustomComponents")},[ce,F]);const X=()=>y==null?void 0:y.map($=>T.createElement(xR,{cellCtrl:$,editingRow:e.isEditing(),printLayout:e.isPrintLayout(),key:$.instanceId})),_e=()=>{const $=F.componentClass;return T.createElement(T.Fragment,null,ce?T.createElement($,{...F.params}):T.createElement($,{...F.params,ref:L}))};return T.createElement("div",{ref:ee,role:"row",style:se,"row-index":a,"row-id":c,"row-business-key":h},oe&&X(),Y&&_e())},TR=C.memo(AR),IR=({name:e})=>{const{context:t}=C.useContext(Ne),s=C.useMemo(()=>ss(e),[e]),i=C.useRef(null),o=C.useRef(null),r=C.useRef([]),n=C.useRef([]),[l,a]=C.useState(()=>[]),d=C.useRef(!1),c=C.useRef(),u=C.useMemo(()=>dt(s.viewport),[s]),h=C.useMemo(()=>dt(s.container),[s]),p=s.type==="center",g=p?i:o;es(" AG Row Container "+e+" ",g);const f=C.useCallback(()=>p?i.current!=null&&o.current!=null:o.current!=null,[]),m=C.useCallback(()=>p?i.current==null&&o.current==null:o.current==null,[]),v=C.useCallback(()=>{if(m()&&(c.current=t.destroyBean(c.current)),f()){const D=x=>{const I=Rn(n.current,r.current,d.current);I!==n.current&&(n.current=I,yn(x,()=>a(I)))},M={setHorizontalScroll:x=>{i.current&&(i.current.scrollLeft=x)},setViewportHeight:x=>{i.current&&(i.current.style.height=x)},setRowCtrls:({rowCtrls:x,useFlushSync:I})=>{const G=!!I&&r.current.length>0&&x.length>0;r.current=x,D(G)},setDomOrder:x=>{d.current!=x&&(d.current=x,D(!1))},setContainerWidth:x=>{o.current&&(o.current.style.width=x)},setOffsetTop:x=>{o.current&&(o.current.style.transform=`translateY(${x})`)}};c.current=t.createBean(new Ad(e)),c.current.setComp(M,o.current,i.current)}},[f,m]),y=C.useCallback(D=>{o.current=D,v()},[v]),w=C.useCallback(D=>{i.current=D,v()},[v]),F=()=>T.createElement("div",{className:h,ref:y,role:"rowgroup"},l.map(D=>T.createElement(TR,{rowCtrl:D,containerType:s.type,key:D.instanceId})));return T.createElement(T.Fragment,null,p?T.createElement("div",{className:u,ref:w,role:"presentation"},F()):F())},LR=C.memo(IR),GR=()=>{const{context:e,resizeObserverService:t}=C.useContext(Ne),[s,i]=C.useState(""),[o,r]=C.useState(0),[n,l]=C.useState(0),[a,d]=C.useState("0px"),[c,u]=C.useState("0px"),[h,p]=C.useState("100%"),[g,f]=C.useState("0px"),[m,v]=C.useState("0px"),[y,w]=C.useState("100%"),[F,D]=C.useState(""),[M,x]=C.useState(""),[I,G]=C.useState(null),[k,L]=C.useState(""),[B,J]=C.useState(null),[te,fe]=C.useState("ag-layout-normal"),ee=C.useRef();ee.current||(ee.current=new yi(()=>se.current));const se=C.useRef(null),Y=C.useRef(null),oe=C.useRef(null),ce=C.useRef(null),ae=C.useRef(null),X=C.useRef(null),_e=C.useRef(null),$=C.useRef([]),ue=C.useRef([]);es(" AG Grid Body ",se),es(" AG Pinned Top ",Y),es(" AG Sticky Top ",oe),es(" AG Middle ",X),es(" AG Pinned Bottom ",_e);const pe=C.useCallback(Ct=>{if(se.current=Ct,!Ct){$.current=e.destroyBeans($.current),ue.current.forEach(ve=>ve()),ue.current=[];return}if(!e)return;const Ei=(ve,Ye)=>{ve.appendChild(Ye),ue.current.push(()=>ve.removeChild(Ye))},Do=ve=>{const Ye=e.createBean(new ve);return $.current.push(Ye),Ye},Us=(ve,Ye,Zc)=>{Ei(ve,document.createComment(Zc)),Ei(ve,Do(Ye).getGui())};Us(Ct,Rd," AG Fake Horizontal Scroll "),Us(Ct,wd," AG Overlay Wrapper "),ae.current&&Us(ae.current,Fd," AG Fake
221Vertical Scroll ");const Xc={setRowAnimationCssOnBodyViewport:i,setColumnCount:ve=>{se.current&&pa(se.current,ve)},setRowCount:ve=>{se.current&&ua(se.current,ve)},setTopHeight:r,setBottomHeight:l,setStickyTopHeight:d,setStickyTopTop:u,setStickyTopWidth:p,setTopDisplay:D,setBottomDisplay:x,setColumnMovingCss:(ve,Ye)=>ee.current.addOrRemoveCssClass(ve,Ye),updateLayoutClasses:fe,setAlwaysVerticalScrollClass:G,setPinnedTopBottomOverflowY:L,setCellSelectableCss:(ve,Ye)=>J(Ye?ve:null),setBodyViewportWidth:ve=>{X.current&&(X.current.style.width=ve)},registerBodyViewportResizeListener:ve=>{if(X.current){const Ye=t.observeResize(X.current,ve);ue.current.push(()=>Ye())}},setStickyBottomHeight:f,setStickyBottomBottom:v,setStickyBottomWidth:w},Gn=e.createBean(new Id);$.current.push(Gn),Gn.setComp(Xc,Ct,X.current,Y.current,_e.current,oe.current,ce.current)},[]),mt=C.useMemo(()=>dt("ag-root","ag-unselectable",te),[te]),Cs=C.useMemo(()=>dt("ag-body-viewport",s,te,I,B),[s,te,I,B]),ne=C.useMemo(()=>dt("ag-body",te),[te]),we=C.useMemo(()=>dt("ag-floating-top",B),[B]),xe=C.useMemo(()=>dt("ag-sticky-top",B),[B]),ie=C.useMemo(()=>dt("ag-sticky-bottom",g==="0px"?"ag-hidden":null,B),[B,g]),ye=C.useMemo(()=>dt("ag-floating-bottom",B),[B]),Ae=C.useMemo(()=>({height:o,minHeight:o,display:F,overflowY:k}),[o,F,k]),ge=C.useMemo(()=>({height:a,top:c,width:h}),[a,c,h]),Ot=C.useMemo(()=>({height:g,bottom:m,width:y}),[g,m,y]),Mo=C.useMemo(()=>({height:n,minHeight:n,display:M,overflowY:k}),[n,M,k]),Qc=Ct=>T.createElement(LR,{name:Ct,key:`${Ct}-container`}),zs=({section:Ct,children:Ei,className:Do,style:Us})=>T.createElement("div",{ref:Ct,className:Do,role:"presentation",style:Us},Ei.map(Qc));return T.createElement("div",{ref:pe,className:mt,role:"treegrid"},T.createElement(vR,null),zs({section:Y,className:we,style:Ae,children:["topLeft","topCenter","topRight","topFullWidth"]}),T.createElement("div",{className:ne,ref:ae,role:"presentation"},zs({section:X,className:Cs,children:["left","center","right","fullWidth"]})),zs({section:oe,className:xe,style:ge,children:["stickyTopLeft","stickyTopCenter","stickyTopRight","stickyTopFullWidth"]}),zs({section:ce,className:ie,style:Ot,children:["stickyBottomLeft","stickyBottomCenter","stickyBottomRight","stickyBottomFullWidth"]}),zs({section:_e,className:ye,style:Mo,children:["bottomLeft","bottomCenter","bottomRight","bottomFullWidth"]}))},kR=C.memo(GR),OR=(e,t)=>{const{children:s,eFocusableElement:i,onTabKeyDown:o,gridCtrl:r,forceFocusOutWhenTabGuardsAreEmpty:n}=e,{context:l}=C.useContext(Ne),a=C.useRef(null),d=C.useRef(null),c=C.useRef(),u=m=>{const v=m==null?void 0:parseInt(m,10).toString();[a,d].forEach(y=>{var w,F;v===void 0?(w=y.current)==null||w.removeAttribute("tabindex"):(F=y.current)==null||F.setAttribute("tabindex",v)})};C.useImperativeHandle(t,()=>({forceFocusOutOfContainer(m){var v;(v=c.current)==null||v.forceFocusOutOfContainer(m)}}));const h=C.useCallback(()=>{const m=a.current,v=d.current;if(!m&&!v){c.current=l.destroyBean(c.current);return}if(m&&v){const y={setTabIndex:u};c.current=l.createBean(new Wd({comp:y,eTopGuard:m,eBottomGuard:v,eFocusableElement:i,onTabKeyDown:o,forceFocusOutWhenTabGuardsAreEmpty:n,focusInnerElement:w=>r.focusInnerElement(w)}))}},[]),p=C.useCallback(m=>{a.current=m,h()},[h]),g=C.useCallback(m=>{d.current=m,h()},[h]),f=m=>{const v=m==="top"?Ui.TAB_GUARD_TOP:Ui.TAB_GUARD_BOTTOM;return T.createElement("div",{className:`${Ui.TAB_GUARD} ${v}`,role:"presentation",ref:m==="top"?p:g})};return T.createElement(T.Fragment,null,f("top"),s,f("bottom"))},NR=C.forwardRef(OR),BR=C.memo(NR),VR=({context:e})=>{const[t,s]=C.useState(""),[i,o]=C.useState(""),[r,n]=C.useState(""),[l,a]=C.useState(null),[d,c]=C.useState(null),[u,h]=C.useState(!1),[p,g]=C.useState(),f=C.useRef(),m=C.useRef(null),v=C.useRef(),[y,w]=C.useState(null),F=C.useRef(()=>{}),D=C.useRef(),M=C.useRef([]),x=C.useCallback(()=>{},[]),I=C.useMemo(()=>e.isDestroyed()?null:e.getBeans(),[e]);es(" AG Grid ",m);const G=C.useCallback(te=>{if(m.current=te,f.current=te?e.createBean(new Kd):e.destroyBean(f.current),!te||e.isDestroyed())return;const fe=f.current;F.current=fe.focusInnerElement.bind(fe);const ee={destroyGridUi:()=>{},setRtlClass:s,setGridThemeClass:o,forceFocusOutOfContainer:se=>{var Y,oe;if(!se&&((Y=D.current)!=null&&Y.isDisplayed())){D.current.forceFocusOutOfContainer(se);return}(oe=v.current)==null||oe.forceFocusOutOfContainer(se)},updateLayoutClasses:n,getFocusableContainers:()=>{var oe;const se=[],Y=(oe=m.current)==null?void 0:oe.querySelector(".ag-root");return Y&&se.push({getGui:()=>Y}),M.current.forEach(ce=>
221{ce.isDisplayed()&&se.push(ce)}),se},setCursor:a,setUserSelect:c};fe.setComp(ee,te,te),h(!0)},[]);C.useEffect(()=>{const te=f.current,fe=m.current;if(!p||!I||!te||!y||!fe)return;const ee=[],{watermarkSelector:se,paginationSelector:Y,sideBarSelector:oe,statusBarSelector:ce,gridHeaderDropZonesSelector:ae}=te.getOptionalSelectors(),X=[];if(ae){const $=e.createBean(new ae.component),ue=$.getGui();fe.insertAdjacentElement("afterbegin",ue),X.push(ue),ee.push($)}if(oe){const $=e.createBean(new oe.component),ue=$.getGui(),pe=y.querySelector(".ag-tab-guard-bottom");pe&&(pe.insertAdjacentElement("beforebegin",ue),X.push(ue)),ee.push($),M.current.push($)}const _e=$=>{const ue=e.createBean(new $),pe=ue.getGui();return fe.insertAdjacentElement("beforeend",pe),X.push(pe),ee.push(ue),ue};if(ce&&_e(ce.component),Y){const $=_e(Y.component);D.current=$,M.current.push($)}return se&&_e(se.component),()=>{e.destroyBeans(ee),X.forEach($=>{var ue;(ue=$.parentElement)==null||ue.removeChild($)})}},[p,y,I]);const k=C.useMemo(()=>dt("ag-root-wrapper",t,i,r),[t,i,r]),L=C.useMemo(()=>dt("ag-root-wrapper-body","ag-focus-managed",r),[r]),B=C.useMemo(()=>({userSelect:d??"",WebkitUserSelect:d??"",cursor:l??""}),[d,l]),J=C.useCallback(te=>{v.current=te,g(te!==null)},[]);return T.createElement("div",{ref:G,className:k,style:B,role:"presentation"},T.createElement("div",{className:L,ref:w,role:"presentation"},u&&y&&I&&T.createElement(Ne.Provider,{value:I},T.createElement(BR,{ref:J,eFocusableElement:y,onTabKeyDown:x,gridCtrl:f.current,forceFocusOutWhenTabGuardsAreEmpty:!0},T.createElement(kR,null)))))},HR=C.memo(VR),WR=class extends b{wireBeans(e){this.ctrlsService=e.ctrlsService}areHeaderCellsRendered(){return this.ctrlsService.getHeaderRowContainerCtrls().every(e=>e.getAllCtrls().every(t=>t.areCellsRendered()))}},yc=e=>{var m;const t=C.useRef(),s=C.useRef(null),i=C.useRef(null),o=C.useRef([]),r=C.useRef([]),n=C.useRef(e),l=C.useRef(),a=C.useRef(),d=C.useRef(!1),[c,u]=C.useState(void 0),[,h]=C.useState(0),p=C.useCallback(v=>{if(s.current=v,!v){o.current.forEach(L=>L()),o.current.length=0;return}const y=e.modules||[];i.current||(i.current=new lR(()=>h(L=>L+1),e.componentWrappingElement,e.maxComponentCreationTimeMs),o.current.push(()=>{var L;(L=i.current)==null||L.destroy(),i.current=null}));const w=zu(e.gridOptions,e),F=()=>{if(d.current){const L=()=>{var J;return(J=l.current)!=null&&J.shouldQueueUpdates()?void 0:r.current.shift()};let B=L();for(;B;)B(),B=L()}},D=new KR(F);l.current=D;const M=new WR,x={providedBeanInstances:{frameworkComponentWrapper:new UR(i.current,w.reactiveCustomComponents??Nw("reactiveCustomComponents")??!0),renderStatusService:M},modules:y,frameworkOverrides:D},I=L=>{u(L),L.createBean(M),o.current.push(()=>{L.destroy()}),L.getBean("ctrlsService").whenReady({addDestroyFunc:B=>{o.current.push(B)}},()=>{var J;if(L.isDestroyed())return;const B=t.current;B&&((J=e.setGridApi)==null||J.call(e,B))})},G=L=>{L.getBean("ctrlsService").whenReady({addDestroyFunc:B=>{o.current.push(B)}},()=>{r.current.forEach(B=>B()),r.current.length=0,d.current=!0})},k=new rc;w.gridId??(w.gridId=a.current),t.current=k.create(v,w,I,G,x),o.current.push(()=>{t.current=void 0}),t.current&&(a.current=t.current.getGridId())},[]),g=C.useMemo(()=>({height:"100%",...e.containerStyle||{}}),[e.containerStyle]),f=C.useCallback(v=>{var y;d.current&&!((y=l.current)!=null&&y.shouldQueueUpdates())?v():r.current.push(v)},[]);return C.useEffect(()=>{const v=zR(n.current,e);n.current=e,f(()=>{t.current&&Uu(v,t.current)})},[e]),T.createElement("div",{style:g,className:e.className,ref:p},c&&!c.isDestroyed()?T.createElement(HR,{context:c}):null,((m=i.current)==null?void 0:m.getPortals())??null)};function zR(e,t){const s={};return Object.keys(t).forEach(i=>{const o=t[i];e[i]!==o&&(s[i]=o)}),s}var UR=class extends $w{constructor(e,t){super(),this.parent=e,this.reactiveCustomComponents=t}createWrapper(e,t){if(this.reactiveCustomComponents){const o=(r=>{switch(r){case"filter":return Zy;case"floatingFilterComponent":return eR;case"dateComponent":return Qy;case"dragAndDropImageComponent":return Xy;case"loadingOverlayComponent":return tR;case"noRowsOverlayComponent":return iR;case"statusPanel":return oR;case"toolPanel":return rR;case"menuItem":return sR;case"cellRenderer":return Yy}})(t.propertyName);if(o)return new o(e,this.parent,t)}else switch(t.propertyName){case"filter":case"floatingFilterComponent":case"dateComponent":case"dragAndDropImageComponent":case"loadingOverlayComponent":case"noRowsOverlayComponent":case"statusPanel":case"toolPanel":case"menuItem":case"cellRenderer":Fn();break}const s=!t.cellRenderer&&t.propertyName!=="toolPanel";return new Sc(e,this.parent,t,s)}},_R=C.forwardRef((e,t)=>
221{const{ctrlsFactory:s,context:i,gos:o,resizeObserverService:r,rowModel:n}=C.useContext(Ne),[l,a]=C.useState(()=>new ot),[d,c]=C.useState(()=>new ot),[u,h]=C.useState(),[p,g]=C.useState(),f=C.useRef(),m=C.useRef(null),v=C.useRef(),y=C.useMemo(()=>Dt.__getGridRegisteredModules(e.api.getGridId()),[e]),w=C.useMemo(()=>l.toString()+" ag-details-row",[l]),F=C.useMemo(()=>d.toString()+" ag-details-grid",[d]);t&&C.useImperativeHandle(t,()=>({refresh(){var x;return((x=f.current)==null?void 0:x.refresh())??!1}})),e.template&&R("detailCellRendererParams.template is not supported by AG Grid React. To change the template, provide a Custom Detail Cell Renderer. See https://ag-grid.com/react-data-grid/master-detail-custom-detail/");const D=C.useCallback(x=>{var k;if(m.current=x,!x){f.current=i.destroyBean(f.current),(k=v.current)==null||k.call(v);return}const I={addOrRemoveCssClass:(L,B)=>a(J=>J.setClass(L,B)),addOrRemoveDetailGridCssClass:(L,B)=>c(J=>J.setClass(L,B)),setDetailGrid:L=>h(L),setRowData:L=>g(L),getGui:()=>m.current},G=s.getInstance("detailCellRenderer");if(G&&(i.createBean(G),G.init(I,e),f.current=G,o.get("detailRowAutoHeight"))){const L=()=>
221{if(m.current==null)return;const B=m.current.clientHeight;B!=null&&B>0&&setTimeout(()=>{e.node.setRowHeight(B),(re(o)||Ue(o))&&n.onRowHeightChanged()},0)};v.current=r.observeResize(x,L),L()}},[]),M=C.useCallback(x=>{var I;(I=f.current)==null||I.registerDetailWithMaster(x)},[]);return T.createElement("div",{className:w,ref:D},u&&T.createElement(yc,{className:F,...u,modules:y,rowData:p,setGridApi:M}))}),KR=class extends Ud{constructor(e){super("react"),this.processQueuedUpdates=e,this.queueUpdates=!1,this.frameworkComponents={agGroupCellRenderer:wl,agGroupRowRenderer:wl,agDetailCellRenderer:_R},this.wrapIncoming=(t,s)=>s==="ensureVisible"?Ky(t):t(),this.renderingEngine="react"}frameworkComponent(e){return this.frameworkComponents[e]}isFrameworkComponent(e){if(!e)return!1;const t=e.prototype;return!(t&&"getGui"in t)}getLockOnRefresh(){this.queueUpdates=!0}releaseLockOnRefresh(){this.queueUpdates=!1,this.processQueuedUpdates()}shouldQueueUpdates(){return this.queueUpdates}runWhenReadyAsync(){return _y()}},YD=class extends C.Component{constructor(){super(...arguments),this.apiListeners=[],this.setGridApi=e=>{this.api=e,this.apiListeners.forEach(t=>t(e))}}registerApiListener(e){this.apiListeners.push(e)}componentWillUnmount(){this.apiListeners.length=0}render(){return T.createElement(yc,{...this.props,setGridApi:this.setGridApi})}};function $R(e){const{setMethods:t}=C.useContext(Eo);t(e)}function QD(e){return $R(e)}var jR={sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",count:"Count",avg:"Average"},qR=class extends b{constructor(){super(...arguments),this.beanName="aggFuncService",this.aggFuncsMap={},this.initialised=!1}postConstruct(){this.init()}init(){this.initialised||(this.initialiseWithDefaultAggregations(),this.addAggFuncs(this.gos.get("aggFuncs")))}initialiseWithDefaultAggregations(){const e=this.aggFuncsMap;e.sum=YR,e.first=QR,e.last=XR,e.min=ZR,e.max=JR,e.count=eb,e.avg=tb,this.initialised=!0}isAggFuncPossible(e,t){const s=this.getFuncNames(e),i=et(s,t),o=E(this.aggFuncsMap[t]);return i&&o}getDefaultFuncLabel(e){return jR[e]??e}getDefaultAggFunc(e){const t=e.getColDef().defaultAggFunc;if(E(t)&&this.isAggFuncPossible(e,t))return t;if(this.isAggFuncPossible(e,"sum"))return"sum";const s=this.getFuncNames(e);return ei(s)?s[0]:null}addAggFuncs(e){this.init(),Pe(e,(t,s)=>{this.aggFuncsMap[t]=s})}getAggFunc(e){return this.init(),this.aggFuncsMap[e]}getFuncNames(e){const t=e.getColDef().allowedAggFuncs;return t??Object.keys(this.aggFuncsMap).sort()}clear(){this.aggFuncsMap={}}};function YR(e){const{values:t}=e;let s=null;for(let i=0;i<t.length;i++){const o=t[i];typeof o=="number"?s===null?s=o:s+=typeof s=="number"?o:BigInt(o):typeof o=="bigint"&&(s===null?s=o:s=(typeof s=="bigint"?s:BigInt(s))+o)}return s}function QR(e){return e.values.length>0?e.values[0]:null}function XR(e){return e.values.length>0?W(e.values):null}function ZR(e){const{values:t}=e;let s=null;for(let i=0;i<t.length;i++){const o=t[i];(typeof o=="number"||typeof o=="bigint")&&(s===null||s>o)&&(s=o)}return s}function JR(e){const{values:t}=e;let s=null;for(let i=0;i<t.length;i++){const o=t[i];(typeof o=="number"||typeof o=="bigint")&&(s===null||s<o)&&(s=o)}return s}function eb(e){var o,r;const{values:t}=e;let s=0;for(let n=0;n<t.length;n++){const l=t[n];s+=l!=null&&typeof l.value=="number"?l.value:1}const i=(r=(o=e.rowNode)==null?void 0:o.aggData)==null?void 0:r[e.column.getColId()];return i&&i.value===s?i:{value:s,toString:function(){return this.value.toString()},toNumber:function(){return this.value}}}function tb(e){var n,l,a;const{values:t}=e;let s=0,i=0;for(let d=0;d<t.length;d++){const c=t[d];let u=null;typeof c=="number"||typeof c=="bigint"?(u=c,i++):c!=null&&(typeof c.value=="number"||typeof c.value=="bigint")&&typeof c.count=="number"&&(u=c.value*(typeof c.value=="number"?c.count:BigInt(c.count)),i+=c.count),typeof u=="number"?s+=typeof s=="number"?u:BigInt(u):typeof u=="bigint"&&(s=(typeof s=="bigint"?s:BigInt(s))+u)}let o=null;i>0&&(o=s/(typeof s=="number"?i:BigInt(i)));const r=(a=(n=e.rowNode)==null?void 0:n.aggData)==null?void 0:a[(l=e.column)==null?void 0:l.getColId()];return r&&r.count===i&&r.value===o?r:{count:i,value:o,toString:function(){return typeof this.value=="number"||typeof this.value=="bigint"?this.value.toString():""},toNumber:function(){return this.value}}}var sb=class extends b{constructor(){super(...arguments),this.beanName="aggregationStage"}wireBeans(e){this.columnModel=e.columnModel,this.aggFuncService=e.aggFuncService,this.funcColsService=e.funcColsService,this.pivotResultColsService=e.pivotResultColsService,this.valueService=e.valueService}execute(e){const t=Re(this.funcColsService.getValueColumns()),s=!this.gos.getCallback("getGroupRowAgg"),i=e.changedPath&&e.changedPath.isActive();if(t&&s&&i)return;const o=this.createAggDetails(e);this.recursivelyCreateAggData(o)}createAggDetails(e){const t=this.columnModel.isPivotActive(),s=this.funcColsService.getValueColumns(),i=t?this.funcColsService.getPivotColumns():[];return{alwaysAggregateAtRootLevel:this.gos.get("alwaysAggregateAtRootLevel"),groupIncludeTotalFooter:!!ho(this.gos),changedPath:e.changedPath,valueColumns:s,pivotColumns:i,filteredOnly:!this.isSuppressAggFilteredOnly(),userAggFunc:this.gos.getCallback("getGroupRowAgg")}}isSuppressAggFilteredOnly(){return fi(this.gos)!==void 0||this.gos.get("suppressAggFilteredOnly")}recursivelyCreateAggData(e){const t=s=>{if(!s.hasChildren()){s.aggData&&s.setAggData(null);return}if(s.level===-1&&!e.groupIncludeTotalFooter){const r=!this.columnModel.isPivotMode();if(!e.alwaysAggregateAtRootLevel&&r){s.setAggData(null);return}}this.aggregateRowNode(s,e)};e.changedPath.forEachChangedNodeDepthFirst(t,!0)}aggregateRowNode(e,t){const s=t.valueColumns.length===0,i=t.pivotColumns.length===0;let o;t.userAggFunc?o=t.userAggFunc({nodes:e.childrenAfterFilter}):s?o=null:i?o=this.aggregateRowNodeUsingValuesOnly(e,t):o=this.aggregateRowNodeUsingValuesAndPivot(e),e.setAggData(o),e.sibling&&e.sibling.setAggData(o)}aggregateRowNodeUsingValuesAndPivot(e){var o;const t={},s=((o=this.pivotResultColsService.getPivotResultCols())==null?void 0:o.list)??[];let i=!0;for(let r=0;r<s.length;r++){const n=s[r],l=n.getColDef();if(l.pivotTotalColumnIds!=null){i=!1;continue}const a=l.pivotKeys??[];let d;e.leafGroup?d=this.getValuesFromMappedSet(e.childrenMapped,a,l.pivotValueColumn):d=this.getValuesPivotNonLeaf(e,l.colId),t[l.colId]=this.aggregateValues(d,l.pivotValueColumn.getAggFunc(),l.pivotValueColumn,e,n)}if(!i)for(let r=0;r<s.length;r++){const n=s[r],l=n.getColDef();if(l.pivotTotalColumnIds==null||!l.pivotTotalColumnIds.length)continue;const a=l.pivotTotalColumnIds.map(d=>
221t[d]);t[l.colId]=this.aggregateValues(a,l.pivotValueColumn.getAggFunc(),l.pivotValueColumn,e,n)}return t}aggregateRowNodeUsingValuesOnly(e,t){const s={},i=t.changedPath.isActive()?t.changedPath.getValueColumnsForNode(e,t.valueColumns):t.valueColumns,o=t.changedPath.isActive()?t.changedPath.getNotValueColumnsForNode(e,t.valueColumns):null,r=this.getValuesNormal(e,i,t.filteredOnly),n=e.aggData;return i.forEach((l,a)=>{s[l.getId()]=this.aggregateValues(r[a],l.getAggFunc(),l,e)}),o&&n&&o.forEach(l=>{s[l.getId()]=n[l.getId()]}),s}getValuesPivotNonLeaf(e,t){return e.childrenAfterFilter.map(s=>s.aggData[t])}getValuesFromMappedSet(e,t,s){let i=e;for(let o=0;o<t.length;o++){const r=t[o];i=i?i[r]:null}return i?i.map(o=>this.valueService.getValue(s,o)):[]}getValuesNormal(e,t,s){const i=[];t.forEach(()=>i.push([]));const o=t.length,r=s?e.childrenAfterFilter:e.childrenAfterGroup,n=r.length;for(let l=0;l<n;l++){const a=r[l];for(let d=0;d<o;d++){const c=t[d],u=this.valueService.getValue(c,a);i[d].push(u)}}return i}aggregateValues(e,t,s,i,o){const r=typeof t=="string"?this.aggFuncService.getAggFunc(t):t;if(typeof r!="function")return _(`unrecognised aggregation function ${t}`),null;const n=r,l=this.gos.addGridCommonParams({values:e,column:s,colDef:s?s.getColDef():void 0,pivotResultColumn:o,rowNode:i,data:i?i.data:void 0});return n(l)}},ib=class extends b{constructor(){super(...arguments),this.beanName="autoColService"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.columnFactory=e.columnFactory}createAutoCols(e){const t=[],s=this.gos.get("treeData");let i=Ir(this.gos);return s&&i&&(R('you cannot mix groupDisplayType = "multipleColumns" with treeData, only one column can be used to display groups when doing tree data'),i=!1),i?e.forEach((o,r)=>{t.push(this.createOneAutoCol(o,r))}):t.push(this.createOneAutoCol()),t}updateAutoCols(e,t){e.forEach((s,i)=>this.updateOneAutoCol(s,i,t))}createOneAutoCol(e,t){let s;e?s=`${as}-${e.getId()}`:s=as;const i=this.createAutoColDef(s,e,t);i.colId=s;const o=new fo(i,null,s,!0);return this.createBean(o),o}updateOneAutoCol(e,t,s){const i=e.getColDef(),o=typeof i.showRowGroup=="string"?i.showRowGroup:void 0,r=o!=null?this.columnModel.getColDefCol(o):void 0,n=this.createAutoColDef(e.getId(),r??void 0,t);e.setColDef(n,null,s),this.columnFactory.applyColumnState(e,n,s)}createAutoColDef(e,t,s){let i=this.createBaseColDef(t);const o=this.gos.get("autoGroupColumnDef");Ee(i,o),i=this.columnFactory.addColumnDefaultAndTypes(i,e),this.gos.get("treeData")||z(i.field)&&z(i.valueGetter)&&z(i.filterValueGetter)&&i.filter!=="agGroupColumnFilter"&&(i.filter=!1),s&&s>0&&(i.headerCheckboxSelection=!1);const r=ct(this.gos),n=i.valueGetter||i.field!=null;return r&&!n&&(i.sortIndex=void 0,i.initialSort=void 0),i}createBaseColDef(e){const t=this.gos.get("autoGroupColumnDef"),i={headerName:this.localeService.getLocaleTextFunc()("group","Group")};if(t&&(t.cellRenderer||t.cellRendererSelector)||(i.cellRenderer="agGroupCellRenderer"),e){const r=e.getColDef();Object.assign(i,{headerName:this.columnNameService.getDisplayNameForColumn(e,"header"),headerValueGetter:r.headerValueGetter}),r.cellRenderer&&Object.assign(i,{cellRendererParams:{innerRenderer:r.cellRenderer,innerRendererParams:r.cellRendererParams}}),i.showRowGroup=e.getColId()}else i.showRowGroup=!0;return i}},ob=class extends Jw{constructor(e,t,s,i,o){super(t,s,o,` 222 <span role="option"> 223 <span data-ref="eDragHandle" class="ag-drag-handle ag-column-drop-cell-drag-handle" role="presentation"></span> 224 <span data-ref="eText" class="ag-column-drop-cell-text" aria-hidden="true"></span> 225 <ag-sort-indicator data-ref="eSortIndicator"></ag-sort-indicator> 226 <span data-ref="eButton" class="ag-column-drop-cell-button" role="presentation"></span> 227 </span> 228 `,[Ga]),this.column=e,this.dropZonePurpose=i,this.eSortIndicator=P,this.popupShowing=!1}wireBeans(e){super.wireBeans(e),this.popupService=e.popupService,this.sortController=e.sortController,this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.aggFuncService=e.aggFuncService}postConstruct(){this.displayName=this.columnNameService.getDisplayNameForColumn(this.column,"columnDrop"),super.postConstruct(),this.setupSort(),this.addManagedEventListeners({sortChanged:()=>{this.setupAria()}}),this.isGroupingZone()&&this.addManagedPropertyListener("groupLockGroupColumns",()=>{this.refreshRemove(),this.refreshDraggable(),this.setupAria()})}
228getItem(){return this.column}getDisplayName(){return this.displayName}getTooltip(){return this.column.getColDef().headerTooltip}addAdditionalAriaInstructions(e,t){const s=this.gos.get("rowGroupPanelSuppressSort"),i=this.gos.get("functionsReadOnly");if(this.isAggregationZone()&&!i){const o=t("ariaDropZoneColumnValueItemDescription","Press ENTER to change the aggregation type");e.push(o)}if(this.isGroupingZone()&&this.column.isSortable()&&!s){const o=t("ariaDropZoneColumnGroupItemDescription","Press ENTER to sort");e.push(o)}super.addAdditionalAriaInstructions(e,t)}isDraggable(){return this.isReadOnly()}isRemovable(){return this.isReadOnly()}isReadOnly(){return!this.isGroupingAndLocked()&&!this.gos.get("functionsReadOnly")}getAriaDisplayName(){const e=this.localeService.getLocaleTextFunc(),{name:t,aggFuncName:s}=this.getColumnAndAggFuncName(),i=e("ariaDropZoneColumnComponentAggFuncSeparator"," of "),o={asc:e("ariaDropZoneColumnComponentSortAscending","ascending"),desc:e("ariaDropZoneColumnComponentSortDescending","descending")},r=this.column.getSort(),n=this.gos.get("rowGroupPanelSuppressSort");return[s&&`${s}${i}`,t,this.isGroupingZone()&&!n&&r&&`, ${o[r]}`].filter(l=>!!l).join("")}getColumnAndAggFuncName(){const e=this.displayName;let t="";if(this.isAggregationZone()){const s=this.column.getAggFunc(),i=typeof s=="string"?s:"agg";t=this.localeService.getLocaleTextFunc()(i,i)}return{name:e,aggFuncName:t}}setupSort(){const e=this.column.isSortable(),t=this.isGroupingZone();if(!(!e||!t)&&!this.gos.get("rowGroupPanelSuppressSort")){this.eSortIndicator.setupSort(this.column,!0);const s=i=>{i.preventDefault();const r=this.gos.get("multiSortKey")==="ctrl"?i.ctrlKey||i.metaKey:i.shiftKey;this.sortController.progressSort(this.column,r,"uiColumnSorted")};this.addGuiEventListener("click",s),this.addGuiEventListener("keydown",i=>{i.key===S.ENTER&&this.isGroupingZone()&&s(i)})}}getDefaultIconName(){return"hide"}createGetDragItem(){const{column:e}=this;return()=>{const t={};return t[e.getId()]=e.isVisible(),{columns:[e],visibleState:t}}}setupComponents(){super.setupComponents(),this.isAggregationZone()&&!this.gos.get("functionsReadOnly")&&this.addGuiEventListener("click",this.onShowAggFuncSelection.bind(this))}onKeyDown(e){super.onKeyDown(e),e.key===S.ENTER&&this.isAggregationZone()&&!this.gos.get("functionsReadOnly")&&(e.preventDefault(),this.onShowAggFuncSelection())}getDisplayValue(){const{name:e,aggFuncName:t}=this.getColumnAndAggFuncName();return this.isAggregationZone()?`${t}(${e})`:e}onShowAggFuncSelection(){if(this.popupShowing)return;this.popupShowing=!0;const e=new mn({cssIdentifier:"select-agg-func"}),t=this.aggFuncService.getFuncNames(this.column),s=this.getGui(),i=e.getGui();e.setModel({getRow:function(c){return t[c]},getRowCount:function(){return t.length}}),this.createBean(e);const o=Xe('<div class="ag-select-agg-func-popup"></div>');o.style.top="0px",o.style.left="0px",o.appendChild(i),o.style.width=`${s.clientWidth}px`;const[r]=this.addManagedElementListeners(o,{focusout:c=>{!o.contains(c.relatedTarget)&&a&&a.hideFunc()}}),n=c=>{this.destroyBean(e),this.popupShowing=!1,(c==null?void 0:c.key)==="Escape"&&s.focus(),r&&r()},l=this.localeService.getLocaleTextFunc(),a=this.popupService.addPopup({modal:!0,eChild:o,closeOnEsc:!0,closedCallback:n,ariaLabel:l("ariaLabelAggregationFunction","Aggregation Function")});a&&e.setComponentCreator(this.createAggSelect.bind(this,a.hideFunc)),e.addGuiEventListener("keydown",c=>{if(c.key===S.ENTER||c.key===S.SPACE){const u=e.getLastFocusedRow();if(u==null)return;const h=e.getComponentAt(u);h&&h.selectItem()}}),this.popupService.positionPopupByComponent({type:"aggFuncSelect",eventSource:s,ePopup:o,keepWithinBounds:!0,column:this.column,position:"under"}),e.refresh();let d=t.findIndex(c=>c===this.column.getAggFunc());d===-1&&(d=0),e.focusRow(d)}createAggSelect(e,t){const s=()=>{e(),this.getGui().focus(),this.funcColsService.setColumnAggFunc(this.column,t,"toolPanelDragAndDrop")},i=this.localeService.getLocaleTextFunc(),o=t.toString(),r=i(o,o);return new rb(s,r)}isGroupingAndLocked(){return this.isGroupingZone()&&this.columnModel.isColGroupLocked(this.column)}isAggregationZone(){return this.dropZonePurpose==="aggregation"}isGroupingZone(){return this.dropZonePurpose==="rowGroup"}getDragSourceType(){return ds.ToolPanel}destroy(){super.destroy(),this.column=null}},rb=class extends O{constructor(e,t){super('<div class="ag-select-agg-func-item"/>'),this.selectItem=e,this.getGui().innerText=t,this.addGuiEventListener("click",this.selectItem)}},Pn=class extends ey{constructor(e,t){super(e),this.dropZonePurpose=t}wireBeans(e){super.wireBeans(e),this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}init(e){super.init(e),this.addManagedEventListeners({newColumnsLoaded:this.refreshGui.bind(this)}),this.addManagedPropertyListeners(["functionsReadOnly","rowGroupPanelSuppressSort","groupLockGroupColumns"],this.refreshGui.bind(this))}getItems(e){return e.columns??[]}isInterestedIn(e){return e===ds.HeaderCell||e===ds.ToolPanel}minimumAllowedNewInsertIndex(){const e=this.gos.get("groupLockGroupColumns"),t=this.funcColsService.getRowGroupColumns().length;return e===-1?t:Math.min(e,t)}showOrHideColumnOnExit(e){return this.isRowGroupPanel()&&!this.gos.get("suppressRowGroupHidesColumns")&&!e.fromNudge}handleDragEnterEnd(e){if(this.showOrHideColumnOnExit(e)){const i=e.dragSource.getDragItem().columns;this.setColumnsVisible(i,!1,"uiColumnDragged")}}handleDragLeaveEnd(e){if(this.showOrHideColumnOnExit(e)){const s=e.dragSource.getDragItem();this.setColumnsVisible(s.columns,!0,"uiColumnDragged")}}
228setColumnsVisible(e,t,s){if(e){const i=e.filter(o=>!o.getColDef().lockVisible);this.columnModel.setColsVisible(i,t,s)}}isRowGroupPanel(){return this.dropZonePurpose==="rowGroup"}createPillComponent(e,t,s,i){return new ob(e,t,s,this.dropZonePurpose,i)}},Rr=class extends Pn{constructor(e){super(e,"pivot")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("pivotColumnsEmptyMessage","Drag here to set column labels"),s=e("pivots","Column Labels");super.init({icon:N("pivotPanel",this.gos,null),emptyMessage:t,title:s}),this.addManagedEventListeners({newColumnsLoaded:this.refresh.bind(this),columnPivotChanged:this.refresh.bind(this),columnPivotModeChanged:this.checkVisibility.bind(this)}),this.refresh()}getAriaLabel(){return this.localeService.getLocaleTextFunc()("ariaPivotDropZonePanelLabel","Column Labels")}getTooltipParams(){const e=super.getTooltipParams();return e.location="pivotColumnsList",e}refresh(){this.checkVisibility(),this.refreshGui()}checkVisibility(){const e=this.columnModel.isPivotMode();if(this.isHorizontal())switch(this.gos.get("pivotPanelShow")){case"always":this.setDisplayed(e);break;case"onlyWhenPivoting":{const t=this.columnModel.isPivotActive();this.setDisplayed(e&&t);break}default:this.setDisplayed(!1);break}else this.setDisplayed(e)}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowPivot()&&(!e.isPivotActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.funcColsService.setPivotColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"pivot":"notAllowed"}getExistingItems(){return this.funcColsService.getPivotColumns()}},br=class extends Pn{constructor(e){super(e,"rowGroup")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("rowGroupColumnsEmptyMessage","Drag here to set row groups"),s=e("groups","Row Groups");super.init({icon:N("rowGroupPanel",this.gos,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnRowGroupChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.localeService.getLocaleTextFunc()("ariaRowGroupDropZonePanelLabel","Row Groups")}getTooltipParams(){const e=super.getTooltipParams();return e.location="rowGroupColumnsList",e}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowRowGroup()&&(!e.isRowGroupActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.funcColsService.setRowGroupColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"group":"notAllowed"}getExistingItems(){return this.funcColsService.getRowGroupColumns()}},nb=class extends O{wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}constructor(){super()}postConstruct(){this.setGui(this.createNorthPanel());const e=this.onRowGroupChanged.bind(this);this.addManagedEventListeners({columnRowGroupChanged:e,newColumnsLoaded:e}),this.addManagedPropertyListener("rowGroupPanelShow",e),this.addManagedPropertyListener("pivotPanelShow",()=>this.onPivotPanelShow()),this.onRowGroupChanged()}createNorthPanel(){const e=document.createElement("div");e.classList.add("ag-column-drop-wrapper"),he(e,"presentation"),this.rowGroupComp=new br(!0),this.createManagedBean(this.rowGroupComp),this.pivotComp=new Rr(!0),this.createManagedBean(this.pivotComp),e.appendChild(this.rowGroupComp.getGui()),e.appendChild(this.pivotComp.getGui());const t=this.onDropPanelVisible.bind(this);return this.addManagedListeners(this.rowGroupComp,{displayChanged:t}),this.addManagedListeners(this.pivotComp,{displayChanged:t}),this.onDropPanelVisible(),e}onDropPanelVisible(){const e=this.rowGroupComp.isDisplayed()&&this.pivotComp.isDisplayed(),t="ag-column-drop-horizontal-half-width";this.rowGroupComp.addOrRemoveCssClass(t,e),this.pivotComp.addOrRemoveCssClass(t,e)}onRowGroupChanged(){if(!this.rowGroupComp)return;const e=this.gos.get("rowGroupPanelShow");if(e==="always")this.rowGroupComp.setDisplayed(!0);else if(e==="onlyWhenGrouping"){const t=!this.funcColsService.isRowGroupEmpty();this.rowGroupComp.setDisplayed(t)}else this.rowGroupComp.setDisplayed(!1)}onPivotPanelShow(){if(!this.pivotComp)return;const e=this.gos.get("pivotPanelShow");if(e==="always")this.pivotComp.setDisplayed(!0);else if(e==="onlyWhenPivoting"){const t=this.columnModel.isPivotActive();this.pivotComp.setDisplayed(t)}else this.pivotComp.setDisplayed(!1)}},lb={selector:"AG-GRID-HEADER-DROP-ZONES",component:nb},ab=class extends b{constructor(){super(...arguments),this.beanName="
228columnDropZonesService"}getDropZoneSelector(){return lb}},db=class extends b{constructor(){super(...arguments),this.beanName="filterAggregatesStage"}wireBeans(e){this.filterManager=e.filterManager,this.columnModel=e.columnModel}execute(e){var d,c;const t=this.columnModel.isPivotMode(),s=((d=this.filterManager)==null?void 0:d.isAggregateFilterPresent())||((c=this.filterManager)==null?void 0:c.isAggregateQuickFilterPresent()),i=u=>!u.node.group,o=u=>u.node.leafGroup,r=fi(this.gos)||(t?o:i),{changedPath:n}=e,l=(u,h=!1)=>{u.childrenAfterFilter&&(u.childrenAfterAggFilter=u.childrenAfterFilter,h&&u.childrenAfterAggFilter.forEach(p=>l(p,h)),this.setAllChildrenCount(u)),u.sibling&&(u.sibling.childrenAfterAggFilter=u.childrenAfterAggFilter)},a=u=>{var h;u.childrenAfterAggFilter=((h=u.childrenAfterFilter)==null?void 0:h.filter(p=>{var m;return r({node:p})&&this.filterManager.doesRowPassAggregateFilters({rowNode:p})?(l(p,!0),!0):(m=p.childrenAfterAggFilter)==null?void 0:m.length}))||null,this.setAllChildrenCount(u),u.sibling&&(u.sibling.childrenAfterAggFilter=u.childrenAfterAggFilter)};n.forEachChangedNodeDepthFirst(s?a:l,!0)}setAllChildrenCountTreeData(e){const t=e.childrenAfterAggFilter;let s=0;if(t){const i=t.length;s=i;for(let o=0;o<i;++o)s+=t[o].allChildrenCount??0}e.setAllChildrenCount(s===0&&e.level>=0?null:s)}setAllChildrenCountGridGrouping(e){let t=0;e.childrenAfterAggFilter.forEach(s=>{s.group?t+=s.allChildrenCount:t++}),e.setAllChildrenCount(t)}setAllChildrenCount(e){if(!e.hasChildren()){e.setAllChildrenCount(null);return}this.gos.get("treeData")?this.setAllChildrenCountTreeData(e):this.setAllChildrenCountGridGrouping(e)}},cb=class extends fs{constructor(){super(` 229 <div class="ag-group-filter"> 230 <div data-ref="eGroupField"></div> 231 <div data-ref="eUnderlyingFilter"></div> 232 </div> 233 `),this.eGroupField=P,this.eUnderlyingFilter=P}wireBeans(e){this.filterManager=e.filterManager,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService}postConstruct(){this.initialiseTabGuard({})}init(e){return this.updateParams(e).then(()=>{this.addManagedEventListeners({columnRowGroupChanged:()=>this.onColumnRowGroupChanged(),filterDestroyed:t=>this.onFilterDestroyed(t)})})}refresh(e){return this.updateParams(e),!0}updateParams(e){return this.params=e,this.validateParams(),this.updateGroups()}validateParams(){const{colDef:e}=this.params;e.field&&R('Group Column Filter does not work with the colDef property "field". This property will be ignored.'),e.filterValueGetter&&R('Group Column Filter does not work with the colDef property "filterValueGetter". This property will be ignored.'),e.filterParams&&R('Group Column Filter does not work with the colDef property "filterParams". This property will be ignored.')}updateGroups(){const e=this.updateGroupField();return this.getUnderlyingFilters(e)}getSourceColumns(){if(this.groupColumn=this.params.column,this.gos.get("treeData"))return R("Group Column Filter does not work with Tree Data enabled. Please disable Tree Data, or use a different filter."),[];const e=this.funcColsService.getSourceColumnsForGroupColumn(this.groupColumn);return e||(R("Group Column Filter only works on group columns. Please use a different filter."),[])}updateGroupField(){de(this.eGroupField),this.eGroupFieldSelect&&this.destroyBean(this.eGroupFieldSelect);const e=this.getSourceColumns(),t=e.filter(s=>s.isFilterAllowed());return t.length?(e.length===1?(this.selectedColumn=t[0],H(this.eGroupField,!1)):((!this.selectedColumn||!t.some(s=>s.getId()===this.selectedColumn.getId()))&&(this.selectedColumn=t[0]),this.createGroupFieldSelectElement(t),this.eGroupField.appendChild(this.eGroupFieldSelect.getGui()),this.eGroupField.appendChild(Xe('<div class="ag-filter-separator"></div>')),H(this.eGroupField,!0)),t):(this.selectedColumn=void 0,H(this.eGroupField,!1),null)}createGroupFieldSelectElement(e){this.eGroupFieldSelect=this.createManagedBean(new yo);const t=this.localeService.getLocaleTextFunc();this.eGroupFieldSelect.setLabel(t("groupFilterSelect","Select field:")),this.eGroupFieldSelect.setLabelAlignment("top"),this.eGroupFieldSelect.addOptions(e.map(s=>({value:s.getId(),text:this.columnNameService.getDisplayNameForColumn(s,"groupFilter",!1)??void 0}))),this.eGroupFieldSelect.setValue(this.selectedColumn.getId()),this.eGroupFieldSelect.onValueChange(s=>this.updateSelectedColumn(s)),this.eGroupFieldSelect.addCssClass("ag-group-filter-field-select-wrapper"),e.length===1&&this.eGroupFieldSelect.setDisabled(!0)}getUnderlyingFilters(e){if(!e)return this.filterColumnPairs=void 0,this.selectedFilter=void 0,this.groupColumn.setFilterActive(!1,"columnRowGroupChanged"),K.resolve();const t=[],s=[];return e.forEach(i=>
233{const o=this.filterManager.getOrCreateFilterWrapper(i);o!=null&&o.filterPromise&&t.push(o.filterPromise.then(r=>(r&&s.push({filter:r,column:i}),i.getId()===this.selectedColumn.getId()&&(this.selectedFilter=r??void 0),r)))}),K.all(t).then(()=>{this.filterColumnPairs=s,this.groupColumn.setFilterActive(this.isFilterActive(),"columnRowGroupChanged")})}addUnderlyingFilterElement(){var t;if(de(this.eUnderlyingFilter),!this.selectedColumn)return K.resolve();const e=this.createManagedBean(new Zr(this.selectedColumn,"COLUMN_MENU"));return this.filterWrapperComp=e,e.hasFilter()?(this.eUnderlyingFilter.appendChild(e.getGui()),((t=e.getFilter())==null?void 0:t.then(()=>{var s,i;(s=e.afterGuiAttached)==null||s.call(e,this.afterGuiAttachedParams),!((i=this.afterGuiAttachedParams)!=null&&i.suppressFocus)&&this.eGroupFieldSelect&&!this.eGroupFieldSelect.isDisabled()&&this.eGroupFieldSelect.getFocusableElement().focus()}))??K.resolve()):K.resolve()}updateSelectedColumn(e){var s;if(!e)return;(s=this.filterWrapperComp)==null||s.afterGuiDetached(),this.destroyBean(this.filterWrapperComp);const t=this.getFilterColumnPair(e);this.selectedColumn=t==null?void 0:t.column,this.selectedFilter=t==null?void 0:t.filter,this.dispatchLocalEvent({type:"selectedColumnChanged"}),this.addUnderlyingFilterElement()}isFilterActive(){var e;return!!((e=this.filterColumnPairs)!=null&&e.some(({filter:t})=>t.isFilterActive()))}doesFilterPass(){return!0}getModel(){return null}setModel(){return K.resolve()}afterGuiAttached(e){this.afterGuiAttachedParams=e,this.addUnderlyingFilterElement()}afterGuiDetached(){var e,t;de(this.eUnderlyingFilter),(t=(e=this.selectedFilter)==null?void 0:e.afterGuiDetached)==null||t.call(e)}onColumnRowGroupChanged(){this.updateGroups().then(()=>{this.dispatchLocalEvent({type:"columnRowGroupChanged"})})}onFilterDestroyed({column:e,source:t}){var i;if(t==="gridDestroyed")return;const s=e.getColId();(i=this.filterColumnPairs)!=null&&i.some(({column:o})=>o.getColId()===s)&&setTimeout(()=>{this.isAlive()&&this.updateGroups()})}getFilterColumnPair(e){var t;if(e)return(t=this.filterColumnPairs)==null?void 0:t.find(({column:s})=>s.getId()===e)}getSelectedFilter(){return this.selectedFilter}getSelectedColumn(){return this.selectedColumn}isFilterAllowed(){return!!this.selectedColumn}destroy(){super.destroy()}},ub=class extends O{constructor(){super(` 234 <div data-ref="eFloatingFilter" class="ag-group-floating-filter ag-floating-filter-input" role="presentation"></div> 235 `),this.eFloatingFilter=P,this.haveAddedColumnListeners=!1}wireBeans(e){this.columnNameService=e.columnNameService,this.filterManager=e.filterManager}init(e){this.params=e;const t=this.gos.get("groupDisplayType")==="multipleColumns";return new K(s=>{this.params.parentFilterInstance(i=>{this.parentFilterInstance=i,t?this.setupUnderlyingFloatingFilterElement().then(()=>s()):(this.setupReadOnlyFloatingFilterElement(),s())})}).then(()=>{this.addManagedListeners(this.parentFilterInstance,{selectedColumnChanged:this.onSelectedColumnChanged.bind(this),columnRowGroupChanged:this.onColumnRowGroupChanged.bind(this)})})}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e,this.setParams()}setParams(){var s;const e=this.columnNameService.getDisplayNameForColumn(this.params.column,"header",!0),t=this.localeService.getLocaleTextFunc();(s=this.eFloatingFilterText)==null||s.setInputAriaLabel(`${e} ${t("ariaFilterInput","Filter Input")}`)}setupReadOnlyFloatingFilterElement(){this.eFloatingFilterText||(this.eFloatingFilterText=this.createManagedBean(new Yt),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,de(this.eFloatingFilter);const e=this.parentFilterInstance.getSelectedColumn();if(e&&!e.isVisible()){const t=this.filterManager.getFloatingFilterCompDetails(e,this.params.showParentFilter);if(t)return this.haveAddedColumnListeners||(this.haveAddedColumnListeners=!0,this.addManagedListeners(e,{visibleChanged:this.onColumnVisibleChanged.bind(this),colDefChanged:this.onColDefChanged.bind(this)})),t.newAgStackInstance().then(s=>{var i,o;this.underlyingFloatingFilter=s,(o=this.underlyingFloatingFilter)==null||o.onParentModelChanged((i=this.parentFilterInstance.getSelectedFilter())==null?void 0:i.getModel()),this.appendChild(s.getGui()),this.showingUnderlyingFloatingFilter=!0})}return this.setupReadOnlyFloatingFilterElement(),K.resolve()}onColumnVisibleChanged(){this.setupUnderlyingFloatingFilterElement()}onColDefChanged(e){var s,i,o;if(!e.column)return;
235const t=this.filterManager.getFloatingFilterCompDetails(e.column,this.params.showParentFilter);t&&((s=this.underlyingFloatingFilter)!=null&&s.refresh?this.underlyingFloatingFilter.refresh(t.params):(o=(i=this.underlyingFloatingFilter)==null?void 0:i.onParamsUpdated)==null||o.call(i,t.params))}onParentModelChanged(e,t){var s,i;this.showingUnderlyingFloatingFilter?(i=this.underlyingFloatingFilter)==null||i.onParentModelChanged((s=this.parentFilterInstance.getSelectedFilter())==null?void 0:s.getModel(),t):this.updateDisplayedValue()}updateDisplayedValue(){if(!this.parentFilterInstance||!this.eFloatingFilterText)return;const e=this.parentFilterInstance.getSelectedFilter();if(!e){this.eFloatingFilterText.setValue(""),this.eFloatingFilterText.setDisplayed(!1);return}if(this.eFloatingFilterText.setDisplayed(!0),e.getModelAsString){const t=e.getModel();this.eFloatingFilterText.setValue(t==null?"":e.getModelAsString(t))}else this.eFloatingFilterText.setValue("")}onSelectedColumnChanged(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}onColumnRowGroupChanged(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}destroy(){super.destroy()}},qo=class{constructor(){this.allSets={},this.allParents=[]}removeFromChildrenAfterGroup(e,t){const s=this.getSet(e);s.removeFromChildrenAfterGroup[t.id]=!0}isRemoveFromAllLeafChildren(e,t){return!!this.getSet(e).removeFromAllLeafChildren[t.id]}preventRemoveFromAllLeafChildren(e,t){const s=this.getSet(e);delete s.removeFromAllLeafChildren[t.id]}removeFromAllLeafChildren(e,t){const s=this.getSet(e);s.removeFromAllLeafChildren[t.id]=!0}getSet(e){return this.allSets[e.id]||(this.allSets[e.id]={removeFromAllLeafChildren:{},removeFromChildrenAfterGroup:{}},this.allParents.push(e)),this.allSets[e.id]}getAllParents(){return this.allParents}flush(){this.allParents.forEach(e=>{var i;const t=this.allSets[e.id];e.childrenAfterGroup=e.childrenAfterGroup.filter(o=>!t.removeFromChildrenAfterGroup[o.id]),e.allLeafChildren=((i=e.allLeafChildren)==null?void 0:i.filter(o=>!t.removeFromAllLeafChildren[o.id]))??null,e.updateHasChildren();const s=e.sibling;s&&(s.childrenAfterGroup=e.childrenAfterGroup,s.allLeafChildren=e.allLeafChildren)}),this.allSets={},this.allParents.length=0}};function hb(e){if(!e)return!1;const t=e.length;if(t<2)return!1;let s=!1;for(let i=1;i<t;i++)if(Fl(e[i-1],e[i])>0){s=!0;break}return s?(e.sort(Fl),!0):!1}function Fl(e,t){const s=e.sourceRowIndex,i=t.sourceRowIndex,o=s>=0,r=i>=0,n=o&&r,l=!o&&!r;return n?s-i:l?e.__objectId-t.__objectId:o?1:-1}var pb=class extends b{wireBeans(e){this.beans=e,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.selectionService=e.selectionService,this.showRowGroupColsService=e.showRowGroupColsService}execute(e){const t=this.createGroupingDetails(e);if(t.transactions)this.handleTransaction(t);else{const s=e.afterColumnsChanged===!0;this.shotgunResetEverything(t,s)}this.positionLeafsAndGroups(e.changedPath),this.orderGroups(t)}positionLeafsAndGroups(e){e.forEachChangedNodeDepthFirst(t=>{if(t.childrenAfterGroup){const s=[],i=[];let o;t.childrenAfterGroup.forEach(r=>{var n;(n=r.childrenAfterGroup)!=null&&n.length?r.key===""&&!o?o=r:i.push(r):s.push(r)}),o&&i.push(o),t.childrenAfterGroup=[...s,...i]}},!1)}createGroupingDetails(e){const{rowNode:t,changedPath:s,rowNodeTransactions:i,rowNodesOrderChanged:o}=e,r=this.funcColsService.getRowGroupColumns();return{expandByDefault:this.gos.get("groupDefaultExpanded"),groupedCols:r,rootNode:t,pivotMode:this.columnModel.isPivotMode(),groupedColCount:(r==null?void 0:r.length)??0,transactions:i,rowNodesOrderChanged:!!o,changedPath:s,groupAllowUnbalanced:this.gos.get("groupAllowUnbalanced"),isGroupOpenByDefault:this.gos.getCallback("isGroupOpenByDefault"),initialGroupOrderComparator:this.gos.getCallback("initialGroupOrderComparator"),suppressGroupMaintainValueType:this.gos.get("suppressGroupMaintainValueType"),keyCreators:(r==null?void 0:r.map(l=>l.getColDef().keyCreator))??[]}}handleTransaction(e){e.transactions.forEach(t=>{const s=new qo;ei(t.remove)&&this.removeNodes(t.remove,e,s),ei(t.update)&&this.moveNodesInWrongPath(t.update,e,s),ei(t.add)&&this.insertNodes(t.add,e);const i=s.getAllParents().slice();s.flush(),this.removeEmptyGroups(i,e)}),e.rowNodesOrderChanged&&this.sortChildren(e)}sortChildren(e){e.changedPath.forEachChangedNodeDepthFirst(t=>{hb(t.childrenAfterGroup)&&e.changedPath.addParentNode(t)},!1,!0)}orderGroups(e){const t=e.initialGroupOrderComparator;E(t)&&s(e.rootNode);function s(i){E(i.childrenAfterGroup)&&!i.leafGroup&&(i.childrenAfterGroup.sort((r,n)=>t({nodeA:r,nodeB:n})),i.childrenAfterGroup.forEach(r=>s(r)))}}getExistingPathForNode(e,t){const s=[];let i=e.parent;for(;i&&i!==t.rootNode;)s.push({key:i.key,rowGroupColumn:i.rowGroupColumn,field:i.field}),i=i.parent;return s.reverse(),s}moveNodesInWrongPath(e,t,s){e.forEach(i=>
235{t.changedPath.isActive()&&t.changedPath.addParentNode(i.parent);const o=a=>a.key,r=this.getExistingPathForNode(i,t).map(o),n=this.getGroupInfo(i,t).map(o);Je(r,n)||this.moveNode(i,t,s)})}moveNode(e,t,s){if(this.removeNodesFromParents([e],t,s),this.insertOneNode(e,t,s),e.setData(e.data),t.changedPath.isActive()){const i=e.parent;t.changedPath.addParentNode(i)}}removeNodes(e,t,s){this.removeNodesFromParents(e,t,s),t.changedPath.isActive()&&e.forEach(i=>t.changedPath.addParentNode(i.parent))}forEachParentGroup(e,t,s){let i=t;for(;i&&i!==e.rootNode;)s(i),i=i.parent}removeNodesFromParents(e,t,s){const i=s==null,o=s||new qo;e.forEach(r=>{this.removeFromParent(r,o),this.forEachParentGroup(t,r.parent,n=>{o.removeFromAllLeafChildren(n,r)})}),i&&o.flush()}removeEmptyGroups(e,t){let s=!0;const i=o=>{var a;const r=this.getChildrenMappedKey(o.key,o.rowGroupColumn),n=o.parent;return(n!=null&&n.childrenMapped?!n.childrenMapped[r]:!0)?!1:!!o.group&&(((a=o.childrenAfterGroup)==null?void 0:a.length)??0)===0};for(;s;){s=!1;const o=new qo;e.forEach(r=>{this.forEachParentGroup(t,r,n=>{i(n)&&(s=!0,this.removeFromParent(n,o),n.setSelectedParams({newValue:!1,source:"rowGroupChanged"}))})}),o.flush()}}removeFromParent(e,t){var i;e.parent&&(t?t.removeFromChildrenAfterGroup(e.parent,e):(ke(e.parent.childrenAfterGroup,e),e.parent.updateHasChildren()));const s=this.getChildrenMappedKey(e.key,e.rowGroupColumn);(i=e.parent)!=null&&i.childrenMapped&&delete e.parent.childrenMapped[s],e.setRowTop(null),e.setRowIndex(null)}addToParent(e,t){const s=this.getChildrenMappedKey(e.key,e.rowGroupColumn);t!=null&&t.childrenMapped&&t.childrenMapped[s]!==e&&(t.childrenMapped[s]=e,t.childrenAfterGroup.push(e),t.setGroup(!0))}areGroupColsEqual(e,t){return e==null||t==null||e.pivotMode!==t.pivotMode?!1:Je(e.groupedCols,t.groupedCols)&&Je(e.keyCreators,t.keyCreators)}checkAllGroupDataAfterColsChanged(e){const t=s=>{s&&s.forEach(i=>{var n;if(!i.group)return;const r={field:i.field,key:i.key,rowGroupColumn:i.rowGroupColumn,leafNode:(n=i.allLeafChildren)==null?void 0:n[0]};this.setGroupData(i,r,e),t(i.childrenAfterGroup)})};t(e.rootNode.childrenAfterGroup)}shotgunResetEverything(e,t){if(this.noChangeInGroupingColumns(e,t))return;this.selectionService.filterFromSelection(r=>r&&!r.group);const{groupedCols:s}=e,i=e.rootNode;i.leafGroup=s.length===0,i.childrenAfterGroup=[],i.childrenMapped={},i.updateHasChildren();const o=i.sibling;o&&(o.childrenAfterGroup=i.childrenAfterGroup,o.childrenMapped=i.childrenMapped),this.insertNodes(i.allLeafChildren,e)}noChangeInGroupingColumns(e,t){let s=!1;const i=this.showRowGroupColsService.getShowRowGroupCols(),o=i?i.map(r=>r.getId()).join("-"):"";return t&&(s=this.areGroupColsEqual(e,this.oldGroupingDetails),this.oldGroupDisplayColIds!==o&&this.checkAllGroupDataAfterColsChanged(e)),this.oldGroupingDetails=e,this.oldGroupDisplayColIds=o,s}insertNodes(e,t){e.forEach(s=>{this.insertOneNode(s,t),t.changedPath.isActive()&&t.changedPath.addParentNode(s.parent)})}insertOneNode(e,t,s){const i=this.getGroupInfo(e,t),o=this.findParentForNode(e,i,t,s);o.group||R("duplicate group keys for row data, keys should be unique",[o.data,e.data]),e.parent=o,e.level=i.length,o.childrenAfterGroup.push(e),o.updateHasChildren()}findParentForNode(e,t,s,i){let o=s.rootNode;return t.forEach((r,n)=>{o=this.getOrCreateNextNode(o,r,n,s),i!=null&&i.isRemoveFromAllLeafChildren(o,e)?i==null||i.preventRemoveFromAllLeafChildren(o,e):o.allLeafChildren.push(e)}),o}getOrCreateNextNode(e,t,s,i){var n;const o=this.getChildrenMappedKey(t.key,t.rowGroupColumn);let r=(n=e==null?void 0:e.childrenMapped)==null?void 0:n[o];return r||(r=this.createGroup(t,e,s,i),this.addToParent(r,e)),r}createGroup(e,t,s,i){const o=new qe(this.beans);return o.group=!0,o.field=e.field,o.rowGroupColumn=e.rowGroupColumn,this.setGroupData(o,e,i),o.key=e.key,o.id=this.createGroupId(o,t,s),o.level=s,o.leafGroup=s===i.groupedColCount-1,o.allLeafChildren=[],o.setAllChildrenCount(0),o.rowGroupIndex=s,o.childrenAfterGroup=[],o.childrenMapped={},o.updateHasChildren(),o.parent=t,this.setExpandedInitialValue(i,o),o}createGroupId(e,t,s){const i=(o,r)=>{if(!o.rowGroupColumn)return null;const n=r?i(r,r.parent):null;return`${n==null?"":n+"-"}${o.rowGroupColumn.getColId()}-${o.key}`};return qe.ID_PREFIX_ROW_GROUP+i(e,t)}setGroupData(e,t,s){e.groupData={}
235,this.showRowGroupColsService.getShowRowGroupCols().forEach(o=>{const r=e.rowGroupColumn;r!==null&&o.isRowGroupDisplayed(r.getId())&&(s.suppressGroupMaintainValueType?e.groupData[o.getColId()]=t.key:e.groupData[o.getColId()]=this.valueService.getValue(r,t.leafNode))})}getChildrenMappedKey(e,t){return t?t.getId()+"-"+e:e}setExpandedInitialValue(e,t){if(e.pivotMode&&t.leafGroup){t.expanded=!1;return}const s=e.isGroupOpenByDefault;if(s){const i={rowNode:t,field:t.field,key:t.key,level:t.level,rowGroupColumn:t.rowGroupColumn};t.expanded=s(i)==!0;return}if(e.expandByDefault===-1){t.expanded=!0;return}t.expanded=t.level<e.expandByDefault}getGroupInfo(e,t){const s=[];return t.groupedCols.forEach(i=>{let o=this.valueService.getKeyForNode(i,e),r=o!=null&&o!=="";if((t.pivotMode||!t.groupAllowUnbalanced)&&!r&&(o="",r=!0),r){const l={key:o,field:i.getColDef().field,rowGroupColumn:i,leafNode:e};s.push(l)}}),s}},gb=(e,t)=>e.treeNode.oldSourceRowIndex-t.treeNode.oldSourceRowIndex,Fe=Object.freeze([]),fb=Fe.values(),Bi=(e,t)=>{e.parent=null,e.treeNode=null,t?e.childrenAfterGroup=[]:(e.level=0,e.childrenAfterGroup=null,e.allLeafChildren=null)},mb=class Rc{constructor(t,s,i){this.parent=t,this.key=s,this.level=i,this.children=null,this.invalidatedHead=null,this.invalidatedNext=void 0,this.row=null,this.oldRow=null,this.duplicateRows=null,this.childrenAfterGroup=Fe,this.allLeafChildren=Fe,this.childrenChanged=!1,this.leafChildrenChanged=!1,this.oldSourceRowIndex=-1}isEmptyFillerNode(){var t,s;return!((t=this.row)!=null&&t.data)&&!((s=this.children)!=null&&s.size)}hasChildren(){var t;return!!((t=this.children)!=null&&t.size)}enumChildren(){var t;return((t=this.children)==null?void 0:t.values())??fb}upsertKey(t){var i,o;typeof t!="string"&&(t=String(t));let s=(i=this.children)==null?void 0:i.get(t);return s||(s=new Rc(this,t,this.level+1),(o=this.children??(this.children=new Map))==null||o.set(s.key,s)),s}destroy(){var i;const{row:t,parent:s}=this;s!==null&&((i=s==null?void 0:s.children)==null||i.delete(this.key),t!==null&&Bi(t,!0),this.parent=null)}setRow(t){const{level:s,row:i,childrenAfterGroup:o}=this;if(s<0)i!==null&&i!==t&&Bi(i,!0);else{if(i===t)return!1;i!==null?(t.allLeafChildren=i.allLeafChildren??this.allLeafChildren??Fe,Bi(i,!1)):t.allLeafChildren=this.allLeafChildren??Fe}return t.level=s,t.childrenAfterGroup=o,t.treeNode=this,this.row=t,!0}removeRow(t){const{level:s,row:i,duplicateRows:o,childrenAfterGroup:r}=this;if(i===t){const n=this.popDuplicateRow();n?(this.row=n,n.childrenAfterGroup=r,s>=0&&(n.allLeafChildren=i.allLeafChildren??this.allLeafChildren??Fe)):this.row=null}else{if(!(o!=null&&o.delete(t)))return!1;o.size===0&&(this.duplicateRows=null)}return Bi(t,s<0),!0}addDuplicateRow(t){const{level:s}=this;let i=this.duplicateRows;if(i===null)i=new Set,this.duplicateRows=i;else if(i.has(t))return!1;return i.add(t),t.treeNode=this,t.level=s,s>=0&&(t.allLeafChildren=Fe),t.childrenAfterGroup=Fe,!0}sortFirstDuplicateRow(){const t=this.duplicateRows,s=this.row;if(!s||!t)return s;let i=s;for(const o of t)o.sourceRowIndex<i.sourceRowIndex&&(i=o);return i!==s&&(i.childrenAfterGroup=this.childrenAfterGroup,i.allLeafChildren=s.allLeafChildren??this.allLeafChildren??Fe,s.childrenAfterGroup=Fe,s.allLeafChildren=Fe,t.delete(i),t.add(s),this.row=i),i}popDuplicateRow(){let t=null;const s=this.duplicateRows;return s!==null&&(t=s.values().next().value,t!==null&&s.delete(t)&&s.size===0&&(this.duplicateRows=null)),t}dequeueInvalidated(){const t=this.invalidatedHead;return t!==null&&(this.invalidatedHead=t.invalidatedNext??null,t.invalidatedNext=void 0),t}invalidate(){let t=this,s=this.parent;for(;s!==null&&t.invalidatedNext===void 0;
235)t.invalidatedNext=s.invalidatedHead,s.invalidatedHead=t,t=s,s=t.parent}invalidateOrder(){var s,i;const t=this.parent;t!==null&&!t.childrenChanged&&((((s=this.children)==null?void 0:s.size)??0)>1||!((i=t.row)!=null&&i.data))&&(t.childrenChanged=!0,t.invalidate())}getRowPosition(){var s,i;const t=this.row;return t!=null&&t.data?t.sourceRowIndex:((i=(s=this.childrenAfterGroup[0])==null?void 0:s.treeNode)==null?void 0:i.oldSourceRowIndex)??this.oldSourceRowIndex}updateChildrenAfterGroup(){var l;this.childrenChanged=!1;const t=((l=this.children)==null?void 0:l.size)??0;if(t===0)return this.childrenAfterGroup.length===0?!1:(this.leafChildrenChanged=!0,this.childrenAfterGroup=Fe,this.row.childrenAfterGroup=Fe,!0);let s=!1,i=this.childrenAfterGroup;i===Fe?(i=new Array(t),this.childrenAfterGroup=i,this.row.childrenAfterGroup=i,s=!0):i.length!==t&&(i.length=t,s=!0);let o=0,r=-1,n=!1;for(const a of this.enumChildren()){const d=a.getRowPosition();d<r&&(n=!0),r=d,a.oldSourceRowIndex=d;const c=a.row;i[o]!==c&&(i[o]=c,s=!0),++o}return s&&(this.leafChildrenChanged=!0),n&&this.reorderChildrenList(i),s||n}reorderChildrenList(t){const s=t.length,i=this.children;t.sort(gb),i.clear();for(let o=0;o<s;++o){const r=t[o].treeNode;i.set(r.key,r)}}updateAllLeafChildren(){var n,l;const{parent:t,row:s,childrenAfterGroup:i}=this;this.leafChildrenChanged=!1;let o=!1;const r=i.length;if(r===0)o=((n=s.allLeafChildren)==null?void 0:n.length)!==0,s.allLeafChildren=Fe,this.allLeafChildren=Fe;else if(r===1&&((l=i[0].allLeafChildren)!=null&&l.length))s.allLeafChildren=i[0].allLeafChildren,this.allLeafChildren=null,o=!0;else{let a=this.allLeafChildren;(a===Fe||a===null)&&(a=[],this.allLeafChildren=a);const d=a.length;let c=0;for(let u=0;u<r;++u){const h=i[u],p=h.allLeafChildren,g=p.length;if(g)for(let f=0;f<g;++f){const m=p[f];(c>=d||a[c]!==m)&&(a[c]=m,o=!0),++c}else(c>=d||a[c]!==h)&&h&&(a[c]=h,o=!0),++c}d!==c&&(a.length=c,o=!0),s.allLeafChildren!==a&&(s.allLeafChildren=a,o=!0)}o&&t&&(t.leafChildrenChanged=!0)}},Pl=e=>(e.treeNodeFlags&1)!==0,El=e=>(e.treeNodeFlags&2)!==0,Ml=e=>(e.treeNodeFlags&4)!==0,Cb=e=>(e.treeNodeFlags&8)!==0,Dl=e=>(e.treeNodeFlags&16)!==0,xl=(e,t)=>{t?e.treeNodeFlags|=2:e.treeNodeFlags&=-3},vb=e=>{const t=e.treeNodeFlags;(t&1)!==0&&(e.treeNodeFlags=t|4)},Sb=e=>{const t=e.treeNodeFlags;(t&1)!==0&&(e.treeNodeFlags=t|12)},Vt=e=>{e.treeNodeFlags|=16},Al=e=>{e.treeNodeFlags=1|e.treeNodeFlags&-29},qs=e=>{e.treeNodeFlags=0},wb=class extends b{constructor(){super(...arguments),this.rowsPendingDestruction=null,this.root=new mb(null,"",-1)}wireBeans(e){this.beans=e,this.showRowGroupColsService=e.showRowGroupColsService}destroy(){const e=this.root.row;e!==null&&(this.root.removeRow(e),qs(e)),this.destroyTree(this.root),this.commitDestroyedRows(),super.destroy()}execute(e){const{rowNodeTransactions:t,rowNodesOrderChanged:s,changedPath:i}=e,o=e.rowNode,r=this.gos,n={changedPath:i,expandByDefault:r.get("groupDefaultExpanded"),suppressGroupMaintainValueType:r.get("suppressGroupMaintainValueType"),getDataPath:r.get("getDataPath"),isGroupOpenByDefault:r.getCallback("isGroupOpenByDefault"),initialGroupOrderComparator:r.getCallback("initialGroupOrderComparator")};this.root.setRow(o),o.leafGroup=!1;const a=o.sibling;a&&(a.childrenAfterGroup=o.childrenAfterGroup,a.childrenMapped=o.childrenMapped),t?this.handleTransaction(n,t,s):this.handleRowData(n,o,e.afterColumnsChanged===!0)}handleRowData(e,t,s){var o,r,n;const i=this.root;if(s||this.oldGroupDisplayColIds===void 0){const l=((r=(o=this.showRowGroupColsService)==null?void 0:o.getShowRowGroupCols())==null?void 0:r.map(a=>a.getId()).join("-"))??"";if(s){this.oldGroupDisplayColIds!==l&&this.checkAllGroupDataAfterColsChanged((n=i.row)==null?void 0:n.childrenAfterGroup);return}this.oldGroupDisplayColIds=l}this.clearTree(i),this.addOrUpdateRows(e,t.allLeafChildren,!1),this.commitTree(e)}handleTransaction(e,t,s){for(const{remove:i,update:o,add:r}of t)this.removeRows(i),this.addOrUpdateRows(e,o,!0),this.addOrUpdateRows(e,r,!1);s&&this.handleRowNodesOrderChanged(),this.commitTree(e)}handleRowNodesOrderChanged(){var t;const e=(t=this.root.row)==null?void 0:t.allLeafChildren;if(e)for(let s=0,i=e.length;s<i;++s){const o=e[s].treeNode;o&&o.oldSourceRowIndex!==s&&o.invalidateOrder()}}checkAllGroupDataAfterColsChanged(e){var t;for(let s=0,i=(e==null?void 0:e.length)??0;s<i;++s){const o=e[s];this.setGroupData(o,((t=o.treeNode)==null?void 0:t.key)??o.key),this.checkAllGroupDataAfterColsChanged(o.childrenAfterGroup)}}addOrUpdateRows(e,t,s){for(let i=0,o=(t==null?void 0:t.length)??0;i<o;++i){const r=t[i],n=this.upsertPath(this.getDataPath(e,r));n&&this.addOrUpdateRow(n,r,s)}}removeRows(e){for(let t=0,s=(e==null?void 0:e.length)??0;t<s;++t){const i=e[t],o=i.treeNode;o!==null&&this.removeRow(o,i)}}getDataPath({getDataPath:e},{data:t}){const s=(e==null?void 0:e(t))||Fe;return s.length||R("getDataPath() should not return an empty path",[t]),s}upsertPath(e){let t=this.root;const s=e.length-1;for(let i=0;i<=s;++i){const o=t.upsertKey(e[i]);if(i>=s)return o.invalidate(),o;t=o}return null}addOrUpdateRow(e,t,s){var n;const{level:i,row:o}=e;if(i<0)return;let r=!1;if(o!==t){const l=t.treeNode;
235l!==null&&l!==e&&(l.removeRow(t),l.invalidate()),o===null?(e.setRow(t),r=!0):o.data?e.addDuplicateRow(t)&&(r=!0):(e.setRow(t),this.destroyRow(o,!0),r=!0)}s&&!Ml(t)&&(vb(t),r=!0),r&&e.invalidate(),(n=this.rowsPendingDestruction)==null||n.delete(t)}removeRow(e,t){const{parent:s,level:i}=e;if(i<0)return;let o=!1;e.removeRow(t)&&(o=!0,s&&(s.childrenChanged=!0),this.destroyRow(t,!t.data)),o&&e.invalidate()}commitTree(e){var i;const t=this.root;this.commitInvalidatedChildren(e,t);const s=t.row;t.childrenChanged&&t.updateChildrenAfterGroup()&&Vt(s),s.updateHasChildren(),Dl(s)&&(i=e.changedPath)!=null&&i.isActive()&&e.changedPath.addParentNode(s),Al(s),this.commitDestroyedRows()}commitInvalidatedChildren(e,t){for(;;){const s=t.dequeueInvalidated();if(s===null)break;s.parent===t&&this.commitChild(e,t,s)}}commitChild(e,t,s){if(s.isEmptyFillerNode()){this.clearTree(s);return}this.commitNodePreOrder(t,s),this.commitInvalidatedChildren(e,s),this.commitNodePostOrder(e,t,s)}commitNodePreOrder(e,t){let s=t.row;if(s===null?(s=this.createFillerRow(t),t.setRow(s)):(s=t.sortFirstDuplicateRow(),s.allChildrenCount===void 0&&(s.allChildrenCount=null)),s.parent=e.row,t.oldRow!==s)for(const o of t.enumChildren()){const r=o.row;r!==null&&(r.parent=s)}const i=t.key;s.key!==i?(s.key=i,Sb(s),this.setGroupData(s,i)):s.groupData||this.setGroupData(s,i)}commitNodePostOrder(e,t,s){var d,c,u;const i=s.row,o=s.oldRow;if(s.isEmptyFillerNode()){this.clearTree(s);return}s.childrenChanged&&s.updateChildrenAfterGroup()&&Vt(i),s.leafChildrenChanged&&s.updateAllLeafChildren();const r=s.getRowPosition();s.oldSourceRowIndex!==r&&(s.oldSourceRowIndex=r,t.childrenChanged=!0);const n=!!((d=i.childrenAfterGroup)!=null&&d.length),l=n||!i.data,a=i.group;a!==l?(Vt(i),i.setGroup(l),!l&&!i.expanded&&xl(i,!1)):i.hasChildren()!==n&&(Vt(i),i.updateHasChildren()),i.group&&!El(i)&&(o!==i&&o!==null&&o.group&&El(o)&&!e.isGroupOpenByDefault?i.expanded=o.expanded:i.expanded=this.getExpandedInitialValue(e,i),xl(i,!0)),Ml(i)&&(Vt(t.row),Cb(i)&&i.setData(i.data)),o!==i&&(s.oldRow=i,o!==null&&(a||s.hasChildren())&&Vt(i),t.childrenChanged=!0,Vt(t.row)),Dl(i)?(c=e.changedPath)!=null&&c.isActive()&&e.changedPath.addParentNode(i):Pl(i)||(i.childrenAfterFilter||(i.childrenAfterFilter=i.childrenAfterGroup.slice()),i.childrenAfterAggFilter||(i.childrenAfterAggFilter=i.childrenAfterFilter.slice()),i.childrenAfterSort||(i.childrenAfterSort=i.childrenAfterAggFilter.slice())),Al(i),(u=s.duplicateRows)!=null&&u.size&&!s.duplicateRowsWarned&&(s.duplicateRowsWarned=!0,R("duplicate group keys for row data, keys should be unique",[i.id,i.data,...Array.from(s.duplicateRows).map(h=>h.data)]))}createFillerRow(e){const t=new qe(this.beans);t.key=e.key,t.group=!0,t.field=null,t.leafGroup=!1,t.rowGroupIndex=null,t.allChildrenCount=null;let s=e.level+"-"+e.key,i=e.parent;for(;i!==null;){const o=i.parent;if(o===null)break;s=`${i.level}-${i.key}-${s}`,i=o}return t.id=qe.ID_PREFIX_ROW_GROUP+s,t}setGroupData(e,t){var o;const s={};e.groupData=s;const i=(o=this.showRowGroupColsService)==null?void 0:o.getShowRowGroupCols();if(i)for(const r of i)s[r.getColId()]=t}getExpandedInitialValue(e,t){const s=e.isGroupOpenByDefault;return s?s({rowNode:t,field:t.field,key:t.key,level:t.level,rowGroupColumn:t.rowGroupColumn})==!0:e.expandByDefault===-1||t.level<e.expandByDefault}clearTree(e){const{parent:t,oldRow:s,row:i,level:o}=e;if(t!==null&&s!==null&&(t.childrenChanged=!0,t.row!==null&&Vt(t.row)),i!==null&&o>=0){let r=e.row;for(;r!==null&&e.removeRow(r);)this.destroyRow(r,!r.data),r=e.row}for(const r of e.enumChildren())this.clearTree(r);e.destroy()}destroyTree(e){const{row:t,level:s,duplicateRows:i}=e;if(t&&(s>=0&&!t.data?this.destroyRow(t,!0):qs(t)),i)for(const o of i)s>=0&&!o.data?this.destroyRow(o,!0):qs(o);for(const o of e.enumChildren())this.destroyTree(o);e.destroy()}destroyRow(e,t){if(!Pl(e)){qs(e);return}if(!t){(this.rowsPendingDestruction??(this.rowsPendingDestruction=new Set)).add(e);return}qs(e),e.setRowIndex(null),e.setRowTop(null),!e.data&&e.isSelected()&&e.setSelectedParams({newValue:!1,source:"rowGroupChanged"})}commitDestroyedRows(){const{rowsPendingDestruction:e}=this;if(e!==null){this.rowsPendingDestruction=null;for(const t of e)this.destroyRow(t,!0)}}},yb=class extends b{constructor(){super(...arguments),this.beanName="groupStage"}wireBeans(e){this.selectableService=e.selectableService}execute(e){const t=this.gos.get("treeData")?wb:pb;let s=this.strategy;(s==null?void 0:s.constructor)!==t&&(this.destroyBean(s),s=this.createManagedBean(new t),this.strategy=s),s.execute(e),this.selectableService.updateSelectableAfterGrouping()}destroy(){this.destroyBean(this.strategy),this.strategy=void 0,super.destroy()}},Tl="PivotRowTotal_",Rb=class extends b{constructor(){super(...arguments),this.beanName="pivotColDefService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.columnNameService=e.columnNameService}postConstruct(){const e=()=>this.gos.get("serverSidePivotResultFieldSeparator")??"_";this.fieldSeparator=e(),this.addManagedPropertyListener("serverSidePivotResultFieldSeparator",()=>{this.fieldSeparator=e()});const t=()=>this.gos.get("pivotDefaultExpanded");this.pivotDefaultExpanded=t(),this.addManagedPropertyListener("pivotDefaultExpanded",()=>{this.pivotDefaultExpanded=t()})}createPivotColumnDefs(e){const t=this.createPivotColumnsFromUniqueValues(e);function s(r,n=[]){return r.forEach(l=>{l.children!==void 0?s(l.children,n):n.push(l)}),n}const i=s(t);this.addRowGroupTotals(t,i),this.addExpandablePivotGroups(t,i),this.addPivotTotalsToGroups(t,i);const o=i.map(r=>go(r));return{pivotColumnGroupDefs:t,pivotColumnDefs:o}}createPivotColumnsFromUniqueValues(e){const t=this.funcColsService.getPivotColumns(),s=t.length;return this.recursivelyBuildGroup(0,e,[],s,t)}recursivelyBuildGroup(e,t,s,i,o){const r=this.funcColsService.getValueColumns();if(e>=i)return this.buildMeasureCols(s);const n=o[e].getColDef(),l=this.headerNameComparator.bind(this,n.pivotComparator);if(r.length===1&&this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&e===i-1){const d=[];return Pe(t,c=>{const u=[...s,c],h=this.createColDef(r[0],c,u);h.columnGroupShow="open",d.push(h)}),d.sort(l),d}const a=[];return Pe(t,(d,c)=>{const u=this.pivotDefaultExpanded===-1||e<this.pivotDefaultExpanded,h=[...s,d];a.push({children:this.recursivelyBuildGroup(e+1,c,h,i,o),headerName:d,pivotKeys:h,columnGroupShow:"open",openByDefault:u,groupId:this.generateColumnGroupId(h)})}),a.sort(l),a}buildMeasureCols(e){const t=this.funcColsService.getValueColumns();return t.length===0?[this.createColDef(null,"-",e)]:t.map(s=>{const i=this.columnNameService.getDisplayNameForColumn(s,"header");return{...this.createColDef(s,i,e),columnGroupShow:"open"}})}addExpandablePivotGroups(e,t){const s=this.gos.get("suppressExpandablePivotGroups");
235if(s||this.gos.get("pivotColumnGroupTotals"))return;const i=(o,r,n)=>{if("children"in o){const d=new Map;o.children.forEach(u=>{i(u,r,d)});const c=!o.children.some(u=>u.children);this.funcColsService.getValueColumns().forEach(u=>{const h=this.columnNameService.getDisplayNameForColumn(u,"header"),p=this.createColDef(u,h,o.pivotKeys);p.pivotTotalColumnIds=d.get(u.getColId()),p.columnGroupShow=s?"open":"closed",p.aggFunc=u.getAggFunc(),c||(o.children.push(p),r.push(p))}),this.merge(n,d);return}if(!o.pivotValueColumn)return;const l=o.pivotValueColumn.getColId();n.has(l)?n.get(l).push(o.colId):n.set(l,[o.colId])};e.forEach(o=>{i(o,t,new Map)})}addPivotTotalsToGroups(e,t){if(!this.gos.get("pivotColumnGroupTotals"))return;const s=this.gos.get("pivotColumnGroupTotals")==="after",i=this.funcColsService.getValueColumns(),o=i.map(n=>n.getAggFunc());if(!o||o.length<1||!this.sameAggFuncs(o))return;const r=i[0];e.forEach(n=>{this.recursivelyAddPivotTotal(n,t,r,s)})}recursivelyAddPivotTotal(e,t,s,i){const o=e;if(!o.children){const n=e;return n.colId?[n.colId]:null}let r=[];if(o.children.forEach(n=>{const l=this.recursivelyAddPivotTotal(n,t,s,i);l&&(r=r.concat(l))}),o.children.length>1){const l=this.localeService.getLocaleTextFunc()("pivotColumnGroupTotals","Total"),a=this.createColDef(s,l,e.pivotKeys,!0);a.pivotTotalColumnIds=r,a.aggFunc=s.getAggFunc(),a.columnGroupShow=this.gos.get("suppressExpandablePivotGroups")?"open":void 0;const d=e.children;i?d.push(a):d.unshift(a),t.push(a)}return r}addRowGroupTotals(e,t){if(!this.gos.get("pivotRowTotals"))return;const s=this.gos.get("pivotRowTotals")==="after",o=this.funcColsService.getValueColumns().slice();s||o.reverse();const r=o.length>1||!this.gos.get("removePivotHeaderRowWhenSingleValueColumn");for(let n=0;n<o.length;n++){const l=o[n],a=this.columnNameService.getDisplayNameForColumn(l,"header"),d=this.createColDef(l,a,[]),c=[];for(let h=0;h<t.length;h++){const p=t[h];p.pivotValueColumn===l&&c.push(p.colId)}d.pivotTotalColumnIds=c,d.colId=Tl+d.colId;const u=r?{children:[d],pivotKeys:[],groupId:`${Tl}_pivotGroup_${l.getColId()}`}:d;t.push(d),s?e.push(u):e.unshift(u)}}createColDef(e,t,s,i=!1){const o={};if(e){const r=e.getColDef();Object.assign(o,r),o.hide=!1}return o.headerName=t,o.colId=this.generateColumnId(s||[],e&&!i?e.getColId():""),o.field=o.colId,o.valueGetter=r=>{var n;return(n=r.data)==null?void 0:n[r.colDef.field]},o.pivotKeys=s,o.pivotValueColumn=e,o.filter===!0&&(o.filter="agNumberColumnFilter"),o}sameAggFuncs(e){if(e.length==1)return!0;for(let t=1;t<e.length;t++)if(e[t]!==e[0])return!1;return!0}headerNameComparator(e,t,s){return e?e(t.headerName,s.headerName):t.headerName&&!s.headerName?1:!t.headerName&&s.headerName?-1:!t.headerName||!s.headerName?0:t.headerName<s.headerName?-1:t.headerName>s.headerName?1:0}merge(e,t){t.forEach((s,i)=>{const r=[...e.has(i)?e.get(i):[],...s];e.set(i,r)})}generateColumnGroupId(e){return`pivotGroup_${this.funcColsService.getPivotColumns().map(s=>s.getColId()).join("-")}_${e.join("-")}`}generateColumnId(e,t){return`pivot_${this.funcColsService.getPivotColumns().map(i=>i.getColId()).join("-")}_${e.join("-")}_${t}`}createColDefsFromFields(e){const t={};for(let o=0;o<e.length;o++){const n=e[o].split(this.fieldSeparator);let l=t;for(let a=0;a<n.length;a++){const d=n[a];l[d]==null&&(l[d]={}),l=l[d]}}const s=(o,r,n,l)=>{const a=[];for(const u in n){const h=n[u],p=s(`${o}${this.fieldSeparator}${u}`,u,h,l+1);a.push(p)}if(a.length===0){const u=this.columnModel.getColDefCol(r);if(u){const p=this.columnNameService.getDisplayNameForColumn(u,"header")??r,g=this.createColDef(u,p,void 0,!1);return g.colId=o,g.aggFunc=u.getAggFunc(),g.valueGetter=f=>{var m;return(m=f.data)==null?void 0:m[o]},g}return{colId:o,headerName:r,valueGetter:p=>{var g;return(g=p.data)==null?void 0:g[o]}}}return this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&a.length===1&&"colId"in a[0]?(a[0].headerName=r,a[0]):{openByDefault:this.pivotDefaultExpanded===-1||l<this.pivotDefaultExpanded,groupId:o,headerName:r,children:a}},i=[];for(const o in t){const r=t[o],n=s(o,o,r,0);i.push(n)}return i}},Il="Exceeded maximum allowed pivot column count.",bb=class extends b{constructor(){super(...arguments),this.beanName="pivotStage",this.uniqueValues={},this.lastTimeFailed=!1,this.maxUniqueValues=-1,this.currentUniqueCount=0}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService,this.pivotColDefService=e.pivotColDefService}execute(e){const t=e.changedPath;this.columnModel.isPivotActive()?this.executePivotOn(t):this.executePivotOff(t)}executePivotOff(e){this.aggregationColumnsHashLastTime=null,this.uniqueValues={},this.pivotResultColsService.isPivotResultColsPresent()&&(this.pivotResultColsService.setPivotResultCols(null,"rowModelUpdated"),e&&e.setInactive())}executePivotOn(e){const t=this.funcColsService.getValueColumns().length??1,s=this.gos.get("pivotMaxGeneratedColumns");this.maxUniqueValues=s===-1?-1:s/t;let i;try{i=this.bucketUpRowNodes(e)}catch(v){if(v.message===Il){this.pivotResultColsService.setPivotResultCols([],"rowModelUpdated"),this.eventService.dispatchEvent({type:"pivotMaxColumnsExceeded",message:v.message}),this.lastTimeFailed=!0;return}throw v}const o=this.setUniqueValues(i),r=this.funcColsService.getValueColumns(),n=r.map(v=>`${v.getId()}-${v.getColDef().headerName}`).join("#"),l=r.map(v=>v.getAggFunc().toString()).join("#"),a=this.aggregationColumnsHashLastTime!==n,d=this.aggregationFuncsHashLastTime!==l;this.aggregationColumnsHashLastTime=n,this.aggregationFuncsHashLastTime=l;const c=this.funcColsService.getRowGroupColumns().map(v=>v.getId()).join("#"),u=c!==this.groupColumnsHashLastTime;this.groupColumnsHashLastTime=c;const h=this.gos.get("pivotRowTotals"),p=this.gos.get("pivotColumnGroupTotals"),g=this.gos.get("suppressExpandablePivotGroups"),f=this.gos.get("removePivotHeaderRowWhenSingleValueColumn"),m=h!==this.pivotRowTotalsLastTime||p!==this.pivotColumnGroupTotalsLastTime||g!==this.suppressExpandablePivotGroupsLastTime||f!==this.removePivotHeaderRowWhenSingleValueColumnLastTime;if(this.pivotRowTotalsLastTime=h,this.pivotColumnGroupTotalsLastTime=p,this.suppressExpandablePivotGroupsLastTime=g,this.removePivotHeaderRowWhenSingleValueColumnLastTime=f,this.lastTimeFailed||o||a||u||d||m){const{pivotColumnGroupDefs:v,pivotColumnDefs:y}=this.pivotColDefService.createPivotColumnDefs(this.uniqueValues);this.pivotColumnDefs=y,this.pivotResultColsService.setPivotResultCols(v,"rowModelUpdated"),e&&e.setInactive()}this.lastTimeFailed=!1}setUniqueValues(e){const t=JSON.stringify(e),s=JSON.stringify(this.uniqueValues);return t!==s?(this.uniqueValues=e,!0):!1}bucketUpRowNodes(e){this.currentUniqueCount=0;const t={};e.forEachChangedNodeDepthFirst(i=>{i.leafGroup&&(i.childrenMapped=null)});const s=i=>{var o;i.leafGroup?this.bucketRowNode(i,t):(o=i.childrenAfterFilter)==null||o.forEach(s)};return e.executeFromRootNode(s),t}bucketRowNode(e,t){const s=this.funcColsService.getPivotColumns();s.length===0?e.childrenMapped=null:e.childrenMapped=this.bucketChildren(e.childrenAfterFilter,s,0,t),e.sibling&&(e.sibling.childrenMapped=e.childrenMapped)}bucketChildren(e,t,s,i){const o={},r=t[s];if(e.forEach(n=>{let l=this.valueService.getKeyForNode(r,n);if(z(l)&&(l=""),!i[l]){this.currentUniqueCount+=1,i[l]={};const a=this.maxUniqueValues!==-1,d=this.currentUniqueCount>this.maxUniqueValues;if(a&&d)throw Error(Il)}o[l]||(o[l]=[]),o[l].push(n)}),s===t.length-1)return o;{const n={};return Pe(o,(l,a)=>{n[l]=this.bucketChildren(a,t,s+1,i[l])}),n}}getPivotColumnDefs(){return this.pivotColumnDefs}};
235function Fb(e,t,s){e.aggFuncService&&e.aggFuncService.addAggFuncs({key:s})}function Pb(e,t){e.aggFuncService&&e.aggFuncService.addAggFuncs(t)}function Eb(e){e.aggFuncService&&e.aggFuncService.clear()}function Mb(e,t,s){e.funcColsService.setColumnAggFunc(t,s,"api")}function Db(e){return e.columnModel.isPivotMode()}function xb(e,t,s){return e.pivotResultColsService.lookupPivotResultCol(t,s)}function Ab(e,t){e.funcColsService.setValueColumns(t,"api")}function Tb(e){return e.funcColsService.getValueColumns()}function Ib(e,t){e.funcColsService.removeValueColumns([t],"api")}function Lb(e,t){e.funcColsService.removeValueColumns(t,"api")}function Gb(e,t){e.funcColsService.addValueColumns([t],"api")}function kb(e,t){e.funcColsService.addValueColumns(t,"api")}function Ob(e,t){e.funcColsService.setRowGroupColumns(t,"api")}function Nb(e,t){e.funcColsService.removeRowGroupColumns([t],"api")}function Bb(e,t){e.funcColsService.removeRowGroupColumns(t,"api")}function Vb(e,t){e.funcColsService.addRowGroupColumns([t],"api")}function Hb(e,t){e.funcColsService.addRowGroupColumns(t,"api")}function Wb(e,t,s){e.funcColsService.moveRowGroupColumn(t,s,"api")}function zb(e){return e.funcColsService.getRowGroupColumns()}function Ub(e,t){e.funcColsService.setPivotColumns(t,"api")}function _b(e,t){e.funcColsService.removePivotColumns([t],"api")}function Kb(e,t){e.funcColsService.removePivotColumns(t,"api")}function $b(e,t){e.funcColsService.addPivotColumns([t],"api")}function jb(e,t){e.funcColsService.addPivotColumns(t,"api")}function qb(e){return e.funcColsService.getPivotColumns()}function Yb(e,t){e.pivotResultColsService.setPivotResultCols(t,"api")}function Qb(e){const t=e.pivotResultColsService.getPivotResultCols();return t?t.list:null}var Xb=class extends b{constructor(){super(...arguments),this.beanName="showRowGroupColsService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}refresh(){this.showRowGroupCols=[],this.showRowGroupColsMap={},this.columnModel.getCols().forEach(e=>{const s=e.getColDef().showRowGroup,i=typeof s=="string";!i&&!(s===!0)||(this.showRowGroupCols.push(e),i?this.showRowGroupColsMap[s]=e:this.funcColsService.getRowGroupColumns().forEach(n=>{this.showRowGroupColsMap[n.getId()]=e}))})}getShowRowGroupCols(){return this.showRowGroupCols}getShowRowGroupCol(e){return this.showRowGroupColsMap[e]}},Pi="32.3.2",En={version:Pi,moduleName:`${U.RowGroupingModule}-core`,beans:[sb,db,yb,Rb,bb,qR,ib,Xb,ab],userComponents:[{name:"agGroupRowRenderer",classImp:pl},{name:"agGroupCellRenderer",classImp:pl}],controllers:[{name:"groupCellRendererCtrl",classImp:uc}],dependantModules:[ms]},Zb={version:Pi,moduleName:`${U.RowGroupingModule}-api`,apiFunctions:{addAggFunc:Fb,addAggFuncs:Pb,clearAggFuncs:Eb,setColumnAggFunc:Mb,isPivotMode:Db,getPivotResultColumn:xb,setValueColumns:Ab,getValueColumns:Tb,removeValueColumn:Ib,removeValueColumns:Lb,addValueColumn:Gb,addValueColumns:kb,setRowGroupColumns:Ob,removeRowGroupColumn:Nb,removeRowGroupColumns:Bb,addRowGroupColumn:Vb,addRowGroupColumns:Hb,getRowGroupColumns:zb,moveRowGroupColumn:Wb,setPivotColumns:Ub,removePivotColumn:_b,removePivotColumns:Kb,addPivotColumn:$b,addPivotColumns:jb,getPivotColumns:qb,setPivotResultColumns:Yb,getPivotResultColumns:Qb},dependantModules:[En]},bc={version:Pi,moduleName:"@ag-grid-enterprise/group-filter",userComponents:[{name:"agGroupColumnFilter",classImp:cb}],dependantModules:[En,Vs]},Jb={version:Pi,moduleName:"@ag-grid-enterprise/group-floating-filter",userComponents:[{name:"agGroupColumnFloatingFilter",classImp:ub}],dependantModules:[bc,fd]},eF={version:Pi,moduleName:U.RowGroupingModule,dependantModules:[En,Zb,bc,Jb]},Ll=class extends Pn{constructor(e){super(e,"aggregation")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("valueColumnsEmptyMessage","Drag here to aggregate"),s=e("values","Values");super.init({icon:N("valuePanel",this.gos,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnValueChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.localeService.getLocaleTextFunc()("ariaValuesDropZonePanelLabel","Values")}getTooltipParams(){const e=super.getTooltipParams();return e.location="valueColumnsList",e}getIconName(){return this.isPotentialDndItems()?"aggregate":"notAllowed"}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowValue()&&(!e.isValueActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.funcColsService.setValueColumns(e,"toolPanelUi")}getExistingItems(){return this.funcColsService.getValueColumns()}};function xs(e){return!!e&&typeof e.children<"u"}function Ut(e){return xs(e)?e.groupId:e.colId}function Fc(e,t,s){const i=(n,l)=>{const a=n.children.map(Ut),d=et(a,Ut(l)),c=W(n.children),u=c&&Ut(c)!==Ut(l);return d&&u};
235if(!xs(e))return!0;const o=e,r=s;if(i(o,r))return o.children.push(r),!0;if(o.groupId===t){const n=o.children.map(Ut);if(!et(n,Ut(r)))return o.children.push(r),!0}for(let n=o.children.length-1;n>=0&&!Fc(o.children[n],t,s);n--);return!1}function tF(e){const t=(o,r)=>xs(o)&&xs(r)&&Ut(o)===Ut(r),s=(o,r)=>{if(!xs(r))return o;const n=o,l=r;return l.children&&l.groupId&&Fc(n,l.groupId,l.children[0])||l.children.forEach(a=>s(n,a)),n},i=[];for(let o=1;o<=e.length;o++){const r=e[o-1],n=e[o];t(r,n)?e[o]=s(r,n):i.push(r)}return i}var sF=class extends b{constructor(){super(...arguments),this.beanName="toolPanelColDefService"}wireBeans(e){this.columnModel=e.columnModel}createColumnTree(e){const t=[],s=(o,r)=>{if(xs(o)){const n=o,l=typeof n.groupId<"u"?n.groupId:n.headerName,a=new ti(n,l,!1,r),d=[];return n.children.forEach(c=>{const u=s(c,r+1);u&&d.push(u)}),a.setChildren(d),a}else{const n=o,l=n.colId?n.colId:n.field,a=this.columnModel.getColDefCol(l);return a||t.push(n),a}},i=[];return e.forEach(o=>{const r=s(o,0);r&&i.push(r)}),t.length>0&&R("unable to find grid columns for the supplied colDef(s):",t),i}syncLayoutWithGrid(e){const t=this.getLeafPathTrees(),s=tF(t);e(s)}getLeafPathTrees(){const e=(i,o)=>{let r;if(be(i))if(i.isPadding())r=o;else{const l=Object.assign({},i.getColGroupDef());l.groupId=i.getGroupId(),l.children=[o],r=l}else{const l=Object.assign({},i.getColDef());l.colId=i.getColId(),r=l}const n=i.getOriginalParent();return n?e(n,r):r};return this.columnModel.getCols().filter(i=>{const o=i.getColDef();return i.isPrimary()&&!o.showRowGroup}).map(i=>e(i,i.getColDef()))}};function iF(e){var t;return((t=e.sideBarService)==null?void 0:t.getSideBarComp().isDisplayed())??!1}function oF(e,t){var s;(s=e.sideBarService)==null||s.getSideBarComp().setDisplayed(t)}function rF(e,t){var s;(s=e.sideBarService)==null||s.getSideBarComp().setSideBarPosition(t)}function nF(e,t){var s;(s=e.sideBarService)==null||s.getSideBarComp().openToolPanel(t,"api")}function lF(e){var t;(t=e.sideBarService)==null||t.getSideBarComp().close("api")}function aF(e){var t;return((t=e.sideBarService)==null?void 0:t.getSideBarComp().openedItem())??null}function dF(e){var t;(t=e.sideBarService)==null||t.getSideBarComp().refresh()}function cF(e){var t;return((t=e.sideBarService)==null?void 0:t.getSideBarComp().isToolPanelShowing())??!1}function uF(e,t){var i;const s=(i=e.sideBarService)==null?void 0:i.getSideBarComp().getToolPanelInstance(t);return Es(s)}function hF(e){var t;return(t=e.sideBarService)==null?void 0:t.getSideBarComp().getDef()}var pF=class extends O{constructor(e){super(),this.eToggleButton=P,this.eIconWrapper=P,this.eLabel=P,this.toolPanelDef=e}getToolPanelId(){return this.toolPanelDef.id}postConstruct(){const e=this.createTemplate();this.setTemplate(e,[]),this.setLabel(),this.setIcon(),this.addManagedElementListeners(this.eToggleButton,{click:this.onButtonPressed.bind(this)}),this.eToggleButton.setAttribute("id",`ag-${this.getCompId()}-button`)}createTemplate(){return`<div class="ag-side-button" role="presentation"> 236 <button type="button" data-ref="eToggleButton" tabindex="-1" role="tab" aria-expanded="false" class="ag-button ag-side-button-button"> 237 <div data-ref="eIconWrapper" class="ag-side-button-icon-wrapper" aria-hidden="true"></div> 238 <span data-ref="eLabel" class="ag-side-button-label"></span> 239 </button> 240 </div>`}setLabel(){const e=this.localeService.getLocaleTextFunc(),t=this.toolPanelDef,s=e(t.labelKey,t.labelDefault);this.eLabel.innerText=s}setIcon(){this.eIconWrapper.insertAdjacentElement("afterbegin",N(this.toolPanelDef.iconKey,this.gos))}onButtonPressed(){this.dispatchLocalEvent({type:"toggleButtonClicked"})}setSelected(e){this.addOrRemoveCssClass("ag-selected",e),Ft(this.eToggleButton,e)}getButtonElement(){return this.eToggleButton}},gF=class extends O{constructor(){super('<div class="ag-side-buttons" role="tablist"></div>'),this.buttonComps=[]}wireBeans(e){this.focusService=e.focusService,this.visibleColsService=e.visibleColsService}postConstruct(){this.addManagedElementListeners(this.getFocusableElement(),{keydown:this.handleKeyDown.bind(this)})}handleKeyDown(e){if(!(e.key!==S.TAB||!e.shiftKey)){if(this.focusService.focusNextGridCoreContainer(!0)){e.preventDefault();return}Rt(e)}}setActiveButton(e){this.buttonComps.forEach(t=>{t.setSelected(e===t.getToolPanelId())})}addButtonComp(e){const t=this.createBean(new pF(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),de(this.getGui()),super.destroy()}destroy(){this.clearButtons(),super.destroy()}},fF={selector:"AG-SIDE-BAR-BUTTONS",component:gF}
240,Pc={id:"columns",labelDefault:"Columns",labelKey:"columns",iconKey:"columns",toolPanel:"agColumnsToolPanel"},Ec={id:"filters",labelDefault:"Filters",labelKey:"filters",iconKey:"filter",toolPanel:"agFiltersToolPanel"},Mn={columns:Pc,filters:Ec};function Fr(e){if(!e)return;if(e===!0)return{toolPanels:[Pc,Ec],defaultToolPanel:"columns"};if(typeof e=="string")return Fr([e]);if(Array.isArray(e)){const s=[];return e.forEach(i=>{const o=Mn[i];if(!o){Mc(i);return}s.push(o)}),s.length===0?void 0:{toolPanels:s,defaultToolPanel:s[0].id}}return{toolPanels:mF(e.toolPanels),defaultToolPanel:e.defaultToolPanel,hiddenByDefault:e.hiddenByDefault,position:e.position}}function Mc(e){R(`the key ${e} is not a valid key for specifying a tool panel, valid keys are: ${Object.keys(Mn).join(",")}`)}function mF(e){const t=[];return e&&e.forEach(s=>{let i=null;if(typeof s=="string"){const o=Mn[s];if(!o){Mc(s);return}i=o}else i=s;t.push(i)}),t}var CF=class extends O{constructor(){super('<div class="ag-tool-panel-horizontal-resize"></div>'),this.minWidth=100,this.maxWidth=null}wireBeans(e){this.horizontalResizeService=e.horizontalResizeService}setElementToResize(e){this.elementToResize=e}postConstruct(){const e=this.horizontalResizeService.addResizeBar({eResizeBar:this.getGui(),dragStartPixels:1,onResizeStart:this.onResizeStart.bind(this),onResizing:this.onResizing.bind(this),onResizeEnd:this.onResizeEnd.bind(this)});this.addDestroyFunc(e),this.setInverted(this.gos.get("enableRtl"))}dispatchResizeEvent(e,t,s){this.eventService.dispatchEvent({type:"toolPanelSizeChanged",width:s,started:e,ended:t})}onResizeStart(){this.startingWidth=this.elementToResize.offsetWidth,this.dispatchResizeEvent(!0,!1,this.startingWidth)}onResizeEnd(e){return this.onResizing(e,!0)}onResizing(e,t=!1){const s=this.inverted?-1:1;let i=Math.max(this.minWidth,Math.floor(this.startingWidth-e*s));this.maxWidth!=null&&(i=Math.min(this.maxWidth,i)),this.elementToResize.style.width=`${i}px`,this.dispatchResizeEvent(!1,t,i)}setInverted(e){this.inverted=e}setMaxWidth(e){this.maxWidth=e}setMinWidth(e){e!=null?this.minWidth=e:this.minWidth=100}},vF=class extends O{wireBeans(e){this.userComponentFactory=e.userComponentFactory}constructor(){super('<div class="ag-tool-panel-wrapper" role="tabpanel"/>')}postConstruct(){const e=this.getGui(),t=this.resizeBar=this.createManagedBean(new CF);e.setAttribute("id",`ag-${this.getCompId()}`),t.setElementToResize(e),this.appendChild(t)}getToolPanelId(){return this.toolPanelId}setToolPanelDef(e,t){const{id:s,minWidth:i,maxWidth:o,width:r}=e;this.toolPanelId=s,this.width=r;const n=this.userComponentFactory.getToolPanelCompDetails(e,t),l=n.newAgStackInstance();if(this.params=n.params,l==null){R(`error processing tool panel component ${s}. You need to specify 'toolPanel'`);return}l.then(this.setToolPanelComponent.bind(this)),i!=null&&this.resizeBar.setMinWidth(i),o!=null&&this.resizeBar.setMaxWidth(o)}setToolPanelComponent(e){this.toolPanelCompInstance=e,this.appendChild(e.getGui()),this.addDestroyFunc(()=>{this.destroyBean(e)}),this.width&&(this.getGui().style.width=`${this.width}px`)}getToolPanelInstance(){return this.toolPanelCompInstance}setResizerSizerSide(e){const t=this.gos.get("enableRtl"),s=e==="left",i=t?s:!s;this.resizeBar.setInverted(i)}refresh(){var e;(e=this.toolPanelCompInstance)==null||e.refresh(this.params)}},SF=class extends O{constructor(){super(`<div class="ag-side-bar ag-unselectable"> 241 <ag-side-bar-buttons data-ref="sideBarButtons"></ag-side-bar-buttons> 242 </div>`,[fF]),this.sideBarButtons=P,this.toolPanelWrappers=[]}wireBeans(e){this.focusService=e.focusService,this.filterManager=e.filterManager,this.sideBarService=e.sideBarService}postConstruct(){this.sideBarButtons.addEventListener("sideBarButtonClicked",this.onToolPanelButtonClicked.bind(this));const{sideBar:e}=this.gos.get("initialState")??{};this.setSideBarDef({sideBarDef:Fr(this.gos.get("sideBar")),sideBarState:e}),this.addManagedPropertyListener("sideBar",this.onSideBarUpdated.bind(this)),this.sideBarService.registerSideBarComp(this);const t=this.getFocusableElement();this.createManagedBean(new kt(t,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this)})),Zd(this,t,this.focusService)}onTabKeyDown(e){if(e.defaultPrevented)return;const{focusService:t,sideBarButtons:s}=this,i=this.getGui(),o=s.getGui(),r=Q(this.gos),n=i.querySelector(".ag-tool-panel-wrapper:not(.ag-hidden)"),l=e.target;if(!n)return t.focusNextGridCoreContainer(e.shiftKey,!0);if(o.contains(r)){t.focusInto(n,e.shiftKey)&&e.preventDefault();return}if(!e.shiftKey)return;let a=null;n.contains(r)?a=this.focusService.findNextFocusableElement(n,void 0,!0):t.isTargetUnderManagedComponent(n,l)&&e.shiftKey&&(a=this.focusService.findFocusableElementBeforeTabGuard(n,l)),a||(a=o.querySelector(".ag-selected button")),a&&a!==e.target&&(e.preventDefault(),a.focus())}handleKeyDown(e){const t=Q(this.gos);if(!this.sideBarButtons.getGui().contains(t))return;const s=this.sideBarButtons.getGui(),i=Array.prototype.slice.call(s.querySelectorAll(".ag-side-button")),o=i.findIndex(l=>l.contains(t));let r=null;switch(e.key){case S.LEFT:case S.UP:r=Math.max(0,o-1);break;case S.RIGHT:case S.DOWN:r=Math.min(o+1,i.length-1);break}if(r===null)return;const n=i[r].querySelector("button");
242n&&(n.focus(),e.preventDefault())}onToolPanelButtonClicked(e){const t=e.toolPanelId;this.openedItem()===t?this.openToolPanel(void 0,"sideBarButtonClicked"):this.openToolPanel(t,"sideBarButtonClicked")}clearDownUi(){this.sideBarButtons.clearButtons(),this.destroyToolPanelWrappers()}setSideBarDef({sideBarDef:e,sideBarState:t,existingToolPanelWrappers:s}){if(this.setDisplayed(!1),this.sideBar=e,this.sideBar&&this.sideBar.toolPanels){const i=this.sideBar.toolPanels;if(this.createToolPanelsAndSideButtons(i,t,s),!this.toolPanelWrappers.length)return;const o=t?t.visible:!this.sideBar.hiddenByDefault;if(this.setDisplayed(o),this.setSideBarPosition(t?t.position:this.sideBar.position),o)if(t){const{openToolPanel:r}=t;r&&this.openToolPanel(r,"sideBarInitializing")}else this.openToolPanel(this.sideBar.defaultToolPanel,"sideBarInitializing")}}getDef(){return this.sideBar}setSideBarPosition(e){e||(e="right"),this.position=e;const t=e==="left",s=t?"right":"left";return this.addOrRemoveCssClass("ag-side-bar-left",t),this.addOrRemoveCssClass("ag-side-bar-right",!t),this.toolPanelWrappers.forEach(i=>{i.setResizerSizerSide(s)}),this.dispatchSideBarUpdated(),this}setDisplayed(e,t){super.setDisplayed(e,t),this.dispatchSideBarUpdated()}getState(){const e={};return this.toolPanelWrappers.forEach(t=>{var s,i;e[t.getToolPanelId()]=(i=(s=t.getToolPanelInstance())==null?void 0:s.getState)==null?void 0:i.call(s)}),{visible:this.isDisplayed(),position:this.position,openToolPanel:this.openedItem(),toolPanels:e}}createToolPanelsAndSideButtons(e,t,s){var i;for(const o of e)this.createToolPanelAndSideButton(o,(i=t==null?void 0:t.toolPanels)==null?void 0:i[o.id],s==null?void 0:s[o.id])}validateDef(e){var t;if(e.id==null)return R("please review all your toolPanel components, it seems like at least one of them doesn't have an id"),!1;if(e.toolPanel==="agColumnsToolPanel"&&!this.gos.assertModuleRegistered(U.ColumnsToolPanelModule,"Column Tool Panel"))return!1;if(e.toolPanel==="agFiltersToolPanel"){if(!this.gos.assertModuleRegistered(U.FiltersToolPanelModule,"Filters Tool Panel"))return!1;if((t=this.filterManager)!=null&&t.isAdvancedFilterEnabled())return R("Advanced Filter does not work with Filters Tool Panel. Filters Tool Panel has been disabled."),!1}return!0}createToolPanelAndSideButton(e,t,s){if(!this.validateDef(e))return;const i=this.sideBarButtons.addButtonComp(e);let o;s?o=s:(o=this.createBean(new vF),o.setToolPanelDef(e,{initialState:t,onStateUpdated:()=>this.dispatchSideBarUpdated()})),o.setDisplayed(!1);const r=o.getGui();this.appendChild(r),this.toolPanelWrappers.push(o),Ca(i.getButtonElement(),r)}refresh(){this.toolPanelWrappers.forEach(e=>e.refresh())}openToolPanel(e,t="api"){const s=this.openedItem();if(s===e)return;this.toolPanelWrappers.forEach(r=>{const n=e===r.getToolPanelId();r.setDisplayed(n)});const i=this.openedItem();s!==i&&(this.sideBarButtons.setActiveButton(e),this.raiseToolPanelVisibleEvent(e,s??void 0,t))}getToolPanelInstance(e){const t=this.toolPanelWrappers.filter(s=>s.getToolPanelId()===e)[0];if(!t){R(`unable to lookup Tool Panel as invalid key supplied: ${e}`);return}return t.getToolPanelInstance()}raiseToolPanelVisibleEvent(e,t,s){const i=!!e&&!!t;t&&this.eventService.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:t,visible:!1,switchingToolPanel:i}),e&&this.eventService.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:e,visible:!0,switchingToolPanel:i})}close(e="api"){this.openToolPanel(void 0,e)}isToolPanelShowing(){return!!this.openedItem()}openedItem(){let e=null;return this.toolPanelWrappers.forEach(t=>{t.isDisplayed()&&(e=t.getToolPanelId())}),e}onSideBarUpdated(){var s;const e=Fr(this.gos.get("sideBar")),t={};e&&this.sideBar&&((s=e.toolPanels)==null||s.forEach(i=>{var d,c;const{id:o}=i;if(!o)return;const r=(d=this.sideBar.toolPanels)==null?void 0:d.find(u=>u.id===o);if(!r||i.toolPanel!==r.toolPanel)return;const n=this.toolPanelWrappers.find(u=>u.getToolPanelId()===o);if(!n)return;const l=this.gos.addGridCommonParams({...i.toolPanelParams??{},onStateUpdated:()=>this.dispatchSideBarUpdated()});((c=n.getToolPanelInstance())==null?void 0:c.refresh(l))===!0&&(this.toolPanelWrappers=this.toolPanelWrappers.filter(u=>u!==n),Qe(n.getGui()),t[o]=n)})),this.clearDownUi(),this.setSideBarDef({sideBarDef:e,existingToolPanelWrappers:t})}dispatchSideBarUpdated(){this.eventService.dispatchEvent({type:"sideBarUpdated"})}
242destroyToolPanelWrappers(){this.toolPanelWrappers.forEach(e=>{Qe(e.getGui()),this.destroyBean(e)}),this.toolPanelWrappers.length=0}destroy(){this.destroyToolPanelWrappers(),super.destroy()}},wF={selector:"AG-SIDE-BAR",component:SF},yF=class extends b{constructor(){super(...arguments),this.beanName="sideBarService"}registerSideBarComp(e){this.sideBarComp=e}getSideBarComp(){return this.sideBarComp}getSideBarSelector(){return wF}},Dn="32.3.2",Dc={version:Dn,moduleName:`${U.SideBarModule}-core`,beans:[sF,yF],dependantModules:[ms]},RF={version:Dn,moduleName:`${U.SideBarModule}-api`,apiFunctions:{isSideBarVisible:iF,setSideBarVisible:oF,setSideBarPosition:rF,openToolPanel:nF,closeToolPanel:lF,getOpenedToolPanel:aF,refreshToolPanel:dF,isToolPanelShowing:cF,getToolPanelInstance:uF,getSideBar:hF},dependantModules:[Dc]},bF={version:Dn,moduleName:U.SideBarModule,dependantModules:[Dc,RF]},Gl=300,FF=class extends O{constructor(){super(`<div class="ag-column-select-header" role="presentation"> 243 <div data-ref="eExpand" class="ag-column-select-header-icon"></div> 244 <ag-checkbox data-ref="eSelect" class="ag-column-select-header-checkbox"></ag-checkbox> 245 <ag-input-text-field class="ag-column-select-header-filter-wrapper" data-ref="eFilterTextField"></ag-input-text-field> 246 </div>`,[hs,ps]),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===S.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=N("columnSelectOpen",this.gos)),this.eExpand.appendChild(this.eExpandUnchecked=N("columnSelectClosed",this.gos)),this.eExpand.appendChild(this.eExpandIndeterminate=N("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...")),H(this.eFilterTextField.getGui(),e),H(this.eSelect.getGui(),t),H(this.eExpand,s&&i)}onFilterTextChanged(){this.onFilterTextChangedDebounced||(this.onFilterTextChangedDebounced=Me(()=>{const e=this.eFilterTextField.getValue();this.dispatchLocalEvent({type:"filterChanged",filterText:e})},Gl)),this.onFilterTextChangedDebounced()}onMiniFilterKeyDown(e){e.key===S.ENTER&&setTimeout(()=>this.onSelectClicked(),Gl)}onSelectClicked(){this.dispatchLocalEvent({type:this.selectState?"unselectAll":"selectAll"})}onExpandClicked(){this.dispatchLocalEvent({type:this.expandState===0?"collapseAll":"expandAll"})}setExpandState(e){this.expandState=e,H(this.eExpandChecked,this.expandState===0),H(this.eExpandUnchecked,this.expandState===1),H(this.eExpandIndeterminate,this.expandState===2)}setSelectionState(e){this.selectState=e,this.eSelect.setValue(this.selectState)}}
246,PF={selector:"AG-PRIMARY-COLS-HEADER",component:FF},kl=class{constructor(e,t,s,i=!1,o){this.localEventService=new qt,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)}},xc=class extends O{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(),bt(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){be(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=>
246t.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 Po),i=this.localeService.getLocaleTextFunc();let o=()=>{};t.appendChild(s.getGui()),s.addMenuItems(e),s.addManagedListeners(s,{closeMenu:()=>{this.parentEl.focus(),o()}});const r=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)}});r&&(o=r.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:N(t.addIcon,this.gos,null),action:()=>t.activateFunction()}),i&&e.push({name:t.deactivateLabel(this.displayName),icon:N(t.removeIcon,this.gos,null),action:()=>t.deActivateFunction()})}return e}},Ac=class extends O{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.eventType=s,this.focusWrapper=i,this.cbSelect=P,this.eLabel=P,this.eGroupOpenedIcon=P,this.eGroupClosedIcon=P,this.eColumnGroupIcons=P,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"> 247 <span class="ag-column-group-icons" data-ref="eColumnGroupIcons" > 248 <span class="ag-column-group-closed-icon" data-ref="eGroupClosedIcon"></span>
249 <span class="ag-column-group-opened-icon" data-ref="eGroupOpenedIcon"></span> 250 </span> 251 <ag-checkbox data-ref="cbSelect" class="ag-column-select-checkbox"></ag-checkbox> 252 <span class="ag-column-select-column-label" data-ref="eLabel"></span> 253 </div>`,[hs]),this.eDragHandle=N("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(),ld(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 S.LEFT:e.preventDefault(),this.modelItem.setExpanded(!1);break;case S.RIGHT:e.preventDefault(),this.modelItem.setExpanded(!0);break;case S.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 xc(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){H(this.eDragHandle,!1);return}let e=!this.gos.get("suppressDragLeaveHidesColumns");const t={type:ds.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==null?void 0:s.visibleState,pivotState:s==null?void 0: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(Ps("columnSelectClosed",this.gos,null)),this.eGroupOpenedIcon.appendChild(Ps("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 wt(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=>
253{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");ze(this.focusWrapper,`${this.displayName} ${t}`),this.cbSelect.setInputAriaLabel(`${o} (${i})`),Hr(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();H(this.eGroupClosedIcon,!e),H(this.eGroupOpenedIcon,e)}refreshAriaExpanded(){Ft(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)}},EF=class extends b{constructor(e,t){super(),this.comp=e,this.virtualList=t}wireBeans(e){this.columnMoveService=e.columnMoveService,this.columnModel=e.columnModel}postConstruct(){this.createManagedBean(new ry(this.comp,this.virtualList,{dragSourceType:ds.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 be(e)?e.getLeafColumns():e?[e]:[]}isMoveBlocked(e){return this.gos.get("suppressMovableColumns")?!0:!!this.getCurrentColumnsBeingMoved(e).find(o=>{const r=o.getColDef();return!!r.suppressMovable||!!r.lockPosition})}moveItem(e,t){if(!t)return;const{component:s}=t;let i=null,o=t.position==="top";if(s instanceof Ac?(i=s.getColumns()[0],o=!0):s&&(i=s.getColumn()),!i)return;const r=this.getMoveTargetIndex({currentColumns:e,lastHoveredColumn:i,isBefore:o});r!=null&&this.columnMoveService.moveColumns(e,r,"toolPanelUi")}getMoveTargetIndex(e){const{currentColumns:t,lastHoveredColumn:s,isBefore:i}=e;if(!s||!t)return null;const o=this.columnModel.getCols().indexOf(s),r=i?o:o+1,n=this.getMoveDiff(t,r);return r-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}},MF=class extends O{constructor(e,t,s,i){super(),this.allowDragging=t,this.groupsExist=s,this.focusWrapper=i,this.eLabel=P,this.cbSelect=P,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"> 254 <ag-checkbox data-ref="cbSelect" class="ag-column-select-checkbox"></ag-checkbox>
255 <span class="ag-column-select-column-label" data-ref="eLabel"></span> 256 </div>`,[hs]),this.eDragHandle=N("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=Ce(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(),ld(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 xc(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}handleKeyDown(e){e.key===S.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");ze(this.focusWrapper,`${this.displayName} ${t}`),this.cbSelect.setInputAriaLabel(`${i} (${s})`),Hr(this.focusWrapper,this.cbSelect.getInputElement().id)}setupDragging(){if(!this.allowDragging){H(this.eDragHandle,!1);return}let e=!this.gos.get("suppressDragLeaveHidesColumns");const t={type:ds.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==null?void 0:s.visibleState,pivotState:s==null?void 0: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:r,suppressMovable:n,lockVisible:l}=this.column.getColDef(),a=!!i||!!o,d=!!r||!!n;t=!l,s=a||!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(
256))}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}isExpandable(){return!1}setExpanded(e){R("can not expand a column item that does not represent a column group header")}},DF=class{constructor(e){this.items=e}getRowCount(){return this.items.length}getRow(e){return this.items[e]}},xF="ag-column-select-list",AF=class extends O{constructor(){super(`<div class="${xF}" 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 mn({cssIdentifier:"column-select",ariaRole:"tree"})),this.appendChild(this.virtualList.getGui()),this.virtualList.setComponentCreator((o,r)=>(Wr(r,o.getDept()+1),this.createComponentFromItem(o,r))),this.columnModel.isReady()&&this.onColumnsChanged(),!this.params.suppressColumnMove&&this.createManagedBean(new EF(this,this.virtualList))}createComponentFromItem(e,t){if(e.isGroup()){const i=new Ac(e,this.allowDragging,this.eventType,t);return this.createBean(i),i}const s=new MF(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,a)=>{n.forEach(d=>{be(d)?o(d,l,a):r(d,l,a)})},o=(n,l,a)=>{const d=n.getColGroupDef();if(d&&d.suppressColumnsToolPanel)return;if(n.isPadding()){i(n.getChildren(),l,a);return}const u=this.columnNameService.getDisplayNameForProvidedColumnGroup(null,n,"columnToolPanel"),h=new kl(u,n,l,!0,this.expandGroupsByDefault);a.push(h),s(h),i(n.getChildren(),l+1,h.getChildren())},r=(n,l,a)=>{if(n.getColDef()&&n.getColDef().suppressColumnsToolPanel)return;const c=this.columnNameService.getDisplayNameForColumn(n,"columnToolPanel");a.push(new kl(c,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().forEac
256h(e))};this.allColsTree.forEach(e),this.virtualList.setModel(new DF(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;ze(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 r=o.getColumnGroup().getId();t.indexOf(r)>=0&&(o.setExpanded(e),s.push(r))});const i=t.filter(o=>!et(s,o));i.length>0&&R("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(),r=o.getColDef();let n;
256if(s){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!(e===0||t>0)}setFilterText(e){this.filterText=E(e)?e.toLowerCase():null,this.markFilteredColumns(),this.flattenAndFilterModel()}markFilteredColumns(){const e=s=>{if(!E(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 a=t(l,n||i);a&&(o=a)})}const r=i||o?!0:e(s);return s.setPassesFilter(r),r};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}},TF={selector:"AG-PRIMARY-COLS-LIST",component:AF},Tc=class extends O{constructor(){super(`<div class="ag-column-select"> 257 <ag-primary-cols-header data-ref="primaryColsHeaderPanel"></ag-primary-cols-header> 258 <ag-primary-cols-list data-ref="primaryColsListPanel"></ag-primary-cols-list> 259 </div>`,[PF,TF]),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 wo(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()}},Ol=class extends O{constructor(){super(...arguments),this.cbPivotMode=P}wireBeans(e){this.columnModel=e.columnModel,this.ctrlsService=e.ctrlsService}createTemplate(){return`<div class="ag-pivot-mode-panel"> 260 <ag-toggle-button data-ref="cbPivotMode" class="ag-pivot-mode-select"></ag-toggle-button> 261 </div>`}postConstruct(){this.setTemplate(this.createTemplate(),[Nm]),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"}
261),this.ctrlsService.getHeaderRowContainerCtrls().forEach(t=>t.refresh()))}onPivotModeChanged(){const e=this.columnModel.isPivotMode();this.cbPivotMode.setValue(e)}},IF=class extends O{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 Ol),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotModePanel)),this.appendChild(this.pivotModePanel)),this.primaryColsPanel=this.createBean(new Tc),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 br(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.rowGroupDropZonePanel)),this.appendChild(this.rowGroupDropZonePanel)),this.params.suppressValues||(this.valuesDropZonePanel=this.createBean(new Ll(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.valuesDropZonePanel)),this.appendChild(this.valuesDropZonePanel)),this.params.suppressPivots||(this.pivotDropZonePanel=this.createBean(new Rr(!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 Ol),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 br(!1)),this.appendChild(this.rowGroupDropZonePanel)),this.setLastVisible())}setValuesSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.valuesDropZonePanel?this.valuesDropZonePanel.setDisplayed(e):e&&(this.valuesDropZonePanel=this.createManagedBean(new Ll(!1)),this.appendChild(this.valuesDropZonePanel)),this.setLastVisible())}setPivotSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.pivotDropZonePanel?this.pivotDropZonePanel.setDisplayed(e):e&&(this.pivotDropZonePanel=this.createManagedBean(new Rr(!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(U.RowGroupingModule,"Row Grouping")}expandColumnGroups(e){this.primaryColsPanel.expandGroups(e)}collapseColumnGroups(e){this.primaryColsPanel.collapseGroups(e)}setColumnLayout(e){this.primaryColsPanel.setColumnLayout(e)}
261syncLayoutWithGrid(){this.primaryColsPanel.syncLayoutWithGrid()}destroyChildren(){this.childDestroyFuncs.forEach(e=>e()),this.childDestroyFuncs.length=0,de(this.getGui())}refresh(e){return this.destroyChildren(),this.init(e),!0}getState(){return{expandedGroupIds:this.primaryColsPanel.getExpandedGroups()}}destroy(){this.destroyChildren(),super.destroy()}},LF=class extends b{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=>{var a;if(!l.isAnyFunctionActive())if(l.isAllowValue()){const d=typeof l.getAggFunc()=="string"?l.getAggFunc():(a=this.aggFuncService)==null?void 0:a.getDefaultAggFunc(l);i.push({colId:l.getId(),aggFunc:d})}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,r=t.map(n=>{const l=n.getColId();if(this.columnModel.isPivotMode()){const a=i==null?void 0:i[l];return{colId:l,pivot:a==null?void 0:a.pivot,rowGroup:a==null?void 0:a.rowGroup,aggFunc:a==null?void 0:a.aggFunc}}else return{colId:l,hide:!(s!=null&&s[l])}});this.columnApplyStateService.applyColumnState({state:r},o)}createPivotState(e){return{pivot:e.isPivotActive(),rowGroup:e.isRowGroupActive(),aggFunc:e.isValueActive()?e.getAggFunc():void 0}}},GF="32.3.2",XD={version:GF,moduleName:U.ColumnsToolPanelModule,beans:[LF],userComponents:[{name:"agColumnsToolPanel",classImp:IF},{name:"agMenuItem",classImp:fn}],dependantModules:[ms,eF,bF]},kF=9525,Nl={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},OF=e=>Math.round(e*96/72),Ss=e=>Math.ceil(e*kF),NF=e=>{if(e===void 0)return;const s=["Automatic","Roman","Swiss","Modern","Script","Decorative"].indexOf(e||"Automatic");return Math.max(s,0)},$i=(e,t)=>{if(!t)return;let s;return typeof t=="number"?s=t:s=t({rowIndex:e}),s},BF=(e,t)=>{const{colSpan:s,column:i}=e.position;if(e.width)if(s){const o=t.slice(i-1,i+s-1);let r=0;for(let n=0;n<o.length;n++){const l=o[n].getActualWidth();if(e.width<r+l){e.position.colSpan=n+1,e.totalWidth=e.width,e.width=e.totalWidth-r;break}r+=l}}else e.totalWidth=e.width},VF=(e,t)=>{const{rowSpan:s,row:i}=e.position;if(e.height)if(s){let o=0,r=0;for(let n=i;n<i+s;n++){const l=OF($i(n,t)||20);if(e.height<o+l){e.position.rowSpan=r+1,e.totalHeight=e.height,e.height=e.totalHeight-o;break}o+=l,r++}}else e.totalHeight=e.height},He=(e,t)=>{const s=ml.createHeader({encoding:"UTF-8",standalone:"yes"}),i=ml.createXml(e);return t?i:`${s}${i}`},ks=e=>{const i=String.fromCharCode,o=Math.floor(e/26),r=e%26;return!o||e===26?i(65+e-1):r?o<26?i(65+o-1)+i(65+r-1):ks(o)+i(65+r-1):ks(o-1)+"Z"},Pr=e=>{if(e==null)return null;let t="";for(let s=0;s<e.length;s++){const i=e.charCodeAt(s);if(i>=0&&i<=31&&i!==10){const n=`_x${i.toString(16).toUpperCase().padStart(4,"0")}_`;t+=n}else t+=e[s]}return t},HF=e=>{const t=[];for(const s of e.keys()){const i=s.toString(),o={name:"t",textNode:Ce(Pr(i),!1)};i.trim().length!==i.length&&(o.properties={rawMap:{"xml:space":"preserve"}}),t.push({name:"si",children:[o]})}return t},WF={getTemplate(e){const{name:t,ContentType:s,Extension:i,PartName:o}=e;return{name:t,properties:{rawMap:{Extension:i,PartName:o,ContentType:s}}}}},zF=WF,ro=e=>e==="jpg"?"jpeg":e,UF={getTemplate(e){const t=new Array(e).fill(void 0).map((c,u)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",PartName:`/xl/worksheets/sheet${u+1}.xml`})),s=q.worksheetImages.size,i=q.worksheetHeaderFooterImages.size,o=q.worksheetDataTables.size,r={};q.workbookImageIds.forEach(c=>{r[ro(c.type)]=!0});const n=new Array(s).fill(void 0).map((c,u)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml",PartName:`/xl/drawings/drawing${u+1}.xml`})),l=new Array(o).fill(void 0).map((c,u)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml",PartName:`/xl/tables/${q.getTableNameFromIndex(u)}.xml`})),a=Object.keys(r).map(c=>({name:"Default",ContentType:`image/${c}`,Extension:c}));i&&a.push({name:"Default",Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"});const d=[...a,{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/wor
261kbook.xml"},...t,{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.theme+xml",PartName:"/xl/theme/theme1.xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",PartName:"/xl/styles.xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",PartName:"/xl/sharedStrings.xml"},...n,...l,{name:"Override",ContentType:"application/vnd.openxmlformats-package.core-properties+xml",PartName:"/docProps/core.xml"}].map(c=>zF.getTemplate(c));return{name:"Types",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"}},children:d}}},_F=UF,KF={getTemplate(e){const s=new Date().toJSON();return{name:"cp:coreProperties",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{cp:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",xsi:"http://www.w3.org/2001/XMLSchema-instance"}}]},children:[{name:"dc:creator",textNode:e},{name:"dc:title",textNode:"Workbook"},{name:"dcterms:created",properties:{rawMap:{"xsi:type":"dcterms:W3CDTF"}},textNode:s},{name:"dcterms:modified",properties:{rawMap:{"xsi:type":"dcterms:W3CDTF"}},textNode:s}]}}},$F=KF,Bl=(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()}]}),jF=e=>{const t=[{name:"a:ext",properties:{rawMap:{uri:"{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}"}},children:[{name:"a16:creationId",properties:{rawMap:{id:"{822E6D20-D7BC-2841-A643-D49A6EF008A2}","xmlns:a16":"http://schemas.microsoft.com/office/drawing/2014/main"}}}]}];switch(e.recolor&&e.recolor.toLowerCase()){case"grayscale":case"sepia":case"washout":t.push({name:"a:ext",properties:{rawMap:{uri:"{C183D7F6-B498-43B3-948B-1728B52AA6E4}"}},children:[{name:"adec:decorative",properties:{rawMap:{val:"0","xmlns:adec":"http://schemas.microsoft.com/office/drawing/2017/decorative"}}}]})}return{name:"a:extLst",children:t}},qF=(e,t)=>({name:"xdr:nvPicPr",children:[{name:"xdr:cNvPr",properties:{rawMap:{id:t,name:e.id,descr:e.altText!=null?e.altText:void 0}},children:[jF(e)]},{name:"xdr:cNvPicPr",properties:{rawMap:{preferRelativeResize:"0"}},children:[{name:"a:picLocks"}]}]}),Vl=e=>{if(!e.saturation&&!e.tint)return;const t=[];return e.saturation&&t.push({name:"a:satMod",properties:{rawMap:{val:e.saturation*1e3}}}),e.tint&&t.push({name:"a:tint",properties:{rawMap:{val:e.tint*1e3}}}),t},YF=(e,t)=>({name:"a:duotone",children:[{name:"a:prstClr",properties:{rawMap:{val:e.color}},children:Vl(e)},{name:"a:srgbClr",properties:{rawMap:{val:t.color}},children:Vl(t)}]}),QF=(e,t)=>{let s;if(e.transparency){const i=Math.min(Math.max(e.transparency,0),100);s=[{name:"a:alphaModFix",properties:{rawMap:{amt:1e5-Math.round(i*1e3)}}}]}if(e.recolor)switch(s||(s=[]),e.recolor.toLocaleLowerCase()){case"grayscale":s.push({name:"a:grayscl"});break;case"sepia":s.push(YF({color:"black"},{color:"D9C3A5",tint:50,saturation:180}));break;case"washout":s.push({name:"a:lum",properties:{rawMap:{bright:"70000",contrast:"-70000"}}});break}return{name:"xdr:blipFill",children:[{name:"a:blip",properties:{rawMap:{cstate:"print","r:embed":`rId${t}`,"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}},children:s},{name:"a:stretch",children:[{name:"a:fillRect"}]}]}},XF=(e,t)=>{const s={name:"a:xfrm",children:[{name:"a:off",properties:{rawMap:{x:0,y:0}}},{name:"a:ext",properties:{rawMap:{cx:t.width,cy:t.height}}}]};if(e.rotation){const r=e.rotation;s.properties={rawMap:{rot:Math.min(Math.max(r,0),360)*6e4}}}return{name:"xdr:spPr",children:[s,{name:"a:prstGeom",properties:{rawMap:{prst:"rect"}},children:[{name:"a:avLst"}]}]}},ZF=e=>{e.fitCell=!!e.fitCell||!e.width||!e.height;const{position:t={},fitCell:s,width:i=0,height:o=0,totalHeight:r,totalWidth:n}=e,{offsetX:l=0,offsetY:a=0,row:d=1,rowSpan:c=1,column:u=1,colSpan:h=1}=t;return{from:{row:d-1,col:u-1,offsetX:Ss(l),offsetY:Ss(a)},to:{row:d-1+(s?1:c-1),col:u-1+(s?1:h-1),offsetX:Ss(i+l),offsetY:Ss(o+a)},height:Ss(r||o),width:Ss(n||i)}},JF=(e,t,s,i)=>({name:"xdr:pic",children:[qF(e,t+1),QF(e,s+1),XF(e,i)]}),eP={getTemplate(e){const{sheetIndex:t}=e,s=q.worksheetImages.get(t),i=q.worksheetImageIds.get(t),o=s.map((r,n)=>{const l=ZF(r);return{name:"xdr:twoCellAnchor",properties:{rawMap:{editAs:"absolute"}},children:[Bl("from",l.from),Bl("to",l.to),JF(r,n,i.get(r.id).index,l),{name:"xdr:clientData"}]}});return{name:"xdr:wsDr",properties:{rawMap:{"xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main","xmlns:xdr":"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"}},children:o}}},tP=eP,sP={getTemplate(e){const{Id:t,Type:s,Target:i}=e;return{name:"Relationship",properties:{rawMap:{Id:t,Type:s,Target:i}}}}},iP=sP,oP={getTemplate(e){const t=e.map(s=>iP.getTemplate(s));return{name:"Relationships",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"}},children:t}}},Ys=oP,rP={getTemplate(e){return{name:"sst",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:e.size,uniqueCount:e.size}},children:HF(e)}}},nP=rP,lP=e=>{switch(e){case 1:return"thin";case 2:return"medium";case 3:return"thick";default:return"hair"}},aP={None:"None",Dot:"Dotted",Dash:"Dashed",Double:"Double",DashDot:"DashDot",DashDotDot:"DashDotDot",SlantDashDot:"SlantDashDot",Continuous:"Continuous"},dP=["Dashed","DashDot","DashDotDot"],cP={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"},uP={Automatic:"general",Left:"left",Center:"center",Right:"right",Fill:"fill",Justify:"justify",CenterAcrossSelection:"centerContinuous",Distributed:"distributed",JustifyDistributed:"justify"},hP={Automatic:void 0,Top:"top",Bottom:"bottom",Center:"center",Justify:"justify",Distributed:"distributed",JustifyDistributed:"justify"},pP=e=>e?cP[e]||e:"none",$t=e=>e==null?e:(e.charAt(0)==="#"&&(e=e.substring(1)),e.length===6?"FF"+e:e),Vi=(e,t)=>{if(!e)return"thin";const s=lP(t);if(e==="Continuous")return s;const i=aP[e];return s==="medium"&&dP.some(o=>o===i)?`medium${i}`:`${i.charAt(0).toLowerCase()}${i.substring(1)}`}
vendor: 20,001 bytes, line 261
261,gP=e=>uP[e]||"general",fP=e=>hP[e]||void 0,Qs=e=>({name:"color",properties:{rawMap:{rgb:$t(e||"#000000")}}}),mP={getTemplate(e){const{left:t,right:s,top:i,bottom:o,diagonal:r}=e,n=t?[Qs(t.color)]:void 0,l=s?[Qs(s.color)]:void 0,a=i?[Qs(i.color)]:void 0,d=o?[Qs(o.color)]:void 0,c=r?[Qs(r.color)]:void 0;return{name:"border",children:[{name:"left",properties:{rawMap:{style:t&&t.style}},children:n},{name:"right",properties:{rawMap:{style:s&&s.style}},children:l},{name:"top",properties:{rawMap:{style:i&&i.style}},children:a},{name:"bottom",properties:{rawMap:{style:o&&o.style}},children:d},{name:"diagonal",properties:{rawMap:{style:r&&r.style}},children:c}]}}},CP=mP,vP={getTemplate(e){return{name:"borders",properties:{rawMap:{count:e.length}},children:e.map(t=>CP.getTemplate(t))}}},SP=vP,wP=e=>{const s=["Context","LeftToRight","RightToLeft"].indexOf(e);return Math.max(s,0)},yP={getTemplate(e){const{horizontal:t,indent:s,readingOrder:i,rotate:o,shrinkToFit:r,vertical:n,wrapText:l}=e;return{name:"alignment",properties:{rawMap:{horizontal:t&&gP(t),indent:s,readingOrder:i&&wP(i),textRotation:o,shrinkToFit:r,vertical:n&&fP(n),wrapText:l}}}}},RP=yP,bP={getTemplate(e){const t=e.protected===!1?0:1;return{name:"protection",properties:{rawMap:{hidden:e.hideFormula===!0?1:0,locked:t}}}}},FP=bP,PP={getTemplate(e){const{alignment:t,borderId:s,fillId:i,fontId:o,numFmtId:r,protection:n,quotePrefix:l,xfId:a}=e,d=[];return t&&d.push(RP.getTemplate(t)),n&&d.push(FP.getTemplate(n)),{name:"xf",properties:{rawMap:{applyAlignment:t?1:void 0,applyProtection:n?1:void 0,applyBorder:s?1:void 0,applyFill:i?1:void 0,borderId:s,fillId:i,applyFont:o?1:void 0,fontId:o,applyNumberFormat:r?1:void 0,numFmtId:r,quotePrefix:l?1:void 0,xfId:a}},children:d.length?d:void 0}}},Ic=PP,EP={getTemplate(e){return{name:"cellStyleXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>Ic.getTemplate(t))}}},MP=EP,DP={getTemplate(e){const{builtinId:t,name:s,xfId:i}=e;return{name:"cellStyle",properties:{rawMap:{builtinId:t,name:s,xfId:i}}}}},xP=DP,AP={getTemplate(e){return{name:"cellStyles",properties:{rawMap:{count:e.length}},children:e.map(t=>xP.getTemplate(t))}}},TP=AP,IP={getTemplate(e){return{name:"cellXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>Ic.getTemplate(t))}}},LP=IP,GP={getTemplate(e){const{patternType:t,fgTheme:s,fgTint:i,fgRgb:o,bgRgb:r,bgIndexed:n}=e,l={name:"patternFill",properties:{rawMap:{patternType:t}}};return(s||i||o)&&(l.children=[{name:"fgColor",properties:{rawMap:{theme:s,tint:i,rgb:o}}}]),(n||r)&&(l.children||(l.children=[]),l.children.push({name:"bgColor",properties:{rawMap:{indexed:n,rgb:r}}})),{name:"fill",children:[l]}}},kP=GP,OP={getTemplate(e){return{name:"fills",properties:{rawMap:{count:e.length}},children:e.map(t=>kP.getTemplate(t))}}},NP=OP,BP={getTemplate(e){const{size:t,colorTheme:s,color:i="FF000000",fontName:o="Calibri",family:r,scheme:n,italic:l,bold:a,strikeThrough:d,outline:c,shadow:u,underline:h,verticalAlign:p}=e,g=[{name:"sz",properties:{rawMap:{val:t}}},{name:"color",properties:{rawMap:{theme:s,rgb:i}}},{name:"name",properties:{rawMap:{val:o}}}];return r&&g.push({name:"family",properties:{rawMap:{val:r}}}),n&&g.push({name:"scheme",properties:{rawMap:{val:n}}}),l&&g.push({name:"i"}),a&&g.push({name:"b"}),d&&g.push({name:"strike"}),c&&g.push({name:"outline"}),u&&g.push({name:"shadow"}),h&&g.push({name:"u",properties:{rawMap:{val:h}}}),p&&g.push({name:"vertAlign",properties:{rawMap:{val:p}}}),{name:"font",children:g}}},VP=BP,HP={getTemplate(e){return{name:"fonts",properties:{rawMap:{count:e.length}},children:e.map(t=>VP.getTemplate(t))}}},WP=HP;function zP(e){const t=e.split(/(\[[^\]]*\])/);for(let s=0;s<t.length;s++){let i=t[s];i.length&&(i.startsWith("[")||(i=i.replace(/\$/g,'"$"')),t[s]=Ce(i))}return t.join("")}var UP={getTemplate(e){let{formatCode:t,numFmtId:s}=e;return t.length&&(t=zP(t)),{name:"numFmt",properties:{rawMap:{formatCode:t,numFmtId:s}}}}},_P=UP,KP={getTemplate(e){return{name:"numFmts",properties:{rawMap:{count:e.length}},children:e.map(t=>_P.getTemplate(t))}}},$P=KP,no,Rs,ni,li,ai,Lc,lo,Gc,Er,kc=(e,t)=>(e.indexOf("mixedStyle")!==-1&&t>1&&(e+=`_${t}`),e),Oc=()=>{no={base:0},Rs=[],ni=[{fontName:"Calibri",colorTheme:"1",family:"2",scheme:"minor"}],li=[{patternType:"none"},{patternType:"gray125"}],ai=[{left:void 0,right:void 0,top:void 0,bottom:void 0,diagonal:void 0}],Lc=[{borderId:0,fillId:0,fontId:0,numFmtId:0}],lo=[{borderId:0,fillId:0,fontId:0,numFmtId:0,xfId:0}],Gc=[{builtinId:0,name:"Normal",xfId:0}]},jP=e=>{const t=pP(e.pattern),s=$t(e.color),i=$t(e.patternColor);let o=li.findIndex(r=>{const{patternType:n,fgRgb:l,bgRgb:a}=r;return!(n!=t||l!=s||a!=i)});return o===-1&&(o=li.length,li.push({patternType:t,fgRgb:s,bgRgb:i})),o},qP=e=>{if(Nl[e])return Nl[e];let t=Rs.findIndex(s=>s.formatCode===e);return t===-1?(t=Rs.length+164,Rs.push({formatCode:e,numFmtId:t})):t=Rs[t].numFmtId,t},YP=e=>{const{borderBottom:t,borderTop:s,borderLeft:i,borderRight:o}=e;let r,n,l,a,d,c,u,h;i&&(l=Vi(i.lineStyle,i.weight),u=$t(i.color)),o&&(a=Vi(o.lineStyle,o.weight),h=$t(o.color)),t&&(r=Vi(t.lineStyle,t.weight),d=$t(t.color)),s&&(n=Vi(s.lineStyle,s.weight),c=$t(s.color));let p=ai.findIndex(g=>{const{left:f,right:m,top:v,bottom:y}=g;if(!f&&(l||u)||!m&&(a||h)||!v&&(n||c)||!y&&(r||d))return!1;const{style:w,color:F}=f||{},{style:D,color:M}=m||{},{style:x,color:I}=v||{},{style:G,color:k}=y||{};return!(w!=l||F!=u||D!=a||M!=h||x!=n||I!=c||G!=r||k!=d)});return p===-1&&(p=ai.length,ai.push({left:{style:l,color:u},right:{style:a,color:h},top:{style:n,color:c},bottom:{style:r,color:d},diagonal:{style:void 0,color:void 0}})),p},QP=e=>{const{fontName:t="Calibri",color:s,size:i,bold:o,italic:r,outline:n,shadow:l,strikeThrough:a,underline:d,family:c,verticalAlign:u}=e,h=$t(s),p=NF(c),g=d?d.toLocaleLowerCase():void 0,f=u?u.toLocaleLowerCase():void 0;let m=ni.findIndex(v=>!(v.fontName!=t||v.color!=h||v.size!=i||v.bold!=o||v.italic!=r||v.outline!=n||v.shadow!=l||v.strikeThrough!=a||v.underline!=g||v.verticalAlign!=f||v.family!=p));return m===-1&&(m=ni.length,ni.push({fontName:t,color:h,size:i,bold:o,italic:r,outline:n,shadow:l,strikeThrough:a,underline:g,verticalAlign:f,family:p!=null?p.toString():void 0})),m},XP=e=>{const{alignment:t,borders:s,font:i,interior:o,numberFormat:r,protection:n,quotePrefix:l}=e;let{id:a}=e,d=0,c=0,u=0,h=0;a&&(a=kc(a,Er),no[a]==null&&(o&&(d=jP(o)),s&&(c=YP(s)),i&&(u=QP(i)),r&&(h=qP(r.format)),no[a]=lo.length,lo.push({alignment:t,borderId:c||0,fillId:d||0,fontId:u||0,numFmtId:h||0,protection:n,quotePrefix:l,xfId:0})))},ZP={getTemplate(e){const t=$P.getTemplate(Rs),s=WP.getTemplate(ni.map(a=>({...a,size:a.size!=null?a.size:e}))),i=NP.getTemplate(li),o=SP.getTemplate(ai),r=MP.getTemplate(Lc),n=LP.getTemplate(lo),l=TP.getTemplate(Gc);return Oc(),{name:"styleSheet",properties:{rawMap:{"mc:Ignorable":"x14ac x16r2 xr",xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac","xmlns:x16r2":"http://schemas.microsoft.com/office/spreadsheetml/2015/02/main","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision"}},children:[t,s,i,o,r,n,l,{name:"tableStyles",properties:{rawMap:{count:0,defaultPivotStyle:"PivotStyleLight16",defaultTableStyle:"TableStyleMedium2"}}}]}}},JP=(e,t)=>no[kc(e,t)]||0,eE=(e,t)=>{Er=t,Er===1&&Oc(),e.forEach(XP)},tE=ZP,sE={getTemplate(e,t){const{name:s,columns:i,rowCount:o,displayName:r,headerRowIndex:n,showRowStripes:l,showColumnStripes:a,showFilterButtons:d,highlightFirstColumn:c,highlightLastColumn:u}=e||{};if(!e||!s||!Array.isArray(i)||!i.length||!o)return{name:"table"};const h=i.map((w,F)=>({name:"filterColumn",properties:{rawMap:{colId:F.toString(),hiddenButton:d[F]?0:1}}})),p=n+1,g=(t+1).toString(),f=`A${p}`,m=`${String.fromCharCode(64+i.length)}${p+o}`,v=`${f}:${m}`,y=t?`${r}_${t+1}`:r;return{name:"table",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"xr xr3","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision","xmlns:xr3":"http://schemas.microsoft.com/office/spreadsheetml/2016/revision3",name:s,displayName:y,ref:v,totalsRowShown:0,id:g}},children:[{name:"autoFilter",properties:{rawMap:{ref:v}},children:h},{name:"tableColumns",properties:{rawMap:{count:i.length}},children:i.map((w,F)=>({name:"tableColumn",properties:{rawMap:{id:(F+1).toString(),name:w,dataCellStyle:"Normal"}}}))},{name:"tableStyleInfo",properties:{rawMap:{name:"TableStyleLight1",showFirstColumn:c?1:0,showLastColumn:u?1:0,showRowStripes:l?1:0,showColumnStripes:a?1:0}}}]}}},iE=sE,st=e=>{const[t,s,i,o]=e;return{name:`a:${t}`,children:[{name:`a:${s}`,properties:{rawMap:{val:i,lastClr:o}}}]}},oE={getTemplate(){return{name:"a:clrScheme",properties:{rawMap:{name:"Office"}},children:[st(["dk1","sysClr","windowText","000000"]),st(["lt1","sysClr","window","FFFFFF"]),st(["dk2","srgbClr","44546A"]),st(["lt2","srgbClr","E7E6E6"]),st(["accent1","srgbClr","4472C4"]),st(["accent2","srgbClr","ED7D31"]),st(["accent3","srgbClr","A5A5A5"]),st(["accent4","srgbClr","FFC000"]),st(["accent5","srgbClr","5B9BD5"]),st(["accent6","srgbClr","70AD47"]),st(["hlink","srgbClr","0563C1"]),st(["folHlink","srgbClr","954F72"])]}}},rE=oE,A=e=>{const[t,s,i,o]=e;return{name:`a:${t}`,properties:{rawMap:{script:i,typeface:s,panose:o}}}},nE={getTemplate(){return{name:"a:fontScheme",properties:{rawMap:{name:"Office"}},children:[{name:"a:majorFont",children:[A(["latin","Calibri Light",void 0,"020F0302020204030204"]),A(["ea",""]),A(["cs",""]),A(["font","游ã´ã·ã㯠Light","Jpan"]),A(["font","ë§ì ê³ ë","Hang"]),A(["font","ç线 Light","Hans"]),A(["font","æ°ç´°æé«","Hant"]),A(["font","Times New Roman","Arab"]),A(["font","Times New Roman","Hebr"]),A(["font","Tahoma","Thai"]),A(["font","Nyala","Ethi"]),A(["font","Vrinda","Beng"]),A(["font","Shruti","Gujr"]),A(["font","MoolBoran","Khmr"]),A(["font","Tunga","Knda"]),A(["font","Raavi","Guru"]),A(["font","Euphemia","Cans"]),A(["font","Plantagenet Cherokee","Cher"]),A(["font","Microsoft Yi Baiti","Yiii"]),A(["font","Microsoft Himalaya","Tibt"]),A(["font","MV Boli","Thaa"]),A(["font","Mangal","Deva"]),A(["font","Gautami","Telu"]),A(["font","Latha","Taml"]),A(["font","Estrangelo Edessa","Syrc"]),A(["font","Kalinga","Orya"]),A(["font","Kartika","Mlym"]),A(["font","DokChampa","Laoo"]),A(["font","Iskoola Pota","Sinh"]),A(["font","Mongolian Baiti","Mong"]),A(["font","Times New Roman","Viet"]),A(["font","Microsoft Uighur","Uigh"]),A(["font","Sylfaen","Geor"]),A(["font","Arial","Armn"]),A(["font","Leelawadee UI","Bugi"]),A(["font","Microsoft JhengHei","Bopo"]),A(["font","Javanese Text","Java"]),A(["font","Segoe UI","Lisu"]),A(["font","Myanmar Text","Mymr"]),A(["font","Ebrima","Nkoo"]),A(["font","Nirmala UI","Olck"]),A(["font","Ebrima","Osma"]),A(["font","Phagspa","Phag"]),A(["font","Estrangelo Edessa","Syrn"]),A(["font","Estrangelo Edessa","Syrj"]),A(["font","Estrangelo Edessa","Syre"]),A(["font","Nirmala UI","Sora"]),A(["font","Microsoft Tai Le","Tale"]),A(["font","Microsoft New Tai Lue","Talu"]),A(["font","Ebrima","Tfng"])]},{name:"a:minorFont",children:[A(["latin","Calibri",void 0,"020F0502020204030204"]),A(["ea",""]),A(["cs",""]),A(["font","游ã´ã·ãã¯","Jpan"]),A(["font","ë§ì ê³ ë","Hang"]),A(["font","ç线","Hans"]),A(["font","æ°ç´°æé«","Hant"]),A(["font","Arial","Arab"]),A(["font","Arial","Hebr"]),A(["font","Tahoma","Thai"]),A(["font","Nyala","Ethi"]),A(["font","Vrinda","Beng"]),A(["font","Shruti","Gujr"]),A(["font","DaunPenh","Khmr"]),A(["font","Tunga","Knda"]),A(["font","Raavi","Guru"]),A(["font","Euphemia","Cans"]),A(["font","Plantagenet Cherokee","Cher"]),A(["font","Microsoft Yi Baiti","Yiii"]),A(["font","Microsoft Himalaya","Tibt"]),A(["font","MV Boli","Thaa"]),A(["font","Mangal","Deva"]),A(["font","Gautami","Telu"]),A(["font","Latha","Taml"]),A(["font","Estrangelo Edessa","Syrc"]),A(["font","Kalinga","Orya"]),A(["font","Kartika","Mlym"]),A(["font","DokChampa","Laoo"]),A(["font","Iskoola Pota","Sinh"]),A(["font","Mongolian Baiti","Mong"]),A(["font","Arial","Viet"]),A(["font","Microsoft Uighur","Uigh"]),A(["font","Sylfaen","Geor"]),A(["font","Arial","Armn"]),A(["font","Leelawadee UI","Bugi"]),A(["font","Microsoft JhengHei","Bopo"]),A(["font","Javanese Text","Java"]),A(["font","Segoe UI","Lisu"]),A(["font","Myanmar Text","Mymr"]),A(["font","Ebrima","Nkoo"]),A(["font","Nirmala UI","Olck"]),A(["font","Ebrima","Osma"]),A(["font","Phagspa","Phag"]),A(["font","Estrangelo Edessa","Syrn"]),A(["font","Estrangelo Edessa","Syrj"]),A(["font","Estrangelo Edessa","Syre"]),A(["font","Nirmala UI","Sora"]),A(["font","Microsoft Tai Le","Tale"]),A(["font","Microsoft New Tai Lue","Talu"]),A(["font","Ebrima","Tfng"])]}]}}},lE=nE,St=(e,t,s)=>({name:`a:${e}`,properties:{rawMap:{val:t}},children:s}),Yo=e=>{const[t,s,i,o,r,n]=e,l=[];return l.push(St("satMod",i)),o&&l.push(St("lumMod",o)),r&&l.push(St("tint",r)),n&&l.push(St("shade",n)),{name:"a:gs",properties:{rawMap:{pos:t}},children:[{name:"a:schemeClr",properties:{rawMap:{val:s}},children:l}]}},ao=(e,t)=>({name:"a:solidFill",children:[St("schemeClr",e,t)]}),Mr=e=>{const[t,s,i,o,r]=e,[n,l]=r;return{name:"a:gradFill",properties:{rawMap:{rotWithShape:t}},children:[{name:"a:gsLst",children:[Yo(s),Yo(i),Yo(o)]},{name:"a:lin",properties:{rawMap:{ang:n,scaled:l}}}]}},Qo=e=>{const[t,s,i,o]=e;return{name:"a:ln",properties:{rawMap:{w:t,cap:s,cmpd:i,algn:o}},children:[ao("phClr"),St("prstDash","solid"),{name:"a:miter",properties:{rawMap:{lim:"800000"}}}]}},Xo=e=>{const t=[];if(e){const[s,i,o,r,n]=e;t.push({name:"a:outerShdw",properties:{rawMap:{blurRad:s,dist:i,dir:o,algn:r,rotWithShape:n}},children:[St("srgbClr","000000",[St("alpha","63000")])]})}return{name:"a:effectStyle",children:[Object.assign({},{name:"a:effectLst"},t.length?{children:t}:{})]}},aE=()=>({name:"a:fillStyleLst",children:[ao("phClr"),Mr(["1",["0","phClr","105000","110000","67000"],["50000","phClr","103000","105000","73000"],["100000","phClr","109000","105000","81000"],["5400000","0"]]),Mr(["1",["0","phClr","103000","102000","94000"],["50000","phClr","110000","100000",void 0,"100000"],["100000","phClr","120000","99000",void 0,"78000"],["5400000","0"]])]}),dE=()=>({name:"a:lnStyleLst",children:[Qo(["6350","flat","sng","ctr"]),Qo(["12700","flat","sng","ctr"]),Qo(["19050","flat","sng","ctr"])]}),cE=()=>({name:"a:effectStyleLst",children:[Xo(),Xo(),Xo(["57150","19050","5400000","ctr","0"])]}),uE=()=>({name:"a:bgFillStyleLst",children:[ao("phClr"),ao("phClr",[St("tint","95000"),St("satMod","170000")]),Mr(["1",["0","phClr","150000","102000","93000","98000"],["50000","phClr","130000","103000","98000","90000"],["100000","phClr","120000",void 0,void 0,"63000"],["5400000","0"]])]}),hE={getTemplate(){return{name:"a:fmtScheme",properties:{rawMap:{name:"Office"}},children:[aE(),dE(),cE(),uE()]}}},pE=hE,gE={getTemplate(){return{name:"a:themeElements",children:[rE.getTemplate(),lE.getTemplate(),pE.getTemplate()]}}},fE=gE,mE={getTemplate(){return{name:"a:theme",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{a:"http://schemas.openxmlformats.org/drawingml/2006/main"}}],rawMap:{name:"Office Theme"}},children:[fE.getTemplate(),{name:"a:objectDefaults"},{name:"a:extraClrSchemeLst"}]}}},CE=mE,vE=()=>({name:"o:shapelayout",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}]},children:[{name:"o:idmap",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:{data:"1"}}}]}),SE=()=>({name:"v:stroke",properties:{rawMap:{joinstyle:"miter"}}}),wE=e=>({name:"v:formulas",children:e.map(t=>({name:"v:f",properties:{rawMap:{eqn:t}}}))}),yE=()=>({name:"v:path",properties:{prefixedAttributes:[{prefix:"o:",map:{connecttype:"rect",extrusionok:"f"}}],rawMap:{gradientshapeok:"t"}}}),Nc=e=>{const{aspectratio:t,rotation:s}=e||{},i={};return t&&(i.aspectratio="t"),s&&(i.rotation="t"),{name:"o:lock",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:i}}};function RE(e,t,s,i,o){return(e-t)/(s-t)*(o-i)+i}var bE=(e,t)=>{let s;const{recolor:i,brightness:o,contrast:r,id:n}=e;if(i&&(s={},(i==="Washout"||i==="Grayscale")&&(s.gain="19661f",s.blacklevel="22938f"),(i==="Black & White"||i==="Grayscale")&&(s.grayscale="t",i==="Black & White"&&(s.bilevel="t"))),!i||i==="Grayscale"){if(s||(s={}),r!=null&&r!==50){let l="1";r>=0&&(r<50?l=String(r/50):r<100?l=String(50/(100-r)):r===100&&(l="2147483647f")),s.gain=l}o!=null&&o!==50&&(s.blacklevel=RE(o,0,100,-.5,.5).toString())}return{name:"v:imagedata",properties:{prefixedAttributes:[{prefix:"o:",map:{relid:`rId${t}`,title:n}}],rawMap:s}}},FE=()=>{const e=["if lineDrawn pixelLineWidth 0","sum @0 1 0","sum 0 0 @1","prod @2 1 2","prod @3 21600 pixelWidth","prod @3 21600 pixelHeight","sum @0 0 1","prod @6 1 2","prod @7 21600 pixelWidth","sum @8 21600 0","prod @7 21600 pixelHeight","sum @10 21600 0"];return{name:"v:shapetype",properties:{prefixedAttributes:[{prefix:"o:",map:{spt:"75",preferrelative:"t"}}],rawMap:{coordsize:"21600,21600",filled:"f",id:"_x0000_t75",path:"m@4@5l@4@11@9@11@9@5xe",stroked:"f"}},children:[SE(),wE(e),yE(),Nc({aspectratio:!0})]}},Hl=e=>Math.floor((e??0)*.74999943307122),PE=(e,t)=>{const{width:s=0,height:i=0,altText:o}=e,r=Hl(s),n=Hl(i);return{name:"v:shape",properties:{rawMap:{id:e.headerFooterPosition,"o:spid":"_x0000_s1025",style:`position: absolute; margin-left: 0; margin-top: 10in; margin-bottom: 0; margin-right: 0; width: ${r}pt; height: ${n}pt; z-index: ${t+1}`,type:"#_x0000_t75",alt:o}},children:[bE(e,t+1),Nc({rotation:!0})]}},EE={getTemplate(e){const t=q.worksheetHeaderFooterImages.get(e.sheetIndex)||[],s=[vE(),FE(),...t.map((i,o)=>PE(i,o))];return{name:"xml",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{v:"urn:schemas-microsoft-com:vml",o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel"}}]},children:s}}},ME=EE,DE={getTemplate(e,t){const s=(t+1).toString();return{name:"sheet",properties:{rawMap:{name:e,sheetId:s,"r:id":`rId${s}`}}}}},xE=DE,AE={getTemplate(e){return{name:"sheets",children:e.map((t,s)=>xE.getTemplate(t,s))}}},TE=AE,IE={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}}}]},TE.getTemplate(e)]}}},LE=IE,GE=e=>Math.ceil((e-12)/7+1),kE={getTemplate(e){const{min:t,max:s,outlineLevel:i,s:o,width:r,hidden:n,bestFit:l}=e;let a=1,d="0";return r>1&&(a=GE(r),d="1"),{name:"col",properties:{rawMap:{min:t,max:s,outlineLevel:i??void 0,width:a,style:o,hidden:n?"1":"0",bestFit:l?"1":"0",customWidth:d}}}}},OE=kE,NE={getTemplate(e){return{name:"mergeCell",properties:{rawMap:{ref:e}}}}},BE=NE,VE=e=>{const t=e.charAt(0).toLowerCase();return t==="s"?"inlineStr":t},HE={getTemplate(e,t,s){const{ref:i,data:o,styleId:r}=e,{type:n,value:l}=o||{type:"empty",value:null};let a=n;n==="f"?a="str":n.charAt(0)===n.charAt(0).toUpperCase()&&(a=VE(n));const d={name:"c",properties:{rawMap:{r:i,t:a==="empty"?void 0:a,s:r?JP(r,s):void 0}}};if(a==="empty")return d;let c;return a==="str"&&n==="f"?c=[{name:"f",textNode:Ce(Pr(l),!1)}]:a==="inlineStr"?c=[{name:"is",children:[{name:"t",textNode:Ce(Pr(l),!1)}]}]:c=[{name:"v",textNode:l}],Object.assign({},d,{children:c})}},WE=HE,zE=(e,t)=>{const s=[];let i=0;for(let o=0;o<e.length;o++){const r=e[o];r.mergeAcross&&(s.push({pos:o,excelPos:i}),i+=r.mergeAcross),i++}if(s.length)for(let o=s.length-1;o>=0;o--){const r=[],n=e[s[o].pos];for(let l=1;l<=n.mergeAcross;l++)r.push({ref:`${ks(s[o].excelPos+1+l)}${t+1}`,styleId:n.styleId,data:{type:"empty",value:null}});r.length&&e.splice(s[o].pos+1,0,...r)}},UE=e=>{var t;return((t=e.data)==null?void 0:t.value)!==""||e.styleId!==void 0}
261,_E={getTemplate(e,t,s){const{collapsed:i,hidden:o,height:r,outlineLevel:n,cells:l=[]}=e;zE(l,t);const a=l.filter(UE).map((d,c)=>WE.getTemplate(d,c,s));return{name:"row",properties:{rawMap:{r:t+1,collapsed:i?"1":"0",hidden:o?"1":"0",ht:r,customHeight:r!=null?"1":"0",spans:"1:1",outlineLevel:n||void 0}},children:a}}},KE=_E,$E=(e,t,s)=>{const i=[],o=[];e.forEach((l,a)=>{const d=l.cells;let c=0,u;d.forEach((h,p)=>{const g=p+c+1,f=ks(g),m=a+1;if(h.mergeAcross){c+=h.mergeAcross;const y=ks(p+c+1);i.push(`${f}${m}:${y}${m}`)}t[g-1]||(t[g-1]={});const{collapsibleRanges:v}=h;v&&v.forEach(y=>{o.push([g+y[0],g+y[1]])}),u=t[g-1],u.min=g,u.max=g,h.ref=`${f}${m}`})}),o.sort((l,a)=>l[0]!==a[0]?l[0]-a[0]:a[1]-l[1]);const r=new Map,n=new Map;return o.filter(l=>{const a=l.toString();return r.get(a)?!1:(r.set(a,!0),!0)}).forEach(l=>{const a=t.find(c=>c.min==l[0]&&c.max==l[1]),d=n.get(l[0]);t.push({min:l[0],max:l[1],outlineLevel:s?void 0:d||1,width:(a||{width:100}).width}),n.set(l[0],(d||0)+1)}),i},jE=e=>!e||e!=="Portrait"&&e!=="Landscape"?"portrait":e.toLocaleLowerCase(),qE=e=>{if(e==null)return 1;const s=["Letter","Letter Small","Tabloid","Ledger","Legal","Statement","Executive","A3","A4","A4 Small","A5","A6","B4","B5","Folio","Envelope","Envelope DL","Envelope C5","Envelope B5","Envelope C3","Envelope C4","Envelope C6","Envelope Monarch","Japanese Postcard","Japanese Double Postcard"].indexOf(e);return s===-1?1:s+1},YE=e=>(Pe({"&[Page]":"&P","&[Pages]":"&N","&[Date]":"&D","&[Time]":"&T","&[Tab]":"&A","&[Path]":"&Z","&[File]":"&F","&[Picture]":"&G"},(s,i)=>{e=e.replace(s,i)}),e),QE=e=>e==="Center"?"C":e==="Right"?"R":"L",XE=(e,t)=>(t&&(e+="&"",e+=t.fontName||"Calibri",t.bold!==t.italic?e+=t.bold?",Bold":",Italic":t.bold?e+=",Bold Italic":e+=",Regular",e+=""",t.size&&(e+=`&${t.size}`),t.strikeThrough&&(e+="&S"),t.underline&&(e+=`&${t.underline==="Double"?"E":"U"}`),t.color&&(e+=`&K${t.color.replace("#","").toUpperCase()}`)),e),ZE=(e,t,s)=>e.reduce((i,o,r)=>{const n=QE(o.position),l=XE(`${i}&${n}`,o.font),a=["Left","Center","Right"];o.position||(o.position=a[r]);const{image:d}=o;if(o.value==="&[Picture]"&&d){const c=`${n}${t}${s}`;q.addHeaderFooterImageToMap(d,c)}return`${l}${Ce(YE(o.value))}`},""),JE=e=>{const t=["all","first","even"],s=[];return t.forEach(i=>{const o=e[i],r=i==="all"?"odd":i;if(o)for(const[n,l]of Object.entries(o)){const a=`${n.charAt(0).toUpperCase()}${n.slice(1)}`,d=n[0].toUpperCase();if(l){const c=i==="all"?"":i.toUpperCase();s.push({name:`${r}${a}`,properties:{rawMap:{"xml:space":"preserve"}},textNode:ZE(l,d,c)})}}}),s},eM=e=>t=>(e.length&&t.children.push({name:"cols",children:e.map(s=>OE.getTemplate(s))}),t),tM=(e,t)=>s=>(e.length&&s.children.push({name:"sheetData",children:e.map((i,o)=>KE.getTemplate(i,o,t))}),s),sM=e=>t=>(e.length&&t.children.push({name:"mergeCells",properties:{rawMap:{count:e.length}},children:e.map(s=>BE.getTemplate(s))}),t),iM=e=>t=>{const{top:s=.75,right:i=.7,bottom:o=.75,left:r=.7,header:n=.3,footer:l=.3}=e;return t.children.push({name:"pageMargins",properties:{rawMap:{bottom:o,footer:l,header:n,left:r,right:i,top:s}}}),t},oM=e=>t=>(e&&t.children.push({name:"pageSetup",properties:{rawMap:{horizontalDpi:0,verticalDpi:0,orientation:jE(e.orientation),paperSize:qE(e.pageSize)}}}),t),rM=e=>t=>{if(!e)return t;const s=e.first!=null?1:0,i=e.even!=null?1:0;return t.children.push({name:"headerFooter",properties:{rawMap:{differentFirst:s,differentOddEven:i}},children:JE(e)}),t},nM=e=>t=>(e&&t.children.push({name:"tableParts",properties:{rawMap:{count:"1"}},children:[{name:"tablePart",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}]}),t),lM=e=>t=>{const s=q.worksheetImages.get(e);return s!=null&&s.length&&t.children.push({name:"drawing",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t},aM=e=>t=>(q.worksheetHeaderFooterImages.get(e)&&t.children.push({name:"legacyDrawingHF",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),dM=(e=0,t=0)=>{const s=e>0||t>0;return s?[{name:"pane",properties:{rawMap:{state:s?"frozen":void 0,topLeftCell:s?`${ks(e+1)}${t+1}`:void 0,xSplit:e===0?void 0:e,ySplit:t===0?void 0:t}}}]:void 0},cM=(e=!1,t,s)=>i=>(i.children.push({name:"sheetViews",children:[{name:"sheetView",properties:{rawMap:{rightToLeft:e===!0?"1":"0",workbookViewId:"0"}}
261,children:dM(t,s)}]}),i),uM=()=>e=>(e.children.push({name:"sheetPr",children:[{name:"outlinePr",properties:{rawMap:{summaryBelow:0}}}]}),e),hM=e=>t=>{const s=e.reduce((i,o)=>o.outlineLevel&&o.outlineLevel>i?o.outlineLevel:i,0);return t.children.push({name:"sheetFormatPr",properties:{rawMap:{baseColWidth:10,defaultRowHeight:16,outlineLevelRow:s||void 0}}}),t},pM={getTemplate(e){const{worksheet:t,currentSheet:s,config:i}=e,{margins:o={},pageSetup:r,headerFooterConfig:n,suppressColumnOutline:l,rightToLeft:a,frozenRowCount:d,frozenColumnCount:c}=i,{table:u}=t,{rows:h,columns:p}=u,g=p&&p.length?$E(h,p,!!l):[],{worksheetDataTables:f}=q,m=f.get(s),v=ql(uM(),cM(a,c,d),hM(h),eM(p),tM(h,s+1),sM(g),iM(o),oM(r),rM(n),lM(s),aM(s),nM(m)),{children:y}=v({children:[],rIdCounter:0});return{name:"worksheet",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}}],rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},children:y}}},gM=pM,ft=class Bc{static createExcel(t,s,i){this.addSheetName(s),eE(t,this.sheetNames.length);const o=Object.assign({},i);return i.exportAsExcelTable&&(i.columnModel.isPivotActive()&&(this.showExcelTableNonCompatibleFeaturesWarning("pivot mode"),o.exportAsExcelTable=!1),i.gos.get("masterDetail")&&(this.showExcelTableNonCompatibleFeaturesWarning("master/detail"),o.exportAsExcelTable=!1)),this.processTableConfig(s,o),this.createWorksheet(s,o)}static showExcelTableNonCompatibleFeaturesWarning(t){R(`Excel table export does not work with ${t}. The exported Excel file will not contain any Excel tables. 262Please turn off ${t} to enable Excel table exports.`)}static getTableNameFromIndex(t){return`table${t+1}`}static getSanitizedTableName(t){return t.replace(/^[^a-zA-Z_]+/,"_").replace(/\s/g,"_").replace(/[^a-zA-Z0-9_]/g,"_")}static addTableToSheet(t,s){if(this.worksheetDataTables.has(t)){R("Unable to add data table to Excel sheet: A table already exists.");return}this.worksheetDataTables.set(t,s)}static processTableConfig(t,s){if(!s.exportAsExcelTable)return;const i=typeof s.exportAsExcelTable=="boolean"?{}:s.exportAsExcelTable,{name:o,showColumnStripes:r,showRowStripes:n,showFilterButton:l,highlightFirstColumn:a,highlightLastColumn:d}=i,c=this.getSanitizedTableName(o||Bc.defaultTableDisplayName),u=this.sheetNames.length-1,{table:h}=t,{rows:p,columns:g}=h,f=s.columnModel.getHeaderRowCount(),m=f-1,v=p.length,y=g.length,w=[],F=[];for(let D=0;D<y;D++){const M=g[D];w.push(M.displayName||""),F.push(l==="match"||l===void 0?M.filterAllowed??!1:l)}if(!w||!w.length||!v||!c){R("Unable to add data table to Excel sheet: Missing required parameters.");return}this.addTableToSheet(u,{name:this.getTableNameFromIndex(u),displayName:c,columns:w,showFilterButtons:F,headerRowIndex:m,rowCount:v-f,showRowStripes:n??!0,showColumnStripes:r??!1,highlightFirstColumn:a??!1,highlightLastColumn:d??!1})}static addHeaderFooterImageToMap(t,s){const i=this.sheetNames.length-1,o=t;o.headerFooterPosition=s,this.buildImageMap({imageToAdd:o,idx:i});let r=this.worksheetHeaderFooterImages.get(i);r||(r=[],this.worksheetHeaderFooterImages.set(i,r)),r.find(n=>n.id===t.id)||r.push(t)}static addBodyImageToMap(t,s,i,o,r){const n=this.sheetNames.length,{row:l,column:a}=t.position||{},d=t;o&&(s!=null&&i!=null&&(!l||!a)&&(t.position||(t.position={}),t.position=Object.assign({},t.position,{row:s,column:o.indexOf(i)+1})),BF(d,o),VF(d,r)),this.buildImageMap({imageToAdd:d,idx:n});let c=this.worksheetImageIds.get(n);c||(c=new Map,this.worksheetImageIds.set(n,c));const u=this.worksheetImages.get(n);u?u.push(d):this.worksheetImages.set(n,[d]),c.get(t.id)||c.set(t.id,{index:c.size,type:t.imageType})}static buildImageMap(t){const{imageToAdd:s,idx:i}=t,o=this.images.get(s.id);if(o){const r=o.find(n=>n.sheetId===i);r?r.image.push(s):o.push({sheetId:i,image:[s]})}else this.images.set(s.id,[{sheetId:i,image:[s]}]),this.workbookImageIds.set(s.id,{type:s.imageType,index:this.workbookImageIds.size})}static addSheetName(t){const s=Ce(t.name)||"";let i="";for(;this.sheetNames.indexOf(`${s}${i}`)!==-1;)i===""?i="_1":i=`_${parseInt(i.slice(1),10)+1}`;t.name=`${s}${i}`,this.sheetNames.push(t.name)}static getStringPosition(t){return this.sharedStrings.has(t)?this.sharedStrings.get(t):(this.sharedStrings.set(t,this.sharedStrings.size),this.sharedStrings.size-1)}static resetFactory(){this.sharedStrings=new Map,this.images=new Map,this.worksheetImages=new Map,this.worksheetHeaderFooterImages=new Map,this.workbookImageIds=new Map,this.worksheetImageIds=new Map,this.worksheetDataTables=new Map,this.sheetNames=[],this.factoryMo
262de=Ri.SINGLE_SHEET}static createWorkbook(t){return He(LE.getTemplate(this.sheetNames,t))}static createStylesheet(t){return He(tE.getTemplate(t))}static createSharedStrings(){return He(nP.getTemplate(this.sharedStrings))}static createCore(t){return He($F.getTemplate(t))}static createContentTypes(t){return He(_F.getTemplate(t))}static createRels(){const t=Ys.getTemplate([{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"xl/workbook.xml"},{Id:"rId2",Type:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",Target:"docProps/core.xml"}]);return He(t)}static createTheme(){return He(CE.getTemplate())}static createTable(t,s){return He(iE.getTemplate(t,s))}static createWorkbookRels(t){const s=new Array(t).fill(void 0).map((o,r)=>({Id:`rId${r+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${r+1}.xml`})),i=Ys.getTemplate([...s,{Id:`rId${t+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Target:"theme/theme1.xml"},{Id:`rId${t+2}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"},{Id:`rId${t+3}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"}]);return He(i)}static createDrawing(t){return He(tP.getTemplate({sheetIndex:t}))}static createDrawingRel(t){const s=this.worksheetImageIds.get(t)||[],i=[];for(const[o,r]of s){const{index:n,type:l}=r;i.push({Id:`rId${n+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${this.workbookImageIds.get(o).index+1}.${ro(l)}`})}return He(Ys.getTemplate(i))}static createVmlDrawing(t){return He(ME.getTemplate({sheetIndex:t}),!0)}static createVmlDrawingRel(t){const s=this.worksheetHeaderFooterImages.get(t)||[],i=[];for(let o=0;o<s.length;o++){const r=s[o],n=this.workbookImageIds.get(r.id);if(!n)continue;const{index:l,type:a}=n;i.push({Id:`rId${o+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${l+1}.${ro(a)}`})}return He(Ys.getTemplate(i))}static createRelationships({drawingIndex:t,vmlDrawingIndex:s,tableIndex:i}={}){if(t===void 0&&s===void 0&&i===void 0)return"";const o=[];t!=null&&o.push({Id:`rId${o.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/drawing${t+1}.xml`}),s!=null&&o.push({Id:`rId${o.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Target:`../drawings/vmlDrawing${s+1}.vml`}),i!=null&&o.push({Id:`rId${o.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table",Target:`../tables/${this.getTableNameFromIndex(i)}.xml`});const r=Ys.getTemplate(o);return He(r)}static createWorksheet(t,s){return He(gM.getTemplate({worksheet:t,currentSheet:this.sheetNames.length-1,config:s}))}};ft.sharedStrings=new Map;ft.sheetNames=[];ft.images=new Map;ft.worksheetImages=new Map;ft.worksheetHeaderFooterImages=new Map;ft.workbookImageIds=new Map;ft.worksheetImageIds=new Map;ft.worksheetDataTables=new Map;ft.defaultTableDisplayName="AG-GRID-TABLE";ft.factoryMode=Ri.SINGLE_SHEET;var q=ft,fM=class extends gc{constructor(e){super(e),this.mixedStyles={},this.mixedStyleCounter=0,this.rows=[],this.frozenRowCount=0,this.skipFrozenRows=!1,this.frozenColumnCount=0,this.skipFrozenColumns=!1,this.config=Object.assign({},e),this.stylesByIds={},this.config.baseExcelStyles.forEach(t=>{this.stylesByIds[t.id]=t}),this.excelStyles=[...this.config.baseExcelStyles,{id:"_quotePrefix",quotePrefix:1}]}addCustomContent(e){e.forEach(t=>{const s=this.rows.length+1;let i;!this.config.suppressRowOutline&&t.outlineLevel!=null&&(i=t.outlineLevel);const o={height:$i(s,t.height||this.config.rowHeight),cells:(t.cells||[]).map((r,n)=>{var h,p;const l=this.addImage(s,this.columnsToExport[n],(h=r.data)==null?void 0:h.value);let a=null;r.styleId&&(a=typeof r.styleId=="string"?[r.styleId]:r.styleId);const d=this.getStyleId(a);if(l)return this.createCell(d,this.getDataTypeForValue(l.value),l.value==null?"":l.value);const c=((p=r.data)==null?void 0:p.value)??"",u=this.getDataTypeForValue(c);return r.mergeAcross?this.createMergedCell(d,u,c,r.mergeAcross):this.createCell(d,u,c)}),outlineLevel:i};t.collapsed!=null&&(o.collapsed=t.collapsed),t.hidden!=null&&(o.hidden=t.hidden),this.rows.push(o)})}onNewHeaderGroupingRow(){const e=[],{freezeRows:t,headerRowHeight:s}=this.config;return this.rows.push({cells:e,height:$i(this.rows.length+1,s)}),t&&this.frozenRowCount++,{onColumn:(i,o,r,n,l)=>{const a=this.config.styleLinker({rowType:Ds.HEADER_GROUPING,rowIndex:1,value:`grouping-${o}`,columnGroup:i});e.push({...this.createMergedCell(this.getStyleId(a),this.getDataTypeForValue("string"),o,n),collapsibleRanges:l})}}}onNewHeaderRow(){const{freezeRows:e,headerRowHeight:t}=this.config;return e&&this.frozenRowCount++,this.onNewRow(this.onNewHeaderColumn,t)}onNewBodyRow(e){const{freezeRows:t,rowHeight:s}=this.config;this.skipFrozenRows||(t==="headersAndPinnedRows"&&(e==null?void 0:e.rowPinned)==="top"?this.frozenRowCount++:typeof t=="function"?t({...this.gos.getGridCommonParams(),node:e})?this.frozenRowCount++:this.skipFrozenRows=!0:this.skipFrozenRows=!0);const i=this.onNewRow(this.onNewBodyColumn,s);return e&&this.addRowOutlineIfNecessary(e),i}prepare(e){super.prepare(e),this.columnsToExport=[...e],this.cols=e.map((t,s)=>this.convertColumnToExcel(t,s))}parse(){const e=this.rows.reduce((o,r)=>Math.max(o,r.cells.length),0);for(;this.cols.length<e;)this.cols.push(this.convertColumnToExcel(null,this.cols.length+1));const{config:t}=this;let s;if(t.sheetName!=null){const{sheetName:o}=t,r=typeof o=="function"?o(this.gos.getGridCommonParams()):o;s=String(r).substring(0,31)}else s="ag-grid";const i={name:s,table:{columns:this.cols,rows:this.rows}};return this.createExcel(i)}addRowOutlineIfNecessary(e){const{gos:t,suppressRowOutline:s,rowGroupExpandState:i="expanded"}=this.config;if(t.get("groupHideOpenParents")||s||e.level==null)return;const r=e.footer?1:0,n=W(this.rows),l=Math.min(e.level+r,7);if(n.outlineLevel=l,i==="expanded")return;const a=i==="collapsed";if(e.isExpandable()){const d=!a&&e.expanded;n.collapsed=!d}n.hidden=!!e.parent&&e.parent.level!==-1&&(a||this.isAnyParentCollapsed(e.parent))}isAnyParentCollapsed(e){for(;e&&e.level!==-1;){if(!e.expanded)return!0;e=e.parent}return!1}convertColumnToExcel(e,t){const s=this.config.columnWidth,o=(e?this.extractHeaderValue(e):void 0)??"",r=e?e.isFilterAllowed():!1;return s?typeof s=="number"?{width:s,displayName:o,filterAllowed:r}:{width:s({column:e,index:t}),displayName:o,filterAllowed:r}:e?{width:Math.max(e.getActualWidth(),75),displayName:o,filterAllowed:r}:{displayName:o,filterAllowed:r}}onNewHeaderColumn(e,t){return s=>{const i=this.extractHeaderValue(s),o=this.config.styleLinker({rowType:Ds.HEADER,rowIndex:e,value:i,column:s});t.push(this.createCell(this.getStyleId(o),this.getDataTypeForValue("string"),i))}}onNewBodyColumn(e,t){let s=0;const{freezeColumns:i,rightToLeft:o}=this.config;return(r,n,l)=>{if(s>0){s-=1;return}if(!this.skipFrozenColumns){const g=r.getPinned();i==="pinned"&&g&&(g===!0||g==="left")!==o?this.frozenColumnCount++:typeof i=="function"&&i({...this.gos.getGridCommonParams(),column:r})?this.frozenColumnCount++:this.skipFrozenColumns=!0}const{value:a,valueFormatted:d}=this.extractRowCellValue(r,n,e,"excel",l),c=this.config.styleLinker({rowType:Ds.BODY,rowIndex:e,value:a,column:r,node:l}),u=this.getStyleId(c),h=r.getColSpan(l),p=this.addImage(e,r,a);p?t.push(this.createCell(u,this.getDataTypeForValue(p.value),p.value==null?"":p.value)):h>1?(s=h-1,t.push(this.createMergedCell(u,this.getDataTypeForValue(a),a,h-1))):t.push(this.createCell(u,this.getDataTypeForValue(a),a,d))}}onNewRow(e,t){const s=[];return this.rows.push({cells:s,height:$i(this.rows.length+1,t)}),{onColumn:e.bind(this,this.rows.length,s)()}}createExcel(e){const{excelStyles:t,config:s}=this;return this.frozenColumnCount&&(s.frozenColumnCount=this.frozenColumnCount),this.frozenRowCount&&(s.frozenRowCount=this.frozenRowCount),q.createExcel(t,e,s)}getDataTypeForValue(e){return e===void 0?"empty":this.isNumerical(e)?"n":"s"}getTypeFromStyle(e,t){if(this.isFormula(t))return"f";if(e&&e.dataType)switch(e.dataType.toLocaleLowerCase()){case"formula":return"f";case"string":return"s";case"number":return"n";case"datetime":return"d";case"error":return"e";case"boolean":return"b";default:R(`Unrecognized data type for excel export [${e.id}.dataType=${e.dataType}]`)}return null}
262addImage(e,t,s){if(!this.config.addImageToCell)return;const i=this.config.addImageToCell(e,t,s);if(i)return q.addBodyImageToMap(i.image,e,t,this.columnsToExport,this.config.rowHeight),i}createCell(e,t,s,i){const o=this.getStyleById(e);!(o!=null&&o.dataType)&&t==="s"&&i&&(s=i);const r=this.getTypeFromStyle(o,s)||t,{value:n,escaped:l}=this.getCellValue(r,s),a=[];return o&&a.push(e),l&&a.push("_quotePrefix"),e=this.getStyleId(a)||void 0,{styleId:e,data:{type:r,value:n}}}createMergedCell(e,t,s,i){const o=s??"";return{styleId:this.getStyleById(e)?e:void 0,data:{type:t,value:t==="s"?q.getStringPosition(o).toString():s},mergeAcross:i}}getCellValue(e,t){let s=!1;if(t==null||e==="s"&&t==="")return{value:"",escaped:!1};if(e==="s")t&&t[0]==="'"&&(s=!0,t=t.slice(1)),t=q.getStringPosition(t).toString();else if(e==="f")t=t.slice(1);else if(e==="n"){const i=Number(t);isNaN(i)?t="":t!==""&&(t=i.toString())}return{value:t,escaped:s}}getStyleId(e){if(!e||!e.length)return null;if(e.length===1)return e[0];const t=e.join("-");return this.mixedStyles[t]||this.addNewMixedStyle(e),this.mixedStyles[t].excelID}deepCloneObject(e){return JSON.parse(JSON.stringify(e))}addNewMixedStyle(e){this.mixedStyleCounter+=1;const t=`mixedStyle${this.mixedStyleCounter}`,s={};for(const o of e)for(const r of this.excelStyles)r.id===o&&Ee(s,this.deepCloneObject(r));s.id=t,s.name=t;const i=e.join("-");this.mixedStyles[i]={excelID:t,key:i,result:s},this.excelStyles.push(s),this.stylesByIds[t]=s}isFormula(e){return e==null?!1:this.config.autoConvertFormulas&&e.toString().startsWith("=")}isNumerical(e){return typeof e=="bigint"?!0:isFinite(e)&&e!==""&&!isNaN(parseFloat(e))}getStyleById(e){return e==null?null:this.stylesByIds[e]||null}},mM=()=>{me.addFolders(["_rels/","docProps/","xl/","xl/theme/","xl/_rels/","xl/worksheets/"]);const{images:e}=q;if(!e.size)return;me.addFolders(["xl/worksheets/_rels","xl/drawings/","xl/drawings/_rels","xl/media/"]);let t=0;e.forEach(s=>{const i=s[0].image[0],{base64:o,imageType:r}=i;me.addFile(`xl/media/image${++t}.${ro(r)}`,o,!0)})},CM=e=>{let t=0,s=0,i=0;const{images:o,worksheetDataTables:r,worksheetImages:n,worksheetHeaderFooterImages:l}=q;for(let a=0;a<e.length;a++){const d=e[a];me.addFile(`xl/worksheets/sheet${a+1}.xml`,d,!1);const c=o.size>0&&n.has(a),u=r.size>0&&r.has(a),h=o.size&&l.has(a);if(!c&&!u&&!h)continue;let p,g,f;c&&(vM(a,t),g=t,t++),h&&(SM(a,s),f=s,s++),u&&(p=i++);const m=`xl/worksheets/_rels/sheet${a+1}.xml.rels`;me.addFile(m,q.createRelationships({tableIndex:p,drawingIndex:g,vmlDrawingIndex:f}))}},vM=(e,t)=>{const s="xl/drawings",i=`${s}/drawing${t+1}.xml`,o=`${s}/_rels/drawing${t+1}.xml.rels`;me.addFile(o,q.createDrawingRel(e)),me.addFile(i,q.createDrawing(e))},SM=(e,t)=>{const s="xl/drawings",i=`${s}/vmlDrawing${t+1}.vml`,o=`${s}/_rels/vmlDrawing${t+1}.vml.rels`;me.addFile(i,q.createVmlDrawing(e)),me.addFile(o,q.createVmlDrawingRel(e))},wM=()=>{const{worksheetDataTables:e}=q,t=e,s=Array.from(t.keys());for(let i=0;i<s.length;i++){const o=s[i],r=t.get(o);r&&me.addFile(`xl/tables/${r.name}.xml`,q.createTable(r,i))}},yM=(e,t,s,i)=>{me.addFile("xl/workbook.xml",q.createWorkbook(i)),me.addFile("xl/styles.xml",q.createStylesheet(e)),me.addFile("xl/sharedStrings.xml",q.createSharedStrings()),me.addFile("xl/theme/theme1.xml",q.createTheme()),me.addFile("xl/_rels/workbook.xml.rels",q.createWorkbookRels(s)),me.addFile("docProps/core.xml",q.createCore(t)),me.addFile("[Content_Types].xml",q.createContentTypes(s)),me.addFile("_rels/.rels",q.createRels())},Vc=(e,t={})=>{if(!e||e.length===0)return R("Invalid params supplied to createExcelFileForExcel() - `ExcelExportParams.data` is empty."),q.resetFactory(),!1;const{fontSize:s=11,author:i="AG Grid",activeTab:o=0}=t,r=e.length,n=Math.max(Math.min(o,r-1),0);return mM(),wM(),CM(e),yM(s,i,r,n),q.resetFactory(),!0},Hc=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:o}=e,r=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";return Vc(t,{author:i,fontSize:s,activeTab:o})?me.getZipFile(r):Promise.resolve(void 0)},Wl=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:o}=e,r=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";if(Vc(t,{author:i,fontSize:s,activeTab:o}))return me.getUncompressedZipFile(r)},RM=e=>{const{fileName:t="export.xlsx"}=e;Hc(e).then(s=>{if(s){const i=typeof t=="function"?t():t;vn.download(i,s)}})},bM=class extends pc{constructor(){super(...arguments),this.beanName="excelCreator"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.stylingService=e.stylingService,this.gridSerializer
262=e.gridSerializer,this.gos=e.gos}postConstruct(){this.setBeans({gridSerializer:this.gridSerializer,gos:this.gos})}getMergedParams(e){const t=this.gos.get("defaultExcelExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){R("Export cancelled. Export is not allowed as per your configuration.");return}const t=this.getMergedParams(e),i={data:[this.getData(t)],fontSize:t.fontSize,author:t.author,mimeType:t.mimeType};this.packageCompressedFile(i).then(o=>{if(o){const{fileName:r}=t,n=typeof r=="function"?r(this.gos.getGridCommonParams()):r;vn.download(this.getFileName(n),o)}})}exportDataAsExcel(e){this.export(e)}getDataAsExcel(e){const t=this.getMergedParams(e),i={data:[this.getData(t)],fontSize:t.fontSize,author:t.author,mimeType:t.mimeType};return this.packageFile(i)}setFactoryMode(e){q.factoryMode=e}getFactoryMode(){return q.factoryMode}getSheetDataForExcel(e){const t=this.getMergedParams(e);return this.getData(t)}getMultipleSheetsAsExcel(e){return Wl(e)}exportMultipleSheetsAsExcel(e){RM(e)}getDefaultFileExtension(){return"xlsx"}
262createSerializingSession(e){const{columnModel:t,columnNameService:s,funcColsService:i,valueService:o,gos:r}=this,n={...e,columnModel:t,columnNameService:s,funcColsService:i,valueService:o,gos:r,suppressRowOutline:e.suppressRowOutline||e.skipRowGroups,headerRowHeight:e.headerRowHeight||e.rowHeight,baseExcelStyles:this.gos.get("excelStyles")||[],rightToLeft:e.rightToLeft??this.gos.get("enableRtl"),styleLinker:this.styleLinker.bind(this)};return new fM(n)}styleLinker(e){const{rowType:t,rowIndex:s,value:i,column:o,columnGroup:r,node:n}=e,l=t===Ds.HEADER,a=t===Ds.HEADER_GROUPING,d=l?o:r;let c=[];if(l||a)return c.push("header"),a&&c.push("headerGroup"),d&&(c=c.concat(on(d.getDefinition(),this.gos,o||null,r||null))),c;const u=this.gos.get("excelStyles"),h=["cell"];if(!u||!u.length)return h;const p=u.map(f=>f.id),g=o.getDefinition();return this.stylingService.processAllCellClasses(g,this.gos.addGridCommonParams({value:i,data:n.data,node:n,colDef:g,column:o,rowIndex:s}),f=>{p.indexOf(f)>-1&&h.push(f)}),h.sort((f,m)=>p.indexOf(f)<p.indexOf(m)?-1:1)}isExportSuppressed(){return this.gos.get("suppressExcelExport")}packageCompressedFile(e){return Hc(e)}packageFile(e){return Wl(e)}};function Wc(e){var t;return((t=e.excelCreator)==null?void 0:t.getFactoryMode())===Ri.MULTI_SHEET?(R("The Excel Exporter is currently on Multi Sheet mode. End that operation by calling 'api.getMultipleSheetAsExcel()' or 'api.exportMultipleSheetsAsExcel()'"),!1):!0}function FM(e,t){var s;if(Wc(e))return(s=e.excelCreator)==null?void 0:s.getDataAsExcel(t)}function PM(e,t){var s;Wc(e)&&((s=e.excelCreator)==null||s.exportDataAsExcel(t))}function EM(e,t){var s,i;return(s=e.excelCreator)==null||s.setFactoryMode(Ri.MULTI_SHEET),(i=e.excelCreator)==null?void 0:i.getSheetDataForExcel(t)}function MM(e,t){var s;return(s=e.excelCreator)==null?void 0:s.getMultipleSheetsAsExcel(t)}function DM(e,t){var s;(s=e.excelCreator)==null||s.exportMultipleSheetsAsExcel(t)}var xn="32.3.2",zc={version:xn,moduleName:`${U.ExcelExportModule}-core`,beans:[bM],dependantModules:[wn,ms]},xM={version:xn,moduleName:`${U.ExcelExportModule}-api`,apiFunctions:{getDataAsExcel:FM,exportDataAsExcel:PM,getSheetDataForExcel:EM,getMultipleSheetsAsExcel:MM,exportMultipleSheetsAsExcel:DM},dependantModules:[zc]},ZD={version:xn,moduleName:U.ExcelExportModule,dependantModules:[zc,xM]},AM=class Uc extends b{constructor(){super(...arguments),this.beanName="chartMenuItemMapper"}wireBeans(t){this.chartService=t.chartService}getChartItems(t){var n,l;if(!this.chartService){this.gos.assertModuleRegistered(U.GridChartsModule,`the Context Menu key "${t}"`);return}const s=t==="pivotChart"?new TM(this.gos,this.chartService,this.localeService):new IM(this.gos,this.chartService,this.localeService),i=this.chartService.isEnterprise();let o=s.getMenuItem();if(o&&o.subMenu&&!i){const a=d=>{var c;return{...d,subMenu:(c=d.subMenu)==null?void 0:c.filter(u=>!u._enterprise).map(u=>a(u))}};o=a(o)}const r=(l=(n=this.gos.get("chartToolPanelsDef"))==null?void 0:n.settingsPanel)==null?void 0:l.chartGroupsDef;return r&&(o=Uc.filterAndOrderChartMenu(o,r,s.getConfigLookup())),this.cleanInternals(o)}cleanInternals(t){if(!t)return t;const s=i=>{var o;return i==null||delete i._key,i==null||delete i._enterprise,(o=i==null?void 0:i.subMenu)==null||o.forEach(r=>s(r)),i};return s(t)}static buildLookup(t){const s={},i=o=>{s[o._key]=o,o.subMenu&&o.subMenu.forEach(r=>i(r))};return i(t),s}static filterAndOrderChartMenu(t,s,i){var n;const o=this.buildLookup(t),r={...t,subMenu:[]};if(Object.entries(s).forEach(([l,a])=>{var u,h;const d=i[l];if(d===null)return;if(d==null){R(`invalid chartGroupsDef config '${l}'`);return}const c=o[d._key];if(c)if(c.subMenu){const p=a.map(g=>{const f=d[g];if(f==null){R(`invalid chartGroupsDef config '${l}.${g}'`);return}return o[f]}).filter(g=>g!==void 0);p.length>0&&(c.subMenu=p,(u=r.subMenu)==null||u.push(c))}else(h=r.subMenu)==null||h.push(c)}),((n=r.subMenu)==null?void 0:n.length)!=0)return r}},TM=class{constructor(e,t,s){this.gos=e,this.chartService=t,this.localeService=s}getMenuItem(){const e=this.localeService.getLocaleTextFunc(),t=(s,i,o,r,n=!1)=>({name:e(s,i),action:()=>this.chartService.createPivotChart({chartType:o}),_key:r,_enterprise:n});return{name:e("pivotChart","Pivot Chart"),_key:"pivotChart",subMenu:[{_key:"pivotColumnChart",name:e("
262columnChart","Column"),subMenu:[t("groupedColumn","Grouped‎","groupedColumn","pivotGroupedColumn"),t("stackedColumn","Stacked‎","stackedColumn","pivotStackedColumn"),t("normalizedColumn","100% Stacked‎","normalizedColumn","pivotNormalizedColumn")]},{_key:"pivotBarChart",name:e("barChart","Bar"),subMenu:[t("groupedBar","Grouped‎","groupedBar","pivotGroupedBar"),t("stackedBar","Stacked‎","stackedBar","pivotStackedBar"),t("normalizedBar","100% Stacked‎","normalizedBar","pivotNormalizedBar")]},{_key:"pivotPieChart",name:e("pieChart","Pie"),subMenu:[t("pie","Pie‎","pie","pivotPie"),t("donut","Donut‎","donut","pivotDonut")]},t("line","Line‎","line","pivotLineChart"),{_key:"pivotXYChart",name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter‎","scatter","pivotScatter"),t("bubble","Bubble‎","bubble","pivotBubble")]},{_key:"pivotAreaChart",name:e("areaChart","Area"),subMenu:[t("area","Area‎","area","pivotArea"),t("stackedArea","Stacked‎","stackedArea","pivotStackedArea"),t("normalizedArea","100% Stacked‎","normalizedArea","pivotNormalizedArea")]},{_key:"pivotStatisticalChart",_enterprise:!1,name:e("statisticalChart","Statistical"),subMenu:[t("histogramChart","Histogram‎","histogram","pivotHistogram",!1)]},{_key:"pivotHierarchicalChart",_enterprise:!0,name:e("hierarchicalChart","Hierarchical"),subMenu:[t("treemapChart","Treemap‎","treemap","pivotTreemap",!0),t("sunburstChart","Sunburst‎","sunburst","pivotSunburst",!0)]},{_key:"pivotCombinationChart",name:e("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line‎","columnLineCombo","pivotColumnLineCombo"),t("AreaColumnCombo","Area & Column‎","areaColumnCombo","pivotAreaColumnCombo")]}],icon:N("chart",this.gos,void 0)}}getConfigLookup(){return{columnGroup:{_key:"pivotColumnChart",column:"pivotGroupedColumn",stackedColumn:"pivotStackedColumn",normalizedColumn:"pivotNormalizedColumn"},barGroup:{_key:"pivotBarChart",bar:"pivotGroupedBar",stackedBar:"pivotStackedBar",normalizedBar:"pivotNormalizedBar"},pieGroup:{_key:"pivotPieChart",pie:"pivotPie",donut:"pivotDonut",doughnut:"pivotDonut"},lineGroup:{_key:"pivotLineChart",line:"pivotLineChart"},scatterGroup:{_key:"pivotXYChart",bubble:"pivotBubble",scatter:"pivotScatter"},areaGroup:{_key:"pivotAreaChart",area:"pivotArea",stackedArea:"pivotStackedArea",normalizedArea:"pivotNormalizedArea"},combinationGroup:{_key:"pivotCombinationChart",columnLineCombo:"pivotColumnLineCombo",areaColumnCombo:"pivotAreaColumnCombo",customCombo:null},hierarchicalGroup:{_key:"pivotHierarchicalChart",treemap:"pivotTreemap",sunburst:"pivotSunburst"},statisticalGroup:{_key:"pivotStatisticalChart",histogram:"pivotHistogram",rangeBar:null,rangeArea:null,boxPlot:null},polarGroup:null,specializedGroup:null}}},IM=class{constructor(e,t,s){this.gos=e,this.chartService=t,this.localeService=s}getMenuItem(){const e=this.localeService.getLocaleTextFunc(),t=(s,i,o,r,n=!1)=>({name:e(s,i),action:()=>this.chartService.createChartFromCurrentRange(o),_key:r,_enterprise:n});return{name:e("chartRange","Chart Range"),_key:"chartRange",subMenu:[{name:e("columnChart","Column"),subMenu:[t("groupedColumn","Grouped‎","groupedColumn","rangeGroupedColumn"),t("stackedColumn","Stacked‎","stackedColumn","rangeStackedColumn"),t("normalizedColumn","100% Stacked‎","normalizedColumn","rangeNormalizedColumn")],_key:"rangeColumnChart"},{name:e("barChart","Bar"),subMenu:[t("groupedBar","Grouped‎","groupedBar","rangeGroupedBar"),t("stackedBar","Stacked‎","stackedBar","rangeStackedBar"),t("normalizedBar","100% Stacked‎","normalizedBar","rangeNormalizedBar")],_key:"rangeBarChart"},{name:e("pieChart","Pie"),subMenu:[t("pie","Pie‎","pie","rangePie"),t("donut","Donut‎","donut","rangeDonut")],_key:"rangePieChart"},t("line","Line‎","line","rangeLineChart"),{name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter‎","scatter","rangeScatter"),t("bubble","Bubble‎","bubble","rangeBubble")],_key:"rangeXYChart"},{name:e("areaChart","Area"),subMenu:[t("area","Area‎","area","rangeArea"),t("stackedArea","Stacked‎","stackedArea","rangeStackedArea"),t("normalizedArea","100% Stacked‎","normalizedArea","rangeNormalizedArea")],_key:"rangeAreaChart"},{name:e("polarChart","Polar"),subMenu:[t("radarLine","Radar Line‎","radarLine","rangeRadarLine"),t("radarArea","Radar Area‎","radarArea","rangeRadarArea"),t("nightingale","Nightingale‎","nightingale","rangeNightingale"),t("radialColumn","Radial Column‎","radialColumn","rangeRadialColumn"),t("radialBar","Radial Bar‎","radialBar","rangeRadialBar")],_key:"rangePolarChart",_enterprise:!0},{name:e("statisticalChart","Statistical"),subMenu:[t("boxPlot","Box Plot‎","boxPlot","rangeBoxPlot",!0),t("histogramChart","Histogram‎","histogram","rangeHistogram",!1),t("rangeBar","Range Bar‎","rangeBar","rangeRangeBar",!0),t("rangeArea","Range Area‎","rangeArea","rangeRangeArea",!0)],_key:"rangeStatisticalChart",_enterprise:!1},{name:e("hierarchicalChart","Hierarchical"),subMenu:[t("treemap","Treemap‎","treemap","rangeTreemap"),t("sunburst","Sunburst‎","sunburst","rangeSunburst")],_key:"rangeHierarchicalChart",_enterprise:!0},{name:e("specializedChart","Specialized"),subMenu:[t("heatmap","Heatmap‎","heatmap","rangeHeatmap"),t("waterfall","Waterfall‎","waterfall","rangeWaterfall")],_key:"rangeSpecializedChart",_enterprise:!0}
262,{name:e("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line‎","columnLineCombo","rangeColumnLineCombo"),t("AreaColumnCombo","Area & Column‎","areaColumnCombo","rangeAreaColumnCombo")],_key:"rangeCombinationChart"}],icon:N("chart",this.gos,void 0)}}getConfigLookup(){return{columnGroup:{_key:"rangeColumnChart",column:"rangeGroupedColumn",stackedColumn:"rangeStackedColumn",normalizedColumn:"rangeNormalizedColumn"},barGroup:{_key:"rangeBarChart",bar:"rangeGroupedBar",stackedBar:"rangeStackedBar",normalizedBar:"rangeNormalizedBar"},pieGroup:{_key:"rangePieChart",pie:"rangePie",donut:"rangeDonut",doughnut:"rangeDonut"},lineGroup:{_key:"rangeLineChart",line:"rangeLineChart"},scatterGroup:{_key:"rangeXYChart",bubble:"rangeBubble",scatter:"rangeScatter"},areaGroup:{_key:"rangeAreaChart",area:"rangeArea",stackedArea:"rangeStackedArea",normalizedArea:"rangeNormalizedArea"},polarGroup:{_key:"rangePolarChart",radarLine:"rangeRadarLine",radarArea:"rangeRadarArea",nightingale:"rangeNightingale",radialColumn:"rangeRadialColumn",radialBar:"rangeRadialBar"},statisticalGroup:{_key:"rangeStatisticalChart",boxPlot:"rangeBoxPlot",histogram:"rangeHistogram",rangeBar:"rangeRangeBar",rangeArea:"rangeRangeArea"},hierarchicalGroup:{_key:"rangeHierarchicalChart",treemap:"rangeTreemap",sunburst:"rangeSunburst"},specializedGroup:{_key:"rangeSpecializedChart",heatmap:"rangeHeatmap",waterfall:"rangeWaterfall"},combinationGroup:{_key:"rangeCombinationChart",columnLineCombo:"rangeColumnLineCombo",areaColumnCombo:"rangeAreaColumnCombo",customCombo:null}}}},LM=class extends b{constructor(){super(...arguments),this.beanName="columnChooserFactory"}wireBeans(e){this.focusService=e.focusService,this.menuUtils=e.menuUtils,this.visibleColsService=e.visibleColsService}createColumnSelectPanel(e,t,s,i){const o=e.createManagedBean(new Tc),r=i??(t==null?void 0:t.getColDef().columnChooserParams)??(t==null?void 0:t.getColDef().columnsMenuParams)??{},{contractColumnSelection:n,suppressColumnExpandAll:l,suppressColumnFilter:a,suppressColumnSelectAll:d,suppressSyncLayoutWithGrid:c,columnLayout:u}=r;return o.init(!!s,this.gos.addGridCommonParams({suppressColumnMove:!1,suppressValues:!1,suppressPivots:!1,suppressRowGroups:!1,suppressPivotMode:!1,contractColumnSelection:!!n,suppressColumnExpandAll:!!l,suppressColumnFilter:!!a,suppressColumnSelectAll:!!d,suppressSyncLayoutWithGrid:!!u||!!c,onStateUpdated:()=>{}}),"columnMenu"),u&&o.setColumnLayout(u),o}showColumnChooser({column:e,chooserParams:t,eventSource:s}){this.hideActiveColumnChooser();const i=this.createColumnSelectPanel(this,e,!0,t),o=this.localeService.getLocaleTextFunc(),r=this.visibleColsService.getAllCols().indexOf(e),n=e?this.focusService.getFocusedHeader():null;this.activeColumnChooserDialog=this.createBean(new iy({title:o("chooseColumns","Choose Columns"),component:i,width:300,height:300,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{var l;(l=this.focusService.findNextFocusableElement(i.getGui()))==null||l.focus({preventScroll:!0}),this.dispatchVisibleChangedEvent(!0,e)},closedCallback:l=>{const a=this.activeColumnChooser.getGui();this.destroyBean(this.activeColumnChooser),this.activeColumnChooser=void 0,this.activeColumnChooserDialog=void 0,this.dispatchVisibleChangedEvent(!1,e),e&&this.menuUtils.restoreFocusOnClose({column:e,headerPosition:n,columnIndex:r,eventSource:s},a,l,!0)},postProcessPopupParams:{type:"columnChooser",column:e,eventSource:s}})),this.activeColumnChooser=i}hideActiveColumnChooser(){this.activeColumnChooserDialog&&this.destroyBean(this.activeColumnChooserDialog)}dispatchVisibleChangedEvent(e,t){this.eventService.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:"columnChooser",column:t??null})}},ws="separator",GM=class extends b{constructor(){super(...arguments),this.beanName="columnMenuFactory"}wireBeans(e){this.menuItemMapper=e.menuItemMapper,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.menuService=e.menuService}createMenu(e,t,s,i){const o=e.createManagedBean(new Po(0,{column:s??null,node:null,value:null})),r=this.menuItemMapper.mapWithStockItems(t,s??null,i,"columnMenu");return o.addMenuItems(r),o}getMenuItems(e,t){const s=this.getDefaultMenuOptions(e);let i;const o=e==null?void 0:e.getColDef().mainMenuItems;if(Array.isArray(o))i=o;else if(typeof o=="function")i=o(this.gos.addGridCommonParams({column:e,defaultItems:s}));else{const r=this.gos.getCallback("getMainMenuItems");r&&e?i=r({column:e,defaultItems:s}):i=s}return uu(i,ws),i}getDefaultMenuOptions(e){const t=[],s=this.menuService.isLegacyMenuEnabled();
262if(!e)return s||t.push("columnChooser"),t.push("resetColumns"),t;const i=!e.getColDef().lockPinned,o=this.funcColsService.getRowGroupColumns().length,r=o>0,n=e.isAllowValue(),l=e.isAllowRowGroup(),a=e.isPrimary(),d=this.columnModel.isPivotMode(),c=re(this.gos),u=this.gos.get("treeData"),h=a&&r&&n||!a;if(!s&&e.isSortable()){const f=e.getSort();f!=="asc"&&t.push("sortAscending"),f!=="desc"&&t.push("sortDescending"),f&&t.push("sortUnSort"),t.push(ws)}return this.menuService.isFilterMenuItemEnabled(e)&&(t.push("columnFilter"),t.push(ws)),i&&t.push("pinSubMenu"),h&&t.push("valueAggSubMenu"),(i||h)&&t.push(ws),t.push("autoSizeThis"),t.push("autoSizeAll"),t.push(ws),e.getColDef().showRowGroup?t.push("rowUnGroup"):l&&e.isPrimary()&&(e.isRowGroupActive()?this.columnModel.isColGroupLocked(e)||t.push("rowUnGroup"):t.push("rowGroup")),t.push(ws),s||t.push("columnChooser"),t.push("resetColumns"),c&&(u||o>(d?1:0))&&(t.push("expandAll"),t.push("contractAll")),t}},kM="ag-menu",zl="ag-context-menu-open",OM=class extends b{constructor(){super(...arguments),this.beanName="contextMenuFactory"}wireBeans(e){this.popupService=e.popupService,this.ctrlsService=e.ctrlsService,this.columnModel=e.columnModel,this.menuUtils=e.menuUtils,this.rangeService=e.rangeService,this.focusService=e.focusService}hideActiveMenu(){this.destroyBean(this.activeMenu)}getMenuItems(e,t,s){const i=[];if(E(e)&&this.gos.isModuleRegistered(U.ClipboardModule)&&t&&(this.gos.get("suppressCutToClipboard")||i.push("cut"),i.push("copy","copyWithHeaders","copyWithGroupHeaders","paste","separator")),this.gos.get("enableCharts")&&this.gos.isModuleRegistered(U.GridChartsModule)&&(this.columnModel.isPivotMode()&&i.push("pivotChart"),this.rangeService&&!this.rangeService.isEmpty()&&i.push("chartRange")),E(e)){const l=!this.gos.isModuleRegistered(U.CsvExportModule),a=!this.gos.isModuleRegistered(U.ExcelExportModule),d=this.gos.get("suppressExcelExport")||a,c=this.gos.get("suppressCsvExport")||l;!Gt()&&(!d||!c)&&i.push("export")}const o=i.length?i:void 0,r=t==null?void 0:t.getColDef().contextMenuItems;if(Array.isArray(r))return r;if(typeof r=="function")return r(this.gos.addGridCommonParams({column:t,node:e,value:s,defaultItems:o}));const n=this.gos.getCallback("getContextMenuItems");return n?n({column:t,node:e,value:s,defaultItems:o}):i}onContextMenu(e,t,s,i,o,r){this.menuUtils.onContextMenu(e,t,n=>this.showMenu(s,i,o,n,r))}showMenu(e,t,s,i,o){const r=this.getMenuItems(e,t,s),n=this.ctrlsService.getGridBodyCtrl().getGui();if(r===void 0||Re(r))return!1;const l=new NM(r,t,e,s);this.createBean(l);const a=l.getGui();t||this.focusService.clearFocusedCell();const d={column:t,rowNode:e,type:"contextMenu",mouseEvent:i,ePopup:a,nudgeY:1},c=this.localeService.getLocaleTextFunc(),u=this.popupService.addPopup({modal:!0,eChild:a,closeOnEsc:!0,closedCallback:p=>{n.classList.remove(zl),this.destroyBean(l),this.dispatchVisibleChangedEvent(!1,p===void 0?"api":"ui")},click:i,positionCallback:()=>{const p=this.gos.get("enableRtl");this.popupService.positionPopupUnderMouseEvent({...d,nudgeX:p?(a.offsetWidth+1)*-1:1})},anchorToElement:o,ariaLabel:c("ariaLabelContextMenu","Context Menu")});u&&(n.classList.add(zl),l.afterGuiAttached({container:"contextMenu",hidePopup:u.hideFunc})),this.activeMenu&&this.hideActiveMenu(),this.activeMenu=l,l.addEventListener("destroyed",()=>{this.activeMenu===l&&(this.activeMenu=null)}),u&&l.addEventListener("closeMenu",p=>u.hideFunc({mouseEvent:p.mouseEvent??void 0,keyboardEvent:p.keyboardEvent??void 0,forceHide:!0}));const h=i&&i instanceof MouseEvent&&i.type==="mousedown";return this.dispatchVisibleChangedEvent(!0,h?"api":"ui"),!0}dispatchVisibleChangedEvent(e,t="ui"){this.eventService.dispatchEvent({type:"contextMenuVisibleChanged",visible:e,source:t})}},NM=class extends O{constructor(e,t,s,i){super(`<div class="${kM}" role="presentation"></div>`),this.menuItems=e,this.column=t,this.node=s,this.value=i,this.menuList=null,this.focusedCell=null}wireBeans(e){this.focusService=e.focusService,this.menuItemMapper=e.menuItemMapper,this.cellPositionUtils=e.cellPositionUtils}postConstruct(){const e=this.createManagedBean(new Po(0,{column:this.column,node:this.node,value:this.value})),t=this.menuItemMapper.mapWithStockItems(this.menuItems,null,()=>this.getGui(),"contextMenu");e.addMenuItems(t),this.appendChild(e),this.menuList=e,e.addEventListener("closeMenu",s=>this.dispatchLocalEvent(s))}afterGuiAttached(e){e.hidePopup&&this.addDestroyFunc(e.hidePopup),this.focusedCell=this.focusService.getFocusedCell(),this.menuList&&this.focusService.focusInto(this.menuList.getGui())}restoreFocusedCell(){const e=this.focusService.getFocusedCell();if(e&&this.focusedCell&&this.cellPositionUtils.equals(e,this.focusedCell)){const{rowIndex:t,rowPinned:s,column:i}=this.focusedCell;gi(this.gos)&&this.focusService.setFocusedCell({rowIndex:t,column:i,rowPinned:s,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!this.focusService.isKeyboardMode()})}}destroy(){this.restoreFocusedCell(),super.destroy()}},_t="filterMenuTab",Kt="generalMenuTab",Wt="columnsMenuTab",ji=[Kt,_t,Wt],BM=class extends b{constructor(){super(...arguments),this.beanName="enterpriseMenuFactory"}wireBeans(e){this.popupService=e.popupService,this.focusService=e.focusService,this.ctrlsService=e.ctrlsService,this.visibleColsService=e.visibleColsService,this.filterManager=e.filterManager,this.menuUtils=e.menuUtils,this.menuService=e.menuService,this.columnMenuFactory=e.columnMenuFactory}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenuAfterMouseEvent(e,t,s,i){const{column:o,columnGroup:r}=this.splitColumnOrGroup(e),n=i?"filterMenuTab":void 0;this.showMenu(o,r,l=>{var d;const a=l.getGui();this.popupService.positionPopupUnderMouseEvent({type:s,column:o,mouseEvent:t,ePopup:a}),n&&((d=l.showTab)==null||d.call(l,n)),this.dispatchVisibleChangedEvent(!0,!1,o,r,n)},s,n,void 0,t.target)}splitColumnOrGroup(e){const t=e&&bt(e);return{column:t?e:void 0,columnGroup:t?void 0:e}}showMenuAfterButtonClick(e,t,s,i){let o=-1,r="left";this.gos.get("enableRtl")&&(o=1,r="right");const n=i?"filterMenuTab":void 0,l=n?[n]:void 0,a=this.menuService.isLegacyMenuEnabled(),d=(a?9:4)*o,c=a?-23:4,{column:u,columnGroup:h}=this.splitColumnOrGroup(e);this.showMenu(u,h,p=>{var f;const g=p.getGui();this.popupService.positionPopupByComponent({type:s,column:u,eventSource:t,ePopup:g,alignSide:r,nudgeX:d,nudgeY:c,position:"under",keepWithinBounds:!0}),n&&((f=p.showTab)==null||f.call(p,n)),this.dispatchVisibleChangedEvent(!0,!1,u,h,n)},s,n,l,t)}showMenu(e,t,s,i,o,r,n){var g;const l=this.getMenuParams(e,t,r,n);if(!l)return;const{menu:a,eMenuGui:d,anchorToElement:c,restoreFocusParams:u}=l,h=[];h.push(f=>{const m=a.getGui();this.destroyBean(a),e&&(e.setMenuVisible(!1,"contextMenu"),this.menuUtils.restoreFocusOnClose(u,m,f))});const p=this.localeService.getLocaleTextFunc();
262if(this.popupService.addPopup({modal:!0,eChild:d,closeOnEsc:!0,closedCallback:f=>{h.forEach(m=>m(f)),this.dispatchVisibleChangedEvent(!1,!1,e,t,o)},afterGuiAttached:f=>a.afterGuiAttached(Object.assign({},{container:i},f)),positionCallback:o?()=>s(a):void 0,ariaLabel:p("ariaLabelColumnMenu","Column Menu")}),o||((g=a.showTabBasedOnPreviousSelection)==null||g.call(a),s(a)),this.menuService.isColumnMenuAnchoringEnabled()){const f=this.popupService.setPopupPositionRelatedToElement(d,c);f&&e&&this.addStopAnchoring(f,e,h)}a.addEventListener("tabSelected",f=>{this.dispatchVisibleChangedEvent(!1,!0,e),this.lastSelectedTab=f.key,this.dispatchVisibleChangedEvent(!0,!0,e)}),e==null||e.setMenuVisible(!0,"contextMenu"),this.activeMenu=a,a.addEventListener("destroyed",()=>{this.activeMenu===a&&(this.activeMenu=null)})}addStopAnchoring(e,t,s){e.then(i=>{t.addEventListener("leftChanged",i),t.addEventListener("visibleChanged",i),s.push(()=>{t.removeEventListener("leftChanged",i),t.removeEventListener("visibleChanged",i)})})}getMenuParams(e,t,s,i){const o={column:e,headerPosition:this.focusService.getFocusedHeader(),columnIndex:this.visibleColsService.getAllCols().indexOf(e),eventSource:i},r=this.createMenu(e,t,o,s,i);return r?{menu:r,eMenuGui:r.getGui(),anchorToElement:i||this.ctrlsService.getGridBodyCtrl().getGui(),restoreFocusParams:o}:void 0}createMenu(e,t,s,i,o){if(this.menuService.isLegacyMenuEnabled())return this.createBean(new VM(e,s,this.lastSelectedTab,i,o));{const r=this.columnMenuFactory.getMenuItems(e,t);return r.length?this.createBean(new HM(r,e,s,o)):void 0}}dispatchVisibleChangedEvent(e,t,s,i,o){this.eventService.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:t,key:this.lastSelectedTab??o??(this.menuService.isLegacyMenuEnabled()?Kt:"columnMenu"),column:s??null,columnGroup:i??null})}isMenuEnabled(e){var o;if(!this.menuService.isLegacyMenuEnabled())return!0;const t=!((o=this.filterManager)!=null&&o.isFilterAllowed(e)),s=e.getColDef().menuTabs??ji;return(t&&s.includes(_t)?s.length-1:s.length)>0}showMenuAfterContextMenuEvent(e,t,s){this.menuUtils.onContextMenu(t,s,i=>(this.showMenuAfterMouseEvent(e,i,"columnMenu"),!0))}},VM=class extends b{constructor(e,t,s,i,o){super(),this.column=e,this.restoreFocusParams=t,this.initialSelection=s,this.restrictTo=i,this.sourceElement=o,this.tabFactories={},this.includeChecks={},this.tabFactories[Kt]=this.createMainPanel.bind(this),this.tabFactories[_t]=this.createFilterPanel.bind(this),this.tabFactories[Wt]=this.createColumnsPanel.bind(this),this.includeChecks[Kt]=()=>!0,this.includeChecks[_t]=()=>{var r;return e?!!((r=this.filterManager)!=null&&r.isFilterAllowed(e)):!1},this.includeChecks[Wt]=()=>!0}wireBeans(e){this.filterManager=e.filterManager,this.columnChooserFactory=e.columnChooserFactory,this.columnMenuFactory=e.columnMenuFactory,this.menuUtils=e.menuUtils}postConstruct(){const e=this.getTabsToCreate().map(t=>this.createTab(t));this.tabbedLayout=new ly({items:e,cssClass:"ag-menu",onActiveItemClicked:this.onHidePopup.bind(this),onItemClicked:this.onTabItemClicked.bind(this)}),this.createBean(this.tabbedLayout),this.mainMenuList&&this.mainMenuList.setParentComponent(this.tabbedLayout),this.addDestroyFunc(()=>this.destroyBean(this.tabbedLayout))}getTabsToCreate(){var e;return this.restrictTo?this.restrictTo:(((e=this.column)==null?void 0:e.getColDef().menuTabs)??ji).filter(t=>this.isValidMenuTabItem(t)).filter(t=>this.isNotSuppressed(t)).filter(t=>this.isModuleLoaded(t))}isModuleLoaded(e){return e===Wt?this.gos.isModuleRegistered(U.ColumnsToolPanelModule):!0}isValidMenuTabItem(e){let t=!0,s=ji;return this.restrictTo!=null&&(t=this.restrictTo.indexOf(e)>-1,s=this.restrictTo),t=t&&ji.indexOf(e)>-1,t||R(`Trying to render an invalid menu item '${e}'. Check that your 'menuTabs' contains one of [${s}]`),t}isNotSuppressed(e){return this.includeChecks[e]()}createTab(e){return this.tabFactories[e]()}showTabBasedOnPreviousSelection(){this.showTab(this.initialSelection)}showTab(e){this.tabItemColumns&&e===Wt?this.tabbedLayout.showItem(this.tabItemColumns):this.tabItemFilter&&e===_t?this.tabbedLayout.showItem(this.tabItemFilter):this.tabItemGeneral&&e===Kt?this.tabbedLayout.showItem(this.tabItemGeneral):this.tabbedLayout.showFirstItem()}onTabItemClicked(e){let t=null;switch(e.item){case this.tabItemColumns:t=Wt;break;case this.tabItemFilter:t=_t;break;case this.tabItemGeneral:t=Kt;break}t&&this.activateTab(t)}activateTab(e){const t={type:"tabSelected",key:e};this.dispatchLocalEvent(t)}createMainPanel(){return this.mainMenuList=this.columnMenuFactory.createMenu(this,this.columnMenuFactory.getMenuItems(this.column),this.column,()=>this.sourceElement??this.getGui()),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.tabItemGeneral={title:N("menu",this.gos,this.column),titleLabel:Kt.replace("MenuTab",""),bodyPromise:K.resolve(this.mainMenuList.getGui()),name:Kt},this.tabItemGeneral}onHidePopup(e){this.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}createFilterPanel(){const e=this.column?this.createBean(new Zr(this.column,"COLUMN_MENU")):null;if(this.filterComp=e,!(e!=null&&e.hasFilter()))throw new Error("AG Grid -
262Unable to instantiate filter");const t=i=>e.afterGuiAttached(i),s=()=>e.afterGuiDetached();return this.tabItemFilter={title:N("filter",this.gos,this.column),titleLabel:_t.replace("MenuTab",""),bodyPromise:K.resolve(e==null?void 0:e.getGui()),afterAttachedCallback:t,afterDetachedCallback:s,name:_t},this.tabItemFilter}createColumnsPanel(){const e=document.createElement("div");e.classList.add("ag-menu-column-select-wrapper");const s=this.columnChooserFactory.createColumnSelectPanel(this,this.column).getGui();return s.classList.add("ag-menu-column-select"),e.appendChild(s),this.tabItemColumns={title:N("columns",this.gos,this.column),titleLabel:Wt.replace("MenuTab",""),bodyPromise:K.resolve(e),name:Wt},this.tabItemColumns}afterGuiAttached(e){const{container:t,hidePopup:s}=e;this.tabbedLayout.setAfterAttachedParams({container:t,hidePopup:s}),s&&(this.hidePopupFunc=s,this.addDestroyFunc(s))}getGui(){return this.tabbedLayout.getGui()}destroy(){super.destroy(),this.destroyBean(this.filterComp)}},HM=class extends O{constructor(e,t,s,i){super(` 263 <div data-ref="eColumnMenu" role="presentation" class="ag-menu ag-column-menu"></div> 264 `),this.menuItems=e,this.column=t,this.restoreFocusParams=s,this.sourceElement=i,this.eColumnMenu=P}wireBeans(e){this.columnMenuFactory=e.columnMenuFactory,this.menuUtils=e.menuUtils,this.focusService=e.focusService}postConstruct(){this.mainMenuList=this.columnMenuFactory.createMenu(this,this.menuItems,this.column,()=>this.sourceElement??this.getGui()),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eColumnMenu.appendChild(this.mainMenuList.getGui())}onHidePopup(e){this.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),this.focusService.focusInto(this.mainMenuList.getGui())}};function WM(e,t){const{rowNode:s,column:i,value:o,x:r,y:n}=t||{};let{x:l,y:a}=e.menuService.getContextMenuPosition(s,i);r!=null&&(l=r),n!=null&&(a=n),e.menuService.showContextMenu({mouseEvent:new MouseEvent("mousedown",{clientX:l,clientY:a}),rowNode:s,column:i,value:o})}function zM(e,t){e.menuService.showColumnChooser({chooserParams:t})}function UM(e){e.menuService.hideColumnChooser()}var _M=class extends b{constructor(){super(...arguments),this.beanName="menuItemMapper"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.columnApplyStateService=e.columnApplyStateService,this.funcColsService=e.funcColsService,this.focusService=e.focusService,this.rowPositionUtils=e.rowPositionUtils,this.chartMenuItemMapper=e.chartMenuItemMapper,this.menuService=e.menuService,this.sortController=e.sortController,this.columnAutosizeService=e.columnAutosizeService,this.expansionService=e.expansionService,this.clipboardService=e.clipboardService,this.aggFuncService=e.aggFuncService,this.csvCreator=e.csvCreator,this.excelCreator=e.excelCreator}mapWithStockItems(e,t,s,i){if(!e)return[];const o=[];return e.forEach(r=>{let n;if(typeof r=="string"?n=this.getStockMenuItem(r,t,s,i):n={...r},!n)return;const l=n,{subMenu:a}=l;a&&a instanceof Array&&(l.subMenu=this.mapWithStockItems(a,t,s,i)),n!=null&&o.push(n)}),o}getStockMenuItem(e,t,s,i){const o=this.localeService.getLocaleTextFunc(),r=this.gos.get("skipHeaderOnAutoSize");switch(e){case"pinSubMenu":return{name:o("pinColumn","Pin Column"),icon:N("menuPin",this.gos,null),subMenu:["clearPinned","pinLeft","pinRight"]};case"pinLeft":return{name:o("pinLeft","Pin Left"),action:()=>this.columnModel.setColsPinned([t],"left",i),checked:!!t&&t.isPinnedLeft()};case"pinRight":return{name:o("pinRight","Pin Right"),action:()=>this.columnModel.setColsPinned([t],"right",i),checked:!!t&&t.isPinnedRight()};case"clearPinned":return{name:o("noPin","No Pin"),action:()=>this.columnModel.setColsPinned([t],null,i),checked:!!t&&!t.isPinned()};case"valueAggSubMenu":return this.gos.assertModuleRegistered(U.RowGroupingModule,"Aggregation from Menu")?!(t!=null&&t.isPrimary())&&!(t!=null&&t.getColDef().pivotValueColumn)?null:{name:o("valueAggregation","Value Aggregation"),icon:N("menuValue",this.gos,null),subMenu:this.createAggregationSubMenu(t,this.aggFuncService),disabled:this.gos.get("functionsReadOnly")}:null;case"autoSizeThis":return{name:o("autosizeThisColumn","Autosize This Column"),action:()=>this.columnAutosizeService.autoSizeColumn(t,i,r)};case"autoSizeAll":return{name:o("autosizeAllColumns","Autosize All Columns"),action:()=>this.columnAutosizeService.autoSizeAllColumns(i,r)};case"rowGroup":return{name:o("groupBy","Group by")+" "+Ce(this.columnNameService.getDisplayNameForColumn(t,"header")),disabled:this.gos.get("functionsReadOnly")||(t==null?void 0:t.isRowGroupActive())||!(t!=null&&t.getColDef().enableRowGroup),action:()=>this.funcColsService.addRowGroupColumns([t],i),icon:N("menuAddRowGroup",this.gos,null)};case"rowUnGroup":{const n=N("menuRemoveRowGroup",this.gos,null),l=t==null?void 0:t.getColDef().showRowGroup,a=this.gos.get("groupLockGroupColumns");if(l===!0)return{name:o("ungroupAll","Un-Group All"),disabled:this.gos.get("functionsReadOnly")||a===-1||a>=this.funcColsService.getRowGroupColumns().length,action:()=>this.funcColsService.setRowGroupColumns(this.funcColsService.getRowGroupColumns().slice(0,a),i),icon:n};if(typeof l=="string"){const d=this.columnModel.getColDefCol(l),c=d!=null?Ce(this.columnNameService.getDisplayNameForColumn(d,"header")):l;return{name:o("ungroupBy","Un-Group by")+" "+c,disabled:this.gos.get("functionsReadOnly")||d!=null&&this.columnModel.isColGroupLocked(d),action:()=>this.funcColsService.removeRowGroupColumns([l],i),icon:n}}return{name:o("ungroupBy","Un-Group by")+" "+Ce(this.columnNameService.getDisplayNameForColumn(t,"header")),disabled:this.gos.get("functionsReadOnly")||!(t!=null&&t.isRowGroupActive())||!(t!=null&&t.getColDef().enableRowGroup)||this.columnModel.isColGroupLocked(t),action:()=>this.funcColsService.removeRowGroupColumns([t],i),icon:n}}case"resetColumns":return{name:o("resetColumns","Reset Columns"),action:()=>this.columnApplyStateService.resetColumnState(i)};case"expandAll":return{name:o("expandAll","Expand All Row Groups"),action:()=>this.expansionService.expandAll(!0)};case"contractAll":return{name:o("collapseAll","Collapse All Row Groups"),action:()=>this.expansionService.expandAll(!1)};case"copy":return this.gos.assertModuleRegistered(U.ClipboardModule,"Copy from Menu")?{name:o("copy","Copy"),shortcut:o("ctrlC","Ctrl+C"),icon:N("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard()}:null;case"copyWithHeaders":return this.gos.assertModuleRegistered(U.ClipboardModule,"Copy with Headers from Menu")?{name:o("copyWithHeaders","Copy with Headers"),icon:N("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard({includeHeaders:!0})}:null;case"copyWithGroupHeaders":return this.gos.assertModuleRegistered(U.ClipboardModule,"Copy with Group Headers from Menu")?{name:o("copyWithGroupHeaders","Copy with Group Headers"),icon:N("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard({includeHeaders:!0,includeGroupHeaders:!0})}:null;case"cut":if(this.gos.assertModuleRegistered(U.ClipboardModule,"Cut from Menu")){const n=this.focusService.getFocusedCell(),l=n?this.rowPositionUtils.getRowNode(n):null,a=l?n==null?void 0:n.column.isCellEditable(l):!1;return{name:o("cut","Cut"),shortcut:o("ctrlX","Ctrl+X"),icon:N("clipboardCut",this.gos,null),disabled:!a||this.gos.get("suppressCutToClipboard"),action:()=>this.clipboardService.cutToClipboard(void 0,"contextMenu")}}else return null;case"paste":return this.gos.assertModuleRegistered(U.ClipboardModule,"Paste from Clipboard")?{name:o("paste","Paste"),shortcut:o("ctrlV","Ctrl+V"),disabled:!0,icon:N("clipboardPaste",this.gos,null),action:()=>this.clipboardService.pasteFromClipboard()}:null;case"export":{const n=[],l=this.gos.isModuleRegistered(U.CsvExportModule),a=this.gos.isModuleRegistered(U.ExcelExportModule);return!this.gos.get("suppressCsvExport")&&l&&n.push("csvExport"),!this.gos.get("suppressExcelExport")&&a&&n.push("excelExport"),{name:o("export","Export"),subMenu:n,icon:N("save",this.gos,null)}}case"csvExport":return{name:o("csvExport","CSV Export"),icon:N("csv
264Export",this.gos,null),action:()=>{var n;return(n=this.csvCreator)==null?void 0:n.exportDataAsCsv()}};case"excelExport":return{name:o("excelExport","Excel Export"),icon:N("excelExport",this.gos,null),action:()=>{var n;return(n=this.excelCreator)==null?void 0:n.exportDataAsExcel()}};case"separator":return"separator";case"pivotChart":case"chartRange":return this.chartMenuItemMapper.getChartItems(e)??null;case"columnFilter":return t?{name:o("columnFilter","Column Filter"),icon:N("filter",this.gos,null),action:()=>this.menuService.showFilterMenu({column:t,buttonElement:s(),containerType:"columnFilter",positionBy:"button"})}:null;case"columnChooser":return this.gos.isModuleRegistered(U.ColumnsToolPanelModule)?{name:o("columnChooser","Choose Columns"),icon:N("columns",this.gos,null),action:()=>this.menuService.showColumnChooser({column:t,eventSource:s()})}:null;case"sortAscending":return{name:o("sortAscending","Sort Ascending"),icon:N("sortAscending",this.gos,null),action:()=>this.sortController.setSortForColumn(t,"asc",!1,i)};case"sortDescending":return{name:o("sortDescending","Sort Descending"),icon:N("sortDescending",this.gos,null),action:()=>this.sortController.setSortForColumn(t,"desc",!1,i)};case"sortUnSort":return{name:o("sortUnSort","Clear Sort"),icon:N("sortUnSort",this.gos,null),action:()=>this.sortController.setSortForColumn(t,null,!1,i)};default:return R(`unknown menu item type ${e}`),null}}createAggregationSubMenu(e,t){const s=this.localeService.getLocaleTextFunc();let i;if(e.isPrimary())i=e;else{const r=e.getColDef().pivotValueColumn;i=E(r)?r:void 0}const o=[];if(i){const r=i.isValueActive(),n=t.getFuncNames(i);o.push({name:s("noAggregation","None"),action:()=>{this.funcColsService.removeValueColumns([i],"contextMenu"),this.funcColsService.setColumnAggFunc(i,void 0,"contextMenu")},checked:!r}
264),n.forEach(l=>{o.push({name:s(l,t.getDefaultFuncLabel(l)),action:()=>{this.funcColsService.setColumnAggFunc(i,l,"contextMenu"),this.funcColsService.addValueColumns([i],"contextMenu")},checked:r&&i.getAggFunc()===l})})}return o}},KM=class extends b{constructor(){super(...arguments),this.beanName="menuUtils"}wireBeans(e){this.focusService=e.focusService,this.headerNavigationService=e.headerNavigationService,this.visibleColsService=e.visibleColsService}restoreFocusOnClose(e,t,s,i){const{eventSource:o}=e,r=s instanceof KeyboardEvent;if(!i&&!r||!o)return;const n=Q(this.gos);!t.contains(n)&&!gi(this.gos)||this.focusHeaderCell(e)}closePopupAndRestoreFocusOnSelect(e,t,s){let i;s&&s.keyboardEvent&&(i=s.keyboardEvent),e(i&&{keyboardEvent:i});const o=this.focusService.getFocusedCell();if(gi(this.gos))if(o){const{rowIndex:r,rowPinned:n,column:l}=o;this.focusService.setFocusedCell({rowIndex:r,column:l,rowPinned:n,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}else this.focusHeaderCell(t)}onContextMenu(e,t,s){if(!this.gos.get("allowContextMenuWithControlKey")&&e&&(e.ctrlKey||e.metaKey)||(e&&this.blockMiddleClickScrollsIfNeeded(e),this.gos.get("suppressContextMenu")))return;const i=e??t.touches[0];if(s(i)){const o=e??t;o&&o.cancelable&&o.preventDefault()}}async focusHeaderCell(e){const{column:t,columnIndex:s,headerPosition:i,eventSource:o}=e,r=await this.visibleColsService.getAllCols().some(n=>n===t);if(!(t&&!t.isAlive())){if(r&&o&&tt(o)){const n=this.focusService.findTabbableParent(o);n&&(t&&this.headerNavigationService.scrollToColumn(t),n.focus())}else if(i&&s!==-1){const n=this.visibleColsService.getAllCols(),l=n[s]||W(n);l&&this.focusService.focusHeaderPosition({headerPosition:{headerRowIndex:i.headerRowIndex,column:l}})}}}blockMiddleClickScrollsIfNeeded(e){this.gos.get("suppressMiddleClickScrolls")&&e.which===2&&e.preventDefault()}},An="32.3.2",_c={version:An,moduleName:`${U.MenuModule}-core`,beans:[BM,OM,_M,AM,LM,GM,KM],dependantModules:[ms],userComponents:[{name:"agMenuItem",classImp:fn}]},$M={version:An,moduleName:`${U.MenuModule}-api`,apiFunctions:{showContextMenu:WM,showColumnChooser:zM,hideColumnChooser:UM},dependantModules:[_c,Qd]},JD={version:An,moduleName:U.MenuModule,dependantModules:[_c,$M]},jM="ag-Grid-MissingKey",qM=class extends b{constructor(){super(...arguments),this.beanName="ssrmBlockUtils"}wireBeans(e){this.valueService=e.valueService,this.showRowGroupColsService=e.showRowGroupColsService,this.nodeManager=e.ssrmNodeManager,this.beans=e,this.expansionService=e.expansionService,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}createRowNode(e){const t=new qe(this.beans),s=e.rowHeight!=null?e.rowHeight:At(this.gos);return t.setRowHeight(s),t.group=e.group,t.leafGroup=e.leafGroup,t.level=e.level,t.uiLevel=e.level,t.parent=e.parent,t.stub=!0,t.__needsRefreshWhenVisible=!1,t.group&&(t.expanded=!1,t.field=e.field,t.rowGroupColumn=e.rowGroupColumn),t}destroyRowNodes(e){e&&e.forEach(t=>this.destroyRowNode(t))}destroyRowNode(e,t=!1){e.childStore&&!t&&(this.destroyBean(e.childStore),e.childStore=null),e.sibling&&!e.footer&&this.destroyRowNode(e.sibling,!1),e.clearRowTopAndRowIndex(),e.id!=null&&this.nodeManager.removeNode(e)}setTreeGroupInfo(e){e.updateHasChildren();const t=this.gos.get("getServerSideGroupKey");e.hasChildren()&&t!=null&&(e.key=t(e.data)),!e.hasChildren()&&e.childStore!=null&&(this.destroyBean(e.childStore),e.childStore=null,e.expanded=!1)}setRowGroupInfo(e){if(e.key=this.valueService.getValue(e.rowGroupColumn,e),(e.key===null||e.key===void 0)&&co(()=>{R("null and undefined values are not allowed for server side row model keys"),e.rowGroupColumn&&R(`column = ${e.rowGroupColumn.getId()}`),R("data is "+e.data)},"ServerSideBlock-CannotHaveNullOrUndefinedForKey"),this.gos.get("groupAllowUnbalanced")&&e.key===""){const o=this.serverSideRowModel.getParams();e.childStore=this.createBean(this.storeFactory.createStore(o,e))}As(this.beans.gos)({node:e})&&(e.createFooter(),e.sibling&&(e.sibling.uiLevel=e.uiLevel+1))}setMasterDetailInfo(e){const t=this.gos.get("isRowMaster");t!=null?e.master=t(e.data):e.master=!0}updateDataIntoRowNode(e,t){e.updateData(t),this.gos.get("treeData")?(this.setTreeGroupInfo(e),this.setChildCountIntoRowNode(e)):e.group?(this.setChildCountIntoRowNode(e),e.footer||(As(this.beans.gos)({node:e})?e.sibling?e.sibling.updateData(t):e.createFooter():e.sibling&&e.destroyFooter())):this.gos.get("masterDetail")}setDataIntoRowNode(e,t,s,i){var r;e.stub=!1;const o=this.gos.get("treeData");E(t)?(e.setDataAndId(t,s),o?this.setTreeGroupInfo(e):e.group?this.setRowGroupInfo(e):this.gos.get("masterDetail")&&this.setMasterDetailInfo(e)):(e.setDataAndId(void 0,void 0),e.key=null),(o||e.group)&&(this.setGroupDataIntoRowNode(e),this.setChildCountIntoRowNode(e)),E(t)&&(e.setRowHeight(Ge(this.gos,e,!1,i).height),(r=e.sibling)==null||r.setRowHeight(Ge(this.gos,e.sibling,!1,i).height))}setChildCountIntoRowNode(e){const t=this.gos.get("getChildCount");t&&e.setAllChildrenCount(t(e.data))}setGroupDataIntoRowNode(e){var i;const t=((i=this.showRowGroupColsService)==null?void 0:i.getShowRowGroupCols())??[],s=this.gos.get("treeData");t.forEach(o=>{if(e.groupData==null&&(e.groupData={}),s)e.groupData[o.getColId()]=e.key;else if(o.isRowGroupDisplayed(e.rowGroupColumn.getId())){const r=this.valueService.getValue(e.rowGroupColumn,e);e.groupData[o.getColId()]=r}})}clearDisplayIndex(e){e.clearRowTopAndRowIndex(),e.hasChildren()&&E(e.childStore)&&e.childStore.clearDisplayIndexes(),e.master&&e.detailNode&&e.detailNode.clearRowTopAndRowIndex()}setDisplayIndex(e,t,s,i){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.next()),e.setRowTop(s.value),s.value+=e.rowHeight),e.setUiLevel(i),e.footer)return;if(e.master&&(e.expanded&&e.detailNode?(e.detailNode.setRowIndex(t.next()),e.detailNode.setRowTop(s.value),s.value+=e.detailNode.rowHeight):e.detailNode&&e.detailNode.clearRowTopAndRowIndex()),e.hasChildren()&&E(e.childStore)){const a=e.childStore;e.expanded||o?a.setDisplayIndexes(t,s,o?i:i+1):a.clearDisplayIndexes()}}binarySearchForDisplayIndex(e,t){let s=0,i=t.length-1;if(z(i)||z(s)){R(`error: topPointer = ${i}, bottomPointer = ${s}`);return}for(;;){const o=Math.floor((s+i)/2),r=t[o];if(r.rowIndex===e)return r;const n=r.master&&r.expanded,l=r.detailNode;if(n&&l&&l.rowIndex===e)return r.detailNode;const a=r.childStore;if(r.expanded&&a&&a.isDisplayIndexInStore(e))return a.getRowUsingDisplayIndex(e);if(r.rowIndex<e)s=o+1;else if(r.rowIndex>e)i=o-1;else{R(`error: unable to locate rowIndex = ${e} in cache`);return}}}extractRowBounds(e,t){const s=i=>({rowHeight:i.rowHeight,rowTop:i.rowTop});if(e.rowIndex===t)return s(e);if(e.hasChildren()&&e.expanded&&E(e.childStore)){const i=e.childStore;if(i.isDisplayIndexInStore(t))return i.getRowBounds(t)}else if(e.master&&e.expanded&&E(e.detailNode)&&e.detailNode.rowIndex===t)return s(e.detailNode)}isPixelInNodeRange(e,t){return!E(e.rowTop)||!E(e.rowHeight)?!1:t>=e.rowTop&&t<e.rowTop+e.rowHeight}getIndexAtPixel(e,t){if(this.isPixelInNodeRange(e,t))return e.rowIndex;const s=e.master&&e.expanded,i=e.detailNode;if(s&&i&&this.isPixelInNodeRange(i,t))return e.detailNode.rowIndex;if(e.hasChildren()&&e.expanded&&E(e.childStore)){const o=e.childStore;if(o.isPixelInRange(t))return o.getRowIndexAtPixel(t)}return null}createNodeIdPrefix(e){const t=[];let s=e;for(;s&&s.level>=0;)s.key===""?t.push(jM):t.push(s.key),s=s.parent;if(t.length>0)return t.reverse().join("-")}checkOpenByDefault(e){return this.expansionService.checkOpenByDefault(e)}},YM=class extends b{constructor(){super(...arguments),this.beanName="ssrmExpandListener"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory,this.beans=e}postConstruct(){Ue(this.gos)&&this.addManagedEventListeners({rowGroupOpened:this.onRowGroupOpened.bind(this)})}onRowGroupOpened(e){const t=e.node;if(t.expanded){if(t.master)this.createDetailNode(t);else if(z(t.childStore)){const s=this.serverSideRowModel.getParams();t.childStore=this.createBean(this.storeFactory.createStore(s,t))}}else this.gos.get("purgeClosedRowNodes")&&E(t.childStore)&&(t.childStore=this.destroyBean(t.childStore));this.eventService.dispatchEvent({type:"storeUpdated"})}createDetailNode(e){if(E(e.detailNode))return e.detailNode;const t=new qe(this.beans);t.detail=!0,t.selectable=!1,t.parent=e,E(e.id)&&(t.id="detail_"+e.id),t.data=e.data,t.level=e.level+1;const s=200,i=Ge(this.gos,t).height;return t.rowHeight=i||s,e.detailNode=t,t}},QM=class extends b{constructor(){super(...arguments),this.beanName="ssrmFilterListener"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.filterManager=e.filterManager,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){Ue(this.gos)&&this.addManagedEventListeners({advancedFilterEnabledChanged:()=>this.onFilterChanged(!0),filterChanged:()=>this.onFilterChanged()})}onFilterChanged(e){var a,d;const t=this.serverSideRowModel.getParams();if(!t)return;const s=t.filterModel;let i,o;if((a=this.filterManager)!=null&&a.isAdvancedFilterEnabled()){i=this.filterManager.getAdvancedFilterModel();const c=e?Object.keys(s??{}):this.getAdvancedFilterColumns(s),u=this.getAdvancedFilterColumns(i);
264c.forEach(h=>u.add(h)),o=Array.from(u)}else if(i=((d=this.filterManager)==null?void 0:d.getFilterModel())??{},e){const c=this.getAdvancedFilterColumns(s);Object.keys(i).forEach(u=>c.add(u)),o=Array.from(c)}else o=this.findChangedColumns(s,i);const r=this.listenerUtils.isSortingWithValueColumn(o),n=this.listenerUtils.isSortingWithSecondaryColumn(o),l={valueColChanged:r,secondaryColChanged:n,changedColumns:o};this.serverSideRowModel.refreshAfterFilter(i,l)}findChangedColumns(e,t){const s={};Object.keys(e).forEach(o=>s[o]=!0),Object.keys(t).forEach(o=>s[o]=!0);const i=[];return Object.keys(s).forEach(o=>{const r=JSON.stringify(e[o]),n=JSON.stringify(t[o]);r!=n&&i.push(o)}),i}getAdvancedFilterColumns(e){const t=new Set;if(!e)return t;const s=i=>{i.filterType==="join"?i.conditions.forEach(o=>s(o)):t.add(i.colId)};return s(e),t}},XM=class extends b{constructor(){super(...arguments),this.beanName="ssrmListenerUtils"}wireBeans(e){this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService}isSortingWithValueColumn(e){const t=this.funcColsService.getValueColumns().map(s=>s.getColId());for(let s=0;s<e.length;s++)if(t.indexOf(e[s])>-1)return!0;return!1}isSortingWithSecondaryColumn(e){const t=this.pivotResultColsService.getPivotResultCols();if(!t)return!1;const s=t.list.map(i=>i.getColId());for(let i=0;i<e.length;i++)if(s.indexOf(e[i])>-1)return!0;return!1}},ZM=class extends b{constructor(){super(...arguments),this.beanName="ssrmSortService"}wireBeans(e){this.sortController=e.sortController,this.serverSideRowModel=e.rowModel,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){Ue(this.gos)&&this.addManagedEventListeners({sortChanged:this.onSortChanged.bind(this)})}onSortChanged(){const e=this.serverSideRowModel.getParams();if(!e)return;const t=this.sortController.getSortModel(),s=e.sortModel,i=this.findChangedColumnsInSort(t,s),o=this.listenerUtils.isSortingWithValueColumn(i),r=this.listenerUtils.isSortingWithSecondaryColumn(i),n={valueColChanged:o,secondaryColChanged:r,changedColumns:i};this.serverSideRowModel.refreshAfterSort(t,n)}findChangedColumnsInSort(e,t){let s=[];[e,t].forEach(r=>{if(r){const n=r.map(l=>l.colId);s=s.concat(n)}});const i=(r,n)=>{const l=r?r.sort:null,a=n?n.sort:null;return l!==a},o=(r,n)=>{const l=r?t.indexOf(r):-1,a=n?e.indexOf(n):-1;return l!==a};return s.filter(r=>{const n=t.find(a=>a.colId===r),l=e.find(a=>a.colId===r);return i(n,l)||o(n,l)})}},JM=class extends b{constructor(){super(...arguments),this.beanName="ssrmNodeManager",this.rowNodes={}}addRowNode(e){const t=e.id;this.rowNodes[t]&&(R(`Duplicate node id ${e.id}. Row IDs are provided via the getRowId() callback. Please modify the getRowId() callback code to provide unique row id values.`),R("first instance",this.rowNodes[t].data),R("second instance",e.data)),this.rowNodes[t]=e}removeNode(e){const t=e.id;this.rowNodes[t]&&(this.rowNodes[t]=void 0)}destroy(){this.clear(),super.destroy()}clear(){this.rowNodes={},super.destroy()}},Dr=class extends Tm{constructor(e,t,s){super(0),this.nodeIdSequence=new Ze,this.info={},this.ssrmParams=e,this.parentRowNode=s,this.level=s.level+1,this.groupLevel=e.rowGroupCols?this.level<e.rowGroupCols.length:void 0,this.leafGroup=e.rowGroupCols?this.level===e.rowGroupCols.length-1:!1}wireBeans(e){this.storeUtils=e.ssrmStoreUtils,this.blockUtils=e.ssrmBlockUtils,this.funcColsService=e.funcColsService,this.rowNodeBlockLoader=e.rowNodeBlockLoader,this.rowNodeSorter=e.rowNodeSorter,this.sortController=e.sortController,this.selectionService=e.selectionService,this.nodeManager=e.ssrmNodeManager,this.filterManager=e.filterManager,this.transactionManager=e.ssrmTransactionManager,this.serverSideRowModel=e.rowModel}postConstruct(){if(this.usingTreeData=this.gos.get("treeData"),this.nodeIdPrefix=this.blockUtils.createNodeIdPrefix(this.parentRowNode),!this.usingTreeData&&this.groupLevel){const i=this.ssrmParams.rowGroupCols[this.level];this.groupField=i.field,this.rowGroupColumn=this.funcColsService.getRowGroupColumns()[this.level]}let e=1;const t=this.parentRowNode.level===-1,s=this.storeUtils.getServerSideInitialRowCount();t&&s!=null&&(e=s),this.initialiseRowNodes(e),this.rowNodeBlockLoader.addBlock(this),this.addDestroyFunc(()=>this.rowNodeBlockLoader.removeBlock(this)),this.postSortFunc=this.gos.getCallback("postSortRows"),s!=null&&this.eventService.dispatchEventOnce({type:"rowCountReady"})}destroy(){this.destroyRowNodes(),super.destroy()}destroyRowNodes(){this.blockUtils.destroyRowNodes(this.allRowNodes),this.allRowNodes=[],this.nodesAfterSort=[],this.nodesAfterFilter=[],this.allNodesMap={}}initialiseRowNodes(e,t=!1){this.destroyRowNodes();for(let s=0;s<e;s++){const i=this.blockUtils.createRowNode({field:this.groupField,group:this.groupLevel,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn});t&&(i.failedLoad=!0),this.allRowNodes.push(i),this.nodesAfterFilter.push(i),this.nodesAfterSort.push(i)}}getBlockStateJson(){return{id:this.nodeIdPrefix?this.nodeIdPrefix:"",state:this.getState()}}loadFromDatasource(){this.storeUtils.loadFromDatasource({startRow:void 0,endRow:void 0,parentBlock:this,parentNode:this.parentRowNode,storeParams:this.ssrmParams,success:this.success.bind(this,this.getVersion()),fail:this.pageLoadFailed.bind(this,this.getVersion())})}getStartRow(){return 0}getEndRow(){return this.nodesAfterSort.length}createDataNode(e,t){const s=this.blockUtils.createRowNode({field:this.groupField,group:this.groupLevel,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn});t!=null?Ls(this.allRowNodes,s,t):this.allRowNodes.push(s);const i=this.prefixId(this.nodeIdSequence.next());return this.blockUtils.setDataIntoRowNode(s,e,i,void 0),this.nodeManager.addRowNode(s),this.blockUtils.checkOpenByDefault(s),this.allNodesMap[s.id]=s,s}prefixId(e){return this.nodeIdPrefix?this.nodeIdPrefix+"-"+e:e.toString()}processServerFail(){this.initialiseRowNodes(1,!0),this.fireStoreUpdatedEvent(),this.flushAsyncTransactions()}processServerResult(e){if(!this.isAlive())return;const t=e.groupLevelInfo;t&&Object.assign(this.info,t),e.pivotResultFields&&this.serverSideRowModel.generateSecondaryColumns(e.pivotResultFields);const s=this.allRowNodes.length>0?this.allNodesMap:void 0;this.allRowNodes=[],this.nodesAfterSort=[],this.nodesAfterFilter=[],this.allNodesMap={},e.rowData||R('"params.data" is missing from Server-Side Row Model success() callback. Please use the "data" attribute. If no data is returned, set an empty list.'),this.createOrRecycleNodes(s,e.rowData),s&&this.blockUtils.destroyRowNodes(jt(s)),this.level===0&&this.eventService.dispatchEventOnce({type:"rowCountReady"}),this.filterAndSortNodes(),this.fireStoreUpdatedEvent(),this.flushAsyncTransactions()}createOrRecycleNodes(e,t){if(!t)return;const s=o=>
264{if(!e)return;const r=Tt(this.gos);if(!r)return;const n=this.parentRowNode.getRoute()??[],l=this.level,a=r({data:o,parentKeys:n.length>0?n:void 0,level:l}),d=e[a];if(d)return delete e[a],d},i=(o,r)=>{this.allNodesMap[o.id]=o,this.blockUtils.updateDataIntoRowNode(o,r),this.allRowNodes.push(o)};t.forEach(o=>{const r=s(o);r?i(r,o):this.createDataNode(o)})}flushAsyncTransactions(){window.setTimeout(()=>this.transactionManager.flushAsyncTransactions(),0)}filterAndSortNodes(){this.filterRowNodes(),this.sortRowNodes()}sortRowNodes(){const e=this.storeUtils.isServerSideSortAllLevels()||this.storeUtils.isServerSideSortOnServer(),t=this.sortController.getSortOptions(),s=!t||t.length==0;if(e||s){this.nodesAfterSort=this.nodesAfterFilter;return}if(this.nodesAfterSort=this.rowNodeSorter.doFullSort(this.nodesAfterFilter,t),this.postSortFunc){const i={nodes:this.nodesAfterSort};this.postSortFunc(i)}}filterRowNodes(){const e=!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||this.storeUtils.isServerSideFilterOnServer(),t=this.groupLevel;if(e||t){this.nodesAfterFilter=this.allRowNodes;return}this.nodesAfterFilter=this.filterManager?this.allRowNodes.filter(s=>this.filterManager.doesRowPassFilter({rowNode:s})):this.allRowNodes}clearDisplayIndexes(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.allRowNodes.forEach(e=>this.blockUtils.clearDisplayIndex(e))}getDisplayIndexEnd(){return this.displayIndexEnd}isDisplayIndexInStore(e){return this.getRowCount()===0?!1:e>=this.displayIndexStart&&e<this.displayIndexEnd}setDisplayIndexes(e,t,s){this.displayIndexStart=e.peek(),this.topPx=t.value;const i={};this.nodesAfterSort.forEach(o=>{this.blockUtils.setDisplayIndex(o,e,t,s),i[o.id]=!0}),this.allRowNodes.forEach(o=>{i[o.id]||this.blockUtils.clearDisplayIndex(o)}),this.displayIndexEnd=e.peek(),this.heightPx=t.value-this.topPx}forEachStoreDeep(e,t=new Ze){e(this,t.next()),this.allRowNodes.forEach(s=>{const i=s.childStore;i&&i.forEachStoreDeep(e,t)})}forEachNodeDeep(e,t=new Ze){this.allRowNodes.forEach(s=>{e(s,t.next());const i=s.childStore;i&&i.forEachNodeDeep(e,t)})}forEachNodeDeepAfterFilterAndSort(e,t=new Ze,s=!1){this.nodesAfterSort.forEach(i=>{e(i,t.next());const o=i.childStore;o&&o.forEachNodeDeepAfterFilterAndSort(e,t,s)}),s&&this.parentRowNode.sibling&&e(this.parentRowNode.sibling,t.next())}getRowUsingDisplayIndex(e){return this.isDisplayIndexInStore(e)?this.blockUtils.binarySearchForDisplayIndex(e,this.nodesAfterSort):void 0}getRowBounds(e){for(let t=0;t<this.nodesAfterSort.length;t++){const s=this.nodesAfterSort[t],i=this.blockUtils.extractRowBounds(s,e);if(i)return i}return null}isPixelInRange(e){return e>=this.topPx&&e<this.topPx+this.heightPx}getRowIndexAtPixel(e){if(e<=this.topPx)return this.nodesAfterSort[0].rowIndex;if(e>=this.topPx+this.heightPx){const r=this.nodesAfterSort[this.nodesAfterSort.length-1];if(!r)return null;const n=r.rowTop+r.rowHeight;if(e>=n&&r.expanded){if(r.childStore&&r.childStore.getRowCount()>0)return r.childStore.getRowIndexAtPixel(e);if(r.detailNode)return r.detailNode.rowIndex}return r.rowIndex}let i=null;return this.nodesAfterSort.forEach(r=>{const n=this.blockUtils.getIndexAtPixel(r,e);n!=null&&(i=n)}),i??this.displayIndexEnd-1}getChildStore(e){return this.storeUtils.getChildStore(e,this,t=>this.allRowNodes.find(i=>i.key==t))}forEachChildStoreShallow(e){this.allRowNodes.forEach(t=>{const s=t.childStore;s&&e(s)})}refreshAfterFilter(e){const t=this.storeUtils.isServerSideFilterOnServer(),s=this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e);if(!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||t&&s){this.refreshStore(!0),this.sortRowNodes();return}this.filterRowNodes(),this.sortRowNodes(),this.forEachChildStoreShallow(o=>o.refreshAfterFilter(e))}refreshAfterSort(e){const t=this.storeUtils.isServerSideSortOnServer(),s=this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e);if(this.storeUtils.isServerSideSortAllLevels()||t&&s){this.refreshStore(!0),this.filterRowNodes();return}this.filterRowNodes(),this.sortRowNodes(),this.forEachChildStoreShallow(o=>o.refreshAfterSort(e))}applyTransaction(e){switch(this.getState()){case"failed":return{status:We.StoreLoadingFailed};case"loading":return{status:We.StoreLoading};case"needsLoading":return{status:We.StoreWaitingToLoad}}const t=this.gos.getCallback("isApplyServerSideTransaction");if(t){const o={transaction:e,parentNode:this.parentRowNode,groupLevelInfo:this.info};if(!t(o))return{status:We.Cancelled}}const s={status:We.Applied,remove:[],update:[],add:[]},i=[];return this.executeAdd(e,s),this.executeRemove(e,s,i),this.executeUpdate(e,s,i),this.filterAndSortNodes(),this.updateSelection(i),s}updateSelection(e){e.length>0&&(this.selectionService.setNodesSelected({newValue:!1,nodes:e,suppressFinishActions:!0,clearSelection:!1,source:"rowDataChanged"}),this.eventService.dispatchEvent({type:"selectionChanged",source:"rowDataChanged"}))}executeAdd(e,t){const{add:s,addIndex:i}=e;
264if(Re(s))return;typeof i=="number"&&i>=0?s.reverse().forEach(r=>{const n=this.createDataNode(r,i);t.add.push(n)}):s.forEach(r=>{const n=this.createDataNode(r);t.add.push(n)})}executeRemove(e,t,s){const{remove:i}=e;if(i==null)return;const o={};i.forEach(r=>{const n=this.lookupRowNode(r);n&&(n.isSelected()&&s.push(n),n.clearRowTopAndRowIndex(),o[n.id]=!0,delete this.allNodesMap[n.id],t.remove.push(n),this.nodeManager.removeNode(n))}),this.allRowNodes=this.allRowNodes.filter(r=>!o[r.id])}executeUpdate(e,t,s){const{update:i}=e;i!=null&&i.forEach(o=>{const r=this.lookupRowNode(o);r&&(this.blockUtils.updateDataIntoRowNode(r,o),!r.selectable&&r.isSelected()&&s.push(r),t.update.push(r))})}lookupRowNode(e){const t=Tt(this.gos);if(t!=null){const s=this.parentRowNode.getRoute()??[],i=t({data:e,parentKeys:s.length>0?s:void 0,level:this.level}),o=this.allNodesMap[i];return o||(_(`could not find row id=${i}, data item was not found for this id`),null)}else{const s=this.allRowNodes.find(i=>i.data===e);return s||(_("could not find data item as object was not found",e),null)}}addStoreStates(e){e.push({suppressInfiniteScroll:!0,route:this.parentRowNode.getRoute()??[],rowCount:this.allRowNodes.length,info:this.info}),this.forEachChildStoreShallow(t=>t.addStoreStates(e))}refreshStore(e){if(e){const t=this.nodesAfterSort?this.nodesAfterSort.length:1;this.initialiseRowNodes(t)}this.scheduleLoad(),this.fireStoreUpdatedEvent()}retryLoads(){this.getState()==="failed"&&(this.initialiseRowNodes(1),this.scheduleLoad()),this.forEachChildStoreShallow(e=>e.retryLoads())}scheduleLoad(){this.setStateWaitingToLoad(),this.rowNodeBlockLoader.checkBlockToLoad()}fireStoreUpdatedEvent(){this.eventService.dispatchEvent({type:"storeUpdated"})}getRowCount(){return this.nodesAfterSort.length}getTopLevelRowDisplayedIndex(e){return this.nodesAfterSort[e].rowIndex}isLastRowIndexKnown(){return this.getState()=="loaded"}getRowNodesInRange(e,t){const s=[];let i=!1;return z(e)&&(i=!0),this.nodesAfterSort.forEach(r=>{const n=r===e||r===t;(i||n)&&s.push(r),n&&(i=!i)}),i?[]:s}getStoreBounds(){return{topPx:this.topPx,heightPx:this.heightPx}}},Tn=class extends b{constructor(){super(...arguments),this.beanName="lazyBlockLoadingService",this.cacheLoadingNodesMap=new Map,this.isCheckQueued=!1,this.nextBlockToLoad=void 0}wireBeans(e){this.rowNodeBlockLoader=e.rowNodeBlockLoader,this.rowRenderer=e.rowRenderer,this.rowModel=e.rowModel}postConstruct(){this.addManagedListeners(this.rowNodeBlockLoader,{blockLoaded:()=>this.queueLoadCheck()})}subscribe(e){this.cacheLoadingNodesMap.set(e,new Set)}unsubscribe(e){this.cacheLoadingNodesMap.delete(e)}queueLoadCheck(){this.isCheckQueued||(this.isCheckQueued=!0,window.queueMicrotask(()=>{this.queueLoadAction(),this.isCheckQueued=!1}))}queueLoadAction(){const e=this.getBlockToLoad();if(!e)return;const t=this.nextBlockToLoad&&this.nextBlockToLoad.cache===e.cache&&this.nextBlockToLoad.index===e.index;if(!t&&(!this.nextBlockToLoad||!t)){this.nextBlockToLoad=e,window.clearTimeout(this.loaderTimeout);const s=Number(this.nextBlockToLoad.index),i=this.nextBlockToLoad.cache,o=e.index+e.cache.getBlockSize();this.loaderTimeout=window.setTimeout(()=>{i.isAlive()&&(this.loaderTimeout=void 0,this.attemptLoad(i,s,o),this.nextBlockToLoad=void 0)},this.gos.get("blockLoadDebounceMillis"))}}attemptLoad(e,t,s){const i=this.rowNodeBlockLoader.getAvailableLoadingCount();i!=null&&i===0||(this.rowNodeBlockLoader.registerLoads(1),this.executeLoad(e,t,s),this.queueLoadCheck())}executeLoad(e,t,s){var u;const i=e.getSsrmParams(),o={startRow:t,endRow:s,rowGroupCols:i.rowGroupCols,valueCols:i.valueCols,pivotCols:i.pivotCols,pivotMode:i.pivotMode,groupKeys:e.store.getParentNode().getRoute()??[],filterModel:i.filterModel,sortModel:i.sortModel},r=this.cacheLoadingNodesMap.get(e),n=()=>{for(let h=0;h<s-t;h++)r.delete(t+h)},l=()=>{for(let h=0;h<s-t;h++)r.add(t+h)},a=h=>{this.rowNodeBlockLoader.loadComplete(),e.onLoadSuccess(t,s-t,h),n()},d=()=>{this.rowNodeBlockLoader.loadComplete(),e.onLoadFailed(t,s-t),n()},c=this.gos.addGridCommonParams({request:o,success:a,fail:d,parentNode:e.store.getParentNode()});l(),(u=e.getSsrmParams().datasource)==null||u.getRows(c)}getBlockToLoad(){var l;const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow();for(let a=e;a<=t;a++){const d=this.rowModel.getRow(a);if(!d)continue;const c=d.parent&&d.parent.childStore;if(!c||!(c instanceof di))continue;const u=c.getCache(),h=u.getNodes().getBy("node",d);if(!h)continue;const p=this.cacheLoadingNodesMap.get(u);if(!(p!=null&&p.has(h.index))&&(d.__needsRefreshWhenVisible||d.stub&&!d.failedLoad))return{cache:u,index:u.getBlockStartIndex(h.index)}}let s=null,i=null,o=Number.MAX_SAFE_INTEGER;for(const a of this.cacheLoadingNodesMap.keys())a.getNodesToRefresh().forEac
264h(c=>{if(c.rowIndex==null){i=c,s=a;return}const u=a.getNodes().getBy("node",c);if(!u)return;const h=this.cacheLoadingNodesMap.get(a);if(h!=null&&h.has(u.index))return;const p=Math.abs(e-c.rowIndex),g=Math.abs(c.rowIndex-t);p<o&&(i=c,o=p,s=a),g<o&&(i=c,o=g,s=a)});if(!s)return;const r=s,n=(l=r.getNodes().getBy("node",i))==null?void 0:l.index;return n==null?void 0:{cache:r,index:r.getBlockStartIndex(n)}}isRowLoading(e,t){var s;return((s=this.cacheLoadingNodesMap.get(e))==null?void 0:s.has(t))??!1}};Tn.DEFAULT_BLOCK_SIZE=100;var eD=class{constructor(...e){if(e.length<1)throw new Error("AG Grid: At least one index must be provided.");this.indexes=e,this.maps=new Map(this.indexes.map(t=>[t,new Map]))}getSize(){return this.maps.get(this.indexes[0]).size}getBy(e,t){const s=this.maps.get(e);if(!s)throw new Error(`AG Grid: ${String(e)} not found`);return s.get(t)}set(e){this.indexes.forEach(t=>{const s=this.maps.get(t);if(!s)throw new Error(`AG Grid: ${String(t)} not found`);s.set(e[t],e)})}delete(e){this.indexes.forEach(t=>{const s=this.maps.get(t);if(!s)throw new Error(`AG Grid: ${String(t)} not found`);s.delete(e[t])})}clear(){this.maps.forEach(e=>e.clear())}getIterator(e){const t=this.maps.get(e);if(!t)throw new Error(`AG Grid: ${String(e)} not found`);return t.values()}forEach(e){const t=this.getIterator(this.indexes[0]);let s;for(;(s=t.next())&&!s.done;)e(s.value)}find(e){const t=this.getIterator(this.indexes[0]);let s;for(;(s=t.next())&&!s.done;)if(e(s.value))return s.value}filter(e){const t=this.getIterator(this.indexes[0]);let s;const i=[];for(;(s=t.next())&&!s.done;)e(s.value)&&i.push(s.value);return i}},Zo=class extends b{constructor(e,t,s,i){super(),this.live=!0,this.removedNodeCache=new Map,this.store=e,this.numberOfRows=t,this.isLastRowKnown=s,this.storeParams=i}wireBeans(e){this.rowRenderer=e.rowRenderer,this.blockUtils=e.ssrmBlockUtils,this.focusService=e.focusService,this.nodeManager=e.ssrmNodeManager,this.serverSideRowModel=e.rowModel,this.rowNodeSorter=e.rowNodeSorter,this.sortController=e.sortController,this.lazyBlockLoadingService=e.lazyBlockLoadingService}postConstruct(){this.lazyBlockLoadingService.subscribe(this),this.nodeMap=new eD("index","id","node"),this.nodeDisplayIndexMap=new Map,this.nodesToRefresh=new Set,this.defaultNodeIdPrefix=this.blockUtils.createNodeIdPrefix(this.store.getParentNode()),this.getRowIdFunc=Tt(this.gos),this.isMasterDetail=this.gos.get("masterDetail")}destroy(){this.lazyBlockLoadingService.unsubscribe(this),this.numberOfRows=0,this.nodeMap.forEac
264h(e=>this.blockUtils.destroyRowNode(e.node)),this.nodeMap.clear(),this.nodeDisplayIndexMap.clear(),this.nodesToRefresh.clear(),this.live=!1,super.destroy()}getRowByDisplayIndex(e){var a,d,c,u,h;if(!this.store.isDisplayIndexInStore(e))return;const t=this.nodeDisplayIndexMap.get(e);if(t)return(t.stub||t.__needsRefreshWhenVisible)&&this.lazyBlockLoadingService.queueLoadCheck(),t;if(this.gos.get("groupHideOpenParents")||this.gos.get("groupAllowUnbalanced")){const p=this.nodeMap.find(g=>{var f;return!!((f=g.node.childStore)!=null&&f.isDisplayIndexInStore(e))});if(p)return(a=p.node.childStore)==null?void 0:a.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&&((d=i.childStore)!=null&&d.isDisplayIndexInStore(e)))return(c=i.childStore)==null?void 0:c.getRowUsingDisplayIndex(e);const p=this.nodeMap.getBy("node",i);return this.createStubNode(p.index+1,e)}const o=this.getSurroundingNodesByDisplayIndex(e);if(o==null){const p=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(p,e)}const{previousNode:r,nextNode:n}=o;if(r&&r.node.expanded&&((u=r.node.childStore)!=null&&u.isDisplayIndexInStore(e)))return(h=r.node.childStore)==null?void 0:h.getRowUsingDisplayIndex(e);if(n){const p=n.node.rowIndex-e,g=n.index-p;return this.createStubNode(g,e)}const l=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(l,e)}createStubNode(e,t){const s=this.store.getRowBounds(t),i=this.createRowAtIndex(e,null,o=>{o.setRowIndex(t),o.setRowTop(s.rowTop),this.nodeDisplayIndexMap.set(t,o)});if(e===0&&this.gos.get("groupHideOpenParents")){const o=this.store.getParentNode().groupData;for(const r in o)i.setGroupValue(r,o[r])}return this.lazyBlockLoadingService.queueLoadCheck(),i}getRowByStoreIndex(e){var t;return(t=this.nodeMap.getBy("index",e))==null?void 0:t.node}skipDisplayIndexes(e,t,s){if(e===0)return;const i=At(this.gos);t.skip(e),s.value+=e*i}setDisplayIndexes(e,t,s){this.nodeDisplayIndexMap.clear();const i={};
264this.nodeMap.forEach(n=>{i[n.index]=n.node});let o=-1;for(const n in i){const l=i[n],a=Number(n),d=a-1-o;this.skipDisplayIndexes(d,e,t);const c=a===0;if(l.setFirstChild(c),c&&this.gos.get("groupHideOpenParents")){const u=this.store.getParentNode().groupData;for(const h in u)l.setGroupValue(h,c?u[h]:void 0)}this.blockUtils.setDisplayIndex(l,e,t,s),l.rowIndex!=null&&this.nodeDisplayIndexMap.set(l.rowIndex,l),o=a}const r=this.numberOfRows-1-o;this.skipDisplayIndexes(r,e,t),this.purgeExcessRows()}getRowCount(){return this.numberOfRows}setRowCount(e,t){if(e<0)throw new Error("AG Grid: setRowCount can only accept a positive row count.");this.numberOfRows=e,t!=null&&(this.isLastRowKnown=t,t===!1&&(this.numberOfRows+=1)),this.fireStoreUpdatedEvent()}getNodes(){return this.nodeMap}getNodeCachedByDisplayIndex(e){return this.nodeDisplayIndexMap.get(e)??null}getNodesToRefresh(){return this.nodesToRefresh}getSurroundingNodesByDisplayIndex(e){let t,s;return this.nodeMap.forEach(i=>{if(e>i.node.rowIndex){(s==null||s.node.rowIndex<i.node.rowIndex)&&(s=i);return}if(t==null||t.node.rowIndex>i.node.rowIndex){t=i;return}}),!s&&!t?null:{previousNode:s,nextNode:t}}getDisplayIndexFromStoreIndex(e){var n;const t=this.nodeMap.getBy("index",e);if(t)return t.node.rowIndex;let s,i;
264if(this.nodeMap.forEach(l=>{if(e>l.index){(i==null||i.index<l.index)&&(i=l);return}if(s==null||s.index>l.index){s=l;return}}),!s)return this.store.getDisplayIndexEnd()-(this.numberOfRows-e);if(!i)return this.store.getDisplayIndexStart()+e;const o=e-i.index;return(((n=i.node.childStore)==null?void 0:n.getDisplayIndexEnd())??i.node.rowIndex)+o}createRowAtIndex(e,t,s){var r,n;const i=this.nodeMap.getBy("index",e);if(i){const{node:l}=i;if(l.__needsRefreshWhenVisible=!1,this.doesNodeMatch(t,l))return this.blockUtils.updateDataIntoRowNode(l,t),this.nodesToRefresh.delete(l),l;if(this.getRowIdFunc==null&&l.hasChildren()&&l.expanded)return this.nodesToRefresh.delete(l),l;this.destroyRowAtIndex(e)}if(t&&this.getRowIdFunc!=null){const l=this.getRowId(t),a=l&&((r=this.removedNodeCache)==null?void 0:r.get(l));if(a)return(n=this.removedNodeCache)==null||n.delete(l),this.blockUtils.updateDataIntoRowNode(a,t),this.nodeMap.set({id:a.id,node:a,index:e}),this.nodesToRefresh.delete(a),a.__needsRefreshWhenVisible=!1,a;const d=this.nodeMap.getBy("id",l);if(d){this.nodeMap.delete(d);const{node:c,index:u}=d;return this.blockUtils.updateDataIntoRowNode(c,t),this.nodeMap.set({id:c.id,node:c,index:e}),this.nodesToRefresh.delete(c),c.__needsRefreshWhenVisible=!1,this.getBlockStartIndex(u)===this.getBlockStartIndex(e)||this.markBlockForVerify(u),c}}const o=this.blockUtils.createRowNode(this.store.getRowDetails());if(t!=null){const l=this.getPrefixedId(this.store.getIdSequence().next());this.blockUtils.setDataIntoRowNode(o,t,l,void 0),this.serverSideRowModel.setPaused(!0),this.blockUtils.checkOpenByDefault(o),this.serverSideRowModel.setPaused(!1),this.nodeManager.addRowNode(o)}return this.nodeMap.set({id:o.id,node:o,index:e}),s&&s(o),o}getBlockStates(){const e={},t={};
264this.nodeMap.forEach(({node:r,index:n})=>{const l=this.getBlockStartIndex(n);!r.stub&&!r.failedLoad&&(e[l]=(e[l]??0)+1);let a="loaded";r.failedLoad?a="failed":this.lazyBlockLoadingService.isRowLoading(this,l)?a="loading":(this.nodesToRefresh.has(r)||r.stub)&&(a="needsLoading"),t[l]||(t[l]=new Set),t[l].add(a)});const s={loading:4,failed:3,needsLoading:2,loaded:1},i=this.blockUtils.createNodeIdPrefix(this.store.getParentNode()),o={};return Object.entries(t).forEach(([r,n])=>{const a=[...n].sort((u,h)=>(s[u]??0)-(s[h]??0))[0],d=Number(r)/this.getBlockSize(),c=i?`${i}-${d}`:String(d);o[c]={blockNumber:d,startRow:Number(r),endRow:Number(r)+this.getBlockSize(),pageStatus:a,loadedRowCount:e[r]??0}}),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,s]=this.getBlockBounds(e);this.nodeMap.filter(o=>o.index>
vendor: 1,087 bytes, line 264
264=t&&o.index<s).forEach(({node:o})=>{o.__needsRefreshWhenVisible=!0})}doesNodeMatch(e,t){if(t.stub)return!1;const s=this.getRowId(e);return s===null?t.data===e:t.id===s}purgeStubsOutsideOfViewport(){const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow(),s=this.getBlockStartIndex(e),[,i]=this.getBlockBounds(t);this.nodeMap.forEach(o=>{this.lazyBlockLoadingService.isRowLoading(this,o.index)||o.node.failedLoad||o.node.stub&&(o.index<s||o.index>i)&&this.destroyRowAtIndex(o.index)})}getBlocksDistanceFromRow(e,t){const s={};return e.forEach(({node:i,index:o})=>{const[r,n]=this.getBlockBounds(o);if(r in s)return;const l=Math.abs(i.rowIndex-t);let a;const d=this.nodeMap.getBy("index",[n-1]);d&&(a=Math.abs(d.node.rowIndex-t));const c=a==null||l<a?l:a;s[r]=c}),Object.entries(s)}purgeExcessRows(){if(this.purgeStubsOutsideOfViewport(),this.store.getDisplayIndexEnd()==null||this.storeParams.maxBlocksInCache==null)return;const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow(),s=new Set,i=new Set;
264this.nodeMap.forEach(({index:p,node:g})=>{const f=this.getBlockStartIndex(p);s.add(f),g.rowIndex>=e&&g.rowIndex<=t&&i.add(f)});const o=Math.max(i.size,this.storeParams.maxBlocksInCache??0),n=s.size-o;if(n<=0)return;let l=Number.MAX_SAFE_INTEGER,a=Number.MIN_SAFE_INTEGER;i.forEach(p=>{l>p&&(l=p),a<p&&(a=p)});const d=this.nodeMap.filter(({node:p,index:g})=>{const f=this.getBlockStartIndex(g);return!(f>=l&&f<=a)&&!this.isNodeCached(p)});if(d.length===0)return;const c=e+(t-e)/2,u=this.getBlocksDistanceFromRow(d,c),h=this.getBlockSize();u.sort((p,g)=>Math.sign(g[1]-p[1]));for(let p=0;p<Math.min(n,u.length);p++){const g=Number(u[p][0]);for(let f=g;f<g+h;f++){const m=this.nodeMap.getBy("index",f);!m||this.isNodeCached(m.node)||this.destroyRowAtIndex(f)}}}isNodeFocused(e){const t=this.focusService.getFocusCellToUseAfterRefresh();return!t||t.rowPinned!=null?!1:t.rowIndex===e.rowIndex}isNodeCached(e){const t=this.gos.get("groupAllowUnbalanced")&&e.key==="";return e.isExpandable()&&e.expanded||this.isNodeFocused(e)||t}extractDuplicateIds(e){if(this.getRowIdFunc==null)return[];const t=new Set,s=new Set;return e.forEach(i=>{const o=this.getRowId(i);if(t.has(o)){s.add(o);return}t.add(o)}),[...s]}onLoadSuccess(e,t,s){if(!this.live)return;const i=s.groupLevelInfo;if(this.store.setStoreInfo(i),this.getRowIdFunc!=null){const n=this.extractDuplicateIds(s.rowData);if(n.length>0){const l=n.join(", ");R(`Unable to display rows as duplicate row ids (${l}) were returned by the getRowId callback. Please modify the getRowId callback to provide unique ids.`),this.onLoadFailed(e,t);return}}s.pivotResultFields&&this.serverSideRowModel.generateSecondaryColumns(s.pivotResultFields);const o=this.nodesToRefresh.size>0;if(s.rowData.forEach((n,l)=>{var c;const a=e+l,d=this.nodeMap.getBy("index",a);if((c=d==null?void 0:d.node)!=null&&c.stub){this.createRowAtIndex(a,n);return}if(d&&this.doesNodeMatch(n,d.node)){this.blockUtils.updateDataIntoRowNode(d.node,n),this.nodesToRefresh.delete(d.node),d.node.__needsRefreshWhenVisible=!1;return}this.createRowAtIndex(a,n)}),s.rowCount!=null&&s.rowCount!==-1)this.numberOfRows=s.rowCount,this.isLastRowKnown=!0;else if(t>s.rowData.length)this.numberOfRows=e+s.rowData.length,this.isLastRowKnown=!0;else if(!this.isLastRowKnown){const n=e+s.rowData.length+1;n>this.numberOfRows&&(this.numberOfRows=n)}this.isLastRowKnown&&this.nodeMap.filter(l=>l.index>
264=this.numberOfRows).forEach(l=>this.destroyRowAtIndex(l.index)),this.fireStoreUpdatedEvent();const r=this.nodesToRefresh.size===0;o&&r&&this.fireRefreshFinishedEvent()}fireRefreshFinishedEvent(){this.nodesToRefresh.size===0&&(this.removedNodeCache.forEach(t=>{this.blockUtils.destroyRowNode(t)}),this.removedNodeCache=new Map,this.store.fireRefreshFinishedEvent())}isStoreFullyLoaded(){const e=this.isLastRowKnown,t=this.nodeMap.getSize()===this.numberOfRows;if(!e||!t||this.nodesToRefresh.size>0)return;let s=-1;return this.nodeMap.find(o=>(s+=1,!!(o.index!==s||o.node.__needsRefreshWhenVisible||o.node.stub)))==null}isLastRowIndexKnown(){return this.isLastRowKnown}onLoadFailed(e,t){if(!this.live)return;const s=this.nodesToRefresh.size>0;for(let o=e;o<e+t&&o<this.getRowCount();o++){let{node:r}=this.nodeMap.getBy("index",o)??{};r&&this.nodesToRefresh.delete(r),(!r||!r.stub)&&(r&&!r.stub&&this.destroyRowAtIndex(o),r=this.createRowAtIndex(o)),r.__needsRefreshWhenVisible=!1,r.failedLoad=!0}const i=this.nodesToRefresh.size===0;s&&i&&this.fireRefreshFinishedEvent(),this.fireStoreUpdatedEvent()}
264markNodesForRefresh(){this.nodeMap.forEach(e=>{e.node.stub&&!e.node.failedLoad||this.nodesToRefresh.add(e.node)}),this.lazyBlockLoadingService.queueLoadCheck(),this.isLastRowKnown&&this.numberOfRows===0&&(this.numberOfRows=1,this.isLastRowKnown=!1,this.fireStoreUpdatedEvent())}isNodeInCache(e){return!!this.nodeMap.getBy("id",e)}fireStoreUpdatedEvent(){this.live&&this.store.fireStoreUpdatedEvent()}getRowId(e){if(this.getRowIdFunc==null)return null;const{level:t}=this.store.getRowDetails(),s=this.store.getParentNode().getRoute()??[];return this.getRowIdFunc({data:e,parentKeys:s.length>0?s:void 0,level:t})}getOrderedNodeMap(){const e={};return this.nodeMap.forEach(t=>e[t.index]=t),e}clearDisplayIndexes(){this.nodeDisplayIndexMap.clear()}clientSideSortRows(){const e=this.sortController.getSortOptions();if(!e.some(o=>o.sort!=null))return;const s=new Array(this.nodeMap.getSize());this.nodeMap.forEach(o=>s[o.index]=o.node),this.nodeMap.clear(),this.rowNodeSorter.doFullSort(s,e).forEach((o,r)=>{this.nodeMap.set({id:o.id,node:o,index:r})})}updateRowNodes(e){if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const t=[];return e.forEach(s=>{const i=this.getRowId(s),o=this.nodeMap.getBy("id",i);o&&(this.blockUtils.updateDataIntoRowNode(o.node,s),t.push(o.node))}),t}insertRowNodes(e,t){const s=this.store.getRowCount()-(this.store.getParentNode().sibling?1:0),i=t==null&&this.isLastRowKnown?s:t;if(i==null||s<i)return[];if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const o={};e.forEach(a=>{const d=this.getRowId(a);d&&this.isNodeInCache(d)||(o[d]=a)});const r=Object.values(o),n=r.length;if(n===0)return[];const l=this.nodeMap.filter(a=>a.index>=i);return l.forEach(a=>this.nodeMap.delete(a)),l.forEach(a=>{this.nodeMap.set({node:a.node,index:a.index+n,id:a.id})}),this.numberOfRows+=n,r.map((a,d)=>this.createRowAtIndex(i+d,a))}removeRowNodes(e){if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const t=[],s=[];let i=0;const o=[...e],r=this.getOrderedNodeMap();let n=-1;for(const l in r){n+=1;const a=r[l],d=o.findIndex(u=>u===a.id);if(d!==-1){o.splice(d,1),this.destroyRowAtIndex(Number(l)),t.push(a.node),i+=1;continue}if(i===0)continue;const c=Number(l);n!==c&&s.push(a.node),this.nodeMap.delete(r[l]),this.nodeMap.set({id:a.id,node:a.node,index:c-i})}return this.numberOfRows-=this.isLastRowIndexKnown()?e.length:i,o.length>0&&s.length>0&&(s.forEach(l=>l.__needsRefreshWhenVisible=!0),this.lazyBlockLoadingService.queueLoadCheck()),t}getBlockSize(){return this.storeParams.cacheBlockSize||Tn.DEFAULT_BLOCK_SIZE}getBlockStartIndex(e){const t=this.getBlockSize();return e-e%t}getBlockBounds(e){const t=this.getBlockStartIndex(e),s=this.getBlockSize();return[t,t+s]}},di=class extends b{constructor(e,t,s){super(),this.idSequence=new Ze,this.ssrmParams=e,this.parentRowNode=s,this.storeParams=t,this.level=s.level+1,this.group=e.rowGroupCols?this.level<e.rowGroupCols.length:!1,this.leafGroup=e.rowGroupCols?this.level===e.rowGroupCols.length-1:!1,this.info={}}wireBeans(e){this.blockUtils=e.ssrmBlockUtils,this.storeUtils=e.ssrmStoreUtils,this.selectionService=e.selectionService,this.funcColsService=e.funcColsService}postConstruct(){let e=1;if(this.level===0&&(e=this.storeUtils.getServerSideInitialRowCount()??1,this.eventService.dispatchEventOnce({type:"rowCountReady"})),this.cache=this.createManagedBean(new Zo(this,e,!1,this.storeParams)),!this.gos.get("treeData")&&this.group){const s=this.ssrmParams.rowGroupCols[this.level];this.groupField=s.field,this.rowGroupColumn=this.funcColsService.getRowGroupColumns()[this.level]}}destroy(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.destroyBean(this.cache),super.destroy()}applyRowData(e,t,s){this.cache.onLoadSuccess(t,s,e)}applyTransaction(e){var c,u,h;const t=Tt(this.gos);if(!t)return R("getRowId callback must be implemented for transactions to work. Transaction was ignored."),{status:We.Cancelled};const s=this.gos.getCallback("isApplyServerSideTransaction");if(s){const p={transaction:e,parentNode:this.parentRowNode,groupLevelInfo:this.info};if(!s(p))return{status:We.Cancelled}}const i=this.cache.isStoreFullyLoaded();let o;(c=e.update)!=null&&c.length&&(o=this.cache.updateRowNodes(e.update));let r;if((u=e.add)!=null&&u.length){let p=e.addIndex;p!=null&&p<0&&(p=void 0),r=this.cache.insertRowNodes(e.add,p)}let n;if((h=e.remove)!=null&&h.length){const p=e.remove.map(f=>t({level:this.level,parentKeys:this.parentRowNode.getRoute()??[],data:f})),g=[...new Set(p)];n=this.cache.removeRowNodes(g)}const l=this.gos.get("serverSideEnableClientSideSort"),a=(o==null?void 0:o.length)||(r==null?void 0:r.length);return i&&l&&a&&this.cache.clientSideSortRows(),this.updateSelectionAfterTransaction(o,n),{status:We.Applied,update:o,add:r,remove:n}}updateSelectionAfterTransaction(e,t){const s=[];e==null||e.forEach(i=>
264{i.isSelected()&&!i.selectable&&s.push(i)}),t==null||t.forEach(i=>{i.isSelected()&&s.push(i)}),s.length&&this.selectionService.setNodesSelected({newValue:!1,clearSelection:!1,nodes:s,source:"rowDataChanged"})}clearDisplayIndexes(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.cache.getNodes().forEach(e=>this.blockUtils.clearDisplayIndex(e.node)),this.parentRowNode.sibling&&this.blockUtils.clearDisplayIndex(this.parentRowNode.sibling),this.cache.clearDisplayIndexes()}getDisplayIndexStart(){return this.displayIndexStart}getDisplayIndexEnd(){return this.displayIndexEnd}getRowCount(){return this.parentRowNode.sibling?this.cache.getRowCount()+1:this.cache.getRowCount()}setRowCount(e,t){this.cache.setRowCount(e,t)}isDisplayIndexInStore(e){return this.cache.getRowCount()===0?!1:this.displayIndexStart<=e&&e<this.getDisplayIndexEnd()}setDisplayIndexes(e,t,s){this.displayIndexStart=e.peek(),this.topPx=t.value;const i=this.parentRowNode.level>-1&&As(this.gos)({node:this.parentRowNode});i||this.parentRowNode.destroyFooter(),i==="top"&&(this.parentRowNode.createFooter(),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,s)),this.cache.setDisplayIndexes(e,t,s),i==="bottom"&&(this.parentRowNode.createFooter(),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,s)),this.displayIndexEnd=e.peek(),this.heightPx=t.value-this.topPx}forEachStoreDeep(e,t=new Ze){e(this,t.next()),this.cache.getNodes().forEach(s=>{const i=s.node.childStore;i&&i.forEachStoreDeep(e,t)})}forEachNodeDeep(e,t=new Ze){this.cache.getNodes().forEach(s=>{e(s.node,t.next());const i=s.node.childStore;i&&i.forEachNodeDeep(e,t)})}forEachNodeDeepAfterFilterAndSort(e,t=new Ze,s=!1){const i=this.parentRowNode.level>-1&&As(this.gos)({node:this.parentRowNode});i==="top"&&e(this.parentRowNode.sibling,t.next());const o=this.cache.getOrderedNodeMap();for(const r in o){const n=o[r];e(n.node,t.next());const l=n.node.childStore;l&&l.forEachNodeDeepAfterFilterAndSort(e,t,s)}i==="bottom"&&e(this.parentRowNode.sibling,t.next())}retryLoads(){this.cache.getNodes().forEach(({node:e})=>{e.failedLoad&&(e.failedLoad=!1,e.__needsRefreshWhenVisible=!0,e.stub=!0)}),this.forEachChildStoreShallow(e=>e.retryLoads()),this.fireStoreUpdatedEvent()}getRowUsingDisplayIndex(e){return this.parentRowNode.sibling&&e===this.parentRowNode.sibling.rowIndex?this.parentRowNode.sibling:this.cache.getRowByDisplayIndex(e)}getRowBounds(e){if(!this.isDisplayIndexInStore(e))return null;const t=this.cache.getNodeCachedByDisplayIndex(e);if(t){const l=this.blockUtils.extractRowBounds(t,e);if(l)return l}const{previousNode:s,nextNode:i}=this.cache.getSurroundingNodesByDisplayIndex(e)??{};if(s){const l=this.blockUtils.extractRowBounds(s.node,e);if(l!=null)return l}const o=At(this.gos);if(i){const l=(i.node.rowIndex-e)*o;return{rowTop:i.node.rowTop-l,rowHeight:o}}const r=this.topPx+this.heightPx,n=(this.getDisplayIndexEnd()-e)*o;return{rowTop:r-n,rowHeight:o}}isPixelInRange(e){return e>=this.topPx&&e<this.topPx+this.heightPx}getRowIndexAtPixel(e){if(e<this.topPx)return this.getDisplayIndexStart();if(e>=this.topPx+this.heightPx)return this.getDisplayIndexEnd()-1;if(this.parentRowNode.sibling&&e>this.parentRowNode.sibling.rowTop&&e<this.parentRowNode.sibling.rowTop+this.parentRowNode.sibling.rowHeight)return this.parentRowNode.sibling.rowIndex;let t=Number.MAX_SAFE_INTEGER,s=null,i=Number.MAX_SAFE_INTEGER,o=null;if(this.cache.getNodes().forEach(({node:a})=>{const d=Math.abs(e-a.rowTop);if(a.rowTop<e){d<t&&(t=d,s=a);return}d<i&&(i=d,o=a)}),s=s,o=o,s){const a=this.blockUtils.getIndexAtPixel(s,e);if(a!=null)return a}const r=At(this.gos);if(o){const a=o.rowTop,d=Math.ceil((a-e)/r);return o.rowIndex-d}const n=this.topPx+this.heightPx,l=Math.floor((n-e)/r);return this.getDisplayIndexEnd()-l}getChildStore(e){return this.storeUtils.getChildStore(e,this,t=>{const s=this.cache.getNodes().find(i=>i.node.key==t);return s?s.node:null})}forEachChildStoreShallow(e){this.cache.getNodes().forEach(({node:t})=>{t.childStore&&e(t.childStore)})}refreshAfterSort(e){if(this.storeUtils.isServerSideSortAllLevels()||this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e)){const s=this.cache.isStoreFullyLoaded(),i=this.gos.get("serverSideEnableClientSideSort");if(!(s&&i)){const r=this.cache.getRowCount(),n=this.cache.isLastRowIndexKnown();this.destroyBean(this.cache),this.cache=this.createManagedBean(new Zo(this,r,n,this.storeParams));return}this.cache.clientSideSortRows()}this.forEachChildStoreShallow(s=>s.refreshAfterSort(e))}refreshAfterFilter(e){if(!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e)){this.refreshStore(!0);return}this.forEachChildStoreShallow(s=>s.refreshAfterFilter(e))}refreshStore(e){if(e){this.destroyBean(this.cache),this.cache=this.createManagedBean(new Zo(this,1,!1,this.storeParams)),this.fireStoreUpdatedEvent();return}this.cache.markNodesForRefresh()}getTopLevelRowDisplayedIndex(e){return this.cache.getDisplayIndexFromStoreIndex(e)??e}isLastRowIndexKnown(){return this.cache.isLastRowIndexKnown()}getRowNodesInRange(e,t){return this.cache.getNodes().filter(({node:s})=>s.rowIndex>=e.rowIndex&&s.rowIndex<=t.rowIndex).map(({node:s})=>s)}addStoreStates(e){e.push({suppressInfiniteScroll:!1,route:this.parentRowNode.getRoute()??[],rowCount:this.getRowCount(),lastRowIndexKnown:this.isLastRowIndexKnown(),info:this.info,maxBlocksInCache:this.storeParams.maxBlocksInCache,cacheBlockSize:this.storeParams.cacheBlockSize}),this.forEachChildStoreShallow(t=>t.addStoreStates(e))}getIdSequence(){return this.idSequence}getParentNode(){return this.parentRowNode}
264getRowDetails(){return{field:this.groupField,group:this.group,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn}}getSsrmParams(){return this.ssrmParams}setStoreInfo(e){e&&Object.assign(this.info,e)}fireStoreUpdatedEvent(){this.eventService.dispatchEvent({type:"storeUpdated"})}fireRefreshFinishedEvent(){this.eventService.dispatchEvent({type:"storeRefreshed",route:this.parentRowNode.getRoute()})}getBlockStates(){return this.cache.getBlockStates()}getStoreBounds(){return{topPx:this.topPx,heightPx:this.heightPx}}getCache(){return this.cache}},tD=class extends b{constructor(){super(...arguments),this.beanName="rowModel",this.onRowHeightChanged_debounced=Me(this.onRowHeightChanged.bind(this),100),this.pauseStoreUpdateListening=!1,this.started=!1,this.managingPivotResultColumns=!1}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService,this.filterManager=e.filterManager,this.sortController=e.sortController,this.rowRenderer=e.rowRenderer,this.nodeManager=e.ssrmNodeManager,this.storeFactory=e.ssrmStoreFactory,this.beans=e,this.pivotColDefService=e.pivotColDefService}ensureRowHeightsValid(){return!1}start(){this.started=!0,this.updateDatasource()}destroyDatasource(){this.datasource&&(this.datasource.destroy&&this.datasource.destroy(),this.rowRenderer.datasourceChanged(),this.datasource=void 0)}postConstruct(){const e=this.resetRootStore.bind(this);this.addManagedEventListeners({newColumnsLoaded:this.onColumnEverything.bind(this),storeUpdated:this.onStoreUpdated.bind(this),columnValueChanged:e,columnPivotChanged:e,columnRowGroupChanged:e,columnPivotModeChanged:e}),this.addManagedPropertyListeners(["masterDetail","treeData","removePivotHeaderRowWhenSingleValueColumn","suppressServerSideInfiniteScroll","cacheBlockSize"],e),this.addManagedPropertyListener("groupAllowUnbalanced",()=>this.onStoreUpdated()),this.addManagedPropertyListener("rowHeight",()=>this.resetRowHeights()),this.verifyProps(),this.addManagedPropertyListener("serverSideDatasource",()=>this.updateDatasource())}updateDatasource(){const e=this.gos.get("serverSideDatasource");e&&this.setDatasource(e)}verifyProps(){this.gos.exists("initialGroupOrderComparator")&&R("initialGroupOrderComparator cannot be used with Server Side Row Model."),ui(this.gos)&&!this.gos.exists("getRowId")&&R("getRowId callback must be provided for Server Side Row Model selection to work correctly.")}setDatasource(e){this.started&&(this.destroyDatasource(),this.datasource=e,this.resetRootStore())}applyRowData(e,t,s){const i=this.getRootStore();if(!i)return;const o=i.getChildStore(s);o&&(o instanceof di?o.applyRowData(e,t,e.rowData.length):o instanceof Dr&&o.processServerResult(e))}isLastRowIndexKnown(){const e=this.getRootStore();return e?e.isLastRowIndexKnown():!1}onColumnEverything(){if(!this.storeParams){this.resetRootStore();return}const e=this.columnsToValueObjects(this.funcColsService.getRowGroupColumns()),t=this.columnsToValueObjects(this.funcColsService.getValueColumns()),s=this.columnsToValueObjects(this.funcColsService.getPivotColumns()),i=d=>{const c={};d.oldCols.forEach(p=>c[p.id]=p);const u=d.newCols.every(p=>{const g=c[p.id];return g&&delete c[p.id],g&&g.field===p.field&&g.aggFunc===p.aggFunc}),h=!d.allowRemovedColumns&&!!Object.values(c).length;return u&&!h},o=!ci(this.storeParams.sortModel,this.sortController.getSortModel()),r=!i({oldCols:this.storeParams.rowGroupCols,newCols:e}),n=!i({oldCols:this.storeParams.pivotCols,newCols:s}),l=!!(e!=null&&e.length)&&!i({oldCols:this.storeParams.valueCols,newCols:t,allowRemovedColumns:!0});if(o||r||n||l)this.resetRootStore();else{const d=this.createStoreParams();this.storeParams.rowGroupCols=d.rowGroupCols,this.storeParams.pivotCols=d.pivotCols,this.storeParams.valueCols=d.valueCols}}destroyRootStore(){!this.rootNode||!this.rootNode.childStore||(this.rootNode.childStore=this.destroyBean(this.rootNode.childStore),this.nodeManager.clear())}refreshAfterSort(e,t){this.storeParams&&(this.storeParams.sortModel=e);const s=this.getRootStore();s&&(s.refreshAfterSort(t),this.onStoreUpdated())}generateSecondaryColumns(e){if(!this.pivotColDefService){this.gos.assertModuleRegistered(U.RowGroupingModule,"pivotResultFields");return}const t=this.pivotColDefService.createColDefsFromFields(e);this.managingPivotResultColumns=!0,this.pivotResultColsService.setPivotResultCols(t,"rowModelUpdated")}resetRowHeights(){const e=this.resetRowHeightsForAllRowNodes(),t=Ge(this.gos,this.rootNode);
264if(this.rootNode.setRowHeight(t.height,t.estimated),this.rootNode.sibling){const s=Ge(this.gos,this.rootNode.sibling);this.rootNode.sibling.setRowHeight(s.height,s.estimated)}e&&this.onRowHeightChanged()}resetRowHeightsForAllRowNodes(){let e=!1;return this.forEachNode(t=>{const s=Ge(this.gos,t);t.setRowHeight(s.height,s.estimated);const i=t.detailNode;if(i){const o=Ge(this.gos,i);i.setRowHeight(o.height,o.estimated)}if(t.sibling){const o=Ge(this.gos,t.sibling);i.setRowHeight(o.height,o.estimated)}e=!0}),e}resetRootStore(){this.destroyRootStore(),this.rootNode=new qe(this.beans),this.rootNode.group=!0,this.rootNode.level=-1,this.datasource&&(this.storeParams=this.createStoreParams(),this.rootNode.childStore=this.createBean(this.storeFactory.createStore(this.storeParams,this.rootNode)),this.updateRowIndexesAndBounds()),this.managingPivotResultColumns&&(this.pivotResultColsService.setPivotResultCols(null,"api"),this.managingPivotResultColumns=!1),this.dispatchModelUpdated(!0)}columnsToValueObjects(e){return e.map(t=>({id:t.getId(),aggFunc:t.getAggFunc(),displayName:this.columnNameService.getDisplayNameForColumn(t,"model"),field:t.getColDef().field}))}createStoreParams(){var r,n,l;const e=this.columnsToValueObjects(this.funcColsService.getRowGroupColumns()),t=this.columnsToValueObjects(this.funcColsService.getValueColumns()),s=this.columnsToValueObjects(this.funcColsService.getPivotColumns()),i=Tr(this.gos);return{valueCols:t,rowGroupCols:e,pivotCols:s,pivotMode:this.columnModel.isPivotMode(),filterModel:(r=this.filterManager)!=null&&r.isAdvancedFilterEnabled()?(n=this.filterManager)==null?void 0:n.getAdvancedFilterModel():((l=this.filterManager)==null?void 0:l.getFilterModel())??{},sortModel:this.sortController.getSortModel(),datasource:this.datasource,lastAccessedSequence:new Ze,dynamicRowHeight:i}}getParams(){return this.storeParams}dispatchModelUpdated(e=!1){this.eventService.dispatchEvent({type:"modelUpdated",animate:!e,keepRenderedRows:!e,newPage:!1,newData:!1})}onStoreUpdated(){this.pauseStoreUpdateListening||(this.updateRowIndexesAndBounds(),this.dispatchModelUpdated())}onRowHeightChangedDebounced(){this.onRowHeightChanged_debounced()}onRowHeightChanged(){this.updateRowIndexesAndBounds(),this.dispatchModelUpdated()}updateRowIndexesAndBounds(){const e=this.getRootStore();e&&e.setDisplayIndexes(new Ze,{value:0},0)}retryLoads(){const e=this.getRootStore();e&&(e.retryLoads(),this.onStoreUpdated())}getRow(e){const t=this.getRootStore();if(t)return t.getRowUsingDisplayIndex(e)}setPaused(e){this.pauseStoreUpdateListening=e}expandAll(e){this.pauseStoreUpdateListening=!0,this.forEachNode(t=>{t.stub||t.hasChildren()&&t.setExpanded(e)}),this.pauseStoreUpdateListening=!1,this.onStoreUpdated()}refreshAfterFilter(e,t){this.storeParams&&(this.storeParams.filterModel=e);const s=this.getRootStore();s&&(s.refreshAfterFilter(t),this.onStoreUpdated())}getRootStore(){if(this.rootNode&&this.rootNode.childStore)return this.rootNode.childStore}getRowCount(){const e=this.getRootStore();return e?e.getDisplayIndexEnd():0}getTopLevelRowCount(){const e=this.getRootStore();return e?e.getRowCount():1}getTopLevelRowDisplayedIndex(e){const t=this.getRootStore();return t?t.getTopLevelRowDisplayedIndex(e):e}getRowBounds(e){const t=this.getRootStore();return t?t.getRowBounds(e):{rowTop:0,rowHeight:At(this.gos)}}getBlockStates(){const e=this.getRootStore();if(!e)return;const t={};return e.forEachStoreDeep(s=>{if(s instanceof Dr){const{id:i,state:o}=s.getBlockStateJson();t[i]=o}else if(s instanceof di)Object.entries(s.getBlockStates()).forEach(([i,o])=>{t[i]=o});else throw new Error("AG Grid: Unsupported store type")}),t}getRowIndexAtPixel(e){const t=this.getRootStore();return e<=0||!t?0:t.getRowIndexAtPixel(e)}isEmpty(){return!1}isRowsToRender(){return this.getRootStore()!=null&&this.getRowCount()>0}getType(){return"serverSide"}forEachNode(e){const t=this.getRootStore();t&&t.forEachNodeDeep(e)}forEachNodeAfterFilterAndSort(e,t=!1){const s=this.getRootStore();s&&s.forEachNodeDeepAfterFilterAndSort(e,void 0,t)}executeOnStore(e,t){if(!this.started)return!1;const s=this.getRootStore();if(!s)return!0;const i=s.getChildStore(e);return i&&t(i),!0}refreshStore(e={}){const t=e.route?e.route:[];this.executeOnStore(t,s=>s.refreshStore(e.purge==!0))}getStoreState(){const e=[],t=this.getRootStore();return t&&t.addStoreStates(e),e}getNodesInRangeForSelection(e,t){const s=e.rowIndex,i=t.rowIndex;if(s===null&&i===null)return[];if(i===null)return e?[e]:[];if(s===null)return[t];const o=[],[r,n]=[s,i].sort((l,a)=>l-a);return this.forEachNode(l=>{const a=l.rowIndex;a==null||l.stub||a>=r&&a<=n&&o.push(l)}),o.length!==n-r+1?e?[e,t]:[]:o}getRowNode(e){let t;return this.forEachNode(s=>{s.id===e&&(t=s),s.detailNode&&s.detailNode.id===e&&(t=s.detailNode)}),t}isRowPresent(e){return!!this.getRowNode(e.id)}setRowCount(e,t){const s=this.getRootStore();if(s){if(s instanceof di){s.setRowCount(e,t);return}_("Infinite scrolling must be enabled in order to set the row count.")}}destroy(){this.destroyDatasource(),this.destroyRootStore(),super.destroy()}};function sD(e){return e.selectionService.getSelectionState()}function iD(e,t){e.selectionService.setSelectionState(t,"api")}function oD(e,t){var s;return(s=e.ssrmTransactionManager)==null?void 0:s.applyTransaction(t)}function rD(e,t){var o,r;const s=t.startRow??0,i=t.route??[];
264if(s<0){R(`invalid value ${t.startRow} for startRow, the value should be >= 0`);return}(r=(o=e.rowModelHelperService)==null?void 0:o.getServerSideRowModel())==null||r.applyRowData(t.successParams,s,i)}function nD(e,t,s){var i;return(i=e.ssrmTransactionManager)==null?void 0:i.applyTransactionAsync(t,s)}function lD(e){var t,s;(s=(t=e.rowModelHelperService)==null?void 0:t.getServerSideRowModel())==null||s.retryLoads()}function aD(e){var t;return(t=e.ssrmTransactionManager)==null?void 0:t.flushAsyncTransactions()}function dD(e,t){var s,i;(i=(s=e.rowModelHelperService)==null?void 0:s.getServerSideRowModel())==null||i.refreshStore(t)}function cD(e){var t,s;return((s=(t=e.rowModelHelperService)==null?void 0:t.getServerSideRowModel())==null?void 0:s.getStoreState())??[]}var uD=class extends kd{constructor(){super(...arguments),this.beanName="expansionService",this.queuedRowIds=new Set}wireBeans(e){super.wireBeans(e),this.serverSideRowModel=e.rowModel}postConstruct(){super.postConstruct(),this.addManagedEventListeners({columnRowGroupChanged:()=>{this.queuedRowIds.clear()}})}checkOpenByDefault(e){if(!e.isExpandable())return;if(this.queuedRowIds.has(e.id)){this.queuedRowIds.delete(e.id),e.setExpanded(!0);return}const t=this.gos.getCallback("isServerSideGroupOpenByDefault");if(!t)return;const s={data:e.data,rowNode:e};t(s)&&e.setExpanded(!0)}expandRows(e){e.forEach(t=>{const s=this.serverSideRowModel.getRowNode(t);s?s.setExpanded(!0):this.queuedRowIds.add(t)})}expandAll(e){this.serverSideRowModel.expandAll(e)}onGroupExpandedOrCollapsed(){}},Kc=class{constructor(){this.root=null,this.end=null,this.cachedRange=[]}init(e){this.rowModel=e}reset(){this.root=null,this.end=null,this.cachedRange.length=0}setRoot(e){this.root=e,this.end=null,this.cachedRange.length=0}setEndRange(e){this.end=e,this.cachedRange.length=0}getRoot(){return this.root}getRange(){if(this.cachedRange.length===0){const e=this.root?this.rowModel.getRowNode(this.root):void 0,t=this.end?this.rowModel.getRowNode(this.end):void 0;if(e==null||t==null)return this.cachedRange;this.cachedRange=this.rowModel.getNodesInRangeForSelection(e,t)}return this.cachedRange}isInRange(e){return this.root===null?!1:this.getRange().some(t=>t.id===e)}truncate(e){const t=this.getRange();if(t.length===0)return{keep:[],discard:[]};const s=t[0].id===this.root,i=t.findIndex(o=>o.id===e);if(i>-1){const o=t.slice(0,i),r=t.slice(i+1);return this.setEndRange(e),s?{keep:o,discard:r}:{keep:r,discard:o}}else return{keep:t,discard:[]}}extend(e,t=!1){if(this.root==null){const r=this.getRange().slice(),n=this.rowModel.getRowNode(e);return n&&(t&&n.depthFirstSearch(l=>!l.group&&r.push(l)),r.push(n)),this.setRoot(e),{keep:r,discard:[]}}const s=this.rowModel.getRowNode(e),i=this.rowModel.getRowNode(this.root);if(s==null)return{keep:this.getRange(),discard:[]};if(i==null)return{keep:this.getRange().concat(s),discard:[]};if(this.rowModel.getNodesInRangeForSelection(i,s).find(r=>r.id===this.end))return this.setEndRange(e),{keep:this.getRange(),discard:[]};{const r=this.getRange().slice();return this.setEndRange(e),{keep:this.getRange(),discard:r}}}},Jo=class extends b{constructor(){super(...arguments),this.selectionCtx=new Kc,this.selectedState={selectAll:!1,toggledNodes:new Set},this.selectAllUsed=!1,this.selectedNodes={}}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.selectionCtx.init(this.rowModel)}getSelectedState(){return{selectAll:this.selectedState.selectAll,toggledNodes:[...this.selectedState.toggledNodes]}}setSelectedState(e){const t={selectAll:!1,toggledNodes:new Set};if(typeof e!="object")return _("The provided selection state should be an object.");if(!("selectAll"in e))return _("Invalid selection state. The state must conform to `IServerSideSelectionState`.");if(typeof e.selectAll=="boolean")t.selectAll=e.selectAll;else return _("selectAll must be of boolean type.");if("toggledNodes"in e&&Array.isArray(e.toggledNodes))e.toggledNodes.forEach(i=>{typeof i=="string"?t.toggledNodes.add(i):R(`Provided ids must be of string type. Invalid id provided: ${i}`)});
264else return R("`toggledNodes` must be an array of string ids.");const s=t.selectAll||t.toggledNodes.size>1;if(Lr(this.gos)&&!Is(this.gos)&&s)return R("cannot multi select unless selection mode is 'multiRow'");this.selectedState=t}deleteSelectionStateFromParent(e,t){if(this.selectedState.toggledNodes.size===0)return!1;let s=!1;return t.forEach(i=>{this.selectedState.toggledNodes.delete(i)&&(s=!0)}),s}overrideSelectionValue(e,t){if(!pn(t))return e;const s=this.selectionCtx.getRoot(),i=s?this.rowModel.getRowNode(s):null;return i?i.isSelected()??!1:!0}setNodesSelected(e){const{nodes:t,clearSelection:s,newValue:i,rangeSelect:o,source:r}=e;if(t.length===0)return 0;const n=s&&i&&!o;if(!Is(this.gos)||n){if(t.length>1)throw new Error("AG Grid: cannot select multiple rows when rowSelection.mode is set to 'singleRow'");const a=t[0];return i&&a.selectable?(this.selectedNodes={[a.id]:a},this.selectedState={selectAll:!1,toggledNodes:new Set([a.id])}):(this.selectedNodes={},this.selectedState={selectAll:!1,toggledNodes:new Set}),a.selectable&&this.selectionCtx.setRoot(a.id),1}const l=(a,d=i)=>{d&&a.selectable?this.selectedNodes[a.id]=a:delete this.selectedNodes[a.id],d===this.selectedState.selectAll||!a.selectable?this.selectedState.toggledNodes.delete(a.id):this.selectedState.toggledNodes.add(a.id)};if(o){if(t.length>1)throw new Error("AG Grid: cannot select multiple rows when using rangeSelect");const a=t[0],d=this.overrideSelectionValue(i,r);if(this.selectionCtx.isInRange(a.id)){const c=this.selectionCtx.truncate(a.id);d&&c.discard.forEach(u=>l(u,!1)),c.keep.forEach(u=>l(u,d))}else if(this.selectionCtx.getRoot()!==a.id){const h=this.selectionCtx.extend(a.id);d&&h.discard.forEach(p=>l(p,!1)),h.keep.forEach(p=>l(p,d))}return 1}return t.forEach(a=>l(a)),this.selectionCtx.setRoot(W(t).id),1}processNewRow(e){this.selectedNodes[e.id]&&(this.selectedNodes[e.id]=e)}isNodeSelected(e){const t=this.selectedState.toggledNodes.has(e.id);return this.selectedState.selectAll?!t:t}getSelectedNodes(){return this.selectAllUsed&&R("getSelectedNodes and getSelectedRows functions cannot be used with select all functionality with the server-side row model.\n Use `api.getServerSideSelectionState()` instead."),Object.values(this.selectedNodes)}getSelectedRows(){return this.getSelectedNodes().map(e=>e.data)}getSelectionCount(){return this.selectedState.selectAll?-1:this.selectedState.toggledNodes.size}clearOtherNodes(e,t){const s=this.selectedState.selectAll?1:this.selectedState.toggledNodes.size-1;return this.selectedState={selectAll:!1,toggledNodes:new Set([e.id])},this.rowModel.forEachNode(i=>{i!==e&&i.selectThisNode(!1,void 0,t)}),this.eventService.dispatchEvent({type:"selectionChanged",source:t}),s}isEmpty(){var e;return!this.selectedState.selectAll&&!((e=this.selectedState.toggledNodes)!=null&&e.size)}selectAllRowNodes(){this.selectedState={selectAll:!0,toggledNodes:new Set},this.selectedNodes={},this.selectAllUsed=!0,this.selectionCtx.reset()}deselectAllRowNodes(){this.selectedState={selectAll:!1,toggledNodes:new Set},this.selectedNodes={},this.selectionCtx.reset()}getSelectAllState(){return this.selectedState.selectAll?this.selectedState.toggledNodes.size>0?null:!0:this.selectedState.toggledNodes.size>0?null:!1}},er=class extends b{constructor(){super(...arguments),this.selectionCtx=new Kc,this.selectedState={selectAllChildren:!1,toggledNodes:new Map}}wireBeans(e){this.rowModel=e.rowModel,this.funcColsService=e.funcColsService,this.filterManager=e.filterManager,this.selectionService=e.selectionService}postConstruct(){this.addManagedEventListeners({modelUpdated:()=>this.removeRedundantState(),columnRowGroupChanged:()=>this.selectionService.reset("rowGroupChanged")}),this.selectionCtx.init(this.rowModel)}getSelectedState(){const e=this.gos.get("treeData"),t=(s,i,o)=>{const r={nodeId:o};if((e||i<=this.funcColsService.getRowGroupColumns().length)&&(r.selectAllChildren=s.selectAllChildren),s.toggledNodes.size){const n=[];s.toggledNodes.forEach((l,a)=>{const d=t(l,i+1,a);n.push(d)}),r.toggledNodes=n}return r};return t(this.selectedState,0)}setSelectedState(e){if("selectAll"in e)return _("Invalid selection state. When `groupSelectsChildren` is enabled, the state must conform to `IServerSideGroupSelectionState`.");const t=(s,i)=>{var l;
264if(typeof s!="object")throw new Error("Each provided state object must be an object.");if("selectAllChildren"in s&&typeof s.selectAllChildren!="boolean")throw new Error("`selectAllChildren` must be a boolean value or undefined.");if("toggledNodes"in s){if(!Array.isArray(s.toggledNodes))throw new Error("`toggledNodes` must be an array.");if(!s.toggledNodes.every(d=>typeof d=="object"&&"nodeId"in d&&typeof d.nodeId=="string"))throw new Error("Every `toggledNode` requires an associated string id.")}const o=s.selectAllChildren??!i,r=(l=s.toggledNodes)==null?void 0:l.map(a=>[a.nodeId,t(a,o)]);if(r==null?void 0:r.some(([,a])=>o===a.selectAllChildren&&a.toggledNodes.size===0))throw new Error(` 265 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. 266 Please rebuild the selection state and reapply it. 267 `);return{selectAllChildren:o,toggledNodes:new Map(r)}};try{this.selectedState=t(e,!!e.selectAllChildren)}catch(s){_(s.message)}}deleteSelectionStateFromParent(e,t){let s=this.selectedState;const i=[...e];for(;s&&i.length;)s=s.toggledNodes.get(i.pop());if(!s)return!1;let o=!1;return t.forEach(r=>{s!=null&&s.toggledNodes.delete(r)&&(o=!0)}),o&&this.removeRedundantState(),o}overrideSelectionValue(e,t){if(!pn(t))return e;const s=this.selectionCtx.getRoot(),i=s?this.rowModel.getRowNode(s):null;return i?i.isSelected()??!1:!0}setNodesSelected({nodes:e,newValue:t,rangeSelect:s,clearSelection:i,source:o}){if(e.length===0)return 0;if(s){if(e.length>1)throw new Error("AG Grid: cannot select multiple rows when using rangeSelect");const n=e[0],l=this.overrideSelectionValue(t,o);if(this.selectionCtx.isInRange(n.id)){const a=this.selectionCtx.truncate(n.id);return l&&this.selectRange(a.discard,!1),this.selectRange(a.keep,l),1}else if(this.selectionCtx.getRoot()!==n.id){const c=this.selectionCtx.extend(n.id,!0);return l&&this.selectRange(c.discard,!1),this.selectRange(c.keep,l),1}return 1}const r=i&&t&&!s;if(!Is(this.gos)||r){if(e.length>1)throw new Error("AG Grid: cannot select multiple rows when rowSelection.mode is set to 'singleRow'");this.deselectAllRowNodes()}return e.forEach(n=>{const l=this.getRouteToNode(n);this.recursivelySelectNode(l,this.selectedState,t)}),this.removeRedundantState(),this.selectionCtx.setRoot(W(e).id),1}selectRange(e,t){const s=e.map(this.getRouteToNode).sort((o,r)=>r.length-o.length),i=new Set;s.forEach(o=>{i.has(W(o))||(o.forEach(r=>i.add(r)),this.recursivelySelectNode(o,this.selectedState,t))}),this.removeRedundantState()}isNodeSelected(e){const t=this.getRouteToNode(e);return this.isNodePathSelected(t,this.selectedState)}isNodePathSelected([e,...t],s){if(t.length===0){const i=s.toggledNodes.has(e.id);if(e.hasChildren()){const o=s.toggledNodes.get(e.id);if(o&&o.toggledNodes.size)return}return s.selectAllChildren?!i:i}if(s.toggledNodes.has(e.id)){const i=s.toggledNodes.get(e.id);if(i)return this.isNodePathSelected(t,i)}return s.selectAllChildren}getRouteToNode(e){const t=[];let s=e;for(;s.parent;)t.push(s),s=s.parent;return t.reverse()}removeRedundantState(){var t;if((t=this.filterManager)!=null&&t.isAnyFilterPresent())return;const e=(s=this.selectedState,i,o)=>{if(s.toggledNodes.forEach((l,a)=>{e(l,a,s)}),i){const l=this.rowModel.getRowNode(i),a=l==null?void 0:l.childStore;if((a==null?void 0:a.isLastRowIndexKnown())&&s.toggledNodes.size>=a.getRowCount()){for(const u of s.toggledNodes.entries()){const[h,p]=u;if(p.toggledNodes.size>0||!this.rowModel.getRowNode(h))return}s.selectAllChildren=!s.selectAllChildren,s.toggledNodes.clear()}}const r=s.toggledNodes.size===0,n=(o==null?void 0:o.selectAllChildren)===s.selectAllChildren;r&&n&&(o==null||o.toggledNodes.delete(i))};e()}recursivelySelectNode([e,...t],s,i){if(!e)return;if(!t.length){const l=e.selectable;if(s.selectAllChildren===i||!l){s.toggledNodes.delete(e.id);return}const d={selectAllChildren:i,toggledNodes:new Map};s.toggledNodes.set(e.id,d);return}const r=s.toggledNodes.has(e.id),n=s.toggledNodes.get(e.id)??{selectAllChildren:s.selectAllChildren,toggledNodes:new Map};r||s.toggledNodes.set(e.id,n),this.recursivelySelectNode(t,n,i),s.selectAllChildren===n.selectAllChildren&&n.toggledNodes.size===0&&s.toggledNodes.delete(e.id)}getSelectedNodes(){R("`getSelectedNodes` and `getSelectedRows` functions cannot be used with `groupSelectsChildren` and the server-side row model.\n Use `api.getServerSideSelectionState()` instead.");const e=[];return this.rowModel.forEachNode(t=>{t.isSelected()&&e.push(t)}),e}processNewRow(){}
267getSelectedRows(){return this.getSelectedNodes().map(e=>e.data)}getSelectionCount(){return-1}isEmpty(){var e;return!this.selectedState.selectAllChildren&&!((e=this.selectedState.toggledNodes)!=null&&e.size)}selectAllRowNodes(){this.selectedState={selectAllChildren:!0,toggledNodes:new Map},this.selectionCtx.reset()}deselectAllRowNodes(){this.selectedState={selectAllChildren:!1,toggledNodes:new Map},this.selectionCtx.reset()}getSelectAllState(){return this.selectedState.selectAllChildren?this.selectedState.toggledNodes.size>0?null:!0:this.selectedState.toggledNodes.size>0?null:!1}},hD=class extends b{constructor(){super(...arguments),this.beanName="selectionService"}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.addManagedPropertyListeners(["groupSelectsChildren","rowSelection"],()=>{const s=It(this.gos),i=s&&this.selectionStrategy instanceof Jo?er:!s&&this.selectionStrategy instanceof er?Jo:void 0;i&&(this.destroyBean(this.selectionStrategy),this.selectionStrategy=this.createManagedBean(new i),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}),this.addManagedPropertyListeners(["rowSelection"],()=>{const s=os(this.gos);s!==this.selectionMode&&(this.selectionMode=s,this.deselectAllRowNodes({source:"api"}))}),this.selectionMode=os(this.gos);const t=It(this.gos)?er:Jo;this.selectionStrategy=this.createManagedBean(new t)}getSelectionState(){return this.selectionStrategy.getSelectedState()}setSelectionState(e,t){Array.isArray(e)||(this.selectionStrategy.setSelectedState(e),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged(t))}setNodesSelected(e){const{nodes:t,...s}=e;if(t.length>1&&this.selectionMode!=="multiRow")return R("cannot multi select unless selection mode is 'multiRow'"),0;if(t.length>1&&e.rangeSelect)return R("cannot use range selection when multi selecting rows"),0;const i={nodes:t.filter(r=>r.selectable),...s};if(!i.nodes.length)return 0;const o=this.selectionStrategy.setNodesSelected(i);return this.shotgunResetNodeSelectionState(i.source),this.dispatchSelectionChanged(i.source),o}deleteSelectionStateFromParent(e,t){this.selectionStrategy.deleteSelectionStateFromParent(e,t)&&(this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}shotgunResetNodeSelectionState(e){this.rowModel.forEachNode(t=>{if(t.stub)return;const s=this.selectionStrategy.isNodeSelected(t);s!==t.isSelected()&&t.selectThisNode(s,void 0,e)})}getSelectedNodes(){return this.selectionStrategy.getSelectedNodes()}getSelectedRows(){return this.selectionStrategy.getSelectedRows()}getSelectionCount(){return this.selectionStrategy.getSelectionCount()}syncInRowNode(e){this.selectionStrategy.processNewRow(e);const t=this.selectionStrategy.isNodeSelected(e);if(t!=!1&&!e.selectable){this.selectionStrategy.setNodesSelected({nodes:[e],newValue:!1,source:"api"}),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api");return}e.setSelectedInitialValue(t)}reset(){this.selectionStrategy.deselectAllRowNodes({source:"api"})}isEmpty(){return this.selectionStrategy.isEmpty()}hasNodesToSelect(){return!0}selectAllRowNodes(e){if(Ul(e),Lr(this.gos)&&os(this.gos)!=="multiRow")return R("cannot multi select unless selection mode is 'multiRow'");this.selectionStrategy.selectAllRowNodes(e),this.rowModel.forEachNode(t=>{t.stub||t.selectThisNode(!0,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}deselectAllRowNodes(e){Ul(e),this.selectionStrategy.deselectAllRowNodes(e),this.rowModel.forEachNode(t=>{t.stub||t.selectThisNode(!1,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}getSelectAllState(e,t){return this.selectionStrategy.getSelectAllState(e,t)}updateGroupsFromChildrenSelections(){return!1}getBestCostNodeSelection(){R("calling gridApi.getBestCostNodeSelection() is only possible when using rowModelType=`clientSide`.")}filterFromSelection(){}dispatchSelectionChanged(e){this.eventService.dispatchEvent({type:"selectionChanged",source:e})}};function Ul({justCurrentPage:e,justFiltered:t}){(e||t)&&R(`selecting just ${e?"current page":"filtered"} only works when gridOptions.rowModelType='clientSide'`)}var pD=class extends b{constructor(){super(...arguments),this.beanName="ssrmStoreFactory"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}createStore(e,t){const s=this.getStoreParams(e,t),i=s.suppressInfiniteScroll?Dr:di;return new i(e,s,t)}getStoreParams(e,t){const s=this.getLevelSpecificParams(t),i=this.isInfiniteScroll(s),o=this.getBlockSize(i,s),r=this.getMaxBlocksInCache(i,e,s);return{suppressInfiniteScroll:!i,cacheBlockSize:o,maxBlocksInCache:r}}getMaxBlocksInCache(e,t,s){if(!e)return;const i=s&&s.maxBlocksInCache!=null?s.maxBlocksInCache:this.gos.get("maxBlocksInCache");if(i!=null&&i>=0){if(t.dynamicRowHeight){R("Server Side Row Model does not support Dynamic Row Height and Cache Purging. Either a) remove getRowHeight() callback or b) remove maxBlocksInCache property. Purging has been disabled.");return}if(this.columnModel.isAutoRowHeightActive()){R("Server Side Row Model does not support Auto Row Height and Cache Purging. Either a) remove colDef.autoHeight or b) remove maxBlocksInCache property. Purging has been disabled.");return}return i}}getBlockSize(e,t){if(!e)return;
267const s=t&&t.cacheBlockSize!=null?t.cacheBlockSize:this.gos.get("cacheBlockSize");return s!=null&&s>0?s:100}getLevelSpecificParams(e){const t=this.gos.getCallback("getServerSideGroupLevelParams");if(!t)return;const s={level:e.level+1,parentRowNode:e.level>=0?e:void 0,rowGroupColumns:this.funcColsService.getRowGroupColumns(),pivotColumns:this.funcColsService.getPivotColumns(),pivotMode:this.columnModel.isPivotMode()};return t(s)}isInfiniteScroll(e){return!(e&&e.suppressInfiniteScroll!=null?e.suppressInfiniteScroll:this.isSuppressServerSideInfiniteScroll())}isSuppressServerSideInfiniteScroll(){return this.gos.get("suppressServerSideInfiniteScroll")}},gD=class extends b{constructor(){super(...arguments),this.beanName="ssrmStoreUtils"}wireBeans(e){this.columnModel=e.columnModel,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}loadFromDatasource(e){const{storeParams:t,parentBlock:s,parentNode:i}=e,o=i.getRoute()??[];if(!t.datasource)return;const r={startRow:e.startRow,endRow:e.endRow,rowGroupCols:t.rowGroupCols,valueCols:t.valueCols,pivotCols:t.pivotCols,pivotMode:t.pivotMode,groupKeys:o,filterModel:t.filterModel,sortModel:t.sortModel},n=this.gos.addGridCommonParams({success:e.success,fail:e.fail,request:r,parentNode:e.parentNode});window.setTimeout(()=>{if(!t.datasource||!s.isAlive()){e.fail();return}t.datasource.getRows(n)},0)}getChildStore(e,t,s){if(Re(e))return t;const i=e[0],o=s(i);if(o){if(e.length===1&&!o.childStore){const l=this.serverSideRowModel.getParams();o.childStore=this.createBean(this.storeFactory.createStore(l,o))}const r=e.slice(1,e.length),n=o.childStore;return n?n.getChildStore(r):null}return null}isServerRefreshNeeded(e,t,s){if(s.valueColChanged||s.secondaryColChanged)return!0;const i=e.level+1;if(!(i<t.length))return!0;const n=t[i].id;return s.changedColumns.indexOf(n)>-1?!0:this.columnModel.getCols().filter(c=>c.getColDef().showRowGroup&&s.changedColumns.includes(c.getId())).map(c=>c.getColDef().showRowGroup).some(c=>c===!0||c===n)}getServerSideInitialRowCount(){return this.gos.get("serverSideInitialRowCount")}assertRowModelIsServerSide(e){return Ue(this.gos)?!0:(R(`The '${e}' property can only be used with the Server Side Row Model.`),!1)}assertNotTreeData(e){return this.gos.get("treeData")?(R(`The '${e}' property cannot be used while using tree data.`),!1):!0}isServerSideSortAllLevels(){return this.gos.get("serverSideSortAllLevels")&&this.assertRowModelIsServerSide("serverSideSortAllLevels")}isServerSideOnlyRefreshFilteredGroups(){return this.gos.get("serverSideOnlyRefreshFilteredGroups")&&this.assertRowModelIsServerSide("serverSideOnlyRefreshFilteredGroups")}isServerSideSortOnServer(){return this.gos.get("serverSideSortOnServer")&&this.assertRowModelIsServerSide("serverSideSortOnServer")&&this.assertNotTreeData("serverSideSortOnServer")}isServerSideFilterOnServer(){return this.gos.get("serverSideFilterOnServer")&&this.assertRowModelIsServerSide("serverSideFilterOnServer")&&this.assertNotTreeData("serverSideFilterOnServer")}},fD=class extends b{constructor(){super(...arguments),this.beanName="ssrmTransactionManager",this.asyncTransactions=[]}wireBeans(e){this.valueCache=e.valueCache,this.serverSideRowModel=e.rowModel,this.selectionService=e.selectionService}postConstruct(){Ue(this.gos)}applyTransactionAsync(e,t){this.asyncTransactionsTimeout==null&&this.scheduleExecuteAsync(),this.asyncTransactions.push({transaction:e,callback:t})}scheduleExecuteAsync(){const e=this.gos.get("asyncTransactionWaitMillis");this.asyncTransactionsTimeout=window.setTimeout(()=>{this.executeAsyncTransactions()},e)}executeAsyncTransactions(){if(!this.asyncTransactions)return;const e=[],t=[],s=[];let i=!1;this.asyncTransactions.forEach(o=>{let r;if(this.serverSideRowModel.executeOnStore(o.transaction.route,a=>{r=a.applyTransaction(o.transaction)})?r==null&&(r={status:We.StoreNotFound}):r={status:We.StoreNotStarted},t.push(r),r.status==We.StoreLoading){s.push(o);return}o.callback&&e.push(()=>o.callback(r)),r.status===We.Applied&&(i=!0)}),e.length>0&&window.setTimeout(()=>{e.forEach(o=>o())},0),this.asyncTransactionsTimeout=void 0,this.asyncTransactions=s,i&&(this.valueCache.onDataChanged(),this.eventService.dispatchEvent({type:"storeUpdated"})),t.length>0&&this.eventService.dispatchEvent({type:"asyncTransactionsFlushed",results:t})}flushAsyncTransactions(){this.asyncTransactionsTimeout!=null&&clearTimeout(this.asyncTransactionsTimeout),this.executeAsyncTransactions()}applyTransaction(e){let t;if(this.serverSideRowModel.executeOnStore(e.route,i=>{t=i.applyTransaction(e)}))if(t){if(this.valueCache.onDataChanged(),t.remove){const i=t.remove.map(o=>o.id);this.selectionService.deleteSelectionStateFromParent(e.route||[],i)}return this.eventService.dispatchEvent({type:"storeUpdated"}),t}else return{status:We.StoreNotFound};else return{status:We.StoreNotStarted}}},In="32.3.2",$c={version:In,moduleName:`${U.ServerSideRowModelModule}-core`,rowModel:"serverSide",beans:[tD,YM,ZM,gD,qM,JM,fD,QM,pD,XM,hD,uD,Tn],dependantModules:[ms,Lm]},mD={version:In,moduleName:`${U.ServerSideRowModelModule}-api`,beans:[nc],apiFunctions:{getServerSideSelectionState:sD,setServerSideSelectionState:iD,applyServerSideTransaction:oD,applyServerSideTransactionAsync:nD,applyServerSideRowData:rD,retryServerSideLoads:lD,flushServerSideAsyncTransactions:aD,refreshServerSide:dD,getServerSideGroupLevelState:cD},dependantModules:[$c,lc,Kw]},ex={version:In,moduleName:U.ServerSideRowModelModule,dependantModules:[$c,mD]},Le=class{};Le.SELECT_ALL="__AG_SELECT_ALL__";Le.ADD_SELECTION_TO_FILTER="__AG_ADD_SELECTION_TO_FILTER__";var CD={loadingOoo:"Loading...",blanks:"(Blanks)",searchOoo:"Search...",selectAll:"(Select All)",selectAllSearchResults:"(Select All Search Results)",addCurrentSelectionToFilter:"Add current selection to filter",noM
267atches:"No matches."},vD=class extends O{constructor(e){super(e.isGroup?` 268 <div class="ag-set-filter-item" aria-hidden="true"> 269 <span class="ag-set-filter-group-icons"> 270 <span class="ag-set-filter-group-closed-icon" data-ref="eGroupClosedIcon"></span> 271 <span class="ag-set-filter-group-opened-icon" data-ref="eGroupOpenedIcon"></span> 272 <span class="ag-set-filter-group-indeterminate-icon" data-ref="eGroupIndeterminateIcon"></span> 273 </span> 274 <ag-checkbox data-ref="eCheckbox" class="ag-set-filter-item-checkbox"></ag-checkbox> 275 </div>`:` 276 <div class="ag-set-filter-item"> 277 <ag-checkbox data-ref="eCheckbox" class="ag-set-filter-item-checkbox"></ag-checkbox> 278 </div>`,[hs]),this.eCheckbox=P,this.eGroupOpenedIcon=P,this.eGroupClosedIcon=P,this.eGroupIndeterminateIcon=P,this.focusWrapper=e.focusWrapper,this.value=e.value,this.params=e.params,this.translate=e.translate,this.valueFormatter=e.valueFormatter,this.item=e.item,this.isSelected=e.isSelected,this.isTree=e.isTree,this.depth=e.depth??0,this.isGroup=e.isGroup,this.groupsExist=e.groupsExist,this.isExpanded=e.isExpanded,this.hasIndeterminateExpandState=e.hasIndeterminateExpandState}wireBeans(e){this.valueService=e.valueService,this.userComponentFactory=e.userComponentFactory}postConstruct(){this.addDestroyFunc(()=>{var e;return(e=this.destroyCellRendererComponent)==null?void 0:e.call(this)}),this.render(),this.eCheckbox.setLabelEllipsis(!0).setValue(this.isSelected,!0).setDisabled(!!this.params.readOnly).getInputElement().setAttribute("tabindex","-1"),this.refreshVariableAriaLabels(),this.isTree&&(this.depth>0&&(this.addCssClass("ag-set-filter-indent-"+this.depth),this.getGui().style.setProperty("--ag-indentation-level",String(this.depth))),this.isGroup?this.setupExpansion():this.groupsExist&&this.addCssClass("ag-set-filter-add-group-indent"),Wr(this.getAriaElement(),this.depth+1)),this.refreshAriaChecked(),!this.params.readOnly&&this.eCheckbox.onValueChange(e=>this.onCheckboxChanged(!!e))}getFocusableElement(){return this.focusWrapper}setupExpansion(){this.eGroupClosedIcon.appendChild(Ps("setFilterGroupClosed",this.gos,null)),this.eGroupOpenedIcon.appendChild(Ps("setFilterGroupOpen",this.gos,null));const e=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(this.eGroupClosedIcon,{click:e}),this.addManagedElementListeners(this.eGroupOpenedIcon,{click:e}),this.hasIndeterminateExpandState&&(this.eGroupIndeterminateIcon.appendChild(Ps("setFilterGroupIndeterminate",this.gos,null)),this.addManagedElementListeners(this.eGroupIndeterminateIcon,{click:e})),this.setExpandedIcons(),this.refreshAriaExpanded()}onExpandOrContractClicked(){this.setExpanded(!this.isExpanded)}setExpanded(e,t){if(this.isGroup&&e!==this.isExpanded){this.isExpanded=e;const s={type:"expandedChanged",isExpanded:!!e,item:this.item};t||this.dispatchLocalEvent(s),this.setExpandedIcons(),this.refreshAriaExpanded()}}setExpandedIcons(){H(this.eGroupClosedIcon,this.hasIndeterminateExpandState?this.isExpanded===!1:!this.isExpanded),H(this.eGroupOpenedIcon,this.isExpanded===!0),this.hasIndeterminateExpandState&&H(this.eGroupIndeterminateIcon,this.isExpanded===void 0)}onCheckboxChanged(e){this.isSelected=e;const t={type:"selectionChanged",isSelected:e,item:this.item};this.dispatchLocalEvent(t),this.refreshVariableAriaLabels(),this.refreshAriaChecked()}toggleSelected(){this.params.readOnly||this.setSelected(!this.isSelected)}setSelected(e,t){this.isSelected=e,this.eCheckbox.setValue(e,t),this.refreshAriaChecked()}refreshVariableAriaLabels(){if(!this.isTree)return;const e=this.localeService.getLocaleTextFunc(),t=this.eCheckbox.getValue(),s=t===void 0?e("ariaIndeterminate","indeterminate"):t?e("ariaVisible","visible"):e("ariaHidden","hidden"),i=e("ariaToggleVisibility","Press SPACE to toggle visibility");Gs(this.eCheckbox.getInputElement(),void 0),this.eCheckbox.setInputAriaLabel(`${i} (${s})`)}setupFixedAriaLabels(e){if(!this.isTree)return;const s=this.localeService.getLocaleTextFunc()("ariaFilterValue","Filter Value"),i=this.getAriaElement();ze(i,`${e} ${s}`),Hr(i,this.eCheckbox.getInputElement().id)}refreshAriaChecked(){const e=this.getAriaElement();Zu(e,this.eCheckbox.getValue())}refreshAriaExpanded(){Ft(this.getAriaElement(),!!this.isExpanded)}refresh(e,t,s){var i,o;if(this.item=e,t!==this.isSelected&&this.setSelected(t,!0),this.setExpanded(s,!0),this.valueFunction){const r=this.valueFunction();this.setTooltipAndCellRendererParams(r,r),this.cellRendererComponent||this.renderCellWithoutCellRenderer()}if(this.cellRendererComponent&&!((o=(i=this.cellRendererComponent).refresh)==null?void 0:o.call(i,this.cellRendererParams))){const n=this.cellRendererComponent;this.renderCell(),this.destroyBean(n)}}render(){const{params:{column:e}}=this;let{value:t}=this,s=null;typeof t=="function"?(this.valueFunction=t,s=this.valueFunction(),t=s):this.isTree?s=xt(t):s=this.getFormattedValue(e,t),this.setTooltipAndCellRendererParams(t,s),this.renderCell()}setTooltipAndCellRendererParams(e,t){const s=this.gos.get("tooltipShowMode")==="whenTruncated";if(this.params.showTooltips&&(!s||!this.params.cellRenderer)){const i=t??xt(e);let o;s&&(o=()=>{const r=this.eCheckbox.getGui().querySelector(".ag-label");return r?r.scrollWidth>r.clientWidth:!0}),this.setTooltip({newTooltipText:i,location:"setFilterValue",getColDef:()=>this.params.colDef,getColumn:()=>this.params.column,shouldDisplayTooltip:o})}this.cellRendererParams=this.gos.addGridCommonParams({value:e,valueFormatted:t,colDef:this.params.colDef,column:this.params.column,setTooltip:(i,o)=>{this.setTooltip({newTooltipText:i,getColDef:()=>this.params.colDef,getColumn:()=>this.params.column,location:"setFilterValue",shouldDisplayTooltip:o})}})}getTooltipParams(){const e=super.getTooltipParams();return e.location="setFilterValue",e.colDef=this.getComponentHolder(),this.isTree&&(e.level=this.depth),e}getFormattedValue(e,t){return this.valueService.formatValue(e,null,t,this.valueFormatter,!1)}renderCell(){const e=this.userComponentFactory.getSetFilterCellRendererDetails(this.params,this.cellRendererParams),t=e?e.newAgStackInstance():void 0;if(t==null){this.renderCellWithoutCellRenderer();return}t.then(s=>{s&&(this.cellRendererComponent=s,this.eCheckbox.setLabel(s.getGui()),this.destroyCellRendererComponent=()=>this.destroyBean(s))})}renderCellWithoutCellRenderer(){let e=(this.cellRendererParams.valueFormatted==null?this.cellRendererParams.value:this.cellRendererParams.valueFormatted)??this.translate("blanks");typeof e!="string"&&(R(`Set Filter Value Formatter must return string values. Please ensure the Set Filter Value Formatter returns string values for complex objects. See ${this.getFrameworkOverrides().getDocLink("filter-set-filter-list/#filter-value-types")}`),e=""),this.eCheckbox.setLabel(e),this.setupFixedAriaLabels(e)}getComponentHolder(){return this.params.column.getColDef()}},jc=class{getModelAsString(e,t){const{values:s}=e||t.getModel()||{},i=t.getValueModel();if(s==null||i==null)return"";const o=s.filter(l=>
278i.isKeyAvailable(l)),r=o.length,n=o.slice(0,10).map(l=>t.getFormattedValue(l));return`(${r}) ${n.join(",")}${r>10?",...":""}`}};function xr(e,t,s){let i=e;return i?(i=i.map(o=>xt(Oe(o))),!t&&s&&i.some(o=>o==null)?W(i)==null?null:i.filter(o=>o!=null):i):null}var SD=class{constructor(e,t,s,i,o,r,n,l,a,d,c){this.rowModel=e,this.filterParams=t,this.createKey=s,this.caseFormat=i,this.funcColsService=o,this.valueService=r,this.treeDataOrGrouping=n,this.treeData=l,this.getDataPath=a,this.groupAllowUnbalanced=d,this.addManagedEventListeners=c}extractUniqueValuesAsync(e,t){return new K(s=>{if(this.rowModel.isRowDataLoaded())s(this.extractUniqueValues(e,t));else{const[i]=this.addManagedEventListeners({rowCountReady:()=>{i==null||i(),s(this.extractUniqueValues(e,t))}})}})}extractUniqueValues(e,t){const s=new Map,i=this.extractExistingFormattedKeys(t),o=new Set,r=this.treeData&&!!this.getDataPath,n=this.funcColsService.getRowGroupColumns(),l=(a,d)=>{const c=this.caseFormat(a);if(!o.has(c)){o.add(c);let u=a,h=Oe(d);const p=i==null?void 0:i.get(c);p!=null&&(u=p,h=t.get(p)),s.set(u,h)}};return this.rowModel.forEachLeafNode(a=>{if(!a.data||!e(a))return;if(this.treeDataOrGrouping){this.addValueForTreeDataOrGrouping(a,r,n,l);return}const d=this.getValue(a);d!=null&&Array.isArray(d)?(d.forEach(c=>{l(this.createKey(c,a),c)}),d.length===0&&l(null,null)):l(this.createKey(d,a),d)}),s}addValueForTreeDataOrGrouping(e,t,s,i){var n;let o;if(t){if((n=e.childrenAfterGroup)!=null&&n.length)return;o=this.getDataPath(e.data)}else o=s.map(l=>this.valueService.getKeyForNode(l,e)),o.push(this.getValue(e));const r=xr(o,t,this.groupAllowUnbalanced);i(this.createKey(r),r)}getValue(e){return this.filterParams.getValue(e)}extractExistingFormattedKeys(e){if(!e)return null;const t=new Map;return e.forEach((s,i)=>{t.set(this.caseFormat(i),i)}),t}},wD=class{constructor({caseFormat:e}){this.filteringKeys=null,this.filteringKeysCaseFormatted=null,this.hasNoAppliedFilteringKeys=!1,this.caseFormat=e}allFilteringKeys(){return this.filteringKeys}allFilteringKeysCaseFormatted(){return this.filteringKeysCaseFormatted}noAppliedFilteringKeys(){return this.hasNoAppliedFilteringKeys}setFilteringKeys(e){this.filteringKeys=new Set(e),this.hasNoAppliedFilteringKeys=!this.filteringKeys||this.filteringKeys.size===0,this.filteringKeysCaseFormatted=new Set,this.filteringKeys.forEach(t=>this.filteringKeysCaseFormatted.add(this.caseFormat(t)))}addFilteringKey(e){this.filteringKeys==null&&(this.filteringKeys=new Set,this.filteringKeysCaseFormatted=new Set),this.filteringKeys.add(e),this.filteringKeysCaseFormatted.add(this.caseFormat(e)),this.hasNoAppliedFilteringKeys&&(this.hasNoAppliedFilteringKeys=!1)}hasCaseFormattedFilteringKey(e){return this.filteringKeysCaseFormatted.has(this.caseFormat(e))}hasFilteringKey(e){return this.filteringKeys.has(e)}reset(){this.filteringKeys=null,this.filteringKeysCaseFormatted=null,this.hasNoAppliedFilteringKeys=!1}},yD=class{constructor(e,t,s,i){this.valueService=e,this.valueFormatter=t,this.formatter=s,this.column=i,this.displayedKeys=[]}updateDisplayedValuesToAllAvailable(e,t,s){this.displayedKeys=Array.from(s)}updateDisplayedValuesToMatchMiniFilter(e,t,s,i,o){this.displayedKeys=[];for(const r of s)if(r==null)o&&this.displayedKeys.push(r);else{const n=e(r),l=this.valueService.formatValue(this.column,null,n,this.valueFormatter,!1),a=this.formatter(l);i(a)&&this.displayedKeys.push(r)}}getDisplayedValueCount(){return this.displayedKeys.length}getDisplayedItem(e){return this.displayedKeys[e]}getSelectAllItem(){return Le.SELECT_ALL}getAddSelectionToFilterItem(){return Le.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(){}},RD=e=>e?[String(e.getFullYear()),String(e.getMonth()+1),String(e.getDate())]:null,_l=class{constructor(e,t,s,i){this.formatter=e,this.treeListPathGetter=t,this.treeListFormatter=s,this.treeDataOrGrouping=i,this.allDisplayedItemsTree=[],this.activeDisplayedItemsFlat=[],this.selectAllItem={depth:0,filterPasse
278s:!0,available:!0,treeKey:Le.SELECT_ALL,children:this.allDisplayedItemsTree,expanded:!0,key:Le.SELECT_ALL,parentTreeKeys:[]},this.addSelectionToFilterItem={depth:0,filterPasses:!0,available:!0,treeKey:Le.ADD_SELECTION_TO_FILTER,expanded:!0,key:Le.ADD_SELECTION_TO_FILTER,parentTreeKeys:[]}}updateOnParamsChange(e){this.treeListFormatter=e}updateDisplayedValuesToAllAvailable(e,t,s,i){i==="reload"?this.generateItemTree(e,t,s):i==="otherFilter"?(this.updateAvailable(s),this.updateExpandAll()):i==="miniFilter"&&(this.resetFilter(),this.updateExpandAll()),this.flattenItems()}updateDisplayedValuesToMatchMiniFilter(e,t,s,i,o,r){r==="reload"?this.generateItemTree(e,t,s):r==="otherFilter"&&this.updateAvailable(s),this.updateFilter(i,o),this.updateExpandAll(),this.flattenItems()}generateItemTree(e,t,s){this.allDisplayedItemsTree=[],this.groupsExist=!1;const i=this.getTreeListPathGetter(e,s);for(const o of t){const r=e(o),n=i(r)??[null];n.length>1&&(this.groupsExist=!0);const l=s.has(o);let a=this.allDisplayedItemsTree,d,c=[];n.forEach((u,h)=>{a||(a=[],d.children=a),d=a.find(p=>{var g;return((g=p.treeKey)==null?void 0:g.toUpperCase())===(u==null?void 0:u.toUpperCase())}),d||(d={treeKey:u,depth:h,filterPasses:!0,expanded:!1,available:l,parentTreeKeys:c},h===n.length-1&&(d.key=o),a.push(d)),a=d.children,c=[...c,u]})}this.updateAvailable(s),this.selectAllItem.children=this.allDisplayedItemsTree,this.selectAllItem.expanded=!1}getTreeListPathGetter(e,t){if(this.treeListPathGetter)return this.treeListPathGetter;if(this.treeDataOrGrouping)return i=>i;let s=!1;for(const i of t){const o=e(i);if(o instanceof Date){s=!0;break}else if(o!=null)break}return s?RD:(R("property treeList=true for Set Filter params, but you did not provide a treeListPathGetter or values of type Date."),i=>[String(i)])}flattenItems(){this.activeDisplayedItemsFlat=[];const e=t=>{t.forEach(s=>{!s.filterPasses||!s.available||(this.activeDisplayedItemsFlat.push(s),s.children&&s.expanded&&e(s.children))})};e(this.allDisplayedItemsTree)}resetFilter(){const e=t=>{t.children&&t.children.forEach(s=>{e(s)}),t.filterPasses=!0};this.allDisplayedItemsTree.forEach(t=>e(t))}updateFilter(e,t){const s=i=>i.available?i.treeKey==null?t:e(this.formatter(this.treeListFormatter?this.treeListFormatter(i.treeKey,i.depth,i.parentTreeKeys):i.treeKey)):!1;this.allDisplayedItemsTree.forEach(i=>this.recursiveItemCheck(i,!1,s,"filterPasses"))}getDisplayedValueCount(){return this.activeDisplayedItemsFlat.length}getDisplayedItem(e){return this.activeDisplayedItemsFlat[e]}getSelectAllItem(){return this.selectAllItem}getAddSelectionToFilterItem(){return this.addSelectionToFilterItem}getDisplayedKeys(){const e=[];return this.forEachDisplayedKey(t=>e.push(t)),e}forEachDisplayedKey(e){const t=(s,i)=>{s.children?(!s.expanded||!i)&&s.children.forEach(o=>{o.filterPasses&&t(o,!1)}):e(s.key)};this.activeDisplayedItemsFlat.forEach(s=>t(s,!0))}someDisplayedKey(e){const t=(s,i)=>{if(s.children){if(!s.expanded||!i)return s.children.some(o=>o.filterPasses?t(o,!1):!1)}else return e(s.key);return!1};return this.activeDisplayedItemsFlat.some(s=>t(s,!0))}hasGroups(){return this.groupsExist}refresh(){this.updateExpandAll(),this.flattenItems()}updateExpandAll(){const e=(s,i,o)=>{for(const r of s){if(!r.filterPasses||!r.available||!r.children)continue;if(i=i||!!r.expanded,o=o||!r.expanded,i&&o)return;const n=e(r.children,i,o);if(n===void 0)return;n?i=!0:o=!0}return i&&o?void 0:i},t=this.getSelectAllItem();t.expanded=e(t.children,!1,!1)}recursiveItemCheck(e,t,s,i){let o=!1;e.children&&e.children.forEach(n=>{const l=this.recursiveItemCheck(n,t||s(e),s,i);o=o||l});const r=t||o||s(e);return e[i]=r,r}updateAvailable(e){const t=s=>e.has(s.key);this.allDisplayedItemsTree.forEach(s=>this.recursiveItemCheck(s,!1,t,"available"))}},bD=class{constructor(e){this.localEventService=new qt,this.miniFilterText=null,this.addCurrentSelectionToFilter=!1,this.providedValues=null,this.allValues=new Map,this.availableKeys=new Set,this.selectedKeys=new Set,this.initialised=!1;const{usingComplexObjects:t,funcColsService:s,valueService:i,treeDataTreeList:o,groupingTreeList:r,filterParams:n,gos:l,valueFormatter:a,addManagedEventListeners:d}=e,{column:c,colDef:u,textFormatter:h,doesRowPassOtherFilter:p,suppressSorting:g,comparator:f,rowModel:m,values:v,caseSensitive:y,treeList:w,treeListPathGetter:F,treeListFormatter:D}=n;this.filterParams=n,this.gos=l,this.setIsLoading=e.setIsLoading,this.translate=e.translate,this.caseFormat=e.caseFormat,this.createKey=e.createKey,this.usingComplexObjects=!!e.usingComplexObjects,this.formatter=h??(k=>k??null),this.doesRowPassOtherFilters=p,this.suppressSorting=g||!1,this.filteringKeys=new wD({caseFormat:this.caseFormat});const M=f??u.comparator,x=!!o||!!r;this.compareByValue=!!(t&&M||x||w&&!F),x&&!M?this.entryComparator=this.createTreeDataOrGroupingComparator():w&&!F&&!M?this.entryComparator=([k,L],[B,J])=>Hi(L,J):this.entryComparator=([k,L],[B,J])=>M(L,J),this.keyComparator=M??Hi,this.caseSensitive=!!y;const I=l.get("getDataPath"),G=l.get("groupAllowUnbalanced");re(l)&&(this.clientSideValuesExtractor=new SD(m,this.filterParams,this.createKey,this.caseFormat,s,i,x,!!o,I,G,d)),v==null?this.valuesType=2:(this.valuesType=Array.isArray(v)?0:1,this.providedValues=v),this.displayValueModel=w?new _l(this.formatter,F,D,o||r):new yD(i,a,this.formatter,c),this.updateAllValues().then(k=>this.resetSelectionState(k||[]))}addEventListener(e,t,s){this.localEventService.addEventListener(e,t,s)}removeEventListener(e,t,s){this.localEventService.removeEventListener(e,t,s)}updateOnParamsChange(e){return new K(t=>{const{values:s,textFormatter:i,suppressSorting:o,treeListFormatter:r}=e,n=this.providedValues,l=this.suppressSorting;if(this.filterParams=e,this.formatter=i??(a=>a??null),this.suppressSorting=o||!1,this.providedValues=s??null,this.displayValueModel instanceof _l&&this.displayValueModel.updateOnParamsChange(r),this.providedValues!==n||this.suppressSorting!==l){!s||s.length===0?(this.valuesType=2,this.providedValues=null):this.valuesType=Array.isArray(s)?0:1;const a=this.getModel();this.updateAllValues().then(()=>{this.setModel(a).then(()=>t())})}else t()})}refreshValues(){return new K(e=>{this.allValuesPromise.then(()=>{const t=this.getModel();this.updateAllValues(),this.setModel(t).then(()=>e())})})}overrideValues(e){return new K(t=>{this.allValuesPromise.then(()=>{this.valuesType=0,this.providedValues=e,this.refreshValues().then(()=>t())})})}refreshAfterAnyFilterChanged(){return this.showAvailableOnly()?this.allValuesPromise.then(e=>(this.updateAvailableKeys(e??[],"otherFilter"),!0)):K.resolve(!1)}isInitialised(){return this.initialised}updateAllValues(){return this.allValuesPromise=new K(e=>{switch(this.valuesType){case 2:this.getValuesFromRowsAsync(!1).then(t=>e(this.processAllValues(t)));break;case 0:{e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(this.providedValues))));break}case 1:{this.setIsLoading(!0);const t=this.providedValues,{column:s,colDef:i}=this.filterParams,o=this.gos.addGridCommonParams({success:r=>{this.setIsLoading(!1),e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(r))))},colDef:i,column:s});window.setTimeout(()=>t(o),0);break}default:throw new Error("Unrecognised valuesType")}}),this.allValuesPromise.then(e=>this.updateAvailableKeys(e||[],"reload")).then(()=>this.initialised=!0),this.allValuesPromise}processAllValues(e){const t=this.sortKeys(e);return this.allValues=e??new Map,t}
278validateProvidedValues(e){if(this.usingComplexObjects&&(e!=null&&e.length)){const t=e[0];t&&typeof t!="object"&&typeof t!="function"&&(this.createKey(t)==null?R("Set Filter Key Creator is returning null for provided values and provided values are primitives. Please provide complex objects. See https://www.ag-grid.com/javascript-data-grid/filter-set-filter-list/#filter-value-types"):R("Set Filter has a Key Creator, but provided values are primitives. Did you mean to provide complex objects?"))}return e}setValuesType(e){this.valuesType=e}getValuesType(){return this.valuesType}isKeyAvailable(e){return this.availableKeys.has(e)}showAvailableOnly(){return this.valuesType===2}updateAvailableKeys(e,t){const s=this.showAvailableOnly()?this.sortKeys(this.getValuesFromRows(!0)):e;this.availableKeys=new Set(s),this.localEventService.dispatchEvent({type:"availableValuesChanged"}),this.updateDisplayedValues(t,e)}sortKeys(e){const t=e??new Map;if(this.suppressSorting)return Array.from(t.keys());let s;return this.compareByValue?s=Array.from(t.entries()).sort(this.entryComparator).map(([i])=>i):s=Array.from(t.keys()).sort(this.keyComparator),this.filterParams.excelMode&&t.has(null)&&(s=s.filter(i=>i!=null),s.push(null)),s}getParamsForValuesFromRows(e=!1){if(!this.clientSideValuesExtractor)return _("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"),null;const t=i=>!e||this.doesRowPassOtherFilters(i),s=e&&!this.caseSensitive?this.allValues:void 0;return{predicate:t,existingValues:s}}getValuesFromRows(e=!1){const t=this.getParamsForValuesFromRows(e);return t?this.clientSideValuesExtractor.extractUniqueValues(t.predicate,t.existingV
278alues):null}getValuesFromRowsAsync(e=!1){const t=this.getParamsForValuesFromRows(e);return t?this.clientSideValuesExtractor.extractUniqueValuesAsync(t.predicate,t.existingValues):K.resolve(null)}setMiniFilter(e){return e=Oe(e),this.miniFilterText===e?!1:(e===null&&this.setAddCurrentSelectionToFilter(!1),this.miniFilterText=e,this.updateDisplayedValues("miniFilter"),!0)}getMiniFilter(){return this.miniFilterText}updateDisplayedValues(e,t){if(e==="expansion"){this.displayValueModel.refresh();return}if(this.miniFilterText==null){this.displayValueModel.updateDisplayedValuesToAllAvailable(r=>this.getValue(r),t,this.availableKeys,e);return}const s=this.caseFormat(this.formatter(this.miniFilterText)||""),i=r=>r!=null&&this.caseFormat(r).indexOf(s)>=0,o=!!this.filterParams.excelMode&&i(this.translate("blanks"));this.displayValueModel.updateDisplayedValuesToMatchMiniFilter(r=>this.getValue(r),t,this.availableKeys,i,o,e)}getDisplayedValueCount(){return this.displayValueModel.getDisplayedValueCount()}getDisplayedItem(e){return this.displayValueModel.getDisplayedItem(e)}getSelectAllItem(){return this.displayValueModel.getSelectAllItem()}getAddSelectionToFilterItem(){return this.displayValueModel.getAddSelectionToFilterItem()}hasSelections(){return this.filterParams.defaultToNothingSelected?this.selectedKeys.size>0:this.allValues.size!==this.selectedKeys.size}getKeys(){return Array.from(this.allValues.keys())}getValues(){return Array.from(this.allValues.values())}getValue(e){return this.allValues.get(e)}setAddCurrentSelectionToFilter(e){this.addCurrentSelectionToFilter=e}isInWindowsExcelMode(){return this.filterParams.excelMode==="windows"}isAddCurrentSelectionToFilterChecked(){return this.isInWindowsExcelMode()&&this.addCurrentSelectionToFilter}showAddCurrentSelectionToFilter(){return this.isInWindowsExcelMode()&&E(this.miniFilterText)&&this.miniFilterText.length>0}selectAllMatchingMiniFilter(e=!1){this.miniFilterText==null?this.selectedKeys=new Set(this.allValues.keys()):(e&&this.selectedKeys.clear(),this.displayValueModel.forEachDisplayedKey(t=>this.selectedKeys.add(t)))}deselectAllMatchingMiniFilter(){this.miniFilterText==null?this.selectedKeys.clear():this.displayValueModel.forEachDisplayedKey(e=>this.selectedKeys.delete(e))}selectKey(e){this.selectedKeys.add(e)}deselectKey(e){this.filterParams.excelMode&&this.isEverythingVisibleSelected()&&this.resetSelectionState(this.displayValueModel.getDisplayedKeys()),this.selectedKeys.delete(e)}isKeySelected(e){return this.selectedKeys.has(e)}isEverythingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>!this.isKeySelected(e))}isNothingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>this.isKeySelected(e))}getModel(){if(!this.hasSelections())return null;const e=this.isAddCurrentSelectionToFilterChecked()?this.filteringKeys.allFilteringKeys():null;if(e&&e.size>0){if(this.selectedKeys){const t=new Set([...Array.from(e),...Array.from(this.selectedKeys).filter(s=>!e.has(s))]);return Array.from(t)}return Array.from(e)}return Array.from(this.selectedKeys)}setModel(e){return this.allValuesPromise.then(t=>{if(e==null)this.resetSelectionState(t??[]);else{this.selectedKeys.clear();const s=new Map;this.allValues.forEach((i,o)=>{s.set(this.caseFormat(o),o)}),e.forEach(i=>{const o=this.caseFormat(Oe(i)),r=s.get(o);r!==void 0&&this.selectKey(r)})}})}uniqueValues(e){const t=new Map,s=new Set;return(e??[]).forEach(i=>{const o=Oe(i),r=this.createKey(o),n=this.caseFormat(r);s.has(n)||(s.add(n),t.set(r,o))}),t}resetSelectionState(e){this.filterParams.defaultToNothingSelected?this.selectedKeys.clear():this.selectedKeys=new Set(e)}hasGroups(){return this.displayValueModel.hasGroups()}createTreeDataOrGroupingComparator(){return([e,t],[s,i])=>{if(t==null)return i==null?0:-1;if(i==null)return 1;for(let o=0;o<t.length;o++){if(o>=i.length)return 1;const r=Hi(t[o],i[o]);if(r!==0)return r}return 0}}setAppliedModelKeys(e){this.filteringKeys.setFilteringKeys(e)}addToAppliedModelKeys(e){this.filteringKeys.addFilteringKey(e)}getAppliedModelKeys(){return this.filteringKeys.allFilteringKeys()}getCaseFormattedAppliedModelKeys(){return this.filteringKeys.allFilteringKeysCaseFormatted()}hasAppliedModelKey(e){return this.filteringKeys.hasCaseFormattedFilteringKey(e)}hasAnyAppliedModelKey(){return!this.filteringKeys.noAppliedFilteringKeys()}},qc=class extends ja{constructor(){super("setFilter"),this.eMiniFilter=P,this.eFilterLoading=P,this.eSetFilterList=P,this.eFilterNoMatches=P,this.valueModel=null,this.setFilterParams=null,this.virtualList=null,this.caseSensitive=!1,this.treeDataTreeList=!1,this.groupingTreeList=!1,this.hardRefreshVirtualList=!1,this.noValueFormatterSupplied=!1,this.filterModelFormatter=new jc,this.updateSetFilterOnParamsChange=e=>{this.setFilterParams=e,this.caseSensitive=!!e.caseSensitive;const t=e.keyCreator??e.colDef.keyCreator;this.setValueFormatter(e.valueFormatter,t,!!e.treeList,!!e.colDef.refData);const s=e.column.getId().startsWith(as);this.treeDataTreeList=this.gos.get("treeData")&&!!e.treeList&&s,this.getDataPath=this.gos.get("getDataPath"),this.groupingTreeList=!!this.funcColsService.getRowGroupColumns().length&&!!e.treeList&&s,this.createKey=this.generateCreateKey(t,this.treeDataTreeList||this.groupingTreeList)}}wireBeans(e){super.wireBeans(e),this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.dataTypeService=e.dataTypeService}
278postConstruct(){super.postConstruct()}updateUiVisibility(){}createBodyTemplate(){return` 279 <div class="ag-set-filter"> 280 <div data-ref="eFilterLoading" class="ag-filter-loading ag-hidden">${this.translateForSetFilter("loadingOoo")}</div> 281 <ag-input-text-field class="ag-mini-filter" data-ref="eMiniFilter"></ag-input-text-field> 282 <div data-ref="eFilterNoMatches" class="ag-filter-no-matches ag-hidden">${this.translateForSetFilter("noMatches")}</div> 283 <div data-ref="eSetFilterList" class="ag-set-filter-list" role="presentation"></div> 284 </div>`}getAgComponents(){return[ps]}handleKeyDown(e){if(super.handleKeyDown(e),!e.defaultPrevented)switch(e.key){case S.SPACE:this.handleKeySpace(e);break;case S.ENTER:this.handleKeyEnter(e);break;case S.LEFT:this.handleKeyLeft(e);break;case S.RIGHT:this.handleKeyRight(e);break}}handleKeySpace(e){var t;(t=this.getComponentForKeyEvent(e))==null||t.toggleSelected()}handleKeyEnter(e){if(!this.setFilterParams)return;const{excelMode:t,readOnly:s}=this.setFilterParams||{};!t||s||(e.preventDefault(),this.onBtApply(!1,!1,e),this.setFilterParams.excelMode==="mac"&&this.eMiniFilter.getInputElement().select())}handleKeyLeft(e){var t;(t=this.getComponentForKeyEvent(e))==null||t.setExpanded(!1)}handleKeyRight(e){var t;(t=this.getComponentForKeyEvent(e))==null||t.setExpanded(!0)}getComponentForKeyEvent(e){if(!this.eSetFilterList.contains(Q(this.gos))||!this.virtualList)return;const t=this.virtualList.getLastFocusedRow();if(t==null)return;const s=this.virtualList.getComponentAt(t);if(s==null)return;e.preventDefault();const{readOnly:i}=this.setFilterParams??{};if(!i)return s}getCssIdentifier(){return"set-filter"}setModel(e){var t;return e==null&&((t=this.valueModel)==null?void 0:t.getModel())==null?(this.setMiniFilter(null),K.resolve()):super.setModel(e)}refresh(e){var i;if(this.applyExcelModeOptions(e),!super.refresh(e))return!1;const t=this.setFilterParams;return["treeList","treeListPathGetter","caseSensitive","comparator","excelMode"].some(o=>e[o]!==(t==null?void 0:t[o]))||this.haveColDefParamsChanged(e)?!1:(super.updateParams(e),this.updateSetFilterOnParamsChange(e),this.updateMiniFilter(),e.suppressSelectAll!==(t==null?void 0:t.suppressSelectAll)&&this.createVirtualListModel(e),(i=this.valueModel)==null||i.updateOnParamsChange(e).then(()=>{this.refreshFilterValues()}),!0)}haveColDefParamsChanged(e){const{colDef:t,keyCreator:s}=e,{colDef:i,keyCreator:o}=this.setFilterParams??{},r=s??t.keyCreator,n=o??(i==null?void 0:i.keyCreator),l=t.filterValueGetter!==(i==null?void 0:i.filterValueGetter),a=r!==n,d=!!this.dataTypeService&&!!r&&this.dataTypeService.getFormatValue(t.cellDataType)===r&&t.valueFormatter!==(i==null?void 0:i.valueFormatter);return l||a||d}setModelAndRefresh(e){return this.valueModel?this.valueModel.setModel(e).then(()=>{this.isAlive()&&this.checkAndRefreshVirtualList()}):K.resolve()}resetUiToDefaults(){return this.setMiniFilter(null),this.setModelAndRefresh(null)}setModelIntoUi(e){this.setMiniFilter(null);const t=e==null?null:e.values;return this.setModelAndRefresh(t)}getModelFromUi(){if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getModel();return e?{values:e,filterType:this.getFilterType()}:null}getFilterType(){return"set"}getValueModel(){return this.valueModel}areModelsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&Je(e.values,t.values)}setParams(e){this.applyExcelModeOptions(e),super.setParams(e),this.updateSetFilterOnParamsChange(e);const t=e.keyCreator??e.colDef.keyCreator;this.valueModel=new bD({filterParams:e,setIsLoading:s=>this.setIsLoading(s),translate:s=>this.translateForSetFilter(s),caseFormat:s=>this.caseFormat(s),createKey:this.createKey,valueFormatter:this.valueFormatter,usingComplexObjects:!!t,gos:this.gos,funcColsService:this.funcColsService,valueService:this.valueService,treeDataTreeList:this.treeDataTreeList,groupingTreeList:this.groupingTreeList,addManagedEventListeners:s=>this.addManagedEventListeners(s)}),this.initialiseFilterBodyUi(),this.addEventListenersForDataChanges()}onAddCurrentSelectionToFilterChange(e){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.setAddCurrentSelectionToFilter(e)}setValueFormatter(e,t,s,i){let o=e;if(!o){if(t&&!s)throw new Error("AG Grid: Must supply a Value Formatter in Set Filter params when using a Key Creator");this.noValueFormatterSupplied=!0,i||(o=r=>xt(r.value))}this.valueFormatter=o}generateCreateKey(e,t){if(t&&!e)throw new Error("AG Grid: Must supply a Key Creator in Set Filter params when `treeList = true` on a group column, and Tree Data or Row Grouping is enabled.");return e?(s,i=null)=>{const o=this.getKeyCreatorParams(s,i);return Oe(e(o))}:s=>Oe(xt(s))}getFormattedValue(e){let t=this.valueModel.getValue(e);this.noValueFormatterSupplied&&(this.treeDataTreeList||this.groupingTreeList)&&Array.isArray(t)&&(t=W(t));const s=this.valueService.formatValue(this.setFilterParams.column,null,t,this.valueFormatter,!1);return s??xt(t)??this.translateForSetFilter("blanks")}applyExcelModeOptions(e){e.excelMode==="windows"?(e.buttons||(e.buttons=["apply","cancel"]),e.closeOnApply==null&&(e.closeOnApply=!0)):e.excelMode==="mac"&&(e.buttons||(e.buttons=["reset"]),e.applyMiniFilterWhileTyping==null&&(e.applyMiniFilterWhileTyping=!0),e.debounceMs==null&&(e.debounceMs=500)),e.excelMode&&e.defaultToNothingSelected&&(e.defaultToNothingSelected=!1,R('The Set Filter Parameter "defaultToNothingSelected" value was ignored because it does not work when "excelMode" is used.'))}addEventListenersForDataChanges(){this.isValuesTakenFromGrid()&&(this.addManagedEventListeners({cellValueChanged:e=>{this.setFilterParams&&e.column===this.setFilterParams.column&&this.syncAfterDataChange()}}),this.addManagedPropertyListeners(["treeData","getDataPath","groupAllowUnbalanced"],()=>{this.syncAfterDataChange()}))}syncAfterDataChange(){if(!this.valueModel)throw new Error("Value model has not been created.");return this.valueModel.refreshValues().then(()=>{this.checkAndRefreshVirtualList(),(!this.applyActive||this.areModelsEqual(this.getModel(),this.getModelFromUi()))&&this.onBtApply(!1,!0)})}setIsLoading(e){H(this.eFilterLoading,e),e||(this.hardRefreshVirtualList=!0)}initialiseFilterBodyUi(){this.initVirtualList(),this.initMiniFilter()}initVirtualList(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const t=this.localeService.getLocaleTextFunc()("ariaFilterList","Filter List"),s=!!this.setFilterParams.treeList,i=this.virtualList=this.createBean(new mn({cssIdentifier:"filter",ariaRole:s?"tree":"listbox",listName:t})),o=this.eSetFilterList;s&&o.classList.add("ag-set-filter-tree-list"),o&&o.appendChild(i.getGui());const{cellHeight:r}=this.setFilterParams;r!=null&&i.setRowHeight(r);const n=(a,d)=>
284this.createSetListItem(a,s,d);i.setComponentCreator(n);const l=(a,d)=>this.updateSetListItem(a,d);i.setComponentUpdater(l),this.createVirtualListModel(this.setFilterParams)}createVirtualListModel(e){var s;if(!this.valueModel)return;let t;e.suppressSelectAll?t=new FD(this.valueModel):t=new PD(this.valueModel,()=>this.isSelectAllSelected()),e.treeList&&(t=new ED(t)),(s=this.virtualList)==null||s.setModel(t)}getSelectAllLabel(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getMiniFilter()==null||!this.setFilterParams.excelMode?"selectAll":"selectAllSearchResults";return this.translateForSetFilter(e)}getAddSelectionToFilterLabel(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");return this.translateForSetFilter("addCurrentSelectionToFilter")}createSetListItem(e,t,s){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const i=this.valueModel.hasGroups(),{isSelected:o,isExpanded:r}=this.isSelectedExpanded(e),{value:n,depth:l,isGroup:a,hasIndeterminateExpandState:d,selectedListener:c,expandedListener:u}=this.newSetListItemAttributes(e),h={focusWrapper:s,value:n,params:this.setFilterParams,translate:g=>this.translateForSetFilter(g),valueFormatter:this.valueFormatter,item:e,isSelected:o,isTree:t,depth:l,groupsExist:i,isGroup:a,isExpanded:r,hasIndeterminateExpandState:d},p=this.createBean(new vD(h));return p.addEventListener("selectionChanged",c),u&&p.addEventListener("expandedChanged",u),p}newSetTreeItemAttributes(e){var s,i,o,r;if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const t=this.valueModel.hasGroups();return e.key===Le.SELECT_ALL?{value:()=>this.getSelectAllLabel(),isGroup:t,depth:e.depth,hasIndeterminateExpandState:!0,selectedListener:n=>this.onSelectAll(n.isSelected),expandedListener:n=>this.onExpandAll(n.item,n.isExpanded)}:e.key===Le.ADD_SELECTION_TO_FILTER?{value:()=>this.getAddSelectionToFilterLabel(),depth:e.depth,isGroup:!1,hasIndeterminateExpandState:!1,selectedListener:n=>{this.onAddCurrentSelectionToFilterChange(n.isSelected)}}:e.children?{value:((i=(s=this.setFilterParams).treeListFormatter)==null?void 0:i.call(s,e.treeKey,e.depth,e.parentTreeKeys))??e.treeKey,depth:e.depth,isGroup:!0,selectedListener:n=>this.onGroupItemSelected(n.item,n.isSelected),expandedListener:n=>this.onExpandedChanged(n.item,n.isExpanded)}:{value:((r=(o=this.setFilterParams).treeListFormatter)==null?void 0:r.call(o,e.treeKey,e.depth,e.parentTreeKeys))??e.treeKey,depth:e.depth,selectedListener:n=>this.onItemSelected(n.item.key,n.isSelected)}}newSetListItemAttributes(e){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");return this.isSetFilterModelTreeItem(e)?this.newSetTreeItemAttributes(e):e===Le.SELECT_ALL?{value:()=>this.getSelectAllLabel(),selectedListener:t=>this.onSelectAll(t.isSelected)}:e===Le.ADD_SELECTION_TO_FILTER?{value:()=>this.getAddSelectionToFilterLabel(),selectedListener:t=>{this.onAddCurrentSelectionToFilterChange(t.isSelected)}}:{value:this.valueModel.getValue(e),selectedListener:t=>this.onItemSelected(t.item,t.isSelected)}}updateSetListItem(e,t){const{isSelected:s,isExpanded:i}=this.isSelectedExpanded(e);t.refresh(e,s,i)}isSelectedExpanded(e){let t,s;return this.isSetFilterModelTreeItem(e)?(s=e.expanded,e.key===Le.SELECT_ALL?t=this.isSelectAllSelected():e.key===Le.ADD_SELECTION_TO_FILTER?t=this.valueModel.isAddCurrentSelectionToFilterChecked():e.children?t=this.areAllChildrenSelected(e):t=this.valueModel.isKeySelected(e.key)):e===Le.SELECT_ALL?t=this.isSelectAllSelected():e===Le.ADD_SELECTION_TO_FILTER?t=this.valueModel.isAddCurrentSelectionToFilterChecked():t=this.valueModel.isKeySelected(e),{isSelected:t,isExpanded:s}}isSetFilterModelTreeItem(e){return(e==null?void 0:e.treeKey)!==void 0}initMiniFilter(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const{eMiniFilter:e,localeService:t}=this,s=t.getLocaleTextFunc();e.setDisplayed(!this.setFilterParams.suppressMiniFilter),e.setValue(this.valueModel.getMiniFilter()),e.onValueChange(()=>this.onMiniFilterInput()),e.setInputAriaLabel(s("ariaSearchFilterValues","Search f
284ilter values")),this.addManagedElementListeners(e.getInputElement(),{keydown:i=>this.onMiniFilterKeyDown(i)})}updateMiniFilter(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const{eMiniFilter:e}=this;e.isDisplayed()!==!this.setFilterParams.suppressMiniFilter&&e.setDisplayed(!this.setFilterParams.suppressMiniFilter);const t=this.valueModel.getMiniFilter();e.getValue()!==t&&e.setValue(t)}afterGuiAttached(e){var s;if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");super.afterGuiAttached(e),this.resetExpansion(),this.refreshVirtualList();const{eMiniFilter:t}=this;t.setInputPlaceholder(this.translateForSetFilter("searchOoo")),(!e||!e.suppressFocus)&&(t.isDisplayed()?t.getFocusableElement().focus():(s=this.virtualList)==null||s.awaitStable(()=>{var i;return(i=this.virtualList)==null?void 0:i.focusRow(0)}))}afterGuiDetached(){var t,s;super.afterGuiDetached(),(t=this.setFilterParams)!=null&&t.excelMode&&this.resetMiniFilter();const e=this.getModel();((s=this.setFilterParams)!=null&&s.excelMode||!this.areModelsEqual(e,this.getModelFromUi()))&&(this.resetUiToActiveModel(e),this.showOrHideResults())}applyModel(e="api"){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");this.setFilterParams.excelMode&&e!=="rowDataUpdated"&&this.valueModel.isEverythingVisibleSelected()&&this.valueModel.selectAllMatchingMiniFilter();const t=this.valueModel.showAddCurrentSelectionToFilter()&&this.valueModel.isAddCurrentSelectionToFilterChecked();if(t&&!this.getModel())return!1;const s=super.applyModel(e),i=this.getModel();return i?(t||this.valueModel.setAppliedModelKeys(new Set),i.values.forEach(o=>{this.valueModel.addToAppliedModelKeys(o)})):t||this.valueModel.setAppliedModelKeys(null),s}isModelValid(e){return this.setFilterParams&&this.setFilterParams.excelMode?e==null||e.values.length>0:!0}doesFilterPass(e){if(!this.setFilterParams||!this.valueModel||!this.valueModel.getCaseFormattedAppliedModelKeys())return!0;if(!this.valueModel.hasAnyAppliedModelKey())return!1;const{node:t,data:s}=e;if(this.treeDataTreeList)return this.doesFilterPassForTreeData(t,s);if(this.groupingTreeList)return this.doesFilterPassForGrouping(t);const i=this.getValueFromNode(t);return i!=null&&Array.isArray(i)?i.length===0?this.valueModel.hasAppliedModelKey(null):i.some(o=>this.isInAppliedModel(this.createKey(o,t))):this.isInAppliedModel(this.createKey(i,t))}doesFilterPassForTreeData(e,t){var s;return(s=e.childrenAfterGroup)!=null&&s.length?!1:this.isInAppliedModel(this.createKey(xr(this.getDataPath(t),!0,this.gos.get("groupAllowUnbalanced"))))}doesFilterPassForGrouping(e){const t=this.funcColsService.getRowGroupColumns().map(s=>this.valueService.getKeyForNode(s,e));return t.push(this.getValueFromNode(e)),this.isInAppliedModel(this.createKey(xr(t,!1,this.gos.get("groupAllowUnbalanced"))))}isInAppliedModel(e){return this.valueModel.hasAppliedModelKey(e)}getValueFromNode(e){return this.setFilterParams.getValue(e)}getKeyCreatorParams(e,t=null){return{value:e,colDef:this.setFilterParams.colDef,column:this.setFilterParams.column,node:t,data:t==null?void 0:t.data,api:this.setFilterParams.api,context:this.setFilterParams.context}}onNewRowsLoaded(){this.isValuesTakenFromGrid()&&this.syncAfterDataChange()}isValuesTakenFromGrid(){return this.valueModel?this.valueModel.getValuesType()===2:!1}setFilterValues(e){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.overrideValues(e).then(()=>{this.checkAndRefreshVirtualList(),this.onUiChanged()})}resetFilterValues(){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.setValuesType(2),this.syncAfterDataChange()}refreshFilterValues(){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.isInitialised()&&this.valueModel.refreshValues().then(()=>{this.hardRefreshVirtualList=!0,this.checkAndRefreshVirtualList(),this.onUiChanged()})}onAnyFilterChanged(){setTimeout(()=>{if(this.isAlive()){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.refreshAfterAnyFilterChanged().then(e=>{e&&(this.checkAndRefreshVirtualList(),this.showOrHideResults())})}},0)}onMiniFilterInput(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");
284if(!this.valueModel.setMiniFilter(this.eMiniFilter.getValue()))return;const{applyMiniFilterWhileTyping:e,readOnly:t}=this.setFilterParams||{};!t&&e?this.filterOnAllVisibleValues(!1):this.updateUiAfterMiniFilterChange()}updateUiAfterMiniFilterChange(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const{excelMode:e,readOnly:t}=this.setFilterParams||{};e==null||t?this.checkAndRefreshVirtualList():this.valueModel.getMiniFilter()==null?this.resetUiToActiveModel(this.getModel()):(this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged()),this.showOrHideResults()}showOrHideResults(){if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getMiniFilter()!=null&&this.valueModel.getDisplayedValueCount()<1;H(this.eFilterNoMatches,e),H(this.eSetFilterList,!e)}resetMiniFilter(){var e;this.eMiniFilter.setValue(null,!0),(e=this.valueModel)==null||e.setMiniFilter(null)}resetUiToActiveModel(e,t){this.setModelAndRefresh(e==null?null:e.values).then(()=>{this.onUiChanged(!1,"prevent"),t==null||t()})}handleCancelEnd(e){this.setMiniFilter(null),super.handleCancelEnd(e)}onMiniFilterKeyDown(e){const{excelMode:t,readOnly:s}=this.setFilterParams||{};e.key===S.ENTER&&!t&&!s&&this.filterOnAllVisibleValues()}filterOnAllVisibleValues(e=!0){const{readOnly:t}=this.setFilterParams||{};if(!this.valueModel)throw new Error("Value model has not been created.");if(t)throw new Error("Unable to filter in readOnly mode.");this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged(!1,e?"immediately":"debounce"),this.showOrHideResults()}focusRowIfAlive(e){e!=null&&window.setTimeout(()=>{if(!this.virtualList)throw new Error("Virtual list has not been created.");this.isAlive()&&this.virtualList.focusRow(e)},0)}onSelectAll(e){if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.virtualList)throw new Error("Virtual list has not been created.");e?this.valueModel.selectAllMatchingMiniFilter():this.valueModel.deselectAllMatchingMiniFilter(),this.refreshAfterSelection()}onGroupItemSelected(e,t){const s=i=>{i.children?i.children.forEach(o=>s(o)):this.selectItem(i.key,t)};s(e),this.refreshAfterSelection()}onItemSelected(e,t){if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.virtualList)throw new Error("Virtual list has not been created.");this.selectItem(e,t),this.refreshAfterSelection()}selectItem(e,t){t?this.valueModel.selectKey(e):this.valueModel.deselectKey(e)}onExpandAll(e,t){const s=i=>{i.filterPasses&&i.available&&i.children&&(i.children.forEach(o=>s(o)),i.expanded=t)};s(e),this.refreshAfterExpansion()}onExpandedChanged(e,t){e.expanded=t,this.refreshAfterExpansion()}refreshAfterExpansion(){const e=this.virtualList.getLastFocusedRow();this.valueModel.updateDisplayedValues("expansion"),this.checkAndRefreshVirtualList(),this.focusRowIfAlive(e)}refreshAfterSelection(){const e=this.virtualList.getLastFocusedRow();this.checkAndRefreshVirtualList(),this.onUiChanged(),this.focusRowIfAlive(e)}setMiniFilter(e){this.eMiniFilter.setValue(e),this.onMiniFilterInput()}getMiniFilter(){return this.valueModel?this.valueModel.getMiniFilter():null}checkAndRefreshVirtualList(){if(!this.virtualList)throw new Error("Virtual list has not been created.");this.virtualList.refresh(!this.hardRefreshVirtualList),this.hardRefreshVirtualList&&(this.hardRefreshVirtualList=!1)}getFilterKeys(){return this.valueModel?this.valueModel.getKeys():[]}getFilterValues(){return this.valueModel?this.valueModel.getValues():[]}getValues(){return this.getFilterKeys()}refreshVirtualList(){this.setFilterParams&&this.setFilterParams.refreshValuesOnOpen?this.refreshFilterValues():this.checkAndRefreshVirtualList()}translateForSetFilter(e){return this.localeService.getLocaleTextFunc()(e,CD[e])}isSelectAllSelected(){if(!this.setFilterParams||!this.valueModel)return!1;if(this.setFilterParams.defaultToNothingSelected){if(this.valueModel.hasSelections()&&this.valueModel.isEverythingVisibleSelected())return!0;
284if(this.valueModel.isNothingVisibleSelected())return!1}else{if(this.valueModel.hasSelections()&&this.valueModel.isNothingVisibleSelected())return!1;if(this.valueModel.isEverythingVisibleSelected())return!0}}areAllChildrenSelected(e){const t=s=>{if(s.children){let i=!1,o=!1;return s.children.some(n=>{if(!n.filterPasses||!n.available)return!1;const l=t(n);return l===void 0?!0:(l?i=!0:o=!0,i&&o)})?void 0:i}else return this.valueModel.isKeySelected(s.key)};return this.setFilterParams.defaultToNothingSelected?this.valueModel.hasSelections()&&t(e):t(e)}destroy(){this.virtualList!=null&&(this.virtualList.destroy(),this.virtualList=null),super.destroy()}caseFormat(e){return e==null||typeof e!="string"||this.caseSensitive?e:e.toUpperCase()}resetExpansion(){var t,s;if(!((t=this.setFilterParams)!=null&&t.treeList))return;const e=(s=this.valueModel)==null?void 0:s.getSelectAllItem();if(this.isSetFilterModelTreeItem(e)){const i=o=>{o.children&&(o.children.forEach(r=>i(r)),o.expanded=!1)};i(e),this.valueModel.updateDisplayedValues("expansion")}}getModelAsString(e){return this.filterModelFormatter.getModelAsString(e,this)}getPositionableElement(){return this.eSetFilterList}},FD=class{constructor(e){this.model=e}getRowCount(){return this.model.getDisplayedValueCount()}getRow(e){return this.model.getDisplayedItem(e)}areRowsEqual(e,t){return e===t}},PD=class{constructor(e,t){this.model=e,this.isSelectAllSelected=t}getRowCount(){const t=this.model.showAddCurrentSelectionToFilter()?2:1;return this.model.getDisplayedValueCount()+t}getRow(e){if(e===0)return this.model.getSelectAllItem();const t=this.model.showAddCurrentSelectionToFilter(),s=t?2:1;return e===1&&t?this.model.getAddSelectionToFilterItem():this.model.getDisplayedItem(e-s)}areRowsEqual(e,t){return e===t}},ED=class{constructor(e){this.model=e}getRowCount(){return this.model.getRowCount()}getRow(e){return this.model.getRow(e)}areRowsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&e.treeKey===t.treeKey&&e.depth===t.depth}},MD=class extends O{constructor(){super(` 285 <div class="ag-floating-filter-input ag-set-floating-filter-input" role="presentation"> 286 <ag-input-text-field data-ref="eFloatingFilterText"></ag-input-text-field> 287 </div>`,[ps]),this.eFloatingFilterText=P,this.availableValuesListenerAdded=!1,this.filterModelFormatter=new jc}wireBeans(e){this.columnNameService=e.columnNameService}destroy(){super.destroy()}init(e){this.params=e,this.eFloatingFilterText.setDisabled(!0).addGuiEventListener("click",()=>this.params.showParentFilter()),this.setParams(e)}setParams(e){const t=this.columnNameService.getDisplayNameForColumn(e.column,"header",!0),s=this.localeService.getLocaleTextFunc();this.eFloatingFilterText.setInputAriaLabel(`${t} ${s("ariaFilterInput","Filter Input")}`)}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e,this.setParams(e)}onParentModelChanged(e){this.updateFloatingFilterText(e)}parentSetFilterInstance(e){this.params.parentFilterInstance(t=>{if(!(t instanceof qc))throw new Error("AG Grid - SetFloatingFilter expects SetFilter as its parent");e(t)})}addAvailableValuesListener(){this.parentSetFilterInstance(e=>{const t=e.getValueModel();t&&this.addManagedListeners(t,{availableValuesChanged:()=>this.updateFloatingFilterText()})}),this.availableValuesListenerAdded=!0}updateFloatingFilterText(e){this.availableValuesListenerAdded||this.addAvailableValuesListener(),this.parentSetFilterInstance(t=>{this.eFloatingFilterText.setValue(this.filterModelFormatter.getModelAsString(e,t))})}},Ln="32.3.2",Yc={version:Ln,moduleName:`${U.SetFilterModule}-core`,userComponents:[{name:"agSetColumnFilter",classImp:qc}],dependantModules:[ms,Vs]},DD={version:Ln,moduleName:"@ag-grid-enterprise/set-floating-filter",userComponents:[{name:"agSetColumnFloatingFilter",classImp:MD}],dependantModules:[Yc,fd]},tx={version:Ln,moduleName:U.SetFilterModule,dependantModules:[Yc,DD]};export{YD as A,b as B,jD as C,ZD as E,Qw as G,U as M,eF as R,ex as S,ID as _,ms as a,qD as b,KD as c,re as d,R as e,E as f,Fo as g,W as h,ke as i,le as j,Q as k,JD as l,tx as m,XD as n,QD as u};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.