@dxc-technology/halstack-react 0.0.0-b061aa1 → 0.0.0-b0ab1e3

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 (229) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +10 -0
  4. package/{ThemeContext.js → HalstackContext.js} +31 -34
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +15 -47
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +8 -8
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +14 -16
  12. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  13. package/accordion-group/AccordionGroup.test.js +151 -0
  14. package/accordion-group/types.d.ts +8 -8
  15. package/alert/Alert.js +2 -2
  16. package/alert/Alert.test.js +92 -0
  17. package/badge/Badge.d.ts +4 -0
  18. package/badge/Badge.js +1 -1
  19. package/badge/types.d.ts +4 -0
  20. package/badge/types.js +5 -0
  21. package/bleed/Bleed.d.ts +3 -0
  22. package/bleed/Bleed.js +84 -0
  23. package/bleed/Bleed.stories.tsx +342 -0
  24. package/bleed/types.d.ts +37 -0
  25. package/bleed/types.js +5 -0
  26. package/box/Box.js +2 -2
  27. package/box/Box.test.js +18 -0
  28. package/button/Button.d.ts +1 -1
  29. package/button/Button.js +18 -25
  30. package/button/Button.stories.tsx +6 -8
  31. package/button/Button.test.js +35 -0
  32. package/button/types.d.ts +3 -7
  33. package/card/Card.js +28 -29
  34. package/card/Card.stories.tsx +1 -1
  35. package/card/Card.test.js +50 -0
  36. package/checkbox/Checkbox.d.ts +1 -1
  37. package/checkbox/Checkbox.js +42 -41
  38. package/checkbox/Checkbox.stories.tsx +124 -128
  39. package/checkbox/Checkbox.test.js +78 -0
  40. package/checkbox/types.d.ts +8 -4
  41. package/chip/Chip.d.ts +1 -1
  42. package/chip/Chip.js +17 -55
  43. package/chip/Chip.stories.tsx +6 -8
  44. package/chip/Chip.test.js +56 -0
  45. package/chip/types.d.ts +7 -15
  46. package/common/variables.js +59 -265
  47. package/date-input/DateInput.js +60 -52
  48. package/date-input/DateInput.stories.tsx +7 -7
  49. package/date-input/DateInput.test.js +479 -0
  50. package/date-input/types.d.ts +16 -9
  51. package/dialog/Dialog.js +8 -35
  52. package/dialog/Dialog.test.js +40 -0
  53. package/dropdown/Dropdown.d.ts +1 -1
  54. package/dropdown/Dropdown.js +22 -48
  55. package/dropdown/Dropdown.stories.tsx +249 -0
  56. package/dropdown/Dropdown.test.js +189 -0
  57. package/dropdown/types.d.ts +5 -14
  58. package/file-input/FileInput.d.ts +1 -1
  59. package/file-input/FileInput.js +148 -69
  60. package/file-input/FileInput.stories.tsx +507 -0
  61. package/file-input/FileInput.test.js +457 -0
  62. package/file-input/FileItem.js +3 -3
  63. package/file-input/types.d.ts +32 -7
  64. package/footer/Footer.d.ts +1 -1
  65. package/footer/Footer.js +28 -111
  66. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
  67. package/footer/Footer.test.js +109 -0
  68. package/footer/Icons.d.ts +2 -0
  69. package/footer/Icons.js +3 -3
  70. package/footer/types.d.ts +5 -9
  71. package/header/Header.js +22 -46
  72. package/header/Header.stories.tsx +46 -36
  73. package/header/Header.test.js +79 -0
  74. package/header/Icons.d.ts +2 -0
  75. package/heading/Heading.js +1 -1
  76. package/heading/Heading.stories.tsx +3 -2
  77. package/heading/Heading.test.js +186 -0
  78. package/inset/Inset.d.ts +3 -0
  79. package/inset/Inset.js +84 -0
  80. package/inset/Inset.stories.tsx +229 -0
  81. package/inset/types.d.ts +37 -0
  82. package/inset/types.js +5 -0
  83. package/layout/ApplicationLayout.js +9 -15
  84. package/layout/ApplicationLayout.stories.tsx +171 -0
  85. package/link/Link.js +10 -22
  86. package/link/Link.stories.tsx +6 -1
  87. package/link/Link.test.js +91 -0
  88. package/link/types.d.ts +5 -9
  89. package/list/List.d.ts +4 -0
  90. package/list/List.js +47 -0
  91. package/list/List.stories.tsx +95 -0
  92. package/list/types.d.ts +7 -0
  93. package/list/types.js +5 -0
  94. package/main.d.ts +11 -8
  95. package/main.js +66 -42
  96. package/number-input/NumberInput.js +14 -24
  97. package/number-input/NumberInput.stories.tsx +5 -5
  98. package/number-input/NumberInput.test.js +506 -0
  99. package/number-input/types.d.ts +16 -9
  100. package/package.json +8 -6
  101. package/paginator/Paginator.js +2 -8
  102. package/paginator/Paginator.test.js +266 -0
  103. package/password-input/PasswordInput.js +12 -13
  104. package/password-input/PasswordInput.stories.tsx +3 -3
  105. package/password-input/PasswordInput.test.js +181 -0
  106. package/password-input/types.d.ts +13 -10
  107. package/progress-bar/ProgressBar.js +4 -4
  108. package/progress-bar/ProgressBar.test.js +65 -0
  109. package/quick-nav/QuickNav.d.ts +4 -0
  110. package/quick-nav/QuickNav.js +64 -0
  111. package/quick-nav/QuickNav.stories.tsx +237 -0
  112. package/quick-nav/types.d.ts +21 -0
  113. package/quick-nav/types.js +5 -0
  114. package/radio/Radio.js +12 -13
  115. package/radio/Radio.test.js +71 -0
  116. package/radio-group/Radio.d.ts +4 -0
  117. package/radio-group/Radio.js +141 -0
  118. package/radio-group/RadioGroup.d.ts +4 -0
  119. package/radio-group/RadioGroup.js +280 -0
  120. package/radio-group/RadioGroup.stories.tsx +100 -0
  121. package/radio-group/RadioGroup.test.js +695 -0
  122. package/radio-group/types.d.ts +114 -0
  123. package/radio-group/types.js +5 -0
  124. package/resultsetTable/ResultsetTable.js +6 -3
  125. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  126. package/resultsetTable/ResultsetTable.test.js +306 -0
  127. package/resultsetTable/types.d.ts +1 -1
  128. package/row/Row.d.ts +3 -0
  129. package/row/Row.js +127 -0
  130. package/row/Row.stories.tsx +237 -0
  131. package/row/types.d.ts +28 -0
  132. package/row/types.js +5 -0
  133. package/select/Icons.d.ts +10 -0
  134. package/select/Icons.js +93 -0
  135. package/select/Listbox.d.ts +4 -0
  136. package/select/Listbox.js +148 -0
  137. package/select/Option.d.ts +4 -0
  138. package/select/Option.js +110 -0
  139. package/select/Select.d.ts +4 -0
  140. package/select/Select.js +107 -317
  141. package/select/Select.stories.tsx +91 -81
  142. package/select/Select.test.js +2057 -0
  143. package/select/types.d.ts +213 -0
  144. package/select/types.js +5 -0
  145. package/sidenav/Sidenav.js +2 -2
  146. package/sidenav/Sidenav.stories.tsx +18 -1
  147. package/sidenav/Sidenav.test.js +56 -0
  148. package/slider/Slider.d.ts +1 -1
  149. package/slider/Slider.js +4 -3
  150. package/slider/Slider.stories.tsx +8 -8
  151. package/slider/Slider.test.js +150 -0
  152. package/slider/types.d.ts +4 -0
  153. package/spinner/Spinner.js +2 -2
  154. package/spinner/Spinner.stories.jsx +1 -0
  155. package/spinner/Spinner.test.js +64 -0
  156. package/stack/Stack.d.ts +3 -0
  157. package/stack/Stack.js +97 -0
  158. package/stack/Stack.stories.tsx +164 -0
  159. package/stack/types.d.ts +24 -0
  160. package/stack/types.js +5 -0
  161. package/switch/Switch.d.ts +1 -1
  162. package/switch/Switch.js +34 -21
  163. package/switch/Switch.stories.tsx +15 -15
  164. package/switch/Switch.test.js +98 -0
  165. package/switch/types.d.ts +6 -2
  166. package/table/Table.js +2 -2
  167. package/table/Table.stories.jsx +2 -1
  168. package/table/Table.test.js +26 -0
  169. package/tabs/Tabs.d.ts +1 -1
  170. package/tabs/Tabs.js +17 -19
  171. package/tabs/Tabs.stories.tsx +8 -11
  172. package/tabs/Tabs.test.js +140 -0
  173. package/tabs/types.d.ts +27 -15
  174. package/tag/Tag.d.ts +1 -1
  175. package/tag/Tag.js +18 -28
  176. package/tag/Tag.stories.tsx +26 -29
  177. package/tag/Tag.test.js +60 -0
  178. package/tag/types.d.ts +23 -14
  179. package/text/Text.d.ts +7 -0
  180. package/text/Text.js +30 -0
  181. package/text/Text.stories.tsx +19 -0
  182. package/text-input/TextInput.js +38 -30
  183. package/text-input/TextInput.stories.tsx +34 -16
  184. package/text-input/TextInput.test.js +1712 -0
  185. package/text-input/types.d.ts +18 -11
  186. package/textarea/Textarea.d.ts +4 -0
  187. package/textarea/Textarea.js +26 -56
  188. package/textarea/Textarea.stories.jsx +37 -15
  189. package/textarea/Textarea.test.js +437 -0
  190. package/textarea/types.d.ts +137 -0
  191. package/textarea/types.js +5 -0
  192. package/toggle-group/ToggleGroup.d.ts +1 -1
  193. package/toggle-group/ToggleGroup.js +15 -17
  194. package/toggle-group/ToggleGroup.stories.tsx +27 -32
  195. package/toggle-group/ToggleGroup.test.js +156 -0
  196. package/toggle-group/types.d.ts +46 -25
  197. package/useTheme.d.ts +2 -0
  198. package/useTheme.js +2 -2
  199. package/wizard/Wizard.d.ts +1 -1
  200. package/wizard/Wizard.js +81 -22
  201. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +13 -23
  202. package/wizard/Wizard.test.js +141 -0
  203. package/wizard/types.d.ts +8 -8
  204. package/V3Select/V3Select.js +0 -455
  205. package/V3Select/index.d.ts +0 -27
  206. package/V3Textarea/V3Textarea.js +0 -260
  207. package/V3Textarea/index.d.ts +0 -27
  208. package/date/Date.js +0 -373
  209. package/date/index.d.ts +0 -27
  210. package/input-text/Icons.js +0 -22
  211. package/input-text/InputText.js +0 -611
  212. package/input-text/index.d.ts +0 -36
  213. package/select/index.d.ts +0 -131
  214. package/textarea/index.d.ts +0 -127
  215. package/toggle/Toggle.js +0 -186
  216. package/toggle/index.d.ts +0 -21
  217. package/upload/Upload.js +0 -201
  218. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  219. package/upload/buttons-upload/Icons.js +0 -40
  220. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  221. package/upload/dragAndDropArea/Icons.js +0 -39
  222. package/upload/file-upload/FileToUpload.js +0 -115
  223. package/upload/file-upload/Icons.js +0 -66
  224. package/upload/files-upload/FilesToUpload.js +0 -109
  225. package/upload/index.d.ts +0 -15
  226. package/upload/transaction/Icons.js +0 -160
  227. package/upload/transaction/Transaction.js +0 -104
  228. package/upload/transactions/Transactions.js +0 -94
  229. package/wizard/Icons.js +0 -65
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ var _Tag = _interopRequireDefault(require("./Tag"));
10
+
11
+ describe("Tag component tests", function () {
12
+ test("Tag renders with correct label", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tag["default"], {
14
+ label: "tag-test"
15
+ })),
16
+ getByText = _render.getByText;
17
+
18
+ expect(getByText("tag-test")).toBeTruthy();
19
+ });
20
+ test("Tag renders with correct label before", function () {
21
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tag["default"], {
22
+ label: "tag-test",
23
+ labelPosition: "before"
24
+ })),
25
+ getByText = _render2.getByText;
26
+
27
+ expect(getByText("tag-test")).toBeTruthy();
28
+ });
29
+ test("Tag renders with correct icon", function () {
30
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tag["default"], {
31
+ label: "tag-test",
32
+ icon: "/test-icon.jpg"
33
+ })),
34
+ getByRole = _render3.getByRole;
35
+
36
+ expect(getByRole("img").getAttribute("src")).toBe("/test-icon.jpg");
37
+ });
38
+ test("Tag renders with link href", function () {
39
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tag["default"], {
40
+ label: "tag-test",
41
+ linkHref: "/test/page"
42
+ })),
43
+ getByRole = _render4.getByRole;
44
+
45
+ expect(getByRole("link").getAttribute("href")).toBe("/test/page");
46
+ });
47
+ test("Call correct function on click", function () {
48
+ var onClick = jest.fn();
49
+
50
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tag["default"], {
51
+ label: "tag-test",
52
+ onClick: onClick
53
+ })),
54
+ getByText = _render5.getByText;
55
+
56
+ _react2.fireEvent.click(getByText("tag-test"));
57
+
58
+ expect(onClick).toHaveBeenCalled();
59
+ });
60
+ });
package/tag/types.d.ts CHANGED
@@ -6,20 +6,8 @@ declare type Margin = {
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- declare type SVG = React.SVGProps<SVGSVGElement> | React.FunctionComponent<React.SVGProps<SVGSVGElement>>;
10
- declare type Props = {
11
- /**
12
- * Element used as the icon that will be placed next to the label.
13
- */
14
- icon?: SVG;
15
- /**
16
- * @deprecated URL of the icon.
17
- */
18
- iconSrc?: string;
19
- /**
20
- * Text to be placed next inside the tag.
21
- */
22
- label?: string;
9
+ declare type SVG = React.SVGProps<SVGSVGElement>;
10
+ declare type TagCommonProps = {
23
11
  /**
24
12
  * If defined, the tag will be displayed as an anchor, using this prop as "href".
25
13
  * Component will show some visual feedback on hover.
@@ -57,4 +45,25 @@ declare type Props = {
57
45
  */
58
46
  tabIndex?: number;
59
47
  };
48
+ declare type TagLabelProps = TagCommonProps & {
49
+ /**
50
+ * Element or path used as the icon that will be placed next to the label.
51
+ */
52
+ icon?: string | SVG;
53
+ /**
54
+ * Text to be placed next inside the tag.
55
+ */
56
+ label: string;
57
+ };
58
+ declare type TagIconProps = TagCommonProps & {
59
+ /**
60
+ * Element or path used as the icon that will be placed next to the label.
61
+ */
62
+ icon: string | SVG;
63
+ /**
64
+ * Text to be placed next inside the tag.
65
+ */
66
+ label?: string;
67
+ };
68
+ declare type Props = TagLabelProps | TagIconProps;
60
69
  export default Props;
package/text/Text.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ declare type TextProps = {
3
+ as?: "p" | "span";
4
+ children: React.ReactNode;
5
+ };
6
+ declare function Text({ as, children }: TextProps): JSX.Element;
7
+ export default Text;
package/text/Text.js ADDED
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _templateObject;
17
+
18
+ function Text(_ref) {
19
+ var _ref$as = _ref.as,
20
+ as = _ref$as === void 0 ? "span" : _ref$as,
21
+ children = _ref.children;
22
+ return /*#__PURE__*/_react["default"].createElement(StyledText, {
23
+ as: as
24
+ }, children);
25
+ }
26
+
27
+ var StyledText = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0px;\n font-family: Open Sans, sans-serif;\n line-height: 1.5em;\n"])));
28
+
29
+ var _default = Text;
30
+ exports["default"] = _default;
@@ -0,0 +1,19 @@
1
+ import React from "react";
2
+ import Title from "../../.storybook/components/Title";
3
+ import DxcText from "./Text";
4
+
5
+ export default {
6
+ title: "Text",
7
+ component: DxcText,
8
+ };
9
+
10
+ export const Chromatic = () => (
11
+ <>
12
+ <Title title="Two texts as span" theme="light" level={4} />
13
+ <DxcText>Text 1.</DxcText>
14
+ <DxcText>Text 2.</DxcText>
15
+ <Title title="Two texts as p" theme="light" level={4} />
16
+ <DxcText as="p">Text 1.</DxcText>
17
+ <DxcText as="p">Text 2.</DxcText>
18
+ </>
19
+ );
@@ -19,7 +19,7 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
24
24
  var _variables = require("../common/variables.js");
25
25
 
@@ -27,7 +27,7 @@ var _utils = require("../common/utils.js");
27
27
 
28
28
  var _uuid = require("uuid");
29
29
 
30
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
30
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
31
31
 
32
32
  var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext"));
33
33
 
@@ -132,13 +132,13 @@ var getLastOptionIndex = function getLastOptionIndex(filteredSuggestions) {
132
132
  };
133
133
 
134
134
  var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
135
- var _ref$label = _ref.label,
136
- label = _ref$label === void 0 ? "" : _ref$label,
135
+ var label = _ref.label,
137
136
  _ref$name = _ref.name,
138
137
  name = _ref$name === void 0 ? "" : _ref$name,
138
+ _ref$defaultValue = _ref.defaultValue,
139
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
139
140
  value = _ref.value,
140
- _ref$helperText = _ref.helperText,
141
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
141
+ helperText = _ref.helperText,
142
142
  _ref$placeholder = _ref.placeholder,
143
143
  placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
144
144
  action = _ref.action,
@@ -154,8 +154,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
154
154
  suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
155
155
  onChange = _ref.onChange,
156
156
  onBlur = _ref.onBlur,
157
- _ref$error = _ref.error,
158
- error = _ref$error === void 0 ? "" : _ref$error,
157
+ error = _ref.error,
159
158
  suggestions = _ref.suggestions,
160
159
  pattern = _ref.pattern,
161
160
  minLength = _ref.minLength,
@@ -172,7 +171,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
172
171
  _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
173
172
  inputId = _useState2[0];
174
173
 
175
- var _useState3 = (0, _react.useState)(""),
174
+ var _useState3 = (0, _react.useState)(defaultValue),
176
175
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
177
176
  innerValue = _useState4[0],
178
177
  setInnerValue = _useState4[1];
@@ -208,7 +207,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
208
207
  var colorsTheme = (0, _useTheme["default"])();
209
208
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
210
209
  var autosuggestId = "".concat(inputId, "-listBox");
211
- var errorId = "error-message-".concat(inputId);
210
+ var errorId = "error-".concat(inputId);
212
211
  var numberInputContext = (0, _react.useContext)(_NumberInputContext["default"]);
213
212
  var lastOptionIndex = (0, _react.useMemo)(function () {
214
213
  return getLastOptionIndex(filteredSuggestions);
@@ -269,8 +268,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
269
268
  value: changedValue,
270
269
  error: getNumberErrorMessage(newValue)
271
270
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
272
- value: changedValue,
273
- error: null
271
+ value: changedValue
274
272
  });
275
273
  };
276
274
 
@@ -303,8 +301,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
303
301
  value: event.target.value,
304
302
  error: getNumberErrorMessage(event.target.value)
305
303
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
306
- value: event.target.value,
307
- error: null
304
+ value: event.target.value
308
305
  });
309
306
  };
310
307
 
@@ -500,11 +497,12 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
500
497
  margin: margin,
501
498
  ref: ref,
502
499
  size: size
503
- }, /*#__PURE__*/_react["default"].createElement(Label, {
500
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
504
501
  htmlFor: inputId,
505
502
  disabled: disabled,
506
- backgroundType: backgroundType
507
- }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, "(Optional)")), /*#__PURE__*/_react["default"].createElement(HelperText, {
503
+ backgroundType: backgroundType,
504
+ helperText: helperText
505
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, "(Optional)")), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
508
506
  disabled: disabled,
509
507
  backgroundType: backgroundType
510
508
  }, helperText), /*#__PURE__*/_react["default"].createElement(InputContainer, {
@@ -541,16 +539,19 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
541
539
  role: isTextInputType() && hasSuggestions() ? "combobox" : "textbox",
542
540
  "aria-autocomplete": isTextInputType() && hasSuggestions() ? "list" : undefined,
543
541
  "aria-controls": isTextInputType() && hasSuggestions() ? autosuggestId : undefined,
542
+ "aria-disabled": disabled,
544
543
  "aria-expanded": isTextInputType() && hasSuggestions() ? isOpen ? "true" : "false" : undefined,
545
544
  "aria-activedescendant": isTextInputType() && hasSuggestions() && isOpen && visualFocusedSuggIndex !== -1 ? "suggestion-".concat(visualFocusedSuggIndex) : undefined,
546
545
  "aria-invalid": error ? "true" : "false",
547
- "aria-describedby": error ? errorId : undefined,
546
+ "aria-errormessage": error ? errorId : undefined,
548
547
  "aria-required": optional ? "false" : "true"
549
548
  }), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
550
549
  backgroundType: backgroundType,
551
550
  "aria-label": "Error"
552
551
  }, textInputIcons.error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
553
- onClick: handleClearActionOnClick,
552
+ onClick: function onClick() {
553
+ return handleClearActionOnClick();
554
+ },
554
555
  onMouseDown: function onMouseDown(event) {
555
556
  event.stopPropagation();
556
557
  },
@@ -561,7 +562,9 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
561
562
  }, textInputIcons.clear), (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(Action, {
562
563
  ref: actionRef,
563
564
  disabled: disabled,
564
- onClick: handleDecrementActionOnClick,
565
+ onClick: function onClick() {
566
+ return handleDecrementActionOnClick();
567
+ },
565
568
  onMouseDown: function onMouseDown(event) {
566
569
  event.stopPropagation();
567
570
  },
@@ -572,7 +575,9 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
572
575
  }, textInputIcons.decrement), /*#__PURE__*/_react["default"].createElement(Action, {
573
576
  ref: actionRef,
574
577
  disabled: disabled,
575
- onClick: handleIncrementActionOnClick,
578
+ onClick: function onClick() {
579
+ return handleIncrementActionOnClick();
580
+ },
576
581
  onMouseDown: function onMouseDown(event) {
577
582
  event.stopPropagation();
578
583
  },
@@ -583,7 +588,9 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
583
588
  }, textInputIcons.increment)) : action && /*#__PURE__*/_react["default"].createElement(Action, {
584
589
  ref: actionRef,
585
590
  disabled: disabled,
586
- onClick: action.onClick,
591
+ onClick: function onClick() {
592
+ return action.onClick();
593
+ },
587
594
  onMouseDown: function onMouseDown(event) {
588
595
  event.stopPropagation();
589
596
  },
@@ -613,9 +620,10 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
613
620
  });
614
621
  }), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage, null, "Searching..."), isAutosuggestError && /*#__PURE__*/_react["default"].createElement(SuggestionsError, null, /*#__PURE__*/_react["default"].createElement(SuggestionsErrorIcon, {
615
622
  backgroundType: backgroundType
616
- }, textInputIcons.error), "Error fetching data"))), !disabled && /*#__PURE__*/_react["default"].createElement(Error, {
623
+ }, textInputIcons.error), "Error fetching data"))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
617
624
  id: errorId,
618
- backgroundType: backgroundType
625
+ backgroundType: backgroundType,
626
+ "aria-live": error ? "assertive" : "off"
619
627
  }, error)));
620
628
  });
621
629
 
@@ -644,7 +652,7 @@ var DxcInput = _styledComponents["default"].div(_templateObject || (_templateObj
644
652
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
645
653
  });
646
654
 
647
- var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
655
+ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n ", "\n"])), function (props) {
648
656
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
649
657
  }, function (props) {
650
658
  return props.theme.fontFamily;
@@ -656,13 +664,15 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
656
664
  return props.theme.labelFontWeight;
657
665
  }, function (props) {
658
666
  return props.theme.labelLineHeight;
667
+ }, function (props) {
668
+ return !props.helperText && "margin-bottom: 0.25rem";
659
669
  });
660
670
 
661
671
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
662
672
  return props.theme.optionalLabelFontWeight;
663
673
  });
664
674
 
665
- var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
675
+ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-bottom: 0.25rem;\n"])), function (props) {
666
676
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
667
677
  }, function (props) {
668
678
  return props.theme.fontFamily;
@@ -676,9 +686,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
676
686
  return props.theme.helperTextLineHeight;
677
687
  });
678
688
 
679
- var InputContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: center;\n height: calc(2.5rem - 2px);\n margin: ", ";\n padding: 0 0.5rem;\n\n ", "\n box-shadow: 0 0 0 2px transparent;\n border-radius: 4px;\n border: 1px solid\n ", ";\n ", "\n ", ";\n\n ", ";\n"])), function (props) {
680
- return "".concat(props.theme.inputMarginTop, " 0 ").concat(props.theme.inputMarginBottom, " 0");
681
- }, function (props) {
689
+ var InputContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: center;\n height: calc(2.5rem - 2px);\n padding: 0 0.5rem;\n\n ", "\n box-shadow: 0 0 0 2px transparent;\n border-radius: 4px;\n border: 1px solid\n ", ";\n ", "\n ", ";\n\n ", ";\n"])), function (props) {
682
690
  if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
683
691
  }, function (props) {
684
692
  if (props.disabled) return props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;else return props.backgroundType === "dark" ? props.theme.enabledBorderColorOnDark : props.theme.enabledBorderColor;
@@ -738,7 +746,7 @@ var ErrorIcon = _styledComponents["default"].span(_templateObject11 || (_templat
738
746
  return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
739
747
  });
740
748
 
741
- var Error = _styledComponents["default"].span(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 1.5em;\n color: ", ";\n font-family: ", ";\n font-size: 0.75rem;\n font-weight: 400;\n line-height: 1.5em;\n"])), function (props) {
749
+ var Error = _styledComponents["default"].span(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 1.5em;\n color: ", ";\n font-family: ", ";\n font-size: 0.75rem;\n font-weight: 400;\n line-height: 1.5em;\n margin-top: 0.25rem;\n"])), function (props) {
742
750
  return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
743
751
  }, function (props) {
744
752
  return props.theme.fontFamily;
@@ -70,7 +70,7 @@ export const Chromatic = () => (
70
70
  </ExampleContainer>
71
71
  <ExampleContainer pseudoState="pseudo-hover">
72
72
  <Title title="Hovered action" theme="light" level={4} />
73
- <DxcTextInput label="Text input" value="Text" clearable />
73
+ <DxcTextInput label="Text input" defaultValue="Text" clearable />
74
74
  </ExampleContainer>
75
75
  <ExampleContainer>
76
76
  <Title title="Without label" theme="light" level={4} />
@@ -82,13 +82,13 @@ export const Chromatic = () => (
82
82
  </ExampleContainer>
83
83
  <ExampleContainer>
84
84
  <Title title="Helper text, optional, and clearable" theme="light" level={4} />
85
- <DxcTextInput label="Text input" clearable value="Text" helperText="Help message" optional />
85
+ <DxcTextInput label="Text input" clearable defaultValue="Text" helperText="Help message" optional />
86
86
  </ExampleContainer>
87
87
  <ExampleContainer>
88
88
  <Title title="Clearable and large icon action" theme="light" level={4} />
89
89
  <DxcTextInput
90
90
  label="Text input"
91
- value="Text text text text text text text text text text"
91
+ defaultValue="Text text text text text text text text text text"
92
92
  clearable
93
93
  action={actionLargeIcon}
94
94
  />
@@ -107,12 +107,21 @@ export const Chromatic = () => (
107
107
  label="Error text input"
108
108
  helperText="Help message"
109
109
  error="Error message."
110
- value="Text"
110
+ defaultValue="Text"
111
111
  clearable
112
112
  optional
113
113
  action={action}
114
114
  />
115
115
  </ExampleContainer>
116
+ <ExampleContainer pseudoState="pseudo-hover">
117
+ <Title title="Invalid and hovered" theme="light" level={4} />
118
+ <DxcTextInput
119
+ label="Error text input"
120
+ helperText="Help message"
121
+ placeholder="Placeholder"
122
+ error="Error message."
123
+ />
124
+ </ExampleContainer>
116
125
  <ExampleContainer>
117
126
  <Title title="Disabled and placeholder" theme="light" level={4} />
118
127
  <DxcTextInput label="Disabled text input" disabled placeholder="Placeholder" />
@@ -124,7 +133,7 @@ export const Chromatic = () => (
124
133
  helperText="Help message"
125
134
  disabled
126
135
  optional
127
- value="Text"
136
+ defaultValue="Text"
128
137
  action={action}
129
138
  />
130
139
  </ExampleContainer>
@@ -137,7 +146,7 @@ export const Chromatic = () => (
137
146
  optional
138
147
  prefix="+34"
139
148
  suffix="USD"
140
- value="Text"
149
+ defaultValue="Text"
141
150
  action={action}
142
151
  />
143
152
  </ExampleContainer>
@@ -154,7 +163,7 @@ export const Chromatic = () => (
154
163
  </ExampleContainer>
155
164
  <ExampleContainer pseudoState="pseudo-hover">
156
165
  <Title title="Hovered action" theme="dark" level={4} />
157
- <DxcTextInput label="Text input" value="Text" clearable />
166
+ <DxcTextInput label="Text input" defaultValue="Text" clearable />
158
167
  </ExampleContainer>
159
168
  <ExampleContainer>
160
169
  <Title title="Helper text, placeholder, optional and action" theme="dark" level={4} />
@@ -168,16 +177,25 @@ export const Chromatic = () => (
168
177
  />
169
178
  </ExampleContainer>
170
179
  <ExampleContainer>
171
- <Title title="Helper text, clearable value, error and action" theme="dark" level={4} />
180
+ <Title title="Invalid" theme="dark" level={4} />
172
181
  <DxcTextInput
173
- label="Text input"
182
+ label="Error text input"
174
183
  helperText="Help message"
175
184
  error="Error message."
176
- value="Text"
185
+ defaultValue="Text"
177
186
  clearable
178
187
  action={action}
179
188
  />
180
189
  </ExampleContainer>
190
+ <ExampleContainer pseudoState="pseudo-hover">
191
+ <Title title="Invalid and hovered" theme="dark" level={4} />
192
+ <DxcTextInput
193
+ label="Error text input"
194
+ helperText="Help message"
195
+ placeholder="Placeholder"
196
+ error="Error message."
197
+ />
198
+ </ExampleContainer>
181
199
  <ExampleContainer>
182
200
  <Title title="Prefix and suffix" theme="dark" level={4} />
183
201
  <DxcTextInput label="With prefix and suffix" prefix="+34" suffix="USD" />
@@ -193,7 +211,7 @@ export const Chromatic = () => (
193
211
  helperText="Help message"
194
212
  disabled
195
213
  optional
196
- value="Text"
214
+ defaultValue="Text"
197
215
  action={action}
198
216
  />
199
217
  </ExampleContainer>
@@ -206,7 +224,7 @@ export const Chromatic = () => (
206
224
  optional
207
225
  prefix="+34"
208
226
  suffix="USD"
209
- value="Text"
227
+ defaultValue="Text"
210
228
  action={action}
211
229
  />
212
230
  </ExampleContainer>
@@ -262,14 +280,14 @@ export const Chromatic = () => (
262
280
  );
263
281
 
264
282
  const FocusedActionTextInput = () => (
265
- <ExampleContainer>
283
+ <ExampleContainer expanded>
266
284
  <Title title="Focused action" theme="light" level={4} />
267
285
  <DxcTextInput label="Text input" action={action} clearable />
268
286
  </ExampleContainer>
269
287
  );
270
288
 
271
289
  const ActivedActionTextInput = () => (
272
- <ExampleContainer pseudoState="pseudo-active">
290
+ <ExampleContainer pseudoState="pseudo-active" expanded>
273
291
  <Title title="Actived action" theme="light" level={4} />
274
292
  <DxcTextInput label="Text input" action={action} clearable />
275
293
  </ExampleContainer>
@@ -306,7 +324,7 @@ const ActivedOptionAutosuggest = () => (
306
324
  const FocusedActionTextInputOnDark = () => (
307
325
  <BackgroundColorProvider color="#333333">
308
326
  <DarkContainer>
309
- <ExampleContainer>
327
+ <ExampleContainer expanded>
310
328
  <Title title="Focused action" theme="dark" level={4} />
311
329
  <DxcTextInput label="Text input" action={action} clearable />
312
330
  </ExampleContainer>
@@ -317,7 +335,7 @@ const FocusedActionTextInputOnDark = () => (
317
335
  const ActivedActionTextInputOnDark = () => (
318
336
  <BackgroundColorProvider color="#333333">
319
337
  <DarkContainer>
320
- <ExampleContainer pseudoState="pseudo-active">
338
+ <ExampleContainer pseudoState="pseudo-active" expanded>
321
339
  <Title title="Actived action" theme="dark" level={4} />
322
340
  <DxcTextInput label="Text input" action={action} clearable />
323
341
  </ExampleContainer>