UNPKG

ag-grid-react

Version:
2 lines (1 loc) 49 kB
import es,{Component as ts}from"react";import Je,{forwardRef as ss,useCallback as Ke,useContext as rs,useEffect as ns,useImperativeHandle as os,useMemo as qe,useRef as se,useState as Pe}from"react";import{BaseComponentWrapper as as,GridCoreCreator as cs,VanillaFrameworkOverrides as is,_combineAttributesAndGridOptions as ls,_getGlobalGridOption as us,_getGridRegisteredModules as ds,_isClientSideRowModel as ps,_isServerSideRowModel as ms,_observeResize as hs,_processOnChange as fs,_warn as Cs}from"ag-grid-community";import ue,{forwardRef as gs,useCallback as ys,useContext as vs,useImperativeHandle as ws,useLayoutEffect as Rs,useMemo as Qe,useRef as ke,useState as ge}from"react";import{_escapeString as Es}from"ag-grid-community";import bs from"react";var Q=bs.createContext({}),We=(e,t,s,n)=>{if(!e||e.componentFromFramework||t.isDestroyed())return;const c=e.newAgStackInstance();let i,o,a=!1;return c.then(u=>{if(a){t.destroyBean(u);return}i=u,o=i.getGui(),s.appendChild(o),Ft(n,i)}),()=>{a=!0,i&&(o?.parentElement?.removeChild(o),t.destroyBean(i),n&&Ft(n,void 0))}},Ft=(e,t)=>{if(e)if(e instanceof Function)e(t);else{const s=e;s.current=t}};import Ss from"react";import Ps from"react-dom";var re=(...e)=>e.filter(s=>s!=null&&s!=="").join(" "),ne=class Yt{constructor(...t){this.classesMap={},t.forEach(s=>{this.classesMap[s]=!0})}setClass(t,s){if(!!this.classesMap[t]==s)return this;const r=new Yt;return r.classesMap={...this.classesMap},r.classesMap[t]=s,r}toString(){return Object.keys(this.classesMap).filter(s=>this.classesMap[s]).join(" ")}},Fe=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()},pt=Ss.version?.split(".")[0],ks=pt==="16"||pt==="17";function Fs(){return pt==="19"}var Ye=!1;function Ms(e){return Ye||setTimeout(()=>Ye=!1,0),Ye=!0,e()}var Ze=(e,t)=>{!ks&&e&&!Ye?Ps.flushSync(t):t()};function Xe(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 n=[],r=[],c=new Map,i=new Map;for(let o=0;o<t.length;o++){const a=t[o];i.set(a.instanceId,a)}for(let o=0;o<e.length;o++){const a=e[o];c.set(a.instanceId,a),i.has(a.instanceId)&&n.push(a)}for(let o=0;o<t.length;o++){const a=t[o],u=a.instanceId;c.has(u)||r.push(a)}return n.length===e.length&&r.length===0?e:n.length===0&&r.length===t.length?t:n.length===0?r:r.length===0?n:[...n,...r]}var Mt=gs((e,t)=>{const{registry:s,context:n}=vs(Q),r=ke(null),c=ke(null),i=ke(null),o=ke(null),a=ke(null),u=ke(),[l,y]=ge(),[f,d]=ge(),[E,g]=ge(),[m,p]=ge(()=>new ne),[v,k]=ge(()=>new ne("ag-hidden")),[b,R]=ge(()=>new ne("ag-hidden")),[G,B]=ge(()=>new ne("ag-invisible"));ws(t,()=>({refresh(){return!1}})),Rs(()=>We(l,n,c.current),[l]);const N=ys(H=>{if(r.current=H,!H){u.current=n.destroyBean(u.current);return}const C={setInnerRenderer:(S,A)=>{y(S),g(A)},setChildCount:S=>d(S),addOrRemoveCssClass:(S,A)=>p(j=>j.setClass(S,A)),setContractedDisplayed:S=>R(A=>A.setClass("ag-hidden",!S)),setExpandedDisplayed:S=>k(A=>A.setClass("ag-hidden",!S)),setCheckboxVisible:S=>B(A=>A.setClass("ag-invisible",!S)),setCheckboxSpacing:S=>B(A=>A.setClass("ag-group-checkbox-spacing",S))},O=s.createDynamicBean("groupCellRendererCtrl",!0);O&&(u.current=n.createBean(O),u.current.init(C,H,i.current,o.current,a.current,Mt,e))},[]),D=Qe(()=>`ag-cell-wrapper ${m.toString()}`,[m]),h=Qe(()=>`ag-group-expanded ${v.toString()}`,[v]),P=Qe(()=>`ag-group-contracted ${b.toString()}`,[b]),M=Qe(()=>`ag-group-checkbox ${G.toString()}`,[G]),w=l&&l.componentFromFramework,U=w?l.componentClass:void 0,F=l==null&&E!=null,T=Es(E,!0);return ue.createElement("span",{className:D,ref:N,...e.colDef?{}:{role:u.current?.getCellAriaRole()}},ue.createElement("span",{className:h,ref:o}),ue.createElement("span",{className:P,ref:a}),ue.createElement("span",{className:M,ref:i}),ue.createElement("span",{className:"ag-group-value",ref:c},F&&ue.createElement(ue.Fragment,null,T),w&&ue.createElement(U,{...l.params})),ue.createElement("span",{className:"ag-group-child-count"},f))}),xt=Mt;import{AgPromise as mt}from"ag-grid-community";import Bt,{memo as xs,useEffect as Bs,useState as Gs}from"react";import{createContext as As}from"react";var Te=As({setMethods:()=>{}}),Is=e=>{const{initialProps:t,addUpdateCallback:s,CustomComponentClass:n,setMethods:r}=e,[{key:c,...i},o]=Gs(t);return Bs(()=>{s(a=>o(a))},[]),Bt.createElement(Te.Provider,{value:{setMethods:r}},Bt.createElement(n,{key:c,...i}))},Ds=xs(Is);import{createElement as Os}from"react";import{createPortal as Ws}from"react-dom";import{AgPromise as ht}from"ag-grid-community";var Ts=0;function Gt(){return`agPortalKey_${++Ts}`}var At=class{constructor(e,t,s,n){this.portal=null,this.oldPortal=null,this.reactComponent=e,this.portalManager=t,this.componentType=s,this.suppressFallbackMethods=!!n,this.statelessComponent=this.isStateless(this.reactComponent),this.key=Gt(),this.portalKey=Gt(),this.instanceCreated=this.isStatelessComponent()?ht.resolve(!1):new ht(r=>{this.resolveInstanceCreated=r})}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 n=s[e];if(n)return n.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 ht(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=Ws(this.reactElement,this.eParentElement,this.portalKey)}createElement(e,t){return Os(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 ft(e,t,s){e.forEach(n=>{const r=t[n];r&&(s[n]=r)})}var oe=class extends At{constructor(){super(...arguments),this.awaitUpdateCallback=new mt(e=>{this.resolveUpdateCallback=e}),this.wrapperComponent=Ds}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 mt(n=>{setTimeout(()=>{n()})})),this.resolveUpdateCallback()}})}setMethods(e){this.providedMethods=e,ft(this.getOptionalMethods(),this.providedMethods,this)}getOptionalMethods(){return[]}getProps(){return{...this.sourceParams,key:this.key,ref:this.ref}}refreshProps(){return this.updateCallback?this.updateCallback():new mt(e=>this.awaitUpdateCallback.then(()=>{this.updateCallback().then(()=>e())}))}},Ns=class extends oe{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},Hs=class extends oe{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}},Us=class extends oe{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:n}=this;return e.label=t,e.icon=s,e.shake=n,e}};import{AgPromise as _s}from"ag-grid-community";var Vs=class extends oe{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 _s(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["afterGuiAttached","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()}updateModel(e){this.setModel(e).then(()=>this.sourceParams.filterChangedCallback())}getProps(){const e=super.getProps();return e.model=this.model,e.onModelChange=this.onModelChange,e.onUiChange=this.onUiChange,delete e.filterChangedCallback,delete e.filterModifiedCallback,e}};import{AgPromise as Ls}from"ag-grid-community";function It(e,t){e.parentFilterInstance(s=>{(s.setModel(t)||Ls.resolve()).then(()=>{e.filterParams.filterChangedCallback()})})}var js=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){ft(this.getOptionalMethods(),e,this)}getOptionalMethods(){return["afterGuiAttached"]}updateModel(e){this.model=e,this.refreshProps(),It(this.floatingFilterParams,e)}},zs=class extends oe{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(),It(this.sourceParams,e)}getProps(){const e=super.getProps();return e.model=this.model,e.onModelChange=this.onModelChange,e}},$s=class extends oe{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},Js=class extends oe{refresh(e){this.sourceParams=e,this.refreshProps()}},Ks=class extends oe{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}},qs=class extends oe{refresh(e){this.sourceParams=e,this.refreshProps()}},Qs=class extends oe{refresh(e){return this.sourceParams=e,this.refreshProps(),!0}},Ys=class extends oe{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}};import{AgPromise as Zs,_warn as Xs}from"ag-grid-community";function er(e,t){(e?.getInstance?.()??Zs.resolve(void 0)).then(n=>t(n))}function et(){Xs(231)}var tr=1e3,sr=class{constructor(e,t,s){this.destroyed=!1,this.portals=[],this.hasPendingPortalUpdate=!1,this.wrappingElement=t||"div",this.refresher=e,this.maxComponentCreationTimeMs=s||tr}getPortals(){return this.portals}destroy(){this.destroyed=!0}destroyPortal(e){this.portals=this.portals.filter(t=>t!==e),this.batchUpdate()}getComponentWrappingElement(){return this.wrappingElement}mountReactPortal(e,t,s){this.portals=[...this.portals,e],this.waitForInstance(t,s),this.batchUpdate()}updateReactPortal(e,t){this.portals[this.portals.indexOf(e)]=t,this.batchUpdate()}batchUpdate(){this.hasPendingPortalUpdate||(setTimeout(()=>{this.destroyed||(this.refresher(),this.hasPendingPortalUpdate=!1)}),this.hasPendingPortalUpdate=!0)}waitForInstance(e,t,s=Date.now()){if(this.destroyed){t(null);return}if(e.rendered())t(e);else{if(Date.now()-s>=this.maxComponentCreationTimeMs&&!this.hasPendingPortalUpdate)return;window.setTimeout(()=>{this.waitForInstance(e,t,s)})}}};import Ne,{memo as rr,useCallback as tt,useEffect as nr,useMemo as st,useRef as Me,useState as ye}from"react";import{GridCtrl as or}from"ag-grid-community";import He,{memo as ar,useCallback as cr,useContext as ir,useMemo as ae,useRef as le,useState as Z}from"react";import{CssClassManager as lr,FakeHScrollComp as ur,FakeVScrollComp as dr,GridBodyCtrl as pr,_observeResize as mr,_setAriaColCount as hr,_setAriaRowCount as fr}from"ag-grid-community";import rt,{memo as Cr,useCallback as gr,useContext as yr,useMemo as Dt,useRef as Ot,useState as Wt}from"react";import{GridHeaderCtrl as vr}from"ag-grid-community";import ve,{memo as wr,useCallback as Rr,useContext as Er,useRef as Ct,useState as Tt}from"react";import{HeaderRowContainerCtrl as br}from"ag-grid-community";import nt,{memo as Sr,useCallback as Nt,useContext as Pr,useMemo as Ht,useRef as ot,useState as gt}from"react";import{_EmptyBean as kr}from"ag-grid-community";import Ue,{memo as Fr,useCallback as Mr,useContext as xr,useEffect as Br,useLayoutEffect as Gr,useMemo as Ar,useRef as xe,useState as Ut}from"react";import{CssClassManager as Ir,_EmptyBean as Dr,_removeAriaSort as Or,_setAriaSort as Wr}from"ag-grid-community";var Tr=({ctrl:e})=>{const t=e.isAlive(),{context:s}=xr(Q),n=t?e.column.getColId():void 0,[r,c]=Ut(),[i,o]=Ut(),a=xe(),u=xe(null),l=xe(null),y=xe(null),f=xe(),d=xe();t&&!d.current&&(d.current=new Ir(()=>u.current));const E=Mr(v=>{if(u.current=v,a.current=v?s.createBean(new Dr):s.destroyBean(a.current),!v||!e.isAlive())return;const k={setWidth:R=>{u.current&&(u.current.style.width=R)},addOrRemoveCssClass:(R,G)=>d.current.addOrRemoveCssClass(R,G),setUserStyles:R=>o(R),setAriaSort:R=>{u.current&&(R?Wr(u.current,R):Or(u.current))},setUserCompDetails:R=>c(R),getUserCompInstance:()=>f.current||void 0};e.setComp(k,v,l.current,y.current,a.current);const b=e.getSelectAllGui();b&&(l.current?.insertAdjacentElement("afterend",b),a.current.addDestroyFunc(()=>b.remove()))},[]);Gr(()=>We(r,s,y.current,f),[r]),Br(()=>{e.setDragSource(u.current)},[r]);const g=Ar(()=>!!(r?.componentFromFramework&&Fe(r.componentClass)),[r]),m=r&&r.componentFromFramework,p=r&&r.componentClass;return Ue.createElement("div",{ref:E,style:i,className:"ag-header-cell","col-id":n,role:"columnheader"},Ue.createElement("div",{ref:l,className:"ag-header-cell-resize",role:"presentation"}),Ue.createElement("div",{ref:y,className:"ag-header-cell-comp-wrapper",role:"presentation"},m&&g&&Ue.createElement(p,{...r.params}),m&&!g&&Ue.createElement(p,{...r.params,ref:f})))},Nr=Fr(Tr);import we,{memo as Hr,useCallback as Ur,useContext as _r,useLayoutEffect as Vr,useMemo as Be,useRef as Re,useState as Ee}from"react";import{AgPromise as Lr,_EmptyBean as jr}from"ag-grid-community";var zr=({ctrl:e})=>{const{context:t,gos:s}=_r(Q),[n,r]=Ee(),[c,i]=Ee(()=>new ne("ag-header-cell","ag-floating-filter")),[o,a]=Ee(()=>new ne),[u,l]=Ee(()=>new ne("ag-floating-filter-button","ag-hidden")),[y,f]=Ee("false"),[d,E]=Ee(),[,g]=Ee(1),m=Re(),p=Re(null),v=Re(null),k=Re(null),b=Re(null),R=Re(),G=Re(),B=C=>{C!=null&&R.current&&R.current(C)},N=Ur(C=>{if(p.current=C,m.current=C?t.createBean(new jr):t.destroyBean(m.current),!C)return;G.current=new Lr(S=>{R.current=S});const O={addOrRemoveCssClass:(S,A)=>i(j=>j.setClass(S,A)),setUserStyles:S=>r(S),addOrRemoveBodyCssClass:(S,A)=>a(j=>j.setClass(S,A)),setButtonWrapperDisplayed:S=>{l(A=>A.setClass("ag-hidden",!S)),f(S?"false":"true")},setWidth:S=>{p.current&&(p.current.style.width=S)},setCompDetails:S=>E(S),getFloatingFilterComp:()=>G.current?G.current:null,setMenuIcon:S=>b.current?.appendChild(S)};e.setComp(O,C,b.current,v.current,m.current)},[]);Vr(()=>We(d,t,v.current,B),[d]);const D=Be(()=>c.toString(),[c]),h=Be(()=>o.toString(),[o]),P=Be(()=>u.toString(),[u]),M=Be(()=>!!(d&&d.componentFromFramework&&Fe(d.componentClass)),[d]),w=Be(()=>s.get("reactiveCustomComponents"),[]),U=Be(()=>{if(d)if(w){const C=new js(d.params,()=>g(O=>O+1));return B(C),C}else d.componentFromFramework&&et()},[d]),F=U?.getProps(),T=d&&d.componentFromFramework,H=d&&d.componentClass;return we.createElement("div",{ref:N,style:n,className:D,role:"gridcell"},we.createElement("div",{ref:v,className:h,role:"presentation"},T&&!w&&we.createElement(H,{...d.params,ref:M?()=>{}:B}),T&&w&&we.createElement(Te.Provider,{value:{setMethods:C=>U.setMethods(C)}},we.createElement(H,{...F}))),we.createElement("div",{ref:k,"aria-hidden":y,className:P,role:"presentation"},we.createElement("button",{ref:b,type:"button",className:"ag-button ag-floating-filter-button-button",tabIndex:-1})))},$r=Hr(zr);import _e,{memo as Jr,useCallback as Kr,useContext as qr,useEffect as Qr,useLayoutEffect as Yr,useMemo as at,useRef as Ve,useState as Ge}from"react";import{_EmptyBean as Zr}from"ag-grid-community";var Xr=({ctrl:e})=>{const{context:t}=qr(Q),[s,n]=Ge(),[r,c]=Ge(()=>new ne),[i,o]=Ge(()=>new ne),[a,u]=Ge("false"),[l,y]=Ge(),[f,d]=Ge(),E=at(()=>e.column.getUniqueId(),[]),g=Ve(),m=Ve(null),p=Ve(null),v=Ve(null),k=Ve(),b=Kr(h=>{if(m.current=h,g.current=h?t.createBean(new Zr):t.destroyBean(g.current),!h)return;const P={setWidth:M=>{m.current&&(m.current.style.width=M)},addOrRemoveCssClass:(M,w)=>c(U=>U.setClass(M,w)),setUserStyles:M=>n(M),setHeaderWrapperHidden:M=>{const w=v.current;w&&(M?w.style.setProperty("display","none"):w.style.removeProperty("display"))},setHeaderWrapperMaxHeight:M=>{const w=v.current;w&&(M!=null?w.style.setProperty("max-height",`${M}px`):w.style.removeProperty("max-height"),w.classList.toggle("ag-header-cell-comp-wrapper-limited-height",M!=null))},setUserCompDetails:M=>d(M),setResizableDisplayed:M=>{o(w=>w.setClass("ag-hidden",!M)),u(M?"false":"true")},setAriaExpanded:M=>y(M),getUserCompInstance:()=>k.current||void 0};e.setComp(P,h,p.current,v.current,g.current)},[]);Yr(()=>We(f,t,v.current),[f]),Qr(()=>{m.current&&e.setDragSource(m.current)},[f]);const R=at(()=>!!(f?.componentFromFramework&&Fe(f.componentClass)),[f]),G=at(()=>"ag-header-group-cell "+r.toString(),[r]),B=at(()=>"ag-header-cell-resize "+i.toString(),[i]),N=f&&f.componentFromFramework,D=f&&f.componentClass;return _e.createElement("div",{ref:b,style:s,className:G,"col-id":E,role:"columnheader","aria-expanded":l},_e.createElement("div",{ref:v,className:"ag-header-cell-comp-wrapper",role:"presentation"},N&&R&&_e.createElement(D,{...f.params}),N&&!R&&_e.createElement(D,{...f.params,ref:k})),_e.createElement("div",{ref:p,"aria-hidden":a,className:B}))},en=Jr(Xr),tn=({ctrl:e})=>{const{context:t}=Pr(Q),{topOffset:s,rowHeight:n}=Ht(()=>e.getTopAndHeight(),[]),r=e.getAriaRowIndex(),c=e.headerRowClass,[i,o]=gt(()=>n+"px"),[a,u]=gt(()=>s+"px"),l=ot(null),y=ot(null),[f,d]=gt(()=>e.getUpdatedHeaderCtrls()),E=ot(),g=ot(null),m=Nt(k=>{if(g.current=k,E.current=k?t.createBean(new kr):t.destroyBean(E.current),!k)return;const b={setHeight:R=>o(R),setTop:R=>u(R),setHeaderCtrls:(R,G,B)=>{y.current=l.current,l.current=R;const N=Xe(y.current,R,G);N!==y.current&&Ze(B,()=>d(N))},setWidth:R=>{g.current&&(g.current.style.width=R)}};e.setComp(b,E.current,!1)},[]),p=Ht(()=>({height:i,top:a}),[i,a]),v=Nt(k=>{switch(e.type){case"group":return nt.createElement(en,{ctrl:k,key:k.instanceId});case"filter":return nt.createElement($r,{ctrl:k,key:k.instanceId});default:return nt.createElement(Nr,{ctrl:k,key:k.instanceId})}},[]);return nt.createElement("div",{ref:m,className:c,role:"row",style:p,"aria-rowindex":r},f.map(v))},sn=Sr(tn),rn=({pinned:e})=>{const[t,s]=Tt(!0),[n,r]=Tt([]),{context:c}=Er(Q),i=Ct(null),o=Ct(null),a=Ct(),u=e==="left",l=e==="right",y=!u&&!l,f=Rr(g=>{if(i.current=g,a.current=g?c.createBean(new br(e)):c.destroyBean(a.current),!g)return;const m={setDisplayed:s,setCtrls:p=>r(p),setCenterWidth:p=>{o.current&&(o.current.style.width=p)},setViewportScrollLeft:p=>{i.current&&(i.current.scrollLeft=p)},setPinnedContainerWidth:p=>{i.current&&(i.current.style.width=p,i.current.style.minWidth=p,i.current.style.maxWidth=p)}};a.current.setComp(m,i.current)},[]),d=t?"":"ag-hidden",E=()=>n.map(g=>ve.createElement(sn,{ctrl:g,key:g.instanceId}));return ve.createElement(ve.Fragment,null,u&&ve.createElement("div",{ref:f,className:"ag-pinned-left-header "+d,"aria-hidden":!t,role:"rowgroup"},E()),l&&ve.createElement("div",{ref:f,className:"ag-pinned-right-header "+d,"aria-hidden":!t,role:"rowgroup"},E()),y&&ve.createElement("div",{ref:f,className:"ag-header-viewport "+d,role:"presentation",tabIndex:-1},ve.createElement("div",{ref:o,className:"ag-header-container",role:"rowgroup"},E())))},yt=wr(rn),nn=()=>{const[e,t]=Wt(()=>new ne),[s,n]=Wt(),{context:r}=yr(Q),c=Ot(null),i=Ot(),o=gr(l=>{if(c.current=l,i.current=l?r.createBean(new vr):r.destroyBean(i.current),!l)return;const y={addOrRemoveCssClass:(f,d)=>t(E=>E.setClass(f,d)),setHeightAndMinHeight:f=>n(f)};i.current.setComp(y,l,l)},[]),a=Dt(()=>"ag-header "+e.toString(),[e]),u=Dt(()=>({height:s,minHeight:s}),[s]);return rt.createElement("div",{ref:o,className:a,style:u,role:"presentation"},rt.createElement(yt,{pinned:"left"}),rt.createElement(yt,{pinned:null}),rt.createElement(yt,{pinned:"right"}))},on=Cr(nn);import{useEffect as an}from"react";var cn=(e,t)=>{an(()=>{const s=t.current;if(s){const n=s.parentElement;if(n){const r=document.createComment(e);return n.insertBefore(r,s),()=>{n.removeChild(r)}}}},[e])},be=cn;import Le,{memo as ln,useCallback as Ae,useContext as un,useMemo as ct,useRef as de,useState as _t}from"react";import{RowContainerCtrl as dn,_getRowContainerClass as pn,_getRowContainerOptions as mn,_getRowSpanContainerClass as hn,_getRowViewportClass as fn}from"ag-grid-community";import Ie,{memo as Cn,useCallback as gn,useContext as yn,useEffect as Vt,useLayoutEffect as vn,useMemo as Lt,useRef as pe,useState as me}from"react";import{CssClassManager as wn,_EmptyBean as Rn}from"ag-grid-community";import V,{memo as En,useCallback as De,useContext as bn,useLayoutEffect as vt,useMemo as wt,useRef as ce,useState as he}from"react";import{CssClassManager as Sn,_EmptyBean as Pn,_removeFromParent as kn}from"ag-grid-community";import{AgPromise as Fn}from"ag-grid-community";var Mn=class{constructor(e,t){this.cellEditorParams=e,this.refreshProps=t,this.instanceCreated=new Fn(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){ft(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"]}updateValue(e){this.value=e,this.refreshProps()}};import jt,{memo as xn,useContext as Bn,useLayoutEffect as Gn,useState as An}from"react";import{createPortal as In}from"react-dom";import{_getActiveDomElement as Dn,_getLocaleTextFunc as On}from"ag-grid-community";import{useEffect as Wn,useRef as it,useState as Tn}from"react";var Nn=e=>{const t=it(e),s=it(),n=it(!1),r=it(!1),[,c]=Tn(0);n.current&&(r.current=!0),Wn(()=>(n.current||(s.current=t.current(),n.current=!0),c(i=>i+1),()=>{r.current&&s.current?.()}),[])},Hn=e=>{const[t,s]=An(),n=Bn(Q),{context:r,popupSvc:c,localeSvc:i,gos:o,editSvc:a}=n,{editDetails:u,cellCtrl:l,eParentCell:y}=e;return Nn(()=>{const{compDetails:f}=u,d=o.get("stopEditingWhenCellsLoseFocus"),E=r.createBean(a.createPopupEditorWrapper(f.params)),g=E.getGui();if(e.jsChildComp){const B=e.jsChildComp.getGui();B&&g.appendChild(B)}const{column:m,rowNode:p}=l,v={column:m,rowNode:p,type:"popupCellEditor",eventSource:y,ePopup:g,position:u.popupPosition,keepWithinBounds:!0},k=c?.positionPopupByComponent.bind(c,v),b=On(i),R=c?.addPopup({modal:d,eChild:g,closeOnEsc:!0,closedCallback:()=>{l.onPopupEditorClosed()},anchorToElement:y,positionCallback:k,ariaLabel:b("ariaLabelCellEditor","Cell Editor")}),G=R?R.hideFunc:void 0;return s(E),e.jsChildComp?.afterGuiAttached?.(),()=>{G?.(),r.destroyBean(E)}}),Gn(()=>()=>{l.isCellFocused()&&t?.getGui().contains(Dn(n))&&y.focus({preventScroll:!0})},[t]),jt.createElement(jt.Fragment,null,t&&e.wrappedContent&&In(e.wrappedContent,t.getGui()))},zt=xn(Hn);import{useCallback as Un,useContext as _n,useEffect as $t}from"react";var Vn=(e,t,s,n,r,c)=>{const{context:i}=_n(Q),o=Un(()=>{const a=r.current;if(!a)return;const u=a.getGui();u&&u.parentElement&&u.parentElement.removeChild(u),i.destroyBean(a),r.current=void 0},[]);$t(()=>{const a=e!=null,u=e?.compDetails&&!e.compDetails.componentFromFramework,l=t&&s==null;if(!(a&&u&&!l)){o();return}const f=e.compDetails;if(r.current){const E=r.current,m=E.refresh!=null&&e.force==!1?E.refresh(f.params):!1;if(m===!0||m===void 0)return;o()}f.newAgStackInstance().then(E=>{if(!E)return;const g=E.getGui();if(!g)return;(t?s:c.current).appendChild(g),r.current=E})},[e,t,n]),$t(()=>o,[])},Ln=Vn,jn=(e,t,s)=>{const{compProxy:n}=e;s(n);const r=n.getProps(),c=Fe(t);return V.createElement(Te.Provider,{value:{setMethods:i=>n.setMethods(i)}},c?V.createElement(t,{...r}):V.createElement(t,{...r,ref:i=>n.setRef(i)}))},Jt=(e,t,s)=>{const n=e.compProxy;return V.createElement(V.Fragment,null,n?jn(e,t,s):V.createElement(t,{...e.compDetails.params,ref:s}))},zn=(e,t,s,n,r)=>{const c=e.compDetails,i=c.componentClass,o=c.componentFromFramework&&!e.popup,a=c.componentFromFramework&&e.popup,u=!c.componentFromFramework&&e.popup;return V.createElement(V.Fragment,null,o&&Jt(e,i,t),a&&V.createElement(zt,{editDetails:e,cellCtrl:n,eParentCell:s,wrappedContent:Jt(e,i,t)}),u&&r&&V.createElement(zt,{editDetails:e,cellCtrl:n,eParentCell:s,jsChildComp:r}))},$n=(e,t,s,n,r,c,i)=>{const{compDetails:o,value:a}=e,u=!o,l=o&&o.componentFromFramework,y=o&&o.componentClass,f=a?.toString?a.toString():a,d=()=>V.createElement(V.Fragment,null,u&&V.createElement(V.Fragment,null,f),l&&!c&&V.createElement(y,{...o.params,key:t,ref:n}),l&&c&&V.createElement(y,{...o.params,key:t}));return V.createElement(V.Fragment,null,r?V.createElement("span",{role:"presentation",id:`cell-${s}`,className:"ag-cell-value",ref:i},d()):d())},Jn=({cellCtrl:e,printLayout:t,editingRow:s})=>{const n=bn(Q),{context:r}=n,{colIdSanitised:c,instanceId:i}=e,o=ce(),[a,u]=he(()=>e.isCellRenderer()?void 0:{compDetails:void 0,value:e.getValueToDisplay(),force:!1}),[l,y]=he(),[f,d]=he(1),[E,g]=he(),[m,p]=he(!1),[v,k]=he(!1),[b,R]=he(!1),[G,B]=he(),N=wt(()=>e.isForceWrapper(),[e]),D=wt(()=>e.getCellAriaRole(),[e]),h=ce(null),P=ce(null),M=ce(null),w=ce(),U=ce(),F=ce(),T=ce([]),H=ce(),[C,O]=he(0),S=De(_=>{H.current=_,O(z=>z+1)},[]),A=a!=null&&(m||b||v),j=N||A,W=De(_=>{if(U.current=_,_){const z=_.isCancelBeforeStart&&_.isCancelBeforeStart();setTimeout(()=>{z?(e.stopEditing(!0),e.focusCell(!0)):e.cellEditorAttached()})}},[e]),x=ce();x.current||(x.current=new Sn(()=>h.current)),Ln(a,j,H.current,C,w,h);const J=ce();vt(()=>{const _=J.current,z=a;if(J.current=a,_==null||_.compDetails==null||z==null||z.compDetails==null)return;const K=_.compDetails,ee=z.compDetails;if(K.componentClass!=ee.componentClass||M.current?.refresh==null)return;M.current.refresh(ee.params)!=!0&&d(q=>q+1)},[a]),vt(()=>{if(!(l&&!l.compDetails.componentFromFramework))return;const z=l.compDetails,K=l.popup===!0,ee=z.newAgStackInstance();return ee.then(I=>{if(!I)return;const q=I.getGui();W(I),K||((N?F:h).current?.appendChild(q),I.afterGuiAttached&&I.afterGuiAttached()),B(I)}),()=>{ee.then(I=>{const q=I.getGui();r.destroyBean(I),W(void 0),B(void 0),q?.parentElement?.removeChild(q)})}},[l]);const $=De(_=>{if(F.current=_,!_){T.current.forEach(K=>K()),T.current=[];return}const z=K=>{if(K){const ee=K.getGui();_.insertAdjacentElement("afterbegin",ee),T.current.push(()=>{r.destroyBean(K),kn(ee)})}return K};if(m){const K=e.createSelectionCheckbox();z(K)}b&&z(e.createDndSource()),v&&z(e.createRowDragComp())},[e,r,b,v,m]),ie=De(()=>{const _=!e.isCellSpanning()||P.current,z=h.current;if(o.current=z?r.createBean(new Pn):r.destroyBean(o.current),!z||!_||!e)return;const K={addOrRemoveCssClass:(I,q)=>x.current.addOrRemoveCssClass(I,q),setUserStyles:I=>g(I),getFocusableElement:()=>h.current,setIncludeSelection:I=>p(I),setIncludeRowDrag:I=>k(I),setIncludeDndSource:I=>R(I),getCellEditor:()=>U.current||null,getCellRenderer:()=>M.current??w.current,getParentOfValue:()=>H.current??F.current??h.current,setRenderDetails:(I,q,Ce)=>{u(te=>te?.compDetails!==I||te?.value!==q||te?.force!==Ce?{value:q,compDetails:I,force:Ce}:te)},setEditDetails:(I,q,Ce,te)=>{if(I){let Y;te?Y=new Mn(I.params,()=>d(fe=>fe+1)):I.componentFromFramework&&et(),y({compDetails:I,popup:q,popupPosition:Ce,compProxy:Y}),q||u(void 0)}else e.hasBrowserFocus()&&K.getFocusableElement().focus({preventScroll:!0}),y(fe=>{fe?.compProxy&&(U.current=void 0)})}},ee=F.current||void 0;e.setComp(K,z,P.current??void 0,ee,t,s,o.current)},[]),Se=De(_=>{h.current=_,ie()},[]),lt=De(_=>{P.current=_,ie()},[]),ut=wt(()=>!!(a?.compDetails?.componentFromFramework&&Fe(a.compDetails.componentClass)),[a]);vt(()=>{h.current&&(x.current.addOrRemoveCssClass("ag-cell-value",!j),x.current.addOrRemoveCssClass("ag-cell-inline-editing",!!l&&!l.popup),x.current.addOrRemoveCssClass("ag-cell-popup-editing",!!l&&!!l.popup),x.current.addOrRemoveCssClass("ag-cell-not-inline-editing",!l||!!l.popup),e.setInlineEditingCss())});const ze=()=>V.createElement(V.Fragment,null,a!=null&&$n(a,f,i,M,j,ut,S),l!=null&&zn(l,W,h.current,e,G)),$e=()=>V.createElement("div",{ref:Se,style:E,role:D,"col-id":c},j?V.createElement("div",{className:"ag-cell-wrapper",role:"presentation",ref:$},ze()):ze());return e.isCellSpanning()?V.createElement("div",{ref:lt,className:"ag-spanned-cell-wrapper",role:"presentation"},$e()):$e()},Kn=En(Jn),qn=({rowCtrl:e,containerType:t})=>{const{context:s,gos:n}=yn(Q),r=pe(),c=pe(e.getDomOrder()),i=e.isFullWidth(),o=e.rowNode.displayed,[a,u]=me(()=>o?e.rowNode.getRowIndexString():null),[l,y]=me(()=>e.rowId),[f,d]=me(()=>e.businessKey),[E,g]=me(()=>e.rowStyles),m=pe(null),p=pe(null),[v,k]=me(()=>null),[b,R]=me(),[G,B]=me(()=>o?e.getInitialRowTop(t):void 0),[N,D]=me(()=>o?e.getInitialTransform(t):void 0),h=pe(null),P=pe(),M=pe(!1),[w,U]=me(0);Vt(()=>{if(M.current||!b||w>10)return;const x=h.current?.firstChild;x?(e.setupDetailRowAutoHeight(x),M.current=!0):U(J=>J+1)},[b,w]);const F=pe();F.current||(F.current=new wn(()=>h.current));const T=gn(x=>{if(h.current=x,r.current=x?s.createBean(new Rn):s.destroyBean(r.current),!x){e.unsetComp(t);return}if(!e.isAlive())return;const J={setTop:B,setTransform:D,addOrRemoveCssClass:($,ie)=>F.current.addOrRemoveCssClass($,ie),setDomOrder:$=>c.current=$,setRowIndex:u,setRowId:y,setRowBusinessKey:d,setUserStyles:g,setCellCtrls:($,ie)=>{p.current=m.current,m.current=$;const Se=Xe(p.current,$,c.current);Se!==p.current&&Ze(ie,()=>k(Se))},showFullWidth:$=>R($),getFullWidthCellRenderer:()=>P.current,refreshFullWidth:$=>A.current?(R(ie=>({...ie,params:$()})),!0):!P.current||!P.current.refresh?!1:P.current.refresh($())};e.setComp(J,x,t,r.current)},[]);vn(()=>We(b,s,h.current,P),[b]);const H=Lt(()=>{const x={top:G,transform:N};return Object.assign(x,E),x},[G,N,E]),C=i&&b?.componentFromFramework,O=!i&&v!=null,S=Lt(()=>!!(b?.componentFromFramework&&Fe(b.componentClass)),[b]),A=pe(!1);Vt(()=>{A.current=S&&!!b&&!!n.get("reactiveCustomComponents")},[S,b]);const j=()=>v?.map(x=>Ie.createElement(Kn,{cellCtrl:x,editingRow:e.editing,printLayout:e.printLayout,key:x.instanceId})),W=()=>{const x=b.componentClass;return Ie.createElement(Ie.Fragment,null,S?Ie.createElement(x,{...b.params}):Ie.createElement(x,{...b.params,ref:P}))};return Ie.createElement("div",{ref:T,role:"row",style:H,"row-index":a,"row-id":l,"row-business-key":f},O&&j(),C&&W())},Kt=Cn(qn),Qn=({name:e})=>{const{context:t,gos:s}=un(Q),n=ct(()=>mn(e),[e]),r=de(null),c=de(null),i=de(null),o=de([]),a=de([]),[u,l]=_t(()=>[]),y=!!s.get("enableCellSpan")&&!!n.getSpannedRowCtrls,f=de([]),d=de([]),[E,g]=_t(()=>[]),m=de(!1),p=de(),v=ct(()=>re("ag-viewport",fn(e)),[e]),k=ct(()=>re(pn(e)),[e]),b=ct(()=>re("ag-spanning-container",hn(e)),[e]),R=n.type==="center"||y,G=R?r:c;be(" AG Row Container "+e+" ",G);const B=Ae(()=>{const F=!R||r.current!=null,T=c.current!=null,H=!y||i.current!=null;return F&&T&&H},[]),N=Ae(()=>r.current==null&&c.current==null&&i.current==null,[]),D=Ae(()=>{if(N()&&(p.current=t.destroyBean(p.current)),B()){const F=C=>{const O=Xe(a.current,o.current,m.current);O!==a.current&&(a.current=O,Ze(C,()=>l(O)))},T=C=>{const O=Xe(d.current,f.current,m.current);O!==d.current&&(d.current=O,Ze(C,()=>g(O)))},H={setHorizontalScroll:C=>{r.current&&(r.current.scrollLeft=C)},setViewportHeight:C=>{r.current&&(r.current.style.height=C)},setRowCtrls:({rowCtrls:C,useFlushSync:O})=>{const S=!!O&&o.current.length>0&&C.length>0;o.current=C,F(S)},setSpannedRowCtrls:(C,O)=>{const S=!!O&&f.current.length>0&&C.length>0;f.current=C,T(S)},setDomOrder:C=>{m.current!=C&&(m.current=C,F(!1))},setContainerWidth:C=>{c.current&&(c.current.style.width=C)},setOffsetTop:C=>{c.current&&(c.current.style.transform=`translateY(${C})`)}};p.current=t.createBean(new dn(e)),p.current.setComp(H,c.current,i.current??void 0,r.current)}},[B,N]),h=Ae(F=>{c.current=F,D()},[D]),P=Ae(F=>{i.current=F,D()},[D]),M=Ae(F=>{r.current=F,D()},[D]),w=()=>Le.createElement("div",{className:k,ref:h,role:"rowgroup"},u.map(F=>Le.createElement(Kt,{rowCtrl:F,containerType:n.type,key:F.instanceId})));if(!R)return w();const U=()=>y&&Le.createElement("div",{className:b,ref:P,role:"rowgroup"},E.map(F=>Le.createElement(Kt,{rowCtrl:F,containerType:n.type,key:F.instanceId})));return Le.createElement("div",{className:v,ref:M,role:"presentation"},w(),U())},Yn=ln(Qn),Zn=()=>{const e=ir(Q),{context:t,overlays:s}=e,[n,r]=Z(""),[c,i]=Z(0),[o,a]=Z(0),[u,l]=Z("0px"),[y,f]=Z("0px"),[d,E]=Z("100%"),[g,m]=Z("0px"),[p,v]=Z("0px"),[k,b]=Z("100%"),[R,G]=Z(!0),[B,N]=Z(!0),[D,h]=Z(null),[P,M]=Z(""),[w,U]=Z(null),[F,T]=Z("ag-layout-normal"),H=le();H.current||(H.current=new lr(()=>C.current));const C=le(null),O=le(null),S=le(null),A=le(null),j=le(null),W=le(null),x=le(null),J=le([]),$=le([]);be(" AG Grid Body ",C),be(" AG Pinned Top ",O),be(" AG Sticky Top ",S),be(" AG Middle ",W),be(" AG Pinned Bottom ",x);const ie=cr(Y=>{if(C.current=Y,!Y){J.current=t.destroyBeans(J.current),$.current.forEach(L=>L()),$.current=[];return}if(!t)return;const fe=(L,X)=>{L.appendChild(X),$.current.push(()=>L.removeChild(X))},dt=L=>{const X=t.createBean(new L);return J.current.push(X),X},Oe=(L,X,Xt)=>{fe(L,document.createComment(Xt)),fe(L,dt(X).getGui())};Oe(Y,ur," AG Fake Horizontal Scroll ");const Pt=s?.getOverlayWrapperCompClass();Pt&&Oe(Y,Pt," AG Overlay Wrapper "),j.current&&Oe(j.current,dr," AG Fake Vertical Scroll ");const Zt={setRowAnimationCssOnBodyViewport:r,setColumnCount:L=>{C.current&&hr(C.current,L)},setRowCount:L=>{C.current&&fr(C.current,L)},setTopHeight:i,setBottomHeight:a,setStickyTopHeight:l,setStickyTopTop:f,setStickyTopWidth:E,setTopInvisible:G,setBottomInvisible:N,setColumnMovingCss:(L,X)=>H.current.addOrRemoveCssClass(L,X),updateLayoutClasses:T,setAlwaysVerticalScrollClass:h,setPinnedTopBottomOverflowY:M,setCellSelectableCss:(L,X)=>U(X?L:null),setBodyViewportWidth:L=>{W.current&&(W.current.style.width=L)},registerBodyViewportResizeListener:L=>{if(W.current){const X=mr(e,W.current,L);$.current.push(()=>X())}},setStickyBottomHeight:m,setStickyBottomBottom:v,setStickyBottomWidth:b,setGridRootRole:L=>Y.setAttribute("role",L)},kt=t.createBean(new pr);J.current.push(kt),kt.setComp(Zt,Y,W.current,O.current,x.current,S.current,A.current)},[]),Se=ae(()=>re("ag-root","ag-unselectable",F),[F]),lt=ae(()=>re("ag-body-viewport",n,F,D,w),[n,F,D,w]),ut=ae(()=>re("ag-body",F),[F]),ze=ae(()=>re("ag-floating-top",R?"ag-invisible":null,w),[w,R]),$e=ae(()=>re("ag-sticky-top",w),[w]),_=ae(()=>re("ag-sticky-bottom",g==="0px"?"ag-invisible":null,w),[w,g]),z=ae(()=>re("ag-floating-bottom",B?"ag-invisible":null,w),[w,B]),K=ae(()=>({height:c,minHeight:c,overflowY:P}),[c,P]),ee=ae(()=>({height:u,top:y,width:d}),[u,y,d]),I=ae(()=>({height:g,bottom:p,width:k}),[g,p,k]),q=ae(()=>({height:o,minHeight:o,overflowY:P}),[o,P]),Ce=Y=>He.createElement(Yn,{name:Y,key:`${Y}-container`}),te=({section:Y,children:fe,className:dt,style:Oe})=>He.createElement("div",{ref:Y,className:dt,role:"presentation",style:Oe},fe.map(Ce));return He.createElement("div",{ref:ie,className:Se},He.createElement(on,null),te({section:O,className:ze,style:K,children:["topLeft","topCenter","topRight","topFullWidth"]}),He.createElement("div",{className:ut,ref:j,role:"presentation"},te({section:W,className:lt,children:["left","center","right","fullWidth"]})),te({section:S,className:$e,style:ee,children:["stickyTopLeft","stickyTopCenter","stickyTopRight","stickyTopFullWidth"]}),te({section:A,className:_,style:I,children:["stickyBottomLeft","stickyBottomCenter","stickyBottomRight","stickyBottomFullWidth"]}),te({section:x,className:z,style:q,children:["bottomLeft","bottomCenter","bottomRight","bottomFullWidth"]}))},Xn=ar(Zn);import Rt,{forwardRef as eo,memo as to,useCallback as Et,useContext as so,useImperativeHandle as ro,useRef as bt}from"react";import{TabGuardClassNames as St,TabGuardCtrl as no}from"ag-grid-community";var oo=(e,t)=>{const{children:s,eFocusableElement:n,onTabKeyDown:r,gridCtrl:c,forceFocusOutWhenTabGuardsAreEmpty:i,isEmpty:o}=e,{context:a}=so(Q),u=bt(null),l=bt(null),y=bt(),f=p=>{const v=p==null?void 0:parseInt(p,10).toString();[u,l].forEach(k=>{v===void 0?k.current?.removeAttribute("tabindex"):k.current?.setAttribute("tabindex",v)})};ro(t,()=>({forceFocusOutOfContainer(p){y.current?.forceFocusOutOfContainer(p)}}));const d=Et(()=>{const p=u.current,v=l.current;if(!p&&!v){y.current=a.destroyBean(y.current);return}if(p&&v){const k={setTabIndex:f};y.current=a.createBean(new no({comp:k,eTopGuard:p,eBottomGuard:v,eFocusableElement:n,onTabKeyDown:r,forceFocusOutWhenTabGuardsAreEmpty:i,focusInnerElement:b=>c.focusInnerElement(b),isEmpty:o}))}},[]),E=Et(p=>{u.current=p,d()},[d]),g=Et(p=>{l.current=p,d()},[d]),m=p=>{const v=p==="top"?St.TAB_GUARD_TOP:St.TAB_GUARD_BOTTOM;return Rt.createElement("div",{className:`${St.TAB_GUARD} ${v}`,role:"presentation",ref:p==="top"?E:g})};return Rt.createElement(Rt.Fragment,null,m("top"),s,m("bottom"))},ao=eo(oo),co=to(ao),io=({context:e})=>{const[t,s]=ye(""),[n,r]=ye(""),[c,i]=ye(null),[o,a]=ye(null),[u,l]=ye(!1),[y,f]=ye(),d=Me(),E=Me(null),g=Me(),[m,p]=ye(null),v=Me(()=>{}),k=Me(),b=Me([]),R=tt(()=>{},[]),G=st(()=>e.isDestroyed()?null:e.getBeans(),[e]);be(" AG Grid ",E);const B=tt(w=>{if(E.current=w,d.current=w?e.createBean(new or):e.destroyBean(d.current),!w||e.isDestroyed())return;const U=d.current;v.current=U.focusInnerElement.bind(U);const F={destroyGridUi:()=>{},setRtlClass:s,forceFocusOutOfContainer:T=>{if(!T&&k.current?.isDisplayed()){k.current.forceFocusOutOfContainer(T);return}g.current?.forceFocusOutOfContainer(T)},updateLayoutClasses:r,getFocusableContainers:()=>{const T=[],H=E.current?.querySelector(".ag-root");return H&&T.push({getGui:()=>H}),b.current.forEach(C=>{C.isDisplayed()&&T.push(C)}),T},setCursor:i,setUserSelect:a};U.setComp(F,w,w),l(!0)},[]);nr(()=>{const w=d.current,U=E.current;if(!y||!G||!w||!m||!U)return;const F=[],{watermarkSelector:T,paginationSelector:H,sideBarSelector:C,statusBarSelector:O,gridHeaderDropZonesSelector:S}=w.getOptionalSelectors(),A=[];if(S){const W=e.createBean(new S.component),x=W.getGui();U.insertAdjacentElement("afterbegin",x),A.push(x),F.push(W)}if(C){const W=e.createBean(new C.component),x=W.getGui(),J=m.querySelector(".ag-tab-guard-bottom");J&&(J.insertAdjacentElement("beforebegin",x),A.push(x)),F.push(W),b.current.push(W)}const j=W=>{const x=e.createBean(new W),J=x.getGui();return U.insertAdjacentElement("beforeend",J),A.push(J),F.push(x),x};if(O&&j(O.component),H){const W=j(H.component);k.current=W,b.current.push(W)}return T&&j(T.component),()=>{e.destroyBeans(F),A.forEach(W=>{W.parentElement?.removeChild(W)})}},[y,m,G]);const N=st(()=>re("ag-root-wrapper",t,n),[t,n]),D=st(()=>re("ag-root-wrapper-body","ag-focus-managed",n),[n]),h=st(()=>({userSelect:o??"",WebkitUserSelect:o??"",cursor:c??""}),[o,c]),P=tt(w=>{g.current=w,f(w!==null)},[]),M=tt(()=>!d.current?.isFocusable(),[]);return Ne.createElement("div",{ref:B,className:N,style:h,role:"presentation"},Ne.createElement("div",{className:D,ref:p,role:"presentation"},u&&m&&G&&Ne.createElement(Q.Provider,{value:G},Ne.createElement(co,{ref:P,eFocusableElement:m,onTabKeyDown:R,gridCtrl:d.current,forceFocusOutWhenTabGuardsAreEmpty:!0,isEmpty:M},Ne.createElement(Xn,null)))))},lo=rr(io);import{BeanStub as uo}from"ag-grid-community";var po=class extends uo{wireBeans(e){this.ctrlsSvc=e.ctrlsSvc}areHeaderCellsRendered(){return this.ctrlsSvc.getHeaderRowContainerCtrls().every(e=>e.getAllCtrls().every(t=>t.areCellsRendered()))}},mo={gridOptions:void 0,modules:void 0,containerStyle:void 0,className:void 0,setGridApi:void 0,componentWrappingElement:void 0,maxComponentCreationTimeMs:void 0,children:void 0},qt=new Set(Object.keys(mo)),Qt=e=>{const t=se(),s=se(null),n=se(null),r=se([]),c=se([]),i=se(e),o=se(),a=se(),u=se(!1),[l,y]=Pe(void 0),[,f]=Pe(0),d=Ke(m=>{if(s.current=m,!m){r.current.forEach(h=>h()),r.current.length=0;return}const p=e.modules||[];n.current||(n.current=new sr(()=>f(h=>h+1),e.componentWrappingElement,e.maxComponentCreationTimeMs),r.current.push(()=>{n.current?.destroy(),n.current=null}));const v=ls(e.gridOptions,e,Object.keys(e).filter(h=>!qt.has(h))),k=()=>{if(u.current){const h=()=>o.current?.shouldQueueUpdates()?void 0:c.current.shift();let P=h();for(;P;)P(),P=h()}},b=new go(k);o.current=b;const R=new po,G={providedBeanInstances:{frameworkCompWrapper:new fo(n.current,v.reactiveCustomComponents??us("reactiveCustomComponents")??!0),renderStatus:R},modules:p,frameworkOverrides:b,setThemeOnGridDiv:!0},B=h=>{y(h),h.createBean(R),r.current.push(()=>{h.destroy()}),h.getBean("ctrlsSvc").whenReady({addDestroyFunc:P=>{r.current.push(P)}},()=>{if(h.isDestroyed())return;const P=t.current;P&&e.setGridApi?.(P)})},N=h=>{h.getBean("ctrlsSvc").whenReady({addDestroyFunc:P=>{r.current.push(P)}},()=>{c.current.forEach(P=>P()),c.current.length=0,u.current=!0})},D=new cs;v.gridId??(v.gridId=a.current),t.current=D.create(m,v,B,N,G),r.current.push(()=>{t.current=void 0}),t.current&&(a.current=t.current.getGridId())},[]),E=qe(()=>({height:"100%",...e.containerStyle||{}}),[e.containerStyle]),g=Ke(m=>{u.current&&!o.current?.shouldQueueUpdates()?m():c.current.push(m)},[]);return ns(()=>{const m=ho(i.current,e);i.current=e,g(()=>{t.current&&fs(m,t.current)})},[e]),Je.createElement("div",{style:E,className:e.className,ref:d},l&&!l.isDestroyed()?Je.createElement(lo,{context:l}):null,n.current?.getPortals()??null)};function ho(e,t){const s={};return Object.keys(t).forEach(n=>{if(qt.has(n))return;const r=t[n];e[n]!==r&&(s[n]=r)}),s}var fo=class extends as{constructor(e,t){super(),this.parent=e,this.reactiveCustomComponents=t}createWrapper(e,t){if(this.reactiveCustomComponents){const r=(c=>{switch(c){case"filter":return Vs;case"floatingFilterComponent":return zs;case"dateComponent":return Hs;case"dragAndDropImageComponent":return Us;case"loadingOverlayComponent":return Js;case"noRowsOverlayComponent":return qs;case"statusPanel":return Qs;case"toolPanel":return Ys;case"menuItem":return Ks;case"cellRenderer":return Ns;case"innerHeaderComponent":return $s}})(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":et();break}const s=!t.cellRenderer&&t.name!=="toolPanel";return new At(e,this.parent,t,s)}},Co=ss((e,t)=>{const s=rs(Q),{registry:n,context:r,gos:c,rowModel:i}=s,[o,a]=Pe(()=>new ne),[u,l]=Pe(()=>new ne),[y,f]=Pe(),[d,E]=Pe(),g=se(),m=se(null),p=se(),v=qe(()=>ds(e.api.getGridId(),y?.rowModelType??"clientSide"),[e]),k=qe(()=>o.toString()+" ag-details-row",[o]),b=qe(()=>u.toString()+" ag-details-grid",[u]);t&&os(t,()=>({refresh(){return g.current?.refresh()??!1}})),e.template&&Cs(230);const R=Ke(B=>{if(m.current=B,!B){g.current=r.destroyBean(g.current),p.current?.();return}const N={addOrRemoveCssClass:(h,P)=>a(M=>M.setClass(h,P)),addOrRemoveDetailGridCssClass:(h,P)=>l(M=>M.setClass(h,P)),setDetailGrid:h=>f(h),setRowData:h=>E(h),getGui:()=>m.current},D=n.createDynamicBean("detailCellRendererCtrl",!0);if(D&&(r.createBean(D),D.init(N,e),g.current=D,c.get("detailRowAutoHeight"))){const h=()=>{if(m.current==null)return;const P=m.current.clientHeight;P!=null&&P>0&&setTimeout(()=>{e.node.setRowHeight(P),(ps(c,i)||ms(c,i))&&i.onRowHeightChanged()},0)};p.current=hs(s,B,h),h()}},[]),G=Ke(B=>{g.current?.registerDetailWithMaster(B)},[]);return Je.createElement("div",{className:k,ref:R},y&&Je.createElement(Qt,{className:b,...y,modules:v,rowData:d,setGridApi:G}))}),go=class extends is{constructor(e){super("react"),this.processQueuedUpdates=e,this.queueUpdates=!1,this.renderingEngine="react",this.frameworkComponents={agGroupCellRenderer:xt,agGroupRowRenderer:xt,agDetailCellRenderer:Co},this.wrapIncoming=(t,s)=>s==="ensureVisible"?Ms(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 Fs()}},yo=class extends ts{constructor(){super(...arguments),this.apiListeners=[],this.setGridApi=e=>{this.api=e,this.apiListeners.forEach(t=>t(e))}}registerApiListener(e){this.apiListeners.push(e)}componentWillUnmount(){this.apiListeners.length=0}render(){return es.createElement(Qt,{...this.props,setGridApi:this.setGridApi})}};import{useContext as vo}from"react";function je(e){const{setMethods:t}=vo(Te);t(e)}function wo(e){je(e)}function Ro(e){return je(e)}function Eo(e){return je(e)}function bo(e){je(e)}function So(e){je(e)}export{yo as AgGridReact,Te as CustomComponentContext,er as getInstance,wo as useGridCellEditor,Ro as useGridDate,Eo as useGridFilter,bo as useGridFloatingFilter,So as useGridMenuItem,et as warnReactiveCustomComponents};