@dxc-technology/halstack-react 0.0.0-5b8b8e5 → 0.0.0-5beed19

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 (485) 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 +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +226 -0
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +168 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +293 -0
  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 +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/button/Button.js +174 -0
  40. package/button/Button.stories.tsx +274 -0
  41. package/button/Button.test.js +35 -0
  42. package/button/types.d.ts +53 -0
  43. package/button/types.js +5 -0
  44. package/card/Card.d.ts +4 -0
  45. package/card/Card.js +161 -0
  46. package/card/Card.stories.tsx +201 -0
  47. package/card/Card.test.js +50 -0
  48. package/card/ice-cream.jpg +0 -0
  49. package/card/types.d.ts +67 -0
  50. package/card/types.js +5 -0
  51. package/checkbox/Checkbox.d.ts +4 -0
  52. package/checkbox/Checkbox.js +257 -0
  53. package/checkbox/Checkbox.stories.tsx +188 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +161 -0
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/{dist/common → common}/OpenSans.css +0 -0
  64. package/{dist/common → common}/RequiredComponent.js +3 -11
  65. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  68. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  75. package/{dist/common → common}/utils.js +0 -0
  76. package/common/variables.js +1470 -0
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +372 -0
  79. package/date-input/DateInput.stories.tsx +138 -0
  80. package/date-input/DateInput.test.js +479 -0
  81. package/date-input/types.d.ts +107 -0
  82. package/date-input/types.js +5 -0
  83. package/dialog/Dialog.d.ts +4 -0
  84. package/dialog/Dialog.js +138 -0
  85. package/dialog/Dialog.stories.tsx +212 -0
  86. package/dialog/Dialog.test.js +40 -0
  87. package/dialog/types.d.ts +43 -0
  88. package/dialog/types.js +5 -0
  89. package/dropdown/Dropdown.d.ts +4 -0
  90. package/dropdown/Dropdown.js +391 -0
  91. package/dropdown/Dropdown.stories.tsx +249 -0
  92. package/dropdown/Dropdown.test.js +189 -0
  93. package/dropdown/types.d.ts +80 -0
  94. package/dropdown/types.js +5 -0
  95. package/file-input/FileInput.d.ts +4 -0
  96. package/file-input/FileInput.js +593 -0
  97. package/file-input/FileInput.stories.tsx +507 -0
  98. package/file-input/FileInput.test.js +457 -0
  99. package/file-input/FileItem.d.ts +14 -0
  100. package/file-input/FileItem.js +186 -0
  101. package/file-input/types.d.ts +112 -0
  102. package/file-input/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +185 -0
  105. package/footer/Footer.stories.tsx +130 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/footer/Icons.js +77 -0
  109. package/footer/types.d.ts +65 -0
  110. package/footer/types.js +5 -0
  111. package/header/Header.d.ts +7 -0
  112. package/header/Header.js +303 -0
  113. package/header/Header.stories.tsx +172 -0
  114. package/header/Header.test.js +79 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/header/Icons.js +34 -0
  117. package/header/types.d.ts +47 -0
  118. package/header/types.js +5 -0
  119. package/heading/Heading.d.ts +4 -0
  120. package/heading/Heading.js +159 -0
  121. package/heading/Heading.stories.tsx +54 -0
  122. package/heading/Heading.test.js +186 -0
  123. package/heading/types.d.ts +33 -0
  124. package/heading/types.js +5 -0
  125. package/inline/Inline.d.ts +4 -0
  126. package/inline/Inline.js +54 -0
  127. package/inline/Inline.stories.tsx +240 -0
  128. package/inline/types.d.ts +32 -0
  129. package/inline/types.js +5 -0
  130. package/inset/Inset.d.ts +3 -0
  131. package/inset/Inset.js +51 -0
  132. package/inset/Inset.stories.tsx +229 -0
  133. package/inset/types.d.ts +37 -0
  134. package/inset/types.js +5 -0
  135. package/layout/ApplicationLayout.d.ts +11 -0
  136. package/layout/ApplicationLayout.js +199 -0
  137. package/layout/ApplicationLayout.stories.tsx +126 -0
  138. package/layout/Icons.d.ts +5 -0
  139. package/layout/Icons.js +66 -0
  140. package/layout/SidenavContext.d.ts +5 -0
  141. package/layout/SidenavContext.js +19 -0
  142. package/layout/types.d.ts +52 -0
  143. package/layout/types.js +5 -0
  144. package/link/Link.d.ts +4 -0
  145. package/link/Link.js +136 -0
  146. package/link/Link.stories.tsx +186 -0
  147. package/link/Link.test.js +83 -0
  148. package/link/types.d.ts +54 -0
  149. package/link/types.js +5 -0
  150. package/list/List.d.ts +4 -0
  151. package/list/List.js +47 -0
  152. package/list/List.stories.tsx +89 -0
  153. package/list/types.d.ts +7 -0
  154. package/list/types.js +5 -0
  155. package/main.d.ts +48 -0
  156. package/{dist/main.js → main.js} +166 -76
  157. package/number-input/NumberInput.d.ts +4 -0
  158. package/number-input/NumberInput.js +76 -0
  159. package/number-input/NumberInput.stories.tsx +115 -0
  160. package/number-input/NumberInput.test.js +506 -0
  161. package/number-input/NumberInputContext.d.ts +4 -0
  162. package/number-input/NumberInputContext.js +19 -0
  163. package/number-input/numberInputContextTypes.d.ts +19 -0
  164. package/number-input/numberInputContextTypes.js +5 -0
  165. package/number-input/types.d.ts +124 -0
  166. package/number-input/types.js +5 -0
  167. package/package.json +39 -26
  168. package/paginator/Icons.js +66 -0
  169. package/paginator/Paginator.d.ts +4 -0
  170. package/paginator/Paginator.js +171 -0
  171. package/paginator/Paginator.stories.tsx +63 -0
  172. package/paginator/Paginator.test.js +308 -0
  173. package/paginator/types.d.ts +38 -0
  174. package/paginator/types.js +5 -0
  175. package/password-input/PasswordInput.d.ts +4 -0
  176. package/password-input/PasswordInput.js +166 -0
  177. package/password-input/PasswordInput.stories.tsx +131 -0
  178. package/password-input/PasswordInput.test.js +180 -0
  179. package/password-input/types.d.ts +110 -0
  180. package/password-input/types.js +5 -0
  181. package/progress-bar/ProgressBar.d.ts +4 -0
  182. package/progress-bar/ProgressBar.js +170 -0
  183. package/progress-bar/ProgressBar.stories.jsx +58 -0
  184. package/progress-bar/ProgressBar.test.js +65 -0
  185. package/progress-bar/types.d.ts +37 -0
  186. package/progress-bar/types.js +5 -0
  187. package/quick-nav/QuickNav.d.ts +4 -0
  188. package/quick-nav/QuickNav.js +112 -0
  189. package/quick-nav/QuickNav.stories.tsx +237 -0
  190. package/quick-nav/types.d.ts +21 -0
  191. package/quick-nav/types.js +5 -0
  192. package/radio-group/Radio.d.ts +4 -0
  193. package/radio-group/Radio.js +141 -0
  194. package/radio-group/RadioGroup.d.ts +4 -0
  195. package/radio-group/RadioGroup.js +282 -0
  196. package/radio-group/RadioGroup.stories.tsx +100 -0
  197. package/radio-group/RadioGroup.test.js +695 -0
  198. package/radio-group/types.d.ts +114 -0
  199. package/radio-group/types.js +5 -0
  200. package/resultsetTable/ResultsetTable.d.ts +4 -0
  201. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +85 -163
  202. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  203. package/resultsetTable/ResultsetTable.test.js +348 -0
  204. package/resultsetTable/types.d.ts +67 -0
  205. package/resultsetTable/types.js +5 -0
  206. package/row/Row.d.ts +3 -0
  207. package/row/Row.js +127 -0
  208. package/row/Row.stories.tsx +237 -0
  209. package/row/types.d.ts +28 -0
  210. package/row/types.js +5 -0
  211. package/select/Icons.d.ts +10 -0
  212. package/select/Icons.js +93 -0
  213. package/select/Listbox.d.ts +4 -0
  214. package/select/Listbox.js +175 -0
  215. package/select/Option.d.ts +4 -0
  216. package/select/Option.js +110 -0
  217. package/select/Select.d.ts +4 -0
  218. package/select/Select.js +660 -0
  219. package/select/Select.stories.tsx +626 -0
  220. package/select/Select.test.js +2162 -0
  221. package/select/types.d.ts +212 -0
  222. package/select/types.js +5 -0
  223. package/sidenav/Sidenav.d.ts +9 -0
  224. package/sidenav/Sidenav.js +147 -0
  225. package/sidenav/Sidenav.stories.tsx +182 -0
  226. package/sidenav/Sidenav.test.js +56 -0
  227. package/sidenav/types.d.ts +50 -0
  228. package/sidenav/types.js +5 -0
  229. package/slider/Slider.d.ts +4 -0
  230. package/slider/Slider.js +318 -0
  231. package/slider/Slider.stories.tsx +177 -0
  232. package/slider/Slider.test.js +150 -0
  233. package/slider/types.d.ts +82 -0
  234. package/slider/types.js +5 -0
  235. package/spinner/Spinner.d.ts +4 -0
  236. package/spinner/Spinner.js +250 -0
  237. package/spinner/Spinner.stories.jsx +103 -0
  238. package/spinner/Spinner.test.js +64 -0
  239. package/spinner/types.d.ts +32 -0
  240. package/spinner/types.js +5 -0
  241. package/stack/Stack.d.ts +4 -0
  242. package/stack/Stack.js +50 -0
  243. package/stack/Stack.stories.tsx +203 -0
  244. package/stack/types.d.ts +28 -0
  245. package/stack/types.js +5 -0
  246. package/switch/Switch.d.ts +4 -0
  247. package/switch/Switch.js +195 -0
  248. package/switch/Switch.stories.tsx +160 -0
  249. package/switch/Switch.test.js +98 -0
  250. package/switch/types.d.ts +62 -0
  251. package/switch/types.js +5 -0
  252. package/table/Table.d.ts +4 -0
  253. package/table/Table.js +118 -0
  254. package/table/Table.stories.jsx +277 -0
  255. package/table/Table.test.js +26 -0
  256. package/table/types.d.ts +21 -0
  257. package/table/types.js +5 -0
  258. package/tabs/Tabs.d.ts +4 -0
  259. package/tabs/Tabs.js +211 -0
  260. package/tabs/Tabs.stories.tsx +112 -0
  261. package/tabs/Tabs.test.js +140 -0
  262. package/tabs/types.d.ts +82 -0
  263. package/tabs/types.js +5 -0
  264. package/tabs-nav/NavTabs.d.ts +8 -0
  265. package/tabs-nav/NavTabs.js +125 -0
  266. package/tabs-nav/NavTabs.stories.tsx +170 -0
  267. package/tabs-nav/NavTabs.test.js +82 -0
  268. package/tabs-nav/Tab.d.ts +4 -0
  269. package/tabs-nav/Tab.js +132 -0
  270. package/tabs-nav/types.d.ts +53 -0
  271. package/tabs-nav/types.js +5 -0
  272. package/tag/Tag.d.ts +4 -0
  273. package/tag/Tag.js +183 -0
  274. package/tag/Tag.stories.tsx +142 -0
  275. package/tag/Tag.test.js +60 -0
  276. package/tag/types.d.ts +69 -0
  277. package/tag/types.js +5 -0
  278. package/text/Text.d.ts +7 -0
  279. package/text/Text.js +30 -0
  280. package/text/Text.stories.tsx +19 -0
  281. package/text-input/Suggestion.d.ts +4 -0
  282. package/text-input/Suggestion.js +55 -0
  283. package/text-input/TextInput.d.ts +4 -0
  284. package/text-input/TextInput.js +770 -0
  285. package/text-input/TextInput.stories.tsx +474 -0
  286. package/text-input/TextInput.test.js +1712 -0
  287. package/text-input/types.d.ts +178 -0
  288. package/text-input/types.js +5 -0
  289. package/textarea/Textarea.d.ts +4 -0
  290. package/textarea/Textarea.js +277 -0
  291. package/textarea/Textarea.stories.jsx +157 -0
  292. package/textarea/Textarea.test.js +437 -0
  293. package/textarea/types.d.ts +137 -0
  294. package/textarea/types.js +5 -0
  295. package/toggle-group/ToggleGroup.d.ts +4 -0
  296. package/toggle-group/ToggleGroup.js +215 -0
  297. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  298. package/toggle-group/ToggleGroup.test.js +156 -0
  299. package/toggle-group/types.d.ts +105 -0
  300. package/toggle-group/types.js +5 -0
  301. package/useTheme.d.ts +2 -0
  302. package/{dist/useTheme.js → useTheme.js} +2 -2
  303. package/useTranslatedLabels.d.ts +2 -0
  304. package/useTranslatedLabels.js +20 -0
  305. package/wizard/Wizard.d.ts +4 -0
  306. package/wizard/Wizard.js +292 -0
  307. package/wizard/Wizard.stories.tsx +214 -0
  308. package/wizard/Wizard.test.js +141 -0
  309. package/wizard/types.d.ts +64 -0
  310. package/wizard/types.js +5 -0
  311. package/README.md +0 -66
  312. package/babel.config.js +0 -8
  313. package/dist/BackgroundColorContext.js +0 -46
  314. package/dist/ThemeContext.js +0 -216
  315. package/dist/accordion/Accordion.js +0 -284
  316. package/dist/accordion/Accordion.stories.js +0 -207
  317. package/dist/accordion/readme.md +0 -96
  318. package/dist/accordion-group/AccordionGroup.js +0 -154
  319. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  320. package/dist/accordion-group/readme.md +0 -70
  321. package/dist/alert/Alert.js +0 -318
  322. package/dist/alert/Alert.stories.js +0 -158
  323. package/dist/alert/close.svg +0 -4
  324. package/dist/alert/error.svg +0 -4
  325. package/dist/alert/info.svg +0 -4
  326. package/dist/alert/readme.md +0 -43
  327. package/dist/alert/success.svg +0 -4
  328. package/dist/alert/warning.svg +0 -4
  329. package/dist/badge/Badge.js +0 -40
  330. package/dist/box/Box.js +0 -147
  331. package/dist/button/Button.js +0 -219
  332. package/dist/button/Button.stories.js +0 -224
  333. package/dist/button/readme.md +0 -93
  334. package/dist/card/Card.js +0 -247
  335. package/dist/checkbox/Checkbox.js +0 -233
  336. package/dist/checkbox/Checkbox.stories.js +0 -144
  337. package/dist/checkbox/readme.md +0 -116
  338. package/dist/chip/Chip.js +0 -223
  339. package/dist/common/variables.js +0 -523
  340. package/dist/date/Date.js +0 -357
  341. package/dist/date/Date.stories.js +0 -205
  342. package/dist/date/calendar.svg +0 -1
  343. package/dist/date/calendar_dark.svg +0 -1
  344. package/dist/date/readme.md +0 -73
  345. package/dist/dialog/Dialog.js +0 -203
  346. package/dist/dialog/Dialog.stories.js +0 -217
  347. package/dist/dialog/readme.md +0 -32
  348. package/dist/dropdown/Dropdown.js +0 -456
  349. package/dist/dropdown/Dropdown.stories.js +0 -249
  350. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  351. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  352. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  353. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  354. package/dist/dropdown/readme.md +0 -69
  355. package/dist/footer/Footer.js +0 -379
  356. package/dist/footer/Footer.stories.js +0 -94
  357. package/dist/footer/dxc_logo_wht.png +0 -0
  358. package/dist/footer/readme.md +0 -41
  359. package/dist/header/Header.js +0 -385
  360. package/dist/header/Header.stories.js +0 -176
  361. package/dist/header/close_icon.svg +0 -1
  362. package/dist/header/dxc_logo_black.png +0 -0
  363. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  364. package/dist/header/dxc_logo_white.png +0 -0
  365. package/dist/header/hamb_menu_black.svg +0 -1
  366. package/dist/header/hamb_menu_white.svg +0 -1
  367. package/dist/header/readme.md +0 -33
  368. package/dist/heading/Heading.js +0 -163
  369. package/dist/input-text/InputText.js +0 -609
  370. package/dist/input-text/InputText.stories.js +0 -209
  371. package/dist/input-text/error.svg +0 -1
  372. package/dist/input-text/readme.md +0 -91
  373. package/dist/layout/ApplicationLayout.js +0 -331
  374. package/dist/layout/facebook.svg +0 -45
  375. package/dist/layout/linkedin.svg +0 -50
  376. package/dist/layout/twitter.svg +0 -53
  377. package/dist/link/Link.js +0 -200
  378. package/dist/link/readme.md +0 -51
  379. package/dist/paginator/Paginator.js +0 -261
  380. package/dist/paginator/images/next.svg +0 -3
  381. package/dist/paginator/images/nextPage.svg +0 -3
  382. package/dist/paginator/images/previous.svg +0 -3
  383. package/dist/paginator/images/previousPage.svg +0 -3
  384. package/dist/paginator/readme.md +0 -50
  385. package/dist/progress-bar/ProgressBar.js +0 -192
  386. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  387. package/dist/progress-bar/readme.md +0 -63
  388. package/dist/radio/Radio.js +0 -190
  389. package/dist/radio/Radio.stories.js +0 -166
  390. package/dist/radio/readme.md +0 -70
  391. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  392. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  393. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  394. package/dist/select/Select.js +0 -490
  395. package/dist/select/Select.stories.js +0 -235
  396. package/dist/select/readme.md +0 -72
  397. package/dist/sidenav/Sidenav.js +0 -155
  398. package/dist/slider/Slider.js +0 -267
  399. package/dist/slider/Slider.stories.js +0 -241
  400. package/dist/slider/readme.md +0 -64
  401. package/dist/spinner/Spinner.js +0 -198
  402. package/dist/spinner/Spinner.stories.js +0 -183
  403. package/dist/spinner/readme.md +0 -65
  404. package/dist/switch/Switch.js +0 -194
  405. package/dist/switch/Switch.stories.js +0 -134
  406. package/dist/switch/readme.md +0 -133
  407. package/dist/table/Table.js +0 -98
  408. package/dist/tabs/Tabs.js +0 -325
  409. package/dist/tabs/Tabs.stories.js +0 -130
  410. package/dist/tabs/readme.md +0 -78
  411. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  412. package/dist/tabs-for-sections/readme.md +0 -78
  413. package/dist/tag/Tag.js +0 -268
  414. package/dist/textarea/Textarea.js +0 -238
  415. package/dist/toggle/Toggle.js +0 -220
  416. package/dist/toggle/Toggle.stories.js +0 -297
  417. package/dist/toggle/readme.md +0 -80
  418. package/dist/toggle-group/ToggleGroup.js +0 -223
  419. package/dist/toggle-group/readme.md +0 -82
  420. package/dist/upload/Upload.js +0 -209
  421. package/dist/upload/Upload.stories.js +0 -72
  422. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -123
  423. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  424. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  425. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -293
  426. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  427. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  428. package/dist/upload/file-upload/FileToUpload.js +0 -162
  429. package/dist/upload/file-upload/audio-icon.svg +0 -4
  430. package/dist/upload/file-upload/close.svg +0 -4
  431. package/dist/upload/file-upload/file-icon.svg +0 -4
  432. package/dist/upload/file-upload/video-icon.svg +0 -4
  433. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  434. package/dist/upload/readme.md +0 -37
  435. package/dist/upload/transaction/Transaction.js +0 -152
  436. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  437. package/dist/upload/transaction/audio-icon.svg +0 -4
  438. package/dist/upload/transaction/error-icon.svg +0 -4
  439. package/dist/upload/transaction/file-icon-err.svg +0 -4
  440. package/dist/upload/transaction/file-icon.svg +0 -4
  441. package/dist/upload/transaction/image-icon-err.svg +0 -4
  442. package/dist/upload/transaction/image-icon.svg +0 -4
  443. package/dist/upload/transaction/success-icon.svg +0 -4
  444. package/dist/upload/transaction/video-icon-err.svg +0 -4
  445. package/dist/upload/transaction/video-icon.svg +0 -4
  446. package/dist/upload/transactions/Transactions.js +0 -122
  447. package/dist/wizard/Wizard.js +0 -355
  448. package/dist/wizard/invalid_icon.svg +0 -6
  449. package/dist/wizard/valid_icon.svg +0 -6
  450. package/dist/wizard/validation-wrong.svg +0 -6
  451. package/test/Accordion.test.js +0 -33
  452. package/test/AccordionGroup.test.js +0 -125
  453. package/test/Alert.test.js +0 -53
  454. package/test/Box.test.js +0 -10
  455. package/test/Button.test.js +0 -18
  456. package/test/Card.test.js +0 -30
  457. package/test/Checkbox.test.js +0 -45
  458. package/test/Chip.test.js +0 -25
  459. package/test/Date.test.js +0 -393
  460. package/test/Dialog.test.js +0 -23
  461. package/test/Dropdown.test.js +0 -130
  462. package/test/Footer.test.js +0 -99
  463. package/test/Header.test.js +0 -39
  464. package/test/Heading.test.js +0 -35
  465. package/test/InputText.test.js +0 -240
  466. package/test/Link.test.js +0 -42
  467. package/test/Paginator.test.js +0 -177
  468. package/test/ProgressBar.test.js +0 -35
  469. package/test/Radio.test.js +0 -37
  470. package/test/ResultsetTable.test.js +0 -330
  471. package/test/Select.test.js +0 -192
  472. package/test/Sidenav.test.js +0 -45
  473. package/test/Slider.test.js +0 -82
  474. package/test/Spinner.test.js +0 -27
  475. package/test/Switch.test.js +0 -45
  476. package/test/Table.test.js +0 -36
  477. package/test/Tabs.test.js +0 -109
  478. package/test/TabsForSections.test.js +0 -34
  479. package/test/Tag.test.js +0 -32
  480. package/test/TextArea.test.js +0 -52
  481. package/test/ToggleGroup.test.js +0 -81
  482. package/test/Upload.test.js +0 -60
  483. package/test/Wizard.test.js +0 -130
  484. package/test/mocks/pngMock.js +0 -1
  485. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,65 @@
1
+ /// <reference types="react" />
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Size = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare type SVG = React.SVGProps<SVGSVGElement>;
10
+ declare type SocialLink = {
11
+ /**
12
+ * Element used as the icon for the link.
13
+ */
14
+ logo: string | SVG;
15
+ /**
16
+ * URL of the page the link goes to.
17
+ */
18
+ href: string;
19
+ };
20
+ declare type BottomLink = {
21
+ /**
22
+ * Text for the link.
23
+ */
24
+ text: string;
25
+ /**
26
+ * URL of the page the link goes to.
27
+ */
28
+ href: string;
29
+ };
30
+ declare type FooterPropsType = {
31
+ /**
32
+ * An array of objects representing the links that will be rendered as
33
+ * icons at the top-right side of the footer.
34
+ */
35
+ socialLinks?: SocialLink[];
36
+ /**
37
+ * An array of objects representing the links that will be rendered at
38
+ * the bottom part of the footer.
39
+ */
40
+ bottomLinks?: BottomLink[];
41
+ /**
42
+ * The center section of the footer. Can be used to render custom
43
+ * content in this area.
44
+ */
45
+ children?: React.ReactNode;
46
+ /**
47
+ * The text that will be displayed as copyright disclaimer.
48
+ */
49
+ copyright?: string;
50
+ /**
51
+ * Value of the tabindex for all interactuable elements, except those
52
+ * inside the custom area.
53
+ */
54
+ tabIndex?: number;
55
+ /**
56
+ * Size of the top margin to be applied to the footer.
57
+ */
58
+ margin?: Space | Size;
59
+ /**
60
+ * Size of the padding to be applied to the custom area of the component.
61
+ * You can pass an object with properties in order to specify different padding sizes.
62
+ */
63
+ padding?: Space | Size;
64
+ };
65
+ export default FooterPropsType;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import HeaderPropsType from "./types";
3
+ declare const DxcHeader: {
4
+ ({ underlined, content, responsiveContent, onClick, margin, padding, tabIndex, }: HeaderPropsType): JSX.Element;
5
+ Dropdown: (props: any) => JSX.Element;
6
+ };
7
+ export default DxcHeader;
@@ -0,0 +1,303 @@
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 _AppBar = _interopRequireDefault(require("@material-ui/core/AppBar"));
23
+
24
+ var _Dropdown = _interopRequireDefault(require("../dropdown/Dropdown"));
25
+
26
+ var _Icons = require("./Icons");
27
+
28
+ var _variables = require("../common/variables.js");
29
+
30
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
31
+
32
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
33
+
34
+ var _BackgroundColorContext = _interopRequireWildcard(require("../BackgroundColorContext"));
35
+
36
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
37
+
38
+ 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); }
39
+
40
+ 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; }
41
+
42
+ var closeIcon = /*#__PURE__*/_react["default"].createElement("svg", {
43
+ xmlns: "http://www.w3.org/2000/svg",
44
+ height: "24",
45
+ viewBox: "0 0 24 24",
46
+ width: "24"
47
+ }, /*#__PURE__*/_react["default"].createElement("path", {
48
+ 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"
49
+ }), /*#__PURE__*/_react["default"].createElement("path", {
50
+ d: "M0 0h24v24H0z",
51
+ fill: "none"
52
+ }));
53
+
54
+ var hamburgerIcon = /*#__PURE__*/_react["default"].createElement("svg", {
55
+ xmlns: "http://www.w3.org/2000/svg",
56
+ viewBox: "0 0 24 24",
57
+ width: "24",
58
+ height: "24"
59
+ }, /*#__PURE__*/_react["default"].createElement("path", {
60
+ 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"
61
+ }));
62
+
63
+ var Dropdown = function Dropdown(props) {
64
+ return /*#__PURE__*/_react["default"].createElement(HeaderDropdown, null, /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], props));
65
+ };
66
+
67
+ 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"])));
68
+
69
+ var getLogoElement = function getLogoElement(themeInput, logoLabel) {
70
+ if (!themeInput) {
71
+ return _Icons.dxcLogo;
72
+ }
73
+
74
+ if (typeof themeInput === "string") {
75
+ return /*#__PURE__*/_react["default"].createElement(LogoImg, {
76
+ alt: logoLabel,
77
+ src: themeInput
78
+ });
79
+ }
80
+
81
+ return themeInput;
82
+ };
83
+
84
+ var DxcHeader = function DxcHeader(_ref) {
85
+ var _ref$underlined = _ref.underlined,
86
+ underlined = _ref$underlined === void 0 ? false : _ref$underlined,
87
+ content = _ref.content,
88
+ responsiveContent = _ref.responsiveContent,
89
+ onClick = _ref.onClick,
90
+ margin = _ref.margin,
91
+ padding = _ref.padding,
92
+ _ref$tabIndex = _ref.tabIndex,
93
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
94
+ var colorsTheme = (0, _useTheme["default"])();
95
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
96
+ var ref = (0, _react.useRef)(null);
97
+
98
+ var _useState = (0, _react.useState)(false),
99
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
100
+ isResponsive = _useState2[0],
101
+ setIsResponsive = _useState2[1];
102
+
103
+ var _useState3 = (0, _react.useState)(false),
104
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
105
+ isMenuVisible = _useState4[0],
106
+ setIsMenuVisible = _useState4[1];
107
+
108
+ var handleResize = function handleResize() {
109
+ setIsResponsive(window.matchMedia("(max-width: ".concat(_variables.responsiveSizes.medium, "rem)")).matches && !isResponsive);
110
+ };
111
+
112
+ var ContentContainerComponent = function ContentContainerComponent() {
113
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
114
+ return isResponsive && /*#__PURE__*/_react["default"].createElement(MenuContent, {
115
+ backgroundType: backgroundType
116
+ }, responsiveContent(handleMenu)) || /*#__PURE__*/_react["default"].createElement(ContentContainer, {
117
+ padding: padding,
118
+ backgroundType: backgroundType
119
+ }, content);
120
+ };
121
+
122
+ var handleMenu = function handleMenu() {
123
+ if (isResponsive && !isMenuVisible) {
124
+ setIsMenuVisible(!isMenuVisible);
125
+ } else {
126
+ setIsMenuVisible(!isMenuVisible);
127
+ }
128
+ };
129
+
130
+ var headerLogo = (0, _react.useMemo)(function () {
131
+ return getLogoElement(colorsTheme.header.logo, translatedLabels.formFields.logoAlternativeText);
132
+ }, [colorsTheme.header.logo]);
133
+ var headerResponsiveLogo = (0, _react.useMemo)(function () {
134
+ return getLogoElement(colorsTheme.header.logoResponsive, translatedLabels.formFields.logoAlternativeText);
135
+ }, [colorsTheme.header.logoResponsive]);
136
+ (0, _react.useEffect)(function () {
137
+ if (ref.current) {
138
+ window.addEventListener("resize", handleResize);
139
+ handleResize();
140
+ }
141
+
142
+ return function () {
143
+ window.removeEventListener("resize", handleResize);
144
+ };
145
+ }, []);
146
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
147
+ theme: colorsTheme.header
148
+ }, /*#__PURE__*/_react["default"].createElement(HeaderContainer, {
149
+ $underlined: underlined,
150
+ position: "static",
151
+ margin: margin,
152
+ ref: ref
153
+ }, /*#__PURE__*/_react["default"].createElement(LogoAnchor, {
154
+ tabIndex: typeof onClick === "function" ? tabIndex : -1,
155
+ interactuable: typeof onClick === "function",
156
+ onClick: onClick
157
+ }, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, headerLogo)), isResponsive && responsiveContent && /*#__PURE__*/_react["default"].createElement(MainContainer, null, /*#__PURE__*/_react["default"].createElement(ChildContainer, {
158
+ padding: padding
159
+ }, /*#__PURE__*/_react["default"].createElement(HamburguerItem, {
160
+ tabIndex: tabIndex,
161
+ underlined: underlined,
162
+ onClick: handleMenu
163
+ }, hamburgerIcon, /*#__PURE__*/_react["default"].createElement(HamburguerTitle, null, "Menu"))), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(ResponsiveMenu, {
164
+ hasVisibility: isMenuVisible
165
+ }, /*#__PURE__*/_react["default"].createElement(ResponsiveLogoContainer, null, headerResponsiveLogo), /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
166
+ color: colorsTheme.header.menuBackgroundColor
167
+ }, /*#__PURE__*/_react["default"].createElement(ContentContainerComponent, null)), /*#__PURE__*/_react["default"].createElement(CloseContainer, {
168
+ tabIndex: tabIndex,
169
+ onClick: handleMenu,
170
+ className: "closeIcon"
171
+ }, closeIcon)), /*#__PURE__*/_react["default"].createElement(Overlay, {
172
+ onClick: handleMenu,
173
+ hasVisibility: isMenuVisible
174
+ }))), !isResponsive && /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
175
+ color: colorsTheme.header.backgroundColor
176
+ }, /*#__PURE__*/_react["default"].createElement(ContentContainerComponent, null))));
177
+ };
178
+
179
+ DxcHeader.Dropdown = Dropdown;
180
+ var HeaderContainer = (0, _styledComponents["default"])(_AppBar["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: ", ";\n\n &.MuiAppBar-colorPrimary {\n background-color: ", ";\n border-bottom: ", ";\n\n &.MuiPaper-elevation4 {\n box-shadow: none;\n }\n .ChildComponents {\n display: flex;\n align-items: center;\n }\n }\n & {\n min-height: ", ";\n }\n &.MuiAppBar-root {\n flex-direction: row;\n align-items: center;\n padding: ", ";\n justify-content: space-between;\n }\n"])), function (props) {
181
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
182
+ }, function (props) {
183
+ return props.theme.backgroundColor;
184
+ }, function (props) {
185
+ return props.$underlined && "".concat(props.theme.underlinedThickness, " ").concat(props.theme.underlinedStyle, " ").concat(props.theme.underlinedColor);
186
+ }, function (props) {
187
+ return props.theme.minHeight;
188
+ }, function (props) {
189
+ return "".concat(props.theme.paddingTop, " ").concat(props.theme.paddingRight, " ").concat(props.theme.paddingBottom, " ").concat(props.theme.paddingLeft);
190
+ });
191
+
192
+ var LogoAnchor = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (props) {
193
+ if (!props.interactuable) {
194
+ return "cursor: default; outline:none;";
195
+ }
196
+
197
+ return "cursor: pointer;";
198
+ });
199
+
200
+ var LogoImg = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
201
+ return props.theme.logoHeight;
202
+ }, function (props) {
203
+ return props.theme.logoWidth;
204
+ });
205
+
206
+ var LogoContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n vertical-align: middle;\n"])), function (props) {
207
+ return props.theme.logoHeight;
208
+ }, function (props) {
209
+ return props.theme.logoWidth;
210
+ });
211
+
212
+ 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) {
213
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
214
+ }, function (props) {
215
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
216
+ }, function (props) {
217
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
218
+ }, function (props) {
219
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
220
+ }, function (props) {
221
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
222
+ });
223
+
224
+ 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) {
225
+ return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
226
+ }, function (props) {
227
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
228
+ }, function (props) {
229
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
230
+ }, function (props) {
231
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
232
+ }, function (props) {
233
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
234
+ }, function (props) {
235
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
236
+ });
237
+
238
+ var HamburguerItem = _styledComponents["default"].div(_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 :hover {\n background-color: ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n & > svg {\n fill: ", ";\n }\n"])), function (props) {
239
+ return props.theme.hamburguerHoverColor;
240
+ }, function (props) {
241
+ return props.theme.hamburguerFocusColor;
242
+ }, function (props) {
243
+ return props.theme.hamburguerIconColor;
244
+ });
245
+
246
+ var HamburguerTitle = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n text-transform: ", ";\n font-weight: ", ";\n color: ", ";\n"])), 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(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
261
+
262
+ var ResponsiveMenu = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: space-evenly;\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(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n position: absolute;\n top: 23px;\n left: 20px;\n"])), function (props) {
277
+ return props.theme.logoHeight;
278
+ }, function (props) {
279
+ return props.theme.logoWidth;
280
+ });
281
+
282
+ var CloseContainer = _styledComponents["default"].div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n :focus {\n outline: ", " auto 1px;\n }\n position: fixed;\n top: 23px;\n right: 20px;\n width: 24px;\n height: 24px;\n padding: ", ";\n"])), function (props) {
283
+ return props.theme.hamburguerFocusColor;
284
+ }, _variables.spaces.xxsmall);
285
+
286
+ var MenuContent = _styledComponents["default"].div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n height: 100%;\n margin-top: 40px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n color: ", ";\n"])), function (props) {
287
+ return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
288
+ });
289
+
290
+ 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) {
291
+ return props.theme.overlayColor;
292
+ }, function (props) {
293
+ return props.theme.overlayOpacity;
294
+ }, function (props) {
295
+ return props.hasVisibility ? "visible" : "hidden";
296
+ }, function (props) {
297
+ return props.hasVisibility ? "1" : "0";
298
+ }, _variables.responsiveSizes.small, function (props) {
299
+ return props.theme.overlayZindex;
300
+ });
301
+
302
+ var _default = DxcHeader;
303
+ 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: [720] },
135
+ };
136
+
137
+ export const ResponsiveHeaderFocus = RespHeaderFocus.bind({});
138
+ ResponsiveHeaderFocus.parameters = {
139
+ viewport: {
140
+ defaultViewport: "iphonex",
141
+ },
142
+ chromatic: { viewports: [720] },
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: [720] },
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: [720] },
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;