@epam/ai-dial-ui-kit 0.9.0-rc.1 → 0.9.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/dial-ui-kit.cjs.js
CHANGED
|
@@ -58,7 +58,7 @@ See ${Lf(e,t)}`;return Array.isArray(o)?o.concat(n):[o,n]}var a4={1:"Charting Ag
|
|
|
58
58
|
`)}checkProperties(e,t,s,o,i){const n=["__ob__","__v_skip","__metadata__"],r=P4(Object.getOwnPropertyNames(e),[...n,...t,...s],s),a=Object.keys(r);for(const l of a){const c=r[l];let d=`invalid ${o} property '${l}' did you mean any of these: ${c.slice(0,8).join(", ")}.`;s.includes("context")&&(d+=`
|
|
59
59
|
If you are trying to annotate ${o} with application data, use the '${o}.context' property instead.`),Nn(d)}if(a.length>0&&i){const l=this.beans.frameworkOverrides.getDocLink(i);Nn(`to see all the valid ${o} properties please check: ${l}`)}}};function P4(e,t,s){const o={},i=e.filter(n=>!t.some(r=>r===n));if(i.length>0)for(const n of i)o[n]=xd({inputValue:n,allSuggestions:s}).values;return o}var T4=new Set(["firstChildChanged","lastChildChanged","childIndexChanged"]),M4={moduleName:"Validation",version:Y,beans:[D4]};function AC(e){const t=e.sibling;t&&(t.childrenAfterFilter=e.childrenAfterFilter)}var I4=class extends O{constructor(){super(...arguments),this.beanName="filterStage",this.step="filter",this.refreshProps=["excludeChildrenWhenTreeDataFiltering"]}wireBeans(e){this.filterManager=e.filterManager}execute(e){const{changedPath:t}=e;this.filter(t)}filter(e){const t=!!this.filterManager?.isChildFilterPresent();this.filterNodes(t,e)}filterNodes(e,t){const s=(o,i)=>{o.hasChildren()&&e&&!i?o.childrenAfterFilter=o.childrenAfterGroup.filter(n=>{const r=n.childrenAfterFilter&&n.childrenAfterFilter.length>0,a=n.data&&this.filterManager.doesRowPassFilter({rowNode:n});return r||a}):o.childrenAfterFilter=o.childrenAfterGroup,AC(o)};if(this.doingTreeDataFiltering()){const o=(n,r)=>{if(n.childrenAfterGroup)for(let a=0;a<n.childrenAfterGroup.length;a++){const l=n.childrenAfterGroup[a],c=r||this.filterManager.doesRowPassFilter({rowNode:l});l.childrenAfterGroup?o(n.childrenAfterGroup[a],c):s(l,c)}s(n,r)},i=n=>o(n,!1);t.executeFromRootNode(i)}else{const o=i=>s(i,!1);t.forEachChangedNodeDepthFirst(o,!0)}}doingTreeDataFiltering(){return this.gos.get("treeData")&&!this.gos.get("excludeChildrenWhenTreeDataFiltering")}},k4=class extends Bu{constructor(){super(...arguments),this.iconCreated=!1}wireComp(e,t,s,o,i){this.comp=e;const n=ur(this,this.beans.context,i);this.eButtonShowMainFilter=s,this.eFloatingFilterBody=o,this.setGui(t,n),this.setupActive(),this.refreshHeaderStyles(),this.setupWidth(n),this.setupLeft(n),this.setupHover(n),this.setupFocus(n),this.setupAria(),this.setupFilterButton(),this.setupUserComp(),this.setupSyncWithFilter(n),this.setupUi(),n.addManagedElementListeners(this.eButtonShowMainFilter,{click:this.showParentFilter.bind(this)}),this.setupFilterChangedListener(n);const r=()=>this.onColDefChanged(n);n.addManagedListeners(this.column,{colDefChanged:r}),n.addManagedEventListeners({filterSwitched:({column:a})=>{a===this.column&&r()}}),n.addDestroyFunc(()=>{this.eButtonShowMainFilter=null,this.eFloatingFilterBody=null,this.userCompDetails=null,this.clearComponent()})}resizeHeader(){}moveHeader(){}getHeaderClassParams(){const{column:e,beans:t}=this,s=e.colDef;return we(t.gos,{colDef:s,column:e,floatingFilter:!0})}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=Xt("filter",this.beans,this.column);e&&(this.iconCreated=!0,this.eButtonShowMainFilter.appendChild(e))}setupFocus(e){e.createManagedBean(new qi(this.eGui,{shouldStopEventPropagation:this.shouldStopEventPropagation.bind(this),onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),onFocusIn:this.onFocusIn.bind(this)}))}setupAria(){const e=this.getLocaleTextFunc();Li(this.eButtonShowMainFilter,e("ariaFilterMenuOpen","Open Filter Menu"))}onTabKeyDown(e){const{beans:t}=this;if(Ze(t)===this.eGui)return;const i=Uo(t,this.eGui,null,e.shiftKey);if(i){t.headerNavigation?.scrollToColumn(this.column),e.preventDefault(),i.focus();return}const n=this.findNextColumnWithFloatingFilter(e.shiftKey);n&&t.focusSvc.focusHeaderPosition({headerPosition:{headerRowIndex:this.rowCtrl.rowIndex,column:n},event:e})&&e.preventDefault()}findNextColumnWithFloatingFilter(e){const t=this.beans.visibleCols;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 I.UP:case I.DOWN:case I.LEFT:case I.RIGHT:if(t)return;Go(e);case I.ENTER:t&&Ho(this.eGui)&&e.preventDefault();break;case I.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"),o=!!e.relatedTarget&&Ro(e.relatedTarget,"ag-floating-filter");if(s&&o&&e.target===this.eGui){const i=this.lastFocusEvent,n=!!(i&&i.key===I.TAB);if(i&&n){const r=i.shiftKey;Ho(this.eGui,r)}}this.focusThis()}setupHover(e){this.beans.colHover?.addHeaderFilterColumnHoverListener(e,this.comp,this.column,this.eGui)}setupLeft(e){const t=new Gu(this.column,this.eGui,this.beans);e.createManagedBean(t)}setupFilterButton(){this.suppressFilterButton=!this.beans.menuSvc?.isFloatingFilterButtonEnabled(this.column),this.highlightFilterButtonWhenActive=!Gt(this.gos)}setupUserComp(){if(!this.active)return;const e=this.beans.colFilter?.getFloatingFilterCompDetails(this.column,()=>this.showParentFilter());e&&this.setCompDetails(e)}setCompDetails(e){this.userCompDetails=e,this.comp.setCompDetails(e)}showParentFilter(){const e=this.suppressFilterButton?this.eFloatingFilterBody:this.eButtonShowMainFilter;this.beans.menuSvc?.showFilterMenu({column:this.column,buttonElement:e,containerType:"floatingFilter",positionBy:"button"})}setupSyncWithFilter(e){if(!this.active)return;const{beans:{colFilter:t},column:s,gos:o}=this,i=n=>{if(n?.source==="filterDestroyed"&&(!this.isAlive()||!t?.isAlive()))return;const r=this.comp.getFloatingFilterComp();r&&r.then(a=>{if(a){if(o.get("enableFilterHandlers")){const d=n;let u="filter";d?.afterFloatingFilter?u="ui":d?.afterDataChange?u="dataChanged":n?.source==="api"&&(u="api"),this.updateFloatingFilterParams(this.userCompDetails,u);return}const l=t?.getCurrentFloatingFilterParentModel(s),c=n?{...n,columns:n.columns??[],source:n.source==="api"?"api":"columnFilter"}:null;a.onParentModelChanged(l,c)}})};[this.destroySyncListener]=e.addManagedListeners(s,{filterChanged:i}),t?.isFilterActive(s)&&i(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(){if(!this.suppressFilterButton&&this.comp){const e=!!this.beans.filterManager?.isFilterAllowed(this.column);this.comp.setButtonWrapperDisplayed(e),this.highlightFilterButtonWhenActive&&e&&this.eButtonShowMainFilter.classList.toggle("ag-filter-active",this.column.isFilterActive())}}onColDefChanged(e){const t=this.active;this.setupActive();const s=!t&&this.active;t&&!this.active&&(this.destroySyncListener(),this.destroyFilterChangedListener());const o=this.beans.colFilter,i=this.active?o?.getFloatingFilterCompDetails(this.column,()=>this.showParentFilter()):null,n=this.comp.getFloatingFilterComp();!n||!i?this.updateCompDetails(e,i,s):n.then(r=>{!r||o?.areFilterCompsDifferent(this.userCompDetails??null,i)?this.updateCompDetails(e,i,s):this.updateFloatingFilterParams(i,"colDef")})}updateCompDetails(e,t,s){this.isAlive()&&(this.setCompDetails(t),this.setupFilterButton(),this.setupUi(),s&&(this.setupSyncWithFilter(e),this.setupFilterChangedListener(e)))}updateFloatingFilterParams(e,t){if(!e)return;let s=e.params;this.comp.getFloatingFilterComp()?.then(o=>{typeof o?.refresh=="function"&&(this.gos.get("enableFilterHandlers")&&(s={...s,model:lt(this.beans.colFilter?.model??{},this.column.getColId()),source:t}),o.refresh(s))})}addResizeAndMoveKeyboardListeners(){}destroy(){super.destroy(),this.destroySyncListener=null,this.destroyFilterChangedListener=null}};function A4(e,t){const s=e.colModel.getCol(t);if(!s){Be(12,{colKey:t});return}e.menuSvc?.showColumnMenu({column:s,positionBy:"auto"})}function L4(e){e.menuSvc?.hidePopupMenu()}var O4={moduleName:"SharedMenu",version:Y,beans:[sF],apiFunctions:{showColumnMenu:A4,hidePopupMenu:L4}},N4=class extends IR{postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.gridCtrl=e.gridCtrl}),this.addManagedEventListeners({gridStylesChanged:this.handleThemeChange.bind(this)})}getDefaultPopupParent(){return this.gridCtrl.getGui()}positionPopupForMenu(e){const{eventSource:t,ePopup:s,event:o}=e,i=t.getBoundingClientRect(),n=this.getParentRect();this.setAlignedTo(t,s);let r=!1;const a=()=>{const l=this.keepXYWithinBounds(s,i.top-n.top,0),c=s.clientWidth>0?s.clientWidth:200;r||(s.style.minWidth=`${c}px`,r=!0);const u=n.right-n.left-c;let h;return this.gos.get("enableRtl")?(h=f(),h<0&&(h=p(),this.setAlignedStyles(s,"left")),h>u&&(h=0,this.setAlignedStyles(s,"right"))):(h=p(),h>u&&(h=f(),this.setAlignedStyles(s,"right")),h<0&&(h=0,this.setAlignedStyles(s,"left"))),{x:h,y:l};function p(){return i.right-n.left-2}function f(){return i.left-n.left-c}};this.positionPopup({ePopup:s,keepWithinBounds:!0,updatePosition:a,postProcessCallback:()=>this.callPostProcessPopup(e,"subMenu",s,t,o instanceof MouseEvent?o:void 0)})}callPostProcessPopup(e,t,s,o,i){const n=this.gos.getCallback("postProcessPopup");if(n){const{column:r,rowNode:a}=e;n({column:r,rowNode:a,ePopup:s,type:t,eventSource:o,mouseEvent:i})}}getActivePopups(){return this.popupList.map(e=>e.element)}handleThemeChange(e){if(e.themeChanged){const t=this.beans.environment;for(const s of this.popupList)t.applyThemeClasses(s.wrapper)}}hasAnchoredPopup(){return this.popupList.some(e=>e.isAnchored)}isStopPropagation(e){return Ns(e)}},dl={moduleName:"Popup",version:Y,beans:[N4]},H4=".ag-set-filter{--ag-indentation-level:0}.ag-set-filter-item{align-items:center;display:flex;height:100%}:where(.ag-ltr) .ag-set-filter-item{padding-left:calc(var(--ag-widget-container-horizontal-padding) + var(--ag-indentation-level)*var(--ag-set-filter-indent-size))}:where(.ag-rtl) .ag-set-filter-item{padding-right:calc(var(--ag-widget-container-horizontal-padding) + var(--ag-indentation-level)*var(--ag-set-filter-indent-size))}.ag-set-filter-item-checkbox{display:flex;height:100%;width:100%}.ag-set-filter-group-icons{display:block;>*{cursor:pointer}}:where(.ag-ltr) .ag-set-filter-group-icons{margin-right:var(--ag-widget-container-horizontal-padding)}:where(.ag-rtl) .ag-set-filter-group-icons{margin-left:var(--ag-widget-container-horizontal-padding)}.ag-filter-body-wrapper{display:flex;flex-direction:column}:where(.ag-menu:not(.ag-tabs) .ag-filter) .ag-filter-body-wrapper,:where(.ag-menu:not(.ag-tabs) .ag-filter)>:not(.ag-filter-wrapper){min-width:180px}.ag-filter-filter{flex:1 1 0px}.ag-filter-condition{display:flex;justify-content:center}.ag-floating-filter-body{display:flex;flex:1 1 auto;height:100%;position:relative}.ag-floating-filter-full-body{align-items:center;display:flex;flex:1 1 auto;height:100%;overflow:hidden;width:100%}:where(.ag-floating-filter-full-body)>div{flex:1 1 auto}.ag-floating-filter-input{align-items:center;display:flex;width:100%;>*{flex:1 1 auto}:where(.ag-input-field-input[type=date]),:where(.ag-input-field-input[type=datetime-local]){width:1px}}.ag-floating-filter-button{display:flex;flex:none}.ag-date-floating-filter-wrapper{display:flex}.ag-set-floating-filter-input :where(input)[disabled]{pointer-events:none}.ag-floating-filter-button-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;height:var(--ag-icon-size);width:var(--ag-icon-size)}.ag-filter-loading{align-items:unset;background-color:var(--ag-chrome-background-color);height:100%;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);position:absolute;width:100%;z-index:1;:where(.ag-menu) &{background-color:var(--ag-menu-background-color)}}.ag-filter-separator{border-top:solid var(--ag-border-width) var(--menu-separator-color)}:where(.ag-filter-select) .ag-picker-field-wrapper{width:0}.ag-filter-condition-operator{height:17px}:where(.ag-ltr) .ag-filter-condition-operator-or{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-filter-condition-operator-or{margin-right:calc(var(--ag-spacing)*2)}.ag-set-filter-select-all{padding-top:var(--ag-widget-container-vertical-padding)}.ag-filter-no-matches,.ag-set-filter-list{height:calc(var(--ag-list-item-height)*6)}.ag-filter-no-matches{padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}.ag-set-filter-tree-list{height:calc(var(--ag-list-item-height)*10)}.ag-set-filter-filter{margin-left:var(--ag-widget-container-horizontal-padding);margin-right:var(--ag-widget-container-horizontal-padding);margin-top:var(--ag-widget-container-vertical-padding)}.ag-filter-to{margin-top:var(--ag-widget-vertical-spacing)}.ag-mini-filter{margin:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}:where(.ag-ltr) .ag-set-filter-add-group-indent{margin-left:calc(var(--ag-icon-size) + var(--ag-widget-container-horizontal-padding))}:where(.ag-rtl) .ag-set-filter-add-group-indent{margin-right:calc(var(--ag-icon-size) + var(--ag-widget-container-horizontal-padding))}:where(.ag-filter-menu) .ag-set-filter-list{min-width:200px}.ag-filter-virtual-list-item:focus-visible{box-shadow:inset var(--ag-focus-shadow)}.ag-filter-apply-panel{display:flex;justify-content:flex-end;overflow:hidden;padding:var(--ag-widget-vertical-spacing) var(--ag-widget-container-horizontal-padding) var(--ag-widget-container-vertical-padding)}.ag-filter-apply-panel-button{line-height:1.5}:where(.ag-ltr) .ag-filter-apply-panel-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-filter-apply-panel-button{margin-right:calc(var(--ag-spacing)*2)}.ag-simple-filter-body-wrapper{display:flex;flex-direction:column;min-height:calc(var(--ag-list-item-height) + var(--ag-widget-container-vertical-padding) + var(--ag-widget-vertical-spacing));overflow-y:auto;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);padding-bottom:calc(var(--ag-widget-container-vertical-padding) - var(--ag-widget-vertical-spacing));&>*{margin-bottom:var(--ag-widget-vertical-spacing)}:where(.ag-resizer-wrapper){margin:0}}.ag-multi-filter-menu-item{margin:var(--ag-spacing) 0}.ag-multi-filter-group-title-bar{background-color:transparent;color:var(--ag-header-text-color);font-weight:500;padding:calc(var(--ag-spacing)*1.5) var(--ag-spacing)}.ag-group-filter-field-select-wrapper{display:flex;flex-direction:column;gap:var(--ag-widget-vertical-spacing);padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}";function G4(e){const t=e.filterManager;return!!t?.isColumnFilterPresent()||!!t?.isAggregateFilterPresent()}function B4(e,t){return e.filterManager?.getColumnFilterInstance(t)??Promise.resolve(void 0)}function V4(e,t){const s=e.colModel.getColDefCol(t);if(s)return e.colFilter?.destroyFilter(s,"api")}function z4(e,t){e.frameworkOverrides.wrapIncoming(()=>e.filterManager?.setFilterModel(t))}function W4(e){return e.filterManager?.getFilterModel()??{}}function _4(e,t,s){const{gos:o,colModel:i,colFilter:n}=e;s&&!o.get("enableFilterHandlers")&&(z(288),s=!1);const r=i.getColDefCol(t);return r?n?.getModelForColumn(r,s)??null:null}function j4(e,t,s){return e.filterManager?.setColumnFilterModel(t,s)??Promise.resolve()}function U4(e,t){const s=e.colModel.getCol(t);if(!s){Be(12,{colKey:t});return}e.menuSvc?.showFilterMenu({column:s,containerType:"columnFilter",positionBy:"auto"})}function $4(e){e.menuSvc?.hideFilterMenu()}function q4(e,t){const s=e.colModel.getCol(t);if(!s){Be(12,{colKey:t});return}return e.colFilter?.getHandler(s,!0)}function K4(e,t){const{colModel:s,colFilter:o,gos:i}=e;if(!i.get("enableFilterHandlers")){z(287);return}const{colId:n,action:r}=t;if(n){const a=s.getColById(n);a&&o?.updateModel(a,r)}else o?.updateAllModels(r)}var Y4={filterHandler:()=>({doesFilterPass:()=>!0})},Z4=class extends O{constructor(){super(...arguments),this.beanName="colFilter",this.allColumnFilters=new Map,this.allColumnListeners=new Map,this.activeAggregateFilters=[],this.activeColumnFilters=[],this.processingFilterChange=!1,this.modelUpdates=[],this.columnModelUpdates=[],this.state=new Map,this.handlerMap={...Em},this.isGlobalButtons=!1,this.activeFilterComps=new Set}postConstruct(){this.addManagedEventListeners({gridColumnsChanged:this.onColumnsChanged.bind(this),dataTypesInferred:this.processFilterModelUpdateQueue.bind(this)});const e=this.gos,t={...e.get("initialState")?.filter?.filterModel??{}};this.initialModel=t,this.model={...t},e.get("enableFilterHandlers")||delete this.handlerMap.agMultiColumnFilter}refreshModel(){this.onNewRowsLoaded("rowDataUpdated")}setModel(e,t="api",s){const{colModel:o,dataTypeSvc:i,filterManager:n}=this.beans;if(i?.isPendingInference){this.modelUpdates.push({model:e,source:t});return}const r=[],a=this.getModel(!0);if(e){const l=new Set(Object.keys(e));this.allColumnFilters.forEach((c,d)=>{const u=e[d];r.push(this.setModelOnFilterWrapper(c,u)),l.delete(d)}),l.forEach(c=>{const d=o.getColDefCol(c)||o.getCol(c);if(!d){z(62,{colId:c});return}if(!d.isFilterAllowed()){z(63,{colId:c});return}const u=this.getOrCreateFilterWrapper(d,!0);if(!u){z(64,{colId:c});return}r.push(this.setModelOnFilterWrapper(u,e[c],!0))})}else this.model={},this.allColumnFilters.forEach(l=>{r.push(this.setModelOnFilterWrapper(l,null))});Ae.all(r).then(()=>{const l=this.getModel(!0),c=[];this.allColumnFilters.forEach((d,u)=>{const h=a?a[u]:null,p=l?l[u]:null;$n(h,p)||c.push(d.column)}),c.length>0?n?.onFilterChanged({columns:c,source:t}):s&&this.updateActive("filterChanged")})}getModel(e){const t={},{allColumnFilters:s,initialModel:o,beans:{colModel:i}}=this;if(s.forEach((n,r)=>{const a=this.getModelFromFilterWrapper(n);X(a)&&(t[r]=a)}),!e)for(const n of Object.keys(o)){const r=o[n];X(r)&&!s.has(n)&&i.getCol(n)?.isFilterAllowed()&&(t[n]=r)}return t}setState(e,t,s="api"){if(this.state.clear(),t)for(const o of Object.keys(t)){const i=t[o];this.state.set(o,{model:lt(this.model,o),state:i})}this.setModel(e,s,!0)}getState(){const e=this.state;if(!e.size)return;const t={};let s=!1;return e.forEach((o,i)=>{const n=o.state;n!=null&&(s=!0,t[i]=n)}),s?t:void 0}getModelFromFilterWrapper(e){const s=e.column.getColId();if(e.isHandler)return lt(this.model,s);const o=e.filter;return o?typeof o.getModel!="function"?(z(66),null):o.getModel():lt(this.initialModel,s)}isFilterPresent(){return this.activeColumnFilters.length>0}isAggFilterPresent(){return!!this.activeAggregateFilters.length}disableFilters(){this.initialModel={};const{allColumnFilters:e}=this;return e.size?(e.forEach(t=>this.disposeFilterWrapper(t,"advancedFilterEnabled")),!0):!1}updateActiveFilters(){const e=c=>c?c.isFilterActive?c.isFilterActive():(z(67),!1):!1,{colModel:t,gos:s}=this.beans,o=!!md(s),i=c=>{if(!c.isPrimary())return!0;const u=!t.isPivotActive();return!c.isValueActive()||!u?!1:t.isPivotMode()?!0:o},n=[],r=[],a=(c,d,u)=>{d&&(i(c)?n.push(u):r.push(u))},l=[];return this.allColumnFilters.forEach(c=>{const d=c.column,u=d.getColId();if(c.isHandler)l.push(Ae.resolve().then(()=>{a(d,this.isHandlerActive(d),{colId:u,isHandler:!0,handler:c.handler,handlerParams:c.handlerParams})}));else{const h=Us(c);h&&l.push(h.then(p=>{a(d,e(p),{colId:u,isHandler:!1,comp:p})}))}}),Ae.all(l).then(()=>{this.activeAggregateFilters=n,this.activeColumnFilters=r})}updateFilterFlagInColumns(e,t){const s=[];return this.allColumnFilters.forEach(o=>{const i=o.column;if(o.isHandler)s.push(Ae.resolve().then(()=>{this.setColFilterActive(i,this.isHandlerActive(i),e,t)}));else{const n=Us(o);n&&s.push(n.then(r=>{this.setColFilterActive(i,r.isFilterActive(),e,t)}))}}),this.beans.groupFilter?.updateFilterFlags(e,t),Ae.all(s)}doFiltersPass(e,t,s){const{data:o,aggData:i}=e,n=s?this.activeAggregateFilters:this.activeColumnFilters,r=s?i:o,a=this.model;for(let l=0;l<n.length;l++){const c=n[l],{colId:d,isHandler:u}=c;if(d!==t)if(u){const{handler:h,handlerParams:p}=c;if(!h.doesFilterPass({node:e,data:r,model:lt(a,d),handlerParams:p}))return!1}else{const h=c.comp;if(typeof h.doesFilterPass!="function"){Be(91);continue}if(!h.doesFilterPass({node:e,data:r}))return!1}}return!0}getHandlerParams(e){const t=this.allColumnFilters.get(e.getColId());return t?.isHandler?t.handlerParams:void 0}callOnFilterChangedOutsideRenderCycle(e){const{rowRenderer:t,filterManager:s}=this.beans,o=()=>{this.isAlive()&&s?.onFilterChanged(e)};t.isRefreshInProgress()?setTimeout(o,0):o()}updateBeforeFilterChanged(e={}){const{column:t,additionalEventAttributes:s}=e,o=t?.getColId();return this.updateActiveFilters().then(()=>this.updateFilterFlagInColumns("filterChanged",s).then(()=>{this.allColumnFilters.forEach(i=>{const{column:n,isHandler:r}=i;o!==n.getColId()&&(r&&i.handler.onAnyFilterChanged?.(),Us(i,r)?.then(a=>{typeof a?.onAnyFilterChanged=="function"&&a.onAnyFilterChanged()}))}),this.processingFilterChange=!0}))}updateAfterFilterChanged(){this.processingFilterChange=!1}isSuppressFlashingCellsBecauseFiltering(){return!(this.gos.get("allowShowChangeAfterFilter")??!1)&&this.processingFilterChange}onNewRowsLoaded(e){const t=[];this.allColumnFilters.forEach(s=>{const o=s.isHandler;o&&s.handler.onNewRowsLoaded?.();const i=Us(s,o);i&&t.push(i.then(n=>{n.onNewRowsLoaded?.()}))}),Ae.all(t).then(()=>this.updateActive(e,{afterDataChange:!0}))}updateActive(e,t){this.updateFilterFlagInColumns(e,t).then(()=>this.updateActiveFilters())}createGetValue(e,t){const{filterValueSvc:s,colModel:o}=this.beans;return(i,n)=>{const r=n?o.getCol(n):e;return r?s.getValue(r,i,t):void 0}}isFilterActive(e){const t=this.cachedFilter(e);if(t?.isHandler)return this.isHandlerActive(e);const s=t?.filter;return s?s.isFilterActive():lt(this.initialModel,e.getColId())!=null}isHandlerActive(e){const t=X(lt(this.model,e.getColId()));if(t)return t;const s=this.beans.groupFilter;return s?.isGroupFilter(e)?s.isFilterActive(e):!1}getOrCreateFilterUi(e){const t=this.getOrCreateFilterWrapper(e,!0);return t?Us(t):null}getFilterUiForDisplay(e){const t=this.getOrCreateFilterWrapper(e,!0);if(!t)return null;const s=Us(t);return s?s.then(o=>({comp:o,params:t.filterUi.filterParams,isHandler:t.isHandler})):null}getHandler(e,t){const s=this.getOrCreateFilterWrapper(e,t);return s?.isHandler?s.handler:void 0}getOrCreateFilterWrapper(e,t){if(!e.isFilterAllowed())return;let s=this.cachedFilter(e);return!s&&t&&(s=this.createFilterWrapper(e),this.setColumnFilterWrapper(e,s)),s}cachedFilter(e){return this.allColumnFilters.get(e.getColId())}getDefaultFilter(e,t=!1){return this.getDefaultFilterFromDataType(()=>this.beans.dataTypeSvc?.getBaseDataType(e),t)}getDefaultFilterFromDataType(e,t=!1){return uy(this.gos)?t?"agSetColumnFloatingFilter":"agSetColumnFilter":t2(e(),t)}getDefaultFloatingFilter(e){return this.getDefaultFilter(e,!0)}createFilterComp(e,t,s,o,i,n){const r=()=>{const c=this.createFilterCompParams(e,i,n),d=o(c,i);return mx(this.beans.userCompFactory,t,d,s)},a=r();return a?{compDetails:a,createFilterUi:c=>(c?r():a).newAgStackInstance()}:null}createFilterInstance(e,t,s,o){const i=this.beans.selectableFilter;i?.isSelectable(t)&&(t=i.getFilterDef(e,t));const{handler:n,handlerParams:r,handlerGenerator:a}=this.createHandler(e,t,s)??{},l=this.createFilterComp(e,t,s,o,!!n,"init");if(!l)return{compDetails:null,createFilterUi:null,handler:n,handlerGenerator:a,handlerParams:r};const{compDetails:c,createFilterUi:d}=l;return this.isGlobalButtons&&(c.params?.buttons?.length||z(281,{colId:e.getColId()})),{compDetails:c,handler:n,handlerGenerator:a,handlerParams:r,createFilterUi:d}}createBaseFilterParams(e,t){const{filterManager:s,rowModel:o}=this.beans;return we(this.gos,{column:e,colDef:e.getColDef(),getValue:this.createGetValue(e),doesRowPassOtherFilter:t?()=>!0:i=>s?.doesRowPassOtherFilters(e.getColId(),i)??!0,rowModel:o})}createFilterCompParams(e,t,s,o){const i=this.filterChangedCallbackFactory(e),n=this.createBaseFilterParams(e,o);if(n.filterChangedCallback=i,n.filterModifiedCallback=o?()=>{}:r=>this.filterModified(e,r),t){const r=n,a=e.getColId(),l=lt(this.model,a);r.model=l,r.state=this.state.get(a)??{model:l},r.onModelChange=(c,d)=>{this.updateStoredModel(a,c),this.refreshHandlerAndUi(e,c,"ui",!1,d).then(()=>{i({...d,source:"columnFilter"})})},r.onStateChange=c=>{this.updateState(e,c),this.updateOrRefreshFilterUi(e)},r.onAction=(c,d,u)=>{this.updateModel(e,c,d),this.dispatchLocalEvent({type:"filterAction",column:e,action:c,event:u})},r.getHandler=()=>this.getHandler(e,!0),r.onUiChange=c=>this.filterUiChanged(e,c),r.source=s}return n}createFilterUiForHandler(e,t){return t?{created:!1,create:t,filterParams:e.params,compDetails:e}:null}createFilterUiLegacy(e,t,s){const o=t(),i={created:!0,create:t,filterParams:e.params,compDetails:e,promise:o};return o.then(s),i}createFilterWrapper(e){const{compDetails:t,handler:s,handlerGenerator:o,handlerParams:i,createFilterUi:n}=this.createFilterInstance(e,e.getColDef(),this.getDefaultFilter(e),a=>a),r=e.getColId();if(s)return delete this.initialModel[r],s.init?.({...i,source:"init",model:lt(this.model,r)}),{column:e,isHandler:!0,handler:s,handlerGenerator:o,handlerParams:i,filterUi:this.createFilterUiForHandler(t,n)};if(n){const a={column:e,filterUi:null,isHandler:!1};return a.filterUi=this.createFilterUiLegacy(t,n,l=>{a.filter=l??void 0}),a}return{column:e,filterUi:null,isHandler:!1}}createHandlerFunc(e,t,s){const{gos:o,frameworkOverrides:i,registry:n}=this.beans;let r;const a=p=>{const f=p.filter;if(tm(f)){const C=f.handler;return C||(r=f.doesFilterPass,r?()=>({doesFilterPass:r}):void 0)}return typeof f=="string"?f:void 0},l=o.get("enableFilterHandlers"),c=l?a(t):void 0,d=p=>()=>this.createBean(n.createDynamicBean(p,!0));let u,h;if(typeof c=="string"){const p=o.get("filterHandlers")?.[c];p!=null?u=p:_R.has(c)&&(u=d(c),h=c)}else u=c;if(!u){let p;const{compName:f,jsComp:C,fwComp:v}=im(i,t);f?p=f:C==null&&v==null&&t.filter===!0&&(p=s),h=this.handlerMap[p],h&&(u=d(h))}return u?{filterHandler:u,handlerNameOrCallback:r??h}:l?(Qe(o)&&z(277,{colId:e.getColId()}),Y4):void 0}createHandler(e,t,s){const o=this.createHandlerFunc(e,t,s);if(!o)return;const i=uc(this.beans.userCompFactory,t,this.createFilterCompParams(e,!0,"init")),{handlerNameOrCallback:n,filterHandler:r}=o,{handler:a,handlerParams:l}=this.createHandlerFromFunc(e,r,i);return{handler:a,handlerParams:l,handlerGenerator:n??r}}createHandlerFromFunc(e,t,s){const o=e.getColDef(),i=t(we(this.gos,{column:e,colDef:o})),n=this.createHandlerParams(e,s);return{handler:i,handlerParams:n}}createHandlerParams(e,t){const s=e.getColDef(),o=e.getColId(),i=this.filterChangedCallbackFactory(e);return we(this.gos,{colDef:s,column:e,getValue:this.createGetValue(e),doesRowPassOtherFilter:n=>this.beans.filterManager?.doesRowPassOtherFilters(o,n)??!0,onModelChange:(n,r)=>{this.updateStoredModel(o,n),this.refreshHandlerAndUi(e,n,"handler",!1,r).then(()=>{i({...r,source:"columnFilter"})})},filterParams:t})}onColumnsChanged(){const e=[],{colModel:t,filterManager:s,groupFilter:o}=this.beans;this.allColumnFilters.forEach((n,r)=>{let a;n.column.isPrimary()?a=t.getColDefCol(r):a=t.getCol(r),!(a&&a===n.column)&&(e.push(n.column),this.disposeFilterWrapper(n,"columnChanged"),this.disposeColumnListener(r))});const i=o&&e.every(n=>o.isGroupFilter(n));e.length>0&&!i&&s?.onFilterChanged({columns:e,source:"api"})}isFilterAllowed(e){if(!e.isFilterAllowed())return!1;const s=this.beans.groupFilter;return s?.isGroupFilter(e)?s.isFilterAllowed(e):!0}getFloatingFilterCompDetails(e,t){const{userCompFactory:s,frameworkOverrides:o,selectableFilter:i}=this.beans,n=h=>{const p=this.getOrCreateFilterUi(e);p?.then(f=>{h(Jn(f))})},r=e.getColDef(),a=i?.isSelectable(r)?i.getFilterDef(e,r):r,l=r2(o,a,()=>this.getDefaultFloatingFilter(e))??"agReadOnlyFloatingFilter",c=this.gos.get("enableFilterHandlers"),d=uc(s,a,this.createFilterCompParams(e,c,"init",!0)),u=we(this.gos,{column:e,filterParams:d,currentParentModel:()=>this.getCurrentFloatingFilterParentModel(e),parentFilterInstance:n,showParentFilter:t});if(c){const h=u,p=e.getColId(),f=this.filterChangedCallbackFactory(e);h.onUiChange=C=>this.floatingFilterUiChanged(e,C),h.model=lt(this.model,p),h.onModelChange=(C,v)=>{this.updateStoredModel(p,C),this.refreshHandlerAndUi(e,C,"floating",!0,v).then(()=>{f({...v,source:"columnFilter"})})},h.getHandler=()=>this.getHandler(e,!0),h.source="init"}return Sx(s,r,u,l)}getCurrentFloatingFilterParentModel(e){return this.getModelFromFilterWrapper(this.cachedFilter(e)??{column:e})}destroyFilterUi(e,t,s,o){const i="paramsUpdated";if(e.isHandler){const n=t.getColId();delete this.initialModel[n],this.state.delete(n);const r=e.filterUi,a=this.createFilterUiForHandler(s,o);e.filterUi=a;const l=this.eventSvc;r?.created?r.promise.then(c=>{this.destroyBean(c),l.dispatchEvent({type:"filterDestroyed",source:i,column:t})}):l.dispatchEvent({type:"filterHandlerDestroyed",source:i,column:t})}else this.destroyFilter(t,i)}destroyFilter(e,t="api"){const s=e.getColId(),o=this.allColumnFilters.get(s);this.disposeColumnListener(s),delete this.initialModel[s],o&&this.disposeFilterWrapper(o,t).then(i=>{i&&this.isAlive()&&this.beans.filterManager?.onFilterChanged({columns:[e],source:"api"})})}disposeColumnListener(e){const t=this.allColumnListeners.get(e);t&&(this.allColumnListeners.delete(e),t())}disposeFilterWrapper(e,t){let s=!1;const{column:o,isHandler:i,filterUi:n}=e,r=o.getColId();i&&(s=this.isHandlerActive(o),this.destroyBean(e.handler),delete this.model[r],this.state.delete(r));const a=()=>{this.setColFilterActive(o,!1,"filterDestroyed"),this.allColumnFilters.delete(r),this.eventSvc.dispatchEvent({type:"filterDestroyed",source:t,column:o})};if(n){if(n.created)return n.promise.then(l=>(s=i?s:!!l?.isFilterActive(),this.destroyBean(l),a(),s));a()}return Ae.resolve(s)}filterChangedCallbackFactory(e){return t=>{this.callOnFilterChangedOutsideRenderCycle({additionalEventAttributes:t,columns:[e],column:e,source:t?.source??"columnFilter"})}}filterParamsChanged(e,t="api"){const s=this.allColumnFilters.get(e);if(!s)return;const o=this.beans,i=s.column,n=i.getColDef(),r=i.isFilterAllowed(),a=this.getDefaultFilter(i),l=o.selectableFilter,c=l?.isSelectable(n)?l.getFilterDef(i,n):n,d=r?this.createHandlerFunc(i,c,this.getDefaultFilter(i)):void 0,u=!!d,h=s.isHandler;if(h!=u){this.destroyFilter(i,"paramsUpdated");return}const{compDetails:p,createFilterUi:f}=(r?this.createFilterComp(i,c,a,v=>v,u,"colDef"):null)??{compDetails:null,createFilterUi:null},C=p?.params??uc(o.userCompFactory,c,this.createFilterCompParams(i,u,"colDef"));if(h){const v=d?.handlerNameOrCallback??d?.filterHandler,w=lt(this.model,e);if(s.handlerGenerator!=v){const b=s.handler,{handler:S,handlerParams:y}=this.createHandlerFromFunc(i,d.filterHandler,C);s.handler=S,s.handlerParams=y,s.handlerGenerator=v,delete this.model[e],S.init?.({...y,source:"init",model:null}),this.destroyBean(b),w!=null&&this.beans.filterManager?.onFilterChanged({columns:[i],source:t})}else{const b=this.createHandlerParams(i,p?.params);s.handlerParams=b,s.handler.refresh?.({...b,source:"colDef",model:w})}}if(this.areFilterCompsDifferent(s.filterUi?.compDetails??null,p)||!s.filterUi||!p){this.destroyFilterUi(s,i,p,f);return}s.filterUi.filterParams=C,Us(s,h)?.then(v=>{(v?.refresh?v.refresh(C):!0)===!1?this.destroyFilterUi(s,i,p,f):this.dispatchLocalEvent({type:"filterParamsChanged",column:i,params:C})})}refreshHandlerAndUi(e,t,s,o,i){const n=this.cachedFilter(e);if(!n)return o&&this.getOrCreateFilterWrapper(e,!0),Ae.resolve();if(!n.isHandler)return Ae.resolve();const{filterUi:r,handler:a,handlerParams:l}=n;return jR(()=>{if(r){const{created:c,filterParams:d}=r;if(c)return r.promise.then(u=>u?{filter:u,filterParams:d}:void 0);r.refreshed=!0}return Ae.resolve(void 0)},a,l,t,this.state.get(e.getColId())??{model:t},s,i)}setColumnFilterWrapper(e,t){const s=e.getColId();this.allColumnFilters.set(s,t),this.allColumnListeners.set(s,this.addManagedListeners(e,{colDefChanged:()=>this.filterParamsChanged(s)})[0])}areFilterCompsDifferent(e,t){if(!t||!e)return!0;const{componentClass:s}=e,{componentClass:o}=t;return!(s===o||s?.render&&o?.render&&s.render===o.render)}hasFloatingFilters(){return this.beans.colModel.getCols().some(t=>t.getColDef().floatingFilter)}getFilterInstance(e){const t=this.beans.colModel.getColDefCol(e);if(!t)return Promise.resolve(void 0);const s=this.getOrCreateFilterUi(t);return s?new Promise(o=>{s.then(i=>{o(Jn(i))})}):Promise.resolve(null)}processFilterModelUpdateQueue(){this.modelUpdates.forEach(({model:e,source:t})=>this.setModel(e,t)),this.modelUpdates=[],this.columnModelUpdates.forEach(({key:e,model:t,resolve:s})=>{this.setModelForColumn(e,t).then(()=>s())}),this.columnModelUpdates=[]}getModelForColumn(e,t){if(t){const{state:o,model:i}=this,n=e.getColId(),r=o.get(n);return r?r.model??null:lt(i,n)}const s=this.cachedFilter(e);return s?this.getModelFromFilterWrapper(s):null}setModelForColumn(e,t){if(this.beans.dataTypeSvc?.isPendingInference){let s=()=>{};const o=new Promise(i=>{s=i});return this.columnModelUpdates.push({key:e,model:t,resolve:s}),o}return new Promise(s=>{this.setModelForColumnLegacy(e,t).then(o=>s(o))})}getStateForColumn(e){return this.state.get(e)??{model:lt(this.model,e)}}setModelForColumnLegacy(e,t){const s=this.beans.colModel.getColDefCol(e),o=s?this.getOrCreateFilterWrapper(s,!0):null;return o?this.setModelOnFilterWrapper(o,t):Ae.resolve()}setColDefPropsForDataType(e,t,s){const o=e.filter,i=o===!0?this.getDefaultFilterFromDataType(()=>t.baseDataType):o;if(typeof i!="string")return;let n,r;const a=this.beans,{filterParams:l,filterValueGetter:c}=e;i==="agMultiColumnFilter"?{filterParams:n,filterValueGetter:r}=a.multiFilter?.getParamsForDataType(l,c,t,s)??{}:{filterParams:n,filterValueGetter:r}=QR(i,l,c,t,s,a,this.getLocaleTextFunc()),e.filterParams=n,r&&(e.filterValueGetter=r)}setColFilterActive(e,t,s,o){e.filterActive!==t&&(e.filterActive=t,e.dispatchColEvent("filterActiveChanged",s)),e.dispatchColEvent("filterChanged",s,o)}setModelOnFilterWrapper(e,t,s){return new Ae(o=>{if(e.isHandler){const n=e.column,r=n.getColId(),a=this.model[r];if(this.updateStoredModel(r,t),s&&t===a){o();return}this.refreshHandlerAndUi(n,t,"api").then(()=>o());return}const i=Us(e);if(i){i.then(n=>{if(typeof n?.setModel!="function"){z(65),o();return}(n.setModel(t)||Ae.resolve()).then(()=>o())});return}o()})}updateStoredModel(e,t){X(t)?this.model[e]=t:delete this.model[e];const s=this.state.get(e),o={model:t,state:s?.state};this.state.set(e,o)}filterModified(e,t){this.getOrCreateFilterUi(e)?.then(s=>{this.eventSvc.dispatchEvent({type:"filterModified",column:e,filterInstance:s,...t})})}filterUiChanged(e,t){this.gos.get("enableFilterHandlers")&&this.eventSvc.dispatchEvent({type:"filterUiChanged",column:e,...t})}floatingFilterUiChanged(e,t){this.gos.get("enableFilterHandlers")&&this.eventSvc.dispatchEvent({type:"floatingFilterUiChanged",column:e,...t})}updateModel(e,t,s){const o=e.getColId(),i=this.cachedFilter(e),n=()=>i?.filterUi;cg(t,n,()=>lt(this.model,o),()=>this.state.get(o),r=>this.updateState(e,r),r=>n()?.filterParams?.onModelChange(r,s),i?.isHandler?i.handler.processModelToApply?.bind(i.handler):void 0)}updateAllModels(e,t){const s=[];this.allColumnFilters.forEach((o,i)=>{const n=this.beans.colModel.getColDefCol(i);n&&cg(e,()=>o.filterUi,()=>lt(this.model,i),()=>this.state.get(i),r=>this.updateState(n,r),r=>{this.updateStoredModel(i,r),this.dispatchLocalEvent({type:"filterAction",column:n,action:e}),s.push(this.refreshHandlerAndUi(n,r,"ui"))},o?.isHandler?o.handler.processModelToApply?.bind(o.handler):void 0)}),s.length&&Ae.all(s).then(()=>{this.callOnFilterChangedOutsideRenderCycle({source:"columnFilter",additionalEventAttributes:t,columns:[]})})}updateOrRefreshFilterUi(e){const t=e.getColId();Pm(()=>this.cachedFilter(e)?.filterUi,()=>lt(this.model,t),()=>this.state.get(t))}updateState(e,t){this.state.set(e.getColId(),t),this.dispatchLocalEvent({type:"filterStateChanged",column:e,state:t})}canApplyAll(){const{state:e,model:t,activeFilterComps:s}=this;for(const i of s)if(i.source==="COLUMN_MENU")return!1;let o=!1;for(const i of e.keys()){const n=e.get(i);if(n.valid===!1)return!1;(n.model??null)!==lt(t,i)&&(o=!0)}return o}hasUnappliedModel(e){const{model:t,state:s}=this;return(s.get(e)?.model??null)!==lt(t,e)}setGlobalButtons(e){this.isGlobalButtons=e,this.dispatchLocalEvent({type:"filterGlobalButtons",isGlobal:e})}shouldKeepStateOnDetach(e,t){if(t==="newFiltersToolPanel")return!0;const s=this.beans.filterPanelSvc;return s?.isActive?!!s.getState(e.getColId()):!1}destroy(){super.destroy(),this.allColumnFilters.forEach(e=>this.disposeFilterWrapper(e,"gridDestroyed")),this.allColumnListeners.clear(),this.state.clear(),this.activeFilterComps.clear()}};function X4(e){return!!e.filterManager?.isAnyFilterPresent()}function Q4(e,t="api"){e.filterManager?.onFilterChanged({source:t})}var J4=class extends O{constructor(){super(...arguments),this.beanName="filterManager",this.advFilterModelUpdateQueue=[]}wireBeans(e){this.quickFilter=e.quickFilter,this.advancedFilter=e.advancedFilter,this.colFilter=e.colFilter}postConstruct(){const e=this.refreshFiltersForAggregations.bind(this),t=this.updateAdvFilterColumns.bind(this);this.addManagedEventListeners({columnValueChanged:e,columnPivotChanged:e,columnPivotModeChanged:e,newColumnsLoaded:t,columnVisible:t,advancedFilterEnabledChanged:({enabled:o})=>this.onAdvFilterEnabledChanged(o),dataTypesInferred:this.processFilterModelUpdateQueue.bind(this)}),this.externalFilterPresent=this.isExternalFilterPresentCallback(),this.addManagedPropertyListeners(["isExternalFilterPresent","doesExternalFilterPass"],()=>{this.onFilterChanged({source:"api"})}),this.updateAggFiltering(),this.addManagedPropertyListener("groupAggFiltering",()=>{this.updateAggFiltering(),this.onFilterChanged()}),this.quickFilter&&this.addManagedListeners(this.quickFilter,{quickFilterChanged:()=>this.onFilterChanged({source:"quickFilter"})});const{gos:s}=this;this.alwaysPassFilter=s.get("alwaysPassFilter"),this.addManagedPropertyListener("alwaysPassFilter",()=>{this.alwaysPassFilter=s.get("alwaysPassFilter"),this.onFilterChanged({source:"api"})})}isExternalFilterPresentCallback(){const e=this.gos.getCallback("isExternalFilterPresent");return typeof e=="function"&&e({})}doesExternalFilterPass(e){const t=this.gos.get("doesExternalFilterPass");return typeof t=="function"&&t(e)}setFilterState(e,t,s="api"){this.isAdvFilterEnabled()||this.colFilter?.setState(e,t,s)}setFilterModel(e,t="api",s){if(this.isAdvFilterEnabled()){s||this.warnAdvFilters();return}this.colFilter?.setModel(e,t)}getFilterModel(){return this.colFilter?.getModel()??{}}getFilterState(){return this.colFilter?.getState()}isColumnFilterPresent(){return!!this.colFilter?.isFilterPresent()}isAggregateFilterPresent(){return!!this.colFilter?.isAggFilterPresent()}isChildFilterPresent(){return this.isColumnFilterPresent()||this.isQuickFilterPresent()||this.externalFilterPresent||this.isAdvFilterPresent()}isAnyFilterPresent(){return this.isChildFilterPresent()||this.isAggregateFilterPresent()}isAdvFilterPresent(){return this.isAdvFilterEnabled()&&this.advancedFilter.isFilterPresent()}onAdvFilterEnabledChanged(e){e?this.colFilter?.disableFilters()&&this.onFilterChanged({source:"advancedFilter"}):this.advancedFilter?.isFilterPresent()&&(this.advancedFilter.setModel(null),this.onFilterChanged({source:"advancedFilter"}))}isAdvFilterEnabled(){return!!this.advancedFilter?.isEnabled()}isAdvFilterHeaderActive(){return this.isAdvFilterEnabled()&&this.advancedFilter.isHeaderActive()}refreshFiltersForAggregations(){md(this.gos)&&this.isAnyFilterPresent()&&this.onFilterChanged()}onFilterChanged(e={}){const{source:t,additionalEventAttributes:s,columns:o=[]}=e;this.externalFilterPresent=this.isExternalFilterPresentCallback(),(this.colFilter?this.colFilter.updateBeforeFilterChanged(e):Ae.resolve()).then(()=>{const i={source:t,type:"filterChanged",columns:o};s&&bt(i,s),this.eventSvc.dispatchEvent(i),this.colFilter?.updateAfterFilterChanged()})}isSuppressFlashingCellsBecauseFiltering(){return!!this.colFilter?.isSuppressFlashingCellsBecauseFiltering()}isQuickFilterPresent(){return!!this.quickFilter?.isFilterPresent()}updateAggFiltering(){this.aggFiltering=!!md(this.gos)}isAggregateQuickFilterPresent(){return this.isQuickFilterPresent()&&this.shouldApplyQuickFilterAfterAgg()}isNonAggregateQuickFilterPresent(){return this.isQuickFilterPresent()&&!this.shouldApplyQuickFilterAfterAgg()}shouldApplyQuickFilterAfterAgg(){return(this.aggFiltering||this.beans.colModel.isPivotMode())&&!this.gos.get("applyQuickFilterBeforePivotOrAgg")}doesRowPassOtherFilters(e,t){return this.doesRowPassFilter({rowNode:t,colIdToSkip:e})}doesRowPassAggregateFilters(e){const{rowNode:t}=e;return this.alwaysPassFilter?.(t)?!0:!(this.isAggregateQuickFilterPresent()&&!this.quickFilter.doesRowPass(t)||this.isAggregateFilterPresent()&&!this.colFilter.doFiltersPass(t,e.colIdToSkip,!0))}doesRowPassFilter(e){const{rowNode:t}=e;return this.alwaysPassFilter?.(t)?!0:!(this.isNonAggregateQuickFilterPresent()&&!this.quickFilter.doesRowPass(t)||this.externalFilterPresent&&!this.doesExternalFilterPass(t)||this.isColumnFilterPresent()&&!this.colFilter.doFiltersPass(t,e.colIdToSkip)||this.isAdvFilterPresent()&&!this.advancedFilter.doesFilterPass(t))}isFilterAllowed(e){return this.isAdvFilterEnabled()?!1:!!this.colFilter?.isFilterAllowed(e)}getAdvFilterModel(){return this.isAdvFilterEnabled()?this.advancedFilter.getModel():null}setAdvFilterModel(e,t="api"){if(this.isAdvFilterEnabled()){if(this.beans.dataTypeSvc?.isPendingInference){this.advFilterModelUpdateQueue.push(e);return}this.advancedFilter.setModel(e??null),this.onFilterChanged({source:t})}}toggleAdvFilterBuilder(e,t){this.isAdvFilterEnabled()&&this.advancedFilter.getCtrl().toggleFilterBuilder({source:t,force:e})}updateAdvFilterColumns(){this.isAdvFilterEnabled()&&this.advancedFilter.updateValidity()&&this.onFilterChanged({source:"advancedFilter"})}hasFloatingFilters(){return this.isAdvFilterEnabled()?!1:!!this.colFilter?.hasFloatingFilters()}getColumnFilterInstance(e){return this.isAdvFilterEnabled()?(this.warnAdvFilters(),Promise.resolve(void 0)):this.colFilter?.getFilterInstance(e)??Promise.resolve(void 0)}warnAdvFilters(){z(68)}setupAdvFilterHeaderComp(e){this.advancedFilter?.getCtrl().setupHeaderComp(e)}getHeaderRowCount(){return this.isAdvFilterHeaderActive()?1:0}getHeaderHeight(){return this.isAdvFilterHeaderActive()?this.advancedFilter.getCtrl().getHeaderHeight():0}processFilterModelUpdateQueue(){for(const e of this.advFilterModelUpdateQueue)this.setAdvFilterModel(e);this.advFilterModelUpdateQueue=[]}setColumnFilterModel(e,t){return this.isAdvFilterEnabled()?(this.warnAdvFilters(),Promise.resolve()):this.colFilter?.setModelForColumn(e,t)??Promise.resolve()}},eT=class extends O{constructor(){super(...arguments),this.beanName="filterMenuFactory"}wireBeans(e){this.popupSvc=e.popupSvc}hideActiveMenu(){this.hidePopup?.()}showMenuAfterMouseEvent(e,t,s,o){e&&!e.isColumn||this.showPopup(e,i=>{this.popupSvc?.positionPopupUnderMouseEvent({column:e,type:s,mouseEvent:t,ePopup:i})},s,t.target,Gt(this.gos),o)}showMenuAfterButtonClick(e,t,s,o){if(e&&!e.isColumn)return;let i=-1,n="left";const r=Gt(this.gos);!r&&this.gos.get("enableRtl")&&(i=1,n="right");const a=r?void 0:4*i,l=r?void 0:4;this.showPopup(e,c=>{this.popupSvc?.positionPopupByComponent({type:s,eventSource:t,ePopup:c,nudgeX:a,nudgeY:l,alignSide:n,keepWithinBounds:!0,position:"under",column:e})},s,t,r,o)}showPopup(e,t,s,o,i,n){const r=e?this.createBean(new ZR(e,"COLUMN_MENU")):void 0;if(this.activeMenu=r,!r?.hasFilter()||!e){Be(57);return}const a=xt({tag:"div",cls:`ag-menu${i?"":" ag-filter-menu"}`,role:"presentation"});[this.tabListener]=this.addManagedElementListeners(a,{keydown:C=>this.trapFocusWithin(C,a)}),a.appendChild(r?.getGui());let l;const c=()=>r?.afterGuiDetached(),d=hy(this.gos)?o??this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody:void 0,u=C=>{Cg(e,!1,"contextMenu");const v=C instanceof KeyboardEvent;this.tabListener&&(this.tabListener=this.tabListener()),v&&o&&Gs(o)&&dm(o)?.focus({preventScroll:!0}),c(),this.destroyBean(this.activeMenu),this.dispatchVisibleChangedEvent(!1,s,e),n?.()},h=this.getLocaleTextFunc(),p=i&&s!=="columnFilter"?h("ariaLabelColumnMenu","Column Menu"):h("ariaLabelColumnFilter","Column Filter"),f=this.popupSvc?.addPopup({modal:!0,eChild:a,closeOnEsc:!0,closedCallback:u,positionCallback:()=>t(a),anchorToElement:d,ariaLabel:p});f&&(this.hidePopup=l=f.hideFunc),r.afterInit().then(()=>{t(a),r.afterGuiAttached({container:s,hidePopup:l})}),Cg(e,!0,"contextMenu"),this.dispatchVisibleChangedEvent(!0,s,e)}trapFocusWithin(e,t){e.key!==I.TAB||e.defaultPrevented||Uo(this.beans,t,!1,e.shiftKey)||(e.preventDefault(),Ho(t,e.shiftKey))}dispatchVisibleChangedEvent(e,t,s){this.eventSvc.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()}},tT=class extends O{constructor(){super(...arguments),this.beanName="filterValueSvc"}getValue(e,t,s){if(!t)return;const o=e.getColDef(),{selectableFilter:i,valueSvc:n}=this.beans,r=s??i?.getFilterValueGetter(e.getColId())??o.filterValueGetter;return r?this.executeFilterValueGetter(r,t.data,e,t,o):n.getValue(e,t)}executeFilterValueGetter(e,t,s,o,i){const{expressionSvc:n,valueSvc:r}=this.beans,a=we(this.gos,{data:t,node:o,column:s,colDef:i,getValue:r.getValueCallback.bind(r,o)});return typeof e=="function"?e(a):n?.evaluate(e,a)}},sT={tag:"div",cls:"ag-floating-filter-input",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eFloatingFilterText"}]},oT=class extends Xe{constructor(){super(sT,[il]),this.eFloatingFilterText=Ce}init(e){this.params=e;const t=this.beans.colNames.getDisplayNameForColumn(e.column,"header",!0);if(this.eFloatingFilterText.setDisabled(!0).setInputAriaLabel(`${t} ${this.getLocaleTextFunc()("ariaFilterInput","Filter Input")}`),this.gos.get("enableFilterHandlers")){const s=e,o=s.getHandler();if(o.getModelAsString){const i=o.getModelAsString(s.model);this.eFloatingFilterText.setValue(i)}}}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)}})}refresh(e){this.init(e)}},$u=class{constructor(){this.customFilterOptions={}}init(e,t){this.filterOptions=e.filterOptions??t,this.mapCustomOptions(),this.defaultOption=this.getDefaultItem(e.defaultOption)}refresh(e,t){const s=e.filterOptions??t;this.filterOptions!==s&&(this.filterOptions=s,this.customFilterOptions={},this.mapCustomOptions()),this.defaultOption=this.getDefaultItem(e.defaultOption)}mapCustomOptions(){const{filterOptions:e}=this;if(e)for(const t of e){if(typeof t=="string")continue;const s=[["displayKey"],["displayName"],["predicate","test"]],o=i=>i.some(n=>t[n]!=null)?!0:(z(72,{keys:i}),!1);if(!s.every(o)){this.filterOptions=e.filter(i=>i===t)||[];continue}this.customFilterOptions[t.displayKey]=t}}getDefaultItem(e){const{filterOptions:t}=this;if(e)return e;if(t.length>=1){const s=t[0];if(typeof s=="string")return s;if(s.displayKey)return s.displayKey;z(73)}else z(74)}getCustomOption(e){return this.customFilterOptions[e]}};function zn(e,t,s){return s==null?e.splice(t):e.splice(t,s)}function za(e){return e==null||typeof e=="string"&&e.trim().length===0}function iT(e){return e==="AND"||e==="OR"?e:"AND"}function nT(e,t,s){if(e==null)return;const{predicate:o}=e;if(o!=null&&!t.some(i=>i==null))return o(t,s)}function rT(e,t){let s=e.length;return s>t&&(e.splice(t),z(78),s=t),s}function or(e,t){const s=t.getCustomOption(e);if(s){const{numberOfInputs:i}=s;return i??1}return e&&["empty","notBlank","blank"].indexOf(e)>=0?0:e==="inRange"?2:1}var qu=class extends n2{constructor(e,t,s){super(e,"simple-filter"),this.mapValuesFromModel=t,this.defaultOptions=s,this.eTypes=[],this.eJoinPanels=[],this.eJoinAnds=[],this.eJoinOrs=[],this.eConditionBodies=[],this.listener=()=>this.onUiChanged(),this.lastUiCompletePosition=null,this.joinOperatorId=0}setParams(e){super.setParams(e);const t=new $u;this.optionsFactory=t,t.init(e,this.defaultOptions),this.commonUpdateSimpleParams(e),this.createOption(),this.createMissingConditionsAndOperators()}updateParams(e,t){this.optionsFactory.refresh(e,this.defaultOptions),super.updateParams(e,t),this.commonUpdateSimpleParams(e)}commonUpdateSimpleParams(e){this.setNumConditions(e),this.defaultJoinOperator=iT(e.defaultJoinOperator),this.filterPlaceholder=e.filterPlaceholder,this.createFilterListOptions();const t=this.getGui();this.isReadOnly()?t.setAttribute("tabindex","-1"):t.removeAttribute("tabindex")}onFloatingFilterChanged(e,t){this.setTypeFromFloatingFilter(e),this.setValueFromFloatingFilter(t),this.onUiChanged("immediately",!0)}setTypeFromFloatingFilter(e){this.eTypes.forEach((t,s)=>{const o=s===0?e:this.optionsFactory.defaultOption;t.setValue(o,!0)})}getModelFromUi(){const e=this.getUiCompleteConditions();return e.length===0?null:this.maxNumConditions>1&&e.length>1?{filterType:this.filterType,operator:this.getJoinOperator(),conditions:e}:e[0]}getConditionTypes(){return this.eTypes.map(e=>e.getValue())}getConditionType(e){return this.eTypes[e].getValue()}getJoinOperator(){const{eJoinOrs:e,defaultJoinOperator:t}=this;return e.length===0?t:e[0].getValue()===!0?"OR":"AND"}areNonNullModelsEqual(e,t){const s=!e.operator,o=!t.operator;if(!s&&o||s&&!o)return!1;let n;if(s){const r=e,a=t;n=this.areSimpleModelsEqual(r,a)}else{const r=e,a=t;n=r.operator===a.operator&&ro(r.conditions,a.conditions,(l,c)=>this.areSimpleModelsEqual(l,c))}return n}setModelIntoUi(e,t){if(e==null)return this.resetUiToDefaults(t),Ae.resolve();if(e.operator){const o=e;let i=o.conditions;i==null&&(i=[],z(77));const n=rT(i,this.maxNumConditions),r=this.getNumConditions();if(n<r)this.removeConditionsAndOperators(n);else if(n>r)for(let l=r;l<n;l++)this.createJoinOperatorPanel(),this.createOption();const a=o.operator==="OR";this.eJoinAnds.forEach(l=>l.setValue(!a,!0)),this.eJoinOrs.forEach(l=>l.setValue(a,!0)),i.forEach((l,c)=>{this.eTypes[c].setValue(l.type,!0),this.setConditionIntoUi(l,c)})}else{const o=e;this.getNumConditions()>1&&this.removeConditionsAndOperators(1),this.eTypes[0].setValue(o.type,!0),this.setConditionIntoUi(o,0)}return this.lastUiCompletePosition=this.getNumConditions()-1,this.createMissingConditionsAndOperators(),this.updateUiVisibility(),t||this.params.onUiChange(this.getUiChangeEventParams()),Ae.resolve()}setNumConditions(e){let t=e.maxNumConditions??2;t<1&&(z(79),t=1),this.maxNumConditions=t;let s=e.numAlwaysVisibleConditions??1;s<1&&(z(80),s=1),s>t&&(z(81),s=t),this.numAlwaysVisibleConditions=s}createOption(){const e=this.getGui(),t=this.createManagedBean(new Du);this.eTypes.push(t),t.addCss("ag-filter-select"),e.appendChild(t.getGui());const s=this.createEValue();this.eConditionBodies.push(s),e.appendChild(s),this.putOptionsIntoDropdown(t),this.resetType(t);const o=this.getNumConditions()-1;this.forEachPositionInput(o,i=>this.resetInput(i)),this.addChangedListeners(t,o)}createJoinOperatorPanel(){const e=xt({tag:"div",cls:"ag-filter-condition"});this.eJoinPanels.push(e);const t=this.createJoinOperator(this.eJoinAnds,e,"and"),s=this.createJoinOperator(this.eJoinOrs,e,"or");this.getGui().appendChild(e);const o=this.eJoinPanels.length-1,i=this.joinOperatorId++;this.resetJoinOperatorAnd(t,o,i),this.resetJoinOperatorOr(s,o,i),this.isReadOnly()||(t.onValueChange(this.listener),s.onValueChange(this.listener))}createJoinOperator(e,t,s){const o=this.createManagedBean(new Nx);e.push(o);const i="ag-filter-condition-operator";return o.addCss(i),o.addCss(`${i}-${s}`),t.appendChild(o.getGui()),o}createFilterListOptions(){this.filterListOptions=this.optionsFactory.filterOptions.map(e=>typeof e=="string"?this.createBoilerplateListOption(e):this.createCustomListOption(e))}putOptionsIntoDropdown(e){const{filterListOptions:t}=this;for(const s of t)e.addOption(s);e.setDisabled(t.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.getLocaleTextFunc()(s.displayKey,s.displayName):this.translate(t)}}createBodyTemplate(){return null}getAgComponents(){return[]}updateUiVisibility(){const e=this.getJoinOperator();this.updateNumConditions(),this.updateConditionStatusesAndValues(this.lastUiCompletePosition,e)}updateNumConditions(){let e=-1,t=!0;for(let s=0;s<this.getNumConditions();s++)this.isConditionUiComplete(s)?e=s:t=!1;if(this.shouldAddNewConditionAtEnd(t))this.createJoinOperatorPanel(),this.createOption();else{const s=this.lastUiCompletePosition??this.getNumConditions()-2;if(e<s){this.removeConditionsAndOperators(s+1);const o=e+1,i=s-o;i>0&&this.removeConditionsAndOperators(o,i),this.createMissingConditionsAndOperators()}}this.lastUiCompletePosition=e}updateConditionStatusesAndValues(e,t){this.eTypes.forEach((o,i)=>{const n=this.isConditionDisabled(i,e);o.setDisabled(n||this.filterListOptions.length<=1),i===1&&(Kn(this.eJoinPanels[0],n),this.eJoinAnds[0].setDisabled(n),this.eJoinOrs[0].setDisabled(n))}),this.eConditionBodies.forEach((o,i)=>{Ke(o,this.isConditionBodyVisible(i))});const s=(t??this.getJoinOperator())==="OR";for(const o of this.eJoinAnds)o.setValue(!s,!0);for(const o of this.eJoinOrs)o.setValue(s,!0);this.forEachInput((o,i,n,r)=>{this.setElementDisplayed(o,i<r),this.setElementDisabled(o,this.isConditionDisabled(n,e))}),this.resetPlaceholder()}shouldAddNewConditionAtEnd(e){return e&&this.getNumConditions()<this.maxNumConditions&&!this.isReadOnly()}removeConditionsAndOperators(e,t){if(e>=this.getNumConditions())return;const{eTypes:s,eConditionBodies:o,eJoinPanels:i,eJoinAnds:n,eJoinOrs:r}=this;this.removeComponents(s,e,t),this.removeElements(o,e,t),this.removeEValues(e,t);const a=Math.max(e-1,0);this.removeElements(i,a,t),this.removeComponents(n,a,t),this.removeComponents(r,a,t)}removeElements(e,t,s){const o=zn(e,t,s);for(const i of o)eo(i)}removeComponents(e,t,s){const o=zn(e,t,s);for(const i of o)eo(i.getGui()),this.destroyBean(i)}afterGuiAttached(e){if(super.afterGuiAttached(e),this.resetPlaceholder(),!e?.suppressFocus){let t;if(!this.isReadOnly()){const s=this.getInputs(0)[0];s instanceof So&&this.isConditionBodyVisible(0)?t=s.getInputElement():t=this.eTypes[0]?.getFocusableElement()}(t??this.getGui()).focus({preventScroll:!0})}}afterGuiDetached(){super.afterGuiDetached();const e=this.params;if(this.beans.colFilter?.shouldKeepStateOnDetach(e.column))return;e.onStateChange({model:e.model});let t=-1,s=-1,o=!1;const i=this.getJoinOperator();for(let r=this.getNumConditions()-1;r>=0;r--)if(this.isConditionUiComplete(r))t===-1&&(t=r,s=r);else{const a=r>=this.numAlwaysVisibleConditions&&!this.isConditionUiComplete(r-1),l=r<t;(a||l)&&(this.removeConditionsAndOperators(r,1),o=!0,l&&s--)}let n=!1;this.getNumConditions()<this.numAlwaysVisibleConditions&&(this.createMissingConditionsAndOperators(),n=!0),this.shouldAddNewConditionAtEnd(s===this.getNumConditions()-1)&&(this.createJoinOperatorPanel(),this.createOption(),n=!0),n&&this.updateConditionStatusesAndValues(s,i),o&&this.updateJoinOperatorsDisabled(),this.lastUiCompletePosition=s}getModelAsString(e){return this.params.getHandler()?.getModelAsString?.(e)??""}getPlaceholderText(e,t){let s=this.translate(e);if(typeof this.filterPlaceholder=="function"){const o=this.eTypes[t].getValue(),i=this.translate(o);s=this.filterPlaceholder({filterOptionKey:o,filterOption:i,placeholder:s})}else typeof this.filterPlaceholder=="string"&&(s=this.filterPlaceholder);return s}resetPlaceholder(){const e=this.getLocaleTextFunc();this.forEachInput((t,s,o,i)=>{if(!(t instanceof So))return;const n=s===0&&i>1?"inRangeStart":s===0?"filterOoo":"inRangeEnd",r=s===0&&i>1?e("ariaFilterFromValue","Filter from value"):s===0?e("ariaFilterValue","Filter Value"):e("ariaFilterToValue","Filter to Value");t.setInputPlaceholder(this.getPlaceholderText(n,o)),t.setInputAriaLabel(r)})}setElementValue(e,t,s){e instanceof So&&e.setValue(t!=null?String(t):null,!0)}setElementDisplayed(e,t){Qh(e)&&Ke(e.getGui(),t)}setElementDisabled(e,t){Qh(e)&&Kn(e.getGui(),t)}attachElementOnChange(e,t){e instanceof So&&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 o=or(t,this.optionsFactory),i=this.getInputs(e);for(let n=0;n<i.length;n++){const r=i[n];r!=null&&s(r,n,e,o)}}isConditionDisabled(e,t){return this.isReadOnly()?!0:e===0?!1:e>t+1}isConditionBodyVisible(e){const t=this.getConditionType(e);return or(t,this.optionsFactory)>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;t<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){this.removeConditionsAndOperators(this.isReadOnly()?1:this.numAlwaysVisibleConditions),this.eTypes.forEach(t=>this.resetType(t)),this.eJoinAnds.forEach((t,s)=>this.resetJoinOperatorAnd(t,s,this.joinOperatorId+s)),this.eJoinOrs.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,this.updateUiVisibility(),e||this.params.onUiChange(this.getUiChangeEventParams())}resetType(e){const s=this.getLocaleTextFunc()("ariaFilteringOperator","Filtering operator");e.setValue(this.optionsFactory.defaultOption,!0).setAriaLabel(s).setDisabled(this.isReadOnly()||this.filterListOptions.length<=1)}resetJoinOperatorAnd(e,t,s){this.resetJoinOperator(e,t,this.defaultJoinOperator==="AND",this.translate("andCondition"),s)}resetJoinOperatorOr(e,t,s){this.resetJoinOperator(e,t,this.defaultJoinOperator==="OR",this.translate("orCondition"),s)}resetJoinOperator(e,t,s,o,i){this.updateJoinOperatorDisabled(e.setValue(s,!0).setName(`ag-simple-filter-and-or-${this.getCompId()}-${i}`).setLabel(o),t)}updateJoinOperatorsDisabled(){const e=(t,s)=>this.updateJoinOperatorDisabled(t,s);this.eJoinAnds.forEach(e),this.eJoinOrs.forEach(e)}updateJoinOperatorDisabled(e,t){e.setDisabled(this.isReadOnly()||t>0)}resetInput(e){this.setElementValue(e,null),this.setElementDisabled(e,this.isReadOnly())}setConditionIntoUi(e,t){const s=this.mapValuesFromModel(e,this.optionsFactory);this.forEachInput((o,i,n)=>{n===t&&this.setElementValue(o,s[i]!=null?s[i]:null)})}setValueFromFloatingFilter(e){this.forEachInput((t,s,o)=>{this.setElementValue(t,s===0&&o===0?e:null,!0)})}addChangedListeners(e,t){this.isReadOnly()||(e.onValueChange(this.listener),this.forEachPositionInput(t,s=>{this.attachElementOnChange(s,this.listener)}))}hasInvalidInputs(){return!1}isReadOnly(){return!!this.params.readOnly}},LC=class{constructor(e,t,s,o,i,n){this.alive=!0,this.context=e,this.eParent=i;const r=Cx(t,s,o);r&&r.newAgStackInstance().then(a=>{if(!this.alive){e.destroyBean(a);return}if(this.dateComp=a,!a)return;i.appendChild(a.getGui()),a?.afterGuiAttached?.();const{tempValue:l,disabled:c}=this;l&&a.setDate(l),c!=null&&a.setDisabled?.(c),n?.(this)})}destroy(){this.alive=!1,this.dateComp=this.context.destroyBean(this.dateComp)}getDate(){return this.dateComp?this.dateComp.getDate():this.tempValue}setDate(e){const t=this.dateComp;t?t.setDate(e):this.tempValue=e}setDisabled(e){const t=this.dateComp;t?t.setDisabled?.(e):this.disabled=e}setDisplayed(e){Ke(this.eParent,e)}setInputPlaceholder(e){this.dateComp?.setInputPlaceholder?.(e)}setInputAriaLabel(e){this.dateComp?.setInputAriaLabel?.(e)}afterGuiAttached(e){this.dateComp?.afterGuiAttached?.(e)}updateParams(e){this.dateComp?.refresh?.(e)}},Ku=["equals","notEqual","lessThan","greaterThan","inRange","blank","notBlank"];function OC(e,t){const{dateFrom:s,dateTo:o,type:i}=e||{};return[s&&Mt(s,void 0,!0)||null,o&&Mt(o,void 0,!0)||null].slice(0,or(i,t))}var Qg=1e3,Jg=1/0,aT=class extends qu{constructor(){super("dateFilter",OC,Ku),this.eConditionPanelsFrom=[],this.eConditionPanelsTo=[],this.dateConditionFromComps=[],this.dateConditionToComps=[],this.minValidYear=Qg,this.maxValidYear=Jg,this.minValidDate=null,this.maxValidDate=null,this.filterType="date"}afterGuiAttached(e){super.afterGuiAttached(e),this.dateConditionFromComps[0].afterGuiAttached(e)}commonUpdateSimpleParams(e){super.commonUpdateSimpleParams(e);const t=(l,c)=>{const d=e[l];if(d!=null)if(isNaN(d))z(82,{param:l});else return d==null?c:Number(d);return c},s=t("minValidYear",Qg),o=t("maxValidYear",Jg);this.minValidYear=s,this.maxValidYear=o,s>o&&z(83);const{minValidDate:i,maxValidDate:n}=e,r=i instanceof Date?i:Mt(i);this.minValidDate=r;const a=n instanceof Date?n:Mt(n);this.maxValidDate=a,r&&a&&r>a&&z(84)}createDateCompWrapper(e){const{beans:{userCompFactory:t,context:s,gos:o},params:i}=this,n=new LC(s,t,i.colDef,we(o,{onDateChanged:()=>this.onUiChanged(),filterParams:i,location:"filter"}),e);return this.addDestroyFunc(()=>n.destroy()),n}setElementValue(e,t){e.setDate(t)}setElementDisplayed(e,t){e.setDisplayed(t)}setElementDisabled(e,t){e.setDisabled(t)}createEValue(){const e=xt({tag:"div",cls:"ag-filter-body"});return this.createFromToElement(e,this.eConditionPanelsFrom,this.dateConditionFromComps,"from"),this.createFromToElement(e,this.eConditionPanelsTo,this.dateConditionToComps,"to"),e}createFromToElement(e,t,s,o){const i=xt({tag:"div",cls:`ag-filter-${o} ag-filter-date-${o}`});t.push(i),e.appendChild(i),s.push(this.createDateCompWrapper(i))}removeEValues(e,t){this.removeDateComps(this.dateConditionFromComps,e,t),this.removeDateComps(this.dateConditionToComps,e,t),zn(this.eConditionPanelsFrom,e,t),zn(this.eConditionPanelsTo,e,t)}removeDateComps(e,t,s){const o=zn(e,t,s);for(const i of o)i.destroy()}isValidDateValue(e){if(e===null)return!1;const{minValidDate:t,maxValidDate:s,minValidYear:o,maxValidYear:i}=this;if(t){if(e<t)return!1}else if(e.getUTCFullYear()<o)return!1;if(s){if(e>s)return!1}else if(e.getUTCFullYear()>i)return!1;return!0}isConditionUiComplete(e){if(!super.isConditionUiComplete(e))return!1;let t=!0;return this.forEachInput((s,o,i,n)=>{i!==e||!t||o>=n||(t=t&&this.isValidDateValue(s.getDate()))}),t}areSimpleModelsEqual(e,t){return e.dateFrom===t.dateFrom&&e.dateTo===t.dateTo&&e.type===t.type}createCondition(e){const t=this.getConditionType(e),s={},o=this.getValues(e),i=this.params.useIsoSeparator?"T":" ";return o.length>0&&(s.dateFrom=Bt(o[0],!0,i)),o.length>1&&(s.dateTo=Bt(o[1],!0,i)),{dateFrom:null,dateTo:null,filterType:this.filterType,type:t,...s}}resetPlaceholder(){const e=this.getLocaleTextFunc(),t=this.translate("dateFormatOoo"),s=e("ariaFilterValue","Filter Value");this.forEachInput(o=>{o.setInputPlaceholder(t),o.setInputAriaLabel(s)})}getInputs(e){const{dateConditionFromComps:t,dateConditionToComps:s}=this;return e>=t.length?[null,null]:[t[e],s[e]]}getValues(e){const t=[];return this.forEachPositionInput(e,(s,o,i,n)=>{o<n&&t.push(s.getDate())}),t}translate(e){return e==="lessThan"?super.translate("before"):e==="greaterThan"?super.translate("after"):super.translate(e)}},NC=class extends O{constructor(e,t){super(),this.mapValuesFromModel=e,this.defaultOptions=t}init(e){const t=e.filterParams,s=new $u;this.optionsFactory=s,s.init(t,this.defaultOptions),this.filterModelFormatter=this.createManagedBean(new this.FilterModelFormatterClass(s,t)),this.updateParams(e),this.validateModel(e)}refresh(e){if(e.source==="colDef"){const t=e.filterParams,s=this.optionsFactory;s.refresh(t,this.defaultOptions),this.filterModelFormatter.updateParams({optionsFactory:s,filterParams:t}),this.updateParams(e)}this.validateModel(e)}updateParams(e){this.params=e}doesFilterPass(e){const t=e.model;if(t==null)return!0;const{operator:s}=t,o=[];if(s){const r=t;o.push(...r.conditions??[])}else o.push(t);const i=s&&s==="OR"?"some":"every",n=this.params.getValue(e.node);return o[i](r=>this.individualConditionPasses(e,r,n))}getModelAsString(e,t){return this.filterModelFormatter.getModelAsString(e,t)??""}validateModel(e){const{model:t,filterParams:{filterOptions:s,maxNumConditions:o}}=e;if(t==null)return;let n=Im(t)?t.conditions:[t];const r=s?.map(d=>typeof d=="string"?d:d.displayKey)??this.defaultOptions;if(!(!n||n.every(d=>r.find(u=>u===d.type)!==void 0))){this.params={...e,model:null},e.onModelChange(null);return}let l=!1;const c=this.filterType;if((n&&!n.every(d=>d.filterType===c)||t.filterType!==c)&&(n=n.map(d=>({...d,filterType:c})),l=!0),typeof o=="number"&&n&&n.length>o&&(n=n.slice(0,o),l=!0),l){const d=n.length>1?{...t,filterType:c,conditions:n}:{...n[0],filterType:c};this.params={...e,model:d},e.onModelChange(d)}}individualConditionPasses(e,t,s){const o=this.optionsFactory,i=this.mapValuesFromModel(t,o),n=o.getCustomOption(t.type),r=nT(n,i,s);return r??(s==null?this.evaluateNullValue(t.type):this.evaluateNonNullValue(i,s,t,e))}},HC=class extends NC{evaluateNullValue(e){const{includeBlanksInEquals:t,includeBlanksInNotEqual:s,includeBlanksInGreaterThan:o,includeBlanksInLessThan:i,includeBlanksInRange:n}=this.params.filterParams;switch(e){case"equals":if(t)return!0;break;case"notEqual":if(s)return!0;break;case"greaterThan":case"greaterThanOrEqual":if(o)return!0;break;case"lessThan":case"lessThanOrEqual":if(i)return!0;break;case"inRange":if(n)return!0;break;case"blank":return!0;case"notBlank":return!1}return!1}evaluateNonNullValue(e,t,s){const o=s.type;if(!this.isValid(t))return o==="notEqual"||o==="notBlank";const i=this.comparator(),n=e[0]!=null?i(e[0],t):0;switch(o){case"equals":return n===0;case"notEqual":return n!==0;case"greaterThan":return n>0;case"greaterThanOrEqual":return n>=0;case"lessThan":return n<0;case"lessThanOrEqual":return n<=0;case"inRange":{const r=i(e[1],t);return this.params.filterParams.inRangeInclusive?n>=0&&r<=0:n>0&&r<0}case"blank":return za(t);case"notBlank":return!za(t);default:return z(76,{filterModelType:o}),!0}}},GC={equals:"Equals",notEqual:"NotEqual",greaterThan:"GreaterThan",greaterThanOrEqual:"GreaterThanOrEqual",lessThan:"LessThan",lessThanOrEqual:"LessThanOrEqual",inRange:"InRange"},lT={contains:"Contains",notContains:"NotContains",equals:"TextEquals",notEqual:"TextNotEqual",startsWith:"StartsWith",endsWith:"EndsWith",inRange:"InRange"},Yu=class extends O{constructor(e,t,s){super(),this.optionsFactory=e,this.filterParams=t,this.valueFormatter=s}getModelAsString(e,t){const s=this.getLocaleTextFunc(),o=t==="filterToolPanel";if(!e)return o?Zs(this,"filterSummaryInactive"):null;if(e.operator!=null){const n=e,a=(n.conditions??[]).map(c=>this.getModelAsString(c,t)),l=n.operator==="AND"?"andCondition":"orCondition";return a.join(` ${Zs(this,l)} `)}else{if(e.type==="blank"||e.type==="notBlank")return o?Zs(this,e.type==="blank"?"filterSummaryBlank":"filterSummaryNotBlank"):s(e.type,e.type);{const n=e,r=this.optionsFactory.getCustomOption(n.type),{displayKey:a,displayName:l,numberOfInputs:c}=r||{};return a&&l&&c===0?s(a,l):this.conditionToString(n,o,n.type==="inRange"||c===2,a,l)}}}updateParams(e){const{optionsFactory:t,filterParams:s}=e;this.optionsFactory=t,this.filterParams=s}conditionForToolPanel(e,t,s,o,i,n){let r;const a=this.getTypeKey(e);return a&&(r=Zs(this,a)),i&&n&&(r=this.getLocaleTextFunc()(i,n)),r!=null?t?`${r} ${Zs(this,"filterSummaryInRangeValues",[s(),o()])}`:`${r} ${s()}`:null}getTypeKey(e){const t=this.filterTypeKeys[e];return t?`filterSummary${t}`:null}formatValue(e){const t=this.valueFormatter;return t?t(e??null)??"":String(e)}},BC=class extends Yu{constructor(e,t){super(e,t,s=>{const{dataTypeSvc:o,valueSvc:i}=this.beans,n=t.column,r=o?.getDateFormatterFunction(n),a=r?r(s??void 0):s;return i.formatValue(n,null,a)}),this.filterTypeKeys=GC}conditionToString(e,t,s,o,i){const{type:n}=e,r=Mt(e.dateFrom),a=Mt(e.dateTo),l=this.filterParams.inRangeFloatingFilterDateFormat,c=t?this.formatValue.bind(this):h=>yd(h,l),d=()=>r!==null?c(r):"null",u=()=>a!==null?c(a):"null";if(t){const h=this.conditionForToolPanel(n,s,d,u,o,i);if(h!=null)return h}return s?`${d()}-${u()}`:r!=null?c(r):`${n}`}};function cT(e,t){const s=t;return s<e?-1:s>e?1:0}var dT=class extends HC{constructor(){super(OC,Ku),this.filterType="date",this.FilterModelFormatterClass=BC}comparator(){return this.params.filterParams.comparator??cT}isValid(e){const t=this.params.filterParams.isValidDate;return!t||t(e)}},VC=class extends Xe{constructor(){super(...arguments),this.defaultDebounceMs=0}setLastTypeFromModel(e){if(!e){this.lastType=this.optionsFactory.defaultOption;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.params=e;const t=this.gos.get("enableFilterHandlers");if(this.reactive=t,this.setParams(e),t){const s=e;this.onModelUpdated(s.model)}}setParams(e){const t=new $u;this.optionsFactory=t,t.init(e.filterParams,this.defaultOptions),this.filterModelFormatter=this.createManagedBean(new this.FilterModelFormatterClass(t,e.filterParams)),this.setSimpleParams(e,!1)}setSimpleParams(e,t=!0){const s=this.optionsFactory.defaultOption;t||(this.lastType=s),this.readOnly=!!e.filterParams.readOnly;const o=this.isTypeEditable(s);this.setEditable(o)}refresh(e){this.params=e;const t=e,s=this.reactive;if((!s||t.source==="colDef")&&this.updateParams(e),s){const{source:o,model:i}=t;if(o==="dataChanged"||o==="ui")return;this.onModelUpdated(i)}}updateParams(e){const t=this.optionsFactory;t.refresh(e.filterParams,this.defaultOptions),this.setSimpleParams(e),this.filterModelFormatter.updateParams({optionsFactory:t,filterParams:e.filterParams})}onParentModelChanged(e,t){t?.afterFloatingFilter||t?.afterDataChange||this.onModelUpdated(e)}hasSingleInput(e){const t=this.optionsFactory.getCustomOption(e)?.numberOfInputs;return t==null||t==1}isTypeEditable(e){const t=["inRange","empty","blank","notBlank"];return!!e&&!this.readOnly&&this.hasSingleInput(e)&&t.indexOf(e)<0}getAriaLabel(e){return`${this.beans.colNames.getDisplayNameForColumn(e.column,"header",!0)} ${this.getLocaleTextFunc()("ariaFilterInput","Filter Input")}`}},uT={tag:"div",cls:"ag-floating-filter-input",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eReadOnlyText"},{tag:"div",ref:"eDateWrapper",cls:"ag-date-floating-filter-wrapper"}]},hT=class extends VC{constructor(){super(uT,[il]),this.eReadOnlyText=Ce,this.eDateWrapper=Ce,this.FilterModelFormatterClass=BC,this.filterType="date",this.defaultOptions=Ku}setParams(e){super.setParams(e),this.createDateComponent();const t=this.getLocaleTextFunc();this.eReadOnlyText.setDisabled(!0).setInputAriaLabel(t("ariaDateFilterInput","Date Filter Input"))}updateParams(e){super.updateParams(e),this.dateComp.updateParams(this.getDateComponentParams()),this.updateCompOnModelChange(e.currentParentModel())}updateCompOnModelChange(e){const t=!this.readOnly&&this.canWeEditAfterModelFromParentFilter(e);if(this.setEditable(t),t){const s=e?Mt(e.dateFrom):null;this.dateComp.setDate(s),this.eReadOnlyText.setValue("")}else this.eReadOnlyText.setValue(this.filterModelFormatter.getModelAsString(e)),this.dateComp.setDate(null)}setEditable(e){Ke(this.eDateWrapper,e),Ke(this.eReadOnlyText.getGui(),!e)}onModelUpdated(e){super.setLastTypeFromModel(e),this.updateCompOnModelChange(e)}onDateChanged(){const e=this.dateComp.getDate();if(this.reactive){const t=this.params;t.onUiChange();const s=t.model,o=Bt(e),i=o==null?null:{...s??{filterType:this.filterType,type:this.lastType??this.optionsFactory.defaultOption},dateFrom:o};t.onModelChange(i,{afterFloatingFilter:!0})}else this.params.parentFilterInstance(t=>{t?.onFloatingFilterChanged(this.lastType||null,e)})}getDateComponentParams(){const{filterParams:e}=this.params,t=ku(e,this.defaultDebounceMs);return we(this.gos,{onDateChanged:at(this,this.onDateChanged.bind(this),t),filterParams:e,location:"floatingFilter"})}createDateComponent(){const{beans:{context:e,userCompFactory:t},eDateWrapper:s,params:o}=this;this.dateComp=new LC(e,t,o.column.getColDef(),this.getDateComponentParams(),s,i=>{i.setInputAriaLabel(this.getAriaLabel(o))}),this.addDestroyFunc(()=>this.dateComp.destroy())}},gT={tag:"div",cls:"ag-filter-filter",children:[{tag:"ag-input-text-field",ref:"eDateInput",cls:"ag-date-filter"}]},pT=class extends Xe{constructor(){super(gT,[il]),this.eDateInput=Ce,this.isApply=!1,this.applyOnFocusOut=!1}init(e){this.params=e,this.setParams(e);const t=this.eDateInput.getInputElement();this.addManagedListeners(t,{mouseDown:()=>{this.eDateInput.isDisabled()||this.usingSafariDatePicker||t.focus({preventScroll:!0})},input:this.handleInput.bind(this,!1),change:this.handleInput.bind(this,!0),focusout:this.handleFocusOut.bind(this)})}handleInput(e){if(!this.eDateInput.isDisabled()){if(this.isApply){this.applyOnFocusOut=!e,e&&this.params.onDateChanged();return}e||this.params.onDateChanged()}}handleFocusOut(){this.applyOnFocusOut&&(this.applyOnFocusOut=!1,this.params.onDateChanged())}setParams(e){const t=this.eDateInput.getInputElement(),s=this.shouldUseBrowserDatePicker(e);this.usingSafariDatePicker=s&&ao();const{minValidYear:o,maxValidYear:i,minValidDate:n,maxValidDate:r,buttons:a,includeTime:l,colDef:c}=e.filterParams||{},d=this.beans.dataTypeSvc,u=l??d?.getDateIncludesTimeFlag?.(c.cellDataType)??!1;if(s?u?(t.type="datetime-local",t.step="1"):t.type="date":t.type="text",n&&o&&z(85),r&&i&&z(86),n&&r){const[h,p]=[n,r].map(f=>f instanceof Date?f:Mt(f));h&&p&&h.getTime()>p.getTime()&&z(87)}n?n instanceof Date?t.min=yd(n):t.min=n:o&&(t.min=`${o}-01-01`),r?r instanceof Date?t.max=yd(r):t.max=r:i&&(t.max=`${i}-12-31`),this.isApply=e.location==="floatingFilter"&&!!a?.includes("apply")}refresh(e){this.params=e,this.setParams(e)}getDate(){return Mt(this.eDateInput.getValue())}setDate(e){const t=this.params.filterParams.colDef.cellDataType,s=this.beans.dataTypeSvc?.getDateIncludesTimeFlag(t)??!1;this.eDateInput.setValue(Bt(e,s))}setInputPlaceholder(e){this.eDateInput.setInputPlaceholder(e)}setInputAriaLabel(e){this.eDateInput.setAriaLabel(e)}setDisabled(e){this.eDateInput.setDisabled(e)}afterGuiAttached(e){e?.suppressFocus||this.eDateInput.getInputElement().focus({preventScroll:!0})}shouldUseBrowserDatePicker(e){return e?.filterParams?.browserDatePicker??!0}},Zu=["equals","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","inRange","blank","notBlank"];function Vd(e){const{allowedCharPattern:t}=e??{};return t??null}function zd(e){return e==null||isNaN(e)?null:e}function zC(e,t){const{filter:s,filterTo:o,type:i}=e||{};return[zd(s),zd(o)].slice(0,or(i,t))}var fT=class extends qu{constructor(){super("numberFilter",zC,Zu),this.eValuesFrom=[],this.eValuesTo=[],this.filterType="number",this.defaultDebounceMs=500}setElementValue(e,t,s){const{numberFormatter:o}=this.params,i=!s&&o?o(t??null):t;super.setElementValue(e,i)}createEValue(){const e=Vd(this.params),t=xt({tag:"div",cls:"ag-filter-body",role:"presentation"});return this.createFromToElement(t,this.eValuesFrom,"from",e),this.createFromToElement(t,this.eValuesTo,"to",e),t}createFromToElement(e,t,s,o){const i=this.createManagedBean(o?new $o({allowedCharPattern:o}):new Eu);i.addCss(`ag-filter-${s}`),i.addCss("ag-filter-filter"),t.push(i),e.appendChild(i.getGui())}removeEValues(e,t){const s=o=>this.removeComponents(o,e,t);s(this.eValuesFrom),s(this.eValuesTo)}getValues(e){const t=[];return this.forEachPositionInput(e,(s,o,i,n)=>{o<n&&t.push(zd(this.stringToFloat(s.getValue())))}),t}areSimpleModelsEqual(e,t){return e.filter===t.filter&&e.filterTo===t.filterTo&&e.type===t.type}stringToFloat(e){if(typeof e=="number")return e;let t=As(e);t!=null&&t.trim()===""&&(t=null);const s=this.params.numberParser;return s?s(t):t==null||t.trim()==="-"?null:Number.parseFloat(t)}createCondition(e){const t=this.getConditionType(e),s={filterType:this.filterType,type:t},o=this.getValues(e);return o.length>0&&(s.filter=o[0]),o.length>1&&(s.filterTo=o[1]),s}getInputs(e){const{eValuesFrom:t,eValuesTo:s}=this;return e>=t.length?[null,null]:[t[e],s[e]]}hasInvalidInputs(){let e=!1;return this.forEachInput(t=>{t.getInputElement().validity.valid||(e=!0)}),e}},WC=class extends Yu{constructor(e,t){super(e,t,t.numberFormatter),this.filterTypeKeys=GC}conditionToString(e,t,s,o,i){const{filter:n,filterTo:r,type:a}=e,l=this.formatValue.bind(this);if(t){const c=this.conditionForToolPanel(a,s,()=>l(n),()=>l(r),o,i);if(c!=null)return c}return s?`${l(n)}-${l(r)}`:n!=null?l(n):`${a}`}},mT=class extends HC{constructor(){super(zC,Zu),this.filterType="number",this.FilterModelFormatterClass=WC}comparator(){return(e,t)=>e===t?0:e<t?1:-1}isValid(e){return!isNaN(e)}},_C=class extends O{constructor(e){super(),this.params=e,this.eInput=Ce,this.onValueChanged=()=>{}}setupGui(e){this.eInput=this.createManagedBean(new $o(this.params?.config));const t=this.eInput.getGui();e.appendChild(t);const s=o=>this.onValueChanged(o);this.addManagedListeners(t,{input:s,keydown:s})}setEditable(e){this.eInput.setDisabled(!e)}getValue(){return this.eInput.getValue()}setValue(e,t){this.eInput.setValue(e,t)}setValueChangedListener(e){this.onValueChanged=e}setParams({ariaLabel:e,autoComplete:t}){const{eInput:s}=this;s.setInputAriaLabel(e),t!==void 0&&s.setAutoComplete(t)}};function Wd(e){const t=e?.trim();return t===""?e:t}function jC(e,t){const{filter:s,filterTo:o,type:i}=e||{};return[s||null,o||null].slice(0,or(i,t))}var CT={tag:"div",ref:"eFloatingFilterInputContainer",cls:"ag-floating-filter-input",role:"presentation"},UC=class extends VC{constructor(){super(...arguments),this.eFloatingFilterInputContainer=Ce,this.defaultDebounceMs=500}postConstruct(){this.setTemplate(CT)}onModelUpdated(e){this.setLastTypeFromModel(e),this.setEditable(this.canWeEditAfterModelFromParentFilter(e)),this.inputSvc.setValue(this.filterModelFormatter.getModelAsString(e))}setParams(e){this.setupFloatingFilterInputService(e),super.setParams(e),this.setTextInputParams(e)}setupFloatingFilterInputService(e){this.inputSvc=this.createFloatingFilterInputService(e),this.inputSvc.setupGui(this.eFloatingFilterInputContainer)}setTextInputParams(e){const t=e.browserAutoComplete??!1,{inputSvc:s,defaultDebounceMs:o,readOnly:i}=this;if(s.setParams({ariaLabel:this.getAriaLabel(e),autoComplete:t}),this.applyActive=rl(e.filterParams),!i){const n=ku(e.filterParams,o),r=at(this,this.syncUpWithParentFilter.bind(this),n);s.setValueChangedListener(r)}}updateParams(e){super.updateParams(e),this.setTextInputParams(e)}recreateFloatingFilterInputService(e){const{inputSvc:t}=this,s=t.getValue();Tt(this.eFloatingFilterInputContainer),this.destroyBean(t),this.setupFloatingFilterInputService(e),t.setValue(s,!0)}syncUpWithParentFilter(e){const t=e.key===I.ENTER,s=this.reactive;if(s&&this.params.onUiChange(),this.applyActive&&!t)return;const{inputSvc:o,params:i,lastType:n}=this;let r=o.getValue();if(i.filterParams.trimInput&&(r=Wd(r),o.setValue(r,!0)),s){const a=i,l=a.model,c=this.convertValue(r),d=c==null?null:{...l??{filterType:this.filterType,type:n??this.optionsFactory.defaultOption},filter:c};a.onModelChange(d,{afterFloatingFilter:!0})}else i.parentFilterInstance(a=>{a?.onFloatingFilterChanged(n||null,r||null)})}convertValue(e){return e||null}setEditable(e){this.inputSvc.setEditable(e)}},vT=class extends O{constructor(){super(...arguments),this.onValueChanged=()=>{},this.numberInputActive=!0}setupGui(e){this.eNumberInput=this.createManagedBean(new Eu),this.eTextInput=this.createManagedBean(new $o),this.eTextInput.setDisabled(!0);const t=this.eNumberInput.getGui(),s=this.eTextInput.getGui();e.appendChild(t),e.appendChild(s),this.setupListeners(t,o=>this.onValueChanged(o)),this.setupListeners(s,o=>this.onValueChanged(o))}setEditable(e){this.numberInputActive=e,this.eNumberInput.setDisplayed(this.numberInputActive),this.eTextInput.setDisplayed(!this.numberInputActive)}setAutoComplete(e){this.eNumberInput.setAutoComplete(e),this.eTextInput.setAutoComplete(e)}getValue(){return this.getActiveInputElement().getValue()}setValue(e,t){this.getActiveInputElement().setValue(e,t)}getActiveInputElement(){return this.numberInputActive?this.eNumberInput:this.eTextInput}setValueChangedListener(e){this.onValueChanged=e}setupListeners(e,t){this.addManagedListeners(e,{input:t,keydown:t})}setParams(e){this.setAriaLabel(e.ariaLabel),e.autoComplete!==void 0&&this.setAutoComplete(e.autoComplete)}setAriaLabel(e){this.eNumberInput.setInputAriaLabel(e),this.eTextInput.setInputAriaLabel(e)}},wT=class extends UC{constructor(){super(...arguments),this.FilterModelFormatterClass=WC,this.filterType="number",this.defaultOptions=Zu}updateParams(e){Vd(e.filterParams)!==this.allowedCharPattern&&this.recreateFloatingFilterInputService(e),super.updateParams(e)}createFloatingFilterInputService(e){return this.allowedCharPattern=Vd(e.filterParams),this.allowedCharPattern?this.createManagedBean(new _C({config:{allowedCharPattern:this.allowedCharPattern}})):this.createManagedBean(new vT)}convertValue(e){return e?Number(e):null}},Xu=["contains","notContains","equals","notEqual","startsWith","endsWith","blank","notBlank"],bT=class extends qu{constructor(){super("textFilter",jC,Xu),this.filterType="text",this.eValuesFrom=[],this.eValuesTo=[],this.defaultDebounceMs=500}createCondition(e){const t=this.getConditionType(e),s={filterType:this.filterType,type:t},o=this.getValues(e);return o.length>0&&(s.filter=o[0]),o.length>1&&(s.filterTo=o[1]),s}areSimpleModelsEqual(e,t){return e.filter===t.filter&&e.filterTo===t.filterTo&&e.type===t.type}getInputs(e){const{eValuesFrom:t,eValuesTo:s}=this;return e>=t.length?[null,null]:[t[e],s[e]]}getValues(e){const t=[];return this.forEachPositionInput(e,(s,o,i,n)=>{o<n&&t.push(As(s.getValue()))}),t}createEValue(){const e=xt({tag:"div",cls:"ag-filter-body",role:"presentation"}),{eValuesFrom:t,eValuesTo:s}=this;return this.createFromToElement(e,t,"from"),this.createFromToElement(e,s,"to"),e}createFromToElement(e,t,s){const o=this.createManagedBean(new $o);o.addCss(`ag-filter-${s}`),o.addCss("ag-filter-filter"),t.push(o),e.appendChild(o.getGui())}removeEValues(e,t){const s=n=>this.removeComponents(n,e,t),{eValuesFrom:o,eValuesTo:i}=this;s(o),s(i)}},$C=class extends Yu{constructor(){super(...arguments),this.filterTypeKeys=lT}conditionToString(e,t,s,o,i){const{filter:n,filterTo:r,type:a}=e;if(t){const l=d=>()=>Zs(this,"filterSummaryTextQuote",[d]),c=this.conditionForToolPanel(a,s,l(n),l(r),o,i);if(c!=null)return c}return s?`${n}-${r}`:n!=null?`${n}`:`${a}`}},ST=({filterOption:e,value:t,filterText:s})=>{if(s==null)return!1;switch(e){case"contains":return t.includes(s);case"notContains":return!t.includes(s);case"equals":return t===s;case"notEqual":return t!=s;case"startsWith":return t.indexOf(s)===0;case"endsWith":{const o=t.lastIndexOf(s);return o>=0&&o===t.length-s.length}default:return!1}},yT=e=>e,xT=e=>e==null?null:e.toString().toLowerCase(),RT=class extends NC{constructor(){super(jC,Xu),this.filterType="text",this.FilterModelFormatterClass=$C}updateParams(e){super.updateParams(e);const t=e.filterParams;this.matcher=t.textMatcher??ST,this.formatter=t.textFormatter??(t.caseSensitive?yT:xT)}evaluateNullValue(e){return e?["notEqual","notContains","blank"].indexOf(e)>=0:!1}evaluateNonNullValue(e,t,s,o){const i=e.map(h=>this.formatter(h))||[],n=this.formatter(t),{api:r,colDef:a,column:l,context:c,filterParams:{textFormatter:d}}=this.params;if(s.type==="blank")return za(t);if(s.type==="notBlank")return!za(t);const u={api:r,colDef:a,column:l,context:c,node:o.node,data:o.data,filterOption:s.type,value:n,textFormatter:d};return i.some(h=>this.matcher({...u,filterText:h}))}processModelToApply(e){if(e&&this.params.filterParams.trimInput){const t=s=>{const o={...s},{filter:i,filterTo:n}=s;return i&&(o.filter=Wd(i)??null),n&&(o.filterTo=Wd(n)??null),o};return Im(e)?{...e,conditions:e.conditions.map(t)}:t(e)}return e}},FT=class extends UC{constructor(){super(...arguments),this.FilterModelFormatterClass=$C,this.filterType="text",this.defaultOptions=Xu}createFloatingFilterInputService(){return this.createManagedBean(new _C)}};function ET(e){return!!e.quickFilter?.isFilterPresent()}function DT(e){return e.quickFilter?.getText()}function PT(e){e.quickFilter?.resetCache()}var TT=class extends O{constructor(){super(...arguments),this.beanName="quickFilter",this.quickFilter=null,this.quickFilterParts=null}postConstruct(){const e=this.resetCache.bind(this),t=this.gos;this.addManagedEventListeners({columnPivotModeChanged:e,newColumnsLoaded:e,columnRowGroupChanged:e,columnVisible:()=>{t.get("includeHiddenColumnsInQuickFilter")||this.resetCache()}}),this.addManagedPropertyListener("quickFilterText",s=>this.setFilter(s.currentValue)),this.addManagedPropertyListeners(["includeHiddenColumnsInQuickFilter","applyQuickFilterBeforePivotOrAgg"],()=>this.onColumnConfigChanged()),this.quickFilter=this.parseFilter(t.get("quickFilterText")),this.parser=t.get("quickFilterParser"),this.matcher=t.get("quickFilterMatcher"),this.setFilterParts(),this.addManagedPropertyListeners(["quickFilterMatcher","quickFilterParser"],()=>this.setParserAndMatcher())}refreshCols(){const{autoColSvc:e,colModel:t,gos:s,pivotResultCols:o}=this.beans,i=t.isPivotMode(),n=e?.getColumns(),r=t.getColDefCols();let a=(i&&!s.get("applyQuickFilterBeforePivotOrAgg")?o?.getPivotResultCols()?.list:r)??[];n&&(a=a.concat(n)),this.colsToUse=s.get("includeHiddenColumnsInQuickFilter")?a:a.filter(l=>l.isVisible()||l.isRowGroupActive())}isFilterPresent(){return this.quickFilter!==null}doesRowPass(e){const t=this.gos.get("cacheQuickFilter");return this.matcher?this.doesRowPassMatcher(t,e):this.quickFilterParts.every(s=>t?this.doesRowPassCache(e,s):this.doesRowPassNoCache(e,s))}resetCache(){this.beans.rowModel.forEachNode(e=>e.quickFilterAggregateText=null)}getText(){return this.gos.get("quickFilterText")}setFilterParts(){const{quickFilter:e,parser:t}=this;e?this.quickFilterParts=t?t(e):e.split(" "):this.quickFilterParts=null}parseFilter(e){return X(e)?e.toUpperCase():null}setFilter(e){if(e!=null&&typeof e!="string"){z(70,{newFilter:e});return}const t=this.parseFilter(e);this.quickFilter!==t&&(this.quickFilter=t,this.setFilterParts(),this.dispatchLocalEvent({type:"quickFilterChanged"}))}setParserAndMatcher(){const e=this.gos.get("quickFilterParser"),t=this.gos.get("quickFilterMatcher"),s=e!==this.parser||t!==this.matcher;this.parser=e,this.matcher=t,s&&(this.setFilterParts(),this.dispatchLocalEvent({type:"quickFilterChanged"}))}onColumnConfigChanged(){this.refreshCols(),this.resetCache(),this.isFilterPresent()&&this.dispatchLocalEvent({type:"quickFilterChanged"})}doesRowPassNoCache(e,t){return this.colsToUse.some(s=>{const o=this.getTextForColumn(s,e);return X(o)&&o.includes(t)})}doesRowPassCache(e,t){return this.checkGenerateAggText(e),e.quickFilterAggregateText.includes(t)}doesRowPassMatcher(e,t){let s;e?(this.checkGenerateAggText(t),s=t.quickFilterAggregateText):s=this.getAggText(t);const{quickFilterParts:o,matcher:i}=this;return i(o,s)}checkGenerateAggText(e){e.quickFilterAggregateText||(e.quickFilterAggregateText=this.getAggText(e))}getTextForColumn(e,t){let s=this.beans.filterValueSvc.getValue(e,t);const o=e.getColDef();if(o.getQuickFilterText){const i=we(this.gos,{value:s,node:t,data:t.data,column:e,colDef:o});s=o.getQuickFilterText(i)}return X(s)?s.toString().toUpperCase():null}getAggText(e){const t=[];for(const s of this.colsToUse){const o=this.getTextForColumn(s,e);X(o)&&t.push(o)}return t.join(`
|
|
60
60
|
`)}},MT={moduleName:"ClientSideRowModelFilter",version:Y,rowModels:["clientSide"],beans:[I4]},Qu={moduleName:"FilterCore",version:Y,beans:[J4],apiFunctions:{isAnyFilterPresent:X4,onFilterChanged:Q4},css:[H4],dependsOn:[MT]},qC={moduleName:"FilterValue",version:Y,beans:[tT]},ul={moduleName:"ColumnFilter",version:Y,beans:[Z4,eT],dynamicBeans:{headerFilterCellCtrl:k4},icons:{filter:"filter",filterActive:"filter"},apiFunctions:{isColumnFilterPresent:G4,getColumnFilterInstance:B4,destroyFilter:V4,setFilterModel:z4,getFilterModel:W4,getColumnFilterModel:_4,setColumnFilterModel:j4,showColumnFilter:U4,hideColumnFilter:$4,getColumnFilterHandler:q4,doFilterAction:K4},dependsOn:[Qu,dl,qC,O4]},IT={moduleName:"CustomFilter",version:Y,userComponents:{agReadOnlyFloatingFilter:oT},dependsOn:[ul]},kT={moduleName:"TextFilter",version:Y,dependsOn:[ul],userComponents:{agTextColumnFilter:{classImp:bT,params:{useForm:!0}},agTextColumnFloatingFilter:FT},dynamicBeans:{agTextColumnFilterHandler:RT}},AT={moduleName:"NumberFilter",version:Y,dependsOn:[ul],userComponents:{agNumberColumnFilter:{classImp:fT,params:{useForm:!0}},agNumberColumnFloatingFilter:wT},dynamicBeans:{agNumberColumnFilterHandler:mT}},LT={moduleName:"DateFilter",version:Y,dependsOn:[ul],userComponents:{agDateColumnFilter:{classImp:aT,params:{useForm:!0}},agDateInput:pT,agDateColumnFloatingFilter:hT},dynamicBeans:{agDateColumnFilterHandler:dT}},OT={moduleName:"QuickFilterCore",version:Y,rowModels:["clientSide"],beans:[TT],dependsOn:[Qu,qC]},NT={moduleName:"QuickFilter",version:Y,apiFunctions:{isQuickFilterPresent:ET,getQuickFilter:DT,resetQuickFilter:PT},dependsOn:[OT]},HT={moduleName:"ExternalFilter",version:Y,dependsOn:[Qu]},GT=".ag-tooltip{background-color:var(--ag-tooltip-background-color);border:var(--ag-tooltip-border);border-radius:var(--ag-border-radius);color:var(--ag-tooltip-text-color);padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);position:absolute;white-space:normal;z-index:99999;&:where(.ag-cell-editor-tooltip){background-color:var(--ag-tooltip-error-background-color);border:var(--ag-tooltip-error-border);color:var(--ag-tooltip-error-text-color);font-weight:500}}.ag-tooltip-custom{position:absolute;z-index:99999}.ag-tooltip-custom:where(:not(.ag-tooltip-interactive)),.ag-tooltip:where(:not(.ag-tooltip-interactive)){pointer-events:none}.ag-tooltip-animate{transition:opacity 1s;&:where(.ag-tooltip-hiding){opacity:0}}",Bc=(e,t,s)=>{const{editModelSvc:o}=e,i=o?.getCellValidationModel()?.getCellValidation(t)?.errorMessages,n=o?.getRowValidationModel().getRowValidation(t)?.errorMessages,r=i||n;return r?.length?r.join(s("tooltipValidationErrorSeparator",". ")):void 0},BT=class extends O{constructor(){super(...arguments),this.beanName="tooltipSvc"}setupHeaderTooltip(e,t,s,o){e&&t.destroyBean(e);const i=this.gos,n=Gc(i),{column:r,eGui:a}=t,l=r.getColDef();!o&&n&&!l.headerComponent&&(o=sa(()=>a.querySelector(".ag-header-cell-text")));const c="header",u=this.beans.colNames.getDisplayNameForColumn(r,"header",!0),h=s??u,p={getGui:()=>a,getLocation:()=>c,getTooltipValue:()=>s??l?.headerTooltipValueGetter?.(we(i,{location:c,colDef:l,column:r,value:h,valueFormatted:u}))??l?.headerTooltip,shouldDisplayTooltip:o,getAdditionalParams:()=>({column:r,colDef:r.getColDef()})};let f=this.createTooltipFeature(p);return f&&(f=t.createBean(f),t.setRefreshFunction("tooltip",()=>f.refreshTooltip())),f}setupHeaderGroupTooltip(e,t,s,o){e&&t.destroyBean(e);const i=this.gos,n=Gc(i),{column:r,eGui:a}=t,l=r.getColGroupDef();!o&&n&&!l?.headerGroupComponent&&(o=sa(()=>a.querySelector(".ag-header-group-text")));const c="headerGroup",u=this.beans.colNames.getDisplayNameForColumnGroup(r,"header"),h=s??u,p={getGui:()=>a,getLocation:()=>c,getTooltipValue:()=>s??l?.headerTooltipValueGetter?.(we(i,{location:c,colDef:l,column:r,value:h,valueFormatted:u}))??l?.headerTooltip,shouldDisplayTooltip:o,getAdditionalParams:()=>{const C={column:r};return l&&(C.colDef=l),C}},f=this.createTooltipFeature(p);return f&&t.createBean(f)}enableCellTooltipFeature(e,t,s){const{beans:o}=this,{gos:i,editSvc:n}=o,{column:r,rowNode:a}=e;let l="cell";const c=()=>{const p=!!!n?.isEditing(e)&&Bc(o,e,this.getLocaleTextFunc());if(p)return l="cellEditor",p;l="cell";const f=r.getColDef(),C=a.data;if(f.tooltipField&&X(C))return Bn(C,f.tooltipField,r.isTooltipFieldContainsDots());const v=f.tooltipValueGetter;return v?v(we(i,{location:"cell",colDef:r.getColDef(),column:r,rowIndex:e.cellPosition.rowIndex,node:a,data:a.data,value:e.value,valueFormatted:e.valueFormatted})):null},d=Gc(i);s||(d&&!e.isCellRenderer()?s=()=>{const h=!!n?.isEditing(e);if(!h&&Bc(o,e,this.getLocaleTextFunc()))return!0;if(!r.isTooltipEnabled())return!1;const C=sa(()=>{const v=e.eGui;return v.children.length===0?v:v.querySelector(".ag-cell-value")});return!h&&C()}:s=()=>!n?.isEditing(e));const u={getGui:()=>e.eGui,getLocation:()=>l,getTooltipValue:t!=null?()=>t:c,shouldDisplayTooltip:s,getAdditionalParams:()=>({column:r,colDef:r.getColDef(),rowIndex:e.cellPosition.rowIndex,node:a,data:a.data,valueFormatted:e.valueFormatted})};return this.createTooltipFeature(u,o)}setupFullWidthRowTooltip(e,t,s,o){const i={getGui:()=>t.getFullWidthElement(),getTooltipValue:()=>s,getLocation:()=>"fullWidthRow",shouldDisplayTooltip:o},n=this.beans,r=n.context;e&&t.destroyBean(e,r);const a=this.createTooltipFeature(i,n);if(a)return t.createBean(a,r)}setupCellEditorTooltip(e,t){const{beans:s}=this,{context:o}=s,i=t.getValidationElement?.(!0)||!t.isPopup?.()&&e.eGui;if(!i)return;const n={getGui:()=>i,getTooltipValue:()=>Bc(s,e,this.getLocaleTextFunc()),getLocation:()=>"cellEditor",shouldDisplayTooltip:()=>{const{editModelSvc:a}=s,l=a?.getRowValidationModel()?.getRowValidationMap(),c=a?.getCellValidationModel()?.getCellValidationMap(),d=!!l&&l.size>0,u=!!c&&c.size>0;return d||u}},r=this.createTooltipFeature(n,s);if(r)return e.createBean(r,o)}initCol(e){const{colDef:t}=e;e.tooltipEnabled=X(t.tooltipField)||X(t.tooltipValueGetter)||X(t.tooltipComponent)}createTooltipFeature(e,t){return this.beans.registry.createDynamicBean("tooltipFeature",!1,e,t)}},VT=class extends PR{createTooltipComp(e,t){bx(this.beans.userCompFactory,e)?.newAgStackInstance().then(t)}setEventHandlers(e){[this.onColumnMovedEventCallback]=this.addManagedEventListeners({columnMoved:e})}clearEventHandlers(){this.onColumnMovedEventCallback?.(),this.onColumnMovedEventCallback=void 0}},KC={moduleName:"Tooltip",version:Y,beans:[BT],dynamicBeans:{tooltipFeature:Sm,highlightTooltipFeature:TR,tooltipStateManager:VT},userComponents:{agTooltipComponent:kR},dependsOn:[dl],css:[GT]},mi=class{constructor(e){this.cellValueChanges=e}},Vc=class extends mi{constructor(e,t,s,o){super(e),this.initialRange=t,this.finalRange=s,this.ranges=o}},zT=10,ep=class{constructor(e){this.actionStack=[],this.maxStackSize=e||zT,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}},WT=class extends O{constructor(){super(...arguments),this.beanName="undoRedo",this.cellValueChanges=[],this.activeCellEdit=null,this.activeRowEdit=null,this.isPasting=!1,this.isRangeInAction=!1,this.batchEditing=!1,this.bulkEditing=!1,this.onCellValueChanged=e=>{const t={column:e.column,rowIndex:e.rowIndex,rowPinned:e.rowPinned},s=this.activeCellEdit!==null&&Qm(this.activeCellEdit,t),o=this.activeRowEdit!==null&&iE(this.activeRowEdit,t);if(!(s||o||this.isPasting||this.isRangeInAction))return;const{rowPinned:n,rowIndex:r,column:a,oldValue:l,value:c}=e,d={rowPinned:n,rowIndex:r,columnId:a.getColId(),newValue:c,oldValue:l};this.cellValueChanges.push(d)},this.clearStacks=()=>{this.undoStack.clear(),this.redoStack.clear()}}postConstruct(){const{gos:e,ctrlsSvc:t}=this.beans;if(!e.get("undoRedoCellEditing"))return;const s=e.get("undoRedoCellEditingLimit");if(s<=0)return;this.undoStack=new ep(s),this.redoStack=new ep(s),this.addListeners();const o=this.clearStacks.bind(this);this.addManagedEventListeners({cellValueChanged:this.onCellValueChanged.bind(this),modelUpdated:i=>{i.keepUndoRedoStack||this.clearStacks()},columnPivotModeChanged:o,newColumnsLoaded:o,columnGroupOpened:o,columnRowGroupChanged:o,columnMoved:o,columnPinned:o,columnVisible:o,rowDragEnd:o}),t.whenReady(this,i=>{this.gridBodyCtrl=i.gridBodyCtrl})}getCurrentUndoStackSize(){return this.undoStack?.getCurrentStackSize()??0}getCurrentRedoStackSize(){return this.redoStack?.getCurrentStackSize()??0}undo(e){const{eventSvc:t,undoStack:s,redoStack:o}=this;t.dispatchEvent({type:"undoStarted",source:e});const i=this.undoRedo(s,o,"initialRange","oldValue","undo");t.dispatchEvent({type:"undoEnded",source:e,operationPerformed:i})}redo(e){const{eventSvc:t,undoStack:s,redoStack:o}=this;t.dispatchEvent({type:"redoStarted",source:e});const i=this.undoRedo(o,s,"finalRange","newValue","redo");t.dispatchEvent({type:"redoEnded",source:e,operationPerformed:i})}undoRedo(e,t,s,o,i){if(!e)return!1;const n=e.pop();return n?.cellValueChanges?(this.processAction(n,r=>r[o],i),n instanceof Vc?this.processRange(n.ranges||[n[s]]):this.processCell(n.cellValueChanges),t.push(n),!0):!1}processAction(e,t,s){for(const o of e.cellValueChanges){const{rowIndex:i,rowPinned:n,columnId:r}=o,a={rowIndex:i,rowPinned:n},l=Hs(this.beans,a);l.displayed&&l.setDataValue(r,t(o),s)}}processRange(e){let t;const s=this.beans.rangeSvc;s.removeAllCellRanges(!0),e.forEach((o,i)=>{if(!o)return;const n=o.startRow,r=o.endRow;i===e.length-1&&(t={rowPinned:n.rowPinned,rowIndex:n.rowIndex,columnId:o.startColumn.getColId()},this.setLastFocusedCell(t));const a={rowStartIndex:n.rowIndex,rowStartPinned:n.rowPinned,rowEndIndex:r.rowIndex,rowEndPinned:r.rowPinned,columnStart:o.startColumn,columns:o.columns};s.addCellRange(a)})}processCell(e){const t=e[0],{rowIndex:s,rowPinned:o}=t,i={rowIndex:s,rowPinned:o},n=Hs(this.beans,i),r={rowPinned:t.rowPinned,rowIndex:n.rowIndex,columnId:t.columnId};this.setLastFocusedCell(r)}setLastFocusedCell(e){const{rowIndex:t,columnId:s,rowPinned:o}=e,{colModel:i,focusSvc:n,rangeSvc:r}=this.beans,a=i.getCol(s);if(!a)return;const{scrollFeature:l}=this.gridBodyCtrl;l.ensureIndexVisible(t),l.ensureColumnVisible(a);const c={rowIndex:t,column:a,rowPinned:o};n.setFocusedCell({...c,forceBrowserFocus:!0}),r?.setRangeToCell(c)}addListeners(){this.addManagedEventListeners({rowEditingStarted:e=>{this.activeRowEdit={rowIndex:e.rowIndex,rowPinned:e.rowPinned}},rowEditingStopped:()=>{const e=new mi(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 mi(this.cellValueChanges);this.pushActionsToUndoStack(s)}},pasteStart:()=>{this.isPasting=!0},pasteEnd:()=>{const e=new mi(this.cellValueChanges);this.pushActionsToUndoStack(e),this.isPasting=!1},fillStart:()=>{this.isRangeInAction=!0},fillEnd:e=>{const t=new Vc(this.cellValueChanges,e.initialRange,e.finalRange);this.pushActionsToUndoStack(t),this.isRangeInAction=!1},keyShortcutChangedCellStart:()=>{this.isRangeInAction=!0},keyShortcutChangedCellEnd:()=>{let e;const{rangeSvc:t,gos:s}=this.beans;t&&so(s)?e=new Vc(this.cellValueChanges,void 0,void 0,[...t.getCellRanges()]):e=new mi(this.cellValueChanges),this.pushActionsToUndoStack(e),this.isRangeInAction=!1},batchEditingStarted:()=>this.startBigChange("batchEditing"),batchEditingStopped:({changes:e})=>this.stopBigChange("batchEditing",e),bulkEditingStarted:()=>this.startBigChange("bulkEditing"),bulkEditingStopped:({changes:e})=>this.stopBigChange("bulkEditing",e)})}startBigChange(e){this.updateBigChange(e,!0)}updateBigChange(e,t){e==="bulkEditing"?this.bulkEditing=t:this.batchEditing=t}stopBigChange(e,t){if(e==="bulkEditing"&&!this.bulkEditing||e==="batchEditing"&&!this.batchEditing||(this.updateBigChange(e,!1),t?.length===0))return;const s=new mi(t??[]);this.pushActionsToUndoStack(s),this.cellValueChanges=[]}pushActionsToUndoStack(e){this.undoStack.push(e),this.cellValueChanges=[],this.redoStack.clear()}},_T=".ag-cell-inline-editing{border:var(--ag-cell-editing-border)!important;border-radius:var(--ag-border-radius);box-shadow:var(--ag-cell-editing-shadow);padding:0;z-index:1;.ag-cell-edit-wrapper,.ag-cell-editor,.ag-cell-wrapper,:where(.ag-cell-editor) .ag-input-field-input,:where(.ag-cell-editor) .ag-wrapper{height:100%;line-height:normal;min-height:100%;width:100%}&.ag-cell-editing-error{border-color:var(--ag-invalid-color)!important}}:where(.ag-popup-editor) .ag-large-text{background-color:var(--ag-background-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);padding:0}.ag-large-text-input{display:block;height:auto;padding:var(--ag-cell-horizontal-padding)}:where(.ag-rtl .ag-large-text-input) textarea{resize:none}:where(.ag-ltr) .ag-checkbox-edit{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-checkbox-edit{padding-right:var(--ag-cell-horizontal-padding)}:where(.ag-row.ag-row-editing-invalid .ag-cell-inline-editing){opacity:.8}.ag-popup-editor{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}",jT={tag:"div",cls:"ag-cell-wrapper ag-cell-edit-wrapper ag-checkbox-edit",children:[{tag:"ag-checkbox",ref:"eEditor",role:"presentation"}]},UT=class extends ll{constructor(){super(jT,[Fu]),this.eEditor=Ce}initialiseEditor(e){const t=e.value??void 0,s=this.eEditor;s.setValue(t),s.getInputElement().setAttribute("tabindex","-1"),this.setAriaLabel(t),this.addManagedListeners(s,{fieldValueChanged:i=>this.setAriaLabel(i.selected)})}getValue(){return this.eEditor.getValue()}focusIn(){this.eEditor.getFocusableElement().focus()}afterGuiAttached(){this.params.cellStartedEdit&&this.focusIn()}isPopup(){return!1}setAriaLabel(e){const t=this.getLocaleTextFunc(),s=ol(t,e),o=t("ariaToggleCellValue","Press SPACE to toggle cell value");this.eEditor.setInputAriaLabel(`${o} (${s})`)}getValidationElement(e){return e?this.params.eGridCell:this.eEditor.getInputElement()}getValidationErrors(){const{params:e}=this,{getValidationErrors:t}=e,s=this.getValue();return t?t({value:s,internalErrors:null,cellEditorParams:e}):null}},hl=class extends ll{constructor(e){super(),this.cellEditorInput=e,this.eEditor=Ce}initialiseEditor(e){const{cellEditorInput:t}=this;this.setTemplate({tag:"div",cls:"ag-cell-edit-wrapper",children:[t.getTemplate()]},t.getAgComponents());const{eEditor:s}=this,{cellStartedEdit:o,eventKey:i,suppressPreventDefault:n}=e;s.getInputElement().setAttribute("title",""),t.init(s,e);let r,a=!0;o?(this.focusAfterAttached=!0,i===I.BACKSPACE||i===I.DELETE?r="":i&&i.length===1?n?a=!1:r=i:(r=t.getStartValue(),i!==I.F2&&(this.highlightAllOnFocus=!0))):(this.focusAfterAttached=!1,r=t.getStartValue()),a&&r!=null&&s.setStartValue(r),this.addGuiEventListener("keydown",l=>{const{key:c}=l;(c===I.PAGE_UP||c===I.PAGE_DOWN)&&l.preventDefault()})}afterGuiAttached(){const e=this.getLocaleTextFunc(),t=this.eEditor;if(t.setInputAriaLabel(e("ariaInputEditor","Input Editor")),!this.focusAfterAttached)return;ao()||t.getFocusableElement().focus();const s=t.getInputElement();this.highlightAllOnFocus?s.select():this.cellEditorInput.setCaret?.()}focusIn(){const{eEditor:e}=this,t=e.getFocusableElement(),s=e.getInputElement();t.focus(),s.select()}getValue(){return this.cellEditorInput.getValue()}isPopup(){return!1}getValidationElement(){return this.eEditor.getInputElement()}getValidationErrors(){return this.cellEditorInput.getValidationErrors()}},$T={tag:"ag-input-date-field",ref:"eEditor",cls:"ag-cell-editor"},qT=class{constructor(e,t){this.getDataTypeService=e,this.getLocaleTextFunc=t}getTemplate(){return $T}getAgComponents(){return[hm]}init(e,t){this.eEditor=e,this.params=t;const{min:s,max:o,step:i,colDef:n}=t;s!=null&&e.setMin(s),o!=null&&e.setMax(o),i!=null&&e.setStep(i),this.includeTime=t.includeTime??this.getDataTypeService()?.getDateIncludesTimeFlag?.(n.cellDataType),this.includeTime!=null&&e.setIncludeTime(this.includeTime)}getValidationErrors(){const t=this.eEditor.getInputElement().valueAsDate,{params:s}=this,{min:o,max:i,getValidationErrors:n}=s;let r=[];const a=this.getLocaleTextFunc();if(t instanceof Date&&!isNaN(t.getTime())){if(o){const l=o instanceof Date?o:new Date(o);if(t<l){const c=l.toLocaleDateString();r.push(a("minDateValidation",`Date must be after ${c}`,[c]))}}if(i){const l=i instanceof Date?i:new Date(i);if(t>l){const c=l.toLocaleDateString();r.push(a("maxDateValidation",`Date must be before ${c}`,[c]))}}}return r.length||(r=null),n?n({value:t,cellEditorParams:s,internalErrors:r}):r}getValue(){const{eEditor:e,params:t}=this,s=e.getDate();return!X(s)&&!X(t.value)?t.value:s??null}getStartValue(){const{value:e}=this.params;if(e instanceof Date)return Bt(e,this.includeTime??!1)}},KT=class extends hl{constructor(){super(new qT(()=>this.beans.dataTypeSvc,()=>this.getLocaleTextFunc()))}},YT={tag:"ag-input-date-field",ref:"eEditor",cls:"ag-cell-editor"},ZT=class{constructor(e,t){this.getDataTypeService=e,this.getLocaleTextFunc=t}getTemplate(){return YT}getAgComponents(){return[hm]}init(e,t){this.eEditor=e,this.params=t;const{min:s,max:o,step:i,colDef:n}=t;s!=null&&e.setMin(s),o!=null&&e.setMax(o),i!=null&&e.setStep(i),this.includeTime=t.includeTime??this.getDataTypeService()?.getDateIncludesTimeFlag?.(n.cellDataType),this.includeTime!=null&&e.setIncludeTime(this.includeTime)}getValidationErrors(){const{eEditor:e,params:t}=this,s=e.getInputElement().value,o=this.formatDate(this.parseDate(s??void 0)),{min:i,max:n,getValidationErrors:r}=t;let a=[];if(o){const l=new Date(o),c=this.getLocaleTextFunc();if(i){const d=new Date(i);if(l<d){const u=d.toLocaleDateString();a.push(c("minDateValidation",`Date must be after ${u}`,[u]))}}if(n){const d=new Date(n);if(l>d){const u=d.toLocaleDateString();a.push(c("maxDateValidation",`Date must be before ${u}`,[u]))}}}return a.length||(a=null),r?r({value:this.getValue(),cellEditorParams:t,internalErrors:a}):a}getValue(){const{params:e,eEditor:t}=this,s=this.formatDate(t.getDate());return!X(s)&&!X(e.value)?e.value:e.parseValue(s??"")}getStartValue(){return Bt(this.parseDate(this.params.value??void 0)??null,this.includeTime??!1)}parseDate(e){const t=this.getDataTypeService();return t?t.getDateParserFunction(this.params.column)(e):Mt(e)??void 0}formatDate(e){const t=this.getDataTypeService();return t?t.getDateFormatterFunction(this.params.column)(e):Bt(e??null,this.includeTime??!1)??void 0}},XT=class extends hl{constructor(){super(new ZT(()=>this.beans.dataTypeSvc,()=>this.getLocaleTextFunc()))}},QT={tag:"div",cls:"ag-large-text",children:[{tag:"ag-input-text-area",ref:"eEditor",cls:"ag-large-text-input"}]},JT=class extends ll{constructor(){super(QT,[Gx]),this.eEditor=Ce}initialiseEditor(e){const{eEditor:t}=this,{cellStartedEdit:s,eventKey:o,maxLength:i,cols:n,rows:r}=e;this.focusAfterAttached=s,t.getInputElement().setAttribute("title",""),t.setMaxLength(i||200).setCols(n||60).setRows(r||10);let a;s?(this.focusAfterAttached=!0,o===I.BACKSPACE||o===I.DELETE?a="":o&&o.length===1?a=o:(a=this.getStartValue(e),o!==I.F2&&(this.highlightAllOnFocus=!0))):(this.focusAfterAttached=!1,a=this.getStartValue(e)),a!=null&&t.setValue(a,!0),this.addGuiEventListener("keydown",this.onKeyDown.bind(this)),this.activateTabIndex()}getStartValue(e){const{value:t}=e;return t?.toString()??t}onKeyDown(e){const t=e.key;(t===I.LEFT||t===I.UP||t===I.RIGHT||t===I.DOWN||e.shiftKey&&t===I.ENTER)&&e.stopPropagation()}afterGuiAttached(){const{eEditor:e,focusAfterAttached:t,highlightAllOnFocus:s}=this,o=this.getLocaleTextFunc();e.setInputAriaLabel(o("ariaInputEditor","Input Editor")),t&&(e.getFocusableElement().focus(),s&&e.getInputElement().select())}getValue(){const{eEditor:e,params:t}=this,{value:s}=t,o=e.getValue();return!X(o)&&!X(s)?s:t.parseValue(o)}getValidationElement(){return this.eEditor.getInputElement()}getValidationErrors(){const{params:e}=this,{maxLength:t,getValidationErrors:s}=e,o=this.getLocaleTextFunc(),i=this.getValue();let n=[];return typeof i=="string"&&t!=null&&i.length>t&&n.push(o("maxLengthValidation",`Must be ${t} characters or fewer.`,[String(t)])),n.length||(n=null),s?s({value:i,internalErrors:n,cellEditorParams:e}):n}},eM={tag:"ag-input-number-field",ref:"eEditor",cls:"ag-cell-editor"},tM=class{constructor(e){this.getLocaleTextFunc=e}getTemplate(){return eM}getAgComponents(){return[Bx]}init(e,t){this.eEditor=e,this.params=t;const{max:s,min:o,precision:i,step:n}=t;s!=null&&e.setMax(s),o!=null&&e.setMin(o),i!=null&&e.setPrecision(i),n!=null&&e.setStep(n);const r=e.getInputElement();t.preventStepping?e.addManagedElementListeners(r,{keydown:this.preventStepping}):t.showStepperButtons&&r.classList.add("ag-number-field-input-stepper")}getValidationErrors(){const{params:e}=this,{min:t,max:s,getValidationErrors:o}=e,n=this.eEditor.getInputElement().valueAsNumber,r=this.getLocaleTextFunc();let a=[];return typeof n=="number"&&(t!=null&&n<t&&a.push(r("minValueValidation",`Must be greater than or equal to ${t}.`,[String(t)])),s!=null&&n>s&&a.push(r("maxValueValidation",`Must be less than or equal to ${s}.`,[String(s)]))),a.length||(a=null),o?o({value:n,cellEditorParams:e,internalErrors:a}):a}preventStepping(e){(e.key===I.UP||e.key===I.DOWN)&&e.preventDefault()}getValue(){const{eEditor:e,params:t}=this,s=e.getValue();if(!X(s)&&!X(t.value))return t.value;let o=t.parseValue(s);if(o==null)return o;if(typeof o=="string"){if(o==="")return null;o=Number(o)}return isNaN(o)?null:o}getStartValue(){return this.params.value}setCaret(){ao()&&this.eEditor.getInputElement().focus({preventScroll:!0})}},sM=class extends hl{constructor(){super(new tM(()=>this.getLocaleTextFunc()))}},oM={tag:"div",cls:"ag-cell-edit-wrapper",children:[{tag:"ag-select",ref:"eEditor",cls:"ag-cell-editor"}]},iM=class extends ll{constructor(){super(oM,[Zx]),this.eEditor=Ce,this.startedByEnter=!1}wireBeans(e){this.valueSvc=e.valueSvc}initialiseEditor(e){this.focusAfterAttached=e.cellStartedEdit;const{eEditor:t,valueSvc:s,gos:o}=this,{values:i,value:n,eventKey:r}=e;if($e(i)){z(58);return}this.startedByEnter=r!=null?r===I.ENTER:!1;let a=!1;i.forEach(u=>{const h={value:u},p=s.formatValue(e.column,null,u),f=p!=null;h.text=f?p:u,t.addOption(h),a=a||n===u}),a?t.setValue(e.value,!0):e.values.length&&t.setValue(e.values[0],!0);const{valueListGap:l,valueListMaxWidth:c,valueListMaxHeight:d}=e;l!=null&&t.setPickerGap(l),d!=null&&t.setPickerMaxHeight(d),c!=null&&t.setPickerMaxWidth(c),o.get("editType")!=="fullRow"&&this.addManagedListeners(this.eEditor,{selectedItem:()=>e.stopEditing()})}afterGuiAttached(){this.focusAfterAttached&&this.eEditor.getFocusableElement().focus(),this.startedByEnter&&setTimeout(()=>{this.isAlive()&&this.eEditor.showPicker()})}focusIn(){this.eEditor.getFocusableElement().focus()}getValue(){return this.eEditor.getValue()}isPopup(){return!1}getValidationElement(){return this.eEditor.getAriaElement()}getValidationErrors(){const{params:e}=this,{values:t,getValidationErrors:s}=e,o=this.getValue();let i=[];if(t&&!t.includes(o)){const n=this.getLocaleTextFunc();i.push(n("invalidSelectionValidation","Invalid selection."))}else i=null;return s?s({value:o,internalErrors:i,cellEditorParams:e}):i}},nM={tag:"ag-input-text-field",ref:"eEditor",cls:"ag-cell-editor"},rM=class{constructor(e){this.getLocaleTextFunc=e}getTemplate(){return nM}getAgComponents(){return[il]}init(e,t){this.eEditor=e,this.params=t;const s=t.maxLength;s!=null&&e.setMaxLength(s)}getValidationErrors(){const{params:e}=this,{maxLength:t,getValidationErrors:s}=e,o=this.getValue(),i=this.getLocaleTextFunc();let n=[];return t!=null&&typeof o=="string"&&o.length>t&&n.push(i("maxLengthValidation",`Must be ${t} characters or fewer.`,[String(t)])),n.length||(n=null),s?s({value:o,cellEditorParams:e,internalErrors:n}):n}getValue(){const{eEditor:e,params:t}=this,s=e.getValue();return!X(s)&&!X(t.value)?t.value:t.parseValue(s)}getStartValue(){const e=this.params;return e.useFormatter||e.column.getColDef().refData?e.formatValue(e.value):e.value}setCaret(){ao()&&this.eEditor.getInputElement().focus({preventScroll:!0});const e=this.eEditor,t=e.getValue(),s=X(t)&&t.length||0;s&&e.getInputElement().setSelectionRange(s,s)}},tp=class extends hl{constructor(){super(new rM(()=>this.getLocaleTextFunc()))}};function aM(e){return e.ctrlsSvc.getScrollFeature().getVScrollPosition()}function lM(e){return e.ctrlsSvc.getScrollFeature().getHScrollPosition()}function YC(e,t,s="auto"){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsSvc.getScrollFeature().ensureColumnVisible(t,s),"ensureVisible")}function ZC(e,t,s){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsSvc.getScrollFeature().ensureIndexVisible(t,s),"ensureVisible")}function cM(e,t,s=null){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsSvc.getScrollFeature().ensureNodeVisible(t,s),"ensureVisible")}function dM(e){e.undoRedo?.undo("api")}function uM(e){e.undoRedo?.redo("api")}function hM(e,t){return e.editModelSvc?.getEditRowDataValue(t,{checkSiblings:!0})}function gM(e){const t=e.editModelSvc?.getEditMap(),s=[];return t?.forEach((o,i)=>{const{rowIndex:n,rowPinned:r}=i;o.forEach((a,l)=>{const{editorValue:c,pendingValue:d,sourceValue:u,state:h}=a,p=Is(a);let f=c??d;f===Jt&&(f=void 0);const C={newValue:f,oldValue:u,state:h,column:l,colId:l.getColId(),colKey:l.getColId(),rowIndex:n,rowPinned:r};(h==="editing"||h==="changed"&&p)&&s.push(C)})}),s}function pM(e,t=!1){const{editSvc:s}=e;if(s?.isBatchEditing()){if(t)for(const o of e.editModelSvc?.getEditPositions()??[])o.state==="editing"&&s.revertSingleCellEdit(o);else yo(e,{persist:!0});Mi(e,void 0,{cancel:t})}else s?.stopEditing(void 0,{cancel:t,source:"edit",forceStop:!t,forceCancel:t})}function fM(e,t){const s=Ue(e,t);return e.editSvc?.isEditing(s)??!1}function mM(e,t){const{key:s,colKey:o,rowIndex:i,rowPinned:n}=t,{editSvc:r,colModel:a}=e,l=a.getCol(o);if(!l){z(12,{colKey:o});return}const d=Hs(e,{rowIndex:i,rowPinned:n||null});if(!d){z(290,{rowIndex:i,rowPinned:n});return}if(!l.isCellEditable(d))return;n==null&&ZC(e,i),YC(e,o),r?.startEditing({rowNode:d,column:l},{event:s?new KeyboardEvent("keydown",{key:s}):void 0,source:"api"})}function CM(e){return e.editSvc?.validateEdit()||null}function vM(e){return e.undoRedo?.getCurrentUndoStackSize()??0}function wM(e){return e.undoRedo?.getCurrentRedoStackSize()??0}var bM={tag:"div",cls:"ag-popup-editor",attrs:{tabindex:"-1"}},SM=class extends yu{constructor(e){super(bM),this.params=e}postConstruct(){No(this.gos,this.getGui(),"popupEditorWrapper",!0),this.addKeyDownListener()}addKeyDownListener(){const e=this.getGui(),t=this.params,s=o=>{Td(this.gos,o,t.node,t.column,!0)||t.onKeyDown(o)};this.addManagedElementListeners(e,{keydown:s})}};function yM(e,{column:t},s,o,i="ui"){if(s instanceof KeyboardEvent&&(s.key===I.TAB||s.key===I.ENTER||s.key===I.F2||s.key===I.BACKSPACE&&o))return!0;if(s?.shiftKey&&e.rangeSvc?.getCellRanges().length!=0)return!1;const r=t?.getColDef(),a=xM(e.gos,r),l=s?.type;return l==="click"&&s?.detail===1&&a===1||l==="dblclick"&&s?.detail===2&&a===2?!0:i==="api"?o??!1:!1}function xM(e,t){return e.get("suppressClickEdit")===!0?0:e.get("singleClickEdit")===!0||t?.singleClickEdit?1:2}function _d(e,{rowNode:t,column:s},o="ui"){const i=s.getColDef().editable,n=e.editModelSvc;return s.isColumnFunc(t,i)||!!n&&n.hasEdits({rowNode:t,column:s},{withOpenEditor:!0})}function RM(e,t,s="ui"){const o=_d(e,t,s);return o===!0||s==="ui"?o:e.colModel.getCols().some(n=>_d(e,{rowNode:t.rowNode,column:n},s))}var Wa=(e,t=!1)=>{if(e!==void 0)return Is(e)||t&&e.state==="editing"};function XC(e,t,s=!1){return Wa(e.editModelSvc?.getEdit(t),s)}var QC=(e,t,s)=>{if(e)for(let o=0,i=e.length;o<i;++o){const n=e[o];if(n.data&&(Wa(t?.getEdit({rowNode:n,column:s}))||Wa(t?.getEdit({rowNode:n.pinnedSibling,column:s})))||QC(n.childrenAfterGroup,t,s))return!0}};function JC(e,t){const{column:s,rowNode:o}=t;return e.gos.get("groupTotalRow")&&!o?.footer?!1:QC(o?.childrenAfterGroup,e.editModelSvc,s)}function ev(e,{rowNode:t,column:s}){if(t=t.pinnedSibling,!!t)return Wa(e.editModelSvc?.getEdit({rowNode:t,column:s}))}var FM=class extends O{constructor(e,t){super(),this.cellCtrl=e,this.beans=t,this.editSvc=t.editSvc,this.editModelSvc=t.editModelSvc}setComp(e){this.cellComp=e,this.applyCellStyles()}applyCellStyles(){const{cellCtrl:e,editSvc:t,beans:s}=this;if(t?.isBatchEditing()&&t.isEditing()){const i=XC(s,e)||JC(s,e)||ev(s,e);this.applyBatchingStyle(i)}else this.applyBatchingStyle(!1);const o=!!this.editModelSvc?.getCellValidationModel().hasCellValidation(this.cellCtrl);this.cellComp.toggleCss("ag-cell-editing-error",o)}applyBatchingStyle(e){this.cellComp.toggleCss("ag-cell-editing",e??!1),this.cellComp.toggleCss("ag-cell-batch-edit",(e&&this.editSvc?.isBatchEditing())??!1)}},EM=class extends O{constructor(e,t){super(),this.rowCtrl=e,this.beans=t,this.gos=t.gos,this.editSvc=t.editSvc,this.editModelSvc=t.editModelSvc}applyRowStyles(){const{rowCtrl:e,editModelSvc:t,beans:s}=this;let o=e.rowNode,i=t?.getEditRow(o);const n=this.editModelSvc?.getRowValidationModel().hasRowValidation({rowNode:o});if(!i&&o.pinnedSibling&&(o=o.pinnedSibling,i=t?.getEditRow(o)),i){const r=Array.from(i.keys()).some(a=>{const l={rowNode:o,column:a};return XC(s,l,!0)||JC(s,l)||ev(s,l)});this.applyStyle(n,r);return}this.applyStyle(n)}applyStyle(e=!1,t=!1){const s=this.editSvc?.isBatchEditing()??!1,o=this.gos.get("editType")==="fullRow";this.rowCtrl?.forEachGui(void 0,({rowComp:i})=>{i.toggleCss("ag-row-editing",o&&t),i.toggleCss("ag-row-batch-edit",o&&t&&s),i.toggleCss("ag-row-inline-editing",t),i.toggleCss("ag-row-not-inline-editing",!t),i.toggleCss("ag-row-editing-invalid",o&&t&&e)})}},DM=({rowModel:e,pinnedRowModel:t,editModelSvc:s},o)=>{const i=new Set;e.forEachNode(n=>o.has(n)&&i.add(n)),t?.forEachPinnedRow("top",n=>o.has(n)&&i.add(n)),t?.forEachPinnedRow("bottom",n=>o.has(n)&&i.add(n));for(const n of o)i.has(n)||s.removeEdits({rowNode:n});return i},PM=({editModelSvc:e},t,s)=>{for(const o of t)e?.getEditRow(o)?.forEach((i,n)=>!s.has(n)&&e.removeEdits({rowNode:o,column:n}))},TM=e=>()=>{const t=new Set(e.colModel.getCols()),s=e.editModelSvc.getEditMap(!0),o=new Set(s.keys());PM(e,DM(e,o),t)},MM=new Set(["undo","redo","paste","bulk","rangeSvc"]),IM=new Set(["ui","api"]),tv={paste:"api",rangeSvc:"api",fillHandle:"api",cellClear:"api",bulk:"api"},kM=new Set(Object.keys(tv)),AM=new Set(["paste","rangeSvc","renderer","cellClear","redo","undo"]),Xr={cancel:!0,source:"api"},LM={cancel:!1,source:"api"},gi={checkSiblings:!0},yn={force:!0,suppressFlash:!0},OM=class extends O{constructor(){super(...arguments),this.beanName="editSvc",this.batch=!1,this.stopping=!1,this.committing=!1}postConstruct(){const{beans:e}=this;this.model=e.editModelSvc,this.valueSvc=e.valueSvc,this.rangeSvc=e.rangeSvc,this.addManagedPropertyListener("editType",({currentValue:o})=>{this.stopEditing(void 0,Xr),this.createStrategy(o)});const t=TM(e),s=()=>{const o=this.model.getCellValidationModel().getCellValidationMap().size>0,i=this.model.getRowValidationModel().getRowValidationMap().size>0;return o||i?this.stopEditing(void 0,Xr):this.isEditing()&&(this.isBatchEditing()?Mi(e,this.model.getEditPositions()):this.stopEditing(void 0,LM)),!1};this.addManagedEventListeners({columnPinned:t,columnVisible:t,columnRowGroupChanged:t,rowExpansionStateChanged:t,pinnedRowsChanged:t,displayedRowsChanged:t,sortChanged:s,filterChanged:s,cellFocused:this.onCellFocused.bind(this)})}isBatchEditing(){return this.batch}setBatchEditing(e){e?(this.batch=!0,this.stopEditing(void 0,Xr)):(this.stopEditing(void 0,Xr),this.batch=!1)}createStrategy(e){const{beans:t,gos:s,strategy:o}=this,i=sp(s,e);if(o){if(o.beanName===i)return o;this.destroyStrategy()}return this.strategy=this.createOptionalManagedBean(t.registry.createDynamicBean(i,!0))}destroyStrategy(){this.strategy&&(this.strategy.destroy(),this.strategy=this.destroyBean(this.strategy))}shouldStartEditing(e,t,s,o="ui"){const i=yM(this.beans,e,t,s,o);return i&&(this.strategy??(this.strategy=this.createStrategy())),i}shouldStopEditing(e,t,s="ui"){return this.strategy?.shouldStop(e,t,s)??null}shouldCancelEditing(e,t,s="ui"){return this.strategy?.shouldCancel(e,t,s)??null}validateEdit(){return ZP(this.beans)}isEditing(e,t){return this.model.hasEdits(e,t??gi)}isRowEditing(e,t){return(e&&this.model.hasRowEdits(e,t))??!1}startEditing(e,t){const{startedEdit:s=!0,event:o=null,source:i="ui",ignoreEventKey:n=!1,silent:r}=t;if(this.strategy??(this.strategy=this.createStrategy()),!this.isCellEditable(e,"api"))return;const a=Ue(this.beans,e);if(a&&!a.comp){a.onCompAttachedFuncs.push(()=>this.startEditing(e,t));return}const l=this.shouldStartEditing(e,o,s,i);if(l===!1&&i!=="api"){this.isEditing(e)&&this.stopEditing();return}!this.batch&&this.shouldStopEditing(e,void 0,i)&&!t.continueEditing&&this.stopEditing(void 0,{source:i}),l&&this.isBatchEditing()&&this.dispatchBatchEvent("batchEditingStarted",new Map),this.strategy.start({position:e,event:o,source:i,ignoreEventKey:n,startedEdit:s,silent:r})}stopEditing(e,t){const{event:s,cancel:o,source:i="ui",forceCancel:n,forceStop:r}=t||{},{beans:a,model:l}=this;if(kM.has(i)&&this.isBatchEditing())return this.bulkRefresh(e),!1;const c=this.committing?tv[i]:i;if(!(this.committing||this.isEditing(e)||this.isBatchEditing()&&l.hasEdits(e,gi))||!this.strategy||this.stopping)return!1;this.stopping=!0;const u=Ue(a,e);u&&(u.onEditorAttachedFuncs=[]);let h=l.getEditMap(!0),p=!1;const f=!o&&(!!this.shouldStopEditing(e,s,c)||this.committing&&!this.batch)||(r??!1),C=o&&!!this.shouldCancelEditing(e,s,c)||(n??!1);if(f||C){yo(a,{persist:!0,isCancelling:C||o,isStopping:f});const v=l.getEditMap(),w=this.processEdits(v,o,i);this.strategy?.stop(o,s);for(const b of w)l.clearEditValue(b);this.bulkRefresh(void 0,h);for(const b of l.getEditPositions(v)){const S=Ue(a,b),y=Is(b);S?.refreshCell({force:!0,suppressFlash:!y})}h=v,p||(p=f)}else if(s instanceof KeyboardEvent&&this.batch&&this.strategy?.midBatchInputsAllowed(e)&&this.isEditing(e,{withOpenEditor:!0})){const{key:v}=s,w=v===I.ENTER,b=v===I.ESCAPE,S=v===I.TAB;(w||S||b)&&(w||S?yo(a,{persist:!0}):b&&this.revertSingleCellEdit(u),this.isBatchEditing()?this.strategy?.cleanupEditors():Mi(a,l.getEditPositions(),{event:s,cancel:b}),s.preventDefault(),this.bulkRefresh(e,h,{suppressFlash:!0}),h=l.getEditMap())}else yo(a,{persist:!0}),h=l.getEditMap();return p&&e&&this.model.removeEdits(e),this.navigateAfterEdit(t,u?.cellPosition),Hd(a),this.model.hasEdits()||(this.model.getCellValidationModel().clearCellValidationMap(),this.model.getRowValidationModel().clearRowValidationMap()),this.bulkRefresh(),C&&this.beans.rowRenderer.refreshRows({rowNodes:Array.from(h.keys())}),this.isBatchEditing()&&(this.beans.rowRenderer.refreshRows({suppressFlash:!0,force:!0}),p&&f&&this.dispatchBatchEvent("batchEditingStopped",h)),this.stopping=!1,p}navigateAfterEdit(e,t){if(!e||!t)return;const{event:s,suppressNavigateAfterEdit:o}=e;if(!(s instanceof KeyboardEvent)||o)return;const{key:n,shiftKey:r}=s,a=this.gos.get("enterNavigatesVerticallyAfterEdit");if(n!==I.ENTER||!a)return;const l=r?I.UP:I.DOWN;this.beans.navigation?.navigateToNextCell(null,l,t,!1)}processEdits(e,t=!1,s){const o=Array.from(e.keys()),i=this.model.getCellValidationModel().getCellValidationMap().size>0||this.model.getRowValidationModel().getRowValidationMap().size>0,n=[];for(const r of o){const a=e.get(r);for(const l of a.keys()){const c=a.get(l),d={rowNode:r,column:l},u=Is(c);!t&&u&&!i&&(this.setNodeDataValue(r,l,c.pendingValue,void 0,s)||n.push(d))}}return n}setNodeDataValue(e,t,s,o,i="edit"){const{beans:n}=this,r=Ue(n,{rowNode:e,column:t}),a=IM.has(i)?"edit":i;r&&(r.suppressRefreshCell=!0),this.commitNextEdit();const l=e.setDataValue(t,s,a);return r&&(r.suppressRefreshCell=!1),o&&r?.refreshCell(yn),l}setEditMap(e,t){this.strategy??(this.strategy=this.createStrategy()),this.strategy?.setEditMap(e,t),this.bulkRefresh();let s=yn;t?.forceRefreshOfEditCellsOnly&&(s={...NM(e),...yn}),this.beans.rowRenderer.refreshCells(s)}dispatchEditValuesChanged({rowNode:e,column:t},s={}){if(!e||!t||!s)return;const{pendingValue:o,sourceValue:i}=s,{rowIndex:n,rowPinned:r,data:a}=e;this.beans.eventSvc.dispatchEvent({type:"cellEditValuesChanged",node:e,rowIndex:n,rowPinned:r,column:t,source:"api",data:a,newValue:o,oldValue:i,value:o,colDef:t.getColDef()})}bulkRefresh(e={},t,s={}){const{beans:o,gos:i}=this,{editModelSvc:n,rowModel:r}=o;Qe(i)&&(e.rowNode&&e.column?this.refCell(e,this.model.getEdit(e),s):t&&n?.getEditMap(!1)?.forEach((a,l)=>{for(const c of a.keys())this.refCell({rowNode:l,column:c},a.get(c),s)}))}refCell({rowNode:e,column:t},s,o={}){const{beans:i,gos:n}=this,r=new Set([e]),a=new Set,l=e.pinnedSibling;l&&r.add(l);const c=e.sibling;c&&a.add(c);let d=e.parent;for(;d;)d.sibling?.footer&&n.get("groupTotalRow")||!d.parent&&d.sibling&&n.get("grandTotalRow")?a.add(d.sibling):a.add(d),d=d.parent;for(const u of r)this.dispatchEditValuesChanged({rowNode:u,column:t},s);for(const u of r)Ue(i,{rowNode:u,column:t})?.refreshCell(o);for(const u of a)Ue(i,{rowNode:u,column:t})?.refreshCell(o)}stopAllEditing(e=!1,t="ui"){this.isEditing()&&this.stopEditing(void 0,{cancel:e,source:t})}isCellEditable(e,t="ui"){const{rowNode:s}=e,{gos:o,beans:i}=this;if(s.group){if(o.get("treeData")){if(!s.data&&!o.get("enableGroupEdit"))return!1}else if(!o.get("enableGroupEdit"))return!1}const n=sp(o)==="fullRow"?RM(i,e,t):_d(i,e,t);return n&&(this.strategy??(this.strategy=this.createStrategy())),n}cellEditingInvalidCommitBlocks(){return this.gos.get("invalidEditValueMode")==="block"}checkNavWithValidation(e,t,s=!0){if(this.hasValidationErrors(e)){const o=Ue(this.beans,e);return this.cellEditingInvalidCommitBlocks()?(t?.preventDefault?.(),s&&(!o?.hasBrowserFocus()&&o?.focusCell(),o?.comp?.getCellEditor()?.focusIn?.()),"block-stop"):(o&&this.revertSingleCellEdit(o),"revert-continue")}return"continue"}revertSingleCellEdit(e,t=!1){const s=Ue(this.beans,e);s?.comp?.getCellEditor()&&(Mi(this.beans,[e],{silent:!0}),this.model.clearEditValue(e),Bi(this.beans,e,{silent:!0}),Bo(this.beans),s?.refreshCell(yn),t&&(s?.focusCell(),s?.comp?.getCellEditor()?.focusIn?.()))}hasValidationErrors(e){Bo(this.beans);const t=Ue(this.beans,e);t&&(t.refreshCell(yn),t.rowCtrl.rowEditStyleFeature?.applyRowStyles());let s=!1;return e?.rowNode?(s||(s=this.model.getRowValidationModel().hasRowValidation({rowNode:e.rowNode})),e.column&&(s||(s=this.model.getCellValidationModel().hasCellValidation({rowNode:e.rowNode,column:e.column})))):(s||(s=this.model.getCellValidationModel().getCellValidationMap().size>0),s||(s=this.model.getRowValidationModel().getRowValidationMap().size>0)),s}moveToNextCell(e,t,s,o="ui"){let i;const n=this.isEditing(),r=n&&this.checkNavWithValidation(void 0,s)==="block-stop";return e instanceof Ii&&n&&(i=this.strategy?.moveToNextEditingCell(e,t,s,o,r)),i===null||(i=i||!!this.beans.focusSvc.focusedHeader,i===!1&&!r&&this.stopEditing()),i}getCellDataValue({rowNode:e,column:t},s=!0){if(!e||!t)return;let o=this.model.getEdit({rowNode:e,column:t});const i=e.pinnedSibling;if(i){const r=this.model.getEdit({rowNode:i,column:t});r&&(o=r)}const n=s?o?.editorValue??o?.pendingValue:o?.pendingValue;return n===Jt||!o?o?.sourceValue??this.valueSvc.getValue(t,e,!1,"api"):n}addStopEditingWhenGridLosesFocus(e){jP(this,this.beans,e)}createPopupEditorWrapper(e){return new SM(e)}commitNextEdit(){this.committing=!0}setDataValue(e,t,s){try{if((!this.isEditing()||this.committing)&&!AM.has(s))return;const{beans:o}=this;this.strategy??(this.strategy=this.createStrategy());const i=this.isBatchEditing()?"ui":this.committing?s??"api":"api";if(!s||MM.has(s))return fa(o,e,t,s,void 0,{persist:!0}),this.setNodeDataValue(e.rowNode,e.column,t,!0,s);const n=this.model.getEdit(e);if(n){if(n.pendingValue===t)return!1;if(n.sourceValue!==t)return fa(o,e,t,s,void 0,{persist:!0}),this.stopEditing(e,{source:i,suppressNavigateAfterEdit:!0}),!0;if(n.sourceValue===t)return o.editModelSvc?.removeEdits(e),this.dispatchEditValuesChanged(e,{...n,pendingValue:t}),!0}return fa(o,e,t,s,void 0,{persist:!0}),this.stopEditing(e,{source:i,suppressNavigateAfterEdit:!0}),!0}finally{this.committing=!1}}handleColDefChanged(e){qP(this.beans,e)}destroy(){this.model.clear(),this.destroyStrategy(),super.destroy()}prepDetailsDuringBatch(e,t){if(!this.batch||!this.model.hasRowEdits(e.rowNode,gi))return;const{rowNode:o,column:i}=e,{compDetails:n,valueToDisplay:r}=t;if(n){const{params:l}=n;return l.data=this.model.getEditRowDataValue(o,gi),{compDetails:n}}const a=this.model.getEditRow(e.rowNode,gi);if(r!==void 0&&a?.has(i))return{valueToDisplay:this.valueSvc.getValue(i,o)}}cleanupEditors(){this.strategy?.cleanupEditors()}dispatchCellEvent(e,t,s,o){this.strategy?.dispatchCellEvent(e,t,s,o)}dispatchBatchEvent(e,t){this.eventSvc.dispatchEvent(this.createBatchEditEvent(e,t))}createBatchEditEvent(e,t){return we(this.gos,{type:e,...e==="batchEditingStopped"?{changes:this.toEventChangeList(t)}:{}})}toEventChangeList(e){return this.model.getEditPositions(e).map(t=>({rowIndex:t.rowNode.rowIndex,rowPinned:t.rowNode.rowPinned,columnId:t.column.getColId(),newValue:t.pendingValue,oldValue:t.sourceValue}))}applyBulkEdit({rowNode:e,column:t},s){if(!s||s.length===0)return;const{beans:o,rangeSvc:i,valueSvc:n}=this;yo(o,{persist:!0});const r=this.model.getEditMap(!0),a=r.get(e)?.get(t)?.pendingValue;this.batch||this.eventSvc.dispatchEvent({type:"bulkEditingStarted"}),s.forEach(c=>{if(i?.forEachRowInRange(c,d=>{const u=Hs(o,d);if(u===void 0)return;const h=r.get(u)??new Map;for(const p of c.columns)if(p&&this.isCellEditable({rowNode:u,column:p},"api")){const f=n.getValue(p,u,!0,"api");let C=n.parseValue(p,u??null,a,f);Number.isNaN(C)&&(C=null),h.set(p,{editorValue:void 0,pendingValue:C,sourceValue:f,state:"changed",editorState:{isCancelAfterEnd:void 0,isCancelBeforeStart:void 0}})}h.size>0&&r.set(u,h)}),this.setEditMap(r),this.batch){this.cleanupEditors(),Hd(o),this.bulkRefresh();return}this.commitNextEdit(),this.stopEditing(void 0,{source:"bulk"}),this.eventSvc.dispatchEvent({type:"bulkEditingStopped",changes:this.toEventChangeList(r)})}),this.bulkRefresh();const l=Ue(o,{rowNode:e,column:t});l&&l.focusCell(!0)}createCellStyleFeature(e,t){return new FM(e,t)}createRowStyleFeature(e,t){return new EM(e,t)}setEditingCells(e,t){const{beans:s}=this,{colModel:o,valueSvc:i}=s,n=new Map;for(let{colId:r,column:a,colKey:l,rowIndex:c,rowPinned:d,newValue:u,state:h}of e){const p=r?o.getCol(r):l?o.getCol(l):a;if(!p)continue;const f=Hs(s,{rowIndex:c,rowPinned:d});if(!f)continue;const C=i.getValue(p,f,!0,"api");if(!t?.forceRefreshOfEditCellsOnly&&!Is({pendingValue:u,sourceValue:C})&&h!=="editing")continue;let v=n.get(f);v||(v=new Map,n.set(f,v)),u===void 0&&(u=Jt),v.set(p,{editorValue:void 0,pendingValue:u,sourceValue:C,state:h??"changed",editorState:{isCancelAfterEnd:void 0,isCancelBeforeStart:void 0}})}this.setEditMap(n,t)}onCellFocused(e){const t=Ue(this.beans,e);if(!t||!this.isEditing(t,gi))return;const s=this.model.getEdit(t);if(!s||!Is(s))return;const i=this.getLocaleTextFunc()("ariaPendingChange","Pending Change");this.beans.ariaAnnounce?.announceValue(i,"pendingChange")}allowedFocusTargetOnValidation(e){return Ue(this.beans,e)}};function NM(e){return{rowNodes:e?Array.from(e.keys()):void 0,columns:e?[...new Set(Array.from(e.values()).flatMap(t=>Array.from(t.keys())))]:void 0}}function sp(e,t){return t??e.get("editType")??"singleCell"}var sv=class extends O{postConstruct(){this.model=this.beans.editModelSvc,this.editSvc=this.beans.editSvc,this.addManagedEventListeners({cellFocused:this.onCellFocusChanged?.bind(this),cellFocusCleared:this.onCellFocusChanged?.bind(this)})}clearEdits(e){this.model.clearEditValue(e)}onCellFocusChanged(e){let t;const s=e.previousParams,{editSvc:o,beans:i}=this,n=e.type==="cellFocused"?e.sourceEvent:null;s&&(t=Ue(i,s));const{gos:r,editModelSvc:a}=i,l=e.type==="cellFocusCleared";if(o.isEditing(void 0,{withOpenEditor:!0})){const{column:c,rowIndex:d,rowPinned:u}=e,h={column:c,rowNode:Hs(i,{rowIndex:d,rowPinned:u})},p=r.get("invalidEditValueMode")==="block";if(p)return;const f=!p,C=!!a?.getCellValidationModel().hasCellValidation(h),v=f&&C;(s||l?o.stopEditing(void 0,{cancel:v,source:l&&f?"api":void 0,event:n}):!0)||(o.isBatchEditing()?o.cleanupEditors():o.stopEditing(void 0,{source:"api"}))}t?.refreshCell({suppressFlash:!0,force:!0})}stop(e,t){const s=this.model.getEditPositions(),o={all:[],pass:[],fail:[]};for(const i of s){if(o.all.push(i),(this.model.getCellValidationModel().getCellValidation(i)?.errorMessages?.length??0)>0){o.fail.push(i);continue}o.pass.push(i)}if(e)for(const i of s)Ba(this.beans,i,{cancel:e}),this.model.stop(i);else{const i=this.processValidationResults(o);if(i.destroy.length>0)for(const n of i.destroy)Ba(this.beans,n,{event:t,cancel:e}),this.model.stop(n);if(i.keep.length>0)for(const n of i.keep){const r=Ue(this.beans,n);this.editSvc?.cellEditingInvalidCommitBlocks()||r&&this.editSvc.revertSingleCellEdit(r)}}return!0}cleanupEditors({rowNode:e}={},t){yo(this.beans,{persist:!1});const s=this.model.getEditPositions(),o=[];if(e)for(const i of s)i.rowNode!==e&&o.push(i);else for(const i of s)o.push(i);Mi(this.beans,o),Hd(this.beans,t)}setFocusOutOnEditor(e){e.comp?.getCellEditor()?.focusOut?.()}setFocusInOnEditor(e){const t=e.comp,s=t?.getCellEditor();if(s?.focusIn)s.focusIn();else{const o=this.beans.gos.get("editType")==="fullRow";e.focusCell(o),e.onEditorAttachedFuncs.push(()=>t?.getCellEditor()?.focusIn?.())}}setupEditors(e){const{event:t,ignoreEventKey:s=!1,startedEdit:o,position:i,cells:n=this.model.getEditPositions()}=e,r=t instanceof KeyboardEvent&&!s&&t.key||void 0;$P(this.beans,n,i,r,t,o)}dispatchCellEvent(e,t,s,o){const i=Ue(this.beans,e);i&&this.eventSvc.dispatchEvent({...i.createEvent(t??null,s),...o})}dispatchRowEvent(e,t,s){if(s)return;const o=_u(this.beans,e);o&&this.eventSvc.dispatchEvent(o.createRowEvent(t))}shouldStop(e,t,s="ui"){const o=this.editSvc.isBatchEditing();return o&&s==="api"?!0:o&&(s==="ui"||s==="edit")?!1:s==="api"?!0:t instanceof KeyboardEvent&&!o?t.key===I.ENTER:null}shouldCancel(e,t,s="ui"){const o=this.editSvc.isBatchEditing();return!!(t instanceof KeyboardEvent&&!o&&t.key===I.ESCAPE||o&&s==="api"||s==="api")}setEditMap(e,t){t?.update||this.editSvc.stopEditing(void 0,{cancel:!0,source:"api"});const s=[];if(e.forEach((o,i)=>{o.forEach((n,r)=>{n.state==="editing"&&s.push({...n,rowNode:i,column:r})})}),t?.update&&(e=new Map([...this.model.getEditMap(),...e])),this.model?.setEditMap(e),s.length>0){const o=s.at(-1),i=o.pendingValue===Jt?void 0:o.pendingValue;this.start({position:o,event:new KeyboardEvent("keydown",{key:i}),source:"api"});const n=Ue(this.beans,o);n&&this.setFocusInOnEditor(n)}}destroy(){this.cleanupEditors(),super.destroy()}},HM=class extends sv{constructor(){super(...arguments),this.beanName="fullRow",this.startedRows=[]}shouldStop(e,t,s="ui"){const{rowNode:o}=e||{};if(!_u(this.beans,{rowNode:this.rowNode}))return!0;const n=super.shouldStop({rowNode:this.rowNode},t,s);return n!==null?n:this.rowNode?o!==this.rowNode:!1}midBatchInputsAllowed({rowNode:e}){return e?this.model.hasEdits({rowNode:e}):!1}clearEdits(e){this.model.clearEditValue(e)}start(e){const{position:t,silent:s,startedEdit:o,event:i,ignoreEventKey:n}=e,{rowNode:r}=t;this.rowNode!==r&&super.cleanupEditors(t),this.dispatchRowEvent({rowNode:r},"rowEditingStarted",s),this.startedRows.push(r);const a=this.beans.visibleCols.allCols,l=[];for(const c of a){if(!c.isCellEditable(r))continue;const d={rowNode:r,column:c};l.push(d),this.model.hasEdits(d)||this.model.start(d)}this.rowNode=r,this.setupEditors({cells:l,position:t,startedEdit:o,event:i,ignoreEventKey:n})}processValidationResults(e){return e.fail.length>0&&this.editSvc.cellEditingInvalidCommitBlocks()?{destroy:[],keep:e.all}:{destroy:e.all,keep:[]}}stop(e,t){const{rowNode:s}=this;if(s&&!this.model.hasRowEdits(s))return!1;const o=[];if(e||this.model.getEditMap().forEach((i,n)=>{if(!(!i||i.size===0)){for(const r of i.values())if(Is(r)){o.push(n);break}}}),Bo(this.beans),!e&&this.editSvc?.checkNavWithValidation({rowNode:s})==="block-stop")return!1;super.stop(e,t);for(const i of o)this.dispatchRowEvent({rowNode:i},"rowValueChanged");return this.cleanupEditors({rowNode:s},!0),this.rowNode=void 0,!0}onCellFocusChanged(e){const{rowIndex:t}=e,s=e.previousParams;if(s?.rowIndex===t||e.sourceEvent instanceof KeyboardEvent)return;const o=Ue(this.beans,s);this.gos.get("invalidEditValueMode")==="block"&&o&&(this.model.getCellValidationModel().getCellValidation(o)||this.model.getRowValidationModel().getRowValidation(o))||super.onCellFocusChanged(e)}cleanupEditors(e={},t){super.cleanupEditors(e,t);for(const s of this.startedRows)this.dispatchRowEvent({rowNode:s},"rowEditingStopped");this.startedRows.length=0}moveToNextEditingCell(e,t,s,o="ui",i=!1){const n=e.cellPosition;let r;this.model.suspend(!0);try{r=this.beans.navigation?.findNextCellToFocusOn(n,{backwards:t,startEditing:!0,skipToNextEditableCell:!1})}finally{this.model.suspend(!1)}if(r===!1)return null;if(r==null)return!1;const a=r.cellPosition,l=e.isCellEditable(),c=r.isCellEditable(),d=a&&n.rowIndex===a.rowIndex&&n.rowPinned===a.rowPinned;l&&this.setFocusOutOnEditor(e),this.restoreEditors();const u=this.gos.get("suppressStartEditOnTab");return c&&!i?u?r.focusCell(!0,s):(r.comp?.getCellEditor()||Bi(this.beans,r,{event:s,cellStartedEdit:!0}),this.setFocusInOnEditor(r),r.focusCell(!1,s)):(c&&i&&this.setFocusInOnEditor(r),r.focusCell(!0,s)),!d&&!i&&(this.editSvc?.stopEditing({rowNode:e.rowNode},{event:s}),this.cleanupEditors(r,!0),u?r.focusCell(!0,s):this.editSvc.startEditing(r,{startedEdit:!0,event:s,source:o,ignoreEventKey:!0})),e.rowCtrl?.refreshRow({suppressFlash:!0,force:!0}),!0}restoreEditors(){this.model.getEditMap().forEach((e,t)=>e.forEach(({state:s},o)=>{if(s!=="editing")return;const i=Ue(this.beans,{rowNode:t,column:o});i&&!i.comp?.getCellEditor()&&Bi(this.beans,i,{silent:!0})}))}destroy(){super.destroy(),this.rowNode=void 0,this.startedRows.length=0}},GM=class extends sv{constructor(){super(...arguments),this.beanName="singleCell"}shouldStop(e,t,s="ui"){const o=super.shouldStop(e,t,s);if(o!==null)return o;const{rowNode:i,column:n}=e||{};return(!this.rowNode||!this.column)&&i&&n?null:this.rowNode!==i||this.column!==n}midBatchInputsAllowed(e){return this.model.hasEdits(e)}start(e){const{position:t,startedEdit:s,event:o,ignoreEventKey:i}=e;(this.rowNode!==t.rowNode||this.column!==t.column)&&super.cleanupEditors(),this.rowNode=t.rowNode,this.column=t.column,this.model.start(t),this.setupEditors({cells:[t],position:t,startedEdit:s,event:o,ignoreEventKey:i})}dispatchRowEvent(e,t,s){}processValidationResults(e){return e.fail.length>0&&this.editSvc.cellEditingInvalidCommitBlocks()?{destroy:[],keep:e.all}:{destroy:e.all,keep:[]}}stop(e,t){return super.stop(e,t),this.rowNode=void 0,this.column=void 0,!0}onCellFocusChanged(e){const{colModel:t,editSvc:s}=this.beans,{rowIndex:o,column:i,rowPinned:n}=e,r=Hs(this.beans,{rowIndex:o,rowPinned:n}),a=Nd(i),l=t.getCol(a),c=e.previousParams;if(c){const d=Nd(c.column);if(c?.rowIndex===o&&d===a&&c?.rowPinned===n)return}s?.isEditing({rowNode:r,column:l},{withOpenEditor:!0})&&e.type==="cellFocused"||super.onCellFocusChanged(e)}moveToNextEditingCell(e,t,s,o="ui",i=!1){const n=this.beans.focusSvc.getFocusedCell();n&&(e=wi(this.beans,n)??e);const r=e.cellPosition;let a;const l=this.beans.gos.get("editType")==="fullRow";l&&this.model.suspend(!0),i||(e.eGui.focus(),this.editSvc?.stopEditing(e,{source:this.editSvc?.isBatchEditing()?"ui":"api",event:s}));try{a=this.beans.navigation?.findNextCellToFocusOn(r,{backwards:t,startEditing:!0})}finally{l&&this.model.suspend(!1)}if(a===!1)return null;if(a==null)return!1;const c=a.cellPosition,d=e.isCellEditable(),u=a.isCellEditable(),h=c&&r.rowIndex===c.rowIndex&&r.rowPinned===c.rowPinned;d&&!i&&this.setFocusOutOnEditor(e);const p=this.gos.get("suppressStartEditOnTab");if(!h&&!i&&(super.cleanupEditors(a,!0),p?a.focusCell(!0,s):this.editSvc.startEditing(a,{startedEdit:!0,event:s,source:o,ignoreEventKey:!0})),u&&!i){if(a.focusCell(!1,s),p)a.focusCell(!0,s);else if(!a.comp?.getCellEditor()){const f=this.editSvc?.isEditing(a,{withOpenEditor:!0});Bi(this.beans,a,{event:s,cellStartedEdit:!0,silent:f}),this.setFocusInOnEditor(a),this.cleanupEditors(a)}}else u&&i&&this.setFocusInOnEditor(a),a.focusCell(!0,s);return e.rowCtrl?.refreshRow({suppressFlash:!0,force:!0}),!0}destroy(){super.destroy(),this.rowNode=void 0,this.column=void 0}},co={moduleName:"EditCore",version:Y,beans:[_P,OM],apiFunctions:{getEditingCells:gM,getEditRowValues:hM,getCellEditorInstances:UP,startEditingCell:mM,stopEditing:pM,isEditing:fM,validateEdit:CM},dynamicBeans:{singleCell:GM,fullRow:HM},dependsOn:[dl,KC],css:[_T]},BM={moduleName:"UndoRedoEdit",version:Y,beans:[WT],apiFunctions:{undoCellEditing:dM,redoCellEditing:uM,getCurrentUndoSize:vM,getCurrentRedoSize:wM},dependsOn:[co]},VM={moduleName:"TextEditor",version:Y,userComponents:{agCellEditor:tp,agTextCellEditor:tp},dependsOn:[co]},zM={moduleName:"NumberEditor",version:Y,userComponents:{agNumberCellEditor:{classImp:sM}},dependsOn:[co]},WM={moduleName:"DateEditor",version:Y,userComponents:{agDateCellEditor:KT,agDateStringCellEditor:XT},dependsOn:[co]},_M={moduleName:"CheckboxEditor",version:Y,userComponents:{agCheckboxCellEditor:UT},dependsOn:[co]},jM={moduleName:"SelectEditor",version:Y,userComponents:{agSelectCellEditor:iM},dependsOn:[co]},UM={moduleName:"LargeTextEditor",version:Y,userComponents:{agLargeTextCellEditor:JT},dependsOn:[co]},$M={moduleName:"CustomEditor",version:Y,dependsOn:[co]},qM=class extends O{constructor(){super(...arguments),this.beanName="selectionColSvc"}postConstruct(){this.addManagedPropertyListener("rowSelection",e=>{this.onSelectionOptionsChanged(e.currentValue,e.previousValue,Fi(e.source))}),this.addManagedPropertyListener("selectionColumnDef",this.updateColumns.bind(this))}addColumns(e){const t=this.columns;t!=null&&(e.list=t.list.concat(e.list),e.tree=t.tree.concat(e.tree),yy(e))}createColumns(e,t){const s=()=>{Ma(this.beans,this.columns?.tree),this.columns=null},o=e.treeDepth,n=(this.columns?.treeDepth??-1)==o,r=this.generateSelectionCols();if(Sy(r,this.columns?.list??[])&&n)return;s();const{colGroupSvc:l}=this.beans,c=l?.findDepth(e.tree)??0,d=l?.balanceTreeForAutoCols(r,c)??[];this.columns={list:r,tree:d,treeDepth:c,map:{}},t(h=>{if(!h)return null;const p=h.filter(f=>!zs(f));return[...r,...p]})}updateColumns(e){const t=Fi(e.source);for(const s of this.columns?.list??[]){const o=this.createSelectionColDef(e.currentValue);s.setColDef(o,null,t),os(this.beans,{state:[{...o,colId:s.getColId()}]},t)}}getColumn(e){return this.columns?.list.find(t=>Hn(t,e))??null}getColumns(){return this.columns?.list??null}isSelectionColumnEnabled(){const{gos:e,beans:t}=this,s=e.get("rowSelection");if(typeof s!="object"||!Eo(e))return!1;const o=(t.autoColSvc?.getColumns()?.length??0)>0;if(s.checkboxLocation==="autoGroupColumn"&&o)return!1;const i=!!Ri(s),n=na(s);return i||n}createSelectionColDef(e){const{gos:t}=this,s=e??t.get("selectionColumnDef"),o=t.get("enableRtl"),{rowSpan:i,spanRows:n,...r}=s??{};return{width:50,resizable:!1,suppressHeaderMenuButton:!0,sortable:!1,suppressMovable:!0,lockPosition:o?"right":"left",comparator(a,l,c,d){const u=c.isSelected(),h=d.isSelected();return u===h?0:u?1:-1},editable:!1,suppressFillHandle:!0,pinned:null,...r,colId:vu,chartDataType:"excluded"}}generateSelectionCols(){if(!this.isSelectionColumnEnabled())return[];const e=this.createSelectionColDef(),t=e.colId;this.gos.validateColDef(e,t,!0);const s=new jo(e,null,t,!1);return this.createBean(s),[s]}onSelectionOptionsChanged(e,t,s){const o=t&&typeof t!="string"?Ri(t):void 0,i=e&&typeof e!="string"?Ri(e):void 0,n=o!==i,r=t&&typeof t!="string"?na(t):void 0,a=e&&typeof e!="string"?na(e):void 0,l=r!==a,c=Ea(e),d=Ea(t);(n||l||c!==d)&&this.beans.colModel.refreshAll(s)}destroy(){Ma(this.beans,this.columns?.tree),super.destroy()}refreshVisibility(e,t,s){if(!this.columns?.list.length)return;const o=e.length+t.length+s.length;if(o===0)return;const i=this.columns.list[0];if(!i.isVisible())return;const n=()=>{let l;switch(i.pinned){case"left":case!0:l=e;break;case"right":l=s;break;default:l=t}l&&is(l,i)};(this.beans.rowNumbersSvc?.getColumn(wu)?2:1)===o&&n()}};function KM(e,t){if(!t.nodes.every(r=>r.rowPinned&&!mr(r)?(z(59),!1):r.id===void 0?(z(60),!1):!0))return;const{nodes:o,source:i,newValue:n}=t;e.selectionSvc?.setNodesSelected({nodes:o,source:i??"api",newValue:n})}function YM(e,t,s="apiSelectAll"){e.selectionSvc?.selectAllRowNodes({source:s,selectAll:t})}function ZM(e,t,s="apiSelectAll"){e.selectionSvc?.deselectAllRowNodes({source:s,selectAll:t})}function XM(e,t="apiSelectAllFiltered"){e.selectionSvc?.selectAllRowNodes({source:t,selectAll:"filtered"})}function QM(e,t="apiSelectAllFiltered"){e.selectionSvc?.deselectAllRowNodes({source:t,selectAll:"filtered"})}function JM(e,t="apiSelectAllCurrentPage"){e.selectionSvc?.selectAllRowNodes({source:t,selectAll:"currentPage"})}function eI(e,t="apiSelectAllCurrentPage"){e.selectionSvc?.deselectAllRowNodes({source:t,selectAll:"currentPage"})}function tI(e){return e.selectionSvc?.getSelectedNodes()??[]}function sI(e){return e.selectionSvc?.getSelectedRows()??[]}var oI=class extends EF{constructor(){super(...arguments),this.beanName="selectionSvc",this.selectedNodes=new Map,this.detailSelection=new Map,this.masterSelectsDetail=!1}postConstruct(){super.postConstruct();const{gos:e}=this;this.mode=Da(e),this.groupSelectsDescendants=Qn(e),this.groupSelectsFiltered=Ta(e)==="filteredDescendants",this.masterSelectsDetail=qh(e)==="detail",this.addManagedPropertyListeners(["groupSelectsChildren","groupSelectsFiltered","rowSelection"],()=>{const t=Qn(e),s=Da(e),o=Ta(e)==="filteredDescendants";this.masterSelectsDetail=qh(e)==="detail",(t!==this.groupSelectsDescendants||o!==this.groupSelectsFiltered||s!==this.mode)&&(this.deselectAllRowNodes({source:"api"}),this.groupSelectsDescendants=t,this.groupSelectsFiltered=o,this.mode=s)}),this.addManagedEventListeners({rowSelected:this.onRowSelected.bind(this)})}destroy(){super.destroy(),this.resetNodes()}handleSelectionEvent(e,t,s){if(this.isRowSelectionBlocked(t))return 0;const o=this.inferNodeSelections(t,e.shiftKey,e.metaKey||e.ctrlKey,s);if(o==null)return 0;if(this.selectionCtx.selectAll=!1,"select"in o)return o.reset?this.resetNodes():this.selectRange(o.deselect,!1,s),this.selectRange(o.select,!0,s);{const i=o.checkFilteredNodes?iv(o.node):o.newValue;return this.setNodesSelected({nodes:[o.node],newValue:i,clearSelection:o.clearSelection,keepDescendants:o.keepDescendants,event:e,source:s})}}setNodesSelected({newValue:e,clearSelection:t,suppressFinishActions:s,nodes:o,event:i,source:n,keepDescendants:r=!1}){if(o.length===0)return 0;const{gos:a}=this;if(!Eo(a)&&e)return z(132),0;if(o.length>1&&!this.isMultiSelect())return z(130),0;let l=0;for(let c=0;c<o.length;c++){const d=o[c],u=pi(d);if(u.rowPinned&&!mr(u)){z(59);continue}if(u.id===void 0){z(60);continue}this.groupSelectsFiltered&&u.group&&!a.get("treeData")||this.selectRowNode(u,e,i,n)&&(this.detailSelection.delete(u.id),l++),this.groupSelectsDescendants&&u.childrenAfterGroup?.length&&(l+=this.selectChildren(u,e,n))}return s||(o.length===1&&n==="api"&&this.selectionCtx.setRoot(pi(o[0])),e&&(t||!this.isMultiSelect())&&(l+=this.clearOtherNodes(pi(o[0]),r,n)),l>0&&(this.updateGroupsFromChildrenSelections(n),this.dispatchSelectionChanged(n))),l}selectRange(e,t,s){let o=0;return e.forEach(i=>{const n=pi(i);if(n.group&&this.groupSelectsDescendants)return;this.selectRowNode(n,t,void 0,s)&&o++}),o>0&&(this.updateGroupsFromChildrenSelections(s),this.dispatchSelectionChanged(s)),o}selectChildren(e,t,s){const o=this.groupSelectsFiltered?e.childrenAfterAggFilter:e.childrenAfterGroup;return o?this.setNodesSelected({newValue:t,clearSelection:!1,suppressFinishActions:!0,source:s,nodes:o}):0}getSelectedNodes(){return Array.from(this.selectedNodes.values())}getSelectedRows(){const e=[];return this.selectedNodes.forEach(t=>t.data&&e.push(t.data)),e}getSelectionCount(){return this.selectedNodes.size}filterFromSelection(e){const t=new Map;this.selectedNodes.forEach((s,o)=>{e(s)&&t.set(o,s)}),this.selectedNodes=t}updateGroupsFromChildrenSelections(e,t){if(!this.groupSelectsDescendants)return!1;const{gos:s,rowModel:o}=this.beans;if(!Qe(s))return!1;const i=o.rootNode;if(!i)return!1;t||(t=new tr(!0,i),t.active=!1);let n=!1;return t.forEachChangedNodeDepthFirst(r=>{if(r!==i){const a=this.calculateSelectedFromChildren(r);n=this.selectRowNode(r,a===null?!1:a,void 0,e)||n}}),n}clearOtherNodes(e,t,s){const o=new Map;let i=0;return this.selectedNodes.forEach(n=>{const r=n.id==e.id;if((t?!nI(e,n):!0)&&!r){const l=this.selectedNodes.get(n.id);i+=this.setNodesSelected({nodes:[l],newValue:!1,clearSelection:!1,suppressFinishActions:!0,source:s}),this.groupSelectsDescendants&&n.parent&&o.set(n.parent.id,n.parent)}}),o.forEach(n=>{const r=this.calculateSelectedFromChildren(n);this.selectRowNode(n,r===null?!1:r,void 0,s)}),i}onRowSelected(e){const t=e.node;this.groupSelectsDescendants&&t.group||(t.isSelected()?this.selectedNodes.set(t.id,t):this.selectedNodes.delete(t.id))}syncInRowNode(e,t){this.syncInOldRowNode(e,t),this.syncInNewRowNode(e)}createDaemonNode(e){if(!e.id)return;const t=new io(this.beans);return t.id=e.id,t.data=e.data,t.__selected=e.__selected,t.level=e.level,t}syncInOldRowNode(e,t){t&&e.id!==t.id&&this.selectedNodes.get(t.id)==e&&this.selectedNodes.set(t.id,t)}syncInNewRowNode(e){this.selectedNodes.has(e.id)?(e.__selected=!0,this.selectedNodes.set(e.id,e)):e.__selected=!1}reset(e){const t=this.getSelectionCount();this.resetNodes(),t&&this.dispatchSelectionChanged(e)}resetNodes(){this.selectedNodes.forEach(e=>{this.selectRowNode(e,!1)}),this.selectedNodes.clear()}getBestCostNodeSelection(){const{gos:e,rowModel:t}=this.beans;if(!Qe(e))return;const s=t.getTopLevelNodes();if(s===null)return;const o=[];function i(n){for(let r=0,a=n.length;r<a;r++){const l=n[r];l.isSelected()?o.push(l):l.group&&l.childrenAfterGroup&&i(l.childrenAfterGroup)}}return i(s),o}isEmpty(){return this.getSelectionCount()===0}deselectAllRowNodes({source:e,selectAll:t}){const s=Qe(this.gos);let o=!1;const i=n=>{const r=this.selectRowNode(pi(n),!1,void 0,e);o||(o=r)};if(t==="currentPage"||t==="filtered"){if(!s){Be(102);return}this.getNodesToSelect(t).forEach(i)}else this.selectedNodes.forEach(i),this.reset(e);if(this.selectionCtx.selectAll=!1,s&&this.groupSelectsDescendants){const n=this.updateGroupsFromChildrenSelections(e);o||(o=n)}o&&this.dispatchSelectionChanged(e)}getSelectedCounts(e){let t=0,s=0;return this.getNodesToSelect(e).forEach(o=>{this.groupSelectsDescendants&&o.group||(o.isSelected()?t++:o.selectable&&s++)}),{selectedCount:t,notSelectedCount:s}}getSelectAllState(e){const{selectedCount:t,notSelectedCount:s}=this.getSelectedCounts(e);return ov(t,s)??null}hasNodesToSelect(e){return this.getNodesToSelect(e).filter(t=>t.selectable).length>0}getNodesToSelect(e){if(!this.canSelectAll())return[];const t=[],s=i=>t.push(i);if(e==="currentPage")return this.forEachNodeOnPage(i=>{if(!i.group){s(i);return}if(!i.expanded&&!i.footer){const n=r=>{s(r),r.childrenAfterFilter?.forEach(n)};n(i);return}this.groupSelectsDescendants||s(i)}),t;const o=this.beans.rowModel;return e==="filtered"?(o.forEachNodeAfterFilter(s),t):(o.forEachNode(s),t)}forEachNodeOnPage(e){const{pageBounds:t,rowModel:s}=this.beans,o=t.getFirstRow(),i=t.getLastRow();for(let n=o;n<=i;n++){const r=s.getRow(n);r&&e(r)}}selectAllRowNodes(e){const{gos:t,selectionCtx:s}=this;if(!Eo(t)){z(132);return}if(ry(t)&&!Pa(t)){z(130);return}if(!this.canSelectAll())return;const{source:o,selectAll:i}=e;let n=!1;if(this.getNodesToSelect(i).forEach(r=>{const a=this.selectRowNode(pi(r),!0,void 0,o);n||(n=a)}),s.selectAll=!0,Qe(t)&&this.groupSelectsDescendants){const r=this.updateGroupsFromChildrenSelections(o);n||(n=r)}n&&this.dispatchSelectionChanged(o)}getSelectionState(){return this.isEmpty()?null:Array.from(this.selectedNodes.keys())}setSelectionState(e,t,s){if(e||(e=[]),!Array.isArray(e)){Be(103);return}const o=new Set(e),i=[];this.beans.rowModel.forEachNode(n=>{o.has(n.id)&&i.push(n)}),s&&this.resetNodes(),this.setNodesSelected({newValue:!0,nodes:i,source:t})}canSelectAll(){return Qe(this.beans.gos)}updateSelectable(e){const{gos:t,rowModel:s}=this.beans;if(!Eo(t))return;const o="selectableChanged",i=e!==void 0,n=Qe(t)&&this.groupSelectsDescendants,r=[],a=l=>{if(i&&!l.group)return;if(n&&l.group){const d=l.childrenAfterGroup?.some(u=>u.selectable)??!1;this.setRowSelectable(l,d,!0);return}!this.updateRowSelectable(l,!0)&&l.isSelected()&&r.push(l)};if(n){if(e===void 0){const l=s.rootNode;e=l?new tr(!1,l):void 0}e?.forEachChangedNodeDepthFirst(a,!i,!i)}else s.forEachNode(a);r.length&&this.setNodesSelected({nodes:r,newValue:!1,source:o}),!i&&n&&this.updateGroupsFromChildrenSelections?.(o)}updateSelectableAfterGrouping(e){this.updateSelectable(e),this.groupSelectsDescendants&&this.updateGroupsFromChildrenSelections?.("rowGroupChanged",e)&&this.dispatchSelectionChanged("rowGroupChanged")}refreshMasterNodeState(e,t){if(!this.masterSelectsDetail)return;const s=e.detailNode?.detailGridInfo?.api;if(!s)return;const o=iI(s);if(e.isSelected()!==o&&this.selectRowNode(e,o,t,"masterDetail")&&this.dispatchSelectionChanged("masterDetail"),!o){const n=this.detailSelection.get(e.id)??new Set;for(const r of s.getSelectedNodes())n.add(r.id);this.detailSelection.set(e.id,n)}}setDetailSelectionState(e,t,s){if(this.masterSelectsDetail){if(!Pa(t)){z(269);return}switch(e.isSelected()){case!0:{s.selectAll();break}case!1:{s.deselectAll();break}case void 0:{const o=this.detailSelection.get(e.id);if(o){const i=[];for(const n of o){const r=s.getRowNode(n);r&&i.push(r)}s.setNodesSelected({nodes:i,newValue:!0,source:"masterDetail"})}break}}}}dispatchSelectionChanged(e){this.eventSvc.dispatchEvent({type:"selectionChanged",source:e,selectedNodes:this.getSelectedNodes(),serverSideState:null})}};function pi(e){return mr(e)?e.pinnedSibling:e.footer?e.sibling:e}function iI(e){let t=0,s=0;return e.forEachNode(o=>{o.isSelected()?t++:o.selectable&&s++}),ov(t,s)}function ov(e,t){if(e===0&&t===0)return!1;if(!(e>0&&t>0))return e>0}function nI(e,t){let s=t.parent;for(;s;){if(s===e)return!0;s=s.parent}return!1}function iv(e){const t=e.isSelected()===!1,s=e.childrenAfterFilter?.some(iv)??!1;return t||s}var rI={moduleName:"SharedRowSelection",version:Y,beans:[qM],apiFunctions:{setNodesSelected:KM,selectAll:YM,deselectAll:ZM,selectAllFiltered:XM,deselectAllFiltered:QM,selectAllOnCurrentPage:JM,deselectAllOnCurrentPage:eI,getSelectedNodes:tI,getSelectedRows:sI}},aI={moduleName:"RowSelection",version:Y,rowModels:["clientSide","infinite","viewport"],beans:[oI],dependsOn:[rI]};function lI(e){e.expansionSvc?.expandAll(!0)}function cI(e){e.expansionSvc?.expandAll(!1)}function nv(e){e.rowModel?.onRowHeightChanged()}function rv(e){if(e.rowAutoHeight?.active){z(3);return}e.rowModel?.resetRowHeights()}function dI(e,t,s){const o=d4(e);if(o){if(e.rowGroupColsSvc?.columns.length===0){if(t<0){Be(238);return}o.setRowCount(t,s);return}Be(28);return}cl(e)?.setRowCount(t,s)}function uI(e){return _o(e.gos)?e.rowModel.getBlockStates():e.rowNodeBlockLoader?.getBlockState()??{}}function hI(e){return e.rowModel.isLastRowIndexKnown()}var gI={moduleName:"CsrmSsrmSharedApi",version:Y,apiFunctions:{expandAll:lI,collapseAll:cI}},pI={moduleName:"RowModelSharedApi",version:Y,apiFunctions:{onRowHeightChanged:nv,resetRowHeights:rv}},fI={moduleName:"SsrmInfiniteSharedApi",version:Y,apiFunctions:{setRowCount:dI,getCacheBlockState:uI,isLastRowIndexKnown:hI}},mI=class extends O{constructor(){super(...arguments),this.beanName="alignedGridsSvc",this.consuming=!1}getAlignedGridApis(){let e=this.gos.get("alignedGrids")??[];const t=typeof e=="function";return typeof e=="function"&&(e=e()),e.map(o=>{if(!o){Be(18),t||Be(20);return}if(this.isGridApi(o))return o;const i=o;return"current"in i?i.current?.api:(i.api||Be(19),i.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){if(!this.consuming)for(const t of this.getAlignedGridApis())t.isDestroyed()||t.dispatchEvent(e)}onEvent(e){this.consuming=!0,e(),this.consuming=!1}fireColumnEvent(e){this.fireEvent({type:"alignedGridColumn",event:e})}fireScrollEvent(e){e.direction==="horizontal"&&this.fireEvent({type:"alignedGridScroll",event:e})}onScrollEvent(e){this.onEvent(()=>{this.beans.ctrlsSvc.getScrollFeature().setHorizontalScrollPosition(e.left,!0)})}extractDataFromEvent(e,t){const s=[];return e.columns?e.columns.forEach(o=>{s.push(t(o))}):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":z(21);break}})}processGroupOpenedEvent(e){const{colGroupSvc:t}=this.beans;if(t)for(const s of e.columnGroups){let o=null;s&&(o=t.getProvidedColGroup(s.getGroupId())),!(s&&!o)&&t.setColumnGroupOpened(o,s.isExpanded(),"alignedGridChanged")}}processColumnEvent(e){const t=e.column;let s=null;const o=this.beans,{colResize:i,ctrlsSvc:n,colModel:r}=o;if(t&&(s=r.getColDefCol(t.getColId())),t&&!s)return;const a=this.getMasterColumns(e);switch(e.type){case"columnMoved":{const u=e.api.getColumnState().map(h=>({colId:h.colId}));os(o,{state:u,applyOrder:!0},"alignedGridChanged")}break;case"columnVisible":{const u=e.api.getColumnState().map(h=>({colId:h.colId,hide:h.hide}));os(o,{state:u},"alignedGridChanged")}break;case"columnPinned":{const u=e.api.getColumnState().map(h=>({colId:h.colId,pinned:h.pinned}));os(o,{state:u},"alignedGridChanged")}break;case"columnResized":{const d=e,u={};for(const h of a)u[h.getId()]={key:h.getColId(),newWidth:h.getActualWidth()};for(const h of d.flexColumns??[])u[h.getId()]&&delete u[h.getId()];i?.setColumnWidths(Object.values(u),!1,d.finished,"alignedGridChanged");break}}const c=n.getGridBodyCtrl().isVerticalScrollShowing();for(const d of this.getAlignedGridApis())d.setGridOption("alwaysShowVerticalScroll",c)}},CI={moduleName:"AlignedGrids",version:Y,beans:[mI],dependsOn:[nC]},vI=class extends O{constructor(e){super(),this.rootNode=e,this.nextId=0,this.allNodesMap={},op(e)}getRowNode(e){return this.allNodesMap[e]}setNewRowData(e){const{selectionSvc:t,pinnedRowModel:s,groupStage:o}=this.beans;t?.reset("rowDataChanged"),s?.isManual()&&s.reset(),this.dispatchRowDataUpdateStarted(e),this.allNodesMap=Object.create(null),this.nextId=0;const i=op(this.rootNode),n=new Array(e.length);i._leafs=n;let r=0;const a=o?.getNestedDataGetter(),l=a?new Set:null,c=(d,u)=>{const h=d.level+1;for(let p=0,f=u.length;p<f;++p){const C=u[p];if(!C)continue;const v=this.createRowNode(C,h);if(v.sourceRowIndex=r,n[r++]=v,l&&!l.has(C)){l.add(C),v.treeParent=d;const w=a(C);w&&c(v,w)}}};c(i,e),n.length=r}setImmutableRowData(e,t){const{rootNode:s,gos:o}=this;this.dispatchRowDataUpdateStarted(t);const i=Oi(o),n=e.changedRowNodes,{adds:r,updates:a}=n,l=new Set,c=[],d=this.beans.groupStage?.getNestedDataGetter();let u=o.get("suppressMaintainUnsortedOrder")?void 0:!1,h=-1,p=!1;const f=(w,b)=>{if(!u&&u!==void 0){const S=w.sourceRowIndex;u=S<=h,h=S}w.data!==b&&(w.updateData(b),r.has(w)||a.add(w),!w.selectable&&w.isSelected()&&c.push(w))},C=(w,b,S)=>{for(let y=0,x=b.length;y<x;++y){const F=b[y];if(!F)continue;let R=this.getRowNode(i({data:F,level:S}));if(R?(f(R,F),p||(p=!!d&&R.treeParent!==w)):(R=this.createRowNode(F,S),r.add(R)),!d||l.has(R)){l.add(R);continue}l.add(R),R.treeParent=w;const E=d(F);E&&C(R,E,S+1)}};C(s,t,0);const v=this.deleteUnusedNodes(l,n,c)||u||r.size>0;if(v){const w=s._leafs??(s._leafs=[]);u===void 0?xI(w,l,n):yI(w,l)&&(n.reordered=!0)}(v||p||a.size)&&(e.rowDataUpdated=!0,this.deselect(c))}deleteUnusedNodes(e,{removals:t},s){const o=this.rootNode._leafs;for(let i=0,n=o.length;i<n;i++){const r=o[i];e.has(r)||(t.add(r),r.isSelected()&&s.push(r),this.deleteNode(r))}return t.size>0}updateRowData(e,t){if(this.dispatchRowDataUpdateStarted(e.add),this.beans.groupStage?.getNestedDataGetter())return z(268),{remove:[],update:[],add:[]};const s=[],o=Oi(this.gos),i=this.executeRemove(o,e,t,s),n=this.executeUpdate(o,e,t,s),r=this.executeAdd(e,t);return this.deselect(s),{remove:i,update:n,add:r}}executeRemove(e,{remove:t},{adds:s,updates:o,removals:i},n){const r=this.rootNode._leafs,a=r?.length,l=t?.length;if(!l||!a)return[];let c=0,d=a,u=0,h;const p=new Array(l);for(let f=0;f<l;++f){const C=this.lookupNode(e,t[f]);if(!C)continue;const v=C.sourceRowIndex;v<d&&(d=v),v>u&&(u=v),C.isSelected()&&n.push(C),this.deleteNode(C),s.delete(C)?(h??(h=new Set),h.add(C)):(o.delete(C),i.add(C)),p[c++]=C}return p.length=c,c&&SI(r,d,u,i,h),p}executeUpdate(e,{update:t},{adds:s,updates:o},i){const n=t?.length;if(!n)return[];const r=new Array(n);let a=0;for(let l=0;l<n;l++){const c=t[l],d=this.lookupNode(e,c);d&&(d.updateData(c),!d.selectable&&d.isSelected()&&i.push(d),r[a++]=d,s.has(d)||o.add(d))}return r.length=a,r}executeAdd(e,t){var s;const o=(s=this.rootNode)._leafs??(s._leafs=[]),i=o.length,n=e.add,r=n?.length;if(!r)return[];const a=i+r;let l=this.sanitizeAddIndex(o,e.addIndex);if(l<i){for(let u=i-1,h=a-1;u>=l;--u){const p=o[u];p.sourceRowIndex=h,o[h--]=p}t.reordered=!0}o.length=a;const c=new Array(r),d=t.adds;for(let u=0;u<r;u++){const h=this.createRowNode(n[u],0);d.add(h),h.sourceRowIndex=l,o[l]=h,c[u]=h,l++}return c}dispatchRowDataUpdateStarted(e){this.eventSvc.dispatchEvent({type:"rowDataUpdateStarted",firstRowData:e?.length?e[0]:null})}deselect(e){const t="rowDataChanged",s=this.beans.selectionSvc;e.length&&s?.setNodesSelected({newValue:!1,nodes:e,suppressFinishActions:!0,source:t}),s?.updateGroupsFromChildrenSelections?.(t),e.length&&this.eventSvc.dispatchEvent({type:"selectionChanged",source:t,selectedNodes:s?.getSelectedNodes()??null,serverSideState:null})}createRowNode(e,t){const s=new io(this.beans);s.parent=this.rootNode,s.level=t,s.group=!1,s.expanded=!1,s.setDataAndId(e,String(this.nextId++));const o=s.id,i=this.allNodesMap;return i[o]&&z(2,{nodeId:o}),i[o]=s,s}deleteNode(e){e.clearRowTopAndRowIndex();const t=e.id,s=this.allNodesMap;s[t]===e&&delete s[t];const o=e.pinnedSibling;o&&this.beans.pinnedRowModel?.pinRow(o,null)}lookupNode(e,t){if(!e)return bI(this.rootNode._leafs,t);const s=e({data:t,level:0}),o=this.allNodesMap[s];return o||(Be(4,{id:s}),null)}sanitizeAddIndex(e,t){const s=e.length;if(typeof t!="number"||t<0||t>=s||Number.isNaN(t))return s;t=Math.ceil(t);const o=this.gos;return t>0&&o.get("treeData")&&o.get("getDataPath")&&(t=wI(e,t)),t}},wI=(e,t)=>{for(let s=0,o=e.length;s<o;s++)if(e[s]?.rowIndex==t-1)return s+1;return t},op=e=>{e.group=!0,e.level=-1,e.id="ROOT_NODE_ID",e._leafs?.length!==0&&(e._leafs=[]);const t=[],s=[],o=[],i=[];e.childrenAfterGroup=t,e.childrenAfterSort=s,e.childrenAfterAggFilter=o,e.childrenAfterFilter=i;const n=e.sibling;return n&&(n.childrenAfterGroup=t,n.childrenAfterSort=s,n.childrenAfterAggFilter=o,n.childrenAfterFilter=i,n.childrenMapped=e.childrenMapped),e.updateHasChildren(),e},bI=(e,t)=>{if(e)for(let s=0,o=e.length;s<o;s++){const i=e[s];if(i.data===t)return i}return Be(5,{data:t}),null},SI=(e,t,s,o,i)=>{t=Math.max(0,t);for(let n=t,r=e.length;n<r;++n){const a=e[n];n<=s&&(o.has(a)||i?.has(a))||(a.sourceRowIndex=t,e[t++]=a)}e.length=t},yI=(e,t)=>{const s=t.size;e.length=s;let o=0,i=!1,n=!1;for(const r of t){const a=r.sourceRowIndex;a===o?n||(n=i):(a>=0?n=!0:i=!0,r.sourceRowIndex=o,e[o]=r),++o}return n},xI=(e,t,{removals:s,adds:o})=>{const i=e.length;e.length=t.size;let n=0;for(let r=0;r<i;++r){const a=e[r];s.has(a)||(n!==r&&(a.sourceRowIndex=n,e[n]=a),++n)}for(const r of o)r.sourceRowIndex<0&&(r.sourceRowIndex=n,e[n++]=r);e.length=n},av=e=>{const t=e.childrenAfterSort,s=e.sibling;if(s&&(s.childrenAfterSort=t),!!t)for(let o=0,i=t.length-1;o<=i;o++){const n=t[o],r=o===0,a=o===i;n.firstChild!==r&&(n.firstChild=r,n.dispatchRowEvent("firstChildChanged")),n.lastChild!==a&&(n.lastChild=a,n.dispatchRowEvent("lastChildChanged")),n.childIndex!==o&&(n.childIndex=o,n.dispatchRowEvent("childIndexChanged"))}},RI=class extends O{constructor(){super(...arguments),this.beanName="sortStage",this.step="sort",this.refreshProps=["postSortRows","groupDisplayType","accentedSort"]}execute(e){const t=this.beans.sortSvc.getSortOptions(),s=t.length>0&&!!e.changedRowNodes&&this.gos.get("deltaSort");this.sort(t,s,e.changedRowNodes,e.changedPath)}sort(e,t,s,o){const{gos:i,colModel:n,rowGroupColsSvc:r,rowNodeSorter:a,rowRenderer:l,showRowGroupCols:c}=this.beans,d=i.get("groupMaintainOrder"),u=n.getCols().some(b=>b.isRowGroupActive()),h=r?.columns,p=n.isPivotMode(),f=i.getCallback("postSortRows");let C=!1,v;const w=b=>{const S=p&&b.leafGroup;let y=d&&u&&!b.leafGroup;y&&(v??(v=this.shouldSortContainsGroupCols(e)),y&&(y=!v));let x=null;if(y){let F=!1;if(h){const R=b.level+1;R<h.length&&(F=h[R].getSort()===null)}F||(x=DI(b))}else!e.length||S||(t&&s?x=FI(a,b,s,o,e):x=a.doFullSort(b.childrenAfterAggFilter,e));if(x||(x=b.childrenAfterAggFilter?.slice(0)??[]),C||(C=b.childrenAfterSort?.[0]!==x[0]),b.childrenAfterSort=x,av(b),f){const F={nodes:b.childrenAfterSort};f(F)}};if(o?.forEachChangedNodeDepthFirst(w),C&&i.get("groupHideOpenParents")){const b=c?.getShowRowGroupCols();b?.length&&l.refreshCells({columns:b,force:!0})}}shouldSortContainsGroupCols(e){const t=e.length;if(!t)return!1;if(fs(this.gos)){for(let s=0;s<t;++s){const o=e[s].column;if(o.isPrimary()&&o.isRowGroupActive())return!0}return!1}for(let s=0;s<t;++s)if(e[s].column.getColDef().showRowGroup)return!0;return!1}},FI=(e,t,s,o,i)=>{const n=t.childrenAfterAggFilter,r=t.childrenAfterSort;if(!r)return e.doFullSort(n,i);const a=new Set,l=[],{updates:c,adds:d}=s;for(let h=0,p=n.length;h<p;++h){const f=n[h];c.has(f)||d.has(f)||o&&!o.canSkip(f)?l.push({currentPos:l.length,rowNode:f}):a.add(f)}const u=r.filter(h=>a.has(h)).map((h,p)=>({currentPos:p,rowNode:h}));return l.sort((h,p)=>e.compareRowNodes(i,h,p)),EI(e,i,l,u)},EI=(e,t,s,o)=>{let i=0,n=0;const r=s.length,a=o.length,l=new Array(r+a);let c=0;for(;i<r&&n<a;){const d=s[i],u=o[n];e.compareRowNodes(t,d,u)<0?(l[c++]=d.rowNode,++i):(l[c++]=u.rowNode,++n)}for(;i<r;)l[c++]=s[i++].rowNode;for(;n<a;)l[c++]=o[n++].rowNode;return l},DI=e=>{const t=e.childrenAfterSort,s=e.childrenAfterAggFilter,o=t?.length,i=s?.length;if(!o||!i)return null;const n=new Array(i),r=new Set;for(let l=0;l<i;++l)r.add(s[l]);let a=0;for(let l=0;l<o;++l){const c=t[l];r.delete(c)&&(n[a++]=c)}if(r.size===0&&a===o)return t;for(const l of r)n[a++]=l;return n.length=a,n},PI=class extends O{constructor(){super(...arguments),this.beanName="rowModel",this.rootNode=null,this.rowCountReady=!1,this.nodeManager=void 0,this.rowsToDisplay=[],this.rowDataUpdatedPending=!1,this.asyncTransactions=null,this.asyncTransactionsTimer=0,this.started=!1,this.refreshingModel=!1,this.rowNodesCountReady=!1,this.stages=[],this.stagesRefreshProps=new Map,this.onRowHeightChanged_debounced=at(this,this.onRowHeightChanged.bind(this),100)}postConstruct(){const e=this.beans,t=new io(e);this.rootNode=t,this.nodeManager=this.createBean(new vI(t));const s=this.refreshModel.bind(this,{step:"group"}),o=this.refreshModel.bind(this,{step:"group",afterColumnsChanged:!0,keepRenderedRows:!0,animate:!this.gos.get("suppressAnimationFrame")});this.addManagedEventListeners({newColumnsLoaded:o,columnRowGroupChanged:s,columnValueChanged:this.onValueChanged.bind(this),columnPivotChanged:this.refreshModel.bind(this,{step:"pivot"}),filterChanged:this.onFilterChanged.bind(this),sortChanged:this.onSortChanged.bind(this),columnPivotModeChanged:s,gridStylesChanged:this.onGridStylesChanges.bind(this),gridReady:this.onGridReady.bind(this),rowExpansionStateChanged:this.onRowGroupOpened.bind(this)}),this.addPropertyListeners()}addPropertyListeners(){const{beans:e,stagesRefreshProps:t}=this,s=[e.groupStage,e.filterStage,e.pivotStage,e.aggStage,e.sortStage,e.filterAggStage,e.flattenStage].filter(o=>!!o);this.stages=s;for(let o=s.length-1;o>=0;--o)for(const i of s[o].refreshProps)t.set(i,o);this.addManagedPropertyListeners([...t.keys()],o=>{const i=o.changeSet?.properties;i&&this.onPropChange(i)}),this.addManagedPropertyListener("rowData",()=>this.onPropChange(["rowData"])),this.addManagedPropertyListener("rowHeight",()=>this.resetRowHeights())}start(){this.started=!0,this.rowNodesCountReady?this.refreshModel({step:"group",rowDataUpdated:!0,newData:!0}):this.setInitialData()}setInitialData(){this.gos.get("rowData")&&this.onPropChange(["rowData"])}ensureRowHeightsValid(e,t,s,o){let i,n=!1;do{i=!1;const r=this.getRowIndexAtPixel(e),a=this.getRowIndexAtPixel(t),l=Math.max(r,s),c=Math.min(a,o);for(let d=l;d<=c;d++){const u=this.getRow(d);if(u.rowHeightEstimated){const h=to(this.beans,u);u.setRowHeight(h.height),i=!0,n=!0}}i&&this.setRowTopAndRowIndex()}while(i);return n}onPropChange(e){const{nodeManager:t,gos:s,beans:o}=this,i=o.groupStage;if(!t)return;const n=new Set(e),r=i?.onPropChange(n);let a;n.has("rowData")?a=s.get("rowData"):r&&(a=i?.extractData()),a&&!Array.isArray(a)&&(a=null,z(1));const l={step:"nothing",changedProps:n};a&&(!r&&!this.isEmpty()&&a.length>0&&s.exists("getRowId")&&!s.get("resetRowDataOnUpdate")?(l.keepRenderedRows=!0,l.animate=!s.get("suppressAnimationFrame"),l.changedRowNodes=new ha,t.setImmutableRowData(l,a)):(l.rowDataUpdated=!0,l.newData=!0,t.setNewRowData(a),this.rowNodesCountReady=!0));const c=l.rowDataUpdated?"group":this.getRefreshedStage(e);c&&(l.step=c,this.refreshModel(l))}getRefreshedStage(e){const{stages:t,stagesRefreshProps:s}=this,o=t.length;let i=o;for(let n=0,r=e.length;n<r&&i;++n)i=Math.min(i,s.get(e[n])??i);return i<o?t[i].step:null}setRowTopAndRowIndex(e){const{beans:t,rowsToDisplay:s}=this,o=t.environment.getDefaultRowHeight();let i=0;const n=ht(this.gos,"normal");for(let r=0,a=s.length;r<a;++r){const l=s[r],c=l.id;if(c!=null&&e?.add(c),l.rowHeight==null){const d=to(t,l,n,o);l.setRowHeight(d.height,d.estimated)}l.setRowTop(i),l.setRowIndex(r),i+=l.rowHeight}}clearRowTopAndRowIndex(e,t){const s=e.active,o=r=>{r?.id!=null&&!t.has(r.id)&&r.clearRowTopAndRowIndex()},i=r=>{o(r),o(r.detailNode),o(r.sibling);const a=r.childrenAfterGroup;if(!r.hasChildren()||!a)return;const l=r.level==-1;if(!(s&&!l&&!r.expanded))for(let d=0,u=a.length;d<u;++d)i(a[d])},n=this.rootNode;n&&i(n)}isLastRowIndexKnown(){return!0}getRowCount(){return this.rowsToDisplay.length}getTopLevelRowCount(){const{rootNode:e,rowsToDisplay:t}=this;if(!e||!t.length)return 0;if(t[0]===e)return 1;const o=e.sibling?.displayed?1:0;return(e.childrenAfterSort?.length??0)+o}getTopLevelRowDisplayedIndex(e){const{beans:t,rootNode:s,rowsToDisplay:o}=this;if(!s||!o.length||o[0]===s)return e;const n=s.childrenAfterSort,r=l=>{let c=n[l];if(this.gos.get("groupHideOpenParents"))for(;c.expanded&&c.childrenAfterSort&&c.childrenAfterSort.length>0;)c=c.childrenAfterSort[0];return c.rowIndex},a=t.footerSvc;return a?a?.getTopDisplayIndex(o,e,n,r):r(e)}getTopLevelIndexFromDisplayedIndex(e){const{rootNode:t,rowsToDisplay:s}=this;if(!t||!s.length||s[0]===t)return e;let i=this.getRow(e);i.footer&&(i=i.sibling);let n=i.parent;for(;n&&n!==t;)i=n,n=i.parent;const r=t.childrenAfterSort?.indexOf(i)??-1;return r>=0?r:e}getRowBounds(e){const t=this.rowsToDisplay[e];return t?{rowTop:t.rowTop,rowHeight:t.rowHeight}:null}onRowGroupOpened(){this.refreshModel({step:"map",keepRenderedRows:!0,animate:xi(this.gos)})}onFilterChanged({afterDataChange:e,columns:t}){if(!e){const o=t.length===0||t.some(i=>i.isPrimary())?"filter":"filter_aggregates";this.refreshModel({step:o,keepRenderedRows:!0,animate:xi(this.gos)})}}onSortChanged(){this.refreshModel({step:"sort",keepRenderedRows:!0,animate:xi(this.gos)})}getType(){return"clientSide"}onValueChanged(){this.refreshModel({step:this.beans.colModel.isPivotActive()?"pivot":"aggregate"})}createChangePath(e){const t=new tr(!1,this.rootNode);return t.active=e,t}isSuppressModelUpdateAfterUpdateTransaction(e){if(!this.gos.get("suppressModelUpdateAfterUpdateTransaction"))return!1;const{changedRowNodes:t,newData:s,rowDataUpdated:o}=e;return!(!t||s||!o||t.removals.size||t.adds.size)}refreshModel(e){const{nodeManager:t,beans:s,eventSvc:o,started:i,refreshingModel:n}=this;if(!t)return;const r=!!e.rowDataUpdated,a=e.changedPath??(e.changedPath=this.createChangePath(!e.newData&&r));if(i&&r&&o.dispatchEvent({type:"rowDataUpdated"}),!i||n||s.colModel.changeEventsDispatching||this.isSuppressModelUpdateAfterUpdateTransaction(e)){this.rowDataUpdatedPending||(this.rowDataUpdatedPending=r);return}switch(this.rowDataUpdatedPending&&(this.rowDataUpdatedPending=!1,e.step="group"),this.refreshingModel=!0,s.masterDetailSvc?.refreshModel(e),r&&e.step!=="group"&&s.colFilter?.refreshModel(),e.step){case"group":this.doGrouping(e);case"filter":this.doFilter(a);case"pivot":this.doPivot(a);case"aggregate":this.doAggregate(a);case"filter_aggregates":this.doFilterAggregates(a);case"sort":this.doSort(e.changedRowNodes,a);case"map":this.doRowsToDisplay()}const l=new Set;this.setRowTopAndRowIndex(l),this.clearRowTopAndRowIndex(a,l),this.refreshingModel=!1,o.dispatchEvent({type:"modelUpdated",animate:e.animate,keepRenderedRows:e.keepRenderedRows,newData:e.newData,newPage:!1,keepUndoRedoStack:e.keepUndoRedoStack})}isEmpty(){return!this.rootNode?._leafs?.length||!this.beans.colModel?.ready}isRowsToRender(){return this.rowsToDisplay.length>0}getNodesInRangeForSelection(e,t){let s=!1,o=!1;const i=[],n=Qn(this.gos);return this.forEachNodeAfterFilterAndSort(r=>{if(o)return;if(s&&(r===t||r===e)&&(o=!0,n&&r.group)){lv(i,r);return}if(!s){if(r!==t&&r!==e)return;s=!0,t===e&&(o=!0)}(!r.group||!n)&&i.push(r)}),i}getTopLevelNodes(){return this.rootNode?.childrenAfterGroup??null}getRow(e){return this.rowsToDisplay[e]}isRowPresent(e){return this.rowsToDisplay.indexOf(e)>=0}getRowIndexAtPixel(e){const t=this.rowsToDisplay,s=t.length;if(this.isEmpty()||s===0)return-1;let o=0,i=s-1;if(e<=0)return 0;if(t[i].rowTop<=e)return i;let r=-1,a=-1;for(;;){const l=Math.floor((o+i)/2),c=t[l];if(this.isRowInPixel(c,e)||(c.rowTop<e?o=l+1:c.rowTop>e&&(i=l-1),r===o&&a===i))return l;r=o,a=i}}isRowInPixel(e,t){const s=e.rowTop,o=s+e.rowHeight;return s<=t&&o>t}forEachLeafNode(e){const t=this.rootNode?._leafs;if(t)for(let s=0,o=t.length;s<o;++s)e(t[s],s)}forEachNode(e,t=!1){this.depthFirstSearchRowNodes(e,t)}forEachDisplayedNode(e){const t=this.rowsToDisplay;for(let s=0,o=t.length;s<o;++s)e(t[s],s)}forEachNodeAfterFilter(e,t=!1){this.depthFirstSearchRowNodes(e,t,s=>s.childrenAfterAggFilter)}forEachNodeAfterFilterAndSort(e,t=!1){this.depthFirstSearchRowNodes(e,t,s=>s.childrenAfterSort)}forEachPivotNode(e,t,s){const{colModel:o,rowGroupColsSvc:i}=this.beans;if(!o.isPivotMode())return;if(!i?.columns.length){e(this.rootNode,0);return}const n=s?"childrenAfterSort":"childrenAfterGroup";this.depthFirstSearchRowNodes(e,t,r=>r.leafGroup?null:r[n])}depthFirstSearchRowNodes(e,t=!1,s=n=>n.childrenAfterGroup,o=this.rootNode,i=0){let n=i;if(!o)return n;const r=o===this.rootNode;if(r||e(o,n++),o.hasChildren()&&!o.footer){const a=s(o);if(a){const l=this.beans.footerSvc;n=l?.addTotalRows(n,o,e,t,r,"top")??n;for(const c of a)n=this.depthFirstSearchRowNodes(e,t,s,c,n);return l?.addTotalRows(n,o,e,t,r,"bottom")??n}}return n}doAggregate(e){const t=this.rootNode;t&&this.beans.aggStage?.execute({rowNode:t,changedPath:e})}doFilterAggregates(e){const t=this.rootNode,s=this.beans.filterAggStage;if(s){s.execute({rowNode:t,changedPath:e});return}t.childrenAfterAggFilter=t.childrenAfterFilter}doSort(e,t){const s=this.beans.sortStage;if(s){s.execute({rowNode:this.rootNode,changedRowNodes:e,changedPath:t});return}t.forEachChangedNodeDepthFirst(o=>{o.childrenAfterSort=o.childrenAfterAggFilter.slice(0),av(o)})}doGrouping(e){const t=this.rootNode,o=this.beans.groupStage?.execute({rowNode:t,changedRowNodes:e.changedRowNodes,changedPath:e.changedPath,afterColumnsChanged:!!e.afterColumnsChanged});if(o===void 0){const i=t._leafs;t.childrenAfterGroup=i,t.updateHasChildren();const n=t.sibling;n&&(n.childrenAfterGroup=i)}(o||e.rowDataUpdated)&&this.beans.colFilter?.refreshModel(),!this.rowCountReady&&this.rowNodesCountReady&&(this.rowCountReady=!0,this.eventSvc.dispatchEventOnce({type:"rowCountReady"}))}doFilter(e){const t=this.beans.filterStage;if(t){t.execute({rowNode:this.rootNode,changedPath:e});return}e.forEachChangedNodeDepthFirst(s=>{s.childrenAfterFilter=s.childrenAfterGroup,AC(s)},!0)}doPivot(e){this.beans.pivotStage?.execute({rowNode:this.rootNode,changedPath:e})}getRowNode(e){const t=this.nodeManager?.getRowNode(e);return typeof t=="object"?t:typeof e=="string"&&e.indexOf(Ed)===0?this.beans.groupStage?.getNode(e):void 0}batchUpdateRowData(e,t){if(!this.asyncTransactionsTimer){this.asyncTransactions=[];const s=this.gos.get("asyncTransactionWaitMillis");this.asyncTransactionsTimer=setTimeout(()=>this.executeBatchUpdateRowData(),s)}this.asyncTransactions.push({rowDataTransaction:e,callback:t})}flushAsyncTransactions(){const e=this.asyncTransactionsTimer;e&&(clearTimeout(e),this.executeBatchUpdateRowData())}executeBatchUpdateRowData(){const{nodeManager:e,beans:t,eventSvc:s,asyncTransactions:o}=this;if(!e)return;t.valueCache?.onDataChanged();const i=[],n=[],r=new ha;for(const{rowDataTransaction:a,callback:l}of o??[]){this.rowNodesCountReady=!0;const c=e.updateRowData(a,r);i.push(c),l&&n.push(l.bind(null,c))}this.commitTransactions(r),n.length>0&&setTimeout(()=>{for(let a=0,l=n.length;a<l;a++)n[a]()},0),i.length>0&&s.dispatchEvent({type:"asyncTransactionsFlushed",results:i}),this.asyncTransactionsTimer=0,this.asyncTransactions=null}updateRowData(e){const t=this.nodeManager;if(!t)return null;this.beans.valueCache?.onDataChanged(),this.rowNodesCountReady=!0;const s=new ha,o=t.updateRowData(e,s);return this.commitTransactions(s),o}commitTransactions(e){this.refreshModel({step:"group",rowDataUpdated:!0,keepRenderedRows:!0,animate:!this.gos.get("suppressAnimationFrame"),changedRowNodes:e,changedPath:this.createChangePath(!0)})}doRowsToDisplay(){const{beans:e,rootNode:t}=this,s=e.flattenStage;if(s){this.rowsToDisplay=s.execute({rowNode:t});return}const o=this.rootNode.childrenAfterSort??[];for(const i of o)i.setUiLevel(0);this.rowsToDisplay=o}onRowHeightChanged(){this.refreshModel({step:"map",keepRenderedRows:!0,keepUndoRedoStack:!0})}resetRowHeights(){const e=this.rootNode;if(!e)return;const t=this.resetRowHeightsForAllRowNodes();e.setRowHeight(e.rowHeight,!0);const s=e.sibling;s?.setRowHeight(s.rowHeight,!0),t&&this.onRowHeightChanged()}resetRowHeightsForAllRowNodes(){let e=!1;return this.forEachNode(t=>{t.setRowHeight(t.rowHeight,!0);const s=t.detailNode;s?.setRowHeight(s.rowHeight,!0);const o=t.sibling;o?.setRowHeight(o.rowHeight,!0),e=!0}),e}onGridStylesChanges(e){e.rowHeightChanged&&!this.beans.rowAutoHeight?.active&&this.resetRowHeights()}onGridReady(){this.started||this.setInitialData()}destroy(){super.destroy(),this.nodeManager=this.destroyBean(this.nodeManager),this.started=!1,this.rootNode=null,this.rowsToDisplay=[],this.asyncTransactions=null,clearTimeout(this.asyncTransactionsTimer)}onRowHeightChangedDebounced(){this.onRowHeightChanged_debounced()}},lv=(e,t)=>{const s=t.childrenAfterGroup;if(s)for(let o=0,i=s.length;o<i;++o){const n=s[o];n.data&&e.push(n),n.group&&lv(e,n)}};function TI(e){e.expansionSvc?.onGroupExpandedOrCollapsed()}function MI(e,t){const s=lo(e);s&&((!t||t==="everything")&&(t="group"),s.refreshModel({step:t,keepRenderedRows:!0,animate:!e.gos.get("suppressAnimationFrame")}))}function II(e){return lo(e)?.isEmpty()??!0}function kI(e,t){lo(e)?.forEachLeafNode(t)}function AI(e,t){lo(e)?.forEachNodeAfterFilter(t)}function LI(e,t){lo(e)?.forEachNodeAfterFilterAndSort(t)}function OI(e,t){return e.frameworkOverrides.wrapIncoming(()=>lo(e)?.updateRowData(t))}function NI(e,t,s){e.frameworkOverrides.wrapIncoming(()=>lo(e)?.batchUpdateRowData(t,s))}function HI(e){e.frameworkOverrides.wrapIncoming(()=>lo(e)?.flushAsyncTransactions())}function GI(e){return e.selectionSvc?.getBestCostNodeSelection()}var BI={moduleName:"ClientSideRowModel",version:Y,rowModels:["clientSide"],beans:[PI,RI],dependsOn:[TC]},VI={moduleName:"ClientSideRowModelApi",version:Y,apiFunctions:{onGroupExpandedOrCollapsed:TI,refreshClientSideRowModel:MI,isRowDataEmpty:II,forEachLeafNode:kI,forEachNodeAfterFilter:AI,forEachNodeAfterFilterAndSort:LI,applyTransaction:OI,applyTransactionAsync:NI,flushAsyncTransactions:HI,getBestCostNodeSelection:GI,resetRowHeights:rv,onRowHeightChanged:nv},dependsOn:[gI,pI]},zI=class extends O{constructor(){super(...arguments),this.beanName="gridSerializer"}wireBeans(e){this.visibleCols=e.visibleCols,this.colModel=e.colModel,this.rowModel=e.rowModel,this.pinnedRowModel=e.pinnedRowModel}serialize(e,t={}){const{allColumns:s,columnKeys:o,skipRowGroups:i,exportRowNumbers:n}=t,r=this.getColumnsToExport({allColumns:s,skipRowGroups:i,columnKeys:o,exportRowNumbers:n});return[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)].reduce((a,l)=>l(a),e).parse()}processRow(e,t,s,o){const i=t.shouldRowBeSkipped||(()=>!1),r=t.rowPositions!=null||!!t.onlySelected,a=this.gos.get("groupHideOpenParents")&&!r,l=this.colModel.isPivotMode()?o.leafGroup:!o.group,c=!!o.footer,d=o.allChildrenCount===1&&o.childrenAfterGroup?.length===1&&iy(this.gos,o);if(!l&&!c&&(t.skipRowGroups||d||a)||t.onlySelected&&!o.isSelected()||t.skipPinnedTop&&o.rowPinned==="top"||t.skipPinnedBottom&&o.rowPinned==="bottom"||o.stub||o.level===-1&&!l&&!c||i(we(this.gos,{node:o})))return;const p=e.onNewBodyRow(o);if(s.forEach((f,C)=>{p.onColumn(f,C,o)}),t.getCustomContentBelowRow){const f=t.getCustomContentBelowRow(we(this.gos,{node:o}));f&&e.addCustomContent(f)}}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 o=new em,{colGroupSvc:i}=this.beans,n=i?i.createColumnGroups({columns:t,idCreator:o,pinned:null,isStandaloneStructure:!0}):t;this.recursivelyAddHeaderGroups(n,s,e.processGroupHeaderCallback)}return s}}exportHeaders(e,t){return s=>{if(!e.skipColumnHeaders){const o=s.onNewHeaderRow();t.forEach((i,n)=>{o.onColumn(i,n,void 0)})}return s}}processPinnedTopRows(e,t){return s=>{const o=this.processRow.bind(this,s,e,t);return e.rowPositions?e.rowPositions.filter(i=>i.rowPinned==="top").sort((i,n)=>i.rowIndex-n.rowIndex).map(i=>this.pinnedRowModel?.getPinnedTopRow(i.rowIndex)).forEach(o):this.pinnedRowModel?.isManual()||this.pinnedRowModel?.forEachPinnedRow("top",o),s}}processRows(e,t){return s=>{const o=this.rowModel,i=Qe(this.gos),n=_o(this.gos),r=!i&&e.onlySelected,a=this.processRow.bind(this,s,e,t),{exportedRows:l="filteredAndSorted"}=e;if(e.rowPositions)e.rowPositions.filter(c=>c.rowPinned==null).sort((c,d)=>c.rowIndex-d.rowIndex).map(c=>o.getRow(c.rowIndex)).forEach(a);else if(this.colModel.isPivotMode())i?o.forEachPivotNode(a,!0,l==="filteredAndSorted"):n?o.forEachNodeAfterFilterAndSort(a,!0):o.forEachNode(a);else if(e.onlySelectedAllPages||r){const c=this.beans.selectionSvc?.getSelectedNodes()??[];this.replicateSortedOrder(c),c.forEach(a)}else l==="all"?o.forEachNode(a):i||n?o.forEachNodeAfterFilterAndSort(a,!0):o.forEachNode(a);return s}}replicateSortedOrder(e){const{sortSvc:t,rowNodeSorter:s}=this.beans;if(!t||!s)return;const o=t.getSortOptions(),i=(n,r)=>n.rowIndex!=null&&r.rowIndex!=null?n.rowIndex-r.rowIndex:n.level===r.level?n.parent?.id===r.parent?.id?s.compareRowNodes(o,{rowNode:n,currentPos:n.rowIndex??-1},{rowNode:r,currentPos:r.rowIndex??-1}):i(n.parent,r.parent):n.level>r.level?i(n.parent,r):i(n,r.parent);e.sort(i)}processPinnedBottomRows(e,t){return s=>{const o=this.processRow.bind(this,s,e,t);return e.rowPositions?e.rowPositions.filter(i=>i.rowPinned==="bottom").sort((i,n)=>i.rowIndex-n.rowIndex).map(i=>this.pinnedRowModel?.getPinnedBottomRow(i.rowIndex)).forEach(o):this.pinnedRowModel?.isManual()||this.pinnedRowModel?.forEachPinnedRow("bottom",o),s}}getColumnsToExport(e){const{allColumns:t=!1,skipRowGroups:s=!1,exportRowNumbers:o=!1,columnKeys:i}=e,{colModel:n,gos:r,visibleCols:a}=this,l=n.isPivotMode(),c=h=>zs(h)?!1:!Ls(h)||o;if(i?.length)return n.getColsForKeys(i).filter(c);const d=r.get("treeData");let u=[];return t&&!l?u=n.getCols():u=a.allCols,u=u.filter(h=>c(h)&&(s&&!d?!bu(h):!0)),u}recursivelyAddHeaderGroups(e,t,s){const o=[];for(const i of e){const n=i;if(n.getChildren)for(const r of n.getChildren()??[])o.push(r)}e.length>0&&Je(e[0])&&this.doAddHeaderHeader(t,e,s),o&&o.length>0&&this.recursivelyAddHeaderGroups(o,t,s)}doAddHeaderHeader(e,t,s){const o=e.onNewHeaderGroupingRow();let i=0;for(const n of t){const r=n;let a;s?a=s(we(this.gos,{columnGroup:r})):a=this.beans.colNames.getDisplayNameForColumnGroup(r,"header");const c=(r.isExpandable()?r.getLeafColumns():[]).reduce((d,u,h,p)=>{let f=ze(d);return u.getColumnGroupShow()==="open"?(!f||f[1]!=null)&&(f=[h],d.push(f)):f&&f[1]==null&&(f[1]=h-1),h===p.length-1&&f&&f[1]==null&&(f[1]=h),d},[]);o.onColumn(r,a||"",i++,r.getLeafColumns().length-1,c)}}},WI={moduleName:"SharedExport",version:Y,beans:[zI]},ip=`\r
|
|
61
|
-
`,_I=class extends C4{constructor(e){super(e),this.config=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,ip),this.result+=e):e.forEach(t=>{this.beginNewLine(),t.forEach((s,o)=>{o!==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,o){s!=0&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(t),this.appendEmptyCells(o)}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 o=this.extractRowCellValue(e,t,t,"csv",s);this.result+=this.putInQuotes(o.valueFormatted??o.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():(z(53),t=""),'"'+t.replace(/"/g,'""')+'"'}parse(){return this.result}beginNewLine(){this.isFirstLine||(this.result+=ip),this.isFirstLine=!1}},jI=class extends m4{constructor(){super(...arguments),this.beanName="csvCreator"}wireBeans(e){this.colModel=e.colModel,this.colNames=e.colNames,this.rowGroupColsSvc=e.rowGroupColsSvc,this.valueSvc=e.valueSvc}getMergedParams(e){const t=this.gos.get("defaultCsvExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){z(51);return}const t=this.getMergedParams(e),s=this.getData(t),o=new Blob(["\uFEFF",s],{type:"text/plain"}),i=typeof t.fileName=="function"?t.fileName(we(this.gos,{})):t.fileName;v4(this.getFileName(i),o)}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{colModel:t,colNames:s,rowGroupColsSvc:o,valueSvc:i,gos:n}=this,{processCellCallback:r,processHeaderCallback:a,processGroupHeaderCallback:l,processRowGroupCallback:c,suppressQuotes:d,columnSeparator:u}=e;return new _I({colModel:t,colNames:s,valueSvc:i,gos:n,processCellCallback:r||void 0,processHeaderCallback:a||void 0,processGroupHeaderCallback:l||void 0,processRowGroupCallback:c||void 0,suppressQuotes:d||!1,columnSeparator:u||",",rowGroupColsSvc:o})}isExportSuppressed(){return this.gos.get("suppressCsvExport")}};function UI(e,t){return e.csvCreator?.getDataAsCsv(t)}function $I(e,t){e.csvCreator?.exportDataAsCsv(t)}var qI={moduleName:"CsvExport",version:Y,beans:[jI],apiFunctions:{getDataAsCsv:UI,exportDataAsCsv:$I},dependsOn:[WI]},KI=class extends O{constructor(e,t,s){super(),this.id=e,this.parentCache=t,this.params=s,this.state="needsLoading",this.version=0,this.startRow=e*s.blockSize,this.endRow=this.startRow+s.blockSize}load(){this.state="loading",this.loadFromDatasource()}setStateWaitingToLoad(){this.version++,this.state="needsLoading"}pageLoadFailed(e){this.isRequestMostRecentAndLive(e)&&(this.state="failed"),this.dispatchLocalEvent({type:"loadComplete"})}pageLoaded(e,t,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.dispatchLocalEvent({type:"loadComplete"}),this.isRequestMostRecentAndLive(e)&&(this.state="loaded",this.processServerResult(t))}postConstruct(){this.rowNodes=[];const{params:{blockSize:e,rowHeight:t},startRow:s,beans:o,rowNodes:i}=this;for(let n=0;n<e;n++){const r=s+n,a=new io(o);a.setRowHeight(t),a.uiLevel=0,a.setRowIndex(r),a.setRowTop(t*r),i.push(a)}}getBlockStateJson(){const{id:e,startRow:t,endRow:s,state:o}=this;return{id:""+e,state:{blockNumber:e,startRow:t,endRow:s,pageStatus:o}}}setDataAndId(e,t,s){X(t)?e.setDataAndId(t,s.toString()):e.setDataAndId(void 0,void 0)}loadFromDatasource(){const e=this.createLoadParams();if($e(this.params.datasource.getRows)){z(90);return}window.setTimeout(()=>{this.params.datasource.getRows(e)},0)}createLoadParams(){const{startRow:e,endRow:t,version:s,params:{sortModel:o,filterModel:i},gos:n}=this;return{startRow:e,endRow:t,successCallback:this.pageLoaded.bind(this,s),failCallback:this.pageLoadFailed.bind(this,s),sortModel:o,filterModel:i,context:we(n,{}).context}}forEachNode(e,t,s){this.rowNodes.forEach((o,i)=>{this.startRow+i<s&&e(o,t.value++)})}getRow(e,t=!1){t||(this.lastAccessed=this.params.lastAccessedSequence.value++);const s=e-this.startRow;return this.rowNodes[s]}processServerResult(e){const{rowNodes:t,beans:s}=this;t.forEach((i,n)=>{const r=e.rowData?e.rowData[n]:void 0;!i.id&&i.alreadyRendered&&r&&(t[n]=new io(s),t[n].setRowIndex(i.rowIndex),t[n].setRowTop(i.rowTop),t[n].setRowHeight(i.rowHeight),i.clearRowTopAndRowIndex()),this.setDataAndId(t[n],r,this.startRow+n)});const o=e.rowCount!=null&&e.rowCount>=0?e.rowCount:void 0;this.parentCache.pageLoaded(this,o)}destroy(){for(const e of this.rowNodes)e.clearRowTopAndRowIndex();super.destroy()}},YI=2,ZI=class extends O{constructor(e){super(),this.params=e,this.lastRowIndexKnown=!1,this.blocks={},this.blockCount=0,this.rowCount=e.initialRowCount}getRow(e,t=!1){const s=Math.floor(e/this.params.blockSize);let o=this.blocks[s];if(!o){if(t)return;o=this.createBlock(s)}return o.getRow(e)}createBlock(e){const t=this.params,s=this.createBean(new KI(e,this,t));return this.blocks[s.id]=s,this.blockCount++,this.purgeBlocksIfNeeded(s),t.rowNodeBlockLoader.addBlock(s),s}refreshCache(){if(this.blockCount==0){this.purgeCache();return}for(const t of this.getBlocksInOrder())t.setStateWaitingToLoad();this.params.rowNodeBlockLoader.checkBlockToLoad()}destroy(){for(const e of this.getBlocksInOrder())this.destroyBlock(e);super.destroy()}getRowCount(){return this.rowCount}isLastRowIndexKnown(){return this.lastRowIndexKnown}pageLoaded(e,t){this.isAlive()&&(Oo(this.gos,`InfiniteCache - onPageLoaded: page = ${e.id}, lastRow = ${t}`),this.checkRowCount(e,t),this.onCacheUpdated())}purgeBlocksIfNeeded(e){const t=this.getBlocksInOrder().filter(r=>r!=e),s=(r,a)=>a.lastAccessed-r.lastAccessed;t.sort(s);const o=this.params.maxBlocksInCache>0,i=o?this.params.maxBlocksInCache-1:null,n=YI-1;t.forEach((r,a)=>{const l=r.state==="needsLoading"&&a>=n,c=o?a>=i:!1;if(l||c){if(this.isBlockCurrentlyDisplayed(r)||this.isBlockFocused(r))return;this.removeBlockFromCache(r)}})}isBlockFocused(e){const t=this.beans.focusSvc.getFocusCellToUseAfterRefresh();if(!t||t.rowPinned!=null)return!1;const{startRow:s,endRow:o}=e;return t.rowIndex>=s&&t.rowIndex<o}isBlockCurrentlyDisplayed(e){const{startRow:t,endRow:s}=e;return this.beans.rowRenderer.isRangeInRenderedViewport(t,s-1)}removeBlockFromCache(e){e&&this.destroyBlock(e)}checkRowCount(e,t){if(typeof t=="number"&&t>=0)this.rowCount=t,this.lastRowIndexKnown=!0;else if(!this.lastRowIndexKnown){const{blockSize:s,overflowSize:o}=this.params,n=(e.id+1)*s+o;this.rowCount<n&&(this.rowCount=n)}}setRowCount(e,t){this.rowCount=e,X(t)&&(this.lastRowIndexKnown=t),this.lastRowIndexKnown||this.rowCount%this.params.blockSize===0&&this.rowCount++,this.onCacheUpdated()}forEachNodeDeep(e){const t={value:0};for(const s of this.getBlocksInOrder())s.forEachNode(e,t,this.rowCount)}getBlocksInOrder(){const e=(s,o)=>s.id-o.id;return Object.values(this.blocks).sort(e)}destroyBlock(e){delete this.blocks[e.id],this.destroyBean(e),this.blockCount--,this.params.rowNodeBlockLoader.removeBlock(e)}onCacheUpdated(){this.isAlive()&&(this.destroyAllBlocksPastVirtualRowCount(),this.eventSvc.dispatchEvent({type:"storeUpdated"}))}destroyAllBlocksPastVirtualRowCount(){const e=[];for(const t of this.getBlocksInOrder())t.id*this.params.blockSize>=this.rowCount&&e.push(t);if(e.length>0)for(const t of e)this.destroyBlock(t)}purgeCache(){for(const e of this.getBlocksInOrder())this.removeBlockFromCache(e);this.lastRowIndexKnown=!1,this.rowCount===0&&(this.rowCount=this.params.initialRowCount),this.onCacheUpdated()}getRowNodesInRange(e,t){const s=[];let o=-1,i=!1;const n={value:0};let r=!1;for(const l of this.getBlocksInOrder())if(!r){if(i&&o+1!==l.id){r=!0;continue}o=l.id,l.forEachNode(c=>{const d=c===e||c===t;(i||d)&&s.push(c),d&&(i=!i)},n,this.rowCount)}return r||i?[]:s}},XI=class extends O{constructor(){super(...arguments),this.beanName="rowModel",this.rootNode=null}getRowBounds(e){return{rowHeight:this.rowHeight,rowTop:this.rowHeight*e}}ensureRowHeightsValid(){return!1}postConstruct(){if(this.gos.get("rowModelType")!=="infinite")return;const e=this.beans,t=new io(e);this.rootNode=t,t.level=-1,this.rowHeight=Do(e),this.addEventListeners(),this.addDestroyFunc(()=>this.destroyCache())}start(){this.setDatasource(this.gos.get("datasource"))}destroy(){this.destroyDatasource(),super.destroy(),this.rootNode=null}destroyDatasource(){this.datasource&&(this.destroyBean(this.datasource),this.beans.rowRenderer.datasourceChanged(),this.datasource=null)}addEventListeners(){this.addManagedEventListeners({filterChanged:this.reset.bind(this),sortChanged:this.reset.bind(this),newColumnsLoaded:this.onColumnEverything.bind(this),storeUpdated:this.dispatchModelUpdatedEvent.bind(this)}),this.addManagedPropertyListener("datasource",()=>this.setDatasource(this.gos.get("datasource"))),this.addManagedPropertyListener("cacheBlockSize",()=>this.resetCache()),this.addManagedPropertyListener("rowHeight",()=>{this.rowHeight=Do(this.beans),this.cacheParams.rowHeight=this.rowHeight,this.updateRowHeights()})}onColumnEverything(){let e;this.cacheParams?e=!$n(this.cacheParams.sortModel,this.beans.sortSvc?.getSortModel()??[]):e=!0,e&&this.reset()}getType(){return"infinite"}setDatasource(e){this.destroyDatasource(),this.datasource=e,e&&this.reset()}isEmpty(){return!this.infiniteCache}isRowsToRender(){return!!this.infiniteCache}getNodesInRangeForSelection(e,t){return this.infiniteCache?.getRowNodesInRange(e,t)??[]}reset(){if(!this.datasource)return;Oi(this.gos)!=null||this.beans.selectionSvc?.reset("rowDataChanged"),this.resetCache()}dispatchModelUpdatedEvent(){this.eventSvc.dispatchEvent({type:"modelUpdated",newPage:!1,newPageSize:!1,newData:!1,keepRenderedRows:!0,animate:!1})}resetCache(){this.destroyCache();const e=this.beans,{filterManager:t,sortSvc:s,rowNodeBlockLoader:o,eventSvc:i,gos:n}=e;this.cacheParams={datasource:this.datasource,filterModel:t?.getFilterModel()??{},sortModel:s?.getSortModel()??[],rowNodeBlockLoader:o,initialRowCount:n.get("infiniteInitialRowCount"),maxBlocksInCache:n.get("maxBlocksInCache"),rowHeight:Do(e),overflowSize:n.get("cacheOverflowSize"),blockSize:n.get("cacheBlockSize"),lastAccessedSequence:{value:0}},this.infiniteCache=this.createBean(new ZI(this.cacheParams)),i.dispatchEventOnce({type:"rowCountReady"}),this.dispatchModelUpdatedEvent()}updateRowHeights(){this.forEachNode(e=>{e.setRowHeight(this.rowHeight),e.setRowTop(this.rowHeight*e.rowIndex)}),this.dispatchModelUpdatedEvent()}destroyCache(){this.infiniteCache=this.destroyBean(this.infiniteCache)}getRow(e){const t=this.infiniteCache;if(t&&!(e>=t.getRowCount()))return t.getRow(e)}getRowNode(e){let t;return this.forEachNode(s=>{s.id===e&&(t=s)}),t}forEachNode(e){this.infiniteCache?.forEachNodeDeep(e)}getTopLevelRowCount(){return this.getRowCount()}getTopLevelRowDisplayedIndex(e){return e}getRowIndexAtPixel(e){if(this.rowHeight!==0){const t=Math.floor(e/this.rowHeight),s=this.getRowCount()-1;return t>s?s:t}return 0}getRowCount(){return this.infiniteCache?this.infiniteCache.getRowCount():0}isRowPresent(e){return!!this.getRowNode(e.id)}refreshCache(){this.infiniteCache?.refreshCache()}purgeCache(){this.infiniteCache?.purgeCache()}isLastRowIndexKnown(){return this.infiniteCache?.isLastRowIndexKnown()??!1}setRowCount(e,t){this.infiniteCache?.setRowCount(e,t)}resetRowHeights(){}onRowHeightChanged(){}};function QI(e){cl(e)?.refreshCache()}function JI(e){cl(e)?.purgeCache()}function e6(e){return cl(e)?.getRowCount()}var t6=class extends O{constructor(){super(...arguments),this.beanName="rowNodeBlockLoader",this.activeBlockLoadsCount=0,this.blocks=[],this.active=!0}postConstruct(){this.maxConcurrentRequests=ny(this.gos);const e=this.gos.get("blockLoadDebounceMillis");e&&e>0&&(this.checkBlockToLoadDebounce=at(this,this.performCheckBlocksToLoad.bind(this),e))}addBlock(e){this.blocks.push(e),e.addEventListener("loadComplete",this.loadComplete.bind(this)),this.checkBlockToLoad()}removeBlock(e){is(this.blocks,e)}destroy(){super.destroy(),this.active=!1}loadComplete(){this.activeBlockLoadsCount--,this.checkBlockToLoad()}checkBlockToLoad(){this.checkBlockToLoadDebounce?this.checkBlockToLoadDebounce():this.performCheckBlocksToLoad()}performCheckBlocksToLoad(){if(!this.active)return;if(this.printCacheStatus(),this.maxConcurrentRequests!=null&&this.activeBlockLoadsCount>=this.maxConcurrentRequests){Oo(this.gos,"RowNodeBlockLoader - checkBlockToLoad: max loads exceeded");return}const e=this.maxConcurrentRequests!=null?this.maxConcurrentRequests-this.activeBlockLoadsCount:1,t=this.blocks.filter(s=>s.state==="needsLoading").slice(0,e);this.activeBlockLoadsCount+=t.length;for(const s of t)s.load();this.printCacheStatus()}getBlockState(){const e={};return this.blocks.forEach(t=>{const{id:s,state:o}=t.getBlockStateJson();e[s]=o}),e}printCacheStatus(){Oo(this.gos,`RowNodeBlockLoader - printCacheStatus: activePageLoadsCount = ${this.activeBlockLoadsCount}, blocks = ${JSON.stringify(this.getBlockState())}`)}},s6={moduleName:"InfiniteRowModelCore",version:Y,rowModels:["infinite"],beans:[XI,t6]},o6={moduleName:"InfiniteRowModel",version:Y,apiFunctions:{refreshInfiniteCache:QI,purgeInfiniteCache:JI,getInfiniteRowCount:e6},dependsOn:[s6,fI]},i6="↑",n6="↓",r6={tag:"span",children:[{tag:"span",ref:"eDelta",cls:"ag-value-change-delta"},{tag:"span",ref:"eValue",cls:"ag-value-change-value"}]},a6=class extends Xe{constructor(){super(r6),this.eValue=Ce,this.eDelta=Ce,this.refreshCount=0}init(e){this.refresh(e,!0)}showDelta(e,t){const s=Math.abs(t),o=e.formatValue(s),i=X(o)?o:s,n=t>=0,r=this.eDelta;n?r.textContent=i6+i:r.textContent=n6+i,r.classList.toggle("ag-value-change-delta-up",n),r.classList.toggle("ag-value-change-delta-down",!n)}setTimerToRemoveDelta(){this.refreshCount++;const e=this.refreshCount;this.beans.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.hideDeltaValue()},2e3)})}hideDeltaValue(){this.eValue.classList.remove("ag-value-change-value-highlight"),Tt(this.eDelta)}refresh(e,t=!1){const{value:s,valueFormatted:o}=e,{eValue:i,lastValue:n,beans:r}=this;if(s===n||(X(o)?i.textContent=o:X(s)?i.textContent=s:Tt(i),r.filterManager?.isSuppressFlashingCellsBecauseFiltering()))return!1;const a=s&&typeof s=="object"&&"toNumber"in s?s.toNumber():s,l=n&&typeof n=="object"&&"toNumber"in n?n.toNumber():n;if(a===l)return!1;if(typeof a=="number"&&typeof l=="number"){const c=a-l;this.showDelta(e,c)}return n&&i.classList.add("ag-value-change-value-highlight"),t||this.setTimerToRemoveDelta(),this.lastValue=s,!0}},l6=".ag-value-slide-out{opacity:1}:where(.ag-ltr) .ag-value-slide-out{margin-right:5px;transition:opacity 3s,margin-right 3s}:where(.ag-rtl) .ag-value-slide-out{margin-left:5px;transition:opacity 3s,margin-left 3s}:where(.ag-ltr,.ag-rtl) .ag-value-slide-out{transition-timing-function:linear}.ag-value-slide-out-end{opacity:0}:where(.ag-ltr) .ag-value-slide-out-end{margin-right:10px}:where(.ag-rtl) .ag-value-slide-out-end{margin-left:10px}",c6={tag:"span",children:[{tag:"span",ref:"eCurrent",cls:"ag-value-slide-current"}]},d6=class extends Xe{constructor(){super(c6),this.eCurrent=Ce,this.refreshCount=0,this.registerCSS(l6)}init(e){this.refresh(e,!0)}addSlideAnimation(){this.refreshCount++;const e=this.refreshCount;this.ePrevious?.remove();const{beans:t,eCurrent:s}=this,o=xt({tag:"span",cls:"ag-value-slide-previous ag-value-slide-out"});this.ePrevious=o,o.textContent=s.textContent,this.getGui().insertBefore(o,s),t.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.ePrevious.classList.add("ag-value-slide-out-end")},50),window.setTimeout(()=>{e===this.refreshCount&&(this.ePrevious?.remove(),this.ePrevious=null)},3e3)})}refresh(e,t=!1){let s=e.value;if($e(s)&&(s=""),s===this.lastValue||this.beans.filterManager?.isSuppressFlashingCellsBecauseFiltering())return!1;t||this.addSlideAnimation(),this.lastValue=s;const o=this.eCurrent;return X(e.valueFormatted)?o.textContent=e.valueFormatted:X(e.value)?o.textContent=s:Tt(o),!0}},u6=class extends O{constructor(){super(...arguments),this.beanName="cellFlashSvc",this.nextAnimationTime=null,this.nextAnimationCycle=null,this.animations={highlight:new Map,"data-changed":new Map}}animateCell(e,t,s=this.beans.gos.get("cellFlashDuration"),o=this.beans.gos.get("cellFadeDuration")){const i=this.animations[t];i.delete(e);const n=Date.now(),r=n+s,a=n+s+o,l={phase:"flash",flashEndTime:r,fadeEndTime:a};i.set(e,l);const c=`ag-cell-${t}`,d=`${c}-animation`,{comp:u,eGui:{style:h}}=e;u.toggleCss(c,!0),u.toggleCss(d,!1),h.removeProperty("transition"),h.removeProperty("transition-delay"),this.nextAnimationTime&&r+15<this.nextAnimationTime&&(clearTimeout(this.nextAnimationCycle),this.nextAnimationCycle=null,this.nextAnimationTime=null),this.nextAnimationCycle||(this.beans.frameworkOverrides.wrapIncoming(()=>{this.nextAnimationCycle=setTimeout(this.advanceAnimations.bind(this),s)}),this.nextAnimationTime=r)}advanceAnimations(){const e=Date.now();let t=null;for(const s of Object.keys(this.animations)){const o=this.animations[s],i=`ag-cell-${s}`,n=`${i}-animation`;for(const[r,a]of o){if(!r.isAlive()||!r.comp){o.delete(r);continue}const{phase:l,flashEndTime:c,fadeEndTime:d}=a,u=l==="flash"?c:d;if(!(e+15>=u)){t=Math.min(u,t??1/0);continue}const{comp:p,eGui:{style:f}}=r;switch(l){case"flash":p.toggleCss(i,!1),p.toggleCss(n,!0),f.transition=`background-color ${d-c}ms`,f.transitionDelay=`${c-e}ms`,t=Math.min(d,t??1/0),a.phase="fade";break;case"fade":p.toggleCss(i,!1),p.toggleCss(n,!1),f.removeProperty("transition"),f.removeProperty("transition-delay"),o.delete(r);break}}}t==null?(this.nextAnimationTime=null,this.nextAnimationCycle=null):t&&(this.nextAnimationCycle=setTimeout(this.advanceAnimations.bind(this),t-e),this.nextAnimationTime=t)}onFlashCells(e,t){if(!e.comp)return;const s=sE(e.cellPosition);t.cells[s]&&this.animateCell(e,"highlight")}flashCell(e,t){this.animateCell(e,"data-changed",t?.flashDuration,t?.fadeDuration)}destroy(){for(const e of Object.keys(this.animations))this.animations[e].clear()}};function h6(e,t={}){const{cellFlashSvc:s}=e;s&&e.frameworkOverrides.wrapIncoming(()=>{for(const o of e.rowRenderer.getCellCtrls(t.rowNodes,t.columns))s.flashCell(o,t)})}var g6={moduleName:"HighlightChanges",version:Y,beans:[u6],userComponents:{agAnimateShowChangeCellRenderer:a6,agAnimateSlideCellRenderer:d6},apiFunctions:{flashCells:h6}};function p6(e){return e.stateSvc?.getState()??{}}function f6(e,t,s){return e.stateSvc?.setState(t,s)}function np(e){return e={...e},e.version||(e.version="32.1.0"),e.version==="32.1.0"&&(e=m6(e)),e.version=Y,e}function m6(e){return e.cellSelection=C6(e,"rangeSelection"),e}function C6(e,t){if(e&&typeof e=="object")return e[t]}var v6=class extends O{constructor(){super(...arguments),this.beanName="stateSvc",this.updateRowGroupExpansionStateTimer=0,this.suppressEvents=!0,this.queuedUpdateSources=new Set,this.dispatchStateUpdateEventDebounced=at(this,()=>this.dispatchQueuedStateUpdateEvents(),0),this.onRowGroupOpenedDebounced=at(this,()=>{this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(this.updateCachedState("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),this.updateCachedState("rowGroupExpansion",void 0)):(this.updateCachedState("rowGroupExpansion",this.getRowGroupExpansionState()),this.updateCachedState("ssrmRowGroupExpansion",void 0))},0),this.onRowSelectedDebounced=at(this,()=>{this.staleStateKeys.delete("rowSelection"),this.updateCachedState("rowSelection",this.getRowSelectionState())},0),this.staleStateKeys=new Set}postConstruct(){const{gos:e,ctrlsSvc:t,colDelayRenderSvc:s}=this.beans;this.isClientSideRowModel=Qe(e);const o=np(e.get("initialState")??{}),i=o.partialColumnState;delete o.partialColumnState,this.cachedState=o;const n=this.suppressEventsAndDispatchInitEvent.bind(this);t.whenReady(this,()=>n(()=>this.setupStateOnGridReady(o))),(o.columnOrder||o.columnVisibility||o.columnSizing||o.columnPinning||o.columnGroup)&&s?.hideColumns("columnState");const[r,a,l]=this.addManagedEventListeners({newColumnsLoaded:({source:c})=>{c==="gridInitializing"&&(r(),n(()=>{this.setupStateOnColumnsInitialised(o,!!i),s?.revealColumns("columnState")}))},rowCountReady:()=>{a?.(),n(()=>this.setupStateOnRowCountReady(o))},firstDataRendered:()=>{l?.(),n(()=>this.setupStateOnFirstDataRendered(o))}})}destroy(){super.destroy(),clearTimeout(this.updateRowGroupExpansionStateTimer),this.queuedUpdateSources.clear()}getState(){return this.staleStateKeys.size&&this.refreshStaleState(),this.cachedState}setState(e,t){const s=np(e);delete s.partialColumnState,this.cachedState=s,this.startSuppressEvents();const o="api",i=t?new Set(t):void 0;this.setGridReadyState(s,o,i),this.setColumnsInitialisedState(s,o,!!i,i),this.setRowCountState(s,o,i),setTimeout(()=>{this.isAlive()&&this.setFirstDataRenderedState(s,o,i),this.stopSuppressEvents(o)})}setGridReadyState(e,t,s){t==="api"&&!s?.has("sideBar")&&this.beans.sideBar?.comp?.setState(e.sideBar),this.updateCachedState("sideBar",this.getSideBarState())}setupStateOnGridReady(e){this.setGridReadyState(e,"gridInitializing");const t=()=>this.updateCachedState("sideBar",this.getSideBarState());this.addManagedEventListeners({toolPanelVisibleChanged:t,sideBarUpdated:t})}updateColumnAndGroupState(){this.updateColumnState(["aggregation","columnOrder","columnPinning","columnSizing","columnVisibility","pivot","rowGroup","sort"]),this.updateCachedState("columnGroup",this.getColumnGroupState())}setColumnsInitialisedState(e,t,s,o){this.setColumnState(e,t,s,o),this.setColumnGroupState(e,t,o),this.updateColumnAndGroupState()}setupStateOnColumnsInitialised(e,t){this.setColumnsInitialisedState(e,"gridInitializing",t);const s=o=>()=>this.updateColumnState([o]);this.addManagedEventListeners({columnValueChanged:s("aggregation"),columnMoved:s("columnOrder"),columnPinned:s("columnPinning"),columnResized:s("columnSizing"),columnVisible:s("columnVisibility"),columnPivotChanged:s("pivot"),columnPivotModeChanged:s("pivot"),columnRowGroupChanged:s("rowGroup"),sortChanged:s("sort"),newColumnsLoaded:this.updateColumnAndGroupState.bind(this),columnGroupOpened:()=>this.updateCachedState("columnGroup",this.getColumnGroupState())})}setRowCountState(e,t,s){const{filter:o,rowGroupExpansion:i,ssrmRowGroupExpansion:n,rowSelection:r,pagination:a}=e,l=(d,u)=>!s?.has(d)&&(u||t==="api");l("filter",o)&&this.setFilterState(o),l("rowGroupExpansion",i)&&this.setRowGroupExpansionState(n,i,t),l("rowSelection",r)&&this.setRowSelectionState(r,t),l("pagination",a)&&this.setPaginationState(a,t);const c=this.updateCachedState.bind(this);c("filter",this.getFilterState()),this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(c("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),c("rowGroupExpansion",void 0)):(c("rowGroupExpansion",this.getRowGroupExpansionState()),c("ssrmRowGroupExpansion",void 0)),c("rowSelection",this.getRowSelectionState()),c("pagination",this.getPaginationState())}setupStateOnRowCountReady(e){this.setRowCountState(e,"gridInitializing");const t=this.updateCachedState.bind(this),s=()=>{this.updateRowGroupExpansionStateTimer=0,this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(t("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),t("rowGroupExpansion",void 0)):(t("rowGroupExpansion",this.getRowGroupExpansionState()),t("ssrmRowGroupExpansion",void 0))},o=()=>t("filter",this.getFilterState()),{gos:i,colFilter:n}=this.beans;this.addManagedEventListeners({filterChanged:o,rowExpansionStateChanged:this.onRowGroupOpenedDebounced,expandOrCollapseAll:s,columnRowGroupChanged:s,rowDataUpdated:()=>{(i.get("groupDefaultExpanded")!==0||i.get("isGroupOpenByDefault"))&&(this.updateRowGroupExpansionStateTimer||(this.updateRowGroupExpansionStateTimer=setTimeout(s)))},selectionChanged:()=>{this.staleStateKeys.add("rowSelection"),this.onRowSelectedDebounced()},paginationChanged:r=>{(r.newPage||r.newPageSize)&&t("pagination",this.getPaginationState())}}),n&&this.addManagedListeners(n,{filterStateChanged:o})}setFirstDataRenderedState(e,t,s){const{scroll:o,cellSelection:i,focusedCell:n,columnOrder:r,rowPinning:a}=e,l=(u,h)=>!s?.has(u)&&(h||t==="api");l("focusedCell",n)&&this.setFocusedCellState(n),l("cellSelection",i)&&this.setCellSelectionState(i),l("scroll",o)&&this.setScrollState(o),l("rowPinning",a)&&this.setRowPinningState(a),this.setColumnPivotState(!!r?.orderedColIds,t);const c=this.updateCachedState.bind(this);c("sideBar",this.getSideBarState()),c("focusedCell",this.getFocusedCellState());const d=this.getRangeSelectionState();c("rangeSelection",d),c("cellSelection",d),c("scroll",this.getScrollState())}setupStateOnFirstDataRendered(e){this.setFirstDataRenderedState(e,"gridInitializing");const t=this.updateCachedState.bind(this),s=()=>t("focusedCell",this.getFocusedCellState());this.addManagedEventListeners({cellFocused:s,cellFocusCleared:s,cellSelectionChanged:o=>{if(o.finished){const i=this.getRangeSelectionState();t("rangeSelection",i),t("cellSelection",i)}},bodyScrollEnd:()=>t("scroll",this.getScrollState()),pinnedRowsChanged:()=>t("rowPinning",this.getRowPinningState())})}getColumnState(){const e=this.beans;return h4(ka(e),e.colModel.isPivotMode())}setColumnState(e,t,s,o){const{sort:i,rowGroup:n,aggregation:r,pivot:a,columnPinning:l,columnVisibility:c,columnSizing:d,columnOrder:u}=e;let h=!1;const p=(T,M)=>{const k=!o?.has(T)&&!!(M||t==="api");return h||(h=k),k},f={},C=T=>{let M=f[T];return M||(M={colId:T},f[T]=M,M)},v={},w=p("sort",i);w&&i?.sortModel.forEach(({colId:T,sort:M},k)=>{const N=C(T);N.sort=M,N.sortIndex=k}),(w||!s)&&(v.sort=null,v.sortIndex=null);const b=p("rowGroup",n);b&&n?.groupColIds.forEach((T,M)=>{const k=C(T);k.rowGroup=!0,k.rowGroupIndex=M}),(b||!s)&&(v.rowGroup=null,v.rowGroupIndex=null);const S=p("aggregation",r);S&&r?.aggregationModel.forEach(({colId:T,aggFunc:M})=>{C(T).aggFunc=M}),(S||!s)&&(v.aggFunc=null);const y=p("pivot",a);y&&(a?.pivotColIds.forEach((T,M)=>{const k=C(T);k.pivot=!0,k.pivotIndex=M}),this.gos.updateGridOptions({options:{pivotMode:!!a?.pivotMode},source:t})),(y||!s)&&(v.pivot=null,v.pivotIndex=null);const x=p("columnPinning",l);if(x){for(const T of l?.leftColIds??[])C(T).pinned="left";for(const T of l?.rightColIds??[])C(T).pinned="right"}(x||!s)&&(v.pinned=null);const F=p("columnVisibility",c);if(F)for(const T of c?.hiddenColIds??[])C(T).hide=!0;(F||!s)&&(v.hide=null);const R=p("columnSizing",d);if(R)for(const{colId:T,flex:M,width:k}of d?.columnSizingModel??[]){const N=C(T);N.flex=M??null,N.width=k}(R||!s)&&(v.flex=null);const E=u?.orderedColIds,D=!!E?.length&&!o?.has("columnOrder"),P=D?E.map(T=>C(T)):Object.values(f);(P.length||h)&&(this.columnStates=P,os(this.beans,{state:P,applyOrder:D,defaultState:v},t))}setColumnPivotState(e,t){const s=this.columnStates;this.columnStates=void 0;const o=this.columnGroupStates;this.columnGroupStates=void 0;const i=this.beans,{pivotResultCols:n,colGroupSvc:r}=i;if(n?.isPivotResultColsPresent()){if(s){const a=[];for(const l of s)n.getPivotResultCol(l.colId)&&a.push(l);os(i,{state:a,applyOrder:e},t)}o&&r?.setColumnGroupState(o,t)}}getColumnGroupState(){const e=this.beans.colGroupSvc;if(!e)return;const t=e.getColumnGroupState();return g4(t)}setColumnGroupState(e,t,s){const o=this.beans.colGroupSvc;if(!o||s?.has("columnGroup")||t!=="api"&&!Object.prototype.hasOwnProperty.call(e,"columnGroup"))return;const i=new Set(e.columnGroup?.openColumnGroupIds),r=o.getColumnGroupState().map(({groupId:a})=>{const l=i.has(a);return l&&i.delete(a),{groupId:a,open:l}});for(const a of i)r.push({groupId:a,open:!0});r.length&&(this.columnGroupStates=r),o.setColumnGroupState(r,t)}getFilterState(){const e=this.beans.filterManager;let t=e?.getFilterModel();t&&Object.keys(t).length===0&&(t=void 0);const s=e?.getFilterState(),o=e?.getAdvFilterModel()??void 0;return t||o||s?{filterModel:t,columnFilterState:s,advancedFilterModel:o}:void 0}setFilterState(e){const t=this.beans.filterManager,{filterModel:s,columnFilterState:o,advancedFilterModel:i}=e??{filterModel:null,columnFilterState:null,advancedFilterModel:null};(s!==void 0||o!==void 0)&&t?.setFilterState(s??null,o??null,"columnFilter"),i!==void 0&&t?.setAdvFilterModel(i??null,"advancedFilter")}getRangeSelectionState(){const e=this.beans.rangeSvc?.getCellRanges().map(t=>{const{id:s,type:o,startRow:i,endRow:n,columns:r,startColumn:a}=t;return{id:s,type:o,startRow:i,endRow:n,colIds:r.map(l=>l.getColId()),startColId:a.getColId()}});return e?.length?{cellRanges:e}:void 0}setCellSelectionState(e){const{gos:t,rangeSvc:s,colModel:o,visibleCols:i}=this.beans;if(!so(t)||!s)return;const n=[];for(const r of e?.cellRanges??[]){const a=[];for(const c of r.colIds){const d=o.getCol(c);d&&a.push(d)}if(!a.length)continue;let l=o.getCol(r.startColId);if(!l){const c=i.allCols,d=new Set(a);l=c.find(u=>d.has(u))}n.push({...r,columns:a,startColumn:l})}s.setCellRanges(n)}getScrollState(){if(!this.isClientSideRowModel)return;const e=this.beans.ctrlsSvc.getScrollFeature(),{left:t}=e?.getHScrollPosition()??{left:0},{top:s}=e?.getVScrollPosition()??{top:0};return s||t?{top:s,left:t}:void 0}setScrollState(e){if(!this.isClientSideRowModel)return;const{top:t,left:s}=e??{top:0,left:0},{frameworkOverrides:o,rowRenderer:i,animationFrameSvc:n,ctrlsSvc:r}=this.beans;o.wrapIncoming(()=>{r.get("center").setCenterViewportScrollLeft(s),r.getScrollFeature()?.setVerticalScrollPosition(t),i.redraw({afterScroll:!0}),n?.flushAllFrames()})}getSideBarState(){return this.beans.sideBar?.comp?.getState()}getFocusedCellState(){if(!this.isClientSideRowModel)return;const e=this.beans.focusSvc.getFocusedCell();if(e){const{column:t,rowIndex:s,rowPinned:o}=e;return{colId:t.getColId(),rowIndex:s,rowPinned:o}}}setFocusedCellState(e){if(!this.isClientSideRowModel)return;const{focusSvc:t,colModel:s}=this.beans;if(!e){t.clearFocusedCell();return}const{colId:o,rowIndex:i,rowPinned:n}=e;t.setFocusedCell({column:s.getCol(o),rowIndex:i,rowPinned:n,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}getPaginationState(){const{pagination:e,gos:t}=this.beans;if(!e)return;const s=e.getCurrentPage(),o=t.get("paginationAutoPageSize")?void 0:e.getPageSize();if(!(!s&&!o))return{page:s,pageSize:o}}setPaginationState(e,t){const{pagination:s,gos:o}=this.beans;if(!s)return;const{pageSize:i,page:n}=e??{page:0,pageSize:o.get("paginationPageSize")},r=t==="gridInitializing";i&&!o.get("paginationAutoPageSize")&&s.setPageSize(i,r?"initialState":"pageSizeSelector"),typeof n=="number"&&(r?s.setPage(n):s.goToPage(n))}getRowSelectionState(){const e=this.beans.selectionSvc;if(!e)return;const t=e.getSelectionState();return!t||!Array.isArray(t)&&(t.selectAll===!1||t.selectAllChildren===!1)&&!t?.toggledNodes?.length?void 0:t}setRowSelectionState(e,t){this.beans.selectionSvc?.setSelectionState(e,t,t==="api")}getRowGroupExpansionState(){const{expansionSvc:e}=this.beans;if(e)return e.getExpansionState()}getRowPinningState(){return this.beans.pinnedRowModel?.getPinnedState()}setRowPinningState(e){const t=this.beans.pinnedRowModel;e?t?.setPinnedState(e):t?.reset()}setRowGroupExpansionState(e,t,s){const o=this.beans.expansionSvc;if(!o)return;const i=t??{expandedRowGroupIds:[],collapsedRowGroupIds:[]};o.setExpansionState(i,s)}updateColumnState(e){const t=this.getColumnState();let s=!1;const o=this.cachedState;for(const i of Object.keys(t)){const n=t[i];$n(n,o[i])||(s=!0)}this.cachedState={...o,...t},s&&this.dispatchStateUpdateEvent(e)}updateCachedState(e,t){const s=this.cachedState[e];this.setCachedStateValue(e,t),$n(t,s)||this.dispatchStateUpdateEvent([e])}setCachedStateValue(e,t){this.cachedState={...this.cachedState,[e]:t}}refreshStaleState(){const e=this.staleStateKeys;for(const t of e)t==="rowSelection"&&this.setCachedStateValue(t,this.getRowSelectionState());e.clear()}dispatchStateUpdateEvent(e){if(!this.suppressEvents){for(const t of e)this.queuedUpdateSources.add(t);this.dispatchStateUpdateEventDebounced()}}dispatchQueuedStateUpdateEvents(){const e=this.queuedUpdateSources,t=Array.from(e);e.clear(),this.eventSvc.dispatchEvent({type:"stateUpdated",sources:t,state:this.cachedState})}startSuppressEvents(){this.suppressEvents=!0,this.beans.colAnimation?.setSuppressAnimation(!0)}stopSuppressEvents(e){setTimeout(()=>{this.suppressEvents=!1,this.queuedUpdateSources.clear(),this.isAlive()&&(this.beans.colAnimation?.setSuppressAnimation(!1),this.dispatchStateUpdateEvent([e]))})}suppressEventsAndDispatchInitEvent(e){this.startSuppressEvents(),e(),this.stopSuppressEvents("gridInitializing")}},w6={moduleName:"GridState",version:Y,beans:[v6],apiFunctions:{getState:p6,setState:f6}};function b6(e){return e.rowModel.isLastRowIndexKnown()}function S6(e){return e.pagination?.getPageSize()??100}function y6(e){return e.pagination?.getCurrentPage()??0}function x6(e){return e.pagination?.getTotalPages()??1}function R6(e){return e.pagination?e.pagination.getMasterRowCount():e.rowModel.getRowCount()}function F6(e){e.pagination?.goToNextPage()}function E6(e){e.pagination?.goToPreviousPage()}function D6(e){e.pagination?.goToFirstPage()}function P6(e){e.pagination?.goToLastPage()}function T6(e,t){e.pagination?.goToPage(t)}var M6=class extends O{constructor(){super(...arguments),this.beanName="paginationAutoPageSizeSvc"}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.centerRowsCtrl=e.center;const t=this.checkPageSize.bind(this);this.addManagedEventListeners({bodyHeightChanged:t,scrollVisibilityChanged:t}),this.addManagedPropertyListener("paginationAutoPageSize",this.onPaginationAutoSizeChanged.bind(this)),this.checkPageSize()})}notActive(){return!this.gos.get("paginationAutoPageSize")||this.centerRowsCtrl==null}onPaginationAutoSizeChanged(){this.notActive()?this.beans.pagination.unsetAutoCalculatedPageSize():this.checkPageSize()}checkPageSize(){if(this.notActive())return;const e=this.centerRowsCtrl.viewportSizeFeature.getBodyHeight();if(e>0){const t=this.beans,s=()=>{const o=Math.max(Do(t),1),i=Math.floor(e/o);t.pagination.setPageSize(i,"autoCalculated")};this.isBodyRendered?at(this,s,50)():(s(),this.isBodyRendered=!0)}else this.isBodyRendered=!1}},xn="paginationPageSizeSelector",I6={tag:"span",cls:"ag-paging-page-size"},k6=class extends Xe{constructor(){super(I6),this.hasEmptyOption=!1,this.handlePageSizeItemSelected=()=>{if(!this.selectPageSizeComp)return;const e=this.selectPageSizeComp.getValue();if(!e)return;const t=Number(e);isNaN(t)||t<1||t===this.pagination.getPageSize()||(this.pagination.setPageSize(t,"pageSizeSelector"),this.hasEmptyOption&&this.toggleSelectDisplay(!0),this.selectPageSizeComp.getFocusableElement().focus())}}wireBeans(e){this.pagination=e.pagination}postConstruct(){this.addManagedPropertyListener(xn,()=>{this.onPageSizeSelectorValuesChange()}),this.addManagedEventListeners({paginationChanged:e=>this.handlePaginationChanged(e)})}handlePaginationChanged(e){if(!this.selectPageSizeComp||!e?.newPageSize)return;const t=this.pagination.getPageSize();this.getPageSizeSelectorValues().includes(t)?this.selectPageSizeComp.setValue(t.toString()):this.hasEmptyOption?this.selectPageSizeComp.setValue(""):this.toggleSelectDisplay(!0)}toggleSelectDisplay(e){this.selectPageSizeComp&&!e&&this.reset(),e&&(this.reloadPageSizesSelector(),this.selectPageSizeComp)}reset(){Tt(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(xn)!==!1}reloadPageSizesSelector(){const e=this.getPageSizeSelectorValues(),t=this.pagination.getPageSize(),s=!t||!e.includes(t);if(s){const i=this.gos.exists("paginationPageSize"),n=this.gos.get(xn)!==!0;z(94,{pageSizeSet:i,pageSizesSet:n,pageSizeOptions:e,paginationPageSizeOption:t}),n||z(95,{paginationPageSizeOption:t,paginationPageSizeSelector:xn}),e.unshift("")}const o=String(s?"":t);this.selectPageSizeComp?(ro(this.pageSizeOptions,e)||(this.selectPageSizeComp.clearOptions().addOptions(this.createPageSizeSelectOptions(e)),this.pageSizeOptions=e),this.selectPageSizeComp.setValue(o,!0)):this.createPageSizeSelectorComp(e,o),this.hasEmptyOption=s}createPageSizeSelectOptions(e){return e.map(t=>({value:String(t)}))}createPageSizeSelectorComp(e,t){const s=this.getLocaleTextFunc(),o=s("pageSizeSelectorLabel","Page Size:"),i=s("ariaPageSizeSelectorLabel","Page Size");this.selectPageSizeComp=this.createManagedBean(new Du).addOptions(this.createPageSizeSelectOptions(e)).setValue(t).setAriaLabel(i).setLabel(o).onValueChange(()=>this.handlePageSizeItemSelected()),this.appendChild(this.selectPageSizeComp)}getPageSizeSelectorValues(){const e=[20,50,100],t=this.gos.get(xn);return!Array.isArray(t)||!t?.length?e:[...t].sort((s,o)=>s-o)}destroy(){this.toggleSelectDisplay(!1),super.destroy()}},A6={selector:"AG-PAGE-SIZE-SELECTOR",component:k6},L6=".ag-paging-panel{align-items:center;border-top:var(--ag-footer-row-border);display:flex;gap:calc(var(--ag-spacing)*4);height:var(--ag-pagination-panel-height);justify-content:flex-end;padding:0 var(--ag-cell-horizontal-padding)}:where(.ag-paging-page-size) .ag-wrapper{min-width:50px}.ag-paging-page-summary-panel{align-items:center;display:flex;gap:var(--ag-cell-widget-spacing);.ag-disabled &{pointer-events:none}}.ag-paging-button{cursor:pointer;position:relative;&.ag-disabled{cursor:default;opacity:.5}}.ag-paging-number,.ag-paging-row-summary-panel-number{font-weight:500}",O6=class extends PF{constructor(){super(),this.btFirst=Ce,this.btPrevious=Ce,this.btNext=Ce,this.btLast=Ce,this.lbRecordCount=Ce,this.lbFirstRowOnPage=Ce,this.lbLastRowOnPage=Ce,this.lbCurrent=Ce,this.lbTotal=Ce,this.pageSizeComp=Ce,this.previousAndFirstButtonsDisabled=!1,this.nextButtonDisabled=!1,this.lastButtonDisabled=!1,this.areListenersSetup=!1,this.allowFocusInnerElement=!1,this.registerCSS(L6)}wireBeans(e){this.rowModel=e.rowModel,this.pagination=e.pagination,this.ariaAnnounce=e.ariaAnnounce}postConstruct(){const e=this.gos.get("enableRtl");this.setTemplate(this.getTemplate(),[A6]);const{btFirst:t,btPrevious:s,btNext:o,btLast:i}=this;this.activateTabIndex([t,s,o,i]),t.insertAdjacentElement("afterbegin",Xt(e?"last":"first",this.beans)),s.insertAdjacentElement("afterbegin",Xt(e?"next":"previous",this.beans)),o.insertAdjacentElement("afterbegin",Xt(e?"previous":"next",this.beans)),i.insertAdjacentElement("afterbegin",Xt(e?"first":"last",this.beans)),this.addManagedPropertyListener("pagination",this.onPaginationChanged.bind(this)),this.addManagedPropertyListener("suppressPaginationPanel",this.onPaginationChanged.bind(this)),this.addManagedPropertyListeners(["paginationPageSizeSelector","paginationAutoPageSize","suppressPaginationPanel"],()=>this.onPageSizeRelatedOptionsChange()),this.pageSizeComp.toggleSelectDisplay(this.pageSizeComp.shouldShowPageSizeSelector()),this.initialiseTabGuard({onTabKeyDown:()=>{},focusInnerElement:n=>this.allowFocusInnerElement?this.tabGuardFeature.getTabGuardCtrl().focusInnerElement(n):$2(this.beans,n),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(){if(!this.areListenersSetup){this.addManagedEventListeners({paginationChanged:this.onPaginationChanged.bind(this)});for(const e of[{el:this.btFirst,fn:this.onBtFirst.bind(this)},{el:this.btPrevious,fn:this.onBtPrevious.bind(this)},{el:this.btNext,fn:this.onBtNext.bind(this)},{el:this.btLast,fn:this.onBtLast.bind(this)}]){const{el:t,fn:s}=e;this.addManagedListeners(t,{click:s,keydown:o=>{(o.key===I.ENTER||o.key===I.SPACE)&&(o.preventDefault(),s())}})}U2(this.beans,this,this.getGui()),this.areListenersSetup=!0}}onBtFirst(){this.previousAndFirstButtonsDisabled||this.pagination.goToFirstPage()}formatNumber(e){const t=this.gos.getCallback("paginationNumberFormatter");return t?t({value:e}):f4(e,this.getLocaleTextFunc.bind(this))}getTemplate(){const e=this.getLocaleTextFunc(),t=`ag-${this.getCompId()}`;return{tag:"div",cls:"ag-paging-panel ag-unselectable",attrs:{id:`${t}`},children:[{tag:"ag-page-size-selector",ref:"pageSizeComp"},{tag:"span",cls:"ag-paging-row-summary-panel",children:[{tag:"span",ref:"lbFirstRowOnPage",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-first-row`}},{tag:"span",attrs:{id:`${t}-to`},children:e("to","to")},{tag:"span",ref:"lbLastRowOnPage",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-last-row`}},{tag:"span",attrs:{id:`${t}-of`},children:e("of","of")},{tag:"span",ref:"lbRecordCount",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-row-count`}}]},{tag:"span",cls:"ag-paging-page-summary-panel",role:"presentation",children:[{tag:"div",ref:"btFirst",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("firstPage","First Page")}},{tag:"div",ref:"btPrevious",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("previousPage","Previous Page")}},{tag:"span",cls:"ag-paging-description",children:[{tag:"span",attrs:{id:`${t}-start-page`},children:e("page","Page")},{tag:"span",ref:"lbCurrent",cls:"ag-paging-number",attrs:{id:`${t}-start-page-number`}},{tag:"span",attrs:{id:`${t}-of-page`},children:e("of","of")},{tag:"span",ref:"lbTotal",cls:"ag-paging-number",attrs:{id:`${t}-of-page-number`}}]},{tag:"div",ref:"btNext",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("nextPage","Next Page")}},{tag:"div",ref:"btLast",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("lastPage","Last Page")}}]}]}}onBtNext(){this.nextButtonDisabled||this.pagination.goToNextPage()}onBtPrevious(){this.previousAndFirstButtonsDisabled||this.pagination.goToPreviousPage()}onBtLast(){this.lastButtonDisabled||this.pagination.goToLastPage()}enableOrDisableButtons(){const e=this.pagination.getCurrentPage(),t=this.rowModel.isLastRowIndexKnown(),s=this.pagination.getTotalPages();this.previousAndFirstButtonsDisabled=e===0,this.toggleButtonDisabled(this.btFirst,this.previousAndFirstButtonsDisabled),this.toggleButtonDisabled(this.btPrevious,this.previousAndFirstButtonsDisabled);const o=this.isZeroPagesToDisplay(),i=e===s-1;this.nextButtonDisabled=i||o,this.lastButtonDisabled=!t||o||e===s-1,this.toggleButtonDisabled(this.btNext,this.nextButtonDisabled),this.toggleButtonDisabled(this.btLast,this.lastButtonDisabled)}toggleButtonDisabled(e,t){cS(e,t),e.classList.toggle("ag-disabled",t)}isZeroPagesToDisplay(){const e=this.rowModel.isLastRowIndexKnown(),t=this.pagination.getTotalPages();return e&&t===0}updateLabels(){const e=this.rowModel.isLastRowIndexKnown(),t=this.pagination.getTotalPages(),s=this.pagination.getMasterRowCount(),o=e?s:null,i=this.pagination.getCurrentPage(),n=this.pagination.getPageSize();let r,a;this.isZeroPagesToDisplay()?r=a=0:(r=n*i+1,a=r+n-1,e&&a>o&&(a=o));const l=r+n-1,c=!e&&s<l,d=this.formatNumber(r);this.lbFirstRowOnPage.textContent=d;let u;const h=this.getLocaleTextFunc();c?u=h("pageLastRowUnknown","?"):u=this.formatNumber(a),this.lbLastRowOnPage.textContent=u;const f=t>0?i+1:0,C=this.formatNumber(f);this.lbCurrent.textContent=C;let v,w;if(e)v=this.formatNumber(t),w=this.formatNumber(o);else{const b=h("more","more");v=b,w=b}this.lbTotal.textContent=v,this.lbRecordCount.textContent=w,this.announceAriaStatus(d,u,w,C,v)}announceAriaStatus(e,t,s,o,i){const n=this.getLocaleTextFunc(),r=n("page","Page"),a=n("to","to"),l=n("of","of"),c=`${e} ${a} ${t} ${l} ${s}`,d=`${r} ${o} ${l} ${i}`;c!==this.ariaRowStatus&&(this.ariaRowStatus=c,this.ariaAnnounce?.announceValue(c,"paginationRow")),d!==this.ariaPageStatus&&(this.ariaPageStatus=d,this.ariaAnnounce?.announceValue(d,"paginationPage"))}},N6={selector:"AG-PAGINATION",component:O6},H6=class extends O{constructor(){super(...arguments),this.beanName="pagination",this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=0,this.masterRowCount=0}postConstruct(){const e=this.gos;this.active=e.get("pagination"),this.pageSizeFromGridOptions=e.get("paginationPageSize"),this.paginateChildRows=this.isPaginateChildRows(),this.addManagedPropertyListener("pagination",this.onPaginationGridOptionChanged.bind(this)),this.addManagedPropertyListener("paginationPageSize",this.onPageSizeGridOptionChanged.bind(this))}getPaginationSelector(){return N6}isPaginateChildRows(){const e=this.gos;return e.get("groupHideParentOfSingleChild")||e.get("groupRemoveSingleChildren")||e.get("groupRemoveLowestSingleChildren")?!0:e.get("paginateChildRows")}onPaginationGridOptionChanged(){this.active=this.gos.get("pagination"),this.calculatePages(),this.dispatchPaginationChangedEvent({keepRenderedRows:!0})}onPageSizeGridOptionChanged(){this.setPageSize(this.gos.get("paginationPageSize"),"gridOptions")}goToPage(e){const t=this.currentPage;if(!this.active||t===e||typeof t!="number")return;const{editSvc:s}=this.beans;s?.isEditing()&&(s.isBatchEditing()?s.cleanupEditors():s.stopEditing(void 0,{source:"api"})),this.currentPage=e,this.calculatePages(),this.dispatchPaginationChangedEvent({newPage:!0})}goToPageWithIndex(e){if(!this.active)return;let t=e;this.paginateChildRows||(t=this.beans.rowModel.getTopLevelIndexFromDisplayedIndex?.(e)??e),this.goToPage(Math.floor(t/this.pageSize))}isRowInPage(e){return this.active?e>=this.topDisplayedRowIndex&&e<=this.bottomDisplayedRowIndex:!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.beans.rowModel.getRowCount(),t=Math.floor(e/this.pageSize);this.goToPage(t)}getPageSize(){return this.pageSize}getTotalPages(){return this.totalPages}setPage(e){this.currentPage=e}get pageSize(){return X(this.pageSizeAutoCalculated)&&this.gos.get("paginationAutoPageSize")?this.pageSizeAutoCalculated:X(this.pageSizeFromPageSizeSelector)?this.pageSizeFromPageSizeSelector:X(this.pageSizeFromInitialState)?this.pageSizeFromInitialState:X(this.pageSizeFromGridOptions)?this.pageSizeFromGridOptions:this.defaultPageSize}calculatePages(){this.active?this.paginateChildRows?this.calculatePagesAllRows():this.calculatePagesMasterRowsOnly():this.calculatedPagesNotActive(),this.beans.pageBounds.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(){const e=this.totalPages;this.currentPage>=e&&(this.currentPage=e-1);const t=this.currentPage;(!isFinite(t)||isNaN(t)||t<0)&&(this.currentPage=0)}calculatePagesMasterRowsOnly(){const e=this.beans.rowModel,t=e.getTopLevelRowCount();if(this.masterRowCount=t,t<=0){this.setZeroRows();return}const s=this.pageSize,o=t-1;this.totalPages=Math.floor(o/s)+1,this.adjustCurrentPageIfInvalid();const i=this.currentPage,n=s*i;let r=s*(i+1)-1;if(r>o&&(r=o),this.topDisplayedRowIndex=e.getTopLevelRowDisplayedIndex(n),r===o)this.bottomDisplayedRowIndex=e.getRowCount()-1;else{const a=e.getTopLevelRowDisplayedIndex(r+1);this.bottomDisplayedRowIndex=a-1}}getMasterRowCount(){return this.masterRowCount}calculatePagesAllRows(){const e=this.beans.rowModel.getRowCount();if(this.masterRowCount=e,e===0){this.setZeroRows();return}const{pageSize:t,currentPage:s}=this,o=e-1;this.totalPages=Math.floor(o/t)+1,this.adjustCurrentPageIfInvalid(),this.topDisplayedRowIndex=t*s,this.bottomDisplayedRowIndex=t*(s+1)-1,this.bottomDisplayedRowIndex>o&&(this.bottomDisplayedRowIndex=o)}calculatedPagesNotActive(){this.setPageSize(void 0,"autoCalculated"),this.totalPages=1,this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=this.beans.rowModel.getRowCount()-1}dispatchPaginationChangedEvent(e){const{keepRenderedRows:t=!1,newPage:s=!1,newPageSize:o=!1}=e;this.eventSvc.dispatchEvent({type:"paginationChanged",animate:!1,newData:!1,newPage:s,newPageSize:o,keepRenderedRows:t})}},G6={moduleName:"Pagination",version:Y,beans:[H6,M6],icons:{first:"first",previous:"previous",next:"next",last:"last"},apiFunctions:{paginationIsLastPageFound:b6,paginationGetPageSize:S6,paginationGetCurrentPage:y6,paginationGetTotalPages:x6,paginationGetRowCount:R6,paginationGoToNextPage:F6,paginationGoToPreviousPage:E6,paginationGoToFirstPage:D6,paginationGoToLastPage:P6,paginationGoToPage:T6},dependsOn:[dl]};function B6(e,t={}){const s=t?t.rowNodes:void 0;e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.redrawRows(s))}function cv(e,t,s,o,i){t&&(o&&t.parent&&t.parent.level!==-1&&cv(e,t.parent,s,o,i),t.setExpanded(s,void 0,i))}function V6(e,t){return e.rowModel.getRowNode(t)}function z6(e,t,s,o){e.rowRenderer.addRenderedRowListener(t,s,o)}function W6(e){return e.rowRenderer.getRenderedNodes()}function _6(e,t,s){e.rowModel.forEachNode(t,s)}function j6(e){return e.rowRenderer.firstRenderedRow}function U6(e){return e.rowRenderer.lastRenderedRow}function $6(e,t){return e.rowModel.getRow(t)}function q6(e){return e.rowModel.getRowCount()}var K6={moduleName:"RowApi",version:Y,apiFunctions:{redrawRows:B6,setRowNodeExpanded:cv,getRowNode:V6,addRenderedRowListener:z6,getRenderedNodes:W6,forEachNode:_6,getFirstDisplayedRowIndex:j6,getLastDisplayedRowIndex:U6,getDisplayedRowAtIndex:$6,getDisplayedRowCount:q6}},Y6={moduleName:"ScrollApi",version:Y,apiFunctions:{getVerticalPixelRange:aM,getHorizontalPixelRange:lM,ensureColumnVisible:YC,ensureIndexVisible:ZC,ensureNodeVisible:cM}};function Z6(e,t,s){if(!t)return;const o=e.ctrlsSvc.getGridBodyCtrl().eGridBody,i=`aria-${t}`;s===null?o.removeAttribute(i):o.setAttribute(i,s)}function X6(e,t={}){e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.refreshCells(t))}function Q6(e){e.frameworkOverrides.wrapIncoming(()=>{for(const t of e.ctrlsSvc.getHeaderRowContainerCtrls())t.refresh()})}function J6(e){return e.animationFrameSvc?.isQueueEmpty()??!0}function ek(e){e.animationFrameSvc?.flushAllFrames()}function tk(e){return{rowHeight:Do(e),headerHeight:fr(e)}}function sk(e,t={}){const s=[];for(const n of e.rowRenderer.getCellCtrls(t.rowNodes,t.columns)){const r=n.getCellRenderer();r!=null&&s.push(Jn(r))}if(t.columns?.length)return s;const o=[],i=Gd(t.rowNodes);for(const n of e.rowRenderer.getAllRowCtrls()){if(i&&!Bd(n.rowNode,i)||!n.isFullWidth())continue;const r=n.getFullWidthCellRenderers();for(let a=0;a<r.length;a++){const l=r[a];l!=null&&o.push(Jn(l))}}return[...o,...s]}var ok={moduleName:"RenderApi",version:Y,apiFunctions:{setGridAriaProperty:Z6,refreshCells:X6,refreshHeader:Q6,isAnimationFrameQueueEmpty:J6,flushAllAnimationFrames:ek,getSizesForCurrentTheme:tk,getCellRendererInstances:sk}};function ik(e,t){typeof t=="number"?e.colAutosize?.sizeColumnsToFit(t,"api"):e.colAutosize?.sizeColumnsToFitGridBody(t)}function dv({colAutosize:e,visibleCols:t},s,o){Array.isArray(s)?e?.autoSizeCols({colKeys:s,skipHeader:o,source:"api"}):e?.autoSizeCols({...s,colKeys:s.colIds??t.allCols,source:"api"})}function nk(e,t){t&&typeof t=="object"?dv(e,t):e.colAutosize?.autoSizeAllColumns({source:"api",skipHeader:t})}var rk=class extends O{constructor(){super(...arguments),this.beanName="colAutosize",this.timesDelayed=0,this.shouldQueueResizeOperations=!1,this.resizeOperationQueue=[]}postConstruct(){const{gos:e}=this,t=e.get("autoSizeStrategy");if(t){let s=!1;const o=t.type;if(o==="fitGridWidth"||o==="fitProvidedWidth")s=!0;else if(o==="fitCellContents"){this.addManagedEventListeners({firstDataRendered:()=>this.onFirstDataRendered(t)});const i=e.get("rowData");s=i!=null&&i.length>0&&Qe(e)}s&&this.beans.colDelayRenderSvc?.hideColumns(o)}}autoSizeCols(e){const{eventSvc:t,visibleCols:s}=this.beans;this.innerAutoSizeCols(e).then(o=>{const i=c=>Ni(t,Array.from(c),!0,"autosizeColumns");if(!e.scaleUpToFitGridWidth)return i(o);const n=rp(this.beans),r=c=>s.leftCols.some(d=>Hn(d,c)),a=c=>s.rightCols.some(d=>Hn(d,c)),l=e.colKeys.filter(c=>!zs(c)&&!Ls(c)&&!r(c)&&!a(c));this.sizeColumnsToFit(n,e.source,!0,{defaultMaxWidth:e.defaultMaxWidth,defaultMinWidth:e.defaultMinWidth,columnLimits:e.columnLimits?.map(c=>({...c,key:c.colId})),colKeys:l,onlyScaleUp:!0}),i(o)})}innerAutoSizeCols(e){return new Promise((t,s)=>{if(this.shouldQueueResizeOperations)return this.pushResizeOperation(()=>this.innerAutoSizeCols(e).then(t,s));const{colKeys:o,skipHeader:i,skipHeaderGroups:n,stopAtGroup:r,defaultMaxWidth:a,defaultMinWidth:l,columnLimits:c=[],source:d="api"}=e,{animationFrameSvc:u,renderStatus:h,colModel:p,autoWidthCalc:f,visibleCols:C}=this.beans;if(u?.flushAllFrames(),this.timesDelayed<5&&h&&(!h.areHeaderCellsRendered()||!h.areCellsRendered())){this.timesDelayed++,setTimeout(()=>{this.isAlive()&&this.innerAutoSizeCols(e).then(t,s)});return}this.timesDelayed=0;const v=new Set;let w=-1;const b=Object.fromEntries(c.map(({colId:x,...F})=>[x,F])),S=i??this.gos.get("skipHeaderOnAutoSize"),y=n??S;for(;w!==0;){w=0;const x=[];for(const F of o){if(!F||by(F))continue;const R=p.getCol(F);if(!R||v.has(R))continue;const E=f.getPreferredWidthForColumn(R,S);if(E>0){const D=b[R.colId]??{};D.minWidth??(D.minWidth=l),D.maxWidth??(D.maxWidth=a);const P=ak(R,E,D);R.setActualWidth(P,d),v.add(R),w++}x.push(R)}x.length&&C.refresh(d)}y||this.autoSizeColumnGroupsByColumns(o,d,r),t(v)})}autoSizeColumn(e,t,s){this.autoSizeCols({colKeys:[e],skipHeader:s,skipHeaderGroups:!0,source:t})}autoSizeColumnGroupsByColumns(e,t,s){const{colModel:o,ctrlsSvc:i}=this.beans,n=new Set,r=o.getColsForKeys(e);for(const l of r){let c=l.getParent();for(;c&&c!=s;)c.isPadding()||n.add(c),c=c.getParent()}let a;for(const l of n){for(const c of i.getHeaderRowContainerCtrls())if(a=c.getHeaderCtrlForColumn(l),a)break;a?.resizeLeafColumnsToFit(t)}}autoSizeAllColumns(e){if(this.shouldQueueResizeOperations){this.pushResizeOperation(()=>this.autoSizeAllColumns(e));return}this.autoSizeCols({colKeys:this.beans.visibleCols.allCols,...e})}addColumnAutosizeListeners(e,t){const s=this.gos.get("skipHeaderOnAutoSize"),o=()=>{this.autoSizeColumn(t,"uiColumnResized",s)};e.addEventListener("dblclick",o);const i=new Co(e);return i.addEventListener("doubleTap",o),()=>{e.removeEventListener("dblclick",o),i.destroy()}}addColumnGroupResize(e,t,s){const o=this.gos.get("skipHeaderOnAutoSize"),i=()=>{const n=[],r=t.getDisplayedLeafColumns();for(const a of r)a.getColDef().suppressAutoSize||n.push(a.getColId());n.length>0&&this.autoSizeCols({colKeys:n,skipHeader:o,stopAtGroup:t,source:"uiColumnResized"}),s()};return e.addEventListener("dblclick",i),()=>e.removeEventListener("dblclick",i)}sizeColumnsToFitGridBody(e,t){if(!this.isAlive())return;const s=rp(this.beans);if(s>0){this.sizeColumnsToFit(s,"sizeColumnsToFit",!1,e);return}t===void 0?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,100)},0):t===100?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,500)},100):t===500?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,-1)},500):z(29)}sizeColumnsToFit(e,t="sizeColumnsToFit",s,o){if(this.shouldQueueResizeOperations){this.pushResizeOperation(()=>this.sizeColumnsToFit(e,t,s,o));return}const i={};for(const{key:f,...C}of o?.columnLimits??[])i[typeof f=="string"?f:f.getColId()]=C;const n=this.beans.visibleCols.allCols;if(e<=0||!n.length)return;const r=Ts(n);if(o?.onlyScaleUp&&r>e||e===r&&n.every(C=>{if(C.colDef.suppressSizeToFit)return!0;const v=i?.[C.getId()],w=v?.minWidth??o?.defaultMinWidth,b=v?.maxWidth??o?.defaultMaxWidth,S=C.getActualWidth();return(w==null||S>=w)&&(b==null||S<=b)}))return;const l=[],c=[];for(const f of n){const C=o?.colKeys?.some(v=>Hn(f,v))??!0;f.getColDef().suppressSizeToFit||!C?c.push(f):l.push(f)}const d=l.slice(0);let u=!1;const h=f=>{is(l,f),c.push(f)};for(const f of l){f.resetActualWidth(t);const C=i?.[f.getId()],v=C?.minWidth??o?.defaultMinWidth,w=C?.maxWidth??o?.defaultMaxWidth,b=f.getActualWidth();typeof v=="number"&&b<v?f.setActualWidth(v,t,!0):typeof w=="number"&&b>w&&f.setActualWidth(w,t,!0)}for(;!u;){u=!0;const f=e-Ts(c);if(f<=0)for(const C of l){const v=i?.[C.getId()]?.minWidth??o?.defaultMinWidth??C.minWidth;C.setActualWidth(v,t,!0)}else{const C=f/Ts(l);let v=f;for(let w=l.length-1;w>=0;w--){const b=l[w],S=i?.[b.getId()],y=S?.minWidth??o?.defaultMinWidth,x=S?.maxWidth??o?.defaultMaxWidth,F=b.getMinWidth(),R=b.getMaxWidth(),E=typeof y=="number"&&y>F?y:F,D=typeof x=="number"&&x<R?x:R;let P=Math.round(b.getActualWidth()*C);P<E?(P=E,h(b),u=!1):P>D?(P=D,h(b),u=!1):w===0&&(P=v),b.setActualWidth(P,t,!0),v-=P}}}for(const f of d)f.fireColumnWidthChangedEvent(t);const p=this.beans.visibleCols;p.setLeftValues(t),p.updateBodyWidths(),!s&&Ni(this.eventSvc,d,!0,t)}applyAutosizeStrategy(){const{gos:e,colDelayRenderSvc:t}=this.beans,s=e.get("autoSizeStrategy");s?.type!=="fitGridWidth"&&s?.type!=="fitProvidedWidth"||setTimeout(()=>{if(!this.isAlive())return;const o=s.type;if(o==="fitGridWidth"){const{columnLimits:i,defaultMinWidth:n,defaultMaxWidth:r}=s,a=i?.map(({colId:l,minWidth:c,maxWidth:d})=>({key:l,minWidth:c,maxWidth:d}));this.sizeColumnsToFitGridBody({defaultMinWidth:n,defaultMaxWidth:r,columnLimits:a})}else o==="fitProvidedWidth"&&this.sizeColumnsToFit(s.width,"sizeColumnsToFit");t?.revealColumns(o)})}onFirstDataRendered({colIds:e,...t}){setTimeout(()=>{if(!this.isAlive())return;const s="autosizeColumns";e?this.autoSizeCols({...t,source:s,colKeys:e}):this.autoSizeAllColumns({...t,source:s}),this.beans.colDelayRenderSvc?.revealColumns(t.type)})}processResizeOperations(){this.shouldQueueResizeOperations=!1;for(const e of this.resizeOperationQueue)e();this.resizeOperationQueue=[]}pushResizeOperation(e){this.resizeOperationQueue.push(e)}destroy(){this.resizeOperationQueue.length=0,super.destroy()}};function ak(e,t,s={}){const o=s.minWidth??e.getMinWidth();t<o&&(t=o);const i=s.maxWidth??e.getMaxWidth();return t>i&&(t=i),t}function rp({ctrlsSvc:e,scrollVisibleSvc:t}){const s=e.getGridBodyCtrl(),i=s.isVerticalScrollShowing()?t.getScrollbarWidth():0;return Yn(s.eGridBody)-i}var lk={moduleName:"ColumnAutoSize",version:Y,beans:[rk],apiFunctions:{sizeColumnsToFit:ik,autoSizeColumns:dv,autoSizeAllColumns:nk},dependsOn:[iC]},ck=".ag-row-pinned-source{background-color:var(--ag-pinned-source-row-background-color);color:var(--ag-pinned-source-row-text-color);font-weight:var(--ag-pinned-source-row-font-weight)}.ag-row-pinned-manual{background-color:var(--ag-pinned-row-background-color);color:var(--ag-pinned-row-text-color);font-weight:var(--ag-pinned-row-font-weight)}";function dk(e){return e.pinnedRowModel?.getPinnedTopRowCount()??0}function uk(e){return e.pinnedRowModel?.getPinnedBottomRowCount()??0}function hk(e,t){return e.pinnedRowModel?.getPinnedTopRow(t)}function gk(e,t){return e.pinnedRowModel?.getPinnedBottomRow(t)}function pk(e,t,s){return e.pinnedRowModel?.forEachPinnedRow(t,s)}var fk={moduleName:"PinnedRow",version:Y,beans:[SF],css:[ck],apiFunctions:{getPinnedTopRowCount:dk,getPinnedBottomRowCount:uk,getPinnedTopRow:hk,getPinnedBottomRow:gk,forEachPinnedRow:pk},icons:{rowPin:"pin",rowPinTop:"pinned-top",rowPinBottom:"pinned-bottom",rowUnpin:"un-pin"}},mk=class{constructor(e,t){this.col=e,this.firstNode=t,this.cellSpan=!0,this.spannedNodes=new Set,this.addSpannedNode(t)}reset(){this.spannedNodes.clear(),this.addSpannedNode(this.firstNode)}addSpannedNode(e){this.spannedNodes.add(e),this.lastNode=e}getLastNode(){return this.lastNode}getCellHeight(){return this.lastNode.rowTop+this.lastNode.rowHeight-this.firstNode.rowTop-1}doesSpanContain(e){return e.column!==this.col||e.rowPinned!=this.firstNode.rowPinned?!1:this.firstNode.rowIndex<=e.rowIndex&&e.rowIndex<=this.lastNode.rowIndex}getLastNodeAutoHeight(){const e=this.firstNode.__autoHeights?.[this.col.getColId()];if(e==null)return;let t=0;for(const s of this.spannedNodes)s!==this.lastNode&&(t+=s.rowHeight);return e-t}},Ck=class extends O{constructor(e){super(),this.column=e}buildCache(e){const{column:t,beans:{gos:s,pinnedRowModel:o,rowModel:i,valueSvc:n,pagination:r}}=this,{colDef:a}=t,l=this.getNodeMap(e),c=new Map,d=s.getCallback("isFullWidthRow"),u=a.equals,h=a.spanRows,p=typeof h=="function";let f=null,C=null,v;const w=(S,y)=>{f=S,C=null,v=y},b=S=>{const y=!S.isExpandable()&&!S.group&&!S.detail&&(d?!d({rowNode:S}):!0);if(S.rowIndex==null||!y){w(null,null);return}if(f==null||S.level!==f.level||S.footer||C&&S.rowIndex-1!==C?.getLastNode().rowIndex){w(S,n.getValue(t,S));return}const x=n.getValue(t,S);if(p){const F=we(s,{valueA:v,nodeA:f,valueB:x,nodeB:S,column:t,colDef:a});if(!h(F)){w(S,x);return}}else if(u?!u(v,x):v!==x){w(S,x);return}if(!C){const F=l?.get(f);F?.firstNode===f?(F.reset(),C=F):C=new mk(t,f),c.set(f,C)}C.addSpannedNode(S),c.set(S,C)};switch(e){case"center":i.forEachDisplayedNode?.(S=>{(!r||r.isRowInPage(S.rowIndex))&&b(S)}),this.centerValueNodeMap=c;break;case"top":o?.forEachPinnedRow("top",b),this.topValueNodeMap=c;break;case"bottom":o?.forEachPinnedRow("bottom",b),this.bottomValueNodeMap=c;break}}isCellSpanning(e){return!!this.getCellSpan(e)}getCellSpan(e){return this.getNodeMap(e.rowPinned).get(e)}getNodeMap(e){switch(e){case"top":return this.topValueNodeMap;case"bottom":return this.bottomValueNodeMap;default:return this.centerValueNodeMap}}},vk=class extends O{constructor(){super(...arguments),this.beanName="rowSpanSvc",this.spanningColumns=new Map,this.debouncePinnedEvent=at(this,this.dispatchCellsUpdatedEvent.bind(this,!0),0),this.debounceModelEvent=at(this,this.dispatchCellsUpdatedEvent.bind(this,!1),0),this.pinnedTimeout=null,this.modelTimeout=null}postConstruct(){const e=this.onRowDataUpdated.bind(this),t=this.buildPinnedCaches.bind(this);this.addManagedEventListeners({paginationChanged:this.buildModelCaches.bind(this),pinnedRowDataChanged:t,pinnedRowsChanged:t,rowNodeDataChanged:e,cellValueChanged:e})}register(e){const{gos:t}=this.beans;if(!t.get("enableCellSpan")||this.spanningColumns.has(e))return;const s=this.createManagedBean(new Ck(e));this.spanningColumns.set(e,s),s.buildCache("top"),s.buildCache("bottom"),s.buildCache("center"),this.debouncePinnedEvent(),this.debounceModelEvent()}dispatchCellsUpdatedEvent(e){this.dispatchLocalEvent({type:"spannedCellsUpdated",pinned:e})}deregister(e){this.spanningColumns.delete(e)}onRowDataUpdated({node:e}){const{spannedRowRenderer:t}=this.beans;if(e.rowPinned){if(this.pinnedTimeout!=null)return;this.pinnedTimeout=window.setTimeout(()=>{this.pinnedTimeout=null,this.buildPinnedCaches(),t?.createCtrls("top"),t?.createCtrls("bottom")},0);return}this.modelTimeout==null&&(this.modelTimeout=window.setTimeout(()=>{this.modelTimeout=null,this.buildModelCaches(),t?.createCtrls("center")},0))}buildModelCaches(){this.modelTimeout!=null&&clearTimeout(this.modelTimeout),this.spanningColumns.forEach(e=>e.buildCache("center")),this.debounceModelEvent()}buildPinnedCaches(){this.pinnedTimeout!=null&&clearTimeout(this.pinnedTimeout),this.spanningColumns.forEach(e=>{e.buildCache("top"),e.buildCache("bottom")}),this.debouncePinnedEvent()}isCellSpanning(e,t){const s=this.spanningColumns.get(e);return s?s.isCellSpanning(t):!1}getCellSpanByPosition(e){const{pinnedRowModel:t,rowModel:s}=this.beans,o=e.column,i=e.rowIndex,n=this.spanningColumns.get(o);if(!n)return;let r;switch(e.rowPinned){case"top":r=t?.getPinnedTopRow(i);break;case"bottom":r=t?.getPinnedBottomRow(i);break;default:r=s.getRow(i)}if(r)return n.getCellSpan(r)}getCellStart(e){const t=this.getCellSpanByPosition(e);return t?{...e,rowIndex:t.firstNode.rowIndex}:e}getCellEnd(e){const t=this.getCellSpanByPosition(e);return t?{...e,rowIndex:t.getLastNode().rowIndex}:e}getCellSpan(e,t){const s=this.spanningColumns.get(e);if(s)return s.getCellSpan(t)}forEachSpannedColumn(e,t){for(const[s,o]of this.spanningColumns)if(o.isCellSpanning(e)){const i=o.getCellSpan(e);t(s,i)}}destroy(){super.destroy(),this.spanningColumns.clear()}},wk=class extends Ii{constructor(e,t,s){super(e.col,e.firstNode,s,t),this.cellSpan=e,this.SPANNED_CELL_CSS_CLASS="ag-spanned-cell"}setComp(e,t,s,o,i,n,r){this.eWrapper=s,super.setComp(e,t,s,o,i,n,r),this.setAriaRowSpan(),this.refreshAriaRowIndex()}isCellSpanning(){return!0}getCellSpan(){return this.cellSpan}refreshAriaRowIndex(){const{eGui:e,rowNode:t}=this;!e||t.rowIndex==null||uf(e,t.rowIndex)}setAriaRowSpan(){gS(this.eGui,this.cellSpan.spannedNodes.size)}setFocusedCellPosition(e){this.focusedCellPosition=e}getFocusedCellPosition(){return this.focusedCellPosition??this.cellPosition}checkCellFocused(){const e=this.beans.focusSvc.getFocusedCell();return!!e&&this.cellSpan.doesSpanContain(e)}applyStaticCssClasses(){super.applyStaticCssClasses(),this.comp.toggleCss(this.SPANNED_CELL_CSS_CLASS,!0)}onCellFocused(e){const{beans:t}=this;if(al(t)){this.focusedCellPosition=void 0;return}const s=this.isCellFocused();s||(this.focusedCellPosition=void 0),e&&s&&(this.focusedCellPosition={rowIndex:e.rowIndex,rowPinned:e.rowPinned,column:e.column}),super.onCellFocused(e)}getRootElement(){return this.eWrapper}},bk=class extends Va{onRowIndexChanged(){super.onRowIndexChanged();for(const e of this.getAllCellCtrls())e.refreshAriaRowIndex()}getInitialRowClasses(e){return["ag-spanned-row"]}getNewCellCtrl(e){const t=this.beans.rowSpanSvc?.getCellSpan(e,this.rowNode);if(!(!t||t.firstNode!==this.rowNode))return new wk(t,this,this.beans)}isCorrectCtrlForSpan(e){const t=this.beans.rowSpanSvc?.getCellSpan(e.column,this.rowNode);return!t||t.firstNode!==this.rowNode?!1:e.getCellSpan()===t}onRowHeightChanged(){}refreshFirstAndLastRowStyles(){}addHoverFunctionality(){}resetHoveredStatus(){}},Sk=class extends O{constructor(){super(...arguments),this.beanName="spannedRowRenderer",this.topCtrls=new Map,this.bottomCtrls=new Map,this.centerCtrls=new Map}postConstruct(){this.addManagedEventListeners({displayedRowsChanged:this.createAllCtrls.bind(this)})}createAllCtrls(){this.createCtrls("top"),this.createCtrls("bottom"),this.createCtrls("center")}createCtrls(e){const{rowSpanSvc:t}=this.beans,s=this.getCtrlsMap(e),o=s.size,i=this.getAllRelevantRowControls(e),n=new Map;let r=!1;for(const l of i)l.isAlive()&&t?.forEachSpannedColumn(l.rowNode,(c,d)=>{if(n.has(d.firstNode))return;const u=s.get(d.firstNode);if(u){n.set(d.firstNode,u),s.delete(d.firstNode);return}r=!0;const h=new bk(d.firstNode,this.beans,!1,!1,!1);n.set(d.firstNode,h)});this.setCtrlsMap(e,n);const a=n.size===o;if(!(!r&&a)){for(const l of s.values())l.destroyFirstPass(!0),l.destroySecondPass();this.dispatchLocalEvent({type:"spannedRowsUpdated",ctrlsKey:e})}}getAllRelevantRowControls(e){const{rowRenderer:t}=this.beans;switch(e){case"top":return t.topRowCtrls;case"bottom":return t.bottomRowCtrls;case"center":return t.allRowCtrls}}getCellByPosition(e){const{rowSpanSvc:t}=this.beans,s=t?.getCellSpanByPosition(e);if(!s)return;const o=this.getCtrlsMap(e.rowPinned).get(s.firstNode);if(o)return o.getAllCellCtrls().find(i=>i.column===e.column)}getCtrls(e){return[...this.getCtrlsMap(e).values()]}destroyRowCtrls(e){for(const t of this.getCtrlsMap(e).values())t.destroyFirstPass(!0),t.destroySecondPass();this.setCtrlsMap(e,new Map)}getCtrlsMap(e){switch(e){case"top":return this.topCtrls;case"bottom":return this.bottomCtrls;default:return this.centerCtrls}}setCtrlsMap(e,t){switch(e){case"top":this.topCtrls=t;break;case"bottom":this.bottomCtrls=t;break;default:this.centerCtrls=t;break}}destroy(){super.destroy(),this.destroyRowCtrls("top"),this.destroyRowCtrls("bottom"),this.destroyRowCtrls("center")}},yk={moduleName:"CellSpan",version:Y,beans:[vk,Sk]},xk=class extends O{constructor(e,t){super(),this.cellCtrl=e,this.staticClasses=[],this.beans=t,this.column=e.column}setComp(e){this.cellComp=e,this.applyUserStyles(),this.applyCellClassRules(),this.applyClassesFromColDef()}applyCellClassRules(){const{column:e,cellComp:t}=this,s=e.colDef,o=s.cellClassRules,i=this.getCellClassParams(e,s);Uu(this.beans.expressionSvc,o===this.cellClassRules?void 0:this.cellClassRules,o,i,n=>t.toggleCss(n,!0),n=>t.toggleCss(n,!1)),this.cellClassRules=o}applyUserStyles(){const e=this.column,t=e.colDef,s=t.cellStyle;if(!s)return;let o;if(typeof s=="function"){const i=this.getCellClassParams(e,t);o=s(i)}else o=s;o&&this.cellComp.setUserStyles(o)}applyClassesFromColDef(){const{column:e,cellComp:t}=this,s=e.colDef,o=this.getCellClassParams(e,s);for(const n of this.staticClasses)t.toggleCss(n,!1);const i=this.beans.cellStyles.getStaticCellClasses(s,o);this.staticClasses=i;for(const n of i)t.toggleCss(n,!0)}getCellClassParams(e,t){const{value:s,rowNode:o}=this.cellCtrl;return we(this.beans.gos,{value:s,data:o.data,node:o,colDef:t,column:e,rowIndex:o.rowIndex})}},Rk=class extends O{constructor(){super(...arguments),this.beanName="cellStyles"}processAllCellClasses(e,t,s,o){Uu(this.beans.expressionSvc,void 0,e.cellClassRules,t,s,o),this.processStaticCellClasses(e,t,s)}getStaticCellClasses(e,t){const{cellClass:s}=e;if(!s)return[];let o;return typeof s=="function"?o=s(t):o=s,typeof o=="string"&&(o=[o]),o||[]}createCellCustomStyleFeature(e,t){return new xk(e,t)}processStaticCellClasses(e,t,s){this.getStaticCellClasses(e,t).forEach(i=>{s(i)})}},Fk={moduleName:"CellStyle",version:Y,beans:[Rk]},Ek={moduleName:"RowStyle",version:Y,beans:[u5]};function Dk(e,t){return!!e.colHover?.isHovered(t)}var Pk=class extends O{constructor(e,t){super(),this.columns=e,this.element=t,this.destroyManagedListeners=[],this.enableFeature=s=>{const{beans:o,gos:i,element:n,columns:r}=this,a=o.colHover;if(s??!!i.get("columnHoverHighlight"))this.destroyManagedListeners=this.addManagedElementListeners(n,{mouseover:a.setMouseOver.bind(a,r),mouseout:a.clearMouseOver.bind(a)});else{for(const c of this.destroyManagedListeners)c();this.destroyManagedListeners=[]}}}postConstruct(){this.addManagedPropertyListener("columnHoverHighlight",({currentValue:e})=>{this.enableFeature(e)}),this.enableFeature()}destroy(){super.destroy(),this.destroyManagedListeners=null}},Tk="ag-column-hover",Mk=class extends O{constructor(){super(...arguments),this.beanName="colHover"}postConstruct(){this.addManagedPropertyListener("columnHoverHighlight",({currentValue:e})=>{e||this.clearMouseOver()})}setMouseOver(e){this.updateState(e)}clearMouseOver(){this.updateState(null)}isHovered(e){if(!this.gos.get("columnHoverHighlight"))return!1;const t=this.selectedColumns;return!!t&&t.indexOf(e)>=0}addHeaderColumnHoverListener(e,t,s){const o=()=>{const i=this.isHovered(s);t.toggleCss("ag-column-hover",i)};e.addManagedEventListeners({columnHoverChanged:o}),o()}onCellColumnHover(e,t){if(!t)return;const s=this.isHovered(e);t.toggleCss(Tk,s)}addHeaderFilterColumnHoverListener(e,t,s,o){this.createHoverFeature(e,[s],o);const i=()=>{const n=this.isHovered(s);t.toggleCss("ag-column-hover",n)};e.addManagedEventListeners({columnHoverChanged:i}),i()}createHoverFeature(e,t,s){e.createManagedBean(new Pk(t,s))}updateState(e){this.selectedColumns=e,this.eventSvc.dispatchEvent({type:"columnHoverChanged"})}},Ik={moduleName:"ColumnHover",version:Y,beans:[Mk],apiFunctions:{isColumnHovered:Dk}},kk=class extends O{constructor(){super(...arguments),this.beanName="apiEventSvc",this.syncListeners=new Map,this.asyncListeners=new Map,this.syncGlobalListeners=new Set,this.globalListenerPairs=new Map}postConstruct(){this.wrapSvc=this.beans.frameworkOverrides.createGlobalEventListenerWrapper?.()}addListener(e,t){const s=this.wrapSvc?.wrap(e,t)??t,o=!pa.has(e),i=o?this.asyncListeners:this.syncListeners;i.has(e)||i.set(e,new Set),i.get(e).add(s),this.eventSvc.addListener(e,s,o)}removeListener(e,t){const s=this.wrapSvc?.unwrap(e,t)??t,i=!!this.asyncListeners.get(e)?.delete(s);i||this.syncListeners.get(e)?.delete(s),this.eventSvc.removeListener(e,s,i)}addGlobalListener(e){const t=this.wrapSvc?.wrapGlobal(e)??e,s=(n,r)=>{pa.has(n)&&t(n,r)},o=(n,r)=>{pa.has(n)||t(n,r)};this.globalListenerPairs.set(e,{syncListener:s,asyncListener:o});const i=this.eventSvc;i.addGlobalListener(s,!1),i.addGlobalListener(o,!0)}removeGlobalListener(e){const{eventSvc:t,wrapSvc:s,globalListenerPairs:o}=this,i=s?.unwrapGlobal(e)??e;if(o.has(i)){const{syncListener:r,asyncListener:a}=o.get(i);t.removeGlobalListener(r,!1),t.removeGlobalListener(a,!0),o.delete(e)}else this.syncGlobalListeners.delete(i),t.removeGlobalListener(i,!1)}destroyEventListeners(e,t){e.forEach((s,o)=>{s.forEach(i=>this.eventSvc.removeListener(o,i,t)),s.clear()}),e.clear()}destroyGlobalListeners(e,t){for(const s of e)this.eventSvc.removeGlobalListener(s,t);e.clear()}destroy(){super.destroy(),this.destroyEventListeners(this.syncListeners,!1),this.destroyEventListeners(this.asyncListeners,!0),this.destroyGlobalListeners(this.syncGlobalListeners,!1);const{globalListenerPairs:e,eventSvc:t}=this;e.forEach(({syncListener:s,asyncListener:o})=>{t.removeGlobalListener(s,!1),t.removeGlobalListener(o,!0)}),e.clear()}};function Ak(e,t,s){e.apiEventSvc?.addListener(t,s)}function Lk(e,t,s){e.apiEventSvc?.removeListener(t,s)}function Ok(e,t){e.apiEventSvc?.addGlobalListener(t)}function Nk(e,t){e.apiEventSvc?.removeGlobalListener(t)}var Hk={moduleName:"EventApi",version:Y,apiFunctions:{addEventListener:Ak,addGlobalListener:Ok,removeEventListener:Lk,removeGlobalListener:Nk},beans:[kk]},Gk={moduleName:"Locale",version:Y,beans:[u4]},Bk=class extends O{constructor(){super(...arguments),this.beanName="rowAutoHeight",this.wasEverActive=!1,this._debouncedCalculateRowHeights=at(this,this.calculateRowHeights.bind(this),1)}requestCheckAutoHeight(){this.wasEverActive&&this._debouncedCalculateRowHeights()}calculateRowHeights(){const{visibleCols:e,rowModel:t,rowSpanSvc:s,pinnedRowModel:o}=this.beans,i=e.autoHeightCols;let n=!1;const r=a=>{const l=a.__autoHeights;let c=to(this.beans,a).height;for(const d of i){let u=l?.[d.getColId()];const h=s?.getCellSpan(d,a);if(h){if(h.getLastNode()!==a)continue;if(u=s?.getCellSpan(d,a)?.getLastNodeAutoHeight(),!u)return}if(u==null){if(this.colSpanSkipCell(d,a))continue;return}c=Math.max(u,c)}c!==a.rowHeight&&(a.setRowHeight(c),n=!0)};o?.forEachPinnedRow?.("top",r),o?.forEachPinnedRow?.("bottom",r),t.forEachDisplayedNode?.(r),n&&t.onRowHeightChanged?.()}setRowAutoHeight(e,t,s){if(e.__autoHeights??(e.__autoHeights={}),t==null){delete e.__autoHeights[s.getId()];return}const o=e.__autoHeights[s.getId()];e.__autoHeights[s.getId()]=t,o!==t&&this.requestCheckAutoHeight()}colSpanSkipCell(e,t){const{colModel:s,colViewport:o,visibleCols:i}=this.beans;if(!s.colSpanActive)return!1;let n=[];switch(e.getPinned()){case"left":n=i.getLeftColsForRow(t);break;case"right":n=i.getRightColsForRow(t);break;case null:n=o.getColsWithinViewport(t);break}return!n.includes(e)}setupCellAutoHeight(e,t,s){if(!e.column.isAutoHeight()||!t)return!1;this.wasEverActive=!0;const o=t.parentElement,{rowNode:i,column:n}=e,r=this.beans,a=d=>{if(this.beans.editSvc?.isEditing(e)||!e.isAlive()||!s.isAlive())return;const{paddingTop:u,paddingBottom:h,borderBottomWidth:p,borderTopWidth:f}=Wo(o),C=u+h+p+f,w=t.offsetHeight+C;if(d<5){const S=!ct(r)?.contains(t),y=w==0;if(S||y){window.setTimeout(()=>a(d+1),0);return}}this.setRowAutoHeight(i,w,n)},l=()=>a(0);l();const c=Bs(r,t,l);return s.addDestroyFunc(()=>{c(),this.setRowAutoHeight(i,void 0,n)}),!0}setAutoHeightActive(e){this.active=e.list.some(t=>t.isVisible()&&t.isAutoHeight())}areRowsMeasured(){if(!this.active)return!0;const e=this.beans.rowRenderer.getAllRowCtrls();let t=null;for(const{rowNode:s}of e)if((!t||this.beans.colModel.colSpanActive)&&(t=this.beans.colViewport.getColsWithinViewport(s).filter(i=>i.isAutoHeight())),t.length!==0){if(!s.__autoHeights)return!1;for(const o of t){const i=s.__autoHeights[o.getColId()];if(!i||s.rowHeight<i)return!1}}return!0}},Vk={moduleName:"RowAutoHeight",version:Y,beans:[Bk]},zk={moduleName:"AllCommunity",version:Y,dependsOn:[BI,qI,o6,M4,VM,zM,WM,_M,jM,UM,$M,BM,kT,AT,LT,IT,NT,HT,w6,CI,G6,nC,K6,Y6,ok,lk,vE,fk,aI,q5,Fk,Ik,Ek,Hk,Z5,g6,KC,Gk,Vk,CE,VI,yk]};function ae(e,t={}){const s=Object.keys(t).map(o=>{const i=t[o];return i!=null?`${o}=${i}`:null}).filter(Boolean).join(";");return[e,s].filter(o=>o.length>0).join(":")}var ee={grid(e){return ae("ag-grid-root",{gridId:e})},headerGroupCell(e){return ae("ag-header-group-cell",{colId:e})},headerCell(e){return ae("ag-header-cell",{colId:e})},headerCheckbox(e){return ae("ag-header-selection-checkbox",{colId:e})},headerFilterButton(e){return ae("ag-header-cell-filter-button",{colId:e})},floatingFilter(e){return ae("ag-floating-filter",{colId:e})},floatingFilterButton(e){return ae("ag-floating-filter-button",{colId:e})},headerCellMenuButton(e){return ae("ag-header-cell-menu-button",{colId:e})},headerResizeHandle(e){return ae("ag-header-cell-resize",{colId:e})},filterInstancePickerDisplay(e){return ae(`ag-${e.source}-picker-display`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},numberFilterInstanceInput(e){return ae(`ag-${e.source}-number-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},textFilterInstanceInput(e){return ae(`ag-${e.source}-text-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},dateFilterInstanceInput(e){return ae(`ag-${e.source}-date-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},setFilterInstanceMiniFilterInput(e){return ae(`ag-${e.source}-set-filter-mini-filter-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},setFilterInstanceItem(e,t){return ae(`ag-${e.source}-set-filter-item`,e.source==="filter-toolpanel"?{colLabel:e.colLabel,itemLabel:t}:{colId:e.colId,itemLabel:t})},setFilterApplyPanelButton(e,t){return ae(`ag-${e.source}-set-filter-apply-panel-button`,e.source==="filter-toolpanel"?{colLabel:e.colLabel,buttonLabel:t}:{colId:e.colId,buttonLabel:t})},filterConditionRadioButton(e,t){return ae(`ag-${e.source}-filter-condition-radio-button`,e.source==="filter-toolpanel"?{colLabel:e.colLabel,buttonLabel:t}:{colId:e.colId,buttonLabel:t})},advancedFilterInput(){return ae("ag-advanced-filter-input")},advancedFilterButton(e){return ae("ag-advanced-filter-button",{label:e})},advancedFilterBuilderButton(){return ae("ag-advanced-filter-builder-button")},advancedFilterPanelMaximiseButton(){return ae("ag-advanced-filter-builder-panel-maximise")},advancedFilterPanelCloseButton(){return ae("ag-advanced-filter-builder-panel-close")},advancedFilterPill(e){return ae("ag-advanced-filter-builder-pill",{label:e})},advancedFilterBuilderAddItemButton(){return ae("ag-advanced-filter-builder-add-item-button")},rowNode(e){return ae("ag-row",{"row-id":e})},cell(e,t){return ae("ag-cell",{"row-id":e,colId:t})},autoGroupCell(e){return ee.cell(e,Xs)},checkbox(e,t){return ae("ag-selection-checkbox",{"row-id":e,colId:t})},selectionColumnCheckbox(e){return ee.checkbox(e,vu)},autoGroupColumnCheckbox(e){return ee.checkbox(e,Xs)},dragHandle(e,t){return ae("ag-drag-handle",{"row-id":e,colId:t})},groupContracted(e,t){return ae("ag-group-contracted",{"row-id":e,colId:t})},groupExpanded(e,t){return ae("ag-group-expanded",{"row-id":e,colId:t})},autoGroupContracted(e){return ee.groupContracted(e,Xs)},autoGroupExpanded(e){return ee.groupExpanded(e,Xs)},rowNumber(e){return ee.cell(e,wu)},menu(){return ae("ag-menu")},menuOption(e){return ae("ag-menu-option",{option:e})},sideBar(){return ae("ag-side-bar")},sideBarButton(e){return ae("ag-side-button",{label:e})},columnToolPanel(){return ae("ag-column-panel")},pivotModeSelect(){return ae("ag-pivot-mode-select")},columnPanelSelectHeaderCheckbox(){return ae("ag-column-panel-select-header-checkbox")},columnPanelSelectHeaderFilter(){return ae("ag-column-panel-select-header-filter")},columnSelectListItemGroupClosedIcon(e){return ae("ag-column-select-list-item-group-closed-icon",{label:e})},columnSelectListItemCheckbox(e){return ae("ag-column-select-list-item-checkbox",{label:e})},columnSelectListItemDragHandle(e){return ae("ag-column-select-list-item-drag-handle",{label:e})},columnDropCellDragHandle(e,t,s){return ae("ag-column-drop-cell-drag-handle",{source:e,area:t,label:s})},columnDropCellCancelButton(e,t,s){return ae("ag-column-drop-cell-cancel",{source:e,area:t,label:s})},columnDropArea(e,t){return ae("ag-column-drop-area",{source:e,name:t})},filterToolPanel(){return ae("ag-filter-panel")},filterToolPanelAddFilterButton(){return ae("ag-filter-panel-add-filter-button")},filterToolPanelFilterTypeSelector(e){return ae("ag-filter-panel-filter-type-selector",{colLabel:e})},filterToolPanelSearchInput(){return ae("ag-filter-toolpanel-search-input")},filterToolPanelGroup(e){return ae("ag-filter-toolpanel-group",{title:e})},filterToolPanelGroupCollapsedIcon(e){return ae("ag-filter-toolpanel-group-collapsed-icon",{title:e})},statusBarTotalAndFilteredRowCount(){return ae("ag-status-bar-total-and-filtered-row-count")},statusBarTotalRowCount(){return ae("ag-status-bar-total-row-count")},statusBarFilteredRowCount(){return ae("ag-status-bar-filtered-row-count")},statusBarSelectedRowCount(){return ae("ag-status-bar-selected-row-count")},statusBarAggregations(){return ae("ag-status-bar-aggregations")},paginationPanelSizePickerDisplay(e){return ae("ag-pagination-page-size-picker-field-display",{value:e})},paginationPanelFirstRowOnPage(e){return ae("ag-paging-row-summary-panel-first-row-on-page",{value:e})},paginationPanelLastRowOnPage(e){return ae("ag-paging-row-summary-panel-last-row-on-page",{value:e})},paginationPanelRecordCount(e){return ae("ag-paging-row-summary-panel-record-count",{value:e})},paginationSummaryPanelButton(e){return ae("ag-paging-page-summary-panel-btn",{label:e})},paginationSummaryPanelCurrentPage(e){return ae("ag-paging-page-summary-panel-current-page",{value:e})},paginationSummaryPanelTotalPage(e){return ae("ag-paging-page-summary-panel-total-page",{value:e})},fillHandle(){return ae("ag-fill-handle")},columnChooserCloseButton(){return ae("ag-column-chooser-close-button")},columnChooserSearchBarCheckbox(){return ae("ag-column-chooser-header-checkbox")},columnChooserSearchBarFilter(){return ae("ag-column-chooser-searchbar-filter")},columnChooserListItemGroupClosedIcon(e){return ae("ag-column-chooser-list-item-group-closed-icon",{label:e})},columnChooserListItemCheckbox(e){return ae("ag-column-chooser-list-item-checkbox",{label:e})},columnChooserListItemDragHandle(e){return ae("ag-column-chooser-list-item-drag-handle",{label:e})},overlay(){return ae("ag-overlay")}},uv="data-testid";function ce(e,t){e?.setAttribute(uv,t)}function Wk(e){uv=e}var _k=class extends O{constructor(){super(...arguments),this.beanName="testIdSvc"}postConstruct(){const e=at(this,()=>this.setupAllTestIds(),500),t=at(this,()=>{this.setupAllTestIds(),e()},0);this.addManagedEventListeners({firstDataRendered:t,displayedRowsChanged:t,displayedColumnsChanged:t,displayedColumnsWidthChanged:t,virtualColumnsChanged:t,columnMenuVisibleChanged:t,contextMenuVisibleChanged:t,advancedFilterBuilderVisibleChanged:t,fieldPickerValueSelected:t,modelUpdated:t,sideBarUpdated:t,pinnedHeightChanged:t,gridReady:t,overlayExclusiveChanged:t,rowGroupOpened:t,scrollVisibilityChanged:t,gridSizeChanged:t,filterOpened:t,filterChanged:t,cellSelectionChanged:t})}setupAllTestIds(){const e=ts(this.beans),t=Zm(this.beans),s=e.querySelector(`[grid-id="${t}"]`);ce(s,ee.grid(t)),e.querySelectorAll(".ag-header-group-cell").forEach(n=>{ce(n,ee.headerGroupCell(n.getAttribute("col-id")))}),e.querySelectorAll(".ag-header-cell").forEach(n=>{const r=n.getAttribute("col-id"),l=n.classList.contains("ag-floating-filter")?ee.floatingFilter(r):ee.headerCell(r);ce(n,l),ce(n.querySelector(".ag-header-cell-filter-button"),ee.headerFilterButton(r)),ce(n.querySelector(".ag-header-cell-menu-button"),ee.headerCellMenuButton(r)),ce(n.querySelector(".ag-header-cell-resize"),ee.headerResizeHandle(r)),ce(n.querySelector(".ag-checkbox input[type=checkbox]"),ee.headerCheckbox(r)),ce(n.querySelector(".ag-floating-filter-button button"),ee.floatingFilterButton(r)),this.setupFilterInstance(n.querySelector(".ag-floating-filter-body"),{source:"floating-filter",colId:r})});const o=e.querySelector(".ag-filter-menu");this.setupFilterInstance(o,{source:"column-filter"}),ce(e.querySelector(".ag-advanced-filter input[type=text]"),ee.advancedFilterInput()),e.querySelectorAll(".ag-advanced-filter-buttons button").forEach(n=>{ce(n,ee.advancedFilterButton(n.textContent))}),ce(e.querySelector("button.ag-advanced-filter-builder-button"),ee.advancedFilterBuilderButton()),e.querySelectorAll('.ag-panel[aria-label="Advanced Filter"] .ag-panel-title-bar-button').forEach((n,r)=>{ce(n,r===0?ee.advancedFilterPanelMaximiseButton():ee.advancedFilterPanelCloseButton())}),e.querySelectorAll('.ag-panel[aria-lable="Advanced Filter"] .ag-advanced-filter-builder-pill').forEach(n=>{ce(n,ee.advancedFilterPill(n.querySelector(".ag-picker-field-display")?.textContent))}),ce(e.querySelector('.ag-panel[aria-label="Advanced Filter"] .ag-advanced-filter-builder-item-button'),ee.advancedFilterBuilderAddItemButton()),e.querySelectorAll(".ag-row").forEach(n=>{const r=n.getAttribute("row-id");ce(n,ee.rowNode(r)),n.querySelectorAll(".ag-cell").forEach(a=>{const l=a.getAttribute("col-id");ce(a,ee.cell(r,l)),ce(a.querySelector(".ag-selection-checkbox input[type=checkbox]"),ee.checkbox(r,l)),ce(a.querySelector(".ag-drag-handle"),ee.dragHandle(r,l)),ce(a.querySelector(".ag-group-contracted"),ee.groupContracted(r,l)),ce(a.querySelector(".ag-group-expanded"),ee.groupExpanded(r,l))})}),e.querySelectorAll(".ag-menu-list").forEach(n=>{ce(n,ee.menu()),n.querySelectorAll(".ag-menu-option").forEach(r=>{ce(r,ee.menuOption(r.querySelector(".ag-menu-option-text")?.textContent))})}),e.querySelectorAll(".ag-side-bar").forEach(n=>{ce(n,ee.sideBar()),n.querySelectorAll(".ag-side-button button").forEach(r=>{ce(r,ee.sideBarButton(r.querySelector(".ag-side-button-label")?.textContent))}),n.querySelectorAll(".ag-column-panel").forEach(r=>{ce(r,ee.columnToolPanel()),ce(r.querySelector(".ag-pivot-mode-select input[type=checkbox]"),ee.pivotModeSelect()),ce(r.querySelector(".ag-column-select-header-checkbox input[type=checkbox]"),ee.columnPanelSelectHeaderCheckbox()),ce(r.querySelector(".ag-column-select-header-filter-wrapper input[type=text]"),ee.columnPanelSelectHeaderFilter()),r.querySelectorAll(".ag-column-select-list").forEach(a=>{a.querySelectorAll(".ag-column-select-virtual-list-item").forEach(l=>{const c=l.getAttribute("aria-label");ce(l.querySelector(".ag-column-group-closed-icon"),ee.columnSelectListItemGroupClosedIcon(c)),ce(l.querySelector(".ag-column-select-checkbox input[type=checkbox]"),ee.columnSelectListItemCheckbox(c)),ce(l.querySelector(".ag-drag-handle"),ee.columnSelectListItemDragHandle(c))})}),this.setupColumnDropArea(r,"toolbar")}),n.querySelectorAll(".ag-filter-panel").forEach(r=>{ce(r,ee.filterToolPanel()),ce(r.querySelector("button.ag-filter-add-button"),ee.filterToolPanelAddFilterButton()),r.querySelectorAll(".ag-filter-card").forEach(a=>{const l=a.querySelector(".ag-filter-card-title")?.textContent,c=a.querySelector(".ag-filter-type-select");ce(c,ee.filterToolPanelFilterTypeSelector(l)),a.querySelectorAll(".ag-filter").forEach(d=>this.setupFilterInstance(d,{source:"filter-toolpanel",colLabel:l}))})}),n.querySelectorAll(".ag-filter-toolpanel").forEach(r=>{ce(r.querySelector(".ag-filter-toolpanel-search-input input[type=text]"),ee.filterToolPanelSearchInput()),r.querySelectorAll(".ag-filter-toolpanel-group").forEach(a=>{const l=a.querySelector(".ag-filter-toolpanel-group-title")?.textContent;ce(a,ee.filterToolPanelGroup(l)),ce(a.querySelector(".ag-filter-toolpanel-group-title-bar-icon .ag-icon-tree-closed"),ee.filterToolPanelGroupCollapsedIcon(l));const c=a.querySelector(".ag-filter-toolpanel-instance-filter");c&&this.setupFilterInstance(c,{source:"filter-toolpanel",colLabel:l})})})}),ce(e.querySelector(".ag-status-bar .ag-status-panel-total-and-filtered-row-count"),ee.statusBarTotalAndFilteredRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-total-row-count"),ee.statusBarTotalRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-filtered-row-count"),ee.statusBarFilteredRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-selected-row-count"),ee.statusBarSelectedRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-filtered-row-count"),ee.statusBarAggregations()),e.querySelectorAll(".ag-paging-panel").forEach(n=>{ce(n.querySelector(".ag-paging-page-size .ag-picker-field-display"),ee.paginationPanelSizePickerDisplay(n.querySelector(".ag-paging-page-size .ag-picker-field-display")?.textContent)),n.querySelectorAll(".ag-paging-row-summary-panel-number").forEach(r=>{switch(r.getAttribute("data-ref")){case"lbFirstRowOnPage":ce(r,ee.paginationPanelFirstRowOnPage(r.textContent));break;case"lbLastRowOnPage":ce(r,ee.paginationPanelLastRowOnPage(r.textContent));break;case"lbRecordCount":ce(r,ee.paginationPanelRecordCount(r.textContent));break}}),n.querySelectorAll(".ag-paging-page-summary-panel .ag-button").forEach(r=>{ce(r,ee.paginationSummaryPanelButton(r.getAttribute("aria-label")?.toLowerCase()))}),n.querySelectorAll(".ag-paging-page-summary-panel .ag-paging-number").forEach(r=>{switch(r.getAttribute("data-ref")){case"lbCurrent":ce(r,ee.paginationSummaryPanelCurrentPage(r.textContent));break;case"lbTotal":ce(r,ee.paginationSummaryPanelTotalPage(r.textContent));break}})}),ce(e.querySelector(".ag-fill-handle"),ee.fillHandle()),e.querySelectorAll('.ag-panel[aria-label="Choose Columns"]').forEach(n=>{ce(n.querySelector(".ag-panel-title-bar-button-icon"),ee.columnChooserCloseButton()),ce(n.querySelector('.ag-column-select-header-checkbox input[type="checkbox"]'),ee.columnChooserSearchBarCheckbox()),ce(n.querySelector('.ag-column-select-header-filter-wrapper input[type="text"]'),ee.columnChooserSearchBarFilter()),n.querySelectorAll(".ag-column-select-list").forEach(r=>{r.querySelectorAll(".ag-column-select-virtual-list-item").forEach(a=>{const l=a.getAttribute("aria-label");ce(a.querySelector(".ag-column-group-closed-icon"),ee.columnChooserListItemGroupClosedIcon(l)),ce(a.querySelector(".ag-column-select-checkbox input[type=checkbox]"),ee.columnChooserListItemCheckbox(l)),ce(a.querySelector(".ag-drag-handle"),ee.columnChooserListItemDragHandle(l))})})}),ce(e.querySelector(".ag-overlay-wrapper"),ee.overlay());const i=e.querySelector(".ag-column-drop-wrapper");i&&this.setupColumnDropArea(i,"panel")}setupFilterInstance(e,t){if(!e)return;e.querySelectorAll(".ag-filter-select .ag-picker-field-display").forEach(r=>{ce(r,ee.filterInstancePickerDisplay(t))});const s=e.querySelector('.ag-filter-body input[type="number"]');ce(s,ee.numberFilterInstanceInput(t));const o=e.querySelector('.ag-filter-body input[type="text"]');ce(o,ee.textFilterInstanceInput(t));const i=e.querySelector('.ag-filter-body input[type="date"]');ce(i,ee.dateFilterInstanceInput(t));const n=e.querySelector('.ag-mini-filter input[type="text"]');ce(n,ee.setFilterInstanceMiniFilterInput(t)),e.querySelectorAll(".ag-set-filter-list .ag-set-filter-item").forEach(r=>{const a=r.querySelector(".ag-checkbox-label")?.textContent,l=r.querySelector('input[type="checkbox"]');ce(l,ee.setFilterInstanceItem(t,a))}),e.querySelectorAll(".ag-filter-apply-panel button").forEach(r=>{ce(r,ee.setFilterApplyPanelButton(t,r.textContent))}),e.querySelectorAll(".ag-filter-condition .ag-radio-button").forEach(r=>{const a=r.querySelector(".ag-radio-button-label")?.textContent;ce(r.querySelector("input[type=radio]"),ee.filterConditionRadioButton(t,a))})}setupColumnDropArea(e,t){e.querySelectorAll(".ag-column-drop").forEach(s=>{const o=s.querySelector(".ag-column-drop-list")?.getAttribute("aria-label");ce(s,ee.columnDropArea(t,o)),s.querySelectorAll(".ag-column-drop-cell").forEach(i=>{const n=i.querySelector(".ag-column-drop-cell-text")?.textContent;ce(i.querySelector(".ag-drag-handle"),ee.columnDropCellDragHandle(t,o,n)),ce(i.querySelector(".ag-column-drop-cell-button .ag-icon-cancel"),ee.columnDropCellCancelButton(t,o,n))})})}},jk={moduleName:"Testing",version:Y,beans:[_k]};function Uk({testIdAttribute:e}={}){e&&Wk(e),Mf.registerModules([jk])}var Ct=g.createContext({}),hv=g.createContext("default"),Cr=(e,t,s,o)=>{if(!e||e.componentFromFramework||t.isDestroyed())return;const n=e.newAgStackInstance();let r,a,l=!1;return n.then(c=>{if(l){t.destroyBean(c);return}r=c,a=r.getGui(),s.appendChild(a),ap(o,r)}),()=>{l=!0,r&&(a?.remove(),t.destroyBean(r),o&&ap(o,void 0))}},ap=(e,t)=>{if(e)if(e instanceof Function)e(t);else{const s=e;s.current=t}},qt=(...e)=>e.filter(s=>s!=null&&s!=="").join(" "),Qt=class gv{constructor(...t){this.classesMap={};for(const s of t)this.classesMap[s]=!0}setClass(t,s){if(!!this.classesMap[t]==s)return this;const i=new gv;return i.classesMap={...this.classesMap},i.classesMap[t]=s,i}toString(){return Object.keys(this.classesMap).filter(s=>this.classesMap[s]).join(" ")}},Ki=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()},jd=g.version?.split(".")[0],pv=jd==="16"||jd==="17";function $k(){return jd==="19"}var ma=!1;function qk(e){return ma||setTimeout(()=>ma=!1,0),ma=!0,e()}var ir=(e,t)=>{!pv&&e&&!ma?rr.flushSync(t):t()},Kk=e=>{pv?e():g.startTransition(e)};function Yk(e,t,s){return g.useSyncExternalStore?g.useSyncExternalStore(e,t):s}function _a(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 o=[],i=[],n=new Map,r=new Map;for(let a=0;a<t.length;a++){const l=t[a];r.set(l.instanceId,l)}for(let a=0;a<e.length;a++){const l=e[a];n.set(l.instanceId,l),r.has(l.instanceId)&&o.push(l)}for(let a=0;a<t.length;a++){const l=t[a],c=l.instanceId;n.has(c)||i.push(l)}return o.length===e.length&&i.length===0?e:o.length===0&&i.length===t.length?t:o.length===0?i:i.length===0?o:[...o,...i]}var fv=g.forwardRef((e,t)=>{const{registry:s,context:o}=g.useContext(Ct),i=g.useRef(null),n=g.useRef(null),r=g.useRef(null),a=g.useRef(null),l=g.useRef(null),c=g.useRef(),[d,u]=g.useState(),[h,p]=g.useState(),[f,C]=g.useState(),[v,w]=g.useState(()=>new Qt),[b,S]=g.useState(()=>new Qt("ag-hidden")),[y,x]=g.useState(()=>new Qt("ag-hidden")),[F,R]=g.useState(()=>new Qt("ag-invisible"));g.useImperativeHandle(t,()=>({refresh(){return!1}})),g.useLayoutEffect(()=>Cr(d,o,n.current),[d]);const E=g.useCallback(U=>{if(i.current=U,!U||o.isDestroyed()){c.current=o.destroyBean(c.current);return}const L={setInnerRenderer:(H,te)=>{u(H),C(te)},setChildCount:H=>p(H),toggleCss:(H,te)=>w(Q=>Q.setClass(H,te)),setContractedDisplayed:H=>x(te=>te.setClass("ag-hidden",!H)),setExpandedDisplayed:H=>S(te=>te.setClass("ag-hidden",!H)),setCheckboxVisible:H=>R(te=>te.setClass("ag-invisible",!H)),setCheckboxSpacing:H=>R(te=>te.setClass("ag-group-checkbox-spacing",H))},de=s.createDynamicBean("groupCellRendererCtrl",!0);de&&(c.current=o.createBean(de),c.current.init(L,U,r.current,a.current,l.current,fv,e))},[]),D=g.useMemo(()=>`ag-cell-wrapper ${v.toString()}`,[v]),P=g.useMemo(()=>`ag-group-expanded ${b.toString()}`,[b]),T=g.useMemo(()=>`ag-group-contracted ${y.toString()}`,[y]),M=g.useMemo(()=>`ag-group-checkbox ${F.toString()}`,[F]),k=d?.componentFromFramework,N=k?d.componentClass:void 0,A=d==null&&f!=null,W=Ui(f);return g.createElement("span",{className:D,ref:E,...e.colDef?{}:{role:c.current?.getCellAriaRole()}},g.createElement("span",{className:P,ref:a}),g.createElement("span",{className:T,ref:l}),g.createElement("span",{className:M,ref:r}),g.createElement("span",{className:"ag-group-value",ref:n},A?W:k?g.createElement(N,{...d.params}):null),g.createElement("span",{className:"ag-group-child-count"},h))}),lp=fv,Ju=g.createContext({setMethods:()=>{}}),Zk=e=>{const{initialProps:t,addUpdateCallback:s,CustomComponentClass:o,setMethods:i}=e,[{key:n,...r},a]=g.useState(t);return g.useEffect(()=>{s(l=>a(l))},[]),g.createElement(Ju.Provider,{value:{setMethods:i}},g.createElement(o,{key:n,...r}))},Xk=g.memo(Zk),Qk=0;function cp(){return`agPortalKey_${++Qk}`}var mv=class{constructor(e,t,s,o){this.portal=null,this.oldPortal=null,this.reactComponent=e,this.portalManager=t,this.componentType=s,this.suppressFallbackMethods=!!o,this.statelessComponent=this.isStateless(this.reactComponent),this.key=cp(),this.portalKey=cp(),this.instanceCreated=this.isStatelessComponent()?Ae.resolve(!1):new Ae(i=>{this.resolveInstanceCreated=i})}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}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 o=s[e];if(o)return o.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 Ae(t=>this.createReactComponent(t))}createOrUpdatePortal(e){this.isStatelessComponent()||(this.ref=t=>{this.componentInstance=t,this.resolveInstanceCreated?.(!0),this.resolveInstanceCreated=void 0},e.ref=this.ref),this.reactElement=this.createElement(this.reactComponent,{...e,key:this.key}),this.portal=rr.createPortal(this.reactElement,this.eParentElement,this.portalKey)}createElement(e,t){return g.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 gl(e,t,s){for(const o of e){const i=t[o];i&&(s[o]=i)}}var Wt=class extends mv{constructor(){super(...arguments),this.awaitUpdateCallback=new Ae(e=>{this.resolveUpdateCallback=e}),this.wrapperComponent=Xk}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 Ae(o=>{setTimeout(()=>{o()})})),this.resolveUpdateCallback()}})}setMethods(e){this.providedMethods=e,gl(this.getOptionalMethods(),this.providedMethods,this)}getOptionalMethods(){return[]}getProps(){return{...this.sourceParams,key:this.key,ref:this.ref}}refreshProps(){return this.updateCallback?this.updateCallback():new Ae(e=>this.awaitUpdateCallback.then(()=>{this.updateCallback().then(()=>e())}))}},Jk=class extends Wt{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},eA=class extends Wt{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}},tA=class extends Wt{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:o}=this;return e.label=t,e.icon=s,e.shake=o,e}},sA=class extends Wt{constructor(){super(...arguments),this.model=null,this.onModelChange=e=>this.updateModel(e),this.onUiChange=()=>this.sourceParams.filterModifiedCallback(),this.expectingNewMethods=!0,this.hasBeenActive=!1,this.awaitSetMethodsCallback=new Ae(e=>{this.resolveSetMethodsCallback=e})}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}afterGuiAttached(e){const t=this.providedMethods;t?t.afterGuiAttached?.(e):this.awaitSetMethodsCallback.then(()=>this.providedMethods?.afterGuiAttached?.(e))}getOptionalMethods(){return["afterGuiDetached","onNewRowsLoaded","getModelAsString","onAnyFilterChanged"]}setMethods(e){this.expectingNewMethods===!1&&this.hasBeenActive&&this.providedMethods?.doesFilterPass!==e?.doesFilterPass&&setTimeout(()=>{this.sourceParams.filterChangedCallback()}),this.expectingNewMethods=!1,super.setMethods(e),this.resolveSetMethodsCallback(),this.resolveFilterPassCallback?.(),this.resolveFilterPassCallback=void 0}updateModel(e){this.resolveFilterPassCallback?.();const t=new Ae(s=>{this.resolveFilterPassCallback=s});this.setModel(e).then(()=>{t.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,e}},oA=class extends Wt{constructor(){super(...arguments),this.awaitSetMethodsCallback=new Ae(e=>{this.resolveSetMethodsCallback=e})}refresh(e){return this.sourceParams=e,this.refreshProps(),!0}afterGuiAttached(e){const t=this.providedMethods;t?t.afterGuiAttached?.(e):this.awaitSetMethodsCallback.then(()=>this.providedMethods?.afterGuiAttached?.(e))}getOptionalMethods(){return["afterGuiDetached","onNewRowsLoaded","onAnyFilterChanged"]}setMethods(e){super.setMethods(e),this.resolveSetMethodsCallback()}};function Cv(e,t){e.parentFilterInstance(s=>{(s.setModel(t)||Ae.resolve()).then(()=>{e.filterParams.filterChangedCallback()})})}var iA=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){gl(this.getOptionalMethods(),e,this)}getOptionalMethods(){return["afterGuiAttached"]}updateModel(e){this.model=e,this.refreshProps(),Cv(this.floatingFilterParams,e)}},nA=class extends Wt{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(),Cv(this.sourceParams,e)}getProps(){const e=super.getProps();return e.model=this.model,e.onModelChange=this.onModelChange,e}},rA=class extends Wt{refresh(e){this.sourceParams=e,this.refreshProps()}getOptionalMethods(){return["afterGuiAttached"]}},aA=class extends Wt{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},lA=class extends Wt{refresh(e){this.sourceParams=e,this.refreshProps()}},cA=class extends Wt{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}},dA=class extends Wt{refresh(e){this.sourceParams=e,this.refreshProps()}},uA=class extends Wt{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},hA=class extends Wt{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 eh(){z(231)}var gA=1e3,pA=class{constructor(e,t,s){this.destroyed=!1,this.portals=[],this.hasPendingPortalUpdate=!1,this.wrappingElement=t||"div",this.refresher=e,this.maxComponentCreationTimeMs=s||gA}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){ir(!0,()=>this.refresher()),e.rendered()&&t(e);return}window.setTimeout(()=>{this.waitForInstance(e,t,s)})}}},fA=({ctrl:e})=>{const t=e.isAlive(),{context:s}=g.useContext(Ct),[o,i]=g.useState(),[n,r]=g.useState(),a=g.useRef(),l=g.useRef(null),c=g.useRef(null),d=g.useRef(null),u=g.useRef(),h=g.useRef();t&&!h.current&&(h.current=new hr(()=>l.current));const p=g.useCallback(w=>{if(l.current=w,!w||!e.isAlive()||s.isDestroyed()){a.current=s.destroyBean(a.current);return}a.current=s.createBean(new $i);const b=()=>{const y=e.getSelectAllGui();y&&(c.current?.insertAdjacentElement("afterend",y),a.current.addDestroyFunc(()=>y.remove()))},S={setWidth:y=>{l.current&&(l.current.style.width=y)},toggleCss:(y,x)=>h.current.toggleCss(y,x),setUserStyles:y=>r(y),setAriaSort:y=>{l.current&&(y?mS(l.current,y):CS(l.current))},setUserCompDetails:y=>i(y),getUserCompInstance:()=>u.current||void 0,refreshSelectAllGui:b,removeSelectAllGui:()=>e.getSelectAllGui()?.remove()};e.setComp(S,w,c.current,d.current,a.current),b()},[]);g.useLayoutEffect(()=>Cr(o,s,d.current,u),[o]),g.useEffect(()=>{e.setDragSource(l.current)},[o]);const f=g.useMemo(()=>!!(o?.componentFromFramework&&Ki(o.componentClass)),[o]),C=o?.componentFromFramework,v=o?.componentClass;return g.createElement("div",{ref:p,style:n,className:"ag-header-cell",role:"columnheader"},g.createElement("div",{ref:c,className:"ag-header-cell-resize",role:"presentation"}),g.createElement("div",{ref:d,className:"ag-header-cell-comp-wrapper",role:"presentation"},C?f?g.createElement(v,{...o.params}):g.createElement(v,{...o.params,ref:u}):null))},mA=g.memo(fA),CA=class{constructor(e,t){this.floatingFilterParams=e,this.refreshProps=t}getProps(){return this.floatingFilterParams}refresh(e){this.floatingFilterParams=e,this.refreshProps()}setMethods(e){gl(this.getOptionalMethods(),e,this)}getOptionalMethods(){return["afterGuiAttached"]}},vA=({ctrl:e})=>{const{context:t,gos:s}=g.useContext(Ct),[o,i]=g.useState(),[n,r]=g.useState(()=>new Qt("ag-header-cell","ag-floating-filter")),[a,l]=g.useState(()=>new Qt),[c,d]=g.useState(()=>new Qt("ag-floating-filter-button","ag-hidden")),[u,h]=g.useState("false"),[p,f]=g.useState(),[,C]=g.useState(1),v=g.useRef(),w=g.useRef(null),b=g.useRef(null),S=g.useRef(null),y=g.useRef(null),x=g.useRef(),F=g.useRef(),R=H=>{H!=null&&x.current&&x.current(H)},E=g.useCallback(H=>{if(w.current=H,!H||!e.isAlive()||t.isDestroyed()){v.current=t.destroyBean(v.current);return}v.current=t.createBean(new $i),F.current=new Ae(Q=>{x.current=Q});const te={toggleCss:(Q,J)=>r(fe=>fe.setClass(Q,J)),setUserStyles:Q=>i(Q),addOrRemoveBodyCssClass:(Q,J)=>l(fe=>fe.setClass(Q,J)),setButtonWrapperDisplayed:Q=>{d(J=>J.setClass("ag-hidden",!Q)),h(Q?"false":"true")},setWidth:Q=>{w.current&&(w.current.style.width=Q)},setCompDetails:Q=>f(Q),getFloatingFilterComp:()=>F.current?F.current:null,setMenuIcon:Q=>y.current?.appendChild(Q)};e.setComp(te,H,y.current,b.current,v.current)},[]);g.useLayoutEffect(()=>Cr(p,t,b.current,R),[p]);const D=g.useMemo(()=>n.toString(),[n]),P=g.useMemo(()=>a.toString(),[a]),T=g.useMemo(()=>c.toString(),[c]),M=g.useMemo(()=>!!(p&&p.componentFromFramework&&Ki(p.componentClass)),[p]),k=g.useMemo(()=>s.get("reactiveCustomComponents"),[]),N=g.useMemo(()=>s.get("enableFilterHandlers"),[]),[A,W]=g.useState();g.useEffect(()=>{if(p?.componentFromFramework)if(k){const H=N?CA:iA,te=new H(p.params,()=>C(Q=>Q+1));R(te),W(te)}else eh()},[p]);const U=A?.getProps(),L=p?.componentFromFramework,de=p?.componentClass;return g.createElement("div",{ref:E,style:o,className:D,role:"gridcell"},g.createElement("div",{ref:b,className:P,role:"presentation"},L?k?U&&g.createElement(Ju.Provider,{value:{setMethods:H=>A.setMethods(H)}},g.createElement(de,{...U})):g.createElement(de,{...p.params,ref:M?()=>{}:R}):null),g.createElement("div",{ref:S,"aria-hidden":u,className:T,role:"presentation"},g.createElement("button",{ref:y,type:"button",className:"ag-button ag-floating-filter-button-button",tabIndex:-1})))},wA=g.memo(vA),bA=({ctrl:e})=>{const{context:t}=g.useContext(Ct),[s,o]=g.useState(),[i,n]=g.useState(()=>new Qt),[r,a]=g.useState(()=>new Qt),[l,c]=g.useState("false"),[d,u]=g.useState(),[h,p]=g.useState(),f=g.useRef(),C=g.useRef(null),v=g.useRef(null),w=g.useRef(null),b=g.useRef(),S=g.useCallback(D=>{if(C.current=D,!D||!e.isAlive()||t.isDestroyed()){f.current=t.destroyBean(f.current);return}f.current=t.createBean(new $i);const P={setWidth:T=>{C.current&&(C.current.style.width=T)},toggleCss:(T,M)=>n(k=>k.setClass(T,M)),setUserStyles:T=>o(T),setHeaderWrapperHidden:T=>{const M=w.current;M&&(T?M.style.setProperty("display","none"):M.style.removeProperty("display"))},setHeaderWrapperMaxHeight:T=>{const M=w.current;M&&(T!=null?M.style.setProperty("max-height",`${T}px`):M.style.removeProperty("max-height"),M.classList.toggle("ag-header-cell-comp-wrapper-limited-height",T!=null))},setUserCompDetails:T=>p(T),setResizableDisplayed:T=>{a(M=>M.setClass("ag-hidden",!T)),c(T?"false":"true")},setAriaExpanded:T=>u(T),getUserCompInstance:()=>b.current||void 0};e.setComp(P,D,v.current,w.current,f.current)},[]);g.useLayoutEffect(()=>Cr(h,t,w.current),[h]),g.useEffect(()=>{C.current&&e.setDragSource(C.current)},[h]);const y=g.useMemo(()=>!!(h?.componentFromFramework&&Ki(h.componentClass)),[h]),x=g.useMemo(()=>"ag-header-group-cell "+i.toString(),[i]),F=g.useMemo(()=>"ag-header-cell-resize "+r.toString(),[r]),R=h?.componentFromFramework,E=h?.componentClass;return g.createElement("div",{ref:S,style:s,className:x,role:"columnheader","aria-expanded":d},g.createElement("div",{ref:w,className:"ag-header-cell-comp-wrapper",role:"presentation"},R?y?g.createElement(E,{...h.params}):g.createElement(E,{...h.params,ref:b}):null),g.createElement("div",{ref:v,"aria-hidden":l,className:F}))},SA=g.memo(bA),yA=({ctrl:e})=>{const{gos:t,context:s}=g.useContext(Ct),{topOffset:o,rowHeight:i}=g.useMemo(()=>e.getTopAndHeight(),[]),n=g.useMemo(()=>t.get("tabIndex"),[]),[r,a]=g.useState(()=>e.getAriaRowIndex()),l=e.headerRowClass,[c,d]=g.useState(()=>i+"px"),[u,h]=g.useState(()=>o+"px"),p=g.useRef(null),[f,C]=g.useState(()=>e.getUpdatedHeaderCtrls()),v=g.useRef(),w=g.useRef(null),b=g.useCallback(x=>{if(w.current=x,!x||!e.isAlive()||s.isDestroyed()){v.current=s.destroyBean(v.current);return}v.current=s.createBean(new $i);const F={setHeight:R=>d(R),setTop:R=>h(R),setHeaderCtrls:(R,E,D)=>{const P=p.current,T=_a(P,R,E);T!==P&&(p.current=T,ir(D,()=>C(T)))},setWidth:R=>{w.current&&(w.current.style.width=R)},setRowIndex:R=>{a(R)}};e.setComp(F,v.current,!1)},[]),S=g.useMemo(()=>({height:c,top:u}),[c,u]),y=g.useCallback(x=>{switch(e.type){case"group":return g.createElement(SA,{ctrl:x,key:x.instanceId});case"filter":return g.createElement(wA,{ctrl:x,key:x.instanceId});default:return g.createElement(mA,{ctrl:x,key:x.instanceId})}},[]);return g.createElement("div",{ref:b,className:l,role:"row",style:S,tabIndex:n,"aria-rowindex":r},f.map(y))},xA=g.memo(yA),RA=({pinned:e})=>{const[t,s]=g.useState(!0),[o,i]=g.useState([]),{context:n}=g.useContext(Ct),r=g.useRef(null),a=g.useRef(null),l=g.useRef(),c=e==="left",d=e==="right",u=!c&&!d,h=g.useCallback(C=>{if(r.current=C,!C||n.isDestroyed()){l.current=n.destroyBean(l.current);return}l.current=n.createBean(new tF(e));const v={setDisplayed:s,setCtrls:w=>i(w),setCenterWidth:w=>{a.current&&(a.current.style.width=w)},setViewportScrollLeft:w=>{r.current&&(r.current.scrollLeft=w)},setPinnedContainerWidth:w=>{r.current&&(r.current.style.width=w,r.current.style.minWidth=w,r.current.style.maxWidth=w)}};l.current.setComp(v,r.current)},[]),p=t?"":"ag-hidden",f=()=>o.map(C=>g.createElement(xA,{ctrl:C,key:C.instanceId}));return c?g.createElement("div",{ref:h,className:"ag-pinned-left-header "+p,"aria-hidden":!t,role:"rowgroup"},f()):d?g.createElement("div",{ref:h,className:"ag-pinned-right-header "+p,"aria-hidden":!t,role:"rowgroup"},f()):u?g.createElement("div",{ref:h,className:"ag-header-viewport "+p,role:"rowgroup",tabIndex:-1},g.createElement("div",{ref:a,className:"ag-header-container",role:"presentation"},f())):null},zc=g.memo(RA),FA=()=>{const[e,t]=g.useState(()=>new Qt),[s,o]=g.useState(),{context:i}=g.useContext(Ct),n=g.useRef(null),r=g.useRef(),a=g.useCallback(d=>{if(n.current=d,!d||i.isDestroyed()){r.current=i.destroyBean(r.current);return}r.current=i.createBean(new X2);const u={toggleCss:(h,p)=>t(f=>f.setClass(h,p)),setHeightAndMinHeight:h=>o(h)};r.current.setComp(u,d,d)},[]),l=g.useMemo(()=>"ag-header "+e.toString(),[e]),c=g.useMemo(()=>({height:s,minHeight:s}),[s]);return g.createElement("div",{ref:a,className:l,style:c,role:"presentation"},g.createElement(zc,{pinned:"left"}),g.createElement(zc,{pinned:null}),g.createElement(zc,{pinned:"right"}))},EA=g.memo(FA),DA=(e,t)=>{g.useEffect(()=>{const s=t.current;if(s){const o=s.parentElement;if(o){const i=document.createComment(e);return o.insertBefore(i,s),()=>{i.remove()}}}},[e])},wo=DA,PA=class{constructor(e,t){this.cellEditorParams=e,this.refreshProps=t,this.instanceCreated=new Ae(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){gl(this.getOptionalMethods(),e,this)}getInstance(){return this.instanceCreated.then(()=>this.componentInstance)}setRef(e){this.componentInstance=e,this.resolveInstanceCreated?.(),this.resolveInstanceCreated=void 0}getOptionalMethods(){return["isCancelBeforeStart","isCancelAfterEnd","focusIn","focusOut","afterGuiAttached","getValidationErrors","getValidationElement"]}updateValue(e){this.value=e,this.refreshProps()}},TA=e=>{const t=g.useRef(e),s=g.useRef(),o=g.useRef(!1),i=g.useRef(!1),[,n]=g.useState(0);o.current&&(i.current=!0),g.useEffect(()=>(o.current||(s.current=t.current(),o.current=!0),n(r=>r+1),()=>{i.current&&s.current?.()}),[])},MA=e=>{const[t,s]=g.useState(),o=g.useContext(Ct),{context:i,popupSvc:n,gos:r,editSvc:a}=o,{editDetails:l,cellCtrl:c,eParentCell:d}=e;return TA(()=>{const{compDetails:u}=l,h=r.get("stopEditingWhenCellsLoseFocus");let p,f;if(!i.isDestroyed()){f=i.createBean(a.createPopupEditorWrapper(u.params));const C=f.getGui();if(e.jsChildComp){const x=e.jsChildComp.getGui();x&&C.appendChild(x)}const{column:v,rowNode:w}=c,b={column:v,rowNode:w,type:"popupCellEditor",eventSource:d,ePopup:C,position:l.popupPosition,keepWithinBounds:!0},S=n?.positionPopupByComponent.bind(n,b),y=n?.addPopup({modal:h,eChild:C,closeOnEsc:!0,closedCallback:()=>{c.onPopupEditorClosed()},anchorToElement:d,positionCallback:S,ariaOwns:d});p=y?y.hideFunc:void 0,s(f),e.jsChildComp?.afterGuiAttached?.()}return()=>{p?.(),i.destroyBean(f)}}),g.useLayoutEffect(()=>()=>{c.isCellFocused()&&t?.getGui().contains(Ze(o))&&d.focus({preventScroll:!0})},[t]),t&&e.wrappedContent?rr.createPortal(e.wrappedContent,t.getGui()):null},dp=g.memo(MA),IA=(e,t,s)=>{const{compProxy:o}=e;s(o);const i=o.getProps(),n=Ki(t);return g.createElement(Ju.Provider,{value:{setMethods:r=>o.setMethods(r)}},n?g.createElement(t,{...i}):g.createElement(t,{...i,ref:r=>o.setRef(r)}))},up=(e,t,s)=>e.compProxy?IA(e,t,s):g.createElement(t,{...e.compDetails.params,ref:s}),kA=(e,t,s,o,i)=>{const n=e.compDetails,r=n.componentClass,a=n.componentFromFramework&&!e.popup,l=n.componentFromFramework&&e.popup,c=!n.componentFromFramework&&e.popup;return a?up(e,r,t):l?g.createElement(dp,{editDetails:e,cellCtrl:o,eParentCell:s,wrappedContent:up(e,r,t)}):c&&i?g.createElement(dp,{editDetails:e,cellCtrl:o,eParentCell:s,jsChildComp:i}):null},AA=(e,t,s,o,i,n)=>{const{context:r}=g.useContext(Ct),a=g.useCallback(()=>{const l=i.current;if(!l)return;const c=l.getGui();c&&c.parentElement&&c.remove(),r.destroyBean(l),i.current=void 0},[]);g.useEffect(()=>{const l=e!=null,c=e?.compDetails&&!e.compDetails.componentFromFramework,d=t&&s==null;if(!(l&&c&&!d)){a();return}const h=e.compDetails;if(i.current){const f=i.current,v=f.refresh!=null&&e.force==!1?f.refresh(h.params):!1;if(v===!0||v===void 0)return;a()}h.newAgStackInstance().then(f=>{if(!f)return;const C=f.getGui();if(!C)return;(t?s:n.current).appendChild(C),i.current=f})},[e,t,o]),g.useEffect(()=>a,[])},vv=AA,LA=({cellCtrl:e,parent:t})=>{const s=g.useRef(),o=g.useMemo(()=>{const{loadingComp:i}=e.getDeferLoadingCellRenderer();return i?{value:void 0,compDetails:i,force:!1}:void 0},[e]);if(vv(o,!1,void 0,1,s,t),o?.compDetails?.componentFromFramework){const i=o.compDetails.componentClass;return g.createElement(i,{...o.compDetails.params})}return g.createElement(g.Fragment,null)},OA=({cellCtrl:e,printLayout:t,editingCell:s})=>{const o=g.useContext(Ct),{context:i}=o,{column:{colIdSanitised:n},instanceId:r}=e,a=g.useRef(),[l,c]=g.useState(()=>e.isCellRenderer()?void 0:{compDetails:void 0,value:e.getValueToDisplay(),force:!1}),[d,u]=g.useState(),[h,p]=g.useState(1),[f,C]=g.useState(),[v,w]=g.useState(!1),[b,S]=g.useState(!1),[y,x]=g.useState(!1),[F,R]=g.useState(),E=g.useMemo(()=>e.isForceWrapper(),[e]),D=g.useMemo(()=>e.getCellAriaRole(),[e]),P=g.useRef(null),T=g.useRef(null),M=g.useRef(null),k=g.useRef(),N=g.useRef(),A=g.useRef(),W=g.useRef([]),U=g.useRef(),L=g.useRef(),[de,H]=g.useState(0),te=g.useCallback(re=>{L.current=re,H(ve=>ve+1)},[]),Q=l!=null&&(v||y||b)&&(d==null||!!d.popup),J=E||Q,fe=g.useMemo(()=>e.getCellValueClass(),[e]),xe=g.useCallback(re=>{if(N.current=re,re){const ve=re.isCancelBeforeStart&&re.isCancelBeforeStart();setTimeout(()=>{ve?(e.stopEditing(!0),e.focusCell(!0)):(e.cellEditorAttached(),e.enableEditorTooltipFeature(re))})}},[e]),ne=g.useRef();ne.current||(ne.current=new hr(()=>P.current)),vv(l,J,L.current,de,k,P);const _=g.useRef();g.useLayoutEffect(()=>{const re=_.current,ve=l;if(_.current=l,re==null||re.compDetails==null||ve==null||ve.compDetails==null)return;U.current?.refreshVisibility();const Re=re.compDetails,Oe=ve.compDetails;if(Re.componentClass!=Oe.componentClass||M.current?.refresh==null)return;M.current.refresh(Oe.params)!=!0&&p(Pe=>Pe+1)},[l]),g.useLayoutEffect(()=>{if(!(d&&!d.compDetails.componentFromFramework)||i.isDestroyed())return;const ve=d.compDetails,Re=d.popup===!0,Oe=ve.newAgStackInstance();return Oe.then(me=>{if(!me)return;const Pe=me.getGui();xe(me),Re||((E?A:P).current?.appendChild(Pe),me.afterGuiAttached?.()),R(me)}),()=>{Oe.then(me=>{const Pe=me.getGui();e.disableEditorTooltipFeature(),i.destroyBean(me),xe(void 0),R(void 0),Pe?.remove()})}},[d]);const Fe=g.useCallback(re=>{if(A.current=re,!re||i.isDestroyed()||!e.isAlive()){const Oe=W.current;W.current=[];for(const me of Oe)me();return}let ve;const Re=Oe=>{Oe&&(re.insertAdjacentElement("afterbegin",Oe.getGui()),W.current.push(()=>{eo(Oe.getGui()),i.destroyBean(Oe),U.current===ve&&(U.current=void 0)}))};v&&Re(e.createSelectionCheckbox()),y&&Re(e.createDndSource()),b&&(ve=e.createRowDragComp(),U.current=ve,ve&&(Re(ve),ve.refreshVisibility()))},[e,i,y,b,v]),ie=g.useCallback(()=>{const re=!e.isCellSpanning()||T.current,ve=P.current;if(!ve||!re||!e||!e.isAlive()||i.isDestroyed()){a.current=i.destroyBean(a.current);return}a.current=i.createBean(new $i);const Re={toggleCss:(me,Pe)=>ne.current.toggleCss(me,Pe),setUserStyles:me=>C(me),getFocusableElement:()=>P.current,setIncludeSelection:me=>w(me),setIncludeRowDrag:me=>S(me),setIncludeDndSource:me=>x(me),getCellEditor:()=>N.current??null,getCellRenderer:()=>M.current??k.current,getParentOfValue:()=>L.current??A.current??P.current,setRenderDetails:(me,Pe,_e)=>{const Ge=()=>{c(We=>We?.compDetails!==me||We?.value!==Pe||We?.force!==_e?{value:Pe,compDetails:me,force:_e}:We)};if(me?.params?.deferRender&&!e.rowNode.group){const{loadingComp:We,onReady:_t}=e.getDeferLoadingCellRenderer();if(We){c({value:void 0,compDetails:We,force:!1}),_t.then(()=>Kk(Ge));return}}Ge()},setEditDetails:(me,Pe,_e,Ge)=>{if(me){let We;me.componentFromFramework&&(Ge?We=new PA(me.params,()=>p(_t=>_t+1)):eh()),u({compDetails:me,popup:Pe,popupPosition:_e,compProxy:We}),Pe||c(void 0)}else e.hasBrowserFocus()&&Re.getFocusableElement().focus({preventScroll:!0}),N.current=void 0,u(void 0)},refreshEditStyles:(me,Pe)=>{if(!P.current)return;const{current:_e}=ne;_e.toggleCss("ag-cell-value",!J),_e.toggleCss("ag-cell-inline-editing",!!me&&!Pe),_e.toggleCss("ag-cell-popup-editing",!!me&&!!Pe),_e.toggleCss("ag-cell-not-inline-editing",!me||!!Pe)}},Oe=A.current||void 0;e.setComp(Re,ve,T.current??void 0,Oe,t,s,a.current)},[]),$=g.useCallback(re=>{P.current=re,ie()},[]),q=g.useCallback(re=>{T.current=re,ie()},[]),se=g.useMemo(()=>!!(l?.compDetails?.componentFromFramework&&Ki(l.compDetails.componentClass)),[l]);g.useLayoutEffect(()=>{if(!P.current)return;const{current:re}=ne;re.toggleCss("ag-cell-value",!J),re.toggleCss("ag-cell-inline-editing",!!d&&!d.popup),re.toggleCss("ag-cell-popup-editing",!!d&&!!d.popup),re.toggleCss("ag-cell-not-inline-editing",!d||!!d.popup)});const G=()=>{const{compDetails:re,value:ve}=l;if(!re)return ve?.toString?.()??ve;if(re.componentFromFramework){const Re=re.componentClass;return g.createElement(g.Suspense,{fallback:g.createElement(LA,{cellCtrl:e,parent:P})},se?g.createElement(Re,{...re.params,key:h}):g.createElement(Re,{...re.params,key:h,ref:M}))}},pe=()=>{const re=()=>l==null?null:J?g.createElement("span",{role:"presentation",id:`cell-${r}`,className:fe,ref:te},G()):G(),ve=Re=>kA(Re,xe,P.current,e,F);return d!=null?d.popup?g.createElement(g.Fragment,null,re(),ve(d)):ve(d):re()},le=()=>g.createElement("div",{ref:$,style:f,role:D,"col-id":n},J?g.createElement("div",{className:"ag-cell-wrapper",role:"presentation",ref:Fe},pe()):pe());return e.isCellSpanning()?g.createElement("div",{ref:q,className:"ag-spanned-cell-wrapper",role:"presentation"},le()):le()},NA=g.memo(OA),HA=({rowCtrl:e,containerType:t})=>{const{context:s,gos:o,editSvc:i}=g.useContext(Ct),n=g.useContext(hv)==="default",r=g.useRef(),a=g.useRef(e.getDomOrder()),l=e.isFullWidth(),c=e.rowNode.displayed,[d,u]=g.useState(()=>c?e.rowNode.getRowIndexString():null),[h,p]=g.useState(()=>e.rowId),[f,C]=g.useState(()=>e.businessKey),[v,w]=g.useState(()=>e.rowStyles),b=g.useRef(null),[S,y]=g.useState(()=>null),[x,F]=g.useState(),[R,E]=g.useState(()=>c?e.getInitialRowTop(t):void 0),[D,P]=g.useState(()=>c?e.getInitialTransform(t):void 0),T=g.useRef(null),M=g.useRef(),k=g.useRef(),N=g.useRef(!1),[A,W]=g.useState(0);g.useEffect(()=>{if(N.current||!x||A>10)return;const $=T.current?.firstChild;$?(e.setupDetailRowAutoHeight($),N.current=!0):W(q=>q+1)},[x,A]);const U=g.useRef();U.current||(U.current=new hr(()=>T.current));const L=g.useRef(()=>{}),de=g.useCallback($=>(L.current=$,()=>{L.current=()=>{}}),[]),H=Yk(de,()=>b.current,[]),te=n?H:S,Q=g.useCallback($=>{if(T.current=$,r.current=$?s.createBean(new $i):s.destroyBean(r.current),!$){e.unsetComp(t);return}if(!e.isAlive()||s.isDestroyed())return;const q={setTop:E,setTransform:P,toggleCss:(se,G)=>U.current.toggleCss(se,G),setDomOrder:se=>a.current=se,setRowIndex:u,setRowId:p,setRowBusinessKey:C,setUserStyles:w,setCellCtrls:(se,G)=>{const pe=b.current,le=_a(pe,se,a.current);le!==pe&&(b.current=le,n?L.current():ir(G,()=>y(le)))},showFullWidth:se=>{k.current=se.params,F(se)},getFullWidthCellRenderer:()=>M.current,getFullWidthCellRendererParams:()=>k.current,refreshFullWidth:se=>{const G=se();return k.current=G,_.current?(F(pe=>({...pe,params:G})),!0):!M.current||!M.current.refresh?!1:M.current.refresh(G)}};e.setComp(q,$,t,r.current)},[]);g.useLayoutEffect(()=>Cr(x,s,T.current,M),[x]);const J=g.useMemo(()=>{const $={top:R,transform:D};return Object.assign($,v),$},[R,D,v]),fe=l&&x?.componentFromFramework,xe=!l&&te!=null,ne=g.useMemo(()=>!!(x?.componentFromFramework&&Ki(x.componentClass)),[x]),_=g.useRef(!1);g.useEffect(()=>{_.current=ne&&!!x&&!!o.get("reactiveCustomComponents")},[ne,x]);const Fe=()=>te?.map($=>g.createElement(NA,{cellCtrl:$,editingCell:i?.isEditing($,{withOpenEditor:!0})??!1,printLayout:e.printLayout,key:$.instanceId})),ie=()=>{const $=x.componentClass;return ne?g.createElement($,{...x.params}):g.createElement($,{...x.params,ref:M})};return g.createElement("div",{ref:Q,role:"row",style:J,"row-index":d,"row-id":h,"row-business-key":f},xe?Fe():fe?ie():null)},hp=g.memo(HA),GA=({name:e})=>{const{context:t,gos:s}=g.useContext(Ct),o=g.useMemo(()=>pr(e),[e]),i=g.useRef(null),n=g.useRef(null),r=g.useRef(null),a=g.useRef([]),l=g.useRef([]),[c,d]=g.useState(()=>[]),u=!!s.get("enableCellSpan")&&!!o.getSpannedRowCtrls,h=g.useRef([]),p=g.useRef([]),[f,C]=g.useState(()=>[]),v=g.useRef(!1),w=g.useRef(),b=g.useMemo(()=>qt("ag-viewport",Om(e)),[e]),S=g.useMemo(()=>qt(ua(e)),[e]),y=g.useMemo(()=>qt("ag-spanning-container",S2(e)),[e]),x=o.type==="center"||u,F=x?i:n;wo(" AG Row Container "+e+" ",F);const R=g.useCallback(()=>{const A=!x||i.current!=null,W=n.current!=null,U=!u||r.current!=null;return A&&W&&U},[]),E=g.useCallback(()=>i.current==null&&n.current==null&&r.current==null,[]),D=g.useCallback(()=>{if(E()&&(w.current=t.destroyBean(w.current)),!t.isDestroyed()&&R()){const A=L=>{const de=_a(l.current,a.current,v.current);de!==l.current&&(l.current=de,ir(L,()=>d(de)))},W=L=>{const de=_a(p.current,h.current,v.current);de!==p.current&&(p.current=de,ir(L,()=>C(de)))},U={setHorizontalScroll:L=>{i.current&&(i.current.scrollLeft=L)},setViewportHeight:L=>{i.current&&(i.current.style.height=L)},setRowCtrls:({rowCtrls:L,useFlushSync:de})=>{const H=!!de&&a.current.length>0&&L.length>0;a.current=L,A(H)},setSpannedRowCtrls:(L,de)=>{const H=!!de&&h.current.length>0&&L.length>0;h.current=L,W(H)},setDomOrder:L=>{v.current!=L&&(v.current=L,A(!1))},setContainerWidth:L=>{n.current&&(n.current.style.width=L)},setOffsetTop:L=>{n.current&&(n.current.style.transform=`translateY(${L})`)}};w.current=t.createBean(new I2(e)),w.current.setComp(U,n.current,r.current??void 0,i.current)}},[R,E]),P=g.useCallback(A=>{n.current=A,D()},[D]),T=g.useCallback(A=>{r.current=A,D()},[D]),M=g.useCallback(A=>{i.current=A,D()},[D]),k=()=>g.createElement("div",{className:S,ref:P,role:x?"presentation":"rowgroup"},c.map(A=>g.createElement(hp,{rowCtrl:A,containerType:o.type,key:A.instanceId})));if(!x)return k();const N=()=>g.createElement("div",{className:y,ref:T,role:"presentation"},f.map(A=>g.createElement(hp,{rowCtrl:A,containerType:o.type,key:A.instanceId})));return g.createElement("div",{className:b,ref:M,role:"rowgroup"},k(),u?N():null)},BA=g.memo(GA),VA=()=>{const e=g.useContext(Ct),{context:t,overlays:s}=e,[o,i]=g.useState(""),[n,r]=g.useState(0),[a,l]=g.useState(0),[c,d]=g.useState("0px"),[u,h]=g.useState("0px"),[p,f]=g.useState("100%"),[C,v]=g.useState("0px"),[w,b]=g.useState("0px"),[S,y]=g.useState("100%"),[x,F]=g.useState(!0),[R,E]=g.useState(!0),[D,P]=g.useState(null),[T,M]=g.useState(""),[k,N]=g.useState(null),[A,W]=g.useState("ag-layout-normal"),U=g.useRef();U.current||(U.current=new hr(()=>L.current));const L=g.useRef(null),de=g.useRef(null),H=g.useRef(null),te=g.useRef(null),Q=g.useRef(null),J=g.useRef(null),fe=g.useRef(null),xe=g.useRef([]),ne=g.useRef([]);wo(" AG Grid Body ",L),wo(" AG Pinned Top ",de),wo(" AG Sticky Top ",H),wo(" AG Middle ",J),wo(" AG Pinned Bottom ",fe);const _=g.useCallback(Pe=>{if(L.current=Pe,!Pe||t.isDestroyed()){xe.current=t.destroyBeans(xe.current);for(const B of ne.current)B();ne.current=[];return}const _e=(B,Ee)=>{B.appendChild(Ee),ne.current.push(()=>Ee.remove())},Ge=B=>{const Ee=t.createBean(new B);return xe.current.push(Ee),Ee},We=(B,Ee,It)=>{_e(B,document.createComment(It)),_e(B,Ge(Ee).getGui())};We(Pe,G2," AG Fake Horizontal Scroll ");const _t=s?.getOverlayWrapperCompClass();_t&&We(Pe,_t," AG Overlay Wrapper "),Q.current&&We(Q.current,V2," AG Fake Vertical Scroll ");const jt={setRowAnimationCssOnBodyViewport:i,setColumnCount:B=>{L.current&&pS(L.current,B)},setRowCount:B=>{L.current&&hS(L.current,B)},setTopHeight:r,setBottomHeight:l,setStickyTopHeight:d,setStickyTopTop:h,setStickyTopWidth:f,setTopInvisible:F,setBottomInvisible:E,setColumnMovingCss:(B,Ee)=>U.current.toggleCss(B,Ee),updateLayoutClasses:W,setAlwaysVerticalScrollClass:P,setPinnedTopBottomOverflowY:M,setCellSelectableCss:(B,Ee)=>N(Ee?B:null),setBodyViewportWidth:B=>{J.current&&(J.current.style.width=B)},registerBodyViewportResizeListener:B=>{if(J.current){const Ee=Bs(e,J.current,B);ne.current.push(()=>Ee())}},setStickyBottomHeight:v,setStickyBottomBottom:b,setStickyBottomWidth:y,setGridRootRole:B=>Pe.setAttribute("role",B)},as=t.createBean(new O2);xe.current.push(as),as.setComp(jt,Pe,J.current,de.current,fe.current,H.current,te.current)},[]),Fe=g.useMemo(()=>qt("ag-root","ag-unselectable",A),[A]),ie=g.useMemo(()=>qt("ag-body-viewport",o,A,D,k),[o,A,D,k]),$=g.useMemo(()=>qt("ag-body",A),[A]),q=g.useMemo(()=>qt("ag-floating-top",x?"ag-invisible":null,k),[k,x]),se=g.useMemo(()=>qt("ag-sticky-top",k),[k]),G=g.useMemo(()=>qt("ag-sticky-bottom",C==="0px"?"ag-invisible":null,k),[k,C]),pe=g.useMemo(()=>qt("ag-floating-bottom",R?"ag-invisible":null,k),[k,R]),le=g.useMemo(()=>({height:n,minHeight:n,overflowY:T}),[n,T]),re=g.useMemo(()=>({height:c,top:u,width:p}),[c,u,p]),ve=g.useMemo(()=>({height:C,bottom:w,width:S}),[C,w,S]),Re=g.useMemo(()=>({height:a,minHeight:a,overflowY:T}),[a,T]),Oe=Pe=>g.createElement(BA,{name:Pe,key:`${Pe}-container`}),me=({section:Pe,children:_e,className:Ge,style:We})=>g.createElement("div",{ref:Pe,className:Ge,role:"presentation",style:We},_e.map(Oe));return g.createElement("div",{ref:_,className:Fe},g.createElement(EA,null),me({section:de,className:q,style:le,children:["topLeft","topCenter","topRight","topFullWidth"]}),g.createElement("div",{className:$,ref:Q,role:"presentation"},me({section:J,className:ie,children:["left","center","right","fullWidth"]})),me({section:H,className:se,style:re,children:["stickyTopLeft","stickyTopCenter","stickyTopRight","stickyTopFullWidth"]}),me({section:te,className:G,style:ve,children:["stickyBottomLeft","stickyBottomCenter","stickyBottomRight","stickyBottomFullWidth"]}),me({section:fe,className:pe,style:Re,children:["bottomLeft","bottomCenter","bottomRight","bottomFullWidth"]}))},zA=g.memo(VA),WA=(e,t)=>{const{children:s,eFocusableElement:o,onTabKeyDown:i,gridCtrl:n,forceFocusOutWhenTabGuardsAreEmpty:r,isEmpty:a}=e,{context:l}=g.useContext(Ct),c=g.useRef(null),d=g.useRef(null),u=g.useRef(),h=w=>{const b=w==null?void 0:parseInt(w,10).toString();for(const S of[c,d])b===void 0?S.current?.removeAttribute("tabindex"):S.current?.setAttribute("tabindex",b)};g.useImperativeHandle(t,()=>({forceFocusOutOfContainer(w){u.current?.forceFocusOutOfContainer(w)}}));const p=g.useCallback(()=>{const w=c.current,b=d.current;if(!w&&!b||l.isDestroyed()){u.current=l.destroyBean(u.current);return}if(w&&b){const S={setTabIndex:h};u.current=l.createBean(new qm({comp:S,eTopGuard:w,eBottomGuard:b,eFocusableElement:o,onTabKeyDown:i,forceFocusOutWhenTabGuardsAreEmpty:r,focusInnerElement:y=>n.focusInnerElement(y),isEmpty:a}))}},[]),f=g.useCallback(w=>{c.current=w,p()},[p]),C=g.useCallback(w=>{d.current=w,p()},[p]),v=w=>{const b=w==="top"?Pi.TAB_GUARD_TOP:Pi.TAB_GUARD_BOTTOM;return g.createElement("div",{className:`${Pi.TAB_GUARD} ${b}`,role:"presentation",ref:w==="top"?f:C})};return g.createElement(g.Fragment,null,v("top"),s,v("bottom"))},_A=g.forwardRef(WA),jA=g.memo(_A),UA=({context:e})=>{const[t,s]=g.useState(""),[o,i]=g.useState(""),[n,r]=g.useState(null),[a,l]=g.useState(null),[c,d]=g.useState(!1),[u,h]=g.useState(),p=g.useRef(),f=g.useRef(null),C=g.useRef(),[v,w]=g.useState(null),b=g.useRef(()=>{}),S=g.useRef(),y=g.useRef([]),x=g.useCallback(()=>{},[]);wo(" AG Grid ",f);const F=g.useCallback(M=>{if(f.current=M,p.current=M?e.createBean(new HF):e.destroyBean(p.current),!M||e.isDestroyed())return;const k=p.current;b.current=k.focusInnerElement.bind(k);const N={destroyGridUi:()=>{},setRtlClass:s,forceFocusOutOfContainer:A=>{if(!A&&S.current?.isDisplayed()){S.current.forceFocusOutOfContainer(A);return}C.current?.forceFocusOutOfContainer(A)},updateLayoutClasses:i,getFocusableContainers:()=>{const A=[],W=f.current?.querySelector(".ag-root");W&&A.push({getGui:()=>W});for(const U of y.current)U.isDisplayed()&&A.push(U);return A},setCursor:r,setUserSelect:l};k.setComp(N,M,M),d(!0)},[]);g.useEffect(()=>{const M=p.current,k=f.current;if(!u||!M||!v||!k||e.isDestroyed())return;const N=[],{watermarkSelector:A,paginationSelector:W,sideBarSelector:U,statusBarSelector:L,gridHeaderDropZonesSelector:de}=M.getOptionalSelectors(),H=[];if(de){const Q=e.createBean(new de.component),J=Q.getGui();k.insertAdjacentElement("afterbegin",J),H.push(J),N.push(Q)}if(U){const Q=e.createBean(new U.component),J=Q.getGui(),fe=v.querySelector(".ag-tab-guard-bottom");fe&&(fe.insertAdjacentElement("beforebegin",J),H.push(J)),N.push(Q),y.current.push(Q)}const te=Q=>{const J=e.createBean(new Q),fe=J.getGui();return k.insertAdjacentElement("beforeend",fe),H.push(fe),N.push(J),J};if(L&&te(L.component),W){const Q=te(W.component);S.current=Q,y.current.push(Q)}return A&&te(A.component),()=>{e.destroyBeans(N);for(const Q of H)Q.remove()}},[u,v,e]);const R=g.useMemo(()=>qt("ag-root-wrapper",t,o),[t,o]),E=g.useMemo(()=>qt("ag-root-wrapper-body","ag-focus-managed",o),[o]),D=g.useMemo(()=>({userSelect:a??"",WebkitUserSelect:a??"",cursor:n??""}),[a,n]),P=g.useCallback(M=>{C.current=M,h(M!==null)},[]),T=g.useCallback(()=>!p.current?.isFocusable(),[]);return g.createElement("div",{ref:F,className:R,style:D,role:"presentation"},g.createElement("div",{className:E,ref:w,role:"presentation"},c&&v&&!e.isDestroyed()&&g.createElement(Ct.Provider,{value:e.getBeans()},g.createElement(jA,{ref:P,eFocusableElement:v,onTabKeyDown:x,gridCtrl:p.current,forceFocusOutWhenTabGuardsAreEmpty:!0,isEmpty:T},g.createElement(zA,null)))))},$A=g.memo(UA),qA=class extends O{postConstruct(){if(this.beans.colAutosize){const e=this.queueResizeOperationsForTick.bind(this);this.addManagedEventListeners({rowExpansionStateChanged:e,expandOrCollapseAll:e,cellValueChanged:e,rowNodeDataChanged:e,rowDataUpdated:e})}}queueResizeOperationsForTick(){const e=this.beans.colAutosize;e.shouldQueueResizeOperations=!0,setTimeout(()=>{e.processResizeOperations()},0)}areHeaderCellsRendered(){return this.beans.ctrlsSvc.getHeaderRowContainerCtrls().every(e=>e.getAllCtrls().every(t=>t.areCellsRendered()))}areCellsRendered(){return this.beans.rowRenderer.getAllRowCtrls().every(e=>e.isRowRendered()&&e.getAllCellCtrls().every(t=>!!t.eGui))}},wv={setGridApi:void 0,maxComponentCreationTimeMs:void 0,children:void 0},KA={gridOptions:void 0,modules:void 0,containerStyle:void 0,className:void 0,passGridApi:void 0,componentWrappingElement:void 0,...wv},bv=new Set(Object.keys(KA)),YA=new Set(Object.keys(wv)),Sv=e=>{const t=g.useRef(),s=g.useRef(null),o=g.useRef(null),i=g.useRef([]),n=g.useRef([]),r=g.useRef(e),a=g.useRef(),l=g.useRef(),c=g.useRef(!1),[d,u]=g.useState(void 0),[,h]=g.useState(0),p=g.useCallback(w=>{if(s.current=w,!w){for(const T of i.current)T();i.current.length=0;return}const b=e.modules||[];o.current||(o.current=new pA(()=>h(T=>T+1),e.componentWrappingElement,e.maxComponentCreationTimeMs),i.current.push(()=>{o.current?.destroy(),o.current=null}));const S=py(e.gridOptions,e,Object.keys(e).filter(T=>!bv.has(T))),y=()=>{if(c.current){const T=()=>a.current?.shouldQueueUpdates()?void 0:n.current.shift();let M=T();for(;M;)M(),M=T()}},x=new JA(y);a.current=x;const F=new qA,R={providedBeanInstances:{frameworkCompWrapper:new XA(o.current,S),renderStatus:F},modules:b,frameworkOverrides:x,setThemeOnGridDiv:!0},E=T=>{u(T),T.createBean(F),i.current.push(()=>{T.destroy()}),T.getBean("ctrlsSvc").whenReady({addDestroyFunc:M=>{i.current.push(M)}},()=>{if(T.isDestroyed())return;const M=t.current;M&&e.passGridApi?.(M)})},D=T=>{T.getBean("ctrlsSvc").whenReady({addDestroyFunc:M=>{i.current.push(M)}},()=>{for(const M of n.current)M();n.current.length=0,c.current=!0})},P=new c4;S.gridId??(S.gridId=l.current),t.current=P.create(w,S,E,D,R),i.current.push(()=>{t.current=void 0}),t.current&&(l.current=t.current.getGridId())},[]),f=g.useMemo(()=>({height:"100%",...e.containerStyle||{}}),[e.containerStyle]),C=g.useCallback(w=>{c.current&&!a.current?.shouldQueueUpdates()?w():n.current.push(w)},[]);g.useEffect(()=>{const w=ZA(r.current,e);r.current=e,C(()=>{t.current&&fy(w,t.current)})},[e]);const v=!g.useSyncExternalStore||ra(e,"renderingMode")==="legacy"?"legacy":"default";return g.createElement("div",{style:f,className:e.className,ref:p},g.createElement(hv.Provider,{value:v},d&&!d.isDestroyed()?g.createElement($A,{key:d.instanceId,context:d}):null,o.current?.getPortals()??null))};function ZA(e,t){const s={};for(const o of Object.keys(t)){if(bv.has(o)){YA.has(o)&&z(274,{prop:o});continue}const i=t[o];e[o]!==i&&(s[o]=i)}return s}var XA=class extends p4{constructor(e,t){super(),this.parent=e,this.gridOptions=t}createWrapper(e,t){const s=this.gridOptions;if(ra(s,"reactiveCustomComponents")){const r=(a=>{switch(a){case"filter":return ra(s,"enableFilterHandlers")?oA:sA;case"floatingFilterComponent":return ra(s,"enableFilterHandlers")?rA:nA;case"dateComponent":return eA;case"dragAndDropImageComponent":return tA;case"loadingOverlayComponent":return lA;case"noRowsOverlayComponent":return dA;case"statusPanel":return uA;case"toolPanel":return hA;case"menuItem":return cA;case"cellRenderer":return Jk;case"innerHeaderComponent":return aA}})(t.name);if(r)return new r(e,this.parent,t)}else switch(t.name){case"filter":case"floatingFilterComponent":case"dateComponent":case"dragAndDropImageComponent":case"loadingOverlayComponent":case"noRowsOverlayComponent":case"statusPanel":case"toolPanel":case"menuItem":case"cellRenderer":eh();break}const i=!t.cellRenderer&&t.name!=="toolPanel";return new mv(e,this.parent,t,i)}},QA=g.forwardRef((e,t)=>{const s=g.useContext(Ct),{registry:o,context:i,gos:n,rowModel:r}=s,[a,l]=g.useState(()=>new Qt),[c,d]=g.useState(()=>new Qt),[u,h]=g.useState(),[p,f]=g.useState(),C=g.useRef(),v=g.useRef(null),w=g.useRef(),b=g.useMemo(()=>$S(e.api.getGridId(),u?.rowModelType??"clientSide"),[e]),S=g.useMemo(()=>a.toString()+" ag-details-row",[a]),y=g.useMemo(()=>c.toString()+" ag-details-grid",[c]);t&&g.useImperativeHandle(t,()=>({refresh(){return C.current?.refresh()??!1}})),e.template&&z(230);const x=g.useCallback(R=>{if(v.current=R,!R||i.isDestroyed()){C.current=i.destroyBean(C.current),w.current?.();return}const E={toggleCss:(P,T)=>l(M=>M.setClass(P,T)),toggleDetailGridCss:(P,T)=>d(M=>M.setClass(P,T)),setDetailGrid:P=>h(P),setRowData:P=>f(P),getGui:()=>v.current},D=o.createDynamicBean("detailCellRendererCtrl",!0);if(D&&(i.createBean(D),D.init(E,e),C.current=D,n.get("detailRowAutoHeight"))){const P=()=>{if(v.current==null)return;const T=v.current.clientHeight;T!=null&&T>0&&setTimeout(()=>{e.node.setRowHeight(T),(Qe(n)||_o(n))&&r.onRowHeightChanged()},0)};w.current=Bs(s,R,P),P()}},[]),F=g.useCallback(R=>{C.current?.registerDetailWithMaster(R)},[]);return g.createElement("div",{className:S,ref:x},u&&g.createElement(Sv,{className:y,...u,modules:b,rowData:p,passGridApi:F}))}),JA=class extends Km{constructor(e){super("react"),this.processQueuedUpdates=e,this.queueUpdates=!1,this.renderingEngine="react",this.frameworkComponents={agGroupCellRenderer:lp,agGroupRowRenderer:lp,agDetailCellRenderer:QA},this.wrapIncoming=(t,s)=>s==="ensureVisible"?qk(t):t()}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 $k()}},e8=class extends g.Component{constructor(){super(...arguments),this.apiListeners=[],this.setGridApi=e=>{this.api=e;for(const t of this.apiListeners)t(e)}}registerApiListener(e){this.apiListeners.push(e)}componentWillUnmount(){this.apiListeners.length=0}render(){return g.createElement(Sv,{...this.props,passGridApi:this.setGridApi})}},yv=(e=>(e.Dropdown="dropdown",e.Menu="menu",e))(yv||{}),Ot=(e=>(e.Click="click",e.Hover="hover",e.ContextMenu="contextMenu",e))(Ot||{}),Vi=(e=>(e.Item="item",e.Divider="divider",e.PlainText="plainText",e))(Vi||{});const t8=ue("flex items-center gap-2 align-middle","h-auto px-0 bg-transparent border-0"),s8=ue("z-[53] overflow-auto rounded bg-layer-0 text-primary shadow focus-visible:outline-none"),o8=ue("flex w-full cursor-pointer items-center gap-3","focus-visible:border-none focus-visible:outline-none","hover:bg-accent-primary-alpha px-3","dial-small h-[34px] rounded text-primary"),i8="opacity-75 !cursor-not-allowed",n8="text-error",r8="my-1 border-t border-hover border-secondary",Rn=4,th=({ariaLabel:e,className:t,size:s=24,onClose:o,...i})=>m.jsx(no,{"aria-label":e,className:oe("text-secondary hover:enabled:text-accent-primary",t,"w-auto h-auto"),onClick:o,icon:m.jsx(V.IconX,{size:s}),...i}),Rt=({children:e,menu:t,renderOverlay:s,trigger:o=[Ot.Click],placement:i,disabled:n=!1,open:r,defaultOpen:a=!1,onOpenChange:l,closable:c=!1,onClose:d,className:u,listClassName:h,outsidePressIgnoreRef:p,outsideClosable:f=!0,allowedPlacements:C,anchorToMouse:v=!1,matchReferenceWidth:w=!0,maxDropdownHeight:b})=>{const[S,y]=g.useState(a),x=r!==void 0,F=x?!!r:S,R=g.useRef(null),E=g.useCallback(_=>{x||y(_),l?.(_)},[x,l]),D=g.useId(),P=i===void 0,T=_=>"clientWidth"in _?_.clientWidth:_.getBoundingClientRect?.()?.width??0,{refs:M,floatingStyles:k,context:N}=Ie.useFloating({placement:i,open:F,onOpenChange:E,whileElementsMounted:Ie.autoUpdate,middleware:[Ie.offset({mainAxis:Rn,crossAxis:0}),P?Ie.autoPlacement({alignment:"start",crossAxis:!0,padding:Rn,allowedPlacements:C}):Ie.flip({padding:Rn}),Ie.shift({padding:Rn}),Ie.size({padding:Rn,apply({availableWidth:_,availableHeight:Fe,elements:ie}){const $=ie.floating,q=T(ie.reference);$.style.setProperty("--fui-available-height",`${Math.floor(Fe)}px`),$.style.setProperty("--reference-width",w?`${Math.round(q)}px`:"0px"),w?$.style.minWidth=`${Math.round(q)}px`:$.style.removeProperty("min-width"),$.style.maxWidth=`${Math.floor(_)}px`;const se=Math.floor(Fe);$.style.maxHeight=`${b?Math.min(se,b):se}px`}})]}),A=Ie.useClick(N,{enabled:o.includes(Ot.Click)&&!n}),W=Ie.useHover(N,{enabled:o.includes(Ot.Hover)&&!n,move:!1,restMs:40,delay:{open:80,close:80}}),U=Ie.useDismiss(N,{bubbles:!0,referencePress:!1,outsidePress:_=>{if(!f)return!1;const Fe=_.target;return!(p?.current&&Fe instanceof Node&&p.current.contains(Fe))}}),L=Ie.useRole(N,{role:"menu"}),{getReferenceProps:de,getFloatingProps:H}=Ie.useInteractions([A,W,U,L]),te=g.useCallback((_,Fe)=>{M.setPositionReference({getBoundingClientRect:()=>({width:0,height:0,x:_,y:Fe,top:Fe,left:_,right:_,bottom:Fe})})},[M]),Q=g.useCallback(_=>{!o.includes(Ot.ContextMenu)||n||(_.preventDefault(),v&&(te(_.clientX,_.clientY),R.current=document.elementFromPoint(_.clientX,_.clientY)),E(!0))},[v,n,E,te,o]),J=g.useCallback(_=>{!v||n||(o.includes(Ot.ContextMenu)&&F&&E(!1),te(_.clientX,_.clientY),R.current=document.elementFromPoint(_.clientX,_.clientY))},[v,n,te,F,o,E]);g.useEffect(()=>{n&&F&&E(!1)},[n,F,E]);const fe=g.useCallback(_=>Fe=>{_.disabled||(_.onClick?.({key:_.key,domEvent:Fe}),t?.onClick?.({key:_.key,domEvent:Fe}),E(!1))},[t,E]),xe=g.useMemo(()=>s?s():t?m.jsxs(m.Fragment,{children:[t.header&&m.jsx(m.Fragment,{children:typeof t.header=="function"?t.header():t.header}),m.jsx("div",{role:"none",className:"py-1","aria-label":"dropdown",children:t.items.map(_=>_.type===Vi.Divider?m.jsx("div",{role:"separator",className:r8},_.key):_.type===Vi.PlainText?m.jsx("div",{className:oe("px-3 py-2 text-secondary dial-caption",_.className),children:_.label},_.key):m.jsxs("button",{role:"menuitem",type:"button","aria-disabled":!!_.disabled,className:ue(o8,_.disabled&&i8,_.danger&&n8,_.className),disabled:_.disabled,onClick:fe(_),children:[_.icon&&m.jsx("span",{className:ue(_.danger&&"text-error",_.disabled&&"text-secondary"),children:m.jsx(Ye,{icon:_.icon})}),m.jsx("span",{className:ue("flex-1 truncate text-left",_.danger&&"text-error",_.disabled&&"text-secondary"),"aria-labelledby":"item-text",children:_.label})]},_.key))}),t.footer&&m.jsx(m.Fragment,{children:typeof t.footer=="function"?t.footer():t.footer})]}):null,[fe,t,s]),ne=de({onContextMenu:Q,onMouseDown:J});return g.useEffect(()=>{if(!F)return;const _=M.reference.current;let Fe=null;if(_ instanceof Element?Fe=_:R.current instanceof Element&&(Fe=R.current),!Fe)return;const ie=new IntersectionObserver(([$])=>{$.isIntersecting||E(!1)},{root:null,threshold:0});return ie.observe(Fe),()=>ie.disconnect()},[F,M.reference,E]),m.jsxs(m.Fragment,{children:[m.jsx("span",{ref:M.setReference,className:ue(t8,n&&"!cursor-not-allowed opacity-75",u),"aria-haspopup":"menu","aria-expanded":F,"aria-controls":D,...ne,children:e}),F&&m.jsx(Ie.FloatingPortal,{children:m.jsx(Ie.FloatingFocusManager,{context:N,modal:!1,initialFocus:-1,returnFocus:!0,children:m.jsxs("div",{id:D,ref:M.setFloating,style:k,className:ue(s8,!w&&"w-max",h),...H(),children:[c&&m.jsx("div",{className:"flex items-center justify-between px-2 pt-2",children:m.jsx(th,{ariaLabel:"Close dropdown",onClose:_=>{d?.(_),E(!1)}})}),xe]})})})]})},a8="h-full w-full",gp=".ag-checkbox-input",Wc={accentColor:"var(--controls-bg-accent, #5C8DEA)",backgroundColor:"var(--bg-layer-3, #222932)",oddRowBackgroundColor:"var(--bg-layer-2, #141A23)",selectedRowBackgroundColor:"var(--bg-accent-primary-alpha, #74A4FF26)",borderColor:"var(--bg-layer-4, #333942)",rowBorder:"1px solid var(--stroke-tertiary, #090D13)",rowHoverColor:"var(--bg-accent-primary-alpha, #74A4FF26)",borderRadius:3,browserColorScheme:"dark",chromeBackgroundColor:"var(--bg-layer-1, #090D13)",foregroundColor:"var(--text-primary, #F3F4F6)",headerFontSize:14,headerFontWeight:600,headerTextColor:"var(--text-secondary, #7F8792)",spacing:4,wrapperBorderRadius:3,fontSize:14,fontFamily:{googleFont:"var(--theme-font, var(--font-inter))"}},_c=40;var vo=(e=>(e.API="api",e.ROW_DATA_CHANGED="rowDataChanged",e.CHECKBOX_SELECTED="checkboxSelected",e))(vo||{});const l8=(e,t,s,o,i)=>{const n=typeof e=="string"?e.toLowerCase():e,r=typeof t=="string"?t.toLowerCase():t;return n===r?0:n?r?n>r?1:-1:i?1:-1:i?-1:1};var Wn=(e=>(e.MULTIPLE="MULTIPLE",e.SINGLE="SINGLE",e))(Wn||{});const xv="en-US",Rv={year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"},c8="text-primary",jc=40,Fv={minWidth:jc,width:jc,maxWidth:jc},d8={cellClass:"ag-grid-no-checkbox",...Fv},u8={...Fv};function h8(e,t){let s=null;return(...o)=>{s&&clearTimeout(s),s=setTimeout(()=>e(...o),t)}}Uk({testIdAttribute:"dataQA"});Mf.registerModules([zk]);const sh=({columnDefs:e,rowData:t,additionalGridOptions:s,getContextMenuItems:o,className:i,ariaLabel:n="Data grid",wrapCustomCellRenderers:r=!0,disabledRowIds:a,selectedRowIds:l,selectionOnHover:c=!0,onSelectionChange:d,onGridApiChange:u,getRowId:h=R=>String(R.id??JSON.stringify(R)),alternateOddRowColors:p=!1,filterPlaceholder:f="Enter value",emptyStateIcon:C,emptyStateTitle:v="No results found",emptyStateDescription:w="Sorry, we couldn't find any results for your search.",loading:b=!1,wrapperBorder:S=!0,withoutHeaderBorders:y=!1,allowDisabledContextMenu:x=!1,selectionMode:F})=>{const[R,E]=g.useState(_c),[D,P]=g.useState(),T=g.useId(),M=g.useRef(new Set),k=g.useRef(void 0),N=g.useMemo(()=>({...Wc,oddRowBackgroundColor:p?Wc.oddRowBackgroundColor:Wc.backgroundColor,wrapperBorder:S}),[p,S]),A=g.useCallback(q=>{q.api.sizeColumnsToFit(),E(_c)},[]),W=g.useCallback(q=>{if(q.data){const se=h(q.data),G=a?.has(se)??!1,pe=G&&!x,le=q.value==null?"":String(q.value),re=o?.(q.data)??[];return m.jsx(Rt,{trigger:[Ot.ContextMenu],menu:{items:re},anchorToMouse:!0,matchReferenceWidth:!0,className:"w-full",disabled:pe,children:m.jsx("span",{className:"block min-w-0 h-full max-w-full",children:m.jsx(ut,{text:le,className:"max-w-full h-full",hideTooltip:G})})})}},[o,a,h,x]),U=g.useCallback(q=>q===vo.API||q===vo.ROW_DATA_CHANGED,[]),L=g.useCallback(q=>{if(!D)return;const G=(q.selectedNodes||[]).map(le=>le.data),pe=new Set(G.map(h));M.current=pe,k.current=q.source,U(q.source)||d?.(pe,G)},[D,h,U,d]),de=g.useMemo(()=>h8(q=>L?.(q),100),[L]),H=g.useCallback(q=>{if(!q.data)return null;const se=h(q.data),G=q.node.isSelected(),pe=a?.has(se),le=`row-select-${se}`;return m.jsx("div",{className:"h-6 w-6 flex items-center justify-center",children:m.jsx(Xd,{className:"w-[18px] h-[18px]",inputId:le,checked:G,disabled:pe,name:"gridradiobutton",value:"selected",onChange:()=>{pe||(q.node.setSelected(!0,!0,vo.CHECKBOX_SELECTED),q.api.refreshCells({columns:[q.column?.getColId()]}))}})})},[h,a]),te=g.useCallback(q=>{const se="dial-row-select",G="dial-row-select-visible";return q?se:`${se} ${G}`},[]),Q=g.useMemo(()=>{if(F===Wn.SINGLE)return{...d8,cellRenderer:H};if(F===Wn.MULTIPLE)return{...u8,headerClass:()=>te(c),cellClass:q=>{const se=q.data?h(q.data):null;let G=te(c);return se&&a?.has(se)&&(G+=" opacity-50 pointer-events-none"),G}}},[a,h,H,F,c,te]),J=g.useCallback(q=>{const se=typeof r=="function"?r(q):!!r;if(!q.cellRenderer)return{...q,cellRenderer:W};if(!se)return q;const G=q.cellRenderer;return{...q,cellRenderer:le=>{const re=le.data?o?.(le.data)??[]:[];let ve=null;if(typeof G=="function"){const me=G;ve=m.jsx(me,{...le})}else ve=W(le);const Re=le.data?h(le.data):null,Oe=Re?a?.has(Re):!1;return m.jsx(Rt,{trigger:[Ot.ContextMenu],menu:{items:re},anchorToMouse:!0,matchReferenceWidth:!0,className:ue("w-full h-full",Oe&&"!cursor-not-allowed opacity-75"),disabled:Oe&&!x,children:m.jsx("span",{className:"block min-w-0 max-w-full flex-1",children:ve})})}}},[a,o,h,W,r,x]),fe=g.useMemo(()=>r?(e??[]).map(J):e??[],[e,r,r?J:null]),xe=g.useMemo(()=>({minWidth:150,resizable:!0,sortable:!0,floatingFilter:!0,filter:"agTextColumnFilter",filterParams:{filterPlaceholder:f,buttons:["reset"]},comparator:l8.bind(void 0)}),[f]),ne=q=>{const se=document.querySelector(gp);se&&se.setAttribute("aria-description",id);const G=fe.map(pe=>({...pe,sort:void 0}));q.api.updateGridOptions({columnDefs:G,rowData:t}),q.api.sizeColumnsToFit(),P(q.api),s?.onGridReady?.(q),u?.(q.api)};g.useEffect(()=>{D&&D.redrawRows()},[D]);const _=g.useCallback(()=>m.jsx(cr,{title:v,description:w,containerClassName:"gap-3",titleClassName:"mt-2 !text-lg",icon:C||m.jsx(V.IconZoomCancel,{size:100,stroke:.5,className:"text-secondary"})}),[v,w,C]),Fe=g.useMemo(()=>{if(F)return{mode:F===Wn.SINGLE?"singleRow":"multiRow",isRowSelectable:q=>{const se=q.data?h(q.data):null;return se?!a?.has(se):!0}}},[a,h,F]);g.useEffect(()=>{D&&t&&M.current.size&&M.current.forEach(q=>{const se=D.getRowNode(q);se&&!se.isSelected()&&se.setSelected(!0,!1,vo.API)})},[D,t]),g.useEffect(()=>{D&&l&&(D.deselectAll("all",vo.API),l.forEach(q=>{const se=D.getRowNode(q);se&&!se.isSelected()&&se.setSelected(!0,!1,vo.API)}))},[D,l]);const ie=g.useCallback(q=>q.data?h(q.data):"",[h]),$=g.useCallback(()=>{document.querySelectorAll(`.ag-row ${gp}`).forEach(q=>{q.setAttribute("aria-description",id)})},[]);return g.useEffect(()=>{const q=U(k.current);if(D&&l?.size&&q){const se=Array.from(l)[0];if(se){const G=D.getRowNode(se);G&&D.ensureNodeVisible(G)}}},[D,U,l]),m.jsx("div",{className:ue(a8,i,F&&"with-selection-column",y&&"dial-without-header-borders"),"aria-label":n,role:"region","aria-busy":b,children:m.jsx("div",{className:"ag-theme-balham-dark h-full overflow-x-auto",role:"table","aria-describedby":T,children:m.jsx(e8,{rowModelType:"clientSide",headerHeight:_c,rowHeight:R,cellSelection:!1,theme:V3.withPart(w3).withParams({...N}),autoSizeStrategy:{type:"fitGridWidth"},columnDefs:fe,defaultColDef:xe,selectionColumnDef:Q,onGridSizeChanged:A,onGridReady:ne,loading:b,suppressCellFocus:!0,suppressDragLeaveHidesColumns:!0,noRowsOverlayComponent:_,rowData:t,rowSelection:Fe,onSelectionChanged:de,getRowId:ie,onRowDataUpdated:$,onBodyScroll:$,onFirstDataRendered:$,...s})})})};var ja=(e=>(e.Horizontal="horizontal",e.Vertical="vertical",e))(ja||{}),Ua=(e=>(e.Mobile="mobile",e.Tablet="tablet",e))(Ua||{});const Qr=({tab:e,active:t,invalid:s,className:o,horizontal:i,onClick:n})=>{const r=oe("rounded h-[38px] items-center flex flex-row border-transparent cursor-pointer dial-small leading-4 hover:text-accent-primary",{"border-b-2 px-4":i,"border-l-2 px-3":!i}),a=oe(r,{"bg-layer-4":i,"bg-layer-1 text-secondary pointer-events-none":e.disabled,"bg-accent-primary-alpha text-primary":t&&!e.disabled,"text-primary":!t&&!e.disabled,"border-b-accent-primary":t&&i&&!e.disabled,"border-l-accent-primary":t&&!i&&!e.disabled},o);return m.jsxs("button",{role:"tab",className:a,onClick:()=>n(e.id),disabled:e.disabled,children:[m.jsx(ut,{text:e.label,contentClassName:"max-w-[200px]",className:"max-w-[200px]"}),(s||e.invalid)&&m.jsx("div",{className:"text-error pl-1",children:m.jsx(V.IconExclamationCircle,{...Z})}),e.warning&&m.jsx("div",{className:"text-warning pl-1",children:m.jsx(V.IconAlertTriangle,{...Z})})]})},g8=12;var Qs=(e=>(e.Undefined="undefined",e.Mobile="mobile",e.Tablet="tablet",e.Desktop="desktop",e))(Qs||{});const pp=()=>typeof window<"u"&&window.innerWidth<640,Uc=()=>{if(typeof window>"u")return Qs.Undefined;const e=window.innerWidth;return e>=1024?Qs.Desktop:e<640?Qs.Mobile:Qs.Tablet},p8=()=>{const[e,t]=g.useState(()=>typeof window>"u"?Qs.Desktop:Uc());return g.useEffect(()=>{t(Uc());const s=()=>t(Uc());return window.addEventListener("resize",s),()=>window.removeEventListener("resize",s)},[]),e},Ev=({tabs:e,activeTab:t,onClick:s,orientation:o=ja.Horizontal,screenThreshold:i=Ua.Tablet,smallScreenContainerClassName:n,smallScreenDropdownItemClassName:r,desktopDropdownClassName:a,desktopTabClassName:l})=>{const[c,d]=g.useState(!1),[u,h]=g.useState(!1),[p,f]=g.useState(!1),C=p8(),v=C===Qs.Mobile||i===Ua.Tablet&&C===Qs.Tablet,w=o===ja.Horizontal,b=g.useRef(null),S=g.useRef(null),y=g.useRef(null),x=e.find(P=>P.id===t),F=g.useMemo(()=>ue("flex gap-2",w?"flex-row flex-nowrap overflow-x-auto":"flex-col flex-wrap w-full"),[w]),R=g.useCallback(()=>{const P=S.current;P&&f(P.scrollWidth>P.clientWidth)},[]),E=g.useCallback(()=>{const P=y.current,T=S.current;if(!P||!T)return;const M=P.getBoundingClientRect(),k=T.getBoundingClientRect();if(M.width===0||k.width===0)return;const N=g8;let A=T.scrollLeft;if(M.left<k.left+N)A-=k.left+N-M.left;else if(M.right>k.right-N)A+=M.right-(k.right-N);else return;const W=Math.max(0,T.scrollWidth-T.clientWidth);A=Math.max(0,Math.min(A,W)),A!==T.scrollLeft&&T.scrollTo({left:A,behavior:"smooth"})},[]),D=g.useCallback(P=>{s(P),P===t&&E()},[s,t,E]);return g.useEffect(()=>{R();const P=new ResizeObserver(()=>R()),T=S.current;return T&&P.observe(T),()=>P.disconnect()},[e,R]),g.useEffect(()=>{E()},[t,E]),v?m.jsx("div",{role:"tablist",className:oe("h-11 flex items-center bg-layer-3 px-4",n),children:m.jsx(Rt,{trigger:[Ot.Click],open:c,onOpenChange:d,placement:"bottom-start",allowedPlacements:["bottom-start","top-start"],renderOverlay:()=>e.map(P=>m.jsx(Qr,{tab:P,active:P.id===t,onClick:T=>{D(T),d(!1)},className:oe("w-full rounded-none h-11 items-center px-6",r)},P.id)),children:m.jsxs("div",{className:"flex gap-2 items-center h-11 cursor-pointer",children:[m.jsx(Qr,{tab:x,active:!0,onClick:D,className:"rounded-none bg-transparent border-l-0 border-b-0 h-full items-center px-0"},t),m.jsx(Ye,{icon:m.jsx(V.IconChevronDown,{size:mt.SM}),className:ue("text-primary transition-transform",c&&"rotate-180")})]})})}):m.jsxs("div",{ref:b,className:"flex w-full items-start",children:[m.jsx("div",{ref:S,role:"tablist",className:F,children:e.map(P=>m.jsx("div",{ref:t===P.id?y:void 0,className:"w-full",children:m.jsx(Qr,{tab:P,active:t===P.id,onClick:D,horizontal:w,className:oe("w-full",l)})},P.id))}),p&&m.jsx("div",{className:"flex items-center ml-2",children:m.jsx(Rt,{trigger:[Ot.Click],open:u,onOpenChange:h,placement:"bottom-end",renderOverlay:()=>e.map(P=>m.jsx(Qr,{tab:P,active:P.id===t,onClick:T=>{D(T),h(!1)},className:"w-full rounded-none h-8 items-center px-3 py-2"},P.id)),children:m.jsx(es,{iconBefore:m.jsx(V.IconDotsVertical,{size:Cs}),className:oe("w-8 h-8 flex items-center justify-center rounded border",u?"bg-layer-4 border-transparent":"border-primary",a)})})})]})},f8="w-full overflow-hidden",m8="flex flex-nowrap items-center gap-2 min-w-0 px-0 py-0 whitespace-nowrap",Dv="flex items-center gap-2 min-w-0 shrink-0 dial-small",C8="basis-[20%] flex-none",v8="flex-1 min-w-0",fp="inline-flex items-center gap-1 min-w-0 transition-colors",w8="text-secondary hover:text-accent-primary",b8="text-primary cursor-default",Pv="flex-none inline-flex items-center leading-none text-secondary",S8="items-center gap-1 min-w-0 transition-colors text-secondary hover:text-accent-primary",Tv=m.jsx(V.IconChevronRight,{size:mt.SM,"aria-hidden":"true"}),Tn=({label:e,href:t,onClick:s,disabled:o,isLast:i,separator:n=Tv,className:r,iconBefore:a,labelClassName:l,onBeforeNavigate:c,...d})=>{const u=async v=>{if(c&&!i&&!await c()){v.preventDefault();return}s&&s(v)},h=oe(Dv,i?v8:C8,r),p=(!!t||!!s)&&!i&&!o,f=p?oe(fp,w8):oe(fp,b8,o?"pointer-events-none opacity-75":""),C=typeof e=="string"?m.jsx(ut,{className:oe("cursor-pointer",l),text:e,id:"breadcrumb-item-content"}):m.jsx("span",{className:oe("flex-1 min-w-0 max-w-full truncate cursor-pointer max-w-[300px]",l),"aria-label":"breadcrumb-item-content",children:e});return m.jsxs("li",{...d,className:h,"aria-label":d["aria-label"]||"breadcrumb-item",children:[p?m.jsxs("a",{href:t,onClick:u,className:f,children:[a,C]}):m.jsxs("span",{className:f,"aria-current":i?"page":void 0,"aria-disabled":o?"true":void 0,children:[a,C]}),!i&&m.jsx("span",{className:Pv,"aria-label":"separator",children:n})]})},Mv=({pathItems:e,separator:t=Tv,ariaLabel:s="Breadcrumb",className:o,children:i,labelClassName:n,onBeforeNavigate:r})=>{const a=g.useMemo(()=>e?.length?e:g.Children.toArray(i).filter(g.isValidElement).map(d=>{const u=d.props,{labelClassName:h,isLast:p,separator:f,...C}=u;return C}),[e,i]),l=g.useCallback(async d=>{const u=parseInt(d.key,10),h=a[u];if(r&&!await r()){d.domEvent.preventDefault();return}h.onClick?h.onClick(d.domEvent):h.href&&(window.location.href=h.href)},[a,r]),c=g.useMemo(()=>{if(a.length===0)return null;if(a.length<=3)return a.map((C,v)=>g.createElement(Tn,{...C,key:`item-${v}`,isLast:v===a.length-1,separator:t,labelClassName:n,onBeforeNavigate:r}));const d=a.at(0),u=a.slice(1,-2),h=a.at(-2),p=a.at(-1);if(!d||!h||!p)return null;const f=u.map((C,v)=>({key:String(v+1),label:typeof C.label=="string"?C.label:`Item ${v+1}`,disabled:C.disabled}));return m.jsxs(m.Fragment,{children:[g.createElement(Tn,{...d,key:"item-0",separator:t,labelClassName:n,onBeforeNavigate:r}),m.jsxs("li",{className:oe(Dv),children:[m.jsx(Rt,{menu:{items:f,onClick:l},placement:"bottom-start",matchReferenceWidth:!1,children:m.jsx("button",{type:"button","aria-label":"More breadcrumbs",className:S8,children:m.jsx(V.IconDots,{size:mt.SM})})}),m.jsx("span",{className:Pv,children:t})]}),g.createElement(Tn,{...h,key:`item-${a.length-2}`,separator:t,labelClassName:n,onBeforeNavigate:r}),g.createElement(Tn,{...p,key:`item-${a.length-1}`,isLast:!0,separator:t,labelClassName:n,onBeforeNavigate:r})]})},[a,t,n,l,r]);return m.jsx("nav",{"aria-label":s,className:oe(f8,o),children:m.jsx("ol",{className:m8,children:c})})},oh=(e,t)=>({appearance:o,...i})=>m.jsx(es,{...i,variant:e,appearance:o||t}),Iv=(e,t)=>({variant:o,...i})=>m.jsx(es,{...i,variant:o||t,appearance:e}),Ss=oh(Ve.Primary,Me.Solid),xs=oh(Ve.Neutral,Me.Outlined),kv=oh(Ve.Error,Me.Outlined),y8=Iv(Me.Link,Ve.Primary),x8=Iv(Me.Ghost,Ve.Primary),Yi=(e,t)=>({appearance:o,...i})=>m.jsx(no,{...i,variant:e,appearance:o||t}),R8=(e,t)=>({variant:o,...i})=>m.jsx(no,{...i,variant:o||t,appearance:e}),F8=Yi(Ve.Primary,Me.Solid),E8=Yi(Ve.Neutral,Me.Outlined),Av=Yi(Ve.Error,Me.Outlined),D8=Yi(Ve.Secondary,Me.Ghost),P8=Yi(Ve.Tertiary,Me.Ghost),T8=Yi(Ve.Success,Me.Ghost),M8=R8(Me.Ghost,Ve.Primary),Lv=({iconClassName:e,label:t,...s})=>t?m.jsx(kv,{...s,label:t,appearance:Me.Ghost,iconBefore:m.jsx(V.IconTrashX,{...Z,className:e||""})}):m.jsx(Av,{...s,appearance:Me.Ghost,icon:m.jsx(V.IconTrashX,{...Z,className:e||""})}),I8=({className:e="",value:t,onChange:s,error:o,containerClassName:i,resize:n=!1,labelProps:r,caption:a,id:l,...c})=>{const d=oe("dial-textarea dial-input px-3 py-2",c.invalid&&"dial-input-error",c.disabled&&"dial-input-disable",n?"resize":"resize-none",e);return m.jsxs("div",{className:oe("flex flex-col gap-y-2",i),children:[r&&m.jsx(zo,{...r,htmlFor:l}),m.jsx("textarea",{id:l,value:t||"",className:d,onChange:u=>s?.(u.currentTarget.value),...c}),m.jsx(ks,{text:o}),!o&&m.jsx(ar,{text:a})]})},ih=({label:e,switchId:t,isOn:s=!1,disabled:o,onChange:i,caption:n})=>{const r=ue("flex w-[36px] h-[18px] cursor-pointer items-center gap-1 rounded-full p-0.5 transition-all duration-200",s?"flex-row-reverse":"flex-row",o?"pointer-events-none":"",o?s?"bg-controls-disable":"bg-layer-4":s?"bg-accent-primary":"bg-layer-4"),a=g.useCallback(l=>{l.stopPropagation(),i?.(!s)},[i,s]);return m.jsxs("div",{className:"flex flex-row items-start",role:"switch",children:[m.jsx("input",{type:"checkbox",onChange:a,id:t,disabled:o,className:"invisible w-0 h-0",checked:s}),m.jsx("label",{htmlFor:t,className:r,"aria-describedby":n&&"caption",children:m.jsx("span",{className:ue("size-3 rounded-full",o?"bg-controls-disable-accent":"bg-controls-enable-primary")})}),(e||n)&&m.jsxs("div",{className:"flex flex-col gap-1 ml-2",children:[e&&m.jsx("span",{className:ue("dial-small py-[1px]",o?"text-secondary":"text-primary"),"aria-label":"switch-title",children:e}),n&&m.jsx("span",{id:"caption",className:"dial-tiny text-secondary",children:n})]})]})};var Vt=(e=>(e.Sm="sm",e.Md="md",e.Lg="lg",e))(Vt||{});const k8="z-[52] flex items-center justify-center bg-blackout md:p-4",mp="divide-tertiary divide-y",A8="flex flex-row justify-between py-4 px-6 items-center",L8={[Vt.Sm]:"dial-sm-popup",[Vt.Md]:"dial-md-popup",[Vt.Lg]:"dial-lg-popup"},qo=({open:e=!1,header:t,portalId:s,className:o,overlayClassName:i,titleClassName:n,headerClassName:r,dividers:a=!0,dividerFooter:l=!0,children:c,footer:d,onClose:u,size:h=Vt.Md,hideClose:p=!1,closeOnOutsideClick:f=!0,preventKeyboardOnOpen:C=!1})=>{const v=g.useRef(null),{refs:w,context:b}=Ie.useFloating({open:e,onOpenChange:E=>{E||u?.(null)}}),S=Ie.useRole(b,{role:"dialog"}),y=Ie.useDismiss(b,{outsidePress:f}),{getFloatingProps:x}=Ie.useInteractions([S,y]);if(!e)return null;const F=typeof t=="string"?"dial-popup-heading":void 0,R=E=>E?typeof E=="string"?m.jsx("h3",{id:F,className:ue("flex-1 min-w-0 mr-3 truncate dial-h3 text-primary",n),children:m.jsx(St,{tooltip:E,children:E})}):E:m.jsx("span",{});return m.jsx(Ie.FloatingPortal,{id:s,children:m.jsx(Ie.FloatingOverlay,{className:ue(k8,i),children:m.jsx(Ie.FloatingFocusManager,{context:b,initialFocus:C?v:void 0,children:m.jsxs("div",{ref:w.setFloating,...x(),role:"dialog","aria-modal":"true","aria-labelledby":F,className:ue("dial-popup",L8[h],a&&mp,o),children:[C&&m.jsx("div",{ref:v,tabIndex:-1,"aria-hidden":!0,className:"absolute size-px -m-px overflow-hidden opacity-0 pointer-events-none"}),m.jsxs("div",{className:oe(A8,r),children:[R(t),!p&&m.jsx(th,{ariaLabel:"Close dialog",onClose:E=>u?.(E)})]}),m.jsx("div",{className:"flex-grow overflow-auto","aria-label":"popup-description",children:c}),l&&m.jsx("div",{className:mp}),d]})})})})};var zi=(e=>(e.Info="info",e.Danger="danger",e))(zi||{});const O8="flex justify-end gap-2 px-6 py-4",N8="text-secondary dial-small-150 px-6 py-4",H8="Cancel",G8="Ok",$c={[zi.Info]:{confirm:{variant:Ve.Primary,appearance:Me.Solid},cancel:{variant:Ve.Neutral,appearance:Me.Outlined}},[zi.Danger]:{container:"dial-danger-popup",confirm:{variant:Ve.Error,appearance:Me.Solid},cancel:{variant:Ve.Neutral,appearance:Me.Outlined}}},Ov=({header:e,description:t,descriptionClassName:s,open:o=!1,confirmLabel:i=G8,cancelLabel:n=H8,isLoading:r=!1,disableConfirmButton:a=!1,className:l,confirmClassName:c,onClose:d,onConfirm:u,onCancel:h,children:p,dividers:f=!1,variant:C=zi.Info,size:v=Vt.Sm,footer:w})=>{const b=r?null:m.jsxs("div",{className:O8,children:[m.jsx(xs,{label:n,onClick:()=>h?h():d?.()}),m.jsx(es,{variant:$c[C].confirm?.variant,appearance:$c[C].confirm?.appearance,className:c,label:i,disabled:a,onClick:()=>u()})]}),S=g.useCallback(()=>r?m.jsx("div",{className:"px-6 py-4 h-[120px]",children:m.jsx(lr,{size:50})}):p??(t?m.jsx("div",{className:ue(N8,s),children:t}):null),[p,t,r,s]);return m.jsx(qo,{open:o,header:e,className:ue($c[C].container,l),dividers:f,onClose:()=>d?.(),footer:w??b,size:v,children:S()})},Nv=({selectedItems:e,listClassName:t,listElementClassName:s,placeholder:o})=>e?.length?m.jsx("ul",{className:ue("flex-row items-center truncate flex-wrap","flex gap-x-2 gap-y-1",t),children:e?.map((i,n)=>m.jsx("li",{children:m.jsx(St,{tooltip:i,children:m.jsx(bo,{tag:i,className:ue([s])})})},`${i}_${n}`))}):o?m.jsx("span",{className:"text-secondary",children:o}):null,Cp=e=>Se.createElement("svg",{width:18,height:18,viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Se.createElement("path",{d:"M2.25 13.5V12C2.25 11.5858 2.58579 11.25 3 11.25C3.41421 11.25 3.75 11.5858 3.75 12V13.5C3.75 13.6989 3.82907 13.8896 3.96973 14.0303C4.11038 14.1709 4.30109 14.25 4.5 14.25H6C6.41421 14.25 6.75 14.5858 6.75 15C6.75 15.4142 6.41421 15.75 6 15.75H4.5C3.90326 15.75 3.33114 15.5128 2.90918 15.0908C2.48722 14.6689 2.25 14.0967 2.25 13.5ZM14.25 6V4.5C14.25 4.30109 14.1709 4.11038 14.0303 3.96973C13.8896 3.82907 13.6989 3.75 13.5 3.75H12C11.5858 3.75 11.25 3.41421 11.25 3C11.25 2.58579 11.5858 2.25 12 2.25H13.5C14.0967 2.25 14.6689 2.48722 15.0908 2.90918C15.5128 3.33114 15.75 3.90326 15.75 4.5V6C15.75 6.41421 15.4142 6.75 15 6.75C14.5858 6.75 14.25 6.41421 14.25 6Z",fill:"currentColor"})),Hv=({children:e,open:t,disabled:s=!1,selectedValue:o,valueClassName:i,inputClassName:n,onOpen:r,elementId:a,errorText:l,invalid:c,emptyValueText:d,placeholder:u})=>{const h=Array.isArray(o)&&o.length>0,p=typeof o=="string"&&!!o.trim(),f=h||p?o:u?void 0:d,C=s?void 0:r,v=()=>m.jsxs(m.Fragment,{children:[m.jsx("button",{type:"button",className:"w-full",onClick:C,"aria-label":"open-popup",id:a,children:m.jsxs("div",{className:ue("dial-input px-3 py-2 dial-input-field flex flex-row items-center w-full justify-between cursor-pointer",n,s&&"dial-input-disable",(l||c)&&"dial-input-error"),children:[m.jsx(St,{tooltip:f==null?void 0:String(f),children:f||!u?m.jsx("span",{className:i,children:f}):m.jsx("span",{className:"text-secondary",children:u})}),!s&&m.jsx("div",{className:"flex-shrink-0",children:m.jsx(Ye,{icon:m.jsx(Cp,{role:"img",width:Cs,height:Cs})})})]})}),m.jsx(ks,{text:l})]}),w=()=>m.jsx("div",{className:"w-full",onClick:C,children:m.jsxs("div",{className:ue("dial-input px-3 py-2 flex flex-row items-center w-full justify-between cursor-pointer",s&&"dial-input-disable"),children:[m.jsx(Nv,{placeholder:u,selectedItems:f}),!s&&m.jsx("div",{className:"ml-1",children:m.jsx(Ye,{icon:m.jsx(Cp,{role:"img",width:Cs,height:Cs})})})]})});return m.jsxs(m.Fragment,{children:[h?w():v(),t&&rr.createPortal(e,document.body)]})},B8=({label:e,htmlFor:t,disabled:s,selectedValue:o,radioButtons:i,customInputValue:n,valueClassName:r,inputClassName:a,emptyValueText:l,onClose:c,header:d,portalId:u,onApply:h,cancelButtonTitle:p="Cancel",applyButtonTitle:f="Apply",isValid:C,selectedRadioValue:v,onChangeRadioField:w,id:b,size:S=Vt.Md})=>{const[y,x]=g.useState(!1),F=g.useCallback(()=>{s||x(!0)},[s]),R=g.useCallback(()=>{x(!1),c?.()},[c]),E=g.useCallback(()=>{h(),R()},[h,R]);return m.jsxs("div",{className:"flex flex-col gap-2",children:[m.jsx(zo,{label:e,htmlFor:t}),m.jsx(Hv,{disabled:s,open:y,selectedValue:n??i.find(D=>D.id===o)?.name,valueClassName:r,inputClassName:ue(a,"py-2","px-3"),emptyValueText:l,onOpen:F,children:m.jsx(qo,{open:y,onClose:R,header:d,portalId:u,size:S,footer:m.jsxs("div",{className:"flex flex-row items-center justify-end gap-2 px-6 py-4",children:[m.jsx(xs,{label:p,onClick:R}),m.jsx(Ss,{label:f,onClick:E,disabled:!C})]}),children:m.jsx("div",{className:"px-6 py-4",children:m.jsx(va,{radioButtons:i,labelClassName:"dial-small",activeRadioButton:v,onChange:w,elementId:b,orientation:Io.Column})})})})]})},V8="Create",z8="Cancel",W8="flex items-center justify-end gap-2 px-6 py-3",_8=({header:e,open:t=!1,submitLabel:s=V8,cancelLabel:o=z8,isLoading:i=!1,disableSubmitButton:n=!1,className:r,submitClassName:a,onClose:l,onSubmit:c,onCancel:d,children:u,dividers:h=!0,size:p=Vt.Md,footer:f})=>{const C=i?null:m.jsxs("div",{className:W8,children:[m.jsx(xs,{label:o,onClick:()=>d?d():l?.()}),m.jsx(Ss,{className:a,label:s,disabled:n,onClick:()=>c()})]}),v=g.useCallback(()=>i?m.jsx("div",{className:"px-6 py-4 h-[120px]",children:m.jsx(lr,{size:50})}):u??null,[u,i]);return m.jsx(qo,{open:t,header:e,className:r,dividers:h,onClose:()=>l?.(),footer:f??C,size:p,children:v()})},j8=["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Backspace","Delete","Tab","Enter","Escape","Home","End","Insert"],U8=(e,t,s,o)=>{if((t==="number"||s!==void 0||o!==void 0)&&!j8.includes(e.key)&&!(e.ctrlKey||e.metaKey)&&!(e.key==="-"&&(e.currentTarget.selectionStart??0)===0&&!e.currentTarget.value.includes("-"))&&!(e.key==="."&&t==="number"&&!e.currentTarget.value.includes("."))){if(!/^[0-9]$/.test(e.key)){e.preventDefault();return}if(s!==void 0||o!==void 0){const n=e.currentTarget.value,r=e.currentTarget.selectionStart||0,a=n.slice(0,r)+e.key+n.slice(r),l=parseFloat(a);if(!isNaN(l)){if(s!==void 0&&l<+s){e.preventDefault();return}if(o!==void 0&&l>+o){e.preventDefault();return}}}}},$8="bg-layer-4 flex items-center justify-center enabled:text-secondary enabled:hover:text-accent-primary enabled:active:bg-controls-accent-primary-alpha-active enabled:hover:bg-accent-primary-alpha enabled:active:text-accent-primary",q8=({icon:e,onClick:t,disabled:s,size:o=wt.Standard})=>m.jsx("div",{className:ue("border-l border-tertiary",o===wt.Standard?"h-[40px] w-[44px]":"h-[24px] w-[32px]"),children:m.jsx(no,{className:ue($8,o===wt.Small&&"p-1"),icon:e,onClick:t,disabled:s,size:o})}),Zi=({labelProps:e,error:t,caption:s,id:o,containerClassName:i,...n})=>m.jsxs("div",{className:oe("flex flex-col gap-y-2",i),children:[e&&m.jsx(zo,{...e,htmlFor:o}),m.jsx(Gv,{id:o,...n}),m.jsx(ks,{text:t}),!t&&m.jsx(ar,{text:s})]}),Gv=({invalid:e,disabled:t,prefix:s,className:o,postfix:i,iconBefore:n,iconAfter:r,wrapperClassName:a,type:l,inputRef:c,value:d,min:u,onChange:h,max:p,inputButtonProps:f,...C})=>{const v=g.useRef(null),w=Ie.useMergeRefs([c,v]);g.useEffect(()=>{const F=v.current;if(!F)return;const R=E=>{E.preventDefault()};return F.addEventListener("wheel",R,{passive:!1}),()=>{F.removeEventListener("wheel",R)}},[]);const b=l==="number"||u!==void 0||p!==void 0,S=F=>{U8(F,l,u,p)},y=F=>{const R=F.currentTarget.value;if(b&&R!==""){const E=parseFloat(R);if(isNaN(E)&&R!=="-"&&R!=="."||!isNaN(E)&&(u!==void 0&&E<+u||p!==void 0&&E>+p))return}h?.(R||void 0)},x=()=>m.jsxs("div",{className:oe("dial-input flex flex-row items-center gap-x-2 justify-between py-2",e&&"dial-input-error",t&&"dial-input-disable",!s&&"pl-3",!f&&"pr-3",a),"aria-label":"input-container",children:[s&&m.jsx("div",{className:"border-r border-tertiary",children:m.jsx(Gv,{wrapperClassName:"!rounded-r-none",className:"truncate",value:s,disabled:!0,id:`${s}_textBefore`})}),m.jsx(Ye,{icon:n}),m.jsx("input",{ref:w,type:l,autoComplete:l==="password"?"new-password":"off",value:d??"",className:oe("border-0 bg-transparent w-full truncate",o),onChange:y,onKeyDown:S,min:u,disabled:t,max:p,...C}),i&&m.jsxs("p",{className:"text-secondary dial-small-text",children:[" ",i]}),m.jsx(Ye,{icon:r}),f&&m.jsx(q8,{...f,disabled:t})]});return t&&l!=="password"?m.jsx(St,{tooltip:d,children:x()}):x()},K8=/^0+\.(\d+)?$/,Y8=/^0+/,Z8=({onChange:e,...t})=>{const s=o=>!o||o==="-"?o:String(o)?.match(K8)?String(o)?.replace(Y8,"0"):Number(o);return m.jsx(Zi,{type:"number",onChange:o=>e?.(s(o)),...t})},X8=({onClick:e})=>m.jsx(V.IconEyeOff,{...Z,className:"text-primary",onClick:e,role:"button","aria-label":"hide"}),Q8=({onClick:e})=>m.jsx(V.IconEye,{...Z,className:"text-primary",onClick:e,role:"button","aria-label":"show"}),J8=({...e})=>{const[t,s]=g.useState(!1),o=g.useCallback(i=>{s(i)},[]);return m.jsx(Zi,{type:t?"text":"password",...e,iconAfter:e.disabled?null:t?m.jsx(X8,{onClick:()=>o(!1)}):m.jsx(Q8,{onClick:()=>o(!0)})})},eL={[wt.Small]:{className:"dial-tiny-text",wrapperClassName:"pl-2 py-0",containerClassName:"h-[24px]",iconSize:16,iconStroke:1},[wt.Standard]:{className:"dial-small-text",wrapperClassName:"",containerClassName:"",iconSize:20,iconStroke:1.5}},nh=({size:e=wt.Standard,placeholder:t="Search...",value:s,onChange:o,...i})=>{const[n,r]=g.useState(s||"");g.useEffect(()=>{r(s||"")},[s]);const a=g.useCallback(u=>{r(u||""),o?.(u||"")},[o]),l=eL[e],c=g.useCallback(()=>{a("")},[a]),d=g.useMemo(()=>{if(n)return{icon:m.jsx(V.IconX,{size:l.iconSize,"aria-label":"Clear search",role:"button"}),onClick:c,size:e}},[c,n,e,l.iconSize]);return m.jsx(Zi,{placeholder:t,iconBefore:m.jsx(V.IconSearch,{size:l.iconSize,stroke:l.iconStroke}),value:n,onChange:a,inputButtonProps:d,containerClassName:l.containerClassName,className:l.className,wrapperClassName:l.wrapperClassName,...i})},qc=8,tL=24,sL=({initialTags:e=[],label:t,required:s,elementId:o,placeholder:i,captionDescription:n,errorText:r,invalid:a,disabled:l,collapseTagOverflow:c=!1,onChange:d})=>{const u=g.useRef(null),h=g.useRef([]),p=g.useRef(null),[f,C]=g.useState(e),[v,w]=g.useState(""),[b,S]=g.useState(!1),[y,x]=g.useState(e.length),F=g.useCallback(k=>N=>{h.current[k]=N},[]),R=g.useCallback(()=>{if(!c)return;const k=u.current;if(!k)return;const N=k.offsetWidth;if(N===0)return;const A=p.current?.offsetWidth??0,W=N-tL-qc;let U=0,L=0;for(let de=0;de<f.length;de++){const H=h.current[de];if(!H)continue;const te=H.offsetWidth+qc;if(U+te>W)break;U+=te,L++}if(L<f.length&&L>0)for(;U+A>W&&L>0;){L--;const de=h.current[L]?.offsetWidth??0;U-=de+qc}x(L)},[c,f]),E=k=>{const N=k.trim().replace(/,$/,"");if(N&&!f.includes(N)){const A=[N,...f];C(A),d?.(A)}},D=k=>{(k.key===","||k.key==="Enter")&&(k.preventDefault(),E(v),w(""))},P=()=>{v.trim()&&(E(v),w(""))},T=k=>{const N=f.filter((A,W)=>W!==k);C(N),d?.(N)},M=()=>r?m.jsx(ks,{text:r}):n?m.jsx(ar,{text:n}):null;return g.useEffect(()=>{if(c)return;const k=new ResizeObserver(()=>{if(u.current){const N=u.current.scrollHeight>u.current.clientHeight+10;S(N)}});return u.current&&k.observe(u.current),()=>k.disconnect()},[f,c]),g.useEffect(()=>{if(!c){x(f.length);return}x(f.length);const k=new ResizeObserver(()=>{R()}),N=u.current;return N&&k.observe(N),R(),()=>k.disconnect()},[c,R,f]),g.useEffect(()=>{C(e)},[JSON.stringify(e)]),m.jsxs("div",{className:"flex flex-col gap-2 w-full",children:[m.jsx(zo,{label:t,required:s,htmlFor:o}),m.jsx("div",{className:ue("dial-input min-h-[38px] p-[6px]",a&&"dial-input-error",l&&"dial-input-disable"),children:m.jsxs("div",{ref:u,className:ue("flex gap-2 items-center relative",c?"flex-nowrap overflow-hidden w-full min-w-0":ue("flex-wrap",b?"flex-col-reverse":"flex-row")),children:[(c?f.slice(0,y):f).map((k,N)=>m.jsx(bo,{tag:k,remove:l?void 0:()=>T(N)},k+N)),c&&y<f.length&&m.jsx(St,{tooltip:f.slice(y).join(", "),triggerClassName:"inline-flex shrink-0 cursor-pointer",children:m.jsx(bo,{tag:`+${f.length-y}`})}),m.jsx("input",{type:"text",value:v,onChange:k=>w(k.target.value),onKeyDown:D,onBlur:P,className:ue("dial-input outline-none !border-none w-full flex-1 !p-1 !h-auto",c?"min-w-0":"min-w-[100px]"),placeholder:i??"",disabled:l}),c&&m.jsxs("div",{className:"absolute left-0 top-0 invisible pointer-events-none h-0 overflow-hidden whitespace-nowrap","aria-hidden":!0,children:[f.map((k,N)=>m.jsx("div",{ref:F(N),className:"inline-flex shrink-0",children:m.jsx(bo,{tag:k,remove:l?void 0:()=>T(N)})},`measure-${k}-${N}`)),m.jsx("div",{ref:p,className:"inline-flex shrink-0",children:m.jsx(bo,{tag:`+${f.length}`})})]})]})}),M()]})},oL="dial-input flex w-full items-center justify-between gap-2 dial-small cursor-pointer",iL="w-full rounded flex flex-col",Kc="flex w-full items-center justify-between gap-2 px-3 h-[34px] dial-small text-primary truncate hover:bg-accent-primary-alpha focus:bg-accent-primary-alpha focus:outline-none",nL="bg-accent-primary-alpha",rL="bg-accent-primary-alpha border-l border-accent-primary border-1",vp="opacity-75",aL=352,lL=m.jsx(V.IconChevronDown,{size:mt.SM}),Bv=({options:e,selectedValues:t,handleRemoveTag:s})=>m.jsx("div",{className:"flex flex-wrap w-full items-center gap-1",children:t.map(o=>{const i=e.find(r=>r.value===o)?.label??o,n=e.find(r=>r.value===o)?.icon;return m.jsx(bo,{tag:i,remove:r=>s?.(r,o),iconBefore:n?m.jsx(Ye,{icon:n}):null,className:"max-w-full"},o)})});var $a=(e=>(e.Sm="sm",e.Md="md",e))($a||{}),qa=(e=>(e.Primary="Primary",e.Secondary="Secondary",e))(qa||{});const Vv=({options:e,multiple:t=!1,elementId:s,value:o,defaultValue:i,variant:n=qa.Primary,size:r=$a.Md,prefix:a,customSelectedValue:l,placeholder:c="Select...",searchable:d=!1,searchPlaceholder:u,selectAll:h=!1,invalid:p,selectAllLabel:f="Select all",emptyStateTitle:C="No options available",emptyStateDescription:v,emptyStateIcon:w,disabled:b=!1,className:S,listClassName:y,closable:x=!1,header:F,footer:R,onClose:E,onChange:D,inlineSearch:P=!1,dismissRef:T,onFooterClick:M,open:k,onOpenChange:N,onInlineQueryChange:A})=>{const W=g.useId(),[U,L]=g.useState(!1),de=k!==void 0,H=de?!!k:U,te=g.useCallback(B=>{de||L(B),N?.(B)},[de,N]),[Q,J]=g.useState(P&&l||""),fe=g.useRef(null),xe=g.useCallback(B=>{B!==Q&&(J(B||""),A?.(B||""))},[A,Q]),ne=o!==void 0,[_,Fe]=g.useState(i),ie=ne?o:_,$=g.useMemo(()=>t?Array.isArray(ie)?ie:[]:typeof ie=="string"?[ie]:[],[ie,t]),q=g.useMemo(()=>{const B=Q.trim().toLowerCase();return B?e.filter(Ee=>Ee.label.toLowerCase().includes(B)):e},[e,Q]);g.useEffect(()=>{!H&&!P&&xe("")},[P,H,xe]),g.useEffect(()=>{P&&!H&&l&&xe(l||"")},[l,P,H,xe]);const se=g.useCallback(B=>{ne||Fe(B),D?.(B)},[ne,D]),G=g.useCallback(B=>{if(t){const Ee=new Set($);Ee.has(B)?Ee.delete(B):Ee.add(B),se(Array.from(Ee));return}if(se(B),P){const Ee=e.find(It=>It.value===B);Ee&&(xe(Ee.label),A?.(Ee.label))}te(!1)},[t,se,P,te,$,e,xe,A]),pe=g.useCallback((B,Ee)=>{if(B.stopPropagation(),!t){se("");return}const It=$.filter(Xi=>Xi!==Ee);se(It)},[t,$,se]),le=g.useMemo(()=>q.filter(B=>!B.disabled),[q]),re=g.useMemo(()=>le.filter(B=>$.includes(B.value)).length,[le,$]),ve=B=>{P&&!t&&!B&&G(Q),te(B)},Re=le.length>0&&re===le.length,Oe=re>0&&!Re,me=()=>{if(!(!t||le.length===0))if(Re){const B=new Set(le.map(It=>It.value)),Ee=$.filter(It=>!B.has(It));se(Ee)}else{const B=new Set($);le.forEach(Ee=>B.add(Ee.value)),se(Array.from(B))}},Pe=$.length>0;g.useEffect(()=>{H&&P&&!t&&!b&&requestAnimationFrame(()=>{const B=fe.current;if(!B)return;B.focus();const Ee=B.value?.length??0;B.setSelectionRange?.(Ee,Ee)})},[H,P,t,b]);const _e=!t&&Pe?$[0]:void 0,Ge=g.useMemo(()=>_e?e.find(B=>B.value===_e):void 0,[e,_e]),We=g.useCallback(()=>!t||$.length===0?null:m.jsx(Bv,{options:e,selectedValues:$,handleRemoveTag:pe}),[t,e,$,pe]),_t=g.useCallback(()=>t?Pe?We():m.jsx("span",{className:"text-secondary truncate",children:c}):Ge?m.jsxs(m.Fragment,{children:[Ge.icon&&m.jsx(Ye,{icon:Ge.icon}),m.jsx(ut,{text:a?`${a} ${Ge.label}`:Ge.label}),Ge?.description&&m.jsx("div",{className:"text-secondary dial-small",children:Ge.description})]}):l&&o?l:m.jsx("span",{className:"text-secondary truncate",children:c}),[Pe,t,l,a,o,c,We,Ge]);g.useImperativeHandle(T,()=>({dismiss:()=>{te(!1)}}));const jt=g.useCallback(()=>{xe($.length===1?Ge?.label??Q:"")},[Q,$.length,xe,Ge?.label]),as=g.useCallback(()=>{b||(te(!H),P&&!t&&(jt(),fe.current?.focus()))},[b,P,H,t,jt,te]);return m.jsx(Rt,{open:H,onOpenChange:ve,disabled:b,closable:x,onClose:E,placement:"bottom-start",allowedPlacements:["bottom-start","top-start"],maxDropdownHeight:d?null:aL,listClassName:y,renderOverlay:()=>m.jsxs("div",{id:`list-${s||W}`,role:"listbox","aria-multiselectable":t||void 0,className:iL,children:[F&&m.jsx(m.Fragment,{children:typeof F=="function"?F():F}),(d||x)&&e.length>8&&m.jsxs("div",{className:"flex items-center gap-2 px-2 pt-2",children:[d&&m.jsx(nh,{placeholder:u,onChange:xe,value:Q,id:`search-${s||W}`,containerClassName:"w-full"}),x&&m.jsx(es,{"aria-label":"Close select",className:"shrink-0",iconBefore:m.jsx(V.IconX,{size:mt.SM}),onClick:B=>{E?.(B),te(!1)}})]}),t&&h&&le.length>0&&m.jsx("div",{className:ue(Kc,"mt-2"),children:m.jsx(nd,{id:`${s||W}-selectAll`,label:f,checked:Re,indeterminate:Oe,onChange:me,ariaLabel:f})}),m.jsx("div",{className:ue("overflow-y-auto max-h-[352px]",P&&q.length===0?"":"py-1"),children:q.length===0?!P&&m.jsx("div",{className:"px-2 py-3",children:m.jsx(cr,{icon:w??m.jsx(V.IconClipboardX,{size:mt.LG,stroke:.5}),title:C,description:v})}):q.map(B=>{const Ee=$.includes(B.value);return t?m.jsxs("div",{role:"option","aria-selected":Ee,"aria-disabled":!!B.disabled,className:ue(Kc,Ee&&nL,B.disabled&&vp,"w-full"),children:[m.jsx(nd,{id:`${s||W}-${B.value}`,label:m.jsxs("span",{className:"flex w-full flex-1 pl-2 min-w-0 items-center gap-2 text-primary",children:[B.icon&&m.jsx(Ye,{icon:B.icon}),m.jsx("span",{className:"truncate",children:B.label})]}),checked:Ee,disabled:B.disabled,onChange:()=>!B.disabled&&G(B.value),ariaLabel:B.label}),B.description&&m.jsx("div",{className:"text-secondary dial-small",children:B.description})]},B.value):m.jsx("button",{role:"option",type:"button","aria-selected":Ee,"aria-disabled":!!B.disabled,disabled:B.disabled,className:ue(Kc,Ee&&rL,B.disabled&&vp),onClick:()=>!B.disabled&&G(B.value),children:m.jsxs("div",{className:"flex items-center gap-2 w-full",children:[B.icon&&m.jsx(Ye,{icon:B.icon}),m.jsx(ut,{text:B.label}),B.description&&m.jsx("div",{className:"text-secondary dial-small",children:B.description})]})},B.value)})}),R&&m.jsx("div",{onClick:B=>{M?.(B),M&&te(!1)},children:typeof R=="function"?R():R})]}),children:m.jsxs("div",{role:"button",tabIndex:0,"aria-roledescription":"button to open select list","aria-haspopup":"listbox","aria-expanded":H,"aria-controls":`list-${s||W}`,className:oe(oL,b&&"opacity-75 !cursor-not-allowed",r===$a.Sm?"min-h-[25px] px-1.5 py-1":"min-h-[38px] px-3 py-2",p&&"dial-input-error",n===qa.Secondary?"!bg-layer-4 !h-auto":"",S),onMouseDown:B=>{b||P&&!t&&(jt(),B.preventDefault())},onClick:()=>{as()},onKeyDown:B=>{(B.key===" "||B.code==="Space")&&(B.preventDefault(),as())},children:[P&&!t?m.jsx("div",{className:"flex min-w-0 items-center gap-2 text-primary flex-1",children:m.jsx("input",{id:`inline-${s||W}`,type:"text",placeholder:u??c,value:Q||"",onChange:B=>xe(B.currentTarget.value.trimStart()),onFocus:()=>!b&&te(!0),onMouseDown:B=>{jt(),B.stopPropagation()},onClick:B=>{B.stopPropagation()},onKeyDown:B=>{B.stopPropagation()},className:"bg-transparent outline-none w-full dial-small",ref:fe,disabled:b,"aria-disabled":b,autoComplete:"off"})}):m.jsx("div",{className:"flex w-full min-w-0 items-center gap-2 text-primary",children:_t()}),!P&&m.jsx(Ye,{icon:lL,className:ue("text-primary",H&&"rotate-180")})]})})},cL=({label:e,required:t,captionDescription:s,containerClassName:o,selectClassName:i,error:n,id:r,caption:a,readonly:l,value:c,defaultEmptyText:d,...u})=>{const h=g.useCallback(()=>{if(!c||Array.isArray(c)&&c.length===0)return d??"None";if(Array.isArray(c))return m.jsx(Bv,{options:u.options,selectedValues:c});{const p=u.options?.find(f=>f.value===c);return m.jsx("span",{"aria-readonly":!0,className:"text-primary",children:p?.label||c})}},[c,u.options,d]);return m.jsx(Qd,{id:r,label:e,required:t,description:a,error:n,captionDescription:s,className:o,readonly:l,value:h(),defaultEmptyText:d,children:m.jsx(Vv,{className:i,value:c,elementId:r,invalid:!!n,...u})})};function zv(e){let t=null;return()=>(t==null&&(t=e()),t)}function dL(e,t){return e.filter(s=>s!==t)}function uL(e,t){const s=new Set,o=n=>s.add(n);e.forEach(o),t.forEach(o);const i=[];return s.forEach(n=>i.push(n)),i}class hL{enter(t){const s=this.entered.length,o=i=>this.isNodeInDocument(i)&&(!i.contains||i.contains(t));return this.entered=uL(this.entered.filter(o),[t]),s===0&&this.entered.length>0}leave(t){const s=this.entered.length;return this.entered=dL(this.entered.filter(this.isNodeInDocument),t),s>0&&this.entered.length===0}reset(){this.entered=[]}constructor(t){this.entered=[],this.isNodeInDocument=t}}class gL{initializeExposedProperties(){Object.keys(this.config.exposeProperties).forEach(t=>{Object.defineProperty(this.item,t,{configurable:!0,enumerable:!0,get(){return console.warn(`Browser doesn't allow reading "${t}" until the drop event.`),null}})})}loadDataTransfer(t){if(t){const s={};Object.keys(this.config.exposeProperties).forEach(o=>{const i=this.config.exposeProperties[o];i!=null&&(s[o]={value:i(t,this.config.matchesTypes),configurable:!0,enumerable:!0})}),Object.defineProperties(this.item,s)}}canDrag(){return!0}beginDrag(){return this.item}isDragging(t,s){return s===t.getSourceId()}endDrag(){}constructor(t){this.config=t,this.item={},this.initializeExposedProperties()}}const rh="__NATIVE_FILE__",Wv="__NATIVE_URL__",_v="__NATIVE_TEXT__",jv="__NATIVE_HTML__",wp=Object.freeze(Object.defineProperty({__proto__:null,FILE:rh,HTML:jv,TEXT:_v,URL:Wv},Symbol.toStringTag,{value:"Module"}));function Yc(e,t,s){const o=t.reduce((i,n)=>i||e.getData(n),"");return o??s}const Ud={[rh]:{exposeProperties:{files:e=>Array.prototype.slice.call(e.files),items:e=>e.items,dataTransfer:e=>e},matchesTypes:["Files"]},[jv]:{exposeProperties:{html:(e,t)=>Yc(e,t,""),dataTransfer:e=>e},matchesTypes:["Html","text/html"]},[Wv]:{exposeProperties:{urls:(e,t)=>Yc(e,t,"").split(`
|
|
61
|
+
`,_I=class extends C4{constructor(e){super(e),this.config=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,ip),this.result+=e):e.forEach(t=>{this.beginNewLine(),t.forEach((s,o)=>{o!==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,o){s!=0&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(t),this.appendEmptyCells(o)}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 o=this.extractRowCellValue(e,t,t,"csv",s);this.result+=this.putInQuotes(o.valueFormatted??o.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():(z(53),t=""),'"'+t.replace(/"/g,'""')+'"'}parse(){return this.result}beginNewLine(){this.isFirstLine||(this.result+=ip),this.isFirstLine=!1}},jI=class extends m4{constructor(){super(...arguments),this.beanName="csvCreator"}wireBeans(e){this.colModel=e.colModel,this.colNames=e.colNames,this.rowGroupColsSvc=e.rowGroupColsSvc,this.valueSvc=e.valueSvc}getMergedParams(e){const t=this.gos.get("defaultCsvExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){z(51);return}const t=this.getMergedParams(e),s=this.getData(t),o=new Blob(["\uFEFF",s],{type:"text/plain"}),i=typeof t.fileName=="function"?t.fileName(we(this.gos,{})):t.fileName;v4(this.getFileName(i),o)}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{colModel:t,colNames:s,rowGroupColsSvc:o,valueSvc:i,gos:n}=this,{processCellCallback:r,processHeaderCallback:a,processGroupHeaderCallback:l,processRowGroupCallback:c,suppressQuotes:d,columnSeparator:u}=e;return new _I({colModel:t,colNames:s,valueSvc:i,gos:n,processCellCallback:r||void 0,processHeaderCallback:a||void 0,processGroupHeaderCallback:l||void 0,processRowGroupCallback:c||void 0,suppressQuotes:d||!1,columnSeparator:u||",",rowGroupColsSvc:o})}isExportSuppressed(){return this.gos.get("suppressCsvExport")}};function UI(e,t){return e.csvCreator?.getDataAsCsv(t)}function $I(e,t){e.csvCreator?.exportDataAsCsv(t)}var qI={moduleName:"CsvExport",version:Y,beans:[jI],apiFunctions:{getDataAsCsv:UI,exportDataAsCsv:$I},dependsOn:[WI]},KI=class extends O{constructor(e,t,s){super(),this.id=e,this.parentCache=t,this.params=s,this.state="needsLoading",this.version=0,this.startRow=e*s.blockSize,this.endRow=this.startRow+s.blockSize}load(){this.state="loading",this.loadFromDatasource()}setStateWaitingToLoad(){this.version++,this.state="needsLoading"}pageLoadFailed(e){this.isRequestMostRecentAndLive(e)&&(this.state="failed"),this.dispatchLocalEvent({type:"loadComplete"})}pageLoaded(e,t,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.dispatchLocalEvent({type:"loadComplete"}),this.isRequestMostRecentAndLive(e)&&(this.state="loaded",this.processServerResult(t))}postConstruct(){this.rowNodes=[];const{params:{blockSize:e,rowHeight:t},startRow:s,beans:o,rowNodes:i}=this;for(let n=0;n<e;n++){const r=s+n,a=new io(o);a.setRowHeight(t),a.uiLevel=0,a.setRowIndex(r),a.setRowTop(t*r),i.push(a)}}getBlockStateJson(){const{id:e,startRow:t,endRow:s,state:o}=this;return{id:""+e,state:{blockNumber:e,startRow:t,endRow:s,pageStatus:o}}}setDataAndId(e,t,s){X(t)?e.setDataAndId(t,s.toString()):e.setDataAndId(void 0,void 0)}loadFromDatasource(){const e=this.createLoadParams();if($e(this.params.datasource.getRows)){z(90);return}window.setTimeout(()=>{this.params.datasource.getRows(e)},0)}createLoadParams(){const{startRow:e,endRow:t,version:s,params:{sortModel:o,filterModel:i},gos:n}=this;return{startRow:e,endRow:t,successCallback:this.pageLoaded.bind(this,s),failCallback:this.pageLoadFailed.bind(this,s),sortModel:o,filterModel:i,context:we(n,{}).context}}forEachNode(e,t,s){this.rowNodes.forEach((o,i)=>{this.startRow+i<s&&e(o,t.value++)})}getRow(e,t=!1){t||(this.lastAccessed=this.params.lastAccessedSequence.value++);const s=e-this.startRow;return this.rowNodes[s]}processServerResult(e){const{rowNodes:t,beans:s}=this;t.forEach((i,n)=>{const r=e.rowData?e.rowData[n]:void 0;!i.id&&i.alreadyRendered&&r&&(t[n]=new io(s),t[n].setRowIndex(i.rowIndex),t[n].setRowTop(i.rowTop),t[n].setRowHeight(i.rowHeight),i.clearRowTopAndRowIndex()),this.setDataAndId(t[n],r,this.startRow+n)});const o=e.rowCount!=null&&e.rowCount>=0?e.rowCount:void 0;this.parentCache.pageLoaded(this,o)}destroy(){for(const e of this.rowNodes)e.clearRowTopAndRowIndex();super.destroy()}},YI=2,ZI=class extends O{constructor(e){super(),this.params=e,this.lastRowIndexKnown=!1,this.blocks={},this.blockCount=0,this.rowCount=e.initialRowCount}getRow(e,t=!1){const s=Math.floor(e/this.params.blockSize);let o=this.blocks[s];if(!o){if(t)return;o=this.createBlock(s)}return o.getRow(e)}createBlock(e){const t=this.params,s=this.createBean(new KI(e,this,t));return this.blocks[s.id]=s,this.blockCount++,this.purgeBlocksIfNeeded(s),t.rowNodeBlockLoader.addBlock(s),s}refreshCache(){if(this.blockCount==0){this.purgeCache();return}for(const t of this.getBlocksInOrder())t.setStateWaitingToLoad();this.params.rowNodeBlockLoader.checkBlockToLoad()}destroy(){for(const e of this.getBlocksInOrder())this.destroyBlock(e);super.destroy()}getRowCount(){return this.rowCount}isLastRowIndexKnown(){return this.lastRowIndexKnown}pageLoaded(e,t){this.isAlive()&&(Oo(this.gos,`InfiniteCache - onPageLoaded: page = ${e.id}, lastRow = ${t}`),this.checkRowCount(e,t),this.onCacheUpdated())}purgeBlocksIfNeeded(e){const t=this.getBlocksInOrder().filter(r=>r!=e),s=(r,a)=>a.lastAccessed-r.lastAccessed;t.sort(s);const o=this.params.maxBlocksInCache>0,i=o?this.params.maxBlocksInCache-1:null,n=YI-1;t.forEach((r,a)=>{const l=r.state==="needsLoading"&&a>=n,c=o?a>=i:!1;if(l||c){if(this.isBlockCurrentlyDisplayed(r)||this.isBlockFocused(r))return;this.removeBlockFromCache(r)}})}isBlockFocused(e){const t=this.beans.focusSvc.getFocusCellToUseAfterRefresh();if(!t||t.rowPinned!=null)return!1;const{startRow:s,endRow:o}=e;return t.rowIndex>=s&&t.rowIndex<o}isBlockCurrentlyDisplayed(e){const{startRow:t,endRow:s}=e;return this.beans.rowRenderer.isRangeInRenderedViewport(t,s-1)}removeBlockFromCache(e){e&&this.destroyBlock(e)}checkRowCount(e,t){if(typeof t=="number"&&t>=0)this.rowCount=t,this.lastRowIndexKnown=!0;else if(!this.lastRowIndexKnown){const{blockSize:s,overflowSize:o}=this.params,n=(e.id+1)*s+o;this.rowCount<n&&(this.rowCount=n)}}setRowCount(e,t){this.rowCount=e,X(t)&&(this.lastRowIndexKnown=t),this.lastRowIndexKnown||this.rowCount%this.params.blockSize===0&&this.rowCount++,this.onCacheUpdated()}forEachNodeDeep(e){const t={value:0};for(const s of this.getBlocksInOrder())s.forEachNode(e,t,this.rowCount)}getBlocksInOrder(){const e=(s,o)=>s.id-o.id;return Object.values(this.blocks).sort(e)}destroyBlock(e){delete this.blocks[e.id],this.destroyBean(e),this.blockCount--,this.params.rowNodeBlockLoader.removeBlock(e)}onCacheUpdated(){this.isAlive()&&(this.destroyAllBlocksPastVirtualRowCount(),this.eventSvc.dispatchEvent({type:"storeUpdated"}))}destroyAllBlocksPastVirtualRowCount(){const e=[];for(const t of this.getBlocksInOrder())t.id*this.params.blockSize>=this.rowCount&&e.push(t);if(e.length>0)for(const t of e)this.destroyBlock(t)}purgeCache(){for(const e of this.getBlocksInOrder())this.removeBlockFromCache(e);this.lastRowIndexKnown=!1,this.rowCount===0&&(this.rowCount=this.params.initialRowCount),this.onCacheUpdated()}getRowNodesInRange(e,t){const s=[];let o=-1,i=!1;const n={value:0};let r=!1;for(const l of this.getBlocksInOrder())if(!r){if(i&&o+1!==l.id){r=!0;continue}o=l.id,l.forEachNode(c=>{const d=c===e||c===t;(i||d)&&s.push(c),d&&(i=!i)},n,this.rowCount)}return r||i?[]:s}},XI=class extends O{constructor(){super(...arguments),this.beanName="rowModel",this.rootNode=null}getRowBounds(e){return{rowHeight:this.rowHeight,rowTop:this.rowHeight*e}}ensureRowHeightsValid(){return!1}postConstruct(){if(this.gos.get("rowModelType")!=="infinite")return;const e=this.beans,t=new io(e);this.rootNode=t,t.level=-1,this.rowHeight=Do(e),this.addEventListeners(),this.addDestroyFunc(()=>this.destroyCache())}start(){this.setDatasource(this.gos.get("datasource"))}destroy(){this.destroyDatasource(),super.destroy(),this.rootNode=null}destroyDatasource(){this.datasource&&(this.destroyBean(this.datasource),this.beans.rowRenderer.datasourceChanged(),this.datasource=null)}addEventListeners(){this.addManagedEventListeners({filterChanged:this.reset.bind(this),sortChanged:this.reset.bind(this),newColumnsLoaded:this.onColumnEverything.bind(this),storeUpdated:this.dispatchModelUpdatedEvent.bind(this)}),this.addManagedPropertyListener("datasource",()=>this.setDatasource(this.gos.get("datasource"))),this.addManagedPropertyListener("cacheBlockSize",()=>this.resetCache()),this.addManagedPropertyListener("rowHeight",()=>{this.rowHeight=Do(this.beans),this.cacheParams.rowHeight=this.rowHeight,this.updateRowHeights()})}onColumnEverything(){let e;this.cacheParams?e=!$n(this.cacheParams.sortModel,this.beans.sortSvc?.getSortModel()??[]):e=!0,e&&this.reset()}getType(){return"infinite"}setDatasource(e){this.destroyDatasource(),this.datasource=e,e&&this.reset()}isEmpty(){return!this.infiniteCache}isRowsToRender(){return!!this.infiniteCache}getNodesInRangeForSelection(e,t){return this.infiniteCache?.getRowNodesInRange(e,t)??[]}reset(){if(!this.datasource)return;Oi(this.gos)!=null||this.beans.selectionSvc?.reset("rowDataChanged"),this.resetCache()}dispatchModelUpdatedEvent(){this.eventSvc.dispatchEvent({type:"modelUpdated",newPage:!1,newPageSize:!1,newData:!1,keepRenderedRows:!0,animate:!1})}resetCache(){this.destroyCache();const e=this.beans,{filterManager:t,sortSvc:s,rowNodeBlockLoader:o,eventSvc:i,gos:n}=e;this.cacheParams={datasource:this.datasource,filterModel:t?.getFilterModel()??{},sortModel:s?.getSortModel()??[],rowNodeBlockLoader:o,initialRowCount:n.get("infiniteInitialRowCount"),maxBlocksInCache:n.get("maxBlocksInCache"),rowHeight:Do(e),overflowSize:n.get("cacheOverflowSize"),blockSize:n.get("cacheBlockSize"),lastAccessedSequence:{value:0}},this.infiniteCache=this.createBean(new ZI(this.cacheParams)),i.dispatchEventOnce({type:"rowCountReady"}),this.dispatchModelUpdatedEvent()}updateRowHeights(){this.forEachNode(e=>{e.setRowHeight(this.rowHeight),e.setRowTop(this.rowHeight*e.rowIndex)}),this.dispatchModelUpdatedEvent()}destroyCache(){this.infiniteCache=this.destroyBean(this.infiniteCache)}getRow(e){const t=this.infiniteCache;if(t&&!(e>=t.getRowCount()))return t.getRow(e)}getRowNode(e){let t;return this.forEachNode(s=>{s.id===e&&(t=s)}),t}forEachNode(e){this.infiniteCache?.forEachNodeDeep(e)}getTopLevelRowCount(){return this.getRowCount()}getTopLevelRowDisplayedIndex(e){return e}getRowIndexAtPixel(e){if(this.rowHeight!==0){const t=Math.floor(e/this.rowHeight),s=this.getRowCount()-1;return t>s?s:t}return 0}getRowCount(){return this.infiniteCache?this.infiniteCache.getRowCount():0}isRowPresent(e){return!!this.getRowNode(e.id)}refreshCache(){this.infiniteCache?.refreshCache()}purgeCache(){this.infiniteCache?.purgeCache()}isLastRowIndexKnown(){return this.infiniteCache?.isLastRowIndexKnown()??!1}setRowCount(e,t){this.infiniteCache?.setRowCount(e,t)}resetRowHeights(){}onRowHeightChanged(){}};function QI(e){cl(e)?.refreshCache()}function JI(e){cl(e)?.purgeCache()}function e6(e){return cl(e)?.getRowCount()}var t6=class extends O{constructor(){super(...arguments),this.beanName="rowNodeBlockLoader",this.activeBlockLoadsCount=0,this.blocks=[],this.active=!0}postConstruct(){this.maxConcurrentRequests=ny(this.gos);const e=this.gos.get("blockLoadDebounceMillis");e&&e>0&&(this.checkBlockToLoadDebounce=at(this,this.performCheckBlocksToLoad.bind(this),e))}addBlock(e){this.blocks.push(e),e.addEventListener("loadComplete",this.loadComplete.bind(this)),this.checkBlockToLoad()}removeBlock(e){is(this.blocks,e)}destroy(){super.destroy(),this.active=!1}loadComplete(){this.activeBlockLoadsCount--,this.checkBlockToLoad()}checkBlockToLoad(){this.checkBlockToLoadDebounce?this.checkBlockToLoadDebounce():this.performCheckBlocksToLoad()}performCheckBlocksToLoad(){if(!this.active)return;if(this.printCacheStatus(),this.maxConcurrentRequests!=null&&this.activeBlockLoadsCount>=this.maxConcurrentRequests){Oo(this.gos,"RowNodeBlockLoader - checkBlockToLoad: max loads exceeded");return}const e=this.maxConcurrentRequests!=null?this.maxConcurrentRequests-this.activeBlockLoadsCount:1,t=this.blocks.filter(s=>s.state==="needsLoading").slice(0,e);this.activeBlockLoadsCount+=t.length;for(const s of t)s.load();this.printCacheStatus()}getBlockState(){const e={};return this.blocks.forEach(t=>{const{id:s,state:o}=t.getBlockStateJson();e[s]=o}),e}printCacheStatus(){Oo(this.gos,`RowNodeBlockLoader - printCacheStatus: activePageLoadsCount = ${this.activeBlockLoadsCount}, blocks = ${JSON.stringify(this.getBlockState())}`)}},s6={moduleName:"InfiniteRowModelCore",version:Y,rowModels:["infinite"],beans:[XI,t6]},o6={moduleName:"InfiniteRowModel",version:Y,apiFunctions:{refreshInfiniteCache:QI,purgeInfiniteCache:JI,getInfiniteRowCount:e6},dependsOn:[s6,fI]},i6="↑",n6="↓",r6={tag:"span",children:[{tag:"span",ref:"eDelta",cls:"ag-value-change-delta"},{tag:"span",ref:"eValue",cls:"ag-value-change-value"}]},a6=class extends Xe{constructor(){super(r6),this.eValue=Ce,this.eDelta=Ce,this.refreshCount=0}init(e){this.refresh(e,!0)}showDelta(e,t){const s=Math.abs(t),o=e.formatValue(s),i=X(o)?o:s,n=t>=0,r=this.eDelta;n?r.textContent=i6+i:r.textContent=n6+i,r.classList.toggle("ag-value-change-delta-up",n),r.classList.toggle("ag-value-change-delta-down",!n)}setTimerToRemoveDelta(){this.refreshCount++;const e=this.refreshCount;this.beans.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.hideDeltaValue()},2e3)})}hideDeltaValue(){this.eValue.classList.remove("ag-value-change-value-highlight"),Tt(this.eDelta)}refresh(e,t=!1){const{value:s,valueFormatted:o}=e,{eValue:i,lastValue:n,beans:r}=this;if(s===n||(X(o)?i.textContent=o:X(s)?i.textContent=s:Tt(i),r.filterManager?.isSuppressFlashingCellsBecauseFiltering()))return!1;const a=s&&typeof s=="object"&&"toNumber"in s?s.toNumber():s,l=n&&typeof n=="object"&&"toNumber"in n?n.toNumber():n;if(a===l)return!1;if(typeof a=="number"&&typeof l=="number"){const c=a-l;this.showDelta(e,c)}return n&&i.classList.add("ag-value-change-value-highlight"),t||this.setTimerToRemoveDelta(),this.lastValue=s,!0}},l6=".ag-value-slide-out{opacity:1}:where(.ag-ltr) .ag-value-slide-out{margin-right:5px;transition:opacity 3s,margin-right 3s}:where(.ag-rtl) .ag-value-slide-out{margin-left:5px;transition:opacity 3s,margin-left 3s}:where(.ag-ltr,.ag-rtl) .ag-value-slide-out{transition-timing-function:linear}.ag-value-slide-out-end{opacity:0}:where(.ag-ltr) .ag-value-slide-out-end{margin-right:10px}:where(.ag-rtl) .ag-value-slide-out-end{margin-left:10px}",c6={tag:"span",children:[{tag:"span",ref:"eCurrent",cls:"ag-value-slide-current"}]},d6=class extends Xe{constructor(){super(c6),this.eCurrent=Ce,this.refreshCount=0,this.registerCSS(l6)}init(e){this.refresh(e,!0)}addSlideAnimation(){this.refreshCount++;const e=this.refreshCount;this.ePrevious?.remove();const{beans:t,eCurrent:s}=this,o=xt({tag:"span",cls:"ag-value-slide-previous ag-value-slide-out"});this.ePrevious=o,o.textContent=s.textContent,this.getGui().insertBefore(o,s),t.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.ePrevious.classList.add("ag-value-slide-out-end")},50),window.setTimeout(()=>{e===this.refreshCount&&(this.ePrevious?.remove(),this.ePrevious=null)},3e3)})}refresh(e,t=!1){let s=e.value;if($e(s)&&(s=""),s===this.lastValue||this.beans.filterManager?.isSuppressFlashingCellsBecauseFiltering())return!1;t||this.addSlideAnimation(),this.lastValue=s;const o=this.eCurrent;return X(e.valueFormatted)?o.textContent=e.valueFormatted:X(e.value)?o.textContent=s:Tt(o),!0}},u6=class extends O{constructor(){super(...arguments),this.beanName="cellFlashSvc",this.nextAnimationTime=null,this.nextAnimationCycle=null,this.animations={highlight:new Map,"data-changed":new Map}}animateCell(e,t,s=this.beans.gos.get("cellFlashDuration"),o=this.beans.gos.get("cellFadeDuration")){const i=this.animations[t];i.delete(e);const n=Date.now(),r=n+s,a=n+s+o,l={phase:"flash",flashEndTime:r,fadeEndTime:a};i.set(e,l);const c=`ag-cell-${t}`,d=`${c}-animation`,{comp:u,eGui:{style:h}}=e;u.toggleCss(c,!0),u.toggleCss(d,!1),h.removeProperty("transition"),h.removeProperty("transition-delay"),this.nextAnimationTime&&r+15<this.nextAnimationTime&&(clearTimeout(this.nextAnimationCycle),this.nextAnimationCycle=null,this.nextAnimationTime=null),this.nextAnimationCycle||(this.beans.frameworkOverrides.wrapIncoming(()=>{this.nextAnimationCycle=setTimeout(this.advanceAnimations.bind(this),s)}),this.nextAnimationTime=r)}advanceAnimations(){const e=Date.now();let t=null;for(const s of Object.keys(this.animations)){const o=this.animations[s],i=`ag-cell-${s}`,n=`${i}-animation`;for(const[r,a]of o){if(!r.isAlive()||!r.comp){o.delete(r);continue}const{phase:l,flashEndTime:c,fadeEndTime:d}=a,u=l==="flash"?c:d;if(!(e+15>=u)){t=Math.min(u,t??1/0);continue}const{comp:p,eGui:{style:f}}=r;switch(l){case"flash":p.toggleCss(i,!1),p.toggleCss(n,!0),f.transition=`background-color ${d-c}ms`,f.transitionDelay=`${c-e}ms`,t=Math.min(d,t??1/0),a.phase="fade";break;case"fade":p.toggleCss(i,!1),p.toggleCss(n,!1),f.removeProperty("transition"),f.removeProperty("transition-delay"),o.delete(r);break}}}t==null?(this.nextAnimationTime=null,this.nextAnimationCycle=null):t&&(this.nextAnimationCycle=setTimeout(this.advanceAnimations.bind(this),t-e),this.nextAnimationTime=t)}onFlashCells(e,t){if(!e.comp)return;const s=sE(e.cellPosition);t.cells[s]&&this.animateCell(e,"highlight")}flashCell(e,t){this.animateCell(e,"data-changed",t?.flashDuration,t?.fadeDuration)}destroy(){for(const e of Object.keys(this.animations))this.animations[e].clear()}};function h6(e,t={}){const{cellFlashSvc:s}=e;s&&e.frameworkOverrides.wrapIncoming(()=>{for(const o of e.rowRenderer.getCellCtrls(t.rowNodes,t.columns))s.flashCell(o,t)})}var g6={moduleName:"HighlightChanges",version:Y,beans:[u6],userComponents:{agAnimateShowChangeCellRenderer:a6,agAnimateSlideCellRenderer:d6},apiFunctions:{flashCells:h6}};function p6(e){return e.stateSvc?.getState()??{}}function f6(e,t,s){return e.stateSvc?.setState(t,s)}function np(e){return e={...e},e.version||(e.version="32.1.0"),e.version==="32.1.0"&&(e=m6(e)),e.version=Y,e}function m6(e){return e.cellSelection=C6(e,"rangeSelection"),e}function C6(e,t){if(e&&typeof e=="object")return e[t]}var v6=class extends O{constructor(){super(...arguments),this.beanName="stateSvc",this.updateRowGroupExpansionStateTimer=0,this.suppressEvents=!0,this.queuedUpdateSources=new Set,this.dispatchStateUpdateEventDebounced=at(this,()=>this.dispatchQueuedStateUpdateEvents(),0),this.onRowGroupOpenedDebounced=at(this,()=>{this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(this.updateCachedState("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),this.updateCachedState("rowGroupExpansion",void 0)):(this.updateCachedState("rowGroupExpansion",this.getRowGroupExpansionState()),this.updateCachedState("ssrmRowGroupExpansion",void 0))},0),this.onRowSelectedDebounced=at(this,()=>{this.staleStateKeys.delete("rowSelection"),this.updateCachedState("rowSelection",this.getRowSelectionState())},0),this.staleStateKeys=new Set}postConstruct(){const{gos:e,ctrlsSvc:t,colDelayRenderSvc:s}=this.beans;this.isClientSideRowModel=Qe(e);const o=np(e.get("initialState")??{}),i=o.partialColumnState;delete o.partialColumnState,this.cachedState=o;const n=this.suppressEventsAndDispatchInitEvent.bind(this);t.whenReady(this,()=>n(()=>this.setupStateOnGridReady(o))),(o.columnOrder||o.columnVisibility||o.columnSizing||o.columnPinning||o.columnGroup)&&s?.hideColumns("columnState");const[r,a,l]=this.addManagedEventListeners({newColumnsLoaded:({source:c})=>{c==="gridInitializing"&&(r(),n(()=>{this.setupStateOnColumnsInitialised(o,!!i),s?.revealColumns("columnState")}))},rowCountReady:()=>{a?.(),n(()=>this.setupStateOnRowCountReady(o))},firstDataRendered:()=>{l?.(),n(()=>this.setupStateOnFirstDataRendered(o))}})}destroy(){super.destroy(),clearTimeout(this.updateRowGroupExpansionStateTimer),this.queuedUpdateSources.clear()}getState(){return this.staleStateKeys.size&&this.refreshStaleState(),this.cachedState}setState(e,t){const s=np(e);delete s.partialColumnState,this.cachedState=s,this.startSuppressEvents();const o="api",i=t?new Set(t):void 0;this.setGridReadyState(s,o,i),this.setColumnsInitialisedState(s,o,!!i,i),this.setRowCountState(s,o,i),setTimeout(()=>{this.isAlive()&&this.setFirstDataRenderedState(s,o,i),this.stopSuppressEvents(o)})}setGridReadyState(e,t,s){t==="api"&&!s?.has("sideBar")&&this.beans.sideBar?.comp?.setState(e.sideBar),this.updateCachedState("sideBar",this.getSideBarState())}setupStateOnGridReady(e){this.setGridReadyState(e,"gridInitializing");const t=()=>this.updateCachedState("sideBar",this.getSideBarState());this.addManagedEventListeners({toolPanelVisibleChanged:t,sideBarUpdated:t})}updateColumnAndGroupState(){this.updateColumnState(["aggregation","columnOrder","columnPinning","columnSizing","columnVisibility","pivot","rowGroup","sort"]),this.updateCachedState("columnGroup",this.getColumnGroupState())}setColumnsInitialisedState(e,t,s,o){this.setColumnState(e,t,s,o),this.setColumnGroupState(e,t,o),this.updateColumnAndGroupState()}setupStateOnColumnsInitialised(e,t){this.setColumnsInitialisedState(e,"gridInitializing",t);const s=o=>()=>this.updateColumnState([o]);this.addManagedEventListeners({columnValueChanged:s("aggregation"),columnMoved:s("columnOrder"),columnPinned:s("columnPinning"),columnResized:s("columnSizing"),columnVisible:s("columnVisibility"),columnPivotChanged:s("pivot"),columnPivotModeChanged:s("pivot"),columnRowGroupChanged:s("rowGroup"),sortChanged:s("sort"),newColumnsLoaded:this.updateColumnAndGroupState.bind(this),columnGroupOpened:()=>this.updateCachedState("columnGroup",this.getColumnGroupState())})}setRowCountState(e,t,s){const{filter:o,rowGroupExpansion:i,ssrmRowGroupExpansion:n,rowSelection:r,pagination:a}=e,l=(d,u)=>!s?.has(d)&&(u||t==="api");l("filter",o)&&this.setFilterState(o),l("rowGroupExpansion",i)&&this.setRowGroupExpansionState(n,i,t),l("rowSelection",r)&&this.setRowSelectionState(r,t),l("pagination",a)&&this.setPaginationState(a,t);const c=this.updateCachedState.bind(this);c("filter",this.getFilterState()),this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(c("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),c("rowGroupExpansion",void 0)):(c("rowGroupExpansion",this.getRowGroupExpansionState()),c("ssrmRowGroupExpansion",void 0)),c("rowSelection",this.getRowSelectionState()),c("pagination",this.getPaginationState())}setupStateOnRowCountReady(e){this.setRowCountState(e,"gridInitializing");const t=this.updateCachedState.bind(this),s=()=>{this.updateRowGroupExpansionStateTimer=0,this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(t("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),t("rowGroupExpansion",void 0)):(t("rowGroupExpansion",this.getRowGroupExpansionState()),t("ssrmRowGroupExpansion",void 0))},o=()=>t("filter",this.getFilterState()),{gos:i,colFilter:n}=this.beans;this.addManagedEventListeners({filterChanged:o,rowExpansionStateChanged:this.onRowGroupOpenedDebounced,expandOrCollapseAll:s,columnRowGroupChanged:s,rowDataUpdated:()=>{(i.get("groupDefaultExpanded")!==0||i.get("isGroupOpenByDefault"))&&(this.updateRowGroupExpansionStateTimer||(this.updateRowGroupExpansionStateTimer=setTimeout(s)))},selectionChanged:()=>{this.staleStateKeys.add("rowSelection"),this.onRowSelectedDebounced()},paginationChanged:r=>{(r.newPage||r.newPageSize)&&t("pagination",this.getPaginationState())}}),n&&this.addManagedListeners(n,{filterStateChanged:o})}setFirstDataRenderedState(e,t,s){const{scroll:o,cellSelection:i,focusedCell:n,columnOrder:r,rowPinning:a}=e,l=(u,h)=>!s?.has(u)&&(h||t==="api");l("focusedCell",n)&&this.setFocusedCellState(n),l("cellSelection",i)&&this.setCellSelectionState(i),l("scroll",o)&&this.setScrollState(o),l("rowPinning",a)&&this.setRowPinningState(a),this.setColumnPivotState(!!r?.orderedColIds,t);const c=this.updateCachedState.bind(this);c("sideBar",this.getSideBarState()),c("focusedCell",this.getFocusedCellState());const d=this.getRangeSelectionState();c("rangeSelection",d),c("cellSelection",d),c("scroll",this.getScrollState())}setupStateOnFirstDataRendered(e){this.setFirstDataRenderedState(e,"gridInitializing");const t=this.updateCachedState.bind(this),s=()=>t("focusedCell",this.getFocusedCellState());this.addManagedEventListeners({cellFocused:s,cellFocusCleared:s,cellSelectionChanged:o=>{if(o.finished){const i=this.getRangeSelectionState();t("rangeSelection",i),t("cellSelection",i)}},bodyScrollEnd:()=>t("scroll",this.getScrollState()),pinnedRowsChanged:()=>t("rowPinning",this.getRowPinningState())})}getColumnState(){const e=this.beans;return h4(ka(e),e.colModel.isPivotMode())}setColumnState(e,t,s,o){const{sort:i,rowGroup:n,aggregation:r,pivot:a,columnPinning:l,columnVisibility:c,columnSizing:d,columnOrder:u}=e;let h=!1;const p=(T,M)=>{const k=!o?.has(T)&&!!(M||t==="api");return h||(h=k),k},f={},C=T=>{let M=f[T];return M||(M={colId:T},f[T]=M,M)},v={},w=p("sort",i);w&&i?.sortModel.forEach(({colId:T,sort:M},k)=>{const N=C(T);N.sort=M,N.sortIndex=k}),(w||!s)&&(v.sort=null,v.sortIndex=null);const b=p("rowGroup",n);b&&n?.groupColIds.forEach((T,M)=>{const k=C(T);k.rowGroup=!0,k.rowGroupIndex=M}),(b||!s)&&(v.rowGroup=null,v.rowGroupIndex=null);const S=p("aggregation",r);S&&r?.aggregationModel.forEach(({colId:T,aggFunc:M})=>{C(T).aggFunc=M}),(S||!s)&&(v.aggFunc=null);const y=p("pivot",a);y&&(a?.pivotColIds.forEach((T,M)=>{const k=C(T);k.pivot=!0,k.pivotIndex=M}),this.gos.updateGridOptions({options:{pivotMode:!!a?.pivotMode},source:t})),(y||!s)&&(v.pivot=null,v.pivotIndex=null);const x=p("columnPinning",l);if(x){for(const T of l?.leftColIds??[])C(T).pinned="left";for(const T of l?.rightColIds??[])C(T).pinned="right"}(x||!s)&&(v.pinned=null);const F=p("columnVisibility",c);if(F)for(const T of c?.hiddenColIds??[])C(T).hide=!0;(F||!s)&&(v.hide=null);const R=p("columnSizing",d);if(R)for(const{colId:T,flex:M,width:k}of d?.columnSizingModel??[]){const N=C(T);N.flex=M??null,N.width=k}(R||!s)&&(v.flex=null);const E=u?.orderedColIds,D=!!E?.length&&!o?.has("columnOrder"),P=D?E.map(T=>C(T)):Object.values(f);(P.length||h)&&(this.columnStates=P,os(this.beans,{state:P,applyOrder:D,defaultState:v},t))}setColumnPivotState(e,t){const s=this.columnStates;this.columnStates=void 0;const o=this.columnGroupStates;this.columnGroupStates=void 0;const i=this.beans,{pivotResultCols:n,colGroupSvc:r}=i;if(n?.isPivotResultColsPresent()){if(s){const a=[];for(const l of s)n.getPivotResultCol(l.colId)&&a.push(l);os(i,{state:a,applyOrder:e},t)}o&&r?.setColumnGroupState(o,t)}}getColumnGroupState(){const e=this.beans.colGroupSvc;if(!e)return;const t=e.getColumnGroupState();return g4(t)}setColumnGroupState(e,t,s){const o=this.beans.colGroupSvc;if(!o||s?.has("columnGroup")||t!=="api"&&!Object.prototype.hasOwnProperty.call(e,"columnGroup"))return;const i=new Set(e.columnGroup?.openColumnGroupIds),r=o.getColumnGroupState().map(({groupId:a})=>{const l=i.has(a);return l&&i.delete(a),{groupId:a,open:l}});for(const a of i)r.push({groupId:a,open:!0});r.length&&(this.columnGroupStates=r),o.setColumnGroupState(r,t)}getFilterState(){const e=this.beans.filterManager;let t=e?.getFilterModel();t&&Object.keys(t).length===0&&(t=void 0);const s=e?.getFilterState(),o=e?.getAdvFilterModel()??void 0;return t||o||s?{filterModel:t,columnFilterState:s,advancedFilterModel:o}:void 0}setFilterState(e){const t=this.beans.filterManager,{filterModel:s,columnFilterState:o,advancedFilterModel:i}=e??{filterModel:null,columnFilterState:null,advancedFilterModel:null};(s!==void 0||o!==void 0)&&t?.setFilterState(s??null,o??null,"columnFilter"),i!==void 0&&t?.setAdvFilterModel(i??null,"advancedFilter")}getRangeSelectionState(){const e=this.beans.rangeSvc?.getCellRanges().map(t=>{const{id:s,type:o,startRow:i,endRow:n,columns:r,startColumn:a}=t;return{id:s,type:o,startRow:i,endRow:n,colIds:r.map(l=>l.getColId()),startColId:a.getColId()}});return e?.length?{cellRanges:e}:void 0}setCellSelectionState(e){const{gos:t,rangeSvc:s,colModel:o,visibleCols:i}=this.beans;if(!so(t)||!s)return;const n=[];for(const r of e?.cellRanges??[]){const a=[];for(const c of r.colIds){const d=o.getCol(c);d&&a.push(d)}if(!a.length)continue;let l=o.getCol(r.startColId);if(!l){const c=i.allCols,d=new Set(a);l=c.find(u=>d.has(u))}n.push({...r,columns:a,startColumn:l})}s.setCellRanges(n)}getScrollState(){if(!this.isClientSideRowModel)return;const e=this.beans.ctrlsSvc.getScrollFeature(),{left:t}=e?.getHScrollPosition()??{left:0},{top:s}=e?.getVScrollPosition()??{top:0};return s||t?{top:s,left:t}:void 0}setScrollState(e){if(!this.isClientSideRowModel)return;const{top:t,left:s}=e??{top:0,left:0},{frameworkOverrides:o,rowRenderer:i,animationFrameSvc:n,ctrlsSvc:r}=this.beans;o.wrapIncoming(()=>{r.get("center").setCenterViewportScrollLeft(s),r.getScrollFeature()?.setVerticalScrollPosition(t),i.redraw({afterScroll:!0}),n?.flushAllFrames()})}getSideBarState(){return this.beans.sideBar?.comp?.getState()}getFocusedCellState(){if(!this.isClientSideRowModel)return;const e=this.beans.focusSvc.getFocusedCell();if(e){const{column:t,rowIndex:s,rowPinned:o}=e;return{colId:t.getColId(),rowIndex:s,rowPinned:o}}}setFocusedCellState(e){if(!this.isClientSideRowModel)return;const{focusSvc:t,colModel:s}=this.beans;if(!e){t.clearFocusedCell();return}const{colId:o,rowIndex:i,rowPinned:n}=e;t.setFocusedCell({column:s.getCol(o),rowIndex:i,rowPinned:n,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}getPaginationState(){const{pagination:e,gos:t}=this.beans;if(!e)return;const s=e.getCurrentPage(),o=t.get("paginationAutoPageSize")?void 0:e.getPageSize();if(!(!s&&!o))return{page:s,pageSize:o}}setPaginationState(e,t){const{pagination:s,gos:o}=this.beans;if(!s)return;const{pageSize:i,page:n}=e??{page:0,pageSize:o.get("paginationPageSize")},r=t==="gridInitializing";i&&!o.get("paginationAutoPageSize")&&s.setPageSize(i,r?"initialState":"pageSizeSelector"),typeof n=="number"&&(r?s.setPage(n):s.goToPage(n))}getRowSelectionState(){const e=this.beans.selectionSvc;if(!e)return;const t=e.getSelectionState();return!t||!Array.isArray(t)&&(t.selectAll===!1||t.selectAllChildren===!1)&&!t?.toggledNodes?.length?void 0:t}setRowSelectionState(e,t){this.beans.selectionSvc?.setSelectionState(e,t,t==="api")}getRowGroupExpansionState(){const{expansionSvc:e}=this.beans;if(e)return e.getExpansionState()}getRowPinningState(){return this.beans.pinnedRowModel?.getPinnedState()}setRowPinningState(e){const t=this.beans.pinnedRowModel;e?t?.setPinnedState(e):t?.reset()}setRowGroupExpansionState(e,t,s){const o=this.beans.expansionSvc;if(!o)return;const i=t??{expandedRowGroupIds:[],collapsedRowGroupIds:[]};o.setExpansionState(i,s)}updateColumnState(e){const t=this.getColumnState();let s=!1;const o=this.cachedState;for(const i of Object.keys(t)){const n=t[i];$n(n,o[i])||(s=!0)}this.cachedState={...o,...t},s&&this.dispatchStateUpdateEvent(e)}updateCachedState(e,t){const s=this.cachedState[e];this.setCachedStateValue(e,t),$n(t,s)||this.dispatchStateUpdateEvent([e])}setCachedStateValue(e,t){this.cachedState={...this.cachedState,[e]:t}}refreshStaleState(){const e=this.staleStateKeys;for(const t of e)t==="rowSelection"&&this.setCachedStateValue(t,this.getRowSelectionState());e.clear()}dispatchStateUpdateEvent(e){if(!this.suppressEvents){for(const t of e)this.queuedUpdateSources.add(t);this.dispatchStateUpdateEventDebounced()}}dispatchQueuedStateUpdateEvents(){const e=this.queuedUpdateSources,t=Array.from(e);e.clear(),this.eventSvc.dispatchEvent({type:"stateUpdated",sources:t,state:this.cachedState})}startSuppressEvents(){this.suppressEvents=!0,this.beans.colAnimation?.setSuppressAnimation(!0)}stopSuppressEvents(e){setTimeout(()=>{this.suppressEvents=!1,this.queuedUpdateSources.clear(),this.isAlive()&&(this.beans.colAnimation?.setSuppressAnimation(!1),this.dispatchStateUpdateEvent([e]))})}suppressEventsAndDispatchInitEvent(e){this.startSuppressEvents(),e(),this.stopSuppressEvents("gridInitializing")}},w6={moduleName:"GridState",version:Y,beans:[v6],apiFunctions:{getState:p6,setState:f6}};function b6(e){return e.rowModel.isLastRowIndexKnown()}function S6(e){return e.pagination?.getPageSize()??100}function y6(e){return e.pagination?.getCurrentPage()??0}function x6(e){return e.pagination?.getTotalPages()??1}function R6(e){return e.pagination?e.pagination.getMasterRowCount():e.rowModel.getRowCount()}function F6(e){e.pagination?.goToNextPage()}function E6(e){e.pagination?.goToPreviousPage()}function D6(e){e.pagination?.goToFirstPage()}function P6(e){e.pagination?.goToLastPage()}function T6(e,t){e.pagination?.goToPage(t)}var M6=class extends O{constructor(){super(...arguments),this.beanName="paginationAutoPageSizeSvc"}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.centerRowsCtrl=e.center;const t=this.checkPageSize.bind(this);this.addManagedEventListeners({bodyHeightChanged:t,scrollVisibilityChanged:t}),this.addManagedPropertyListener("paginationAutoPageSize",this.onPaginationAutoSizeChanged.bind(this)),this.checkPageSize()})}notActive(){return!this.gos.get("paginationAutoPageSize")||this.centerRowsCtrl==null}onPaginationAutoSizeChanged(){this.notActive()?this.beans.pagination.unsetAutoCalculatedPageSize():this.checkPageSize()}checkPageSize(){if(this.notActive())return;const e=this.centerRowsCtrl.viewportSizeFeature.getBodyHeight();if(e>0){const t=this.beans,s=()=>{const o=Math.max(Do(t),1),i=Math.floor(e/o);t.pagination.setPageSize(i,"autoCalculated")};this.isBodyRendered?at(this,s,50)():(s(),this.isBodyRendered=!0)}else this.isBodyRendered=!1}},xn="paginationPageSizeSelector",I6={tag:"span",cls:"ag-paging-page-size"},k6=class extends Xe{constructor(){super(I6),this.hasEmptyOption=!1,this.handlePageSizeItemSelected=()=>{if(!this.selectPageSizeComp)return;const e=this.selectPageSizeComp.getValue();if(!e)return;const t=Number(e);isNaN(t)||t<1||t===this.pagination.getPageSize()||(this.pagination.setPageSize(t,"pageSizeSelector"),this.hasEmptyOption&&this.toggleSelectDisplay(!0),this.selectPageSizeComp.getFocusableElement().focus())}}wireBeans(e){this.pagination=e.pagination}postConstruct(){this.addManagedPropertyListener(xn,()=>{this.onPageSizeSelectorValuesChange()}),this.addManagedEventListeners({paginationChanged:e=>this.handlePaginationChanged(e)})}handlePaginationChanged(e){if(!this.selectPageSizeComp||!e?.newPageSize)return;const t=this.pagination.getPageSize();this.getPageSizeSelectorValues().includes(t)?this.selectPageSizeComp.setValue(t.toString()):this.hasEmptyOption?this.selectPageSizeComp.setValue(""):this.toggleSelectDisplay(!0)}toggleSelectDisplay(e){this.selectPageSizeComp&&!e&&this.reset(),e&&(this.reloadPageSizesSelector(),this.selectPageSizeComp)}reset(){Tt(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(xn)!==!1}reloadPageSizesSelector(){const e=this.getPageSizeSelectorValues(),t=this.pagination.getPageSize(),s=!t||!e.includes(t);if(s){const i=this.gos.exists("paginationPageSize"),n=this.gos.get(xn)!==!0;z(94,{pageSizeSet:i,pageSizesSet:n,pageSizeOptions:e,paginationPageSizeOption:t}),n||z(95,{paginationPageSizeOption:t,paginationPageSizeSelector:xn}),e.unshift("")}const o=String(s?"":t);this.selectPageSizeComp?(ro(this.pageSizeOptions,e)||(this.selectPageSizeComp.clearOptions().addOptions(this.createPageSizeSelectOptions(e)),this.pageSizeOptions=e),this.selectPageSizeComp.setValue(o,!0)):this.createPageSizeSelectorComp(e,o),this.hasEmptyOption=s}createPageSizeSelectOptions(e){return e.map(t=>({value:String(t)}))}createPageSizeSelectorComp(e,t){const s=this.getLocaleTextFunc(),o=s("pageSizeSelectorLabel","Page Size:"),i=s("ariaPageSizeSelectorLabel","Page Size");this.selectPageSizeComp=this.createManagedBean(new Du).addOptions(this.createPageSizeSelectOptions(e)).setValue(t).setAriaLabel(i).setLabel(o).onValueChange(()=>this.handlePageSizeItemSelected()),this.appendChild(this.selectPageSizeComp)}getPageSizeSelectorValues(){const e=[20,50,100],t=this.gos.get(xn);return!Array.isArray(t)||!t?.length?e:[...t].sort((s,o)=>s-o)}destroy(){this.toggleSelectDisplay(!1),super.destroy()}},A6={selector:"AG-PAGE-SIZE-SELECTOR",component:k6},L6=".ag-paging-panel{align-items:center;border-top:var(--ag-footer-row-border);display:flex;gap:calc(var(--ag-spacing)*4);height:var(--ag-pagination-panel-height);justify-content:flex-end;padding:0 var(--ag-cell-horizontal-padding)}:where(.ag-paging-page-size) .ag-wrapper{min-width:50px}.ag-paging-page-summary-panel{align-items:center;display:flex;gap:var(--ag-cell-widget-spacing);.ag-disabled &{pointer-events:none}}.ag-paging-button{cursor:pointer;position:relative;&.ag-disabled{cursor:default;opacity:.5}}.ag-paging-number,.ag-paging-row-summary-panel-number{font-weight:500}",O6=class extends PF{constructor(){super(),this.btFirst=Ce,this.btPrevious=Ce,this.btNext=Ce,this.btLast=Ce,this.lbRecordCount=Ce,this.lbFirstRowOnPage=Ce,this.lbLastRowOnPage=Ce,this.lbCurrent=Ce,this.lbTotal=Ce,this.pageSizeComp=Ce,this.previousAndFirstButtonsDisabled=!1,this.nextButtonDisabled=!1,this.lastButtonDisabled=!1,this.areListenersSetup=!1,this.allowFocusInnerElement=!1,this.registerCSS(L6)}wireBeans(e){this.rowModel=e.rowModel,this.pagination=e.pagination,this.ariaAnnounce=e.ariaAnnounce}postConstruct(){const e=this.gos.get("enableRtl");this.setTemplate(this.getTemplate(),[A6]);const{btFirst:t,btPrevious:s,btNext:o,btLast:i}=this;this.activateTabIndex([t,s,o,i]),t.insertAdjacentElement("afterbegin",Xt(e?"last":"first",this.beans)),s.insertAdjacentElement("afterbegin",Xt(e?"next":"previous",this.beans)),o.insertAdjacentElement("afterbegin",Xt(e?"previous":"next",this.beans)),i.insertAdjacentElement("afterbegin",Xt(e?"first":"last",this.beans)),this.addManagedPropertyListener("pagination",this.onPaginationChanged.bind(this)),this.addManagedPropertyListener("suppressPaginationPanel",this.onPaginationChanged.bind(this)),this.addManagedPropertyListeners(["paginationPageSizeSelector","paginationAutoPageSize","suppressPaginationPanel"],()=>this.onPageSizeRelatedOptionsChange()),this.pageSizeComp.toggleSelectDisplay(this.pageSizeComp.shouldShowPageSizeSelector()),this.initialiseTabGuard({onTabKeyDown:()=>{},focusInnerElement:n=>this.allowFocusInnerElement?this.tabGuardFeature.getTabGuardCtrl().focusInnerElement(n):$2(this.beans,n),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(){if(!this.areListenersSetup){this.addManagedEventListeners({paginationChanged:this.onPaginationChanged.bind(this)});for(const e of[{el:this.btFirst,fn:this.onBtFirst.bind(this)},{el:this.btPrevious,fn:this.onBtPrevious.bind(this)},{el:this.btNext,fn:this.onBtNext.bind(this)},{el:this.btLast,fn:this.onBtLast.bind(this)}]){const{el:t,fn:s}=e;this.addManagedListeners(t,{click:s,keydown:o=>{(o.key===I.ENTER||o.key===I.SPACE)&&(o.preventDefault(),s())}})}U2(this.beans,this,this.getGui()),this.areListenersSetup=!0}}onBtFirst(){this.previousAndFirstButtonsDisabled||this.pagination.goToFirstPage()}formatNumber(e){const t=this.gos.getCallback("paginationNumberFormatter");return t?t({value:e}):f4(e,this.getLocaleTextFunc.bind(this))}getTemplate(){const e=this.getLocaleTextFunc(),t=`ag-${this.getCompId()}`;return{tag:"div",cls:"ag-paging-panel ag-unselectable",attrs:{id:`${t}`},children:[{tag:"ag-page-size-selector",ref:"pageSizeComp"},{tag:"span",cls:"ag-paging-row-summary-panel",children:[{tag:"span",ref:"lbFirstRowOnPage",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-first-row`}},{tag:"span",attrs:{id:`${t}-to`},children:e("to","to")},{tag:"span",ref:"lbLastRowOnPage",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-last-row`}},{tag:"span",attrs:{id:`${t}-of`},children:e("of","of")},{tag:"span",ref:"lbRecordCount",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-row-count`}}]},{tag:"span",cls:"ag-paging-page-summary-panel",role:"presentation",children:[{tag:"div",ref:"btFirst",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("firstPage","First Page")}},{tag:"div",ref:"btPrevious",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("previousPage","Previous Page")}},{tag:"span",cls:"ag-paging-description",children:[{tag:"span",attrs:{id:`${t}-start-page`},children:e("page","Page")},{tag:"span",ref:"lbCurrent",cls:"ag-paging-number",attrs:{id:`${t}-start-page-number`}},{tag:"span",attrs:{id:`${t}-of-page`},children:e("of","of")},{tag:"span",ref:"lbTotal",cls:"ag-paging-number",attrs:{id:`${t}-of-page-number`}}]},{tag:"div",ref:"btNext",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("nextPage","Next Page")}},{tag:"div",ref:"btLast",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("lastPage","Last Page")}}]}]}}onBtNext(){this.nextButtonDisabled||this.pagination.goToNextPage()}onBtPrevious(){this.previousAndFirstButtonsDisabled||this.pagination.goToPreviousPage()}onBtLast(){this.lastButtonDisabled||this.pagination.goToLastPage()}enableOrDisableButtons(){const e=this.pagination.getCurrentPage(),t=this.rowModel.isLastRowIndexKnown(),s=this.pagination.getTotalPages();this.previousAndFirstButtonsDisabled=e===0,this.toggleButtonDisabled(this.btFirst,this.previousAndFirstButtonsDisabled),this.toggleButtonDisabled(this.btPrevious,this.previousAndFirstButtonsDisabled);const o=this.isZeroPagesToDisplay(),i=e===s-1;this.nextButtonDisabled=i||o,this.lastButtonDisabled=!t||o||e===s-1,this.toggleButtonDisabled(this.btNext,this.nextButtonDisabled),this.toggleButtonDisabled(this.btLast,this.lastButtonDisabled)}toggleButtonDisabled(e,t){cS(e,t),e.classList.toggle("ag-disabled",t)}isZeroPagesToDisplay(){const e=this.rowModel.isLastRowIndexKnown(),t=this.pagination.getTotalPages();return e&&t===0}updateLabels(){const e=this.rowModel.isLastRowIndexKnown(),t=this.pagination.getTotalPages(),s=this.pagination.getMasterRowCount(),o=e?s:null,i=this.pagination.getCurrentPage(),n=this.pagination.getPageSize();let r,a;this.isZeroPagesToDisplay()?r=a=0:(r=n*i+1,a=r+n-1,e&&a>o&&(a=o));const l=r+n-1,c=!e&&s<l,d=this.formatNumber(r);this.lbFirstRowOnPage.textContent=d;let u;const h=this.getLocaleTextFunc();c?u=h("pageLastRowUnknown","?"):u=this.formatNumber(a),this.lbLastRowOnPage.textContent=u;const f=t>0?i+1:0,C=this.formatNumber(f);this.lbCurrent.textContent=C;let v,w;if(e)v=this.formatNumber(t),w=this.formatNumber(o);else{const b=h("more","more");v=b,w=b}this.lbTotal.textContent=v,this.lbRecordCount.textContent=w,this.announceAriaStatus(d,u,w,C,v)}announceAriaStatus(e,t,s,o,i){const n=this.getLocaleTextFunc(),r=n("page","Page"),a=n("to","to"),l=n("of","of"),c=`${e} ${a} ${t} ${l} ${s}`,d=`${r} ${o} ${l} ${i}`;c!==this.ariaRowStatus&&(this.ariaRowStatus=c,this.ariaAnnounce?.announceValue(c,"paginationRow")),d!==this.ariaPageStatus&&(this.ariaPageStatus=d,this.ariaAnnounce?.announceValue(d,"paginationPage"))}},N6={selector:"AG-PAGINATION",component:O6},H6=class extends O{constructor(){super(...arguments),this.beanName="pagination",this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=0,this.masterRowCount=0}postConstruct(){const e=this.gos;this.active=e.get("pagination"),this.pageSizeFromGridOptions=e.get("paginationPageSize"),this.paginateChildRows=this.isPaginateChildRows(),this.addManagedPropertyListener("pagination",this.onPaginationGridOptionChanged.bind(this)),this.addManagedPropertyListener("paginationPageSize",this.onPageSizeGridOptionChanged.bind(this))}getPaginationSelector(){return N6}isPaginateChildRows(){const e=this.gos;return e.get("groupHideParentOfSingleChild")||e.get("groupRemoveSingleChildren")||e.get("groupRemoveLowestSingleChildren")?!0:e.get("paginateChildRows")}onPaginationGridOptionChanged(){this.active=this.gos.get("pagination"),this.calculatePages(),this.dispatchPaginationChangedEvent({keepRenderedRows:!0})}onPageSizeGridOptionChanged(){this.setPageSize(this.gos.get("paginationPageSize"),"gridOptions")}goToPage(e){const t=this.currentPage;if(!this.active||t===e||typeof t!="number")return;const{editSvc:s}=this.beans;s?.isEditing()&&(s.isBatchEditing()?s.cleanupEditors():s.stopEditing(void 0,{source:"api"})),this.currentPage=e,this.calculatePages(),this.dispatchPaginationChangedEvent({newPage:!0})}goToPageWithIndex(e){if(!this.active)return;let t=e;this.paginateChildRows||(t=this.beans.rowModel.getTopLevelIndexFromDisplayedIndex?.(e)??e),this.goToPage(Math.floor(t/this.pageSize))}isRowInPage(e){return this.active?e>=this.topDisplayedRowIndex&&e<=this.bottomDisplayedRowIndex:!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.beans.rowModel.getRowCount(),t=Math.floor(e/this.pageSize);this.goToPage(t)}getPageSize(){return this.pageSize}getTotalPages(){return this.totalPages}setPage(e){this.currentPage=e}get pageSize(){return X(this.pageSizeAutoCalculated)&&this.gos.get("paginationAutoPageSize")?this.pageSizeAutoCalculated:X(this.pageSizeFromPageSizeSelector)?this.pageSizeFromPageSizeSelector:X(this.pageSizeFromInitialState)?this.pageSizeFromInitialState:X(this.pageSizeFromGridOptions)?this.pageSizeFromGridOptions:this.defaultPageSize}calculatePages(){this.active?this.paginateChildRows?this.calculatePagesAllRows():this.calculatePagesMasterRowsOnly():this.calculatedPagesNotActive(),this.beans.pageBounds.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(){const e=this.totalPages;this.currentPage>=e&&(this.currentPage=e-1);const t=this.currentPage;(!isFinite(t)||isNaN(t)||t<0)&&(this.currentPage=0)}calculatePagesMasterRowsOnly(){const e=this.beans.rowModel,t=e.getTopLevelRowCount();if(this.masterRowCount=t,t<=0){this.setZeroRows();return}const s=this.pageSize,o=t-1;this.totalPages=Math.floor(o/s)+1,this.adjustCurrentPageIfInvalid();const i=this.currentPage,n=s*i;let r=s*(i+1)-1;if(r>o&&(r=o),this.topDisplayedRowIndex=e.getTopLevelRowDisplayedIndex(n),r===o)this.bottomDisplayedRowIndex=e.getRowCount()-1;else{const a=e.getTopLevelRowDisplayedIndex(r+1);this.bottomDisplayedRowIndex=a-1}}getMasterRowCount(){return this.masterRowCount}calculatePagesAllRows(){const e=this.beans.rowModel.getRowCount();if(this.masterRowCount=e,e===0){this.setZeroRows();return}const{pageSize:t,currentPage:s}=this,o=e-1;this.totalPages=Math.floor(o/t)+1,this.adjustCurrentPageIfInvalid(),this.topDisplayedRowIndex=t*s,this.bottomDisplayedRowIndex=t*(s+1)-1,this.bottomDisplayedRowIndex>o&&(this.bottomDisplayedRowIndex=o)}calculatedPagesNotActive(){this.setPageSize(void 0,"autoCalculated"),this.totalPages=1,this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=this.beans.rowModel.getRowCount()-1}dispatchPaginationChangedEvent(e){const{keepRenderedRows:t=!1,newPage:s=!1,newPageSize:o=!1}=e;this.eventSvc.dispatchEvent({type:"paginationChanged",animate:!1,newData:!1,newPage:s,newPageSize:o,keepRenderedRows:t})}},G6={moduleName:"Pagination",version:Y,beans:[H6,M6],icons:{first:"first",previous:"previous",next:"next",last:"last"},apiFunctions:{paginationIsLastPageFound:b6,paginationGetPageSize:S6,paginationGetCurrentPage:y6,paginationGetTotalPages:x6,paginationGetRowCount:R6,paginationGoToNextPage:F6,paginationGoToPreviousPage:E6,paginationGoToFirstPage:D6,paginationGoToLastPage:P6,paginationGoToPage:T6},dependsOn:[dl]};function B6(e,t={}){const s=t?t.rowNodes:void 0;e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.redrawRows(s))}function cv(e,t,s,o,i){t&&(o&&t.parent&&t.parent.level!==-1&&cv(e,t.parent,s,o,i),t.setExpanded(s,void 0,i))}function V6(e,t){return e.rowModel.getRowNode(t)}function z6(e,t,s,o){e.rowRenderer.addRenderedRowListener(t,s,o)}function W6(e){return e.rowRenderer.getRenderedNodes()}function _6(e,t,s){e.rowModel.forEachNode(t,s)}function j6(e){return e.rowRenderer.firstRenderedRow}function U6(e){return e.rowRenderer.lastRenderedRow}function $6(e,t){return e.rowModel.getRow(t)}function q6(e){return e.rowModel.getRowCount()}var K6={moduleName:"RowApi",version:Y,apiFunctions:{redrawRows:B6,setRowNodeExpanded:cv,getRowNode:V6,addRenderedRowListener:z6,getRenderedNodes:W6,forEachNode:_6,getFirstDisplayedRowIndex:j6,getLastDisplayedRowIndex:U6,getDisplayedRowAtIndex:$6,getDisplayedRowCount:q6}},Y6={moduleName:"ScrollApi",version:Y,apiFunctions:{getVerticalPixelRange:aM,getHorizontalPixelRange:lM,ensureColumnVisible:YC,ensureIndexVisible:ZC,ensureNodeVisible:cM}};function Z6(e,t,s){if(!t)return;const o=e.ctrlsSvc.getGridBodyCtrl().eGridBody,i=`aria-${t}`;s===null?o.removeAttribute(i):o.setAttribute(i,s)}function X6(e,t={}){e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.refreshCells(t))}function Q6(e){e.frameworkOverrides.wrapIncoming(()=>{for(const t of e.ctrlsSvc.getHeaderRowContainerCtrls())t.refresh()})}function J6(e){return e.animationFrameSvc?.isQueueEmpty()??!0}function ek(e){e.animationFrameSvc?.flushAllFrames()}function tk(e){return{rowHeight:Do(e),headerHeight:fr(e)}}function sk(e,t={}){const s=[];for(const n of e.rowRenderer.getCellCtrls(t.rowNodes,t.columns)){const r=n.getCellRenderer();r!=null&&s.push(Jn(r))}if(t.columns?.length)return s;const o=[],i=Gd(t.rowNodes);for(const n of e.rowRenderer.getAllRowCtrls()){if(i&&!Bd(n.rowNode,i)||!n.isFullWidth())continue;const r=n.getFullWidthCellRenderers();for(let a=0;a<r.length;a++){const l=r[a];l!=null&&o.push(Jn(l))}}return[...o,...s]}var ok={moduleName:"RenderApi",version:Y,apiFunctions:{setGridAriaProperty:Z6,refreshCells:X6,refreshHeader:Q6,isAnimationFrameQueueEmpty:J6,flushAllAnimationFrames:ek,getSizesForCurrentTheme:tk,getCellRendererInstances:sk}};function ik(e,t){typeof t=="number"?e.colAutosize?.sizeColumnsToFit(t,"api"):e.colAutosize?.sizeColumnsToFitGridBody(t)}function dv({colAutosize:e,visibleCols:t},s,o){Array.isArray(s)?e?.autoSizeCols({colKeys:s,skipHeader:o,source:"api"}):e?.autoSizeCols({...s,colKeys:s.colIds??t.allCols,source:"api"})}function nk(e,t){t&&typeof t=="object"?dv(e,t):e.colAutosize?.autoSizeAllColumns({source:"api",skipHeader:t})}var rk=class extends O{constructor(){super(...arguments),this.beanName="colAutosize",this.timesDelayed=0,this.shouldQueueResizeOperations=!1,this.resizeOperationQueue=[]}postConstruct(){const{gos:e}=this,t=e.get("autoSizeStrategy");if(t){let s=!1;const o=t.type;if(o==="fitGridWidth"||o==="fitProvidedWidth")s=!0;else if(o==="fitCellContents"){this.addManagedEventListeners({firstDataRendered:()=>this.onFirstDataRendered(t)});const i=e.get("rowData");s=i!=null&&i.length>0&&Qe(e)}s&&this.beans.colDelayRenderSvc?.hideColumns(o)}}autoSizeCols(e){const{eventSvc:t,visibleCols:s}=this.beans;this.innerAutoSizeCols(e).then(o=>{const i=c=>Ni(t,Array.from(c),!0,"autosizeColumns");if(!e.scaleUpToFitGridWidth)return i(o);const n=rp(this.beans),r=c=>s.leftCols.some(d=>Hn(d,c)),a=c=>s.rightCols.some(d=>Hn(d,c)),l=e.colKeys.filter(c=>!zs(c)&&!Ls(c)&&!r(c)&&!a(c));this.sizeColumnsToFit(n,e.source,!0,{defaultMaxWidth:e.defaultMaxWidth,defaultMinWidth:e.defaultMinWidth,columnLimits:e.columnLimits?.map(c=>({...c,key:c.colId})),colKeys:l,onlyScaleUp:!0}),i(o)})}innerAutoSizeCols(e){return new Promise((t,s)=>{if(this.shouldQueueResizeOperations)return this.pushResizeOperation(()=>this.innerAutoSizeCols(e).then(t,s));const{colKeys:o,skipHeader:i,skipHeaderGroups:n,stopAtGroup:r,defaultMaxWidth:a,defaultMinWidth:l,columnLimits:c=[],source:d="api"}=e,{animationFrameSvc:u,renderStatus:h,colModel:p,autoWidthCalc:f,visibleCols:C}=this.beans;if(u?.flushAllFrames(),this.timesDelayed<5&&h&&(!h.areHeaderCellsRendered()||!h.areCellsRendered())){this.timesDelayed++,setTimeout(()=>{this.isAlive()&&this.innerAutoSizeCols(e).then(t,s)});return}this.timesDelayed=0;const v=new Set;let w=-1;const b=Object.fromEntries(c.map(({colId:x,...F})=>[x,F])),S=i??this.gos.get("skipHeaderOnAutoSize"),y=n??S;for(;w!==0;){w=0;const x=[];for(const F of o){if(!F||by(F))continue;const R=p.getCol(F);if(!R||v.has(R))continue;const E=f.getPreferredWidthForColumn(R,S);if(E>0){const D=b[R.colId]??{};D.minWidth??(D.minWidth=l),D.maxWidth??(D.maxWidth=a);const P=ak(R,E,D);R.setActualWidth(P,d),v.add(R),w++}x.push(R)}x.length&&C.refresh(d)}y||this.autoSizeColumnGroupsByColumns(o,d,r),t(v)})}autoSizeColumn(e,t,s){this.autoSizeCols({colKeys:[e],skipHeader:s,skipHeaderGroups:!0,source:t})}autoSizeColumnGroupsByColumns(e,t,s){const{colModel:o,ctrlsSvc:i}=this.beans,n=new Set,r=o.getColsForKeys(e);for(const l of r){let c=l.getParent();for(;c&&c!=s;)c.isPadding()||n.add(c),c=c.getParent()}let a;for(const l of n){for(const c of i.getHeaderRowContainerCtrls())if(a=c.getHeaderCtrlForColumn(l),a)break;a?.resizeLeafColumnsToFit(t)}}autoSizeAllColumns(e){if(this.shouldQueueResizeOperations){this.pushResizeOperation(()=>this.autoSizeAllColumns(e));return}this.autoSizeCols({colKeys:this.beans.visibleCols.allCols,...e})}addColumnAutosizeListeners(e,t){const s=this.gos.get("skipHeaderOnAutoSize"),o=()=>{this.autoSizeColumn(t,"uiColumnResized",s)};e.addEventListener("dblclick",o);const i=new Co(e);return i.addEventListener("doubleTap",o),()=>{e.removeEventListener("dblclick",o),i.destroy()}}addColumnGroupResize(e,t,s){const o=this.gos.get("skipHeaderOnAutoSize"),i=()=>{const n=[],r=t.getDisplayedLeafColumns();for(const a of r)a.getColDef().suppressAutoSize||n.push(a.getColId());n.length>0&&this.autoSizeCols({colKeys:n,skipHeader:o,stopAtGroup:t,source:"uiColumnResized"}),s()};return e.addEventListener("dblclick",i),()=>e.removeEventListener("dblclick",i)}sizeColumnsToFitGridBody(e,t){if(!this.isAlive())return;const s=rp(this.beans);if(s>0){this.sizeColumnsToFit(s,"sizeColumnsToFit",!1,e);return}t===void 0?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,100)},0):t===100?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,500)},100):t===500?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,-1)},500):z(29)}sizeColumnsToFit(e,t="sizeColumnsToFit",s,o){if(this.shouldQueueResizeOperations){this.pushResizeOperation(()=>this.sizeColumnsToFit(e,t,s,o));return}const i={};for(const{key:f,...C}of o?.columnLimits??[])i[typeof f=="string"?f:f.getColId()]=C;const n=this.beans.visibleCols.allCols;if(e<=0||!n.length)return;const r=Ts(n);if(o?.onlyScaleUp&&r>e||e===r&&n.every(C=>{if(C.colDef.suppressSizeToFit)return!0;const v=i?.[C.getId()],w=v?.minWidth??o?.defaultMinWidth,b=v?.maxWidth??o?.defaultMaxWidth,S=C.getActualWidth();return(w==null||S>=w)&&(b==null||S<=b)}))return;const l=[],c=[];for(const f of n){const C=o?.colKeys?.some(v=>Hn(f,v))??!0;f.getColDef().suppressSizeToFit||!C?c.push(f):l.push(f)}const d=l.slice(0);let u=!1;const h=f=>{is(l,f),c.push(f)};for(const f of l){f.resetActualWidth(t);const C=i?.[f.getId()],v=C?.minWidth??o?.defaultMinWidth,w=C?.maxWidth??o?.defaultMaxWidth,b=f.getActualWidth();typeof v=="number"&&b<v?f.setActualWidth(v,t,!0):typeof w=="number"&&b>w&&f.setActualWidth(w,t,!0)}for(;!u;){u=!0;const f=e-Ts(c);if(f<=0)for(const C of l){const v=i?.[C.getId()]?.minWidth??o?.defaultMinWidth??C.minWidth;C.setActualWidth(v,t,!0)}else{const C=f/Ts(l);let v=f;for(let w=l.length-1;w>=0;w--){const b=l[w],S=i?.[b.getId()],y=S?.minWidth??o?.defaultMinWidth,x=S?.maxWidth??o?.defaultMaxWidth,F=b.getMinWidth(),R=b.getMaxWidth(),E=typeof y=="number"&&y>F?y:F,D=typeof x=="number"&&x<R?x:R;let P=Math.round(b.getActualWidth()*C);P<E?(P=E,h(b),u=!1):P>D?(P=D,h(b),u=!1):w===0&&(P=v),b.setActualWidth(P,t,!0),v-=P}}}for(const f of d)f.fireColumnWidthChangedEvent(t);const p=this.beans.visibleCols;p.setLeftValues(t),p.updateBodyWidths(),!s&&Ni(this.eventSvc,d,!0,t)}applyAutosizeStrategy(){const{gos:e,colDelayRenderSvc:t}=this.beans,s=e.get("autoSizeStrategy");s?.type!=="fitGridWidth"&&s?.type!=="fitProvidedWidth"||setTimeout(()=>{if(!this.isAlive())return;const o=s.type;if(o==="fitGridWidth"){const{columnLimits:i,defaultMinWidth:n,defaultMaxWidth:r}=s,a=i?.map(({colId:l,minWidth:c,maxWidth:d})=>({key:l,minWidth:c,maxWidth:d}));this.sizeColumnsToFitGridBody({defaultMinWidth:n,defaultMaxWidth:r,columnLimits:a})}else o==="fitProvidedWidth"&&this.sizeColumnsToFit(s.width,"sizeColumnsToFit");t?.revealColumns(o)})}onFirstDataRendered({colIds:e,...t}){setTimeout(()=>{if(!this.isAlive())return;const s="autosizeColumns";e?this.autoSizeCols({...t,source:s,colKeys:e}):this.autoSizeAllColumns({...t,source:s}),this.beans.colDelayRenderSvc?.revealColumns(t.type)})}processResizeOperations(){this.shouldQueueResizeOperations=!1;for(const e of this.resizeOperationQueue)e();this.resizeOperationQueue=[]}pushResizeOperation(e){this.resizeOperationQueue.push(e)}destroy(){this.resizeOperationQueue.length=0,super.destroy()}};function ak(e,t,s={}){const o=s.minWidth??e.getMinWidth();t<o&&(t=o);const i=s.maxWidth??e.getMaxWidth();return t>i&&(t=i),t}function rp({ctrlsSvc:e,scrollVisibleSvc:t}){const s=e.getGridBodyCtrl(),i=s.isVerticalScrollShowing()?t.getScrollbarWidth():0;return Yn(s.eGridBody)-i}var lk={moduleName:"ColumnAutoSize",version:Y,beans:[rk],apiFunctions:{sizeColumnsToFit:ik,autoSizeColumns:dv,autoSizeAllColumns:nk},dependsOn:[iC]},ck=".ag-row-pinned-source{background-color:var(--ag-pinned-source-row-background-color);color:var(--ag-pinned-source-row-text-color);font-weight:var(--ag-pinned-source-row-font-weight)}.ag-row-pinned-manual{background-color:var(--ag-pinned-row-background-color);color:var(--ag-pinned-row-text-color);font-weight:var(--ag-pinned-row-font-weight)}";function dk(e){return e.pinnedRowModel?.getPinnedTopRowCount()??0}function uk(e){return e.pinnedRowModel?.getPinnedBottomRowCount()??0}function hk(e,t){return e.pinnedRowModel?.getPinnedTopRow(t)}function gk(e,t){return e.pinnedRowModel?.getPinnedBottomRow(t)}function pk(e,t,s){return e.pinnedRowModel?.forEachPinnedRow(t,s)}var fk={moduleName:"PinnedRow",version:Y,beans:[SF],css:[ck],apiFunctions:{getPinnedTopRowCount:dk,getPinnedBottomRowCount:uk,getPinnedTopRow:hk,getPinnedBottomRow:gk,forEachPinnedRow:pk},icons:{rowPin:"pin",rowPinTop:"pinned-top",rowPinBottom:"pinned-bottom",rowUnpin:"un-pin"}},mk=class{constructor(e,t){this.col=e,this.firstNode=t,this.cellSpan=!0,this.spannedNodes=new Set,this.addSpannedNode(t)}reset(){this.spannedNodes.clear(),this.addSpannedNode(this.firstNode)}addSpannedNode(e){this.spannedNodes.add(e),this.lastNode=e}getLastNode(){return this.lastNode}getCellHeight(){return this.lastNode.rowTop+this.lastNode.rowHeight-this.firstNode.rowTop-1}doesSpanContain(e){return e.column!==this.col||e.rowPinned!=this.firstNode.rowPinned?!1:this.firstNode.rowIndex<=e.rowIndex&&e.rowIndex<=this.lastNode.rowIndex}getLastNodeAutoHeight(){const e=this.firstNode.__autoHeights?.[this.col.getColId()];if(e==null)return;let t=0;for(const s of this.spannedNodes)s!==this.lastNode&&(t+=s.rowHeight);return e-t}},Ck=class extends O{constructor(e){super(),this.column=e}buildCache(e){const{column:t,beans:{gos:s,pinnedRowModel:o,rowModel:i,valueSvc:n,pagination:r}}=this,{colDef:a}=t,l=this.getNodeMap(e),c=new Map,d=s.getCallback("isFullWidthRow"),u=a.equals,h=a.spanRows,p=typeof h=="function";let f=null,C=null,v;const w=(S,y)=>{f=S,C=null,v=y},b=S=>{const y=!S.isExpandable()&&!S.group&&!S.detail&&(d?!d({rowNode:S}):!0);if(S.rowIndex==null||!y){w(null,null);return}if(f==null||S.level!==f.level||S.footer||C&&S.rowIndex-1!==C?.getLastNode().rowIndex){w(S,n.getValue(t,S));return}const x=n.getValue(t,S);if(p){const F=we(s,{valueA:v,nodeA:f,valueB:x,nodeB:S,column:t,colDef:a});if(!h(F)){w(S,x);return}}else if(u?!u(v,x):v!==x){w(S,x);return}if(!C){const F=l?.get(f);F?.firstNode===f?(F.reset(),C=F):C=new mk(t,f),c.set(f,C)}C.addSpannedNode(S),c.set(S,C)};switch(e){case"center":i.forEachDisplayedNode?.(S=>{(!r||r.isRowInPage(S.rowIndex))&&b(S)}),this.centerValueNodeMap=c;break;case"top":o?.forEachPinnedRow("top",b),this.topValueNodeMap=c;break;case"bottom":o?.forEachPinnedRow("bottom",b),this.bottomValueNodeMap=c;break}}isCellSpanning(e){return!!this.getCellSpan(e)}getCellSpan(e){return this.getNodeMap(e.rowPinned).get(e)}getNodeMap(e){switch(e){case"top":return this.topValueNodeMap;case"bottom":return this.bottomValueNodeMap;default:return this.centerValueNodeMap}}},vk=class extends O{constructor(){super(...arguments),this.beanName="rowSpanSvc",this.spanningColumns=new Map,this.debouncePinnedEvent=at(this,this.dispatchCellsUpdatedEvent.bind(this,!0),0),this.debounceModelEvent=at(this,this.dispatchCellsUpdatedEvent.bind(this,!1),0),this.pinnedTimeout=null,this.modelTimeout=null}postConstruct(){const e=this.onRowDataUpdated.bind(this),t=this.buildPinnedCaches.bind(this);this.addManagedEventListeners({paginationChanged:this.buildModelCaches.bind(this),pinnedRowDataChanged:t,pinnedRowsChanged:t,rowNodeDataChanged:e,cellValueChanged:e})}register(e){const{gos:t}=this.beans;if(!t.get("enableCellSpan")||this.spanningColumns.has(e))return;const s=this.createManagedBean(new Ck(e));this.spanningColumns.set(e,s),s.buildCache("top"),s.buildCache("bottom"),s.buildCache("center"),this.debouncePinnedEvent(),this.debounceModelEvent()}dispatchCellsUpdatedEvent(e){this.dispatchLocalEvent({type:"spannedCellsUpdated",pinned:e})}deregister(e){this.spanningColumns.delete(e)}onRowDataUpdated({node:e}){const{spannedRowRenderer:t}=this.beans;if(e.rowPinned){if(this.pinnedTimeout!=null)return;this.pinnedTimeout=window.setTimeout(()=>{this.pinnedTimeout=null,this.buildPinnedCaches(),t?.createCtrls("top"),t?.createCtrls("bottom")},0);return}this.modelTimeout==null&&(this.modelTimeout=window.setTimeout(()=>{this.modelTimeout=null,this.buildModelCaches(),t?.createCtrls("center")},0))}buildModelCaches(){this.modelTimeout!=null&&clearTimeout(this.modelTimeout),this.spanningColumns.forEach(e=>e.buildCache("center")),this.debounceModelEvent()}buildPinnedCaches(){this.pinnedTimeout!=null&&clearTimeout(this.pinnedTimeout),this.spanningColumns.forEach(e=>{e.buildCache("top"),e.buildCache("bottom")}),this.debouncePinnedEvent()}isCellSpanning(e,t){const s=this.spanningColumns.get(e);return s?s.isCellSpanning(t):!1}getCellSpanByPosition(e){const{pinnedRowModel:t,rowModel:s}=this.beans,o=e.column,i=e.rowIndex,n=this.spanningColumns.get(o);if(!n)return;let r;switch(e.rowPinned){case"top":r=t?.getPinnedTopRow(i);break;case"bottom":r=t?.getPinnedBottomRow(i);break;default:r=s.getRow(i)}if(r)return n.getCellSpan(r)}getCellStart(e){const t=this.getCellSpanByPosition(e);return t?{...e,rowIndex:t.firstNode.rowIndex}:e}getCellEnd(e){const t=this.getCellSpanByPosition(e);return t?{...e,rowIndex:t.getLastNode().rowIndex}:e}getCellSpan(e,t){const s=this.spanningColumns.get(e);if(s)return s.getCellSpan(t)}forEachSpannedColumn(e,t){for(const[s,o]of this.spanningColumns)if(o.isCellSpanning(e)){const i=o.getCellSpan(e);t(s,i)}}destroy(){super.destroy(),this.spanningColumns.clear()}},wk=class extends Ii{constructor(e,t,s){super(e.col,e.firstNode,s,t),this.cellSpan=e,this.SPANNED_CELL_CSS_CLASS="ag-spanned-cell"}setComp(e,t,s,o,i,n,r){this.eWrapper=s,super.setComp(e,t,s,o,i,n,r),this.setAriaRowSpan(),this.refreshAriaRowIndex()}isCellSpanning(){return!0}getCellSpan(){return this.cellSpan}refreshAriaRowIndex(){const{eGui:e,rowNode:t}=this;!e||t.rowIndex==null||uf(e,t.rowIndex)}setAriaRowSpan(){gS(this.eGui,this.cellSpan.spannedNodes.size)}setFocusedCellPosition(e){this.focusedCellPosition=e}getFocusedCellPosition(){return this.focusedCellPosition??this.cellPosition}checkCellFocused(){const e=this.beans.focusSvc.getFocusedCell();return!!e&&this.cellSpan.doesSpanContain(e)}applyStaticCssClasses(){super.applyStaticCssClasses(),this.comp.toggleCss(this.SPANNED_CELL_CSS_CLASS,!0)}onCellFocused(e){const{beans:t}=this;if(al(t)){this.focusedCellPosition=void 0;return}const s=this.isCellFocused();s||(this.focusedCellPosition=void 0),e&&s&&(this.focusedCellPosition={rowIndex:e.rowIndex,rowPinned:e.rowPinned,column:e.column}),super.onCellFocused(e)}getRootElement(){return this.eWrapper}},bk=class extends Va{onRowIndexChanged(){super.onRowIndexChanged();for(const e of this.getAllCellCtrls())e.refreshAriaRowIndex()}getInitialRowClasses(e){return["ag-spanned-row"]}getNewCellCtrl(e){const t=this.beans.rowSpanSvc?.getCellSpan(e,this.rowNode);if(!(!t||t.firstNode!==this.rowNode))return new wk(t,this,this.beans)}isCorrectCtrlForSpan(e){const t=this.beans.rowSpanSvc?.getCellSpan(e.column,this.rowNode);return!t||t.firstNode!==this.rowNode?!1:e.getCellSpan()===t}onRowHeightChanged(){}refreshFirstAndLastRowStyles(){}addHoverFunctionality(){}resetHoveredStatus(){}},Sk=class extends O{constructor(){super(...arguments),this.beanName="spannedRowRenderer",this.topCtrls=new Map,this.bottomCtrls=new Map,this.centerCtrls=new Map}postConstruct(){this.addManagedEventListeners({displayedRowsChanged:this.createAllCtrls.bind(this)})}createAllCtrls(){this.createCtrls("top"),this.createCtrls("bottom"),this.createCtrls("center")}createCtrls(e){const{rowSpanSvc:t}=this.beans,s=this.getCtrlsMap(e),o=s.size,i=this.getAllRelevantRowControls(e),n=new Map;let r=!1;for(const l of i)l.isAlive()&&t?.forEachSpannedColumn(l.rowNode,(c,d)=>{if(n.has(d.firstNode))return;const u=s.get(d.firstNode);if(u){n.set(d.firstNode,u),s.delete(d.firstNode);return}r=!0;const h=new bk(d.firstNode,this.beans,!1,!1,!1);n.set(d.firstNode,h)});this.setCtrlsMap(e,n);const a=n.size===o;if(!(!r&&a)){for(const l of s.values())l.destroyFirstPass(!0),l.destroySecondPass();this.dispatchLocalEvent({type:"spannedRowsUpdated",ctrlsKey:e})}}getAllRelevantRowControls(e){const{rowRenderer:t}=this.beans;switch(e){case"top":return t.topRowCtrls;case"bottom":return t.bottomRowCtrls;case"center":return t.allRowCtrls}}getCellByPosition(e){const{rowSpanSvc:t}=this.beans,s=t?.getCellSpanByPosition(e);if(!s)return;const o=this.getCtrlsMap(e.rowPinned).get(s.firstNode);if(o)return o.getAllCellCtrls().find(i=>i.column===e.column)}getCtrls(e){return[...this.getCtrlsMap(e).values()]}destroyRowCtrls(e){for(const t of this.getCtrlsMap(e).values())t.destroyFirstPass(!0),t.destroySecondPass();this.setCtrlsMap(e,new Map)}getCtrlsMap(e){switch(e){case"top":return this.topCtrls;case"bottom":return this.bottomCtrls;default:return this.centerCtrls}}setCtrlsMap(e,t){switch(e){case"top":this.topCtrls=t;break;case"bottom":this.bottomCtrls=t;break;default:this.centerCtrls=t;break}}destroy(){super.destroy(),this.destroyRowCtrls("top"),this.destroyRowCtrls("bottom"),this.destroyRowCtrls("center")}},yk={moduleName:"CellSpan",version:Y,beans:[vk,Sk]},xk=class extends O{constructor(e,t){super(),this.cellCtrl=e,this.staticClasses=[],this.beans=t,this.column=e.column}setComp(e){this.cellComp=e,this.applyUserStyles(),this.applyCellClassRules(),this.applyClassesFromColDef()}applyCellClassRules(){const{column:e,cellComp:t}=this,s=e.colDef,o=s.cellClassRules,i=this.getCellClassParams(e,s);Uu(this.beans.expressionSvc,o===this.cellClassRules?void 0:this.cellClassRules,o,i,n=>t.toggleCss(n,!0),n=>t.toggleCss(n,!1)),this.cellClassRules=o}applyUserStyles(){const e=this.column,t=e.colDef,s=t.cellStyle;if(!s)return;let o;if(typeof s=="function"){const i=this.getCellClassParams(e,t);o=s(i)}else o=s;o&&this.cellComp.setUserStyles(o)}applyClassesFromColDef(){const{column:e,cellComp:t}=this,s=e.colDef,o=this.getCellClassParams(e,s);for(const n of this.staticClasses)t.toggleCss(n,!1);const i=this.beans.cellStyles.getStaticCellClasses(s,o);this.staticClasses=i;for(const n of i)t.toggleCss(n,!0)}getCellClassParams(e,t){const{value:s,rowNode:o}=this.cellCtrl;return we(this.beans.gos,{value:s,data:o.data,node:o,colDef:t,column:e,rowIndex:o.rowIndex})}},Rk=class extends O{constructor(){super(...arguments),this.beanName="cellStyles"}processAllCellClasses(e,t,s,o){Uu(this.beans.expressionSvc,void 0,e.cellClassRules,t,s,o),this.processStaticCellClasses(e,t,s)}getStaticCellClasses(e,t){const{cellClass:s}=e;if(!s)return[];let o;return typeof s=="function"?o=s(t):o=s,typeof o=="string"&&(o=[o]),o||[]}createCellCustomStyleFeature(e,t){return new xk(e,t)}processStaticCellClasses(e,t,s){this.getStaticCellClasses(e,t).forEach(i=>{s(i)})}},Fk={moduleName:"CellStyle",version:Y,beans:[Rk]},Ek={moduleName:"RowStyle",version:Y,beans:[u5]};function Dk(e,t){return!!e.colHover?.isHovered(t)}var Pk=class extends O{constructor(e,t){super(),this.columns=e,this.element=t,this.destroyManagedListeners=[],this.enableFeature=s=>{const{beans:o,gos:i,element:n,columns:r}=this,a=o.colHover;if(s??!!i.get("columnHoverHighlight"))this.destroyManagedListeners=this.addManagedElementListeners(n,{mouseover:a.setMouseOver.bind(a,r),mouseout:a.clearMouseOver.bind(a)});else{for(const c of this.destroyManagedListeners)c();this.destroyManagedListeners=[]}}}postConstruct(){this.addManagedPropertyListener("columnHoverHighlight",({currentValue:e})=>{this.enableFeature(e)}),this.enableFeature()}destroy(){super.destroy(),this.destroyManagedListeners=null}},Tk="ag-column-hover",Mk=class extends O{constructor(){super(...arguments),this.beanName="colHover"}postConstruct(){this.addManagedPropertyListener("columnHoverHighlight",({currentValue:e})=>{e||this.clearMouseOver()})}setMouseOver(e){this.updateState(e)}clearMouseOver(){this.updateState(null)}isHovered(e){if(!this.gos.get("columnHoverHighlight"))return!1;const t=this.selectedColumns;return!!t&&t.indexOf(e)>=0}addHeaderColumnHoverListener(e,t,s){const o=()=>{const i=this.isHovered(s);t.toggleCss("ag-column-hover",i)};e.addManagedEventListeners({columnHoverChanged:o}),o()}onCellColumnHover(e,t){if(!t)return;const s=this.isHovered(e);t.toggleCss(Tk,s)}addHeaderFilterColumnHoverListener(e,t,s,o){this.createHoverFeature(e,[s],o);const i=()=>{const n=this.isHovered(s);t.toggleCss("ag-column-hover",n)};e.addManagedEventListeners({columnHoverChanged:i}),i()}createHoverFeature(e,t,s){e.createManagedBean(new Pk(t,s))}updateState(e){this.selectedColumns=e,this.eventSvc.dispatchEvent({type:"columnHoverChanged"})}},Ik={moduleName:"ColumnHover",version:Y,beans:[Mk],apiFunctions:{isColumnHovered:Dk}},kk=class extends O{constructor(){super(...arguments),this.beanName="apiEventSvc",this.syncListeners=new Map,this.asyncListeners=new Map,this.syncGlobalListeners=new Set,this.globalListenerPairs=new Map}postConstruct(){this.wrapSvc=this.beans.frameworkOverrides.createGlobalEventListenerWrapper?.()}addListener(e,t){const s=this.wrapSvc?.wrap(e,t)??t,o=!pa.has(e),i=o?this.asyncListeners:this.syncListeners;i.has(e)||i.set(e,new Set),i.get(e).add(s),this.eventSvc.addListener(e,s,o)}removeListener(e,t){const s=this.wrapSvc?.unwrap(e,t)??t,i=!!this.asyncListeners.get(e)?.delete(s);i||this.syncListeners.get(e)?.delete(s),this.eventSvc.removeListener(e,s,i)}addGlobalListener(e){const t=this.wrapSvc?.wrapGlobal(e)??e,s=(n,r)=>{pa.has(n)&&t(n,r)},o=(n,r)=>{pa.has(n)||t(n,r)};this.globalListenerPairs.set(e,{syncListener:s,asyncListener:o});const i=this.eventSvc;i.addGlobalListener(s,!1),i.addGlobalListener(o,!0)}removeGlobalListener(e){const{eventSvc:t,wrapSvc:s,globalListenerPairs:o}=this,i=s?.unwrapGlobal(e)??e;if(o.has(i)){const{syncListener:r,asyncListener:a}=o.get(i);t.removeGlobalListener(r,!1),t.removeGlobalListener(a,!0),o.delete(e)}else this.syncGlobalListeners.delete(i),t.removeGlobalListener(i,!1)}destroyEventListeners(e,t){e.forEach((s,o)=>{s.forEach(i=>this.eventSvc.removeListener(o,i,t)),s.clear()}),e.clear()}destroyGlobalListeners(e,t){for(const s of e)this.eventSvc.removeGlobalListener(s,t);e.clear()}destroy(){super.destroy(),this.destroyEventListeners(this.syncListeners,!1),this.destroyEventListeners(this.asyncListeners,!0),this.destroyGlobalListeners(this.syncGlobalListeners,!1);const{globalListenerPairs:e,eventSvc:t}=this;e.forEach(({syncListener:s,asyncListener:o})=>{t.removeGlobalListener(s,!1),t.removeGlobalListener(o,!0)}),e.clear()}};function Ak(e,t,s){e.apiEventSvc?.addListener(t,s)}function Lk(e,t,s){e.apiEventSvc?.removeListener(t,s)}function Ok(e,t){e.apiEventSvc?.addGlobalListener(t)}function Nk(e,t){e.apiEventSvc?.removeGlobalListener(t)}var Hk={moduleName:"EventApi",version:Y,apiFunctions:{addEventListener:Ak,addGlobalListener:Ok,removeEventListener:Lk,removeGlobalListener:Nk},beans:[kk]},Gk={moduleName:"Locale",version:Y,beans:[u4]},Bk=class extends O{constructor(){super(...arguments),this.beanName="rowAutoHeight",this.wasEverActive=!1,this._debouncedCalculateRowHeights=at(this,this.calculateRowHeights.bind(this),1)}requestCheckAutoHeight(){this.wasEverActive&&this._debouncedCalculateRowHeights()}calculateRowHeights(){const{visibleCols:e,rowModel:t,rowSpanSvc:s,pinnedRowModel:o}=this.beans,i=e.autoHeightCols;let n=!1;const r=a=>{const l=a.__autoHeights;let c=to(this.beans,a).height;for(const d of i){let u=l?.[d.getColId()];const h=s?.getCellSpan(d,a);if(h){if(h.getLastNode()!==a)continue;if(u=s?.getCellSpan(d,a)?.getLastNodeAutoHeight(),!u)return}if(u==null){if(this.colSpanSkipCell(d,a))continue;return}c=Math.max(u,c)}c!==a.rowHeight&&(a.setRowHeight(c),n=!0)};o?.forEachPinnedRow?.("top",r),o?.forEachPinnedRow?.("bottom",r),t.forEachDisplayedNode?.(r),n&&t.onRowHeightChanged?.()}setRowAutoHeight(e,t,s){if(e.__autoHeights??(e.__autoHeights={}),t==null){delete e.__autoHeights[s.getId()];return}const o=e.__autoHeights[s.getId()];e.__autoHeights[s.getId()]=t,o!==t&&this.requestCheckAutoHeight()}colSpanSkipCell(e,t){const{colModel:s,colViewport:o,visibleCols:i}=this.beans;if(!s.colSpanActive)return!1;let n=[];switch(e.getPinned()){case"left":n=i.getLeftColsForRow(t);break;case"right":n=i.getRightColsForRow(t);break;case null:n=o.getColsWithinViewport(t);break}return!n.includes(e)}setupCellAutoHeight(e,t,s){if(!e.column.isAutoHeight()||!t)return!1;this.wasEverActive=!0;const o=t.parentElement,{rowNode:i,column:n}=e,r=this.beans,a=d=>{if(this.beans.editSvc?.isEditing(e)||!e.isAlive()||!s.isAlive())return;const{paddingTop:u,paddingBottom:h,borderBottomWidth:p,borderTopWidth:f}=Wo(o),C=u+h+p+f,w=t.offsetHeight+C;if(d<5){const S=!ct(r)?.contains(t),y=w==0;if(S||y){window.setTimeout(()=>a(d+1),0);return}}this.setRowAutoHeight(i,w,n)},l=()=>a(0);l();const c=Bs(r,t,l);return s.addDestroyFunc(()=>{c(),this.setRowAutoHeight(i,void 0,n)}),!0}setAutoHeightActive(e){this.active=e.list.some(t=>t.isVisible()&&t.isAutoHeight())}areRowsMeasured(){if(!this.active)return!0;const e=this.beans.rowRenderer.getAllRowCtrls();let t=null;for(const{rowNode:s}of e)if((!t||this.beans.colModel.colSpanActive)&&(t=this.beans.colViewport.getColsWithinViewport(s).filter(i=>i.isAutoHeight())),t.length!==0){if(!s.__autoHeights)return!1;for(const o of t){const i=s.__autoHeights[o.getColId()];if(!i||s.rowHeight<i)return!1}}return!0}},Vk={moduleName:"RowAutoHeight",version:Y,beans:[Bk]},zk={moduleName:"AllCommunity",version:Y,dependsOn:[BI,qI,o6,M4,VM,zM,WM,_M,jM,UM,$M,BM,kT,AT,LT,IT,NT,HT,w6,CI,G6,nC,K6,Y6,ok,lk,vE,fk,aI,q5,Fk,Ik,Ek,Hk,Z5,g6,KC,Gk,Vk,CE,VI,yk]};function ae(e,t={}){const s=Object.keys(t).map(o=>{const i=t[o];return i!=null?`${o}=${i}`:null}).filter(Boolean).join(";");return[e,s].filter(o=>o.length>0).join(":")}var ee={grid(e){return ae("ag-grid-root",{gridId:e})},headerGroupCell(e){return ae("ag-header-group-cell",{colId:e})},headerCell(e){return ae("ag-header-cell",{colId:e})},headerCheckbox(e){return ae("ag-header-selection-checkbox",{colId:e})},headerFilterButton(e){return ae("ag-header-cell-filter-button",{colId:e})},floatingFilter(e){return ae("ag-floating-filter",{colId:e})},floatingFilterButton(e){return ae("ag-floating-filter-button",{colId:e})},headerCellMenuButton(e){return ae("ag-header-cell-menu-button",{colId:e})},headerResizeHandle(e){return ae("ag-header-cell-resize",{colId:e})},filterInstancePickerDisplay(e){return ae(`ag-${e.source}-picker-display`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},numberFilterInstanceInput(e){return ae(`ag-${e.source}-number-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},textFilterInstanceInput(e){return ae(`ag-${e.source}-text-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},dateFilterInstanceInput(e){return ae(`ag-${e.source}-date-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},setFilterInstanceMiniFilterInput(e){return ae(`ag-${e.source}-set-filter-mini-filter-input`,e.source==="filter-toolpanel"?{label:e.colLabel}:{colId:e.colId})},setFilterInstanceItem(e,t){return ae(`ag-${e.source}-set-filter-item`,e.source==="filter-toolpanel"?{colLabel:e.colLabel,itemLabel:t}:{colId:e.colId,itemLabel:t})},setFilterApplyPanelButton(e,t){return ae(`ag-${e.source}-set-filter-apply-panel-button`,e.source==="filter-toolpanel"?{colLabel:e.colLabel,buttonLabel:t}:{colId:e.colId,buttonLabel:t})},filterConditionRadioButton(e,t){return ae(`ag-${e.source}-filter-condition-radio-button`,e.source==="filter-toolpanel"?{colLabel:e.colLabel,buttonLabel:t}:{colId:e.colId,buttonLabel:t})},advancedFilterInput(){return ae("ag-advanced-filter-input")},advancedFilterButton(e){return ae("ag-advanced-filter-button",{label:e})},advancedFilterBuilderButton(){return ae("ag-advanced-filter-builder-button")},advancedFilterPanelMaximiseButton(){return ae("ag-advanced-filter-builder-panel-maximise")},advancedFilterPanelCloseButton(){return ae("ag-advanced-filter-builder-panel-close")},advancedFilterPill(e){return ae("ag-advanced-filter-builder-pill",{label:e})},advancedFilterBuilderAddItemButton(){return ae("ag-advanced-filter-builder-add-item-button")},rowNode(e){return ae("ag-row",{"row-id":e})},cell(e,t){return ae("ag-cell",{"row-id":e,colId:t})},autoGroupCell(e){return ee.cell(e,Xs)},checkbox(e,t){return ae("ag-selection-checkbox",{"row-id":e,colId:t})},selectionColumnCheckbox(e){return ee.checkbox(e,vu)},autoGroupColumnCheckbox(e){return ee.checkbox(e,Xs)},dragHandle(e,t){return ae("ag-drag-handle",{"row-id":e,colId:t})},groupContracted(e,t){return ae("ag-group-contracted",{"row-id":e,colId:t})},groupExpanded(e,t){return ae("ag-group-expanded",{"row-id":e,colId:t})},autoGroupContracted(e){return ee.groupContracted(e,Xs)},autoGroupExpanded(e){return ee.groupExpanded(e,Xs)},rowNumber(e){return ee.cell(e,wu)},menu(){return ae("ag-menu")},menuOption(e){return ae("ag-menu-option",{option:e})},sideBar(){return ae("ag-side-bar")},sideBarButton(e){return ae("ag-side-button",{label:e})},columnToolPanel(){return ae("ag-column-panel")},pivotModeSelect(){return ae("ag-pivot-mode-select")},columnPanelSelectHeaderCheckbox(){return ae("ag-column-panel-select-header-checkbox")},columnPanelSelectHeaderFilter(){return ae("ag-column-panel-select-header-filter")},columnSelectListItemGroupClosedIcon(e){return ae("ag-column-select-list-item-group-closed-icon",{label:e})},columnSelectListItemCheckbox(e){return ae("ag-column-select-list-item-checkbox",{label:e})},columnSelectListItemDragHandle(e){return ae("ag-column-select-list-item-drag-handle",{label:e})},columnDropCellDragHandle(e,t,s){return ae("ag-column-drop-cell-drag-handle",{source:e,area:t,label:s})},columnDropCellCancelButton(e,t,s){return ae("ag-column-drop-cell-cancel",{source:e,area:t,label:s})},columnDropArea(e,t){return ae("ag-column-drop-area",{source:e,name:t})},filterToolPanel(){return ae("ag-filter-panel")},filterToolPanelAddFilterButton(){return ae("ag-filter-panel-add-filter-button")},filterToolPanelFilterTypeSelector(e){return ae("ag-filter-panel-filter-type-selector",{colLabel:e})},filterToolPanelSearchInput(){return ae("ag-filter-toolpanel-search-input")},filterToolPanelGroup(e){return ae("ag-filter-toolpanel-group",{title:e})},filterToolPanelGroupCollapsedIcon(e){return ae("ag-filter-toolpanel-group-collapsed-icon",{title:e})},statusBarTotalAndFilteredRowCount(){return ae("ag-status-bar-total-and-filtered-row-count")},statusBarTotalRowCount(){return ae("ag-status-bar-total-row-count")},statusBarFilteredRowCount(){return ae("ag-status-bar-filtered-row-count")},statusBarSelectedRowCount(){return ae("ag-status-bar-selected-row-count")},statusBarAggregations(){return ae("ag-status-bar-aggregations")},paginationPanelSizePickerDisplay(e){return ae("ag-pagination-page-size-picker-field-display",{value:e})},paginationPanelFirstRowOnPage(e){return ae("ag-paging-row-summary-panel-first-row-on-page",{value:e})},paginationPanelLastRowOnPage(e){return ae("ag-paging-row-summary-panel-last-row-on-page",{value:e})},paginationPanelRecordCount(e){return ae("ag-paging-row-summary-panel-record-count",{value:e})},paginationSummaryPanelButton(e){return ae("ag-paging-page-summary-panel-btn",{label:e})},paginationSummaryPanelCurrentPage(e){return ae("ag-paging-page-summary-panel-current-page",{value:e})},paginationSummaryPanelTotalPage(e){return ae("ag-paging-page-summary-panel-total-page",{value:e})},fillHandle(){return ae("ag-fill-handle")},columnChooserCloseButton(){return ae("ag-column-chooser-close-button")},columnChooserSearchBarCheckbox(){return ae("ag-column-chooser-header-checkbox")},columnChooserSearchBarFilter(){return ae("ag-column-chooser-searchbar-filter")},columnChooserListItemGroupClosedIcon(e){return ae("ag-column-chooser-list-item-group-closed-icon",{label:e})},columnChooserListItemCheckbox(e){return ae("ag-column-chooser-list-item-checkbox",{label:e})},columnChooserListItemDragHandle(e){return ae("ag-column-chooser-list-item-drag-handle",{label:e})},overlay(){return ae("ag-overlay")}},uv="data-testid";function ce(e,t){e?.setAttribute(uv,t)}function Wk(e){uv=e}var _k=class extends O{constructor(){super(...arguments),this.beanName="testIdSvc"}postConstruct(){const e=at(this,()=>this.setupAllTestIds(),500),t=at(this,()=>{this.setupAllTestIds(),e()},0);this.addManagedEventListeners({firstDataRendered:t,displayedRowsChanged:t,displayedColumnsChanged:t,displayedColumnsWidthChanged:t,virtualColumnsChanged:t,columnMenuVisibleChanged:t,contextMenuVisibleChanged:t,advancedFilterBuilderVisibleChanged:t,fieldPickerValueSelected:t,modelUpdated:t,sideBarUpdated:t,pinnedHeightChanged:t,gridReady:t,overlayExclusiveChanged:t,rowGroupOpened:t,scrollVisibilityChanged:t,gridSizeChanged:t,filterOpened:t,filterChanged:t,cellSelectionChanged:t})}setupAllTestIds(){const e=ts(this.beans),t=Zm(this.beans),s=e.querySelector(`[grid-id="${t}"]`);ce(s,ee.grid(t)),e.querySelectorAll(".ag-header-group-cell").forEach(n=>{ce(n,ee.headerGroupCell(n.getAttribute("col-id")))}),e.querySelectorAll(".ag-header-cell").forEach(n=>{const r=n.getAttribute("col-id"),l=n.classList.contains("ag-floating-filter")?ee.floatingFilter(r):ee.headerCell(r);ce(n,l),ce(n.querySelector(".ag-header-cell-filter-button"),ee.headerFilterButton(r)),ce(n.querySelector(".ag-header-cell-menu-button"),ee.headerCellMenuButton(r)),ce(n.querySelector(".ag-header-cell-resize"),ee.headerResizeHandle(r)),ce(n.querySelector(".ag-checkbox input[type=checkbox]"),ee.headerCheckbox(r)),ce(n.querySelector(".ag-floating-filter-button button"),ee.floatingFilterButton(r)),this.setupFilterInstance(n.querySelector(".ag-floating-filter-body"),{source:"floating-filter",colId:r})});const o=e.querySelector(".ag-filter-menu");this.setupFilterInstance(o,{source:"column-filter"}),ce(e.querySelector(".ag-advanced-filter input[type=text]"),ee.advancedFilterInput()),e.querySelectorAll(".ag-advanced-filter-buttons button").forEach(n=>{ce(n,ee.advancedFilterButton(n.textContent))}),ce(e.querySelector("button.ag-advanced-filter-builder-button"),ee.advancedFilterBuilderButton()),e.querySelectorAll('.ag-panel[aria-label="Advanced Filter"] .ag-panel-title-bar-button').forEach((n,r)=>{ce(n,r===0?ee.advancedFilterPanelMaximiseButton():ee.advancedFilterPanelCloseButton())}),e.querySelectorAll('.ag-panel[aria-lable="Advanced Filter"] .ag-advanced-filter-builder-pill').forEach(n=>{ce(n,ee.advancedFilterPill(n.querySelector(".ag-picker-field-display")?.textContent))}),ce(e.querySelector('.ag-panel[aria-label="Advanced Filter"] .ag-advanced-filter-builder-item-button'),ee.advancedFilterBuilderAddItemButton()),e.querySelectorAll(".ag-row").forEach(n=>{const r=n.getAttribute("row-id");ce(n,ee.rowNode(r)),n.querySelectorAll(".ag-cell").forEach(a=>{const l=a.getAttribute("col-id");ce(a,ee.cell(r,l)),ce(a.querySelector(".ag-selection-checkbox input[type=checkbox]"),ee.checkbox(r,l)),ce(a.querySelector(".ag-drag-handle"),ee.dragHandle(r,l)),ce(a.querySelector(".ag-group-contracted"),ee.groupContracted(r,l)),ce(a.querySelector(".ag-group-expanded"),ee.groupExpanded(r,l))})}),e.querySelectorAll(".ag-menu-list").forEach(n=>{ce(n,ee.menu()),n.querySelectorAll(".ag-menu-option").forEach(r=>{ce(r,ee.menuOption(r.querySelector(".ag-menu-option-text")?.textContent))})}),e.querySelectorAll(".ag-side-bar").forEach(n=>{ce(n,ee.sideBar()),n.querySelectorAll(".ag-side-button button").forEach(r=>{ce(r,ee.sideBarButton(r.querySelector(".ag-side-button-label")?.textContent))}),n.querySelectorAll(".ag-column-panel").forEach(r=>{ce(r,ee.columnToolPanel()),ce(r.querySelector(".ag-pivot-mode-select input[type=checkbox]"),ee.pivotModeSelect()),ce(r.querySelector(".ag-column-select-header-checkbox input[type=checkbox]"),ee.columnPanelSelectHeaderCheckbox()),ce(r.querySelector(".ag-column-select-header-filter-wrapper input[type=text]"),ee.columnPanelSelectHeaderFilter()),r.querySelectorAll(".ag-column-select-list").forEach(a=>{a.querySelectorAll(".ag-column-select-virtual-list-item").forEach(l=>{const c=l.getAttribute("aria-label");ce(l.querySelector(".ag-column-group-closed-icon"),ee.columnSelectListItemGroupClosedIcon(c)),ce(l.querySelector(".ag-column-select-checkbox input[type=checkbox]"),ee.columnSelectListItemCheckbox(c)),ce(l.querySelector(".ag-drag-handle"),ee.columnSelectListItemDragHandle(c))})}),this.setupColumnDropArea(r,"toolbar")}),n.querySelectorAll(".ag-filter-panel").forEach(r=>{ce(r,ee.filterToolPanel()),ce(r.querySelector("button.ag-filter-add-button"),ee.filterToolPanelAddFilterButton()),r.querySelectorAll(".ag-filter-card").forEach(a=>{const l=a.querySelector(".ag-filter-card-title")?.textContent,c=a.querySelector(".ag-filter-type-select");ce(c,ee.filterToolPanelFilterTypeSelector(l)),a.querySelectorAll(".ag-filter").forEach(d=>this.setupFilterInstance(d,{source:"filter-toolpanel",colLabel:l}))})}),n.querySelectorAll(".ag-filter-toolpanel").forEach(r=>{ce(r.querySelector(".ag-filter-toolpanel-search-input input[type=text]"),ee.filterToolPanelSearchInput()),r.querySelectorAll(".ag-filter-toolpanel-group").forEach(a=>{const l=a.querySelector(".ag-filter-toolpanel-group-title")?.textContent;ce(a,ee.filterToolPanelGroup(l)),ce(a.querySelector(".ag-filter-toolpanel-group-title-bar-icon .ag-icon-tree-closed"),ee.filterToolPanelGroupCollapsedIcon(l));const c=a.querySelector(".ag-filter-toolpanel-instance-filter");c&&this.setupFilterInstance(c,{source:"filter-toolpanel",colLabel:l})})})}),ce(e.querySelector(".ag-status-bar .ag-status-panel-total-and-filtered-row-count"),ee.statusBarTotalAndFilteredRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-total-row-count"),ee.statusBarTotalRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-filtered-row-count"),ee.statusBarFilteredRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-selected-row-count"),ee.statusBarSelectedRowCount()),ce(e.querySelector(".ag-status-bar .ag-status-panel-filtered-row-count"),ee.statusBarAggregations()),e.querySelectorAll(".ag-paging-panel").forEach(n=>{ce(n.querySelector(".ag-paging-page-size .ag-picker-field-display"),ee.paginationPanelSizePickerDisplay(n.querySelector(".ag-paging-page-size .ag-picker-field-display")?.textContent)),n.querySelectorAll(".ag-paging-row-summary-panel-number").forEach(r=>{switch(r.getAttribute("data-ref")){case"lbFirstRowOnPage":ce(r,ee.paginationPanelFirstRowOnPage(r.textContent));break;case"lbLastRowOnPage":ce(r,ee.paginationPanelLastRowOnPage(r.textContent));break;case"lbRecordCount":ce(r,ee.paginationPanelRecordCount(r.textContent));break}}),n.querySelectorAll(".ag-paging-page-summary-panel .ag-button").forEach(r=>{ce(r,ee.paginationSummaryPanelButton(r.getAttribute("aria-label")?.toLowerCase()))}),n.querySelectorAll(".ag-paging-page-summary-panel .ag-paging-number").forEach(r=>{switch(r.getAttribute("data-ref")){case"lbCurrent":ce(r,ee.paginationSummaryPanelCurrentPage(r.textContent));break;case"lbTotal":ce(r,ee.paginationSummaryPanelTotalPage(r.textContent));break}})}),ce(e.querySelector(".ag-fill-handle"),ee.fillHandle()),e.querySelectorAll('.ag-panel[aria-label="Choose Columns"]').forEach(n=>{ce(n.querySelector(".ag-panel-title-bar-button-icon"),ee.columnChooserCloseButton()),ce(n.querySelector('.ag-column-select-header-checkbox input[type="checkbox"]'),ee.columnChooserSearchBarCheckbox()),ce(n.querySelector('.ag-column-select-header-filter-wrapper input[type="text"]'),ee.columnChooserSearchBarFilter()),n.querySelectorAll(".ag-column-select-list").forEach(r=>{r.querySelectorAll(".ag-column-select-virtual-list-item").forEach(a=>{const l=a.getAttribute("aria-label");ce(a.querySelector(".ag-column-group-closed-icon"),ee.columnChooserListItemGroupClosedIcon(l)),ce(a.querySelector(".ag-column-select-checkbox input[type=checkbox]"),ee.columnChooserListItemCheckbox(l)),ce(a.querySelector(".ag-drag-handle"),ee.columnChooserListItemDragHandle(l))})})}),ce(e.querySelector(".ag-overlay-wrapper"),ee.overlay());const i=e.querySelector(".ag-column-drop-wrapper");i&&this.setupColumnDropArea(i,"panel")}setupFilterInstance(e,t){if(!e)return;e.querySelectorAll(".ag-filter-select .ag-picker-field-display").forEach(r=>{ce(r,ee.filterInstancePickerDisplay(t))});const s=e.querySelector('.ag-filter-body input[type="number"]');ce(s,ee.numberFilterInstanceInput(t));const o=e.querySelector('.ag-filter-body input[type="text"]');ce(o,ee.textFilterInstanceInput(t));const i=e.querySelector('.ag-filter-body input[type="date"]');ce(i,ee.dateFilterInstanceInput(t));const n=e.querySelector('.ag-mini-filter input[type="text"]');ce(n,ee.setFilterInstanceMiniFilterInput(t)),e.querySelectorAll(".ag-set-filter-list .ag-set-filter-item").forEach(r=>{const a=r.querySelector(".ag-checkbox-label")?.textContent,l=r.querySelector('input[type="checkbox"]');ce(l,ee.setFilterInstanceItem(t,a))}),e.querySelectorAll(".ag-filter-apply-panel button").forEach(r=>{ce(r,ee.setFilterApplyPanelButton(t,r.textContent))}),e.querySelectorAll(".ag-filter-condition .ag-radio-button").forEach(r=>{const a=r.querySelector(".ag-radio-button-label")?.textContent;ce(r.querySelector("input[type=radio]"),ee.filterConditionRadioButton(t,a))})}setupColumnDropArea(e,t){e.querySelectorAll(".ag-column-drop").forEach(s=>{const o=s.querySelector(".ag-column-drop-list")?.getAttribute("aria-label");ce(s,ee.columnDropArea(t,o)),s.querySelectorAll(".ag-column-drop-cell").forEach(i=>{const n=i.querySelector(".ag-column-drop-cell-text")?.textContent;ce(i.querySelector(".ag-drag-handle"),ee.columnDropCellDragHandle(t,o,n)),ce(i.querySelector(".ag-column-drop-cell-button .ag-icon-cancel"),ee.columnDropCellCancelButton(t,o,n))})})}},jk={moduleName:"Testing",version:Y,beans:[_k]};function Uk({testIdAttribute:e}={}){e&&Wk(e),Mf.registerModules([jk])}var Ct=g.createContext({}),hv=g.createContext("default"),Cr=(e,t,s,o)=>{if(!e||e.componentFromFramework||t.isDestroyed())return;const n=e.newAgStackInstance();let r,a,l=!1;return n.then(c=>{if(l){t.destroyBean(c);return}r=c,a=r.getGui(),s.appendChild(a),ap(o,r)}),()=>{l=!0,r&&(a?.remove(),t.destroyBean(r),o&&ap(o,void 0))}},ap=(e,t)=>{if(e)if(e instanceof Function)e(t);else{const s=e;s.current=t}},qt=(...e)=>e.filter(s=>s!=null&&s!=="").join(" "),Qt=class gv{constructor(...t){this.classesMap={};for(const s of t)this.classesMap[s]=!0}setClass(t,s){if(!!this.classesMap[t]==s)return this;const i=new gv;return i.classesMap={...this.classesMap},i.classesMap[t]=s,i}toString(){return Object.keys(this.classesMap).filter(s=>this.classesMap[s]).join(" ")}},Ki=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()},jd=g.version?.split(".")[0],pv=jd==="16"||jd==="17";function $k(){return jd==="19"}var ma=!1;function qk(e){return ma||setTimeout(()=>ma=!1,0),ma=!0,e()}var ir=(e,t)=>{!pv&&e&&!ma?rr.flushSync(t):t()},Kk=e=>{pv?e():g.startTransition(e)};function Yk(e,t,s){return g.useSyncExternalStore?g.useSyncExternalStore(e,t):s}function _a(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 o=[],i=[],n=new Map,r=new Map;for(let a=0;a<t.length;a++){const l=t[a];r.set(l.instanceId,l)}for(let a=0;a<e.length;a++){const l=e[a];n.set(l.instanceId,l),r.has(l.instanceId)&&o.push(l)}for(let a=0;a<t.length;a++){const l=t[a],c=l.instanceId;n.has(c)||i.push(l)}return o.length===e.length&&i.length===0?e:o.length===0&&i.length===t.length?t:o.length===0?i:i.length===0?o:[...o,...i]}var fv=g.forwardRef((e,t)=>{const{registry:s,context:o}=g.useContext(Ct),i=g.useRef(null),n=g.useRef(null),r=g.useRef(null),a=g.useRef(null),l=g.useRef(null),c=g.useRef(),[d,u]=g.useState(),[h,p]=g.useState(),[f,C]=g.useState(),[v,w]=g.useState(()=>new Qt),[b,S]=g.useState(()=>new Qt("ag-hidden")),[y,x]=g.useState(()=>new Qt("ag-hidden")),[F,R]=g.useState(()=>new Qt("ag-invisible"));g.useImperativeHandle(t,()=>({refresh(){return!1}})),g.useLayoutEffect(()=>Cr(d,o,n.current),[d]);const E=g.useCallback(U=>{if(i.current=U,!U||o.isDestroyed()){c.current=o.destroyBean(c.current);return}const L={setInnerRenderer:(H,te)=>{u(H),C(te)},setChildCount:H=>p(H),toggleCss:(H,te)=>w(Q=>Q.setClass(H,te)),setContractedDisplayed:H=>x(te=>te.setClass("ag-hidden",!H)),setExpandedDisplayed:H=>S(te=>te.setClass("ag-hidden",!H)),setCheckboxVisible:H=>R(te=>te.setClass("ag-invisible",!H)),setCheckboxSpacing:H=>R(te=>te.setClass("ag-group-checkbox-spacing",H))},de=s.createDynamicBean("groupCellRendererCtrl",!0);de&&(c.current=o.createBean(de),c.current.init(L,U,r.current,a.current,l.current,fv,e))},[]),D=g.useMemo(()=>`ag-cell-wrapper ${v.toString()}`,[v]),P=g.useMemo(()=>`ag-group-expanded ${b.toString()}`,[b]),T=g.useMemo(()=>`ag-group-contracted ${y.toString()}`,[y]),M=g.useMemo(()=>`ag-group-checkbox ${F.toString()}`,[F]),k=d?.componentFromFramework,N=k?d.componentClass:void 0,A=d==null&&f!=null,W=Ui(f);return g.createElement("span",{className:D,ref:E,...e.colDef?{}:{role:c.current?.getCellAriaRole()}},g.createElement("span",{className:P,ref:a}),g.createElement("span",{className:T,ref:l}),g.createElement("span",{className:M,ref:r}),g.createElement("span",{className:"ag-group-value",ref:n},A?W:k?g.createElement(N,{...d.params}):null),g.createElement("span",{className:"ag-group-child-count"},h))}),lp=fv,Ju=g.createContext({setMethods:()=>{}}),Zk=e=>{const{initialProps:t,addUpdateCallback:s,CustomComponentClass:o,setMethods:i}=e,[{key:n,...r},a]=g.useState(t);return g.useEffect(()=>{s(l=>a(l))},[]),g.createElement(Ju.Provider,{value:{setMethods:i}},g.createElement(o,{key:n,...r}))},Xk=g.memo(Zk),Qk=0;function cp(){return`agPortalKey_${++Qk}`}var mv=class{constructor(e,t,s,o){this.portal=null,this.oldPortal=null,this.reactComponent=e,this.portalManager=t,this.componentType=s,this.suppressFallbackMethods=!!o,this.statelessComponent=this.isStateless(this.reactComponent),this.key=cp(),this.portalKey=cp(),this.instanceCreated=this.isStatelessComponent()?Ae.resolve(!1):new Ae(i=>{this.resolveInstanceCreated=i})}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}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 o=s[e];if(o)return o.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 Ae(t=>this.createReactComponent(t))}createOrUpdatePortal(e){this.isStatelessComponent()||(this.ref=t=>{this.componentInstance=t,this.resolveInstanceCreated?.(!0),this.resolveInstanceCreated=void 0},e.ref=this.ref),this.reactElement=this.createElement(this.reactComponent,{...e,key:this.key}),this.portal=rr.createPortal(this.reactElement,this.eParentElement,this.portalKey)}createElement(e,t){return g.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 gl(e,t,s){for(const o of e){const i=t[o];i&&(s[o]=i)}}var Wt=class extends mv{constructor(){super(...arguments),this.awaitUpdateCallback=new Ae(e=>{this.resolveUpdateCallback=e}),this.wrapperComponent=Xk}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 Ae(o=>{setTimeout(()=>{o()})})),this.resolveUpdateCallback()}})}setMethods(e){this.providedMethods=e,gl(this.getOptionalMethods(),this.providedMethods,this)}getOptionalMethods(){return[]}getProps(){return{...this.sourceParams,key:this.key,ref:this.ref}}refreshProps(){return this.updateCallback?this.updateCallback():new Ae(e=>this.awaitUpdateCallback.then(()=>{this.updateCallback().then(()=>e())}))}},Jk=class extends Wt{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},eA=class extends Wt{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}},tA=class extends Wt{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:o}=this;return e.label=t,e.icon=s,e.shake=o,e}},sA=class extends Wt{constructor(){super(...arguments),this.model=null,this.onModelChange=e=>this.updateModel(e),this.onUiChange=()=>this.sourceParams.filterModifiedCallback(),this.expectingNewMethods=!0,this.hasBeenActive=!1,this.awaitSetMethodsCallback=new Ae(e=>{this.resolveSetMethodsCallback=e})}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}afterGuiAttached(e){const t=this.providedMethods;t?t.afterGuiAttached?.(e):this.awaitSetMethodsCallback.then(()=>this.providedMethods?.afterGuiAttached?.(e))}getOptionalMethods(){return["afterGuiDetached","onNewRowsLoaded","getModelAsString","onAnyFilterChanged"]}setMethods(e){this.expectingNewMethods===!1&&this.hasBeenActive&&this.providedMethods?.doesFilterPass!==e?.doesFilterPass&&setTimeout(()=>{this.sourceParams.filterChangedCallback()}),this.expectingNewMethods=!1,super.setMethods(e),this.resolveSetMethodsCallback(),this.resolveFilterPassCallback?.(),this.resolveFilterPassCallback=void 0}updateModel(e){this.resolveFilterPassCallback?.();const t=new Ae(s=>{this.resolveFilterPassCallback=s});this.setModel(e).then(()=>{t.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,e}},oA=class extends Wt{constructor(){super(...arguments),this.awaitSetMethodsCallback=new Ae(e=>{this.resolveSetMethodsCallback=e})}refresh(e){return this.sourceParams=e,this.refreshProps(),!0}afterGuiAttached(e){const t=this.providedMethods;t?t.afterGuiAttached?.(e):this.awaitSetMethodsCallback.then(()=>this.providedMethods?.afterGuiAttached?.(e))}getOptionalMethods(){return["afterGuiDetached","onNewRowsLoaded","onAnyFilterChanged"]}setMethods(e){super.setMethods(e),this.resolveSetMethodsCallback()}};function Cv(e,t){e.parentFilterInstance(s=>{(s.setModel(t)||Ae.resolve()).then(()=>{e.filterParams.filterChangedCallback()})})}var iA=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){gl(this.getOptionalMethods(),e,this)}getOptionalMethods(){return["afterGuiAttached"]}updateModel(e){this.model=e,this.refreshProps(),Cv(this.floatingFilterParams,e)}},nA=class extends Wt{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(),Cv(this.sourceParams,e)}getProps(){const e=super.getProps();return e.model=this.model,e.onModelChange=this.onModelChange,e}},rA=class extends Wt{refresh(e){this.sourceParams=e,this.refreshProps()}getOptionalMethods(){return["afterGuiAttached"]}},aA=class extends Wt{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},lA=class extends Wt{refresh(e){this.sourceParams=e,this.refreshProps()}},cA=class extends Wt{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}},dA=class extends Wt{refresh(e){this.sourceParams=e,this.refreshProps()}},uA=class extends Wt{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},hA=class extends Wt{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 eh(){z(231)}var gA=1e3,pA=class{constructor(e,t,s){this.destroyed=!1,this.portals=[],this.hasPendingPortalUpdate=!1,this.wrappingElement=t||"div",this.refresher=e,this.maxComponentCreationTimeMs=s||gA}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){ir(!0,()=>this.refresher()),e.rendered()&&t(e);return}window.setTimeout(()=>{this.waitForInstance(e,t,s)})}}},fA=({ctrl:e})=>{const t=e.isAlive(),{context:s}=g.useContext(Ct),[o,i]=g.useState(),[n,r]=g.useState(),a=g.useRef(),l=g.useRef(null),c=g.useRef(null),d=g.useRef(null),u=g.useRef(),h=g.useRef();t&&!h.current&&(h.current=new hr(()=>l.current));const p=g.useCallback(w=>{if(l.current=w,!w||!e.isAlive()||s.isDestroyed()){a.current=s.destroyBean(a.current);return}a.current=s.createBean(new $i);const b=()=>{const y=e.getSelectAllGui();y&&(c.current?.insertAdjacentElement("afterend",y),a.current.addDestroyFunc(()=>y.remove()))},S={setWidth:y=>{l.current&&(l.current.style.width=y)},toggleCss:(y,x)=>h.current.toggleCss(y,x),setUserStyles:y=>r(y),setAriaSort:y=>{l.current&&(y?mS(l.current,y):CS(l.current))},setUserCompDetails:y=>i(y),getUserCompInstance:()=>u.current||void 0,refreshSelectAllGui:b,removeSelectAllGui:()=>e.getSelectAllGui()?.remove()};e.setComp(S,w,c.current,d.current,a.current),b()},[]);g.useLayoutEffect(()=>Cr(o,s,d.current,u),[o]),g.useEffect(()=>{e.setDragSource(l.current)},[o]);const f=g.useMemo(()=>!!(o?.componentFromFramework&&Ki(o.componentClass)),[o]),C=o?.componentFromFramework,v=o?.componentClass;return g.createElement("div",{ref:p,style:n,className:"ag-header-cell",role:"columnheader"},g.createElement("div",{ref:c,className:"ag-header-cell-resize",role:"presentation"}),g.createElement("div",{ref:d,className:"ag-header-cell-comp-wrapper",role:"presentation"},C?f?g.createElement(v,{...o.params}):g.createElement(v,{...o.params,ref:u}):null))},mA=g.memo(fA),CA=class{constructor(e,t){this.floatingFilterParams=e,this.refreshProps=t}getProps(){return this.floatingFilterParams}refresh(e){this.floatingFilterParams=e,this.refreshProps()}setMethods(e){gl(this.getOptionalMethods(),e,this)}getOptionalMethods(){return["afterGuiAttached"]}},vA=({ctrl:e})=>{const{context:t,gos:s}=g.useContext(Ct),[o,i]=g.useState(),[n,r]=g.useState(()=>new Qt("ag-header-cell","ag-floating-filter")),[a,l]=g.useState(()=>new Qt),[c,d]=g.useState(()=>new Qt("ag-floating-filter-button","ag-hidden")),[u,h]=g.useState("false"),[p,f]=g.useState(),[,C]=g.useState(1),v=g.useRef(),w=g.useRef(null),b=g.useRef(null),S=g.useRef(null),y=g.useRef(null),x=g.useRef(),F=g.useRef(),R=H=>{H!=null&&x.current&&x.current(H)},E=g.useCallback(H=>{if(w.current=H,!H||!e.isAlive()||t.isDestroyed()){v.current=t.destroyBean(v.current);return}v.current=t.createBean(new $i),F.current=new Ae(Q=>{x.current=Q});const te={toggleCss:(Q,J)=>r(fe=>fe.setClass(Q,J)),setUserStyles:Q=>i(Q),addOrRemoveBodyCssClass:(Q,J)=>l(fe=>fe.setClass(Q,J)),setButtonWrapperDisplayed:Q=>{d(J=>J.setClass("ag-hidden",!Q)),h(Q?"false":"true")},setWidth:Q=>{w.current&&(w.current.style.width=Q)},setCompDetails:Q=>f(Q),getFloatingFilterComp:()=>F.current?F.current:null,setMenuIcon:Q=>y.current?.appendChild(Q)};e.setComp(te,H,y.current,b.current,v.current)},[]);g.useLayoutEffect(()=>Cr(p,t,b.current,R),[p]);const D=g.useMemo(()=>n.toString(),[n]),P=g.useMemo(()=>a.toString(),[a]),T=g.useMemo(()=>c.toString(),[c]),M=g.useMemo(()=>!!(p&&p.componentFromFramework&&Ki(p.componentClass)),[p]),k=g.useMemo(()=>s.get("reactiveCustomComponents"),[]),N=g.useMemo(()=>s.get("enableFilterHandlers"),[]),[A,W]=g.useState();g.useEffect(()=>{if(p?.componentFromFramework)if(k){const H=N?CA:iA,te=new H(p.params,()=>C(Q=>Q+1));R(te),W(te)}else eh()},[p]);const U=A?.getProps(),L=p?.componentFromFramework,de=p?.componentClass;return g.createElement("div",{ref:E,style:o,className:D,role:"gridcell"},g.createElement("div",{ref:b,className:P,role:"presentation"},L?k?U&&g.createElement(Ju.Provider,{value:{setMethods:H=>A.setMethods(H)}},g.createElement(de,{...U})):g.createElement(de,{...p.params,ref:M?()=>{}:R}):null),g.createElement("div",{ref:S,"aria-hidden":u,className:T,role:"presentation"},g.createElement("button",{ref:y,type:"button",className:"ag-button ag-floating-filter-button-button",tabIndex:-1})))},wA=g.memo(vA),bA=({ctrl:e})=>{const{context:t}=g.useContext(Ct),[s,o]=g.useState(),[i,n]=g.useState(()=>new Qt),[r,a]=g.useState(()=>new Qt),[l,c]=g.useState("false"),[d,u]=g.useState(),[h,p]=g.useState(),f=g.useRef(),C=g.useRef(null),v=g.useRef(null),w=g.useRef(null),b=g.useRef(),S=g.useCallback(D=>{if(C.current=D,!D||!e.isAlive()||t.isDestroyed()){f.current=t.destroyBean(f.current);return}f.current=t.createBean(new $i);const P={setWidth:T=>{C.current&&(C.current.style.width=T)},toggleCss:(T,M)=>n(k=>k.setClass(T,M)),setUserStyles:T=>o(T),setHeaderWrapperHidden:T=>{const M=w.current;M&&(T?M.style.setProperty("display","none"):M.style.removeProperty("display"))},setHeaderWrapperMaxHeight:T=>{const M=w.current;M&&(T!=null?M.style.setProperty("max-height",`${T}px`):M.style.removeProperty("max-height"),M.classList.toggle("ag-header-cell-comp-wrapper-limited-height",T!=null))},setUserCompDetails:T=>p(T),setResizableDisplayed:T=>{a(M=>M.setClass("ag-hidden",!T)),c(T?"false":"true")},setAriaExpanded:T=>u(T),getUserCompInstance:()=>b.current||void 0};e.setComp(P,D,v.current,w.current,f.current)},[]);g.useLayoutEffect(()=>Cr(h,t,w.current),[h]),g.useEffect(()=>{C.current&&e.setDragSource(C.current)},[h]);const y=g.useMemo(()=>!!(h?.componentFromFramework&&Ki(h.componentClass)),[h]),x=g.useMemo(()=>"ag-header-group-cell "+i.toString(),[i]),F=g.useMemo(()=>"ag-header-cell-resize "+r.toString(),[r]),R=h?.componentFromFramework,E=h?.componentClass;return g.createElement("div",{ref:S,style:s,className:x,role:"columnheader","aria-expanded":d},g.createElement("div",{ref:w,className:"ag-header-cell-comp-wrapper",role:"presentation"},R?y?g.createElement(E,{...h.params}):g.createElement(E,{...h.params,ref:b}):null),g.createElement("div",{ref:v,"aria-hidden":l,className:F}))},SA=g.memo(bA),yA=({ctrl:e})=>{const{gos:t,context:s}=g.useContext(Ct),{topOffset:o,rowHeight:i}=g.useMemo(()=>e.getTopAndHeight(),[]),n=g.useMemo(()=>t.get("tabIndex"),[]),[r,a]=g.useState(()=>e.getAriaRowIndex()),l=e.headerRowClass,[c,d]=g.useState(()=>i+"px"),[u,h]=g.useState(()=>o+"px"),p=g.useRef(null),[f,C]=g.useState(()=>e.getUpdatedHeaderCtrls()),v=g.useRef(),w=g.useRef(null),b=g.useCallback(x=>{if(w.current=x,!x||!e.isAlive()||s.isDestroyed()){v.current=s.destroyBean(v.current);return}v.current=s.createBean(new $i);const F={setHeight:R=>d(R),setTop:R=>h(R),setHeaderCtrls:(R,E,D)=>{const P=p.current,T=_a(P,R,E);T!==P&&(p.current=T,ir(D,()=>C(T)))},setWidth:R=>{w.current&&(w.current.style.width=R)},setRowIndex:R=>{a(R)}};e.setComp(F,v.current,!1)},[]),S=g.useMemo(()=>({height:c,top:u}),[c,u]),y=g.useCallback(x=>{switch(e.type){case"group":return g.createElement(SA,{ctrl:x,key:x.instanceId});case"filter":return g.createElement(wA,{ctrl:x,key:x.instanceId});default:return g.createElement(mA,{ctrl:x,key:x.instanceId})}},[]);return g.createElement("div",{ref:b,className:l,role:"row",style:S,tabIndex:n,"aria-rowindex":r},f.map(y))},xA=g.memo(yA),RA=({pinned:e})=>{const[t,s]=g.useState(!0),[o,i]=g.useState([]),{context:n}=g.useContext(Ct),r=g.useRef(null),a=g.useRef(null),l=g.useRef(),c=e==="left",d=e==="right",u=!c&&!d,h=g.useCallback(C=>{if(r.current=C,!C||n.isDestroyed()){l.current=n.destroyBean(l.current);return}l.current=n.createBean(new tF(e));const v={setDisplayed:s,setCtrls:w=>i(w),setCenterWidth:w=>{a.current&&(a.current.style.width=w)},setViewportScrollLeft:w=>{r.current&&(r.current.scrollLeft=w)},setPinnedContainerWidth:w=>{r.current&&(r.current.style.width=w,r.current.style.minWidth=w,r.current.style.maxWidth=w)}};l.current.setComp(v,r.current)},[]),p=t?"":"ag-hidden",f=()=>o.map(C=>g.createElement(xA,{ctrl:C,key:C.instanceId}));return c?g.createElement("div",{ref:h,className:"ag-pinned-left-header "+p,"aria-hidden":!t,role:"rowgroup"},f()):d?g.createElement("div",{ref:h,className:"ag-pinned-right-header "+p,"aria-hidden":!t,role:"rowgroup"},f()):u?g.createElement("div",{ref:h,className:"ag-header-viewport "+p,role:"rowgroup",tabIndex:-1},g.createElement("div",{ref:a,className:"ag-header-container",role:"presentation"},f())):null},zc=g.memo(RA),FA=()=>{const[e,t]=g.useState(()=>new Qt),[s,o]=g.useState(),{context:i}=g.useContext(Ct),n=g.useRef(null),r=g.useRef(),a=g.useCallback(d=>{if(n.current=d,!d||i.isDestroyed()){r.current=i.destroyBean(r.current);return}r.current=i.createBean(new X2);const u={toggleCss:(h,p)=>t(f=>f.setClass(h,p)),setHeightAndMinHeight:h=>o(h)};r.current.setComp(u,d,d)},[]),l=g.useMemo(()=>"ag-header "+e.toString(),[e]),c=g.useMemo(()=>({height:s,minHeight:s}),[s]);return g.createElement("div",{ref:a,className:l,style:c,role:"presentation"},g.createElement(zc,{pinned:"left"}),g.createElement(zc,{pinned:null}),g.createElement(zc,{pinned:"right"}))},EA=g.memo(FA),DA=(e,t)=>{g.useEffect(()=>{const s=t.current;if(s){const o=s.parentElement;if(o){const i=document.createComment(e);return o.insertBefore(i,s),()=>{i.remove()}}}},[e])},wo=DA,PA=class{constructor(e,t){this.cellEditorParams=e,this.refreshProps=t,this.instanceCreated=new Ae(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){gl(this.getOptionalMethods(),e,this)}getInstance(){return this.instanceCreated.then(()=>this.componentInstance)}setRef(e){this.componentInstance=e,this.resolveInstanceCreated?.(),this.resolveInstanceCreated=void 0}getOptionalMethods(){return["isCancelBeforeStart","isCancelAfterEnd","focusIn","focusOut","afterGuiAttached","getValidationErrors","getValidationElement"]}updateValue(e){this.value=e,this.refreshProps()}},TA=e=>{const t=g.useRef(e),s=g.useRef(),o=g.useRef(!1),i=g.useRef(!1),[,n]=g.useState(0);o.current&&(i.current=!0),g.useEffect(()=>(o.current||(s.current=t.current(),o.current=!0),n(r=>r+1),()=>{i.current&&s.current?.()}),[])},MA=e=>{const[t,s]=g.useState(),o=g.useContext(Ct),{context:i,popupSvc:n,gos:r,editSvc:a}=o,{editDetails:l,cellCtrl:c,eParentCell:d}=e;return TA(()=>{const{compDetails:u}=l,h=r.get("stopEditingWhenCellsLoseFocus");let p,f;if(!i.isDestroyed()){f=i.createBean(a.createPopupEditorWrapper(u.params));const C=f.getGui();if(e.jsChildComp){const x=e.jsChildComp.getGui();x&&C.appendChild(x)}const{column:v,rowNode:w}=c,b={column:v,rowNode:w,type:"popupCellEditor",eventSource:d,ePopup:C,position:l.popupPosition,keepWithinBounds:!0},S=n?.positionPopupByComponent.bind(n,b),y=n?.addPopup({modal:h,eChild:C,closeOnEsc:!0,closedCallback:()=>{c.onPopupEditorClosed()},anchorToElement:d,positionCallback:S,ariaOwns:d});p=y?y.hideFunc:void 0,s(f),e.jsChildComp?.afterGuiAttached?.()}return()=>{p?.(),i.destroyBean(f)}}),g.useLayoutEffect(()=>()=>{c.isCellFocused()&&t?.getGui().contains(Ze(o))&&d.focus({preventScroll:!0})},[t]),t&&e.wrappedContent?rr.createPortal(e.wrappedContent,t.getGui()):null},dp=g.memo(MA),IA=(e,t,s)=>{const{compProxy:o}=e;s(o);const i=o.getProps(),n=Ki(t);return g.createElement(Ju.Provider,{value:{setMethods:r=>o.setMethods(r)}},n?g.createElement(t,{...i}):g.createElement(t,{...i,ref:r=>o.setRef(r)}))},up=(e,t,s)=>e.compProxy?IA(e,t,s):g.createElement(t,{...e.compDetails.params,ref:s}),kA=(e,t,s,o,i)=>{const n=e.compDetails,r=n.componentClass,a=n.componentFromFramework&&!e.popup,l=n.componentFromFramework&&e.popup,c=!n.componentFromFramework&&e.popup;return a?up(e,r,t):l?g.createElement(dp,{editDetails:e,cellCtrl:o,eParentCell:s,wrappedContent:up(e,r,t)}):c&&i?g.createElement(dp,{editDetails:e,cellCtrl:o,eParentCell:s,jsChildComp:i}):null},AA=(e,t,s,o,i,n)=>{const{context:r}=g.useContext(Ct),a=g.useCallback(()=>{const l=i.current;if(!l)return;const c=l.getGui();c&&c.parentElement&&c.remove(),r.destroyBean(l),i.current=void 0},[]);g.useEffect(()=>{const l=e!=null,c=e?.compDetails&&!e.compDetails.componentFromFramework,d=t&&s==null;if(!(l&&c&&!d)){a();return}const h=e.compDetails;if(i.current){const f=i.current,v=f.refresh!=null&&e.force==!1?f.refresh(h.params):!1;if(v===!0||v===void 0)return;a()}h.newAgStackInstance().then(f=>{if(!f)return;const C=f.getGui();if(!C)return;(t?s:n.current).appendChild(C),i.current=f})},[e,t,o]),g.useEffect(()=>a,[])},vv=AA,LA=({cellCtrl:e,parent:t})=>{const s=g.useRef(),o=g.useMemo(()=>{const{loadingComp:i}=e.getDeferLoadingCellRenderer();return i?{value:void 0,compDetails:i,force:!1}:void 0},[e]);if(vv(o,!1,void 0,1,s,t),o?.compDetails?.componentFromFramework){const i=o.compDetails.componentClass;return g.createElement(i,{...o.compDetails.params})}return g.createElement(g.Fragment,null)},OA=({cellCtrl:e,printLayout:t,editingCell:s})=>{const o=g.useContext(Ct),{context:i}=o,{column:{colIdSanitised:n},instanceId:r}=e,a=g.useRef(),[l,c]=g.useState(()=>e.isCellRenderer()?void 0:{compDetails:void 0,value:e.getValueToDisplay(),force:!1}),[d,u]=g.useState(),[h,p]=g.useState(1),[f,C]=g.useState(),[v,w]=g.useState(!1),[b,S]=g.useState(!1),[y,x]=g.useState(!1),[F,R]=g.useState(),E=g.useMemo(()=>e.isForceWrapper(),[e]),D=g.useMemo(()=>e.getCellAriaRole(),[e]),P=g.useRef(null),T=g.useRef(null),M=g.useRef(null),k=g.useRef(),N=g.useRef(),A=g.useRef(),W=g.useRef([]),U=g.useRef(),L=g.useRef(),[de,H]=g.useState(0),te=g.useCallback(re=>{L.current=re,H(ve=>ve+1)},[]),Q=l!=null&&(v||y||b)&&(d==null||!!d.popup),J=E||Q,fe=g.useMemo(()=>e.getCellValueClass(),[e]),xe=g.useCallback(re=>{if(N.current=re,re){const ve=re.isCancelBeforeStart&&re.isCancelBeforeStart();setTimeout(()=>{ve?(e.stopEditing(!0),e.focusCell(!0)):(e.cellEditorAttached(),e.enableEditorTooltipFeature(re))})}},[e]),ne=g.useRef();ne.current||(ne.current=new hr(()=>P.current)),vv(l,J,L.current,de,k,P);const _=g.useRef();g.useLayoutEffect(()=>{const re=_.current,ve=l;if(_.current=l,re==null||re.compDetails==null||ve==null||ve.compDetails==null)return;U.current?.refreshVisibility();const Re=re.compDetails,Oe=ve.compDetails;if(Re.componentClass!=Oe.componentClass||M.current?.refresh==null)return;M.current.refresh(Oe.params)!=!0&&p(Pe=>Pe+1)},[l]),g.useLayoutEffect(()=>{if(!(d&&!d.compDetails.componentFromFramework)||i.isDestroyed())return;const ve=d.compDetails,Re=d.popup===!0,Oe=ve.newAgStackInstance();return Oe.then(me=>{if(!me)return;const Pe=me.getGui();xe(me),Re||((E?A:P).current?.appendChild(Pe),me.afterGuiAttached?.()),R(me)}),()=>{Oe.then(me=>{const Pe=me.getGui();e.disableEditorTooltipFeature(),i.destroyBean(me),xe(void 0),R(void 0),Pe?.remove()})}},[d]);const Fe=g.useCallback(re=>{if(A.current=re,!re||i.isDestroyed()||!e.isAlive()){const Oe=W.current;W.current=[];for(const me of Oe)me();return}let ve;const Re=Oe=>{Oe&&(re.insertAdjacentElement("afterbegin",Oe.getGui()),W.current.push(()=>{eo(Oe.getGui()),i.destroyBean(Oe),U.current===ve&&(U.current=void 0)}))};v&&Re(e.createSelectionCheckbox()),y&&Re(e.createDndSource()),b&&(ve=e.createRowDragComp(),U.current=ve,ve&&(Re(ve),ve.refreshVisibility()))},[e,i,y,b,v]),ie=g.useCallback(()=>{const re=!e.isCellSpanning()||T.current,ve=P.current;if(!ve||!re||!e||!e.isAlive()||i.isDestroyed()){a.current=i.destroyBean(a.current);return}a.current=i.createBean(new $i);const Re={toggleCss:(me,Pe)=>ne.current.toggleCss(me,Pe),setUserStyles:me=>C(me),getFocusableElement:()=>P.current,setIncludeSelection:me=>w(me),setIncludeRowDrag:me=>S(me),setIncludeDndSource:me=>x(me),getCellEditor:()=>N.current??null,getCellRenderer:()=>M.current??k.current,getParentOfValue:()=>L.current??A.current??P.current,setRenderDetails:(me,Pe,_e)=>{const Ge=()=>{c(We=>We?.compDetails!==me||We?.value!==Pe||We?.force!==_e?{value:Pe,compDetails:me,force:_e}:We)};if(me?.params?.deferRender&&!e.rowNode.group){const{loadingComp:We,onReady:_t}=e.getDeferLoadingCellRenderer();if(We){c({value:void 0,compDetails:We,force:!1}),_t.then(()=>Kk(Ge));return}}Ge()},setEditDetails:(me,Pe,_e,Ge)=>{if(me){let We;me.componentFromFramework&&(Ge?We=new PA(me.params,()=>p(_t=>_t+1)):eh()),u({compDetails:me,popup:Pe,popupPosition:_e,compProxy:We}),Pe||c(void 0)}else e.hasBrowserFocus()&&Re.getFocusableElement().focus({preventScroll:!0}),N.current=void 0,u(void 0)},refreshEditStyles:(me,Pe)=>{if(!P.current)return;const{current:_e}=ne;_e.toggleCss("ag-cell-value",!J),_e.toggleCss("ag-cell-inline-editing",!!me&&!Pe),_e.toggleCss("ag-cell-popup-editing",!!me&&!!Pe),_e.toggleCss("ag-cell-not-inline-editing",!me||!!Pe)}},Oe=A.current||void 0;e.setComp(Re,ve,T.current??void 0,Oe,t,s,a.current)},[]),$=g.useCallback(re=>{P.current=re,ie()},[]),q=g.useCallback(re=>{T.current=re,ie()},[]),se=g.useMemo(()=>!!(l?.compDetails?.componentFromFramework&&Ki(l.compDetails.componentClass)),[l]);g.useLayoutEffect(()=>{if(!P.current)return;const{current:re}=ne;re.toggleCss("ag-cell-value",!J),re.toggleCss("ag-cell-inline-editing",!!d&&!d.popup),re.toggleCss("ag-cell-popup-editing",!!d&&!!d.popup),re.toggleCss("ag-cell-not-inline-editing",!d||!!d.popup)});const G=()=>{const{compDetails:re,value:ve}=l;if(!re)return ve?.toString?.()??ve;if(re.componentFromFramework){const Re=re.componentClass;return g.createElement(g.Suspense,{fallback:g.createElement(LA,{cellCtrl:e,parent:P})},se?g.createElement(Re,{...re.params,key:h}):g.createElement(Re,{...re.params,key:h,ref:M}))}},pe=()=>{const re=()=>l==null?null:J?g.createElement("span",{role:"presentation",id:`cell-${r}`,className:fe,ref:te},G()):G(),ve=Re=>kA(Re,xe,P.current,e,F);return d!=null?d.popup?g.createElement(g.Fragment,null,re(),ve(d)):ve(d):re()},le=()=>g.createElement("div",{ref:$,style:f,role:D,"col-id":n},J?g.createElement("div",{className:"ag-cell-wrapper",role:"presentation",ref:Fe},pe()):pe());return e.isCellSpanning()?g.createElement("div",{ref:q,className:"ag-spanned-cell-wrapper",role:"presentation"},le()):le()},NA=g.memo(OA),HA=({rowCtrl:e,containerType:t})=>{const{context:s,gos:o,editSvc:i}=g.useContext(Ct),n=g.useContext(hv)==="default",r=g.useRef(),a=g.useRef(e.getDomOrder()),l=e.isFullWidth(),c=e.rowNode.displayed,[d,u]=g.useState(()=>c?e.rowNode.getRowIndexString():null),[h,p]=g.useState(()=>e.rowId),[f,C]=g.useState(()=>e.businessKey),[v,w]=g.useState(()=>e.rowStyles),b=g.useRef(null),[S,y]=g.useState(()=>null),[x,F]=g.useState(),[R,E]=g.useState(()=>c?e.getInitialRowTop(t):void 0),[D,P]=g.useState(()=>c?e.getInitialTransform(t):void 0),T=g.useRef(null),M=g.useRef(),k=g.useRef(),N=g.useRef(!1),[A,W]=g.useState(0);g.useEffect(()=>{if(N.current||!x||A>10)return;const $=T.current?.firstChild;$?(e.setupDetailRowAutoHeight($),N.current=!0):W(q=>q+1)},[x,A]);const U=g.useRef();U.current||(U.current=new hr(()=>T.current));const L=g.useRef(()=>{}),de=g.useCallback($=>(L.current=$,()=>{L.current=()=>{}}),[]),H=Yk(de,()=>b.current,[]),te=n?H:S,Q=g.useCallback($=>{if(T.current=$,r.current=$?s.createBean(new $i):s.destroyBean(r.current),!$){e.unsetComp(t);return}if(!e.isAlive()||s.isDestroyed())return;const q={setTop:E,setTransform:P,toggleCss:(se,G)=>U.current.toggleCss(se,G),setDomOrder:se=>a.current=se,setRowIndex:u,setRowId:p,setRowBusinessKey:C,setUserStyles:w,setCellCtrls:(se,G)=>{const pe=b.current,le=_a(pe,se,a.current);le!==pe&&(b.current=le,n?L.current():ir(G,()=>y(le)))},showFullWidth:se=>{k.current=se.params,F(se)},getFullWidthCellRenderer:()=>M.current,getFullWidthCellRendererParams:()=>k.current,refreshFullWidth:se=>{const G=se();return k.current=G,_.current?(F(pe=>({...pe,params:G})),!0):!M.current||!M.current.refresh?!1:M.current.refresh(G)}};e.setComp(q,$,t,r.current)},[]);g.useLayoutEffect(()=>Cr(x,s,T.current,M),[x]);const J=g.useMemo(()=>{const $={top:R,transform:D};return Object.assign($,v),$},[R,D,v]),fe=l&&x?.componentFromFramework,xe=!l&&te!=null,ne=g.useMemo(()=>!!(x?.componentFromFramework&&Ki(x.componentClass)),[x]),_=g.useRef(!1);g.useEffect(()=>{_.current=ne&&!!x&&!!o.get("reactiveCustomComponents")},[ne,x]);const Fe=()=>te?.map($=>g.createElement(NA,{cellCtrl:$,editingCell:i?.isEditing($,{withOpenEditor:!0})??!1,printLayout:e.printLayout,key:$.instanceId})),ie=()=>{const $=x.componentClass;return ne?g.createElement($,{...x.params}):g.createElement($,{...x.params,ref:M})};return g.createElement("div",{ref:Q,role:"row",style:J,"row-index":d,"row-id":h,"row-business-key":f},xe?Fe():fe?ie():null)},hp=g.memo(HA),GA=({name:e})=>{const{context:t,gos:s}=g.useContext(Ct),o=g.useMemo(()=>pr(e),[e]),i=g.useRef(null),n=g.useRef(null),r=g.useRef(null),a=g.useRef([]),l=g.useRef([]),[c,d]=g.useState(()=>[]),u=!!s.get("enableCellSpan")&&!!o.getSpannedRowCtrls,h=g.useRef([]),p=g.useRef([]),[f,C]=g.useState(()=>[]),v=g.useRef(!1),w=g.useRef(),b=g.useMemo(()=>qt("ag-viewport",Om(e)),[e]),S=g.useMemo(()=>qt(ua(e)),[e]),y=g.useMemo(()=>qt("ag-spanning-container",S2(e)),[e]),x=o.type==="center"||u,F=x?i:n;wo(" AG Row Container "+e+" ",F);const R=g.useCallback(()=>{const A=!x||i.current!=null,W=n.current!=null,U=!u||r.current!=null;return A&&W&&U},[]),E=g.useCallback(()=>i.current==null&&n.current==null&&r.current==null,[]),D=g.useCallback(()=>{if(E()&&(w.current=t.destroyBean(w.current)),!t.isDestroyed()&&R()){const A=L=>{const de=_a(l.current,a.current,v.current);de!==l.current&&(l.current=de,ir(L,()=>d(de)))},W=L=>{const de=_a(p.current,h.current,v.current);de!==p.current&&(p.current=de,ir(L,()=>C(de)))},U={setHorizontalScroll:L=>{i.current&&(i.current.scrollLeft=L)},setViewportHeight:L=>{i.current&&(i.current.style.height=L)},setRowCtrls:({rowCtrls:L,useFlushSync:de})=>{const H=!!de&&a.current.length>0&&L.length>0;a.current=L,A(H)},setSpannedRowCtrls:(L,de)=>{const H=!!de&&h.current.length>0&&L.length>0;h.current=L,W(H)},setDomOrder:L=>{v.current!=L&&(v.current=L,A(!1))},setContainerWidth:L=>{n.current&&(n.current.style.width=L)},setOffsetTop:L=>{n.current&&(n.current.style.transform=`translateY(${L})`)}};w.current=t.createBean(new I2(e)),w.current.setComp(U,n.current,r.current??void 0,i.current)}},[R,E]),P=g.useCallback(A=>{n.current=A,D()},[D]),T=g.useCallback(A=>{r.current=A,D()},[D]),M=g.useCallback(A=>{i.current=A,D()},[D]),k=()=>g.createElement("div",{className:S,ref:P,role:x?"presentation":"rowgroup"},c.map(A=>g.createElement(hp,{rowCtrl:A,containerType:o.type,key:A.instanceId})));if(!x)return k();const N=()=>g.createElement("div",{className:y,ref:T,role:"presentation"},f.map(A=>g.createElement(hp,{rowCtrl:A,containerType:o.type,key:A.instanceId})));return g.createElement("div",{className:b,ref:M,role:"rowgroup"},k(),u?N():null)},BA=g.memo(GA),VA=()=>{const e=g.useContext(Ct),{context:t,overlays:s}=e,[o,i]=g.useState(""),[n,r]=g.useState(0),[a,l]=g.useState(0),[c,d]=g.useState("0px"),[u,h]=g.useState("0px"),[p,f]=g.useState("100%"),[C,v]=g.useState("0px"),[w,b]=g.useState("0px"),[S,y]=g.useState("100%"),[x,F]=g.useState(!0),[R,E]=g.useState(!0),[D,P]=g.useState(null),[T,M]=g.useState(""),[k,N]=g.useState(null),[A,W]=g.useState("ag-layout-normal"),U=g.useRef();U.current||(U.current=new hr(()=>L.current));const L=g.useRef(null),de=g.useRef(null),H=g.useRef(null),te=g.useRef(null),Q=g.useRef(null),J=g.useRef(null),fe=g.useRef(null),xe=g.useRef([]),ne=g.useRef([]);wo(" AG Grid Body ",L),wo(" AG Pinned Top ",de),wo(" AG Sticky Top ",H),wo(" AG Middle ",J),wo(" AG Pinned Bottom ",fe);const _=g.useCallback(Pe=>{if(L.current=Pe,!Pe||t.isDestroyed()){xe.current=t.destroyBeans(xe.current);for(const B of ne.current)B();ne.current=[];return}const _e=(B,Ee)=>{B.appendChild(Ee),ne.current.push(()=>Ee.remove())},Ge=B=>{const Ee=t.createBean(new B);return xe.current.push(Ee),Ee},We=(B,Ee,It)=>{_e(B,document.createComment(It)),_e(B,Ge(Ee).getGui())};We(Pe,G2," AG Fake Horizontal Scroll ");const _t=s?.getOverlayWrapperCompClass();_t&&We(Pe,_t," AG Overlay Wrapper "),Q.current&&We(Q.current,V2," AG Fake Vertical Scroll ");const jt={setRowAnimationCssOnBodyViewport:i,setColumnCount:B=>{L.current&&pS(L.current,B)},setRowCount:B=>{L.current&&hS(L.current,B)},setTopHeight:r,setBottomHeight:l,setStickyTopHeight:d,setStickyTopTop:h,setStickyTopWidth:f,setTopInvisible:F,setBottomInvisible:E,setColumnMovingCss:(B,Ee)=>U.current.toggleCss(B,Ee),updateLayoutClasses:W,setAlwaysVerticalScrollClass:P,setPinnedTopBottomOverflowY:M,setCellSelectableCss:(B,Ee)=>N(Ee?B:null),setBodyViewportWidth:B=>{J.current&&(J.current.style.width=B)},registerBodyViewportResizeListener:B=>{if(J.current){const Ee=Bs(e,J.current,B);ne.current.push(()=>Ee())}},setStickyBottomHeight:v,setStickyBottomBottom:b,setStickyBottomWidth:y,setGridRootRole:B=>Pe.setAttribute("role",B)},as=t.createBean(new O2);xe.current.push(as),as.setComp(jt,Pe,J.current,de.current,fe.current,H.current,te.current)},[]),Fe=g.useMemo(()=>qt("ag-root","ag-unselectable",A),[A]),ie=g.useMemo(()=>qt("ag-body-viewport",o,A,D,k),[o,A,D,k]),$=g.useMemo(()=>qt("ag-body",A),[A]),q=g.useMemo(()=>qt("ag-floating-top",x?"ag-invisible":null,k),[k,x]),se=g.useMemo(()=>qt("ag-sticky-top",k),[k]),G=g.useMemo(()=>qt("ag-sticky-bottom",C==="0px"?"ag-invisible":null,k),[k,C]),pe=g.useMemo(()=>qt("ag-floating-bottom",R?"ag-invisible":null,k),[k,R]),le=g.useMemo(()=>({height:n,minHeight:n,overflowY:T}),[n,T]),re=g.useMemo(()=>({height:c,top:u,width:p}),[c,u,p]),ve=g.useMemo(()=>({height:C,bottom:w,width:S}),[C,w,S]),Re=g.useMemo(()=>({height:a,minHeight:a,overflowY:T}),[a,T]),Oe=Pe=>g.createElement(BA,{name:Pe,key:`${Pe}-container`}),me=({section:Pe,children:_e,className:Ge,style:We})=>g.createElement("div",{ref:Pe,className:Ge,role:"presentation",style:We},_e.map(Oe));return g.createElement("div",{ref:_,className:Fe},g.createElement(EA,null),me({section:de,className:q,style:le,children:["topLeft","topCenter","topRight","topFullWidth"]}),g.createElement("div",{className:$,ref:Q,role:"presentation"},me({section:J,className:ie,children:["left","center","right","fullWidth"]})),me({section:H,className:se,style:re,children:["stickyTopLeft","stickyTopCenter","stickyTopRight","stickyTopFullWidth"]}),me({section:te,className:G,style:ve,children:["stickyBottomLeft","stickyBottomCenter","stickyBottomRight","stickyBottomFullWidth"]}),me({section:fe,className:pe,style:Re,children:["bottomLeft","bottomCenter","bottomRight","bottomFullWidth"]}))},zA=g.memo(VA),WA=(e,t)=>{const{children:s,eFocusableElement:o,onTabKeyDown:i,gridCtrl:n,forceFocusOutWhenTabGuardsAreEmpty:r,isEmpty:a}=e,{context:l}=g.useContext(Ct),c=g.useRef(null),d=g.useRef(null),u=g.useRef(),h=w=>{const b=w==null?void 0:parseInt(w,10).toString();for(const S of[c,d])b===void 0?S.current?.removeAttribute("tabindex"):S.current?.setAttribute("tabindex",b)};g.useImperativeHandle(t,()=>({forceFocusOutOfContainer(w){u.current?.forceFocusOutOfContainer(w)}}));const p=g.useCallback(()=>{const w=c.current,b=d.current;if(!w&&!b||l.isDestroyed()){u.current=l.destroyBean(u.current);return}if(w&&b){const S={setTabIndex:h};u.current=l.createBean(new qm({comp:S,eTopGuard:w,eBottomGuard:b,eFocusableElement:o,onTabKeyDown:i,forceFocusOutWhenTabGuardsAreEmpty:r,focusInnerElement:y=>n.focusInnerElement(y),isEmpty:a}))}},[]),f=g.useCallback(w=>{c.current=w,p()},[p]),C=g.useCallback(w=>{d.current=w,p()},[p]),v=w=>{const b=w==="top"?Pi.TAB_GUARD_TOP:Pi.TAB_GUARD_BOTTOM;return g.createElement("div",{className:`${Pi.TAB_GUARD} ${b}`,role:"presentation",ref:w==="top"?f:C})};return g.createElement(g.Fragment,null,v("top"),s,v("bottom"))},_A=g.forwardRef(WA),jA=g.memo(_A),UA=({context:e})=>{const[t,s]=g.useState(""),[o,i]=g.useState(""),[n,r]=g.useState(null),[a,l]=g.useState(null),[c,d]=g.useState(!1),[u,h]=g.useState(),p=g.useRef(),f=g.useRef(null),C=g.useRef(),[v,w]=g.useState(null),b=g.useRef(()=>{}),S=g.useRef(),y=g.useRef([]),x=g.useCallback(()=>{},[]);wo(" AG Grid ",f);const F=g.useCallback(M=>{if(f.current=M,p.current=M?e.createBean(new HF):e.destroyBean(p.current),!M||e.isDestroyed())return;const k=p.current;b.current=k.focusInnerElement.bind(k);const N={destroyGridUi:()=>{},setRtlClass:s,forceFocusOutOfContainer:A=>{if(!A&&S.current?.isDisplayed()){S.current.forceFocusOutOfContainer(A);return}C.current?.forceFocusOutOfContainer(A)},updateLayoutClasses:i,getFocusableContainers:()=>{const A=[],W=f.current?.querySelector(".ag-root");W&&A.push({getGui:()=>W});for(const U of y.current)U.isDisplayed()&&A.push(U);return A},setCursor:r,setUserSelect:l};k.setComp(N,M,M),d(!0)},[]);g.useEffect(()=>{const M=p.current,k=f.current;if(!u||!M||!v||!k||e.isDestroyed())return;const N=[],{watermarkSelector:A,paginationSelector:W,sideBarSelector:U,statusBarSelector:L,gridHeaderDropZonesSelector:de}=M.getOptionalSelectors(),H=[];if(de){const Q=e.createBean(new de.component),J=Q.getGui();k.insertAdjacentElement("afterbegin",J),H.push(J),N.push(Q)}if(U){const Q=e.createBean(new U.component),J=Q.getGui(),fe=v.querySelector(".ag-tab-guard-bottom");fe&&(fe.insertAdjacentElement("beforebegin",J),H.push(J)),N.push(Q),y.current.push(Q)}const te=Q=>{const J=e.createBean(new Q),fe=J.getGui();return k.insertAdjacentElement("beforeend",fe),H.push(fe),N.push(J),J};if(L&&te(L.component),W){const Q=te(W.component);S.current=Q,y.current.push(Q)}return A&&te(A.component),()=>{e.destroyBeans(N);for(const Q of H)Q.remove()}},[u,v,e]);const R=g.useMemo(()=>qt("ag-root-wrapper",t,o),[t,o]),E=g.useMemo(()=>qt("ag-root-wrapper-body","ag-focus-managed",o),[o]),D=g.useMemo(()=>({userSelect:a??"",WebkitUserSelect:a??"",cursor:n??""}),[a,n]),P=g.useCallback(M=>{C.current=M,h(M!==null)},[]),T=g.useCallback(()=>!p.current?.isFocusable(),[]);return g.createElement("div",{ref:F,className:R,style:D,role:"presentation"},g.createElement("div",{className:E,ref:w,role:"presentation"},c&&v&&!e.isDestroyed()&&g.createElement(Ct.Provider,{value:e.getBeans()},g.createElement(jA,{ref:P,eFocusableElement:v,onTabKeyDown:x,gridCtrl:p.current,forceFocusOutWhenTabGuardsAreEmpty:!0,isEmpty:T},g.createElement(zA,null)))))},$A=g.memo(UA),qA=class extends O{postConstruct(){if(this.beans.colAutosize){const e=this.queueResizeOperationsForTick.bind(this);this.addManagedEventListeners({rowExpansionStateChanged:e,expandOrCollapseAll:e,cellValueChanged:e,rowNodeDataChanged:e,rowDataUpdated:e})}}queueResizeOperationsForTick(){const e=this.beans.colAutosize;e.shouldQueueResizeOperations=!0,setTimeout(()=>{e.processResizeOperations()},0)}areHeaderCellsRendered(){return this.beans.ctrlsSvc.getHeaderRowContainerCtrls().every(e=>e.getAllCtrls().every(t=>t.areCellsRendered()))}areCellsRendered(){return this.beans.rowRenderer.getAllRowCtrls().every(e=>e.isRowRendered()&&e.getAllCellCtrls().every(t=>!!t.eGui))}},wv={setGridApi:void 0,maxComponentCreationTimeMs:void 0,children:void 0},KA={gridOptions:void 0,modules:void 0,containerStyle:void 0,className:void 0,passGridApi:void 0,componentWrappingElement:void 0,...wv},bv=new Set(Object.keys(KA)),YA=new Set(Object.keys(wv)),Sv=e=>{const t=g.useRef(),s=g.useRef(null),o=g.useRef(null),i=g.useRef([]),n=g.useRef([]),r=g.useRef(e),a=g.useRef(),l=g.useRef(),c=g.useRef(!1),[d,u]=g.useState(void 0),[,h]=g.useState(0),p=g.useCallback(w=>{if(s.current=w,!w){for(const T of i.current)T();i.current.length=0;return}const b=e.modules||[];o.current||(o.current=new pA(()=>h(T=>T+1),e.componentWrappingElement,e.maxComponentCreationTimeMs),i.current.push(()=>{o.current?.destroy(),o.current=null}));const S=py(e.gridOptions,e,Object.keys(e).filter(T=>!bv.has(T))),y=()=>{if(c.current){const T=()=>a.current?.shouldQueueUpdates()?void 0:n.current.shift();let M=T();for(;M;)M(),M=T()}},x=new JA(y);a.current=x;const F=new qA,R={providedBeanInstances:{frameworkCompWrapper:new XA(o.current,S),renderStatus:F},modules:b,frameworkOverrides:x,setThemeOnGridDiv:!0},E=T=>{u(T),T.createBean(F),i.current.push(()=>{T.destroy()}),T.getBean("ctrlsSvc").whenReady({addDestroyFunc:M=>{i.current.push(M)}},()=>{if(T.isDestroyed())return;const M=t.current;M&&e.passGridApi?.(M)})},D=T=>{T.getBean("ctrlsSvc").whenReady({addDestroyFunc:M=>{i.current.push(M)}},()=>{for(const M of n.current)M();n.current.length=0,c.current=!0})},P=new c4;S.gridId??(S.gridId=l.current),t.current=P.create(w,S,E,D,R),i.current.push(()=>{t.current=void 0}),t.current&&(l.current=t.current.getGridId())},[]),f=g.useMemo(()=>({height:"100%",...e.containerStyle||{}}),[e.containerStyle]),C=g.useCallback(w=>{c.current&&!a.current?.shouldQueueUpdates()?w():n.current.push(w)},[]);g.useEffect(()=>{const w=ZA(r.current,e);r.current=e,C(()=>{t.current&&fy(w,t.current)})},[e]);const v=!g.useSyncExternalStore||ra(e,"renderingMode")==="legacy"?"legacy":"default";return g.createElement("div",{style:f,className:e.className,ref:p},g.createElement(hv.Provider,{value:v},d&&!d.isDestroyed()?g.createElement($A,{key:d.instanceId,context:d}):null,o.current?.getPortals()??null))};function ZA(e,t){const s={};for(const o of Object.keys(t)){if(bv.has(o)){YA.has(o)&&z(274,{prop:o});continue}const i=t[o];e[o]!==i&&(s[o]=i)}return s}var XA=class extends p4{constructor(e,t){super(),this.parent=e,this.gridOptions=t}createWrapper(e,t){const s=this.gridOptions;if(ra(s,"reactiveCustomComponents")){const r=(a=>{switch(a){case"filter":return ra(s,"enableFilterHandlers")?oA:sA;case"floatingFilterComponent":return ra(s,"enableFilterHandlers")?rA:nA;case"dateComponent":return eA;case"dragAndDropImageComponent":return tA;case"loadingOverlayComponent":return lA;case"noRowsOverlayComponent":return dA;case"statusPanel":return uA;case"toolPanel":return hA;case"menuItem":return cA;case"cellRenderer":return Jk;case"innerHeaderComponent":return aA}})(t.name);if(r)return new r(e,this.parent,t)}else switch(t.name){case"filter":case"floatingFilterComponent":case"dateComponent":case"dragAndDropImageComponent":case"loadingOverlayComponent":case"noRowsOverlayComponent":case"statusPanel":case"toolPanel":case"menuItem":case"cellRenderer":eh();break}const i=!t.cellRenderer&&t.name!=="toolPanel";return new mv(e,this.parent,t,i)}},QA=g.forwardRef((e,t)=>{const s=g.useContext(Ct),{registry:o,context:i,gos:n,rowModel:r}=s,[a,l]=g.useState(()=>new Qt),[c,d]=g.useState(()=>new Qt),[u,h]=g.useState(),[p,f]=g.useState(),C=g.useRef(),v=g.useRef(null),w=g.useRef(),b=g.useMemo(()=>$S(e.api.getGridId(),u?.rowModelType??"clientSide"),[e]),S=g.useMemo(()=>a.toString()+" ag-details-row",[a]),y=g.useMemo(()=>c.toString()+" ag-details-grid",[c]);t&&g.useImperativeHandle(t,()=>({refresh(){return C.current?.refresh()??!1}})),e.template&&z(230);const x=g.useCallback(R=>{if(v.current=R,!R||i.isDestroyed()){C.current=i.destroyBean(C.current),w.current?.();return}const E={toggleCss:(P,T)=>l(M=>M.setClass(P,T)),toggleDetailGridCss:(P,T)=>d(M=>M.setClass(P,T)),setDetailGrid:P=>h(P),setRowData:P=>f(P),getGui:()=>v.current},D=o.createDynamicBean("detailCellRendererCtrl",!0);if(D&&(i.createBean(D),D.init(E,e),C.current=D,n.get("detailRowAutoHeight"))){const P=()=>{if(v.current==null)return;const T=v.current.clientHeight;T!=null&&T>0&&setTimeout(()=>{e.node.setRowHeight(T),(Qe(n)||_o(n))&&r.onRowHeightChanged()},0)};w.current=Bs(s,R,P),P()}},[]),F=g.useCallback(R=>{C.current?.registerDetailWithMaster(R)},[]);return g.createElement("div",{className:S,ref:x},u&&g.createElement(Sv,{className:y,...u,modules:b,rowData:p,passGridApi:F}))}),JA=class extends Km{constructor(e){super("react"),this.processQueuedUpdates=e,this.queueUpdates=!1,this.renderingEngine="react",this.frameworkComponents={agGroupCellRenderer:lp,agGroupRowRenderer:lp,agDetailCellRenderer:QA},this.wrapIncoming=(t,s)=>s==="ensureVisible"?qk(t):t()}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 $k()}},e8=class extends g.Component{constructor(){super(...arguments),this.apiListeners=[],this.setGridApi=e=>{this.api=e;for(const t of this.apiListeners)t(e)}}registerApiListener(e){this.apiListeners.push(e)}componentWillUnmount(){this.apiListeners.length=0}render(){return g.createElement(Sv,{...this.props,passGridApi:this.setGridApi})}},yv=(e=>(e.Dropdown="dropdown",e.Menu="menu",e))(yv||{}),Ot=(e=>(e.Click="click",e.Hover="hover",e.ContextMenu="contextMenu",e))(Ot||{}),Vi=(e=>(e.Item="item",e.Divider="divider",e.PlainText="plainText",e))(Vi||{});const t8=ue("flex items-center gap-2 align-middle","h-auto px-0 bg-transparent border-0"),s8=ue("z-[53] overflow-auto rounded bg-layer-0 text-primary shadow focus-visible:outline-none"),o8=ue("flex w-full cursor-pointer items-center gap-3","focus-visible:border-none focus-visible:outline-none","hover:bg-accent-primary-alpha px-3","dial-small h-[34px] rounded text-primary"),i8="opacity-75 !cursor-not-allowed",n8="text-error",r8="my-1 border-t border-hover border-secondary",Rn=4,th=({ariaLabel:e,className:t,size:s=24,onClose:o,...i})=>m.jsx(no,{"aria-label":e,className:oe("text-secondary hover:enabled:text-accent-primary",t,"w-auto h-auto"),onClick:o,icon:m.jsx(V.IconX,{size:s}),...i}),Rt=({children:e,menu:t,renderOverlay:s,trigger:o=[Ot.Click],placement:i,disabled:n=!1,open:r,defaultOpen:a=!1,onOpenChange:l,closable:c=!1,onClose:d,className:u,listClassName:h,outsidePressIgnoreRef:p,outsideClosable:f=!0,allowedPlacements:C,anchorToMouse:v=!1,matchReferenceWidth:w=!0,maxDropdownHeight:b})=>{const[S,y]=g.useState(a),x=r!==void 0,F=x?!!r:S,R=g.useRef(null),E=g.useCallback(_=>{x||y(_),l?.(_)},[x,l]),D=g.useId(),P=i===void 0,T=_=>"clientWidth"in _?_.clientWidth:_.getBoundingClientRect?.()?.width??0,{refs:M,floatingStyles:k,context:N}=Ie.useFloating({placement:i,open:F,onOpenChange:E,whileElementsMounted:Ie.autoUpdate,middleware:[Ie.offset({mainAxis:Rn,crossAxis:0}),P?Ie.autoPlacement({alignment:"start",crossAxis:!0,padding:Rn,allowedPlacements:C}):Ie.flip({padding:Rn}),Ie.shift({padding:Rn}),Ie.size({padding:Rn,apply({availableWidth:_,availableHeight:Fe,elements:ie}){const $=ie.floating,q=T(ie.reference);$.style.setProperty("--fui-available-height",`${Math.floor(Fe)}px`),$.style.setProperty("--reference-width",w?`${Math.round(q)}px`:"0px"),w?$.style.minWidth=`${Math.round(q)}px`:$.style.removeProperty("min-width"),$.style.maxWidth=`${Math.floor(_)}px`;const se=Math.floor(Fe);$.style.maxHeight=`${b?Math.min(se,b):se}px`}})]}),A=Ie.useClick(N,{enabled:o.includes(Ot.Click)&&!n}),W=Ie.useHover(N,{enabled:o.includes(Ot.Hover)&&!n,move:!1,restMs:40,delay:{open:80,close:80}}),U=Ie.useDismiss(N,{bubbles:!0,referencePress:!1,outsidePress:_=>{if(!f)return!1;const Fe=_.target;return!(p?.current&&Fe instanceof Node&&p.current.contains(Fe))}}),L=Ie.useRole(N,{role:"menu"}),{getReferenceProps:de,getFloatingProps:H}=Ie.useInteractions([A,W,U,L]),te=g.useCallback((_,Fe)=>{M.setPositionReference({getBoundingClientRect:()=>({width:0,height:0,x:_,y:Fe,top:Fe,left:_,right:_,bottom:Fe})})},[M]),Q=g.useCallback(_=>{!o.includes(Ot.ContextMenu)||n||(_.preventDefault(),v&&(te(_.clientX,_.clientY),R.current=document.elementFromPoint(_.clientX,_.clientY)),E(!0))},[v,n,E,te,o]),J=g.useCallback(_=>{!v||n||(o.includes(Ot.ContextMenu)&&F&&E(!1),te(_.clientX,_.clientY),R.current=document.elementFromPoint(_.clientX,_.clientY))},[v,n,te,F,o,E]);g.useEffect(()=>{n&&F&&E(!1)},[n,F,E]);const fe=g.useCallback(_=>Fe=>{_.disabled||(_.onClick?.({key:_.key,domEvent:Fe}),t?.onClick?.({key:_.key,domEvent:Fe}),E(!1))},[t,E]),xe=g.useMemo(()=>s?s():t?m.jsxs(m.Fragment,{children:[t.header&&m.jsx(m.Fragment,{children:typeof t.header=="function"?t.header():t.header}),m.jsx("div",{role:"none",className:"py-1","aria-label":"dropdown",children:t.items.map(_=>_.type===Vi.Divider?m.jsx("div",{role:"separator",className:r8},_.key):_.type===Vi.PlainText?m.jsx("div",{className:oe("px-3 py-2 text-secondary dial-caption",_.className),children:_.label},_.key):m.jsxs("button",{role:"menuitem",type:"button","aria-disabled":!!_.disabled,className:ue(o8,_.disabled&&i8,_.danger&&n8,_.className),disabled:_.disabled,onClick:fe(_),children:[_.icon&&m.jsx("span",{className:ue(_.danger&&"text-error",_.disabled&&"text-secondary"),children:m.jsx(Ye,{icon:_.icon})}),m.jsx("span",{className:ue("flex-1 truncate text-left",_.danger&&"text-error",_.disabled&&"text-secondary"),"aria-labelledby":"item-text",children:_.label})]},_.key))}),t.footer&&m.jsx(m.Fragment,{children:typeof t.footer=="function"?t.footer():t.footer})]}):null,[fe,t,s]),ne=de({onContextMenu:Q,onMouseDown:J});return g.useEffect(()=>{if(!F)return;const _=M.reference.current;let Fe=null;if(_ instanceof Element?Fe=_:R.current instanceof Element&&(Fe=R.current),!Fe)return;const ie=new IntersectionObserver(([$])=>{$.isIntersecting||E(!1)},{root:null,threshold:0});return ie.observe(Fe),()=>ie.disconnect()},[F,M.reference,E]),m.jsxs(m.Fragment,{children:[m.jsx("span",{ref:M.setReference,className:ue(t8,n&&"!cursor-not-allowed opacity-75",u),"aria-haspopup":"menu","aria-expanded":F,"aria-controls":D,...ne,children:e}),F&&m.jsx(Ie.FloatingPortal,{children:m.jsx(Ie.FloatingFocusManager,{context:N,modal:!1,initialFocus:-1,returnFocus:!0,children:m.jsxs("div",{id:D,ref:M.setFloating,style:k,className:ue(s8,!w&&"w-max",h),...H(),children:[c&&m.jsx("div",{className:"flex items-center justify-between px-2 pt-2",children:m.jsx(th,{ariaLabel:"Close dropdown",onClose:_=>{d?.(_),E(!1)}})}),xe]})})})]})},a8="h-full w-full",gp=".ag-checkbox-input",Wc={accentColor:"var(--controls-bg-accent, #5C8DEA)",backgroundColor:"var(--bg-layer-3, #222932)",oddRowBackgroundColor:"var(--bg-layer-2, #141A23)",selectedRowBackgroundColor:"var(--bg-accent-primary-alpha, #74A4FF26)",borderColor:"var(--bg-layer-4, #333942)",rowBorder:"1px solid var(--stroke-tertiary, #090D13)",rowHoverColor:"var(--bg-accent-primary-alpha, #74A4FF26)",borderRadius:3,browserColorScheme:"dark",chromeBackgroundColor:"var(--bg-layer-1, #090D13)",foregroundColor:"var(--text-primary, #F3F4F6)",headerFontSize:14,headerFontWeight:600,headerTextColor:"var(--text-secondary, #7F8792)",spacing:4,wrapperBorderRadius:3,fontSize:14,fontFamily:{googleFont:"var(--theme-font, var(--font-inter))"}},_c=40;var vo=(e=>(e.API="api",e.ROW_DATA_CHANGED="rowDataChanged",e.CHECKBOX_SELECTED="checkboxSelected",e))(vo||{});const l8=(e,t,s,o,i)=>{const n=typeof e=="string"?e.toLowerCase():e,r=typeof t=="string"?t.toLowerCase():t;return n===r?0:n?r?n>r?1:-1:i?1:-1:i?-1:1};var Wn=(e=>(e.MULTIPLE="MULTIPLE",e.SINGLE="SINGLE",e))(Wn||{});const xv="en-US",Rv={year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"},c8="text-primary",jc=40,Fv={minWidth:jc,width:jc,maxWidth:jc},d8={cellClass:"ag-grid-no-checkbox",...Fv},u8={...Fv};function h8(e,t){let s=null;return(...o)=>{s&&clearTimeout(s),s=setTimeout(()=>e(...o),t)}}Uk({testIdAttribute:"dataQA"});Mf.registerModules([zk]);const sh=({columnDefs:e,rowData:t,additionalGridOptions:s,getContextMenuItems:o,className:i,ariaLabel:n="Data grid",wrapCustomCellRenderers:r=!0,disabledRowIds:a,selectedRowIds:l,selectionOnHover:c=!0,onSelectionChange:d,onGridApiChange:u,getRowId:h=R=>String(R.id??JSON.stringify(R)),alternateOddRowColors:p=!1,filterPlaceholder:f="Enter value",emptyStateIcon:C,emptyStateTitle:v="No results found",emptyStateDescription:w="Sorry, we couldn't find any results for your search.",loading:b=!1,wrapperBorder:S=!0,withoutHeaderBorders:y=!1,allowDisabledContextMenu:x=!1,selectionMode:F})=>{const[R,E]=g.useState(_c),[D,P]=g.useState(),T=g.useId(),M=g.useRef(new Set),k=g.useRef(void 0),N=g.useMemo(()=>({...Wc,oddRowBackgroundColor:p?Wc.oddRowBackgroundColor:Wc.backgroundColor,wrapperBorder:S}),[p,S]),A=g.useCallback(q=>{q.api.sizeColumnsToFit(),E(_c)},[]),W=g.useCallback(q=>{if(q.data){const se=h(q.data),G=a?.has(se)??!1,pe=G&&!x,le=q.value==null?"":String(q.value),re=o?.(q.data)??[];return m.jsx(Rt,{trigger:[Ot.ContextMenu],menu:{items:re},anchorToMouse:!0,matchReferenceWidth:!0,className:"w-full",disabled:pe,children:m.jsx("span",{className:"block min-w-0 h-full max-w-full",children:m.jsx(ut,{text:le,className:"max-w-full h-full",hideTooltip:G})})})}},[o,a,h,x]),U=g.useCallback(q=>q===vo.API||q===vo.ROW_DATA_CHANGED,[]),L=g.useCallback(q=>{if(!D)return;const G=(q.selectedNodes||[]).map(le=>le.data),pe=new Set(G.map(h));M.current=pe,k.current=q.source,U(q.source)||d?.(pe,G)},[D,h,U,d]),de=g.useMemo(()=>h8(q=>L?.(q),100),[L]),H=g.useCallback(q=>{if(!q.data)return null;const se=h(q.data),G=q.node.isSelected(),pe=a?.has(se),le=`row-select-${se}`;return m.jsx("div",{className:"h-6 w-6 flex items-center justify-center",children:m.jsx(Xd,{className:"w-[18px] h-[18px]",inputId:le,checked:G,disabled:pe,name:"gridradiobutton",value:"selected",onChange:()=>{pe||(q.node.setSelected(!0,!0,vo.CHECKBOX_SELECTED),q.api.refreshCells({columns:[q.column?.getColId()]}))}})})},[h,a]),te=g.useCallback(q=>{const se="dial-row-select",G="dial-row-select-visible";return q?se:`${se} ${G}`},[]),Q=g.useMemo(()=>{if(F===Wn.SINGLE)return{...d8,cellRenderer:H};if(F===Wn.MULTIPLE)return{...u8,headerClass:()=>te(c),cellClass:q=>{const se=q.data?h(q.data):null;let G=te(c);return se&&a?.has(se)&&(G+=" opacity-50 pointer-events-none"),G}}},[a,h,H,F,c,te]),J=g.useCallback(q=>{const se=typeof r=="function"?r(q):!!r;if(!q.cellRenderer)return{...q,cellRenderer:W};if(!se)return q;const G=q.cellRenderer;return{...q,cellRenderer:le=>{const re=le.data?o?.(le.data)??[]:[];let ve=null;if(typeof G=="function"){const me=G;ve=m.jsx(me,{...le})}else ve=W(le);const Re=le.data?h(le.data):null,Oe=Re?a?.has(Re):!1;return m.jsx(Rt,{trigger:[Ot.ContextMenu],menu:{items:re},anchorToMouse:!0,matchReferenceWidth:!0,className:ue("w-full h-full",Oe&&"!cursor-not-allowed opacity-75"),disabled:Oe&&!x,children:m.jsx("span",{className:"block min-w-0 max-w-full flex-1",children:ve})})}}},[a,o,h,W,r,x]),fe=g.useMemo(()=>r?(e??[]).map(J):e??[],[e,r,r?J:null]),xe=g.useMemo(()=>({minWidth:150,resizable:!0,sortable:!0,floatingFilter:!0,filter:"agTextColumnFilter",filterParams:{filterPlaceholder:f,buttons:["reset"]},comparator:l8.bind(void 0)}),[f]),ne=q=>{const se=document.querySelector(gp);se&&se.setAttribute("aria-description",id);const G=fe.map(pe=>({...pe,sort:void 0}));q.api.updateGridOptions({columnDefs:G,rowData:t}),q.api.sizeColumnsToFit(),P(q.api),s?.onGridReady?.(q),u?.(q.api)};g.useEffect(()=>{D&&D.redrawRows()},[D]);const _=g.useCallback(()=>m.jsx(cr,{title:v,description:w,containerClassName:"gap-3",titleClassName:"mt-2 !text-lg",icon:C||m.jsx(V.IconZoomCancel,{size:100,stroke:.5,className:"text-secondary"})}),[v,w,C]),Fe=g.useMemo(()=>{if(F)return{mode:F===Wn.SINGLE?"singleRow":"multiRow",isRowSelectable:q=>{const se=q.data?h(q.data):null;return se?!a?.has(se):!0}}},[a,h,F]);g.useEffect(()=>{D&&t&&M.current.size&&M.current.forEach(q=>{const se=D.getRowNode(q);se&&!se.isSelected()&&se.setSelected(!0,!1,vo.API)})},[D,t]),g.useEffect(()=>{D&&l&&(D.deselectAll("all",vo.API),l.forEach(q=>{const se=D.getRowNode(q);se&&!se.isSelected()&&se.setSelected(!0,!1,vo.API)}))},[D,l]);const ie=g.useCallback(q=>q.data?h(q.data):"",[h]),$=g.useCallback(()=>{document.querySelectorAll(`.ag-row ${gp}`).forEach(q=>{q.setAttribute("aria-description",id)})},[]);return g.useEffect(()=>{const q=U(k.current);if(D&&l?.size&&q){const se=Array.from(l)[0];if(se){const G=D.getRowNode(se);G&&D.ensureNodeVisible(G)}}},[D,U,l]),m.jsx("div",{className:ue(a8,i,F&&"with-selection-column",y&&"dial-without-header-borders"),"aria-label":n,role:"region","aria-busy":b,children:m.jsx("div",{className:"ag-theme-balham-dark h-full overflow-x-auto",role:"table","aria-describedby":T,children:m.jsx(e8,{rowModelType:"clientSide",headerHeight:_c,rowHeight:R,cellSelection:!1,theme:V3.withPart(w3).withParams({...N}),autoSizeStrategy:{type:"fitGridWidth"},columnDefs:fe,defaultColDef:xe,selectionColumnDef:Q,onGridSizeChanged:A,onGridReady:ne,loading:b,suppressCellFocus:!0,suppressDragLeaveHidesColumns:!0,noRowsOverlayComponent:_,rowData:t,rowSelection:Fe,onSelectionChanged:de,getRowId:ie,onRowDataUpdated:$,onBodyScroll:$,onFirstDataRendered:$,...s})})})};var ja=(e=>(e.Horizontal="horizontal",e.Vertical="vertical",e))(ja||{}),Ua=(e=>(e.Mobile="mobile",e.Tablet="tablet",e))(Ua||{});const Qr=({tab:e,active:t,invalid:s,className:o,horizontal:i,onClick:n})=>{const r=oe("rounded h-[38px] items-center flex flex-row border-transparent cursor-pointer dial-small leading-4 hover:text-accent-primary",{"border-b-2 px-4":i,"border-l-2 px-3":!i}),a=oe(r,{"bg-layer-4":i,"bg-layer-1 text-secondary pointer-events-none":e.disabled,"bg-accent-primary-alpha text-primary":t&&!e.disabled,"text-primary":!t&&!e.disabled,"border-b-accent-primary":t&&i&&!e.disabled,"border-l-accent-primary":t&&!i&&!e.disabled},o);return m.jsxs("button",{role:"tab",className:a,onClick:()=>n(e.id),disabled:e.disabled,children:[m.jsx(ut,{text:e.label,contentClassName:"max-w-[200px]",className:"max-w-[200px]"}),(s||e.invalid)&&m.jsx("div",{className:"text-error pl-1",children:m.jsx(V.IconExclamationCircle,{...Z})}),e.warning&&m.jsx("div",{className:"text-warning pl-1",children:m.jsx(V.IconAlertTriangle,{...Z})})]})},g8=12;var Qs=(e=>(e.Undefined="undefined",e.Mobile="mobile",e.Tablet="tablet",e.Desktop="desktop",e))(Qs||{});const pp=()=>typeof window<"u"&&window.innerWidth<640,Uc=()=>{if(typeof window>"u")return Qs.Undefined;const e=window.innerWidth;return e>=1024?Qs.Desktop:e<640?Qs.Mobile:Qs.Tablet},p8=()=>{const[e,t]=g.useState(()=>typeof window>"u"?Qs.Desktop:Uc());return g.useEffect(()=>{t(Uc());const s=()=>t(Uc());return window.addEventListener("resize",s),()=>window.removeEventListener("resize",s)},[]),e},Ev=({tabs:e,activeTab:t,onClick:s,orientation:o=ja.Horizontal,screenThreshold:i=Ua.Tablet,smallScreenContainerClassName:n,smallScreenDropdownItemClassName:r,desktopDropdownClassName:a,desktopTabClassName:l})=>{const[c,d]=g.useState(!1),[u,h]=g.useState(!1),[p,f]=g.useState(!1),C=p8(),v=C===Qs.Mobile||i===Ua.Tablet&&C===Qs.Tablet,w=o===ja.Horizontal,b=g.useRef(null),S=g.useRef(null),y=g.useRef(null),x=e.find(P=>P.id===t),F=g.useMemo(()=>ue("flex gap-2",w?"flex-row flex-nowrap overflow-x-auto":"flex-col flex-wrap w-full"),[w]),R=g.useCallback(()=>{const P=S.current;P&&f(P.scrollWidth>P.clientWidth)},[]),E=g.useCallback(()=>{const P=y.current,T=S.current;if(!P||!T)return;const M=P.getBoundingClientRect(),k=T.getBoundingClientRect();if(M.width===0||k.width===0)return;const N=g8;let A=T.scrollLeft;if(M.left<k.left+N)A-=k.left+N-M.left;else if(M.right>k.right-N)A+=M.right-(k.right-N);else return;const W=Math.max(0,T.scrollWidth-T.clientWidth);A=Math.max(0,Math.min(A,W)),A!==T.scrollLeft&&T.scrollTo({left:A,behavior:"smooth"})},[]),D=g.useCallback(P=>{s(P),P===t&&E()},[s,t,E]);return g.useEffect(()=>{R();const P=new ResizeObserver(()=>R()),T=S.current;return T&&P.observe(T),()=>P.disconnect()},[e,R]),g.useEffect(()=>{E()},[t,E]),v?m.jsx("div",{role:"tablist",className:oe("h-11 flex items-center bg-layer-3 px-4",n),children:m.jsx(Rt,{trigger:[Ot.Click],open:c,onOpenChange:d,placement:"bottom-start",allowedPlacements:["bottom-start","top-start"],renderOverlay:()=>e.map(P=>m.jsx(Qr,{tab:P,active:P.id===t,onClick:T=>{D(T),d(!1)},className:oe("w-full rounded-none h-11 items-center px-6",r)},P.id)),children:m.jsxs("div",{className:"flex gap-2 items-center h-11 cursor-pointer",children:[m.jsx(Qr,{tab:x,active:!0,onClick:D,className:"rounded-none bg-transparent border-l-0 border-b-0 h-full items-center px-0"},t),m.jsx(Ye,{icon:m.jsx(V.IconChevronDown,{size:mt.SM}),className:ue("text-primary transition-transform",c&&"rotate-180")})]})})}):m.jsxs("div",{ref:b,className:"flex w-full items-start",children:[m.jsx("div",{ref:S,role:"tablist",className:F,children:e.map(P=>m.jsx("div",{ref:t===P.id?y:void 0,className:"w-full",children:m.jsx(Qr,{tab:P,active:t===P.id,onClick:D,horizontal:w,className:oe("w-full",l)})},P.id))}),p&&m.jsx("div",{className:"flex items-center ml-2",children:m.jsx(Rt,{trigger:[Ot.Click],open:u,onOpenChange:h,placement:"bottom-end",renderOverlay:()=>e.map(P=>m.jsx(Qr,{tab:P,active:P.id===t,onClick:T=>{D(T),h(!1)},className:"w-full rounded-none h-8 items-center px-3 py-2"},P.id)),children:m.jsx(es,{iconBefore:m.jsx(V.IconDotsVertical,{size:Cs}),className:oe("w-8 h-8 flex items-center justify-center rounded border",u?"bg-layer-4 border-transparent":"border-primary",a)})})})]})},f8="w-full overflow-hidden",m8="flex flex-nowrap items-center gap-2 min-w-0 px-0 py-0 whitespace-nowrap",Dv="flex items-center gap-2 min-w-0 shrink-0 dial-small",C8="basis-[20%] flex-none",v8="flex-1 min-w-0",fp="inline-flex items-center gap-1 min-w-0 transition-colors",w8="text-secondary hover:text-accent-primary",b8="text-primary cursor-default",Pv="flex-none inline-flex items-center leading-none text-secondary",S8="items-center gap-1 min-w-0 transition-colors text-secondary hover:text-accent-primary",Tv=m.jsx(V.IconChevronRight,{size:mt.SM,"aria-hidden":"true"}),Tn=({label:e,href:t,onClick:s,disabled:o,isLast:i,separator:n=Tv,className:r,iconBefore:a,labelClassName:l,onBeforeNavigate:c,...d})=>{const u=async v=>{if(c&&!i&&!await c()){v.preventDefault();return}s&&s(v)},h=oe(Dv,i?v8:C8,r),p=(!!t||!!s)&&!i&&!o,f=p?oe(fp,w8):oe(fp,b8,o?"pointer-events-none opacity-75":""),C=typeof e=="string"?m.jsx(ut,{className:oe("cursor-pointer",l),text:e,id:"breadcrumb-item-content"}):m.jsx("span",{className:oe("flex-1 min-w-0 max-w-full truncate cursor-pointer max-w-[300px]",l),"aria-label":"breadcrumb-item-content",children:e});return m.jsxs("li",{...d,className:h,"aria-label":d["aria-label"]||"breadcrumb-item",children:[p?m.jsxs("a",{href:t,onClick:u,className:f,children:[a,C]}):m.jsxs("span",{className:f,"aria-current":i?"page":void 0,"aria-disabled":o?"true":void 0,children:[a,C]}),!i&&m.jsx("span",{className:Pv,"aria-label":"separator",children:n})]})},Mv=({pathItems:e,separator:t=Tv,ariaLabel:s="Breadcrumb",className:o,children:i,labelClassName:n,onBeforeNavigate:r})=>{const a=g.useMemo(()=>e?.length?e:g.Children.toArray(i).filter(g.isValidElement).map(d=>{const u=d.props,{labelClassName:h,isLast:p,separator:f,...C}=u;return C}),[e,i]),l=g.useCallback(async d=>{const u=parseInt(d.key,10),h=a[u];if(r&&!await r()){d.domEvent.preventDefault();return}h.onClick?h.onClick(d.domEvent):h.href&&(window.location.href=h.href)},[a,r]),c=g.useMemo(()=>{if(a.length===0)return null;if(a.length<=3)return a.map((C,v)=>g.createElement(Tn,{...C,key:`item-${v}`,isLast:v===a.length-1,separator:t,labelClassName:n,onBeforeNavigate:r}));const d=a.at(0),u=a.slice(1,-2),h=a.at(-2),p=a.at(-1);if(!d||!h||!p)return null;const f=u.map((C,v)=>({key:String(v+1),label:typeof C.label=="string"?C.label:`Item ${v+1}`,disabled:C.disabled}));return m.jsxs(m.Fragment,{children:[g.createElement(Tn,{...d,key:"item-0",separator:t,labelClassName:n,onBeforeNavigate:r}),m.jsxs("li",{className:oe(Dv),children:[m.jsx(Rt,{menu:{items:f,onClick:l},placement:"bottom-start",matchReferenceWidth:!1,children:m.jsx("button",{type:"button","aria-label":"More breadcrumbs",className:S8,children:m.jsx(V.IconDots,{size:mt.SM})})}),m.jsx("span",{className:Pv,children:t})]}),g.createElement(Tn,{...h,key:`item-${a.length-2}`,separator:t,labelClassName:n,onBeforeNavigate:r}),g.createElement(Tn,{...p,key:`item-${a.length-1}`,isLast:!0,separator:t,labelClassName:n,onBeforeNavigate:r})]})},[a,t,n,l,r]);return m.jsx("nav",{"aria-label":s,className:oe(f8,o),children:m.jsx("ol",{className:m8,children:c})})},oh=(e,t)=>({appearance:o,...i})=>m.jsx(es,{...i,variant:e,appearance:o||t}),Iv=(e,t)=>({variant:o,...i})=>m.jsx(es,{...i,variant:o||t,appearance:e}),Ss=oh(Ve.Primary,Me.Solid),xs=oh(Ve.Neutral,Me.Outlined),kv=oh(Ve.Error,Me.Outlined),y8=Iv(Me.Link,Ve.Primary),x8=Iv(Me.Ghost,Ve.Primary),Yi=(e,t)=>({appearance:o,...i})=>m.jsx(no,{...i,variant:e,appearance:o||t}),R8=(e,t)=>({variant:o,...i})=>m.jsx(no,{...i,variant:o||t,appearance:e}),F8=Yi(Ve.Primary,Me.Solid),E8=Yi(Ve.Neutral,Me.Outlined),Av=Yi(Ve.Error,Me.Outlined),D8=Yi(Ve.Secondary,Me.Ghost),P8=Yi(Ve.Tertiary,Me.Ghost),T8=Yi(Ve.Success,Me.Ghost),M8=R8(Me.Ghost,Ve.Primary),Lv=({iconClassName:e,label:t,...s})=>t?m.jsx(kv,{...s,label:t,appearance:Me.Ghost,iconBefore:m.jsx(V.IconTrashX,{...Z,className:e||""})}):m.jsx(Av,{...s,appearance:Me.Ghost,icon:m.jsx(V.IconTrashX,{...Z,className:e||""})}),I8=({className:e="",value:t,onChange:s,error:o,containerClassName:i,resize:n=!1,labelProps:r,caption:a,id:l,...c})=>{const d=oe("dial-textarea dial-input px-3 py-2",c.invalid&&"dial-input-error",c.disabled&&"dial-input-disable",n?"resize":"resize-none",e);return m.jsxs("div",{className:oe("flex flex-col gap-y-2",i),children:[r&&m.jsx(zo,{...r,htmlFor:l}),m.jsx("textarea",{id:l,value:t||"",className:d,onChange:u=>s?.(u.currentTarget.value),...c}),m.jsx(ks,{text:o}),!o&&m.jsx(ar,{text:a})]})},ih=({label:e,switchId:t,isOn:s=!1,disabled:o,onChange:i,caption:n})=>{const r=ue("flex w-[36px] h-[18px] cursor-pointer items-center gap-1 rounded-full p-0.5 transition-all duration-200",s?"flex-row-reverse":"flex-row",o?"pointer-events-none":"",o?s?"bg-controls-disable":"bg-layer-4":s?"bg-accent-primary":"bg-layer-4"),a=g.useCallback(l=>{l.stopPropagation(),i?.(!s)},[i,s]);return m.jsxs("div",{className:"flex flex-row items-start",role:"switch",children:[m.jsx("input",{type:"checkbox",onChange:a,id:t,disabled:o,className:"invisible w-0 h-0",checked:s}),m.jsx("label",{htmlFor:t,className:r,"aria-describedby":n&&"caption",children:m.jsx("span",{className:ue("size-3 rounded-full",o?"bg-controls-disable-accent":"bg-controls-enable-primary")})}),(e||n)&&m.jsxs("div",{className:"flex flex-col gap-1 ml-2",children:[e&&m.jsx("span",{className:ue("dial-small py-[1px]",o?"text-secondary":"text-primary"),"aria-label":"switch-title",children:e}),n&&m.jsx("span",{id:"caption",className:"dial-tiny text-secondary",children:n})]})]})};var Vt=(e=>(e.Sm="sm",e.Md="md",e.Lg="lg",e))(Vt||{});const k8="z-[52] flex items-center justify-center bg-blackout md:p-4",mp="divide-tertiary divide-y",A8="flex flex-row justify-between py-4 px-6 items-center",L8={[Vt.Sm]:"dial-sm-popup",[Vt.Md]:"dial-md-popup",[Vt.Lg]:"dial-lg-popup"},qo=({open:e=!1,header:t,portalId:s,className:o,overlayClassName:i,titleClassName:n,headerClassName:r,dividers:a=!0,dividerFooter:l=!0,children:c,footer:d,onClose:u,size:h=Vt.Md,hideClose:p=!1,closeOnOutsideClick:f=!0,preventKeyboardOnOpen:C=!1})=>{const v=g.useRef(null),{refs:w,context:b}=Ie.useFloating({open:e,onOpenChange:E=>{E||u?.(null)}}),S=Ie.useRole(b,{role:"dialog"}),y=Ie.useDismiss(b,{outsidePress:f}),{getFloatingProps:x}=Ie.useInteractions([S,y]);if(!e)return null;const F=typeof t=="string"?"dial-popup-heading":void 0,R=E=>E?typeof E=="string"?m.jsx("h3",{id:F,className:ue("flex-1 min-w-0 mr-3 truncate dial-h3 text-primary",n),children:m.jsx(St,{tooltip:E,children:E})}):E:m.jsx("span",{});return m.jsx(Ie.FloatingPortal,{id:s,children:m.jsx(Ie.FloatingOverlay,{className:ue(k8,i),children:m.jsx(Ie.FloatingFocusManager,{context:b,initialFocus:C?v:void 0,children:m.jsxs("div",{ref:w.setFloating,...x(),role:"dialog","aria-modal":"true","aria-labelledby":F,className:ue("dial-popup",L8[h],a&&mp,o),children:[C&&m.jsx("div",{ref:v,tabIndex:-1,"aria-hidden":!0,className:"absolute size-px -m-px overflow-hidden opacity-0 pointer-events-none"}),m.jsxs("div",{className:oe(A8,r),children:[R(t),!p&&m.jsx(th,{ariaLabel:"Close dialog",onClose:E=>u?.(E)})]}),m.jsx("div",{className:"flex-grow overflow-auto","aria-label":"popup-description",children:c}),l&&m.jsx("div",{className:mp}),d]})})})})};var zi=(e=>(e.Info="info",e.Danger="danger",e))(zi||{});const O8="flex justify-end gap-2 px-6 py-4",N8="text-secondary dial-small-150 px-6 py-4",H8="Cancel",G8="Ok",$c={[zi.Info]:{confirm:{variant:Ve.Primary,appearance:Me.Solid},cancel:{variant:Ve.Neutral,appearance:Me.Outlined}},[zi.Danger]:{container:"dial-danger-popup",confirm:{variant:Ve.Error,appearance:Me.Solid},cancel:{variant:Ve.Neutral,appearance:Me.Outlined}}},Ov=({header:e,description:t,descriptionClassName:s,open:o=!1,confirmLabel:i=G8,cancelLabel:n=H8,isLoading:r=!1,disableConfirmButton:a=!1,className:l,confirmClassName:c,onClose:d,onConfirm:u,onCancel:h,children:p,dividers:f=!1,variant:C=zi.Info,size:v=Vt.Sm,footer:w})=>{const b=r?null:m.jsxs("div",{className:O8,children:[m.jsx(xs,{label:n,onClick:()=>h?h():d?.()}),m.jsx(es,{variant:$c[C].confirm?.variant,appearance:$c[C].confirm?.appearance,className:c,label:i,disabled:a,onClick:()=>u()})]}),S=g.useCallback(()=>r?m.jsx("div",{className:"px-6 py-4 h-[120px]",children:m.jsx(lr,{size:50})}):p??(t?m.jsx("div",{className:ue(N8,s),children:t}):null),[p,t,r,s]);return m.jsx(qo,{open:o,header:e,className:ue($c[C].container,l),dividers:f,onClose:()=>d?.(),footer:w??b,size:v,children:S()})},Nv=({selectedItems:e,listClassName:t,listElementClassName:s,placeholder:o})=>e?.length?m.jsx("ul",{className:ue("flex-row items-center truncate flex-wrap","flex gap-x-2 gap-y-1",t),children:e?.map((i,n)=>m.jsx("li",{children:m.jsx(St,{tooltip:i,children:m.jsx(bo,{tag:i,className:ue([s])})})},`${i}_${n}`))}):o?m.jsx("span",{className:"text-secondary",children:o}):null,Cp=e=>Se.createElement("svg",{width:18,height:18,viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Se.createElement("path",{d:"M2.25 13.5V12C2.25 11.5858 2.58579 11.25 3 11.25C3.41421 11.25 3.75 11.5858 3.75 12V13.5C3.75 13.6989 3.82907 13.8896 3.96973 14.0303C4.11038 14.1709 4.30109 14.25 4.5 14.25H6C6.41421 14.25 6.75 14.5858 6.75 15C6.75 15.4142 6.41421 15.75 6 15.75H4.5C3.90326 15.75 3.33114 15.5128 2.90918 15.0908C2.48722 14.6689 2.25 14.0967 2.25 13.5ZM14.25 6V4.5C14.25 4.30109 14.1709 4.11038 14.0303 3.96973C13.8896 3.82907 13.6989 3.75 13.5 3.75H12C11.5858 3.75 11.25 3.41421 11.25 3C11.25 2.58579 11.5858 2.25 12 2.25H13.5C14.0967 2.25 14.6689 2.48722 15.0908 2.90918C15.5128 3.33114 15.75 3.90326 15.75 4.5V6C15.75 6.41421 15.4142 6.75 15 6.75C14.5858 6.75 14.25 6.41421 14.25 6Z",fill:"currentColor"})),Hv=({children:e,open:t,disabled:s=!1,selectedValue:o,valueClassName:i,inputClassName:n,onOpen:r,elementId:a,errorText:l,invalid:c,emptyValueText:d,placeholder:u})=>{const h=Array.isArray(o)&&o.length>0,p=typeof o=="string"&&!!o.trim(),f=h||p?o:u?void 0:d,C=s?void 0:r,v=()=>m.jsxs(m.Fragment,{children:[m.jsx("button",{type:"button",className:"w-full",onClick:C,"aria-label":"open-popup",id:a,children:m.jsxs("div",{className:ue("dial-input px-3 py-2 dial-input-field flex flex-row items-center w-full justify-between cursor-pointer",n,s&&"dial-input-disable",(l||c)&&"dial-input-error"),children:[m.jsx(St,{tooltip:f==null?void 0:String(f),children:f||!u?m.jsx("span",{className:i,children:f}):m.jsx("span",{className:"text-secondary",children:u})}),!s&&m.jsx("div",{className:"flex-shrink-0",children:m.jsx(Ye,{icon:m.jsx(Cp,{role:"img",width:Cs,height:Cs})})})]})}),m.jsx(ks,{text:l})]}),w=()=>m.jsx("div",{className:"w-full",onClick:C,children:m.jsxs("div",{className:ue("dial-input px-3 py-2 flex flex-row items-center w-full justify-between cursor-pointer",s&&"dial-input-disable"),children:[m.jsx(Nv,{placeholder:u,selectedItems:f}),!s&&m.jsx("div",{className:"ml-1",children:m.jsx(Ye,{icon:m.jsx(Cp,{role:"img",width:Cs,height:Cs})})})]})});return m.jsxs(m.Fragment,{children:[h?w():v(),t&&rr.createPortal(e,document.body)]})},B8=({label:e,htmlFor:t,disabled:s,selectedValue:o,radioButtons:i,customInputValue:n,valueClassName:r,inputClassName:a,emptyValueText:l,onClose:c,header:d,portalId:u,onApply:h,onCancel:p,cancelButtonTitle:f="Cancel",applyButtonTitle:C="Apply",isValid:v,selectedRadioValue:w,onChangeRadioField:b,id:S,size:y=Vt.Md})=>{const[x,F]=g.useState(!1),R=g.useCallback(()=>{s||F(!0)},[s]),E=g.useCallback(()=>{F(!1),c?.()},[c]),D=g.useCallback(()=>{p?.(),E()},[p,E]),P=g.useCallback(()=>{h(),E()},[h,E]);return m.jsxs("div",{className:"flex flex-col gap-2",children:[m.jsx(zo,{label:e,htmlFor:t}),m.jsx(Hv,{disabled:s,open:x,selectedValue:n??i.find(T=>T.id===o)?.name,valueClassName:r,inputClassName:ue(a,"py-2","px-3"),emptyValueText:l,onOpen:R,children:m.jsx(qo,{open:x,onClose:D,header:d,portalId:u,size:y,footer:m.jsxs("div",{className:"flex flex-row items-center justify-end gap-2 px-6 py-4",children:[m.jsx(xs,{label:f,onClick:D}),m.jsx(Ss,{label:C,onClick:P,disabled:!v})]}),children:m.jsx("div",{className:"px-6 py-4",children:m.jsx(va,{radioButtons:i,labelClassName:"dial-small",activeRadioButton:w,onChange:b,elementId:S,orientation:Io.Column})})})})]})},V8="Create",z8="Cancel",W8="flex items-center justify-end gap-2 px-6 py-3",_8=({header:e,open:t=!1,submitLabel:s=V8,cancelLabel:o=z8,isLoading:i=!1,disableSubmitButton:n=!1,className:r,submitClassName:a,onClose:l,onSubmit:c,onCancel:d,children:u,dividers:h=!0,size:p=Vt.Md,footer:f})=>{const C=i?null:m.jsxs("div",{className:W8,children:[m.jsx(xs,{label:o,onClick:()=>d?d():l?.()}),m.jsx(Ss,{className:a,label:s,disabled:n,onClick:()=>c()})]}),v=g.useCallback(()=>i?m.jsx("div",{className:"px-6 py-4 h-[120px]",children:m.jsx(lr,{size:50})}):u??null,[u,i]);return m.jsx(qo,{open:t,header:e,className:r,dividers:h,onClose:()=>l?.(),footer:f??C,size:p,children:v()})},j8=["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Backspace","Delete","Tab","Enter","Escape","Home","End","Insert"],U8=(e,t,s,o)=>{if((t==="number"||s!==void 0||o!==void 0)&&!j8.includes(e.key)&&!(e.ctrlKey||e.metaKey)&&!(e.key==="-"&&(e.currentTarget.selectionStart??0)===0&&!e.currentTarget.value.includes("-"))&&!(e.key==="."&&t==="number"&&!e.currentTarget.value.includes("."))){if(!/^[0-9]$/.test(e.key)){e.preventDefault();return}if(s!==void 0||o!==void 0){const n=e.currentTarget.value,r=e.currentTarget.selectionStart||0,a=n.slice(0,r)+e.key+n.slice(r),l=parseFloat(a);if(!isNaN(l)){if(s!==void 0&&l<+s){e.preventDefault();return}if(o!==void 0&&l>+o){e.preventDefault();return}}}}},$8="bg-layer-4 flex items-center justify-center enabled:text-secondary enabled:hover:text-accent-primary enabled:active:bg-controls-accent-primary-alpha-active enabled:hover:bg-accent-primary-alpha enabled:active:text-accent-primary",q8=({icon:e,onClick:t,disabled:s,size:o=wt.Standard})=>m.jsx("div",{className:ue("border-l border-tertiary",o===wt.Standard?"h-[40px] w-[44px]":"h-[24px] w-[32px]"),children:m.jsx(no,{className:ue($8,o===wt.Small&&"p-1"),icon:e,onClick:t,disabled:s,size:o})}),Zi=({labelProps:e,error:t,caption:s,id:o,containerClassName:i,...n})=>m.jsxs("div",{className:oe("flex flex-col gap-y-2",i),children:[e&&m.jsx(zo,{...e,htmlFor:o}),m.jsx(Gv,{id:o,...n}),m.jsx(ks,{text:t}),!t&&m.jsx(ar,{text:s})]}),Gv=({invalid:e,disabled:t,prefix:s,className:o,postfix:i,iconBefore:n,iconAfter:r,wrapperClassName:a,type:l,inputRef:c,value:d,min:u,onChange:h,max:p,inputButtonProps:f,...C})=>{const v=g.useRef(null),w=Ie.useMergeRefs([c,v]);g.useEffect(()=>{const F=v.current;if(!F)return;const R=E=>{E.preventDefault()};return F.addEventListener("wheel",R,{passive:!1}),()=>{F.removeEventListener("wheel",R)}},[]);const b=l==="number"||u!==void 0||p!==void 0,S=F=>{U8(F,l,u,p)},y=F=>{const R=F.currentTarget.value;if(b&&R!==""){const E=parseFloat(R);if(isNaN(E)&&R!=="-"&&R!=="."||!isNaN(E)&&(u!==void 0&&E<+u||p!==void 0&&E>+p))return}h?.(R||void 0)},x=()=>m.jsxs("div",{className:oe("dial-input flex flex-row items-center gap-x-2 justify-between py-2",e&&"dial-input-error",t&&"dial-input-disable",!s&&"pl-3",!f&&"pr-3",a),"aria-label":"input-container",children:[s&&m.jsx("div",{className:"border-r border-tertiary",children:m.jsx(Gv,{wrapperClassName:"!rounded-r-none",className:"truncate",value:s,disabled:!0,id:`${s}_textBefore`})}),m.jsx(Ye,{icon:n}),m.jsx("input",{ref:w,type:l,autoComplete:l==="password"?"new-password":"off",value:d??"",className:oe("border-0 bg-transparent w-full truncate",o),onChange:y,onKeyDown:S,min:u,disabled:t,max:p,...C}),i&&m.jsxs("p",{className:"text-secondary dial-small-text",children:[" ",i]}),m.jsx(Ye,{icon:r}),f&&m.jsx(q8,{...f,disabled:t})]});return t&&l!=="password"?m.jsx(St,{tooltip:d,children:x()}):x()},K8=/^0+\.(\d+)?$/,Y8=/^0+/,Z8=({onChange:e,...t})=>{const s=o=>!o||o==="-"?o:String(o)?.match(K8)?String(o)?.replace(Y8,"0"):Number(o);return m.jsx(Zi,{type:"number",onChange:o=>e?.(s(o)),...t})},X8=({onClick:e})=>m.jsx(V.IconEyeOff,{...Z,className:"text-primary",onClick:e,role:"button","aria-label":"hide"}),Q8=({onClick:e})=>m.jsx(V.IconEye,{...Z,className:"text-primary",onClick:e,role:"button","aria-label":"show"}),J8=({...e})=>{const[t,s]=g.useState(!1),o=g.useCallback(i=>{s(i)},[]);return m.jsx(Zi,{type:t?"text":"password",...e,iconAfter:e.disabled?null:t?m.jsx(X8,{onClick:()=>o(!1)}):m.jsx(Q8,{onClick:()=>o(!0)})})},eL={[wt.Small]:{className:"dial-tiny-text",wrapperClassName:"pl-2 py-0",containerClassName:"h-[24px]",iconSize:16,iconStroke:1},[wt.Standard]:{className:"dial-small-text",wrapperClassName:"",containerClassName:"",iconSize:20,iconStroke:1.5}},nh=({size:e=wt.Standard,placeholder:t="Search...",value:s,onChange:o,...i})=>{const[n,r]=g.useState(s||"");g.useEffect(()=>{r(s||"")},[s]);const a=g.useCallback(u=>{r(u||""),o?.(u||"")},[o]),l=eL[e],c=g.useCallback(()=>{a("")},[a]),d=g.useMemo(()=>{if(n)return{icon:m.jsx(V.IconX,{size:l.iconSize,"aria-label":"Clear search",role:"button"}),onClick:c,size:e}},[c,n,e,l.iconSize]);return m.jsx(Zi,{placeholder:t,iconBefore:m.jsx(V.IconSearch,{size:l.iconSize,stroke:l.iconStroke}),value:n,onChange:a,inputButtonProps:d,containerClassName:l.containerClassName,className:l.className,wrapperClassName:l.wrapperClassName,...i})},qc=8,tL=24,sL=({initialTags:e=[],label:t,required:s,elementId:o,placeholder:i,captionDescription:n,errorText:r,invalid:a,disabled:l,collapseTagOverflow:c=!1,onChange:d})=>{const u=g.useRef(null),h=g.useRef([]),p=g.useRef(null),[f,C]=g.useState(e),[v,w]=g.useState(""),[b,S]=g.useState(!1),[y,x]=g.useState(e.length),F=g.useCallback(k=>N=>{h.current[k]=N},[]),R=g.useCallback(()=>{if(!c)return;const k=u.current;if(!k)return;const N=k.offsetWidth;if(N===0)return;const A=p.current?.offsetWidth??0,W=N-tL-qc;let U=0,L=0;for(let de=0;de<f.length;de++){const H=h.current[de];if(!H)continue;const te=H.offsetWidth+qc;if(U+te>W)break;U+=te,L++}if(L<f.length&&L>0)for(;U+A>W&&L>0;){L--;const de=h.current[L]?.offsetWidth??0;U-=de+qc}x(L)},[c,f]),E=k=>{const N=k.trim().replace(/,$/,"");if(N&&!f.includes(N)){const A=[N,...f];C(A),d?.(A)}},D=k=>{(k.key===","||k.key==="Enter")&&(k.preventDefault(),E(v),w(""))},P=()=>{v.trim()&&(E(v),w(""))},T=k=>{const N=f.filter((A,W)=>W!==k);C(N),d?.(N)},M=()=>r?m.jsx(ks,{text:r}):n?m.jsx(ar,{text:n}):null;return g.useEffect(()=>{if(c)return;const k=new ResizeObserver(()=>{if(u.current){const N=u.current.scrollHeight>u.current.clientHeight+10;S(N)}});return u.current&&k.observe(u.current),()=>k.disconnect()},[f,c]),g.useEffect(()=>{if(!c){x(f.length);return}x(f.length);const k=new ResizeObserver(()=>{R()}),N=u.current;return N&&k.observe(N),R(),()=>k.disconnect()},[c,R,f]),g.useEffect(()=>{C(e)},[JSON.stringify(e)]),m.jsxs("div",{className:"flex flex-col gap-2 w-full",children:[m.jsx(zo,{label:t,required:s,htmlFor:o}),m.jsx("div",{className:ue("dial-input min-h-[38px] p-[6px]",a&&"dial-input-error",l&&"dial-input-disable"),children:m.jsxs("div",{ref:u,className:ue("flex gap-2 items-center relative",c?"flex-nowrap overflow-hidden w-full min-w-0":ue("flex-wrap",b?"flex-col-reverse":"flex-row")),children:[(c?f.slice(0,y):f).map((k,N)=>m.jsx(bo,{tag:k,remove:l?void 0:()=>T(N)},k+N)),c&&y<f.length&&m.jsx(St,{tooltip:f.slice(y).join(", "),triggerClassName:"inline-flex shrink-0 cursor-pointer",children:m.jsx(bo,{tag:`+${f.length-y}`})}),m.jsx("input",{type:"text",value:v,onChange:k=>w(k.target.value),onKeyDown:D,onBlur:P,className:ue("dial-input outline-none !border-none w-full flex-1 !p-1 !h-auto",c?"min-w-0":"min-w-[100px]"),placeholder:i??"",disabled:l}),c&&m.jsxs("div",{className:"absolute left-0 top-0 invisible pointer-events-none h-0 overflow-hidden whitespace-nowrap","aria-hidden":!0,children:[f.map((k,N)=>m.jsx("div",{ref:F(N),className:"inline-flex shrink-0",children:m.jsx(bo,{tag:k,remove:l?void 0:()=>T(N)})},`measure-${k}-${N}`)),m.jsx("div",{ref:p,className:"inline-flex shrink-0",children:m.jsx(bo,{tag:`+${f.length}`})})]})]})}),M()]})},oL="dial-input flex w-full items-center justify-between gap-2 dial-small cursor-pointer",iL="w-full rounded flex flex-col",Kc="flex w-full items-center justify-between gap-2 px-3 h-[34px] dial-small text-primary truncate hover:bg-accent-primary-alpha focus:bg-accent-primary-alpha focus:outline-none",nL="bg-accent-primary-alpha",rL="bg-accent-primary-alpha border-l border-accent-primary border-1",vp="opacity-75",aL=352,lL=m.jsx(V.IconChevronDown,{size:mt.SM}),Bv=({options:e,selectedValues:t,handleRemoveTag:s})=>m.jsx("div",{className:"flex flex-wrap w-full items-center gap-1",children:t.map(o=>{const i=e.find(r=>r.value===o)?.label??o,n=e.find(r=>r.value===o)?.icon;return m.jsx(bo,{tag:i,remove:r=>s?.(r,o),iconBefore:n?m.jsx(Ye,{icon:n}):null,className:"max-w-full"},o)})});var $a=(e=>(e.Sm="sm",e.Md="md",e))($a||{}),qa=(e=>(e.Primary="Primary",e.Secondary="Secondary",e))(qa||{});const Vv=({options:e,multiple:t=!1,elementId:s,value:o,defaultValue:i,variant:n=qa.Primary,size:r=$a.Md,prefix:a,customSelectedValue:l,placeholder:c="Select...",searchable:d=!1,searchPlaceholder:u,selectAll:h=!1,invalid:p,selectAllLabel:f="Select all",emptyStateTitle:C="No options available",emptyStateDescription:v,emptyStateIcon:w,disabled:b=!1,className:S,listClassName:y,closable:x=!1,header:F,footer:R,onClose:E,onChange:D,inlineSearch:P=!1,dismissRef:T,onFooterClick:M,open:k,onOpenChange:N,onInlineQueryChange:A})=>{const W=g.useId(),[U,L]=g.useState(!1),de=k!==void 0,H=de?!!k:U,te=g.useCallback(B=>{de||L(B),N?.(B)},[de,N]),[Q,J]=g.useState(P&&l||""),fe=g.useRef(null),xe=g.useCallback(B=>{B!==Q&&(J(B||""),A?.(B||""))},[A,Q]),ne=o!==void 0,[_,Fe]=g.useState(i),ie=ne?o:_,$=g.useMemo(()=>t?Array.isArray(ie)?ie:[]:typeof ie=="string"?[ie]:[],[ie,t]),q=g.useMemo(()=>{const B=Q.trim().toLowerCase();return B?e.filter(Ee=>Ee.label.toLowerCase().includes(B)):e},[e,Q]);g.useEffect(()=>{!H&&!P&&xe("")},[P,H,xe]),g.useEffect(()=>{P&&!H&&l&&xe(l||"")},[l,P,H,xe]);const se=g.useCallback(B=>{ne||Fe(B),D?.(B)},[ne,D]),G=g.useCallback(B=>{if(t){const Ee=new Set($);Ee.has(B)?Ee.delete(B):Ee.add(B),se(Array.from(Ee));return}if(se(B),P){const Ee=e.find(It=>It.value===B);Ee&&(xe(Ee.label),A?.(Ee.label))}te(!1)},[t,se,P,te,$,e,xe,A]),pe=g.useCallback((B,Ee)=>{if(B.stopPropagation(),!t){se("");return}const It=$.filter(Xi=>Xi!==Ee);se(It)},[t,$,se]),le=g.useMemo(()=>q.filter(B=>!B.disabled),[q]),re=g.useMemo(()=>le.filter(B=>$.includes(B.value)).length,[le,$]),ve=B=>{P&&!t&&!B&&G(Q),te(B)},Re=le.length>0&&re===le.length,Oe=re>0&&!Re,me=()=>{if(!(!t||le.length===0))if(Re){const B=new Set(le.map(It=>It.value)),Ee=$.filter(It=>!B.has(It));se(Ee)}else{const B=new Set($);le.forEach(Ee=>B.add(Ee.value)),se(Array.from(B))}},Pe=$.length>0;g.useEffect(()=>{H&&P&&!t&&!b&&requestAnimationFrame(()=>{const B=fe.current;if(!B)return;B.focus();const Ee=B.value?.length??0;B.setSelectionRange?.(Ee,Ee)})},[H,P,t,b]);const _e=!t&&Pe?$[0]:void 0,Ge=g.useMemo(()=>_e?e.find(B=>B.value===_e):void 0,[e,_e]),We=g.useCallback(()=>!t||$.length===0?null:m.jsx(Bv,{options:e,selectedValues:$,handleRemoveTag:pe}),[t,e,$,pe]),_t=g.useCallback(()=>t?Pe?We():m.jsx("span",{className:"text-secondary truncate",children:c}):Ge?m.jsxs(m.Fragment,{children:[Ge.icon&&m.jsx(Ye,{icon:Ge.icon}),m.jsx(ut,{text:a?`${a} ${Ge.label}`:Ge.label}),Ge?.description&&m.jsx("div",{className:"text-secondary dial-small",children:Ge.description})]}):l&&o?l:m.jsx("span",{className:"text-secondary truncate",children:c}),[Pe,t,l,a,o,c,We,Ge]);g.useImperativeHandle(T,()=>({dismiss:()=>{te(!1)}}));const jt=g.useCallback(()=>{xe($.length===1?Ge?.label??Q:"")},[Q,$.length,xe,Ge?.label]),as=g.useCallback(()=>{b||(te(!H),P&&!t&&(jt(),fe.current?.focus()))},[b,P,H,t,jt,te]);return m.jsx(Rt,{open:H,onOpenChange:ve,disabled:b,closable:x,onClose:E,placement:"bottom-start",allowedPlacements:["bottom-start","top-start"],maxDropdownHeight:d?null:aL,listClassName:y,renderOverlay:()=>m.jsxs("div",{id:`list-${s||W}`,role:"listbox","aria-multiselectable":t||void 0,className:iL,children:[F&&m.jsx(m.Fragment,{children:typeof F=="function"?F():F}),(d||x)&&e.length>8&&m.jsxs("div",{className:"flex items-center gap-2 px-2 pt-2",children:[d&&m.jsx(nh,{placeholder:u,onChange:xe,value:Q,id:`search-${s||W}`,containerClassName:"w-full"}),x&&m.jsx(es,{"aria-label":"Close select",className:"shrink-0",iconBefore:m.jsx(V.IconX,{size:mt.SM}),onClick:B=>{E?.(B),te(!1)}})]}),t&&h&&le.length>0&&m.jsx("div",{className:ue(Kc,"mt-2"),children:m.jsx(nd,{id:`${s||W}-selectAll`,label:f,checked:Re,indeterminate:Oe,onChange:me,ariaLabel:f})}),m.jsx("div",{className:ue("overflow-y-auto max-h-[352px]",P&&q.length===0?"":"py-1"),children:q.length===0?!P&&m.jsx("div",{className:"px-2 py-3",children:m.jsx(cr,{icon:w??m.jsx(V.IconClipboardX,{size:mt.LG,stroke:.5}),title:C,description:v})}):q.map(B=>{const Ee=$.includes(B.value);return t?m.jsxs("div",{role:"option","aria-selected":Ee,"aria-disabled":!!B.disabled,className:ue(Kc,Ee&&nL,B.disabled&&vp,"w-full"),children:[m.jsx(nd,{id:`${s||W}-${B.value}`,label:m.jsxs("span",{className:"flex w-full flex-1 pl-2 min-w-0 items-center gap-2 text-primary",children:[B.icon&&m.jsx(Ye,{icon:B.icon}),m.jsx("span",{className:"truncate",children:B.label})]}),checked:Ee,disabled:B.disabled,onChange:()=>!B.disabled&&G(B.value),ariaLabel:B.label}),B.description&&m.jsx("div",{className:"text-secondary dial-small",children:B.description})]},B.value):m.jsx("button",{role:"option",type:"button","aria-selected":Ee,"aria-disabled":!!B.disabled,disabled:B.disabled,className:ue(Kc,Ee&&rL,B.disabled&&vp),onClick:()=>!B.disabled&&G(B.value),children:m.jsxs("div",{className:"flex items-center gap-2 w-full",children:[B.icon&&m.jsx(Ye,{icon:B.icon}),m.jsx(ut,{text:B.label}),B.description&&m.jsx("div",{className:"text-secondary dial-small",children:B.description})]})},B.value)})}),R&&m.jsx("div",{onClick:B=>{M?.(B),M&&te(!1)},children:typeof R=="function"?R():R})]}),children:m.jsxs("div",{role:"button",tabIndex:0,"aria-roledescription":"button to open select list","aria-haspopup":"listbox","aria-expanded":H,"aria-controls":`list-${s||W}`,className:oe(oL,b&&"opacity-75 !cursor-not-allowed",r===$a.Sm?"min-h-[25px] px-1.5 py-1":"min-h-[38px] px-3 py-2",p&&"dial-input-error",n===qa.Secondary?"!bg-layer-4 !h-auto":"",S),onMouseDown:B=>{b||P&&!t&&(jt(),B.preventDefault())},onClick:()=>{as()},onKeyDown:B=>{(B.key===" "||B.code==="Space")&&(B.preventDefault(),as())},children:[P&&!t?m.jsx("div",{className:"flex min-w-0 items-center gap-2 text-primary flex-1",children:m.jsx("input",{id:`inline-${s||W}`,type:"text",placeholder:u??c,value:Q||"",onChange:B=>xe(B.currentTarget.value.trimStart()),onFocus:()=>!b&&te(!0),onMouseDown:B=>{jt(),B.stopPropagation()},onClick:B=>{B.stopPropagation()},onKeyDown:B=>{B.stopPropagation()},className:"bg-transparent outline-none w-full dial-small",ref:fe,disabled:b,"aria-disabled":b,autoComplete:"off"})}):m.jsx("div",{className:"flex w-full min-w-0 items-center gap-2 text-primary",children:_t()}),!P&&m.jsx(Ye,{icon:lL,className:ue("text-primary",H&&"rotate-180")})]})})},cL=({label:e,required:t,captionDescription:s,containerClassName:o,selectClassName:i,error:n,id:r,caption:a,readonly:l,value:c,defaultEmptyText:d,...u})=>{const h=g.useCallback(()=>{if(!c||Array.isArray(c)&&c.length===0)return d??"None";if(Array.isArray(c))return m.jsx(Bv,{options:u.options,selectedValues:c});{const p=u.options?.find(f=>f.value===c);return m.jsx("span",{"aria-readonly":!0,className:"text-primary",children:p?.label||c})}},[c,u.options,d]);return m.jsx(Qd,{id:r,label:e,required:t,description:a,error:n,captionDescription:s,className:o,readonly:l,value:h(),defaultEmptyText:d,children:m.jsx(Vv,{className:i,value:c,elementId:r,invalid:!!n,...u})})};function zv(e){let t=null;return()=>(t==null&&(t=e()),t)}function dL(e,t){return e.filter(s=>s!==t)}function uL(e,t){const s=new Set,o=n=>s.add(n);e.forEach(o),t.forEach(o);const i=[];return s.forEach(n=>i.push(n)),i}class hL{enter(t){const s=this.entered.length,o=i=>this.isNodeInDocument(i)&&(!i.contains||i.contains(t));return this.entered=uL(this.entered.filter(o),[t]),s===0&&this.entered.length>0}leave(t){const s=this.entered.length;return this.entered=dL(this.entered.filter(this.isNodeInDocument),t),s>0&&this.entered.length===0}reset(){this.entered=[]}constructor(t){this.entered=[],this.isNodeInDocument=t}}class gL{initializeExposedProperties(){Object.keys(this.config.exposeProperties).forEach(t=>{Object.defineProperty(this.item,t,{configurable:!0,enumerable:!0,get(){return console.warn(`Browser doesn't allow reading "${t}" until the drop event.`),null}})})}loadDataTransfer(t){if(t){const s={};Object.keys(this.config.exposeProperties).forEach(o=>{const i=this.config.exposeProperties[o];i!=null&&(s[o]={value:i(t,this.config.matchesTypes),configurable:!0,enumerable:!0})}),Object.defineProperties(this.item,s)}}canDrag(){return!0}beginDrag(){return this.item}isDragging(t,s){return s===t.getSourceId()}endDrag(){}constructor(t){this.config=t,this.item={},this.initializeExposedProperties()}}const rh="__NATIVE_FILE__",Wv="__NATIVE_URL__",_v="__NATIVE_TEXT__",jv="__NATIVE_HTML__",wp=Object.freeze(Object.defineProperty({__proto__:null,FILE:rh,HTML:jv,TEXT:_v,URL:Wv},Symbol.toStringTag,{value:"Module"}));function Yc(e,t,s){const o=t.reduce((i,n)=>i||e.getData(n),"");return o??s}const Ud={[rh]:{exposeProperties:{files:e=>Array.prototype.slice.call(e.files),items:e=>e.items,dataTransfer:e=>e},matchesTypes:["Files"]},[jv]:{exposeProperties:{html:(e,t)=>Yc(e,t,""),dataTransfer:e=>e},matchesTypes:["Html","text/html"]},[Wv]:{exposeProperties:{urls:(e,t)=>Yc(e,t,"").split(`
|
|
62
62
|
`),dataTransfer:e=>e},matchesTypes:["Url","text/uri-list"]},[_v]:{exposeProperties:{text:(e,t)=>Yc(e,t,""),dataTransfer:e=>e},matchesTypes:["Text","text/plain"]}};function pL(e,t){const s=Ud[e];if(!s)throw new Error(`native type ${e} has no configuration`);const o=new gL(s);return o.loadDataTransfer(t),o}function Zc(e){if(!e)return null;const t=Array.prototype.slice.call(e.types||[]);return Object.keys(Ud).filter(s=>{const o=Ud[s];return o?.matchesTypes?o.matchesTypes.some(i=>t.indexOf(i)>-1):!1})[0]||null}const fL=zv(()=>/firefox/i.test(navigator.userAgent)),Uv=zv(()=>!!window.safari);class bp{interpolate(t){const{xs:s,ys:o,c1s:i,c2s:n,c3s:r}=this;let a=s.length-1;if(t===s[a])return o[a];let l=0,c=r.length-1,d;for(;l<=c;){d=Math.floor(.5*(l+c));const p=s[d];if(p<t)l=d+1;else if(p>t)c=d-1;else return o[d]}a=Math.max(0,c);const u=t-s[a],h=u*u;return o[a]+i[a]*u+n[a]*h+r[a]*u*h}constructor(t,s){const{length:o}=t,i=[];for(let p=0;p<o;p++)i.push(p);i.sort((p,f)=>t[p]<t[f]?-1:1);const n=[],r=[];let a,l;for(let p=0;p<o-1;p++)a=t[p+1]-t[p],l=s[p+1]-s[p],n.push(a),r.push(l/a);const c=[r[0]];for(let p=0;p<n.length-1;p++){const f=r[p],C=r[p+1];if(f*C<=0)c.push(0);else{a=n[p];const v=n[p+1],w=a+v;c.push(3*w/((w+v)/f+(w+a)/C))}}c.push(r[r.length-1]);const d=[],u=[];let h;for(let p=0;p<c.length-1;p++){h=r[p];const f=c[p],C=1/n[p],v=f+c[p+1]-h-h;d.push((h-f-v)*C),u.push(v*C*C)}this.xs=t,this.ys=s,this.c1s=c,this.c2s=d,this.c3s=u}}const mL=1;function $v(e){const t=e.nodeType===mL?e:e.parentElement;if(!t)return null;const{top:s,left:o}=t.getBoundingClientRect();return{x:o,y:s}}function Jr(e){return{x:e.clientX,y:e.clientY}}function CL(e){var t;return e.nodeName==="IMG"&&(fL()||!(!((t=document.documentElement)===null||t===void 0)&&t.contains(e)))}function vL(e,t,s,o){let i=e?t.width:s,n=e?t.height:o;return Uv()&&e&&(n/=window.devicePixelRatio,i/=window.devicePixelRatio),{dragPreviewWidth:i,dragPreviewHeight:n}}function wL(e,t,s,o,i){const n=CL(t),a=$v(n?e:t),l={x:s.x-a.x,y:s.y-a.y},{offsetWidth:c,offsetHeight:d}=e,{anchorX:u,anchorY:h}=o,{dragPreviewWidth:p,dragPreviewHeight:f}=vL(n,t,c,d),C=()=>{let F=new bp([0,.5,1],[l.y,l.y/d*f,l.y+f-d]).interpolate(h);return Uv()&&n&&(F+=(window.devicePixelRatio-1)*f),F},v=()=>new bp([0,.5,1],[l.x,l.x/c*p,l.x+p-c]).interpolate(u),{offsetX:w,offsetY:b}=i,S=w===0||w,y=b===0||b;return{x:S?w:v(),y:y?b:C()}}class bL{get window(){if(this.globalContext)return this.globalContext;if(typeof window<"u")return window}get document(){var t;return!((t=this.globalContext)===null||t===void 0)&&t.document?this.globalContext.document:this.window?this.window.document:void 0}get rootElement(){var t;return((t=this.optionsArgs)===null||t===void 0?void 0:t.rootElement)||this.window}constructor(t,s){this.ownerDocument=null,this.globalContext=t,this.optionsArgs=s}}function SL(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}function Sp(e){for(var t=1;t<arguments.length;t++){var s=arguments[t]!=null?arguments[t]:{},o=Object.keys(s);typeof Object.getOwnPropertySymbols=="function"&&(o=o.concat(Object.getOwnPropertySymbols(s).filter(function(i){return Object.getOwnPropertyDescriptor(s,i).enumerable}))),o.forEach(function(i){SL(e,i,s[i])})}return e}class yL{profile(){var t,s;return{sourcePreviewNodes:this.sourcePreviewNodes.size,sourcePreviewNodeOptions:this.sourcePreviewNodeOptions.size,sourceNodeOptions:this.sourceNodeOptions.size,sourceNodes:this.sourceNodes.size,dragStartSourceIds:((t=this.dragStartSourceIds)===null||t===void 0?void 0:t.length)||0,dropTargetIds:this.dropTargetIds.length,dragEnterTargetIds:this.dragEnterTargetIds.length,dragOverTargetIds:((s=this.dragOverTargetIds)===null||s===void 0?void 0:s.length)||0}}get window(){return this.options.window}get document(){return this.options.document}get rootElement(){return this.options.rootElement}setup(){const t=this.rootElement;if(t!==void 0){if(t.__isReactDndBackendSetUp)throw new Error("Cannot have two HTML5 backends at the same time.");t.__isReactDndBackendSetUp=!0,this.addEventListeners(t)}}teardown(){const t=this.rootElement;if(t!==void 0&&(t.__isReactDndBackendSetUp=!1,this.removeEventListeners(this.rootElement),this.clearCurrentDragSourceNode(),this.asyncEndDragFrameId)){var s;(s=this.window)===null||s===void 0||s.cancelAnimationFrame(this.asyncEndDragFrameId)}}connectDragPreview(t,s,o){return this.sourcePreviewNodeOptions.set(t,o),this.sourcePreviewNodes.set(t,s),()=>{this.sourcePreviewNodes.delete(t),this.sourcePreviewNodeOptions.delete(t)}}connectDragSource(t,s,o){this.sourceNodes.set(t,s),this.sourceNodeOptions.set(t,o);const i=r=>this.handleDragStart(r,t),n=r=>this.handleSelectStart(r);return s.setAttribute("draggable","true"),s.addEventListener("dragstart",i),s.addEventListener("selectstart",n),()=>{this.sourceNodes.delete(t),this.sourceNodeOptions.delete(t),s.removeEventListener("dragstart",i),s.removeEventListener("selectstart",n),s.setAttribute("draggable","false")}}connectDropTarget(t,s){const o=r=>this.handleDragEnter(r,t),i=r=>this.handleDragOver(r,t),n=r=>this.handleDrop(r,t);return s.addEventListener("dragenter",o),s.addEventListener("dragover",i),s.addEventListener("drop",n),()=>{s.removeEventListener("dragenter",o),s.removeEventListener("dragover",i),s.removeEventListener("drop",n)}}addEventListeners(t){t.addEventListener&&(t.addEventListener("dragstart",this.handleTopDragStart),t.addEventListener("dragstart",this.handleTopDragStartCapture,!0),t.addEventListener("dragend",this.handleTopDragEndCapture,!0),t.addEventListener("dragenter",this.handleTopDragEnter),t.addEventListener("dragenter",this.handleTopDragEnterCapture,!0),t.addEventListener("dragleave",this.handleTopDragLeaveCapture,!0),t.addEventListener("dragover",this.handleTopDragOver),t.addEventListener("dragover",this.handleTopDragOverCapture,!0),t.addEventListener("drop",this.handleTopDrop),t.addEventListener("drop",this.handleTopDropCapture,!0))}removeEventListeners(t){t.removeEventListener&&(t.removeEventListener("dragstart",this.handleTopDragStart),t.removeEventListener("dragstart",this.handleTopDragStartCapture,!0),t.removeEventListener("dragend",this.handleTopDragEndCapture,!0),t.removeEventListener("dragenter",this.handleTopDragEnter),t.removeEventListener("dragenter",this.handleTopDragEnterCapture,!0),t.removeEventListener("dragleave",this.handleTopDragLeaveCapture,!0),t.removeEventListener("dragover",this.handleTopDragOver),t.removeEventListener("dragover",this.handleTopDragOverCapture,!0),t.removeEventListener("drop",this.handleTopDrop),t.removeEventListener("drop",this.handleTopDropCapture,!0))}getCurrentSourceNodeOptions(){const t=this.monitor.getSourceId(),s=this.sourceNodeOptions.get(t);return Sp({dropEffect:this.altKeyPressed?"copy":"move"},s||{})}getCurrentDropEffect(){return this.isDraggingNativeItem()?"copy":this.getCurrentSourceNodeOptions().dropEffect}getCurrentSourcePreviewNodeOptions(){const t=this.monitor.getSourceId(),s=this.sourcePreviewNodeOptions.get(t);return Sp({anchorX:.5,anchorY:.5,captureDraggingState:!1},s||{})}isDraggingNativeItem(){const t=this.monitor.getItemType();return Object.keys(wp).some(s=>wp[s]===t)}beginDragNativeItem(t,s){this.clearCurrentDragSourceNode(),this.currentNativeSource=pL(t,s),this.currentNativeHandle=this.registry.addSource(t,this.currentNativeSource),this.actions.beginDrag([this.currentNativeHandle])}setCurrentDragSourceNode(t){this.clearCurrentDragSourceNode(),this.currentDragSourceNode=t;const s=1e3;this.mouseMoveTimeoutTimer=setTimeout(()=>{var o;return(o=this.rootElement)===null||o===void 0?void 0:o.addEventListener("mousemove",this.endDragIfSourceWasRemovedFromDOM,!0)},s)}clearCurrentDragSourceNode(){if(this.currentDragSourceNode){if(this.currentDragSourceNode=null,this.rootElement){var t;(t=this.window)===null||t===void 0||t.clearTimeout(this.mouseMoveTimeoutTimer||void 0),this.rootElement.removeEventListener("mousemove",this.endDragIfSourceWasRemovedFromDOM,!0)}return this.mouseMoveTimeoutTimer=null,!0}return!1}handleDragStart(t,s){t.defaultPrevented||(this.dragStartSourceIds||(this.dragStartSourceIds=[]),this.dragStartSourceIds.unshift(s))}handleDragEnter(t,s){this.dragEnterTargetIds.unshift(s)}handleDragOver(t,s){this.dragOverTargetIds===null&&(this.dragOverTargetIds=[]),this.dragOverTargetIds.unshift(s)}handleDrop(t,s){this.dropTargetIds.unshift(s)}constructor(t,s,o){this.sourcePreviewNodes=new Map,this.sourcePreviewNodeOptions=new Map,this.sourceNodes=new Map,this.sourceNodeOptions=new Map,this.dragStartSourceIds=null,this.dropTargetIds=[],this.dragEnterTargetIds=[],this.currentNativeSource=null,this.currentNativeHandle=null,this.currentDragSourceNode=null,this.altKeyPressed=!1,this.mouseMoveTimeoutTimer=null,this.asyncEndDragFrameId=null,this.dragOverTargetIds=null,this.lastClientOffset=null,this.hoverRafId=null,this.getSourceClientOffset=i=>{const n=this.sourceNodes.get(i);return n&&$v(n)||null},this.endDragNativeItem=()=>{this.isDraggingNativeItem()&&(this.actions.endDrag(),this.currentNativeHandle&&this.registry.removeSource(this.currentNativeHandle),this.currentNativeHandle=null,this.currentNativeSource=null)},this.isNodeInDocument=i=>!!(i&&this.document&&this.document.body&&this.document.body.contains(i)),this.endDragIfSourceWasRemovedFromDOM=()=>{const i=this.currentDragSourceNode;i==null||this.isNodeInDocument(i)||(this.clearCurrentDragSourceNode()&&this.monitor.isDragging()&&this.actions.endDrag(),this.cancelHover())},this.scheduleHover=i=>{this.hoverRafId===null&&typeof requestAnimationFrame<"u"&&(this.hoverRafId=requestAnimationFrame(()=>{this.monitor.isDragging()&&this.actions.hover(i||[],{clientOffset:this.lastClientOffset}),this.hoverRafId=null}))},this.cancelHover=()=>{this.hoverRafId!==null&&typeof cancelAnimationFrame<"u"&&(cancelAnimationFrame(this.hoverRafId),this.hoverRafId=null)},this.handleTopDragStartCapture=()=>{this.clearCurrentDragSourceNode(),this.dragStartSourceIds=[]},this.handleTopDragStart=i=>{if(i.defaultPrevented)return;const{dragStartSourceIds:n}=this;this.dragStartSourceIds=null;const r=Jr(i);this.monitor.isDragging()&&(this.actions.endDrag(),this.cancelHover()),this.actions.beginDrag(n||[],{publishSource:!1,getSourceClientOffset:this.getSourceClientOffset,clientOffset:r});const{dataTransfer:a}=i,l=Zc(a);if(this.monitor.isDragging()){if(a&&typeof a.setDragImage=="function"){const d=this.monitor.getSourceId(),u=this.sourceNodes.get(d),h=this.sourcePreviewNodes.get(d)||u;if(h){const{anchorX:p,anchorY:f,offsetX:C,offsetY:v}=this.getCurrentSourcePreviewNodeOptions(),S=wL(u,h,r,{anchorX:p,anchorY:f},{offsetX:C,offsetY:v});a.setDragImage(h,S.x,S.y)}}try{a?.setData("application/json",{})}catch{}this.setCurrentDragSourceNode(i.target);const{captureDraggingState:c}=this.getCurrentSourcePreviewNodeOptions();c?this.actions.publishDragSource():setTimeout(()=>this.actions.publishDragSource(),0)}else if(l)this.beginDragNativeItem(l);else{if(a&&!a.types&&(i.target&&!i.target.hasAttribute||!i.target.hasAttribute("draggable")))return;i.preventDefault()}},this.handleTopDragEndCapture=()=>{this.clearCurrentDragSourceNode()&&this.monitor.isDragging()&&this.actions.endDrag(),this.cancelHover()},this.handleTopDragEnterCapture=i=>{if(this.dragEnterTargetIds=[],this.isDraggingNativeItem()){var n;(n=this.currentNativeSource)===null||n===void 0||n.loadDataTransfer(i.dataTransfer)}if(!this.enterLeaveCounter.enter(i.target)||this.monitor.isDragging())return;const{dataTransfer:a}=i,l=Zc(a);l&&this.beginDragNativeItem(l,a)},this.handleTopDragEnter=i=>{const{dragEnterTargetIds:n}=this;if(this.dragEnterTargetIds=[],!this.monitor.isDragging())return;this.altKeyPressed=i.altKey,n.length>0&&this.actions.hover(n,{clientOffset:Jr(i)}),n.some(a=>this.monitor.canDropOnTarget(a))&&(i.preventDefault(),i.dataTransfer&&(i.dataTransfer.dropEffect=this.getCurrentDropEffect()))},this.handleTopDragOverCapture=i=>{if(this.dragOverTargetIds=[],this.isDraggingNativeItem()){var n;(n=this.currentNativeSource)===null||n===void 0||n.loadDataTransfer(i.dataTransfer)}},this.handleTopDragOver=i=>{const{dragOverTargetIds:n}=this;if(this.dragOverTargetIds=[],!this.monitor.isDragging()){i.preventDefault(),i.dataTransfer&&(i.dataTransfer.dropEffect="none");return}this.altKeyPressed=i.altKey,this.lastClientOffset=Jr(i),this.scheduleHover(n),(n||[]).some(a=>this.monitor.canDropOnTarget(a))?(i.preventDefault(),i.dataTransfer&&(i.dataTransfer.dropEffect=this.getCurrentDropEffect())):this.isDraggingNativeItem()?i.preventDefault():(i.preventDefault(),i.dataTransfer&&(i.dataTransfer.dropEffect="none"))},this.handleTopDragLeaveCapture=i=>{this.isDraggingNativeItem()&&i.preventDefault(),this.enterLeaveCounter.leave(i.target)&&(this.isDraggingNativeItem()&&setTimeout(()=>this.endDragNativeItem(),0),this.cancelHover())},this.handleTopDropCapture=i=>{if(this.dropTargetIds=[],this.isDraggingNativeItem()){var n;i.preventDefault(),(n=this.currentNativeSource)===null||n===void 0||n.loadDataTransfer(i.dataTransfer)}else Zc(i.dataTransfer)&&i.preventDefault();this.enterLeaveCounter.reset()},this.handleTopDrop=i=>{const{dropTargetIds:n}=this;this.dropTargetIds=[],this.actions.hover(n,{clientOffset:Jr(i)}),this.actions.drop({dropEffect:this.getCurrentDropEffect()}),this.isDraggingNativeItem()?this.endDragNativeItem():this.monitor.isDragging()&&this.actions.endDrag(),this.cancelHover()},this.handleSelectStart=i=>{const n=i.target;typeof n.dragDrop=="function"&&(n.tagName==="INPUT"||n.tagName==="SELECT"||n.tagName==="TEXTAREA"||n.isContentEditable||(i.preventDefault(),n.dragDrop()))},this.options=new bL(s,o),this.actions=t.getActions(),this.monitor=t.getMonitor(),this.registry=t.getRegistry(),this.enterLeaveCounter=new hL(this.isNodeInDocument)}}const xL=function(t,s,o){return new yL(t,s,o)},RL=({onChange:e,emptyTextFirstLine:t,emptyTextSecondLine:s,emptyButtonLabel:o,acceptTypes:i,maxFilesCount:n,multiple:r,fileFormatError:a,fileCountError:l,fileSizeError:c,getIsFileFormatError:d,getIsFileSizeError:u})=>{const h=g.useRef(null),p=g.useRef(null),[f,C]=g.useState([]),[v,w]=g.useState(!1),[b,S]=g.useState(!1),y=g.useCallback(W=>{const U=W.target.files;if(U&&U.length>0){const L=Array.from(U),de=d?.(L),H=u?.(L);de?w(!0):H?S(!0):e(L)}},[d,u,e]),x=g.useCallback(W=>n&&W?.length>n,[n]),F=g.useMemo(()=>v||b||x(f),[v,b,x,f]),R=()=>{C([]),w(!1),S(!1)},E=g.useMemo(()=>v?m.jsx(ks,{text:a}):b?m.jsx(ks,{text:c}):x(f)?m.jsx(ks,{text:l}):null,[l,a,c,f,x,v,b]);g.useEffect(()=>{R()},[i]);const[{isOver:D,canDrop:P},T]=tf(()=>({accept:[rh],drop(W){const U=W.files;!d?.(U)&&!u?.(U)&&!x(U)&&e(U),R()},collect:W=>({isOver:W.isOver(),canDrop:W.canDrop()})}),[y]),M=W=>{(W.key==="Enter"||W.key==="Space")&&(W.preventDefault(),p.current?.click())},k=W=>{W?.preventDefault();const U=Array.from(W.dataTransfer?.items??[]);w(!!d?.(U)),S(!!u?.(U)),C(U)},N=W=>{W.target===W.currentTarget&&R()},A=ue("border border-dashed rounded w-full cursor-pointer relative h-full hover:border-hover",!P&&!F&&"border-primary",P&&(D?"border-accent-primary":"border-hover"),F&&"border-error");return T(h),m.jsxs(m.Fragment,{children:[m.jsxs("div",{className:A,ref:h,onDragOver:k,onDragLeave:N,children:[m.jsxs("label",{htmlFor:"file",tabIndex:0,onKeyDown:M,className:"flex flex-col items-center cursor-pointer h-full w-full text-secondary dial-tiny justify-center",children:[t&&m.jsx("p",{className:"mb-1",children:t}),s&&m.jsx("p",{className:"mb-0.5",children:s}),o&&m.jsx(Ss,{appearance:Me.Ghost,label:o,onClick:()=>p.current?.click()})]}),m.jsx("input",{multiple:r,id:"file",type:"file",ref:p,hidden:!0,accept:i,onChange:y})]}),m.jsx(m.Fragment,{children:E})]})},FL=({iconBefore:e,className:t,error:s,...o})=>{const i=o.invalid,n=()=>m.jsx("div",{className:"mr-2",children:i?m.jsx(V.IconExclamationCircle,{...Z,className:"text-error"}):e});return m.jsx(Zi,{...o,iconBefore:n(),containerClassName:"h-[40px] p-0",className:ue("rounded-r-none border-r-0",i&&"text-error",t)})},qv=e=>{const{files:t,iconBeforeInput:s,dynamicIcon:o,onChange:i,isInvalid:n,errorText:r,removeButtonAriaLabel:a}=e,l=(u,h)=>{u.stopPropagation(),i(t?.filter(p=>p.name!==h)||[])},c=u=>m.jsx(Lv,{"aria-label":a,onClick:h=>l(h,u)}),d=u=>{i(u)};return!t||t.length===0?m.jsx(Xb,{backend:xL,children:m.jsx(RL,{...e,onChange:d})}):m.jsx("div",{className:"flex-1 min-h-0 border border-solid border-primary rounded p-2 overflow-y-auto",children:t&&t.length>0&&m.jsx("div",{className:"flex flex-col gap-y-1",children:t.map((u,h)=>m.jsx(FL,{id:u.name,value:u.name,iconAfter:c(u.name),iconBefore:s||o?.(u.name),invalid:n?.(u),error:r},u.name+h))})})},EL=({onChange:e,fieldTitle:t,elementId:s,files:o,maxFilesCount:i,maxFileSize:n,fileFormatError:r,fileCountError:a,fileSizeError:l,multiple:c=!0,acceptTypes:d,deleteAllButtonLabel:u,addButtonLabel:h,additionalActionButtons:p,...f})=>{const C=g.useRef(null),v=()=>C.current?.click(),w=()=>{e([])},b=g.useCallback(x=>x?.some(F=>!(d==="/"||d?.toLowerCase()?.includes(F?.type?.toLowerCase()))),[d]),S=g.useCallback(x=>{if(!n)return!1;const F=n*(1024*1024);return x?.some(R=>{const E=R.size;return!!E&&E>F})},[n]),y=g.useCallback(x=>{const F=x.target.files;if(F&&F.length>0){const R=Array.from(F),E=b(R),D=S(R);!E&&!D&&e([...o||[],...R])}},[b,S,e,o]);return m.jsxs("div",{className:"h-full flex flex-col",children:[m.jsxs("div",{className:"flex justify-between items-center pb-1 min-h-[42px]",children:[m.jsx(zo,{label:`${t}: ${c?o?.length||0:""}`,htmlFor:s}),c&&!!o?.length&&m.jsxs("div",{className:"flex flex-row items-center gap-x-2",children:[m.jsx(xs,{label:u,iconBefore:m.jsx(V.IconTrashX,{...Z}),onClick:w}),(i?i>o?.length:!0)&&m.jsx(Ss,{appearance:Me.Ghost,iconBefore:m.jsx(V.IconPlus,{...Z}),label:h,onClick:v}),p]})]}),o&&o.length>0&&m.jsx("input",{id:"file",type:"file",multiple:c,ref:C,hidden:!0,accept:d,onChange:y}),m.jsx(qv,{files:o,onChange:e,acceptTypes:d,maxFilesCount:i,multiple:c,fileFormatError:r,fileCountError:a,fileSizeError:l,getIsFileFormatError:b,getIsFileSizeError:S,...f})]})},DL=m.jsx(V.IconChevronDown,{size:mt.SM}),PL=m.jsx(V.IconChevronUp,{size:mt.SM}),$d=({variant:e,appearance:t,items:s,...o})=>{const[i,n]=g.useState(!1),r=g.useMemo(()=>i?PL:DL,[i]);return m.jsx("div",{children:m.jsx(Rt,{menu:{items:s},onOpenChange:a=>n(a),children:m.jsx(es,{...o,iconAfter:r,variant:e||Ve.Primary,appearance:t||Me.Solid})})})};var bi=(e=>(e.MyFiles="my_files",e.Shared="shared",e.Organization="organization",e))(bi||{}),K=(e=>(e.AddSibling="addSibling",e.AddChild="addChild",e.Duplicate="duplicate",e.Copy="copy",e.Move="move",e.Download="download",e.Delete="delete",e.Rename="rename",e.Info="info",e.Unshare="unshare",e.RemoveAccess="removeAccess",e.ManagePermissions="managePermissions",e.Preview="preview",e))(K||{}),it=(e=>(e.Replace="replace",e.Duplicate="duplicate",e.Cancel="cancel",e))(it||{}),Lt=(e=>(e.ReplaceAll="replaceAll",e.DuplicateAll="duplicateAll",e.DecideForEach="decideForEach",e))(Lt||{}),nt=(e=>(e.Copy="copy",e.Move="move",e))(nt||{}),ki=(e=>(e.Tree="tree",e.Grid="grid",e))(ki||{}),rt=(e=>(e.Name="name",e.UpdatedAt="updatedAt",e.Size="size",e.Author="author",e.Owner="owner",e.Path="path",e.Actions="__actions",e.Version="version",e))(rt||{});const TL="w-full h-full grid grid-rows-[auto_1fr] gap-5 p-6 overflow-hidden min-w-0 bg-layer-1",yp="w-full text-secondary flex items-center gap-2",ML="flex min-h-0 min-w-0 h-full gap-4 overflow-hidden",IL="flex flex-col flex-1 min-h-0 min-w-0 h-full gap-4",kL="h-full rounded bg-layer-3 text-secondary min-w-0",AL="flex-1 w-full rounded text-secondary overflow-auto min-h-0 min-w-0",LL="opacity-0 pointer-events-none group-hover/grid-row:opacity-100 group-hover/grid-row:pointer-events-auto",OL=280,NL="Files",Js=20,HL="Files",Xc=".dial_folder",GL=280,BL=460,Qc=44,VL=56,zL=800,WL=[rt.Name,rt.UpdatedAt,rt.Size,rt.Author,rt.Actions];var be=(e=>(e.ITEM="item",e.FOLDER="folder",e))(be||{}),ah=(e=>(e.FILE="FILE",e.PROMPT="PROMPT",e.CONVERSATION="CONVERSATION",e.APPLICATION="APPLICATION",e.TOOLSET="TOOL_SET",e))(ah||{}),Ko=(e=>(e.READ="READ",e.WRITE="WRITE",e.SHARE="SHARE",e))(Ko||{});const Vo=(e,t)=>{if(!(!e||!e.length||!t))for(const s of e){if(s.path===t)return s;const o=Vo(s.items,t);if(o)return o}},xp=(e,t)=>{if(!e?.length)return;if(!t)return e[0];const s=Vo(e,t);if(s&&s.nodeType===be.FOLDER)return s;const o=t.split("/").filter(Boolean);if(o.length<=1)return e[0];const i="/"+o.slice(0,o.length-1).join("/");return Vo(e,i)??e[0]},Ai=e=>(e??"").toLowerCase(),_L=e=>Ai(e).replace(/^\./,""),jL=e=>{if(!e)return[];const t=[],s=o=>{const i=o.items??[];for(const n of i)t.push(n),n.nodeType===be.FOLDER&&s(n)};return s(e),t},Kv=e=>(e.name??e.path.split("/").pop()??"").startsWith("."),nr=e=>{if(!e)return"0 bytes";const t=1024,s=t*1024;return e>=s?`${(e/s).toFixed(1)} MB`:e>=t?`${(e/t).toFixed(0)} KB`:`${e} bytes`},UL=(e,t="en-US",s={year:"numeric",month:"short",day:"2-digit"})=>{if(!e)return"";try{return new Intl.DateTimeFormat(t,s).format(new Date(e))}catch{return e}};function Yv(e,t,s){if(!e||e.includes("*/*"))return!0;const o=t.toLowerCase(),i=s&&s.includes(".")?`.${s.split(".").at(-1).toLowerCase()}`:void 0;return e.some(n=>{const r=n.toLowerCase();if(r.startsWith("."))return i===r;if(r.endsWith("/*")){const a=r.slice(0,-1);return o.startsWith(a)}return o===r})}const pl=e=>{if(!e)return;const t=e.flags.replace(/[gy]/g,"");return new RegExp(e.source,t)};function lh(e,t,s){if(t&&pl(t)?.test(e.name))return s??`This ${e.isFolder?"folder":"file"} contains forbidden characters in its name. Please rename it.`}const $L={size:10,stroke:2},qL=26;var zt=(e=>(e.File="file",e.Folder="folder",e))(zt||{});const KL=({name:e,type:t,shared:s=!1,loading:o=!1,sharedIndicatorClassName:i,sharedIndicatorTooltip:n,fileExtension:r,...a})=>{const l=c=>m.jsxs("span",{className:"inline-flex relative text-secondary",role:"img",children:[c,s&&m.jsx("span",{className:"absolute -bottom-0.5 -left-0.5",children:m.jsx(jn,{className:i,sharedIndicatorTooltip:n})})]});if(o)return l(m.jsx(lr,{}));if(t===zt.File){const c=r||(e.includes(".")?e.split(".").pop():void 0);return m.jsx(nu,{...a,extension:c??"",className:"text-secondary",indicator:s?m.jsx(jn,{className:i,sharedIndicatorTooltip:n}):null,label:"File type icon"})}return t===zt.Folder?l(m.jsx(Ye,{icon:m.jsx(V.IconFolder,{className:a.className,size:a.size??Z.size,stroke:a.stroke??Z.stroke}),className:"inline-block align-middle"})):null},YL=({name:e,type:t,elementId:s,loading:o=!1,shared:i=!1,iconClassName:n,iconIndicator:r,iconLabel:a,iconSize:l,iconStroke:c,inputInvalid:d,inputInvalidMessage:u,inputContainerClassName:h,inputIconAfter:p,inputRef:f,onChange:C,sharedIndicatorClassName:v,sharedIndicatorTooltip:w,fileExtension:b})=>{const S=()=>{const y=u?.startsWith(`${ss.Warning}__`);if(!d&&!y)return null;const x=u?.replace(`${ss.Warning}__`,"");return m.jsx(St,{tooltip:x,children:p||(y?m.jsx(V.IconAlertTriangleFilled,{...Z,className:"text-warning-icon","aria-label":"warning"}):m.jsx(V.IconAlertCircleFilled,{...Z,className:"text-error","aria-label":"alert"}))})};return m.jsxs("div",{className:"flex gap-2 items-center",children:[m.jsx(KL,{name:e,type:t,label:a,className:n,indicator:r,size:l,stroke:c,loading:o,shared:i,fileExtension:b,sharedIndicatorClassName:v,sharedIndicatorTooltip:w}),m.jsx(Zi,{containerClassName:oe("!h-6 py-[1px] pl-[7px] pr-[7px]",h),id:s,value:e,onChange:C,invalid:d,iconAfter:S(),inputRef:f})]})};function Zv({value:e,isEditing:t,restoreOnCancel:s=!0,onValidate:o,onSave:i,onCancel:n}){const[r,a]=g.useState(e),[l,c]=g.useState(!1),[d,u]=g.useState(""),h=g.useRef(null),p=g.useCallback((b=!1,S="")=>{c(b),u(S)},[]),f=g.useCallback(b=>{if(!o)return p(),!0;const S=o(b);return S?S.startsWith(`${ss.Warning}__`)?(p(!1,S),!0):(p(!0,S),!1):(p(),!0)},[o,p]),C=g.useCallback(b=>{const S=b??"";a(S),f(S)},[f]),v=g.useCallback(()=>{f(r)?i?.(r):h.current?.focus()},[f,i,r]),w=g.useCallback(()=>{s&&a(e),p(),n?.()},[e,n,s,p]);return g.useEffect(()=>{t&&(a(e),p(),requestAnimationFrame(()=>{h.current?.focus(),h.current?.select()}))},[t,e,p]),g.useEffect(()=>{const b=h.current;if(!t||!b)return;const S=y=>{y.key==="Enter"?(y.preventDefault(),h.current?.blur()):y.key==="Escape"&&(y.preventDefault(),w())};return b.addEventListener("keydown",S),()=>b.removeEventListener("keydown",S)},[t,v,w]),g.useEffect(()=>{if(!t)return;const b=h.current;if(!b)return;const S=y=>{const x=y.relatedTarget;x&&b.contains(x)||(f(r)?v():b.focus())};return b.addEventListener("blur",S),()=>{b.removeEventListener("blur",S)}},[t,r,f,v]),{inputRef:h,value:r,onChange:C,invalid:l,invalidMessage:d}}const Ka=({name:e,type:t,elementId:s,editing:o=!1,loading:i=!1,shared:n=!1,iconSize:r=Cs,validate:a,onSave:l,fileExtension:c,onCancel:d,inputContainerClassName:u,sharedIndicatorClassName:h,sharedIndicatorTooltip:p,hideTooltip:f=!1,forbiddenSymbolsRegExp:C,forbiddenSymbolsTooltip:v,...w})=>{const{value:b,invalid:S,invalidMessage:y,onChange:x,inputRef:F}=Zv({value:e,isEditing:o,onValidate:a,onCancel:d,onSave:l});if(!o){const R=lh({name:e,isFolder:t===zt.Folder},C,v),E=!!R;return t===zt.Folder?m.jsx(sl,{name:e,loading:i,shared:n,iconSize:r,className:"max-w-[428px] truncate",sharedIndicatorClassName:h,hideTooltip:f,isInvalidName:E,tooltipContent:R}):m.jsx(tl,{className:"max-w-[428px]",...w,name:e,shared:n,iconSize:r,sharedIndicatorClassName:h,hideTooltip:f,isInvalidName:E,tooltipContent:R})}return m.jsx(YL,{type:t,name:b,elementId:s,inputInvalid:S,inputInvalidMessage:y,inputRef:F,onChange:x,iconSize:r,fileExtension:c,inputContainerClassName:u,sharedIndicatorTooltip:p,sharedIndicatorClassName:h})},Xv=e=>{const[t,s]=g.useState(e?.expandedPaths??new Set),o=g.useMemo(()=>!!e?.onExpandedPathsChange,[e?.onExpandedPathsChange]),i=g.useMemo(()=>o?e?.expandedPaths??new Set:t,[o,e?.expandedPaths,t]);g.useEffect(()=>{o&&e?.expandedPaths&&s(new Set(e.expandedPaths))},[o,e?.expandedPaths]);const n=g.useCallback(d=>{o?e?.onExpandedPathsChange?.(d):s(d)},[o,e]),r=g.useCallback(d=>{const u=new Set(i);u.has(d)?u.delete(d):u.add(d),n(u)},[i,n]),a=g.useCallback(()=>{n(new Set)},[n]),l=g.useCallback(d=>{const u=new Set(i);u.add(d),n(u)},[i,n]),c=g.useCallback(d=>{const u=new Set(i);u.delete(d),n(u)},[i,n]);return{expandedPaths:i,setExpandedPaths:n,togglePath:r,collapseAll:a,expandPath:l,collapsePath:c,isControlled:o}},ZL=({items:e,showFiles:t=!1,expandedPaths:s,loadingPaths:o=new Set,loadedPaths:i=new Set,sharedByMePaths:n=new Set,selectedPath:r,emptyStateTitle:a="No Folders",emptyStateDescription:l,emptyStateIcon:c,areHiddenFilesVisible:d=!1,renamedPath:u,rootItemLabel:h,rootItemPath:p,onItemClick:f,getContextMenuItems:C,onRenameSave:v,onRenameCancel:w,onRenameValidate:b,onExpandedPathsChange:S,forbiddenSymbolsRegExp:y,forbiddenSymbolsTooltip:x})=>{const{expandedPaths:F,togglePath:R}=Xv({expandedPaths:s??new Set,onExpandedPathsChange:S}),E=P=>{f?.(P),R(P.path)},D=(P,T)=>P.map(M=>{const{path:k,nodeType:N,name:A,items:W}=M,U=N===be.FOLDER;if(!d&&Kv(M))return null;if(!U&&!t)return;const L=Array.isArray(W)&&W.length>0&&W.some($=>$.nodeType===be.FOLDER||t),de=F.has(k),H=r===k,te=o.has(k),Q=u===k,J=i.has(k),fe=n.has(k),xe=p&&h&&k===p&&U,ne=b&&($=>b($,M)),_=H?"bg-accent-primary-alpha border-l-2 border-l-accent-primary rounded":"border-l-2 border-l-transparent",Fe=xe?[]:C?.(M)??[],ie=y?lh({name:M.name,isFolder:U},y,x):void 0;return m.jsx("div",{className:"cursor-pointer text-secondary",children:m.jsxs("div",{className:"flex flex-col w-full","aria-label":"folder",children:[m.jsx(Rt,{trigger:[Ot.ContextMenu],className:"w-full",anchorToMouse:!0,menu:{items:Fe},children:m.jsxs("div",{style:{paddingLeft:`${T*qL}px`},className:oe("py-1 gap-[2px] dial-small flex justify-between hover:bg-accent-primary-alpha rounded group/item w-full mb-[2px] relative",_),"aria-selected":H,children:[!Q&&m.jsx("div",{className:"absolute size-full left-0 top-0 z-0",onClick:()=>E(M)}),m.jsx("div",{className:"relative flex flex-row truncate items-center w-fit h-6 gap-x-1 pl-1",onClick:()=>!Q&&E(M),children:m.jsxs(m.Fragment,{children:[U&&m.jsx(V.IconCaretRightFilled,{...$L,className:ue("flex-shrink-0",de&&"rotate-90 transition-all",J&&!L&&"text-transparent")}),m.jsx(Ka,{elementId:`${k}-tree-item`,name:xe?h:A,type:U?zt.Folder:zt.File,loading:te,shared:fe,sharedIndicatorClassName:oe("group-hover/item:bg-accent-primary-alpha",H&&"bg-accent-primary-alpha"),iconSize:Js,forbiddenSymbolsRegExp:y,forbiddenSymbolsTooltip:ie,...!xe&&{editing:Q,onSave:v,onCancel:w,validate:ne}})]})}),Fe.length>0&&!Q&&!xe&&m.jsx("div",{className:"flex-1 flex justify-end",children:m.jsx(Rt,{placement:"bottom-start",allowedPlacements:["top-start","top-end"],menu:{items:Fe},className:"sticky right-0",children:m.jsx(Ye,{className:"invisible group-hover/item:visible text-secondary mx-2 flex flex-row gap-2 hover:text-accent-primary",icon:m.jsx(V.IconDotsVertical,{...Z})})})})]})}),de&&W&&D(W,T+1)]})},`${k}-children`)});return m.jsx("div",{className:"flex-1 w-full h-full overflow-y-auto","aria-label":"folders-tree",children:e.length>0?D(e,0):m.jsx(cr,{title:a,description:l,icon:c})})},Rp=e=>e.split("/").map(t=>t.trim()).filter(Boolean),XL="w-full flex items-center justify-between gap-4",QL="min-w-0 h-[38px] flex-1 overflow-hidden bg-layer-3 px-3 flex items-center rounded",JL="w-[260px]",e7=({ariaLabel:e="Breadcrumb",labelClassName:t,onItemClick:s,path:o,makeHref:i,rootItemPath:n,rootItemLabel:r,breadcrumbsHiddenPathPart:a,className:l,breadcrumbClassName:c,searchable:d=!0,value:u,elementId:h="file-manager-search",disabled:p,invalid:f,onSearchChange:C,searchClassName:v,searchContainerClassName:w,isCompactView:b=!1})=>{const S=g.useMemo(()=>{if(!o)return;let D=Rp(o);const P=[...D];let T=0;if(a){const k=Rp(a);if(k.length){const N=D.findIndex((A,W)=>k.every((U,L)=>D[W+L]===U));N!==-1&&(T=k.length,D=[...D.slice(0,N),...D.slice(N+k.length)])}}if(!D.length)return[{label:"/"}];const M=D.map((k,N)=>{const A=N<D.length-T?N:N+T,W=P.slice(0,A+1),U=typeof i=="function"?i(W,A):void 0;return{label:k,href:U,onClick:s?L=>{L.preventDefault(),s(U)}:void 0}});if(n&&r){const k=n.split("/").filter(Boolean),N=o.split("/").filter(Boolean);if(k.every((W,U)=>N[U]===W)&&M.length>0){const W=M.slice(k.length);return[{label:r,href:n,onClick:s?U=>{U.preventDefault(),s(n)}:void 0},...W]}}return M},[o,a,n,r,i,s]),[y,x]=g.useState(!1),F=g.useCallback(()=>{if(b&&!y){x(!0);const D=document.getElementById(h);D&&D.focus()}},[h,y,b]),R=g.useCallback(()=>{(!u||String(u).trim()==="")&&C?.("")},[u,C]),E=g.useCallback(()=>b&&y?m.jsx(xs,{className:"!p-[9px]",iconBefore:m.jsx(V.IconArrowLeft,{...Z}),onClick:()=>{x(!1),C?.("")}}):m.jsx("div",{className:QL,children:m.jsx(Mv,{pathItems:S,ariaLabel:e,labelClassName:t,className:c})}),[e,c,S,y,b,t,C]);return m.jsxs("div",{className:oe(XL,{"gap-3":b},l),"aria-label":"navigation-panel",children:[E(),d&&m.jsx("div",{className:oe(JL,{"w-[40px]":b&&!y,"w-full":b&&y}),role:"search","aria-label":"Search",onClick:F,children:m.jsx(nh,{id:h,value:u??"",onChange:C,disabled:p,onBlur:R,invalid:f,className:v,wrapperClassName:b&&!y?"pl-2.5":"",containerClassName:w})})]})},ch=()=>{const[e,t]=g.useState(pp());return g.useEffect(()=>{const s=()=>t(pp());return window.addEventListener("resize",s),()=>window.removeEventListener("resize",s)},[]),e},t7=({tabs:e,activeTab:t,onTabChange:s,areHiddenFilesVisible:o,onToggleHiddenFiles:i,isNewButtonVisible:n,isNewButtonDisabled:r,newButtonVariant:a=Ve.Primary,newButtonDropdownItems:l=[],newButtonLabel:c="New",hiddenFilesSwitcherLabel:d="Hidden files",showHiddenFilesLabel:u="Show hidden files",hideHiddenFilesLabel:h="Hide hidden files",showHiddenFilesToggle:p=!0,disabledNewButtonTooltip:f})=>{const C=ch(),v=g.useMemo(()=>[{key:"hidden-files-switch",label:o?h:u,icon:o?m.jsx(V.IconEyeOff,{...Z,className:"text-secondary"}):m.jsx(V.IconEye,{...Z,className:"text-secondary"}),onClick:()=>i?.(!o)}],[o,h,u,i]),w=()=>e&&t&&s?m.jsx(Ev,{tabs:e,activeTab:t,onClick:y=>s(y),screenThreshold:Ua.Tablet,smallScreenContainerClassName:"w-fit bg-transparent h-[38px] overflow-hidden",smallScreenDropdownItemClassName:"px-3 h-[38px]"}):null,b=()=>m.jsxs(m.Fragment,{children:[p&&m.jsxs(m.Fragment,{children:[m.jsx(ih,{switchId:"hidden-files-switch",label:d,isOn:o,onChange:i}),m.jsx("div",{className:"h-6 border-l border-primary"})]}),n&&m.jsx(St,{tooltip:r&&f?f:void 0,children:m.jsx($d,{label:c,variant:a,items:l,disabled:r})})]}),S=()=>m.jsxs(m.Fragment,{children:[m.jsx(Rt,{menu:{items:v},allowedPlacements:["bottom","bottom-start"],children:m.jsx(es,{className:"h-[38px]",iconBefore:m.jsx(V.IconDotsVertical,{...Z,className:"text-secondary hover:text-accent-primary"})})}),n?m.jsx(St,{tooltip:r&&f?f:void 0,children:m.jsx($d,{label:c,variant:a,items:l,disabled:r})}):null]});return m.jsxs("div",{className:"flex w-full justify-between gap-4 items-center overflow-x-auto",children:[m.jsx("div",{className:"flex-1 min-w-0",children:w()}),m.jsx("div",{className:"flex gap-4 flex-shrink-0 items-center",children:C?S():b()})]})},s7=12,o7=8;var xo=(e=>(e.Normal="normal",e.Reverse="reverse",e))(xo||{});function i7({actions:e,direction:t=xo.Normal,moreButtonWidth:s=Cs,actionsGap:o=8,containerPadding:i=8,dependencies:n=[]}){const r=g.useRef(null),a=g.useRef(null),l=g.useRef(null),c=g.useRef(null),d=g.useRef([]),[u,h]=g.useState(e.length);g.useLayoutEffect(()=>{if(!a.current)return;const C=Array.from(a.current.children);d.current=C.map(v=>Math.ceil(v.getBoundingClientRect().width))},[e,...n]),g.useEffect(()=>{if(!r.current)return;let C=null;const v=()=>{C&&cancelAnimationFrame(C),C=requestAnimationFrame(()=>{const b=r.current,S=l.current?.offsetWidth??0,y=c.current?.offsetWidth??0,x=S+y,R=b.getBoundingClientRect().width-x-s-o*2-i*2,E=d.current;let D=0,P=0;if(t===xo.Reverse)for(let T=E.length-1;T>=0&&(D+=E[T]+o,!(D>R));T--)P++;else for(const T of E){if(D+=T+o,D>R)break;P++}h(P)})},w=new ResizeObserver(v);return w.observe(r.current),v(),()=>{C&&cancelAnimationFrame(C),w.disconnect()}},[e.length,t,...n]);const p=t===xo.Reverse?e.slice(0,e.length-u):e.slice(u);return{visibleActions:t===xo.Reverse?e.slice(e.length-u):e.slice(0,u),hiddenActions:p,refs:{containerRef:r,measureRef:a,leftSectionRef:l,rightSectionRef:c}}}const n7=({getSelectionLabel:e,onClearSelection:t,actions:s,selectedCount:o})=>{const i=ch(),{refs:{containerRef:n,leftSectionRef:r,measureRef:a},visibleActions:l,hiddenActions:c}=i7({actions:s,direction:xo.Reverse,dependencies:[i],actionsGap:s7,containerPadding:o7}),d=e(o);return m.jsxs(m.Fragment,{children:[m.jsx("div",{ref:a,className:"absolute top-0 left-0 invisible pointer-events-none overflow-hidden whitespace-nowrap flex gap-3",children:s.map(({key:u,icon:h,title:p})=>m.jsx(xs,{iconBefore:h,label:p,hideTitleOnMobile:!0},u))}),m.jsxs("div",{ref:n,className:"rounded bg-layer-0 p-2 flex justify-between items-center w-full",role:"toolbar","aria-label":"File bulk actions",children:[m.jsx("div",{ref:r,children:m.jsx(Ss,{label:d,onClick:t,textClassName:"text-accent-primary whitespace-nowrap",appearance:Me.Ghost,iconBefore:m.jsx(V.IconX,{...Z,className:"text-accent-primary"})})}),m.jsxs("div",{className:"flex flex-1 w-full gap-3 items-center justify-end",children:[c.length>0&&m.jsx(Rt,{menu:{items:c},allowedPlacements:["bottom","bottom-start"],children:m.jsx(es,{className:"h-[38px]",iconBefore:m.jsx(V.IconDotsVertical,{...Z,className:"text-secondary hover:text-accent-primary"})})}),l.map(({key:u,icon:h,tooltip:p,title:f,onClick:C,disabled:v})=>m.jsx(xs,{className:"!p-[9px]",iconBefore:h,label:f,hideTitleOnMobile:!0,disabled:v,tooltipProps:{tooltip:p},onClick:w=>C?.({key:u,domEvent:w})},u))]})]})]})},dh=e=>Se.createElement("svg",{width:18,height:18,viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Se.createElement("path",{d:"M3.009 12.5527C2.77901 12.4216 2.5877 12.2321 2.45443 12.0034C2.32116 11.7746 2.25064 11.5147 2.25 11.25V3.75C2.25 2.925 2.925 2.25 3.75 2.25H11.25C11.8125 2.25 12.1185 2.53875 12.375 3M10.5 15.75H7.25025C6.98757 15.75 6.72747 15.6983 6.48479 15.5977C6.24211 15.4972 6.0216 15.3499 5.83586 15.1641C5.65012 14.9784 5.50278 14.7579 5.40226 14.5152C5.30174 14.2725 5.25 14.0124 5.25 13.7498V7.25025C5.25 6.71975 5.46074 6.21098 5.83586 5.83586C6.21098 5.46074 6.71975 5.25 7.25025 5.25H13.7498C14.0124 5.25 14.2725 5.30174 14.5152 5.40226C14.7579 5.50278 14.9784 5.65012 15.1641 5.83586C15.3499 6.0216 15.4972 6.24211 15.5977 6.48479C15.6983 6.72747 15.75 6.98757 15.75 7.25025V10.5M12.75 16.5L16.5 12.75M16.5 12.75V16.125M16.5 12.75H13.125",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})),uh=e=>Se.createElement("svg",{width:18,height:18,viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Se.createElement("path",{d:"M9.75 14.25H3.75C3.35218 14.25 2.97064 14.092 2.68934 13.8107C2.40804 13.5294 2.25 13.1478 2.25 12.75V4.5C2.25 4.10218 2.40804 3.72064 2.68934 3.43934C2.97064 3.15804 3.35218 3 3.75 3H6.75L9 5.25H14.25C14.6478 5.25 15.0294 5.40804 15.3107 5.68934C15.592 5.97064 15.75 6.35218 15.75 6.75V9.75M12 16.5L15.75 12.75M15.75 12.75V16.125M15.75 12.75H12.375",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})),Qv=e=>Se.createElement("svg",{width:18,height:18,viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Se.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.1812 1.2002H2.80615C2.43319 1.2002 2.07551 1.34835 1.81178 1.61208C1.54806 1.8758 1.3999 2.23348 1.3999 2.60645V5.48145C1.3999 5.85441 1.54806 6.21209 1.81178 6.47581C2.07551 6.73954 2.43319 6.8877 2.80615 6.8877H15.1812C15.5541 6.8877 15.9118 6.73954 16.1755 6.47581C16.4392 6.21209 16.5874 5.85441 16.5874 5.48145V2.60645C16.5874 2.23348 16.4392 1.8758 16.1755 1.61208C15.9118 1.34835 15.5541 1.2002 15.1812 1.2002ZM14.8999 5.2002H3.0874V2.8877H14.8999V5.2002ZM12 7.80017C12.3107 7.80017 12.5625 8.05201 12.5625 8.36267V11.7377H15.9375C16.2482 11.7377 16.5 11.9895 16.5 12.3002C16.5 12.6108 16.2482 12.8627 15.9375 12.8627H12.5625V16.2377C12.5625 16.5483 12.3107 16.8002 12 16.8002C11.6893 16.8002 11.4375 16.5483 11.4375 16.2377V12.8627H8.0625C7.75184 12.8627 7.5 12.6108 7.5 12.3002C7.5 11.9895 7.75184 11.7377 8.0625 11.7377H11.4375V8.36267C11.4375 8.05201 11.6893 7.80017 12 7.80017ZM2.41188 12.5883C2.14816 12.3246 2 11.9669 2 11.5939V9.00018H3.6875V11.3127H6.1001V13.0002H3.40625C3.03329 13.0002 2.6756 12.852 2.41188 12.5883Z",fill:"currentColor"})),Jv=e=>Se.createElement("svg",{width:18,height:18,viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Se.createElement("path",{d:"M9.00049 7.7998C9.3108 7.80007 9.56279 8.05198 9.56299 8.3623V11.7373H12.938C13.2483 11.7376 13.5003 11.9895 13.5005 12.2998C13.5005 12.6103 13.2484 12.862 12.938 12.8623H9.56299V16.2373C9.56299 16.5478 9.31092 16.7995 9.00049 16.7998C8.68983 16.7998 8.43799 16.548 8.43799 16.2373V12.8623H5.06299C4.75233 12.8623 4.50049 12.6105 4.50049 12.2998C4.50069 11.9893 4.75245 11.7373 5.06299 11.7373H8.43799V8.3623C8.43819 8.05181 8.68995 7.7998 9.00049 7.7998ZM15.1812 1.2002C15.5541 1.2002 15.9116 1.34858 16.1753 1.6123C16.439 1.87603 16.5874 2.23348 16.5874 2.60645V5.48145C16.5874 5.85441 16.439 6.21186 16.1753 6.47559C15.9116 6.73931 15.5541 6.8877 15.1812 6.8877H2.80615C2.43319 6.8877 2.07573 6.73931 1.81201 6.47559C1.54829 6.21186 1.3999 5.85441 1.3999 5.48145V2.60645C1.3999 2.23348 1.54829 1.87603 1.81201 1.6123C2.07573 1.34858 2.43319 1.2002 2.80615 1.2002H15.1812ZM3.0874 2.8877V5.2002H14.8999V2.8877H3.0874Z",fill:"currentColor"})),r7=e=>{const[t,s]=g.useState(e?.showHiddenFiles??!1),o=!!e?.onShowHiddenFilesChange,i=o?e.showHiddenFiles??!1:t,n=g.useCallback(a=>{o?e?.onShowHiddenFilesChange?.(a):s(a)},[o,e]),r=g.useCallback(()=>{const a=!i;o?e?.onShowHiddenFilesChange?.(a):s(a)},[i,o,e]);return{areHiddenFilesVisible:i,toggleHiddenFilesVisibility:r,setAreHiddenFilesVisible:n}},a7=e=>{const[t,s]=g.useState(e?.collapsed??!1),o=!!e?.onCollapseChange,i=o?e.collapsed??!1:t,n=g.useCallback(a=>{o?e?.onCollapseChange?.(a):s(a)},[o,e]),r=g.useCallback(()=>{const a=!i;o?e?.onCollapseChange?.(a):s(a)},[i,o,e]);return{isTreeCollapsed:i,toggleTreeCollapse:r,setIsTreeCollapsed:n}},Fp=(e,t,s)=>{if(!t.has(e))return e;const o=s===be.FOLDER?(i,n)=>`${i} (${n})`:(i,n)=>{const r=i.lastIndexOf("."),a=r>0,l=a?i.slice(0,r):i,c=a?i.slice(r):"";return`${l} (${n})${c}`};for(let i=1;;i++){const n=o(e,i);if(!t.has(n))return n}},Jc=e=>e.name,ew=({getDestinationFiles:e,onResolve:t})=>{const[s,o]=g.useState([]),[i,n]=g.useState(!1),[r,a]=g.useState(null),l=g.useRef(!1),c=g.useCallback(S=>{l.current=!0,o(S),n(!0)},[]),d=g.useCallback(()=>{l.current=!1,n(!1),o([]),a(null)},[]),u=g.useCallback((S,y)=>{const x=e(S),F=new Set(x.map(Jc)),R=y.filter(E=>F.has(E.name));return{hasConflicts:R.length>0,conflicts:R}},[e]),h=g.useCallback((S,y,x,F)=>{const R=e(S),E=new Set(R.map(Jc));return y.map(D=>{const P=D.name,T=E.has(P),M=x&&T?P:Fp(P,E,D.nodeType);return(!x||!T)&&E.add(M),{sourceUrl:D.path,destinationUrl:`${S}/${M}`,overwrite:x&&T,nodeType:D.nodeType??be.ITEM,...F??{}}})},[e]),p=g.useCallback((S,y,x,F)=>{const R=e(S),E=new Set(R.map(Jc));return y.filter(P=>x.get(P.path)!==it.Cancel).map(P=>{const T=x.get(P.path),M=E.has(P.name),k=T===it.Replace&&M,N=k?P.name:Fp(P.name,E,P.nodeType);return k||E.add(N),{sourceUrl:P.path,destinationUrl:`${S}/${N}`,overwrite:k,nodeType:P.nodeType??be.ITEM,...F??{}}})},[e]),f=g.useCallback((S,y,x)=>{const F=u(S,y);return F.hasConflicts&&(a({files:y,destinationFolder:S,metadata:x}),c(F.conflicts)),F},[u,c]),C=g.useCallback(()=>{if(!r)return;const{files:S,destinationFolder:y,metadata:x}=r,F=h(y,S,!0,x);t?.(F,y),d()},[r,h,t,d]),v=g.useCallback(()=>{if(!r)return;const{files:S,destinationFolder:y,metadata:x}=r,F=h(y,S,!1,x);t?.(F,y),d()},[r,h,t,d]),w=g.useCallback(()=>{if(!r)return;const{files:S,destinationFolder:y,metadata:x}=r,F=p(y,S,new Map(s.map(R=>[R.path,it.Cancel])),x);t?.(F,y),d()},[d,s,t,r,p]),b=g.useCallback(S=>{if(!r)return;const{files:y,destinationFolder:x,metadata:F}=r,R=new Map(S.map(D=>[D.file.path,D.action])),E=p(x,y,R,F);t?.(E,x),d()},[r,p,t,d]);return{conflictingFiles:s,conflictResolutionOpen:i,hasActiveConflictRef:l,checkForConflicts:u,startConflictResolution:f,resolveConflictsWithStrategy:h,resolveConflictsWithDecisions:p,openConflictResolution:c,closeConflictResolution:d,handleReplaceAll:C,handleDuplicateAll:v,handleCancelAll:w,handleDecideForEach:b}},l7=({getDestinationFiles:e,onCopyFiles:t,onMoveToFiles:s,onCopySuccess:o,onMoveSuccess:i,onDuplicateSuccess:n,getCopyHeader:r,getMoveHeader:a})=>{const[l,c]=g.useState(!1),[d,u]=g.useState([]),[h,p]=g.useState([]),[f,C]=g.useState(nt.Copy),[v,w]=g.useState(),[b,S]=g.useState(null),{conflictingFiles:y,conflictResolutionOpen:x,hasActiveConflictRef:F,startConflictResolution:R,resolveConflictsWithStrategy:E,closeConflictResolution:D,openConflictResolution:P,handleReplaceAll:T,handleDuplicateAll:M,handleCancelAll:k,handleDecideForEach:N}=ew({getDestinationFiles:e,onResolve:(ie,$)=>{b?.type===nt.Copy?(t?.(ie,$),o?.()):b?.type===nt.Move&&b.sourceFolder&&(s?.(ie,b.sourceFolder,$),i?.())}}),A=g.useCallback(()=>{u([]),p([]),S(null),w(void 0)},[]),W=g.useCallback(ie=>{const $=R(ie,d,{type:nt.Copy});if(S({type:nt.Copy}),!$.hasConflicts){const q=E(ie,d,!1);t?.(q,ie),o?.(),A()}},[d,R,E,t,o,A]),U=g.useCallback((ie,$)=>{const q=$||(b?.sourceFolder??"/");if(!R(ie,h,{type:nt.Move,sourceFolderPath:q}).hasConflicts){const G=E(ie,h,!0);s?.(G,q,ie),i?.(),A()}},[h,R,E,s,i,A,b]),L=g.useCallback(()=>{T(),A()},[T,A]),de=g.useCallback(()=>{M(),A()},[M,A]),H=g.useCallback(()=>{k(),A()},[k,A]),te=g.useCallback(ie=>{N(ie),A()},[N,A]),Q=g.useCallback(ie=>{const $=ie.at(0)?.parentPath??"/",q=E($,ie,!1);t?.(q,$),n?.()},[t,n,E]),J=g.useCallback(ie=>{C(ie),c(!0)},[]),fe=g.useCallback(()=>{c(!1),F.current||A()},[A,F]),[xe,ne]=g.useState(),_=g.useCallback(ie=>{u(ie);const $=ie[0]?.parentPath??ie[0]?.folderId;w($),r&&ie.length>0?ne(r(ie.length,ie[0]?.name)):ne(void 0)},[r]),Fe=g.useCallback(ie=>{p(ie);const $=ie[0]?.parentPath??ie[0]?.folderId;w($),S({type:nt.Move,sourceFolder:$}),a&&ie.length>0?ne(a(ie.length,ie[0]?.name)):ne(void 0)},[a]);return{handleDuplicate:Q,handleCloseDestinationFolderPopup:fe,handleOpenDestinationFolderPopup:J,handleCopyTo:W,handleMoveTo:U,openDestinationFolderPopup:l,destinationFolderMode:f,destinationFolderTitle:xe,handleSetCopiedFiles:_,handleSetMovedFiles:Fe,clearState:A,conflictingFiles:y,conflictResolutionOpen:x,openConflictResolution:P,closeConflictResolution:D,handleConflictReplace:L,handleConflictCancel:H,handleConflictDuplicate:de,handleConflictDecideForEach:te,sourceFolder:v}},c7=({path:e,defaultPath:t,onPathChange:s,onSelectionClear:o})=>{const i=e!==void 0,[n,r]=g.useState(t),a=i?e:n,l=g.useCallback(d=>{i||r(d),s?.(d)},[i,s]),c=g.useCallback(d=>{l(d),o?.()},[l,o]);return{currentPath:a,setCurrentPath:l,handlePathChange:c}},d7=({onDeleteFiles:e,onDeleteSuccess:t})=>{const[s,o]=g.useState(!1),[i,n]=g.useState([]),[r,a]=g.useState(""),l=g.useCallback((u,h)=>{n(u),a(h),o(!0)},[]),c=g.useCallback(()=>{o(!1),n([])},[]),d=g.useCallback(()=>{if(e&&i.length>0){const u=i.map(h=>({sourceUrl:h.path,nodeType:h.nodeType}));e(u,r),t?.()}c()},[i,e,t,c,r]);return{deleteConfirmationOpen:s,itemsToDelete:i,openDeleteConfirmation:l,closeDeleteConfirmation:c,confirmDelete:d}},u7=({onDownloadFiles:e,onDownloadSuccess:t})=>({handleDownloadFiles:g.useCallback(o=>{e&&o.length>0&&(e(o),t?.())},[e,t])}),h7=e=>"dataTransfer"in e&&e.dataTransfer!==null,g7=({onUploadFiles:e,onValidateUpload:t,maxFileSize:s,allowedFileTypes:o,validationMessages:i={},onUploadArchive:n,uploadEnabled:r=!0,currentFolder:a}={})=>{const[l,c]=g.useState(!1),[d,u]=g.useState(!1),[h,p]=g.useState(),f=g.useRef(null),C=g.useRef(""),v=g.useRef([]),w=g.useMemo(()=>!!a?.permissions?.includes(Ko.WRITE),[a]),[b,S]=g.useState(new Map),[y,x]=g.useState(null),F=g.useCallback(G=>!o||o.includes("*/*")?G:G.filter(({fileContent:pe,name:le})=>Yv(o,pe.type,le)),[o]),R=g.useCallback(()=>{S(new Map),x(null)},[]),{conflictingFiles:E,conflictResolutionOpen:D,hasActiveConflictRef:P,startConflictResolution:T,closeConflictResolution:M,openConflictResolution:k,handleReplaceAll:N,handleDuplicateAll:A,handleCancelAll:W,handleDecideForEach:U}=ew({getDestinationFiles:()=>v.current,onResolve:(G,pe)=>{if(!r||!w){R();return}if(!y)return;const le=G.map(re=>{const ve=b.get(re.sourceUrl);if(!ve)return;const Re=re.destinationUrl.split("/").pop();return{fileContent:ve.fileContent,name:Re}}).filter(Boolean);le.length>0&&e?.(le,pe),R()}});g.useEffect(()=>{r&&w||(c(!1),u(!1),p(void 0),M(),R())},[r,M,R,w]),g.useEffect(()=>{if(!r||!w)return;let G=0;const pe=Re=>{h7(Re)&&Re.dataTransfer.types.includes(HL)&&(G++,u(!0))},le=()=>{G--,G===0&&u(!1)},re=()=>{G=0,u(!1)},ve=Re=>{Re.preventDefault()};return window.addEventListener("dragenter",pe),window.addEventListener("dragleave",le),window.addEventListener("drop",re),window.addEventListener("dragover",ve),()=>{window.removeEventListener("dragenter",pe),window.removeEventListener("dragleave",le),window.removeEventListener("drop",re),window.removeEventListener("dragover",ve)}},[r,w]);const L=g.useCallback(G=>s?G.filter(pe=>pe.fileContent.size>s).map(pe=>pe.name):[],[s]),de=g.useCallback((G,pe)=>G.map(le=>({id:le.name,name:le.name,folderId:pe,path:le.name,nodeType:be.ITEM,parentPath:pe,contentLength:le.fileContent.size})),[]),H=g.useCallback(async(G,pe,le)=>{if(!r||!w)return!1;p(void 0),v.current=le;const re=L(G);if(re.length>0){const me=s?(s/1048576).toFixed(2):0,Pe=i.oversizedFiles||`Files exceed maximum size (${me}MB): ${re.join(", ")}`;return p(Pe),!1}if(t)try{const me=await t(G,le,pe);if(!me.valid)return p(me.message||i.validationFailed||"Validation failed"),!1}catch{return p(i.validationError||"Validation error occurred"),!1}const ve=new Map(G.map(me=>[me.name,me]));S(ve);const Re=de(G,pe);return x({destinationFolder:pe}),T(pe,Re,{destinationFolder:pe}).hasConflicts?!1:(e?.(G,pe),R(),!0)},[r,e,t,L,s,i,de,T,R,w]),te=g.useCallback(()=>{N(),R()},[N,R]),Q=g.useCallback(()=>{A(),R()},[A,R]),J=g.useCallback(()=>{W(),R()},[W,R]),fe=g.useCallback(G=>{U(G),R()},[U,R]),xe=g.useCallback(()=>{M(),P.current||R()},[M,P,R]),ne=g.useCallback(G=>{!r||!w||(G.preventDefault(),G.stopPropagation(),G.dataTransfer.types.includes("Files")&&c(!0))},[r,w]),_=g.useCallback(G=>{if(!r||!w)return;G.preventDefault(),G.stopPropagation();const pe=G.currentTarget.getBoundingClientRect(),le=G.clientX,re=G.clientY;(le<=pe.left||le>=pe.right||re<=pe.top||re>=pe.bottom)&&c(!1)},[r,w]),Fe=g.useCallback(G=>{!r||!w||(G.preventDefault(),G.stopPropagation(),G.dataTransfer.types.includes("Files")&&(G.dataTransfer.dropEffect="copy"))},[r,w]),ie=g.useCallback(async(G,pe,le)=>{if(!r||!w||(G.preventDefault(),G.stopPropagation(),c(!1),!G.dataTransfer.types.includes("Files")))return;const re=Array.from(G.dataTransfer.files);if(re.length===0)return;const ve=re.map(Oe=>({fileContent:Oe,name:Oe.name})),Re=F(ve);if(Re.length===0){p(i.unsupportedFiles||"Selected files are not supported");return}await H(Re,pe,le)},[r,F,H,i,w]);g.useEffect(()=>{let G=f.current;G||(G=document.createElement("input"),G.type="file",G.multiple=!0,G.style.display="none",document.body.appendChild(G),f.current=G),o&&o.length>0?G.accept=o.join(","):G.removeAttribute("accept");const pe=async()=>{if(!r||!w){G&&(G.value="");return}if(!G?.files?.length)return;const re=Array.from(G.files).map(Re=>({fileContent:Re,name:Re.name})),ve=F(re);if(ve.length===0){p(i.unsupportedFiles||"Selected files are not supported"),G.value="";return}await H(ve,C.current,v.current),G.value=""};return G.addEventListener("change",pe),()=>{G&&(G.removeEventListener("change",pe),f.current===G&&(document.body.removeChild(G),f.current=null))}},[r,o,F,H,i,w]);const $=g.useCallback((G,pe)=>{!r||!w||(C.current=G,v.current=pe,f.current&&f.current.click())},[r,w]),q=g.useCallback((G,pe)=>{if(!n||!r||!w)return;const le=document.createElement("input");le.type="file",le.accept=".zip,application/zip",le.multiple=!1,le.style.display="none";const re=()=>{const ve=le.files?.[0];if(!ve){document.body.removeChild(le);return}const Re=ve.name.replace(/\.zip$/i,"");if(pe.some(me=>me.nodeType===be.FOLDER&&me.name.toLowerCase()===Re.toLowerCase())){p(i.validationFailed||`Folder with name "${Re}" already exists`),document.body.removeChild(le);return}try{n(ve,Re,G)}finally{document.body.removeChild(le)}};le.addEventListener("change",re),document.body.appendChild(le),le.click()},[r,n,i,w]),se=g.useCallback(()=>{p(void 0)},[]);return{isDragging:l,isDraggingOverWindow:d,uploadError:h,handleDragEnter:ne,handleDragLeave:_,handleDragOver:Fe,handleDrop:ie,clearError:se,handleUpload:H,openFileDialog:$,openArchiveDialog:q,fileInputRef:f,uploadConflictingFiles:E,uploadConflictResolutionOpen:D,hasActiveUploadConflictRef:P,openUploadConflictResolution:k,closeUploadConflictResolution:xe,handleUploadConflictReplace:te,handleUploadConflictDuplicate:Q,handleUploadConflictCancel:J,handleUploadConflictDecideForEach:fe}},tw=g.createContext(void 0),sw={hiddenItemWarning:`${ss.Warning}__A dot at the start of the name will make the item hidden`},p7={emptyName:"Name cannot be empty",duplicateName:"An item with this name already exists",hiddenItemWarning:sw.hiddenItemWarning};function f7(e){let t=e.length;for(;t>0&&e[t-1]==="/";)t--;return e.slice(0,t)}function m7(e,t){const s=f7(e),o=s.lastIndexOf("/");return o===-1?t:s.slice(0,o+1)+t}function C7(e){const t=e.lastIndexOf(".");return t===-1||t===0?e:e.substring(0,t)}function Ep(e){const t=e.lastIndexOf(".");return t===-1||t===0?"":e.substring(t)}const v7=({items:e,onRenameValidate:t,validationMessages:s,onMoveToFiles:o})=>{const[i,n]=g.useState(),r=g.useMemo(()=>({...p7,...s}),[s]),a=g.useMemo(()=>i?.path,[i]),l=g.useCallback(p=>{const f=Vo(e,p);f&&n(f)},[e]),c=g.useCallback(()=>{n(void 0)},[]),d=g.useCallback(p=>{if(!i||!o){n(void 0);return}const f=i.nodeType===be.ITEM;let C=p.trim();if(f){const S=Ep(i.name);S&&!C.endsWith(S)&&(C=C+S)}if(C===i.name){n(void 0);return}const v=m7(i.path,C),w=i.parentPath;if(!w){n(void 0);return}const b={sourceUrl:i.path,destinationUrl:v,nodeType:i.nodeType};o([b],w,w),n(void 0)},[i,o]),u=g.useCallback((p,f)=>{const C=p.trim();if(!C)return r.emptyName;if(C.startsWith("."))return r.hiddenItemWarning;const v=f.nodeType===be.ITEM;let w=C;if(v){const S=Ep(f.name);S&&!w.endsWith(S)&&(w=w+S)}const b=f.parentPath;if(b){const S=Vo(e,b);if(S&&new Set((S.items??[]).filter(x=>x.path!==f.path).map(x=>x.name.toLowerCase())).has(w.toLowerCase()))return r.duplicateName}if(t){const S=t(w,f);if(S)return S}return null},[t,r,e]),h=g.useCallback(p=>p.nodeType===be.ITEM?C7(p.name):p.name,[]);return{renamedPath:a,renamedItem:i,renameHandler:l,renameSaveHandler:d,renameCancelHandler:c,renameValidateHandler:u,getDisplayName:h}},w7=({newActions:e,currentFolder:t,onUploadFiles:s,onCreateFolder:o,onUploadArchive:i,onCreateNewItem:n,isNewButtonDisabled:r})=>{const a=g.useMemo(()=>{const d=[];return e&&(e.newFolder&&d.push({key:"new-folder",label:e.newFolder.label,icon:e?.newFolder?.icon!==void 0?e?.newFolder?.icon:m.jsx(V.IconFolder,{...Z,className:"text-secondary"}),onClick:()=>{o&&o()}}),e.newItem&&d.push({key:"new-item",label:e.newItem.label,icon:e?.newItem?.icon!==void 0?e?.newItem?.icon:m.jsx(V.IconPlus,{...Z,className:"text-secondary"}),onClick:()=>{n&&n()}}),e.uploadFiles&&d.push({key:"upload-file",label:e.uploadFiles.label,icon:e?.uploadFiles?.icon!==void 0?e?.uploadFiles?.icon:m.jsx(V.IconFile,{...Z,className:"text-secondary"}),onClick:()=>{s&&s()}}),e.uploadArchive&&d.push({key:"upload-archive",label:e.uploadArchive.label,icon:e?.uploadArchive?.icon!==void 0?e?.uploadArchive?.icon:m.jsx(V.IconFileZip,{...Z,className:"text-secondary"}),onClick:()=>{i&&i()}})),d},[e,o,s,i,n]),l=g.useMemo(()=>a?.length>0,[a]),c=g.useMemo(()=>!t?.permissions?.includes(Ko.WRITE)||!!r,[t,r]);return{newActions:a,isNewButtonVisible:l,isNewButtonDisabled:c}},b7={emptyName:"Folder name cannot be empty",duplicateName:"A folder with this name already exists",hiddenItemWarning:sw.hiddenItemWarning},S7=({currentFolder:e,onCreateFolder:t,onValidateFolderName:s,validationMessages:o})=>{const[i,n]=g.useState(!1),[r,a]=g.useState(null),l=g.useRef(e?.path),c=g.useMemo(()=>({...b7,...o}),[o]);g.useEffect(()=>{const f=e?.path;l.current!==f&&i&&(n(!1),a(null)),l.current=f},[e?.path,i]);const d=g.useCallback(()=>{const f=`__new_folder_${Date.now()}`;a(f),n(!0)},[]),u=g.useCallback(()=>{n(!1),a(null)},[]),h=g.useCallback(f=>{const C=f.trim();if(!C)return c.emptyName;if(C.startsWith("."))return c.hiddenItemWarning;if(e&&new Set((e.items??[]).filter(w=>w.nodeType===be.FOLDER).map(w=>w.name.toLowerCase())).has(C.toLowerCase()))return c.duplicateName;if(s&&e){const v=s(C,e);if(v)return v}return null},[e,s,c]),p=g.useCallback(async f=>{const C=f.trim();if(!C)return;const w=`${e?.path??"/"}/${C}`,b=`${w}/${Xc}`,y={fileContent:new File([],Xc,{type:"text/plain"}),name:Xc};t&&await t(y,w,b),u()},[e,t,u]);return{isCreatingFolder:i,newFolderTempId:r,startFolderCreation:d,cancelFolderCreation:u,saveFolderCreation:p,validateFolderName:h}},y7=({additionalButtons:e,expandedPathsLength:t,collapseAll:s})=>{const o=t===0;return{additionalButtons:g.useMemo(()=>{const n=oe(["hover:text-accent-primary",o&&"controls-secondary-disable hover:controls-secondary-disable disabled:hover:cursor-default"]);return m.jsxs(m.Fragment,{children:[e,m.jsx(no,{disabled:o,className:n,size:wt.Small,onClick:s,icon:m.jsx(V.IconCopyMinus,{size:mt.LG,stroke:1.5}),"aria-label":"collapse-all"})]})},[e,o,s])}},x7=({onGetInfo:e})=>{const[t,s]=g.useState(!1),[o,i]=g.useState(void 0),n=g.useCallback(async a=>{i(a),s(!0),e&&await e(a)},[e]),r=g.useCallback(()=>{s(!1),i(void 0)},[]);return{isMetadataPopupOpen:t,selectedFileForMetadata:o,openMetadataPopup:n,closeMetadataPopup:r}};function R7(e){const t=[];function s(o){for(const i of o)t.push(i),i.items&&s(i.items)}return s(e),t}function Dp(e,t){const s=Ai(t);return e.filter(o=>Ai(o.name).includes(s))}function F7({onSearchFiles:e,clearSearchResults:t,currentPath:s,searchResults:o=[],searchInProgress:i=!1,navigationPanelValue:n,onNavigationPanelSearchChange:r,allItems:a=[],activeTab:l}){const[c,d]=g.useState(""),u=g.useRef(!1),h=g.useRef(!1),p=g.useRef([]),f=g.useRef(s),C=g.useRef(l);g.useEffect(()=>{n!=null&&d(String(n))},[n]);const v=String(n??c??"").trim(),w=h.current&&(i||o.length>0||v!==""),b=g.useCallback(F=>{const R=F.trim();if(!R){h.current=!1,u.current=!1;return}h.current=!0,e&&s&&!u.current&&(u.current=!0,e(s,R))},[e,s]),S=g.useCallback(()=>{u.current=!1,h.current=!1,p.current=[],d(""),r?.(""),t?.()},[t,r]),y=g.useCallback(F=>{const R=String(F??"");d(R),r?.(R),R.trim()?b(R):S()},[r,b,S]);g.useEffect(()=>{(f.current!==s||C.current!==l)&&(f.current=s,C.current=l,u.current=!1,h.current=!1,p.current=[],d(""),r?.(""),t?.())},[s,l,r,t]),g.useEffect(()=>{o.length>0&&p.current.length===0&&(p.current=o)},[o]);const x=g.useMemo(()=>{if(e){const R=p.current.length>0?p.current:o;return!v||R.length===0?R:Dp(R,v)}if(!v||!a.length)return[];const F=R7(a);return Dp(F,v)},[e,o,v,a]);return{isSearchMode:w,searchValue:c,effectiveSearchValue:v,setSearchValue:d,handleSearchChange:y,handleSearchActivate:b,handleSearchClear:S,searchResultsRows:x}}function E7({selectedPaths:e,defaultSelectedPaths:t,onSelectedPathsChange:s}){const o=e!==void 0,[i,n]=g.useState(()=>t??new Set),r=g.useMemo(()=>o?e:i,[o,e,i]),a=g.useCallback(c=>{const d=new Set(c);s?.(d),o||n(d)},[o,s]),l=g.useCallback(()=>{a(new Set)},[a]);return{selectedPaths:r,setSelectedPaths:a,clearSelection:l,isControlled:o}}const ow=':;,=/{}%&\\"',hh=`(\r
|
|
63
63
|
|
|
|
64
64
|
|\r| )|[\0-]`,D7=`[${ow.replace(/\\/g,"\\\\")}]`,iw=new RegExp(`${D7}|${hh}`),P7=new RegExp(hh),nw=({managerLabel:e,children:t,className:s,items:o=[],rootItem:i,path:n,defaultPath:r,filesLoading:a,selectedPaths:l,defaultSelectedPaths:c,onSelectedPathsChange:d,showHiddenFiles:u,onShowHiddenFilesChange:h,treeOptions:p,showNavigationPanel:f=!0,navigationPanelOptions:C,deleteConfirmationOptions:v,gridOptions:w,toolbarOptions:b,bulkActionsToolbarOptions:S,destinationFolderPopupOptions:y,conflictResolutionPopupOptions:x,onPathChange:F,onTableFileClick:R,handleSelectionClick:E,onGridApiChange:D,onCopyFiles:P,onMoveToFiles:T,onDeleteFiles:M,onDownloadFiles:k,onRenameValidate:N,onAddSibling:A,onAddChild:W,renameValidationMessages:U,forbiddenSymbolsRegExp:L=iw,forbiddenSymbolsTooltip:de,onUploadFiles:H,onValidateUpload:te,uploadEnabled:Q,uploadValidationMessages:J,maxFileSize:fe,onUploadArchive:xe,onCreateFolder:ne,onCreateFolderValidate:_,folderCreationValidationMessages:Fe,fileMetadataPopupOptions:ie,onGetInfo:$,onUnshareFiles:q,onRemoveFilesAccess:se,actionsRef:G,sharedByMePaths:pe,onSearchFiles:le,searchResults:re,searchInProgress:ve,clearSearchResults:Re,allowedFileTypes:Oe,maxSelectableFileSize:me,getDisabledTooltip:Pe,fileTooLargeTooltip:_e,unsupportedFileTypeTooltip:Ge,emptyStateIcon:We,emptyStateTitle:_t,emptyStateDescription:jt,sharedWithMeIds:as,onFolderPopupPathChange:B,onManagePermissions:Ee,onPreview:It,previewExtensions:Xi,isRenameFileAvailable:fl,isDuplicateFolderAvailable:ml,customUploadFileAction:Yo,customCreateNewItemAction:Qi,customDuplicateAction:Zo,customDeleteItemsAction:vr,customBreakpointRef:Cl,gridClassName:vl,nonClickableTableColumns:wl})=>{const{selectedPaths:Ji,clearSelection:ls,setSelectedPaths:bl}=E7({selectedPaths:l,defaultSelectedPaths:c,onSelectedPathsChange:d}),Sl=g.useMemo(()=>{const Ne=new Map;return Ji.forEach(At=>{const Dt=Vo(o,At);Dt&&Ne.set(At,Dt)}),Ne},[Ji,o]),{currentPath:gt,setCurrentPath:yl,handlePathChange:Fs}=c7({path:n,defaultPath:r,onPathChange:F,onSelectionClear:ls}),en=g.useMemo(()=>{const{showFiles:Ne=!0,showFolders:At=!0,...Dt}=w||{};return{showFiles:Ne,showFolders:At,...Dt}},[w]),tn=en.showFiles,sn=en.showFolders,[xl,Rl]=g.useState(),Fl=y?.destinationFolderPath??xl,on=g.useCallback(Ne=>{y?.setDestinationFolderPath?y.setDestinationFolderPath(Ne):Rl(Ne)},[y]),{areHiddenFilesVisible:Xo,toggleHiddenFilesVisibility:cs}=r7({showHiddenFiles:u,onShowHiddenFilesChange:h}),{isTreeCollapsed:El,toggleTreeCollapse:Dl,setIsTreeCollapsed:Pl}=a7({collapsed:p?.collapsed,onCollapseChange:p?.onCollapseChange}),{renamedPath:Qo,renamedItem:Jo,renameHandler:Tl,renameSaveHandler:Ml,renameCancelHandler:nn,renameValidateHandler:wr,getDisplayName:br}=v7({items:o,onRenameValidate:N,validationMessages:U,onMoveToFiles:T}),{isSearchMode:ei,searchValue:ti,effectiveSearchValue:rn,setSearchValue:si,handleSearchChange:Il,handleSearchClear:Ft,searchResultsRows:Sr}=F7({onSearchFiles:le,clearSearchResults:Re,currentPath:gt,searchResults:re,searchInProgress:ve,navigationPanelValue:C?.value,onNavigationPanelSearchChange:C?.onSearchChange,allItems:o,activeTab:b?.activeTab}),st=g.useMemo(()=>xp(o,gt)??o[0],[o,gt]),{handleCopyTo:an,handleMoveTo:yr,handleDuplicate:xr,handleOpenDestinationFolderPopup:kl,handleCloseDestinationFolderPopup:ln,openDestinationFolderPopup:cn,handleSetCopiedFiles:Rr,handleSetMovedFiles:Fr,destinationFolderMode:Er,destinationFolderTitle:Dr,conflictingFiles:oi,conflictResolutionOpen:Pr,closeConflictResolution:dn,handleConflictReplace:Al,handleConflictDuplicate:Tr,handleConflictCancel:un,handleConflictDecideForEach:Ll,sourceFolder:Ol}=l7({getDestinationFiles:Ne=>xp(o,Ne)?.items??[],onCopyFiles:P,onMoveToFiles:T,onCopySuccess:ls,onMoveSuccess:ls,onDuplicateSuccess:ls,getCopyHeader:y?.getCopyHeader,getMoveHeader:y?.getMoveHeader});g.useEffect(()=>{cn||on(void 0)},[cn,on]);const{deleteConfirmationOpen:Nl,itemsToDelete:Hl,openDeleteConfirmation:Gl,closeDeleteConfirmation:Bl,confirmDelete:Vl}=d7({onDeleteFiles:M,onDeleteSuccess:ls}),{handleDownloadFiles:Mr}=u7({onDownloadFiles:k,onDownloadSuccess:ls}),{isDragging:hn,isDraggingOverWindow:ii,uploadError:zl,handleDragEnter:kt,handleDragLeave:Wl,handleDragOver:ni,handleDrop:uo,clearError:ri,openFileDialog:ds,fileInputRef:ho,openArchiveDialog:Ws,uploadConflictingFiles:gn,uploadConflictResolutionOpen:_l,closeUploadConflictResolution:jl,handleUploadConflictReplace:go,handleUploadConflictDuplicate:pn,handleUploadConflictCancel:Ir,handleUploadConflictDecideForEach:Ul}=g7({onUploadFiles:H,onValidateUpload:te,maxFileSize:fe,onUploadArchive:xe,allowedFileTypes:Oe,validationMessages:J,uploadEnabled:Q,currentFolder:st}),$l=g.useCallback(Ne=>{Ft();const At=gt??"",Dt=st?.items??[];uo(Ne,At,Dt)},[gt,st,uo,Ft]),fn=g.useCallback(()=>{Ft();const Ne=gt??"",At=st?.items??[];ds(Ne,At)},[gt,st,ds,Ft]),ql=g.useCallback(()=>{Ft();const Ne=gt??"",At=st?.items??[];Ws(Ne,At)},[gt,st,Ws,Ft]),Kl=g.useCallback(()=>{Ft(),Yo?.(gt,st)},[Yo,gt,st,Ft]),kr=g.useCallback(()=>{Ft(),Qi?.(gt,st)},[Qi,gt,st,Ft]),Ar=g.useCallback(Ne=>{Zo?.(Ne)},[Zo]),{isCreatingFolder:mn,newFolderTempId:po,startFolderCreation:Cn,cancelFolderCreation:Yl,saveFolderCreation:Zl,validateFolderName:j}=S7({currentFolder:st,onCreateFolder:ne,onValidateFolderName:_,validationMessages:Fe}),Le=g.useCallback(()=>{Ft(),Cn()},[Ft,Cn]),{newActions:He,isNewButtonVisible:Et,isNewButtonDisabled:_s}=w7({newActions:b?.newActions,currentFolder:st,onUploadFiles:Yo?Kl:fn,onUploadArchive:ql,onCreateFolder:Le,onCreateNewItem:kr,isNewButtonDisabled:b?.isNewButtonDisabled}),gw=g.useMemo(()=>{if(ei){let ke=Sr;return tn||(ke=ke.filter(qe=>qe.nodeType!==be.ITEM)),sn||(ke=ke.filter(qe=>qe.nodeType!==be.FOLDER)),Xo||(ke=ke.filter(qe=>!qe.path.split("/").filter(Boolean).some(Ql=>Ql.startsWith(".")))),ke.map(qe=>({...qe,id:qe.id??qe.path,name:qe.name??qe.path.split("/").pop()??"",updatedAt:qe.updatedAt,size:qe.contentLength,contentLength:qe.contentLength,author:qe.author,path:qe.path,nodeType:qe.nodeType,extension:qe.extension,isTemporary:!1,owner:qe.owner,folderId:qe.folderId}))}const Ne=Ai(rn).trim(),At=st?.items??[];let Dt=Ne?jL(st):At;tn||(Dt=Dt.filter(ke=>ke.nodeType!==be.ITEM)),sn||(Dt=Dt.filter(ke=>ke.nodeType!==be.FOLDER)),Xo||(Dt=Dt.filter(ke=>Ne?!ke.path.split("/").filter(Boolean).some(Lr=>Lr.startsWith(".")):!Kv(ke)));const Xl=Dt.map(ke=>({...ke,id:ke.id??ke.path,name:ke.name??ke.path.split("/").pop()??"",updatedAt:ke.updatedAt,size:ke.contentLength,author:ke.author,path:ke.path,nodeType:ke.nodeType,extension:ke.extension,isTemporary:!1,owner:ke.owner,contentType:ke.contentType,contentLength:ke.contentLength,folderId:ke.folderId}));if(mn&&po&&!Ne&&Xl.unshift({id:po,name:"",updatedAt:void 0,author:void 0,path:po,nodeType:be.FOLDER,extension:void 0,isTemporary:!0,owner:void 0}),!Ne)return Xl;const Ew=Ne.split(/\s+/).filter(Boolean);return Xl.filter(ke=>{if(ke.isTemporary)return!0;const qe=Ai(ke.name),Lr=Ai(ke.author),Ql=_L(ke.extension);return Ew.every(Jl=>qe.includes(Jl)||Lr.includes(Jl)||Ql.includes(Jl))})},[ei,Sr,st,rn,Xo,mn,po,tn,sn]),pw=g.useCallback(Ne=>{Fs(Ne.path)},[Fs]),fw=g.useCallback(Ne=>{Fs(Ne)},[Fs]),mw=g.useCallback(Ne=>{Ne.nodeType===be.FOLDER?Fs(Ne.path):R?.(Ne)},[Fs,R]),{expandedPaths:fh,setExpandedPaths:Cw,collapseAll:vw}=Xv({expandedPaths:p?.expandedPaths,onExpandedPathsChange:p?.onExpandedPathsChange}),{additionalButtons:ww}=y7({collapseAll:vw,expandedPathsLength:fh.size,additionalButtons:p?.additionalButtons}),{isMetadataPopupOpen:bw,selectedFileForMetadata:Sw,openMetadataPopup:yw,closeMetadataPopup:mh}=x7({onGetInfo:$}),xw=g.useCallback(()=>{mh(),ie?.clearMetadata?.()},[mh,ie]),Rw=g.useMemo(()=>{if(L)return pl(L)},[L]),Fw={managerLabel:e,className:s,items:o,allowedFileTypes:Oe,maxSelectableFileSize:me,rootItem:i,filesLoading:a,treeOptions:{...p,expandedPaths:fh,onExpandedPathsChange:Cw,additionalButtons:ww},showNavigationPanel:f,navigationPanelOptions:C,gridOptions:en,toolbarOptions:b,bulkActionsToolbarOptions:S,deleteConfirmationOptions:v,destinationFolderPopupOptions:{...y,destinationFolderPath:Fl,setDestinationFolderPath:on,header:Dr,onCreateFolder:ne,onCreateFolderValidate:_,folderCreationValidationMessages:Fe,sourceFolder:Ol},currentPath:gt,setCurrentPath:yl,searchValue:ti,effectiveSearchValue:rn,setSearchValue:si,areHiddenFilesVisible:Xo,toggleHiddenFilesVisibility:cs,isTreeCollapsed:El,toggleTreeCollapse:Dl,setIsTreeCollapsed:Pl,selectedPaths:Ji,selectedFiles:Sl,setSelectedPaths:bl,clearSelection:ls,currentFolder:st,gridRows:gw,handleCopyTo:an,handleMoveTo:yr,handleDuplicate:Zo?Ar:xr,handleSetCopiedFiles:Rr,handleSetMovedFiles:Fr,openDestinationFolderPopup:cn,handleCloseDestinationFolderPopup:ln,handleOpenDestinationFolderPopup:kl,destinationFolderMode:Er,handleAddSibling:A,handleAddChild:W,handleDownloadFiles:Mr,renamedPath:Qo,renamedItem:Jo,forbiddenSymbolsRegExp:Rw,forbiddenSymbolsTooltip:de,onRename:Tl,onRenameSave:Ml,onRenameCancel:nn,onRenameValidate:wr,getDisplayName:br,openDeleteConfirmation:vr||Gl,closeDeleteConfirmation:Bl,confirmDelete:Vl,deleteConfirmationOpen:Nl,itemsToDelete:Hl,handlePathChange:Fs,handleTreeItemClick:pw,handleBreadcrumbItemClick:fw,handleSearchChange:Il,handleTableRowClick:mw,onTableFileClick:R,handleSelectionClick:E,onGridApiChange:D,isDragging:hn,uploadError:zl,handleDragEnter:kt,handleDragLeave:Wl,handleDragOver:ni,handleDrop:$l,clearUploadError:ri,onUploadFiles:H,onValidateUpload:te,maxFileSize:fe,isDraggingOverWindow:ii,openFileDialog:fn,fileInputRef:ho,newActions:He,isNewButtonVisible:Et,isNewButtonDisabled:_s,isCreatingFolder:mn,newFolderTempId:po,startFolderCreation:Le,cancelFolderCreation:Yl,saveFolderCreation:Zl,validateFolderName:j,conflictResolutionPopupOptions:x,conflictingFiles:oi,conflictResolutionOpen:Pr,closeConflictResolution:dn,handleConflictReplace:Al,handleConflictDuplicate:Tr,handleConflictCancel:un,handleConflictDecideForEach:Ll,uploadConflictingFiles:gn,uploadConflictResolutionOpen:_l,closeUploadConflictResolution:jl,handleUploadConflictReplace:go,handleUploadConflictDuplicate:pn,handleUploadConflictCancel:Ir,handleUploadConflictDecideForEach:Ul,fileMetadataPopupOptions:ie,isMetadataPopupOpen:bw,selectedFileForMetadata:Sw,openMetadataPopup:yw,closeMetadataPopup:xw,onGetInfo:$,onUnshareFiles:q,onRemoveFilesAccess:se,actionsRef:G,sharedByMePaths:pe,onSearchFiles:le,searchInProgress:ve,searchResults:re,clearSearchResults:Re,isSearchMode:ei,emptyStateIcon:We,emptyStateTitle:_t,emptyStateDescription:jt,gridClassName:vl,sharedWithMeIds:as,onFolderPopupPathChange:B,onManagePermissions:Ee,onPreview:It,previewExtensions:Xi,isRenameFileAvailable:fl,isDuplicateFolderAvailable:ml,customUploadFileAction:Yo,customBreakpointRef:Cl,nonClickableTableColumns:wl,getDisabledTooltip:Pe,fileTooLargeTooltip:_e,unsupportedFileTypeTooltip:Ge};return m.jsx(tw.Provider,{value:Fw,children:t})},rw=()=>{const e=g.useContext(tw);if(!e)throw new Error("useFileManagerContext must be used within <FileManagerProvider>");return e},T7=({open:e,itemsToDelete:t,onClose:s,onConfirm:o,cancelLabel:i="Cancel",confirmLabel:n="Delete",titleRenderer:r,contentRenderer:a})=>{const l=t.map(p=>p.name),d=r?.(l)||"Confirm Deleting Items",u=m.jsxs("div",{className:"px-6 py-3 dial-small",children:[m.jsx("p",{className:"text-secondary mb-3",children:t.length===1?m.jsxs(m.Fragment,{children:["Do you want to delete file or folder"," ",m.jsxs("span",{className:"text-primary break-all",children:['"',t[0].name,'"']}),"?"]}):m.jsxs(m.Fragment,{children:["Do you want to delete the following"," ",m.jsx("span",{className:"text-primary",children:t.length})," items?"]})}),t.length>1&&m.jsx(m.Fragment,{children:t.length<=10?m.jsx("ul",{className:"space-y-1 text-primary list-none",children:t.map(p=>m.jsx("li",{className:"truncate",children:p.name},p.path))}):m.jsxs(m.Fragment,{children:[m.jsx("ul",{className:"space-y-1 text-primary list-none mb-2",children:t.slice(0,10).map(p=>m.jsx("li",{className:"truncate",children:p.name},p.path))}),m.jsxs("p",{className:"text-secondary italic",children:["... and ",t.length-10," more"]})]})})]}),h=a?.(l)||u;return m.jsx(Ov,{open:e,header:d,confirmLabel:n,cancelLabel:i,variant:zi.Danger,onClose:s,onConfirm:o,children:h})},aw=({onClose:e,onConfirm:t,onFolderPopupPathChange:s,setDestinationFolderPath:o,open:i,copyLabel:n="Copy",moveLabel:r="Move",addFolderLabel:a="Add folder",mode:l=nt.Copy,hiddenFilesSwitcherLabel:c="Show hidden files",onUploadFiles:d,onValidateUpload:u,maxFileSize:h,header:p,sourceFolder:f,disabledPathTooltip:C="Unavailable for the original path. Please select another folder",path:v,collapsedFileTree:w=!1,alertProps:b,...S})=>{const[y,x]=g.useState(!1),[F,R]=g.useState(!1),E=g.useRef(null),D=ch(),P=g.useCallback(A=>{x(A)},[]),T=g.useMemo(()=>[{key:"add-folder",label:a,icon:m.jsx(V.IconFolderPlus,{...Z,className:"text-secondary"}),onClick:()=>{E.current?.createFolder(),R(!1)}},{key:"show-hidden-files",label:c,icon:m.jsx(V.IconEye,{...Z,className:"text-secondary"}),onClick:()=>{x(A=>!A),R(!1)}}],[a,c]),M=g.useCallback(A=>{A&&(s?.(A),o?.(A))},[s,o]),k=l===nt.Copy?"Copy to":"Move to",N=g.useMemo(()=>!v||!f?!1:f===v,[v,f]);return m.jsx(qo,{open:i,onClose:()=>{e()},size:Vt.Lg,dividerFooter:!0,dividers:!1,className:"md:!h-[800px] !bg-layer-2",footer:m.jsxs("div",{className:"flex justify-between items-center gap-2 py-4 px-4 md:px-6",children:[m.jsx("div",{className:"flex items-center gap-4 min-w-0",children:D?m.jsx(Rt,{menu:{items:T},open:F,onOpenChange:R,children:m.jsx(es,{className:"h-9 w-9 shrink-0","aria-label":"More options",iconBefore:m.jsx(V.IconDotsVertical,{...Z,className:"text-secondary"})})}):m.jsxs(m.Fragment,{children:[m.jsx(Ss,{label:a,appearance:Me.Ghost,iconBefore:m.jsx(V.IconFolderPlus,{...Z}),onClick:()=>{E.current?.createFolder()}}),m.jsx("div",{className:"w-px h-[26px] bg-controls-disable-accent my-2"}),m.jsx("div",{className:"inline-flex items-center cursor-pointer",children:m.jsx(ih,{label:c,isOn:y,onChange:P,switchId:"hidden-files-switch"})})]})}),m.jsxs("div",{className:"flex space-x-4 items-center",children:[m.jsx(xs,{onClick:e,label:"Cancel"}),N?m.jsx(St,{tooltip:C,children:m.jsx(Ss,{onClick:t,label:l==="copy"?n:r,disabled:N,"aria-disabled":N})}):m.jsx(Ss,{onClick:t,label:l==="copy"?n:r})]})]}),header:p??k,children:m.jsxs("div",{className:"bg-layer-2 h-full flex flex-col",children:[b&&m.jsx("div",{className:"px-4 pt-4",children:m.jsx(Wp,{...b})}),m.jsx("div",{className:"flex-1 min-h-0",children:m.jsx(hw,{...S,gridClassName:"size-full",className:oe(S.className,"bg-layer-2 h-full flex pt-0"),actionsRef:E,path:v,showHiddenFiles:y,onShowHiddenFilesChange:P,treeOptions:{...S.treeOptions,collapsed:w,expandedPaths:new Set([S.rootItem?.path||"/"]),header:S.treeOptions?.header},gridOptions:{...S.gridOptions,selectionMode:void 0},navigationPanelOptions:{elementId:"file-manager-destination-search",...S.navigationPanelOptions},onUploadFiles:d,onValidateUpload:u,onPathChange:M,maxFileSize:h})})]})})},gh=e=>Se.createElement("svg",{width:18,height:18,viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Se.createElement("path",{d:"M4.5 15.75V14.25C4.5 13.4544 4.81607 12.6913 5.37868 12.1287C5.94129 11.5661 6.70435 11.25 7.5 11.25H9.75M15.75 12.75L12 16.5M12 16.5V13.125M12 16.5H15.375M6 5.25C6 6.04565 6.31607 6.80871 6.87868 7.37132C7.44129 7.93393 8.20435 8.25 9 8.25C9.79565 8.25 10.5587 7.93393 11.1213 7.37132C11.6839 6.80871 12 6.04565 12 5.25C12 4.45435 11.6839 3.69129 11.1213 3.12868C10.5587 2.56607 9.79565 2.25 9 2.25C8.20435 2.25 7.44129 2.56607 6.87868 3.12868C6.31607 3.69129 6 4.45435 6 5.25Z",stroke:"#7F8792",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})),M7=({selectedFiles:e,actionLabels:t,onDuplicate:s,onCopy:o,onMove:i,onDownload:n,onUnshare:r,onRemoveAccess:a,onDelete:l,getCurrentFolderPath:c,sharedWithMeIds:d,sharedByMePaths:u,onClearSelection:h,forbiddenSymbolsRegExp:p})=>g.useMemo(()=>{const f=[],C=Array.from(e.values());if(!C.length||!t)return f;const v=pl(p),w=v?C.some(b=>v.test(b.name)):!1;if(t[K.Move]&&!w&&f.push({key:K.Move,label:t[K.Move],title:t[K.Move],icon:m.jsx(uh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>i(C)}),t[K.Copy]&&!w&&f.push({key:K.Copy,label:t[K.Copy],title:t[K.Copy],icon:m.jsx(dh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>o(C)}),t[K.Duplicate]&&!w&&f.push({key:K.Duplicate,label:t[K.Duplicate],title:t[K.Duplicate],icon:m.jsx(V.IconCopy,{...Z,className:"text-secondary"}),onClick:()=>s(C)}),t[K.Delete]){const b=C.some(S=>S.permissions&&!S.permissions.includes(Ko.WRITE));f.push({key:K.Delete,label:t[K.Delete],title:t[K.Delete],icon:m.jsx(V.IconTrashX,{...Z,className:"text-secondary"}),disabled:b,tooltip:b?"Selected items contain item which can not be deleted":void 0,onClick:()=>{const S=c();l(C,S)}})}if(t[K.Download]&&!w&&f.push({key:K.Download,label:t[K.Download],title:t[K.Download],icon:m.jsx(V.IconDownload,{...Z,className:"text-secondary"}),onClick:()=>n(C)}),t[K.Unshare]&&r){const b=C.some(S=>!d?.includes(S.path));f.push({key:K.Unshare,label:t[K.Unshare],title:t[K.Unshare],disabled:b,icon:m.jsx(gh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>{r(C),h()}})}if(t[K.RemoveAccess]&&a){const b=C.some(S=>!u?.has(S.path));f.push({key:K.RemoveAccess,label:t[K.RemoveAccess],title:t[K.RemoveAccess],disabled:b,icon:m.jsx(V.IconUserX,{size:Z.size,className:"text-secondary"}),onClick:()=>{a(C),h()}})}return f},[e,t,r,a,i,o,s,c,l,n,d,h,u,p]),I7=({actionLabels:e,onDuplicate:t,onCopy:s,onMove:o,onDownload:i,onRename:n,onDelete:r,onInfo:a,onUnshare:l,onRemoveAccess:c,sharedWithMeIds:d,sharedByMePaths:u,onAddSibling:h,onAddChild:p,onManagePermissions:f,onPreview:C,previewExtensions:v,isRenameFileAvailable:w=!0,isDuplicateFolderAvailable:b=!0,forbiddenSymbolsRegExp:S})=>g.useMemo(()=>y=>{const x=[];if(!e)return x;const F=pl(S)?.test(y.name);e[K.AddSibling]&&typeof h=="function"&&y.nodeType===be.FOLDER&&x.push({key:"addSibling",label:e[K.AddSibling],icon:m.jsx(Jv,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>h(y)}),e[K.AddChild]&&typeof p=="function"&&y.nodeType===be.FOLDER&&!F&&x.push({key:"addChild",label:e[K.AddChild],icon:m.jsx(Qv,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>p(y)},{key:"divider",type:Vi.Divider});const R=y.nodeType===be.ITEM||y.nodeType===be.FOLDER&&b;e[K.Duplicate]&&R&&!F&&x.push({key:K.Duplicate,label:e[K.Duplicate],icon:m.jsx(V.IconCopy,{...Z,className:"text-secondary"}),onClick:()=>t(y)}),e[K.Copy]&&!F&&x.push({key:K.Copy,label:e[K.Copy],icon:m.jsx(dh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>s(y)}),e[K.Move]&&!F&&x.push({key:K.Move,label:e[K.Move],icon:m.jsx(uh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>o(y)}),e[K.Download]&&!F&&x.push({key:K.Download,label:e[K.Download],icon:m.jsx(V.IconDownload,{...Z,className:"text-secondary"}),onClick:()=>i(y)}),e[K.ManagePermissions]&&typeof f=="function"&&y.nodeType===be.FOLDER&&!F&&x.push({key:K.ManagePermissions,label:e[K.ManagePermissions],icon:m.jsx(V.IconExternalLink,{...Z,className:"text-secondary"}),onClick:()=>f?.(y.path)});const E=y.name.split("."),D=E.length>1?E[E.length-1]:"",P=D&&v?.includes(`.${D}`);e[K.Preview]&&typeof C=="function"&&y.nodeType===be.ITEM&&P&&!F&&x.push({key:K.Preview,label:e[K.Preview],icon:m.jsx(V.IconEye,{...Z,className:"text-secondary"}),onClick:()=>C?.(y.path)});const T=!y.permissions||y.permissions.includes(Ko.WRITE);e[K.Delete]&&T&&x.push({key:K.Delete,label:e[K.Delete],icon:m.jsx(V.IconTrashX,{...Z,className:"text-secondary"}),onClick:()=>r(y,y.parentPath??"")});const M=y.nodeType===be.FOLDER||y.nodeType===be.ITEM&&w;return e[K.Rename]&&M&&x.push({key:K.Rename,label:e[K.Rename],icon:m.jsx(V.IconPencilMinus,{...Z,className:"text-secondary"}),onClick:()=>n(y.path)}),e[K.Info]&&y.nodeType===be.ITEM&&!F&&x.push({key:K.Info,label:e[K.Info],icon:m.jsx(V.IconInfoCircle,{...Z,className:"text-secondary"}),onClick:()=>a(y)}),e[K.Unshare]&&d?.includes(y.path)&&x.push({key:K.Unshare,label:e[K.Unshare],icon:m.jsx(gh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>l(y)}),e[K.RemoveAccess]&&u?.has(y.path)&&c&&x.push({key:K.RemoveAccess,label:e[K.RemoveAccess],icon:m.jsx(V.IconUserX,{size:Z.size,className:"text-secondary"}),onClick:()=>c(y)}),x},[e,h,p,t,s,o,i,r,n,a,l,c,d,u,f,C,v,w,b,S]),Pp=({open:e,onClose:t,onReplace:s,onDuplicate:o,onDecideForEach:i,conflictingFiles:n,singleFileTitle:r="Replace Or Duplicate Item",multipleFilesTitle:a="Replace Or Duplicate Items",message:l,actionLabels:c,strategyLabels:d,confirmLabel:u="Confirm",cancelLabel:h="Cancel",nameColumnLabel:p="Name",actionColumnLabel:f="Action"})=>{const C=n.length===1,v=C?n[0]?.name:"",w=c?.[it.Replace]??"Replace",b=c?.[it.Duplicate]??"Duplicate",S=c?.[it.Cancel]??"Cancel",y=d?.[Lt.ReplaceAll]??"Replace all",x=d?.[Lt.DuplicateAll]??"Duplicate all",F=d?.[Lt.DecideForEach]??"Decide for each",[R,E]=g.useState(it.Replace),[D,P]=g.useState(Lt.ReplaceAll),[T,M]=g.useState(new Map(n.map(ne=>[ne.path,it.Replace]))),[k,N]=g.useState(void 0),A=C?r:a,W=m.jsxs(m.Fragment,{children:["Item with the name ",m.jsxs("span",{className:"text-primary",children:['"',v,'"']})," ","already exists in this destination."]}),U=`${n.length} items with the same names already exist in this destination.`,L=l??(C?W:U),de=g.useMemo(()=>[{id:it.Replace,name:w},{id:it.Duplicate,name:b}],[w,b]),H=g.useMemo(()=>n.map(ne=>({id:ne.path,name:ne.name,path:ne.path,nodeType:ne.nodeType??be.ITEM,action:T.get(ne.path)||it.Replace})),[n,T]),te=g.useMemo(()=>[{field:"name",headerName:p,flex:1,minWidth:200,floatingFilter:!1,filter:!1,resizable:!1,cellRenderer:ne=>ne.data?.nodeType===be.FOLDER?m.jsx(sl,{name:ne.data.name,iconSize:Js}):m.jsx(tl,{name:ne.data.name,iconSize:Js})},{field:"action",headerName:f,width:140,suppressSizeToFit:!0,sortable:!1,filter:!1,floatingFilter:!1,resizable:!1,cellRenderer:ne=>{if(!ne.data)return null;const _=[{key:it.Replace,label:w,icon:m.jsx(V.IconCircleFilled,{size:10,className:"text-accent-tertiary"})},{key:it.Duplicate,label:b,icon:m.jsx(V.IconCircleFilled,{size:10,className:"text-accent-secondary"})},{key:it.Cancel,label:S,icon:m.jsx(V.IconCircleFilled,{size:10,className:"text-error"})}],Fe=_.find($=>$.key===ne.data.action),ie=k===ne.data.path;return m.jsx("div",{className:"flex items-center h-full",children:m.jsx(Rt,{trigger:[Ot.Click],open:ie,menu:{items:_,onClick:({key:$})=>{M(q=>{const se=new Map(q);return se.set(ne.data.path,$),se}),N(void 0)}},placement:"bottom-start",matchReferenceWidth:!1,allowedPlacements:["bottom-start","top-start"],onOpenChange:$=>{N($?ne.data.path:void 0)},children:m.jsxs("button",{type:"button",className:"flex items-center gap-2",children:[m.jsxs("span",{className:"flex items-center gap-2",children:[Fe?.icon,Fe?.label??w]}),m.jsx(V.IconChevronDown,{size:mt.SM,className:ue("text-secondary transition-transform",ie&&"rotate-180")})]})})})}}],[p,f,w,b,S,k]),Q=g.useMemo(()=>[{id:Lt.ReplaceAll,name:y},{id:Lt.DuplicateAll,name:x},{id:Lt.DecideForEach,name:F,content:D===Lt.DecideForEach?m.jsx("div",{className:"mt-4",children:m.jsx(sh,{columnDefs:te,rowData:H,getRowId:ne=>ne.id,wrapCustomCellRenderers:!1,alternateOddRowColors:!1,additionalGridOptions:{domLayout:"autoHeight"}})}):void 0}],[y,x,F,D,te,H]),J=g.useCallback(()=>{E(it.Replace),P(Lt.ReplaceAll),M(new Map(n.map(ne=>[ne.path,it.Replace])))},[n]),fe=g.useCallback(()=>{J(),t()},[J,t]),xe=g.useCallback(()=>{if(J(),C)R===it.Replace?s():o();else if(D===Lt.ReplaceAll)s();else if(D===Lt.DuplicateAll)o();else if(D===Lt.DecideForEach&&i){const ne=n.map(_=>({file:_,action:T.get(_.path)||it.Replace}));i(ne)}},[J,C,R,s,o,D,i,n,T]);return m.jsx(qo,{open:e,onClose:fe,size:C?Vt.Sm:Vt.Md,className:ue([!C&&"w-[600px]"]),header:A,dividers:!1,preventKeyboardOnOpen:!0,footer:m.jsxs("div",{className:"flex justify-end gap-3 py-4 px-6 border-t border-tertiary",children:[m.jsx(xs,{onClick:fe,label:h}),m.jsx(Ss,{onClick:xe,label:u})]}),children:m.jsxs("div",{className:"px-6 py-4",children:[m.jsx("p",{className:"text-secondary mb-4 break-words",children:L}),C?m.jsx(va,{elementId:"single-file-conflict",radioButtons:de,activeRadioButton:R,orientation:Io.Column,onChange:ne=>E(ne)}):m.jsx(va,{elementId:"multiple-files-conflict",radioButtons:Q,activeRadioButton:D,orientation:Io.Column,onChange:ne=>P(ne),formItemChildrenClassName:"gap-3"})]})})};function k7(e,t){const s=g.useRef(null),[o,i]=g.useState(!1);return g.useEffect(()=>{if(!s.current)return;const n=new ResizeObserver(([r])=>{const a=r.contentRect.width;i(a<e)});return n.observe(t?.current||s?.current),()=>n.disconnect()},[e,t]),{containerRef:s,isBelowBreakpoint:o}}const A7=({getContextMenuItems:e,isRowDisabled:t,allowedFileTypes:s,maxSelectableFileSize:o,buttonClassName:i})=>{const n=g.useRef(e);g.useEffect(()=>{n.current=e},[e]);const r=g.useCallback(l=>{if(!l.data||t(l.data,s,o))return null;const d=l.data?n.current?.(l.data)??[]:[];return d.length?m.jsx(Rt,{placement:"bottom-start",allowedPlacements:["top-start","top-end","bottom-start"],menu:{items:d},className:oe("sticky right-0",i),children:m.jsx(Ye,{className:"text-secondary mx-2 flex flex-row gap-2 hover:text-accent-primary cursor-default",icon:m.jsx(V.IconDotsVertical,{...Z})})}):null},[s,o,i,t]);return{actionsColumnDef:g.useMemo(()=>({colId:"__actions",headerName:"",width:44,minWidth:44,maxWidth:44,suppressSizeToFit:!0,sortable:!1,resizable:!1,filter:!1,floatingFilter:!1,cellRenderer:r}),[r])}},L7=({onRename:e})=>{const[t,s]=g.useState(ki.Grid),o=g.useCallback(n=>{e(n),s(ki.Grid)},[e]),i=g.useCallback(n=>{e(n),s(ki.Tree)},[e]);return{renameTriggerView:t,onGridRename:o,onTreeRename:i}},O7=100,Fn=16,hs="text-secondary",ea="text-primary min-w-0",N7="text-primary break-words min-w-0",En="bg-layer-2",H7=({open:e,onClose:t,fileMetadata:s,loading:o=!1,header:i="Information",nameLabel:n="Name:",pathLabel:r="Path:",modifiedDateLabel:a="Modified Date:",sizeLabel:l="Size:",authorLabel:c="Author:",dateLocale:d="en-US",dateOptions:u})=>m.jsx(qo,{open:e,onClose:t,size:Vt.Sm,header:i,dividers:!1,children:m.jsx("div",{className:"px-6 py-4",children:m.jsx("div",{className:"grid gap-x-4 gap-y-4 items-center dial-small",style:{gridTemplateColumns:`${O7}px 1fr`},children:o?m.jsxs(m.Fragment,{children:[m.jsx("div",{className:hs,children:n}),m.jsx(fi,{variant:Yt.Text,width:"100%",height:Fn,className:En}),m.jsx("div",{className:hs,children:a}),m.jsx(fi,{variant:Yt.Text,width:"90%",height:Fn,className:En}),m.jsx("div",{className:hs,children:l}),m.jsx(fi,{variant:Yt.Text,width:"60%",height:Fn,className:En}),m.jsx("div",{className:hs,children:c}),m.jsx(fi,{variant:Yt.Text,width:"80%",height:Fn,className:En}),m.jsx("div",{className:hs,children:r}),m.jsx(fi,{variant:Yt.Text,width:"70%",height:Fn,className:En})]}):s?m.jsxs(m.Fragment,{children:[m.jsx("div",{className:hs,children:n}),m.jsx("div",{className:ea,children:m.jsx(ut,{text:s.name})}),m.jsx("div",{className:hs,children:a}),m.jsx("div",{className:ea,children:m.jsx(ut,{text:UL(s.updatedAt,d,u)})}),m.jsx("div",{className:hs,children:l}),m.jsx("div",{className:ea,children:m.jsx(ut,{text:nr(s.contentLength)})}),m.jsx("div",{className:hs,children:c}),m.jsx("div",{className:ea,children:m.jsx(ut,{text:s.author||"—"})}),m.jsx("div",{className:hs,children:r}),m.jsx("div",{className:N7,children:decodeURIComponent(s.path)})]}):null})})});function ph(e){if(!e)return null;if(e instanceof Date)return isFinite(e.getTime())?e:null;if(typeof e=="number"){const t=new Date(e);return isFinite(t.getTime())?t:null}if(typeof e=="string"){const t=e.trim();if(/^-?\d+$/.test(t)){const o=Number(t);return ph(o)}const s=new Date(t);return isFinite(s.getTime())?s:null}return null}const lw=({value:e,locale:t=xv,options:s=Rv,emptyPlaceholder:o,className:i,hideTooltip:n=!1})=>{const r=ph(e),a=g.useMemo(()=>r?new Intl.DateTimeFormat(t,s).format(r):o,[r,o,t,s]),l=r?r.toISOString():void 0;return m.jsx(ut,{text:l?m.jsx("time",{dateTime:l,children:a}):m.jsx("span",{children:a}),className:ue(c8,i),hideTooltip:n})},G7=({id:e,name:t,nodeType:s,size:o,updatedAt:i,dateLocale:n,dateOptions:r,shared:a,sharedIndicatorClassName:l,hideTooltip:c=!1,forbiddenSymbolsRegExp:d,forbiddenSymbolsTooltip:u})=>m.jsx("div",{className:"flex",children:m.jsx("div",{className:"flex flex-1 min-w-0",children:m.jsx(Ka,{type:s===be.FOLDER?zt.Folder:zt.File,name:t,elementId:e,shared:a,iconSize:Js,sharedIndicatorClassName:l,hideTooltip:c,forbiddenSymbolsRegExp:d,forbiddenSymbolsTooltip:u,details:m.jsxs("div",{className:"flex items-center gap-1 dial-tiny text-secondary",children:[m.jsx("span",{children:s===be.ITEM?nr(o):""}),i&&o&&m.jsx(V.IconCircleFilled,{size:2,className:"text-secondary"}),i?m.jsx("span",{children:m.jsx(lw,{value:i,locale:n?.toString(),options:r,className:"dial-tiny text-secondary",hideTooltip:c})}):null]})})})}),cw=e=>(t,s,o)=>({colId:rt.Name,field:"name",headerName:e,flex:1,minWidth:200,cellRenderer:i=>{const n=i.data.nodeType,{saveFolderCreation:r,validateFolderName:a,cancelFolderCreation:l,newFolderTempId:c,sharedByMePaths:d,selectedPaths:u,disabledRowIds:h}=i.context,p=d?.has(i.data.path),f=u?.has(i.data.path),C=h?.has(i.data.path)??!1,v=oe(["group-hover/grid-row:bg-accent-primary-alpha",f&&"bg-accent-primary-alpha"]);if(i.data?.isTemporary&&i.data.id===c)return m.jsx(Ka,{name:"",type:zt.Folder,elementId:`new-folder-${i.data.id}`,editing:!0,shared:p,sharedIndicatorClassName:v,iconSize:Js,validate:a,onSave:r,onCancel:l,inputContainerClassName:oe(["!h-9",o&&n===be.ITEM&&"!h-10"])});const{renameTriggerView:w,renamedPath:b,renamedItem:S,getDisplayName:y,onRenameValidate:x,onRenameSave:F,onRenameCancel:R}=i.context;if(w===ki.Grid&&b===i.data?.path&&S&&i.data){const P=y(S);return m.jsx(Ka,{name:P,type:n===be.FOLDER?zt.Folder:zt.File,fileExtension:S.name.split(".").pop(),elementId:`rename-${i.data.id}`,editing:!0,shared:p,sharedIndicatorClassName:v,iconSize:Js,validate:T=>x(T,S),onSave:F,onCancel:R,inputContainerClassName:oe(["!h-9",o&&n===be.ITEM&&"!h-10"]),forbiddenSymbolsRegExp:i.context.forbiddenSymbolsRegExp})}if(o)return m.jsx(G7,{id:i.data.id,name:i.data.name,nodeType:n,size:i.data.size,shared:p,sharedIndicatorClassName:v,updatedAt:i.data.updatedAt,dateLocale:t,dateOptions:s,hideTooltip:C,forbiddenSymbolsRegExp:i.context.forbiddenSymbolsRegExp,forbiddenSymbolsTooltip:i.context.forbiddenSymbolsTooltip});const D=lh({name:i.data.name,isFolder:n===be.FOLDER},i.context.forbiddenSymbolsRegExp,i.context.forbiddenSymbolsTooltip);return n===be.FOLDER?m.jsx(sl,{name:i.data.name,shared:p,sharedIndicatorClassName:v,iconSize:Js,hideTooltip:C,isInvalidName:!!D,tooltipContent:D}):m.jsx(tl,{name:i.data.name,shared:p,sharedIndicatorClassName:v,iconSize:Js,hideTooltip:C,isInvalidName:!!D,tooltipContent:D})}}),dw=e=>(t,s)=>({colId:rt.UpdatedAt,field:"updatedAt",headerName:e,width:168,suppressSizeToFit:!0,cellRenderer:o=>{const i=o.context?.disabledRowIds?.has(o.data?.path)??!1;return m.jsx(lw,{...o,hideTooltip:i})},cellRendererParams:{locale:t,options:s},filterValueGetter:o=>{const i=o.data[o.colDef.field||""],n=ph(i);return n?new Intl.DateTimeFormat(t||xv,s||Rv).format(n):""}}),uw=e=>({colId:rt.Size,field:"size",headerName:e,width:120,suppressSizeToFit:!0,cellRenderer:t=>t.data.nodeType===be.ITEM?nr(t.data.contentLength):"",filterValueGetter:t=>t.data.nodeType===be.ITEM?nr(t.data.contentLength):""}),B7=e=>{const t=e.event;if(!(t?.target??null)?.closest("input")||!t)return!1;switch(t.key){case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"ArrowDown":case"Home":case"End":return!0;default:return!1}};function V7({userColumnDefs:e,filterable:t,dateLocale:s,dateOptions:o,effectiveVisibleColumns:i,isCompactView:n,hasActions:r,actionsColumnDef:a,rootItemLabel:l,rootItemPath:c}){const d=g.useMemo(()=>[cw("Name")(s,o,n),{colId:rt.Path,field:"path",headerName:"Path",flex:1,minWidth:200,cellRenderer:h=>{const p=h.context?.disabledRowIds?.has(h.data.path)??!1;if(!c||!l)return m.jsx(ut,{text:h.data.path,hideTooltip:p});const f=h.data.path.replace(c,l);return m.jsx(ut,{text:f,hideTooltip:p})}},dw("Modified Date")(s,o),uw("Size"),{colId:rt.Author,field:"author",headerName:"Author",width:200,suppressSizeToFit:!0,cellRenderer:h=>h.data.author},{colId:rt.Owner,field:"owner",headerName:"Owner",width:200,suppressSizeToFit:!0,cellRenderer:h=>h.data.owner}],[s,o,n,l,c]);return{columnDefs:g.useMemo(()=>{const h=e?.map(C=>typeof C=="function"?C(s,o,n):C);let p=h??d;h||(p=p.filter(C=>C.colId&&i.includes(C.colId))),r&&(n&&(p=p.slice(0,1)),p.push(a));const f=C=>C.colId===rt.Name;return p.map(C=>{const v={...C,filter:t?C.filter:!1,floatingFilter:t?C.floatingFilter:!1};return f(C)&&!C.suppressKeyboardEvent&&(v.suppressKeyboardEvent=B7),v})},[a,s,o,d,i,t,r,n,e])}}const hw=e=>m.jsx(nw,{...e,children:m.jsx(z7,{})}),z7=()=>{const{managerLabel:e,className:t,items:s,rootItem:o,filesLoading:i,treeOptions:n,showNavigationPanel:r,navigationPanelOptions:a,gridOptions:l,toolbarOptions:c,bulkActionsToolbarOptions:d,deleteConfirmationOptions:u,destinationFolderPopupOptions:h,conflictResolutionPopupOptions:p,compactViewWidthBreakpoint:f=zL,customBreakpointRef:C,sharedByMePaths:v,allowedFileTypes:w,maxSelectableFileSize:b,areHiddenFilesVisible:S,toggleHiddenFilesVisibility:y,isTreeCollapsed:x,toggleTreeCollapse:F,currentPath:R,gridRows:E,selectedPaths:D,selectedFiles:P,clearSelection:T,setSelectedPaths:M,effectiveSearchValue:k,handleBreadcrumbItemClick:N,handleSearchChange:A,handleTreeItemClick:W,handleTableRowClick:U,handleSelectionClick:L,onGridApiChange:de,handleOpenDestinationFolderPopup:H,handleCloseDestinationFolderPopup:te,openDestinationFolderPopup:Q,destinationFolderMode:J,handleSetCopiedFiles:fe,handleSetMovedFiles:xe,handleDuplicate:ne,handleCopyTo:_,handleMoveTo:Fe,handleAddSibling:ie,handleAddChild:$,handleDownloadFiles:q,openDeleteConfirmation:se,closeDeleteConfirmation:G,confirmDelete:pe,deleteConfirmationOpen:le,itemsToDelete:re,renamedPath:ve,renamedItem:Re,onRename:Oe,onRenameSave:me,onRenameCancel:Pe,onRenameValidate:_e,forbiddenSymbolsRegExp:Ge,forbiddenSymbolsTooltip:We,getDisplayName:_t,isDragging:jt,isDraggingOverWindow:as,handleDragEnter:B,handleDragLeave:Ee,handleDragOver:It,handleDrop:Xi,onUploadFiles:fl,onValidateUpload:ml,maxFileSize:Yo,newActions:Qi,isNewButtonVisible:Zo,isNewButtonDisabled:vr,newFolderTempId:Cl,cancelFolderCreation:vl,saveFolderCreation:wl,validateFolderName:Ji,startFolderCreation:ls,conflictingFiles:bl,conflictResolutionOpen:Sl,handleConflictReplace:gt,handleConflictDuplicate:yl,handleConflictCancel:Fs,handleConflictDecideForEach:en,uploadConflictingFiles:tn,uploadConflictResolutionOpen:sn,handleUploadConflictReplace:xl,handleUploadConflictDuplicate:Rl,handleUploadConflictCancel:Fl,handleUploadConflictDecideForEach:on,openMetadataPopup:Xo,fileMetadataPopupOptions:cs,isMetadataPopupOpen:El,selectedFileForMetadata:Dl,closeMetadataPopup:Pl,onUnshareFiles:Qo,onRemoveFilesAccess:Jo,actionsRef:Tl,searchInProgress:Ml,isSearchMode:nn,emptyStateIcon:wr,emptyStateTitle:br="You don't have any files",emptyStateDescription:ei="Upload or drag and drop files",sharedWithMeIds:ti,onFolderPopupPathChange:rn,onManagePermissions:si,onPreview:Il,previewExtensions:Ft,isRenameFileAvailable:Sr,isDuplicateFolderAvailable:st,getDisabledTooltip:an,fileTooLargeTooltip:yr,unsupportedFileTypeTooltip:xr,gridClassName:kl,nonClickableTableColumns:ln}=rw(),{width:cn=OL,header:Rr=NL,containerClassName:Fr=kL,additionalButtons:Er,...Dr}=n??{},[oi,Pr]=g.useState(cn),{renameTriggerView:dn,onGridRename:Al,onTreeRename:Tr}=L7({onRename:Oe}),un=g.useRef(null),Ll=j=>{un.current===null&&(un.current=requestAnimationFrame(()=>{Pr(j),un.current=null}))},{columnDefs:Ol,filterable:Nl=!0,dateLocale:Hl,dateOptions:Gl,selectionMode:Bl,wrapCustomCellRenderers:Vl,visibleColumns:Mr=WL,allowDisabledContextMenu:hn=!1,...ii}=l??{},{containerRef:zl,isBelowBreakpoint:kt}=k7(f,C),Wl=g.useMemo(()=>nn?[rt.Name,rt.Path,rt.Actions]:Mr,[nn,Mr]),ni=g.useCallback((j,Le,He)=>{if(j.nodeType===be.FOLDER)return;const Et=!j.contentLength||He==null||j.contentLength<=He;if(!(!j.contentType||Yv(Le,j.contentType,j.name)))return xr??(Le?.length?`Unsupported file type. Supported types: ${Le.join(", ")}.`:"Unsupported file type.");if(!Et)return yr??`File is too large. Maximum size: ${nr(He)}.`},[yr,xr]),uo=g.useCallback((j,Le,He)=>!!ni(j,Le,He),[ni]),ri=g.useMemo(()=>{const j=new Set;for(const Le of E)uo(Le,w,b)&&j.add(Le.path);return j},[w,b,E,uo]),[ds,ho]=g.useState(null),[Ws,gn]=g.useState(null);g.useEffect(()=>{const j=()=>{ho(null),gn(null)};return window.addEventListener("scroll",j,!0),()=>window.removeEventListener("scroll",j,!0)},[]);const _l=g.useCallback(j=>{const Le=j.target.closest(".ag-row");if(!Le){ds&&ho(null);return}const He=Le.getAttribute("row-id");He&&ri.has(He)?ds!==He&&(ho(He),gn(Le.getBoundingClientRect())):ds&&ho(null)},[ri,ds]),jl=g.useCallback(()=>{ho(null),gn(null)},[]),go=g.useMemo(()=>{if(ds)return E.find(j=>j.path===ds)},[ds,E]),pn=g.useMemo(()=>{if(go)return an&&go.folderId?an(go):ni(go,w,b)},[go,an,ni,w,b]),Ir=g.useCallback(j=>{const Le=[],He=[],Et=!j.parentPath,_s=Ge?.test(j.name);return n?.actionLabels&&(n.actionLabels[K.AddSibling]&&typeof ie=="function"&&j.nodeType===be.FOLDER&&!Et&&Le.push({key:"addSibling",label:n.actionLabels[K.AddSibling],icon:m.jsx(Jv,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>ie([j])}),n.actionLabels[K.AddChild]&&typeof $=="function"&&j.nodeType===be.FOLDER&&!_s&&Le.push({key:"addChild",label:n.actionLabels[K.AddChild],icon:m.jsx(Qv,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>$([j])}),n.actionLabels[K.Duplicate]&&!Et&&!_s&&He.push({key:"duplicate",label:n.actionLabels[K.Duplicate],icon:m.jsx(V.IconCopy,{...Z,className:"text-secondary"}),onClick:()=>ne([j])}),n.actionLabels[K.Copy]&&!Et&&!_s&&He.push({key:nt.Copy,label:n.actionLabels[K.Copy],icon:m.jsx(dh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>{fe([j]),H(nt.Copy)}}),n.actionLabels[K.Move]&&!Et&&!_s&&He.push({key:nt.Move,label:n.actionLabels[K.Move],icon:m.jsx(uh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>{xe([j]),H(nt.Move)}}),n.actionLabels[K.Download]&&!Et&&!_s&&He.push({key:"download",label:n.actionLabels[K.Download],icon:m.jsx(V.IconDownload,{...Z,className:"text-secondary"}),onClick:()=>q([j])}),n.actionLabels[K.Rename]&&!Et&&He.push({key:"rename",label:n.actionLabels[K.Rename],icon:m.jsx(V.IconPencilMinus,{...Z,className:"text-secondary"}),onClick:()=>Tr(j.path)}),n.actionLabels[K.Unshare]&&ti?.includes(j.path)&&!Et&&He.push({key:"unshare",label:n.actionLabels[K.Unshare],icon:m.jsx(gh,{width:Z.size,height:Z.size,className:"text-secondary"}),onClick:()=>Qo?.([j])}),n.actionLabels[K.RemoveAccess]&&v?.has(j.path)&&!Et&&He.push({key:K.RemoveAccess,label:n.actionLabels[K.RemoveAccess],icon:m.jsx(V.IconUserX,{size:Z.size,className:"text-secondary"}),onClick:()=>Jo?.([j])}),n.actionLabels[K.ManagePermissions]&&typeof si=="function"&&j.nodeType===be.FOLDER&&!Et&&He.push({key:K.ManagePermissions,label:n.actionLabels[K.ManagePermissions],icon:m.jsx(V.IconExternalLink,{...Z,className:"text-secondary"}),onClick:()=>si?.(j.path)}),n.actionLabels[K.Delete]&&j.permissions?.includes(Ko.WRITE)&&!Et&&He.push({key:"delete",label:n.actionLabels[K.Delete],icon:m.jsx(V.IconTrashX,{...Z,className:"text-secondary"}),onClick:()=>se([j],j.parentPath??"")})),Le.length?He.length===0?Le:Le.length===0?He:[...Le,{key:"divider",type:Vi.Divider},...He]:He},[n?.actionLabels,ie,Ge,$,si,ne,fe,H,xe,q,Tr,Qo,Jo,ti,v,se]),Ul=g.useMemo(()=>{const j=new Set;return P.forEach((Le,He)=>j.add(He)),j},[P]),$l=g.useCallback((j,Le)=>{M(j),L?.(Le)},[L,M]),fn=M7({selectedFiles:P,actionLabels:d?.actionLabels,onDuplicate:ne,onCopy:j=>{fe(j),H(nt.Copy)},onMove:j=>{xe(j),H(nt.Move)},onDownload:q,onDelete:se,onUnshare:Qo,onRemoveAccess:Jo,getCurrentFolderPath:()=>R??"/",sharedWithMeIds:ti,sharedByMePaths:v,onClearSelection:T,forbiddenSymbolsRegExp:Ge}),ql=g.useCallback(()=>c&&D.size===0?m.jsxs("div",{className:yp,role:"toolbar","aria-label":"File Manager Toolbar",children:[e,m.jsx(t7,{...c,areHiddenFilesVisible:S,onToggleHiddenFiles:y,isNewButtonVisible:Zo,isNewButtonDisabled:vr,newButtonDropdownItems:Qi})]}):D.size>0&&d?m.jsx("div",{className:yp,role:"toolbar","aria-label":"File Manager Toolbar",children:m.jsx(n7,{...d,selectedCount:D.size,onClearSelection:T,actions:fn})}):null,[d,D,T,fn,S,y,c,Zo,vr,Qi,e]);g.useImperativeHandle(Tl,()=>({createFolder:ls}),[ls]);const Kl=g.useCallback(()=>kt?null:m.jsx("aside",{role:"region","aria-label":"File Manager Tree Navigation",className:"min-h-0 min-w-0 h-full flex-none",children:m.jsx(of,{defaultWidth:oi,width:oi,onResizeStop:Pr,onResize:Ll,minWidth:GL,maxWidth:BL,enabled:!x,children:m.jsx(_p,{width:oi,title:Rr,containerClassName:Fr,titleClassName:"dial-body-text text-primary",additionalButtons:Er,isOpened:!x,onToggle:F,children:m.jsx(ZL,{...Dr,items:s,rootItemPath:o?.path,rootItemLabel:o?.label,selectedPath:R,sharedByMePaths:v,forbiddenSymbolsRegExp:Ge,forbiddenSymbolsTooltip:We,onItemClick:W,areHiddenFilesVisible:S,getContextMenuItems:Ir,renamedPath:dn===ki.Tree?ve:void 0,onRenameSave:me,onRenameCancel:Pe,onRenameValidate:_e})})})}),[kt,oi,x,Rr,Fr,Er,F,Dr,s,o?.path,o?.label,R,v,Ge,We,W,S,Ir,dn,ve,me,Pe,_e]),kr=I7({actionLabels:l?.actionLabels,onDuplicate:j=>ne([j]),onCopy:j=>{fe([j]),H(nt.Copy)},onMove:j=>{xe([j]),H(nt.Move)},onDownload:j=>q([j]),onRename:Al,onDelete:(j,Le)=>se([j],Le),onInfo:j=>Xo(j),onUnshare:j=>Qo?.([j]),onRemoveAccess:j=>Jo?.([j]),sharedWithMeIds:ti,sharedByMePaths:v,onAddChild:j=>$?.([j]),onAddSibling:j=>ie?.([j]),onManagePermissions:j=>si?.(j),onPreview:j=>Il?.(j),previewExtensions:Ft,isRenameFileAvailable:Sr,isDuplicateFolderAvailable:st,forbiddenSymbolsRegExp:Ge}),Ar=g.useCallback(j=>{const Le=Vo(s,j.path);return Le?kr(Le):[]},[s,kr]),mn=g.useCallback((j,Le,He)=>hn?!1:uo(j,Le,He),[hn,uo]),{actionsColumnDef:po}=A7({getContextMenuItems:Ar,isRowDisabled:mn,allowedFileTypes:w,buttonClassName:kt?"":LL}),{columnDefs:Cn}=V7({userColumnDefs:Ol,filterable:Nl,dateLocale:Hl,dateOptions:Gl,effectiveVisibleColumns:Wl,isCompactView:kt,hasActions:!!l?.actionLabels,actionsColumnDef:po,rootItemLabel:o?.label,rootItemPath:o?.path}),Yl=g.useCallback(j=>{j.colDef.colId==="ag-Grid-SelectionColumn"||j.colDef.colId===rt.Actions||ve&&j.data?.path===ve||j.data?.isTemporary||ln&&ln.includes(j.colDef.colId)||j.data&&U(j.data)},[ve,U,ln]),Zl=g.useCallback(()=>m.jsx(cr,{title:br,description:ei,descriptionClassName:"text-sm",containerClassName:"gap-3 size-full bg-layer-2 border rounded-[4px] border-primary",titleClassName:"mt-2 !text-lg",icon:wr||m.jsx(V.IconFileDescription,{size:100,stroke:.5,className:"text-secondary"})}),[ei,wr,br]);return m.jsxs("section",{ref:zl,className:oe(TL,{"gap-3 pt-4":d&&D.size>0,"gap-4 p-3 pt-4":kt,"gap-2 pt-2":kt&&d&&D.size>0},t),children:[ql(),m.jsxs("div",{className:oe(ML,kl),children:[Kl(),m.jsxs("div",{className:oe(IL,{"gap-3":kt}),children:[r&&m.jsx(e7,{...a??{},makeHref:j=>j.join("/"),path:R,onItemClick:N,rootItemPath:o?.path,rootItemLabel:o?.label,value:k,onSearchChange:A,isCompactView:kt,labelClassName:"dial-tiny"}),m.jsxs("section",{role:"region","aria-label":"File Manager Grid View",className:oe(AL),onMouseMove:_l,onMouseLeave:jl,onDragEnter:B,onDragLeave:Ee,onDragOver:It,onDrop:Xi,children:[E.length===0&&!nn&&!i?Zl():m.jsx(sh,{columnDefs:Cn,rowData:E,getRowId:j=>j.path,loading:i||Ml,getContextMenuItems:Ar,withoutHeaderBorders:kt,selectionOnHover:!kt,onGridApiChange:de,className:ue(jt?"border border-dashed border-accent-primary":"",as&&!jt?"border border-dashed border-primary":""),...ii,selectionMode:Bl,wrapCustomCellRenderers:Vl,additionalGridOptions:{...ii.additionalGridOptions,onCellClicked:Yl,headerHeight:Qc,rowHeight:Qc,rowClass:"group/grid-row",defaultColDef:{...ii.additionalGridOptions?.defaultColDef,floatingFilter:a?.searchable?!1:ii.additionalGridOptions?.defaultColDef?.floatingFilter},...kt?{getRowHeight:j=>j.data?.nodeType===be.FOLDER?Qc:VL}:{},context:{cancelFolderCreation:vl,saveFolderCreation:wl,getDisplayName:_t,onRenameCancel:Pe,onRenameSave:me,onRenameValidate:_e,renameTriggerView:dn,validateFolderName:Ji,renamedItem:Re,renamedPath:ve,newFolderTempId:Cl,sharedByMePaths:v,selectedPaths:D,disabledRowIds:ri,forbiddenSymbolsRegExp:Ge,forbiddenSymbolsTooltip:We}},selectedRowIds:Ul,onSelectionChange:$l,wrapperBorder:!jt&&!as,disabledRowIds:ri,allowDisabledContextMenu:hn}),pn&&Ws&&m.jsxs(Kd,{open:!0,placement:"top",children:[m.jsx(Zd,{asChild:!0,children:m.jsx("div",{className:ue("fixed z-[-1]",pn&&"pointer-events-none"),style:{top:Ws.top,left:Ws.left,width:Ws.width,height:Ws.height}})}),m.jsx(Yd,{className:"max-w-[300px] rounded border border-ui-outline-primary bg-ui-popover px-3 py-1.5 text-center text-primary shadow-md fill-ui-popover",children:pn})]})]})]})]}),m.jsx(T7,{...u,open:le,itemsToDelete:re,onClose:G,onConfirm:pe}),m.jsx(aw,{...h,open:Q,onClose:te,onConfirm:()=>{const j=h?.destinationFolderPath??"/";J===nt.Copy?_(j):Fe(j),te()},mode:J,items:s,rootItem:o,gridOptions:{columnDefs:Cn.filter(j=>j.colId!==rt.Actions),loading:i},onUploadFiles:fl,onValidateUpload:ml,maxFileSize:Yo,path:h?.destinationFolderPath??h?.sourceFolder??R,onPathChange:j=>{h?.setDestinationFolderPath?.(j)},sourceFolder:h?.sourceFolder??R,treeOptions:{header:n?.header},onFolderPopupPathChange:rn}),m.jsx(Pp,{...p,open:Sl,onClose:Fs,onReplace:gt,onDuplicate:yl,onDecideForEach:en,conflictingFiles:bl}),m.jsx(Pp,{...p,open:sn,onClose:Fl,onReplace:xl,onDuplicate:Rl,onDecideForEach:on,conflictingFiles:tn}),m.jsx(H7,{open:El,onClose:Pl,fileMetadata:cs?.fileMetadata??Dl,loading:cs?.loading,header:cs?.header,nameLabel:cs?.nameLabel,pathLabel:cs?.pathLabel,modifiedDateLabel:cs?.modifiedDateLabel,sizeLabel:cs?.sizeLabel,authorLabel:cs?.authorLabel,dateLocale:l?.dateLocale,dateOptions:l?.dateOptions})]})},W7=(e,t=bi.MyFiles)=>{const s=Object.values(bi).includes(t)?t:bi.MyFiles,[o,i]=g.useState(s),n=a=>{i(a)},r=g.useMemo(()=>{if(e)return Object.values(bi).map(a=>({id:a,label:e?.[a]||a.replace("_"," ")}))},[e]);return{activeTab:o,handleTabChange:n,tabs:r}},_7="application/octet-stream";function j7(e,t){if(!e||e.length===0)return[];const s=e.find(l=>l.parentPath===""&&l.nodeType==="FOLDER");if(!s)return[];const o=s.path||s.url||"",i=ed(o,!0),n=e.filter(l=>l!==s).map(l=>{const c=l.path||l.url||"",d=U7(l.nodeType),u=d===be.FOLDER,h=ed(c,u);let p;return l.parentPath===null||l.parentPath===void 0?p=i:l.parentPath===""?p="":p=ed(l.parentPath,!0),{...l,originalPath:c,path:h,parentPath:p,nodeType:d}}),r=new Map;n.forEach(l=>{const c={...l,id:l.originalPath,name:l.name,path:l.path,parentPath:l.parentPath,nodeType:l.nodeType,resourceType:$7(l.resourceType),folderId:t,updatedAt:l.updatedAt?new Date(l.updatedAt).toISOString():new Date().toISOString(),items:l.nodeType===be.FOLDER?[]:void 0};l.nodeType===be.ITEM&&(c.extension=q7(l.name),c.contentType=l.contentType||_7,c.contentLength=l.contentLength||0),r.set(l.path,c)});const a=[];return r.forEach(l=>{if(l.parentPath===i)a.push(l);else{const c=l.path.lastIndexOf(l.name||""),d=l.path.slice(0,c),u=r.get(d);u&&u.nodeType===be.FOLDER?(u.items=u.items||[],u.items.push(l)):a.push(l)}}),a}function ed(e,t){try{let s=decodeURIComponent(e);return t?s.endsWith("/")||(s+="/"):s.endsWith("/")&&(s=s.slice(0,-1)),s}catch{return t&&!e.endsWith("/")?e+"/":!t&&e.endsWith("/")?e.slice(0,-1):e}}function U7(e){return e.toUpperCase()==="FOLDER"?be.FOLDER:be.ITEM}function $7(e){if(!e)return;const t=e.toUpperCase();return Object.values(ah).find(o=>o.toUpperCase()===t)}function q7(e){const t=e.split(".");return t.length>1?t[t.length-1]:""}function K7(e,t="Prompts",s="prompts/public/",o="root"){const i=j7(e,o);return[{id:o,name:t,path:s,parentPath:"",nodeType:be.FOLDER,folderId:o,items:i}]}exports.AlertVariant=ss;exports.ButtonAppearance=Me;exports.ButtonVariant=Ve;exports.ConfirmationPopupVariant=zi;exports.DialAlert=Wp;exports.DialAutocompleteInputValue=Nv;exports.DialBreadcrumb=Mv;exports.DialBreadcrumbItem=Tn;exports.DialButton=es;exports.DialButtonDropdown=$d;exports.DialCaptionText=ar;exports.DialCheckbox=nd;exports.DialCloseButton=th;exports.DialCollapsibleSidebar=_p;exports.DialConditionalResizableContainer=of;exports.DialConfirmationPopup=Ov;exports.DialDestinationFolderPopup=aw;exports.DialDraggableItem=A0;exports.DialDropdown=Rt;exports.DialEllipsisTooltip=ut;exports.DialErrorButton=kv;exports.DialErrorIconButton=Av;exports.DialErrorText=ks;exports.DialFileIcon=nu;exports.DialFileManager=hw;exports.DialFileManagerActions=K;exports.DialFileManagerTabs=bi;exports.DialFileName=tl;exports.DialFileNodeType=be;exports.DialFilePermission=Ko;exports.DialFileResourceType=ah;exports.DialFolderName=sl;exports.DialFormItem=Qd;exports.DialFormPopup=_8;exports.DialGhostButton=x8;exports.DialGhostIconButton=M8;exports.DialGrid=sh;exports.DialIcon=Ye;exports.DialIconButton=no;exports.DialInput=Zi;exports.DialInputPopup=Hv;exports.DialItemType=zt;exports.DialLabel=zo;exports.DialLabelledText=T1;exports.DialLinkButton=y8;exports.DialLoadFileArea=qv;exports.DialLoadFileAreaField=EL;exports.DialLoader=lr;exports.DialNeutralButton=xs;exports.DialNeutralIconButton=E8;exports.DialNoDataContent=cr;exports.DialNumberInput=Z8;exports.DialPasswordInput=J8;exports.DialPopup=qo;exports.DialPrimaryButton=Ss;exports.DialPrimaryIconButton=F8;exports.DialRadioButton=Xd;exports.DialRadioGroup=va;exports.DialRadioGroupPopupField=B8;exports.DialRemoveButton=Lv;exports.DialResizableContainer=sf;exports.DialSearch=nh;exports.DialSecondaryIconButton=D8;exports.DialSelect=Vv;exports.DialSelectField=cL;exports.DialSharedEntityIndicator=jn;exports.DialSkeleton=fi;exports.DialSkeletonAvatarShape=wa;exports.DialSkeletonAvatarSize=In;exports.DialSkeletonVariant=Yt;exports.DialSteps=x1;exports.DialSuccessIconButton=T8;exports.DialSwitch=ih;exports.DialTabs=Ev;exports.DialTag=bo;exports.DialTagInput=sL;exports.DialTertiaryIconButton=P8;exports.DialTextarea=I8;exports.DialTooltip=St;exports.DropdownItemType=Vi;exports.DropdownTrigger=Ot;exports.DropdownType=yv;exports.ElementSize=wt;exports.FileManagerColumnKey=rt;exports.FileManagerProvider=nw;exports.FlexibleActionsDirection=xo;exports.FormItemOrientation=_n;exports.GridSelectionMode=Wn;exports.NAME_COLUMN=cw;exports.NOT_ALLOWED_SPACES=hh;exports.NOT_ALLOWED_SPACES_REGEXP=P7;exports.NOT_ALLOWED_SYMBOLS=ow;exports.NOT_ALLOWED_SYMBOLS_REGEXP=iw;exports.PopupSize=Vt;exports.RadioGroupOrientation=Io;exports.ResizableContainerSide=Un;exports.SIZE_COLUMN=uw;exports.SelectSize=$a;exports.SelectVariant=qa;exports.StepStatus=Nt;exports.TabOrientation=ja;exports.TagVariant=Ya;exports.UPDATED_AT_COLUMN=dw;exports.mergeClasses=oe;exports.useDialFileManagerTabs=W7;exports.useEditableItem=Zv;exports.useFileManagerContext=rw;exports.wrapInRootFolder=K7;
|