@dxc-technology/halstack-react 0.0.0-d0ecadd → 0.0.0-d123a22

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 (502) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1240 -6
  4. package/HalstackContext.js +126 -111
  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 +101 -159
  10. package/accordion/Accordion.stories.tsx +82 -148
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +24 -40
  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 +31 -98
  18. package/accordion-group/AccordionGroup.stories.tsx +94 -67
  19. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  20. package/accordion-group/AccordionGroup.test.js +49 -106
  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 +12 -17
  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 +37 -127
  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/bleed/Bleed.js +13 -21
  50. package/bleed/Bleed.stories.tsx +64 -63
  51. package/bleed/types.d.ts +2 -2
  52. package/box/Box.accessibility.test.d.ts +1 -0
  53. package/box/Box.accessibility.test.js +33 -0
  54. package/box/Box.d.ts +1 -1
  55. package/box/Box.js +19 -60
  56. package/box/Box.stories.tsx +38 -51
  57. package/box/Box.test.d.ts +1 -0
  58. package/box/Box.test.js +1 -6
  59. package/box/types.d.ts +3 -14
  60. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  61. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  62. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  63. package/breadcrumbs/Breadcrumbs.js +79 -0
  64. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  65. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  66. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  67. package/breadcrumbs/Item.d.ts +4 -0
  68. package/breadcrumbs/Item.js +52 -0
  69. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  70. package/breadcrumbs/dropdownTheme.js +62 -0
  71. package/breadcrumbs/types.d.ts +16 -0
  72. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  73. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  74. package/bulleted-list/BulletedList.d.ts +7 -0
  75. package/bulleted-list/BulletedList.js +92 -0
  76. package/bulleted-list/BulletedList.stories.tsx +115 -0
  77. package/bulleted-list/types.d.ts +38 -0
  78. package/button/Button.accessibility.test.d.ts +1 -0
  79. package/button/Button.accessibility.test.js +127 -0
  80. package/button/Button.d.ts +1 -1
  81. package/button/Button.js +64 -117
  82. package/button/Button.stories.tsx +151 -100
  83. package/button/Button.test.d.ts +1 -0
  84. package/button/Button.test.js +19 -16
  85. package/button/types.d.ts +12 -8
  86. package/card/Card.accessibility.test.d.ts +1 -0
  87. package/card/Card.accessibility.test.js +36 -0
  88. package/card/Card.d.ts +1 -1
  89. package/card/Card.js +49 -89
  90. package/card/Card.stories.tsx +12 -42
  91. package/card/Card.test.d.ts +1 -0
  92. package/card/Card.test.js +10 -21
  93. package/card/types.d.ts +6 -11
  94. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  95. package/checkbox/Checkbox.accessibility.test.js +87 -0
  96. package/checkbox/Checkbox.d.ts +2 -2
  97. package/checkbox/Checkbox.js +138 -183
  98. package/checkbox/Checkbox.stories.tsx +128 -94
  99. package/checkbox/Checkbox.test.d.ts +1 -0
  100. package/checkbox/Checkbox.test.js +159 -38
  101. package/checkbox/types.d.ts +11 -3
  102. package/chip/Chip.accessibility.test.d.ts +1 -0
  103. package/chip/Chip.accessibility.test.js +67 -0
  104. package/chip/Chip.js +45 -80
  105. package/chip/Chip.stories.tsx +107 -27
  106. package/chip/Chip.test.d.ts +1 -0
  107. package/chip/Chip.test.js +17 -32
  108. package/chip/types.d.ts +4 -4
  109. package/common/coreTokens.d.ts +237 -0
  110. package/common/coreTokens.js +184 -0
  111. package/common/utils.d.ts +1 -0
  112. package/common/utils.js +6 -12
  113. package/common/variables.d.ts +1392 -0
  114. package/common/variables.js +993 -1199
  115. package/container/Container.d.ts +4 -0
  116. package/container/Container.js +194 -0
  117. package/container/Container.stories.tsx +214 -0
  118. package/container/types.d.ts +74 -0
  119. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  120. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  121. package/contextual-menu/ContextualMenu.d.ts +5 -0
  122. package/contextual-menu/ContextualMenu.js +88 -0
  123. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  124. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  125. package/contextual-menu/ContextualMenu.test.js +205 -0
  126. package/contextual-menu/GroupItem.d.ts +4 -0
  127. package/contextual-menu/GroupItem.js +67 -0
  128. package/contextual-menu/ItemAction.d.ts +4 -0
  129. package/contextual-menu/ItemAction.js +51 -0
  130. package/contextual-menu/MenuItem.d.ts +4 -0
  131. package/contextual-menu/MenuItem.js +29 -0
  132. package/contextual-menu/SingleItem.d.ts +4 -0
  133. package/contextual-menu/SingleItem.js +38 -0
  134. package/contextual-menu/types.d.ts +58 -0
  135. package/date-input/Calendar.d.ts +4 -0
  136. package/date-input/Calendar.js +214 -0
  137. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  138. package/date-input/DateInput.accessibility.test.js +230 -0
  139. package/date-input/DateInput.js +149 -299
  140. package/date-input/DateInput.stories.tsx +210 -56
  141. package/date-input/DateInput.test.d.ts +1 -0
  142. package/date-input/DateInput.test.js +700 -370
  143. package/date-input/DatePicker.d.ts +4 -0
  144. package/date-input/DatePicker.js +121 -0
  145. package/date-input/YearPicker.d.ts +4 -0
  146. package/date-input/YearPicker.js +100 -0
  147. package/date-input/types.d.ts +72 -15
  148. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  149. package/dialog/Dialog.accessibility.test.js +69 -0
  150. package/dialog/Dialog.d.ts +1 -1
  151. package/dialog/Dialog.js +61 -106
  152. package/dialog/Dialog.stories.tsx +325 -167
  153. package/dialog/Dialog.test.d.ts +1 -0
  154. package/dialog/Dialog.test.js +350 -19
  155. package/dialog/types.d.ts +18 -25
  156. package/divider/Divider.accessibility.test.d.ts +1 -0
  157. package/divider/Divider.accessibility.test.js +33 -0
  158. package/divider/Divider.d.ts +4 -0
  159. package/divider/Divider.js +36 -0
  160. package/divider/Divider.stories.tsx +223 -0
  161. package/divider/Divider.test.d.ts +1 -0
  162. package/divider/Divider.test.js +38 -0
  163. package/divider/types.d.ts +21 -0
  164. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  165. package/dropdown/Dropdown.accessibility.test.js +184 -0
  166. package/dropdown/Dropdown.d.ts +1 -1
  167. package/dropdown/Dropdown.js +232 -303
  168. package/dropdown/Dropdown.stories.tsx +235 -57
  169. package/dropdown/Dropdown.test.d.ts +1 -0
  170. package/dropdown/Dropdown.test.js +604 -164
  171. package/dropdown/DropdownMenu.d.ts +4 -0
  172. package/dropdown/DropdownMenu.js +63 -0
  173. package/dropdown/DropdownMenuItem.d.ts +4 -0
  174. package/dropdown/DropdownMenuItem.js +71 -0
  175. package/dropdown/types.d.ts +35 -19
  176. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  177. package/file-input/FileInput.accessibility.test.js +167 -0
  178. package/file-input/FileInput.d.ts +2 -2
  179. package/file-input/FileInput.js +240 -393
  180. package/file-input/FileInput.stories.tsx +123 -12
  181. package/file-input/FileInput.test.d.ts +1 -0
  182. package/file-input/FileInput.test.js +314 -367
  183. package/file-input/FileItem.d.ts +4 -14
  184. package/file-input/FileItem.js +56 -117
  185. package/file-input/types.d.ts +25 -8
  186. package/flex/Flex.d.ts +4 -0
  187. package/flex/Flex.js +57 -0
  188. package/flex/Flex.stories.tsx +112 -0
  189. package/flex/types.d.ts +97 -0
  190. package/footer/Footer.accessibility.test.d.ts +1 -0
  191. package/footer/Footer.accessibility.test.js +125 -0
  192. package/footer/Footer.d.ts +1 -1
  193. package/footer/Footer.js +73 -118
  194. package/footer/Footer.stories.tsx +99 -21
  195. package/footer/Footer.test.d.ts +1 -0
  196. package/footer/Footer.test.js +32 -56
  197. package/footer/Icons.d.ts +3 -2
  198. package/footer/Icons.js +53 -22
  199. package/footer/types.d.ts +26 -27
  200. package/grid/Grid.d.ts +7 -0
  201. package/grid/Grid.js +76 -0
  202. package/grid/Grid.stories.tsx +219 -0
  203. package/grid/types.d.ts +115 -0
  204. package/grid/types.js +5 -0
  205. package/header/Header.accessibility.test.d.ts +1 -0
  206. package/header/Header.accessibility.test.js +94 -0
  207. package/header/Header.d.ts +4 -3
  208. package/header/Header.js +90 -183
  209. package/header/Header.stories.tsx +133 -38
  210. package/header/Header.test.d.ts +1 -0
  211. package/header/Header.test.js +12 -25
  212. package/header/Icons.d.ts +2 -2
  213. package/header/Icons.js +5 -15
  214. package/header/types.d.ts +7 -21
  215. package/heading/Heading.accessibility.test.d.ts +1 -0
  216. package/heading/Heading.accessibility.test.js +33 -0
  217. package/heading/Heading.js +10 -32
  218. package/heading/Heading.test.d.ts +1 -0
  219. package/heading/Heading.test.js +64 -94
  220. package/heading/types.d.ts +7 -7
  221. package/icon/Icon.accessibility.test.d.ts +1 -0
  222. package/icon/Icon.accessibility.test.js +30 -0
  223. package/icon/Icon.d.ts +4 -0
  224. package/icon/Icon.js +33 -0
  225. package/icon/Icon.stories.tsx +28 -0
  226. package/icon/types.d.ts +4 -0
  227. package/icon/types.js +5 -0
  228. package/image/Image.accessibility.test.d.ts +1 -0
  229. package/image/Image.accessibility.test.js +56 -0
  230. package/image/Image.d.ts +4 -0
  231. package/image/Image.js +70 -0
  232. package/image/Image.stories.tsx +129 -0
  233. package/image/types.d.ts +72 -0
  234. package/image/types.js +5 -0
  235. package/inset/Inset.js +13 -21
  236. package/inset/Inset.stories.tsx +5 -4
  237. package/inset/types.d.ts +2 -2
  238. package/layout/ApplicationLayout.d.ts +15 -6
  239. package/layout/ApplicationLayout.js +56 -118
  240. package/layout/ApplicationLayout.stories.tsx +81 -45
  241. package/layout/Icons.d.ts +7 -5
  242. package/layout/Icons.js +41 -59
  243. package/layout/types.d.ts +21 -32
  244. package/link/Link.accessibility.test.d.ts +1 -0
  245. package/link/Link.accessibility.test.js +108 -0
  246. package/link/Link.js +32 -51
  247. package/link/Link.stories.tsx +76 -9
  248. package/link/Link.test.d.ts +1 -0
  249. package/link/Link.test.js +23 -43
  250. package/link/types.d.ts +14 -14
  251. package/main.d.ts +15 -13
  252. package/main.js +66 -103
  253. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  254. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  255. package/nav-tabs/NavTabs.d.ts +7 -0
  256. package/nav-tabs/NavTabs.js +108 -0
  257. package/nav-tabs/NavTabs.stories.tsx +294 -0
  258. package/nav-tabs/NavTabs.test.d.ts +1 -0
  259. package/nav-tabs/NavTabs.test.js +77 -0
  260. package/nav-tabs/NavTabsContext.d.ts +3 -0
  261. package/nav-tabs/NavTabsContext.js +8 -0
  262. package/nav-tabs/Tab.js +117 -0
  263. package/{tabs-nav → nav-tabs}/types.d.ts +15 -16
  264. package/nav-tabs/types.js +5 -0
  265. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  266. package/number-input/NumberInput.accessibility.test.js +228 -0
  267. package/number-input/NumberInput.js +46 -36
  268. package/number-input/NumberInput.stories.tsx +42 -26
  269. package/number-input/NumberInput.test.d.ts +1 -0
  270. package/number-input/NumberInput.test.js +859 -376
  271. package/number-input/NumberInputContext.d.ts +3 -4
  272. package/number-input/NumberInputContext.js +3 -14
  273. package/number-input/types.d.ts +17 -5
  274. package/package.json +51 -54
  275. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  276. package/paginator/Paginator.accessibility.test.js +79 -0
  277. package/paginator/Paginator.js +35 -68
  278. package/paginator/Paginator.stories.tsx +24 -0
  279. package/paginator/Paginator.test.d.ts +1 -0
  280. package/paginator/Paginator.test.js +252 -225
  281. package/paginator/types.d.ts +3 -3
  282. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  283. package/paragraph/Paragraph.accessibility.test.js +28 -0
  284. package/paragraph/Paragraph.d.ts +5 -0
  285. package/paragraph/Paragraph.js +22 -0
  286. package/paragraph/Paragraph.stories.tsx +27 -0
  287. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  288. package/password-input/PasswordInput.accessibility.test.js +153 -0
  289. package/password-input/PasswordInput.js +58 -127
  290. package/password-input/PasswordInput.stories.tsx +1 -33
  291. package/password-input/PasswordInput.test.d.ts +1 -0
  292. package/password-input/PasswordInput.test.js +159 -141
  293. package/password-input/types.d.ts +8 -7
  294. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  295. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  296. package/progress-bar/ProgressBar.js +68 -92
  297. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +39 -4
  298. package/progress-bar/ProgressBar.test.d.ts +1 -0
  299. package/progress-bar/ProgressBar.test.js +71 -43
  300. package/progress-bar/types.d.ts +3 -3
  301. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  302. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  303. package/quick-nav/QuickNav.js +22 -44
  304. package/quick-nav/QuickNav.stories.tsx +146 -27
  305. package/quick-nav/types.d.ts +10 -10
  306. package/radio-group/Radio.d.ts +1 -1
  307. package/radio-group/Radio.js +59 -79
  308. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  309. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  310. package/radio-group/RadioGroup.js +70 -119
  311. package/radio-group/RadioGroup.stories.tsx +132 -18
  312. package/radio-group/RadioGroup.test.d.ts +1 -0
  313. package/radio-group/RadioGroup.test.js +518 -459
  314. package/radio-group/types.d.ts +10 -10
  315. package/resultset-table/Icons.d.ts +7 -0
  316. package/resultset-table/Icons.js +47 -0
  317. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  318. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  319. package/resultset-table/ResultsetTable.d.ts +7 -0
  320. package/resultset-table/ResultsetTable.js +171 -0
  321. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +168 -30
  322. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  323. package/resultset-table/ResultsetTable.test.js +380 -0
  324. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  325. package/resultset-table/types.js +5 -0
  326. package/select/Listbox.js +40 -64
  327. package/select/Option.js +35 -56
  328. package/select/Select.accessibility.test.d.ts +1 -0
  329. package/select/Select.accessibility.test.js +228 -0
  330. package/select/Select.js +147 -207
  331. package/select/Select.stories.tsx +496 -203
  332. package/select/Select.test.d.ts +1 -0
  333. package/select/Select.test.js +1922 -1816
  334. package/select/types.d.ts +17 -20
  335. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  336. package/sidenav/Sidenav.accessibility.test.js +59 -0
  337. package/sidenav/Sidenav.d.ts +6 -5
  338. package/sidenav/Sidenav.js +132 -78
  339. package/sidenav/Sidenav.stories.tsx +246 -151
  340. package/sidenav/Sidenav.test.d.ts +1 -0
  341. package/sidenav/Sidenav.test.js +25 -44
  342. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  343. package/{layout → sidenav}/SidenavContext.js +3 -9
  344. package/sidenav/types.d.ts +52 -26
  345. package/slider/Slider.accessibility.test.d.ts +1 -0
  346. package/slider/Slider.accessibility.test.js +104 -0
  347. package/slider/Slider.d.ts +2 -2
  348. package/slider/Slider.js +146 -181
  349. package/slider/Slider.stories.tsx +64 -61
  350. package/slider/Slider.test.d.ts +1 -0
  351. package/slider/Slider.test.js +195 -88
  352. package/slider/types.d.ts +7 -3
  353. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  354. package/spinner/Spinner.accessibility.test.js +96 -0
  355. package/spinner/Spinner.js +34 -74
  356. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  357. package/spinner/Spinner.test.d.ts +1 -0
  358. package/spinner/Spinner.test.js +25 -34
  359. package/spinner/types.d.ts +3 -3
  360. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  361. package/status-light/StatusLight.accessibility.test.js +157 -0
  362. package/status-light/StatusLight.d.ts +4 -0
  363. package/status-light/StatusLight.js +51 -0
  364. package/status-light/StatusLight.stories.tsx +74 -0
  365. package/status-light/StatusLight.test.d.ts +1 -0
  366. package/status-light/StatusLight.test.js +25 -0
  367. package/status-light/types.d.ts +17 -0
  368. package/status-light/types.js +5 -0
  369. package/switch/Switch.accessibility.test.d.ts +1 -0
  370. package/switch/Switch.accessibility.test.js +98 -0
  371. package/switch/Switch.d.ts +2 -2
  372. package/switch/Switch.js +145 -129
  373. package/switch/Switch.stories.tsx +49 -60
  374. package/switch/Switch.test.d.ts +1 -0
  375. package/switch/Switch.test.js +137 -55
  376. package/switch/types.d.ts +7 -3
  377. package/table/DropdownTheme.js +62 -0
  378. package/table/Table.accessibility.test.d.ts +1 -0
  379. package/table/Table.accessibility.test.js +93 -0
  380. package/table/Table.d.ts +6 -2
  381. package/table/Table.js +78 -35
  382. package/table/Table.stories.tsx +663 -0
  383. package/table/Table.test.d.ts +1 -0
  384. package/table/Table.test.js +93 -7
  385. package/table/types.d.ts +34 -6
  386. package/tabs/Tab.d.ts +4 -0
  387. package/tabs/Tab.js +117 -0
  388. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  389. package/tabs/Tabs.accessibility.test.js +56 -0
  390. package/tabs/Tabs.js +303 -141
  391. package/tabs/Tabs.stories.tsx +124 -6
  392. package/tabs/Tabs.test.d.ts +1 -0
  393. package/tabs/Tabs.test.js +212 -76
  394. package/tabs/types.d.ts +30 -20
  395. package/tag/Tag.accessibility.test.d.ts +1 -0
  396. package/tag/Tag.accessibility.test.js +69 -0
  397. package/tag/Tag.js +35 -67
  398. package/tag/Tag.stories.tsx +18 -8
  399. package/tag/Tag.test.d.ts +1 -0
  400. package/tag/Tag.test.js +17 -36
  401. package/tag/types.d.ts +9 -9
  402. package/text-input/Suggestion.js +40 -28
  403. package/text-input/Suggestions.d.ts +4 -0
  404. package/text-input/Suggestions.js +94 -0
  405. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  406. package/text-input/TextInput.accessibility.test.js +321 -0
  407. package/text-input/TextInput.js +311 -512
  408. package/text-input/TextInput.stories.tsx +276 -276
  409. package/text-input/TextInput.test.d.ts +1 -0
  410. package/text-input/TextInput.test.js +1418 -1374
  411. package/text-input/types.d.ts +43 -16
  412. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  413. package/textarea/Textarea.accessibility.test.js +155 -0
  414. package/textarea/Textarea.js +70 -115
  415. package/textarea/Textarea.stories.tsx +174 -0
  416. package/textarea/Textarea.test.d.ts +1 -0
  417. package/textarea/Textarea.test.js +151 -182
  418. package/textarea/types.d.ts +9 -5
  419. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  420. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  421. package/toggle-group/ToggleGroup.d.ts +2 -2
  422. package/toggle-group/ToggleGroup.js +92 -108
  423. package/toggle-group/ToggleGroup.stories.tsx +52 -7
  424. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  425. package/toggle-group/ToggleGroup.test.js +68 -87
  426. package/toggle-group/types.d.ts +28 -19
  427. package/typography/Typography.accessibility.test.d.ts +1 -0
  428. package/typography/Typography.accessibility.test.js +339 -0
  429. package/typography/Typography.d.ts +4 -0
  430. package/typography/Typography.js +23 -0
  431. package/typography/Typography.stories.tsx +198 -0
  432. package/typography/types.d.ts +18 -0
  433. package/typography/types.js +5 -0
  434. package/useTheme.d.ts +1144 -1
  435. package/useTheme.js +2 -9
  436. package/useTranslatedLabels.d.ts +84 -1
  437. package/useTranslatedLabels.js +1 -7
  438. package/utils/BaseTypography.d.ts +21 -0
  439. package/utils/BaseTypography.js +94 -0
  440. package/utils/FocusLock.d.ts +13 -0
  441. package/utils/FocusLock.js +124 -0
  442. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  443. package/wizard/Wizard.accessibility.test.js +55 -0
  444. package/wizard/Wizard.js +34 -87
  445. package/wizard/Wizard.stories.tsx +59 -1
  446. package/wizard/Wizard.test.d.ts +1 -0
  447. package/wizard/Wizard.test.js +53 -80
  448. package/wizard/types.d.ts +9 -9
  449. package/card/ice-cream.jpg +0 -0
  450. package/common/OpenSans.css +0 -81
  451. package/common/RequiredComponent.js +0 -32
  452. package/common/fonts/OpenSans-Bold.ttf +0 -0
  453. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  454. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  455. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  456. package/common/fonts/OpenSans-Italic.ttf +0 -0
  457. package/common/fonts/OpenSans-Light.ttf +0 -0
  458. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  459. package/common/fonts/OpenSans-Regular.ttf +0 -0
  460. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  461. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  462. package/inline/Inline.d.ts +0 -4
  463. package/inline/Inline.js +0 -56
  464. package/inline/Inline.stories.tsx +0 -264
  465. package/inline/types.d.ts +0 -32
  466. package/list/List.d.ts +0 -4
  467. package/list/List.js +0 -47
  468. package/list/List.stories.tsx +0 -89
  469. package/list/types.d.ts +0 -7
  470. package/number-input/numberInputContextTypes.d.ts +0 -19
  471. package/paginator/Icons.js +0 -66
  472. package/resultsetTable/ResultsetTable.d.ts +0 -4
  473. package/resultsetTable/ResultsetTable.js +0 -254
  474. package/resultsetTable/ResultsetTable.test.js +0 -348
  475. package/row/Row.d.ts +0 -3
  476. package/row/Row.js +0 -127
  477. package/row/Row.stories.tsx +0 -237
  478. package/row/types.d.ts +0 -28
  479. package/select/Icons.d.ts +0 -10
  480. package/select/Icons.js +0 -93
  481. package/stack/Stack.d.ts +0 -4
  482. package/stack/Stack.js +0 -50
  483. package/stack/Stack.stories.tsx +0 -225
  484. package/stack/types.d.ts +0 -28
  485. package/table/Table.stories.jsx +0 -277
  486. package/tabs-nav/NavTabs.d.ts +0 -8
  487. package/tabs-nav/NavTabs.js +0 -125
  488. package/tabs-nav/NavTabs.stories.tsx +0 -170
  489. package/tabs-nav/NavTabs.test.js +0 -82
  490. package/tabs-nav/Tab.js +0 -132
  491. package/text/Text.d.ts +0 -7
  492. package/text/Text.js +0 -30
  493. package/text/Text.stories.tsx +0 -19
  494. package/textarea/Textarea.stories.jsx +0 -157
  495. /package/{inline → action-icon}/types.js +0 -0
  496. /package/{list → breadcrumbs}/types.js +0 -0
  497. /package/{resultsetTable → bulleted-list}/types.js +0 -0
  498. /package/{row → container}/types.js +0 -0
  499. /package/{stack → contextual-menu}/types.js +0 -0
  500. /package/{tabs-nav → divider}/types.js +0 -0
  501. /package/{number-input/numberInputContextTypes.js → flex/types.js} +0 -0
  502. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
@@ -1,225 +0,0 @@
1
- import React from "react";
2
- import Title from "../../.storybook/components/Title";
3
- import styled from "styled-components";
4
- import DxcStack from "./Stack";
5
-
6
- export default {
7
- title: "Stack",
8
- component: DxcStack,
9
- };
10
-
11
- export const Chromatic = () => (
12
- <>
13
- <Title title="Default" theme="light" level={4} />
14
- <Container>
15
- <DxcStack>
16
- <Placeholder />
17
- <Placeholder />
18
- <Placeholder />
19
- <Placeholder />
20
- <Placeholder />
21
- </DxcStack>
22
- </Container>
23
- <Title title="Default with divider" theme="light" level={4} />
24
- <Container>
25
- <DxcStack divider>
26
- <Placeholder />
27
- <Placeholder />
28
- <Placeholder />
29
- </DxcStack>
30
- </Container>
31
- <Title title="Alignment with divider" theme="light" level={4} />
32
- <Container>
33
- <DxcStack alignX="end" divider>
34
- <Placeholder paddingLeft={20}></Placeholder>
35
- <Placeholder />
36
- <Placeholder paddingLeft={60}></Placeholder>
37
- </DxcStack>
38
- </Container>
39
- <Title title="Default with one child" theme="light" level={4} />
40
- <Container>
41
- <DxcStack divider>
42
- <Placeholder />
43
- </DxcStack>
44
- </Container>
45
- <Title title="Wrap" theme="light" level={4} />
46
- <FlexContainer customHeight>
47
- <DxcStack>
48
- <Placeholder />
49
- <Placeholder />
50
- <Placeholder />
51
- <Placeholder />
52
- <Placeholder />
53
- </DxcStack>
54
- </FlexContainer>
55
- <Title title="AlignX = start" theme="light" level={4} />
56
- <Container>
57
- <DxcStack alignX="start">
58
- <Placeholder paddingLeft={20}></Placeholder>
59
- <Placeholder />
60
- <Placeholder paddingRight={60}></Placeholder>
61
- <Placeholder paddingLeft={20}></Placeholder>
62
- </DxcStack>
63
- </Container>
64
- <Title title="AlignX = end" theme="light" level={4} />
65
- <Container>
66
- <DxcStack alignX="end">
67
- <Placeholder paddingLeft={20}></Placeholder>
68
- <Placeholder />
69
- <Placeholder paddingLeft={60}></Placeholder>
70
- </DxcStack>
71
- </Container>
72
- <Title title="AlignX = center" theme="light" level={4} />
73
- <Container>
74
- <DxcStack alignX="center">
75
- <Placeholder paddingLeft={20}></Placeholder>
76
- <Placeholder />
77
- <Placeholder paddingLeft={60}></Placeholder>
78
- <Placeholder paddingLeft={20}></Placeholder>
79
- </DxcStack>
80
- </Container>
81
- <Title title="AlignX = baseline" theme="light" level={4} />
82
- <Container>
83
- <DxcStack alignX="baseline">
84
- <Placeholder paddingLeft={20}></Placeholder>
85
- <Placeholder />
86
- <Placeholder paddingLeft={60}></Placeholder>
87
- </DxcStack>
88
- </Container>
89
- <Title title="AlignX with wrapped items" theme="light" level={4} />
90
- <FlexContainer customHeight>
91
- <DxcStack alignX="center">
92
- <Placeholder />
93
- <Placeholder paddingRight={60} />
94
- <Placeholder paddingLeft={20} />
95
- <Placeholder />
96
- <Placeholder paddingRight={20} />
97
- <Placeholder paddingLeft={60} />
98
- </DxcStack>
99
- </FlexContainer>
100
- <Title title="Gutter = 0rem" theme="light" level={4} />
101
- <Container>
102
- <DxcStack gutter="0rem">
103
- <Placeholder />
104
- <Placeholder />
105
- <Placeholder />
106
- <Placeholder />
107
- <Placeholder />
108
- </DxcStack>
109
- </Container>
110
- <Title title="Gutter = 0.125rem" theme="light" level={4} />
111
- <Container>
112
- <DxcStack gutter="0.125rem">
113
- <Placeholder />
114
- <Placeholder />
115
- <Placeholder />
116
- </DxcStack>
117
- </Container>
118
- <Title title="Gutter = 0.25rem" theme="light" level={4} />
119
- <Container>
120
- <DxcStack gutter="0.25rem">
121
- <Placeholder />
122
- <Placeholder />
123
- <Placeholder />
124
- <Placeholder />
125
- <Placeholder />
126
- </DxcStack>
127
- </Container>
128
- <Title title="Gutter = 0.5rem" theme="light" level={4} />
129
- <Container>
130
- <DxcStack gutter="0.5rem">
131
- <Placeholder />
132
- <Placeholder />
133
- <Placeholder />
134
- </DxcStack>
135
- </Container>
136
- <Title title="Gutter = 0.75rem" theme="light" level={4} />
137
- <Container>
138
- <DxcStack gutter="0.75rem">
139
- <Placeholder />
140
- <Placeholder />
141
- <Placeholder />
142
- <Placeholder />
143
- <Placeholder />
144
- </DxcStack>
145
- </Container>
146
- <Title title="Gutter = 1rem" theme="light" level={4} />
147
- <Container>
148
- <DxcStack gutter="1rem">
149
- <Placeholder />
150
- <Placeholder />
151
- <Placeholder />
152
- </DxcStack>
153
- </Container>
154
- <Title title="Gutter = 1.5rem" theme="light" level={4} />
155
- <Container>
156
- <DxcStack gutter="1.5rem">
157
- <Placeholder />
158
- <Placeholder />
159
- <Placeholder />
160
- <Placeholder />
161
- <Placeholder />
162
- </DxcStack>
163
- </Container>
164
- <Title title="Gutter = 2rem & divider" theme="light" level={4} />
165
- <Container>
166
- <DxcStack gutter="2rem" divider>
167
- <Placeholder />
168
- <Placeholder />
169
- <Placeholder />
170
- </DxcStack>
171
- </Container>
172
- <Title title="Gutter = 3rem" theme="light" level={4} />
173
- <Container>
174
- <DxcStack gutter="3rem">
175
- <Placeholder />
176
- <Placeholder />
177
- <Placeholder />
178
- </DxcStack>
179
- </Container>
180
- <Title title="Gutter = 4rem" theme="light" level={4} />
181
- <Container>
182
- <DxcStack gutter="4rem">
183
- <Placeholder />
184
- <Placeholder />
185
- </DxcStack>
186
- </Container>
187
- <Title title="Gutter = 5rem" theme="light" level={4} />
188
- <Container>
189
- <DxcStack gutter="5rem">
190
- <Placeholder />
191
- <Placeholder />
192
- </DxcStack>
193
- </Container>
194
- <Title title="Reverse" theme="light" level={4} />
195
- <Container>
196
- <DxcStack reverse>
197
- <Placeholder>1</Placeholder>
198
- <Placeholder>2</Placeholder>
199
- <Placeholder>3</Placeholder>
200
- <Placeholder>4</Placeholder>
201
- </DxcStack>
202
- </Container>
203
- </>
204
- );
205
-
206
- const FlexContainer = styled.div<{ customHeight?: boolean }>`
207
- display: flex;
208
- ${({ customHeight }) => customHeight && `height: 100px;`};
209
- background: #f2eafa;
210
- `;
211
-
212
- const Container = styled.div<{ customHeight?: boolean }>`
213
- background: #f2eafa;
214
- `;
215
-
216
- type PlaceholderProps = { paddingLeft?: number; paddingRight?: number };
217
-
218
- const Placeholder = styled.div<PlaceholderProps>`
219
- min-height: 40px;
220
- min-width: 120px;
221
- border: 1px solid #a46ede;
222
- background-color: #e5d5f6;
223
- padding-left: ${({ paddingLeft }) => `${paddingLeft ?? 0}px`};
224
- padding-right: ${({ paddingRight }) => `${paddingRight ?? 0}px`};
225
- `;
package/stack/types.d.ts DELETED
@@ -1,28 +0,0 @@
1
- /// <reference types="react" />
2
- declare type Props = {
3
- /**
4
- * Alignment applied to children in the main axis.
5
- */
6
- alignX?: "start" | "end" | "center" | "baseline" | "stretch";
7
- /**
8
- * Specifies the HTML tag or component that is rendered as the wrapper element.
9
- */
10
- as?: React.ElementType;
11
- /**
12
- * If true, a divider is shown between children.
13
- */
14
- divider?: boolean;
15
- /**
16
- * Space applied between each child.
17
- */
18
- gutter?: "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "0.75rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
19
- /**
20
- * Change the direction of the stack to reverse.
21
- */
22
- reverse?: boolean;
23
- /**
24
- * Custom content inside the stack.
25
- */
26
- children: React.ReactNode[] | React.ReactNode;
27
- };
28
- export default Props;
@@ -1,277 +0,0 @@
1
- import React from "react";
2
- import DxcTable from "./Table";
3
- import Title from "../../.storybook/components/Title";
4
- import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
-
6
- export default {
7
- title: "Table",
8
- component: DxcTable,
9
- };
10
-
11
- export const Chromatic = () => (
12
- <>
13
- <ExampleContainer>
14
- <Title title="Default" theme="light" level={4} />
15
- <DxcTable>
16
- <tr>
17
- <th>header 1</th>
18
- <th>header 2</th>
19
- <th>header 3</th>
20
- </tr>
21
- <tr>
22
- <td>cell 1</td>
23
- <td>cell 2</td>
24
- <td>cell 3</td>
25
- </tr>
26
- <tr>
27
- <td>cell 4</td>
28
- <td>cell 5</td>
29
- <td>cell 6</td>
30
- </tr>
31
- <tr>
32
- <td>cell 7</td>
33
- <td>cell 8</td>
34
- <td>Cell 9</td>
35
- </tr>
36
- </DxcTable>
37
- </ExampleContainer>
38
- <ExampleContainer>
39
- <Title title="With scrollbar" theme="light" level={4} />
40
- <div
41
- style={{ height: 200 + "px", display: "flex", flexDirection: "row", width: 100 + "%", marginBottom: 50 + "px" }}
42
- >
43
- <DxcTable>
44
- <tr>
45
- <th>
46
- header<br></br>subheader
47
- </th>
48
- <th>
49
- header<br></br>subheader
50
- </th>
51
- <th>
52
- header<br></br>subheader
53
- </th>
54
- </tr>
55
- <tr>
56
- <td>
57
- Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
58
- dolore magna aliqua.
59
- </td>
60
- <td>
61
- Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
62
- consequat.
63
- </td>
64
- <td>
65
- Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
66
- </td>
67
- </tr>
68
- <tr>
69
- <td>cell data</td>
70
- <td>cell data</td>
71
- <td>cell data</td>
72
- </tr>
73
- <tr>
74
- <td>cell data</td>
75
- <td>cell data</td>
76
- <td>cell data</td>
77
- </tr>
78
- <tr>
79
- <td>cell data</td>
80
- <td>cell data</td>
81
- <td>cell data</td>
82
- </tr>
83
- <tr>
84
- <td>cell data</td>
85
- <td>cell data</td>
86
- <td>cell data</td>
87
- </tr>
88
- <tr>
89
- <td>cell data</td>
90
- <td>cell data</td>
91
- <td>cell data</td>
92
- </tr>
93
- <tr>
94
- <td>cell data</td>
95
- <td>cell data</td>
96
- <td>cell data</td>
97
- </tr>
98
- <tr>
99
- <td>cell data</td>
100
- <td>cell data</td>
101
- <td>cell data</td>
102
- </tr>
103
- <tr>
104
- <td>cell data</td>
105
- <td>cell data</td>
106
- <td>cell data</td>
107
- </tr>
108
- </DxcTable>
109
- </div>
110
- </ExampleContainer>
111
- <Title title="Margins" theme="light" level={2} />
112
- <ExampleContainer>
113
- <Title title="Xxsmall margin" theme="light" level={4} />
114
- <DxcTable margin="xxsmall">
115
- <tr>
116
- <th>header 1</th>
117
- <th>header 2</th>
118
- <th>header 3</th>
119
- </tr>
120
- <tr>
121
- <td>cell 1</td>
122
- <td>cell 2</td>
123
- <td>cell 3</td>
124
- </tr>
125
- <tr>
126
- <td>cell 4</td>
127
- <td>cell 5</td>
128
- <td>cell 6</td>
129
- </tr>
130
- <tr>
131
- <td>cell 7</td>
132
- <td>cell 8</td>
133
- <td>Cell 9</td>
134
- </tr>
135
- </DxcTable>
136
- <Title title="Xsmall margin" theme="light" level={4} />
137
- <DxcTable margin="xsmall">
138
- <tr>
139
- <th>header 1</th>
140
- <th>header 2</th>
141
- <th>header 3</th>
142
- </tr>
143
- <tr>
144
- <td>cell 1</td>
145
- <td>cell 2</td>
146
- <td>cell 3</td>
147
- </tr>
148
- <tr>
149
- <td>cell 4</td>
150
- <td>cell 5</td>
151
- <td>cell 6</td>
152
- </tr>
153
- <tr>
154
- <td>cell 7</td>
155
- <td>cell 8</td>
156
- <td>Cell 9</td>
157
- </tr>
158
- </DxcTable>
159
- <Title title="Small margin" theme="light" level={4} />
160
- <DxcTable margin="small">
161
- <tr>
162
- <th>header 1</th>
163
- <th>header 2</th>
164
- <th>header 3</th>
165
- </tr>
166
- <tr>
167
- <td>cell 1</td>
168
- <td>cell 2</td>
169
- <td>cell 3</td>
170
- </tr>
171
- <tr>
172
- <td>cell 4</td>
173
- <td>cell 5</td>
174
- <td>cell 6</td>
175
- </tr>
176
- <tr>
177
- <td>cell 7</td>
178
- <td>cell 8</td>
179
- <td>Cell 9</td>
180
- </tr>
181
- </DxcTable>
182
- <Title title="Medium margin" theme="light" level={4} />
183
- <DxcTable margin="medium">
184
- <tr>
185
- <th>header 1</th>
186
- <th>header 2</th>
187
- <th>header 3</th>
188
- </tr>
189
- <tr>
190
- <td>cell 1</td>
191
- <td>cell 2</td>
192
- <td>cell 3</td>
193
- </tr>
194
- <tr>
195
- <td>cell 4</td>
196
- <td>cell 5</td>
197
- <td>cell 6</td>
198
- </tr>
199
- <tr>
200
- <td>cell 7</td>
201
- <td>cell 8</td>
202
- <td>Cell 9</td>
203
- </tr>
204
- </DxcTable>
205
- <Title title="Large margin" theme="light" level={4} />
206
- <DxcTable margin="large">
207
- <tr>
208
- <th>header 1</th>
209
- <th>header 2</th>
210
- <th>header 3</th>
211
- </tr>
212
- <tr>
213
- <td>cell 1</td>
214
- <td>cell 2</td>
215
- <td>cell 3</td>
216
- </tr>
217
- <tr>
218
- <td>cell 4</td>
219
- <td>cell 5</td>
220
- <td>cell 6</td>
221
- </tr>
222
- <tr>
223
- <td>cell 7</td>
224
- <td>cell 8</td>
225
- <td>Cell 9</td>
226
- </tr>
227
- </DxcTable>
228
- <Title title="Xlarge margin" theme="light" level={4} />
229
- <DxcTable margin="xlarge">
230
- <tr>
231
- <th>header 1</th>
232
- <th>header 2</th>
233
- <th>header 3</th>
234
- </tr>
235
- <tr>
236
- <td>cell 1</td>
237
- <td>cell 2</td>
238
- <td>cell 3</td>
239
- </tr>
240
- <tr>
241
- <td>cell 4</td>
242
- <td>cell 5</td>
243
- <td>cell 6</td>
244
- </tr>
245
- <tr>
246
- <td>cell 7</td>
247
- <td>cell 8</td>
248
- <td>Cell 9</td>
249
- </tr>
250
- </DxcTable>
251
- <Title title="Xxlarge margin" theme="light" level={4} />
252
- <DxcTable margin="xxlarge">
253
- <tr>
254
- <th>header 1</th>
255
- <th>header 2</th>
256
- <th>header 3</th>
257
- </tr>
258
- <tr>
259
- <td>cell 1</td>
260
- <td>cell 2</td>
261
- <td>cell 3</td>
262
- </tr>
263
- <tr>
264
- <td>cell 4</td>
265
- <td>cell 5</td>
266
- <td>cell 6</td>
267
- </tr>
268
- <tr>
269
- <td>cell 7</td>
270
- <td>cell 8</td>
271
- <td>Cell 9</td>
272
- </tr>
273
- </DxcTable>
274
- <hr />
275
- </ExampleContainer>
276
- </>
277
- );
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { NavTabsContextProps, NavTabsProps } from "./types";
3
- export declare const NavTabsContext: React.Context<NavTabsContextProps>;
4
- declare const DxcNavTabs: {
5
- ({ iconPosition, tabIndex, children }: NavTabsProps): JSX.Element;
6
- Tab: React.ForwardRefExoticComponent<import("./types").TabProps & React.RefAttributes<HTMLAnchorElement>>;
7
- };
8
- export default DxcNavTabs;
@@ -1,125 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = exports.NavTabsContext = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
- var _react = _interopRequireWildcard(require("react"));
17
-
18
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
- var _useTheme = _interopRequireDefault(require("../useTheme"));
21
-
22
- 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
-
33
- var getPropInChild = function getPropInChild(child, propName) {
34
- return child.props ? child.props[propName] ? child.props[propName] : child.props.children ? getPropInChild(child.props.children, propName) : undefined : undefined;
35
- };
36
-
37
- var getLabelFromTab = function getLabelFromTab(child) {
38
- if (typeof child === "string") {
39
- return child.toString();
40
- } else if (child.props.children) {
41
- return Array.isArray(child.props.children) ? getLabelFromTab(child.props.children[0]) : getLabelFromTab(child.props.children);
42
- }
43
- };
44
-
45
- var getPreviousTabIndex = function getPreviousTabIndex(array, initialIndex) {
46
- var index = initialIndex === 0 ? array.length - 1 : initialIndex - 1;
47
-
48
- while (getPropInChild(array[index], "disabled")) {
49
- index = index === 0 ? array.length - 1 : index - 1;
50
- }
51
-
52
- return index;
53
- };
54
-
55
- var getNextTabIndex = function getNextTabIndex(array, initialIndex) {
56
- var index = initialIndex === array.length - 1 ? 0 : initialIndex + 1;
57
-
58
- while (getPropInChild(array[index], "disabled")) {
59
- index = index === array.length - 1 ? 0 : index + 1;
60
- }
61
-
62
- return index;
63
- };
64
-
65
- var DxcNavTabs = function DxcNavTabs(_ref) {
66
- 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
-
73
- var _useState = (0, _react.useState)(null),
74
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
75
- innerFocus = _useState2[0],
76
- setInnerFocus = _useState2[1];
77
-
78
- var contextValue = (0, _react.useMemo)(function () {
79
- return {
80
- iconPosition: iconPosition,
81
- 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])
86
- };
87
- }, [iconPosition, tabIndex, innerFocus]);
88
-
89
- var handleOnKeyDown = function handleOnKeyDown(event) {
90
- var activeTab = _react["default"].Children.toArray(children).findIndex(function (child) {
91
- return getPropInChild(child, "active");
92
- });
93
-
94
- switch (event.keyCode) {
95
- case 37:
96
- // arrow left
97
- event.preventDefault();
98
- setInnerFocus(getPreviousTabIndex(children, innerFocus === null ? activeTab : innerFocus));
99
- break;
100
-
101
- case 39:
102
- // arrow right
103
- event.preventDefault();
104
- setInnerFocus(getNextTabIndex(children, innerFocus === null ? activeTab : innerFocus));
105
- break;
106
- }
107
- };
108
-
109
- return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
110
- theme: colorsTheme.tabs
111
- }, /*#__PURE__*/_react["default"].createElement(NavTabsContainer, {
112
- onKeyDown: handleOnKeyDown,
113
- role: "tablist",
114
- "aria-label": "Navigation tabs"
115
- }, /*#__PURE__*/_react["default"].createElement(NavTabsContext.Provider, {
116
- value: contextValue
117
- }, children)));
118
- };
119
-
120
- 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;