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