ods-component-lib 1.21.2 → 1.22.2

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 (996) hide show
  1. package/README.md +382 -19
  2. package/dist/_virtual/es.array.index-of.js +3 -0
  3. package/dist/_virtual/es.array.index-of.js.map +1 -0
  4. package/dist/_virtual/es.array.index-of2.js +5 -0
  5. package/dist/_virtual/es.array.index-of2.js.map +1 -0
  6. package/dist/_virtual/es.array.iterator.js +3 -0
  7. package/dist/_virtual/es.array.iterator.js.map +1 -0
  8. package/dist/_virtual/es.array.reduce.js +3 -0
  9. package/dist/_virtual/es.array.reduce.js.map +1 -0
  10. package/dist/_virtual/es.array.reduce2.js +5 -0
  11. package/dist/_virtual/es.array.reduce2.js.map +1 -0
  12. package/dist/_virtual/es.array.reverse.js +3 -0
  13. package/dist/_virtual/es.array.reverse.js.map +1 -0
  14. package/dist/_virtual/es.array.reverse2.js +5 -0
  15. package/dist/_virtual/es.array.reverse2.js.map +1 -0
  16. package/dist/_virtual/es.promise.all.js +5 -0
  17. package/dist/_virtual/es.promise.all.js.map +1 -0
  18. package/dist/_virtual/es.promise.catch.js +5 -0
  19. package/dist/_virtual/es.promise.catch.js.map +1 -0
  20. package/dist/_virtual/es.promise.constructor.js +5 -0
  21. package/dist/_virtual/es.promise.constructor.js.map +1 -0
  22. package/dist/_virtual/es.promise.js +3 -0
  23. package/dist/_virtual/es.promise.js.map +1 -0
  24. package/dist/_virtual/es.promise.race.js +5 -0
  25. package/dist/_virtual/es.promise.race.js.map +1 -0
  26. package/dist/_virtual/es.promise.reject.js +5 -0
  27. package/dist/_virtual/es.promise.reject.js.map +1 -0
  28. package/dist/_virtual/es.promise.resolve.js +5 -0
  29. package/dist/_virtual/es.promise.resolve.js.map +1 -0
  30. package/dist/_virtual/es.promise2.js +5 -0
  31. package/dist/_virtual/es.promise2.js.map +1 -0
  32. package/dist/_virtual/es.regexp.exec.js +5 -0
  33. package/dist/_virtual/es.regexp.exec.js.map +1 -0
  34. package/dist/_virtual/es.regexp.to-string.js +3 -0
  35. package/dist/_virtual/es.regexp.to-string.js.map +1 -0
  36. package/dist/_virtual/es.regexp.to-string2.js +5 -0
  37. package/dist/_virtual/es.regexp.to-string2.js.map +1 -0
  38. package/dist/_virtual/es.string.ends-with.js +3 -0
  39. package/dist/_virtual/es.string.ends-with.js.map +1 -0
  40. package/dist/_virtual/es.string.ends-with2.js +5 -0
  41. package/dist/_virtual/es.string.ends-with2.js.map +1 -0
  42. package/dist/_virtual/es.string.includes.js +3 -0
  43. package/dist/_virtual/es.string.includes.js.map +1 -0
  44. package/dist/_virtual/es.string.includes2.js +5 -0
  45. package/dist/_virtual/es.string.includes2.js.map +1 -0
  46. package/dist/_virtual/es.string.match.js +3 -0
  47. package/dist/_virtual/es.string.match.js.map +1 -0
  48. package/dist/_virtual/es.string.match2.js +5 -0
  49. package/dist/_virtual/es.string.match2.js.map +1 -0
  50. package/dist/_virtual/es.string.replace.js +3 -0
  51. package/dist/_virtual/es.string.replace.js.map +1 -0
  52. package/dist/_virtual/es.string.replace2.js +5 -0
  53. package/dist/_virtual/es.string.replace2.js.map +1 -0
  54. package/dist/_virtual/es.string.split.js +3 -0
  55. package/dist/_virtual/es.string.split.js.map +1 -0
  56. package/dist/_virtual/es.string.split2.js +5 -0
  57. package/dist/_virtual/es.string.split2.js.map +1 -0
  58. package/dist/_virtual/es.string.starts-with.js +3 -0
  59. package/dist/_virtual/es.string.starts-with.js.map +1 -0
  60. package/dist/_virtual/es.string.starts-with2.js +5 -0
  61. package/dist/_virtual/es.string.starts-with2.js.map +1 -0
  62. package/dist/_virtual/es.string.trim.js +3 -0
  63. package/dist/_virtual/es.string.trim.js.map +1 -0
  64. package/dist/_virtual/es.string.trim2.js +5 -0
  65. package/dist/_virtual/es.string.trim2.js.map +1 -0
  66. package/dist/_virtual/index.js +3 -5
  67. package/dist/_virtual/index.js.map +1 -1
  68. package/dist/_virtual/index2.js +2 -3
  69. package/dist/_virtual/index2.js.map +1 -1
  70. package/dist/_virtual/index3.js +5 -2
  71. package/dist/_virtual/index3.js.map +1 -1
  72. package/dist/_virtual/index4.js +5 -3
  73. package/dist/_virtual/index4.js.map +1 -1
  74. package/dist/_virtual/index5.js +3 -2
  75. package/dist/_virtual/index5.js.map +1 -1
  76. package/dist/_virtual/index6.js +2 -5
  77. package/dist/_virtual/index6.js.map +1 -1
  78. package/dist/_virtual/index7.js +2 -5
  79. package/dist/_virtual/index7.js.map +1 -1
  80. package/dist/_virtual/index8.js +5 -2
  81. package/dist/_virtual/index8.js.map +1 -1
  82. package/dist/_virtual/{index14.js → make-built-in.js} +1 -1
  83. package/dist/_virtual/make-built-in.js.map +1 -0
  84. package/dist/_virtual/new-promise-capability.js +5 -0
  85. package/dist/_virtual/new-promise-capability.js.map +1 -0
  86. package/dist/_virtual/object-define-properties.js +5 -0
  87. package/dist/_virtual/object-define-properties.js.map +1 -0
  88. package/dist/_virtual/object-define-property.js +5 -0
  89. package/dist/_virtual/object-define-property.js.map +1 -0
  90. package/dist/_virtual/object-get-own-property-descriptor.js +5 -0
  91. package/dist/_virtual/object-get-own-property-descriptor.js.map +1 -0
  92. package/dist/_virtual/object-get-own-property-names.js +5 -0
  93. package/dist/_virtual/object-get-own-property-names.js.map +1 -0
  94. package/dist/_virtual/object-get-own-property-symbols.js +5 -0
  95. package/dist/_virtual/object-get-own-property-symbols.js.map +1 -0
  96. package/dist/_virtual/object-property-is-enumerable.js +5 -0
  97. package/dist/_virtual/object-property-is-enumerable.js.map +1 -0
  98. package/dist/_virtual/{index12.js → shared-store.js} +1 -1
  99. package/dist/_virtual/shared-store.js.map +1 -0
  100. package/dist/_virtual/web.dom-collections.iterator.js +3 -0
  101. package/dist/_virtual/web.dom-collections.iterator.js.map +1 -0
  102. package/dist/_virtual/web.dom-collections.iterator2.js +5 -0
  103. package/dist/_virtual/web.dom-collections.iterator2.js.map +1 -0
  104. package/dist/components/antd/alert/OdsAlert.js +5 -8
  105. package/dist/components/antd/alert/OdsAlert.js.map +1 -1
  106. package/dist/components/antd/autocomplete/OdsAutoComplete.js +5 -8
  107. package/dist/components/antd/autocomplete/OdsAutoComplete.js.map +1 -1
  108. package/dist/components/antd/badge/OdsBadge.js +2 -5
  109. package/dist/components/antd/badge/OdsBadge.js.map +1 -1
  110. package/dist/components/antd/badge/OdsBadgeRibbon.js +4 -7
  111. package/dist/components/antd/badge/OdsBadgeRibbon.js.map +1 -1
  112. package/dist/components/antd/button/OdsButton.js +5 -8
  113. package/dist/components/antd/button/OdsButton.js.map +1 -1
  114. package/dist/components/antd/button/OdsDataGrdiRowButton.js +25 -26
  115. package/dist/components/antd/button/OdsDataGrdiRowButton.js.map +1 -1
  116. package/dist/components/antd/calendar/OdsCalendar.js +5 -8
  117. package/dist/components/antd/calendar/OdsCalendar.js.map +1 -1
  118. package/dist/components/antd/card/OdsCard.js +5 -13
  119. package/dist/components/antd/card/OdsCard.js.map +1 -1
  120. package/dist/components/antd/change/OdsChange.js +136 -85
  121. package/dist/components/antd/change/OdsChange.js.map +1 -1
  122. package/dist/components/antd/change/OdsChange.module.scss.js +12 -0
  123. package/dist/components/antd/change/OdsChange.module.scss.js.map +1 -0
  124. package/dist/components/antd/checkbox/OdsCheckbox.js +5 -8
  125. package/dist/components/antd/checkbox/OdsCheckbox.js.map +1 -1
  126. package/dist/components/antd/checkbox/OdsCheckboxGroup.js +5 -8
  127. package/dist/components/antd/checkbox/OdsCheckboxGroup.js.map +1 -1
  128. package/dist/components/antd/collapse/OdsCollapse.js +2 -4
  129. package/dist/components/antd/collapse/OdsCollapse.js.map +1 -1
  130. package/dist/components/antd/currencyInput/CurrencySelect.js +14 -9
  131. package/dist/components/antd/currencyInput/CurrencySelect.js.map +1 -1
  132. package/dist/components/antd/currencyInput/OdsCurrencyInput.js +53 -57
  133. package/dist/components/antd/currencyInput/OdsCurrencyInput.js.map +1 -1
  134. package/dist/components/antd/datePicker/OdsDatePicker.js +5 -10
  135. package/dist/components/antd/datePicker/OdsDatePicker.js.map +1 -1
  136. package/dist/components/antd/datePicker/OdsDateRangePicker.js +5 -14
  137. package/dist/components/antd/datePicker/OdsDateRangePicker.js.map +1 -1
  138. package/dist/components/antd/divider/OdsDivider.js +5 -6
  139. package/dist/components/antd/divider/OdsDivider.js.map +1 -1
  140. package/dist/components/antd/dropdown/OdsDropdown.js +3 -12
  141. package/dist/components/antd/dropdown/OdsDropdown.js.map +1 -1
  142. package/dist/components/antd/image/OdsImage.js.map +1 -1
  143. package/dist/components/antd/input/OdsInput.js +5 -8
  144. package/dist/components/antd/input/OdsInput.js.map +1 -1
  145. package/dist/components/antd/input/OdsPassword.js +13 -10
  146. package/dist/components/antd/input/OdsPassword.js.map +1 -1
  147. package/dist/components/antd/input/OdsPhoneInput.js +12 -17
  148. package/dist/components/antd/input/OdsPhoneInput.js.map +1 -1
  149. package/dist/components/antd/input/OdsSearch.js +3 -6
  150. package/dist/components/antd/input/OdsSearch.js.map +1 -1
  151. package/dist/components/antd/input/OdsTextArea.js +5 -8
  152. package/dist/components/antd/input/OdsTextArea.js.map +1 -1
  153. package/dist/components/antd/inputNumber/OdsInputNumber.js +5 -8
  154. package/dist/components/antd/inputNumber/OdsInputNumber.js.map +1 -1
  155. package/dist/components/antd/list/OdsList.js +5 -22
  156. package/dist/components/antd/list/OdsList.js.map +1 -1
  157. package/dist/components/antd/modal/OdsModal.js +4 -5
  158. package/dist/components/antd/modal/OdsModal.js.map +1 -1
  159. package/dist/components/antd/notification/OdsNotification.js +6 -8
  160. package/dist/components/antd/notification/OdsNotification.js.map +1 -1
  161. package/dist/components/antd/progress/OdsProgress.js +5 -8
  162. package/dist/components/antd/progress/OdsProgress.js.map +1 -1
  163. package/dist/components/antd/radio/OdsRadio.js +4 -9
  164. package/dist/components/antd/radio/OdsRadio.js.map +1 -1
  165. package/dist/components/antd/radio/OdsRadioGroup.js +5 -6
  166. package/dist/components/antd/radio/OdsRadioGroup.js.map +1 -1
  167. package/dist/components/antd/rate/OdsRate.js +5 -8
  168. package/dist/components/antd/rate/OdsRate.js.map +1 -1
  169. package/dist/components/antd/select/OdsSelect.js +4 -7
  170. package/dist/components/antd/select/OdsSelect.js.map +1 -1
  171. package/dist/components/antd/spin/OdsSpin.js +5 -7
  172. package/dist/components/antd/spin/OdsSpin.js.map +1 -1
  173. package/dist/components/antd/switch/OdsSwitch.js +4 -7
  174. package/dist/components/antd/switch/OdsSwitch.js.map +1 -1
  175. package/dist/components/antd/tab/OdsTab.js +5 -8
  176. package/dist/components/antd/tab/OdsTab.js.map +1 -1
  177. package/dist/components/antd/table/OdsTable.js +9 -0
  178. package/dist/components/antd/table/OdsTable.js.map +1 -0
  179. package/dist/components/antd/tag/OdsTag.js +5 -8
  180. package/dist/components/antd/tag/OdsTag.js.map +1 -1
  181. package/dist/components/antd/timeline/OdsTimeline.js +5 -12
  182. package/dist/components/antd/timeline/OdsTimeline.js.map +1 -1
  183. package/dist/components/antd/timepicker/OdsRangeTimepicker.js +6 -7
  184. package/dist/components/antd/timepicker/OdsRangeTimepicker.js.map +1 -1
  185. package/dist/components/antd/timepicker/OdsTimepicker.js +6 -9
  186. package/dist/components/antd/timepicker/OdsTimepicker.js.map +1 -1
  187. package/dist/components/antd/treeSelect/OdsTreeSelect.js +5 -29
  188. package/dist/components/antd/treeSelect/OdsTreeSelect.js.map +1 -1
  189. package/dist/components/antd/typography/OdsLink.js +5 -3
  190. package/dist/components/antd/typography/OdsLink.js.map +1 -1
  191. package/dist/components/antd/typography/OdsParagraph.js +5 -3
  192. package/dist/components/antd/typography/OdsParagraph.js.map +1 -1
  193. package/dist/components/antd/typography/OdsText.js +5 -8
  194. package/dist/components/antd/typography/OdsText.js.map +1 -1
  195. package/dist/components/antd/typography/OdsTitle.js +5 -8
  196. package/dist/components/antd/typography/OdsTitle.js.map +1 -1
  197. package/dist/components/devextreme/DataGrid/OdsDataGrid/index.js +44 -35
  198. package/dist/components/devextreme/DataGrid/OdsDataGrid/index.js.map +1 -1
  199. package/dist/components/devextreme/DataGrid/OdsDataGridV2/index.js +21 -0
  200. package/dist/components/devextreme/DataGrid/OdsDataGridV2/index.js.map +1 -0
  201. package/dist/components/devextreme/DataGrid/hooks/useBodyClasses.js +27 -18
  202. package/dist/components/devextreme/DataGrid/hooks/useBodyClasses.js.map +1 -1
  203. package/dist/components/devextreme/DxDataGrid.module.scss.js +8 -0
  204. package/dist/components/devextreme/DxDataGrid.module.scss.js.map +1 -0
  205. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.Constants.js +0 -1
  206. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.Constants.js.map +1 -1
  207. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.js +55 -64
  208. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.js.map +1 -1
  209. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.module.scss.js +10 -0
  210. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.module.scss.js.map +1 -0
  211. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.Constants.js +0 -1
  212. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.Constants.js.map +1 -1
  213. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.js +40 -41
  214. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.js.map +1 -1
  215. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.module.scss.js +10 -0
  216. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.module.scss.js.map +1 -0
  217. package/dist/components/devextreme/OdsDataGrid.Legacy.js +30 -30
  218. package/dist/components/devextreme/OdsDataGrid.Legacy.js.map +1 -1
  219. package/dist/components/devextreme/OdsDisplayGrid.js +36 -36
  220. package/dist/components/devextreme/OdsDisplayGrid.js.map +1 -1
  221. package/dist/components/devextreme/OdsInlineEditDataGrid/OdsInlineEditDataGrid.js +2 -2
  222. package/dist/components/devextreme/OdsInlineEditDataGrid/OdsInlineEditDataGrid.js.map +1 -1
  223. package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnActionCellRenderHandler.js.map +1 -1
  224. package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnContentReadyHandler.js.map +1 -1
  225. package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnEditorPreparedHandler.js.map +1 -1
  226. package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnOptionChangedHandler.js.map +1 -1
  227. package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnSummaryHandler.js.map +1 -1
  228. package/dist/components/devextreme/OdsInlineEditDataGrid/partials/PageTitleAndToolbarPartial.js +22 -25
  229. package/dist/components/devextreme/OdsInlineEditDataGrid/partials/PageTitleAndToolbarPartial.js.map +1 -1
  230. package/dist/components/devextreme/OdsInlineEditDataGrid/styles.module.scss.js +16 -0
  231. package/dist/components/devextreme/OdsInlineEditDataGrid/styles.module.scss.js.map +1 -0
  232. package/dist/components/devextreme/OdsMasterDetailDataGrid/OdsMasterDetailDataGrid.js.map +1 -1
  233. package/dist/components/devextreme/OdsMasterDetailDataGrid/handlers/OnActionCellRenderHandler.js.map +1 -1
  234. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.Constants.js.map +1 -1
  235. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.Helper.js.map +1 -1
  236. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.js +83 -84
  237. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.js.map +1 -1
  238. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.module.scss.js +12 -0
  239. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.module.scss.js.map +1 -0
  240. package/dist/components/devextreme/OdsRemoteDataGrid.js +19 -19
  241. package/dist/components/devextreme/OdsRemoteDataGrid.js.map +1 -1
  242. package/dist/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.js +2 -2
  243. package/dist/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.js.map +1 -1
  244. package/dist/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.module.scss.js +10 -0
  245. package/dist/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.module.scss.js.map +1 -0
  246. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.Functions.js +62 -63
  247. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.Functions.js.map +1 -1
  248. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.Types.js.map +1 -1
  249. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.js +29 -29
  250. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.js.map +1 -1
  251. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.module.scss.js +26 -0
  252. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.module.scss.js.map +1 -0
  253. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTableColumnChooser.js +3 -3
  254. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTableColumnChooser.js.map +1 -1
  255. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTableTaskTemplate.js +13 -11
  256. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTableTaskTemplate.js.map +1 -1
  257. package/dist/components/devextreme/OdsTransfer.js +130 -93
  258. package/dist/components/devextreme/OdsTransfer.js.map +1 -1
  259. package/dist/components/devextreme/OdsTransferV2.js +41 -41
  260. package/dist/components/devextreme/OdsTransferV2.js.map +1 -1
  261. package/dist/components/devextreme/Transfer.module.scss.js +8 -0
  262. package/dist/components/devextreme/Transfer.module.scss.js.map +1 -0
  263. package/dist/components/devextreme/datagridUtils/DynamicIcon.js +1 -1
  264. package/dist/components/filter/OdsFilter.js +57 -59
  265. package/dist/components/filter/OdsFilter.js.map +1 -1
  266. package/dist/components/filter/OdsFilterPlus.js +111 -116
  267. package/dist/components/filter/OdsFilterPlus.js.map +1 -1
  268. package/dist/components/filter/OdsFilterTagView.js +11 -11
  269. package/dist/components/filter/OdsFilterTagView.js.map +1 -1
  270. package/dist/components/filter/styles.module.scss.js +42 -0
  271. package/dist/components/filter/styles.module.scss.js.map +1 -0
  272. package/dist/components/filter/stylesPlus.module.scss.js +46 -0
  273. package/dist/components/filter/stylesPlus.module.scss.js.map +1 -0
  274. package/dist/components/helpers/toolbarSearchBox/ToolbarSearchBox.js +4 -4
  275. package/dist/components/helpers/toolbarSearchBox/ToolbarSearchBox.js.map +1 -1
  276. package/dist/components/helpers/toolbarSearchBox/ToolbarSearchBox.module.scss.js +10 -0
  277. package/dist/components/helpers/toolbarSearchBox/ToolbarSearchBox.module.scss.js.map +1 -0
  278. package/dist/index.d.ts +112 -338
  279. package/dist/index.js +131 -139
  280. package/dist/index.js.map +1 -1
  281. package/dist/node_modules/@ant-design/fast-color/es/FastColor.js +0 -1
  282. package/dist/node_modules/@ant-design/fast-color/es/FastColor.js.map +1 -1
  283. package/dist/node_modules/@ant-design/icons/es/utils.js +1 -8
  284. package/dist/node_modules/@ant-design/icons/es/utils.js.map +1 -1
  285. package/dist/node_modules/@rc-component/form/es/FieldContext.js +1 -2
  286. package/dist/node_modules/@rc-component/form/es/FieldContext.js.map +1 -1
  287. package/dist/node_modules/@rc-component/form/es/Form.js +78 -92
  288. package/dist/node_modules/@rc-component/form/es/Form.js.map +1 -1
  289. package/dist/node_modules/@rc-component/form/es/{useForm.js → hooks/useForm.js} +47 -69
  290. package/dist/node_modules/@rc-component/form/es/hooks/useForm.js.map +1 -0
  291. package/dist/node_modules/@rc-component/form/es/hooks/useNotifyWatch.js +43 -0
  292. package/dist/node_modules/@rc-component/form/es/hooks/useNotifyWatch.js.map +1 -0
  293. package/dist/node_modules/@rc-component/form/es/{useWatch.js → hooks/useWatch.js} +7 -7
  294. package/dist/node_modules/@rc-component/form/es/hooks/useWatch.js.map +1 -0
  295. package/dist/node_modules/@rc-component/form/es/index.js +2 -2
  296. package/dist/node_modules/@rc-component/form/es/index.js.map +1 -1
  297. package/dist/node_modules/@rc-component/form/es/utils/valueUtil.js.map +1 -1
  298. package/dist/node_modules/@rc-component/portal/es/Portal.js +41 -35
  299. package/dist/node_modules/@rc-component/portal/es/Portal.js.map +1 -1
  300. package/dist/node_modules/@rc-component/portal/es/useEscKeyDown.js +28 -0
  301. package/dist/node_modules/@rc-component/portal/es/useEscKeyDown.js.map +1 -0
  302. package/dist/node_modules/@rc-component/select/es/BaseSelect/index.js +109 -109
  303. package/dist/node_modules/@rc-component/select/es/BaseSelect/index.js.map +1 -1
  304. package/dist/node_modules/@rc-component/select/es/SelectInput/Content/SingleContent.js +38 -44
  305. package/dist/node_modules/@rc-component/select/es/SelectInput/Content/SingleContent.js.map +1 -1
  306. package/dist/node_modules/@rc-component/select/es/hooks/useOpen.js +25 -25
  307. package/dist/node_modules/@rc-component/select/es/hooks/useOpen.js.map +1 -1
  308. package/dist/node_modules/@rc-component/trigger/es/hooks/useAlign.js +125 -122
  309. package/dist/node_modules/@rc-component/trigger/es/hooks/useAlign.js.map +1 -1
  310. package/dist/node_modules/@rc-component/trigger/es/util.js +35 -34
  311. package/dist/node_modules/@rc-component/trigger/es/util.js.map +1 -1
  312. package/dist/node_modules/@rc-component/util/es/KeyCode.js.map +1 -1
  313. package/dist/node_modules/@rc-component/util/es/isMobile.js +1 -1
  314. package/dist/node_modules/@rc-component/util/es/ref.js +1 -1
  315. package/dist/node_modules/@rc-component/util/es/utils/set.js +21 -21
  316. package/dist/node_modules/@rc-component/util/es/utils/set.js.map +1 -1
  317. package/dist/node_modules/antd/es/_util/wave/index.js +1 -1
  318. package/dist/node_modules/antd/es/_util/wave/index.js.map +1 -1
  319. package/dist/node_modules/antd/es/card/style/index.js +8 -4
  320. package/dist/node_modules/antd/es/card/style/index.js.map +1 -1
  321. package/dist/node_modules/antd/es/form/hooks/useForm.js +1 -1
  322. package/dist/node_modules/antd/es/form/index.js +1 -1
  323. package/dist/node_modules/antd/es/notification/useNotification.js +3 -3
  324. package/dist/node_modules/antd/es/select/style/select-input.js +12 -3
  325. package/dist/node_modules/antd/es/select/style/select-input.js.map +1 -1
  326. package/dist/node_modules/antd/es/tag/style/index.js +5 -5
  327. package/dist/node_modules/antd/es/tag/style/index.js.map +1 -1
  328. package/dist/node_modules/antd/es/theme/index.js +10 -31
  329. package/dist/node_modules/antd/es/theme/index.js.map +1 -1
  330. package/dist/node_modules/antd/es/transfer/ListBody.js +16 -16
  331. package/dist/node_modules/antd/es/transfer/ListBody.js.map +1 -1
  332. package/dist/node_modules/antd/es/transfer/ListItem.js +43 -43
  333. package/dist/node_modules/antd/es/transfer/ListItem.js.map +1 -1
  334. package/dist/node_modules/antd/es/version/version.js +1 -1
  335. package/dist/node_modules/antd/es/version/version.js.map +1 -1
  336. package/dist/node_modules/canvg/lib/index.es.js +18 -4
  337. package/dist/node_modules/canvg/lib/index.es.js.map +1 -1
  338. package/dist/node_modules/core-js/internals/a-callable.js +16 -0
  339. package/dist/node_modules/core-js/internals/a-callable.js.map +1 -0
  340. package/dist/node_modules/core-js/internals/a-constructor.js +16 -0
  341. package/dist/node_modules/core-js/internals/a-constructor.js.map +1 -0
  342. package/dist/node_modules/core-js/internals/a-possible-prototype.js +15 -0
  343. package/dist/node_modules/core-js/internals/a-possible-prototype.js.map +1 -0
  344. package/dist/node_modules/core-js/internals/add-to-unscopables.js +19 -0
  345. package/dist/node_modules/core-js/internals/add-to-unscopables.js.map +1 -0
  346. package/dist/node_modules/core-js/internals/advance-string-index.js +14 -0
  347. package/dist/node_modules/core-js/internals/advance-string-index.js.map +1 -0
  348. package/dist/node_modules/core-js/internals/an-instance.js +15 -0
  349. package/dist/node_modules/core-js/internals/an-instance.js.map +1 -0
  350. package/dist/node_modules/core-js/internals/an-object.js +15 -0
  351. package/dist/node_modules/core-js/internals/an-object.js.map +1 -0
  352. package/dist/node_modules/core-js/internals/array-includes.js +33 -0
  353. package/dist/node_modules/core-js/internals/array-includes.js.map +1 -0
  354. package/dist/node_modules/core-js/internals/array-method-is-strict.js +19 -0
  355. package/dist/node_modules/core-js/internals/array-method-is-strict.js.map +1 -0
  356. package/dist/node_modules/core-js/internals/array-reduce.js +38 -0
  357. package/dist/node_modules/core-js/internals/array-reduce.js.map +1 -0
  358. package/dist/node_modules/core-js/internals/array-slice.js +12 -0
  359. package/dist/node_modules/core-js/internals/array-slice.js.map +1 -0
  360. package/dist/node_modules/core-js/internals/check-correctness-of-iteration.js +47 -0
  361. package/dist/node_modules/core-js/internals/check-correctness-of-iteration.js.map +1 -0
  362. package/dist/node_modules/core-js/internals/classof-raw.js +14 -0
  363. package/dist/node_modules/core-js/internals/classof-raw.js.map +1 -0
  364. package/dist/node_modules/core-js/internals/classof.js +25 -0
  365. package/dist/node_modules/core-js/internals/classof.js.map +1 -0
  366. package/dist/node_modules/core-js/internals/copy-constructor-properties.js +20 -0
  367. package/dist/node_modules/core-js/internals/copy-constructor-properties.js.map +1 -0
  368. package/dist/node_modules/core-js/internals/correct-is-regexp-logic.js +23 -0
  369. package/dist/node_modules/core-js/internals/correct-is-regexp-logic.js.map +1 -0
  370. package/dist/node_modules/core-js/internals/correct-prototype-getter.js +16 -0
  371. package/dist/node_modules/core-js/internals/correct-prototype-getter.js.map +1 -0
  372. package/dist/node_modules/core-js/internals/create-iter-result-object.js +10 -0
  373. package/dist/node_modules/core-js/internals/create-iter-result-object.js.map +1 -0
  374. package/dist/node_modules/core-js/internals/create-non-enumerable-property.js +18 -0
  375. package/dist/node_modules/core-js/internals/create-non-enumerable-property.js.map +1 -0
  376. package/dist/node_modules/core-js/internals/create-property-descriptor.js +15 -0
  377. package/dist/node_modules/core-js/internals/create-property-descriptor.js.map +1 -0
  378. package/dist/node_modules/core-js/internals/define-built-in-accessor.js +15 -0
  379. package/dist/node_modules/core-js/internals/define-built-in-accessor.js.map +1 -0
  380. package/dist/node_modules/core-js/internals/define-built-in.js +33 -0
  381. package/dist/node_modules/core-js/internals/define-built-in.js.map +1 -0
  382. package/dist/node_modules/core-js/internals/define-global-property.js +19 -0
  383. package/dist/node_modules/core-js/internals/define-global-property.js.map +1 -0
  384. package/dist/node_modules/core-js/internals/descriptors.js +16 -0
  385. package/dist/node_modules/core-js/internals/descriptors.js.map +1 -0
  386. package/dist/node_modules/core-js/internals/document-create-element.js +15 -0
  387. package/dist/node_modules/core-js/internals/document-create-element.js.map +1 -0
  388. package/dist/node_modules/core-js/internals/dom-iterables.js +40 -0
  389. package/dist/node_modules/core-js/internals/dom-iterables.js.map +1 -0
  390. package/dist/node_modules/core-js/internals/dom-token-list-prototype.js +12 -0
  391. package/dist/node_modules/core-js/internals/dom-token-list-prototype.js.map +1 -0
  392. package/dist/node_modules/core-js/internals/enum-bug-keys.js +16 -0
  393. package/dist/node_modules/core-js/internals/enum-bug-keys.js.map +1 -0
  394. package/dist/node_modules/core-js/internals/environment-is-ios-pebble.js +12 -0
  395. package/dist/node_modules/core-js/internals/environment-is-ios-pebble.js.map +1 -0
  396. package/dist/node_modules/core-js/internals/environment-is-ios.js +12 -0
  397. package/dist/node_modules/core-js/internals/environment-is-ios.js.map +1 -0
  398. package/dist/node_modules/core-js/internals/environment-is-node.js +12 -0
  399. package/dist/node_modules/core-js/internals/environment-is-node.js.map +1 -0
  400. package/dist/node_modules/core-js/internals/environment-is-webos-webkit.js +12 -0
  401. package/dist/node_modules/core-js/internals/environment-is-webos-webkit.js.map +1 -0
  402. package/dist/node_modules/core-js/internals/environment-user-agent.js +12 -0
  403. package/dist/node_modules/core-js/internals/environment-user-agent.js.map +1 -0
  404. package/dist/node_modules/core-js/internals/environment-v8-version.js +13 -0
  405. package/dist/node_modules/core-js/internals/environment-v8-version.js.map +1 -0
  406. package/dist/node_modules/core-js/internals/environment.js +18 -0
  407. package/dist/node_modules/core-js/internals/environment.js.map +1 -0
  408. package/dist/node_modules/core-js/internals/export.js +27 -0
  409. package/dist/node_modules/core-js/internals/export.js.map +1 -0
  410. package/dist/node_modules/core-js/internals/fails.js +14 -0
  411. package/dist/node_modules/core-js/internals/fails.js.map +1 -0
  412. package/dist/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js +44 -0
  413. package/dist/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js.map +1 -0
  414. package/dist/node_modules/core-js/internals/function-apply.js +14 -0
  415. package/dist/node_modules/core-js/internals/function-apply.js.map +1 -0
  416. package/dist/node_modules/core-js/internals/function-bind-context.js +18 -0
  417. package/dist/node_modules/core-js/internals/function-bind-context.js.map +1 -0
  418. package/dist/node_modules/core-js/internals/function-bind-native.js +16 -0
  419. package/dist/node_modules/core-js/internals/function-bind-native.js.map +1 -0
  420. package/dist/node_modules/core-js/internals/function-call.js +14 -0
  421. package/dist/node_modules/core-js/internals/function-call.js.map +1 -0
  422. package/dist/node_modules/core-js/internals/function-name.js +18 -0
  423. package/dist/node_modules/core-js/internals/function-name.js.map +1 -0
  424. package/dist/node_modules/core-js/internals/function-uncurry-this-accessor.js +18 -0
  425. package/dist/node_modules/core-js/internals/function-uncurry-this-accessor.js.map +1 -0
  426. package/dist/node_modules/core-js/internals/function-uncurry-this-clause.js +15 -0
  427. package/dist/node_modules/core-js/internals/function-uncurry-this-clause.js.map +1 -0
  428. package/dist/node_modules/core-js/internals/function-uncurry-this.js +16 -0
  429. package/dist/node_modules/core-js/internals/function-uncurry-this.js.map +1 -0
  430. package/dist/node_modules/core-js/internals/get-built-in.js +17 -0
  431. package/dist/node_modules/core-js/internals/get-built-in.js.map +1 -0
  432. package/dist/node_modules/core-js/internals/get-iterator-method.js +18 -0
  433. package/dist/node_modules/core-js/internals/get-iterator-method.js.map +1 -0
  434. package/dist/node_modules/core-js/internals/get-iterator.js +20 -0
  435. package/dist/node_modules/core-js/internals/get-iterator.js.map +1 -0
  436. package/dist/node_modules/core-js/internals/get-method.js +16 -0
  437. package/dist/node_modules/core-js/internals/get-method.js.map +1 -0
  438. package/dist/node_modules/core-js/internals/get-substitution.js +40 -0
  439. package/dist/node_modules/core-js/internals/get-substitution.js.map +1 -0
  440. package/dist/node_modules/core-js/internals/global-this.js +19 -0
  441. package/dist/node_modules/core-js/internals/global-this.js.map +1 -0
  442. package/dist/node_modules/core-js/internals/has-own-property.js +15 -0
  443. package/dist/node_modules/core-js/internals/has-own-property.js.map +1 -0
  444. package/dist/node_modules/core-js/internals/hidden-keys.js +8 -0
  445. package/dist/node_modules/core-js/internals/hidden-keys.js.map +1 -0
  446. package/dist/node_modules/core-js/internals/host-report-errors.js +13 -0
  447. package/dist/node_modules/core-js/internals/host-report-errors.js.map +1 -0
  448. package/dist/node_modules/core-js/internals/html.js +12 -0
  449. package/dist/node_modules/core-js/internals/html.js.map +1 -0
  450. package/dist/node_modules/core-js/internals/ie8-dom-define.js +20 -0
  451. package/dist/node_modules/core-js/internals/ie8-dom-define.js.map +1 -0
  452. package/dist/node_modules/core-js/internals/indexed-object.js +18 -0
  453. package/dist/node_modules/core-js/internals/indexed-object.js.map +1 -0
  454. package/dist/node_modules/core-js/internals/inspect-source.js +16 -0
  455. package/dist/node_modules/core-js/internals/inspect-source.js.map +1 -0
  456. package/dist/node_modules/core-js/internals/internal-state.js +55 -0
  457. package/dist/node_modules/core-js/internals/internal-state.js.map +1 -0
  458. package/dist/node_modules/core-js/internals/is-array-iterator-method.js +15 -0
  459. package/dist/node_modules/core-js/internals/is-array-iterator-method.js.map +1 -0
  460. package/dist/node_modules/core-js/internals/is-array.js +14 -0
  461. package/dist/node_modules/core-js/internals/is-array.js.map +1 -0
  462. package/dist/node_modules/core-js/internals/is-callable.js +15 -0
  463. package/dist/node_modules/core-js/internals/is-callable.js.map +1 -0
  464. package/dist/node_modules/core-js/internals/is-constructor.js +43 -0
  465. package/dist/node_modules/core-js/internals/is-constructor.js.map +1 -0
  466. package/dist/node_modules/core-js/internals/is-forced.js +18 -0
  467. package/dist/node_modules/core-js/internals/is-forced.js.map +1 -0
  468. package/dist/node_modules/core-js/internals/is-null-or-undefined.js +10 -0
  469. package/dist/node_modules/core-js/internals/is-null-or-undefined.js.map +1 -0
  470. package/dist/node_modules/core-js/internals/is-object.js +14 -0
  471. package/dist/node_modules/core-js/internals/is-object.js.map +1 -0
  472. package/dist/node_modules/core-js/internals/is-possible-prototype.js +14 -0
  473. package/dist/node_modules/core-js/internals/is-possible-prototype.js.map +1 -0
  474. package/dist/node_modules/core-js/internals/is-pure.js +8 -0
  475. package/dist/node_modules/core-js/internals/is-pure.js.map +1 -0
  476. package/dist/node_modules/core-js/internals/is-regexp.js +17 -0
  477. package/dist/node_modules/core-js/internals/is-regexp.js.map +1 -0
  478. package/dist/node_modules/core-js/internals/is-symbol.js +20 -0
  479. package/dist/node_modules/core-js/internals/is-symbol.js.map +1 -0
  480. package/dist/node_modules/core-js/internals/iterate.js +51 -0
  481. package/dist/node_modules/core-js/internals/iterate.js.map +1 -0
  482. package/dist/node_modules/core-js/internals/iterator-close.js +29 -0
  483. package/dist/node_modules/core-js/internals/iterator-close.js.map +1 -0
  484. package/dist/node_modules/core-js/internals/iterator-create-constructor.js +21 -0
  485. package/dist/node_modules/core-js/internals/iterator-create-constructor.js.map +1 -0
  486. package/dist/node_modules/core-js/internals/iterator-define.js +61 -0
  487. package/dist/node_modules/core-js/internals/iterator-define.js.map +1 -0
  488. package/dist/node_modules/core-js/internals/iterators-core.js +29 -0
  489. package/dist/node_modules/core-js/internals/iterators-core.js.map +1 -0
  490. package/dist/node_modules/core-js/internals/iterators.js +8 -0
  491. package/dist/node_modules/core-js/internals/iterators.js.map +1 -0
  492. package/dist/node_modules/core-js/internals/length-of-array-like.js +14 -0
  493. package/dist/node_modules/core-js/internals/length-of-array-like.js.map +1 -0
  494. package/dist/node_modules/core-js/internals/make-built-in.js +33 -0
  495. package/dist/node_modules/core-js/internals/make-built-in.js.map +1 -0
  496. package/dist/node_modules/core-js/internals/math-trunc.js +14 -0
  497. package/dist/node_modules/core-js/internals/math-trunc.js.map +1 -0
  498. package/dist/node_modules/core-js/internals/microtask.js +42 -0
  499. package/dist/node_modules/core-js/internals/microtask.js.map +1 -0
  500. package/dist/node_modules/core-js/internals/new-promise-capability.js +21 -0
  501. package/dist/node_modules/core-js/internals/new-promise-capability.js.map +1 -0
  502. package/dist/node_modules/core-js/internals/not-a-regexp.js +16 -0
  503. package/dist/node_modules/core-js/internals/not-a-regexp.js.map +1 -0
  504. package/dist/node_modules/core-js/internals/object-create.js +39 -0
  505. package/dist/node_modules/core-js/internals/object-create.js.map +1 -0
  506. package/dist/node_modules/core-js/internals/object-define-properties.js +22 -0
  507. package/dist/node_modules/core-js/internals/object-define-properties.js.map +1 -0
  508. package/dist/node_modules/core-js/internals/object-define-property.js +34 -0
  509. package/dist/node_modules/core-js/internals/object-define-property.js.map +1 -0
  510. package/dist/node_modules/core-js/internals/object-get-own-property-descriptor.js +26 -0
  511. package/dist/node_modules/core-js/internals/object-get-own-property-descriptor.js.map +1 -0
  512. package/dist/node_modules/core-js/internals/object-get-own-property-names.js +16 -0
  513. package/dist/node_modules/core-js/internals/object-get-own-property-names.js.map +1 -0
  514. package/dist/node_modules/core-js/internals/object-get-own-property-symbols.js +9 -0
  515. package/dist/node_modules/core-js/internals/object-get-own-property-symbols.js.map +1 -0
  516. package/dist/node_modules/core-js/internals/object-get-prototype-of.js +21 -0
  517. package/dist/node_modules/core-js/internals/object-get-prototype-of.js.map +1 -0
  518. package/dist/node_modules/core-js/internals/object-is-prototype-of.js +12 -0
  519. package/dist/node_modules/core-js/internals/object-is-prototype-of.js.map +1 -0
  520. package/dist/node_modules/core-js/internals/object-keys-internal.js +21 -0
  521. package/dist/node_modules/core-js/internals/object-keys-internal.js.map +1 -0
  522. package/dist/node_modules/core-js/internals/object-keys.js +15 -0
  523. package/dist/node_modules/core-js/internals/object-keys.js.map +1 -0
  524. package/dist/node_modules/core-js/internals/object-property-is-enumerable.js +15 -0
  525. package/dist/node_modules/core-js/internals/object-property-is-enumerable.js.map +1 -0
  526. package/dist/node_modules/core-js/internals/object-set-prototype-of.js +24 -0
  527. package/dist/node_modules/core-js/internals/object-set-prototype-of.js.map +1 -0
  528. package/dist/node_modules/core-js/internals/ordinary-to-primitive.js +18 -0
  529. package/dist/node_modules/core-js/internals/ordinary-to-primitive.js.map +1 -0
  530. package/dist/node_modules/core-js/internals/own-keys.js +19 -0
  531. package/dist/node_modules/core-js/internals/own-keys.js.map +1 -0
  532. package/dist/node_modules/core-js/internals/path.js +12 -0
  533. package/dist/node_modules/core-js/internals/path.js.map +1 -0
  534. package/dist/node_modules/core-js/internals/perform.js +14 -0
  535. package/dist/node_modules/core-js/internals/perform.js.map +1 -0
  536. package/dist/node_modules/core-js/internals/promise-constructor-detection.js +39 -0
  537. package/dist/node_modules/core-js/internals/promise-constructor-detection.js.map +1 -0
  538. package/dist/node_modules/core-js/internals/promise-native-constructor.js +12 -0
  539. package/dist/node_modules/core-js/internals/promise-native-constructor.js.map +1 -0
  540. package/dist/node_modules/core-js/internals/promise-resolve.js +18 -0
  541. package/dist/node_modules/core-js/internals/promise-resolve.js.map +1 -0
  542. package/dist/node_modules/core-js/internals/promise-statics-incorrect-iteration.js +17 -0
  543. package/dist/node_modules/core-js/internals/promise-statics-incorrect-iteration.js.map +1 -0
  544. package/dist/node_modules/core-js/internals/queue.js +25 -0
  545. package/dist/node_modules/core-js/internals/queue.js.map +1 -0
  546. package/dist/node_modules/core-js/internals/regexp-exec-abstract.js +24 -0
  547. package/dist/node_modules/core-js/internals/regexp-exec-abstract.js.map +1 -0
  548. package/dist/node_modules/core-js/internals/regexp-exec.js +37 -0
  549. package/dist/node_modules/core-js/internals/regexp-exec.js.map +1 -0
  550. package/dist/node_modules/core-js/internals/regexp-flags-detection.js +35 -0
  551. package/dist/node_modules/core-js/internals/regexp-flags-detection.js.map +1 -0
  552. package/dist/node_modules/core-js/internals/regexp-flags.js +15 -0
  553. package/dist/node_modules/core-js/internals/regexp-flags.js.map +1 -0
  554. package/dist/node_modules/core-js/internals/regexp-get-flags.js +20 -0
  555. package/dist/node_modules/core-js/internals/regexp-get-flags.js.map +1 -0
  556. package/dist/node_modules/core-js/internals/regexp-sticky-helpers.js +25 -0
  557. package/dist/node_modules/core-js/internals/regexp-sticky-helpers.js.map +1 -0
  558. package/dist/node_modules/core-js/internals/regexp-unsupported-dot-all.js +17 -0
  559. package/dist/node_modules/core-js/internals/regexp-unsupported-dot-all.js.map +1 -0
  560. package/dist/node_modules/core-js/internals/regexp-unsupported-ncg.js +16 -0
  561. package/dist/node_modules/core-js/internals/regexp-unsupported-ncg.js.map +1 -0
  562. package/dist/node_modules/core-js/internals/require-object-coercible.js +15 -0
  563. package/dist/node_modules/core-js/internals/require-object-coercible.js.map +1 -0
  564. package/dist/node_modules/core-js/internals/safe-get-built-in.js +17 -0
  565. package/dist/node_modules/core-js/internals/safe-get-built-in.js.map +1 -0
  566. package/dist/node_modules/core-js/internals/set-species.js +23 -0
  567. package/dist/node_modules/core-js/internals/set-species.js.map +1 -0
  568. package/dist/node_modules/core-js/internals/set-to-string-tag.js +16 -0
  569. package/dist/node_modules/core-js/internals/set-to-string-tag.js.map +1 -0
  570. package/dist/node_modules/core-js/internals/shared-key.js +15 -0
  571. package/dist/node_modules/core-js/internals/shared-key.js.map +1 -0
  572. package/dist/node_modules/core-js/internals/shared-store.js +21 -0
  573. package/dist/node_modules/core-js/internals/shared-store.js.map +1 -0
  574. package/dist/node_modules/core-js/internals/shared.js +14 -0
  575. package/dist/node_modules/core-js/internals/shared.js.map +1 -0
  576. package/dist/node_modules/core-js/internals/species-constructor.js +18 -0
  577. package/dist/node_modules/core-js/internals/species-constructor.js.map +1 -0
  578. package/dist/node_modules/core-js/internals/string-multibyte.js +27 -0
  579. package/dist/node_modules/core-js/internals/string-multibyte.js.map +1 -0
  580. package/dist/node_modules/core-js/internals/string-trim-forced.js +18 -0
  581. package/dist/node_modules/core-js/internals/string-trim-forced.js.map +1 -0
  582. package/dist/node_modules/core-js/internals/string-trim.js +30 -0
  583. package/dist/node_modules/core-js/internals/string-trim.js.map +1 -0
  584. package/dist/node_modules/core-js/internals/symbol-constructor-detection.js +18 -0
  585. package/dist/node_modules/core-js/internals/symbol-constructor-detection.js.map +1 -0
  586. package/dist/node_modules/core-js/internals/task.js +61 -0
  587. package/dist/node_modules/core-js/internals/task.js.map +1 -0
  588. package/dist/node_modules/core-js/internals/to-absolute-index.js +15 -0
  589. package/dist/node_modules/core-js/internals/to-absolute-index.js.map +1 -0
  590. package/dist/node_modules/core-js/internals/to-indexed-object.js +15 -0
  591. package/dist/node_modules/core-js/internals/to-indexed-object.js.map +1 -0
  592. package/dist/node_modules/core-js/internals/to-integer-or-infinity.js +15 -0
  593. package/dist/node_modules/core-js/internals/to-integer-or-infinity.js.map +1 -0
  594. package/dist/node_modules/core-js/internals/to-length.js +15 -0
  595. package/dist/node_modules/core-js/internals/to-length.js.map +1 -0
  596. package/dist/node_modules/core-js/internals/to-object.js +14 -0
  597. package/dist/node_modules/core-js/internals/to-object.js.map +1 -0
  598. package/dist/node_modules/core-js/internals/to-primitive.js +25 -0
  599. package/dist/node_modules/core-js/internals/to-primitive.js.map +1 -0
  600. package/dist/node_modules/core-js/internals/to-property-key.js +16 -0
  601. package/dist/node_modules/core-js/internals/to-property-key.js.map +1 -0
  602. package/dist/node_modules/core-js/internals/to-string-tag-support.js +12 -0
  603. package/dist/node_modules/core-js/internals/to-string-tag-support.js.map +1 -0
  604. package/dist/node_modules/core-js/internals/to-string.js +15 -0
  605. package/dist/node_modules/core-js/internals/to-string.js.map +1 -0
  606. package/dist/node_modules/core-js/internals/try-to-string.js +17 -0
  607. package/dist/node_modules/core-js/internals/try-to-string.js.map +1 -0
  608. package/dist/node_modules/core-js/internals/uid.js +14 -0
  609. package/dist/node_modules/core-js/internals/uid.js.map +1 -0
  610. package/dist/node_modules/core-js/internals/use-symbol-as-uid.js +12 -0
  611. package/dist/node_modules/core-js/internals/use-symbol-as-uid.js.map +1 -0
  612. package/dist/node_modules/core-js/internals/v8-prototype-define-bug.js +19 -0
  613. package/dist/node_modules/core-js/internals/v8-prototype-define-bug.js.map +1 -0
  614. package/dist/node_modules/core-js/internals/validate-arguments-length.js +14 -0
  615. package/dist/node_modules/core-js/internals/validate-arguments-length.js.map +1 -0
  616. package/dist/node_modules/core-js/internals/weak-map-basic-detection.js +13 -0
  617. package/dist/node_modules/core-js/internals/weak-map-basic-detection.js.map +1 -0
  618. package/dist/node_modules/core-js/internals/well-known-symbol.js +19 -0
  619. package/dist/node_modules/core-js/internals/well-known-symbol.js.map +1 -0
  620. package/dist/node_modules/core-js/internals/whitespaces.js +9 -0
  621. package/dist/node_modules/core-js/internals/whitespaces.js.map +1 -0
  622. package/dist/node_modules/core-js/modules/es.array.index-of.js +21 -0
  623. package/dist/node_modules/core-js/modules/es.array.index-of.js.map +1 -0
  624. package/dist/node_modules/core-js/modules/es.array.iterator.js +47 -0
  625. package/dist/node_modules/core-js/modules/es.array.iterator.js.map +1 -0
  626. package/dist/node_modules/core-js/modules/es.array.reduce.js +22 -0
  627. package/dist/node_modules/core-js/modules/es.array.reduce.js.map +1 -0
  628. package/dist/node_modules/core-js/modules/es.array.reverse.js +19 -0
  629. package/dist/node_modules/core-js/modules/es.array.reverse.js.map +1 -0
  630. package/dist/node_modules/core-js/modules/es.promise.all.js +32 -0
  631. package/dist/node_modules/core-js/modules/es.promise.all.js.map +1 -0
  632. package/dist/node_modules/core-js/modules/es.promise.catch.js +27 -0
  633. package/dist/node_modules/core-js/modules/es.promise.catch.js.map +1 -0
  634. package/dist/node_modules/core-js/modules/es.promise.constructor.js +143 -0
  635. package/dist/node_modules/core-js/modules/es.promise.constructor.js.map +1 -0
  636. package/dist/node_modules/core-js/modules/es.promise.js +15 -0
  637. package/dist/node_modules/core-js/modules/es.promise.js.map +1 -0
  638. package/dist/node_modules/core-js/modules/es.promise.race.js +29 -0
  639. package/dist/node_modules/core-js/modules/es.promise.race.js.map +1 -0
  640. package/dist/node_modules/core-js/modules/es.promise.reject.js +20 -0
  641. package/dist/node_modules/core-js/modules/es.promise.reject.js.map +1 -0
  642. package/dist/node_modules/core-js/modules/es.promise.resolve.js +22 -0
  643. package/dist/node_modules/core-js/modules/es.promise.resolve.js.map +1 -0
  644. package/dist/node_modules/core-js/modules/es.regexp.exec.js +16 -0
  645. package/dist/node_modules/core-js/modules/es.regexp.exec.js.map +1 -0
  646. package/dist/node_modules/core-js/modules/es.regexp.to-string.js +23 -0
  647. package/dist/node_modules/core-js/modules/es.regexp.to-string.js.map +1 -0
  648. package/dist/node_modules/core-js/modules/es.string.ends-with.js +31 -0
  649. package/dist/node_modules/core-js/modules/es.string.ends-with.js.map +1 -0
  650. package/dist/node_modules/core-js/modules/es.string.includes.js +26 -0
  651. package/dist/node_modules/core-js/modules/es.string.includes.js.map +1 -0
  652. package/dist/node_modules/core-js/modules/es.string.match.js +48 -0
  653. package/dist/node_modules/core-js/modules/es.string.match.js.map +1 -0
  654. package/dist/node_modules/core-js/modules/es.string.replace.js +81 -0
  655. package/dist/node_modules/core-js/modules/es.string.replace.js.map +1 -0
  656. package/dist/node_modules/core-js/modules/es.string.split.js +75 -0
  657. package/dist/node_modules/core-js/modules/es.string.split.js.map +1 -0
  658. package/dist/node_modules/core-js/modules/es.string.starts-with.js +31 -0
  659. package/dist/node_modules/core-js/modules/es.string.starts-with.js.map +1 -0
  660. package/dist/node_modules/core-js/modules/es.string.trim.js +19 -0
  661. package/dist/node_modules/core-js/modules/es.string.trim.js.map +1 -0
  662. package/dist/node_modules/core-js/modules/web.dom-collections.iterator.js +37 -0
  663. package/dist/node_modules/core-js/modules/web.dom-collections.iterator.js.map +1 -0
  664. package/dist/node_modules/exceljs/dist/exceljs.min.js +91 -508
  665. package/dist/node_modules/exceljs/dist/exceljs.min.js.map +1 -1
  666. package/dist/node_modules/html2canvas/dist/html2canvas.esm.js +5 -55
  667. package/dist/node_modules/html2canvas/dist/html2canvas.esm.js.map +1 -1
  668. package/dist/node_modules/is-mobile/index.js +1 -1
  669. package/dist/node_modules/jspdf/dist/jspdf.es.min.js +8 -53
  670. package/dist/node_modules/jspdf/dist/jspdf.es.min.js.map +1 -1
  671. package/dist/node_modules/ods-icon/react/24/outline/index.js +1 -1
  672. package/dist/node_modules/raf/index.js +1 -1
  673. package/dist/node_modules/react-is/cjs/react-is.development.js +82 -56
  674. package/dist/node_modules/react-is/cjs/react-is.development.js.map +1 -1
  675. package/dist/node_modules/{@rc-component/util/node_modules/react-is → react-is}/cjs/react-is.production.min.js +1 -1
  676. package/dist/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  677. package/dist/node_modules/react-is/index.js +6 -6
  678. package/dist/node_modules/react-is/index.js.map +1 -1
  679. package/dist/ods-component-lib.css +1 -0
  680. package/dist/providers/OdsConfigProvider.js +47 -0
  681. package/dist/providers/OdsConfigProvider.js.map +1 -0
  682. package/dist/styles/OdsDataGrid.css +1 -0
  683. package/dist/styles/datagrid-globals.css +1 -0
  684. package/dist/utils/ExportDataGridtoExcel.js +1 -1
  685. package/dist/utils/ExportDataGridtoExcel.js.map +1 -1
  686. package/dist/utils/commonFunctions.js +5 -5
  687. package/dist/utils/commonFunctions.js.map +1 -1
  688. package/package.json +30 -20
  689. package/dist/_virtual/hoist-non-react-statics.cjs.js +0 -8
  690. package/dist/_virtual/hoist-non-react-statics.cjs.js.map +0 -1
  691. package/dist/_virtual/index10.js +0 -5
  692. package/dist/_virtual/index10.js.map +0 -1
  693. package/dist/_virtual/index11.js +0 -6
  694. package/dist/_virtual/index11.js.map +0 -1
  695. package/dist/_virtual/index12.js.map +0 -1
  696. package/dist/_virtual/index13.js +0 -8
  697. package/dist/_virtual/index13.js.map +0 -1
  698. package/dist/_virtual/index14.js.map +0 -1
  699. package/dist/_virtual/react-is.development2.js +0 -5
  700. package/dist/_virtual/react-is.development2.js.map +0 -1
  701. package/dist/_virtual/react-is.development3.js +0 -5
  702. package/dist/_virtual/react-is.development3.js.map +0 -1
  703. package/dist/_virtual/react-is.production.js +0 -5
  704. package/dist/_virtual/react-is.production.js.map +0 -1
  705. package/dist/_virtual/react-is.production.min2.js +0 -5
  706. package/dist/_virtual/react-is.production.min2.js.map +0 -1
  707. package/dist/components/antd/alert/OdsAlert.styled.js +0 -9
  708. package/dist/components/antd/alert/OdsAlert.styled.js.map +0 -1
  709. package/dist/components/antd/alert/OdsBannerAlert.js +0 -16
  710. package/dist/components/antd/alert/OdsBannerAlert.js.map +0 -1
  711. package/dist/components/antd/autocomplete/OdsAutoComplete.styled.js +0 -9
  712. package/dist/components/antd/autocomplete/OdsAutoComplete.styled.js.map +0 -1
  713. package/dist/components/antd/badge/OdsBadge.styled.js +0 -9
  714. package/dist/components/antd/badge/OdsBadge.styled.js.map +0 -1
  715. package/dist/components/antd/button/OdsButton.styled.js +0 -9
  716. package/dist/components/antd/button/OdsButton.styled.js.map +0 -1
  717. package/dist/components/antd/calendar/OdsCalendar.styled.js +0 -9
  718. package/dist/components/antd/calendar/OdsCalendar.styled.js.map +0 -1
  719. package/dist/components/antd/card/OdsCard.styled.js +0 -9
  720. package/dist/components/antd/card/OdsCard.styled.js.map +0 -1
  721. package/dist/components/antd/change/OdsChange.Style.js +0 -24
  722. package/dist/components/antd/change/OdsChange.Style.js.map +0 -1
  723. package/dist/components/antd/checkbox/OdsCheckbox.styled.js +0 -9
  724. package/dist/components/antd/checkbox/OdsCheckbox.styled.js.map +0 -1
  725. package/dist/components/antd/collapse/OdsCollapse.styled.js +0 -9
  726. package/dist/components/antd/collapse/OdsCollapse.styled.js.map +0 -1
  727. package/dist/components/antd/divider/OdsDivider.styled.js +0 -9
  728. package/dist/components/antd/divider/OdsDivider.styled.js.map +0 -1
  729. package/dist/components/antd/dropdown/OdsDropdown.styled.js +0 -9
  730. package/dist/components/antd/dropdown/OdsDropdown.styled.js.map +0 -1
  731. package/dist/components/antd/input/OdsInput.styled.js +0 -9
  732. package/dist/components/antd/input/OdsInput.styled.js.map +0 -1
  733. package/dist/components/antd/inputNumber/OdsInputNumber.styled.js +0 -9
  734. package/dist/components/antd/inputNumber/OdsInputNumber.styled.js.map +0 -1
  735. package/dist/components/antd/list/OdsList.styled.js +0 -9
  736. package/dist/components/antd/list/OdsList.styled.js.map +0 -1
  737. package/dist/components/antd/progress/OdsProgress.styled.js +0 -12
  738. package/dist/components/antd/progress/OdsProgress.styled.js.map +0 -1
  739. package/dist/components/antd/radio/OdsRadio.styled.js +0 -9
  740. package/dist/components/antd/radio/OdsRadio.styled.js.map +0 -1
  741. package/dist/components/antd/rate/OdsRate.styled.js +0 -9
  742. package/dist/components/antd/rate/OdsRate.styled.js.map +0 -1
  743. package/dist/components/antd/select/MultiSelect/OdsMultiSelect.js +0 -55
  744. package/dist/components/antd/select/MultiSelect/OdsMultiSelect.js.map +0 -1
  745. package/dist/components/antd/select/OdsSelect.styled.js +0 -9
  746. package/dist/components/antd/select/OdsSelect.styled.js.map +0 -1
  747. package/dist/components/antd/spin/OdsSpin.styled.js +0 -9
  748. package/dist/components/antd/spin/OdsSpin.styled.js.map +0 -1
  749. package/dist/components/antd/switch/OdsSwitch.styled.js +0 -9
  750. package/dist/components/antd/switch/OdsSwitch.styled.js.map +0 -1
  751. package/dist/components/antd/tab/OdsTab.styled.js +0 -9
  752. package/dist/components/antd/tab/OdsTab.styled.js.map +0 -1
  753. package/dist/components/antd/table/OdsBasicTable.js +0 -10
  754. package/dist/components/antd/table/OdsBasicTable.js.map +0 -1
  755. package/dist/components/antd/table/OdsSelectableTable.js +0 -23
  756. package/dist/components/antd/table/OdsSelectableTable.js.map +0 -1
  757. package/dist/components/antd/table/OdsTable.styled.js +0 -9
  758. package/dist/components/antd/table/OdsTable.styled.js.map +0 -1
  759. package/dist/components/antd/tag/OdsTag.styled.js +0 -9
  760. package/dist/components/antd/tag/OdsTag.styled.js.map +0 -1
  761. package/dist/components/antd/timeline/OdsTimeline.styled.js +0 -9
  762. package/dist/components/antd/timeline/OdsTimeline.styled.js.map +0 -1
  763. package/dist/components/antd/timepicker/OdsTimepicker.styled.js +0 -9
  764. package/dist/components/antd/timepicker/OdsTimepicker.styled.js.map +0 -1
  765. package/dist/components/antd/treeListMenu/OdsTreeListMenu.Styles.js +0 -57
  766. package/dist/components/antd/treeListMenu/OdsTreeListMenu.Styles.js.map +0 -1
  767. package/dist/components/antd/treeListMenu/OdsTreeListMenu.js +0 -217
  768. package/dist/components/antd/treeListMenu/OdsTreeListMenu.js.map +0 -1
  769. package/dist/components/antd/typography/Typography.styled.js +0 -15
  770. package/dist/components/antd/typography/Typography.styled.js.map +0 -1
  771. package/dist/components/devextreme/DataGrid/styles/OdsGlobal.Styles.js +0 -162
  772. package/dist/components/devextreme/DataGrid/styles/OdsGlobal.Styles.js.map +0 -1
  773. package/dist/components/devextreme/DataGrid/styles/styles.js +0 -1236
  774. package/dist/components/devextreme/DataGrid/styles/styles.js.map +0 -1
  775. package/dist/components/devextreme/DataGrid/styles/theme/colors/dark.js +0 -38
  776. package/dist/components/devextreme/DataGrid/styles/theme/colors/dark.js.map +0 -1
  777. package/dist/components/devextreme/DataGrid/styles/theme/colors/default.js +0 -38
  778. package/dist/components/devextreme/DataGrid/styles/theme/colors/default.js.map +0 -1
  779. package/dist/components/devextreme/DataGrid/styles/theme/colors/index.js +0 -12
  780. package/dist/components/devextreme/DataGrid/styles/theme/colors/index.js.map +0 -1
  781. package/dist/components/devextreme/DataGrid/styles/theme/sizes/compact.js +0 -125
  782. package/dist/components/devextreme/DataGrid/styles/theme/sizes/compact.js.map +0 -1
  783. package/dist/components/devextreme/DataGrid/styles/theme/sizes/default.js +0 -125
  784. package/dist/components/devextreme/DataGrid/styles/theme/sizes/default.js.map +0 -1
  785. package/dist/components/devextreme/DataGrid/styles/theme/sizes/index.js +0 -9
  786. package/dist/components/devextreme/DataGrid/styles/theme/sizes/index.js.map +0 -1
  787. package/dist/components/devextreme/DxDataGrid.css +0 -1
  788. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.Style.js +0 -42
  789. package/dist/components/devextreme/OdsBasicDataGrid/OdsBasicDataGrid.Style.js.map +0 -1
  790. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.Style.js +0 -42
  791. package/dist/components/devextreme/OdsBatchEditDataGrid/OdsBatchEditDataGrid.Style.js.map +0 -1
  792. package/dist/components/devextreme/OdsInlineEditDataGrid/styles.js +0 -92
  793. package/dist/components/devextreme/OdsInlineEditDataGrid/styles.js.map +0 -1
  794. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.Style.js +0 -49
  795. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.Style.js.map +0 -1
  796. package/dist/components/devextreme/OdsMergeCellDataGrid/OdsMergeCellDataGrid.css +0 -1
  797. package/dist/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.Style.js +0 -60
  798. package/dist/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.Style.js.map +0 -1
  799. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.Style.js +0 -70
  800. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.Style.js.map +0 -1
  801. package/dist/components/devextreme/OdsTimelineTable/OdsTimelineTable.css +0 -1
  802. package/dist/components/devextreme/styles.css +0 -1
  803. package/dist/components/filter/styles.js +0 -169
  804. package/dist/components/filter/styles.js.map +0 -1
  805. package/dist/components/filter/stylesPlus.js +0 -147
  806. package/dist/components/filter/stylesPlus.js.map +0 -1
  807. package/dist/components/helpers/toolbarSearchBox/ToolbarSearchBox.Style.js +0 -19
  808. package/dist/components/helpers/toolbarSearchBox/ToolbarSearchBox.Style.js.map +0 -1
  809. package/dist/node_modules/@ant-design/icons/es/icons/FrownOutlined.js +0 -23
  810. package/dist/node_modules/@ant-design/icons/es/icons/FrownOutlined.js.map +0 -1
  811. package/dist/node_modules/@ant-design/icons/es/icons/HeartOutlined.js +0 -23
  812. package/dist/node_modules/@ant-design/icons/es/icons/HeartOutlined.js.map +0 -1
  813. package/dist/node_modules/@ant-design/icons/es/icons/MehOutlined.js +0 -23
  814. package/dist/node_modules/@ant-design/icons/es/icons/MehOutlined.js.map +0 -1
  815. package/dist/node_modules/@ant-design/icons/es/icons/SmileOutlined.js +0 -23
  816. package/dist/node_modules/@ant-design/icons/es/icons/SmileOutlined.js.map +0 -1
  817. package/dist/node_modules/@ant-design/icons-svg/es/asn/FrownOutlined.js +0 -5
  818. package/dist/node_modules/@ant-design/icons-svg/es/asn/FrownOutlined.js.map +0 -1
  819. package/dist/node_modules/@ant-design/icons-svg/es/asn/HeartOutlined.js +0 -5
  820. package/dist/node_modules/@ant-design/icons-svg/es/asn/HeartOutlined.js.map +0 -1
  821. package/dist/node_modules/@ant-design/icons-svg/es/asn/MehOutlined.js +0 -5
  822. package/dist/node_modules/@ant-design/icons-svg/es/asn/MehOutlined.js.map +0 -1
  823. package/dist/node_modules/@ant-design/icons-svg/es/asn/SmileOutlined.js +0 -5
  824. package/dist/node_modules/@ant-design/icons-svg/es/asn/SmileOutlined.js.map +0 -1
  825. package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +0 -14
  826. package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js.map +0 -1
  827. package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -13
  828. package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +0 -1
  829. package/dist/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js +0 -280
  830. package/dist/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js.map +0 -1
  831. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Enum.js +0 -13
  832. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Enum.js.map +0 -1
  833. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Middleware.js +0 -19
  834. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Middleware.js.map +0 -1
  835. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Parser.js +0 -132
  836. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Parser.js.map +0 -1
  837. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Serializer.js +0 -28
  838. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Serializer.js.map +0 -1
  839. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Tokenizer.js +0 -142
  840. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Tokenizer.js.map +0 -1
  841. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Utility.js +0 -51
  842. package/dist/node_modules/@emotion/cache/node_modules/stylis/src/Utility.js.map +0 -1
  843. package/dist/node_modules/@emotion/css/create-instance/dist/emotion-css-create-instance.esm.js +0 -87
  844. package/dist/node_modules/@emotion/css/create-instance/dist/emotion-css-create-instance.esm.js.map +0 -1
  845. package/dist/node_modules/@emotion/css/dist/emotion-css.esm.js +0 -8
  846. package/dist/node_modules/@emotion/css/dist/emotion-css.esm.js.map +0 -1
  847. package/dist/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js +0 -11
  848. package/dist/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js.map +0 -1
  849. package/dist/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js +0 -10
  850. package/dist/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js.map +0 -1
  851. package/dist/node_modules/@emotion/react/dist/emotion-element-f0de968e.browser.esm.js +0 -73
  852. package/dist/node_modules/@emotion/react/dist/emotion-element-f0de968e.browser.esm.js.map +0 -1
  853. package/dist/node_modules/@emotion/react/dist/emotion-react.browser.esm.js +0 -54
  854. package/dist/node_modules/@emotion/react/dist/emotion-react.browser.esm.js.map +0 -1
  855. package/dist/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js +0 -131
  856. package/dist/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js.map +0 -1
  857. package/dist/node_modules/@emotion/serialize/node_modules/@emotion/hash/dist/emotion-hash.esm.js +0 -23
  858. package/dist/node_modules/@emotion/serialize/node_modules/@emotion/hash/dist/emotion-hash.esm.js.map +0 -1
  859. package/dist/node_modules/@emotion/serialize/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js +0 -54
  860. package/dist/node_modules/@emotion/serialize/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js.map +0 -1
  861. package/dist/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js +0 -45
  862. package/dist/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js.map +0 -1
  863. package/dist/node_modules/@emotion/stylis/dist/stylis.browser.esm.js +0 -407
  864. package/dist/node_modules/@emotion/stylis/dist/stylis.browser.esm.js.map +0 -1
  865. package/dist/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js +0 -9
  866. package/dist/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js.map +0 -1
  867. package/dist/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js +0 -35
  868. package/dist/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js.map +0 -1
  869. package/dist/node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js +0 -13
  870. package/dist/node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js.map +0 -1
  871. package/dist/node_modules/@rc-component/form/es/BatchUpdate.js +0 -21
  872. package/dist/node_modules/@rc-component/form/es/BatchUpdate.js.map +0 -1
  873. package/dist/node_modules/@rc-component/form/es/useForm.js.map +0 -1
  874. package/dist/node_modules/@rc-component/form/es/useWatch.js.map +0 -1
  875. package/dist/node_modules/@rc-component/util/node_modules/react-is/cjs/react-is.development.js +0 -96
  876. package/dist/node_modules/@rc-component/util/node_modules/react-is/cjs/react-is.development.js.map +0 -1
  877. package/dist/node_modules/@rc-component/util/node_modules/react-is/cjs/react-is.production.min.js.map +0 -1
  878. package/dist/node_modules/@rc-component/util/node_modules/react-is/index.js +0 -12
  879. package/dist/node_modules/@rc-component/util/node_modules/react-is/index.js.map +0 -1
  880. package/dist/node_modules/antd/es/message/PurePanel.js +0 -89
  881. package/dist/node_modules/antd/es/message/PurePanel.js.map +0 -1
  882. package/dist/node_modules/antd/es/message/index.js +0 -183
  883. package/dist/node_modules/antd/es/message/index.js.map +0 -1
  884. package/dist/node_modules/antd/es/message/style/index.js +0 -159
  885. package/dist/node_modules/antd/es/message/style/index.js.map +0 -1
  886. package/dist/node_modules/antd/es/message/useMessage.js +0 -186
  887. package/dist/node_modules/antd/es/message/useMessage.js.map +0 -1
  888. package/dist/node_modules/antd/es/message/util.js +0 -21
  889. package/dist/node_modules/antd/es/message/util.js.map +0 -1
  890. package/dist/node_modules/antd/es/theme/getDesignToken.js +0 -18
  891. package/dist/node_modules/antd/es/theme/getDesignToken.js.map +0 -1
  892. package/dist/node_modules/antd/es/theme/themes/compact/genCompactSizeMapToken.js +0 -21
  893. package/dist/node_modules/antd/es/theme/themes/compact/genCompactSizeMapToken.js.map +0 -1
  894. package/dist/node_modules/antd/es/theme/themes/compact/index.js +0 -22
  895. package/dist/node_modules/antd/es/theme/themes/compact/index.js.map +0 -1
  896. package/dist/node_modules/antd/es/theme/themes/dark/colorAlgorithm.js +0 -7
  897. package/dist/node_modules/antd/es/theme/themes/dark/colorAlgorithm.js.map +0 -1
  898. package/dist/node_modules/antd/es/theme/themes/dark/colors.js +0 -49
  899. package/dist/node_modules/antd/es/theme/themes/dark/colors.js.map +0 -1
  900. package/dist/node_modules/antd/es/theme/themes/dark/index.js +0 -36
  901. package/dist/node_modules/antd/es/theme/themes/dark/index.js.map +0 -1
  902. package/dist/node_modules/antd-style/es/context/ThemeModeContext.js +0 -16
  903. package/dist/node_modules/antd-style/es/context/ThemeModeContext.js.map +0 -1
  904. package/dist/node_modules/antd-style/es/core/CacheManager.js +0 -46
  905. package/dist/node_modules/antd-style/es/core/CacheManager.js.map +0 -1
  906. package/dist/node_modules/antd-style/es/core/createCSS.js +0 -32
  907. package/dist/node_modules/antd-style/es/core/createCSS.js.map +0 -1
  908. package/dist/node_modules/antd-style/es/core/createSerializeStyles.js +0 -13
  909. package/dist/node_modules/antd-style/es/core/createSerializeStyles.js.map +0 -1
  910. package/dist/node_modules/antd-style/es/core/index.js +0 -5
  911. package/dist/node_modules/antd-style/es/core/index.js.map +0 -1
  912. package/dist/node_modules/antd-style/es/core/insertStyles.js +0 -22
  913. package/dist/node_modules/antd-style/es/core/insertStyles.js.map +0 -1
  914. package/dist/node_modules/antd-style/es/factories/createEmotionContext.js +0 -8
  915. package/dist/node_modules/antd-style/es/factories/createEmotionContext.js.map +0 -1
  916. package/dist/node_modules/antd-style/es/factories/createGlobalStyle.js +0 -23
  917. package/dist/node_modules/antd-style/es/factories/createGlobalStyle.js.map +0 -1
  918. package/dist/node_modules/antd-style/es/factories/createStyish.js +0 -13
  919. package/dist/node_modules/antd-style/es/factories/createStyish.js.map +0 -1
  920. package/dist/node_modules/antd-style/es/factories/createStyleProvider/index.js +0 -47
  921. package/dist/node_modules/antd-style/es/factories/createStyleProvider/index.js.map +0 -1
  922. package/dist/node_modules/antd-style/es/factories/createStyledThemeProvider.js +0 -15
  923. package/dist/node_modules/antd-style/es/factories/createStyledThemeProvider.js.map +0 -1
  924. package/dist/node_modules/antd-style/es/factories/createStyles/index.js +0 -57
  925. package/dist/node_modules/antd-style/es/factories/createStyles/index.js.map +0 -1
  926. package/dist/node_modules/antd-style/es/factories/createStyles/response.js +0 -29
  927. package/dist/node_modules/antd-style/es/factories/createStyles/response.js.map +0 -1
  928. package/dist/node_modules/antd-style/es/factories/createThemeProvider/AntdProvider.js +0 -42
  929. package/dist/node_modules/antd-style/es/factories/createThemeProvider/AntdProvider.js.map +0 -1
  930. package/dist/node_modules/antd-style/es/factories/createThemeProvider/ThemeSwitcher.js +0 -71
  931. package/dist/node_modules/antd-style/es/factories/createThemeProvider/ThemeSwitcher.js.map +0 -1
  932. package/dist/node_modules/antd-style/es/factories/createThemeProvider/TokenContainer.js +0 -44
  933. package/dist/node_modules/antd-style/es/factories/createThemeProvider/TokenContainer.js.map +0 -1
  934. package/dist/node_modules/antd-style/es/factories/createThemeProvider/index.js +0 -47
  935. package/dist/node_modules/antd-style/es/factories/createThemeProvider/index.js.map +0 -1
  936. package/dist/node_modules/antd-style/es/factories/createUseTheme.js +0 -24
  937. package/dist/node_modules/antd-style/es/factories/createUseTheme.js.map +0 -1
  938. package/dist/node_modules/antd-style/es/functions/createInstance.js +0 -77
  939. package/dist/node_modules/antd-style/es/functions/createInstance.js.map +0 -1
  940. package/dist/node_modules/antd-style/es/functions/index.js +0 -12
  941. package/dist/node_modules/antd-style/es/functions/index.js.map +0 -1
  942. package/dist/node_modules/antd-style/es/functions/setupStyled.js +0 -7
  943. package/dist/node_modules/antd-style/es/functions/setupStyled.js.map +0 -1
  944. package/dist/node_modules/antd-style/es/hooks/useAntdStylish.js +0 -19
  945. package/dist/node_modules/antd-style/es/hooks/useAntdStylish.js.map +0 -1
  946. package/dist/node_modules/antd-style/es/hooks/useAntdTheme.js +0 -16
  947. package/dist/node_modules/antd-style/es/hooks/useAntdTheme.js.map +0 -1
  948. package/dist/node_modules/antd-style/es/hooks/useAntdToken.js +0 -9
  949. package/dist/node_modules/antd-style/es/hooks/useAntdToken.js.map +0 -1
  950. package/dist/node_modules/antd-style/es/hooks/useThemeMode.js +0 -9
  951. package/dist/node_modules/antd-style/es/hooks/useThemeMode.js.map +0 -1
  952. package/dist/node_modules/antd-style/es/stylish/button.js +0 -22
  953. package/dist/node_modules/antd-style/es/stylish/button.js.map +0 -1
  954. package/dist/node_modules/antd-style/es/utils/convertStylish.js +0 -11
  955. package/dist/node_modules/antd-style/es/utils/convertStylish.js.map +0 -1
  956. package/dist/node_modules/antd-style/es/utils/css.js +0 -39
  957. package/dist/node_modules/antd-style/es/utils/css.js.map +0 -1
  958. package/dist/node_modules/antd-style/es/utils/matchBrowserPrefers.js +0 -9
  959. package/dist/node_modules/antd-style/es/utils/matchBrowserPrefers.js.map +0 -1
  960. package/dist/node_modules/antd-style/es/utils/responsive.js +0 -13
  961. package/dist/node_modules/antd-style/es/utils/responsive.js.map +0 -1
  962. package/dist/node_modules/antd-style/es/utils/safeStartTransition.js +0 -8
  963. package/dist/node_modules/antd-style/es/utils/safeStartTransition.js.map +0 -1
  964. package/dist/node_modules/antd-style/node_modules/@ant-design/cssinjs/es/Cache.js +0 -41
  965. package/dist/node_modules/antd-style/node_modules/@ant-design/cssinjs/es/Cache.js.map +0 -1
  966. package/dist/node_modules/antd-style/node_modules/@ant-design/cssinjs/es/StyleContext.js +0 -56
  967. package/dist/node_modules/antd-style/node_modules/@ant-design/cssinjs/es/StyleContext.js.map +0 -1
  968. package/dist/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +0 -71
  969. package/dist/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js.map +0 -1
  970. package/dist/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js +0 -89
  971. package/dist/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js.map +0 -1
  972. package/dist/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js +0 -71
  973. package/dist/node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js.map +0 -1
  974. package/dist/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +0 -12
  975. package/dist/node_modules/hoist-non-react-statics/node_modules/react-is/index.js.map +0 -1
  976. package/dist/node_modules/moment/dist/moment.js +0 -2583
  977. package/dist/node_modules/moment/dist/moment.js.map +0 -1
  978. package/dist/node_modules/rc-util/es/hooks/useMemo.js +0 -9
  979. package/dist/node_modules/rc-util/es/hooks/useMemo.js.map +0 -1
  980. package/dist/node_modules/rc-util/es/isEqual.js +0 -36
  981. package/dist/node_modules/rc-util/es/isEqual.js.map +0 -1
  982. package/dist/node_modules/rc-util/es/warning.js +0 -42
  983. package/dist/node_modules/rc-util/es/warning.js.map +0 -1
  984. package/dist/node_modules/react-fast-marquee/dist/index.js +0 -146
  985. package/dist/node_modules/react-fast-marquee/dist/index.js.map +0 -1
  986. package/dist/node_modules/react-is/cjs/react-is.production.js +0 -69
  987. package/dist/node_modules/react-is/cjs/react-is.production.js.map +0 -1
  988. package/dist/node_modules/react-phone-input-2/lib/style.css +0 -1
  989. package/dist/node_modules/styled-components/dist/styled-components.browser.esm.js +0 -559
  990. package/dist/node_modules/styled-components/dist/styled-components.browser.esm.js.map +0 -1
  991. package/dist/node_modules/use-merge-value/dist/index.esm.js +0 -56
  992. package/dist/node_modules/use-merge-value/dist/index.esm.js.map +0 -1
  993. package/dist/tokens/design-system-dark/build/js/variables.js +0 -233
  994. package/dist/tokens/design-system-dark/build/js/variables.js.map +0 -1
  995. package/dist/tokens/design-system-light/build/js/variables.js +0 -336
  996. package/dist/tokens/design-system-light/build/js/variables.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OdsRemoteDataGrid.js","sources":["../../../src/components/devextreme/OdsRemoteDataGrid.tsx"],"sourcesContent":["import { createRoot } from \"react-dom/client\";\r\nimport React, {\r\n useState,\r\n useEffect,\r\n useMemo,\r\n useCallback,\r\n useRef,\r\n } from \"react\";\r\nimport DataGrid, {\r\n Item as DxItem,\r\n Column,\r\n ColumnChooser,\r\n ColumnChooserSearch,\r\n ColumnChooserSelection,\r\n Export,\r\n FilterPanel,\r\n FilterRow,\r\n HeaderFilter,\r\n LoadPanel,\r\n Position,\r\n SearchPanel,\r\n Sorting,\r\n Toolbar,\r\n StateStoring,\r\n Scrolling,\r\n IDataGridOptions,\r\n Summary,\r\n TotalItem,\r\n IButtonProps,\r\n Selection,\r\n ISelectionProps,\r\n Pager,\r\n IEditingProps,\r\n Editing,\r\n Popup,\r\n Form,\r\n Paging,\r\n ISummaryProps,\r\n MasterDetail \r\n} from \"devextreme-react/data-grid\";\r\nimport { Item } from \"devextreme-react/form\";\r\nimport { exportDataGrid } from \"devextreme/pdf_exporter\";\r\nimport { exportDataGrid as exportDataGridXls } from \"devextreme/excel_exporter\";\r\nimport jsPDF from \"jspdf\";\r\nimport { Workbook } from \"exceljs\";\r\nimport { saveAs } from \"file-saver-es\";\r\nimport moment from \"moment\";\r\nimport { Tooltip, theme } from \"antd\";\r\nimport { locale, loadMessages } from \"devextreme/localization\";\r\nimport { Lookup } from \"devextreme-react\";\r\nimport debounce from \"lodash/debounce\";\r\nimport { InfoCircleOutlined } from \"@ant-design/icons\";\r\n\r\nimport { ButtonType } from 'antd/es/button/buttonHelpers';\r\nimport queryString from 'query-string';\r\nimport ReactDOM from 'react-dom';\r\nimport DynamicIcon from './datagridUtils/DynamicIcon';\r\nimport OdsButton from \"../antd/button/OdsButton\";\r\nimport OdsTitle from \"../antd/typography/OdsTitle\";\r\nimport OdsDropdown from \"../antd/dropdown/OdsDropdown\";\r\nimport OdsDataGrdiRowButton from \"../antd/button/OdsDataGrdiRowButton\";\r\nimport { isTextEmpty } from \"../../utils/commonFunctions\";\r\n\r\nconst exportFormats = [\"xlsx\"]; //['xlsx', 'pdf'];\r\nlet totalPageCount = 1;\r\nlet loadedPageCount = 1;\r\nlet totalRecordCount = 0;\r\nconst { useToken } = theme;\r\n\r\nexport interface IOdsDataGridProps extends IDataGridOptions {\r\n dataGridPageName?: string;\r\n language: string;\r\n exportFileName: string;\r\n filterEnabledShow: boolean;\r\n pageTitle?: string;\r\n toolbarButtonGroup?: IButtonGroup[];\r\n actionButtonGroup?: IButtonGroup[];\r\n actionButtonGroupCaption?: string;\r\n columns: any[];\r\n detailGridColums?: any[];\r\n pageSize?: number;\r\n actionColumnEnable: boolean;\r\n selectOptions?: ISelectOptions;\r\n columnChooserPositionDisabled?: boolean;\r\n pagingEnable?: boolean;\r\n edit?: IEditingoptions;\r\n isServerSide: boolean;\r\n axiosRequest?: IAxiosProps;\r\n customSummary?: ISummaryRowOptions;\r\n handleEditorPreparing?: any;\r\n isFilterRow?: boolean;\r\n filterData?: any[];\r\n showMasterDetail?: boolean;\r\n detailData?: any;\r\n}\r\n\r\ninterface ISummaryRowOptions {\r\n summaryLoadedDataLabel?: string;\r\n summaryTotalDataLabel?: string;\r\n summaryFilteredDataLabel?: string;\r\n summaryItems?: ISummaryProps[];\r\n summaryTotalCount?: number;\r\n summaryTotalPageCountLabel?: string;\r\n}\r\n\r\ninterface IAxiosProps {\r\n token: string;\r\n requestData?: any;\r\n apiUrl: string;\r\n environmentUrl: string;\r\n requestQueryString?: any;\r\n requestType: string;\r\n}\r\n\r\ninterface IEditingoptions extends IEditingProps {\r\n formItems?: any[];\r\n title?: string;\r\n}\r\n\r\ninterface ISelectOptions extends ISelectionProps {\r\n selectEnable: boolean;\r\n}\r\n\r\ninterface IButtonGroup extends IButtonProps {\r\n type?: ButtonType;\r\n label?: string;\r\n onclick?: React.MouseEventHandler<HTMLElement>;\r\n actionPermission?: boolean;\r\n}\r\n\r\nconst OdsRemoteDataGrid = (props: IOdsDataGridProps) => {\r\n const { token } = useToken();\r\n const [data, setData] = useState([]);\r\n const fileName = props.exportFileName\r\n ? props.exportFileName + moment().format(\"YYYYMMDD\")\r\n : \"DatagridExportFile\" + moment().format(\"YYYYMMDD\");\r\n const [filteredRowCount, setFilteredRowCount] = useState(0);\r\n const columns = useRef(props.columns);\r\n let gridRef = useRef(null);\r\n const filterApplied = useRef(false);\r\n const [loading, setLoading] = useState(false);\r\n const [contentReady, setContentReady] = useState(false);\r\n const [scrollPosition, setScrollPosition] = useState(0);\r\n\r\n const onCancelEditEvent = new CustomEvent(\"cancelEdit\", {\r\n bubbles: true,\r\n detail: {\r\n rowData: null,\r\n },\r\n });\r\n\r\n const headers = new Headers({\r\n \"Content-Type\": \"application/json\",\r\n Authorization:\r\n \"Bearer \" + (props.axiosRequest ? props.axiosRequest.token : \"\"),\r\n \"Accept-Language\": props.language != \"\" ? props.language : \"EN\",\r\n });\r\n\r\n useEffect(() => {\r\n totalPageCount = 1;\r\n loadedPageCount = 1;\r\n totalRecordCount = 0;\r\n }, [props.dataGridPageName]);\r\n\r\n useEffect(() => {\r\n if (props.axiosRequest !== undefined\r\n && ((props.axiosRequest?.requestData && Object.keys(props.axiosRequest?.requestData).length > 0) || (props.axiosRequest?.requestQueryString))) {\r\n totalPageCount = 1;\r\n loadedPageCount = 1;\r\n totalRecordCount = 0;\r\n setData([]);\r\n fetchData();\r\n }\r\n }, [props.axiosRequest?.requestData, props.axiosRequest?.requestQueryString]);\r\n\r\n useEffect(() => {\r\n if (columns.current !== undefined && columns.current.length > 0) {\r\n const newColumns = columns.current.map((colItem) => {\r\n if (colItem.tooltip !== undefined && colItem.tooltip.enable) {\r\n const headerCellRenderr = () => {\r\n return (\r\n <div>\r\n <span>{colItem.caption}</span>\r\n <Tooltip title={colItem.tooltip.title}>\r\n <InfoCircleOutlined style={{ marginLeft: 5 }} />\r\n </Tooltip>\r\n </div>\r\n );\r\n };\r\n colItem.headerCellRender = headerCellRenderr;\r\n }\r\n\r\n // this process prevents client-side sorting process if grid use server-side\r\n // when calculateSortValue setted anything else from the grid columns sorting process not working for client-side data\r\n if (props.isServerSide)\r\n colItem.calculateSortValue = String(\"dummyFieldForPreventClientSideSorting\")\r\n\r\n return colItem;\r\n });\r\n columns.current = newColumns;\r\n }\r\n }, [props.columns]);\r\n\r\n useEffect(() => {\r\n if (Array.isArray(props.dataSource)) {\r\n setData(props.dataSource);\r\n }\r\n }, [props.dataSource]);\r\n\r\n useEffect(() => {\r\n locale(localStorage.getItem(\"locale\"));\r\n loadMessages(JSON.parse(localStorage.getItem(\"localTranslation\")));\r\n if (gridRef.current) {\r\n gridRef.current?.instance?.()?.updateDimensions();\r\n }\r\n }, []);\r\n\r\n // this useEffect used for check sort change once for component mount process\r\n useEffect(() => {\r\n if (contentReady) checkSortingPropertyForInitilaize();\r\n }, [contentReady]);\r\n\r\n useEffect(() => {\r\n const cssRules = `\r\n .data-exists .dx-datagrid-borders > .dx-datagrid-filter-panel,\r\n .data-exists .dx-datagrid-borders > .dx-datagrid-headers {\r\n border-top: 1px solid rgba(0, 0, 0, 0.06);\r\n padding-right: 0px !important;\r\n }\r\n \r\n .data-exists .dx-datagrid-headers .dx-datagrid-content {\r\n margin-bottom: -1px;\r\n padding-right: 17px !important;\r\n }\r\n `;\r\n\r\n const styleSheet = document.createElement('style');\r\n styleSheet.type = 'text/css';\r\n styleSheet.innerText = cssRules;\r\n document.head.appendChild(styleSheet);\r\n\r\n const checkData = () => {\r\n if (gridRef.current) {\r\n const dataGridInstance = gridRef.current.instance?.();\r\n const dataExists = data.length >= 15;\r\n\r\n const gridElement = dataGridInstance?.element();\r\n if (dataExists) {\r\n gridElement.classList.add('data-exists');\r\n } else {\r\n gridElement.classList.remove('data-exists');\r\n }\r\n }\r\n };\r\n\r\n const dataGridInstance = gridRef.current.instance?.();\r\n dataGridInstance?.on('dataChanged', checkData);\r\n checkData();\r\n\r\n return () => {\r\n document.head.removeChild(styleSheet);\r\n dataGridInstance?.off('dataChanged', checkData);\r\n };\r\n }, [data]);\r\n\r\n // check if there is sorted column and trigger onOptionChanged method for sort process\r\n const checkSortingPropertyForInitilaize = () => {\r\n const { onOptionChanged } = props;\r\n if (onOptionChanged) {\r\n const dataGridInstance = gridRef.current.instance?.();\r\n const sortingState = dataGridInstance?.getVisibleColumns()\r\n .filter((p) => !p.command)\r\n .map((column, index) => ({\r\n index: index, // decrease index for deafult empty column\r\n dataField: column.dataField,\r\n sortOrder: column.sortOrder,\r\n }));\r\n\r\n var sortedColumn = sortingState.find(column => column.sortOrder !== undefined)\r\n if (sortedColumn) {\r\n if (sortedColumn.sortOrder) {\r\n dataGridInstance.option(`columns[${sortedColumn.index}].sortOrder`, sortedColumn.sortOrder);\r\n\r\n // prepare OptionChangedEventInfo data for onOptionChanged method\r\n const fullName = `columns[${sortedColumn.index}].sortOrder`;\r\n const gridEvent = {\r\n component: dataGridInstance,\r\n fullName: fullName,\r\n name: \"optionChanged\",\r\n value: sortedColumn.sortOrder,\r\n previousValue: null,\r\n element: null,\r\n };\r\n\r\n onOptionChanged(gridEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const checkRequestDataHasOnlySortingProperty = (obj) => {\r\n // Get all property names from the object\r\n const keys = Object.keys(obj);\r\n // Check if there is only one property and it is 'Sorting'\r\n return keys.length === 1 && keys[0] === \"Sorting\";\r\n };\r\n\r\n const actionButtons = useMemo(() => {\r\n if (props.actionButtonGroup) {\r\n if (props.actionButtonGroup.length >= 2 && !props.edit) {\r\n return props.actionButtonGroup.slice(0, 2);\r\n } else {\r\n return props.actionButtonGroup;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }, [props.actionButtonGroup]);\r\n\r\n // const kebabMenuButtons = useMemo(() => {\r\n // if (props.actionButtonGroup) {\r\n // if (props.actionButtonGroup.length >= 2 && !props.edit) {\r\n // return props.actionButtonGroup.slice(2, props.actionButtonGroup.length);\r\n // } else {\r\n // return [];\r\n // }\r\n // } else {\r\n // return [];\r\n // }\r\n // }, [props.actionButtonGroup]);\r\n\r\n const fetchData = useCallback(async () => {\r\n if (props.axiosRequest == undefined) return;\r\n\r\n if (props.isServerSide) {\r\n\r\n // check requestData for sorting property if there is only sorting property grid shouldn't do fetch data\r\n if (props.axiosRequest.requestData && checkRequestDataHasOnlySortingProperty(props.axiosRequest.requestData))\r\n return;\r\n\r\n let apiUrl =\r\n props.axiosRequest.environmentUrl + \"\" + props.axiosRequest.apiUrl;\r\n\r\n if (props.axiosRequest.requestData?.PaginatedRequest !== undefined) {\r\n props.axiosRequest.requestData.PaginatedRequest.PageNumber =\r\n loadedPageCount;\r\n props.axiosRequest.requestData.PaginatedRequest.PageSize =\r\n props.pageSize;\r\n }\r\n\r\n if (props.axiosRequest.requestQueryString !== undefined) {\r\n\r\n props.axiosRequest.requestQueryString.maxResultCount = props.pageSize;\r\n\r\n if (loadedPageCount > 1 && totalPageCount >= loadedPageCount) {\r\n props.axiosRequest.requestQueryString.skipCount = ((loadedPageCount - 1) * props.pageSize).toString();\r\n }\r\n\r\n let query = queryString.stringify(props.axiosRequest.requestQueryString);\r\n\r\n apiUrl = `${apiUrl}?${query}`\r\n }\r\n\r\n const requestOptions = {\r\n method: props.axiosRequest.requestType,\r\n headers: headers,\r\n body: JSON.stringify(props.axiosRequest.requestData),\r\n };\r\n\r\n try {\r\n setLoading(true);\r\n const response = await fetch(apiUrl, requestOptions);\r\n\r\n const newData = await response.json();\r\n\r\n if (loadedPageCount == 1) {\r\n setData(newData.Data ? newData.Data : newData);\r\n\r\n loadedPageCount = 1;\r\n } else if (totalPageCount >= loadedPageCount) {\r\n const newArray = newData.Data ? newData.Data : newData;\r\n setData((prevData) => [...prevData, ...newArray]);\r\n }\r\n\r\n getTotalCount(response, newData);\r\n } catch (error) {\r\n console.error(\"Error fetching data:\", error);\r\n setLoading(false);\r\n } finally {\r\n }\r\n }\r\n }, [\r\n props.axiosRequest?.requestData,\r\n props.axiosRequest?.apiUrl,\r\n props.axiosRequest?.environmentUrl,\r\n props.axiosRequest?.requestQueryString,\r\n props.axiosRequest?.requestType,\r\n props.pageSize,\r\n props.isServerSide,\r\n ]);\r\n\r\n const getTotalCount = (response: Response, data: any): void => {\r\n if (data?.PageCount || data?.RowCount) {\r\n totalPageCount = data.PageCount;\r\n totalRecordCount = data.RowCount;\r\n } else {\r\n let totalCount;\r\n\r\n if (response) totalCount = response.headers.get(\"x-total-count\");\r\n\r\n if (totalCount == null) totalCount = data?.rowCount;\r\n\r\n if (totalCount == null) totalCount = data?.length;\r\n\r\n totalRecordCount = parseInt(totalCount, 10) || 0;\r\n totalPageCount = Math.ceil(totalRecordCount / props.pageSize);\r\n }\r\n\r\n setLoading(false);\r\n };\r\n\r\n const onEditorPreparing = useCallback(\r\n (e: any) => {\r\n if (e.row !== undefined && e.parentType === \"dataRow\") {\r\n if (props.handleEditorPreparing) {\r\n props.handleEditorPreparing(e);\r\n }\r\n }\r\n\r\n if (\r\n e.editorOptions &&\r\n e.rowType === \"data\" &&\r\n e.parentType === \"dataRow\"\r\n ) {\r\n e.editorOptions.onValueChanged = function (args) {\r\n if (args.event && args.event.type === \"cancel\")\r\n e.cellElement.dispatchEvent(onCancelEditEvent);\r\n };\r\n }\r\n },\r\n [props.isServerSide]\r\n );\r\n\r\n const getServerSide = useCallback(\r\n async (type: string) => {\r\n if (type === \"reachedBottom\") {\r\n if (totalPageCount <= loadedPageCount) {\r\n return;\r\n } else {\r\n loadedPageCount = loadedPageCount + 1;\r\n await fetchData();\r\n }\r\n }\r\n },\r\n [totalPageCount]\r\n );\r\n\r\n const onExporting = useCallback(\r\n (e: any) => {\r\n if (e.format === \"xlsx\") {\r\n const workbook = new Workbook();\r\n\r\n //Dışa aktarma işlemi sırasında filtre verilerini yeni sütunları ekle\r\n if (props.filterData != null) {\r\n const newColumnFromFilterData = props.filterData.map((filterItem) => ({\r\n dataField: filterItem.key,\r\n caption: filterItem.key\r\n }));\r\n\r\n const newColumns = [...columns.current, ...newColumnFromFilterData];\r\n e.component.beginUpdate();\r\n e.component.option(\"columns\", newColumns);\r\n e.component.endUpdate();\r\n }\r\n exportDataGridXls({\r\n component: e.component,\r\n worksheet: workbook.addWorksheet(\"Main sheet\"),\r\n autoFilterEnabled: true,\r\n customizeCell: function (options) {\r\n //Buradaki kod dg için yanlızca datefilter çalışması için eklendi. Dg üstünde format olarak format: \"dd.MM.yyyy\" şeklinde düzenleme yapıldı, ekranda saat bilgisi görünmesi içie cellRender: datetimeCellRender fonksiyonu eklendi. Format değişikliği yüzünden ezcelde saat bilgisi çıkmıyordu, bu yüzden bu kod bloğu eklendi.\r\n const { gridCell, excelCell } = options;\r\n if (gridCell.column.dataType === \"datetime\" && gridCell.value) {\r\n // Aşağıdaki if bloğu yukarıdaki if bloğu ile birleştirimemeli. Çünkü \"gridCell?.column?.calculateFilterExpression?.name === \"calculateFilterExpressionForColumn\"\"\" olsa bile gridCell.value değeri hezaman undefined geliyor. gridCell.column['meta'] konrolü cellRender eklenmeme durumu için eklendi.\r\n if (\r\n gridCell.column.calculateFilterExpression?.name ===\r\n \"calculateFilterExpressionForColumn\" &&\r\n gridCell.column[\"meta\"]?.hasCustomCellRenderer\r\n ) {\r\n const date = moment(gridCell.value);\r\n const offsetMinutes = date.utcOffset();\r\n const sign = offsetMinutes >= 0 ? \"+\" : \"-\";\r\n const hours = Math.floor(Math.abs(offsetMinutes) / 60);\r\n const minutes = Math.abs(offsetMinutes) % 60;\r\n const formattedOffset = `(UTC${sign}${hours\r\n .toString()\r\n .padStart(2, \"0\")}:${minutes.toString().padStart(2, \"0\")})`;\r\n const formattedDate =\r\n date.format(\"DD.MM.YYYY HH:mm\") + \" \" + formattedOffset;\r\n excelCell.value = formattedDate;\r\n }\r\n }\r\n\r\n //girilen filtre değerlerinin uygun başlık altında satıra yazılması \r\n if (gridCell.rowType !== 'header' && props.filterData != null) {\r\n const matchingItem = props.filterData.find(item => item.key === gridCell.column.dataField);\r\n if (matchingItem) {\r\n excelCell.value = matchingItem.value;\r\n }\r\n }\r\n }\r\n }).then(() => {\r\n workbook.xlsx.writeBuffer().then((buffer) => {\r\n saveAs(new Blob([buffer], { type: 'application/octet-stream' }), fileName + '.xlsx');\r\n });\r\n });\r\n } else {\r\n const doc = new jsPDF();\r\n exportDataGrid({\r\n jsPDFDocument: doc,\r\n component: e.component,\r\n indent: 5,\r\n }).then(() => {\r\n doc.save(fileName + '.pdf');\r\n });\r\n }\r\n }, [fileName, props.filterData]);\r\n\r\n const customLoad = useCallback(() => {\r\n let state = JSON.parse(\r\n localStorage.getItem(props.exportFileName + \"Storage\")\r\n );\r\n\r\n if (localStorage.getItem(props.exportFileName + \"Storage\")) {\r\n state.selectedRowKeys = [];\r\n if (props.filterEnabledShow) state.filterPanel = { filterEnabled: false };\r\n else state.filterPanel = { filterEnabled: true };\r\n }\r\n\r\n return state;\r\n }, [props.filterEnabledShow]);\r\n\r\n const customSave = useCallback(\r\n (state: any) => {\r\n state.selectedRowKeys = [];\r\n if (props.filterEnabledShow) state.filterPanel = { filterEnabled: false };\r\n else state.filterPanel = { filterEnabled: true };\r\n\r\n if (data.length === 0) {\r\n if (!state.filterValue && state.filterValue !== null) {\r\n state.filterValue = null;\r\n }\r\n }\r\n localStorage.setItem(\r\n props.exportFileName + \"Storage\",\r\n JSON.stringify(state)\r\n );\r\n },\r\n [props.filterEnabledShow]\r\n );\r\n\r\n const onEditorPrepared = useCallback((info) => {\r\n if (\r\n info.parentType === \"filterRow\" &&\r\n info.editorName === \"dxSelectBox\" &&\r\n info.dataField === \"IsActive\"\r\n ) {\r\n if (info.dataSource != null && info.dataSource.length > 0) {\r\n info.showAllText = info.dataSource.find((i) => {\r\n return i.value === null;\r\n }).label;\r\n info.trueText = info.dataSource.find((i) => {\r\n return i.value === true;\r\n }).label;\r\n info.falseText = info.dataSource.find((i) => {\r\n return i.value === false;\r\n }).label;\r\n }\r\n }\r\n }, []);\r\n\r\n const renderTotal = useCallback(() => {\r\n let result = \"\";\r\n let totalloaded = 0;\r\n\r\n if (\r\n data.length < 50 ||\r\n !props.isServerSide ||\r\n loadedPageCount == totalPageCount\r\n ) {\r\n totalloaded = data.length;\r\n } else {\r\n totalloaded = loadedPageCount * props.pageSize;\r\n }\r\n\r\n if (props.isServerSide) {\r\n result =\r\n totalRecordCount > 0\r\n ? `${totalloaded} ` +\r\n props.customSummary?.summaryLoadedDataLabel +\r\n `- ${totalRecordCount}` +\r\n props.customSummary?.summaryTotalDataLabel\r\n : ``;\r\n result = concatFilteredLabel(result, totalloaded);\r\n }\r\n\r\n if (\r\n props.customSummary?.summaryTotalCount !== undefined &&\r\n !props.isServerSide\r\n ) {\r\n result =\r\n props.customSummary.summaryTotalDataLabel +\r\n \" : \" +\r\n props.customSummary.summaryTotalCount;\r\n result = concatFilteredLabel(result, totalloaded);\r\n }\r\n\r\n if (totalPageCount > 1) {\r\n result = `${result} - ${props.customSummary?.summaryTotalPageCountLabel} ${loadedPageCount} / ${totalPageCount}`;\r\n }\r\n return result;\r\n }, [\r\n data,\r\n filteredRowCount,\r\n loadedPageCount,\r\n props.pageSize,\r\n totalRecordCount,\r\n filterApplied.current,\r\n ]);\r\n\r\n const concatFilteredLabel = (result: string, totalloaded: number) => {\r\n if (\r\n filteredRowCount > 0 &&\r\n totalloaded !== filteredRowCount &&\r\n filterApplied.current\r\n ) {\r\n let filteredLabel =\r\n `${filteredRowCount} ` +\r\n props.customSummary.summaryFilteredDataLabel +\r\n `- `;\r\n result = `${filteredLabel} ${result} `;\r\n }\r\n return result;\r\n };\r\n\r\n function actionCellRender(cellData, props) {\r\n const kebabMenuButtons = props.actionButtonGroup && props.actionButtonGroup.length >= 2 && !props.edit\r\n ? props.actionButtonGroup.slice(2).map(button => ({\r\n icon: <DynamicIcon iconName={button.icon} />,\r\n onClick: (event) => {\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row\r\n };\r\n button.onClick(customEvent);\r\n }\r\n }))\r\n : [];\r\n\r\n const buttonElements = [];\r\n\r\n {\r\n !props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible = typeof buttonItem.visible === 'function'\r\n ? buttonItem.visible({ column: cellData.column, component: cellData.component, row: cellData.row })\r\n : buttonItem.visible;\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission\r\n }\r\n icon={\r\n <DynamicIcon iconName={buttonItem.icon} />\r\n }\r\n onClick={(event) => {\r\n // event.preventDefault();\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row\r\n };\r\n buttonItem.onClick(customEvent);\r\n }}\r\n />\r\n );\r\n });\r\n }\r\n {\r\n props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible = typeof buttonItem.visible === 'function'\r\n ? buttonItem.visible({ column: cellData.column, component: cellData.component, row: cellData.row })\r\n : buttonItem.visible;\r\n\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n name={buttonItem.name}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission\r\n }\r\n icon={\r\n <DynamicIcon iconName={buttonItem.icon} />\r\n }\r\n onClick={(event) => {\r\n if (buttonItem.onClick) { \r\n // event.preventDefault();\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row \r\n };\r\n buttonItem.onClick(customEvent);\r\n }\r\n }}\r\n />\r\n );\r\n });\r\n }\r\n\r\n if (kebabMenuButtons.length > 0) {\r\n buttonElements.push(\r\n <OdsDropdown\r\n key={`dropdown-${cellData.rowIndex || cellData.data.ID}`}\r\n menuItems={kebabMenuButtons}\r\n >\r\n <OdsDataGrdiRowButton type=\"text\" icon={<DynamicIcon iconName={\"kebabMenu\"} />} />\r\n </OdsDropdown>\r\n );\r\n }\r\n\r\n return <React.Fragment><div className=\"flex flex-row gap-4 justify-center items-center\">{buttonElements}</div></React.Fragment>;\r\n }\r\n\r\n const onScrollEnd = useCallback(() => {\r\n getServerSide(\"reachedBottom\");\r\n }, [props.axiosRequest?.requestData, getServerSide]);\r\n\r\n const handleScroll = (e: any) => {\r\n const run = debounce((e: any) => {\r\n const scrollable = e.target as HTMLElement;\r\n\r\n const top = scrollable?.scrollTop ?? 0;\r\n const height = scrollable?.clientHeight ?? 0;\r\n const scrollHeight = scrollable?.scrollHeight ?? 0;\r\n const maxHeight = Math.max(top, height, scrollHeight) - 1;\r\n\r\n if (scrollHeight <= height) return;\r\n\r\n const reachedBottom = Math.ceil(top + height) >= maxHeight;\r\n\r\n let lastScrollTop = 0;\r\n if (top < lastScrollTop) return;\r\n\r\n lastScrollTop = top <= 0 ? 0 : top;\r\n if (reachedBottom) onScrollEnd();\r\n\r\n setScrollPosition(top);\r\n }, 200);\r\n\r\n run(e);\r\n };\r\n\r\n useEffect(() => {\r\n const gridElement = gridRef.current.instance?.()?.element();\r\n gridElement.scrollTop = scrollPosition;\r\n }, [data.length]);\r\n\r\n useEffect(() => {\r\n document\r\n .querySelectorAll(\".dx-scrollable-container\")\r\n .forEach((container) => {\r\n container.addEventListener(\"scrollend\", handleScroll);\r\n });\r\n\r\n return () => {\r\n document\r\n .querySelectorAll(\".dx-scrollable-container\")\r\n .forEach((container) => {\r\n container.removeEventListener(\"scrollend\", handleScroll);\r\n });\r\n };\r\n }, [data.length]);\r\n\r\n const handleContentReady = (e) => {\r\n const dataGridInstance = e.component;\r\n const filteredDataCount = dataGridInstance.totalCount();\r\n\r\n if (filterApplied.current && filteredDataCount > 0)\r\n {\r\n setFilteredRowCount(filteredDataCount);\r\n }\r\n else{\r\n setFilteredRowCount(0);\r\n }\r\n\r\n // set content ready state for trigger sort change method only once if content ready\r\n if (!contentReady) setContentReady(true);\r\n };\r\n\r\n const onFilterValueChange = (e) => {\r\n if (e !== null)\r\n filterApplied.current = true;\r\n else {\r\n filterApplied.current = false;\r\n setFilteredRowCount(0);\r\n }\r\n }\r\n\r\n\r\n const onToolbarPreparing = (e) => {\r\n if (props.toolbarButtonGroup && props.toolbarButtonGroup.length > 0) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n template: function (_, __, container) {\r\n const wrapper = document.createElement('div');\r\n container.appendChild(wrapper);\r\n const root = createRoot(wrapper);\r\n\r\n root.render(<React.StrictMode>\r\n {props.toolbarButtonGroup && Array.isArray(props.toolbarButtonGroup) &&\r\n props.toolbarButtonGroup.map((buttonGroupItem, index) => (\r\n <OdsButton key={index} style={{ marginLeft: token.margin }} type={buttonGroupItem.type} onClick={buttonGroupItem.onclick}>\r\n {buttonGroupItem.label}\r\n </OdsButton>\r\n ))\r\n }\r\n </React.StrictMode>);\r\n }\r\n });\r\n }\r\n\r\n if(!isTextEmpty(props.pageTitle)) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n cssClass: 'toolbarTitleItem',\r\n template: function (_, __, container) {\r\n const wrapper = document.createElement('div');\r\n container.appendChild(wrapper);\r\n const root = createRoot(wrapper);\r\n\r\n root.render(<React.StrictMode>\r\n <OdsTitle level={5} style={{ display: \"flex\", alignItems: \"center\", alignSelf: \"stretch\", margin: 0 }}>{props.pageTitle}</OdsTitle>\r\n </React.StrictMode>);\r\n }\r\n });\r\n }\r\n };\r\n const detailGrid = ({ data }) => {\r\n return (\r\n <OdsRemoteDataGrid\r\n {...props}\r\n showMasterDetail={false}\r\n columns={props.detailGridColums}\r\n dataSource={props.detailData[data.key.ID]}\r\n\r\n />\r\n )\r\n };\r\n\r\n return (\r\n <React.Fragment >\r\n\r\n <DataGrid\r\n keyExpr={props.keyExpr}\r\n dataSource={data}\r\n showBorders={true}\r\n columnAutoWidth={false}\r\n onEditorPreparing={onEditorPreparing}\r\n ref={gridRef}\r\n onExporting={onExporting}\r\n height={props.height == undefined ? window.innerHeight - 164 : props.height}\r\n allowColumnResizing={true}\r\n columnResizingMode=\"nextColumn\"\r\n onRowClick={props.onRowClick}\r\n onEditorPrepared={onEditorPrepared}\r\n showRowLines={true}\r\n allowColumnReordering={true}\r\n scrolling={{ useNative: true }}\r\n remoteOperations={false}\r\n paging={{ enabled: false }}\r\n repaintChangesOnly={true}\r\n focusedRowEnabled={false}\r\n onCellClick={e => {\r\n e.cellElement.style.backgroundColor = 'transparent';\r\n }}\r\n filterSyncEnabled={true}\r\n wordWrapEnabled={props.wordWrapEnabled ? props.wordWrapEnabled : false}\r\n columnFixing={{ enabled: true }}\r\n onSelectionChanged={props.onSelectionChanged}\r\n noDataText={props.noDataText}\r\n onSaved={props.onSaved}\r\n onSaving={props.onSaving}\r\n onEditCanceling={props.onEditCanceling}\r\n onContentReady={handleContentReady}\r\n onFilterValueChange={onFilterValueChange}\r\n onOptionChanged={props.onOptionChanged}\r\n onToolbarPreparing={props.onToolbarPreparing || onToolbarPreparing}\r\n >\r\n {columns.current.map((col: any) => (\r\n <Column key={col.dataField} {...col} minWidth={50} >\r\n {col.lookUp && <Lookup {...col.lookUp} />}\r\n {col.dataField === 'IsActive' &&\r\n <HeaderFilter dataSource={[\r\n { text: 'Active', value: true },\r\n { text: 'Passive', value: false },\r\n ]} />\r\n }\r\n\r\n {col.useDynamicHeaderFilter && (\r\n <HeaderFilter\r\n allowSearch={true}\r\n dataSource={[\r\n { text: \"(Blanks)\", value: null }, // Blanks seçeneğini ekleyin\r\n ...(data && data.length > 0 ? data\r\n .filter(\r\n (item) =>\r\n item[col.dataField] !== null &&\r\n item[col.dataField] !== undefined &&\r\n item[col.dataField] !== \"\"\r\n )\r\n .map((item) => ({\r\n text: item[col.dataField].toString(),\r\n value: item[col.dataField],\r\n })) : [])\r\n ]}\r\n />\r\n )}\r\n {col.multiLevelColumns &&\r\n col.multiLevelColumns.map((multiLevelColItem: any) => (\r\n <Column\r\n dataField={multiLevelColItem.dataField}\r\n caption={multiLevelColItem.caption}\r\n width={80}\r\n />\r\n ))}\r\n </Column>\r\n ))}\r\n\r\n {props.actionColumnEnable !== undefined &&\r\n props.actionColumnEnable === true && (\r\n <Column\r\n dataField=\"Actions\"\r\n fixed={true}\r\n allowSorting={false}\r\n caption={props.actionButtonGroupCaption}\r\n type=\"buttons\"\r\n showInColumnChooser={false}\r\n cellRender={(cellData) => actionCellRender(cellData, props)}\r\n /> \r\n )}\r\n {props.showMasterDetail && (\r\n <MasterDetail enabled={true} component={detailGrid} />\r\n )}\r\n\r\n {props.edit && (\r\n <Editing\r\n mode={props.edit.mode}\r\n allowUpdating={props.edit.allowUpdating}\r\n allowDeleting={props.edit.allowDeleting}\r\n allowAdding={props.edit.allowAdding}\r\n useIcons={true}\r\n >\r\n {props.edit.mode === \"popup\" && (\r\n <div>\r\n <Popup\r\n showTitle={true}\r\n width={700}\r\n height={300}\r\n showCloseButton={false}\r\n />\r\n <Form>\r\n {props.edit.formItems &&\r\n props.edit.formItems.map((formItem: any) => (\r\n <Item\r\n itemType={formItem.itemType}\r\n colCount={formItem.colCount}\r\n colSpan={formItem.colSpan}\r\n >\r\n {formItem.items.map((subItem: any) => (\r\n <Item\r\n key={subItem.dataField}\r\n dataField={subItem.dataField}\r\n />\r\n ))}\r\n </Item>\r\n ))}\r\n </Form>\r\n </div>\r\n )}\r\n </Editing>\r\n )}\r\n <Paging defaultPageSize={props.pageSize} />\r\n {props.pagingEnable && (\r\n <Pager\r\n visible={false}\r\n displayMode=\"full\"\r\n showPageSizeSelector={false}\r\n showNavigationButtons={false}\r\n showInfo={false}\r\n />\r\n )}\r\n <Scrolling\r\n showScrollbar=\"always\"\r\n scrollByContent={true}\r\n scrollByThumb={true}\r\n mode={\"virtual\"}\r\n rowRenderingMode=\"virtual\"\r\n />\r\n {loading && <LoadPanel enabled shadingColor=\"rgba(0,0,0,0.4)\" />}\r\n <SearchPanel visible={true} />\r\n <FilterRow\r\n visible={props.isFilterRow != undefined ? props.isFilterRow : true}\r\n />\r\n <FilterPanel visible={true} />\r\n <HeaderFilter visible={true} />\r\n <Sorting mode=\"multiple\" />\r\n <Export\r\n enabled={true}\r\n allowExportSelectedData={true}\r\n formats={exportFormats}\r\n />\r\n {props.selectOptions?.selectEnable && (\r\n <Selection\r\n mode={props.selectOptions?.mode ?? \"multiple\"}\r\n deferred={props.selectOptions?.deferred ?? true}\r\n />\r\n )}\r\n <ColumnChooser enabled={true} mode=\"select\">\r\n {!props.columnChooserPositionDisabled && (\r\n <Position\r\n my=\"right top\"\r\n at=\"right bottom\"\r\n of={\r\n document.querySelector(`.${props.dataGridPageName}`)\r\n ? `.${props.dataGridPageName} .dx-datagrid-column-chooser-button`\r\n : \".dx-datagrid-column-chooser-button\"\r\n }\r\n />\r\n )}\r\n <ColumnChooserSearch\r\n enabled={true}\r\n editorOptions={{ placeholder: \"\" }}\r\n />\r\n\r\n <ColumnChooserSelection\r\n allowSelectAll={true}\r\n selectByClick={true}\r\n recursive={true} />\r\n </ColumnChooser>\r\n <Toolbar>\r\n <DxItem name=\"searchPanel\" />\r\n <DxItem name=\"columnChooserButton\" cssClass='toolbarPanelItems' />\r\n <DxItem name=\"exportButton\" cssClass='toolbarPanelItems' />\r\n </Toolbar>\r\n <Summary calculateCustomSummary={renderTotal}>\r\n <TotalItem\r\n column={columns.current[0].dataField}\r\n summaryType=\"custom\"\r\n displayFormat={renderTotal()}\r\n />\r\n </Summary>\r\n <StateStoring\r\n enabled={true}\r\n type=\"custom\"\r\n customLoad={customLoad}\r\n customSave={customSave} >\r\n </StateStoring>\r\n </DataGrid>\r\n </React.Fragment >\r\n )\r\n}\r\n\r\nexport default OdsRemoteDataGrid;\r\n"],"names":["exportFormats","totalPageCount","loadedPageCount","totalRecordCount","useToken","theme","OdsRemoteDataGrid","props","token","data","setData","useState","fileName","moment","filteredRowCount","setFilteredRowCount","columns","useRef","gridRef","filterApplied","loading","setLoading","contentReady","setContentReady","scrollPosition","setScrollPosition","onCancelEditEvent","headers","useEffect","fetchData","newColumns","colItem","headerCellRenderr","jsx","Tooltip","InfoCircleOutlined","locale","loadMessages","checkSortingPropertyForInitilaize","cssRules","styleSheet","checkData","dataGridInstance","dataExists","gridElement","onOptionChanged","sortedColumn","p","column","index","fullName","gridEvent","checkRequestDataHasOnlySortingProperty","obj","keys","actionButtons","useMemo","useCallback","apiUrl","query","queryString","requestOptions","response","newData","newArray","prevData","getTotalCount","totalCount","onEditorPreparing","args","getServerSide","type","onExporting","workbook","Workbook","newColumnFromFilterData","filterItem","exportDataGridXls","options","gridCell","excelCell","date","offsetMinutes","sign","hours","minutes","formattedOffset","formattedDate","matchingItem","item","buffer","saveAs","doc","jsPDF","exportDataGrid","customLoad","state","customSave","onEditorPrepared","info","i","renderTotal","result","totalloaded","concatFilteredLabel","actionCellRender","cellData","kebabMenuButtons","button","DynamicIcon","event","customEvent","buttonElements","buttonItem","isVisible","OdsDataGrdiRowButton","OdsDropdown","React","onScrollEnd","handleScroll","debounce","e","scrollable","top","height","scrollHeight","maxHeight","reachedBottom","lastScrollTop","container","handleContentReady","filteredDataCount","onFilterValueChange","onToolbarPreparing","_","__","wrapper","createRoot","buttonGroupItem","OdsButton","isTextEmpty","OdsTitle","detailGrid","jsxs","DataGrid","col","Column","Lookup","HeaderFilter","multiLevelColItem","MasterDetail","Editing","Popup","Form","formItem","Item","subItem","Paging","Pager","Scrolling","LoadPanel","SearchPanel","FilterRow","FilterPanel","Sorting","Export","Selection","ColumnChooser","Position","ColumnChooserSearch","ColumnChooserSelection","Toolbar","DxItem","Summary","TotalItem","StateStoring"],"mappings":"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"}
1
+ {"version":3,"file":"OdsRemoteDataGrid.js","sources":["../../../src/components/devextreme/OdsRemoteDataGrid.tsx"],"sourcesContent":["import { createRoot } from \"react-dom/client\";\r\nimport React, {\r\n useState,\r\n useEffect,\r\n useMemo,\r\n useCallback,\r\n useRef,\r\n } from \"react\";\r\nimport DataGrid, {\r\n Item as DxItem,\r\n Column,\r\n ColumnChooser,\r\n ColumnChooserSearch,\r\n ColumnChooserSelection,\r\n Export,\r\n FilterPanel,\r\n FilterRow,\r\n HeaderFilter,\r\n LoadPanel,\r\n Position,\r\n SearchPanel,\r\n Sorting,\r\n Toolbar,\r\n StateStoring,\r\n Scrolling,\r\n IDataGridOptions,\r\n Summary,\r\n TotalItem,\r\n IButtonProps,\r\n Selection,\r\n ISelectionProps,\r\n Pager,\r\n IEditingProps,\r\n Editing,\r\n Popup,\r\n Form,\r\n Paging,\r\n ISummaryProps,\r\n MasterDetail \r\n} from \"devextreme-react/data-grid\";\r\nimport { Item } from \"devextreme-react/form\";\r\nimport { exportDataGrid } from \"devextreme/pdf_exporter\";\r\nimport { exportDataGrid as exportDataGridXls } from \"devextreme/excel_exporter\";\r\nimport jsPDF from \"jspdf\";\r\nimport { Workbook } from \"exceljs\";\r\nimport { saveAs } from \"file-saver-es\";\r\nimport dayjs from \"dayjs\";\r\nimport { Tooltip, theme } from \"antd\";\r\nimport { locale, loadMessages } from \"devextreme/localization\";\r\nimport { Lookup } from \"devextreme-react\";\r\nimport debounce from \"lodash/debounce\";\r\nimport { InfoCircleOutlined } from \"@ant-design/icons\";\r\n\r\nimport { ButtonType } from 'antd/es/button/buttonHelpers';\r\nimport queryString from 'query-string';\r\nimport ReactDOM from 'react-dom';\r\nimport DynamicIcon from './datagridUtils/DynamicIcon';\r\nimport OdsButton from \"../antd/button/OdsButton\";\r\nimport OdsTitle from \"../antd/typography/OdsTitle\";\r\nimport OdsDropdown from \"../antd/dropdown/OdsDropdown\";\r\nimport OdsDataGrdiRowButton from \"../antd/button/OdsDataGrdiRowButton\";\r\nimport { isTextEmpty } from \"../../utils/commonFunctions\";\r\n\r\nconst exportFormats = [\"xlsx\"]; //['xlsx', 'pdf'];\r\nlet totalPageCount = 1;\r\nlet loadedPageCount = 1;\r\nlet totalRecordCount = 0;\r\nconst { useToken } = theme;\r\n\r\nexport interface IOdsDataGridProps extends IDataGridOptions {\r\n dataGridPageName?: string;\r\n language: string;\r\n exportFileName: string;\r\n filterEnabledShow: boolean;\r\n pageTitle?: string;\r\n toolbarButtonGroup?: IButtonGroup[];\r\n actionButtonGroup?: IButtonGroup[];\r\n actionButtonGroupCaption?: string;\r\n columns: any[];\r\n detailGridColums?: any[];\r\n pageSize?: number;\r\n actionColumnEnable: boolean;\r\n selectOptions?: ISelectOptions;\r\n columnChooserPositionDisabled?: boolean;\r\n pagingEnable?: boolean;\r\n edit?: IEditingoptions;\r\n isServerSide: boolean;\r\n axiosRequest?: IAxiosProps;\r\n customSummary?: ISummaryRowOptions;\r\n handleEditorPreparing?: any;\r\n isFilterRow?: boolean;\r\n filterData?: any[];\r\n showMasterDetail?: boolean;\r\n detailData?: any;\r\n}\r\n\r\ninterface ISummaryRowOptions {\r\n summaryLoadedDataLabel?: string;\r\n summaryTotalDataLabel?: string;\r\n summaryFilteredDataLabel?: string;\r\n summaryItems?: ISummaryProps[];\r\n summaryTotalCount?: number;\r\n summaryTotalPageCountLabel?: string;\r\n}\r\n\r\ninterface IAxiosProps {\r\n token: string;\r\n requestData?: any;\r\n apiUrl: string;\r\n environmentUrl: string;\r\n requestQueryString?: any;\r\n requestType: string;\r\n}\r\n\r\ninterface IEditingoptions extends IEditingProps {\r\n formItems?: any[];\r\n title?: string;\r\n}\r\n\r\ninterface ISelectOptions extends ISelectionProps {\r\n selectEnable: boolean;\r\n}\r\n\r\ninterface IButtonGroup extends IButtonProps {\r\n type?: ButtonType;\r\n label?: string;\r\n onclick?: React.MouseEventHandler<HTMLElement>;\r\n actionPermission?: boolean;\r\n}\r\n\r\nconst OdsRemoteDataGrid = (props: IOdsDataGridProps) => {\r\n const { token } = useToken();\r\n const [data, setData] = useState([]);\r\n const fileName = props.exportFileName\r\n ? props.exportFileName + dayjs().format(\"YYYYMMDD\")\r\n : \"DatagridExportFile\" + dayjs().format(\"YYYYMMDD\");\r\n const [filteredRowCount, setFilteredRowCount] = useState(0);\r\n const columns = useRef(props.columns);\r\n let gridRef = useRef(null);\r\n const filterApplied = useRef(false);\r\n const [loading, setLoading] = useState(false);\r\n const [contentReady, setContentReady] = useState(false);\r\n const [scrollPosition, setScrollPosition] = useState(0);\r\n\r\n const onCancelEditEvent = new CustomEvent(\"cancelEdit\", {\r\n bubbles: true,\r\n detail: {\r\n rowData: null,\r\n },\r\n });\r\n\r\n const headers = new Headers({\r\n \"Content-Type\": \"application/json\",\r\n Authorization:\r\n \"Bearer \" + (props.axiosRequest ? props.axiosRequest.token : \"\"),\r\n \"Accept-Language\": props.language != \"\" ? props.language : \"EN\",\r\n });\r\n\r\n useEffect(() => {\r\n totalPageCount = 1;\r\n loadedPageCount = 1;\r\n totalRecordCount = 0;\r\n }, [props.dataGridPageName]);\r\n\r\n useEffect(() => {\r\n if (props.axiosRequest !== undefined\r\n && ((props.axiosRequest?.requestData && Object.keys(props.axiosRequest?.requestData).length > 0) || (props.axiosRequest?.requestQueryString))) {\r\n totalPageCount = 1;\r\n loadedPageCount = 1;\r\n totalRecordCount = 0;\r\n setData([]);\r\n fetchData();\r\n }\r\n }, [props.axiosRequest?.requestData, props.axiosRequest?.requestQueryString]);\r\n\r\n useEffect(() => {\r\n if (columns.current !== undefined && columns.current.length > 0) {\r\n const newColumns = columns.current.map((colItem) => {\r\n if (colItem.tooltip !== undefined && colItem.tooltip.enable) {\r\n const headerCellRenderr = () => {\r\n return (\r\n <div>\r\n <span>{colItem.caption}</span>\r\n <Tooltip title={colItem.tooltip.title}>\r\n <InfoCircleOutlined style={{ marginLeft: 5 }} />\r\n </Tooltip>\r\n </div>\r\n );\r\n };\r\n colItem.headerCellRender = headerCellRenderr;\r\n }\r\n\r\n // this process prevents client-side sorting process if grid use server-side\r\n // when calculateSortValue setted anything else from the grid columns sorting process not working for client-side data\r\n if (props.isServerSide)\r\n colItem.calculateSortValue = String(\"dummyFieldForPreventClientSideSorting\")\r\n\r\n return colItem;\r\n });\r\n columns.current = newColumns;\r\n }\r\n }, [props.columns]);\r\n\r\n useEffect(() => {\r\n if (Array.isArray(props.dataSource)) {\r\n setData(props.dataSource);\r\n }\r\n }, [props.dataSource]);\r\n\r\n useEffect(() => {\r\n locale(localStorage.getItem(\"locale\"));\r\n loadMessages(JSON.parse(localStorage.getItem(\"localTranslation\")));\r\n if (gridRef.current) {\r\n gridRef.current?.instance?.()?.updateDimensions();\r\n }\r\n }, []);\r\n\r\n // this useEffect used for check sort change once for component mount process\r\n useEffect(() => {\r\n if (contentReady) checkSortingPropertyForInitilaize();\r\n }, [contentReady]);\r\n\r\n useEffect(() => {\r\n const cssRules = `\r\n .data-exists .dx-datagrid-borders > .dx-datagrid-filter-panel,\r\n .data-exists .dx-datagrid-borders > .dx-datagrid-headers {\r\n border-top: 1px solid rgba(0, 0, 0, 0.06);\r\n padding-right: 0px !important;\r\n }\r\n \r\n .data-exists .dx-datagrid-headers .dx-datagrid-content {\r\n margin-bottom: -1px;\r\n padding-right: 17px !important;\r\n }\r\n `;\r\n\r\n const styleSheet = document.createElement('style');\r\n styleSheet.type = 'text/css';\r\n styleSheet.innerText = cssRules;\r\n document.head.appendChild(styleSheet);\r\n\r\n const checkData = () => {\r\n if (gridRef.current) {\r\n const dataGridInstance = gridRef.current.instance?.();\r\n const dataExists = data.length >= 15;\r\n\r\n const gridElement = dataGridInstance?.element();\r\n if (dataExists) {\r\n gridElement.classList.add('data-exists');\r\n } else {\r\n gridElement.classList.remove('data-exists');\r\n }\r\n }\r\n };\r\n\r\n const dataGridInstance = gridRef.current.instance?.();\r\n dataGridInstance?.on('dataChanged', checkData);\r\n checkData();\r\n\r\n return () => {\r\n document.head.removeChild(styleSheet);\r\n dataGridInstance?.off('dataChanged', checkData);\r\n };\r\n }, [data]);\r\n\r\n // check if there is sorted column and trigger onOptionChanged method for sort process\r\n const checkSortingPropertyForInitilaize = () => {\r\n const { onOptionChanged } = props;\r\n if (onOptionChanged) {\r\n const dataGridInstance = gridRef.current.instance?.();\r\n const sortingState = dataGridInstance?.getVisibleColumns()\r\n .filter((p) => !p.command)\r\n .map((column, index) => ({\r\n index: index, // decrease index for deafult empty column\r\n dataField: column.dataField,\r\n sortOrder: column.sortOrder,\r\n }));\r\n\r\n var sortedColumn = sortingState.find(column => column.sortOrder !== undefined)\r\n if (sortedColumn) {\r\n if (sortedColumn.sortOrder) {\r\n dataGridInstance.option(`columns[${sortedColumn.index}].sortOrder`, sortedColumn.sortOrder);\r\n\r\n // prepare OptionChangedEventInfo data for onOptionChanged method\r\n const fullName = `columns[${sortedColumn.index}].sortOrder`;\r\n const gridEvent = {\r\n component: dataGridInstance,\r\n fullName: fullName,\r\n name: \"optionChanged\",\r\n value: sortedColumn.sortOrder,\r\n previousValue: null,\r\n element: null,\r\n };\r\n\r\n onOptionChanged(gridEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const checkRequestDataHasOnlySortingProperty = (obj) => {\r\n // Get all property names from the object\r\n const keys = Object.keys(obj);\r\n // Check if there is only one property and it is 'Sorting'\r\n return keys.length === 1 && keys[0] === \"Sorting\";\r\n };\r\n\r\n const actionButtons = useMemo(() => {\r\n if (props.actionButtonGroup) {\r\n if (props.actionButtonGroup.length >= 2 && !props.edit) {\r\n return props.actionButtonGroup.slice(0, 2);\r\n } else {\r\n return props.actionButtonGroup;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }, [props.actionButtonGroup]);\r\n\r\n // const kebabMenuButtons = useMemo(() => {\r\n // if (props.actionButtonGroup) {\r\n // if (props.actionButtonGroup.length >= 2 && !props.edit) {\r\n // return props.actionButtonGroup.slice(2, props.actionButtonGroup.length);\r\n // } else {\r\n // return [];\r\n // }\r\n // } else {\r\n // return [];\r\n // }\r\n // }, [props.actionButtonGroup]);\r\n\r\n const fetchData = useCallback(async () => {\r\n if (props.axiosRequest == undefined) return;\r\n\r\n if (props.isServerSide) {\r\n\r\n // check requestData for sorting property if there is only sorting property grid shouldn't do fetch data\r\n if (props.axiosRequest.requestData && checkRequestDataHasOnlySortingProperty(props.axiosRequest.requestData))\r\n return;\r\n\r\n let apiUrl =\r\n props.axiosRequest.environmentUrl + \"\" + props.axiosRequest.apiUrl;\r\n\r\n if (props.axiosRequest.requestData?.PaginatedRequest !== undefined) {\r\n props.axiosRequest.requestData.PaginatedRequest.PageNumber =\r\n loadedPageCount;\r\n props.axiosRequest.requestData.PaginatedRequest.PageSize =\r\n props.pageSize;\r\n }\r\n\r\n if (props.axiosRequest.requestQueryString !== undefined) {\r\n\r\n props.axiosRequest.requestQueryString.maxResultCount = props.pageSize;\r\n\r\n if (loadedPageCount > 1 && totalPageCount >= loadedPageCount) {\r\n props.axiosRequest.requestQueryString.skipCount = ((loadedPageCount - 1) * props.pageSize).toString();\r\n }\r\n\r\n let query = queryString.stringify(props.axiosRequest.requestQueryString);\r\n\r\n apiUrl = `${apiUrl}?${query}`\r\n }\r\n\r\n const requestOptions = {\r\n method: props.axiosRequest.requestType,\r\n headers: headers,\r\n body: JSON.stringify(props.axiosRequest.requestData),\r\n };\r\n\r\n try {\r\n setLoading(true);\r\n const response = await fetch(apiUrl, requestOptions);\r\n\r\n const newData = await response.json();\r\n\r\n if (loadedPageCount == 1) {\r\n setData(newData.Data ? newData.Data : newData);\r\n\r\n loadedPageCount = 1;\r\n } else if (totalPageCount >= loadedPageCount) {\r\n const newArray = newData.Data ? newData.Data : newData;\r\n setData((prevData) => [...prevData, ...newArray]);\r\n }\r\n\r\n getTotalCount(response, newData);\r\n } catch (error) {\r\n console.error(\"Error fetching data:\", error);\r\n setLoading(false);\r\n } finally {\r\n }\r\n }\r\n }, [\r\n props.axiosRequest?.requestData,\r\n props.axiosRequest?.apiUrl,\r\n props.axiosRequest?.environmentUrl,\r\n props.axiosRequest?.requestQueryString,\r\n props.axiosRequest?.requestType,\r\n props.pageSize,\r\n props.isServerSide,\r\n ]);\r\n\r\n const getTotalCount = (response: Response, data: any): void => {\r\n if (data?.PageCount || data?.RowCount) {\r\n totalPageCount = data.PageCount;\r\n totalRecordCount = data.RowCount;\r\n } else {\r\n let totalCount;\r\n\r\n if (response) totalCount = response.headers.get(\"x-total-count\");\r\n\r\n if (totalCount == null) totalCount = data?.rowCount;\r\n\r\n if (totalCount == null) totalCount = data?.length;\r\n\r\n totalRecordCount = parseInt(totalCount, 10) || 0;\r\n totalPageCount = Math.ceil(totalRecordCount / props.pageSize);\r\n }\r\n\r\n setLoading(false);\r\n };\r\n\r\n const onEditorPreparing = useCallback(\r\n (e: any) => {\r\n if (e.row !== undefined && e.parentType === \"dataRow\") {\r\n if (props.handleEditorPreparing) {\r\n props.handleEditorPreparing(e);\r\n }\r\n }\r\n\r\n if (\r\n e.editorOptions &&\r\n e.rowType === \"data\" &&\r\n e.parentType === \"dataRow\"\r\n ) {\r\n e.editorOptions.onValueChanged = function (args) {\r\n if (args.event && args.event.type === \"cancel\")\r\n e.cellElement.dispatchEvent(onCancelEditEvent);\r\n };\r\n }\r\n },\r\n [props.isServerSide]\r\n );\r\n\r\n const getServerSide = useCallback(\r\n async (type: string) => {\r\n if (type === \"reachedBottom\") {\r\n if (totalPageCount <= loadedPageCount) {\r\n return;\r\n } else {\r\n loadedPageCount = loadedPageCount + 1;\r\n await fetchData();\r\n }\r\n }\r\n },\r\n [totalPageCount]\r\n );\r\n\r\n const onExporting = useCallback(\r\n (e: any) => {\r\n if (e.format === \"xlsx\") {\r\n const workbook = new Workbook();\r\n\r\n //Dışa aktarma işlemi sırasında filtre verilerini yeni sütunları ekle\r\n if (props.filterData != null) {\r\n const newColumnFromFilterData = props.filterData.map((filterItem) => ({\r\n dataField: filterItem.key,\r\n caption: filterItem.key\r\n }));\r\n\r\n const newColumns = [...columns.current, ...newColumnFromFilterData];\r\n e.component.beginUpdate();\r\n e.component.option(\"columns\", newColumns);\r\n e.component.endUpdate();\r\n }\r\n exportDataGridXls({\r\n component: e.component,\r\n worksheet: workbook.addWorksheet(\"Main sheet\"),\r\n autoFilterEnabled: true,\r\n customizeCell: function (options) {\r\n //Buradaki kod dg için yanlızca datefilter çalışması için eklendi. Dg üstünde format olarak format: \"dd.MM.yyyy\" şeklinde düzenleme yapıldı, ekranda saat bilgisi görünmesi içie cellRender: datetimeCellRender fonksiyonu eklendi. Format değişikliği yüzünden ezcelde saat bilgisi çıkmıyordu, bu yüzden bu kod bloğu eklendi.\r\n const { gridCell, excelCell } = options;\r\n if (gridCell.column.dataType === \"datetime\" && gridCell.value) {\r\n // Aşağıdaki if bloğu yukarıdaki if bloğu ile birleştirimemeli. Çünkü \"gridCell?.column?.calculateFilterExpression?.name === \"calculateFilterExpressionForColumn\"\"\" olsa bile gridCell.value değeri hezaman undefined geliyor. gridCell.column['meta'] konrolü cellRender eklenmeme durumu için eklendi.\r\n if (\r\n gridCell.column.calculateFilterExpression?.name ===\r\n \"calculateFilterExpressionForColumn\" &&\r\n gridCell.column[\"meta\"]?.hasCustomCellRenderer\r\n ) {\r\n const date = dayjs(gridCell.value);\r\n const offsetMinutes = date.utcOffset();\r\n const sign = offsetMinutes >= 0 ? \"+\" : \"-\";\r\n const hours = Math.floor(Math.abs(offsetMinutes) / 60);\r\n const minutes = Math.abs(offsetMinutes) % 60;\r\n const formattedOffset = `(UTC${sign}${hours\r\n .toString()\r\n .padStart(2, \"0\")}:${minutes.toString().padStart(2, \"0\")})`;\r\n const formattedDate =\r\n date.format(\"DD.MM.YYYY HH:mm\") + \" \" + formattedOffset;\r\n excelCell.value = formattedDate;\r\n }\r\n }\r\n\r\n //girilen filtre değerlerinin uygun başlık altında satıra yazılması \r\n if (gridCell.rowType !== 'header' && props.filterData != null) {\r\n const matchingItem = props.filterData.find(item => item.key === gridCell.column.dataField);\r\n if (matchingItem) {\r\n excelCell.value = matchingItem.value;\r\n }\r\n }\r\n }\r\n }).then(() => {\r\n workbook.xlsx.writeBuffer().then((buffer) => {\r\n saveAs(new Blob([buffer], { type: 'application/octet-stream' }), fileName + '.xlsx');\r\n });\r\n });\r\n } else {\r\n const doc = new jsPDF();\r\n exportDataGrid({\r\n jsPDFDocument: doc,\r\n component: e.component,\r\n indent: 5,\r\n }).then(() => {\r\n doc.save(fileName + '.pdf');\r\n });\r\n }\r\n }, [fileName, props.filterData]);\r\n\r\n const customLoad = useCallback(() => {\r\n let state = JSON.parse(\r\n localStorage.getItem(props.exportFileName + \"Storage\")\r\n );\r\n\r\n if (localStorage.getItem(props.exportFileName + \"Storage\")) {\r\n state.selectedRowKeys = [];\r\n if (props.filterEnabledShow) state.filterPanel = { filterEnabled: false };\r\n else state.filterPanel = { filterEnabled: true };\r\n }\r\n\r\n return state;\r\n }, [props.filterEnabledShow]);\r\n\r\n const customSave = useCallback(\r\n (state: any) => {\r\n state.selectedRowKeys = [];\r\n if (props.filterEnabledShow) state.filterPanel = { filterEnabled: false };\r\n else state.filterPanel = { filterEnabled: true };\r\n\r\n if (data.length === 0) {\r\n if (!state.filterValue && state.filterValue !== null) {\r\n state.filterValue = null;\r\n }\r\n }\r\n localStorage.setItem(\r\n props.exportFileName + \"Storage\",\r\n JSON.stringify(state)\r\n );\r\n },\r\n [props.filterEnabledShow]\r\n );\r\n\r\n const onEditorPrepared = useCallback((info) => {\r\n if (\r\n info.parentType === \"filterRow\" &&\r\n info.editorName === \"dxSelectBox\" &&\r\n info.dataField === \"IsActive\"\r\n ) {\r\n if (info.dataSource != null && info.dataSource.length > 0) {\r\n info.showAllText = info.dataSource.find((i) => {\r\n return i.value === null;\r\n }).label;\r\n info.trueText = info.dataSource.find((i) => {\r\n return i.value === true;\r\n }).label;\r\n info.falseText = info.dataSource.find((i) => {\r\n return i.value === false;\r\n }).label;\r\n }\r\n }\r\n }, []);\r\n\r\n const renderTotal = useCallback(() => {\r\n let result = \"\";\r\n let totalloaded = 0;\r\n\r\n if (\r\n data.length < 50 ||\r\n !props.isServerSide ||\r\n loadedPageCount == totalPageCount\r\n ) {\r\n totalloaded = data.length;\r\n } else {\r\n totalloaded = loadedPageCount * props.pageSize;\r\n }\r\n\r\n if (props.isServerSide) {\r\n result =\r\n totalRecordCount > 0\r\n ? `${totalloaded} ` +\r\n props.customSummary?.summaryLoadedDataLabel +\r\n `- ${totalRecordCount}` +\r\n props.customSummary?.summaryTotalDataLabel\r\n : ``;\r\n result = concatFilteredLabel(result, totalloaded);\r\n }\r\n\r\n if (\r\n props.customSummary?.summaryTotalCount !== undefined &&\r\n !props.isServerSide\r\n ) {\r\n result =\r\n props.customSummary.summaryTotalDataLabel +\r\n \" : \" +\r\n props.customSummary.summaryTotalCount;\r\n result = concatFilteredLabel(result, totalloaded);\r\n }\r\n\r\n if (totalPageCount > 1) {\r\n result = `${result} - ${props.customSummary?.summaryTotalPageCountLabel} ${loadedPageCount} / ${totalPageCount}`;\r\n }\r\n return result;\r\n }, [\r\n data,\r\n filteredRowCount,\r\n loadedPageCount,\r\n props.pageSize,\r\n totalRecordCount,\r\n filterApplied.current,\r\n ]);\r\n\r\n const concatFilteredLabel = (result: string, totalloaded: number) => {\r\n if (\r\n filteredRowCount > 0 &&\r\n totalloaded !== filteredRowCount &&\r\n filterApplied.current\r\n ) {\r\n let filteredLabel =\r\n `${filteredRowCount} ` +\r\n props.customSummary.summaryFilteredDataLabel +\r\n `- `;\r\n result = `${filteredLabel} ${result} `;\r\n }\r\n return result;\r\n };\r\n\r\n function actionCellRender(cellData, props) {\r\n const kebabMenuButtons = props.actionButtonGroup && props.actionButtonGroup.length >= 2 && !props.edit\r\n ? props.actionButtonGroup.slice(2).map(button => ({\r\n icon: <DynamicIcon iconName={button.icon} />,\r\n onClick: (event) => {\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row\r\n };\r\n button.onClick(customEvent);\r\n }\r\n }))\r\n : [];\r\n\r\n const buttonElements = [];\r\n\r\n {\r\n !props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible = typeof buttonItem.visible === 'function'\r\n ? buttonItem.visible({ column: cellData.column, component: cellData.component, row: cellData.row })\r\n : buttonItem.visible;\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission\r\n }\r\n icon={\r\n <DynamicIcon iconName={buttonItem.icon} />\r\n }\r\n onClick={(event) => {\r\n // event.preventDefault();\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row\r\n };\r\n buttonItem.onClick(customEvent);\r\n }}\r\n />\r\n );\r\n });\r\n }\r\n {\r\n props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible = typeof buttonItem.visible === 'function'\r\n ? buttonItem.visible({ column: cellData.column, component: cellData.component, row: cellData.row })\r\n : buttonItem.visible;\r\n\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n name={buttonItem.name}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission\r\n }\r\n icon={\r\n <DynamicIcon iconName={buttonItem.icon} />\r\n }\r\n onClick={(event) => {\r\n if (buttonItem.onClick) { \r\n // event.preventDefault();\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row \r\n };\r\n buttonItem.onClick(customEvent);\r\n }\r\n }}\r\n />\r\n );\r\n });\r\n }\r\n\r\n if (kebabMenuButtons.length > 0) {\r\n buttonElements.push(\r\n <OdsDropdown\r\n key={`dropdown-${cellData.rowIndex || cellData.data.ID}`}\r\n menuItems={kebabMenuButtons}\r\n >\r\n <OdsDataGrdiRowButton type=\"text\" icon={<DynamicIcon iconName={\"kebabMenu\"} />} />\r\n </OdsDropdown>\r\n );\r\n }\r\n\r\n return <React.Fragment><div className=\"flex flex-row gap-4 justify-center items-center\">{buttonElements}</div></React.Fragment>;\r\n }\r\n\r\n const onScrollEnd = useCallback(() => {\r\n getServerSide(\"reachedBottom\");\r\n }, [props.axiosRequest?.requestData, getServerSide]);\r\n\r\n const handleScroll = (e: any) => {\r\n const run = debounce((e: any) => {\r\n const scrollable = e.target as HTMLElement;\r\n\r\n const top = scrollable?.scrollTop ?? 0;\r\n const height = scrollable?.clientHeight ?? 0;\r\n const scrollHeight = scrollable?.scrollHeight ?? 0;\r\n const maxHeight = Math.max(top, height, scrollHeight) - 1;\r\n\r\n if (scrollHeight <= height) return;\r\n\r\n const reachedBottom = Math.ceil(top + height) >= maxHeight;\r\n\r\n let lastScrollTop = 0;\r\n if (top < lastScrollTop) return;\r\n\r\n lastScrollTop = top <= 0 ? 0 : top;\r\n if (reachedBottom) onScrollEnd();\r\n\r\n setScrollPosition(top);\r\n }, 200);\r\n\r\n run(e);\r\n };\r\n\r\n useEffect(() => {\r\n const gridElement = gridRef.current.instance?.()?.element();\r\n gridElement.scrollTop = scrollPosition;\r\n }, [data.length]);\r\n\r\n useEffect(() => {\r\n document\r\n .querySelectorAll(\".dx-scrollable-container\")\r\n .forEach((container) => {\r\n container.addEventListener(\"scrollend\", handleScroll);\r\n });\r\n\r\n return () => {\r\n document\r\n .querySelectorAll(\".dx-scrollable-container\")\r\n .forEach((container) => {\r\n container.removeEventListener(\"scrollend\", handleScroll);\r\n });\r\n };\r\n }, [data.length]);\r\n\r\n const handleContentReady = (e) => {\r\n const dataGridInstance = e.component;\r\n const filteredDataCount = dataGridInstance.totalCount();\r\n\r\n if (filterApplied.current && filteredDataCount > 0)\r\n {\r\n setFilteredRowCount(filteredDataCount);\r\n }\r\n else{\r\n setFilteredRowCount(0);\r\n }\r\n\r\n // set content ready state for trigger sort change method only once if content ready\r\n if (!contentReady) setContentReady(true);\r\n };\r\n\r\n const onFilterValueChange = (e) => {\r\n if (e !== null)\r\n filterApplied.current = true;\r\n else {\r\n filterApplied.current = false;\r\n setFilteredRowCount(0);\r\n }\r\n }\r\n\r\n\r\n const onToolbarPreparing = (e) => {\r\n if (props.toolbarButtonGroup && props.toolbarButtonGroup.length > 0) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n template: function (_, __, container) {\r\n const wrapper = document.createElement('div');\r\n container.appendChild(wrapper);\r\n const root = createRoot(wrapper);\r\n\r\n root.render(<React.StrictMode>\r\n {props.toolbarButtonGroup && Array.isArray(props.toolbarButtonGroup) &&\r\n props.toolbarButtonGroup.map((buttonGroupItem, index) => (\r\n <OdsButton key={index} style={{ marginLeft: token.margin }} type={buttonGroupItem.type} onClick={buttonGroupItem.onclick}>\r\n {buttonGroupItem.label}\r\n </OdsButton>\r\n ))\r\n }\r\n </React.StrictMode>);\r\n }\r\n });\r\n }\r\n\r\n if(!isTextEmpty(props.pageTitle)) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n cssClass: 'toolbarTitleItem',\r\n template: function (_, __, container) {\r\n const wrapper = document.createElement('div');\r\n container.appendChild(wrapper);\r\n const root = createRoot(wrapper);\r\n\r\n root.render(<React.StrictMode>\r\n <OdsTitle level={5} style={{ display: \"flex\", alignItems: \"center\", alignSelf: \"stretch\", margin: 0 }}>{props.pageTitle}</OdsTitle>\r\n </React.StrictMode>);\r\n }\r\n });\r\n }\r\n };\r\n const detailGrid = ({ data }) => {\r\n return (\r\n <OdsRemoteDataGrid\r\n {...props}\r\n showMasterDetail={false}\r\n columns={props.detailGridColums}\r\n dataSource={props.detailData[data.key.ID]}\r\n\r\n />\r\n )\r\n };\r\n\r\n return (\r\n <React.Fragment >\r\n\r\n <DataGrid\r\n keyExpr={props.keyExpr}\r\n dataSource={data}\r\n showBorders={true}\r\n columnAutoWidth={false}\r\n onEditorPreparing={onEditorPreparing}\r\n ref={gridRef}\r\n onExporting={onExporting}\r\n height={props.height == undefined ? window.innerHeight - 164 : props.height}\r\n allowColumnResizing={true}\r\n columnResizingMode=\"nextColumn\"\r\n onRowClick={props.onRowClick}\r\n onEditorPrepared={onEditorPrepared}\r\n showRowLines={true}\r\n allowColumnReordering={true}\r\n scrolling={{ useNative: true }}\r\n remoteOperations={false}\r\n paging={{ enabled: false }}\r\n repaintChangesOnly={true}\r\n focusedRowEnabled={false}\r\n onCellClick={e => {\r\n e.cellElement.style.backgroundColor = 'transparent';\r\n }}\r\n filterSyncEnabled={true}\r\n wordWrapEnabled={props.wordWrapEnabled ? props.wordWrapEnabled : false}\r\n columnFixing={{ enabled: true }}\r\n onSelectionChanged={props.onSelectionChanged}\r\n noDataText={props.noDataText}\r\n onSaved={props.onSaved}\r\n onSaving={props.onSaving}\r\n onEditCanceling={props.onEditCanceling}\r\n onContentReady={handleContentReady}\r\n onFilterValueChange={onFilterValueChange}\r\n onOptionChanged={props.onOptionChanged}\r\n onToolbarPreparing={props.onToolbarPreparing || onToolbarPreparing}\r\n >\r\n {columns.current.map((col: any) => (\r\n <Column key={col.dataField} {...col} minWidth={50} >\r\n {col.lookUp && <Lookup {...col.lookUp} />}\r\n {col.dataField === 'IsActive' &&\r\n <HeaderFilter dataSource={[\r\n { text: 'Active', value: true },\r\n { text: 'Passive', value: false },\r\n ]} />\r\n }\r\n\r\n {col.useDynamicHeaderFilter && (\r\n <HeaderFilter\r\n allowSearch={true}\r\n dataSource={[\r\n { text: \"(Blanks)\", value: null }, // Blanks seçeneğini ekleyin\r\n ...(data && data.length > 0 ? data\r\n .filter(\r\n (item) =>\r\n item[col.dataField] !== null &&\r\n item[col.dataField] !== undefined &&\r\n item[col.dataField] !== \"\"\r\n )\r\n .map((item) => ({\r\n text: item[col.dataField].toString(),\r\n value: item[col.dataField],\r\n })) : [])\r\n ]}\r\n />\r\n )}\r\n {col.multiLevelColumns &&\r\n col.multiLevelColumns.map((multiLevelColItem: any) => (\r\n <Column\r\n dataField={multiLevelColItem.dataField}\r\n caption={multiLevelColItem.caption}\r\n width={80}\r\n />\r\n ))}\r\n </Column>\r\n ))}\r\n\r\n {props.actionColumnEnable !== undefined &&\r\n props.actionColumnEnable === true && (\r\n <Column\r\n dataField=\"Actions\"\r\n fixed={true}\r\n allowSorting={false}\r\n caption={props.actionButtonGroupCaption}\r\n type=\"buttons\"\r\n showInColumnChooser={false}\r\n cellRender={(cellData) => actionCellRender(cellData, props)}\r\n /> \r\n )}\r\n {props.showMasterDetail && (\r\n <MasterDetail enabled={true} component={detailGrid} />\r\n )}\r\n\r\n {props.edit && (\r\n <Editing\r\n mode={props.edit.mode}\r\n allowUpdating={props.edit.allowUpdating}\r\n allowDeleting={props.edit.allowDeleting}\r\n allowAdding={props.edit.allowAdding}\r\n useIcons={true}\r\n >\r\n {props.edit.mode === \"popup\" && (\r\n <div>\r\n <Popup\r\n showTitle={true}\r\n width={700}\r\n height={300}\r\n showCloseButton={false}\r\n />\r\n <Form>\r\n {props.edit.formItems &&\r\n props.edit.formItems.map((formItem: any) => (\r\n <Item\r\n itemType={formItem.itemType}\r\n colCount={formItem.colCount}\r\n colSpan={formItem.colSpan}\r\n >\r\n {formItem.items.map((subItem: any) => (\r\n <Item\r\n key={subItem.dataField}\r\n dataField={subItem.dataField}\r\n />\r\n ))}\r\n </Item>\r\n ))}\r\n </Form>\r\n </div>\r\n )}\r\n </Editing>\r\n )}\r\n <Paging defaultPageSize={props.pageSize} />\r\n {props.pagingEnable && (\r\n <Pager\r\n visible={false}\r\n displayMode=\"full\"\r\n showPageSizeSelector={false}\r\n showNavigationButtons={false}\r\n showInfo={false}\r\n />\r\n )}\r\n <Scrolling\r\n showScrollbar=\"always\"\r\n scrollByContent={true}\r\n scrollByThumb={true}\r\n mode={\"virtual\"}\r\n rowRenderingMode=\"virtual\"\r\n />\r\n {loading && <LoadPanel enabled shadingColor=\"rgba(0,0,0,0.4)\" />}\r\n <SearchPanel visible={true} />\r\n <FilterRow\r\n visible={props.isFilterRow != undefined ? props.isFilterRow : true}\r\n />\r\n <FilterPanel visible={true} />\r\n <HeaderFilter visible={true} />\r\n <Sorting mode=\"multiple\" />\r\n <Export\r\n enabled={true}\r\n allowExportSelectedData={true}\r\n formats={exportFormats}\r\n />\r\n {props.selectOptions?.selectEnable && (\r\n <Selection\r\n mode={props.selectOptions?.mode ?? \"multiple\"}\r\n deferred={props.selectOptions?.deferred ?? true}\r\n />\r\n )}\r\n <ColumnChooser enabled={true} mode=\"select\">\r\n {!props.columnChooserPositionDisabled && (\r\n <Position\r\n my=\"right top\"\r\n at=\"right bottom\"\r\n of={\r\n document.querySelector(`.${props.dataGridPageName}`)\r\n ? `.${props.dataGridPageName} .dx-datagrid-column-chooser-button`\r\n : \".dx-datagrid-column-chooser-button\"\r\n }\r\n />\r\n )}\r\n <ColumnChooserSearch\r\n enabled={true}\r\n editorOptions={{ placeholder: \"\" }}\r\n />\r\n\r\n <ColumnChooserSelection\r\n allowSelectAll={true}\r\n selectByClick={true}\r\n recursive={true} />\r\n </ColumnChooser>\r\n <Toolbar>\r\n <DxItem name=\"searchPanel\" />\r\n <DxItem name=\"columnChooserButton\" cssClass='toolbarPanelItems' />\r\n <DxItem name=\"exportButton\" cssClass='toolbarPanelItems' />\r\n </Toolbar>\r\n <Summary calculateCustomSummary={renderTotal}>\r\n <TotalItem\r\n column={columns.current[0].dataField}\r\n summaryType=\"custom\"\r\n displayFormat={renderTotal()}\r\n />\r\n </Summary>\r\n <StateStoring\r\n enabled={true}\r\n type=\"custom\"\r\n customLoad={customLoad}\r\n customSave={customSave} >\r\n </StateStoring>\r\n </DataGrid>\r\n </React.Fragment >\r\n )\r\n}\r\n\r\nexport default OdsRemoteDataGrid;\r\n"],"names":["exportFormats","totalPageCount","loadedPageCount","totalRecordCount","useToken","theme","OdsRemoteDataGrid","props","token","data","setData","useState","fileName","dayjs","filteredRowCount","setFilteredRowCount","columns","useRef","gridRef","filterApplied","loading","setLoading","contentReady","setContentReady","scrollPosition","setScrollPosition","onCancelEditEvent","headers","useEffect","fetchData","newColumns","colItem","headerCellRenderr","jsx","Tooltip","InfoCircleOutlined","locale","loadMessages","checkSortingPropertyForInitilaize","cssRules","styleSheet","checkData","dataGridInstance","dataExists","gridElement","onOptionChanged","sortedColumn","p","column","index","fullName","gridEvent","checkRequestDataHasOnlySortingProperty","obj","keys","actionButtons","useMemo","useCallback","apiUrl","query","queryString","requestOptions","response","newData","newArray","prevData","getTotalCount","totalCount","onEditorPreparing","args","getServerSide","type","onExporting","workbook","Workbook","newColumnFromFilterData","filterItem","exportDataGridXls","options","gridCell","excelCell","date","offsetMinutes","sign","hours","minutes","formattedOffset","formattedDate","matchingItem","item","buffer","saveAs","doc","jsPDF","exportDataGrid","customLoad","state","customSave","onEditorPrepared","info","i","renderTotal","result","totalloaded","concatFilteredLabel","actionCellRender","cellData","kebabMenuButtons","button","DynamicIcon","event","customEvent","buttonElements","buttonItem","isVisible","OdsDataGrdiRowButton","OdsDropdown","React","onScrollEnd","handleScroll","debounce","e","scrollable","top","height","scrollHeight","maxHeight","reachedBottom","lastScrollTop","container","handleContentReady","filteredDataCount","onFilterValueChange","onToolbarPreparing","_","__","wrapper","createRoot","buttonGroupItem","OdsButton","isTextEmpty","OdsTitle","detailGrid","jsxs","DataGrid","col","Column","Lookup","HeaderFilter","multiLevelColItem","MasterDetail","Editing","Popup","Form","formItem","Item","subItem","Paging","Pager","Scrolling","LoadPanel","SearchPanel","FilterRow","FilterPanel","Sorting","Export","Selection","ColumnChooser","Position","ColumnChooserSearch","ColumnChooserSelection","Toolbar","DxItem","Summary","TotalItem","StateStoring"],"mappings":"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"}
@@ -2,13 +2,13 @@ import { jsxs as m, jsx as i } from "react/jsx-runtime";
2
2
  import J, { useRef as h, useState as u, useEffect as K, useCallback as C, useMemo as $ } from "react";
3
3
  import { DataGrid as Q, Lookup as X, Toolbar as Y } from "devextreme-react";
4
4
  import { Scrolling as Z, Paging as D, HeaderFilter as b, SearchPanel as I, FilterRow as ee, Column as T, Pager as te, ColumnChooser as ne, Position as oe, ColumnChooserSearch as ie, ColumnChooserSelection as ae, FilterPanel as le, Export as re, Item as S } from "devextreme-react/data-grid";
5
- import { useStyles as de } from "./OdsServerSideDatagrid.Style.js";
5
+ import de from "./OdsServerSideDatagrid.module.scss.js";
6
6
  import se from "../../antd/dropdown/OdsDropdown.js";
7
7
  import R from "../../antd/button/OdsDataGrdiRowButton.js";
8
8
  import ce from "../datagridUtils/DynamicIcon.js";
9
9
  import { ExportDataGridToExcel as ue } from "../../../utils/ExportDataGridtoExcel.js";
10
10
  const be = (t) => {
11
- const N = h(0), [F, z] = u(50), [E, L] = u(0), [s, A] = u(!1), [me, M] = u(0), [fe, U] = u(0), c = h(0), f = h(0), [W, G] = u(!1), O = h(null), { styles: k } = de();
11
+ const N = h(0), [F, z] = u(50), [E, L] = u(0), [s, A] = u(!1), [me, M] = u(0), [fe, U] = u(0), c = h(0), f = h(0), [W, G] = u(!1), O = h(null), k = de;
12
12
  K(() => {
13
13
  }, [
14
14
  W,
@@ -1 +1 @@
1
- {"version":3,"file":"OdsServerSideDatagrid.js","sources":["../../../../src/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.tsx"],"sourcesContent":["import React, {\r\n useCallback,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from \"react\";\r\nimport { DataGrid, Lookup, Toolbar } from \"devextreme-react\";\r\nimport {\r\n Item as DxItem,\r\n Column,\r\n FilterRow,\r\n HeaderFilter,\r\n Paging,\r\n Scrolling,\r\n Pager,\r\n Export,\r\n ColumnChooser,\r\n FilterPanel,\r\n ColumnChooserSearch,\r\n ColumnChooserSelection,\r\n Position,\r\n SearchPanel,\r\n} from \"devextreme-react/data-grid\";\r\nimport { useStyles } from \"./OdsServerSideDatagrid.Style\";\r\nimport { IVirtualDataGridProps } from \"./OdsServerSideDatagrid.Types\";\r\nimport OdsDropdown from \"../../antd/dropdown/OdsDropdown\";\r\nimport OdsDataGrdiRowButton from \"../../antd/button/OdsDataGrdiRowButton\";\r\nimport DynamicIcon from \"../datagridUtils/DynamicIcon\";\r\nimport { ExportDataGridToExcel } from \"../../../utils/ExportDataGridtoExcel\";\r\n\r\nconst OdsServerSideDatagrid = (props: IVirtualDataGridProps) => {\r\n const rowCount = useRef(0);\r\n const [currentPageSize, setCurrentPageSize] = useState(50);\r\n const [currentPage, setCurrentPage] = useState(0);\r\n const [filterApplied, setFilterApplied] = useState(false);\r\n // @ts-ignore\r\n const [totalUnfilteredCountState, setTotalUnfilteredCountState] = useState(0);\r\n // @ts-ignore\r\n const [totalFilteredCountState, setTotalFilteredCountState] = useState(0);\r\n const totalUnfilteredCount = useRef(0);\r\n const totalFilteredCount = useRef(0);\r\n const [updateTrigger, setUpdateTrigger] = useState(false);\r\n const lastPageIndexRef = useRef(null);\r\n const { styles: gridStyle } = useStyles();\r\n\r\n useEffect(() => {}, [\r\n updateTrigger,\r\n totalUnfilteredCount,\r\n totalFilteredCount,\r\n filterApplied,\r\n ]);\r\n\r\n const renderTotal = useCallback(() => {\r\n const totalLoaded = filterApplied\r\n ? totalFilteredCount.current\r\n : totalUnfilteredCount.current;\r\n const loadedPage = currentPage;\r\n const totalRecords = props.totalRecordCount;\r\n const totalPageCount = Math.ceil(totalRecords / currentPageSize);\r\n\r\n if (totalLoaded === 0 || totalLoaded === -1) {\r\n return \"\";\r\n }\r\n\r\n let filteredDisplayText = filterApplied\r\n ? `${totalLoaded} ${props.customSummary?.summaryFilteredDataLabel} - `\r\n : \"\";\r\n\r\n let loadedDisplayText = `${totalUnfilteredCount.current} ${props.customSummary?.summaryLoadedDataLabel} - `;\r\n\r\n let result;\r\n if (props.isClientSideOperation) {\r\n result = `${filteredDisplayText}${props.customSummary?.summaryTotalDataLabel} : ${totalRecords} `;\r\n } else {\r\n result = `${filteredDisplayText}${loadedDisplayText}${totalRecords} ${props.customSummary?.summaryTotalDataLabel}`;\r\n result += ` - ${props.customSummary?.summaryTotalPageCountLabel} ${loadedPage} / ${totalPageCount}`;\r\n }\r\n\r\n return result;\r\n }, [\r\n currentPage,\r\n currentPageSize,\r\n filterApplied,\r\n props.customSummary,\r\n props.totalRecordCount,\r\n totalUnfilteredCount,\r\n props.dataSource,\r\n props.dataGridRef?.dataGridInstance?.getDataSource()?.items()?.length,\r\n ]);\r\n\r\n const handleContentReady = useCallback(\r\n (e) => {\r\n const dataGridInstance = e.component;\r\n const currentPageIndex = dataGridInstance.pageCount(); //dataGridInstance.pageIndex();\r\n\r\n const currentTotalCount =\r\n currentPageIndex == 0 ? 50 : dataGridInstance.totalCount();\r\n const newData = dataGridInstance?.getDataSource()?.items();\r\n\r\n if (filterApplied) {\r\n setTotalFilteredCountState(currentTotalCount);\r\n totalFilteredCount.current = currentTotalCount;\r\n } else {\r\n setTotalUnfilteredCountState(currentTotalCount);\r\n totalUnfilteredCount.current = currentTotalCount;\r\n }\r\n\r\n renderTotal();\r\n if (\r\n ((!filterApplied &&\r\n currentPageIndex == 1 &&\r\n currentTotalCount != totalUnfilteredCount.current) ||\r\n lastPageIndexRef.current !== currentPageIndex) &&\r\n newData &&\r\n newData.length > 0\r\n ) {\r\n setCurrentPage(currentPageIndex);\r\n setCurrentPageSize(dataGridInstance.pageSize());\r\n rowCount.current = currentTotalCount;\r\n\r\n setUpdateTrigger((prev) => !prev);\r\n lastPageIndexRef.current = currentPageIndex;\r\n }\r\n },\r\n [props.columns, filterApplied]\r\n );\r\n\r\n const handleOptionChanged = useCallback(\r\n (e) => {\r\n if (props.dataGridRef.current === null) {\r\n return;\r\n }\r\n const dataGrid = props.dataGridRef.current?.instance?.();\r\n \r\n const updateFilterStatus = () => {\r\n const filters = dataGrid?.getCombinedFilter(true);\r\n const active = filters && filters.length > 0;\r\n setFilterApplied(active);\r\n return active;\r\n };\r\n\r\n if (e.fullName.includes(\"sortOrder\")) {\r\n dataGrid?.getScrollable().scrollTo(0);\r\n // setHeaderFilterData([]);\r\n }\r\n\r\n if (\r\n e.fullName.includes(\"filterValue\") ||\r\n e.fullName.includes(\"filter\") ||\r\n e.fullName === \"searchPanel.text\"\r\n ) {\r\n const active = updateFilterStatus();\r\n\r\n if (active) {\r\n setTimeout(() => {\r\n dataGrid?.refresh().done(() => {\r\n totalFilteredCount.current = dataGrid?.totalCount();\r\n setUpdateTrigger((prev) => !prev);\r\n });\r\n }, 0);\r\n }\r\n }\r\n\r\n if (props.sortingProps && props.sortingProps.onOptionChanged) {\r\n props.sortingProps.onOptionChanged(e);\r\n }\r\n },\r\n [props.dataGridRef]\r\n );\r\n\r\n const handleSelectionChanged = (event) => {\r\n props.onSelectionChanged && props.onSelectionChanged(event);\r\n };\r\n\r\n const actionButtons = useMemo(() => {\r\n if (props.actionButtonGroup) {\r\n if (props.actionButtonGroup.length > 3 && !props.edit) {\r\n return props.actionButtonGroup.slice(0, 2);\r\n } else {\r\n return props.actionButtonGroup;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }, [props.actionButtonGroup]);\r\n\r\n const onEditorPrepared = useCallback((info) => {\r\n if (\r\n info.parentType === \"filterRow\" &&\r\n info.editorName === \"dxSelectBox\" &&\r\n info.dataField === \"IsActive\"\r\n ) {\r\n if (info.dataSource != null && info.dataSource.length > 0) {\r\n info.showAllText = info.dataSource.find((i) => {\r\n return i.value === null;\r\n }).label;\r\n info.trueText = info.dataSource.find((i) => {\r\n return i.value === true;\r\n }).label;\r\n info.falseText = info.dataSource.find((i) => {\r\n return i.value === false;\r\n }).label;\r\n }\r\n }\r\n }, []);\r\n\r\n function actionCellRender(cellData, props) {\r\n const kebabMenuButtons =\r\n props.actionButtonGroup &&\r\n props.actionButtonGroup.length > 3 &&\r\n !props.edit\r\n ? props.actionButtonGroup.slice(2).map((button) => {\r\n if (button.elementType === \"element\" && button.element) {\r\n return {\r\n icon: button.element,\r\n };\r\n } else {\r\n return {\r\n icon: button.icon,\r\n onClick: (event) => {\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row,\r\n };\r\n button.onClick(customEvent);\r\n },\r\n };\r\n }\r\n })\r\n : [];\r\n\r\n const buttonElements = [];\r\n\r\n {\r\n !props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible =\r\n typeof buttonItem.visible === \"function\"\r\n ? buttonItem.visible({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.visible;\r\n\r\n const isDisabled =\r\n typeof buttonItem.disabled === \"function\"\r\n ? buttonItem.disabled({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.disabled;\r\n\r\n const permissionDisabled =\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission;\r\n\r\n const finalDisabled = isDisabled || permissionDisabled;\r\n\r\n if (buttonItem.elementType === \"element\" && buttonItem.element) {\r\n buttonElements.push(buttonItem.element);\r\n } else {\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={finalDisabled}\r\n icon={buttonItem.icon}\r\n {...(props.actionButtonsTooltipType === \"styled\" && {\r\n tooltip: buttonItem.hint,\r\n })}\r\n onClick={(event) => {\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row,\r\n };\r\n buttonItem.onClick(customEvent);\r\n }}\r\n />\r\n );\r\n }\r\n });\r\n }\r\n {\r\n props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible =\r\n typeof buttonItem.visible === \"function\"\r\n ? buttonItem.visible({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.visible;\r\n\r\n const isDisabled =\r\n typeof buttonItem.disabled === \"function\"\r\n ? buttonItem.disabled({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.disabled;\r\n\r\n const permissionDisabled =\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission;\r\n\r\n const finalDisabled = isDisabled || permissionDisabled;\r\n\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n name={buttonItem.name}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={finalDisabled}\r\n icon={buttonItem.icon}\r\n {...(props.actionButtonsTooltipType === \"styled\" && {\r\n tooltip: buttonItem.hint,\r\n })}\r\n onClick={(event) => {\r\n if (buttonItem.onClick) {\r\n // event.preventDefault();\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row,\r\n };\r\n buttonItem.onClick(customEvent);\r\n }\r\n }}\r\n />\r\n );\r\n });\r\n }\r\n\r\n if (kebabMenuButtons.length > 0) {\r\n buttonElements.push(\r\n <OdsDropdown\r\n key={`dropdown-${cellData.rowIndex || cellData.data.ID}`}\r\n menuItems={kebabMenuButtons}\r\n >\r\n <OdsDataGrdiRowButton\r\n type=\"text\"\r\n icon={<DynamicIcon iconName={\"kebabMenu\"} />}\r\n />\r\n </OdsDropdown>\r\n );\r\n }\r\n\r\n return <React.Fragment><div className=\"flex flex-row gap-4 justify-center items-center\">{buttonElements}</div></React.Fragment>;\r\n }\r\n\r\n const remoteOperations = useMemo(() => {\r\n if (props.isClientSideOperation) {\r\n return false;\r\n }\r\n\r\n return props.remoteOperations ?? true;\r\n }, [props.isClientSideOperation, props.remoteOperations]);\r\n\r\n return (\r\n <div>\r\n <DataGrid\r\n dataSource={props.dataSource}\r\n showBorders={true}\r\n repaintChangesOnly={true}\r\n allowColumnReordering={true}\r\n remoteOperations={remoteOperations}\r\n columnAutoWidth={false}\r\n wordWrapEnabled={props.wordWrapEnabled ? props.wordWrapEnabled : false}\r\n columnFixing={{ enabled: true }}\r\n focusedRowEnabled={false}\r\n onEditorPrepared={onEditorPrepared}\r\n onRowClick={props.onRowClick}\r\n onCellClick={(e) => {\r\n if (e.rowType != \"header\") {\r\n e.cellElement.style.backgroundColor = \"transparent\";\r\n }\r\n }}\r\n allowColumnResizing={true}\r\n columnResizingMode={props.columnResizingMode ?? \"widget\"}\r\n showRowLines={true}\r\n filterSyncEnabled={true}\r\n syncLookupFilterValues={true}\r\n height={\r\n props.height == undefined ? window.innerHeight - 164 : props.height\r\n }\r\n selection={\r\n props.selection ?? {\r\n mode: \"multiple\",\r\n selectAllMode: \"page\",\r\n }\r\n }\r\n noDataText={props.noDataText}\r\n {...props.sortingProps}\r\n export={props.exportProps}\r\n className={gridStyle.grid}\r\n onExporting={(e) =>\r\n ExportDataGridToExcel({\r\n gridComponent: e.component,\r\n baseFileName: props.exportProps.fileName,\r\n selectedText: props.exportProps.selectedText,\r\n getSummary: renderTotal,\r\n selectedRowsOnly: e.selectedRowsOnly,\r\n activeText: props.exportProps.activeText ?? \"Active\",\r\n passiveText: props.exportProps.passiveText ?? \"Passive\",\r\n })\r\n }\r\n onContentReady={handleContentReady}\r\n onOptionChanged={handleOptionChanged}\r\n onSelectionChanged={handleSelectionChanged}\r\n width=\"100%\"\r\n language={props.language}\r\n onToolbarPreparing={props.onToolbarPreparing}\r\n ref={props.dataGridRef}\r\n >\r\n <Scrolling\r\n mode={props.isClientSideOperation ? \"virtual\" : \"infinite\"}\r\n preloadEnabled={true}\r\n />\r\n {!props.isClientSideOperation && (\r\n <Paging enabled={true} defaultPageSize={props.pageSize} />\r\n )}\r\n\r\n <HeaderFilter visible={true} />\r\n <SearchPanel visible={true} />\r\n <FilterRow\r\n visible={props.isFilterRow != undefined ? props.isFilterRow : true}\r\n />\r\n\r\n {props.columns.map((col: any) => (\r\n <Column\r\n key={col.dataField}\r\n {...col}\r\n minWidth={10}\r\n width={props.isColumnWidthFixed === true ? 160 : undefined}\r\n >\r\n {col.lookUp && <Lookup {...col.lookUp} />}\r\n {col.dataField === \"IsActive\" && (\r\n <HeaderFilter\r\n dataSource={[\r\n { text: \"Active\", value: true },\r\n { text: \"Passive\", value: false },\r\n ]}\r\n />\r\n )}\r\n\r\n {col.headerFilter && (\r\n <HeaderFilter {...col.headerFilter} visible={true} />\r\n )}\r\n {col.multiLevelColumns &&\r\n col.multiLevelColumns.map((multiLevelColItem: any) => (\r\n <Column\r\n dataField={multiLevelColItem.dataField}\r\n caption={multiLevelColItem.caption}\r\n width={80}\r\n />\r\n ))}\r\n </Column>\r\n ))}\r\n\r\n {props.actionColumnEnable !== undefined &&\r\n props.actionColumnEnable === true && (\r\n <Column\r\n dataField=\"Actions\"\r\n caption=\"\"\r\n fixed={true}\r\n allowSorting={false}\r\n type=\"buttons\"\r\n showInColumnChooser={false}\r\n cellRender={(cellData) => actionCellRender(cellData, props)}\r\n />\r\n )}\r\n\r\n <Pager\r\n visible={props.pagerProps?.visible ?? true}\r\n showPageSizeSelector={props.pagerProps?.showPageSizeSelector ?? true}\r\n showInfo={props.pagerProps?.showInfo ?? true}\r\n displayMode={props.pagerProps?.displayMode ?? \"full\"}\r\n infoText={props.pagerProps?.infoText ?? \"Loaded {0} of {1} items\"}\r\n />\r\n <ColumnChooser enabled={true} mode=\"select\">\r\n {!props.columnChooserPositionDisabled && (\r\n <Position\r\n my=\"right top\"\r\n at=\"right bottom\"\r\n of={\r\n document.querySelector(`.${props.dataGridPageName}`)\r\n ? `.${props.dataGridPageName} .dx-datagrid-column-chooser-button`\r\n : \".dx-datagrid-column-chooser-button\"\r\n }\r\n />\r\n )}\r\n <ColumnChooserSearch\r\n enabled={true}\r\n editorOptions={{ placeholder: \"\" }}\r\n />\r\n\r\n <ColumnChooserSelection\r\n allowSelectAll={true}\r\n selectByClick={true}\r\n recursive={true}\r\n />\r\n </ColumnChooser>\r\n <FilterPanel visible={props.isFilterPanel} />\r\n {props.exportProps?.enabled && (\r\n <Export\r\n enabled={props.exportProps.enabled}\r\n allowExportSelectedData={props.exportProps.allowExportSelectedData}\r\n />\r\n )}\r\n <Toolbar>\r\n <DxItem name=\"searchPanel\" />\r\n <DxItem name=\"columnChooserButton\" cssClass=\"toolbarPanelItems\" />\r\n <DxItem name=\"exportButton\" cssClass=\"toolbarPanelItems\" />\r\n <DxItem name=\"exportButton\" cssClass=\"toolbarPanelItems\" />\r\n </Toolbar>\r\n </DataGrid>\r\n {renderTotal() && (\r\n <div className={gridStyle.gridCustomSummary}>\r\n <p>{renderTotal()}</p>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default OdsServerSideDatagrid;\r\n"],"names":["OdsServerSideDatagrid","props","rowCount","useRef","currentPageSize","setCurrentPageSize","useState","currentPage","setCurrentPage","filterApplied","setFilterApplied","totalUnfilteredCountState","setTotalUnfilteredCountState","totalFilteredCountState","setTotalFilteredCountState","totalUnfilteredCount","totalFilteredCount","updateTrigger","setUpdateTrigger","lastPageIndexRef","gridStyle","useStyles","useEffect","renderTotal","useCallback","totalLoaded","loadedPage","totalRecords","totalPageCount","filteredDisplayText","loadedDisplayText","result","handleContentReady","dataGridInstance","currentPageIndex","currentTotalCount","newData","prev","handleOptionChanged","dataGrid","updateFilterStatus","filters","active","handleSelectionChanged","event","actionButtons","useMemo","onEditorPrepared","info","i","actionCellRender","cellData","kebabMenuButtons","button","customEvent","buttonElements","buttonItem","index","isVisible","isDisabled","permissionDisabled","finalDisabled","jsx","OdsDataGrdiRowButton","OdsDropdown","DynamicIcon","React","remoteOperations","jsxs","DataGrid","ExportDataGridToExcel","Scrolling","Paging","HeaderFilter","SearchPanel","FilterRow","col","Column","Lookup","multiLevelColItem","Pager","ColumnChooser","Position","ColumnChooserSearch","ColumnChooserSelection","FilterPanel","Export","Toolbar","DxItem"],"mappings":"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"}
1
+ {"version":3,"file":"OdsServerSideDatagrid.js","sources":["../../../../src/components/devextreme/OdsServerSideDatagrid/OdsServerSideDatagrid.tsx"],"sourcesContent":["import React, {\r\n useCallback,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from \"react\";\r\nimport { DataGrid, Lookup, Toolbar } from \"devextreme-react\";\r\nimport {\r\n Item as DxItem,\r\n Column,\r\n FilterRow,\r\n HeaderFilter,\r\n Paging,\r\n Scrolling,\r\n Pager,\r\n Export,\r\n ColumnChooser,\r\n FilterPanel,\r\n ColumnChooserSearch,\r\n ColumnChooserSelection,\r\n Position,\r\n SearchPanel,\r\n} from \"devextreme-react/data-grid\";\r\nimport styles from \"./OdsServerSideDatagrid.module.scss\";\r\nimport { IVirtualDataGridProps } from \"./OdsServerSideDatagrid.Types\";\r\nimport OdsDropdown from \"../../antd/dropdown/OdsDropdown\";\r\nimport OdsDataGrdiRowButton from \"../../antd/button/OdsDataGrdiRowButton\";\r\nimport DynamicIcon from \"../datagridUtils/DynamicIcon\";\r\nimport { ExportDataGridToExcel } from \"../../../utils/ExportDataGridtoExcel\";\r\n\r\nconst OdsServerSideDatagrid = (props: IVirtualDataGridProps) => {\r\n const rowCount = useRef(0);\r\n const [currentPageSize, setCurrentPageSize] = useState(50);\r\n const [currentPage, setCurrentPage] = useState(0);\r\n const [filterApplied, setFilterApplied] = useState(false);\r\n const [totalUnfilteredCountState, setTotalUnfilteredCountState] = useState(0);\r\n const [totalFilteredCountState, setTotalFilteredCountState] = useState(0);\r\n const totalUnfilteredCount = useRef(0);\r\n const totalFilteredCount = useRef(0);\r\n const [updateTrigger, setUpdateTrigger] = useState(false);\r\n const lastPageIndexRef = useRef(null);\r\n const gridStyle = styles;\r\n\r\n useEffect(() => {}, [\r\n updateTrigger,\r\n totalUnfilteredCount,\r\n totalFilteredCount,\r\n filterApplied,\r\n ]);\r\n\r\n const renderTotal = useCallback(() => {\r\n const totalLoaded = filterApplied\r\n ? totalFilteredCount.current\r\n : totalUnfilteredCount.current;\r\n const loadedPage = currentPage;\r\n const totalRecords = props.totalRecordCount;\r\n const totalPageCount = Math.ceil(totalRecords / currentPageSize);\r\n\r\n if (totalLoaded === 0 || totalLoaded === -1) {\r\n return \"\";\r\n }\r\n\r\n let filteredDisplayText = filterApplied\r\n ? `${totalLoaded} ${props.customSummary?.summaryFilteredDataLabel} - `\r\n : \"\";\r\n\r\n let loadedDisplayText = `${totalUnfilteredCount.current} ${props.customSummary?.summaryLoadedDataLabel} - `;\r\n\r\n let result;\r\n if (props.isClientSideOperation) {\r\n result = `${filteredDisplayText}${props.customSummary?.summaryTotalDataLabel} : ${totalRecords} `;\r\n } else {\r\n result = `${filteredDisplayText}${loadedDisplayText}${totalRecords} ${props.customSummary?.summaryTotalDataLabel}`;\r\n result += ` - ${props.customSummary?.summaryTotalPageCountLabel} ${loadedPage} / ${totalPageCount}`;\r\n }\r\n\r\n return result;\r\n }, [\r\n currentPage,\r\n currentPageSize,\r\n filterApplied,\r\n props.customSummary,\r\n props.totalRecordCount,\r\n totalUnfilteredCount,\r\n props.dataSource,\r\n props.dataGridRef?.dataGridInstance?.getDataSource()?.items()?.length,\r\n ]);\r\n\r\n const handleContentReady = useCallback(\r\n (e) => {\r\n const dataGridInstance = e.component;\r\n const currentPageIndex = dataGridInstance.pageCount();\r\n\r\n const currentTotalCount =\r\n currentPageIndex == 0 ? 50 : dataGridInstance.totalCount();\r\n const newData = dataGridInstance?.getDataSource()?.items();\r\n\r\n if (filterApplied) {\r\n setTotalFilteredCountState(currentTotalCount);\r\n totalFilteredCount.current = currentTotalCount;\r\n } else {\r\n setTotalUnfilteredCountState(currentTotalCount);\r\n totalUnfilteredCount.current = currentTotalCount;\r\n }\r\n\r\n renderTotal();\r\n if (\r\n ((!filterApplied &&\r\n currentPageIndex == 1 &&\r\n currentTotalCount != totalUnfilteredCount.current) ||\r\n lastPageIndexRef.current !== currentPageIndex) &&\r\n newData &&\r\n newData.length > 0\r\n ) {\r\n setCurrentPage(currentPageIndex);\r\n setCurrentPageSize(dataGridInstance.pageSize());\r\n rowCount.current = currentTotalCount;\r\n\r\n setUpdateTrigger((prev) => !prev);\r\n lastPageIndexRef.current = currentPageIndex;\r\n }\r\n },\r\n [props.columns, filterApplied]\r\n );\r\n\r\n const handleOptionChanged = useCallback(\r\n (e) => {\r\n if (props.dataGridRef.current === null) {\r\n return;\r\n }\r\n const dataGrid = props.dataGridRef.current?.instance?.();\r\n \r\n const updateFilterStatus = () => {\r\n const filters = dataGrid?.getCombinedFilter(true);\r\n const active = filters && filters.length > 0;\r\n setFilterApplied(active);\r\n return active;\r\n };\r\n\r\n if (e.fullName.includes(\"sortOrder\")) {\r\n dataGrid?.getScrollable().scrollTo(0);\r\n }\r\n\r\n if (\r\n e.fullName.includes(\"filterValue\") ||\r\n e.fullName.includes(\"filter\") ||\r\n e.fullName === \"searchPanel.text\"\r\n ) {\r\n const active = updateFilterStatus();\r\n\r\n if (active) {\r\n setTimeout(() => {\r\n dataGrid?.refresh().done(() => {\r\n totalFilteredCount.current = dataGrid?.totalCount();\r\n setUpdateTrigger((prev) => !prev);\r\n });\r\n }, 0);\r\n }\r\n }\r\n\r\n if (props.sortingProps && props.sortingProps.onOptionChanged) {\r\n props.sortingProps.onOptionChanged(e);\r\n }\r\n },\r\n [props.dataGridRef]\r\n );\r\n\r\n const handleSelectionChanged = (event) => {\r\n props.onSelectionChanged && props.onSelectionChanged(event);\r\n };\r\n\r\n const actionButtons = useMemo(() => {\r\n if (props.actionButtonGroup) {\r\n if (props.actionButtonGroup.length > 3 && !props.edit) {\r\n return props.actionButtonGroup.slice(0, 2);\r\n } else {\r\n return props.actionButtonGroup;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }, [props.actionButtonGroup]);\r\n\r\n const onEditorPrepared = useCallback((info) => {\r\n if (\r\n info.parentType === \"filterRow\" &&\r\n info.editorName === \"dxSelectBox\" &&\r\n info.dataField === \"IsActive\"\r\n ) {\r\n if (info.dataSource != null && info.dataSource.length > 0) {\r\n info.showAllText = info.dataSource.find((i) => {\r\n return i.value === null;\r\n }).label;\r\n info.trueText = info.dataSource.find((i) => {\r\n return i.value === true;\r\n }).label;\r\n info.falseText = info.dataSource.find((i) => {\r\n return i.value === false;\r\n }).label;\r\n }\r\n }\r\n }, []);\r\n\r\n function actionCellRender(cellData, props) {\r\n const kebabMenuButtons =\r\n props.actionButtonGroup &&\r\n props.actionButtonGroup.length > 3 &&\r\n !props.edit\r\n ? props.actionButtonGroup.slice(2).map((button) => {\r\n if (button.elementType === \"element\" && button.element) {\r\n return {\r\n icon: button.element,\r\n };\r\n } else {\r\n return {\r\n icon: button.icon,\r\n onClick: (event) => {\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row,\r\n };\r\n button.onClick(customEvent);\r\n },\r\n };\r\n }\r\n })\r\n : [];\r\n\r\n const buttonElements = [];\r\n\r\n {\r\n !props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible =\r\n typeof buttonItem.visible === \"function\"\r\n ? buttonItem.visible({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.visible;\r\n\r\n const isDisabled =\r\n typeof buttonItem.disabled === \"function\"\r\n ? buttonItem.disabled({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.disabled;\r\n\r\n const permissionDisabled =\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission;\r\n\r\n const finalDisabled = isDisabled || permissionDisabled;\r\n\r\n if (buttonItem.elementType === \"element\" && buttonItem.element) {\r\n buttonElements.push(buttonItem.element);\r\n } else {\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={finalDisabled}\r\n icon={buttonItem.icon}\r\n {...(props.actionButtonsTooltipType === \"styled\" && {\r\n tooltip: buttonItem.hint,\r\n })}\r\n onClick={(event) => {\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row,\r\n };\r\n buttonItem.onClick(customEvent);\r\n }}\r\n />\r\n );\r\n }\r\n });\r\n }\r\n {\r\n props.edit &&\r\n actionButtons.forEach((buttonItem, index) => {\r\n const isVisible =\r\n typeof buttonItem.visible === \"function\"\r\n ? buttonItem.visible({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.visible;\r\n\r\n const isDisabled =\r\n typeof buttonItem.disabled === \"function\"\r\n ? buttonItem.disabled({\r\n column: cellData.column,\r\n component: cellData.component,\r\n row: cellData.row,\r\n })\r\n : buttonItem.disabled;\r\n\r\n const permissionDisabled =\r\n buttonItem.actionPermission === undefined\r\n ? false\r\n : !buttonItem.actionPermission;\r\n\r\n const finalDisabled = isDisabled || permissionDisabled;\r\n\r\n buttonElements.push(\r\n <OdsDataGrdiRowButton\r\n key={`action-button-${index}`}\r\n name={buttonItem.name}\r\n hint={buttonItem.hint}\r\n visible={isVisible}\r\n size=\"small\"\r\n type=\"text\"\r\n disabled={finalDisabled}\r\n icon={buttonItem.icon}\r\n {...(props.actionButtonsTooltipType === \"styled\" && {\r\n tooltip: buttonItem.hint,\r\n })}\r\n onClick={(event) => {\r\n if (buttonItem.onClick) {\r\n const customEvent = {\r\n column: cellData.column,\r\n component: cellData.component,\r\n element: cellData.element,\r\n event: event,\r\n model: cellData.data,\r\n row: cellData.row,\r\n };\r\n buttonItem.onClick(customEvent);\r\n }\r\n }}\r\n />\r\n );\r\n });\r\n }\r\n\r\n if (kebabMenuButtons.length > 0) {\r\n buttonElements.push(\r\n <OdsDropdown\r\n key={`dropdown-${cellData.rowIndex || cellData.data.ID}`}\r\n menuItems={kebabMenuButtons}\r\n >\r\n <OdsDataGrdiRowButton\r\n type=\"text\"\r\n icon={<DynamicIcon iconName={\"kebabMenu\"} />}\r\n />\r\n </OdsDropdown>\r\n );\r\n }\r\n\r\n return <React.Fragment><div className=\"flex flex-row gap-4 justify-center items-center\">{buttonElements}</div></React.Fragment>;\r\n }\r\n\r\n const remoteOperations = useMemo(() => {\r\n if (props.isClientSideOperation) {\r\n return false;\r\n }\r\n\r\n return props.remoteOperations ?? true;\r\n }, [props.isClientSideOperation, props.remoteOperations]);\r\n\r\n return (\r\n <div>\r\n <DataGrid\r\n dataSource={props.dataSource}\r\n showBorders={true}\r\n repaintChangesOnly={true}\r\n allowColumnReordering={true}\r\n remoteOperations={remoteOperations}\r\n columnAutoWidth={false}\r\n wordWrapEnabled={props.wordWrapEnabled ? props.wordWrapEnabled : false}\r\n columnFixing={{ enabled: true }}\r\n focusedRowEnabled={false}\r\n onEditorPrepared={onEditorPrepared}\r\n onRowClick={props.onRowClick}\r\n onCellClick={(e) => {\r\n if (e.rowType != \"header\") {\r\n e.cellElement.style.backgroundColor = \"transparent\";\r\n }\r\n }}\r\n allowColumnResizing={true}\r\n columnResizingMode={props.columnResizingMode ?? \"widget\"}\r\n showRowLines={true}\r\n filterSyncEnabled={true}\r\n syncLookupFilterValues={true}\r\n height={\r\n props.height == undefined ? window.innerHeight - 164 : props.height\r\n }\r\n selection={\r\n props.selection ?? {\r\n mode: \"multiple\",\r\n selectAllMode: \"page\",\r\n }\r\n }\r\n noDataText={props.noDataText}\r\n {...props.sortingProps}\r\n export={props.exportProps}\r\n className={gridStyle.grid}\r\n onExporting={(e) =>\r\n ExportDataGridToExcel({\r\n gridComponent: e.component,\r\n baseFileName: props.exportProps.fileName,\r\n selectedText: props.exportProps.selectedText,\r\n getSummary: renderTotal,\r\n selectedRowsOnly: e.selectedRowsOnly,\r\n activeText: props.exportProps.activeText ?? \"Active\",\r\n passiveText: props.exportProps.passiveText ?? \"Passive\",\r\n })\r\n }\r\n onContentReady={handleContentReady}\r\n onOptionChanged={handleOptionChanged}\r\n onSelectionChanged={handleSelectionChanged}\r\n width=\"100%\"\r\n language={props.language}\r\n onToolbarPreparing={props.onToolbarPreparing}\r\n ref={props.dataGridRef}\r\n >\r\n <Scrolling\r\n mode={props.isClientSideOperation ? \"virtual\" : \"infinite\"}\r\n preloadEnabled={true}\r\n />\r\n {!props.isClientSideOperation && (\r\n <Paging enabled={true} defaultPageSize={props.pageSize} />\r\n )}\r\n\r\n <HeaderFilter visible={true} />\r\n <SearchPanel visible={true} />\r\n <FilterRow\r\n visible={props.isFilterRow != undefined ? props.isFilterRow : true}\r\n />\r\n\r\n {props.columns.map((col: any) => (\r\n <Column\r\n key={col.dataField}\r\n {...col}\r\n minWidth={10}\r\n width={props.isColumnWidthFixed === true ? 160 : undefined}\r\n >\r\n {col.lookUp && <Lookup {...col.lookUp} />}\r\n {col.dataField === \"IsActive\" && (\r\n <HeaderFilter\r\n dataSource={[\r\n { text: \"Active\", value: true },\r\n { text: \"Passive\", value: false },\r\n ]}\r\n />\r\n )}\r\n\r\n {col.headerFilter && (\r\n <HeaderFilter {...col.headerFilter} visible={true} />\r\n )}\r\n {col.multiLevelColumns &&\r\n col.multiLevelColumns.map((multiLevelColItem: any) => (\r\n <Column\r\n dataField={multiLevelColItem.dataField}\r\n caption={multiLevelColItem.caption}\r\n width={80}\r\n />\r\n ))}\r\n </Column>\r\n ))}\r\n\r\n {props.actionColumnEnable !== undefined &&\r\n props.actionColumnEnable === true && (\r\n <Column\r\n dataField=\"Actions\"\r\n caption=\"\"\r\n fixed={true}\r\n allowSorting={false}\r\n type=\"buttons\"\r\n showInColumnChooser={false}\r\n cellRender={(cellData) => actionCellRender(cellData, props)}\r\n />\r\n )}\r\n\r\n <Pager\r\n visible={props.pagerProps?.visible ?? true}\r\n showPageSizeSelector={props.pagerProps?.showPageSizeSelector ?? true}\r\n showInfo={props.pagerProps?.showInfo ?? true}\r\n displayMode={props.pagerProps?.displayMode ?? \"full\"}\r\n infoText={props.pagerProps?.infoText ?? \"Loaded {0} of {1} items\"}\r\n />\r\n <ColumnChooser enabled={true} mode=\"select\">\r\n {!props.columnChooserPositionDisabled && (\r\n <Position\r\n my=\"right top\"\r\n at=\"right bottom\"\r\n of={\r\n document.querySelector(`.${props.dataGridPageName}`)\r\n ? `.${props.dataGridPageName} .dx-datagrid-column-chooser-button`\r\n : \".dx-datagrid-column-chooser-button\"\r\n }\r\n />\r\n )}\r\n <ColumnChooserSearch\r\n enabled={true}\r\n editorOptions={{ placeholder: \"\" }}\r\n />\r\n\r\n <ColumnChooserSelection\r\n allowSelectAll={true}\r\n selectByClick={true}\r\n recursive={true}\r\n />\r\n </ColumnChooser>\r\n <FilterPanel visible={props.isFilterPanel} />\r\n {props.exportProps?.enabled && (\r\n <Export\r\n enabled={props.exportProps.enabled}\r\n allowExportSelectedData={props.exportProps.allowExportSelectedData}\r\n />\r\n )}\r\n <Toolbar>\r\n <DxItem name=\"searchPanel\" />\r\n <DxItem name=\"columnChooserButton\" cssClass=\"toolbarPanelItems\" />\r\n <DxItem name=\"exportButton\" cssClass=\"toolbarPanelItems\" />\r\n <DxItem name=\"exportButton\" cssClass=\"toolbarPanelItems\" />\r\n </Toolbar>\r\n </DataGrid>\r\n {renderTotal() && (\r\n <div className={gridStyle.gridCustomSummary}>\r\n <p>{renderTotal()}</p>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default OdsServerSideDatagrid;\r\n"],"names":["OdsServerSideDatagrid","props","rowCount","useRef","currentPageSize","setCurrentPageSize","useState","currentPage","setCurrentPage","filterApplied","setFilterApplied","totalUnfilteredCountState","setTotalUnfilteredCountState","totalFilteredCountState","setTotalFilteredCountState","totalUnfilteredCount","totalFilteredCount","updateTrigger","setUpdateTrigger","lastPageIndexRef","gridStyle","styles","useEffect","renderTotal","useCallback","totalLoaded","loadedPage","totalRecords","totalPageCount","filteredDisplayText","loadedDisplayText","result","handleContentReady","dataGridInstance","currentPageIndex","currentTotalCount","newData","prev","handleOptionChanged","dataGrid","updateFilterStatus","filters","active","handleSelectionChanged","event","actionButtons","useMemo","onEditorPrepared","info","i","actionCellRender","cellData","kebabMenuButtons","button","customEvent","buttonElements","buttonItem","index","isVisible","isDisabled","permissionDisabled","finalDisabled","jsx","OdsDataGrdiRowButton","OdsDropdown","DynamicIcon","React","remoteOperations","jsxs","DataGrid","ExportDataGridToExcel","Scrolling","Paging","HeaderFilter","SearchPanel","FilterRow","col","Column","Lookup","multiLevelColItem","Pager","ColumnChooser","Position","ColumnChooserSearch","ColumnChooserSelection","FilterPanel","Export","Toolbar","DxItem"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ const r = "OdsServerSideDatagrid-module__grid___zNBYr", d = "OdsServerSideDatagrid-module__gridCustomSummary___CxKcl", e = {
2
+ grid: r,
3
+ gridCustomSummary: d
4
+ };
5
+ export {
6
+ e as default,
7
+ r as grid,
8
+ d as gridCustomSummary
9
+ };
10
+ //# sourceMappingURL=OdsServerSideDatagrid.module.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OdsServerSideDatagrid.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}