@dxc-technology/halstack-react 0.0.0-0b14645 → 0.0.0-0b2a880

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 (485) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +6 -26
  3. package/HalstackContext.d.ts +1248 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +106 -224
  9. package/accordion/Accordion.stories.tsx +251 -0
  10. package/accordion/Accordion.test.js +56 -0
  11. package/accordion/types.d.ts +57 -0
  12. package/accordion/types.js +5 -0
  13. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  14. package/accordion-group/AccordionGroup.d.ts +7 -0
  15. package/accordion-group/AccordionGroup.js +52 -135
  16. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  17. package/accordion-group/AccordionGroup.test.js +98 -0
  18. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  19. package/accordion-group/AccordionGroupAccordion.js +31 -0
  20. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  21. package/accordion-group/AccordionGroupContext.js +8 -0
  22. package/accordion-group/types.d.ts +67 -0
  23. package/accordion-group/types.js +5 -0
  24. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  25. package/action-icon/ActionIcon.d.ts +4 -0
  26. package/action-icon/ActionIcon.js +48 -0
  27. package/action-icon/ActionIcon.stories.tsx +41 -0
  28. package/action-icon/ActionIcon.test.js +64 -0
  29. package/action-icon/types.d.ts +26 -0
  30. package/action-icon/types.js +5 -0
  31. package/alert/Alert.accessibility.test.js +95 -0
  32. package/alert/Alert.d.ts +4 -0
  33. package/alert/Alert.js +36 -145
  34. package/alert/Alert.stories.tsx +198 -0
  35. package/alert/Alert.test.js +75 -0
  36. package/alert/types.d.ts +49 -0
  37. package/alert/types.js +5 -0
  38. package/badge/Badge.accessibility.test.js +129 -0
  39. package/badge/Badge.d.ts +4 -0
  40. package/badge/Badge.js +142 -40
  41. package/badge/Badge.stories.tsx +210 -0
  42. package/badge/Badge.test.js +30 -0
  43. package/badge/types.d.ts +54 -0
  44. package/badge/types.js +5 -0
  45. package/bleed/Bleed.d.ts +3 -0
  46. package/bleed/Bleed.js +43 -0
  47. package/bleed/Bleed.stories.tsx +342 -0
  48. package/bleed/types.d.ts +37 -0
  49. package/bleed/types.js +5 -0
  50. package/box/Box.accessibility.test.js +33 -0
  51. package/box/Box.d.ts +4 -0
  52. package/box/Box.js +32 -109
  53. package/box/Box.stories.tsx +119 -0
  54. package/box/Box.test.js +13 -0
  55. package/box/types.d.ts +32 -0
  56. package/box/types.js +5 -0
  57. package/bulleted-list/BulletedList.accessibility.test.js +107 -0
  58. package/bulleted-list/BulletedList.d.ts +7 -0
  59. package/bulleted-list/BulletedList.js +92 -0
  60. package/bulleted-list/BulletedList.stories.tsx +115 -0
  61. package/bulleted-list/types.d.ts +38 -0
  62. package/bulleted-list/types.js +5 -0
  63. package/button/Button.accessibility.test.js +127 -0
  64. package/button/Button.d.ts +1 -1
  65. package/button/Button.js +65 -126
  66. package/button/Button.stories.tsx +313 -294
  67. package/button/Button.test.js +38 -0
  68. package/button/types.d.ts +18 -18
  69. package/card/Card.accessibility.test.js +36 -0
  70. package/card/Card.d.ts +4 -0
  71. package/card/Card.js +59 -139
  72. package/card/Card.stories.tsx +171 -0
  73. package/card/Card.test.js +39 -0
  74. package/card/types.d.ts +62 -0
  75. package/card/types.js +5 -0
  76. package/checkbox/Checkbox.accessibility.test.js +87 -0
  77. package/checkbox/Checkbox.d.ts +2 -2
  78. package/checkbox/Checkbox.js +145 -183
  79. package/checkbox/Checkbox.stories.tsx +222 -0
  80. package/checkbox/Checkbox.test.js +199 -0
  81. package/checkbox/types.d.ts +20 -9
  82. package/chip/Chip.accessibility.test.js +67 -0
  83. package/chip/Chip.d.ts +4 -0
  84. package/chip/Chip.js +49 -146
  85. package/chip/Chip.stories.tsx +195 -0
  86. package/chip/Chip.test.js +41 -0
  87. package/chip/types.d.ts +45 -0
  88. package/chip/types.js +5 -0
  89. package/common/coreTokens.d.ts +237 -0
  90. package/common/coreTokens.js +184 -0
  91. package/common/utils.d.ts +1 -0
  92. package/common/utils.js +6 -12
  93. package/common/variables.d.ts +1394 -0
  94. package/common/variables.js +1035 -1338
  95. package/container/Container.d.ts +4 -0
  96. package/container/Container.js +194 -0
  97. package/container/Container.stories.tsx +214 -0
  98. package/container/types.d.ts +74 -0
  99. package/container/types.js +5 -0
  100. package/contextual-menu/ContextualMenu.accessibility.test.js +86 -0
  101. package/contextual-menu/ContextualMenu.d.ts +5 -0
  102. package/contextual-menu/ContextualMenu.js +88 -0
  103. package/contextual-menu/ContextualMenu.stories.tsx +219 -0
  104. package/contextual-menu/ContextualMenu.test.js +205 -0
  105. package/contextual-menu/GroupItem.d.ts +4 -0
  106. package/contextual-menu/GroupItem.js +67 -0
  107. package/contextual-menu/ItemAction.d.ts +4 -0
  108. package/contextual-menu/ItemAction.js +52 -0
  109. package/contextual-menu/MenuItem.d.ts +4 -0
  110. package/contextual-menu/MenuItem.js +29 -0
  111. package/contextual-menu/SingleItem.d.ts +4 -0
  112. package/contextual-menu/SingleItem.js +38 -0
  113. package/contextual-menu/types.d.ts +58 -0
  114. package/contextual-menu/types.js +5 -0
  115. package/date-input/Calendar.d.ts +4 -0
  116. package/date-input/Calendar.js +214 -0
  117. package/date-input/DateInput.accessibility.test.js +216 -0
  118. package/date-input/DateInput.d.ts +4 -0
  119. package/date-input/DateInput.js +174 -348
  120. package/date-input/DateInput.stories.tsx +285 -0
  121. package/date-input/DateInput.test.js +808 -0
  122. package/date-input/DatePicker.d.ts +4 -0
  123. package/date-input/DatePicker.js +121 -0
  124. package/date-input/YearPicker.d.ts +4 -0
  125. package/date-input/YearPicker.js +100 -0
  126. package/date-input/types.d.ts +164 -0
  127. package/date-input/types.js +5 -0
  128. package/dialog/Dialog.accessibility.test.js +69 -0
  129. package/dialog/Dialog.d.ts +4 -0
  130. package/dialog/Dialog.js +57 -149
  131. package/dialog/Dialog.stories.tsx +365 -0
  132. package/dialog/Dialog.test.js +307 -0
  133. package/dialog/types.d.ts +36 -0
  134. package/dialog/types.js +5 -0
  135. package/divider/Divider.accessibility.test.js +33 -0
  136. package/divider/Divider.d.ts +4 -0
  137. package/divider/Divider.js +36 -0
  138. package/divider/Divider.stories.tsx +223 -0
  139. package/divider/Divider.test.js +38 -0
  140. package/divider/types.d.ts +21 -0
  141. package/divider/types.js +5 -0
  142. package/dropdown/Dropdown.accessibility.test.js +180 -0
  143. package/dropdown/Dropdown.d.ts +4 -0
  144. package/dropdown/Dropdown.js +233 -364
  145. package/dropdown/Dropdown.stories.tsx +427 -0
  146. package/dropdown/Dropdown.test.js +599 -0
  147. package/dropdown/DropdownMenu.d.ts +4 -0
  148. package/dropdown/DropdownMenu.js +63 -0
  149. package/dropdown/DropdownMenuItem.d.ts +4 -0
  150. package/dropdown/DropdownMenuItem.js +70 -0
  151. package/dropdown/types.d.ts +96 -0
  152. package/dropdown/types.js +5 -0
  153. package/file-input/FileInput.accessibility.test.js +160 -0
  154. package/file-input/FileInput.d.ts +4 -0
  155. package/file-input/FileInput.js +274 -363
  156. package/file-input/FileInput.stories.tsx +618 -0
  157. package/file-input/FileInput.test.js +382 -0
  158. package/file-input/FileItem.d.ts +4 -0
  159. package/file-input/FileItem.js +61 -133
  160. package/file-input/types.d.ts +129 -0
  161. package/file-input/types.js +5 -0
  162. package/flex/Flex.d.ts +4 -0
  163. package/flex/Flex.js +57 -0
  164. package/flex/Flex.stories.tsx +112 -0
  165. package/flex/types.d.ts +97 -0
  166. package/flex/types.js +5 -0
  167. package/footer/Footer.accessibility.test.js +117 -0
  168. package/footer/Footer.d.ts +4 -0
  169. package/footer/Footer.js +75 -232
  170. package/footer/Footer.stories.tsx +196 -0
  171. package/footer/Footer.test.js +85 -0
  172. package/footer/Icons.d.ts +3 -0
  173. package/footer/Icons.js +67 -8
  174. package/footer/types.d.ts +64 -0
  175. package/footer/types.js +5 -0
  176. package/grid/Grid.d.ts +7 -0
  177. package/grid/Grid.js +76 -0
  178. package/grid/Grid.stories.tsx +219 -0
  179. package/grid/types.d.ts +115 -0
  180. package/grid/types.js +5 -0
  181. package/header/Header.accessibility.test.js +84 -0
  182. package/header/Header.d.ts +8 -0
  183. package/header/Header.js +104 -221
  184. package/header/Header.stories.tsx +251 -0
  185. package/header/Header.test.js +66 -0
  186. package/header/Icons.d.ts +2 -0
  187. package/header/Icons.js +5 -35
  188. package/header/types.d.ts +33 -0
  189. package/header/types.js +5 -0
  190. package/heading/Heading.accessibility.test.js +33 -0
  191. package/heading/Heading.d.ts +4 -0
  192. package/heading/Heading.js +16 -55
  193. package/heading/Heading.stories.tsx +54 -0
  194. package/heading/Heading.test.js +169 -0
  195. package/heading/types.d.ts +33 -0
  196. package/heading/types.js +5 -0
  197. package/icon/Icon.accessibility.test.js +30 -0
  198. package/icon/Icon.d.ts +4 -0
  199. package/icon/Icon.js +33 -0
  200. package/icon/Icon.stories.tsx +28 -0
  201. package/icon/types.d.ts +4 -0
  202. package/icon/types.js +5 -0
  203. package/image/Image.accessibility.test.js +56 -0
  204. package/image/Image.d.ts +4 -0
  205. package/image/Image.js +70 -0
  206. package/image/Image.stories.tsx +129 -0
  207. package/image/types.d.ts +72 -0
  208. package/image/types.js +5 -0
  209. package/inset/Inset.d.ts +3 -0
  210. package/inset/Inset.js +43 -0
  211. package/inset/Inset.stories.tsx +230 -0
  212. package/inset/types.d.ts +37 -0
  213. package/inset/types.js +5 -0
  214. package/layout/ApplicationLayout.d.ts +20 -0
  215. package/layout/ApplicationLayout.js +86 -184
  216. package/layout/ApplicationLayout.stories.tsx +162 -0
  217. package/layout/Icons.d.ts +7 -0
  218. package/layout/Icons.js +41 -48
  219. package/layout/types.d.ts +41 -0
  220. package/layout/types.js +5 -0
  221. package/link/Link.accessibility.test.js +112 -0
  222. package/link/Link.d.ts +4 -0
  223. package/link/Link.js +65 -131
  224. package/link/Link.stories.tsx +253 -0
  225. package/link/Link.test.js +63 -0
  226. package/link/types.d.ts +54 -0
  227. package/link/types.js +5 -0
  228. package/main.d.ts +19 -14
  229. package/main.js +92 -98
  230. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  231. package/nav-tabs/NavTabs.d.ts +7 -0
  232. package/nav-tabs/NavTabs.js +93 -0
  233. package/nav-tabs/NavTabs.stories.tsx +279 -0
  234. package/nav-tabs/NavTabs.test.js +75 -0
  235. package/nav-tabs/NavTabsContext.d.ts +3 -0
  236. package/nav-tabs/NavTabsContext.js +8 -0
  237. package/nav-tabs/Tab.d.ts +4 -0
  238. package/nav-tabs/Tab.js +117 -0
  239. package/nav-tabs/types.d.ts +52 -0
  240. package/nav-tabs/types.js +5 -0
  241. package/number-input/NumberInput.accessibility.test.js +228 -0
  242. package/number-input/NumberInput.d.ts +4 -0
  243. package/number-input/NumberInput.js +48 -90
  244. package/number-input/NumberInput.stories.tsx +131 -0
  245. package/number-input/NumberInput.test.js +989 -0
  246. package/number-input/NumberInputContext.d.ts +3 -0
  247. package/number-input/NumberInputContext.js +3 -11
  248. package/number-input/types.d.ts +136 -0
  249. package/number-input/types.js +5 -0
  250. package/package.json +52 -51
  251. package/paginator/Paginator.accessibility.test.js +79 -0
  252. package/paginator/Paginator.js +39 -103
  253. package/paginator/Paginator.stories.tsx +87 -0
  254. package/paginator/Paginator.test.js +335 -0
  255. package/paginator/types.d.ts +3 -3
  256. package/paragraph/Paragraph.accessibility.test.js +28 -0
  257. package/paragraph/Paragraph.d.ts +5 -0
  258. package/paragraph/Paragraph.js +22 -0
  259. package/paragraph/Paragraph.stories.tsx +27 -0
  260. package/password-input/PasswordInput.accessibility.test.js +153 -0
  261. package/password-input/PasswordInput.d.ts +4 -0
  262. package/password-input/PasswordInput.js +59 -162
  263. package/password-input/PasswordInput.stories.tsx +99 -0
  264. package/password-input/PasswordInput.test.js +198 -0
  265. package/password-input/types.d.ts +111 -0
  266. package/password-input/types.js +5 -0
  267. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  268. package/progress-bar/ProgressBar.d.ts +4 -0
  269. package/progress-bar/ProgressBar.js +67 -111
  270. package/progress-bar/ProgressBar.stories.tsx +93 -0
  271. package/progress-bar/ProgressBar.test.js +93 -0
  272. package/progress-bar/types.d.ts +37 -0
  273. package/progress-bar/types.js +5 -0
  274. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  275. package/quick-nav/QuickNav.d.ts +4 -0
  276. package/quick-nav/QuickNav.js +94 -0
  277. package/quick-nav/QuickNav.stories.tsx +356 -0
  278. package/quick-nav/types.d.ts +21 -0
  279. package/quick-nav/types.js +5 -0
  280. package/radio-group/Radio.d.ts +4 -0
  281. package/radio-group/Radio.js +124 -0
  282. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  283. package/radio-group/RadioGroup.d.ts +4 -0
  284. package/radio-group/RadioGroup.js +235 -0
  285. package/radio-group/RadioGroup.stories.tsx +214 -0
  286. package/radio-group/RadioGroup.test.js +756 -0
  287. package/radio-group/types.d.ts +114 -0
  288. package/radio-group/types.js +5 -0
  289. package/resultset-table/Icons.d.ts +7 -0
  290. package/resultset-table/Icons.js +47 -0
  291. package/resultset-table/ResultsetTable.accessibility.test.js +274 -0
  292. package/resultset-table/ResultsetTable.d.ts +7 -0
  293. package/resultset-table/ResultsetTable.js +170 -0
  294. package/resultset-table/ResultsetTable.stories.tsx +401 -0
  295. package/resultset-table/ResultsetTable.test.js +381 -0
  296. package/resultset-table/types.d.ts +100 -0
  297. package/resultset-table/types.js +5 -0
  298. package/select/Listbox.d.ts +4 -0
  299. package/select/Listbox.js +145 -0
  300. package/select/Option.d.ts +4 -0
  301. package/select/Option.js +88 -0
  302. package/select/Select.accessibility.test.js +217 -0
  303. package/select/Select.d.ts +4 -0
  304. package/select/Select.js +248 -515
  305. package/select/Select.stories.tsx +907 -0
  306. package/select/Select.test.js +2276 -0
  307. package/select/types.d.ts +209 -0
  308. package/select/types.js +5 -0
  309. package/sidenav/Sidenav.accessibility.test.js +59 -0
  310. package/sidenav/Sidenav.d.ts +10 -0
  311. package/sidenav/Sidenav.js +137 -81
  312. package/sidenav/Sidenav.stories.tsx +277 -0
  313. package/sidenav/Sidenav.test.js +37 -0
  314. package/sidenav/SidenavContext.d.ts +5 -0
  315. package/sidenav/SidenavContext.js +13 -0
  316. package/sidenav/types.d.ts +76 -0
  317. package/sidenav/types.js +5 -0
  318. package/slider/Slider.accessibility.test.js +104 -0
  319. package/slider/Slider.d.ts +4 -0
  320. package/slider/Slider.js +165 -220
  321. package/slider/Slider.test.js +254 -0
  322. package/slider/types.d.ts +86 -0
  323. package/slider/types.js +5 -0
  324. package/spinner/Spinner.accessibility.test.js +96 -0
  325. package/spinner/Spinner.d.ts +4 -0
  326. package/spinner/Spinner.js +38 -99
  327. package/spinner/Spinner.stories.tsx +129 -0
  328. package/spinner/Spinner.test.js +55 -0
  329. package/spinner/types.d.ts +32 -0
  330. package/spinner/types.js +5 -0
  331. package/status-light/StatusLight.accessibility.test.js +157 -0
  332. package/status-light/StatusLight.d.ts +4 -0
  333. package/status-light/StatusLight.js +51 -0
  334. package/status-light/StatusLight.stories.tsx +74 -0
  335. package/status-light/StatusLight.test.js +25 -0
  336. package/status-light/types.d.ts +17 -0
  337. package/status-light/types.js +5 -0
  338. package/switch/Switch.accessibility.test.js +89 -0
  339. package/switch/Switch.d.ts +4 -0
  340. package/switch/Switch.js +150 -144
  341. package/switch/Switch.stories.tsx +137 -0
  342. package/switch/Switch.test.js +180 -0
  343. package/switch/types.d.ts +66 -0
  344. package/switch/types.js +5 -0
  345. package/table/DropdownTheme.js +62 -0
  346. package/table/Table.accessibility.test.js +82 -0
  347. package/table/Table.d.ts +8 -0
  348. package/table/Table.js +80 -37
  349. package/table/Table.stories.tsx +651 -0
  350. package/table/Table.test.js +113 -0
  351. package/table/types.d.ts +49 -0
  352. package/table/types.js +5 -0
  353. package/tabs/Tab.d.ts +4 -0
  354. package/tabs/Tab.js +117 -0
  355. package/tabs/Tabs.accessibility.test.js +56 -0
  356. package/tabs/Tabs.d.ts +4 -0
  357. package/tabs/Tabs.js +308 -194
  358. package/tabs/Tabs.stories.tsx +224 -0
  359. package/tabs/Tabs.test.js +276 -0
  360. package/tabs/types.d.ts +92 -0
  361. package/tabs/types.js +5 -0
  362. package/tag/Tag.accessibility.test.js +69 -0
  363. package/tag/Tag.d.ts +4 -0
  364. package/tag/Tag.js +55 -112
  365. package/tag/Tag.stories.tsx +152 -0
  366. package/tag/Tag.test.js +41 -0
  367. package/tag/types.d.ts +69 -0
  368. package/tag/types.js +5 -0
  369. package/text-input/Suggestion.d.ts +4 -0
  370. package/text-input/Suggestion.js +67 -0
  371. package/text-input/Suggestions.d.ts +4 -0
  372. package/text-input/Suggestions.js +86 -0
  373. package/text-input/TextInput.accessibility.test.js +321 -0
  374. package/text-input/TextInput.d.ts +4 -0
  375. package/text-input/TextInput.js +335 -593
  376. package/text-input/TextInput.stories.tsx +465 -0
  377. package/text-input/TextInput.test.js +1756 -0
  378. package/text-input/types.d.ts +205 -0
  379. package/text-input/types.js +5 -0
  380. package/textarea/Textarea.accessibility.test.js +155 -0
  381. package/textarea/Textarea.d.ts +4 -0
  382. package/textarea/Textarea.js +98 -181
  383. package/textarea/Textarea.stories.tsx +174 -0
  384. package/textarea/Textarea.test.js +406 -0
  385. package/textarea/types.d.ts +141 -0
  386. package/textarea/types.js +5 -0
  387. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  388. package/toggle-group/ToggleGroup.d.ts +4 -0
  389. package/toggle-group/ToggleGroup.js +101 -142
  390. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  391. package/toggle-group/ToggleGroup.test.js +137 -0
  392. package/toggle-group/types.d.ts +114 -0
  393. package/toggle-group/types.js +5 -0
  394. package/typography/Typography.accessibility.test.js +339 -0
  395. package/typography/Typography.d.ts +4 -0
  396. package/typography/Typography.js +23 -0
  397. package/typography/Typography.stories.tsx +198 -0
  398. package/typography/types.d.ts +18 -0
  399. package/typography/types.js +5 -0
  400. package/useTheme.d.ts +1147 -0
  401. package/useTheme.js +4 -11
  402. package/useTranslatedLabels.d.ts +85 -0
  403. package/useTranslatedLabels.js +14 -0
  404. package/utils/BaseTypography.d.ts +21 -0
  405. package/utils/BaseTypography.js +94 -0
  406. package/utils/FocusLock.d.ts +13 -0
  407. package/utils/FocusLock.js +124 -0
  408. package/wizard/Wizard.accessibility.test.js +55 -0
  409. package/wizard/Wizard.d.ts +4 -0
  410. package/wizard/Wizard.js +130 -154
  411. package/wizard/Wizard.stories.tsx +272 -0
  412. package/wizard/Wizard.test.js +114 -0
  413. package/wizard/types.d.ts +64 -0
  414. package/wizard/types.js +5 -0
  415. package/ThemeContext.js +0 -246
  416. package/V3Select/V3Select.js +0 -455
  417. package/V3Select/index.d.ts +0 -27
  418. package/V3Textarea/V3Textarea.js +0 -260
  419. package/V3Textarea/index.d.ts +0 -27
  420. package/accordion/index.d.ts +0 -28
  421. package/accordion-group/index.d.ts +0 -16
  422. package/alert/index.d.ts +0 -51
  423. package/box/index.d.ts +0 -25
  424. package/card/index.d.ts +0 -22
  425. package/chip/index.d.ts +0 -22
  426. package/common/OpenSans.css +0 -81
  427. package/common/RequiredComponent.js +0 -32
  428. package/common/fonts/OpenSans-Bold.ttf +0 -0
  429. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  430. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  431. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  432. package/common/fonts/OpenSans-Italic.ttf +0 -0
  433. package/common/fonts/OpenSans-Light.ttf +0 -0
  434. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  435. package/common/fonts/OpenSans-Regular.ttf +0 -0
  436. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  437. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  438. package/date/Date.js +0 -373
  439. package/date/index.d.ts +0 -27
  440. package/date-input/index.d.ts +0 -95
  441. package/dialog/index.d.ts +0 -18
  442. package/dropdown/index.d.ts +0 -26
  443. package/file-input/index.d.ts +0 -81
  444. package/footer/index.d.ts +0 -25
  445. package/header/index.d.ts +0 -25
  446. package/heading/index.d.ts +0 -17
  447. package/input-text/Icons.js +0 -22
  448. package/input-text/InputText.js +0 -611
  449. package/input-text/index.d.ts +0 -36
  450. package/link/index.d.ts +0 -23
  451. package/number-input/index.d.ts +0 -113
  452. package/paginator/Icons.js +0 -66
  453. package/password-input/index.d.ts +0 -94
  454. package/progress-bar/index.d.ts +0 -18
  455. package/radio/Radio.js +0 -195
  456. package/radio/index.d.ts +0 -23
  457. package/resultsetTable/ResultsetTable.js +0 -274
  458. package/resultsetTable/index.d.ts +0 -19
  459. package/select/index.d.ts +0 -131
  460. package/sidenav/index.d.ts +0 -13
  461. package/slider/index.d.ts +0 -29
  462. package/spinner/index.d.ts +0 -17
  463. package/switch/index.d.ts +0 -24
  464. package/table/index.d.ts +0 -13
  465. package/tabs/index.d.ts +0 -19
  466. package/tag/index.d.ts +0 -24
  467. package/text-input/index.d.ts +0 -135
  468. package/textarea/index.d.ts +0 -117
  469. package/toggle/Toggle.js +0 -186
  470. package/toggle/index.d.ts +0 -21
  471. package/toggle-group/index.d.ts +0 -21
  472. package/upload/Upload.js +0 -201
  473. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  474. package/upload/buttons-upload/Icons.js +0 -40
  475. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  476. package/upload/dragAndDropArea/Icons.js +0 -39
  477. package/upload/file-upload/FileToUpload.js +0 -115
  478. package/upload/file-upload/Icons.js +0 -66
  479. package/upload/files-upload/FilesToUpload.js +0 -109
  480. package/upload/index.d.ts +0 -15
  481. package/upload/transaction/Icons.js +0 -160
  482. package/upload/transaction/Transaction.js +0 -104
  483. package/upload/transactions/Transactions.js +0 -94
  484. package/wizard/Icons.js +0 -65
  485. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _jestAxe = require("jest-axe");
9
+ var _Link = _interopRequireDefault(require("./Link.tsx"));
10
+ var _Flex = _interopRequireDefault(require("../flex/Flex.tsx"));
11
+ var icon = /*#__PURE__*/_react["default"].createElement("svg", {
12
+ viewBox: "0 0 24 24",
13
+ enableBackground: "new 0 0 24 24",
14
+ fill: "currentColor"
15
+ }, /*#__PURE__*/_react["default"].createElement("g", {
16
+ id: "Bounding_Box"
17
+ }, /*#__PURE__*/_react["default"].createElement("rect", {
18
+ fill: "none",
19
+ width: "24",
20
+ height: "24"
21
+ })), /*#__PURE__*/_react["default"].createElement("g", {
22
+ id: "Master"
23
+ }, /*#__PURE__*/_react["default"].createElement("path", {
24
+ 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"
25
+ })));
26
+ describe("Link component accessibility tests", function () {
27
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
28
+ var _render, container, results;
29
+ return _regenerator["default"].wrap(function _callee$(_context) {
30
+ while (1) switch (_context.prev = _context.next) {
31
+ case 0:
32
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
33
+ href: "https://www.google.com",
34
+ icon: icon,
35
+ iconPosition: "before",
36
+ margin: "medium"
37
+ }, "Link"), /*#__PURE__*/_react["default"].createElement(_Link["default"], {
38
+ href: "https://www.google.com",
39
+ icon: icon,
40
+ iconPosition: "after",
41
+ margin: "medium"
42
+ }, "Link"))), container = _render.container;
43
+ _context.next = 3;
44
+ return (0, _jestAxe.axe)(container);
45
+ case 3:
46
+ results = _context.sent;
47
+ expect(results).toHaveNoViolations();
48
+ case 5:
49
+ case "end":
50
+ return _context.stop();
51
+ }
52
+ }, _callee);
53
+ })));
54
+ it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
55
+ var _render2, container, results;
56
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
57
+ while (1) switch (_context2.prev = _context2.next) {
58
+ case 0:
59
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
60
+ href: "https://www.google.com",
61
+ icon: icon,
62
+ iconPosition: "before",
63
+ margin: "medium",
64
+ disabled: true
65
+ }, "Link"), /*#__PURE__*/_react["default"].createElement(_Link["default"], {
66
+ href: "https://www.google.com",
67
+ icon: icon,
68
+ iconPosition: "after",
69
+ margin: "medium",
70
+ disabled: true
71
+ }, "Link"))), container = _render2.container;
72
+ _context2.next = 3;
73
+ return (0, _jestAxe.axe)(container);
74
+ case 3:
75
+ results = _context2.sent;
76
+ expect(results).toHaveNoViolations();
77
+ case 5:
78
+ case "end":
79
+ return _context2.stop();
80
+ }
81
+ }, _callee2);
82
+ })));
83
+ it("Should not have basic accessibility issues for new-window mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
84
+ var _render3, container, results;
85
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
86
+ while (1) switch (_context3.prev = _context3.next) {
87
+ case 0:
88
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
89
+ href: "https://www.google.com",
90
+ icon: icon,
91
+ iconPosition: "before",
92
+ margin: "medium",
93
+ newWindow: true
94
+ }, "Link"), /*#__PURE__*/_react["default"].createElement(_Link["default"], {
95
+ href: "https://www.google.com",
96
+ icon: icon,
97
+ iconPosition: "after",
98
+ margin: "medium",
99
+ newWindow: true
100
+ }, "Link"))), container = _render3.container;
101
+ _context3.next = 3;
102
+ return (0, _jestAxe.axe)(container);
103
+ case 3:
104
+ results = _context3.sent;
105
+ expect(results).toHaveNoViolations();
106
+ case 5:
107
+ case "end":
108
+ return _context3.stop();
109
+ }
110
+ }, _callee3);
111
+ })));
112
+ });
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 CHANGED
@@ -1,87 +1,72 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
- var _react = _interopRequireDefault(require("react"));
19
-
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+ var _react = _interopRequireWildcard(require("react"));
20
14
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _propTypes = _interopRequireDefault(require("prop-types"));
23
-
24
- var _variables = require("../common/variables.js");
25
-
26
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
-
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
29
-
30
- 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); }
31
-
32
- 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; }
33
-
34
- var DxcLink = function DxcLink(_ref) {
35
- var _ref$inheritColor = _ref.inheritColor,
36
- inheritColor = _ref$inheritColor === void 0 ? false : _ref$inheritColor,
37
- _ref$disabled = _ref.disabled,
38
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
39
- iconSrc = _ref.iconSrc,
40
- icon = _ref.icon,
41
- _ref$iconPosition = _ref.iconPosition,
42
- iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
43
- _ref$href = _ref.href,
44
- href = _ref$href === void 0 ? "" : _ref$href,
45
- _ref$newWindow = _ref.newWindow,
46
- newWindow = _ref$newWindow === void 0 ? false : _ref$newWindow,
47
- onClick = _ref.onClick,
48
- _ref$text = _ref.text,
49
- text = _ref$text === void 0 ? "" : _ref$text,
50
- margin = _ref.margin,
51
- _ref$tabIndex = _ref.tabIndex,
52
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
53
- var colorsTheme = (0, _useTheme["default"])();
54
-
55
- var linkContent = /*#__PURE__*/_react["default"].createElement(LinkText, {
56
- iconPosition: iconPosition
57
- }, text, icon ? /*#__PURE__*/_react["default"].createElement(LinkIconContainer, {
58
- iconPosition: iconPosition
59
- }, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : iconSrc && /*#__PURE__*/_react["default"].createElement(LinkIcon, {
60
- src: iconSrc,
15
+ var _variables = require("../common/variables");
16
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
17
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
18
+ var _templateObject, _templateObject2;
19
+ var _excluded = ["inheritColor", "disabled", "icon", "iconPosition", "href", "newWindow", "onClick", "margin", "tabIndex", "children"];
20
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
22
+ var LinkContent = /*#__PURE__*/_react["default"].memo(function (_ref) {
23
+ var iconPosition = _ref.iconPosition,
24
+ icon = _ref.icon,
25
+ children = _ref.children;
26
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, iconPosition === "after" && children, icon && /*#__PURE__*/_react["default"].createElement(LinkIconContainer, {
61
27
  iconPosition: iconPosition
62
- }));
63
-
28
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
29
+ icon: icon
30
+ }) : icon), iconPosition === "before" && children);
31
+ });
32
+ var DxcLink = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
33
+ var _ref2$inheritColor = _ref2.inheritColor,
34
+ inheritColor = _ref2$inheritColor === void 0 ? false : _ref2$inheritColor,
35
+ _ref2$disabled = _ref2.disabled,
36
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
37
+ icon = _ref2.icon,
38
+ _ref2$iconPosition = _ref2.iconPosition,
39
+ iconPosition = _ref2$iconPosition === void 0 ? "before" : _ref2$iconPosition,
40
+ _ref2$href = _ref2.href,
41
+ href = _ref2$href === void 0 ? "" : _ref2$href,
42
+ _ref2$newWindow = _ref2.newWindow,
43
+ newWindow = _ref2$newWindow === void 0 ? false : _ref2$newWindow,
44
+ onClick = _ref2.onClick,
45
+ margin = _ref2.margin,
46
+ _ref2$tabIndex = _ref2.tabIndex,
47
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex,
48
+ children = _ref2.children,
49
+ otherProps = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
50
+ var colorsTheme = (0, _useTheme["default"])();
64
51
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
65
52
  theme: colorsTheme.link
66
- }, /*#__PURE__*/_react["default"].createElement(DxcLinkContainer, {
67
- margin: margin
68
- }, onClick ? /*#__PURE__*/_react["default"].createElement(StyledButton, {
69
- type: "button",
70
- onClick: !disabled && onClick,
71
- margin: margin,
72
- disabled: disabled,
73
- inheritColor: inheritColor
74
- }, linkContent) : /*#__PURE__*/_react["default"].createElement(StyledLink, {
53
+ }, /*#__PURE__*/_react["default"].createElement(StyledLink, (0, _extends2["default"])({
54
+ as: href ? "a" : "button",
75
55
  tabIndex: tabIndex,
76
- href: !disabled && href,
77
- target: newWindow ? "_blank" : "_self",
78
- margin: margin,
56
+ onClick: !disabled ? onClick : undefined,
57
+ href: !disabled && href ? href : undefined,
58
+ target: href ? newWindow ? "_blank" : "_self" : undefined,
79
59
  disabled: disabled,
80
- inheritColor: inheritColor
81
- }, linkContent)));
82
- };
83
-
84
- var DxcLinkContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
60
+ inheritColor: inheritColor,
61
+ margin: margin,
62
+ ref: ref
63
+ }, otherProps), /*#__PURE__*/_react["default"].createElement(LinkContent, {
64
+ iconPosition: iconPosition,
65
+ icon: icon,
66
+ children: children
67
+ })));
68
+ });
69
+ var StyledLink = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: baseline;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\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 color: ", ";\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) {
85
70
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
86
71
  }, function (props) {
87
72
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -91,36 +76,26 @@ var DxcLinkContainer = _styledComponents["default"].div(_templateObject || (_tem
91
76
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
92
77
  }, function (props) {
93
78
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
94
- });
95
-
96
- var StyledLink = _styledComponents["default"].a(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n\n text-decoration-color: transparent;\n ", "\n\n &:visited {\n color: ", ";\n &:hover {\n ", "\n }\n }\n &:hover {\n ", "\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
97
- return props.inheritColor ? "inherit" : !props.disabled ? props.theme.fontColor : props.theme.disabledColor;
98
- }, function (props) {
99
- return props.disabled ? "pointer-events: none;" : "";
100
- }, function (props) {
101
- return "padding-bottom: ".concat(props.theme.underlineSpacing, ";\n border-bottom: ").concat(props.theme.underlineThickness, " ").concat(props.theme.underlineStyle, " transparent;");
102
- }, function (props) {
103
- return !props.inheritColor ? props.theme.visitedFontColor : "";
104
79
  }, function (props) {
105
- return "color: ".concat(props.theme.visitedFontColor, ";\n border-bottom-color: ").concat(props.theme.visitedUnderlineColor, ";");
80
+ return props.theme.fontSize;
106
81
  }, function (props) {
107
- return "color: ".concat(props.theme.hoverFontColor, ";\n border-bottom-color: ").concat(props.theme.hoverUnderlineColor, ";\n cursor: pointer;");
82
+ return props.theme.fontWeight;
108
83
  }, function (props) {
109
- return props.theme.focusColor;
84
+ return props.theme.fontStyle;
110
85
  }, function (props) {
111
- return props.disabled && "outline: none";
86
+ return props.theme.fontFamily;
112
87
  }, function (props) {
113
- return "color: ".concat(props.theme.activeFontColor, " !important;\n border-bottom-color: ").concat(props.theme.activeUnderlineColor, " !important;");
114
- });
115
-
116
- var StyledButton = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n font-family: inherit;\n text-decoration-color: transparent;\n\n ", "\n ", "\n color: ", ";\n ", "\n\n &:hover {\n ", "\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n outline-offset: 1px;\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
117
88
  return "padding-bottom: ".concat(props.theme.underlineSpacing, ";\n border-bottom: ").concat(props.theme.underlineThickness, " ").concat(props.theme.underlineStyle, " transparent;");
118
89
  }, function (props) {
119
90
  return props.disabled && "cursor: default;";
120
91
  }, function (props) {
121
- return props.inheritColor ? "inherit" : !props.disabled ? props.theme.fontColor : props.theme.disabledColor;
92
+ return props.inheritColor ? "inherit" : !props.disabled ? props.theme.fontColor : props.theme.disabledFontColor;
122
93
  }, function (props) {
123
94
  return props.disabled ? "pointer-events: none;" : "";
95
+ }, function (props) {
96
+ return !props.inheritColor && !props.disabled ? props.theme.visitedFontColor : "";
97
+ }, function (props) {
98
+ return "color: ".concat(props.theme.visitedFontColor, ";\n border-bottom-color: ").concat(props.theme.visitedUnderlineColor, ";");
124
99
  }, function (props) {
125
100
  return "color: ".concat(props.theme.hoverFontColor, ";\n border-bottom-color: ").concat(props.theme.hoverUnderlineColor, ";\n cursor: pointer;");
126
101
  }, function (props) {
@@ -130,54 +105,13 @@ var StyledButton = _styledComponents["default"].button(_templateObject3 || (_tem
130
105
  }, function (props) {
131
106
  return "color: ".concat(props.theme.activeFontColor, " !important;\n border-bottom-color: ").concat(props.theme.activeUnderlineColor, " !important;");
132
107
  });
133
-
134
- var LinkText = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n font-family: ", ";\n display: inline-flex;\n flex-direction: ", ";\n justify-content: ", ";\n align-items: center;\n max-width: 100%;\n"])), function (props) {
135
- return props.theme.fontSize;
136
- }, function (props) {
137
- return props.theme.fontWeight;
138
- }, function (props) {
139
- return props.theme.fontStyle;
140
- }, function (props) {
141
- return props.theme.fontFamily;
142
- }, function (props) {
143
- return props.iconPosition === "after" ? "row" : "row-reverse";
144
- }, function (props) {
145
- return props.iconPosition === "after" ? "flex-start" : "flex-end";
146
- });
147
-
148
- var LinkIcon = _styledComponents["default"].img(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", ";\n"])), function (props) {
108
+ var LinkIconContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", ";\n overflow: hidden;\n align-self: center;\n\n font-size: ", ";\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
149
109
  return props.theme.iconSize;
150
110
  }, function (props) {
151
111
  return props.theme.iconSize;
152
112
  }, function (props) {
153
113
  return "".concat(props.iconPosition === "before" ? "margin-right" : "margin-left", ": ").concat(props.theme.iconSpacing);
154
- });
155
-
156
- var LinkIconContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", ";\n overflow: hidden;\n \n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
157
- return props.theme.iconSize;
158
114
  }, function (props) {
159
115
  return props.theme.iconSize;
160
- }, function (props) {
161
- return "".concat(props.iconPosition === "before" ? "margin-right" : "margin-left", ": ").concat(props.theme.iconSpacing);
162
116
  });
163
-
164
- DxcLink.propTypes = {
165
- inheritColor: _propTypes["default"].bool,
166
- disabled: _propTypes["default"].bool,
167
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
168
- iconSrc: _propTypes["default"].string,
169
- iconPosition: _propTypes["default"].oneOf(["after", "before"]),
170
- href: _propTypes["default"].string,
171
- onClick: _propTypes["default"].func,
172
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
173
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
174
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
175
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
176
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
177
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
178
- newWindow: _propTypes["default"].bool,
179
- text: _propTypes["default"].string,
180
- tabIndex: _propTypes["default"].number
181
- };
182
- var _default = DxcLink;
183
- exports["default"] = _default;
117
+ var _default = exports["default"] = DxcLink;
@@ -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="lock" 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="filled_home">
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
+ );