@dxc-technology/halstack-react 0.0.0-da4b2be → 0.0.0-da56eb6

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 (347) hide show
  1. package/README.md +46 -0
  2. package/dist/index.d.mts +4014 -0
  3. package/dist/index.d.ts +4014 -0
  4. package/dist/index.js +14967 -0
  5. package/dist/index.mjs +14878 -0
  6. package/package.json +85 -67
  7. package/BackgroundColorContext.d.ts +0 -10
  8. package/BackgroundColorContext.js +0 -47
  9. package/HalstackContext.d.ts +0 -1336
  10. package/HalstackContext.js +0 -335
  11. package/accordion/Accordion.d.ts +0 -4
  12. package/accordion/Accordion.js +0 -234
  13. package/accordion/Accordion.stories.tsx +0 -395
  14. package/accordion/Accordion.test.js +0 -71
  15. package/accordion/types.d.ts +0 -69
  16. package/accordion/types.js +0 -5
  17. package/accordion-group/AccordionGroup.d.ts +0 -8
  18. package/accordion-group/AccordionGroup.js +0 -128
  19. package/accordion-group/AccordionGroup.stories.tsx +0 -251
  20. package/accordion-group/AccordionGroup.test.js +0 -126
  21. package/accordion-group/AccordionGroupAccordion.d.ts +0 -4
  22. package/accordion-group/AccordionGroupAccordion.js +0 -43
  23. package/accordion-group/types.d.ts +0 -79
  24. package/accordion-group/types.js +0 -5
  25. package/alert/Alert.d.ts +0 -4
  26. package/alert/Alert.js +0 -289
  27. package/alert/Alert.stories.tsx +0 -198
  28. package/alert/Alert.test.js +0 -92
  29. package/alert/types.d.ts +0 -49
  30. package/alert/types.js +0 -5
  31. package/badge/Badge.d.ts +0 -4
  32. package/badge/Badge.js +0 -61
  33. package/badge/types.d.ts +0 -5
  34. package/badge/types.js +0 -5
  35. package/bleed/Bleed.d.ts +0 -3
  36. package/bleed/Bleed.js +0 -51
  37. package/bleed/Bleed.stories.tsx +0 -342
  38. package/bleed/types.d.ts +0 -37
  39. package/bleed/types.js +0 -5
  40. package/box/Box.d.ts +0 -4
  41. package/box/Box.js +0 -97
  42. package/box/Box.stories.tsx +0 -119
  43. package/box/Box.test.js +0 -18
  44. package/box/types.d.ts +0 -32
  45. package/box/types.js +0 -5
  46. package/bulleted-list/BulletedList.d.ts +0 -7
  47. package/bulleted-list/BulletedList.js +0 -125
  48. package/bulleted-list/BulletedList.stories.tsx +0 -206
  49. package/bulleted-list/types.d.ts +0 -38
  50. package/bulleted-list/types.js +0 -5
  51. package/button/Button.d.ts +0 -4
  52. package/button/Button.js +0 -153
  53. package/button/Button.stories.tsx +0 -425
  54. package/button/Button.test.js +0 -35
  55. package/button/types.d.ts +0 -53
  56. package/button/types.js +0 -5
  57. package/card/Card.d.ts +0 -4
  58. package/card/Card.js +0 -160
  59. package/card/Card.stories.tsx +0 -200
  60. package/card/Card.test.js +0 -50
  61. package/card/ice-cream.jpg +0 -0
  62. package/card/types.d.ts +0 -68
  63. package/card/types.js +0 -5
  64. package/checkbox/Checkbox.d.ts +0 -4
  65. package/checkbox/Checkbox.js +0 -250
  66. package/checkbox/Checkbox.stories.tsx +0 -260
  67. package/checkbox/Checkbox.test.js +0 -155
  68. package/checkbox/types.d.ts +0 -68
  69. package/checkbox/types.js +0 -5
  70. package/chip/Chip.d.ts +0 -4
  71. package/chip/Chip.js +0 -140
  72. package/chip/Chip.stories.tsx +0 -214
  73. package/chip/Chip.test.js +0 -54
  74. package/chip/types.d.ts +0 -45
  75. package/chip/types.js +0 -5
  76. package/common/OpenSans.css +0 -69
  77. package/common/coreTokens.d.ts +0 -146
  78. package/common/coreTokens.js +0 -167
  79. package/common/fonts/OpenSans-Bold.ttf +0 -0
  80. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  81. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  82. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  83. package/common/fonts/OpenSans-Italic.ttf +0 -0
  84. package/common/fonts/OpenSans-Light.ttf +0 -0
  85. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  86. package/common/fonts/OpenSans-Regular.ttf +0 -0
  87. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  88. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  89. package/common/utils.d.ts +0 -1
  90. package/common/utils.js +0 -22
  91. package/common/variables.d.ts +0 -1482
  92. package/common/variables.js +0 -1361
  93. package/date-input/Calendar.d.ts +0 -4
  94. package/date-input/Calendar.js +0 -258
  95. package/date-input/DateInput.d.ts +0 -4
  96. package/date-input/DateInput.js +0 -269
  97. package/date-input/DateInput.stories.tsx +0 -304
  98. package/date-input/DateInput.test.js +0 -835
  99. package/date-input/DatePicker.d.ts +0 -4
  100. package/date-input/DatePicker.js +0 -146
  101. package/date-input/Icons.d.ts +0 -6
  102. package/date-input/Icons.js +0 -75
  103. package/date-input/YearPicker.d.ts +0 -4
  104. package/date-input/YearPicker.js +0 -126
  105. package/date-input/types.d.ts +0 -158
  106. package/date-input/types.js +0 -5
  107. package/dialog/Dialog.d.ts +0 -4
  108. package/dialog/Dialog.js +0 -131
  109. package/dialog/Dialog.stories.tsx +0 -195
  110. package/dialog/Dialog.test.js +0 -369
  111. package/dialog/types.d.ts +0 -31
  112. package/dialog/types.js +0 -5
  113. package/dropdown/Dropdown.d.ts +0 -4
  114. package/dropdown/Dropdown.js +0 -388
  115. package/dropdown/Dropdown.stories.tsx +0 -438
  116. package/dropdown/Dropdown.test.js +0 -586
  117. package/dropdown/DropdownMenu.d.ts +0 -4
  118. package/dropdown/DropdownMenu.js +0 -74
  119. package/dropdown/DropdownMenuItem.d.ts +0 -4
  120. package/dropdown/DropdownMenuItem.js +0 -79
  121. package/dropdown/types.d.ts +0 -100
  122. package/dropdown/types.js +0 -5
  123. package/file-input/FileInput.d.ts +0 -4
  124. package/file-input/FileInput.js +0 -547
  125. package/file-input/FileInput.stories.tsx +0 -618
  126. package/file-input/FileInput.test.js +0 -457
  127. package/file-input/FileItem.d.ts +0 -4
  128. package/file-input/FileItem.js +0 -162
  129. package/file-input/types.d.ts +0 -129
  130. package/file-input/types.js +0 -5
  131. package/flex/Flex.d.ts +0 -4
  132. package/flex/Flex.js +0 -71
  133. package/flex/Flex.stories.tsx +0 -112
  134. package/flex/types.d.ts +0 -97
  135. package/flex/types.js +0 -5
  136. package/footer/Footer.d.ts +0 -4
  137. package/footer/Footer.js +0 -183
  138. package/footer/Footer.stories.tsx +0 -228
  139. package/footer/Footer.test.js +0 -97
  140. package/footer/Icons.d.ts +0 -2
  141. package/footer/Icons.js +0 -77
  142. package/footer/types.d.ts +0 -66
  143. package/footer/types.js +0 -5
  144. package/grid/Grid.d.ts +0 -7
  145. package/grid/Grid.js +0 -91
  146. package/grid/Grid.stories.tsx +0 -219
  147. package/grid/types.d.ts +0 -115
  148. package/grid/types.js +0 -5
  149. package/header/Header.d.ts +0 -8
  150. package/header/Header.js +0 -303
  151. package/header/Header.stories.tsx +0 -315
  152. package/header/Header.test.js +0 -79
  153. package/header/Icons.d.ts +0 -2
  154. package/header/Icons.js +0 -34
  155. package/header/types.d.ts +0 -48
  156. package/header/types.js +0 -5
  157. package/heading/Heading.d.ts +0 -4
  158. package/heading/Heading.js +0 -159
  159. package/heading/Heading.stories.tsx +0 -54
  160. package/heading/Heading.test.js +0 -186
  161. package/heading/types.d.ts +0 -33
  162. package/heading/types.js +0 -5
  163. package/inset/Inset.d.ts +0 -3
  164. package/inset/Inset.js +0 -51
  165. package/inset/Inset.stories.tsx +0 -230
  166. package/inset/types.d.ts +0 -37
  167. package/inset/types.js +0 -5
  168. package/layout/ApplicationLayout.d.ts +0 -20
  169. package/layout/ApplicationLayout.js +0 -171
  170. package/layout/ApplicationLayout.stories.tsx +0 -162
  171. package/layout/Icons.d.ts +0 -5
  172. package/layout/Icons.js +0 -66
  173. package/layout/SidenavContext.d.ts +0 -5
  174. package/layout/SidenavContext.js +0 -19
  175. package/layout/types.d.ts +0 -41
  176. package/layout/types.js +0 -5
  177. package/link/Link.d.ts +0 -4
  178. package/link/Link.js +0 -136
  179. package/link/Link.stories.tsx +0 -253
  180. package/link/Link.test.js +0 -81
  181. package/link/types.d.ts +0 -54
  182. package/link/types.js +0 -5
  183. package/main.d.ts +0 -45
  184. package/main.js +0 -377
  185. package/nav-tabs/NavTabs.d.ts +0 -8
  186. package/nav-tabs/NavTabs.js +0 -122
  187. package/nav-tabs/NavTabs.stories.tsx +0 -274
  188. package/nav-tabs/NavTabs.test.js +0 -82
  189. package/nav-tabs/Tab.d.ts +0 -4
  190. package/nav-tabs/Tab.js +0 -146
  191. package/nav-tabs/types.d.ts +0 -52
  192. package/nav-tabs/types.js +0 -5
  193. package/number-input/NumberInput.d.ts +0 -4
  194. package/number-input/NumberInput.js +0 -76
  195. package/number-input/NumberInput.stories.tsx +0 -115
  196. package/number-input/NumberInput.test.js +0 -542
  197. package/number-input/NumberInputContext.d.ts +0 -4
  198. package/number-input/NumberInputContext.js +0 -19
  199. package/number-input/numberInputContextTypes.d.ts +0 -19
  200. package/number-input/numberInputContextTypes.js +0 -5
  201. package/number-input/types.d.ts +0 -124
  202. package/number-input/types.js +0 -5
  203. package/paginator/Icons.d.ts +0 -5
  204. package/paginator/Icons.js +0 -54
  205. package/paginator/Paginator.d.ts +0 -4
  206. package/paginator/Paginator.js +0 -163
  207. package/paginator/Paginator.stories.tsx +0 -87
  208. package/paginator/Paginator.test.js +0 -318
  209. package/paginator/types.d.ts +0 -38
  210. package/paginator/types.js +0 -5
  211. package/paragraph/Paragraph.d.ts +0 -5
  212. package/paragraph/Paragraph.js +0 -38
  213. package/paragraph/Paragraph.stories.tsx +0 -44
  214. package/password-input/PasswordInput.d.ts +0 -4
  215. package/password-input/PasswordInput.js +0 -166
  216. package/password-input/PasswordInput.stories.tsx +0 -131
  217. package/password-input/PasswordInput.test.js +0 -181
  218. package/password-input/types.d.ts +0 -110
  219. package/password-input/types.js +0 -5
  220. package/progress-bar/ProgressBar.d.ts +0 -4
  221. package/progress-bar/ProgressBar.js +0 -176
  222. package/progress-bar/ProgressBar.stories.jsx +0 -93
  223. package/progress-bar/ProgressBar.test.js +0 -110
  224. package/progress-bar/types.d.ts +0 -37
  225. package/progress-bar/types.js +0 -5
  226. package/quick-nav/QuickNav.d.ts +0 -4
  227. package/quick-nav/QuickNav.js +0 -117
  228. package/quick-nav/QuickNav.stories.tsx +0 -356
  229. package/quick-nav/types.d.ts +0 -21
  230. package/quick-nav/types.js +0 -5
  231. package/radio-group/Radio.d.ts +0 -4
  232. package/radio-group/Radio.js +0 -156
  233. package/radio-group/RadioGroup.d.ts +0 -4
  234. package/radio-group/RadioGroup.js +0 -281
  235. package/radio-group/RadioGroup.stories.tsx +0 -214
  236. package/radio-group/RadioGroup.test.js +0 -722
  237. package/radio-group/types.d.ts +0 -114
  238. package/radio-group/types.js +0 -5
  239. package/resultsetTable/Icons.d.ts +0 -7
  240. package/resultsetTable/Icons.js +0 -51
  241. package/resultsetTable/ResultsetTable.d.ts +0 -4
  242. package/resultsetTable/ResultsetTable.js +0 -195
  243. package/resultsetTable/ResultsetTable.stories.tsx +0 -300
  244. package/resultsetTable/ResultsetTable.test.js +0 -325
  245. package/resultsetTable/types.d.ts +0 -67
  246. package/resultsetTable/types.js +0 -5
  247. package/select/Icons.d.ts +0 -10
  248. package/select/Icons.js +0 -93
  249. package/select/Listbox.d.ts +0 -4
  250. package/select/Listbox.js +0 -169
  251. package/select/Option.d.ts +0 -4
  252. package/select/Option.js +0 -97
  253. package/select/Select.d.ts +0 -4
  254. package/select/Select.js +0 -666
  255. package/select/Select.stories.tsx +0 -971
  256. package/select/Select.test.js +0 -2228
  257. package/select/types.d.ts +0 -210
  258. package/select/types.js +0 -5
  259. package/sidenav/Icons.d.ts +0 -7
  260. package/sidenav/Icons.js +0 -51
  261. package/sidenav/Sidenav.d.ts +0 -10
  262. package/sidenav/Sidenav.js +0 -238
  263. package/sidenav/Sidenav.stories.tsx +0 -282
  264. package/sidenav/Sidenav.test.js +0 -44
  265. package/sidenav/types.d.ts +0 -76
  266. package/sidenav/types.js +0 -5
  267. package/slider/Slider.d.ts +0 -4
  268. package/slider/Slider.js +0 -342
  269. package/slider/Slider.stories.tsx +0 -240
  270. package/slider/Slider.test.js +0 -250
  271. package/slider/types.d.ts +0 -86
  272. package/slider/types.js +0 -5
  273. package/spinner/Spinner.d.ts +0 -4
  274. package/spinner/Spinner.js +0 -244
  275. package/spinner/Spinner.stories.jsx +0 -129
  276. package/spinner/Spinner.test.js +0 -64
  277. package/spinner/types.d.ts +0 -32
  278. package/spinner/types.js +0 -5
  279. package/switch/Switch.d.ts +0 -4
  280. package/switch/Switch.js +0 -262
  281. package/switch/Switch.stories.tsx +0 -171
  282. package/switch/Switch.test.js +0 -225
  283. package/switch/types.d.ts +0 -66
  284. package/switch/types.js +0 -5
  285. package/table/Table.d.ts +0 -4
  286. package/table/Table.js +0 -118
  287. package/table/Table.stories.jsx +0 -356
  288. package/table/Table.test.js +0 -26
  289. package/table/types.d.ts +0 -21
  290. package/table/types.js +0 -5
  291. package/tabs/Tab.d.ts +0 -4
  292. package/tabs/Tab.js +0 -132
  293. package/tabs/Tabs.d.ts +0 -4
  294. package/tabs/Tabs.js +0 -461
  295. package/tabs/Tabs.stories.tsx +0 -226
  296. package/tabs/Tabs.test.js +0 -350
  297. package/tabs/types.d.ts +0 -92
  298. package/tabs/types.js +0 -5
  299. package/tag/Tag.d.ts +0 -4
  300. package/tag/Tag.js +0 -181
  301. package/tag/Tag.stories.tsx +0 -155
  302. package/tag/Tag.test.js +0 -60
  303. package/tag/types.d.ts +0 -69
  304. package/tag/types.js +0 -5
  305. package/text-input/Icons.d.ts +0 -8
  306. package/text-input/Icons.js +0 -60
  307. package/text-input/Suggestion.d.ts +0 -4
  308. package/text-input/Suggestion.js +0 -84
  309. package/text-input/Suggestions.d.ts +0 -4
  310. package/text-input/Suggestions.js +0 -134
  311. package/text-input/TextInput.d.ts +0 -4
  312. package/text-input/TextInput.js +0 -673
  313. package/text-input/TextInput.stories.tsx +0 -569
  314. package/text-input/TextInput.test.js +0 -1723
  315. package/text-input/types.d.ts +0 -197
  316. package/text-input/types.js +0 -5
  317. package/textarea/Textarea.d.ts +0 -4
  318. package/textarea/Textarea.js +0 -276
  319. package/textarea/Textarea.stories.jsx +0 -216
  320. package/textarea/Textarea.test.js +0 -435
  321. package/textarea/types.d.ts +0 -137
  322. package/textarea/types.js +0 -5
  323. package/toggle-group/ToggleGroup.d.ts +0 -4
  324. package/toggle-group/ToggleGroup.js +0 -218
  325. package/toggle-group/ToggleGroup.stories.tsx +0 -215
  326. package/toggle-group/ToggleGroup.test.js +0 -156
  327. package/toggle-group/types.d.ts +0 -105
  328. package/toggle-group/types.js +0 -5
  329. package/typography/Typography.d.ts +0 -4
  330. package/typography/Typography.js +0 -32
  331. package/typography/Typography.stories.tsx +0 -198
  332. package/typography/types.d.ts +0 -18
  333. package/typography/types.js +0 -5
  334. package/useTheme.d.ts +0 -1235
  335. package/useTheme.js +0 -22
  336. package/useTranslatedLabels.d.ts +0 -85
  337. package/useTranslatedLabels.js +0 -20
  338. package/utils/BaseTypography.d.ts +0 -21
  339. package/utils/BaseTypography.js +0 -108
  340. package/utils/FocusLock.d.ts +0 -13
  341. package/utils/FocusLock.js +0 -138
  342. package/wizard/Wizard.d.ts +0 -4
  343. package/wizard/Wizard.js +0 -285
  344. package/wizard/Wizard.stories.tsx +0 -253
  345. package/wizard/Wizard.test.js +0 -141
  346. package/wizard/types.d.ts +0 -64
  347. package/wizard/types.js +0 -5
@@ -1,216 +0,0 @@
1
- import React from "react";
2
- import DxcTextarea from "./Textarea";
3
- import Title from "../../.storybook/components/Title";
4
- import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
- import { BackgroundColorProvider } from "../BackgroundColorContext";
6
- import DarkContainer from "../../.storybook/components/DarkSection";
7
- import { HalstackProvider } from "../HalstackContext";
8
-
9
- export default {
10
- title: "Textarea",
11
- component: DxcTextarea,
12
- };
13
-
14
- const opinionatedTheme = {
15
- textarea: {
16
- fontColor: "#000000",
17
- hoverBorderColor: "#a46ede",
18
- },
19
- };
20
-
21
- export const Chromatic = () => (
22
- <>
23
- <>
24
- <ExampleContainer pseudoState="pseudo-hover">
25
- <Title title="Hovered" theme="light" level={4} />
26
- <DxcTextarea label="Hovered" />
27
- </ExampleContainer>
28
- <ExampleContainer pseudoState="pseudo-focus">
29
- <Title title="Focused" theme="light" level={4} />
30
- <DxcTextarea label="Focused" />
31
- </ExampleContainer>
32
- <ExampleContainer>
33
- <Title title="Disabled" theme="light" level={4} />
34
- <DxcTextarea
35
- label="Disabled"
36
- optional
37
- helperText="Sample text"
38
- placeholder="Enter your text here..."
39
- disabled
40
- />
41
- </ExampleContainer>
42
- <ExampleContainer>
43
- <Title title="Disabled with value" theme="light" level={4} />
44
- <DxcTextarea label="Disabled" defaultValue="Example text" disabled />
45
- </ExampleContainer>
46
- <ExampleContainer>
47
- <Title title="With error" theme="light" level={4} />
48
- <DxcTextarea
49
- label="Textarea with error"
50
- helperText="Helper text"
51
- placeholder="Enter your text here..."
52
- error="Error message."
53
- />
54
- </ExampleContainer>
55
- <ExampleContainer pseudoState="pseudo-hover">
56
- <Title title="Hovered with error" theme="light" level={4} />
57
- <DxcTextarea
58
- label="Hovered textarea with error"
59
- helperText="Helper text"
60
- placeholder="Enter your text here..."
61
- error="Error message."
62
- />
63
- </ExampleContainer>
64
- <ExampleContainer>
65
- <Title title="Helper text and optional with value" theme="light" level={4} />
66
- <DxcTextarea label="Helper & optional" defaultValue="Some text" helperText="Sample text" optional />
67
- </ExampleContainer>
68
- <ExampleContainer>
69
- <Title title="Resizable" theme="light" level={4} />
70
- <DxcTextarea label="With resizer" helperText="Helper text" verticalGrow="manual" />
71
- </ExampleContainer>
72
- <ExampleContainer>
73
- <Title title="Grow manual" theme="light" level={4} />
74
- <DxcTextarea
75
- label="Manual vertical grow"
76
- verticalGrow="manual"
77
- defaultValue="Long textttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt"
78
- />
79
- </ExampleContainer>
80
- </>
81
- <BackgroundColorProvider color="#333333">
82
- <DarkContainer>
83
- <ExampleContainer>
84
- <Title title="Helper text and optional with value" theme="dark" level={4} />
85
- <DxcTextarea label="Helper & optional" defaultValue="Some text" helperText="Sample text" optional />
86
- </ExampleContainer>
87
- <ExampleContainer>
88
- <Title title="Disabled" theme="dark" level={4} />
89
- <DxcTextarea
90
- label="Disabled"
91
- optional
92
- helperText="Sample text"
93
- placeholder="Enter your text here..."
94
- disabled
95
- />
96
- </ExampleContainer>
97
- <ExampleContainer>
98
- <Title title="Disabled with value" theme="dark" level={4} />
99
- <DxcTextarea label="Disabled" defaultValue="Example text" disabled />
100
- </ExampleContainer>
101
- <ExampleContainer>
102
- <Title title="With error" theme="dark" level={4} />
103
- <DxcTextarea
104
- label="Textarea with error"
105
- helperText="Helper text"
106
- placeholder="Enter your text here..."
107
- error="Error message."
108
- />
109
- </ExampleContainer>
110
- <ExampleContainer pseudoState="pseudo-hover">
111
- <Title title="Hovered with error" theme="dark" level={4} />
112
- <DxcTextarea
113
- label="Hovered textarea with error"
114
- helperText="Helper text"
115
- placeholder="Enter your text here..."
116
- error="Error message."
117
- />
118
- </ExampleContainer>
119
- </DarkContainer>
120
- </BackgroundColorProvider>
121
- <Title title="Sizes" theme="light" level={2} />
122
- <ExampleContainer>
123
- <DxcTextarea label="Small" size="small" />
124
- </ExampleContainer>
125
- <ExampleContainer>
126
- <DxcTextarea label="Medium" size="medium" />
127
- </ExampleContainer>
128
- <ExampleContainer>
129
- <DxcTextarea label="Large" size="large" />
130
- </ExampleContainer>
131
- <ExampleContainer>
132
- <DxcTextarea label="Fill parent" size="fillParent" />
133
- </ExampleContainer>
134
- <Title title="Margins" theme="light" level={2} />
135
- <ExampleContainer>
136
- <Title title="Xxsmall margin" theme="light" level={4} />
137
- <DxcTextarea label="Xxsmall" margin="xxsmall" />
138
- </ExampleContainer>
139
- <ExampleContainer>
140
- <Title title="Xsmall margin" theme="light" level={4} />
141
- <DxcTextarea label="xsmall" margin="xsmall" />
142
- </ExampleContainer>
143
- <ExampleContainer>
144
- <Title title="Small margin" theme="light" level={4} />
145
- <DxcTextarea label="small" margin="small" />
146
- </ExampleContainer>
147
- <ExampleContainer>
148
- <Title title="Medium margin" theme="light" level={4} />
149
- <DxcTextarea label="medium" margin="medium" />
150
- </ExampleContainer>
151
- <ExampleContainer>
152
- <Title title="Large margin" theme="light" level={4} />
153
- <DxcTextarea label="Large" margin="large" />
154
- </ExampleContainer>
155
- <ExampleContainer>
156
- <Title title="Xlarge margin" theme="light" level={4} />
157
- <DxcTextarea label="Xlarge" margin="xlarge" />
158
- </ExampleContainer>
159
- <ExampleContainer>
160
- <Title title="Xxlarge margin" theme="light" level={4} />
161
- <DxcTextarea label="Xxlarge" margin="xxlarge" />
162
- </ExampleContainer>
163
- <Title title="Opinionated theme" theme="light" level={2} />
164
- <ExampleContainer pseudoState="pseudo-hover">
165
- <Title title="Hovered" theme="light" level={4} />
166
- <HalstackProvider theme={opinionatedTheme}>
167
- <DxcTextarea label="Hovered" helperText="Sample text" placeholder="Placeholder" />
168
- </HalstackProvider>
169
- </ExampleContainer>
170
- <ExampleContainer pseudoState="pseudo-focus">
171
- <Title title="Focused" theme="light" level={4} />
172
- <HalstackProvider theme={opinionatedTheme}>
173
- <DxcTextarea label="Focused" helperText="Sample text" />
174
- </HalstackProvider>
175
- </ExampleContainer>
176
- <ExampleContainer>
177
- <Title title="Disabled" theme="light" level={4} />
178
- <HalstackProvider theme={opinionatedTheme}>
179
- <DxcTextarea
180
- label="Disabled"
181
- optional
182
- helperText="Sample text"
183
- placeholder="Enter your text here..."
184
- disabled
185
- />
186
- </HalstackProvider>
187
- </ExampleContainer>
188
- <ExampleContainer>
189
- <Title title="Disabled with value" theme="light" level={4} />
190
- <HalstackProvider theme={opinionatedTheme}>
191
- <DxcTextarea label="Disabled" helperText="Sample text" defaultValue="Example text" disabled />
192
- </HalstackProvider>
193
- </ExampleContainer>
194
- <ExampleContainer>
195
- <Title title="With error" theme="light" level={4} />
196
- <HalstackProvider theme={opinionatedTheme}>
197
- <DxcTextarea
198
- label="Textarea with error"
199
- helperText="Helper text"
200
- placeholder="Enter your text here..."
201
- error="Error message."
202
- />
203
- </HalstackProvider>
204
- </ExampleContainer>
205
- <ExampleContainer>
206
- <Title title="Grow manual" theme="light" level={4} />{" "}
207
- <HalstackProvider theme={opinionatedTheme}>
208
- <DxcTextarea
209
- label="Manual vertical grow"
210
- verticalGrow="manual"
211
- defaultValue="Long textttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt"
212
- />
213
- </HalstackProvider>
214
- </ExampleContainer>
215
- </>
216
- );
@@ -1,435 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _react2 = require("@testing-library/react");
8
-
9
- var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
10
-
11
- var _Textarea = _interopRequireDefault(require("./Textarea.tsx"));
12
-
13
- describe("Textarea component tests", function () {
14
- test("Renders with correct label", function () {
15
- var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
16
- label: "Example label"
17
- })),
18
- getByText = _render.getByText;
19
-
20
- expect(getByText("Example label")).toBeTruthy();
21
- });
22
- test("Renders with correct label and helper text", function () {
23
- var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
24
- label: "Example label",
25
- helperText: "Example helper text"
26
- })),
27
- getByText = _render2.getByText;
28
-
29
- expect(getByText("Example label")).toBeTruthy();
30
- expect(getByText("Example helper text")).toBeTruthy();
31
- });
32
- test("Renders with correct label and optional", function () {
33
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
34
- label: "Example label",
35
- helperText: "Example helper text",
36
- optional: true
37
- })),
38
- getByText = _render3.getByText,
39
- getByRole = _render3.getByRole;
40
-
41
- var textarea = getByRole("textbox");
42
- expect(getByText("Example label")).toBeTruthy();
43
- expect(getByText("(Optional)")).toBeTruthy();
44
- expect(getByText("Example helper text")).toBeTruthy();
45
- expect(textarea.getAttribute("aria-required")).toBe("false");
46
- });
47
- test("Renders with correct placeholder", function () {
48
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
49
- placeholder: "Placeholder"
50
- })),
51
- getByRole = _render4.getByRole;
52
-
53
- var textarea = getByRole("textbox");
54
- expect(textarea.getAttribute("placeholder")).toBe("Placeholder");
55
- });
56
- test("Renders with error message and correct aria attributes", function () {
57
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
58
- label: "Example label",
59
- error: "Error message."
60
- })),
61
- getByText = _render5.getByText,
62
- getByLabelText = _render5.getByLabelText;
63
-
64
- var textarea = getByLabelText("Example label");
65
- var errorMessage = getByText("Error message.");
66
- expect(errorMessage).toBeTruthy();
67
- expect(textarea.getAttribute("aria-errormessage")).toBe(errorMessage.id);
68
- expect(textarea.getAttribute("aria-invalid")).toBe("true");
69
- expect(errorMessage.getAttribute("aria-live")).toBe("assertive");
70
- });
71
- test("Renders with correct default rows", function () {
72
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
73
- label: "Example label",
74
- rows: 10
75
- })),
76
- getByLabelText = _render6.getByLabelText;
77
-
78
- var textarea = getByLabelText("Example label");
79
- expect(textarea.rows).toBe(10);
80
- });
81
- test("Renders with correct accesibility attributes", function () {
82
- var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
83
- label: "Example label"
84
- })),
85
- getByLabelText = _render7.getByLabelText;
86
-
87
- var textarea = getByLabelText("Example label");
88
- expect(textarea.getAttribute("aria-invalid")).toBe("false");
89
- expect(textarea.getAttribute("aria-describedBy")).toBeNull();
90
- expect(textarea.getAttribute("aria-required")).toBe("true");
91
- });
92
- test("Renders with correct initial value", function () {
93
- var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
94
- label: "Example label",
95
- placeholder: "Placeholder",
96
- defaultValue: "Example text"
97
- })),
98
- getByLabelText = _render8.getByLabelText;
99
-
100
- var textarea = getByLabelText("Example label");
101
- expect(textarea.value).toBe("Example text");
102
- });
103
- test("Disabled textarea can not be modified", function () {
104
- var onChange = jest.fn();
105
-
106
- var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
107
- label: "Example label",
108
- onChange: onChange,
109
- disabled: true
110
- })),
111
- getByLabelText = _render9.getByLabelText;
112
-
113
- var textarea = getByLabelText("Example label");
114
-
115
- _userEvent["default"].type(textarea, "Test");
116
-
117
- expect(onChange).not.toHaveBeenCalled();
118
- });
119
- test("Not optional constraint (onBlur)", function () {
120
- var onChange = jest.fn();
121
- var onBlur = jest.fn();
122
-
123
- var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
124
- label: "Example label",
125
- placeholder: "Placeholder",
126
- onChange: onChange,
127
- onBlur: onBlur
128
- })),
129
- getByLabelText = _render10.getByLabelText;
130
-
131
- var textarea = getByLabelText("Example label");
132
-
133
- _react2.fireEvent.focus(textarea);
134
-
135
- _react2.fireEvent.blur(textarea);
136
-
137
- expect(onBlur).toHaveBeenCalled();
138
- expect(onBlur).toHaveBeenCalledWith({
139
- value: "",
140
- error: "This field is required. Please, enter a value."
141
- });
142
-
143
- _react2.fireEvent.change(textarea, {
144
- target: {
145
- value: "Test"
146
- }
147
- });
148
-
149
- _react2.fireEvent.blur(textarea);
150
-
151
- expect(onBlur).toHaveBeenCalled();
152
- expect(onBlur).toHaveBeenCalledWith({
153
- value: "Test"
154
- });
155
- });
156
- test("Not optional constraint (onChange)", function () {
157
- var onChange = jest.fn();
158
-
159
- var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
160
- label: "Example label",
161
- placeholder: "Placeholder",
162
- onChange: onChange
163
- })),
164
- getByLabelText = _render11.getByLabelText;
165
-
166
- var textarea = getByLabelText("Example label");
167
-
168
- _react2.fireEvent.focus(textarea);
169
-
170
- _react2.fireEvent.change(textarea, {
171
- target: {
172
- value: "Test"
173
- }
174
- });
175
-
176
- expect(onChange).toHaveBeenCalled();
177
- expect(onChange).toHaveBeenCalledWith({
178
- value: "Test"
179
- });
180
-
181
- _userEvent["default"].clear(textarea);
182
-
183
- expect(onChange).toHaveBeenCalled();
184
- expect(onChange).toHaveBeenCalledWith({
185
- value: "",
186
- error: "This field is required. Please, enter a value."
187
- });
188
- });
189
- test("Pattern constraint", function () {
190
- var onChange = jest.fn();
191
- var onBlur = jest.fn();
192
-
193
- var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
194
- label: "Example label",
195
- placeholder: "Placeholder",
196
- onChange: onChange,
197
- onBlur: onBlur,
198
- margin: {
199
- left: "medium",
200
- right: "medium"
201
- },
202
- pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
203
- })),
204
- getByLabelText = _render12.getByLabelText;
205
-
206
- var textarea = getByLabelText("Example label");
207
-
208
- _react2.fireEvent.change(textarea, {
209
- target: {
210
- value: "pattern test"
211
- }
212
- });
213
-
214
- expect(onChange).toHaveBeenCalled();
215
- expect(onChange).toHaveBeenCalledWith({
216
- value: "pattern test",
217
- error: "Please match the format requested."
218
- });
219
-
220
- _react2.fireEvent.blur(textarea);
221
-
222
- expect(onBlur).toHaveBeenCalled();
223
- expect(onBlur).toHaveBeenCalledWith({
224
- value: "pattern test",
225
- error: "Please match the format requested."
226
- });
227
-
228
- _userEvent["default"].clear(textarea);
229
-
230
- _react2.fireEvent.change(textarea, {
231
- target: {
232
- value: "pattern4&"
233
- }
234
- });
235
-
236
- expect(onChange).toHaveBeenCalled();
237
- expect(onChange).toHaveBeenCalledWith({
238
- value: "pattern4&"
239
- });
240
-
241
- _react2.fireEvent.blur(textarea);
242
-
243
- expect(onBlur).toHaveBeenCalled();
244
- expect(onBlur).toHaveBeenCalledWith({
245
- value: "pattern4&"
246
- });
247
- });
248
- test("Length constraint", function () {
249
- var onChange = jest.fn();
250
- var onBlur = jest.fn();
251
-
252
- var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
253
- label: "Example label",
254
- placeholder: "Placeholder",
255
- onChange: onChange,
256
- onBlur: onBlur,
257
- margin: {
258
- left: "medium",
259
- right: "medium"
260
- },
261
- minLength: 5,
262
- maxLength: 10
263
- })),
264
- getByLabelText = _render13.getByLabelText;
265
-
266
- var textarea = getByLabelText("Example label");
267
-
268
- _react2.fireEvent.change(textarea, {
269
- target: {
270
- value: "test"
271
- }
272
- });
273
-
274
- expect(onChange).toHaveBeenCalled();
275
- expect(onChange).toHaveBeenCalledWith({
276
- value: "test",
277
- error: "Min length 5, max length 10."
278
- });
279
-
280
- _react2.fireEvent.blur(textarea);
281
-
282
- expect(onBlur).toHaveBeenCalled();
283
- expect(onBlur).toHaveBeenCalledWith({
284
- value: "test",
285
- error: "Min length 5, max length 10."
286
- });
287
-
288
- _userEvent["default"].clear(textarea);
289
-
290
- _react2.fireEvent.change(textarea, {
291
- target: {
292
- value: "length"
293
- }
294
- });
295
-
296
- expect(onChange).toHaveBeenCalled();
297
- expect(onChange).toHaveBeenCalledWith({
298
- value: "length"
299
- });
300
-
301
- _react2.fireEvent.blur(textarea);
302
-
303
- expect(onBlur).toHaveBeenCalled();
304
- expect(onBlur).toHaveBeenCalledWith({
305
- value: "length"
306
- });
307
- });
308
- test("Pattern and length constraints", function () {
309
- var onChange = jest.fn();
310
- var onBlur = jest.fn();
311
-
312
- var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
313
- label: "Example label",
314
- placeholder: "Placeholder",
315
- onChange: onChange,
316
- onBlur: onBlur,
317
- margin: {
318
- left: "medium",
319
- right: "medium"
320
- },
321
- pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$",
322
- minLength: 5,
323
- maxLength: 10
324
- })),
325
- getByLabelText = _render14.getByLabelText;
326
-
327
- var textarea = getByLabelText("Example label");
328
-
329
- _react2.fireEvent.change(textarea, {
330
- target: {
331
- value: "test"
332
- }
333
- });
334
-
335
- expect(onChange).toHaveBeenCalled();
336
- expect(onChange).toHaveBeenCalledWith({
337
- value: "test",
338
- error: "Min length 5, max length 10."
339
- });
340
-
341
- _react2.fireEvent.blur(textarea);
342
-
343
- expect(onBlur).toHaveBeenCalled();
344
- expect(onBlur).toHaveBeenCalledWith({
345
- value: "test",
346
- error: "Min length 5, max length 10."
347
- });
348
-
349
- _react2.fireEvent.change(textarea, {
350
- target: {
351
- value: "tests"
352
- }
353
- });
354
-
355
- expect(onChange).toHaveBeenCalled();
356
- expect(onChange).toHaveBeenCalledWith({
357
- value: "tests",
358
- error: "Please match the format requested."
359
- });
360
-
361
- _react2.fireEvent.blur(textarea);
362
-
363
- expect(onBlur).toHaveBeenCalled();
364
- expect(onBlur).toHaveBeenCalledWith({
365
- value: "tests",
366
- error: "Please match the format requested."
367
- });
368
-
369
- _react2.fireEvent.change(textarea, {
370
- target: {
371
- value: "tests4&"
372
- }
373
- });
374
-
375
- expect(onChange).toHaveBeenCalled();
376
- expect(onChange).toHaveBeenCalledWith({
377
- value: "tests4&"
378
- });
379
-
380
- _react2.fireEvent.blur(textarea);
381
-
382
- expect(onBlur).toHaveBeenCalled();
383
- expect(onBlur).toHaveBeenCalledWith({
384
- value: "tests4&"
385
- });
386
- });
387
- test("onBlur function is called correctly", function () {
388
- var onBlur = jest.fn();
389
-
390
- var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
391
- label: "Example label",
392
- onBlur: onBlur
393
- })),
394
- getByLabelText = _render15.getByLabelText;
395
-
396
- var textarea = getByLabelText("Example label");
397
-
398
- _react2.fireEvent.change(textarea, {
399
- target: {
400
- value: "Blur test"
401
- }
402
- });
403
-
404
- _react2.fireEvent.blur(textarea);
405
-
406
- expect(onBlur).toHaveBeenCalled();
407
- expect(onBlur).toHaveBeenCalledWith({
408
- value: "Blur test"
409
- });
410
- });
411
- test("onChange function is called correctly", function () {
412
- var onChange = jest.fn();
413
-
414
- var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
415
- label: "Example label",
416
- value: "Test value",
417
- onChange: onChange
418
- })),
419
- getByLabelText = _render16.getByLabelText;
420
-
421
- var textarea = getByLabelText("Example label");
422
-
423
- _react2.fireEvent.change(textarea, {
424
- target: {
425
- value: "Controlled test"
426
- }
427
- });
428
-
429
- expect(onChange).toHaveBeenCalled();
430
- expect(onChange).toHaveBeenCalledWith({
431
- value: "Controlled test"
432
- });
433
- expect(textarea.value).toBe("Test value");
434
- });
435
- });