@dxc-technology/halstack-react 0.0.0-a25956f → 0.0.0-a33ff0e

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 (369) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +39 -39
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -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 +170 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/alert/Alert.js +290 -0
  17. package/alert/Alert.stories.tsx +170 -0
  18. package/alert/types.d.ts +49 -0
  19. package/alert/types.js +5 -0
  20. package/badge/Badge.js +59 -0
  21. package/box/Box.d.ts +4 -0
  22. package/{dist/box → box}/Box.js +13 -51
  23. package/box/Box.stories.tsx +132 -0
  24. package/box/types.d.ts +43 -0
  25. package/box/types.js +5 -0
  26. package/button/Button.d.ts +4 -0
  27. package/button/Button.js +177 -0
  28. package/button/Button.stories.tsx +276 -0
  29. package/button/types.d.ts +57 -0
  30. package/button/types.js +5 -0
  31. package/card/Card.d.ts +4 -0
  32. package/{dist/card → card}/Card.js +33 -123
  33. package/card/Card.stories.tsx +201 -0
  34. package/card/ice-cream.jpg +0 -0
  35. package/card/types.d.ts +67 -0
  36. package/card/types.js +5 -0
  37. package/checkbox/Checkbox.d.ts +4 -0
  38. package/{dist/checkbox → checkbox}/Checkbox.js +44 -82
  39. package/checkbox/Checkbox.stories.tsx +192 -0
  40. package/checkbox/types.d.ts +60 -0
  41. package/checkbox/types.js +5 -0
  42. package/{dist/chip → chip}/Chip.js +33 -81
  43. package/chip/Chip.stories.tsx +121 -0
  44. package/chip/index.d.ts +22 -0
  45. package/{dist/common → common}/OpenSans.css +0 -0
  46. package/{dist/common → common}/RequiredComponent.js +3 -11
  47. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  53. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  54. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  55. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  56. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  57. package/{dist/common → common}/utils.js +0 -0
  58. package/common/variables.js +1577 -0
  59. package/{dist/date → date}/Date.js +33 -51
  60. package/date/index.d.ts +27 -0
  61. package/date-input/DateInput.d.ts +4 -0
  62. package/date-input/DateInput.js +361 -0
  63. package/date-input/DateInput.stories.tsx +138 -0
  64. package/date-input/types.d.ts +100 -0
  65. package/date-input/types.js +5 -0
  66. package/dialog/Dialog.d.ts +4 -0
  67. package/{dist/dialog → dialog}/Dialog.js +29 -100
  68. package/dialog/Dialog.stories.tsx +212 -0
  69. package/dialog/types.d.ts +43 -0
  70. package/dialog/types.js +5 -0
  71. package/dropdown/Dropdown.d.ts +4 -0
  72. package/dropdown/Dropdown.js +417 -0
  73. package/dropdown/types.d.ts +89 -0
  74. package/dropdown/types.js +5 -0
  75. package/file-input/FileInput.d.ts +4 -0
  76. package/file-input/FileInput.js +511 -0
  77. package/file-input/FileItem.d.ts +14 -0
  78. package/file-input/FileItem.js +182 -0
  79. package/file-input/types.d.ts +87 -0
  80. package/file-input/types.js +5 -0
  81. package/footer/Footer.d.ts +4 -0
  82. package/footer/Footer.js +266 -0
  83. package/footer/Footer.stories.jsx +151 -0
  84. package/footer/Icons.js +77 -0
  85. package/footer/types.d.ts +61 -0
  86. package/footer/types.js +5 -0
  87. package/header/Header.d.ts +7 -0
  88. package/header/Header.js +324 -0
  89. package/header/Header.stories.tsx +162 -0
  90. package/header/Icons.js +34 -0
  91. package/header/types.d.ts +47 -0
  92. package/header/types.js +5 -0
  93. package/heading/Heading.d.ts +4 -0
  94. package/{dist/heading → heading}/Heading.js +30 -93
  95. package/heading/Heading.stories.tsx +53 -0
  96. package/heading/types.d.ts +33 -0
  97. package/heading/types.js +5 -0
  98. package/input-text/Icons.js +22 -0
  99. package/{dist/input-text → input-text}/InputText.js +120 -178
  100. package/input-text/index.d.ts +36 -0
  101. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  102. package/layout/Icons.js +55 -0
  103. package/link/Link.d.ts +3 -0
  104. package/link/Link.js +161 -0
  105. package/link/Link.stories.tsx +146 -0
  106. package/link/types.d.ts +74 -0
  107. package/link/types.js +5 -0
  108. package/main.d.ts +44 -0
  109. package/{dist/main.js → main.js} +121 -69
  110. package/number-input/NumberInput.d.ts +4 -0
  111. package/number-input/NumberInput.js +86 -0
  112. package/number-input/NumberInput.stories.tsx +115 -0
  113. package/number-input/NumberInputContext.d.ts +4 -0
  114. package/number-input/NumberInputContext.js +19 -0
  115. package/number-input/numberInputContextTypes.d.ts +19 -0
  116. package/number-input/numberInputContextTypes.js +5 -0
  117. package/number-input/types.d.ts +117 -0
  118. package/number-input/types.js +5 -0
  119. package/package.json +34 -25
  120. package/paginator/Icons.js +66 -0
  121. package/paginator/Paginator.d.ts +4 -0
  122. package/paginator/Paginator.js +198 -0
  123. package/paginator/Paginator.stories.tsx +63 -0
  124. package/paginator/types.d.ts +38 -0
  125. package/paginator/types.js +5 -0
  126. package/password-input/PasswordInput.d.ts +4 -0
  127. package/password-input/PasswordInput.js +162 -0
  128. package/password-input/PasswordInput.stories.tsx +131 -0
  129. package/password-input/types.d.ts +105 -0
  130. package/password-input/types.js +5 -0
  131. package/progress-bar/ProgressBar.d.ts +4 -0
  132. package/progress-bar/ProgressBar.js +170 -0
  133. package/progress-bar/ProgressBar.stories.jsx +58 -0
  134. package/progress-bar/types.d.ts +37 -0
  135. package/progress-bar/types.js +5 -0
  136. package/radio/Radio.d.ts +4 -0
  137. package/{dist/radio → radio}/Radio.js +15 -50
  138. package/radio/Radio.stories.tsx +192 -0
  139. package/radio/types.d.ts +54 -0
  140. package/radio/types.js +5 -0
  141. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +35 -136
  142. package/resultsetTable/index.d.ts +19 -0
  143. package/select/Select.js +865 -0
  144. package/select/Select.stories.tsx +572 -0
  145. package/select/index.d.ts +131 -0
  146. package/sidenav/Sidenav.d.ts +9 -0
  147. package/sidenav/Sidenav.js +136 -0
  148. package/sidenav/Sidenav.stories.tsx +165 -0
  149. package/sidenav/types.d.ts +50 -0
  150. package/sidenav/types.js +5 -0
  151. package/slider/Slider.d.ts +4 -0
  152. package/slider/Slider.js +317 -0
  153. package/slider/Slider.stories.tsx +177 -0
  154. package/slider/types.d.ts +78 -0
  155. package/slider/types.js +5 -0
  156. package/spinner/Spinner.d.ts +4 -0
  157. package/spinner/Spinner.js +250 -0
  158. package/spinner/Spinner.stories.jsx +102 -0
  159. package/spinner/types.d.ts +32 -0
  160. package/spinner/types.js +5 -0
  161. package/switch/Switch.d.ts +4 -0
  162. package/{dist/switch → switch}/Switch.js +26 -69
  163. package/switch/Switch.stories.tsx +160 -0
  164. package/switch/types.d.ts +58 -0
  165. package/switch/types.js +5 -0
  166. package/table/Table.d.ts +4 -0
  167. package/{dist/table → table}/Table.js +13 -23
  168. package/table/Table.stories.jsx +276 -0
  169. package/table/types.d.ts +21 -0
  170. package/table/types.js +5 -0
  171. package/tabs/Tabs.d.ts +4 -0
  172. package/tabs/Tabs.js +213 -0
  173. package/tabs/types.d.ts +70 -0
  174. package/tabs/types.js +5 -0
  175. package/tag/Tag.d.ts +4 -0
  176. package/tag/Tag.js +193 -0
  177. package/tag/Tag.stories.tsx +145 -0
  178. package/tag/types.d.ts +60 -0
  179. package/tag/types.js +5 -0
  180. package/text-input/TextInput.d.ts +4 -0
  181. package/text-input/TextInput.js +785 -0
  182. package/text-input/types.d.ts +157 -0
  183. package/text-input/types.js +5 -0
  184. package/textarea/Textarea.js +317 -0
  185. package/textarea/Textarea.stories.jsx +135 -0
  186. package/textarea/index.d.ts +117 -0
  187. package/{dist/toggle → toggle}/Toggle.js +15 -49
  188. package/toggle/index.d.ts +21 -0
  189. package/toggle-group/ToggleGroup.js +243 -0
  190. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  191. package/toggle-group/index.d.ts +21 -0
  192. package/{dist/upload → upload}/Upload.js +11 -15
  193. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  194. package/upload/buttons-upload/Icons.js +40 -0
  195. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  196. package/upload/dragAndDropArea/Icons.js +39 -0
  197. package/upload/file-upload/FileToUpload.js +115 -0
  198. package/upload/file-upload/Icons.js +66 -0
  199. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  200. package/upload/index.d.ts +15 -0
  201. package/upload/transaction/Icons.js +160 -0
  202. package/upload/transaction/Transaction.js +104 -0
  203. package/upload/transactions/Transactions.js +94 -0
  204. package/{dist/useTheme.js → useTheme.js} +0 -0
  205. package/wizard/Icons.js +65 -0
  206. package/wizard/Wizard.d.ts +4 -0
  207. package/wizard/Wizard.js +231 -0
  208. package/wizard/Wizard.stories.jsx +224 -0
  209. package/wizard/types.d.ts +64 -0
  210. package/wizard/types.js +5 -0
  211. package/README.md +0 -66
  212. package/babel.config.js +0 -8
  213. package/dist/BackgroundColorContext.js +0 -46
  214. package/dist/ThemeContext.js +0 -216
  215. package/dist/accordion/Accordion.js +0 -340
  216. package/dist/accordion/Accordion.stories.js +0 -207
  217. package/dist/accordion/readme.md +0 -96
  218. package/dist/accordion-group/AccordionGroup.js +0 -188
  219. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  220. package/dist/accordion-group/readme.md +0 -70
  221. package/dist/alert/Alert.js +0 -388
  222. package/dist/alert/Alert.stories.js +0 -158
  223. package/dist/alert/close.svg +0 -4
  224. package/dist/alert/error.svg +0 -4
  225. package/dist/alert/info.svg +0 -4
  226. package/dist/alert/readme.md +0 -43
  227. package/dist/alert/success.svg +0 -4
  228. package/dist/alert/warning.svg +0 -4
  229. package/dist/badge/Badge.js +0 -63
  230. package/dist/button/Button.js +0 -228
  231. package/dist/button/Button.stories.js +0 -224
  232. package/dist/button/readme.md +0 -93
  233. package/dist/checkbox/Checkbox.stories.js +0 -144
  234. package/dist/checkbox/readme.md +0 -116
  235. package/dist/common/variables.js +0 -1160
  236. package/dist/date/Date.stories.js +0 -205
  237. package/dist/date/calendar.svg +0 -1
  238. package/dist/date/calendar_dark.svg +0 -1
  239. package/dist/date/readme.md +0 -73
  240. package/dist/dialog/Dialog.stories.js +0 -217
  241. package/dist/dialog/readme.md +0 -32
  242. package/dist/dropdown/Dropdown.js +0 -492
  243. package/dist/dropdown/Dropdown.stories.js +0 -249
  244. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  245. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  246. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  247. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  248. package/dist/dropdown/readme.md +0 -69
  249. package/dist/footer/Footer.js +0 -405
  250. package/dist/footer/Footer.stories.js +0 -94
  251. package/dist/footer/dxc_logo_wht.png +0 -0
  252. package/dist/footer/readme.md +0 -41
  253. package/dist/header/Header.js +0 -431
  254. package/dist/header/Header.stories.js +0 -176
  255. package/dist/header/close_icon.svg +0 -1
  256. package/dist/header/dxc_logo_black.png +0 -0
  257. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  258. package/dist/header/dxc_logo_white.png +0 -0
  259. package/dist/header/hamb_menu_black.svg +0 -1
  260. package/dist/header/hamb_menu_white.svg +0 -1
  261. package/dist/header/readme.md +0 -33
  262. package/dist/input-text/InputText.stories.js +0 -209
  263. package/dist/input-text/error.svg +0 -1
  264. package/dist/input-text/readme.md +0 -91
  265. package/dist/layout/facebook.svg +0 -45
  266. package/dist/layout/linkedin.svg +0 -50
  267. package/dist/layout/twitter.svg +0 -53
  268. package/dist/link/Link.js +0 -240
  269. package/dist/link/readme.md +0 -51
  270. package/dist/paginator/Paginator.js +0 -283
  271. package/dist/paginator/images/next.svg +0 -3
  272. package/dist/paginator/images/nextPage.svg +0 -3
  273. package/dist/paginator/images/previous.svg +0 -3
  274. package/dist/paginator/images/previousPage.svg +0 -3
  275. package/dist/paginator/readme.md +0 -50
  276. package/dist/progress-bar/ProgressBar.js +0 -206
  277. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  278. package/dist/progress-bar/readme.md +0 -63
  279. package/dist/radio/Radio.stories.js +0 -166
  280. package/dist/radio/readme.md +0 -70
  281. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  282. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  283. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  284. package/dist/select/Select.js +0 -545
  285. package/dist/select/Select.stories.js +0 -235
  286. package/dist/select/readme.md +0 -72
  287. package/dist/sidenav/Sidenav.js +0 -183
  288. package/dist/slider/Slider.js +0 -315
  289. package/dist/slider/Slider.stories.js +0 -241
  290. package/dist/slider/readme.md +0 -64
  291. package/dist/spinner/Spinner.js +0 -214
  292. package/dist/spinner/Spinner.stories.js +0 -183
  293. package/dist/spinner/readme.md +0 -65
  294. package/dist/switch/Switch.stories.js +0 -134
  295. package/dist/switch/readme.md +0 -133
  296. package/dist/tabs/Tabs.js +0 -343
  297. package/dist/tabs/Tabs.stories.js +0 -130
  298. package/dist/tabs/readme.md +0 -78
  299. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  300. package/dist/tabs-for-sections/readme.md +0 -78
  301. package/dist/tag/Tag.js +0 -280
  302. package/dist/toggle/Toggle.stories.js +0 -297
  303. package/dist/toggle/readme.md +0 -80
  304. package/dist/toggle-group/ToggleGroup.js +0 -241
  305. package/dist/toggle-group/readme.md +0 -82
  306. package/dist/upload/Upload.stories.js +0 -72
  307. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  308. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  309. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  310. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -325
  311. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  312. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  313. package/dist/upload/file-upload/FileToUpload.js +0 -184
  314. package/dist/upload/file-upload/audio-icon.svg +0 -4
  315. package/dist/upload/file-upload/close.svg +0 -4
  316. package/dist/upload/file-upload/file-icon.svg +0 -4
  317. package/dist/upload/file-upload/video-icon.svg +0 -4
  318. package/dist/upload/readme.md +0 -37
  319. package/dist/upload/transaction/Transaction.js +0 -171
  320. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  321. package/dist/upload/transaction/audio-icon.svg +0 -4
  322. package/dist/upload/transaction/error-icon.svg +0 -4
  323. package/dist/upload/transaction/file-icon-err.svg +0 -4
  324. package/dist/upload/transaction/file-icon.svg +0 -4
  325. package/dist/upload/transaction/image-icon-err.svg +0 -4
  326. package/dist/upload/transaction/image-icon.svg +0 -4
  327. package/dist/upload/transaction/success-icon.svg +0 -4
  328. package/dist/upload/transaction/video-icon-err.svg +0 -4
  329. package/dist/upload/transaction/video-icon.svg +0 -4
  330. package/dist/upload/transactions/Transactions.js +0 -138
  331. package/dist/wizard/Wizard.js +0 -383
  332. package/dist/wizard/invalid_icon.svg +0 -6
  333. package/dist/wizard/valid_icon.svg +0 -6
  334. package/dist/wizard/validation-wrong.svg +0 -6
  335. package/test/Accordion.test.js +0 -33
  336. package/test/AccordionGroup.test.js +0 -125
  337. package/test/Alert.test.js +0 -53
  338. package/test/Box.test.js +0 -10
  339. package/test/Button.test.js +0 -18
  340. package/test/Card.test.js +0 -30
  341. package/test/Checkbox.test.js +0 -45
  342. package/test/Chip.test.js +0 -25
  343. package/test/Date.test.js +0 -393
  344. package/test/Dialog.test.js +0 -23
  345. package/test/Dropdown.test.js +0 -130
  346. package/test/Footer.test.js +0 -99
  347. package/test/Header.test.js +0 -39
  348. package/test/Heading.test.js +0 -35
  349. package/test/InputText.test.js +0 -240
  350. package/test/Link.test.js +0 -43
  351. package/test/Paginator.test.js +0 -177
  352. package/test/ProgressBar.test.js +0 -35
  353. package/test/Radio.test.js +0 -37
  354. package/test/ResultsetTable.test.js +0 -330
  355. package/test/Select.test.js +0 -192
  356. package/test/Sidenav.test.js +0 -45
  357. package/test/Slider.test.js +0 -82
  358. package/test/Spinner.test.js +0 -27
  359. package/test/Switch.test.js +0 -45
  360. package/test/Table.test.js +0 -36
  361. package/test/Tabs.test.js +0 -109
  362. package/test/TabsForSections.test.js +0 -34
  363. package/test/Tag.test.js +0 -32
  364. package/test/TextArea.test.js +0 -52
  365. package/test/ToggleGroup.test.js +0 -81
  366. package/test/Upload.test.js +0 -60
  367. package/test/Wizard.test.js +0 -130
  368. package/test/mocks/pngMock.js +0 -1
  369. 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,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;
@@ -1,16 +1,14 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
13
 
16
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
@@ -19,99 +17,53 @@ var _react = _interopRequireDefault(require("react"));
19
17
 
20
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
19
 
22
- var _propTypes = _interopRequireDefault(require("prop-types"));
23
-
24
20
  var _variables = require("../common/variables.js");
25
21
 
26
22
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
23
 
28
- function _templateObject6() {
29
- var data = (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"]);
30
-
31
- _templateObject6 = function _templateObject6() {
32
- return data;
33
- };
34
-
35
- return data;
36
- }
37
-
38
- function _templateObject5() {
39
- var data = (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"]);
24
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
40
25
 
41
- _templateObject5 = function _templateObject5() {
42
- return data;
43
- };
44
-
45
- return data;
46
- }
47
-
48
- function _templateObject4() {
49
- var data = (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"]);
50
-
51
- _templateObject4 = function _templateObject4() {
52
- return data;
53
- };
54
-
55
- return data;
56
- }
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); }
57
27
 
58
- function _templateObject3() {
59
- var data = (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"]);
60
-
61
- _templateObject3 = function _templateObject3() {
62
- return data;
63
- };
64
-
65
- return data;
66
- }
67
-
68
- function _templateObject2() {
69
- var data = (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"]);
70
-
71
- _templateObject2 = function _templateObject2() {
72
- return data;
73
- };
74
-
75
- return data;
76
- }
77
-
78
- function _templateObject() {
79
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n font-family: ", ";\n color: ", ";\n"]);
80
-
81
- _templateObject = function _templateObject() {
82
- return data;
83
- };
84
-
85
- return data;
86
- }
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; }
87
29
 
88
30
  var DxcHeading = function DxcHeading(_ref) {
89
31
  var _ref$level = _ref.level,
90
32
  level = _ref$level === void 0 ? 1 : _ref$level,
91
33
  _ref$text = _ref.text,
92
34
  text = _ref$text === void 0 ? "" : _ref$text,
93
- _ref$weight = _ref.weight,
94
- weight = _ref$weight === void 0 ? "" : _ref$weight,
35
+ as = _ref.as,
36
+ weight = _ref.weight,
95
37
  margin = _ref.margin;
96
38
  var colorsTheme = (0, _useTheme["default"])();
97
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
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, {
98
45
  theme: colorsTheme.heading
99
- }, _react["default"].createElement(HeadingContainer, {
46
+ }, /*#__PURE__*/_react["default"].createElement(HeadingContainer, {
100
47
  margin: margin
101
- }, level === 1 ? _react["default"].createElement(HeadingLevel1, {
48
+ }, level === 1 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel1, {
49
+ as: checkValidAs(),
102
50
  weight: weight
103
- }, text) : level === 2 ? _react["default"].createElement(HeadingLevel2, {
51
+ }, text) : level === 2 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel2, {
52
+ as: checkValidAs(),
104
53
  weight: weight
105
- }, text) : level === 3 ? _react["default"].createElement(HeadingLevel3, {
54
+ }, text) : level === 3 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel3, {
55
+ as: checkValidAs(),
106
56
  weight: weight
107
- }, text) : level === 4 ? _react["default"].createElement(HeadingLevel4, {
57
+ }, text) : level === 4 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel4, {
58
+ as: checkValidAs(),
108
59
  weight: weight
109
- }, text) : _react["default"].createElement(HeadingLevel5, {
60
+ }, text) : /*#__PURE__*/_react["default"].createElement(HeadingLevel5, {
61
+ as: checkValidAs(),
110
62
  weight: weight
111
63
  }, text)));
112
64
  };
113
65
 
114
- var HeadingContainer = _styledComponents["default"].div(_templateObject(), function (props) {
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) {
115
67
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
116
68
  }, function (props) {
117
69
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -121,13 +73,9 @@ var HeadingContainer = _styledComponents["default"].div(_templateObject(), funct
121
73
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
122
74
  }, function (props) {
123
75
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
124
- }, function (props) {
125
- return props.theme.fontFamilyBase;
126
- }, function (props) {
127
- return props.theme.fontColorBase;
128
76
  });
129
77
 
130
- var HeadingLevel1 = _styledComponents["default"].h1(_templateObject2(), function (props) {
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) {
131
79
  return props.theme.level1FontFamily;
132
80
  }, function (props) {
133
81
  return props.theme.level1FontStyle;
@@ -143,7 +91,7 @@ var HeadingLevel1 = _styledComponents["default"].h1(_templateObject2(), function
143
91
  return props.theme.level1FontColor;
144
92
  });
145
93
 
146
- var HeadingLevel2 = _styledComponents["default"].h2(_templateObject3(), function (props) {
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) {
147
95
  return props.theme.level2FontFamily;
148
96
  }, function (props) {
149
97
  return props.theme.level2FontStyle;
@@ -159,7 +107,7 @@ var HeadingLevel2 = _styledComponents["default"].h2(_templateObject3(), function
159
107
  return props.theme.level2FontColor;
160
108
  });
161
109
 
162
- var HeadingLevel3 = _styledComponents["default"].h3(_templateObject4(), function (props) {
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) {
163
111
  return props.theme.level3FontFamily;
164
112
  }, function (props) {
165
113
  return props.theme.level3FontStyle;
@@ -175,7 +123,7 @@ var HeadingLevel3 = _styledComponents["default"].h3(_templateObject4(), function
175
123
  return props.theme.level3FontColor;
176
124
  });
177
125
 
178
- var HeadingLevel4 = _styledComponents["default"].h4(_templateObject5(), function (props) {
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) {
179
127
  return props.theme.level4FontFamily;
180
128
  }, function (props) {
181
129
  return props.theme.level4FontStyle;
@@ -191,7 +139,7 @@ var HeadingLevel4 = _styledComponents["default"].h4(_templateObject5(), function
191
139
  return props.theme.level4FontColor;
192
140
  });
193
141
 
194
- var HeadingLevel5 = _styledComponents["default"].h5(_templateObject6(), function (props) {
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) {
195
143
  return props.theme.level5FontFamily;
196
144
  }, function (props) {
197
145
  return props.theme.level5FontStyle;
@@ -207,16 +155,5 @@ var HeadingLevel5 = _styledComponents["default"].h5(_templateObject6(), function
207
155
  return props.theme.level5FontColor;
208
156
  });
209
157
 
210
- DxcHeading.propTypes = {
211
- level: _propTypes["default"].number,
212
- text: _propTypes["default"].string,
213
- weight: _propTypes["default"].oneOf(["light", "normal", "bold", ""]),
214
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
215
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
216
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
217
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
218
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
219
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
220
- };
221
158
  var _default = DxcHeading;
222
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;