@progress/kendo-react-grid 11.0.0-develop.2 → 11.0.0-develop.20

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.
Files changed (272) hide show
  1. package/BasePDFExport.js +8 -0
  2. package/BasePDFExport.mjs +52 -0
  3. package/Grid.js +1 -1
  4. package/Grid.mjs +13 -18
  5. package/GridClientContextReader.js +1 -1
  6. package/GridClientContextReader.mjs +16 -13
  7. package/GridClientWrapper.js +1 -1
  8. package/GridClientWrapper.mjs +459 -449
  9. package/GridComponent.js +1 -1
  10. package/GridComponent.mjs +397 -414
  11. package/GridPdfExportButton.js +8 -0
  12. package/GridPdfExportButton.mjs +35 -0
  13. package/GridSearchBox.js +1 -1
  14. package/GridSearchBox.mjs +1 -1
  15. package/GridToolbar.js +1 -1
  16. package/GridToolbar.mjs +15 -20
  17. package/StatusBar.js +1 -1
  18. package/StatusBar.mjs +23 -23
  19. package/VirtualScroll.js +1 -1
  20. package/VirtualScroll.mjs +65 -107
  21. package/cells/GridDetailHierarchyCell.js +1 -1
  22. package/cells/GridDetailHierarchyCell.mjs +4 -4
  23. package/cells/GridFilterCell.js +1 -1
  24. package/cells/GridFilterCell.mjs +46 -46
  25. package/cells/datacell/GridCell.js +9 -0
  26. package/cells/datacell/GridCell.mjs +23 -0
  27. package/cells/datacell/GridCellServer.js +8 -0
  28. package/cells/datacell/GridCellServer.mjs +27 -0
  29. package/cells/datacell/GridCellServerContainer.js +9 -0
  30. package/cells/datacell/GridCellServerContainer.mjs +26 -0
  31. package/cells/datacell/useCellClientTdProps.js +9 -0
  32. package/cells/datacell/useCellClientTdProps.mjs +30 -0
  33. package/cells/datacell/utils.js +8 -0
  34. package/cells/datacell/utils.mjs +47 -0
  35. package/cells/detailcell/GridDetailCell.js +9 -0
  36. package/cells/detailcell/GridDetailCell.mjs +18 -0
  37. package/cells/detailcell/GridDetailCellServer.js +8 -0
  38. package/cells/detailcell/GridDetailCellServer.mjs +17 -0
  39. package/{codemods/index.js → cells/detailcell/GridDetailCellServerContainer.js} +2 -1
  40. package/cells/detailcell/GridDetailCellServerContainer.mjs +19 -0
  41. package/cells/detailcell/useDetailCellClientTdProps.js +9 -0
  42. package/cells/detailcell/useDetailCellClientTdProps.mjs +20 -0
  43. package/cells/detailcell/utils.js +8 -0
  44. package/cells/detailcell/utils.mjs +20 -0
  45. package/cells/editcell/GridEditCell.js +9 -0
  46. package/cells/editcell/GridEditCell.mjs +20 -0
  47. package/cells/{client → editcell}/GridEditCellEditor.js +1 -1
  48. package/cells/{client → editcell}/GridEditCellEditor.mjs +1 -1
  49. package/cells/editcell/GridEditCellServer.js +8 -0
  50. package/cells/editcell/GridEditCellServer.mjs +32 -0
  51. package/cells/editcell/GridEditCellServerContainer.js +9 -0
  52. package/cells/editcell/GridEditCellServerContainer.mjs +26 -0
  53. package/cells/editcell/useEditCellClientTdProps.js +9 -0
  54. package/cells/editcell/useEditCellClientTdProps.mjs +21 -0
  55. package/cells/editcell/utils.js +8 -0
  56. package/cells/editcell/utils.mjs +29 -0
  57. package/cells/groupcell/GridGroupCell.js +9 -0
  58. package/cells/groupcell/GridGroupCell.mjs +22 -0
  59. package/cells/groupcell/GridGroupCellServer.js +8 -0
  60. package/cells/groupcell/GridGroupCellServer.mjs +44 -0
  61. package/cells/groupcell/GridGroupCellServerContainer.js +9 -0
  62. package/cells/groupcell/GridGroupCellServerContainer.mjs +38 -0
  63. package/cells/{client → groupcell}/GridGroupCellToggle.js +1 -1
  64. package/cells/{client → groupcell}/GridGroupCellToggle.mjs +1 -1
  65. package/cells/groupcell/useGroupCellClientTdProps.js +9 -0
  66. package/cells/groupcell/useGroupCellClientTdProps.mjs +44 -0
  67. package/cells/groupcell/utils.js +8 -0
  68. package/cells/groupcell/utils.mjs +48 -0
  69. package/cells/hierarchycell/GridHierarchyCell.js +9 -0
  70. package/cells/hierarchycell/GridHierarchyCell.mjs +19 -0
  71. package/cells/hierarchycell/GridHierarchyCellServer.js +8 -0
  72. package/cells/hierarchycell/GridHierarchyCellServer.mjs +32 -0
  73. package/cells/hierarchycell/GridHierarchyCellServerContainer.js +9 -0
  74. package/cells/hierarchycell/GridHierarchyCellServerContainer.mjs +26 -0
  75. package/cells/{client → hierarchycell}/GridHierarchyCellToggle.js +1 -1
  76. package/cells/{client → hierarchycell}/GridHierarchyCellToggle.mjs +1 -1
  77. package/cells/hierarchycell/useHierarchyCellClientTdProps.js +9 -0
  78. package/cells/hierarchycell/useHierarchyCellClientTdProps.mjs +32 -0
  79. package/cells/hierarchycell/utils.js +8 -0
  80. package/cells/hierarchycell/utils.mjs +30 -0
  81. package/cells/hooks.js +9 -0
  82. package/cells/hooks.mjs +41 -0
  83. package/cells/rowreordercell/GridRowReorderCell.js +9 -0
  84. package/cells/rowreordercell/GridRowReorderCell.mjs +19 -0
  85. package/cells/rowreordercell/GridRowReorderCellServer.js +8 -0
  86. package/cells/rowreordercell/GridRowReorderCellServer.mjs +18 -0
  87. package/cells/rowreordercell/GridRowReorderCellServerContainer.js +9 -0
  88. package/cells/rowreordercell/GridRowReorderCellServerContainer.mjs +19 -0
  89. package/cells/rowreordercell/useRowReorderCellClientTdProps.js +9 -0
  90. package/cells/rowreordercell/useRowReorderCellClientTdProps.mjs +26 -0
  91. package/cells/rowreordercell/utils.js +8 -0
  92. package/cells/rowreordercell/utils.mjs +30 -0
  93. package/cells/selectioncell/GridSelectionCell.js +9 -0
  94. package/cells/selectioncell/GridSelectionCell.mjs +20 -0
  95. package/cells/{client → selectioncell}/GridSelectionCellInput.js +1 -1
  96. package/cells/{client → selectioncell}/GridSelectionCellInput.mjs +1 -1
  97. package/cells/selectioncell/GridSelectionCellServer.js +8 -0
  98. package/cells/selectioncell/GridSelectionCellServer.mjs +33 -0
  99. package/cells/selectioncell/GridSelectionCellServerContainer.js +9 -0
  100. package/cells/selectioncell/GridSelectionCellServerContainer.mjs +26 -0
  101. package/cells/selectioncell/useSelectionCellClientTdProps.js +9 -0
  102. package/cells/selectioncell/useSelectionCellClientTdProps.mjs +21 -0
  103. package/cells/selectioncell/utils.js +8 -0
  104. package/cells/selectioncell/utils.mjs +25 -0
  105. package/codemods/v11/cell-render.js +9 -0
  106. package/codemods/v11/column-cell.js +9 -0
  107. package/codemods/v11/column-filter-cell.js +9 -0
  108. package/codemods/v11/column-footer-cell.js +9 -0
  109. package/codemods/v11/column-header-cell.js +9 -0
  110. package/codemods/v11/detail-expand-state.js +9 -0
  111. package/codemods/v11/edit-state.js +9 -0
  112. package/codemods/v11/filter-cell-render.js +9 -0
  113. package/codemods/v11/group-expand-state.js +9 -0
  114. package/codemods/v11/header-cell-render.js +9 -0
  115. package/codemods/v11/index.js +9 -0
  116. package/codemods/v11/row-render.js +9 -0
  117. package/codemods/v11/selection-state.js +9 -0
  118. package/codemods/v11/utils.js +9 -0
  119. package/columnMenu/GridColumnMenuCheckboxFilter.js +1 -1
  120. package/columnMenu/GridColumnMenuCheckboxFilter.mjs +84 -84
  121. package/columnMenu/GridColumnMenuColumnsChooser.js +1 -1
  122. package/columnMenu/GridColumnMenuColumnsChooser.mjs +71 -72
  123. package/columnMenu/GridColumnMenuFilter.js +1 -1
  124. package/columnMenu/GridColumnMenuFilter.mjs +83 -84
  125. package/columnMenu/GridColumnMenuFilterCell.js +1 -1
  126. package/columnMenu/GridColumnMenuFilterCell.mjs +35 -28
  127. package/columnMenu/GridColumnMenuFilterUI.js +1 -1
  128. package/columnMenu/GridColumnMenuFilterUI.mjs +1 -1
  129. package/columnMenu/GridColumnMenuItem.js +1 -1
  130. package/columnMenu/GridColumnMenuItem.mjs +9 -9
  131. package/columnMenu/GridColumnMenuWrapper.js +1 -1
  132. package/columnMenu/GridColumnMenuWrapper.mjs +62 -49
  133. package/columnMenu/adaptiveContent/GridAdaptiveCheckboxFilter.js +1 -1
  134. package/columnMenu/adaptiveContent/GridAdaptiveCheckboxFilter.mjs +40 -34
  135. package/columnMenu/adaptiveContent/GridAdaptiveColumnChooser.js +1 -1
  136. package/columnMenu/adaptiveContent/GridAdaptiveColumnChooser.mjs +51 -45
  137. package/columnMenu/adaptiveContent/GridAdaptiveColumnMenu.js +1 -1
  138. package/columnMenu/adaptiveContent/GridAdaptiveColumnMenu.mjs +2 -2
  139. package/columnMenu/adaptiveContent/GridAdaptiveFilterMenu.js +1 -1
  140. package/columnMenu/adaptiveContent/GridAdaptiveFilterMenu.mjs +40 -33
  141. package/components/GridContainerElementContainer.js +1 -1
  142. package/components/GridContainerElementContainer.mjs +1 -1
  143. package/components/GridDragClue.js +1 -1
  144. package/components/GridDragClue.mjs +1 -1
  145. package/components/GridDraggableRowsContainer.js +1 -1
  146. package/components/GridDraggableRowsContainer.mjs +71 -67
  147. package/components/GridDropClue.js +1 -1
  148. package/components/GridDropClue.mjs +1 -1
  149. package/components/GridEditDialog.js +1 -1
  150. package/components/GridEditDialog.mjs +1 -1
  151. package/components/GridElementContainer.js +1 -1
  152. package/components/GridElementContainer.mjs +1 -1
  153. package/components/PagerContainer.js +1 -1
  154. package/components/PagerContainer.mjs +1 -1
  155. package/components/VirtualScrollHeightContainer.js +1 -1
  156. package/components/VirtualScrollHeightContainer.mjs +4 -4
  157. package/components/colGroup/GridColGroup.js +1 -1
  158. package/components/colGroup/GridColGroup.mjs +1 -1
  159. package/components/noRecords/GridNoRecordsContainer.js +1 -1
  160. package/components/noRecords/GridNoRecordsContainer.mjs +1 -1
  161. package/components/table/GridTable.js +1 -1
  162. package/components/table/GridTable.mjs +1 -1
  163. package/components/table/GridTableBody.js +1 -1
  164. package/components/table/GridTableBody.mjs +1 -1
  165. package/components/table/GridTableScrollable.js +1 -1
  166. package/components/table/GridTableScrollable.mjs +16 -15
  167. package/components/utils.js +1 -1
  168. package/components/utils.mjs +9 -10
  169. package/dist/cdn/js/kendo-react-grid.js +1 -1
  170. package/footer/Footer.js +1 -1
  171. package/footer/Footer.mjs +1 -1
  172. package/footer/FooterCell.js +1 -1
  173. package/footer/FooterCell.mjs +14 -14
  174. package/footer/client/FooterCellContainer.js +1 -1
  175. package/footer/client/FooterCellContainer.mjs +1 -1
  176. package/header/FilterRow.js +1 -1
  177. package/header/FilterRow.mjs +42 -46
  178. package/header/GridHeaderCell.js +1 -1
  179. package/header/GridHeaderCell.mjs +11 -11
  180. package/header/GridHeaderSelectionCell.js +1 -1
  181. package/header/GridHeaderSelectionCell.mjs +14 -14
  182. package/header/GroupPanel.js +1 -1
  183. package/header/GroupPanel.mjs +1 -1
  184. package/header/Header.js +1 -1
  185. package/header/Header.mjs +1 -1
  186. package/header/HeaderRow.js +1 -1
  187. package/header/HeaderRow.mjs +19 -20
  188. package/header/client/GridFilterCellContainer.js +1 -1
  189. package/header/client/GridFilterCellContainer.mjs +11 -12
  190. package/header/client/GridFilterCellElementContainer.js +1 -1
  191. package/header/client/GridFilterCellElementContainer.mjs +1 -1
  192. package/header/client/GridHeaderCellContainer.js +1 -1
  193. package/header/client/GridHeaderCellContainer.mjs +7 -8
  194. package/header/client/GridHeaderCellElementContainer.js +1 -1
  195. package/header/client/GridHeaderCellElementContainer.mjs +1 -1
  196. package/header/client/GridHeaderRowContainer.js +1 -1
  197. package/header/client/GridHeaderRowContainer.mjs +1 -1
  198. package/header/client/HeaderCellResizer.js +1 -1
  199. package/header/client/HeaderCellResizer.mjs +1 -1
  200. package/header/client/HeaderRowDraggable.js +1 -1
  201. package/header/client/HeaderRowDraggable.mjs +1 -1
  202. package/index.d.mts +334 -193
  203. package/index.d.ts +334 -193
  204. package/index.js +1 -1
  205. package/index.mjs +82 -72
  206. package/messages/index.js +1 -1
  207. package/messages/index.mjs +94 -76
  208. package/package-metadata.js +1 -1
  209. package/package-metadata.mjs +2 -2
  210. package/package.json +77 -21
  211. package/paging/GridPagerSettings.js +1 -1
  212. package/paging/GridPagerSettings.mjs +17 -13
  213. package/rows/GridRow.js +1 -1
  214. package/rows/GridRow.mjs +32 -33
  215. package/toolbar-tools/GridToolbarCheckboxFilter.js +8 -0
  216. package/toolbar-tools/GridToolbarCheckboxFilter.mjs +312 -0
  217. package/toolbar-tools/GridToolbarColumnsChooser.js +8 -0
  218. package/toolbar-tools/GridToolbarColumnsChooser.mjs +178 -0
  219. package/toolbar-tools/GridToolbarFilter.js +8 -0
  220. package/toolbar-tools/GridToolbarFilter.mjs +281 -0
  221. package/toolbar-tools/GridToolbarSort.js +8 -0
  222. package/toolbar-tools/GridToolbarSort.mjs +146 -0
  223. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarCheckboxFilter.js +9 -0
  224. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarCheckboxFilter.mjs +114 -0
  225. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarColumnChooser.js +9 -0
  226. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarColumnChooser.mjs +89 -0
  227. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.js +9 -0
  228. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.mjs +98 -0
  229. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.js +9 -0
  230. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.mjs +68 -0
  231. package/toolbar-tools/adaptiveContext/GridToolbarAdaptiveContext.js +9 -0
  232. package/toolbar-tools/adaptiveContext/GridToolbarAdaptiveContext.mjs +17 -0
  233. package/utils/GridContext.js +9 -0
  234. package/utils/GridContext.mjs +13 -0
  235. package/utils/index.js +1 -1
  236. package/utils/index.mjs +162 -157
  237. package/utils/premium.js +1 -1
  238. package/utils/premium.mjs +18 -22
  239. package/utils/virtualColumns.js +1 -1
  240. package/utils/virtualColumns.mjs +13 -7
  241. package/VirtualScrollFixed.js +0 -8
  242. package/VirtualScrollFixed.mjs +0 -52
  243. package/cells/GridCell.js +0 -8
  244. package/cells/GridCell.mjs +0 -52
  245. package/cells/GridDetailCell.js +0 -8
  246. package/cells/GridDetailCell.mjs +0 -26
  247. package/cells/GridEditCell.js +0 -8
  248. package/cells/GridEditCell.mjs +0 -35
  249. package/cells/GridGroupCell.js +0 -8
  250. package/cells/GridGroupCell.mjs +0 -74
  251. package/cells/GridHierarchyCell.js +0 -8
  252. package/cells/GridHierarchyCell.mjs +0 -33
  253. package/cells/GridRowReorderCell.js +0 -8
  254. package/cells/GridRowReorderCell.mjs +0 -42
  255. package/cells/GridSelectionCell.js +0 -8
  256. package/cells/GridSelectionCell.mjs +0 -30
  257. package/cells/client/DetailCellContainer.js +0 -9
  258. package/cells/client/DetailCellContainer.mjs +0 -27
  259. package/cells/client/GridCellContainer.js +0 -9
  260. package/cells/client/GridCellContainer.mjs +0 -69
  261. package/cells/client/GridEditCellContainer.js +0 -9
  262. package/cells/client/GridEditCellContainer.mjs +0 -61
  263. package/cells/client/GridGroupCellContainer.js +0 -9
  264. package/cells/client/GridGroupCellContainer.mjs +0 -88
  265. package/cells/client/GridHierarchyCellContainer.js +0 -9
  266. package/cells/client/GridHierarchyCellContainer.mjs +0 -64
  267. package/cells/client/GridRowReorderContainer.js +0 -9
  268. package/cells/client/GridRowReorderContainer.mjs +0 -31
  269. package/cells/client/GridSelectionCellContainer.js +0 -9
  270. package/cells/client/GridSelectionCellContainer.mjs +0 -61
  271. package/components/GridCustomCellClientContainer.js +0 -9
  272. package/components/GridCustomCellClientContainer.mjs +0 -34
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),b=require("react-dom"),s=require("prop-types");function m(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:()=>e[r]})}}return n.default=e,Object.freeze(n)}const t=m(y),c=t.forwardRef((e,n)=>{const{gridProps:r,pdf:o}=e,l={...r,...o},[a,i]=t.useState(!1),u=t.useRef(null);t.useEffect(()=>{async function d(){await e.onPdfExport({target:u.current}),i(!1)}a&&d()},[a,e.onPdfExport]);const f=()=>{i(!0)};t.useImperativeHandle(n,()=>({save:f}));const p=d=>{const P={style:{...l.style,width:"1000px"}};return e.innerGrid?t.createElement(e.innerGrid,{...P,...l,scrollable:"scrollable"}):null};return a&&b.createPortal(t.createElement("div",{style:{position:"absolute",left:"-5000px",top:"0px"}},t.createElement("div",{ref:u},p())),document.body)});c.displayName="BasePDFExport";c.propTypes={grid:s.element.isRequired,pdf:s.object,onPdfExport:s.func.isRequired};exports.BasePDFExport=c;
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import * as e from "react";
9
+ import { createPortal as x } from "react-dom";
10
+ import o from "prop-types";
11
+ const l = e.forwardRef((t, d) => {
12
+ const { gridProps: p, pdf: f } = t, n = { ...p, ...f }, [r, a] = e.useState(!1), s = e.useRef(null);
13
+ e.useEffect(() => {
14
+ async function i() {
15
+ await t.onPdfExport({ target: s.current }), a(!1);
16
+ }
17
+ r && i();
18
+ }, [r, t.onPdfExport]);
19
+ const c = () => {
20
+ a(!0);
21
+ };
22
+ e.useImperativeHandle(d, () => ({
23
+ save: c
24
+ }));
25
+ const u = (i) => {
26
+ const m = { style: { ...n.style, width: "1000px" } };
27
+ return t.innerGrid ? /* @__PURE__ */ e.createElement(t.innerGrid, { ...m, ...n, scrollable: "scrollable" }) : null;
28
+ };
29
+ return r && x(
30
+ /* @__PURE__ */ e.createElement(
31
+ "div",
32
+ {
33
+ style: {
34
+ position: "absolute",
35
+ left: "-5000px",
36
+ top: "0px"
37
+ }
38
+ },
39
+ /* @__PURE__ */ e.createElement("div", { ref: s }, u())
40
+ ),
41
+ document.body
42
+ );
43
+ });
44
+ l.displayName = "BasePDFExport";
45
+ l.propTypes = {
46
+ grid: o.element.isRequired,
47
+ pdf: o.object,
48
+ onPdfExport: o.func.isRequired
49
+ };
50
+ export {
51
+ l as BasePDFExport
52
+ };
package/Grid.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),e=require("prop-types"),c=require("./utils/index.js"),s=require("./GridClientContextReader.js"),i=require("./GridComponent.js"),d=require("./GridState.js"),b=require("@progress/kendo-react-common"),f=require("@progress/kendo-react-intl");function m(n){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const r in n)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(n,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:()=>n[r]})}}return t.default=n,Object.freeze(t)}const o=m(u),l=o.forwardRef((n,t)=>{const{isPaid:r}={isPaid:!0},[a]=b.useCustomComponent(r?d.GridClientStateProvider:o.Fragment);return c.isClient()?o.createElement(a,{...n},o.createElement(s.GridClientContextReader,{id:n.id},o.createElement(i.GridComponent,{ref:t,...n}))):o.createElement(f.ServerGlobalization,{locale:n.locale,language:n.language},o.createElement(i.GridComponent,{ref:t,...n}))}),p={data:e.oneOfType([e.array,e.shape({data:e.array,total:e.number})]),sortable:e.oneOfType([e.bool,e.shape({mode:e.oneOf(["single","multiple"]),allowUnsort:e.bool})]),onSortChange:e.func,sort:e.array,filterable:e.bool,filter:e.any,onFilterChange:e.func,pageable:e.oneOfType([e.bool,e.shape({buttonCount:e.number,responsive:e.bool,info:e.bool,type:e.oneOf(["numeric","input"]),pageSizes:e.oneOfType([e.bool,e.arrayOf(e.oneOfType([e.string,e.number]))]),previousNext:e.bool})]),pageSize:e.number,onPageChange:e.func,total:e.number,skip:e.number,take:e.number,fixedScroll:e.bool,onExpandChange:e.func,expandField:e.string,selectedField:e.string,onSelectionChange:e.func,onHeaderSelectionChange:e.func,resizable:e.bool,reorderable:e.bool,group:e.any,groupable:e.oneOfType([e.bool,e.shape({enabled:e.bool,footer:e.oneOf(["always","visible","none"])})]),onGroupChange:e.func,onRowClick:e.func,onRowDoubleClick:e.func,onItemChange:e.func,editField:e.string,scrollable:e.oneOf(["none","scrollable","virtual"]),rowHeight:e.number,detailRowHeight:e.number,detail:e.any,style:e.object,onDataStateChange:e.func,onColumnResize:e.func,onColumnReorder:e.func,dataItemKey:e.string,navigatable:e.oneOfType([e.bool,e.shape({mode:e.oneOf(["incell","inline","popup"])})]),size:e.oneOf(["small","medium"])};l.displayName="KendoReactGrid";l.propTypes=p;exports.Grid=l;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),e=require("prop-types"),c=require("./utils/index.js"),s=require("./GridClientContextReader.js"),i=require("./GridComponent.js"),b=require("./GridState.js"),d=require("@progress/kendo-react-common"),f=require("@progress/kendo-react-intl");function m(n){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const t in n)if(t!=="default"){const l=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(o,t,l.get?l:{enumerable:!0,get:()=>n[t]})}}return o.default=n,Object.freeze(o)}const r=m(u),a=r.forwardRef((n,o)=>{const[t]=d.useCustomComponent(b.GridClientStateProvider);return c.isClient()?r.createElement(t,{...n},r.createElement(s.GridClientContextReader,{id:n.id},r.createElement(i.GridComponent,{ref:o,...n,innerGrid:a}))):r.createElement(f.ServerGlobalization,{locale:n.locale,language:n.language},r.createElement(i.GridComponent,{ref:o,...n}))}),p={data:e.oneOfType([e.array,e.shape({data:e.array,total:e.number})]),sortable:e.oneOfType([e.bool,e.shape({mode:e.oneOf(["single","multiple"]),allowUnsort:e.bool})]),onSortChange:e.func,sort:e.array,filterable:e.bool,filter:e.any,onFilterChange:e.func,pageable:e.oneOfType([e.bool,e.shape({buttonCount:e.number,responsive:e.bool,info:e.bool,type:e.oneOf(["numeric","input"]),pageSizes:e.oneOfType([e.bool,e.arrayOf(e.oneOfType([e.string,e.number]))]),previousNext:e.bool})]),pageSize:e.number,onPageChange:e.func,total:e.number,skip:e.number,take:e.number,fixedScroll:e.bool,onExpandChange:e.func,onSelectionChange:e.func,onHeaderSelectionChange:e.func,resizable:e.bool,reorderable:e.bool,group:e.any,groupable:e.oneOfType([e.bool,e.shape({enabled:e.bool,footer:e.oneOf(["always","visible","none"])})]),onGroupChange:e.func,onRowClick:e.func,onRowDoubleClick:e.func,onItemChange:e.func,scrollable:e.oneOf(["none","scrollable","virtual"]),rowHeight:e.number,detailRowHeight:e.number,detail:e.any,style:e.object,onDataStateChange:e.func,onColumnResize:e.func,onColumnReorder:e.func,dataItemKey:e.string,navigatable:e.oneOfType([e.bool,e.shape({mode:e.oneOf(["incell","inline","popup"])})]),size:e.oneOf(["small","medium"])};a.displayName="KendoReactGrid";a.propTypes=p;exports.Grid=a;
package/Grid.mjs CHANGED
@@ -5,20 +5,18 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import * as o from "react";
8
+ import * as n from "react";
9
9
  import e from "prop-types";
10
- import { isClient as m } from "./utils/index.mjs";
11
- import { GridClientContextReader as u } from "./GridClientContextReader.mjs";
12
- import { GridComponent as r } from "./GridComponent.mjs";
13
- import { GridClientStateProvider as f } from "./GridState.mjs";
14
- import { useCustomComponent as p } from "@progress/kendo-react-common";
10
+ import { isClient as i } from "./utils/index.mjs";
11
+ import { GridClientContextReader as m } from "./GridClientContextReader.mjs";
12
+ import { GridComponent as t } from "./GridComponent.mjs";
13
+ import { GridClientStateProvider as u } from "./GridState.mjs";
14
+ import { useCustomComponent as f } from "@progress/kendo-react-common";
15
15
  import { ServerGlobalization as b } from "@progress/kendo-react-intl";
16
- const t = o.forwardRef((n, a) => {
17
- const { isPaid: l } = {
18
- isPaid: !0
19
- }, [i] = p(l ? f : o.Fragment);
20
- return m() ? /* @__PURE__ */ o.createElement(i, { ...n }, /* @__PURE__ */ o.createElement(u, { id: n.id }, /* @__PURE__ */ o.createElement(r, { ref: a, ...n }))) : /* @__PURE__ */ o.createElement(b, { locale: n.locale, language: n.language }, /* @__PURE__ */ o.createElement(r, { ref: a, ...n }));
21
- }), s = {
16
+ const a = n.forwardRef((o, r) => {
17
+ const [l] = f(u);
18
+ return i() ? /* @__PURE__ */ n.createElement(l, { ...o }, /* @__PURE__ */ n.createElement(m, { id: o.id }, /* @__PURE__ */ n.createElement(t, { ref: r, ...o, innerGrid: a }))) : /* @__PURE__ */ n.createElement(b, { locale: o.locale, language: o.language }, /* @__PURE__ */ n.createElement(t, { ref: r, ...o }));
19
+ }), p = {
22
20
  data: e.oneOfType([
23
21
  e.array,
24
22
  e.shape({
@@ -59,8 +57,6 @@ const t = o.forwardRef((n, a) => {
59
57
  take: e.number,
60
58
  fixedScroll: e.bool,
61
59
  onExpandChange: e.func,
62
- expandField: e.string,
63
- selectedField: e.string,
64
60
  onSelectionChange: e.func,
65
61
  onHeaderSelectionChange: e.func,
66
62
  resizable: e.bool,
@@ -77,7 +73,6 @@ const t = o.forwardRef((n, a) => {
77
73
  onRowClick: e.func,
78
74
  onRowDoubleClick: e.func,
79
75
  onItemChange: e.func,
80
- editField: e.string,
81
76
  scrollable: e.oneOf(["none", "scrollable", "virtual"]),
82
77
  rowHeight: e.number,
83
78
  detailRowHeight: e.number,
@@ -95,8 +90,8 @@ const t = o.forwardRef((n, a) => {
95
90
  ]),
96
91
  size: e.oneOf(["small", "medium"])
97
92
  };
98
- t.displayName = "KendoReactGrid";
99
- t.propTypes = s;
93
+ a.displayName = "KendoReactGrid";
94
+ a.propTypes = p;
100
95
  export {
101
- t as Grid
96
+ a as Grid
102
97
  };
@@ -6,4 +6,4 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react"),r=require("@progress/kendo-react-common"),i=require("@progress/kendo-react-intl"),g=require("./GridState.js"),y=require("./utils/index.js");function p(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const c=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,c.get?c:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const o=p(m),C=e=>{const n=r.useId(),t=e.id||n,c=r.useUnstyled(),s=i.useLocalization(),a=i.useInternationalization(),[,l]=o.useReducer(b=>!b,!0),u=o.useRef(0),d=o.useRef(0),[f,,R]=g.useGridState();return y.cloneReactElement(e.children,{...f,...R,id:t,unstyled:c,localization:s,intl:a,scrollLeftRef:u,widthRef:d,forceUpdate:l,isClient:!0})};exports.GridClientContextReader=C;
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),r=require("@progress/kendo-react-common"),i=require("@progress/kendo-react-intl"),S=require("./GridState.js"),C=require("./utils/index.js");function O(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const c=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,c.get?c:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const n=O(y),j=e=>{const o=r.useId(),t=e.id||o,c=r.useUnstyled(),s=i.useLocalization(),a=i.useInternationalization(),[,u]=n.useReducer(p=>!p,!0),l=n.useRef(0),d=n.useRef(0),f=n.useRef(0),R=n.useRef(0),b=n.useRef(0),[g,,m]=S.useGridState();return C.cloneReactElement(e.children,{...g,...m,id:t,unstyled:c,localization:s,intl:a,scrollLeftRef:l,widthRef:d,containerHeightRef:f,minRowHeightRef:R,virtualSkipRef:b,forceUpdate:u,isClient:!0})};exports.GridClientContextReader=j;
@@ -6,26 +6,29 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- import * as t from "react";
10
- import { useId as m, useUnstyled as R } from "@progress/kendo-react-common";
11
- import { useLocalization as p, useInternationalization as z } from "@progress/kendo-react-intl";
12
- import { useGridState as C } from "./GridState.mjs";
13
- import { cloneReactElement as I } from "./utils/index.mjs";
14
- const L = (e) => {
15
- const o = m(), n = e.id || o, s = R(), c = p(), i = z(), [, r] = t.useReducer((f) => !f, !0), a = t.useRef(0), l = t.useRef(0), [d, , u] = C();
16
- return I(e.children, {
17
- ...d,
18
- ...u,
9
+ import * as e from "react";
10
+ import { useId as h, useUnstyled as z } from "@progress/kendo-react-common";
11
+ import { useLocalization as C, useInternationalization as I } from "@progress/kendo-react-intl";
12
+ import { useGridState as g } from "./GridState.mjs";
13
+ import { cloneReactElement as k } from "./utils/index.mjs";
14
+ const H = (t) => {
15
+ const o = h(), n = t.id || o, s = z(), i = C(), c = I(), [, r] = e.useReducer((p) => !p, !0), a = e.useRef(0), l = e.useRef(0), u = e.useRef(0), f = e.useRef(0), d = e.useRef(0), [R, , m] = g();
16
+ return k(t.children, {
17
+ ...R,
18
+ ...m,
19
19
  id: n,
20
20
  unstyled: s,
21
- localization: c,
22
- intl: i,
21
+ localization: i,
22
+ intl: c,
23
23
  scrollLeftRef: a,
24
24
  widthRef: l,
25
+ containerHeightRef: u,
26
+ minRowHeightRef: f,
27
+ virtualSkipRef: d,
25
28
  forceUpdate: r,
26
29
  isClient: !0
27
30
  });
28
31
  };
29
32
  export {
30
- L as GridClientContextReader
33
+ H as GridClientContextReader
31
34
  };
@@ -6,4 +6,4 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Tt=require("react"),h=require("@progress/kendo-react-common"),s=require("@progress/kendo-react-data-tools"),At=require("./drag/ColumnResize.js"),Ht=require("./drag/CommonDragLogic.js"),Ft=require("./constants/index.js"),y=require("./utils/index.js"),Fe=require("./VirtualScrollFixed.js"),Gt=require("./VirtualScroll.js"),Lt=require("./contextMenu/GridContextMenu.js"),Ge=require("./contextMenu/enums.js"),Le=require("./sortCommon.js");function Ot(t){const v=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const f in t)if(f!=="default"){const H=Object.getOwnPropertyDescriptor(t,f);Object.defineProperty(v,f,H.get?H:{enumerable:!0,get:()=>t[f]})}}return v.default=t,Object.freeze(v)}const i=Ot(Tt),Oe=i.createContext(void 0),zt=t=>{var Ae,He;const v=t.gridProps.isClient,[f,H]=i.useState({}),Ce=h.useAdaptiveModeContext(),ze=e=>{e.event.preventDefault(),H({...f,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},ve=()=>{H({})},I=i.useMemo(()=>t.columnsRef.find(e=>e.field===f.field),[t.columnsRef,f]),Ee=i.useMemo(()=>{const e=t.gridProps.sortable&&(I==null?void 0:I.sortable);return y.getDefaultHeadContextMenuItems({sortable:!!e,selectable:s.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[I,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),we=i.useMemo(()=>{const e=t.gridProps.sortable&&(I==null?void 0:I.sortable);return y.getDefaultBodyContextMenuItems({sortable:!!e,selectable:s.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard,rowReorderable:y.isRowReorderEnabled(t.gridProps.rowReorderable)})},[I,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),B=i.useMemo(()=>{const e=(I==null?void 0:I.contextMenu)||t.gridProps.contextMenu,n=typeof e=="function"?e(f):e;if(n&&f.offset){const a=f.dataItem?Ge.GridContextMenuAnchorPart.body:Ge.GridContextMenuAnchorPart.head,r=n[a],o=f.dataItem?we:Ee;return r===!1?void 0:r===!0||r===void 0?o:r}},[t.gridProps.contextMenu,f,we,Ee,I]),Ne=e=>{var l,g,m,b,w,re,C,U,V;const n=e.event.item,a={target:E.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:n,...e};t.gridProps.onContextMenuItemClick&&u(t.gridProps.onContextMenuItemClick,a);const r=J(),o={selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:r,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...s.getSelectionOptions(t.gridProps.selectable),...a},d=r.findIndex(W=>W===e.dataItem);switch((l=n.data)==null?void 0:l.action){case"SortCommand":if(I){const W=(g=n.name)==null?void 0:g.toLowerCase().includes("asc"),kt=((m=n.name)==null?void 0:m.toLowerCase().includes("desc"))?"desc":void 0,Kt=W?"asc":kt,Mt=n.name?Kt:void 0;ye(e.event.syntheticEvent,I,Mt)}break;case"SelectRowCommand":at(o);break;case"SelectAllRowsCommand":rt(o);break;case"ClearSelectionCommand":ot(o);break;case"ReorderRowCommand":q.current=e.dataItem,(b=n.name)!=null&&b.toLowerCase().includes("rowup")&&d>0&&G(e.event.syntheticEvent,d-1,"before"),(w=n.name)!=null&&w.toLowerCase().includes("rowdown")&&d<r.length-1&&G(e.event.syntheticEvent,d+1,"after"),(re=n.name)!=null&&re.toLowerCase().includes("rowtop")&&G(e.event.syntheticEvent,0,"before"),(C=n.name)!=null&&C.toLowerCase().includes("rowbottom")&&G(e.event.syntheticEvent,r.length-1,"after");break;case"CopySelectionCommand":X(s.ClipboardActionType.copy,e.event.nativeEvent,{copyHeaders:!((U=n.name)!=null&&U.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break;case"PasteCommand":X(s.ClipboardActionType.paste,e.event.nativeEvent,{copyHeaders:!((V=n.name)!=null&&V.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break}ve()},_=()=>{const e=t.columnsRef.filter(n=>n.declarationIndex>=0&&n.parentIndex===-1);return y.sanitizeColumns(e)},qe=(e,n,a)=>{if(t.gridProps.onContextMenu&&v){const r={target:E.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:n,field:a};u(t.gridProps.onContextMenu,r)}t.gridProps.contextMenu&&ze({event:e,dataItem:n,field:a})},Ue=e=>{if(e.target!==e.currentTarget)return;clearTimeout(he.current),c.current&&(c.current.table=K.current);const n=e.currentTarget.scrollLeft,a=e.currentTarget.scrollTop,r=t.gridProps.scrollable==="virtual";t.gridProps.columnVirtualization&&(!r||a===Pe.current)&&(he.current=window.setTimeout(()=>{le()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=n),N.current&&N.current.setScrollLeft(n),z.current&&z.current.setScrollLeft(n),c.current&&a!==Pe.current&&c.current.scrollHandler(e),t.gridProps.onScroll&&v&&u(t.gridProps.onScroll,{...P(e)}),Pe.current=a},Ve=e=>{s.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:k,navigationStateRef:T,onNavigationAction:Be,columns:_()}),s.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:x(),contextStateRef:k,navigationStateRef:T});const n={dataItems:L(),mode:R.mode,cell:R.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...P(e)};t.gridProps.onKeyDown&&v&&u(t.gridProps.onKeyDown,n)},We=e=>{s.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:k})},Be=e=>{if(e.action==="moveToNextPage"&&dt(e.event),e.action==="moveToPrevPage"&&ct(e.event),e.focusElement&&e.action==="reorderToRight"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n<t.columnsRef.length-1&&ie(n,n+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n>0&&ie(n,n-1,e.event)}if(e.action==="select"&&et(e.event),t.gridProps.onNavigationAction&&v){const n={focusElement:e.focusElement,...P(e.event)};u(t.gridProps.onNavigationAction,n)}},_e=(e,n)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&u(t.gridProps.onRowClick,{dataItem:n,...P(e)})},je=(e,n)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&u(t.gridProps.onRowDoubleClick,{dataItem:n,...P(e)})},$e=e=>{t.gridProps.onItemChange&&u(t.gridProps.onItemChange,{...P(e.syntheticEvent),dataItem:e.dataItem,field:void 0,value:void 0})},Xe=e=>{t.gridProps.onItemChange&&t.gridProps.onEditChange&&u(t.gridProps.onEditChange,{edit:{},...P(e.syntheticEvent)})},Je=(e,n,a)=>{if(Te.enabled&&Te.mode==="incell"&&t.gridProps.dataItemKey){const r=s.editReducer(t.gridProps.edit,{type:s.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:n[t.gridProps.dataItemKey],field:a}});t.gridProps.onEditChange&&u(t.gridProps.onEditChange,{edit:r,...P(e)})}},Ye=(e,n)=>{var r;if(s.getDetailExpandableOptions(t.detailExpandable).enabled){const o=s.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},e);t.gridProps.onDetailExpandChange&&u(t.gridProps.onDetailExpandChange,{...P(n),detailExpand:o})}},Qe=(e,n)=>{var r;const a=s.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(a.enabled){const o=s.groupExpandReducer((r=t.gridProps.groupExpand)!=null?r:[],e,a);t.gridProps.onGroupExpandChange&&u(t.gridProps.onGroupExpandChange,{...P(n),groupExpand:o})}},ye=(e,n,a)=>{const{allowUnsort:r,mode:o}=Le.normalizeSortable(t.gridProps.sortable||!1,n.sortable||!1),d=(t.gridProps.sort||[]).filter(m=>m.field===n.field)[0],l=a||Le.firstLevelSortSeqMap[r][d&&d.dir||""],g=o==="single"?[]:(t.gridProps.sort||[]).filter(m=>m.field!==n.field);l!==""&&n.field&&g.push({field:n.field,dir:l}),xe(g,e)},Ze=e=>{var n;if(e.field===t.gridProps.expandField||e._expand||t.gridProps.group&&e.field===void 0){if(t.gridProps.onExpandChange){const a=t.gridProps.dataItemKey?s.detailExpandReducer((n=t.gridProps.detailExpand)!=null?n:{},{type:s.DETAIL_EXPAND_ACTION.SET,id:e.dataItem[t.gridProps.dataItemKey],payload:e.value}):t.gridProps.detailExpand;u(t.gridProps.onExpandChange,{...P(e.syntheticEvent),expand:a,dataItem:e.dataItem,dataIndex:e.dataIndex,value:e.value})}return}t.gridProps.onItemChange&&u(t.gridProps.onItemChange,{...P(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},pe=e=>{var n;if(t.gridProps.onSelectionChange&&R.enabled){const{event:a,dataItem:r,dataIndex:o,columnIndex:d}=e,l={...P(a.syntheticEvent),dataItem:r,startColIndex:d,endColIndex:d,startRowIndex:o,endRowIndex:o,dataItems:L(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:R.mode,cell:R.cell,isDrag:!1,componentId:t.id,selectedField:t.gridProps.selectedField||""};u(t.gridProps.onSelectionChange,{...l,select:t.gridProps.dataItemKey?s.getSelectedState({event:l,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},et=e=>{var m,b;if(t.gridProps.selectedField||!R.enabled||!t.gridProps.dataItemKey)return;const n={dataItems:L(),mode:R.mode,cell:R.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...P(e)},a=s.getSelectedStateFromKeyDown({event:n,selectedState:(m=t.gridProps.select)!=null?m:{},dataItemKey:t.gridProps.dataItemKey});if(a===t.gridProps.select)return;const r=e.target,o=s.closestTagName(r,"TD"),d=s.closestTagName(r,"TR"),l=s.getColumnIndex(o),g=s.getRowIndex(d);if(l!==void 0&&g!==void 0){const w=(b=y.getDataAsArray(t.gridProps.data))==null?void 0:b[g];t.gridProps.onSelectionChange&&u(t.gridProps.onSelectionChange,{...n,select:a,dataItem:w,startRowIndex:g,startColIndex:l,startDataItem:w,endDataItem:w,endRowIndex:g,endColIndex:l,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}},tt=e=>{var n;if(t.gridProps.onHeaderSelectionChange&&R.enabled){const a=L();u(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?a.reduce((r,o)=>(t.gridProps.dataItemKey&&h.getter(t.gridProps.dataItemKey)(o)!==void 0&&(r[h.getter(t.gridProps.dataItemKey)(o)]=!0),r),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:E.current,dataItems:a,selectedField:(n=t.gridProps.selectedField)!=null?n:""})}},j=(e,n)=>{t.gridProps.onSelectionChange&&R.enabled&&u(t.gridProps.onSelectionChange,{...e,select:n})},nt=e=>{var n;if(t.gridProps.onSelectionChange&&R.enabled){const a=J()[e.startRowIndex],r=J()[e.endRowIndex],o={syntheticEvent:void 0,target:E.current,selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:L(),dataItem:null,startDataItem:a,endDataItem:r,...e},d=s.getSelectedState({event:o,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey});j(o,d)}},rt=e=>{if(t.gridProps.onSelectionChange&&R.enabled){const n=e.dataItems[0],a=e.dataItems[e.dataItems.length-1],r={},o={...e,startDataItem:n,endDataItem:a,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:t.columnsRef.length-1};e.dataItems.forEach(d=>{const g=h.getter(t.gridProps.dataItemKey)(d);r[g]=e.cell?[...Array(t.columnsRef.length).keys()]:!0}),j(o,r)}},at=e=>{if(t.gridProps.onSelectionChange&&R.enabled){const a=h.getter(t.gridProps.dataItemKey)(e.dataItem),r=0,o=t.columnsRef.length-1,d=e.dataItems.findIndex(w=>w[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),m={...e,startDataItem:d,endDataItem:d,startRowIndex:d,endRowIndex:d,startColIndex:r,endColIndex:o},b=e.mode==="multiple"?t.gridProps.select||{}:{};b[a]===!0||Array.isArray(b[a])&&b[a].length===t.columnsRef.length?delete b[a]:b[a]=e.cell?[...Array(t.columnsRef.length).keys()]:!0,j(m,b)}},ot=e=>{t.gridProps.onSelectionChange&&R.enabled&&j(e,{})},F=(e,n,a,r,o)=>{const d=t.gridProps.onDataStateChange;if(e){const l={...P(r),...n,targetEvent:o};u(e,l)}else d&&u(d,{...P(r),targetEvent:o||{},dataState:{...ht(),...a}})},$=(e,n,a)=>{F(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},n,a)},it=()=>{let e=t.gridProps.total||0;return Array.isArray(t.gridProps.data)?e=e||t.gridProps.data.length:t.gridProps.data&&(e=e||t.gridProps.data.total),e},dt=e=>{var o,d;const n=(d=(o=t.gridProps.take)!=null?o:t.gridProps.pageSize)!=null?d:0,a=(t.gridProps.skip||0)+n,r=it();a<r&&$({skip:a,take:n},e)},ct=e=>{var r,o;const n=(o=(r=t.gridProps.take)!=null?r:t.gridProps.pageSize)!=null?o:0,a=(t.gridProps.skip||0)-n;a>=0&&$({skip:a,take:n},e)},lt=e=>{$({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},xe=(e,n)=>{F(t.gridProps.onSortChange,{sort:e},{sort:e,...t.gridProps.scrollable==="virtual"?{skip:0}:{}},n)},st=(e,n)=>{F(t.gridProps.onFilterChange,{filter:e},{filter:e||void 0,skip:0},n)},ut=e=>{const n=t.gridProps.searchFields||t.columnsRef.map(o=>o.field)||[],a=e.nativeEvent.target.value,r={logic:"or",filters:n.filter(o=>o!==void 0).map(o=>{var d;return typeof o=="string"?{field:o,value:a,operator:"contains"}:{value:a,operator:(d=o.operator)!=null?d:"contains",field:o.field,ignoreCase:o.ignoreCase}})};F(t.gridProps.onSearchChange,{search:r},{},e.syntheticEvent)},ae=(e,n)=>{const a=n.nativeEvent?n:{nativeEvent:n.nativeEvent||n.originalEvent};e.length===0&&t.gridProps.navigatable&&(ge.current=!0),F(t.gridProps.onGroupChange,{group:e},{group:e,skip:0},a)},oe=e=>{if(t.gridProps.onColumnsStateChange){const n={target:E.current,columnsState:e};u(t.gridProps.onColumnsStateChange,n)}},ie=(e,n,a)=>{const{columnsRef:r,columnsState:o}=t,d=r[e],l=y.getFlatColumnsState(o),g=d.depth,m=C=>{do C++;while(C<r.length&&r[C].depth>g);return C},b=r.splice(e,m(e)-e);r.splice(e<n?m(n-b.length):n,0,...b),r.filter(C=>C.declarationIndex>=0).forEach((C,U)=>{C.orderIndex=U;const V=l.find(W=>W.id===C.id);V&&(V.orderIndex=U)});const w=r[e].locked&&r[n].locked;s.updateLeft(t.columnsMapRef,r,w||ee.current),s.updateRight(t.columnsMapRef,r,w||ee.current),ue.current&&(ee.current=!1,ue.current=!1);const re=_();if(le(),t.gridProps.onColumnReorder){const C={target:E.current,columns:re,columnId:d.id,nativeEvent:a};u(t.gridProps.onColumnReorder,C)}oe(o)},G=(e,n,a)=>{const r=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(a==="forbidden"||!r||!q.current)return;const{slicedData:o,dataRef:d}=t,l=(o||d)[n];t.gridProps.onRowReorder&&u(t.gridProps.onRowReorder,{draggedDataItems:[q.current],droppedDataItem:l==null?void 0:l.dataItem,dropPosition:a,nativeEvent:e.originalEvent,dragEvent:e,target:E.current}),q.current=null},gt=(e,n,a)=>{if(t.gridProps.group===void 0)return;const r=t.gridProps.group.slice();r.splice(n,0,...r.splice(e,1)),ae(r,a)},Se=(e,n,a)=>{const r=t.columnsRef[e].field;if(!r)return;const o=(t.gridProps.group||[]).slice();o.splice(n,0,{field:r}),ae(o,a)},ft=(e,n)=>{const a=D.current.getCurrentGroupsLength;Se(e,a,n)},de=()=>{let e=0;if(!S.current.colGroupMain)return;const n=S.current.colGroupMain.children;for(let a=0;a<n.length;a++){const r=n[a].width;if(!r){e=0;break}e+=parseFloat(r.toString())}e=Math.round(e),N.current&&N.current.setWidth(e),z.current&&z.current.setWidth(e),K.current&&(K.current.style.width=e?e+"px":"")},De=()=>{var e;t.gridProps.widthRef&&(t.gridProps.widthRef.current=((e=M.current)==null?void 0:e.offsetWidth)||0)},X=i.useCallback((e,n,a,r,o)=>{var m;if(!mt()&&!a||!e)return;const d={type:e,nativeEvent:n,columns:t.columnsRef,dataItemKey:t.gridProps.dataItemKey||"",dataItem:r,field:o,...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{},...a},l=J(),g=s.populateClipboardData({event:d,data:l,selectedState:(m=t.gridProps.select)!=null?m:{},previousCopiedItems:Me.current});e!==s.ClipboardActionType.paste&&(Me.current=g.copiedItems),t.gridProps.onClipboard&&v&&u(t.gridProps.onClipboard,{...d,...g})},[t.gridProps.select,t.gridProps.dataItemKey,t.gridProps.data,t.gridProps.clipboard,t.gridProps.onClipboard]),mt=()=>{var o,d,l;if(!h.canUseDOM)return!1;const e=h.getActiveElement(x()),n=e?e.matches(".k-table-td")?e:(o=x())==null?void 0:o.body:(d=x())==null?void 0:d.body,a=n.closest(".k-grid-container"),r=n&&((l=M.current)==null?void 0:l.contains(n));return!!(n&&r&&a)},Pt=(e,n,a,r,o,d,l)=>{de(),ee.current=!0,ue.current=!0,t.gridProps.onColumnResize&&v&&u(t.gridProps.onColumnResize,{columns:_(),nativeEvent:r,targetColumnId:l,index:e,newWidth:n,oldWidth:a,end:o,target:E.current}),o&&oe(d)},ht=()=>{var e;return{filter:t.gridProps.filter,sort:t.gridProps.sort,skip:t.gridProps.skip,take:(e=t.gridProps.take)!=null?e:t.gridProps.pageSize,group:t.gridProps.group}},P=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:E.current}),bt=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),u=(e,n)=>{if(t.gridProps.isClient){e(n);return}e(bt(n))},It=()=>{var e,n,a;if(O.current&&((e=O.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){me.current=!1,(n=document.activeElement)!=null&&n.closest(".k-grid-edit-row")?fe.current=document.activeElement:fe.current=void 0;const r=Array.from((a=O.current)==null?void 0:a.getElementsByClassName("k-grid-edit-row"));r.length>Ie.current.length?p.current=r.filter(o=>!Ie.current.includes(o))[0]:r.length===1&&(p.current=r[0],me.current=!0),Ie.current=r}},L=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),J=()=>(t.slicedData||t.dataRef).filter(e=>e.rowType==="data").map(e=>e.dataItem),x=()=>{var e;if(h.canUseDOM)return((e=Y())==null?void 0:e.ownerDocument)||document},Y=()=>M.current,ce=i.useCallback(e=>{var r;if(!c.current||!((r=c.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;A.current&&A.current.disconnect();const{rowIndex:n}=e,a=Y();if(t.gridProps.scrollable==="virtual")c.current.askedSkip=n,c.current.container.scroll(0,Math.round(c.current.askedSkip/c.current.total*c.current.container.scrollHeight));else if(a){const o=n<1?a.querySelector("tbody > tr:nth-child(1)"):a.querySelector(`tbody > tr:nth-child(${n+1})`);o&&Z.current&&(Z.current.scrollTop=o.offsetTop)}},[t.gridProps.scrollable]),ke=e=>JSON.stringify(e.map(n=>({id:n.id,field:n.field,title:n.title,children:n.children}))),Rt=()=>ke(St)===ke(t.columnsRef),Ct=()=>{te.current=window.innerWidth,Rt()||le()},vt=e=>{var n,a;if(c.current){if(c.current.fixedScroll=t.gridProps.fixedScroll||!1,c.current.PageChange=$,c.current.realSkip=t.gridProps.skip||0,c.current.pageSize=(a=(n=t.gridProps.take)!=null?n:t.gridProps.pageSize)!=null?a:0,c.current.scrollableVirtual=t.gridProps.scrollable==="virtual",c.current.total=e,c.current.propsSkip=(t.gridProps.skip||0)+(t.gridProps.scrollable==="virtual"?c.current.topCacheCount+(c.current.attendedSkip-(t.gridProps.skip||0)):0),t.gridProps.rowHeight!==void 0&&t.gridProps.rowHeight>0&&!ne){const r=t.gridProps.rowHeight*e;c.current.containerHeight=y.firefox?Math.min(y.firefoxMaxHeight,r):r}else c.current.containerHeight=1533915;if(c.current.containerRef=Z,c.current.tableBodyRef=O,c.current.table=K.current,c.current instanceof Fe.VirtualScrollFixed){const{rowHeight:r=0,detail:o,expandField:d}=t.gridProps;let{detailRowHeight:l=0}=t.gridProps;l=o&&d?l:r,t.isAllData?(c.current.total=t.dataRef.length,c.current.rowHeightService=new h.RowHeightService(t.dataRef.length,r,l,t.dataRef)):c.current.rowHeightService=new h.RowHeightService(e,r,l);const g=c.current.rowHeightService.totalHeight();c.current.containerHeight=y.firefox?Math.min(y.firefoxMaxHeight,g):g}}},Ke=i.useCallback(e=>{const n={rowIndex:be.current};e.forEach(a=>{a.isIntersecting||ce(n)})},[ce]),le=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},Et=e=>e.left!==void 0?Re!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},E=i.useRef(null),c=i.useRef(void 0),S=i.useRef(void 0),D=i.useRef(void 0),k=i.useRef(void 0),T=i.useRef(void 0),Q=i.useRef(void 0),A=i.useRef(null),O=i.useRef(null),wt=i.useRef(null),Z=i.useRef(null),K=i.useRef(null),se=i.useRef(null),M=i.useRef(null),z=i.useRef(null),N=i.useRef(null),ue=i.useRef(!1),ge=i.useRef(!1),p=i.useRef(void 0),fe=i.useRef(void 0),me=i.useRef(!1),ee=i.useRef(!0),Pe=i.useRef(0),he=i.useRef(void 0),be=i.useRef(void 0),Ie=i.useRef([]),Me=i.useRef([]),te=i.useRef(0),q=i.useRef(null),yt=i.useRef(null),xt=i.useRef(null),Re=h.useDir(M),St=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),ne=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,R=s.getSelectionOptions((Ae=t.gridProps.selectable)!=null?Ae:!!t.gridProps.selectedField),Te=s.getEditableOptions((He=t.gridProps.editable)!=null?He:!!t.gridProps.editField),Dt=te.current&&Ce&&te.current<=Ce.medium&&t.gridProps.adaptive;return i.useMemo(()=>{s.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:k,navigationStateRef:T,idPrefix:t.id})},[]),i.useMemo(()=>{var n;(n=c.current)==null||n.reset();const e=t.isFixedVirtualScroll?Fe.VirtualScrollFixed:Gt.VirtualScroll;c.current=new e(ne||t.gridProps.rowHeight===void 0||t.gridProps.rowHeight===0)},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,ne,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&(Q.current=new s.ClipboardService(X),Q.current.addEventListeners(x())),()=>{Q.current&&Q.current.removeEventListeners(x())}),[t.gridProps.onClipboard,t.gridProps.clipboard,X,x]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(Ft.SAFARI_REGEX)&&(se.current&&(se.current.style.display="block"),K.current&&(K.current.style.display="block")),De(),de(),h.setScrollbarWidth(),s.tableKeyboardNavigation.onComponentDidMount({scope:M.current||void 0,contextStateRef:k,navigationStateRef:T}),()=>{clearTimeout(he.current)}),[]),i.useEffect(()=>{var e;De(),de(),h.setScrollbarWidth(),(e=c.current)!=null&&e.tableTransform&&c.current.table&&(c.current.table.style.transform=c.current.tableTransform,c.current.tableTransform=""),It(),s.tableKeyboardNavigation.onComponentDidUpdate({scope:M.current||void 0,contextStateRef:k,navigationStateRef:T,focusFirst:ge.current,newEditableRow:p.current,singleEditRow:me.current,lastActiveElement:fe.current,navigatable:t.gridProps.navigatable}),ge.current=!1,p.current=void 0}),i.useEffect(()=>{if(h.canUseDOM){const e={rootMargin:"0px",threshold:.9};A.current=window.IntersectionObserver&&new window.IntersectionObserver(Ke,e)||null}},[Ke]),i.useEffect(()=>{var n;let e;return h.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(Ct),e.observe((n=x())==null?void 0:n.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(E,()=>({get element(){return Y()},props:t.gridProps,get columns(){return _()},scrollIntoView:e=>{var r;if(!((r=c.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;const{rowIndex:n}=e;be.current=n;const a=Y();if(A.current&&a){A.current.disconnect();const o=a.querySelector(`[absolute-row-index="${be.current}"]`);o?A.current.observe(o):ce(e)}},fitColumns:e=>{S.current.dblClickHandler(null,e)}})),i.useImperativeHandle(t.gridRef,()=>E.current),i.useMemo(()=>{S.current=new At.ColumnResize(Pt)},[t.gridProps.onColumnResize,t.columnsRef]),i.useMemo(()=>{D.current=new Ht.CommonDragLogic(ie,gt,Se)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.columnsRef,t.gridProps.groupable]),S.current.resizable=t.gridProps.resizable||!1,S.current.columns=t.columnsRef,S.current.columnsState=h.cloneArray(t.columnsState),D.current.reorderable=t.gridProps.reorderable||!1,D.current.groupable=ne,D.current.columns=t.columnsRef,D.current.dir=Re,vt(t.total),i.createElement(Oe.Provider,{value:{isClient:v,rowReorder:G,activeDragRowDataItemRef:q,reorderRowDragTargetRef:yt,reorderRowDropTargetRef:xt,dir:Re,getCellPositionStyle:Et,dataItemKey:t.gridProps.dataItemKey,columnsState:t.columnsState,onColumnsStateChange:oe,groupChange:ae,selectionRelease:nt,pagerPageChange:lt,onContextMenu:qe,rowClick:_e,rowDblClick:je,cellClick:Je,headerCellClick:ye,itemChange:Ze,onDialogEditCancel:Xe,onDialogEditSubmit:$e,sortChange:xe,filterChange:st,searchChange:ut,onHeaderSelectionChange:tt,columnGroupChange:ft,onKeyDown:Ve,onFocus:We,scrollHandler:Ue,selectionChange:pe,mobileMode:Dt,adaptiveColumnMenuRef:te.current,adpativeTitle:t.gridProps.adaptiveTitle,adaptive:t.gridProps.adaptive,dispatchDetailExpand:Ye,dispatchGroupExpand:Qe,columnResizeRef:S,dragLogicRef:D,navigationStateRef:T,tableElementRef:K,tableBodyElementRef:O,headerElementRef:wt,containerElementRef:Z,headTableElementRef:se,elementRef:M,footerRef:z,headerRef:N,vsRef:c}},i.createElement(s.TableKeyboardNavigationContext.Provider,{value:k.current},t.children),i.createElement(Lt.GridContextMenu,{show:f.show&&(B==null?void 0:B.length),dataItem:f.dataItem,field:f.field,items:B,offset:f.offset,onClose:ve,onSelect:Ne}))};exports.GridClientWrapper=zt;exports.GridContext=Oe;
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ot=require("react"),b=require("@progress/kendo-react-common"),d=require("@progress/kendo-react-data-tools"),Lt=require("./drag/ColumnResize.js"),zt=require("./drag/CommonDragLogic.js"),Ft=require("./constants/index.js"),A=require("./utils/index.js"),Nt=require("./VirtualScroll.js"),qt=require("./contextMenu/GridContextMenu.js"),Le=require("./contextMenu/enums.js"),ze=require("./sortCommon.js"),Ut=require("./BasePDFExport.js"),Vt=require("./utils/GridContext.js"),Wt=require("./filterCommon.js");function Bt(t){const I=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const g in t)if(g!=="default"){const L=Object.getOwnPropertyDescriptor(t,g);Object.defineProperty(I,g,L.get?L:{enumerable:!0,get:()=>t[g]})}}return I.default=t,Object.freeze(I)}const i=Bt(Ot),jt=t=>{const I=t.gridProps.isClient,[g,L]=i.useState({}),Ce=b.useAdaptiveModeContext(),Ie=i.useRef(null),Fe=e=>{e.event.preventDefault(),L({...g,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},Ee=()=>{L({})},R=i.useMemo(()=>t.columnsRef.find(e=>e.field===g.field),[t.columnsRef,g]),we=i.useMemo(()=>{const e=t.gridProps.sortable&&(R==null?void 0:R.sortable);return A.getDefaultHeadContextMenuItems({pdf:!!t.gridProps.pdf,sortable:!!e,selectable:d.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[R,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),ye=i.useMemo(()=>{const e=t.gridProps.sortable&&(R==null?void 0:R.sortable);return A.getDefaultBodyContextMenuItems({pdf:!!t.gridProps.pdf,sortable:!!e,selectable:d.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard,rowReorderable:A.isRowReorderEnabled(t.gridProps.rowReorderable)})},[R,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),$=i.useMemo(()=>{const e=(R==null?void 0:R.contextMenu)||t.gridProps.contextMenu,n=typeof e=="function"?e(g):e;if(n&&g.offset){const o=g.dataItem?Le.GridContextMenuAnchorPart.body:Le.GridContextMenuAnchorPart.head,r=n[o],a=g.dataItem?ye:we;return r===!1?void 0:r===!0||r===void 0?a:r}},[t.gridProps.contextMenu,g,ye,we,R]),Ne=e=>{var l,u,f,h,w,re,C,B,j;const n=e.event.item,o={target:E.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:n,...e};t.gridProps.onContextMenuItemClick&&s(t.gridProps.onContextMenuItemClick,o);const r=y(),a={selectedField:"",componentId:t.id,dataItems:r,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...d.getSelectionOptions(t.gridProps.selectable),...o},c=r.findIndex(_=>_===e.dataItem);switch((l=n.data)==null?void 0:l.action){case"SortCommand":if(R){const _=(u=n.name)==null?void 0:u.toLowerCase().includes("asc"),At=((f=n.name)==null?void 0:f.toLowerCase().includes("desc"))?"desc":void 0,Gt=_?"asc":At,Ht=n.name?Gt:void 0;Se(e.event.syntheticEvent,R,Ht)}break;case"SelectRowCommand":ot(a);break;case"SelectAllRowsCommand":rt(a);break;case"ExportPDFCommand":oe();break;case"ClearSelectionCommand":at(a);break;case"ReorderRowCommand":W.current=e.dataItem,(h=n.name)!=null&&h.toLowerCase().includes("rowup")&&c>0&&F(e.event.syntheticEvent,c-1,"before"),(w=n.name)!=null&&w.toLowerCase().includes("rowdown")&&c<r.length-1&&F(e.event.syntheticEvent,c+1,"after"),(re=n.name)!=null&&re.toLowerCase().includes("rowtop")&&F(e.event.syntheticEvent,0,"before"),(C=n.name)!=null&&C.toLowerCase().includes("rowbottom")&&F(e.event.syntheticEvent,r.length-1,"after");break;case"CopySelectionCommand":Q(d.ClipboardActionType.copy,e.event.nativeEvent,{copyHeaders:!((B=n.name)!=null&&B.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break;case"PasteCommand":Q(d.ClipboardActionType.paste,e.event.nativeEvent,{copyHeaders:!((j=n.name)!=null&&j.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break}Ee()},X=()=>{const e=t.columnsRef.filter(n=>n.declarationIndex>=0&&n.parentIndex===-1);return A.sanitizeColumns(e)},qe=(e,n,o)=>{if(t.gridProps.onContextMenu&&I){const r={target:E.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:n,field:o};s(t.gridProps.onContextMenu,r)}t.gridProps.contextMenu&&Fe({event:e,dataItem:n,field:o})},Ue=e=>{if(e.target!==e.currentTarget)return;clearTimeout(he.current),P.current&&(P.current.table=M.current);const n=e.currentTarget.scrollLeft,o=e.currentTarget.scrollTop;t.gridProps.columnVirtualization&&(!D||o===Pe.current)&&(he.current=window.setTimeout(()=>{N()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=n),V.current&&V.current.setScrollLeft(n),U.current&&U.current.setScrollLeft(n),P.current&&o!==Pe.current&&P.current.scrollHandler(e),t.gridProps.onScroll&&I&&s(t.gridProps.onScroll,{...m(e)}),Pe.current=o},Ve=e=>{d.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:K,navigationStateRef:G,onNavigationAction:Be,columns:X()}),d.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:S(),contextStateRef:K,navigationStateRef:G});const n={dataItems:y(),mode:v.mode,cell:v.cell,componentId:t.id,selectedField:"",...m(e)};t.gridProps.onKeyDown&&I&&s(t.gridProps.onKeyDown,n)},We=e=>{d.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:K})},Be=e=>{if(e.action==="moveToNextPage"&&lt(e.event),e.action==="moveToPrevPage"&&st(e.event),e.focusElement&&e.action==="reorderToRight"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n<t.columnsRef.length-1&&ce(n,n+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n>0&&ce(n,n-1,e.event)}if(e.action==="select"&&et(e.event),t.gridProps.onNavigationAction&&I){const n={focusElement:e.focusElement,...m(e.event)};s(t.gridProps.onNavigationAction,n)}},je=(e,n)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&s(t.gridProps.onRowClick,{dataItem:n,...m(e)})},_e=(e,n)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&s(t.gridProps.onRowDoubleClick,{dataItem:n,...m(e)})},$e=e=>{t.gridProps.onItemChange&&s(t.gridProps.onItemChange,{...m(e.syntheticEvent),dataItem:e.dataItem,field:void 0,value:void 0})},Xe=e=>{t.gridProps.onItemChange&&t.gridProps.onEditChange&&s(t.gridProps.onEditChange,{edit:{},...m(e.syntheticEvent)})},Je=(e,n,o)=>{if(Oe.enabled&&Oe.mode==="incell"&&t.gridProps.dataItemKey){const r=d.editReducer(t.gridProps.edit,{type:d.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:n[t.gridProps.dataItemKey],field:o}});t.gridProps.onEditChange&&s(t.gridProps.onEditChange,{edit:r,...m(e)})}},Ye=(e,n)=>{var r;if(d.getDetailExpandableOptions(t.detailExpandable).enabled){const a=d.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},e);t.gridProps.onDetailExpandChange&&s(t.gridProps.onDetailExpandChange,{...m(n),detailExpand:a})}},Qe=(e,n)=>{var r;const o=d.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(o.enabled){const a=d.groupExpandReducer((r=t.gridProps.groupExpand)!=null?r:[],e,o);t.gridProps.onGroupExpandChange&&s(t.gridProps.onGroupExpandChange,{...m(n),groupExpand:a})}},Se=(e,n,o)=>{const{allowUnsort:r,mode:a}=ze.normalizeSortable(t.gridProps.sortable||!1,n.sortable||!1),c=(t.gridProps.sort||[]).filter(f=>f.field===n.field)[0],l=o||ze.firstLevelSortSeqMap[r][c&&c.dir||""],u=a==="single"?[]:(t.gridProps.sort||[]).filter(f=>f.field!==n.field);l!==""&&n.field&&u.push({field:n.field,dir:l}),xe(u,e)},Ze=e=>{t.gridProps.onItemChange&&s(t.gridProps.onItemChange,{...m(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},pe=e=>{var n;if(t.gridProps.onSelectionChange&&v.enabled){const{event:o,dataItem:r,dataIndex:a,columnIndex:c}=e,l={...m(o.syntheticEvent),dataItem:r,startColIndex:c,endColIndex:c,startRowIndex:a,endRowIndex:a,dataItems:y(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:v.mode,cell:v.cell,isDrag:!1,componentId:t.id,selectedField:""};s(t.gridProps.onSelectionChange,{...l,select:t.gridProps.dataItemKey?d.getSelectedState({event:l,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},et=e=>{var f,h;if(!v.enabled||!t.gridProps.dataItemKey)return;const n={dataItems:y(),mode:v.mode,cell:v.cell,componentId:t.id,selectedField:"",...m(e)},o=d.getSelectedStateFromKeyDown({event:n,selectedState:(f=t.gridProps.select)!=null?f:{},dataItemKey:t.gridProps.dataItemKey});if(o===t.gridProps.select)return;const r=e.target,a=d.closestTagName(r,"TD"),c=d.closestTagName(r,"TR"),l=d.getColumnIndex(a),u=d.getRowIndex(c);if(l!==void 0&&u!==void 0){const w=(h=A.getDataAsArray(t.gridProps.data))==null?void 0:h[u];t.gridProps.onSelectionChange&&s(t.gridProps.onSelectionChange,{...n,select:o,dataItem:w,startRowIndex:u,startColIndex:l,startDataItem:w,endDataItem:w,endRowIndex:u,endColIndex:l,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}},tt=e=>{if(t.gridProps.onHeaderSelectionChange&&v.enabled){const n=y();s(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?n.reduce((o,r)=>(t.gridProps.dataItemKey&&b.getter(t.gridProps.dataItemKey)(r)!==void 0&&(o[b.getter(t.gridProps.dataItemKey)(r)]=!0),o),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:E.current,dataItems:n})}},J=(e,n)=>{t.gridProps.onSelectionChange&&v.enabled&&s(t.gridProps.onSelectionChange,{...e,select:n})},nt=e=>{var n;if(t.gridProps.onSelectionChange&&v.enabled){const o=y()[e.startRowIndex],r=y()[e.endRowIndex],a={syntheticEvent:void 0,target:E.current,selectedField:"",componentId:t.id,dataItems:y(),dataItem:null,startDataItem:o,endDataItem:r,...e},c=d.getSelectedState({event:a,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey});J(a,c)}},rt=e=>{if(t.gridProps.onSelectionChange&&v.enabled){const n=e.dataItems[0],o=e.dataItems[e.dataItems.length-1],r={},a={...e,startDataItem:n,endDataItem:o,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:t.columnsRef.length-1};e.dataItems.forEach(c=>{const u=b.getter(t.gridProps.dataItemKey)(c);r[u]=e.cell?[...Array(t.columnsRef.length).keys()]:!0}),J(a,r)}},ot=e=>{if(t.gridProps.onSelectionChange&&v.enabled){const o=b.getter(t.gridProps.dataItemKey)(e.dataItem),r=0,a=t.columnsRef.length-1,c=e.dataItems.findIndex(w=>w[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),f={...e,startDataItem:c,endDataItem:c,startRowIndex:c,endRowIndex:c,startColIndex:r,endColIndex:a},h=e.mode==="multiple"?t.gridProps.select||{}:{};h[o]===!0||Array.isArray(h[o])&&h[o].length===t.columnsRef.length?delete h[o]:h[o]=e.cell?[...Array(t.columnsRef.length).keys()]:!0,J(f,h)}},at=e=>{t.gridProps.onSelectionChange&&v.enabled&&J(e,{})},z=(e,n,o,r,a)=>{dt();const c=t.gridProps.onDataStateChange;if(e){const l={...m(r),...n,targetEvent:a};s(e,l)}else c&&s(c,{...m(r),targetEvent:a||{},dataState:{...Ct(),...o}})},Y=(e,n,o)=>{var r;D&&t.gridProps.pageable&&((r=P.current)==null||r.reset()),z(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},n,o)},it=(e,n,o)=>{var r;t.gridProps.pageable||(r=t.gridProps.group)!=null&&r.length?t.gridProps.virtualSkipRef&&(t.gridProps.virtualSkipRef.current=e.skip,N()):Y(e,n,o)},ct=()=>{let e=t.gridProps.total||0;return Array.isArray(t.gridProps.data)?e=e||t.gridProps.data.length:t.gridProps.data&&(e=e||t.gridProps.data.total),e},dt=()=>{D&&t.gridProps.virtualSkipRef&&(t.gridProps.virtualSkipRef.current=0)},lt=e=>{var a,c;const n=(c=(a=t.gridProps.take)!=null?a:t.gridProps.pageSize)!=null?c:0,o=(t.gridProps.skip||0)+n,r=ct();o<r&&Y({skip:o,take:n},e)},st=e=>{var r,a;const n=(a=(r=t.gridProps.take)!=null?r:t.gridProps.pageSize)!=null?a:0,o=(t.gridProps.skip||0)-n;o>=0&&Y({skip:o,take:n},e)},ut=e=>{Y({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},xe=(e,n)=>{z(t.gridProps.onSortChange,{sort:e},{sort:e,...D&&!t.gridProps.pageable?{skip:0}:{}},n)},gt=(e,n)=>{z(t.gridProps.onFilterChange,{filter:e},{filter:e,skip:0},n)},ft=e=>{const n=t.gridProps.searchFields||t.columnsRef.map(a=>a.field)||[],o=e.nativeEvent.target.value,r={logic:"or",filters:n.filter(a=>a!==void 0).map(a=>{var c;return typeof a=="string"?{field:a,value:o,operator:"contains"}:{value:o,operator:(c=a.operator)!=null?c:"contains",field:a.field,ignoreCase:a.ignoreCase}})};z(t.gridProps.onSearchChange,{search:r},{},e.syntheticEvent)},oe=()=>{var e;(e=Ie.current)==null||e.save()},mt=async e=>{var n,o;(n=t.gridProps)!=null&&n.onPdfExport&&await((o=t.gridProps)==null?void 0:o.onPdfExport(e))},ae=(e,n)=>{const o=n.nativeEvent?n:{nativeEvent:n.nativeEvent||n.originalEvent};let r={};t.isVirtualScroll&&e.length&&!t.gridProps.pageable&&(r={take:void 0}),e.length===0&&t.gridProps.navigatable&&(ge.current=!0),z(t.gridProps.onGroupChange,{group:e},{group:e,skip:0,...r},o)},ie=e=>{if(t.gridProps.onColumnsStateChange){const n={target:E.current,columnsState:e};s(t.gridProps.onColumnsStateChange,n)}},ce=(e,n,o)=>{const{columnsRef:r,columnsState:a}=t,c=r[e],l=A.getFlatColumnsState(a),u=c.depth,f=C=>{do C++;while(C<r.length&&r[C].depth>u);return C},h=r.splice(e,f(e)-e);r.splice(e<n?f(n-h.length):n,0,...h),r.filter(C=>C.declarationIndex>=0).forEach((C,B)=>{C.orderIndex=B;const j=l.find(_=>_.id===C.id);j&&(j.orderIndex=B)});const w=r[e].locked&&r[n].locked;d.updateLeft(t.columnsMapRef,r,w||te.current),d.updateRight(t.columnsMapRef,r,w||te.current),ue.current&&(te.current=!1,ue.current=!1);const re=X();if(N(),t.gridProps.onColumnReorder){const C={target:E.current,columns:re,columnId:c.id,nativeEvent:o};s(t.gridProps.onColumnReorder,C)}ie(a)},F=(e,n,o)=>{const r=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(o==="forbidden"||!r||!W.current)return;const a=t.dataRef[n];t.gridProps.onRowReorder&&s(t.gridProps.onRowReorder,{draggedDataItems:[W.current],droppedDataItem:a==null?void 0:a.dataItem,dropPosition:o,nativeEvent:e.originalEvent,dragEvent:e,target:E.current}),W.current=null},Pt=(e,n,o)=>{if(t.gridProps.group===void 0)return;const r=t.gridProps.group.slice();r.splice(n,0,...r.splice(e,1)),ae(r,o)},De=(e,n,o)=>{const r=t.columnsRef[e].field;if(!r)return;const a=(t.gridProps.group||[]).slice();a.splice(n,0,{field:r}),ae(a,o)},ht=(e,n)=>{const o=k.current.getCurrentGroupsLength;De(e,o,n)},de=()=>{let e=0;if(!x.current.colGroupMain)return;const n=x.current.colGroupMain.children;for(let o=0;o<n.length;o++){const r=n[o].width;if(!r){e=0;break}e+=parseFloat(r.toString())}e=Math.round(e),V.current&&V.current.setWidth(e),U.current&&U.current.setWidth(e),M.current&&(M.current.style.width=e?e+"px":"")},ke=()=>{var e;t.gridProps.widthRef&&(t.gridProps.widthRef.current=((e=T.current)==null?void 0:e.offsetWidth)||0)},Ke=()=>{var e;t.gridProps.containerHeightRef&&(t.gridProps.containerHeightRef.current=((e=q.current)==null?void 0:e.offsetHeight)||0)},bt=()=>{const e=t.gridProps.minRowHeightRef;if(e&&!e.current&&!t.gridProps.rowHeight){const n=A.calcRowHeight(O.current);n&&(e.current=n,N())}},Q=i.useCallback((e,n,o,r,a)=>{var f;if(!Rt()&&!o||!e)return;const c={type:e,nativeEvent:n,columns:t.columnsRef,dataItemKey:t.gridProps.dataItemKey||"",dataItem:r,field:a,...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{},...o},l=y(),u=d.populateClipboardData({event:c,data:l,selectedState:(f=t.gridProps.select)!=null?f:{},previousCopiedItems:Ge.current});e!==d.ClipboardActionType.paste&&(Ge.current=u.copiedItems),t.gridProps.onClipboard&&I&&s(t.gridProps.onClipboard,{...c,...u})},[t.gridProps.select,t.gridProps.dataItemKey,t.gridProps.data,t.gridProps.clipboard,t.gridProps.onClipboard]),Rt=()=>{var a,c,l;if(!b.canUseDOM)return!1;const e=b.getActiveElement(S()),n=e?e.matches(".k-table-td")?e:(a=S())==null?void 0:a.body:(c=S())==null?void 0:c.body,o=n.closest(".k-grid-container"),r=n&&((l=T.current)==null?void 0:l.contains(n));return!!(n&&r&&o)},vt=(e,n,o,r,a,c,l)=>{de(),te.current=!0,ue.current=!0,t.gridProps.onColumnResize&&I&&s(t.gridProps.onColumnResize,{columns:X(),nativeEvent:r,targetColumnId:l,index:e,newWidth:n,oldWidth:o,end:a,target:E.current}),a&&ie(c)},Ct=()=>{var e;return{filter:t.gridProps.filter,sort:t.gridProps.sort,skip:t.gridProps.skip,take:(e=t.gridProps.take)!=null?e:t.gridProps.pageSize,group:t.gridProps.group}},m=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:E.current}),It=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),s=(e,n)=>{if(t.gridProps.isClient){e(n);return}e(It(n))},Et=()=>{var e,n,o;if(O.current&&((e=O.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){me.current=!1,(n=document.activeElement)!=null&&n.closest(".k-grid-edit-row")?fe.current=document.activeElement:fe.current=void 0;const r=Array.from((o=O.current)==null?void 0:o.getElementsByClassName("k-grid-edit-row"));r.length>Re.current.length?ee.current=r.filter(a=>!Re.current.includes(a))[0]:r.length===1&&(ee.current=r[0],me.current=!0),Re.current=r}},y=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),S=()=>{var e;if(b.canUseDOM)return((e=Z())==null?void 0:e.ownerDocument)||document},Z=()=>T.current,le=i.useCallback(e=>{var r,a;if(!P.current||!((r=P.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;H.current&&H.current.disconnect();const{rowIndex:n}=e,o=Z();if(D){const c=((a=P.current.rowHeightService)==null?void 0:a.offset(n))||0;P.current.container.scroll(0,c)}else if(o){const c=n<1?o.querySelector("tbody > tr:nth-child(1)"):o.querySelector(`tbody > tr:nth-child(${n+1})`);c&&q.current&&(q.current.scrollTop=c.offsetTop)}},[t.gridProps.scrollable]),Me=e=>JSON.stringify(e.map(n=>({id:n.id,field:n.field,title:n.title,children:n.children}))),wt=()=>Me(Mt)===Me(t.columnsRef),yt=()=>{ne.current=window.innerWidth,wt()||N()},St=()=>{var c;const{virtualTotal:e,virtualPageSize:n,gridProps:o}=t,r=P.current,a=t.gridProps.rowHeight||((c=o.minRowHeightRef)==null?void 0:c.current)||0;r&&(r.fixedScroll=o.fixedScroll||!1,r.PageChange=it,r.pageSize=n,r.scrollableVirtual=D,r.container=q.current,r.tableBody=O.current,r.scrollHeightContainer=Ae.current,r.table=M.current,(!r.rowHeightService||r.total!==e)&&a&&(r.total=e,r.rowHeightService=new b.RowHeightService(e,a)))},Te=i.useCallback(e=>{const n={rowIndex:be.current};e.forEach(o=>{o.isIntersecting||le(n)})},[le]),N=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},xt=e=>e.left!==void 0?ve!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},E=i.useRef(null),P=i.useRef(void 0),x=i.useRef(void 0),k=i.useRef(void 0),K=i.useRef(void 0),G=i.useRef(void 0),p=i.useRef(void 0),H=i.useRef(null),O=i.useRef(null),Dt=i.useRef(null),q=i.useRef(null),M=i.useRef(null),se=i.useRef(null),T=i.useRef(null),Ae=i.useRef(null),U=i.useRef(null),V=i.useRef(null),ue=i.useRef(!1),ge=i.useRef(!1),ee=i.useRef(void 0),fe=i.useRef(void 0),me=i.useRef(!1),te=i.useRef(!0),Pe=i.useRef(0),he=i.useRef(void 0),be=i.useRef(void 0),Re=i.useRef([]),Ge=i.useRef([]),ne=i.useRef(0),W=i.useRef(null),kt=i.useRef(null),Kt=i.useRef(null),ve=b.useDir(T),D=t.isVirtualScroll,Mt=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),He=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,v=d.getSelectionOptions(t.gridProps.selectable),Oe=d.getEditableOptions(t.gridProps.editable),Tt=ne.current&&Ce&&ne.current<=Ce.medium&&t.gridProps.adaptive;return i.useMemo(()=>{d.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:K,navigationStateRef:G,idPrefix:t.id}),P.current=new Nt.VirtualScroll},[]),i.useMemo(()=>{var e;(e=P.current)==null||e.reset()},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,He,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&(p.current=new d.ClipboardService(Q),p.current.addEventListeners(S())),()=>{p.current&&p.current.removeEventListeners(S())}),[t.gridProps.onClipboard,t.gridProps.clipboard,Q,S]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(Ft.SAFARI_REGEX)&&(se.current&&(se.current.style.display="block"),M.current&&(M.current.style.display="block")),ke(),de(),b.setScrollbarWidth(),d.tableKeyboardNavigation.onComponentDidMount({scope:T.current||void 0,contextStateRef:K,navigationStateRef:G}),()=>{clearTimeout(he.current)}),[]),i.useEffect(()=>{var e;ke(),de(),b.setScrollbarWidth(),D&&(Ke(),bt(),(e=P.current)==null||e.update()),Et(),d.tableKeyboardNavigation.onComponentDidUpdate({scope:T.current||void 0,contextStateRef:K,navigationStateRef:G,focusFirst:ge.current,newEditableRow:ee.current,singleEditRow:me.current,lastActiveElement:fe.current,navigatable:t.gridProps.navigatable}),ge.current=!1,ee.current=void 0}),i.useEffect(()=>{if(b.canUseDOM){const e={rootMargin:"0px",threshold:.9};H.current=window.IntersectionObserver&&new window.IntersectionObserver(Te,e)||null}},[Te]),i.useEffect(()=>{var n;let e;return b.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(()=>{yt(),D&&Ke()}),e.observe((n=S())==null?void 0:n.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(E,()=>({get element(){return Z()},props:t.gridProps,get columns(){return X()},scrollIntoView:e=>{var r;if(!((r=P.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;const{rowIndex:n}=e;be.current=n;const o=Z();if(H.current&&o){H.current.disconnect();const a=o.querySelector(`[absolute-row-index="${be.current}"]`);a?H.current.observe(a):le(e)}},fitColumns:e=>{x.current.dblClickHandler(null,e)},exportAsPdf:oe})),i.useImperativeHandle(t.gridRef,()=>E.current),i.useMemo(()=>{x.current=new Lt.ColumnResize(vt)},[t.gridProps.onColumnResize,t.columnsRef]),i.useMemo(()=>{k.current=new zt.CommonDragLogic(ce,Pt,De)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.columnsRef,t.gridProps.groupable]),x.current.resizable=t.gridProps.resizable||!1,x.current.columns=t.columnsRef,x.current.columnsState=b.cloneArray(t.columnsState),k.current.reorderable=t.gridProps.reorderable||!1,k.current.groupable=He,k.current.columns=t.columnsRef,k.current.dir=ve,St(),i.createElement(Vt.GridContext.Provider,{value:{isClient:I,rowReorder:F,activeDragRowDataItemRef:W,reorderRowDragTargetRef:kt,reorderRowDropTargetRef:Kt,dir:ve,getCellPositionStyle:xt,dataItemKey:t.gridProps.dataItemKey,columnsState:t.columnsState,columnsRef:t.columnsRef,onColumnsStateChange:ie,groupChange:ae,selectionRelease:nt,pagerPageChange:ut,onContextMenu:qe,rowClick:je,rowDblClick:_e,cellClick:Je,headerCellClick:Se,itemChange:Ze,onDialogEditCancel:Xe,onDialogEditSubmit:$e,sortable:t.gridProps.sortable,sort:t.gridProps.sort,defaultSort:t.gridProps.defaultSort,sortChange:xe,filterable:t.gridProps.filterable,filter:t.gridProps.filter,defaultFilter:t.gridProps.defaultFilter,filterOperators:t.gridProps.filterOperators||Wt.operators,filterChange:gt,searchChange:ft,exportAsPdf:oe,onHeaderSelectionChange:tt,columnGroupChange:ht,onKeyDown:Ve,onFocus:We,scrollHandler:Ue,selectionChange:pe,mobileMode:Tt,adaptiveColumnMenuRef:ne.current,adpativeTitle:t.gridProps.adaptiveTitle,adaptive:t.gridProps.adaptive,dispatchDetailExpand:Ye,dispatchGroupExpand:Qe,columnResizeRef:x,dragLogicRef:k,navigationStateRef:G,tableElementRef:M,tableBodyElementRef:O,headerElementRef:Dt,containerElementRef:q,headTableElementRef:se,elementRef:T,virtualScrollHeightContainerRef:Ae,footerRef:U,headerRef:V,vsRef:P}},i.createElement(d.TableKeyboardNavigationContext.Provider,{value:K.current},t.children),i.createElement(qt.GridContextMenu,{show:g.show&&($==null?void 0:$.length),dataItem:g.dataItem,field:g.field,items:$,offset:g.offset,onClose:Ee,onSelect:Ne}),t.gridProps.pdf&&i.createElement(Ut.BasePDFExport,{gridProps:t.gridProps,innerGrid:t.innerGrid,pdf:typeof t.gridProps.pdf=="object"?t.gridProps.pdf:{},onPdfExport:mt,ref:e=>Ie.current=e}))};exports.GridClientWrapper=jt;