@dxc-technology/halstack-react 0.0.0-ebb089f → 0.0.0-ebf4fe2

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