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

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 (497) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +1336 -0
  4. package/HalstackContext.js +335 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +234 -0
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +149 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +126 -0
  15. package/accordion-group/types.d.ts +79 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/{dist/alert → alert}/Alert.js +45 -159
  19. package/alert/Alert.stories.tsx +198 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +61 -0
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +342 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +114 -0
  34. package/box/Box.stories.tsx +147 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +44 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +125 -0
  40. package/bulleted-list/BulletedList.stories.tsx +206 -0
  41. package/bulleted-list/types.d.ts +38 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +4 -0
  44. package/button/Button.js +153 -0
  45. package/button/Button.stories.tsx +425 -0
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +160 -0
  51. package/card/Card.stories.tsx +200 -0
  52. package/card/Card.test.js +50 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +250 -0
  58. package/checkbox/Checkbox.stories.tsx +260 -0
  59. package/checkbox/Checkbox.test.js +155 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +140 -0
  64. package/chip/Chip.stories.tsx +214 -0
  65. package/chip/Chip.test.js +54 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/common/OpenSans.css +69 -0
  69. package/common/coreTokens.d.ts +146 -0
  70. package/common/coreTokens.js +167 -0
  71. package/common/utils.d.ts +1 -0
  72. package/{dist/common → common}/utils.js +4 -4
  73. package/common/variables.d.ts +1482 -0
  74. package/common/variables.js +1361 -0
  75. package/date-input/Calendar.d.ts +4 -0
  76. package/date-input/Calendar.js +258 -0
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +269 -0
  79. package/date-input/DateInput.stories.tsx +304 -0
  80. package/date-input/DateInput.test.js +835 -0
  81. package/date-input/DatePicker.d.ts +4 -0
  82. package/date-input/DatePicker.js +146 -0
  83. package/date-input/Icons.d.ts +6 -0
  84. package/date-input/Icons.js +75 -0
  85. package/date-input/YearPicker.d.ts +4 -0
  86. package/date-input/YearPicker.js +126 -0
  87. package/date-input/types.d.ts +158 -0
  88. package/date-input/types.js +5 -0
  89. package/dialog/Dialog.d.ts +4 -0
  90. package/dialog/Dialog.js +149 -0
  91. package/dialog/Dialog.stories.tsx +319 -0
  92. package/dialog/Dialog.test.js +369 -0
  93. package/dialog/types.d.ts +44 -0
  94. package/dialog/types.js +5 -0
  95. package/dropdown/Dropdown.d.ts +4 -0
  96. package/dropdown/Dropdown.js +388 -0
  97. package/dropdown/Dropdown.stories.tsx +438 -0
  98. package/dropdown/Dropdown.test.js +586 -0
  99. package/dropdown/DropdownMenu.d.ts +4 -0
  100. package/dropdown/DropdownMenu.js +74 -0
  101. package/dropdown/DropdownMenuItem.d.ts +4 -0
  102. package/dropdown/DropdownMenuItem.js +79 -0
  103. package/dropdown/types.d.ts +100 -0
  104. package/dropdown/types.js +5 -0
  105. package/file-input/FileInput.d.ts +4 -0
  106. package/file-input/FileInput.js +547 -0
  107. package/file-input/FileInput.stories.tsx +618 -0
  108. package/file-input/FileInput.test.js +457 -0
  109. package/file-input/FileItem.d.ts +4 -0
  110. package/file-input/FileItem.js +162 -0
  111. package/file-input/types.d.ts +129 -0
  112. package/file-input/types.js +5 -0
  113. package/flex/Flex.d.ts +4 -0
  114. package/flex/Flex.js +71 -0
  115. package/flex/Flex.stories.tsx +112 -0
  116. package/flex/types.d.ts +97 -0
  117. package/flex/types.js +5 -0
  118. package/footer/Footer.d.ts +4 -0
  119. package/footer/Footer.js +183 -0
  120. package/footer/Footer.stories.tsx +228 -0
  121. package/footer/Footer.test.js +97 -0
  122. package/footer/Icons.d.ts +2 -0
  123. package/{dist/footer → footer}/Icons.js +16 -16
  124. package/footer/types.d.ts +66 -0
  125. package/footer/types.js +5 -0
  126. package/grid/Grid.d.ts +7 -0
  127. package/grid/Grid.js +91 -0
  128. package/grid/Grid.stories.tsx +219 -0
  129. package/grid/types.d.ts +115 -0
  130. package/grid/types.js +5 -0
  131. package/header/Header.d.ts +8 -0
  132. package/header/Header.js +303 -0
  133. package/header/Header.stories.tsx +315 -0
  134. package/header/Header.test.js +79 -0
  135. package/header/Icons.d.ts +2 -0
  136. package/{dist/header → header}/Icons.js +9 -34
  137. package/header/types.d.ts +48 -0
  138. package/header/types.js +5 -0
  139. package/heading/Heading.d.ts +4 -0
  140. package/{dist/heading → heading}/Heading.js +26 -97
  141. package/heading/Heading.stories.tsx +54 -0
  142. package/heading/Heading.test.js +186 -0
  143. package/heading/types.d.ts +33 -0
  144. package/heading/types.js +5 -0
  145. package/inset/Inset.d.ts +3 -0
  146. package/inset/Inset.js +51 -0
  147. package/inset/Inset.stories.tsx +230 -0
  148. package/inset/types.d.ts +37 -0
  149. package/inset/types.js +5 -0
  150. package/layout/ApplicationLayout.d.ts +20 -0
  151. package/layout/ApplicationLayout.js +171 -0
  152. package/layout/ApplicationLayout.stories.tsx +162 -0
  153. package/layout/Icons.d.ts +5 -0
  154. package/{dist/layout → layout}/Icons.js +19 -8
  155. package/layout/SidenavContext.d.ts +5 -0
  156. package/layout/SidenavContext.js +19 -0
  157. package/layout/types.d.ts +41 -0
  158. package/layout/types.js +5 -0
  159. package/link/Link.d.ts +4 -0
  160. package/link/Link.js +136 -0
  161. package/link/Link.stories.tsx +253 -0
  162. package/link/Link.test.js +81 -0
  163. package/link/types.d.ts +54 -0
  164. package/link/types.js +5 -0
  165. package/main.d.ts +45 -0
  166. package/{dist/main.js → main.js} +122 -104
  167. package/nav-tabs/NavTabs.d.ts +8 -0
  168. package/nav-tabs/NavTabs.js +125 -0
  169. package/nav-tabs/NavTabs.stories.tsx +260 -0
  170. package/nav-tabs/NavTabs.test.js +82 -0
  171. package/nav-tabs/Tab.d.ts +4 -0
  172. package/nav-tabs/Tab.js +150 -0
  173. package/nav-tabs/types.d.ts +53 -0
  174. package/nav-tabs/types.js +5 -0
  175. package/number-input/NumberInput.d.ts +4 -0
  176. package/number-input/NumberInput.js +76 -0
  177. package/number-input/NumberInput.stories.tsx +115 -0
  178. package/number-input/NumberInput.test.js +542 -0
  179. package/number-input/NumberInputContext.d.ts +4 -0
  180. package/{dist/number-input → number-input}/NumberInputContext.js +5 -2
  181. package/number-input/numberInputContextTypes.d.ts +19 -0
  182. package/number-input/numberInputContextTypes.js +5 -0
  183. package/number-input/types.d.ts +124 -0
  184. package/number-input/types.js +5 -0
  185. package/package.json +37 -35
  186. package/paginator/Icons.d.ts +5 -0
  187. package/paginator/Icons.js +54 -0
  188. package/paginator/Paginator.d.ts +4 -0
  189. package/paginator/Paginator.js +163 -0
  190. package/paginator/Paginator.stories.tsx +87 -0
  191. package/paginator/Paginator.test.js +305 -0
  192. package/paginator/types.d.ts +38 -0
  193. package/paginator/types.js +5 -0
  194. package/paragraph/Paragraph.d.ts +5 -0
  195. package/paragraph/Paragraph.js +38 -0
  196. package/paragraph/Paragraph.stories.tsx +44 -0
  197. package/password-input/PasswordInput.d.ts +4 -0
  198. package/{dist/password-input → password-input}/PasswordInput.js +40 -77
  199. package/password-input/PasswordInput.stories.tsx +131 -0
  200. package/password-input/PasswordInput.test.js +181 -0
  201. package/password-input/types.d.ts +110 -0
  202. package/password-input/types.js +5 -0
  203. package/progress-bar/ProgressBar.d.ts +4 -0
  204. package/progress-bar/ProgressBar.js +176 -0
  205. package/progress-bar/ProgressBar.stories.jsx +93 -0
  206. package/progress-bar/ProgressBar.test.js +110 -0
  207. package/progress-bar/types.d.ts +37 -0
  208. package/progress-bar/types.js +5 -0
  209. package/quick-nav/QuickNav.d.ts +4 -0
  210. package/quick-nav/QuickNav.js +117 -0
  211. package/quick-nav/QuickNav.stories.tsx +356 -0
  212. package/quick-nav/types.d.ts +21 -0
  213. package/quick-nav/types.js +5 -0
  214. package/radio-group/Radio.d.ts +4 -0
  215. package/radio-group/Radio.js +156 -0
  216. package/radio-group/RadioGroup.d.ts +4 -0
  217. package/radio-group/RadioGroup.js +283 -0
  218. package/radio-group/RadioGroup.stories.tsx +214 -0
  219. package/radio-group/RadioGroup.test.js +722 -0
  220. package/radio-group/types.d.ts +114 -0
  221. package/radio-group/types.js +5 -0
  222. package/resultsetTable/Icons.d.ts +7 -0
  223. package/resultsetTable/Icons.js +51 -0
  224. package/resultsetTable/ResultsetTable.d.ts +4 -0
  225. package/resultsetTable/ResultsetTable.js +195 -0
  226. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  227. package/resultsetTable/ResultsetTable.test.js +325 -0
  228. package/resultsetTable/types.d.ts +67 -0
  229. package/resultsetTable/types.js +5 -0
  230. package/select/Icons.d.ts +10 -0
  231. package/select/Icons.js +93 -0
  232. package/select/Listbox.d.ts +4 -0
  233. package/select/Listbox.js +169 -0
  234. package/select/Option.d.ts +4 -0
  235. package/select/Option.js +97 -0
  236. package/select/Select.d.ts +4 -0
  237. package/select/Select.js +666 -0
  238. package/select/Select.stories.tsx +971 -0
  239. package/select/Select.test.js +2228 -0
  240. package/select/types.d.ts +210 -0
  241. package/select/types.js +5 -0
  242. package/sidenav/Icons.d.ts +7 -0
  243. package/sidenav/Icons.js +51 -0
  244. package/sidenav/Sidenav.d.ts +10 -0
  245. package/sidenav/Sidenav.js +238 -0
  246. package/sidenav/Sidenav.stories.tsx +282 -0
  247. package/sidenav/Sidenav.test.js +44 -0
  248. package/sidenav/types.d.ts +76 -0
  249. package/sidenav/types.js +5 -0
  250. package/slider/Slider.d.ts +4 -0
  251. package/slider/Slider.js +342 -0
  252. package/slider/Slider.stories.tsx +240 -0
  253. package/slider/Slider.test.js +250 -0
  254. package/slider/types.d.ts +86 -0
  255. package/slider/types.js +5 -0
  256. package/spinner/Spinner.d.ts +4 -0
  257. package/spinner/Spinner.js +244 -0
  258. package/spinner/Spinner.stories.jsx +129 -0
  259. package/spinner/Spinner.test.js +64 -0
  260. package/spinner/types.d.ts +32 -0
  261. package/spinner/types.js +5 -0
  262. package/switch/Switch.d.ts +4 -0
  263. package/switch/Switch.js +262 -0
  264. package/switch/Switch.stories.tsx +171 -0
  265. package/switch/Switch.test.js +225 -0
  266. package/switch/types.d.ts +66 -0
  267. package/switch/types.js +5 -0
  268. package/table/Table.d.ts +4 -0
  269. package/{dist/table → table}/Table.js +14 -28
  270. package/table/Table.stories.jsx +356 -0
  271. package/table/Table.test.js +26 -0
  272. package/table/types.d.ts +21 -0
  273. package/table/types.js +5 -0
  274. package/tabs/Tab.d.ts +4 -0
  275. package/tabs/Tab.js +132 -0
  276. package/tabs/Tabs.d.ts +4 -0
  277. package/tabs/Tabs.js +461 -0
  278. package/tabs/Tabs.stories.tsx +226 -0
  279. package/tabs/Tabs.test.js +350 -0
  280. package/tabs/types.d.ts +92 -0
  281. package/tabs/types.js +5 -0
  282. package/tag/Tag.d.ts +4 -0
  283. package/tag/Tag.js +181 -0
  284. package/tag/Tag.stories.tsx +155 -0
  285. package/tag/Tag.test.js +60 -0
  286. package/tag/types.d.ts +69 -0
  287. package/tag/types.js +5 -0
  288. package/text-input/Icons.d.ts +8 -0
  289. package/text-input/Icons.js +60 -0
  290. package/text-input/Suggestion.d.ts +4 -0
  291. package/text-input/Suggestion.js +84 -0
  292. package/text-input/Suggestions.d.ts +4 -0
  293. package/text-input/Suggestions.js +134 -0
  294. package/text-input/TextInput.d.ts +4 -0
  295. package/text-input/TextInput.js +673 -0
  296. package/text-input/TextInput.stories.tsx +569 -0
  297. package/text-input/TextInput.test.js +1723 -0
  298. package/text-input/types.d.ts +197 -0
  299. package/text-input/types.js +5 -0
  300. package/textarea/Textarea.d.ts +4 -0
  301. package/{dist/textarea → textarea}/Textarea.js +51 -144
  302. package/textarea/Textarea.stories.jsx +216 -0
  303. package/textarea/Textarea.test.js +435 -0
  304. package/textarea/types.d.ts +137 -0
  305. package/textarea/types.js +5 -0
  306. package/toggle-group/ToggleGroup.d.ts +4 -0
  307. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +42 -151
  308. package/toggle-group/ToggleGroup.stories.tsx +215 -0
  309. package/toggle-group/ToggleGroup.test.js +156 -0
  310. package/toggle-group/types.d.ts +105 -0
  311. package/toggle-group/types.js +5 -0
  312. package/typography/Typography.d.ts +4 -0
  313. package/typography/Typography.js +32 -0
  314. package/typography/Typography.stories.tsx +198 -0
  315. package/typography/types.d.ts +18 -0
  316. package/typography/types.js +5 -0
  317. package/useTheme.d.ts +1235 -0
  318. package/{dist/useTheme.js → useTheme.js} +3 -3
  319. package/useTranslatedLabels.d.ts +85 -0
  320. package/useTranslatedLabels.js +20 -0
  321. package/utils/BaseTypography.d.ts +21 -0
  322. package/utils/BaseTypography.js +108 -0
  323. package/utils/FocusLock.d.ts +13 -0
  324. package/utils/FocusLock.js +138 -0
  325. package/wizard/Wizard.d.ts +4 -0
  326. package/wizard/Wizard.js +285 -0
  327. package/wizard/Wizard.stories.tsx +253 -0
  328. package/wizard/Wizard.test.js +141 -0
  329. package/wizard/types.d.ts +64 -0
  330. package/wizard/types.js +5 -0
  331. package/README.md +0 -66
  332. package/babel.config.js +0 -7
  333. package/dist/BackgroundColorContext.js +0 -46
  334. package/dist/ThemeContext.js +0 -250
  335. package/dist/V3Select/V3Select.js +0 -549
  336. package/dist/V3Select/index.d.ts +0 -27
  337. package/dist/V3Textarea/V3Textarea.js +0 -264
  338. package/dist/V3Textarea/index.d.ts +0 -27
  339. package/dist/accordion/Accordion.js +0 -353
  340. package/dist/accordion/index.d.ts +0 -28
  341. package/dist/accordion-group/AccordionGroup.js +0 -186
  342. package/dist/accordion-group/index.d.ts +0 -16
  343. package/dist/alert/index.d.ts +0 -51
  344. package/dist/badge/Badge.js +0 -63
  345. package/dist/box/Box.js +0 -156
  346. package/dist/box/index.d.ts +0 -25
  347. package/dist/button/Button.js +0 -238
  348. package/dist/button/index.d.ts +0 -24
  349. package/dist/card/Card.js +0 -254
  350. package/dist/card/index.d.ts +0 -22
  351. package/dist/checkbox/Checkbox.js +0 -299
  352. package/dist/checkbox/index.d.ts +0 -24
  353. package/dist/chip/Chip.js +0 -265
  354. package/dist/chip/index.d.ts +0 -22
  355. package/dist/common/OpenSans.css +0 -81
  356. package/dist/common/RequiredComponent.js +0 -40
  357. package/dist/common/variables.js +0 -1574
  358. package/dist/date/Date.js +0 -379
  359. package/dist/date/index.d.ts +0 -27
  360. package/dist/date-input/DateInput.js +0 -400
  361. package/dist/date-input/index.d.ts +0 -95
  362. package/dist/dialog/Dialog.js +0 -218
  363. package/dist/dialog/index.d.ts +0 -18
  364. package/dist/dropdown/Dropdown.js +0 -544
  365. package/dist/dropdown/index.d.ts +0 -26
  366. package/dist/file-input/FileInput.js +0 -644
  367. package/dist/file-input/FileItem.js +0 -287
  368. package/dist/file-input/index.d.ts +0 -81
  369. package/dist/footer/Footer.js +0 -421
  370. package/dist/footer/index.d.ts +0 -25
  371. package/dist/header/Header.js +0 -470
  372. package/dist/header/index.d.ts +0 -25
  373. package/dist/heading/index.d.ts +0 -17
  374. package/dist/input-text/Icons.js +0 -22
  375. package/dist/input-text/InputText.js +0 -705
  376. package/dist/input-text/index.d.ts +0 -36
  377. package/dist/layout/ApplicationLayout.js +0 -327
  378. package/dist/link/Link.js +0 -237
  379. package/dist/link/index.d.ts +0 -23
  380. package/dist/main.d.ts +0 -40
  381. package/dist/number-input/NumberInput.js +0 -136
  382. package/dist/number-input/index.d.ts +0 -113
  383. package/dist/paginator/Icons.js +0 -66
  384. package/dist/paginator/Paginator.js +0 -305
  385. package/dist/paginator/index.d.ts +0 -20
  386. package/dist/password-input/index.d.ts +0 -94
  387. package/dist/progress-bar/ProgressBar.js +0 -242
  388. package/dist/progress-bar/index.d.ts +0 -18
  389. package/dist/radio/Radio.js +0 -209
  390. package/dist/radio/index.d.ts +0 -23
  391. package/dist/resultsetTable/ResultsetTable.js +0 -358
  392. package/dist/resultsetTable/index.d.ts +0 -19
  393. package/dist/select/Select.js +0 -1096
  394. package/dist/select/index.d.ts +0 -53
  395. package/dist/sidenav/Sidenav.js +0 -179
  396. package/dist/sidenav/index.d.ts +0 -13
  397. package/dist/slider/Slider.js +0 -404
  398. package/dist/slider/index.d.ts +0 -29
  399. package/dist/spinner/Spinner.js +0 -381
  400. package/dist/spinner/index.d.ts +0 -17
  401. package/dist/stories/Button.js +0 -71
  402. package/dist/stories/Button.stories.js +0 -55
  403. package/dist/stories/Header.js +0 -67
  404. package/dist/stories/Header.stories.js +0 -31
  405. package/dist/stories/Introduction.stories.mdx +0 -211
  406. package/dist/stories/Page.js +0 -68
  407. package/dist/stories/Page.stories.js +0 -39
  408. package/dist/stories/assets/code-brackets.svg +0 -1
  409. package/dist/stories/assets/colors.svg +0 -1
  410. package/dist/stories/assets/comments.svg +0 -1
  411. package/dist/stories/assets/direction.svg +0 -1
  412. package/dist/stories/assets/flow.svg +0 -1
  413. package/dist/stories/assets/plugin.svg +0 -1
  414. package/dist/stories/assets/repo.svg +0 -1
  415. package/dist/stories/assets/stackalt.svg +0 -1
  416. package/dist/stories/button.css +0 -30
  417. package/dist/stories/header.css +0 -26
  418. package/dist/stories/page.css +0 -69
  419. package/dist/switch/Switch.js +0 -222
  420. package/dist/switch/index.d.ts +0 -24
  421. package/dist/table/index.d.ts +0 -13
  422. package/dist/tabs/Tabs.js +0 -343
  423. package/dist/tabs/index.d.ts +0 -19
  424. package/dist/tag/Tag.js +0 -282
  425. package/dist/tag/index.d.ts +0 -24
  426. package/dist/text-input/TextInput.js +0 -974
  427. package/dist/text-input/index.d.ts +0 -135
  428. package/dist/textarea/index.d.ts +0 -117
  429. package/dist/toggle/Toggle.js +0 -220
  430. package/dist/toggle/index.d.ts +0 -21
  431. package/dist/toggle-group/index.d.ts +0 -21
  432. package/dist/upload/Upload.js +0 -205
  433. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  434. package/dist/upload/buttons-upload/Icons.js +0 -40
  435. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  436. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  437. package/dist/upload/file-upload/FileToUpload.js +0 -189
  438. package/dist/upload/file-upload/Icons.js +0 -66
  439. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  440. package/dist/upload/index.d.ts +0 -15
  441. package/dist/upload/transaction/Icons.js +0 -160
  442. package/dist/upload/transaction/Transaction.js +0 -148
  443. package/dist/upload/transactions/Transactions.js +0 -138
  444. package/dist/wizard/Icons.js +0 -65
  445. package/dist/wizard/Wizard.js +0 -405
  446. package/dist/wizard/index.d.ts +0 -18
  447. package/test/Accordion.test.js +0 -33
  448. package/test/AccordionGroup.test.js +0 -125
  449. package/test/Alert.test.js +0 -53
  450. package/test/Box.test.js +0 -10
  451. package/test/Button.test.js +0 -18
  452. package/test/Card.test.js +0 -30
  453. package/test/Checkbox.test.js +0 -45
  454. package/test/Chip.test.js +0 -25
  455. package/test/Date.test.js +0 -395
  456. package/test/DateInput.test.js +0 -242
  457. package/test/Dialog.test.js +0 -23
  458. package/test/Dropdown.test.js +0 -145
  459. package/test/FileInput.test.js +0 -201
  460. package/test/Footer.test.js +0 -94
  461. package/test/Header.test.js +0 -34
  462. package/test/Heading.test.js +0 -83
  463. package/test/InputText.test.js +0 -239
  464. package/test/Link.test.js +0 -43
  465. package/test/NumberInput.test.js +0 -259
  466. package/test/Paginator.test.js +0 -181
  467. package/test/PasswordInput.test.js +0 -83
  468. package/test/ProgressBar.test.js +0 -35
  469. package/test/Radio.test.js +0 -37
  470. package/test/ResultsetTable.test.js +0 -330
  471. package/test/Select.test.js +0 -415
  472. package/test/Sidenav.test.js +0 -45
  473. package/test/Slider.test.js +0 -74
  474. package/test/Spinner.test.js +0 -32
  475. package/test/Switch.test.js +0 -45
  476. package/test/Table.test.js +0 -36
  477. package/test/Tabs.test.js +0 -109
  478. package/test/Tag.test.js +0 -32
  479. package/test/TextInput.test.js +0 -732
  480. package/test/Textarea.test.js +0 -193
  481. package/test/ToggleGroup.test.js +0 -85
  482. package/test/Upload.test.js +0 -60
  483. package/test/V3Select.test.js +0 -212
  484. package/test/V3TextArea.test.js +0 -51
  485. package/test/Wizard.test.js +0 -130
  486. package/test/mocks/pngMock.js +0 -1
  487. package/test/mocks/svgMock.js +0 -1
  488. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  489. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  490. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  491. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  492. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  493. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  494. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  495. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  496. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  497. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -0,0 +1,315 @@
1
+ import React from "react";
2
+ import DxcHeader from "./Header";
3
+ import DxcButton from "../button/Button";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import { userEvent, waitFor, within } from "@storybook/testing-library";
7
+ import DxcFlex from "../flex/Flex";
8
+ import DxcLink from "../link/Link";
9
+ import { HalstackProvider } from "../HalstackContext";
10
+
11
+ export default {
12
+ title: "Header",
13
+ component: DxcHeader,
14
+ };
15
+
16
+ const options: any = [
17
+ {
18
+ value: 1,
19
+ label: "Amazon",
20
+ },
21
+ ];
22
+
23
+ const options2: any = [
24
+ {
25
+ value: 1,
26
+ label: "Home",
27
+ },
28
+ {
29
+ value: 2,
30
+ label: "Release notes",
31
+ },
32
+ {
33
+ value: 3,
34
+ label: "Sign out",
35
+ },
36
+ ];
37
+
38
+ const opinionatedTheme = {
39
+ header: {
40
+ baseColor: "#ffffff",
41
+ accentColor: "#000000",
42
+ fontColor: "#000000",
43
+ menuBaseColor: "#ffffff",
44
+ hamburguerColor: "#000000",
45
+ logo: (
46
+ <svg xmlns="http://www.w3.org/2000/svg" width="73" height="40" viewBox="0 0 73 40">
47
+ <g id="g10" transform="translate(0)">
48
+ <g id="g12">
49
+ <path
50
+ id="path14"
51
+ d="M91.613-28.177v2.514H90.231V-28.15l-2.415-3.82h1.616l1.5,2.532,1.526-2.532h1.571ZM83.9-25.555A3.15,3.15,0,0,1,80.6-28.8v-.018a3.231,3.231,0,0,1,3.294-3.262,3.442,3.442,0,0,1,2.469.865l-.87,1.054a2.311,2.311,0,0,0-1.643-.64,1.891,1.891,0,0,0-1.8,1.964v.018a1.886,1.886,0,0,0,1.9,2,2.2,2.2,0,0,0,1.3-.378v-.9H83.858v-1.2h2.729v2.738A4.071,4.071,0,0,1,83.9-25.555Zm-6.416-3.261a1.913,1.913,0,0,0-1.9-1.982A1.883,1.883,0,0,0,73.7-28.835v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,77.486-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018A3.255,3.255,0,0,1,75.6-32.078a3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,75.583-25.555Zm-9.173-.108V-31.97h1.382v5.045h3.133v1.261Zm-3.433-3.153a1.913,1.913,0,0,0-1.9-1.982,1.883,1.883,0,0,0-1.886,1.964v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,62.978-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018a3.255,3.255,0,0,1,3.348-3.262,3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,61.075-25.555Zm-6.508-.108-3.043-4.009v4.009H50.159V-31.97h1.275l2.944,3.883V-31.97h1.364v6.306Zm-8.246,0v-2.531h-2.55v2.531H42.389V-31.97h1.382v2.5h2.55v-2.5H47.7v6.306Zm-8.432.108A3.178,3.178,0,0,1,34.666-28.8v-.018a3.2,3.2,0,0,1,3.276-3.262,3.237,3.237,0,0,1,2.478.973l-.88,1.018a2.315,2.315,0,0,0-1.606-.712,1.866,1.866,0,0,0-1.822,1.964v.018a1.87,1.87,0,0,0,1.822,1.982,2.265,2.265,0,0,0,1.651-.739l.88.891A3.206,3.206,0,0,1,37.889-25.555Zm-9.805-.108V-31.97h4.739v1.235H29.458v1.279h2.962v1.234H29.458V-26.9h3.411v1.234ZM24.322-30.69v5.027H22.939V-30.69H21.028v-1.28h5.206v1.28H24.322"
52
+ transform="translate(-21.028 65.555)"
53
+ fill="#100f0d"
54
+ />
55
+ <path
56
+ id="path16"
57
+ d="M75.836-76.712a8.975,8.975,0,0,1,2.246-3.9,8.393,8.393,0,0,1,6.058-2.457h9.824v-5.67H84.139a14.611,14.611,0,0,0-10.232,4.221,14.509,14.509,0,0,0-3.076,4.536,11.913,11.913,0,0,0-.973,3.271Zm0,4.325a8.978,8.978,0,0,0,2.246,3.9,8.394,8.394,0,0,0,6.058,2.457h9.824v5.67H84.139A14.611,14.611,0,0,1,73.907-64.58a14.506,14.506,0,0,1-3.076-4.536,11.91,11.91,0,0,1-.973-3.271ZM57.522-69.832l-7.5,9.473H42.581L53.818-74.55,42.581-88.739H50.02l7.5,9.472,7.5-9.472h7.439L61.225-74.55l11.237,14.19H65.023Zm-12.336-6.88a11.935,11.935,0,0,0-.973-3.271,14.515,14.515,0,0,0-3.076-4.536A14.612,14.612,0,0,0,30.9-88.739H21.081v5.67H30.9a8.394,8.394,0,0,1,6.058,2.457,8.978,8.978,0,0,1,2.246,3.9Zm0,4.325a11.932,11.932,0,0,1-.973,3.271,14.511,14.511,0,0,1-3.076,4.536A14.611,14.611,0,0,1,30.9-60.359H21.081v-5.67H30.9a8.4,8.4,0,0,0,6.058-2.457,8.981,8.981,0,0,0,2.246-3.9h5.978"
58
+ transform="translate(-21.049 88.739)"
59
+ fill="#5f249f"
60
+ />
61
+ </g>
62
+ </g>
63
+ </svg>
64
+ ),
65
+ logoResponsive: (
66
+ <svg xmlns="http://www.w3.org/2000/svg" width="73" height="40" viewBox="0 0 73 40">
67
+ <g id="g10" transform="translate(0)">
68
+ <g id="g12">
69
+ <path
70
+ id="path14"
71
+ d="M91.613-28.177v2.514H90.231V-28.15l-2.415-3.82h1.616l1.5,2.532,1.526-2.532h1.571ZM83.9-25.555A3.15,3.15,0,0,1,80.6-28.8v-.018a3.231,3.231,0,0,1,3.294-3.262,3.442,3.442,0,0,1,2.469.865l-.87,1.054a2.311,2.311,0,0,0-1.643-.64,1.891,1.891,0,0,0-1.8,1.964v.018a1.886,1.886,0,0,0,1.9,2,2.2,2.2,0,0,0,1.3-.378v-.9H83.858v-1.2h2.729v2.738A4.071,4.071,0,0,1,83.9-25.555Zm-6.416-3.261a1.913,1.913,0,0,0-1.9-1.982A1.883,1.883,0,0,0,73.7-28.835v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,77.486-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018A3.255,3.255,0,0,1,75.6-32.078a3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,75.583-25.555Zm-9.173-.108V-31.97h1.382v5.045h3.133v1.261Zm-3.433-3.153a1.913,1.913,0,0,0-1.9-1.982,1.883,1.883,0,0,0-1.886,1.964v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,62.978-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018a3.255,3.255,0,0,1,3.348-3.262,3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,61.075-25.555Zm-6.508-.108-3.043-4.009v4.009H50.159V-31.97h1.275l2.944,3.883V-31.97h1.364v6.306Zm-8.246,0v-2.531h-2.55v2.531H42.389V-31.97h1.382v2.5h2.55v-2.5H47.7v6.306Zm-8.432.108A3.178,3.178,0,0,1,34.666-28.8v-.018a3.2,3.2,0,0,1,3.276-3.262,3.237,3.237,0,0,1,2.478.973l-.88,1.018a2.315,2.315,0,0,0-1.606-.712,1.866,1.866,0,0,0-1.822,1.964v.018a1.87,1.87,0,0,0,1.822,1.982,2.265,2.265,0,0,0,1.651-.739l.88.891A3.206,3.206,0,0,1,37.889-25.555Zm-9.805-.108V-31.97h4.739v1.235H29.458v1.279h2.962v1.234H29.458V-26.9h3.411v1.234ZM24.322-30.69v5.027H22.939V-30.69H21.028v-1.28h5.206v1.28H24.322"
72
+ transform="translate(-21.028 65.555)"
73
+ fill="#100f0d"
74
+ />
75
+ <path
76
+ id="path16"
77
+ d="M75.836-76.712a8.975,8.975,0,0,1,2.246-3.9,8.393,8.393,0,0,1,6.058-2.457h9.824v-5.67H84.139a14.611,14.611,0,0,0-10.232,4.221,14.509,14.509,0,0,0-3.076,4.536,11.913,11.913,0,0,0-.973,3.271Zm0,4.325a8.978,8.978,0,0,0,2.246,3.9,8.394,8.394,0,0,0,6.058,2.457h9.824v5.67H84.139A14.611,14.611,0,0,1,73.907-64.58a14.506,14.506,0,0,1-3.076-4.536,11.91,11.91,0,0,1-.973-3.271ZM57.522-69.832l-7.5,9.473H42.581L53.818-74.55,42.581-88.739H50.02l7.5,9.472,7.5-9.472h7.439L61.225-74.55l11.237,14.19H65.023Zm-12.336-6.88a11.935,11.935,0,0,0-.973-3.271,14.515,14.515,0,0,0-3.076-4.536A14.612,14.612,0,0,0,30.9-88.739H21.081v5.67H30.9a8.394,8.394,0,0,1,6.058,2.457,8.978,8.978,0,0,1,2.246,3.9Zm0,4.325a11.932,11.932,0,0,1-.973,3.271,14.511,14.511,0,0,1-3.076,4.536A14.611,14.611,0,0,1,30.9-60.359H21.081v-5.67H30.9a8.4,8.4,0,0,0,6.058-2.457,8.981,8.981,0,0,0,2.246-3.9h5.978"
78
+ transform="translate(-21.049 88.739)"
79
+ fill="#5f249f"
80
+ />
81
+ </g>
82
+ </g>
83
+ </svg>
84
+ ),
85
+ contentColor: "#000000",
86
+ overlayColor: "#000000b3",
87
+ },
88
+ };
89
+
90
+ export const Chromatic = () => (
91
+ <>
92
+ <ExampleContainer>
93
+ <Title title="Default with dropdown" theme="light" level={4} />
94
+ <DxcHeader
95
+ content={<DxcHeader.Dropdown options={options} label="Default Dropdown" onSelectOption={() => {}} />}
96
+ />
97
+ </ExampleContainer>
98
+ <ExampleContainer>
99
+ <Title title="Underlined with text" theme="light" level={4} />
100
+ <DxcHeader underlined content={<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>} />
101
+ </ExampleContainer>
102
+ <ExampleContainer>
103
+ <Title title="Underlined, dropdown and links" theme="light" level={4} />
104
+ <DxcHeader
105
+ content={
106
+ <DxcFlex alignItems="center" gap="4rem">
107
+ <DxcLink>Link 1</DxcLink>
108
+ <DxcLink>Link 2</DxcLink>
109
+ <DxcLink>Link 3</DxcLink>
110
+ <DxcHeader.Dropdown options={options2} label="Label" onSelectOption={() => {}} />
111
+ </DxcFlex>
112
+ }
113
+ underlined
114
+ />
115
+ </ExampleContainer>
116
+ <Title title="Margins" theme="light" level={2} />
117
+ <ExampleContainer>
118
+ <Title title="Xxsmall margin" theme="light" level={4} />
119
+ <DxcHeader underlined margin="xxsmall" />
120
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
121
+ </ExampleContainer>
122
+ <ExampleContainer>
123
+ <Title title="Xsmall margin" theme="light" level={4} />
124
+ <DxcHeader underlined margin="xsmall" />
125
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
126
+ </ExampleContainer>
127
+ <ExampleContainer>
128
+ <Title title="Small margin" theme="light" level={4} />
129
+ <DxcHeader underlined margin="small" />
130
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
131
+ </ExampleContainer>
132
+ <ExampleContainer>
133
+ <Title title="Medium margin" theme="light" level={4} />
134
+ <DxcHeader underlined margin="medium" />
135
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
136
+ </ExampleContainer>
137
+ <ExampleContainer>
138
+ <Title title="Large margin" theme="light" level={4} />
139
+ <DxcHeader underlined margin="large" />
140
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
141
+ </ExampleContainer>
142
+ <ExampleContainer>
143
+ <Title title="Xlarge margin" theme="light" level={4} />
144
+ <DxcHeader underlined margin="xlarge" />
145
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
146
+ </ExampleContainer>
147
+ <ExampleContainer>
148
+ <Title title="Xxlarge margin" theme="light" level={4} />
149
+ <DxcHeader underlined margin="xxlarge" />
150
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
151
+ </ExampleContainer>
152
+ <Title title="Paddings" theme="light" level={2} />
153
+ <ExampleContainer>
154
+ <Title title="Xxsmall padding" theme="light" level={4} />
155
+ <DxcHeader underlined padding="xxsmall" />
156
+ </ExampleContainer>
157
+ <ExampleContainer>
158
+ <Title title="Xsmall padding" theme="light" level={4} />
159
+ <DxcHeader underlined padding="xsmall" />
160
+ </ExampleContainer>
161
+ <ExampleContainer>
162
+ <Title title="Small padding" theme="light" level={4} />
163
+ <DxcHeader underlined padding="small" />
164
+ </ExampleContainer>
165
+ <ExampleContainer>
166
+ <Title title="Medium padding" theme="light" level={4} />
167
+ <DxcHeader underlined padding="medium" />
168
+ </ExampleContainer>
169
+ <ExampleContainer>
170
+ <Title title="Large padding" theme="light" level={4} />
171
+ <DxcHeader underlined padding="large" />
172
+ </ExampleContainer>
173
+ <ExampleContainer>
174
+ <Title title="Xlarge padding" theme="light" level={4} />
175
+ <DxcHeader underlined padding="xlarge" />
176
+ </ExampleContainer>
177
+ <ExampleContainer>
178
+ <Title title="Xxlarge padding" theme="light" level={4} />
179
+ <DxcHeader underlined padding="xxlarge" />
180
+ </ExampleContainer>
181
+ <Title title="Opinionated theme" theme="light" level={2} />
182
+ <ExampleContainer>
183
+ <HalstackProvider theme={opinionatedTheme}>
184
+ <DxcHeader
185
+ underlined
186
+ content={<DxcButton label={"Custom Button"} />}
187
+ responsiveContent={(closeHandler) => (
188
+ <>
189
+ <DxcButton label={"Custom Button"} onClick={closeHandler} />
190
+ Custom content
191
+ </>
192
+ )}
193
+ />
194
+ </HalstackProvider>
195
+ </ExampleContainer>
196
+ </>
197
+ );
198
+
199
+ export const ResponsiveHeader = () => (
200
+ <ExampleContainer>
201
+ <Title title="Responsive" theme="light" level={4} />
202
+ <DxcHeader
203
+ content={<DxcHeader.Dropdown options={options} label="Default Dropdown" />}
204
+ responsiveContent={(closeHandler) => <DxcHeader.Dropdown options={options} label="Default Dropdown" />}
205
+ underlined
206
+ />
207
+ </ExampleContainer>
208
+ );
209
+
210
+ const RespHeaderFocus = () => (
211
+ <ExampleContainer pseudoState="pseudo-focus">
212
+ <Title title="Responsive focus" theme="light" level={4} />
213
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
214
+ </ExampleContainer>
215
+ );
216
+
217
+ const RespHeaderHover = () => (
218
+ <ExampleContainer pseudoState="pseudo-hover">
219
+ <Title title="Responsive hover" theme="light" level={4} />
220
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
221
+ </ExampleContainer>
222
+ );
223
+
224
+ const RespHeaderMenuMobile = () => (
225
+ <ExampleContainer>
226
+ <Title title="Responsive menu" theme="light" level={4} />
227
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
228
+ </ExampleContainer>
229
+ );
230
+
231
+ const RespHeaderMenuTablet = () => (
232
+ <ExampleContainer>
233
+ <Title title="Responsive menu" theme="light" level={4} />
234
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
235
+ </ExampleContainer>
236
+ );
237
+
238
+ const RespHeaderMenuOpinionated = () => (
239
+ <ExampleContainer>
240
+ <Title title="Responsive menu" theme="light" level={4} />
241
+ <HalstackProvider theme={opinionatedTheme}>
242
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
243
+ </HalstackProvider>
244
+ </ExampleContainer>
245
+ );
246
+
247
+ ResponsiveHeader.parameters = {
248
+ viewport: {
249
+ defaultViewport: "iphonex",
250
+ },
251
+ chromatic: { viewports: [375] },
252
+ };
253
+
254
+ export const ResponsiveHeaderFocus = RespHeaderFocus.bind({});
255
+ ResponsiveHeaderFocus.parameters = {
256
+ viewport: {
257
+ defaultViewport: "iphonex",
258
+ },
259
+ chromatic: { viewports: [375] },
260
+ };
261
+ ResponsiveHeaderFocus.play = async ({ canvasElement }) => {
262
+ const canvas = within(canvasElement);
263
+ await waitFor(() => canvas.findByText("Menu"));
264
+ };
265
+
266
+ export const ResponsiveHeaderHover = RespHeaderHover.bind({});
267
+ ResponsiveHeaderHover.parameters = {
268
+ viewport: {
269
+ defaultViewport: "iphonex",
270
+ },
271
+ chromatic: { viewports: [375] },
272
+ };
273
+ ResponsiveHeaderHover.play = async ({ canvasElement }) => {
274
+ const canvas = within(canvasElement);
275
+ await waitFor(() => canvas.findByText("Menu"));
276
+ };
277
+
278
+ export const ResponsiveHeaderMenuMobile = RespHeaderMenuMobile.bind({});
279
+ ResponsiveHeaderMenuMobile.parameters = {
280
+ viewport: {
281
+ defaultViewport: "iphonex",
282
+ },
283
+ chromatic: { viewports: [375] },
284
+ };
285
+ ResponsiveHeaderMenuMobile.play = async ({ canvasElement }) => {
286
+ const canvas = within(canvasElement);
287
+ await waitFor(() => canvas.findByText("Menu"));
288
+ await userEvent.click(canvas.getByText("Menu"));
289
+ };
290
+
291
+ export const ResponsiveHeaderMenuTablet = RespHeaderMenuTablet.bind({});
292
+ ResponsiveHeaderMenuTablet.parameters = {
293
+ viewport: {
294
+ defaultViewport: "pixelxl",
295
+ },
296
+ chromatic: { viewports: [720] },
297
+ };
298
+ ResponsiveHeaderMenuTablet.play = async ({ canvasElement }) => {
299
+ const canvas = within(canvasElement);
300
+ await waitFor(() => canvas.findByText("Menu"));
301
+ await userEvent.click(canvas.getByText("Menu"));
302
+ };
303
+
304
+ export const ResponsiveHeaderMenuOpinionated = RespHeaderMenuOpinionated.bind({});
305
+ ResponsiveHeaderMenuOpinionated.parameters = {
306
+ viewport: {
307
+ defaultViewport: "pixelxl",
308
+ },
309
+ chromatic: { viewports: [720] },
310
+ };
311
+ ResponsiveHeaderMenuOpinionated.play = async ({ canvasElement }) => {
312
+ const canvas = within(canvasElement);
313
+ await waitFor(() => canvas.findByText("Menu"));
314
+ await userEvent.click(canvas.getByText("Menu"));
315
+ };
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ var _Header = _interopRequireDefault(require("./Header.tsx"));
10
+
11
+ describe("Header component tests", function () {
12
+ beforeAll(function () {
13
+ Object.defineProperty(window, "matchMedia", {
14
+ writable: true,
15
+ value: jest.fn().mockImplementation(function () {
16
+ return {
17
+ matches: false
18
+ };
19
+ })
20
+ });
21
+ });
22
+ test("Header renders with default logo", function () {
23
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], null)),
24
+ getByTitle = _render.getByTitle;
25
+
26
+ expect(getByTitle("DXC Logo")).toBeTruthy();
27
+ });
28
+ test("Call correct function on logo click", function () {
29
+ var onClick = jest.fn();
30
+
31
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
32
+ onClick: onClick
33
+ })),
34
+ getByTitle = _render2.getByTitle;
35
+
36
+ var logo = getByTitle("DXC Logo");
37
+
38
+ _react2.fireEvent.click(logo);
39
+
40
+ expect(onClick).toHaveBeenCalled();
41
+ });
42
+ test("Header renders with correct children", function () {
43
+ // We need to force the offsetWidth value
44
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
45
+ configurable: true,
46
+ value: 1024
47
+ });
48
+
49
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
50
+ content: /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text")
51
+ })),
52
+ getByText = _render3.getByText;
53
+
54
+ expect(getByText("header-child-text")).toBeTruthy();
55
+ });
56
+ test("Header renders menu button in mobile", function () {
57
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
58
+ configurable: true,
59
+ value: 425
60
+ });
61
+ Object.defineProperty(window, "matchMedia", {
62
+ writable: true,
63
+ value: jest.fn().mockImplementation(function () {
64
+ return {
65
+ matches: true
66
+ };
67
+ })
68
+ });
69
+
70
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
71
+ responsiveContent: function responsiveContent() {
72
+ return /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text");
73
+ }
74
+ })),
75
+ getByText = _render4.getByText;
76
+
77
+ expect(getByText("Menu")).toBeTruthy();
78
+ });
79
+ });
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const dxcLogo: JSX.Element;
@@ -5,55 +5,30 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.hamburgerIcon = exports.closeIcon = exports.dxcLogo = void 0;
8
+ exports.dxcLogo = void 0;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
- var dxcLogo = _react["default"].createElement("svg", {
12
+ var dxcLogo = /*#__PURE__*/_react["default"].createElement("svg", {
13
13
  xmlns: "http://www.w3.org/2000/svg",
14
14
  width: "73",
15
15
  height: "40",
16
16
  viewBox: "0 0 73 40"
17
- }, _react["default"].createElement("title", null, "DXC Logo"), _react["default"].createElement("g", {
17
+ }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
18
18
  id: "g10",
19
19
  transform: "translate(0)"
20
- }, _react["default"].createElement("g", {
20
+ }, /*#__PURE__*/_react["default"].createElement("g", {
21
21
  id: "g12"
22
- }, _react["default"].createElement("path", {
22
+ }, /*#__PURE__*/_react["default"].createElement("path", {
23
23
  id: "path14",
24
24
  d: "M91.613-28.177v2.514H90.231V-28.15l-2.415-3.82h1.616l1.5,2.532,1.526-2.532h1.571ZM83.9-25.555A3.15,3.15,0,0,1,80.6-28.8v-.018a3.231,3.231,0,0,1,3.294-3.262,3.442,3.442,0,0,1,2.469.865l-.87,1.054a2.311,2.311,0,0,0-1.643-.64,1.891,1.891,0,0,0-1.8,1.964v.018a1.886,1.886,0,0,0,1.9,2,2.2,2.2,0,0,0,1.3-.378v-.9H83.858v-1.2h2.729v2.738A4.071,4.071,0,0,1,83.9-25.555Zm-6.416-3.261a1.913,1.913,0,0,0-1.9-1.982A1.883,1.883,0,0,0,73.7-28.835v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,77.486-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018A3.255,3.255,0,0,1,75.6-32.078a3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,75.583-25.555Zm-9.173-.108V-31.97h1.382v5.045h3.133v1.261Zm-3.433-3.153a1.913,1.913,0,0,0-1.9-1.982,1.883,1.883,0,0,0-1.886,1.964v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,62.978-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018a3.255,3.255,0,0,1,3.348-3.262,3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,61.075-25.555Zm-6.508-.108-3.043-4.009v4.009H50.159V-31.97h1.275l2.944,3.883V-31.97h1.364v6.306Zm-8.246,0v-2.531h-2.55v2.531H42.389V-31.97h1.382v2.5h2.55v-2.5H47.7v6.306Zm-8.432.108A3.178,3.178,0,0,1,34.666-28.8v-.018a3.2,3.2,0,0,1,3.276-3.262,3.237,3.237,0,0,1,2.478.973l-.88,1.018a2.315,2.315,0,0,0-1.606-.712,1.866,1.866,0,0,0-1.822,1.964v.018a1.87,1.87,0,0,0,1.822,1.982,2.265,2.265,0,0,0,1.651-.739l.88.891A3.206,3.206,0,0,1,37.889-25.555Zm-9.805-.108V-31.97h4.739v1.235H29.458v1.279h2.962v1.234H29.458V-26.9h3.411v1.234ZM24.322-30.69v5.027H22.939V-30.69H21.028v-1.28h5.206v1.28H24.322",
25
25
  transform: "translate(-21.028 65.555)",
26
- fill: "#100f0d"
27
- }), _react["default"].createElement("path", {
26
+ fill: "#010101"
27
+ }), /*#__PURE__*/_react["default"].createElement("path", {
28
28
  id: "path16",
29
29
  d: "M75.836-76.712a8.975,8.975,0,0,1,2.246-3.9,8.393,8.393,0,0,1,6.058-2.457h9.824v-5.67H84.139a14.611,14.611,0,0,0-10.232,4.221,14.509,14.509,0,0,0-3.076,4.536,11.913,11.913,0,0,0-.973,3.271Zm0,4.325a8.978,8.978,0,0,0,2.246,3.9,8.394,8.394,0,0,0,6.058,2.457h9.824v5.67H84.139A14.611,14.611,0,0,1,73.907-64.58a14.506,14.506,0,0,1-3.076-4.536,11.91,11.91,0,0,1-.973-3.271ZM57.522-69.832l-7.5,9.473H42.581L53.818-74.55,42.581-88.739H50.02l7.5,9.472,7.5-9.472h7.439L61.225-74.55l11.237,14.19H65.023Zm-12.336-6.88a11.935,11.935,0,0,0-.973-3.271,14.515,14.515,0,0,0-3.076-4.536A14.612,14.612,0,0,0,30.9-88.739H21.081v5.67H30.9a8.394,8.394,0,0,1,6.058,2.457,8.978,8.978,0,0,1,2.246,3.9Zm0,4.325a11.932,11.932,0,0,1-.973,3.271,14.511,14.511,0,0,1-3.076,4.536A14.611,14.611,0,0,1,30.9-60.359H21.081v-5.67H30.9a8.4,8.4,0,0,0,6.058-2.457,8.981,8.981,0,0,0,2.246-3.9h5.978",
30
30
  transform: "translate(-21.049 88.739)",
31
- fill: "#100f0d"
31
+ fill: "#603494"
32
32
  }))));
33
33
 
34
- exports.dxcLogo = dxcLogo;
35
-
36
- var closeIcon = _react["default"].createElement("svg", {
37
- xmlns: "http://www.w3.org/2000/svg",
38
- height: "24",
39
- viewBox: "0 0 24 24",
40
- width: "24"
41
- }, _react["default"].createElement("path", {
42
- d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
43
- }), _react["default"].createElement("path", {
44
- d: "M0 0h24v24H0z",
45
- fill: "none"
46
- }));
47
-
48
- exports.closeIcon = closeIcon;
49
-
50
- var hamburgerIcon = _react["default"].createElement("svg", {
51
- xmlns: "http://www.w3.org/2000/svg",
52
- viewBox: "0 0 24 24",
53
- width: "24",
54
- height: "24"
55
- }, _react["default"].createElement("path", {
56
- d: "M3,8H21a1,1,0,0,0,0-2H3A1,1,0,0,0,3,8Zm18,8H3a1,1,0,0,0,0,2H21a1,1,0,0,0,0-2Zm0-5H3a1,1,0,0,0,0,2H21a1,1,0,0,0,0-2Z"
57
- }));
58
-
59
- exports.hamburgerIcon = hamburgerIcon;
34
+ exports.dxcLogo = dxcLogo;
@@ -0,0 +1,48 @@
1
+ /// <reference types="react" />
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Padding = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare type Props = {
10
+ /**
11
+ * Wether a contrast line should appear at the bottom of the header.
12
+ */
13
+ underlined?: boolean;
14
+ /**
15
+ * Content showed in the header. Take into account that the component applies styles
16
+ * for the first child in the content, so we recommend the use of React.Fragment
17
+ * to be applied correctly. Otherwise, the styles can be modified.
18
+ */
19
+ content?: React.ReactNode;
20
+ /**
21
+ * Content showed in responsive version. It receives the close menu handler that can
22
+ * be used to add that functionality when a element is clicked.
23
+ */
24
+ responsiveContent?: (closeHandler: () => void) => React.ReactNode;
25
+ /**
26
+ * This function will be called when the user clicks the header logo.
27
+ */
28
+ onClick?: () => void;
29
+ /**
30
+ * Size of the bottom margin to be applied to the header
31
+ * ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
32
+ */
33
+ margin?: Space;
34
+ /**
35
+ * @deprecated This prop will be removed shortly, consider using the Inset component for this purpose.
36
+ * Size of the padding to be applied to the custom area of the component
37
+ * ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
38
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in
39
+ * order to specify different padding sizes.
40
+ */
41
+ padding?: Space | Padding;
42
+ /**
43
+ * Value of the tabindex for all interactuable elements, except those inside the
44
+ * custom area.
45
+ */
46
+ tabIndex?: number;
47
+ };
48
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import HeadingPropsType from "./types";
3
+ declare const DxcHeading: ({ level, text, as, weight, margin }: HeadingPropsType) => JSX.Element;
4
+ export default DxcHeading;