devextreme-react 25.2.2-beta → 25.2.4

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 (358) hide show
  1. package/cjs/accordion.d.ts +3 -3
  2. package/cjs/accordion.js +3 -3
  3. package/cjs/action-sheet.d.ts +3 -3
  4. package/cjs/action-sheet.js +3 -3
  5. package/cjs/autocomplete.d.ts +3 -3
  6. package/cjs/autocomplete.js +3 -3
  7. package/cjs/bar-gauge.d.ts +3 -3
  8. package/cjs/bar-gauge.js +3 -3
  9. package/cjs/box.d.ts +3 -3
  10. package/cjs/box.js +3 -3
  11. package/cjs/bullet.d.ts +3 -3
  12. package/cjs/bullet.js +3 -3
  13. package/cjs/button-group.d.ts +3 -3
  14. package/cjs/button-group.js +3 -3
  15. package/cjs/button.d.ts +3 -3
  16. package/cjs/button.js +3 -3
  17. package/cjs/calendar.d.ts +3 -3
  18. package/cjs/calendar.js +3 -3
  19. package/cjs/card-view.d.ts +12 -12
  20. package/cjs/card-view.js +4 -4
  21. package/cjs/chart.d.ts +3 -3
  22. package/cjs/chart.js +3 -3
  23. package/cjs/chat.d.ts +3 -3
  24. package/cjs/chat.js +3 -3
  25. package/cjs/check-box.d.ts +3 -3
  26. package/cjs/check-box.js +3 -3
  27. package/cjs/circular-gauge.d.ts +3 -3
  28. package/cjs/circular-gauge.js +3 -3
  29. package/cjs/color-box.d.ts +3 -3
  30. package/cjs/color-box.js +3 -3
  31. package/cjs/common/ai-integration.d.ts +3 -3
  32. package/cjs/common/ai-integration.js +3 -3
  33. package/cjs/common/charts.d.ts +3 -3
  34. package/cjs/common/charts.js +3 -3
  35. package/cjs/common/core/animation.d.ts +3 -3
  36. package/cjs/common/core/animation.js +3 -3
  37. package/cjs/common/core/environment.d.ts +3 -3
  38. package/cjs/common/core/environment.js +3 -3
  39. package/cjs/common/core/events.d.ts +3 -3
  40. package/cjs/common/core/events.js +3 -3
  41. package/cjs/common/core/index.d.ts +3 -3
  42. package/cjs/common/core/index.js +3 -3
  43. package/cjs/common/core/localization.d.ts +3 -3
  44. package/cjs/common/core/localization.js +3 -3
  45. package/cjs/common/data/custom-store.d.ts +3 -3
  46. package/cjs/common/data/custom-store.js +3 -3
  47. package/cjs/common/data.d.ts +3 -3
  48. package/cjs/common/data.js +3 -3
  49. package/cjs/common/export/excel.d.ts +3 -3
  50. package/cjs/common/export/excel.js +3 -3
  51. package/cjs/common/export/index.d.ts +3 -3
  52. package/cjs/common/export/index.js +3 -3
  53. package/cjs/common/export/pdf.d.ts +3 -3
  54. package/cjs/common/export/pdf.js +3 -3
  55. package/cjs/common/grids.d.ts +3 -3
  56. package/cjs/common/grids.js +3 -3
  57. package/cjs/common/index.d.ts +3 -3
  58. package/cjs/common/index.js +3 -3
  59. package/cjs/context-menu.d.ts +3 -3
  60. package/cjs/context-menu.js +3 -3
  61. package/cjs/core/component-base.d.ts +3 -3
  62. package/cjs/core/component-base.js +24 -50
  63. package/cjs/core/component.d.ts +3 -3
  64. package/cjs/core/component.js +20 -17
  65. package/cjs/core/config.d.ts +3 -3
  66. package/cjs/core/config.js +3 -3
  67. package/cjs/core/configuration/comparer.d.ts +3 -3
  68. package/cjs/core/configuration/comparer.js +3 -3
  69. package/cjs/core/configuration/config-node.d.ts +3 -3
  70. package/cjs/core/configuration/config-node.js +3 -3
  71. package/cjs/core/configuration/react/element.d.ts +3 -3
  72. package/cjs/core/configuration/react/element.js +3 -3
  73. package/cjs/core/configuration/react/templates.d.ts +3 -3
  74. package/cjs/core/configuration/react/templates.js +3 -3
  75. package/cjs/core/configuration/tree.d.ts +3 -3
  76. package/cjs/core/configuration/tree.js +3 -3
  77. package/cjs/core/configuration/utils.d.ts +3 -3
  78. package/cjs/core/configuration/utils.js +3 -3
  79. package/cjs/core/const.d.ts +3 -3
  80. package/cjs/core/const.js +3 -3
  81. package/cjs/core/contexts.d.ts +3 -3
  82. package/cjs/core/contexts.js +3 -3
  83. package/cjs/core/extension-component.d.ts +3 -3
  84. package/cjs/core/extension-component.js +10 -6
  85. package/cjs/core/helpers.d.ts +3 -3
  86. package/cjs/core/helpers.js +3 -3
  87. package/cjs/core/nested-option.d.ts +3 -3
  88. package/cjs/core/nested-option.js +3 -3
  89. package/cjs/core/options-manager.d.ts +3 -3
  90. package/cjs/core/options-manager.js +3 -3
  91. package/cjs/core/template-manager.d.ts +3 -3
  92. package/cjs/core/template-manager.js +3 -3
  93. package/cjs/core/template-wrapper.d.ts +3 -3
  94. package/cjs/core/template-wrapper.js +3 -3
  95. package/cjs/core/template.d.ts +3 -3
  96. package/cjs/core/template.js +3 -3
  97. package/cjs/core/types.d.ts +3 -3
  98. package/cjs/core/types.js +3 -3
  99. package/cjs/core/use-option-scanning.d.ts +3 -3
  100. package/cjs/core/use-option-scanning.js +3 -3
  101. package/cjs/core/widget-config.d.ts +3 -3
  102. package/cjs/core/widget-config.js +3 -3
  103. package/cjs/data-grid.d.ts +751 -43
  104. package/cjs/data-grid.js +277 -9
  105. package/cjs/date-box.d.ts +3 -3
  106. package/cjs/date-box.js +3 -3
  107. package/cjs/date-range-box.d.ts +3 -3
  108. package/cjs/date-range-box.js +3 -3
  109. package/cjs/diagram.d.ts +3 -3
  110. package/cjs/diagram.js +3 -3
  111. package/cjs/draggable.d.ts +3 -3
  112. package/cjs/draggable.js +3 -3
  113. package/cjs/drawer.d.ts +3 -3
  114. package/cjs/drawer.js +3 -3
  115. package/cjs/drop-down-box.d.ts +3 -3
  116. package/cjs/drop-down-box.js +3 -3
  117. package/cjs/drop-down-button.d.ts +3 -3
  118. package/cjs/drop-down-button.js +3 -3
  119. package/cjs/file-manager.d.ts +3 -3
  120. package/cjs/file-manager.js +3 -3
  121. package/cjs/file-uploader.d.ts +3 -3
  122. package/cjs/file-uploader.js +3 -3
  123. package/cjs/filter-builder.d.ts +3 -3
  124. package/cjs/filter-builder.js +3 -3
  125. package/cjs/form.d.ts +9 -9
  126. package/cjs/form.js +3 -3
  127. package/cjs/funnel.d.ts +3 -3
  128. package/cjs/funnel.js +3 -3
  129. package/cjs/gallery.d.ts +3 -3
  130. package/cjs/gallery.js +3 -3
  131. package/cjs/gantt.d.ts +3 -3
  132. package/cjs/gantt.js +3 -3
  133. package/cjs/html-editor.d.ts +3 -3
  134. package/cjs/html-editor.js +3 -3
  135. package/cjs/index.d.ts +3 -3
  136. package/cjs/index.js +3 -3
  137. package/cjs/linear-gauge.d.ts +3 -3
  138. package/cjs/linear-gauge.js +3 -3
  139. package/cjs/list.d.ts +3 -3
  140. package/cjs/list.js +3 -3
  141. package/cjs/load-indicator.d.ts +3 -3
  142. package/cjs/load-indicator.js +3 -3
  143. package/cjs/load-panel.d.ts +3 -3
  144. package/cjs/load-panel.js +3 -3
  145. package/cjs/lookup.d.ts +3 -3
  146. package/cjs/lookup.js +3 -3
  147. package/cjs/map.d.ts +3 -3
  148. package/cjs/map.js +3 -3
  149. package/cjs/menu.d.ts +3 -3
  150. package/cjs/menu.js +3 -3
  151. package/cjs/multi-view.d.ts +3 -3
  152. package/cjs/multi-view.js +3 -3
  153. package/cjs/number-box.d.ts +3 -3
  154. package/cjs/number-box.js +3 -3
  155. package/cjs/pagination.d.ts +3 -3
  156. package/cjs/pagination.js +3 -3
  157. package/cjs/pie-chart.d.ts +3 -3
  158. package/cjs/pie-chart.js +3 -3
  159. package/cjs/pivot-grid-field-chooser.d.ts +3 -3
  160. package/cjs/pivot-grid-field-chooser.js +3 -3
  161. package/cjs/pivot-grid.d.ts +3 -3
  162. package/cjs/pivot-grid.js +3 -3
  163. package/cjs/polar-chart.d.ts +3 -3
  164. package/cjs/polar-chart.js +3 -3
  165. package/cjs/popover.d.ts +3 -3
  166. package/cjs/popover.js +3 -3
  167. package/cjs/popup.d.ts +3 -3
  168. package/cjs/popup.js +3 -3
  169. package/cjs/progress-bar.d.ts +3 -3
  170. package/cjs/progress-bar.js +3 -3
  171. package/cjs/radio-group.d.ts +3 -3
  172. package/cjs/radio-group.js +3 -3
  173. package/cjs/range-selector.d.ts +3 -3
  174. package/cjs/range-selector.js +3 -3
  175. package/cjs/range-slider.d.ts +3 -3
  176. package/cjs/range-slider.js +3 -3
  177. package/cjs/recurrence-editor.d.ts +3 -3
  178. package/cjs/recurrence-editor.js +3 -3
  179. package/cjs/resizable.d.ts +3 -3
  180. package/cjs/resizable.js +3 -3
  181. package/cjs/responsive-box.d.ts +3 -3
  182. package/cjs/responsive-box.js +3 -3
  183. package/cjs/sankey.d.ts +3 -3
  184. package/cjs/sankey.js +3 -3
  185. package/cjs/scheduler.d.ts +9 -13
  186. package/cjs/scheduler.js +3 -3
  187. package/cjs/scroll-view.d.ts +3 -3
  188. package/cjs/scroll-view.js +3 -3
  189. package/cjs/select-box.d.ts +3 -3
  190. package/cjs/select-box.js +3 -3
  191. package/cjs/slider.d.ts +3 -3
  192. package/cjs/slider.js +3 -3
  193. package/cjs/sortable.d.ts +3 -3
  194. package/cjs/sortable.js +3 -3
  195. package/cjs/sparkline.d.ts +3 -3
  196. package/cjs/sparkline.js +3 -3
  197. package/cjs/speech-to-text.d.ts +3 -3
  198. package/cjs/speech-to-text.js +3 -3
  199. package/cjs/speed-dial-action.d.ts +3 -3
  200. package/cjs/speed-dial-action.js +3 -3
  201. package/cjs/splitter.d.ts +3 -3
  202. package/cjs/splitter.js +3 -3
  203. package/cjs/stepper.d.ts +3 -3
  204. package/cjs/stepper.js +3 -3
  205. package/cjs/switch.d.ts +3 -3
  206. package/cjs/switch.js +3 -3
  207. package/cjs/tab-panel.d.ts +3 -3
  208. package/cjs/tab-panel.js +3 -3
  209. package/cjs/tabs.d.ts +3 -3
  210. package/cjs/tabs.js +3 -3
  211. package/cjs/tag-box.d.ts +3 -3
  212. package/cjs/tag-box.js +3 -3
  213. package/cjs/text-area.d.ts +3 -3
  214. package/cjs/text-area.js +3 -3
  215. package/cjs/text-box.d.ts +3 -3
  216. package/cjs/text-box.js +3 -3
  217. package/cjs/tile-view.d.ts +3 -3
  218. package/cjs/tile-view.js +3 -3
  219. package/cjs/toast.d.ts +3 -3
  220. package/cjs/toast.js +3 -3
  221. package/cjs/toolbar.d.ts +3 -3
  222. package/cjs/toolbar.js +3 -3
  223. package/cjs/tooltip.d.ts +3 -3
  224. package/cjs/tooltip.js +3 -3
  225. package/cjs/tree-list.d.ts +781 -73
  226. package/cjs/tree-list.js +277 -10
  227. package/cjs/tree-map.d.ts +3 -3
  228. package/cjs/tree-map.js +3 -3
  229. package/cjs/tree-view.d.ts +3 -3
  230. package/cjs/tree-view.js +3 -3
  231. package/cjs/validation-group.d.ts +3 -3
  232. package/cjs/validation-group.js +3 -3
  233. package/cjs/validation-summary.d.ts +3 -3
  234. package/cjs/validation-summary.js +3 -3
  235. package/cjs/validator.d.ts +9 -9
  236. package/cjs/validator.js +3 -3
  237. package/cjs/vector-map.d.ts +3 -3
  238. package/cjs/vector-map.js +3 -3
  239. package/esm/accordion.js +3 -3
  240. package/esm/action-sheet.js +3 -3
  241. package/esm/autocomplete.js +3 -3
  242. package/esm/bar-gauge.js +3 -3
  243. package/esm/box.js +3 -3
  244. package/esm/bullet.js +3 -3
  245. package/esm/button-group.js +3 -3
  246. package/esm/button.js +3 -3
  247. package/esm/calendar.js +3 -3
  248. package/esm/card-view.js +4 -4
  249. package/esm/chart.js +3 -3
  250. package/esm/chat.js +3 -3
  251. package/esm/check-box.js +3 -3
  252. package/esm/circular-gauge.js +3 -3
  253. package/esm/color-box.js +3 -3
  254. package/esm/common/ai-integration.js +3 -3
  255. package/esm/common/charts.js +3 -3
  256. package/esm/common/core/animation.js +3 -3
  257. package/esm/common/core/environment.js +3 -3
  258. package/esm/common/core/events.js +3 -3
  259. package/esm/common/core/index.js +3 -3
  260. package/esm/common/core/localization.js +3 -3
  261. package/esm/common/data/custom-store.js +3 -3
  262. package/esm/common/data.js +3 -3
  263. package/esm/common/export/excel.js +3 -3
  264. package/esm/common/export/index.js +3 -3
  265. package/esm/common/export/pdf.js +3 -3
  266. package/esm/common/grids.js +3 -3
  267. package/esm/common/index.js +3 -3
  268. package/esm/context-menu.js +3 -3
  269. package/esm/core/component-base.js +24 -50
  270. package/esm/core/component.js +20 -17
  271. package/esm/core/config.js +3 -3
  272. package/esm/core/configuration/comparer.js +3 -3
  273. package/esm/core/configuration/config-node.js +3 -3
  274. package/esm/core/configuration/react/element.js +3 -3
  275. package/esm/core/configuration/react/templates.js +3 -3
  276. package/esm/core/configuration/tree.js +3 -3
  277. package/esm/core/configuration/utils.js +3 -3
  278. package/esm/core/const.js +3 -3
  279. package/esm/core/contexts.js +3 -3
  280. package/esm/core/extension-component.js +10 -6
  281. package/esm/core/helpers.js +3 -3
  282. package/esm/core/nested-option.js +3 -3
  283. package/esm/core/options-manager.js +3 -3
  284. package/esm/core/template-manager.js +3 -3
  285. package/esm/core/template-wrapper.js +3 -3
  286. package/esm/core/template.js +3 -3
  287. package/esm/core/types.js +3 -3
  288. package/esm/core/use-option-scanning.js +3 -3
  289. package/esm/core/widget-config.js +3 -3
  290. package/esm/data-grid.js +265 -8
  291. package/esm/date-box.js +3 -3
  292. package/esm/date-range-box.js +3 -3
  293. package/esm/diagram.js +3 -3
  294. package/esm/draggable.js +3 -3
  295. package/esm/drawer.js +3 -3
  296. package/esm/drop-down-box.js +3 -3
  297. package/esm/drop-down-button.js +3 -3
  298. package/esm/file-manager.js +3 -3
  299. package/esm/file-uploader.js +3 -3
  300. package/esm/filter-builder.js +3 -3
  301. package/esm/form.js +3 -3
  302. package/esm/funnel.js +3 -3
  303. package/esm/gallery.js +3 -3
  304. package/esm/gantt.js +3 -3
  305. package/esm/html-editor.js +3 -3
  306. package/esm/index.js +3 -3
  307. package/esm/linear-gauge.js +3 -3
  308. package/esm/list.js +3 -3
  309. package/esm/load-indicator.js +3 -3
  310. package/esm/load-panel.js +3 -3
  311. package/esm/lookup.js +3 -3
  312. package/esm/map.js +3 -3
  313. package/esm/menu.js +3 -3
  314. package/esm/multi-view.js +3 -3
  315. package/esm/number-box.js +3 -3
  316. package/esm/pagination.js +3 -3
  317. package/esm/pie-chart.js +3 -3
  318. package/esm/pivot-grid-field-chooser.js +3 -3
  319. package/esm/pivot-grid.js +3 -3
  320. package/esm/polar-chart.js +3 -3
  321. package/esm/popover.js +3 -3
  322. package/esm/popup.js +3 -3
  323. package/esm/progress-bar.js +3 -3
  324. package/esm/radio-group.js +3 -3
  325. package/esm/range-selector.js +3 -3
  326. package/esm/range-slider.js +3 -3
  327. package/esm/recurrence-editor.js +3 -3
  328. package/esm/resizable.js +3 -3
  329. package/esm/responsive-box.js +3 -3
  330. package/esm/sankey.js +3 -3
  331. package/esm/scheduler.js +3 -3
  332. package/esm/scroll-view.js +3 -3
  333. package/esm/select-box.js +3 -3
  334. package/esm/slider.js +3 -3
  335. package/esm/sortable.js +3 -3
  336. package/esm/sparkline.js +3 -3
  337. package/esm/speech-to-text.js +3 -3
  338. package/esm/speed-dial-action.js +3 -3
  339. package/esm/splitter.js +3 -3
  340. package/esm/stepper.js +3 -3
  341. package/esm/switch.js +3 -3
  342. package/esm/tab-panel.js +3 -3
  343. package/esm/tabs.js +3 -3
  344. package/esm/tag-box.js +3 -3
  345. package/esm/text-area.js +3 -3
  346. package/esm/text-box.js +3 -3
  347. package/esm/tile-view.js +3 -3
  348. package/esm/toast.js +3 -3
  349. package/esm/toolbar.js +3 -3
  350. package/esm/tooltip.js +3 -3
  351. package/esm/tree-list.js +266 -9
  352. package/esm/tree-map.js +3 -3
  353. package/esm/tree-view.js +3 -3
  354. package/esm/validation-group.js +3 -3
  355. package/esm/validation-summary.js +3 -3
  356. package/esm/validator.js +3 -3
  357. package/esm/vector-map.js +3 -3
  358. package/package.json +5 -4
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -65,6 +65,7 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
65
65
  const [, setForceUpdateToken] = (0, react_1.useState)(Symbol('initial force update token'));
66
66
  const removalLocker = (0, react_1.useContext)(contexts_1.RemovalLockerContext);
67
67
  const restoreParentLink = (0, react_1.useContext)(contexts_1.RestoreTreeContext);
68
+ const restoreParentLinkRef = (0, react_1.useRef)(restoreParentLink);
68
69
  const instance = (0, react_1.useRef)();
69
70
  const element = (0, react_1.useRef)();
70
71
  const portalContainer = (0, react_1.useRef)();
@@ -100,15 +101,10 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
100
101
  element.current.append(...childNodes.current);
101
102
  childElementsDetached.current = false;
102
103
  }
103
- if (restoreParentLink && element.current && !element.current.isConnected) {
104
- restoreParentLink();
104
+ if (restoreParentLinkRef.current && element.current && !element.current.isConnected) {
105
+ restoreParentLinkRef.current();
105
106
  }
106
- }, [
107
- childNodes.current,
108
- element.current,
109
- childElementsDetached.current,
110
- restoreParentLink,
111
- ]);
107
+ }, []);
112
108
  // eslint-disable-next-line @stylistic/max-len
113
109
  const updateCssClasses = (0, react_1.useCallback)((prevProps, newProps) => {
114
110
  const prevClassName = prevProps ? (0, widget_config_1.getClassName)(prevProps) : undefined;
@@ -128,7 +124,7 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
128
124
  element.current?.classList.add(...classNames);
129
125
  }
130
126
  }
131
- }, [element.current]);
127
+ }, []);
132
128
  const setInlineStyles = (0, react_1.useCallback)((styles) => {
133
129
  if (element.current) {
134
130
  const el = element.current;
@@ -141,16 +137,12 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
141
137
  }
142
138
  });
143
139
  }
144
- }, [element.current]);
140
+ }, []);
145
141
  const setTemplateManagerHooks = (0, react_1.useCallback)(({ createDXTemplates: createDXTemplatesFn, clearInstantiationModels: clearInstantiationModelsFn, updateTemplates: updateTemplatesFn, }) => {
146
142
  createDXTemplates.current = createDXTemplatesFn;
147
143
  clearInstantiationModels.current = clearInstantiationModelsFn;
148
144
  updateTemplates.current = updateTemplatesFn;
149
- }, [
150
- createDXTemplates.current,
151
- clearInstantiationModels.current,
152
- updateTemplates.current,
153
- ]);
145
+ }, []);
154
146
  const getElementProps = (0, react_1.useCallback)(() => {
155
147
  const elementProps = {
156
148
  ref: (el) => {
@@ -165,7 +157,7 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
165
157
  }
166
158
  });
167
159
  return elementProps;
168
- }, [element.current, props]);
160
+ }, [props]);
169
161
  const scheduleTemplatesUpdate = (0, react_1.useCallback)(() => {
170
162
  if (guardsUpdateScheduled.current) {
171
163
  return;
@@ -178,11 +170,7 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
178
170
  updateTemplates.current?.(() => (0, options_manager_1.scheduleGuards)());
179
171
  });
180
172
  (0, options_manager_1.unscheduleGuards)();
181
- }, [
182
- guardsUpdateScheduled.current,
183
- useDeferUpdateForTemplates.current,
184
- updateTemplates.current,
185
- ]);
173
+ }, []);
186
174
  const createWidget = (0, react_1.useCallback)((el) => {
187
175
  beforeCreateWidget();
188
176
  // eslint-disable-next-line no-param-reassign
@@ -213,14 +201,8 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
213
201
  }, [
214
202
  beforeCreateWidget,
215
203
  afterCreateWidget,
216
- element.current,
217
- optionsManager.current,
218
- createDXTemplates.current,
219
- clearInstantiationModels.current,
220
204
  WidgetClass,
221
205
  useRequestAnimationFrameFlag,
222
- useDeferUpdateForTemplates.current,
223
- instance.current,
224
206
  subscribableOptions,
225
207
  independentEvents,
226
208
  widgetConfig,
@@ -230,7 +212,7 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
230
212
  instance.current.focus();
231
213
  shouldRestoreFocus.current = false;
232
214
  }
233
- }, [shouldRestoreFocus.current, instance.current]);
215
+ }, []);
234
216
  const onComponentUpdated = (0, react_1.useCallback)(() => {
235
217
  if (!optionsManager.current?.isInstanceSet) {
236
218
  return;
@@ -242,9 +224,6 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
242
224
  scheduleTemplatesUpdate();
243
225
  prevPropsRef.current = props;
244
226
  }, [
245
- optionsManager.current,
246
- prevPropsRef.current,
247
- createDXTemplates.current,
248
227
  scheduleTemplatesUpdate,
249
228
  updateCssClasses,
250
229
  props,
@@ -264,9 +243,6 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
264
243
  }
265
244
  prevPropsRef.current = props;
266
245
  }, [
267
- childNodes.current,
268
- element.current,
269
- childElementsDetached.current,
270
246
  updateCssClasses,
271
247
  setInlineStyles,
272
248
  props,
@@ -289,24 +265,23 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
289
265
  }
290
266
  optionsManager.current.dispose();
291
267
  removalLocker?.unlock();
292
- }, [
293
- removalLocker,
294
- instance.current,
295
- childNodes.current,
296
- element.current,
297
- optionsManager.current,
298
- childElementsDetached.current,
299
- shouldRestoreFocus.current,
300
- ]);
268
+ }, [removalLocker]);
301
269
  (0, react_1.useLayoutEffect)(() => {
302
270
  onComponentMounted();
303
271
  return () => {
304
272
  onComponentUnmounted();
305
273
  };
306
274
  }, []);
275
+ (0, react_1.useLayoutEffect)(() => {
276
+ restoreParentLinkRef.current = restoreParentLink;
277
+ }, [restoreParentLink]);
307
278
  (0, react_1.useLayoutEffect)(() => {
308
279
  onComponentUpdated();
309
280
  });
281
+ const createWidgetRef = (0, react_1.useRef)(createWidget);
282
+ (0, react_1.useLayoutEffect)(() => {
283
+ createWidgetRef.current = createWidget;
284
+ }, [createWidget]);
310
285
  (0, react_1.useImperativeHandle)(ref, () => ({
311
286
  getInstance() {
312
287
  return instance.current;
@@ -315,9 +290,9 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
315
290
  return element.current;
316
291
  },
317
292
  createWidget(el) {
318
- createWidget(el);
293
+ createWidgetRef.current?.(el);
319
294
  },
320
- }), [instance.current, element.current, createWidget]);
295
+ }), []);
321
296
  const _renderChildren = (0, react_1.useCallback)(() => {
322
297
  if (renderChildren) {
323
298
  return renderChildren();
@@ -325,7 +300,7 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
325
300
  const { children } = props;
326
301
  return children;
327
302
  }, [props, renderChildren]);
328
- const renderPortal = (0, react_1.useCallback)(() => portalContainer.current && (0, react_dom_1.createPortal)(_renderChildren(), portalContainer.current), [portalContainer.current, _renderChildren]);
303
+ const renderPortal = (0, react_1.useCallback)(() => portalContainer.current && (0, react_dom_1.createPortal)(_renderChildren(), portalContainer.current), [_renderChildren]);
329
304
  const renderContent = (0, react_1.useCallback)(() => {
330
305
  const { children } = props;
331
306
  return isPortalComponent && children
@@ -342,7 +317,6 @@ const ComponentBase = (0, react_1.forwardRef)((props, ref) => {
342
317
  }, [
343
318
  props,
344
319
  isPortalComponent,
345
- portalContainer.current,
346
320
  _renderChildren,
347
321
  ]);
348
322
  const renderContextValue = (0, react_1.useMemo)(() => ({
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -46,12 +46,12 @@ const Component = (0, react_1.forwardRef)((props, ref) => {
46
46
  const extensionCreators = (0, react_1.useRef)([]);
47
47
  const registerExtension = (0, react_1.useCallback)((creator) => {
48
48
  extensionCreators.current.push(creator);
49
- }, [extensionCreators.current]);
49
+ }, []);
50
50
  const createExtensions = (0, react_1.useCallback)(() => {
51
51
  extensionCreators.current.forEach((creator) => {
52
52
  creator(componentBaseRef.current?.getElement());
53
53
  });
54
- }, [extensionCreators.current, componentBaseRef.current]);
54
+ }, []);
55
55
  const renderChildren = (0, react_1.useCallback)(() => React.Children.map(props.children, (child) => {
56
56
  if (React.isValidElement(child) && (0, extension_component_1.elementIsExtension)(child)) {
57
57
  return React.cloneElement(child, { onMounted: registerExtension });
@@ -60,23 +60,26 @@ const Component = (0, react_1.forwardRef)((props, ref) => {
60
60
  }), [props, registerExtension]);
61
61
  const createWidget = (0, react_1.useCallback)((el) => {
62
62
  componentBaseRef.current?.createWidget(el);
63
- }, [componentBaseRef.current]);
63
+ }, []);
64
64
  const clearExtensions = (0, react_1.useCallback)(() => {
65
- if (props.clearExtensions) {
66
- props.clearExtensions();
67
- }
65
+ props.clearExtensions?.();
68
66
  extensionCreators.current = [];
69
- }, [
70
- extensionCreators.current,
71
- props.clearExtensions,
72
- ]);
67
+ }, [props.clearExtensions]);
68
+ const createWidgetRef = (0, react_1.useRef)(createWidget);
69
+ const clearExtensionsRef = (0, react_1.useRef)(clearExtensions);
73
70
  (0, react_1.useLayoutEffect)(() => {
74
71
  createWidget();
75
72
  createExtensions();
76
73
  return () => {
77
- clearExtensions();
74
+ clearExtensionsRef.current?.();
78
75
  };
79
76
  }, []);
77
+ (0, react_1.useLayoutEffect)(() => {
78
+ createWidgetRef.current = createWidget;
79
+ }, [createWidget]);
80
+ (0, react_1.useLayoutEffect)(() => {
81
+ clearExtensionsRef.current = clearExtensions;
82
+ }, [clearExtensions]);
80
83
  (0, react_1.useImperativeHandle)(ref, () => ({
81
84
  getInstance() {
82
85
  return componentBaseRef.current?.getInstance();
@@ -85,12 +88,12 @@ const Component = (0, react_1.forwardRef)((props, ref) => {
85
88
  return componentBaseRef.current?.getElement();
86
89
  },
87
90
  createWidget(el) {
88
- createWidget(el);
91
+ createWidgetRef.current?.(el);
89
92
  },
90
93
  clearExtensions() {
91
- clearExtensions();
94
+ clearExtensionsRef.current?.();
92
95
  },
93
- }), [componentBaseRef.current, createWidget, clearExtensions]);
96
+ }), []);
94
97
  return (React.createElement(component_base_1.ComponentBase, { ref: componentBaseRef, renderChildren: renderChildren, ...props }));
95
98
  });
96
99
  exports.Component = Component;
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 25.2.2-beta
4
- * Build date: Thu Nov 20 2025
3
+ * Version: 25.2.4
4
+ * Build date: Mon Jan 26 2026
5
5
  *
6
- * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
6
+ * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
8
8
  * This software may be modified and distributed under the terms
9
9
  * of the MIT license. See the LICENSE file in the root of the project for details.