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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/Grid.js +1 -1
  2. package/Grid.mjs +80 -1043
  3. package/GridClientContextReader.js +9 -0
  4. package/GridClientContextReader.mjs +31 -0
  5. package/GridClientWrapper.js +9 -0
  6. package/GridClientWrapper.mjs +793 -0
  7. package/GridColumn.js +1 -1
  8. package/GridColumn.mjs +4 -5
  9. package/GridComponent.js +8 -0
  10. package/GridComponent.mjs +594 -0
  11. package/GridSearchBox.js +8 -0
  12. package/GridSearchBox.mjs +35 -0
  13. package/GridState.js +9 -0
  14. package/GridState.mjs +99 -0
  15. package/GridToolbar.js +1 -1
  16. package/GridToolbar.mjs +5 -6
  17. package/GridWatermarkOverlay.js +9 -0
  18. package/{GridNoRecords.js → GridWatermarkOverlay.mjs} +8 -1
  19. package/StatusBar.js +1 -1
  20. package/StatusBar.mjs +24 -25
  21. package/VirtualScroll.js +1 -1
  22. package/VirtualScroll.mjs +0 -1
  23. package/VirtualScrollFixed.js +1 -1
  24. package/VirtualScrollFixed.mjs +9 -10
  25. package/cells/GridCell.js +1 -1
  26. package/cells/GridCell.mjs +22 -34
  27. package/cells/GridDetailCell.js +1 -1
  28. package/cells/GridDetailCell.mjs +12 -20
  29. package/cells/GridDetailHierarchyCell.js +1 -1
  30. package/cells/GridDetailHierarchyCell.mjs +6 -7
  31. package/cells/GridEditCell.js +1 -1
  32. package/cells/GridEditCell.mjs +22 -131
  33. package/cells/GridFilterCell.js +2 -1
  34. package/cells/GridGroupCell.js +1 -1
  35. package/cells/GridGroupCell.mjs +60 -96
  36. package/cells/GridHierarchyCell.js +1 -1
  37. package/cells/GridHierarchyCell.mjs +22 -62
  38. package/cells/GridRowReorderCell.js +8 -0
  39. package/cells/GridRowReorderCell.mjs +41 -0
  40. package/cells/GridSelectionCell.js +1 -1
  41. package/cells/GridSelectionCell.mjs +18 -37
  42. package/cells/client/DetailCellContainer.js +9 -0
  43. package/cells/client/DetailCellContainer.mjs +26 -0
  44. package/cells/client/GridCellContainer.js +9 -0
  45. package/cells/client/GridCellContainer.mjs +68 -0
  46. package/cells/client/GridEditCellContainer.js +9 -0
  47. package/cells/client/GridEditCellContainer.mjs +60 -0
  48. package/cells/client/GridEditCellEditor.js +9 -0
  49. package/cells/client/GridEditCellEditor.mjs +81 -0
  50. package/cells/client/GridGroupCellContainer.js +9 -0
  51. package/cells/client/GridGroupCellContainer.mjs +87 -0
  52. package/cells/client/GridGroupCellToggle.js +9 -0
  53. package/cells/client/GridGroupCellToggle.mjs +52 -0
  54. package/cells/client/GridHierarchyCellContainer.js +9 -0
  55. package/cells/client/GridHierarchyCellContainer.mjs +63 -0
  56. package/cells/client/GridHierarchyCellToggle.js +9 -0
  57. package/cells/client/GridHierarchyCellToggle.mjs +43 -0
  58. package/cells/client/GridRowReorderContainer.js +9 -0
  59. package/cells/client/GridRowReorderContainer.mjs +24 -0
  60. package/cells/client/GridSelectionCellContainer.js +9 -0
  61. package/cells/client/GridSelectionCellContainer.mjs +60 -0
  62. package/cells/client/GridSelectionCellInput.js +9 -0
  63. package/cells/client/GridSelectionCellInput.mjs +43 -0
  64. package/codemods/index.js +8 -0
  65. package/columnMenu/GridColumnMenuCheckboxFilter.js +2 -1
  66. package/columnMenu/GridColumnMenuColumnsList.js +2 -1
  67. package/columnMenu/GridColumnMenuColumnsList.mjs +16 -16
  68. package/columnMenu/GridColumnMenuFilter.js +2 -1
  69. package/columnMenu/GridColumnMenuFilterCell.js +2 -1
  70. package/columnMenu/GridColumnMenuFilterCell.mjs +3 -3
  71. package/columnMenu/GridColumnMenuFilterUI.js +2 -1
  72. package/columnMenu/GridColumnMenuGroup.js +2 -1
  73. package/columnMenu/GridColumnMenuGroup.mjs +5 -5
  74. package/columnMenu/GridColumnMenuItem.js +2 -1
  75. package/columnMenu/GridColumnMenuItem.mjs +2 -2
  76. package/columnMenu/GridColumnMenuItemContent.js +2 -1
  77. package/columnMenu/GridColumnMenuItemContent.mjs +4 -4
  78. package/columnMenu/GridColumnMenuItemGroup.js +2 -1
  79. package/columnMenu/GridColumnMenuItemGroup.mjs +4 -4
  80. package/columnMenu/GridColumnMenuSort.js +2 -1
  81. package/columnMenu/GridColumnMenuSort.mjs +26 -37
  82. package/columnMenu/GridColumnMenuWrapper.js +2 -1
  83. package/components/GridContainerElementContainer.js +9 -0
  84. package/components/GridContainerElementContainer.mjs +21 -0
  85. package/components/GridCustomCellClientContainer.js +9 -0
  86. package/components/GridCustomCellClientContainer.mjs +28 -0
  87. package/components/GridDragClue.js +9 -0
  88. package/components/GridDragClue.mjs +18 -0
  89. package/components/GridDraggableRowsContainer.js +9 -0
  90. package/components/GridDraggableRowsContainer.mjs +127 -0
  91. package/components/GridDropClue.js +9 -0
  92. package/components/GridDropClue.mjs +18 -0
  93. package/components/GridElementContainer.js +9 -0
  94. package/components/GridElementContainer.mjs +22 -0
  95. package/components/GridLoader.js +9 -0
  96. package/components/GridLoader.mjs +22 -0
  97. package/components/PagerContainer.js +9 -0
  98. package/components/PagerContainer.mjs +23 -0
  99. package/components/VirtualScrollHeightContainer.js +9 -0
  100. package/components/VirtualScrollHeightContainer.mjs +17 -0
  101. package/components/colGroup/GridColGroup.js +9 -0
  102. package/components/colGroup/GridColGroup.mjs +25 -0
  103. package/components/icons/reorder-row-svg.js +9 -0
  104. package/components/icons/reorder-row-svg.mjs +14 -0
  105. package/components/noRecords/GridNoRecords.js +9 -0
  106. package/{GridNoRecords.mjs → components/noRecords/GridNoRecords.mjs} +6 -6
  107. package/components/noRecords/GridNoRecordsContainer.js +9 -0
  108. package/components/noRecords/GridNoRecordsContainer.mjs +30 -0
  109. package/components/table/GridTable.js +9 -0
  110. package/components/table/GridTable.mjs +28 -0
  111. package/components/table/GridTableBody.js +9 -0
  112. package/components/table/GridTableBody.mjs +21 -0
  113. package/components/table/GridTableScrollable.js +9 -0
  114. package/components/table/GridTableScrollable.mjs +37 -0
  115. package/components/utils.js +8 -0
  116. package/components/utils.mjs +25 -0
  117. package/constants/index.js +1 -1
  118. package/constants/index.mjs +0 -1
  119. package/contextMenu/GridContextMenu.js +9 -0
  120. package/contextMenu/GridContextMenu.mjs +191 -0
  121. package/contextMenu/enums.js +8 -0
  122. package/contextMenu/enums.mjs +12 -0
  123. package/dist/cdn/js/kendo-react-grid.js +8 -1
  124. package/drag/ColumnDraggable.js +2 -1
  125. package/drag/ColumnDraggable.mjs +7 -7
  126. package/drag/ColumnResize.js +1 -1
  127. package/drag/ColumnResize.mjs +0 -1
  128. package/drag/CommonDragLogic.js +1 -1
  129. package/drag/CommonDragLogic.mjs +0 -1
  130. package/drag/GroupingIndicator.js +2 -1
  131. package/drag/GroupingIndicator.mjs +11 -11
  132. package/filterCommon.js +1 -1
  133. package/filterCommon.mjs +4 -5
  134. package/footer/Footer.js +2 -1
  135. package/footer/Footer.mjs +22 -21
  136. package/footer/FooterCell.js +8 -0
  137. package/footer/FooterCell.mjs +42 -0
  138. package/footer/FooterRow.js +1 -1
  139. package/footer/FooterRow.mjs +10 -40
  140. package/footer/client/FooterCellContainer.js +9 -0
  141. package/footer/client/FooterCellContainer.mjs +26 -0
  142. package/header/FilterRow.js +1 -1
  143. package/header/FilterRow.mjs +57 -55
  144. package/header/GridHeaderCell.js +2 -1
  145. package/header/GridHeaderCell.mjs +11 -11
  146. package/header/GridHeaderSelectionCell.js +2 -1
  147. package/header/GridHeaderSelectionCell.mjs +10 -9
  148. package/header/GroupPanel.js +2 -1
  149. package/header/GroupPanel.mjs +36 -32
  150. package/header/Header.js +2 -1
  151. package/header/Header.mjs +35 -33
  152. package/header/HeaderRow.js +1 -1
  153. package/header/HeaderRow.mjs +96 -126
  154. package/header/client/GridFilterCellContainer.js +9 -0
  155. package/header/client/GridFilterCellContainer.mjs +38 -0
  156. package/header/client/GridFilterCellElementContainer.js +9 -0
  157. package/header/client/GridFilterCellElementContainer.mjs +21 -0
  158. package/header/client/GridHeaderCellContainer.js +9 -0
  159. package/header/client/GridHeaderCellContainer.mjs +54 -0
  160. package/header/client/GridHeaderCellElementContainer.js +9 -0
  161. package/header/client/GridHeaderCellElementContainer.mjs +28 -0
  162. package/header/client/GridHeaderRowContainer.js +9 -0
  163. package/header/client/GridHeaderRowContainer.mjs +35 -0
  164. package/header/client/GridHeaderRowReorderCell.js +9 -0
  165. package/header/client/GridHeaderRowReorderCell.mjs +13 -0
  166. package/header/client/HeaderCellResizer.js +9 -0
  167. package/header/client/HeaderCellResizer.mjs +25 -0
  168. package/header/client/HeaderRowDraggable.js +9 -0
  169. package/header/client/HeaderRowDraggable.mjs +30 -0
  170. package/index.d.mts +601 -25
  171. package/index.d.ts +601 -25
  172. package/index.js +1 -1
  173. package/index.mjs +46 -39
  174. package/messages/index.js +1 -1
  175. package/messages/index.mjs +76 -81
  176. package/messages/messagesMap.js +8 -0
  177. package/messages/messagesMap.mjs +18 -0
  178. package/package-metadata.js +1 -1
  179. package/package-metadata.mjs +2 -3
  180. package/package.json +27 -11
  181. package/paging/GridPagerSettings.js +1 -1
  182. package/paging/GridPagerSettings.mjs +6 -7
  183. package/rows/GridDetailRow.js +1 -1
  184. package/rows/GridDetailRow.mjs +2 -3
  185. package/rows/GridRow.js +2 -1
  186. package/rows/GridRow.mjs +42 -20
  187. package/sortCommon.js +8 -0
  188. package/sortCommon.mjs +27 -0
  189. package/{interfaces/GridSortSettings.js → utils/_clientModule.js} +2 -1
  190. package/{interfaces/GridSortSettings.mjs → utils/_clientModule.mjs} +3 -2
  191. package/utils/_serverModule.js +8 -0
  192. package/utils/_serverModule.mjs +12 -0
  193. package/utils/index.js +1 -1
  194. package/utils/index.mjs +213 -102
@@ -0,0 +1,9 @@
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
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),b=require("@progress/kendo-react-intl"),w=require("@progress/kendo-react-data-tools"),C=require("../../GridClientWrapper.js"),e=require("../../messages/index.js"),m=t=>{const{cellProps:n,rowReorderable:a,children:o}=t,{id:i,dataItem:s}=n,c=b.useLocalization(),l=r.useContext(C.GridContext),d=w.useTableKeyboardNavigation(i),u=a,R=c.toLanguageString(e.gridRowReorderAriaLabel,e.messages[e.gridRowReorderAriaLabel]),g=()=>u?l.activeDragRowDataItemRef.current=s:null;return o&&r.cloneElement(o,{"aria-label":R,...d,onMouseDown:g})};exports.GridRowReorderCellContainer=m;
@@ -0,0 +1,24 @@
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 e from "react";
10
+ import { useLocalization as R } from "@progress/kendo-react-intl";
11
+ import { useTableKeyboardNavigation as f } from "@progress/kendo-react-data-tools";
12
+ import { GridContext as p } from "../../GridClientWrapper.mjs";
13
+ import { gridRowReorderAriaLabel as t, messages as b } from "../../messages/index.mjs";
14
+ const L = (r) => {
15
+ const { cellProps: a, rowReorderable: n, children: o } = r, { id: i, dataItem: s } = a, c = R(), l = e.useContext(p), m = f(i), d = n, g = c.toLanguageString(t, b[t]), u = () => d ? l.activeDragRowDataItemRef.current = s : null;
16
+ return o && e.cloneElement(o, {
17
+ "aria-label": g,
18
+ ...m,
19
+ onMouseDown: u
20
+ });
21
+ };
22
+ export {
23
+ L as GridRowReorderCellContainer
24
+ };
@@ -0,0 +1,9 @@
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
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("react"),m=require("@progress/kendo-react-data-tools"),f=require("../../GridClientWrapper.js");function g(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const o=g(C),P=e=>{var a;const{cellProps:t}=e,n=o.useContext(f.GridContext),r=m.useTableKeyboardNavigation(t.id),d={onContextMenu:o.useCallback(l=>{n!=null&&n.onContextMenu&&n.onContextMenu.call(void 0,l,t.dataItem,t.field)},[n,t.dataItem,t.field])},s=n.getCellPositionStyle(t.columnPosition),u={style:{...(a=e.tdProps)==null?void 0:a.style,...s}},i={...r,...d,...u},c={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:l=>{n.selectionChange({event:l,dataItem:t.dataItem,dataIndex:t.rowDataIndex,columnIndex:t.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?o.cloneElement(e.children,{tdProps:{...e.tdProps,...i},...c}):o.cloneElement(e.children,{...i});if(t.render){const l=t.rowType!=="groupHeader"?o.createElement("td",{...e.tdProps,...i},e.content):null;return t.render.call(void 0,l,{...t,...c})}return e.children&&o.cloneElement(e.children,{...i})};exports.GridSelectionCellContainer=P;
@@ -0,0 +1,60 @@
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 o from "react";
10
+ import { useTableKeyboardNavigation as C } from "@progress/kendo-react-data-tools";
11
+ import { GridContext as m } from "../../GridClientWrapper.mjs";
12
+ const g = (n) => {
13
+ var r;
14
+ const { cellProps: e } = n, t = o.useContext(m), c = C(e.id), d = {
15
+ onContextMenu: o.useCallback(
16
+ (l) => {
17
+ t != null && t.onContextMenu && t.onContextMenu.call(void 0, l, e.dataItem, e.field);
18
+ },
19
+ [t, e.dataItem, e.field]
20
+ )
21
+ }, s = t.getCellPositionStyle(e.columnPosition), u = {
22
+ style: { ...(r = n.tdProps) == null ? void 0 : r.style, ...s }
23
+ }, i = {
24
+ ...c,
25
+ ...d,
26
+ ...u
27
+ }, a = {
28
+ onContextMenu: t.onContextMenu,
29
+ onChange: t.itemChange,
30
+ selectionChange: (l) => {
31
+ t.selectionChange({
32
+ event: l,
33
+ dataItem: e.dataItem,
34
+ dataIndex: e.rowDataIndex,
35
+ columnIndex: e.columnIndex
36
+ });
37
+ }
38
+ };
39
+ if (n.isCustom)
40
+ return t.isClient || n.isClient ? o.cloneElement(n.children, {
41
+ // pass down to tdProps for client templates
42
+ tdProps: { ...n.tdProps, ...i },
43
+ ...a
44
+ }) : o.cloneElement(n.children, {
45
+ ...i
46
+ });
47
+ if (e.render) {
48
+ const l = e.rowType !== "groupHeader" ? /* @__PURE__ */ o.createElement("td", { ...n.tdProps, ...i }, n.content) : null;
49
+ return e.render.call(void 0, l, {
50
+ ...e,
51
+ ...a
52
+ });
53
+ }
54
+ return n.children && o.cloneElement(n.children, {
55
+ ...i
56
+ });
57
+ };
58
+ export {
59
+ g as GridSelectionCellContainer
60
+ };
@@ -0,0 +1,9 @@
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
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react"),b=require("../../GridClientWrapper.js"),i=require("@progress/kendo-react-common"),I=require("@progress/kendo-react-intl"),o=require("../../messages/index.js");function g(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const c=g(m),k=e=>{var r;const t=c.useContext(b.GridContext),n=i.useId(),a=I.useLocalization(),l=(r=e.isSelected)!=null?r:i.getNestedValue(e.field,e.dataItem),d=typeof l=="boolean"&&l,u=c.useCallback(s=>{t==null||t.selectionChange({event:s,dataItem:e.dataItem,dataIndex:e.rowDataIndex,columnIndex:e.columnIndex})},[t,e.columnIndex,e.rowDataIndex,e.dataItem]);return c.createElement("span",{className:"k-checkbox-wrap"},c.createElement("input",{id:n,tabIndex:-1,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":a.toLanguageString(o.selectRow,o.messages[o.selectRow]),"aria-checked":d,checked:d,onChange:u}))};exports.GridSelectionCellInput=k;
@@ -0,0 +1,43 @@
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 a from "react";
10
+ import { GridContext as r } from "../../GridClientWrapper.mjs";
11
+ import { useId as u, getNestedValue as I } from "@progress/kendo-react-common";
12
+ import { useLocalization as x } from "@progress/kendo-react-intl";
13
+ import { selectRow as d, messages as k } from "../../messages/index.mjs";
14
+ const C = (e) => {
15
+ var o;
16
+ const t = a.useContext(r), l = u(), m = x(), n = (o = e.isSelected) != null ? o : I(e.field, e.dataItem), c = typeof n == "boolean" && n, i = a.useCallback(
17
+ (s) => {
18
+ t == null || t.selectionChange({
19
+ event: s,
20
+ dataItem: e.dataItem,
21
+ dataIndex: e.rowDataIndex,
22
+ columnIndex: e.columnIndex
23
+ });
24
+ },
25
+ [t, e.columnIndex, e.rowDataIndex, e.dataItem]
26
+ );
27
+ return /* @__PURE__ */ a.createElement("span", { className: "k-checkbox-wrap" }, /* @__PURE__ */ a.createElement(
28
+ "input",
29
+ {
30
+ id: l,
31
+ tabIndex: -1,
32
+ type: "checkbox",
33
+ className: "k-checkbox k-checkbox-md k-rounded-md",
34
+ "aria-label": m.toLanguageString(d, k[d]),
35
+ "aria-checked": c,
36
+ checked: c,
37
+ onChange: i
38
+ }
39
+ ));
40
+ };
41
+ export {
42
+ C as GridSelectionCellInput
43
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use strict";function c(n,o){const t=o.jscodeshift,e=t(n.source);return e.find(t.JSXOpeningElement,{name:{name:"Grid"}}).forEach(s=>{const r=s.value.attributes;if(r){const i=t.jsxAttribute(t.jsxIdentifier("extraTestProp"),t.jsxExpressionContainer(t.booleanLiteral(!0)));r.push(i)}}),e.toSource()}module.exports=c;
@@ -5,4 +5,5 @@
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 H=require("react"),J=require("./GridColumnMenuItem.js"),K=require("./GridColumnMenuItemGroup.js"),U=require("./GridColumnMenuItemContent.js"),v=require("@progress/kendo-react-inputs"),X=require("@progress/kendo-react-intl"),r=require("../messages/index.js"),D=require("@progress/kendo-data-query"),G=require("@progress/kendo-react-common"),F=require("@progress/kendo-react-buttons"),P=require("../utils/index.js"),S=require("@progress/kendo-svg-icons");function Y(e){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const m in e)if(m!=="default"){const f=Object.getOwnPropertyDescriptor(e,m);Object.defineProperty(s,m,f.get?f:{enumerable:!0,get:()=>e[m]})}}return s.default=e,Object.freeze(s)}const l=Y(H),Z=(e,s)=>e.length!==s.length?!1:e.every((m,f)=>m===s[f]),p={uniqueData:!0},ee=e=>{const{uniqueData:s=p.uniqueData}=e,m=()=>{const t=e.column.field;return b().filters.findIndex(i=>i.filters&&i.filters.length>0&&i.filters[0].field===t)},f=(t,n)=>{const c=e.column.field||"",i=t.map(o=>P.getNestedValue(c,o));return n?i.filter((o,u)=>i.indexOf(o)===u):i},b=()=>e.filter?G.clone(e.filter):{filters:[],logic:"and"},a=l.useRef(m()),[I,R]=l.useState(e.expanded||!1),[q,B]=l.useState(""),[h,C]=l.useState(f(e.data,s)||[]),[w,L]=l.useState(f(e.data,!1)||[]),[d,V]=l.useState(b());l.useEffect(()=>{const t=e.column.field||"",n=e.data.map(c=>P.getNestedValue(t,c));Z(n,w)||(C(n),L(n))},[e.column,e.data]);const y=()=>e.expanded!==void 0,j=()=>{const t=y(),n=!(t?e.expanded:I);e.onExpandChange&&e.onExpandChange(n),t||R(n)},N=t=>{const n=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",c={logic:"and",filters:[{field:e.column.field,operator:n,value:t.target.value,ignoreCase:!0}]};B(t.target.value),C(f(D.filterBy(e.data||[],c),s))},T=()=>{const t=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",n={logic:"and",filters:[{field:e.column.field,operator:t,value:"",ignoreCase:!0}]};B(""),C(f(D.filterBy(e.data||[],n),s))},z=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=d||null;n!==null&&n.filters.length>0?(a.current>=0&&n.filters.splice(a.current,1),e.onFilterChange(n,t)):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},A=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=d||null;e.onFilterChange(n,t),e.onCloseMenu&&e.onCloseMenu()},M=(t,n)=>{const c=e.column.field||"",i={...d},o=[...d.filters];let u=[];if(a.current!==-1&&i.filters[a.current].filters&&n!=="all"&&(u=i.filters[a.current].filters),t.value&&n==="all")h.forEach(E=>{u.push({field:c,operator:"eq",value:E})});else if(t.value)u.push({field:c,operator:"eq",value:n});else if(d){const E=u.findIndex($=>$.value===n);u.splice(E,1)}i.logic="and",a.current!==-1?o[a.current]={logic:"or",filters:u}:o.push({logic:"or",filters:u}),(!t.value&&n==="all"||u.length===0)&&o.splice(a.current,1),i.filters=o,V(i)},_=()=>{let t=!1;if(d){const n=[...d.filters];return a.current===-1?!1:(t=h.every(c=>a.current!==-1&&n[a.current].filters?n[a.current].filters.findIndex(o=>o.value===c)>=0:!1),t)}return t},g=X.useLocalization(),{column:x}=e;if(!x||!x.field)return l.createElement("div",null);const Q=y()?e.expanded:I,k=[];if(d){const t=[...d.filters];a.current=t.findIndex(n=>n.filters&&n.filters.length>0?n.filters[0].field===x.field:!1),a.current!==-1&&t[a.current].filters.length>0&&t[a.current].filters.forEach(n=>{n.field===e.column.field&&k.push(n.value)})}const W=e.searchBox?l.createElement(e.searchBox,{value:q,onChange:N}):l.createElement("div",{className:"k-searchbox k-textbox k-input k-input-md k-input-solid"},l.createElement(G.IconWrap,{className:"k-input-icon",name:"search",icon:S.searchIcon}),l.createElement(v.Input,{className:"k-input-inner",type:"text",placeholder:g.toLanguageString(r.searchPlaceholder,r.messages[r.searchPlaceholder]),value:q,onChange:t=>N(t.nativeEvent)}),l.createElement(F.Button,{type:"button",rounded:null,className:"k-input-button",onClick:T,icon:"x",svgIcon:S.xIcon})),O=k.filter((t,n)=>k.indexOf(t)===n);return l.createElement(K.GridColumnMenuItemGroup,null,l.createElement(J.GridColumnMenuItem,{title:g.toLanguageString(r.filterTitle,r.messages[r.filterTitle]),iconClass:"k-i-filter",svgIcon:S.filterIcon,onClick:j}),l.createElement(U.GridColumnMenuItemContent,{show:!!Q},l.createElement("form",{className:"k-filter-menu",onSubmit:A,onReset:z},l.createElement("div",{className:"k-filter-menu-container"},W,l.createElement("ul",{className:"k-reset k-multicheck-wrap"},l.createElement("li",{className:"k-item k-check-all-wrap"},l.createElement(v.Checkbox,{label:g.toLanguageString(r.filterCheckAll,r.messages[r.filterCheckAll]),onChange:t=>M(t,"all"),checked:_()})),h.map((t,n)=>l.createElement("li",{className:"k-item",key:n},l.createElement(v.Checkbox,{label:String(t),onChange:c=>M(c,t),checked:O.includes(t)})))),l.createElement("div",{className:"k-filter-selected-items"},O.length+" "+g.toLanguageString(r.filterSelectedItems,r.messages[r.filterSelectedItems])),l.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},l.createElement(F.Button,{themeColor:"primary",type:"submit"},g.toLanguageString(r.filterSubmitButton,r.messages[r.filterSubmitButton])),l.createElement(F.Button,{className:"k-button",type:"reset"},g.toLanguageString(r.filterClearButton,r.messages[r.filterClearButton])))))))};exports.GridColumnMenuCheckboxFilter=ee;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const H=require("react"),J=require("./GridColumnMenuItem.js"),K=require("./GridColumnMenuItemGroup.js"),U=require("./GridColumnMenuItemContent.js"),v=require("@progress/kendo-react-inputs"),X=require("@progress/kendo-react-intl"),r=require("../messages/index.js"),D=require("@progress/kendo-data-query"),G=require("@progress/kendo-react-common"),F=require("@progress/kendo-react-buttons"),P=require("../utils/index.js"),S=require("@progress/kendo-svg-icons");function Y(e){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const m in e)if(m!=="default"){const f=Object.getOwnPropertyDescriptor(e,m);Object.defineProperty(s,m,f.get?f:{enumerable:!0,get:()=>e[m]})}}return s.default=e,Object.freeze(s)}const l=Y(H),Z=(e,s)=>e.length!==s.length?!1:e.every((m,f)=>m===s[f]),p={uniqueData:!0},ee=e=>{const{uniqueData:s=p.uniqueData}=e,m=()=>{const t=e.column.field;return b().filters.findIndex(i=>i.filters&&i.filters.length>0&&i.filters[0].field===t)},f=(t,n)=>{const c=e.column.field||"",i=t.map(o=>P.getNestedValue(c,o));return n?i.filter((o,u)=>i.indexOf(o)===u):i},b=()=>e.filter?G.clone(e.filter):{filters:[],logic:"and"},a=l.useRef(m()),[I,R]=l.useState(e.expanded||!1),[q,B]=l.useState(""),[h,C]=l.useState(f(e.data,s)||[]),[w,L]=l.useState(f(e.data,!1)||[]),[d,V]=l.useState(b());l.useEffect(()=>{const t=e.column.field||"",n=e.data.map(c=>P.getNestedValue(t,c));Z(n,w)||(C(n),L(n))},[e.column,e.data]);const y=()=>e.expanded!==void 0,j=()=>{const t=y(),n=!(t?e.expanded:I);e.onExpandChange&&e.onExpandChange(n),t||R(n)},N=t=>{const n=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",c={logic:"and",filters:[{field:e.column.field,operator:n,value:t.target.value,ignoreCase:!0}]};B(t.target.value),C(f(D.filterBy(e.data||[],c),s))},T=()=>{const t=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",n={logic:"and",filters:[{field:e.column.field,operator:t,value:"",ignoreCase:!0}]};B(""),C(f(D.filterBy(e.data||[],n),s))},z=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=d||null;n!==null&&n.filters.length>0?(a.current>=0&&n.filters.splice(a.current,1),e.onFilterChange(n,t)):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},A=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=d||null;e.onFilterChange(n,t),e.onCloseMenu&&e.onCloseMenu()},M=(t,n)=>{const c=e.column.field||"",i={...d},o=[...d.filters];let u=[];if(a.current!==-1&&i.filters[a.current].filters&&n!=="all"&&(u=i.filters[a.current].filters),t.value&&n==="all")h.forEach(E=>{u.push({field:c,operator:"eq",value:E})});else if(t.value)u.push({field:c,operator:"eq",value:n});else if(d){const E=u.findIndex($=>$.value===n);u.splice(E,1)}i.logic="and",a.current!==-1?o[a.current]={logic:"or",filters:u}:o.push({logic:"or",filters:u}),(!t.value&&n==="all"||u.length===0)&&o.splice(a.current,1),i.filters=o,V(i)},_=()=>{let t=!1;if(d){const n=[...d.filters];return a.current===-1?!1:(t=h.every(c=>a.current!==-1&&n[a.current].filters?n[a.current].filters.findIndex(o=>o.value===c)>=0:!1),t)}return t},g=X.useLocalization(),{column:x}=e;if(!x||!x.field)return l.createElement("div",null);const Q=y()?e.expanded:I,k=[];if(d){const t=[...d.filters];a.current=t.findIndex(n=>n.filters&&n.filters.length>0?n.filters[0].field===x.field:!1),a.current!==-1&&t[a.current].filters.length>0&&t[a.current].filters.forEach(n=>{n.field===e.column.field&&k.push(n.value)})}const W=e.searchBox?l.createElement(e.searchBox,{value:q,onChange:N}):l.createElement("div",{className:"k-searchbox k-textbox k-input k-input-md k-input-solid"},l.createElement(G.IconWrap,{className:"k-input-icon",name:"search",icon:S.searchIcon}),l.createElement(v.Input,{className:"k-input-inner",type:"text",placeholder:g.toLanguageString(r.searchPlaceholder,r.messages[r.searchPlaceholder]),value:q,onChange:t=>N(t.nativeEvent)}),l.createElement(F.Button,{type:"button",rounded:null,className:"k-input-button",onClick:T,icon:"x",svgIcon:S.xIcon})),O=k.filter((t,n)=>k.indexOf(t)===n);return l.createElement(K.GridColumnMenuItemGroup,null,l.createElement(J.GridColumnMenuItem,{title:g.toLanguageString(r.filterTitle,r.messages[r.filterTitle]),iconClass:"k-i-filter",svgIcon:S.filterIcon,onClick:j}),l.createElement(U.GridColumnMenuItemContent,{show:!!Q},l.createElement("form",{className:"k-filter-menu",onSubmit:A,onReset:z},l.createElement("div",{className:"k-filter-menu-container"},W,l.createElement("ul",{className:"k-reset k-multicheck-wrap"},l.createElement("li",{className:"k-item k-check-all-wrap"},l.createElement(v.Checkbox,{label:g.toLanguageString(r.filterCheckAll,r.messages[r.filterCheckAll]),onChange:t=>M(t,"all"),checked:_()})),h.map((t,n)=>l.createElement("li",{className:"k-item",key:n},l.createElement(v.Checkbox,{label:String(t),onChange:c=>M(c,t),checked:O.includes(t)})))),l.createElement("div",{className:"k-filter-selected-items"},O.length+" "+g.toLanguageString(r.filterSelectedItems,r.messages[r.filterSelectedItems])),l.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},l.createElement(F.Button,{themeColor:"primary",type:"submit"},g.toLanguageString(r.filterSubmitButton,r.messages[r.filterSubmitButton])),l.createElement(F.Button,{className:"k-button",type:"reset"},g.toLanguageString(r.filterClearButton,r.messages[r.filterClearButton])))))))};exports.GridColumnMenuCheckboxFilter=ee;
@@ -5,4 +5,5 @@
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"),d=require("@progress/kendo-react-inputs"),x=require("@progress/kendo-react-common"),B=require("@progress/kendo-svg-icons"),g=require("@progress/kendo-react-buttons"),L=require("@progress/kendo-react-intl"),o=require("../messages/index.js");function R(n){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const i in n)if(i!=="default"){const r=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(a,i,r.get?r:{enumerable:!0,get:()=>n[i]})}}return a.default=n,Object.freeze(a)}const t=R(N),h=n=>{const[a,i]=t.useState(""),r=n.columns.reduce((e,l)=>({...e,[l.id||""]:!!n.columnsState.find(s=>s.id===l.id)}),{}),[c,k]=t.useState(r),b=t.useMemo(()=>n.columns.filter(e=>{var l;return(l=e.title||e.field)==null?void 0:l.toLowerCase().includes(a.toLowerCase())}),[n.columns,a]),C=L.useLocalization(),S=t.useCallback(()=>{const e=n.columns.filter(l=>c[l.id||""]);n.onColumnsChange.call(void 0,e),n.onCloseMenu.call(void 0)},[c,n.columns,n.onColumnsChange,n.onCloseMenu]),E=()=>{k(r)},u=t.useMemo(()=>Object.values(c).filter(e=>e).length,[c]),m=t.useMemo(()=>u===n.columns.length,[n.columns,u]),y=t.useCallback(()=>{const e={...c};Object.keys(e).forEach((l,s)=>e[l]=m&&s===0?!0:!m),k(e)},[c,m]),v=t.useCallback((e,l)=>{const s={...c};s[l||""]=e,k(s)},[c]),M=e=>{i(String(e.target.value))};return t.createElement("form",{className:"k-filter-menu"},t.createElement("div",{className:"k-filter-menu-container"},t.createElement(d.TextBox,{className:"k-searchbox",value:a,onChange:M,prefix:()=>t.createElement(d.InputPrefix,null,t.createElement(x.IconWrap,{name:"search",icon:B.searchIcon}))}),t.createElement("ul",{className:"k-reset k-multicheck-wrap"},!a&&t.createElement("li",{className:"k-item k-check-all-wrap"},t.createElement(d.Checkbox,{checked:m,onChange:y,label:C.toLanguageString(o.filterSelectAll,o.messages[o.filterSelectAll])})),b.map((e,l)=>t.createElement("li",{key:e.id,className:"k-item"},t.createElement(d.Checkbox,{disabled:c[e.id||""]&&u===1,checked:c[e.id||""],onChange:s=>{var f;return v(!!((f=s.target.element)!=null&&f.checked),e.id)},label:e.title||e.field})))),t.createElement("div",{className:"k-filter-selected-items"},u," selected items"),t.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},t.createElement(g.Button,{type:"button",themeColor:"primary",onClick:S},C.toLanguageString(o.filterApplyButton,o.messages[o.filterApplyButton])),t.createElement(g.Button,{type:"button",onClick:E},C.toLanguageString(o.filterResetButton,o.messages[o.filterResetButton])))))};h.displayName="GridColumnMenuColumnsList";exports.GridColumnMenuColumnsList=h;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("react"),d=require("@progress/kendo-react-inputs"),x=require("@progress/kendo-react-common"),B=require("@progress/kendo-svg-icons"),g=require("@progress/kendo-react-buttons"),L=require("@progress/kendo-react-intl"),o=require("../messages/index.js");function R(n){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const i in n)if(i!=="default"){const r=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(a,i,r.get?r:{enumerable:!0,get:()=>n[i]})}}return a.default=n,Object.freeze(a)}const t=R(N),h=n=>{const[a,i]=t.useState(""),r=n.columns.reduce((e,l)=>({...e,[l.id||""]:!!n.columnsState.find(s=>s.id===l.id)}),{}),[c,k]=t.useState(r),b=t.useMemo(()=>n.columns.filter(e=>{var l;return(l=e.title||e.field)==null?void 0:l.toLowerCase().includes(a.toLowerCase())}),[n.columns,a]),C=L.useLocalization(),S=t.useCallback(()=>{const e=n.columns.filter(l=>c[l.id||""]);n.onColumnsChange.call(void 0,e),n.onCloseMenu.call(void 0)},[c,n.columns,n.onColumnsChange,n.onCloseMenu]),E=()=>{k(r)},u=t.useMemo(()=>Object.values(c).filter(e=>e).length,[c]),m=t.useMemo(()=>u===n.columns.length,[n.columns,u]),y=t.useCallback(()=>{const e={...c};Object.keys(e).forEach((l,s)=>e[l]=m&&s===0?!0:!m),k(e)},[c,m]),v=t.useCallback((e,l)=>{const s={...c};s[l||""]=e,k(s)},[c]),M=e=>{i(String(e.target.value))};return t.createElement("form",{className:"k-filter-menu"},t.createElement("div",{className:"k-filter-menu-container"},t.createElement(d.TextBox,{className:"k-searchbox",value:a,onChange:M,prefix:()=>t.createElement(d.InputPrefix,null,t.createElement(x.IconWrap,{name:"search",icon:B.searchIcon}))}),t.createElement("ul",{className:"k-reset k-multicheck-wrap"},!a&&t.createElement("li",{className:"k-item k-check-all-wrap"},t.createElement(d.Checkbox,{checked:m,onChange:y,label:C.toLanguageString(o.filterSelectAll,o.messages[o.filterSelectAll])})),b.map((e,l)=>t.createElement("li",{key:e.id,className:"k-item"},t.createElement(d.Checkbox,{disabled:c[e.id||""]&&u===1,checked:c[e.id||""],onChange:s=>{var f;return v(!!((f=s.target.element)!=null&&f.checked),e.id)},label:e.title||e.field})))),t.createElement("div",{className:"k-filter-selected-items"},u," selected items"),t.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},t.createElement(g.Button,{type:"button",themeColor:"primary",onClick:S},C.toLanguageString(o.filterApplyButton,o.messages[o.filterApplyButton])),t.createElement(g.Button,{type:"button",onClick:E},C.toLanguageString(o.filterResetButton,o.messages[o.filterResetButton])))))};h.displayName="GridColumnMenuColumnsList";exports.GridColumnMenuColumnsList=h;
@@ -15,33 +15,33 @@ import { useLocalization as I } from "@progress/kendo-react-intl";
15
15
  import { filterSelectAll as h, messages as u, filterApplyButton as g, filterResetButton as E } from "../messages/index.mjs";
16
16
  const R = (l) => {
17
17
  const [a, S] = t.useState(""), d = l.columns.reduce(
18
- (e, n) => ({ ...e, [n.id || ""]: !!l.columnsState.find((o) => o.id === n.id) }),
18
+ (e, n) => ({ ...e, [n.id || ""]: !!l.columnsState.find((c) => c.id === n.id) }),
19
19
  {}
20
- ), [c, m] = t.useState(d), b = t.useMemo(
20
+ ), [o, m] = t.useState(d), b = t.useMemo(
21
21
  () => l.columns.filter((e) => {
22
22
  var n;
23
23
  return (n = e.title || e.field) == null ? void 0 : n.toLowerCase().includes(a.toLowerCase());
24
24
  }),
25
25
  [l.columns, a]
26
26
  ), r = I(), N = t.useCallback(() => {
27
- const e = l.columns.filter((n) => c[n.id || ""]);
27
+ const e = l.columns.filter((n) => o[n.id || ""]);
28
28
  l.onColumnsChange.call(void 0, e), l.onCloseMenu.call(void 0);
29
- }, [c, l.columns, l.onColumnsChange, l.onCloseMenu]), x = () => {
29
+ }, [o, l.columns, l.onColumnsChange, l.onCloseMenu]), x = () => {
30
30
  m(d);
31
31
  }, s = t.useMemo(
32
- () => Object.values(c).filter((e) => e).length,
33
- [c]
32
+ () => Object.values(o).filter((e) => e).length,
33
+ [o]
34
34
  ), i = t.useMemo(() => s === l.columns.length, [l.columns, s]), y = t.useCallback(() => {
35
- const e = { ...c };
35
+ const e = { ...o };
36
36
  Object.keys(e).forEach(
37
- (n, o) => e[n] = i && o === 0 ? !0 : !i
37
+ (n, c) => e[n] = i && c === 0 ? !0 : !i
38
38
  ), m(e);
39
- }, [c, i]), L = t.useCallback(
39
+ }, [o, i]), L = t.useCallback(
40
40
  (e, n) => {
41
- const o = { ...c };
42
- o[n || ""] = e, m(o);
41
+ const c = { ...o };
42
+ c[n || ""] = e, m(c);
43
43
  },
44
- [c]
44
+ [o]
45
45
  ), v = (e) => {
46
46
  S(String(e.target.value));
47
47
  };
@@ -63,11 +63,11 @@ const R = (l) => {
63
63
  )), b.map((e, n) => /* @__PURE__ */ t.createElement("li", { key: e.id, className: "k-item" }, /* @__PURE__ */ t.createElement(
64
64
  k,
65
65
  {
66
- disabled: c[e.id || ""] && s === 1,
67
- checked: c[e.id || ""],
68
- onChange: (o) => {
66
+ disabled: o[e.id || ""] && s === 1,
67
+ checked: o[e.id || ""],
68
+ onChange: (c) => {
69
69
  var C;
70
- return L(!!((C = o.target.element) != null && C.checked), e.id);
70
+ return L(!!((C = c.target.element) != null && C.checked), e.id);
71
71
  },
72
72
  label: e.title || e.field
73
73
  }
@@ -5,4 +5,5 @@
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 X=require("react"),L=require("@progress/kendo-data-query"),Y=require("./GridColumnMenuItem.js"),Z=require("./GridColumnMenuItemGroup.js"),$=require("./GridColumnMenuItemContent.js"),ee=require("@progress/kendo-react-intl"),i=require("../filterCommon.js"),c=require("../messages/index.js"),te=require("./GridColumnMenuFilterUI.js"),T=require("@progress/kendo-react-buttons"),re=require("@progress/kendo-svg-icons");function le(e){const u=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const f in e)if(f!=="default"){const F=Object.getOwnPropertyDescriptor(e,f);Object.defineProperty(u,f,F.get?F:{enumerable:!0,get:()=>e[f]})}}return u.default=e,Object.freeze(u)}const l=le(X),I=e=>e||{filters:[],logic:"and"},v=(e,u)=>I(u).filters.filter(n=>L.isCompositeFilterDescriptor(n)?n.filters&&n.filters.length&&n.filters.length<=2&&!n.filters.find(C=>L.isCompositeFilterDescriptor(C)||C.field!==e):!1)[0]||null,ne=(e,u)=>!!v(e,u),ie=e=>{const u=l.useCallback(()=>{let t;if(e.column&&e.column.field){const a=i.getFilterType(e.column.filter),r=i.getDefaultOperator(e.filterOperators,a);t=v(e.column.field,e.filter),t=t?{...t,filters:t.filters.map(o=>({...o}))}:{logic:"and",filters:[{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0},{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0}]},t.filters.filter(o=>o.field===e.column.field).length===1&&t.filters.splice(1,0,{field:e.column.field,operator:r})}return t},[e.column]),[f,F]=l.useState(e.expanded||!1),[n,C]=l.useState(u()),S=()=>e.expanded!==void 0,_=()=>{const t=S(),a=!(t?e.expanded:f);e.onExpandChange&&e.onExpandChange(a),t||F(a)},j=t=>{p(0,t)},R=t=>{p(1,t)},p=(t,a)=>{const r=n.filters.map((o,s)=>s===t?{...o,value:a.value,operator:a.operator}:o);C({...n,filters:r})},V=t=>{C({...n,logic:t.target.value.operator})},w=t=>{if(t.preventDefault(),!e.onFilterChange)return;const a=e.column.field,r=I(e.filter),o=v(a,e.filter),s=r.filters.filter(g=>g!==o);s.length?e.onFilterChange({...r,filters:s},t):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},b=()=>({...n,filters:n.filters.filter(t=>t.value!==void 0&&t.value!==null&&t.value!==""||t.value===null&&t.operator)}),N=t=>{if(t.preventDefault(),!e.onFilterChange)return;const a=e.column.field,r=I(e.filter),o=v(a,e.filter),s=b();let g=null;if(o&&s.filters.length>0){const M=r.filters.map(y=>y===o?s:y);g={...r,filters:M}}else if(s.filters.length===0){const M=r.filters.filter(y=>y!==o);M.length&&(g={...r,filters:M})}else g={...r,filters:[...r.filters,s]};e.onFilterChange(g,t),e.onCloseMenu&&e.onCloseMenu()},{column:h,filterUI:z,hideSecondFilter:x,filterOperators:A}=e,d=ee.useLocalization();if(!h||!h.field)return l.createElement("div",null);const G=i.getFilterType(h.filter),H=x!==void 0?x:i.defaultHideSecondFilter[G],m=n.filters,O=i.operatorMap(A[G],d),k=i.operatorMap(i.booleanFilterValues,d),Q={field:h.field,value:m[0].value,operator:m[0].operator,operators:O,booleanValues:k,onChange:j,filterType:G},J={field:h.field,value:m[1].value,operator:m[1].operator,operators:O,booleanValues:k,onChange:R,filterType:G},D=n.logic,q=i.operatorMap(i.filterLogicList,d),E={value:q.find(t=>t.operator===(D===null?"":D)),onChange:V,data:q},B=z,P={firstFilterProps:Q,secondFilterProps:J,logicData:E.data,logicValue:E.value,onLogicChange:E.onChange,hideSecondFilter:H},K=b().filters.length!==0||i.IsUnaryFilter(m[0].operator)||i.IsUnaryFilter(m[1].operator),W=S()?e.expanded:f,U=e.alwaysExpand;return l.createElement(Z.GridColumnMenuItemGroup,null,!U&&l.createElement(Y.GridColumnMenuItem,{title:d.toLanguageString(c.filterTitle,c.messages[c.filterTitle]),iconClass:"k-i-filter",svgIcon:re.filterIcon,onClick:_}),l.createElement($.GridColumnMenuItemContent,{show:U||!!W},l.createElement("form",{className:"k-filter-menu",onSubmit:N,onReset:w},l.createElement("div",{className:"k-filter-menu-container"},B?l.createElement(B,{...P}):l.createElement(te.GridColumnMenuFilterUI,{...P}),l.createElement("div",{className:"k-actions k-actions-stretched"},l.createElement(T.Button,{themeColor:"primary",disabled:!K},d.toLanguageString(c.filterSubmitButton,c.messages[c.filterSubmitButton])),l.createElement(T.Button,{type:"reset"},d.toLanguageString(c.filterClearButton,c.messages[c.filterClearButton])))))))};exports.GridColumnMenuFilter=ie;exports.filterGroupByField=v;exports.isColumnMenuFilterActive=ne;exports.rootFilterOrDefault=I;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const X=require("react"),L=require("@progress/kendo-data-query"),Y=require("./GridColumnMenuItem.js"),Z=require("./GridColumnMenuItemGroup.js"),$=require("./GridColumnMenuItemContent.js"),ee=require("@progress/kendo-react-intl"),i=require("../filterCommon.js"),c=require("../messages/index.js"),te=require("./GridColumnMenuFilterUI.js"),T=require("@progress/kendo-react-buttons"),re=require("@progress/kendo-svg-icons");function le(e){const u=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const f in e)if(f!=="default"){const F=Object.getOwnPropertyDescriptor(e,f);Object.defineProperty(u,f,F.get?F:{enumerable:!0,get:()=>e[f]})}}return u.default=e,Object.freeze(u)}const l=le(X),I=e=>e||{filters:[],logic:"and"},v=(e,u)=>I(u).filters.filter(n=>L.isCompositeFilterDescriptor(n)?n.filters&&n.filters.length&&n.filters.length<=2&&!n.filters.find(C=>L.isCompositeFilterDescriptor(C)||C.field!==e):!1)[0]||null,ne=(e,u)=>!!v(e,u),ie=e=>{const u=l.useCallback(()=>{let t;if(e.column&&e.column.field){const a=i.getFilterType(e.column.filter),r=i.getDefaultOperator(e.filterOperators,a);t=v(e.column.field,e.filter),t=t?{...t,filters:t.filters.map(o=>({...o}))}:{logic:"and",filters:[{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0},{field:e.column.field,operator:r,value:i.IsUnaryFilter(r)?null:void 0}]},t.filters.filter(o=>o.field===e.column.field).length===1&&t.filters.splice(1,0,{field:e.column.field,operator:r})}return t},[e.column]),[f,F]=l.useState(e.expanded||!1),[n,C]=l.useState(u()),S=()=>e.expanded!==void 0,_=()=>{const t=S(),a=!(t?e.expanded:f);e.onExpandChange&&e.onExpandChange(a),t||F(a)},j=t=>{p(0,t)},R=t=>{p(1,t)},p=(t,a)=>{const r=n.filters.map((o,s)=>s===t?{...o,value:a.value,operator:a.operator}:o);C({...n,filters:r})},V=t=>{C({...n,logic:t.target.value.operator})},w=t=>{if(t.preventDefault(),!e.onFilterChange)return;const a=e.column.field,r=I(e.filter),o=v(a,e.filter),s=r.filters.filter(g=>g!==o);s.length?e.onFilterChange({...r,filters:s},t):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},b=()=>({...n,filters:n.filters.filter(t=>t.value!==void 0&&t.value!==null&&t.value!==""||t.value===null&&t.operator)}),N=t=>{if(t.preventDefault(),!e.onFilterChange)return;const a=e.column.field,r=I(e.filter),o=v(a,e.filter),s=b();let g=null;if(o&&s.filters.length>0){const M=r.filters.map(y=>y===o?s:y);g={...r,filters:M}}else if(s.filters.length===0){const M=r.filters.filter(y=>y!==o);M.length&&(g={...r,filters:M})}else g={...r,filters:[...r.filters,s]};e.onFilterChange(g,t),e.onCloseMenu&&e.onCloseMenu()},{column:h,filterUI:z,hideSecondFilter:x,filterOperators:A}=e,d=ee.useLocalization();if(!h||!h.field)return l.createElement("div",null);const G=i.getFilterType(h.filter),H=x!==void 0?x:i.defaultHideSecondFilter[G],m=n.filters,O=i.operatorMap(A[G],d),k=i.operatorMap(i.booleanFilterValues,d),Q={field:h.field,value:m[0].value,operator:m[0].operator,operators:O,booleanValues:k,onChange:j,filterType:G},J={field:h.field,value:m[1].value,operator:m[1].operator,operators:O,booleanValues:k,onChange:R,filterType:G},D=n.logic,q=i.operatorMap(i.filterLogicList,d),E={value:q.find(t=>t.operator===(D===null?"":D)),onChange:V,data:q},B=z,P={firstFilterProps:Q,secondFilterProps:J,logicData:E.data,logicValue:E.value,onLogicChange:E.onChange,hideSecondFilter:H},K=b().filters.length!==0||i.IsUnaryFilter(m[0].operator)||i.IsUnaryFilter(m[1].operator),W=S()?e.expanded:f,U=e.alwaysExpand;return l.createElement(Z.GridColumnMenuItemGroup,null,!U&&l.createElement(Y.GridColumnMenuItem,{title:d.toLanguageString(c.filterTitle,c.messages[c.filterTitle]),iconClass:"k-i-filter",svgIcon:re.filterIcon,onClick:_}),l.createElement($.GridColumnMenuItemContent,{show:U||!!W},l.createElement("form",{className:"k-filter-menu",onSubmit:N,onReset:w},l.createElement("div",{className:"k-filter-menu-container"},B?l.createElement(B,{...P}):l.createElement(te.GridColumnMenuFilterUI,{...P}),l.createElement("div",{className:"k-actions k-actions-stretched"},l.createElement(T.Button,{themeColor:"primary",disabled:!K},d.toLanguageString(c.filterSubmitButton,c.messages[c.filterSubmitButton])),l.createElement(T.Button,{type:"reset"},d.toLanguageString(c.filterClearButton,c.messages[c.filterClearButton])))))))};exports.GridColumnMenuFilter=ie;exports.filterGroupByField=v;exports.isColumnMenuFilterActive=ne;exports.rootFilterOrDefault=I;
@@ -5,4 +5,5 @@
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 f=require("react"),d=require("@progress/kendo-react-dropdowns"),g=require("@progress/kendo-react-inputs"),h=require("@progress/kendo-react-dateinputs"),i=require("../filterCommon.js");function b(e){const l=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const c=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(l,o,c.get?c:{enumerable:!0,get:()=>e[o]})}}return l.default=e,Object.freeze(l)}const a=b(f),D=e=>{const l=()=>{if(e.filterType==="boolean")return;const n=e.operators.find(r=>r.operator===e.operator)||null;return a.createElement(d.DropDownList,{value:n,onChange:c,data:e.operators,textField:"text"})},o=(n,r)=>{i.cellInputChange(n,r,e)},c=n=>{i.cellOperatorChange(n,e.value,e.onChange)},m=n=>{i.cellBoolDropdownChange(n,e.onChange)},C=(n,r,s)=>{switch(n){case"numeric":return a.createElement(g.NumericTextBox,{value:r,onChange:t=>{o(t.value,t.syntheticEvent)},rangeOnEnter:!1});case"date":return a.createElement(h.DatePicker,{value:r,onChange:t=>{o(t.value,t.syntheticEvent)}});case"boolean":{const t=u=>u==null;return a.createElement(d.DropDownList,{onChange:m,value:s.find(u=>u.operator===(t(r)?"":r)),data:s,textField:"text"})}default:return a.createElement(g.Input,{value:r||"",onChange:t=>{o(t.target.value,t.syntheticEvent)}})}};return a.createElement(a.Fragment,null,l(),C(e.filterType,e.value,e.booleanValues))};exports.GridColumnMenuFilterCell=D;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),d=require("@progress/kendo-react-dropdowns"),g=require("@progress/kendo-react-inputs"),h=require("@progress/kendo-react-dateinputs"),i=require("../filterCommon.js");function b(e){const l=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const c=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(l,o,c.get?c:{enumerable:!0,get:()=>e[o]})}}return l.default=e,Object.freeze(l)}const a=b(f),D=e=>{const l=()=>{if(e.filterType==="boolean")return;const n=e.operators.find(r=>r.operator===e.operator)||null;return a.createElement(d.DropDownList,{value:n,onChange:c,data:e.operators,textField:"text"})},o=(n,r)=>{i.cellInputChange(n,r,e)},c=n=>{i.cellOperatorChange(n,e.value,e.onChange)},m=n=>{i.cellBoolDropdownChange(n,e.onChange)},C=(n,r,s)=>{switch(n){case"numeric":return a.createElement(g.NumericTextBox,{value:r,onChange:t=>{o(t.value,t.syntheticEvent)},rangeOnEnter:!1});case"date":return a.createElement(h.DatePicker,{value:r,onChange:t=>{o(t.value,t.syntheticEvent)}});case"boolean":{const t=u=>u==null;return a.createElement(d.DropDownList,{onChange:m,value:s.find(u=>u.operator===(t(r)?"":r)),data:s,textField:"text"})}default:return a.createElement(g.Input,{value:r||"",onChange:t=>{o(t.target.value,t.syntheticEvent)}})}};return a.createElement(a.Fragment,null,l(),C(e.filterType,e.value,e.booleanValues))};exports.GridColumnMenuFilterCell=D;
@@ -10,7 +10,7 @@ import * as o from "react";
10
10
  import { DropDownList as i } from "@progress/kendo-react-dropdowns";
11
11
  import { Input as C, NumericTextBox as d } from "@progress/kendo-react-inputs";
12
12
  import { DatePicker as f } from "@progress/kendo-react-dateinputs";
13
- import { cellOperatorChange as s, cellInputChange as E, cellBoolDropdownChange as v } from "../filterCommon.mjs";
13
+ import { cellOperatorChange as E, cellInputChange as s, cellBoolDropdownChange as v } from "../filterCommon.mjs";
14
14
  const w = (e) => {
15
15
  const u = () => {
16
16
  if (e.filterType === "boolean")
@@ -18,9 +18,9 @@ const w = (e) => {
18
18
  const n = e.operators.find((r) => r.operator === e.operator) || null;
19
19
  return /* @__PURE__ */ o.createElement(i, { value: n, onChange: m, data: e.operators, textField: "text" });
20
20
  }, l = (n, r) => {
21
- E(n, r, e);
21
+ s(n, r, e);
22
22
  }, m = (n) => {
23
- s(n, e.value, e.onChange);
23
+ E(n, e.value, e.onChange);
24
24
  }, h = (n) => {
25
25
  v(n, e.onChange);
26
26
  }, g = (n, r, c) => {
@@ -5,4 +5,5 @@
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 u=require("react"),o=require("./GridColumnMenuFilterCell.js"),s=require("@progress/kendo-react-dropdowns");function d(e){const r=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(r,n,l.get?l:{enumerable:!0,get:()=>e[n]})}}return r.default=e,Object.freeze(r)}const t=d(u),m=e=>{const{firstFilterProps:r,hideSecondFilter:n,secondFilterProps:l,logicData:i,logicValue:c,onLogicChange:a}=e;return t.createElement(t.Fragment,null,t.createElement(o.GridColumnMenuFilterCell,{...r}),!n&&t.createElement(t.Fragment,null,t.createElement(s.DropDownList,{data:i,value:c,onChange:a,className:"k-filter-and",textField:"text"}),t.createElement(o.GridColumnMenuFilterCell,{...l})))};exports.GridColumnMenuFilterUI=m;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),o=require("./GridColumnMenuFilterCell.js"),s=require("@progress/kendo-react-dropdowns");function d(e){const r=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(r,n,l.get?l:{enumerable:!0,get:()=>e[n]})}}return r.default=e,Object.freeze(r)}const t=d(u),m=e=>{const{firstFilterProps:r,hideSecondFilter:n,secondFilterProps:l,logicData:i,logicValue:a,onLogicChange:c}=e;return t.createElement(t.Fragment,null,t.createElement(o.GridColumnMenuFilterCell,{...r}),!n&&t.createElement(t.Fragment,null,t.createElement(s.DropDownList,{data:i,value:a,onChange:c,className:"k-filter-and",textField:"text"}),t.createElement(o.GridColumnMenuFilterCell,{...l})))};exports.GridColumnMenuFilterUI=m;
@@ -5,4 +5,5 @@
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 m=require("react"),C=require("@progress/kendo-react-intl"),G=require("./GridColumnMenuItemGroup.js"),p=require("./GridColumnMenuItem.js"),l=require("../messages/index.js"),a=require("@progress/kendo-svg-icons");function I(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const u=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,u.get?u:{enumerable:!0,get:()=>e[n]})}}return o.default=e,Object.freeze(o)}const d=I(m),M=e=>{const o=t=>{if(t.preventDefault(),e.onGroupChange){if(!e.column.field)return;const r=(e.group||[]).slice(),s=r.findIndex(g=>g.field===e.column.field);s>-1?r.splice(s,1):r.push({field:e.column.field}),e.onGroupChange(r,t)}e.onCloseMenu&&e.onCloseMenu()},{group:n,column:u}=e,f=C.useLocalization(),i=!!(n&&u.field&&n.find(t=>t.field===u.field)),c=i?l.ungroupColumn:l.groupColumn;return d.createElement(G.GridColumnMenuItemGroup,null,d.createElement(p.GridColumnMenuItem,{title:f.toLanguageString(c,l.messages[c]),iconClass:i?"k-i-ungroup":"k-i-group",svgIcon:i?a.ungroupIcon:a.groupIcon,onClick:o}))};exports.GridColumnMenuGroup=M;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react"),C=require("@progress/kendo-react-intl"),G=require("./GridColumnMenuItemGroup.js"),p=require("./GridColumnMenuItem.js"),l=require("../messages/index.js"),a=require("@progress/kendo-svg-icons");function I(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const u=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,u.get?u:{enumerable:!0,get:()=>e[n]})}}return o.default=e,Object.freeze(o)}const d=I(m),M=e=>{const o=t=>{if(t.preventDefault(),e.onGroupChange){if(!e.column.field)return;const r=(e.group||[]).slice(),s=r.findIndex(g=>g.field===e.column.field);s>-1?r.splice(s,1):r.push({field:e.column.field}),e.onGroupChange(r,t)}e.onCloseMenu&&e.onCloseMenu()},{group:n,column:u}=e,f=C.useLocalization(),i=!!(n&&u.field&&n.find(t=>t.field===u.field)),c=i?l.ungroupColumn:l.groupColumn;return d.createElement(G.GridColumnMenuItemGroup,null,d.createElement(p.GridColumnMenuItem,{title:f.toLanguageString(c,l.messages[c]),iconClass:i?"k-i-ungroup":"k-i-group",svgIcon:i?a.ungroupIcon:a.groupIcon,onClick:o}))};exports.GridColumnMenuGroup=M;
@@ -7,8 +7,8 @@
7
7
  */
8
8
  "use client";
9
9
  import * as m from "react";
10
- import { useLocalization as a } from "@progress/kendo-react-intl";
11
- import { GridColumnMenuItemGroup as g } from "./GridColumnMenuItemGroup.mjs";
10
+ import { useLocalization as g } from "@progress/kendo-react-intl";
11
+ import { GridColumnMenuItemGroup as s } from "./GridColumnMenuItemGroup.mjs";
12
12
  import { GridColumnMenuItem as d } from "./GridColumnMenuItem.mjs";
13
13
  import { messages as C, groupColumn as p, ungroupColumn as G } from "../messages/index.mjs";
14
14
  import { groupIcon as I, ungroupIcon as M } from "@progress/kendo-svg-icons";
@@ -17,14 +17,14 @@ const L = (o) => {
17
17
  if (n.preventDefault(), o.onGroupChange) {
18
18
  if (!o.column.field)
19
19
  return;
20
- const e = (o.group || []).slice(), t = e.findIndex((s) => s.field === o.column.field);
20
+ const e = (o.group || []).slice(), t = e.findIndex((a) => a.field === o.column.field);
21
21
  t > -1 ? e.splice(t, 1) : e.push({
22
22
  field: o.column.field
23
23
  }), o.onGroupChange(e, n);
24
24
  }
25
25
  o.onCloseMenu && o.onCloseMenu();
26
- }, { group: i, column: l } = o, f = a(), u = !!(i && l.field && i.find((n) => n.field === l.field)), r = u ? G : p;
27
- return /* @__PURE__ */ m.createElement(g, null, /* @__PURE__ */ m.createElement(
26
+ }, { group: i, column: l } = o, f = g(), u = !!(i && l.field && i.find((n) => n.field === l.field)), r = u ? G : p;
27
+ return /* @__PURE__ */ m.createElement(s, null, /* @__PURE__ */ m.createElement(
28
28
  d,
29
29
  {
30
30
  title: f.toLanguageString(r, C[r]),
@@ -5,4 +5,5 @@
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 a=require("react"),o=require("@progress/kendo-react-common");function i(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const e in t)if(e!=="default"){const c=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(n,e,c.get?c:{enumerable:!0,get:()=>t[e]})}}return n.default=t,Object.freeze(n)}const r=i(a),u=t=>{const{title:n,iconClass:e,svgIcon:c,selected:l}=t;return r.createElement("div",{onClick:t.onClick,className:`k-columnmenu-item ${l?"k-selected":""}`},(e||c)&&r.createElement(o.IconWrap,{name:e&&o.toIconName(e),icon:c}),n)};exports.GridColumnMenuItem=u;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),o=require("@progress/kendo-react-common");function i(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const e in t)if(e!=="default"){const c=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(n,e,c.get?c:{enumerable:!0,get:()=>t[e]})}}return n.default=t,Object.freeze(n)}const r=i(l),u=t=>{const{title:n,iconClass:e,svgIcon:c,selected:a}=t;return r.createElement("div",{onClick:t.onClick,className:`k-columnmenu-item ${a?"k-selected":""}`},(e||c)&&r.createElement(o.IconWrap,{name:e&&o.toIconName(e),icon:c}),n)};exports.GridColumnMenuItem=u;
@@ -7,10 +7,10 @@
7
7
  */
8
8
  "use client";
9
9
  import * as c from "react";
10
- import { IconWrap as l, toIconName as i } from "@progress/kendo-react-common";
10
+ import { IconWrap as l, toIconName as a } from "@progress/kendo-react-common";
11
11
  const r = (t) => {
12
12
  const { title: o, iconClass: e, svgIcon: n, selected: m } = t;
13
- return /* @__PURE__ */ c.createElement("div", { onClick: t.onClick, className: `k-columnmenu-item ${m ? "k-selected" : ""}` }, (e || n) && /* @__PURE__ */ c.createElement(l, { name: e && i(e), icon: n }), o);
13
+ return /* @__PURE__ */ c.createElement("div", { onClick: t.onClick, className: `k-columnmenu-item ${m ? "k-selected" : ""}` }, (e || n) && /* @__PURE__ */ c.createElement(l, { name: e && a(e), icon: n }), o);
14
14
  };
15
15
  export {
16
16
  r as GridColumnMenuItem
@@ -5,4 +5,5 @@
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 l=require("react"),i=require("@progress/kendo-react-animation"),s=require("@progress/kendo-react-common");function u(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const c=u(l),m=e=>{const{children:n,id:t,className:o,style:r,show:a}=e;return c.createElement("div",{id:t,className:s.classNames("k-columnmenu-item-content",o),style:r,tabIndex:0},c.createElement(i.Reveal,{style:{position:"relative",display:"block"}},a?n:null))};exports.GridColumnMenuItemContent=m;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),i=require("@progress/kendo-react-animation"),s=require("@progress/kendo-react-common");function u(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const c=u(l),m=e=>{const{children:n,id:t,className:o,style:r,show:a}=e;return c.createElement("div",{id:t,className:s.classNames("k-columnmenu-item-content",o),style:r,tabIndex:0},c.createElement(i.Reveal,{style:{position:"relative",display:"block"}},a?n:null))};exports.GridColumnMenuItemContent=m;
@@ -9,10 +9,10 @@
9
9
  import * as e from "react";
10
10
  import { Reveal as a } from "@progress/kendo-react-animation";
11
11
  import { classNames as r } from "@progress/kendo-react-common";
12
- const u = (t) => {
13
- const { children: n, id: l, className: o, style: m, show: s } = t;
14
- return /* @__PURE__ */ e.createElement("div", { id: l, className: r("k-columnmenu-item-content", o), style: m, tabIndex: 0 }, /* @__PURE__ */ e.createElement(a, { style: { position: "relative", display: "block" } }, s ? n : null));
12
+ const d = (t) => {
13
+ const { children: n, id: o, className: l, style: m, show: s } = t;
14
+ return /* @__PURE__ */ e.createElement("div", { id: o, className: r("k-columnmenu-item-content", l), style: m, tabIndex: 0 }, /* @__PURE__ */ e.createElement(a, { style: { position: "relative", display: "block" } }, s ? n : null));
15
15
  };
16
16
  export {
17
- u as GridColumnMenuItemContent
17
+ d as GridColumnMenuItemContent
18
18
  };
@@ -5,4 +5,5 @@
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 o=require("react"),u=require("@progress/kendo-react-common");function a(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const l=a(o),s=e=>{const{children:n,id:t,className:r,style:c}=e;return l.createElement("div",{id:t,className:u.classNames("k-columnmenu-item-wrapper",r),style:c},n)};exports.GridColumnMenuItemGroup=s;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),a=require("@progress/kendo-react-common");function u(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const l=u(c),s=e=>{const{children:n,id:t,className:r,style:o}=e;return l.createElement("div",{id:t,className:a.classNames("k-columnmenu-item-wrapper",r),style:o},n)};exports.GridColumnMenuItemGroup=s;
@@ -7,11 +7,11 @@
7
7
  */
8
8
  "use client";
9
9
  import * as a from "react";
10
- import { classNames as c } from "@progress/kendo-react-common";
11
- const o = (e) => {
10
+ import { classNames as o } from "@progress/kendo-react-common";
11
+ const n = (e) => {
12
12
  const { children: m, id: r, className: t, style: s } = e;
13
- return /* @__PURE__ */ a.createElement("div", { id: r, className: c("k-columnmenu-item-wrapper", t), style: s }, m);
13
+ return /* @__PURE__ */ a.createElement("div", { id: r, className: o("k-columnmenu-item-wrapper", t), style: s }, m);
14
14
  };
15
15
  export {
16
- o as GridColumnMenuItemGroup
16
+ n as GridColumnMenuItemGroup
17
17
  };
@@ -5,4 +5,5 @@
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 v=require("react"),g=require("./GridColumnMenuItem.js"),O=require("./GridColumnMenuItemGroup.js"),j=require("../interfaces/GridSortSettings.js"),y=require("@progress/kendo-react-intl"),s=require("../messages/index.js"),C=require("@progress/kendo-svg-icons");function R(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const l=R(v),S="asc",M="desc",_={true:{asc:{asc:"",desc:"desc"},desc:{asc:"asc",desc:""},"":{asc:"asc",desc:"desc"}},false:{asc:{asc:"asc",desc:"desc"},desc:{asc:"asc",desc:"desc"},"":{asc:"asc",desc:"desc"}}},I=(e,n)=>n?n.findIndex(t=>t.field===e):-1,D=(e,n)=>!!(n&&e>-1&&n[e].dir===S),G=(e,n)=>!!(n&&e>-1&&n[e].dir===M),z=(e,n)=>{const t=I(e,n);return G(t,n)||D(t,n)},E=e=>{const n=c=>{o(c,S),e.onCloseMenu&&e.onCloseMenu()},t=c=>{o(c,M),e.onCloseMenu&&e.onCloseMenu()},o=(c,k)=>{if(c.preventDefault(),!e.onSortChange)return;const{allowUnsort:q,mode:A}=j.normalize(e.sortable||!1,!1),d=(e.sort||[]).filter(i=>i.field===e.column.field)[0],m=_[q][d&&d.dir||""][k],f=A==="single"?[]:(e.sort||[]).filter(i=>i.field!==e.column.field);m!==""&&e.column.field&&f.push({field:e.column.field,dir:m}),e.onSortChange(f,c)},{sort:r,column:b}=e,u=I(b.field,r),a=y.useLocalization();return l.createElement(O.GridColumnMenuItemGroup,null,l.createElement(g.GridColumnMenuItem,{title:a.toLanguageString(s.sortAscending,s.messages[s.sortAscending]),iconClass:"k-i-sort-asc-sm",svgIcon:C.sortAscSmallIcon,selected:D(u,r),onClick:n}),l.createElement(g.GridColumnMenuItem,{title:a.toLanguageString(s.sortDescending,s.messages[s.sortDescending]),iconClass:"k-i-sort-desc-sm",svgIcon:C.sortDescSmallIcon,selected:G(u,r),onClick:t}))};exports.GridColumnMenuSort=E;exports.isColumnMenuSortActive=z;
8
+ "use client";
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("react"),g=require("./GridColumnMenuItem.js"),j=require("./GridColumnMenuItemGroup.js"),C=require("../sortCommon.js"),y=require("@progress/kendo-react-intl"),c=require("../messages/index.js"),S=require("@progress/kendo-svg-icons");function R(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const l=R(O),M="asc",I="desc",D=(e,n)=>n?n.findIndex(t=>t.field===e):-1,b=(e,n)=>!!(n&&e>-1&&n[e].dir===M),k=(e,n)=>!!(n&&e>-1&&n[e].dir===I),_=(e,n)=>{const t=D(e,n);return k(t,n)||b(t,n)},z=e=>{const n=o=>{r(o,M),e.onCloseMenu&&e.onCloseMenu()},t=o=>{r(o,I),e.onCloseMenu&&e.onCloseMenu()},r=(o,q)=>{if(o.preventDefault(),!e.onSortChange)return;const{allowUnsort:A,mode:v}=C.normalize(e.sortable||!1,!1),d=(e.sort||[]).filter(i=>i.field===e.column.field)[0],m=C.sortSeqMap[A][d&&d.dir||""][q],f=v==="single"?[]:(e.sort||[]).filter(i=>i.field!==e.column.field);m!==""&&e.column.field&&f.push({field:e.column.field,dir:m}),e.onSortChange(f,o)},{sort:s,column:G}=e,u=D(G.field,s),a=y.useLocalization();return l.createElement(j.GridColumnMenuItemGroup,null,l.createElement(g.GridColumnMenuItem,{title:a.toLanguageString(c.sortAscending,c.messages[c.sortAscending]),iconClass:"k-i-sort-asc-sm",svgIcon:S.sortAscSmallIcon,selected:b(u,s),onClick:n}),l.createElement(g.GridColumnMenuItem,{title:a.toLanguageString(c.sortDescending,c.messages[c.sortDescending]),iconClass:"k-i-sort-desc-sm",svgIcon:S.sortDescSmallIcon,selected:k(u,s),onClick:t}))};exports.GridColumnMenuSort=z;exports.isColumnMenuSortActive=_;
@@ -6,55 +6,44 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- import * as l from "react";
9
+ import * as i from "react";
10
10
  import { GridColumnMenuItem as f } from "./GridColumnMenuItem.mjs";
11
11
  import { GridColumnMenuItemGroup as x } from "./GridColumnMenuItemGroup.mjs";
12
- import { normalize as z } from "../interfaces/GridSortSettings.mjs";
13
- import { useLocalization as L } from "@progress/kendo-react-intl";
12
+ import { normalize as z, sortSeqMap as L } from "../sortCommon.mjs";
13
+ import { useLocalization as R } from "@progress/kendo-react-intl";
14
14
  import { sortAscending as C, messages as g, sortDescending as S } from "../messages/index.mjs";
15
- import { sortAscSmallIcon as R, sortDescSmallIcon as w } from "@progress/kendo-svg-icons";
16
- const D = "asc", I = "desc", _ = {
17
- true: {
18
- asc: { asc: "", desc: "desc" },
19
- desc: { asc: "asc", desc: "" },
20
- "": { asc: "asc", desc: "desc" }
21
- },
22
- false: {
23
- asc: { asc: "asc", desc: "desc" },
24
- desc: { asc: "asc", desc: "desc" },
25
- "": { asc: "asc", desc: "desc" }
26
- }
27
- }, M = (e, c) => c ? c.findIndex((n) => n.field === e) : -1, k = (e, c) => !!(c && e > -1 && c[e].dir === D), A = (e, c) => !!(c && e > -1 && c[e].dir === I), F = (e, c) => {
28
- const n = M(e, c);
29
- return A(n, c) || k(n, c);
15
+ import { sortAscSmallIcon as w, sortDescSmallIcon as _ } from "@progress/kendo-svg-icons";
16
+ const D = "asc", I = "desc", M = (e, n) => n ? n.findIndex((o) => o.field === e) : -1, k = (e, n) => !!(n && e > -1 && n[e].dir === D), A = (e, n) => !!(n && e > -1 && n[e].dir === I), F = (e, n) => {
17
+ const o = M(e, n);
18
+ return A(o, n) || k(o, n);
30
19
  }, H = (e) => {
31
- const c = (s) => {
32
- r(s, D), e.onCloseMenu && e.onCloseMenu();
33
- }, n = (s) => {
34
- r(s, I), e.onCloseMenu && e.onCloseMenu();
35
- }, r = (s, G) => {
36
- if (s.preventDefault(), !e.onSortChange)
20
+ const n = (t) => {
21
+ l(t, D), e.onCloseMenu && e.onCloseMenu();
22
+ }, o = (t) => {
23
+ l(t, I), e.onCloseMenu && e.onCloseMenu();
24
+ }, l = (t, G) => {
25
+ if (t.preventDefault(), !e.onSortChange)
37
26
  return;
38
- const { allowUnsort: h, mode: v } = z(e.sortable || !1, !1), d = (e.sort || []).filter((o) => o.field === e.column.field)[0], m = _[h][d && d.dir || ""][G], u = v === "single" ? [] : (e.sort || []).filter((o) => o.field !== e.column.field);
39
- m !== "" && e.column.field && u.push({ field: e.column.field, dir: m }), e.onSortChange(u, s);
40
- }, { sort: t, column: E } = e, i = M(E.field, t), a = L();
41
- return /* @__PURE__ */ l.createElement(x, null, /* @__PURE__ */ l.createElement(
27
+ const { allowUnsort: h, mode: v } = z(e.sortable || !1, !1), u = (e.sort || []).filter((r) => r.field === e.column.field)[0], a = L[h][u && u.dir || ""][G], d = v === "single" ? [] : (e.sort || []).filter((r) => r.field !== e.column.field);
28
+ a !== "" && e.column.field && d.push({ field: e.column.field, dir: a }), e.onSortChange(d, t);
29
+ }, { sort: c, column: E } = e, s = M(E.field, c), m = R();
30
+ return /* @__PURE__ */ i.createElement(x, null, /* @__PURE__ */ i.createElement(
42
31
  f,
43
32
  {
44
- title: a.toLanguageString(C, g[C]),
33
+ title: m.toLanguageString(C, g[C]),
45
34
  iconClass: "k-i-sort-asc-sm",
46
- svgIcon: R,
47
- selected: k(i, t),
48
- onClick: c
35
+ svgIcon: w,
36
+ selected: k(s, c),
37
+ onClick: n
49
38
  }
50
- ), /* @__PURE__ */ l.createElement(
39
+ ), /* @__PURE__ */ i.createElement(
51
40
  f,
52
41
  {
53
- title: a.toLanguageString(S, g[S]),
42
+ title: m.toLanguageString(S, g[S]),
54
43
  iconClass: "k-i-sort-desc-sm",
55
- svgIcon: w,
56
- selected: A(i, t),
57
- onClick: n
44
+ svgIcon: _,
45
+ selected: A(s, c),
46
+ onClick: o
58
47
  }
59
48
  ));
60
49
  };