@dxc-technology/halstack-react 0.0.0-cfb6e92 → 0.0.0-d17aa47

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 (478) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +226 -0
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +169 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +293 -0
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +61 -0
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +116 -0
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/button/Button.js +174 -0
  40. package/button/Button.stories.tsx +274 -0
  41. package/button/Button.test.js +35 -0
  42. package/button/types.d.ts +53 -0
  43. package/button/types.js +5 -0
  44. package/card/Card.d.ts +4 -0
  45. package/card/Card.js +161 -0
  46. package/card/Card.stories.tsx +201 -0
  47. package/card/Card.test.js +50 -0
  48. package/card/ice-cream.jpg +0 -0
  49. package/card/types.d.ts +67 -0
  50. package/card/types.js +5 -0
  51. package/checkbox/Checkbox.d.ts +4 -0
  52. package/{dist/checkbox → checkbox}/Checkbox.js +70 -107
  53. package/checkbox/Checkbox.stories.tsx +188 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +161 -0
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/{dist/common → common}/OpenSans.css +0 -0
  64. package/{dist/common → common}/RequiredComponent.js +3 -11
  65. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  68. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  75. package/{dist/common → common}/utils.js +0 -0
  76. package/common/variables.js +1470 -0
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +372 -0
  79. package/date-input/DateInput.stories.tsx +138 -0
  80. package/date-input/DateInput.test.js +479 -0
  81. package/date-input/types.d.ts +107 -0
  82. package/date-input/types.js +5 -0
  83. package/dialog/Dialog.d.ts +4 -0
  84. package/dialog/Dialog.js +138 -0
  85. package/dialog/Dialog.stories.tsx +212 -0
  86. package/dialog/Dialog.test.js +40 -0
  87. package/dialog/types.d.ts +43 -0
  88. package/dialog/types.js +5 -0
  89. package/dropdown/Dropdown.d.ts +4 -0
  90. package/dropdown/Dropdown.js +391 -0
  91. package/dropdown/Dropdown.stories.tsx +249 -0
  92. package/dropdown/Dropdown.test.js +189 -0
  93. package/dropdown/types.d.ts +80 -0
  94. package/dropdown/types.js +5 -0
  95. package/file-input/FileInput.d.ts +4 -0
  96. package/file-input/FileInput.js +593 -0
  97. package/file-input/FileInput.stories.tsx +507 -0
  98. package/file-input/FileInput.test.js +457 -0
  99. package/file-input/FileItem.d.ts +14 -0
  100. package/file-input/FileItem.js +186 -0
  101. package/file-input/types.d.ts +112 -0
  102. package/file-input/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +185 -0
  105. package/footer/Footer.stories.tsx +130 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/footer/Icons.js +77 -0
  109. package/footer/types.d.ts +65 -0
  110. package/footer/types.js +5 -0
  111. package/header/Header.d.ts +7 -0
  112. package/header/Header.js +303 -0
  113. package/header/Header.stories.tsx +172 -0
  114. package/header/Header.test.js +79 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/header/Icons.js +34 -0
  117. package/header/types.d.ts +47 -0
  118. package/header/types.js +5 -0
  119. package/heading/Heading.d.ts +4 -0
  120. package/{dist/heading → heading}/Heading.js +31 -94
  121. package/heading/Heading.stories.tsx +54 -0
  122. package/heading/Heading.test.js +186 -0
  123. package/heading/types.d.ts +33 -0
  124. package/heading/types.js +5 -0
  125. package/inline/Inline.d.ts +4 -0
  126. package/inline/Inline.js +60 -0
  127. package/inline/Inline.stories.tsx +305 -0
  128. package/inline/types.d.ts +36 -0
  129. package/inline/types.js +5 -0
  130. package/inset/Inset.d.ts +3 -0
  131. package/inset/Inset.js +51 -0
  132. package/inset/Inset.stories.tsx +229 -0
  133. package/inset/types.d.ts +37 -0
  134. package/inset/types.js +5 -0
  135. package/layout/ApplicationLayout.d.ts +11 -0
  136. package/layout/ApplicationLayout.js +199 -0
  137. package/layout/ApplicationLayout.stories.tsx +126 -0
  138. package/layout/Icons.d.ts +5 -0
  139. package/layout/Icons.js +66 -0
  140. package/layout/SidenavContext.d.ts +5 -0
  141. package/layout/SidenavContext.js +19 -0
  142. package/layout/types.d.ts +52 -0
  143. package/layout/types.js +5 -0
  144. package/link/Link.d.ts +4 -0
  145. package/link/Link.js +136 -0
  146. package/link/Link.stories.tsx +186 -0
  147. package/link/Link.test.js +83 -0
  148. package/link/types.d.ts +54 -0
  149. package/link/types.js +5 -0
  150. package/list/List.d.ts +4 -0
  151. package/list/List.js +47 -0
  152. package/list/List.stories.tsx +89 -0
  153. package/list/types.d.ts +7 -0
  154. package/list/types.js +5 -0
  155. package/main.d.ts +48 -0
  156. package/{dist/main.js → main.js} +166 -76
  157. package/number-input/NumberInput.d.ts +4 -0
  158. package/number-input/NumberInput.js +76 -0
  159. package/number-input/NumberInput.stories.tsx +115 -0
  160. package/number-input/NumberInput.test.js +506 -0
  161. package/number-input/NumberInputContext.d.ts +4 -0
  162. package/number-input/NumberInputContext.js +19 -0
  163. package/number-input/numberInputContextTypes.d.ts +19 -0
  164. package/number-input/numberInputContextTypes.js +5 -0
  165. package/number-input/types.d.ts +124 -0
  166. package/number-input/types.js +5 -0
  167. package/package.json +41 -28
  168. package/paginator/Icons.js +66 -0
  169. package/paginator/Paginator.d.ts +4 -0
  170. package/paginator/Paginator.js +171 -0
  171. package/paginator/Paginator.stories.tsx +63 -0
  172. package/paginator/Paginator.test.js +308 -0
  173. package/paginator/types.d.ts +38 -0
  174. package/paginator/types.js +5 -0
  175. package/password-input/PasswordInput.d.ts +4 -0
  176. package/password-input/PasswordInput.js +166 -0
  177. package/password-input/PasswordInput.stories.tsx +131 -0
  178. package/password-input/PasswordInput.test.js +180 -0
  179. package/password-input/types.d.ts +110 -0
  180. package/password-input/types.js +5 -0
  181. package/progress-bar/ProgressBar.d.ts +4 -0
  182. package/progress-bar/ProgressBar.js +170 -0
  183. package/progress-bar/ProgressBar.stories.jsx +58 -0
  184. package/progress-bar/ProgressBar.test.js +65 -0
  185. package/progress-bar/types.d.ts +37 -0
  186. package/progress-bar/types.js +5 -0
  187. package/quick-nav/QuickNav.d.ts +4 -0
  188. package/quick-nav/QuickNav.js +116 -0
  189. package/quick-nav/QuickNav.stories.tsx +237 -0
  190. package/quick-nav/types.d.ts +21 -0
  191. package/quick-nav/types.js +5 -0
  192. package/radio-group/Radio.d.ts +4 -0
  193. package/radio-group/Radio.js +141 -0
  194. package/radio-group/RadioGroup.d.ts +4 -0
  195. package/radio-group/RadioGroup.js +282 -0
  196. package/radio-group/RadioGroup.stories.tsx +100 -0
  197. package/radio-group/RadioGroup.test.js +695 -0
  198. package/radio-group/types.d.ts +114 -0
  199. package/radio-group/types.js +5 -0
  200. package/resultsetTable/ResultsetTable.d.ts +4 -0
  201. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +43 -147
  202. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  203. package/resultsetTable/ResultsetTable.test.js +348 -0
  204. package/resultsetTable/types.d.ts +67 -0
  205. package/resultsetTable/types.js +5 -0
  206. package/row/Row.d.ts +3 -0
  207. package/row/Row.js +127 -0
  208. package/row/Row.stories.tsx +237 -0
  209. package/row/types.d.ts +28 -0
  210. package/row/types.js +5 -0
  211. package/select/Icons.d.ts +10 -0
  212. package/select/Icons.js +93 -0
  213. package/select/Listbox.d.ts +4 -0
  214. package/select/Listbox.js +175 -0
  215. package/select/Option.d.ts +4 -0
  216. package/select/Option.js +110 -0
  217. package/select/Select.d.ts +4 -0
  218. package/select/Select.js +660 -0
  219. package/select/Select.stories.tsx +626 -0
  220. package/select/Select.test.js +2162 -0
  221. package/select/types.d.ts +212 -0
  222. package/select/types.js +5 -0
  223. package/sidenav/Sidenav.d.ts +9 -0
  224. package/sidenav/Sidenav.js +147 -0
  225. package/sidenav/Sidenav.stories.tsx +182 -0
  226. package/sidenav/Sidenav.test.js +56 -0
  227. package/sidenav/types.d.ts +50 -0
  228. package/sidenav/types.js +5 -0
  229. package/slider/Slider.d.ts +4 -0
  230. package/slider/Slider.js +318 -0
  231. package/slider/Slider.stories.tsx +177 -0
  232. package/slider/Slider.test.js +150 -0
  233. package/slider/types.d.ts +82 -0
  234. package/slider/types.js +5 -0
  235. package/spinner/Spinner.d.ts +4 -0
  236. package/spinner/Spinner.js +250 -0
  237. package/spinner/Spinner.stories.jsx +103 -0
  238. package/spinner/Spinner.test.js +64 -0
  239. package/spinner/types.d.ts +32 -0
  240. package/spinner/types.js +5 -0
  241. package/stack/Stack.d.ts +4 -0
  242. package/stack/Stack.js +56 -0
  243. package/stack/Stack.stories.tsx +263 -0
  244. package/stack/types.d.ts +32 -0
  245. package/stack/types.js +5 -0
  246. package/switch/Switch.d.ts +4 -0
  247. package/switch/Switch.js +195 -0
  248. package/switch/Switch.stories.tsx +160 -0
  249. package/switch/Switch.test.js +98 -0
  250. package/switch/types.d.ts +62 -0
  251. package/switch/types.js +5 -0
  252. package/table/Table.d.ts +4 -0
  253. package/{dist/table → table}/Table.js +14 -24
  254. package/table/Table.stories.jsx +277 -0
  255. package/table/Table.test.js +26 -0
  256. package/table/types.d.ts +21 -0
  257. package/table/types.js +5 -0
  258. package/tabs/Tabs.d.ts +4 -0
  259. package/tabs/Tabs.js +211 -0
  260. package/tabs/Tabs.stories.tsx +112 -0
  261. package/tabs/Tabs.test.js +140 -0
  262. package/tabs/types.d.ts +82 -0
  263. package/tabs/types.js +5 -0
  264. package/tabs-nav/NavTabs.d.ts +8 -0
  265. package/tabs-nav/NavTabs.js +125 -0
  266. package/tabs-nav/NavTabs.stories.tsx +170 -0
  267. package/tabs-nav/NavTabs.test.js +82 -0
  268. package/tabs-nav/Tab.d.ts +4 -0
  269. package/tabs-nav/Tab.js +132 -0
  270. package/tabs-nav/types.d.ts +53 -0
  271. package/tabs-nav/types.js +5 -0
  272. package/tag/Tag.d.ts +4 -0
  273. package/tag/Tag.js +183 -0
  274. package/tag/Tag.stories.tsx +142 -0
  275. package/tag/Tag.test.js +60 -0
  276. package/tag/types.d.ts +69 -0
  277. package/tag/types.js +5 -0
  278. package/text/Text.d.ts +7 -0
  279. package/text/Text.js +30 -0
  280. package/text/Text.stories.tsx +19 -0
  281. package/text-input/Suggestion.d.ts +4 -0
  282. package/text-input/Suggestion.js +55 -0
  283. package/text-input/TextInput.d.ts +4 -0
  284. package/text-input/TextInput.js +770 -0
  285. package/text-input/TextInput.stories.tsx +474 -0
  286. package/text-input/TextInput.test.js +1712 -0
  287. package/text-input/types.d.ts +178 -0
  288. package/text-input/types.js +5 -0
  289. package/textarea/Textarea.d.ts +4 -0
  290. package/textarea/Textarea.js +277 -0
  291. package/textarea/Textarea.stories.jsx +157 -0
  292. package/textarea/Textarea.test.js +437 -0
  293. package/textarea/types.d.ts +137 -0
  294. package/textarea/types.js +5 -0
  295. package/toggle-group/ToggleGroup.d.ts +4 -0
  296. package/toggle-group/ToggleGroup.js +215 -0
  297. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  298. package/toggle-group/ToggleGroup.test.js +156 -0
  299. package/toggle-group/types.d.ts +105 -0
  300. package/toggle-group/types.js +5 -0
  301. package/useTheme.d.ts +2 -0
  302. package/{dist/useTheme.js → useTheme.js} +2 -2
  303. package/useTranslatedLabels.d.ts +2 -0
  304. package/useTranslatedLabels.js +20 -0
  305. package/wizard/Wizard.d.ts +4 -0
  306. package/wizard/Wizard.js +292 -0
  307. package/wizard/Wizard.stories.tsx +214 -0
  308. package/wizard/Wizard.test.js +141 -0
  309. package/wizard/types.d.ts +64 -0
  310. package/wizard/types.js +5 -0
  311. package/README.md +0 -66
  312. package/babel.config.js +0 -8
  313. package/dist/BackgroundColorContext.js +0 -46
  314. package/dist/ThemeContext.js +0 -216
  315. package/dist/accordion/Accordion.js +0 -346
  316. package/dist/accordion/Accordion.stories.js +0 -207
  317. package/dist/accordion/readme.md +0 -96
  318. package/dist/accordion-group/AccordionGroup.js +0 -188
  319. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  320. package/dist/accordion-group/readme.md +0 -70
  321. package/dist/alert/Alert.js +0 -388
  322. package/dist/alert/Alert.stories.js +0 -158
  323. package/dist/alert/close.svg +0 -4
  324. package/dist/alert/error.svg +0 -4
  325. package/dist/alert/info.svg +0 -4
  326. package/dist/alert/readme.md +0 -43
  327. package/dist/alert/success.svg +0 -4
  328. package/dist/alert/warning.svg +0 -4
  329. package/dist/badge/Badge.js +0 -63
  330. package/dist/box/Box.js +0 -164
  331. package/dist/button/Button.js +0 -232
  332. package/dist/button/Button.stories.js +0 -224
  333. package/dist/button/readme.md +0 -93
  334. package/dist/card/Card.js +0 -254
  335. package/dist/checkbox/Checkbox.stories.js +0 -144
  336. package/dist/checkbox/readme.md +0 -116
  337. package/dist/chip/Chip.js +0 -269
  338. package/dist/common/variables.js +0 -1159
  339. package/dist/date/Date.js +0 -381
  340. package/dist/date/Date.stories.js +0 -205
  341. package/dist/date/readme.md +0 -73
  342. package/dist/dialog/Dialog.js +0 -235
  343. package/dist/dialog/Dialog.stories.js +0 -217
  344. package/dist/dialog/readme.md +0 -32
  345. package/dist/dropdown/Dropdown.js +0 -493
  346. package/dist/dropdown/Dropdown.stories.js +0 -249
  347. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  348. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  349. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  350. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  351. package/dist/dropdown/readme.md +0 -69
  352. package/dist/footer/Footer.js +0 -405
  353. package/dist/footer/Footer.stories.js +0 -94
  354. package/dist/footer/dxc_logo_wht.png +0 -0
  355. package/dist/footer/readme.md +0 -41
  356. package/dist/header/Header.js +0 -431
  357. package/dist/header/Header.stories.js +0 -176
  358. package/dist/header/close_icon.svg +0 -1
  359. package/dist/header/dxc_logo_black.svg +0 -8
  360. package/dist/header/hamb_menu_black.svg +0 -1
  361. package/dist/header/hamb_menu_white.svg +0 -1
  362. package/dist/header/readme.md +0 -33
  363. package/dist/input-text/InputText.js +0 -672
  364. package/dist/input-text/InputText.stories.js +0 -209
  365. package/dist/input-text/error.svg +0 -1
  366. package/dist/input-text/readme.md +0 -91
  367. package/dist/layout/ApplicationLayout.js +0 -331
  368. package/dist/layout/facebook.svg +0 -45
  369. package/dist/layout/linkedin.svg +0 -50
  370. package/dist/layout/twitter.svg +0 -53
  371. package/dist/link/Link.js +0 -241
  372. package/dist/link/readme.md +0 -51
  373. package/dist/paginator/Paginator.js +0 -283
  374. package/dist/paginator/images/next.svg +0 -3
  375. package/dist/paginator/images/nextPage.svg +0 -3
  376. package/dist/paginator/images/previous.svg +0 -3
  377. package/dist/paginator/images/previousPage.svg +0 -3
  378. package/dist/paginator/readme.md +0 -50
  379. package/dist/progress-bar/ProgressBar.js +0 -206
  380. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  381. package/dist/progress-bar/readme.md +0 -63
  382. package/dist/radio/Radio.js +0 -209
  383. package/dist/radio/Radio.stories.js +0 -166
  384. package/dist/radio/readme.md +0 -70
  385. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  386. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  387. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  388. package/dist/select/Select.js +0 -563
  389. package/dist/select/Select.stories.js +0 -235
  390. package/dist/select/readme.md +0 -72
  391. package/dist/sidenav/Sidenav.js +0 -183
  392. package/dist/slider/Slider.js +0 -315
  393. package/dist/slider/Slider.stories.js +0 -241
  394. package/dist/slider/readme.md +0 -64
  395. package/dist/spinner/Spinner.js +0 -214
  396. package/dist/spinner/Spinner.stories.js +0 -183
  397. package/dist/spinner/readme.md +0 -65
  398. package/dist/switch/Switch.js +0 -222
  399. package/dist/switch/Switch.stories.js +0 -134
  400. package/dist/switch/readme.md +0 -133
  401. package/dist/tabs/Tabs.js +0 -343
  402. package/dist/tabs/Tabs.stories.js +0 -130
  403. package/dist/tabs/readme.md +0 -78
  404. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  405. package/dist/tabs-for-sections/readme.md +0 -78
  406. package/dist/tag/Tag.js +0 -280
  407. package/dist/textarea/Textarea.js +0 -260
  408. package/dist/toggle/Toggle.js +0 -220
  409. package/dist/toggle/Toggle.stories.js +0 -297
  410. package/dist/toggle/readme.md +0 -80
  411. package/dist/toggle-group/ToggleGroup.js +0 -241
  412. package/dist/toggle-group/readme.md +0 -82
  413. package/dist/upload/Upload.js +0 -205
  414. package/dist/upload/Upload.stories.js +0 -72
  415. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  416. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  417. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  418. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -325
  419. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  420. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  421. package/dist/upload/file-upload/FileToUpload.js +0 -184
  422. package/dist/upload/file-upload/audio-icon.svg +0 -4
  423. package/dist/upload/file-upload/close.svg +0 -4
  424. package/dist/upload/file-upload/file-icon.svg +0 -4
  425. package/dist/upload/file-upload/video-icon.svg +0 -4
  426. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  427. package/dist/upload/readme.md +0 -37
  428. package/dist/upload/transaction/Transaction.js +0 -171
  429. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  430. package/dist/upload/transaction/audio-icon.svg +0 -4
  431. package/dist/upload/transaction/error-icon.svg +0 -4
  432. package/dist/upload/transaction/file-icon-err.svg +0 -4
  433. package/dist/upload/transaction/file-icon.svg +0 -4
  434. package/dist/upload/transaction/image-icon-err.svg +0 -4
  435. package/dist/upload/transaction/image-icon.svg +0 -4
  436. package/dist/upload/transaction/success-icon.svg +0 -4
  437. package/dist/upload/transaction/video-icon-err.svg +0 -4
  438. package/dist/upload/transaction/video-icon.svg +0 -4
  439. package/dist/upload/transactions/Transactions.js +0 -138
  440. package/dist/wizard/Wizard.js +0 -411
  441. package/dist/wizard/invalid_icon.svg +0 -5
  442. package/dist/wizard/valid_icon.svg +0 -5
  443. package/dist/wizard/validation-wrong.svg +0 -6
  444. package/test/Accordion.test.js +0 -33
  445. package/test/AccordionGroup.test.js +0 -125
  446. package/test/Alert.test.js +0 -53
  447. package/test/Box.test.js +0 -10
  448. package/test/Button.test.js +0 -18
  449. package/test/Card.test.js +0 -30
  450. package/test/Checkbox.test.js +0 -45
  451. package/test/Chip.test.js +0 -25
  452. package/test/Date.test.js +0 -393
  453. package/test/Dialog.test.js +0 -23
  454. package/test/Dropdown.test.js +0 -130
  455. package/test/Footer.test.js +0 -99
  456. package/test/Header.test.js +0 -39
  457. package/test/Heading.test.js +0 -35
  458. package/test/InputText.test.js +0 -240
  459. package/test/Link.test.js +0 -43
  460. package/test/Paginator.test.js +0 -177
  461. package/test/ProgressBar.test.js +0 -35
  462. package/test/Radio.test.js +0 -37
  463. package/test/ResultsetTable.test.js +0 -330
  464. package/test/Select.test.js +0 -192
  465. package/test/Sidenav.test.js +0 -45
  466. package/test/Slider.test.js +0 -82
  467. package/test/Spinner.test.js +0 -27
  468. package/test/Switch.test.js +0 -45
  469. package/test/Table.test.js +0 -36
  470. package/test/Tabs.test.js +0 -109
  471. package/test/TabsForSections.test.js +0 -34
  472. package/test/Tag.test.js +0 -32
  473. package/test/TextArea.test.js +0 -52
  474. package/test/ToggleGroup.test.js +0 -81
  475. package/test/Upload.test.js +0 -60
  476. package/test/Wizard.test.js +0 -130
  477. package/test/mocks/pngMock.js +0 -1
  478. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,112 @@
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 FileData = {
9
+ /**
10
+ * Selected file.
11
+ */
12
+ file: File;
13
+ /**
14
+ * Error of the file. If it is defined, it will be shown and the file item will be mark as invalid.
15
+ */
16
+ error?: string;
17
+ /**
18
+ * Preview of the file.
19
+ */
20
+ preview?: string;
21
+ };
22
+ declare type CommonProps = {
23
+ /**
24
+ * Name attribute.
25
+ */
26
+ name?: string;
27
+ /**
28
+ * Text to be placed above the component.
29
+ */
30
+ label?: string;
31
+ /**
32
+ * Text to be placed inside the button.
33
+ */
34
+ buttonLabel?: string;
35
+ /**
36
+ * Helper text to be placed above the component.
37
+ */
38
+ helperText?: string;
39
+ /**
40
+ * The file types that the component accepts. Its value must be one of all the possible values of the HTML file input's accept attribute.
41
+ */
42
+ accept?: string;
43
+ /**
44
+ * An array of files representing the selected files.
45
+ */
46
+ value: FileData[];
47
+ /**
48
+ * The minimum file size (in bytes) allowed. If the size of the file does not comply the minSize, the file will have an error.
49
+ */
50
+ minSize?: number;
51
+ /**
52
+ * The maximum file size (in bytes) allowed. If the size of the file does not comply the maxSize, the file will have an error.
53
+ */
54
+ maxSize?: number;
55
+ /**
56
+ * If true, if the file is an image, a preview of it will be shown. If not, an icon refering to the file type will be shown.
57
+ */
58
+ showPreview?: boolean;
59
+ /**
60
+ * If true, the component allows multiple file items and will show all of them. If false, only one file will be shown, and if there is already one
61
+ * file selected and a new one is chosen, it will be replaced by the new selected one.
62
+ */
63
+ multiple?: boolean;
64
+ /**
65
+ * If true, the component will be disabled.
66
+ */
67
+ disabled?: boolean;
68
+ /**
69
+ * This function will be called when the user selects or drops a file. The list of files will be sent as a parameter.
70
+ * In this function, the files can be updated or returned as they come. These files must be passed to the value in order to be shown.
71
+ */
72
+ callbackFile: (files: FileData[]) => void;
73
+ /**
74
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
75
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
76
+ */
77
+ margin?: Space | Margin;
78
+ /**
79
+ * Value of the tabindex attribute.
80
+ */
81
+ tabIndex?: number;
82
+ };
83
+ declare type DropModeProps = CommonProps & {
84
+ /**
85
+ * Uses one of the available file input modes:
86
+ * 'file': Files are selected by clicking the button and selecting it through the file explorer.
87
+ * 'filedrop': Files can be selected by clicking the button and selecting it through the file explorer or by dropping them inside the drag and drop area.
88
+ * 'dropzone': Files can be selected by clicking the button and selecting it through the file explorer or by dropping them inside the drag and drop area.
89
+ * The drag and drop area of this mode is bigger than the one of the filedrop mode.
90
+ */
91
+ mode: "filedrop" | "dropzone";
92
+ /**
93
+ * Text to be placed inside the drag and drop zone alongside the button.
94
+ */
95
+ dropAreaLabel?: string;
96
+ };
97
+ declare type FileModeProps = CommonProps & {
98
+ /**
99
+ * Uses one of the available file input modes:
100
+ * 'file': Files are selected by clicking the button and selecting it through the file explorer.
101
+ * 'filedrop': Files can be selected by clicking the button and selecting it through the file explorer or by dropping them inside the drag and drop area.
102
+ * 'dropzone': Files can be selected by clicking the button and selecting it through the file explorer or by dropping them inside the drag and drop area.
103
+ * The drag and drop area of this mode is bigger than the one of the filedrop mode.
104
+ */
105
+ mode?: "file";
106
+ /**
107
+ * Text to be placed inside the drag and drop zone alongside the button.
108
+ */
109
+ dropAreaLabel?: never;
110
+ };
111
+ declare type Props = DropModeProps | FileModeProps;
112
+ 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 FooterPropsType from "./types";
3
+ declare const DxcFooter: ({ socialLinks, bottomLinks, copyright, children, padding, margin, tabIndex, }: FooterPropsType) => JSX.Element;
4
+ export default DxcFooter;
@@ -0,0 +1,185 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
+
20
+ var _variables = require("../common/variables.js");
21
+
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
+
24
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
25
+
26
+ var _BackgroundColorContext = require("../BackgroundColorContext");
27
+
28
+ var _Icons = require("./Icons");
29
+
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14;
31
+
32
+ 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); }
33
+
34
+ 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; }
35
+
36
+ var DxcFooter = function DxcFooter(_ref) {
37
+ var socialLinks = _ref.socialLinks,
38
+ bottomLinks = _ref.bottomLinks,
39
+ copyright = _ref.copyright,
40
+ children = _ref.children,
41
+ padding = _ref.padding,
42
+ margin = _ref.margin,
43
+ _ref$tabIndex = _ref.tabIndex,
44
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
45
+ var colorsTheme = (0, _useTheme["default"])();
46
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
47
+ var footerLogo = (0, _react.useMemo)(function () {
48
+ if (!colorsTheme.footer.logo) {
49
+ return _Icons.dxcLogo;
50
+ }
51
+
52
+ if (typeof colorsTheme.footer.logo === "string") {
53
+ return /*#__PURE__*/_react["default"].createElement(LogoImg, {
54
+ alt: translatedLabels.formFields.logoAlternativeText,
55
+ src: colorsTheme.footer.logo
56
+ });
57
+ }
58
+
59
+ return colorsTheme.footer.logo;
60
+ }, [colorsTheme.footer.logo]);
61
+ var socialLink = socialLinks === null || socialLinks === void 0 ? void 0 : socialLinks.map(function (link, index) {
62
+ return /*#__PURE__*/_react["default"].createElement(SocialAnchor, {
63
+ tabIndex: tabIndex,
64
+ key: "social".concat(index).concat(link.href),
65
+ index: index,
66
+ href: link && link.href ? link.href : ""
67
+ }, /*#__PURE__*/_react["default"].createElement(SocialIconContainer, null, typeof link.logo === "string" ? /*#__PURE__*/_react["default"].createElement(SocialIconImg, {
68
+ src: link.logo
69
+ }) : link.logo));
70
+ });
71
+ var bottomLink = bottomLinks === null || bottomLinks === void 0 ? void 0 : bottomLinks.map(function (link, index) {
72
+ return /*#__PURE__*/_react["default"].createElement("span", {
73
+ key: "bottom".concat(index).concat(link.text)
74
+ }, /*#__PURE__*/_react["default"].createElement(BottomLink, {
75
+ tabIndex: tabIndex,
76
+ href: link && link.href ? link.href : ""
77
+ }, link && link.text ? link.text : ""), /*#__PURE__*/_react["default"].createElement(Point, {
78
+ index: index
79
+ }, "\xB7"));
80
+ });
81
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
82
+ theme: colorsTheme.footer
83
+ }, /*#__PURE__*/_react["default"].createElement(FooterContainer, {
84
+ margin: margin
85
+ }, /*#__PURE__*/_react["default"].createElement(FooterHeader, null, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, footerLogo), /*#__PURE__*/_react["default"].createElement(SocialLinkContainer, null, socialLink)), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(ChildComponents, {
86
+ padding: padding
87
+ }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
88
+ color: colorsTheme.footer.backgroundColor
89
+ }, children)), /*#__PURE__*/_react["default"].createElement(FooterFooter, {
90
+ className: "footerFooter"
91
+ }, /*#__PURE__*/_react["default"].createElement(BottomLinks, null, bottomLink), /*#__PURE__*/_react["default"].createElement(Copyright, null, copyright || translatedLabels.footer.copyrightText(new Date().getFullYear()))))));
92
+ };
93
+
94
+ var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n padding: 20px;\n }\n\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
95
+ return props.theme.backgroundColor;
96
+ }, function (props) {
97
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
98
+ }, function (props) {
99
+ return props.theme.height;
100
+ });
101
+
102
+ var FooterHeader = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap;\n row-gap: 24px;\n"])));
103
+
104
+ var FooterFooter = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n\n @media (min-width: ", "rem) {\n flex-direction: row;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n flex-direction: column;\n align-items: center;\n }\n\n border-top: ", ";\n margin-top: 16px;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
105
+ return "".concat(props.theme.bottomLinksDividerThickness, " ").concat(props.theme.bottomLinksDividerStyle, " ").concat(props.theme.bottomLinksDividerColor);
106
+ });
107
+
108
+ var BottomLinks = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n display: inline-flex;\n flex-wrap: wrap;\n\n @media (min-width: ", "rem) {\n max-width: 60%;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n }\n\n & > span:last-child span {\n display: none;\n }\n align-self: center;\n"])), function (props) {
109
+ return props.theme.bottomLinksDividerSpacing;
110
+ }, _variables.responsiveSizes.small, _variables.responsiveSizes.small);
111
+
112
+ var ChildComponents = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 16px;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n overflow: hidden;\n"])), function (props) {
113
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
114
+ }, function (props) {
115
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
116
+ }, function (props) {
117
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
118
+ }, function (props) {
119
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
120
+ }, function (props) {
121
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
122
+ });
123
+
124
+ var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n\n padding-top: ", ";\n"])), function (props) {
125
+ return props.theme.copyrightFontFamily;
126
+ }, function (props) {
127
+ return props.theme.copyrightFontSize;
128
+ }, function (props) {
129
+ return props.theme.copyrightFontStyle;
130
+ }, function (props) {
131
+ return props.theme.copyrightFontWeight;
132
+ }, function (props) {
133
+ return props.theme.copyrightFontColor;
134
+ }, _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
135
+ return props.theme.bottomLinksDividerSpacing;
136
+ });
137
+
138
+ var LogoContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
139
+ return props.theme.logoHeight;
140
+ }, function (props) {
141
+ return props.theme.logoWidth;
142
+ });
143
+
144
+ var LogoImg = _styledComponents["default"].img(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
145
+ return props.theme.logoHeight;
146
+ }, function (props) {
147
+ return props.theme.logoWidth;
148
+ });
149
+
150
+ var SocialLinkContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-self: center;\n"])));
151
+
152
+ var SocialAnchor = _styledComponents["default"].a(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n & {\n display: inline-flex;\n margin-left: ", ";\n }\n"])), function (props) {
153
+ return props.index === 0 ? "0px" : props.theme.socialLinksGutter;
154
+ });
155
+
156
+ var SocialIconImg = _styledComponents["default"].img(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])([""])));
157
+
158
+ var SocialIconContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n & {\n display: inline-flex;\n height: ", ";\n width: ", ";\n color: ", ";\n }\n\n overflow: hidden;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
159
+ return props.theme.socialLinksSize;
160
+ }, function (props) {
161
+ return props.theme.socialLinksSize;
162
+ }, function (props) {
163
+ return props.theme.socialLinksColor;
164
+ });
165
+
166
+ var Point = _styledComponents["default"].span(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0px 10px;\n color: ", ";\n"])), function (props) {
167
+ return props.theme.bottomLinksFontColor;
168
+ });
169
+
170
+ var BottomLink = _styledComponents["default"].a(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: ", ";\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
171
+ return props.theme.bottomLinksTextDecoration;
172
+ }, function (props) {
173
+ return props.theme.bottomLinksFontColor;
174
+ }, function (props) {
175
+ return props.theme.bottomLinksFontFamily;
176
+ }, function (props) {
177
+ return props.theme.bottomLinksFontSize;
178
+ }, function (props) {
179
+ return props.theme.bottomLinksFontStyle;
180
+ }, function (props) {
181
+ return props.theme.bottomLinksFontWeight;
182
+ });
183
+
184
+ var _default = DxcFooter;
185
+ exports["default"] = _default;
@@ -0,0 +1,130 @@
1
+ import React from "react";
2
+ import DxcFooter from "./Footer";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+
6
+ const social = [
7
+ {
8
+ href: "https://www.linkedin.com/company/dxctechnology",
9
+ logo: (
10
+ <svg version="1.1" id="Capa_1" x="0px" y="0px" viewBox="0 0 438.536 438.536" fill="currentColor">
11
+ <g>
12
+ <path
13
+ d="M414.41,24.123C398.333,8.042,378.963,0,356.315,0H82.228C59.58,0,40.21,8.042,24.126,24.123
14
+ C8.045,40.207,0.003,59.576,0.003,82.225v274.084c0,22.647,8.042,42.018,24.123,58.102c16.084,16.084,35.454,24.126,58.102,24.126
15
+ h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225
16
+ C438.532,59.576,430.49,40.204,414.41,24.123z M133.618,367.157H67.666V169.016h65.952V367.157z M127.626,132.332
17
+ c-6.851,6.567-15.893,9.851-27.124,9.851h-0.288c-10.848,0-19.648-3.284-26.407-9.851c-6.76-6.567-10.138-14.703-10.138-24.41
18
+ c0-9.897,3.476-18.083,10.421-24.556c6.95-6.471,15.942-9.708,26.98-9.708c11.039,0,19.89,3.237,26.553,9.708
19
+ c6.661,6.473,10.088,14.659,10.277,24.556C137.899,117.625,134.477,125.761,127.626,132.332z M370.873,367.157h-65.952v-105.92
20
+ c0-29.879-11.036-44.823-33.116-44.823c-8.374,0-15.42,2.331-21.128,6.995c-5.715,4.661-9.996,10.324-12.847,16.991
21
+ c-1.335,3.422-1.999,8.75-1.999,15.981v110.775h-65.952c0.571-119.529,0.571-185.579,0-198.142h65.952v27.974
22
+ c13.867-21.681,33.558-32.544,59.101-32.544c22.84,0,41.21,7.52,55.104,22.554c13.895,15.037,20.841,37.214,20.841,66.519v113.64
23
+ H370.873z"
24
+ />
25
+ </g>
26
+ </svg>
27
+ ),
28
+ },
29
+ {
30
+ href: "https://twitter.com/dxctechnology",
31
+ logo: "http://assets.stickpng.com/images/580b57fcd9996e24bc43c53e.png",
32
+ },
33
+ {
34
+ href: "https://www.facebook.com/DXCTechnology/",
35
+ logo: (
36
+ <svg
37
+ version="1.1"
38
+ id="Capa_1"
39
+ x="0px"
40
+ y="0px"
41
+ viewBox="0 0 438.536 438.536"
42
+ fill="currentColor"
43
+ width="1000px"
44
+ height="500px"
45
+ >
46
+ <g>
47
+ <path
48
+ d="M414.41,24.123C398.333,8.042,378.963,0,356.315,0H82.228C59.58,0,40.21,8.042,24.126,24.123
49
+ C8.045,40.207,0.003,59.576,0.003,82.225v274.084c0,22.647,8.042,42.018,24.123,58.102c16.084,16.084,35.454,24.126,58.102,24.126
50
+ h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225
51
+ C438.532,59.576,430.49,40.204,414.41,24.123z M373.155,225.548h-49.963V406.84h-74.802V225.548H210.99V163.02h37.401v-37.402
52
+ c0-26.838,6.283-47.107,18.843-60.813c12.559-13.706,33.304-20.555,62.242-20.555h49.963v62.526h-31.401
53
+ c-10.663,0-17.467,1.853-20.417,5.568c-2.949,3.711-4.428,10.23-4.428,19.558v31.119h56.534L373.155,225.548z"
54
+ />
55
+ </g>
56
+ </svg>
57
+ ),
58
+ },
59
+ ];
60
+
61
+ const bottom = [
62
+ {
63
+ href: "https://www.linkedin.com/company/dxctechnology",
64
+ text: "Linkedin",
65
+ },
66
+ {
67
+ href: "https://twitter.com/dxctechnology",
68
+ text: "Twitter",
69
+ },
70
+ {
71
+ href: "https://www.facebook.com/DXCTechnology/",
72
+ text: "Facebook",
73
+ },
74
+ ];
75
+
76
+ export default {
77
+ title: "Footer",
78
+ component: DxcFooter,
79
+ };
80
+
81
+ export const Chromatic = () => (
82
+ <>
83
+ <ExampleContainer>
84
+ <Title title="Default" theme="light" level={4} />
85
+ <DxcFooter />
86
+ </ExampleContainer>
87
+ <ExampleContainer>
88
+ <Title title="With children, copyright, bottom links and social links" theme="light" level={4} />
89
+ <DxcFooter copyright="Copyright" socialLinks={social} bottomLinks={bottom}>
90
+ <div>
91
+ <a href="https://www.linkedin.com/company/dxctechnology">Linkedin</a>
92
+ </div>
93
+ </DxcFooter>
94
+ </ExampleContainer>
95
+ <Title title="Margins" theme="light" level={2} />
96
+ <ExampleContainer>
97
+ <Title title="Xxsmall margin" theme="light" level={4} />
98
+ <DxcFooter margin="xxsmall"></DxcFooter>
99
+ <Title title="Xsmall margin" theme="light" level={4} />
100
+ <DxcFooter margin="xsmall"></DxcFooter>
101
+ <Title title="Small margin" theme="light" level={4} />
102
+ <DxcFooter margin="small"></DxcFooter>
103
+ <Title title="Medium margin" theme="light" level={4} />
104
+ <DxcFooter margin="medium"></DxcFooter>
105
+ <Title title="Large margin" theme="light" level={4} />
106
+ <DxcFooter margin="large"></DxcFooter>
107
+ <Title title="Xlarge margin" theme="light" level={4} />
108
+ <DxcFooter margin="xlarge"></DxcFooter>
109
+ <Title title="Xxlarge margin" theme="light" level={4} />
110
+ <DxcFooter margin="xxlarge"></DxcFooter>
111
+ </ExampleContainer>
112
+ <Title title="Padding" theme="light" level={2} />
113
+ <ExampleContainer>
114
+ <Title title="Xxsmall padding" theme="light" level={4} />
115
+ <DxcFooter padding="xxsmall"></DxcFooter>
116
+ <Title title="Xsmall padding" theme="light" level={4} />
117
+ <DxcFooter padding="xsmall"></DxcFooter>
118
+ <Title title="Small padding" theme="light" level={4} />
119
+ <DxcFooter padding="small"></DxcFooter>
120
+ <Title title="Medium padding" theme="light" level={4} />
121
+ <DxcFooter padding="medium"></DxcFooter>
122
+ <Title title="Large padding" theme="light" level={4} />
123
+ <DxcFooter padding="large"></DxcFooter>
124
+ <Title title="Xlarge padding" theme="light" level={4} />
125
+ <DxcFooter padding="xlarge"></DxcFooter>
126
+ <Title title="Xxlarge padding" theme="light" level={4} />
127
+ <DxcFooter padding="xxlarge"></DxcFooter>
128
+ </ExampleContainer>
129
+ </>
130
+ );
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ var _linkedin = _interopRequireDefault(require("../../app/src/images/linkedin.svg"));
10
+
11
+ var _Footer = _interopRequireDefault(require("./Footer"));
12
+
13
+ describe("Footer component tests", function () {
14
+ test("Footer renders with default logo", function () {
15
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], null)),
16
+ getByTitle = _render.getByTitle;
17
+
18
+ expect(getByTitle("DXC Logo")).toBeTruthy();
19
+ });
20
+ test("Footer renders with social links", function () {
21
+ var social = [{
22
+ href: "https://www.test.com/test",
23
+ logo: _linkedin["default"]
24
+ }];
25
+
26
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
27
+ socialLinks: social
28
+ })),
29
+ getByRole = _render2.getByRole;
30
+
31
+ var socialIcon = getByRole("link");
32
+ expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/test");
33
+ });
34
+ test("Footer renders with bottom links", function () {
35
+ var bottom = [{
36
+ href: "https://www.test.com/test",
37
+ text: "bottom-link-text"
38
+ }];
39
+
40
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
41
+ bottomLinks: bottom
42
+ })),
43
+ getByText = _render3.getByText;
44
+
45
+ var link = getByText("bottom-link-text");
46
+ expect(link.getAttribute("href")).toBe("https://www.test.com/test");
47
+ });
48
+ test("Footer renders with copyright text", function () {
49
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
50
+ copyright: "test-copyright"
51
+ })),
52
+ getByText = _render4.getByText;
53
+
54
+ expect(getByText("test-copyright")).toBeTruthy();
55
+ });
56
+ test("Footer renders with correct children", function () {
57
+ //We need to force the offsetWidth value
58
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
59
+ configurable: true,
60
+ value: 1024
61
+ });
62
+
63
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], null, /*#__PURE__*/_react["default"].createElement("p", null, "footer-child-text"))),
64
+ getByText = _render5.getByText;
65
+
66
+ expect(getByText("footer-child-text")).toBeTruthy();
67
+ });
68
+ test("Footer renders with children in mobile", function () {
69
+ //425 is mobile width
70
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
71
+ configurable: true,
72
+ value: 425
73
+ });
74
+
75
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], null, /*#__PURE__*/_react["default"].createElement("p", null, "footer-child-text"))),
76
+ queryByText = _render6.queryByText;
77
+
78
+ expect(queryByText("footer-child-text")).toBeTruthy();
79
+ });
80
+ test("Footer is fully rendered", function () {
81
+ Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
82
+ configurable: true,
83
+ value: 1024
84
+ });
85
+ var social = [{
86
+ href: "https://www.test.com/social",
87
+ logo: _linkedin["default"]
88
+ }];
89
+ var bottom = [{
90
+ href: "https://www.test.com/bottom",
91
+ text: "bottom-link-text"
92
+ }];
93
+
94
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
95
+ socialLinks: social,
96
+ bottomLinks: bottom,
97
+ copyright: "test-copyright"
98
+ }, /*#__PURE__*/_react["default"].createElement("p", null, "footer-child-text"))),
99
+ getAllByRole = _render7.getAllByRole,
100
+ getByText = _render7.getByText;
101
+
102
+ var socialIcon = getAllByRole("link")[0];
103
+ expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/social");
104
+ var bottomLink = getByText("bottom-link-text");
105
+ expect(bottomLink.getAttribute("href")).toBe("https://www.test.com/bottom");
106
+ expect(getByText("test-copyright")).toBeTruthy();
107
+ expect(getByText("footer-child-text")).toBeTruthy();
108
+ });
109
+ });
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const dxcLogo: JSX.Element;
@@ -0,0 +1,77 @@
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
+ id: "g10",
14
+ xmlns: "http://www.w3.org/2000/svg",
15
+ width: "100%",
16
+ height: "32",
17
+ viewBox: "0 0 280.781 32"
18
+ }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
19
+ id: "g12"
20
+ }, /*#__PURE__*/_react["default"].createElement("path", {
21
+ id: "path14",
22
+ d: "M171.5-54.124v12.539h-3.6V-54.124h-4.973v-3.191h13.54v3.191H171.5",
23
+ transform: "translate(-68.528 65.45)",
24
+ fill: "#fff"
25
+ }), /*#__PURE__*/_react["default"].createElement("path", {
26
+ id: "path16",
27
+ d: "M189.96-41.585V-57.315h12.326v3.079h-8.753v3.191h7.7v3.078h-7.7v3.3h8.87v3.078H189.96",
28
+ transform: "translate(-77.56 65.45)",
29
+ fill: "#fff"
30
+ }), /*#__PURE__*/_react["default"].createElement("path", {
31
+ id: "path18",
32
+ d: "M223.558-41.438a8.1,8.1,0,0,1-8.382-8.1v-.045a8.161,8.161,0,0,1,8.522-8.146,8.6,8.6,0,0,1,6.444,2.431l-2.289,2.543a6.133,6.133,0,0,0-4.178-1.778,4.743,4.743,0,0,0-4.738,4.905v.045a4.752,4.752,0,0,0,4.738,4.95,6,6,0,0,0,4.295-1.845l2.288,2.228a8.491,8.491,0,0,1-6.7,2.813",
33
+ transform: "translate(-86.019 65.583)",
34
+ fill: "#fff"
35
+ }), /*#__PURE__*/_react["default"].createElement("path", {
36
+ id: "path20",
37
+ d: "M254.988-41.585V-47.9h-6.63v6.315h-3.6V-57.315h3.6v6.225h6.63v-6.225h3.594v15.731h-3.594",
38
+ transform: "translate(-95.903 65.45)",
39
+ fill: "#fff"
40
+ }), /*#__PURE__*/_react["default"].createElement("path", {
41
+ id: "path22",
42
+ d: "M285.991-41.585l-7.914-10v10h-3.549V-57.315h3.316l7.657,9.685v-9.685h3.549v15.731h-3.058",
43
+ transform: "translate(-105.869 65.45)",
44
+ fill: "#fff"
45
+ }), /*#__PURE__*/_react["default"].createElement("path", {
46
+ id: "path24",
47
+ d: "M317.2-49.583a4.869,4.869,0,0,0-4.949-4.95,4.793,4.793,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.793,4.793,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.661-3.623-8.661-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.66,3.623,8.66,8.1v.045c0,4.477-3.664,8.145-8.708,8.145",
48
+ transform: "translate(-115.631 65.583)",
49
+ fill: "#fff"
50
+ }), /*#__PURE__*/_react["default"].createElement("path", {
51
+ id: "path26",
52
+ d: "M336.786-41.585V-57.315h3.6v12.584h8.148v3.146H336.786",
53
+ transform: "translate(-126.654 65.45)",
54
+ fill: "#fff"
55
+ }), /*#__PURE__*/_react["default"].createElement("path", {
56
+ id: "path28",
57
+ d: "M372.78-49.583a4.87,4.87,0,0,0-4.949-4.95,4.794,4.794,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.794,4.794,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.662-3.623-8.662-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.661,3.623,8.661,8.1v.045c0,4.477-3.666,8.145-8.708,8.145",
58
+ transform: "translate(-135.016 65.583)",
59
+ fill: "#fff"
60
+ }), /*#__PURE__*/_react["default"].createElement("path", {
61
+ id: "path30",
62
+ d: "M399.735-41.438c-5.09,0-8.592-3.443-8.592-8.1v-.045a8.243,8.243,0,0,1,8.568-8.146,9.18,9.18,0,0,1,6.42,2.16l-2.265,2.634a6.141,6.141,0,0,0-4.272-1.6,4.807,4.807,0,0,0-4.692,4.905v.045a4.8,4.8,0,0,0,4.949,4.995,5.89,5.89,0,0,0,3.384-.945v-2.25h-3.618v-2.992h7.1v6.841a10.837,10.837,0,0,1-6.98,2.5",
63
+ transform: "translate(-145.284 65.583)",
64
+ fill: "#fff"
65
+ }), /*#__PURE__*/_react["default"].createElement("path", {
66
+ id: "path32",
67
+ d: "M428.664-47.855v6.27h-3.6v-6.2l-6.28-9.528h4.2L426.89-51l3.968-6.315h4.085l-6.28,9.46",
68
+ transform: "translate(-154.162 65.45)",
69
+ fill: "#fff"
70
+ }), /*#__PURE__*/_react["default"].createElement("path", {
71
+ id: "path34",
72
+ d: "M84.218-55.737a10.063,10.063,0,0,1,2.589-4.4,9.792,9.792,0,0,1,6.985-2.77h11.328V-69.3H93.792a17.041,17.041,0,0,0-11.8,4.759,16.344,16.344,0,0,0-3.547,5.115,13.247,13.247,0,0,0-1.122,3.688Zm0,4.877a10.065,10.065,0,0,0,2.589,4.4,9.793,9.793,0,0,0,6.985,2.77h11.328V-37.3H93.792a17.042,17.042,0,0,1-11.8-4.759,16.339,16.339,0,0,1-3.547-5.114,13.251,13.251,0,0,1-1.122-3.688ZM63.1-47.98,54.45-37.3H45.873l12.957-16-12.957-16H54.45L63.1-58.619l8.65-10.68h8.578l-12.957,16,12.957,16H71.749ZM48.875-55.737a13.212,13.212,0,0,0-1.122-3.688,16.359,16.359,0,0,0-3.546-5.115,17.043,17.043,0,0,0-11.8-4.759H21.08v6.393H32.408a9.79,9.79,0,0,1,6.985,2.77,10.072,10.072,0,0,1,2.59,4.4Zm0,4.877a13.215,13.215,0,0,1-1.122,3.688,16.353,16.353,0,0,1-3.546,5.114,17.044,17.044,0,0,1-11.8,4.759H21.08v-6.393H32.408a9.791,9.791,0,0,0,6.985-2.77,10.074,10.074,0,0,0,2.59-4.4h6.892",
73
+ transform: "translate(-21.08 69.298)",
74
+ fill: "#fff"
75
+ })));
76
+
77
+ exports.dxcLogo = dxcLogo;