@dxc-technology/halstack-react 0.0.0-5a1e592 → 0.0.0-5b15506

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 (328) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +4 -21
  3. package/HalstackContext.d.ts +32 -139
  4. package/HalstackContext.js +10 -35
  5. package/accordion/Accordion.accessibility.test.js +71 -0
  6. package/accordion/Accordion.js +33 -84
  7. package/accordion/Accordion.stories.tsx +5 -51
  8. package/accordion/Accordion.test.js +18 -33
  9. package/accordion/types.d.ts +6 -6
  10. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  11. package/accordion-group/AccordionGroup.d.ts +2 -3
  12. package/accordion-group/AccordionGroup.js +17 -44
  13. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  14. package/accordion-group/AccordionGroup.test.js +42 -60
  15. package/accordion-group/AccordionGroupAccordion.js +11 -23
  16. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  17. package/accordion-group/AccordionGroupContext.js +8 -0
  18. package/accordion-group/types.d.ts +7 -7
  19. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  20. package/action-icon/ActionIcon.d.ts +4 -0
  21. package/action-icon/ActionIcon.js +48 -0
  22. package/action-icon/ActionIcon.stories.tsx +41 -0
  23. package/action-icon/ActionIcon.test.js +64 -0
  24. package/action-icon/types.d.ts +26 -0
  25. package/alert/Alert.accessibility.test.js +95 -0
  26. package/alert/Alert.js +29 -118
  27. package/alert/Alert.test.js +28 -45
  28. package/alert/types.d.ts +5 -5
  29. package/badge/Badge.accessibility.test.js +129 -0
  30. package/badge/Badge.d.ts +1 -1
  31. package/badge/Badge.js +142 -42
  32. package/badge/Badge.stories.tsx +210 -0
  33. package/badge/Badge.test.js +30 -0
  34. package/badge/types.d.ts +52 -3
  35. package/bleed/Bleed.js +13 -21
  36. package/bleed/types.d.ts +2 -2
  37. package/box/Box.accessibility.test.js +33 -0
  38. package/box/Box.js +11 -33
  39. package/box/Box.test.js +1 -6
  40. package/box/types.d.ts +3 -3
  41. package/bulleted-list/BulletedList.accessibility.test.js +107 -0
  42. package/bulleted-list/BulletedList.js +22 -55
  43. package/bulleted-list/BulletedList.stories.tsx +2 -93
  44. package/bulleted-list/types.d.ts +5 -5
  45. package/button/Button.accessibility.test.js +127 -0
  46. package/button/Button.js +36 -59
  47. package/button/Button.stories.tsx +33 -133
  48. package/button/Button.test.js +13 -21
  49. package/button/types.d.ts +5 -5
  50. package/card/Card.accessibility.test.js +36 -0
  51. package/card/Card.js +21 -44
  52. package/card/Card.test.js +10 -21
  53. package/card/types.d.ts +5 -5
  54. package/checkbox/Checkbox.accessibility.test.js +87 -0
  55. package/checkbox/Checkbox.js +55 -109
  56. package/checkbox/Checkbox.stories.tsx +0 -54
  57. package/checkbox/Checkbox.test.js +79 -108
  58. package/checkbox/types.d.ts +4 -4
  59. package/chip/Chip.accessibility.test.js +67 -0
  60. package/chip/Chip.js +20 -36
  61. package/chip/Chip.stories.tsx +5 -24
  62. package/chip/Chip.test.js +17 -30
  63. package/chip/types.d.ts +4 -4
  64. package/common/coreTokens.d.ts +105 -14
  65. package/common/coreTokens.js +40 -23
  66. package/common/utils.js +2 -8
  67. package/common/variables.d.ts +32 -136
  68. package/common/variables.js +43 -154
  69. package/container/Container.d.ts +4 -0
  70. package/container/Container.js +194 -0
  71. package/container/Container.stories.tsx +214 -0
  72. package/container/types.d.ts +74 -0
  73. package/container/types.js +5 -0
  74. package/contextual-menu/ContextualMenu.accessibility.test.js +86 -0
  75. package/contextual-menu/ContextualMenu.d.ts +7 -0
  76. package/contextual-menu/ContextualMenu.js +71 -0
  77. package/contextual-menu/ContextualMenu.stories.tsx +182 -0
  78. package/contextual-menu/ContextualMenu.test.js +71 -0
  79. package/contextual-menu/MenuItemAction.d.ts +4 -0
  80. package/contextual-menu/MenuItemAction.js +46 -0
  81. package/contextual-menu/types.d.ts +22 -0
  82. package/contextual-menu/types.js +5 -0
  83. package/date-input/Calendar.js +13 -57
  84. package/date-input/DateInput.accessibility.test.js +216 -0
  85. package/date-input/DateInput.js +45 -94
  86. package/date-input/DateInput.stories.tsx +1 -30
  87. package/date-input/DateInput.test.js +667 -708
  88. package/date-input/DatePicker.js +23 -48
  89. package/date-input/YearPicker.js +8 -34
  90. package/date-input/types.d.ts +28 -26
  91. package/dialog/Dialog.accessibility.test.js +69 -0
  92. package/dialog/Dialog.js +13 -40
  93. package/dialog/Dialog.stories.tsx +170 -0
  94. package/dialog/Dialog.test.js +126 -188
  95. package/dialog/types.d.ts +18 -13
  96. package/divider/Divider.accessibility.test.js +33 -0
  97. package/divider/Divider.d.ts +4 -0
  98. package/divider/Divider.js +36 -0
  99. package/divider/Divider.stories.tsx +223 -0
  100. package/divider/Divider.test.js +38 -0
  101. package/divider/types.d.ts +21 -0
  102. package/divider/types.js +5 -0
  103. package/dropdown/Dropdown.accessibility.test.js +180 -0
  104. package/dropdown/Dropdown.js +59 -128
  105. package/dropdown/Dropdown.stories.tsx +5 -16
  106. package/dropdown/Dropdown.test.js +391 -378
  107. package/dropdown/DropdownMenu.js +8 -19
  108. package/dropdown/DropdownMenuItem.js +11 -20
  109. package/dropdown/types.d.ts +20 -24
  110. package/file-input/FileInput.accessibility.test.js +160 -0
  111. package/file-input/FileInput.js +180 -284
  112. package/file-input/FileInput.stories.tsx +1 -1
  113. package/file-input/FileInput.test.js +279 -354
  114. package/file-input/FileItem.js +25 -66
  115. package/file-input/types.d.ts +9 -9
  116. package/flex/Flex.js +25 -39
  117. package/flex/types.d.ts +6 -6
  118. package/footer/Footer.accessibility.test.js +117 -0
  119. package/footer/Footer.d.ts +1 -1
  120. package/footer/Footer.js +43 -68
  121. package/footer/Footer.stories.tsx +46 -2
  122. package/footer/Footer.test.js +18 -32
  123. package/footer/Icons.d.ts +3 -2
  124. package/footer/Icons.js +66 -7
  125. package/footer/types.d.ts +17 -17
  126. package/grid/Grid.js +1 -16
  127. package/grid/types.d.ts +10 -10
  128. package/header/Header.accessibility.test.js +84 -0
  129. package/header/Header.d.ts +1 -1
  130. package/header/Header.js +36 -103
  131. package/header/Header.test.js +12 -25
  132. package/header/Icons.d.ts +2 -2
  133. package/header/Icons.js +2 -7
  134. package/header/types.d.ts +7 -8
  135. package/heading/Heading.accessibility.test.js +33 -0
  136. package/heading/Heading.js +9 -31
  137. package/heading/Heading.test.js +70 -87
  138. package/heading/types.d.ts +7 -7
  139. package/icon/Icon.accessibility.test.js +30 -0
  140. package/icon/Icon.d.ts +4 -0
  141. package/icon/Icon.js +33 -0
  142. package/icon/Icon.stories.tsx +28 -0
  143. package/icon/types.d.ts +4 -0
  144. package/icon/types.js +5 -0
  145. package/image/Image.accessibility.test.js +56 -0
  146. package/image/Image.d.ts +2 -2
  147. package/image/Image.js +17 -32
  148. package/image/Image.stories.tsx +3 -1
  149. package/image/types.d.ts +2 -2
  150. package/inset/Inset.js +13 -21
  151. package/inset/types.d.ts +2 -2
  152. package/layout/ApplicationLayout.d.ts +2 -2
  153. package/layout/ApplicationLayout.js +15 -55
  154. package/layout/Icons.d.ts +5 -5
  155. package/layout/Icons.js +1 -7
  156. package/layout/types.d.ts +3 -3
  157. package/link/Link.accessibility.test.js +112 -0
  158. package/link/Link.js +28 -47
  159. package/link/Link.stories.tsx +2 -2
  160. package/link/Link.test.js +23 -41
  161. package/link/types.d.ts +14 -14
  162. package/main.d.ts +7 -4
  163. package/main.js +32 -60
  164. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  165. package/nav-tabs/NavTabs.d.ts +1 -2
  166. package/nav-tabs/NavTabs.js +19 -48
  167. package/nav-tabs/NavTabs.stories.tsx +30 -25
  168. package/nav-tabs/NavTabs.test.js +38 -45
  169. package/nav-tabs/NavTabsContext.d.ts +3 -0
  170. package/nav-tabs/NavTabsContext.js +8 -0
  171. package/nav-tabs/Tab.js +33 -62
  172. package/nav-tabs/types.d.ts +10 -10
  173. package/number-input/NumberInput.accessibility.test.js +228 -0
  174. package/number-input/NumberInput.d.ts +0 -7
  175. package/number-input/NumberInput.js +47 -39
  176. package/number-input/NumberInput.stories.tsx +42 -26
  177. package/number-input/NumberInput.test.js +839 -575
  178. package/number-input/NumberInputContext.d.ts +3 -0
  179. package/number-input/NumberInputContext.js +8 -0
  180. package/number-input/types.d.ts +17 -5
  181. package/package.json +39 -37
  182. package/paginator/Icons.d.ts +5 -5
  183. package/paginator/Icons.js +5 -19
  184. package/paginator/Paginator.accessibility.test.js +79 -0
  185. package/paginator/Paginator.js +15 -43
  186. package/paginator/Paginator.test.js +224 -207
  187. package/paginator/types.d.ts +3 -3
  188. package/paragraph/Paragraph.accessibility.test.js +28 -0
  189. package/paragraph/Paragraph.js +3 -19
  190. package/paragraph/Paragraph.stories.tsx +0 -17
  191. package/password-input/PasswordInput.accessibility.test.js +153 -0
  192. package/password-input/PasswordInput.js +27 -50
  193. package/password-input/PasswordInput.stories.tsx +1 -34
  194. package/password-input/PasswordInput.test.js +153 -129
  195. package/password-input/types.d.ts +8 -7
  196. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  197. package/progress-bar/ProgressBar.js +21 -53
  198. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
  199. package/progress-bar/ProgressBar.test.js +35 -52
  200. package/progress-bar/types.d.ts +3 -3
  201. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  202. package/quick-nav/QuickNav.js +4 -27
  203. package/quick-nav/QuickNav.stories.tsx +1 -1
  204. package/quick-nav/types.d.ts +10 -10
  205. package/radio-group/Radio.js +15 -47
  206. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  207. package/radio-group/RadioGroup.js +34 -80
  208. package/radio-group/RadioGroup.test.js +504 -497
  209. package/radio-group/types.d.ts +5 -5
  210. package/resultset-table/Icons.d.ts +7 -0
  211. package/{resultsetTable → resultset-table}/Icons.js +1 -5
  212. package/resultset-table/ResultsetTable.accessibility.test.js +274 -0
  213. package/resultset-table/ResultsetTable.d.ts +7 -0
  214. package/{resultsetTable → resultset-table}/ResultsetTable.js +44 -69
  215. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +106 -5
  216. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +148 -92
  217. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  218. package/resultset-table/types.js +5 -0
  219. package/select/Listbox.js +18 -42
  220. package/select/Option.js +26 -35
  221. package/select/Select.accessibility.test.js +217 -0
  222. package/select/Select.js +101 -169
  223. package/select/Select.stories.tsx +33 -97
  224. package/select/Select.test.js +1894 -1846
  225. package/select/types.d.ts +15 -16
  226. package/sidenav/Sidenav.accessibility.test.js +59 -0
  227. package/sidenav/Sidenav.js +44 -81
  228. package/sidenav/Sidenav.stories.tsx +4 -9
  229. package/sidenav/Sidenav.test.js +3 -10
  230. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  231. package/{layout → sidenav}/SidenavContext.js +3 -9
  232. package/sidenav/types.d.ts +20 -20
  233. package/slider/Slider.accessibility.test.js +104 -0
  234. package/slider/Slider.js +68 -125
  235. package/slider/Slider.test.js +107 -103
  236. package/slider/types.d.ts +4 -4
  237. package/spinner/Spinner.accessibility.test.js +96 -0
  238. package/spinner/Spinner.js +16 -54
  239. package/spinner/Spinner.test.js +25 -34
  240. package/spinner/types.d.ts +3 -3
  241. package/status-light/StatusLight.accessibility.test.js +157 -0
  242. package/status-light/StatusLight.d.ts +4 -0
  243. package/status-light/StatusLight.js +51 -0
  244. package/status-light/StatusLight.stories.tsx +74 -0
  245. package/status-light/StatusLight.test.js +25 -0
  246. package/status-light/types.d.ts +17 -0
  247. package/status-light/types.js +5 -0
  248. package/switch/Switch.accessibility.test.js +89 -0
  249. package/switch/Switch.js +49 -97
  250. package/switch/Switch.stories.tsx +0 -34
  251. package/switch/Switch.test.js +51 -96
  252. package/switch/types.d.ts +4 -4
  253. package/table/DropdownTheme.js +62 -0
  254. package/table/Table.accessibility.test.js +82 -0
  255. package/table/Table.d.ts +6 -2
  256. package/table/Table.js +76 -33
  257. package/table/{Table.stories.jsx → Table.stories.tsx} +297 -2
  258. package/table/Table.test.js +93 -6
  259. package/table/types.d.ts +34 -6
  260. package/tabs/Tab.js +22 -37
  261. package/tabs/Tabs.accessibility.test.js +56 -0
  262. package/tabs/Tabs.js +59 -147
  263. package/tabs/Tabs.stories.tsx +2 -4
  264. package/tabs/Tabs.test.js +57 -131
  265. package/tabs/types.d.ts +21 -21
  266. package/tag/Tag.accessibility.test.js +69 -0
  267. package/tag/Tag.js +27 -57
  268. package/tag/Tag.stories.tsx +4 -7
  269. package/tag/Tag.test.js +17 -36
  270. package/tag/types.d.ts +9 -9
  271. package/text-input/Suggestion.js +9 -26
  272. package/text-input/Suggestions.d.ts +1 -1
  273. package/text-input/Suggestions.js +19 -67
  274. package/text-input/TextInput.accessibility.test.js +321 -0
  275. package/text-input/TextInput.js +193 -285
  276. package/text-input/TextInput.stories.tsx +10 -153
  277. package/text-input/TextInput.test.js +1213 -1269
  278. package/text-input/types.d.ts +21 -17
  279. package/textarea/Textarea.accessibility.test.js +155 -0
  280. package/textarea/Textarea.js +49 -93
  281. package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -108
  282. package/textarea/Textarea.test.js +135 -208
  283. package/textarea/types.d.ts +5 -5
  284. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  285. package/toggle-group/ToggleGroup.js +25 -64
  286. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  287. package/toggle-group/ToggleGroup.test.js +48 -81
  288. package/toggle-group/types.d.ts +12 -12
  289. package/typography/Typography.accessibility.test.js +339 -0
  290. package/typography/Typography.js +4 -13
  291. package/typography/types.d.ts +1 -1
  292. package/useTheme.d.ts +29 -133
  293. package/useTheme.js +1 -8
  294. package/useTranslatedLabels.js +1 -7
  295. package/utils/BaseTypography.d.ts +2 -2
  296. package/utils/BaseTypography.js +16 -30
  297. package/utils/FocusLock.js +25 -39
  298. package/wizard/Wizard.accessibility.test.js +55 -0
  299. package/wizard/Wizard.js +27 -65
  300. package/wizard/Wizard.stories.tsx +19 -0
  301. package/wizard/Wizard.test.js +53 -80
  302. package/wizard/types.d.ts +8 -8
  303. package/common/OpenSans.css +0 -69
  304. package/common/fonts/OpenSans-Bold.ttf +0 -0
  305. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  306. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  307. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  308. package/common/fonts/OpenSans-Italic.ttf +0 -0
  309. package/common/fonts/OpenSans-Light.ttf +0 -0
  310. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  311. package/common/fonts/OpenSans-Regular.ttf +0 -0
  312. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  313. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  314. package/date-input/Icons.d.ts +0 -6
  315. package/date-input/Icons.js +0 -75
  316. package/password-input/Icons.d.ts +0 -6
  317. package/password-input/Icons.js +0 -39
  318. package/resultsetTable/Icons.d.ts +0 -7
  319. package/resultsetTable/ResultsetTable.d.ts +0 -4
  320. package/select/Icons.d.ts +0 -10
  321. package/select/Icons.js +0 -93
  322. package/sidenav/Icons.d.ts +0 -7
  323. package/sidenav/Icons.js +0 -51
  324. package/slider/Slider.stories.tsx +0 -240
  325. package/text-input/Icons.d.ts +0 -8
  326. package/text-input/Icons.js +0 -60
  327. /package/{resultsetTable → action-icon}/types.js +0 -0
  328. /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
@@ -1,27 +1,29 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Margin = {
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- declare type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
10
- declare type Action = {
9
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
10
+ type Action = {
11
11
  /**
12
12
  * This function will be called when the user clicks the action.
13
13
  */
14
14
  onClick: () => void;
15
15
  /**
16
- * Icon to be shown in the action.
16
+ * Icon to be placed in the action..
17
17
  */
18
18
  icon: string | SVG;
19
19
  /**
20
- * Title of the action.
20
+ * Text representing advisory information related
21
+ * to the button's action. Under the hood, this prop also serves
22
+ * as an accessible label for the component.
21
23
  */
22
24
  title?: string;
23
25
  };
24
- declare type Props = {
26
+ type Props = {
25
27
  /**
26
28
  * Text to be placed above the input. This label will be used as the aria-label attribute of the list of suggestions.
27
29
  */
@@ -47,8 +49,7 @@ declare type Props = {
47
49
  */
48
50
  placeholder?: string;
49
51
  /**
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
+ * Action to be shown in the input.
52
53
  */
53
54
  action?: Action;
54
55
  /**
@@ -61,6 +62,8 @@ declare type Props = {
61
62
  disabled?: boolean;
62
63
  /**
63
64
  * If true, the component will not be mutable, meaning the user can not edit the control.
65
+ * In addition, the clear action will not be displayed even if the flag is set to true
66
+ * and the custom action will not execute its onClick event.
64
67
  */
65
68
  readOnly?: boolean;
66
69
  /**
@@ -110,8 +113,9 @@ declare type Props = {
110
113
  /**
111
114
  * These are the options to be displayed as suggestions. It can be either an array or a function:
112
115
  * - Array: Array of options that will be filtered by the component.
113
- * - Function: This function will be called when the user changes the value, we will send as a parameter the new value;
114
- * apart from that this function should return one promise on which we should make 'then' to get the suggestions filtered.
116
+ * - Function: This function will be called when the user changes the value.
117
+ * It will receive the new value as a parameter and should return a promise
118
+ * that resolves to an array with the filtered options.
115
119
  */
116
120
  suggestions?: string[] | ((value: string) => Promise<string[]>);
117
121
  /**
@@ -125,7 +129,7 @@ declare type Props = {
125
129
  */
126
130
  pattern?: string;
127
131
  /**
128
- * Specifies the minimun length allowed by the input.
132
+ * Specifies the minimum length allowed by the input.
129
133
  * This will be checked both when the input element loses the
130
134
  * focus and while typing within it. If the string entered does not
131
135
  * comply the minimum length, the onBlur and onChange functions will be called
@@ -166,7 +170,7 @@ declare type Props = {
166
170
  /**
167
171
  * List of suggestions of an Text Input component.
168
172
  */
169
- export declare type SuggestionsProps = {
173
+ export type SuggestionsProps = {
170
174
  id: string;
171
175
  value: string;
172
176
  suggestions: string[];
@@ -175,16 +179,16 @@ export declare type SuggestionsProps = {
175
179
  searchHasErrors: boolean;
176
180
  isSearching: boolean;
177
181
  suggestionOnClick: (suggestion: string) => void;
178
- getTextInputWidth: () => number;
182
+ styles: React.CSSProperties;
179
183
  };
180
184
  /**
181
185
  * Reference to the component.
182
186
  */
183
- export declare type RefType = HTMLDivElement;
187
+ export type RefType = HTMLDivElement;
184
188
  /**
185
189
  * Single suggestion of an Text Input component.
186
190
  */
187
- export declare type SuggestionProps = {
191
+ export type SuggestionProps = {
188
192
  id: string;
189
193
  value: string;
190
194
  onClick: (suggestion: string) => void;
@@ -193,7 +197,7 @@ export declare type SuggestionProps = {
193
197
  visuallyFocused: boolean;
194
198
  highlighted: boolean;
195
199
  };
196
- export declare type AutosuggestWrapperProps = {
200
+ export type AutosuggestWrapperProps = {
197
201
  condition: boolean;
198
202
  wrapper: (children: React.ReactNode) => JSX.Element;
199
203
  children: React.ReactNode;
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _jestAxe = require("jest-axe");
9
+ var _Textarea = _interopRequireDefault(require("./Textarea.tsx"));
10
+ describe("Textarea component accessibility tests", function () {
11
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
12
+ var _render, container, results;
13
+ return _regenerator["default"].wrap(function _callee$(_context) {
14
+ while (1) switch (_context.prev = _context.next) {
15
+ case 0:
16
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
17
+ label: "Example label",
18
+ helperText: "Helper Text",
19
+ defaultValue: "Value",
20
+ margin: "medium",
21
+ placeholder: "Placeholder",
22
+ verticalGrow: "manual",
23
+ name: "Name",
24
+ autocomplete: "on",
25
+ minLength: 0,
26
+ maxLength: 100,
27
+ optional: true
28
+ })), container = _render.container;
29
+ _context.next = 3;
30
+ return (0, _jestAxe.axe)(container);
31
+ case 3:
32
+ results = _context.sent;
33
+ expect(results).toHaveNoViolations();
34
+ case 5:
35
+ case "end":
36
+ return _context.stop();
37
+ }
38
+ }, _callee);
39
+ })));
40
+ it("Should not have basic accessibility issues for pattern mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
41
+ var _render2, container, results;
42
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
43
+ while (1) switch (_context2.prev = _context2.next) {
44
+ case 0:
45
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
46
+ label: "Example label",
47
+ helperText: "Helper Text",
48
+ defaultValue: "Value",
49
+ margin: "medium",
50
+ placeholder: "Placeholder",
51
+ verticalGrow: "manual",
52
+ name: "Name",
53
+ autocomplete: "on",
54
+ minLength: 0,
55
+ maxLength: 100,
56
+ pattern: "^.*(?=.*[a-zA-Z])(?=.*)(?=.*[!&$%&? \"]).*$"
57
+ })), container = _render2.container;
58
+ _context2.next = 3;
59
+ return (0, _jestAxe.axe)(container);
60
+ case 3:
61
+ results = _context2.sent;
62
+ expect(results).toHaveNoViolations();
63
+ case 5:
64
+ case "end":
65
+ return _context2.stop();
66
+ }
67
+ }, _callee2);
68
+ })));
69
+ it("Should not have basic accessibility issues for error mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
70
+ var _render3, container, results;
71
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
72
+ while (1) switch (_context3.prev = _context3.next) {
73
+ case 0:
74
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
75
+ label: "Example label",
76
+ helperText: "Helper Text",
77
+ defaultValue: "Value",
78
+ margin: "medium",
79
+ placeholder: "Placeholder",
80
+ verticalGrow: "manual",
81
+ name: "Name",
82
+ error: "Error message.",
83
+ minLength: 0,
84
+ maxLength: 100
85
+ })), container = _render3.container;
86
+ _context3.next = 3;
87
+ return (0, _jestAxe.axe)(container);
88
+ case 3:
89
+ results = _context3.sent;
90
+ expect(results).toHaveNoViolations();
91
+ case 5:
92
+ case "end":
93
+ return _context3.stop();
94
+ }
95
+ }, _callee3);
96
+ })));
97
+ it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
98
+ var _render4, container, results;
99
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
100
+ while (1) switch (_context4.prev = _context4.next) {
101
+ case 0:
102
+ _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
103
+ label: "Example label",
104
+ helperText: "Helper Text",
105
+ defaultValue: "Value",
106
+ margin: "medium",
107
+ placeholder: "Placeholder",
108
+ verticalGrow: "manual",
109
+ name: "Name",
110
+ autocomplete: "on",
111
+ minLength: 0,
112
+ maxLength: 100,
113
+ disabled: true
114
+ })), container = _render4.container;
115
+ _context4.next = 3;
116
+ return (0, _jestAxe.axe)(container);
117
+ case 3:
118
+ results = _context4.sent;
119
+ expect(results).toHaveNoViolations();
120
+ case 5:
121
+ case "end":
122
+ return _context4.stop();
123
+ }
124
+ }, _callee4);
125
+ })));
126
+ it("Should not have basic accessibility issues for read-only mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
127
+ var _render5, container, results;
128
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
129
+ while (1) switch (_context5.prev = _context5.next) {
130
+ case 0:
131
+ _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
132
+ label: "Example label",
133
+ helperText: "Helper Text",
134
+ defaultValue: "Value",
135
+ margin: "medium",
136
+ placeholder: "Placeholder",
137
+ verticalGrow: "manual",
138
+ name: "Name",
139
+ autocomplete: "on",
140
+ minLength: 0,
141
+ maxLength: 100,
142
+ readOnly: true
143
+ })), container = _render5.container;
144
+ _context5.next = 3;
145
+ return (0, _jestAxe.axe)(container);
146
+ case 3:
147
+ results = _context5.sent;
148
+ expect(results).toHaveNoViolations();
149
+ case 5:
150
+ case "end":
151
+ return _context5.stop();
152
+ }
153
+ }, _callee5);
154
+ })));
155
+ });
@@ -1,103 +1,77 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
14
  var _utils = require("../common/utils");
23
-
24
15
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
-
26
16
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
27
-
28
17
  var _variables = require("../common/variables");
29
-
30
18
  var _uuid = require("uuid");
31
-
32
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
-
34
19
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
35
-
36
- 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); }
37
-
38
- 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; }
39
-
20
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
40
22
  var patternMatch = function patternMatch(pattern, value) {
41
23
  return new RegExp(pattern).test(value);
42
24
  };
43
-
44
25
  var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
45
26
  var label = _ref.label,
46
- _ref$name = _ref.name,
47
- name = _ref$name === void 0 ? "" : _ref$name,
48
- _ref$defaultValue = _ref.defaultValue,
49
- defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
50
- value = _ref.value,
51
- helperText = _ref.helperText,
52
- _ref$placeholder = _ref.placeholder,
53
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
54
- _ref$disabled = _ref.disabled,
55
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
56
- _ref$readOnly = _ref.readOnly,
57
- readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
58
- _ref$optional = _ref.optional,
59
- optional = _ref$optional === void 0 ? false : _ref$optional,
60
- _ref$verticalGrow = _ref.verticalGrow,
61
- verticalGrow = _ref$verticalGrow === void 0 ? "auto" : _ref$verticalGrow,
62
- _ref$rows = _ref.rows,
63
- rows = _ref$rows === void 0 ? 4 : _ref$rows,
64
- onChange = _ref.onChange,
65
- onBlur = _ref.onBlur,
66
- error = _ref.error,
67
- pattern = _ref.pattern,
68
- minLength = _ref.minLength,
69
- maxLength = _ref.maxLength,
70
- _ref$autocomplete = _ref.autocomplete,
71
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
72
- margin = _ref.margin,
73
- _ref$size = _ref.size,
74
- size = _ref$size === void 0 ? "medium" : _ref$size,
75
- _ref$tabIndex = _ref.tabIndex,
76
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
77
-
27
+ _ref$name = _ref.name,
28
+ name = _ref$name === void 0 ? "" : _ref$name,
29
+ _ref$defaultValue = _ref.defaultValue,
30
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
31
+ value = _ref.value,
32
+ helperText = _ref.helperText,
33
+ _ref$placeholder = _ref.placeholder,
34
+ placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
35
+ _ref$disabled = _ref.disabled,
36
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
37
+ _ref$readOnly = _ref.readOnly,
38
+ readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
39
+ _ref$optional = _ref.optional,
40
+ optional = _ref$optional === void 0 ? false : _ref$optional,
41
+ _ref$verticalGrow = _ref.verticalGrow,
42
+ verticalGrow = _ref$verticalGrow === void 0 ? "auto" : _ref$verticalGrow,
43
+ _ref$rows = _ref.rows,
44
+ rows = _ref$rows === void 0 ? 4 : _ref$rows,
45
+ onChange = _ref.onChange,
46
+ onBlur = _ref.onBlur,
47
+ error = _ref.error,
48
+ pattern = _ref.pattern,
49
+ minLength = _ref.minLength,
50
+ maxLength = _ref.maxLength,
51
+ _ref$autocomplete = _ref.autocomplete,
52
+ autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
53
+ margin = _ref.margin,
54
+ _ref$size = _ref.size,
55
+ size = _ref$size === void 0 ? "medium" : _ref$size,
56
+ _ref$tabIndex = _ref.tabIndex,
57
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
78
58
  var _useState = (0, _react.useState)(defaultValue),
79
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
80
- innerValue = _useState2[0],
81
- setInnerValue = _useState2[1];
82
-
59
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
60
+ innerValue = _useState2[0],
61
+ setInnerValue = _useState2[1];
83
62
  var _useState3 = (0, _react.useState)("textarea-".concat((0, _uuid.v4)())),
84
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
85
- textareaId = _useState4[0];
86
-
63
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
64
+ textareaId = _useState4[0];
87
65
  var colorsTheme = (0, _useTheme["default"])();
88
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
89
66
  var translatedLabels = (0, _useTranslatedLabels["default"])();
90
67
  var textareaRef = (0, _react.useRef)(null);
91
68
  var errorId = "error-".concat(textareaId);
92
-
93
69
  var isNotOptional = function isNotOptional(value) {
94
70
  return value === "" && !optional;
95
71
  };
96
-
97
72
  var isLengthIncorrect = function isLengthIncorrect(value) {
98
73
  return value !== "" && minLength && maxLength && (value.length < minLength || value.length > maxLength);
99
74
  };
100
-
101
75
  var changeValue = function changeValue(newValue) {
102
76
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
103
77
  if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
@@ -113,7 +87,6 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
113
87
  value: newValue
114
88
  });
115
89
  };
116
-
117
90
  var autoVerticalGrow = function autoVerticalGrow() {
118
91
  var textareaLineHeight = parseInt(window.getComputedStyle(textareaRef.current)["line-height"]);
119
92
  var textareaPaddingTopBottom = parseInt(window.getComputedStyle(textareaRef.current)["padding-top"]) * 2;
@@ -121,7 +94,6 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
121
94
  var newHeight = textareaRef.current.scrollHeight - textareaPaddingTopBottom;
122
95
  textareaRef.current.style.height = "".concat(newHeight, "px");
123
96
  };
124
-
125
97
  var handleOnBlur = function handleOnBlur(event) {
126
98
  if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
127
99
  value: event.target.value,
@@ -136,12 +108,10 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
136
108
  value: event.target.value
137
109
  });
138
110
  };
139
-
140
111
  var handleOnChange = function handleOnChange(event) {
141
112
  changeValue(event.target.value);
142
113
  verticalGrow === "auto" && autoVerticalGrow();
143
114
  };
144
-
145
115
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
146
116
  theme: colorsTheme.textarea
147
117
  }, /*#__PURE__*/_react["default"].createElement(TextareaContainer, {
@@ -151,11 +121,9 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
151
121
  }, label && /*#__PURE__*/_react["default"].createElement(Label, {
152
122
  htmlFor: textareaId,
153
123
  disabled: disabled,
154
- backgroundType: backgroundType,
155
124
  helperText: helperText
156
125
  }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
157
- disabled: disabled,
158
- backgroundType: backgroundType
126
+ disabled: disabled
159
127
  }, helperText), /*#__PURE__*/_react["default"].createElement(Textarea, {
160
128
  id: textareaId,
161
129
  name: name,
@@ -171,7 +139,6 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
171
139
  minLength: minLength,
172
140
  maxLength: maxLength,
173
141
  autoComplete: autocomplete,
174
- backgroundType: backgroundType,
175
142
  ref: textareaRef,
176
143
  tabIndex: tabIndex,
177
144
  "aria-invalid": error ? true : false,
@@ -179,22 +146,18 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
179
146
  "aria-required": !disabled && !optional
180
147
  }), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
181
148
  id: errorId,
182
- backgroundType: backgroundType,
183
149
  "aria-live": error ? "assertive" : "off"
184
150
  }, error)));
185
151
  });
186
-
187
152
  var sizes = {
188
153
  small: "240px",
189
154
  medium: "360px",
190
155
  large: "480px",
191
156
  fillParent: "100%"
192
157
  };
193
-
194
158
  var calculateWidth = function calculateWidth(margin, size) {
195
159
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
196
160
  };
197
-
198
161
  var TextareaContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
199
162
  return calculateWidth(props.margin, props.size);
200
163
  }, function (props) {
@@ -208,9 +171,8 @@ var TextareaContainer = _styledComponents["default"].div(_templateObject || (_te
208
171
  }, function (props) {
209
172
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
210
173
  });
211
-
212
174
  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) {
213
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
175
+ return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
214
176
  }, function (props) {
215
177
  return props.theme.fontFamily;
216
178
  }, function (props) {
@@ -224,13 +186,11 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
224
186
  }, function (props) {
225
187
  return !props.helperText && "margin-bottom: 0.25rem";
226
188
  });
227
-
228
189
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
229
190
  return props.theme.optionalLabelFontWeight;
230
191
  });
231
-
232
192
  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) {
233
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
193
+ return props.disabled ? props.theme.disabledHelperTextFontColor : props.theme.helperTextFontColor;
234
194
  }, function (props) {
235
195
  return props.theme.fontFamily;
236
196
  }, function (props) {
@@ -242,20 +202,19 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
242
202
  }, function (props) {
243
203
  return props.theme.helperTextLineHeight;
244
204
  });
245
-
246
205
  var Textarea = _styledComponents["default"].textarea(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\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 (_ref2) {
247
206
  var verticalGrow = _ref2.verticalGrow;
248
207
  if (verticalGrow === "none") return "resize: none;";else if (verticalGrow === "auto") return "resize: none; overflow: hidden;";else if (verticalGrow === "manual") return "resize: vertical;";else return "resize: none;";
249
208
  }, function (props) {
250
- if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");else return "background-color: transparent;";
209
+ return props.disabled ? "background-color: ".concat(props.theme.disabledContainerFillColor, ";") : "background-color: transparent;";
251
210
  }, function (props) {
252
- if (props.disabled) return props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;else if (props.error) return "transparent";else if (props.readOnly) return props.theme.readOnlyBorderColor;else return props.backgroundType === "dark" ? props.theme.enabledBorderColorOnDark : props.theme.enabledBorderColor;
211
+ if (props.disabled) return props.theme.disabledBorderColor;else if (props.error) return "transparent";else if (props.readOnly) return props.theme.readOnlyBorderColor;else props.theme.enabledBorderColor;
253
212
  }, function (props) {
254
- return props.error && !props.disabled && "box-shadow: 0 0 0 2px ".concat(props.backgroundType === "dark" ? props.theme.errorBorderColorOnDark : props.theme.errorBorderColor, ";\n ");
213
+ return props.error && !props.disabled && "box-shadow: 0 0 0 2px ".concat(props.theme.errorBorderColor, ";\n ");
255
214
  }, function (props) {
256
- return !props.disabled ? "&:hover {\n border-color: ".concat(props.error ? "transparent" : props.readOnly ? props.theme.hoverReadOnlyBorderColor : 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, &:focus-within {\n outline: none;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }") : "cursor: not-allowed;";
215
+ return !props.disabled ? "&:hover {\n border-color: ".concat(props.error ? "transparent" : props.readOnly ? props.theme.hoverReadOnlyBorderColor : props.theme.hoverBorderColor, ";\n ").concat(props.error && "box-shadow: 0 0 0 2px ".concat(props.theme.hoverErrorBorderColor, ";"), "\n }\n &:focus, &:focus-within {\n outline: none;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.theme.focusBorderColor, ";\n }") : "cursor: not-allowed;";
257
216
  }, function (props) {
258
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledValueFontColorOnDark : props.theme.disabledValueFontColor : props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
217
+ return props.disabled ? props.theme.disabledValueFontColor : props.theme.valueFontColor;
259
218
  }, function (props) {
260
219
  return props.theme.fontFamily;
261
220
  }, function (props) {
@@ -265,14 +224,11 @@ var Textarea = _styledComponents["default"].textarea(_templateObject5 || (_templ
265
224
  }, function (props) {
266
225
  return props.theme.valueFontWeight;
267
226
  }, function (props) {
268
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledPlaceholderFontColorOnDark : props.theme.disabledPlaceholderFontColor : props.backgroundType === "dark" ? props.theme.placeholderFontColorOnDark : props.theme.placeholderFontColor;
227
+ return props.disabled ? props.theme.disabledPlaceholderFontColor : props.theme.placeholderFontColor;
269
228
  });
270
-
271
229
  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) {
272
- return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
230
+ return props.theme.errorMessageColor;
273
231
  }, function (props) {
274
232
  return props.theme.fontFamily;
275
233
  });
276
-
277
- var _default = DxcTextarea;
278
- exports["default"] = _default;
234
+ var _default = exports["default"] = DxcTextarea;