@dxc-technology/halstack-react 0.0.0-1810844 → 0.0.0-1819a7a

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 (418) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +48 -0
  3. package/ThemeContext.d.ts +15 -0
  4. package/ThemeContext.js +243 -0
  5. package/V3Select/V3Select.js +455 -0
  6. package/V3Select/index.d.ts +27 -0
  7. package/V3Textarea/V3Textarea.js +260 -0
  8. package/V3Textarea/index.d.ts +27 -0
  9. package/accordion/Accordion.d.ts +4 -0
  10. package/accordion/Accordion.js +258 -0
  11. package/accordion/Accordion.stories.tsx +300 -0
  12. package/accordion/types.d.ts +68 -0
  13. package/accordion/types.js +5 -0
  14. package/accordion-group/AccordionGroup.d.ts +7 -0
  15. package/accordion-group/AccordionGroup.js +170 -0
  16. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  17. package/accordion-group/types.d.ts +72 -0
  18. package/accordion-group/types.js +5 -0
  19. package/alert/Alert.d.ts +4 -0
  20. package/alert/Alert.js +290 -0
  21. package/alert/Alert.stories.tsx +170 -0
  22. package/alert/types.d.ts +49 -0
  23. package/alert/types.js +5 -0
  24. package/badge/Badge.js +59 -0
  25. package/box/Box.d.ts +4 -0
  26. package/box/Box.js +126 -0
  27. package/box/Box.stories.tsx +132 -0
  28. package/box/types.d.ts +43 -0
  29. package/box/types.js +5 -0
  30. package/button/Button.d.ts +4 -0
  31. package/button/Button.js +179 -0
  32. package/button/Button.stories.tsx +276 -0
  33. package/button/types.d.ts +57 -0
  34. package/button/types.js +5 -0
  35. package/card/Card.d.ts +4 -0
  36. package/card/Card.js +164 -0
  37. package/card/Card.stories.tsx +201 -0
  38. package/card/ice-cream.jpg +0 -0
  39. package/card/types.d.ts +67 -0
  40. package/card/types.js +5 -0
  41. package/checkbox/Checkbox.d.ts +4 -0
  42. package/checkbox/Checkbox.js +253 -0
  43. package/checkbox/Checkbox.stories.tsx +192 -0
  44. package/checkbox/types.d.ts +60 -0
  45. package/checkbox/types.js +5 -0
  46. package/chip/Chip.d.ts +4 -0
  47. package/chip/Chip.js +199 -0
  48. package/chip/Chip.stories.tsx +121 -0
  49. package/chip/types.d.ts +53 -0
  50. package/chip/types.js +5 -0
  51. package/{dist/common → common}/OpenSans.css +0 -0
  52. package/{dist/common → common}/RequiredComponent.js +3 -11
  53. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  54. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  55. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  56. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  57. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  58. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  59. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  60. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  61. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  62. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  63. package/common/utils.js +22 -0
  64. package/common/variables.js +1574 -0
  65. package/{dist/date → date}/Date.js +81 -65
  66. package/date/index.d.ts +27 -0
  67. package/date-input/DateInput.d.ts +4 -0
  68. package/date-input/DateInput.js +358 -0
  69. package/date-input/DateInput.stories.tsx +138 -0
  70. package/date-input/types.d.ts +100 -0
  71. package/date-input/types.js +5 -0
  72. package/dialog/Dialog.d.ts +4 -0
  73. package/dialog/Dialog.js +165 -0
  74. package/dialog/Dialog.stories.tsx +212 -0
  75. package/dialog/types.d.ts +43 -0
  76. package/dialog/types.js +5 -0
  77. package/dropdown/Dropdown.d.ts +4 -0
  78. package/dropdown/Dropdown.js +417 -0
  79. package/dropdown/types.d.ts +89 -0
  80. package/dropdown/types.js +5 -0
  81. package/file-input/FileInput.d.ts +4 -0
  82. package/file-input/FileInput.js +521 -0
  83. package/file-input/FileItem.d.ts +14 -0
  84. package/file-input/FileItem.js +184 -0
  85. package/file-input/types.d.ts +112 -0
  86. package/file-input/types.js +5 -0
  87. package/footer/Footer.d.ts +4 -0
  88. package/footer/Footer.js +260 -0
  89. package/footer/Footer.stories.tsx +130 -0
  90. package/footer/Icons.d.ts +2 -0
  91. package/footer/Icons.js +77 -0
  92. package/footer/types.d.ts +65 -0
  93. package/footer/types.js +5 -0
  94. package/header/Header.d.ts +7 -0
  95. package/header/Header.js +324 -0
  96. package/header/Header.stories.tsx +162 -0
  97. package/header/Icons.d.ts +2 -0
  98. package/header/Icons.js +34 -0
  99. package/header/types.d.ts +47 -0
  100. package/header/types.js +5 -0
  101. package/heading/Heading.d.ts +4 -0
  102. package/heading/Heading.js +159 -0
  103. package/heading/Heading.stories.tsx +53 -0
  104. package/heading/types.d.ts +33 -0
  105. package/heading/types.js +5 -0
  106. package/input-text/Icons.js +22 -0
  107. package/input-text/InputText.js +611 -0
  108. package/input-text/index.d.ts +36 -0
  109. package/layout/ApplicationLayout.d.ts +10 -0
  110. package/layout/ApplicationLayout.js +225 -0
  111. package/layout/ApplicationLayout.stories.tsx +171 -0
  112. package/layout/Icons.js +55 -0
  113. package/layout/types.d.ts +57 -0
  114. package/layout/types.js +5 -0
  115. package/link/Link.d.ts +3 -0
  116. package/link/Link.js +161 -0
  117. package/link/Link.stories.tsx +146 -0
  118. package/link/types.d.ts +74 -0
  119. package/link/types.js +5 -0
  120. package/list/List.d.ts +7 -0
  121. package/list/List.js +37 -0
  122. package/list/List.stories.tsx +70 -0
  123. package/main.d.ts +48 -0
  124. package/{dist/main.js → main.js} +147 -55
  125. package/number-input/NumberInput.d.ts +4 -0
  126. package/number-input/NumberInput.js +83 -0
  127. package/number-input/NumberInput.stories.tsx +115 -0
  128. package/number-input/NumberInputContext.d.ts +4 -0
  129. package/number-input/NumberInputContext.js +19 -0
  130. package/number-input/numberInputContextTypes.d.ts +19 -0
  131. package/number-input/numberInputContextTypes.js +5 -0
  132. package/number-input/types.d.ts +117 -0
  133. package/number-input/types.js +5 -0
  134. package/package.json +32 -23
  135. package/paginator/Icons.js +66 -0
  136. package/paginator/Paginator.d.ts +4 -0
  137. package/paginator/Paginator.js +192 -0
  138. package/paginator/Paginator.stories.tsx +63 -0
  139. package/paginator/types.d.ts +38 -0
  140. package/paginator/types.js +5 -0
  141. package/password-input/PasswordInput.d.ts +4 -0
  142. package/password-input/PasswordInput.js +163 -0
  143. package/password-input/PasswordInput.stories.tsx +131 -0
  144. package/password-input/types.d.ts +107 -0
  145. package/password-input/types.js +5 -0
  146. package/progress-bar/ProgressBar.d.ts +4 -0
  147. package/progress-bar/ProgressBar.js +170 -0
  148. package/progress-bar/ProgressBar.stories.jsx +58 -0
  149. package/progress-bar/types.d.ts +37 -0
  150. package/progress-bar/types.js +5 -0
  151. package/radio/Radio.d.ts +4 -0
  152. package/radio/Radio.js +174 -0
  153. package/radio/Radio.stories.tsx +192 -0
  154. package/radio/types.d.ts +54 -0
  155. package/radio/types.js +5 -0
  156. package/resultsetTable/ResultsetTable.d.ts +4 -0
  157. package/resultsetTable/ResultsetTable.js +251 -0
  158. package/resultsetTable/ResultsetTable.stories.tsx +276 -0
  159. package/resultsetTable/types.d.ts +67 -0
  160. package/resultsetTable/types.js +5 -0
  161. package/row/Row.d.ts +11 -0
  162. package/row/Row.js +124 -0
  163. package/row/Row.stories.tsx +223 -0
  164. package/select/Select.js +863 -0
  165. package/select/Select.stories.tsx +572 -0
  166. package/select/index.d.ts +131 -0
  167. package/sidenav/Sidenav.d.ts +9 -0
  168. package/sidenav/Sidenav.js +136 -0
  169. package/sidenav/Sidenav.stories.tsx +165 -0
  170. package/sidenav/types.d.ts +50 -0
  171. package/sidenav/types.js +5 -0
  172. package/slider/Slider.d.ts +4 -0
  173. package/slider/Slider.js +317 -0
  174. package/slider/Slider.stories.tsx +177 -0
  175. package/slider/types.d.ts +78 -0
  176. package/slider/types.js +5 -0
  177. package/spinner/Spinner.d.ts +4 -0
  178. package/spinner/Spinner.js +250 -0
  179. package/spinner/Spinner.stories.jsx +102 -0
  180. package/spinner/types.d.ts +32 -0
  181. package/spinner/types.js +5 -0
  182. package/stack/Stack.d.ts +10 -0
  183. package/stack/Stack.js +94 -0
  184. package/stack/Stack.stories.tsx +150 -0
  185. package/switch/Switch.d.ts +4 -0
  186. package/switch/Switch.js +179 -0
  187. package/switch/Switch.stories.tsx +160 -0
  188. package/switch/types.d.ts +58 -0
  189. package/switch/types.js +5 -0
  190. package/table/Table.d.ts +4 -0
  191. package/table/Table.js +118 -0
  192. package/table/Table.stories.jsx +276 -0
  193. package/table/types.d.ts +21 -0
  194. package/table/types.js +5 -0
  195. package/tabs/Tabs.d.ts +4 -0
  196. package/tabs/Tabs.js +213 -0
  197. package/tabs/Tabs.stories.tsx +121 -0
  198. package/tabs/types.d.ts +70 -0
  199. package/tabs/types.js +5 -0
  200. package/tag/Tag.d.ts +4 -0
  201. package/tag/Tag.js +193 -0
  202. package/tag/Tag.stories.tsx +145 -0
  203. package/tag/types.d.ts +60 -0
  204. package/tag/types.js +5 -0
  205. package/text/Text.d.ts +7 -0
  206. package/text/Text.js +30 -0
  207. package/text/Text.stories.tsx +19 -0
  208. package/text-input/TextInput.d.ts +4 -0
  209. package/text-input/TextInput.js +786 -0
  210. package/text-input/TextInput.stories.tsx +456 -0
  211. package/text-input/types.d.ts +159 -0
  212. package/text-input/types.js +5 -0
  213. package/textarea/Textarea.d.ts +4 -0
  214. package/textarea/Textarea.js +284 -0
  215. package/textarea/Textarea.stories.jsx +135 -0
  216. package/textarea/types.d.ts +130 -0
  217. package/textarea/types.js +5 -0
  218. package/{dist/toggle → toggle}/Toggle.js +30 -67
  219. package/toggle/index.d.ts +21 -0
  220. package/toggle-group/ToggleGroup.d.ts +4 -0
  221. package/toggle-group/ToggleGroup.js +217 -0
  222. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  223. package/toggle-group/types.d.ts +84 -0
  224. package/toggle-group/types.js +5 -0
  225. package/{dist/upload → upload}/Upload.js +23 -22
  226. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  227. package/upload/buttons-upload/Icons.js +40 -0
  228. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  229. package/upload/dragAndDropArea/Icons.js +39 -0
  230. package/upload/file-upload/FileToUpload.js +115 -0
  231. package/upload/file-upload/Icons.js +66 -0
  232. package/upload/files-upload/FilesToUpload.js +109 -0
  233. package/upload/index.d.ts +15 -0
  234. package/upload/transaction/Icons.js +160 -0
  235. package/upload/transaction/Transaction.js +104 -0
  236. package/upload/transactions/Transactions.js +94 -0
  237. package/useTheme.d.ts +2 -0
  238. package/{dist/useTheme.js → useTheme.js} +1 -1
  239. package/wizard/Wizard.d.ts +4 -0
  240. package/wizard/Wizard.js +281 -0
  241. package/wizard/Wizard.stories.tsx +224 -0
  242. package/wizard/types.d.ts +60 -0
  243. package/wizard/types.js +5 -0
  244. package/README.md +0 -66
  245. package/babel.config.js +0 -8
  246. package/dist/ThemeContext.js +0 -144
  247. package/dist/accordion/Accordion.js +0 -268
  248. package/dist/accordion/Accordion.stories.js +0 -207
  249. package/dist/accordion/readme.md +0 -96
  250. package/dist/accordion-group/AccordionGroup.js +0 -159
  251. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  252. package/dist/accordion-group/readme.md +0 -70
  253. package/dist/alert/Alert.js +0 -303
  254. package/dist/alert/Alert.stories.js +0 -158
  255. package/dist/alert/close.svg +0 -4
  256. package/dist/alert/error.svg +0 -4
  257. package/dist/alert/info.svg +0 -4
  258. package/dist/alert/readme.md +0 -43
  259. package/dist/alert/success.svg +0 -4
  260. package/dist/alert/warning.svg +0 -4
  261. package/dist/badge/Badge.js +0 -42
  262. package/dist/box/Box.js +0 -145
  263. package/dist/button/Button.js +0 -199
  264. package/dist/button/Button.stories.js +0 -224
  265. package/dist/button/readme.md +0 -93
  266. package/dist/card/Card.js +0 -217
  267. package/dist/checkbox/Checkbox.js +0 -229
  268. package/dist/checkbox/Checkbox.stories.js +0 -144
  269. package/dist/checkbox/readme.md +0 -116
  270. package/dist/chip/Chip.js +0 -203
  271. package/dist/common/services/example-service.js +0 -10
  272. package/dist/common/services/example-service.test.js +0 -12
  273. package/dist/common/utils.js +0 -42
  274. package/dist/common/variables.js +0 -393
  275. package/dist/date/Date.stories.js +0 -205
  276. package/dist/date/calendar.svg +0 -1
  277. package/dist/date/calendar_dark.svg +0 -1
  278. package/dist/date/readme.md +0 -73
  279. package/dist/dialog/Dialog.js +0 -197
  280. package/dist/dialog/Dialog.stories.js +0 -217
  281. package/dist/dialog/readme.md +0 -32
  282. package/dist/dropdown/Dropdown.js +0 -449
  283. package/dist/dropdown/Dropdown.stories.js +0 -249
  284. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  285. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  286. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  287. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  288. package/dist/dropdown/readme.md +0 -69
  289. package/dist/footer/Footer.js +0 -366
  290. package/dist/footer/Footer.stories.js +0 -94
  291. package/dist/footer/dxc_logo_wht.png +0 -0
  292. package/dist/footer/readme.md +0 -41
  293. package/dist/header/Header.js +0 -373
  294. package/dist/header/Header.stories.js +0 -176
  295. package/dist/header/close_icon.svg +0 -1
  296. package/dist/header/dxc_logo_black.png +0 -0
  297. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  298. package/dist/header/dxc_logo_white.png +0 -0
  299. package/dist/header/hamb_menu_black.svg +0 -1
  300. package/dist/header/hamb_menu_white.svg +0 -1
  301. package/dist/header/readme.md +0 -33
  302. package/dist/heading/Heading.js +0 -153
  303. package/dist/input-text/InputText.js +0 -570
  304. package/dist/input-text/InputText.stories.js +0 -209
  305. package/dist/input-text/error.svg +0 -1
  306. package/dist/input-text/readme.md +0 -91
  307. package/dist/layout/ApplicationLayout.js +0 -332
  308. package/dist/layout/facebook.svg +0 -45
  309. package/dist/layout/linkedin.svg +0 -50
  310. package/dist/layout/twitter.svg +0 -53
  311. package/dist/link/Link.js +0 -192
  312. package/dist/link/readme.md +0 -51
  313. package/dist/paginator/Paginator.js +0 -254
  314. package/dist/paginator/images/next.svg +0 -3
  315. package/dist/paginator/images/nextPage.svg +0 -3
  316. package/dist/paginator/images/previous.svg +0 -3
  317. package/dist/paginator/images/previousPage.svg +0 -3
  318. package/dist/paginator/readme.md +0 -50
  319. package/dist/progress-bar/ProgressBar.js +0 -185
  320. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  321. package/dist/progress-bar/readme.md +0 -63
  322. package/dist/radio/Radio.js +0 -195
  323. package/dist/radio/Radio.stories.js +0 -166
  324. package/dist/radio/readme.md +0 -70
  325. package/dist/resultsetTable/ResultsetTable.js +0 -327
  326. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  327. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  328. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  329. package/dist/select/Select.js +0 -473
  330. package/dist/select/Select.stories.js +0 -235
  331. package/dist/select/readme.md +0 -72
  332. package/dist/sidenav/Sidenav.js +0 -125
  333. package/dist/slider/Slider.js +0 -257
  334. package/dist/slider/Slider.stories.js +0 -241
  335. package/dist/slider/readme.md +0 -64
  336. package/dist/spinner/Spinner.js +0 -192
  337. package/dist/spinner/Spinner.stories.js +0 -183
  338. package/dist/spinner/readme.md +0 -65
  339. package/dist/switch/Switch.js +0 -190
  340. package/dist/switch/Switch.stories.js +0 -134
  341. package/dist/switch/readme.md +0 -133
  342. package/dist/table/Table.js +0 -104
  343. package/dist/tabs/Tabs.js +0 -302
  344. package/dist/tabs/Tabs.stories.js +0 -130
  345. package/dist/tabs/readme.md +0 -78
  346. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  347. package/dist/tabs-for-sections/readme.md +0 -78
  348. package/dist/tag/Tag.js +0 -249
  349. package/dist/textarea/Textarea.js +0 -224
  350. package/dist/toggle/Toggle.stories.js +0 -297
  351. package/dist/toggle/readme.md +0 -80
  352. package/dist/toggle-group/ToggleGroup.js +0 -223
  353. package/dist/toggle-group/readme.md +0 -82
  354. package/dist/upload/Upload.stories.js +0 -72
  355. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  356. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  357. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  358. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  359. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  360. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  361. package/dist/upload/file-upload/FileToUpload.js +0 -158
  362. package/dist/upload/file-upload/audio-icon.svg +0 -4
  363. package/dist/upload/file-upload/close.svg +0 -4
  364. package/dist/upload/file-upload/file-icon.svg +0 -4
  365. package/dist/upload/file-upload/video-icon.svg +0 -4
  366. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  367. package/dist/upload/readme.md +0 -37
  368. package/dist/upload/transaction/Transaction.js +0 -155
  369. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  370. package/dist/upload/transaction/audio-icon.svg +0 -4
  371. package/dist/upload/transaction/error-icon.svg +0 -4
  372. package/dist/upload/transaction/file-icon-err.svg +0 -4
  373. package/dist/upload/transaction/file-icon.svg +0 -4
  374. package/dist/upload/transaction/image-icon-err.svg +0 -4
  375. package/dist/upload/transaction/image-icon.svg +0 -4
  376. package/dist/upload/transaction/success-icon.svg +0 -4
  377. package/dist/upload/transaction/video-icon-err.svg +0 -4
  378. package/dist/upload/transaction/video-icon.svg +0 -4
  379. package/dist/upload/transactions/Transactions.js +0 -120
  380. package/dist/wizard/Wizard.js +0 -328
  381. package/dist/wizard/invalid_icon.svg +0 -6
  382. package/dist/wizard/valid_icon.svg +0 -6
  383. package/dist/wizard/validation-wrong.svg +0 -6
  384. package/test/Accordion.test.js +0 -33
  385. package/test/AccordionGroup.test.js +0 -109
  386. package/test/Alert.test.js +0 -53
  387. package/test/Box.test.js +0 -10
  388. package/test/Button.test.js +0 -18
  389. package/test/Card.test.js +0 -30
  390. package/test/Checkbox.test.js +0 -45
  391. package/test/Chip.test.js +0 -25
  392. package/test/Date.test.js +0 -393
  393. package/test/Dialog.test.js +0 -23
  394. package/test/Dropdown.test.js +0 -130
  395. package/test/Footer.test.js +0 -99
  396. package/test/Header.test.js +0 -39
  397. package/test/Heading.test.js +0 -35
  398. package/test/InputText.test.js +0 -240
  399. package/test/Link.test.js +0 -42
  400. package/test/Paginator.test.js +0 -177
  401. package/test/ProgressBar.test.js +0 -35
  402. package/test/Radio.test.js +0 -37
  403. package/test/ResultsetTable.test.js +0 -330
  404. package/test/Select.test.js +0 -192
  405. package/test/Sidenav.test.js +0 -45
  406. package/test/Slider.test.js +0 -82
  407. package/test/Spinner.test.js +0 -27
  408. package/test/Switch.test.js +0 -45
  409. package/test/Table.test.js +0 -36
  410. package/test/Tabs.test.js +0 -109
  411. package/test/TabsForSections.test.js +0 -34
  412. package/test/Tag.test.js +0 -32
  413. package/test/TextArea.test.js +0 -52
  414. package/test/ToggleGroup.test.js +0 -81
  415. package/test/Upload.test.js +0 -60
  416. package/test/Wizard.test.js +0 -130
  417. package/test/mocks/pngMock.js +0 -1
  418. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,162 @@
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
+ <ExampleContainer>
30
+ <Title title="Responsive" theme="light" level={4} />
31
+ <div style={{ width: "400px" }}>
32
+ <DxcHeader
33
+ responsiveContent={(closeHandler) => <DxcHeader.Dropdown options={options} label="Default Dropdown" />}
34
+ underlined
35
+ />
36
+ </div>
37
+ </ExampleContainer>
38
+ <Title title="Margins" theme="light" level={2} />
39
+ <ExampleContainer>
40
+ <Title title="Xxsmall margin" theme="light" level={4} />
41
+ <DxcHeader underlined margin="xxsmall" />
42
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
43
+ </ExampleContainer>
44
+ <ExampleContainer>
45
+ <Title title="Xsmall margin" theme="light" level={4} />
46
+ <DxcHeader underlined margin="xsmall" />
47
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
48
+ </ExampleContainer>
49
+ <ExampleContainer>
50
+ <Title title="Small margin" theme="light" level={4} />
51
+ <DxcHeader underlined margin="small" />
52
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
53
+ </ExampleContainer>
54
+ <ExampleContainer>
55
+ <Title title="Medium margin" theme="light" level={4} />
56
+ <DxcHeader underlined margin="medium" />
57
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
58
+ </ExampleContainer>
59
+ <ExampleContainer>
60
+ <Title title="Large margin" theme="light" level={4} />
61
+ <DxcHeader underlined margin="large" />
62
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
63
+ </ExampleContainer>
64
+ <ExampleContainer>
65
+ <Title title="Xlarge margin" theme="light" level={4} />
66
+ <DxcHeader underlined margin="xlarge" />
67
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
68
+ </ExampleContainer>
69
+ <ExampleContainer>
70
+ <Title title="Xxlarge margin" theme="light" level={4} />
71
+ <DxcHeader underlined margin="xxlarge" />
72
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
73
+ </ExampleContainer>
74
+
75
+ <Title title="Paddings" theme="light" level={2} />
76
+ <ExampleContainer>
77
+ <Title title="Xxsmall padding" theme="light" level={4} />
78
+ <DxcHeader underlined padding="xxsmall" />
79
+ </ExampleContainer>
80
+ <ExampleContainer>
81
+ <Title title="Xsmall padding" theme="light" level={4} />
82
+ <DxcHeader underlined padding="xsmall" />
83
+ </ExampleContainer>
84
+ <ExampleContainer>
85
+ <Title title="Small padding" theme="light" level={4} />
86
+ <DxcHeader underlined padding="small" />
87
+ </ExampleContainer>
88
+ <ExampleContainer>
89
+ <Title title="Medium padding" theme="light" level={4} />
90
+ <DxcHeader underlined padding="medium" />
91
+ </ExampleContainer>
92
+ <ExampleContainer>
93
+ <Title title="Large padding" theme="light" level={4} />
94
+ <DxcHeader underlined padding="large" />
95
+ </ExampleContainer>
96
+ <ExampleContainer>
97
+ <Title title="Xlarge padding" theme="light" level={4} />
98
+ <DxcHeader underlined padding="xlarge" />
99
+ </ExampleContainer>
100
+ <ExampleContainer>
101
+ <Title title="Xxlarge padding" theme="light" level={4} />
102
+ <DxcHeader underlined padding="xxlarge" />
103
+ </ExampleContainer>
104
+ </>
105
+ );
106
+
107
+ const RespHeader = () => (
108
+ <ExampleContainer>
109
+ <Title title="Responsive" theme="light" level={4} />
110
+ <div style={{ maxWidth: "400px" }}>
111
+ <DxcHeader
112
+ responsiveContent={(closeHandler) => <DxcHeader.Dropdown options={options} label="Default Dropdown" />}
113
+ underlined
114
+ />
115
+ </div>
116
+ </ExampleContainer>
117
+ );
118
+
119
+ const RespHeaderFocus = () => (
120
+ <ExampleContainer pseudoState="pseudo-focus">
121
+ <Title title="Responsive" theme="light" level={4} />
122
+ <div style={{ maxWidth: "400px" }}>
123
+ <DxcHeader
124
+ responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>}
125
+ underlined
126
+ />
127
+ </div>
128
+ </ExampleContainer>
129
+ );
130
+
131
+ const RespHeaderHover = () => (
132
+ <ExampleContainer pseudoState="pseudo-hover">
133
+ <Title title="Responsive" theme="light" level={4} />
134
+ <div style={{ maxWidth: "400px" }}>
135
+ <DxcHeader
136
+ responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>}
137
+ underlined
138
+ />
139
+ </div>
140
+ </ExampleContainer>
141
+ );
142
+
143
+ export const ResponsiveHeader = RespHeader.bind({});
144
+ ResponsiveHeader.play = async ({ canvasElement }) => {
145
+ const canvas = within(canvasElement);
146
+ await waitFor(() => canvas.findByText("Menu"));
147
+ await userEvent.click(canvas.getByText("Menu"));
148
+ };
149
+
150
+ export const ResponsiveHeaderFocus = RespHeaderFocus.bind({});
151
+ ResponsiveHeaderFocus.play = async ({ canvasElement }) => {
152
+ const canvas = within(canvasElement);
153
+ await waitFor(() => canvas.findByText("Menu"));
154
+ await userEvent.click(canvas.getByText("Menu"));
155
+ };
156
+
157
+ export const ResponsiveHeaderHover = RespHeaderHover.bind({});
158
+ ResponsiveHeaderHover.play = async ({ canvasElement }) => {
159
+ const canvas = within(canvasElement);
160
+ await waitFor(() => canvas.findByText("Menu"));
161
+ await userEvent.click(canvas.getByText("Menu"));
162
+ };
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const dxcLogo: JSX.Element;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.dxcLogo = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var dxcLogo = /*#__PURE__*/_react["default"].createElement("svg", {
13
+ xmlns: "http://www.w3.org/2000/svg",
14
+ width: "73",
15
+ height: "40",
16
+ viewBox: "0 0 73 40"
17
+ }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
18
+ id: "g10",
19
+ transform: "translate(0)"
20
+ }, /*#__PURE__*/_react["default"].createElement("g", {
21
+ id: "g12"
22
+ }, /*#__PURE__*/_react["default"].createElement("path", {
23
+ id: "path14",
24
+ d: "M91.613-28.177v2.514H90.231V-28.15l-2.415-3.82h1.616l1.5,2.532,1.526-2.532h1.571ZM83.9-25.555A3.15,3.15,0,0,1,80.6-28.8v-.018a3.231,3.231,0,0,1,3.294-3.262,3.442,3.442,0,0,1,2.469.865l-.87,1.054a2.311,2.311,0,0,0-1.643-.64,1.891,1.891,0,0,0-1.8,1.964v.018a1.886,1.886,0,0,0,1.9,2,2.2,2.2,0,0,0,1.3-.378v-.9H83.858v-1.2h2.729v2.738A4.071,4.071,0,0,1,83.9-25.555Zm-6.416-3.261a1.913,1.913,0,0,0-1.9-1.982A1.883,1.883,0,0,0,73.7-28.835v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,77.486-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018A3.255,3.255,0,0,1,75.6-32.078a3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,75.583-25.555Zm-9.173-.108V-31.97h1.382v5.045h3.133v1.261Zm-3.433-3.153a1.913,1.913,0,0,0-1.9-1.982,1.883,1.883,0,0,0-1.886,1.964v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,62.978-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018a3.255,3.255,0,0,1,3.348-3.262,3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,61.075-25.555Zm-6.508-.108-3.043-4.009v4.009H50.159V-31.97h1.275l2.944,3.883V-31.97h1.364v6.306Zm-8.246,0v-2.531h-2.55v2.531H42.389V-31.97h1.382v2.5h2.55v-2.5H47.7v6.306Zm-8.432.108A3.178,3.178,0,0,1,34.666-28.8v-.018a3.2,3.2,0,0,1,3.276-3.262,3.237,3.237,0,0,1,2.478.973l-.88,1.018a2.315,2.315,0,0,0-1.606-.712,1.866,1.866,0,0,0-1.822,1.964v.018a1.87,1.87,0,0,0,1.822,1.982,2.265,2.265,0,0,0,1.651-.739l.88.891A3.206,3.206,0,0,1,37.889-25.555Zm-9.805-.108V-31.97h4.739v1.235H29.458v1.279h2.962v1.234H29.458V-26.9h3.411v1.234ZM24.322-30.69v5.027H22.939V-30.69H21.028v-1.28h5.206v1.28H24.322",
25
+ transform: "translate(-21.028 65.555)",
26
+ fill: "#100f0d"
27
+ }), /*#__PURE__*/_react["default"].createElement("path", {
28
+ id: "path16",
29
+ d: "M75.836-76.712a8.975,8.975,0,0,1,2.246-3.9,8.393,8.393,0,0,1,6.058-2.457h9.824v-5.67H84.139a14.611,14.611,0,0,0-10.232,4.221,14.509,14.509,0,0,0-3.076,4.536,11.913,11.913,0,0,0-.973,3.271Zm0,4.325a8.978,8.978,0,0,0,2.246,3.9,8.394,8.394,0,0,0,6.058,2.457h9.824v5.67H84.139A14.611,14.611,0,0,1,73.907-64.58a14.506,14.506,0,0,1-3.076-4.536,11.91,11.91,0,0,1-.973-3.271ZM57.522-69.832l-7.5,9.473H42.581L53.818-74.55,42.581-88.739H50.02l7.5,9.472,7.5-9.472h7.439L61.225-74.55l11.237,14.19H65.023Zm-12.336-6.88a11.935,11.935,0,0,0-.973-3.271,14.515,14.515,0,0,0-3.076-4.536A14.612,14.612,0,0,0,30.9-88.739H21.081v5.67H30.9a8.394,8.394,0,0,1,6.058,2.457,8.978,8.978,0,0,1,2.246,3.9Zm0,4.325a11.932,11.932,0,0,1-.973,3.271,14.511,14.511,0,0,1-3.076,4.536A14.611,14.611,0,0,1,30.9-60.359H21.081v-5.67H30.9a8.4,8.4,0,0,0,6.058-2.457,8.981,8.981,0,0,0,2.246-3.9h5.978",
30
+ transform: "translate(-21.049 88.739)",
31
+ fill: "#100f0d"
32
+ }))));
33
+
34
+ exports.dxcLogo = dxcLogo;
@@ -0,0 +1,47 @@
1
+ /// <reference types="react" />
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Padding = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare type Props = {
10
+ /**
11
+ * Wether a contrast line should appear at the bottom of the header.
12
+ */
13
+ underlined?: boolean;
14
+ /**
15
+ * Content showed in the header. Take into account that the component applies styles
16
+ * for the first child in the content, so we recommend the use of React.Fragment
17
+ * to be applied correctly. Otherwise, the styles can be modified.
18
+ */
19
+ content?: React.ReactNode;
20
+ /**
21
+ * Content showed in responsive version. It receives the close menu handler that can
22
+ * be used to add that functionality when a element is clicked.
23
+ */
24
+ responsiveContent?: (closeHandler: () => void) => React.ReactNode;
25
+ /**
26
+ * This function will be called when the user clicks the header logo.
27
+ */
28
+ onClick?: () => void;
29
+ /**
30
+ * Size of the bottom margin to be applied to the header
31
+ * ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
32
+ */
33
+ margin?: Space;
34
+ /**
35
+ * Size of the padding to be applied to the custom area of the component
36
+ * ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
37
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in
38
+ * order to specify different padding sizes.
39
+ */
40
+ padding?: Space | Padding;
41
+ /**
42
+ * Value of the tabindex for all interactuable elements, except those inside the
43
+ * custom area.
44
+ */
45
+ tabIndex?: number;
46
+ };
47
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import HeadingPropsType from "./types";
3
+ declare const DxcHeading: ({ level, text, as, weight, margin }: HeadingPropsType) => JSX.Element;
4
+ export default DxcHeading;
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _react = _interopRequireDefault(require("react"));
17
+
18
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
+
20
+ var _variables = require("../common/variables.js");
21
+
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
+
24
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
+
30
+ var DxcHeading = function DxcHeading(_ref) {
31
+ var _ref$level = _ref.level,
32
+ level = _ref$level === void 0 ? 1 : _ref$level,
33
+ _ref$text = _ref.text,
34
+ text = _ref$text === void 0 ? "" : _ref$text,
35
+ as = _ref.as,
36
+ weight = _ref.weight,
37
+ margin = _ref.margin;
38
+ var colorsTheme = (0, _useTheme["default"])();
39
+
40
+ var checkValidAs = function checkValidAs() {
41
+ if (as === "h1" || as === "h2" || as === "h3" || as === "h4" || as === "h5") return as;
42
+ };
43
+
44
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
45
+ theme: colorsTheme.heading
46
+ }, /*#__PURE__*/_react["default"].createElement(HeadingContainer, {
47
+ margin: margin
48
+ }, level === 1 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel1, {
49
+ as: checkValidAs(),
50
+ weight: weight
51
+ }, text) : level === 2 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel2, {
52
+ as: checkValidAs(),
53
+ weight: weight
54
+ }, text) : level === 3 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel3, {
55
+ as: checkValidAs(),
56
+ weight: weight
57
+ }, text) : level === 4 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel4, {
58
+ as: checkValidAs(),
59
+ weight: weight
60
+ }, text) : /*#__PURE__*/_react["default"].createElement(HeadingLevel5, {
61
+ as: checkValidAs(),
62
+ weight: weight
63
+ }, text)));
64
+ };
65
+
66
+ var HeadingContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
67
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
68
+ }, function (props) {
69
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
70
+ }, function (props) {
71
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
72
+ }, function (props) {
73
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
74
+ }, function (props) {
75
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
76
+ });
77
+
78
+ var HeadingLevel1 = _styledComponents["default"].h1(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
79
+ return props.theme.level1FontFamily;
80
+ }, function (props) {
81
+ return props.theme.level1FontStyle;
82
+ }, function (props) {
83
+ return props.theme.level1FontSize;
84
+ }, function (props) {
85
+ return props.theme.level1LineHeight;
86
+ }, function (props) {
87
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level1FontWeight;
88
+ }, function (props) {
89
+ return props.theme.level1LetterSpacing;
90
+ }, function (props) {
91
+ return props.theme.level1FontColor;
92
+ });
93
+
94
+ var HeadingLevel2 = _styledComponents["default"].h2(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
95
+ return props.theme.level2FontFamily;
96
+ }, function (props) {
97
+ return props.theme.level2FontStyle;
98
+ }, function (props) {
99
+ return props.theme.level2FontSize;
100
+ }, function (props) {
101
+ return props.theme.level2LineHeight;
102
+ }, function (props) {
103
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level2FontWeight;
104
+ }, function (props) {
105
+ return props.theme.level2LetterSpacing;
106
+ }, function (props) {
107
+ return props.theme.level2FontColor;
108
+ });
109
+
110
+ var HeadingLevel3 = _styledComponents["default"].h3(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
111
+ return props.theme.level3FontFamily;
112
+ }, function (props) {
113
+ return props.theme.level3FontStyle;
114
+ }, function (props) {
115
+ return props.theme.level3FontSize;
116
+ }, function (props) {
117
+ return props.theme.level3LineHeight;
118
+ }, function (props) {
119
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level3FontWeight;
120
+ }, function (props) {
121
+ return props.theme.level3LetterSpacing;
122
+ }, function (props) {
123
+ return props.theme.level3FontColor;
124
+ });
125
+
126
+ var HeadingLevel4 = _styledComponents["default"].h4(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
127
+ return props.theme.level4FontFamily;
128
+ }, function (props) {
129
+ return props.theme.level4FontStyle;
130
+ }, function (props) {
131
+ return props.theme.level4FontSize;
132
+ }, function (props) {
133
+ return props.theme.level4LineHeight;
134
+ }, function (props) {
135
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level4FontWeight;
136
+ }, function (props) {
137
+ return props.theme.level4LetterSpacing;
138
+ }, function (props) {
139
+ return props.theme.level4FontColor;
140
+ });
141
+
142
+ var HeadingLevel5 = _styledComponents["default"].h5(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
143
+ return props.theme.level5FontFamily;
144
+ }, function (props) {
145
+ return props.theme.level5FontStyle;
146
+ }, function (props) {
147
+ return props.theme.level5FontSize;
148
+ }, function (props) {
149
+ return props.theme.level5LineHeight;
150
+ }, function (props) {
151
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level5FontWeight;
152
+ }, function (props) {
153
+ return props.theme.level5LetterSpacing;
154
+ }, function (props) {
155
+ return props.theme.level5FontColor;
156
+ });
157
+
158
+ var _default = DxcHeading;
159
+ exports["default"] = _default;
@@ -0,0 +1,53 @@
1
+ import React from "react";
2
+ import DxcHeading from "./Heading";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+
6
+ export default {
7
+ title: "Heading",
8
+ component: DxcHeading,
9
+ };
10
+
11
+ export const Chromatic = () => (
12
+ <>
13
+ <Title title="Levels" theme="light" level={2} />
14
+ <ExampleContainer>
15
+ <Title title="Level 1" theme="light" level={4} />
16
+ <DxcHeading text="Heading for sections within the page" />
17
+ <Title title="Level 2" theme="light" level={4} />
18
+ <DxcHeading text="Heading for sections within the page" level={2} />
19
+ <Title title="Level 3" theme="light" level={4} />
20
+ <DxcHeading text="Heading for sections within the page" level={3} />
21
+ <Title title="Level 4" theme="light" level={4} />
22
+ <DxcHeading text="Heading for sections within the page" level={4} />
23
+ <Title title="Level 5" theme="light" level={4} />
24
+ <DxcHeading text="Heading for sections within the page" level={5} />
25
+ </ExampleContainer>
26
+ <Title title="Weights" theme="light" level={2} />
27
+ <ExampleContainer>
28
+ <Title title="'light' Weight" theme="light" level={4} />
29
+ <DxcHeading text="Heading for sections within the page" level={2} weight="light" />
30
+ <Title title="'normal' Weight" theme="light" level={4} />
31
+ <DxcHeading text="Heading for sections within the page" level={4} weight="normal" />
32
+ <Title title="'bold' Weight" theme="light" level={4} />
33
+ <DxcHeading text="Heading for sections within the page" weight="bold" />
34
+ </ExampleContainer>
35
+ <Title title="Margins" theme="light" level={2} />
36
+ <ExampleContainer>
37
+ <Title title="Xxsmall" theme="light" level={4} />
38
+ <DxcHeading text="Xxsmall" margin="xxsmall" />
39
+ <Title title="Xsmall" theme="light" level={4} />
40
+ <DxcHeading text="Xsmall" margin="xsmall" />
41
+ <Title title="Small" theme="light" level={4} />
42
+ <DxcHeading text="Small" margin="small" />
43
+ <Title title="Medium" theme="light" level={4} />
44
+ <DxcHeading text="Medium" margin="medium" />
45
+ <Title title="Large" theme="light" level={4} />
46
+ <DxcHeading text="Large" margin="large" />
47
+ <Title title="Xlarge" theme="light" level={4} />
48
+ <DxcHeading text="Xlarge" margin="xlarge" />
49
+ <Title title="Xxlarge" theme="light" level={4} />
50
+ <DxcHeading text="Xxlarge" margin="xxlarge" />
51
+ </ExampleContainer>
52
+ </>
53
+ );
@@ -0,0 +1,33 @@
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ declare type Props = {
9
+ /**
10
+ * Defines the heading level from 1 to 5. The styles of the heading are applied according to the level.
11
+ * The html tag of the heading will be the one specified in the 'as' prop.
12
+ * If 'as' is not specified, the html tag of the heading is the one specified in the 'level' prop.
13
+ */
14
+ level?: 1 | 2 | 3 | 4 | 5;
15
+ /**
16
+ * Heading text.
17
+ */
18
+ text: string;
19
+ /**
20
+ * Specifies the html tag of the heading.
21
+ */
22
+ as?: "h1" | "h2" | "h3" | "h4" | "h5";
23
+ /**
24
+ * Modifies the default weight of the heading.
25
+ */
26
+ weight?: "light" | "normal" | "bold";
27
+ /**
28
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
29
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
30
+ */
31
+ margin?: Space | Margin;
32
+ };
33
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _default = /*#__PURE__*/_react["default"].createElement("svg", {
13
+ xmlns: "http://www.w3.org/2000/svg",
14
+ height: "24px",
15
+ viewBox: "0 0 24 24",
16
+ width: "24px",
17
+ fill: "currentColor"
18
+ }, /*#__PURE__*/_react["default"].createElement("path", {
19
+ d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"
20
+ }));
21
+
22
+ exports["default"] = _default;