devextreme-react 23.2.6 → 24.1.2-beta

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 (311) hide show
  1. package/cjs/accordion.d.ts +35 -48
  2. package/cjs/accordion.js +63 -118
  3. package/cjs/action-sheet.d.ts +27 -43
  4. package/cjs/action-sheet.js +54 -95
  5. package/cjs/autocomplete.d.ts +62 -192
  6. package/cjs/autocomplete.js +181 -352
  7. package/cjs/bar-gauge.d.ts +80 -292
  8. package/cjs/bar-gauge.js +210 -353
  9. package/cjs/box.d.ts +25 -42
  10. package/cjs/box.js +53 -113
  11. package/cjs/bullet.d.ts +35 -80
  12. package/cjs/bullet.js +82 -148
  13. package/cjs/button-group.d.ts +17 -43
  14. package/cjs/button-group.js +54 -112
  15. package/cjs/button.d.ts +14 -19
  16. package/cjs/button.js +36 -88
  17. package/cjs/calendar.d.ts +14 -24
  18. package/cjs/calendar.js +41 -180
  19. package/cjs/chart.d.ts +297 -1146
  20. package/cjs/chart.js +707 -1059
  21. package/cjs/check-box.d.ts +14 -16
  22. package/cjs/check-box.js +34 -101
  23. package/cjs/circular-gauge.d.ts +86 -287
  24. package/cjs/circular-gauge.js +226 -332
  25. package/cjs/color-box.d.ts +59 -175
  26. package/cjs/color-box.js +165 -312
  27. package/cjs/common/charts.d.ts +2 -2
  28. package/cjs/common/charts.js +2 -2
  29. package/cjs/common/data/custom-store.d.ts +2 -2
  30. package/cjs/common/data/custom-store.js +2 -2
  31. package/cjs/common/grids.d.ts +2 -2
  32. package/cjs/common/grids.js +2 -2
  33. package/cjs/common/index.d.ts +2 -2
  34. package/cjs/common/index.js +2 -2
  35. package/cjs/context-menu.d.ts +71 -148
  36. package/cjs/context-menu.js +151 -279
  37. package/cjs/core/component-base.d.ts +18 -47
  38. package/cjs/core/component-base.js +261 -185
  39. package/cjs/core/component.d.ts +26 -13
  40. package/cjs/core/component.js +73 -58
  41. package/cjs/core/config.d.ts +2 -2
  42. package/cjs/core/config.js +2 -2
  43. package/cjs/core/configuration/comparer.d.ts +2 -2
  44. package/cjs/core/configuration/comparer.js +10 -10
  45. package/cjs/core/configuration/config-node.d.ts +2 -3
  46. package/cjs/core/configuration/config-node.js +2 -2
  47. package/cjs/core/configuration/react/element.d.ts +12 -4
  48. package/cjs/core/configuration/react/element.js +4 -5
  49. package/cjs/core/configuration/react/templates.d.ts +2 -2
  50. package/cjs/core/configuration/react/templates.js +2 -8
  51. package/cjs/core/configuration/react/tree.d.ts +2 -2
  52. package/cjs/core/configuration/react/tree.js +13 -9
  53. package/cjs/core/configuration/tree.d.ts +2 -2
  54. package/cjs/core/configuration/tree.js +5 -6
  55. package/cjs/core/configuration/utils.d.ts +2 -2
  56. package/cjs/core/configuration/utils.js +2 -2
  57. package/cjs/core/extension-component.d.ts +14 -7
  58. package/cjs/core/extension-component.js +69 -29
  59. package/cjs/core/helpers.d.ts +4 -3
  60. package/cjs/core/helpers.js +8 -9
  61. package/cjs/core/nested-option.d.ts +3 -5
  62. package/cjs/core/nested-option.js +16 -34
  63. package/cjs/core/options-manager.d.ts +3 -2
  64. package/cjs/core/options-manager.js +30 -18
  65. package/cjs/core/template-manager.d.ts +2 -2
  66. package/cjs/core/template-manager.js +20 -16
  67. package/cjs/core/template-wrapper.d.ts +2 -2
  68. package/cjs/core/template-wrapper.js +18 -14
  69. package/cjs/core/template.d.ts +3 -7
  70. package/cjs/core/template.js +4 -61
  71. package/cjs/core/types.d.ts +8 -8
  72. package/cjs/core/types.js +2 -2
  73. package/cjs/core/widget-config.d.ts +2 -2
  74. package/cjs/core/widget-config.js +23 -6
  75. package/cjs/data-grid.d.ts +317 -1057
  76. package/cjs/data-grid.js +752 -1112
  77. package/cjs/date-box.d.ts +65 -202
  78. package/cjs/date-box.js +179 -386
  79. package/cjs/date-range-box.d.ts +65 -203
  80. package/cjs/date-range-box.js +181 -373
  81. package/cjs/defer-rendering.d.ts +41 -93
  82. package/cjs/defer-rendering.js +93 -151
  83. package/cjs/diagram.d.ts +92 -307
  84. package/cjs/diagram.js +263 -408
  85. package/cjs/draggable.d.ts +17 -30
  86. package/cjs/draggable.js +45 -89
  87. package/cjs/drawer.d.ts +14 -23
  88. package/cjs/drawer.js +40 -102
  89. package/cjs/drop-down-box.d.ts +59 -175
  90. package/cjs/drop-down-box.js +169 -319
  91. package/cjs/drop-down-button.d.ts +58 -160
  92. package/cjs/drop-down-button.js +157 -256
  93. package/cjs/file-manager.d.ts +50 -128
  94. package/cjs/file-manager.js +123 -220
  95. package/cjs/file-uploader.d.ts +14 -16
  96. package/cjs/file-uploader.js +34 -127
  97. package/cjs/filter-builder.d.ts +32 -86
  98. package/cjs/filter-builder.js +86 -147
  99. package/cjs/form.d.ts +94 -347
  100. package/cjs/form.js +273 -398
  101. package/cjs/funnel.d.ts +95 -358
  102. package/cjs/funnel.js +239 -412
  103. package/cjs/gallery.d.ts +29 -44
  104. package/cjs/gallery.js +55 -107
  105. package/cjs/gantt.d.ts +89 -294
  106. package/cjs/gantt.js +252 -420
  107. package/cjs/html-editor.d.ts +50 -164
  108. package/cjs/html-editor.js +143 -262
  109. package/cjs/index.d.ts +3 -2
  110. package/cjs/index.js +5 -3
  111. package/cjs/linear-gauge.d.ts +89 -288
  112. package/cjs/linear-gauge.js +226 -335
  113. package/cjs/list.d.ts +49 -118
  114. package/cjs/list.js +115 -277
  115. package/cjs/load-indicator.d.ts +14 -12
  116. package/cjs/load-indicator.js +30 -56
  117. package/cjs/load-panel.d.ts +47 -99
  118. package/cjs/load-panel.js +111 -221
  119. package/cjs/lookup.d.ts +62 -182
  120. package/cjs/lookup.js +174 -364
  121. package/cjs/map.d.ts +32 -80
  122. package/cjs/map.js +85 -164
  123. package/cjs/menu.d.ts +69 -171
  124. package/cjs/menu.js +153 -286
  125. package/cjs/multi-view.d.ts +29 -44
  126. package/cjs/multi-view.js +55 -101
  127. package/cjs/number-box.d.ts +23 -53
  128. package/cjs/number-box.js +62 -183
  129. package/cjs/pie-chart.d.ts +119 -481
  130. package/cjs/pie-chart.js +309 -520
  131. package/cjs/pivot-grid-field-chooser.d.ts +29 -61
  132. package/cjs/pivot-grid-field-chooser.js +67 -129
  133. package/cjs/pivot-grid.d.ts +53 -137
  134. package/cjs/pivot-grid.js +125 -225
  135. package/cjs/polar-chart.d.ts +228 -882
  136. package/cjs/polar-chart.js +544 -828
  137. package/cjs/popover.d.ts +56 -142
  138. package/cjs/popover.js +150 -270
  139. package/cjs/popup.d.ts +48 -124
  140. package/cjs/popup.js +136 -261
  141. package/cjs/progress-bar.d.ts +14 -16
  142. package/cjs/progress-bar.js +34 -98
  143. package/cjs/radio-group.d.ts +17 -42
  144. package/cjs/radio-group.js +53 -132
  145. package/cjs/range-selector.d.ts +194 -671
  146. package/cjs/range-selector.js +455 -646
  147. package/cjs/range-slider.d.ts +23 -51
  148. package/cjs/range-slider.js +60 -145
  149. package/cjs/recurrence-editor.d.ts +14 -16
  150. package/cjs/recurrence-editor.js +34 -95
  151. package/cjs/resizable.d.ts +14 -17
  152. package/cjs/resizable.js +35 -75
  153. package/cjs/responsive-box.d.ts +34 -71
  154. package/cjs/responsive-box.js +78 -122
  155. package/cjs/sankey.d.ts +71 -240
  156. package/cjs/sankey.js +180 -321
  157. package/cjs/scheduler.d.ts +29 -96
  158. package/cjs/scheduler.js +127 -290
  159. package/cjs/scroll-view.d.ts +14 -12
  160. package/cjs/scroll-view.js +30 -82
  161. package/cjs/select-box.d.ts +62 -193
  162. package/cjs/select-box.js +186 -366
  163. package/cjs/slider.d.ts +23 -51
  164. package/cjs/slider.js +60 -142
  165. package/cjs/sortable.d.ts +17 -30
  166. package/cjs/sortable.js +45 -110
  167. package/cjs/sparkline.d.ts +35 -80
  168. package/cjs/sparkline.js +82 -183
  169. package/cjs/speed-dial-action.d.ts +14 -12
  170. package/cjs/speed-dial-action.js +30 -54
  171. package/cjs/splitter.d.ts +79 -0
  172. package/cjs/splitter.js +99 -0
  173. package/cjs/switch.d.ts +14 -16
  174. package/cjs/switch.js +34 -98
  175. package/cjs/tab-panel.d.ts +31 -46
  176. package/cjs/tab-panel.js +61 -140
  177. package/cjs/tabs.d.ts +33 -46
  178. package/cjs/tabs.js +57 -138
  179. package/cjs/tag-box.d.ts +62 -194
  180. package/cjs/tag-box.js +191 -390
  181. package/cjs/text-area.d.ts +14 -16
  182. package/cjs/text-area.js +34 -141
  183. package/cjs/text-box.d.ts +20 -45
  184. package/cjs/text-box.js +55 -182
  185. package/cjs/tile-view.d.ts +25 -42
  186. package/cjs/tile-view.js +53 -112
  187. package/cjs/toast.d.ts +47 -106
  188. package/cjs/toast.js +117 -223
  189. package/cjs/toolbar.d.ts +27 -44
  190. package/cjs/toolbar.js +59 -92
  191. package/cjs/tooltip.d.ts +53 -124
  192. package/cjs/tooltip.js +133 -243
  193. package/cjs/tree-list.d.ts +274 -909
  194. package/cjs/tree-list.js +644 -996
  195. package/cjs/tree-map.d.ts +77 -257
  196. package/cjs/tree-map.js +191 -326
  197. package/cjs/tree-view.d.ts +34 -81
  198. package/cjs/tree-view.js +82 -229
  199. package/cjs/validation-group.d.ts +14 -12
  200. package/cjs/validation-group.js +30 -51
  201. package/cjs/validation-summary.d.ts +25 -42
  202. package/cjs/validation-summary.js +53 -71
  203. package/cjs/validator.d.ts +48 -142
  204. package/cjs/validator.js +142 -187
  205. package/cjs/vector-map.d.ts +92 -347
  206. package/cjs/vector-map.js +244 -384
  207. package/esm/accordion.js +58 -117
  208. package/esm/action-sheet.js +49 -94
  209. package/esm/autocomplete.js +176 -351
  210. package/esm/bar-gauge.js +205 -352
  211. package/esm/box.js +48 -112
  212. package/esm/bullet.js +77 -147
  213. package/esm/button-group.js +49 -111
  214. package/esm/button.js +31 -87
  215. package/esm/calendar.js +36 -179
  216. package/esm/chart.js +702 -1058
  217. package/esm/check-box.js +29 -100
  218. package/esm/circular-gauge.js +221 -331
  219. package/esm/color-box.js +160 -311
  220. package/esm/common/charts.js +2 -2
  221. package/esm/common/data/custom-store.js +2 -2
  222. package/esm/common/grids.js +2 -2
  223. package/esm/common/index.js +2 -2
  224. package/esm/context-menu.js +146 -278
  225. package/esm/core/component-base.js +256 -184
  226. package/esm/core/component.js +69 -58
  227. package/esm/core/config.js +2 -2
  228. package/esm/core/configuration/comparer.js +2 -2
  229. package/esm/core/configuration/config-node.js +2 -2
  230. package/esm/core/configuration/react/element.js +5 -5
  231. package/esm/core/configuration/react/templates.js +2 -8
  232. package/esm/core/configuration/react/tree.js +3 -3
  233. package/esm/core/configuration/tree.js +2 -2
  234. package/esm/core/configuration/utils.js +2 -2
  235. package/esm/core/extension-component.js +45 -29
  236. package/esm/core/helpers.js +7 -8
  237. package/esm/core/nested-option.js +11 -33
  238. package/esm/core/options-manager.js +22 -10
  239. package/esm/core/template-manager.js +3 -3
  240. package/esm/core/template-wrapper.js +2 -2
  241. package/esm/core/template.js +4 -42
  242. package/esm/core/types.js +2 -2
  243. package/esm/core/widget-config.js +23 -6
  244. package/esm/data-grid.js +748 -1112
  245. package/esm/date-box.js +174 -385
  246. package/esm/date-range-box.js +176 -372
  247. package/esm/defer-rendering.js +88 -150
  248. package/esm/diagram.js +258 -407
  249. package/esm/draggable.js +40 -88
  250. package/esm/drawer.js +35 -101
  251. package/esm/drop-down-box.js +164 -318
  252. package/esm/drop-down-button.js +152 -255
  253. package/esm/file-manager.js +118 -219
  254. package/esm/file-uploader.js +29 -126
  255. package/esm/filter-builder.js +81 -146
  256. package/esm/form.js +268 -397
  257. package/esm/funnel.js +234 -411
  258. package/esm/gallery.js +50 -106
  259. package/esm/gantt.js +247 -419
  260. package/esm/html-editor.js +138 -261
  261. package/esm/index.js +3 -2
  262. package/esm/linear-gauge.js +221 -334
  263. package/esm/list.js +110 -276
  264. package/esm/load-indicator.js +25 -55
  265. package/esm/load-panel.js +106 -220
  266. package/esm/lookup.js +169 -363
  267. package/esm/map.js +80 -163
  268. package/esm/menu.js +148 -285
  269. package/esm/multi-view.js +50 -100
  270. package/esm/number-box.js +57 -182
  271. package/esm/pie-chart.js +304 -519
  272. package/esm/pivot-grid-field-chooser.js +62 -128
  273. package/esm/pivot-grid.js +120 -224
  274. package/esm/polar-chart.js +539 -827
  275. package/esm/popover.js +145 -269
  276. package/esm/popup.js +131 -260
  277. package/esm/progress-bar.js +29 -97
  278. package/esm/radio-group.js +48 -131
  279. package/esm/range-selector.js +450 -645
  280. package/esm/range-slider.js +55 -144
  281. package/esm/recurrence-editor.js +29 -94
  282. package/esm/resizable.js +30 -74
  283. package/esm/responsive-box.js +73 -121
  284. package/esm/sankey.js +175 -320
  285. package/esm/scheduler.js +122 -289
  286. package/esm/scroll-view.js +25 -81
  287. package/esm/select-box.js +181 -365
  288. package/esm/slider.js +55 -141
  289. package/esm/sortable.js +40 -109
  290. package/esm/sparkline.js +77 -182
  291. package/esm/speed-dial-action.js +25 -53
  292. package/esm/splitter.js +69 -0
  293. package/esm/switch.js +29 -97
  294. package/esm/tab-panel.js +56 -139
  295. package/esm/tabs.js +52 -137
  296. package/esm/tag-box.js +186 -389
  297. package/esm/text-area.js +29 -140
  298. package/esm/text-box.js +50 -181
  299. package/esm/tile-view.js +48 -111
  300. package/esm/toast.js +112 -222
  301. package/esm/toolbar.js +54 -91
  302. package/esm/tooltip.js +128 -242
  303. package/esm/tree-list.js +639 -995
  304. package/esm/tree-map.js +186 -325
  305. package/esm/tree-view.js +77 -228
  306. package/esm/validation-group.js +25 -50
  307. package/esm/validation-summary.js +48 -70
  308. package/esm/validator.js +137 -186
  309. package/esm/vector-map.js +239 -383
  310. package/package.json +4 -4
  311. package/splitter/package.json +6 -0
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 23.2.6
4
- * Build date: Wed May 01 2024
3
+ * Version: 24.1.2-beta
4
+ * Build date: Mon May 13 2024
5
5
  *
6
6
  * Copyright (c) 2012 - 2024 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
@@ -11,14 +11,15 @@
11
11
  * https://github.com/DevExpress/devextreme-react
12
12
  */
13
13
 
14
- /// <reference types="react" />
14
+ import * as React from "react";
15
+ import { Ref, ReactElement } from "react";
15
16
  import dxTextArea, { Properties } from "devextreme/ui/text_area";
16
- import { Component as BaseComponent, IHtmlOptions } from "./core/component";
17
+ import { IHtmlOptions } from "./core/component";
17
18
  import type { ChangeEvent, ContentReadyEvent, CopyEvent, CutEvent, DisposingEvent, EnterKeyEvent, FocusInEvent, FocusOutEvent, InitializedEvent, InputEvent, KeyDownEvent, KeyUpEvent, PasteEvent, ValueChangedEvent } from "devextreme/ui/text_area";
18
- declare type ReplaceFieldTypes<TSource, TReplacement> = {
19
+ type ReplaceFieldTypes<TSource, TReplacement> = {
19
20
  [P in keyof TSource]: P extends keyof TReplacement ? TReplacement[P] : TSource[P];
20
21
  };
21
- declare type ITextAreaOptionsNarrowedEvents = {
22
+ type ITextAreaOptionsNarrowedEvents = {
22
23
  onChange?: ((e: ChangeEvent) => void);
23
24
  onContentReady?: ((e: ContentReadyEvent) => void);
24
25
  onCopy?: ((e: CopyEvent) => void);
@@ -34,20 +35,17 @@ declare type ITextAreaOptionsNarrowedEvents = {
34
35
  onPaste?: ((e: PasteEvent) => void);
35
36
  onValueChanged?: ((e: ValueChangedEvent) => void);
36
37
  };
37
- declare type ITextAreaOptions = React.PropsWithChildren<ReplaceFieldTypes<Properties, ITextAreaOptionsNarrowedEvents> & IHtmlOptions & {
38
+ type ITextAreaOptions = React.PropsWithChildren<ReplaceFieldTypes<Properties, ITextAreaOptionsNarrowedEvents> & IHtmlOptions & {
38
39
  defaultValue?: string;
39
40
  onValueChange?: (value: string) => void;
40
41
  }>;
41
- declare class TextArea extends BaseComponent<React.PropsWithChildren<ITextAreaOptions>> {
42
- get instance(): dxTextArea;
43
- protected _WidgetClass: typeof dxTextArea;
44
- protected subscribableOptions: string[];
45
- protected independentEvents: string[];
46
- protected _defaults: {
47
- defaultValue: string;
48
- };
42
+ interface TextAreaRef {
43
+ instance: () => dxTextArea;
49
44
  }
45
+ declare const TextArea: (props: React.PropsWithChildren<ITextAreaOptions> & {
46
+ ref?: Ref<TextAreaRef>;
47
+ }) => ReactElement | null;
50
48
  export default TextArea;
51
- export { TextArea, ITextAreaOptions };
49
+ export { TextArea, ITextAreaOptions, TextAreaRef };
52
50
  import type * as TextAreaTypes from 'devextreme/ui/text_area_types';
53
51
  export { TextAreaTypes };
package/cjs/text-area.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 23.2.6
4
- * Build date: Wed May 01 2024
3
+ * Version: 24.1.2-beta
4
+ * Build date: Mon May 13 2024
5
5
  *
6
6
  * Copyright (c) 2012 - 2024 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
@@ -13,24 +13,24 @@
13
13
 
14
14
  "use client";
15
15
  "use strict";
16
- var __extends = (this && this.__extends) || (function () {
17
- var extendStatics = function (d, b) {
18
- extendStatics = Object.setPrototypeOf ||
19
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
20
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
21
- return extendStatics(d, b);
16
+ var __assign = (this && this.__assign) || function () {
17
+ __assign = Object.assign || function(t) {
18
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
19
+ s = arguments[i];
20
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
21
+ t[p] = s[p];
22
+ }
23
+ return t;
22
24
  };
23
- return function (d, b) {
24
- if (typeof b !== "function" && b !== null)
25
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
26
- extendStatics(d, b);
27
- function __() { this.constructor = d; }
28
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
29
- };
30
- })();
25
+ return __assign.apply(this, arguments);
26
+ };
31
27
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
32
28
  if (k2 === undefined) k2 = k;
33
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
29
+ var desc = Object.getOwnPropertyDescriptor(m, k);
30
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
31
+ desc = { enumerable: true, get: function() { return m[k]; } };
32
+ }
33
+ Object.defineProperty(o, k2, desc);
34
34
  }) : (function(o, m, k, k2) {
35
35
  if (k2 === undefined) k2 = k;
36
36
  o[k2] = m[k];
@@ -52,131 +52,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
52
52
  };
53
53
  Object.defineProperty(exports, "__esModule", { value: true });
54
54
  exports.TextArea = void 0;
55
+ var React = __importStar(require("react"));
56
+ var react_1 = require("react");
55
57
  var text_area_1 = __importDefault(require("devextreme/ui/text_area"));
56
- var PropTypes = __importStar(require("prop-types"));
57
58
  var component_1 = require("./core/component");
58
- var TextArea = /** @class */ (function (_super) {
59
- __extends(TextArea, _super);
60
- function TextArea() {
61
- var _this = _super !== null && _super.apply(this, arguments) || this;
62
- _this._WidgetClass = text_area_1.default;
63
- _this.subscribableOptions = ["value"];
64
- _this.independentEvents = ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onPaste", "onValueChanged"];
65
- _this._defaults = {
66
- defaultValue: "value"
67
- };
68
- return _this;
69
- }
70
- Object.defineProperty(TextArea.prototype, "instance", {
71
- get: function () {
72
- return this._instance;
73
- },
74
- enumerable: false,
75
- configurable: true
76
- });
77
- return TextArea;
78
- }(component_1.Component));
59
+ var TextArea = (0, react_1.memo)((0, react_1.forwardRef)(function (props, ref) {
60
+ var baseRef = (0, react_1.useRef)(null);
61
+ (0, react_1.useImperativeHandle)(ref, function () { return ({
62
+ instance: function () {
63
+ var _a;
64
+ return (_a = baseRef.current) === null || _a === void 0 ? void 0 : _a.getInstance();
65
+ }
66
+ }); }, [baseRef.current]);
67
+ var subscribableOptions = (0, react_1.useMemo)(function () { return (["value"]); }, []);
68
+ var independentEvents = (0, react_1.useMemo)(function () { return (["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onPaste", "onValueChanged"]); }, []);
69
+ var defaults = (0, react_1.useMemo)(function () { return ({
70
+ defaultValue: "value",
71
+ }); }, []);
72
+ return (React.createElement((component_1.Component), __assign({ WidgetClass: text_area_1.default, ref: baseRef, subscribableOptions: subscribableOptions, independentEvents: independentEvents, defaults: defaults }, props)));
73
+ }));
79
74
  exports.TextArea = TextArea;
80
- TextArea.propTypes = {
81
- accessKey: PropTypes.string,
82
- activeStateEnabled: PropTypes.bool,
83
- autoResizeEnabled: PropTypes.bool,
84
- disabled: PropTypes.bool,
85
- elementAttr: PropTypes.object,
86
- focusStateEnabled: PropTypes.bool,
87
- height: PropTypes.oneOfType([
88
- PropTypes.func,
89
- PropTypes.number,
90
- PropTypes.string
91
- ]),
92
- hint: PropTypes.string,
93
- hoverStateEnabled: PropTypes.bool,
94
- isDirty: PropTypes.bool,
95
- isValid: PropTypes.bool,
96
- label: PropTypes.string,
97
- labelMode: PropTypes.oneOfType([
98
- PropTypes.string,
99
- PropTypes.oneOf([
100
- "static",
101
- "floating",
102
- "hidden",
103
- "outside"
104
- ])
105
- ]),
106
- maxHeight: PropTypes.oneOfType([
107
- PropTypes.number,
108
- PropTypes.string
109
- ]),
110
- maxLength: PropTypes.oneOfType([
111
- PropTypes.number,
112
- PropTypes.string
113
- ]),
114
- minHeight: PropTypes.oneOfType([
115
- PropTypes.number,
116
- PropTypes.string
117
- ]),
118
- name: PropTypes.string,
119
- onChange: PropTypes.func,
120
- onContentReady: PropTypes.func,
121
- onCopy: PropTypes.func,
122
- onCut: PropTypes.func,
123
- onDisposing: PropTypes.func,
124
- onEnterKey: PropTypes.func,
125
- onFocusIn: PropTypes.func,
126
- onFocusOut: PropTypes.func,
127
- onInitialized: PropTypes.func,
128
- onInput: PropTypes.func,
129
- onKeyDown: PropTypes.func,
130
- onKeyUp: PropTypes.func,
131
- onOptionChanged: PropTypes.func,
132
- onPaste: PropTypes.func,
133
- onValueChanged: PropTypes.func,
134
- placeholder: PropTypes.string,
135
- readOnly: PropTypes.bool,
136
- rtlEnabled: PropTypes.bool,
137
- spellcheck: PropTypes.bool,
138
- stylingMode: PropTypes.oneOfType([
139
- PropTypes.string,
140
- PropTypes.oneOf([
141
- "outlined",
142
- "underlined",
143
- "filled"
144
- ])
145
- ]),
146
- tabIndex: PropTypes.number,
147
- text: PropTypes.string,
148
- validationErrors: PropTypes.array,
149
- validationMessageMode: PropTypes.oneOfType([
150
- PropTypes.string,
151
- PropTypes.oneOf([
152
- "always",
153
- "auto"
154
- ])
155
- ]),
156
- validationMessagePosition: PropTypes.oneOfType([
157
- PropTypes.string,
158
- PropTypes.oneOf([
159
- "bottom",
160
- "left",
161
- "right",
162
- "top"
163
- ])
164
- ]),
165
- validationStatus: PropTypes.oneOfType([
166
- PropTypes.string,
167
- PropTypes.oneOf([
168
- "valid",
169
- "invalid",
170
- "pending"
171
- ])
172
- ]),
173
- value: PropTypes.string,
174
- valueChangeEvent: PropTypes.string,
175
- visible: PropTypes.bool,
176
- width: PropTypes.oneOfType([
177
- PropTypes.func,
178
- PropTypes.number,
179
- PropTypes.string
180
- ])
181
- };
182
75
  exports.default = TextArea;
package/cjs/text-box.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 23.2.6
4
- * Build date: Wed May 01 2024
3
+ * Version: 24.1.2-beta
4
+ * Build date: Mon May 13 2024
5
5
  *
6
6
  * Copyright (c) 2012 - 2024 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
@@ -11,17 +11,17 @@
11
11
  * https://github.com/DevExpress/devextreme-react
12
12
  */
13
13
 
14
- /// <reference types="react" />
14
+ import * as React from "react";
15
+ import { Ref, ReactElement } from "react";
15
16
  import dxTextBox, { Properties } from "devextreme/ui/text_box";
16
- import { Component as BaseComponent, IHtmlOptions } from "./core/component";
17
- import NestedOption from "./core/nested-option";
17
+ import { IHtmlOptions, IElementDescriptor } from "./core/component";
18
18
  import type { ChangeEvent, ContentReadyEvent, CopyEvent, CutEvent, DisposingEvent, EnterKeyEvent, FocusInEvent, FocusOutEvent, InitializedEvent, InputEvent, KeyDownEvent, KeyUpEvent, PasteEvent, ValueChangedEvent } from "devextreme/ui/text_box";
19
19
  import type { ContentReadyEvent as ButtonContentReadyEvent, DisposingEvent as ButtonDisposingEvent, InitializedEvent as ButtonInitializedEvent, dxButtonOptions, ClickEvent, OptionChangedEvent } from "devextreme/ui/button";
20
20
  import type { template } from "devextreme/core/templates/template";
21
- declare type ReplaceFieldTypes<TSource, TReplacement> = {
21
+ type ReplaceFieldTypes<TSource, TReplacement> = {
22
22
  [P in keyof TSource]: P extends keyof TReplacement ? TReplacement[P] : TSource[P];
23
23
  };
24
- declare type ITextBoxOptionsNarrowedEvents = {
24
+ type ITextBoxOptionsNarrowedEvents = {
25
25
  onChange?: ((e: ChangeEvent) => void);
26
26
  onContentReady?: ((e: ContentReadyEvent) => void);
27
27
  onCopy?: ((e: CopyEvent) => void);
@@ -37,41 +37,24 @@ declare type ITextBoxOptionsNarrowedEvents = {
37
37
  onPaste?: ((e: PasteEvent) => void);
38
38
  onValueChanged?: ((e: ValueChangedEvent) => void);
39
39
  };
40
- declare type ITextBoxOptions = React.PropsWithChildren<ReplaceFieldTypes<Properties, ITextBoxOptionsNarrowedEvents> & IHtmlOptions & {
40
+ type ITextBoxOptions = React.PropsWithChildren<ReplaceFieldTypes<Properties, ITextBoxOptionsNarrowedEvents> & IHtmlOptions & {
41
41
  defaultValue?: string;
42
42
  onValueChange?: (value: string) => void;
43
43
  }>;
44
- declare class TextBox extends BaseComponent<React.PropsWithChildren<ITextBoxOptions>> {
45
- get instance(): dxTextBox;
46
- protected _WidgetClass: typeof dxTextBox;
47
- protected subscribableOptions: string[];
48
- protected independentEvents: string[];
49
- protected _defaults: {
50
- defaultValue: string;
51
- };
52
- protected _expectedChildren: {
53
- button: {
54
- optionName: string;
55
- isCollectionItem: boolean;
56
- };
57
- };
44
+ interface TextBoxRef {
45
+ instance: () => dxTextBox;
58
46
  }
59
- declare type IButtonProps = React.PropsWithChildren<{
47
+ declare const TextBox: (props: React.PropsWithChildren<ITextBoxOptions> & {
48
+ ref?: Ref<TextBoxRef>;
49
+ }) => ReactElement | null;
50
+ type IButtonProps = React.PropsWithChildren<{
60
51
  location?: "after" | "before";
61
52
  name?: string;
62
53
  options?: dxButtonOptions;
63
54
  }>;
64
- declare class Button extends NestedOption<IButtonProps> {
65
- static OptionName: string;
66
- static IsCollectionItem: boolean;
67
- static ExpectedChildren: {
68
- options: {
69
- optionName: string;
70
- isCollectionItem: boolean;
71
- };
72
- };
73
- }
74
- declare type IOptionsProps = React.PropsWithChildren<{
55
+ declare const _componentButton: React.MemoExoticComponent<(props: IButtonProps) => React.FunctionComponentElement<IButtonProps>>;
56
+ declare const Button: typeof _componentButton & IElementDescriptor;
57
+ type IOptionsProps = React.PropsWithChildren<{
75
58
  accessKey?: string;
76
59
  activeStateEnabled?: boolean;
77
60
  bindingOptions?: Record<string, any>;
@@ -102,18 +85,10 @@ declare type IOptionsProps = React.PropsWithChildren<{
102
85
  width?: (() => number | string) | number | string;
103
86
  render?: (...params: any) => React.ReactNode;
104
87
  component?: React.ComponentType<any>;
105
- keyFn?: (data: any) => string;
106
88
  }>;
107
- declare class Options extends NestedOption<IOptionsProps> {
108
- static OptionName: string;
109
- static TemplateProps: {
110
- tmplOption: string;
111
- render: string;
112
- component: string;
113
- keyFn: string;
114
- }[];
115
- }
89
+ declare const _componentOptions: React.MemoExoticComponent<(props: IOptionsProps) => React.FunctionComponentElement<IOptionsProps>>;
90
+ declare const Options: typeof _componentOptions & IElementDescriptor;
116
91
  export default TextBox;
117
- export { TextBox, ITextBoxOptions, Button, IButtonProps, Options, IOptionsProps };
92
+ export { TextBox, ITextBoxOptions, TextBoxRef, Button, IButtonProps, Options, IOptionsProps };
118
93
  import type * as TextBoxTypes from 'devextreme/ui/text_box_types';
119
94
  export { TextBoxTypes };
package/cjs/text-box.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * devextreme-react
3
- * Version: 23.2.6
4
- * Build date: Wed May 01 2024
3
+ * Version: 24.1.2-beta
4
+ * Build date: Mon May 13 2024
5
5
  *
6
6
  * Copyright (c) 2012 - 2024 Developer Express Inc. ALL RIGHTS RESERVED
7
7
  *
@@ -13,24 +13,24 @@
13
13
 
14
14
  "use client";
15
15
  "use strict";
16
- var __extends = (this && this.__extends) || (function () {
17
- var extendStatics = function (d, b) {
18
- extendStatics = Object.setPrototypeOf ||
19
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
20
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
21
- return extendStatics(d, b);
16
+ var __assign = (this && this.__assign) || function () {
17
+ __assign = Object.assign || function(t) {
18
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
19
+ s = arguments[i];
20
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
21
+ t[p] = s[p];
22
+ }
23
+ return t;
22
24
  };
23
- return function (d, b) {
24
- if (typeof b !== "function" && b !== null)
25
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
26
- extendStatics(d, b);
27
- function __() { this.constructor = d; }
28
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
29
- };
30
- })();
25
+ return __assign.apply(this, arguments);
26
+ };
31
27
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
32
28
  if (k2 === undefined) k2 = k;
33
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
29
+ var desc = Object.getOwnPropertyDescriptor(m, k);
30
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
31
+ desc = { enumerable: true, get: function() { return m[k]; } };
32
+ }
33
+ Object.defineProperty(o, k2, desc);
34
34
  }) : (function(o, m, k, k2) {
35
35
  if (k2 === undefined) k2 = k;
36
36
  o[k2] = m[k];
@@ -52,178 +52,51 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
52
52
  };
53
53
  Object.defineProperty(exports, "__esModule", { value: true });
54
54
  exports.Options = exports.Button = exports.TextBox = void 0;
55
+ var React = __importStar(require("react"));
56
+ var react_1 = require("react");
55
57
  var text_box_1 = __importDefault(require("devextreme/ui/text_box"));
56
- var PropTypes = __importStar(require("prop-types"));
57
58
  var component_1 = require("./core/component");
58
59
  var nested_option_1 = __importDefault(require("./core/nested-option"));
59
- var TextBox = /** @class */ (function (_super) {
60
- __extends(TextBox, _super);
61
- function TextBox() {
62
- var _this = _super !== null && _super.apply(this, arguments) || this;
63
- _this._WidgetClass = text_box_1.default;
64
- _this.subscribableOptions = ["value"];
65
- _this.independentEvents = ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onPaste", "onValueChanged"];
66
- _this._defaults = {
67
- defaultValue: "value"
68
- };
69
- _this._expectedChildren = {
70
- button: { optionName: "buttons", isCollectionItem: true }
71
- };
72
- return _this;
73
- }
74
- Object.defineProperty(TextBox.prototype, "instance", {
75
- get: function () {
76
- return this._instance;
77
- },
78
- enumerable: false,
79
- configurable: true
80
- });
81
- return TextBox;
82
- }(component_1.Component));
60
+ var TextBox = (0, react_1.memo)((0, react_1.forwardRef)(function (props, ref) {
61
+ var baseRef = (0, react_1.useRef)(null);
62
+ (0, react_1.useImperativeHandle)(ref, function () { return ({
63
+ instance: function () {
64
+ var _a;
65
+ return (_a = baseRef.current) === null || _a === void 0 ? void 0 : _a.getInstance();
66
+ }
67
+ }); }, [baseRef.current]);
68
+ var subscribableOptions = (0, react_1.useMemo)(function () { return (["value"]); }, []);
69
+ var independentEvents = (0, react_1.useMemo)(function () { return (["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onPaste", "onValueChanged"]); }, []);
70
+ var defaults = (0, react_1.useMemo)(function () { return ({
71
+ defaultValue: "value",
72
+ }); }, []);
73
+ var expectedChildren = (0, react_1.useMemo)(function () { return ({
74
+ button: { optionName: "buttons", isCollectionItem: true }
75
+ }); }, []);
76
+ return (React.createElement((component_1.Component), __assign({ WidgetClass: text_box_1.default, ref: baseRef, subscribableOptions: subscribableOptions, independentEvents: independentEvents, defaults: defaults, expectedChildren: expectedChildren }, props)));
77
+ }));
83
78
  exports.TextBox = TextBox;
84
- TextBox.propTypes = {
85
- accessKey: PropTypes.string,
86
- activeStateEnabled: PropTypes.bool,
87
- buttons: PropTypes.array,
88
- disabled: PropTypes.bool,
89
- elementAttr: PropTypes.object,
90
- focusStateEnabled: PropTypes.bool,
91
- height: PropTypes.oneOfType([
92
- PropTypes.func,
93
- PropTypes.number,
94
- PropTypes.string
95
- ]),
96
- hint: PropTypes.string,
97
- hoverStateEnabled: PropTypes.bool,
98
- isDirty: PropTypes.bool,
99
- isValid: PropTypes.bool,
100
- label: PropTypes.string,
101
- labelMode: PropTypes.oneOfType([
102
- PropTypes.string,
103
- PropTypes.oneOf([
104
- "static",
105
- "floating",
106
- "hidden",
107
- "outside"
108
- ])
109
- ]),
110
- mask: PropTypes.string,
111
- maskChar: PropTypes.string,
112
- maskInvalidMessage: PropTypes.string,
113
- maxLength: PropTypes.oneOfType([
114
- PropTypes.number,
115
- PropTypes.string
116
- ]),
117
- mode: PropTypes.oneOfType([
118
- PropTypes.string,
119
- PropTypes.oneOf([
120
- "email",
121
- "password",
122
- "search",
123
- "tel",
124
- "text",
125
- "url"
126
- ])
127
- ]),
128
- name: PropTypes.string,
129
- onChange: PropTypes.func,
130
- onContentReady: PropTypes.func,
131
- onCopy: PropTypes.func,
132
- onCut: PropTypes.func,
133
- onDisposing: PropTypes.func,
134
- onEnterKey: PropTypes.func,
135
- onFocusIn: PropTypes.func,
136
- onFocusOut: PropTypes.func,
137
- onInitialized: PropTypes.func,
138
- onInput: PropTypes.func,
139
- onKeyDown: PropTypes.func,
140
- onKeyUp: PropTypes.func,
141
- onOptionChanged: PropTypes.func,
142
- onPaste: PropTypes.func,
143
- onValueChanged: PropTypes.func,
144
- placeholder: PropTypes.string,
145
- readOnly: PropTypes.bool,
146
- rtlEnabled: PropTypes.bool,
147
- showClearButton: PropTypes.bool,
148
- showMaskMode: PropTypes.oneOfType([
149
- PropTypes.string,
150
- PropTypes.oneOf([
151
- "always",
152
- "onFocus"
153
- ])
154
- ]),
155
- spellcheck: PropTypes.bool,
156
- stylingMode: PropTypes.oneOfType([
157
- PropTypes.string,
158
- PropTypes.oneOf([
159
- "outlined",
160
- "underlined",
161
- "filled"
162
- ])
163
- ]),
164
- tabIndex: PropTypes.number,
165
- text: PropTypes.string,
166
- useMaskedValue: PropTypes.bool,
167
- validationErrors: PropTypes.array,
168
- validationMessageMode: PropTypes.oneOfType([
169
- PropTypes.string,
170
- PropTypes.oneOf([
171
- "always",
172
- "auto"
173
- ])
174
- ]),
175
- validationMessagePosition: PropTypes.oneOfType([
176
- PropTypes.string,
177
- PropTypes.oneOf([
178
- "bottom",
179
- "left",
180
- "right",
181
- "top"
182
- ])
183
- ]),
184
- validationStatus: PropTypes.oneOfType([
185
- PropTypes.string,
186
- PropTypes.oneOf([
187
- "valid",
188
- "invalid",
189
- "pending"
190
- ])
191
- ]),
192
- value: PropTypes.string,
193
- valueChangeEvent: PropTypes.string,
194
- visible: PropTypes.bool,
195
- width: PropTypes.oneOfType([
196
- PropTypes.func,
197
- PropTypes.number,
198
- PropTypes.string
199
- ])
200
- };
201
- var Button = /** @class */ (function (_super) {
202
- __extends(Button, _super);
203
- function Button() {
204
- return _super !== null && _super.apply(this, arguments) || this;
205
- }
206
- Button.OptionName = "buttons";
207
- Button.IsCollectionItem = true;
208
- Button.ExpectedChildren = {
79
+ var _componentButton = (0, react_1.memo)(function (props) {
80
+ return React.createElement((nested_option_1.default), __assign({}, props));
81
+ });
82
+ var Button = Object.assign(_componentButton, {
83
+ OptionName: "buttons",
84
+ IsCollectionItem: true,
85
+ ExpectedChildren: {
209
86
  options: { optionName: "options", isCollectionItem: false }
210
- };
211
- return Button;
212
- }(nested_option_1.default));
87
+ },
88
+ });
213
89
  exports.Button = Button;
214
- var Options = /** @class */ (function (_super) {
215
- __extends(Options, _super);
216
- function Options() {
217
- return _super !== null && _super.apply(this, arguments) || this;
218
- }
219
- Options.OptionName = "options";
220
- Options.TemplateProps = [{
90
+ var _componentOptions = (0, react_1.memo)(function (props) {
91
+ return React.createElement((nested_option_1.default), __assign({}, props));
92
+ });
93
+ var Options = Object.assign(_componentOptions, {
94
+ OptionName: "options",
95
+ TemplateProps: [{
221
96
  tmplOption: "template",
222
97
  render: "render",
223
- component: "component",
224
- keyFn: "keyFn"
225
- }];
226
- return Options;
227
- }(nested_option_1.default));
98
+ component: "component"
99
+ }],
100
+ });
228
101
  exports.Options = Options;
229
102
  exports.default = TextBox;