@dxc-technology/halstack-react 0.0.0-5ca35e9 → 0.0.0-5dd2266

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 (526) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1235 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.d.ts +4 -0
  7. package/accordion/Accordion.js +182 -0
  8. package/accordion/Accordion.stories.tsx +283 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +57 -0
  11. package/accordion/types.js +5 -0
  12. package/accordion-group/AccordionGroup.d.ts +8 -0
  13. package/accordion-group/AccordionGroup.js +101 -0
  14. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  15. package/accordion-group/AccordionGroup.test.js +98 -0
  16. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  17. package/accordion-group/AccordionGroupAccordion.js +31 -0
  18. package/accordion-group/types.d.ts +67 -0
  19. package/accordion-group/types.js +5 -0
  20. package/alert/Alert.d.ts +4 -0
  21. package/alert/Alert.js +254 -0
  22. package/alert/Alert.stories.tsx +198 -0
  23. package/alert/Alert.test.js +75 -0
  24. package/alert/types.d.ts +49 -0
  25. package/alert/types.js +5 -0
  26. package/badge/Badge.d.ts +4 -0
  27. package/badge/Badge.js +48 -0
  28. package/badge/types.d.ts +5 -0
  29. package/badge/types.js +5 -0
  30. package/bleed/Bleed.d.ts +3 -0
  31. package/bleed/Bleed.js +43 -0
  32. package/bleed/Bleed.stories.tsx +342 -0
  33. package/bleed/types.d.ts +37 -0
  34. package/bleed/types.js +5 -0
  35. package/box/Box.d.ts +4 -0
  36. package/box/Box.js +75 -0
  37. package/box/Box.stories.tsx +119 -0
  38. package/box/Box.test.js +13 -0
  39. package/box/types.d.ts +32 -0
  40. package/box/types.js +5 -0
  41. package/bulleted-list/BulletedList.d.ts +7 -0
  42. package/bulleted-list/BulletedList.js +89 -0
  43. package/bulleted-list/BulletedList.stories.tsx +115 -0
  44. package/bulleted-list/types.d.ts +38 -0
  45. package/bulleted-list/types.js +5 -0
  46. package/button/Button.d.ts +4 -0
  47. package/button/Button.js +120 -0
  48. package/button/Button.stories.tsx +344 -0
  49. package/button/Button.test.js +36 -0
  50. package/button/types.d.ts +57 -0
  51. package/button/types.js +5 -0
  52. package/card/Card.d.ts +4 -0
  53. package/card/Card.js +120 -0
  54. package/card/Card.stories.tsx +171 -0
  55. package/card/Card.test.js +39 -0
  56. package/card/types.d.ts +62 -0
  57. package/card/types.js +5 -0
  58. package/checkbox/Checkbox.d.ts +4 -0
  59. package/checkbox/Checkbox.js +215 -0
  60. package/checkbox/Checkbox.stories.tsx +222 -0
  61. package/checkbox/Checkbox.test.js +199 -0
  62. package/checkbox/types.d.ts +72 -0
  63. package/checkbox/types.js +5 -0
  64. package/chip/Chip.d.ts +4 -0
  65. package/chip/Chip.js +121 -0
  66. package/chip/Chip.stories.tsx +214 -0
  67. package/chip/Chip.test.js +41 -0
  68. package/chip/types.d.ts +45 -0
  69. package/chip/types.js +5 -0
  70. package/common/OpenSans.css +69 -0
  71. package/common/coreTokens.d.ts +237 -0
  72. package/common/coreTokens.js +184 -0
  73. package/common/utils.d.ts +1 -0
  74. package/common/utils.js +16 -0
  75. package/common/variables.d.ts +1381 -0
  76. package/common/variables.js +1253 -0
  77. package/container/Container.d.ts +4 -0
  78. package/container/Container.js +194 -0
  79. package/container/Container.stories.tsx +214 -0
  80. package/container/types.d.ts +74 -0
  81. package/container/types.js +5 -0
  82. package/date-input/Calendar.d.ts +4 -0
  83. package/date-input/Calendar.js +214 -0
  84. package/date-input/DateInput.d.ts +4 -0
  85. package/date-input/DateInput.js +223 -0
  86. package/date-input/DateInput.stories.tsx +285 -0
  87. package/date-input/DateInput.test.js +808 -0
  88. package/date-input/DatePicker.d.ts +4 -0
  89. package/date-input/DatePicker.js +115 -0
  90. package/date-input/Icons.d.ts +6 -0
  91. package/date-input/Icons.js +58 -0
  92. package/date-input/YearPicker.d.ts +4 -0
  93. package/date-input/YearPicker.js +100 -0
  94. package/date-input/types.d.ts +164 -0
  95. package/date-input/types.js +5 -0
  96. package/dialog/Dialog.d.ts +4 -0
  97. package/dialog/Dialog.js +104 -0
  98. package/dialog/Dialog.stories.tsx +365 -0
  99. package/dialog/Dialog.test.js +307 -0
  100. package/dialog/types.d.ts +36 -0
  101. package/dialog/types.js +5 -0
  102. package/dropdown/Dropdown.d.ts +4 -0
  103. package/dropdown/Dropdown.js +334 -0
  104. package/dropdown/Dropdown.stories.tsx +438 -0
  105. package/dropdown/Dropdown.test.js +599 -0
  106. package/dropdown/DropdownMenu.d.ts +4 -0
  107. package/dropdown/DropdownMenu.js +63 -0
  108. package/dropdown/DropdownMenuItem.d.ts +4 -0
  109. package/dropdown/DropdownMenuItem.js +67 -0
  110. package/dropdown/types.d.ts +98 -0
  111. package/dropdown/types.js +5 -0
  112. package/file-input/FileInput.d.ts +4 -0
  113. package/file-input/FileInput.js +479 -0
  114. package/file-input/FileInput.stories.tsx +618 -0
  115. package/file-input/FileInput.test.js +459 -0
  116. package/file-input/FileItem.d.ts +4 -0
  117. package/file-input/FileItem.js +135 -0
  118. package/file-input/types.d.ts +129 -0
  119. package/file-input/types.js +5 -0
  120. package/flex/Flex.d.ts +4 -0
  121. package/flex/Flex.js +57 -0
  122. package/flex/Flex.stories.tsx +112 -0
  123. package/flex/types.d.ts +97 -0
  124. package/flex/types.js +5 -0
  125. package/footer/Footer.d.ts +4 -0
  126. package/footer/Footer.js +125 -0
  127. package/footer/Footer.stories.tsx +152 -0
  128. package/footer/Footer.test.js +85 -0
  129. package/footer/Icons.d.ts +2 -0
  130. package/footer/Icons.js +72 -0
  131. package/footer/types.d.ts +58 -0
  132. package/footer/types.js +5 -0
  133. package/grid/Grid.d.ts +7 -0
  134. package/grid/Grid.js +76 -0
  135. package/grid/Grid.stories.tsx +219 -0
  136. package/grid/types.d.ts +115 -0
  137. package/grid/types.js +5 -0
  138. package/header/Header.d.ts +8 -0
  139. package/header/Header.js +220 -0
  140. package/header/Header.stories.tsx +251 -0
  141. package/header/Header.test.js +66 -0
  142. package/header/Icons.d.ts +2 -0
  143. package/header/Icons.js +29 -0
  144. package/header/types.d.ts +33 -0
  145. package/header/types.js +5 -0
  146. package/heading/Heading.d.ts +4 -0
  147. package/heading/Heading.js +137 -0
  148. package/heading/Heading.stories.tsx +54 -0
  149. package/heading/Heading.test.js +169 -0
  150. package/heading/types.d.ts +33 -0
  151. package/heading/types.js +5 -0
  152. package/image/Image.d.ts +4 -0
  153. package/image/Image.js +70 -0
  154. package/image/Image.stories.tsx +127 -0
  155. package/image/types.d.ts +72 -0
  156. package/image/types.js +5 -0
  157. package/inset/Inset.d.ts +3 -0
  158. package/inset/Inset.js +43 -0
  159. package/inset/Inset.stories.tsx +230 -0
  160. package/inset/types.d.ts +37 -0
  161. package/inset/types.js +5 -0
  162. package/layout/ApplicationLayout.d.ts +20 -0
  163. package/layout/ApplicationLayout.js +134 -0
  164. package/layout/ApplicationLayout.stories.tsx +162 -0
  165. package/layout/Icons.d.ts +8 -0
  166. package/layout/Icons.js +58 -0
  167. package/layout/SidenavContext.d.ts +5 -0
  168. package/layout/SidenavContext.js +13 -0
  169. package/layout/types.d.ts +41 -0
  170. package/layout/types.js +5 -0
  171. package/link/Link.d.ts +4 -0
  172. package/link/Link.js +115 -0
  173. package/link/Link.stories.tsx +253 -0
  174. package/link/Link.test.js +63 -0
  175. package/link/types.d.ts +54 -0
  176. package/link/types.js +5 -0
  177. package/main.d.ts +46 -0
  178. package/{dist/main.js → main.js} +156 -99
  179. package/nav-tabs/NavTabs.d.ts +8 -0
  180. package/nav-tabs/NavTabs.js +90 -0
  181. package/nav-tabs/NavTabs.stories.tsx +274 -0
  182. package/nav-tabs/NavTabs.test.js +75 -0
  183. package/nav-tabs/Tab.d.ts +4 -0
  184. package/nav-tabs/Tab.js +117 -0
  185. package/nav-tabs/types.d.ts +52 -0
  186. package/nav-tabs/types.js +5 -0
  187. package/number-input/NumberInput.d.ts +11 -0
  188. package/number-input/NumberInput.js +67 -0
  189. package/number-input/NumberInput.stories.tsx +131 -0
  190. package/number-input/NumberInput.test.js +830 -0
  191. package/number-input/types.d.ts +130 -0
  192. package/number-input/types.js +5 -0
  193. package/package.json +60 -44
  194. package/paginator/Icons.d.ts +5 -0
  195. package/paginator/Icons.js +40 -0
  196. package/paginator/Paginator.d.ts +4 -0
  197. package/paginator/Paginator.js +135 -0
  198. package/paginator/Paginator.stories.tsx +87 -0
  199. package/paginator/Paginator.test.js +335 -0
  200. package/paginator/types.d.ts +38 -0
  201. package/paginator/types.js +5 -0
  202. package/paragraph/Paragraph.d.ts +5 -0
  203. package/paragraph/Paragraph.js +22 -0
  204. package/paragraph/Paragraph.stories.tsx +27 -0
  205. package/password-input/Icons.d.ts +6 -0
  206. package/password-input/Icons.js +35 -0
  207. package/password-input/PasswordInput.d.ts +4 -0
  208. package/password-input/PasswordInput.js +97 -0
  209. package/password-input/PasswordInput.stories.tsx +99 -0
  210. package/password-input/PasswordInput.test.js +198 -0
  211. package/password-input/types.d.ts +111 -0
  212. package/password-input/types.js +5 -0
  213. package/progress-bar/ProgressBar.d.ts +4 -0
  214. package/progress-bar/ProgressBar.js +144 -0
  215. package/progress-bar/ProgressBar.stories.tsx +93 -0
  216. package/progress-bar/ProgressBar.test.js +93 -0
  217. package/progress-bar/types.d.ts +37 -0
  218. package/progress-bar/types.js +5 -0
  219. package/quick-nav/QuickNav.d.ts +4 -0
  220. package/quick-nav/QuickNav.js +94 -0
  221. package/quick-nav/QuickNav.stories.tsx +356 -0
  222. package/quick-nav/types.d.ts +21 -0
  223. package/quick-nav/types.js +5 -0
  224. package/radio-group/Radio.d.ts +4 -0
  225. package/radio-group/Radio.js +124 -0
  226. package/radio-group/RadioGroup.d.ts +4 -0
  227. package/radio-group/RadioGroup.js +235 -0
  228. package/radio-group/RadioGroup.stories.tsx +214 -0
  229. package/radio-group/RadioGroup.test.js +756 -0
  230. package/radio-group/types.d.ts +114 -0
  231. package/radio-group/types.js +5 -0
  232. package/resultset-table/Icons.d.ts +7 -0
  233. package/resultset-table/Icons.js +47 -0
  234. package/resultset-table/ResultsetTable.d.ts +4 -0
  235. package/resultset-table/ResultsetTable.js +159 -0
  236. package/resultset-table/ResultsetTable.stories.tsx +300 -0
  237. package/resultset-table/ResultsetTable.test.js +305 -0
  238. package/resultset-table/types.d.ts +67 -0
  239. package/resultset-table/types.js +5 -0
  240. package/select/Icons.d.ts +10 -0
  241. package/select/Icons.js +89 -0
  242. package/select/Listbox.d.ts +4 -0
  243. package/select/Listbox.js +143 -0
  244. package/select/Option.d.ts +4 -0
  245. package/select/Option.js +80 -0
  246. package/select/Select.d.ts +4 -0
  247. package/select/Select.js +580 -0
  248. package/select/Select.stories.tsx +971 -0
  249. package/select/Select.test.js +2370 -0
  250. package/select/types.d.ts +209 -0
  251. package/select/types.js +5 -0
  252. package/sidenav/Icons.d.ts +7 -0
  253. package/sidenav/Icons.js +47 -0
  254. package/sidenav/Sidenav.d.ts +10 -0
  255. package/sidenav/Sidenav.js +196 -0
  256. package/sidenav/Sidenav.stories.tsx +282 -0
  257. package/sidenav/Sidenav.test.js +37 -0
  258. package/sidenav/types.d.ts +76 -0
  259. package/sidenav/types.js +5 -0
  260. package/slider/Slider.d.ts +4 -0
  261. package/slider/Slider.js +285 -0
  262. package/slider/Slider.test.js +254 -0
  263. package/slider/types.d.ts +86 -0
  264. package/slider/types.js +5 -0
  265. package/spinner/Spinner.d.ts +4 -0
  266. package/spinner/Spinner.js +206 -0
  267. package/spinner/Spinner.stories.tsx +129 -0
  268. package/spinner/Spinner.test.js +55 -0
  269. package/spinner/types.d.ts +32 -0
  270. package/spinner/types.js +5 -0
  271. package/switch/Switch.d.ts +4 -0
  272. package/switch/Switch.js +214 -0
  273. package/switch/Switch.stories.tsx +137 -0
  274. package/switch/Switch.test.js +180 -0
  275. package/switch/types.d.ts +66 -0
  276. package/switch/types.js +5 -0
  277. package/table/Table.d.ts +4 -0
  278. package/table/Table.js +96 -0
  279. package/table/Table.stories.tsx +356 -0
  280. package/table/Table.test.js +21 -0
  281. package/table/types.d.ts +21 -0
  282. package/table/types.js +5 -0
  283. package/tabs/Tab.d.ts +4 -0
  284. package/tabs/Tab.js +113 -0
  285. package/tabs/Tabs.d.ts +4 -0
  286. package/tabs/Tabs.js +385 -0
  287. package/tabs/Tabs.stories.tsx +226 -0
  288. package/tabs/Tabs.test.js +294 -0
  289. package/tabs/types.d.ts +92 -0
  290. package/tabs/types.js +5 -0
  291. package/tag/Tag.d.ts +4 -0
  292. package/tag/Tag.js +151 -0
  293. package/tag/Tag.stories.tsx +155 -0
  294. package/tag/Tag.test.js +49 -0
  295. package/tag/types.d.ts +69 -0
  296. package/tag/types.js +5 -0
  297. package/text-input/Icons.d.ts +8 -0
  298. package/text-input/Icons.js +56 -0
  299. package/text-input/Suggestion.d.ts +4 -0
  300. package/text-input/Suggestion.js +67 -0
  301. package/text-input/Suggestions.d.ts +4 -0
  302. package/text-input/Suggestions.js +84 -0
  303. package/text-input/TextInput.d.ts +4 -0
  304. package/text-input/TextInput.js +578 -0
  305. package/text-input/TextInput.stories.tsx +465 -0
  306. package/text-input/TextInput.test.js +1739 -0
  307. package/text-input/types.d.ts +205 -0
  308. package/text-input/types.js +5 -0
  309. package/textarea/Textarea.d.ts +4 -0
  310. package/textarea/Textarea.js +234 -0
  311. package/textarea/Textarea.stories.tsx +174 -0
  312. package/textarea/Textarea.test.js +406 -0
  313. package/textarea/types.d.ts +141 -0
  314. package/textarea/types.js +5 -0
  315. package/toggle-group/ToggleGroup.d.ts +4 -0
  316. package/toggle-group/ToggleGroup.js +201 -0
  317. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  318. package/toggle-group/ToggleGroup.test.js +137 -0
  319. package/toggle-group/types.d.ts +114 -0
  320. package/toggle-group/types.js +5 -0
  321. package/typography/Typography.d.ts +4 -0
  322. package/typography/Typography.js +23 -0
  323. package/typography/Typography.stories.tsx +198 -0
  324. package/typography/types.d.ts +18 -0
  325. package/typography/types.js +5 -0
  326. package/useTheme.d.ts +1134 -0
  327. package/useTheme.js +15 -0
  328. package/useTranslatedLabels.d.ts +85 -0
  329. package/useTranslatedLabels.js +14 -0
  330. package/utils/BaseTypography.d.ts +21 -0
  331. package/utils/BaseTypography.js +94 -0
  332. package/utils/FocusLock.d.ts +13 -0
  333. package/utils/FocusLock.js +121 -0
  334. package/wizard/Wizard.d.ts +4 -0
  335. package/wizard/Wizard.js +250 -0
  336. package/wizard/Wizard.stories.tsx +253 -0
  337. package/wizard/Wizard.test.js +114 -0
  338. package/wizard/types.d.ts +64 -0
  339. package/wizard/types.js +5 -0
  340. package/babel.config.js +0 -4
  341. package/dist/ThemeContext.js +0 -15
  342. package/dist/accordion/Accordion.js +0 -248
  343. package/dist/accordion/Accordion.stories.js +0 -207
  344. package/dist/accordion/readme.md +0 -96
  345. package/dist/alert/Alert.js +0 -304
  346. package/dist/alert/Alert.stories.js +0 -158
  347. package/dist/alert/close.svg +0 -4
  348. package/dist/alert/error.svg +0 -4
  349. package/dist/alert/info.svg +0 -4
  350. package/dist/alert/readme.md +0 -43
  351. package/dist/alert/success.svg +0 -4
  352. package/dist/alert/warning.svg +0 -4
  353. package/dist/box/Box.js +0 -148
  354. package/dist/button/Button.js +0 -181
  355. package/dist/button/Button.stories.js +0 -224
  356. package/dist/button/readme.md +0 -93
  357. package/dist/card/Card.js +0 -217
  358. package/dist/checkbox/Checkbox.js +0 -240
  359. package/dist/checkbox/Checkbox.stories.js +0 -144
  360. package/dist/checkbox/readme.md +0 -116
  361. package/dist/chip/Chip.js +0 -173
  362. package/dist/common/OpenSans.css +0 -81
  363. package/dist/common/RequiredComponent.js +0 -46
  364. package/dist/common/services/example-service.js +0 -10
  365. package/dist/common/services/example-service.test.js +0 -12
  366. package/dist/common/utils.js +0 -42
  367. package/dist/common/variables.js +0 -438
  368. package/dist/date/Date.js +0 -356
  369. package/dist/date/Date.stories.js +0 -205
  370. package/dist/date/calendar.svg +0 -1
  371. package/dist/date/calendar_dark.svg +0 -1
  372. package/dist/date/readme.md +0 -73
  373. package/dist/dialog/Dialog.js +0 -197
  374. package/dist/dialog/Dialog.stories.js +0 -217
  375. package/dist/dialog/readme.md +0 -32
  376. package/dist/dropdown/Dropdown.js +0 -416
  377. package/dist/dropdown/Dropdown.stories.js +0 -249
  378. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  379. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  380. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  381. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  382. package/dist/dropdown/readme.md +0 -69
  383. package/dist/footer/Footer.js +0 -346
  384. package/dist/footer/Footer.stories.js +0 -94
  385. package/dist/footer/dxc_logo_wht.png +0 -0
  386. package/dist/footer/readme.md +0 -41
  387. package/dist/header/Header.js +0 -360
  388. package/dist/header/Header.stories.js +0 -176
  389. package/dist/header/close_icon.svg +0 -1
  390. package/dist/header/dxc_logo_black.png +0 -0
  391. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  392. package/dist/header/dxc_logo_white.png +0 -0
  393. package/dist/header/hamb_menu_black.svg +0 -1
  394. package/dist/header/hamb_menu_white.svg +0 -1
  395. package/dist/header/readme.md +0 -33
  396. package/dist/heading/Heading.js +0 -153
  397. package/dist/input-text/InputText.js +0 -519
  398. package/dist/input-text/InputText.stories.js +0 -209
  399. package/dist/input-text/error.svg +0 -1
  400. package/dist/input-text/readme.md +0 -91
  401. package/dist/layout/ApplicationLayout.js +0 -320
  402. package/dist/layout/SideNav.js +0 -67
  403. package/dist/layout/facebook.svg +0 -45
  404. package/dist/layout/linkedin.svg +0 -50
  405. package/dist/layout/twitter.svg +0 -53
  406. package/dist/link/Link.js +0 -168
  407. package/dist/link/readme.md +0 -51
  408. package/dist/paginator/Paginator.js +0 -196
  409. package/dist/paginator/images/next.svg +0 -3
  410. package/dist/paginator/images/nextPage.svg +0 -3
  411. package/dist/paginator/images/previous.svg +0 -3
  412. package/dist/paginator/images/previousPage.svg +0 -3
  413. package/dist/paginator/readme.md +0 -50
  414. package/dist/progress-bar/ProgressBar.js +0 -185
  415. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  416. package/dist/progress-bar/readme.md +0 -63
  417. package/dist/radio/Radio.js +0 -195
  418. package/dist/radio/Radio.stories.js +0 -166
  419. package/dist/radio/readme.md +0 -70
  420. package/dist/resultsetTable/ResultsetTable.js +0 -333
  421. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  422. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  423. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  424. package/dist/select/Select.js +0 -451
  425. package/dist/select/Select.stories.js +0 -235
  426. package/dist/select/readme.md +0 -72
  427. package/dist/sidenav/Sidenav.js +0 -222
  428. package/dist/sidenav/arrow_icon.svg +0 -3
  429. package/dist/slider/Slider.js +0 -258
  430. package/dist/slider/Slider.stories.js +0 -241
  431. package/dist/slider/readme.md +0 -64
  432. package/dist/spinner/Spinner.js +0 -193
  433. package/dist/spinner/Spinner.stories.js +0 -183
  434. package/dist/spinner/readme.md +0 -65
  435. package/dist/switch/Switch.js +0 -199
  436. package/dist/switch/Switch.stories.js +0 -134
  437. package/dist/switch/readme.md +0 -133
  438. package/dist/table/Table.js +0 -93
  439. package/dist/tabs/Tabs.js +0 -172
  440. package/dist/tabs/Tabs.stories.js +0 -130
  441. package/dist/tabs/readme.md +0 -78
  442. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  443. package/dist/tabs-for-sections/readme.md +0 -78
  444. package/dist/tag/Tag.js +0 -234
  445. package/dist/textarea/Textarea.js +0 -227
  446. package/dist/toggle/Toggle.js +0 -223
  447. package/dist/toggle/Toggle.stories.js +0 -297
  448. package/dist/toggle/readme.md +0 -80
  449. package/dist/toggle-group/ToggleGroup.js +0 -214
  450. package/dist/toggle-group/readme.md +0 -82
  451. package/dist/upload/Upload.js +0 -200
  452. package/dist/upload/Upload.stories.js +0 -72
  453. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  454. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  455. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  456. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  457. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  458. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  459. package/dist/upload/file-upload/FileToUpload.js +0 -158
  460. package/dist/upload/file-upload/audio-icon.svg +0 -4
  461. package/dist/upload/file-upload/close.svg +0 -4
  462. package/dist/upload/file-upload/file-icon.svg +0 -4
  463. package/dist/upload/file-upload/video-icon.svg +0 -4
  464. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  465. package/dist/upload/readme.md +0 -37
  466. package/dist/upload/transaction/Transaction.js +0 -155
  467. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  468. package/dist/upload/transaction/audio-icon.svg +0 -4
  469. package/dist/upload/transaction/error-icon.svg +0 -4
  470. package/dist/upload/transaction/file-icon-err.svg +0 -4
  471. package/dist/upload/transaction/file-icon.svg +0 -4
  472. package/dist/upload/transaction/image-icon-err.svg +0 -4
  473. package/dist/upload/transaction/image-icon.svg +0 -4
  474. package/dist/upload/transaction/success-icon.svg +0 -4
  475. package/dist/upload/transaction/video-icon-err.svg +0 -4
  476. package/dist/upload/transaction/video-icon.svg +0 -4
  477. package/dist/upload/transactions/Transactions.js +0 -120
  478. package/dist/wizard/Wizard.js +0 -327
  479. package/dist/wizard/invalid_icon.svg +0 -6
  480. package/dist/wizard/valid_icon.svg +0 -6
  481. package/dist/wizard/validation-wrong.svg +0 -6
  482. package/test/Accordion.test.js +0 -33
  483. package/test/Alert.test.js +0 -53
  484. package/test/Box.test.js +0 -10
  485. package/test/Button.test.js +0 -18
  486. package/test/Card.test.js +0 -30
  487. package/test/Checkbox.test.js +0 -45
  488. package/test/Chip.test.js +0 -25
  489. package/test/Date.test.js +0 -393
  490. package/test/Dialog.test.js +0 -23
  491. package/test/Dropdown.test.js +0 -130
  492. package/test/Footer.test.js +0 -99
  493. package/test/Header.test.js +0 -39
  494. package/test/Heading.test.js +0 -35
  495. package/test/InputText.test.js +0 -236
  496. package/test/Link.test.js +0 -33
  497. package/test/Paginator.test.js +0 -165
  498. package/test/ProgressBar.test.js +0 -35
  499. package/test/Radio.test.js +0 -37
  500. package/test/ResultsetTable.test.js +0 -282
  501. package/test/Select.test.js +0 -191
  502. package/test/Sidenav.test.js +0 -87
  503. package/test/Slider.test.js +0 -65
  504. package/test/Spinner.test.js +0 -27
  505. package/test/Switch.test.js +0 -45
  506. package/test/Table.test.js +0 -36
  507. package/test/Tabs.test.js +0 -88
  508. package/test/TabsForSections.test.js +0 -34
  509. package/test/Tag.test.js +0 -32
  510. package/test/TextArea.test.js +0 -52
  511. package/test/Toggle.test.js +0 -43
  512. package/test/ToggleGroup.test.js +0 -81
  513. package/test/Upload.test.js +0 -60
  514. package/test/Wizard.test.js +0 -130
  515. package/test/mocks/pngMock.js +0 -1
  516. package/test/mocks/svgMock.js +0 -1
  517. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  518. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  519. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  520. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  521. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  522. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  523. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  524. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  525. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  526. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -0,0 +1,251 @@
1
+ import React from "react";
2
+ import DxcHeader from "./Header";
3
+ import DxcButton from "../button/Button";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import { userEvent, waitFor, within } from "@storybook/testing-library";
7
+ import DxcFlex from "../flex/Flex";
8
+ import DxcLink from "../link/Link";
9
+ import { HalstackProvider } from "../HalstackContext";
10
+
11
+ export default {
12
+ title: "Header",
13
+ component: DxcHeader,
14
+ };
15
+
16
+ const options: any = [
17
+ {
18
+ value: 1,
19
+ label: "Amazon",
20
+ },
21
+ ];
22
+
23
+ const options2: any = [
24
+ {
25
+ value: 1,
26
+ label: "Home",
27
+ },
28
+ {
29
+ value: 2,
30
+ label: "Release notes",
31
+ },
32
+ {
33
+ value: 3,
34
+ label: "Sign out",
35
+ },
36
+ ];
37
+
38
+ const opinionatedTheme = {
39
+ header: {
40
+ baseColor: "#ffffff",
41
+ accentColor: "#000000",
42
+ fontColor: "#000000",
43
+ menuBaseColor: "#ffffff",
44
+ hamburguerColor: "#000000",
45
+ logo: "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b8/2021_Facebook_icon.svg/2048px-2021_Facebook_icon.svg.png",
46
+ logoResponsive:
47
+ "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b8/2021_Facebook_icon.svg/2048px-2021_Facebook_icon.svg.png",
48
+ contentColor: "#000000",
49
+ overlayColor: "#000000b3",
50
+ },
51
+ };
52
+
53
+ export const Chromatic = () => (
54
+ <>
55
+ <ExampleContainer>
56
+ <Title title="Default with dropdown" theme="light" level={4} />
57
+ <DxcHeader
58
+ content={<DxcHeader.Dropdown options={options} label="Default Dropdown" onSelectOption={() => {}} />}
59
+ />
60
+ </ExampleContainer>
61
+ <ExampleContainer>
62
+ <Title title="Underlined with text" theme="light" level={4} />
63
+ <DxcHeader underlined content={<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>} />
64
+ </ExampleContainer>
65
+ <ExampleContainer>
66
+ <Title title="Underlined, dropdown and links" theme="light" level={4} />
67
+ <DxcHeader
68
+ content={
69
+ <DxcFlex alignItems="center" gap="4rem">
70
+ <DxcLink>Link 1</DxcLink>
71
+ <DxcLink>Link 2</DxcLink>
72
+ <DxcLink>Link 3</DxcLink>
73
+ <DxcHeader.Dropdown options={options2} label="Label" onSelectOption={() => {}} />
74
+ </DxcFlex>
75
+ }
76
+ underlined
77
+ />
78
+ </ExampleContainer>
79
+ <Title title="Margins" theme="light" level={2} />
80
+ <ExampleContainer>
81
+ <Title title="Xxsmall margin" theme="light" level={4} />
82
+ <DxcHeader underlined margin="xxsmall" />
83
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
84
+ </ExampleContainer>
85
+ <ExampleContainer>
86
+ <Title title="Xsmall margin" theme="light" level={4} />
87
+ <DxcHeader underlined margin="xsmall" />
88
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
89
+ </ExampleContainer>
90
+ <ExampleContainer>
91
+ <Title title="Small margin" theme="light" level={4} />
92
+ <DxcHeader underlined margin="small" />
93
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
94
+ </ExampleContainer>
95
+ <ExampleContainer>
96
+ <Title title="Medium margin" theme="light" level={4} />
97
+ <DxcHeader underlined margin="medium" />
98
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
99
+ </ExampleContainer>
100
+ <ExampleContainer>
101
+ <Title title="Large margin" theme="light" level={4} />
102
+ <DxcHeader underlined margin="large" />
103
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
104
+ </ExampleContainer>
105
+ <ExampleContainer>
106
+ <Title title="Xlarge margin" theme="light" level={4} />
107
+ <DxcHeader underlined margin="xlarge" />
108
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
109
+ </ExampleContainer>
110
+ <ExampleContainer>
111
+ <Title title="Xxlarge margin" theme="light" level={4} />
112
+ <DxcHeader underlined margin="xxlarge" />
113
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
114
+ </ExampleContainer>
115
+ <Title title="Opinionated theme" theme="light" level={2} />
116
+ <ExampleContainer>
117
+ <HalstackProvider theme={opinionatedTheme}>
118
+ <DxcHeader
119
+ underlined
120
+ content={<DxcButton label={"Custom Button"} />}
121
+ responsiveContent={(closeHandler) => (
122
+ <>
123
+ <DxcButton label={"Custom Button"} onClick={closeHandler} />
124
+ Custom content
125
+ </>
126
+ )}
127
+ />
128
+ </HalstackProvider>
129
+ </ExampleContainer>
130
+ </>
131
+ );
132
+
133
+ export const ResponsiveHeader = () => (
134
+ <ExampleContainer>
135
+ <Title title="Responsive" theme="light" level={4} />
136
+ <DxcHeader
137
+ content={<DxcHeader.Dropdown options={options} label="Default Dropdown" onSelectOption={() => {}} />}
138
+ responsiveContent={(closeHandler) => (
139
+ <DxcHeader.Dropdown options={options} label="Default Dropdown" onSelectOption={() => {}} />
140
+ )}
141
+ underlined
142
+ />
143
+ </ExampleContainer>
144
+ );
145
+
146
+ const RespHeaderFocus = () => (
147
+ <ExampleContainer pseudoState="pseudo-focus">
148
+ <Title title="Responsive focus" theme="light" level={4} />
149
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
150
+ </ExampleContainer>
151
+ );
152
+
153
+ const RespHeaderHover = () => (
154
+ <ExampleContainer pseudoState="pseudo-hover">
155
+ <Title title="Responsive hover" theme="light" level={4} />
156
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
157
+ </ExampleContainer>
158
+ );
159
+
160
+ const RespHeaderMenuMobile = () => (
161
+ <ExampleContainer>
162
+ <Title title="Responsive menu" theme="light" level={4} />
163
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
164
+ </ExampleContainer>
165
+ );
166
+
167
+ const RespHeaderMenuTablet = () => (
168
+ <ExampleContainer>
169
+ <Title title="Responsive menu" theme="light" level={4} />
170
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
171
+ </ExampleContainer>
172
+ );
173
+
174
+ const RespHeaderMenuOpinionated = () => (
175
+ <ExampleContainer>
176
+ <Title title="Responsive menu" theme="light" level={4} />
177
+ <HalstackProvider theme={opinionatedTheme}>
178
+ <DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
179
+ </HalstackProvider>
180
+ </ExampleContainer>
181
+ );
182
+
183
+ ResponsiveHeader.parameters = {
184
+ viewport: {
185
+ defaultViewport: "iphonex",
186
+ },
187
+ chromatic: { viewports: [375] },
188
+ };
189
+
190
+ export const ResponsiveHeaderFocus = RespHeaderFocus.bind({});
191
+ ResponsiveHeaderFocus.parameters = {
192
+ viewport: {
193
+ defaultViewport: "iphonex",
194
+ },
195
+ chromatic: { viewports: [375] },
196
+ };
197
+ ResponsiveHeaderFocus.play = async ({ canvasElement }) => {
198
+ const canvas = within(canvasElement);
199
+ await waitFor(() => canvas.findByText("Menu"));
200
+ };
201
+
202
+ export const ResponsiveHeaderHover = RespHeaderHover.bind({});
203
+ ResponsiveHeaderHover.parameters = {
204
+ viewport: {
205
+ defaultViewport: "iphonex",
206
+ },
207
+ chromatic: { viewports: [375] },
208
+ };
209
+ ResponsiveHeaderHover.play = async ({ canvasElement }) => {
210
+ const canvas = within(canvasElement);
211
+ await waitFor(() => canvas.findByText("Menu"));
212
+ };
213
+
214
+ export const ResponsiveHeaderMenuMobile = RespHeaderMenuMobile.bind({});
215
+ ResponsiveHeaderMenuMobile.parameters = {
216
+ viewport: {
217
+ defaultViewport: "iphonex",
218
+ },
219
+ chromatic: { viewports: [375] },
220
+ };
221
+ ResponsiveHeaderMenuMobile.play = async ({ canvasElement }) => {
222
+ const canvas = within(canvasElement);
223
+ await waitFor(() => canvas.findByText("Menu"));
224
+ await userEvent.click(canvas.getByText("Menu"));
225
+ };
226
+
227
+ export const ResponsiveHeaderMenuTablet = RespHeaderMenuTablet.bind({});
228
+ ResponsiveHeaderMenuTablet.parameters = {
229
+ viewport: {
230
+ defaultViewport: "pixelxl",
231
+ },
232
+ chromatic: { viewports: [720] },
233
+ };
234
+ ResponsiveHeaderMenuTablet.play = async ({ canvasElement }) => {
235
+ const canvas = within(canvasElement);
236
+ await waitFor(() => canvas.findByText("Menu"));
237
+ await userEvent.click(canvas.getByText("Menu"));
238
+ };
239
+
240
+ export const ResponsiveHeaderMenuOpinionated = RespHeaderMenuOpinionated.bind({});
241
+ ResponsiveHeaderMenuOpinionated.parameters = {
242
+ viewport: {
243
+ defaultViewport: "pixelxl",
244
+ },
245
+ chromatic: { viewports: [720] },
246
+ };
247
+ ResponsiveHeaderMenuOpinionated.play = async ({ canvasElement }) => {
248
+ const canvas = within(canvasElement);
249
+ await waitFor(() => canvas.findByText("Menu"));
250
+ await userEvent.click(canvas.getByText("Menu"));
251
+ };
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _Header = _interopRequireDefault(require("./Header.tsx"));
7
+ describe("Header component tests", function () {
8
+ beforeAll(function () {
9
+ Object.defineProperty(window, "matchMedia", {
10
+ writable: true,
11
+ value: jest.fn().mockImplementation(function () {
12
+ return {
13
+ matches: false
14
+ };
15
+ })
16
+ });
17
+ });
18
+ test("Header renders with default logo", function () {
19
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], null)),
20
+ getByTitle = _render.getByTitle;
21
+ expect(getByTitle("DXC Logo")).toBeTruthy();
22
+ });
23
+ test("Call correct function on logo click", function () {
24
+ var onClick = jest.fn();
25
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
26
+ onClick: onClick
27
+ })),
28
+ getByTitle = _render2.getByTitle;
29
+ var logo = getByTitle("DXC Logo");
30
+ _react2.fireEvent.click(logo);
31
+ expect(onClick).toHaveBeenCalled();
32
+ });
33
+ test("Header renders with correct children", function () {
34
+ // We need to force the offsetWidth value
35
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
36
+ configurable: true,
37
+ value: 1024
38
+ });
39
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
40
+ content: /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text")
41
+ })),
42
+ getByText = _render3.getByText;
43
+ expect(getByText("header-child-text")).toBeTruthy();
44
+ });
45
+ test("Header renders menu button in mobile", function () {
46
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
47
+ configurable: true,
48
+ value: 425
49
+ });
50
+ Object.defineProperty(window, "matchMedia", {
51
+ writable: true,
52
+ value: jest.fn().mockImplementation(function () {
53
+ return {
54
+ matches: true
55
+ };
56
+ })
57
+ });
58
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
59
+ responsiveContent: function responsiveContent() {
60
+ return /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text");
61
+ }
62
+ })),
63
+ getByText = _render4.getByText;
64
+ expect(getByText("Menu")).toBeTruthy();
65
+ });
66
+ });
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const dxcLogo: React.JSX.Element;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.dxcLogo = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var dxcLogo = exports.dxcLogo = /*#__PURE__*/_react["default"].createElement("svg", {
10
+ xmlns: "http://www.w3.org/2000/svg",
11
+ width: "73",
12
+ height: "40",
13
+ viewBox: "0 0 73 40"
14
+ }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
15
+ id: "g10",
16
+ transform: "translate(0)"
17
+ }, /*#__PURE__*/_react["default"].createElement("g", {
18
+ id: "g12"
19
+ }, /*#__PURE__*/_react["default"].createElement("path", {
20
+ id: "path14",
21
+ 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",
22
+ transform: "translate(-21.028 65.555)",
23
+ fill: "#010101"
24
+ }), /*#__PURE__*/_react["default"].createElement("path", {
25
+ id: "path16",
26
+ 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",
27
+ transform: "translate(-21.049 88.739)",
28
+ fill: "#603494"
29
+ }))));
@@ -0,0 +1,33 @@
1
+ /// <reference types="react" />
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Props = {
4
+ /**
5
+ * Whether a contrast line should appear at the bottom of the header.
6
+ */
7
+ underlined?: boolean;
8
+ /**
9
+ * Content showed in the header. Take into account that the component applies styles
10
+ * for the first child in the content, so we recommend the use of React.Fragment
11
+ * to be applied correctly. Otherwise, the styles can be modified.
12
+ */
13
+ content?: React.ReactNode;
14
+ /**
15
+ * Content showed in responsive version. It receives the close menu handler that can
16
+ * be used to add that functionality when a element is clicked.
17
+ */
18
+ responsiveContent?: (closeHandler: () => void) => React.ReactNode;
19
+ /**
20
+ * This function will be called when the user clicks the header logo.
21
+ */
22
+ onClick?: () => void;
23
+ /**
24
+ * Size of the bottom margin to be applied to the header.
25
+ */
26
+ margin?: Space;
27
+ /**
28
+ * Value of the tabindex for all interactive elements, except those inside the
29
+ * custom area.
30
+ */
31
+ tabIndex?: number;
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,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,137 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
13
+ var _variables = require("../common/variables");
14
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
15
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
16
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
18
+ var DxcHeading = function DxcHeading(_ref) {
19
+ var _ref$level = _ref.level,
20
+ level = _ref$level === void 0 ? 1 : _ref$level,
21
+ _ref$text = _ref.text,
22
+ text = _ref$text === void 0 ? "" : _ref$text,
23
+ as = _ref.as,
24
+ weight = _ref.weight,
25
+ margin = _ref.margin;
26
+ var colorsTheme = (0, _useTheme["default"])();
27
+ var checkValidAs = function checkValidAs() {
28
+ if (as === "h1" || as === "h2" || as === "h3" || as === "h4" || as === "h5") return as;
29
+ };
30
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
31
+ theme: colorsTheme.heading
32
+ }, /*#__PURE__*/_react["default"].createElement(HeadingContainer, {
33
+ margin: margin
34
+ }, level === 1 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel1, {
35
+ as: checkValidAs(),
36
+ weight: weight
37
+ }, text) : level === 2 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel2, {
38
+ as: checkValidAs(),
39
+ weight: weight
40
+ }, text) : level === 3 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel3, {
41
+ as: checkValidAs(),
42
+ weight: weight
43
+ }, text) : level === 4 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel4, {
44
+ as: checkValidAs(),
45
+ weight: weight
46
+ }, text) : /*#__PURE__*/_react["default"].createElement(HeadingLevel5, {
47
+ as: checkValidAs(),
48
+ weight: weight
49
+ }, text)));
50
+ };
51
+ 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) {
52
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
53
+ }, function (props) {
54
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
55
+ }, function (props) {
56
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
57
+ }, function (props) {
58
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
59
+ }, function (props) {
60
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
61
+ });
62
+ 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) {
63
+ return props.theme.level1FontFamily;
64
+ }, function (props) {
65
+ return props.theme.level1FontStyle;
66
+ }, function (props) {
67
+ return props.theme.level1FontSize;
68
+ }, function (props) {
69
+ return props.theme.level1LineHeight;
70
+ }, function (props) {
71
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level1FontWeight;
72
+ }, function (props) {
73
+ return props.theme.level1LetterSpacing;
74
+ }, function (props) {
75
+ return props.theme.level1FontColor;
76
+ });
77
+ 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) {
78
+ return props.theme.level2FontFamily;
79
+ }, function (props) {
80
+ return props.theme.level2FontStyle;
81
+ }, function (props) {
82
+ return props.theme.level2FontSize;
83
+ }, function (props) {
84
+ return props.theme.level2LineHeight;
85
+ }, function (props) {
86
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level2FontWeight;
87
+ }, function (props) {
88
+ return props.theme.level2LetterSpacing;
89
+ }, function (props) {
90
+ return props.theme.level2FontColor;
91
+ });
92
+ 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) {
93
+ return props.theme.level3FontFamily;
94
+ }, function (props) {
95
+ return props.theme.level3FontStyle;
96
+ }, function (props) {
97
+ return props.theme.level3FontSize;
98
+ }, function (props) {
99
+ return props.theme.level3LineHeight;
100
+ }, function (props) {
101
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level3FontWeight;
102
+ }, function (props) {
103
+ return props.theme.level3LetterSpacing;
104
+ }, function (props) {
105
+ return props.theme.level3FontColor;
106
+ });
107
+ 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) {
108
+ return props.theme.level4FontFamily;
109
+ }, function (props) {
110
+ return props.theme.level4FontStyle;
111
+ }, function (props) {
112
+ return props.theme.level4FontSize;
113
+ }, function (props) {
114
+ return props.theme.level4LineHeight;
115
+ }, function (props) {
116
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level4FontWeight;
117
+ }, function (props) {
118
+ return props.theme.level4LetterSpacing;
119
+ }, function (props) {
120
+ return props.theme.level4FontColor;
121
+ });
122
+ 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) {
123
+ return props.theme.level5FontFamily;
124
+ }, function (props) {
125
+ return props.theme.level5FontStyle;
126
+ }, function (props) {
127
+ return props.theme.level5FontSize;
128
+ }, function (props) {
129
+ return props.theme.level5LineHeight;
130
+ }, function (props) {
131
+ return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level5FontWeight;
132
+ }, function (props) {
133
+ return props.theme.level5LetterSpacing;
134
+ }, function (props) {
135
+ return props.theme.level5FontColor;
136
+ });
137
+ var _default = exports["default"] = DxcHeading;
@@ -0,0 +1,54 @@
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={2} weight="normal" />
32
+ <Title title="'bold' Weight" theme="light" level={4} />
33
+ <DxcHeading text="Heading for sections within the page" level={2} 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
+ <hr />
52
+ </ExampleContainer>
53
+ </>
54
+ );