@dxc-technology/halstack-react 0.0.0-b0616f2 → 0.0.0-b063530

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 (498) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1274 -6
  4. package/HalstackContext.js +135 -110
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.d.ts +1 -0
  7. package/accordion/Accordion.accessibility.test.js +71 -0
  8. package/accordion/Accordion.d.ts +1 -1
  9. package/accordion/Accordion.js +44 -121
  10. package/accordion/Accordion.stories.tsx +82 -147
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +18 -33
  13. package/accordion/types.d.ts +6 -17
  14. package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
  15. package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
  16. package/accordion-group/AccordionGroup.d.ts +2 -2
  17. package/accordion-group/AccordionGroup.js +29 -77
  18. package/accordion-group/AccordionGroup.stories.tsx +78 -77
  19. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  20. package/accordion-group/AccordionGroup.test.js +41 -73
  21. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  22. package/accordion-group/AccordionGroupAccordion.js +31 -0
  23. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  24. package/accordion-group/AccordionGroupContext.js +8 -0
  25. package/accordion-group/types.d.ts +7 -18
  26. package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
  27. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  28. package/action-icon/ActionIcon.d.ts +4 -0
  29. package/action-icon/ActionIcon.js +48 -0
  30. package/action-icon/ActionIcon.stories.tsx +41 -0
  31. package/action-icon/ActionIcon.test.d.ts +1 -0
  32. package/action-icon/ActionIcon.test.js +64 -0
  33. package/action-icon/types.d.ts +26 -0
  34. package/alert/Alert.accessibility.test.d.ts +1 -0
  35. package/alert/Alert.accessibility.test.js +95 -0
  36. package/alert/Alert.js +36 -126
  37. package/alert/Alert.stories.tsx +28 -0
  38. package/alert/Alert.test.d.ts +1 -0
  39. package/alert/Alert.test.js +28 -45
  40. package/alert/types.d.ts +5 -5
  41. package/badge/Badge.accessibility.test.d.ts +1 -0
  42. package/badge/Badge.accessibility.test.js +129 -0
  43. package/badge/Badge.d.ts +1 -1
  44. package/badge/Badge.js +142 -42
  45. package/badge/Badge.stories.tsx +210 -0
  46. package/badge/Badge.test.d.ts +1 -0
  47. package/badge/Badge.test.js +30 -0
  48. package/badge/types.d.ts +52 -3
  49. package/bar-chart/BarChart.d.ts +4 -0
  50. package/bar-chart/BarChart.js +152 -0
  51. package/bar-chart/BarChart.stories.tsx +281 -0
  52. package/bar-chart/BarChart.test.d.ts +1 -0
  53. package/bar-chart/BarChart.test.js +194 -0
  54. package/bar-chart/theme.d.ts +3 -0
  55. package/bar-chart/theme.js +31 -0
  56. package/bar-chart/types.d.ts +118 -0
  57. package/bleed/Bleed.js +13 -21
  58. package/bleed/Bleed.stories.tsx +1 -1
  59. package/bleed/types.d.ts +2 -2
  60. package/box/Box.accessibility.test.d.ts +1 -0
  61. package/box/Box.accessibility.test.js +33 -0
  62. package/box/Box.d.ts +1 -1
  63. package/box/Box.js +18 -59
  64. package/box/Box.stories.tsx +38 -51
  65. package/box/Box.test.d.ts +1 -0
  66. package/box/Box.test.js +1 -6
  67. package/box/types.d.ts +3 -14
  68. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  69. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  70. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  71. package/breadcrumbs/Breadcrumbs.js +79 -0
  72. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  73. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  74. package/breadcrumbs/Breadcrumbs.test.js +168 -0
  75. package/breadcrumbs/Item.d.ts +4 -0
  76. package/breadcrumbs/Item.js +52 -0
  77. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  78. package/breadcrumbs/dropdownTheme.js +62 -0
  79. package/breadcrumbs/types.d.ts +40 -0
  80. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  81. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  82. package/bulleted-list/BulletedList.js +22 -53
  83. package/bulleted-list/BulletedList.stories.tsx +8 -93
  84. package/bulleted-list/types.d.ts +32 -5
  85. package/button/Button.accessibility.test.d.ts +1 -0
  86. package/button/Button.accessibility.test.js +127 -0
  87. package/button/Button.d.ts +1 -1
  88. package/button/Button.js +71 -106
  89. package/button/Button.stories.tsx +143 -101
  90. package/button/Button.test.d.ts +1 -0
  91. package/button/Button.test.js +19 -16
  92. package/button/types.d.ts +9 -5
  93. package/card/Card.accessibility.test.d.ts +1 -0
  94. package/card/Card.accessibility.test.js +36 -0
  95. package/card/Card.d.ts +1 -1
  96. package/card/Card.js +49 -89
  97. package/card/Card.stories.tsx +13 -43
  98. package/card/Card.test.d.ts +1 -0
  99. package/card/Card.test.js +10 -21
  100. package/card/types.d.ts +6 -11
  101. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  102. package/checkbox/Checkbox.accessibility.test.js +87 -0
  103. package/checkbox/Checkbox.d.ts +2 -2
  104. package/checkbox/Checkbox.js +98 -134
  105. package/checkbox/Checkbox.stories.tsx +128 -94
  106. package/checkbox/Checkbox.test.d.ts +1 -0
  107. package/checkbox/Checkbox.test.js +107 -63
  108. package/checkbox/types.d.ts +11 -3
  109. package/chip/Chip.accessibility.test.d.ts +1 -0
  110. package/chip/Chip.accessibility.test.js +67 -0
  111. package/chip/Chip.js +45 -80
  112. package/chip/Chip.stories.tsx +103 -27
  113. package/chip/Chip.test.d.ts +1 -0
  114. package/chip/Chip.test.js +17 -32
  115. package/chip/types.d.ts +4 -4
  116. package/common/coreTokens.d.ts +236 -0
  117. package/common/coreTokens.js +183 -0
  118. package/common/utils.d.ts +1 -0
  119. package/common/utils.js +6 -12
  120. package/common/variables.d.ts +1432 -0
  121. package/common/variables.js +1010 -1220
  122. package/container/Container.d.ts +4 -0
  123. package/container/Container.js +194 -0
  124. package/container/Container.stories.tsx +214 -0
  125. package/container/types.d.ts +176 -0
  126. package/container/types.js +5 -0
  127. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  128. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  129. package/contextual-menu/ContextualMenu.d.ts +5 -0
  130. package/contextual-menu/ContextualMenu.js +136 -0
  131. package/contextual-menu/ContextualMenu.stories.tsx +231 -0
  132. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  133. package/contextual-menu/ContextualMenu.test.js +247 -0
  134. package/contextual-menu/GroupItem.d.ts +4 -0
  135. package/contextual-menu/GroupItem.js +67 -0
  136. package/contextual-menu/ItemAction.d.ts +4 -0
  137. package/contextual-menu/ItemAction.js +88 -0
  138. package/contextual-menu/MenuItem.d.ts +4 -0
  139. package/contextual-menu/MenuItem.js +29 -0
  140. package/contextual-menu/SingleItem.d.ts +4 -0
  141. package/contextual-menu/SingleItem.js +38 -0
  142. package/contextual-menu/types.d.ts +65 -0
  143. package/contextual-menu/types.js +5 -0
  144. package/date-input/Calendar.d.ts +4 -0
  145. package/date-input/Calendar.js +230 -0
  146. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  147. package/date-input/DateInput.accessibility.test.js +229 -0
  148. package/date-input/DateInput.js +156 -300
  149. package/date-input/DateInput.stories.tsx +210 -57
  150. package/date-input/DateInput.test.d.ts +1 -0
  151. package/date-input/DateInput.test.js +699 -370
  152. package/date-input/DatePicker.d.ts +4 -0
  153. package/date-input/DatePicker.js +121 -0
  154. package/date-input/YearPicker.d.ts +4 -0
  155. package/date-input/YearPicker.js +105 -0
  156. package/date-input/types.d.ts +72 -15
  157. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  158. package/dialog/Dialog.accessibility.test.js +69 -0
  159. package/dialog/Dialog.d.ts +1 -1
  160. package/dialog/Dialog.js +50 -119
  161. package/dialog/Dialog.stories.tsx +324 -166
  162. package/dialog/Dialog.test.d.ts +1 -0
  163. package/dialog/Dialog.test.js +332 -32
  164. package/dialog/types.d.ts +18 -25
  165. package/divider/Divider.accessibility.test.d.ts +1 -0
  166. package/divider/Divider.accessibility.test.js +33 -0
  167. package/divider/Divider.d.ts +4 -0
  168. package/divider/Divider.js +36 -0
  169. package/divider/Divider.stories.tsx +224 -0
  170. package/divider/Divider.test.d.ts +1 -0
  171. package/divider/Divider.test.js +38 -0
  172. package/divider/types.d.ts +21 -0
  173. package/divider/types.js +5 -0
  174. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  175. package/dropdown/Dropdown.accessibility.test.js +183 -0
  176. package/dropdown/Dropdown.js +93 -160
  177. package/dropdown/Dropdown.stories.tsx +210 -95
  178. package/dropdown/Dropdown.test.d.ts +1 -0
  179. package/dropdown/Dropdown.test.js +450 -413
  180. package/dropdown/DropdownMenu.js +23 -40
  181. package/dropdown/DropdownMenuItem.js +18 -39
  182. package/dropdown/types.d.ts +20 -24
  183. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  184. package/file-input/FileInput.accessibility.test.js +167 -0
  185. package/file-input/FileInput.d.ts +2 -2
  186. package/file-input/FileInput.js +238 -393
  187. package/file-input/FileInput.stories.tsx +123 -12
  188. package/file-input/FileInput.test.d.ts +1 -0
  189. package/file-input/FileInput.test.js +314 -367
  190. package/file-input/FileItem.d.ts +4 -14
  191. package/file-input/FileItem.js +56 -117
  192. package/file-input/types.d.ts +24 -11
  193. package/flex/Flex.d.ts +1 -1
  194. package/flex/Flex.js +40 -40
  195. package/flex/Flex.stories.tsx +35 -26
  196. package/flex/types.d.ts +84 -8
  197. package/footer/Footer.accessibility.test.d.ts +1 -0
  198. package/footer/Footer.accessibility.test.js +125 -0
  199. package/footer/Footer.d.ts +1 -1
  200. package/footer/Footer.js +73 -118
  201. package/footer/Footer.stories.tsx +94 -23
  202. package/footer/Footer.test.d.ts +1 -0
  203. package/footer/Footer.test.js +32 -56
  204. package/footer/Icons.d.ts +3 -2
  205. package/footer/Icons.js +53 -22
  206. package/footer/types.d.ts +26 -27
  207. package/grid/Grid.d.ts +7 -0
  208. package/grid/Grid.js +76 -0
  209. package/grid/Grid.stories.tsx +221 -0
  210. package/grid/types.d.ts +115 -0
  211. package/grid/types.js +5 -0
  212. package/header/Header.accessibility.test.d.ts +1 -0
  213. package/header/Header.accessibility.test.js +94 -0
  214. package/header/Header.d.ts +4 -3
  215. package/header/Header.js +55 -150
  216. package/header/Header.stories.tsx +131 -36
  217. package/header/Header.test.d.ts +1 -0
  218. package/header/Header.test.js +12 -25
  219. package/header/Icons.d.ts +2 -2
  220. package/header/Icons.js +3 -13
  221. package/header/types.d.ts +7 -21
  222. package/heading/Heading.accessibility.test.d.ts +1 -0
  223. package/heading/Heading.accessibility.test.js +33 -0
  224. package/heading/Heading.js +10 -32
  225. package/heading/Heading.test.d.ts +1 -0
  226. package/heading/Heading.test.js +64 -94
  227. package/heading/types.d.ts +7 -7
  228. package/icon/Icon.accessibility.test.d.ts +1 -0
  229. package/icon/Icon.accessibility.test.js +30 -0
  230. package/icon/Icon.d.ts +4 -0
  231. package/icon/Icon.js +33 -0
  232. package/icon/Icon.stories.tsx +28 -0
  233. package/icon/types.d.ts +4 -0
  234. package/icon/types.js +5 -0
  235. package/image/Image.accessibility.test.d.ts +1 -0
  236. package/image/Image.accessibility.test.js +56 -0
  237. package/image/Image.d.ts +4 -0
  238. package/image/Image.js +70 -0
  239. package/image/Image.stories.tsx +129 -0
  240. package/image/types.d.ts +72 -0
  241. package/image/types.js +5 -0
  242. package/inset/Inset.js +13 -21
  243. package/inset/Inset.stories.tsx +2 -1
  244. package/inset/types.d.ts +2 -2
  245. package/layout/ApplicationLayout.d.ts +5 -5
  246. package/layout/ApplicationLayout.js +36 -70
  247. package/layout/ApplicationLayout.stories.tsx +1 -1
  248. package/layout/Icons.d.ts +7 -5
  249. package/layout/Icons.js +41 -59
  250. package/layout/types.d.ts +5 -6
  251. package/link/Link.accessibility.test.d.ts +1 -0
  252. package/link/Link.accessibility.test.js +108 -0
  253. package/link/Link.js +32 -51
  254. package/link/Link.stories.tsx +64 -4
  255. package/link/Link.test.d.ts +1 -0
  256. package/link/Link.test.js +23 -43
  257. package/link/types.d.ts +14 -14
  258. package/main.d.ts +12 -5
  259. package/main.js +61 -59
  260. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  261. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  262. package/nav-tabs/NavTabs.d.ts +7 -0
  263. package/nav-tabs/NavTabs.js +108 -0
  264. package/nav-tabs/NavTabs.stories.tsx +294 -0
  265. package/nav-tabs/NavTabs.test.d.ts +1 -0
  266. package/nav-tabs/NavTabs.test.js +77 -0
  267. package/nav-tabs/NavTabsContext.d.ts +3 -0
  268. package/nav-tabs/NavTabsContext.js +8 -0
  269. package/nav-tabs/Tab.js +117 -0
  270. package/{tabs-nav → nav-tabs}/types.d.ts +15 -16
  271. package/nav-tabs/types.js +5 -0
  272. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  273. package/number-input/NumberInput.accessibility.test.js +227 -0
  274. package/number-input/NumberInput.js +50 -37
  275. package/number-input/NumberInput.stories.tsx +37 -26
  276. package/number-input/NumberInput.test.d.ts +1 -0
  277. package/number-input/NumberInput.test.js +858 -376
  278. package/number-input/NumberInputContext.d.ts +3 -4
  279. package/number-input/NumberInputContext.js +3 -14
  280. package/number-input/types.d.ts +17 -5
  281. package/package.json +52 -49
  282. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  283. package/paginator/Paginator.accessibility.test.js +78 -0
  284. package/paginator/Paginator.js +35 -68
  285. package/paginator/Paginator.stories.tsx +24 -0
  286. package/paginator/Paginator.test.d.ts +1 -0
  287. package/paginator/Paginator.test.js +253 -227
  288. package/paginator/types.d.ts +3 -3
  289. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  290. package/paragraph/Paragraph.accessibility.test.js +28 -0
  291. package/paragraph/Paragraph.d.ts +3 -4
  292. package/paragraph/Paragraph.js +6 -22
  293. package/paragraph/Paragraph.stories.tsx +0 -17
  294. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  295. package/password-input/PasswordInput.accessibility.test.js +152 -0
  296. package/password-input/PasswordInput.js +62 -128
  297. package/password-input/PasswordInput.stories.tsx +11 -34
  298. package/password-input/PasswordInput.test.d.ts +1 -0
  299. package/password-input/PasswordInput.test.js +158 -141
  300. package/password-input/types.d.ts +8 -7
  301. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  302. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  303. package/progress-bar/ProgressBar.d.ts +2 -2
  304. package/progress-bar/ProgressBar.js +28 -58
  305. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
  306. package/progress-bar/ProgressBar.test.d.ts +1 -0
  307. package/progress-bar/ProgressBar.test.js +35 -52
  308. package/progress-bar/types.d.ts +4 -3
  309. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  310. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  311. package/quick-nav/QuickNav.js +15 -39
  312. package/quick-nav/QuickNav.stories.tsx +112 -20
  313. package/quick-nav/types.d.ts +10 -10
  314. package/radio-group/Radio.d.ts +1 -1
  315. package/radio-group/Radio.js +59 -79
  316. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  317. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  318. package/radio-group/RadioGroup.js +62 -110
  319. package/radio-group/RadioGroup.stories.tsx +132 -18
  320. package/radio-group/RadioGroup.test.d.ts +1 -0
  321. package/radio-group/RadioGroup.test.js +518 -459
  322. package/radio-group/types.d.ts +10 -10
  323. package/resultset-table/Icons.d.ts +7 -0
  324. package/{text-input → resultset-table}/Icons.js +13 -26
  325. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  326. package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
  327. package/resultset-table/ResultsetTable.d.ts +7 -0
  328. package/resultset-table/ResultsetTable.js +195 -0
  329. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +169 -31
  330. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  331. package/resultset-table/ResultsetTable.test.js +450 -0
  332. package/{resultsetTable → resultset-table}/types.d.ts +46 -12
  333. package/resultset-table/types.js +5 -0
  334. package/select/Listbox.d.ts +1 -1
  335. package/select/Listbox.js +40 -87
  336. package/select/Option.js +35 -56
  337. package/select/Select.accessibility.test.d.ts +1 -0
  338. package/select/Select.accessibility.test.js +227 -0
  339. package/select/Select.js +141 -182
  340. package/select/Select.stories.tsx +505 -204
  341. package/select/Select.test.d.ts +1 -0
  342. package/select/Select.test.js +1916 -1923
  343. package/select/types.d.ts +17 -18
  344. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  345. package/sidenav/Sidenav.accessibility.test.js +59 -0
  346. package/sidenav/Sidenav.d.ts +2 -2
  347. package/sidenav/Sidenav.js +90 -157
  348. package/sidenav/Sidenav.stories.tsx +161 -64
  349. package/sidenav/Sidenav.test.d.ts +1 -0
  350. package/sidenav/Sidenav.test.js +4 -11
  351. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  352. package/{layout → sidenav}/SidenavContext.js +3 -9
  353. package/sidenav/types.d.ts +33 -30
  354. package/slider/Slider.accessibility.test.d.ts +1 -0
  355. package/slider/Slider.accessibility.test.js +103 -0
  356. package/slider/Slider.d.ts +2 -2
  357. package/slider/Slider.js +79 -135
  358. package/slider/Slider.stories.tsx +57 -60
  359. package/slider/Slider.test.d.ts +1 -0
  360. package/slider/Slider.test.js +117 -111
  361. package/slider/types.d.ts +7 -3
  362. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  363. package/spinner/Spinner.accessibility.test.js +96 -0
  364. package/spinner/Spinner.d.ts +1 -1
  365. package/spinner/Spinner.js +50 -109
  366. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  367. package/spinner/Spinner.test.d.ts +1 -0
  368. package/spinner/Spinner.test.js +25 -34
  369. package/spinner/types.d.ts +3 -3
  370. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  371. package/status-light/StatusLight.accessibility.test.js +157 -0
  372. package/status-light/StatusLight.d.ts +4 -0
  373. package/status-light/StatusLight.js +51 -0
  374. package/status-light/StatusLight.stories.tsx +74 -0
  375. package/status-light/StatusLight.test.d.ts +1 -0
  376. package/status-light/StatusLight.test.js +25 -0
  377. package/status-light/types.d.ts +17 -0
  378. package/status-light/types.js +5 -0
  379. package/switch/Switch.accessibility.test.d.ts +1 -0
  380. package/switch/Switch.accessibility.test.js +98 -0
  381. package/switch/Switch.d.ts +3 -3
  382. package/switch/Switch.js +112 -152
  383. package/switch/Switch.stories.tsx +45 -34
  384. package/switch/Switch.test.d.ts +1 -0
  385. package/switch/Switch.test.js +69 -101
  386. package/switch/types.d.ts +8 -3
  387. package/table/DropdownTheme.js +62 -0
  388. package/table/Table.accessibility.test.d.ts +1 -0
  389. package/table/Table.accessibility.test.js +92 -0
  390. package/table/Table.d.ts +6 -2
  391. package/table/Table.js +78 -35
  392. package/table/Table.stories.tsx +663 -0
  393. package/table/Table.test.d.ts +1 -0
  394. package/table/Table.test.js +92 -7
  395. package/table/types.d.ts +34 -6
  396. package/tabs/Tab.js +28 -46
  397. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  398. package/tabs/Tabs.accessibility.test.js +56 -0
  399. package/tabs/Tabs.js +69 -163
  400. package/tabs/Tabs.stories.tsx +50 -6
  401. package/tabs/Tabs.test.d.ts +1 -0
  402. package/tabs/Tabs.test.js +60 -135
  403. package/tabs/types.d.ts +21 -21
  404. package/tag/Tag.accessibility.test.d.ts +1 -0
  405. package/tag/Tag.accessibility.test.js +69 -0
  406. package/tag/Tag.js +34 -66
  407. package/tag/Tag.stories.tsx +19 -9
  408. package/tag/Tag.test.d.ts +1 -0
  409. package/tag/Tag.test.js +17 -36
  410. package/tag/types.d.ts +9 -9
  411. package/text-input/Suggestion.js +35 -25
  412. package/text-input/Suggestions.d.ts +1 -1
  413. package/text-input/Suggestions.js +30 -70
  414. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  415. package/text-input/TextInput.accessibility.test.js +320 -0
  416. package/text-input/TextInput.js +285 -377
  417. package/text-input/TextInput.stories.tsx +158 -162
  418. package/text-input/TextInput.test.d.ts +1 -0
  419. package/text-input/TextInput.test.js +1389 -1347
  420. package/text-input/types.d.ts +29 -16
  421. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  422. package/textarea/Textarea.accessibility.test.js +155 -0
  423. package/textarea/Textarea.js +67 -109
  424. package/textarea/Textarea.stories.tsx +174 -0
  425. package/textarea/Textarea.test.d.ts +1 -0
  426. package/textarea/Textarea.test.js +151 -182
  427. package/textarea/types.d.ts +9 -5
  428. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  429. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  430. package/toggle-group/ToggleGroup.d.ts +2 -2
  431. package/toggle-group/ToggleGroup.js +92 -108
  432. package/toggle-group/ToggleGroup.stories.tsx +53 -8
  433. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  434. package/toggle-group/ToggleGroup.test.js +68 -87
  435. package/toggle-group/types.d.ts +28 -19
  436. package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
  437. package/tooltip/Tooltip.accessibility.test.js +144 -0
  438. package/tooltip/Tooltip.d.ts +4 -0
  439. package/tooltip/Tooltip.js +50 -0
  440. package/tooltip/Tooltip.stories.tsx +111 -0
  441. package/tooltip/Tooltip.test.d.ts +1 -0
  442. package/tooltip/Tooltip.test.js +112 -0
  443. package/tooltip/types.d.ts +16 -0
  444. package/tooltip/types.js +5 -0
  445. package/typography/Typography.accessibility.test.d.ts +1 -0
  446. package/typography/Typography.accessibility.test.js +339 -0
  447. package/typography/Typography.d.ts +2 -2
  448. package/typography/Typography.js +15 -123
  449. package/typography/Typography.stories.tsx +1 -3
  450. package/typography/Typography.test.js +23 -0
  451. package/typography/types.d.ts +1 -1
  452. package/useTheme.d.ts +1167 -1
  453. package/useTheme.js +2 -9
  454. package/useTranslatedLabels.d.ts +95 -1
  455. package/useTranslatedLabels.js +1 -7
  456. package/utils/BaseTypography.d.ts +21 -0
  457. package/utils/BaseTypography.js +98 -0
  458. package/utils/FocusLock.d.ts +13 -0
  459. package/utils/FocusLock.js +125 -0
  460. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  461. package/wizard/Wizard.accessibility.test.js +55 -0
  462. package/wizard/Wizard.js +29 -75
  463. package/wizard/Wizard.stories.tsx +40 -1
  464. package/wizard/Wizard.test.d.ts +1 -0
  465. package/wizard/Wizard.test.js +53 -80
  466. package/wizard/types.d.ts +10 -11
  467. package/card/ice-cream.jpg +0 -0
  468. package/common/OpenSans.css +0 -81
  469. package/common/RequiredComponent.js +0 -32
  470. package/common/fonts/OpenSans-Bold.ttf +0 -0
  471. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  472. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  473. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  474. package/common/fonts/OpenSans-Italic.ttf +0 -0
  475. package/common/fonts/OpenSans-Light.ttf +0 -0
  476. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  477. package/common/fonts/OpenSans-Regular.ttf +0 -0
  478. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  479. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  480. package/number-input/numberInputContextTypes.d.ts +0 -19
  481. package/paginator/Icons.js +0 -66
  482. package/resultsetTable/ResultsetTable.d.ts +0 -4
  483. package/resultsetTable/ResultsetTable.js +0 -254
  484. package/resultsetTable/ResultsetTable.test.js +0 -348
  485. package/select/Icons.d.ts +0 -10
  486. package/select/Icons.js +0 -93
  487. package/table/Table.stories.jsx +0 -277
  488. package/tabs-nav/NavTabs.d.ts +0 -8
  489. package/tabs-nav/NavTabs.js +0 -125
  490. package/tabs-nav/NavTabs.stories.tsx +0 -170
  491. package/tabs-nav/NavTabs.test.js +0 -82
  492. package/tabs-nav/Tab.js +0 -130
  493. package/text-input/Icons.d.ts +0 -8
  494. package/textarea/Textarea.stories.jsx +0 -157
  495. /package/{resultsetTable → action-icon}/types.js +0 -0
  496. /package/{tabs-nav → bar-chart}/types.js +0 -0
  497. /package/{number-input/numberInputContextTypes.js → breadcrumbs/types.js} +0 -0
  498. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
@@ -1,43 +1,32 @@
1
1
  import React from "react";
2
- import { userEvent, within } from "@storybook/testing-library";
2
+ import { userEvent, within } from "@storybook/test";
3
3
  import DxcDropdown from "./Dropdown";
4
4
  import Title from "../../.storybook/components/Title";
5
5
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
6
  import DropdownMenu from "./DropdownMenu";
7
- import DxcCheckbox from "../checkbox/Checkbox";
8
- import DxcTextInput from "../text-input/TextInput";
9
7
  import { Option } from "./types";
10
-
8
+ import useTheme from "../useTheme";
9
+ import DxcFlex from "../flex/Flex";
10
+ import { HalstackProvider } from "../HalstackContext";
11
+ import { ThemeProvider } from "styled-components";
11
12
 
12
13
  export default {
13
14
  title: "Dropdown",
14
15
  component: DxcDropdown,
15
16
  };
16
17
 
17
- const hamburguerIcon = (
18
- <svg xmlns="http://www.w3.org/2000/svg" height="20" width="20">
19
- <path d="M3 14.5V13h14v1.5Zm0-3.75v-1.5h14v1.5ZM3 7V5.5h14V7Z" />
20
- </svg>
21
- );
22
18
  const iconSVG = (
23
- <svg viewBox="0 0 24 24" fill="currentColor">
19
+ <svg viewBox="0 0 24 24" height="24" width="24" fill="currentColor">
24
20
  <path d="M0 0h24v24H0z" fill="none" />
25
21
  <path 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" />
26
22
  </svg>
27
23
  );
28
24
  const iconSVGLarge = (
29
- <svg enableBackground="new 0 0 24 24" height="48" viewBox="0 0 24 24" width="48" fill="currentColor">
30
- <g>
31
- <path d="M0,0h24v24H0V0z" fill="none" />
32
- <path d="M0,0h24v24H0V0z" fill="none" />
33
- </g>
34
- <g>
35
- <path d="M12,17.27L18.18,21l-1.64-7.03L22,9.24l-7.19-0.61L12,2L9.19,8.63L2,9.24l5.46,4.73L5.82,21L12,17.27z" />
36
- </g>
25
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" height="48" width="48">
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" />
37
27
  </svg>
38
28
  );
39
- const iconUrl = "https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png";
40
- const icons = [iconSVG, iconSVGLarge, iconUrl];
29
+ const icons = [iconSVG, iconSVGLarge, "nutrition"];
41
30
 
42
31
  const defaultOptions: Option[] = [
43
32
  {
@@ -60,6 +49,18 @@ const defaultOptions: Option[] = [
60
49
  value: "5",
61
50
  label: "Aliexpress",
62
51
  },
52
+ {
53
+ value: "6",
54
+ label: "Etsy",
55
+ },
56
+ {
57
+ value: "7",
58
+ label: "Alibaba",
59
+ },
60
+ {
61
+ value: "8",
62
+ label: "Gearbest shop",
63
+ },
63
64
  ];
64
65
  const options: Option[] = [
65
66
  {
@@ -79,13 +80,21 @@ const optionWithIcon: Option[] = [
79
80
  {
80
81
  value: "1",
81
82
  label: "Ebay",
82
- icon: iconUrl,
83
+ icon: "shopping_cart",
83
84
  },
84
85
  ];
85
86
 
86
87
  const optionsIcon: any = options.map((op, i) => ({ ...op, icon: icons[i] }));
87
88
 
88
- export const Chromatic = () => (
89
+ const opinionatedTheme = {
90
+ dropdown: {
91
+ baseColor: "#ffffff",
92
+ fontColor: "#000000",
93
+ optionFontColor: "#000000",
94
+ },
95
+ };
96
+
97
+ const Dropdown = () => (
89
98
  <>
90
99
  <ExampleContainer>
91
100
  <Title title="Default" theme="light" level={4} />
@@ -121,7 +130,7 @@ export const Chromatic = () => (
121
130
  label="Icon after"
122
131
  options={options}
123
132
  onSelectOption={(value) => {}}
124
- icon="https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png"
133
+ icon="shopping_cart"
125
134
  iconPosition="after"
126
135
  />
127
136
  </ExampleContainer>
@@ -131,12 +140,16 @@ export const Chromatic = () => (
131
140
  </ExampleContainer>
132
141
  <ExampleContainer>
133
142
  <Title title="Only icon without caret" theme="light" level={4} />
134
- <DxcDropdown options={options} onSelectOption={(value) => {}} icon={hamburguerIcon} caretHidden />
143
+ <DxcDropdown options={options} onSelectOption={(value) => {}} icon="menu" caretHidden />
135
144
  </ExampleContainer>
136
145
  <ExampleContainer>
137
- <Title title="Large icon" theme="light" level={4} />
146
+ <Title title="Large icon (SVG)" theme="light" level={4} />
138
147
  <DxcDropdown label="Large icon" options={options} onSelectOption={(value) => {}} icon={iconSVGLarge} />
139
148
  </ExampleContainer>
149
+ <ExampleContainer>
150
+ <Title title="Large icon (image)" theme="light" level={4} />
151
+ <DxcDropdown label="Large icon" options={options} onSelectOption={(value) => {}} icon="menu" />
152
+ </ExampleContainer>
140
153
  <ExampleContainer>
141
154
  <Title title="Disabled with icon" theme="light" level={4} />
142
155
  <DxcDropdown
@@ -219,94 +232,196 @@ export const Chromatic = () => (
219
232
  size="fillParent"
220
233
  />
221
234
  </ExampleContainer>
235
+ <ExampleContainer expanded>
236
+ <Title title="Opened menu" theme="light" level={4} />
237
+ <DxcDropdown label="Label" options={options} onSelectOption={(value) => {}} margin={{ top: "xxlarge" }} />
238
+ </ExampleContainer>
222
239
  </>
223
240
  );
224
241
 
225
- const DropdownListStates = () => (
242
+ const DropdownListStates = () => {
243
+ const colorsTheme: any = useTheme();
244
+
245
+ return (
246
+ <>
247
+ <Title title="Dropdown Menu" theme="light" level={2} />
248
+ <ExampleContainer>
249
+ <Title
250
+ title="List dialog uses a Radix Popover to appear over elements with a certain z-index"
251
+ theme="light"
252
+ level={3}
253
+ />
254
+ <div
255
+ style={{
256
+ position: "relative",
257
+ display: "flex",
258
+ flexDirection: "column",
259
+ gap: "20px",
260
+ height: "150px",
261
+ width: "min-content",
262
+ marginBottom: "100px",
263
+ padding: "20px",
264
+ border: "1px solid black",
265
+ borderRadius: "4px",
266
+ overflow: "auto",
267
+ zIndex: "1300",
268
+ }}
269
+ >
270
+ <DxcDropdown
271
+ label="Select a platform"
272
+ options={defaultOptions}
273
+ onSelectOption={(option) => {}}
274
+ size="medium"
275
+ />
276
+ <button style={{ zIndex: "1", width: "100px" }}>Submit</button>
277
+ </div>
278
+ </ExampleContainer>
279
+ <ThemeProvider theme={colorsTheme.dropdown}>
280
+ <Title title="Option states" theme="light" level={3} />
281
+ <ExampleContainer pseudoState="pseudo-hover">
282
+ <Title title="Hovered option" theme="light" level={4} />
283
+ <DropdownMenu
284
+ id="x1"
285
+ dropdownTriggerId="dtx1"
286
+ iconsPosition="before"
287
+ visualFocusIndex={-1}
288
+ menuItemOnClick={(value) => {}}
289
+ onKeyDown={(e) => {}}
290
+ options={optionWithIcon}
291
+ styles={{ width: 240 }}
292
+ />
293
+ </ExampleContainer>
294
+ <ExampleContainer pseudoState="pseudo-active">
295
+ <Title title="Active option" theme="light" level={4} />
296
+ <DropdownMenu
297
+ id="x2"
298
+ dropdownTriggerId="dtx2"
299
+ iconsPosition="before"
300
+ visualFocusIndex={-1}
301
+ menuItemOnClick={(value) => {}}
302
+ onKeyDown={(e) => {}}
303
+ options={optionWithIcon}
304
+ styles={{ width: 240 }}
305
+ />
306
+ </ExampleContainer>
307
+ <ExampleContainer>
308
+ <Title title="Focused option" theme="light" level={4} />
309
+ <DropdownMenu
310
+ id="x3"
311
+ dropdownTriggerId="dtx3"
312
+ iconsPosition="before"
313
+ visualFocusIndex={0}
314
+ menuItemOnClick={(value) => {}}
315
+ onKeyDown={(e) => {}}
316
+ options={options}
317
+ styles={{ width: 240 }}
318
+ />
319
+ </ExampleContainer>
320
+ <Title title="Icons" theme="light" level={3} />
321
+ <ExampleContainer>
322
+ <Title title="Before" theme="light" level={4} />
323
+ <DropdownMenu
324
+ id="x4"
325
+ dropdownTriggerId="dtx4"
326
+ iconsPosition="before"
327
+ visualFocusIndex={-1}
328
+ menuItemOnClick={(value) => {}}
329
+ onKeyDown={(e) => {}}
330
+ options={optionsIcon}
331
+ styles={{ width: 240 }}
332
+ />
333
+ <Title title="After" theme="light" level={4} />
334
+ <DropdownMenu
335
+ id="x5"
336
+ dropdownTriggerId="dtx5"
337
+ iconsPosition="after"
338
+ visualFocusIndex={-1}
339
+ menuItemOnClick={(value) => {}}
340
+ onKeyDown={(e) => {}}
341
+ options={optionsIcon}
342
+ styles={{ width: 240 }}
343
+ />
344
+ </ExampleContainer>
345
+ </ThemeProvider>
346
+ </>
347
+ );
348
+ };
349
+
350
+ const DropdownRightAlignment = () => (
351
+ <ExampleContainer expanded>
352
+ <Title title="Dropdown collisions on the right boundary (right)" theme="light" level={4} />
353
+ <DxcFlex justifyContent="flex-end">
354
+ <DxcDropdown label="Label" options={options} onSelectOption={(value) => {}} />
355
+ </DxcFlex>
356
+ </ExampleContainer>
357
+ );
358
+
359
+ const DropdownCenterAlignment = () => (
360
+ <ExampleContainer expanded>
361
+ <Title title="Dropdown collisions on the right boundary (centered)" theme="light" level={4} />
362
+ <DxcFlex justifyContent="flex-end">
363
+ <DxcDropdown label="Label" options={defaultOptions} onSelectOption={(value) => {}} margin="small" />
364
+ </DxcFlex>
365
+ </ExampleContainer>
366
+ );
367
+
368
+ export const Chromatic = Dropdown.bind({});
369
+ Chromatic.play = async ({ canvasElement }) => {
370
+ const canvas = within(canvasElement);
371
+ const buttonList = canvas.getAllByRole("button");
372
+ await userEvent.click(buttonList[buttonList.length - 1]);
373
+ };
374
+
375
+ export const OpinionatedTheme = () => (
226
376
  <>
227
- <Title title="Dropdown Menu" theme="light" level={2} />
228
- <Title title="Default with opened menu" theme="light" level={3} />
377
+ <Title title="Opinionated theme" theme="light" level={2} />
229
378
  <ExampleContainer>
230
- <div style={{ display: "flex", gap: "30px", flexDirection: "column", marginBottom: "80px" }}>
231
- <DxcDropdown label="Select a platform" options={defaultOptions} onSelectOption={(option) => {}} size="medium" />
232
- <DxcTextInput label="Your name" onChange={() => {}} />
233
- <DxcCheckbox
234
- label="You understand the selection and give your consent"
235
- onChange={() => {}}
236
- labelPosition="after"
237
- />
238
- </div>
379
+ <Title title="Default" theme="light" level={4} />
380
+ <HalstackProvider theme={opinionatedTheme}>
381
+ <DxcDropdown label="Default" options={options} onSelectOption={(value) => {}} icon={iconSVG} />
382
+ </HalstackProvider>
239
383
  </ExampleContainer>
240
- <Title title="Option states" theme="light" level={3} />
241
384
  <ExampleContainer pseudoState="pseudo-hover">
242
- <Title title="Hovered option" theme="light" level={4} />
243
- <DropdownMenu
244
- id="x"
245
- dropdownId="dX"
246
- iconsPosition="before"
247
- visualFocusIndex={-1}
248
- optionOnClick={(option) => {}}
249
- onKeyDown={(e) => {}}
250
- options={optionWithIcon}
251
- styles={{ width: 240 }}
252
- />
385
+ <Title title="Hovered" theme="light" level={4} />
386
+ <HalstackProvider theme={opinionatedTheme}>
387
+ <DxcDropdown label="Hovered" options={options} onSelectOption={(value) => {}} icon={iconSVG} />
388
+ </HalstackProvider>
253
389
  </ExampleContainer>
254
390
  <ExampleContainer pseudoState="pseudo-active">
255
- <Title title="Active option" theme="light" level={4} />
256
- <DropdownMenu
257
- id="x"
258
- dropdownId="dX"
259
- iconsPosition="before"
260
- visualFocusIndex={-1}
261
- optionOnClick={(option) => {}}
262
- onKeyDown={(e) => {}}
263
- options={optionWithIcon}
264
- styles={{ width: 240 }}
265
- />
391
+ <Title title="Actived" theme="light" level={4} />
392
+ <HalstackProvider theme={opinionatedTheme}>
393
+ <DxcDropdown label="Actived" options={options} onSelectOption={(value) => {}} icon={iconSVG} />
394
+ </HalstackProvider>
266
395
  </ExampleContainer>
267
- <ExampleContainer>
268
- <Title title="Focused option" theme="light" level={4} />
269
- <DropdownMenu
270
- id="x"
271
- dropdownId="dX"
272
- iconsPosition="before"
273
- visualFocusIndex={0}
274
- optionOnClick={(option) => {}}
275
- onKeyDown={(e) => {}}
276
- options={options}
277
- styles={{ width: 240 }}
278
- />
396
+ <ExampleContainer pseudoState="pseudo-focus">
397
+ <Title title="Focused" theme="light" level={4} />
398
+ <HalstackProvider theme={opinionatedTheme}>
399
+ <DxcDropdown label="Focused" options={options} onSelectOption={(value) => {}} icon={iconSVG} />
400
+ </HalstackProvider>
279
401
  </ExampleContainer>
280
- <Title title="Icons" theme="light" level={3} />
281
402
  <ExampleContainer>
282
- <Title title="Before" theme="light" level={4} />
283
- <DropdownMenu
284
- id="x"
285
- dropdownId="dX"
286
- iconsPosition="before"
287
- visualFocusIndex={-1}
288
- optionOnClick={(option) => {}}
289
- onKeyDown={(e) => {}}
290
- options={optionsIcon}
291
- styles={{ width: 240 }}
292
- />
293
- <Title title="After" theme="light" level={4} />
294
- <DropdownMenu
295
- id="x"
296
- dropdownId="dX"
297
- iconsPosition="after"
298
- visualFocusIndex={-1}
299
- optionOnClick={(option) => {}}
300
- onKeyDown={(e) => {}}
301
- options={optionsIcon}
302
- styles={{ width: 240 }}
303
- />
403
+ <Title title="Disabled" theme="light" level={4} />
404
+ <HalstackProvider theme={opinionatedTheme}>
405
+ <DxcDropdown label="Disabled" options={options} onSelectOption={(value) => {}} icon={iconSVG} disabled />
406
+ </HalstackProvider>
304
407
  </ExampleContainer>
305
408
  </>
306
409
  );
307
410
 
308
411
  export const DropdownMenuStates = DropdownListStates.bind({});
309
412
  DropdownMenuStates.play = async ({ canvasElement }) => {
413
+ const canvas = within(canvasElement);
414
+ await userEvent.click(canvas.getAllByRole("button")[0]);
415
+ };
416
+
417
+ export const DropdownMenuAlignedRight = DropdownRightAlignment.bind({});
418
+ DropdownMenuAlignedRight.play = async ({ canvasElement }) => {
419
+ const canvas = within(canvasElement);
420
+ await userEvent.click(canvas.getByRole("button"));
421
+ };
422
+
423
+ export const DropdownMenuAlignedCenter = DropdownCenterAlignment.bind({});
424
+ DropdownMenuAlignedCenter.play = async ({ canvasElement }) => {
310
425
  const canvas = within(canvasElement);
311
426
  await userEvent.click(canvas.getByRole("button"));
312
427
  };
@@ -0,0 +1 @@
1
+ export {};