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

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 (148) hide show
  1. package/Grid.js +1 -1
  2. package/Grid.mjs +80 -1042
  3. package/GridClientContextReader.js +8 -0
  4. package/GridClientContextReader.mjs +30 -0
  5. package/GridClientWrapper.js +8 -0
  6. package/GridClientWrapper.mjs +759 -0
  7. package/GridComponent.js +8 -0
  8. package/GridComponent.mjs +584 -0
  9. package/GridState.js +8 -0
  10. package/GridState.mjs +93 -0
  11. package/GridWatermarkOverlay.js +8 -0
  12. package/GridWatermarkOverlay.mjs +15 -0
  13. package/StatusBar.js +1 -1
  14. package/StatusBar.mjs +24 -24
  15. package/cells/GridCell.js +1 -1
  16. package/cells/GridCell.mjs +23 -33
  17. package/cells/GridDetailCell.js +1 -1
  18. package/cells/GridDetailCell.mjs +11 -18
  19. package/cells/GridDetailHierarchyCell.js +1 -1
  20. package/cells/GridDetailHierarchyCell.mjs +5 -5
  21. package/cells/GridEditCell.js +1 -1
  22. package/cells/GridEditCell.mjs +22 -130
  23. package/cells/GridGroupCell.js +1 -1
  24. package/cells/GridGroupCell.mjs +60 -95
  25. package/cells/GridHierarchyCell.js +1 -1
  26. package/cells/GridHierarchyCell.mjs +22 -61
  27. package/cells/GridRowReorderCell.js +8 -0
  28. package/cells/GridRowReorderCell.mjs +42 -0
  29. package/cells/GridSelectionCell.js +1 -1
  30. package/cells/GridSelectionCell.mjs +17 -35
  31. package/cells/client/DetailCellContainer.js +8 -0
  32. package/cells/client/DetailCellContainer.mjs +26 -0
  33. package/cells/client/GridCellContainer.js +8 -0
  34. package/cells/client/GridCellContainer.mjs +68 -0
  35. package/cells/client/GridEditCellContainer.js +8 -0
  36. package/cells/client/GridEditCellContainer.mjs +60 -0
  37. package/cells/client/GridEditCellEditor.js +8 -0
  38. package/cells/client/GridEditCellEditor.mjs +81 -0
  39. package/cells/client/GridGroupCellContainer.js +8 -0
  40. package/cells/client/GridGroupCellContainer.mjs +87 -0
  41. package/cells/client/GridGroupCellToggle.js +8 -0
  42. package/cells/client/GridGroupCellToggle.mjs +52 -0
  43. package/cells/client/GridHierarchyCellContainer.js +8 -0
  44. package/cells/client/GridHierarchyCellContainer.mjs +63 -0
  45. package/cells/client/GridHierarchyCellToggle.js +8 -0
  46. package/cells/client/GridHierarchyCellToggle.mjs +43 -0
  47. package/cells/client/GridRowReorderContainer.js +8 -0
  48. package/cells/client/GridRowReorderContainer.mjs +24 -0
  49. package/cells/client/GridSelectionCellContainer.js +8 -0
  50. package/cells/client/GridSelectionCellContainer.mjs +60 -0
  51. package/cells/client/GridSelectionCellInput.js +8 -0
  52. package/cells/client/GridSelectionCellInput.mjs +43 -0
  53. package/columnMenu/GridColumnMenuSort.js +1 -1
  54. package/columnMenu/GridColumnMenuSort.mjs +23 -34
  55. package/components/GridContainerElementContainer.js +8 -0
  56. package/components/GridContainerElementContainer.mjs +21 -0
  57. package/components/GridCustomCellClientContainer.js +8 -0
  58. package/components/GridCustomCellClientContainer.mjs +28 -0
  59. package/components/GridDragClue.js +8 -0
  60. package/components/GridDragClue.mjs +18 -0
  61. package/components/GridDraggableRowsContainer.js +8 -0
  62. package/components/GridDraggableRowsContainer.mjs +127 -0
  63. package/components/GridDropClue.js +8 -0
  64. package/components/GridDropClue.mjs +18 -0
  65. package/components/GridElementContainer.js +8 -0
  66. package/components/GridElementContainer.mjs +22 -0
  67. package/components/PagerContainer.js +8 -0
  68. package/components/PagerContainer.mjs +23 -0
  69. package/components/VirtualScrollHeightContainer.js +8 -0
  70. package/components/VirtualScrollHeightContainer.mjs +17 -0
  71. package/components/colGroup/GridColGroup.js +8 -0
  72. package/components/colGroup/GridColGroup.mjs +25 -0
  73. package/components/icons/reorder-row-svg.js +8 -0
  74. package/components/icons/reorder-row-svg.mjs +14 -0
  75. package/{GridNoRecords.js → components/noRecords/GridNoRecords.js} +1 -1
  76. package/{GridNoRecords.mjs → components/noRecords/GridNoRecords.mjs} +1 -1
  77. package/components/noRecords/GridNoRecordsContainer.js +8 -0
  78. package/components/noRecords/GridNoRecordsContainer.mjs +30 -0
  79. package/components/table/GridTable.js +8 -0
  80. package/components/table/GridTable.mjs +28 -0
  81. package/components/table/GridTableBody.js +8 -0
  82. package/components/table/GridTableBody.mjs +21 -0
  83. package/components/table/GridTableScrollable.js +8 -0
  84. package/components/table/GridTableScrollable.mjs +37 -0
  85. package/components/utils.js +8 -0
  86. package/components/utils.mjs +26 -0
  87. package/contextMenu/GridContextMenu.js +8 -0
  88. package/contextMenu/GridContextMenu.mjs +191 -0
  89. package/contextMenu/enums.js +8 -0
  90. package/contextMenu/enums.mjs +13 -0
  91. package/dist/cdn/js/kendo-react-grid.js +1 -1
  92. package/footer/Footer.js +1 -1
  93. package/footer/Footer.mjs +22 -21
  94. package/footer/FooterCell.js +8 -0
  95. package/footer/FooterCell.mjs +43 -0
  96. package/footer/FooterRow.js +1 -1
  97. package/footer/FooterRow.mjs +10 -39
  98. package/footer/client/FooterCellContainer.js +8 -0
  99. package/footer/client/FooterCellContainer.mjs +26 -0
  100. package/header/FilterRow.js +1 -1
  101. package/header/FilterRow.mjs +58 -54
  102. package/header/GridHeaderCell.js +1 -1
  103. package/header/GridHeaderCell.mjs +11 -11
  104. package/header/GridHeaderSelectionCell.js +1 -1
  105. package/header/GridHeaderSelectionCell.mjs +10 -9
  106. package/header/GroupPanel.js +1 -1
  107. package/header/GroupPanel.mjs +36 -32
  108. package/header/Header.js +1 -1
  109. package/header/Header.mjs +35 -33
  110. package/header/HeaderRow.js +1 -1
  111. package/header/HeaderRow.mjs +97 -125
  112. package/header/client/GridFilterCellContainer.js +8 -0
  113. package/header/client/GridFilterCellContainer.mjs +38 -0
  114. package/header/client/GridFilterCellElementContainer.js +8 -0
  115. package/header/client/GridFilterCellElementContainer.mjs +21 -0
  116. package/header/client/GridHeaderCellContainer.js +8 -0
  117. package/header/client/GridHeaderCellContainer.mjs +54 -0
  118. package/header/client/GridHeaderCellElementContainer.js +8 -0
  119. package/header/client/GridHeaderCellElementContainer.mjs +28 -0
  120. package/header/client/GridHeaderRowContainer.js +8 -0
  121. package/header/client/GridHeaderRowContainer.mjs +35 -0
  122. package/header/client/GridHeaderRowReorderCell.js +8 -0
  123. package/header/client/GridHeaderRowReorderCell.mjs +13 -0
  124. package/header/client/HeaderCellResizer.js +8 -0
  125. package/header/client/HeaderCellResizer.mjs +25 -0
  126. package/header/client/HeaderRowDraggable.js +8 -0
  127. package/header/client/HeaderRowDraggable.mjs +30 -0
  128. package/index.d.mts +543 -24
  129. package/index.d.ts +543 -24
  130. package/index.js +1 -1
  131. package/index.mjs +58 -52
  132. package/interfaces/GridSortSettings.js +1 -1
  133. package/interfaces/GridSortSettings.mjs +18 -2
  134. package/messages/index.js +1 -1
  135. package/messages/index.mjs +76 -82
  136. package/messages/messagesMap.js +8 -0
  137. package/messages/messagesMap.mjs +19 -0
  138. package/package-metadata.js +1 -1
  139. package/package-metadata.mjs +2 -2
  140. package/package.json +12 -11
  141. package/rows/GridRow.js +1 -1
  142. package/rows/GridRow.mjs +42 -20
  143. package/utils/_clientModule.js +8 -0
  144. package/utils/_clientModule.mjs +13 -0
  145. package/utils/_serverModule.js +8 -0
  146. package/utils/_serverModule.mjs +13 -0
  147. package/utils/index.js +1 -1
  148. package/utils/index.mjs +213 -101
package/Grid.mjs CHANGED
@@ -6,1059 +6,97 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- import * as r from "react";
10
- import o from "prop-types";
11
- import { useId as Rn, validatePackage as Cn, useUnstyled as vn, uGrid as yn, shouldShowValidationUI as wn, useDir as En, setScrollbarWidth as ct, canUseDOM as Q, getter as In, classNames as b, WatermarkOverlay as Sn, RowHeightService as it, getScrollbarWidth as kn, dispatchEvent as xn, getActiveElement as Hn } from "@progress/kendo-react-common";
12
- import { tableKeyboardNavigation as K, ClipboardService as Tn, tableKeyboardNavigationTools as L, tableColumnsVirtualization as Dn, Pager as Nn, TableKeyboardNavigationContext as dt, tableKeyboardNavigationScopeAttributes as ut, TableSelection as st, tableKeyboardNavigationBodyAttributes as ft, DropClue as gt, DragClue as mt, getSelectionOptions as ht, updateLeft as Fn, updateRight as Gn, mapColumns as An, KEYBOARD_NAV_DATA_ID as zn } from "@progress/kendo-react-data-tools";
13
- import { GridSelectionCell as Mn } from "./cells/GridSelectionCell.mjs";
14
- import { GridHierarchyCell as On } from "./cells/GridHierarchyCell.mjs";
15
- import { GridEditCell as Pn } from "./cells/GridEditCell.mjs";
16
- import { Header as Kn } from "./header/Header.mjs";
17
- import { HeaderRow as Ln } from "./header/HeaderRow.mjs";
18
- import { FilterRow as Vn } from "./header/FilterRow.mjs";
19
- import { GroupPanel as Bn } from "./header/GroupPanel.mjs";
20
- import { Footer as Wn } from "./footer/Footer.mjs";
21
- import { useLocalization as _n } from "@progress/kendo-react-intl";
22
- import { pagerMessagesMap as Un, gridAriaLabel as bt, messages as $n } from "./messages/index.mjs";
23
- import { VirtualScroll as jn } from "./VirtualScroll.mjs";
24
- import { VirtualScrollFixed as Rt } from "./VirtualScrollFixed.mjs";
25
- import { ColumnResize as qn } from "./drag/ColumnResize.mjs";
26
- import { CommonDragLogic as Jn } from "./drag/CommonDragLogic.mjs";
27
- import { getColumnWidth as De, isSorted as Ct, sanitizeColumns as Xn, firefox as vt, firefoxMaxHeight as yt, flatData as Yn, autoGenerateColumns as Qn, getNestedValue as wt, resolveCells as Zn, readColumns as pn } from "./utils/index.mjs";
28
- import { GridCell as er } from "./cells/GridCell.mjs";
29
- import { GridGroupCell as Et } from "./cells/GridGroupCell.mjs";
30
- import { GridRow as tr } from "./rows/GridRow.mjs";
31
- import { GridHeaderSelectionCell as nr } from "./header/GridHeaderSelectionCell.mjs";
32
- import { GridNoRecords as rr } from "./GridNoRecords.mjs";
33
- import { operators as It } from "./filterCommon.mjs";
34
- import { FooterRow as ar } from "./footer/FooterRow.mjs";
35
- import { normalize as lr } from "./paging/GridPagerSettings.mjs";
36
- import { packageMetadata as St } from "./package-metadata.mjs";
37
- import { GridDetailCell as or } from "./cells/GridDetailCell.mjs";
38
- import { GridDetailHierarchyCell as cr } from "./cells/GridDetailHierarchyCell.mjs";
39
- import { SAFARI_REGEX as ir } from "./constants/index.mjs";
40
- const kt = r.forwardRef((t, xt) => {
41
- var nt, rt, at, lt;
42
- const ue = Rn();
43
- Cn(St);
44
- const H = () => {
45
- var e;
46
- if (Q)
47
- return ((e = Z()) == null ? void 0 : e.ownerDocument) || document;
48
- }, T = () => (t.id || ue) + "-role-element-id", V = () => {
49
- const e = s.current.filter((n) => n.declarationIndex >= 0 && n.parentIndex === -1);
50
- return Xn(e);
51
- }, Z = () => N.current, se = r.useCallback(
52
- (e) => {
53
- var l;
54
- if (!c.current || !((l = c.current) != null && l.container) || t.scrollable === "none")
55
- return;
56
- z.current && z.current.disconnect();
57
- const { rowIndex: n } = e, a = Z();
58
- if (t.scrollable === "virtual")
59
- c.current.askedSkip = n, c.current.container.scroll(
60
- 0,
61
- Math.round(c.current.askedSkip / c.current.total * c.current.container.scrollHeight)
62
- );
63
- else if (a) {
64
- const i = n < 1 ? a.querySelector("tbody > tr:nth-child(1)") : a.querySelector(`tbody > tr:nth-child(${n + 1})`);
65
- i && _.current && (_.current.scrollTop = i.offsetTop);
66
- }
67
- },
68
- [t.scrollable]
69
- ), Ne = r.useCallback(
70
- (e) => {
71
- const n = { rowIndex: Ie.current };
72
- e.forEach((a) => {
73
- a.isIntersecting || se(n);
74
- });
75
- },
76
- [se]
77
- ), [, fe] = r.useReducer((e) => !e, !0), Fe = (e) => JSON.stringify(e.map((n) => ({ id: n.id, field: n.field, title: n.title, children: n.children }))), B = r.useMemo(() => r.Children.toArray(t.children), [t.children]), Ht = () => Fe(B) === Fe(s.current), Tt = () => {
78
- Ht() || fe();
79
- }, ge = (e, n, a) => {
80
- if (t.onContextMenu) {
81
- const l = {
82
- target: w.current,
83
- syntheticEvent: e,
84
- nativeEvent: e.nativeEvent,
85
- dataItem: n,
86
- field: a
87
- };
88
- t.onContextMenu.call(void 0, l);
89
- }
90
- }, Ge = () => {
91
- const { data: e, total: n } = t;
92
- return Array.isArray(e) ? e.length === n : e ? n === e.total : !1;
93
- }, Dt = () => {
94
- const { rowHeight: e, detailRowHeight: n, detail: a, expandField: l, groupable: i } = t, u = Ge(), d = e !== void 0 && e > 0, h = n !== void 0 && n > 0, E = i === !0 || typeof i == "object" && i.enabled !== !1;
95
- return !d || E && !u || !!(a && l) && (!h || !u) ? jn : Rt;
96
- }, Nt = (e, n) => {
97
- if (c.current) {
98
- if (c.current.fixedScroll = t.fixedScroll || !1, c.current.PageChange = p, c.current.realSkip = t.skip || 0, c.current.pageSize = (t.take !== void 0 ? t.take : t.pageSize) || 0, c.current.scrollableVirtual = t.scrollable === "virtual", c.current.total = e, c.current.propsSkip = (t.skip || 0) + (t.scrollable === "virtual" ? c.current.topCacheCount + (c.current.attendedSkip - (t.skip || 0)) : 0), t.rowHeight !== void 0 && t.rowHeight > 0 && !n) {
99
- const a = t.rowHeight * e;
100
- c.current.containerHeight = vt ? Math.min(yt, a) : a;
101
- } else
102
- c.current.containerHeight = 1533915;
103
- if (c.current.containerRef = _, c.current.tableBodyRef = U, c.current.table = y.current, ae.current = void 0, c.current instanceof Rt) {
104
- const { rowHeight: a = 0, detail: l, expandField: i } = t;
105
- let { detailRowHeight: u = 0 } = t;
106
- u = l && i ? u : a, Ge() ? (c.current.total = R.current.length, ae.current = R.current.slice(
107
- c.current.realSkip,
108
- c.current.realSkip + c.current.pageSize
109
- ), c.current.rowHeightService = new it(
110
- R.current.length,
111
- a,
112
- u,
113
- R.current
114
- )) : c.current.rowHeightService = new it(e, a, u);
115
- const d = c.current.rowHeightService.totalHeight();
116
- c.current.containerHeight = vt ? Math.min(yt, d) : d;
117
- }
118
- }
119
- }, Ae = () => (ye.current || (ye.current = kn() || void 0), ye.current), Ft = (e) => {
120
- var l;
121
- if (e.target !== e.currentTarget)
122
- return;
123
- clearTimeout(Ee.current), c.current && (c.current.table = y.current);
124
- const n = e.currentTarget.scrollLeft, a = e.currentTarget.scrollTop;
125
- t.columnVirtualization && (!((l = c.current) != null && l.scrollableVirtual) || a === we.current) && (Ee.current = window.setTimeout(() => {
126
- fe();
127
- }, 0)), O.current && O.current.setScrollLeft(n), W.current && W.current.setScrollLeft(n), c.current && a !== we.current && c.current.scrollHandler(e), xn(t.onScroll, e, w.current, void 0), we.current = a;
128
- }, ze = (e) => {
129
- if (K.onKeyDown(e, {
130
- navigatable: t.navigatable || !1,
131
- contextStateRef: S,
132
- navigationStateRef: D,
133
- onNavigationAction: Gt,
134
- columns: V()
135
- }), K.onGetSnapshotBeforeUpdate({
136
- document: H(),
137
- contextStateRef: S,
138
- navigationStateRef: D
139
- }), t.onKeyDown) {
140
- const { mode: n, cell: a } = ht(t.selectable), l = {
141
- dataItems: ne(),
142
- mode: n,
143
- cell: a,
144
- componentId: T(),
145
- selectedField: t.selectedField,
146
- ...v(e)
147
- };
148
- t.onKeyDown.call(void 0, l);
149
- }
150
- }, Me = (e) => {
151
- K.onFocus(e, {
152
- navigatable: !!t.navigatable,
153
- contextStateRef: S
154
- });
155
- }, Gt = (e) => {
156
- if (e.action === "moveToNextPage" && Lt(e.event), e.action === "moveToPrevPage" && Vt(e.event), e.focusElement && e.action === "reorderToRight") {
157
- const n = parseInt(e.focusElement.ariaColIndex, 10) - 1;
158
- n < s.current.length - 1 && me(n, n + 1, e.event);
159
- }
160
- if (e.focusElement && e.action === "reorderToLeft") {
161
- const n = parseInt(e.focusElement.ariaColIndex, 10) - 1;
162
- n > 0 && me(n, n - 1, e.event);
163
- }
164
- if (t.onNavigationAction) {
165
- const n = {
166
- focusElement: e.focusElement,
167
- ...v(e.event)
168
- };
169
- t.onNavigationAction.call(void 0, n);
170
- }
171
- }, At = (e, n) => {
172
- t.onRowClick && e.target.nodeName === "TD" && t.onRowClick.call(void 0, {
173
- dataItem: n.dataItem,
174
- ...v(e)
175
- });
176
- }, zt = (e, n) => {
177
- t.onRowDoubleClick && e.target.nodeName === "TD" && t.onRowDoubleClick.call(void 0, {
178
- dataItem: n.dataItem,
179
- ...v(e)
180
- });
181
- }, Mt = (e) => {
182
- if (e.field === t.expandField || t.group && e.field === void 0) {
183
- t.onExpandChange && t.onExpandChange.call(void 0, {
184
- ...v(e.syntheticEvent),
185
- dataItem: e.dataItem,
186
- dataIndex: e.dataIndex,
187
- value: e.value
188
- });
189
- return;
190
- }
191
- t.onItemChange && t.onItemChange.call(void 0, {
192
- ...v(e.syntheticEvent),
193
- dataItem: e.dataItem,
194
- dataIndex: e.dataIndex,
195
- field: e.field,
196
- value: e.value
197
- });
198
- }, Ot = (e) => {
199
- if (t.onSelectionChange) {
200
- const { event: n, dataItem: a, dataIndex: l, columnIndex: i } = e, { mode: u, cell: d } = ht(t.selectable), h = {
201
- ...v(n.syntheticEvent),
202
- dataItem: a,
203
- startColIndex: i,
204
- endColIndex: i,
205
- startRowIndex: l,
206
- endRowIndex: l,
207
- dataItems: ne(),
208
- altKey: !1,
209
- ctrlKey: !1,
210
- shiftKey: !1,
211
- metaKey: !1,
212
- mode: u,
213
- cell: d,
214
- isDrag: !1,
215
- componentId: T(),
216
- selectedField: t.selectedField || ""
217
- };
218
- t.onSelectionChange.call(void 0, h);
219
- }
220
- }, Pt = (e) => {
221
- t.onHeaderSelectionChange && t.onHeaderSelectionChange.call(void 0, {
222
- field: e.field,
223
- nativeEvent: e.syntheticEvent && e.syntheticEvent.nativeEvent,
224
- syntheticEvent: e.syntheticEvent,
225
- target: w.current,
226
- dataItems: ne(),
227
- selectedField: t.selectedField
228
- });
229
- }, Oe = (e) => {
230
- if (t.onSelectionChange) {
231
- const n = Le()[e.startRowIndex], a = Le()[e.endRowIndex], l = {
232
- syntheticEvent: void 0,
233
- target: w.current,
234
- selectedField: t.selectedField || "",
235
- componentId: T(),
236
- dataItems: ne(),
237
- dataItem: null,
238
- startDataItem: n,
239
- endDataItem: a,
240
- ...e
241
- };
242
- t.onSelectionChange.call(void 0, l);
243
- }
244
- }, p = (e, n, a) => {
245
- te(
246
- t.onPageChange,
247
- { page: e },
248
- { skip: e.skip, take: e.take },
249
- n,
250
- a
251
- );
252
- }, Kt = () => {
253
- let e = t.total || 0;
254
- return Array.isArray(t.data) ? e = e || t.data.length : t.data && (e = e || t.data.total), e;
255
- }, Lt = (e) => {
256
- const n = t.take || 0, a = (t.skip || 0) + n, l = Kt();
257
- a < l && p({ skip: a, take: n }, e);
258
- }, Vt = (e) => {
259
- const n = t.take || 0, a = (t.skip || 0) - n;
260
- a >= 0 && p({ skip: a, take: n }, e);
261
- }, Bt = (e) => {
262
- p({ skip: e.skip, take: e.take }, e.syntheticEvent, e.targetEvent);
263
- }, Wt = (e, n) => {
264
- te(
265
- t.onSortChange,
266
- { sort: e },
267
- { sort: e, ...t.scrollable === "virtual" ? { skip: 0 } : {} },
268
- n
269
- );
270
- }, Pe = (e, n) => {
271
- te(
272
- t.onFilterChange,
273
- { filter: e },
274
- { filter: e || void 0, skip: 0 },
275
- n
276
- );
277
- }, ee = (e, n) => {
278
- const a = n.nativeEvent ? n : { nativeEvent: n.nativeEvent || n.originalEvent };
279
- e.length === 0 && t.navigatable && (Re.current = !0), te(
280
- t.onGroupChange,
281
- { group: e },
282
- { group: e, skip: 0 },
283
- a
284
- );
285
- }, te = (e, n, a, l, i) => {
286
- const u = t.onDataStateChange;
287
- if (e) {
288
- const d = { ...v(l), ...n, targetEvent: i };
289
- e.call(void 0, d);
290
- } else
291
- u && u.call(void 0, {
292
- ...v(l),
293
- targetEvent: i || {},
294
- dataState: {
295
- ...en(),
296
- ...a
297
- }
298
- });
299
- }, me = (e, n, a) => {
300
- const l = s.current[e], i = l.depth, u = (f) => {
301
- do
302
- f++;
303
- while (f < s.current.length && s.current[f].depth > i);
304
- return f;
305
- }, d = s.current.splice(e, u(e) - e);
306
- s.current.splice(e < n ? u(n - d.length) : n, 0, ...d), s.current.filter((f) => f.declarationIndex >= 0).forEach((f, P) => f.orderIndex = P);
307
- const h = s.current[e].locked && s.current[n].locked;
308
- Fn(M.current, s.current, h || oe.current), Gn(M.current, s.current, h || oe.current), be.current && (oe.current = !1, be.current = !1);
309
- const E = V();
310
- if (fe(), t.onColumnReorder) {
311
- const f = {
312
- target: w.current,
313
- columns: E,
314
- columnId: l.id,
315
- nativeEvent: a
316
- };
317
- t.onColumnReorder.call(void 0, f);
318
- }
319
- }, _t = (e, n, a) => {
320
- if (t.group === void 0)
321
- return;
322
- const l = t.group.slice();
323
- l.splice(n, 0, ...l.splice(e, 1)), ee(l, a);
324
- }, Ke = (e, n, a) => {
325
- const l = s.current[e].field;
326
- if (!l)
327
- return;
328
- const i = (t.group || []).slice();
329
- i.splice(n, 0, { field: l }), ee(i, a);
330
- }, Ut = (e, n) => {
331
- const a = g.current.getCurrentGroupsLength;
332
- Ke(e, a, n);
333
- }, he = () => {
334
- let e = 0;
335
- if (!C.current.colGroupMain)
336
- return;
337
- const n = C.current.colGroupMain.children;
338
- for (let a = 0; a < n.length; a++) {
339
- const l = n[a].width;
340
- if (!l)
341
- return;
342
- e += parseFloat(l.toString());
343
- }
344
- e = Math.round(e), O.current && O.current.setWidth(e), W.current && W.current.setWidth(e), y.current && (y.current.style.width = e + "px");
345
- }, $t = (e, n) => {
346
- if (t.onClipboard) {
347
- if (!jt() || !e)
348
- return;
349
- t.onClipboard.call(void 0, {
350
- type: e,
351
- nativeEvent: n,
352
- columns: s.current,
353
- dataItemKey: t.dataItemKey || "",
354
- ...typeof t.clipboard != "boolean" ? t.clipboard : {}
355
- });
356
- }
357
- }, jt = () => {
358
- var i, u, d;
359
- if (!Q)
360
- return !1;
361
- const e = Hn(H()), n = e ? e.matches(".k-table-td") ? e : (i = H()) == null ? void 0 : i.body : (u = H()) == null ? void 0 : u.body, a = n.closest(".k-grid-container"), l = n && ((d = N.current) == null ? void 0 : d.contains(n));
362
- return !!(n && l && a);
363
- }, qt = (e, n, a, l, i, u) => {
364
- he(), oe.current = !0, be.current = !0, t.onColumnResize && t.onColumnResize.call(void 0, {
365
- columns: V(),
366
- nativeEvent: l,
367
- targetColumnId: u,
368
- index: e,
369
- newWidth: n,
370
- oldWidth: a,
371
- end: i,
372
- target: w.current
373
- });
374
- }, Jt = (e, n, a, l, i) => {
375
- const u = [], d = Yn(
376
- u,
377
- e,
378
- n,
379
- { index: a },
380
- l !== void 0,
381
- i
382
- );
383
- return { flattedData: u, resolvedGroupsCount: d };
384
- }, Xt = (e, n) => {
385
- const a = e.filter(
386
- (l) => l && l.type && l.type.displayName === "KendoReactGridColumn"
387
- );
388
- return pn(a, V(), { prevId: 0, idPrefix: n });
389
- }, Yt = (e) => e.filter((n) => Q && n && n.media ? window.matchMedia(n.media).matches : n), Qt = (e, n) => {
390
- const a = L.getIdPrefix(D), l = Xt(e, a), i = Yt(l);
391
- s.current = i, s.current.length === 0 && (s.current = Qn(t.data, t.group, t.expandField, {
392
- prevId: 0,
393
- idPrefix: a
394
- })), Zt(s.current, n), M.current = An(s.current, !0), C.current.columns = s.current, g.current.columns = s.current;
395
- }, Zt = (e, n) => {
396
- t.selectedField && e.filter((i) => i.field === t.selectedField).forEach((i) => {
397
- i.width = i.width || "50px", i.cell = i.cell || Mn, i.headerCell = i.headerCell || nr;
398
- });
399
- const a = {
400
- id: "",
401
- resizable: !0,
402
- width: "32px",
403
- title: " ",
404
- declarationIndex: -1,
405
- orderIndex: -1,
406
- children: [],
407
- parentIndex: -1,
408
- depth: 0,
409
- colSpan: 0,
410
- rowSpan: 0,
411
- left: 0,
412
- right: 0,
413
- index: 0,
414
- rightBorder: !1,
415
- ariaColumnIndex: 0,
416
- isAccessible: !0
417
- };
418
- let l = 0;
419
- t.expandField && t.onExpandChange && t.detail && (e.unshift({
420
- ...a,
421
- cell: On,
422
- field: t.expandField,
423
- headerClassName: b(m.hierarchyCell({}))
424
- }), l++);
425
- for (let i = 0; i < n; i++)
426
- e.unshift({
427
- ...a,
428
- isAccessible: !1,
429
- cell: Et,
430
- field: "value",
431
- locked: t.lockGroups
432
- }), l++;
433
- e.slice(l).forEach((i) => i.parentIndex >= 0 && (i.parentIndex += l));
434
- }, pt = (e) => {
435
- const n = s.current.find((l) => l.field === e), a = n && (n.title || n.field);
436
- return a === void 0 ? e : a;
437
- }, en = () => ({
438
- filter: t.filter,
439
- sort: t.sort,
440
- skip: t.skip,
441
- take: t.take !== void 0 ? t.take : t.pageSize,
442
- group: t.group
443
- }), v = (e) => ({
444
- nativeEvent: e && e.nativeEvent,
445
- syntheticEvent: e,
446
- target: w.current
447
- }), ne = () => R.current.filter((e) => e.rowType === "data").map((e) => e.dataItem), Le = () => (ae.current || R.current).filter((e) => e.rowType === "data").map((e) => e.dataItem), tn = () => {
448
- var e, n, a;
449
- if (U.current && ((e = U.current) == null ? void 0 : e.getElementsByClassName("k-grid-edit-row").length) > 0) {
450
- ve.current = !1, (n = document.activeElement) != null && n.closest(".k-grid-edit-row") ? Ce.current = document.activeElement : Ce.current = void 0;
451
- const l = Array.from((a = U.current) == null ? void 0 : a.getElementsByClassName("k-grid-edit-row"));
452
- l.length > Se.current.length ? le.current = l.filter(
453
- (i) => !Se.current.includes(i)
454
- )[0] : l.length === 1 && (le.current = l[0], ve.current = !0), Se.current = l;
455
- }
456
- }, g = r.useRef(), S = r.useRef(), D = r.useRef(), re = r.useRef(), c = r.useRef(), C = r.useRef(), z = r.useRef(null), R = r.useRef([]), ae = r.useRef(), s = r.useRef([]), M = r.useRef([[]]), be = r.useRef(!1), Re = r.useRef(!1), le = r.useRef(), Ce = r.useRef(), ve = r.useRef(!1), oe = r.useRef(!0), ye = r.useRef(), we = r.useRef(0), Ee = r.useRef(), Ie = r.useRef(), Se = r.useRef([]), W = r.useRef(null), O = r.useRef(null), Ve = r.useRef(null), N = r.useRef(null), y = r.useRef(null), _ = r.useRef(null), U = r.useRef(null), ce = r.useRef(null), nn = _n(), ke = vn(), m = ke && ke.uGrid ? ke.uGrid : yn, rn = wn(St), F = En(N);
457
- r.useMemo(() => {
458
- K.onConstructor({
459
- navigatable: !!t.navigatable,
460
- contextStateRef: S,
461
- navigationStateRef: D,
462
- idPrefix: T()
463
- });
464
- }, []), r.useMemo(() => {
465
- var a;
466
- (a = c.current) == null || a.reset();
467
- const e = t.groupable === !0 || typeof t.groupable == "object" && t.groupable.enabled !== !1, n = Dt();
468
- c.current = new n(e || t.rowHeight === void 0 || t.rowHeight === 0);
469
- }, [t.scrollable, t.total, t.filter, t.group, t.groupable, t.sort, t.rowHeight]), r.useEffect(() => (t.clipboard && (re.current = new Tn($t), re.current.addEventListeners(H())), () => {
470
- re.current && re.current.removeEventListeners(H());
471
- }), [t.onClipboard, t.clipboard]), r.useMemo(() => {
472
- C.current = new qn(qt);
473
- }, [t.onColumnResize]), r.useMemo(() => {
474
- g.current = new Jn(me, _t, Ke);
475
- }, [t.onColumnReorder, t.onGroupChange, t.group, t.groupable]), r.useEffect(() => (t.columnVirtualization && !window.navigator.userAgent.match(ir) && (ce.current && (ce.current.style.display = "block"), y.current && (y.current.style.display = "block")), he(), ct(Ae()), K.onComponentDidMount({
476
- scope: N.current || void 0,
477
- contextStateRef: S,
478
- navigationStateRef: D
479
- }), () => {
480
- clearTimeout(Ee.current);
481
- }), []), r.useEffect(() => {
482
- var e;
483
- he(), ct(Ae()), (e = c.current) != null && e.tableTransform && c.current.table && (c.current.table.style.transform = c.current.tableTransform, c.current.tableTransform = ""), tn(), K.onComponentDidUpdate({
484
- scope: N.current || void 0,
485
- contextStateRef: S,
486
- navigationStateRef: D,
487
- focusFirst: Re.current,
488
- newEditableRow: le.current,
489
- singleEditRow: ve.current,
490
- lastActiveElement: Ce.current,
491
- navigatable: t.navigatable
492
- }), Re.current = !1, le.current = void 0;
493
- }), r.useEffect(() => {
494
- if (Q) {
495
- const e = {
496
- rootMargin: "0px",
497
- threshold: 0.9
498
- };
499
- z.current = window.IntersectionObserver && new window.IntersectionObserver(Ne, e) || null;
500
- }
501
- }, [Ne]), r.useEffect(() => {
502
- var n;
503
- let e;
504
- return Q && window.ResizeObserver && (e = new window.ResizeObserver(Tt), e.observe((n = H()) == null ? void 0 : n.body)), () => {
505
- e == null || e.disconnect();
506
- };
507
- }, []);
508
- const w = r.useRef(null);
509
- r.useImperativeHandle(
510
- w,
511
- () => ({
512
- get element() {
513
- return Z();
514
- },
515
- props: t,
516
- get columns() {
517
- return V();
518
- },
519
- scrollIntoView: (e) => {
520
- var l;
521
- if (!((l = c.current) != null && l.container) || t.scrollable === "none")
522
- return;
523
- const { rowIndex: n } = e;
524
- Ie.current = n;
525
- const a = Z();
526
- if (z.current && a) {
527
- z.current.disconnect();
528
- const i = a.querySelector(`[absolute-row-index="${Ie.current}"]`);
529
- i ? z.current.observe(i) : se(e);
530
- }
531
- },
532
- fitColumns: (e) => {
533
- C.current.dblClickHandler(null, e);
534
- }
535
- })
536
- ), r.useImperativeHandle(xt, () => w.current);
537
- let G = t.total || 0;
538
- const $ = L.getIdPrefix(D), { size: k = "medium" } = t;
539
- let xe = [];
540
- Array.isArray(t.data) ? (xe = t.data, G = G || t.data.length) : t.data && (xe = t.data.data, G = G || t.data.total);
541
- const an = typeof t.groupable == "object" && t.groupable.footer || "none", j = t.scrollable === "virtual", { resolvedGroupsCount: ln, flattedData: on } = Jt(
542
- xe,
543
- an,
544
- t.skip || 0,
545
- t.group,
546
- t.expandField
547
- );
548
- R.current = on;
549
- const q = t.groupable === !0 || typeof t.groupable == "object" && t.groupable.enabled !== !1;
550
- C.current.resizable = t.resizable || !1, g.current.reorderable = t.reorderable || !1, g.current.groupable = q;
551
- const cn = t.selectable && t.selectable.drag ? "none" : void 0;
552
- Nt(G, q), Qt(B, ln);
553
- const Be = B.map((e) => e && e.type && e.type.displayName === "KendoReactGridToolbar" ? r.cloneElement(e, { ...e.props, ariaControls: T() }) : null), We = B.filter(
554
- (e) => e && e.type && e.type.displayName === "KendoReactGridNoRecords"
555
- ), _e = B.filter(
556
- (e) => e && e.type && e.type.displayName === "KendoReactGridStatusBar"
557
- ), x = s.current.filter((e) => e.children.length === 0), Ue = q && /* @__PURE__ */ r.createElement(
558
- Bn,
559
- {
560
- group: t.group || [],
561
- groupChange: ee,
562
- pressHandler: g.current.pressHandler,
563
- dragHandler: g.current.dragHandler,
564
- releaseHandler: g.current.releaseHandler,
565
- refCallback: g.current.refGroupPanelDiv,
566
- resolveTitle: pt,
567
- ariaControls: T(),
568
- onContextMenu: ge
569
- }
570
- ), $e = /* @__PURE__ */ r.createElement(
571
- Kn,
572
- {
573
- size: k,
574
- columnResize: C.current,
575
- staticHeaders: t.scrollable !== "none",
576
- scrollableDataElement: () => {
577
- var e;
578
- return ((e = c.current) == null ? void 0 : e.container) || null;
579
- },
580
- draggable: t.reorderable || q,
581
- ref: O,
582
- elemRef: Ve,
583
- headerRow: /* @__PURE__ */ r.createElement(
584
- Ln,
585
- {
586
- cells: t.cells,
587
- sort: t.sort,
588
- sortable: t.sortable,
589
- sortChange: Wt,
590
- group: t.group || [],
591
- groupable: q,
592
- groupChange: ee,
593
- filter: t.filter,
594
- filterable: t.filterable,
595
- filterOperators: t.filterOperators || It,
596
- filterChange: Pe,
597
- columnMenu: t.columnMenu,
598
- columnMenuIcon: t.columnMenuIcon,
599
- selectionChange: Pt,
600
- columns: s.current,
601
- columnResize: C.current,
602
- pressHandler: g.current.pressHandler,
603
- dragHandler: g.current.dragHandler,
604
- releaseHandler: g.current.releaseHandler,
605
- columnsMap: M.current,
606
- cellRender: t.headerCellRender,
607
- isRtl: F === "rtl",
608
- dragClue: g.current.dragClueRef,
609
- headerRef: Ve,
610
- containerRef: _,
611
- navigatable: !!t.navigatable,
612
- columnGroupChange: Ut
613
- }
614
- ),
615
- filterRow: t.filterable && /* @__PURE__ */ r.createElement(
616
- Vn,
617
- {
618
- cells: t.cells,
619
- size: k,
620
- columns: s.current,
621
- filter: t.filter,
622
- filterOperators: t.filterOperators || It,
623
- filterChange: Pe,
624
- sort: t.sort,
625
- cellRender: t.filterCellRender,
626
- isRtl: F === "rtl",
627
- navigatable: !!t.navigatable,
628
- ariaRowIndex: M.current.length + 1
629
- }
630
- ) || void 0,
631
- cols: x.map((e, n) => /* @__PURE__ */ r.createElement("col", { key: n.toString(), width: De(e) }))
632
- }
633
- ), dn = c.current && c.current.container && c.current.container.scrollLeft || 0, un = parseFloat(((t.style || {}).width || "").toString()), { colSpans: sn, hiddenColumns: fn } = Dn({
634
- enabled: t.columnVirtualization,
635
- columns: x,
636
- tableViewPortWidth: un,
637
- scrollLeft: dn
638
- }), gn = (e, n, a, l) => {
639
- let i = !1;
640
- const u = t.selectedField ? wt(t.selectedField, e.dataItem) : void 0;
641
- return {
642
- row: x.map((d, h) => {
643
- if (fn[h])
644
- return null;
645
- const E = d.id ? d.id : h, f = b(m.contentSticky({ locked: d.locked }), d.className), P = d.left !== void 0 ? F !== "rtl" ? { left: d.left, right: d.right } : { left: d.right, right: d.left } : {};
646
- let X = !1;
647
- if (d.editable && t.editField) {
648
- const I = wt(t.editField, e.dataItem);
649
- I && (I === !0 || I === d.field) && (i = !0, X = !0);
650
- }
651
- const A = d.cell || X && Pn || er, Te = t.expandField && t.detail && d.field === t.expandField;
652
- return /* @__PURE__ */ r.createElement(
653
- A,
654
- {
655
- onContextMenu: ge,
656
- key: E,
657
- locked: t.lockGroups,
658
- id: L.generateNavigatableId(
659
- `${n}-${String(h)}`,
660
- $,
661
- Te || e.rowType === "groupHeader" || e.rowType === "groupFooter" || d.field === "value" ? "nodata" : "cell"
662
- ),
663
- colSpan: sn[h],
664
- dataItem: e.dataItem,
665
- field: d.field,
666
- editor: d.editor,
667
- format: d.format,
668
- className: f,
669
- render: t.cellRender,
670
- cells: Zn(t.cells, d.cells),
671
- onChange: Mt,
672
- selectionChange: t.onSelectionChange ? (I) => {
673
- Ot({
674
- event: I,
675
- dataItem: e.dataItem,
676
- dataIndex: a,
677
- columnIndex: h
678
- });
679
- } : void 0,
680
- columnIndex: h,
681
- columnsCount: x.length,
682
- rowType: e.rowType,
683
- level: e.level,
684
- expanded: e.expanded,
685
- dataIndex: e.dataIndex,
686
- style: P,
687
- ariaColumnIndex: d.ariaColumnIndex,
688
- isSelected: Array.isArray(u) && u.indexOf(h) > -1,
689
- isSorted: !!Ct(d.field, t.sort),
690
- isAlt: l
691
- }
692
- );
693
- }),
694
- isInEdit: i,
695
- isSelected: typeof u == "boolean" && u
696
- };
697
- };
698
- let je = 0;
699
- if (j && c.current)
700
- for (let e = 0; e < c.current.topCacheCount + c.current.attendedSkip - (t.skip || 0); ) {
701
- const n = R.current.shift();
702
- if (n)
703
- R.current.push(n), je++, n.rowType === "groupHeader" && e--;
704
- else
705
- break;
706
- e++;
707
- }
708
- const qe = (e) => e >= R.current.length - je;
709
- let Je = ((nt = c.current) == null ? void 0 : nt.realSkip) || 0;
710
- const ie = [];
711
- let He = !1;
712
- const Xe = M.current.length + (t.filterable ? 1 : 0) + 1;
713
- let J = 0;
714
- if (R.current.length) {
715
- let e = -1, n = 0;
716
- (ae.current || R.current).forEach((a, l) => {
717
- var P, X;
718
- a.rowType === "data" && (Je++, e++);
719
- const i = Je % 2 === 0, u = t.dataItemKey && In(t.dataItemKey)(a.dataItem), d = l + (((P = c.current) == null ? void 0 : P.realSkip) || 0), h = u || "ai" + d, E = h + "_1", f = gn(a, h, e, i);
720
- if (J = d + Xe + n, ie.push(
721
- /* @__PURE__ */ r.createElement(
722
- tr,
723
- {
724
- key: h,
725
- dataItem: a.dataItem,
726
- isAltRow: i,
727
- isInEdit: f.isInEdit,
728
- rowType: a.rowType,
729
- isHidden: qe(l),
730
- onClick: (A) => At(A, a),
731
- onDoubleClick: (A) => zt(A, a),
732
- selectedField: t.selectedField,
733
- rowHeight: t.rowHeight,
734
- render: t.rowRender,
735
- ariaRowIndex: J,
736
- absoluteRowIndex: d,
737
- dataIndex: (X = c.current) != null && X.scrollableVirtual && !t.groupable ? d : e,
738
- isSelected: f.isSelected
739
- },
740
- f.row
741
- )
742
- ), t.detail && a.rowType === "data" && a.expanded) {
743
- const A = x.length - (t.expandField ? 1 : 0) - (t.group ? t.group.length : 0) || 1;
744
- n++, J = d + Xe + n, ie.push(
745
- /* @__PURE__ */ r.createElement(
746
- "tr",
747
- {
748
- key: E,
749
- className: b(m.detailTr({ isAlt: i })),
750
- style: {
751
- visibility: qe(l) ? "hidden" : "",
752
- height: t.detailRowHeight
753
- },
754
- role: "row",
755
- "aria-rowindex": J
756
- },
757
- t.group && t.group.map((Te, I) => {
758
- var ot;
759
- const Y = (ot = f == null ? void 0 : f.row[I]) == null ? void 0 : ot.props.style, bn = Y ? F !== "rtl" ? { left: Y.left, right: Y.right } : { left: Y.right, right: Y.left } : {};
760
- return /* @__PURE__ */ r.createElement(
761
- Et,
762
- {
763
- id: "",
764
- dataIndex: a.dataIndex,
765
- field: Te.field,
766
- dataItem: a.dataItem,
767
- key: I,
768
- style: bn,
769
- ariaColumnIndex: 1 + I,
770
- isSelected: !1,
771
- locked: t.lockGroups,
772
- isRtl: F === "rtl",
773
- cells: t.cells
774
- }
775
- );
776
- }),
777
- t.expandField && /* @__PURE__ */ r.createElement(
778
- cr,
779
- {
780
- id: L.generateNavigatableId(`${E}-dhcell`, $)
781
- }
782
- ),
783
- /* @__PURE__ */ r.createElement(
784
- or,
785
- {
786
- onContextMenu: ge,
787
- dataItem: a.dataItem,
788
- dataIndex: a.dataIndex,
789
- colSpan: A,
790
- ariaColIndex: 2 + (t.group ? t.group.length : 0),
791
- detail: t.detail,
792
- id: L.generateNavigatableId(`${E}-dcell`, $)
793
- }
794
- )
795
- )
796
- );
797
- }
798
- });
799
- } else
800
- He = !0;
801
- const mn = () => {
802
- const e = O.current;
803
- return e && e.table() && e.table().clientWidth;
804
- }, Ye = () => /* @__PURE__ */ r.createElement("div", { key: "no-records", className: b(m.noRecords({})), style: { width: mn() } }, /* @__PURE__ */ r.createElement(
805
- "div",
806
- {
807
- className: b(m.noRecordsTemplate({})),
808
- [zn]: L.generateNavigatableId("no-records", $)
809
- },
810
- We.length ? We : /* @__PURE__ */ r.createElement(rr, null)
811
- )), Qe = {
812
- size: k,
813
- onPageChange: Bt,
814
- total: G,
815
- dir: F,
816
- skip: ((rt = c.current) == null ? void 0 : rt.propsSkip) || 0,
817
- take: (t.take !== void 0 ? t.take : t.pageSize) || 10,
818
- messagesMap: Un,
819
- ...lr(t.pageable || {})
820
- }, Ze = t.pager ? /* @__PURE__ */ r.createElement(t.pager, { ...Qe }) : /* @__PURE__ */ r.createElement(Nn, { className: b(m.pager({})), ...Qe }), hn = (e, n) => /* @__PURE__ */ r.createElement("col", { key: n.toString(), width: De(e) }), pe = (at = t.cells) != null && at.footerCell || s.current.some((e) => {
821
- var n;
822
- return !!(e.footerCell || (n = e.cells) != null && n.footerCell);
823
- }) ? /* @__PURE__ */ r.createElement(
824
- Wn,
825
- {
826
- size: k,
827
- columnResize: C.current,
828
- staticHeaders: t.scrollable !== "none",
829
- ref: W,
830
- row: /* @__PURE__ */ r.createElement(
831
- ar,
832
- {
833
- cells: t.cells,
834
- idPrefix: $,
835
- columns: s.current,
836
- isRtl: F === "rtl",
837
- ariaRowIndex: J + 1
838
- }
839
- ),
840
- cols: x.map(hn)
841
- }
842
- ) : null, et = /* @__PURE__ */ r.createElement(
843
- "colgroup",
844
- {
845
- ref: (e) => {
846
- C.current.colGroupMain = e;
847
- }
848
- },
849
- x.map((e, n) => /* @__PURE__ */ r.createElement(
850
- "col",
851
- {
852
- key: n.toString(),
853
- className: Ct(e.field, t.sort) ? b(m.sorted({})) : void 0,
854
- width: De(e)
855
- }
856
- ))
857
- ), tt = g.current.reorderable || g.current.groupable;
858
- if (t.scrollable === "none")
859
- return /* @__PURE__ */ r.createElement(dt.Provider, { value: S.current }, /* @__PURE__ */ r.createElement(
860
- "div",
861
- {
862
- id: t.id || ue,
863
- style: t.style,
864
- className: b(m.wrapper({ size: k }), t.className),
865
- ref: N,
866
- "aria-label": t.ariaLabel,
867
- onKeyDown: ze,
868
- onFocus: Me,
869
- ...ut
870
- },
871
- Be,
872
- Ue,
873
- /* @__PURE__ */ r.createElement(
874
- st,
875
- {
876
- selectable: t.selectable,
877
- onRelease: Oe,
878
- childRef: (e) => {
879
- y.current = e, ce.current = e;
880
- }
881
- },
882
- /* @__PURE__ */ r.createElement("table", { ref: ce, className: b(m.table({ size: k })) }, et, $e, /* @__PURE__ */ r.createElement(
883
- "tbody",
884
- {
885
- role: "rowgroup",
886
- className: b(m.tbody({})),
887
- ...ft
888
- },
889
- ie
890
- ), pe)
891
- ),
892
- He && Ye(),
893
- tt && /* @__PURE__ */ r.createElement(r.Fragment, null, /* @__PURE__ */ r.createElement(gt, { ref: g.current.refDropElementClue }), /* @__PURE__ */ r.createElement(mt, { ref: g.current.refDragElementClue }))
894
- ), _e, t.pageable && Ze);
895
- let de = t.style || {};
896
- return j && (de.height || (de = Object.assign({}, de, { height: "450px" }))), /* @__PURE__ */ r.createElement(dt.Provider, { value: S.current }, /* @__PURE__ */ r.createElement(
897
- "div",
898
- {
899
- id: t.id || ue,
900
- style: de,
901
- className: b(
902
- m.wrapper({
903
- size: k,
904
- virtual: j
905
- }),
906
- t.className
907
- ),
908
- ref: N,
909
- "aria-label": t.ariaLabel,
910
- onKeyDown: ze,
911
- onFocus: Me,
912
- ...ut
913
- },
914
- Be,
915
- Ue,
916
- /* @__PURE__ */ r.createElement(
917
- "div",
918
- {
919
- className: b(m.ariaRoot({})),
920
- role: "grid",
921
- "aria-colcount": x.length,
922
- "aria-rowcount": G,
923
- id: T(),
924
- "aria-label": nn.toLanguageString(bt, $n[bt])
925
- },
926
- $e,
927
- /* @__PURE__ */ r.createElement("div", { className: b(m.container({})), role: "presentation" }, /* @__PURE__ */ r.createElement(
928
- "div",
929
- {
930
- ref: _,
931
- className: b(m.content({})),
932
- onScroll: Ft,
933
- role: "presentation"
934
- },
935
- /* @__PURE__ */ r.createElement("div", { className: b(m.tableWrap({})), role: "presentation" }, /* @__PURE__ */ r.createElement(
936
- st,
937
- {
938
- selectable: t.selectable,
939
- onRelease: Oe,
940
- childRef: (e) => {
941
- y.current = e;
942
- }
943
- },
944
- /* @__PURE__ */ r.createElement(
945
- "table",
946
- {
947
- ref: y,
948
- className: b(
949
- m.table({
950
- size: k
951
- })
952
- ),
953
- role: "presentation",
954
- style: { userSelect: cn }
955
- },
956
- et,
957
- /* @__PURE__ */ r.createElement(
958
- "tbody",
959
- {
960
- className: b(m.tbody({})),
961
- ref: U,
962
- role: "rowgroup",
963
- ...ft
964
- },
965
- ie
966
- )
967
- )
968
- ), He && Ye()),
969
- j && /* @__PURE__ */ r.createElement("div", { className: b(m.heightContainer({})), role: "presentation" }, /* @__PURE__ */ r.createElement(
970
- "div",
971
- {
972
- style: j ? { height: ((lt = c.current) == null ? void 0 : lt.containerHeight) + "px" } : {}
973
- }
974
- ))
975
- )),
976
- pe,
977
- tt && /* @__PURE__ */ r.createElement(r.Fragment, null, /* @__PURE__ */ r.createElement(gt, { ref: g.current.refDropElementClue }), /* @__PURE__ */ r.createElement(mt, { ref: g.current.refDragElementClue })),
978
- rn && /* @__PURE__ */ r.createElement(Sn, null)
979
- ),
980
- _e,
981
- t.pageable && Ze
982
- ));
983
- }), dr = {
984
- data: o.oneOfType([
985
- o.array,
986
- o.shape({
987
- data: o.array,
988
- total: o.number
9
+ import * as o from "react";
10
+ import e from "prop-types";
11
+ import { isClient as m } from "./utils/index.mjs";
12
+ import { GridClientContextReader as u } from "./GridClientContextReader.mjs";
13
+ import { GridComponent as t } from "./GridComponent.mjs";
14
+ import { GridClientStateProvider as p } from "./GridState.mjs";
15
+ import { useCustomComponent as f } from "@progress/kendo-react-common";
16
+ const a = o.forwardRef((n, r) => {
17
+ const { isPaid: l } = {
18
+ isPaid: !0
19
+ }, [i] = f(l ? p : o.Fragment);
20
+ return m() ? /* @__PURE__ */ o.createElement(i, { ...n }, /* @__PURE__ */ o.createElement(u, { id: n.id }, /* @__PURE__ */ o.createElement(t, { ref: r, ...n }))) : /* @__PURE__ */ o.createElement(t, { ref: r, ...n });
21
+ }), s = {
22
+ data: e.oneOfType([
23
+ e.array,
24
+ e.shape({
25
+ data: e.array,
26
+ total: e.number
989
27
  })
990
28
  ]),
991
- sortable: o.oneOfType([
992
- o.bool,
993
- o.shape({
994
- mode: o.oneOf(["single", "multiple"]),
995
- allowUnsort: o.bool
29
+ sortable: e.oneOfType([
30
+ e.bool,
31
+ e.shape({
32
+ mode: e.oneOf(["single", "multiple"]),
33
+ allowUnsort: e.bool
996
34
  })
997
35
  ]),
998
- onSortChange: o.func,
999
- sort: o.array,
1000
- filterable: o.bool,
1001
- filter: o.any,
1002
- onFilterChange: o.func,
1003
- pageable: o.oneOfType([
1004
- o.bool,
1005
- o.shape({
1006
- buttonCount: o.number,
1007
- responsive: o.bool,
1008
- info: o.bool,
1009
- type: o.oneOf(["numeric", "input"]),
1010
- pageSizes: o.oneOfType([
1011
- o.bool,
1012
- o.arrayOf(o.oneOfType([o.string, o.number]))
36
+ onSortChange: e.func,
37
+ sort: e.array,
38
+ filterable: e.bool,
39
+ filter: e.any,
40
+ onFilterChange: e.func,
41
+ pageable: e.oneOfType([
42
+ e.bool,
43
+ e.shape({
44
+ buttonCount: e.number,
45
+ responsive: e.bool,
46
+ info: e.bool,
47
+ type: e.oneOf(["numeric", "input"]),
48
+ pageSizes: e.oneOfType([
49
+ e.bool,
50
+ e.arrayOf(e.oneOfType([e.string, e.number]))
1013
51
  ]),
1014
- previousNext: o.bool
52
+ previousNext: e.bool
1015
53
  })
1016
54
  ]),
1017
- pageSize: o.number,
1018
- onPageChange: o.func,
1019
- total: o.number,
1020
- skip: o.number,
1021
- take: o.number,
1022
- fixedScroll: o.bool,
1023
- onExpandChange: o.func,
1024
- expandField: o.string,
1025
- selectedField: o.string,
1026
- onSelectionChange: o.func,
1027
- onHeaderSelectionChange: o.func,
1028
- resizable: o.bool,
1029
- reorderable: o.bool,
1030
- group: o.any,
1031
- groupable: o.oneOfType([
1032
- o.bool,
1033
- o.shape({
1034
- enabled: o.bool,
1035
- footer: o.oneOf(["always", "visible", "none"])
55
+ pageSize: e.number,
56
+ onPageChange: e.func,
57
+ total: e.number,
58
+ skip: e.number,
59
+ take: e.number,
60
+ fixedScroll: e.bool,
61
+ onExpandChange: e.func,
62
+ expandField: e.string,
63
+ selectedField: e.string,
64
+ onSelectionChange: e.func,
65
+ onHeaderSelectionChange: e.func,
66
+ resizable: e.bool,
67
+ reorderable: e.bool,
68
+ group: e.any,
69
+ groupable: e.oneOfType([
70
+ e.bool,
71
+ e.shape({
72
+ enabled: e.bool,
73
+ footer: e.oneOf(["always", "visible", "none"])
1036
74
  })
1037
75
  ]),
1038
- onGroupChange: o.func,
1039
- onRowClick: o.func,
1040
- onRowDoubleClick: o.func,
1041
- onItemChange: o.func,
1042
- editField: o.string,
1043
- scrollable: o.oneOf(["none", "scrollable", "virtual"]),
1044
- rowHeight: o.number,
1045
- detailRowHeight: o.number,
1046
- detail: o.any,
1047
- style: o.object,
1048
- onDataStateChange: o.func,
1049
- onColumnResize: o.func,
1050
- onColumnReorder: o.func,
1051
- dataItemKey: o.string,
1052
- navigatable: o.oneOfType([
1053
- o.bool,
1054
- o.shape({
1055
- mode: o.oneOf(["incell", "inline", "popup"])
76
+ onGroupChange: e.func,
77
+ onRowClick: e.func,
78
+ onRowDoubleClick: e.func,
79
+ onItemChange: e.func,
80
+ editField: e.string,
81
+ scrollable: e.oneOf(["none", "scrollable", "virtual"]),
82
+ rowHeight: e.number,
83
+ detailRowHeight: e.number,
84
+ detail: e.any,
85
+ style: e.object,
86
+ onDataStateChange: e.func,
87
+ onColumnResize: e.func,
88
+ onColumnReorder: e.func,
89
+ dataItemKey: e.string,
90
+ navigatable: e.oneOfType([
91
+ e.bool,
92
+ e.shape({
93
+ mode: e.oneOf(["incell", "inline", "popup"])
1056
94
  })
1057
95
  ]),
1058
- size: o.oneOf(["small", "medium"])
96
+ size: e.oneOf(["small", "medium"])
1059
97
  };
1060
- kt.displayName = "KendoReactGrid";
1061
- kt.propTypes = dr;
98
+ a.displayName = "KendoReactGrid";
99
+ a.propTypes = s;
1062
100
  export {
1063
- kt as Grid
101
+ a as Grid
1064
102
  };