@dxc-technology/halstack-react 0.0.0-28a98e5 → 0.0.0-290c489

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 (359) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +18 -81
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +61 -76
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +7 -23
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +6 -4
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +28 -64
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +123 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +1 -1
  44. package/button/Button.js +24 -32
  45. package/button/Button.stories.tsx +250 -282
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +9 -13
  48. package/card/Card.d.ts +4 -0
  49. package/card/Card.js +38 -77
  50. package/card/Card.stories.tsx +201 -0
  51. package/card/Card.test.js +50 -0
  52. package/card/ice-cream.jpg +0 -0
  53. package/card/types.d.ts +67 -0
  54. package/card/types.js +5 -0
  55. package/checkbox/Checkbox.d.ts +4 -0
  56. package/checkbox/Checkbox.js +45 -63
  57. package/checkbox/Checkbox.stories.tsx +188 -0
  58. package/checkbox/Checkbox.test.js +78 -0
  59. package/checkbox/types.d.ts +64 -0
  60. package/checkbox/types.js +5 -0
  61. package/chip/Chip.d.ts +4 -0
  62. package/chip/Chip.js +16 -76
  63. package/chip/Chip.stories.tsx +119 -0
  64. package/chip/Chip.test.js +56 -0
  65. package/chip/types.d.ts +45 -0
  66. package/chip/types.js +5 -0
  67. package/common/variables.js +301 -373
  68. package/date-input/DateInput.d.ts +4 -0
  69. package/date-input/DateInput.js +62 -86
  70. package/date-input/DateInput.stories.tsx +138 -0
  71. package/date-input/DateInput.test.js +479 -0
  72. package/date-input/types.d.ts +107 -0
  73. package/date-input/types.js +5 -0
  74. package/dialog/Dialog.d.ts +4 -0
  75. package/dialog/Dialog.js +10 -56
  76. package/dialog/Dialog.stories.tsx +212 -0
  77. package/dialog/Dialog.test.js +40 -0
  78. package/dialog/types.d.ts +43 -0
  79. package/dialog/types.js +5 -0
  80. package/dropdown/Dropdown.d.ts +4 -0
  81. package/dropdown/Dropdown.js +28 -87
  82. package/dropdown/Dropdown.stories.tsx +249 -0
  83. package/dropdown/Dropdown.test.js +189 -0
  84. package/dropdown/types.d.ts +80 -0
  85. package/dropdown/types.js +5 -0
  86. package/file-input/FileInput.d.ts +4 -0
  87. package/file-input/FileInput.js +172 -111
  88. package/file-input/FileInput.stories.tsx +507 -0
  89. package/file-input/FileInput.test.js +457 -0
  90. package/file-input/FileItem.d.ts +14 -0
  91. package/file-input/FileItem.js +16 -23
  92. package/file-input/types.d.ts +112 -0
  93. package/file-input/types.js +5 -0
  94. package/flex/Flex.d.ts +3 -0
  95. package/flex/Flex.js +74 -0
  96. package/flex/Flex.stories.tsx +103 -0
  97. package/flex/types.d.ts +21 -0
  98. package/flex/types.js +5 -0
  99. package/footer/Footer.d.ts +4 -0
  100. package/footer/Footer.js +36 -148
  101. package/footer/Footer.stories.tsx +130 -0
  102. package/footer/Footer.test.js +109 -0
  103. package/footer/Icons.d.ts +2 -0
  104. package/footer/Icons.js +4 -4
  105. package/footer/types.d.ts +65 -0
  106. package/footer/types.js +5 -0
  107. package/header/Header.d.ts +7 -0
  108. package/header/Header.js +55 -78
  109. package/header/Header.stories.tsx +172 -0
  110. package/header/Header.test.js +79 -0
  111. package/header/Icons.d.ts +2 -0
  112. package/header/Icons.js +2 -27
  113. package/header/types.d.ts +47 -0
  114. package/header/types.js +5 -0
  115. package/heading/Heading.d.ts +4 -0
  116. package/heading/Heading.js +7 -24
  117. package/heading/Heading.stories.tsx +54 -0
  118. package/heading/Heading.test.js +186 -0
  119. package/heading/types.d.ts +33 -0
  120. package/heading/types.js +5 -0
  121. package/inset/Inset.d.ts +3 -0
  122. package/inset/Inset.js +51 -0
  123. package/inset/Inset.stories.tsx +229 -0
  124. package/inset/types.d.ts +37 -0
  125. package/inset/types.js +5 -0
  126. package/layout/ApplicationLayout.d.ts +20 -0
  127. package/layout/ApplicationLayout.js +71 -135
  128. package/layout/ApplicationLayout.stories.tsx +161 -0
  129. package/layout/Icons.d.ts +5 -0
  130. package/layout/Icons.js +13 -2
  131. package/layout/SidenavContext.d.ts +5 -0
  132. package/layout/SidenavContext.js +19 -0
  133. package/layout/types.d.ts +42 -0
  134. package/layout/types.js +5 -0
  135. package/link/Link.d.ts +4 -0
  136. package/link/Link.js +60 -107
  137. package/link/Link.stories.tsx +186 -0
  138. package/link/Link.test.js +83 -0
  139. package/link/types.d.ts +54 -0
  140. package/link/types.js +5 -0
  141. package/main.d.ts +14 -12
  142. package/main.js +78 -56
  143. package/number-input/NumberInput.d.ts +4 -0
  144. package/number-input/NumberInput.js +16 -68
  145. package/number-input/NumberInput.stories.tsx +115 -0
  146. package/number-input/NumberInput.test.js +506 -0
  147. package/number-input/NumberInputContext.d.ts +4 -0
  148. package/number-input/NumberInputContext.js +5 -2
  149. package/number-input/numberInputContextTypes.d.ts +19 -0
  150. package/number-input/numberInputContextTypes.js +5 -0
  151. package/number-input/types.d.ts +124 -0
  152. package/number-input/types.js +5 -0
  153. package/package.json +11 -7
  154. package/paginator/Paginator.d.ts +4 -0
  155. package/paginator/Paginator.js +19 -69
  156. package/paginator/Paginator.stories.tsx +63 -0
  157. package/paginator/Paginator.test.js +308 -0
  158. package/paginator/types.d.ts +38 -0
  159. package/paginator/types.js +5 -0
  160. package/paragraph/Paragraph.d.ts +6 -0
  161. package/paragraph/Paragraph.js +38 -0
  162. package/paragraph/Paragraph.stories.tsx +44 -0
  163. package/password-input/PasswordInput.d.ts +4 -0
  164. package/password-input/PasswordInput.js +24 -57
  165. package/password-input/PasswordInput.stories.tsx +131 -0
  166. package/password-input/PasswordInput.test.js +180 -0
  167. package/password-input/types.d.ts +110 -0
  168. package/password-input/types.js +5 -0
  169. package/progress-bar/ProgressBar.d.ts +4 -0
  170. package/progress-bar/ProgressBar.js +6 -24
  171. package/progress-bar/ProgressBar.stories.jsx +58 -0
  172. package/progress-bar/ProgressBar.test.js +65 -0
  173. package/progress-bar/types.d.ts +37 -0
  174. package/progress-bar/types.js +5 -0
  175. package/quick-nav/QuickNav.d.ts +4 -0
  176. package/quick-nav/QuickNav.js +118 -0
  177. package/quick-nav/QuickNav.stories.tsx +264 -0
  178. package/quick-nav/types.d.ts +21 -0
  179. package/quick-nav/types.js +5 -0
  180. package/radio-group/Radio.d.ts +4 -0
  181. package/radio-group/Radio.js +141 -0
  182. package/radio-group/RadioGroup.d.ts +4 -0
  183. package/radio-group/RadioGroup.js +283 -0
  184. package/radio-group/RadioGroup.stories.tsx +100 -0
  185. package/radio-group/RadioGroup.test.js +695 -0
  186. package/radio-group/types.d.ts +114 -0
  187. package/radio-group/types.js +5 -0
  188. package/resultsetTable/ResultsetTable.d.ts +4 -0
  189. package/resultsetTable/ResultsetTable.js +9 -29
  190. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  191. package/resultsetTable/ResultsetTable.test.js +348 -0
  192. package/resultsetTable/types.d.ts +67 -0
  193. package/resultsetTable/types.js +5 -0
  194. package/row/Row.d.ts +3 -0
  195. package/row/Row.js +127 -0
  196. package/row/Row.stories.tsx +237 -0
  197. package/row/types.d.ts +28 -0
  198. package/row/types.js +5 -0
  199. package/select/Icons.d.ts +10 -0
  200. package/select/Icons.js +93 -0
  201. package/select/Listbox.d.ts +4 -0
  202. package/select/Listbox.js +175 -0
  203. package/select/Option.d.ts +4 -0
  204. package/select/Option.js +110 -0
  205. package/select/Select.d.ts +4 -0
  206. package/select/Select.js +214 -418
  207. package/select/Select.stories.tsx +626 -0
  208. package/select/Select.test.js +2162 -0
  209. package/select/types.d.ts +212 -0
  210. package/select/types.js +5 -0
  211. package/sidenav/Sidenav.d.ts +10 -0
  212. package/sidenav/Sidenav.js +174 -63
  213. package/sidenav/Sidenav.stories.tsx +180 -0
  214. package/sidenav/Sidenav.test.js +44 -0
  215. package/sidenav/types.d.ts +73 -0
  216. package/sidenav/types.js +5 -0
  217. package/slider/Slider.d.ts +4 -0
  218. package/slider/Slider.js +63 -85
  219. package/slider/Slider.stories.tsx +177 -0
  220. package/slider/Slider.test.js +150 -0
  221. package/slider/types.d.ts +82 -0
  222. package/slider/types.js +5 -0
  223. package/spinner/Spinner.d.ts +4 -0
  224. package/spinner/Spinner.js +9 -26
  225. package/spinner/Spinner.stories.jsx +103 -0
  226. package/spinner/Spinner.test.js +64 -0
  227. package/spinner/types.d.ts +32 -0
  228. package/spinner/types.js +5 -0
  229. package/stack/Stack.d.ts +4 -0
  230. package/stack/Stack.js +56 -0
  231. package/stack/Stack.stories.tsx +263 -0
  232. package/stack/types.d.ts +32 -0
  233. package/stack/types.js +5 -0
  234. package/switch/Switch.d.ts +4 -0
  235. package/switch/Switch.js +49 -62
  236. package/switch/Switch.stories.tsx +160 -0
  237. package/switch/Switch.test.js +98 -0
  238. package/switch/types.d.ts +62 -0
  239. package/switch/types.js +5 -0
  240. package/table/Table.d.ts +4 -0
  241. package/table/Table.js +3 -3
  242. package/table/Table.stories.jsx +277 -0
  243. package/table/Table.test.js +26 -0
  244. package/table/types.d.ts +21 -0
  245. package/table/types.js +5 -0
  246. package/tabs/Tabs.d.ts +4 -0
  247. package/tabs/Tabs.js +24 -72
  248. package/tabs/Tabs.stories.tsx +112 -0
  249. package/tabs/Tabs.test.js +140 -0
  250. package/tabs/types.d.ts +82 -0
  251. package/tabs/types.js +5 -0
  252. package/tabs-nav/NavTabs.d.ts +8 -0
  253. package/tabs-nav/NavTabs.js +125 -0
  254. package/tabs-nav/NavTabs.stories.tsx +170 -0
  255. package/tabs-nav/NavTabs.test.js +82 -0
  256. package/tabs-nav/Tab.d.ts +4 -0
  257. package/tabs-nav/Tab.js +132 -0
  258. package/tabs-nav/types.d.ts +53 -0
  259. package/tabs-nav/types.js +5 -0
  260. package/tag/Tag.d.ts +4 -0
  261. package/tag/Tag.js +34 -59
  262. package/tag/Tag.stories.tsx +142 -0
  263. package/tag/Tag.test.js +60 -0
  264. package/tag/types.d.ts +69 -0
  265. package/tag/types.js +5 -0
  266. package/text-input/Suggestion.d.ts +4 -0
  267. package/text-input/Suggestion.js +55 -0
  268. package/text-input/TextInput.d.ts +4 -0
  269. package/text-input/TextInput.js +137 -185
  270. package/text-input/TextInput.stories.tsx +474 -0
  271. package/text-input/TextInput.test.js +1712 -0
  272. package/text-input/types.d.ts +178 -0
  273. package/text-input/types.js +5 -0
  274. package/textarea/Textarea.d.ts +4 -0
  275. package/textarea/Textarea.js +39 -77
  276. package/textarea/Textarea.stories.jsx +157 -0
  277. package/textarea/Textarea.test.js +437 -0
  278. package/textarea/types.d.ts +137 -0
  279. package/textarea/types.js +5 -0
  280. package/toggle-group/ToggleGroup.d.ts +4 -0
  281. package/toggle-group/ToggleGroup.js +18 -46
  282. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  283. package/toggle-group/ToggleGroup.test.js +156 -0
  284. package/toggle-group/types.d.ts +105 -0
  285. package/toggle-group/types.js +5 -0
  286. package/typography/Typography.d.ts +4 -0
  287. package/typography/Typography.js +131 -0
  288. package/typography/Typography.stories.tsx +198 -0
  289. package/typography/types.d.ts +18 -0
  290. package/typography/types.js +5 -0
  291. package/useTheme.d.ts +2 -0
  292. package/useTheme.js +2 -2
  293. package/useTranslatedLabels.d.ts +2 -0
  294. package/useTranslatedLabels.js +20 -0
  295. package/wizard/Wizard.d.ts +4 -0
  296. package/wizard/Wizard.js +118 -104
  297. package/wizard/Wizard.stories.tsx +233 -0
  298. package/wizard/Wizard.test.js +141 -0
  299. package/wizard/types.d.ts +65 -0
  300. package/wizard/types.js +5 -0
  301. package/ThemeContext.js +0 -246
  302. package/V3Select/V3Select.js +0 -455
  303. package/V3Select/index.d.ts +0 -27
  304. package/V3Textarea/V3Textarea.js +0 -260
  305. package/V3Textarea/index.d.ts +0 -27
  306. package/accordion/index.d.ts +0 -28
  307. package/accordion-group/index.d.ts +0 -16
  308. package/alert/index.d.ts +0 -51
  309. package/box/index.d.ts +0 -25
  310. package/card/index.d.ts +0 -22
  311. package/checkbox/index.d.ts +0 -24
  312. package/chip/index.d.ts +0 -22
  313. package/date/Date.js +0 -373
  314. package/date/index.d.ts +0 -27
  315. package/date-input/index.d.ts +0 -95
  316. package/dialog/index.d.ts +0 -18
  317. package/dropdown/index.d.ts +0 -26
  318. package/file-input/index.d.ts +0 -81
  319. package/footer/index.d.ts +0 -25
  320. package/header/index.d.ts +0 -25
  321. package/heading/index.d.ts +0 -17
  322. package/input-text/Icons.js +0 -22
  323. package/input-text/InputText.js +0 -611
  324. package/input-text/index.d.ts +0 -36
  325. package/link/index.d.ts +0 -23
  326. package/number-input/index.d.ts +0 -113
  327. package/paginator/index.d.ts +0 -20
  328. package/password-input/index.d.ts +0 -94
  329. package/progress-bar/index.d.ts +0 -18
  330. package/radio/Radio.js +0 -195
  331. package/radio/index.d.ts +0 -23
  332. package/resultsetTable/index.d.ts +0 -19
  333. package/select/index.d.ts +0 -131
  334. package/sidenav/index.d.ts +0 -13
  335. package/slider/index.d.ts +0 -29
  336. package/spinner/index.d.ts +0 -17
  337. package/switch/index.d.ts +0 -24
  338. package/table/index.d.ts +0 -13
  339. package/tabs/index.d.ts +0 -19
  340. package/tag/index.d.ts +0 -24
  341. package/text-input/index.d.ts +0 -135
  342. package/textarea/index.d.ts +0 -117
  343. package/toggle/Toggle.js +0 -186
  344. package/toggle/index.d.ts +0 -21
  345. package/toggle-group/index.d.ts +0 -21
  346. package/upload/Upload.js +0 -201
  347. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  348. package/upload/buttons-upload/Icons.js +0 -40
  349. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  350. package/upload/dragAndDropArea/Icons.js +0 -39
  351. package/upload/file-upload/FileToUpload.js +0 -115
  352. package/upload/file-upload/Icons.js +0 -66
  353. package/upload/files-upload/FilesToUpload.js +0 -109
  354. package/upload/index.d.ts +0 -15
  355. package/upload/transaction/Icons.js +0 -160
  356. package/upload/transaction/Transaction.js +0 -104
  357. package/upload/transactions/Transactions.js +0 -94
  358. package/wizard/Icons.js +0 -65
  359. package/wizard/index.d.ts +0 -18
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
13
 
16
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
@@ -21,9 +19,9 @@ var _react = _interopRequireWildcard(require("react"));
21
19
 
22
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
21
 
24
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
25
23
 
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
24
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
27
25
 
28
26
  var _variables = require("../common/variables.js");
29
27
 
@@ -31,11 +29,13 @@ var _utils = require("../common/utils.js");
31
29
 
32
30
  var _uuid = require("uuid");
33
31
 
34
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
32
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
+
34
+ var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext"));
35
35
 
36
- var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext.js"));
36
+ var _Suggestion = _interopRequireDefault(require("./Suggestion"));
37
37
 
38
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18;
38
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;
39
39
 
40
40
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
41
41
 
@@ -114,10 +114,6 @@ var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
114
114
  return "This field is required. Please, enter a value.";
115
115
  };
116
116
 
117
- var getLengthErrorMessage = function getLengthErrorMessage(length) {
118
- return "Min length ".concat(length.min, ", max length ").concat(length.max, ".");
119
- };
120
-
121
117
  var getPatternErrorMessage = function getPatternErrorMessage() {
122
118
  return "Please match the format requested.";
123
119
  };
@@ -126,16 +122,27 @@ var patternMatch = function patternMatch(pattern, value) {
126
122
  return new RegExp(pattern).test(value);
127
123
  };
128
124
 
129
- var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
130
- var _action$title;
125
+ var getLastOptionIndex = function getLastOptionIndex(filteredSuggestions) {
126
+ var last = 0;
127
+
128
+ var reducer = function reducer(acc, current) {
129
+ var _current$options;
130
+
131
+ return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
132
+ };
133
+
134
+ if (filteredSuggestions.length > 0) filteredSuggestions[0].options ? last = filteredSuggestions.reduce(reducer, 0) - 1 : last = filteredSuggestions.length - 1;
135
+ return last;
136
+ };
131
137
 
132
- var _ref$label = _ref.label,
133
- label = _ref$label === void 0 ? "" : _ref$label,
138
+ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
139
+ var label = _ref.label,
134
140
  _ref$name = _ref.name,
135
141
  name = _ref$name === void 0 ? "" : _ref$name,
142
+ _ref$defaultValue = _ref.defaultValue,
143
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
136
144
  value = _ref.value,
137
- _ref$helperText = _ref.helperText,
138
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
145
+ helperText = _ref.helperText,
139
146
  _ref$placeholder = _ref.placeholder,
140
147
  placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
141
148
  action = _ref.action,
@@ -151,11 +158,11 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
151
158
  suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
152
159
  onChange = _ref.onChange,
153
160
  onBlur = _ref.onBlur,
154
- _ref$error = _ref.error,
155
- error = _ref$error === void 0 ? "" : _ref$error,
161
+ error = _ref.error,
156
162
  suggestions = _ref.suggestions,
157
163
  pattern = _ref.pattern,
158
- length = _ref.length,
164
+ minLength = _ref.minLength,
165
+ maxLength = _ref.maxLength,
159
166
  _ref$autocomplete = _ref.autocomplete,
160
167
  autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
161
168
  margin = _ref.margin,
@@ -168,7 +175,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
168
175
  _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
169
176
  inputId = _useState2[0];
170
177
 
171
- var _useState3 = (0, _react.useState)(""),
178
+ var _useState3 = (0, _react.useState)(defaultValue),
172
179
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
173
180
  innerValue = _useState4[0],
174
181
  setInnerValue = _useState4[1];
@@ -202,17 +209,21 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
202
209
  var inputRef = (0, _react.useRef)(null);
203
210
  var actionRef = (0, _react.useRef)(null);
204
211
  var colorsTheme = (0, _useTheme["default"])();
212
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
205
213
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
206
214
  var autosuggestId = "".concat(inputId, "-listBox");
207
- var errorId = "error-message-".concat(inputId);
215
+ var errorId = "error-".concat(inputId);
208
216
  var numberInputContext = (0, _react.useContext)(_NumberInputContext["default"]);
217
+ var lastOptionIndex = (0, _react.useMemo)(function () {
218
+ return getLastOptionIndex(filteredSuggestions);
219
+ }, [filteredSuggestions]);
209
220
 
210
221
  var isNotOptional = function isNotOptional(value) {
211
222
  return value === "" && !optional;
212
223
  };
213
224
 
214
225
  var isLengthIncorrect = function isLengthIncorrect(value) {
215
- return value !== "" && length && length.min && length.max && (value.length < length.min || value.length > length.max);
226
+ return value && minLength && maxLength && (value.length < minLength || value.length > maxLength);
216
227
  };
217
228
 
218
229
  var isNumberIncorrect = function isNumberIncorrect(value) {
@@ -226,15 +237,15 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
226
237
  };
227
238
 
228
239
  var getNumberErrorMessage = function getNumberErrorMessage(value) {
229
- if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) return "Value must be greater than or equal to ".concat(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber, ".");else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && parseInt(value) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) return "Value must be less than or equal to ".concat(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber, ".");
240
+ if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) return translatedLabels.numberInput.valueGreaterThanOrEqualToErrorMessage(numberInputContext.minNumber);else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && parseInt(value) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) return translatedLabels.numberInput.valueLessThanOrEqualToErrorMessage(numberInputContext.maxNumber);
230
241
  };
231
242
 
232
243
  var hasSuggestions = function hasSuggestions() {
233
- return typeof suggestions === "function" || suggestions && suggestions.length > 0;
244
+ return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
234
245
  };
235
246
 
236
247
  var openSuggestions = function openSuggestions() {
237
- if (hasSuggestions() && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)) changeIsOpen(true);
248
+ hasSuggestions() && changeIsOpen(true);
238
249
  };
239
250
 
240
251
  var closeSuggestions = function closeSuggestions() {
@@ -247,19 +258,18 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
247
258
  var changedValue = typeof newValue === "number" ? newValue.toString() : newValue;
248
259
  if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
249
260
  value: changedValue,
250
- error: getNotOptionalErrorMessage()
261
+ error: translatedLabels.formFields.requiredValueErrorMessage
251
262
  });else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
252
263
  value: changedValue,
253
- error: getLengthErrorMessage(length)
264
+ error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
254
265
  });else if (newValue && pattern && !patternMatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
255
266
  value: changedValue,
256
- error: getPatternErrorMessage()
267
+ error: translatedLabels.formFields.formatRequestedErrorMessage
257
268
  });else if (newValue && isNumberIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
258
269
  value: changedValue,
259
270
  error: getNumberErrorMessage(newValue)
260
271
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
261
- value: changedValue,
262
- error: null
272
+ value: changedValue
263
273
  });
264
274
  };
265
275
 
@@ -267,44 +277,40 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
267
277
  document.activeElement !== actionRef.current && inputRef.current.focus();
268
278
  };
269
279
 
270
- var handleIOnChange = function handleIOnChange(event) {
271
- openSuggestions();
272
- changeValue(event.target.value);
280
+ var handleInputContainerOnMouseDown = function handleInputContainerOnMouseDown(event) {
281
+ // Avoid input to lose the focus when the container is pressed
282
+ document.activeElement === inputRef.current && event.preventDefault();
273
283
  };
274
284
 
275
- var handleIOnClick = function handleIOnClick() {
285
+ var handleIOnChange = function handleIOnChange(event) {
276
286
  openSuggestions();
287
+ changeValue(event.target.value);
277
288
  };
278
289
 
279
290
  var handleIOnBlur = function handleIOnBlur(event) {
280
291
  suggestions && closeSuggestions();
281
292
  if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
282
293
  value: event.target.value,
283
- error: getNotOptionalErrorMessage()
294
+ error: translatedLabels.formFields.requiredValueErrorMessage
284
295
  });else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
285
296
  value: event.target.value,
286
- error: getLengthErrorMessage(length)
297
+ error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
287
298
  });else if (event.target.value && pattern && !patternMatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
288
299
  value: event.target.value,
289
- error: getPatternErrorMessage()
300
+ error: translatedLabels.formFields.formatRequestedErrorMessage
290
301
  });else if (event.target.value && isNumberIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
291
302
  value: event.target.value,
292
303
  error: getNumberErrorMessage(event.target.value)
293
304
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
294
- value: event.target.value,
295
- error: null
305
+ value: event.target.value
296
306
  });
297
307
  };
298
308
 
299
- var handleIOnFocus = function handleIOnFocus() {
300
- openSuggestions();
301
- };
302
-
303
309
  var handleIOnKeyDown = function handleIOnKeyDown(event) {
304
310
  switch (event.keyCode) {
305
311
  case 40:
306
312
  // Arrow Down
307
- if (numberInputContext) {
313
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
308
314
  decrementNumber();
309
315
  event.preventDefault();
310
316
  } else {
@@ -322,7 +328,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
322
328
 
323
329
  case 38:
324
330
  // Arrow Up
325
- if (numberInputContext) {
331
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
326
332
  incrementNumber();
327
333
  event.preventDefault();
328
334
  } else {
@@ -461,69 +467,28 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
461
467
  changeVisualFocusedSuggIndex(-1);
462
468
  }
463
469
 
464
- numberInputContext && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
465
- }, [value, innerValue, suggestions]);
466
- (0, _react.useLayoutEffect)(function () {
467
- if (filteredSuggestions.length === 0 && !isSearching && !isAutosuggestError) closeSuggestions();
468
- }, [filteredSuggestions]);
469
-
470
- var getLastOptionIndex = function getLastOptionIndex() {
471
- var last = 0;
472
-
473
- var reducer = function reducer(acc, current) {
474
- var _current$options;
475
-
476
- return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
477
- };
478
-
479
- if (filteredSuggestions.length > 0) filteredSuggestions[0].options ? last = filteredSuggestions.reduce(reducer, 0) - 1 : last = filteredSuggestions.length - 1;
480
- return last;
481
- };
482
-
483
- var lastOptionIndex = (0, _react.useMemo)(function () {
484
- return getLastOptionIndex();
485
- }, [filteredSuggestions]);
486
-
487
- var HighlightedSuggestion = function HighlightedSuggestion(_ref2) {
488
- var suggestion = _ref2.suggestion,
489
- index = _ref2.index;
490
- var regEx = new RegExp(value !== null && value !== void 0 ? value : innerValue, "i");
491
- var matchedWords = suggestion.match(regEx);
492
- var noMatchedWords = suggestion.replace(regEx, "");
493
- var isLastOption = index === lastOptionIndex;
494
- return /*#__PURE__*/_react["default"].createElement(Suggestion, {
495
- id: "suggestion-".concat(index),
496
- onClick: function onClick() {
497
- changeValue(suggestion);
498
- closeSuggestions();
499
- },
500
- role: "option",
501
- "aria-selected": visualFocusedSuggIndex === index && "true",
502
- visualFocused: visualFocusedSuggIndex === index
503
- }, /*#__PURE__*/_react["default"].createElement(StyledSuggestion, {
504
- last: isLastOption,
505
- visualFocused: visualFocusedSuggIndex === index
506
- }, typeof suggestions === "function" ? suggestion : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("strong", null, matchedWords), noMatchedWords)));
507
- };
508
-
470
+ (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
471
+ }, [value, innerValue, suggestions, numberInputContext]);
509
472
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
510
473
  theme: colorsTheme.textInput
511
- }, /*#__PURE__*/_react["default"].createElement(DxcInput, {
474
+ }, /*#__PURE__*/_react["default"].createElement(TextInputContainer, {
512
475
  margin: margin,
513
- ref: ref,
514
- size: size
515
- }, /*#__PURE__*/_react["default"].createElement(Label, {
476
+ size: size,
477
+ ref: ref
478
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
516
479
  htmlFor: inputId,
517
480
  disabled: disabled,
518
- backgroundType: backgroundType
519
- }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, "(Optional)")), /*#__PURE__*/_react["default"].createElement(HelperText, {
481
+ backgroundType: backgroundType,
482
+ hasHelperText: helperText ? true : false
483
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
520
484
  disabled: disabled,
521
485
  backgroundType: backgroundType
522
486
  }, helperText), /*#__PURE__*/_react["default"].createElement(InputContainer, {
523
- error: error,
487
+ error: error ? true : false,
524
488
  disabled: disabled,
525
489
  backgroundType: backgroundType,
526
- onClick: handleInputContainerOnClick
490
+ onClick: handleInputContainerOnClick,
491
+ onMouseDown: handleInputContainerOnMouseDown
527
492
  }, prefix && /*#__PURE__*/_react["default"].createElement(Prefix, {
528
493
  disabled: disabled,
529
494
  backgroundType: backgroundType
@@ -532,54 +497,83 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
532
497
  name: name,
533
498
  value: value !== null && value !== void 0 ? value : innerValue,
534
499
  placeholder: placeholder,
535
- onChange: handleIOnChange,
536
- onClick: handleIOnClick,
537
500
  onBlur: handleIOnBlur,
538
- onFocus: handleIOnFocus,
501
+ onChange: handleIOnChange,
502
+ onFocus: function onFocus() {
503
+ openSuggestions();
504
+ },
539
505
  onKeyDown: handleIOnKeyDown,
506
+ onMouseDown: function onMouseDown(event) {
507
+ event.stopPropagation();
508
+ },
540
509
  disabled: disabled,
541
510
  ref: inputRef,
542
511
  backgroundType: backgroundType,
543
512
  pattern: pattern,
544
- minLength: length === null || length === void 0 ? void 0 : length.min,
545
- maxLength: length === null || length === void 0 ? void 0 : length.max,
513
+ minLength: minLength,
514
+ maxLength: maxLength,
546
515
  autoComplete: autocomplete,
547
516
  tabIndex: tabIndex,
548
517
  role: isTextInputType() && hasSuggestions() ? "combobox" : "textbox",
549
518
  "aria-autocomplete": isTextInputType() && hasSuggestions() ? "list" : undefined,
550
519
  "aria-controls": isTextInputType() && hasSuggestions() ? autosuggestId : undefined,
520
+ "aria-disabled": disabled,
551
521
  "aria-expanded": isTextInputType() && hasSuggestions() ? isOpen ? "true" : "false" : undefined,
552
522
  "aria-activedescendant": isTextInputType() && hasSuggestions() && isOpen && visualFocusedSuggIndex !== -1 ? "suggestion-".concat(visualFocusedSuggIndex) : undefined,
553
523
  "aria-invalid": error ? "true" : "false",
554
- "aria-describedby": error ? errorId : undefined,
524
+ "aria-errormessage": error ? errorId : undefined,
555
525
  "aria-required": optional ? "false" : "true"
556
526
  }), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
557
527
  backgroundType: backgroundType,
558
528
  "aria-label": "Error"
559
529
  }, textInputIcons.error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
560
- onClick: handleClearActionOnClick,
530
+ onClick: function onClick() {
531
+ return handleClearActionOnClick();
532
+ },
533
+ onMouseDown: function onMouseDown(event) {
534
+ event.stopPropagation();
535
+ },
561
536
  backgroundType: backgroundType,
562
537
  tabIndex: tabIndex,
563
- "aria-label": "Clear"
538
+ title: translatedLabels.textInput.clearFieldActionTitle,
539
+ "aria-label": translatedLabels.textInput.clearFieldActionTitle
564
540
  }, 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, {
565
541
  ref: actionRef,
566
542
  disabled: disabled,
567
- onClick: handleDecrementActionOnClick,
543
+ onClick: function onClick() {
544
+ return handleDecrementActionOnClick();
545
+ },
546
+ onMouseDown: function onMouseDown(event) {
547
+ event.stopPropagation();
548
+ },
568
549
  backgroundType: backgroundType,
569
550
  tabIndex: tabIndex,
570
- "aria-label": "Decrement"
551
+ title: translatedLabels.numberInput.decrementValueTitle,
552
+ "aria-label": translatedLabels.numberInput.decrementValueTitle
571
553
  }, textInputIcons.decrement), /*#__PURE__*/_react["default"].createElement(Action, {
572
554
  ref: actionRef,
573
555
  disabled: disabled,
574
- onClick: handleIncrementActionOnClick,
556
+ onClick: function onClick() {
557
+ return handleIncrementActionOnClick();
558
+ },
559
+ onMouseDown: function onMouseDown(event) {
560
+ event.stopPropagation();
561
+ },
575
562
  backgroundType: backgroundType,
576
563
  tabIndex: tabIndex,
577
- "aria-label": "Increment"
564
+ title: translatedLabels.numberInput.incrementValueTitle,
565
+ "aria-label": translatedLabels.numberInput.incrementValueTitle
578
566
  }, textInputIcons.increment)) : action && /*#__PURE__*/_react["default"].createElement(Action, {
579
567
  ref: actionRef,
580
568
  disabled: disabled,
581
- onClick: action.onClick,
582
- title: (_action$title = action.title) !== null && _action$title !== void 0 ? _action$title : action.title,
569
+ onClick: function onClick() {
570
+ return action.onClick();
571
+ },
572
+ onMouseDown: function onMouseDown(event) {
573
+ event.stopPropagation();
574
+ },
575
+ title: action.title,
576
+ "aria-label": action.title,
583
577
  backgroundType: backgroundType,
584
578
  tabIndex: tabIndex
585
579
  }, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ActionIcon, {
@@ -587,29 +581,35 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
587
581
  }) : action.icon), suffix && /*#__PURE__*/_react["default"].createElement(Suffix, {
588
582
  disabled: disabled,
589
583
  backgroundType: backgroundType
590
- }, suffix), isOpen && /*#__PURE__*/_react["default"].createElement(Suggestions, {
584
+ }, suffix), isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError) && /*#__PURE__*/_react["default"].createElement(Suggestions, {
591
585
  id: autosuggestId,
592
- isError: isAutosuggestError,
586
+ error: isAutosuggestError ? true : false,
593
587
  onMouseDown: function onMouseDown(event) {
594
588
  event.preventDefault();
595
589
  },
596
- onMouseLeave: function onMouseLeave() {
597
- changeVisualFocusedSuggIndex(-1);
598
- },
599
590
  ref: suggestionsRef,
600
591
  role: "listbox",
601
592
  "aria-label": label
602
593
  }, !isSearching && !isAutosuggestError && filteredSuggestions.length > 0 && filteredSuggestions.map(function (suggestion, index) {
603
- return /*#__PURE__*/_react["default"].createElement(HighlightedSuggestion, {
604
- key: "suggestion-".concat((0, _uuid.v4)()),
594
+ return /*#__PURE__*/_react["default"].createElement(_Suggestion["default"], {
595
+ key: "suggestion-".concat(index),
596
+ id: "suggestion-".concat(index),
597
+ value: value !== null && value !== void 0 ? value : innerValue,
598
+ onClick: function onClick() {
599
+ changeValue(suggestion);
600
+ closeSuggestions();
601
+ },
605
602
  suggestion: suggestion,
606
- index: index
603
+ isLast: index === lastOptionIndex,
604
+ visuallyFocused: visualFocusedSuggIndex === index,
605
+ highlighted: typeof suggestions === "function"
607
606
  });
608
- }), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage, null, "Searching..."), isAutosuggestError && /*#__PURE__*/_react["default"].createElement(SuggestionsError, null, /*#__PURE__*/_react["default"].createElement(SuggestionsErrorIcon, {
607
+ }), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage, null, translatedLabels.textInput.searchingMessage), isAutosuggestError && /*#__PURE__*/_react["default"].createElement(SuggestionsError, null, /*#__PURE__*/_react["default"].createElement(SuggestionsErrorIcon, {
609
608
  backgroundType: backgroundType
610
- }, textInputIcons.error), "Error fetching data"))), !disabled && /*#__PURE__*/_react["default"].createElement(Error, {
609
+ }, textInputIcons.error), translatedLabels.textInput.fetchingDataErrorMessage))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
611
610
  id: errorId,
612
- backgroundType: backgroundType
611
+ backgroundType: backgroundType,
612
+ "aria-live": error ? "assertive" : "off"
613
613
  }, error)));
614
614
  });
615
615
 
@@ -624,7 +624,7 @@ var calculateWidth = function calculateWidth(margin, size) {
624
624
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
625
625
  };
626
626
 
627
- var DxcInput = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
627
+ var TextInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
628
628
  return calculateWidth(props.margin, props.size);
629
629
  }, function (props) {
630
630
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -638,7 +638,7 @@ var DxcInput = _styledComponents["default"].div(_templateObject || (_templateObj
638
638
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
639
639
  });
640
640
 
641
- 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) {
641
+ 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) {
642
642
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
643
643
  }, function (props) {
644
644
  return props.theme.fontFamily;
@@ -650,13 +650,15 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
650
650
  return props.theme.labelFontWeight;
651
651
  }, function (props) {
652
652
  return props.theme.labelLineHeight;
653
+ }, function (props) {
654
+ return !props.hasHelperText && "margin-bottom: 0.25rem";
653
655
  });
654
656
 
655
657
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
656
658
  return props.theme.optionalLabelFontWeight;
657
659
  });
658
660
 
659
- 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) {
661
+ 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) {
660
662
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
661
663
  }, function (props) {
662
664
  return props.theme.fontFamily;
@@ -670,9 +672,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
670
672
  return props.theme.helperTextLineHeight;
671
673
  });
672
674
 
673
- 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) {
674
- return "".concat(props.theme.inputMarginTop, " 0 ").concat(props.theme.inputMarginBottom, " 0");
675
- }, function (props) {
675
+ 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) {
676
676
  if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
677
677
  }, function (props) {
678
678
  if (props.disabled) return props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;else return props.backgroundType === "dark" ? props.theme.enabledBorderColorOnDark : props.theme.enabledBorderColor;
@@ -684,7 +684,7 @@ var InputContainer = _styledComponents["default"].div(_templateObject5 || (_temp
684
684
  return !props.disabled && "\n &:hover {\n border-color: ".concat(props.error ? "transparent" : props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor, ";\n ").concat(props.error && "box-shadow: 0 0 0 2px ".concat(props.backgroundType === "dark" ? props.theme.hoverErrorBorderColorOnDark : props.theme.hoverErrorBorderColor, ";"), "\n }\n &:focus-within {\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n ");
685
685
  });
686
686
 
687
- var Input = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n height: calc(2.5rem - 2px);\n width: 100%;\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n ", "\n\n ::placeholder {\n color: ", ";\n }\n"])), function (props) {
687
+ var Input = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n height: calc(2.5rem - 2px);\n width: 100%;\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n ", "\n\n ::placeholder {\n color: ", ";\n }\n"])), function (props) {
688
688
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledValueFontColorOnDark : props.theme.disabledValueFontColor : props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
689
689
  }, function (props) {
690
690
  return props.theme.fontFamily;
@@ -732,16 +732,16 @@ var ErrorIcon = _styledComponents["default"].span(_templateObject11 || (_templat
732
732
  return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
733
733
  });
734
734
 
735
- 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) {
735
+ 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) {
736
736
  return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
737
737
  }, function (props) {
738
738
  return props.theme.fontFamily;
739
739
  });
740
740
 
741
741
  var Suggestions = _styledComponents["default"].ul(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n z-index: 1;\n max-height: 304px;\n overflow-y: auto;\n top: calc(100% + 4px);\n left: 0;\n margin: 0;\n padding: 0.25rem 0;\n width: 100%;\n background-color: ", ";\n border: 1px solid\n ", ";\n border-radius: 0.25rem;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n cursor: default;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
742
- return props.isError ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
742
+ return props.error ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
743
743
  }, function (props) {
744
- return props.isError ? props.theme.errorListDialogBorderColor : props.theme.listDialogBorderColor;
744
+ return props.error ? props.theme.errorListDialogBorderColor : props.theme.listDialogBorderColor;
745
745
  }, function (props) {
746
746
  return props.theme.listOptionFontColor;
747
747
  }, function (props) {
@@ -754,65 +754,17 @@ var Suggestions = _styledComponents["default"].ul(_templateObject13 || (_templat
754
754
  return props.theme.listOptionFontWeight;
755
755
  });
756
756
 
757
- var Suggestion = _styledComponents["default"].li(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 0.5rem;\n line-height: 1.715em;\n cursor: pointer;\n\n box-shadow: inset 0 0 0 2px\n ", ";\n &:hover {\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n }\n"])), function (props) {
758
- return props.visualFocused ? props.theme.focusListOptionBorderColor : "transparent";
759
- }, function (props) {
760
- return props.theme.hoverListOptionBackgroundColor;
761
- }, function (props) {
762
- return props.theme.activeListOptionBackgroundColor;
763
- });
764
-
765
- var StyledSuggestion = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n padding: 0.25rem 0.5rem 0.188rem 0.5rem;\n ", ";\n"])), function (props) {
766
- return props.last || props.visualFocused ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listOptionDividerColor);
767
- });
768
-
769
- var SuggestionsSystemMessage = _styledComponents["default"].span(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n color: ", ";\n line-height: 1.715em;\n"])), function (props) {
757
+ var SuggestionsSystemMessage = _styledComponents["default"].span(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n color: ", ";\n line-height: 1.715em;\n"])), function (props) {
770
758
  return props.theme.systemMessageFontColor;
771
759
  });
772
760
 
773
- var SuggestionsErrorIcon = _styledComponents["default"].span(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 0.5rem;\n height: 18px;\n width: 18px;\n color: ", ";\n"])), function (props) {
761
+ var SuggestionsErrorIcon = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 0.5rem;\n height: 18px;\n width: 18px;\n color: ", ";\n"])), function (props) {
774
762
  return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
775
763
  });
776
764
 
777
- var SuggestionsError = _styledComponents["default"].span(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n align-items: center;\n line-height: 1.715em;\n color: ", ";\n"])), function (props) {
765
+ var SuggestionsError = _styledComponents["default"].span(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n align-items: center;\n line-height: 1.715em;\n color: ", ";\n"])), function (props) {
778
766
  return props.theme.errorListDialogFontColor;
779
767
  });
780
768
 
781
- DxcTextInput.propTypes = {
782
- label: _propTypes["default"].string,
783
- name: _propTypes["default"].string,
784
- value: _propTypes["default"].string,
785
- helperText: _propTypes["default"].string,
786
- placeholder: _propTypes["default"].string,
787
- action: _propTypes["default"].shape({
788
- onClick: _propTypes["default"].func.isRequired,
789
- icon: _propTypes["default"].oneOfType([_propTypes["default"].shape({
790
- type: _propTypes["default"].oneOf(["svg"])
791
- }), _propTypes["default"].string]).isRequired
792
- }),
793
- clearable: _propTypes["default"].bool,
794
- disabled: _propTypes["default"].bool,
795
- optional: _propTypes["default"].bool,
796
- prefix: _propTypes["default"].string,
797
- suffix: _propTypes["default"].string,
798
- onChange: _propTypes["default"].func,
799
- onBlur: _propTypes["default"].func,
800
- error: _propTypes["default"].string,
801
- autocomplete: _propTypes["default"].string,
802
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
803
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
804
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
805
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
806
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
807
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
808
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
809
- suggestions: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].array]),
810
- pattern: _propTypes["default"].string,
811
- length: _propTypes["default"].shape({
812
- min: _propTypes["default"].number,
813
- max: _propTypes["default"].number
814
- }),
815
- tabIndex: _propTypes["default"].number
816
- };
817
769
  var _default = DxcTextInput;
818
770
  exports["default"] = _default;