UNPKG

ag-grid-react

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