@progress/kendo-react-grid 9.3.1-develop.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/GridState.mjs ADDED
@@ -0,0 +1,93 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ import o from "react";
10
+ const z = o.createContext([{}, () => {
11
+ }, {}]), Y = () => o.useContext(z), Z = (e) => {
12
+ var s, S, C, k, G, D, P, m, F, _, H, R, T, b, j, q, w, y;
13
+ const {
14
+ children: A,
15
+ onEditChange: r,
16
+ onFilterChange: n,
17
+ onSortChange: i,
18
+ onPageChange: c,
19
+ onGroupChange: u,
20
+ onDataStateChange: g,
21
+ onSelectionChange: h,
22
+ onDetailExpandChange: x,
23
+ onGroupExpandChange: E,
24
+ onHeaderSelectionChange: f
25
+ } = e, [l, d] = o.useState({
26
+ edit: (s = e.defaultEdit) != null ? s : e.edit,
27
+ filter: (S = e.defaultFilter) != null ? S : e.filter,
28
+ select: (C = e.defaultSelect) != null ? C : e.select,
29
+ sort: (k = e.defaultSort) != null ? k : e.sort,
30
+ take: (G = e.defaultTake) != null ? G : e.take,
31
+ skip: (D = e.defaultSkip) != null ? D : e.skip,
32
+ group: (P = e.defaultGroup) != null ? P : e.group,
33
+ detailExpand: (m = e.defaultDetailExpand) != null ? m : e.detailExpand,
34
+ groupExpand: (F = e.defaultGroupExpand) != null ? F : e.groupExpand
35
+ }), B = {
36
+ edit: (_ = e.edit) != null ? _ : l.edit,
37
+ filter: (H = e.filter) != null ? H : l.filter,
38
+ sort: (R = e.sort) != null ? R : l.sort,
39
+ take: (T = e.take) != null ? T : l.take,
40
+ skip: (b = e.skip) != null ? b : l.skip,
41
+ group: (j = e.group) != null ? j : l.group,
42
+ select: (q = e.select) != null ? q : l.select,
43
+ detailExpand: (w = e.detailExpand) != null ? w : l.detailExpand,
44
+ groupExpand: (y = e.groupExpand) != null ? y : l.groupExpand
45
+ }, I = (t) => {
46
+ }, J = (t) => {
47
+ d((a) => ({ ...a, edit: t.edit })), r == null || r(t);
48
+ }, K = (t) => {
49
+ d((a) => ({ ...a, filter: t.filter })), n == null || n(t);
50
+ }, L = (t) => {
51
+ d((a) => ({ ...a, sort: t.sort })), i == null || i(t);
52
+ }, M = (t) => {
53
+ d((a) => ({ ...a, ...t.page })), c == null || c(t);
54
+ }, N = (t) => {
55
+ d((a) => ({ ...a, group: t.group })), u == null || u(t);
56
+ }, O = (t) => {
57
+ d((a) => ({ ...a, ...t.dataState })), g == null || g(t);
58
+ }, Q = (t) => {
59
+ d((a) => ({ ...a, select: t.select })), h == null || h(t);
60
+ }, U = (t) => {
61
+ d((a) => ({ ...a, select: t.select })), f == null || f(t);
62
+ }, V = (t) => {
63
+ d((a) => ({ ...a, detailExpand: t.detailExpand })), x == null || x(t);
64
+ }, W = (t) => {
65
+ d((a) => ({ ...a, groupExpand: t.groupExpand })), E == null || E(t);
66
+ };
67
+ return /* @__PURE__ */ o.createElement(
68
+ z.Provider,
69
+ {
70
+ value: [
71
+ B,
72
+ I,
73
+ {
74
+ onEditChange: J,
75
+ onFilterChange: n && K,
76
+ onSortChange: i && L,
77
+ onPageChange: c && M,
78
+ onGroupChange: u && N,
79
+ onDataStateChange: O,
80
+ onSelectionChange: Q,
81
+ onHeaderSelectionChange: U,
82
+ onDetailExpandChange: V,
83
+ onGroupExpandChange: W
84
+ }
85
+ ]
86
+ },
87
+ A
88
+ );
89
+ };
90
+ export {
91
+ Z as GridClientStateProvider,
92
+ Y as useGridState
93
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),n=require("@progress/kendo-react-common"),c=require("./package-metadata.js");function i(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const l=i(o),s=e=>n.shouldShowValidationUI(c.packageMetadata)&&l.createElement(n.WatermarkOverlay,null);exports.GridWatermarkOverlay=s;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ import * as r from "react";
10
+ import { shouldShowValidationUI as e, WatermarkOverlay as a } from "@progress/kendo-react-common";
11
+ import { packageMetadata as t } from "./package-metadata.mjs";
12
+ const n = (o) => e(t) && /* @__PURE__ */ r.createElement(a, null);
13
+ export {
14
+ n as GridWatermarkOverlay
15
+ };
package/StatusBar.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=require("react"),h=require("@progress/kendo-react-common");function O(r){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const o in r)if(o!=="default"){const n=Object.getOwnPropertyDescriptor(r,o);Object.defineProperty(s,o,n.get?n:{enumerable:!0,get:()=>r[o]})}}return s.default=r,Object.freeze(s)}const l=O(E),b=r=>{const{data:s=[]}=r;return l.createElement("div",{className:"k-selection-aggregates k-grid-selection-aggregates"},s.map((o,n)=>l.createElement("div",{key:n},l.createElement("span",{className:"k-selection-aggregates-item-text"},o.type,": "),l.createElement("span",{className:"k-selection-aggregates-item-value"},o.formattedValue))))};b.displayName="KendoReactGridStatusBar";const p=r=>{var o;const s=r.slice();for(let n=0;n<s.length;n++)for(;s[n]&&((o=s[n].children)!=null&&o.length);)s.splice(n,1,...s[n].children);return s},j=r=>{const{dataItems:s,target:o,selectedField:n}=r,y=p(o.columns).map(e=>e.field).filter(e=>e&&typeof e=="string").map(e=>h.getter(e)),S=h.getter(n),t={dates:[],numbers:[],booleans:[],others:[]},D=e=>{typeof e=="number"?t.numbers.push(e):typeof e=="boolean"?t.booleans.push(e):e instanceof Date?t.dates.push(e):t.others.push(e)};s.forEach(e=>{const a=S(e);a&&a.forEach(c=>{D(y[c](e))})});const u=t.dates.map(e=>e.getTime()),g=t.booleans.filter(e=>e).length,m=t.booleans.filter(e=>!e).length,i=t.numbers.length?t.numbers.reduce((e,a)=>e+=a,0):void 0,d={sum:i,average:typeof i=="number"?i/t.numbers.length:void 0,min:t.numbers.length?Math.min(...t.numbers):void 0,max:t.numbers.length?Math.max(...t.numbers):void 0,count:t.numbers.length+t.booleans.length+t.dates.length+t.others.length,isTrue:g>0?g:void 0,isFalse:m>0?m:void 0,earliest:t.dates.length?new Date(Math.min(...u)):void 0,latest:t.dates.length?new Date(Math.max(...u)):void 0},v=(e,a)=>(a==="sum"||a==="average")&&typeof e=="number"?e.toFixed(2):(a==="earliest"||a==="latest")&&e instanceof Date?e.toLocaleDateString():String(e),f=[];return Object.keys(d).forEach(e=>{const a=e,c=d[a];c!==void 0&&f.push({type:a,value:c,formattedValue:v(c,a)})}),f};exports.StatusBar=b;exports.getStatusData=j;exports.leafColumns=p;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=require("react"),u=require("@progress/kendo-react-common");function O(s){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const o in s)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(s,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:()=>s[o]})}}return n.default=s,Object.freeze(n)}const c=O(E),b=s=>{const{data:n=[]}=s;return c.createElement("div",{className:"k-selection-aggregates k-grid-selection-aggregates"},n.map((o,r)=>c.createElement("div",{key:r},c.createElement("span",{className:"k-selection-aggregates-item-text"},o.type,": "),c.createElement("span",{className:"k-selection-aggregates-item-value"},o.formattedValue))))};b.displayName="KendoReactGridStatusBar";const p=s=>{var o;const n=s.slice();for(let r=0;r<n.length;r++)for(;n[r]&&((o=n[r].children)!=null&&o.length);)n.splice(r,1,...n[r].children);return n},j=s=>{const{dataItems:n,target:o}=s,y=p(o.columns).map(e=>e.field).filter(e=>e&&typeof e=="string").map(e=>u.getter(e)),S="selectedField"in s?u.getter(s.selectedField):e=>s.select[u.getter(s.dataItemKey)(e)],t={dates:[],numbers:[],booleans:[],others:[]},D=e=>{typeof e=="number"?t.numbers.push(e):typeof e=="boolean"?t.booleans.push(e):e instanceof Date?t.dates.push(e):t.others.push(e)};n.forEach(e=>{const a=S(e);a&&a.forEach(l=>{D(y[l](e))})});const m=t.dates.map(e=>e.getTime()),d=t.booleans.filter(e=>e).length,g=t.booleans.filter(e=>!e).length,i=t.numbers.length?t.numbers.reduce((e,a)=>e+=a,0):void 0,f={sum:i,average:typeof i=="number"?i/t.numbers.length:void 0,min:t.numbers.length?Math.min(...t.numbers):void 0,max:t.numbers.length?Math.max(...t.numbers):void 0,count:t.numbers.length+t.booleans.length+t.dates.length+t.others.length,isTrue:d>0?d:void 0,isFalse:g>0?g:void 0,earliest:t.dates.length?new Date(Math.min(...m)):void 0,latest:t.dates.length?new Date(Math.max(...m)):void 0},v=(e,a)=>(a==="sum"||a==="average")&&typeof e=="number"?e.toFixed(2):(a==="earliest"||a==="latest")&&e instanceof Date?e.toLocaleDateString():String(e),h=[];return Object.keys(f).forEach(e=>{const a=e,l=f[a];l!==void 0&&h.push({type:a,value:l,formattedValue:v(l,a)})}),h};exports.StatusBar=b;exports.getStatusData=j;exports.leafColumns=p;
package/StatusBar.mjs CHANGED
@@ -7,23 +7,23 @@
7
7
  */
8
8
  "use client";
9
9
  import * as i from "react";
10
- import { getter as f } from "@progress/kendo-react-common";
11
- const x = (r) => {
12
- const { data: n = [] } = r;
13
- return /* @__PURE__ */ i.createElement("div", { className: "k-selection-aggregates k-grid-selection-aggregates" }, n.map((o, a) => /* @__PURE__ */ i.createElement("div", { key: a }, /* @__PURE__ */ i.createElement("span", { className: "k-selection-aggregates-item-text" }, o.type, ": "), /* @__PURE__ */ i.createElement("span", { className: "k-selection-aggregates-item-value" }, o.formattedValue))));
10
+ import { getter as m } from "@progress/kendo-react-common";
11
+ const x = (a) => {
12
+ const { data: n = [] } = a;
13
+ return /* @__PURE__ */ i.createElement("div", { className: "k-selection-aggregates k-grid-selection-aggregates" }, n.map((r, o) => /* @__PURE__ */ i.createElement("div", { key: o }, /* @__PURE__ */ i.createElement("span", { className: "k-selection-aggregates-item-text" }, r.type, ": "), /* @__PURE__ */ i.createElement("span", { className: "k-selection-aggregates-item-value" }, r.formattedValue))));
14
14
  };
15
15
  x.displayName = "KendoReactGridStatusBar";
16
- const D = (r) => {
17
- var o;
18
- const n = r.slice();
19
- for (let a = 0; a < n.length; a++)
20
- for (; n[a] && ((o = n[a].children) != null && o.length); )
21
- n.splice(a, 1, ...n[a].children);
16
+ const D = (a) => {
17
+ var r;
18
+ const n = a.slice();
19
+ for (let o = 0; o < n.length; o++)
20
+ for (; n[o] && ((r = n[o].children) != null && r.length); )
21
+ n.splice(o, 1, ...n[o].children);
22
22
  return n;
23
- }, N = (r) => {
24
- const { dataItems: n, target: o, selectedField: a } = r, p = D(o.columns).map((e) => e.field).filter((e) => e && typeof e == "string").map(
25
- (e) => f(e)
26
- ), b = f(a), t = { dates: [], numbers: [], booleans: [], others: [] }, y = (e) => {
23
+ }, v = (a) => {
24
+ const { dataItems: n, target: r } = a, p = D(r.columns).map((e) => e.field).filter((e) => e && typeof e == "string").map(
25
+ (e) => m(e)
26
+ ), b = "selectedField" in a ? m(a.selectedField) : (e) => a.select[m(a.dataItemKey)(e)], t = { dates: [], numbers: [], booleans: [], others: [] }, y = (e) => {
27
27
  typeof e == "number" ? t.numbers.push(e) : typeof e == "boolean" ? t.booleans.push(e) : e instanceof Date ? t.dates.push(e) : t.others.push(e);
28
28
  };
29
29
  n.forEach((e) => {
@@ -32,24 +32,24 @@ const D = (r) => {
32
32
  y(p[l](e));
33
33
  });
34
34
  });
35
- const m = t.dates.map((e) => e.getTime()), g = t.booleans.filter((e) => e).length, d = t.booleans.filter((e) => !e).length, c = t.numbers.length ? t.numbers.reduce((e, s) => e += s, 0) : void 0, u = {
35
+ const d = t.dates.map((e) => e.getTime()), g = t.booleans.filter((e) => e).length, u = t.booleans.filter((e) => !e).length, c = t.numbers.length ? t.numbers.reduce((e, s) => e += s, 0) : void 0, h = {
36
36
  sum: c,
37
37
  average: typeof c == "number" ? c / t.numbers.length : void 0,
38
38
  min: t.numbers.length ? Math.min(...t.numbers) : void 0,
39
39
  max: t.numbers.length ? Math.max(...t.numbers) : void 0,
40
40
  count: t.numbers.length + t.booleans.length + t.dates.length + t.others.length,
41
41
  isTrue: g > 0 ? g : void 0,
42
- isFalse: d > 0 ? d : void 0,
43
- earliest: t.dates.length ? new Date(Math.min(...m)) : void 0,
44
- latest: t.dates.length ? new Date(Math.max(...m)) : void 0
45
- }, E = (e, s) => (s === "sum" || s === "average") && typeof e == "number" ? e.toFixed(2) : (s === "earliest" || s === "latest") && e instanceof Date ? e.toLocaleDateString() : String(e), h = [];
46
- return Object.keys(u).forEach((e) => {
47
- const s = e, l = u[s];
48
- l !== void 0 && h.push({ type: s, value: l, formattedValue: E(l, s) });
49
- }), h;
42
+ isFalse: u > 0 ? u : void 0,
43
+ earliest: t.dates.length ? new Date(Math.min(...d)) : void 0,
44
+ latest: t.dates.length ? new Date(Math.max(...d)) : void 0
45
+ }, E = (e, s) => (s === "sum" || s === "average") && typeof e == "number" ? e.toFixed(2) : (s === "earliest" || s === "latest") && e instanceof Date ? e.toLocaleDateString() : String(e), f = [];
46
+ return Object.keys(h).forEach((e) => {
47
+ const s = e, l = h[s];
48
+ l !== void 0 && f.push({ type: s, value: l, formattedValue: E(l, s) });
49
+ }), f;
50
50
  };
51
51
  export {
52
52
  x as StatusBar,
53
- N as getStatusData,
53
+ v as getStatusData,
54
54
  D as leafColumns
55
55
  };
package/cells/GridCell.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),C=require("../utils/index.js"),b=require("@progress/kendo-react-intl"),S=require("@progress/kendo-react-data-tools"),T=require("../constants/index.js"),r=require("@progress/kendo-react-common");function I(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const l=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,l.get?l:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const d=I(y),x=e=>{let t=null;const n=b.useInternationalization(),l=r.useUnstyled(),g=l&&l.uGrid?l.uGrid:r.uGrid,s=S.useTableKeyboardNavigation(e.id),m=d.useCallback(i=>{e.onContextMenu&&e.onContextMenu.call(void 0,i,e.dataItem,e.field)},[e.onContextMenu,e.dataItem,e.field]);let a=null,o=null;if(e.rowType==="groupFooter")a={onContextMenu:m,className:e.className,...s},t=d.createElement("td",{...a});else if(e.rowType!=="groupHeader"){if(e.field!==void 0){const c=C.getNestedValue(e.field,e.dataItem);c!=null&&(o=e.format?n.format(e.format,c):c.toString())}const i=r.classNames(g.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className);a={onContextMenu:m,colSpan:e.colSpan,style:e.style,className:i,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[T.GRID_COL_INDEX_ATTRIBUTE]:e.columnIndex,...s},t=d.createElement("td",{...a},o)}const f=e.rowType||"data",u=e.cells;if(u&&u[f]){const i=u[f];return d.createElement(i,{...e,tdProps:a},o)}return e.render?e.render.call(void 0,t,e):t};exports.GridCell=x;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),d=require("../utils/index.js"),S=require("../constants/index.js"),m=require("./client/GridCellContainer.js"),f=require("@progress/kendo-react-common"),G=require("@progress/kendo-react-intl");function T(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const l=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,l.get?l:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const i=T(y),b=e=>{let n=null,t=null,l=null;const r=e.unstyled,C=r&&r.uGrid?r.uGrid:f.uGrid,g=new G.IntlService("en");if(e.rowType==="groupFooter")t={className:e.className},n=i.createElement("td",{...t},l);else if(e.rowType!=="groupHeader"){if(e.field!==void 0){const c=d.getNestedValue(e.field,e.dataItem);c!=null&&(l=e.format?g.format(e.format,c):c.toString())}const a=f.classNames(C.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className);t={colSpan:e.colSpan,style:e.style,className:a,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[S.GRID_COL_INDEX_ATTRIBUTE]:e.columnIndex},n=i.createElement("td",{...t},l)}const s=d.getClientCellProps(e),u=e.rowType||"data",o=e.cells;if(o&&o[u]){const a=o[u],c=d.isClientReference(a);return i.createElement(m.GridCellContainer,{cellProps:s,tdProps:t,isCustom:!0,isClient:c},i.createElement(a,{...e,tdProps:t},l))}return i.createElement(m.GridCellContainer,{cellProps:s,content:l,tdProps:t},n)};exports.GridCell=b;
@@ -7,54 +7,44 @@
7
7
  */
8
8
  "use client";
9
9
  import * as i from "react";
10
- import { getNestedValue as C } from "../utils/index.mjs";
11
- import { useInternationalization as g } from "@progress/kendo-react-intl";
12
- import { useTableKeyboardNavigation as y } from "@progress/kendo-react-data-tools";
13
- import { GRID_COL_INDEX_ATTRIBUTE as I } from "../constants/index.mjs";
14
- import { useUnstyled as x, uGrid as N, classNames as T } from "@progress/kendo-react-common";
15
- const w = (e) => {
16
- let n = null;
17
- const f = g(), d = x(), s = d && d.uGrid ? d.uGrid : N, m = y(e.id), u = i.useCallback(
18
- (l) => {
19
- e.onContextMenu && e.onContextMenu.call(void 0, l, e.dataItem, e.field);
20
- },
21
- [e.onContextMenu, e.dataItem, e.field]
22
- );
23
- let t = null, c = null;
10
+ import { getNestedValue as C, getClientCellProps as g, isClientReference as y } from "../utils/index.mjs";
11
+ import { GRID_COL_INDEX_ATTRIBUTE as S } from "../constants/index.mjs";
12
+ import { GridCellContainer as s } from "./client/GridCellContainer.mjs";
13
+ import { uGrid as E, classNames as I } from "@progress/kendo-react-common";
14
+ import { IntlService as N } from "@progress/kendo-react-intl";
15
+ const v = (e) => {
16
+ let c = null, t = null, n = null;
17
+ const r = e.unstyled, u = r && r.uGrid ? r.uGrid : E, f = new N("en");
24
18
  if (e.rowType === "groupFooter")
25
19
  t = {
26
- onContextMenu: u,
27
- className: e.className,
28
- ...m
29
- }, n = /* @__PURE__ */ i.createElement("td", { ...t });
20
+ className: e.className
21
+ }, c = /* @__PURE__ */ i.createElement("td", { ...t }, n);
30
22
  else if (e.rowType !== "groupHeader") {
31
23
  if (e.field !== void 0) {
32
- const a = C(e.field, e.dataItem);
33
- a != null && (c = e.format ? f.format(e.format, a) : a.toString());
24
+ const l = C(e.field, e.dataItem);
25
+ l != null && (n = e.format ? f.format(e.format, l) : l.toString());
34
26
  }
35
- const l = T(
36
- s.td({ selected: e.isSelected, sorted: e.isSorted, alt: e.isAlt }),
27
+ const a = I(
28
+ u.td({ selected: e.isSelected, sorted: e.isSorted, alt: e.isAlt }),
37
29
  e.className
38
30
  );
39
31
  t = {
40
- onContextMenu: u,
41
32
  colSpan: e.colSpan,
42
33
  style: e.style,
43
- className: l,
34
+ className: a,
44
35
  role: "gridcell",
45
36
  "aria-colindex": e.ariaColumnIndex,
46
37
  "aria-selected": e.isSelected,
47
- [I]: e.columnIndex,
48
- ...m
49
- }, n = /* @__PURE__ */ i.createElement("td", { ...t }, c);
38
+ [S]: e.columnIndex
39
+ }, c = /* @__PURE__ */ i.createElement("td", { ...t }, n);
50
40
  }
51
- const r = e.rowType || "data", o = e.cells;
52
- if (o && o[r]) {
53
- const l = o[r];
54
- return /* @__PURE__ */ i.createElement(l, { ...e, tdProps: t }, c);
41
+ const o = g(e), m = e.rowType || "data", d = e.cells;
42
+ if (d && d[m]) {
43
+ const a = d[m], l = y(a);
44
+ return /* @__PURE__ */ i.createElement(s, { cellProps: o, tdProps: t, isCustom: !0, isClient: l }, /* @__PURE__ */ i.createElement(a, { ...e, tdProps: t }, n));
55
45
  }
56
- return e.render ? e.render.call(void 0, n, e) : n;
46
+ return /* @__PURE__ */ i.createElement(s, { cellProps: o, content: n, tdProps: t }, c);
57
47
  };
58
48
  export {
59
- w as GridCell
49
+ v as GridCell
60
50
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("@progress/kendo-react-data-tools"),f=require("react"),l=require("@progress/kendo-react-common");function g(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,a.get?a:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const c=g(f),C=e=>{const{colSpan:n,ariaColIndex:t,dataItem:a,dataIndex:i,id:r}=e,d=b.useTableKeyboardNavigation(r),o=l.useUnstyled(),u=o&&o.uGrid?o.uGrid:l.uGrid,s=c.useCallback(m=>{e.onContextMenu&&e.onContextMenu.call(void 0,m,e.dataItem)},[e.onContextMenu,e.dataItem]);return c.createElement("td",{onContextMenu:s,className:l.classNames(u.detailTd({})),colSpan:n,"aria-colindex":t,role:"gridcell",...d},c.createElement(e.detail,{dataItem:a,dataIndex:i}))};exports.GridDetailCell=C;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),c=require("@progress/kendo-react-common"),u=require("./client/DetailCellContainer.js");function m(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,a.get?a:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const r=m(s),f=e=>{const{colSpan:n,ariaColIndex:t,dataItem:a,dataIndex:i,id:o}=e,l=e.unstyled,d=l&&l.uGrid?l.uGrid:c.uGrid;return r.createElement(u.DetailCellContainer,{id:o,dataItem:a},r.createElement("td",{className:c.classNames(d.detailTd({})),colSpan:n,"aria-colindex":t,role:"gridcell"},r.createElement(e.detail,{dataItem:a,dataIndex:i})))};exports.GridDetailCell=f;
@@ -6,29 +6,22 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- import { useTableKeyboardNavigation as m } from "@progress/kendo-react-data-tools";
10
9
  import * as a from "react";
11
- import { useUnstyled as x, uGrid as C, classNames as I } from "@progress/kendo-react-common";
12
- const g = (e) => {
13
- const { colSpan: n, ariaColIndex: i, dataItem: l, dataIndex: o, id: d } = e, c = m(d), t = x(), r = t && t.uGrid ? t.uGrid : C, s = a.useCallback(
14
- (u) => {
15
- e.onContextMenu && e.onContextMenu.call(void 0, u, e.dataItem);
16
- },
17
- [e.onContextMenu, e.dataItem]
18
- );
19
- return /* @__PURE__ */ a.createElement(
10
+ import { uGrid as o, classNames as s } from "@progress/kendo-react-common";
11
+ import { DetailCellContainer as m } from "./client/DetailCellContainer.mjs";
12
+ const x = (e) => {
13
+ const { colSpan: r, ariaColIndex: i, dataItem: l, dataIndex: d, id: n } = e, t = e.unstyled, c = t && t.uGrid ? t.uGrid : o;
14
+ return /* @__PURE__ */ a.createElement(m, { id: n, dataItem: l }, /* @__PURE__ */ a.createElement(
20
15
  "td",
21
16
  {
22
- onContextMenu: s,
23
- className: I(r.detailTd({})),
24
- colSpan: n,
17
+ className: s(c.detailTd({})),
18
+ colSpan: r,
25
19
  "aria-colindex": i,
26
- role: "gridcell",
27
- ...c
20
+ role: "gridcell"
28
21
  },
29
- /* @__PURE__ */ a.createElement(e.detail, { dataItem: l, dataIndex: o })
30
- );
22
+ /* @__PURE__ */ a.createElement(e.detail, { dataItem: l, dataIndex: d })
23
+ ));
31
24
  };
32
25
  export {
33
- g as GridDetailCell
26
+ x as GridDetailCell
34
27
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@progress/kendo-react-common"),l=require("react");function a(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,n.get?n:{enumerable:!0,get:()=>t[r]})}}return e.default=t,Object.freeze(e)}const o=a(l),s=t=>{const e=c.useUnstyled(),r=e&&e.uGrid?e.uGrid:c.uGrid;return o.createElement("td",{className:c.classNames(r.hierarchyTd({})),role:"gridcell"})};exports.GridDetailHierarchyCell=s;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("@progress/kendo-react-common"),l=require("react");function a(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const c=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,c.get?c:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const i=a(l),o=e=>{const t=e.unstyled,r=t&&t.uGrid?t.uGrid:n.uGrid;return i.createElement("td",{className:n.classNames(r.hierarchyTd({})),role:"gridcell"})};exports.GridDetailHierarchyCell=o;
@@ -6,12 +6,12 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- import { useUnstyled as s, uGrid as t, classNames as l } from "@progress/kendo-react-common";
9
+ import { uGrid as t, classNames as l } from "@progress/kendo-react-common";
10
10
  import * as i from "react";
11
- const d = (a) => {
12
- const e = s(), r = e && e.uGrid ? e.uGrid : t;
13
- return /* @__PURE__ */ i.createElement("td", { className: l(r.hierarchyTd({})), role: "gridcell" });
11
+ const c = (r) => {
12
+ const e = r.unstyled, s = e && e.uGrid ? e.uGrid : t;
13
+ return /* @__PURE__ */ i.createElement("td", { className: l(s.hierarchyTd({})), role: "gridcell" });
14
14
  };
15
15
  export {
16
- d as GridDetailHierarchyCell
16
+ c as GridDetailHierarchyCell
17
17
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("react"),b=require("../utils/index.js"),_=require("@progress/kendo-react-inputs"),h=require("@progress/kendo-react-dateinputs"),E=require("@progress/kendo-react-common"),I=require("@progress/kendo-react-data-tools"),C=require("../constants/index.js");function S(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const d in e)if(d!=="default"){const o=Object.getOwnPropertyDescriptor(e,d);Object.defineProperty(n,d,o.get?o:{enumerable:!0,get:()=>e[d]})}}return n.default=e,Object.freeze(n)}const t=S(N),y=e=>{const n=b.getNestedValue(e.field,e.dataItem),d=E.useUnstyled(),o=d&&d.uGrid?d.uGrid:E.uGrid;let i=null;const m=E.classNames(o.editTd({selected:e.isSelected}),e.className),x=E.useId(),r=I.useTableKeyboardNavigation(e.id);let l=null,c=null;const g=t.useCallback(a=>{if(e.onChange){const k=a.target.type==="checkbox"?a.target.checked:a.target.value;e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,syntheticEvent:a,value:k})}},[e.onChange,e.dataItem,e.dataIndex,e.field]),s=t.useCallback(a=>{e.onContextMenu&&e.onContextMenu.call(void 0,a,e.dataItem,e.field)},[e.onContextMenu,e.dataItem,e.field]),T=t.useCallback(a=>{e.onChange&&e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,syntheticEvent:a.syntheticEvent,value:a.value})},[e.onChange,e.dataItem,e.dataIndex,e.field]);switch(e.editor){case"numeric":{l={onContextMenu:s,colSpan:e.colSpan,style:e.style,className:m,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[C.GRID_COL_INDEX_ATTRIBUTE]:e.columnIndex,role:"gridcell",...r},c=t.createElement(_.NumericTextBox,{value:n===void 0?null:n,onChange:T,[I.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),i=t.createElement("td",{...l},c);break}case"date":l={onContextMenu:s,colSpan:e.colSpan,style:e.style,className:m,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[C.GRID_COL_INDEX_ATTRIBUTE]:e.columnIndex,role:"gridcell",...r},c=t.createElement(h.DatePicker,{value:n,onChange:T,[I.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),i=t.createElement("td",{...l},c);break;case"boolean":l={onContextMenu:s,colSpan:e.colSpan,style:e.style,className:m,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[C.GRID_COL_INDEX_ATTRIBUTE]:e.columnIndex,role:"gridcell",...r},c=[t.createElement("span",{key:1,className:"k-checkbox-wrap"},t.createElement("input",{checked:n||!1,id:x,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md",onChange:g})),t.createElement("label",{className:"k-checkbox-label",htmlFor:x,key:2})],i=t.createElement("td",{...l},c);break;default:l={onContextMenu:s,colSpan:e.colSpan,style:e.style,className:m,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[C.GRID_COL_INDEX_ATTRIBUTE]:e.columnIndex,role:"gridcell",...r},c=t.createElement("input",{style:{width:"100%"},className:"k-input",value:n||"",onChange:g,[I.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),i=t.createElement("td",{...l},c)}const f=e.editor||"text",u=e.cells;if(u){let a;return u.edit&&u.edit[f]?a=u.edit[f]:u.data&&(a=u.data),t.createElement(a,{...e,tdProps:l},c)}return e.render?e.render.call(void 0,i,e):i};exports.GridEditCell=y;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),u=require("../utils/index.js"),C=require("@progress/kendo-react-common"),g=require("../constants/index.js"),G=require("./client/GridEditCellEditor.js"),m=require("./client/GridEditCellContainer.js");function y(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const l in e)if(l!=="default"){const c=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(t,l,c.get?c:{enumerable:!0,get:()=>e[l]})}}return t.default=e,Object.freeze(t)}const i=y(f),S=e=>{const t=e.unstyled,l=t&&t.uGrid?t.uGrid:C.uGrid,c=C.classNames(l.editTd({selected:e.isSelected}),e.className),r={colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[g.GRID_COL_INDEX_ATTRIBUTE]:e.columnIndex,role:"gridcell"},s=u.getClientCellProps(e),o=i.createElement(G.GridEditCellEditor,{cellProps:s}),a=e.editor||"text",n=e.cells;if(n){let d;n.edit&&n.edit[a]?d=n.edit[a]:n.data&&(d=n.data);const E=u.isClientReference(d);return i.createElement(m.GridEditCellContainer,{cellProps:s,tdProps:r,isCustom:!0,isClient:E},i.createElement(d,{...e,tdProps:r},o))}return i.createElement(m.GridEditCellContainer,{cellProps:s,content:o,tdProps:r},i.createElement("td",{...r},o))};exports.GridEditCell=S;
@@ -6,138 +6,30 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- import * as a from "react";
10
- import { getNestedValue as E } from "../utils/index.mjs";
11
- import { NumericTextBox as b } from "@progress/kendo-react-inputs";
12
- import { DatePicker as N } from "@progress/kendo-react-dateinputs";
13
- import { useUnstyled as y, uGrid as S, classNames as v, useId as T } from "@progress/kendo-react-common";
14
- import { useTableKeyboardNavigation as _, TABLE_PREVENT_SELECTION_ELEMENT as I } from "@progress/kendo-react-data-tools";
9
+ import * as l from "react";
10
+ import { getClientCellProps as u, isClientReference as E } from "../utils/index.mjs";
11
+ import { uGrid as f, classNames as G } from "@progress/kendo-react-common";
15
12
  import { GRID_COL_INDEX_ATTRIBUTE as x } from "../constants/index.mjs";
16
- const B = (e) => {
17
- const i = E(e.field, e.dataItem), C = y(), h = C && C.uGrid ? C.uGrid : S;
18
- let d = null;
19
- const m = v(h.editTd({ selected: e.isSelected }), e.className), s = T(), u = _(e.id);
20
- let l = null, n = null;
21
- const f = a.useCallback(
22
- (t) => {
23
- if (e.onChange) {
24
- const k = t.target.type === "checkbox" ? t.target.checked : t.target.value;
25
- e.onChange({
26
- dataItem: e.dataItem,
27
- dataIndex: e.dataIndex,
28
- field: e.field,
29
- syntheticEvent: t,
30
- value: k
31
- });
32
- }
33
- },
34
- [e.onChange, e.dataItem, e.dataIndex, e.field]
35
- ), o = a.useCallback(
36
- (t) => {
37
- e.onContextMenu && e.onContextMenu.call(void 0, t, e.dataItem, e.field);
38
- },
39
- [e.onContextMenu, e.dataItem, e.field]
40
- ), g = a.useCallback(
41
- (t) => {
42
- e.onChange && e.onChange({
43
- dataItem: e.dataItem,
44
- dataIndex: e.dataIndex,
45
- field: e.field,
46
- syntheticEvent: t.syntheticEvent,
47
- value: t.value
48
- });
49
- },
50
- [e.onChange, e.dataItem, e.dataIndex, e.field]
51
- );
52
- switch (e.editor) {
53
- case "numeric": {
54
- l = {
55
- onContextMenu: o,
56
- colSpan: e.colSpan,
57
- style: e.style,
58
- className: m,
59
- "aria-colindex": e.ariaColumnIndex,
60
- "aria-selected": e.isSelected,
61
- [x]: e.columnIndex,
62
- role: "gridcell",
63
- ...u
64
- }, n = /* @__PURE__ */ a.createElement(
65
- b,
66
- {
67
- value: i === void 0 ? null : i,
68
- onChange: g,
69
- [I]: !0
70
- }
71
- ), d = /* @__PURE__ */ a.createElement("td", { ...l }, n);
72
- break;
73
- }
74
- case "date":
75
- l = {
76
- onContextMenu: o,
77
- colSpan: e.colSpan,
78
- style: e.style,
79
- className: m,
80
- "aria-colindex": e.ariaColumnIndex,
81
- "aria-selected": e.isSelected,
82
- [x]: e.columnIndex,
83
- role: "gridcell",
84
- ...u
85
- }, n = /* @__PURE__ */ a.createElement(N, { value: i, onChange: g, [I]: !0 }), d = /* @__PURE__ */ a.createElement("td", { ...l }, n);
86
- break;
87
- case "boolean":
88
- l = {
89
- onContextMenu: o,
90
- colSpan: e.colSpan,
91
- style: e.style,
92
- className: m,
93
- "aria-colindex": e.ariaColumnIndex,
94
- "aria-selected": e.isSelected,
95
- [x]: e.columnIndex,
96
- role: "gridcell",
97
- ...u
98
- }, n = [
99
- /* @__PURE__ */ a.createElement("span", { key: 1, className: "k-checkbox-wrap" }, /* @__PURE__ */ a.createElement(
100
- "input",
101
- {
102
- checked: i || !1,
103
- id: s,
104
- type: "checkbox",
105
- className: "k-checkbox k-checkbox-md k-rounded-md",
106
- onChange: f
107
- }
108
- )),
109
- /* @__PURE__ */ a.createElement("label", { className: "k-checkbox-label", htmlFor: s, key: 2 })
110
- ], d = /* @__PURE__ */ a.createElement("td", { ...l }, n);
111
- break;
112
- default:
113
- l = {
114
- onContextMenu: o,
115
- colSpan: e.colSpan,
116
- style: e.style,
117
- className: m,
118
- "aria-colindex": e.ariaColumnIndex,
119
- "aria-selected": e.isSelected,
120
- [x]: e.columnIndex,
121
- role: "gridcell",
122
- ...u
123
- }, n = /* @__PURE__ */ a.createElement(
124
- "input",
125
- {
126
- style: { width: "100%" },
127
- className: "k-input",
128
- value: i || "",
129
- onChange: f,
130
- [I]: !0
131
- }
132
- ), d = /* @__PURE__ */ a.createElement("td", { ...l }, n);
13
+ import { GridEditCellEditor as I } from "./client/GridEditCellEditor.mjs";
14
+ import { GridEditCellContainer as o } from "./client/GridEditCellContainer.mjs";
15
+ const T = (e) => {
16
+ const c = e.unstyled, a = c && c.uGrid ? c.uGrid : f, m = G(a.editTd({ selected: e.isSelected }), e.className), i = {
17
+ colSpan: e.colSpan,
18
+ style: e.style,
19
+ className: m,
20
+ "aria-colindex": e.ariaColumnIndex,
21
+ "aria-selected": e.isSelected,
22
+ [x]: e.columnIndex,
23
+ role: "gridcell"
24
+ }, s = u(e), d = /* @__PURE__ */ l.createElement(I, { cellProps: s }), r = e.editor || "text", t = e.cells;
25
+ if (t) {
26
+ let n;
27
+ t.edit && t.edit[r] ? n = t.edit[r] : t.data && (n = t.data);
28
+ const C = E(n);
29
+ return /* @__PURE__ */ l.createElement(o, { cellProps: s, tdProps: i, isCustom: !0, isClient: C }, /* @__PURE__ */ l.createElement(n, { ...e, tdProps: i }, d));
133
30
  }
134
- const r = e.editor || "text", c = e.cells;
135
- if (c) {
136
- let t;
137
- return c.edit && c.edit[r] ? t = c.edit[r] : c.data && (t = c.data), /* @__PURE__ */ a.createElement(t, { ...e, tdProps: l }, n);
138
- }
139
- return e.render ? e.render.call(void 0, d, e) : d;
31
+ return /* @__PURE__ */ l.createElement(o, { cellProps: s, content: d, tdProps: i }, /* @__PURE__ */ l.createElement("td", { ...i }, d));
140
32
  };
141
33
  export {
142
- B as GridEditCell
34
+ T as GridEditCell
143
35
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("@progress/kendo-react-common"),j=require("@progress/kendo-react-data-tools"),z=require("@progress/kendo-react-intl"),C=require("@progress/kendo-svg-icons"),A=require("react"),v=require("../messages/index.js");function G(e){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const c=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(a,t,c.get?c:{enumerable:!0,get:()=>e[t]})}}return a.default=e,Object.freeze(a)}const n=G(A),K=e=>{let a=null;const{columnIndex:t,level:c,columnsCount:g,rowType:w,dataItem:o,field:M,onChange:d,expanded:r,render:x,dataIndex:f,ariaColumnIndex:N,isRtl:I}=e,s=M||"",E=j.useTableKeyboardNavigation(e.id),T=z.useLocalization();let i=null,m=null,y=null;const q=n.useCallback(l=>{l.isDefaultPrevented()||l.keyCode===b.Keys.enter&&d&&(l.preventDefault(),d({dataItem:o,dataIndex:f,syntheticEvent:l,field:void 0,value:!r}))},[r,d,o,f]),k=n.useCallback(l=>{e.onContextMenu&&e.onContextMenu.call(void 0,l,e.dataItem,e.field)},[e.onContextMenu,e.dataItem,e.field]),S=(l,O)=>{const h=r?v.groupCollapse:v.groupExpand,P=T.toLanguageString(h,v.messages[h]);return i={className:"k-table-td",style:{...e.style,...O},colSpan:l,key:"g-colspan",role:"gridcell","aria-selected":!1,"aria-expanded":r,"aria-colindex":N,onKeyDown:q,onContextMenu:k,...E},y=n.createElement("p",{className:"k-reset"},n.createElement("a",{onClick:R=>{R.preventDefault(),d&&d({dataItem:o,dataIndex:f,syntheticEvent:R,field:void 0,value:!r})},href:"#",tabIndex:-1,"aria-label":P},n.createElement(b.IconWrap,{name:r?"caret-alt-down":I?"caret-alt-left":"caret-alt-right",icon:r?C.caretAltDownIcon:I?C.caretAltLeftIcon:C.caretAltRightIcon})),o[s]instanceof Date&&o[s].toString?o[s].toString():o[s]),n.createElement("td",{...i,key:i.key},y)};t===void 0||c===void 0||t<c||g===void 0||w!=="groupHeader"||o[s]===void 0?(i={style:e.style,key:"g"+t,className:b.classNames("k-table-td","k-group-cell",{"k-grid-content-sticky":e.locked}),role:"gridcell",onContextMenu:k,...E},a=n.createElement("td",{...i,key:i.key})):t<=c&&!e.locked?a=S(g-t,{}):t<=c&&e.locked&&(m={className:"k-table-td",role:"gridcell",colSpan:g-t,style:{borderLeftWidth:0,borderRightWidth:0},onContextMenu:k},a=n.createElement(n.Fragment,null,S(0,{position:"sticky",zIndex:2}),n.createElement("td",{...m})));const D=e.rowType||"data",u=e.cells;if(u&&u.group&&u.group[D]){const l=u.group[D];return n.createElement(l,{...e,tdProps:i,td2Props:m},y)}return x?x.call(void 0,a,e):a};exports.GridGroupCell=K;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("@progress/kendo-react-common"),E=require("react"),N=require("./client/GridGroupCellToggle.js"),k=require("./client/GridGroupCellContainer.js"),p=require("../utils/index.js");function O(e){const l=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(l,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return l.default=e,Object.freeze(l)}const o=O(E),R=e=>{const{columnIndex:l,level:r,columnsCount:n,rowType:G,dataItem:c,field:b,expanded:S,render:j,ariaColumnIndex:v}=e,a=b||"";let t=null,i=null,d=null,m=!1,s=!1,C=!1;const g=p.getClientCellProps(e);l===void 0||r===void 0||l<r||n===void 0||G!=="groupHeader"||c[a]===void 0?(s=!0,t={style:e.style,key:"g"+l,className:w.classNames("k-table-td","k-group-cell",{"k-grid-content-sticky":e.locked}),role:"gridcell"}):l===r&&(s=!0,t={className:"k-table-td",style:e.style,colSpan:n-l,key:"g-colspan",role:"gridcell","aria-selected":!1,"aria-expanded":S,"aria-colindex":v},d=o.createElement("p",{className:"k-reset"},o.createElement(N.GridGroupCellToggle,{...g}),c[a]instanceof Date&&c[a].toString?c[a].toString():c[a]),m=!0,e.locked&&(C=!0,t={...t,colSpan:0,style:{...e.style,position:"sticky",zIndex:2}},i={className:"k-table-td",role:"gridcell",colSpan:n-l,style:{borderLeftWidth:0,borderRightWidth:0}}));const f=e.rowType||"data",u=e.cells;if(u&&u.group&&u.group[f]){const y=u.group[f],T=p.isClientReference(y);return o.createElement(k.GridGroupCellContainer,{cellProps:g,tdProps:t,td2Props:i,isCustom:!0,isClient:T,addKeyDownHandler:!0},o.createElement(y,{...e,tdProps:t,td2Props:i},d))}const x=s?o.createElement("td",{...t,key:t==null?void 0:t.key},d):null;return o.createElement(k.GridGroupCellContainer,{cellProps:g,addKeyDownHandler:m,tdProps:t,td2Props:i,renderFirstCell:s,renderSecondCell:C,content:d},x)};exports.GridGroupCell=R;