@dxc-technology/halstack-react 0.0.0-f0f7913 → 0.0.0-f1bbdfe

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 (520) 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/alert/Alert.js +291 -0
  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 +153 -0
  64. package/chip/Chip.stories.tsx +206 -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/common/utils.js +22 -0
  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/footer/Icons.js +77 -0
  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/header/Icons.js +34 -0
  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/heading/Heading.js +159 -0
  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/layout/Icons.js +66 -0
  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} +157 -83
  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/number-input/NumberInputContext.js +19 -0
  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 +46 -38
  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/password-input/PasswordInput.js +166 -0
  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/table/Table.js +118 -0
  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/textarea/Textarea.js +276 -0
  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/toggle-group/ToggleGroup.js +218 -0
  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 +139 -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 -8
  333. package/dist/ThemeContext.js +0 -137
  334. package/dist/accordion/Accordion.js +0 -268
  335. package/dist/accordion/Accordion.stories.js +0 -207
  336. package/dist/accordion/readme.md +0 -96
  337. package/dist/accordion-group/AccordionGroup.js +0 -159
  338. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  339. package/dist/accordion-group/readme.md +0 -70
  340. package/dist/alert/Alert.js +0 -303
  341. package/dist/alert/Alert.stories.js +0 -158
  342. package/dist/alert/close.svg +0 -4
  343. package/dist/alert/error.svg +0 -4
  344. package/dist/alert/info.svg +0 -4
  345. package/dist/alert/readme.md +0 -43
  346. package/dist/alert/success.svg +0 -4
  347. package/dist/alert/warning.svg +0 -4
  348. package/dist/badge/Badge.js +0 -42
  349. package/dist/box/Box.js +0 -145
  350. package/dist/button/Button.js +0 -199
  351. package/dist/button/Button.stories.js +0 -224
  352. package/dist/button/readme.md +0 -93
  353. package/dist/card/Card.js +0 -217
  354. package/dist/checkbox/Checkbox.js +0 -240
  355. package/dist/checkbox/Checkbox.stories.js +0 -144
  356. package/dist/checkbox/readme.md +0 -116
  357. package/dist/chip/Chip.js +0 -203
  358. package/dist/common/OpenSans.css +0 -81
  359. package/dist/common/RequiredComponent.js +0 -40
  360. package/dist/common/services/example-service.js +0 -10
  361. package/dist/common/services/example-service.test.js +0 -12
  362. package/dist/common/utils.js +0 -42
  363. package/dist/common/variables.js +0 -393
  364. package/dist/date/Date.js +0 -357
  365. package/dist/date/Date.stories.js +0 -205
  366. package/dist/date/calendar.svg +0 -1
  367. package/dist/date/calendar_dark.svg +0 -1
  368. package/dist/date/readme.md +0 -73
  369. package/dist/dialog/Dialog.js +0 -197
  370. package/dist/dialog/Dialog.stories.js +0 -217
  371. package/dist/dialog/readme.md +0 -32
  372. package/dist/dropdown/Dropdown.js +0 -449
  373. package/dist/dropdown/Dropdown.stories.js +0 -249
  374. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  375. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  376. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  377. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  378. package/dist/dropdown/readme.md +0 -69
  379. package/dist/footer/Footer.js +0 -366
  380. package/dist/footer/Footer.stories.js +0 -94
  381. package/dist/footer/dxc_logo_wht.png +0 -0
  382. package/dist/footer/readme.md +0 -41
  383. package/dist/header/Header.js +0 -373
  384. package/dist/header/Header.stories.js +0 -176
  385. package/dist/header/close_icon.svg +0 -1
  386. package/dist/header/dxc_logo_black.png +0 -0
  387. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  388. package/dist/header/dxc_logo_white.png +0 -0
  389. package/dist/header/hamb_menu_black.svg +0 -1
  390. package/dist/header/hamb_menu_white.svg +0 -1
  391. package/dist/header/readme.md +0 -33
  392. package/dist/heading/Heading.js +0 -153
  393. package/dist/input-text/InputText.js +0 -570
  394. package/dist/input-text/InputText.stories.js +0 -209
  395. package/dist/input-text/error.svg +0 -1
  396. package/dist/input-text/readme.md +0 -91
  397. package/dist/layout/ApplicationLayout.js +0 -332
  398. package/dist/layout/facebook.svg +0 -45
  399. package/dist/layout/linkedin.svg +0 -50
  400. package/dist/layout/twitter.svg +0 -53
  401. package/dist/link/Link.js +0 -192
  402. package/dist/link/readme.md +0 -51
  403. package/dist/paginator/Paginator.js +0 -254
  404. package/dist/paginator/images/next.svg +0 -3
  405. package/dist/paginator/images/nextPage.svg +0 -3
  406. package/dist/paginator/images/previous.svg +0 -3
  407. package/dist/paginator/images/previousPage.svg +0 -3
  408. package/dist/paginator/readme.md +0 -50
  409. package/dist/progress-bar/ProgressBar.js +0 -185
  410. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  411. package/dist/progress-bar/readme.md +0 -63
  412. package/dist/radio/Radio.js +0 -195
  413. package/dist/radio/Radio.stories.js +0 -166
  414. package/dist/radio/readme.md +0 -70
  415. package/dist/resultsetTable/ResultsetTable.js +0 -327
  416. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  417. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  418. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  419. package/dist/select/Select.js +0 -473
  420. package/dist/select/Select.stories.js +0 -235
  421. package/dist/select/readme.md +0 -72
  422. package/dist/sidenav/Sidenav.js +0 -125
  423. package/dist/slider/Slider.js +0 -257
  424. package/dist/slider/Slider.stories.js +0 -241
  425. package/dist/slider/readme.md +0 -64
  426. package/dist/spinner/Spinner.js +0 -192
  427. package/dist/spinner/Spinner.stories.js +0 -183
  428. package/dist/spinner/readme.md +0 -65
  429. package/dist/switch/Switch.js +0 -190
  430. package/dist/switch/Switch.stories.js +0 -134
  431. package/dist/switch/readme.md +0 -133
  432. package/dist/table/Table.js +0 -104
  433. package/dist/tabs/Tabs.js +0 -302
  434. package/dist/tabs/Tabs.stories.js +0 -130
  435. package/dist/tabs/readme.md +0 -78
  436. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  437. package/dist/tabs-for-sections/readme.md +0 -78
  438. package/dist/tag/Tag.js +0 -249
  439. package/dist/textarea/Textarea.js +0 -224
  440. package/dist/toggle/Toggle.js +0 -223
  441. package/dist/toggle/Toggle.stories.js +0 -297
  442. package/dist/toggle/readme.md +0 -80
  443. package/dist/toggle-group/ToggleGroup.js +0 -223
  444. package/dist/toggle-group/readme.md +0 -82
  445. package/dist/upload/Upload.js +0 -200
  446. package/dist/upload/Upload.stories.js +0 -72
  447. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  448. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  449. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  450. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  451. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  452. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  453. package/dist/upload/file-upload/FileToUpload.js +0 -158
  454. package/dist/upload/file-upload/audio-icon.svg +0 -4
  455. package/dist/upload/file-upload/close.svg +0 -4
  456. package/dist/upload/file-upload/file-icon.svg +0 -4
  457. package/dist/upload/file-upload/video-icon.svg +0 -4
  458. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  459. package/dist/upload/readme.md +0 -37
  460. package/dist/upload/transaction/Transaction.js +0 -155
  461. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  462. package/dist/upload/transaction/audio-icon.svg +0 -4
  463. package/dist/upload/transaction/error-icon.svg +0 -4
  464. package/dist/upload/transaction/file-icon-err.svg +0 -4
  465. package/dist/upload/transaction/file-icon.svg +0 -4
  466. package/dist/upload/transaction/image-icon-err.svg +0 -4
  467. package/dist/upload/transaction/image-icon.svg +0 -4
  468. package/dist/upload/transaction/success-icon.svg +0 -4
  469. package/dist/upload/transaction/video-icon-err.svg +0 -4
  470. package/dist/upload/transaction/video-icon.svg +0 -4
  471. package/dist/upload/transactions/Transactions.js +0 -120
  472. package/dist/wizard/Wizard.js +0 -328
  473. package/dist/wizard/invalid_icon.svg +0 -6
  474. package/dist/wizard/valid_icon.svg +0 -6
  475. package/dist/wizard/validation-wrong.svg +0 -6
  476. package/test/Accordion.test.js +0 -33
  477. package/test/AccordionGroup.test.js +0 -109
  478. package/test/Alert.test.js +0 -53
  479. package/test/Box.test.js +0 -10
  480. package/test/Button.test.js +0 -18
  481. package/test/Card.test.js +0 -30
  482. package/test/Checkbox.test.js +0 -45
  483. package/test/Chip.test.js +0 -25
  484. package/test/Date.test.js +0 -393
  485. package/test/Dialog.test.js +0 -23
  486. package/test/Dropdown.test.js +0 -130
  487. package/test/Footer.test.js +0 -99
  488. package/test/Header.test.js +0 -39
  489. package/test/Heading.test.js +0 -35
  490. package/test/InputText.test.js +0 -240
  491. package/test/Link.test.js +0 -42
  492. package/test/Paginator.test.js +0 -177
  493. package/test/ProgressBar.test.js +0 -35
  494. package/test/Radio.test.js +0 -37
  495. package/test/ResultsetTable.test.js +0 -330
  496. package/test/Select.test.js +0 -192
  497. package/test/Sidenav.test.js +0 -45
  498. package/test/Slider.test.js +0 -82
  499. package/test/Spinner.test.js +0 -27
  500. package/test/Switch.test.js +0 -45
  501. package/test/Table.test.js +0 -36
  502. package/test/Tabs.test.js +0 -109
  503. package/test/TabsForSections.test.js +0 -34
  504. package/test/Tag.test.js +0 -32
  505. package/test/TextArea.test.js +0 -52
  506. package/test/ToggleGroup.test.js +0 -81
  507. package/test/Upload.test.js +0 -60
  508. package/test/Wizard.test.js +0 -130
  509. package/test/mocks/pngMock.js +0 -1
  510. package/test/mocks/svgMock.js +0 -1
  511. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  512. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  513. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  514. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  515. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  516. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  517. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  518. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  519. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  520. /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;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.dxcLogo = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var dxcLogo = /*#__PURE__*/_react["default"].createElement("svg", {
13
+ xmlns: "http://www.w3.org/2000/svg",
14
+ width: "73",
15
+ height: "40",
16
+ viewBox: "0 0 73 40"
17
+ }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
18
+ id: "g10",
19
+ transform: "translate(0)"
20
+ }, /*#__PURE__*/_react["default"].createElement("g", {
21
+ id: "g12"
22
+ }, /*#__PURE__*/_react["default"].createElement("path", {
23
+ id: "path14",
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
+ transform: "translate(-21.028 65.555)",
26
+ fill: "#010101"
27
+ }), /*#__PURE__*/_react["default"].createElement("path", {
28
+ id: "path16",
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
+ transform: "translate(-21.049 88.739)",
31
+ fill: "#603494"
32
+ }))));
33
+
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;
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _react = _interopRequireDefault(require("react"));
17
+
18
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
+
20
+ var _variables = require("../common/variables");
21
+
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
+
24
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _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; }
29
+
30
+ var DxcHeading = function DxcHeading(_ref) {
31
+ var _ref$level = _ref.level,
32
+ level = _ref$level === void 0 ? 1 : _ref$level,
33
+ _ref$text = _ref.text,
34
+ text = _ref$text === void 0 ? "" : _ref$text,
35
+ as = _ref.as,
36
+ weight = _ref.weight,
37
+ margin = _ref.margin;
38
+ var colorsTheme = (0, _useTheme["default"])();
39
+
40
+ var checkValidAs = function checkValidAs() {
41
+ if (as === "h1" || as === "h2" || as === "h3" || as === "h4" || as === "h5") return as;
42
+ };
43
+
44
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
45
+ theme: colorsTheme.heading
46
+ }, /*#__PURE__*/_react["default"].createElement(HeadingContainer, {
47
+ margin: margin
48
+ }, level === 1 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel1, {
49
+ as: checkValidAs(),
50
+ weight: weight
51
+ }, text) : level === 2 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel2, {
52
+ as: checkValidAs(),
53
+ weight: weight
54
+ }, text) : level === 3 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel3, {
55
+ as: checkValidAs(),
56
+ weight: weight
57
+ }, text) : level === 4 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel4, {
58
+ as: checkValidAs(),
59
+ weight: weight
60
+ }, text) : /*#__PURE__*/_react["default"].createElement(HeadingLevel5, {
61
+ as: checkValidAs(),
62
+ weight: weight
63
+ }, text)));
64
+ };
65
+
66
+ var HeadingContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
67
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
68
+ }, function (props) {
69
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
70
+ }, function (props) {
71
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
72
+ }, function (props) {
73
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
74
+ }, function (props) {
75
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
76
+ });
77
+
78
+ var HeadingLevel1 = _styledComponents["default"].h1(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
79
+ return props.theme.level1FontFamily;
80
+ }, function (props) {
81
+ return props.theme.level1FontStyle;
82
+ }, function (props) {
83
+ return props.theme.level1FontSize;
84
+ }, function (props) {
85
+ return props.theme.level1LineHeight;
86
+ }, function (props) {
87
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level1FontWeight;
88
+ }, function (props) {
89
+ return props.theme.level1LetterSpacing;
90
+ }, function (props) {
91
+ return props.theme.level1FontColor;
92
+ });
93
+
94
+ var HeadingLevel2 = _styledComponents["default"].h2(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
95
+ return props.theme.level2FontFamily;
96
+ }, function (props) {
97
+ return props.theme.level2FontStyle;
98
+ }, function (props) {
99
+ return props.theme.level2FontSize;
100
+ }, function (props) {
101
+ return props.theme.level2LineHeight;
102
+ }, function (props) {
103
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level2FontWeight;
104
+ }, function (props) {
105
+ return props.theme.level2LetterSpacing;
106
+ }, function (props) {
107
+ return props.theme.level2FontColor;
108
+ });
109
+
110
+ var HeadingLevel3 = _styledComponents["default"].h3(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
111
+ return props.theme.level3FontFamily;
112
+ }, function (props) {
113
+ return props.theme.level3FontStyle;
114
+ }, function (props) {
115
+ return props.theme.level3FontSize;
116
+ }, function (props) {
117
+ return props.theme.level3LineHeight;
118
+ }, function (props) {
119
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level3FontWeight;
120
+ }, function (props) {
121
+ return props.theme.level3LetterSpacing;
122
+ }, function (props) {
123
+ return props.theme.level3FontColor;
124
+ });
125
+
126
+ var HeadingLevel4 = _styledComponents["default"].h4(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
127
+ return props.theme.level4FontFamily;
128
+ }, function (props) {
129
+ return props.theme.level4FontStyle;
130
+ }, function (props) {
131
+ return props.theme.level4FontSize;
132
+ }, function (props) {
133
+ return props.theme.level4LineHeight;
134
+ }, function (props) {
135
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level4FontWeight;
136
+ }, function (props) {
137
+ return props.theme.level4LetterSpacing;
138
+ }, function (props) {
139
+ return props.theme.level4FontColor;
140
+ });
141
+
142
+ var HeadingLevel5 = _styledComponents["default"].h5(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
143
+ return props.theme.level5FontFamily;
144
+ }, function (props) {
145
+ return props.theme.level5FontStyle;
146
+ }, function (props) {
147
+ return props.theme.level5FontSize;
148
+ }, function (props) {
149
+ return props.theme.level5LineHeight;
150
+ }, function (props) {
151
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level5FontWeight;
152
+ }, function (props) {
153
+ return props.theme.level5LetterSpacing;
154
+ }, function (props) {
155
+ return props.theme.level5FontColor;
156
+ });
157
+
158
+ var _default = DxcHeading;
159
+ exports["default"] = _default;