@dxc-technology/halstack-react 0.0.0-4bc8a44 → 0.0.0-4c0fd86

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 (460) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +4 -21
  3. package/HalstackContext.d.ts +77 -144
  4. package/HalstackContext.js +41 -56
  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 +35 -101
  10. package/accordion/Accordion.stories.tsx +8 -162
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +19 -34
  13. package/accordion/types.d.ts +6 -18
  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 +27 -75
  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 +42 -74
  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 -19
  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 +34 -120
  37. package/alert/Alert.test.d.ts +1 -0
  38. package/alert/Alert.test.js +29 -46
  39. package/alert/types.d.ts +5 -5
  40. package/badge/Badge.accessibility.test.d.ts +1 -0
  41. package/badge/Badge.accessibility.test.js +129 -0
  42. package/badge/Badge.d.ts +1 -1
  43. package/badge/Badge.js +142 -42
  44. package/badge/Badge.stories.tsx +210 -0
  45. package/badge/Badge.test.d.ts +1 -0
  46. package/badge/Badge.test.js +30 -0
  47. package/badge/types.d.ts +52 -3
  48. package/bleed/Bleed.js +13 -21
  49. package/bleed/types.d.ts +2 -2
  50. package/box/Box.accessibility.test.d.ts +1 -0
  51. package/box/Box.accessibility.test.js +33 -0
  52. package/box/Box.d.ts +1 -1
  53. package/box/Box.js +16 -55
  54. package/box/Box.stories.tsx +25 -53
  55. package/box/Box.test.d.ts +1 -0
  56. package/box/Box.test.js +2 -7
  57. package/box/types.d.ts +3 -15
  58. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  59. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  60. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  61. package/breadcrumbs/Breadcrumbs.js +79 -0
  62. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  63. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  64. package/breadcrumbs/Breadcrumbs.test.js +168 -0
  65. package/breadcrumbs/Item.d.ts +4 -0
  66. package/breadcrumbs/Item.js +52 -0
  67. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  68. package/breadcrumbs/dropdownTheme.js +62 -0
  69. package/breadcrumbs/types.d.ts +40 -0
  70. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  71. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  72. package/bulleted-list/BulletedList.js +22 -55
  73. package/bulleted-list/BulletedList.stories.tsx +2 -93
  74. package/bulleted-list/types.d.ts +5 -5
  75. package/button/Button.accessibility.test.d.ts +1 -0
  76. package/button/Button.accessibility.test.js +127 -0
  77. package/button/Button.d.ts +1 -1
  78. package/button/Button.js +68 -100
  79. package/button/Button.stories.tsx +35 -135
  80. package/button/Button.test.d.ts +1 -0
  81. package/button/Button.test.js +20 -17
  82. package/button/types.d.ts +9 -5
  83. package/card/Card.accessibility.test.d.ts +1 -0
  84. package/card/Card.accessibility.test.js +36 -0
  85. package/card/Card.d.ts +1 -1
  86. package/card/Card.js +40 -79
  87. package/card/Card.stories.tsx +1 -30
  88. package/card/Card.test.d.ts +1 -0
  89. package/card/Card.test.js +11 -22
  90. package/card/types.d.ts +6 -12
  91. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  92. package/checkbox/Checkbox.accessibility.test.js +87 -0
  93. package/checkbox/Checkbox.js +88 -126
  94. package/checkbox/Checkbox.stories.tsx +16 -54
  95. package/checkbox/Checkbox.test.d.ts +1 -0
  96. package/checkbox/Checkbox.test.js +108 -64
  97. package/checkbox/types.d.ts +8 -4
  98. package/chip/Chip.accessibility.test.d.ts +1 -0
  99. package/chip/Chip.accessibility.test.js +67 -0
  100. package/chip/Chip.js +22 -36
  101. package/chip/Chip.stories.tsx +6 -25
  102. package/chip/Chip.test.d.ts +1 -0
  103. package/chip/Chip.test.js +18 -31
  104. package/chip/types.d.ts +4 -4
  105. package/common/coreTokens.d.ts +105 -15
  106. package/common/coreTokens.js +41 -25
  107. package/common/utils.js +2 -8
  108. package/common/variables.d.ts +83 -144
  109. package/common/variables.js +153 -227
  110. package/container/Container.d.ts +4 -0
  111. package/container/Container.js +194 -0
  112. package/container/Container.stories.tsx +214 -0
  113. package/container/types.d.ts +176 -0
  114. package/container/types.js +5 -0
  115. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  116. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  117. package/contextual-menu/ContextualMenu.d.ts +5 -0
  118. package/contextual-menu/ContextualMenu.js +136 -0
  119. package/contextual-menu/ContextualMenu.stories.tsx +231 -0
  120. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  121. package/contextual-menu/ContextualMenu.test.js +247 -0
  122. package/contextual-menu/GroupItem.d.ts +4 -0
  123. package/contextual-menu/GroupItem.js +67 -0
  124. package/contextual-menu/ItemAction.d.ts +4 -0
  125. package/contextual-menu/ItemAction.js +88 -0
  126. package/contextual-menu/MenuItem.d.ts +4 -0
  127. package/contextual-menu/MenuItem.js +29 -0
  128. package/contextual-menu/SingleItem.d.ts +4 -0
  129. package/contextual-menu/SingleItem.js +38 -0
  130. package/contextual-menu/types.d.ts +65 -0
  131. package/contextual-menu/types.js +5 -0
  132. package/date-input/Calendar.js +59 -87
  133. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  134. package/date-input/DateInput.accessibility.test.js +229 -0
  135. package/date-input/DateInput.js +70 -111
  136. package/date-input/DateInput.stories.tsx +22 -35
  137. package/date-input/DateInput.test.d.ts +1 -0
  138. package/date-input/DateInput.test.js +675 -702
  139. package/date-input/DatePicker.js +23 -48
  140. package/date-input/YearPicker.js +17 -38
  141. package/date-input/types.d.ts +28 -22
  142. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  143. package/dialog/Dialog.accessibility.test.js +69 -0
  144. package/dialog/Dialog.d.ts +1 -1
  145. package/dialog/Dialog.js +23 -79
  146. package/dialog/Dialog.stories.tsx +219 -169
  147. package/dialog/Dialog.test.d.ts +1 -0
  148. package/dialog/Dialog.test.js +216 -215
  149. package/dialog/types.d.ts +18 -26
  150. package/divider/Divider.accessibility.test.d.ts +1 -0
  151. package/divider/Divider.accessibility.test.js +33 -0
  152. package/divider/Divider.d.ts +4 -0
  153. package/divider/Divider.js +36 -0
  154. package/divider/Divider.stories.tsx +224 -0
  155. package/divider/Divider.test.d.ts +1 -0
  156. package/divider/Divider.test.js +38 -0
  157. package/divider/types.d.ts +21 -0
  158. package/divider/types.js +5 -0
  159. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  160. package/dropdown/Dropdown.accessibility.test.js +183 -0
  161. package/dropdown/Dropdown.js +67 -135
  162. package/dropdown/Dropdown.stories.tsx +16 -27
  163. package/dropdown/Dropdown.test.d.ts +1 -0
  164. package/dropdown/Dropdown.test.js +434 -392
  165. package/dropdown/DropdownMenu.js +12 -23
  166. package/dropdown/DropdownMenuItem.js +13 -21
  167. package/dropdown/types.d.ts +20 -24
  168. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  169. package/file-input/FileInput.accessibility.test.js +167 -0
  170. package/file-input/FileInput.js +177 -286
  171. package/file-input/FileInput.stories.tsx +1 -1
  172. package/file-input/FileInput.test.d.ts +1 -0
  173. package/file-input/FileInput.test.js +303 -356
  174. package/file-input/FileItem.js +30 -67
  175. package/file-input/types.d.ts +9 -13
  176. package/flex/Flex.js +25 -39
  177. package/flex/types.d.ts +6 -6
  178. package/footer/Footer.accessibility.test.d.ts +1 -0
  179. package/footer/Footer.accessibility.test.js +125 -0
  180. package/footer/Footer.d.ts +1 -1
  181. package/footer/Footer.js +72 -115
  182. package/footer/Footer.stories.tsx +77 -97
  183. package/footer/Footer.test.d.ts +1 -0
  184. package/footer/Footer.test.js +22 -34
  185. package/footer/Icons.d.ts +3 -2
  186. package/footer/Icons.js +53 -22
  187. package/footer/types.d.ts +26 -28
  188. package/grid/Grid.d.ts +1 -1
  189. package/grid/Grid.js +2 -17
  190. package/grid/Grid.stories.tsx +41 -39
  191. package/grid/types.d.ts +10 -10
  192. package/header/Header.accessibility.test.d.ts +1 -0
  193. package/header/Header.accessibility.test.js +94 -0
  194. package/header/Header.d.ts +2 -2
  195. package/header/Header.js +41 -134
  196. package/header/Header.stories.tsx +24 -72
  197. package/header/Header.test.d.ts +1 -0
  198. package/header/Header.test.js +13 -26
  199. package/header/Icons.d.ts +2 -2
  200. package/header/Icons.js +3 -13
  201. package/header/types.d.ts +7 -22
  202. package/heading/Heading.accessibility.test.d.ts +1 -0
  203. package/heading/Heading.accessibility.test.js +33 -0
  204. package/heading/Heading.js +9 -31
  205. package/heading/Heading.test.d.ts +1 -0
  206. package/heading/Heading.test.js +65 -95
  207. package/heading/types.d.ts +7 -7
  208. package/icon/Icon.accessibility.test.d.ts +1 -0
  209. package/icon/Icon.accessibility.test.js +30 -0
  210. package/icon/Icon.d.ts +4 -0
  211. package/icon/Icon.js +33 -0
  212. package/icon/Icon.stories.tsx +28 -0
  213. package/icon/types.d.ts +4 -0
  214. package/icon/types.js +5 -0
  215. package/image/Image.accessibility.test.d.ts +1 -0
  216. package/image/Image.accessibility.test.js +56 -0
  217. package/image/Image.d.ts +4 -0
  218. package/image/Image.js +70 -0
  219. package/image/Image.stories.tsx +129 -0
  220. package/image/types.d.ts +72 -0
  221. package/image/types.js +5 -0
  222. package/inset/Inset.js +13 -21
  223. package/inset/types.d.ts +2 -2
  224. package/layout/ApplicationLayout.d.ts +3 -3
  225. package/layout/ApplicationLayout.js +35 -69
  226. package/layout/ApplicationLayout.stories.tsx +1 -1
  227. package/layout/Icons.d.ts +7 -5
  228. package/layout/Icons.js +41 -59
  229. package/layout/types.d.ts +3 -3
  230. package/link/Link.accessibility.test.d.ts +1 -0
  231. package/link/Link.accessibility.test.js +108 -0
  232. package/link/Link.js +28 -47
  233. package/link/Link.stories.tsx +4 -4
  234. package/link/Link.test.d.ts +1 -0
  235. package/link/Link.test.js +24 -42
  236. package/link/types.d.ts +14 -14
  237. package/main.d.ts +9 -4
  238. package/main.js +46 -59
  239. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  240. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  241. package/nav-tabs/NavTabs.d.ts +2 -3
  242. package/nav-tabs/NavTabs.js +39 -56
  243. package/nav-tabs/NavTabs.stories.tsx +57 -23
  244. package/nav-tabs/NavTabs.test.d.ts +1 -0
  245. package/nav-tabs/NavTabs.test.js +46 -51
  246. package/nav-tabs/NavTabsContext.d.ts +3 -0
  247. package/nav-tabs/NavTabsContext.js +8 -0
  248. package/nav-tabs/Tab.js +53 -86
  249. package/nav-tabs/types.d.ts +15 -16
  250. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  251. package/number-input/NumberInput.accessibility.test.js +227 -0
  252. package/number-input/NumberInput.js +50 -37
  253. package/number-input/NumberInput.stories.tsx +37 -26
  254. package/number-input/NumberInput.test.d.ts +1 -0
  255. package/number-input/NumberInput.test.js +859 -413
  256. package/number-input/NumberInputContext.d.ts +3 -4
  257. package/number-input/NumberInputContext.js +3 -14
  258. package/number-input/types.d.ts +17 -5
  259. package/package.json +48 -41
  260. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  261. package/paginator/Paginator.accessibility.test.js +78 -0
  262. package/paginator/Paginator.js +28 -53
  263. package/paginator/Paginator.test.d.ts +1 -0
  264. package/paginator/Paginator.test.js +231 -202
  265. package/paginator/types.d.ts +3 -3
  266. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  267. package/paragraph/Paragraph.accessibility.test.js +28 -0
  268. package/paragraph/Paragraph.js +3 -19
  269. package/paragraph/Paragraph.stories.tsx +0 -17
  270. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  271. package/password-input/PasswordInput.accessibility.test.js +152 -0
  272. package/password-input/PasswordInput.js +62 -128
  273. package/password-input/PasswordInput.stories.tsx +11 -34
  274. package/password-input/PasswordInput.test.d.ts +1 -0
  275. package/password-input/PasswordInput.test.js +157 -141
  276. package/password-input/types.d.ts +8 -7
  277. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  278. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  279. package/progress-bar/ProgressBar.js +26 -56
  280. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
  281. package/progress-bar/ProgressBar.test.d.ts +1 -0
  282. package/progress-bar/ProgressBar.test.js +36 -53
  283. package/progress-bar/types.d.ts +3 -3
  284. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  285. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  286. package/quick-nav/QuickNav.js +4 -27
  287. package/quick-nav/QuickNav.stories.tsx +1 -1
  288. package/quick-nav/types.d.ts +10 -10
  289. package/radio-group/Radio.d.ts +1 -1
  290. package/radio-group/Radio.js +31 -66
  291. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  292. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  293. package/radio-group/RadioGroup.js +48 -98
  294. package/radio-group/RadioGroup.stories.tsx +10 -10
  295. package/radio-group/RadioGroup.test.d.ts +1 -0
  296. package/radio-group/RadioGroup.test.js +505 -473
  297. package/radio-group/types.d.ts +8 -8
  298. package/resultset-table/Icons.d.ts +7 -0
  299. package/{resultsetTable → resultset-table}/Icons.js +1 -5
  300. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  301. package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
  302. package/resultset-table/ResultsetTable.d.ts +7 -0
  303. package/{resultsetTable → resultset-table}/ResultsetTable.js +74 -74
  304. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +119 -6
  305. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  306. package/resultset-table/ResultsetTable.test.js +450 -0
  307. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  308. package/resultset-table/types.js +5 -0
  309. package/select/Listbox.js +36 -54
  310. package/select/Option.js +28 -36
  311. package/select/Select.accessibility.test.d.ts +1 -0
  312. package/select/Select.accessibility.test.js +227 -0
  313. package/select/Select.js +114 -178
  314. package/select/Select.stories.tsx +70 -113
  315. package/select/Select.test.d.ts +1 -0
  316. package/select/Select.test.js +1900 -1861
  317. package/select/types.d.ts +15 -16
  318. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  319. package/sidenav/Sidenav.accessibility.test.js +59 -0
  320. package/sidenav/Sidenav.js +44 -81
  321. package/sidenav/Sidenav.stories.tsx +5 -10
  322. package/sidenav/Sidenav.test.d.ts +1 -0
  323. package/sidenav/Sidenav.test.js +4 -11
  324. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  325. package/{layout → sidenav}/SidenavContext.js +3 -9
  326. package/sidenav/types.d.ts +20 -20
  327. package/slider/Slider.accessibility.test.d.ts +1 -0
  328. package/slider/Slider.accessibility.test.js +103 -0
  329. package/slider/Slider.js +66 -125
  330. package/slider/Slider.stories.tsx +0 -60
  331. package/slider/Slider.test.d.ts +1 -0
  332. package/slider/Slider.test.js +118 -112
  333. package/slider/types.d.ts +4 -4
  334. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  335. package/spinner/Spinner.accessibility.test.js +96 -0
  336. package/spinner/Spinner.js +21 -55
  337. package/spinner/Spinner.test.d.ts +1 -0
  338. package/spinner/Spinner.test.js +26 -35
  339. package/spinner/types.d.ts +3 -3
  340. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  341. package/status-light/StatusLight.accessibility.test.js +157 -0
  342. package/status-light/StatusLight.d.ts +4 -0
  343. package/status-light/StatusLight.js +51 -0
  344. package/status-light/StatusLight.stories.tsx +74 -0
  345. package/status-light/StatusLight.test.d.ts +1 -0
  346. package/status-light/StatusLight.test.js +25 -0
  347. package/status-light/types.d.ts +17 -0
  348. package/status-light/types.js +5 -0
  349. package/switch/Switch.accessibility.test.d.ts +1 -0
  350. package/switch/Switch.accessibility.test.js +98 -0
  351. package/switch/Switch.js +49 -100
  352. package/switch/Switch.stories.tsx +12 -34
  353. package/switch/Switch.test.d.ts +1 -0
  354. package/switch/Switch.test.js +52 -97
  355. package/switch/types.d.ts +4 -4
  356. package/table/DropdownTheme.js +62 -0
  357. package/table/Table.accessibility.test.d.ts +1 -0
  358. package/table/Table.accessibility.test.js +92 -0
  359. package/table/Table.d.ts +6 -2
  360. package/table/Table.js +76 -33
  361. package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
  362. package/table/Table.test.d.ts +1 -0
  363. package/table/Table.test.js +92 -7
  364. package/table/types.d.ts +34 -6
  365. package/tabs/Tab.js +22 -37
  366. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  367. package/tabs/Tabs.accessibility.test.js +56 -0
  368. package/tabs/Tabs.js +59 -147
  369. package/tabs/Tabs.stories.tsx +8 -4
  370. package/tabs/Tabs.test.d.ts +1 -0
  371. package/tabs/Tabs.test.js +58 -132
  372. package/tabs/types.d.ts +21 -21
  373. package/tag/Tag.accessibility.test.d.ts +1 -0
  374. package/tag/Tag.accessibility.test.js +69 -0
  375. package/tag/Tag.js +27 -57
  376. package/tag/Tag.stories.tsx +5 -8
  377. package/tag/Tag.test.d.ts +1 -0
  378. package/tag/Tag.test.js +18 -37
  379. package/tag/types.d.ts +9 -9
  380. package/text-input/Suggestion.js +9 -26
  381. package/text-input/Suggestions.d.ts +1 -1
  382. package/text-input/Suggestions.js +30 -70
  383. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  384. package/text-input/TextInput.accessibility.test.js +320 -0
  385. package/text-input/TextInput.js +224 -326
  386. package/text-input/TextInput.stories.tsx +68 -160
  387. package/text-input/TextInput.test.d.ts +1 -0
  388. package/text-input/TextInput.test.js +1227 -1195
  389. package/text-input/types.d.ts +25 -17
  390. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  391. package/textarea/Textarea.accessibility.test.js +155 -0
  392. package/textarea/Textarea.js +64 -105
  393. package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -100
  394. package/textarea/Textarea.test.d.ts +1 -0
  395. package/textarea/Textarea.test.js +151 -180
  396. package/textarea/types.d.ts +9 -5
  397. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  398. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  399. package/toggle-group/ToggleGroup.js +90 -109
  400. package/toggle-group/ToggleGroup.stories.tsx +11 -8
  401. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  402. package/toggle-group/ToggleGroup.test.js +69 -88
  403. package/toggle-group/types.d.ts +28 -19
  404. package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
  405. package/tooltip/Tooltip.accessibility.test.js +144 -0
  406. package/tooltip/Tooltip.d.ts +4 -0
  407. package/tooltip/Tooltip.js +50 -0
  408. package/tooltip/Tooltip.stories.tsx +111 -0
  409. package/tooltip/Tooltip.test.d.ts +1 -0
  410. package/tooltip/Tooltip.test.js +112 -0
  411. package/tooltip/types.d.ts +16 -0
  412. package/tooltip/types.js +5 -0
  413. package/typography/Typography.accessibility.test.d.ts +1 -0
  414. package/typography/Typography.accessibility.test.js +339 -0
  415. package/typography/Typography.js +4 -13
  416. package/typography/Typography.stories.tsx +1 -3
  417. package/typography/Typography.test.js +23 -0
  418. package/typography/types.d.ts +1 -1
  419. package/useTheme.d.ts +74 -141
  420. package/useTheme.js +1 -8
  421. package/useTranslatedLabels.js +1 -7
  422. package/utils/BaseTypography.d.ts +2 -2
  423. package/utils/BaseTypography.js +60 -70
  424. package/utils/FocusLock.js +26 -39
  425. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  426. package/wizard/Wizard.accessibility.test.js +55 -0
  427. package/wizard/Wizard.js +27 -73
  428. package/wizard/Wizard.stories.tsx +20 -1
  429. package/wizard/Wizard.test.d.ts +1 -0
  430. package/wizard/Wizard.test.js +54 -81
  431. package/wizard/types.d.ts +8 -8
  432. package/card/ice-cream.jpg +0 -0
  433. package/common/OpenSans.css +0 -69
  434. package/common/fonts/OpenSans-Bold.ttf +0 -0
  435. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  436. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  437. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  438. package/common/fonts/OpenSans-Italic.ttf +0 -0
  439. package/common/fonts/OpenSans-Light.ttf +0 -0
  440. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  441. package/common/fonts/OpenSans-Regular.ttf +0 -0
  442. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  443. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  444. package/date-input/Icons.d.ts +0 -6
  445. package/date-input/Icons.js +0 -75
  446. package/number-input/numberInputContextTypes.d.ts +0 -19
  447. package/paginator/Icons.d.ts +0 -5
  448. package/paginator/Icons.js +0 -54
  449. package/resultsetTable/Icons.d.ts +0 -7
  450. package/resultsetTable/ResultsetTable.d.ts +0 -4
  451. package/resultsetTable/ResultsetTable.test.js +0 -325
  452. package/select/Icons.d.ts +0 -10
  453. package/select/Icons.js +0 -93
  454. package/sidenav/Icons.d.ts +0 -7
  455. package/sidenav/Icons.js +0 -51
  456. package/text-input/Icons.d.ts +0 -8
  457. package/text-input/Icons.js +0 -60
  458. /package/{resultsetTable → action-icon}/types.js +0 -0
  459. /package/{number-input/numberInputContextTypes.js → breadcrumbs/types.js} +0 -0
  460. /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
package/main.js CHANGED
@@ -1,18 +1,10 @@
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
- Object.defineProperty(exports, "BackgroundColorProvider", {
11
- enumerable: true,
12
- get: function get() {
13
- return _BackgroundColorContext.BackgroundColorProvider;
14
- }
15
- });
16
8
  Object.defineProperty(exports, "DxcAccordion", {
17
9
  enumerable: true,
18
10
  get: function get() {
@@ -55,6 +47,12 @@ Object.defineProperty(exports, "DxcBox", {
55
47
  return _Box["default"];
56
48
  }
57
49
  });
50
+ Object.defineProperty(exports, "DxcBreadcrumbs", {
51
+ enumerable: true,
52
+ get: function get() {
53
+ return _Breadcrumbs["default"];
54
+ }
55
+ });
58
56
  Object.defineProperty(exports, "DxcBulletedList", {
59
57
  enumerable: true,
60
58
  get: function get() {
@@ -85,6 +83,18 @@ Object.defineProperty(exports, "DxcChip", {
85
83
  return _Chip["default"];
86
84
  }
87
85
  });
86
+ Object.defineProperty(exports, "DxcContainer", {
87
+ enumerable: true,
88
+ get: function get() {
89
+ return _Container["default"];
90
+ }
91
+ });
92
+ Object.defineProperty(exports, "DxcContextualMenu", {
93
+ enumerable: true,
94
+ get: function get() {
95
+ return _ContextualMenu["default"];
96
+ }
97
+ });
88
98
  Object.defineProperty(exports, "DxcDateInput", {
89
99
  enumerable: true,
90
100
  get: function get() {
@@ -97,6 +107,12 @@ Object.defineProperty(exports, "DxcDialog", {
97
107
  return _Dialog["default"];
98
108
  }
99
109
  });
110
+ Object.defineProperty(exports, "DxcDivider", {
111
+ enumerable: true,
112
+ get: function get() {
113
+ return _Divider["default"];
114
+ }
115
+ });
100
116
  Object.defineProperty(exports, "DxcDropdown", {
101
117
  enumerable: true,
102
118
  get: function get() {
@@ -127,6 +143,12 @@ Object.defineProperty(exports, "DxcHeading", {
127
143
  return _Heading["default"];
128
144
  }
129
145
  });
146
+ Object.defineProperty(exports, "DxcImage", {
147
+ enumerable: true,
148
+ get: function get() {
149
+ return _Image["default"];
150
+ }
151
+ });
130
152
  Object.defineProperty(exports, "DxcInset", {
131
153
  enumerable: true,
132
154
  get: function get() {
@@ -211,6 +233,12 @@ Object.defineProperty(exports, "DxcSpinner", {
211
233
  return _Spinner["default"];
212
234
  }
213
235
  });
236
+ Object.defineProperty(exports, "DxcStatusLight", {
237
+ enumerable: true,
238
+ get: function get() {
239
+ return _StatusLight["default"];
240
+ }
241
+ });
214
242
  Object.defineProperty(exports, "DxcSwitch", {
215
243
  enumerable: true,
216
244
  get: function get() {
@@ -283,95 +311,54 @@ Object.defineProperty(exports, "HalstackProvider", {
283
311
  return _HalstackContext.HalstackProvider;
284
312
  }
285
313
  });
286
-
287
314
  var _Alert = _interopRequireDefault(require("./alert/Alert"));
288
-
289
315
  var _Accordion = _interopRequireDefault(require("./accordion/Accordion"));
290
-
291
316
  var _Button = _interopRequireDefault(require("./button/Button"));
292
-
293
317
  var _Card = _interopRequireDefault(require("./card/Card"));
294
-
295
318
  var _Checkbox = _interopRequireDefault(require("./checkbox/Checkbox"));
296
-
297
319
  var _Dialog = _interopRequireDefault(require("./dialog/Dialog"));
298
-
299
320
  var _Dropdown = _interopRequireDefault(require("./dropdown/Dropdown"));
300
-
301
321
  var _Slider = _interopRequireDefault(require("./slider/Slider"));
302
-
303
322
  var _Switch = _interopRequireDefault(require("./switch/Switch"));
304
-
305
323
  var _Tabs = _interopRequireDefault(require("./tabs/Tabs"));
306
-
307
324
  var _ProgressBar = _interopRequireDefault(require("./progress-bar/ProgressBar"));
308
-
309
325
  var _Spinner = _interopRequireDefault(require("./spinner/Spinner"));
310
-
311
326
  var _Table = _interopRequireDefault(require("./table/Table"));
312
-
313
327
  var _Box = _interopRequireDefault(require("./box/Box"));
314
-
315
328
  var _Tag = _interopRequireDefault(require("./tag/Tag"));
316
-
317
329
  var _Paginator = _interopRequireDefault(require("./paginator/Paginator"));
318
-
319
330
  var _Wizard = _interopRequireDefault(require("./wizard/Wizard"));
320
-
321
331
  var _Link = _interopRequireDefault(require("./link/Link"));
322
-
323
332
  var _Heading = _interopRequireDefault(require("./heading/Heading"));
324
-
325
- var _ResultsetTable = _interopRequireDefault(require("./resultsetTable/ResultsetTable"));
326
-
333
+ var _ResultsetTable = _interopRequireDefault(require("./resultset-table/ResultsetTable"));
327
334
  var _Chip = _interopRequireDefault(require("./chip/Chip"));
328
-
329
335
  var _ApplicationLayout = _interopRequireDefault(require("./layout/ApplicationLayout"));
330
-
331
336
  var _ToggleGroup = _interopRequireDefault(require("./toggle-group/ToggleGroup"));
332
-
333
337
  var _AccordionGroup = _interopRequireDefault(require("./accordion-group/AccordionGroup"));
334
-
335
- var _Badge = _interopRequireDefault(require("./badge/Badge"));
336
-
337
338
  var _TextInput = _interopRequireDefault(require("./text-input/TextInput"));
338
-
339
339
  var _PasswordInput = _interopRequireDefault(require("./password-input/PasswordInput"));
340
-
341
340
  var _DateInput = _interopRequireDefault(require("./date-input/DateInput"));
342
-
343
341
  var _NumberInput = _interopRequireDefault(require("./number-input/NumberInput"));
344
-
345
342
  var _Textarea = _interopRequireDefault(require("./textarea/Textarea"));
346
-
347
343
  var _Select = _interopRequireDefault(require("./select/Select"));
348
-
349
344
  var _FileInput = _interopRequireDefault(require("./file-input/FileInput"));
350
-
351
345
  var _RadioGroup = _interopRequireDefault(require("./radio-group/RadioGroup"));
352
-
353
346
  var _Bleed = _interopRequireDefault(require("./bleed/Bleed"));
354
-
355
347
  var _Inset = _interopRequireDefault(require("./inset/Inset"));
356
-
357
348
  var _QuickNav = _interopRequireDefault(require("./quick-nav/QuickNav"));
358
-
359
349
  var _NavTabs = _interopRequireDefault(require("./nav-tabs/NavTabs"));
360
-
361
350
  var _Flex = _interopRequireDefault(require("./flex/Flex"));
362
-
363
351
  var _Typography = _interopRequireDefault(require("./typography/Typography"));
364
-
365
352
  var _Paragraph = _interopRequireDefault(require("./paragraph/Paragraph"));
366
-
367
353
  var _BulletedList = _interopRequireDefault(require("./bulleted-list/BulletedList"));
368
-
369
354
  var _Grid = _interopRequireDefault(require("./grid/Grid"));
370
-
355
+ var _Image = _interopRequireDefault(require("./image/Image"));
356
+ var _Container = _interopRequireDefault(require("./container/Container"));
357
+ var _Badge = _interopRequireDefault(require("./badge/Badge"));
358
+ var _StatusLight = _interopRequireDefault(require("./status-light/StatusLight"));
359
+ var _ContextualMenu = _interopRequireDefault(require("./contextual-menu/ContextualMenu"));
360
+ var _Divider = _interopRequireDefault(require("./divider/Divider"));
361
+ var _Breadcrumbs = _interopRequireDefault(require("./breadcrumbs/Breadcrumbs"));
371
362
  var _HalstackContext = _interopRequireWildcard(require("./HalstackContext"));
372
-
373
- var _BackgroundColorContext = require("./BackgroundColorContext");
374
-
375
- 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); }
376
-
377
- 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; }
363
+ 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); }
364
+ 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; }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,44 @@
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 _NavTabs = _interopRequireDefault(require("./NavTabs"));
10
+ var favoriteIcon = 'filled_Favorite';
11
+ var pinIcon = 'Location_On';
12
+ describe("Tabs component accessibility tests", function () {
13
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
14
+ var _render, container, results;
15
+ return _regenerator["default"].wrap(function _callee$(_context) {
16
+ while (1) switch (_context.prev = _context.next) {
17
+ case 0:
18
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_NavTabs["default"], {
19
+ iconPosition: "left"
20
+ }, /*#__PURE__*/_react["default"].createElement(_NavTabs["default"].Tab, {
21
+ href: "/test1",
22
+ icon: favoriteIcon,
23
+ active: true
24
+ }, "Tab 1"), /*#__PURE__*/_react["default"].createElement(_NavTabs["default"].Tab, {
25
+ href: "/test2",
26
+ icon: favoriteIcon,
27
+ disabled: true
28
+ }, "Tab 2"), /*#__PURE__*/_react["default"].createElement(_NavTabs["default"].Tab, {
29
+ href: "/test3",
30
+ icon: pinIcon,
31
+ notificationNumber: 12
32
+ }, "Tab 3"))), container = _render.container;
33
+ _context.next = 3;
34
+ return (0, _axeHelper.axe)(container);
35
+ case 3:
36
+ results = _context.sent;
37
+ expect(results).toHaveNoViolations();
38
+ case 5:
39
+ case "end":
40
+ return _context.stop();
41
+ }
42
+ }, _callee);
43
+ })));
44
+ });
@@ -1,8 +1,7 @@
1
1
  import React from "react";
2
- import { NavTabsContextProps, NavTabsProps } from "./types";
3
- export declare const NavTabsContext: React.Context<NavTabsContextProps>;
2
+ import NavTabsPropsType from "./types";
4
3
  declare const DxcNavTabs: {
5
- ({ iconPosition, tabIndex, children }: NavTabsProps): JSX.Element;
4
+ ({ iconPosition, tabIndex, children }: NavTabsPropsType): JSX.Element;
6
5
  Tab: React.ForwardRefExoticComponent<import("./types").TabProps & React.RefAttributes<HTMLAnchorElement>>;
7
6
  };
8
7
  export default DxcNavTabs;
@@ -1,39 +1,24 @@
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
- exports["default"] = exports.NavTabsContext = void 0;
11
-
8
+ exports["default"] = void 0;
12
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _react = _interopRequireWildcard(require("react"));
17
-
18
12
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
13
  var _useTheme = _interopRequireDefault(require("../useTheme"));
21
-
22
14
  var _Tab = _interopRequireDefault(require("./Tab"));
23
-
24
- var _templateObject;
25
-
26
- 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); }
27
-
28
- 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; }
29
-
30
- var NavTabsContext = /*#__PURE__*/(0, _react.createContext)(null);
31
- exports.NavTabsContext = NavTabsContext;
32
-
15
+ var _NavTabsContext = require("./NavTabsContext");
16
+ var _templateObject, _templateObject2;
17
+ 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); }
18
+ 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; }
33
19
  var getPropInChild = function getPropInChild(child, propName) {
34
20
  return child.props ? child.props[propName] ? child.props[propName] : child.props.children ? getPropInChild(child.props.children, propName) : undefined : undefined;
35
21
  };
36
-
37
22
  var getLabelFromTab = function getLabelFromTab(child) {
38
23
  if (typeof child === "string") {
39
24
  return child.toString();
@@ -41,85 +26,83 @@ var getLabelFromTab = function getLabelFromTab(child) {
41
26
  return Array.isArray(child.props.children) ? getLabelFromTab(child.props.children[0]) : getLabelFromTab(child.props.children);
42
27
  }
43
28
  };
44
-
45
29
  var getPreviousTabIndex = function getPreviousTabIndex(array, initialIndex) {
46
30
  var index = initialIndex === 0 ? array.length - 1 : initialIndex - 1;
47
-
48
31
  while (getPropInChild(array[index], "disabled")) {
49
32
  index = index === 0 ? array.length - 1 : index - 1;
50
33
  }
51
-
52
34
  return index;
53
35
  };
54
-
55
36
  var getNextTabIndex = function getNextTabIndex(array, initialIndex) {
56
37
  var index = initialIndex === array.length - 1 ? 0 : initialIndex + 1;
57
-
58
38
  while (getPropInChild(array[index], "disabled")) {
59
39
  index = index === array.length - 1 ? 0 : index + 1;
60
40
  }
61
-
62
41
  return index;
63
42
  };
64
-
65
43
  var DxcNavTabs = function DxcNavTabs(_ref) {
66
44
  var _ref$iconPosition = _ref.iconPosition,
67
- iconPosition = _ref$iconPosition === void 0 ? "top" : _ref$iconPosition,
68
- _ref$tabIndex = _ref.tabIndex,
69
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
70
- children = _ref.children;
71
- var colorsTheme = (0, _useTheme["default"])();
72
-
45
+ iconPosition = _ref$iconPosition === void 0 ? "top" : _ref$iconPosition,
46
+ _ref$tabIndex = _ref.tabIndex,
47
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
48
+ children = _ref.children;
73
49
  var _useState = (0, _react.useState)(null),
74
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
75
- innerFocus = _useState2[0],
76
- setInnerFocus = _useState2[1];
77
-
50
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
51
+ innerFocusIndex = _useState2[0],
52
+ setInnerFocusIndex = _useState2[1];
53
+ var _useState3 = (0, _react.useState)(null),
54
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
55
+ underlineWidth = _useState4[0],
56
+ setUnderlineWidth = _useState4[1];
57
+ var refNavTabList = (0, _react.useRef)(null);
58
+ var colorsTheme = (0, _useTheme["default"])();
59
+ (0, _react.useEffect)(function () {
60
+ var _refNavTabList$curren, _refNavTabList$curren2;
61
+ console.log(refNavTabList === null || refNavTabList === void 0 ? void 0 : (_refNavTabList$curren = refNavTabList.current) === null || _refNavTabList$curren === void 0 ? void 0 : _refNavTabList$curren.scrollWidth);
62
+ setUnderlineWidth(refNavTabList === null || refNavTabList === void 0 ? void 0 : (_refNavTabList$curren2 = refNavTabList.current) === null || _refNavTabList$curren2 === void 0 ? void 0 : _refNavTabList$curren2.scrollWidth);
63
+ }, [children]);
78
64
  var contextValue = (0, _react.useMemo)(function () {
79
65
  return {
80
66
  iconPosition: iconPosition,
81
67
  tabIndex: tabIndex,
82
- hasIcons: _react["default"].Children.toArray(children).some(function (child) {
83
- return getPropInChild(child, "icon");
84
- }),
85
- focusedLabel: innerFocus === null ? undefined : getLabelFromTab(children[innerFocus])
68
+ focusedLabel: innerFocusIndex === null ? undefined : getLabelFromTab(children[innerFocusIndex])
86
69
  };
87
- }, [iconPosition, tabIndex, innerFocus]);
88
-
70
+ }, [iconPosition, tabIndex, innerFocusIndex]);
89
71
  var handleOnKeyDown = function handleOnKeyDown(event) {
90
72
  var activeTab = _react["default"].Children.toArray(children).findIndex(function (child) {
91
73
  return getPropInChild(child, "active");
92
74
  });
93
-
94
75
  switch (event.key) {
95
76
  case "Left":
96
77
  case "ArrowLeft":
97
78
  event.preventDefault();
98
- setInnerFocus(getPreviousTabIndex(children, innerFocus === null ? activeTab : innerFocus));
79
+ setInnerFocusIndex(getPreviousTabIndex(children, innerFocusIndex === null ? activeTab : innerFocusIndex));
99
80
  break;
100
-
101
81
  case "Right":
102
82
  case "ArrowRight":
103
83
  event.preventDefault();
104
- setInnerFocus(getNextTabIndex(children, innerFocus === null ? activeTab : innerFocus));
84
+ setInnerFocusIndex(getNextTabIndex(children, innerFocusIndex === null ? activeTab : innerFocusIndex));
105
85
  break;
106
86
  }
107
87
  };
108
-
109
88
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
110
89
  theme: colorsTheme.navTabs
111
90
  }, /*#__PURE__*/_react["default"].createElement(NavTabsContainer, {
112
91
  onKeyDown: handleOnKeyDown,
92
+ ref: refNavTabList,
113
93
  role: "tablist",
114
94
  "aria-label": "Navigation tabs"
115
- }, /*#__PURE__*/_react["default"].createElement(NavTabsContext.Provider, {
95
+ }, /*#__PURE__*/_react["default"].createElement(_NavTabsContext.NavTabsContext.Provider, {
116
96
  value: contextValue
117
- }, children)));
97
+ }, children), /*#__PURE__*/_react["default"].createElement(Underline, {
98
+ underlineWidth: underlineWidth
99
+ })));
118
100
  };
119
-
101
+ var Underline = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n bottom: 0;\n left: 0;\n height: 2px;\n background-color: ", ";\n z-index: -1;\n width: ", "px;\n"])), function (props) {
102
+ return props.theme.dividerColor;
103
+ }, function (props) {
104
+ return props.underlineWidth;
105
+ });
120
106
  DxcNavTabs.Tab = _Tab["default"];
121
-
122
- var NavTabsContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n"])));
123
-
124
- var _default = DxcNavTabs;
125
- exports["default"] = _default;
107
+ var NavTabsContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n overflow: auto;\n z-index: 0;\n"])));
108
+ var _default = exports["default"] = DxcNavTabs;
@@ -1,11 +1,12 @@
1
1
  import React from "react";
2
2
  import DxcNavTabs from "./NavTabs";
3
+ import DxcContainer from "../container/Container";
3
4
  import Title from "../../.storybook/components/Title";
4
5
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
6
  import { HalstackProvider } from "../HalstackContext";
6
7
 
7
8
  export default {
8
- title: "NavTabs",
9
+ title: "Nav Tabs",
9
10
  component: DxcNavTabs,
10
11
  };
11
12
 
@@ -16,7 +17,9 @@ const iconSVG = (
16
17
  </svg>
17
18
  );
18
19
 
19
- const largeIcon = "https://www.iconpacks.net/icons/1/free-pin-icon-48-thumb.png";
20
+ const favoriteIcon = "filled_Favorite";
21
+
22
+ const pinIcon = "Location_On";
20
23
 
21
24
  const opinionatedTheme = {
22
25
  navTabs: {
@@ -91,7 +94,9 @@ export const Chromatic = () => (
91
94
  <DxcNavTabs.Tab href="#" notificationNumber={120}>
92
95
  Tab 3
93
96
  </DxcNavTabs.Tab>
94
- <DxcNavTabs.Tab href="#">Tab 4</DxcNavTabs.Tab>
97
+ <DxcNavTabs.Tab href="#" notificationNumber={12}>
98
+ Tab 4
99
+ </DxcNavTabs.Tab>
95
100
  </DxcNavTabs>
96
101
  </ExampleContainer>
97
102
  <ExampleContainer>
@@ -103,10 +108,10 @@ export const Chromatic = () => (
103
108
  <DxcNavTabs.Tab href="#" disabled icon={iconSVG}>
104
109
  Tab 2
105
110
  </DxcNavTabs.Tab>
106
- <DxcNavTabs.Tab href="#" icon={largeIcon}>
111
+ <DxcNavTabs.Tab href="#" icon={pinIcon}>
107
112
  Tab 3
108
113
  </DxcNavTabs.Tab>
109
- <DxcNavTabs.Tab href="#" icon={largeIcon}>
114
+ <DxcNavTabs.Tab href="#" icon={pinIcon}>
110
115
  Tab 4
111
116
  </DxcNavTabs.Tab>
112
117
  </DxcNavTabs>
@@ -114,16 +119,16 @@ export const Chromatic = () => (
114
119
  <ExampleContainer>
115
120
  <Title title="With icon position left" theme="light" level={4} />
116
121
  <DxcNavTabs iconPosition="left">
117
- <DxcNavTabs.Tab href="#" active icon={largeIcon}>
122
+ <DxcNavTabs.Tab href="#" active icon={pinIcon}>
118
123
  Tab 1
119
124
  </DxcNavTabs.Tab>
120
- <DxcNavTabs.Tab href="#" disabled icon={iconSVG}>
125
+ <DxcNavTabs.Tab href="#" disabled icon={favoriteIcon}>
121
126
  Tab 2
122
127
  </DxcNavTabs.Tab>
123
- <DxcNavTabs.Tab href="#" icon={iconSVG}>
128
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon}>
124
129
  Tab 3
125
130
  </DxcNavTabs.Tab>
126
- <DxcNavTabs.Tab href="#" icon={iconSVG}>
131
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon}>
127
132
  Tab 4
128
133
  </DxcNavTabs.Tab>
129
134
  </DxcNavTabs>
@@ -131,16 +136,16 @@ export const Chromatic = () => (
131
136
  <ExampleContainer>
132
137
  <Title title="With icon and notification number" theme="light" level={4} />
133
138
  <DxcNavTabs>
134
- <DxcNavTabs.Tab href="#" active icon={largeIcon} notificationNumber>
139
+ <DxcNavTabs.Tab href="#" active icon={pinIcon} notificationNumber>
135
140
  Tab 1
136
141
  </DxcNavTabs.Tab>
137
- <DxcNavTabs.Tab href="#" disabled icon={iconSVG} notificationNumber={5}>
142
+ <DxcNavTabs.Tab href="#" disabled icon={favoriteIcon} notificationNumber={5}>
138
143
  Tab 2
139
144
  </DxcNavTabs.Tab>
140
- <DxcNavTabs.Tab href="#" icon={iconSVG} notificationNumber={120}>
145
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon} notificationNumber={120}>
141
146
  Tab 3
142
147
  </DxcNavTabs.Tab>
143
- <DxcNavTabs.Tab href="#" icon={largeIcon}>
148
+ <DxcNavTabs.Tab href="#" icon={pinIcon} notificationNumber={12}>
144
149
  Tab 4
145
150
  </DxcNavTabs.Tab>
146
151
  </DxcNavTabs>
@@ -148,16 +153,16 @@ export const Chromatic = () => (
148
153
  <ExampleContainer>
149
154
  <Title title="With icon on the left and notification number" theme="light" level={4} />
150
155
  <DxcNavTabs iconPosition="left">
151
- <DxcNavTabs.Tab href="#" active icon={iconSVG} notificationNumber>
156
+ <DxcNavTabs.Tab href="#" active icon={favoriteIcon} notificationNumber>
152
157
  Tab 1
153
158
  </DxcNavTabs.Tab>
154
- <DxcNavTabs.Tab href="#" disabled icon={iconSVG} notificationNumber={5}>
159
+ <DxcNavTabs.Tab href="#" disabled icon={favoriteIcon} notificationNumber={5}>
155
160
  Tab 2
156
161
  </DxcNavTabs.Tab>
157
- <DxcNavTabs.Tab href="#" icon={largeIcon} notificationNumber={120}>
162
+ <DxcNavTabs.Tab href="#" icon={pinIcon} notificationNumber={120}>
158
163
  Tab 3
159
164
  </DxcNavTabs.Tab>
160
- <DxcNavTabs.Tab href="#" icon={iconSVG}>
165
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon} notificationNumber={12}>
161
166
  Tab 4
162
167
  </DxcNavTabs.Tab>
163
168
  </DxcNavTabs>
@@ -168,10 +173,24 @@ export const Chromatic = () => (
168
173
  <DxcNavTabs.Tab href="#" active>
169
174
  Lorem ipsum dolor sit amet, consectetur adipiscing elit
170
175
  </DxcNavTabs.Tab>
171
- <DxcNavTabs.Tab href="#" icon={iconSVG} disabled notificationNumber={3}>
176
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon} disabled notificationNumber={3}>
177
+ Tab 2
178
+ </DxcNavTabs.Tab>
179
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon}>
180
+ Tab 3
181
+ </DxcNavTabs.Tab>
182
+ </DxcNavTabs>
183
+ </ExampleContainer>
184
+ <ExampleContainer>
185
+ <Title title="With long label and left icon alignment" theme="light" level={4} />
186
+ <DxcNavTabs iconPosition="left">
187
+ <DxcNavTabs.Tab href="#" active>
188
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit
189
+ </DxcNavTabs.Tab>
190
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon} disabled notificationNumber={3}>
172
191
  Tab 2
173
192
  </DxcNavTabs.Tab>
174
- <DxcNavTabs.Tab href="#" icon={iconSVG}>
193
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon}>
175
194
  Tab 3
176
195
  </DxcNavTabs.Tab>
177
196
  </DxcNavTabs>
@@ -241,20 +260,35 @@ export const Chromatic = () => (
241
260
  <Title title="With icon and notification number" theme="light" level={4} />
242
261
  <HalstackProvider theme={opinionatedTheme}>
243
262
  <DxcNavTabs>
244
- <DxcNavTabs.Tab href="#" active icon={iconSVG} notificationNumber>
263
+ <DxcNavTabs.Tab href="#" active icon={favoriteIcon} notificationNumber>
245
264
  Tab 1
246
265
  </DxcNavTabs.Tab>
247
- <DxcNavTabs.Tab href="#" disabled icon={iconSVG} notificationNumber={5}>
266
+ <DxcNavTabs.Tab href="#" disabled icon={favoriteIcon} notificationNumber={5}>
248
267
  Tab 2
249
268
  </DxcNavTabs.Tab>
250
- <DxcNavTabs.Tab href="#" icon={iconSVG} notificationNumber={120}>
269
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon} notificationNumber={120}>
251
270
  Tab 3
252
271
  </DxcNavTabs.Tab>
253
- <DxcNavTabs.Tab href="#" icon={iconSVG}>
272
+ <DxcNavTabs.Tab href="#" icon={favoriteIcon} notificationNumber={12}>
254
273
  Tab 4
255
274
  </DxcNavTabs.Tab>
256
275
  </DxcNavTabs>
257
276
  </HalstackProvider>
258
277
  </ExampleContainer>
278
+ <ExampleContainer>
279
+ <Title title="NavTabs in a limited space container" theme="light" level={4} />
280
+ <DxcContainer width="500px">
281
+ <DxcNavTabs>
282
+ <DxcNavTabs.Tab href="#" active>
283
+ Tab 1
284
+ </DxcNavTabs.Tab>
285
+ <DxcNavTabs.Tab href="#" disabled>
286
+ Tab 2
287
+ </DxcNavTabs.Tab>
288
+ <DxcNavTabs.Tab href="#">Tab 3</DxcNavTabs.Tab>
289
+ <DxcNavTabs.Tab href="#">Tab 4</DxcNavTabs.Tab>
290
+ </DxcNavTabs>
291
+ </DxcContainer>
292
+ </ExampleContainer>
259
293
  </>
260
294
  );
@@ -0,0 +1 @@
1
+ export {};