@dxc-technology/halstack-react 0.0.0-2aeb707 → 0.0.0-2b469b1

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 (502) 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 +332 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +239 -0
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +149 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +126 -0
  15. package/accordion-group/types.d.ts +79 -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 +198 -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 +147 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +44 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +123 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +4 -0
  44. package/button/Button.js +154 -0
  45. package/button/Button.stories.tsx +425 -0
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +161 -0
  51. package/card/Card.stories.tsx +201 -0
  52. package/card/Card.test.js +50 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +250 -0
  58. package/checkbox/Checkbox.stories.tsx +260 -0
  59. package/checkbox/Checkbox.test.js +155 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +155 -0
  64. package/chip/Chip.stories.tsx +206 -0
  65. package/chip/Chip.test.js +56 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/{dist/common → common}/OpenSans.css +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  75. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  76. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  77. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  78. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  79. package/common/utils.js +22 -0
  80. package/common/variables.js +1518 -0
  81. package/date-input/Calendar.d.ts +4 -0
  82. package/date-input/Calendar.js +258 -0
  83. package/date-input/DateInput.d.ts +4 -0
  84. package/date-input/DateInput.js +269 -0
  85. package/date-input/DateInput.stories.tsx +304 -0
  86. package/date-input/DateInput.test.js +835 -0
  87. package/date-input/DatePicker.d.ts +4 -0
  88. package/date-input/DatePicker.js +146 -0
  89. package/date-input/Icons.d.ts +6 -0
  90. package/date-input/Icons.js +75 -0
  91. package/date-input/YearPicker.d.ts +4 -0
  92. package/date-input/YearPicker.js +126 -0
  93. package/date-input/types.d.ts +158 -0
  94. package/date-input/types.js +5 -0
  95. package/dialog/Dialog.d.ts +4 -0
  96. package/dialog/Dialog.js +160 -0
  97. package/dialog/Dialog.stories.tsx +289 -0
  98. package/dialog/Dialog.test.js +70 -0
  99. package/dialog/types.d.ts +44 -0
  100. package/dialog/types.js +5 -0
  101. package/dropdown/Dropdown.d.ts +4 -0
  102. package/dropdown/Dropdown.js +388 -0
  103. package/dropdown/Dropdown.stories.tsx +438 -0
  104. package/dropdown/Dropdown.test.js +585 -0
  105. package/dropdown/DropdownMenu.d.ts +4 -0
  106. package/dropdown/DropdownMenu.js +70 -0
  107. package/dropdown/DropdownMenuItem.d.ts +4 -0
  108. package/dropdown/DropdownMenuItem.js +81 -0
  109. package/dropdown/types.d.ts +100 -0
  110. package/dropdown/types.js +5 -0
  111. package/file-input/FileInput.d.ts +4 -0
  112. package/file-input/FileInput.js +551 -0
  113. package/file-input/FileInput.stories.tsx +618 -0
  114. package/file-input/FileInput.test.js +498 -0
  115. package/file-input/FileItem.d.ts +4 -0
  116. package/file-input/FileItem.js +161 -0
  117. package/file-input/types.d.ts +129 -0
  118. package/file-input/types.js +5 -0
  119. package/flex/Flex.d.ts +4 -0
  120. package/flex/Flex.js +69 -0
  121. package/flex/Flex.stories.tsx +103 -0
  122. package/flex/types.d.ts +32 -0
  123. package/flex/types.js +5 -0
  124. package/footer/Footer.d.ts +4 -0
  125. package/footer/Footer.js +185 -0
  126. package/footer/Footer.stories.tsx +228 -0
  127. package/footer/Footer.test.js +109 -0
  128. package/footer/Icons.d.ts +2 -0
  129. package/footer/Icons.js +77 -0
  130. package/footer/types.d.ts +66 -0
  131. package/footer/types.js +5 -0
  132. package/header/Header.d.ts +7 -0
  133. package/header/Header.js +303 -0
  134. package/header/Header.stories.tsx +315 -0
  135. package/header/Header.test.js +79 -0
  136. package/header/Icons.d.ts +2 -0
  137. package/header/Icons.js +34 -0
  138. package/header/types.d.ts +48 -0
  139. package/header/types.js +5 -0
  140. package/heading/Heading.d.ts +4 -0
  141. package/heading/Heading.js +159 -0
  142. package/heading/Heading.stories.tsx +54 -0
  143. package/heading/Heading.test.js +186 -0
  144. package/heading/types.d.ts +33 -0
  145. package/heading/types.js +5 -0
  146. package/inset/Inset.d.ts +3 -0
  147. package/inset/Inset.js +51 -0
  148. package/inset/Inset.stories.tsx +229 -0
  149. package/inset/types.d.ts +37 -0
  150. package/inset/types.js +5 -0
  151. package/layout/ApplicationLayout.d.ts +20 -0
  152. package/layout/ApplicationLayout.js +171 -0
  153. package/layout/ApplicationLayout.stories.tsx +162 -0
  154. package/layout/Icons.d.ts +5 -0
  155. package/layout/Icons.js +66 -0
  156. package/layout/SidenavContext.d.ts +5 -0
  157. package/layout/SidenavContext.js +19 -0
  158. package/layout/types.d.ts +42 -0
  159. package/layout/types.js +5 -0
  160. package/link/Link.d.ts +4 -0
  161. package/link/Link.js +136 -0
  162. package/link/Link.stories.tsx +253 -0
  163. package/link/Link.test.js +83 -0
  164. package/link/types.d.ts +54 -0
  165. package/link/types.js +5 -0
  166. package/main.d.ts +44 -0
  167. package/{dist/main.js → main.js} +157 -75
  168. package/number-input/NumberInput.d.ts +4 -0
  169. package/number-input/NumberInput.js +76 -0
  170. package/number-input/NumberInput.stories.tsx +115 -0
  171. package/number-input/NumberInput.test.js +542 -0
  172. package/number-input/NumberInputContext.d.ts +4 -0
  173. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +6 -2
  174. package/number-input/numberInputContextTypes.d.ts +19 -0
  175. package/number-input/numberInputContextTypes.js +5 -0
  176. package/number-input/types.d.ts +124 -0
  177. package/number-input/types.js +5 -0
  178. package/package.json +49 -37
  179. package/paginator/Icons.d.ts +5 -0
  180. package/paginator/Icons.js +54 -0
  181. package/paginator/Paginator.d.ts +4 -0
  182. package/paginator/Paginator.js +165 -0
  183. package/paginator/Paginator.stories.tsx +87 -0
  184. package/paginator/Paginator.test.js +315 -0
  185. package/paginator/types.d.ts +38 -0
  186. package/paginator/types.js +5 -0
  187. package/paragraph/Paragraph.d.ts +6 -0
  188. package/paragraph/Paragraph.js +38 -0
  189. package/paragraph/Paragraph.stories.tsx +44 -0
  190. package/password-input/PasswordInput.d.ts +4 -0
  191. package/password-input/PasswordInput.js +166 -0
  192. package/password-input/PasswordInput.stories.tsx +131 -0
  193. package/password-input/PasswordInput.test.js +181 -0
  194. package/password-input/types.d.ts +110 -0
  195. package/password-input/types.js +5 -0
  196. package/progress-bar/ProgressBar.d.ts +4 -0
  197. package/progress-bar/ProgressBar.js +176 -0
  198. package/progress-bar/ProgressBar.stories.jsx +92 -0
  199. package/progress-bar/ProgressBar.test.js +110 -0
  200. package/progress-bar/types.d.ts +36 -0
  201. package/progress-bar/types.js +5 -0
  202. package/quick-nav/QuickNav.d.ts +4 -0
  203. package/quick-nav/QuickNav.js +117 -0
  204. package/quick-nav/QuickNav.stories.tsx +356 -0
  205. package/quick-nav/types.d.ts +21 -0
  206. package/quick-nav/types.js +5 -0
  207. package/radio-group/Radio.d.ts +4 -0
  208. package/radio-group/Radio.js +156 -0
  209. package/radio-group/RadioGroup.d.ts +4 -0
  210. package/radio-group/RadioGroup.js +283 -0
  211. package/radio-group/RadioGroup.stories.tsx +214 -0
  212. package/radio-group/RadioGroup.test.js +722 -0
  213. package/radio-group/types.d.ts +114 -0
  214. package/radio-group/types.js +5 -0
  215. package/resultsetTable/Icons.d.ts +7 -0
  216. package/resultsetTable/Icons.js +51 -0
  217. package/resultsetTable/ResultsetTable.d.ts +4 -0
  218. package/resultsetTable/ResultsetTable.js +195 -0
  219. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  220. package/resultsetTable/ResultsetTable.test.js +325 -0
  221. package/resultsetTable/types.d.ts +67 -0
  222. package/resultsetTable/types.js +5 -0
  223. package/select/Icons.d.ts +10 -0
  224. package/select/Icons.js +93 -0
  225. package/select/Listbox.d.ts +4 -0
  226. package/select/Listbox.js +169 -0
  227. package/select/Option.d.ts +4 -0
  228. package/select/Option.js +97 -0
  229. package/select/Select.d.ts +4 -0
  230. package/select/Select.js +664 -0
  231. package/select/Select.stories.tsx +971 -0
  232. package/select/Select.test.js +2228 -0
  233. package/select/types.d.ts +210 -0
  234. package/select/types.js +5 -0
  235. package/sidenav/Sidenav.d.ts +10 -0
  236. package/sidenav/Sidenav.js +266 -0
  237. package/sidenav/Sidenav.stories.tsx +282 -0
  238. package/sidenav/Sidenav.test.js +44 -0
  239. package/sidenav/types.d.ts +73 -0
  240. package/sidenav/types.js +5 -0
  241. package/slider/Slider.d.ts +4 -0
  242. package/slider/Slider.js +343 -0
  243. package/slider/Slider.stories.tsx +240 -0
  244. package/slider/Slider.test.js +250 -0
  245. package/slider/types.d.ts +86 -0
  246. package/slider/types.js +5 -0
  247. package/spinner/Spinner.d.ts +4 -0
  248. package/spinner/Spinner.js +250 -0
  249. package/spinner/Spinner.stories.jsx +129 -0
  250. package/spinner/Spinner.test.js +64 -0
  251. package/spinner/types.d.ts +32 -0
  252. package/spinner/types.js +5 -0
  253. package/switch/Switch.d.ts +4 -0
  254. package/switch/Switch.js +262 -0
  255. package/switch/Switch.stories.tsx +171 -0
  256. package/switch/Switch.test.js +225 -0
  257. package/switch/types.d.ts +66 -0
  258. package/switch/types.js +5 -0
  259. package/table/Table.d.ts +4 -0
  260. package/table/Table.js +118 -0
  261. package/table/Table.stories.jsx +356 -0
  262. package/table/Table.test.js +26 -0
  263. package/table/types.d.ts +21 -0
  264. package/table/types.js +5 -0
  265. package/tabs/Tab.d.ts +4 -0
  266. package/tabs/Tab.js +133 -0
  267. package/tabs/Tabs.d.ts +4 -0
  268. package/tabs/Tabs.js +467 -0
  269. package/tabs/Tabs.stories.tsx +226 -0
  270. package/tabs/Tabs.test.js +351 -0
  271. package/tabs/types.d.ts +92 -0
  272. package/tabs/types.js +5 -0
  273. package/tabs-nav/NavTabs.d.ts +8 -0
  274. package/tabs-nav/NavTabs.js +125 -0
  275. package/tabs-nav/NavTabs.stories.tsx +172 -0
  276. package/tabs-nav/NavTabs.test.js +82 -0
  277. package/tabs-nav/Tab.d.ts +4 -0
  278. package/tabs-nav/Tab.js +128 -0
  279. package/tabs-nav/types.d.ts +53 -0
  280. package/tabs-nav/types.js +5 -0
  281. package/tag/Tag.d.ts +4 -0
  282. package/tag/Tag.js +183 -0
  283. package/tag/Tag.stories.tsx +155 -0
  284. package/tag/Tag.test.js +60 -0
  285. package/tag/types.d.ts +69 -0
  286. package/tag/types.js +5 -0
  287. package/text-input/Icons.d.ts +8 -0
  288. package/text-input/Icons.js +60 -0
  289. package/text-input/Suggestion.d.ts +4 -0
  290. package/text-input/Suggestion.js +84 -0
  291. package/text-input/Suggestions.d.ts +4 -0
  292. package/text-input/Suggestions.js +134 -0
  293. package/text-input/TextInput.d.ts +4 -0
  294. package/text-input/TextInput.js +673 -0
  295. package/text-input/TextInput.stories.tsx +569 -0
  296. package/text-input/TextInput.test.js +1724 -0
  297. package/text-input/types.d.ts +197 -0
  298. package/text-input/types.js +5 -0
  299. package/textarea/Textarea.d.ts +4 -0
  300. package/textarea/Textarea.js +277 -0
  301. package/textarea/Textarea.stories.jsx +216 -0
  302. package/textarea/Textarea.test.js +437 -0
  303. package/textarea/types.d.ts +137 -0
  304. package/textarea/types.js +5 -0
  305. package/toggle-group/ToggleGroup.d.ts +4 -0
  306. package/toggle-group/ToggleGroup.js +215 -0
  307. package/toggle-group/ToggleGroup.stories.tsx +215 -0
  308. package/toggle-group/ToggleGroup.test.js +156 -0
  309. package/toggle-group/types.d.ts +105 -0
  310. package/toggle-group/types.js +5 -0
  311. package/typography/Typography.d.ts +4 -0
  312. package/typography/Typography.js +131 -0
  313. package/typography/Typography.stories.tsx +198 -0
  314. package/typography/types.d.ts +18 -0
  315. package/typography/types.js +5 -0
  316. package/useTheme.d.ts +2 -0
  317. package/useTheme.js +22 -0
  318. package/useTranslatedLabels.d.ts +2 -0
  319. package/useTranslatedLabels.js +20 -0
  320. package/wizard/Wizard.d.ts +4 -0
  321. package/wizard/Wizard.js +285 -0
  322. package/wizard/Wizard.stories.tsx +253 -0
  323. package/wizard/Wizard.test.js +141 -0
  324. package/wizard/types.d.ts +65 -0
  325. package/wizard/types.js +5 -0
  326. package/README.md +0 -66
  327. package/babel.config.js +0 -4
  328. package/dist/accordion/Accordion.js +0 -268
  329. package/dist/accordion/Accordion.stories.js +0 -207
  330. package/dist/accordion/readme.md +0 -96
  331. package/dist/accordion-group/AccordionGroup.js +0 -159
  332. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  333. package/dist/accordion-group/readme.md +0 -70
  334. package/dist/alert/Alert.js +0 -304
  335. package/dist/alert/Alert.stories.js +0 -158
  336. package/dist/alert/close.svg +0 -4
  337. package/dist/alert/error.svg +0 -4
  338. package/dist/alert/info.svg +0 -4
  339. package/dist/alert/readme.md +0 -43
  340. package/dist/alert/success.svg +0 -4
  341. package/dist/alert/warning.svg +0 -4
  342. package/dist/box/Box.js +0 -148
  343. package/dist/button/Button.js +0 -202
  344. package/dist/button/Button.stories.js +0 -224
  345. package/dist/button/readme.md +0 -93
  346. package/dist/card/Card.js +0 -217
  347. package/dist/checkbox/Checkbox.js +0 -240
  348. package/dist/checkbox/Checkbox.stories.js +0 -144
  349. package/dist/checkbox/readme.md +0 -116
  350. package/dist/chip/Chip.js +0 -208
  351. package/dist/common/RequiredComponent.js +0 -46
  352. package/dist/common/services/example-service.js +0 -10
  353. package/dist/common/services/example-service.test.js +0 -12
  354. package/dist/common/utils.js +0 -42
  355. package/dist/common/variables.js +0 -434
  356. package/dist/date/Date.js +0 -356
  357. package/dist/date/Date.stories.js +0 -205
  358. package/dist/date/calendar.svg +0 -1
  359. package/dist/date/calendar_dark.svg +0 -1
  360. package/dist/date/readme.md +0 -73
  361. package/dist/dialog/Dialog.js +0 -197
  362. package/dist/dialog/Dialog.stories.js +0 -217
  363. package/dist/dialog/readme.md +0 -32
  364. package/dist/dropdown/Dropdown.js +0 -449
  365. package/dist/dropdown/Dropdown.stories.js +0 -249
  366. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  367. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  368. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  369. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  370. package/dist/dropdown/readme.md +0 -69
  371. package/dist/footer/Footer.js +0 -371
  372. package/dist/footer/Footer.stories.js +0 -94
  373. package/dist/footer/dxc_logo_wht.png +0 -0
  374. package/dist/footer/readme.md +0 -41
  375. package/dist/header/Header.js +0 -373
  376. package/dist/header/Header.stories.js +0 -176
  377. package/dist/header/close_icon.svg +0 -1
  378. package/dist/header/dxc_logo_black.png +0 -0
  379. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  380. package/dist/header/dxc_logo_white.png +0 -0
  381. package/dist/header/hamb_menu_black.svg +0 -1
  382. package/dist/header/hamb_menu_white.svg +0 -1
  383. package/dist/header/readme.md +0 -33
  384. package/dist/heading/Heading.js +0 -153
  385. package/dist/input-text/InputText.js +0 -570
  386. package/dist/input-text/InputText.stories.js +0 -209
  387. package/dist/input-text/error.svg +0 -1
  388. package/dist/input-text/readme.md +0 -91
  389. package/dist/layout/ApplicationLayout.js +0 -335
  390. package/dist/layout/facebook.svg +0 -45
  391. package/dist/layout/linkedin.svg +0 -50
  392. package/dist/layout/twitter.svg +0 -53
  393. package/dist/link/Link.js +0 -189
  394. package/dist/link/readme.md +0 -51
  395. package/dist/paginator/Paginator.js +0 -232
  396. package/dist/paginator/images/next.svg +0 -3
  397. package/dist/paginator/images/nextPage.svg +0 -3
  398. package/dist/paginator/images/previous.svg +0 -3
  399. package/dist/paginator/images/previousPage.svg +0 -3
  400. package/dist/paginator/readme.md +0 -50
  401. package/dist/progress-bar/ProgressBar.js +0 -185
  402. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  403. package/dist/progress-bar/readme.md +0 -63
  404. package/dist/radio/Radio.js +0 -195
  405. package/dist/radio/Radio.stories.js +0 -166
  406. package/dist/radio/readme.md +0 -70
  407. package/dist/resultsetTable/ResultsetTable.js +0 -341
  408. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  409. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  410. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  411. package/dist/select/Select.js +0 -473
  412. package/dist/select/Select.stories.js +0 -235
  413. package/dist/select/readme.md +0 -72
  414. package/dist/sidenav/Sidenav.js +0 -128
  415. package/dist/slider/Slider.js +0 -266
  416. package/dist/slider/Slider.stories.js +0 -241
  417. package/dist/slider/readme.md +0 -64
  418. package/dist/spinner/Spinner.js +0 -193
  419. package/dist/spinner/Spinner.stories.js +0 -183
  420. package/dist/spinner/readme.md +0 -65
  421. package/dist/switch/Switch.js +0 -199
  422. package/dist/switch/Switch.stories.js +0 -134
  423. package/dist/switch/readme.md +0 -133
  424. package/dist/table/Table.js +0 -105
  425. package/dist/tabs/Tabs.js +0 -185
  426. package/dist/tabs/Tabs.stories.js +0 -130
  427. package/dist/tabs/readme.md +0 -78
  428. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  429. package/dist/tabs-for-sections/readme.md +0 -78
  430. package/dist/tag/Tag.js +0 -249
  431. package/dist/textarea/Textarea.js +0 -227
  432. package/dist/toggle/Toggle.js +0 -223
  433. package/dist/toggle/Toggle.stories.js +0 -297
  434. package/dist/toggle/readme.md +0 -80
  435. package/dist/toggle-group/ToggleGroup.js +0 -226
  436. package/dist/toggle-group/readme.md +0 -82
  437. package/dist/upload/Upload.js +0 -200
  438. package/dist/upload/Upload.stories.js +0 -72
  439. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  440. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  441. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  442. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  443. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  444. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  445. package/dist/upload/file-upload/FileToUpload.js +0 -158
  446. package/dist/upload/file-upload/audio-icon.svg +0 -4
  447. package/dist/upload/file-upload/close.svg +0 -4
  448. package/dist/upload/file-upload/file-icon.svg +0 -4
  449. package/dist/upload/file-upload/video-icon.svg +0 -4
  450. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  451. package/dist/upload/readme.md +0 -37
  452. package/dist/upload/transaction/Transaction.js +0 -155
  453. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  454. package/dist/upload/transaction/audio-icon.svg +0 -4
  455. package/dist/upload/transaction/error-icon.svg +0 -4
  456. package/dist/upload/transaction/file-icon-err.svg +0 -4
  457. package/dist/upload/transaction/file-icon.svg +0 -4
  458. package/dist/upload/transaction/image-icon-err.svg +0 -4
  459. package/dist/upload/transaction/image-icon.svg +0 -4
  460. package/dist/upload/transaction/success-icon.svg +0 -4
  461. package/dist/upload/transaction/video-icon-err.svg +0 -4
  462. package/dist/upload/transaction/video-icon.svg +0 -4
  463. package/dist/upload/transactions/Transactions.js +0 -120
  464. package/dist/wizard/Wizard.js +0 -340
  465. package/dist/wizard/invalid_icon.svg +0 -6
  466. package/dist/wizard/valid_icon.svg +0 -6
  467. package/dist/wizard/validation-wrong.svg +0 -6
  468. package/test/Accordion.test.js +0 -33
  469. package/test/AccordionGroup.test.js +0 -111
  470. package/test/Alert.test.js +0 -53
  471. package/test/Box.test.js +0 -10
  472. package/test/Button.test.js +0 -18
  473. package/test/Card.test.js +0 -30
  474. package/test/Checkbox.test.js +0 -45
  475. package/test/Chip.test.js +0 -25
  476. package/test/Date.test.js +0 -393
  477. package/test/Dialog.test.js +0 -23
  478. package/test/Dropdown.test.js +0 -130
  479. package/test/Footer.test.js +0 -99
  480. package/test/Header.test.js +0 -39
  481. package/test/Heading.test.js +0 -35
  482. package/test/InputText.test.js +0 -240
  483. package/test/Link.test.js +0 -33
  484. package/test/Paginator.test.js +0 -194
  485. package/test/ProgressBar.test.js +0 -35
  486. package/test/Radio.test.js +0 -37
  487. package/test/ResultsetTable.test.js +0 -304
  488. package/test/Select.test.js +0 -192
  489. package/test/Sidenav.test.js +0 -45
  490. package/test/Slider.test.js +0 -82
  491. package/test/Spinner.test.js +0 -27
  492. package/test/Switch.test.js +0 -45
  493. package/test/Table.test.js +0 -36
  494. package/test/Tabs.test.js +0 -88
  495. package/test/TabsForSections.test.js +0 -34
  496. package/test/Tag.test.js +0 -32
  497. package/test/TextArea.test.js +0 -52
  498. package/test/ToggleGroup.test.js +0 -81
  499. package/test/Upload.test.js +0 -60
  500. package/test/Wizard.test.js +0 -130
  501. package/test/mocks/pngMock.js +0 -1
  502. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const facebookLogo: JSX.Element;
3
+ export declare const twitterLogo: JSX.Element;
4
+ export declare const linkedinLogo: JSX.Element;
5
+ export declare const hamburgerIcon: JSX.Element;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.twitterLogo = exports.linkedinLogo = exports.hamburgerIcon = exports.facebookLogo = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var facebookLogo = /*#__PURE__*/_react["default"].createElement("svg", {
13
+ version: "1.1",
14
+ id: "Capa_1",
15
+ x: "0px",
16
+ y: "0px",
17
+ width: "438.536px",
18
+ height: "438.536px",
19
+ viewBox: "0 0 438.536 438.536",
20
+ fill: "#FFFFFF"
21
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
22
+ 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 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 h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225 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 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 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"
23
+ })));
24
+
25
+ exports.facebookLogo = facebookLogo;
26
+
27
+ var twitterLogo = /*#__PURE__*/_react["default"].createElement("svg", {
28
+ version: "1.1",
29
+ id: "Capa_1",
30
+ x: "0px",
31
+ y: "0px",
32
+ width: "438.536px",
33
+ height: "438.536px",
34
+ viewBox: "0 0 438.536 438.536",
35
+ fill: "#FFFFFF"
36
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
37
+ 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 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 h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225 C438.532,59.576,430.49,40.204,414.41,24.123z M335.471,168.735c0.191,1.713,0.288,4.278,0.288,7.71 c0,15.989-2.334,32.025-6.995,48.104c-4.661,16.087-11.8,31.504-21.416,46.254c-9.606,14.749-21.074,27.791-34.396,39.115 c-13.325,11.32-29.311,20.365-47.968,27.117c-18.648,6.762-38.637,10.143-59.953,10.143c-33.116,0-63.76-8.952-91.931-26.836 c4.568,0.568,9.329,0.855,14.275,0.855c27.6,0,52.439-8.565,74.519-25.7c-12.941-0.185-24.506-4.179-34.688-11.991 c-10.185-7.803-17.273-17.699-21.271-29.691c4.947,0.76,8.658,1.137,11.132,1.137c4.187,0,9.042-0.76,14.56-2.279 c-13.894-2.669-25.598-9.562-35.115-20.697c-9.519-11.136-14.277-23.84-14.277-38.114v-0.571 c10.085,4.755,19.602,7.229,28.549,7.422c-17.321-11.613-25.981-28.265-25.981-49.963c0-10.66,2.758-20.747,8.278-30.264 c15.035,18.464,33.311,33.213,54.816,44.252c21.507,11.038,44.54,17.227,69.092,18.558c-0.95-3.616-1.427-8.186-1.427-13.704 c0-16.562,5.853-30.692,17.56-42.399c11.703-11.706,25.837-17.561,42.394-17.561c17.515,0,32.079,6.283,43.688,18.846 c13.134-2.474,25.892-7.33,38.26-14.56c-4.757,14.652-13.613,25.788-26.55,33.402c12.368-1.716,23.88-4.95,34.537-9.708 C357.458,149.793,347.462,160.166,335.471,168.735z"
38
+ })));
39
+
40
+ exports.twitterLogo = twitterLogo;
41
+
42
+ var linkedinLogo = /*#__PURE__*/_react["default"].createElement("svg", {
43
+ version: "1.1",
44
+ id: "Capa_1",
45
+ x: "0px",
46
+ y: "0px",
47
+ width: "438.536px",
48
+ height: "438.536px",
49
+ viewBox: "0 0 438.536 438.536",
50
+ fill: "#FFFFFF"
51
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
52
+ 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 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 h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225 C438.532,59.576,430.49,40.204,414.41,24.123z M133.618,367.157H67.666V169.016h65.952V367.157z M127.626,132.332 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 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 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 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 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 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 H370.873z"
53
+ })));
54
+
55
+ exports.linkedinLogo = linkedinLogo;
56
+
57
+ var hamburgerIcon = /*#__PURE__*/_react["default"].createElement("svg", {
58
+ xmlns: "http://www.w3.org/2000/svg",
59
+ height: "24",
60
+ width: "24",
61
+ viewBox: "0 0 24 24"
62
+ }, /*#__PURE__*/_react["default"].createElement("path", {
63
+ d: "M3 18V16H21V18ZM3 13V11H21V13ZM3 8V6H21V8Z"
64
+ }));
65
+
66
+ exports.hamburgerIcon = hamburgerIcon;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ declare type SidenavContextType = (isSidenavVisible: boolean) => void;
3
+ export declare const SidenavContextProvider: import("react").Provider<SidenavContextType>;
4
+ export declare const useResponsiveSidenavVisibility: () => SidenavContextType;
5
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useResponsiveSidenavVisibility = exports.SidenavContextProvider = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ var SidenavContext = /*#__PURE__*/(0, _react.createContext)(null);
11
+ var SidenavContextProvider = SidenavContext.Provider;
12
+ exports.SidenavContextProvider = SidenavContextProvider;
13
+
14
+ var useResponsiveSidenavVisibility = function useResponsiveSidenavVisibility() {
15
+ var changeResponsiveSidenavVisibility = (0, _react.useContext)(SidenavContext);
16
+ return changeResponsiveSidenavVisibility;
17
+ };
18
+
19
+ exports.useResponsiveSidenavVisibility = useResponsiveSidenavVisibility;
@@ -0,0 +1,42 @@
1
+ /// <reference types="react" />
2
+ declare type ChildrenType = AppLayoutMainPropsType | AppLayoutSidenavPropsType;
3
+ export declare type AppLayoutMainPropsType = {
4
+ /**
5
+ * Everything between the tags will be displayed as the content of the main part of the application.
6
+ */
7
+ children: React.ReactNode;
8
+ };
9
+ export declare type AppLayoutSidenavPropsType = {
10
+ /**
11
+ * The area inside the sidenav. This area can be used to render the content inside the sidenav.
12
+ */
13
+ children: React.ReactNode;
14
+ /**
15
+ * The area assigned to render the sidenav title. It is highly recommended to use the sidenav title.
16
+ */
17
+ title?: React.ReactNode;
18
+ };
19
+ declare type AppLayoutPropsType = {
20
+ /**
21
+ * Text to be placed next to the hamburger button that toggles the
22
+ * visibility of the sidenav.
23
+ */
24
+ visibilityToggleLabel?: string;
25
+ /**
26
+ * Header content.
27
+ */
28
+ header?: React.ReactNode;
29
+ /**
30
+ * Sidenav content
31
+ */
32
+ sidenav?: React.ReactNode;
33
+ /**
34
+ * Footer content
35
+ */
36
+ footer?: React.ReactNode;
37
+ /**
38
+ * The area inside the sidenav. This area can be used to render custom content.
39
+ */
40
+ children: React.ReactElement<ChildrenType> | React.ReactElement<ChildrenType>[];
41
+ };
42
+ export default AppLayoutPropsType;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/link/Link.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { LinkProps } from "./types";
3
+ declare const DxcLink: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
4
+ export default DxcLink;
package/link/Link.js ADDED
@@ -0,0 +1,136 @@
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
17
+
18
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
+
20
+ var _react = _interopRequireWildcard(require("react"));
21
+
22
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
+
24
+ var _variables = require("../common/variables.js");
25
+
26
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
27
+
28
+ var _templateObject, _templateObject2, _templateObject3;
29
+
30
+ var _excluded = ["inheritColor", "disabled", "icon", "iconPosition", "href", "newWindow", "onClick", "margin", "tabIndex", "children"];
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 LinkContent = /*#__PURE__*/_react["default"].memo(function (_ref) {
37
+ var iconPosition = _ref.iconPosition,
38
+ icon = _ref.icon,
39
+ children = _ref.children;
40
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, iconPosition === "after" && children, icon && /*#__PURE__*/_react["default"].createElement(LinkIconContainer, {
41
+ iconPosition: iconPosition
42
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(LinkIcon, {
43
+ src: icon
44
+ }) : icon), iconPosition === "before" && children);
45
+ });
46
+
47
+ var DxcLink = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
48
+ var _ref2$inheritColor = _ref2.inheritColor,
49
+ inheritColor = _ref2$inheritColor === void 0 ? false : _ref2$inheritColor,
50
+ _ref2$disabled = _ref2.disabled,
51
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
52
+ icon = _ref2.icon,
53
+ _ref2$iconPosition = _ref2.iconPosition,
54
+ iconPosition = _ref2$iconPosition === void 0 ? "before" : _ref2$iconPosition,
55
+ _ref2$href = _ref2.href,
56
+ href = _ref2$href === void 0 ? "" : _ref2$href,
57
+ _ref2$newWindow = _ref2.newWindow,
58
+ newWindow = _ref2$newWindow === void 0 ? false : _ref2$newWindow,
59
+ onClick = _ref2.onClick,
60
+ margin = _ref2.margin,
61
+ _ref2$tabIndex = _ref2.tabIndex,
62
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex,
63
+ children = _ref2.children,
64
+ otherProps = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
65
+ var colorsTheme = (0, _useTheme["default"])();
66
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
67
+ theme: colorsTheme.link
68
+ }, /*#__PURE__*/_react["default"].createElement(StyledLink, (0, _extends2["default"])({
69
+ as: href ? "a" : "button",
70
+ tabIndex: tabIndex,
71
+ onClick: !disabled ? onClick : undefined,
72
+ href: !disabled && href ? href : undefined,
73
+ target: href ? newWindow ? "_blank" : "_self" : undefined,
74
+ disabled: disabled,
75
+ inheritColor: inheritColor,
76
+ margin: margin,
77
+ ref: ref
78
+ }, otherProps), /*#__PURE__*/_react["default"].createElement(LinkContent, {
79
+ iconPosition: iconPosition,
80
+ icon: icon,
81
+ children: children
82
+ })));
83
+ });
84
+
85
+ var StyledLink = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: baseline;\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n font-family: ", ";\n text-decoration-color: transparent;\n width: fit-content;\n\n ", "\n ", "\n color: ", ";\n ", "\n\n &:visited {\n color: ", ";\n &:hover {\n ", "\n }\n }\n &:hover {\n ", "\n }\n &:focus {\n border-radius: 2px;\n outline: 2px solid ", ";\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
86
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
87
+ }, function (props) {
88
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
89
+ }, function (props) {
90
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
91
+ }, function (props) {
92
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
93
+ }, function (props) {
94
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
95
+ }, function (props) {
96
+ return props.theme.fontSize;
97
+ }, function (props) {
98
+ return props.theme.fontWeight;
99
+ }, function (props) {
100
+ return props.theme.fontStyle;
101
+ }, function (props) {
102
+ return props.theme.fontFamily;
103
+ }, function (props) {
104
+ return "padding-bottom: ".concat(props.theme.underlineSpacing, ";\n border-bottom: ").concat(props.theme.underlineThickness, " ").concat(props.theme.underlineStyle, " transparent;");
105
+ }, function (props) {
106
+ return props.disabled && "cursor: default;";
107
+ }, function (props) {
108
+ return props.inheritColor ? "inherit" : !props.disabled ? props.theme.fontColor : props.theme.disabledColor;
109
+ }, function (props) {
110
+ return props.disabled ? "pointer-events: none;" : "";
111
+ }, function (props) {
112
+ return !props.inheritColor && !props.disabled ? props.theme.visitedFontColor : "";
113
+ }, function (props) {
114
+ return "color: ".concat(props.theme.visitedFontColor, ";\n border-bottom-color: ").concat(props.theme.visitedUnderlineColor, ";");
115
+ }, function (props) {
116
+ return "color: ".concat(props.theme.hoverFontColor, ";\n border-bottom-color: ").concat(props.theme.hoverUnderlineColor, ";\n cursor: pointer;");
117
+ }, function (props) {
118
+ return props.theme.focusColor;
119
+ }, function (props) {
120
+ return props.disabled && "outline: none";
121
+ }, function (props) {
122
+ return "color: ".concat(props.theme.activeFontColor, " !important;\n border-bottom-color: ").concat(props.theme.activeUnderlineColor, " !important;");
123
+ });
124
+
125
+ var LinkIcon = _styledComponents["default"].img(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])([""])));
126
+
127
+ var LinkIconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", ";\n overflow: hidden;\n align-self: center;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
128
+ return props.theme.iconSize;
129
+ }, function (props) {
130
+ return props.theme.iconSize;
131
+ }, function (props) {
132
+ return "".concat(props.iconPosition === "before" ? "margin-right" : "margin-left", ": ").concat(props.theme.iconSpacing);
133
+ });
134
+
135
+ var _default = DxcLink;
136
+ exports["default"] = _default;
@@ -0,0 +1,253 @@
1
+ import React from "react";
2
+ import DxcLink from "./Link";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
6
+
7
+ export default {
8
+ title: "Link",
9
+ component: DxcLink,
10
+ };
11
+
12
+ const icon = (
13
+ <svg viewBox="0 0 24 24" enableBackground="new 0 0 24 24" fill="currentColor">
14
+ <g id="Bounding_Box">
15
+ <rect fill="none" width="24" height="24" />
16
+ </g>
17
+ <g id="Master">
18
+ <path d="M19,9.3V4h-3v2.6L12,3L2,12h3v8h5v-6h4v6h5v-8h3L19,9.3z M10,10c0-1.1,0.9-2,2-2s2,0.9,2,2H10z" />
19
+ </g>
20
+ </svg>
21
+ );
22
+
23
+ const opinionatedTheme = {
24
+ link: {
25
+ baseColor: "#5f249f",
26
+ },
27
+ };
28
+
29
+ export const Chromatic = () => (
30
+ <>
31
+ <Title title="With anchor" theme="light" level={2} />
32
+ <ExampleContainer>
33
+ <Title title="Disabled" theme="light" level={4} />
34
+ <DxcLink disabled>Test</DxcLink>
35
+ <Title title="Icon before" theme="light" level={4} />
36
+ <DxcLink href="https://www.google.com" icon={icon} iconPosition="before">
37
+ Test
38
+ </DxcLink>
39
+ <Title title="Icon after" theme="light" level={4} />
40
+ <DxcLink
41
+ href="https://www.youtube.com/"
42
+ icon="https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png"
43
+ iconPosition="after"
44
+ >
45
+ Test
46
+ </DxcLink>
47
+ </ExampleContainer>
48
+ <ExampleContainer pseudoState="pseudo-hover">
49
+ <Title title="With link hovered" theme="light" level={4} />
50
+ <DxcLink href="https://www.dxc.com">Test</DxcLink>
51
+ </ExampleContainer>
52
+ <ExampleContainer pseudoState="pseudo-focus">
53
+ <Title title="With link focused" theme="light" level={4} />
54
+ <DxcLink href="https://www.dxc.com">Test</DxcLink>
55
+ </ExampleContainer>
56
+ <ExampleContainer pseudoState="pseudo-active">
57
+ <Title title="With link active" theme="light" level={4} />
58
+ <DxcLink href="https://www.dxc.com">Test</DxcLink>
59
+ </ExampleContainer>
60
+ <ExampleContainer pseudoState="pseudo-visited">
61
+ <Title title="With link visited" theme="light" level={4} />
62
+ <DxcLink href="https://www.amazon.com">Test</DxcLink>
63
+ </ExampleContainer>
64
+ <ExampleContainer>
65
+ <Title title="Inherit color" theme="light" level={4} />
66
+ This is a <DxcLink inheritColor>Test</DxcLink>.
67
+ </ExampleContainer>
68
+ <ExampleContainer pseudoState="pseudo-focus">
69
+ <Title title="With brackets and focus" theme="light" level={4} />
70
+ This is a (
71
+ <DxcLink inheritColor href="https://www.google.com">
72
+ Test
73
+ </DxcLink>
74
+ ).
75
+ </ExampleContainer>
76
+ <ExampleContainer pseudoState="pseudo-hover">
77
+ <Title title="Long text with hover" theme="light" level={4} />
78
+ Lorem{" "}
79
+ <DxcLink href="https://www.google.com" icon={icon}>
80
+ Test
81
+ </DxcLink>{" "}
82
+ ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
83
+ aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
84
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
85
+ Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit{" "}
86
+ <DxcLink href="https://www.google.com" icon={icon} iconPosition="after">
87
+ Test
88
+ </DxcLink>{" "}
89
+ anim id est laborum.
90
+ </ExampleContainer>
91
+ <ExampleContainer pseudoState="pseudo-focus">
92
+ <Title title="Long text with focus" theme="light" level={4} />
93
+ Lorem <DxcLink href="https://www.google.com">Test</DxcLink> ipsum dolor sit amet, consectetur adipiscing elit, sed
94
+ do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation
95
+ ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit
96
+ esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui
97
+ officia deserunt mollit anim id est laborum.
98
+ </ExampleContainer>
99
+ <Title title="With button" theme="light" level={2} />
100
+ <ExampleContainer>
101
+ <Title title="Disabled" theme="light" level={4} />
102
+ <DxcLink onClick={() => {}} disabled>
103
+ Test
104
+ </DxcLink>
105
+ <Title title="Icon before" theme="light" level={4} />
106
+ <DxcLink onClick={() => {}} icon={icon} iconPosition="before">
107
+ Test
108
+ </DxcLink>
109
+ <Title title="Icon after" theme="light" level={4} />
110
+ <DxcLink onClick={() => {}} icon={icon} iconPosition="after">
111
+ Test
112
+ </DxcLink>
113
+ </ExampleContainer>
114
+ <ExampleContainer pseudoState="pseudo-hover">
115
+ <Title title="With link hovered" theme="light" level={4} />
116
+ <DxcLink onClick={() => {}}>Test</DxcLink>
117
+ </ExampleContainer>
118
+ <ExampleContainer pseudoState="pseudo-focus">
119
+ <Title title="With link focused" theme="light" level={4} />
120
+ <DxcLink onClick={() => {}}>Test</DxcLink>
121
+ </ExampleContainer>
122
+ <ExampleContainer pseudoState="pseudo-active">
123
+ <Title title="With link active" theme="light" level={4} />
124
+ <DxcLink onClick={() => {}}>Test</DxcLink>
125
+ </ExampleContainer>
126
+ <ExampleContainer pseudoState="pseudo-visited">
127
+ <Title title="With link visited" theme="light" level={4} />
128
+ <DxcLink onClick={() => {}}>Test</DxcLink>
129
+ </ExampleContainer>
130
+ <ExampleContainer>
131
+ <Title title="Inherit color" theme="light" level={4} />
132
+ This is a{" "}
133
+ <DxcLink onClick={() => {}} inheritColor>
134
+ Test
135
+ </DxcLink>
136
+ .
137
+ </ExampleContainer>
138
+ <ExampleContainer pseudoState="pseudo-focus">
139
+ <Title title="With brackets and focus" theme="light" level={4} />
140
+ This is a (
141
+ <DxcLink onClick={() => {}} inheritColor>
142
+ Test
143
+ </DxcLink>
144
+ ).
145
+ </ExampleContainer>
146
+ <ExampleContainer pseudoState="pseudo-hover">
147
+ <Title title="Long text with hover" theme="light" level={4} />
148
+ Lorem{" "}
149
+ <DxcLink onClick={() => {}} href="https://www.google.com">
150
+ Test
151
+ </DxcLink>{" "}
152
+ ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
153
+ aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
154
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
155
+ Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
156
+ </ExampleContainer>
157
+ <ExampleContainer pseudoState="pseudo-focus">
158
+ <Title title="Long text with focus" theme="light" level={4} />
159
+ Lorem{" "}
160
+ <DxcLink onClick={() => {}} href="https://www.google.com">
161
+ Test
162
+ </DxcLink>{" "}
163
+ ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
164
+ aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
165
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
166
+ Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
167
+ </ExampleContainer>
168
+ <Title title="Margins" theme="light" level={2} />
169
+ <ExampleContainer>
170
+ <Title title="Xxsmall margin" theme="light" level={4} />
171
+ <DxcLink margin="xxsmall" href="https://www.facebook.com/">
172
+ Test
173
+ </DxcLink>
174
+ <Title title="Xsmall margin" theme="light" level={4} />
175
+ <DxcLink margin="xsmall" href="https://www.linkedin.com/">
176
+ Test
177
+ </DxcLink>
178
+ <Title title="Small margin" theme="light" level={4} />
179
+ <DxcLink margin="small" href="https://www.linkedin.com/">
180
+ Test
181
+ </DxcLink>
182
+ <Title title="Medium margin" theme="light" level={4} />
183
+ <DxcLink margin="medium" href="https://www.linkedin.com/">
184
+ Test
185
+ </DxcLink>
186
+ <Title title="Large margin" theme="light" level={4} />
187
+ <DxcLink margin="large" href="https://www.linkedin.com/">
188
+ Test
189
+ </DxcLink>
190
+ <Title title="Xlarge margin" theme="light" level={4} />
191
+ <DxcLink margin="xlarge" href="https://www.linkedin.com/">
192
+ Test
193
+ </DxcLink>
194
+ <Title title="Xxlarge margin" theme="light" level={4} />
195
+ <DxcLink margin="xxlarge" href="https://www.linkedin.com/">
196
+ Test
197
+ </DxcLink>
198
+ </ExampleContainer>
199
+ <Title title="Opinionated theme" theme="light" level={2} />
200
+ <ExampleContainer>
201
+ <Title title="Disabled" theme="light" level={4} />
202
+ <HalstackProvider theme={opinionatedTheme}>
203
+ <DxcLink disabled>Test</DxcLink>
204
+ </HalstackProvider>
205
+ </ExampleContainer>
206
+ <ExampleContainer>
207
+ <Title title="Icon before" theme="light" level={4} />
208
+ <HalstackProvider theme={opinionatedTheme}>
209
+ <DxcLink href="https://www.google.com" icon={icon} iconPosition="before">
210
+ Test
211
+ </DxcLink>
212
+ </HalstackProvider>
213
+ </ExampleContainer>
214
+ <ExampleContainer>
215
+ <Title title="Disabled" theme="light" level={4} />
216
+ <HalstackProvider theme={opinionatedTheme}>
217
+ <DxcLink disabled>Test</DxcLink>
218
+ </HalstackProvider>
219
+ </ExampleContainer>
220
+ <ExampleContainer>
221
+ <Title title="Icon after" theme="light" level={4} />{" "}
222
+ <HalstackProvider theme={opinionatedTheme}>
223
+ <DxcLink onClick={() => {}} icon={icon} iconPosition="after">
224
+ Test
225
+ </DxcLink>
226
+ </HalstackProvider>
227
+ </ExampleContainer>
228
+ <ExampleContainer pseudoState="pseudo-hover">
229
+ <Title title="With link hovered" theme="light" level={4} />
230
+ <HalstackProvider theme={opinionatedTheme}>
231
+ <DxcLink onClick={() => {}}>Test</DxcLink>
232
+ </HalstackProvider>
233
+ </ExampleContainer>
234
+ <ExampleContainer pseudoState="pseudo-focus">
235
+ <Title title="With link focused" theme="light" level={4} />
236
+ <HalstackProvider theme={opinionatedTheme}>
237
+ <DxcLink onClick={() => {}}>Test</DxcLink>
238
+ </HalstackProvider>
239
+ </ExampleContainer>
240
+ <ExampleContainer pseudoState="pseudo-active">
241
+ <Title title="With link active" theme="light" level={4} />
242
+ <HalstackProvider theme={opinionatedTheme}>
243
+ <DxcLink onClick={() => {}}>Test</DxcLink>
244
+ </HalstackProvider>
245
+ </ExampleContainer>
246
+ <ExampleContainer pseudoState="pseudo-visited">
247
+ <HalstackProvider theme={opinionatedTheme}>
248
+ <Title title="With link visited" theme="light" level={4} />
249
+ <DxcLink href="https://www.google.com">Test</DxcLink>
250
+ </HalstackProvider>
251
+ </ExampleContainer>
252
+ </>
253
+ );
@@ -0,0 +1,83 @@
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 _Link = _interopRequireDefault(require("./Link"));
10
+
11
+ describe("Link component tests", function () {
12
+ test("Link renders with correct text", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], null, "Link")),
14
+ getByText = _render.getByText;
15
+
16
+ expect(getByText("Link")).toBeTruthy();
17
+ });
18
+ test("Link renders with correct href", function () {
19
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
20
+ href: "/testPage"
21
+ }, "Link")),
22
+ getByRole = _render2.getByRole;
23
+
24
+ expect(getByRole("link").getAttribute("href")).toEqual("/testPage");
25
+ });
26
+ test("Link renders with correct disabled state", function () {
27
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
28
+ href: "/testPage",
29
+ disabled: true
30
+ }, "Link")),
31
+ getByText = _render3.getByText;
32
+
33
+ expect(getByText("Link").hasAttribute("href")).toBeFalsy();
34
+
35
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
36
+ onClick: function onClick() {
37
+ return console.log("Andorra");
38
+ },
39
+ disabled: true
40
+ }, "LinkButton")),
41
+ getByTextLinkButton = _render4.getByText;
42
+
43
+ expect(getByTextLinkButton("LinkButton").hasAttribute("onclick")).toBeFalsy();
44
+ });
45
+ test("Link open new tab", function () {
46
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
47
+ href: "/testPage",
48
+ newWindow: true
49
+ }, "Link")),
50
+ getByRole = _render5.getByRole;
51
+
52
+ expect(getByRole("link").getAttribute("target")).toEqual("_blank");
53
+ });
54
+ test("Link onClick called", function () {
55
+ var onClick = jest.fn();
56
+
57
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
58
+ onClick: onClick
59
+ }, "Link")),
60
+ getByText = _render6.getByText;
61
+
62
+ var link = getByText("Link");
63
+
64
+ _react2.fireEvent.click(link);
65
+
66
+ expect(onClick).toHaveBeenCalled();
67
+ });
68
+ test("Disabled link onClick not called", function () {
69
+ var onClick = jest.fn();
70
+
71
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
72
+ onClick: onClick,
73
+ disabled: true
74
+ }, "Link")),
75
+ getByText = _render7.getByText;
76
+
77
+ var link = getByText("Link");
78
+
79
+ _react2.fireEvent.click(link);
80
+
81
+ expect(onClick).toHaveBeenCalledTimes(0);
82
+ });
83
+ });