@dxc-technology/halstack-react 10.1.0 → 12.0.0

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 (350) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +4 -21
  3. package/HalstackContext.d.ts +45 -143
  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 +8 -64
  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 +24 -24
  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 +34 -120
  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/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  42. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  43. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  44. package/breadcrumbs/Breadcrumbs.js +79 -0
  45. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  46. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  47. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  48. package/breadcrumbs/Item.d.ts +4 -0
  49. package/breadcrumbs/Item.js +52 -0
  50. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  51. package/breadcrumbs/dropdownTheme.js +62 -0
  52. package/breadcrumbs/types.d.ts +16 -0
  53. package/breadcrumbs/types.js +5 -0
  54. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  55. package/bulleted-list/BulletedList.js +22 -55
  56. package/bulleted-list/BulletedList.stories.tsx +2 -93
  57. package/bulleted-list/types.d.ts +5 -5
  58. package/button/Button.accessibility.test.js +127 -0
  59. package/button/Button.js +36 -59
  60. package/button/Button.stories.tsx +35 -135
  61. package/button/Button.test.js +13 -21
  62. package/button/types.d.ts +5 -5
  63. package/card/Card.accessibility.test.js +36 -0
  64. package/card/Card.js +23 -45
  65. package/card/Card.test.js +10 -21
  66. package/card/types.d.ts +5 -5
  67. package/checkbox/Checkbox.accessibility.test.js +87 -0
  68. package/checkbox/Checkbox.js +88 -123
  69. package/checkbox/Checkbox.stories.tsx +16 -54
  70. package/checkbox/Checkbox.test.js +107 -63
  71. package/checkbox/types.d.ts +8 -4
  72. package/chip/Chip.accessibility.test.js +67 -0
  73. package/chip/Chip.js +22 -36
  74. package/chip/Chip.stories.tsx +10 -25
  75. package/chip/Chip.test.js +17 -30
  76. package/chip/types.d.ts +4 -4
  77. package/common/coreTokens.d.ts +105 -14
  78. package/common/coreTokens.js +40 -23
  79. package/common/utils.js +2 -8
  80. package/common/variables.d.ts +46 -144
  81. package/common/variables.js +120 -225
  82. package/container/Container.d.ts +4 -0
  83. package/container/Container.js +194 -0
  84. package/container/Container.stories.tsx +214 -0
  85. package/container/types.d.ts +74 -0
  86. package/container/types.js +5 -0
  87. package/contextual-menu/ContextualMenu.accessibility.test.js +97 -0
  88. package/contextual-menu/ContextualMenu.d.ts +5 -0
  89. package/contextual-menu/ContextualMenu.js +88 -0
  90. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  91. package/contextual-menu/ContextualMenu.test.js +205 -0
  92. package/contextual-menu/GroupItem.d.ts +4 -0
  93. package/contextual-menu/GroupItem.js +67 -0
  94. package/contextual-menu/ItemAction.d.ts +4 -0
  95. package/contextual-menu/ItemAction.js +51 -0
  96. package/contextual-menu/MenuItem.d.ts +4 -0
  97. package/contextual-menu/MenuItem.js +29 -0
  98. package/contextual-menu/SingleItem.d.ts +4 -0
  99. package/contextual-menu/SingleItem.js +38 -0
  100. package/contextual-menu/types.d.ts +58 -0
  101. package/contextual-menu/types.js +5 -0
  102. package/date-input/Calendar.js +13 -57
  103. package/date-input/DateInput.accessibility.test.js +228 -0
  104. package/date-input/DateInput.js +53 -100
  105. package/date-input/DateInput.stories.tsx +19 -31
  106. package/date-input/DateInput.test.js +674 -701
  107. package/date-input/DatePicker.js +23 -48
  108. package/date-input/YearPicker.js +8 -34
  109. package/date-input/types.d.ts +28 -22
  110. package/dialog/Dialog.accessibility.test.js +69 -0
  111. package/dialog/Dialog.js +21 -59
  112. package/dialog/Dialog.stories.tsx +176 -0
  113. package/dialog/Dialog.test.js +126 -188
  114. package/dialog/types.d.ts +18 -13
  115. package/divider/Divider.accessibility.test.js +33 -0
  116. package/divider/Divider.d.ts +4 -0
  117. package/divider/Divider.js +36 -0
  118. package/divider/Divider.stories.tsx +223 -0
  119. package/divider/Divider.test.js +38 -0
  120. package/divider/types.d.ts +21 -0
  121. package/divider/types.js +5 -0
  122. package/dropdown/Dropdown.accessibility.test.js +180 -0
  123. package/dropdown/Dropdown.js +63 -130
  124. package/dropdown/Dropdown.stories.tsx +15 -26
  125. package/dropdown/Dropdown.test.js +402 -389
  126. package/dropdown/DropdownMenu.js +12 -23
  127. package/dropdown/DropdownMenuItem.js +13 -21
  128. package/dropdown/types.d.ts +20 -24
  129. package/file-input/FileInput.accessibility.test.js +160 -0
  130. package/file-input/FileInput.js +180 -284
  131. package/file-input/FileInput.stories.tsx +1 -1
  132. package/file-input/FileInput.test.js +279 -354
  133. package/file-input/FileItem.js +29 -66
  134. package/file-input/types.d.ts +9 -9
  135. package/flex/Flex.js +25 -39
  136. package/flex/types.d.ts +6 -6
  137. package/footer/Footer.accessibility.test.js +125 -0
  138. package/footer/Footer.d.ts +1 -1
  139. package/footer/Footer.js +43 -68
  140. package/footer/Footer.stories.tsx +58 -2
  141. package/footer/Footer.test.js +18 -32
  142. package/footer/Icons.d.ts +3 -2
  143. package/footer/Icons.js +53 -22
  144. package/footer/types.d.ts +17 -17
  145. package/grid/Grid.js +1 -16
  146. package/grid/types.d.ts +10 -10
  147. package/header/Header.accessibility.test.js +93 -0
  148. package/header/Header.d.ts +1 -1
  149. package/header/Header.js +38 -104
  150. package/header/Header.stories.tsx +16 -0
  151. package/header/Header.test.js +12 -25
  152. package/header/Icons.d.ts +2 -2
  153. package/header/Icons.js +3 -13
  154. package/header/types.d.ts +7 -8
  155. package/heading/Heading.accessibility.test.js +33 -0
  156. package/heading/Heading.js +9 -31
  157. package/heading/Heading.test.js +70 -87
  158. package/heading/types.d.ts +7 -7
  159. package/icon/Icon.accessibility.test.js +30 -0
  160. package/icon/Icon.d.ts +4 -0
  161. package/icon/Icon.js +33 -0
  162. package/icon/Icon.stories.tsx +28 -0
  163. package/icon/types.d.ts +4 -0
  164. package/icon/types.js +5 -0
  165. package/image/Image.accessibility.test.js +56 -0
  166. package/image/Image.d.ts +2 -2
  167. package/image/Image.js +17 -32
  168. package/image/Image.stories.tsx +3 -1
  169. package/image/types.d.ts +2 -2
  170. package/inset/Inset.js +13 -21
  171. package/inset/types.d.ts +2 -2
  172. package/layout/ApplicationLayout.d.ts +2 -2
  173. package/layout/ApplicationLayout.js +23 -60
  174. package/layout/Icons.d.ts +4 -5
  175. package/layout/Icons.js +2 -16
  176. package/layout/types.d.ts +3 -3
  177. package/link/Link.accessibility.test.js +108 -0
  178. package/link/Link.js +28 -47
  179. package/link/Link.stories.tsx +4 -4
  180. package/link/Link.test.js +23 -41
  181. package/link/types.d.ts +14 -14
  182. package/main.d.ts +8 -4
  183. package/main.js +39 -60
  184. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  185. package/nav-tabs/NavTabs.d.ts +1 -2
  186. package/nav-tabs/NavTabs.js +19 -48
  187. package/nav-tabs/NavTabs.stories.tsx +30 -25
  188. package/nav-tabs/NavTabs.test.js +45 -50
  189. package/nav-tabs/NavTabsContext.d.ts +3 -0
  190. package/nav-tabs/NavTabsContext.js +8 -0
  191. package/nav-tabs/Tab.js +38 -67
  192. package/nav-tabs/types.d.ts +10 -10
  193. package/number-input/NumberInput.accessibility.test.js +228 -0
  194. package/number-input/NumberInput.d.ts +0 -7
  195. package/number-input/NumberInput.js +47 -39
  196. package/number-input/NumberInput.stories.tsx +42 -26
  197. package/number-input/NumberInput.test.js +839 -575
  198. package/number-input/NumberInputContext.d.ts +3 -0
  199. package/number-input/NumberInputContext.js +8 -0
  200. package/number-input/types.d.ts +17 -5
  201. package/package.json +41 -37
  202. package/paginator/Paginator.accessibility.test.js +79 -0
  203. package/paginator/Paginator.js +27 -52
  204. package/paginator/Paginator.test.js +224 -207
  205. package/paginator/types.d.ts +3 -3
  206. package/paragraph/Paragraph.accessibility.test.js +28 -0
  207. package/paragraph/Paragraph.js +3 -19
  208. package/paragraph/Paragraph.stories.tsx +0 -17
  209. package/password-input/PasswordInput.accessibility.test.js +153 -0
  210. package/password-input/PasswordInput.js +32 -54
  211. package/password-input/PasswordInput.stories.tsx +1 -34
  212. package/password-input/PasswordInput.test.js +153 -129
  213. package/password-input/types.d.ts +8 -7
  214. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  215. package/progress-bar/ProgressBar.js +26 -56
  216. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
  217. package/progress-bar/ProgressBar.test.js +35 -52
  218. package/progress-bar/types.d.ts +3 -3
  219. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  220. package/quick-nav/QuickNav.js +4 -27
  221. package/quick-nav/QuickNav.stories.tsx +1 -1
  222. package/quick-nav/types.d.ts +10 -10
  223. package/radio-group/Radio.d.ts +1 -1
  224. package/radio-group/Radio.js +22 -54
  225. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  226. package/radio-group/RadioGroup.js +38 -83
  227. package/radio-group/RadioGroup.stories.tsx +10 -10
  228. package/radio-group/RadioGroup.test.js +504 -470
  229. package/radio-group/types.d.ts +8 -8
  230. package/resultset-table/Icons.d.ts +7 -0
  231. package/{resultsetTable → resultset-table}/Icons.js +1 -5
  232. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  233. package/resultset-table/ResultsetTable.d.ts +7 -0
  234. package/{resultsetTable → resultset-table}/ResultsetTable.js +45 -69
  235. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +118 -5
  236. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +148 -92
  237. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  238. package/resultset-table/types.js +5 -0
  239. package/select/Listbox.js +40 -54
  240. package/select/Option.js +28 -36
  241. package/select/Select.accessibility.test.js +228 -0
  242. package/select/Select.js +107 -171
  243. package/select/Select.stories.tsx +59 -111
  244. package/select/Select.test.js +1895 -1858
  245. package/select/types.d.ts +15 -16
  246. package/sidenav/Sidenav.accessibility.test.js +59 -0
  247. package/sidenav/Sidenav.js +44 -81
  248. package/sidenav/Sidenav.stories.tsx +4 -9
  249. package/sidenav/Sidenav.test.js +3 -10
  250. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  251. package/{layout → sidenav}/SidenavContext.js +3 -9
  252. package/sidenav/types.d.ts +20 -20
  253. package/slider/Slider.accessibility.test.js +104 -0
  254. package/slider/Slider.js +70 -126
  255. package/slider/Slider.test.js +107 -103
  256. package/slider/types.d.ts +4 -4
  257. package/spinner/Spinner.accessibility.test.js +96 -0
  258. package/spinner/Spinner.js +21 -55
  259. package/spinner/Spinner.test.js +25 -34
  260. package/spinner/types.d.ts +3 -3
  261. package/status-light/StatusLight.accessibility.test.js +157 -0
  262. package/status-light/StatusLight.d.ts +4 -0
  263. package/status-light/StatusLight.js +51 -0
  264. package/status-light/StatusLight.stories.tsx +74 -0
  265. package/status-light/StatusLight.test.js +25 -0
  266. package/status-light/types.d.ts +17 -0
  267. package/status-light/types.js +5 -0
  268. package/switch/Switch.accessibility.test.js +98 -0
  269. package/switch/Switch.js +49 -97
  270. package/switch/Switch.stories.tsx +12 -34
  271. package/switch/Switch.test.js +51 -96
  272. package/switch/types.d.ts +4 -4
  273. package/table/DropdownTheme.js +62 -0
  274. package/table/Table.accessibility.test.js +93 -0
  275. package/table/Table.d.ts +6 -2
  276. package/table/Table.js +76 -33
  277. package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
  278. package/table/Table.test.js +93 -6
  279. package/table/types.d.ts +34 -6
  280. package/tabs/Tab.js +22 -37
  281. package/tabs/Tabs.accessibility.test.js +56 -0
  282. package/tabs/Tabs.js +59 -147
  283. package/tabs/Tabs.stories.tsx +8 -4
  284. package/tabs/Tabs.test.js +57 -131
  285. package/tabs/types.d.ts +21 -21
  286. package/tag/Tag.accessibility.test.js +69 -0
  287. package/tag/Tag.js +27 -57
  288. package/tag/Tag.stories.tsx +4 -7
  289. package/tag/Tag.test.js +17 -36
  290. package/tag/types.d.ts +9 -9
  291. package/text-input/Suggestion.js +9 -26
  292. package/text-input/Suggestions.d.ts +1 -1
  293. package/text-input/Suggestions.js +30 -70
  294. package/text-input/TextInput.accessibility.test.js +321 -0
  295. package/text-input/TextInput.js +203 -289
  296. package/text-input/TextInput.stories.tsx +65 -160
  297. package/text-input/TextInput.test.js +1227 -1194
  298. package/text-input/types.d.ts +25 -17
  299. package/textarea/Textarea.accessibility.test.js +155 -0
  300. package/textarea/Textarea.js +68 -109
  301. package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -100
  302. package/textarea/Textarea.test.js +150 -179
  303. package/textarea/types.d.ts +9 -5
  304. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  305. package/toggle-group/ToggleGroup.js +25 -64
  306. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  307. package/toggle-group/ToggleGroup.test.js +48 -81
  308. package/toggle-group/types.d.ts +12 -12
  309. package/typography/Typography.accessibility.test.js +339 -0
  310. package/typography/Typography.js +4 -13
  311. package/typography/types.d.ts +1 -1
  312. package/useTheme.d.ts +43 -141
  313. package/useTheme.js +1 -8
  314. package/useTranslatedLabels.js +1 -7
  315. package/utils/BaseTypography.d.ts +2 -2
  316. package/utils/BaseTypography.js +16 -30
  317. package/utils/FocusLock.js +25 -39
  318. package/wizard/Wizard.accessibility.test.js +55 -0
  319. package/wizard/Wizard.js +27 -73
  320. package/wizard/Wizard.stories.tsx +19 -0
  321. package/wizard/Wizard.test.js +53 -80
  322. package/wizard/types.d.ts +8 -8
  323. package/common/OpenSans.css +0 -69
  324. package/common/fonts/OpenSans-Bold.ttf +0 -0
  325. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  326. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  327. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  328. package/common/fonts/OpenSans-Italic.ttf +0 -0
  329. package/common/fonts/OpenSans-Light.ttf +0 -0
  330. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  331. package/common/fonts/OpenSans-Regular.ttf +0 -0
  332. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  333. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  334. package/date-input/Icons.d.ts +0 -6
  335. package/date-input/Icons.js +0 -75
  336. package/paginator/Icons.d.ts +0 -5
  337. package/paginator/Icons.js +0 -54
  338. package/password-input/Icons.d.ts +0 -6
  339. package/password-input/Icons.js +0 -39
  340. package/resultsetTable/Icons.d.ts +0 -7
  341. package/resultsetTable/ResultsetTable.d.ts +0 -4
  342. package/select/Icons.d.ts +0 -10
  343. package/select/Icons.js +0 -93
  344. package/sidenav/Icons.d.ts +0 -7
  345. package/sidenav/Icons.js +0 -51
  346. package/slider/Slider.stories.tsx +0 -240
  347. package/text-input/Icons.d.ts +0 -8
  348. package/text-input/Icons.js +0 -60
  349. /package/{resultsetTable → action-icon}/types.js +0 -0
  350. /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
@@ -1,20 +1,15 @@
1
1
  import React from "react";
2
2
  import { userEvent, within } from "@storybook/testing-library";
3
- import { BackgroundColorProvider } from "../BackgroundColorContext";
4
3
  import Title from "../../.storybook/components/Title";
5
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
- import DarkContainer from "../../.storybook/components/DarkSection";
7
5
  import DxcTextInput from "./TextInput";
8
- import DxcButton from "../button/Button";
9
- import DxcCheckbox from "../checkbox/Checkbox";
10
- import DxcFlex from "../flex/Flex";
11
6
  import Suggestions from "./Suggestions";
12
7
  import { ThemeProvider } from "styled-components";
13
8
  import useTheme from "../useTheme";
14
9
  import { HalstackProvider } from "../HalstackContext";
15
10
 
16
11
  export default {
17
- title: "Text input",
12
+ title: "Text Input",
18
13
  component: DxcTextInput,
19
14
  };
20
15
 
@@ -26,21 +21,30 @@ const action = {
26
21
  <path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" />
27
22
  </svg>
28
23
  ),
24
+ title: "Copy",
29
25
  };
30
26
 
31
27
  const actionLargeIconSVG = {
32
28
  onClick: () => {},
33
29
  icon: (
34
- <svg xmlns="http://www.w3.org/2000/svg" height="48px" viewBox="0 0 24 24" width="48px" fill="currentColor">
30
+ <svg
31
+ xmlns="http://www.w3.org/2000/svg"
32
+ height="48px"
33
+ viewBox="0 0 24 24"
34
+ width="48px"
35
+ fill="currentColor"
36
+ >
35
37
  <path d="M0 0h24v24H0V0z" fill="none" />
36
38
  <path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z" />
37
39
  </svg>
38
40
  ),
41
+ title: "Clock",
39
42
  };
40
43
 
41
44
  const actionLargeIconURL = {
42
45
  onClick: () => {},
43
- icon: "https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png",
46
+ icon: "search",
47
+ title: "Search",
44
48
  };
45
49
 
46
50
  const country = ["Afghanistan"];
@@ -48,9 +52,9 @@ const countries = [
48
52
  "Afghanistan",
49
53
  "Albania",
50
54
  "Algeria",
51
- "Andorra Andorra Andorra Andorra Andorra Andorra Andorra Andorra",
55
+ "Andorra",
52
56
  "Angola",
53
- "Antigua and Barbuda Antigua and Barbuda Antigua and Barbuda",
57
+ "Antigua and Barbuda",
54
58
  "Bahamas",
55
59
  "Bahrain",
56
60
  "Bangladesh",
@@ -67,7 +71,6 @@ const countries = [
67
71
  "Dominica",
68
72
  "Denmark",
69
73
  "Djibouti",
70
- "*",
71
74
  ];
72
75
 
73
76
  const opinionatedTheme = {
@@ -186,94 +189,45 @@ export const Chromatic = () => (
186
189
  action={action}
187
190
  />
188
191
  </ExampleContainer>
189
- <BackgroundColorProvider color="#333333">
190
- <DarkContainer>
191
- <Title title="Dark theme" theme="dark" level={2} />
192
- <ExampleContainer pseudoState="pseudo-hover">
193
- <Title title="Hovered" theme="dark" level={4} />
194
- <DxcTextInput label="Text input" />
195
- </ExampleContainer>
196
- <ExampleContainer pseudoState="pseudo-focus-within">
197
- <Title title="Focused" theme="dark" level={4} />
198
- <DxcTextInput label="Text input" />
199
- </ExampleContainer>
200
- <ExampleContainer pseudoState="pseudo-hover">
201
- <Title title="Hovered action" theme="dark" level={4} />
202
- <DxcTextInput label="Text input" defaultValue="Text" clearable />
203
- </ExampleContainer>
204
- <ExampleContainer pseudoState="pseudo-active">
205
- <Title title="Actived action" theme="dark" level={4} />
206
- <DxcTextInput label="Text input" action={action} clearable />
207
- </ExampleContainer>
208
- <ExampleContainer pseudoState="pseudo-focus">
209
- <Title title="Focused action" theme="dark" level={4} />
210
- <DxcTextInput label="Text input" action={action} clearable />
211
- </ExampleContainer>
212
- <ExampleContainer>
213
- <Title title="Helper text, placeholder, optional and action" theme="dark" level={4} />
214
- <DxcTextInput
215
- label="Text input"
216
- helperText="Help message"
217
- placeholder="Placeholder"
218
- clearable
219
- optional
220
- action={action}
221
- />
222
- </ExampleContainer>
223
- <ExampleContainer>
224
- <Title title="Invalid" theme="dark" level={4} />
225
- <DxcTextInput
226
- label="Error text input"
227
- helperText="Help message"
228
- error="Error message."
229
- defaultValue="Text"
230
- clearable
231
- action={action}
232
- />
233
- </ExampleContainer>
234
- <ExampleContainer pseudoState="pseudo-hover">
235
- <Title title="Invalid and hovered" theme="dark" level={4} />
236
- <DxcTextInput
237
- label="Error text input"
238
- helperText="Help message"
239
- placeholder="Placeholder"
240
- error="Error message."
241
- />
242
- </ExampleContainer>
243
- <ExampleContainer>
244
- <Title title="Prefix and suffix" theme="dark" level={4} />
245
- <DxcTextInput label="With prefix and suffix" prefix="+34" suffix="USD" />
246
- </ExampleContainer>
247
- <ExampleContainer>
248
- <Title title="Disabled and placeholder" theme="dark" level={4} />
249
- <DxcTextInput label="Disabled text input" disabled placeholder="Placeholder" />
250
- </ExampleContainer>
251
- <ExampleContainer>
252
- <Title title="Disabled, helper text, optional, value and action" theme="dark" level={4} />
253
- <DxcTextInput
254
- label="Disabled text input"
255
- helperText="Help message"
256
- disabled
257
- optional
258
- defaultValue="Text"
259
- action={action}
260
- />
261
- </ExampleContainer>
262
- <ExampleContainer>
263
- <Title title="Disabled with prefix and suffix" theme="dark" level={4} />
264
- <DxcTextInput
265
- label="Disabled text input"
266
- helperText="Help message"
267
- disabled
268
- optional
269
- prefix="+34"
270
- suffix="USD"
271
- defaultValue="Text"
272
- action={action}
273
- />
274
- </ExampleContainer>
275
- </DarkContainer>
276
- </BackgroundColorProvider>
192
+ <ExampleContainer>
193
+ <Title title="Read only" theme="light" level={4} />
194
+ <DxcTextInput
195
+ label="Example label"
196
+ helperText="Help message"
197
+ clearable
198
+ readOnly
199
+ optional
200
+ prefix="+34"
201
+ defaultValue="Text"
202
+ action={action}
203
+ />
204
+ </ExampleContainer>
205
+ <ExampleContainer pseudoState="pseudo-hover">
206
+ <Title title="Hovered read only" theme="light" level={4} />
207
+ <DxcTextInput
208
+ label="Example label"
209
+ helperText="Help message"
210
+ clearable
211
+ readOnly
212
+ optional
213
+ prefix="+34"
214
+ defaultValue="Text"
215
+ action={action}
216
+ />
217
+ </ExampleContainer>
218
+ <ExampleContainer pseudoState="pseudo-active">
219
+ <Title title="Active read only" theme="light" level={4} />
220
+ <DxcTextInput
221
+ label="Example label"
222
+ helperText="Help message"
223
+ clearable
224
+ readOnly
225
+ optional
226
+ prefix="+34"
227
+ defaultValue="Text"
228
+ action={action}
229
+ />
230
+ </ExampleContainer>
277
231
  <Title title="Margins" theme="light" level={2} />
278
232
  <ExampleContainer>
279
233
  <Title title="Xxsmall margin" theme="light" level={4} />
@@ -426,7 +380,7 @@ const AutosuggestListbox = () => {
426
380
  <ExampleContainer pseudoState="pseudo-hover">
427
381
  <Title title="Hovered suggestion" theme="light" level={4} />
428
382
  <Suggestions
429
- id="x"
383
+ id="x1"
430
384
  value=""
431
385
  suggestions={country}
432
386
  visualFocusIndex={-1}
@@ -434,13 +388,13 @@ const AutosuggestListbox = () => {
434
388
  searchHasErrors={false}
435
389
  isSearching={false}
436
390
  suggestionOnClick={() => {}}
437
- getTextInputWidth={() => 350}
391
+ styles={{ width: 350 }}
438
392
  />
439
393
  </ExampleContainer>
440
394
  <ExampleContainer pseudoState="pseudo-active">
441
395
  <Title title="Active suggestion" theme="light" level={4} />
442
396
  <Suggestions
443
- id="x"
397
+ id="x2"
444
398
  value=""
445
399
  suggestions={country}
446
400
  visualFocusIndex={-1}
@@ -448,13 +402,13 @@ const AutosuggestListbox = () => {
448
402
  searchHasErrors={false}
449
403
  isSearching={false}
450
404
  suggestionOnClick={(suggestion) => {}}
451
- getTextInputWidth={() => 350}
405
+ styles={{ width: 350 }}
452
406
  />
453
407
  </ExampleContainer>
454
408
  <ExampleContainer>
455
409
  <Title title="Focused suggestion" theme="light" level={4} />
456
410
  <Suggestions
457
- id="x"
411
+ id="x3"
458
412
  value=""
459
413
  suggestions={country}
460
414
  visualFocusIndex={0}
@@ -462,13 +416,13 @@ const AutosuggestListbox = () => {
462
416
  searchHasErrors={false}
463
417
  isSearching={false}
464
418
  suggestionOnClick={(suggestion) => {}}
465
- getTextInputWidth={() => 350}
419
+ styles={{ width: 350 }}
466
420
  />
467
421
  </ExampleContainer>
468
422
  <ExampleContainer>
469
423
  <Title title="Highlighted suggestion" theme="light" level={4} />
470
424
  <Suggestions
471
- id="x"
425
+ id="x4"
472
426
  value="Afgh"
473
427
  suggestions={country}
474
428
  visualFocusIndex={-1}
@@ -476,14 +430,14 @@ const AutosuggestListbox = () => {
476
430
  searchHasErrors={false}
477
431
  isSearching={false}
478
432
  suggestionOnClick={(suggestion) => {}}
479
- getTextInputWidth={() => 350}
433
+ styles={{ width: 350 }}
480
434
  />
481
435
  </ExampleContainer>
482
436
  </ExampleContainer>
483
437
  <ExampleContainer>
484
438
  <Title title="Autosuggest Error" theme="light" level={3} />
485
439
  <Suggestions
486
- id="x"
440
+ id="x5"
487
441
  value=""
488
442
  suggestions={country}
489
443
  visualFocusIndex={-1}
@@ -491,13 +445,13 @@ const AutosuggestListbox = () => {
491
445
  searchHasErrors={true}
492
446
  isSearching={false}
493
447
  suggestionOnClick={(suggestion) => {}}
494
- getTextInputWidth={() => 350}
448
+ styles={{ width: 350 }}
495
449
  />
496
450
  </ExampleContainer>
497
451
  <ExampleContainer>
498
452
  <Title title="Autosuggest Searching message" theme="light" level={3} />
499
453
  <Suggestions
500
- id="x"
454
+ id="x6"
501
455
  value=""
502
456
  suggestions={country}
503
457
  visualFocusIndex={-1}
@@ -505,65 +459,16 @@ const AutosuggestListbox = () => {
505
459
  searchHasErrors={false}
506
460
  isSearching={true}
507
461
  suggestionOnClick={(suggestion) => {}}
508
- getTextInputWidth={() => 350}
462
+ styles={{ width: 350 }}
509
463
  />
510
464
  </ExampleContainer>
511
465
  </ThemeProvider>
512
466
  );
513
467
  };
514
468
 
515
- const DarkAutosuggestListbox = () => {
516
- const colorsTheme: any = useTheme();
517
-
518
- return (
519
- <ThemeProvider theme={colorsTheme.textInput}>
520
- <BackgroundColorProvider color="#333333">
521
- <DarkContainer>
522
- <Title title="Dark theme" theme="dark" level={2} />
523
- <ExampleContainer>
524
- <Title title="Default with opened suggestions" theme="dark" level={3} />
525
- <DxcFlex direction="column" gap="5rem">
526
- <DxcTextInput label="Label" suggestions={countries} optional placeholder="Choose an option" />
527
- <DxcCheckbox
528
- label="You understand the selection and give your consent"
529
- onChange={() => {}}
530
- labelPosition="after"
531
- />
532
- <DxcButton label="Submit" onClick={() => {}} size="medium" margin={{ bottom: "xxlarge" }} />
533
- </DxcFlex>
534
- </ExampleContainer>
535
- <ExampleContainer>
536
- <Title title="Autosuggest Error" theme="dark" level={3} />
537
- <div style={{ height: "100px" }}>
538
- <Suggestions
539
- id="x"
540
- value=""
541
- suggestions={country}
542
- visualFocusIndex={-1}
543
- highlightedSuggestions={false}
544
- searchHasErrors={true}
545
- isSearching={false}
546
- suggestionOnClick={(suggestion) => {}}
547
- getTextInputWidth={() => 350}
548
- />
549
- </div>
550
- </ExampleContainer>
551
- </DarkContainer>
552
- </BackgroundColorProvider>
553
- </ThemeProvider>
554
- );
555
- };
556
-
557
469
  export const AutosuggestListboxStates = AutosuggestListbox.bind({});
558
470
  AutosuggestListboxStates.play = async ({ canvasElement }) => {
559
471
  const canvas = within(canvasElement);
560
472
  const select = canvas.getByRole("combobox");
561
473
  await userEvent.click(select);
562
474
  };
563
-
564
- export const AutosuggestListboxOnDark = DarkAutosuggestListbox.bind({});
565
- AutosuggestListboxOnDark.play = async ({ canvasElement }) => {
566
- const canvas = within(canvasElement);
567
- const select = canvas.getByRole("combobox");
568
- await userEvent.click(select);
569
- };