devextreme-react 25.2.2-beta → 25.2.3

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