@dxc-technology/halstack-react 0.0.0-ebb089f → 0.0.0-ec06b53

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 (459) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +294 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +245 -0
  7. package/accordion/Accordion.stories.tsx +306 -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 +44 -154
  19. package/alert/Alert.stories.tsx +170 -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 +341 -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 +116 -0
  34. package/box/Box.stories.tsx +132 -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 +123 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +4 -0
  44. package/button/Button.js +156 -0
  45. package/button/Button.stories.tsx +283 -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 +161 -0
  51. package/card/Card.stories.tsx +201 -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 +208 -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 +161 -0
  64. package/chip/Chip.stories.tsx +119 -0
  65. package/chip/Chip.test.js +56 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/{dist/common → common}/OpenSans.css +0 -0
  69. package/{dist/common → common}/RequiredComponent.js +3 -11
  70. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  75. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  76. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  77. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  78. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  79. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  80. package/{dist/common → common}/utils.js +0 -0
  81. package/{dist/common → common}/variables.js +363 -425
  82. package/date-input/Calendar.d.ts +4 -0
  83. package/date-input/Calendar.js +258 -0
  84. package/date-input/DateInput.d.ts +4 -0
  85. package/date-input/DateInput.js +227 -0
  86. package/date-input/DateInput.stories.tsx +151 -0
  87. package/date-input/DateInput.test.js +752 -0
  88. package/date-input/DatePicker.d.ts +4 -0
  89. package/date-input/DatePicker.js +160 -0
  90. package/date-input/YearPicker.d.ts +4 -0
  91. package/date-input/YearPicker.js +115 -0
  92. package/date-input/types.d.ts +160 -0
  93. package/date-input/types.js +5 -0
  94. package/dialog/Dialog.d.ts +4 -0
  95. package/dialog/Dialog.js +162 -0
  96. package/dialog/Dialog.stories.tsx +267 -0
  97. package/dialog/Dialog.test.js +70 -0
  98. package/dialog/types.d.ts +44 -0
  99. package/dialog/types.js +5 -0
  100. package/dropdown/Dropdown.d.ts +4 -0
  101. package/dropdown/Dropdown.js +391 -0
  102. package/dropdown/Dropdown.stories.tsx +312 -0
  103. package/dropdown/Dropdown.test.js +585 -0
  104. package/dropdown/DropdownMenu.d.ts +4 -0
  105. package/dropdown/DropdownMenu.js +80 -0
  106. package/dropdown/DropdownMenuItem.d.ts +4 -0
  107. package/dropdown/DropdownMenuItem.js +92 -0
  108. package/dropdown/types.d.ts +100 -0
  109. package/dropdown/types.js +5 -0
  110. package/file-input/FileInput.d.ts +4 -0
  111. package/file-input/FileInput.js +551 -0
  112. package/file-input/FileInput.stories.tsx +535 -0
  113. package/file-input/FileInput.test.js +498 -0
  114. package/file-input/FileItem.d.ts +4 -0
  115. package/file-input/FileItem.js +161 -0
  116. package/file-input/types.d.ts +129 -0
  117. package/file-input/types.js +5 -0
  118. package/flex/Flex.d.ts +4 -0
  119. package/flex/Flex.js +69 -0
  120. package/flex/Flex.stories.tsx +103 -0
  121. package/flex/types.d.ts +32 -0
  122. package/flex/types.js +5 -0
  123. package/footer/Footer.d.ts +4 -0
  124. package/footer/Footer.js +185 -0
  125. package/footer/Footer.stories.tsx +137 -0
  126. package/footer/Footer.test.js +109 -0
  127. package/footer/Icons.d.ts +2 -0
  128. package/{dist/footer → footer}/Icons.js +16 -16
  129. package/footer/types.d.ts +66 -0
  130. package/footer/types.js +5 -0
  131. package/header/Header.d.ts +7 -0
  132. package/header/Header.js +305 -0
  133. package/header/Header.stories.tsx +172 -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 +25 -96
  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 +229 -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 +42 -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 +193 -0
  162. package/link/Link.test.js +83 -0
  163. package/link/types.d.ts +54 -0
  164. package/link/types.js +5 -0
  165. package/main.d.ts +44 -0
  166. package/{dist/main.js → main.js} +114 -104
  167. package/number-input/NumberInput.d.ts +4 -0
  168. package/number-input/NumberInput.js +76 -0
  169. package/number-input/NumberInput.stories.tsx +115 -0
  170. package/number-input/NumberInput.test.js +542 -0
  171. package/number-input/NumberInputContext.d.ts +4 -0
  172. package/{dist/number-input → number-input}/NumberInputContext.js +5 -2
  173. package/number-input/numberInputContextTypes.d.ts +19 -0
  174. package/number-input/numberInputContextTypes.js +5 -0
  175. package/number-input/types.d.ts +124 -0
  176. package/number-input/types.js +5 -0
  177. package/package.json +36 -33
  178. package/{dist/paginator → paginator}/Icons.js +9 -9
  179. package/paginator/Paginator.d.ts +4 -0
  180. package/paginator/Paginator.js +171 -0
  181. package/paginator/Paginator.stories.tsx +63 -0
  182. package/paginator/Paginator.test.js +308 -0
  183. package/paginator/types.d.ts +38 -0
  184. package/paginator/types.js +5 -0
  185. package/paragraph/Paragraph.d.ts +6 -0
  186. package/paragraph/Paragraph.js +38 -0
  187. package/paragraph/Paragraph.stories.tsx +44 -0
  188. package/password-input/PasswordInput.d.ts +4 -0
  189. package/{dist/password-input → password-input}/PasswordInput.js +40 -77
  190. package/password-input/PasswordInput.stories.tsx +131 -0
  191. package/password-input/PasswordInput.test.js +181 -0
  192. package/password-input/types.d.ts +110 -0
  193. package/password-input/types.js +5 -0
  194. package/progress-bar/ProgressBar.d.ts +4 -0
  195. package/progress-bar/ProgressBar.js +176 -0
  196. package/progress-bar/ProgressBar.stories.jsx +60 -0
  197. package/progress-bar/ProgressBar.test.js +110 -0
  198. package/progress-bar/types.d.ts +36 -0
  199. package/progress-bar/types.js +5 -0
  200. package/quick-nav/QuickNav.d.ts +4 -0
  201. package/quick-nav/QuickNav.js +117 -0
  202. package/quick-nav/QuickNav.stories.tsx +342 -0
  203. package/quick-nav/types.d.ts +21 -0
  204. package/quick-nav/types.js +5 -0
  205. package/radio-group/Radio.d.ts +4 -0
  206. package/radio-group/Radio.js +156 -0
  207. package/radio-group/RadioGroup.d.ts +4 -0
  208. package/radio-group/RadioGroup.js +283 -0
  209. package/radio-group/RadioGroup.stories.tsx +101 -0
  210. package/radio-group/RadioGroup.test.js +722 -0
  211. package/radio-group/types.d.ts +114 -0
  212. package/radio-group/types.js +5 -0
  213. package/resultsetTable/Icons.d.ts +7 -0
  214. package/resultsetTable/Icons.js +51 -0
  215. package/resultsetTable/ResultsetTable.d.ts +4 -0
  216. package/resultsetTable/ResultsetTable.js +195 -0
  217. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  218. package/resultsetTable/ResultsetTable.test.js +330 -0
  219. package/resultsetTable/types.d.ts +67 -0
  220. package/resultsetTable/types.js +5 -0
  221. package/select/Icons.d.ts +10 -0
  222. package/select/Icons.js +93 -0
  223. package/select/Listbox.d.ts +4 -0
  224. package/select/Listbox.js +198 -0
  225. package/select/Option.d.ts +4 -0
  226. package/select/Option.js +110 -0
  227. package/select/Select.d.ts +4 -0
  228. package/select/Select.js +645 -0
  229. package/select/Select.stories.tsx +627 -0
  230. package/select/Select.test.js +2233 -0
  231. package/select/types.d.ts +210 -0
  232. package/select/types.js +5 -0
  233. package/sidenav/Sidenav.d.ts +10 -0
  234. package/sidenav/Sidenav.js +268 -0
  235. package/sidenav/Sidenav.stories.tsx +180 -0
  236. package/sidenav/Sidenav.test.js +44 -0
  237. package/sidenav/types.d.ts +73 -0
  238. package/sidenav/types.js +5 -0
  239. package/slider/Slider.d.ts +4 -0
  240. package/slider/Slider.js +343 -0
  241. package/slider/Slider.stories.tsx +183 -0
  242. package/slider/Slider.test.js +250 -0
  243. package/slider/types.d.ts +86 -0
  244. package/slider/types.js +5 -0
  245. package/spinner/Spinner.d.ts +4 -0
  246. package/spinner/Spinner.js +250 -0
  247. package/spinner/Spinner.stories.jsx +103 -0
  248. package/spinner/Spinner.test.js +64 -0
  249. package/spinner/types.d.ts +32 -0
  250. package/spinner/types.js +5 -0
  251. package/switch/Switch.d.ts +4 -0
  252. package/switch/Switch.js +262 -0
  253. package/switch/Switch.stories.tsx +138 -0
  254. package/switch/Switch.test.js +225 -0
  255. package/switch/types.d.ts +66 -0
  256. package/switch/types.js +5 -0
  257. package/table/Table.d.ts +4 -0
  258. package/{dist/table → table}/Table.js +12 -26
  259. package/table/Table.stories.jsx +277 -0
  260. package/table/Table.test.js +26 -0
  261. package/table/types.d.ts +21 -0
  262. package/table/types.js +5 -0
  263. package/tabs/Tab.d.ts +4 -0
  264. package/tabs/Tab.js +135 -0
  265. package/tabs/Tabs.d.ts +4 -0
  266. package/tabs/Tabs.js +467 -0
  267. package/tabs/Tabs.stories.tsx +186 -0
  268. package/tabs/Tabs.test.js +351 -0
  269. package/tabs/types.d.ts +92 -0
  270. package/tabs/types.js +5 -0
  271. package/tabs-nav/NavTabs.d.ts +8 -0
  272. package/tabs-nav/NavTabs.js +125 -0
  273. package/tabs-nav/NavTabs.stories.tsx +170 -0
  274. package/tabs-nav/NavTabs.test.js +82 -0
  275. package/tabs-nav/Tab.d.ts +4 -0
  276. package/tabs-nav/Tab.js +130 -0
  277. package/tabs-nav/types.d.ts +53 -0
  278. package/tabs-nav/types.js +5 -0
  279. package/tag/Tag.d.ts +4 -0
  280. package/tag/Tag.js +183 -0
  281. package/tag/Tag.stories.tsx +142 -0
  282. package/tag/Tag.test.js +60 -0
  283. package/tag/types.d.ts +69 -0
  284. package/tag/types.js +5 -0
  285. package/text-input/Icons.d.ts +8 -0
  286. package/text-input/Icons.js +60 -0
  287. package/text-input/Suggestion.d.ts +4 -0
  288. package/text-input/Suggestion.js +57 -0
  289. package/text-input/Suggestions.d.ts +4 -0
  290. package/text-input/Suggestions.js +134 -0
  291. package/text-input/TextInput.d.ts +4 -0
  292. package/text-input/TextInput.js +677 -0
  293. package/text-input/TextInput.stories.tsx +481 -0
  294. package/text-input/TextInput.test.js +1624 -0
  295. package/text-input/types.d.ts +197 -0
  296. package/text-input/types.js +5 -0
  297. package/textarea/Textarea.d.ts +4 -0
  298. package/{dist/textarea → textarea}/Textarea.js +50 -142
  299. package/textarea/Textarea.stories.jsx +157 -0
  300. package/textarea/Textarea.test.js +437 -0
  301. package/textarea/types.d.ts +137 -0
  302. package/textarea/types.js +5 -0
  303. package/toggle-group/ToggleGroup.d.ts +4 -0
  304. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +36 -148
  305. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  306. package/toggle-group/ToggleGroup.test.js +156 -0
  307. package/toggle-group/types.d.ts +105 -0
  308. package/toggle-group/types.js +5 -0
  309. package/typography/Typography.d.ts +4 -0
  310. package/typography/Typography.js +131 -0
  311. package/typography/Typography.stories.tsx +198 -0
  312. package/typography/types.d.ts +18 -0
  313. package/typography/types.js +5 -0
  314. package/useTheme.d.ts +2 -0
  315. package/{dist/useTheme.js → useTheme.js} +2 -2
  316. package/useTranslatedLabels.d.ts +2 -0
  317. package/useTranslatedLabels.js +20 -0
  318. package/wizard/Wizard.d.ts +4 -0
  319. package/wizard/Wizard.js +285 -0
  320. package/wizard/Wizard.stories.tsx +233 -0
  321. package/wizard/Wizard.test.js +141 -0
  322. package/wizard/types.d.ts +65 -0
  323. package/wizard/types.js +5 -0
  324. package/README.md +0 -66
  325. package/babel.config.js +0 -7
  326. package/dist/BackgroundColorContext.js +0 -46
  327. package/dist/ThemeContext.js +0 -250
  328. package/dist/V3Select/V3Select.js +0 -549
  329. package/dist/V3Select/index.d.ts +0 -27
  330. package/dist/V3Textarea/V3Textarea.js +0 -264
  331. package/dist/V3Textarea/index.d.ts +0 -27
  332. package/dist/accordion/Accordion.js +0 -353
  333. package/dist/accordion/index.d.ts +0 -28
  334. package/dist/accordion-group/AccordionGroup.js +0 -186
  335. package/dist/accordion-group/index.d.ts +0 -16
  336. package/dist/alert/index.d.ts +0 -51
  337. package/dist/badge/Badge.js +0 -63
  338. package/dist/box/Box.js +0 -156
  339. package/dist/box/index.d.ts +0 -25
  340. package/dist/button/Button.js +0 -238
  341. package/dist/button/Button.stories.js +0 -27
  342. package/dist/button/index.d.ts +0 -24
  343. package/dist/card/Card.js +0 -254
  344. package/dist/card/index.d.ts +0 -22
  345. package/dist/checkbox/Checkbox.js +0 -299
  346. package/dist/checkbox/index.d.ts +0 -24
  347. package/dist/chip/Chip.js +0 -265
  348. package/dist/chip/index.d.ts +0 -22
  349. package/dist/date/Date.js +0 -379
  350. package/dist/date/index.d.ts +0 -27
  351. package/dist/date-input/DateInput.js +0 -400
  352. package/dist/date-input/index.d.ts +0 -95
  353. package/dist/dialog/Dialog.js +0 -218
  354. package/dist/dialog/index.d.ts +0 -18
  355. package/dist/dropdown/Dropdown.js +0 -544
  356. package/dist/dropdown/index.d.ts +0 -26
  357. package/dist/file-input/FileInput.js +0 -644
  358. package/dist/file-input/FileItem.js +0 -287
  359. package/dist/file-input/index.d.ts +0 -81
  360. package/dist/footer/Footer.js +0 -421
  361. package/dist/footer/index.d.ts +0 -25
  362. package/dist/header/Header.js +0 -470
  363. package/dist/header/index.d.ts +0 -25
  364. package/dist/heading/index.d.ts +0 -17
  365. package/dist/input-text/Icons.js +0 -22
  366. package/dist/input-text/InputText.js +0 -705
  367. package/dist/input-text/index.d.ts +0 -36
  368. package/dist/layout/ApplicationLayout.js +0 -327
  369. package/dist/link/Link.js +0 -237
  370. package/dist/link/index.d.ts +0 -23
  371. package/dist/main.d.ts +0 -40
  372. package/dist/number-input/NumberInput.js +0 -136
  373. package/dist/number-input/index.d.ts +0 -113
  374. package/dist/paginator/Paginator.js +0 -305
  375. package/dist/paginator/index.d.ts +0 -20
  376. package/dist/password-input/index.d.ts +0 -94
  377. package/dist/progress-bar/ProgressBar.js +0 -242
  378. package/dist/progress-bar/index.d.ts +0 -18
  379. package/dist/radio/Radio.js +0 -209
  380. package/dist/radio/index.d.ts +0 -23
  381. package/dist/resultsetTable/ResultsetTable.js +0 -358
  382. package/dist/resultsetTable/index.d.ts +0 -19
  383. package/dist/select/Select.js +0 -1137
  384. package/dist/select/index.d.ts +0 -131
  385. package/dist/sidenav/Sidenav.js +0 -179
  386. package/dist/sidenav/index.d.ts +0 -13
  387. package/dist/slider/Slider.js +0 -404
  388. package/dist/slider/index.d.ts +0 -29
  389. package/dist/spinner/Spinner.js +0 -381
  390. package/dist/spinner/index.d.ts +0 -17
  391. package/dist/switch/Switch.js +0 -222
  392. package/dist/switch/index.d.ts +0 -24
  393. package/dist/table/index.d.ts +0 -13
  394. package/dist/tabs/Tabs.js +0 -343
  395. package/dist/tabs/index.d.ts +0 -19
  396. package/dist/tag/Tag.js +0 -282
  397. package/dist/tag/index.d.ts +0 -24
  398. package/dist/text-input/TextInput.js +0 -974
  399. package/dist/text-input/index.d.ts +0 -135
  400. package/dist/textarea/index.d.ts +0 -117
  401. package/dist/toggle/Toggle.js +0 -220
  402. package/dist/toggle/index.d.ts +0 -21
  403. package/dist/toggle-group/index.d.ts +0 -21
  404. package/dist/upload/Upload.js +0 -205
  405. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  406. package/dist/upload/buttons-upload/Icons.js +0 -40
  407. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  408. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  409. package/dist/upload/file-upload/FileToUpload.js +0 -189
  410. package/dist/upload/file-upload/Icons.js +0 -66
  411. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  412. package/dist/upload/index.d.ts +0 -15
  413. package/dist/upload/transaction/Icons.js +0 -160
  414. package/dist/upload/transaction/Transaction.js +0 -148
  415. package/dist/upload/transactions/Transactions.js +0 -138
  416. package/dist/wizard/Icons.js +0 -65
  417. package/dist/wizard/Wizard.js +0 -405
  418. package/dist/wizard/index.d.ts +0 -18
  419. package/test/Accordion.test.js +0 -33
  420. package/test/AccordionGroup.test.js +0 -125
  421. package/test/Alert.test.js +0 -53
  422. package/test/Box.test.js +0 -10
  423. package/test/Button.test.js +0 -18
  424. package/test/Card.test.js +0 -30
  425. package/test/Checkbox.test.js +0 -45
  426. package/test/Chip.test.js +0 -25
  427. package/test/Date.test.js +0 -395
  428. package/test/DateInput.test.js +0 -242
  429. package/test/Dialog.test.js +0 -23
  430. package/test/Dropdown.test.js +0 -145
  431. package/test/FileInput.test.js +0 -201
  432. package/test/Footer.test.js +0 -94
  433. package/test/Header.test.js +0 -34
  434. package/test/Heading.test.js +0 -83
  435. package/test/InputText.test.js +0 -239
  436. package/test/Link.test.js +0 -43
  437. package/test/NumberInput.test.js +0 -259
  438. package/test/Paginator.test.js +0 -181
  439. package/test/PasswordInput.test.js +0 -83
  440. package/test/ProgressBar.test.js +0 -35
  441. package/test/Radio.test.js +0 -37
  442. package/test/ResultsetTable.test.js +0 -330
  443. package/test/Select.test.js +0 -928
  444. package/test/Sidenav.test.js +0 -45
  445. package/test/Slider.test.js +0 -74
  446. package/test/Spinner.test.js +0 -32
  447. package/test/Switch.test.js +0 -45
  448. package/test/Table.test.js +0 -36
  449. package/test/Tabs.test.js +0 -109
  450. package/test/Tag.test.js +0 -32
  451. package/test/TextInput.test.js +0 -731
  452. package/test/Textarea.test.js +0 -193
  453. package/test/ToggleGroup.test.js +0 -85
  454. package/test/Upload.test.js +0 -60
  455. package/test/V3Select.test.js +0 -212
  456. package/test/V3TextArea.test.js +0 -51
  457. package/test/Wizard.test.js +0 -130
  458. package/test/mocks/pngMock.js +0 -1
  459. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,305 @@
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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _Dropdown = _interopRequireDefault(require("../dropdown/Dropdown"));
23
+
24
+ var _Icons = require("./Icons");
25
+
26
+ var _variables = require("../common/variables.js");
27
+
28
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
29
+
30
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
31
+
32
+ var _BackgroundColorContext = _interopRequireWildcard(require("../BackgroundColorContext"));
33
+
34
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
35
+
36
+ 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); }
37
+
38
+ 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; }
39
+
40
+ var closeIcon = /*#__PURE__*/_react["default"].createElement("svg", {
41
+ xmlns: "http://www.w3.org/2000/svg",
42
+ height: "24",
43
+ viewBox: "0 0 24 24",
44
+ width: "24"
45
+ }, /*#__PURE__*/_react["default"].createElement("path", {
46
+ 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"
47
+ }), /*#__PURE__*/_react["default"].createElement("path", {
48
+ d: "M0 0h24v24H0z",
49
+ fill: "none"
50
+ }));
51
+
52
+ var hamburgerIcon = /*#__PURE__*/_react["default"].createElement("svg", {
53
+ xmlns: "http://www.w3.org/2000/svg",
54
+ viewBox: "0 0 24 24",
55
+ width: "24",
56
+ height: "24"
57
+ }, /*#__PURE__*/_react["default"].createElement("path", {
58
+ 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"
59
+ }));
60
+
61
+ var Dropdown = function Dropdown(props) {
62
+ return /*#__PURE__*/_react["default"].createElement(HeaderDropdown, null, /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], props));
63
+ };
64
+
65
+ var HeaderDropdown = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n button {\n background-color: transparent;\n :hover {\n background-color: transparent;\n }\n }\n"])));
66
+
67
+ var getLogoElement = function getLogoElement(themeInput, logoLabel) {
68
+ if (!themeInput) return _Icons.dxcLogo;else if (typeof themeInput === "string") return /*#__PURE__*/_react["default"].createElement(LogoImg, {
69
+ alt: logoLabel,
70
+ src: themeInput
71
+ });else return themeInput;
72
+ };
73
+
74
+ var Content = function Content(_ref) {
75
+ var isResponsive = _ref.isResponsive,
76
+ responsiveContent = _ref.responsiveContent,
77
+ handleMenu = _ref.handleMenu,
78
+ padding = _ref.padding,
79
+ content = _ref.content;
80
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
81
+ return isResponsive ? /*#__PURE__*/_react["default"].createElement(MenuContent, {
82
+ backgroundType: backgroundType
83
+ }, responsiveContent(handleMenu)) : /*#__PURE__*/_react["default"].createElement(ContentContainer, {
84
+ padding: padding,
85
+ backgroundType: backgroundType
86
+ }, content);
87
+ };
88
+
89
+ var DxcHeader = function DxcHeader(_ref2) {
90
+ var _ref2$underlined = _ref2.underlined,
91
+ underlined = _ref2$underlined === void 0 ? false : _ref2$underlined,
92
+ content = _ref2.content,
93
+ responsiveContent = _ref2.responsiveContent,
94
+ onClick = _ref2.onClick,
95
+ margin = _ref2.margin,
96
+ padding = _ref2.padding,
97
+ _ref2$tabIndex = _ref2.tabIndex,
98
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
99
+ var colorsTheme = (0, _useTheme["default"])();
100
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
101
+ var ref = (0, _react.useRef)(null);
102
+
103
+ var _useState = (0, _react.useState)(false),
104
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
105
+ isResponsive = _useState2[0],
106
+ setIsResponsive = _useState2[1];
107
+
108
+ var _useState3 = (0, _react.useState)(false),
109
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
110
+ isMenuVisible = _useState4[0],
111
+ setIsMenuVisible = _useState4[1];
112
+
113
+ var handleResize = function handleResize() {
114
+ setIsResponsive(window.matchMedia("(max-width: ".concat(_variables.responsiveSizes.medium, "rem)")).matches);
115
+ };
116
+
117
+ var handleMenu = function handleMenu() {
118
+ if (isResponsive && !isMenuVisible) {
119
+ setIsMenuVisible(!isMenuVisible);
120
+ } else {
121
+ setIsMenuVisible(!isMenuVisible);
122
+ }
123
+ };
124
+
125
+ var headerLogo = (0, _react.useMemo)(function () {
126
+ return getLogoElement(colorsTheme.header.logo, translatedLabels.formFields.logoAlternativeText);
127
+ }, [colorsTheme.header.logo]);
128
+ var headerResponsiveLogo = (0, _react.useMemo)(function () {
129
+ return getLogoElement(colorsTheme.header.logoResponsive, translatedLabels.formFields.logoAlternativeText);
130
+ }, [colorsTheme.header.logoResponsive]);
131
+ (0, _react.useEffect)(function () {
132
+ handleResize();
133
+ window.addEventListener("resize", handleResize);
134
+ return function () {
135
+ window.removeEventListener("resize", handleResize);
136
+ };
137
+ }, []);
138
+ (0, _react.useEffect)(function () {
139
+ !isResponsive && setIsMenuVisible(false);
140
+ }, [isResponsive]);
141
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
142
+ theme: colorsTheme.header
143
+ }, /*#__PURE__*/_react["default"].createElement(HeaderContainer, {
144
+ underlined: underlined,
145
+ margin: margin,
146
+ ref: ref
147
+ }, /*#__PURE__*/_react["default"].createElement(LogoAnchor, {
148
+ tabIndex: onClick ? tabIndex : -1,
149
+ interactuable: onClick ? true : false,
150
+ onClick: onClick
151
+ }, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, headerLogo)), isResponsive && responsiveContent && /*#__PURE__*/_react["default"].createElement(MainContainer, null, /*#__PURE__*/_react["default"].createElement(ChildContainer, {
152
+ padding: padding
153
+ }, /*#__PURE__*/_react["default"].createElement(HamburguerTrigger, {
154
+ tabIndex: tabIndex,
155
+ onClick: handleMenu
156
+ }, hamburgerIcon, translatedLabels.header.hamburguerTitle)), /*#__PURE__*/_react["default"].createElement(ResponsiveMenu, {
157
+ hasVisibility: isMenuVisible
158
+ }, /*#__PURE__*/_react["default"].createElement(ResponsiveIconsContainer, null, /*#__PURE__*/_react["default"].createElement(ResponsiveLogoContainer, null, headerResponsiveLogo), /*#__PURE__*/_react["default"].createElement(CloseAction, {
159
+ tabIndex: tabIndex,
160
+ onClick: handleMenu,
161
+ "aria-label": translatedLabels.header.closeIcon
162
+ }, closeIcon)), /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
163
+ color: colorsTheme.header.menuBackgroundColor
164
+ }, /*#__PURE__*/_react["default"].createElement(Content, {
165
+ isResponsive: isResponsive,
166
+ responsiveContent: responsiveContent,
167
+ handleMenu: handleMenu,
168
+ padding: padding,
169
+ content: content
170
+ }))), /*#__PURE__*/_react["default"].createElement(Overlay, {
171
+ onClick: handleMenu,
172
+ hasVisibility: isMenuVisible
173
+ })), !isResponsive && /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
174
+ color: colorsTheme.header.backgroundColor
175
+ }, /*#__PURE__*/_react["default"].createElement(Content, {
176
+ isResponsive: isResponsive,
177
+ responsiveContent: responsiveContent,
178
+ handleMenu: handleMenu,
179
+ padding: padding,
180
+ content: content
181
+ }))));
182
+ };
183
+
184
+ DxcHeader.Dropdown = Dropdown;
185
+
186
+ var HeaderContainer = _styledComponents["default"].header(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: ", ";\n padding: ", ";\n background-color: ", ";\n border-bottom: ", ";\n min-height: ", ";\n box-shadow: none;\n display: flex;\n align-items: center;\n flex-direction: row;\n justify-content: space-between;\n box-sizing: border-box;\n"])), function (props) {
187
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
188
+ }, function (props) {
189
+ return "".concat(props.theme.paddingTop, " ").concat(props.theme.paddingRight, " ").concat(props.theme.paddingBottom, " ").concat(props.theme.paddingLeft);
190
+ }, function (props) {
191
+ return props.theme.backgroundColor;
192
+ }, function (props) {
193
+ return props.underlined && "".concat(props.theme.underlinedThickness, " ").concat(props.theme.underlinedStyle, " ").concat(props.theme.underlinedColor);
194
+ }, function (props) {
195
+ return props.theme.minHeight;
196
+ });
197
+
198
+ var LogoAnchor = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n"])), function (props) {
199
+ return props.interactuable ? "cursor: pointer" : "cursor: default; outline:none";
200
+ });
201
+
202
+ var LogoImg = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
203
+ return props.theme.logoHeight;
204
+ }, function (props) {
205
+ return props.theme.logoWidth;
206
+ });
207
+
208
+ var LogoContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n vertical-align: middle;\n"])), function (props) {
209
+ return props.theme.logoHeight;
210
+ }, function (props) {
211
+ return props.theme.logoWidth;
212
+ });
213
+
214
+ var ChildContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n width: calc(100% - 186px);\n display: flex;\n align-items: center;\n flex-grow: 1;\n\n justify-content: flex-end;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
215
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
216
+ }, function (props) {
217
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
218
+ }, function (props) {
219
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
220
+ }, function (props) {
221
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
222
+ }, function (props) {
223
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
224
+ });
225
+
226
+ var ContentContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n width: calc(100% - 186px);\n display: flex;\n align-items: center;\n flex-grow: 1;\n color: ", ";\n\n justify-content: flex-end;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
227
+ return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
228
+ }, function (props) {
229
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
230
+ }, function (props) {
231
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
232
+ }, function (props) {
233
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
234
+ }, function (props) {
235
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
236
+ }, function (props) {
237
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
238
+ });
239
+
240
+ var HamburguerTrigger = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 54px;\n cursor: pointer;\n border: 1px solid transparent;\n border-radius: 2px;\n background-color: transparent;\n :hover {\n background-color: ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n & > svg {\n fill: ", ";\n }\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n text-transform: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
241
+ return props.theme.hamburguerHoverColor;
242
+ }, function (props) {
243
+ return props.theme.hamburguerFocusColor;
244
+ }, function (props) {
245
+ return props.theme.hamburguerIconColor;
246
+ }, function (props) {
247
+ return props.theme.hamburguerFontFamily;
248
+ }, function (props) {
249
+ return props.theme.hamburguerFontStyle;
250
+ }, function (props) {
251
+ return props.theme.hamburguerFontSize;
252
+ }, function (props) {
253
+ return props.theme.hamburguerTextTransform;
254
+ }, function (props) {
255
+ return props.theme.hamburguerFontWeight;
256
+ }, function (props) {
257
+ return props.theme.hamburguerFontColor;
258
+ });
259
+
260
+ var MainContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
261
+
262
+ var ResponsiveMenu = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n position: fixed;\n top: 0;\n right: 0;\n z-index: ", ";\n\n @media (max-width: ", "rem) and (min-width: ", "rem) {\n //tablet\n width: ", ";\n }\n\n @media (not((max-width: ", "rem) and (min-width: ", "rem))) {\n //mobile phones\n width: ", ";\n }\n\n height: 100vh;\n padding: 20px;\n transform: ", ";\n opacity: ", ";\n transition-property: transform, opacity;\n transition-duration: 0.6s;\n transition-timing-function: ease-in-out;\n box-sizing: border-box;\n"])), function (props) {
263
+ return props.theme.menuBackgroundColor;
264
+ }, function (props) {
265
+ return props.theme.menuZindex;
266
+ }, _variables.responsiveSizes.large, _variables.responsiveSizes.small, function (props) {
267
+ return props.theme.menuTabletWidth;
268
+ }, _variables.responsiveSizes.large, _variables.responsiveSizes.small, function (props) {
269
+ return props.theme.menuMobileWidth;
270
+ }, function (props) {
271
+ return props.hasVisibility ? "translateX(0)" : "translateX(100vw)";
272
+ }, function (props) {
273
+ return props.hasVisibility ? "1" : "0.96";
274
+ });
275
+
276
+ var ResponsiveLogoContainer = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n display: flex;\n"])), function (props) {
277
+ return props.theme.logoHeight;
278
+ }, function (props) {
279
+ return props.theme.logoWidth;
280
+ });
281
+
282
+ var ResponsiveIconsContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n"])));
283
+
284
+ var CloseAction = _styledComponents["default"].button(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n padding: 6px;\n height: 36px;\n width: 36px;\n border: 1px solid transparent;\n border-radius: 2px;\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n background-color: transparent;\n :focus,\n :focus-visible {\n outline: ", " auto 1px;\n }\n"])), function (props) {
285
+ return props.theme.hamburguerFocusColor;
286
+ });
287
+
288
+ var MenuContent = _styledComponents["default"].div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n height: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n color: ", ";\n"])), function (props) {
289
+ return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
290
+ });
291
+
292
+ var Overlay = _styledComponents["default"].div(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: ", ";\n opacity: ", " !important;\n visibility: ", ";\n opacity: ", ";\n\n @media (max-width: ", "rem) {\n //mobile phones\n display: none;\n }\n\n transition: opacity 0.2s 0.2s ease-in-out;\n z-index: ", ";\n"])), function (props) {
293
+ return props.theme.overlayColor;
294
+ }, function (props) {
295
+ return props.theme.overlayOpacity;
296
+ }, function (props) {
297
+ return props.hasVisibility ? "visible" : "hidden";
298
+ }, function (props) {
299
+ return props.hasVisibility ? "1" : "0";
300
+ }, _variables.responsiveSizes.small, function (props) {
301
+ return props.theme.overlayZindex;
302
+ });
303
+
304
+ var _default = DxcHeader;
305
+ exports["default"] = _default;
@@ -0,0 +1,172 @@
1
+ import React from "react";
2
+ import DxcHeader from "./Header";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { userEvent, waitFor, within } from "@storybook/testing-library";
6
+
7
+ export default {
8
+ title: "Header",
9
+ component: DxcHeader,
10
+ };
11
+
12
+ const options: any = [
13
+ {
14
+ value: 1,
15
+ label: "Amazon",
16
+ },
17
+ ];
18
+
19
+ export const Chromatic = () => (
20
+ <>
21
+ <ExampleContainer>
22
+ <Title title="Default with dropdown" theme="light" level={4} />
23
+ <DxcHeader content={<DxcHeader.Dropdown options={options} label="Default Dropdown" />} />
24
+ </ExampleContainer>
25
+ <ExampleContainer>
26
+ <Title title="Underlined with text" theme="light" level={4} />
27
+ <DxcHeader underlined content={<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>} />
28
+ </ExampleContainer>
29
+ <Title title="Margins" theme="light" level={2} />
30
+ <ExampleContainer>
31
+ <Title title="Xxsmall margin" theme="light" level={4} />
32
+ <DxcHeader underlined margin="xxsmall" />
33
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
34
+ </ExampleContainer>
35
+ <ExampleContainer>
36
+ <Title title="Xsmall margin" theme="light" level={4} />
37
+ <DxcHeader underlined margin="xsmall" />
38
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
39
+ </ExampleContainer>
40
+ <ExampleContainer>
41
+ <Title title="Small margin" theme="light" level={4} />
42
+ <DxcHeader underlined margin="small" />
43
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
44
+ </ExampleContainer>
45
+ <ExampleContainer>
46
+ <Title title="Medium margin" theme="light" level={4} />
47
+ <DxcHeader underlined margin="medium" />
48
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
49
+ </ExampleContainer>
50
+ <ExampleContainer>
51
+ <Title title="Large margin" theme="light" level={4} />
52
+ <DxcHeader underlined margin="large" />
53
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
54
+ </ExampleContainer>
55
+ <ExampleContainer>
56
+ <Title title="Xlarge margin" theme="light" level={4} />
57
+ <DxcHeader underlined margin="xlarge" />
58
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
59
+ </ExampleContainer>
60
+ <ExampleContainer>
61
+ <Title title="Xxlarge margin" theme="light" level={4} />
62
+ <DxcHeader underlined margin="xxlarge" />
63
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
64
+ </ExampleContainer>
65
+
66
+ <Title title="Paddings" theme="light" level={2} />
67
+ <ExampleContainer>
68
+ <Title title="Xxsmall padding" theme="light" level={4} />
69
+ <DxcHeader underlined padding="xxsmall" />
70
+ </ExampleContainer>
71
+ <ExampleContainer>
72
+ <Title title="Xsmall padding" theme="light" level={4} />
73
+ <DxcHeader underlined padding="xsmall" />
74
+ </ExampleContainer>
75
+ <ExampleContainer>
76
+ <Title title="Small padding" theme="light" level={4} />
77
+ <DxcHeader underlined padding="small" />
78
+ </ExampleContainer>
79
+ <ExampleContainer>
80
+ <Title title="Medium padding" theme="light" level={4} />
81
+ <DxcHeader underlined padding="medium" />
82
+ </ExampleContainer>
83
+ <ExampleContainer>
84
+ <Title title="Large padding" theme="light" level={4} />
85
+ <DxcHeader underlined padding="large" />
86
+ </ExampleContainer>
87
+ <ExampleContainer>
88
+ <Title title="Xlarge padding" theme="light" level={4} />
89
+ <DxcHeader underlined padding="xlarge" />
90
+ </ExampleContainer>
91
+ <ExampleContainer>
92
+ <Title title="Xxlarge padding" theme="light" level={4} />
93
+ <DxcHeader underlined padding="xxlarge" />
94
+ </ExampleContainer>
95
+ </>
96
+ );
97
+
98
+ export const ResponsiveHeader = () => (
99
+ <ExampleContainer>
100
+ <Title title="Responsive" theme="light" level={4} />
101
+ <DxcHeader
102
+ content={<DxcHeader.Dropdown options={options} label="Default Dropdown" />}
103
+ responsiveContent={(closeHandler) => <DxcHeader.Dropdown options={options} label="Default Dropdown" />}
104
+ underlined
105
+ />
106
+ </ExampleContainer>
107
+ );
108
+
109
+ const RespHeaderFocus = () => (
110
+ <ExampleContainer pseudoState="pseudo-focus">
111
+ <Title title="Responsive focus" theme="light" level={4} />
112
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
113
+ </ExampleContainer>
114
+ );
115
+
116
+ const RespHeaderHover = () => (
117
+ <ExampleContainer pseudoState="pseudo-hover">
118
+ <Title title="Responsive hover" theme="light" level={4} />
119
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
120
+ </ExampleContainer>
121
+ );
122
+
123
+ const RespHeaderMenu = () => (
124
+ <ExampleContainer>
125
+ <Title title="Responsive menu" theme="light" level={4} />
126
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
127
+ </ExampleContainer>
128
+ );
129
+
130
+ ResponsiveHeader.parameters = {
131
+ viewport: {
132
+ defaultViewport: "iphonex",
133
+ },
134
+ chromatic: { viewports: [375] },
135
+ };
136
+
137
+ export const ResponsiveHeaderFocus = RespHeaderFocus.bind({});
138
+ ResponsiveHeaderFocus.parameters = {
139
+ viewport: {
140
+ defaultViewport: "iphonex",
141
+ },
142
+ chromatic: { viewports: [375] },
143
+ };
144
+ ResponsiveHeaderFocus.play = async ({ canvasElement }) => {
145
+ const canvas = within(canvasElement);
146
+ await waitFor(() => canvas.findByText("Menu"));
147
+ };
148
+
149
+ export const ResponsiveHeaderHover = RespHeaderHover.bind({});
150
+ ResponsiveHeaderHover.parameters = {
151
+ viewport: {
152
+ defaultViewport: "iphonex",
153
+ },
154
+ chromatic: { viewports: [375] },
155
+ };
156
+ ResponsiveHeaderHover.play = async ({ canvasElement }) => {
157
+ const canvas = within(canvasElement);
158
+ await waitFor(() => canvas.findByText("Menu"));
159
+ };
160
+
161
+ export const ResponsiveHeaderMenu = RespHeaderMenu.bind({});
162
+ ResponsiveHeaderMenu.parameters = {
163
+ viewport: {
164
+ defaultViewport: "iphonex",
165
+ },
166
+ chromatic: { viewports: [375] },
167
+ };
168
+ ResponsiveHeaderMenu.play = async ({ canvasElement }) => {
169
+ const canvas = within(canvasElement);
170
+ await waitFor(() => canvas.findByText("Menu"));
171
+ await userEvent.click(canvas.getByText("Menu"));
172
+ };
@@ -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"));
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(closeMenu) {
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;