@dxc-technology/halstack-react 0.0.0-4687966 → 0.0.0-47ce41d

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 (304) 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 +1 -1
  6. package/accordion/Accordion.js +124 -137
  7. package/accordion/Accordion.stories.tsx +306 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +12 -11
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +16 -37
  12. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  13. package/accordion-group/AccordionGroup.test.js +126 -0
  14. package/accordion-group/types.d.ts +17 -10
  15. package/alert/Alert.js +7 -4
  16. package/alert/Alert.test.js +92 -0
  17. package/alert/types.d.ts +1 -1
  18. package/badge/Badge.d.ts +4 -0
  19. package/badge/Badge.js +6 -4
  20. package/badge/types.d.ts +5 -0
  21. package/{radio → badge}/types.js +0 -0
  22. package/bleed/Bleed.d.ts +3 -0
  23. package/bleed/Bleed.js +51 -0
  24. package/bleed/Bleed.stories.tsx +341 -0
  25. package/bleed/types.d.ts +37 -0
  26. package/bleed/types.js +5 -0
  27. package/box/Box.d.ts +1 -1
  28. package/box/Box.js +27 -40
  29. package/box/Box.test.js +18 -0
  30. package/box/types.d.ts +1 -4
  31. package/bulleted-list/BulletedList.d.ts +7 -0
  32. package/bulleted-list/BulletedList.js +123 -0
  33. package/bulleted-list/BulletedList.stories.tsx +200 -0
  34. package/bulleted-list/types.d.ts +11 -0
  35. package/bulleted-list/types.js +5 -0
  36. package/button/Button.d.ts +1 -1
  37. package/button/Button.js +62 -83
  38. package/button/Button.stories.tsx +231 -241
  39. package/button/Button.test.js +35 -0
  40. package/button/types.d.ts +10 -14
  41. package/card/Card.js +26 -30
  42. package/card/Card.stories.tsx +201 -0
  43. package/card/Card.test.js +50 -0
  44. package/card/ice-cream.jpg +0 -0
  45. package/card/types.d.ts +5 -6
  46. package/checkbox/Checkbox.d.ts +1 -1
  47. package/checkbox/Checkbox.js +104 -108
  48. package/checkbox/Checkbox.stories.tsx +124 -128
  49. package/checkbox/Checkbox.test.js +155 -0
  50. package/checkbox/types.d.ts +11 -7
  51. package/chip/Chip.d.ts +4 -0
  52. package/chip/Chip.js +16 -76
  53. package/chip/Chip.stories.tsx +119 -0
  54. package/chip/Chip.test.js +56 -0
  55. package/chip/types.d.ts +45 -0
  56. package/chip/types.js +5 -0
  57. package/common/variables.js +290 -359
  58. package/date-input/DateInput.js +66 -55
  59. package/date-input/DateInput.stories.tsx +7 -7
  60. package/date-input/DateInput.test.js +479 -0
  61. package/date-input/types.d.ts +16 -9
  62. package/dialog/Dialog.js +50 -53
  63. package/dialog/Dialog.stories.tsx +267 -0
  64. package/dialog/Dialog.test.js +70 -0
  65. package/dialog/types.d.ts +3 -2
  66. package/dropdown/Dropdown.d.ts +1 -1
  67. package/dropdown/Dropdown.js +244 -273
  68. package/dropdown/Dropdown.stories.tsx +312 -0
  69. package/dropdown/Dropdown.test.js +590 -0
  70. package/dropdown/DropdownMenu.d.ts +4 -0
  71. package/dropdown/DropdownMenu.js +80 -0
  72. package/dropdown/DropdownMenuItem.d.ts +4 -0
  73. package/dropdown/DropdownMenuItem.js +92 -0
  74. package/dropdown/types.d.ts +30 -19
  75. package/file-input/FileInput.d.ts +4 -0
  76. package/file-input/FileInput.js +172 -111
  77. package/file-input/FileInput.stories.tsx +507 -0
  78. package/file-input/FileInput.test.js +457 -0
  79. package/file-input/FileItem.d.ts +14 -0
  80. package/file-input/FileItem.js +16 -23
  81. package/file-input/types.d.ts +112 -0
  82. package/file-input/types.js +5 -0
  83. package/flex/Flex.d.ts +4 -0
  84. package/flex/Flex.js +69 -0
  85. package/flex/Flex.stories.tsx +103 -0
  86. package/flex/types.d.ts +32 -0
  87. package/flex/types.js +5 -0
  88. package/footer/Footer.d.ts +1 -1
  89. package/footer/Footer.js +32 -113
  90. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +5 -19
  91. package/footer/Footer.test.js +109 -0
  92. package/footer/Icons.d.ts +2 -0
  93. package/footer/Icons.js +4 -4
  94. package/footer/types.d.ts +23 -18
  95. package/header/Header.js +97 -116
  96. package/header/Header.stories.tsx +172 -0
  97. package/header/Header.test.js +79 -0
  98. package/header/Icons.d.ts +2 -0
  99. package/header/Icons.js +2 -2
  100. package/header/types.d.ts +7 -4
  101. package/heading/Heading.d.ts +4 -0
  102. package/heading/Heading.js +7 -24
  103. package/heading/Heading.stories.tsx +54 -0
  104. package/heading/Heading.test.js +186 -0
  105. package/heading/types.d.ts +33 -0
  106. package/heading/types.js +5 -0
  107. package/inset/Inset.d.ts +3 -0
  108. package/inset/Inset.js +51 -0
  109. package/inset/Inset.stories.tsx +229 -0
  110. package/inset/types.d.ts +37 -0
  111. package/inset/types.js +5 -0
  112. package/layout/ApplicationLayout.d.ts +20 -0
  113. package/layout/ApplicationLayout.js +71 -135
  114. package/layout/ApplicationLayout.stories.tsx +162 -0
  115. package/layout/Icons.d.ts +5 -0
  116. package/layout/Icons.js +13 -2
  117. package/layout/SidenavContext.d.ts +5 -0
  118. package/layout/SidenavContext.js +19 -0
  119. package/layout/types.d.ts +42 -0
  120. package/layout/types.js +5 -0
  121. package/link/Link.d.ts +3 -2
  122. package/link/Link.js +61 -86
  123. package/link/Link.stories.tsx +139 -16
  124. package/link/Link.test.js +83 -0
  125. package/link/types.d.ts +9 -29
  126. package/main.d.ts +12 -12
  127. package/main.js +64 -58
  128. package/number-input/NumberInput.d.ts +4 -0
  129. package/number-input/NumberInput.js +16 -68
  130. package/number-input/{NumberInput.stories.jsx → NumberInput.stories.tsx} +5 -5
  131. package/number-input/NumberInput.test.js +506 -0
  132. package/number-input/NumberInputContext.d.ts +4 -0
  133. package/number-input/NumberInputContext.js +5 -2
  134. package/number-input/numberInputContextTypes.d.ts +19 -0
  135. package/number-input/numberInputContextTypes.js +5 -0
  136. package/number-input/types.d.ts +124 -0
  137. package/number-input/types.js +5 -0
  138. package/package.json +16 -12
  139. package/paginator/Paginator.js +19 -46
  140. package/paginator/Paginator.test.js +308 -0
  141. package/paragraph/Paragraph.d.ts +6 -0
  142. package/paragraph/Paragraph.js +38 -0
  143. package/paragraph/Paragraph.stories.tsx +44 -0
  144. package/password-input/PasswordInput.js +27 -21
  145. package/password-input/PasswordInput.stories.tsx +3 -3
  146. package/password-input/PasswordInput.test.js +181 -0
  147. package/password-input/types.d.ts +29 -19
  148. package/progress-bar/ProgressBar.d.ts +2 -2
  149. package/progress-bar/ProgressBar.js +59 -53
  150. package/progress-bar/ProgressBar.stories.jsx +13 -11
  151. package/progress-bar/ProgressBar.test.js +110 -0
  152. package/progress-bar/types.d.ts +3 -4
  153. package/quick-nav/QuickNav.d.ts +4 -0
  154. package/quick-nav/QuickNav.js +117 -0
  155. package/quick-nav/QuickNav.stories.tsx +342 -0
  156. package/quick-nav/types.d.ts +21 -0
  157. package/quick-nav/types.js +5 -0
  158. package/radio-group/Radio.d.ts +4 -0
  159. package/radio-group/Radio.js +156 -0
  160. package/radio-group/RadioGroup.d.ts +4 -0
  161. package/radio-group/RadioGroup.js +283 -0
  162. package/radio-group/RadioGroup.stories.tsx +101 -0
  163. package/radio-group/RadioGroup.test.js +722 -0
  164. package/radio-group/types.d.ts +114 -0
  165. package/radio-group/types.js +5 -0
  166. package/resultsetTable/ResultsetTable.d.ts +4 -0
  167. package/resultsetTable/ResultsetTable.js +10 -32
  168. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  169. package/resultsetTable/ResultsetTable.test.js +348 -0
  170. package/resultsetTable/types.d.ts +67 -0
  171. package/resultsetTable/types.js +5 -0
  172. package/select/Icons.d.ts +10 -0
  173. package/select/Icons.js +93 -0
  174. package/select/Listbox.d.ts +4 -0
  175. package/select/Listbox.js +198 -0
  176. package/select/Option.d.ts +4 -0
  177. package/select/Option.js +110 -0
  178. package/select/Select.d.ts +4 -0
  179. package/select/Select.js +160 -380
  180. package/select/Select.stories.tsx +627 -0
  181. package/select/Select.test.js +2233 -0
  182. package/select/types.d.ts +210 -0
  183. package/select/types.js +5 -0
  184. package/sidenav/Sidenav.d.ts +10 -0
  185. package/sidenav/Sidenav.js +186 -63
  186. package/sidenav/Sidenav.stories.tsx +180 -0
  187. package/sidenav/Sidenav.test.js +44 -0
  188. package/sidenav/types.d.ts +73 -0
  189. package/sidenav/types.js +5 -0
  190. package/slider/Slider.d.ts +1 -1
  191. package/slider/Slider.js +120 -95
  192. package/slider/Slider.stories.tsx +20 -9
  193. package/slider/Slider.test.js +250 -0
  194. package/slider/types.d.ts +6 -2
  195. package/spinner/Spinner.js +3 -3
  196. package/spinner/Spinner.stories.jsx +1 -0
  197. package/spinner/Spinner.test.js +64 -0
  198. package/switch/Switch.d.ts +2 -2
  199. package/switch/Switch.js +149 -67
  200. package/switch/Switch.stories.tsx +21 -43
  201. package/switch/Switch.test.js +225 -0
  202. package/switch/types.d.ts +9 -6
  203. package/table/Table.js +4 -4
  204. package/table/Table.stories.jsx +2 -1
  205. package/table/Table.test.js +26 -0
  206. package/tabs/Tab.d.ts +4 -0
  207. package/tabs/Tab.js +135 -0
  208. package/tabs/Tabs.d.ts +1 -1
  209. package/tabs/Tabs.js +364 -108
  210. package/tabs/Tabs.stories.tsx +186 -0
  211. package/tabs/Tabs.test.js +351 -0
  212. package/tabs/types.d.ts +41 -20
  213. package/tabs-nav/NavTabs.d.ts +8 -0
  214. package/tabs-nav/NavTabs.js +125 -0
  215. package/tabs-nav/NavTabs.stories.tsx +170 -0
  216. package/tabs-nav/NavTabs.test.js +82 -0
  217. package/tabs-nav/Tab.d.ts +4 -0
  218. package/tabs-nav/Tab.js +130 -0
  219. package/tabs-nav/types.d.ts +53 -0
  220. package/tabs-nav/types.js +5 -0
  221. package/tag/Tag.d.ts +1 -1
  222. package/tag/Tag.js +19 -29
  223. package/tag/Tag.stories.tsx +26 -29
  224. package/tag/Tag.test.js +60 -0
  225. package/tag/types.d.ts +23 -14
  226. package/text-input/Icons.d.ts +8 -0
  227. package/text-input/Icons.js +60 -0
  228. package/text-input/Suggestion.d.ts +4 -0
  229. package/text-input/Suggestion.js +57 -0
  230. package/text-input/Suggestions.d.ts +4 -0
  231. package/text-input/Suggestions.js +134 -0
  232. package/text-input/TextInput.d.ts +4 -0
  233. package/text-input/TextInput.js +223 -375
  234. package/text-input/TextInput.stories.tsx +481 -0
  235. package/text-input/TextInput.test.js +1714 -0
  236. package/text-input/types.d.ts +197 -0
  237. package/text-input/types.js +5 -0
  238. package/textarea/Textarea.d.ts +4 -0
  239. package/textarea/Textarea.js +39 -79
  240. package/textarea/Textarea.stories.jsx +37 -15
  241. package/textarea/Textarea.test.js +437 -0
  242. package/textarea/types.d.ts +137 -0
  243. package/textarea/types.js +5 -0
  244. package/toggle-group/ToggleGroup.d.ts +4 -0
  245. package/toggle-group/ToggleGroup.js +18 -46
  246. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  247. package/toggle-group/ToggleGroup.test.js +156 -0
  248. package/toggle-group/types.d.ts +105 -0
  249. package/toggle-group/types.js +5 -0
  250. package/typography/Typography.d.ts +4 -0
  251. package/typography/Typography.js +131 -0
  252. package/typography/Typography.stories.tsx +198 -0
  253. package/typography/types.d.ts +18 -0
  254. package/typography/types.js +5 -0
  255. package/useTheme.d.ts +2 -0
  256. package/useTheme.js +2 -2
  257. package/useTranslatedLabels.d.ts +2 -0
  258. package/useTranslatedLabels.js +20 -0
  259. package/wizard/Wizard.d.ts +4 -0
  260. package/wizard/Wizard.js +118 -104
  261. package/wizard/Wizard.stories.tsx +233 -0
  262. package/wizard/Wizard.test.js +141 -0
  263. package/wizard/types.d.ts +65 -0
  264. package/wizard/types.js +5 -0
  265. package/ThemeContext.js +0 -246
  266. package/V3Select/V3Select.js +0 -455
  267. package/V3Select/index.d.ts +0 -27
  268. package/V3Textarea/V3Textarea.js +0 -260
  269. package/V3Textarea/index.d.ts +0 -27
  270. package/chip/index.d.ts +0 -22
  271. package/date/Date.js +0 -373
  272. package/date/index.d.ts +0 -27
  273. package/file-input/index.d.ts +0 -81
  274. package/heading/index.d.ts +0 -17
  275. package/input-text/Icons.js +0 -22
  276. package/input-text/InputText.js +0 -611
  277. package/input-text/index.d.ts +0 -36
  278. package/number-input/index.d.ts +0 -113
  279. package/radio/Radio.d.ts +0 -4
  280. package/radio/Radio.js +0 -174
  281. package/radio/Radio.stories.tsx +0 -192
  282. package/radio/types.d.ts +0 -54
  283. package/resultsetTable/index.d.ts +0 -19
  284. package/select/index.d.ts +0 -131
  285. package/sidenav/index.d.ts +0 -13
  286. package/text-input/index.d.ts +0 -135
  287. package/textarea/index.d.ts +0 -117
  288. package/toggle/Toggle.js +0 -186
  289. package/toggle/index.d.ts +0 -21
  290. package/toggle-group/index.d.ts +0 -21
  291. package/upload/Upload.js +0 -201
  292. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  293. package/upload/buttons-upload/Icons.js +0 -40
  294. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  295. package/upload/dragAndDropArea/Icons.js +0 -39
  296. package/upload/file-upload/FileToUpload.js +0 -115
  297. package/upload/file-upload/Icons.js +0 -66
  298. package/upload/files-upload/FilesToUpload.js +0 -109
  299. package/upload/index.d.ts +0 -15
  300. package/upload/transaction/Icons.js +0 -160
  301. package/upload/transaction/Transaction.js +0 -104
  302. package/upload/transactions/Transactions.js +0 -94
  303. package/wizard/Icons.js +0 -65
  304. 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,72 +19,48 @@ 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
 
30
28
  var _utils = require("../common/utils.js");
31
29
 
32
- var _uuid = require("uuid");
30
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
31
 
34
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
32
+ var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext"));
35
33
 
36
- var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext.js"));
34
+ var _Suggestions = _interopRequireDefault(require("./Suggestions"));
37
35
 
38
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18;
36
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
37
+
38
+ var _Icons = _interopRequireDefault(require("./Icons"));
39
+
40
+ var _uuid = require("uuid");
41
+
42
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
39
43
 
40
44
  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
45
 
42
46
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
47
 
44
- var textInputIcons = {
45
- error: /*#__PURE__*/_react["default"].createElement("svg", {
46
- xmlns: "http://www.w3.org/2000/svg",
47
- height: "24px",
48
- viewBox: "0 0 24 24",
49
- width: "24px",
50
- fill: "currentColor"
51
- }, /*#__PURE__*/_react["default"].createElement("path", {
52
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"
53
- })),
54
- clear: /*#__PURE__*/_react["default"].createElement("svg", {
55
- xmlns: "http://www.w3.org/2000/svg",
56
- width: "24",
57
- height: "24",
58
- viewBox: "0 0 24 24",
59
- fill: "currentColor"
60
- }, /*#__PURE__*/_react["default"].createElement("path", {
61
- d: "M0 0h24v24H0V0z",
62
- fill: "none"
63
- }), /*#__PURE__*/_react["default"].createElement("path", {
64
- d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"
65
- })),
66
- increment: /*#__PURE__*/_react["default"].createElement("svg", {
67
- xmlns: "http://www.w3.org/2000/svg",
68
- height: "24px",
69
- viewBox: "0 0 24 24",
70
- width: "24px",
71
- fill: "currentColor"
72
- }, /*#__PURE__*/_react["default"].createElement("path", {
73
- d: "M0 0h24v24H0z",
74
- fill: "none"
75
- }), /*#__PURE__*/_react["default"].createElement("path", {
76
- d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"
77
- })),
78
- decrement: /*#__PURE__*/_react["default"].createElement("svg", {
79
- xmlns: "http://www.w3.org/2000/svg",
80
- height: "24px",
81
- viewBox: "0 0 24 24",
82
- width: "24px",
83
- fill: "currentColor"
84
- }, /*#__PURE__*/_react["default"].createElement("path", {
85
- d: "M0 0h24v24H0z",
86
- fill: "none"
87
- }), /*#__PURE__*/_react["default"].createElement("path", {
88
- d: "M19 13H5v-2h14v2z"
89
- }))
48
+ var sizes = {
49
+ small: "240px",
50
+ medium: "360px",
51
+ large: "480px",
52
+ fillParent: "100%"
53
+ };
54
+
55
+ var AutosuggestWrapper = function AutosuggestWrapper(_ref) {
56
+ var condition = _ref.condition,
57
+ wrapper = _ref.wrapper,
58
+ children = _ref.children;
59
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, condition ? wrapper(children) : children);
60
+ };
61
+
62
+ var calculateWidth = function calculateWidth(margin, size) {
63
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
90
64
  };
91
65
 
92
66
  var makeCancelable = function makeCancelable(promise) {
@@ -110,78 +84,70 @@ var makeCancelable = function makeCancelable(promise) {
110
84
  };
111
85
  };
112
86
 
113
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
114
- return "This field is required. Please, enter a value.";
87
+ var hasSuggestions = function hasSuggestions(suggestions) {
88
+ return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
115
89
  };
116
90
 
117
- var getLengthErrorMessage = function getLengthErrorMessage(length) {
118
- return "Min length ".concat(length.min, ", max length ").concat(length.max, ".");
91
+ var isNotOptional = function isNotOptional(value, optional) {
92
+ return value === "" && !optional;
119
93
  };
120
94
 
121
- var getPatternErrorMessage = function getPatternErrorMessage() {
122
- return "Please match the format requested.";
95
+ var isLengthIncorrect = function isLengthIncorrect(value, minLength, maxLength) {
96
+ return value && minLength && maxLength && (value.length < minLength || value.length > maxLength);
123
97
  };
124
98
 
125
- var patternMatch = function patternMatch(pattern, value) {
126
- return new RegExp(pattern).test(value);
99
+ var isNumberIncorrect = function isNumberIncorrect(value, minNumber, maxNumber) {
100
+ return minNumber && parseInt(value) < minNumber || maxNumber && parseInt(value) > maxNumber;
127
101
  };
128
102
 
129
- var getLastOptionIndex = function getLastOptionIndex(filteredSuggestions) {
130
- var last = 0;
131
-
132
- var reducer = function reducer(acc, current) {
133
- var _current$options;
134
-
135
- return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
136
- };
137
-
138
- if (filteredSuggestions.length > 0) filteredSuggestions[0].options ? last = filteredSuggestions.reduce(reducer, 0) - 1 : last = filteredSuggestions.length - 1;
139
- return last;
103
+ var patternMissmatch = function patternMissmatch(pattern, value) {
104
+ return pattern && !new RegExp(pattern).test(value);
140
105
  };
141
106
 
142
- var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
143
- var _action$title;
144
-
145
- var _ref$label = _ref.label,
146
- label = _ref$label === void 0 ? "" : _ref$label,
147
- _ref$name = _ref.name,
148
- name = _ref$name === void 0 ? "" : _ref$name,
149
- value = _ref.value,
150
- _ref$helperText = _ref.helperText,
151
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
152
- _ref$placeholder = _ref.placeholder,
153
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
154
- action = _ref.action,
155
- _ref$clearable = _ref.clearable,
156
- clearable = _ref$clearable === void 0 ? false : _ref$clearable,
157
- _ref$disabled = _ref.disabled,
158
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
159
- _ref$optional = _ref.optional,
160
- optional = _ref$optional === void 0 ? false : _ref$optional,
161
- _ref$prefix = _ref.prefix,
162
- prefix = _ref$prefix === void 0 ? "" : _ref$prefix,
163
- _ref$suffix = _ref.suffix,
164
- suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
165
- onChange = _ref.onChange,
166
- onBlur = _ref.onBlur,
167
- _ref$error = _ref.error,
168
- error = _ref$error === void 0 ? "" : _ref$error,
169
- suggestions = _ref.suggestions,
170
- pattern = _ref.pattern,
171
- length = _ref.length,
172
- _ref$autocomplete = _ref.autocomplete,
173
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
174
- margin = _ref.margin,
175
- _ref$size = _ref.size,
176
- size = _ref$size === void 0 ? "medium" : _ref$size,
177
- _ref$tabIndex = _ref.tabIndex,
178
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
107
+ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, ref) {
108
+ var label = _ref2.label,
109
+ _ref2$name = _ref2.name,
110
+ name = _ref2$name === void 0 ? "" : _ref2$name,
111
+ _ref2$defaultValue = _ref2.defaultValue,
112
+ defaultValue = _ref2$defaultValue === void 0 ? "" : _ref2$defaultValue,
113
+ value = _ref2.value,
114
+ helperText = _ref2.helperText,
115
+ _ref2$placeholder = _ref2.placeholder,
116
+ placeholder = _ref2$placeholder === void 0 ? "" : _ref2$placeholder,
117
+ action = _ref2.action,
118
+ _ref2$clearable = _ref2.clearable,
119
+ clearable = _ref2$clearable === void 0 ? false : _ref2$clearable,
120
+ _ref2$disabled = _ref2.disabled,
121
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
122
+ _ref2$optional = _ref2.optional,
123
+ optional = _ref2$optional === void 0 ? false : _ref2$optional,
124
+ _ref2$prefix = _ref2.prefix,
125
+ prefix = _ref2$prefix === void 0 ? "" : _ref2$prefix,
126
+ _ref2$suffix = _ref2.suffix,
127
+ suffix = _ref2$suffix === void 0 ? "" : _ref2$suffix,
128
+ onChange = _ref2.onChange,
129
+ onBlur = _ref2.onBlur,
130
+ error = _ref2.error,
131
+ suggestions = _ref2.suggestions,
132
+ pattern = _ref2.pattern,
133
+ minLength = _ref2.minLength,
134
+ maxLength = _ref2.maxLength,
135
+ _ref2$autocomplete = _ref2.autocomplete,
136
+ autocomplete = _ref2$autocomplete === void 0 ? "off" : _ref2$autocomplete,
137
+ margin = _ref2.margin,
138
+ _ref2$size = _ref2.size,
139
+ size = _ref2$size === void 0 ? "medium" : _ref2$size,
140
+ _ref2$tabIndex = _ref2.tabIndex,
141
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
179
142
 
180
143
  var _useState = (0, _react.useState)("input-".concat((0, _uuid.v4)())),
181
144
  _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
182
145
  inputId = _useState2[0];
183
146
 
184
- var _useState3 = (0, _react.useState)(""),
147
+ var autosuggestId = "suggestions-".concat(inputId);
148
+ var errorId = "error-".concat(inputId);
149
+
150
+ var _useState3 = (0, _react.useState)(defaultValue),
185
151
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
186
152
  innerValue = _useState4[0],
187
153
  setInnerValue = _useState4[1];
@@ -208,74 +174,55 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
208
174
 
209
175
  var _useState13 = (0, _react.useState)(-1),
210
176
  _useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
211
- visualFocusedSuggIndex = _useState14[0],
212
- changeVisualFocusedSuggIndex = _useState14[1];
177
+ visualFocusIndex = _useState14[0],
178
+ changeVisualFocusIndex = _useState14[1];
213
179
 
214
- var suggestionsRef = (0, _react.useRef)(null);
215
180
  var inputRef = (0, _react.useRef)(null);
216
181
  var actionRef = (0, _react.useRef)(null);
217
182
  var colorsTheme = (0, _useTheme["default"])();
183
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
218
184
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
219
- var autosuggestId = "".concat(inputId, "-listBox");
220
- var errorId = "error-message-".concat(inputId);
221
185
  var numberInputContext = (0, _react.useContext)(_NumberInputContext["default"]);
222
- var lastOptionIndex = (0, _react.useMemo)(function () {
223
- return getLastOptionIndex(filteredSuggestions);
224
- }, [filteredSuggestions]);
225
-
226
- var isNotOptional = function isNotOptional(value) {
227
- return value === "" && !optional;
228
- };
229
-
230
- var isLengthIncorrect = function isLengthIncorrect(value) {
231
- return value && (length === null || length === void 0 ? void 0 : length.min) && (length === null || length === void 0 ? void 0 : length.max) && (value.length < length.min || value.length > length.max);
232
- };
233
-
234
- var isNumberIncorrect = function isNumberIncorrect(value) {
235
- return (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) || (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) && parseInt(value) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);
236
- };
237
-
238
- var isTextInputType = function isTextInputType() {
239
- var _inputRef$current, _inputRef$current2;
240
-
241
- return !(inputRef !== null && inputRef !== void 0 && (_inputRef$current = inputRef.current) !== null && _inputRef$current !== void 0 && _inputRef$current.getAttribute("type")) || (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.getAttribute("type")) === "text";
242
- };
243
186
 
244
187
  var getNumberErrorMessage = function getNumberErrorMessage(value) {
245
- 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, ".");
188
+ 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);
246
189
  };
247
190
 
248
- var hasSuggestions = function hasSuggestions() {
249
- return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
250
- };
191
+ var getTextInputWidth = (0, _react.useCallback)(function () {
192
+ var _inputRef$current, _inputRef$current$par;
193
+
194
+ var rect = inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : (_inputRef$current$par = _inputRef$current.parentElement) === null || _inputRef$current$par === void 0 ? void 0 : _inputRef$current$par.getBoundingClientRect();
195
+ return rect === null || rect === void 0 ? void 0 : rect.width;
196
+ }, []);
251
197
 
252
198
  var openSuggestions = function openSuggestions() {
253
- hasSuggestions() && changeIsOpen(true);
199
+ hasSuggestions(suggestions) && changeIsOpen(true);
254
200
  };
255
201
 
256
202
  var closeSuggestions = function closeSuggestions() {
257
- changeIsOpen(false);
258
- changeVisualFocusedSuggIndex(-1);
203
+ if (hasSuggestions(suggestions)) {
204
+ changeIsOpen(false);
205
+ changeVisualFocusIndex(-1);
206
+ }
259
207
  };
260
208
 
261
209
  var changeValue = function changeValue(newValue) {
262
210
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
263
211
  var changedValue = typeof newValue === "number" ? newValue.toString() : newValue;
264
- if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
212
+ if (isNotOptional(newValue, optional)) onChange === null || onChange === void 0 ? void 0 : onChange({
265
213
  value: changedValue,
266
- error: getNotOptionalErrorMessage()
267
- });else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
214
+ error: translatedLabels.formFields.requiredValueErrorMessage
215
+ });else if (isLengthIncorrect(newValue, minLength, maxLength)) onChange === null || onChange === void 0 ? void 0 : onChange({
268
216
  value: changedValue,
269
- error: getLengthErrorMessage(length)
270
- });else if (newValue && pattern && !patternMatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
217
+ error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
218
+ });else if (patternMissmatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
271
219
  value: changedValue,
272
- error: getPatternErrorMessage()
273
- });else if (newValue && isNumberIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
220
+ error: translatedLabels.formFields.formatRequestedErrorMessage
221
+ });else if (isNumberIncorrect(newValue, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) onChange === null || onChange === void 0 ? void 0 : onChange({
274
222
  value: changedValue,
275
223
  error: getNumberErrorMessage(newValue)
276
224
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
277
- value: changedValue,
278
- error: null
225
+ value: changedValue
279
226
  });
280
227
  };
281
228
 
@@ -288,44 +235,43 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
288
235
  document.activeElement === inputRef.current && event.preventDefault();
289
236
  };
290
237
 
291
- var handleIOnChange = function handleIOnChange(event) {
238
+ var handleInputOnChange = function handleInputOnChange(event) {
292
239
  openSuggestions();
293
240
  changeValue(event.target.value);
294
241
  };
295
242
 
296
- var handleIOnBlur = function handleIOnBlur(event) {
297
- suggestions && closeSuggestions();
298
- if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
243
+ var handleInputOnBlur = function handleInputOnBlur(event) {
244
+ closeSuggestions();
245
+ if (isNotOptional(event.target.value, optional)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
299
246
  value: event.target.value,
300
- error: getNotOptionalErrorMessage()
301
- });else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
247
+ error: translatedLabels.formFields.requiredValueErrorMessage
248
+ });else if (isLengthIncorrect(event.target.value, minLength, maxLength)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
302
249
  value: event.target.value,
303
- error: getLengthErrorMessage(length)
304
- });else if (event.target.value && pattern && !patternMatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
250
+ error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
251
+ });else if (patternMissmatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
305
252
  value: event.target.value,
306
- error: getPatternErrorMessage()
307
- });else if (event.target.value && isNumberIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
253
+ error: translatedLabels.formFields.formatRequestedErrorMessage
254
+ });else if (isNumberIncorrect(event.target.value, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
308
255
  value: event.target.value,
309
256
  error: getNumberErrorMessage(event.target.value)
310
257
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
311
- value: event.target.value,
312
- error: null
258
+ value: event.target.value
313
259
  });
314
260
  };
315
261
 
316
- var handleIOnKeyDown = function handleIOnKeyDown(event) {
317
- switch (event.keyCode) {
318
- case 40:
319
- // Arrow Down
320
- if (numberInputContext) {
262
+ var handleInputOnKeyDown = function handleInputOnKeyDown(event) {
263
+ switch (event.key) {
264
+ case "Down":
265
+ case "ArrowDown":
266
+ event.preventDefault();
267
+
268
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
321
269
  decrementNumber();
322
- event.preventDefault();
323
270
  } else {
324
- event.preventDefault();
325
271
  openSuggestions();
326
272
 
327
273
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
328
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
274
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
329
275
  if (visualFocusedSuggIndex < filteredSuggestions.length - 1) return visualFocusedSuggIndex + 1;else if (visualFocusedSuggIndex === filteredSuggestions.length - 1) return 0;
330
276
  });
331
277
  }
@@ -333,17 +279,17 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
333
279
 
334
280
  break;
335
281
 
336
- case 38:
337
- // Arrow Up
338
- if (numberInputContext) {
282
+ case "Up":
283
+ case "ArrowUp":
284
+ event.preventDefault();
285
+
286
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
339
287
  incrementNumber();
340
- event.preventDefault();
341
288
  } else {
342
- event.preventDefault();
343
289
  openSuggestions();
344
290
 
345
291
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
346
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
292
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
347
293
  if (visualFocusedSuggIndex === 0 || visualFocusedSuggIndex === -1) return filteredSuggestions.length > 0 ? filteredSuggestions.length - 1 : suggestions.length - 1;else return visualFocusedSuggIndex - 1;
348
294
  });
349
295
  }
@@ -351,22 +297,21 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
351
297
 
352
298
  break;
353
299
 
354
- case 27:
355
- // Esc
300
+ case "Esc":
301
+ case "Escape":
356
302
  event.preventDefault();
357
303
 
358
- if (hasSuggestions()) {
304
+ if (hasSuggestions(suggestions)) {
359
305
  changeValue("");
360
306
  isOpen && closeSuggestions();
361
307
  }
362
308
 
363
309
  break;
364
310
 
365
- case 13:
366
- // Enter
367
- if (hasSuggestions() && !isSearching) {
368
- var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusedSuggIndex >= 0 && visualFocusedSuggIndex < filteredSuggestions.length;
369
- validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusedSuggIndex]);
311
+ case "Enter":
312
+ if (hasSuggestions(suggestions) && !isSearching) {
313
+ var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusIndex >= 0 && visualFocusIndex < filteredSuggestions.length;
314
+ validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusIndex]);
370
315
  isOpen && closeSuggestions();
371
316
  }
372
317
 
@@ -391,12 +336,12 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
391
336
  };
392
337
 
393
338
  var setNumberProps = function setNumberProps(type, min, max, step) {
394
- var _inputRef$current3, _inputRef$current4, _inputRef$current5, _inputRef$current6;
339
+ var _inputRef$current2, _inputRef$current3, _inputRef$current4, _inputRef$current5;
395
340
 
396
- type && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.setAttribute("type", type));
397
- min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setAttribute("min", min));
398
- max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : _inputRef$current5.setAttribute("max", max));
399
- step && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current6 = inputRef.current) === null || _inputRef$current6 === void 0 ? void 0 : _inputRef$current6.setAttribute("step", step));
341
+ type && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.setAttribute("type", type));
342
+ min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.setAttribute("min", min));
343
+ max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setAttribute("max", max));
344
+ step && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : _inputRef$current5.setAttribute("step", step));
400
345
  };
401
346
 
402
347
  var decrementNumber = function decrementNumber() {
@@ -439,15 +384,6 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
439
384
  }
440
385
  };
441
386
 
442
- (0, _react.useLayoutEffect)(function () {
443
- var _suggestionsRef$curre, _visualFocusedOptionE;
444
-
445
- var visualFocusedOptionEl = suggestionsRef === null || suggestionsRef === void 0 ? void 0 : (_suggestionsRef$curre = suggestionsRef.current) === null || _suggestionsRef$curre === void 0 ? void 0 : _suggestionsRef$curre.querySelectorAll("[role='option']")[visualFocusedSuggIndex];
446
- visualFocusedOptionEl === null || visualFocusedOptionEl === void 0 ? void 0 : (_visualFocusedOptionE = visualFocusedOptionEl.scrollIntoView) === null || _visualFocusedOptionE === void 0 ? void 0 : _visualFocusedOptionE.call(visualFocusedOptionEl, {
447
- block: "nearest",
448
- inline: "start"
449
- });
450
- }, [visualFocusedSuggIndex]);
451
387
  (0, _react.useEffect)(function () {
452
388
  if (typeof suggestions === "function") {
453
389
  changeIsSearching(true);
@@ -471,49 +407,27 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
471
407
  changeFilteredSuggestions(suggestions.filter(function (suggestion) {
472
408
  return suggestion.toUpperCase().startsWith((value !== null && value !== void 0 ? value : innerValue).toUpperCase());
473
409
  }));
474
- changeVisualFocusedSuggIndex(-1);
410
+ changeVisualFocusIndex(-1);
475
411
  }
476
412
 
477
- numberInputContext && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
413
+ (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
478
414
  }, [value, innerValue, suggestions, numberInputContext]);
479
-
480
- var HighlightedSuggestion = function HighlightedSuggestion(_ref2) {
481
- var suggestion = _ref2.suggestion,
482
- index = _ref2.index;
483
- var regEx = new RegExp(value !== null && value !== void 0 ? value : innerValue, "i");
484
- var matchedWords = suggestion.match(regEx);
485
- var noMatchedWords = suggestion.replace(regEx, "");
486
- var isLastOption = index === lastOptionIndex;
487
- return /*#__PURE__*/_react["default"].createElement(Suggestion, {
488
- id: "suggestion-".concat(index),
489
- onClick: function onClick() {
490
- changeValue(suggestion);
491
- closeSuggestions();
492
- },
493
- visualFocused: visualFocusedSuggIndex === index,
494
- role: "option",
495
- "aria-selected": visualFocusedSuggIndex === index && "true"
496
- }, /*#__PURE__*/_react["default"].createElement(StyledSuggestion, {
497
- last: isLastOption,
498
- visualFocused: visualFocusedSuggIndex === index
499
- }, typeof suggestions === "function" ? suggestion : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("strong", null, matchedWords), noMatchedWords)));
500
- };
501
-
502
415
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
503
416
  theme: colorsTheme.textInput
504
- }, /*#__PURE__*/_react["default"].createElement(DxcInput, {
417
+ }, /*#__PURE__*/_react["default"].createElement(TextInputContainer, {
505
418
  margin: margin,
506
- ref: ref,
507
- size: size
508
- }, /*#__PURE__*/_react["default"].createElement(Label, {
419
+ size: size,
420
+ ref: ref
421
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
509
422
  htmlFor: inputId,
510
423
  disabled: disabled,
511
- backgroundType: backgroundType
512
- }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, "(Optional)")), /*#__PURE__*/_react["default"].createElement(HelperText, {
424
+ backgroundType: backgroundType,
425
+ hasHelperText: helperText ? true : false
426
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
513
427
  disabled: disabled,
514
428
  backgroundType: backgroundType
515
429
  }, helperText), /*#__PURE__*/_react["default"].createElement(InputContainer, {
516
- error: error,
430
+ error: error ? true : false,
517
431
  disabled: disabled,
518
432
  backgroundType: backgroundType,
519
433
  onClick: handleInputContainerOnClick,
@@ -521,17 +435,48 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
521
435
  }, prefix && /*#__PURE__*/_react["default"].createElement(Prefix, {
522
436
  disabled: disabled,
523
437
  backgroundType: backgroundType
524
- }, prefix), /*#__PURE__*/_react["default"].createElement(Input, {
438
+ }, prefix), /*#__PURE__*/_react["default"].createElement(AutosuggestWrapper, {
439
+ condition: hasSuggestions(suggestions),
440
+ wrapper: function wrapper(children) {
441
+ return /*#__PURE__*/_react["default"].createElement(Popover.Root, {
442
+ open: isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)
443
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
444
+ asChild: true,
445
+ "aria-controls": undefined
446
+ }, children), /*#__PURE__*/_react["default"].createElement(Popover.Content, {
447
+ sideOffset: 5,
448
+ onOpenAutoFocus: function onOpenAutoFocus(event) {
449
+ // Avoid select to lose focus when the list is opened
450
+ event.preventDefault();
451
+ },
452
+ onCloseAutoFocus: function onCloseAutoFocus(event) {
453
+ // Avoid select to lose focus when the list is closed
454
+ event.preventDefault();
455
+ }
456
+ }, /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
457
+ id: autosuggestId,
458
+ value: value !== null && value !== void 0 ? value : innerValue,
459
+ suggestions: filteredSuggestions,
460
+ visualFocusIndex: visualFocusIndex,
461
+ highlightedSuggestions: typeof suggestions !== "function",
462
+ searchHasErrors: isAutosuggestError,
463
+ isSearching: isSearching,
464
+ suggestionOnClick: function suggestionOnClick(suggestion) {
465
+ changeValue(suggestion);
466
+ closeSuggestions();
467
+ },
468
+ getTextInputWidth: getTextInputWidth
469
+ })));
470
+ }
471
+ }, /*#__PURE__*/_react["default"].createElement(Input, {
525
472
  id: inputId,
526
473
  name: name,
527
474
  value: value !== null && value !== void 0 ? value : innerValue,
528
475
  placeholder: placeholder,
529
- onBlur: handleIOnBlur,
530
- onChange: handleIOnChange,
531
- onFocus: function onFocus() {
532
- openSuggestions();
533
- },
534
- onKeyDown: handleIOnKeyDown,
476
+ onBlur: handleInputOnBlur,
477
+ onChange: handleInputOnChange,
478
+ onFocus: openSuggestions,
479
+ onKeyDown: handleInputOnKeyDown,
535
480
  onMouseDown: function onMouseDown(event) {
536
481
  event.stopPropagation();
537
482
  },
@@ -539,30 +484,33 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
539
484
  ref: inputRef,
540
485
  backgroundType: backgroundType,
541
486
  pattern: pattern,
542
- minLength: length === null || length === void 0 ? void 0 : length.min,
543
- maxLength: length === null || length === void 0 ? void 0 : length.max,
544
- autoComplete: autocomplete,
487
+ minLength: minLength,
488
+ maxLength: maxLength,
489
+ autoComplete: autocomplete === "off" ? "nope" : autocomplete,
545
490
  tabIndex: tabIndex,
546
- role: isTextInputType() && hasSuggestions() ? "combobox" : "textbox",
547
- "aria-autocomplete": isTextInputType() && hasSuggestions() ? "list" : undefined,
548
- "aria-controls": isTextInputType() && hasSuggestions() ? autosuggestId : undefined,
549
- "aria-expanded": isTextInputType() && hasSuggestions() ? isOpen ? "true" : "false" : undefined,
550
- "aria-activedescendant": isTextInputType() && hasSuggestions() && isOpen && visualFocusedSuggIndex !== -1 ? "suggestion-".concat(visualFocusedSuggIndex) : undefined,
551
- "aria-invalid": error ? "true" : "false",
552
- "aria-describedby": error ? errorId : undefined,
553
- "aria-required": optional ? "false" : "true"
554
- }), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
491
+ type: "text",
492
+ role: hasSuggestions(suggestions) ? "combobox" : undefined,
493
+ "aria-autocomplete": hasSuggestions(suggestions) ? "list" : undefined,
494
+ "aria-controls": hasSuggestions(suggestions) ? autosuggestId : undefined,
495
+ "aria-expanded": hasSuggestions(suggestions) ? isOpen : undefined,
496
+ "aria-haspopup": hasSuggestions(suggestions) ? "listbox" : undefined,
497
+ "aria-activedescendant": hasSuggestions(suggestions) && isOpen && visualFocusIndex !== -1 ? "suggestion-".concat(visualFocusIndex) : undefined,
498
+ "aria-invalid": error ? true : false,
499
+ "aria-errormessage": error ? errorId : undefined,
500
+ "aria-required": optional ? false : true
501
+ })), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
555
502
  backgroundType: backgroundType,
556
503
  "aria-label": "Error"
557
- }, textInputIcons.error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
504
+ }, _Icons["default"].error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
558
505
  onClick: handleClearActionOnClick,
559
506
  onMouseDown: function onMouseDown(event) {
560
507
  event.stopPropagation();
561
508
  },
562
509
  backgroundType: backgroundType,
563
510
  tabIndex: tabIndex,
564
- "aria-label": "Clear"
565
- }, 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, {
511
+ title: translatedLabels.textInput.clearFieldActionTitle,
512
+ "aria-label": translatedLabels.textInput.clearFieldActionTitle
513
+ }, _Icons["default"].clear), (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(Action, {
566
514
  ref: actionRef,
567
515
  disabled: disabled,
568
516
  onClick: handleDecrementActionOnClick,
@@ -571,8 +519,9 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
571
519
  },
572
520
  backgroundType: backgroundType,
573
521
  tabIndex: tabIndex,
574
- "aria-label": "Decrement"
575
- }, textInputIcons.decrement), /*#__PURE__*/_react["default"].createElement(Action, {
522
+ title: translatedLabels.numberInput.decrementValueTitle,
523
+ "aria-label": translatedLabels.numberInput.decrementValueTitle
524
+ }, _Icons["default"].decrement), /*#__PURE__*/_react["default"].createElement(Action, {
576
525
  ref: actionRef,
577
526
  disabled: disabled,
578
527
  onClick: handleIncrementActionOnClick,
@@ -581,15 +530,17 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
581
530
  },
582
531
  backgroundType: backgroundType,
583
532
  tabIndex: tabIndex,
584
- "aria-label": "Increment"
585
- }, textInputIcons.increment)) : action && /*#__PURE__*/_react["default"].createElement(Action, {
533
+ title: translatedLabels.numberInput.incrementValueTitle,
534
+ "aria-label": translatedLabels.numberInput.incrementValueTitle
535
+ }, _Icons["default"].increment)), action && /*#__PURE__*/_react["default"].createElement(Action, {
586
536
  ref: actionRef,
587
537
  disabled: disabled,
588
538
  onClick: action.onClick,
589
539
  onMouseDown: function onMouseDown(event) {
590
540
  event.stopPropagation();
591
541
  },
592
- title: (_action$title = action.title) !== null && _action$title !== void 0 ? _action$title : action.title,
542
+ title: action.title,
543
+ "aria-label": action.title,
593
544
  backgroundType: backgroundType,
594
545
  tabIndex: tabIndex
595
546
  }, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ActionIcon, {
@@ -597,41 +548,14 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
597
548
  }) : action.icon), suffix && /*#__PURE__*/_react["default"].createElement(Suffix, {
598
549
  disabled: disabled,
599
550
  backgroundType: backgroundType
600
- }, suffix), isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError) && /*#__PURE__*/_react["default"].createElement(Suggestions, {
601
- id: autosuggestId,
602
- isError: isAutosuggestError,
603
- onMouseDown: function onMouseDown(event) {
604
- event.preventDefault();
605
- },
606
- ref: suggestionsRef,
607
- role: "listbox",
608
- "aria-label": label
609
- }, !isSearching && !isAutosuggestError && filteredSuggestions.length > 0 && filteredSuggestions.map(function (suggestion, index) {
610
- return /*#__PURE__*/_react["default"].createElement(HighlightedSuggestion, {
611
- key: "suggestion-".concat((0, _uuid.v4)()),
612
- suggestion: suggestion,
613
- index: index
614
- });
615
- }), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage, null, "Searching..."), isAutosuggestError && /*#__PURE__*/_react["default"].createElement(SuggestionsError, null, /*#__PURE__*/_react["default"].createElement(SuggestionsErrorIcon, {
616
- backgroundType: backgroundType
617
- }, textInputIcons.error), "Error fetching data"))), !disabled && /*#__PURE__*/_react["default"].createElement(Error, {
551
+ }, suffix)), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
618
552
  id: errorId,
619
- backgroundType: backgroundType
553
+ backgroundType: backgroundType,
554
+ "aria-live": error ? "assertive" : "off"
620
555
  }, error)));
621
556
  });
622
557
 
623
- var sizes = {
624
- small: "240px",
625
- medium: "360px",
626
- large: "480px",
627
- fillParent: "100%"
628
- };
629
-
630
- var calculateWidth = function calculateWidth(margin, size) {
631
- return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
632
- };
633
-
634
- 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) {
558
+ 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) {
635
559
  return calculateWidth(props.margin, props.size);
636
560
  }, function (props) {
637
561
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -645,7 +569,7 @@ var DxcInput = _styledComponents["default"].div(_templateObject || (_templateObj
645
569
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
646
570
  });
647
571
 
648
- 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) {
572
+ 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) {
649
573
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
650
574
  }, function (props) {
651
575
  return props.theme.fontFamily;
@@ -657,13 +581,15 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
657
581
  return props.theme.labelFontWeight;
658
582
  }, function (props) {
659
583
  return props.theme.labelLineHeight;
584
+ }, function (props) {
585
+ return !props.hasHelperText && "margin-bottom: 0.25rem";
660
586
  });
661
587
 
662
588
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
663
589
  return props.theme.optionalLabelFontWeight;
664
590
  });
665
591
 
666
- 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) {
592
+ 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) {
667
593
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
668
594
  }, function (props) {
669
595
  return props.theme.fontFamily;
@@ -677,9 +603,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
677
603
  return props.theme.helperTextLineHeight;
678
604
  });
679
605
 
680
- 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) {
681
- return "".concat(props.theme.inputMarginTop, " 0 ").concat(props.theme.inputMarginBottom, " 0");
682
- }, function (props) {
606
+ 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) {
683
607
  if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
684
608
  }, function (props) {
685
609
  if (props.disabled) return props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;else return props.backgroundType === "dark" ? props.theme.enabledBorderColorOnDark : props.theme.enabledBorderColor;
@@ -688,10 +612,10 @@ var InputContainer = _styledComponents["default"].div(_templateObject5 || (_temp
688
612
  }, function (props) {
689
613
  return props.disabled && "cursor: not-allowed;";
690
614
  }, function (props) {
691
- 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 ");
615
+ 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 ");
692
616
  });
693
617
 
694
- 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) {
618
+ 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) {
695
619
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledValueFontColorOnDark : props.theme.disabledValueFontColor : props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
696
620
  }, function (props) {
697
621
  return props.theme.fontFamily;
@@ -739,87 +663,11 @@ var ErrorIcon = _styledComponents["default"].span(_templateObject11 || (_templat
739
663
  return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
740
664
  });
741
665
 
742
- 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) {
666
+ 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) {
743
667
  return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
744
668
  }, function (props) {
745
669
  return props.theme.fontFamily;
746
670
  });
747
671
 
748
- 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) {
749
- return props.isError ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
750
- }, function (props) {
751
- return props.isError ? props.theme.errorListDialogBorderColor : props.theme.listDialogBorderColor;
752
- }, function (props) {
753
- return props.theme.listOptionFontColor;
754
- }, function (props) {
755
- return props.theme.fontFamily;
756
- }, function (props) {
757
- return props.theme.listOptionFontSize;
758
- }, function (props) {
759
- return props.theme.listOptionFontStyle;
760
- }, function (props) {
761
- return props.theme.listOptionFontWeight;
762
- });
763
-
764
- 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) {
765
- return props.visualFocused ? props.theme.focusListOptionBorderColor : "transparent";
766
- }, function (props) {
767
- return props.theme.hoverListOptionBackgroundColor;
768
- }, function (props) {
769
- return props.theme.activeListOptionBackgroundColor;
770
- });
771
-
772
- 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) {
773
- return props.last || props.visualFocused ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listOptionDividerColor);
774
- });
775
-
776
- 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) {
777
- return props.theme.systemMessageFontColor;
778
- });
779
-
780
- 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) {
781
- return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
782
- });
783
-
784
- 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) {
785
- return props.theme.errorListDialogFontColor;
786
- });
787
-
788
- DxcTextInput.propTypes = {
789
- label: _propTypes["default"].string,
790
- name: _propTypes["default"].string,
791
- value: _propTypes["default"].string,
792
- helperText: _propTypes["default"].string,
793
- placeholder: _propTypes["default"].string,
794
- action: _propTypes["default"].shape({
795
- onClick: _propTypes["default"].func.isRequired,
796
- icon: _propTypes["default"].oneOfType([_propTypes["default"].shape({
797
- type: _propTypes["default"].oneOf(["svg"])
798
- }), _propTypes["default"].string]).isRequired
799
- }),
800
- clearable: _propTypes["default"].bool,
801
- disabled: _propTypes["default"].bool,
802
- optional: _propTypes["default"].bool,
803
- prefix: _propTypes["default"].string,
804
- suffix: _propTypes["default"].string,
805
- onChange: _propTypes["default"].func,
806
- onBlur: _propTypes["default"].func,
807
- error: _propTypes["default"].string,
808
- autocomplete: _propTypes["default"].string,
809
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
810
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
811
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
812
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
813
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
814
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
815
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
816
- suggestions: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].array]),
817
- pattern: _propTypes["default"].string,
818
- length: _propTypes["default"].shape({
819
- min: _propTypes["default"].number,
820
- max: _propTypes["default"].number
821
- }),
822
- tabIndex: _propTypes["default"].number
823
- };
824
672
  var _default = DxcTextInput;
825
673
  exports["default"] = _default;