@agility-workbench/react-grid 1.5.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var be=Object.create;var S=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Ae=Object.getOwnPropertyNames;var xe=Object.getPrototypeOf,Ge=Object.prototype.hasOwnProperty;var De=(t,e)=>{for(var o in e)S(t,o,{get:e[o],enumerable:!0})},h=(t,e,o,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ae(e))!Ge.call(t,r)&&r!==o&&S(t,r,{get:()=>e[r],enumerable:!(a=Ie(e,r))||a.enumerable});return t},p=(t,e,o)=>(h(t,e,"default"),o&&h(o,e,"default")),f=(t,e,o)=>(o=t!=null?be(xe(t)):{},h(e||!t||!t.__esModule?S(o,"default",{value:t,enumerable:!0}):o,t)),Oe=t=>h(S({},"__esModule",{value:!0}),t);var g={};De(g,{Grid:()=>Se});module.exports=Oe(g);p(g,require("@agility-workbench/grid"),module.exports);var i=f(require("react"),1),he=require("@agility-workbench/grid");var R=f(require("react"),1);var ne=require("react-dom"),oe=require("react-dom/client"),G=new Set,D=!1;function ke(){D=!1;let t=Array.from(G);G.clear();for(let e of t)e.unmount()}function He(t){G.add(t),!D&&(D=!0,queueMicrotask(ke))}var c=class{root;constructor(e){this.root=(0,oe.createRoot)(e)}render(e){this.root?.render(e)}renderSync(e){let o=this.root;o&&(0,ne.flushSync)(()=>o.render(e))}destroy(){let e=this.root;e&&(this.root=null,He(e))}};var v=require("@agility-workbench/grid"),ce=require("@agility-workbench/grid"),de=require("@agility-workbench/grid");var O=f(require("react"),1);var ie=new WeakMap;function Be(t){let e=t?.prototype;return typeof t=="function"&&!!e&&typeof e.init=="function"&&typeof e.getGui=="function"}function Ve(t){return class{el=document.createElement("div");root=null;handle=O.default.createRef();init(o){this.el.style.width="100%",this.el.style.height="100%",this.root=new c(this.el);let a=O.default.createElement(t,{...o,ref:this.handle});this.root.renderSync(a)}getGui(){return this.el}getValue(){return this.handle.current?.getValue()}isParsed(){return this.handle.current?.isParsed?.()??!1}focus(){this.handle.current?.focus?.()}isCancelBeforeStart(){return this.handle.current?.isCancelBeforeStart?.()??!1}destroy(){let o=this.root;this.root=null,o?.destroy()}}}function k(t){if(t==null)return;if(typeof t=="string"||Be(t))return t;let e=ie.get(t);if(e)return e;let o=Ve(t);return ie.set(t,o),o}var re=new WeakMap,ae=new WeakMap,le=new WeakMap,ue=new WeakMap;function M(t){return(typeof t=="function"||typeof t=="object")&&t!==null}function Ne(t){let e=t.colDef.cellRendererParams;return e==null||typeof e!="object"?t:{...t,...e}}function Le(t){return class{el=document.createElement("span");root=null;init(o){this.el.style.display="inline-flex",this.el.style.alignItems="center",this.el.style.width="100%",this.el.style.height="100%",this.el.style.overflow="hidden",this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(R.default.createElement(t,Ne(o)))}}}function P(t){if(!t)return;if(typeof t=="function"&&(0,v.isClassRenderer)(t)||!M(t))return t;let e=re.get(t);if(e)return e;let o=Le(t);return re.set(t,o),o}function ze(t){let e=t.colDef?.tooltipComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function Ke(t){return class{el=document.createElement("div");root=null;init(o){this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.renderSync(R.default.createElement(t,ze(o)))}}}function F(t){if(!t)return;if(typeof t=="function"&&(0,ce.isClassTooltipComponent)(t)||!M(t))return t;let e=ae.get(t);if(e)return e;let o=Ke(t);return ae.set(t,o),o}function E(t){if(t)return e=>{let o=t(e);return!o||typeof o.tooltip!="object"||o.tooltip==null?o:{...o,tooltip:{...o.tooltip,component:F(o.tooltip.component)}}}}function se(t){return t==null||typeof t=="string"?t:F(t)}function We(t){let e=t.colDef?.actionFrameComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function je(t){return class{el=document.createElement("div");root=null;init(o){this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(R.default.createElement(t,We(o)))}}}function me(t){if(!t)return;if(typeof t=="function"&&(0,de.isClassActionFrameComponent)(t)||!M(t))return t;let e=le.get(t);if(e)return e;let o=je(t);return le.set(t,o),o}function qe(t){return class{el=document.createElement("span");root=null;init(o){this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(R.default.createElement(t,o))}}}function w(t){if(!t)return;if(typeof t=="function"&&(0,v.isClassSetFilterComponent)(t)||!M(t))return t;let e=ue.get(t);if(e)return e;let o=qe(t);return ue.set(t,o),o}function Ce(t){if(t)return{...t,valueComponent:w(t.valueComponent),selectAllComponent:w(t.selectAllComponent),blanksComponent:w(t.blanksComponent),groupComponent:w(t.groupComponent)}}function Ue(t){return{...t,cellRenderer:P(t.cellRenderer),cellEditor:k(t.cellEditor),tooltipComponent:F(t.tooltipComponent),headerTooltip:se(t.headerTooltip),actionFrameComponent:me(t.actionFrameComponent),filterParams:Ce(t.filterParams),children:t.children?H(t.children)??void 0:void 0}}function H(t){return t==null?t:t.map(e=>Ue(e))}function fe(t){if(t==null)return;let e={...t};return"cellRenderer"in t&&(e.cellRenderer=P(t.cellRenderer)),"cellEditor"in t&&(e.cellEditor=k(t.cellEditor)),"tooltipComponent"in t&&(e.tooltipComponent=F(t.tooltipComponent)),"headerTooltip"in t&&(e.headerTooltip=se(t.headerTooltip)),"actionFrameComponent"in t&&(e.actionFrameComponent=me(t.actionFrameComponent)),"filterParams"in t&&(e.filterParams=Ce(t.filterParams)),e}function n(t,e,o){o!=null&&(t[e]=o)}function Re(t){let e={};return n(e,"headerHeight",t.headerHeight),n(e,"leafHeaderHeight",t.leafHeaderHeight),n(e,"parentHeaderHeight",t.parentHeaderHeight),n(e,"rowHeight",t.rowHeight),n(e,"pinnedTopRowData",t.pinnedTopRowData),n(e,"pinnedBottomRowData",t.pinnedBottomRowData),n(e,"getRowId",t.getRowId),n(e,"rowIdKey",t.rowIdKey),n(e,"rowDataMode",t.rowDataMode),n(e,"asyncTransactionWaitMs",t.asyncTransactionWaitMs),n(e,"overscanRowCount",t.overscanRowCount),n(e,"minResizeWidth",t.minResizeWidth),n(e,"maxColumnWidth",t.maxColumnWidth),n(e,"pivotMode",t.pivotMode),n(e,"pivotColumns",t.pivotColumns),n(e,"pivotResultColumnDef",t.pivotResultColumnDef),n(e,"maxPivotColumns",t.maxPivotColumns),n(e,"pivotColumnMoveMode",t.pivotColumnMoveMode),n(e,"autosizeColumnsOnDataChange",t.autosizeColumnsOnDataChange),n(e,"allowExportAsCSV",t.allowExportAsCSV),n(e,"allowExportAsExcel",t.allowExportAsExcel),n(e,"pagination",t.pagination),n(e,"paginationControls",t.paginationControls),n(e,"rowNumbers",t.rowNumbers),n(e,"rowHover",t.rowHover),n(e,"columnHover",t.columnHover),n(e,"zebraRows",t.zebraRows),n(e,"getRowClass",t.getRowClass),n(e,"getRowStyle",t.getRowStyle),n(e,"getRowPresentation",E(t.getRowPresentation)),n(e,"onCellClicked",t.onCellClicked),n(e,"onRowClicked",t.onRowClicked),n(e,"onCellValueChanged",t.onCellValueChanged),n(e,"onSelectionChanged",t.onSelectionChanged),n(e,"onSortChanged",t.onSortChanged),n(e,"onFilterChanged",t.onFilterChanged),n(e,"onQuickFilterFindChanged",t.onQuickFilterFindChanged),n(e,"onHistoryChanged",t.onHistoryChanged),n(e,"ariaLabel",t.ariaLabel),n(e,"ariaLabelledBy",t.ariaLabelledBy),n(e,"highlightActiveCell",t.highlightActiveCell),n(e,"rowSelection",t.rowSelection),n(e,"cellSelection",t.cellSelection),n(e,"rangeSelection",t.rangeSelection),n(e,"fillHandle",t.fillHandle),n(e,"columnSelection",t.columnSelection),n(e,"headerKeyboardNavigation",t.headerKeyboardNavigation),n(e,"showColumnButtonsOnHover",t.showColumnButtonsOnHover),n(e,"selectAllRowsOnHeaderClick",t.selectAllRowsOnHeaderClick),n(e,"selectAllScope",t.selectAllScope),n(e,"selectionPersistence",t.selectionPersistence),n(e,"clearSelectionOnBodyClick",t.clearSelectionOnBodyClick),n(e,"resetPageOn",t.resetPageOn),n(e,"pageSize",t.pageSize),n(e,"pageSizes",t.pageSizes),n(e,"serverSideBlockSize",t.serverSideBlockSize),n(e,"rowModelType",t.rowModelType),n(e,"getGroupChildCount",t.getGroupChildCount),n(e,"paginationUnknownTotalTooltip",t.paginationUnknownTotalTooltip),n(e,"undoLimit",t.undoLimit),n(e,"editTrigger",t.editTrigger),n(e,"readOnlyEdit",t.readOnlyEdit),n(e,"initialSort",t.initialSort),n(e,"showSortPriority",t.showSortPriority),n(e,"pinnedRowsEditable",t.pinnedRowsEditable),n(e,"rowPinningMenu",t.rowPinningMenu),n(e,"rowInsertionMenu",t.rowInsertionMenu),n(e,"suppressKeyboardEdit",t.suppressKeyboardEdit),n(e,"suppressTypeToEdit",t.suppressTypeToEdit),n(e,"moveAfterEdit",t.moveAfterEdit),n(e,"commitOnBlur",t.commitOnBlur),n(e,"reevaluateOnEdit",t.reevaluateOnEdit),n(e,"groupDisplayType",t.groupDisplayType),n(e,"groupColumnDef",t.groupColumnDef),n(e,"groupDefaultExpanded",t.groupDefaultExpanded),n(e,"groupSortMode",t.groupSortMode),n(e,"treeData",t.treeData),n(e,"groupRowsSelectable",t.groupRowsSelectable),n(e,"isRowSelectable",t.isRowSelectable),n(e,"isRowPinned",t.isRowPinned),n(e,"groupRowsSticky",t.groupRowsSticky),n(e,"isFullWidthRow",t.isFullWidthRow),n(e,"tooltip",t.tooltip),n(e,"quickFilter",t.quickFilter),n(e,"columnPanel",t.columnPanel),n(e,"toolbar",t.toolbar),n(e,"savedViews",t.savedViews),n(e,"sheets",t.sheets),n(e,"loadingMessage",t.loadingMessage),n(e,"noRowsMessage",t.noRowsMessage),n(e,"pivotNoValuesMessage",t.pivotNoValuesMessage),n(e,"pivotEmptyMessage",t.pivotEmptyMessage),n(e,"filterDebounceMs",t.filterDebounceMs),n(e,"cellFlashDuration",t.cellFlashDuration),n(e,"cellFadeDuration",t.cellFadeDuration),n(e,"icons",t.icons),n(e,"theme",t.theme),t.fullWidthCellRenderer!=null&&(e.fullWidthCellRenderer=P(t.fullWidthCellRenderer)),t.defaultColDef!=null&&(e.defaultColDef=fe(t.defaultColDef)),t.bodyContextMenu===!1&&(e.bodyContextMenu=!1),t.rowModelType==="serverSide"&&(n(e,"serverSideDataSource",t.serverSideDataSource),n(e,"serverSideAggregationSource",t.serverSideAggregationSource)),n(e,"suppressStyleInjection",t.suppressStyleInjection),n(e,"styleNonce",t.styleNonce),e}var ge=f(require("react"),1);var T=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let a=[],r=o,s=this.opts.getBodyMenuItems?this.opts.getBodyMenuItems({ctx:e,items:r}):r;return{items:this.normalizeItems(s,a),cleanup:()=>{for(let C of a)C()}}}normalizeItems(e,o){return e.map(a=>{if(a.isSeparator)return{isSeparator:!0};let r=this.normalizeSlot(a.left,o),s=this.normalizeSlot(a.right,o);return{...a,left:r,right:s,subMenu:a.subMenu?this.normalizeItems(a.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(ge.default.isValidElement(e)){let{el:a,unmount:r}=this.mountReact(e);return o.push(r),a}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let a=new c(o);return a.render(e),{el:o,unmount:()=>a.destroy()}}};var ye=f(require("react"),1);var b=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let a=[],r=o,s=this.opts.getColumnMenuItems?this.opts.getColumnMenuItems({ctx:e,items:r}):r;return{items:this.normalizeItems(s,a),cleanup:()=>{for(let C of a)C()}}}normalizeItems(e,o){return e.map(a=>{if(a.isSeparator)return{isSeparator:!0};let r=this.normalizeSlot(a.left,o),s=this.normalizeSlot(a.right,o);return{...a,left:r,right:s,subMenu:a.subMenu?this.normalizeItems(a.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(ye.default.isValidElement(e)){let{el:a,unmount:r}=this.mountReact(e);return o.push(r),a}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let a=new c(o);return a.render(e),{el:o,unmount:()=>a.destroy()}}};var pe=require("react/jsx-runtime");function m(t,e){if(t){if(typeof t=="function"){t(e);return}t.current=e}}function Je(t){if(!t.destroyed){t.destroyed=!0;try{t.api.destroy()}catch{}}}var Se=i.default.forwardRef(function(e,o){let a=(0,i.useRef)(null),r=(0,i.useRef)(null),s=(0,i.useRef)(e.onGridReady),y=(0,i.useRef)(e.getColumnMenuItems),C=(0,i.useRef)(e.bodyContextMenu),B=(0,i.useRef)(e.onCellClicked),V=(0,i.useRef)(e.onRowClicked),N=(0,i.useRef)(e.onCellValueChanged),L=(0,i.useRef)(e.onSelectionChanged),z=(0,i.useRef)(e.onSortChanged),K=(0,i.useRef)(e.onFilterChanged),W=(0,i.useRef)(e.onQuickFilterFindChanged),j=(0,i.useRef)(e.onHistoryChanged),q=(0,i.useRef)(e.onBeforeCellCommit),U=(0,i.useRef)(e.fillOperation);s.current=e.onGridReady,y.current=e.getColumnMenuItems,C.current=e.bodyContextMenu,B.current=e.onCellClicked,V.current=e.onRowClicked,N.current=e.onCellValueChanged,L.current=e.onSelectionChanged,z.current=e.onSortChanged,K.current=e.onFilterChanged,W.current=e.onQuickFilterFindChanged,j.current=e.onHistoryChanged,q.current=e.onBeforeCellCommit,U.current=e.fillOperation,(0,i.useLayoutEffect)(()=>{let l=a.current;if(!l)return;let d=Re(e);d.onCellClicked=u=>B.current?.(u),d.onRowClicked=u=>V.current?.(u),d.onCellValueChanged=u=>N.current?.(u),d.onSelectionChanged=u=>L.current?.(u),d.onSortChanged=u=>z.current?.(u),d.onFilterChanged=u=>K.current?.(u),d.onQuickFilterFindChanged=u=>W.current?.(u),d.onHistoryChanged=u=>j.current?.(u),d.onBeforeCellCommit=u=>q.current?.(u),d.fillOperation=u=>U.current?.(u);let A=(0,he.createGrid)(l,{...d,menuAdapter:new b({getColumnMenuItems:u=>y.current?.(u)??u.items}),bodyMenuAdapter:new T({getBodyMenuItems:u=>{let te=C.current;return typeof te=="function"?te(u):u.items}})}),x={api:A,destroyed:!1,appliedServerSideDataSource:d.serverSideDataSource};return r.current=x,m(o,A),m(e.apiRef,A),()=>{r.current===x&&(r.current=null),m(o,null),m(e.apiRef,null),Je(x)}},[]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api??null;return m(o,l),m(e.apiRef,l),()=>{m(o,null),m(e.apiRef,null)}},[o,e.apiRef]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api;l&&l.updateGridOptions({columnDefs:H(e.columnDefs)})},[e.columnDefs]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api;l&&e.rowModelType!=="serverSide"&&l.setRowData(e.rowData??e.data??[])},[e.data,e.rowData,e.rowModelType]);let I=(0,i.useRef)(null);(0,i.useLayoutEffect)(()=>{let l=r.current;if(!(!l||I.current===l))return I.current=l,s.current?.(l.api),()=>{I.current=null}},[]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({groupDisplayType:e.groupDisplayType})},[e.groupDisplayType]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({groupSortMode:e.groupSortMode})},[e.groupSortMode]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({groupRowsSelectable:e.groupRowsSelectable})},[e.groupRowsSelectable]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({pivotColumnMoveMode:e.pivotColumnMoveMode})},[e.pivotColumnMoveMode]);let J=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!J.current){J.current=!0;return}e.pivotMode!=null&&r.current?.api.setPivotMode(e.pivotMode)},[e.pivotMode]);let we=JSON.stringify(e.pivotColumns??null),Q=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!Q.current){Q.current=!0;return}e.pivotColumns!=null&&r.current?.api.setPivotColumns(e.pivotColumns)},[we]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({isRowSelectable:e.isRowSelectable})},[e.isRowSelectable]);let ve=JSON.stringify(e.rowSelection??null),_=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!_.current){_.current=!0;return}r.current?.api.updateGridOptions({rowSelection:e.rowSelection})},[ve]),(0,i.useLayoutEffect)(()=>{r.current?.api.setTreeDataKeyboardNavigationOptions({keyboardNavigationMode:e.treeData?.keyboardNavigationMode,enableKeyboardNavigationModeSwitch:e.treeData?.enableKeyboardNavigationModeSwitch??!1})},[e.treeData?.keyboardNavigationMode,e.treeData?.enableKeyboardNavigationModeSwitch]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({pinnedTopRowData:e.pinnedTopRowData,pinnedBottomRowData:e.pinnedBottomRowData,isRowPinned:e.isRowPinned,groupRowsSticky:e.groupRowsSticky})},[e.pinnedTopRowData,e.pinnedBottomRowData,e.isRowPinned,e.groupRowsSticky]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({rowHover:e.rowHover??!0,columnHover:e.columnHover??!1,zebraRows:e.zebraRows??!1,getRowClass:e.getRowClass,getRowStyle:e.getRowStyle,getRowPresentation:E(e.getRowPresentation),ariaLabel:e.ariaLabel,ariaLabelledBy:e.ariaLabelledBy,highlightActiveCell:e.highlightActiveCell??!1,cellSelection:e.cellSelection??!0,rangeSelection:e.rangeSelection??!0,fillHandle:e.fillHandle??!0,columnSelection:e.columnSelection??!0,headerKeyboardNavigation:e.headerKeyboardNavigation??!0,showColumnButtonsOnHover:e.showColumnButtonsOnHover??!1,bodyContextMenu:e.bodyContextMenu!==!1,editTrigger:e.editTrigger??"doubleClick",readOnlyEdit:e.readOnlyEdit??!1,pinnedRowsEditable:e.pinnedRowsEditable??!1,rowPinningMenu:e.rowPinningMenu??!1,rowInsertionMenu:e.rowInsertionMenu,suppressKeyboardEdit:e.suppressKeyboardEdit??!1,suppressTypeToEdit:e.suppressTypeToEdit??!1,moveAfterEdit:e.moveAfterEdit??!0,commitOnBlur:e.commitOnBlur??!0,asyncTransactionWaitMs:e.asyncTransactionWaitMs??16})},[e.rowHover,e.columnHover,e.zebraRows,e.getRowClass,e.getRowStyle,e.getRowPresentation,e.ariaLabel,e.ariaLabelledBy,e.highlightActiveCell,e.cellSelection,e.rangeSelection,e.fillHandle,e.columnSelection,e.headerKeyboardNavigation,e.showColumnButtonsOnHover,e.bodyContextMenu,e.editTrigger,e.readOnlyEdit,e.pinnedRowsEditable,e.rowPinningMenu,e.rowInsertionMenu,e.suppressKeyboardEdit,e.suppressTypeToEdit,e.moveAfterEdit,e.commitOnBlur,e.asyncTransactionWaitMs]),(0,i.useLayoutEffect)(()=>{let l=r.current;!l||e.rowModelType!=="serverSide"||e.serverSideDataSource&&e.serverSideDataSource!==l.appliedServerSideDataSource&&(l.appliedServerSideDataSource=e.serverSideDataSource,l.api.updateGridOptions({serverSideDataSource:e.serverSideDataSource}))},[e.rowModelType,e.serverSideDataSource]),(0,i.useLayoutEffect)(()=>{let l=r.current;!l||e.rowModelType!=="serverSide"||e.serverSideAggregationSource&&l.api.updateGridOptions({serverSideAggregationSource:e.serverSideAggregationSource})},[e.rowModelType,e.serverSideAggregationSource]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api;l&&l.dispatch({type:"overlayShow",overlayType:e.loading?"loading":"none"})},[e.loading]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({pagination:e.pagination})},[e.pagination]);let Me=JSON.stringify(e.paginationControls??null),Y=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!Y.current){Y.current=!0;return}r.current?.api.updateGridOptions({paginationControls:e.paginationControls})},[Me]);let Pe=JSON.stringify(e.quickFilter??null),X=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!X.current){X.current=!0;return}r.current?.api.updateGridOptions({quickFilter:e.quickFilter})},[Pe]);let Fe=JSON.stringify(e.tooltip??null),Z=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!Z.current){Z.current=!0;return}r.current?.api.updateGridOptions({tooltip:e.tooltip})},[Fe]);let Ee=JSON.stringify(e.columnPanel??null),$=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!$.current){$.current=!0;return}r.current?.api.updateGridOptions({columnPanel:e.columnPanel})},[Ee]);let Te=JSON.stringify(e.toolbar??null),ee=(0,i.useRef)(!1);return(0,i.useLayoutEffect)(()=>{if(!ee.current){ee.current=!0;return}r.current?.api.updateGridOptions({toolbar:e.toolbar})},[Te]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({savedViews:e.savedViews})},[e.savedViews]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({sheets:e.sheets})},[e.sheets]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({theme:e.theme,icons:{...e.theme?.getIcons(),...e.icons}})},[e.theme,e.icons]),(0,pe.jsx)("div",{ref:a,className:e.className,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",...e.style}})});0&&(module.exports={Grid,...require("@agility-workbench/grid")});
1
+ "use strict";var be=Object.create;var S=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Ae=Object.getOwnPropertyNames;var xe=Object.getPrototypeOf,Ge=Object.prototype.hasOwnProperty;var De=(t,e)=>{for(var o in e)S(t,o,{get:e[o],enumerable:!0})},h=(t,e,o,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ae(e))!Ge.call(t,r)&&r!==o&&S(t,r,{get:()=>e[r],enumerable:!(a=Ie(e,r))||a.enumerable});return t},p=(t,e,o)=>(h(t,e,"default"),o&&h(o,e,"default")),f=(t,e,o)=>(o=t!=null?be(xe(t)):{},h(e||!t||!t.__esModule?S(o,"default",{value:t,enumerable:!0}):o,t)),Oe=t=>h(S({},"__esModule",{value:!0}),t);var g={};De(g,{Grid:()=>Se});module.exports=Oe(g);p(g,require("@agility-workbench/grid"),module.exports);var i=f(require("react"),1),he=require("@agility-workbench/grid");var R=f(require("react"),1);var ne=require("react-dom"),oe=require("react-dom/client"),G=new Set,D=!1;function ke(){D=!1;let t=Array.from(G);G.clear();for(let e of t)e.unmount()}function He(t){G.add(t),!D&&(D=!0,queueMicrotask(ke))}var c=class{root;constructor(e){this.root=(0,oe.createRoot)(e)}render(e){this.root?.render(e)}renderSync(e){let o=this.root;o&&(0,ne.flushSync)(()=>o.render(e))}destroy(){let e=this.root;e&&(this.root=null,He(e))}};var v=require("@agility-workbench/grid"),ce=require("@agility-workbench/grid"),de=require("@agility-workbench/grid");var O=f(require("react"),1);var ie=new WeakMap;function Be(t){let e=t?.prototype;return typeof t=="function"&&!!e&&typeof e.init=="function"&&typeof e.getGui=="function"}function Ve(t){return class{el=document.createElement("div");root=null;handle=O.default.createRef();init(o){this.el.style.width="100%",this.el.style.height="100%",this.root=new c(this.el);let a=O.default.createElement(t,{...o,ref:this.handle});this.root.renderSync(a)}getGui(){return this.el}getValue(){return this.handle.current?.getValue()}isParsed(){return this.handle.current?.isParsed?.()??!1}focus(){this.handle.current?.focus?.()}isCancelBeforeStart(){return this.handle.current?.isCancelBeforeStart?.()??!1}destroy(){let o=this.root;this.root=null,o?.destroy()}}}function k(t){if(t==null)return;if(typeof t=="string"||Be(t))return t;let e=ie.get(t);if(e)return e;let o=Ve(t);return ie.set(t,o),o}var re=new WeakMap,ae=new WeakMap,le=new WeakMap,ue=new WeakMap;function M(t){return(typeof t=="function"||typeof t=="object")&&t!==null}function Ne(t){let e=t.colDef.cellRendererParams;return e==null||typeof e!="object"?t:{...t,...e}}function Le(t){return class{el=document.createElement("span");root=null;init(o){this.el.style.display="inline-flex",this.el.style.alignItems="center",this.el.style.width="100%",this.el.style.height="100%",this.el.style.overflow="hidden",this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(R.default.createElement(t,Ne(o)))}}}function P(t){if(!t)return;if(typeof t=="function"&&(0,v.isClassRenderer)(t)||!M(t))return t;let e=re.get(t);if(e)return e;let o=Le(t);return re.set(t,o),o}function ze(t){let e=t.colDef?.tooltipComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function Ke(t){return class{el=document.createElement("div");root=null;init(o){this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.renderSync(R.default.createElement(t,ze(o)))}}}function F(t){if(!t)return;if(typeof t=="function"&&(0,ce.isClassTooltipComponent)(t)||!M(t))return t;let e=ae.get(t);if(e)return e;let o=Ke(t);return ae.set(t,o),o}function E(t){if(t)return e=>{let o=t(e);return!o||typeof o.tooltip!="object"||o.tooltip==null?o:{...o,tooltip:{...o.tooltip,component:F(o.tooltip.component)}}}}function se(t){return t==null||typeof t=="string"?t:F(t)}function We(t){let e=t.colDef?.actionFrameComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function je(t){return class{el=document.createElement("div");root=null;init(o){this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(R.default.createElement(t,We(o)))}}}function me(t){if(!t)return;if(typeof t=="function"&&(0,de.isClassActionFrameComponent)(t)||!M(t))return t;let e=le.get(t);if(e)return e;let o=je(t);return le.set(t,o),o}function qe(t){return class{el=document.createElement("span");root=null;init(o){this.root=new c(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(R.default.createElement(t,o))}}}function w(t){if(!t)return;if(typeof t=="function"&&(0,v.isClassSetFilterComponent)(t)||!M(t))return t;let e=ue.get(t);if(e)return e;let o=qe(t);return ue.set(t,o),o}function Ce(t){if(t)return{...t,valueComponent:w(t.valueComponent),selectAllComponent:w(t.selectAllComponent),blanksComponent:w(t.blanksComponent),groupComponent:w(t.groupComponent)}}function Ue(t){return{...t,cellRenderer:P(t.cellRenderer),cellEditor:k(t.cellEditor),tooltipComponent:F(t.tooltipComponent),headerTooltip:se(t.headerTooltip),actionFrameComponent:me(t.actionFrameComponent),filterParams:Ce(t.filterParams),children:t.children?H(t.children)??void 0:void 0}}function H(t){return t==null?t:t.map(e=>Ue(e))}function fe(t){if(t==null)return;let e={...t};return"cellRenderer"in t&&(e.cellRenderer=P(t.cellRenderer)),"cellEditor"in t&&(e.cellEditor=k(t.cellEditor)),"tooltipComponent"in t&&(e.tooltipComponent=F(t.tooltipComponent)),"headerTooltip"in t&&(e.headerTooltip=se(t.headerTooltip)),"actionFrameComponent"in t&&(e.actionFrameComponent=me(t.actionFrameComponent)),"filterParams"in t&&(e.filterParams=Ce(t.filterParams)),e}function n(t,e,o){o!=null&&(t[e]=o)}function Re(t){let e={};return n(e,"headerHeight",t.headerHeight),n(e,"leafHeaderHeight",t.leafHeaderHeight),n(e,"parentHeaderHeight",t.parentHeaderHeight),n(e,"rowHeight",t.rowHeight),n(e,"pinnedTopRowData",t.pinnedTopRowData),n(e,"pinnedBottomRowData",t.pinnedBottomRowData),n(e,"getRowId",t.getRowId),n(e,"rowIdKey",t.rowIdKey),n(e,"rowDataMode",t.rowDataMode),n(e,"asyncTransactionWaitMs",t.asyncTransactionWaitMs),n(e,"overscanRowCount",t.overscanRowCount),n(e,"minResizeWidth",t.minResizeWidth),n(e,"maxColumnWidth",t.maxColumnWidth),n(e,"pivotMode",t.pivotMode),n(e,"pivotColumns",t.pivotColumns),n(e,"pivotResultColumnDef",t.pivotResultColumnDef),n(e,"maxPivotColumns",t.maxPivotColumns),n(e,"pivotColumnMoveMode",t.pivotColumnMoveMode),n(e,"autosizeColumnsOnDataChange",t.autosizeColumnsOnDataChange),n(e,"allowExportAsCSV",t.allowExportAsCSV),n(e,"allowExportAsExcel",t.allowExportAsExcel),n(e,"pagination",t.pagination),n(e,"paginationControls",t.paginationControls),n(e,"rowNumbers",t.rowNumbers),n(e,"rowHover",t.rowHover),n(e,"columnHover",t.columnHover),n(e,"zebraRows",t.zebraRows),n(e,"getRowClass",t.getRowClass),n(e,"getRowStyle",t.getRowStyle),n(e,"getRowPresentation",E(t.getRowPresentation)),n(e,"onCellClicked",t.onCellClicked),n(e,"onRowClicked",t.onRowClicked),n(e,"onCellValueChanged",t.onCellValueChanged),n(e,"onSelectionChanged",t.onSelectionChanged),n(e,"onSortChanged",t.onSortChanged),n(e,"onFilterChanged",t.onFilterChanged),n(e,"onQuickFilterFindChanged",t.onQuickFilterFindChanged),n(e,"onHistoryChanged",t.onHistoryChanged),n(e,"ariaLabel",t.ariaLabel),n(e,"ariaLabelledBy",t.ariaLabelledBy),n(e,"highlightActiveCell",t.highlightActiveCell),n(e,"rowSelection",t.rowSelection),n(e,"cellSelection",t.cellSelection),n(e,"rangeSelection",t.rangeSelection),n(e,"fillHandle",t.fillHandle),n(e,"columnSelection",t.columnSelection),n(e,"headerKeyboardNavigation",t.headerKeyboardNavigation),n(e,"showColumnButtonsOnHover",t.showColumnButtonsOnHover),n(e,"selectAllRowsOnHeaderClick",t.selectAllRowsOnHeaderClick),n(e,"selectAllScope",t.selectAllScope),n(e,"selectionPersistence",t.selectionPersistence),n(e,"clearSelectionOnBodyClick",t.clearSelectionOnBodyClick),n(e,"resetPageOn",t.resetPageOn),n(e,"pageSize",t.pageSize),n(e,"pageSizes",t.pageSizes),n(e,"serverSideBlockSize",t.serverSideBlockSize),n(e,"rowModelType",t.rowModelType),n(e,"getGroupChildCount",t.getGroupChildCount),n(e,"groupChildCount",t.groupChildCount),n(e,"paginationUnknownTotalTooltip",t.paginationUnknownTotalTooltip),n(e,"undoLimit",t.undoLimit),n(e,"editTrigger",t.editTrigger),n(e,"readOnlyEdit",t.readOnlyEdit),n(e,"initialSort",t.initialSort),n(e,"showSortPriority",t.showSortPriority),n(e,"pinnedRowsEditable",t.pinnedRowsEditable),n(e,"rowPinningMenu",t.rowPinningMenu),n(e,"rowInsertionMenu",t.rowInsertionMenu),n(e,"suppressKeyboardEdit",t.suppressKeyboardEdit),n(e,"suppressTypeToEdit",t.suppressTypeToEdit),n(e,"moveAfterEdit",t.moveAfterEdit),n(e,"commitOnBlur",t.commitOnBlur),n(e,"reevaluateOnEdit",t.reevaluateOnEdit),n(e,"groupDisplayType",t.groupDisplayType),n(e,"groupColumnDef",t.groupColumnDef),n(e,"groupDefaultExpanded",t.groupDefaultExpanded),n(e,"groupSortMode",t.groupSortMode),n(e,"treeData",t.treeData),n(e,"groupRowsSelectable",t.groupRowsSelectable),n(e,"isRowSelectable",t.isRowSelectable),n(e,"isRowPinned",t.isRowPinned),n(e,"groupRowsSticky",t.groupRowsSticky),n(e,"isFullWidthRow",t.isFullWidthRow),n(e,"tooltip",t.tooltip),n(e,"quickFilter",t.quickFilter),n(e,"columnPanel",t.columnPanel),n(e,"toolbar",t.toolbar),n(e,"savedViews",t.savedViews),n(e,"sheets",t.sheets),n(e,"loadingMessage",t.loadingMessage),n(e,"noRowsMessage",t.noRowsMessage),n(e,"pivotNoValuesMessage",t.pivotNoValuesMessage),n(e,"pivotEmptyMessage",t.pivotEmptyMessage),n(e,"filterDebounceMs",t.filterDebounceMs),n(e,"cellFlashDuration",t.cellFlashDuration),n(e,"cellFadeDuration",t.cellFadeDuration),n(e,"icons",t.icons),n(e,"theme",t.theme),t.fullWidthCellRenderer!=null&&(e.fullWidthCellRenderer=P(t.fullWidthCellRenderer)),t.defaultColDef!=null&&(e.defaultColDef=fe(t.defaultColDef)),t.bodyContextMenu===!1&&(e.bodyContextMenu=!1),t.rowModelType==="serverSide"&&(n(e,"serverSideDataSource",t.serverSideDataSource),n(e,"serverSideAggregationSource",t.serverSideAggregationSource)),n(e,"suppressStyleInjection",t.suppressStyleInjection),n(e,"styleNonce",t.styleNonce),e}var ge=f(require("react"),1);var T=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let a=[],r=o,s=this.opts.getBodyMenuItems?this.opts.getBodyMenuItems({ctx:e,items:r}):r;return{items:this.normalizeItems(s,a),cleanup:()=>{for(let C of a)C()}}}normalizeItems(e,o){return e.map(a=>{if(a.isSeparator)return{isSeparator:!0};let r=this.normalizeSlot(a.left,o),s=this.normalizeSlot(a.right,o);return{...a,left:r,right:s,subMenu:a.subMenu?this.normalizeItems(a.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(ge.default.isValidElement(e)){let{el:a,unmount:r}=this.mountReact(e);return o.push(r),a}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let a=new c(o);return a.render(e),{el:o,unmount:()=>a.destroy()}}};var ye=f(require("react"),1);var b=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let a=[],r=o,s=this.opts.getColumnMenuItems?this.opts.getColumnMenuItems({ctx:e,items:r}):r;return{items:this.normalizeItems(s,a),cleanup:()=>{for(let C of a)C()}}}normalizeItems(e,o){return e.map(a=>{if(a.isSeparator)return{isSeparator:!0};let r=this.normalizeSlot(a.left,o),s=this.normalizeSlot(a.right,o);return{...a,left:r,right:s,subMenu:a.subMenu?this.normalizeItems(a.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(ye.default.isValidElement(e)){let{el:a,unmount:r}=this.mountReact(e);return o.push(r),a}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let a=new c(o);return a.render(e),{el:o,unmount:()=>a.destroy()}}};var pe=require("react/jsx-runtime");function m(t,e){if(t){if(typeof t=="function"){t(e);return}t.current=e}}function Je(t){if(!t.destroyed){t.destroyed=!0;try{t.api.destroy()}catch{}}}var Se=i.default.forwardRef(function(e,o){let a=(0,i.useRef)(null),r=(0,i.useRef)(null),s=(0,i.useRef)(e.onGridReady),y=(0,i.useRef)(e.getColumnMenuItems),C=(0,i.useRef)(e.bodyContextMenu),B=(0,i.useRef)(e.onCellClicked),V=(0,i.useRef)(e.onRowClicked),N=(0,i.useRef)(e.onCellValueChanged),L=(0,i.useRef)(e.onSelectionChanged),z=(0,i.useRef)(e.onSortChanged),K=(0,i.useRef)(e.onFilterChanged),W=(0,i.useRef)(e.onQuickFilterFindChanged),j=(0,i.useRef)(e.onHistoryChanged),q=(0,i.useRef)(e.onBeforeCellCommit),U=(0,i.useRef)(e.fillOperation);s.current=e.onGridReady,y.current=e.getColumnMenuItems,C.current=e.bodyContextMenu,B.current=e.onCellClicked,V.current=e.onRowClicked,N.current=e.onCellValueChanged,L.current=e.onSelectionChanged,z.current=e.onSortChanged,K.current=e.onFilterChanged,W.current=e.onQuickFilterFindChanged,j.current=e.onHistoryChanged,q.current=e.onBeforeCellCommit,U.current=e.fillOperation,(0,i.useLayoutEffect)(()=>{let l=a.current;if(!l)return;let d=Re(e);d.onCellClicked=u=>B.current?.(u),d.onRowClicked=u=>V.current?.(u),d.onCellValueChanged=u=>N.current?.(u),d.onSelectionChanged=u=>L.current?.(u),d.onSortChanged=u=>z.current?.(u),d.onFilterChanged=u=>K.current?.(u),d.onQuickFilterFindChanged=u=>W.current?.(u),d.onHistoryChanged=u=>j.current?.(u),d.onBeforeCellCommit=u=>q.current?.(u),d.fillOperation=u=>U.current?.(u);let A=(0,he.createGrid)(l,{...d,menuAdapter:new b({getColumnMenuItems:u=>y.current?.(u)??u.items}),bodyMenuAdapter:new T({getBodyMenuItems:u=>{let te=C.current;return typeof te=="function"?te(u):u.items}})}),x={api:A,destroyed:!1,appliedServerSideDataSource:d.serverSideDataSource};return r.current=x,m(o,A),m(e.apiRef,A),()=>{r.current===x&&(r.current=null),m(o,null),m(e.apiRef,null),Je(x)}},[]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api??null;return m(o,l),m(e.apiRef,l),()=>{m(o,null),m(e.apiRef,null)}},[o,e.apiRef]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api;l&&l.updateGridOptions({columnDefs:H(e.columnDefs)})},[e.columnDefs]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api;l&&e.rowModelType!=="serverSide"&&l.setRowData(e.rowData??e.data??[])},[e.data,e.rowData,e.rowModelType]);let I=(0,i.useRef)(null);(0,i.useLayoutEffect)(()=>{let l=r.current;if(!(!l||I.current===l))return I.current=l,s.current?.(l.api),()=>{I.current=null}},[]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({groupDisplayType:e.groupDisplayType})},[e.groupDisplayType]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({groupSortMode:e.groupSortMode})},[e.groupSortMode]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({groupRowsSelectable:e.groupRowsSelectable})},[e.groupRowsSelectable]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({groupChildCount:e.groupChildCount})},[e.groupChildCount]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({pivotColumnMoveMode:e.pivotColumnMoveMode})},[e.pivotColumnMoveMode]);let J=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!J.current){J.current=!0;return}e.pivotMode!=null&&r.current?.api.setPivotMode(e.pivotMode)},[e.pivotMode]);let we=JSON.stringify(e.pivotColumns??null),Q=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!Q.current){Q.current=!0;return}e.pivotColumns!=null&&r.current?.api.setPivotColumns(e.pivotColumns)},[we]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({isRowSelectable:e.isRowSelectable})},[e.isRowSelectable]);let ve=JSON.stringify(e.rowSelection??null),_=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!_.current){_.current=!0;return}r.current?.api.updateGridOptions({rowSelection:e.rowSelection})},[ve]),(0,i.useLayoutEffect)(()=>{r.current?.api.setTreeDataKeyboardNavigationOptions({keyboardNavigationMode:e.treeData?.keyboardNavigationMode,enableKeyboardNavigationModeSwitch:e.treeData?.enableKeyboardNavigationModeSwitch??!1})},[e.treeData?.keyboardNavigationMode,e.treeData?.enableKeyboardNavigationModeSwitch]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({pinnedTopRowData:e.pinnedTopRowData,pinnedBottomRowData:e.pinnedBottomRowData,isRowPinned:e.isRowPinned,groupRowsSticky:e.groupRowsSticky})},[e.pinnedTopRowData,e.pinnedBottomRowData,e.isRowPinned,e.groupRowsSticky]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({rowHover:e.rowHover??!0,columnHover:e.columnHover??!1,zebraRows:e.zebraRows??!1,getRowClass:e.getRowClass,getRowStyle:e.getRowStyle,getRowPresentation:E(e.getRowPresentation),ariaLabel:e.ariaLabel,ariaLabelledBy:e.ariaLabelledBy,highlightActiveCell:e.highlightActiveCell??!1,cellSelection:e.cellSelection??!0,rangeSelection:e.rangeSelection??!0,fillHandle:e.fillHandle??!0,columnSelection:e.columnSelection??!0,headerKeyboardNavigation:e.headerKeyboardNavigation??!0,showColumnButtonsOnHover:e.showColumnButtonsOnHover??!1,bodyContextMenu:e.bodyContextMenu!==!1,editTrigger:e.editTrigger??"doubleClick",readOnlyEdit:e.readOnlyEdit??!1,pinnedRowsEditable:e.pinnedRowsEditable??!1,rowPinningMenu:e.rowPinningMenu??!1,rowInsertionMenu:e.rowInsertionMenu,suppressKeyboardEdit:e.suppressKeyboardEdit??!1,suppressTypeToEdit:e.suppressTypeToEdit??!1,moveAfterEdit:e.moveAfterEdit??!0,commitOnBlur:e.commitOnBlur??!0,asyncTransactionWaitMs:e.asyncTransactionWaitMs??16})},[e.rowHover,e.columnHover,e.zebraRows,e.getRowClass,e.getRowStyle,e.getRowPresentation,e.ariaLabel,e.ariaLabelledBy,e.highlightActiveCell,e.cellSelection,e.rangeSelection,e.fillHandle,e.columnSelection,e.headerKeyboardNavigation,e.showColumnButtonsOnHover,e.bodyContextMenu,e.editTrigger,e.readOnlyEdit,e.pinnedRowsEditable,e.rowPinningMenu,e.rowInsertionMenu,e.suppressKeyboardEdit,e.suppressTypeToEdit,e.moveAfterEdit,e.commitOnBlur,e.asyncTransactionWaitMs]),(0,i.useLayoutEffect)(()=>{let l=r.current;!l||e.rowModelType!=="serverSide"||e.serverSideDataSource&&e.serverSideDataSource!==l.appliedServerSideDataSource&&(l.appliedServerSideDataSource=e.serverSideDataSource,l.api.updateGridOptions({serverSideDataSource:e.serverSideDataSource}))},[e.rowModelType,e.serverSideDataSource]),(0,i.useLayoutEffect)(()=>{let l=r.current;!l||e.rowModelType!=="serverSide"||e.serverSideAggregationSource&&l.api.updateGridOptions({serverSideAggregationSource:e.serverSideAggregationSource})},[e.rowModelType,e.serverSideAggregationSource]),(0,i.useLayoutEffect)(()=>{let l=r.current?.api;l&&l.dispatch({type:"overlayShow",overlayType:e.loading?"loading":"none"})},[e.loading]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({pagination:e.pagination})},[e.pagination]);let Me=JSON.stringify(e.paginationControls??null),Y=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!Y.current){Y.current=!0;return}r.current?.api.updateGridOptions({paginationControls:e.paginationControls})},[Me]);let Pe=JSON.stringify(e.quickFilter??null),X=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!X.current){X.current=!0;return}r.current?.api.updateGridOptions({quickFilter:e.quickFilter})},[Pe]);let Fe=JSON.stringify(e.tooltip??null),Z=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!Z.current){Z.current=!0;return}r.current?.api.updateGridOptions({tooltip:e.tooltip})},[Fe]);let Ee=JSON.stringify(e.columnPanel??null),$=(0,i.useRef)(!1);(0,i.useLayoutEffect)(()=>{if(!$.current){$.current=!0;return}r.current?.api.updateGridOptions({columnPanel:e.columnPanel})},[Ee]);let Te=JSON.stringify(e.toolbar??null),ee=(0,i.useRef)(!1);return(0,i.useLayoutEffect)(()=>{if(!ee.current){ee.current=!0;return}r.current?.api.updateGridOptions({toolbar:e.toolbar})},[Te]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({savedViews:e.savedViews})},[e.savedViews]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({sheets:e.sheets})},[e.sheets]),(0,i.useLayoutEffect)(()=>{r.current?.api.updateGridOptions({theme:e.theme,icons:{...e.theme?.getIcons(),...e.icons}})},[e.theme,e.icons]),(0,pe.jsx)("div",{ref:a,className:e.className,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",...e.style}})});0&&(module.exports={Grid,...require("@agility-workbench/grid")});
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- export*from"@agility-workbench/grid";import Oe,{useLayoutEffect as a,useRef as c}from"react";import{createGrid as ke}from"@agility-workbench/grid";import y from"react";import{flushSync as fe}from"react-dom";import{createRoot as Re}from"react-dom/client";var T=new Set,b=!1;function ge(){b=!1;let t=Array.from(T);T.clear();for(let e of t)e.unmount()}function ye(t){T.add(t),!b&&(b=!0,queueMicrotask(ge))}var d=class{root;constructor(e){this.root=Re(e)}render(e){this.root?.render(e)}renderSync(e){let o=this.root;o&&fe(()=>o.render(e))}destroy(){let e=this.root;e&&(this.root=null,ye(e))}};import{isClassRenderer as pe,isClassSetFilterComponent as we}from"@agility-workbench/grid";import{isClassTooltipComponent as ve}from"@agility-workbench/grid";import{isClassActionFrameComponent as Me}from"@agility-workbench/grid";import Y from"react";var X=new WeakMap;function he(t){let e=t?.prototype;return typeof t=="function"&&!!e&&typeof e.init=="function"&&typeof e.getGui=="function"}function Se(t){return class{el=document.createElement("div");root=null;handle=Y.createRef();init(o){this.el.style.width="100%",this.el.style.height="100%",this.root=new d(this.el);let r=Y.createElement(t,{...o,ref:this.handle});this.root.renderSync(r)}getGui(){return this.el}getValue(){return this.handle.current?.getValue()}isParsed(){return this.handle.current?.isParsed?.()??!1}focus(){this.handle.current?.focus?.()}isCancelBeforeStart(){return this.handle.current?.isCancelBeforeStart?.()??!1}destroy(){let o=this.root;this.root=null,o?.destroy()}}}function I(t){if(t==null)return;if(typeof t=="string"||he(t))return t;let e=X.get(t);if(e)return e;let o=Se(t);return X.set(t,o),o}var Z=new WeakMap,$=new WeakMap,ee=new WeakMap,te=new WeakMap;function h(t){return(typeof t=="function"||typeof t=="object")&&t!==null}function Pe(t){let e=t.colDef.cellRendererParams;return e==null||typeof e!="object"?t:{...t,...e}}function Fe(t){return class{el=document.createElement("span");root=null;init(o){this.el.style.display="inline-flex",this.el.style.alignItems="center",this.el.style.width="100%",this.el.style.height="100%",this.el.style.overflow="hidden",this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(y.createElement(t,Pe(o)))}}}function S(t){if(!t)return;if(typeof t=="function"&&pe(t)||!h(t))return t;let e=Z.get(t);if(e)return e;let o=Fe(t);return Z.set(t,o),o}function Ee(t){let e=t.colDef?.tooltipComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function Te(t){return class{el=document.createElement("div");root=null;init(o){this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.renderSync(y.createElement(t,Ee(o)))}}}function p(t){if(!t)return;if(typeof t=="function"&&ve(t)||!h(t))return t;let e=$.get(t);if(e)return e;let o=Te(t);return $.set(t,o),o}function w(t){if(t)return e=>{let o=t(e);return!o||typeof o.tooltip!="object"||o.tooltip==null?o:{...o,tooltip:{...o.tooltip,component:p(o.tooltip.component)}}}}function ne(t){return t==null||typeof t=="string"?t:p(t)}function be(t){let e=t.colDef?.actionFrameComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function Ie(t){return class{el=document.createElement("div");root=null;init(o){this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(y.createElement(t,be(o)))}}}function oe(t){if(!t)return;if(typeof t=="function"&&Me(t)||!h(t))return t;let e=ee.get(t);if(e)return e;let o=Ie(t);return ee.set(t,o),o}function Ae(t){return class{el=document.createElement("span");root=null;init(o){this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(y.createElement(t,o))}}}function g(t){if(!t)return;if(typeof t=="function"&&we(t)||!h(t))return t;let e=te.get(t);if(e)return e;let o=Ae(t);return te.set(t,o),o}function ie(t){if(t)return{...t,valueComponent:g(t.valueComponent),selectAllComponent:g(t.selectAllComponent),blanksComponent:g(t.blanksComponent),groupComponent:g(t.groupComponent)}}function xe(t){return{...t,cellRenderer:S(t.cellRenderer),cellEditor:I(t.cellEditor),tooltipComponent:p(t.tooltipComponent),headerTooltip:ne(t.headerTooltip),actionFrameComponent:oe(t.actionFrameComponent),filterParams:ie(t.filterParams),children:t.children?A(t.children)??void 0:void 0}}function A(t){return t==null?t:t.map(e=>xe(e))}function re(t){if(t==null)return;let e={...t};return"cellRenderer"in t&&(e.cellRenderer=S(t.cellRenderer)),"cellEditor"in t&&(e.cellEditor=I(t.cellEditor)),"tooltipComponent"in t&&(e.tooltipComponent=p(t.tooltipComponent)),"headerTooltip"in t&&(e.headerTooltip=ne(t.headerTooltip)),"actionFrameComponent"in t&&(e.actionFrameComponent=oe(t.actionFrameComponent)),"filterParams"in t&&(e.filterParams=ie(t.filterParams)),e}function n(t,e,o){o!=null&&(t[e]=o)}function ae(t){let e={};return n(e,"headerHeight",t.headerHeight),n(e,"leafHeaderHeight",t.leafHeaderHeight),n(e,"parentHeaderHeight",t.parentHeaderHeight),n(e,"rowHeight",t.rowHeight),n(e,"pinnedTopRowData",t.pinnedTopRowData),n(e,"pinnedBottomRowData",t.pinnedBottomRowData),n(e,"getRowId",t.getRowId),n(e,"rowIdKey",t.rowIdKey),n(e,"rowDataMode",t.rowDataMode),n(e,"asyncTransactionWaitMs",t.asyncTransactionWaitMs),n(e,"overscanRowCount",t.overscanRowCount),n(e,"minResizeWidth",t.minResizeWidth),n(e,"maxColumnWidth",t.maxColumnWidth),n(e,"pivotMode",t.pivotMode),n(e,"pivotColumns",t.pivotColumns),n(e,"pivotResultColumnDef",t.pivotResultColumnDef),n(e,"maxPivotColumns",t.maxPivotColumns),n(e,"pivotColumnMoveMode",t.pivotColumnMoveMode),n(e,"autosizeColumnsOnDataChange",t.autosizeColumnsOnDataChange),n(e,"allowExportAsCSV",t.allowExportAsCSV),n(e,"allowExportAsExcel",t.allowExportAsExcel),n(e,"pagination",t.pagination),n(e,"paginationControls",t.paginationControls),n(e,"rowNumbers",t.rowNumbers),n(e,"rowHover",t.rowHover),n(e,"columnHover",t.columnHover),n(e,"zebraRows",t.zebraRows),n(e,"getRowClass",t.getRowClass),n(e,"getRowStyle",t.getRowStyle),n(e,"getRowPresentation",w(t.getRowPresentation)),n(e,"onCellClicked",t.onCellClicked),n(e,"onRowClicked",t.onRowClicked),n(e,"onCellValueChanged",t.onCellValueChanged),n(e,"onSelectionChanged",t.onSelectionChanged),n(e,"onSortChanged",t.onSortChanged),n(e,"onFilterChanged",t.onFilterChanged),n(e,"onQuickFilterFindChanged",t.onQuickFilterFindChanged),n(e,"onHistoryChanged",t.onHistoryChanged),n(e,"ariaLabel",t.ariaLabel),n(e,"ariaLabelledBy",t.ariaLabelledBy),n(e,"highlightActiveCell",t.highlightActiveCell),n(e,"rowSelection",t.rowSelection),n(e,"cellSelection",t.cellSelection),n(e,"rangeSelection",t.rangeSelection),n(e,"fillHandle",t.fillHandle),n(e,"columnSelection",t.columnSelection),n(e,"headerKeyboardNavigation",t.headerKeyboardNavigation),n(e,"showColumnButtonsOnHover",t.showColumnButtonsOnHover),n(e,"selectAllRowsOnHeaderClick",t.selectAllRowsOnHeaderClick),n(e,"selectAllScope",t.selectAllScope),n(e,"selectionPersistence",t.selectionPersistence),n(e,"clearSelectionOnBodyClick",t.clearSelectionOnBodyClick),n(e,"resetPageOn",t.resetPageOn),n(e,"pageSize",t.pageSize),n(e,"pageSizes",t.pageSizes),n(e,"serverSideBlockSize",t.serverSideBlockSize),n(e,"rowModelType",t.rowModelType),n(e,"getGroupChildCount",t.getGroupChildCount),n(e,"paginationUnknownTotalTooltip",t.paginationUnknownTotalTooltip),n(e,"undoLimit",t.undoLimit),n(e,"editTrigger",t.editTrigger),n(e,"readOnlyEdit",t.readOnlyEdit),n(e,"initialSort",t.initialSort),n(e,"showSortPriority",t.showSortPriority),n(e,"pinnedRowsEditable",t.pinnedRowsEditable),n(e,"rowPinningMenu",t.rowPinningMenu),n(e,"rowInsertionMenu",t.rowInsertionMenu),n(e,"suppressKeyboardEdit",t.suppressKeyboardEdit),n(e,"suppressTypeToEdit",t.suppressTypeToEdit),n(e,"moveAfterEdit",t.moveAfterEdit),n(e,"commitOnBlur",t.commitOnBlur),n(e,"reevaluateOnEdit",t.reevaluateOnEdit),n(e,"groupDisplayType",t.groupDisplayType),n(e,"groupColumnDef",t.groupColumnDef),n(e,"groupDefaultExpanded",t.groupDefaultExpanded),n(e,"groupSortMode",t.groupSortMode),n(e,"treeData",t.treeData),n(e,"groupRowsSelectable",t.groupRowsSelectable),n(e,"isRowSelectable",t.isRowSelectable),n(e,"isRowPinned",t.isRowPinned),n(e,"groupRowsSticky",t.groupRowsSticky),n(e,"isFullWidthRow",t.isFullWidthRow),n(e,"tooltip",t.tooltip),n(e,"quickFilter",t.quickFilter),n(e,"columnPanel",t.columnPanel),n(e,"toolbar",t.toolbar),n(e,"savedViews",t.savedViews),n(e,"sheets",t.sheets),n(e,"loadingMessage",t.loadingMessage),n(e,"noRowsMessage",t.noRowsMessage),n(e,"pivotNoValuesMessage",t.pivotNoValuesMessage),n(e,"pivotEmptyMessage",t.pivotEmptyMessage),n(e,"filterDebounceMs",t.filterDebounceMs),n(e,"cellFlashDuration",t.cellFlashDuration),n(e,"cellFadeDuration",t.cellFadeDuration),n(e,"icons",t.icons),n(e,"theme",t.theme),t.fullWidthCellRenderer!=null&&(e.fullWidthCellRenderer=S(t.fullWidthCellRenderer)),t.defaultColDef!=null&&(e.defaultColDef=re(t.defaultColDef)),t.bodyContextMenu===!1&&(e.bodyContextMenu=!1),t.rowModelType==="serverSide"&&(n(e,"serverSideDataSource",t.serverSideDataSource),n(e,"serverSideAggregationSource",t.serverSideAggregationSource)),n(e,"suppressStyleInjection",t.suppressStyleInjection),n(e,"styleNonce",t.styleNonce),e}import Ge from"react";var v=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let r=[],i=o,m=this.opts.getBodyMenuItems?this.opts.getBodyMenuItems({ctx:e,items:i}):i;return{items:this.normalizeItems(m,r),cleanup:()=>{for(let f of r)f()}}}normalizeItems(e,o){return e.map(r=>{if(r.isSeparator)return{isSeparator:!0};let i=this.normalizeSlot(r.left,o),m=this.normalizeSlot(r.right,o);return{...r,left:i,right:m,subMenu:r.subMenu?this.normalizeItems(r.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(Ge.isValidElement(e)){let{el:r,unmount:i}=this.mountReact(e);return o.push(i),r}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let r=new d(o);return r.render(e),{el:o,unmount:()=>r.destroy()}}};import De from"react";var M=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let r=[],i=o,m=this.opts.getColumnMenuItems?this.opts.getColumnMenuItems({ctx:e,items:i}):i;return{items:this.normalizeItems(m,r),cleanup:()=>{for(let f of r)f()}}}normalizeItems(e,o){return e.map(r=>{if(r.isSeparator)return{isSeparator:!0};let i=this.normalizeSlot(r.left,o),m=this.normalizeSlot(r.right,o);return{...r,left:i,right:m,subMenu:r.subMenu?this.normalizeItems(r.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(De.isValidElement(e)){let{el:r,unmount:i}=this.mountReact(e);return o.push(i),r}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let r=new d(o);return r.render(e),{el:o,unmount:()=>r.destroy()}}};import{jsx as Ve}from"react/jsx-runtime";function C(t,e){if(t){if(typeof t=="function"){t(e);return}t.current=e}}function He(t){if(!t.destroyed){t.destroyed=!0;try{t.api.destroy()}catch{}}}var Be=Oe.forwardRef(function(e,o){let r=c(null),i=c(null),m=c(e.onGridReady),R=c(e.getColumnMenuItems),f=c(e.bodyContextMenu),x=c(e.onCellClicked),G=c(e.onRowClicked),D=c(e.onCellValueChanged),O=c(e.onSelectionChanged),k=c(e.onSortChanged),H=c(e.onFilterChanged),B=c(e.onQuickFilterFindChanged),V=c(e.onHistoryChanged),N=c(e.onBeforeCellCommit),L=c(e.fillOperation);m.current=e.onGridReady,R.current=e.getColumnMenuItems,f.current=e.bodyContextMenu,x.current=e.onCellClicked,G.current=e.onRowClicked,D.current=e.onCellValueChanged,O.current=e.onSelectionChanged,k.current=e.onSortChanged,H.current=e.onFilterChanged,B.current=e.onQuickFilterFindChanged,V.current=e.onHistoryChanged,N.current=e.onBeforeCellCommit,L.current=e.fillOperation,a(()=>{let l=r.current;if(!l)return;let s=ae(e);s.onCellClicked=u=>x.current?.(u),s.onRowClicked=u=>G.current?.(u),s.onCellValueChanged=u=>D.current?.(u),s.onSelectionChanged=u=>O.current?.(u),s.onSortChanged=u=>k.current?.(u),s.onFilterChanged=u=>H.current?.(u),s.onQuickFilterFindChanged=u=>B.current?.(u),s.onHistoryChanged=u=>V.current?.(u),s.onBeforeCellCommit=u=>N.current?.(u),s.fillOperation=u=>L.current?.(u);let F=ke(l,{...s,menuAdapter:new M({getColumnMenuItems:u=>R.current?.(u)??u.items}),bodyMenuAdapter:new v({getBodyMenuItems:u=>{let _=f.current;return typeof _=="function"?_(u):u.items}})}),E={api:F,destroyed:!1,appliedServerSideDataSource:s.serverSideDataSource};return i.current=E,C(o,F),C(e.apiRef,F),()=>{i.current===E&&(i.current=null),C(o,null),C(e.apiRef,null),He(E)}},[]),a(()=>{let l=i.current?.api??null;return C(o,l),C(e.apiRef,l),()=>{C(o,null),C(e.apiRef,null)}},[o,e.apiRef]),a(()=>{let l=i.current?.api;l&&l.updateGridOptions({columnDefs:A(e.columnDefs)})},[e.columnDefs]),a(()=>{let l=i.current?.api;l&&e.rowModelType!=="serverSide"&&l.setRowData(e.rowData??e.data??[])},[e.data,e.rowData,e.rowModelType]);let P=c(null);a(()=>{let l=i.current;if(!(!l||P.current===l))return P.current=l,m.current?.(l.api),()=>{P.current=null}},[]),a(()=>{i.current?.api.updateGridOptions({groupDisplayType:e.groupDisplayType})},[e.groupDisplayType]),a(()=>{i.current?.api.updateGridOptions({groupSortMode:e.groupSortMode})},[e.groupSortMode]),a(()=>{i.current?.api.updateGridOptions({groupRowsSelectable:e.groupRowsSelectable})},[e.groupRowsSelectable]),a(()=>{i.current?.api.updateGridOptions({pivotColumnMoveMode:e.pivotColumnMoveMode})},[e.pivotColumnMoveMode]);let z=c(!1);a(()=>{if(!z.current){z.current=!0;return}e.pivotMode!=null&&i.current?.api.setPivotMode(e.pivotMode)},[e.pivotMode]);let le=JSON.stringify(e.pivotColumns??null),K=c(!1);a(()=>{if(!K.current){K.current=!0;return}e.pivotColumns!=null&&i.current?.api.setPivotColumns(e.pivotColumns)},[le]),a(()=>{i.current?.api.updateGridOptions({isRowSelectable:e.isRowSelectable})},[e.isRowSelectable]);let ue=JSON.stringify(e.rowSelection??null),W=c(!1);a(()=>{if(!W.current){W.current=!0;return}i.current?.api.updateGridOptions({rowSelection:e.rowSelection})},[ue]),a(()=>{i.current?.api.setTreeDataKeyboardNavigationOptions({keyboardNavigationMode:e.treeData?.keyboardNavigationMode,enableKeyboardNavigationModeSwitch:e.treeData?.enableKeyboardNavigationModeSwitch??!1})},[e.treeData?.keyboardNavigationMode,e.treeData?.enableKeyboardNavigationModeSwitch]),a(()=>{i.current?.api.updateGridOptions({pinnedTopRowData:e.pinnedTopRowData,pinnedBottomRowData:e.pinnedBottomRowData,isRowPinned:e.isRowPinned,groupRowsSticky:e.groupRowsSticky})},[e.pinnedTopRowData,e.pinnedBottomRowData,e.isRowPinned,e.groupRowsSticky]),a(()=>{i.current?.api.updateGridOptions({rowHover:e.rowHover??!0,columnHover:e.columnHover??!1,zebraRows:e.zebraRows??!1,getRowClass:e.getRowClass,getRowStyle:e.getRowStyle,getRowPresentation:w(e.getRowPresentation),ariaLabel:e.ariaLabel,ariaLabelledBy:e.ariaLabelledBy,highlightActiveCell:e.highlightActiveCell??!1,cellSelection:e.cellSelection??!0,rangeSelection:e.rangeSelection??!0,fillHandle:e.fillHandle??!0,columnSelection:e.columnSelection??!0,headerKeyboardNavigation:e.headerKeyboardNavigation??!0,showColumnButtonsOnHover:e.showColumnButtonsOnHover??!1,bodyContextMenu:e.bodyContextMenu!==!1,editTrigger:e.editTrigger??"doubleClick",readOnlyEdit:e.readOnlyEdit??!1,pinnedRowsEditable:e.pinnedRowsEditable??!1,rowPinningMenu:e.rowPinningMenu??!1,rowInsertionMenu:e.rowInsertionMenu,suppressKeyboardEdit:e.suppressKeyboardEdit??!1,suppressTypeToEdit:e.suppressTypeToEdit??!1,moveAfterEdit:e.moveAfterEdit??!0,commitOnBlur:e.commitOnBlur??!0,asyncTransactionWaitMs:e.asyncTransactionWaitMs??16})},[e.rowHover,e.columnHover,e.zebraRows,e.getRowClass,e.getRowStyle,e.getRowPresentation,e.ariaLabel,e.ariaLabelledBy,e.highlightActiveCell,e.cellSelection,e.rangeSelection,e.fillHandle,e.columnSelection,e.headerKeyboardNavigation,e.showColumnButtonsOnHover,e.bodyContextMenu,e.editTrigger,e.readOnlyEdit,e.pinnedRowsEditable,e.rowPinningMenu,e.rowInsertionMenu,e.suppressKeyboardEdit,e.suppressTypeToEdit,e.moveAfterEdit,e.commitOnBlur,e.asyncTransactionWaitMs]),a(()=>{let l=i.current;!l||e.rowModelType!=="serverSide"||e.serverSideDataSource&&e.serverSideDataSource!==l.appliedServerSideDataSource&&(l.appliedServerSideDataSource=e.serverSideDataSource,l.api.updateGridOptions({serverSideDataSource:e.serverSideDataSource}))},[e.rowModelType,e.serverSideDataSource]),a(()=>{let l=i.current;!l||e.rowModelType!=="serverSide"||e.serverSideAggregationSource&&l.api.updateGridOptions({serverSideAggregationSource:e.serverSideAggregationSource})},[e.rowModelType,e.serverSideAggregationSource]),a(()=>{let l=i.current?.api;l&&l.dispatch({type:"overlayShow",overlayType:e.loading?"loading":"none"})},[e.loading]),a(()=>{i.current?.api.updateGridOptions({pagination:e.pagination})},[e.pagination]);let ce=JSON.stringify(e.paginationControls??null),j=c(!1);a(()=>{if(!j.current){j.current=!0;return}i.current?.api.updateGridOptions({paginationControls:e.paginationControls})},[ce]);let de=JSON.stringify(e.quickFilter??null),q=c(!1);a(()=>{if(!q.current){q.current=!0;return}i.current?.api.updateGridOptions({quickFilter:e.quickFilter})},[de]);let se=JSON.stringify(e.tooltip??null),U=c(!1);a(()=>{if(!U.current){U.current=!0;return}i.current?.api.updateGridOptions({tooltip:e.tooltip})},[se]);let me=JSON.stringify(e.columnPanel??null),J=c(!1);a(()=>{if(!J.current){J.current=!0;return}i.current?.api.updateGridOptions({columnPanel:e.columnPanel})},[me]);let Ce=JSON.stringify(e.toolbar??null),Q=c(!1);return a(()=>{if(!Q.current){Q.current=!0;return}i.current?.api.updateGridOptions({toolbar:e.toolbar})},[Ce]),a(()=>{i.current?.api.updateGridOptions({savedViews:e.savedViews})},[e.savedViews]),a(()=>{i.current?.api.updateGridOptions({sheets:e.sheets})},[e.sheets]),a(()=>{i.current?.api.updateGridOptions({theme:e.theme,icons:{...e.theme?.getIcons(),...e.icons}})},[e.theme,e.icons]),Ve("div",{ref:r,className:e.className,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",...e.style}})});export{Be as Grid};
1
+ export*from"@agility-workbench/grid";import Oe,{useLayoutEffect as a,useRef as c}from"react";import{createGrid as ke}from"@agility-workbench/grid";import y from"react";import{flushSync as fe}from"react-dom";import{createRoot as Re}from"react-dom/client";var T=new Set,b=!1;function ge(){b=!1;let t=Array.from(T);T.clear();for(let e of t)e.unmount()}function ye(t){T.add(t),!b&&(b=!0,queueMicrotask(ge))}var d=class{root;constructor(e){this.root=Re(e)}render(e){this.root?.render(e)}renderSync(e){let o=this.root;o&&fe(()=>o.render(e))}destroy(){let e=this.root;e&&(this.root=null,ye(e))}};import{isClassRenderer as pe,isClassSetFilterComponent as we}from"@agility-workbench/grid";import{isClassTooltipComponent as ve}from"@agility-workbench/grid";import{isClassActionFrameComponent as Me}from"@agility-workbench/grid";import Y from"react";var X=new WeakMap;function he(t){let e=t?.prototype;return typeof t=="function"&&!!e&&typeof e.init=="function"&&typeof e.getGui=="function"}function Se(t){return class{el=document.createElement("div");root=null;handle=Y.createRef();init(o){this.el.style.width="100%",this.el.style.height="100%",this.root=new d(this.el);let r=Y.createElement(t,{...o,ref:this.handle});this.root.renderSync(r)}getGui(){return this.el}getValue(){return this.handle.current?.getValue()}isParsed(){return this.handle.current?.isParsed?.()??!1}focus(){this.handle.current?.focus?.()}isCancelBeforeStart(){return this.handle.current?.isCancelBeforeStart?.()??!1}destroy(){let o=this.root;this.root=null,o?.destroy()}}}function I(t){if(t==null)return;if(typeof t=="string"||he(t))return t;let e=X.get(t);if(e)return e;let o=Se(t);return X.set(t,o),o}var Z=new WeakMap,$=new WeakMap,ee=new WeakMap,te=new WeakMap;function h(t){return(typeof t=="function"||typeof t=="object")&&t!==null}function Pe(t){let e=t.colDef.cellRendererParams;return e==null||typeof e!="object"?t:{...t,...e}}function Fe(t){return class{el=document.createElement("span");root=null;init(o){this.el.style.display="inline-flex",this.el.style.alignItems="center",this.el.style.width="100%",this.el.style.height="100%",this.el.style.overflow="hidden",this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(y.createElement(t,Pe(o)))}}}function S(t){if(!t)return;if(typeof t=="function"&&pe(t)||!h(t))return t;let e=Z.get(t);if(e)return e;let o=Fe(t);return Z.set(t,o),o}function Ee(t){let e=t.colDef?.tooltipComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function Te(t){return class{el=document.createElement("div");root=null;init(o){this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.renderSync(y.createElement(t,Ee(o)))}}}function p(t){if(!t)return;if(typeof t=="function"&&ve(t)||!h(t))return t;let e=$.get(t);if(e)return e;let o=Te(t);return $.set(t,o),o}function w(t){if(t)return e=>{let o=t(e);return!o||typeof o.tooltip!="object"||o.tooltip==null?o:{...o,tooltip:{...o.tooltip,component:p(o.tooltip.component)}}}}function ne(t){return t==null||typeof t=="string"?t:p(t)}function be(t){let e=t.colDef?.actionFrameComponentParams;return e==null||typeof e!="object"?t:{...t,...e}}function Ie(t){return class{el=document.createElement("div");root=null;init(o){this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(y.createElement(t,be(o)))}}}function oe(t){if(!t)return;if(typeof t=="function"&&Me(t)||!h(t))return t;let e=ee.get(t);if(e)return e;let o=Ie(t);return ee.set(t,o),o}function Ae(t){return class{el=document.createElement("span");root=null;init(o){this.root=new d(this.el),this.render(o)}getGui(){return this.el}refresh(o){return this.render(o),!0}destroy(){this.root?.destroy(),this.root=null}render(o){this.root?.render(y.createElement(t,o))}}}function g(t){if(!t)return;if(typeof t=="function"&&we(t)||!h(t))return t;let e=te.get(t);if(e)return e;let o=Ae(t);return te.set(t,o),o}function ie(t){if(t)return{...t,valueComponent:g(t.valueComponent),selectAllComponent:g(t.selectAllComponent),blanksComponent:g(t.blanksComponent),groupComponent:g(t.groupComponent)}}function xe(t){return{...t,cellRenderer:S(t.cellRenderer),cellEditor:I(t.cellEditor),tooltipComponent:p(t.tooltipComponent),headerTooltip:ne(t.headerTooltip),actionFrameComponent:oe(t.actionFrameComponent),filterParams:ie(t.filterParams),children:t.children?A(t.children)??void 0:void 0}}function A(t){return t==null?t:t.map(e=>xe(e))}function re(t){if(t==null)return;let e={...t};return"cellRenderer"in t&&(e.cellRenderer=S(t.cellRenderer)),"cellEditor"in t&&(e.cellEditor=I(t.cellEditor)),"tooltipComponent"in t&&(e.tooltipComponent=p(t.tooltipComponent)),"headerTooltip"in t&&(e.headerTooltip=ne(t.headerTooltip)),"actionFrameComponent"in t&&(e.actionFrameComponent=oe(t.actionFrameComponent)),"filterParams"in t&&(e.filterParams=ie(t.filterParams)),e}function n(t,e,o){o!=null&&(t[e]=o)}function ae(t){let e={};return n(e,"headerHeight",t.headerHeight),n(e,"leafHeaderHeight",t.leafHeaderHeight),n(e,"parentHeaderHeight",t.parentHeaderHeight),n(e,"rowHeight",t.rowHeight),n(e,"pinnedTopRowData",t.pinnedTopRowData),n(e,"pinnedBottomRowData",t.pinnedBottomRowData),n(e,"getRowId",t.getRowId),n(e,"rowIdKey",t.rowIdKey),n(e,"rowDataMode",t.rowDataMode),n(e,"asyncTransactionWaitMs",t.asyncTransactionWaitMs),n(e,"overscanRowCount",t.overscanRowCount),n(e,"minResizeWidth",t.minResizeWidth),n(e,"maxColumnWidth",t.maxColumnWidth),n(e,"pivotMode",t.pivotMode),n(e,"pivotColumns",t.pivotColumns),n(e,"pivotResultColumnDef",t.pivotResultColumnDef),n(e,"maxPivotColumns",t.maxPivotColumns),n(e,"pivotColumnMoveMode",t.pivotColumnMoveMode),n(e,"autosizeColumnsOnDataChange",t.autosizeColumnsOnDataChange),n(e,"allowExportAsCSV",t.allowExportAsCSV),n(e,"allowExportAsExcel",t.allowExportAsExcel),n(e,"pagination",t.pagination),n(e,"paginationControls",t.paginationControls),n(e,"rowNumbers",t.rowNumbers),n(e,"rowHover",t.rowHover),n(e,"columnHover",t.columnHover),n(e,"zebraRows",t.zebraRows),n(e,"getRowClass",t.getRowClass),n(e,"getRowStyle",t.getRowStyle),n(e,"getRowPresentation",w(t.getRowPresentation)),n(e,"onCellClicked",t.onCellClicked),n(e,"onRowClicked",t.onRowClicked),n(e,"onCellValueChanged",t.onCellValueChanged),n(e,"onSelectionChanged",t.onSelectionChanged),n(e,"onSortChanged",t.onSortChanged),n(e,"onFilterChanged",t.onFilterChanged),n(e,"onQuickFilterFindChanged",t.onQuickFilterFindChanged),n(e,"onHistoryChanged",t.onHistoryChanged),n(e,"ariaLabel",t.ariaLabel),n(e,"ariaLabelledBy",t.ariaLabelledBy),n(e,"highlightActiveCell",t.highlightActiveCell),n(e,"rowSelection",t.rowSelection),n(e,"cellSelection",t.cellSelection),n(e,"rangeSelection",t.rangeSelection),n(e,"fillHandle",t.fillHandle),n(e,"columnSelection",t.columnSelection),n(e,"headerKeyboardNavigation",t.headerKeyboardNavigation),n(e,"showColumnButtonsOnHover",t.showColumnButtonsOnHover),n(e,"selectAllRowsOnHeaderClick",t.selectAllRowsOnHeaderClick),n(e,"selectAllScope",t.selectAllScope),n(e,"selectionPersistence",t.selectionPersistence),n(e,"clearSelectionOnBodyClick",t.clearSelectionOnBodyClick),n(e,"resetPageOn",t.resetPageOn),n(e,"pageSize",t.pageSize),n(e,"pageSizes",t.pageSizes),n(e,"serverSideBlockSize",t.serverSideBlockSize),n(e,"rowModelType",t.rowModelType),n(e,"getGroupChildCount",t.getGroupChildCount),n(e,"groupChildCount",t.groupChildCount),n(e,"paginationUnknownTotalTooltip",t.paginationUnknownTotalTooltip),n(e,"undoLimit",t.undoLimit),n(e,"editTrigger",t.editTrigger),n(e,"readOnlyEdit",t.readOnlyEdit),n(e,"initialSort",t.initialSort),n(e,"showSortPriority",t.showSortPriority),n(e,"pinnedRowsEditable",t.pinnedRowsEditable),n(e,"rowPinningMenu",t.rowPinningMenu),n(e,"rowInsertionMenu",t.rowInsertionMenu),n(e,"suppressKeyboardEdit",t.suppressKeyboardEdit),n(e,"suppressTypeToEdit",t.suppressTypeToEdit),n(e,"moveAfterEdit",t.moveAfterEdit),n(e,"commitOnBlur",t.commitOnBlur),n(e,"reevaluateOnEdit",t.reevaluateOnEdit),n(e,"groupDisplayType",t.groupDisplayType),n(e,"groupColumnDef",t.groupColumnDef),n(e,"groupDefaultExpanded",t.groupDefaultExpanded),n(e,"groupSortMode",t.groupSortMode),n(e,"treeData",t.treeData),n(e,"groupRowsSelectable",t.groupRowsSelectable),n(e,"isRowSelectable",t.isRowSelectable),n(e,"isRowPinned",t.isRowPinned),n(e,"groupRowsSticky",t.groupRowsSticky),n(e,"isFullWidthRow",t.isFullWidthRow),n(e,"tooltip",t.tooltip),n(e,"quickFilter",t.quickFilter),n(e,"columnPanel",t.columnPanel),n(e,"toolbar",t.toolbar),n(e,"savedViews",t.savedViews),n(e,"sheets",t.sheets),n(e,"loadingMessage",t.loadingMessage),n(e,"noRowsMessage",t.noRowsMessage),n(e,"pivotNoValuesMessage",t.pivotNoValuesMessage),n(e,"pivotEmptyMessage",t.pivotEmptyMessage),n(e,"filterDebounceMs",t.filterDebounceMs),n(e,"cellFlashDuration",t.cellFlashDuration),n(e,"cellFadeDuration",t.cellFadeDuration),n(e,"icons",t.icons),n(e,"theme",t.theme),t.fullWidthCellRenderer!=null&&(e.fullWidthCellRenderer=S(t.fullWidthCellRenderer)),t.defaultColDef!=null&&(e.defaultColDef=re(t.defaultColDef)),t.bodyContextMenu===!1&&(e.bodyContextMenu=!1),t.rowModelType==="serverSide"&&(n(e,"serverSideDataSource",t.serverSideDataSource),n(e,"serverSideAggregationSource",t.serverSideAggregationSource)),n(e,"suppressStyleInjection",t.suppressStyleInjection),n(e,"styleNonce",t.styleNonce),e}import Ge from"react";var v=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let r=[],i=o,m=this.opts.getBodyMenuItems?this.opts.getBodyMenuItems({ctx:e,items:i}):i;return{items:this.normalizeItems(m,r),cleanup:()=>{for(let f of r)f()}}}normalizeItems(e,o){return e.map(r=>{if(r.isSeparator)return{isSeparator:!0};let i=this.normalizeSlot(r.left,o),m=this.normalizeSlot(r.right,o);return{...r,left:i,right:m,subMenu:r.subMenu?this.normalizeItems(r.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(Ge.isValidElement(e)){let{el:r,unmount:i}=this.mountReact(e);return o.push(i),r}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let r=new d(o);return r.render(e),{el:o,unmount:()=>r.destroy()}}};import De from"react";var M=class{constructor(e){this.opts=e}resolveMenuItems(e,o){let r=[],i=o,m=this.opts.getColumnMenuItems?this.opts.getColumnMenuItems({ctx:e,items:i}):i;return{items:this.normalizeItems(m,r),cleanup:()=>{for(let f of r)f()}}}normalizeItems(e,o){return e.map(r=>{if(r.isSeparator)return{isSeparator:!0};let i=this.normalizeSlot(r.left,o),m=this.normalizeSlot(r.right,o);return{...r,left:i,right:m,subMenu:r.subMenu?this.normalizeItems(r.subMenu,o):void 0}})}normalizeSlot(e,o){if(e){if(typeof e=="string"||e instanceof HTMLElement)return e;if(De.isValidElement(e)){let{el:r,unmount:i}=this.mountReact(e);return o.push(i),r}}}mountReact(e){let o=document.createElement("span");o.style.display="inline-flex",o.style.alignItems="center";let r=new d(o);return r.render(e),{el:o,unmount:()=>r.destroy()}}};import{jsx as Ve}from"react/jsx-runtime";function C(t,e){if(t){if(typeof t=="function"){t(e);return}t.current=e}}function He(t){if(!t.destroyed){t.destroyed=!0;try{t.api.destroy()}catch{}}}var Be=Oe.forwardRef(function(e,o){let r=c(null),i=c(null),m=c(e.onGridReady),R=c(e.getColumnMenuItems),f=c(e.bodyContextMenu),x=c(e.onCellClicked),G=c(e.onRowClicked),D=c(e.onCellValueChanged),O=c(e.onSelectionChanged),k=c(e.onSortChanged),H=c(e.onFilterChanged),B=c(e.onQuickFilterFindChanged),V=c(e.onHistoryChanged),N=c(e.onBeforeCellCommit),L=c(e.fillOperation);m.current=e.onGridReady,R.current=e.getColumnMenuItems,f.current=e.bodyContextMenu,x.current=e.onCellClicked,G.current=e.onRowClicked,D.current=e.onCellValueChanged,O.current=e.onSelectionChanged,k.current=e.onSortChanged,H.current=e.onFilterChanged,B.current=e.onQuickFilterFindChanged,V.current=e.onHistoryChanged,N.current=e.onBeforeCellCommit,L.current=e.fillOperation,a(()=>{let l=r.current;if(!l)return;let s=ae(e);s.onCellClicked=u=>x.current?.(u),s.onRowClicked=u=>G.current?.(u),s.onCellValueChanged=u=>D.current?.(u),s.onSelectionChanged=u=>O.current?.(u),s.onSortChanged=u=>k.current?.(u),s.onFilterChanged=u=>H.current?.(u),s.onQuickFilterFindChanged=u=>B.current?.(u),s.onHistoryChanged=u=>V.current?.(u),s.onBeforeCellCommit=u=>N.current?.(u),s.fillOperation=u=>L.current?.(u);let F=ke(l,{...s,menuAdapter:new M({getColumnMenuItems:u=>R.current?.(u)??u.items}),bodyMenuAdapter:new v({getBodyMenuItems:u=>{let _=f.current;return typeof _=="function"?_(u):u.items}})}),E={api:F,destroyed:!1,appliedServerSideDataSource:s.serverSideDataSource};return i.current=E,C(o,F),C(e.apiRef,F),()=>{i.current===E&&(i.current=null),C(o,null),C(e.apiRef,null),He(E)}},[]),a(()=>{let l=i.current?.api??null;return C(o,l),C(e.apiRef,l),()=>{C(o,null),C(e.apiRef,null)}},[o,e.apiRef]),a(()=>{let l=i.current?.api;l&&l.updateGridOptions({columnDefs:A(e.columnDefs)})},[e.columnDefs]),a(()=>{let l=i.current?.api;l&&e.rowModelType!=="serverSide"&&l.setRowData(e.rowData??e.data??[])},[e.data,e.rowData,e.rowModelType]);let P=c(null);a(()=>{let l=i.current;if(!(!l||P.current===l))return P.current=l,m.current?.(l.api),()=>{P.current=null}},[]),a(()=>{i.current?.api.updateGridOptions({groupDisplayType:e.groupDisplayType})},[e.groupDisplayType]),a(()=>{i.current?.api.updateGridOptions({groupSortMode:e.groupSortMode})},[e.groupSortMode]),a(()=>{i.current?.api.updateGridOptions({groupRowsSelectable:e.groupRowsSelectable})},[e.groupRowsSelectable]),a(()=>{i.current?.api.updateGridOptions({groupChildCount:e.groupChildCount})},[e.groupChildCount]),a(()=>{i.current?.api.updateGridOptions({pivotColumnMoveMode:e.pivotColumnMoveMode})},[e.pivotColumnMoveMode]);let z=c(!1);a(()=>{if(!z.current){z.current=!0;return}e.pivotMode!=null&&i.current?.api.setPivotMode(e.pivotMode)},[e.pivotMode]);let le=JSON.stringify(e.pivotColumns??null),K=c(!1);a(()=>{if(!K.current){K.current=!0;return}e.pivotColumns!=null&&i.current?.api.setPivotColumns(e.pivotColumns)},[le]),a(()=>{i.current?.api.updateGridOptions({isRowSelectable:e.isRowSelectable})},[e.isRowSelectable]);let ue=JSON.stringify(e.rowSelection??null),W=c(!1);a(()=>{if(!W.current){W.current=!0;return}i.current?.api.updateGridOptions({rowSelection:e.rowSelection})},[ue]),a(()=>{i.current?.api.setTreeDataKeyboardNavigationOptions({keyboardNavigationMode:e.treeData?.keyboardNavigationMode,enableKeyboardNavigationModeSwitch:e.treeData?.enableKeyboardNavigationModeSwitch??!1})},[e.treeData?.keyboardNavigationMode,e.treeData?.enableKeyboardNavigationModeSwitch]),a(()=>{i.current?.api.updateGridOptions({pinnedTopRowData:e.pinnedTopRowData,pinnedBottomRowData:e.pinnedBottomRowData,isRowPinned:e.isRowPinned,groupRowsSticky:e.groupRowsSticky})},[e.pinnedTopRowData,e.pinnedBottomRowData,e.isRowPinned,e.groupRowsSticky]),a(()=>{i.current?.api.updateGridOptions({rowHover:e.rowHover??!0,columnHover:e.columnHover??!1,zebraRows:e.zebraRows??!1,getRowClass:e.getRowClass,getRowStyle:e.getRowStyle,getRowPresentation:w(e.getRowPresentation),ariaLabel:e.ariaLabel,ariaLabelledBy:e.ariaLabelledBy,highlightActiveCell:e.highlightActiveCell??!1,cellSelection:e.cellSelection??!0,rangeSelection:e.rangeSelection??!0,fillHandle:e.fillHandle??!0,columnSelection:e.columnSelection??!0,headerKeyboardNavigation:e.headerKeyboardNavigation??!0,showColumnButtonsOnHover:e.showColumnButtonsOnHover??!1,bodyContextMenu:e.bodyContextMenu!==!1,editTrigger:e.editTrigger??"doubleClick",readOnlyEdit:e.readOnlyEdit??!1,pinnedRowsEditable:e.pinnedRowsEditable??!1,rowPinningMenu:e.rowPinningMenu??!1,rowInsertionMenu:e.rowInsertionMenu,suppressKeyboardEdit:e.suppressKeyboardEdit??!1,suppressTypeToEdit:e.suppressTypeToEdit??!1,moveAfterEdit:e.moveAfterEdit??!0,commitOnBlur:e.commitOnBlur??!0,asyncTransactionWaitMs:e.asyncTransactionWaitMs??16})},[e.rowHover,e.columnHover,e.zebraRows,e.getRowClass,e.getRowStyle,e.getRowPresentation,e.ariaLabel,e.ariaLabelledBy,e.highlightActiveCell,e.cellSelection,e.rangeSelection,e.fillHandle,e.columnSelection,e.headerKeyboardNavigation,e.showColumnButtonsOnHover,e.bodyContextMenu,e.editTrigger,e.readOnlyEdit,e.pinnedRowsEditable,e.rowPinningMenu,e.rowInsertionMenu,e.suppressKeyboardEdit,e.suppressTypeToEdit,e.moveAfterEdit,e.commitOnBlur,e.asyncTransactionWaitMs]),a(()=>{let l=i.current;!l||e.rowModelType!=="serverSide"||e.serverSideDataSource&&e.serverSideDataSource!==l.appliedServerSideDataSource&&(l.appliedServerSideDataSource=e.serverSideDataSource,l.api.updateGridOptions({serverSideDataSource:e.serverSideDataSource}))},[e.rowModelType,e.serverSideDataSource]),a(()=>{let l=i.current;!l||e.rowModelType!=="serverSide"||e.serverSideAggregationSource&&l.api.updateGridOptions({serverSideAggregationSource:e.serverSideAggregationSource})},[e.rowModelType,e.serverSideAggregationSource]),a(()=>{let l=i.current?.api;l&&l.dispatch({type:"overlayShow",overlayType:e.loading?"loading":"none"})},[e.loading]),a(()=>{i.current?.api.updateGridOptions({pagination:e.pagination})},[e.pagination]);let ce=JSON.stringify(e.paginationControls??null),j=c(!1);a(()=>{if(!j.current){j.current=!0;return}i.current?.api.updateGridOptions({paginationControls:e.paginationControls})},[ce]);let de=JSON.stringify(e.quickFilter??null),q=c(!1);a(()=>{if(!q.current){q.current=!0;return}i.current?.api.updateGridOptions({quickFilter:e.quickFilter})},[de]);let se=JSON.stringify(e.tooltip??null),U=c(!1);a(()=>{if(!U.current){U.current=!0;return}i.current?.api.updateGridOptions({tooltip:e.tooltip})},[se]);let me=JSON.stringify(e.columnPanel??null),J=c(!1);a(()=>{if(!J.current){J.current=!0;return}i.current?.api.updateGridOptions({columnPanel:e.columnPanel})},[me]);let Ce=JSON.stringify(e.toolbar??null),Q=c(!1);return a(()=>{if(!Q.current){Q.current=!0;return}i.current?.api.updateGridOptions({toolbar:e.toolbar})},[Ce]),a(()=>{i.current?.api.updateGridOptions({savedViews:e.savedViews})},[e.savedViews]),a(()=>{i.current?.api.updateGridOptions({sheets:e.sheets})},[e.sheets]),a(()=>{i.current?.api.updateGridOptions({theme:e.theme,icons:{...e.theme?.getIcons(),...e.icons}})},[e.theme,e.icons]),Ve("div",{ref:r,className:e.className,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",...e.style}})});export{Be as Grid};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agility-workbench/react-grid",
3
- "version": "1.5.0",
3
+ "version": "1.7.0",
4
4
  "description": "React bindings for @agility-workbench/grid — a high-performance data grid.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -61,7 +61,7 @@
61
61
  "prepublishOnly": "npm run build"
62
62
  },
63
63
  "dependencies": {
64
- "@agility-workbench/grid": "^1.5.0"
64
+ "@agility-workbench/grid": "^1.7.0"
65
65
  },
66
66
  "peerDependencies": {
67
67
  "react": ">=18.0.0",