@dxc-technology/halstack-react 0.0.0-9b341c0 → 0.0.0-9bd9511

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 (465) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +37 -0
  3. package/HalstackContext.d.ts +13 -0
  4. package/HalstackContext.js +318 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +203 -0
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +56 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +121 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +108 -0
  15. package/accordion-group/types.d.ts +79 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/{dist/alert → alert}/Alert.js +57 -198
  19. package/alert/Alert.stories.tsx +198 -0
  20. package/alert/Alert.test.js +75 -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 +49 -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 +43 -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 +97 -0
  34. package/box/Box.stories.tsx +147 -0
  35. package/box/Box.test.js +13 -0
  36. package/box/types.d.ts +44 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +98 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +4 -0
  44. package/button/Button.js +132 -0
  45. package/button/Button.stories.tsx +425 -0
  46. package/button/Button.test.js +26 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +138 -0
  51. package/card/Card.stories.tsx +201 -0
  52. package/card/Card.test.js +39 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +206 -0
  58. package/checkbox/Checkbox.stories.tsx +260 -0
  59. package/checkbox/Checkbox.test.js +128 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +137 -0
  64. package/chip/Chip.stories.tsx +206 -0
  65. package/chip/Chip.test.js +42 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/{dist/common → common}/utils.js +1 -6
  69. package/common/variables.d.ts +1431 -0
  70. package/{dist/common → common}/variables.js +588 -624
  71. package/date-input/Calendar.d.ts +4 -0
  72. package/date-input/Calendar.js +215 -0
  73. package/date-input/DateInput.d.ts +4 -0
  74. package/date-input/DateInput.js +222 -0
  75. package/date-input/DateInput.stories.tsx +304 -0
  76. package/date-input/DateInput.test.js +648 -0
  77. package/date-input/DatePicker.d.ts +4 -0
  78. package/date-input/DatePicker.js +116 -0
  79. package/date-input/Icons.d.ts +6 -0
  80. package/date-input/Icons.js +63 -0
  81. package/date-input/YearPicker.d.ts +4 -0
  82. package/date-input/YearPicker.js +101 -0
  83. package/date-input/types.d.ts +158 -0
  84. package/date-input/types.js +5 -0
  85. package/dialog/Dialog.d.ts +4 -0
  86. package/dialog/Dialog.js +134 -0
  87. package/dialog/Dialog.stories.tsx +289 -0
  88. package/dialog/Dialog.test.js +56 -0
  89. package/dialog/types.d.ts +44 -0
  90. package/dialog/types.js +5 -0
  91. package/dropdown/Dropdown.d.ts +4 -0
  92. package/dropdown/Dropdown.js +334 -0
  93. package/dropdown/Dropdown.stories.tsx +438 -0
  94. package/dropdown/Dropdown.test.js +479 -0
  95. package/dropdown/DropdownMenu.d.ts +4 -0
  96. package/dropdown/DropdownMenu.js +60 -0
  97. package/dropdown/DropdownMenuItem.d.ts +4 -0
  98. package/dropdown/DropdownMenuItem.js +70 -0
  99. package/dropdown/types.d.ts +100 -0
  100. package/dropdown/types.js +5 -0
  101. package/file-input/FileInput.d.ts +4 -0
  102. package/file-input/FileInput.js +463 -0
  103. package/file-input/FileInput.stories.tsx +618 -0
  104. package/file-input/FileInput.test.js +445 -0
  105. package/file-input/FileItem.d.ts +4 -0
  106. package/file-input/FileItem.js +135 -0
  107. package/file-input/types.d.ts +129 -0
  108. package/file-input/types.js +5 -0
  109. package/flex/Flex.d.ts +4 -0
  110. package/flex/Flex.js +57 -0
  111. package/flex/Flex.stories.tsx +103 -0
  112. package/flex/types.d.ts +32 -0
  113. package/flex/types.js +5 -0
  114. package/footer/Footer.d.ts +4 -0
  115. package/footer/Footer.js +153 -0
  116. package/footer/Footer.stories.tsx +228 -0
  117. package/footer/Footer.test.js +92 -0
  118. package/footer/Icons.d.ts +2 -0
  119. package/{dist/footer → footer}/Icons.js +16 -20
  120. package/footer/types.d.ts +66 -0
  121. package/footer/types.js +5 -0
  122. package/header/Header.d.ts +7 -0
  123. package/header/Header.js +259 -0
  124. package/header/Header.stories.tsx +315 -0
  125. package/header/Header.test.js +66 -0
  126. package/header/Icons.d.ts +2 -0
  127. package/{dist/header → header}/Icons.js +9 -38
  128. package/header/types.d.ts +48 -0
  129. package/header/types.js +5 -0
  130. package/heading/Heading.d.ts +4 -0
  131. package/{dist/heading → heading}/Heading.js +31 -123
  132. package/heading/Heading.stories.tsx +54 -0
  133. package/heading/Heading.test.js +169 -0
  134. package/heading/types.d.ts +33 -0
  135. package/heading/types.js +5 -0
  136. package/inset/Inset.d.ts +3 -0
  137. package/inset/Inset.js +43 -0
  138. package/inset/Inset.stories.tsx +229 -0
  139. package/inset/types.d.ts +37 -0
  140. package/inset/types.js +5 -0
  141. package/layout/ApplicationLayout.d.ts +20 -0
  142. package/layout/ApplicationLayout.js +132 -0
  143. package/layout/ApplicationLayout.stories.tsx +162 -0
  144. package/layout/Icons.d.ts +5 -0
  145. package/{dist/layout → layout}/Icons.js +17 -16
  146. package/layout/SidenavContext.d.ts +5 -0
  147. package/layout/SidenavContext.js +15 -0
  148. package/layout/types.d.ts +42 -0
  149. package/layout/types.js +5 -0
  150. package/link/Link.d.ts +4 -0
  151. package/link/Link.js +116 -0
  152. package/link/Link.stories.tsx +253 -0
  153. package/link/Link.test.js +65 -0
  154. package/link/types.d.ts +54 -0
  155. package/link/types.js +5 -0
  156. package/main.d.ts +44 -0
  157. package/{dist/main.js → main.js} +102 -139
  158. package/nav-tabs/NavTabs.d.ts +8 -0
  159. package/nav-tabs/NavTabs.js +95 -0
  160. package/nav-tabs/NavTabs.stories.tsx +260 -0
  161. package/nav-tabs/NavTabs.test.js +75 -0
  162. package/nav-tabs/Tab.d.ts +4 -0
  163. package/nav-tabs/Tab.js +120 -0
  164. package/nav-tabs/types.d.ts +53 -0
  165. package/nav-tabs/types.js +5 -0
  166. package/number-input/NumberInput.d.ts +4 -0
  167. package/number-input/NumberInput.js +66 -0
  168. package/number-input/NumberInput.stories.tsx +115 -0
  169. package/number-input/NumberInput.test.js +406 -0
  170. package/number-input/NumberInputContext.d.ts +4 -0
  171. package/{dist/number-input → number-input}/NumberInputContext.js +4 -6
  172. package/number-input/numberInputContextTypes.d.ts +19 -0
  173. package/number-input/numberInputContextTypes.js +5 -0
  174. package/number-input/types.d.ts +124 -0
  175. package/number-input/types.js +5 -0
  176. package/package.json +44 -34
  177. package/paginator/Icons.d.ts +5 -0
  178. package/paginator/Icons.js +44 -0
  179. package/paginator/Paginator.d.ts +4 -0
  180. package/paginator/Paginator.js +141 -0
  181. package/paginator/Paginator.stories.tsx +87 -0
  182. package/paginator/Paginator.test.js +266 -0
  183. package/paginator/types.d.ts +38 -0
  184. package/paginator/types.js +5 -0
  185. package/paragraph/Paragraph.d.ts +6 -0
  186. package/paragraph/Paragraph.js +28 -0
  187. package/paragraph/Paragraph.stories.tsx +44 -0
  188. package/password-input/PasswordInput.d.ts +4 -0
  189. package/password-input/PasswordInput.js +137 -0
  190. package/password-input/PasswordInput.stories.tsx +131 -0
  191. package/password-input/PasswordInput.test.js +138 -0
  192. package/password-input/types.d.ts +110 -0
  193. package/password-input/types.js +5 -0
  194. package/progress-bar/ProgressBar.d.ts +4 -0
  195. package/progress-bar/ProgressBar.js +151 -0
  196. package/progress-bar/ProgressBar.stories.jsx +93 -0
  197. package/progress-bar/ProgressBar.test.js +93 -0
  198. package/progress-bar/types.d.ts +36 -0
  199. package/progress-bar/types.js +5 -0
  200. package/quick-nav/QuickNav.d.ts +4 -0
  201. package/quick-nav/QuickNav.js +95 -0
  202. package/quick-nav/QuickNav.stories.tsx +356 -0
  203. package/quick-nav/types.d.ts +21 -0
  204. package/quick-nav/types.js +5 -0
  205. package/radio-group/Radio.d.ts +4 -0
  206. package/radio-group/Radio.js +125 -0
  207. package/radio-group/RadioGroup.d.ts +4 -0
  208. package/radio-group/RadioGroup.js +238 -0
  209. package/radio-group/RadioGroup.stories.tsx +214 -0
  210. package/radio-group/RadioGroup.test.js +620 -0
  211. package/radio-group/types.d.ts +114 -0
  212. package/radio-group/types.js +5 -0
  213. package/resultsetTable/Icons.d.ts +7 -0
  214. package/resultsetTable/Icons.js +48 -0
  215. package/resultsetTable/ResultsetTable.d.ts +4 -0
  216. package/resultsetTable/ResultsetTable.js +160 -0
  217. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  218. package/resultsetTable/ResultsetTable.test.js +292 -0
  219. package/resultsetTable/types.d.ts +67 -0
  220. package/resultsetTable/types.js +5 -0
  221. package/select/Icons.d.ts +10 -0
  222. package/select/Icons.js +90 -0
  223. package/select/Listbox.d.ts +4 -0
  224. package/select/Listbox.js +144 -0
  225. package/select/Option.d.ts +4 -0
  226. package/select/Option.js +81 -0
  227. package/select/Select.d.ts +4 -0
  228. package/select/Select.js +579 -0
  229. package/select/Select.stories.tsx +971 -0
  230. package/select/Select.test.js +1845 -0
  231. package/select/types.d.ts +210 -0
  232. package/select/types.js +5 -0
  233. package/sidenav/Sidenav.d.ts +10 -0
  234. package/sidenav/Sidenav.js +226 -0
  235. package/sidenav/Sidenav.stories.tsx +282 -0
  236. package/sidenav/Sidenav.test.js +37 -0
  237. package/sidenav/types.d.ts +73 -0
  238. package/sidenav/types.js +5 -0
  239. package/slider/Slider.d.ts +4 -0
  240. package/slider/Slider.js +296 -0
  241. package/slider/Slider.stories.tsx +240 -0
  242. package/slider/Slider.test.js +222 -0
  243. package/slider/types.d.ts +86 -0
  244. package/slider/types.js +5 -0
  245. package/spinner/Spinner.d.ts +4 -0
  246. package/spinner/Spinner.js +221 -0
  247. package/spinner/Spinner.stories.jsx +129 -0
  248. package/spinner/Spinner.test.js +55 -0
  249. package/spinner/types.d.ts +32 -0
  250. package/spinner/types.js +5 -0
  251. package/switch/Switch.d.ts +4 -0
  252. package/switch/Switch.js +220 -0
  253. package/switch/Switch.stories.tsx +171 -0
  254. package/switch/Switch.test.js +180 -0
  255. package/switch/types.d.ts +66 -0
  256. package/switch/types.js +5 -0
  257. package/table/Table.d.ts +4 -0
  258. package/{dist/table → table}/Table.js +15 -47
  259. package/table/Table.stories.jsx +356 -0
  260. package/table/Table.test.js +21 -0
  261. package/table/types.d.ts +21 -0
  262. package/table/types.js +5 -0
  263. package/tabs/Tab.d.ts +4 -0
  264. package/tabs/Tab.js +115 -0
  265. package/tabs/Tabs.d.ts +4 -0
  266. package/tabs/Tabs.js +392 -0
  267. package/tabs/Tabs.stories.tsx +226 -0
  268. package/tabs/Tabs.test.js +295 -0
  269. package/tabs/types.d.ts +92 -0
  270. package/tabs/types.js +5 -0
  271. package/tag/Tag.d.ts +4 -0
  272. package/tag/Tag.js +154 -0
  273. package/tag/Tag.stories.tsx +155 -0
  274. package/tag/Tag.test.js +49 -0
  275. package/tag/types.d.ts +69 -0
  276. package/tag/types.js +5 -0
  277. package/text-input/Icons.d.ts +8 -0
  278. package/text-input/Icons.js +57 -0
  279. package/text-input/Suggestion.d.ts +4 -0
  280. package/text-input/Suggestion.js +68 -0
  281. package/text-input/Suggestions.d.ts +4 -0
  282. package/text-input/Suggestions.js +109 -0
  283. package/text-input/TextInput.d.ts +4 -0
  284. package/text-input/TextInput.js +588 -0
  285. package/text-input/TextInput.stories.tsx +569 -0
  286. package/text-input/TextInput.test.js +1404 -0
  287. package/text-input/types.d.ts +197 -0
  288. package/text-input/types.js +5 -0
  289. package/textarea/Textarea.d.ts +4 -0
  290. package/{dist/textarea → textarea}/Textarea.js +79 -207
  291. package/textarea/Textarea.stories.jsx +216 -0
  292. package/textarea/Textarea.test.js +360 -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 +52 -199
  297. package/toggle-group/ToggleGroup.stories.tsx +215 -0
  298. package/toggle-group/ToggleGroup.test.js +124 -0
  299. package/toggle-group/types.d.ts +105 -0
  300. package/toggle-group/types.js +5 -0
  301. package/translatedLabelsType.d.ts +82 -0
  302. package/translatedLabelsType.js +5 -0
  303. package/typography/Typography.d.ts +4 -0
  304. package/typography/Typography.js +119 -0
  305. package/typography/Typography.stories.tsx +198 -0
  306. package/typography/types.d.ts +18 -0
  307. package/typography/types.js +5 -0
  308. package/useTheme.d.ts +2 -0
  309. package/{dist/useTheme.js → useTheme.js} +3 -9
  310. package/useTranslatedLabels.d.ts +3 -0
  311. package/useTranslatedLabels.js +15 -0
  312. package/wizard/Wizard.d.ts +4 -0
  313. package/wizard/Wizard.js +251 -0
  314. package/wizard/Wizard.stories.tsx +253 -0
  315. package/wizard/Wizard.test.js +114 -0
  316. package/wizard/types.d.ts +65 -0
  317. package/wizard/types.js +5 -0
  318. package/README.md +0 -66
  319. package/babel.config.js +0 -8
  320. package/dist/BackgroundColorContext.js +0 -46
  321. package/dist/ThemeContext.js +0 -250
  322. package/dist/V3Select/V3Select.js +0 -549
  323. package/dist/V3Select/index.d.ts +0 -27
  324. package/dist/V3Textarea/V3Textarea.js +0 -264
  325. package/dist/V3Textarea/index.d.ts +0 -27
  326. package/dist/accordion/Accordion.js +0 -353
  327. package/dist/accordion/index.d.ts +0 -28
  328. package/dist/accordion-group/AccordionGroup.js +0 -186
  329. package/dist/accordion-group/index.d.ts +0 -16
  330. package/dist/alert/index.d.ts +0 -51
  331. package/dist/badge/Badge.js +0 -63
  332. package/dist/box/Box.js +0 -156
  333. package/dist/box/index.d.ts +0 -25
  334. package/dist/button/Button.js +0 -238
  335. package/dist/button/index.d.ts +0 -24
  336. package/dist/card/Card.js +0 -254
  337. package/dist/card/index.d.ts +0 -22
  338. package/dist/checkbox/Checkbox.js +0 -299
  339. package/dist/checkbox/index.d.ts +0 -24
  340. package/dist/chip/Chip.js +0 -265
  341. package/dist/chip/index.d.ts +0 -22
  342. package/dist/common/RequiredComponent.js +0 -40
  343. package/dist/date/Date.js +0 -379
  344. package/dist/date/index.d.ts +0 -27
  345. package/dist/date-input/DateInput.js +0 -400
  346. package/dist/date-input/index.d.ts +0 -95
  347. package/dist/dialog/Dialog.js +0 -218
  348. package/dist/dialog/index.d.ts +0 -18
  349. package/dist/dropdown/Dropdown.js +0 -544
  350. package/dist/dropdown/index.d.ts +0 -26
  351. package/dist/file-input/FileInput.js +0 -644
  352. package/dist/file-input/FileItem.js +0 -287
  353. package/dist/file-input/index.d.ts +0 -81
  354. package/dist/footer/Footer.js +0 -421
  355. package/dist/footer/index.d.ts +0 -25
  356. package/dist/header/Header.js +0 -470
  357. package/dist/header/index.d.ts +0 -25
  358. package/dist/heading/index.d.ts +0 -17
  359. package/dist/input-text/Icons.js +0 -22
  360. package/dist/input-text/InputText.js +0 -705
  361. package/dist/input-text/index.d.ts +0 -36
  362. package/dist/layout/ApplicationLayout.js +0 -327
  363. package/dist/link/Link.js +0 -237
  364. package/dist/link/index.d.ts +0 -23
  365. package/dist/main.d.ts +0 -40
  366. package/dist/number-input/NumberInput.js +0 -136
  367. package/dist/number-input/index.d.ts +0 -113
  368. package/dist/paginator/Icons.js +0 -66
  369. package/dist/paginator/Paginator.js +0 -283
  370. package/dist/paginator/index.d.ts +0 -20
  371. package/dist/password-input/PasswordInput.js +0 -203
  372. package/dist/password-input/index.d.ts +0 -94
  373. package/dist/progress-bar/ProgressBar.js +0 -242
  374. package/dist/progress-bar/index.d.ts +0 -18
  375. package/dist/radio/Radio.js +0 -209
  376. package/dist/radio/index.d.ts +0 -23
  377. package/dist/resultsetTable/ResultsetTable.js +0 -358
  378. package/dist/resultsetTable/index.d.ts +0 -19
  379. package/dist/select/Select.js +0 -1069
  380. package/dist/select/index.d.ts +0 -53
  381. package/dist/sidenav/Sidenav.js +0 -179
  382. package/dist/sidenav/index.d.ts +0 -13
  383. package/dist/slider/Slider.js +0 -404
  384. package/dist/slider/index.d.ts +0 -29
  385. package/dist/spinner/Spinner.js +0 -381
  386. package/dist/spinner/index.d.ts +0 -17
  387. package/dist/switch/Switch.js +0 -222
  388. package/dist/switch/index.d.ts +0 -24
  389. package/dist/table/index.d.ts +0 -13
  390. package/dist/tabs/Tabs.js +0 -343
  391. package/dist/tabs/index.d.ts +0 -19
  392. package/dist/tag/Tag.js +0 -282
  393. package/dist/tag/index.d.ts +0 -24
  394. package/dist/text-input/TextInput.js +0 -974
  395. package/dist/text-input/index.d.ts +0 -135
  396. package/dist/textarea/index.d.ts +0 -117
  397. package/dist/toggle/Toggle.js +0 -220
  398. package/dist/toggle/index.d.ts +0 -21
  399. package/dist/toggle-group/index.d.ts +0 -21
  400. package/dist/upload/Upload.js +0 -205
  401. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  402. package/dist/upload/buttons-upload/Icons.js +0 -40
  403. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  404. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  405. package/dist/upload/file-upload/FileToUpload.js +0 -189
  406. package/dist/upload/file-upload/Icons.js +0 -66
  407. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  408. package/dist/upload/index.d.ts +0 -15
  409. package/dist/upload/transaction/Icons.js +0 -160
  410. package/dist/upload/transaction/Transaction.js +0 -148
  411. package/dist/upload/transactions/Transactions.js +0 -138
  412. package/dist/wizard/Icons.js +0 -65
  413. package/dist/wizard/Wizard.js +0 -405
  414. package/dist/wizard/index.d.ts +0 -18
  415. package/test/Accordion.test.js +0 -33
  416. package/test/AccordionGroup.test.js +0 -125
  417. package/test/Alert.test.js +0 -53
  418. package/test/Box.test.js +0 -10
  419. package/test/Button.test.js +0 -18
  420. package/test/Card.test.js +0 -30
  421. package/test/Checkbox.test.js +0 -45
  422. package/test/Chip.test.js +0 -25
  423. package/test/Date.test.js +0 -395
  424. package/test/DateInput.test.js +0 -242
  425. package/test/Dialog.test.js +0 -23
  426. package/test/Dropdown.test.js +0 -145
  427. package/test/FileInput.test.js +0 -201
  428. package/test/Footer.test.js +0 -94
  429. package/test/Header.test.js +0 -34
  430. package/test/Heading.test.js +0 -83
  431. package/test/InputText.test.js +0 -240
  432. package/test/Link.test.js +0 -43
  433. package/test/NumberInput.test.js +0 -259
  434. package/test/Paginator.test.js +0 -177
  435. package/test/PasswordInput.test.js +0 -83
  436. package/test/ProgressBar.test.js +0 -35
  437. package/test/Radio.test.js +0 -37
  438. package/test/ResultsetTable.test.js +0 -329
  439. package/test/Sidenav.test.js +0 -45
  440. package/test/Slider.test.js +0 -74
  441. package/test/Spinner.test.js +0 -32
  442. package/test/Switch.test.js +0 -45
  443. package/test/Table.test.js +0 -36
  444. package/test/Tabs.test.js +0 -109
  445. package/test/Tag.test.js +0 -32
  446. package/test/TextInput.test.js +0 -732
  447. package/test/Textarea.test.js +0 -193
  448. package/test/ToggleGroup.test.js +0 -85
  449. package/test/Upload.test.js +0 -60
  450. package/test/V3Select.test.js +0 -212
  451. package/test/V3TextArea.test.js +0 -51
  452. package/test/Wizard.test.js +0 -130
  453. package/test/mocks/pngMock.js +0 -1
  454. package/test/mocks/svgMock.js +0 -1
  455. /package/{dist/common → common}/OpenSans.css +0 -0
  456. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  457. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  458. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  459. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  460. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  461. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  462. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  463. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  464. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  465. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -0,0 +1,197 @@
1
+ /// <reference types="react" />
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
10
+ type Action = {
11
+ /**
12
+ * This function will be called when the user clicks the action.
13
+ */
14
+ onClick: () => void;
15
+ /**
16
+ * Icon to be shown in the action.
17
+ */
18
+ icon: string | SVG;
19
+ /**
20
+ * Title of the action.
21
+ */
22
+ title?: string;
23
+ };
24
+ type Props = {
25
+ /**
26
+ * Text to be placed above the input. This label will be used as the aria-label attribute of the list of suggestions.
27
+ */
28
+ label?: string;
29
+ /**
30
+ * Name attribute of the input element.
31
+ */
32
+ name?: string;
33
+ /**
34
+ * Initial value of the input, only when it is uncontrolled.
35
+ */
36
+ defaultValue?: string;
37
+ /**
38
+ * Value of the input. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
39
+ */
40
+ value?: string;
41
+ /**
42
+ * Helper text to be placed above the input.
43
+ */
44
+ helperText?: string;
45
+ /**
46
+ * Text to be put as placeholder of the input.
47
+ */
48
+ placeholder?: string;
49
+ /**
50
+ * Action to be shown in the input. This is an object composed of an onClick function and an icon,
51
+ * being the latter either an inline svg or a URL to the image.
52
+ */
53
+ action?: Action;
54
+ /**
55
+ * If true, the input will have an action to clear the entered value.
56
+ */
57
+ clearable?: boolean;
58
+ /**
59
+ * If true, the component will be disabled.
60
+ */
61
+ disabled?: boolean;
62
+ /**
63
+ * If true, the input will be optional, showing '(Optional)'
64
+ * next to the label. Otherwise, the field will be considered required and an error will be
65
+ * passed as a parameter to the OnBlur and onChange functions when it has
66
+ * not been filled.
67
+ */
68
+ optional?: boolean;
69
+ /**
70
+ * Prefix to be placed before the input value.
71
+ */
72
+ prefix?: string;
73
+ /**
74
+ * Suffix to be placed after the input value.
75
+ */
76
+ suffix?: string;
77
+ /**
78
+ * This function will be called when the user types within the input
79
+ * element of the component. An object including the current value and
80
+ * the error (if the value entered is not valid) will be passed to this
81
+ * function. If there is no error, error will not be defined.
82
+ */
83
+ onChange?: (val: {
84
+ value: string;
85
+ error?: string;
86
+ }) => void;
87
+ /**
88
+ * This function will be called when the input element loses the focus.
89
+ * An object including the input value and the error (if the value
90
+ * entered is not valid) will be passed to this function. If there is no error,
91
+ * error will not be defined.
92
+ */
93
+ onBlur?: (val: {
94
+ value: string;
95
+ error?: string;
96
+ }) => void;
97
+ /**
98
+ * If it is a defined value and also a truthy string, the component will
99
+ * change its appearance, showing the error below the input component. If
100
+ * the defined value is an empty string, it will reserve a space below
101
+ * the component for a future error, but it would not change its look. In
102
+ * case of being undefined or null, both the appearance and the space for
103
+ * the error message would not be modified.
104
+ */
105
+ error?: string;
106
+ /**
107
+ * These are the options to be displayed as suggestions. It can be either an array or a function:
108
+ * - Array: Array of options that will be filtered by the component.
109
+ * - Function: This function will be called when the user changes the value, we will send as a parameter the new value;
110
+ * apart from that this function should return one promise on which we should make 'then' to get the suggestions filtered.
111
+ */
112
+ suggestions?: string[] | ((value: string) => Promise<string[]>);
113
+ /**
114
+ * Regular expression that defines the valid format allowed by the input.
115
+ * This will be checked both when the input element loses the focus and
116
+ * while typing within it. If the string entered does not match the
117
+ * pattern, the onBlur and onChange functions will be called with the
118
+ * current value and an internal error informing that this value does not
119
+ * match the pattern. If the pattern is met, the error parameter of both
120
+ * events will not be defined.
121
+ */
122
+ pattern?: string;
123
+ /**
124
+ * Specifies the minimun length allowed by the input.
125
+ * This will be checked both when the input element loses the
126
+ * focus and while typing within it. If the string entered does not
127
+ * comply the minimum length, the onBlur and onChange functions will be called
128
+ * with the current value and an internal error informing that the value
129
+ * length does not comply the specified range. If a valid length is
130
+ * reached, the error parameter of both events will not be defined.
131
+ */
132
+ minLength?: number;
133
+ /**
134
+ * Specifies the maximum length allowed by the input.
135
+ * This will be checked both when the input element loses the
136
+ * focus and while typing within it. If the string entered does not
137
+ * comply the maximum length, the onBlur and onChange functions will be called
138
+ * with the current value and an internal error informing that the value
139
+ * length does not comply the specified range. If a valid length is
140
+ * reached, the error parameter of both events will not be defined.
141
+ */
142
+ maxLength?: number;
143
+ /**
144
+ * HTML autocomplete attribute. Lets the user specify if any permission the user agent has to provide automated assistance in filling out the input value.
145
+ * Its value must be one of all the possible values of the HTML autocomplete attribute: 'on', 'off', 'email', 'username', 'new-password', ...
146
+ */
147
+ autocomplete?: string;
148
+ /**
149
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
150
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
151
+ */
152
+ margin?: Space | Margin;
153
+ /**
154
+ * Size of the component.
155
+ */
156
+ size?: "small" | "medium" | "large" | "fillParent";
157
+ /**
158
+ * Value of the tabindex attribute.
159
+ */
160
+ tabIndex?: number;
161
+ };
162
+ /**
163
+ * List of suggestions of an Text Input component.
164
+ */
165
+ export type SuggestionsProps = {
166
+ id: string;
167
+ value: string;
168
+ suggestions: string[];
169
+ visualFocusIndex: number;
170
+ highlightedSuggestions: boolean;
171
+ searchHasErrors: boolean;
172
+ isSearching: boolean;
173
+ suggestionOnClick: (suggestion: string) => void;
174
+ getTextInputWidth: () => number;
175
+ };
176
+ /**
177
+ * Reference to the component.
178
+ */
179
+ export type RefType = HTMLDivElement;
180
+ /**
181
+ * Single suggestion of an Text Input component.
182
+ */
183
+ export type SuggestionProps = {
184
+ id: string;
185
+ value: string;
186
+ onClick: (suggestion: string) => void;
187
+ suggestion: string;
188
+ isLast: boolean;
189
+ visuallyFocused: boolean;
190
+ highlighted: boolean;
191
+ };
192
+ export type AutosuggestWrapperProps = {
193
+ condition: boolean;
194
+ wrapper: (children: React.ReactNode) => JSX.Element;
195
+ children: React.ReactNode;
196
+ };
197
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import TextareaPropsType from "./types";
3
+ declare const DxcTextarea: React.ForwardRefExoticComponent<TextareaPropsType & React.RefAttributes<HTMLDivElement>>;
4
+ export default DxcTextarea;
@@ -1,205 +1,109 @@
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
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
16
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
12
  var _react = _interopRequireWildcard(require("react"));
21
-
22
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
-
24
14
  var _utils = require("../common/utils.js");
25
-
26
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
-
28
- var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _variables = require("../common/variables.js");
31
-
15
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
16
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
17
+ var _variables = require("../common/variables");
32
18
  var _uuid = require("uuid");
33
-
34
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
35
-
36
- function _templateObject6() {
37
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: 0.75rem;\n font-weight: 400;\n min-height: 1.5em;\n line-height: 1.5em;\n"]);
38
-
39
- _templateObject6 = function _templateObject6() {
40
- return data;
41
- };
42
-
43
- return data;
44
- }
45
-
46
- function _templateObject5() {
47
- var data = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n ", "\n\n margin: calc(1rem * 0.25) 0;\n padding: calc(1rem * 0.5) calc(1rem * 1);\n box-shadow: 0 0 0 2px transparent;\n border-radius: calc(1rem * 0.25);\n border: 1px solid\n ", ";\n ", "\n\n ", ";\n ", ";\n\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n\n ::placeholder {\n color: ", ";\n }\n"]);
48
-
49
- _templateObject5 = function _templateObject5() {
50
- return data;
51
- };
52
-
53
- return data;
54
- }
55
-
56
- function _templateObject4() {
57
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
58
-
59
- _templateObject4 = function _templateObject4() {
60
- return data;
61
- };
62
-
63
- return data;
64
- }
65
-
66
- function _templateObject3() {
67
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"]);
68
-
69
- _templateObject3 = function _templateObject3() {
70
- return data;
71
- };
72
-
73
- return data;
74
- }
75
-
76
- function _templateObject2() {
77
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
78
-
79
- _templateObject2 = function _templateObject2() {
80
- return data;
81
- };
82
-
83
- return data;
84
- }
85
-
86
- function _templateObject() {
87
- 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"]);
88
-
89
- _templateObject = function _templateObject() {
90
- return data;
91
- };
92
-
93
- return data;
94
- }
95
-
96
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
97
- return "This field is required. Please, enter a value.";
98
- };
99
-
100
- var getLengthErrorMessage = function getLengthErrorMessage(length) {
101
- return "Min length ".concat(length.min, ", max length ").concat(length.max, ".");
102
- };
103
-
104
- var getPatternErrorMessage = function getPatternErrorMessage() {
105
- return "Please match the format requested.";
106
- };
107
-
19
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
20
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
21
+ 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); }
22
+ 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; }
108
23
  var patternMatch = function patternMatch(pattern, value) {
109
24
  return new RegExp(pattern).test(value);
110
25
  };
111
-
112
- var DxcTextarea = _react["default"].forwardRef(function (_ref, ref) {
113
- var _ref$label = _ref.label,
114
- label = _ref$label === void 0 ? "" : _ref$label,
115
- _ref$name = _ref.name,
116
- name = _ref$name === void 0 ? "" : _ref$name,
117
- value = _ref.value,
118
- _ref$helperText = _ref.helperText,
119
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
120
- _ref$placeholder = _ref.placeholder,
121
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
122
- _ref$disabled = _ref.disabled,
123
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
124
- _ref$optional = _ref.optional,
125
- optional = _ref$optional === void 0 ? false : _ref$optional,
126
- _ref$verticalGrow = _ref.verticalGrow,
127
- verticalGrow = _ref$verticalGrow === void 0 ? "auto" : _ref$verticalGrow,
128
- _ref$rows = _ref.rows,
129
- rows = _ref$rows === void 0 ? 4 : _ref$rows,
130
- onChange = _ref.onChange,
131
- onBlur = _ref.onBlur,
132
- _ref$error = _ref.error,
133
- error = _ref$error === void 0 ? "" : _ref$error,
134
- pattern = _ref.pattern,
135
- length = _ref.length,
136
- _ref$autocomplete = _ref.autocomplete,
137
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
138
- margin = _ref.margin,
139
- _ref$size = _ref.size,
140
- size = _ref$size === void 0 ? "medium" : _ref$size,
141
- _ref$tabIndex = _ref.tabIndex,
142
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
143
-
144
- var _useState = (0, _react.useState)(""),
145
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
146
- innerValue = _useState2[0],
147
- setInnerValue = _useState2[1];
148
-
26
+ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
27
+ var label = _ref.label,
28
+ _ref$name = _ref.name,
29
+ name = _ref$name === void 0 ? "" : _ref$name,
30
+ _ref$defaultValue = _ref.defaultValue,
31
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
32
+ value = _ref.value,
33
+ helperText = _ref.helperText,
34
+ _ref$placeholder = _ref.placeholder,
35
+ placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
36
+ _ref$disabled = _ref.disabled,
37
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
38
+ _ref$optional = _ref.optional,
39
+ optional = _ref$optional === void 0 ? false : _ref$optional,
40
+ _ref$verticalGrow = _ref.verticalGrow,
41
+ verticalGrow = _ref$verticalGrow === void 0 ? "auto" : _ref$verticalGrow,
42
+ _ref$rows = _ref.rows,
43
+ rows = _ref$rows === void 0 ? 4 : _ref$rows,
44
+ onChange = _ref.onChange,
45
+ onBlur = _ref.onBlur,
46
+ error = _ref.error,
47
+ pattern = _ref.pattern,
48
+ minLength = _ref.minLength,
49
+ maxLength = _ref.maxLength,
50
+ _ref$autocomplete = _ref.autocomplete,
51
+ autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
52
+ margin = _ref.margin,
53
+ _ref$size = _ref.size,
54
+ size = _ref$size === void 0 ? "medium" : _ref$size,
55
+ _ref$tabIndex = _ref.tabIndex,
56
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
57
+ var _useState = (0, _react.useState)(defaultValue),
58
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
59
+ innerValue = _useState2[0],
60
+ setInnerValue = _useState2[1];
149
61
  var _useState3 = (0, _react.useState)("textarea-".concat((0, _uuid.v4)())),
150
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
151
- textareaId = _useState4[0];
152
-
62
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
63
+ textareaId = _useState4[0];
153
64
  var colorsTheme = (0, _useTheme["default"])();
154
65
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
66
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
155
67
  var textareaRef = (0, _react.useRef)(null);
156
- var errorId = "error-message-".concat(textareaId);
157
-
68
+ var errorId = "error-".concat(textareaId);
158
69
  var isNotOptional = function isNotOptional(value) {
159
70
  return value === "" && !optional;
160
71
  };
161
-
162
72
  var isLengthIncorrect = function isLengthIncorrect(value) {
163
- return value !== "" && length && length.min && length.max && (value.length < length.min || value.length > length.max);
73
+ return value !== "" && minLength && maxLength && (value.length < minLength || value.length > maxLength);
164
74
  };
165
-
166
75
  var changeValue = function changeValue(newValue) {
167
76
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
168
77
  if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
169
78
  value: newValue,
170
- error: getNotOptionalErrorMessage()
79
+ error: translatedLabels.formFields.requiredValueErrorMessage
171
80
  });else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
172
81
  value: newValue,
173
- error: getLengthErrorMessage(length)
82
+ error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
174
83
  });else if (newValue && pattern && !patternMatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
175
84
  value: newValue,
176
- error: getPatternErrorMessage()
85
+ error: translatedLabels.formFields.formatRequestedErrorMessage
177
86
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
178
- value: newValue,
179
- error: null
87
+ value: newValue
180
88
  });
181
89
  };
182
-
183
90
  var handleTOnBlur = function handleTOnBlur(event) {
184
91
  if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
185
92
  value: event.target.value,
186
- error: getNotOptionalErrorMessage()
93
+ error: translatedLabels.formFields.requiredValueErrorMessage
187
94
  });else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
188
95
  value: event.target.value,
189
- error: getLengthErrorMessage(length)
96
+ error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
190
97
  });else if (event.target.value && pattern && !patternMatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
191
98
  value: event.target.value,
192
- error: getPatternErrorMessage()
99
+ error: translatedLabels.formFields.formatRequestedErrorMessage
193
100
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
194
- value: event.target.value,
195
- error: null
101
+ value: event.target.value
196
102
  });
197
103
  };
198
-
199
104
  var handleTOnChange = function handleTOnChange(event) {
200
105
  changeValue(event.target.value);
201
106
  };
202
-
203
107
  (0, _react.useLayoutEffect)(function () {
204
108
  if (verticalGrow === "auto") {
205
109
  var textareaLineHeight = parseInt(window.getComputedStyle(textareaRef.current)["line-height"]);
@@ -209,20 +113,21 @@ var DxcTextarea = _react["default"].forwardRef(function (_ref, ref) {
209
113
  textareaRef.current.style.height = "".concat(newHeight, "px");
210
114
  }
211
115
  }, [value, verticalGrow, rows, innerValue]);
212
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
213
- theme: colorsTheme.textarea
214
- }, _react["default"].createElement(TextareaContainer, {
116
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
117
+ theme: colorsTheme["textarea"]
118
+ }, /*#__PURE__*/_react["default"].createElement(TextareaContainer, {
215
119
  margin: margin,
216
120
  size: size,
217
121
  ref: ref
218
- }, _react["default"].createElement(Label, {
122
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
219
123
  htmlFor: textareaId,
220
124
  disabled: disabled,
221
- backgroundType: backgroundType
222
- }, label, " ", optional && _react["default"].createElement(OptionalLabel, null, "(Optional)")), _react["default"].createElement(HelperText, {
125
+ backgroundType: backgroundType,
126
+ helperText: helperText
127
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
223
128
  disabled: disabled,
224
129
  backgroundType: backgroundType
225
- }, helperText), _react["default"].createElement(Textarea, {
130
+ }, helperText), /*#__PURE__*/_react["default"].createElement(Textarea, {
226
131
  id: textareaId,
227
132
  name: name,
228
133
  value: value !== null && value !== void 0 ? value : innerValue,
@@ -233,33 +138,32 @@ var DxcTextarea = _react["default"].forwardRef(function (_ref, ref) {
233
138
  onBlur: handleTOnBlur,
234
139
  disabled: disabled,
235
140
  error: error,
236
- minLength: length === null || length === void 0 ? void 0 : length.min,
237
- maxLength: length === null || length === void 0 ? void 0 : length.max,
141
+ minLength: minLength,
142
+ maxLength: maxLength,
238
143
  autoComplete: autocomplete,
239
144
  backgroundType: backgroundType,
240
145
  ref: textareaRef,
241
146
  tabIndex: tabIndex,
147
+ "aria-disabled": disabled,
242
148
  "aria-invalid": error ? "true" : "false",
243
- "aria-describedby": error ? errorId : undefined,
149
+ "aria-errormessage": error ? errorId : undefined,
244
150
  "aria-required": optional ? "false" : "true"
245
- }), !disabled && _react["default"].createElement(Error, {
151
+ }), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
246
152
  id: errorId,
247
- backgroundType: backgroundType
153
+ backgroundType: backgroundType,
154
+ "aria-live": error ? "assertive" : "off"
248
155
  }, error)));
249
156
  });
250
-
251
157
  var sizes = {
252
158
  small: "240px",
253
159
  medium: "360px",
254
160
  large: "480px",
255
161
  fillParent: "100%"
256
162
  };
257
-
258
163
  var calculateWidth = function calculateWidth(margin, size) {
259
164
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
260
165
  };
261
-
262
- var TextareaContainer = _styledComponents["default"].div(_templateObject(), function (props) {
166
+ var TextareaContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (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"])), function (props) {
263
167
  return calculateWidth(props.margin, props.size);
264
168
  }, function (props) {
265
169
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -272,8 +176,7 @@ var TextareaContainer = _styledComponents["default"].div(_templateObject(), func
272
176
  }, function (props) {
273
177
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
274
178
  });
275
-
276
- var Label = _styledComponents["default"].label(_templateObject2(), function (props) {
179
+ 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) {
277
180
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
278
181
  }, function (props) {
279
182
  return props.theme.fontFamily;
@@ -285,13 +188,13 @@ var Label = _styledComponents["default"].label(_templateObject2(), function (pro
285
188
  return props.theme.labelFontWeight;
286
189
  }, function (props) {
287
190
  return props.theme.labelLineHeight;
191
+ }, function (props) {
192
+ return !props.helperText && "margin-bottom: 0.25rem";
288
193
  });
289
-
290
- var OptionalLabel = _styledComponents["default"].span(_templateObject3(), function (props) {
194
+ var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
291
195
  return props.theme.optionalLabelFontWeight;
292
196
  });
293
-
294
- var HelperText = _styledComponents["default"].span(_templateObject4(), function (props) {
197
+ 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) {
295
198
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
296
199
  }, function (props) {
297
200
  return props.theme.fontFamily;
@@ -304,8 +207,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4(), function
304
207
  }, function (props) {
305
208
  return props.theme.helperTextLineHeight;
306
209
  });
307
-
308
- var Textarea = _styledComponents["default"].textarea(_templateObject5(), function (props) {
210
+ var Textarea = _styledComponents["default"].textarea(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n ", "\n\n padding: 0.5rem 1rem;\n box-shadow: 0 0 0 2px transparent;\n border-radius: 0.25rem;\n border: 1px solid\n ", ";\n ", "\n\n ", ";\n ", ";\n\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n\n ::placeholder {\n color: ", ";\n }\n"])), function (props) {
309
211
  if (props.verticalGrow === "none") return "resize: none;";else if (props.verticalGrow === "auto") return "resize: none; overflow: hidden;";else if (props.verticalGrow === "manual") return "resize: vertical;";else return "resize: none;";
310
212
  }, function (props) {
311
213
  if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");else return "background-color: transparent;";
@@ -330,40 +232,10 @@ var Textarea = _styledComponents["default"].textarea(_templateObject5(), functio
330
232
  }, function (props) {
331
233
  return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledPlaceholderFontColorOnDark : props.theme.disabledPlaceholderFontColor : props.backgroundType === "dark" ? props.theme.placeholderFontColorOnDark : props.theme.placeholderFontColor;
332
234
  });
333
-
334
- var Error = _styledComponents["default"].span(_templateObject6(), function (props) {
235
+ var Error = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: 0.75rem;\n font-weight: 400;\n min-height: 1.5em;\n line-height: 1.5em;\n margin-top: 0.25rem;\n"])), function (props) {
335
236
  return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
336
237
  }, function (props) {
337
238
  return props.theme.fontFamily;
338
239
  });
339
-
340
- DxcTextarea.propTypes = {
341
- label: _propTypes["default"].string,
342
- name: _propTypes["default"].string,
343
- value: _propTypes["default"].string,
344
- helperText: _propTypes["default"].string,
345
- placeholder: _propTypes["default"].string,
346
- verticalGrow: _propTypes["default"].oneOf(["auto", "none", "manual"]),
347
- rows: _propTypes["default"].number,
348
- length: _propTypes["default"].shape({
349
- min: _propTypes["default"].number,
350
- max: _propTypes["default"].number
351
- }),
352
- pattern: _propTypes["default"].string,
353
- disabled: _propTypes["default"].bool,
354
- optional: _propTypes["default"].bool,
355
- onChange: _propTypes["default"].func,
356
- onBlur: _propTypes["default"].func,
357
- error: _propTypes["default"].string,
358
- autocomplete: _propTypes["default"].string,
359
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
360
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
361
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
362
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
363
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
364
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
365
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
366
- tabIndex: _propTypes["default"].number
367
- };
368
240
  var _default = DxcTextarea;
369
241
  exports["default"] = _default;