@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
@@ -2,12 +2,23 @@ import React from "react";
2
2
  import DxcProgressBar from "./ProgressBar";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  export default {
7
- title: "ProgressBar",
8
+ title: "Progress Bar",
8
9
  component: DxcProgressBar,
9
10
  };
10
11
 
12
+ const opinionatedTheme = {
13
+ progressBar: {
14
+ accentColor: "#5f249f",
15
+ baseColor: "#e6e6e6",
16
+ fontColor: "#000000",
17
+ overlayColor: "#000000b3",
18
+ overlayFontColor: "#ffffff",
19
+ },
20
+ };
21
+
11
22
  export const Chromatic = () => (
12
23
  <>
13
24
  <ExampleContainer>
@@ -46,15 +57,37 @@ export const Chromatic = () => (
46
57
  <DxcProgressBar label="Margin xlarge" margin="xlarge" value={50} showValue />
47
58
  </ExampleContainer>
48
59
  <ExampleContainer>
49
- <Title title="XxLarge margin" theme="light" level={4} />
60
+ <Title title="Xxlarge margin" theme="light" level={4} />
50
61
  <DxcProgressBar label="Margin xxlarge" margin="xxlarge" value={50} showValue />
51
62
  </ExampleContainer>
63
+ <Title title="Opinionated theme" theme="light" level={2} />
64
+ <ExampleContainer>
65
+ <Title title="Label and helper text" theme="light" level={4} />
66
+ <HalstackProvider theme={opinionatedTheme}>
67
+ <DxcProgressBar label="Loading..." helperText="Helper text" value={24} showValue />
68
+ </HalstackProvider>
69
+ </ExampleContainer>
70
+ <ExampleContainer>
71
+ <Title title="Without default value" theme="light" level={4} />
72
+ <HalstackProvider theme={opinionatedTheme}>
73
+ <DxcProgressBar label="Loading..." helperText="Helper text" showValue />
74
+ </HalstackProvider>
75
+ </ExampleContainer>
52
76
  </>
53
77
  );
54
78
 
55
79
  export const ProgressBarOverlay = () => (
56
80
  <ExampleContainer>
57
81
  <Title title="Overlay" theme="dark" level={4} />
58
- <DxcProgressBar label="Overlay" helperText="Helper text" overlay={true} showValue value={50} />
82
+ <DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
83
+ </ExampleContainer>
84
+ );
85
+
86
+ export const ProgressBarOverlayOpinionated = () => (
87
+ <ExampleContainer>
88
+ <Title title="Overlay" theme="dark" level={4} />
89
+ <HalstackProvider theme={opinionatedTheme}>
90
+ <DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
91
+ </HalstackProvider>
59
92
  </ExampleContainer>
60
93
  );
@@ -0,0 +1 @@
1
+ export {};
@@ -1,108 +1,91 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _react = _interopRequireDefault(require("react"));
6
-
7
5
  var _react2 = require("@testing-library/react");
8
-
9
6
  var _ProgressBar = _interopRequireDefault(require("./ProgressBar"));
10
-
11
7
  describe("ProgressBar component tests", function () {
12
8
  test("ProgressBar renders with label and helperText", function () {
13
9
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
14
- label: "test-label",
15
- helperText: "helper-text"
16
- })),
17
- getByText = _render.getByText;
18
-
10
+ label: "test-label",
11
+ helperText: "helper-text"
12
+ })),
13
+ getByText = _render.getByText;
19
14
  expect(getByText("test-label")).toBeTruthy();
20
15
  expect(getByText("helper-text")).toBeTruthy();
21
16
  });
22
17
  test("ProgressBar renders with default value", function () {
23
18
  var value = 0;
24
-
25
19
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
26
- showValue: true
27
- })),
28
- getByText = _render2.getByText,
29
- getByRole = _render2.getByRole;
30
-
20
+ showValue: true
21
+ })),
22
+ getByText = _render2.getByText,
23
+ getByRole = _render2.getByRole;
31
24
  var progressBar = getByRole("progressbar");
32
25
  expect(getByText("0 %")).toBeTruthy();
33
26
  expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
34
27
  });
35
28
  test("ProgressBar renders with value", function () {
36
29
  var value = 25;
37
-
38
30
  var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
39
- showValue: true,
40
- value: value
41
- })),
42
- getByText = _render3.getByText,
43
- getByRole = _render3.getByRole;
44
-
31
+ showValue: true,
32
+ value: value
33
+ })),
34
+ getByText = _render3.getByText,
35
+ getByRole = _render3.getByRole;
45
36
  var progressBar = getByRole("progressbar");
46
37
  expect(getByText("25 %")).toBeTruthy();
47
38
  expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
48
39
  });
49
40
  test("ProgressBar renders with negative value", function () {
50
41
  var value = 0;
51
-
52
42
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
53
- showValue: true,
54
- value: -20
55
- })),
56
- getByText = _render4.getByText,
57
- getByRole = _render4.getByRole;
58
-
43
+ showValue: true,
44
+ value: -20
45
+ })),
46
+ getByText = _render4.getByText,
47
+ getByRole = _render4.getByRole;
59
48
  var progressBar = getByRole("progressbar");
60
49
  expect(getByText("0 %")).toBeTruthy();
61
50
  expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
62
51
  });
63
52
  test("ProgressBar renders as indeterminate", function () {
64
53
  var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], null)),
65
- getByRole = _render5.getByRole;
66
-
54
+ getByRole = _render5.getByRole;
67
55
  var progressBar = getByRole("progressbar");
68
56
  expect(progressBar.getAttribute("aria-valuenow")).toBe(null);
69
57
  });
70
58
  test("Overlay progressBar renders with label and helperText", function () {
71
59
  var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
72
- label: "test-label",
73
- helperText: "helper-text",
74
- overlay: true
75
- })),
76
- getByText = _render6.getByText;
77
-
60
+ label: "test-label",
61
+ helperText: "helper-text",
62
+ overlay: true
63
+ })),
64
+ getByText = _render6.getByText;
78
65
  expect(getByText("test-label")).toBeTruthy();
79
66
  expect(getByText("helper-text")).toBeTruthy();
80
67
  });
81
68
  test("Overlay progressBar renders with default value", function () {
82
69
  var value = 0;
83
-
84
70
  var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
85
- showValue: true,
86
- overlay: true
87
- })),
88
- getByText = _render7.getByText,
89
- getByRole = _render7.getByRole;
90
-
71
+ showValue: true,
72
+ overlay: true
73
+ })),
74
+ getByText = _render7.getByText,
75
+ getByRole = _render7.getByRole;
91
76
  var progressBar = getByRole("progressbar");
92
77
  expect(getByText("0 %")).toBeTruthy();
93
78
  expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
94
79
  });
95
80
  test("Overlay progressBar renders with value", function () {
96
81
  var value = 25;
97
-
98
82
  var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
99
- showValue: true,
100
- value: value,
101
- overlay: true
102
- })),
103
- getByText = _render8.getByText,
104
- getByRole = _render8.getByRole;
105
-
83
+ showValue: true,
84
+ value: value,
85
+ overlay: true
86
+ })),
87
+ getByText = _render8.getByText,
88
+ getByRole = _render8.getByRole;
106
89
  var progressBar = getByRole("progressbar");
107
90
  expect(getByText("25 %")).toBeTruthy();
108
91
  expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
@@ -1,11 +1,11 @@
1
- export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- export declare type Size = {
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Size = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- export declare type Props = {
8
+ type Props = {
9
9
  /**
10
10
  * Text to be placed above the progress bar.
11
11
  */
@@ -34,3 +34,4 @@ export declare type Props = {
34
34
  */
35
35
  margin?: Space | Size;
36
36
  };
37
+ export default Props;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _axeHelper = require("../../test/accessibility/axe-helper.js");
9
+ var _QuickNav = _interopRequireDefault(require("./QuickNav"));
10
+ var links = [{
11
+ label: "Overview",
12
+ links: [{
13
+ label: "Introduction"
14
+ }]
15
+ }, {
16
+ label: "Components",
17
+ links: [{
18
+ label: "Introduction"
19
+ }, {
20
+ label: "Accordion"
21
+ }]
22
+ }, {
23
+ label: "Principles very very very very very very very very long",
24
+ links: [{
25
+ label: "Color very very very very very very very very long"
26
+ }, {
27
+ label: "Spacingveryveryveryveryveryveryveryverylong"
28
+ }, {
29
+ label: "Typography"
30
+ }]
31
+ }, {
32
+ label: "Componentsveryveryveryveryveryveryveryverylong",
33
+ links: [{
34
+ label: "Accordion"
35
+ }]
36
+ }];
37
+ describe("Quick Nav component accessibility tests", function () {
38
+ it("Should not have basic accessibility issues for icon mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
39
+ var _render, container, results;
40
+ return _regenerator["default"].wrap(function _callee$(_context) {
41
+ while (1) switch (_context.prev = _context.next) {
42
+ case 0:
43
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_QuickNav["default"], {
44
+ links: links
45
+ })), container = _render.container;
46
+ _context.next = 3;
47
+ return (0, _axeHelper.axe)(container);
48
+ case 3:
49
+ results = _context.sent;
50
+ expect(results).toHaveNoViolations();
51
+ case 5:
52
+ case "end":
53
+ return _context.stop();
54
+ }
55
+ }, _callee);
56
+ })));
57
+ });
@@ -1,43 +1,27 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
10
  var _react = _interopRequireDefault(require("react"));
15
-
16
11
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
-
18
12
  var _slugify = _interopRequireDefault(require("slugify"));
19
-
20
13
  var _useTheme = _interopRequireDefault(require("../useTheme"));
21
-
22
14
  var _Heading = _interopRequireDefault(require("../heading/Heading"));
23
-
24
15
  var _Flex = _interopRequireDefault(require("../flex/Flex"));
25
-
26
16
  var _Inset = _interopRequireDefault(require("../inset/Inset"));
27
-
28
17
  var _Typography = _interopRequireDefault(require("../typography/Typography"));
29
-
30
18
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
31
-
32
19
  var _templateObject, _templateObject2, _templateObject3, _templateObject4;
33
-
34
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
-
36
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
-
20
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(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; }
38
22
  var DxcQuickNav = function DxcQuickNav(_ref) {
39
23
  var title = _ref.title,
40
- links = _ref.links;
24
+ links = _ref.links;
41
25
  var translatedLabels = (0, _useTranslatedLabels["default"])();
42
26
  var colorsTheme = (0, _useTheme["default"])();
43
27
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
@@ -48,13 +32,9 @@ var DxcQuickNav = function DxcQuickNav(_ref) {
48
32
  }, /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
49
33
  level: 4,
50
34
  text: title || translatedLabels.quickNav.contentTitle
51
- }), /*#__PURE__*/_react["default"].createElement(ListColumn, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
52
- direction: "column",
53
- gap: "0.5rem"
54
- }, links.map(function (link) {
35
+ }), /*#__PURE__*/_react["default"].createElement(ListColumn, null, links.map(function (link) {
55
36
  var _link$links;
56
-
57
- return /*#__PURE__*/_react["default"].createElement(ListRow, {
37
+ return /*#__PURE__*/_react["default"].createElement("li", {
58
38
  key: link.label
59
39
  }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
60
40
  space: "0.25rem"
@@ -62,20 +42,21 @@ var DxcQuickNav = function DxcQuickNav(_ref) {
62
42
  href: "#".concat((0, _slugify["default"])(link === null || link === void 0 ? void 0 : link.label, {
63
43
  lower: true
64
44
  }))
65
- }, link === null || link === void 0 ? void 0 : link.label), (_link$links = link.links) === null || _link$links === void 0 ? void 0 : _link$links.map(function (sublink) {
66
- return /*#__PURE__*/_react["default"].createElement(ListRow, {
45
+ }, link === null || link === void 0 ? void 0 : link.label), /*#__PURE__*/_react["default"].createElement(ListSecondColumn, null, (_link$links = link.links) === null || _link$links === void 0 ? void 0 : _link$links.map(function (sublink) {
46
+ return /*#__PURE__*/_react["default"].createElement("li", {
67
47
  key: sublink.label
68
48
  }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
69
49
  horizontal: "0.5rem"
70
50
  }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
71
- href: "#".concat((0, _slugify["default"])(sublink === null || sublink === void 0 ? void 0 : sublink.label, {
51
+ href: "#".concat((0, _slugify["default"])(link === null || link === void 0 ? void 0 : link.label, {
52
+ lower: true
53
+ }), "-").concat((0, _slugify["default"])(sublink === null || sublink === void 0 ? void 0 : sublink.label, {
72
54
  lower: true
73
55
  }))
74
56
  }, sublink === null || sublink === void 0 ? void 0 : sublink.label))));
75
- }))));
76
- }))))));
57
+ })))));
58
+ })))));
77
59
  };
78
-
79
60
  var QuickNavContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n border-left: 2px solid ", ";\n"])), function (props) {
80
61
  return props.theme.paddingTop;
81
62
  }, function (props) {
@@ -87,11 +68,8 @@ var QuickNavContainer = _styledComponents["default"].div(_templateObject || (_te
87
68
  }, function (props) {
88
69
  return props.theme.dividerBorderColor;
89
70
  });
90
-
91
- var ListColumn = _styledComponents["default"].ul(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n list-style-type: none;\n margin: 0;\n padding: 0;\n width: 100%;\n"])));
92
-
93
- var ListRow = _styledComponents["default"].li(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n"])));
94
-
71
+ var ListColumn = _styledComponents["default"].ul(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n margin: 0;\n padding: 0;\n list-style-type: none;\n"])));
72
+ var ListSecondColumn = _styledComponents["default"].ul(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style-type: none;\n"])));
95
73
  var Link = _styledComponents["default"].a(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n display: block;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n width: fit-content;\n max-width: 100%;\n\n &:hover {\n color: ", ";\n }\n &:focus {\n outline-color: ", ";\n outline-style: ", ";\n outline-width: ", ";\n border-radius: ", ";\n }\n"])), function (props) {
96
74
  return props.theme.fontSize;
97
75
  }, function (props) {
@@ -113,6 +91,4 @@ var Link = _styledComponents["default"].a(_templateObject4 || (_templateObject4
113
91
  }, function (props) {
114
92
  return props.theme.focusBorderRadius;
115
93
  });
116
-
117
- var _default = DxcQuickNav;
118
- exports["default"] = _default;
94
+ var _default = exports["default"] = DxcQuickNav;
@@ -5,39 +5,74 @@ import DxcHeading from "../heading/Heading";
5
5
  import DxcParagraph from "../paragraph/Paragraph";
6
6
  import Title from "../../.storybook/components/Title";
7
7
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
8
+ import { HalstackProvider } from "../HalstackContext";
8
9
 
9
10
  export default {
10
- title: "QuickNav",
11
+ title: "Quick Nav",
11
12
  component: DxcQuickNav,
12
13
  };
13
14
 
15
+ const opinionatedTheme = {
16
+ quickNav: {
17
+ fontColor: "#666666",
18
+ accentColor: "#9a6bb2",
19
+ },
20
+ };
21
+
22
+ const defaultLinks = [
23
+ {
24
+ label: "Overview",
25
+ },
26
+ {
27
+ label: "Principles",
28
+ links: [{ label: "Color" }, { label: "Spacing" }, { label: "Typography" }],
29
+ },
30
+ {
31
+ label: "Components",
32
+ links: [
33
+ {
34
+ label: "Accordion",
35
+ },
36
+ {
37
+ label: "Button",
38
+ },
39
+ ],
40
+ },
41
+ ];
42
+
14
43
  const links = [
15
44
  {
16
45
  label: "Overview",
17
- id: "overview",
18
46
  links: [
19
47
  {
20
48
  label: "Introduction",
21
- id: "introduction",
49
+ },
50
+ ],
51
+ },
52
+ {
53
+ label: "Components",
54
+ links: [
55
+ {
56
+ label: "Introduction",
57
+ },
58
+ {
59
+ label: "Accordion",
22
60
  },
23
61
  ],
24
62
  },
25
63
  {
26
64
  label: "Principles very very very very very very very very long",
27
- id: "principles",
28
65
  links: [
29
- { label: "Color very very very very very very very very long", id: "color" },
30
- { label: "Spacingveryveryveryveryveryveryveryverylong", id: "spacing" },
31
- { label: "Typography", id: "typography" },
66
+ { label: "Color very very very very very very very very long" },
67
+ { label: "Spacingveryveryveryveryveryveryveryverylong" },
68
+ { label: "Typography" },
32
69
  ],
33
70
  },
34
71
  {
35
72
  label: "Componentsveryveryveryveryveryveryveryverylong",
36
- id: "components",
37
73
  links: [
38
74
  {
39
75
  label: "Accordion",
40
- id: "accordion",
41
76
  },
42
77
  ],
43
78
  },
@@ -48,19 +83,25 @@ export const Chromatic = () => (
48
83
  <ExampleContainer>
49
84
  <Title title="Default" level={4} />
50
85
  <QuickNavContainer>
51
- <DxcQuickNav links={links}></DxcQuickNav>
86
+ <DxcQuickNav links={defaultLinks} />
87
+ </QuickNavContainer>
88
+ </ExampleContainer>
89
+ <ExampleContainer>
90
+ <Title title="Text overflow" level={4} />
91
+ <QuickNavContainer>
92
+ <DxcQuickNav links={links} />
52
93
  </QuickNavContainer>
53
94
  </ExampleContainer>
54
95
  <ExampleContainer pseudoState="pseudo-hover">
55
96
  <Title title="Link hovered" level={4} />
56
97
  <QuickNavContainer>
57
- <DxcQuickNav links={links}></DxcQuickNav>
98
+ <DxcQuickNav links={links} />
58
99
  </QuickNavContainer>
59
100
  </ExampleContainer>
60
101
  <ExampleContainer pseudoState="pseudo-focus">
61
102
  <Title title="Link focus" level={4} />
62
103
  <QuickNavContainer>
63
- <DxcQuickNav links={links}></DxcQuickNav>
104
+ <DxcQuickNav links={links} />
64
105
  </QuickNavContainer>
65
106
  </ExampleContainer>
66
107
  <ExampleContainer>
@@ -87,7 +128,7 @@ export const Chromatic = () => (
87
128
  open source design system for insurance products and digital experiences. Our system provides all the
88
129
  tools and resources needed to create superior, beautiful but above all, functional user experiences.
89
130
  </DxcParagraph>
90
- <Content id="introduction">
131
+ <Content id="overview-introduction">
91
132
  <DxcHeading level={2} text="Introduction" margin={{ top: "xsmall", bottom: "xsmall" }} />
92
133
  <DxcParagraph>
93
134
  Design principles Halstack design principles are the fundamental part of DXC Technology's approach to
@@ -122,9 +163,54 @@ export const Chromatic = () => (
122
163
  </DxcParagraph>
123
164
  </Content>
124
165
  </Content>
125
- <Content id="principles">
166
+ <Content id="components">
167
+ <DxcHeading level={1} text="Components" margin={{ top: "small", bottom: "xsmall" }} />
168
+ <Content id="components-introduction">
169
+ <DxcHeading level={2} text="Introduction" margin={{ top: "xsmall", bottom: "xsmall" }} />
170
+ <DxcParagraph>
171
+ Design principles Halstack design principles are the fundamental part of DXC Technology's approach to
172
+ provide guidance for development teams in order to deliver delightful and consistent user experiences to
173
+ our customers: Balance Consistency Visual hierarchy All our components, design tokens, accessibility
174
+ guidelines, responsive design techniques, and layout proposals have been carefully curated by DXC design
175
+ and engineering teams with the objective of creating a unique visual language and ecosystem for our
176
+ applications. This is the DXC way of creating User Experiences. Open Source Halstack is an open source
177
+ design system, this means that we work towards DXC Technology bussines needs, but it is open for anyone
178
+ to use and contribute back to. We are charmed to receive external contributions to help us find bugs,
179
+ design new features, or help us improve the project documentation. If you're interested, definitely
180
+ check out our contribution guidelines.Design principles Halstack design principles are the fundamental
181
+ part of DXC Technology's approach to provide guidance for development teams in order to deliver
182
+ delightful and consistent user experiences to our customers: Balance Consistency Visual hierarchy All
183
+ our components, design tokens, accessibility guidelines, responsive design techniques, and layout
184
+ proposals have been carefully curated by DXC design and engineering teams with the objective of creating
185
+ a unique visual language and ecosystem for our applications. This is the DXC way of creating User
186
+ Experiences. Open Source Halstack is an open source design system, this means that we work towards DXC
187
+ Technology bussines needs, but it is open for anyone to use and contribute back to. We are charmed to
188
+ receive external contributions to help us find bugs, design new features, or help us improve the project
189
+ documentation. If you're interested, definitely check out our contribution guidelines.Design principles
190
+ Halstack design principles are the fundamental part of DXC Technology's approach to provide guidance for
191
+ development teams in order to deliver delightful and consistent user experiences to our customers:
192
+ Balance Consistency Visual hierarchy All our components, design tokens, accessibility guidelines,
193
+ responsive design techniques, and layout proposals have been carefully curated by DXC design and
194
+ engineering teams with the objective of creating a unique visual language and ecosystem for our
195
+ applications. This is the DXC way of creating User Experiences. Open Source Halstack is an open source
196
+ design system, this means that we work towards DXC Technology bussines needs, but it is open for anyone
197
+ to use and contribute back to. We are charmed to receive external contributions to help us find bugs,
198
+ design new features, or help us improve the project documentation. If you're interested, definitely
199
+ check out our contribution guidelines.
200
+ </DxcParagraph>
201
+ </Content>
202
+ <Content id="components-accordion">
203
+ <DxcHeading level={2} text="Accordion" margin={{ top: "xsmall", bottom: "xsmall" }} />
204
+ <DxcParagraph>
205
+ Accordions are used to group similar content and hide or show it depending on user needs or preferences.
206
+ Accordions give users more granular control over the interface and help digest content in stages, rather
207
+ than all at once.
208
+ </DxcParagraph>
209
+ </Content>
210
+ </Content>
211
+ <Content id="principles-very-very-very-very-very-very-very-very-long">
126
212
  <DxcHeading level={1} text="Principles" margin={{ top: "small", bottom: "xsmall" }} />
127
- <Content id="color">
213
+ <Content id="principles-very-very-very-very-very-very-very-very-long-color-very-very-very-very-very-very-very-very-long">
128
214
  <DxcHeading level={2} text="Color" margin={{ top: "xsmall", bottom: "xsmall" }} />
129
215
  <DxcParagraph>
130
216
  The color palette is an essential asset as a communication resource of our design system. Halstack color
@@ -161,7 +247,7 @@ export const Chromatic = () => (
161
247
  role-based color palettes and must not be used outside this context.
162
248
  </DxcParagraph>
163
249
  </Content>
164
- <Content id="spacing">
250
+ <Content id="principles-very-very-very-very-very-very-very-very-long-spacingveryveryveryveryveryveryveryverylong">
165
251
  <DxcHeading level={2} text="Spacing" margin={{ top: "xsmall", bottom: "xsmall" }} />
166
252
  <DxcParagraph>
167
253
  In the search of consistent alignment between the elements we provide a spacing scale based on a root
@@ -183,7 +269,7 @@ export const Chromatic = () => (
183
269
  easily multiplied, they provide flexible and consistent, yet distinct enough, steps between them.
184
270
  </DxcParagraph>
185
271
  </Content>
186
- <Content id="typography">
272
+ <Content id="principles-very-very-very-very-very-very-very-very-long-typography">
187
273
  <DxcHeading level={2} text="Typography" margin={{ top: "xsmall", bottom: "xsmall" }} />
188
274
  <DxcParagraph>
189
275
  Our selected typography helps in structuring our user's experience based on the visual impact that it
@@ -220,9 +306,9 @@ export const Chromatic = () => (
220
306
  </DxcParagraph>
221
307
  </Content>
222
308
  </Content>
223
- <Content id="components">
309
+ <Content id="componentsveryveryveryveryveryveryveryverylong">
224
310
  <DxcHeading level={1} text="Components" margin={{ top: "small", bottom: "xsmall" }} />
225
- <Content id="accordion">
311
+ <Content id="componentsveryveryveryveryveryveryveryverylong-accordion">
226
312
  <DxcHeading level={2} text="Accordion" margin={{ top: "xsmall", bottom: "xsmall" }} />
227
313
  <DxcParagraph>
228
314
  Accordions are used to group similar content and hide or show it depending on user needs or preferences.
@@ -233,10 +319,16 @@ export const Chromatic = () => (
233
319
  </Content>
234
320
  </ContentContainer>
235
321
  <QuickNavContainer>
236
- <DxcQuickNav title="Sections" links={links}></DxcQuickNav>
322
+ <DxcQuickNav title="Sections" links={links} />
237
323
  </QuickNavContainer>
238
324
  </Container>
239
325
  </ExampleContainer>
326
+ <Title title="Opinionated theme" level={2} />
327
+ <ExampleContainer>
328
+ <HalstackProvider theme={opinionatedTheme}>
329
+ <DxcQuickNav links={defaultLinks} />
330
+ </HalstackProvider>
331
+ </ExampleContainer>
240
332
  </>
241
333
  );
242
334