@dxc-technology/halstack-react 0.0.0-6623548 → 0.0.0-662ca89

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