@progress/kendo-react-grid 9.3.1 → 9.4.0-develop.10

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 (194) hide show
  1. package/Grid.js +1 -1
  2. package/Grid.mjs +80 -1043
  3. package/GridClientContextReader.js +9 -0
  4. package/GridClientContextReader.mjs +31 -0
  5. package/GridClientWrapper.js +9 -0
  6. package/GridClientWrapper.mjs +793 -0
  7. package/GridColumn.js +1 -1
  8. package/GridColumn.mjs +4 -5
  9. package/GridComponent.js +8 -0
  10. package/GridComponent.mjs +594 -0
  11. package/GridSearchBox.js +8 -0
  12. package/GridSearchBox.mjs +35 -0
  13. package/GridState.js +9 -0
  14. package/GridState.mjs +99 -0
  15. package/GridToolbar.js +1 -1
  16. package/GridToolbar.mjs +5 -6
  17. package/GridWatermarkOverlay.js +9 -0
  18. package/{GridNoRecords.js → GridWatermarkOverlay.mjs} +8 -1
  19. package/StatusBar.js +1 -1
  20. package/StatusBar.mjs +24 -25
  21. package/VirtualScroll.js +1 -1
  22. package/VirtualScroll.mjs +0 -1
  23. package/VirtualScrollFixed.js +1 -1
  24. package/VirtualScrollFixed.mjs +9 -10
  25. package/cells/GridCell.js +1 -1
  26. package/cells/GridCell.mjs +22 -34
  27. package/cells/GridDetailCell.js +1 -1
  28. package/cells/GridDetailCell.mjs +12 -20
  29. package/cells/GridDetailHierarchyCell.js +1 -1
  30. package/cells/GridDetailHierarchyCell.mjs +6 -7
  31. package/cells/GridEditCell.js +1 -1
  32. package/cells/GridEditCell.mjs +22 -131
  33. package/cells/GridFilterCell.js +2 -1
  34. package/cells/GridGroupCell.js +1 -1
  35. package/cells/GridGroupCell.mjs +60 -96
  36. package/cells/GridHierarchyCell.js +1 -1
  37. package/cells/GridHierarchyCell.mjs +22 -62
  38. package/cells/GridRowReorderCell.js +8 -0
  39. package/cells/GridRowReorderCell.mjs +41 -0
  40. package/cells/GridSelectionCell.js +1 -1
  41. package/cells/GridSelectionCell.mjs +18 -37
  42. package/cells/client/DetailCellContainer.js +9 -0
  43. package/cells/client/DetailCellContainer.mjs +26 -0
  44. package/cells/client/GridCellContainer.js +9 -0
  45. package/cells/client/GridCellContainer.mjs +68 -0
  46. package/cells/client/GridEditCellContainer.js +9 -0
  47. package/cells/client/GridEditCellContainer.mjs +60 -0
  48. package/cells/client/GridEditCellEditor.js +9 -0
  49. package/cells/client/GridEditCellEditor.mjs +81 -0
  50. package/cells/client/GridGroupCellContainer.js +9 -0
  51. package/cells/client/GridGroupCellContainer.mjs +87 -0
  52. package/cells/client/GridGroupCellToggle.js +9 -0
  53. package/cells/client/GridGroupCellToggle.mjs +52 -0
  54. package/cells/client/GridHierarchyCellContainer.js +9 -0
  55. package/cells/client/GridHierarchyCellContainer.mjs +63 -0
  56. package/cells/client/GridHierarchyCellToggle.js +9 -0
  57. package/cells/client/GridHierarchyCellToggle.mjs +43 -0
  58. package/cells/client/GridRowReorderContainer.js +9 -0
  59. package/cells/client/GridRowReorderContainer.mjs +24 -0
  60. package/cells/client/GridSelectionCellContainer.js +9 -0
  61. package/cells/client/GridSelectionCellContainer.mjs +60 -0
  62. package/cells/client/GridSelectionCellInput.js +9 -0
  63. package/cells/client/GridSelectionCellInput.mjs +43 -0
  64. package/codemods/index.js +8 -0
  65. package/columnMenu/GridColumnMenuCheckboxFilter.js +2 -1
  66. package/columnMenu/GridColumnMenuColumnsList.js +2 -1
  67. package/columnMenu/GridColumnMenuColumnsList.mjs +16 -16
  68. package/columnMenu/GridColumnMenuFilter.js +2 -1
  69. package/columnMenu/GridColumnMenuFilterCell.js +2 -1
  70. package/columnMenu/GridColumnMenuFilterCell.mjs +3 -3
  71. package/columnMenu/GridColumnMenuFilterUI.js +2 -1
  72. package/columnMenu/GridColumnMenuGroup.js +2 -1
  73. package/columnMenu/GridColumnMenuGroup.mjs +5 -5
  74. package/columnMenu/GridColumnMenuItem.js +2 -1
  75. package/columnMenu/GridColumnMenuItem.mjs +2 -2
  76. package/columnMenu/GridColumnMenuItemContent.js +2 -1
  77. package/columnMenu/GridColumnMenuItemContent.mjs +4 -4
  78. package/columnMenu/GridColumnMenuItemGroup.js +2 -1
  79. package/columnMenu/GridColumnMenuItemGroup.mjs +4 -4
  80. package/columnMenu/GridColumnMenuSort.js +2 -1
  81. package/columnMenu/GridColumnMenuSort.mjs +26 -37
  82. package/columnMenu/GridColumnMenuWrapper.js +2 -1
  83. package/components/GridContainerElementContainer.js +9 -0
  84. package/components/GridContainerElementContainer.mjs +21 -0
  85. package/components/GridCustomCellClientContainer.js +9 -0
  86. package/components/GridCustomCellClientContainer.mjs +28 -0
  87. package/components/GridDragClue.js +9 -0
  88. package/components/GridDragClue.mjs +18 -0
  89. package/components/GridDraggableRowsContainer.js +9 -0
  90. package/components/GridDraggableRowsContainer.mjs +127 -0
  91. package/components/GridDropClue.js +9 -0
  92. package/components/GridDropClue.mjs +18 -0
  93. package/components/GridElementContainer.js +9 -0
  94. package/components/GridElementContainer.mjs +22 -0
  95. package/components/GridLoader.js +9 -0
  96. package/components/GridLoader.mjs +22 -0
  97. package/components/PagerContainer.js +9 -0
  98. package/components/PagerContainer.mjs +23 -0
  99. package/components/VirtualScrollHeightContainer.js +9 -0
  100. package/components/VirtualScrollHeightContainer.mjs +17 -0
  101. package/components/colGroup/GridColGroup.js +9 -0
  102. package/components/colGroup/GridColGroup.mjs +25 -0
  103. package/components/icons/reorder-row-svg.js +9 -0
  104. package/components/icons/reorder-row-svg.mjs +14 -0
  105. package/components/noRecords/GridNoRecords.js +9 -0
  106. package/{GridNoRecords.mjs → components/noRecords/GridNoRecords.mjs} +6 -6
  107. package/components/noRecords/GridNoRecordsContainer.js +9 -0
  108. package/components/noRecords/GridNoRecordsContainer.mjs +30 -0
  109. package/components/table/GridTable.js +9 -0
  110. package/components/table/GridTable.mjs +28 -0
  111. package/components/table/GridTableBody.js +9 -0
  112. package/components/table/GridTableBody.mjs +21 -0
  113. package/components/table/GridTableScrollable.js +9 -0
  114. package/components/table/GridTableScrollable.mjs +37 -0
  115. package/components/utils.js +8 -0
  116. package/components/utils.mjs +25 -0
  117. package/constants/index.js +1 -1
  118. package/constants/index.mjs +0 -1
  119. package/contextMenu/GridContextMenu.js +9 -0
  120. package/contextMenu/GridContextMenu.mjs +191 -0
  121. package/contextMenu/enums.js +8 -0
  122. package/contextMenu/enums.mjs +12 -0
  123. package/dist/cdn/js/kendo-react-grid.js +8 -1
  124. package/drag/ColumnDraggable.js +2 -1
  125. package/drag/ColumnDraggable.mjs +7 -7
  126. package/drag/ColumnResize.js +1 -1
  127. package/drag/ColumnResize.mjs +0 -1
  128. package/drag/CommonDragLogic.js +1 -1
  129. package/drag/CommonDragLogic.mjs +0 -1
  130. package/drag/GroupingIndicator.js +2 -1
  131. package/drag/GroupingIndicator.mjs +11 -11
  132. package/filterCommon.js +1 -1
  133. package/filterCommon.mjs +4 -5
  134. package/footer/Footer.js +2 -1
  135. package/footer/Footer.mjs +22 -21
  136. package/footer/FooterCell.js +8 -0
  137. package/footer/FooterCell.mjs +42 -0
  138. package/footer/FooterRow.js +1 -1
  139. package/footer/FooterRow.mjs +10 -40
  140. package/footer/client/FooterCellContainer.js +9 -0
  141. package/footer/client/FooterCellContainer.mjs +26 -0
  142. package/header/FilterRow.js +1 -1
  143. package/header/FilterRow.mjs +57 -55
  144. package/header/GridHeaderCell.js +2 -1
  145. package/header/GridHeaderCell.mjs +11 -11
  146. package/header/GridHeaderSelectionCell.js +2 -1
  147. package/header/GridHeaderSelectionCell.mjs +10 -9
  148. package/header/GroupPanel.js +2 -1
  149. package/header/GroupPanel.mjs +36 -32
  150. package/header/Header.js +2 -1
  151. package/header/Header.mjs +35 -33
  152. package/header/HeaderRow.js +1 -1
  153. package/header/HeaderRow.mjs +96 -126
  154. package/header/client/GridFilterCellContainer.js +9 -0
  155. package/header/client/GridFilterCellContainer.mjs +38 -0
  156. package/header/client/GridFilterCellElementContainer.js +9 -0
  157. package/header/client/GridFilterCellElementContainer.mjs +21 -0
  158. package/header/client/GridHeaderCellContainer.js +9 -0
  159. package/header/client/GridHeaderCellContainer.mjs +54 -0
  160. package/header/client/GridHeaderCellElementContainer.js +9 -0
  161. package/header/client/GridHeaderCellElementContainer.mjs +28 -0
  162. package/header/client/GridHeaderRowContainer.js +9 -0
  163. package/header/client/GridHeaderRowContainer.mjs +35 -0
  164. package/header/client/GridHeaderRowReorderCell.js +9 -0
  165. package/header/client/GridHeaderRowReorderCell.mjs +13 -0
  166. package/header/client/HeaderCellResizer.js +9 -0
  167. package/header/client/HeaderCellResizer.mjs +25 -0
  168. package/header/client/HeaderRowDraggable.js +9 -0
  169. package/header/client/HeaderRowDraggable.mjs +30 -0
  170. package/index.d.mts +601 -25
  171. package/index.d.ts +601 -25
  172. package/index.js +1 -1
  173. package/index.mjs +46 -39
  174. package/messages/index.js +1 -1
  175. package/messages/index.mjs +76 -81
  176. package/messages/messagesMap.js +8 -0
  177. package/messages/messagesMap.mjs +18 -0
  178. package/package-metadata.js +1 -1
  179. package/package-metadata.mjs +2 -3
  180. package/package.json +27 -11
  181. package/paging/GridPagerSettings.js +1 -1
  182. package/paging/GridPagerSettings.mjs +6 -7
  183. package/rows/GridDetailRow.js +1 -1
  184. package/rows/GridDetailRow.mjs +2 -3
  185. package/rows/GridRow.js +2 -1
  186. package/rows/GridRow.mjs +42 -20
  187. package/sortCommon.js +8 -0
  188. package/sortCommon.mjs +27 -0
  189. package/{interfaces/GridSortSettings.js → utils/_clientModule.js} +2 -1
  190. package/{interfaces/GridSortSettings.mjs → utils/_clientModule.mjs} +3 -2
  191. package/utils/_serverModule.js +8 -0
  192. package/utils/_serverModule.mjs +12 -0
  193. package/utils/index.js +1 -1
  194. package/utils/index.mjs +213 -102
package/index.d.ts CHANGED
@@ -14,22 +14,34 @@ import { ColumnSortSettings } from '@progress/kendo-react-data-tools';
14
14
  import { ComponentType } from 'react';
15
15
  import { CompositeFilterDescriptor } from '@progress/kendo-data-query';
16
16
  import { DataResult } from '@progress/kendo-data-query';
17
+ import { DetailExpandDescriptor } from '@progress/kendo-react-data-tools';
17
18
  import { DragClue } from '@progress/kendo-react-data-tools';
18
19
  import { DropClue } from '@progress/kendo-react-data-tools';
20
+ import { EditDescriptor } from '@progress/kendo-react-data-tools';
19
21
  import { FilterOperator } from '@progress/kendo-react-data-tools';
20
22
  import { getSelectedState } from '@progress/kendo-react-data-tools';
21
23
  import { getSelectedStateFromKeyDown } from '@progress/kendo-react-data-tools';
22
24
  import { GridClassStructure } from '@progress/kendo-react-common';
23
25
  import { GroupDescriptor } from '@progress/kendo-data-query';
26
+ import { GroupExpandDescriptor } from '@progress/kendo-react-data-tools';
27
+ import { GroupState } from '@progress/kendo-react-data-tools';
24
28
  import { HeaderCellBaseProps } from '@progress/kendo-react-data-tools';
25
29
  import { HeaderThElementProps } from '@progress/kendo-react-data-tools';
30
+ import { IntlService } from '@progress/kendo-react-intl';
26
31
  import { JSX as JSX_2 } from 'react/jsx-runtime';
27
32
  import { KendoReactComponentBaseProps } from '@progress/kendo-react-common';
33
+ import { LocalizationService } from '@progress/kendo-react-intl';
34
+ import { MenuItemModel } from '@progress/kendo-react-layout';
35
+ import { MenuSelectEvent } from '@progress/kendo-react-layout';
28
36
  import { NavigatableSettings } from '@progress/kendo-react-data-tools';
37
+ import { NormalizedDragEvent } from '@progress/kendo-react-common';
38
+ import { Offset } from '@progress/kendo-react-popup';
29
39
  import { PagerProps } from '@progress/kendo-react-data-tools';
30
40
  import { PagerTargetEvent } from '@progress/kendo-react-data-tools';
31
41
  import * as React_2 from 'react';
32
42
  import { ReactElement } from 'react';
43
+ import { SearchField } from '@progress/kendo-react-data-tools';
44
+ import { SelectDescriptor } from '@progress/kendo-react-data-tools';
33
45
  import { setSelectedState } from '@progress/kendo-react-data-tools';
34
46
  import { SortDescriptor } from '@progress/kendo-data-query';
35
47
  import { SortSettings } from '@progress/kendo-react-data-tools';
@@ -38,10 +50,14 @@ import { SVGIcon } from '@progress/kendo-react-common';
38
50
  import { SVGIcon as SVGIcon_2 } from '@progress/kendo-svg-icons';
39
51
  import { TABLE_COL_INDEX_ATTRIBUTE } from '@progress/kendo-react-data-tools';
40
52
  import { TableDragSelectionReleaseEvent } from '@progress/kendo-react-data-tools';
53
+ import { TableEditableSettings } from '@progress/kendo-react-data-tools';
54
+ import { TableGroupExpandableSettings } from '@progress/kendo-react-data-tools';
41
55
  import { TableKeyDownEvent } from '@progress/kendo-react-data-tools';
42
56
  import { TableSelectableMode } from '@progress/kendo-react-data-tools';
43
57
  import { TableSelectableSettings } from '@progress/kendo-react-data-tools';
44
58
  import { TableSelectionChangeEvent } from '@progress/kendo-react-data-tools';
59
+ import { TextBoxChangeEvent } from '@progress/kendo-react-inputs';
60
+ import { TextBoxProps } from '@progress/kendo-react-inputs';
45
61
 
46
62
  /**
47
63
  * The value of the filter operators displayed in the boolean filter menu.
@@ -69,23 +85,173 @@ export declare const cellInputChange: (value: any, e: React_2.SyntheticEvent<any
69
85
  */
70
86
  export declare const cellOperatorChange: (event: any, currentValue: any, onChange: Function) => void;
71
87
 
88
+ /**
89
+ * @hidden
90
+ */
91
+ export declare const contextMenuItemsMap: {
92
+ create: {
93
+ name: string;
94
+ text: string;
95
+ icon: string;
96
+ svgIcon: SVGIcon_2;
97
+ data: {
98
+ action: string;
99
+ };
100
+ };
101
+ edit: {
102
+ name: string;
103
+ text: string;
104
+ icon: string;
105
+ svgIcon: SVGIcon_2;
106
+ data: {
107
+ action: string;
108
+ };
109
+ };
110
+ delete: {
111
+ name: string;
112
+ text: string;
113
+ icon: string;
114
+ svgIcon: SVGIcon_2;
115
+ data: {
116
+ action: string;
117
+ };
118
+ };
119
+ select: {
120
+ name: string;
121
+ text: string;
122
+ icon: string;
123
+ svgIcon: SVGIcon_2;
124
+ items: {
125
+ name: string;
126
+ text: string;
127
+ icon: string;
128
+ svgIcon: SVGIcon_2;
129
+ data: {
130
+ action: string;
131
+ };
132
+ }[];
133
+ };
134
+ copySelection: {
135
+ name: string;
136
+ text: string;
137
+ icon: string;
138
+ svgIcon: SVGIcon_2;
139
+ data: {
140
+ action: string;
141
+ };
142
+ options: string;
143
+ };
144
+ copySelectionNoHeaders: {
145
+ name: string;
146
+ text: string;
147
+ icon: string;
148
+ svgIcon: SVGIcon_2;
149
+ data: {
150
+ action: string;
151
+ };
152
+ };
153
+ paste: {
154
+ name: string;
155
+ text: string;
156
+ icon: string;
157
+ svgIcon: SVGIcon_2;
158
+ data: {
159
+ action: string;
160
+ };
161
+ };
162
+ reorderRow: {
163
+ name: string;
164
+ text: string;
165
+ icon: string;
166
+ svgIcon: SVGIcon_2;
167
+ items: {
168
+ name: string;
169
+ text: string;
170
+ icon: string;
171
+ svgIcon: SVGIcon_2;
172
+ data: {
173
+ action: string;
174
+ };
175
+ }[];
176
+ };
177
+ exportPDF: {
178
+ name: string;
179
+ text: string;
180
+ icon: string;
181
+ svgIcon: SVGIcon_2;
182
+ data: {
183
+ action: string;
184
+ };
185
+ };
186
+ exportExcel: {
187
+ name: string;
188
+ text: string;
189
+ icon: string;
190
+ svgIcon: SVGIcon_2;
191
+ items: ({
192
+ name: string;
193
+ text: string;
194
+ data: {
195
+ action: string;
196
+ };
197
+ options?: undefined;
198
+ } | {
199
+ name: string;
200
+ text: string;
201
+ data: {
202
+ action: string;
203
+ };
204
+ options: string;
205
+ })[];
206
+ };
207
+ separator: {
208
+ name: string;
209
+ separator: boolean;
210
+ };
211
+ sortAsc: {
212
+ name: string;
213
+ text: string;
214
+ icon: string;
215
+ svgIcon: SVGIcon_2;
216
+ data: {
217
+ action: string;
218
+ };
219
+ };
220
+ sortDesc: {
221
+ name: string;
222
+ text: string;
223
+ icon: string;
224
+ svgIcon: SVGIcon_2;
225
+ data: {
226
+ action: string;
227
+ };
228
+ };
229
+ };
230
+
231
+ export { DetailExpandDescriptor }
232
+
233
+ export { EditDescriptor }
234
+
72
235
  /**
73
236
  * @hidden
74
237
  */
75
238
  declare interface ExtendedColumnProps extends GridColumnProps {
76
239
  declarationIndex: number;
77
240
  parentIndex: number;
78
- colSpan: number;
79
241
  rowSpan: number;
80
242
  depth: number;
243
+ colSpan: number;
81
244
  kFirst?: boolean;
82
245
  index: number;
246
+ headerColSpan: number;
83
247
  children: ExtendedColumnProps[];
84
248
  left: number;
85
249
  right: number;
86
250
  rightBorder: boolean;
87
251
  ariaColumnIndex: number;
88
252
  isAccessible: boolean;
253
+ /** @hidden _internal usage only */
254
+ _type?: 'edit' | 'expand';
89
255
  }
90
256
 
91
257
  /**
@@ -139,7 +305,15 @@ export declare const GRID_PREVENT_SELECTION_ELEMENT = "data-prevent-selection";
139
305
  /** The attribute required by the Grid selection on Grid `tr` elements. */
140
306
  export declare const GRID_ROW_INDEX_ATTRIBUTE = "data-grid-row-index";
141
307
 
142
- export declare const GridCell: (props: GridCellProps) => JSX_2.Element | null;
308
+ export declare const GridCell: (props: GridCellProps) => JSX_2.Element;
309
+
310
+ /**
311
+ * Represents the `GridCellBaseOptions` object that are passed to the handler.
312
+ */
313
+ export declare interface GridCellBaseOptions {
314
+ dataItem?: any;
315
+ field?: string;
316
+ }
143
317
 
144
318
  /**
145
319
  * Represents the props of the GridCell component
@@ -185,6 +359,10 @@ export declare interface GridCellProps extends Omit<CellProps, 'onChange' | 'ren
185
359
  syntheticEvent: React.SyntheticEvent<any>;
186
360
  field?: string;
187
361
  value?: any;
362
+ /** @hidden */
363
+ _expand?: boolean;
364
+ /** @hidden */
365
+ _group?: GroupState;
188
366
  }) => void;
189
367
  /**
190
368
  * The type of the editor which will be used when the cell is in edit mode.
@@ -206,6 +384,32 @@ export declare interface GridCellProps extends Omit<CellProps, 'onChange' | 'ren
206
384
  * @hidden
207
385
  */
208
386
  isRtl?: boolean;
387
+ /**
388
+ * @hidden
389
+ */
390
+ unstyled?: GridClassStructure;
391
+ /**
392
+ * @hidden
393
+ */
394
+ rowDataIndex?: number;
395
+ /**
396
+ * @hidden
397
+ */
398
+ columnType?: GridColumnType;
399
+ /**
400
+ * @hidden
401
+ */
402
+ rowReorderable?: boolean;
403
+ /**
404
+ * @hidden
405
+ */
406
+ columnPosition: any;
407
+ /** @hidden */
408
+ group?: GroupState;
409
+ /** @hidden */
410
+ localization?: LocalizationService;
411
+ /** @hidden */
412
+ intl?: IntlService;
209
413
  }
210
414
 
211
415
  /**
@@ -241,6 +445,20 @@ export declare interface GridCellsSettings {
241
445
  };
242
446
  }
243
447
 
448
+ /**
449
+ * Represents the properties of the callback used when spanning a column.
450
+ */
451
+ export declare type GridColSpanProps = {
452
+ /**
453
+ * Represents the properties of the spanned column.
454
+ */
455
+ column: GridColumnProps;
456
+ /**
457
+ * Represents the current row data item.
458
+ */
459
+ dataItem: any;
460
+ };
461
+
244
462
  /**
245
463
  * @hidden
246
464
  */
@@ -766,13 +984,15 @@ export declare interface GridColumnProps extends Omit<ColumnBaseProps, 'cell'> {
766
984
  /**
767
985
  * Allows the column headers to be clicked and the `sortChange` event emitted.
768
986
  * You have to handle the `sortChange` event yourself and sort the data.
769
- * Defaults to `true`.
987
+ *
988
+ * @default true
770
989
  */
771
990
  sortable?: boolean | GridColumnSortSettings;
772
991
  /**
773
992
  * Defines if the column is locked (frozen or sticky).
774
993
  * Locked columns are the columns that are visible at all times while the user scrolls the component horizontally.
775
- * Defaults to `false`.
994
+ *
995
+ * @default false
776
996
  */
777
997
  locked?: boolean;
778
998
  /**
@@ -784,7 +1004,13 @@ export declare interface GridColumnProps extends Omit<ColumnBaseProps, 'cell'> {
784
1004
  */
785
1005
  columnMenu?: ComponentType<GridColumnMenuProps>;
786
1006
  /**
787
- * Determines if the column can be dragged to the group panel. Defaults to `true`.
1007
+ * Specifies the contactMenu settings that will be applied to the column.
1008
+ */
1009
+ contextMenu?: boolean | GridContextMenuOptions | ((options: GridCellBaseOptions) => boolean | GridContextMenuOptions);
1010
+ /**
1011
+ * Determines if the column can be dragged to the group panel.
1012
+ *
1013
+ * @default true
788
1014
  */
789
1015
  groupable?: boolean;
790
1016
  /**
@@ -792,7 +1018,9 @@ export declare interface GridColumnProps extends Omit<ColumnBaseProps, 'cell'> {
792
1018
  */
793
1019
  editable?: boolean;
794
1020
  /**
795
- * Defines if a filter UI will be rendered for this column. Defaults to `true`.
1021
+ * Defines if a filter UI will be rendered for this column.
1022
+ *
1023
+ * @default true
796
1024
  */
797
1025
  filterable?: boolean;
798
1026
  /**
@@ -800,19 +1028,32 @@ export declare interface GridColumnProps extends Omit<ColumnBaseProps, 'cell'> {
800
1028
  */
801
1029
  filterTitle?: string;
802
1030
  /**
803
- * Defines the filter type that will be rendered inside the filter row. Defaults to `text`.
1031
+ * Defines the filter type that will be rendered inside the filter row.
1032
+ *
1033
+ * @default 'text'
804
1034
  */
805
- filter?: 'text' | 'numeric' | 'boolean' | 'date';
1035
+ filter?: GridDataType;
806
1036
  /**
807
- * Defines the editor type. Used when the column enters the edit mode ([more information and examples]({% slug editing_inline_grid %})). Defaults to `text`.
1037
+ * Defines the editor type. Used when the column enters the edit mode ([more information and examples]({% slug editing_inline_grid %})).
1038
+ *
1039
+ * @default 'text'
808
1040
  */
809
- editor?: 'text' | 'numeric' | 'boolean' | 'date';
1041
+ editor?: GridDataType;
810
1042
  /**
811
1043
  * Overrides the default(three vertical dots) column menu icon or the icon set through the ([`columnMenuIcon`]({% slug api_grid_gridprops %}#toc-columnmenuicon)) property.
812
1044
  */
813
1045
  menuIcon?: SVGIcon;
814
1046
  /**
815
- * Controls the visibility of Grid's column. Defaults to `false`.
1047
+ * Sets the colSpan of the column which will make the row content to span over multiple cells.
1048
+ * As arguments it takes either a number or a function that returns a number based on.
1049
+ *
1050
+ * @default 1
1051
+ */
1052
+ colSpan?: number | ((colSpanProps: GridColSpanProps) => number);
1053
+ /**
1054
+ * Controls the visibility of Grid's column.
1055
+ *
1056
+ * @default false
816
1057
  */
817
1058
  hidden?: boolean;
818
1059
  /**
@@ -849,6 +1090,12 @@ export declare interface GridColumnProps extends Omit<ColumnBaseProps, 'cell'> {
849
1090
  * ```
850
1091
  */
851
1092
  footerCell?: ComponentType<GridFooterCellProps>;
1093
+ /**
1094
+ * Sets the type of the column and renders a dedicated column for interaction.
1095
+ *
1096
+ * @default "data"
1097
+ */
1098
+ columnType?: GridColumnType;
852
1099
  }
853
1100
 
854
1101
  /**
@@ -922,6 +1169,13 @@ export declare interface GridColumnResizeEvent {
922
1169
  declare interface GridColumnSortSettings extends ColumnSortSettings {
923
1170
  }
924
1171
 
1172
+ /**
1173
+ * Sets the column type.
1174
+ *
1175
+ * @default "data"
1176
+ */
1177
+ export declare type GridColumnType = 'data' | 'reorder' | 'checkbox';
1178
+
925
1179
  /**
926
1180
  * @hidden
927
1181
  */
@@ -957,6 +1211,23 @@ export declare class GridCommonDragLogic {
957
1211
  private updateDropElementClue;
958
1212
  }
959
1213
 
1214
+ /**
1215
+ * @hidden
1216
+ */
1217
+ export declare const GridContextMenu: (props: GridContextMenuProps) => JSX_2.Element;
1218
+
1219
+ /**
1220
+ * Represents the available types for the `GridContextMenuAnchorPart`.
1221
+ *
1222
+ * The available anchor parts are:
1223
+ * - `head`
1224
+ * - `body`
1225
+ */
1226
+ export declare enum GridContextMenuAnchorPart {
1227
+ head = "head",
1228
+ body = "body"
1229
+ }
1230
+
960
1231
  /**
961
1232
  * Represents the object of the `onContextMenu` Grid event.
962
1233
  */
@@ -975,6 +1246,85 @@ export declare interface GridContextMenuEvent extends GridEvent {
975
1246
  syntheticEvent: React.MouseEvent<any>;
976
1247
  }
977
1248
 
1249
+ /**
1250
+ * Represents the object of the `onContextMenuItemClick` Grid event.
1251
+ */
1252
+ export declare interface GridContextMenuItemClickEvent extends GridEvent {
1253
+ /**
1254
+ * The Context menu item click event.
1255
+ */
1256
+ event: MenuSelectEvent;
1257
+ /**
1258
+ * The data object that represents the current row.
1259
+ */
1260
+ dataItem?: any;
1261
+ /**
1262
+ * The data object that represents the clicked menu item.
1263
+ */
1264
+ menuItem: any;
1265
+ /**
1266
+ * The field to which the cell is bound.
1267
+ */
1268
+ field?: string;
1269
+ }
1270
+
1271
+ /**
1272
+ * Represents the available predefined items names for the `GridContextMenu` items.
1273
+ */
1274
+ export declare enum GridContextMenuItemNames {
1275
+ create = "create",
1276
+ edit = "edit",
1277
+ delete = "delete",
1278
+ select = "select",
1279
+ copySelection = "copySelection",
1280
+ copySelectionNoHeaders = "copySelectionNoHeaders",
1281
+ paste = "paste",
1282
+ reorderRow = "reorderRow",
1283
+ exportPDF = "exportPDF",
1284
+ exportExcel = "exportExcel",
1285
+ separator = "separator",
1286
+ sortAsc = "sortAsc",
1287
+ sortDesc = "sortDesc"
1288
+ }
1289
+
1290
+ /**
1291
+ * @hidden
1292
+ */
1293
+ export declare interface GridContextMenuOpenArgs extends GridCellBaseOptions {
1294
+ event: React_2.MouseEvent<HTMLElement, MouseEvent>;
1295
+ }
1296
+
1297
+ /**
1298
+ * Represents the `GridContextMenuOptions`.
1299
+ */
1300
+ export declare interface GridContextMenuOptions {
1301
+ /**
1302
+ * The contextmenu settings for the head of the data table.
1303
+ */
1304
+ head?: boolean | (GridContextMenuItemNames | MenuItemModel)[];
1305
+ /**
1306
+ * The contextmenu settings for the body of the data table.
1307
+ */
1308
+ body?: boolean | (GridContextMenuItemNames | MenuItemModel)[];
1309
+ }
1310
+
1311
+ /**
1312
+ * @hidden
1313
+ */
1314
+ export declare interface GridContextMenuProps {
1315
+ show: boolean;
1316
+ offset: Offset;
1317
+ onClose: (event: React_2.SyntheticEvent<HTMLElement>) => void;
1318
+ onSelect: (e: {
1319
+ event: MenuSelectEvent;
1320
+ dataItem?: any;
1321
+ field?: string;
1322
+ }) => void;
1323
+ dataItem?: any;
1324
+ field?: string;
1325
+ items?: (GridContextMenuItemNames | MenuItemModel)[];
1326
+ }
1327
+
978
1328
  /**
979
1329
  * The properties of the default Grid Cell.
980
1330
  */
@@ -1059,6 +1409,17 @@ export declare interface GridDataStateChangeEvent extends GridEvent {
1059
1409
  targetEvent?: PagerTargetEvent;
1060
1410
  }
1061
1411
 
1412
+ /**
1413
+ * Exposes the data types available when setting the [filter](slug:api_grid_gridcolumnprops#toc-filter) or
1414
+ * [editor](slug:api_grid_gridcolumnprops#toc-editor) property of the Grid columns.
1415
+ */
1416
+ export declare type GridDataType = 'text' | 'numeric' | 'boolean' | 'date';
1417
+
1418
+ /** @hidden */
1419
+ export declare interface GridDetailExpandChangeEvent extends GridEvent {
1420
+ detailExpand: DetailExpandDescriptor;
1421
+ }
1422
+
1062
1423
  /**
1063
1424
  * Represents the detail row class of the KendoReact Grid. Used to define custom details for each row. Can be applied for building the hierarchy. If `expandField` is set, the details for each row will be visible or hidden depending on the current data item and its `expandField` value.
1064
1425
  *
@@ -1111,10 +1472,24 @@ export declare interface GridDetailRowProps {
1111
1472
  export declare interface GridDragSelectionReleaseEvent extends TableDragSelectionReleaseEvent {
1112
1473
  }
1113
1474
 
1475
+ /**
1476
+ * TODO: uncomment
1477
+ * Represents the Grid editable settings.
1478
+ *
1479
+ * @hidden
1480
+ */
1481
+ declare interface GridEditableSettings extends TableEditableSettings {
1482
+ }
1483
+
1114
1484
  /**
1115
1485
  * @hidden
1116
1486
  */
1117
- export declare const GridEditCell: (props: GridCellProps) => JSX_2.Element | null;
1487
+ export declare const GridEditCell: (props: GridCellProps) => JSX_2.Element;
1488
+
1489
+ /** @hidden TODO: document */
1490
+ export declare interface GridEditChangeEvent extends GridEvent {
1491
+ edit: EditDescriptor;
1492
+ }
1118
1493
 
1119
1494
  /**
1120
1495
  * Represents the base event object of the Grid.
@@ -1131,7 +1506,7 @@ export declare interface GridExpandChangeEvent extends GridEvent {
1131
1506
  */
1132
1507
  dataItem: any;
1133
1508
  /**
1134
- * Indicates whether the data item is expanded or collapsed
1509
+ * Indicates whether the data item is expanded or collapsed
1135
1510
  */
1136
1511
  value: boolean;
1137
1512
  /**
@@ -1306,12 +1681,14 @@ export declare interface GridGroupableSettings {
1306
1681
  * Determines if the group footer row is visible when the group is collapsed. Defaults to `none`.
1307
1682
  */
1308
1683
  footer?: 'always' | 'visible' | 'none';
1684
+ /** @hidden */
1685
+ expandable?: boolean | GridGroupExpandableSettings;
1309
1686
  }
1310
1687
 
1311
1688
  /**
1312
1689
  * @hidden
1313
1690
  */
1314
- export declare const GridGroupCell: (props: GridCellProps) => JSX_2.Element | null;
1691
+ export declare const GridGroupCell: (props: GridCellProps) => JSX_2.Element;
1315
1692
 
1316
1693
  /**
1317
1694
  * Represents the object of the `onGroupChange` Grid event.
@@ -1323,6 +1700,14 @@ export declare interface GridGroupChangeEvent extends GridEvent {
1323
1700
  group: GroupDescriptor[];
1324
1701
  }
1325
1702
 
1703
+ /** @hidden */
1704
+ declare type GridGroupExpandableSettings = TableGroupExpandableSettings;
1705
+
1706
+ /** @hidden */
1707
+ export declare interface GridGroupExpandChangeEvent extends GridEvent {
1708
+ groupExpand: GroupExpandDescriptor[];
1709
+ }
1710
+
1326
1711
  /**
1327
1712
  * Represent the `ref` of the Grid component.
1328
1713
  */
@@ -1442,6 +1827,13 @@ export declare interface GridHeaderCellProps extends Omit<HeaderCellBaseProps, '
1442
1827
  * Represents the object of the `onHeaderSelectionChange` Grid event.
1443
1828
  */
1444
1829
  export declare interface GridHeaderSelectionChangeEvent extends GridEvent {
1830
+ /**
1831
+ * TODO: uncomment
1832
+ * The new [SelectDescriptor]({% slug api_kendo-react-grid_selectdescriptor %}) based on the user action.
1833
+ *
1834
+ * @hidden
1835
+ */
1836
+ select: SelectDescriptor;
1445
1837
  /**
1446
1838
  * The field of the column in which the cell is located.
1447
1839
  */
@@ -1459,7 +1851,7 @@ export declare interface GridHeaderSelectionChangeEvent extends GridEvent {
1459
1851
  /**
1460
1852
  * @hidden
1461
1853
  */
1462
- export declare const GridHierarchyCell: (props: GridCellProps) => JSX_2.Element | null;
1854
+ export declare const GridHierarchyCell: (props: GridCellProps) => JSX_2.Element;
1463
1855
 
1464
1856
  /**
1465
1857
  * Represents the object of the `onItemChange` Grid event.
@@ -1521,6 +1913,7 @@ export declare const gridMessages: {
1521
1913
  "grid.pagerOf": string;
1522
1914
  "grid.pagerTotalPages": string;
1523
1915
  "grid.searchPlaceholder": string;
1916
+ "grid.searchboxPlaceholder": string;
1524
1917
  "grid.filterCheckAll": string;
1525
1918
  "grid.filterChooseOperator": string;
1526
1919
  "grid.filterSelectedItems": string;
@@ -1528,6 +1921,7 @@ export declare const gridMessages: {
1528
1921
  "grid.filterAriaLabel": string;
1529
1922
  "grid.groupPanelAriaLabel": string;
1530
1923
  "grid.gridAriaLabel": string;
1924
+ "grid.gridRowReorderAriaLabel": string;
1531
1925
  "grid.selectRow": string;
1532
1926
  'grid.filterEqOperator': string;
1533
1927
  'grid.filterNotEqOperator': string;
@@ -1678,6 +2072,14 @@ declare type GridPagerType = 'numeric' | 'input';
1678
2072
  * Represents the props of the [KendoReact Grid component]({% slug overview_grid %}).
1679
2073
  */
1680
2074
  export declare interface GridProps extends KendoReactComponentBaseProps {
2075
+ /** @hidden */
2076
+ autoProcessData?: boolean | {
2077
+ filter?: boolean;
2078
+ search?: boolean;
2079
+ sort?: boolean;
2080
+ group?: boolean;
2081
+ page?: boolean;
2082
+ };
1681
2083
  /**
1682
2084
  * Sets the Grid row key prop to the value of this field in the dataItem.
1683
2085
  * If not set, the dataItem index will be used for the row key, which might lead to row not updated during paging or scrolling.
@@ -1704,7 +2106,7 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1704
2106
  */
1705
2107
  clipboard?: ClipboardSettings | boolean;
1706
2108
  /**
1707
- * Fires when clipboard support is enabled and the one of the actions 'copy'. The event accepts type [ClipboardDataEvent]({% slug api_data-tools_clipboarddataevent %}).
2109
+ * Fires when clipboard support is enabled and the one of the actions 'copy'. The event accepts type [ClipboardDataEvent]({% slug api_data-tools_clipboarddataevent %}). Only fired when the Grid is run as a client component.
1708
2110
  */
1709
2111
  onClipboard?: (event: ClipboardDataEvent) => void;
1710
2112
  /**
@@ -1715,6 +2117,8 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1715
2117
  * The ([descriptors]({% slug api_kendo-data-query_sortdescriptor %})) by which the data is sorted. Applies the sorting styles and buttons to the affected columns.
1716
2118
  */
1717
2119
  sort?: SortDescriptor[];
2120
+ /** @hidden */
2121
+ defaultSort?: SortDescriptor[];
1718
2122
  /**
1719
2123
  * Enables the filtering of the columns with their `field` option set ([more information and examples]({% slug filtering_grid %})).
1720
2124
  */
@@ -1723,6 +2127,8 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1723
2127
  * The [descriptor]({% slug api_kendo-data-query_compositefilterdescriptor %}) by which the data is filtered ([more information and examples]({% slug filtering_grid %})). This affects the values and buttons in the `FilterRow` of the Grid.
1724
2128
  */
1725
2129
  filter?: CompositeFilterDescriptor;
2130
+ /** @hidden */
2131
+ defaultFilter?: CompositeFilterDescriptor;
1726
2132
  /**
1727
2133
  * The filter operators for the Grid filters.
1728
2134
  */
@@ -1731,10 +2137,26 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1731
2137
  * Fires when the Grid filter is modified through the UI ([more information and examples]({% slug filtering_grid %})). You have to handle the event yourself and filter the data.
1732
2138
  */
1733
2139
  onFilterChange?: (event: GridFilterChangeEvent) => void;
2140
+ /**
2141
+ * Specifies if the loader of the Grid will be displayed.
2142
+ */
2143
+ showLoader?: boolean;
2144
+ /**
2145
+ * A custom component that the Grid will render instead of the built-in loader.
2146
+ */
2147
+ loader?: React.ReactNode;
2148
+ /**
2149
+ * Fires when the user reorders a row.
2150
+ */
2151
+ onRowReorder?: (event: GridRowReorderEvent) => void;
1734
2152
  /**
1735
2153
  * Specifies a React element that will be cloned and rendered inside the column menu of the Grid. Can be overridden on column level.
1736
2154
  */
1737
2155
  columnMenu?: null | ComponentType<GridColumnMenuProps>;
2156
+ /**
2157
+ * Specifies the contactMenu settings that will be applied to the Grid.
2158
+ */
2159
+ contextMenu?: boolean | GridContextMenuOptions | ((options: GridCellBaseOptions) => boolean | GridContextMenuOptions);
1738
2160
  /**
1739
2161
  * Globally overrides the default(three vertical dots) column menu icon for the whole Grid. If set, the prop can be overridden on column level using the ([menuIcon]({% slug api_grid_gridcolumnprops %}#toc-menuicon)) property.
1740
2162
  */
@@ -1744,6 +2166,8 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1744
2166
  * ([more information and examples]({% slug groupingbasics_grid %})).
1745
2167
  */
1746
2168
  group?: GroupDescriptor[];
2169
+ /** @hidden */
2170
+ defaultGroup?: GroupDescriptor[];
1747
2171
  /**
1748
2172
  * Fires when the grouping of the Grid is changed. You have to handle the event yourself and group the data
1749
2173
  * ([more information and examples]({% slug groupingbasics_grid %})).
@@ -1773,6 +2197,8 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1773
2197
  * Alias of `pageSize` property. If `take` is set, `pageSize` will be ignored.
1774
2198
  */
1775
2199
  take?: number;
2200
+ /** @hidden */
2201
+ defaultTake?: number;
1776
2202
  /**
1777
2203
  * Fires when the page of the Grid is changed ([see example]({% slug paging_grid %})). You have to handle the event yourself and page the data.
1778
2204
  */
@@ -1785,10 +2211,25 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1785
2211
  * Defines the number of records that will be skipped by the pager ([see example]({% slug paging_grid %})). Required by the paging functionality.
1786
2212
  */
1787
2213
  skip?: number;
2214
+ /** @hidden */
2215
+ defaultSkip?: number;
1788
2216
  /**
1789
2217
  * Determines if the scroll position will be updated after data change. If set to `true` the scroll will remain on the same position.
1790
2218
  */
1791
2219
  fixedScroll?: boolean;
2220
+ /** @hidden */
2221
+ detailExpand?: DetailExpandDescriptor;
2222
+ /** @hidden */
2223
+ defaultDetailExpand?: DetailExpandDescriptor;
2224
+ /** @hidden */
2225
+ /** @hidden */
2226
+ onDetailExpandChange?: (event: GridDetailExpandChangeEvent) => void;
2227
+ /** @hidden */
2228
+ groupExpand?: GroupExpandDescriptor[];
2229
+ /** @hidden */
2230
+ defaultGroupExpand?: GroupExpandDescriptor[];
2231
+ /** @hidden */
2232
+ onGroupExpandChange?: (event: GridGroupExpandChangeEvent) => void;
1792
2233
  /**
1793
2234
  * Fires when the user tries to expand or collapse a row.
1794
2235
  */
@@ -1797,10 +2238,14 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1797
2238
  * Specifies the name of the field which will provide a Boolean representation of the expanded state of the item ([see example]({% slug detailrow_grid %})).
1798
2239
  */
1799
2240
  expandField?: string;
2241
+ /** @hidden */
2242
+ select?: SelectDescriptor;
2243
+ /** @hidden */
2244
+ defaultSelect?: SelectDescriptor;
1800
2245
  /**
1801
2246
  * The Grid selectable settings.
1802
2247
  */
1803
- selectable?: GridSelectableSettings;
2248
+ selectable?: boolean | GridSelectableSettings;
1804
2249
  /**
1805
2250
  * Specifies the name of the field which will provide a:
1806
2251
  * - Boolean representation of the selected state of the item ([see example]({% slug selection_grid %})) for row selection
@@ -1827,6 +2272,14 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1827
2272
  * Fires when the user changes the values of the item. The event is not debounced and fires on every `onChange` event of the input in the current `EditCell` ([more information and examples]({% slug editing_inline_grid %})).
1828
2273
  */
1829
2274
  onItemChange?: (event: GridItemChangeEvent) => void;
2275
+ /** @hidden */
2276
+ edit?: EditDescriptor;
2277
+ /** @hidden */
2278
+ defaultEdit?: EditDescriptor;
2279
+ /** @hidden */
2280
+ editable?: boolean | GridEditableSettings;
2281
+ /** @hidden */
2282
+ onEditChange?: (event: GridEditChangeEvent) => void;
1830
2283
  /**
1831
2284
  * Specifies the name of the field which will provide a Boolean representation of the edit state of the current item ([more information and examples]({% slug editing_inline_grid %})).
1832
2285
  */
@@ -1852,6 +2305,22 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1852
2305
  * Specifies a React element that will be cloned and rendered inside the detail rows of the currently expanded items ([see example]({% slug hierarchy_grid %})). An item will be rendered as expanded if the value of its `expandField` is `true`.
1853
2306
  */
1854
2307
  detail?: null | ComponentType<GridDetailRowProps>;
2308
+ /**
2309
+ * The [descriptor]({% slug api_kendo-data-query_compositefilterdescriptor %}) by which the data is searched. Its first FilterDescriptor populates the GridSearchBox.
2310
+ */
2311
+ search?: CompositeFilterDescriptor;
2312
+ /**
2313
+ * The [descriptor]({% slug api_kendo-data-query_compositefilterdescriptor %}) by which the data is searched by default. Its first FilterDescriptor populates the GridSearchBox.
2314
+ */
2315
+ defaultSearch?: CompositeFilterDescriptor;
2316
+ /**
2317
+ * Defines the fields of the data that are filtered by the GridSearchBox.
2318
+ */
2319
+ searchFields?: (string | SearchField)[];
2320
+ /**
2321
+ * Fires when the search value of the GridSearchBox is changed.
2322
+ */
2323
+ onSearchChange?: (event: GridSearchChangeEvent) => void;
1855
2324
  /**
1856
2325
  * Represents the `style` HTML attribute.
1857
2326
  */
@@ -1868,12 +2337,18 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1868
2337
  * If set to `true`, the user can reorder columns by dragging their header cells ([see example]({% slug reordering_columns_grid %})).
1869
2338
  */
1870
2339
  reorderable?: boolean;
2340
+ /**
2341
+ * Defines the row reorder settings.
2342
+ *
2343
+ * @default false
2344
+ */
2345
+ rowReorderable?: boolean | GridRowReorderSettings;
1871
2346
  /**
1872
2347
  * Determines if grouping by dragging and dropping the column headers is allowed ([more information and examples]({% slug groupingbasics_grid %})).
1873
2348
  */
1874
2349
  groupable?: GridGroupableSettings | boolean;
1875
2350
  /**
1876
- * Fires when a column is resized.
2351
+ * Fires when a column is resized. Only fired when the Grid is run as a client component.
1877
2352
  */
1878
2353
  onColumnResize?: (event: GridColumnResizeEvent) => void;
1879
2354
  /**
@@ -1897,7 +2372,7 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1897
2372
  */
1898
2373
  headerCellRender?: (defaultRendering: React.ReactNode | null, props: GridHeaderCellProps) => React.ReactNode;
1899
2374
  /**
1900
- * Fires when Grid is scrolled.
2375
+ * Fires when Grid is scrolled. Only fired when the Grid is run as a client component.
1901
2376
  */
1902
2377
  onScroll?: (event: GridEvent) => void;
1903
2378
  /**
@@ -1910,11 +2385,11 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1910
2385
  */
1911
2386
  navigatable?: boolean | NavigatableSettings;
1912
2387
  /**
1913
- * Fires when Grid keyboard navigation position is changed.
2388
+ * Fires when Grid keyboard navigation position is changed. Only fired when the Grid is run as a client component.
1914
2389
  */
1915
2390
  onNavigationAction?: (event: GridNavigationActionEvent) => void;
1916
2391
  /**
1917
- * Fires when the user press keyboard key.
2392
+ * Fires when the user press keyboard key. Only fired when the Grid is run as a client component.
1918
2393
  */
1919
2394
  onKeyDown?: (event: GridKeyDownEvent) => void;
1920
2395
  /**
@@ -1943,9 +2418,13 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1943
2418
  */
1944
2419
  size?: 'small' | 'medium';
1945
2420
  /**
1946
- * The event that is fired when the ContextMenu is activated.
2421
+ * The event that is fired when the ContextMenu is activated. Only fired when the Grid is run as a client component.
1947
2422
  */
1948
2423
  onContextMenu?: (event: GridContextMenuEvent) => void;
2424
+ /**
2425
+ * The event that is fired when the ContextMenu item is clicked. Only fired when the Grid is run as a client component.
2426
+ */
2427
+ onContextMenuItemClick?: (event: GridContextMenuItemClickEvent) => void;
1949
2428
  /**
1950
2429
  * Sets the `id` property of the top div element of the component.
1951
2430
  */
@@ -1956,6 +2435,11 @@ export declare interface GridProps extends KendoReactComponentBaseProps {
1956
2435
  unstyled?: GridClassStructure;
1957
2436
  }
1958
2437
 
2438
+ /**
2439
+ * The direction in which a row can be dragged and dropped.
2440
+ */
2441
+ export declare type GridReorderDropPosition = 'before' | 'after' | 'forbidden';
2442
+
1959
2443
  /**
1960
2444
  * The component for each of the items in the `data` property which the Grid renders.
1961
2445
  */
@@ -2041,8 +2525,61 @@ export declare interface GridRowProps extends KendoReactComponentBaseProps {
2041
2525
  * @hidden
2042
2526
  */
2043
2527
  absoluteRowIndex: number;
2528
+ /**
2529
+ * @hidden
2530
+ */
2531
+ isRowReorderable?: boolean;
2044
2532
  }
2045
2533
 
2534
+ /**
2535
+ * Represents the object of the `onReorderRow` Grid event.
2536
+ */
2537
+ export declare interface GridRowReorderEvent extends Omit<GridEvent, 'syntheticEvent'> {
2538
+ /**
2539
+ * Represents the currently dragged row.
2540
+ */
2541
+ draggedDataItems: any[];
2542
+ /**
2543
+ * Represents the row over which the dragged row is dropped.
2544
+ */
2545
+ droppedDataItem: any;
2546
+ /**
2547
+ * The exact dragged row position relative to the position of the drop target row..
2548
+ */
2549
+ dropPosition: GridReorderDropPosition;
2550
+ /**
2551
+ * A native DOM event.
2552
+ */
2553
+ nativeEvent: PointerEvent | MouseEvent | TouchEvent | Event;
2554
+ /**
2555
+ * Represents a unified drag event that is triggered regardless if the native event underneath is a pointer, mouse, touch, or scroll event.
2556
+ */
2557
+ dragEvent: NormalizedDragEvent;
2558
+ /**
2559
+ * The reference of the Grid in which the row is dropped.
2560
+ */
2561
+ target: GridHandle;
2562
+ }
2563
+
2564
+ /**
2565
+ * Represents the settings for the row reordering functionality of the Grid.
2566
+ */
2567
+ export declare type GridRowReorderSettings = {
2568
+ /**
2569
+ * Determines if the row reordering functionality is enabled.
2570
+ *
2571
+ * @default false
2572
+ */
2573
+ enabled?: boolean;
2574
+ /**
2575
+ * Determines what the text of the drag clue will be.
2576
+ * Can also be a function giving the dataItem as an argument and returning a new custom drag clue as a ReactNode.
2577
+ *
2578
+ * Default value will be the text of the first visible data column of the row.
2579
+ */
2580
+ dragClue?: string | ((dataItem: any) => React.ReactNode);
2581
+ };
2582
+
2046
2583
  /**
2047
2584
  * The type of the GridRow component.
2048
2585
  *
@@ -2053,6 +2590,28 @@ export declare interface GridRowProps extends KendoReactComponentBaseProps {
2053
2590
  */
2054
2591
  export declare type GridRowType = 'groupFooter' | 'groupHeader' | 'data';
2055
2592
 
2593
+ /**
2594
+ * Represents the properties of the KendoReact GridSearchBox component.
2595
+ */
2596
+ export declare const GridSearchBox: (props: GridSearchBoxProps) => JSX_2.Element;
2597
+
2598
+ export declare interface GridSearchBoxChangeEvent extends TextBoxChangeEvent {
2599
+ }
2600
+
2601
+ export declare interface GridSearchBoxProps extends TextBoxProps {
2602
+ onChange?: (event: GridSearchBoxChangeEvent) => void;
2603
+ }
2604
+
2605
+ /**
2606
+ * Represents the object of the `onSearchChange` Grid event.
2607
+ */
2608
+ export declare interface GridSearchChangeEvent extends GridEvent {
2609
+ /**
2610
+ * The new search based on the user action.
2611
+ */
2612
+ search: CompositeFilterDescriptor;
2613
+ }
2614
+
2056
2615
  /**
2057
2616
  * Represents the available selection modes.
2058
2617
  */
@@ -2075,12 +2634,19 @@ export declare interface GridSelectableSettings extends TableSelectableSettings
2075
2634
  /**
2076
2635
  * @hidden
2077
2636
  */
2078
- export declare const GridSelectionCell: (props: GridCellProps) => JSX_2.Element | null;
2637
+ export declare const GridSelectionCell: (props: GridCellProps) => JSX_2.Element;
2079
2638
 
2080
2639
  /**
2081
2640
  * Represents the object of the `onSelectionChange` Grid event.
2082
2641
  */
2083
2642
  export declare interface GridSelectionChangeEvent extends GridEvent, TableSelectionChangeEvent<GridHandle> {
2643
+ /**
2644
+ * TODO: uncomment
2645
+ * The new [SelectDescriptor]({% slug api_kendo-data-tools_selectdescriptor %}) based on the user action.
2646
+ *
2647
+ * @hidden
2648
+ */
2649
+ select: SelectDescriptor;
2084
2650
  /**
2085
2651
  * The dataItem from which the selection starts(Valid for scenarios without checkbox selection).
2086
2652
  */
@@ -2195,6 +2761,8 @@ export declare interface GridToolbarProps {
2195
2761
  ariaControls?: string;
2196
2762
  }
2197
2763
 
2764
+ export { GroupExpandDescriptor }
2765
+
2198
2766
  /**
2199
2767
  * @hidden
2200
2768
  */
@@ -2271,6 +2839,13 @@ export declare const rootFilterOrDefault: (rootFilter: CompositeFilterDescriptor
2271
2839
 
2272
2840
  declare type ScrollMode = 'none' | 'scrollable' | 'virtual';
2273
2841
 
2842
+ export { SelectDescriptor }
2843
+
2844
+ /**
2845
+ * Represents a server counterpart of every Grid event. It strips out all arguments from the event that are not serializable to the server.
2846
+ */
2847
+ export declare type ServerEvent<T> = Omit<T, 'nativeEvent' | 'syntheticEvent' | 'target' | 'targetEvent'>;
2848
+
2274
2849
  export { setSelectedState }
2275
2850
 
2276
2851
  /**
@@ -2288,8 +2863,9 @@ export declare interface StatusBarProps {
2288
2863
  /**
2289
2864
  * Represents the arguments of the getStatusData function.
2290
2865
  */
2291
- export declare interface StatusDataArgs extends Pick<GridSelectionChangeEvent, 'selectedField' | 'dataItems' | 'target'> {
2292
- }
2866
+ export declare type StatusDataArgs = Pick<GridSelectionChangeEvent, 'dataItems' | 'target' | 'selectedField'> | (Pick<GridSelectionChangeEvent, 'dataItems' | 'target' | 'select'> & {
2867
+ dataItemKey: Required<GridProps>['dataItemKey'];
2868
+ });
2293
2869
 
2294
2870
  /**
2295
2871
  * Represents the KendoReact Grid's StatusItem object.