@dxc-technology/halstack-react 0.0.0-9d82cb9 → 0.0.0-9e25510

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 (553) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1286 -0
  4. package/HalstackContext.js +320 -0
  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 +102 -192
  10. package/accordion/Accordion.stories.tsx +83 -149
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +56 -0
  13. package/accordion/types.d.ts +11 -22
  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 +3 -3
  17. package/accordion-group/AccordionGroup.js +38 -107
  18. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  19. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  20. package/accordion-group/AccordionGroup.test.js +94 -0
  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 +17 -22
  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 +40 -127
  37. package/alert/Alert.stories.tsx +28 -0
  38. package/alert/Alert.test.d.ts +1 -0
  39. package/alert/Alert.test.js +75 -0
  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 +4 -0
  44. package/badge/Badge.js +142 -40
  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 +54 -0
  49. package/bar-chart/BarChart.d.ts +4 -0
  50. package/bar-chart/BarChart.js +157 -0
  51. package/bar-chart/BarChart.stories.tsx +281 -0
  52. package/bar-chart/BarChart.test.d.ts +1 -0
  53. package/bar-chart/BarChart.test.js +194 -0
  54. package/bar-chart/theme.d.ts +3 -0
  55. package/bar-chart/theme.js +31 -0
  56. package/bar-chart/types.d.ts +137 -0
  57. package/bleed/Bleed.d.ts +2 -2
  58. package/bleed/Bleed.js +14 -55
  59. package/bleed/Bleed.stories.tsx +95 -96
  60. package/bleed/types.d.ts +26 -2
  61. package/box/Box.accessibility.test.d.ts +1 -0
  62. package/box/Box.accessibility.test.js +33 -0
  63. package/box/Box.d.ts +1 -1
  64. package/box/Box.js +30 -81
  65. package/box/Box.stories.tsx +38 -51
  66. package/box/Box.test.d.ts +1 -0
  67. package/box/Box.test.js +13 -0
  68. package/box/types.d.ts +3 -14
  69. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  70. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  71. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  72. package/breadcrumbs/Breadcrumbs.js +79 -0
  73. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  74. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  75. package/breadcrumbs/Breadcrumbs.test.js +168 -0
  76. package/breadcrumbs/Item.d.ts +4 -0
  77. package/breadcrumbs/Item.js +52 -0
  78. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  79. package/breadcrumbs/dropdownTheme.js +62 -0
  80. package/breadcrumbs/types.d.ts +40 -0
  81. package/breadcrumbs/types.js +5 -0
  82. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  83. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  84. package/bulleted-list/BulletedList.d.ts +7 -0
  85. package/bulleted-list/BulletedList.js +92 -0
  86. package/bulleted-list/BulletedList.stories.tsx +115 -0
  87. package/bulleted-list/types.d.ts +38 -0
  88. package/bulleted-list/types.js +5 -0
  89. package/button/Button.accessibility.test.d.ts +1 -0
  90. package/button/Button.accessibility.test.js +127 -0
  91. package/button/Button.d.ts +1 -1
  92. package/button/Button.js +63 -113
  93. package/button/Button.stories.tsx +151 -100
  94. package/button/Button.test.d.ts +1 -0
  95. package/button/Button.test.js +38 -0
  96. package/button/types.d.ts +12 -8
  97. package/card/Card.accessibility.test.d.ts +1 -0
  98. package/card/Card.accessibility.test.js +36 -0
  99. package/card/Card.d.ts +1 -1
  100. package/card/Card.js +59 -102
  101. package/card/Card.stories.tsx +13 -43
  102. package/card/Card.test.d.ts +1 -0
  103. package/card/Card.test.js +39 -0
  104. package/card/types.d.ts +6 -11
  105. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  106. package/checkbox/Checkbox.accessibility.test.js +87 -0
  107. package/checkbox/Checkbox.d.ts +2 -2
  108. package/checkbox/Checkbox.js +140 -181
  109. package/checkbox/Checkbox.stories.tsx +166 -136
  110. package/checkbox/Checkbox.test.d.ts +1 -0
  111. package/checkbox/Checkbox.test.js +199 -0
  112. package/checkbox/types.d.ts +18 -6
  113. package/chip/Chip.accessibility.test.d.ts +1 -0
  114. package/chip/Chip.accessibility.test.js +67 -0
  115. package/chip/Chip.d.ts +1 -1
  116. package/chip/Chip.js +49 -122
  117. package/chip/Chip.stories.tsx +105 -31
  118. package/chip/Chip.test.d.ts +1 -0
  119. package/chip/Chip.test.js +41 -0
  120. package/chip/types.d.ts +8 -16
  121. package/common/coreTokens.d.ts +236 -0
  122. package/common/coreTokens.js +183 -0
  123. package/common/utils.d.ts +1 -0
  124. package/common/utils.js +6 -12
  125. package/common/variables.d.ts +1438 -0
  126. package/common/variables.js +1119 -1427
  127. package/container/Container.d.ts +4 -0
  128. package/container/Container.js +194 -0
  129. package/container/Container.stories.tsx +214 -0
  130. package/container/types.d.ts +176 -0
  131. package/container/types.js +5 -0
  132. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  133. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  134. package/contextual-menu/ContextualMenu.d.ts +5 -0
  135. package/contextual-menu/ContextualMenu.js +136 -0
  136. package/contextual-menu/ContextualMenu.stories.tsx +231 -0
  137. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  138. package/contextual-menu/ContextualMenu.test.js +247 -0
  139. package/contextual-menu/GroupItem.d.ts +4 -0
  140. package/contextual-menu/GroupItem.js +67 -0
  141. package/contextual-menu/ItemAction.d.ts +4 -0
  142. package/contextual-menu/ItemAction.js +88 -0
  143. package/contextual-menu/MenuItem.d.ts +4 -0
  144. package/contextual-menu/MenuItem.js +29 -0
  145. package/contextual-menu/SingleItem.d.ts +4 -0
  146. package/contextual-menu/SingleItem.js +38 -0
  147. package/contextual-menu/types.d.ts +65 -0
  148. package/contextual-menu/types.js +5 -0
  149. package/date-input/Calendar.d.ts +4 -0
  150. package/date-input/Calendar.js +230 -0
  151. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  152. package/date-input/DateInput.accessibility.test.js +229 -0
  153. package/date-input/DateInput.js +263 -310
  154. package/date-input/DateInput.stories.tsx +215 -57
  155. package/date-input/DateInput.test.d.ts +1 -0
  156. package/date-input/DateInput.test.js +808 -0
  157. package/date-input/DatePicker.d.ts +4 -0
  158. package/date-input/DatePicker.js +121 -0
  159. package/date-input/YearPicker.d.ts +4 -0
  160. package/date-input/YearPicker.js +105 -0
  161. package/date-input/types.d.ts +86 -22
  162. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  163. package/dialog/Dialog.accessibility.test.js +69 -0
  164. package/dialog/Dialog.d.ts +1 -1
  165. package/dialog/Dialog.js +56 -129
  166. package/dialog/Dialog.stories.tsx +324 -167
  167. package/dialog/Dialog.test.d.ts +1 -0
  168. package/dialog/Dialog.test.js +370 -0
  169. package/dialog/types.d.ts +18 -25
  170. package/divider/Divider.accessibility.test.d.ts +1 -0
  171. package/divider/Divider.accessibility.test.js +33 -0
  172. package/divider/Divider.d.ts +4 -0
  173. package/divider/Divider.js +36 -0
  174. package/divider/Divider.stories.tsx +224 -0
  175. package/divider/Divider.test.d.ts +1 -0
  176. package/divider/Divider.test.js +38 -0
  177. package/divider/types.d.ts +21 -0
  178. package/divider/types.js +5 -0
  179. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  180. package/dropdown/Dropdown.accessibility.test.js +183 -0
  181. package/dropdown/Dropdown.d.ts +1 -1
  182. package/dropdown/Dropdown.js +213 -329
  183. package/dropdown/Dropdown.stories.tsx +245 -65
  184. package/dropdown/Dropdown.test.d.ts +1 -0
  185. package/dropdown/Dropdown.test.js +628 -0
  186. package/dropdown/DropdownMenu.d.ts +4 -0
  187. package/dropdown/DropdownMenu.js +63 -0
  188. package/dropdown/DropdownMenuItem.d.ts +4 -0
  189. package/dropdown/DropdownMenuItem.js +71 -0
  190. package/dropdown/types.d.ts +37 -30
  191. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  192. package/file-input/FileInput.accessibility.test.js +167 -0
  193. package/file-input/FileInput.d.ts +2 -2
  194. package/file-input/FileInput.js +243 -395
  195. package/file-input/FileInput.stories.tsx +123 -12
  196. package/file-input/FileInput.test.d.ts +1 -0
  197. package/file-input/FileInput.test.js +404 -0
  198. package/file-input/FileItem.d.ts +4 -14
  199. package/file-input/FileItem.js +61 -120
  200. package/file-input/types.d.ts +24 -11
  201. package/flex/Flex.d.ts +4 -0
  202. package/flex/Flex.js +57 -0
  203. package/flex/Flex.stories.tsx +112 -0
  204. package/flex/types.d.ts +97 -0
  205. package/flex/types.js +5 -0
  206. package/footer/Footer.accessibility.test.d.ts +1 -0
  207. package/footer/Footer.accessibility.test.js +125 -0
  208. package/footer/Footer.d.ts +1 -1
  209. package/footer/Footer.js +73 -193
  210. package/footer/Footer.stories.tsx +99 -21
  211. package/footer/Footer.test.d.ts +1 -0
  212. package/footer/Footer.test.js +85 -0
  213. package/footer/Icons.d.ts +3 -2
  214. package/footer/Icons.js +54 -23
  215. package/footer/types.d.ts +26 -27
  216. package/grid/Grid.d.ts +7 -0
  217. package/grid/Grid.js +76 -0
  218. package/grid/Grid.stories.tsx +221 -0
  219. package/grid/types.d.ts +115 -0
  220. package/grid/types.js +5 -0
  221. package/header/Header.accessibility.test.d.ts +1 -0
  222. package/header/Header.accessibility.test.js +94 -0
  223. package/header/Header.d.ts +4 -3
  224. package/header/Header.js +104 -218
  225. package/header/Header.stories.tsx +169 -64
  226. package/header/Header.test.d.ts +1 -0
  227. package/header/Header.test.js +66 -0
  228. package/header/Icons.d.ts +2 -2
  229. package/header/Icons.js +5 -15
  230. package/header/types.d.ts +7 -21
  231. package/heading/Heading.accessibility.test.d.ts +1 -0
  232. package/heading/Heading.accessibility.test.js +33 -0
  233. package/heading/Heading.js +10 -32
  234. package/heading/Heading.test.d.ts +1 -0
  235. package/heading/Heading.test.js +156 -0
  236. package/heading/types.d.ts +7 -7
  237. package/icon/Icon.accessibility.test.d.ts +1 -0
  238. package/icon/Icon.accessibility.test.js +30 -0
  239. package/icon/Icon.d.ts +4 -0
  240. package/icon/Icon.js +33 -0
  241. package/icon/Icon.stories.tsx +28 -0
  242. package/icon/types.d.ts +4 -0
  243. package/icon/types.js +5 -0
  244. package/image/Image.accessibility.test.d.ts +1 -0
  245. package/image/Image.accessibility.test.js +56 -0
  246. package/image/Image.d.ts +4 -0
  247. package/image/Image.js +70 -0
  248. package/image/Image.stories.tsx +129 -0
  249. package/image/types.d.ts +72 -0
  250. package/image/types.js +5 -0
  251. package/inset/Inset.js +14 -55
  252. package/inset/Inset.stories.tsx +37 -36
  253. package/inset/types.d.ts +26 -2
  254. package/layout/ApplicationLayout.d.ts +16 -6
  255. package/layout/ApplicationLayout.js +88 -176
  256. package/layout/ApplicationLayout.stories.tsx +85 -94
  257. package/layout/Icons.d.ts +7 -0
  258. package/layout/Icons.js +41 -48
  259. package/layout/types.d.ts +19 -35
  260. package/link/Link.accessibility.test.d.ts +1 -0
  261. package/link/Link.accessibility.test.js +108 -0
  262. package/link/Link.d.ts +3 -2
  263. package/link/Link.js +64 -108
  264. package/link/Link.stories.tsx +161 -54
  265. package/link/Link.test.d.ts +1 -0
  266. package/link/Link.test.js +63 -0
  267. package/link/types.d.ts +15 -35
  268. package/main.d.ts +21 -18
  269. package/main.js +96 -120
  270. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  271. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  272. package/nav-tabs/NavTabs.d.ts +7 -0
  273. package/nav-tabs/NavTabs.js +108 -0
  274. package/nav-tabs/NavTabs.stories.tsx +294 -0
  275. package/nav-tabs/NavTabs.test.d.ts +1 -0
  276. package/nav-tabs/NavTabs.test.js +77 -0
  277. package/nav-tabs/NavTabsContext.d.ts +3 -0
  278. package/nav-tabs/NavTabsContext.js +8 -0
  279. package/nav-tabs/Tab.d.ts +4 -0
  280. package/nav-tabs/Tab.js +117 -0
  281. package/nav-tabs/types.d.ts +52 -0
  282. package/nav-tabs/types.js +5 -0
  283. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  284. package/number-input/NumberInput.accessibility.test.js +227 -0
  285. package/number-input/NumberInput.js +51 -45
  286. package/number-input/NumberInput.stories.tsx +39 -28
  287. package/number-input/NumberInput.test.d.ts +1 -0
  288. package/number-input/NumberInput.test.js +988 -0
  289. package/number-input/NumberInputContext.d.ts +3 -4
  290. package/number-input/NumberInputContext.js +3 -14
  291. package/number-input/types.d.ts +34 -15
  292. package/package.json +60 -55
  293. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  294. package/paginator/Paginator.accessibility.test.js +78 -0
  295. package/paginator/Paginator.js +46 -100
  296. package/paginator/Paginator.stories.tsx +24 -0
  297. package/paginator/Paginator.test.d.ts +1 -0
  298. package/paginator/Paginator.test.js +334 -0
  299. package/paginator/types.d.ts +3 -3
  300. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  301. package/paragraph/Paragraph.accessibility.test.js +28 -0
  302. package/paragraph/Paragraph.d.ts +5 -0
  303. package/paragraph/Paragraph.js +22 -0
  304. package/paragraph/Paragraph.stories.tsx +27 -0
  305. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  306. package/password-input/PasswordInput.accessibility.test.js +152 -0
  307. package/password-input/PasswordInput.js +62 -125
  308. package/password-input/PasswordInput.stories.tsx +11 -34
  309. package/password-input/PasswordInput.test.d.ts +1 -0
  310. package/password-input/PasswordInput.test.js +197 -0
  311. package/password-input/types.d.ts +21 -17
  312. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  313. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  314. package/progress-bar/ProgressBar.js +68 -92
  315. package/progress-bar/ProgressBar.stories.tsx +93 -0
  316. package/progress-bar/ProgressBar.test.d.ts +1 -0
  317. package/progress-bar/ProgressBar.test.js +93 -0
  318. package/progress-bar/types.d.ts +3 -3
  319. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  320. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  321. package/quick-nav/QuickNav.d.ts +4 -0
  322. package/quick-nav/QuickNav.js +94 -0
  323. package/quick-nav/QuickNav.stories.tsx +356 -0
  324. package/quick-nav/types.d.ts +21 -0
  325. package/quick-nav/types.js +5 -0
  326. package/radio-group/Radio.d.ts +1 -1
  327. package/radio-group/Radio.js +66 -75
  328. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  329. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  330. package/radio-group/RadioGroup.js +110 -145
  331. package/radio-group/RadioGroup.stories.tsx +171 -36
  332. package/radio-group/RadioGroup.test.d.ts +1 -0
  333. package/radio-group/RadioGroup.test.js +754 -0
  334. package/radio-group/types.d.ts +88 -10
  335. package/resultset-table/Icons.d.ts +7 -0
  336. package/resultset-table/Icons.js +47 -0
  337. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  338. package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
  339. package/resultset-table/ResultsetTable.d.ts +7 -0
  340. package/resultset-table/ResultsetTable.js +198 -0
  341. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +169 -31
  342. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  343. package/resultset-table/ResultsetTable.test.js +450 -0
  344. package/{resultsetTable → resultset-table}/types.d.ts +47 -13
  345. package/resultset-table/types.js +5 -0
  346. package/select/Listbox.d.ts +4 -0
  347. package/select/Listbox.js +147 -0
  348. package/select/Option.d.ts +4 -0
  349. package/select/Option.js +93 -0
  350. package/select/Select.accessibility.test.d.ts +1 -0
  351. package/select/Select.accessibility.test.js +227 -0
  352. package/select/Select.js +213 -593
  353. package/select/Select.stories.tsx +611 -255
  354. package/select/Select.test.d.ts +1 -0
  355. package/select/Select.test.js +2168 -0
  356. package/select/selectUtils.d.ts +41 -0
  357. package/select/selectUtils.js +129 -0
  358. package/select/types.d.ts +65 -26
  359. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  360. package/sidenav/Sidenav.accessibility.test.js +59 -0
  361. package/sidenav/Sidenav.d.ts +6 -5
  362. package/sidenav/Sidenav.js +136 -71
  363. package/sidenav/Sidenav.stories.tsx +246 -151
  364. package/sidenav/Sidenav.test.d.ts +1 -0
  365. package/sidenav/Sidenav.test.js +37 -0
  366. package/sidenav/SidenavContext.d.ts +5 -0
  367. package/sidenav/SidenavContext.js +13 -0
  368. package/sidenav/types.d.ts +52 -26
  369. package/slider/Slider.accessibility.test.d.ts +1 -0
  370. package/slider/Slider.accessibility.test.js +103 -0
  371. package/slider/Slider.d.ts +2 -2
  372. package/slider/Slider.js +147 -181
  373. package/slider/Slider.stories.tsx +68 -65
  374. package/slider/Slider.test.d.ts +1 -0
  375. package/slider/Slider.test.js +256 -0
  376. package/slider/types.d.ts +11 -3
  377. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  378. package/spinner/Spinner.accessibility.test.js +96 -0
  379. package/spinner/Spinner.d.ts +1 -1
  380. package/spinner/Spinner.js +50 -109
  381. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  382. package/spinner/Spinner.test.d.ts +1 -0
  383. package/spinner/Spinner.test.js +55 -0
  384. package/spinner/types.d.ts +3 -3
  385. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  386. package/status-light/StatusLight.accessibility.test.js +157 -0
  387. package/status-light/StatusLight.d.ts +4 -0
  388. package/status-light/StatusLight.js +51 -0
  389. package/status-light/StatusLight.stories.tsx +74 -0
  390. package/status-light/StatusLight.test.d.ts +1 -0
  391. package/status-light/StatusLight.test.js +25 -0
  392. package/status-light/types.d.ts +17 -0
  393. package/status-light/types.js +5 -0
  394. package/switch/Switch.accessibility.test.d.ts +1 -0
  395. package/switch/Switch.accessibility.test.js +98 -0
  396. package/switch/Switch.d.ts +2 -2
  397. package/switch/Switch.js +146 -114
  398. package/switch/Switch.stories.tsx +56 -67
  399. package/switch/Switch.test.d.ts +1 -0
  400. package/switch/Switch.test.js +180 -0
  401. package/switch/types.d.ts +13 -5
  402. package/table/DropdownTheme.js +62 -0
  403. package/table/Table.accessibility.test.d.ts +1 -0
  404. package/table/Table.accessibility.test.js +92 -0
  405. package/table/Table.d.ts +6 -2
  406. package/table/Table.js +78 -35
  407. package/table/Table.stories.tsx +663 -0
  408. package/table/Table.test.d.ts +1 -0
  409. package/table/Table.test.js +111 -0
  410. package/table/types.d.ts +34 -6
  411. package/tabs/Tab.d.ts +4 -0
  412. package/tabs/Tab.js +117 -0
  413. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  414. package/tabs/Tabs.accessibility.test.js +56 -0
  415. package/tabs/Tabs.d.ts +1 -1
  416. package/tabs/Tabs.js +306 -146
  417. package/tabs/Tabs.stories.tsx +127 -19
  418. package/tabs/Tabs.test.d.ts +1 -0
  419. package/tabs/Tabs.test.js +276 -0
  420. package/tabs/types.d.ts +46 -24
  421. package/tag/Tag.accessibility.test.d.ts +1 -0
  422. package/tag/Tag.accessibility.test.js +69 -0
  423. package/tag/Tag.d.ts +1 -1
  424. package/tag/Tag.js +43 -85
  425. package/tag/Tag.stories.tsx +37 -30
  426. package/tag/Tag.test.d.ts +1 -0
  427. package/tag/Tag.test.js +41 -0
  428. package/tag/types.d.ts +25 -16
  429. package/text-input/Suggestion.d.ts +4 -0
  430. package/text-input/Suggestion.js +67 -0
  431. package/text-input/Suggestions.d.ts +4 -0
  432. package/text-input/Suggestions.js +94 -0
  433. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  434. package/text-input/TextInput.accessibility.test.js +320 -0
  435. package/text-input/TextInput.js +323 -569
  436. package/text-input/TextInput.stories.tsx +293 -272
  437. package/text-input/TextInput.test.d.ts +1 -0
  438. package/text-input/TextInput.test.js +1755 -0
  439. package/text-input/types.d.ts +70 -24
  440. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  441. package/textarea/Textarea.accessibility.test.js +155 -0
  442. package/textarea/Textarea.js +82 -131
  443. package/textarea/Textarea.stories.tsx +174 -0
  444. package/textarea/Textarea.test.d.ts +1 -0
  445. package/textarea/Textarea.test.js +406 -0
  446. package/textarea/types.d.ts +27 -16
  447. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  448. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  449. package/toggle-group/ToggleGroup.d.ts +2 -2
  450. package/toggle-group/ToggleGroup.js +92 -107
  451. package/toggle-group/ToggleGroup.stories.tsx +57 -12
  452. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  453. package/toggle-group/ToggleGroup.test.js +137 -0
  454. package/toggle-group/types.d.ts +36 -19
  455. package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
  456. package/tooltip/Tooltip.accessibility.test.js +144 -0
  457. package/tooltip/Tooltip.d.ts +4 -0
  458. package/tooltip/Tooltip.js +50 -0
  459. package/tooltip/Tooltip.stories.tsx +111 -0
  460. package/tooltip/Tooltip.test.d.ts +1 -0
  461. package/tooltip/Tooltip.test.js +112 -0
  462. package/tooltip/types.d.ts +16 -0
  463. package/tooltip/types.js +5 -0
  464. package/typography/Typography.accessibility.test.d.ts +1 -0
  465. package/typography/Typography.accessibility.test.js +339 -0
  466. package/typography/Typography.d.ts +4 -0
  467. package/typography/Typography.js +23 -0
  468. package/typography/Typography.stories.tsx +196 -0
  469. package/typography/Typography.test.js +23 -0
  470. package/typography/types.d.ts +18 -0
  471. package/typography/types.js +5 -0
  472. package/useTheme.d.ts +1173 -1
  473. package/useTheme.js +4 -11
  474. package/useTranslatedLabels.d.ts +96 -0
  475. package/useTranslatedLabels.js +14 -0
  476. package/utils/BaseTypography.d.ts +21 -0
  477. package/utils/BaseTypography.js +98 -0
  478. package/utils/FocusLock.d.ts +13 -0
  479. package/utils/FocusLock.js +125 -0
  480. package/utils/useWidth.d.ts +2 -0
  481. package/utils/useWidth.js +30 -0
  482. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  483. package/wizard/Wizard.accessibility.test.js +55 -0
  484. package/wizard/Wizard.d.ts +1 -1
  485. package/wizard/Wizard.js +78 -120
  486. package/wizard/Wizard.stories.tsx +68 -20
  487. package/wizard/Wizard.test.d.ts +1 -0
  488. package/wizard/Wizard.test.js +114 -0
  489. package/wizard/types.d.ts +14 -10
  490. package/ThemeContext.d.ts +0 -15
  491. package/ThemeContext.js +0 -243
  492. package/V3Select/V3Select.js +0 -455
  493. package/V3Select/index.d.ts +0 -27
  494. package/V3Textarea/V3Textarea.js +0 -260
  495. package/V3Textarea/index.d.ts +0 -27
  496. package/card/ice-cream.jpg +0 -0
  497. package/common/OpenSans.css +0 -81
  498. package/common/RequiredComponent.js +0 -32
  499. package/common/fonts/OpenSans-Bold.ttf +0 -0
  500. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  501. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  502. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  503. package/common/fonts/OpenSans-Italic.ttf +0 -0
  504. package/common/fonts/OpenSans-Light.ttf +0 -0
  505. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  506. package/common/fonts/OpenSans-Regular.ttf +0 -0
  507. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  508. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  509. package/date/Date.js +0 -373
  510. package/date/index.d.ts +0 -27
  511. package/input-text/Icons.js +0 -22
  512. package/input-text/InputText.js +0 -611
  513. package/input-text/index.d.ts +0 -36
  514. package/list/List.d.ts +0 -8
  515. package/list/List.js +0 -47
  516. package/list/List.stories.tsx +0 -95
  517. package/number-input/numberInputContextTypes.d.ts +0 -19
  518. package/paginator/Icons.js +0 -66
  519. package/progress-bar/ProgressBar.stories.jsx +0 -58
  520. package/radio/Radio.d.ts +0 -4
  521. package/radio/Radio.js +0 -174
  522. package/radio/Radio.stories.tsx +0 -192
  523. package/radio/types.d.ts +0 -54
  524. package/resultsetTable/ResultsetTable.d.ts +0 -4
  525. package/resultsetTable/ResultsetTable.js +0 -251
  526. package/row/Row.d.ts +0 -11
  527. package/row/Row.js +0 -127
  528. package/row/Row.stories.tsx +0 -239
  529. package/stack/Stack.d.ts +0 -10
  530. package/stack/Stack.js +0 -97
  531. package/stack/Stack.stories.tsx +0 -166
  532. package/table/Table.stories.jsx +0 -277
  533. package/text/Text.d.ts +0 -7
  534. package/text/Text.js +0 -30
  535. package/text/Text.stories.tsx +0 -19
  536. package/textarea/Textarea.stories.jsx +0 -136
  537. package/toggle/Toggle.js +0 -186
  538. package/toggle/index.d.ts +0 -21
  539. package/upload/Upload.js +0 -201
  540. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  541. package/upload/buttons-upload/Icons.js +0 -40
  542. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  543. package/upload/dragAndDropArea/Icons.js +0 -39
  544. package/upload/file-upload/FileToUpload.js +0 -115
  545. package/upload/file-upload/Icons.js +0 -66
  546. package/upload/files-upload/FilesToUpload.js +0 -109
  547. package/upload/index.d.ts +0 -15
  548. package/upload/transaction/Icons.js +0 -160
  549. package/upload/transaction/Transaction.js +0 -104
  550. package/upload/transactions/Transactions.js +0 -94
  551. /package/{radio → action-icon}/types.js +0 -0
  552. /package/{resultsetTable → badge}/types.js +0 -0
  553. /package/{number-input/numberInputContextTypes.js → bar-chart/types.js} +0 -0
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _Button = _interopRequireDefault(require("./Button"));
7
+ describe("Button component tests", function () {
8
+ test("Button renders with correct text", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Button["default"], {
10
+ label: "Button"
11
+ })),
12
+ getByText = _render.getByText;
13
+ expect(getByText("Button")).toBeTruthy();
14
+ });
15
+ test("Calls correct function on click", function () {
16
+ var onClick = jest.fn();
17
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Button["default"], {
18
+ label: "Button",
19
+ onClick: onClick
20
+ })),
21
+ getByText = _render2.getByText;
22
+ var button = getByText("Button");
23
+ _react2.fireEvent.click(button);
24
+ expect(onClick).toHaveBeenCalled();
25
+ });
26
+ test("Renders with correct accessibility attributes", function () {
27
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Button["default"], {
28
+ label: "Home",
29
+ title: "Go home",
30
+ tabIndex: 1
31
+ })),
32
+ getByRole = _render3.getByRole;
33
+ var button = getByRole("button");
34
+ expect(button.getAttribute("aria-label")).toBe("Go home");
35
+ expect(button.getAttribute("title")).toBe("Go home");
36
+ expect(button.getAttribute("tabindex")).toBe("1");
37
+ });
38
+ });
package/button/types.d.ts CHANGED
@@ -1,19 +1,19 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Margin = {
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- declare type SVG = React.SVGProps<SVGSVGElement>;
10
- declare type Props = {
9
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
10
+ type Props = {
11
11
  /**
12
- * Text to be placed next to the button.
12
+ * Text to be placed in the button.
13
13
  */
14
14
  label?: string;
15
15
  /**
16
- * Uses one of the available button modes.
16
+ * The available button modes.
17
17
  */
18
18
  mode?: "primary" | "secondary" | "text";
19
19
  /**
@@ -25,11 +25,15 @@ declare type Props = {
25
25
  */
26
26
  iconPosition?: "before" | "after";
27
27
  /**
28
- * This prop corresponds to the 'type' prop of the button in html.
28
+ * Value for the HTML properties title and aria-label.
29
+ */
30
+ title?: string;
31
+ /**
32
+ * 'type' html prop of the button.
29
33
  */
30
34
  type?: "button" | "reset" | "submit";
31
35
  /**
32
- * Element or path used as the icon that will be placed next to the button label.
36
+ * Material Symbol name or SVG element as the icon that will be placed next to the label.
33
37
  */
34
38
  icon?: string | SVG;
35
39
  /**
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,36 @@
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 _Card = _interopRequireDefault(require("./Card"));
10
+ describe("Card component accessibility tests", function () {
11
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
12
+ var _render, container, results;
13
+ return _regenerator["default"].wrap(function _callee$(_context) {
14
+ while (1) switch (_context.prev = _context.next) {
15
+ case 0:
16
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], {
17
+ linkHref: "https://www.dxc.com",
18
+ imageSrc: "https://picsum.photos/id/1022/200/300",
19
+ imagePosition: "after",
20
+ imagePadding: "xsmall",
21
+ margin: "medium",
22
+ imageBgColor: "yellow",
23
+ imageCover: true
24
+ }, "test-card")), container = _render.container;
25
+ _context.next = 3;
26
+ return (0, _axeHelper.axe)(container);
27
+ case 3:
28
+ results = _context.sent;
29
+ expect(results).toHaveNoViolations();
30
+ case 5:
31
+ case "end":
32
+ return _context.stop();
33
+ }
34
+ }, _callee);
35
+ })));
36
+ });
package/card/Card.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import CardPropsType from "./types";
3
- declare const DxcCard: ({ imageSrc, imageBgColor, imagePadding, imagePosition, linkHref, onClick, imageCover, margin, contentPadding, tabIndex, outlined, children, }: CardPropsType) => JSX.Element;
3
+ declare const DxcCard: ({ imageSrc, imageBgColor, imagePadding, imagePosition, linkHref, onClick, imageCover, margin, tabIndex, outlined, children, }: CardPropsType) => JSX.Element;
4
4
  export default DxcCard;
package/card/Card.js CHANGED
@@ -1,79 +1,46 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _variables = require("../common/variables.js");
23
-
14
+ var _variables = require("../common/variables");
24
15
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
-
26
16
  var _Box = _interopRequireDefault(require("../box/Box"));
27
-
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
29
-
30
- 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); }
31
-
32
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
33
-
17
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
18
+ 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); }
19
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
34
20
  var DxcCard = function DxcCard(_ref) {
35
21
  var imageSrc = _ref.imageSrc,
36
- _ref$imageBgColor = _ref.imageBgColor,
37
- imageBgColor = _ref$imageBgColor === void 0 ? "black" : _ref$imageBgColor,
38
- imagePadding = _ref.imagePadding,
39
- _ref$imagePosition = _ref.imagePosition,
40
- imagePosition = _ref$imagePosition === void 0 ? "before" : _ref$imagePosition,
41
- linkHref = _ref.linkHref,
42
- onClick = _ref.onClick,
43
- _ref$imageCover = _ref.imageCover,
44
- imageCover = _ref$imageCover === void 0 ? false : _ref$imageCover,
45
- margin = _ref.margin,
46
- contentPadding = _ref.contentPadding,
47
- _ref$tabIndex = _ref.tabIndex,
48
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
49
- _ref$outlined = _ref.outlined,
50
- outlined = _ref$outlined === void 0 ? true : _ref$outlined,
51
- children = _ref.children;
22
+ _ref$imageBgColor = _ref.imageBgColor,
23
+ imageBgColor = _ref$imageBgColor === void 0 ? "black" : _ref$imageBgColor,
24
+ imagePadding = _ref.imagePadding,
25
+ _ref$imagePosition = _ref.imagePosition,
26
+ imagePosition = _ref$imagePosition === void 0 ? "before" : _ref$imagePosition,
27
+ linkHref = _ref.linkHref,
28
+ onClick = _ref.onClick,
29
+ _ref$imageCover = _ref.imageCover,
30
+ imageCover = _ref$imageCover === void 0 ? false : _ref$imageCover,
31
+ margin = _ref.margin,
32
+ _ref$tabIndex = _ref.tabIndex,
33
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
34
+ _ref$outlined = _ref.outlined,
35
+ outlined = _ref$outlined === void 0 ? true : _ref$outlined,
36
+ children = _ref.children;
52
37
  var colorsTheme = (0, _useTheme["default"])();
53
-
54
38
  var _useState = (0, _react.useState)(false),
55
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
56
- isHovered = _useState2[0],
57
- changeIsHovered = _useState2[1];
58
-
59
- var tagContent = /*#__PURE__*/_react["default"].createElement(_Box["default"], {
60
- shadowDepth: !outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
61
- }, /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
62
- theme: colorsTheme.card
63
- }, /*#__PURE__*/_react["default"].createElement(CardContainer, {
64
- hasAction: onClick || linkHref,
65
- imagePosition: imagePosition
66
- }, imageSrc && /*#__PURE__*/_react["default"].createElement(ImageContainer, {
67
- imageBgColor: imageBgColor
68
- }, /*#__PURE__*/_react["default"].createElement(TagImage, {
69
- imagePadding: imagePadding,
70
- cover: imageCover,
71
- src: imageSrc
72
- })), /*#__PURE__*/_react["default"].createElement(CardContent, {
73
- contentPadding: contentPadding
74
- }, children))));
75
-
76
- return /*#__PURE__*/_react["default"].createElement(StyledDxcCard, {
39
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
40
+ isHovered = _useState2[0],
41
+ changeIsHovered = _useState2[1];
42
+ return /*#__PURE__*/_react["default"].createElement(Card, {
43
+ hasAction: onClick || linkHref ? true : false,
77
44
  margin: margin,
78
45
  onMouseEnter: function onMouseEnter() {
79
46
  return changeIsHovered(true);
@@ -82,15 +49,26 @@ var DxcCard = function DxcCard(_ref) {
82
49
  return changeIsHovered(false);
83
50
  },
84
51
  onClick: onClick,
85
- hasAction: onClick,
86
- tabIndex: typeof onClick === "function" && !linkHref ? tabIndex : -1
87
- }, linkHref && /*#__PURE__*/_react["default"].createElement(StyledLink, {
88
- tabIndex: tabIndex,
52
+ tabIndex: onClick || linkHref ? tabIndex : -1,
53
+ as: linkHref && "a",
89
54
  href: linkHref
90
- }, tagContent) || tagContent);
55
+ }, /*#__PURE__*/_react["default"].createElement(_Box["default"], {
56
+ shadowDepth: !outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
57
+ }, /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
58
+ theme: colorsTheme.card
59
+ }, /*#__PURE__*/_react["default"].createElement(CardContainer, {
60
+ hasAction: onClick || linkHref ? true : false,
61
+ imagePosition: imageSrc ? imagePosition : "none"
62
+ }, imageSrc && /*#__PURE__*/_react["default"].createElement(ImageContainer, {
63
+ imageBgColor: imageBgColor
64
+ }, /*#__PURE__*/_react["default"].createElement(TagImage, {
65
+ imagePadding: imagePadding,
66
+ imageCover: imageCover,
67
+ src: imageSrc,
68
+ alt: "Card image"
69
+ })), /*#__PURE__*/_react["default"].createElement(CardContent, null, children)))));
91
70
  };
92
-
93
- var StyledDxcCard = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n outline: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n :focus {\n outline: #0095ff auto 1px;\n }\n"])), function (_ref2) {
71
+ var Card = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n outline: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n text-decoration: none;\n ", "\n"])), function (_ref2) {
94
72
  var hasAction = _ref2.hasAction;
95
73
  return hasAction && "pointer" || "unset";
96
74
  }, function (_ref3) {
@@ -101,21 +79,22 @@ var StyledDxcCard = _styledComponents["default"].div(_templateObject || (_templa
101
79
  return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
102
80
  }, function (_ref5) {
103
81
  var margin = _ref5.margin;
104
- return margin && margin.top ? _variables.spaces[margin.top] : "";
82
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.top ? _variables.spaces[margin.top] : "";
105
83
  }, function (_ref6) {
106
84
  var margin = _ref6.margin;
107
- return margin && margin.right ? _variables.spaces[margin.right] : "";
85
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.right ? _variables.spaces[margin.right] : "";
108
86
  }, function (_ref7) {
109
87
  var margin = _ref7.margin;
110
- return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
88
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.bottom ? _variables.spaces[margin.bottom] : "";
111
89
  }, function (_ref8) {
112
90
  var margin = _ref8.margin;
113
- return margin && margin.left ? _variables.spaces[margin.left] : "";
91
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.left ? _variables.spaces[margin.left] : "";
92
+ }, function (_ref9) {
93
+ var hasAction = _ref9.hasAction;
94
+ return hasAction && ":focus {\n outline: #0095ff auto 1px;\n }";
114
95
  });
115
-
116
- var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"])), function (_ref9) {
117
- var imagePosition = _ref9.imagePosition;
118
- return imagePosition === "before" && "row" || "row-reverse";
96
+ var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"])), function (props) {
97
+ return props.imagePosition === "after" ? "row-reverse" : "row";
119
98
  }, function (props) {
120
99
  return props.theme.height;
121
100
  }, function (props) {
@@ -124,41 +103,19 @@ var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templ
124
103
  var hasAction = _ref10.hasAction;
125
104
  return hasAction ? "" : "unset";
126
105
  });
127
-
128
- var StyledLink = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n text-decoration: none;\n\n :focus {\n outline-color: #0095ff;\n }\n"])));
129
-
130
- var TagImage = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n object-fit: ", ";\n"])), function (_ref11) {
106
+ var TagImage = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n object-fit: ", ";\n"])), function (_ref11) {
131
107
  var imagePadding = _ref11.imagePadding;
132
- return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
108
+ return !imagePadding ? "100%" : (0, _typeof2["default"])(imagePadding) !== "object" && "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
133
109
  }, function (_ref12) {
134
110
  var imagePadding = _ref12.imagePadding;
135
- return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
111
+ return !imagePadding ? "100%" : (0, _typeof2["default"])(imagePadding) !== "object" && "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
136
112
  }, function (_ref13) {
137
- var cover = _ref13.cover;
138
- return cover ? "cover" : "contain";
113
+ var imageCover = _ref13.imageCover;
114
+ return imageCover ? "cover" : "contain";
139
115
  });
140
-
141
- var ImageContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: 35%;\n height: 100%;\n flex-shrink: 0;\n background: ", ";\n justify-content: center;\n align-items: center;\n display: inline-flex;\n"])), function (_ref14) {
116
+ var ImageContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: center;\n align-items: center;\n flex-shrink: 0;\n width: 35%;\n height: 100%;\n background-color: ", ";\n"])), function (_ref14) {
142
117
  var imageBgColor = _ref14.imageBgColor;
143
118
  return imageBgColor;
144
119
  });
145
-
146
- var CardContent = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n overflow: hidden;\n"])), function (_ref15) {
147
- var contentPadding = _ref15.contentPadding;
148
- return contentPadding && (0, _typeof2["default"])(contentPadding) !== "object" ? _variables.spaces[contentPadding] : "0px";
149
- }, function (_ref16) {
150
- var contentPadding = _ref16.contentPadding;
151
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.top ? _variables.spaces[contentPadding.top] : "";
152
- }, function (_ref17) {
153
- var contentPadding = _ref17.contentPadding;
154
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.right ? _variables.spaces[contentPadding.right] : "";
155
- }, function (_ref18) {
156
- var contentPadding = _ref18.contentPadding;
157
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.bottom ? _variables.spaces[contentPadding.bottom] : "";
158
- }, function (_ref19) {
159
- var contentPadding = _ref19.contentPadding;
160
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.left ? _variables.spaces[contentPadding.left] : "";
161
- });
162
-
163
- var _default = DxcCard;
164
- exports["default"] = _default;
120
+ var CardContent = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n overflow: hidden;\n"])));
121
+ var _default = exports["default"] = DxcCard;
@@ -2,8 +2,7 @@ import React from "react";
2
2
  import Title from "../../.storybook/components/Title";
3
3
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
4
4
  import DxcCard from "./Card";
5
- import imagePath from "./ice-cream.jpg";
6
- import { userEvent, within } from "@storybook/testing-library";
5
+ import { userEvent, within } from "@storybook/test";
7
6
 
8
7
  export default {
9
8
  title: "Card",
@@ -38,104 +37,75 @@ const Card = () => (
38
37
  </ExampleContainer>
39
38
  <Title title="Default with image" theme="light" level={4} />
40
39
  <ExampleContainer>
41
- <DxcCard imageSrc={imagePath}>Default</DxcCard>
40
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300">Default</DxcCard>
42
41
  </ExampleContainer>
43
42
  <Title title="Default image with background color" theme="light" level={4} />
44
43
  <ExampleContainer>
45
- <DxcCard imageSrc={imagePath} imageBgColor="yellow">
44
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imageBgColor="yellow">
46
45
  Background color
47
46
  </DxcCard>
48
47
  </ExampleContainer>
49
48
  <Title title="Default image with position after" theme="light" level={4} />
50
49
  <ExampleContainer>
51
- <DxcCard imageSrc={imagePath} imagePosition="after">
50
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePosition="after">
52
51
  Position after
53
52
  </DxcCard>
54
53
  </ExampleContainer>
55
54
  <Title title="Image cover" theme="light" level={4} />
56
55
  <ExampleContainer>
57
- <DxcCard imageSrc={imagePath} imageCover>
56
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imageCover>
58
57
  Image cover
59
58
  </DxcCard>
60
59
  </ExampleContainer>
61
60
  <Title title="Image cover with position after" theme="light" level={4} />
62
61
  <ExampleContainer>
63
- <DxcCard imageSrc={imagePath} imageCover imagePosition="after">
62
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imageCover imagePosition="after">
64
63
  Image cover with position after
65
64
  </DxcCard>
66
65
  </ExampleContainer>
67
66
  <Title title="Image padding" theme="light" level={2} />
68
67
  <ExampleContainer>
69
68
  <Title title="Xxsmall" theme="light" level={4} />
70
- <DxcCard imageSrc={imagePath} imagePadding="xxsmall" imageCover>
69
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xxsmall" imageCover>
71
70
  Xxsmall
72
71
  </DxcCard>
73
72
  </ExampleContainer>
74
73
  <ExampleContainer>
75
74
  <Title title="Xsmall" theme="light" level={4} />
76
- <DxcCard imageSrc={imagePath} imagePadding="xsmall" imageCover>
75
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xsmall" imageCover>
77
76
  Xsmall
78
77
  </DxcCard>
79
78
  </ExampleContainer>
80
79
  <ExampleContainer>
81
80
  <Title title="Small" theme="light" level={4} />
82
- <DxcCard imageSrc={imagePath} imagePadding="small" imageCover>
81
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="small" imageCover>
83
82
  Small
84
83
  </DxcCard>
85
84
  </ExampleContainer>
86
85
  <ExampleContainer>
87
86
  <Title title="Medium" theme="light" level={4} />
88
- <DxcCard imageSrc={imagePath} imagePadding="medium" imageCover>
87
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="medium" imageCover>
89
88
  Medium
90
89
  </DxcCard>
91
90
  </ExampleContainer>
92
91
  <ExampleContainer>
93
92
  <Title title="Large" theme="light" level={4} />
94
- <DxcCard imageSrc={imagePath} imagePadding="large" imageCover>
93
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="large" imageCover>
95
94
  Large
96
95
  </DxcCard>
97
96
  </ExampleContainer>
98
97
  <ExampleContainer>
99
98
  <Title title="Xlarge" theme="light" level={4} />
100
- <DxcCard imageSrc={imagePath} imagePadding="xlarge" imageCover>
99
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xlarge" imageCover>
101
100
  Xlarge
102
101
  </DxcCard>
103
102
  </ExampleContainer>
104
103
  <ExampleContainer>
105
104
  <Title title="Xxlarge" theme="light" level={4} />
106
- <DxcCard imageSrc={imagePath} imagePadding="xxlarge" imageCover>
105
+ <DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xxlarge" imageCover>
107
106
  Xxlarge
108
107
  </DxcCard>
109
108
  </ExampleContainer>
110
- <Title title="Content padding" theme="light" level={2} />
111
- <ExampleContainer>
112
- <Title title="Xxsmall" theme="light" level={4} />
113
- <DxcCard contentPadding="xxsmall">Xxsmall</DxcCard>
114
- </ExampleContainer>
115
- <ExampleContainer>
116
- <Title title="Xsmall" theme="light" level={4} />
117
- <DxcCard contentPadding="xsmall">Xsmall</DxcCard>
118
- </ExampleContainer>
119
- <ExampleContainer>
120
- <Title title="Small" theme="light" level={4} />
121
- <DxcCard contentPadding="small">Small</DxcCard>
122
- </ExampleContainer>
123
- <ExampleContainer>
124
- <Title title="Medium" theme="light" level={4} />
125
- <DxcCard contentPadding="medium">Medium</DxcCard>
126
- </ExampleContainer>
127
- <ExampleContainer>
128
- <Title title="Large" theme="light" level={4} />
129
- <DxcCard contentPadding="large">Large</DxcCard>
130
- </ExampleContainer>
131
- <ExampleContainer>
132
- <Title title="Xlarge" theme="light" level={4} />
133
- <DxcCard contentPadding="xlarge">Xlarge</DxcCard>
134
- </ExampleContainer>
135
- <ExampleContainer>
136
- <Title title="Xxlarge" theme="light" level={4} />
137
- <DxcCard contentPadding="xxlarge">Xxlarge</DxcCard>
138
- </ExampleContainer>
139
109
  <Title title="Margin" theme="light" level={2} />
140
110
  <ExampleContainer>
141
111
  <Title title="Xxsmall" theme="light" level={4} />
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _Card = _interopRequireDefault(require("./Card"));
7
+ describe("Card component tests", function () {
8
+ test("Card renders with correct content", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], null, "test-card")),
10
+ getByText = _render.getByText;
11
+ expect(getByText("test-card")).toBeTruthy();
12
+ });
13
+ test("Card renders with correct href", function () {
14
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], {
15
+ linkHref: "/testPage"
16
+ }, "test-card")),
17
+ getByRole = _render2.getByRole;
18
+ var card = getByRole("link");
19
+ expect(card.getAttribute("href")).toEqual("/testPage");
20
+ });
21
+ test("Card renders with correct image", function () {
22
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], {
23
+ imageSrc: "/testImage"
24
+ }, "test-card")),
25
+ getByRole = _render3.getByRole;
26
+ var card = getByRole("img");
27
+ expect(card.getAttribute("src")).toEqual("/testImage");
28
+ });
29
+ test("OnClick function is called", function () {
30
+ var onClick = jest.fn();
31
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], {
32
+ onClick: onClick
33
+ }, "test-card")),
34
+ getByText = _render4.getByText;
35
+ var card = getByText("test-card");
36
+ _react2.fireEvent.click(card);
37
+ expect(onClick).toHaveBeenCalled();
38
+ });
39
+ });
package/card/types.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Size = {
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Size = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- declare type Props = {
9
+ type Props = {
10
10
  /**
11
11
  * URL of the image that will be placed in the card component.
12
12
  * In case of omission, the image container will not appear and
@@ -47,20 +47,15 @@ declare type Props = {
47
47
  */
48
48
  margin?: Space | Size;
49
49
  /**
50
- * Size of the padding to be applied to the content area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
51
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
52
- */
53
- contentPadding?: Space | Size;
54
- /**
55
- * Value of the tabindex given when there is an href.
50
+ * Value of the tabindex attribute applied when the component is clickable.
56
51
  */
57
52
  tabIndex?: number;
58
53
  /**
59
- * Whether the card must be outlined.
54
+ * Determines whether or not the component should have an outline.
60
55
  */
61
56
  outlined?: boolean;
62
57
  /**
63
- * Custom content that will be placed in the card component.
58
+ * Custom content that will be placed inside the component.
64
59
  */
65
60
  children?: React.ReactNode;
66
61
  };
@@ -0,0 +1 @@
1
+ export {};