@progress/kendo-react-grid 11.0.0-develop.9 → 11.0.1-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 (190) hide show
  1. package/BasePDFExport.js +8 -0
  2. package/BasePDFExport.mjs +52 -0
  3. package/Grid.js +1 -1
  4. package/Grid.mjs +13 -18
  5. package/GridClientWrapper.js +1 -1
  6. package/GridClientWrapper.mjs +300 -288
  7. package/GridComponent.js +1 -1
  8. package/GridComponent.mjs +387 -429
  9. package/GridPdfExportButton.js +8 -0
  10. package/GridPdfExportButton.mjs +35 -0
  11. package/GridSearchBox.js +1 -1
  12. package/GridSearchBox.mjs +1 -1
  13. package/GridToolbar.js +1 -1
  14. package/GridToolbar.mjs +15 -20
  15. package/StatusBar.js +1 -1
  16. package/StatusBar.mjs +23 -23
  17. package/cells/GridFilterCell.js +1 -1
  18. package/cells/GridFilterCell.mjs +46 -46
  19. package/cells/datacell/GridCell.js +1 -1
  20. package/cells/datacell/GridCell.mjs +9 -15
  21. package/cells/datacell/GridCellServerContainer.js +1 -1
  22. package/cells/datacell/GridCellServerContainer.mjs +1 -1
  23. package/cells/datacell/useCellClientTdProps.js +1 -1
  24. package/cells/datacell/useCellClientTdProps.mjs +1 -1
  25. package/cells/editcell/GridEditCell.js +1 -1
  26. package/cells/editcell/GridEditCell.mjs +7 -13
  27. package/cells/editcell/GridEditCellEditor.js +1 -1
  28. package/cells/editcell/GridEditCellEditor.mjs +1 -1
  29. package/cells/editcell/GridEditCellServerContainer.js +1 -1
  30. package/cells/editcell/GridEditCellServerContainer.mjs +1 -1
  31. package/cells/groupcell/GridGroupCell.js +1 -1
  32. package/cells/groupcell/GridGroupCell.mjs +8 -10
  33. package/cells/groupcell/GridGroupCellServerContainer.js +1 -1
  34. package/cells/groupcell/GridGroupCellServerContainer.mjs +1 -1
  35. package/cells/groupcell/GridGroupCellToggle.js +1 -1
  36. package/cells/groupcell/GridGroupCellToggle.mjs +1 -1
  37. package/cells/groupcell/useGroupCellClientTdProps.js +1 -1
  38. package/cells/groupcell/useGroupCellClientTdProps.mjs +1 -1
  39. package/cells/hierarchycell/GridHierarchyCell.js +1 -1
  40. package/cells/hierarchycell/GridHierarchyCell.mjs +8 -14
  41. package/cells/hierarchycell/GridHierarchyCellServerContainer.js +1 -1
  42. package/cells/hierarchycell/GridHierarchyCellServerContainer.mjs +1 -1
  43. package/cells/hierarchycell/GridHierarchyCellToggle.js +1 -1
  44. package/cells/hierarchycell/GridHierarchyCellToggle.mjs +1 -1
  45. package/cells/hierarchycell/useHierarchyCellClientTdProps.js +1 -1
  46. package/cells/hierarchycell/useHierarchyCellClientTdProps.mjs +15 -18
  47. package/cells/hooks.js +1 -1
  48. package/cells/hooks.mjs +1 -1
  49. package/cells/rowreordercell/useRowReorderCellClientTdProps.js +1 -1
  50. package/cells/rowreordercell/useRowReorderCellClientTdProps.mjs +1 -1
  51. package/cells/selectioncell/GridSelectionCell.js +1 -1
  52. package/cells/selectioncell/GridSelectionCell.mjs +7 -13
  53. package/cells/selectioncell/GridSelectionCellInput.js +1 -1
  54. package/cells/selectioncell/GridSelectionCellInput.mjs +1 -1
  55. package/cells/selectioncell/GridSelectionCellServerContainer.js +1 -1
  56. package/cells/selectioncell/GridSelectionCellServerContainer.mjs +1 -1
  57. package/codemods/v11/cell-render.js +9 -0
  58. package/codemods/v11/column-cell.js +9 -0
  59. package/codemods/v11/column-filter-cell.js +9 -0
  60. package/codemods/v11/column-footer-cell.js +9 -0
  61. package/codemods/v11/column-header-cell.js +9 -0
  62. package/codemods/v11/detail-expand-state.js +9 -0
  63. package/codemods/v11/edit-state.js +9 -0
  64. package/codemods/v11/filter-cell-render.js +9 -0
  65. package/codemods/v11/group-expand-state.js +9 -0
  66. package/codemods/v11/header-cell-render.js +9 -0
  67. package/codemods/v11/index.js +9 -0
  68. package/codemods/v11/row-render.js +9 -0
  69. package/codemods/v11/selection-state.js +9 -0
  70. package/codemods/v11/utils.js +9 -0
  71. package/columnMenu/GridColumnMenuCheckboxFilter.js +1 -1
  72. package/columnMenu/GridColumnMenuCheckboxFilter.mjs +3 -2
  73. package/columnMenu/GridColumnMenuColumnsChooser.js +1 -1
  74. package/columnMenu/GridColumnMenuColumnsChooser.mjs +1 -1
  75. package/columnMenu/GridColumnMenuFilter.js +1 -1
  76. package/columnMenu/GridColumnMenuFilter.mjs +1 -1
  77. package/columnMenu/GridColumnMenuFilterCell.js +1 -1
  78. package/columnMenu/GridColumnMenuFilterCell.mjs +35 -28
  79. package/columnMenu/GridColumnMenuFilterUI.js +1 -1
  80. package/columnMenu/GridColumnMenuFilterUI.mjs +1 -1
  81. package/columnMenu/GridColumnMenuItem.js +1 -1
  82. package/columnMenu/GridColumnMenuItem.mjs +1 -1
  83. package/columnMenu/GridColumnMenuWrapper.js +1 -1
  84. package/columnMenu/GridColumnMenuWrapper.mjs +62 -49
  85. package/columnMenu/adaptiveContent/GridAdaptiveCheckboxFilter.js +1 -1
  86. package/columnMenu/adaptiveContent/GridAdaptiveCheckboxFilter.mjs +1 -1
  87. package/columnMenu/adaptiveContent/GridAdaptiveColumnChooser.js +1 -1
  88. package/columnMenu/adaptiveContent/GridAdaptiveColumnChooser.mjs +1 -1
  89. package/columnMenu/adaptiveContent/GridAdaptiveColumnMenu.js +1 -1
  90. package/columnMenu/adaptiveContent/GridAdaptiveColumnMenu.mjs +2 -2
  91. package/columnMenu/adaptiveContent/GridAdaptiveFilterMenu.js +1 -1
  92. package/columnMenu/adaptiveContent/GridAdaptiveFilterMenu.mjs +1 -1
  93. package/components/GridContainerElementContainer.js +1 -1
  94. package/components/GridContainerElementContainer.mjs +1 -1
  95. package/components/GridDragClue.js +1 -1
  96. package/components/GridDragClue.mjs +1 -1
  97. package/components/GridDraggableRowsContainer.js +1 -1
  98. package/components/GridDraggableRowsContainer.mjs +1 -1
  99. package/components/GridDropClue.js +1 -1
  100. package/components/GridDropClue.mjs +1 -1
  101. package/components/GridEditDialog.js +1 -1
  102. package/components/GridEditDialog.mjs +1 -1
  103. package/components/GridElementContainer.js +1 -1
  104. package/components/GridElementContainer.mjs +1 -1
  105. package/components/PagerContainer.js +1 -1
  106. package/components/PagerContainer.mjs +1 -1
  107. package/components/VirtualScrollHeightContainer.js +1 -1
  108. package/components/VirtualScrollHeightContainer.mjs +1 -1
  109. package/components/colGroup/GridColGroup.js +1 -1
  110. package/components/colGroup/GridColGroup.mjs +1 -1
  111. package/components/noRecords/GridNoRecordsContainer.js +1 -1
  112. package/components/noRecords/GridNoRecordsContainer.mjs +1 -1
  113. package/components/table/GridTable.js +1 -1
  114. package/components/table/GridTable.mjs +1 -1
  115. package/components/table/GridTableBody.js +1 -1
  116. package/components/table/GridTableBody.mjs +1 -1
  117. package/components/table/GridTableScrollable.js +1 -1
  118. package/components/table/GridTableScrollable.mjs +1 -1
  119. package/dist/cdn/js/kendo-react-grid.js +1 -1
  120. package/footer/Footer.js +1 -1
  121. package/footer/Footer.mjs +1 -1
  122. package/footer/FooterCell.js +1 -1
  123. package/footer/FooterCell.mjs +14 -14
  124. package/footer/client/FooterCellContainer.js +1 -1
  125. package/footer/client/FooterCellContainer.mjs +1 -1
  126. package/header/FilterRow.js +1 -1
  127. package/header/FilterRow.mjs +42 -46
  128. package/header/GridHeaderCell.js +1 -1
  129. package/header/GridHeaderCell.mjs +11 -11
  130. package/header/GridHeaderSelectionCell.js +1 -1
  131. package/header/GridHeaderSelectionCell.mjs +14 -14
  132. package/header/GroupPanel.js +1 -1
  133. package/header/GroupPanel.mjs +1 -1
  134. package/header/Header.js +1 -1
  135. package/header/Header.mjs +1 -1
  136. package/header/HeaderRow.js +1 -1
  137. package/header/HeaderRow.mjs +19 -20
  138. package/header/client/GridFilterCellContainer.js +1 -1
  139. package/header/client/GridFilterCellContainer.mjs +11 -12
  140. package/header/client/GridFilterCellElementContainer.js +1 -1
  141. package/header/client/GridFilterCellElementContainer.mjs +1 -1
  142. package/header/client/GridHeaderCellContainer.js +1 -1
  143. package/header/client/GridHeaderCellContainer.mjs +7 -8
  144. package/header/client/GridHeaderCellElementContainer.js +1 -1
  145. package/header/client/GridHeaderCellElementContainer.mjs +1 -1
  146. package/header/client/GridHeaderRowContainer.js +1 -1
  147. package/header/client/GridHeaderRowContainer.mjs +1 -1
  148. package/header/client/HeaderCellResizer.js +1 -1
  149. package/header/client/HeaderCellResizer.mjs +1 -1
  150. package/header/client/HeaderRowDraggable.js +1 -1
  151. package/header/client/HeaderRowDraggable.mjs +1 -1
  152. package/index.d.mts +293 -186
  153. package/index.d.ts +293 -186
  154. package/index.js +1 -1
  155. package/index.mjs +81 -71
  156. package/messages/index.js +1 -1
  157. package/messages/index.mjs +94 -76
  158. package/package-metadata.js +1 -1
  159. package/package-metadata.mjs +2 -2
  160. package/package.json +77 -21
  161. package/rows/GridRow.js +1 -1
  162. package/rows/GridRow.mjs +32 -33
  163. package/toolbar-tools/GridToolbarCheckboxFilter.js +8 -0
  164. package/toolbar-tools/GridToolbarCheckboxFilter.mjs +312 -0
  165. package/toolbar-tools/GridToolbarColumnsChooser.js +8 -0
  166. package/toolbar-tools/GridToolbarColumnsChooser.mjs +178 -0
  167. package/toolbar-tools/GridToolbarFilter.js +8 -0
  168. package/toolbar-tools/GridToolbarFilter.mjs +276 -0
  169. package/toolbar-tools/GridToolbarSort.js +8 -0
  170. package/toolbar-tools/GridToolbarSort.mjs +146 -0
  171. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarCheckboxFilter.js +9 -0
  172. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarCheckboxFilter.mjs +114 -0
  173. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarColumnChooser.js +9 -0
  174. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarColumnChooser.mjs +89 -0
  175. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.js +9 -0
  176. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.mjs +98 -0
  177. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.js +9 -0
  178. package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.mjs +68 -0
  179. package/toolbar-tools/adaptiveContext/GridToolbarAdaptiveContext.js +9 -0
  180. package/toolbar-tools/adaptiveContext/GridToolbarAdaptiveContext.mjs +17 -0
  181. package/utils/GridContext.js +9 -0
  182. package/{codemods/index.js → utils/GridContext.mjs} +6 -1
  183. package/utils/index.js +1 -1
  184. package/utils/index.mjs +145 -148
  185. package/utils/premium.js +1 -1
  186. package/utils/premium.mjs +26 -25
  187. package/utils/virtualColumns.js +1 -1
  188. package/utils/virtualColumns.mjs +13 -7
  189. package/components/GridCustomCellClientContainer.js +0 -9
  190. package/components/GridCustomCellClientContainer.mjs +0 -34
@@ -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 strict";const t=require("./utils.js");function b(h,E){const e=E.jscodeshift,d=e(h.source),a=h.path.endsWith(".ts")||h.path.endsWith(".tsx");let c=!1;const u=new Set;d.find(e.Identifier).forEach(s=>{u.add(s.node.name)});const r=t.generateUniqueName("handleEditChange",u),p=t.findImportedName(e,d,"Grid","@progress/kendo-react-grid")||"Grid";return d.find(e.JSXElement,{openingElement:{name:{name:p}}}).forEach(s=>{const n=s.node.openingElement.attributes,m=n==null?void 0:n.find(i=>i.type==="JSXAttribute"&&i.name.name==="editField");if(!m)return;const l=m.value?e(m.value).toSource():"No value provided";t.removeAttribute(n,"editField"),c=!0,t.hasJSXAttribute(n,"editable")||t.addStateAttribute(e,n,"editable","true"),t.hasJSXAttribute(n,"dataItemKey")||t.addStateAttribute(e,n,"dataItemKey",'"insert dataItemKey here"');const{isClassComponent:g,isFunctionalComponent:C,parentNode:o}=t.findParentComponent(e,s);if(g){if(t.addStateDeclaration(e,o,"edit",e.objectExpression([])),t.hasJSXAttribute(n,"edit")||t.addStateAttribute(e,n,"edit","this.state.edit"),!t.hasJSXAttribute(n,"onItemChange")){t.addEventAttribute(e,n,"onItemChange","this.handleItemChange");const i=t.createClassMethod(e,"handleItemChange",[`event${a?": GridItemChangeEvent":""}`],[]);t.addMethodToComponent(e,o,i,!0)}if(!t.hasJSXAttribute(n,"onEditChange")){t.addEventAttribute(e,n,"onEditChange",`this.${r}`);const i=t.createClassMethod(e,r,[`event${a?": GridEditChangeEvent":""}`],[e.expressionStatement(e.callExpression(e.memberExpression(e.thisExpression(),e.identifier("setState")),[e.objectExpression([e.property("init",e.identifier("edit"),e.memberExpression(e.identifier("event"),e.identifier("edit")))])]))]);t.addCommentToMethod(e,e(i),`Original editField value: ${l}`,"class"),t.addMethodToComponent(e,o,i,!0)}}else if(C){if(t.addUseStateDeclaration(e,o,"edit","setEdit",e.objectExpression([]),a,"EditDescriptor"),t.hasJSXAttribute(n,"edit")||t.addStateAttribute(e,n,"edit","edit"),!t.hasJSXAttribute(n,"onItemChange")){t.addEventAttribute(e,n,"onItemChange","handleItemChange");const i=t.createArrowFunction(e,"handleItemChange",[`(event${a?": GridItemChangeEvent":""})`],[]);t.addMethodToComponent(e,o,i,!1)}if(!t.hasJSXAttribute(n,"onEditChange")){t.addEventAttribute(e,n,"onEditChange",`${r}`);const i=t.createArrowFunction(e,`${r}`,[`(event${a?": GridEditChangeEvent":""})`],[e.expressionStatement(e.callExpression(e.identifier("setEdit"),[e.memberExpression(e.identifier("event"),e.identifier("edit"))]))]);t.addCommentToMethod(e,e(i),`Original editField value: ${l}`,"function"),t.addMethodToComponent(e,o,i,!1)}}}),c&&a&&(t.ensureImportExists(e,d,"GridItemChangeEvent","@progress/kendo-react-grid"),t.ensureImportExists(e,d,"GridEditChangeEvent","@progress/kendo-react-grid"),t.ensureImportExists(e,d,"EditDescriptor","@progress/kendo-react-data-tools")),d.toSource()}module.exports=b;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1zdGF0ZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9jb2RlbW9kcy92MTEvZWRpdC1zdGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUEksIEZpbGVJbmZvLCBKU0NvZGVzaGlmdCwgSlNYQXR0cmlidXRlLCBKU1hTcHJlYWRBdHRyaWJ1dGUgfSBmcm9tICdqc2NvZGVzaGlmdCc7XG5pbXBvcnQge1xuICAgIGFkZE1ldGhvZFRvQ29tcG9uZW50LFxuICAgIHJlbW92ZUF0dHJpYnV0ZSxcbiAgICBmaW5kUGFyZW50Q29tcG9uZW50LFxuICAgIGdlbmVyYXRlVW5pcXVlTmFtZSxcbiAgICBlbnN1cmVJbXBvcnRFeGlzdHMsXG4gICAgYWRkRXZlbnRBdHRyaWJ1dGUsXG4gICAgYWRkU3RhdGVBdHRyaWJ1dGUsXG4gICAgYWRkU3RhdGVEZWNsYXJhdGlvbixcbiAgICBhZGRVc2VTdGF0ZURlY2xhcmF0aW9uLFxuICAgIGZpbmRJbXBvcnRlZE5hbWUsXG4gICAgY3JlYXRlQ2xhc3NNZXRob2QsXG4gICAgY3JlYXRlQXJyb3dGdW5jdGlvbixcbiAgICBoYXNKU1hBdHRyaWJ1dGUsXG4gICAgYWRkQ29tbWVudFRvTWV0aG9kXG59IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAoZmlsZUluZm86IEZpbGVJbmZvLCBhcGk6IEFQSSkge1xuICAgIGNvbnN0IGo6IEpTQ29kZXNoaWZ0ID0gYXBpLmpzY29kZXNoaWZ0O1xuICAgIGNvbnN0IHJvb3QgPSBqKGZpbGVJbmZvLnNvdXJjZSk7XG5cbiAgICAvLyBDaGVjayBpZiB0aGUgZmlsZSBpcyBUeXBlU2NyaXB0IG9yIFRTWFxuICAgIGNvbnN0IGlzVHlwZVNjcmlwdCA9IGZpbGVJbmZvLnBhdGguZW5kc1dpdGgoJy50cycpIHx8IGZpbGVJbmZvLnBhdGguZW5kc1dpdGgoJy50c3gnKTtcblxuICAgIGxldCBhZGRJbXBvcnRzID0gZmFsc2U7XG4gICAgY29uc3QgZXhpc3RpbmdOYW1lcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIHJvb3QuZmluZChqLklkZW50aWZpZXIpLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgZXhpc3RpbmdOYW1lcy5hZGQocGF0aC5ub2RlLm5hbWUpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgYmFzZU5hbWUgPSAnaGFuZGxlRWRpdENoYW5nZSc7XG4gICAgY29uc3QgdW5pcXVlTmFtZSA9IGdlbmVyYXRlVW5pcXVlTmFtZShiYXNlTmFtZSwgZXhpc3RpbmdOYW1lcyk7XG5cbiAgICAvLyBEeW5hbWljYWxseSByZXNvbHZlIHRoZSBpbXBvcnRlZCBuYW1lIGZvciBgR3JpZGBcbiAgICBjb25zdCBncmlkTmFtZSA9IGZpbmRJbXBvcnRlZE5hbWUoaiwgcm9vdCwgJ0dyaWQnLCAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWdyaWQnKSB8fCAnR3JpZCc7XG5cbiAgICAvLyBGaW5kIGFsbCBKU1hFbGVtZW50cyB3aXRoIHRoZSBuYW1lIG9mIHRoZSByZXNvbHZlZCBgR3JpZGAgY29tcG9uZW50XG4gICAgY29uc3QgZ3JpZEVsZW1lbnRzID0gcm9vdC5maW5kKGouSlNYRWxlbWVudCwgeyBvcGVuaW5nRWxlbWVudDogeyBuYW1lOiB7IG5hbWU6IGdyaWROYW1lIH0gfSB9KTtcblxuICAgIGdyaWRFbGVtZW50cy5mb3JFYWNoKChncmlkUGF0aCkgPT4ge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVzID0gZ3JpZFBhdGgubm9kZS5vcGVuaW5nRWxlbWVudC5hdHRyaWJ1dGVzO1xuXG4gICAgICAgIC8vIENoZWNrIGlmIHRoZSBgZWRpdEZpZWxkYCBhdHRyaWJ1dGUgZXhpc3RzXG4gICAgICAgIGNvbnN0IGVkaXRGaWVsZEF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXM/LmZpbmQoXG4gICAgICAgICAgICAoYXR0cikgPT4gYXR0ci50eXBlID09PSAnSlNYQXR0cmlidXRlJyAmJiBhdHRyLm5hbWUubmFtZSA9PT0gJ2VkaXRGaWVsZCdcbiAgICAgICAgKSBhcyBKU1hBdHRyaWJ1dGU7XG5cbiAgICAgICAgaWYgKCFlZGl0RmllbGRBdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIHJldHVybjsgLy8gU2tpcCB0aGlzIEdyaWQgaWYgYGVkaXRGaWVsZGAgaXMgbm90IHByZXNlbnRcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvcHkgdGhlIHZhbHVlIG9mIGBlZGl0RmllbGRgIGFzIGEgY29tbWVudFxuICAgICAgICBjb25zdCBlZGl0RmllbGRWYWx1ZSA9IGVkaXRGaWVsZEF0dHJpYnV0ZS52YWx1ZSA/IGooZWRpdEZpZWxkQXR0cmlidXRlLnZhbHVlKS50b1NvdXJjZSgpIDogJ05vIHZhbHVlIHByb3ZpZGVkJztcblxuICAgICAgICAvLyBSZW1vdmUgdGhlIGBlZGl0RmllbGRgIGF0dHJpYnV0ZVxuICAgICAgICByZW1vdmVBdHRyaWJ1dGUoYXR0cmlidXRlcyBhcyAoSlNYQXR0cmlidXRlIHwgSlNYU3ByZWFkQXR0cmlidXRlKVtdLCAnZWRpdEZpZWxkJyk7XG4gICAgICAgIGFkZEltcG9ydHMgPSB0cnVlO1xuXG4gICAgICAgIC8vIEVuc3VyZSBgZWRpdGFibGVgIGF0dHJpYnV0ZSBpcyBwcmVzZW50IGFuZCBzZXQgdG8gdHJ1ZVxuICAgICAgICBpZiAoIWhhc0pTWEF0dHJpYnV0ZShhdHRyaWJ1dGVzLCAnZWRpdGFibGUnKSkge1xuICAgICAgICAgICAgYWRkU3RhdGVBdHRyaWJ1dGUoaiwgYXR0cmlidXRlcyBhcyAoSlNYQXR0cmlidXRlIHwgSlNYU3ByZWFkQXR0cmlidXRlKVtdLCAnZWRpdGFibGUnLCAndHJ1ZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRW5zdXJlIGBkYXRhSXRlbUtleWAgYXR0cmlidXRlIGlzIHByZXNlbnRcbiAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ2RhdGFJdGVtS2V5JykpIHtcbiAgICAgICAgICAgIGFkZFN0YXRlQXR0cmlidXRlKFxuICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlcyBhcyAoSlNYQXR0cmlidXRlIHwgSlNYU3ByZWFkQXR0cmlidXRlKVtdLFxuICAgICAgICAgICAgICAgICdkYXRhSXRlbUtleScsXG4gICAgICAgICAgICAgICAgJ1wiaW5zZXJ0IGRhdGFJdGVtS2V5IGhlcmVcIidcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEZXRlcm1pbmUgaWYgdGhlIHBhcmVudCBjb21wb25lbnQgaXMgYSBjbGFzcyBvciBmdW5jdGlvbmFsIGNvbXBvbmVudFxuICAgICAgICBjb25zdCB7IGlzQ2xhc3NDb21wb25lbnQsIGlzRnVuY3Rpb25hbENvbXBvbmVudCwgcGFyZW50Tm9kZSB9ID0gZmluZFBhcmVudENvbXBvbmVudChqLCBncmlkUGF0aCk7XG5cbiAgICAgICAgaWYgKGlzQ2xhc3NDb21wb25lbnQpIHtcbiAgICAgICAgICAgIC8vIEFkZCBgZWRpdGAgdG8gdGhlIGNsYXNzIGNvbXBvbmVudCdzIHN0YXRlXG4gICAgICAgICAgICBhZGRTdGF0ZURlY2xhcmF0aW9uKGosIHBhcmVudE5vZGUsICdlZGl0Jywgai5vYmplY3RFeHByZXNzaW9uKFtdKSk7XG5cbiAgICAgICAgICAgIC8vIEFkZCBgZWRpdGAsIGBvbkl0ZW1DaGFuZ2VgLCBhbmQgYG9uRWRpdENoYW5nZWAgYXR0cmlidXRlc1xuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ2VkaXQnKSkge1xuICAgICAgICAgICAgICAgIGFkZFN0YXRlQXR0cmlidXRlKGosIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSwgJ2VkaXQnLCAndGhpcy5zdGF0ZS5lZGl0Jyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghaGFzSlNYQXR0cmlidXRlKGF0dHJpYnV0ZXMsICdvbkl0ZW1DaGFuZ2UnKSkge1xuICAgICAgICAgICAgICAgIGFkZEV2ZW50QXR0cmlidXRlKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzIGFzIChKU1hBdHRyaWJ1dGUgfCBKU1hTcHJlYWRBdHRyaWJ1dGUpW10sXG4gICAgICAgICAgICAgICAgICAgICdvbkl0ZW1DaGFuZ2UnLFxuICAgICAgICAgICAgICAgICAgICAndGhpcy5oYW5kbGVJdGVtQ2hhbmdlJ1xuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVJdGVtQ2hhbmdlTWV0aG9kID0gY3JlYXRlQ2xhc3NNZXRob2QoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgICdoYW5kbGVJdGVtQ2hhbmdlJyxcbiAgICAgICAgICAgICAgICAgICAgW2BldmVudCR7aXNUeXBlU2NyaXB0ID8gJzogR3JpZEl0ZW1DaGFuZ2VFdmVudCcgOiAnJ31gXSxcbiAgICAgICAgICAgICAgICAgICAgW10gLy8gRW1wdHkgYmxvY2sgZm9yIG5vd1xuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBhZGRNZXRob2RUb0NvbXBvbmVudChqLCBwYXJlbnROb2RlLCBoYW5kbGVJdGVtQ2hhbmdlTWV0aG9kLCB0cnVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ29uRWRpdENoYW5nZScpKSB7XG4gICAgICAgICAgICAgICAgYWRkRXZlbnRBdHRyaWJ1dGUoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSxcbiAgICAgICAgICAgICAgICAgICAgJ29uRWRpdENoYW5nZScsXG4gICAgICAgICAgICAgICAgICAgIGB0aGlzLiR7dW5pcXVlTmFtZX1gXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGhhbmRsZUVkaXRDaGFuZ2VNZXRob2QgPSBjcmVhdGVDbGFzc01ldGhvZChcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgdW5pcXVlTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgW2BldmVudCR7aXNUeXBlU2NyaXB0ID8gJzogR3JpZEVkaXRDaGFuZ2VFdmVudCcgOiAnJ31gXSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgai5leHByZXNzaW9uU3RhdGVtZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGouY2FsbEV4cHJlc3Npb24oai5tZW1iZXJFeHByZXNzaW9uKGoudGhpc0V4cHJlc3Npb24oKSwgai5pZGVudGlmaWVyKCdzZXRTdGF0ZScpKSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqLm9iamVjdEV4cHJlc3Npb24oW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5wcm9wZXJ0eShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5pZGVudGlmaWVyKCdlZGl0JyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5tZW1iZXJFeHByZXNzaW9uKGouaWRlbnRpZmllcignZXZlbnQnKSwgai5pZGVudGlmaWVyKCdlZGl0JykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgdGhlIGBlZGl0RmllbGRgIHZhbHVlIGFzIGEgY29tbWVudCBpbiB0aGUgbWV0aG9kXG4gICAgICAgICAgICAgICAgYWRkQ29tbWVudFRvTWV0aG9kKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICBqKGhhbmRsZUVkaXRDaGFuZ2VNZXRob2QpLFxuICAgICAgICAgICAgICAgICAgICBgT3JpZ2luYWwgZWRpdEZpZWxkIHZhbHVlOiAke2VkaXRGaWVsZFZhbHVlfWAsXG4gICAgICAgICAgICAgICAgICAgICdjbGFzcydcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgYWRkTWV0aG9kVG9Db21wb25lbnQoaiwgcGFyZW50Tm9kZSwgaGFuZGxlRWRpdENoYW5nZU1ldGhvZCwgdHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoaXNGdW5jdGlvbmFsQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAvLyBBZGQgYFJlYWN0LnVzZVN0YXRlYCBmb3IgYGVkaXRgXG4gICAgICAgICAgICBhZGRVc2VTdGF0ZURlY2xhcmF0aW9uKFxuICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgcGFyZW50Tm9kZSxcbiAgICAgICAgICAgICAgICAnZWRpdCcsXG4gICAgICAgICAgICAgICAgJ3NldEVkaXQnLFxuICAgICAgICAgICAgICAgIGoub2JqZWN0RXhwcmVzc2lvbihbXSksXG4gICAgICAgICAgICAgICAgaXNUeXBlU2NyaXB0LFxuICAgICAgICAgICAgICAgICdFZGl0RGVzY3JpcHRvcidcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIC8vIEFkZCBgZWRpdGAsIGBvbkl0ZW1DaGFuZ2VgLCBhbmQgYG9uRWRpdENoYW5nZWAgYXR0cmlidXRlc1xuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ2VkaXQnKSkge1xuICAgICAgICAgICAgICAgIGFkZFN0YXRlQXR0cmlidXRlKGosIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSwgJ2VkaXQnLCAnZWRpdCcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWhhc0pTWEF0dHJpYnV0ZShhdHRyaWJ1dGVzLCAnb25JdGVtQ2hhbmdlJykpIHtcbiAgICAgICAgICAgICAgICBhZGRFdmVudEF0dHJpYnV0ZShcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlcyBhcyAoSlNYQXR0cmlidXRlIHwgSlNYU3ByZWFkQXR0cmlidXRlKVtdLFxuICAgICAgICAgICAgICAgICAgICAnb25JdGVtQ2hhbmdlJyxcbiAgICAgICAgICAgICAgICAgICAgJ2hhbmRsZUl0ZW1DaGFuZ2UnXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGhhbmRsZUl0ZW1DaGFuZ2VGdW5jdGlvbiA9IGNyZWF0ZUFycm93RnVuY3Rpb24oXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgICdoYW5kbGVJdGVtQ2hhbmdlJyxcbiAgICAgICAgICAgICAgICAgICAgW2AoZXZlbnQke2lzVHlwZVNjcmlwdCA/ICc6IEdyaWRJdGVtQ2hhbmdlRXZlbnQnIDogJyd9KWBdLFxuICAgICAgICAgICAgICAgICAgICBbXSAvLyBFbXB0eSBibG9jayBmb3Igbm93XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBhZGRNZXRob2RUb0NvbXBvbmVudChqLCBwYXJlbnROb2RlLCBoYW5kbGVJdGVtQ2hhbmdlRnVuY3Rpb24sIGZhbHNlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ29uRWRpdENoYW5nZScpKSB7XG4gICAgICAgICAgICAgICAgYWRkRXZlbnRBdHRyaWJ1dGUoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSxcbiAgICAgICAgICAgICAgICAgICAgJ29uRWRpdENoYW5nZScsXG4gICAgICAgICAgICAgICAgICAgIGAke3VuaXF1ZU5hbWV9YFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVFZGl0Q2hhbmdlRnVuY3Rpb24gPSBjcmVhdGVBcnJvd0Z1bmN0aW9uKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICBgJHt1bmlxdWVOYW1lfWAsXG4gICAgICAgICAgICAgICAgICAgIFtgKGV2ZW50JHtpc1R5cGVTY3JpcHQgPyAnOiBHcmlkRWRpdENoYW5nZUV2ZW50JyA6ICcnfSlgXSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgai5leHByZXNzaW9uU3RhdGVtZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGouY2FsbEV4cHJlc3Npb24oai5pZGVudGlmaWVyKCdzZXRFZGl0JyksIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5tZW1iZXJFeHByZXNzaW9uKGouaWRlbnRpZmllcignZXZlbnQnKSwgai5pZGVudGlmaWVyKCdlZGl0JykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgdGhlIGBlZGl0RmllbGRgIHZhbHVlIGFzIGEgY29tbWVudCBpbiB0aGUgZnVuY3Rpb25cbiAgICAgICAgICAgICAgICBhZGRDb21tZW50VG9NZXRob2QoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGooaGFuZGxlRWRpdENoYW5nZUZ1bmN0aW9uKSxcbiAgICAgICAgICAgICAgICAgICAgYE9yaWdpbmFsIGVkaXRGaWVsZCB2YWx1ZTogJHtlZGl0RmllbGRWYWx1ZX1gLFxuICAgICAgICAgICAgICAgICAgICAnZnVuY3Rpb24nXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGFkZE1ldGhvZFRvQ29tcG9uZW50KGosIHBhcmVudE5vZGUsIGhhbmRsZUVkaXRDaGFuZ2VGdW5jdGlvbiwgZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoYWRkSW1wb3J0cyAmJiBpc1R5cGVTY3JpcHQpIHtcbiAgICAgICAgLy8gRW5zdXJlIFR5cGVTY3JpcHQgaW1wb3J0c1xuICAgICAgICBlbnN1cmVJbXBvcnRFeGlzdHMoaiwgcm9vdCwgJ0dyaWRJdGVtQ2hhbmdlRXZlbnQnLCAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWdyaWQnKTtcbiAgICAgICAgZW5zdXJlSW1wb3J0RXhpc3RzKGosIHJvb3QsICdHcmlkRWRpdENoYW5nZUV2ZW50JywgJ0Bwcm9ncmVzcy9rZW5kby1yZWFjdC1ncmlkJyk7XG4gICAgICAgIGVuc3VyZUltcG9ydEV4aXN0cyhqLCByb290LCAnRWRpdERlc2NyaXB0b3InLCAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWRhdGEtdG9vbHMnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm9vdC50b1NvdXJjZSgpO1xufVxuIl0sIm5hbWVzIjpbImVkaXRTdGF0ZSIsImZpbGVJbmZvIiwiYXBpIiwiaiIsInJvb3QiLCJpc1R5cGVTY3JpcHQiLCJhZGRJbXBvcnRzIiwiZXhpc3RpbmdOYW1lcyIsInBhdGgiLCJ1bmlxdWVOYW1lIiwiZ2VuZXJhdGVVbmlxdWVOYW1lIiwiZ3JpZE5hbWUiLCJmaW5kSW1wb3J0ZWROYW1lIiwiZ3JpZFBhdGgiLCJhdHRyaWJ1dGVzIiwiZWRpdEZpZWxkQXR0cmlidXRlIiwiYXR0ciIsImVkaXRGaWVsZFZhbHVlIiwicmVtb3ZlQXR0cmlidXRlIiwiaGFzSlNYQXR0cmlidXRlIiwiYWRkU3RhdGVBdHRyaWJ1dGUiLCJpc0NsYXNzQ29tcG9uZW50IiwiaXNGdW5jdGlvbmFsQ29tcG9uZW50IiwicGFyZW50Tm9kZSIsImZpbmRQYXJlbnRDb21wb25lbnQiLCJhZGRTdGF0ZURlY2xhcmF0aW9uIiwiYWRkRXZlbnRBdHRyaWJ1dGUiLCJoYW5kbGVJdGVtQ2hhbmdlTWV0aG9kIiwiY3JlYXRlQ2xhc3NNZXRob2QiLCJhZGRNZXRob2RUb0NvbXBvbmVudCIsImhhbmRsZUVkaXRDaGFuZ2VNZXRob2QiLCJhZGRDb21tZW50VG9NZXRob2QiLCJhZGRVc2VTdGF0ZURlY2xhcmF0aW9uIiwiaGFuZGxlSXRlbUNoYW5nZUZ1bmN0aW9uIiwiY3JlYXRlQXJyb3dGdW5jdGlvbiIsImhhbmRsZUVkaXRDaGFuZ2VGdW5jdGlvbiIsImVuc3VyZUltcG9ydEV4aXN0cyJdLCJtYXBwaW5ncyI6IjJDQWtCQSxTQUFBQSxFQUF5QkMsRUFBb0JDLEVBQVUsQ0FDbkQsTUFBTUMsRUFBaUJELEVBQUksWUFDckJFLEVBQU9ELEVBQUVGLEVBQVMsTUFBTSxFQUd4QkksRUFBZUosRUFBUyxLQUFLLFNBQVMsS0FBSyxHQUFLQSxFQUFTLEtBQUssU0FBUyxNQUFNLEVBRW5GLElBQUlLLEVBQWEsR0FDWCxNQUFBQyxNQUFvQixJQUMxQkgsRUFBSyxLQUFLRCxFQUFFLFVBQVUsRUFBRSxRQUFTSyxHQUFTLENBQ3hCRCxFQUFBLElBQUlDLEVBQUssS0FBSyxJQUFJLENBQUEsQ0FDbkMsRUFHSyxNQUFBQyxFQUFhQyxFQUFBQSxtQkFERixtQkFDK0JILENBQWEsRUFHdkRJLEVBQVdDLEVBQUFBLGlCQUFpQlQsRUFBR0MsRUFBTSxPQUFRLDRCQUE0QixHQUFLLE9BS3ZFLE9BRlFBLEVBQUssS0FBS0QsRUFBRSxXQUFZLENBQUUsZUFBZ0IsQ0FBRSxLQUFNLENBQUUsS0FBTVEsQ0FBUyxDQUFBLENBQUssQ0FBQSxFQUVoRixRQUFTRSxHQUFhLENBQ3pC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
@@ -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 strict";const t=require("./utils.js");function F(m,C){const e=C.jscodeshift,o=e(m.source),c=m.path.endsWith(".ts")||m.path.endsWith(".tsx");let u=!1;const p=new Set;o.find(e.Identifier).forEach(s=>{p.add(s.node.name)});const i=t.generateUniqueName("CustomFilterCell",p),f=t.findImportedName(e,o,"Grid","@progress/kendo-react-grid")||"Grid";return o.find(e.JSXElement,{openingElement:{name:{name:f}}}).forEach(s=>{const n=s.node.openingElement.attributes,l=n==null?void 0:n.find(d=>d.type==="JSXAttribute"&&d.name.name==="filterCellRender");if(l&&l.type==="JSXAttribute"){const d=l.value?e(l.value).toSource():"No value provided",{isClassComponent:a,isFunctionalComponent:h,parentNode:g}=t.findParentComponent(e,s);n&&t.ensureAttributeExists(e,n,"cells","filterCell",a?`this.${i}`:i);let r;a?r=t.createMethodForClassComponent(e,i,c,"GridCustomFilterCellProps"):h&&(r=t.createArrowFunctionForFunctionalComponent(e,i,c,"GridCustomFilterCellProps")),t.addMethodToComponent(e,g,r,a),r&&t.addCommentToMethod(e,e(r),`Original filterCellRender value: ${d}`,a?"class":"function"),t.removeAttribute(n,"filterCellRender")&&(u=!0)}}),u&&c&&t.ensureImportExists(e,o,"GridCustomFilterCellProps","@progress/kendo-react-grid"),o.toSource()}module.exports=F;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNlbGwtcmVuZGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL2NvZGVtb2RzL3YxMS9maWx0ZXItY2VsbC1yZW5kZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBJLCBGaWxlSW5mbywgSlNDb2Rlc2hpZnQsIEpTWEF0dHJpYnV0ZSwgSlNYU3ByZWFkQXR0cmlidXRlIH0gZnJvbSAnanNjb2Rlc2hpZnQnO1xuaW1wb3J0IHtcbiAgICBhZGRDb21tZW50VG9NZXRob2QsXG4gICAgZW5zdXJlQXR0cmlidXRlRXhpc3RzLFxuICAgIGZpbmRQYXJlbnRDb21wb25lbnQsXG4gICAgZ2VuZXJhdGVVbmlxdWVOYW1lLFxuICAgIGVuc3VyZUltcG9ydEV4aXN0cyxcbiAgICBjcmVhdGVNZXRob2RGb3JDbGFzc0NvbXBvbmVudCxcbiAgICBjcmVhdGVBcnJvd0Z1bmN0aW9uRm9yRnVuY3Rpb25hbENvbXBvbmVudCxcbiAgICBhZGRNZXRob2RUb0NvbXBvbmVudCxcbiAgICByZW1vdmVBdHRyaWJ1dGUsXG4gICAgZmluZEltcG9ydGVkTmFtZVxufSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gKGZpbGVJbmZvOiBGaWxlSW5mbywgYXBpOiBBUEkpIHtcbiAgICBjb25zdCBqOiBKU0NvZGVzaGlmdCA9IGFwaS5qc2NvZGVzaGlmdDtcbiAgICBjb25zdCByb290ID0gaihmaWxlSW5mby5zb3VyY2UpO1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIGZpbGUgaXMgVHlwZVNjcmlwdCBvciBUU1hcbiAgICBjb25zdCBpc1R5cGVTY3JpcHQgPSBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHMnKSB8fCBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHN4Jyk7XG5cbiAgICBsZXQgYWRkSW1wb3J0cyA9IGZhbHNlO1xuICAgIC8vIENvbGxlY3QgYWxsIGV4aXN0aW5nIG1ldGhvZCBuYW1lc1xuICAgIGNvbnN0IGV4aXN0aW5nTmFtZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICByb290LmZpbmQoai5JZGVudGlmaWVyKS5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIGV4aXN0aW5nTmFtZXMuYWRkKHBhdGgubm9kZS5uYW1lKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGJhc2VOYW1lID0gJ0N1c3RvbUZpbHRlckNlbGwnO1xuICAgIGNvbnN0IHVuaXF1ZU5hbWUgPSBnZW5lcmF0ZVVuaXF1ZU5hbWUoYmFzZU5hbWUsIGV4aXN0aW5nTmFtZXMpO1xuXG4gICAgLy8gRW5zdXJlcyB3ZSBmaW5kIHRoZSBjb3JyZWN0IEdyaWQgaW1wb3J0XG4gICAgLy8gaWYgdGhlIHVzZXIgaGFzIGltcG9ydGVkIGl0IHdpdGggYSBkaWZmZXJlbnQgbmFtZVxuICAgIC8vIGUuZy4gaW1wb3J0IHsgR3JpZCBhcyBLZW5kb0dyaWQgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tcmVhY3QtZ3JpZCc7XG4gICAgY29uc3QgZ3JpZE5hbWUgPSBmaW5kSW1wb3J0ZWROYW1lKGosIHJvb3QsICdHcmlkJywgJ0Bwcm9ncmVzcy9rZW5kby1yZWFjdC1ncmlkJykgfHwgJ0dyaWQnO1xuXG4gICAgLy8gRmluZCBhbGwgSlNYRWxlbWVudHMgd2l0aCB0aGUgbmFtZSAnR3JpZCdcbiAgICByb290LmZpbmQoai5KU1hFbGVtZW50LCB7IG9wZW5pbmdFbGVtZW50OiB7IG5hbWU6IHsgbmFtZTogZ3JpZE5hbWUgfSB9IH0pLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgY29uc3QgYXR0cmlidXRlcyA9IHBhdGgubm9kZS5vcGVuaW5nRWxlbWVudC5hdHRyaWJ1dGVzO1xuXG4gICAgICAgIC8vIEZpbmQgdGhlICdmaWx0ZXJDZWxsUmVuZGVyJyBhdHRyaWJ1dGVcbiAgICAgICAgY29uc3QgZmlsdGVyQ2VsbFJlbmRlckF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXM/LmZpbmQoXG4gICAgICAgICAgICAoYXR0cikgPT4gYXR0ci50eXBlID09PSAnSlNYQXR0cmlidXRlJyAmJiBhdHRyLm5hbWUubmFtZSA9PT0gJ2ZpbHRlckNlbGxSZW5kZXInXG4gICAgICAgICkgYXMgSlNYQXR0cmlidXRlO1xuXG4gICAgICAgIC8vIElmIHRoZSAnZmlsdGVyQ2VsbFJlbmRlcicgYXR0cmlidXRlIGV4aXN0cywgY29weSBpdHMgdmFsdWUgYXMgYSBjb21tZW50XG4gICAgICAgIGlmIChmaWx0ZXJDZWxsUmVuZGVyQXR0cmlidXRlICYmIGZpbHRlckNlbGxSZW5kZXJBdHRyaWJ1dGUudHlwZSA9PT0gJ0pTWEF0dHJpYnV0ZScpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbHRlckNlbGxSZW5kZXJWYWx1ZSA9IGZpbHRlckNlbGxSZW5kZXJBdHRyaWJ1dGUudmFsdWVcbiAgICAgICAgICAgICAgICA/IGooZmlsdGVyQ2VsbFJlbmRlckF0dHJpYnV0ZS52YWx1ZSkudG9Tb3VyY2UoKVxuICAgICAgICAgICAgICAgIDogJ05vIHZhbHVlIHByb3ZpZGVkJztcblxuICAgICAgICAgICAgLy8gRmluZCB0aGUgcGFyZW50IGNvbXBvbmVudFxuICAgICAgICAgICAgY29uc3QgeyBpc0NsYXNzQ29tcG9uZW50LCBpc0Z1bmN0aW9uYWxDb21wb25lbnQsIHBhcmVudE5vZGUgfSA9IGZpbmRQYXJlbnRDb21wb25lbnQoaiwgcGF0aCk7XG5cbiAgICAgICAgICAgIGlmIChhdHRyaWJ1dGVzKSB7XG4gICAgICAgICAgICAgICAgLy8gRW5zdXJlIHRoZSAnY2VsbHMnIGF0dHJpYnV0ZSBleGlzdHNcbiAgICAgICAgICAgICAgICBlbnN1cmVBdHRyaWJ1dGVFeGlzdHMoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMsXG4gICAgICAgICAgICAgICAgICAgICdjZWxscycsXG4gICAgICAgICAgICAgICAgICAgICdmaWx0ZXJDZWxsJyxcbiAgICAgICAgICAgICAgICAgICAgaXNDbGFzc0NvbXBvbmVudCA/IGB0aGlzLiR7dW5pcXVlTmFtZX1gIDogdW5pcXVlTmFtZVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENyZWF0ZSB0aGUgQ3VzdG9tRmlsdGVyQ2VsbCBtZXRob2RcbiAgICAgICAgICAgIGxldCBjdXN0b21NZXRob2Q7XG4gICAgICAgICAgICBpZiAoaXNDbGFzc0NvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgIGN1c3RvbU1ldGhvZCA9IGNyZWF0ZU1ldGhvZEZvckNsYXNzQ29tcG9uZW50KGosIHVuaXF1ZU5hbWUsIGlzVHlwZVNjcmlwdCwgJ0dyaWRDdXN0b21GaWx0ZXJDZWxsUHJvcHMnKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNGdW5jdGlvbmFsQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgY3VzdG9tTWV0aG9kID0gY3JlYXRlQXJyb3dGdW5jdGlvbkZvckZ1bmN0aW9uYWxDb21wb25lbnQoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIHVuaXF1ZU5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGlzVHlwZVNjcmlwdCxcbiAgICAgICAgICAgICAgICAgICAgJ0dyaWRDdXN0b21GaWx0ZXJDZWxsUHJvcHMnXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIHRoZSBDdXN0b21GaWx0ZXJDZWxsIG1ldGhvZCB0byB0aGUgY29tcG9uZW50XG4gICAgICAgICAgICBhZGRNZXRob2RUb0NvbXBvbmVudChqLCBwYXJlbnROb2RlLCBjdXN0b21NZXRob2QsIGlzQ2xhc3NDb21wb25lbnQpO1xuXG4gICAgICAgICAgICAvLyBBZGQgdGhlIGZpbHRlckNlbGxSZW5kZXIgdmFsdWUgYXMgYSBjb21tZW50IGluIHRoZSBDdXN0b21GaWx0ZXJDZWxsIG1ldGhvZFxuICAgICAgICAgICAgaWYgKGN1c3RvbU1ldGhvZCkge1xuICAgICAgICAgICAgICAgIGFkZENvbW1lbnRUb01ldGhvZChcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgaihjdXN0b21NZXRob2QpLFxuICAgICAgICAgICAgICAgICAgICBgT3JpZ2luYWwgZmlsdGVyQ2VsbFJlbmRlciB2YWx1ZTogJHtmaWx0ZXJDZWxsUmVuZGVyVmFsdWV9YCxcbiAgICAgICAgICAgICAgICAgICAgaXNDbGFzc0NvbXBvbmVudCA/ICdjbGFzcycgOiAnZnVuY3Rpb24nXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSAnZmlsdGVyQ2VsbFJlbmRlcicgYXR0cmlidXRlXG4gICAgICAgICAgICBjb25zdCB3YXNSZW1vdmVkID0gcmVtb3ZlQXR0cmlidXRlKGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSwgJ2ZpbHRlckNlbGxSZW5kZXInKTtcbiAgICAgICAgICAgIGlmICh3YXNSZW1vdmVkKSB7XG4gICAgICAgICAgICAgICAgYWRkSW1wb3J0cyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChhZGRJbXBvcnRzICYmIGlzVHlwZVNjcmlwdCkge1xuICAgICAgICAvLyBFbnN1cmUgdGhlIGltcG9ydCBmb3IgR3JpZEN1c3RvbUZpbHRlckNlbGxQcm9wcyBleGlzdHNcbiAgICAgICAgZW5zdXJlSW1wb3J0RXhpc3RzKGosIHJvb3QsICdHcmlkQ3VzdG9tRmlsdGVyQ2VsbFByb3BzJywgJ0Bwcm9ncmVzcy9rZW5kby1yZWFjdC1ncmlkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvb3QudG9Tb3VyY2UoKTtcbn1cbiJdLCJuYW1lcyI6WyJmaWx0ZXJDZWxsUmVuZGVyIiwiZmlsZUluZm8iLCJhcGkiLCJqIiwicm9vdCIsImlzVHlwZVNjcmlwdCIsImFkZEltcG9ydHMiLCJleGlzdGluZ05hbWVzIiwicGF0aCIsInVuaXF1ZU5hbWUiLCJnZW5lcmF0ZVVuaXF1ZU5hbWUiLCJncmlkTmFtZSIsImZpbmRJbXBvcnRlZE5hbWUiLCJhdHRyaWJ1dGVzIiwiZmlsdGVyQ2VsbFJlbmRlckF0dHJpYnV0ZSIsImF0dHIiLCJmaWx0ZXJDZWxsUmVuZGVyVmFsdWUiLCJpc0NsYXNzQ29tcG9uZW50IiwiaXNGdW5jdGlvbmFsQ29tcG9uZW50IiwicGFyZW50Tm9kZSIsImZpbmRQYXJlbnRDb21wb25lbnQiLCJlbnN1cmVBdHRyaWJ1dGVFeGlzdHMiLCJjdXN0b21NZXRob2QiLCJjcmVhdGVNZXRob2RGb3JDbGFzc0NvbXBvbmVudCIsImNyZWF0ZUFycm93RnVuY3Rpb25Gb3JGdW5jdGlvbmFsQ29tcG9uZW50IiwiYWRkTWV0aG9kVG9Db21wb25lbnQiLCJhZGRDb21tZW50VG9NZXRob2QiLCJyZW1vdmVBdHRyaWJ1dGUiLCJlbnN1cmVJbXBvcnRFeGlzdHMiXSwibWFwcGluZ3MiOiIyQ0FjQSxTQUFBQSxFQUF5QkMsRUFBb0JDLEVBQVUsQ0FDbkQsTUFBTUMsRUFBaUJELEVBQUksWUFDckJFLEVBQU9ELEVBQUVGLEVBQVMsTUFBTSxFQUd4QkksRUFBZUosRUFBUyxLQUFLLFNBQVMsS0FBSyxHQUFLQSxFQUFTLEtBQUssU0FBUyxNQUFNLEVBRW5GLElBQUlLLEVBQWEsR0FFWCxNQUFBQyxNQUFvQixJQUMxQkgsRUFBSyxLQUFLRCxFQUFFLFVBQVUsRUFBRSxRQUFTSyxHQUFTLENBQ3hCRCxFQUFBLElBQUlDLEVBQUssS0FBSyxJQUFJLENBQUEsQ0FDbkMsRUFHSyxNQUFBQyxFQUFhQyxFQUFBQSxtQkFERixtQkFDK0JILENBQWEsRUFLdkRJLEVBQVdDLEVBQUFBLGlCQUFpQlQsRUFBR0MsRUFBTSxPQUFRLDRCQUE0QixHQUFLLE9BR3BGLE9BQUFBLEVBQUssS0FBS0QsRUFBRSxXQUFZLENBQUUsZUFBZ0IsQ0FBRSxLQUFNLENBQUUsS0FBTVEsQ0FBQSxDQUFhLENBQUEsQ0FBQyxFQUFFLFFBQVNILEdBQVMsQ0FDbEYsTUFBQUssRUFBYUwsRUFBSyxLQUFLLGVBQWUsV0FHdENNLEVBQTRCRCxHQUFBLFlBQUFBLEVBQVksS0FDekNFLEdBQVNBLEVBQUssT0FBUyxnQkFBa0JBLEVBQUssS0FBSyxPQUFTLG9CQUk3RCxHQUFBRCxHQUE2QkEsRUFBMEIsT0FBUyxlQUFnQixDQUMxRSxNQUFBRSxFQUF3QkYsRUFBMEIsTUFDbERYLEVBQUVXLEVBQTBCLEtBQUssRUFBRSxTQUNuQyxFQUFBLG9CQUdBLENBQUUsaUJBQUFHLEVBQWtCLHNCQUFBQyxFQUF1QixXQUFBQyxDQUFlLEVBQUFDLHNCQUFvQmpCLEVBQUdLLENBQUksRUFFdkZLLEdBRUFRLEVBQUEsc0JBQ0lsQixFQUNBVSxFQUNBLFFBQ0EsYUFDQUksRUFBbUIsUUFBUVIsQ0FBVSxHQUFLQSxDQUFBLEVBSzlDLElBQUFhLEVBQ0FMLEVBQ0FLLEVBQWVDLEVBQThCLDhCQUFBcEIsRUFBR00sRUFBWUosRUFBYywyQkFBMkIsRUFDOUZhLElBQ1FJLEVBQUFFLEVBQUEsMENBQ1hyQixFQUNBTSxFQUNBSixFQUNBLDJCQUFBLEdBS2FvQixFQUFBQSxxQkFBQXRCLEVBQUdnQixFQUFZRyxFQUFjTCxDQUFnQixFQUc5REssR0FDQUksRUFBQSxtQkFDSXZCLEVBQ0FBLEVBQUVtQixDQUFZLEVBQ2Qsb0NBQW9DTixDQUFxQixHQUN6REMsRUFBbUIsUUFBVSxVQUFBLEVBS2xCVSxFQUFBQSxnQkFBZ0JkLEVBQXFELGtCQUFrQixJQUV6RlAsRUFBQSxHQUVyQixDQUFBLENBQ0gsRUFFR0EsR0FBY0QsR0FFS3VCLEVBQUFBLG1CQUFBekIsRUFBR0MsRUFBTSw0QkFBNkIsNEJBQTRCLEVBR2xGQSxFQUFLLFVBQ2hCIn0=
@@ -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 strict";const n=require("./utils.js");function f(u,m){const e=m.jscodeshift,r=e(u.source),a=u.path.endsWith(".ts")||u.path.endsWith(".tsx");let E=!1;const x=new Set;r.find(e.Identifier).forEach(d=>{x.add(d.node.name)});const i=n.generateUniqueName("handleGroupExpand",x),g=n.findImportedName(e,r,"Grid","@progress/kendo-react-grid")||"Grid";return r.find(e.JSXElement,{openingElement:{name:{name:g}}}).forEach(d=>{const t=d.node.openingElement.attributes;if(!n.hasJSXAttribute(t,"groupable"))return;const s=t==null?void 0:t.find(o=>o.type==="JSXAttribute"&&o.name.name==="onExpandChange"),c=s!=null&&s.value?e(s.value).toSource():"No value provided";n.removeAttribute(t,"onExpandChange"),E=!0;const{isClassComponent:h,isFunctionalComponent:l,parentNode:p}=n.findParentComponent(e,d);if(h){if(n.addStateDeclaration(e,p,"groupExpand",e.arrayExpression([])),n.hasJSXAttribute(t,"groupExpand")||n.addStateAttribute(e,t,"groupExpand","this.state.groupExpand"),!n.hasJSXAttribute(t,"onGroupExpandChange")){n.addEventAttribute(e,t,"onGroupExpandChange",`this.${i}`);const o=n.createClassMethod(e,i,[`event${a?": GridGroupExpandChangeEvent":""}`],[e.expressionStatement(e.callExpression(e.memberExpression(e.thisExpression(),e.identifier("setState")),[e.objectExpression([e.property("init",e.identifier("groupExpand"),e.memberExpression(e.identifier("event"),e.identifier("groupExpand")))])]))]);n.addCommentToMethod(e,e(o),`Original onExpandChange value: ${c}`,"class"),n.addMethodToComponent(e,p,o,!0)}}else if(l&&(n.addUseStateDeclaration(e,p,"groupExpand","setGroupExpand",e.arrayExpression([]),a,"GroupExpandDescriptor[]"),n.hasJSXAttribute(t,"groupExpand")||n.addStateAttribute(e,t,"groupExpand","groupExpand"),!n.hasJSXAttribute(t,"onGroupExpandChange"))){n.addEventAttribute(e,t,"onGroupExpandChange",`${i}`);const o=n.createArrowFunction(e,`${i}`,[`(event${a?": GridGroupExpandChangeEvent":""})`],[e.expressionStatement(e.callExpression(e.identifier("setGroupExpand"),[e.memberExpression(e.identifier("event"),e.identifier("groupExpand"))]))]);n.addCommentToMethod(e,e(o),`Original onExpandChange value: ${c}`,"function"),n.addMethodToComponent(e,p,o,!1)}}),E&&a&&(n.ensureImportExists(e,r,"GroupExpandDescriptor","@progress/kendo-react-data-tools"),n.ensureImportExists(e,r,"GridGroupExpandChangeEvent","@progress/kendo-react-grid")),r.toSource()}module.exports=f;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtZXhwYW5kLXN0YXRlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL2NvZGVtb2RzL3YxMS9ncm91cC1leHBhbmQtc3RhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBJLCBGaWxlSW5mbywgSlNDb2Rlc2hpZnQsIEpTWEF0dHJpYnV0ZSwgSlNYU3ByZWFkQXR0cmlidXRlIH0gZnJvbSAnanNjb2Rlc2hpZnQnO1xuaW1wb3J0IHtcbiAgICBhZGRNZXRob2RUb0NvbXBvbmVudCxcbiAgICByZW1vdmVBdHRyaWJ1dGUsXG4gICAgZmluZFBhcmVudENvbXBvbmVudCxcbiAgICBnZW5lcmF0ZVVuaXF1ZU5hbWUsXG4gICAgZW5zdXJlSW1wb3J0RXhpc3RzLFxuICAgIGFkZEV2ZW50QXR0cmlidXRlLFxuICAgIGFkZFN0YXRlQXR0cmlidXRlLFxuICAgIGFkZFN0YXRlRGVjbGFyYXRpb24sXG4gICAgYWRkVXNlU3RhdGVEZWNsYXJhdGlvbixcbiAgICBmaW5kSW1wb3J0ZWROYW1lLFxuICAgIGNyZWF0ZUNsYXNzTWV0aG9kLFxuICAgIGNyZWF0ZUFycm93RnVuY3Rpb24sXG4gICAgaGFzSlNYQXR0cmlidXRlLFxuICAgIGFkZENvbW1lbnRUb01ldGhvZFxufSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gKGZpbGVJbmZvOiBGaWxlSW5mbywgYXBpOiBBUEkpIHtcbiAgICBjb25zdCBqOiBKU0NvZGVzaGlmdCA9IGFwaS5qc2NvZGVzaGlmdDtcbiAgICBjb25zdCByb290ID0gaihmaWxlSW5mby5zb3VyY2UpO1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIGZpbGUgaXMgVHlwZVNjcmlwdCBvciBUU1hcbiAgICBjb25zdCBpc1R5cGVTY3JpcHQgPSBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHMnKSB8fCBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHN4Jyk7XG5cbiAgICBsZXQgYWRkSW1wb3J0cyA9IGZhbHNlO1xuICAgIGNvbnN0IGV4aXN0aW5nTmFtZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICByb290LmZpbmQoai5JZGVudGlmaWVyKS5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIGV4aXN0aW5nTmFtZXMuYWRkKHBhdGgubm9kZS5uYW1lKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGJhc2VOYW1lID0gJ2hhbmRsZUdyb3VwRXhwYW5kJztcbiAgICBjb25zdCB1bmlxdWVOYW1lID0gZ2VuZXJhdGVVbmlxdWVOYW1lKGJhc2VOYW1lLCBleGlzdGluZ05hbWVzKTtcblxuICAgIC8vIER5bmFtaWNhbGx5IHJlc29sdmUgdGhlIGltcG9ydGVkIG5hbWUgZm9yIGBHcmlkYFxuICAgIGNvbnN0IGdyaWROYW1lID0gZmluZEltcG9ydGVkTmFtZShqLCByb290LCAnR3JpZCcsICdAcHJvZ3Jlc3Mva2VuZG8tcmVhY3QtZ3JpZCcpIHx8ICdHcmlkJztcblxuICAgIC8vIEZpbmQgYWxsIEpTWEVsZW1lbnRzIHdpdGggdGhlIG5hbWUgb2YgdGhlIHJlc29sdmVkIGBHcmlkYCBjb21wb25lbnRcbiAgICBjb25zdCBncmlkRWxlbWVudHMgPSByb290LmZpbmQoai5KU1hFbGVtZW50LCB7IG9wZW5pbmdFbGVtZW50OiB7IG5hbWU6IHsgbmFtZTogZ3JpZE5hbWUgfSB9IH0pO1xuXG4gICAgZ3JpZEVsZW1lbnRzLmZvckVhY2goKGdyaWRQYXRoKSA9PiB7XG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBncmlkUGF0aC5ub2RlLm9wZW5pbmdFbGVtZW50LmF0dHJpYnV0ZXM7XG5cbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGBncm91cGFibGVgIGF0dHJpYnV0ZSBleGlzdHNcbiAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ2dyb3VwYWJsZScpKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIFNraXAgdGhpcyBHcmlkIGlmIGBncm91cGFibGVgIGlzIG5vdCBwcmVzZW50XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGaW5kIHRoZSBgb25FeHBhbmRDaGFuZ2VgIGF0dHJpYnV0ZVxuICAgICAgICBjb25zdCBvbkV4cGFuZENoYW5nZUF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXM/LmZpbmQoXG4gICAgICAgICAgICAoYXR0cikgPT4gYXR0ci50eXBlID09PSAnSlNYQXR0cmlidXRlJyAmJiBhdHRyLm5hbWUubmFtZSA9PT0gJ29uRXhwYW5kQ2hhbmdlJ1xuICAgICAgICApIGFzIEpTWEF0dHJpYnV0ZTtcblxuICAgICAgICAvLyBDb3B5IHRoZSB2YWx1ZSBvZiBgb25FeHBhbmRDaGFuZ2VgIGFzIGEgY29tbWVudFxuICAgICAgICBjb25zdCBvbkV4cGFuZENoYW5nZVZhbHVlID0gb25FeHBhbmRDaGFuZ2VBdHRyaWJ1dGU/LnZhbHVlXG4gICAgICAgICAgICA/IGoob25FeHBhbmRDaGFuZ2VBdHRyaWJ1dGUudmFsdWUpLnRvU291cmNlKClcbiAgICAgICAgICAgIDogJ05vIHZhbHVlIHByb3ZpZGVkJztcblxuICAgICAgICAvLyBSZW1vdmUgdGhlIGBvbkV4cGFuZENoYW5nZWAgYXR0cmlidXRlXG4gICAgICAgIHJlbW92ZUF0dHJpYnV0ZShhdHRyaWJ1dGVzIGFzIChKU1hBdHRyaWJ1dGUgfCBKU1hTcHJlYWRBdHRyaWJ1dGUpW10sICdvbkV4cGFuZENoYW5nZScpO1xuICAgICAgICBhZGRJbXBvcnRzID0gdHJ1ZTtcblxuICAgICAgICAvLyBEZXRlcm1pbmUgaWYgdGhlIHBhcmVudCBjb21wb25lbnQgaXMgYSBjbGFzcyBvciBmdW5jdGlvbmFsIGNvbXBvbmVudFxuICAgICAgICBjb25zdCB7IGlzQ2xhc3NDb21wb25lbnQsIGlzRnVuY3Rpb25hbENvbXBvbmVudCwgcGFyZW50Tm9kZSB9ID0gZmluZFBhcmVudENvbXBvbmVudChqLCBncmlkUGF0aCk7XG5cbiAgICAgICAgaWYgKGlzQ2xhc3NDb21wb25lbnQpIHtcbiAgICAgICAgICAgIC8vIEFkZCBgZ3JvdXBFeHBhbmRgIHRvIHRoZSBjbGFzcyBjb21wb25lbnQncyBzdGF0ZVxuICAgICAgICAgICAgYWRkU3RhdGVEZWNsYXJhdGlvbihqLCBwYXJlbnROb2RlLCAnZ3JvdXBFeHBhbmQnLCBqLmFycmF5RXhwcmVzc2lvbihbXSkpO1xuXG4gICAgICAgICAgICAvLyBBZGQgYGdyb3VwRXhwYW5kYCBhbmQgYG9uR3JvdXBFeHBhbmRDaGFuZ2VgIGF0dHJpYnV0ZXNcbiAgICAgICAgICAgIGlmICghaGFzSlNYQXR0cmlidXRlKGF0dHJpYnV0ZXMsICdncm91cEV4cGFuZCcpKSB7XG4gICAgICAgICAgICAgICAgYWRkU3RhdGVBdHRyaWJ1dGUoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSxcbiAgICAgICAgICAgICAgICAgICAgJ2dyb3VwRXhwYW5kJyxcbiAgICAgICAgICAgICAgICAgICAgJ3RoaXMuc3RhdGUuZ3JvdXBFeHBhbmQnXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ29uR3JvdXBFeHBhbmRDaGFuZ2UnKSkge1xuICAgICAgICAgICAgICAgIGFkZEV2ZW50QXR0cmlidXRlKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzIGFzIChKU1hBdHRyaWJ1dGUgfCBKU1hTcHJlYWRBdHRyaWJ1dGUpW10sXG4gICAgICAgICAgICAgICAgICAgICdvbkdyb3VwRXhwYW5kQ2hhbmdlJyxcbiAgICAgICAgICAgICAgICAgICAgYHRoaXMuJHt1bmlxdWVOYW1lfWBcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgLy8gQ3JlYXRlIGFuZCBhZGQgYGhhbmRsZUdyb3VwRXhwYW5kYCBtZXRob2RcbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVHcm91cEV4cGFuZE1ldGhvZCA9IGNyZWF0ZUNsYXNzTWV0aG9kKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICB1bmlxdWVOYW1lLFxuICAgICAgICAgICAgICAgICAgICBbYGV2ZW50JHtpc1R5cGVTY3JpcHQgPyAnOiBHcmlkR3JvdXBFeHBhbmRDaGFuZ2VFdmVudCcgOiAnJ31gXSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgai5leHByZXNzaW9uU3RhdGVtZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGouY2FsbEV4cHJlc3Npb24oai5tZW1iZXJFeHByZXNzaW9uKGoudGhpc0V4cHJlc3Npb24oKSwgai5pZGVudGlmaWVyKCdzZXRTdGF0ZScpKSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqLm9iamVjdEV4cHJlc3Npb24oW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5wcm9wZXJ0eShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5pZGVudGlmaWVyKCdncm91cEV4cGFuZCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGoubWVtYmVyRXhwcmVzc2lvbihqLmlkZW50aWZpZXIoJ2V2ZW50JyksIGouaWRlbnRpZmllcignZ3JvdXBFeHBhbmQnKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIC8vIEFkZCB0aGUgYG9uRXhwYW5kQ2hhbmdlYCB2YWx1ZSBhcyBhIGNvbW1lbnQgaW4gdGhlIG1ldGhvZFxuICAgICAgICAgICAgICAgIGFkZENvbW1lbnRUb01ldGhvZChcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgaihoYW5kbGVHcm91cEV4cGFuZE1ldGhvZCksXG4gICAgICAgICAgICAgICAgICAgIGBPcmlnaW5hbCBvbkV4cGFuZENoYW5nZSB2YWx1ZTogJHtvbkV4cGFuZENoYW5nZVZhbHVlfWAsXG4gICAgICAgICAgICAgICAgICAgICdjbGFzcydcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgYWRkTWV0aG9kVG9Db21wb25lbnQoaiwgcGFyZW50Tm9kZSwgaGFuZGxlR3JvdXBFeHBhbmRNZXRob2QsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGlzRnVuY3Rpb25hbENvbXBvbmVudCkge1xuICAgICAgICAgICAgLy8gQWRkIGBSZWFjdC51c2VTdGF0ZWAgZm9yIGBncm91cEV4cGFuZGBcbiAgICAgICAgICAgIGFkZFVzZVN0YXRlRGVjbGFyYXRpb24oXG4gICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICBwYXJlbnROb2RlLFxuICAgICAgICAgICAgICAgICdncm91cEV4cGFuZCcsXG4gICAgICAgICAgICAgICAgJ3NldEdyb3VwRXhwYW5kJyxcbiAgICAgICAgICAgICAgICBqLmFycmF5RXhwcmVzc2lvbihbXSksXG4gICAgICAgICAgICAgICAgaXNUeXBlU2NyaXB0LFxuICAgICAgICAgICAgICAgICdHcm91cEV4cGFuZERlc2NyaXB0b3JbXSdcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIC8vIEFkZCBgZ3JvdXBFeHBhbmRgIGFuZCBgb25Hcm91cEV4cGFuZENoYW5nZWAgYXR0cmlidXRlc1xuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ2dyb3VwRXhwYW5kJykpIHtcbiAgICAgICAgICAgICAgICBhZGRTdGF0ZUF0dHJpYnV0ZShqLCBhdHRyaWJ1dGVzIGFzIChKU1hBdHRyaWJ1dGUgfCBKU1hTcHJlYWRBdHRyaWJ1dGUpW10sICdncm91cEV4cGFuZCcsICdncm91cEV4cGFuZCcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWhhc0pTWEF0dHJpYnV0ZShhdHRyaWJ1dGVzLCAnb25Hcm91cEV4cGFuZENoYW5nZScpKSB7XG4gICAgICAgICAgICAgICAgYWRkRXZlbnRBdHRyaWJ1dGUoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSxcbiAgICAgICAgICAgICAgICAgICAgJ29uR3JvdXBFeHBhbmRDaGFuZ2UnLFxuICAgICAgICAgICAgICAgICAgICBgJHt1bmlxdWVOYW1lfWBcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgLy8gQ3JlYXRlIGFuZCBhZGQgYGhhbmRsZUdyb3VwRXhwYW5kYCBmdW5jdGlvblxuICAgICAgICAgICAgICAgIGNvbnN0IGhhbmRsZUdyb3VwRXhwYW5kRnVuY3Rpb24gPSBjcmVhdGVBcnJvd0Z1bmN0aW9uKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICBgJHt1bmlxdWVOYW1lfWAsXG4gICAgICAgICAgICAgICAgICAgIFtgKGV2ZW50JHtpc1R5cGVTY3JpcHQgPyAnOiBHcmlkR3JvdXBFeHBhbmRDaGFuZ2VFdmVudCcgOiAnJ30pYF0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGouZXhwcmVzc2lvblN0YXRlbWVudChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqLmNhbGxFeHByZXNzaW9uKGouaWRlbnRpZmllcignc2V0R3JvdXBFeHBhbmQnKSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqLm1lbWJlckV4cHJlc3Npb24oai5pZGVudGlmaWVyKCdldmVudCcpLCBqLmlkZW50aWZpZXIoJ2dyb3VwRXhwYW5kJykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgdGhlIGBvbkV4cGFuZENoYW5nZWAgdmFsdWUgYXMgYSBjb21tZW50IGluIHRoZSBmdW5jdGlvblxuICAgICAgICAgICAgICAgIGFkZENvbW1lbnRUb01ldGhvZChcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgaihoYW5kbGVHcm91cEV4cGFuZEZ1bmN0aW9uKSxcbiAgICAgICAgICAgICAgICAgICAgYE9yaWdpbmFsIG9uRXhwYW5kQ2hhbmdlIHZhbHVlOiAke29uRXhwYW5kQ2hhbmdlVmFsdWV9YCxcbiAgICAgICAgICAgICAgICAgICAgJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBhZGRNZXRob2RUb0NvbXBvbmVudChqLCBwYXJlbnROb2RlLCBoYW5kbGVHcm91cEV4cGFuZEZ1bmN0aW9uLCBmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChhZGRJbXBvcnRzICYmIGlzVHlwZVNjcmlwdCkge1xuICAgICAgICAvLyBFbnN1cmUgVHlwZVNjcmlwdCBpbXBvcnRzXG4gICAgICAgIGVuc3VyZUltcG9ydEV4aXN0cyhqLCByb290LCAnR3JvdXBFeHBhbmREZXNjcmlwdG9yJywgJ0Bwcm9ncmVzcy9rZW5kby1yZWFjdC1kYXRhLXRvb2xzJyk7XG4gICAgICAgIGVuc3VyZUltcG9ydEV4aXN0cyhqLCByb290LCAnR3JpZEdyb3VwRXhwYW5kQ2hhbmdlRXZlbnQnLCAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWdyaWQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm9vdC50b1NvdXJjZSgpO1xufVxuIl0sIm5hbWVzIjpbImdyb3VwRXhwYW5kU3RhdGUiLCJmaWxlSW5mbyIsImFwaSIsImoiLCJyb290IiwiaXNUeXBlU2NyaXB0IiwiYWRkSW1wb3J0cyIsImV4aXN0aW5nTmFtZXMiLCJwYXRoIiwidW5pcXVlTmFtZSIsImdlbmVyYXRlVW5pcXVlTmFtZSIsImdyaWROYW1lIiwiZmluZEltcG9ydGVkTmFtZSIsImdyaWRQYXRoIiwiYXR0cmlidXRlcyIsImhhc0pTWEF0dHJpYnV0ZSIsIm9uRXhwYW5kQ2hhbmdlQXR0cmlidXRlIiwiYXR0ciIsIm9uRXhwYW5kQ2hhbmdlVmFsdWUiLCJyZW1vdmVBdHRyaWJ1dGUiLCJpc0NsYXNzQ29tcG9uZW50IiwiaXNGdW5jdGlvbmFsQ29tcG9uZW50IiwicGFyZW50Tm9kZSIsImZpbmRQYXJlbnRDb21wb25lbnQiLCJhZGRTdGF0ZURlY2xhcmF0aW9uIiwiYWRkU3RhdGVBdHRyaWJ1dGUiLCJhZGRFdmVudEF0dHJpYnV0ZSIsImhhbmRsZUdyb3VwRXhwYW5kTWV0aG9kIiwiY3JlYXRlQ2xhc3NNZXRob2QiLCJhZGRDb21tZW50VG9NZXRob2QiLCJhZGRNZXRob2RUb0NvbXBvbmVudCIsImFkZFVzZVN0YXRlRGVjbGFyYXRpb24iLCJoYW5kbGVHcm91cEV4cGFuZEZ1bmN0aW9uIiwiY3JlYXRlQXJyb3dGdW5jdGlvbiIsImVuc3VyZUltcG9ydEV4aXN0cyJdLCJtYXBwaW5ncyI6IjJDQWtCQSxTQUFBQSxFQUF5QkMsRUFBb0JDLEVBQVUsQ0FDbkQsTUFBTUMsRUFBaUJELEVBQUksWUFDckJFLEVBQU9ELEVBQUVGLEVBQVMsTUFBTSxFQUd4QkksRUFBZUosRUFBUyxLQUFLLFNBQVMsS0FBSyxHQUFLQSxFQUFTLEtBQUssU0FBUyxNQUFNLEVBRW5GLElBQUlLLEVBQWEsR0FDWCxNQUFB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
@@ -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 strict";const t=require("./utils.js");function N(m,C){const e=C.jscodeshift,o=e(m.source),c=m.path.endsWith(".ts")||m.path.endsWith(".tsx");let u=!1;const p=new Set;o.find(e.Identifier).forEach(d=>{p.add(d.node.name)});const s=t.generateUniqueName("CustomHeaderCell",p),h=t.findImportedName(e,o,"Grid","@progress/kendo-react-grid")||"Grid";return o.find(e.JSXElement,{openingElement:{name:{name:h}}}).forEach(d=>{const n=d.node.openingElement.attributes,a=n==null?void 0:n.find(i=>i.type==="JSXAttribute"&&i.name.name==="headerCellRender");if(a&&a.type==="JSXAttribute"){const i=a.value?e(a.value).toSource():"No value provided",{isClassComponent:l,isFunctionalComponent:f,parentNode:g}=t.findParentComponent(e,d);n&&t.ensureAttributeExists(e,n,"cells","headerCell",l?`this.${s}`:s);let r;l?r=t.createMethodForClassComponent(e,s,c,"GridCustomHeaderCellProps"):f&&(r=t.createArrowFunctionForFunctionalComponent(e,s,c,"GridCustomHeaderCellProps")),t.addMethodToComponent(e,g,r,l),r&&t.addCommentToMethod(e,e(r),`Original headerCellRender value: ${i}`,l?"class":"function"),t.removeAttribute(n,"headerCellRender")&&(u=!0)}}),u&&c&&t.ensureImportExists(e,o,"GridCustomHeaderCellProps","@progress/kendo-react-grid"),o.toSource()}module.exports=N;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWNlbGwtcmVuZGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL2NvZGVtb2RzL3YxMS9oZWFkZXItY2VsbC1yZW5kZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBJLCBGaWxlSW5mbywgSlNDb2Rlc2hpZnQsIEpTWEF0dHJpYnV0ZSwgSlNYU3ByZWFkQXR0cmlidXRlIH0gZnJvbSAnanNjb2Rlc2hpZnQnO1xuaW1wb3J0IHtcbiAgICBhZGRDb21tZW50VG9NZXRob2QsXG4gICAgZW5zdXJlQXR0cmlidXRlRXhpc3RzLFxuICAgIGZpbmRQYXJlbnRDb21wb25lbnQsXG4gICAgZ2VuZXJhdGVVbmlxdWVOYW1lLFxuICAgIGVuc3VyZUltcG9ydEV4aXN0cyxcbiAgICBjcmVhdGVNZXRob2RGb3JDbGFzc0NvbXBvbmVudCxcbiAgICBjcmVhdGVBcnJvd0Z1bmN0aW9uRm9yRnVuY3Rpb25hbENvbXBvbmVudCxcbiAgICBhZGRNZXRob2RUb0NvbXBvbmVudCxcbiAgICByZW1vdmVBdHRyaWJ1dGUsXG4gICAgZmluZEltcG9ydGVkTmFtZVxufSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gKGZpbGVJbmZvOiBGaWxlSW5mbywgYXBpOiBBUEkpIHtcbiAgICBjb25zdCBqOiBKU0NvZGVzaGlmdCA9IGFwaS5qc2NvZGVzaGlmdDtcbiAgICBjb25zdCByb290ID0gaihmaWxlSW5mby5zb3VyY2UpO1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIGZpbGUgaXMgVHlwZVNjcmlwdCBvciBUU1hcbiAgICBjb25zdCBpc1R5cGVTY3JpcHQgPSBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHMnKSB8fCBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHN4Jyk7XG5cbiAgICBsZXQgYWRkSW1wb3J0cyA9IGZhbHNlO1xuICAgIC8vIENvbGxlY3QgYWxsIGV4aXN0aW5nIG1ldGhvZCBuYW1lc1xuICAgIGNvbnN0IGV4aXN0aW5nTmFtZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICByb290LmZpbmQoai5JZGVudGlmaWVyKS5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIGV4aXN0aW5nTmFtZXMuYWRkKHBhdGgubm9kZS5uYW1lKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGJhc2VOYW1lID0gJ0N1c3RvbUhlYWRlckNlbGwnO1xuICAgIGNvbnN0IHVuaXF1ZU5hbWUgPSBnZW5lcmF0ZVVuaXF1ZU5hbWUoYmFzZU5hbWUsIGV4aXN0aW5nTmFtZXMpO1xuXG4gICAgLy8gRW5zdXJlcyB3ZSBmaW5kIHRoZSBjb3JyZWN0IEdyaWQgaW1wb3J0XG4gICAgLy8gaWYgdGhlIHVzZXIgaGFzIGltcG9ydGVkIGl0IHdpdGggYSBkaWZmZXJlbnQgbmFtZVxuICAgIC8vIGUuZy4gaW1wb3J0IHsgR3JpZCBhcyBLZW5kb0dyaWQgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tcmVhY3QtZ3JpZCc7XG4gICAgY29uc3QgZ3JpZE5hbWUgPSBmaW5kSW1wb3J0ZWROYW1lKGosIHJvb3QsICdHcmlkJywgJ0Bwcm9ncmVzcy9rZW5kby1yZWFjdC1ncmlkJykgfHwgJ0dyaWQnO1xuXG4gICAgLy8gRmluZCBhbGwgSlNYRWxlbWVudHMgd2l0aCB0aGUgbmFtZSAnR3JpZCdcbiAgICByb290LmZpbmQoai5KU1hFbGVtZW50LCB7IG9wZW5pbmdFbGVtZW50OiB7IG5hbWU6IHsgbmFtZTogZ3JpZE5hbWUgfSB9IH0pLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgY29uc3QgYXR0cmlidXRlcyA9IHBhdGgubm9kZS5vcGVuaW5nRWxlbWVudC5hdHRyaWJ1dGVzO1xuXG4gICAgICAgIC8vIEZpbmQgdGhlICdoZWFkZXJDZWxsUmVuZGVyJyBhdHRyaWJ1dGVcbiAgICAgICAgY29uc3QgaGVhZGVyQ2VsbFJlbmRlckF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXM/LmZpbmQoXG4gICAgICAgICAgICAoYXR0cikgPT4gYXR0ci50eXBlID09PSAnSlNYQXR0cmlidXRlJyAmJiBhdHRyLm5hbWUubmFtZSA9PT0gJ2hlYWRlckNlbGxSZW5kZXInXG4gICAgICAgICkgYXMgSlNYQXR0cmlidXRlO1xuXG4gICAgICAgIC8vIElmIHRoZSAnaGVhZGVyQ2VsbFJlbmRlcicgYXR0cmlidXRlIGV4aXN0cywgY29weSBpdHMgdmFsdWUgYXMgYSBjb21tZW50XG4gICAgICAgIGlmIChoZWFkZXJDZWxsUmVuZGVyQXR0cmlidXRlICYmIGhlYWRlckNlbGxSZW5kZXJBdHRyaWJ1dGUudHlwZSA9PT0gJ0pTWEF0dHJpYnV0ZScpIHtcbiAgICAgICAgICAgIGNvbnN0IGhlYWRlckNlbGxSZW5kZXJWYWx1ZSA9IGhlYWRlckNlbGxSZW5kZXJBdHRyaWJ1dGUudmFsdWVcbiAgICAgICAgICAgICAgICA/IGooaGVhZGVyQ2VsbFJlbmRlckF0dHJpYnV0ZS52YWx1ZSkudG9Tb3VyY2UoKVxuICAgICAgICAgICAgICAgIDogJ05vIHZhbHVlIHByb3ZpZGVkJztcblxuICAgICAgICAgICAgLy8gRmluZCB0aGUgcGFyZW50IGNvbXBvbmVudFxuICAgICAgICAgICAgY29uc3QgeyBpc0NsYXNzQ29tcG9uZW50LCBpc0Z1bmN0aW9uYWxDb21wb25lbnQsIHBhcmVudE5vZGUgfSA9IGZpbmRQYXJlbnRDb21wb25lbnQoaiwgcGF0aCk7XG5cbiAgICAgICAgICAgIGlmIChhdHRyaWJ1dGVzKSB7XG4gICAgICAgICAgICAgICAgLy8gRW5zdXJlIHRoZSAnY2VsbHMnIGF0dHJpYnV0ZSBleGlzdHNcbiAgICAgICAgICAgICAgICBlbnN1cmVBdHRyaWJ1dGVFeGlzdHMoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMsXG4gICAgICAgICAgICAgICAgICAgICdjZWxscycsXG4gICAgICAgICAgICAgICAgICAgICdoZWFkZXJDZWxsJyxcbiAgICAgICAgICAgICAgICAgICAgaXNDbGFzc0NvbXBvbmVudCA/IGB0aGlzLiR7dW5pcXVlTmFtZX1gIDogdW5pcXVlTmFtZVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENyZWF0ZSB0aGUgQ3VzdG9tSGVhZGVyQ2VsbCBtZXRob2RcbiAgICAgICAgICAgIGxldCBjdXN0b21NZXRob2Q7XG4gICAgICAgICAgICBpZiAoaXNDbGFzc0NvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgIGN1c3RvbU1ldGhvZCA9IGNyZWF0ZU1ldGhvZEZvckNsYXNzQ29tcG9uZW50KGosIHVuaXF1ZU5hbWUsIGlzVHlwZVNjcmlwdCwgJ0dyaWRDdXN0b21IZWFkZXJDZWxsUHJvcHMnKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNGdW5jdGlvbmFsQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgY3VzdG9tTWV0aG9kID0gY3JlYXRlQXJyb3dGdW5jdGlvbkZvckZ1bmN0aW9uYWxDb21wb25lbnQoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIHVuaXF1ZU5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGlzVHlwZVNjcmlwdCxcbiAgICAgICAgICAgICAgICAgICAgJ0dyaWRDdXN0b21IZWFkZXJDZWxsUHJvcHMnXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIHRoZSBDdXN0b21IZWFkZXJDZWxsIG1ldGhvZCB0byB0aGUgY29tcG9uZW50XG4gICAgICAgICAgICBhZGRNZXRob2RUb0NvbXBvbmVudChqLCBwYXJlbnROb2RlLCBjdXN0b21NZXRob2QsIGlzQ2xhc3NDb21wb25lbnQpO1xuXG4gICAgICAgICAgICAvLyBBZGQgdGhlIGhlYWRlckNlbGxSZW5kZXIgdmFsdWUgYXMgYSBjb21tZW50IGluIHRoZSBDdXN0b21IZWFkZXJDZWxsIG1ldGhvZFxuICAgICAgICAgICAgaWYgKGN1c3RvbU1ldGhvZCkge1xuICAgICAgICAgICAgICAgIGFkZENvbW1lbnRUb01ldGhvZChcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgaihjdXN0b21NZXRob2QpLFxuICAgICAgICAgICAgICAgICAgICBgT3JpZ2luYWwgaGVhZGVyQ2VsbFJlbmRlciB2YWx1ZTogJHtoZWFkZXJDZWxsUmVuZGVyVmFsdWV9YCxcbiAgICAgICAgICAgICAgICAgICAgaXNDbGFzc0NvbXBvbmVudCA/ICdjbGFzcycgOiAnZnVuY3Rpb24nXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSAnaGVhZGVyQ2VsbFJlbmRlcicgYXR0cmlidXRlXG4gICAgICAgICAgICBjb25zdCB3YXNSZW1vdmVkID0gcmVtb3ZlQXR0cmlidXRlKGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSwgJ2hlYWRlckNlbGxSZW5kZXInKTtcbiAgICAgICAgICAgIGlmICh3YXNSZW1vdmVkKSB7XG4gICAgICAgICAgICAgICAgYWRkSW1wb3J0cyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChhZGRJbXBvcnRzICYmIGlzVHlwZVNjcmlwdCkge1xuICAgICAgICAvLyBFbnN1cmUgdGhlIGltcG9ydCBmb3IgR3JpZEN1c3RvbUhlYWRlckNlbGxQcm9wcyBleGlzdHNcbiAgICAgICAgZW5zdXJlSW1wb3J0RXhpc3RzKGosIHJvb3QsICdHcmlkQ3VzdG9tSGVhZGVyQ2VsbFByb3BzJywgJ0Bwcm9ncmVzcy9rZW5kby1yZWFjdC1ncmlkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvb3QudG9Tb3VyY2UoKTtcbn1cbiJdLCJuYW1lcyI6WyJoZWFkZXJDZWxsUmVuZGVyIiwiZmlsZUluZm8iLCJhcGkiLCJqIiwicm9vdCIsImlzVHlwZVNjcmlwdCIsImFkZEltcG9ydHMiLCJleGlzdGluZ05hbWVzIiwicGF0aCIsInVuaXF1ZU5hbWUiLCJnZW5lcmF0ZVVuaXF1ZU5hbWUiLCJncmlkTmFtZSIsImZpbmRJbXBvcnRlZE5hbWUiLCJhdHRyaWJ1dGVzIiwiaGVhZGVyQ2VsbFJlbmRlckF0dHJpYnV0ZSIsImF0dHIiLCJoZWFkZXJDZWxsUmVuZGVyVmFsdWUiLCJpc0NsYXNzQ29tcG9uZW50IiwiaXNGdW5jdGlvbmFsQ29tcG9uZW50IiwicGFyZW50Tm9kZSIsImZpbmRQYXJlbnRDb21wb25lbnQiLCJlbnN1cmVBdHRyaWJ1dGVFeGlzdHMiLCJjdXN0b21NZXRob2QiLCJjcmVhdGVNZXRob2RGb3JDbGFzc0NvbXBvbmVudCIsImNyZWF0ZUFycm93RnVuY3Rpb25Gb3JGdW5jdGlvbmFsQ29tcG9uZW50IiwiYWRkTWV0aG9kVG9Db21wb25lbnQiLCJhZGRDb21tZW50VG9NZXRob2QiLCJyZW1vdmVBdHRyaWJ1dGUiLCJlbnN1cmVJbXBvcnRFeGlzdHMiXSwibWFwcGluZ3MiOiIyQ0FjQSxTQUFBQSxFQUF5QkMsRUFBb0JDLEVBQVUsQ0FDbkQsTUFBTUMsRUFBaUJELEVBQUksWUFDckJFLEVBQU9ELEVBQUVGLEVBQVMsTUFBTSxFQUd4QkksRUFBZUosRUFBUyxLQUFLLFNBQVMsS0FBSyxHQUFLQSxFQUFTLEtBQUssU0FBUyxNQUFNLEVBRW5GLElBQUlLLEVBQWEsR0FFWCxNQUFBQyxNQUFvQixJQUMxQkgsRUFBSyxLQUFLRCxFQUFFLFVBQVUsRUFBRSxRQUFTSyxHQUFTLENBQ3hCRCxFQUFBLElBQUlDLEVBQUssS0FBSyxJQUFJLENBQUEsQ0FDbkMsRUFHSyxNQUFBQyxFQUFhQyxFQUFBQSxtQkFERixtQkFDK0JILENBQWEsRUFLdkRJLEVBQVdDLEVBQUFBLGlCQUFpQlQsRUFBR0MsRUFBTSxPQUFRLDRCQUE0QixHQUFLLE9BR3BGLE9BQUFBLEVBQUssS0FBS0QsRUFBRSxXQUFZLENBQUUsZUFBZ0IsQ0FBRSxLQUFNLENBQUUsS0FBTVEsQ0FBQSxDQUFhLENBQUEsQ0FBQyxFQUFFLFFBQVNILEdBQVMsQ0FDbEYsTUFBQUssRUFBYUwsRUFBSyxLQUFLLGVBQWUsV0FHdENNLEVBQTRCRCxHQUFBLFlBQUFBLEVBQVksS0FDekNFLEdBQVNBLEVBQUssT0FBUyxnQkFBa0JBLEVBQUssS0FBSyxPQUFTLG9CQUk3RCxHQUFBRCxHQUE2QkEsRUFBMEIsT0FBUyxlQUFnQixDQUMxRSxNQUFBRSxFQUF3QkYsRUFBMEIsTUFDbERYLEVBQUVXLEVBQTBCLEtBQUssRUFBRSxTQUNuQyxFQUFBLG9CQUdBLENBQUUsaUJBQUFHLEVBQWtCLHNCQUFBQyxFQUF1QixXQUFBQyxDQUFlLEVBQUFDLHNCQUFvQmpCLEVBQUdLLENBQUksRUFFdkZLLEdBRUFRLEVBQUEsc0JBQ0lsQixFQUNBVSxFQUNBLFFBQ0EsYUFDQUksRUFBbUIsUUFBUVIsQ0FBVSxHQUFLQSxDQUFBLEVBSzlDLElBQUFhLEVBQ0FMLEVBQ0FLLEVBQWVDLEVBQThCLDhCQUFBcEIsRUFBR00sRUFBWUosRUFBYywyQkFBMkIsRUFDOUZhLElBQ1FJLEVBQUFFLEVBQUEsMENBQ1hyQixFQUNBTSxFQUNBSixFQUNBLDJCQUFBLEdBS2FvQixFQUFBQSxxQkFBQXRCLEVBQUdnQixFQUFZRyxFQUFjTCxDQUFnQixFQUc5REssR0FDQUksRUFBQSxtQkFDSXZCLEVBQ0FBLEVBQUVtQixDQUFZLEVBQ2Qsb0NBQW9DTixDQUFxQixHQUN6REMsRUFBbUIsUUFBVSxVQUFBLEVBS2xCVSxFQUFBQSxnQkFBZ0JkLEVBQXFELGtCQUFrQixJQUV6RlAsRUFBQSxHQUVyQixDQUFBLENBQ0gsRUFFR0EsR0FBY0QsR0FFS3VCLEVBQUFBLG1CQUFBekIsRUFBR0MsRUFBTSw0QkFBNkIsNEJBQTRCLEVBR2xGQSxFQUFLLFVBQ2hCIn0=
@@ -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 strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./cell-render.js"),r=require("./column-cell.js"),l=require("./column-filter-cell.js"),t=require("./column-footer-cell.js"),n=require("./column-header-cell.js"),o=require("./detail-expand-state.js"),i=require("./edit-state.js"),u=require("./filter-cell-render.js"),c=require("./group-expand-state.js"),d=require("./header-cell-render.js"),a=require("./row-render.js"),C=require("./selection-state.js");exports.CellRender=e;exports.ColumnCell=r;exports.ColumnFilterCell=l;exports.ColumnFooterCell=t;exports.ColumnHeaderCell=n;exports.DetailExpand=o;exports.EditState=i;exports.FilterCellRender=u;exports.GroupExpandState=c;exports.HeaderCellRender=d;exports.RowRender=a;exports.SelectionState=C;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -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 strict";const t=require("./utils.js");function h(u,f){const e=f.jscodeshift,n=e(u.source),c=u.path.endsWith(".ts")||u.path.endsWith(".tsx");let p=!1;const l=new Set;n.find(e.Identifier).forEach(i=>{l.add(i.node.name)});const s=t.generateUniqueName("CustomRow",l),w=t.findImportedName(e,n,"Grid","@progress/kendo-react-grid")||"Grid";return n.find(e.JSXElement,{openingElement:{name:{name:w}}}).forEach(i=>{const o=i.node.openingElement.attributes,d=o==null?void 0:o.find(a=>a.type==="JSXAttribute"&&a.name.name==="rowRender");if(d&&d.type==="JSXAttribute"){const a=d.value?e(d.value).toSource():"No value provided",{isClassComponent:m,isFunctionalComponent:C,parentNode:R}=t.findParentComponent(e,i);o&&t.ensureAttributeExists(e,o,"rows","data",m?`this.${s}`:s);let r;m?r=t.createMethodForClassComponent(e,s,c,"GridCustomRowProps"):C&&(r=t.createArrowFunctionForFunctionalComponent(e,s,c,"GridCustomRowProps")),t.addMethodToComponent(e,R,r,m),r&&t.addCommentToMethod(e,e(r),`Original rowRender value: ${a}`,m?"class":"function"),t.removeAttribute(o,"rowRender")&&(p=!0)}}),p&&c&&t.ensureImportExists(e,n,"GridCustomRowProps","@progress/kendo-react-grid"),n.toSource()}module.exports=h;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LXJlbmRlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9jb2RlbW9kcy92MTEvcm93LXJlbmRlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUEksIEZpbGVJbmZvLCBKU0NvZGVzaGlmdCwgSlNYQXR0cmlidXRlLCBKU1hTcHJlYWRBdHRyaWJ1dGUgfSBmcm9tICdqc2NvZGVzaGlmdCc7XG5pbXBvcnQge1xuICAgIGFkZENvbW1lbnRUb01ldGhvZCxcbiAgICBlbnN1cmVBdHRyaWJ1dGVFeGlzdHMsXG4gICAgZmluZFBhcmVudENvbXBvbmVudCxcbiAgICBnZW5lcmF0ZVVuaXF1ZU5hbWUsXG4gICAgZW5zdXJlSW1wb3J0RXhpc3RzLFxuICAgIGNyZWF0ZU1ldGhvZEZvckNsYXNzQ29tcG9uZW50LFxuICAgIGNyZWF0ZUFycm93RnVuY3Rpb25Gb3JGdW5jdGlvbmFsQ29tcG9uZW50LFxuICAgIGFkZE1ldGhvZFRvQ29tcG9uZW50LFxuICAgIHJlbW92ZUF0dHJpYnV0ZSxcbiAgICBmaW5kSW1wb3J0ZWROYW1lXG59IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAoZmlsZUluZm86IEZpbGVJbmZvLCBhcGk6IEFQSSkge1xuICAgIGNvbnN0IGo6IEpTQ29kZXNoaWZ0ID0gYXBpLmpzY29kZXNoaWZ0O1xuICAgIGNvbnN0IHJvb3QgPSBqKGZpbGVJbmZvLnNvdXJjZSk7XG5cbiAgICAvLyBDaGVjayBpZiB0aGUgZmlsZSBpcyBUeXBlU2NyaXB0IG9yIFRTWFxuICAgIGNvbnN0IGlzVHlwZVNjcmlwdCA9IGZpbGVJbmZvLnBhdGguZW5kc1dpdGgoJy50cycpIHx8IGZpbGVJbmZvLnBhdGguZW5kc1dpdGgoJy50c3gnKTtcblxuICAgIGxldCBhZGRJbXBvcnRzID0gZmFsc2U7XG4gICAgLy8gQ29sbGVjdCBhbGwgZXhpc3RpbmcgbWV0aG9kIG5hbWVzXG4gICAgY29uc3QgZXhpc3RpbmdOYW1lcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIHJvb3QuZmluZChqLklkZW50aWZpZXIpLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgZXhpc3RpbmdOYW1lcy5hZGQocGF0aC5ub2RlLm5hbWUpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgYmFzZU5hbWUgPSAnQ3VzdG9tUm93JztcbiAgICBjb25zdCB1bmlxdWVOYW1lID0gZ2VuZXJhdGVVbmlxdWVOYW1lKGJhc2VOYW1lLCBleGlzdGluZ05hbWVzKTtcblxuICAgIC8vIEVuc3VyZXMgd2UgZmluZCB0aGUgY29ycmVjdCBHcmlkIGltcG9ydFxuICAgIC8vIGlmIHRoZSB1c2VyIGhhcyBpbXBvcnRlZCBpdCB3aXRoIGEgZGlmZmVyZW50IG5hbWVcbiAgICAvLyBlLmcuIGltcG9ydCB7IEdyaWQgYXMgS2VuZG9HcmlkIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWdyaWQnO1xuICAgIGNvbnN0IGdyaWROYW1lID0gZmluZEltcG9ydGVkTmFtZShqLCByb290LCAnR3JpZCcsICdAcHJvZ3Jlc3Mva2VuZG8tcmVhY3QtZ3JpZCcpIHx8ICdHcmlkJztcblxuICAgIC8vIEZpbmQgYWxsIEpTWEVsZW1lbnRzIHdpdGggdGhlIG5hbWUgJ0dyaWQnXG4gICAgcm9vdC5maW5kKGouSlNYRWxlbWVudCwgeyBvcGVuaW5nRWxlbWVudDogeyBuYW1lOiB7IG5hbWU6IGdyaWROYW1lIH0gfSB9KS5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBwYXRoLm5vZGUub3BlbmluZ0VsZW1lbnQuYXR0cmlidXRlcztcblxuICAgICAgICAvLyBGaW5kIHRoZSAncm93UmVuZGVyJyBhdHRyaWJ1dGVcbiAgICAgICAgY29uc3Qgcm93UmVuZGVyQXR0cmlidXRlID0gYXR0cmlidXRlcz8uZmluZChcbiAgICAgICAgICAgIChhdHRyKSA9PiBhdHRyLnR5cGUgPT09ICdKU1hBdHRyaWJ1dGUnICYmIGF0dHIubmFtZS5uYW1lID09PSAncm93UmVuZGVyJ1xuICAgICAgICApIGFzIEpTWEF0dHJpYnV0ZTtcblxuICAgICAgICAvLyBJZiB0aGUgJ3Jvd1JlbmRlcicgYXR0cmlidXRlIGV4aXN0cywgY29weSBpdHMgdmFsdWUgYXMgYSBjb21tZW50XG4gICAgICAgIGlmIChyb3dSZW5kZXJBdHRyaWJ1dGUgJiYgcm93UmVuZGVyQXR0cmlidXRlLnR5cGUgPT09ICdKU1hBdHRyaWJ1dGUnKSB7XG4gICAgICAgICAgICBjb25zdCByb3dSZW5kZXJWYWx1ZSA9IHJvd1JlbmRlckF0dHJpYnV0ZS52YWx1ZVxuICAgICAgICAgICAgICAgID8gaihyb3dSZW5kZXJBdHRyaWJ1dGUudmFsdWUpLnRvU291cmNlKClcbiAgICAgICAgICAgICAgICA6ICdObyB2YWx1ZSBwcm92aWRlZCc7XG5cbiAgICAgICAgICAgIC8vIEZpbmQgdGhlIHBhcmVudCBjb21wb25lbnRcbiAgICAgICAgICAgIGNvbnN0IHsgaXNDbGFzc0NvbXBvbmVudCwgaXNGdW5jdGlvbmFsQ29tcG9uZW50LCBwYXJlbnROb2RlIH0gPSBmaW5kUGFyZW50Q29tcG9uZW50KGosIHBhdGgpO1xuXG4gICAgICAgICAgICBpZiAoYXR0cmlidXRlcykge1xuICAgICAgICAgICAgICAgIC8vIEVuc3VyZSB0aGUgJ3Jvd3MnIGF0dHJpYnV0ZSBleGlzdHNcbiAgICAgICAgICAgICAgICBlbnN1cmVBdHRyaWJ1dGVFeGlzdHMoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMsXG4gICAgICAgICAgICAgICAgICAgICdyb3dzJyxcbiAgICAgICAgICAgICAgICAgICAgJ2RhdGEnLFxuICAgICAgICAgICAgICAgICAgICBpc0NsYXNzQ29tcG9uZW50ID8gYHRoaXMuJHt1bmlxdWVOYW1lfWAgOiB1bmlxdWVOYW1lXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIENyZWF0ZSB0aGUgQ3VzdG9tUm93IG1ldGhvZFxuICAgICAgICAgICAgbGV0IGN1c3RvbU1ldGhvZDtcbiAgICAgICAgICAgIGlmIChpc0NsYXNzQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgY3VzdG9tTWV0aG9kID0gY3JlYXRlTWV0aG9kRm9yQ2xhc3NDb21wb25lbnQoaiwgdW5pcXVlTmFtZSwgaXNUeXBlU2NyaXB0LCAnR3JpZEN1c3RvbVJvd1Byb3BzJyk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGlzRnVuY3Rpb25hbENvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgIGN1c3RvbU1ldGhvZCA9IGNyZWF0ZUFycm93RnVuY3Rpb25Gb3JGdW5jdGlvbmFsQ29tcG9uZW50KFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICB1bmlxdWVOYW1lLFxuICAgICAgICAgICAgICAgICAgICBpc1R5cGVTY3JpcHQsXG4gICAgICAgICAgICAgICAgICAgICdHcmlkQ3VzdG9tUm93UHJvcHMnXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIHRoZSBDdXN0b21Sb3cgbWV0aG9kIHRvIHRoZSBjb21wb25lbnRcbiAgICAgICAgICAgIGFkZE1ldGhvZFRvQ29tcG9uZW50KGosIHBhcmVudE5vZGUsIGN1c3RvbU1ldGhvZCwgaXNDbGFzc0NvbXBvbmVudCk7XG5cbiAgICAgICAgICAgIC8vIEFkZCB0aGUgcm93UmVuZGVyIHZhbHVlIGFzIGEgY29tbWVudCBpbiB0aGUgQ3VzdG9tUm93IG1ldGhvZFxuICAgICAgICAgICAgaWYgKGN1c3RvbU1ldGhvZCkge1xuICAgICAgICAgICAgICAgIGFkZENvbW1lbnRUb01ldGhvZChcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgaihjdXN0b21NZXRob2QpLFxuICAgICAgICAgICAgICAgICAgICBgT3JpZ2luYWwgcm93UmVuZGVyIHZhbHVlOiAke3Jvd1JlbmRlclZhbHVlfWAsXG4gICAgICAgICAgICAgICAgICAgIGlzQ2xhc3NDb21wb25lbnQgPyAnY2xhc3MnIDogJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJlbW92ZSB0aGUgJ3Jvd1JlbmRlcicgYXR0cmlidXRlXG4gICAgICAgICAgICBjb25zdCB3YXNSZW1vdmVkID0gcmVtb3ZlQXR0cmlidXRlKGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSwgJ3Jvd1JlbmRlcicpO1xuICAgICAgICAgICAgaWYgKHdhc1JlbW92ZWQpIHtcbiAgICAgICAgICAgICAgICBhZGRJbXBvcnRzID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGFkZEltcG9ydHMgJiYgaXNUeXBlU2NyaXB0KSB7XG4gICAgICAgIC8vIEVuc3VyZSB0aGUgaW1wb3J0IGZvciBHcmlkQ3VzdG9tUm93UHJvcHMgZXhpc3RzXG4gICAgICAgIGVuc3VyZUltcG9ydEV4aXN0cyhqLCByb290LCAnR3JpZEN1c3RvbVJvd1Byb3BzJywgJ0Bwcm9ncmVzcy9rZW5kby1yZWFjdC1ncmlkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvb3QudG9Tb3VyY2UoKTtcbn1cbiJdLCJuYW1lcyI6WyJyb3dSZW5kZXIiLCJmaWxlSW5mbyIsImFwaSIsImoiLCJyb290IiwiaXNUeXBlU2NyaXB0IiwiYWRkSW1wb3J0cyIsImV4aXN0aW5nTmFtZXMiLCJwYXRoIiwidW5pcXVlTmFtZSIsImdlbmVyYXRlVW5pcXVlTmFtZSIsImdyaWROYW1lIiwiZmluZEltcG9ydGVkTmFtZSIsImF0dHJpYnV0ZXMiLCJyb3dSZW5kZXJBdHRyaWJ1dGUiLCJhdHRyIiwicm93UmVuZGVyVmFsdWUiLCJpc0NsYXNzQ29tcG9uZW50IiwiaXNGdW5jdGlvbmFsQ29tcG9uZW50IiwicGFyZW50Tm9kZSIsImZpbmRQYXJlbnRDb21wb25lbnQiLCJlbnN1cmVBdHRyaWJ1dGVFeGlzdHMiLCJjdXN0b21NZXRob2QiLCJjcmVhdGVNZXRob2RGb3JDbGFzc0NvbXBvbmVudCIsImNyZWF0ZUFycm93RnVuY3Rpb25Gb3JGdW5jdGlvbmFsQ29tcG9uZW50IiwiYWRkTWV0aG9kVG9Db21wb25lbnQiLCJhZGRDb21tZW50VG9NZXRob2QiLCJyZW1vdmVBdHRyaWJ1dGUiLCJlbnN1cmVJbXBvcnRFeGlzdHMiXSwibWFwcGluZ3MiOiIyQ0FjQSxTQUFBQSxFQUF5QkMsRUFBb0JDLEVBQVUsQ0FDbkQsTUFBTUMsRUFBaUJELEVBQUksWUFDckJFLEVBQU9ELEVBQUVGLEVBQVMsTUFBTSxFQUd4QkksRUFBZUosRUFBUyxLQUFLLFNBQVMsS0FBSyxHQUFLQSxFQUFTLEtBQUssU0FBUyxNQUFNLEVBRW5GLElBQUlLLEVBQWEsR0FFWCxNQUFBQyxNQUFvQixJQUMxQkgsRUFBSyxLQUFLRCxFQUFFLFVBQVUsRUFBRSxRQUFTSyxHQUFTLENBQ3hCRCxFQUFBLElBQUlDLEVBQUssS0FBSyxJQUFJLENBQUEsQ0FDbkMsRUFHSyxNQUFBQyxFQUFhQyxFQUFBQSxtQkFERixZQUMrQkgsQ0FBYSxFQUt2REksRUFBV0MsRUFBQUEsaUJBQWlCVCxFQUFHQyxFQUFNLE9BQVEsNEJBQTRCLEdBQUssT0FHcEYsT0FBQUEsRUFBSyxLQUFLRCxFQUFFLFdBQVksQ0FBRSxlQUFnQixDQUFFLEtBQU0sQ0FBRSxLQUFNUSxDQUFBLENBQWEsQ0FBQSxDQUFDLEVBQUUsUUFBU0gsR0FBUyxDQUNsRixNQUFBSyxFQUFhTCxFQUFLLEtBQUssZUFBZSxXQUd0Q00sRUFBcUJELEdBQUEsWUFBQUEsRUFBWSxLQUNsQ0UsR0FBU0EsRUFBSyxPQUFTLGdCQUFrQkEsRUFBSyxLQUFLLE9BQVMsYUFJN0QsR0FBQUQsR0FBc0JBLEVBQW1CLE9BQVMsZUFBZ0IsQ0FDNUQsTUFBQUUsRUFBaUJGLEVBQW1CLE1BQ3BDWCxFQUFFVyxFQUFtQixLQUFLLEVBQUUsU0FDNUIsRUFBQSxvQkFHQSxDQUFFLGlCQUFBRyxFQUFrQixzQkFBQUMsRUFBdUIsV0FBQUMsQ0FBZSxFQUFBQyxzQkFBb0JqQixFQUFHSyxDQUFJLEVBRXZGSyxHQUVBUSxFQUFBLHNCQUNJbEIsRUFDQVUsRUFDQSxPQUNBLE9BQ0FJLEVBQW1CLFFBQVFSLENBQVUsR0FBS0EsQ0FBQSxFQUk5QyxJQUFBYSxFQUNBTCxFQUNBSyxFQUFlQyxFQUE4Qiw4QkFBQXBCLEVBQUdNLEVBQVlKLEVBQWMsb0JBQW9CLEVBQ3ZGYSxJQUNRSSxFQUFBRSxFQUFBLDBDQUNYckIsRUFDQU0sRUFDQUosRUFDQSxvQkFBQSxHQUthb0IsRUFBQUEscUJBQUF0QixFQUFHZ0IsRUFBWUcsRUFBY0wsQ0FBZ0IsRUFHOURLLEdBQ0FJLEVBQUEsbUJBQ0l2QixFQUNBQSxFQUFFbUIsQ0FBWSxFQUNkLDZCQUE2Qk4sQ0FBYyxHQUMzQ0MsRUFBbUIsUUFBVSxVQUFBLEVBS2xCVSxFQUFBQSxnQkFBZ0JkLEVBQXFELFdBQVcsSUFFbEZQLEVBQUEsR0FFckIsQ0FBQSxDQUNILEVBRUdBLEdBQWNELEdBRUt1QixFQUFBQSxtQkFBQXpCLEVBQUdDLEVBQU0scUJBQXNCLDRCQUE0QixFQUczRUEsRUFBSyxVQUNoQiJ9
@@ -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 strict";const t=require("./utils.js");function g(c,S){const e=S.jscodeshift,s=e(c.source),o=c.path.endsWith(".ts")||c.path.endsWith(".tsx");let u=!1;const m=new Set;s.find(e.Identifier).forEach(a=>{m.add(a.node.name)});const r=t.generateUniqueName("handleSelectionChange",m),h=t.findImportedName(e,s,"Grid","@progress/kendo-react-grid")||"Grid";return s.find(e.JSXElement,{openingElement:{name:{name:h}}}).forEach(a=>{const n=a.node.openingElement.attributes,l=n==null?void 0:n.find(i=>i.type==="JSXAttribute"&&i.name.name==="selectedField");if(!l)return;const p=l.value?e(l.value).toSource():"No value provided";t.removeAttribute(n,"selectedField"),u=!0,t.hasJSXAttribute(n,"selectable")||t.addStateAttribute(e,n,"selectable","true"),t.hasJSXAttribute(n,"dataItemKey")||t.addStateAttribute(e,n,"dataItemKey",'"place your key here"');const{isClassComponent:f,isFunctionalComponent:b,parentNode:d}=t.findParentComponent(e,a);if(f){if(t.addStateDeclaration(e,d,"select",e.objectExpression([])),t.hasJSXAttribute(n,"select")||t.addStateAttribute(e,n,"select","this.state.select"),!t.hasJSXAttribute(n,"onSelectionChange")){t.addEventAttribute(e,n,"onSelectionChange",`this.${r}`);const i=t.createClassMethod(e,r,[`event${o?": GridSelectionChangeEvent":""}`],[e.expressionStatement(e.callExpression(e.memberExpression(e.thisExpression(),e.identifier("setState")),[e.objectExpression([e.property("init",e.identifier("select"),e.memberExpression(e.identifier("event"),e.identifier("select")))])]))]);t.addCommentToMethod(e,e(i),`Original selectedField value: ${p}`,"class"),t.addMethodToComponent(e,d,i,!0)}}else if(b&&(t.addUseStateDeclaration(e,d,"select","setSelect",e.objectExpression([]),o,"SelectDescriptor"),t.hasJSXAttribute(n,"select")||t.addStateAttribute(e,n,"select","select"),!t.hasJSXAttribute(n,"onSelectionChange"))){t.addEventAttribute(e,n,"onSelectionChange",`${r}`);const i=t.createArrowFunction(e,`${r}`,[`(event${o?": GridSelectionChangeEvent":""})`],[e.expressionStatement(e.callExpression(e.identifier("setSelect"),[e.memberExpression(e.identifier("event"),e.identifier("select"))]))]);t.addCommentToMethod(e,e(i),`Original selectedField value: ${p}`,"function"),t.addMethodToComponent(e,d,i,!1)}}),u&&o&&(t.ensureImportExists(e,s,"SelectDescriptor","@progress/kendo-react-data-tools"),t.ensureImportExists(e,s,"GridSelectionChangeEvent","@progress/kendo-react-grid")),s.toSource()}module.exports=g;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLXN0YXRlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL2NvZGVtb2RzL3YxMS9zZWxlY3Rpb24tc3RhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBJLCBGaWxlSW5mbywgSlNDb2Rlc2hpZnQsIEpTWEF0dHJpYnV0ZSwgSlNYU3ByZWFkQXR0cmlidXRlIH0gZnJvbSAnanNjb2Rlc2hpZnQnO1xuaW1wb3J0IHtcbiAgICBhZGRNZXRob2RUb0NvbXBvbmVudCxcbiAgICByZW1vdmVBdHRyaWJ1dGUsXG4gICAgZmluZFBhcmVudENvbXBvbmVudCxcbiAgICBnZW5lcmF0ZVVuaXF1ZU5hbWUsXG4gICAgZW5zdXJlSW1wb3J0RXhpc3RzLFxuICAgIGFkZEV2ZW50QXR0cmlidXRlLFxuICAgIGFkZFN0YXRlQXR0cmlidXRlLFxuICAgIGFkZFN0YXRlRGVjbGFyYXRpb24sXG4gICAgYWRkVXNlU3RhdGVEZWNsYXJhdGlvbixcbiAgICBmaW5kSW1wb3J0ZWROYW1lLFxuICAgIGNyZWF0ZUNsYXNzTWV0aG9kLFxuICAgIGNyZWF0ZUFycm93RnVuY3Rpb24sXG4gICAgaGFzSlNYQXR0cmlidXRlLFxuICAgIGFkZENvbW1lbnRUb01ldGhvZFxufSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gKGZpbGVJbmZvOiBGaWxlSW5mbywgYXBpOiBBUEkpIHtcbiAgICBjb25zdCBqOiBKU0NvZGVzaGlmdCA9IGFwaS5qc2NvZGVzaGlmdDtcbiAgICBjb25zdCByb290ID0gaihmaWxlSW5mby5zb3VyY2UpO1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIGZpbGUgaXMgVHlwZVNjcmlwdCBvciBUU1hcbiAgICBjb25zdCBpc1R5cGVTY3JpcHQgPSBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHMnKSB8fCBmaWxlSW5mby5wYXRoLmVuZHNXaXRoKCcudHN4Jyk7XG5cbiAgICBsZXQgYWRkSW1wb3J0cyA9IGZhbHNlO1xuICAgIGNvbnN0IGV4aXN0aW5nTmFtZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICByb290LmZpbmQoai5JZGVudGlmaWVyKS5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIGV4aXN0aW5nTmFtZXMuYWRkKHBhdGgubm9kZS5uYW1lKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGJhc2VOYW1lID0gJ2hhbmRsZVNlbGVjdGlvbkNoYW5nZSc7XG4gICAgY29uc3QgdW5pcXVlTmFtZSA9IGdlbmVyYXRlVW5pcXVlTmFtZShiYXNlTmFtZSwgZXhpc3RpbmdOYW1lcyk7XG5cbiAgICAvLyBEeW5hbWljYWxseSByZXNvbHZlIHRoZSBpbXBvcnRlZCBuYW1lIGZvciBgR3JpZGBcbiAgICBjb25zdCBncmlkTmFtZSA9IGZpbmRJbXBvcnRlZE5hbWUoaiwgcm9vdCwgJ0dyaWQnLCAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWdyaWQnKSB8fCAnR3JpZCc7XG5cbiAgICAvLyBGaW5kIGFsbCBKU1hFbGVtZW50cyB3aXRoIHRoZSBuYW1lIG9mIHRoZSByZXNvbHZlZCBgR3JpZGAgY29tcG9uZW50XG4gICAgY29uc3QgZ3JpZEVsZW1lbnRzID0gcm9vdC5maW5kKGouSlNYRWxlbWVudCwgeyBvcGVuaW5nRWxlbWVudDogeyBuYW1lOiB7IG5hbWU6IGdyaWROYW1lIH0gfSB9KTtcblxuICAgIGdyaWRFbGVtZW50cy5mb3JFYWNoKChncmlkUGF0aCkgPT4ge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVzID0gZ3JpZFBhdGgubm9kZS5vcGVuaW5nRWxlbWVudC5hdHRyaWJ1dGVzO1xuXG4gICAgICAgIC8vIENoZWNrIGlmIHRoZSBgc2VsZWN0ZWRGaWVsZGAgYXR0cmlidXRlIGV4aXN0c1xuICAgICAgICBjb25zdCBzZWxlY3RlZEZpZWxkQXR0cmlidXRlID0gYXR0cmlidXRlcz8uZmluZChcbiAgICAgICAgICAgIChhdHRyKSA9PiBhdHRyLnR5cGUgPT09ICdKU1hBdHRyaWJ1dGUnICYmIGF0dHIubmFtZS5uYW1lID09PSAnc2VsZWN0ZWRGaWVsZCdcbiAgICAgICAgKSBhcyBKU1hBdHRyaWJ1dGU7XG5cbiAgICAgICAgaWYgKCFzZWxlY3RlZEZpZWxkQXR0cmlidXRlKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIFNraXAgdGhpcyBHcmlkIGlmIGBzZWxlY3RlZEZpZWxkYCBpcyBub3QgcHJlc2VudFxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ29weSB0aGUgdmFsdWUgb2YgYHNlbGVjdGVkRmllbGRgIGFzIGEgY29tbWVudFxuICAgICAgICBjb25zdCBzZWxlY3RlZEZpZWxkVmFsdWUgPSBzZWxlY3RlZEZpZWxkQXR0cmlidXRlLnZhbHVlXG4gICAgICAgICAgICA/IGooc2VsZWN0ZWRGaWVsZEF0dHJpYnV0ZS52YWx1ZSkudG9Tb3VyY2UoKVxuICAgICAgICAgICAgOiAnTm8gdmFsdWUgcHJvdmlkZWQnO1xuXG4gICAgICAgIC8vIFJlbW92ZSB0aGUgYHNlbGVjdGVkRmllbGRgIGF0dHJpYnV0ZVxuICAgICAgICByZW1vdmVBdHRyaWJ1dGUoYXR0cmlidXRlcyBhcyAoSlNYQXR0cmlidXRlIHwgSlNYU3ByZWFkQXR0cmlidXRlKVtdLCAnc2VsZWN0ZWRGaWVsZCcpO1xuICAgICAgICBhZGRJbXBvcnRzID0gdHJ1ZTtcblxuICAgICAgICAvLyBFbnN1cmUgYHNlbGVjdGFibGVgIGF0dHJpYnV0ZSBpcyBwcmVzZW50IGFuZCBzZXQgdG8gdHJ1ZVxuICAgICAgICBpZiAoIWhhc0pTWEF0dHJpYnV0ZShhdHRyaWJ1dGVzLCAnc2VsZWN0YWJsZScpKSB7XG4gICAgICAgICAgICBhZGRTdGF0ZUF0dHJpYnV0ZShqLCBhdHRyaWJ1dGVzIGFzIChKU1hBdHRyaWJ1dGUgfCBKU1hTcHJlYWRBdHRyaWJ1dGUpW10sICdzZWxlY3RhYmxlJywgJ3RydWUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVuc3VyZSBgZGF0YUl0ZW1LZXlgIGF0dHJpYnV0ZSBpcyBwcmVzZW50XG4gICAgICAgIGlmICghaGFzSlNYQXR0cmlidXRlKGF0dHJpYnV0ZXMsICdkYXRhSXRlbUtleScpKSB7XG4gICAgICAgICAgICBhZGRTdGF0ZUF0dHJpYnV0ZShcbiAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSxcbiAgICAgICAgICAgICAgICAnZGF0YUl0ZW1LZXknLFxuICAgICAgICAgICAgICAgICdcInBsYWNlIHlvdXIga2V5IGhlcmVcIidcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEZXRlcm1pbmUgaWYgdGhlIHBhcmVudCBjb21wb25lbnQgaXMgYSBjbGFzcyBvciBmdW5jdGlvbmFsIGNvbXBvbmVudFxuICAgICAgICBjb25zdCB7IGlzQ2xhc3NDb21wb25lbnQsIGlzRnVuY3Rpb25hbENvbXBvbmVudCwgcGFyZW50Tm9kZSB9ID0gZmluZFBhcmVudENvbXBvbmVudChqLCBncmlkUGF0aCk7XG5cbiAgICAgICAgaWYgKGlzQ2xhc3NDb21wb25lbnQpIHtcbiAgICAgICAgICAgIC8vIEFkZCBgc2VsZWN0YCB0byB0aGUgY2xhc3MgY29tcG9uZW50J3Mgc3RhdGVcbiAgICAgICAgICAgIGFkZFN0YXRlRGVjbGFyYXRpb24oaiwgcGFyZW50Tm9kZSwgJ3NlbGVjdCcsIGoub2JqZWN0RXhwcmVzc2lvbihbXSkpO1xuXG4gICAgICAgICAgICAvLyBBZGQgYHNlbGVjdGAgYW5kIGBvblNlbGVjdGlvbkNoYW5nZWAgYXR0cmlidXRlc1xuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ3NlbGVjdCcpKSB7XG4gICAgICAgICAgICAgICAgYWRkU3RhdGVBdHRyaWJ1dGUoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSxcbiAgICAgICAgICAgICAgICAgICAgJ3NlbGVjdCcsXG4gICAgICAgICAgICAgICAgICAgICd0aGlzLnN0YXRlLnNlbGVjdCdcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWhhc0pTWEF0dHJpYnV0ZShhdHRyaWJ1dGVzLCAnb25TZWxlY3Rpb25DaGFuZ2UnKSkge1xuICAgICAgICAgICAgICAgIGFkZEV2ZW50QXR0cmlidXRlKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzIGFzIChKU1hBdHRyaWJ1dGUgfCBKU1hTcHJlYWRBdHRyaWJ1dGUpW10sXG4gICAgICAgICAgICAgICAgICAgICdvblNlbGVjdGlvbkNoYW5nZScsXG4gICAgICAgICAgICAgICAgICAgIGB0aGlzLiR7dW5pcXVlTmFtZX1gXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIC8vIENyZWF0ZSBhbmQgYWRkIGBoYW5kbGVTZWxlY3Rpb25DaGFuZ2VgIG1ldGhvZFxuICAgICAgICAgICAgICAgIGNvbnN0IGhhbmRsZVNlbGVjdGlvbkNoYW5nZU1ldGhvZCA9IGNyZWF0ZUNsYXNzTWV0aG9kKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICB1bmlxdWVOYW1lLFxuICAgICAgICAgICAgICAgICAgICBbYGV2ZW50JHtpc1R5cGVTY3JpcHQgPyAnOiBHcmlkU2VsZWN0aW9uQ2hhbmdlRXZlbnQnIDogJyd9YF0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGouZXhwcmVzc2lvblN0YXRlbWVudChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqLmNhbGxFeHByZXNzaW9uKGoubWVtYmVyRXhwcmVzc2lvbihqLnRoaXNFeHByZXNzaW9uKCksIGouaWRlbnRpZmllcignc2V0U3RhdGUnKSksIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5vYmplY3RFeHByZXNzaW9uKFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGoucHJvcGVydHkoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2luaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGouaWRlbnRpZmllcignc2VsZWN0JyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5tZW1iZXJFeHByZXNzaW9uKGouaWRlbnRpZmllcignZXZlbnQnKSwgai5pZGVudGlmaWVyKCdzZWxlY3QnKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIC8vIEFkZCB0aGUgYHNlbGVjdGVkRmllbGRgIHZhbHVlIGFzIGEgY29tbWVudCBpbiB0aGUgbWV0aG9kXG4gICAgICAgICAgICAgICAgYWRkQ29tbWVudFRvTWV0aG9kKFxuICAgICAgICAgICAgICAgICAgICBqLFxuICAgICAgICAgICAgICAgICAgICBqKGhhbmRsZVNlbGVjdGlvbkNoYW5nZU1ldGhvZCksXG4gICAgICAgICAgICAgICAgICAgIGBPcmlnaW5hbCBzZWxlY3RlZEZpZWxkIHZhbHVlOiAke3NlbGVjdGVkRmllbGRWYWx1ZX1gLFxuICAgICAgICAgICAgICAgICAgICAnY2xhc3MnXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGFkZE1ldGhvZFRvQ29tcG9uZW50KGosIHBhcmVudE5vZGUsIGhhbmRsZVNlbGVjdGlvbkNoYW5nZU1ldGhvZCwgdHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoaXNGdW5jdGlvbmFsQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAvLyBBZGQgYFJlYWN0LnVzZVN0YXRlYCBmb3IgYHNlbGVjdGBcbiAgICAgICAgICAgIGFkZFVzZVN0YXRlRGVjbGFyYXRpb24oXG4gICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICBwYXJlbnROb2RlLFxuICAgICAgICAgICAgICAgICdzZWxlY3QnLFxuICAgICAgICAgICAgICAgICdzZXRTZWxlY3QnLFxuICAgICAgICAgICAgICAgIGoub2JqZWN0RXhwcmVzc2lvbihbXSksXG4gICAgICAgICAgICAgICAgaXNUeXBlU2NyaXB0LFxuICAgICAgICAgICAgICAgICdTZWxlY3REZXNjcmlwdG9yJ1xuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgLy8gQWRkIGBzZWxlY3RgIGFuZCBgb25TZWxlY3Rpb25DaGFuZ2VgIGF0dHJpYnV0ZXNcbiAgICAgICAgICAgIGlmICghaGFzSlNYQXR0cmlidXRlKGF0dHJpYnV0ZXMsICdzZWxlY3QnKSkge1xuICAgICAgICAgICAgICAgIGFkZFN0YXRlQXR0cmlidXRlKGosIGF0dHJpYnV0ZXMgYXMgKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSwgJ3NlbGVjdCcsICdzZWxlY3QnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFoYXNKU1hBdHRyaWJ1dGUoYXR0cmlidXRlcywgJ29uU2VsZWN0aW9uQ2hhbmdlJykpIHtcbiAgICAgICAgICAgICAgICBhZGRFdmVudEF0dHJpYnV0ZShcbiAgICAgICAgICAgICAgICAgICAgaixcbiAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlcyBhcyAoSlNYQXR0cmlidXRlIHwgSlNYU3ByZWFkQXR0cmlidXRlKVtdLFxuICAgICAgICAgICAgICAgICAgICAnb25TZWxlY3Rpb25DaGFuZ2UnLFxuICAgICAgICAgICAgICAgICAgICBgJHt1bmlxdWVOYW1lfWBcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgLy8gQ3JlYXRlIGFuZCBhZGQgYGhhbmRsZVNlbGVjdGlvbkNoYW5nZWAgZnVuY3Rpb25cbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVTZWxlY3Rpb25DaGFuZ2VGdW5jdGlvbiA9IGNyZWF0ZUFycm93RnVuY3Rpb24oXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGAke3VuaXF1ZU5hbWV9YCxcbiAgICAgICAgICAgICAgICAgICAgW2AoZXZlbnQke2lzVHlwZVNjcmlwdCA/ICc6IEdyaWRTZWxlY3Rpb25DaGFuZ2VFdmVudCcgOiAnJ30pYF0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGouZXhwcmVzc2lvblN0YXRlbWVudChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqLmNhbGxFeHByZXNzaW9uKGouaWRlbnRpZmllcignc2V0U2VsZWN0JyksIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgai5tZW1iZXJFeHByZXNzaW9uKGouaWRlbnRpZmllcignZXZlbnQnKSwgai5pZGVudGlmaWVyKCdzZWxlY3QnKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIC8vIEFkZCB0aGUgYHNlbGVjdGVkRmllbGRgIHZhbHVlIGFzIGEgY29tbWVudCBpbiB0aGUgZnVuY3Rpb25cbiAgICAgICAgICAgICAgICBhZGRDb21tZW50VG9NZXRob2QoXG4gICAgICAgICAgICAgICAgICAgIGosXG4gICAgICAgICAgICAgICAgICAgIGooaGFuZGxlU2VsZWN0aW9uQ2hhbmdlRnVuY3Rpb24pLFxuICAgICAgICAgICAgICAgICAgICBgT3JpZ2luYWwgc2VsZWN0ZWRGaWVsZCB2YWx1ZTogJHtzZWxlY3RlZEZpZWxkVmFsdWV9YCxcbiAgICAgICAgICAgICAgICAgICAgJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBhZGRNZXRob2RUb0NvbXBvbmVudChqLCBwYXJlbnROb2RlLCBoYW5kbGVTZWxlY3Rpb25DaGFuZ2VGdW5jdGlvbiwgZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoYWRkSW1wb3J0cyAmJiBpc1R5cGVTY3JpcHQpIHtcbiAgICAgICAgLy8gRW5zdXJlIFR5cGVTY3JpcHQgaW1wb3J0c1xuICAgICAgICBlbnN1cmVJbXBvcnRFeGlzdHMoaiwgcm9vdCwgJ1NlbGVjdERlc2NyaXB0b3InLCAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWRhdGEtdG9vbHMnKTtcbiAgICAgICAgZW5zdXJlSW1wb3J0RXhpc3RzKGosIHJvb3QsICdHcmlkU2VsZWN0aW9uQ2hhbmdlRXZlbnQnLCAnQHByb2dyZXNzL2tlbmRvLXJlYWN0LWdyaWQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm9vdC50b1NvdXJjZSgpO1xufVxuIl0sIm5hbWVzIjpbInNlbGVjdGlvblN0YXRlIiwiZmlsZUluZm8iLCJhcGkiLCJqIiwicm9vdCIsImlzVHlwZVNjcmlwdCIsImFkZEltcG9ydHMiLCJleGlzdGluZ05hbWVzIiwicGF0aCIsInVuaXF1ZU5hbWUiLCJnZW5lcmF0ZVVuaXF1ZU5hbWUiLCJncmlkTmFtZSIsImZpbmRJbXBvcnRlZE5hbWUiLCJncmlkUGF0aCIsImF0dHJpYnV0ZXMiLCJzZWxlY3RlZEZpZWxkQXR0cmlidXRlIiwiYXR0ciIsInNlbGVjdGVkRmllbGRWYWx1ZSIsInJlbW92ZUF0dHJpYnV0ZSIsImhhc0pTWEF0dHJpYnV0ZSIsImFkZFN0YXRlQXR0cmlidXRlIiwiaXNDbGFzc0NvbXBvbmVudCIsImlzRnVuY3Rpb25hbENvbXBvbmVudCIsInBhcmVudE5vZGUiLCJmaW5kUGFyZW50Q29tcG9uZW50IiwiYWRkU3RhdGVEZWNsYXJhdGlvbiIsImFkZEV2ZW50QXR0cmlidXRlIiwiaGFuZGxlU2VsZWN0aW9uQ2hhbmdlTWV0aG9kIiwiY3JlYXRlQ2xhc3NNZXRob2QiLCJhZGRDb21tZW50VG9NZXRob2QiLCJhZGRNZXRob2RUb0NvbXBvbmVudCIsImFkZFVzZVN0YXRlRGVjbGFyYXRpb24iLCJoYW5kbGVTZWxlY3Rpb25DaGFuZ2VGdW5jdGlvbiIsImNyZWF0ZUFycm93RnVuY3Rpb24iLCJlbnN1cmVJbXBvcnRFeGlzdHMiXSwibWFwcGluZ3MiOiIyQ0FrQkEsU0FBQUEsRUFBeUJDLEVBQW9CQyxFQUFVLENBQ25ELE1BQU1DLEVBQWlCRCxFQUFJLFlBQ3JCRSxFQUFPRCxFQUFFRixFQUFTLE1BQU0sRUFHeEJJLEVBQWVKLEVBQVMsS0FBSyxTQUFTLEtBQUssR0FBS0EsRUFBUyxLQUFLLFNBQVMsTUFBTSxFQUVuRixJQUFJSyxFQUFhLEdBQ1gsTUFBQUMsTUFBb0IsSUFDMUJILEVBQUssS0FBS0QsRUFBRSxVQUFVLEVBQUUsUUFBU0ssR0FBUyxDQUN4QkQsRUFBQSxJQUFJQyxFQUFLLEtBQUssSUFBSSxDQUFBLENBQ25DLEVBR0ssTUFBQUMsRUFBYUMsRUFBQUEsbUJBREYsd0JBQytCSCxDQUFhLEVBR3ZESSxFQUFXQyxFQUFBQSxpQkFBaUJULEVBQUdDLEVBQU0sT0FBUSw0QkFBNEIsR0FBSyxPQUt2RSxPQUZRQSxFQUFLLEtBQUtELEVBQUUsV0FBWSxDQUFFLGVBQWdCLENBQUUsS0FBTSxDQUFFLEtBQU1RLENBQVMsQ0FBQSxDQUFLLENBQUEsRUFFaEYsUUFBU0UsR0FBYSxDQUN6QixNQUFBQyxFQUFhRCxFQUFTLEtBQUssZUFBZSxXQUcxQ0UsRUFBeUJELEdBQUEsWUFBQUEsRUFBWSxLQUN0Q0UsR0FBU0EsRUFBSyxPQUFTLGdCQUFrQkEsRUFBSyxLQUFLLE9BQVMsaUJBR2pFLEdBQUksQ0FBQ0QsRUFDRCxPQUlFLE1BQUFFLEVBQXFCRixFQUF1QixNQUM1Q1osRUFB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
@@ -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 strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=(e,n,t,i)=>{if(i==="class"){if(n.size()>0&&n.get(0).node.value.body){const o=n.get(0).node.value.body.body;if(o){const r=e.emptyStatement();r.comments=[e.commentBlock(` ${t} `)],o.unshift(r)}}}else{let o;if(n.get(0).node.declarations&&n.get(0).node.declarations[0].init?o=n.get(0).node.declarations[0].init.body.body:n.get(0).node.body&&(o=n.get(0).node.body.body),o){const r=e.emptyStatement();r.comments=[e.commentBlock(` ${t} `)],o.unshift(r)}}},u=(e,n,t,i)=>{const o=n.find(e.ImportDeclaration,{source:{value:i}});if(o.size()>0){const r=o.get(0).node.specifiers;r.some(a=>a.type==="ImportSpecifier"&&a.imported.name===t)||r.push(e.importSpecifier(e.identifier(t)))}else{const r=e.importDeclaration([e.importSpecifier(e.identifier(t))],e.literal(i));n.get().node.program.body.unshift(r)}},f=(e,n)=>{let t=n.parentPath,i=!1,o=!1;for(;t;){if(e.ClassDeclaration.check(t.node)){i=!0;break}else if(e.FunctionDeclaration.check(t.node)||e.FunctionExpression.check(t.node)||e.ArrowFunctionExpression.check(t.node)){o=!0;break}t=t.parentPath}return{isClassComponent:i,isFunctionalComponent:o,parentNode:t}},m=(e,n)=>{let t=e,i=1;for(;n.has(t);)t=`${e}$${i}`,i++;return t},d=(e,n)=>e.find(t=>t.type==="JSXAttribute"&&t.name.name===n),b=(e,n)=>e.some(t=>t.type==="JSXAttribute"&&t.name.name===n),c=(e,n,t,i)=>{if(n.value&&n.value.type==="JSXExpressionContainer"){const o=n.value.expression;o.type==="ObjectExpression"&&o.properties.push(e.property("init",e.identifier(t),e.identifier(i)))}},p=(e,n,t,i,o)=>{const r=e.jsxAttribute(e.jsxIdentifier(t),e.jsxExpressionContainer(e.objectExpression([e.property("init",e.identifier(i),e.identifier(o))])));n.push(r)},y=(e,n)=>{const t=e==null?void 0:e.findIndex(i=>i.type==="JSXAttribute"&&i.name.name===n);return t!==-1?(e.splice(t,1),!0):!1},x=(e,n,t,i,o)=>{const r=d(n,t);r?c(e,r,i,o):p(e,n,t,i,o)},h=(e,n,t,i)=>e.jsxAttribute(e.jsxIdentifier(n),e.jsxExpressionContainer(e.objectExpression([e.property("init",e.identifier(t),e.identifier(i))]))),A=(e,n,t,i)=>{n.type==="ObjectExpression"&&n.properties.push(e.property("init",e.identifier(t),e.identifier(i)))},S=(e,n,t,i)=>e.methodDefinition("method",e.identifier(n),e.functionExpression(null,[e.identifier(t?`event: ${i}`:"event")],e.blockStatement([e.returnStatement(e.jsxFragment(e.jsxOpeningFragment(),e.jsxClosingFragment(),[]))]))),E=(e,n,t,i)=>e.variableDeclaration("const",[e.variableDeclarator(e.identifier(n),e.arrowFunctionExpression([e.identifier(`(event${t?`: ${i}`:""})`)],e.blockStatement([e.returnStatement(e.jsxFragment(e.jsxOpeningFragment(),e.jsxClosingFragment(),[]))])))]),g=(e,n,t,i)=>{i?n.node.body.body.push(t):(n.node.body.body||n.node.body).unshift(t)},C=(e,n,t,i)=>{const o=n.find(e.ImportDeclaration,{source:{value:i}});if(o.size()>0){const r=o.find(e.ImportSpecifier,{imported:{name:t}});if(r.size()>0)return r.get(0).node.local.name}return null},v=(e,n,t,i)=>{const o=n.node.body.body.find(r=>r.type==="ClassProperty"&&r.key.name==="state");o&&o.value.type==="ObjectExpression"?o.value.properties.some(s=>s.key.name===t)||o.value.properties.push(e.property("init",e.identifier(t),i)):n.node.body.body.unshift(e.classProperty(e.identifier("state"),e.objectExpression([e.property("init",e.identifier(t),i)])))},F=(e,n)=>(e==null?void 0:e.some(t=>t.type==="JSXAttribute"&&t.name.name===n))||!1,D=(e,n,t,i,o,r,s)=>{const a=e.variableDeclaration("const",[e.variableDeclarator(e.arrayPattern([e.identifier(t),e.identifier(i)]),e.callExpression(e.identifier(`React.useState${r?`<${s}>`:""}`),[o]))]);n.node.body.body.unshift(a)},I=(e,n,t,i)=>{n.push(e.jsxAttribute(e.jsxIdentifier(t),e.jsxExpressionContainer(e.identifier(i))))},k=(e,n,t,i)=>{n.push(e.jsxAttribute(e.jsxIdentifier(t),e.jsxExpressionContainer(e.identifier(i))))},w=(e,n,t,i)=>e.methodDefinition("method",e.identifier(n),e.functionExpression(null,t.map(o=>e.identifier(o)),e.blockStatement(i))),P=(e,n,t,i)=>e.variableDeclaration("const",[e.variableDeclarator(e.identifier(n),e.arrowFunctionExpression(t.map(o=>e.identifier(o)),e.blockStatement(i)))]);exports.addCommentToMethod=l;exports.addEventAttribute=I;exports.addMethodToComponent=g;exports.addNewAttribute=p;exports.addPropertyToObjectExpression=A;exports.addStateAttribute=k;exports.addStateDeclaration=v;exports.addUseStateDeclaration=D;exports.createArrowFunction=P;exports.createArrowFunctionForFunctionalComponent=E;exports.createAttribute=h;exports.createClassMethod=w;exports.createMethodForClassComponent=S;exports.doesAttributeExist=b;exports.ensureAttributeExists=x;exports.ensureImportExists=u;exports.findAttribute=d;exports.findImportedName=C;exports.findParentComponent=f;exports.generateUniqueName=m;exports.hasJSXAttribute=F;exports.modifyExistingAttribute=c;exports.removeAttribute=y;
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvY29kZW1vZHMvdjExL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29sbGVjdGlvbixcbiAgICBGdW5jdGlvbkRlY2xhcmF0aW9uLFxuICAgIEpTQ29kZXNoaWZ0LFxuICAgIEpTWEF0dHJpYnV0ZSxcbiAgICBKU1hTcHJlYWRBdHRyaWJ1dGUsXG4gICAgVmFyaWFibGVEZWNsYXJhdGlvblxufSBmcm9tICdqc2NvZGVzaGlmdCc7XG5cbmV4cG9ydCBjb25zdCBhZGRDb21tZW50VG9NZXRob2QgPSAoXG4gICAgajogSlNDb2Rlc2hpZnQsXG4gICAgbWV0aG9kOiBDb2xsZWN0aW9uPFZhcmlhYmxlRGVjbGFyYXRpb24+IHwgQ29sbGVjdGlvbjxGdW5jdGlvbkRlY2xhcmF0aW9uPixcbiAgICBjb21tZW50VGV4dDogc3RyaW5nLFxuICAgIHBhcmVudFR5cGU6ICdjbGFzcycgfCAnZnVuY3Rpb24nXG4pID0+IHtcbiAgICBpZiAocGFyZW50VHlwZSA9PT0gJ2NsYXNzJykge1xuICAgICAgICBpZiAobWV0aG9kLnNpemUoKSA+IDAgJiYgbWV0aG9kLmdldCgwKS5ub2RlLnZhbHVlLmJvZHkpIHtcbiAgICAgICAgICAgIGNvbnN0IG1ldGhvZEJvZHkgPSBtZXRob2QuZ2V0KDApLm5vZGUudmFsdWUuYm9keS5ib2R5O1xuXG4gICAgICAgICAgICBpZiAobWV0aG9kQm9keSkge1xuICAgICAgICAgICAgICAgIC8vIENyZWF0ZSBhIGNvbW1lbnQgYW5kIGF0dGFjaCBpdCB0byBhbiBlbXB0eSBzdGF0ZW1lbnRcbiAgICAgICAgICAgICAgICBjb25zdCBwbGFjZWhvbGRlclN0YXRlbWVudCA9IGouZW1wdHlTdGF0ZW1lbnQoKTtcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlclN0YXRlbWVudC5jb21tZW50cyA9IFtqLmNvbW1lbnRCbG9jayhgICR7Y29tbWVudFRleHR9IGApXTtcblxuICAgICAgICAgICAgICAgIC8vIEFkZCB0aGUgcGxhY2Vob2xkZXIgc3RhdGVtZW50IHdpdGggdGhlIGNvbW1lbnQgdG8gdGhlIG1ldGhvZCBib2R5XG4gICAgICAgICAgICAgICAgbWV0aG9kQm9keS51bnNoaWZ0KHBsYWNlaG9sZGVyU3RhdGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBtZXRob2RCb2R5O1xuXG4gICAgICAgIGlmIChtZXRob2QuZ2V0KDApLm5vZGUuZGVjbGFyYXRpb25zICYmIG1ldGhvZC5nZXQoMCkubm9kZS5kZWNsYXJhdGlvbnNbMF0uaW5pdCkge1xuICAgICAgICAgICAgbWV0aG9kQm9keSA9IG1ldGhvZC5nZXQoMCkubm9kZS5kZWNsYXJhdGlvbnNbMF0uaW5pdC5ib2R5LmJvZHk7XG4gICAgICAgIH0gZWxzZSBpZiAobWV0aG9kLmdldCgwKS5ub2RlLmJvZHkpIHtcbiAgICAgICAgICAgIG1ldGhvZEJvZHkgPSBtZXRob2QuZ2V0KDApLm5vZGUuYm9keS5ib2R5O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG1ldGhvZEJvZHkpIHtcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyU3RhdGVtZW50ID0gai5lbXB0eVN0YXRlbWVudCgpO1xuICAgICAgICAgICAgcGxhY2Vob2xkZXJTdGF0ZW1lbnQuY29tbWVudHMgPSBbai5jb21tZW50QmxvY2soYCAke2NvbW1lbnRUZXh0fSBgKV07XG5cbiAgICAgICAgICAgIG1ldGhvZEJvZHkudW5zaGlmdChwbGFjZWhvbGRlclN0YXRlbWVudCk7XG4gICAgICAgIH1cbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgZW5zdXJlSW1wb3J0RXhpc3RzID0gKGo6IEpTQ29kZXNoaWZ0LCByb290OiBDb2xsZWN0aW9uLCBpbXBvcnROYW1lOiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgaW1wb3J0RGVjbGFyYXRpb24gPSByb290LmZpbmQoai5JbXBvcnREZWNsYXJhdGlvbiwge1xuICAgICAgICBzb3VyY2U6IHsgdmFsdWU6IHNvdXJjZSB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW1wb3J0RGVjbGFyYXRpb24uc2l6ZSgpID4gMCkge1xuICAgICAgICAvLyBJZiB0aGUgaW1wb3J0IHN0YXRlbWVudCBleGlzdHMsIGFkZCB0aGUgbmV3IGltcG9ydCBuYW1lIGlmIG5vdCBhbHJlYWR5IHByZXNlbnRcbiAgICAgICAgY29uc3Qgc3BlY2lmaWVycyA9IGltcG9ydERlY2xhcmF0aW9uLmdldCgwKS5ub2RlLnNwZWNpZmllcnM7XG4gICAgICAgIGNvbnN0IGFscmVhZHlJbXBvcnRlZCA9IHNwZWNpZmllcnMuc29tZShcbiAgICAgICAgICAgIChzcGVjaWZpZXI6IGFueSkgPT4gc3BlY2lmaWVyLnR5cGUgPT09ICdJbXBvcnRTcGVjaWZpZXInICYmIHNwZWNpZmllci5pbXBvcnRlZC5uYW1lID09PSBpbXBvcnROYW1lXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKCFhbHJlYWR5SW1wb3J0ZWQpIHtcbiAgICAgICAgICAgIHNwZWNpZmllcnMucHVzaChqLmltcG9ydFNwZWNpZmllcihqLmlkZW50aWZpZXIoaW1wb3J0TmFtZSkpKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIElmIHRoZSBpbXBvcnQgc3RhdGVtZW50IGRvZXNuJ3QgZXhpc3QsIGNyZWF0ZSBhIG5ldyBvbmVcbiAgICAgICAgY29uc3QgbmV3SW1wb3J0ID0gai5pbXBvcnREZWNsYXJhdGlvbihbai5pbXBvcnRTcGVjaWZpZXIoai5pZGVudGlmaWVyKGltcG9ydE5hbWUpKV0sIGoubGl0ZXJhbChzb3VyY2UpKTtcbiAgICAgICAgcm9vdC5nZXQoKS5ub2RlLnByb2dyYW0uYm9keS51bnNoaWZ0KG5ld0ltcG9ydCk7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGZpbmRQYXJlbnRDb21wb25lbnQgPSAoajogSlNDb2Rlc2hpZnQsIHBhdGg6IGFueSkgPT4ge1xuICAgIGxldCBwYXJlbnROb2RlID0gcGF0aC5wYXJlbnRQYXRoO1xuICAgIGxldCBpc0NsYXNzQ29tcG9uZW50ID0gZmFsc2U7XG4gICAgbGV0IGlzRnVuY3Rpb25hbENvbXBvbmVudCA9IGZhbHNlO1xuXG4gICAgd2hpbGUgKHBhcmVudE5vZGUpIHtcbiAgICAgICAgaWYgKGouQ2xhc3NEZWNsYXJhdGlvbi5jaGVjayhwYXJlbnROb2RlLm5vZGUpKSB7XG4gICAgICAgICAgICBpc0NsYXNzQ29tcG9uZW50ID0gdHJ1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgai5GdW5jdGlvbkRlY2xhcmF0aW9uLmNoZWNrKHBhcmVudE5vZGUubm9kZSkgfHxcbiAgICAgICAgICAgIGouRnVuY3Rpb25FeHByZXNzaW9uLmNoZWNrKHBhcmVudE5vZGUubm9kZSkgfHxcbiAgICAgICAgICAgIGouQXJyb3dGdW5jdGlvbkV4cHJlc3Npb24uY2hlY2socGFyZW50Tm9kZS5ub2RlKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIGlzRnVuY3Rpb25hbENvbXBvbmVudCA9IHRydWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBwYXJlbnROb2RlID0gcGFyZW50Tm9kZS5wYXJlbnRQYXRoO1xuICAgIH1cblxuICAgIHJldHVybiB7IGlzQ2xhc3NDb21wb25lbnQsIGlzRnVuY3Rpb25hbENvbXBvbmVudCwgcGFyZW50Tm9kZSB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGdlbmVyYXRlVW5pcXVlTmFtZSA9IChiYXNlTmFtZTogc3RyaW5nLCBleGlzdGluZ05hbWVzOiBTZXQ8c3RyaW5nPik6IHN0cmluZyA9PiB7XG4gICAgbGV0IG5hbWUgPSBiYXNlTmFtZTtcbiAgICBsZXQgY291bnRlciA9IDE7XG4gICAgd2hpbGUgKGV4aXN0aW5nTmFtZXMuaGFzKG5hbWUpKSB7XG4gICAgICAgIG5hbWUgPSBgJHtiYXNlTmFtZX0kJHtjb3VudGVyfWA7XG4gICAgICAgIGNvdW50ZXIrKztcbiAgICB9XG4gICAgcmV0dXJuIG5hbWU7XG59O1xuXG5leHBvcnQgY29uc3QgZmluZEF0dHJpYnV0ZSA9IChhdHRyaWJ1dGVzOiBhbnlbXSwgYXR0cmlidXRlTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIGF0dHJpYnV0ZXMuZmluZCgoYXR0cikgPT4gYXR0ci50eXBlID09PSAnSlNYQXR0cmlidXRlJyAmJiBhdHRyLm5hbWUubmFtZSA9PT0gYXR0cmlidXRlTmFtZSk7XG59O1xuXG5leHBvcnQgY29uc3QgZG9lc0F0dHJpYnV0ZUV4aXN0ID0gKGF0dHJpYnV0ZXM6IGFueVtdLCBhdHRyaWJ1dGVOYW1lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgICByZXR1cm4gYXR0cmlidXRlcy5zb21lKChhdHRyKSA9PiBhdHRyLnR5cGUgPT09ICdKU1hBdHRyaWJ1dGUnICYmIGF0dHIubmFtZS5uYW1lID09PSBhdHRyaWJ1dGVOYW1lKTtcbn07XG5cbmV4cG9ydCBjb25zdCBtb2RpZnlFeGlzdGluZ0F0dHJpYnV0ZSA9IChcbiAgICBqOiBKU0NvZGVzaGlmdCxcbiAgICBleGlzdGluZ0F0dHJpYnV0ZTogYW55LFxuICAgIHByb3BlcnR5TmFtZTogc3RyaW5nLFxuICAgIHByb3BlcnR5VmFsdWU6IHN0cmluZ1xuKSA9PiB7XG4gICAgaWYgKGV4aXN0aW5nQXR0cmlidXRlLnZhbHVlICYmIGV4aXN0aW5nQXR0cmlidXRlLnZhbHVlLnR5cGUgPT09ICdKU1hFeHByZXNzaW9uQ29udGFpbmVyJykge1xuICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZXhpc3RpbmdBdHRyaWJ1dGUudmFsdWUuZXhwcmVzc2lvbjtcbiAgICAgICAgaWYgKGV4cHJlc3Npb24udHlwZSA9PT0gJ09iamVjdEV4cHJlc3Npb24nKSB7XG4gICAgICAgICAgICBleHByZXNzaW9uLnByb3BlcnRpZXMucHVzaChqLnByb3BlcnR5KCdpbml0Jywgai5pZGVudGlmaWVyKHByb3BlcnR5TmFtZSksIGouaWRlbnRpZmllcihwcm9wZXJ0eVZhbHVlKSkpO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGFkZE5ld0F0dHJpYnV0ZSA9IChcbiAgICBqOiBKU0NvZGVzaGlmdCxcbiAgICBhdHRyaWJ1dGVzOiBhbnlbXSxcbiAgICBhdHRyaWJ1dGVOYW1lOiBzdHJpbmcsXG4gICAgcHJvcGVydHlOYW1lOiBzdHJpbmcsXG4gICAgcHJvcGVydHlWYWx1ZTogc3RyaW5nXG4pID0+IHtcbiAgICBjb25zdCBuZXdBdHRyaWJ1dGUgPSBqLmpzeEF0dHJpYnV0ZShcbiAgICAgICAgai5qc3hJZGVudGlmaWVyKGF0dHJpYnV0ZU5hbWUpLFxuICAgICAgICBqLmpzeEV4cHJlc3Npb25Db250YWluZXIoXG4gICAgICAgICAgICBqLm9iamVjdEV4cHJlc3Npb24oW2oucHJvcGVydHkoJ2luaXQnLCBqLmlkZW50aWZpZXIocHJvcGVydHlOYW1lKSwgai5pZGVudGlmaWVyKHByb3BlcnR5VmFsdWUpKV0pXG4gICAgICAgIClcbiAgICApO1xuICAgIGF0dHJpYnV0ZXMucHVzaChuZXdBdHRyaWJ1dGUpO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZUF0dHJpYnV0ZSA9IChhdHRyaWJ1dGVzOiBhbnlbXSwgYXR0cmlidXRlTmFtZTogc3RyaW5nKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgYXR0cmlidXRlSW5kZXggPSBhdHRyaWJ1dGVzPy5maW5kSW5kZXgoXG4gICAgICAgIChhdHRyKSA9PiBhdHRyLnR5cGUgPT09ICdKU1hBdHRyaWJ1dGUnICYmIGF0dHIubmFtZS5uYW1lID09PSBhdHRyaWJ1dGVOYW1lXG4gICAgKTtcblxuICAgIGlmIChhdHRyaWJ1dGVJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgYXR0cmlidXRlcy5zcGxpY2UoYXR0cmlidXRlSW5kZXgsIDEpO1xuICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gSW5kaWNhdGVzIHRoZSBhdHRyaWJ1dGUgd2FzIGZvdW5kIGFuZCByZW1vdmVkXG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlOyAvLyBJbmRpY2F0ZXMgdGhlIGF0dHJpYnV0ZSB3YXMgbm90IGZvdW5kXG59O1xuXG5leHBvcnQgY29uc3QgZW5zdXJlQXR0cmlidXRlRXhpc3RzID0gKFxuICAgIGo6IEpTQ29kZXNoaWZ0LFxuICAgIGF0dHJpYnV0ZXM6IGFueVtdLFxuICAgIGF0dHJpYnV0ZU5hbWU6IHN0cmluZyxcbiAgICBwcm9wZXJ0eU5hbWU6IHN0cmluZyxcbiAgICBwcm9wZXJ0eVZhbHVlOiBzdHJpbmdcbikgPT4ge1xuICAgIGNvbnN0IGV4aXN0aW5nQXR0cmlidXRlID0gZmluZEF0dHJpYnV0ZShhdHRyaWJ1dGVzLCBhdHRyaWJ1dGVOYW1lKTtcblxuICAgIGlmIChleGlzdGluZ0F0dHJpYnV0ZSkge1xuICAgICAgICBtb2RpZnlFeGlzdGluZ0F0dHJpYnV0ZShqLCBleGlzdGluZ0F0dHJpYnV0ZSwgcHJvcGVydHlOYW1lLCBwcm9wZXJ0eVZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBhZGROZXdBdHRyaWJ1dGUoaiwgYXR0cmlidXRlcywgYXR0cmlidXRlTmFtZSwgcHJvcGVydHlOYW1lLCBwcm9wZXJ0eVZhbHVlKTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlQXR0cmlidXRlID0gKGo6IEpTQ29kZXNoaWZ0LCBhdHRyaWJ1dGVOYW1lOiBzdHJpbmcsIHByb3BlcnR5TmFtZTogc3RyaW5nLCBwcm9wZXJ0eVZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gai5qc3hBdHRyaWJ1dGUoXG4gICAgICAgIGouanN4SWRlbnRpZmllcihhdHRyaWJ1dGVOYW1lKSxcbiAgICAgICAgai5qc3hFeHByZXNzaW9uQ29udGFpbmVyKFxuICAgICAgICAgICAgai5vYmplY3RFeHByZXNzaW9uKFtqLnByb3BlcnR5KCdpbml0Jywgai5pZGVudGlmaWVyKHByb3BlcnR5TmFtZSksIGouaWRlbnRpZmllcihwcm9wZXJ0eVZhbHVlKSldKVxuICAgICAgICApXG4gICAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBhZGRQcm9wZXJ0eVRvT2JqZWN0RXhwcmVzc2lvbiA9IChcbiAgICBqOiBKU0NvZGVzaGlmdCxcbiAgICBleHByZXNzaW9uOiBhbnksXG4gICAgcHJvcGVydHlOYW1lOiBzdHJpbmcsXG4gICAgcHJvcGVydHlWYWx1ZTogc3RyaW5nXG4pID0+IHtcbiAgICBpZiAoZXhwcmVzc2lvbi50eXBlID09PSAnT2JqZWN0RXhwcmVzc2lvbicpIHtcbiAgICAgICAgZXhwcmVzc2lvbi5wcm9wZXJ0aWVzLnB1c2goai5wcm9wZXJ0eSgnaW5pdCcsIGouaWRlbnRpZmllcihwcm9wZXJ0eU5hbWUpLCBqLmlkZW50aWZpZXIocHJvcGVydHlWYWx1ZSkpKTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWV0aG9kRm9yQ2xhc3NDb21wb25lbnQgPSAoXG4gICAgajogSlNDb2Rlc2hpZnQsXG4gICAgbWV0aG9kTmFtZTogc3RyaW5nLFxuICAgIGlzVHlwZVNjcmlwdDogYm9vbGVhbixcbiAgICB0eXBlTmFtZTogc3RyaW5nXG4pID0+IHtcbiAgICByZXR1cm4gai5tZXRob2REZWZpbml0aW9uKFxuICAgICAgICAnbWV0aG9kJyxcbiAgICAgICAgai5pZGVudGlmaWVyKG1ldGhvZE5hbWUpLFxuICAgICAgICBqLmZ1bmN0aW9uRXhwcmVzc2lvbihcbiAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICBbai5pZGVudGlmaWVyKGlzVHlwZVNjcmlwdCA/IGBldmVudDogJHt0eXBlTmFtZX1gIDogJ2V2ZW50JyldLFxuICAgICAgICAgICAgai5ibG9ja1N0YXRlbWVudChbai5yZXR1cm5TdGF0ZW1lbnQoai5qc3hGcmFnbWVudChqLmpzeE9wZW5pbmdGcmFnbWVudCgpLCBqLmpzeENsb3NpbmdGcmFnbWVudCgpLCBbXSkpXSlcbiAgICAgICAgKVxuICAgICk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlQXJyb3dGdW5jdGlvbkZvckZ1bmN0aW9uYWxDb21wb25lbnQgPSAoXG4gICAgajogSlNDb2Rlc2hpZnQsXG4gICAgZnVuY3Rpb25OYW1lOiBzdHJpbmcsXG4gICAgaXNUeXBlU2NyaXB0OiBib29sZWFuLFxuICAgIHR5cGVOYW1lOiBzdHJpbmdcbikgPT4ge1xuICAgIHJldHVybiBqLnZhcmlhYmxlRGVjbGFyYXRpb24oJ2NvbnN0JywgW1xuICAgICAgICBqLnZhcmlhYmxlRGVjbGFyYXRvcihcbiAgICAgICAgICAgIGouaWRlbnRpZmllcihmdW5jdGlvbk5hbWUpLFxuICAgICAgICAgICAgai5hcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbihcbiAgICAgICAgICAgICAgICBbai5pZGVudGlmaWVyKGAoZXZlbnQke2lzVHlwZVNjcmlwdCA/IGA6ICR7dHlwZU5hbWV9YCA6ICcnfSlgKV0sXG4gICAgICAgICAgICAgICAgai5ibG9ja1N0YXRlbWVudChbai5yZXR1cm5TdGF0ZW1lbnQoai5qc3hGcmFnbWVudChqLmpzeE9wZW5pbmdGcmFnbWVudCgpLCBqLmpzeENsb3NpbmdGcmFnbWVudCgpLCBbXSkpXSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKVxuICAgIF0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGFkZE1ldGhvZFRvQ29tcG9uZW50ID0gKGo6IEpTQ29kZXNoaWZ0LCBwYXJlbnROb2RlOiBhbnksIG1ldGhvZDogYW55LCBpc0NsYXNzQ29tcG9uZW50OiBib29sZWFuKSA9PiB7XG4gICAgaWYgKGlzQ2xhc3NDb21wb25lbnQpIHtcbiAgICAgICAgY29uc3QgY2xhc3NCb2R5ID0gcGFyZW50Tm9kZS5ub2RlLmJvZHkuYm9keTtcbiAgICAgICAgY2xhc3NCb2R5LnB1c2gobWV0aG9kKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBwYXJlbnRCb2R5ID0gcGFyZW50Tm9kZS5ub2RlLmJvZHkuYm9keSB8fCBwYXJlbnROb2RlLm5vZGUuYm9keTtcbiAgICAgICAgcGFyZW50Qm9keS51bnNoaWZ0KG1ldGhvZCk7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGZpbmRJbXBvcnRlZE5hbWUgPSAoajogSlNDb2Rlc2hpZnQsIHJvb3Q6IGFueSwgb3JpZ2luYWxOYW1lOiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCA9PiB7XG4gICAgY29uc3QgaW1wb3J0RGVjbGFyYXRpb24gPSByb290LmZpbmQoai5JbXBvcnREZWNsYXJhdGlvbiwge1xuICAgICAgICBzb3VyY2U6IHsgdmFsdWU6IHNvdXJjZSB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW1wb3J0RGVjbGFyYXRpb24uc2l6ZSgpID4gMCkge1xuICAgICAgICBjb25zdCBzcGVjaWZpZXIgPSBpbXBvcnREZWNsYXJhdGlvbi5maW5kKGouSW1wb3J0U3BlY2lmaWVyLCB7XG4gICAgICAgICAgICBpbXBvcnRlZDogeyBuYW1lOiBvcmlnaW5hbE5hbWUgfVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoc3BlY2lmaWVyLnNpemUoKSA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGxvY2FsTmFtZSA9IHNwZWNpZmllci5nZXQoMCkubm9kZS5sb2NhbC5uYW1lO1xuICAgICAgICAgICAgcmV0dXJuIGxvY2FsTmFtZTsgLy8gUmV0dXJuIHRoZSBzaGFkb3cgbmFtZSBvciB0aGUgb3JpZ2luYWwgbmFtZVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7IC8vIFJldHVybiBudWxsIGlmIHRoZSBpbXBvcnQgaXMgbm90IGZvdW5kXG59O1xuXG5leHBvcnQgY29uc3QgYWRkU3RhdGVEZWNsYXJhdGlvbiA9IChqOiBKU0NvZGVzaGlmdCwgcGFyZW50Tm9kZTogYW55LCBzdGF0ZU5hbWU6IHN0cmluZywgaW5pdGlhbFZhbHVlOiBhbnkpID0+IHtcbiAgICBjb25zdCBzdGF0ZVByb3BlcnR5ID0gcGFyZW50Tm9kZS5ub2RlLmJvZHkuYm9keS5maW5kKFxuICAgICAgICAobm9kZTogYW55KSA9PiBub2RlLnR5cGUgPT09ICdDbGFzc1Byb3BlcnR5JyAmJiBub2RlLmtleS5uYW1lID09PSAnc3RhdGUnXG4gICAgKTtcblxuICAgIGlmIChzdGF0ZVByb3BlcnR5ICYmIHN0YXRlUHJvcGVydHkudmFsdWUudHlwZSA9PT0gJ09iamVjdEV4cHJlc3Npb24nKSB7XG4gICAgICAgIGNvbnN0IGhhc1N0YXRlID0gc3RhdGVQcm9wZXJ0eS52YWx1ZS5wcm9wZXJ0aWVzLnNvbWUoKHByb3A6IGFueSkgPT4gcHJvcC5rZXkubmFtZSA9PT0gc3RhdGVOYW1lKTtcbiAgICAgICAgaWYgKCFoYXNTdGF0ZSkge1xuICAgICAgICAgICAgc3RhdGVQcm9wZXJ0eS52YWx1ZS5wcm9wZXJ0aWVzLnB1c2goai5wcm9wZXJ0eSgnaW5pdCcsIGouaWRlbnRpZmllcihzdGF0ZU5hbWUpLCBpbml0aWFsVmFsdWUpKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIHBhcmVudE5vZGUubm9kZS5ib2R5LmJvZHkudW5zaGlmdChcbiAgICAgICAgICAgIGouY2xhc3NQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICBqLmlkZW50aWZpZXIoJ3N0YXRlJyksXG4gICAgICAgICAgICAgICAgai5vYmplY3RFeHByZXNzaW9uKFtqLnByb3BlcnR5KCdpbml0Jywgai5pZGVudGlmaWVyKHN0YXRlTmFtZSksIGluaXRpYWxWYWx1ZSldKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBoYXNKU1hBdHRyaWJ1dGUgPSAoXG4gICAgYXR0cmlidXRlczogKEpTWEF0dHJpYnV0ZSB8IEpTWFNwcmVhZEF0dHJpYnV0ZSlbXSB8IHVuZGVmaW5lZCxcbiAgICBhdHRyaWJ1dGVOYW1lOiBzdHJpbmdcbik6IGJvb2xlYW4gPT4ge1xuICAgIHJldHVybiBhdHRyaWJ1dGVzPy5zb21lKChhdHRyKSA9PiBhdHRyLnR5cGUgPT09ICdKU1hBdHRyaWJ1dGUnICYmIGF0dHIubmFtZS5uYW1lID09PSBhdHRyaWJ1dGVOYW1lKSB8fCBmYWxzZTtcbn07XG5cbmV4cG9ydCBjb25zdCBhZGRVc2VTdGF0ZURlY2xhcmF0aW9uID0gKFxuICAgIGo6IEpTQ29kZXNoaWZ0LFxuICAgIHBhcmVudE5vZGU6IGFueSxcbiAgICBzdGF0ZU5hbWU6IHN0cmluZyxcbiAgICBzZXRTdGF0ZU5hbWU6IHN0cmluZyxcbiAgICBpbml0aWFsVmFsdWU6IGFueSxcbiAgICBpc1R5cGVTY3JpcHQ6IGJvb2xlYW4sXG4gICAgdHlwZU5hbWU6IHN0cmluZ1xuKSA9PiB7XG4gICAgY29uc3QgdXNlU3RhdGVEZWNsYXJhdGlvbiA9IGoudmFyaWFibGVEZWNsYXJhdGlvbignY29uc3QnLCBbXG4gICAgICAgIGoudmFyaWFibGVEZWNsYXJhdG9yKFxuICAgICAgICAgICAgai5hcnJheVBhdHRlcm4oW2ouaWRlbnRpZmllcihzdGF0ZU5hbWUpLCBqLmlkZW50aWZpZXIoc2V0U3RhdGVOYW1lKV0pLFxuICAgICAgICAgICAgai5jYWxsRXhwcmVzc2lvbihqLmlkZW50aWZpZXIoYFJlYWN0LnVzZVN0YXRlJHtpc1R5cGVTY3JpcHQgPyBgPCR7dHlwZU5hbWV9PmAgOiAnJ31gKSwgW2luaXRpYWxWYWx1ZV0pXG4gICAgICAgIClcbiAgICBdKTtcbiAgICBwYXJlbnROb2RlLm5vZGUuYm9keS5ib2R5LnVuc2hpZnQodXNlU3RhdGVEZWNsYXJhdGlvbik7XG59O1xuXG5leHBvcnQgY29uc3QgYWRkRXZlbnRBdHRyaWJ1dGUgPSAoajogSlNDb2Rlc2hpZnQsIGF0dHJpYnV0ZXM6IGFueVtdLCBhdHRyaWJ1dGVOYW1lOiBzdHJpbmcsIGhhbmRsZXJOYW1lOiBzdHJpbmcpID0+IHtcbiAgICBhdHRyaWJ1dGVzLnB1c2goXG4gICAgICAgIGouanN4QXR0cmlidXRlKGouanN4SWRlbnRpZmllcihhdHRyaWJ1dGVOYW1lKSwgai5qc3hFeHByZXNzaW9uQ29udGFpbmVyKGouaWRlbnRpZmllcihoYW5kbGVyTmFtZSkpKVxuICAgICk7XG59O1xuXG5leHBvcnQgY29uc3QgYWRkU3RhdGVBdHRyaWJ1dGUgPSAoajogSlNDb2Rlc2hpZnQsIGF0dHJpYnV0ZXM6IGFueVtdLCBhdHRyaWJ1dGVOYW1lOiBzdHJpbmcsIHN0YXRlTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgYXR0cmlidXRlcy5wdXNoKGouanN4QXR0cmlidXRlKGouanN4SWRlbnRpZmllcihhdHRyaWJ1dGVOYW1lKSwgai5qc3hFeHByZXNzaW9uQ29udGFpbmVyKGouaWRlbnRpZmllcihzdGF0ZU5hbWUpKSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNsYXNzTWV0aG9kID0gKGo6IEpTQ29kZXNoaWZ0LCBtZXRob2ROYW1lOiBzdHJpbmcsIHBhcmFtczogc3RyaW5nW10sIGJvZHlTdGF0ZW1lbnRzOiBhbnlbXSkgPT4ge1xuICAgIHJldHVybiBqLm1ldGhvZERlZmluaXRpb24oXG4gICAgICAgICdtZXRob2QnLFxuICAgICAgICBqLmlkZW50aWZpZXIobWV0aG9kTmFtZSksXG4gICAgICAgIGouZnVuY3Rpb25FeHByZXNzaW9uKFxuICAgICAgICAgICAgbnVsbCxcbiAgICAgICAgICAgIHBhcmFtcy5tYXAoKHBhcmFtKSA9PiBqLmlkZW50aWZpZXIocGFyYW0pKSxcbiAgICAgICAgICAgIGouYmxvY2tTdGF0ZW1lbnQoYm9keVN0YXRlbWVudHMpXG4gICAgICAgIClcbiAgICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUFycm93RnVuY3Rpb24gPSAoajogSlNDb2Rlc2hpZnQsIGZ1bmN0aW9uTmFtZTogc3RyaW5nLCBwYXJhbXM6IHN0cmluZ1tdLCBib2R5U3RhdGVtZW50czogYW55W10pID0+IHtcbiAgICByZXR1cm4gai52YXJpYWJsZURlY2xhcmF0aW9uKCdjb25zdCcsIFtcbiAgICAgICAgai52YXJpYWJsZURlY2xhcmF0b3IoXG4gICAgICAgICAgICBqLmlkZW50aWZpZXIoZnVuY3Rpb25OYW1lKSxcbiAgICAgICAgICAgIGouYXJyb3dGdW5jdGlvbkV4cHJlc3Npb24oXG4gICAgICAgICAgICAgICAgcGFyYW1zLm1hcCgocGFyYW0pID0+IGouaWRlbnRpZmllcihwYXJhbSkpLFxuICAgICAgICAgICAgICAgIGouYmxvY2tTdGF0ZW1lbnQoYm9keVN0YXRlbWVudHMpXG4gICAgICAgICAgICApXG4gICAgICAgIClcbiAgICBdKTtcbn07XG4iXSwibmFtZXMiOlsiYWRkQ29tbWVudFRvTWV0aG9kIiwiaiIsIm1ldGhvZCIsImNvbW1lbnRUZXh0IiwicGFyZW50VHlwZSIsIm1ldGhvZEJvZHkiLCJwbGFjZWhvbGRlclN0YXRlbWVudCIsImVuc3VyZUltcG9ydEV4aXN0cyIsInJvb3QiLCJpbXBvcnROYW1lIiwic291cmNlIiwiaW1wb3J0RGVjbGFyYXRpb24iLCJzcGVjaWZpZXJzIiwic3BlY2lmaWVyIiwibmV3SW1wb3J0IiwiZmluZFBhcmVudENvbXBvbmVudCIsInBhdGgiLCJwYXJlbnROb2RlIiwiaXNDbGFzc0NvbXBvbmVudCIsImlzRnVuY3Rpb25hbENvbXBvbmVudCIsImdlbmVyYXRlVW5pcXVlTmFtZSIsImJhc2VOYW1lIiwiZXhpc3RpbmdOYW1lcyIsIm5hbWUiLCJjb3VudGVyIiwiZmluZEF0dHJpYnV0ZSIsImF0dHJpYnV0ZXMiLCJhdHRyaWJ1dGVOYW1lIiwiYXR0ciIsImRvZXNBdHRyaWJ1dGVFeGlzdCIsIm1vZGlmeUV4aXN0aW5nQXR0cmlidXRlIiwiZXhpc3RpbmdBdHRyaWJ1dGUiLCJwcm9wZXJ0eU5hbWUiLCJwcm9wZXJ0eVZhbHVlIiwiZXhwcmVzc2lvbiIsImFkZE5ld0F0dHJpYnV0ZSIsIm5ld0F0dHJpYnV0ZSIsInJlbW92ZUF0dHJpYnV0ZSIsImF0dHJpYnV0ZUluZGV4IiwiZW5zdXJlQXR0cmlidXRlRXhpc3RzIiwiY3JlYXRlQXR0cmlidXRlIiwiYWRkUHJvcGVydHlUb09iamVjdEV4cHJlc3Npb24iLCJjcmVhdGVNZXRob2RGb3JDbGFzc0NvbXBvbmVudCIsIm1ldGhvZE5hbWUiLCJpc1R5cGVTY3JpcHQiLCJ0eXBlTmFtZSIsImNyZWF0ZUFycm93RnVuY3Rpb25Gb3JGdW5jdGlvbmFsQ29tcG9uZW50IiwiZnVuY3Rpb25OYW1lIiwiYWRkTWV0aG9kVG9Db21wb25lbnQiLCJmaW5kSW1wb3J0ZWROYW1lIiwib3JpZ2luYWxOYW1lIiwiYWRkU3RhdGVEZWNsYXJhdGlvbiIsInN0YXRlTmFtZSIsImluaXRpYWxWYWx1ZSIsInN0YXRlUHJvcGVydHkiLCJub2RlIiwicHJvcCIsImhhc0pTWEF0dHJpYnV0ZSIsImFkZFVzZVN0YXRlRGVjbGFyYXRpb24iLCJzZXRTdGF0ZU5hbWUiLCJ1c2VTdGF0ZURlY2xhcmF0aW9uIiwiYWRkRXZlbnRBdHRyaWJ1dGUiLCJoYW5kbGVyTmFtZSIsImFkZFN0YXRlQXR0cmlidXRlIiwiY3JlYXRlQ2xhc3NNZXRob2QiLCJwYXJhbXMiLCJib2R5U3RhdGVtZW50cyIsInBhcmFtIiwiY3JlYXRlQXJyb3dGdW5jdGlvbiJdLCJtYXBwaW5ncyI6ImdGQVNPLE1BQU1BLEVBQXFCLENBQzlCQyxFQUNBQyxFQUNBQyxFQUNBQyxJQUNDLENBQ0QsR0FBSUEsSUFBZSxTQUNYLEdBQUFGLEVBQU8sT0FBUyxHQUFLQSxFQUFPLElBQUksQ0FBQyxFQUFFLEtBQUssTUFBTSxLQUFNLENBQ3BELE1BQU1HLEVBQWFILEVBQU8sSUFBSSxDQUFDLEVBQUUsS0FBSyxNQUFNLEtBQUssS0FFakQsR0FBSUcsRUFBWSxDQUVOLE1BQUFDLEVBQXVCTCxFQUFFLGlCQUMvQkssRUFBcUIsU0FBVyxDQUFDTCxFQUFFLGFBQWEsSUFBSUUsQ0FBVyxHQUFHLENBQUMsRUFHbkVFLEVBQVcsUUFBUUMsQ0FBb0IsQ0FDM0MsQ0FDSixNQUNHLENBQ0MsSUFBQUQsRUFRSixHQU5JSCxFQUFPLElBQUksQ0FBQyxFQUFFLEtBQUssY0FBZ0JBLEVBQU8sSUFBSSxDQUFDLEVBQUUsS0FBSyxhQUFhLENBQUMsRUFBRSxLQUN6REcsRUFBQUgsRUFBTyxJQUFJLENBQUMsRUFBRSxLQUFLLGFBQWEsQ0FBQyxFQUFFLEtBQUssS0FBSyxLQUNuREEsRUFBTyxJQUFJLENBQUMsRUFBRSxLQUFLLE9B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
@@ -6,4 +6,4 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Z=require("react"),p=require("./GridColumnMenuItem.js"),ee=require("./GridColumnMenuItemGroup.js"),te=require("./GridColumnMenuItemContent.js"),B=require("@progress/kendo-react-inputs"),ne=require("@progress/kendo-react-intl"),a=require("../messages/index.js"),V=require("@progress/kendo-data-query"),j=require("@progress/kendo-react-common"),I=require("@progress/kendo-react-buttons"),T=require("../utils/index.js"),q=require("@progress/kendo-svg-icons"),le=require("../GridClientWrapper.js"),re=require("./adaptiveContent/GridAdaptiveCheckboxFilter.js");function ae(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const h=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,h.get?h:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const l=ae(Z),ie=(e,o)=>e.length!==o.length?!1:e.every((r,h)=>r===o[h]),ce={uniqueData:!0},se=e=>{const{uniqueData:o=ce.uniqueData}=e,r=l.useContext(le.GridContext),h=()=>{const t=e.column.field;return M().filters.findIndex(c=>c.filters&&c.filters.length>0&&c.filters[0].field===t)},g=(t,n)=>{const s=e.column.field||"",c=t.map(u=>T.getNestedValue(s,u));return n?c.filter((u,d)=>c.indexOf(u)===d):c},M=()=>e.filter?j.clone(e.filter):{filters:[],logic:"and"},i=l.useRef(h()),[y,z]=l.useState(e.expanded||!1),[N,k]=l.useState(!1),[G,O]=l.useState(""),[C,x]=l.useState(g(e.data,o)||[]),[_,W]=l.useState(g(e.data,!1)||[]),[f,$]=l.useState(M());l.useEffect(()=>{const t=e.column.field||"",n=e.data.map(s=>T.getNestedValue(t,s));ie(n,_)||(x(n),W(n))},[e.column,e.data]);const D=()=>e.expanded!==void 0,Q=()=>{const t=D(),n=!(t?e.expanded:y);e.onExpandChange&&e.onExpandChange(n),k(!N),!t&&!(r!=null&&r.mobileMode)&&z(n)},w=t=>{const n=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",s={logic:"and",filters:[{field:e.column.field,operator:n,value:t.target.value,ignoreCase:!0}]};O(t.target.value),x(g(V.filterBy(e.data||[],s),o))},H=()=>{const t=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",n={logic:"and",filters:[{field:e.column.field,operator:t,value:"",ignoreCase:!0}]};O(""),x(g(V.filterBy(e.data||[],n),o))},L=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=f||null;n!==null&&n.filters.length>0?(i.current>=0&&n.filters.splice(i.current,1),e.onFilterChange(n,t)):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},A=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=f||null;e.onFilterChange(n,t),e.onCloseMenu&&e.onCloseMenu()},E=(t,n)=>{const s=e.column.field||"",c={...f},u=[...f.filters];let d=[];if(i.current!==-1&&c.filters[i.current].filters&&n!=="all"&&(d=c.filters[i.current].filters),t.value&&n==="all")C.forEach(S=>{d.push({field:s,operator:"eq",value:S})});else if(t.value)d.push({field:s,operator:"eq",value:n});else if(f){const S=d.findIndex(Y=>Y.value===n);d.splice(S,1)}c.logic="and",i.current!==-1?u[i.current]={logic:"or",filters:d}:u.push({logic:"or",filters:d}),(!t.value&&n==="all"||d.length===0)&&u.splice(i.current,1),c.filters=u,$(c)},P=()=>{let t=!1;if(f){const n=[...f.filters];return i.current===-1?!1:(t=C.every(s=>i.current!==-1&&n[i.current].filters?n[i.current].filters.findIndex(u=>u.value===s)>=0:!1),t)}return t},m=ne.useLocalization(),{column:b}=e;if(!b||!b.field)return l.createElement("div",null);const R=D()?e.expanded:y,v=[];if(f){const t=[...f.filters];i.current=t.findIndex(n=>n.filters&&n.filters.length>0?n.filters[0].field===b.field:!1),i.current!==-1&&t[i.current].filters.length>0&&t[i.current].filters.forEach(n=>{n.field===e.column.field&&v.push(n.value)})}const J=()=>{k(!1)},K=()=>{k(!1),e.onCloseMenu&&e.onCloseMenu()},U=m.toLanguageString(a.filterClearButton,a.messages[a.filterClearButton]),X=e.searchBox?l.createElement(e.searchBox,{value:G,onChange:w}):l.createElement("div",{className:`k-searchbox k-textbox k-input k-input-md k-input-solid ${r!=null&&r.mobileMode?"k-input-lg":"k-input-md"}`},l.createElement(j.IconWrap,{className:"k-input-icon",name:"search",icon:q.searchIcon}),l.createElement(B.Input,{className:"k-input-inner",type:"text",placeholder:m.toLanguageString(a.searchPlaceholder,a.messages[a.searchPlaceholder]),value:G,onChange:t=>w(t.nativeEvent)}),l.createElement(I.Button,{type:"button",rounded:null,className:"k-input-button",onClick:H,icon:"x","aria-label":U,svgIcon:q.xIcon})),F=v.filter((t,n)=>v.indexOf(t)===n);return l.createElement(ee.GridColumnMenuItemGroup,null,!(e.alwaysExpand&&!(r!=null&&r.mobileMode))&&l.createElement("div",{className:"k-expander"},l.createElement(p.GridColumnMenuItem,{title:m.toLanguageString(a.filterTitle,a.messages[a.filterTitle]),iconClass:"k-i-filter",svgIcon:q.filterIcon,expandable:!0,expanded:!!R,onClick:Q})),r!=null&&r.mobileMode&&N?l.createElement(re.GridAdaptiveCheckboxFilter,{onBackView:J,handleClose:K,searchBox:e.searchBox,handleCheckBoxChange:E,isAllSelected:P,currentData:C,uniqueFilterValues:F,submit:A,clear:L}):l.createElement(te.GridColumnMenuItemContent,{show:(e.alwaysExpand||!!R)&&!(r!=null&&r.mobileMode)},l.createElement("form",{className:"k-filter-menu",onSubmit:A,onReset:L},l.createElement("div",{className:"k-filter-menu-container"},X,l.createElement("ul",{className:"k-reset k-multicheck-wrap"},l.createElement("li",{className:"k-item k-check-all-wrap"},l.createElement(B.Checkbox,{label:m.toLanguageString(a.filterCheckAll,a.messages[a.filterCheckAll]),onChange:t=>E(t,"all"),checked:P()})),C.map((t,n)=>l.createElement("li",{className:"k-item",key:n},l.createElement(B.Checkbox,{label:String(t),onChange:s=>E(s,t),checked:F.includes(t)})))),l.createElement("div",{className:"k-filter-selected-items"},F.length+" "+m.toLanguageString(a.filterSelectedItems,a.messages[a.filterSelectedItems])),l.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},l.createElement(I.Button,{themeColor:"primary",type:"submit"},m.toLanguageString(a.filterSubmitButton,a.messages[a.filterSubmitButton])),l.createElement(I.Button,{className:"k-button",type:"reset"},m.toLanguageString(a.filterClearButton,a.messages[a.filterClearButton])))))))};exports.GridColumnMenuCheckboxFilter=se;
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react"),ee=require("./GridColumnMenuItem.js"),te=require("./GridColumnMenuItemGroup.js"),ne=require("./GridColumnMenuItemContent.js"),B=require("@progress/kendo-react-inputs"),le=require("@progress/kendo-react-intl"),a=require("../messages/index.js"),V=require("@progress/kendo-data-query"),j=require("@progress/kendo-react-common"),I=require("@progress/kendo-react-buttons"),T=require("../utils/index.js"),q=require("@progress/kendo-svg-icons"),re=require("../utils/GridContext.js"),ae=require("./adaptiveContent/GridAdaptiveCheckboxFilter.js");function ie(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const h=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,h.get?h:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const l=ie(p),z=(e,o)=>e.length!==o.length?!1:e.every((r,h)=>r===o[h]),ce={uniqueData:!0},se=e=>{const{uniqueData:o=ce.uniqueData}=e,r=l.useContext(re.GridContext),h=()=>{const t=e.column.field;return M().filters.findIndex(c=>c.filters&&c.filters.length>0&&c.filters[0].field===t)},g=(t,n)=>{const s=e.column.field||"",c=t.map(u=>T.getNestedValue(s,u));return n?c.filter((u,d)=>c.indexOf(u)===d):c},M=()=>e.filter?j.clone(e.filter):{filters:[],logic:"and"},i=l.useRef(h()),[y,_]=l.useState(e.expanded||!1),[N,x]=l.useState(!1),[G,O]=l.useState(""),[C,k]=l.useState(g(e.data,o)||[]),[$,Q]=l.useState(g(e.data,!1)||[]),[f,W]=l.useState(M());l.useEffect(()=>{const t=e.column.field||"",n=e.data.map(s=>T.getNestedValue(t,s));z(n,$)||(k(n),Q(n))},[e.column,e.data]);const D=()=>e.expanded!==void 0,H=()=>{const t=D(),n=!(t?e.expanded:y);e.onExpandChange&&e.onExpandChange(n),x(!N),!t&&!(r!=null&&r.mobileMode)&&_(n)},w=t=>{const n=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",s={logic:"and",filters:[{field:e.column.field,operator:n,value:t.target.value,ignoreCase:!0}]};O(t.target.value),k(g(V.filterBy(e.data||[],s),o))},J=()=>{const t=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",n={logic:"and",filters:[{field:e.column.field,operator:t,value:"",ignoreCase:!0}]};O(""),k(g(V.filterBy(e.data||[],n),o))},A=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=f||null;n!==null&&n.filters.length>0?(i.current>=0&&n.filters.splice(i.current,1),e.onFilterChange(n,t)):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},L=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=f||null;e.onFilterChange(n,t),e.onCloseMenu&&e.onCloseMenu()},E=(t,n)=>{const s=e.column.field||"",c={...f},u=[...f.filters];let d=[];if(i.current!==-1&&c.filters[i.current].filters&&n!=="all"&&(d=c.filters[i.current].filters),t.value&&n==="all")C.forEach(S=>{d.push({field:s,operator:"eq",value:S})});else if(t.value)d.push({field:s,operator:"eq",value:n});else if(f){const S=d.findIndex(Z=>Z.value===n);d.splice(S,1)}c.logic="and",i.current!==-1?u[i.current]={logic:"or",filters:d}:u.push({logic:"or",filters:d}),(!t.value&&n==="all"||d.length===0)&&u.splice(i.current,1),c.filters=u,W(c)},P=()=>{let t=!1;if(f){const n=[...f.filters];return i.current===-1?!1:(t=C.every(s=>i.current!==-1&&n[i.current].filters?n[i.current].filters.findIndex(u=>u.value===s)>=0:!1),t)}return t},m=le.useLocalization(),{column:b}=e;if(!b||!b.field)return l.createElement("div",null);const R=D()?e.expanded:y,v=[];if(f){const t=[...f.filters];i.current=t.findIndex(n=>n.filters&&n.filters.length>0?n.filters[0].field===b.field:!1),i.current!==-1&&t[i.current].filters.length>0&&t[i.current].filters.forEach(n=>{n.field===e.column.field&&v.push(n.value)})}const K=()=>{x(!1)},U=()=>{x(!1),e.onCloseMenu&&e.onCloseMenu()},X=m.toLanguageString(a.filterClearButton,a.messages[a.filterClearButton]),Y=e.searchBox?l.createElement(e.searchBox,{value:G,onChange:w}):l.createElement("div",{className:`k-searchbox k-textbox k-input k-input-md k-input-solid ${r!=null&&r.mobileMode?"k-input-lg":"k-input-md"}`},l.createElement(j.IconWrap,{className:"k-input-icon",name:"search",icon:q.searchIcon}),l.createElement(B.Input,{className:"k-input-inner",type:"text",placeholder:m.toLanguageString(a.searchPlaceholder,a.messages[a.searchPlaceholder]),value:G,onChange:t=>w(t.nativeEvent)}),l.createElement(I.Button,{type:"button",rounded:null,className:"k-input-button",onClick:J,icon:"x","aria-label":X,svgIcon:q.xIcon})),F=v.filter((t,n)=>v.indexOf(t)===n);return l.createElement(te.GridColumnMenuItemGroup,null,!(e.alwaysExpand&&!(r!=null&&r.mobileMode))&&l.createElement("div",{className:"k-expander"},l.createElement(ee.GridColumnMenuItem,{title:m.toLanguageString(a.filterTitle,a.messages[a.filterTitle]),iconClass:"k-i-filter",svgIcon:q.filterIcon,expandable:!0,expanded:!!R,onClick:H})),r!=null&&r.mobileMode&&N?l.createElement(ae.GridAdaptiveCheckboxFilter,{onBackView:K,handleClose:U,searchBox:e.searchBox,handleCheckBoxChange:E,isAllSelected:P,currentData:C,uniqueFilterValues:F,submit:L,clear:A}):l.createElement(ne.GridColumnMenuItemContent,{show:(e.alwaysExpand||!!R)&&!(r!=null&&r.mobileMode)},l.createElement("form",{className:"k-filter-menu",onSubmit:L,onReset:A},l.createElement("div",{className:"k-filter-menu-container"},Y,l.createElement("ul",{className:"k-reset k-multicheck-wrap"},l.createElement("li",{className:"k-item k-check-all-wrap"},l.createElement(B.Checkbox,{label:m.toLanguageString(a.filterCheckAll,a.messages[a.filterCheckAll]),onChange:t=>E(t,"all"),checked:P()})),C.map((t,n)=>l.createElement("li",{className:"k-item",key:n},l.createElement(B.Checkbox,{label:String(t),onChange:s=>E(s,t),checked:F.includes(t)})))),l.createElement("div",{className:"k-filter-selected-items"},F.length+" "+m.toLanguageString(a.filterSelectedItems,a.messages[a.filterSelectedItems])),l.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},l.createElement(I.Button,{themeColor:"primary",type:"submit"},m.toLanguageString(a.filterSubmitButton,a.messages[a.filterSubmitButton])),l.createElement(I.Button,{className:"k-button",type:"reset"},m.toLanguageString(a.filterClearButton,a.messages[a.filterClearButton])))))))};exports.GridColumnMenuCheckboxFilter=se;exports.isArrayEqual=z;
@@ -18,7 +18,7 @@ import { IconWrap as ce, clone as oe } from "@progress/kendo-react-common";
18
18
  import { Button as I } from "@progress/kendo-react-buttons";
19
19
  import { getNestedValue as H } from "../utils/index.mjs";
20
20
  import { searchIcon as se, xIcon as ue, filterIcon as fe } from "@progress/kendo-svg-icons";
21
- import { GridContext as de } from "../GridClientWrapper.mjs";
21
+ import { GridContext as de } from "../utils/GridContext.mjs";
22
22
  import { GridAdaptiveCheckboxFilter as me } from "./adaptiveContent/GridAdaptiveCheckboxFilter.mjs";
23
23
  const he = (e, m) => e.length !== m.length ? !1 : e.every((r, k) => r === m[k]), ge = {
24
24
  uniqueData: !0
@@ -173,5 +173,6 @@ const he = (e, m) => e.length !== m.length ? !1 : e.every((r, k) => r === m[k]),
173
173
  )))), /* @__PURE__ */ l.createElement("div", { className: "k-filter-selected-items" }, S.length + " " + f.toLanguageString(T, d[T])), /* @__PURE__ */ l.createElement("div", { className: "k-actions k-hstack k-justify-content-stretch" }, /* @__PURE__ */ l.createElement(I, { themeColor: "primary", type: "submit" }, f.toLanguageString(W, d[W])), /* @__PURE__ */ l.createElement(I, { className: "k-button", type: "reset" }, f.toLanguageString(x, d[x])))))));
174
174
  };
175
175
  export {
176
- De as GridColumnMenuCheckboxFilter
176
+ De as GridColumnMenuCheckboxFilter,
177
+ he as isArrayEqual
177
178
  };
@@ -6,4 +6,4 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("react"),h=require("@progress/kendo-react-inputs"),z=require("@progress/kendo-react-common"),A=require("@progress/kendo-svg-icons"),B=require("@progress/kendo-react-buttons"),F=require("@progress/kendo-react-intl"),l=require("../messages/index.js"),_=require("./GridColumnMenuItem.js"),V=require("./GridColumnMenuItemGroup.js"),W=require("./GridColumnMenuItemContent.js"),H=require("../GridClientWrapper.js"),J=require("./adaptiveContent/GridAdaptiveColumnChooser.js");function K(n){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const c in n)if(c!=="default"){const u=Object.getOwnPropertyDescriptor(n,c);Object.defineProperty(o,c,u.get?u:{enumerable:!0,get:()=>n[c]})}}return o.default=n,Object.freeze(o)}const e=K(P),R=n=>{const{columnsState:o,onCloseMenu:c,onColumnsStateChange:u}=n,d=F.useLocalization(),f=e.useContext(H.GridContext),[m,L]=e.useState(""),[k,O]=e.useState(n.expanded||!1),[x,p]=e.useState(!1),S=o.reduce((t,a)=>({...t,[a.id||""]:!a.hidden}),{}),[r,E]=e.useState(S),b=e.useMemo(()=>(o==null?void 0:o.filter(t=>{var a;return(a=t.title||t.field)==null?void 0:a.toLowerCase().includes(m.toLowerCase())}))||[],[o,m]),C=e.useMemo(()=>Object.values(r).filter(t=>t).length,[r]),g=e.useMemo(()=>C===(o==null?void 0:o.length),[o,C]),M=e.useCallback(t=>{t.preventDefault();const s=(i=>(i==null?void 0:i.map(w=>({...w,hidden:!r[w.id||""]})))||[])(o);u&&u(s),c==null||c.call(void 0)},[r,o,c]),v=t=>{t.preventDefault(),E(S)},y=e.useCallback(()=>{const t={...r};Object.keys(t).forEach((a,s)=>t[a]=g&&s===0?!0:!g),E(t)},[r,g]),I=e.useCallback((t,a)=>{const s={...r};s[a||""]=t,E(s)},[r]),G=t=>{L(String(t.target.value))},j=e.useCallback(()=>{const t=q(),a=!(t?n.expanded:k);n.onExpandChange&&n.onExpandChange(a),p(!x),!t&&!f.mobileMode&&O(a)},[k]),T=()=>{p(!1)},D=()=>{p(!1),n.onCloseMenu&&n.onCloseMenu()},q=()=>n.expanded!==void 0,N=q()?n.expanded:k;return e.createElement(V.GridColumnMenuItemGroup,null,e.createElement("div",{className:"k-expander"},!(n.alwaysExpand&&!f.mobileMode)&&e.createElement(_.GridColumnMenuItem,{title:d.toLanguageString(l.adaptiveColumnMenuChooserTitle,l.messages[l.adaptiveColumnMenuChooserTitle]),iconClass:"k-i-filter",svgIcon:A.columnsIcon,expandable:!0,expanded:!!N,onClick:j})),f.mobileMode&&x?e.createElement(e.Fragment,null,e.createElement(J.GridAdaptiveColumnChooser,{onBackView:T,handleClose:D,onApply:M,onReset:v,filter:m,onFilter:G,allSelected:g,onSelectAll:y,filtered:b,selectedColumns:r,checkedCount:C,onCheckChange:I})):e.createElement(W.GridColumnMenuItemContent,{show:(n.alwaysExpand||!!N)&&!f.mobileMode},e.createElement("form",{onSubmit:M,onReset:v,className:"k-filter-menu"},e.createElement("div",{className:"k-filter-menu-container"},e.createElement(h.TextBox,{className:"k-searchbox",value:m,onChange:G,prefix:()=>e.createElement(h.InputPrefix,null,e.createElement(z.IconWrap,{name:"search",icon:A.searchIcon}))}),e.createElement("ul",{className:"k-reset k-multicheck-wrap"},!m&&e.createElement("li",{className:"k-item k-check-all-wrap"},e.createElement(h.Checkbox,{checked:g,onChange:y,label:d.toLanguageString(l.filterSelectAll,l.messages[l.filterSelectAll])})),b.map((t,a)=>e.createElement("li",{key:t.id,className:"k-item"},e.createElement(h.Checkbox,{disabled:r[t.id||""]&&C===1,checked:r[t.id||""],onChange:s=>{var i;return I(!!((i=s.target.element)!=null&&i.checked),t.id)},label:t.title||t.field})))),e.createElement("div",{className:"k-filter-selected-items"},C," ",d.toLanguageString(l.columnMenuColumnChooserSelectedItems,l.messages[l.columnMenuColumnChooserSelectedItems])),e.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},e.createElement(B.Button,{type:"submit",themeColor:"primary"},d.toLanguageString(l.filterApplyButton,l.messages[l.filterApplyButton])),e.createElement(B.Button,{type:"reset"},d.toLanguageString(l.filterResetButton,l.messages[l.filterResetButton])))))))};R.displayName="GridColumnMenuColumnsChooser";exports.GridColumnMenuColumnsChooser=R;
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("react"),h=require("@progress/kendo-react-inputs"),z=require("@progress/kendo-react-common"),A=require("@progress/kendo-svg-icons"),B=require("@progress/kendo-react-buttons"),F=require("@progress/kendo-react-intl"),l=require("../messages/index.js"),_=require("./GridColumnMenuItem.js"),V=require("./GridColumnMenuItemGroup.js"),W=require("./GridColumnMenuItemContent.js"),H=require("../utils/GridContext.js"),J=require("./adaptiveContent/GridAdaptiveColumnChooser.js");function K(n){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const c in n)if(c!=="default"){const u=Object.getOwnPropertyDescriptor(n,c);Object.defineProperty(o,c,u.get?u:{enumerable:!0,get:()=>n[c]})}}return o.default=n,Object.freeze(o)}const e=K(P),R=n=>{const{columnsState:o,onCloseMenu:c,onColumnsStateChange:u}=n,d=F.useLocalization(),f=e.useContext(H.GridContext),[m,L]=e.useState(""),[k,O]=e.useState(n.expanded||!1),[E,p]=e.useState(!1),S=o.reduce((t,a)=>({...t,[a.id||""]:!a.hidden}),{}),[r,x]=e.useState(S),b=e.useMemo(()=>(o==null?void 0:o.filter(t=>{var a;return(a=t.title||t.field)==null?void 0:a.toLowerCase().includes(m.toLowerCase())}))||[],[o,m]),C=e.useMemo(()=>Object.values(r).filter(t=>t).length,[r]),g=e.useMemo(()=>C===(o==null?void 0:o.length),[o,C]),M=e.useCallback(t=>{t.preventDefault();const s=(i=>(i==null?void 0:i.map(w=>({...w,hidden:!r[w.id||""]})))||[])(o);u&&u(s),c==null||c.call(void 0)},[r,o,c]),v=t=>{t.preventDefault(),x(S)},y=e.useCallback(()=>{const t={...r};Object.keys(t).forEach((a,s)=>t[a]=g&&s===0?!0:!g),x(t)},[r,g]),I=e.useCallback((t,a)=>{const s={...r};s[a||""]=t,x(s)},[r]),G=t=>{L(String(t.target.value))},j=e.useCallback(()=>{const t=q(),a=!(t?n.expanded:k);n.onExpandChange&&n.onExpandChange(a),p(!E),!t&&!f.mobileMode&&O(a)},[k]),T=()=>{p(!1)},D=()=>{p(!1),n.onCloseMenu&&n.onCloseMenu()},q=()=>n.expanded!==void 0,N=q()?n.expanded:k;return e.createElement(V.GridColumnMenuItemGroup,null,e.createElement("div",{className:"k-expander"},!(n.alwaysExpand&&!f.mobileMode)&&e.createElement(_.GridColumnMenuItem,{title:d.toLanguageString(l.adaptiveColumnMenuChooserTitle,l.messages[l.adaptiveColumnMenuChooserTitle]),iconClass:"k-i-filter",svgIcon:A.columnsIcon,expandable:!0,expanded:!!N,onClick:j})),f.mobileMode&&E?e.createElement(e.Fragment,null,e.createElement(J.GridAdaptiveColumnChooser,{onBackView:T,handleClose:D,onApply:M,onReset:v,filter:m,onFilter:G,allSelected:g,onSelectAll:y,filtered:b,selectedColumns:r,checkedCount:C,onCheckChange:I})):e.createElement(W.GridColumnMenuItemContent,{show:(n.alwaysExpand||!!N)&&!f.mobileMode},e.createElement("form",{onSubmit:M,onReset:v,className:"k-filter-menu"},e.createElement("div",{className:"k-filter-menu-container"},e.createElement(h.TextBox,{className:"k-searchbox",value:m,onChange:G,prefix:()=>e.createElement(h.InputPrefix,null,e.createElement(z.IconWrap,{name:"search",icon:A.searchIcon}))}),e.createElement("ul",{className:"k-reset k-multicheck-wrap"},!m&&e.createElement("li",{className:"k-item k-check-all-wrap"},e.createElement(h.Checkbox,{checked:g,onChange:y,label:d.toLanguageString(l.filterSelectAll,l.messages[l.filterSelectAll])})),b.map((t,a)=>e.createElement("li",{key:t.id,className:"k-item"},e.createElement(h.Checkbox,{disabled:r[t.id||""]&&C===1,checked:r[t.id||""],onChange:s=>{var i;return I(!!((i=s.target.element)!=null&&i.checked),t.id)},label:t.title||t.field})))),e.createElement("div",{className:"k-filter-selected-items"},C," ",d.toLanguageString(l.columnMenuColumnChooserSelectedItems,l.messages[l.columnMenuColumnChooserSelectedItems])),e.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},e.createElement(B.Button,{type:"submit",themeColor:"primary"},d.toLanguageString(l.filterApplyButton,l.messages[l.filterApplyButton])),e.createElement(B.Button,{type:"reset"},d.toLanguageString(l.filterResetButton,l.messages[l.filterResetButton])))))))};R.displayName="GridColumnMenuColumnsChooser";exports.GridColumnMenuColumnsChooser=R;
@@ -16,7 +16,7 @@ import { adaptiveColumnMenuChooserTitle as B, messages as u, filterSelectAll as
16
16
  import { GridColumnMenuItem as U } from "./GridColumnMenuItem.mjs";
17
17
  import { GridColumnMenuItemGroup as X } from "./GridColumnMenuItemGroup.mjs";
18
18
  import { GridColumnMenuItemContent as Y } from "./GridColumnMenuItemContent.mjs";
19
- import { GridContext as Z } from "../GridClientWrapper.mjs";
19
+ import { GridContext as Z } from "../utils/GridContext.mjs";
20
20
  import { GridAdaptiveColumnChooser as _ } from "./adaptiveContent/GridAdaptiveColumnChooser.mjs";
21
21
  const $ = (o) => {
22
22
  const { columnsState: l, onCloseMenu: C, onColumnsStateChange: k } = o, i = Q(), f = e.useContext(Z), [s, D] = e.useState(""), [g, O] = e.useState(o.expanded || !1), [E, h] = e.useState(!1), x = l.reduce((t, n) => ({ ...t, [n.id || ""]: !n.hidden }), {}), [a, p] = e.useState(x), S = e.useMemo(
@@ -6,4 +6,4 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),w=require("@progress/kendo-data-query"),re=require("./GridColumnMenuItem.js"),ne=require("./GridColumnMenuItemGroup.js"),ie=require("./GridColumnMenuItemContent.js"),oe=require("@progress/kendo-react-intl"),i=require("../filterCommon.js"),u=require("../messages/index.js"),ae=require("./GridColumnMenuFilterUI.js"),R=require("@progress/kendo-react-buttons"),ue=require("@progress/kendo-svg-icons"),se=require("../GridClientWrapper.js"),ce=require("./adaptiveContent/GridAdaptiveFilterMenu.js");function de(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const c in e)if(c!=="default"){const g=Object.getOwnPropertyDescriptor(e,c);Object.defineProperty(o,c,g.get?g:{enumerable:!0,get:()=>e[c]})}}return o.default=e,Object.freeze(o)}const l=de(le),x=e=>e||{filters:[],logic:"and"},h=(e,o)=>x(o).filters.filter(C=>w.isCompositeFilterDescriptor(C)?C.filters&&C.filters.length&&!C.filters.find(M=>w.isCompositeFilterDescriptor(M)||M.field!==e):!1)[0]||null,fe=(e,o)=>!!h(e,o),me=e=>{const o=l.useContext(se.GridContext),c=l.useCallback(()=>{let t;if(e.column&&e.column.field){const n=i.getFilterType(e.column.filter),r=i.getDefaultOperator(e.filterOperators,n);t=h(e.column.field,e.filter),t=t?{...t,filters:t.filters.map(a=>({...a}))}:{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(a=>a.field===e.column.field).length===1&&t.filters.splice(1,0,{field:e.column.field,operator:r})}return t},[e.column]),[g,C]=l.useState(e.expanded||!1),[M,b]=l.useState(!1),[d,k]=l.useState(c()),q=()=>e.expanded!==void 0,z=()=>{const t=q(),n=!(t?e.expanded:g);e.onExpandChange&&e.onExpandChange(n),b(!M),!t&&!o.mobileMode&&C(n)},H=t=>{O(0,t)},$=t=>{O(1,t)},O=(t,n)=>{const r=d.filters.map((a,s)=>s===t?{...a,value:n.value,operator:n.operator}:a);k({...d,filters:r})},Q=t=>{let n=t.target.value;t.target.tagName==="SPAN"&&(n=t.target.parentElement.value),k({...d,logic:n})},T=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=e.column.field,r=x(e.filter),a=h(n,e.filter),s=r.filters.filter(v=>v!==a);s.length?e.onFilterChange({...r,filters:s},t):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},D=()=>({...d,filters:d.filters.filter(t=>t.value!==void 0&&t.value!==null&&t.value!==""||t.value===null&&t.operator)}),B=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=e.column.field,r=x(e.filter),a=h(n,e.filter),s=D();let v=null;if(a&&s.filters.length>0){const G=r.filters.map(E=>E===a?s:E);v={...r,filters:G}}else if(s.filters.length===0){const G=r.filters.filter(E=>E!==a);G.length&&(v={...r,filters:G})}else v={...r,filters:[...r.filters,s]};e.onFilterChange(v,t),e.onCloseMenu&&e.onCloseMenu()},{column:f,filterUI:W,hideSecondFilter:P,filterOperators:J}=e,m=oe.useLocalization();if(!f||!f.field)return l.createElement("div",null);const p=i.getFilterType(f.filter),K=P!==void 0?P:i.defaultHideSecondFilter[p],F=d.filters,L=i.operatorMap(J[p],m),U=i.operatorMap(i.booleanFilterValues,m),X={field:f.field,value:F[0].value,operator:F[0].operator,operators:L,booleanValues:U,onChange:H,filterType:p},Y={field:f.field,value:F[1].value,operator:F[1].operator,operators:L,booleanValues:U,onChange:$,filterType:p},A=d.logic,N=i.operatorMap(i.filterLogicList,m),S={value:N.find(t=>t.operator===(A===null?"":A)),onChange:Q,data:N},y=W,I={firstFilterProps:X,secondFilterProps:Y,logicData:S.data,logicValue:S.value,onLogicChange:S.onChange,hideSecondFilter:K},V=D().filters.length!==0||i.IsUnaryFilter(F[0].operator)||i.IsUnaryFilter(F[1].operator),_=q()?e.expanded:g,j=e.alwaysExpand&&!o.mobileMode,Z=()=>{b(!1)},ee=()=>{b(!1),e.onCloseMenu&&e.onCloseMenu()},te=`${m.toLanguageString(u.adaptiveColumnMenuFilterTitle,u.messages[u.adaptiveColumnMenuFilterTitle])} ${f.title||f.field}`;return l.createElement(ne.GridColumnMenuItemGroup,null,!j&&l.createElement("div",{className:"k-expander"},l.createElement(re.GridColumnMenuItem,{title:m.toLanguageString(u.filterTitle,u.messages[u.filterTitle]),iconClass:"k-i-filter",svgIcon:ue.filterIcon,expandable:!0,expanded:!!_,onClick:z})),o.mobileMode&&M?l.createElement(ce.GridAdaptiveFilterMenu,{FilterUI:y,filterUIProps:I,onBackView:Z,adaptiveTitle:te,handleClose:ee,submit:B,clear:T,isFilterValid:V}):l.createElement(ie.GridColumnMenuItemContent,{show:(j||!!_)&&!o.mobileMode},l.createElement("form",{className:"k-filter-menu",onSubmit:B,onReset:T},l.createElement("div",{className:"k-filter-menu-container"},y?l.createElement(y,{...I}):l.createElement(ae.GridColumnMenuFilterUI,{...I}),l.createElement("div",{className:"k-actions k-actions-stretched"},l.createElement(R.Button,{themeColor:"primary",disabled:!V},m.toLanguageString(u.filterSubmitButton,u.messages[u.filterSubmitButton])),l.createElement(R.Button,{type:"reset"},m.toLanguageString(u.filterClearButton,u.messages[u.filterClearButton])))))))};exports.GridColumnMenuFilter=me;exports.filterGroupByField=h;exports.isColumnMenuFilterActive=fe;exports.rootFilterOrDefault=x;
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),w=require("@progress/kendo-data-query"),re=require("./GridColumnMenuItem.js"),ne=require("./GridColumnMenuItemGroup.js"),ie=require("./GridColumnMenuItemContent.js"),oe=require("@progress/kendo-react-intl"),i=require("../filterCommon.js"),u=require("../messages/index.js"),ae=require("./GridColumnMenuFilterUI.js"),R=require("@progress/kendo-react-buttons"),ue=require("@progress/kendo-svg-icons"),se=require("../utils/GridContext.js"),ce=require("./adaptiveContent/GridAdaptiveFilterMenu.js");function de(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const c in e)if(c!=="default"){const g=Object.getOwnPropertyDescriptor(e,c);Object.defineProperty(o,c,g.get?g:{enumerable:!0,get:()=>e[c]})}}return o.default=e,Object.freeze(o)}const l=de(le),E=e=>e||{filters:[],logic:"and"},h=(e,o)=>E(o).filters.filter(C=>w.isCompositeFilterDescriptor(C)?C.filters&&C.filters.length&&!C.filters.find(M=>w.isCompositeFilterDescriptor(M)||M.field!==e):!1)[0]||null,fe=(e,o)=>!!h(e,o),me=e=>{const o=l.useContext(se.GridContext),c=l.useCallback(()=>{let t;if(e.column&&e.column.field){const n=i.getFilterType(e.column.filter),r=i.getDefaultOperator(e.filterOperators,n);t=h(e.column.field,e.filter),t=t?{...t,filters:t.filters.map(a=>({...a}))}:{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(a=>a.field===e.column.field).length===1&&t.filters.splice(1,0,{field:e.column.field,operator:r})}return t},[e.column]),[g,C]=l.useState(e.expanded||!1),[M,b]=l.useState(!1),[d,k]=l.useState(c()),q=()=>e.expanded!==void 0,z=()=>{const t=q(),n=!(t?e.expanded:g);e.onExpandChange&&e.onExpandChange(n),b(!M),!t&&!o.mobileMode&&C(n)},H=t=>{O(0,t)},$=t=>{O(1,t)},O=(t,n)=>{const r=d.filters.map((a,s)=>s===t?{...a,value:n.value,operator:n.operator}:a);k({...d,filters:r})},Q=t=>{let n=t.target.value;t.target.tagName==="SPAN"&&(n=t.target.parentElement.value),k({...d,logic:n})},T=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=e.column.field,r=E(e.filter),a=h(n,e.filter),s=r.filters.filter(v=>v!==a);s.length?e.onFilterChange({...r,filters:s},t):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()},D=()=>({...d,filters:d.filters.filter(t=>t.value!==void 0&&t.value!==null&&t.value!==""||t.value===null&&t.operator)}),B=t=>{if(t.preventDefault(),!e.onFilterChange)return;const n=e.column.field,r=E(e.filter),a=h(n,e.filter),s=D();let v=null;if(a&&s.filters.length>0){const p=r.filters.map(x=>x===a?s:x);v={...r,filters:p}}else if(s.filters.length===0){const p=r.filters.filter(x=>x!==a);p.length&&(v={...r,filters:p})}else v={...r,filters:[...r.filters,s]};e.onFilterChange(v,t),e.onCloseMenu&&e.onCloseMenu()},{column:f,filterUI:J,hideSecondFilter:P,filterOperators:K}=e,m=oe.useLocalization();if(!f||!f.field)return l.createElement("div",null);const G=i.getFilterType(f.filter),W=P!==void 0?P:i.defaultHideSecondFilter[G],F=d.filters,L=i.operatorMap(K[G],m),U=i.operatorMap(i.booleanFilterValues,m),X={field:f.field,value:F[0].value,operator:F[0].operator,operators:L,booleanValues:U,onChange:H,filterType:G},Y={field:f.field,value:F[1].value,operator:F[1].operator,operators:L,booleanValues:U,onChange:$,filterType:G},A=d.logic,N=i.operatorMap(i.filterLogicList,m),S={value:N.find(t=>t.operator===(A===null?"":A)),onChange:Q,data:N},y=J,I={firstFilterProps:X,secondFilterProps:Y,logicData:S.data,logicValue:S.value,onLogicChange:S.onChange,hideSecondFilter:W},V=D().filters.length!==0||i.IsUnaryFilter(F[0].operator)||i.IsUnaryFilter(F[1].operator),_=q()?e.expanded:g,j=e.alwaysExpand&&!o.mobileMode,Z=()=>{b(!1)},ee=()=>{b(!1),e.onCloseMenu&&e.onCloseMenu()},te=`${m.toLanguageString(u.adaptiveColumnMenuFilterTitle,u.messages[u.adaptiveColumnMenuFilterTitle])} ${f.title||f.field}`;return l.createElement(ne.GridColumnMenuItemGroup,null,!j&&l.createElement("div",{className:"k-expander"},l.createElement(re.GridColumnMenuItem,{title:m.toLanguageString(u.filterTitle,u.messages[u.filterTitle]),iconClass:"k-i-filter",svgIcon:ue.filterIcon,expandable:!0,expanded:!!_,onClick:z})),o.mobileMode&&M?l.createElement(ce.GridAdaptiveFilterMenu,{FilterUI:y,filterUIProps:I,onBackView:Z,adaptiveTitle:te,handleClose:ee,submit:B,clear:T,isFilterValid:V}):l.createElement(ie.GridColumnMenuItemContent,{show:(j||!!_)&&!o.mobileMode},l.createElement("form",{className:"k-filter-menu",onSubmit:B,onReset:T},l.createElement("div",{className:"k-filter-menu-container"},y?l.createElement(y,{...I}):l.createElement(ae.GridColumnMenuFilterUI,{...I}),l.createElement("div",{className:"k-actions k-actions-stretched"},l.createElement(R.Button,{themeColor:"primary",disabled:!V},m.toLanguageString(u.filterSubmitButton,u.messages[u.filterSubmitButton])),l.createElement(R.Button,{type:"reset"},m.toLanguageString(u.filterClearButton,u.messages[u.filterClearButton])))))))};exports.GridColumnMenuFilter=me;exports.filterGroupByField=h;exports.isColumnMenuFilterActive=fe;exports.rootFilterOrDefault=E;
@@ -17,7 +17,7 @@ import { adaptiveColumnMenuFilterTitle as j, messages as E, filterTitle as q, fi
17
17
  import { GridColumnMenuFilterUI as Fe } from "./GridColumnMenuFilterUI.mjs";
18
18
  import { Button as Q } from "@progress/kendo-react-buttons";
19
19
  import { filterIcon as he } from "@progress/kendo-svg-icons";
20
- import { GridContext as ve } from "../GridClientWrapper.mjs";
20
+ import { GridContext as ve } from "../utils/GridContext.mjs";
21
21
  import { GridAdaptiveFilterMenu as Ee } from "./adaptiveContent/GridAdaptiveFilterMenu.mjs";
22
22
  const k = (e) => e || { filters: [], logic: "and" }, x = (e, a) => k(a).filters.filter((f) => R(f) ? f.filters && f.filters.length && !f.filters.find((g) => R(g) || g.field !== e) : !1)[0] || null, Ne = (e, a) => !!x(e, a), Oe = (e) => {
23
23
  const a = l.useContext(ve), y = l.useCallback(() => {
@@ -6,4 +6,4 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react"),d=require("@progress/kendo-react-dropdowns"),s=require("@progress/kendo-react-inputs"),h=require("@progress/kendo-react-dateinputs"),c=require("../filterCommon.js"),p=require("../GridClientWrapper.js");function D(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const l=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,l.get?l:{enumerable:!0,get:()=>e[a]})}}return t.default=e,Object.freeze(t)}const r=D(b),v=e=>{const t=r.useContext(p.GridContext),a=()=>{if(e.filterType==="boolean")return;const n=e.operators.find(o=>o.operator===e.operator)||null;return r.createElement(d.DropDownList,{adaptive:t.adaptive,size:t.mobileMode?"large":"medium",value:n,onChange:m,data:e.operators,textField:"text"})},l=n=>{c.cellInputChange(n.value,n.syntheticEvent,e)},m=n=>{c.cellOperatorChange(n,e.value,e.onChange)},g=n=>{c.cellBoolDropdownChange(n,e.onChange)},C=(n,o,u)=>{switch(n){case"numeric":return r.createElement(s.NumericTextBox,{value:o,size:t.mobileMode?"large":"medium",onChange:l,rangeOnEnter:!1});case"date":return r.createElement(h.DatePicker,{value:o,size:t.mobileMode?"large":"medium",onChange:l});case"boolean":{const f=i=>i==null;return r.createElement(d.DropDownList,{adaptive:t.adaptive,onChange:g,size:t.mobileMode?"large":"medium",value:u.find(i=>i.operator===(f(o)?"":o)),data:u,textField:"text"})}default:return r.createElement(s.Input,{className:"k-input-lg",value:o||"",onChange:l})}};return r.createElement(r.Fragment,null,a(),C(e.filterType,e.value,e.booleanValues))};exports.GridColumnMenuFilterCell=v;
9
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react"),d=require("@progress/kendo-react-dropdowns"),m=require("@progress/kendo-react-inputs"),h=require("@progress/kendo-react-dateinputs"),c=require("../filterCommon.js"),x=require("../utils/GridContext.js");function p(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const i=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,i.get?i:{enumerable:!0,get:()=>e[a]})}}return t.default=e,Object.freeze(t)}const o=p(b),D=e=>{const t=o.useContext(x.GridContext),a=()=>{if(e.filterType==="boolean")return;const n=e.operators.find(r=>r.operator===e.operator)||null;return o.createElement(d.DropDownList,{adaptive:t.adaptive,size:t.mobileMode?"large":"medium",value:n,onChange:s,data:e.operators,textField:"text"})},i=n=>{c.cellInputChange(n.value,n.syntheticEvent,e)},s=n=>{c.cellOperatorChange(n,e.value,e.onChange)},g=n=>{c.cellBoolDropdownChange(n,e.onChange)},C=(n,r,u)=>{switch(n){case"numeric":return o.createElement(m.NumericTextBox,{value:r,size:t.mobileMode?"large":"medium",onChange:i,rangeOnEnter:!1});case"date":return o.createElement(h.DatePicker,{value:r,size:t.mobileMode?"large":"medium",onChange:i});case"boolean":{const f=l=>l==null;return o.createElement(d.DropDownList,{adaptive:t.adaptive,onChange:g,size:t.mobileMode?"large":"medium",value:u.find(l=>l.operator===(f(r)?"":r)),data:u,textField:"text"})}default:return o.createElement(m.TextBox,{size:t.mobileMode?"large":"medium",value:r||"",onChange:i})}};return o.createElement(o.Fragment,null,a(),C(e.filterType,e.value,e.booleanValues))};exports.GridColumnMenuFilterCell=D;