@dxc-technology/halstack-react 0.0.0-4d89cae → 0.0.0-4dc980c

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 (372) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +7 -6
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +294 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +129 -237
  7. package/accordion/Accordion.stories.tsx +306 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +68 -105
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +126 -0
  15. package/accordion-group/types.d.ts +79 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +44 -154
  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 +15 -17
  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 +37 -77
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +44 -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 +4 -0
  44. package/button/Button.js +63 -145
  45. package/button/Button.stories.tsx +283 -0
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +44 -137
  51. package/card/Card.stories.tsx +201 -0
  52. package/card/Card.test.js +50 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +110 -159
  58. package/checkbox/Checkbox.stories.tsx +208 -0
  59. package/checkbox/Checkbox.test.js +155 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +26 -130
  64. package/chip/Chip.stories.tsx +119 -0
  65. package/chip/Chip.test.js +56 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/common/variables.js +327 -382
  69. package/date-input/Calendar.d.ts +4 -0
  70. package/date-input/Calendar.js +258 -0
  71. package/date-input/DateInput.d.ts +4 -0
  72. package/date-input/DateInput.js +130 -303
  73. package/date-input/DateInput.stories.tsx +151 -0
  74. package/date-input/DateInput.test.js +752 -0
  75. package/date-input/DatePicker.d.ts +4 -0
  76. package/date-input/DatePicker.js +160 -0
  77. package/date-input/YearPicker.d.ts +4 -0
  78. package/date-input/YearPicker.js +115 -0
  79. package/date-input/types.d.ts +160 -0
  80. package/date-input/types.js +5 -0
  81. package/dialog/Dialog.d.ts +4 -0
  82. package/dialog/Dialog.js +60 -116
  83. package/dialog/Dialog.stories.tsx +267 -0
  84. package/dialog/Dialog.test.js +70 -0
  85. package/dialog/types.d.ts +44 -0
  86. package/dialog/types.js +5 -0
  87. package/dropdown/Dropdown.d.ts +4 -0
  88. package/dropdown/Dropdown.js +243 -396
  89. package/dropdown/Dropdown.stories.tsx +312 -0
  90. package/dropdown/Dropdown.test.js +585 -0
  91. package/dropdown/DropdownMenu.d.ts +4 -0
  92. package/dropdown/DropdownMenu.js +80 -0
  93. package/dropdown/DropdownMenuItem.d.ts +4 -0
  94. package/dropdown/DropdownMenuItem.js +92 -0
  95. package/dropdown/types.d.ts +100 -0
  96. package/dropdown/types.js +5 -0
  97. package/file-input/FileInput.d.ts +4 -0
  98. package/file-input/FileInput.js +212 -305
  99. package/file-input/FileInput.stories.tsx +535 -0
  100. package/file-input/FileInput.test.js +498 -0
  101. package/file-input/FileItem.d.ts +4 -0
  102. package/file-input/FileItem.js +57 -183
  103. package/file-input/types.d.ts +129 -0
  104. package/file-input/types.js +5 -0
  105. package/flex/Flex.d.ts +4 -0
  106. package/flex/Flex.js +69 -0
  107. package/flex/Flex.stories.tsx +103 -0
  108. package/flex/types.d.ts +32 -0
  109. package/flex/types.js +5 -0
  110. package/footer/Footer.d.ts +4 -0
  111. package/footer/Footer.js +50 -286
  112. package/footer/Footer.stories.tsx +137 -0
  113. package/footer/Footer.test.js +109 -0
  114. package/footer/Icons.d.ts +2 -0
  115. package/footer/Icons.js +16 -16
  116. package/footer/types.d.ts +66 -0
  117. package/footer/types.js +5 -0
  118. package/header/Header.d.ts +7 -0
  119. package/header/Header.js +131 -296
  120. package/header/Header.stories.tsx +172 -0
  121. package/header/Header.test.js +79 -0
  122. package/header/Icons.d.ts +2 -0
  123. package/header/Icons.js +9 -34
  124. package/header/types.d.ts +48 -0
  125. package/header/types.js +5 -0
  126. package/heading/Heading.d.ts +4 -0
  127. package/heading/Heading.js +25 -96
  128. package/heading/Heading.stories.tsx +54 -0
  129. package/heading/Heading.test.js +186 -0
  130. package/heading/types.d.ts +33 -0
  131. package/heading/types.js +5 -0
  132. package/inset/Inset.d.ts +3 -0
  133. package/inset/Inset.js +51 -0
  134. package/inset/Inset.stories.tsx +229 -0
  135. package/inset/types.d.ts +37 -0
  136. package/inset/types.js +5 -0
  137. package/layout/ApplicationLayout.d.ts +20 -0
  138. package/layout/ApplicationLayout.js +76 -232
  139. package/layout/ApplicationLayout.stories.tsx +162 -0
  140. package/layout/Icons.d.ts +5 -0
  141. package/layout/Icons.js +19 -8
  142. package/layout/SidenavContext.d.ts +5 -0
  143. package/layout/SidenavContext.js +19 -0
  144. package/layout/types.d.ts +42 -0
  145. package/layout/types.js +5 -0
  146. package/link/Link.d.ts +4 -0
  147. package/link/Link.js +65 -166
  148. package/link/Link.stories.tsx +193 -0
  149. package/link/Link.test.js +83 -0
  150. package/link/types.d.ts +54 -0
  151. package/link/types.js +5 -0
  152. package/main.d.ts +44 -40
  153. package/main.js +114 -104
  154. package/number-input/NumberInput.d.ts +4 -0
  155. package/number-input/NumberInput.js +21 -81
  156. package/number-input/NumberInput.stories.tsx +115 -0
  157. package/number-input/NumberInput.test.js +542 -0
  158. package/number-input/NumberInputContext.d.ts +4 -0
  159. package/number-input/NumberInputContext.js +5 -2
  160. package/number-input/numberInputContextTypes.d.ts +19 -0
  161. package/number-input/numberInputContextTypes.js +5 -0
  162. package/number-input/types.d.ts +124 -0
  163. package/number-input/types.js +5 -0
  164. package/package.json +34 -32
  165. package/paginator/Icons.js +9 -9
  166. package/paginator/Paginator.d.ts +4 -0
  167. package/paginator/Paginator.js +32 -166
  168. package/paginator/Paginator.stories.tsx +63 -0
  169. package/paginator/Paginator.test.js +308 -0
  170. package/paginator/types.d.ts +38 -0
  171. package/paginator/types.js +5 -0
  172. package/paragraph/Paragraph.d.ts +6 -0
  173. package/paragraph/Paragraph.js +38 -0
  174. package/paragraph/Paragraph.stories.tsx +44 -0
  175. package/password-input/PasswordInput.d.ts +4 -0
  176. package/password-input/PasswordInput.js +40 -77
  177. package/password-input/PasswordInput.stories.tsx +131 -0
  178. package/password-input/PasswordInput.test.js +181 -0
  179. package/password-input/types.d.ts +110 -0
  180. package/password-input/types.js +5 -0
  181. package/progress-bar/ProgressBar.d.ts +4 -0
  182. package/progress-bar/ProgressBar.js +72 -138
  183. package/progress-bar/ProgressBar.stories.jsx +60 -0
  184. package/progress-bar/ProgressBar.test.js +110 -0
  185. package/progress-bar/types.d.ts +36 -0
  186. package/progress-bar/types.js +5 -0
  187. package/quick-nav/QuickNav.d.ts +4 -0
  188. package/quick-nav/QuickNav.js +117 -0
  189. package/quick-nav/QuickNav.stories.tsx +342 -0
  190. package/quick-nav/types.d.ts +21 -0
  191. package/quick-nav/types.js +5 -0
  192. package/radio-group/Radio.d.ts +4 -0
  193. package/radio-group/Radio.js +156 -0
  194. package/radio-group/RadioGroup.d.ts +4 -0
  195. package/radio-group/RadioGroup.js +283 -0
  196. package/radio-group/RadioGroup.stories.tsx +101 -0
  197. package/radio-group/RadioGroup.test.js +722 -0
  198. package/radio-group/types.d.ts +114 -0
  199. package/radio-group/types.js +5 -0
  200. package/resultsetTable/Icons.d.ts +7 -0
  201. package/resultsetTable/Icons.js +51 -0
  202. package/resultsetTable/ResultsetTable.d.ts +4 -0
  203. package/resultsetTable/ResultsetTable.js +60 -223
  204. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  205. package/resultsetTable/ResultsetTable.test.js +330 -0
  206. package/resultsetTable/types.d.ts +67 -0
  207. package/resultsetTable/types.js +5 -0
  208. package/select/Icons.d.ts +10 -0
  209. package/select/Icons.js +93 -0
  210. package/select/Listbox.d.ts +4 -0
  211. package/select/Listbox.js +198 -0
  212. package/select/Option.d.ts +4 -0
  213. package/select/Option.js +110 -0
  214. package/select/Select.d.ts +4 -0
  215. package/select/Select.js +231 -724
  216. package/select/Select.stories.tsx +624 -0
  217. package/select/Select.test.js +2233 -0
  218. package/select/types.d.ts +210 -0
  219. package/select/types.js +5 -0
  220. package/sidenav/Sidenav.d.ts +10 -0
  221. package/sidenav/Sidenav.js +194 -105
  222. package/sidenav/Sidenav.stories.tsx +180 -0
  223. package/sidenav/Sidenav.test.js +44 -0
  224. package/sidenav/types.d.ts +73 -0
  225. package/sidenav/types.js +5 -0
  226. package/slider/Slider.d.ts +4 -0
  227. package/slider/Slider.js +166 -227
  228. package/slider/Slider.stories.tsx +183 -0
  229. package/slider/Slider.test.js +250 -0
  230. package/slider/types.d.ts +86 -0
  231. package/slider/types.js +5 -0
  232. package/spinner/Spinner.d.ts +4 -0
  233. package/spinner/Spinner.js +46 -177
  234. package/spinner/Spinner.stories.jsx +103 -0
  235. package/spinner/Spinner.test.js +64 -0
  236. package/spinner/types.d.ts +32 -0
  237. package/spinner/types.js +5 -0
  238. package/switch/Switch.d.ts +4 -0
  239. package/switch/Switch.js +161 -121
  240. package/switch/Switch.stories.tsx +138 -0
  241. package/switch/Switch.test.js +225 -0
  242. package/switch/types.d.ts +66 -0
  243. package/switch/types.js +5 -0
  244. package/table/Table.d.ts +4 -0
  245. package/table/Table.js +12 -26
  246. package/table/Table.stories.jsx +277 -0
  247. package/table/Table.test.js +26 -0
  248. package/table/types.d.ts +21 -0
  249. package/table/types.js +5 -0
  250. package/tabs/Tab.d.ts +4 -0
  251. package/tabs/Tab.js +135 -0
  252. package/tabs/Tabs.d.ts +4 -0
  253. package/tabs/Tabs.js +353 -229
  254. package/tabs/Tabs.stories.tsx +185 -0
  255. package/tabs/Tabs.test.js +351 -0
  256. package/tabs/types.d.ts +92 -0
  257. package/tabs/types.js +5 -0
  258. package/tabs-nav/NavTabs.d.ts +8 -0
  259. package/tabs-nav/NavTabs.js +125 -0
  260. package/tabs-nav/NavTabs.stories.tsx +170 -0
  261. package/tabs-nav/NavTabs.test.js +82 -0
  262. package/tabs-nav/Tab.d.ts +4 -0
  263. package/tabs-nav/Tab.js +130 -0
  264. package/tabs-nav/types.d.ts +53 -0
  265. package/tabs-nav/types.js +5 -0
  266. package/tag/Tag.d.ts +4 -0
  267. package/tag/Tag.js +45 -144
  268. package/tag/Tag.stories.tsx +142 -0
  269. package/tag/Tag.test.js +60 -0
  270. package/tag/types.d.ts +69 -0
  271. package/tag/types.js +5 -0
  272. package/text-input/Icons.d.ts +8 -0
  273. package/text-input/Icons.js +60 -0
  274. package/text-input/Suggestion.d.ts +4 -0
  275. package/text-input/Suggestion.js +57 -0
  276. package/text-input/Suggestions.d.ts +4 -0
  277. package/text-input/Suggestions.js +134 -0
  278. package/text-input/TextInput.d.ts +4 -0
  279. package/text-input/TextInput.js +261 -576
  280. package/text-input/TextInput.stories.tsx +481 -0
  281. package/text-input/TextInput.test.js +1624 -0
  282. package/text-input/types.d.ts +197 -0
  283. package/text-input/types.js +5 -0
  284. package/textarea/Textarea.d.ts +4 -0
  285. package/textarea/Textarea.js +50 -142
  286. package/textarea/Textarea.stories.jsx +157 -0
  287. package/textarea/Textarea.test.js +437 -0
  288. package/textarea/types.d.ts +137 -0
  289. package/textarea/types.js +5 -0
  290. package/toggle-group/ToggleGroup.d.ts +4 -0
  291. package/toggle-group/ToggleGroup.js +36 -148
  292. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  293. package/toggle-group/ToggleGroup.test.js +156 -0
  294. package/toggle-group/types.d.ts +105 -0
  295. package/toggle-group/types.js +5 -0
  296. package/typography/Typography.d.ts +4 -0
  297. package/typography/Typography.js +131 -0
  298. package/typography/Typography.stories.tsx +198 -0
  299. package/typography/types.d.ts +18 -0
  300. package/typography/types.js +5 -0
  301. package/useTheme.d.ts +2 -0
  302. package/useTheme.js +2 -2
  303. package/useTranslatedLabels.d.ts +2 -0
  304. package/useTranslatedLabels.js +20 -0
  305. package/wizard/Wizard.d.ts +4 -0
  306. package/wizard/Wizard.js +132 -252
  307. package/wizard/Wizard.stories.tsx +233 -0
  308. package/wizard/Wizard.test.js +141 -0
  309. package/wizard/types.d.ts +65 -0
  310. package/wizard/types.js +5 -0
  311. package/ThemeContext.js +0 -250
  312. package/V3Select/V3Select.js +0 -549
  313. package/V3Select/index.d.ts +0 -27
  314. package/V3Textarea/V3Textarea.js +0 -264
  315. package/V3Textarea/index.d.ts +0 -27
  316. package/accordion/index.d.ts +0 -28
  317. package/accordion-group/index.d.ts +0 -16
  318. package/alert/index.d.ts +0 -51
  319. package/box/index.d.ts +0 -25
  320. package/button/Button.stories.js +0 -27
  321. package/button/index.d.ts +0 -24
  322. package/card/index.d.ts +0 -22
  323. package/checkbox/index.d.ts +0 -24
  324. package/chip/index.d.ts +0 -22
  325. package/common/RequiredComponent.js +0 -40
  326. package/date/Date.js +0 -379
  327. package/date/index.d.ts +0 -27
  328. package/date-input/index.d.ts +0 -95
  329. package/dialog/index.d.ts +0 -18
  330. package/dropdown/index.d.ts +0 -26
  331. package/file-input/index.d.ts +0 -81
  332. package/footer/index.d.ts +0 -25
  333. package/header/index.d.ts +0 -25
  334. package/heading/index.d.ts +0 -17
  335. package/input-text/Icons.js +0 -22
  336. package/input-text/InputText.js +0 -705
  337. package/input-text/index.d.ts +0 -36
  338. package/link/index.d.ts +0 -23
  339. package/number-input/index.d.ts +0 -113
  340. package/paginator/index.d.ts +0 -20
  341. package/password-input/index.d.ts +0 -94
  342. package/progress-bar/index.d.ts +0 -18
  343. package/radio/Radio.js +0 -209
  344. package/radio/index.d.ts +0 -23
  345. package/resultsetTable/index.d.ts +0 -19
  346. package/select/index.d.ts +0 -131
  347. package/sidenav/index.d.ts +0 -13
  348. package/slider/index.d.ts +0 -29
  349. package/spinner/index.d.ts +0 -17
  350. package/switch/index.d.ts +0 -24
  351. package/table/index.d.ts +0 -13
  352. package/tabs/index.d.ts +0 -19
  353. package/tag/index.d.ts +0 -24
  354. package/text-input/index.d.ts +0 -135
  355. package/textarea/index.d.ts +0 -117
  356. package/toggle/Toggle.js +0 -220
  357. package/toggle/index.d.ts +0 -21
  358. package/toggle-group/index.d.ts +0 -21
  359. package/upload/Upload.js +0 -205
  360. package/upload/buttons-upload/ButtonsUpload.js +0 -135
  361. package/upload/buttons-upload/Icons.js +0 -40
  362. package/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  363. package/upload/dragAndDropArea/Icons.js +0 -39
  364. package/upload/file-upload/FileToUpload.js +0 -189
  365. package/upload/file-upload/Icons.js +0 -66
  366. package/upload/files-upload/FilesToUpload.js +0 -123
  367. package/upload/index.d.ts +0 -15
  368. package/upload/transaction/Icons.js +0 -160
  369. package/upload/transaction/Transaction.js +0 -148
  370. package/upload/transactions/Transactions.js +0 -138
  371. package/wizard/Icons.js +0 -65
  372. package/wizard/index.d.ts +0 -18
@@ -1,16 +1,14 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
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,246 +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");
33
-
34
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
35
-
36
- var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext.js"));
30
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
37
31
 
38
- function _templateObject18() {
39
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n align-items: center;\n line-height: 1.715em;\n color: ", ";\n"]);
40
-
41
- _templateObject18 = function _templateObject18() {
42
- return data;
43
- };
44
-
45
- return data;
46
- }
47
-
48
- function _templateObject17() {
49
- var data = (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"]);
50
-
51
- _templateObject17 = function _templateObject17() {
52
- return data;
53
- };
32
+ var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext"));
54
33
 
55
- return data;
56
- }
57
-
58
- function _templateObject16() {
59
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n color: ", ";\n line-height: 1.715em;\n"]);
60
-
61
- _templateObject16 = function _templateObject16() {
62
- return data;
63
- };
64
-
65
- return data;
66
- }
67
-
68
- function _templateObject15() {
69
- var data = (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"]);
70
-
71
- _templateObject15 = function _templateObject15() {
72
- return data;
73
- };
74
-
75
- return data;
76
- }
77
-
78
- function _templateObject14() {
79
- var data = (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"]);
80
-
81
- _templateObject14 = function _templateObject14() {
82
- return data;
83
- };
34
+ var _Suggestions = _interopRequireDefault(require("./Suggestions"));
84
35
 
85
- return data;
86
- }
36
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
87
37
 
88
- function _templateObject13() {
89
- var data = (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"]);
90
-
91
- _templateObject13 = function _templateObject13() {
92
- return data;
93
- };
94
-
95
- return data;
96
- }
97
-
98
- function _templateObject12() {
99
- var data = (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"]);
100
-
101
- _templateObject12 = function _templateObject12() {
102
- return data;
103
- };
104
-
105
- return data;
106
- }
107
-
108
- function _templateObject11() {
109
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n padding: 3px;\n height: 18px;\n width: 18px;\n margin-left: 0.25rem;\n color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"]);
110
-
111
- _templateObject11 = function _templateObject11() {
112
- return data;
113
- };
114
-
115
- return data;
116
- }
117
-
118
- function _templateObject10() {
119
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin: 0 0.25rem;\n padding: 0 0 0 0.5rem;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"]);
120
-
121
- _templateObject10 = function _templateObject10() {
122
- return data;
123
- };
124
-
125
- return data;
126
- }
127
-
128
- function _templateObject9() {
129
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin-left: 0.25rem;\n padding: 0 0.5rem 0 0;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"]);
130
-
131
- _templateObject9 = function _templateObject9() {
132
- return data;
133
- };
134
-
135
- return data;
136
- }
137
-
138
- function _templateObject8() {
139
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n font-size: 1rem;\n font-family: ", ";\n border: 1px solid transparent;\n border-radius: 2px;\n padding: 3px;\n margin-left: 0.25rem;\n ", "\n\n box-shadow: 0 0 0 2px transparent;\n background-color: ", ";\n\n color: ", ";\n\n ", "\n\n svg {\n line-height: 18px;\n }\n"]);
140
-
141
- _templateObject8 = function _templateObject8() {
142
- return data;
143
- };
38
+ var _Icons = _interopRequireDefault(require("./Icons"));
144
39
 
145
- return data;
146
- }
147
-
148
- function _templateObject7() {
149
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 16px;\n height: 16px;\n"]);
150
-
151
- _templateObject7 = function _templateObject7() {
152
- return data;
153
- };
154
-
155
- return data;
156
- }
157
-
158
- function _templateObject6() {
159
- var data = (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"]);
160
-
161
- _templateObject6 = function _templateObject6() {
162
- return data;
163
- };
164
-
165
- return data;
166
- }
167
-
168
- function _templateObject5() {
169
- var data = (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"]);
170
-
171
- _templateObject5 = function _templateObject5() {
172
- return data;
173
- };
174
-
175
- return data;
176
- }
177
-
178
- function _templateObject4() {
179
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
180
-
181
- _templateObject4 = function _templateObject4() {
182
- return data;
183
- };
184
-
185
- return data;
186
- }
187
-
188
- function _templateObject3() {
189
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"]);
190
-
191
- _templateObject3 = function _templateObject3() {
192
- return data;
193
- };
194
-
195
- return data;
196
- }
40
+ var _uuid = require("uuid");
197
41
 
198
- function _templateObject2() {
199
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
42
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
200
43
 
201
- _templateObject2 = function _templateObject2() {
202
- return data;
203
- };
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); }
204
45
 
205
- return data;
206
- }
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; }
207
47
 
208
- function _templateObject() {
209
- var data = (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"]);
48
+ var sizes = {
49
+ small: "240px",
50
+ medium: "360px",
51
+ large: "480px",
52
+ fillParent: "100%"
53
+ };
210
54
 
211
- _templateObject = function _templateObject() {
212
- return data;
213
- };
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
+ };
214
61
 
215
- return data;
216
- }
217
-
218
- var textInputIcons = {
219
- error: _react["default"].createElement("svg", {
220
- xmlns: "http://www.w3.org/2000/svg",
221
- height: "24px",
222
- viewBox: "0 0 24 24",
223
- width: "24px",
224
- fill: "currentColor"
225
- }, _react["default"].createElement("path", {
226
- 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"
227
- })),
228
- clear: _react["default"].createElement("svg", {
229
- xmlns: "http://www.w3.org/2000/svg",
230
- width: "24",
231
- height: "24",
232
- viewBox: "0 0 24 24",
233
- fill: "currentColor"
234
- }, _react["default"].createElement("path", {
235
- d: "M0 0h24v24H0V0z",
236
- fill: "none"
237
- }), _react["default"].createElement("path", {
238
- 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"
239
- })),
240
- increment: _react["default"].createElement("svg", {
241
- xmlns: "http://www.w3.org/2000/svg",
242
- height: "24px",
243
- viewBox: "0 0 24 24",
244
- width: "24px",
245
- fill: "currentColor"
246
- }, _react["default"].createElement("path", {
247
- d: "M0 0h24v24H0z",
248
- fill: "none"
249
- }), _react["default"].createElement("path", {
250
- d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"
251
- })),
252
- decrement: _react["default"].createElement("svg", {
253
- xmlns: "http://www.w3.org/2000/svg",
254
- height: "24px",
255
- viewBox: "0 0 24 24",
256
- width: "24px",
257
- fill: "currentColor"
258
- }, _react["default"].createElement("path", {
259
- d: "M0 0h24v24H0z",
260
- fill: "none"
261
- }), _react["default"].createElement("path", {
262
- d: "M19 13H5v-2h14v2z"
263
- }))
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];
264
64
  };
265
65
 
266
66
  var makeCancelable = function makeCancelable(promise) {
@@ -284,65 +84,70 @@ var makeCancelable = function makeCancelable(promise) {
284
84
  };
285
85
  };
286
86
 
287
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
288
- 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;
89
+ };
90
+
91
+ var isNotOptional = function isNotOptional(value, optional) {
92
+ return value === "" && !optional;
289
93
  };
290
94
 
291
- var getLengthErrorMessage = function getLengthErrorMessage(length) {
292
- return "Min length ".concat(length.min, ", max length ").concat(length.max, ".");
95
+ var isLengthIncorrect = function isLengthIncorrect(value, minLength, maxLength) {
96
+ return value && minLength && maxLength && (value.length < minLength || value.length > maxLength);
293
97
  };
294
98
 
295
- var getPatternErrorMessage = function getPatternErrorMessage() {
296
- return "Please match the format requested.";
99
+ var isNumberIncorrect = function isNumberIncorrect(value, minNumber, maxNumber) {
100
+ return minNumber && parseInt(value) < minNumber || maxNumber && parseInt(value) > maxNumber;
297
101
  };
298
102
 
299
- var patternMatch = function patternMatch(pattern, value) {
300
- return new RegExp(pattern).test(value);
103
+ var patternMissmatch = function patternMissmatch(pattern, value) {
104
+ return pattern && !new RegExp(pattern).test(value);
301
105
  };
302
106
 
303
- var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
304
- var _action$title;
305
-
306
- var _ref$label = _ref.label,
307
- label = _ref$label === void 0 ? "" : _ref$label,
308
- _ref$name = _ref.name,
309
- name = _ref$name === void 0 ? "" : _ref$name,
310
- value = _ref.value,
311
- _ref$helperText = _ref.helperText,
312
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
313
- _ref$placeholder = _ref.placeholder,
314
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
315
- action = _ref.action,
316
- _ref$clearable = _ref.clearable,
317
- clearable = _ref$clearable === void 0 ? false : _ref$clearable,
318
- _ref$disabled = _ref.disabled,
319
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
320
- _ref$optional = _ref.optional,
321
- optional = _ref$optional === void 0 ? false : _ref$optional,
322
- _ref$prefix = _ref.prefix,
323
- prefix = _ref$prefix === void 0 ? "" : _ref$prefix,
324
- _ref$suffix = _ref.suffix,
325
- suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
326
- onChange = _ref.onChange,
327
- onBlur = _ref.onBlur,
328
- _ref$error = _ref.error,
329
- error = _ref$error === void 0 ? "" : _ref$error,
330
- suggestions = _ref.suggestions,
331
- pattern = _ref.pattern,
332
- length = _ref.length,
333
- _ref$autocomplete = _ref.autocomplete,
334
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
335
- margin = _ref.margin,
336
- _ref$size = _ref.size,
337
- size = _ref$size === void 0 ? "medium" : _ref$size,
338
- _ref$tabIndex = _ref.tabIndex,
339
- 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;
340
142
 
341
143
  var _useState = (0, _react.useState)("input-".concat((0, _uuid.v4)())),
342
144
  _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
343
145
  inputId = _useState2[0];
344
146
 
345
- 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),
346
151
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
347
152
  innerValue = _useState4[0],
348
153
  setInnerValue = _useState4[1];
@@ -369,71 +174,55 @@ var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
369
174
 
370
175
  var _useState13 = (0, _react.useState)(-1),
371
176
  _useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
372
- visualFocusedSuggIndex = _useState14[0],
373
- changeVisualFocusedSuggIndex = _useState14[1];
177
+ visualFocusIndex = _useState14[0],
178
+ changeVisualFocusIndex = _useState14[1];
374
179
 
375
- var suggestionsRef = (0, _react.useRef)(null);
376
180
  var inputRef = (0, _react.useRef)(null);
377
181
  var actionRef = (0, _react.useRef)(null);
378
182
  var colorsTheme = (0, _useTheme["default"])();
183
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
379
184
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
380
- var autosuggestId = "".concat(inputId, "-listBox");
381
- var errorId = "error-message-".concat(inputId);
382
185
  var numberInputContext = (0, _react.useContext)(_NumberInputContext["default"]);
383
186
 
384
- var isNotOptional = function isNotOptional(value) {
385
- return value === "" && !optional;
386
- };
387
-
388
- var isLengthIncorrect = function isLengthIncorrect(value) {
389
- return value !== "" && length && length.min && length.max && (value.length < length.min || value.length > length.max);
390
- };
391
-
392
- var isNumberIncorrect = function isNumberIncorrect(value) {
393
- 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);
394
- };
395
-
396
- var isTextInputType = function isTextInputType() {
397
- var _inputRef$current, _inputRef$current2;
398
-
399
- 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";
400
- };
401
-
402
187
  var getNumberErrorMessage = function getNumberErrorMessage(value) {
403
- 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);
404
189
  };
405
190
 
406
- var hasSuggestions = function hasSuggestions() {
407
- return typeof suggestions === "function" || suggestions && suggestions.length > 0;
408
- };
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
+ }, []);
409
197
 
410
198
  var openSuggestions = function openSuggestions() {
411
- if (hasSuggestions() && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)) changeIsOpen(true);
199
+ hasSuggestions(suggestions) && changeIsOpen(true);
412
200
  };
413
201
 
414
202
  var closeSuggestions = function closeSuggestions() {
415
- changeIsOpen(false);
416
- changeVisualFocusedSuggIndex(-1);
203
+ if (hasSuggestions(suggestions)) {
204
+ changeIsOpen(false);
205
+ changeVisualFocusIndex(-1);
206
+ }
417
207
  };
418
208
 
419
209
  var changeValue = function changeValue(newValue) {
420
210
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
421
211
  var changedValue = typeof newValue === "number" ? newValue.toString() : newValue;
422
- if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
212
+ if (isNotOptional(newValue, optional)) onChange === null || onChange === void 0 ? void 0 : onChange({
423
213
  value: changedValue,
424
- error: getNotOptionalErrorMessage()
425
- });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({
426
216
  value: changedValue,
427
- error: getLengthErrorMessage(length)
428
- });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({
429
219
  value: changedValue,
430
- error: getPatternErrorMessage()
431
- });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({
432
222
  value: changedValue,
433
223
  error: getNumberErrorMessage(newValue)
434
224
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
435
- value: changedValue,
436
- error: null
225
+ value: changedValue
437
226
  });
438
227
  };
439
228
 
@@ -441,52 +230,48 @@ var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
441
230
  document.activeElement !== actionRef.current && inputRef.current.focus();
442
231
  };
443
232
 
444
- var handleIOnChange = function handleIOnChange(event) {
445
- openSuggestions();
446
- changeValue(event.target.value);
233
+ var handleInputContainerOnMouseDown = function handleInputContainerOnMouseDown(event) {
234
+ // Avoid input to lose the focus when the container is pressed
235
+ document.activeElement === inputRef.current && event.preventDefault();
447
236
  };
448
237
 
449
- var handleIOnClick = function handleIOnClick() {
238
+ var handleInputOnChange = function handleInputOnChange(event) {
450
239
  openSuggestions();
240
+ changeValue(event.target.value);
451
241
  };
452
242
 
453
- var handleIOnBlur = function handleIOnBlur(event) {
454
- suggestions && closeSuggestions();
455
- 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({
456
246
  value: event.target.value,
457
- error: getNotOptionalErrorMessage()
458
- });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({
459
249
  value: event.target.value,
460
- error: getLengthErrorMessage(length)
461
- });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({
462
252
  value: event.target.value,
463
- error: getPatternErrorMessage()
464
- });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({
465
255
  value: event.target.value,
466
256
  error: getNumberErrorMessage(event.target.value)
467
257
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
468
- value: event.target.value,
469
- error: null
258
+ value: event.target.value
470
259
  });
471
260
  };
472
261
 
473
- var handleIOnFocus = function handleIOnFocus() {
474
- openSuggestions();
475
- };
262
+ var handleInputOnKeyDown = function handleInputOnKeyDown(event) {
263
+ switch (event.key) {
264
+ case "Down":
265
+ case "ArrowDown":
266
+ event.preventDefault();
476
267
 
477
- var handleIOnKeyDown = function handleIOnKeyDown(event) {
478
- switch (event.keyCode) {
479
- case 40:
480
- // Arrow Down
481
- if (numberInputContext) {
268
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
482
269
  decrementNumber();
483
- event.preventDefault();
484
270
  } else {
485
- event.preventDefault();
486
271
  openSuggestions();
487
272
 
488
273
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
489
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
274
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
490
275
  if (visualFocusedSuggIndex < filteredSuggestions.length - 1) return visualFocusedSuggIndex + 1;else if (visualFocusedSuggIndex === filteredSuggestions.length - 1) return 0;
491
276
  });
492
277
  }
@@ -494,17 +279,17 @@ var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
494
279
 
495
280
  break;
496
281
 
497
- case 38:
498
- // Arrow Up
499
- if (numberInputContext) {
282
+ case "Up":
283
+ case "ArrowUp":
284
+ event.preventDefault();
285
+
286
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
500
287
  incrementNumber();
501
- event.preventDefault();
502
288
  } else {
503
- event.preventDefault();
504
289
  openSuggestions();
505
290
 
506
291
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
507
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
292
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
508
293
  if (visualFocusedSuggIndex === 0 || visualFocusedSuggIndex === -1) return filteredSuggestions.length > 0 ? filteredSuggestions.length - 1 : suggestions.length - 1;else return visualFocusedSuggIndex - 1;
509
294
  });
510
295
  }
@@ -512,22 +297,21 @@ var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
512
297
 
513
298
  break;
514
299
 
515
- case 27:
516
- // Esc
300
+ case "Esc":
301
+ case "Escape":
517
302
  event.preventDefault();
518
303
 
519
- if (hasSuggestions()) {
304
+ if (hasSuggestions(suggestions)) {
520
305
  changeValue("");
521
306
  isOpen && closeSuggestions();
522
307
  }
523
308
 
524
309
  break;
525
310
 
526
- case 13:
527
- // Enter
528
- if (hasSuggestions() && !isSearching) {
529
- var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusedSuggIndex >= 0 && visualFocusedSuggIndex < filteredSuggestions.length;
530
- 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]);
531
315
  isOpen && closeSuggestions();
532
316
  }
533
317
 
@@ -552,12 +336,12 @@ var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
552
336
  };
553
337
 
554
338
  var setNumberProps = function setNumberProps(type, min, max, step) {
555
- var _inputRef$current3, _inputRef$current4, _inputRef$current5, _inputRef$current6;
339
+ var _inputRef$current2, _inputRef$current3, _inputRef$current4, _inputRef$current5;
556
340
 
557
- type && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.setAttribute("type", type));
558
- min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setAttribute("min", min));
559
- max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : _inputRef$current5.setAttribute("max", max));
560
- 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));
561
345
  };
562
346
 
563
347
  var decrementNumber = function decrementNumber() {
@@ -600,15 +384,6 @@ var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
600
384
  }
601
385
  };
602
386
 
603
- (0, _react.useLayoutEffect)(function () {
604
- var _suggestionsRef$curre, _visualFocusedOptionE;
605
-
606
- 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];
607
- visualFocusedOptionEl === null || visualFocusedOptionEl === void 0 ? void 0 : (_visualFocusedOptionE = visualFocusedOptionEl.scrollIntoView) === null || _visualFocusedOptionE === void 0 ? void 0 : _visualFocusedOptionE.call(visualFocusedOptionEl, {
608
- block: "nearest",
609
- inline: "start"
610
- });
611
- }, [visualFocusedSuggIndex]);
612
387
  (0, _react.useEffect)(function () {
613
388
  if (typeof suggestions === "function") {
614
389
  changeIsSearching(true);
@@ -632,173 +407,159 @@ var DxcTextInput = _react["default"].forwardRef(function (_ref, ref) {
632
407
  changeFilteredSuggestions(suggestions.filter(function (suggestion) {
633
408
  return suggestion.toUpperCase().startsWith((value !== null && value !== void 0 ? value : innerValue).toUpperCase());
634
409
  }));
635
- changeVisualFocusedSuggIndex(-1);
410
+ changeVisualFocusIndex(-1);
636
411
  }
637
412
 
638
- numberInputContext && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
639
- }, [value, innerValue, suggestions]);
640
- (0, _react.useLayoutEffect)(function () {
641
- if (filteredSuggestions.length === 0 && !isSearching && !isAutosuggestError) closeSuggestions();
642
- }, [filteredSuggestions]);
643
-
644
- var getLastOptionIndex = function getLastOptionIndex() {
645
- var last = 0;
646
-
647
- var reducer = function reducer(acc, current) {
648
- var _current$options;
649
-
650
- return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
651
- };
652
-
653
- if (filteredSuggestions.length > 0) filteredSuggestions[0].options ? last = filteredSuggestions.reduce(reducer, 0) - 1 : last = filteredSuggestions.length - 1;
654
- return last;
655
- };
656
-
657
- var lastOptionIndex = (0, _react.useMemo)(function () {
658
- return getLastOptionIndex();
659
- }, [filteredSuggestions]);
660
-
661
- var HighlightedSuggestion = function HighlightedSuggestion(_ref2) {
662
- var suggestion = _ref2.suggestion,
663
- index = _ref2.index;
664
- var regEx = new RegExp(value !== null && value !== void 0 ? value : innerValue, "i");
665
- var matchedWords = suggestion.match(regEx);
666
- var noMatchedWords = suggestion.replace(regEx, "");
667
- var isLastOption = index === lastOptionIndex;
668
- return _react["default"].createElement(Suggestion, {
669
- id: "suggestion-".concat(index),
670
- onClick: function onClick() {
671
- changeValue(suggestion);
672
- closeSuggestions();
673
- },
674
- role: "option",
675
- "aria-selected": visualFocusedSuggIndex === index && "true",
676
- visualFocused: visualFocusedSuggIndex === index
677
- }, _react["default"].createElement(StyledSuggestion, {
678
- last: isLastOption,
679
- visualFocused: visualFocusedSuggIndex === index
680
- }, typeof suggestions === "function" ? suggestion : _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement("strong", null, matchedWords), noMatchedWords)));
681
- };
682
-
683
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
413
+ (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
414
+ }, [value, innerValue, suggestions, numberInputContext]);
415
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
684
416
  theme: colorsTheme.textInput
685
- }, _react["default"].createElement(DxcInput, {
417
+ }, /*#__PURE__*/_react["default"].createElement(TextInputContainer, {
686
418
  margin: margin,
687
- ref: ref,
688
- size: size
689
- }, _react["default"].createElement(Label, {
419
+ size: size,
420
+ ref: ref
421
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
690
422
  htmlFor: inputId,
691
423
  disabled: disabled,
692
- backgroundType: backgroundType
693
- }, label, " ", optional && _react["default"].createElement(OptionalLabel, null, "(Optional)")), _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, {
694
427
  disabled: disabled,
695
428
  backgroundType: backgroundType
696
- }, helperText), _react["default"].createElement(InputContainer, {
697
- error: error,
429
+ }, helperText), /*#__PURE__*/_react["default"].createElement(InputContainer, {
430
+ error: error ? true : false,
698
431
  disabled: disabled,
699
432
  backgroundType: backgroundType,
700
- onClick: handleInputContainerOnClick
701
- }, prefix && _react["default"].createElement(Prefix, {
433
+ onClick: handleInputContainerOnClick,
434
+ onMouseDown: handleInputContainerOnMouseDown
435
+ }, prefix && /*#__PURE__*/_react["default"].createElement(Prefix, {
702
436
  disabled: disabled,
703
437
  backgroundType: backgroundType
704
- }, prefix), _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, {
705
472
  id: inputId,
706
473
  name: name,
707
474
  value: value !== null && value !== void 0 ? value : innerValue,
708
475
  placeholder: placeholder,
709
- onChange: handleIOnChange,
710
- onClick: handleIOnClick,
711
- onBlur: handleIOnBlur,
712
- onFocus: handleIOnFocus,
713
- onKeyDown: handleIOnKeyDown,
476
+ onBlur: handleInputOnBlur,
477
+ onChange: handleInputOnChange,
478
+ onFocus: openSuggestions,
479
+ onKeyDown: handleInputOnKeyDown,
480
+ onMouseDown: function onMouseDown(event) {
481
+ event.stopPropagation();
482
+ },
714
483
  disabled: disabled,
715
484
  ref: inputRef,
716
485
  backgroundType: backgroundType,
717
486
  pattern: pattern,
718
- minLength: length === null || length === void 0 ? void 0 : length.min,
719
- maxLength: length === null || length === void 0 ? void 0 : length.max,
720
- autoComplete: autocomplete,
487
+ minLength: minLength,
488
+ maxLength: maxLength,
489
+ autoComplete: autocomplete === "off" ? "nope" : autocomplete,
721
490
  tabIndex: tabIndex,
722
- role: isTextInputType() && hasSuggestions() ? "combobox" : "textbox",
723
- "aria-autocomplete": isTextInputType() && hasSuggestions() ? "list" : undefined,
724
- "aria-controls": isTextInputType() && hasSuggestions() ? autosuggestId : undefined,
725
- "aria-expanded": isTextInputType() && hasSuggestions() ? isOpen ? "true" : "false" : undefined,
726
- "aria-activedescendant": isTextInputType() && hasSuggestions() && isOpen && visualFocusedSuggIndex !== -1 ? "suggestion-".concat(visualFocusedSuggIndex) : undefined,
727
- "aria-invalid": error ? "true" : "false",
728
- "aria-describedby": error ? errorId : undefined,
729
- "aria-required": optional ? "false" : "true"
730
- }), !disabled && error && _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, {
731
502
  backgroundType: backgroundType,
732
503
  "aria-label": "Error"
733
- }, textInputIcons.error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && _react["default"].createElement(Action, {
504
+ }, _Icons["default"].error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
734
505
  onClick: handleClearActionOnClick,
506
+ onMouseDown: function onMouseDown(event) {
507
+ event.stopPropagation();
508
+ },
735
509
  backgroundType: backgroundType,
736
510
  tabIndex: tabIndex,
737
- "aria-label": "Clear"
738
- }, textInputIcons.clear), (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" ? _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(Action, {
511
+ title: translatedLabels.textInput.clearFieldActionTitle,
512
+ "aria-label": translatedLabels.textInput.clearFieldActionTitle,
513
+ type: "button"
514
+ }, _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, {
739
515
  ref: actionRef,
740
516
  disabled: disabled,
741
517
  onClick: handleDecrementActionOnClick,
518
+ onMouseDown: function onMouseDown(event) {
519
+ event.stopPropagation();
520
+ },
742
521
  backgroundType: backgroundType,
743
522
  tabIndex: tabIndex,
744
- "aria-label": "Decrement"
745
- }, textInputIcons.decrement), _react["default"].createElement(Action, {
523
+ title: translatedLabels.numberInput.decrementValueTitle,
524
+ "aria-label": translatedLabels.numberInput.decrementValueTitle,
525
+ type: "button"
526
+ }, _Icons["default"].decrement), /*#__PURE__*/_react["default"].createElement(Action, {
746
527
  ref: actionRef,
747
528
  disabled: disabled,
748
529
  onClick: handleIncrementActionOnClick,
530
+ onMouseDown: function onMouseDown(event) {
531
+ event.stopPropagation();
532
+ },
749
533
  backgroundType: backgroundType,
750
534
  tabIndex: tabIndex,
751
- "aria-label": "Increment"
752
- }, textInputIcons.increment)) : action && _react["default"].createElement(Action, {
535
+ title: translatedLabels.numberInput.incrementValueTitle,
536
+ "aria-label": translatedLabels.numberInput.incrementValueTitle,
537
+ type: "button"
538
+ }, _Icons["default"].increment)), action && /*#__PURE__*/_react["default"].createElement(Action, {
753
539
  ref: actionRef,
754
540
  disabled: disabled,
755
541
  onClick: action.onClick,
756
- title: (_action$title = action.title) !== null && _action$title !== void 0 ? _action$title : action.title,
542
+ onMouseDown: function onMouseDown(event) {
543
+ event.stopPropagation();
544
+ },
545
+ title: action.title,
546
+ "aria-label": action.title,
757
547
  backgroundType: backgroundType,
758
- tabIndex: tabIndex
759
- }, typeof action.icon === "string" ? _react["default"].createElement(ActionIcon, {
548
+ tabIndex: tabIndex,
549
+ type: "button"
550
+ }, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ActionIcon, {
760
551
  src: action.icon
761
- }) : action.icon), suffix && _react["default"].createElement(Suffix, {
552
+ }) : action.icon), suffix && /*#__PURE__*/_react["default"].createElement(Suffix, {
762
553
  disabled: disabled,
763
554
  backgroundType: backgroundType
764
- }, suffix), isOpen && _react["default"].createElement(Suggestions, {
765
- id: autosuggestId,
766
- isError: isAutosuggestError,
767
- onMouseDown: function onMouseDown(event) {
768
- event.preventDefault();
769
- },
770
- onMouseLeave: function onMouseLeave() {
771
- changeVisualFocusedSuggIndex(-1);
772
- },
773
- ref: suggestionsRef,
774
- role: "listbox",
775
- "aria-label": label
776
- }, !isSearching && !isAutosuggestError && filteredSuggestions.length > 0 && filteredSuggestions.map(function (suggestion, index) {
777
- return _react["default"].createElement(HighlightedSuggestion, {
778
- key: "suggestion-".concat((0, _uuid.v4)()),
779
- suggestion: suggestion,
780
- index: index
781
- });
782
- }), isSearching && _react["default"].createElement(SuggestionsSystemMessage, null, "Searching..."), isAutosuggestError && _react["default"].createElement(SuggestionsError, null, _react["default"].createElement(SuggestionsErrorIcon, {
783
- backgroundType: backgroundType
784
- }, textInputIcons.error), "Error fetching data"))), !disabled && _react["default"].createElement(Error, {
555
+ }, suffix)), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
785
556
  id: errorId,
786
- backgroundType: backgroundType
557
+ backgroundType: backgroundType,
558
+ "aria-live": error ? "assertive" : "off"
787
559
  }, error)));
788
560
  });
789
561
 
790
- var sizes = {
791
- small: "240px",
792
- medium: "360px",
793
- large: "480px",
794
- fillParent: "100%"
795
- };
796
-
797
- var calculateWidth = function calculateWidth(margin, size) {
798
- return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
799
- };
800
-
801
- var DxcInput = _styledComponents["default"].div(_templateObject(), function (props) {
562
+ 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) {
802
563
  return calculateWidth(props.margin, props.size);
803
564
  }, function (props) {
804
565
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -812,7 +573,7 @@ var DxcInput = _styledComponents["default"].div(_templateObject(), function (pro
812
573
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
813
574
  });
814
575
 
815
- var Label = _styledComponents["default"].label(_templateObject2(), function (props) {
576
+ 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) {
816
577
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
817
578
  }, function (props) {
818
579
  return props.theme.fontFamily;
@@ -824,13 +585,15 @@ var Label = _styledComponents["default"].label(_templateObject2(), function (pro
824
585
  return props.theme.labelFontWeight;
825
586
  }, function (props) {
826
587
  return props.theme.labelLineHeight;
588
+ }, function (props) {
589
+ return !props.hasHelperText && "margin-bottom: 0.25rem";
827
590
  });
828
591
 
829
- var OptionalLabel = _styledComponents["default"].span(_templateObject3(), function (props) {
592
+ var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
830
593
  return props.theme.optionalLabelFontWeight;
831
594
  });
832
595
 
833
- var HelperText = _styledComponents["default"].span(_templateObject4(), function (props) {
596
+ 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) {
834
597
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
835
598
  }, function (props) {
836
599
  return props.theme.fontFamily;
@@ -844,9 +607,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4(), function
844
607
  return props.theme.helperTextLineHeight;
845
608
  });
846
609
 
847
- var InputContainer = _styledComponents["default"].div(_templateObject5(), function (props) {
848
- return "".concat(props.theme.inputMarginTop, " 0 ").concat(props.theme.inputMarginBottom, " 0");
849
- }, function (props) {
610
+ 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) {
850
611
  if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
851
612
  }, function (props) {
852
613
  if (props.disabled) return props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;else return props.backgroundType === "dark" ? props.theme.enabledBorderColorOnDark : props.theme.enabledBorderColor;
@@ -855,10 +616,10 @@ var InputContainer = _styledComponents["default"].div(_templateObject5(), functi
855
616
  }, function (props) {
856
617
  return props.disabled && "cursor: not-allowed;";
857
618
  }, function (props) {
858
- 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 ");
619
+ 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 ");
859
620
  });
860
621
 
861
- var Input = _styledComponents["default"].input(_templateObject6(), function (props) {
622
+ 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) {
862
623
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledValueFontColorOnDark : props.theme.disabledValueFontColor : props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
863
624
  }, function (props) {
864
625
  return props.theme.fontFamily;
@@ -874,9 +635,9 @@ var Input = _styledComponents["default"].input(_templateObject6(), function (pro
874
635
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledPlaceholderFontColorOnDark : props.theme.disabledPlaceholderFontColor : props.backgroundType === "dark" ? props.theme.placeholderFontColorOnDark : props.theme.placeholderFontColor;
875
636
  });
876
637
 
877
- var ActionIcon = _styledComponents["default"].img(_templateObject7());
638
+ var ActionIcon = _styledComponents["default"].img(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n width: 16px;\n height: 16px;\n"])));
878
639
 
879
- var Action = _styledComponents["default"].button(_templateObject8(), function (props) {
640
+ var Action = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n font-size: 1rem;\n font-family: ", ";\n border: 1px solid transparent;\n border-radius: 2px;\n padding: 3px;\n margin-left: 0.25rem;\n ", "\n\n box-shadow: 0 0 0 2px transparent;\n background-color: ", ";\n\n color: ", ";\n\n ", "\n\n svg {\n line-height: 18px;\n }\n"])), function (props) {
880
641
  return props.theme.fontFamily;
881
642
  }, function (props) {
882
643
  return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
@@ -888,105 +649,29 @@ var Action = _styledComponents["default"].button(_templateObject8(), function (p
888
649
  return !props.disabled && "\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ".concat(props.backgroundType === "dark" ? props.theme.focusActionBorderColorOnDark : props.theme.focusActionBorderColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.focusActionIconColorOnDark : props.theme.focusActionIconColor, ";\n }\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ").concat(props.backgroundType === "dark" ? props.theme.focusActionBorderColorOnDark : props.theme.focusActionBorderColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.focusActionIconColorOnDark : props.theme.focusActionIconColor, ";\n }\n &:hover {\n background-color: ").concat(props.backgroundType === "dark" ? props.theme.hoverActionBackgroundColorOnDark : props.theme.hoverActionBackgroundColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.hoverActionIconColorOnDark : props.theme.hoverActionIconColor, ";\n }\n &:active {\n background-color: ").concat(props.backgroundType === "dark" ? props.theme.activeActionBackgroundColorOnDark : props.theme.activeActionBackgroundColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.activeActionIconColorOnDark : props.theme.activeActionIconColor, ";\n }\n ");
889
650
  });
890
651
 
891
- var Prefix = _styledComponents["default"].span(_templateObject9(), function (props) {
652
+ var Prefix = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin-left: 0.25rem;\n padding: 0 0.5rem 0 0;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"])), function (props) {
892
653
  var color = props.disabled ? props.backgroundType === "dark" ? props.theme.disabledPrefixColorOnDark : props.theme.disabledPrefixColor : props.backgroundType === "dark" ? props.theme.prefixColorOnDark : props.theme.prefixColor;
893
654
  return "color: ".concat(color, "; border-right: 1px solid ").concat(color, ";");
894
655
  }, function (props) {
895
656
  return props.theme.fontFamily;
896
657
  });
897
658
 
898
- var Suffix = _styledComponents["default"].span(_templateObject10(), function (props) {
659
+ var Suffix = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin: 0 0.25rem;\n padding: 0 0 0 0.5rem;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"])), function (props) {
899
660
  var color = props.disabled ? props.backgroundType === "dark" ? props.theme.disabledSuffixColorOnDark : props.theme.disabledSuffixColor : props.backgroundType === "dark" ? props.theme.suffixColorOnDark : props.theme.suffixColor;
900
661
  return "color: ".concat(color, "; border-left: 1px solid ").concat(color, ";");
901
662
  }, function (props) {
902
663
  return props.theme.fontFamily;
903
664
  });
904
665
 
905
- var ErrorIcon = _styledComponents["default"].span(_templateObject11(), function (props) {
666
+ var ErrorIcon = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n padding: 3px;\n height: 18px;\n width: 18px;\n margin-left: 0.25rem;\n color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"])), function (props) {
906
667
  return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
907
668
  });
908
669
 
909
- var Error = _styledComponents["default"].span(_templateObject12(), function (props) {
670
+ 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) {
910
671
  return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
911
672
  }, function (props) {
912
673
  return props.theme.fontFamily;
913
674
  });
914
675
 
915
- var Suggestions = _styledComponents["default"].ul(_templateObject13(), function (props) {
916
- return props.isError ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
917
- }, function (props) {
918
- return props.isError ? props.theme.errorListDialogBorderColor : props.theme.listDialogBorderColor;
919
- }, function (props) {
920
- return props.theme.listOptionFontColor;
921
- }, function (props) {
922
- return props.theme.fontFamily;
923
- }, function (props) {
924
- return props.theme.listOptionFontSize;
925
- }, function (props) {
926
- return props.theme.listOptionFontStyle;
927
- }, function (props) {
928
- return props.theme.listOptionFontWeight;
929
- });
930
-
931
- var Suggestion = _styledComponents["default"].li(_templateObject14(), function (props) {
932
- return props.visualFocused ? props.theme.focusListOptionBorderColor : "transparent";
933
- }, function (props) {
934
- return props.theme.hoverListOptionBackgroundColor;
935
- }, function (props) {
936
- return props.theme.activeListOptionBackgroundColor;
937
- });
938
-
939
- var StyledSuggestion = _styledComponents["default"].span(_templateObject15(), function (props) {
940
- return props.last || props.visualFocused ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listOptionDividerColor);
941
- });
942
-
943
- var SuggestionsSystemMessage = _styledComponents["default"].span(_templateObject16(), function (props) {
944
- return props.theme.systemMessageFontColor;
945
- });
946
-
947
- var SuggestionsErrorIcon = _styledComponents["default"].span(_templateObject17(), function (props) {
948
- return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
949
- });
950
-
951
- var SuggestionsError = _styledComponents["default"].span(_templateObject18(), function (props) {
952
- return props.theme.errorListDialogFontColor;
953
- });
954
-
955
- DxcTextInput.propTypes = {
956
- label: _propTypes["default"].string,
957
- name: _propTypes["default"].string,
958
- value: _propTypes["default"].string,
959
- helperText: _propTypes["default"].string,
960
- placeholder: _propTypes["default"].string,
961
- action: _propTypes["default"].shape({
962
- onClick: _propTypes["default"].func.isRequired,
963
- icon: _propTypes["default"].oneOfType([_propTypes["default"].shape({
964
- type: _propTypes["default"].oneOf(["svg"])
965
- }), _propTypes["default"].string]).isRequired
966
- }),
967
- clearable: _propTypes["default"].bool,
968
- disabled: _propTypes["default"].bool,
969
- optional: _propTypes["default"].bool,
970
- prefix: _propTypes["default"].string,
971
- suffix: _propTypes["default"].string,
972
- onChange: _propTypes["default"].func,
973
- onBlur: _propTypes["default"].func,
974
- error: _propTypes["default"].string,
975
- autocomplete: _propTypes["default"].string,
976
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
977
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
978
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
979
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
980
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
981
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
982
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
983
- suggestions: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].array]),
984
- pattern: _propTypes["default"].string,
985
- length: _propTypes["default"].shape({
986
- min: _propTypes["default"].number,
987
- max: _propTypes["default"].number
988
- }),
989
- tabIndex: _propTypes["default"].number
990
- };
991
676
  var _default = DxcTextInput;
992
677
  exports["default"] = _default;