@dxc-technology/halstack-react 11.0.0 → 12.0.1

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 (386) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +3 -8
  3. package/HalstackContext.d.ts +32 -145
  4. package/HalstackContext.js +3 -7
  5. package/accordion/Accordion.accessibility.test.d.ts +1 -0
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.js +18 -35
  8. package/accordion/Accordion.stories.tsx +7 -49
  9. package/accordion/Accordion.test.d.ts +1 -0
  10. package/accordion/Accordion.test.js +3 -3
  11. package/accordion/types.d.ts +1 -1
  12. package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
  13. package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
  14. package/accordion-group/AccordionGroup.d.ts +2 -3
  15. package/accordion-group/AccordionGroup.js +4 -4
  16. package/accordion-group/AccordionGroup.stories.tsx +23 -23
  17. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  18. package/accordion-group/AccordionGroup.test.js +5 -9
  19. package/accordion-group/AccordionGroupAccordion.js +3 -3
  20. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  21. package/accordion-group/AccordionGroupContext.js +8 -0
  22. package/accordion-group/types.d.ts +1 -1
  23. package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
  24. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  25. package/action-icon/ActionIcon.d.ts +4 -0
  26. package/action-icon/ActionIcon.js +48 -0
  27. package/action-icon/ActionIcon.stories.tsx +41 -0
  28. package/action-icon/ActionIcon.test.d.ts +1 -0
  29. package/action-icon/ActionIcon.test.js +64 -0
  30. package/action-icon/types.d.ts +26 -0
  31. package/action-icon/types.js +5 -0
  32. package/alert/Alert.accessibility.test.d.ts +1 -0
  33. package/alert/Alert.accessibility.test.js +95 -0
  34. package/alert/Alert.js +21 -75
  35. package/alert/Alert.test.d.ts +1 -0
  36. package/alert/Alert.test.js +1 -1
  37. package/badge/Badge.accessibility.test.d.ts +1 -0
  38. package/badge/Badge.accessibility.test.js +129 -0
  39. package/badge/Badge.d.ts +1 -1
  40. package/badge/Badge.js +141 -28
  41. package/badge/Badge.stories.tsx +210 -0
  42. package/badge/Badge.test.d.ts +1 -0
  43. package/badge/Badge.test.js +30 -0
  44. package/badge/types.d.ts +52 -3
  45. package/box/Box.accessibility.test.d.ts +1 -0
  46. package/box/Box.accessibility.test.js +33 -0
  47. package/box/Box.js +2 -5
  48. package/box/Box.test.d.ts +1 -0
  49. package/box/Box.test.js +1 -1
  50. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  51. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  52. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  53. package/breadcrumbs/Breadcrumbs.js +79 -0
  54. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  55. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  56. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  57. package/breadcrumbs/Item.d.ts +4 -0
  58. package/breadcrumbs/Item.js +52 -0
  59. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  60. package/breadcrumbs/dropdownTheme.js +62 -0
  61. package/breadcrumbs/types.d.ts +16 -0
  62. package/breadcrumbs/types.js +5 -0
  63. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  64. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  65. package/bulleted-list/BulletedList.js +16 -23
  66. package/bulleted-list/BulletedList.stories.tsx +1 -2
  67. package/button/Button.accessibility.test.d.ts +1 -0
  68. package/button/Button.accessibility.test.js +127 -0
  69. package/button/Button.js +16 -16
  70. package/button/Button.stories.tsx +34 -53
  71. package/button/Button.test.d.ts +1 -0
  72. package/button/Button.test.js +4 -2
  73. package/button/types.d.ts +1 -1
  74. package/card/Card.accessibility.test.d.ts +1 -0
  75. package/card/Card.accessibility.test.js +36 -0
  76. package/card/Card.js +3 -2
  77. package/card/Card.test.d.ts +1 -0
  78. package/card/Card.test.js +1 -1
  79. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  80. package/checkbox/Checkbox.accessibility.test.js +87 -0
  81. package/checkbox/Checkbox.js +36 -44
  82. package/checkbox/Checkbox.test.d.ts +1 -0
  83. package/checkbox/Checkbox.test.js +1 -1
  84. package/chip/Chip.accessibility.test.d.ts +1 -0
  85. package/chip/Chip.accessibility.test.js +69 -0
  86. package/chip/Chip.js +20 -26
  87. package/chip/Chip.stories.tsx +67 -50
  88. package/chip/Chip.test.d.ts +1 -0
  89. package/chip/Chip.test.js +5 -5
  90. package/chip/types.d.ts +35 -12
  91. package/common/coreTokens.d.ts +105 -14
  92. package/common/coreTokens.js +40 -22
  93. package/common/fonts.css +2 -0
  94. package/common/variables.d.ts +31 -141
  95. package/common/variables.js +104 -214
  96. package/container/Container.d.ts +4 -0
  97. package/container/Container.js +194 -0
  98. package/container/Container.stories.tsx +214 -0
  99. package/container/types.d.ts +74 -0
  100. package/container/types.js +5 -0
  101. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  102. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  103. package/contextual-menu/ContextualMenu.d.ts +5 -0
  104. package/contextual-menu/ContextualMenu.js +88 -0
  105. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  106. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  107. package/contextual-menu/ContextualMenu.test.js +205 -0
  108. package/contextual-menu/GroupItem.d.ts +4 -0
  109. package/contextual-menu/GroupItem.js +67 -0
  110. package/contextual-menu/ItemAction.d.ts +4 -0
  111. package/contextual-menu/ItemAction.js +51 -0
  112. package/contextual-menu/MenuItem.d.ts +4 -0
  113. package/contextual-menu/MenuItem.js +29 -0
  114. package/contextual-menu/SingleItem.d.ts +4 -0
  115. package/contextual-menu/SingleItem.js +38 -0
  116. package/contextual-menu/types.d.ts +58 -0
  117. package/contextual-menu/types.js +5 -0
  118. package/date-input/Calendar.js +1 -1
  119. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  120. package/date-input/DateInput.accessibility.test.js +230 -0
  121. package/date-input/DateInput.js +19 -20
  122. package/date-input/DateInput.stories.tsx +15 -8
  123. package/date-input/DateInput.test.d.ts +1 -0
  124. package/date-input/DateInput.test.js +9 -8
  125. package/date-input/DatePicker.js +13 -7
  126. package/date-input/YearPicker.js +1 -1
  127. package/date-input/types.d.ts +2 -2
  128. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  129. package/dialog/Dialog.accessibility.test.js +69 -0
  130. package/dialog/Dialog.js +11 -25
  131. package/dialog/Dialog.stories.tsx +175 -0
  132. package/dialog/Dialog.test.d.ts +1 -0
  133. package/dialog/Dialog.test.js +113 -49
  134. package/divider/Divider.accessibility.test.d.ts +1 -0
  135. package/divider/Divider.accessibility.test.js +33 -0
  136. package/divider/Divider.d.ts +4 -0
  137. package/divider/Divider.js +36 -0
  138. package/divider/Divider.stories.tsx +223 -0
  139. package/divider/Divider.test.d.ts +1 -0
  140. package/divider/Divider.test.js +38 -0
  141. package/divider/types.d.ts +21 -0
  142. package/divider/types.js +5 -0
  143. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  144. package/dropdown/Dropdown.accessibility.test.js +184 -0
  145. package/dropdown/Dropdown.js +37 -51
  146. package/dropdown/Dropdown.stories.tsx +15 -26
  147. package/dropdown/Dropdown.test.d.ts +1 -0
  148. package/dropdown/Dropdown.test.js +100 -70
  149. package/dropdown/DropdownMenu.js +4 -4
  150. package/dropdown/DropdownMenuItem.js +8 -4
  151. package/dropdown/types.d.ts +3 -5
  152. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  153. package/file-input/FileInput.accessibility.test.js +167 -0
  154. package/file-input/FileInput.js +127 -145
  155. package/file-input/FileInput.test.d.ts +1 -0
  156. package/file-input/FileInput.test.js +125 -129
  157. package/file-input/FileItem.js +18 -28
  158. package/file-input/types.d.ts +1 -1
  159. package/footer/Footer.accessibility.test.d.ts +1 -0
  160. package/footer/Footer.accessibility.test.js +125 -0
  161. package/footer/Footer.d.ts +1 -1
  162. package/footer/Footer.js +36 -31
  163. package/footer/Footer.stories.tsx +58 -2
  164. package/footer/Footer.test.d.ts +1 -0
  165. package/footer/Footer.test.js +1 -1
  166. package/footer/Icons.d.ts +1 -0
  167. package/footer/Icons.js +52 -16
  168. package/footer/types.d.ts +8 -8
  169. package/header/Header.accessibility.test.d.ts +1 -0
  170. package/header/Header.accessibility.test.js +94 -0
  171. package/header/Header.js +20 -41
  172. package/header/Header.stories.tsx +16 -0
  173. package/header/Header.test.d.ts +1 -0
  174. package/header/Header.test.js +1 -1
  175. package/header/Icons.js +1 -6
  176. package/header/types.d.ts +4 -3
  177. package/heading/Heading.accessibility.test.d.ts +1 -0
  178. package/heading/Heading.accessibility.test.js +33 -0
  179. package/heading/Heading.js +1 -1
  180. package/heading/Heading.test.d.ts +1 -0
  181. package/heading/Heading.test.js +1 -14
  182. package/icon/Icon.accessibility.test.d.ts +1 -0
  183. package/icon/Icon.accessibility.test.js +30 -0
  184. package/icon/Icon.d.ts +4 -0
  185. package/icon/Icon.js +33 -0
  186. package/icon/Icon.stories.tsx +28 -0
  187. package/icon/types.d.ts +4 -0
  188. package/icon/types.js +5 -0
  189. package/image/Image.accessibility.test.d.ts +1 -0
  190. package/image/Image.accessibility.test.js +56 -0
  191. package/image/Image.js +1 -1
  192. package/image/Image.stories.tsx +3 -1
  193. package/layout/ApplicationLayout.d.ts +1 -1
  194. package/layout/ApplicationLayout.js +10 -7
  195. package/layout/Icons.d.ts +0 -1
  196. package/layout/Icons.js +1 -11
  197. package/link/Link.accessibility.test.d.ts +1 -0
  198. package/link/Link.accessibility.test.js +108 -0
  199. package/link/Link.js +8 -6
  200. package/link/Link.stories.tsx +4 -4
  201. package/link/Link.test.d.ts +1 -0
  202. package/link/Link.test.js +1 -1
  203. package/link/types.d.ts +1 -1
  204. package/main.d.ts +8 -3
  205. package/main.js +38 -9
  206. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  207. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  208. package/nav-tabs/NavTabs.d.ts +1 -2
  209. package/nav-tabs/NavTabs.js +25 -7
  210. package/nav-tabs/NavTabs.stories.tsx +44 -24
  211. package/nav-tabs/NavTabs.test.d.ts +1 -0
  212. package/nav-tabs/NavTabs.test.js +12 -10
  213. package/nav-tabs/NavTabsContext.d.ts +3 -0
  214. package/nav-tabs/NavTabsContext.js +8 -0
  215. package/nav-tabs/Tab.js +23 -23
  216. package/nav-tabs/types.d.ts +1 -1
  217. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  218. package/number-input/NumberInput.accessibility.test.js +228 -0
  219. package/number-input/NumberInput.d.ts +0 -7
  220. package/number-input/NumberInput.js +24 -5
  221. package/number-input/NumberInput.test.d.ts +1 -0
  222. package/number-input/NumberInput.test.js +166 -7
  223. package/number-input/NumberInputContext.d.ts +3 -0
  224. package/number-input/NumberInputContext.js +8 -0
  225. package/number-input/types.d.ts +6 -0
  226. package/package.json +20 -18
  227. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  228. package/paginator/Paginator.accessibility.test.js +79 -0
  229. package/paginator/Paginator.js +14 -14
  230. package/paginator/Paginator.test.d.ts +1 -0
  231. package/paginator/Paginator.test.js +1 -1
  232. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  233. package/paragraph/Paragraph.accessibility.test.js +28 -0
  234. package/paragraph/Paragraph.js +2 -7
  235. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  236. package/password-input/PasswordInput.accessibility.test.js +153 -0
  237. package/password-input/PasswordInput.js +7 -7
  238. package/password-input/PasswordInput.stories.tsx +0 -1
  239. package/password-input/PasswordInput.test.d.ts +1 -0
  240. package/password-input/PasswordInput.test.js +5 -5
  241. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  242. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  243. package/progress-bar/ProgressBar.js +11 -15
  244. package/progress-bar/ProgressBar.test.d.ts +1 -0
  245. package/progress-bar/ProgressBar.test.js +1 -1
  246. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  247. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  248. package/quick-nav/QuickNav.js +1 -1
  249. package/radio-group/Radio.js +6 -9
  250. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  251. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  252. package/radio-group/RadioGroup.js +15 -17
  253. package/radio-group/RadioGroup.test.d.ts +1 -0
  254. package/radio-group/RadioGroup.test.js +3 -5
  255. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  256. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  257. package/resultset-table/ResultsetTable.d.ts +4 -1
  258. package/resultset-table/ResultsetTable.js +25 -13
  259. package/resultset-table/ResultsetTable.stories.tsx +118 -5
  260. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  261. package/resultset-table/ResultsetTable.test.js +76 -1
  262. package/resultset-table/types.d.ts +40 -7
  263. package/select/Listbox.js +24 -16
  264. package/select/Option.js +19 -10
  265. package/select/Select.accessibility.test.d.ts +1 -0
  266. package/select/Select.accessibility.test.js +228 -0
  267. package/select/Select.js +72 -54
  268. package/select/Select.stories.tsx +59 -111
  269. package/select/Select.test.d.ts +1 -0
  270. package/select/Select.test.js +393 -459
  271. package/select/types.d.ts +3 -3
  272. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  273. package/sidenav/Sidenav.accessibility.test.js +59 -0
  274. package/sidenav/Sidenav.js +21 -19
  275. package/sidenav/Sidenav.stories.tsx +4 -9
  276. package/sidenav/Sidenav.test.d.ts +1 -0
  277. package/sidenav/Sidenav.test.js +1 -1
  278. package/sidenav/types.d.ts +2 -2
  279. package/slider/Slider.accessibility.test.d.ts +1 -0
  280. package/slider/Slider.accessibility.test.js +104 -0
  281. package/slider/Slider.js +31 -42
  282. package/slider/Slider.stories.tsx +180 -0
  283. package/slider/Slider.test.d.ts +1 -0
  284. package/slider/Slider.test.js +12 -9
  285. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  286. package/spinner/Spinner.accessibility.test.js +96 -0
  287. package/spinner/Spinner.js +12 -16
  288. package/spinner/Spinner.test.d.ts +1 -0
  289. package/spinner/Spinner.test.js +1 -1
  290. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  291. package/status-light/StatusLight.accessibility.test.js +157 -0
  292. package/status-light/StatusLight.d.ts +4 -0
  293. package/status-light/StatusLight.js +51 -0
  294. package/status-light/StatusLight.stories.tsx +74 -0
  295. package/status-light/StatusLight.test.d.ts +1 -0
  296. package/status-light/StatusLight.test.js +25 -0
  297. package/status-light/types.d.ts +17 -0
  298. package/status-light/types.js +5 -0
  299. package/switch/Switch.accessibility.test.d.ts +1 -0
  300. package/switch/Switch.accessibility.test.js +98 -0
  301. package/switch/Switch.js +29 -37
  302. package/switch/Switch.stories.tsx +12 -0
  303. package/switch/Switch.test.d.ts +1 -0
  304. package/switch/Switch.test.js +1 -1
  305. package/table/DropdownTheme.js +62 -0
  306. package/table/Table.accessibility.test.d.ts +1 -0
  307. package/table/Table.accessibility.test.js +93 -0
  308. package/table/Table.d.ts +6 -2
  309. package/table/Table.js +74 -12
  310. package/table/Table.stories.tsx +309 -2
  311. package/table/Table.test.d.ts +1 -0
  312. package/table/Table.test.js +92 -1
  313. package/table/types.d.ts +28 -0
  314. package/tabs/Tab.js +13 -9
  315. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  316. package/tabs/Tabs.accessibility.test.js +56 -0
  317. package/tabs/Tabs.js +12 -24
  318. package/tabs/Tabs.stories.tsx +8 -4
  319. package/tabs/Tabs.test.d.ts +1 -0
  320. package/tabs/Tabs.test.js +20 -38
  321. package/tabs/types.d.ts +2 -2
  322. package/tag/Tag.accessibility.test.d.ts +1 -0
  323. package/tag/Tag.accessibility.test.js +69 -0
  324. package/tag/Tag.js +7 -7
  325. package/tag/Tag.stories.tsx +4 -7
  326. package/tag/Tag.test.d.ts +1 -0
  327. package/tag/Tag.test.js +5 -13
  328. package/tag/types.d.ts +2 -2
  329. package/text-input/Suggestion.js +1 -1
  330. package/text-input/Suggestions.js +19 -14
  331. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  332. package/text-input/TextInput.accessibility.test.js +321 -0
  333. package/text-input/TextInput.js +103 -126
  334. package/text-input/TextInput.stories.tsx +17 -8
  335. package/text-input/TextInput.test.d.ts +1 -0
  336. package/text-input/TextInput.test.js +97 -80
  337. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  338. package/textarea/Textarea.accessibility.test.js +155 -0
  339. package/textarea/Textarea.js +13 -21
  340. package/textarea/Textarea.stories.tsx +0 -1
  341. package/textarea/Textarea.test.d.ts +1 -0
  342. package/textarea/Textarea.test.js +1 -1
  343. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  344. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  345. package/toggle-group/ToggleGroup.js +11 -16
  346. package/toggle-group/ToggleGroup.stories.tsx +3 -3
  347. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  348. package/toggle-group/ToggleGroup.test.js +1 -1
  349. package/toggle-group/types.d.ts +2 -2
  350. package/typography/Typography.accessibility.test.d.ts +1 -0
  351. package/typography/Typography.accessibility.test.js +339 -0
  352. package/useTheme.d.ts +31 -141
  353. package/utils/BaseTypography.js +1 -1
  354. package/utils/FocusLock.js +16 -6
  355. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  356. package/wizard/Wizard.accessibility.test.js +55 -0
  357. package/wizard/Wizard.js +14 -25
  358. package/wizard/Wizard.stories.tsx +19 -0
  359. package/wizard/Wizard.test.d.ts +1 -0
  360. package/wizard/Wizard.test.js +1 -1
  361. package/wizard/types.d.ts +2 -2
  362. package/common/OpenSans.css +0 -69
  363. package/common/fonts/OpenSans-Bold.ttf +0 -0
  364. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  365. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  366. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  367. package/common/fonts/OpenSans-Italic.ttf +0 -0
  368. package/common/fonts/OpenSans-Light.ttf +0 -0
  369. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  370. package/common/fonts/OpenSans-Regular.ttf +0 -0
  371. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  372. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  373. package/date-input/Icons.d.ts +0 -6
  374. package/date-input/Icons.js +0 -58
  375. package/paginator/Icons.d.ts +0 -5
  376. package/paginator/Icons.js +0 -40
  377. package/password-input/Icons.d.ts +0 -6
  378. package/password-input/Icons.js +0 -35
  379. package/select/Icons.d.ts +0 -10
  380. package/select/Icons.js +0 -89
  381. package/sidenav/Icons.d.ts +0 -7
  382. package/sidenav/Icons.js +0 -47
  383. package/text-input/Icons.d.ts +0 -8
  384. package/text-input/Icons.js +0 -56
  385. /package/{layout → sidenav}/SidenavContext.d.ts +0 -0
  386. /package/{layout → sidenav}/SidenavContext.js +0 -0
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _Divider = _interopRequireDefault(require("./Divider"));
7
+ describe("Divider Component", function () {
8
+ test("Default renders horizontal divider correctly", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Divider["default"], null)),
10
+ container = _render.container;
11
+ var divider = container.querySelector("hr");
12
+ expect(divider.getAttribute("aria-orientation")).toBe("horizontal");
13
+ });
14
+ test("Renders vertical divider correctly", function () {
15
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Divider["default"], {
16
+ orientation: "vertical"
17
+ })),
18
+ container = _render2.container;
19
+ var divider = container.querySelector("hr");
20
+ expect(divider.getAttribute("aria-orientation")).toBe("vertical");
21
+ });
22
+ test("Renders divider as a decorative resource by default", function () {
23
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Divider["default"], null)),
24
+ container = _render3.container;
25
+ var divider = container.querySelector("hr");
26
+ expect(divider).toBeTruthy();
27
+ expect(divider.getAttribute("aria-hidden")).toBe("true");
28
+ });
29
+ test("Renders divider as a separator if it is not decorative", function () {
30
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Divider["default"], {
31
+ decorative: false
32
+ })),
33
+ getByRole = _render4.getByRole;
34
+ var divider = getByRole("separator");
35
+ expect(divider).toBeTruthy();
36
+ expect(divider.getAttribute("aria-hidden")).toBe("false");
37
+ });
38
+ });
@@ -0,0 +1,21 @@
1
+ type Props = {
2
+ /**
3
+ * The divider can be shown in horizontal or vertical.
4
+ */
5
+ orientation?: "horizontal" | "vertical";
6
+ /**
7
+ * Modifies the thickness of the divider.
8
+ */
9
+ weight?: "regular" | "strong";
10
+ /**
11
+ * Modifies the color of the divider.
12
+ */
13
+ color?: "lightGrey" | "mediumGrey" | "darkGrey";
14
+ /**
15
+ * Specifies whether the divider serves a purely decorative purpose
16
+ * or functions as a semantic separator for content. Additionally, it
17
+ * determines whether the divider is accessible to screen readers.
18
+ */
19
+ decorative?: boolean;
20
+ };
21
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,184 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
7
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _react2 = require("@testing-library/react");
10
+ var _axeHelper = require("../../test/accessibility/axe-helper.js");
11
+ var _Dropdown = _interopRequireDefault(require("./Dropdown"));
12
+ var iconSVG = /*#__PURE__*/_react["default"].createElement("svg", {
13
+ viewBox: "0 0 24 24",
14
+ height: "24",
15
+ width: "24",
16
+ fill: "currentColor"
17
+ }, /*#__PURE__*/_react["default"].createElement("path", {
18
+ d: "M0 0h24v24H0z",
19
+ fill: "none"
20
+ }), /*#__PURE__*/_react["default"].createElement("path", {
21
+ d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"
22
+ }));
23
+ var iconUrl = "https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png";
24
+
25
+ // Mocking DOMRect for Radix Primitive Popover
26
+ global.globalThis = global;
27
+ global.DOMRect = {
28
+ fromRect: function fromRect() {
29
+ return {
30
+ top: 0,
31
+ left: 0,
32
+ bottom: 0,
33
+ right: 0,
34
+ width: 0,
35
+ height: 0
36
+ };
37
+ }
38
+ };
39
+ global.ResizeObserver = /*#__PURE__*/function () {
40
+ function ResizeObserver() {
41
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
42
+ }
43
+ (0, _createClass2["default"])(ResizeObserver, [{
44
+ key: "observe",
45
+ value: function observe() {}
46
+ }, {
47
+ key: "unobserve",
48
+ value: function unobserve() {}
49
+ }, {
50
+ key: "disconnect",
51
+ value: function disconnect() {}
52
+ }]);
53
+ return ResizeObserver;
54
+ }();
55
+ var options = [{
56
+ value: "1",
57
+ label: "Amazon",
58
+ icon: iconUrl
59
+ }, {
60
+ value: "2",
61
+ label: "Ebay",
62
+ icon: iconUrl
63
+ }, {
64
+ value: "3",
65
+ label: "Wallapop",
66
+ icon: iconSVG
67
+ }, {
68
+ value: "4",
69
+ label: "Aliexpress",
70
+ icon: iconSVG
71
+ }];
72
+ describe("Dropdown component accessibility tests", function () {
73
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
74
+ var _render, baseElement, results;
75
+ return _regenerator["default"].wrap(function _callee$(_context) {
76
+ while (1) switch (_context.prev = _context.next) {
77
+ case 0:
78
+ // baseElement is needed when using React Portals
79
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], {
80
+ options: options,
81
+ label: "dropdown-test",
82
+ icon: iconSVG,
83
+ iconPosition: "before",
84
+ margin: "medium",
85
+ size: "medium",
86
+ optionsIconPosition: "before",
87
+ onSelectOption: function onSelectOption() {}
88
+ })), baseElement = _render.baseElement;
89
+ _context.next = 3;
90
+ return (0, _axeHelper.axe)(baseElement);
91
+ case 3:
92
+ results = _context.sent;
93
+ expect(results).toHaveNoViolations();
94
+ case 5:
95
+ case "end":
96
+ return _context.stop();
97
+ }
98
+ }, _callee);
99
+ })));
100
+ it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
101
+ var _render2, baseElement, results;
102
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
103
+ while (1) switch (_context2.prev = _context2.next) {
104
+ case 0:
105
+ // baseElement is needed when using React Portals
106
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], {
107
+ options: options,
108
+ label: "dropdown-test",
109
+ icon: iconSVG,
110
+ iconPosition: "before",
111
+ margin: "medium",
112
+ size: "medium",
113
+ optionsIconPosition: "before",
114
+ onSelectOption: function onSelectOption() {},
115
+ disabled: true
116
+ })), baseElement = _render2.baseElement;
117
+ _context2.next = 3;
118
+ return (0, _axeHelper.axe)(baseElement);
119
+ case 3:
120
+ results = _context2.sent;
121
+ expect(results).toHaveNoViolations();
122
+ case 5:
123
+ case "end":
124
+ return _context2.stop();
125
+ }
126
+ }, _callee2);
127
+ })));
128
+ it("Should not have basic accessibility issues for caret-hidden mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
129
+ var _render3, baseElement, results;
130
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
131
+ while (1) switch (_context3.prev = _context3.next) {
132
+ case 0:
133
+ // baseElement is needed when using React Portals
134
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], {
135
+ options: options,
136
+ label: "dropdown-test",
137
+ icon: iconSVG,
138
+ iconPosition: "after",
139
+ margin: "medium",
140
+ size: "medium",
141
+ optionsIconPosition: "after",
142
+ onSelectOption: function onSelectOption() {},
143
+ caretHidden: true
144
+ })), baseElement = _render3.baseElement;
145
+ _context3.next = 3;
146
+ return (0, _axeHelper.axe)(baseElement);
147
+ case 3:
148
+ results = _context3.sent;
149
+ expect(results).toHaveNoViolations();
150
+ case 5:
151
+ case "end":
152
+ return _context3.stop();
153
+ }
154
+ }, _callee3);
155
+ })));
156
+ it("Should not have basic accessibility issues for expand-on-hover mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
157
+ var _render4, baseElement, results;
158
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
159
+ while (1) switch (_context4.prev = _context4.next) {
160
+ case 0:
161
+ // baseElement is needed when using React Portals
162
+ _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], {
163
+ options: options,
164
+ label: "dropdown-test",
165
+ icon: iconSVG,
166
+ iconPosition: "after",
167
+ margin: "medium",
168
+ size: "medium",
169
+ optionsIconPosition: "after",
170
+ onSelectOption: function onSelectOption() {},
171
+ expandOnHover: true
172
+ })), baseElement = _render4.baseElement;
173
+ _context4.next = 3;
174
+ return (0, _axeHelper.axe)(baseElement);
175
+ case 3:
176
+ results = _context4.sent;
177
+ expect(results).toHaveNoViolations();
178
+ case 5:
179
+ case "end":
180
+ return _context4.stop();
181
+ }
182
+ }, _callee4);
183
+ })));
184
+ });
@@ -14,36 +14,12 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
14
14
  var _variables = require("../common/variables");
15
15
  var _utils = require("../common/utils");
16
16
  var _useTheme = _interopRequireDefault(require("../useTheme"));
17
- var _uuid = require("uuid");
18
17
  var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
19
18
  var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
19
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
20
20
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
21
21
  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); }
22
- 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; }
23
- var upArrowIcon = /*#__PURE__*/_react["default"].createElement("svg", {
24
- xmlns: "http://www.w3.org/2000/svg",
25
- width: "24",
26
- height: "24",
27
- viewBox: "0 0 24 24",
28
- fill: "currentColor"
29
- }, /*#__PURE__*/_react["default"].createElement("path", {
30
- d: "M7 14l5-5 5 5z"
31
- }), /*#__PURE__*/_react["default"].createElement("path", {
32
- d: "M0 0h24v24H0z",
33
- fill: "none"
34
- }));
35
- var downArrowIcon = /*#__PURE__*/_react["default"].createElement("svg", {
36
- xmlns: "http://www.w3.org/2000/svg",
37
- width: "24",
38
- height: "24",
39
- viewBox: "0 0 24 24",
40
- fill: "currentColor"
41
- }, /*#__PURE__*/_react["default"].createElement("path", {
42
- d: "M7 10l5 5 5-5z"
43
- }), /*#__PURE__*/_react["default"].createElement("path", {
44
- d: "M0 0h24v24H0z",
45
- fill: "none"
46
- }));
22
+ 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 && {}.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; }
47
23
  var useWidth = function useWidth(target) {
48
24
  var _useState = (0, _react.useState)(0),
49
25
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -85,18 +61,17 @@ var DxcDropdown = function DxcDropdown(_ref) {
85
61
  size = _ref$size === void 0 ? "fitContent" : _ref$size,
86
62
  _ref$tabIndex = _ref.tabIndex,
87
63
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
88
- var _useState3 = (0, _react.useState)("trigger-".concat((0, _uuid.v4)())),
89
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
90
- triggerId = _useState4[0];
91
- var menuId = "menu-".concat(triggerId);
92
- var _useState5 = (0, _react.useState)(false),
64
+ var id = (0, _react.useId)();
65
+ var triggerId = "trigger-".concat(id);
66
+ var menuId = "menu-".concat(id);
67
+ var _useState3 = (0, _react.useState)(false),
68
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
69
+ isOpen = _useState4[0],
70
+ changeIsOpen = _useState4[1];
71
+ var _useState5 = (0, _react.useState)(0),
93
72
  _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
94
- isOpen = _useState6[0],
95
- changeIsOpen = _useState6[1];
96
- var _useState7 = (0, _react.useState)(0),
97
- _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
98
- visualFocusIndex = _useState8[0],
99
- setVisualFocusIndex = _useState8[1];
73
+ visualFocusIndex = _useState6[0],
74
+ setVisualFocusIndex = _useState6[1];
100
75
  var colorsTheme = (0, _useTheme["default"])();
101
76
  var triggerRef = (0, _react.useRef)(null);
102
77
  var menuRef = (0, _react.useRef)(null);
@@ -172,6 +147,7 @@ var DxcDropdown = function DxcDropdown(_ref) {
172
147
  case "Esc":
173
148
  case "Escape":
174
149
  event.preventDefault();
150
+ isOpen && event.stopPropagation();
175
151
  handleOnCloseMenu();
176
152
  (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.focus();
177
153
  break;
@@ -224,18 +200,22 @@ var DxcDropdown = function DxcDropdown(_ref) {
224
200
  size: size,
225
201
  id: triggerId,
226
202
  "aria-haspopup": "true",
227
- "aria-controls": menuId,
203
+ "aria-controls": isOpen ? menuId : undefined,
228
204
  "aria-expanded": isOpen ? true : undefined,
205
+ "aria-label": "Show options",
229
206
  tabIndex: tabIndex,
230
207
  ref: triggerRef
231
208
  }, /*#__PURE__*/_react["default"].createElement(DropdownTriggerContent, null, label && iconPosition === "after" && /*#__PURE__*/_react["default"].createElement(DropdownTriggerLabel, null, label), icon && /*#__PURE__*/_react["default"].createElement(DropdownTriggerIcon, {
232
209
  disabled: disabled,
233
- role: typeof icon === "string" ? undefined : "img"
234
- }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
235
- src: icon
210
+ role: typeof icon === "string" ? undefined : "img",
211
+ "aria-hidden": true
212
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
213
+ icon: icon
236
214
  }) : icon), label && iconPosition === "before" && /*#__PURE__*/_react["default"].createElement(DropdownTriggerLabel, null, label)), !caretHidden && /*#__PURE__*/_react["default"].createElement(CaretIcon, {
237
215
  disabled: disabled
238
- }, isOpen ? upArrowIcon : downArrowIcon))), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
216
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
217
+ icon: isOpen ? "arrow_drop_up" : "arrow_drop_down"
218
+ }), " "))), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
239
219
  asChild: true,
240
220
  sideOffset: 1
241
221
  }, /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
@@ -263,7 +243,7 @@ var sizes = {
263
243
  var calculateWidth = function calculateWidth(margin, size) {
264
244
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
265
245
  };
266
- var DropdownContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-block;\n width: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
246
+ var DropdownContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
267
247
  return calculateWidth(props.margin, props.size);
268
248
  }, function (props) {
269
249
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -276,18 +256,20 @@ var DropdownContainer = _styledComponents["default"].div(_templateObject || (_te
276
256
  }, function (props) {
277
257
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
278
258
  });
279
- var DropdownTrigger = _styledComponents["default"].button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: ", ";\n width: 100%;\n min-height: 40px;\n min-width: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n background-color: ", ";\n color: ", ";\n cursor: ", ";\n\n ", ";\n"])), function (props) {
259
+ var DropdownTrigger = _styledComponents["default"].button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: ", ";\n width: 100%;\n height: ", ";\n min-width: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n background-color: ", ";\n color: ", ";\n cursor: ", ";\n\n ", ";\n"])), function (props) {
280
260
  return props.theme.caretIconSpacing;
261
+ }, function (props) {
262
+ return props.theme.buttonHeight;
281
263
  }, function (props) {
282
264
  return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
283
265
  }, function (props) {
284
- return props.theme.borderRadius;
266
+ return props.theme.buttonBorderRadius;
285
267
  }, function (props) {
286
- return props.theme.borderThickness;
268
+ return props.theme.buttonBorderThickness;
287
269
  }, function (props) {
288
- return props.theme.borderStyle;
270
+ return props.theme.buttonBorderStyle;
289
271
  }, function (props) {
290
- return props.disabled ? props.theme.disabledBorderColor : props.theme.borderColor;
272
+ return props.disabled ? props.theme.disabledButtonBorderColor : props.theme.buttonBorderColor;
291
273
  }, function (props) {
292
274
  return props.theme.buttonPaddingTop;
293
275
  }, function (props) {
@@ -303,7 +285,7 @@ var DropdownTrigger = _styledComponents["default"].button(_templateObject2 || (_
303
285
  }, function (props) {
304
286
  return props.disabled ? "not-allowed" : "pointer";
305
287
  }, function (props) {
306
- return !props.disabled && "\n &:focus {\n outline: ".concat(props.theme.focusColor, " solid 2px;\n outline-offset: -2px;\n }\n &:hover {\n background-color: ").concat(props.theme.hoverButtonBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeButtonBackgroundColor, ";\n }\n ");
288
+ return !props.disabled && "\n &:focus {\n outline: 2px solid ".concat(props.theme.focusColor, ";\n }\n &:hover {\n background-color: ").concat(props.theme.hoverButtonBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeButtonBackgroundColor, ";\n }\n ");
307
289
  });
308
290
  var DropdownTriggerContent = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n gap: ", ";\n margin-left: 0px;\n margin-right: 0px;\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n"])), function (props) {
309
291
  return props.theme.buttonIconSpacing;
@@ -317,18 +299,22 @@ var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4 ||
317
299
  }, function (props) {
318
300
  return props.theme.buttonFontWeight;
319
301
  });
320
- var DropdownTriggerIcon = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n\n img,\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
302
+ var DropdownTriggerIcon = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n font-size: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
321
303
  return props.disabled ? props.theme.disabledColor : props.theme.buttonIconColor;
322
304
  }, function (props) {
323
305
  return props.theme.buttonIconSize;
324
306
  }, function (props) {
325
307
  return props.theme.buttonIconSize;
308
+ }, function (props) {
309
+ return props.theme.buttonIconSize;
326
310
  });
327
- var CaretIcon = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
311
+ var CaretIcon = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n font-size: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
328
312
  return props.disabled ? props.theme.disabledColor : props.theme.caretIconColor;
329
313
  }, function (props) {
330
314
  return props.theme.caretIconSize;
331
315
  }, function (props) {
332
316
  return props.theme.caretIconSize;
317
+ }, function (props) {
318
+ return props.theme.caretIconSize;
333
319
  });
334
320
  var _default = exports["default"] = DxcDropdown;
@@ -15,11 +15,6 @@ export default {
15
15
  component: DxcDropdown,
16
16
  };
17
17
 
18
- const hamburguerIcon = (
19
- <svg xmlns="http://www.w3.org/2000/svg" height="20" width="20">
20
- <path d="M3 14.5V13h14v1.5Zm0-3.75v-1.5h14v1.5ZM3 7V5.5h14V7Z" />
21
- </svg>
22
- );
23
18
  const iconSVG = (
24
19
  <svg viewBox="0 0 24 24" height="24" width="24" fill="currentColor">
25
20
  <path d="M0 0h24v24H0z" fill="none" />
@@ -31,8 +26,7 @@ const iconSVGLarge = (
31
26
  <path d="M11 44q-1.2 0-2.1-.9Q8 42.2 8 41V15q0-1.2.9-2.1.9-.9 2.1-.9h5.5v-.5q0-3.15 2.175-5.325Q20.85 4 24 4q3.15 0 5.325 2.175Q31.5 8.35 31.5 11.5v.5H37q1.2 0 2.1.9.9.9.9 2.1v26q0 1.2-.9 2.1-.9.9-2.1.9Zm0-3h26V15h-5.5v4.5q0 .65-.425 1.075Q30.65 21 30 21q-.65 0-1.075-.425-.425-.425-.425-1.075V15h-9v4.5q0 .65-.425 1.075Q18.65 21 18 21q-.65 0-1.075-.425-.425-.425-.425-1.075V15H11v26Zm8.5-29h9v-.5q0-1.9-1.3-3.2Q25.9 7 24 7q-1.9 0-3.2 1.3-1.3 1.3-1.3 3.2ZM11 41V15v26Z" />
32
27
  </svg>
33
28
  );
34
- const iconUrl = "https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png";
35
- const icons = [iconSVG, iconSVGLarge, iconUrl];
29
+ const icons = [iconSVG, iconSVGLarge, "nutrition"];
36
30
 
37
31
  const defaultOptions: Option[] = [
38
32
  {
@@ -86,7 +80,7 @@ const optionWithIcon: Option[] = [
86
80
  {
87
81
  value: "1",
88
82
  label: "Ebay",
89
- icon: iconUrl,
83
+ icon: "shopping_cart",
90
84
  },
91
85
  ];
92
86
 
@@ -136,7 +130,7 @@ const Dropdown = () => (
136
130
  label="Icon after"
137
131
  options={options}
138
132
  onSelectOption={(value) => {}}
139
- icon="https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png"
133
+ icon="shopping_cart"
140
134
  iconPosition="after"
141
135
  />
142
136
  </ExampleContainer>
@@ -146,7 +140,7 @@ const Dropdown = () => (
146
140
  </ExampleContainer>
147
141
  <ExampleContainer>
148
142
  <Title title="Only icon without caret" theme="light" level={4} />
149
- <DxcDropdown options={options} onSelectOption={(value) => {}} icon={hamburguerIcon} caretHidden />
143
+ <DxcDropdown options={options} onSelectOption={(value) => {}} icon="menu" caretHidden />
150
144
  </ExampleContainer>
151
145
  <ExampleContainer>
152
146
  <Title title="Large icon (SVG)" theme="light" level={4} />
@@ -154,12 +148,7 @@ const Dropdown = () => (
154
148
  </ExampleContainer>
155
149
  <ExampleContainer>
156
150
  <Title title="Large icon (image)" theme="light" level={4} />
157
- <DxcDropdown
158
- label="Large icon"
159
- options={options}
160
- onSelectOption={(value) => {}}
161
- icon="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b2/Hamburger_icon.svg/2048px-Hamburger_icon.svg.png"
162
- />
151
+ <DxcDropdown label="Large icon" options={options} onSelectOption={(value) => {}} icon="menu" />
163
152
  </ExampleContainer>
164
153
  <ExampleContainer>
165
154
  <Title title="Disabled with icon" theme="light" level={4} />
@@ -292,8 +281,8 @@ const DropdownListStates = () => {
292
281
  <ExampleContainer pseudoState="pseudo-hover">
293
282
  <Title title="Hovered option" theme="light" level={4} />
294
283
  <DropdownMenu
295
- id="x"
296
- dropdownTriggerId="dtx"
284
+ id="x1"
285
+ dropdownTriggerId="dtx1"
297
286
  iconsPosition="before"
298
287
  visualFocusIndex={-1}
299
288
  menuItemOnClick={(value) => {}}
@@ -305,8 +294,8 @@ const DropdownListStates = () => {
305
294
  <ExampleContainer pseudoState="pseudo-active">
306
295
  <Title title="Active option" theme="light" level={4} />
307
296
  <DropdownMenu
308
- id="x"
309
- dropdownTriggerId="dtx"
297
+ id="x2"
298
+ dropdownTriggerId="dtx2"
310
299
  iconsPosition="before"
311
300
  visualFocusIndex={-1}
312
301
  menuItemOnClick={(value) => {}}
@@ -318,8 +307,8 @@ const DropdownListStates = () => {
318
307
  <ExampleContainer>
319
308
  <Title title="Focused option" theme="light" level={4} />
320
309
  <DropdownMenu
321
- id="x"
322
- dropdownTriggerId="dtx"
310
+ id="x3"
311
+ dropdownTriggerId="dtx3"
323
312
  iconsPosition="before"
324
313
  visualFocusIndex={0}
325
314
  menuItemOnClick={(value) => {}}
@@ -332,8 +321,8 @@ const DropdownListStates = () => {
332
321
  <ExampleContainer>
333
322
  <Title title="Before" theme="light" level={4} />
334
323
  <DropdownMenu
335
- id="x"
336
- dropdownTriggerId="dtx"
324
+ id="x4"
325
+ dropdownTriggerId="dtx4"
337
326
  iconsPosition="before"
338
327
  visualFocusIndex={-1}
339
328
  menuItemOnClick={(value) => {}}
@@ -343,8 +332,8 @@ const DropdownListStates = () => {
343
332
  />
344
333
  <Title title="After" theme="light" level={4} />
345
334
  <DropdownMenu
346
- id="x"
347
- dropdownTriggerId="dtx"
335
+ id="x5"
336
+ dropdownTriggerId="dtx5"
348
337
  iconsPosition="after"
349
338
  visualFocusIndex={-1}
350
339
  menuItemOnClick={(value) => {}}
@@ -0,0 +1 @@
1
+ export {};