@dxc-technology/halstack-react 0.0.0-b3de035 → 0.0.0-b50ba80

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 (421) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +10 -0
  4. package/HalstackContext.js +243 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +226 -0
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +168 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/{dist/alert → alert}/Alert.js +40 -153
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +59 -0
  25. package/badge/types.d.ts +4 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +84 -0
  29. package/bleed/Bleed.stories.tsx +342 -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/{dist/box → box}/Box.js +15 -45
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/{dist/button → button}/Button.js +33 -97
  40. package/button/Button.stories.tsx +274 -0
  41. package/button/Button.test.js +35 -0
  42. package/button/types.d.ts +53 -0
  43. package/button/types.js +5 -0
  44. package/card/Card.d.ts +4 -0
  45. package/card/Card.js +163 -0
  46. package/card/Card.stories.tsx +201 -0
  47. package/card/Card.test.js +50 -0
  48. package/card/ice-cream.jpg +0 -0
  49. package/card/types.d.ts +67 -0
  50. package/card/types.js +5 -0
  51. package/checkbox/Checkbox.d.ts +4 -0
  52. package/{dist/checkbox → checkbox}/Checkbox.js +50 -95
  53. package/checkbox/Checkbox.stories.tsx +188 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +161 -0
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/{dist/common → common}/OpenSans.css +0 -0
  64. package/{dist/common → common}/RequiredComponent.js +3 -11
  65. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  68. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  75. package/{dist/common → common}/utils.js +0 -0
  76. package/{dist/common → common}/variables.js +141 -339
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/{dist/date-input → date-input}/DateInput.js +77 -108
  79. package/date-input/DateInput.stories.tsx +138 -0
  80. package/date-input/DateInput.test.js +479 -0
  81. package/date-input/types.d.ts +107 -0
  82. package/date-input/types.js +5 -0
  83. package/dialog/Dialog.d.ts +4 -0
  84. package/dialog/Dialog.js +138 -0
  85. package/dialog/Dialog.stories.tsx +212 -0
  86. package/dialog/Dialog.test.js +40 -0
  87. package/dialog/types.d.ts +43 -0
  88. package/dialog/types.js +5 -0
  89. package/dropdown/Dropdown.d.ts +4 -0
  90. package/{dist/dropdown → dropdown}/Dropdown.js +54 -207
  91. package/dropdown/Dropdown.stories.tsx +249 -0
  92. package/dropdown/Dropdown.test.js +189 -0
  93. package/dropdown/types.d.ts +80 -0
  94. package/dropdown/types.js +5 -0
  95. package/file-input/FileInput.d.ts +4 -0
  96. package/file-input/FileInput.js +590 -0
  97. package/file-input/FileInput.stories.tsx +507 -0
  98. package/file-input/FileInput.test.js +457 -0
  99. package/file-input/FileItem.d.ts +14 -0
  100. package/file-input/FileItem.js +186 -0
  101. package/file-input/types.d.ts +112 -0
  102. package/file-input/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +183 -0
  105. package/footer/Footer.stories.tsx +130 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/{dist/footer → footer}/Icons.js +15 -15
  109. package/footer/types.d.ts +65 -0
  110. package/footer/types.js +5 -0
  111. package/header/Header.d.ts +7 -0
  112. package/header/Header.js +300 -0
  113. package/header/Header.stories.tsx +172 -0
  114. package/header/Header.test.js +79 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/{dist/header → header}/Icons.js +7 -32
  117. package/header/types.d.ts +47 -0
  118. package/header/types.js +5 -0
  119. package/heading/Heading.d.ts +4 -0
  120. package/{dist/heading → heading}/Heading.js +25 -96
  121. package/heading/Heading.stories.tsx +54 -0
  122. package/heading/Heading.test.js +186 -0
  123. package/heading/types.d.ts +33 -0
  124. package/heading/types.js +5 -0
  125. package/inset/Inset.d.ts +3 -0
  126. package/inset/Inset.js +84 -0
  127. package/inset/Inset.stories.tsx +229 -0
  128. package/inset/types.d.ts +37 -0
  129. package/inset/types.js +5 -0
  130. package/layout/ApplicationLayout.d.ts +10 -0
  131. package/layout/ApplicationLayout.js +218 -0
  132. package/layout/ApplicationLayout.stories.tsx +171 -0
  133. package/{dist/layout → layout}/Icons.js +7 -7
  134. package/layout/types.d.ts +57 -0
  135. package/layout/types.js +5 -0
  136. package/link/Link.d.ts +4 -0
  137. package/link/Link.js +162 -0
  138. package/link/Link.stories.tsx +186 -0
  139. package/link/Link.test.js +83 -0
  140. package/link/types.d.ts +55 -0
  141. package/link/types.js +5 -0
  142. package/list/List.d.ts +4 -0
  143. package/list/List.js +47 -0
  144. package/list/List.stories.tsx +95 -0
  145. package/list/types.d.ts +7 -0
  146. package/list/types.js +5 -0
  147. package/main.d.ts +47 -0
  148. package/{dist/main.js → main.js} +124 -96
  149. package/number-input/NumberInput.d.ts +4 -0
  150. package/number-input/NumberInput.js +76 -0
  151. package/number-input/NumberInput.stories.tsx +115 -0
  152. package/number-input/NumberInput.test.js +506 -0
  153. package/number-input/NumberInputContext.d.ts +4 -0
  154. package/{dist/number-input → number-input}/NumberInputContext.js +5 -2
  155. package/number-input/numberInputContextTypes.d.ts +19 -0
  156. package/number-input/numberInputContextTypes.js +5 -0
  157. package/number-input/types.d.ts +124 -0
  158. package/number-input/types.js +5 -0
  159. package/package.json +34 -20
  160. package/{dist/paginator → paginator}/Icons.js +9 -9
  161. package/paginator/Paginator.d.ts +4 -0
  162. package/paginator/Paginator.js +192 -0
  163. package/paginator/Paginator.stories.tsx +63 -0
  164. package/paginator/Paginator.test.js +266 -0
  165. package/paginator/types.d.ts +38 -0
  166. package/paginator/types.js +5 -0
  167. package/password-input/PasswordInput.d.ts +4 -0
  168. package/{dist/password-input → password-input}/PasswordInput.js +37 -77
  169. package/password-input/PasswordInput.stories.tsx +131 -0
  170. package/password-input/PasswordInput.test.js +181 -0
  171. package/password-input/types.d.ts +110 -0
  172. package/password-input/types.js +5 -0
  173. package/progress-bar/ProgressBar.d.ts +4 -0
  174. package/{dist/progress-bar → progress-bar}/ProgressBar.js +22 -94
  175. package/progress-bar/ProgressBar.stories.jsx +58 -0
  176. package/progress-bar/ProgressBar.test.js +65 -0
  177. package/progress-bar/types.d.ts +37 -0
  178. package/progress-bar/types.js +5 -0
  179. package/quick-nav/QuickNav.d.ts +4 -0
  180. package/quick-nav/QuickNav.js +67 -0
  181. package/quick-nav/QuickNav.stories.tsx +237 -0
  182. package/quick-nav/types.d.ts +21 -0
  183. package/quick-nav/types.js +5 -0
  184. package/radio/Radio.d.ts +4 -0
  185. package/{dist/radio → radio}/Radio.js +23 -59
  186. package/radio/Radio.stories.tsx +192 -0
  187. package/radio/Radio.test.js +71 -0
  188. package/radio/types.d.ts +54 -0
  189. package/radio/types.js +5 -0
  190. package/radio-group/Radio.d.ts +4 -0
  191. package/radio-group/Radio.js +141 -0
  192. package/radio-group/RadioGroup.d.ts +4 -0
  193. package/radio-group/RadioGroup.js +280 -0
  194. package/radio-group/RadioGroup.stories.tsx +100 -0
  195. package/radio-group/RadioGroup.test.js +695 -0
  196. package/radio-group/types.d.ts +114 -0
  197. package/radio-group/types.js +5 -0
  198. package/resultsetTable/ResultsetTable.d.ts +4 -0
  199. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +43 -147
  200. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  201. package/resultsetTable/ResultsetTable.test.js +306 -0
  202. package/resultsetTable/types.d.ts +67 -0
  203. package/resultsetTable/types.js +5 -0
  204. package/row/Row.d.ts +3 -0
  205. package/row/Row.js +127 -0
  206. package/row/Row.stories.tsx +237 -0
  207. package/row/types.d.ts +28 -0
  208. package/row/types.js +5 -0
  209. package/select/Icons.d.ts +10 -0
  210. package/select/Icons.js +93 -0
  211. package/select/Listbox.d.ts +4 -0
  212. package/select/Listbox.js +149 -0
  213. package/select/Option.d.ts +4 -0
  214. package/select/Option.js +110 -0
  215. package/select/Select.d.ts +4 -0
  216. package/select/Select.js +655 -0
  217. package/select/Select.stories.tsx +582 -0
  218. package/select/Select.test.js +2057 -0
  219. package/select/types.d.ts +213 -0
  220. package/select/types.js +5 -0
  221. package/sidenav/Sidenav.d.ts +9 -0
  222. package/{dist/sidenav → sidenav}/Sidenav.js +21 -64
  223. package/sidenav/Sidenav.stories.tsx +182 -0
  224. package/sidenav/Sidenav.test.js +56 -0
  225. package/sidenav/types.d.ts +50 -0
  226. package/sidenav/types.js +5 -0
  227. package/slider/Slider.d.ts +4 -0
  228. package/{dist/slider → slider}/Slider.js +76 -162
  229. package/slider/Slider.stories.tsx +177 -0
  230. package/slider/Slider.test.js +150 -0
  231. package/slider/types.d.ts +82 -0
  232. package/slider/types.js +5 -0
  233. package/spinner/Spinner.d.ts +4 -0
  234. package/spinner/Spinner.js +250 -0
  235. package/spinner/Spinner.stories.jsx +103 -0
  236. package/spinner/Spinner.test.js +64 -0
  237. package/spinner/types.d.ts +32 -0
  238. package/spinner/types.js +5 -0
  239. package/stack/Stack.d.ts +3 -0
  240. package/stack/Stack.js +97 -0
  241. package/stack/Stack.stories.tsx +164 -0
  242. package/stack/types.d.ts +24 -0
  243. package/stack/types.js +5 -0
  244. package/switch/Switch.d.ts +4 -0
  245. package/switch/Switch.js +192 -0
  246. package/switch/Switch.stories.tsx +160 -0
  247. package/switch/Switch.test.js +98 -0
  248. package/switch/types.d.ts +62 -0
  249. package/switch/types.js +5 -0
  250. package/table/Table.d.ts +4 -0
  251. package/{dist/table → table}/Table.js +12 -26
  252. package/table/Table.stories.jsx +277 -0
  253. package/table/Table.test.js +26 -0
  254. package/table/types.d.ts +21 -0
  255. package/table/types.js +5 -0
  256. package/tabs/Tabs.d.ts +4 -0
  257. package/tabs/Tabs.js +211 -0
  258. package/tabs/Tabs.stories.tsx +112 -0
  259. package/tabs/Tabs.test.js +140 -0
  260. package/tabs/types.d.ts +82 -0
  261. package/tabs/types.js +5 -0
  262. package/tag/Tag.d.ts +4 -0
  263. package/tag/Tag.js +183 -0
  264. package/tag/Tag.stories.tsx +142 -0
  265. package/tag/Tag.test.js +60 -0
  266. package/tag/types.d.ts +69 -0
  267. package/tag/types.js +5 -0
  268. package/text/Text.d.ts +7 -0
  269. package/text/Text.js +30 -0
  270. package/text/Text.stories.tsx +19 -0
  271. package/text-input/Suggestion.d.ts +4 -0
  272. package/text-input/Suggestion.js +55 -0
  273. package/text-input/TextInput.d.ts +4 -0
  274. package/{dist/text-input → text-input}/TextInput.js +280 -483
  275. package/text-input/TextInput.stories.tsx +474 -0
  276. package/text-input/TextInput.test.js +1712 -0
  277. package/text-input/types.d.ts +178 -0
  278. package/text-input/types.js +5 -0
  279. package/textarea/Textarea.d.ts +4 -0
  280. package/{dist/textarea → textarea}/Textarea.js +48 -131
  281. package/textarea/Textarea.stories.jsx +157 -0
  282. package/textarea/Textarea.test.js +437 -0
  283. package/textarea/types.d.ts +137 -0
  284. package/textarea/types.js +5 -0
  285. package/toggle-group/ToggleGroup.d.ts +4 -0
  286. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +36 -148
  287. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  288. package/toggle-group/ToggleGroup.test.js +156 -0
  289. package/toggle-group/types.d.ts +105 -0
  290. package/toggle-group/types.js +5 -0
  291. package/useTheme.d.ts +2 -0
  292. package/{dist/useTheme.js → useTheme.js} +2 -2
  293. package/wizard/Wizard.d.ts +4 -0
  294. package/wizard/Wizard.js +290 -0
  295. package/wizard/Wizard.stories.tsx +214 -0
  296. package/wizard/Wizard.test.js +141 -0
  297. package/wizard/types.d.ts +64 -0
  298. package/wizard/types.js +5 -0
  299. package/README.md +0 -66
  300. package/babel.config.js +0 -8
  301. package/dist/BackgroundColorContext.js +0 -46
  302. package/dist/ThemeContext.js +0 -250
  303. package/dist/V3Select/V3Select.js +0 -549
  304. package/dist/V3Select/index.d.ts +0 -27
  305. package/dist/V3Textarea/V3Textarea.js +0 -264
  306. package/dist/V3Textarea/index.d.ts +0 -27
  307. package/dist/accordion/Accordion.js +0 -353
  308. package/dist/accordion/index.d.ts +0 -28
  309. package/dist/accordion-group/AccordionGroup.js +0 -186
  310. package/dist/accordion-group/index.d.ts +0 -16
  311. package/dist/alert/index.d.ts +0 -51
  312. package/dist/badge/Badge.js +0 -63
  313. package/dist/box/index.d.ts +0 -25
  314. package/dist/button/index.d.ts +0 -24
  315. package/dist/card/Card.js +0 -254
  316. package/dist/card/index.d.ts +0 -22
  317. package/dist/checkbox/index.d.ts +0 -24
  318. package/dist/chip/Chip.js +0 -265
  319. package/dist/chip/index.d.ts +0 -22
  320. package/dist/date/Date.js +0 -379
  321. package/dist/date/index.d.ts +0 -27
  322. package/dist/date-input/index.d.ts +0 -95
  323. package/dist/dialog/Dialog.js +0 -218
  324. package/dist/dialog/index.d.ts +0 -18
  325. package/dist/dropdown/index.d.ts +0 -26
  326. package/dist/file-input/FileInput.js +0 -644
  327. package/dist/file-input/FileItem.js +0 -287
  328. package/dist/file-input/index.d.ts +0 -81
  329. package/dist/footer/Footer.js +0 -421
  330. package/dist/footer/index.d.ts +0 -25
  331. package/dist/header/Header.js +0 -470
  332. package/dist/header/index.d.ts +0 -25
  333. package/dist/heading/index.d.ts +0 -17
  334. package/dist/input-text/Icons.js +0 -22
  335. package/dist/input-text/InputText.js +0 -705
  336. package/dist/input-text/index.d.ts +0 -36
  337. package/dist/layout/ApplicationLayout.js +0 -327
  338. package/dist/link/Link.js +0 -237
  339. package/dist/link/index.d.ts +0 -23
  340. package/dist/main.d.ts +0 -40
  341. package/dist/number-input/NumberInput.js +0 -136
  342. package/dist/number-input/index.d.ts +0 -113
  343. package/dist/paginator/Paginator.js +0 -283
  344. package/dist/paginator/index.d.ts +0 -20
  345. package/dist/password-input/index.d.ts +0 -94
  346. package/dist/progress-bar/index.d.ts +0 -18
  347. package/dist/radio/index.d.ts +0 -23
  348. package/dist/resultsetTable/index.d.ts +0 -19
  349. package/dist/select/Select.js +0 -1069
  350. package/dist/select/index.d.ts +0 -53
  351. package/dist/sidenav/index.d.ts +0 -13
  352. package/dist/slider/index.d.ts +0 -29
  353. package/dist/spinner/Spinner.js +0 -381
  354. package/dist/spinner/index.d.ts +0 -17
  355. package/dist/switch/Switch.js +0 -222
  356. package/dist/switch/index.d.ts +0 -24
  357. package/dist/table/index.d.ts +0 -13
  358. package/dist/tabs/Tabs.js +0 -343
  359. package/dist/tabs/index.d.ts +0 -19
  360. package/dist/tag/Tag.js +0 -282
  361. package/dist/tag/index.d.ts +0 -24
  362. package/dist/text-input/index.d.ts +0 -135
  363. package/dist/textarea/index.d.ts +0 -117
  364. package/dist/toggle/Toggle.js +0 -220
  365. package/dist/toggle/index.d.ts +0 -21
  366. package/dist/toggle-group/index.d.ts +0 -21
  367. package/dist/upload/Upload.js +0 -205
  368. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  369. package/dist/upload/buttons-upload/Icons.js +0 -40
  370. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  371. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  372. package/dist/upload/file-upload/FileToUpload.js +0 -189
  373. package/dist/upload/file-upload/Icons.js +0 -66
  374. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  375. package/dist/upload/index.d.ts +0 -15
  376. package/dist/upload/transaction/Icons.js +0 -160
  377. package/dist/upload/transaction/Transaction.js +0 -148
  378. package/dist/upload/transactions/Transactions.js +0 -138
  379. package/dist/wizard/Icons.js +0 -65
  380. package/dist/wizard/Wizard.js +0 -405
  381. package/dist/wizard/index.d.ts +0 -18
  382. package/test/Accordion.test.js +0 -33
  383. package/test/AccordionGroup.test.js +0 -125
  384. package/test/Alert.test.js +0 -53
  385. package/test/Box.test.js +0 -10
  386. package/test/Button.test.js +0 -18
  387. package/test/Card.test.js +0 -30
  388. package/test/Checkbox.test.js +0 -45
  389. package/test/Chip.test.js +0 -25
  390. package/test/Date.test.js +0 -395
  391. package/test/DateInput.test.js +0 -242
  392. package/test/Dialog.test.js +0 -23
  393. package/test/Dropdown.test.js +0 -145
  394. package/test/FileInput.test.js +0 -201
  395. package/test/Footer.test.js +0 -94
  396. package/test/Header.test.js +0 -34
  397. package/test/Heading.test.js +0 -83
  398. package/test/InputText.test.js +0 -248
  399. package/test/Link.test.js +0 -43
  400. package/test/NumberInput.test.js +0 -259
  401. package/test/Paginator.test.js +0 -177
  402. package/test/PasswordInput.test.js +0 -83
  403. package/test/ProgressBar.test.js +0 -35
  404. package/test/Radio.test.js +0 -37
  405. package/test/ResultsetTable.test.js +0 -329
  406. package/test/Sidenav.test.js +0 -45
  407. package/test/Slider.test.js +0 -74
  408. package/test/Spinner.test.js +0 -32
  409. package/test/Switch.test.js +0 -45
  410. package/test/Table.test.js +0 -36
  411. package/test/Tabs.test.js +0 -109
  412. package/test/Tag.test.js +0 -32
  413. package/test/TextInput.test.js +0 -732
  414. package/test/Textarea.test.js +0 -193
  415. package/test/ToggleGroup.test.js +0 -85
  416. package/test/Upload.test.js +0 -60
  417. package/test/V3Select.test.js +0 -212
  418. package/test/V3TextArea.test.js +0 -51
  419. package/test/Wizard.test.js +0 -130
  420. package/test/mocks/pngMock.js +0 -1
  421. package/test/mocks/svgMock.js +0 -1
@@ -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
+ });
@@ -0,0 +1,55 @@
1
+ /// <reference types="react" />
2
+ export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ export declare type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare type SVG = React.SVGProps<SVGSVGElement>;
10
+ export declare type LinkProps = {
11
+ /**
12
+ * If true, the color is inherited from parent.
13
+ */
14
+ inheritColor?: boolean;
15
+ /**
16
+ * If true, the link is disabled.
17
+ */
18
+ disabled?: boolean;
19
+ /**
20
+ * Indicates the position of the icon in the component.
21
+ */
22
+ iconPosition?: "before" | "after";
23
+ /**
24
+ * Page to be opened when the user clicks on the link.
25
+ */
26
+ href?: string;
27
+ /**
28
+ * If true, the page is opened in a new browser tab.
29
+ */
30
+ newWindow?: boolean;
31
+ /**
32
+ * If defined, the link will be displayed as a button. This
33
+ * function will be called when the user clicks the link.
34
+ */
35
+ onClick?: () => void;
36
+ /**
37
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
38
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
39
+ */
40
+ margin?: Space | Margin;
41
+ /**
42
+ * Value of the tabindex.
43
+ */
44
+ tabIndex?: number;
45
+ /**
46
+ * Content of the link. To use the component with other libraries (such as React Router or Next.js Link) pass the custom link as a child.
47
+ * The component will apply the styles to the custom link.
48
+ */
49
+ children?: React.ReactNode;
50
+ /**
51
+ * Element or path used as the icon that will be placed next to the link text.
52
+ */
53
+ icon?: string | SVG;
54
+ };
55
+ export {};
package/link/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/list/List.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import ListPropsType from "./types";
3
+ declare function List({ children, type, gutter }: ListPropsType): JSX.Element;
4
+ export default List;
package/list/List.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _Stack = _interopRequireDefault(require("../stack/Stack"));
17
+
18
+ var _Text = _interopRequireDefault(require("../text/Text"));
19
+
20
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
21
+
22
+ function List(_ref) {
23
+ var children = _ref.children,
24
+ _ref$type = _ref.type,
25
+ type = _ref$type === void 0 ? "disc" : _ref$type,
26
+ _ref$gutter = _ref.gutter,
27
+ gutter = _ref$gutter === void 0 ? "xxsmall" : _ref$gutter;
28
+ return /*#__PURE__*/_react["default"].createElement(_Stack["default"], {
29
+ as: type === "number" ? "ol" : "ul",
30
+ gutter: gutter
31
+ }, _react["default"].Children.map(children, function (child, index) {
32
+ return /*#__PURE__*/_react["default"].createElement(ListItem, null, type === "number" ? /*#__PURE__*/_react["default"].createElement(Number, null, /*#__PURE__*/_react["default"].createElement(_Text["default"], null, index + 1, ".")) : type === "square" ? /*#__PURE__*/_react["default"].createElement(Square, null) : type === "circle" ? /*#__PURE__*/_react["default"].createElement(Circle, null) : /*#__PURE__*/_react["default"].createElement(Disc, null), child);
33
+ }));
34
+ }
35
+
36
+ var Number = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n user-select: none;\n margin-right: 10px;\n flex-shrink: 0;\n"])));
37
+
38
+ var Square = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: black;\n width: 5px;\n height: 5px;\n flex-shrink: 0;\n margin-top: 10px;\n margin-right: 10px;\n"])));
39
+
40
+ var Circle = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: 5px;\n height: 5px;\n border-radius: 50%;\n border: 1px solid black;\n flex-shrink: 0;\n margin-top: 10px;\n margin-right: 10px;\n box-sizing: border-box;\n"])));
41
+
42
+ var Disc = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: black;\n width: 5px;\n height: 5px;\n border-radius: 50%;\n flex-shrink: 0;\n margin-top: 10px;\n margin-right: 10px;\n"])));
43
+
44
+ var ListItem = _styledComponents["default"].li(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0px;\n padding: 0px;\n list-style: none;\n display: flex;\n"])));
45
+
46
+ var _default = List;
47
+ exports["default"] = _default;
@@ -0,0 +1,95 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import Title from "../../.storybook/components/Title";
4
+ import DxcList from "./List";
5
+ import DxcText from "../text/Text";
6
+
7
+ export default {
8
+ title: "List",
9
+ component: DxcList,
10
+ };
11
+
12
+ export const Chromatic = () => (
13
+ <>
14
+ <Title title="Default list" theme="light" level={4} />
15
+ <DxcList>
16
+ <DxcText>Text 1.</DxcText>
17
+ <DxcText>Text 2.</DxcText>
18
+ </DxcList>
19
+ <Title title="Number" theme="light" level={4} />
20
+ <DxcList type="number">
21
+ <DxcText>Text 1.</DxcText>
22
+ <DxcText>Text 2.</DxcText>
23
+ </DxcList>
24
+ <Title title="Square" theme="light" level={4} />
25
+ <DxcList type="square">
26
+ <DxcText>Text 1.</DxcText>
27
+ <DxcText>Text 2.</DxcText>
28
+ </DxcList>
29
+ <Title title="Circle" theme="light" level={4} />
30
+ <DxcList type="circle">
31
+ <DxcText>Text 1.</DxcText>
32
+ <DxcText>Text 2.</DxcText>
33
+ </DxcList>
34
+ <Title title="Multiple lines" theme="light" level={4} />
35
+ <Container>
36
+ <DxcList>
37
+ <DxcText>
38
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
39
+ magna aliqua.
40
+ </DxcText>
41
+ <DxcText>Text 2.</DxcText>
42
+ </DxcList>
43
+ </Container>
44
+ <Title title="gutter = xxxsmall" theme="light" level={4} />
45
+ <DxcList gutter="xxsmall">
46
+ <DxcText>Text 1.</DxcText>
47
+ <DxcText>Text 2.</DxcText>
48
+ </DxcList>
49
+ <Title title="gutter = xxsmall" theme="light" level={4} />
50
+ <DxcList gutter="xxsmall">
51
+ <DxcText>Text 1.</DxcText>
52
+ <DxcText>Text 2.</DxcText>
53
+ </DxcList>
54
+ <Title title="gutter = xsmall" theme="light" level={4} />
55
+ <DxcList gutter="xsmall">
56
+ <DxcText>Text 1.</DxcText>
57
+ <DxcText>Text 2.</DxcText>
58
+ </DxcList>
59
+ <Title title="gutter = small" theme="light" level={4} />
60
+ <DxcList gutter="small">
61
+ <DxcText>Text 1.</DxcText>
62
+ <DxcText>Text 2.</DxcText>
63
+ </DxcList>
64
+ <Title title="gutter = medium" theme="light" level={4} />
65
+ <DxcList gutter="medium">
66
+ <DxcText>Text 1.</DxcText>
67
+ <DxcText>Text 2.</DxcText>
68
+ </DxcList>
69
+ <Title title="gutter = large" theme="light" level={4} />
70
+ <DxcList gutter="large">
71
+ <DxcText>Text 1.</DxcText>
72
+ <DxcText>Text 2.</DxcText>
73
+ </DxcList>
74
+ <Title title="gutter = xlarge" theme="light" level={4} />
75
+ <DxcList gutter="xlarge">
76
+ <DxcText>Text 1.</DxcText>
77
+ <DxcText>Text 2.</DxcText>
78
+ </DxcList>
79
+ <Title title="gutter = xxlarge" theme="light" level={4} />
80
+ <DxcList gutter="xxlarge">
81
+ <DxcText>Text 1.</DxcText>
82
+ <DxcText>Text 2.</DxcText>
83
+ </DxcList>
84
+ <Title title="gutter = xxxlarge" theme="light" level={4} />
85
+ <DxcList gutter="xxxlarge">
86
+ <DxcText>Text 1.</DxcText>
87
+ <DxcText>Text 2.</DxcText>
88
+ </DxcList>
89
+
90
+ </>
91
+ );
92
+
93
+ const Container = styled.div`
94
+ width: 400px;
95
+ `;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ declare type Props = {
3
+ children: React.ReactNode;
4
+ gutter?: "none" | "xxxsmall" | "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge" | "xxxlarge";
5
+ type?: "disc" | "circle" | "square" | "number";
6
+ };
7
+ export default Props;
package/list/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/main.d.ts ADDED
@@ -0,0 +1,47 @@
1
+ import DxcAlert from "./alert/Alert";
2
+ import DxcAccordion from "./accordion/Accordion";
3
+ import DxcButton from "./button/Button";
4
+ import DxcCard from "./card/Card";
5
+ import DxcCheckbox from "./checkbox/Checkbox";
6
+ import DxcDialog from "./dialog/Dialog";
7
+ import DxcDropdown from "./dropdown/Dropdown";
8
+ import DxcFooter from "./footer/Footer";
9
+ import DxcHeader from "./header/Header";
10
+ import DxcRadio from "./radio/Radio";
11
+ import DxcSlider from "./slider/Slider";
12
+ import DxcSwitch from "./switch/Switch";
13
+ import DxcTabs from "./tabs/Tabs";
14
+ import DxcProgressBar from "./progress-bar/ProgressBar";
15
+ import DxcSpinner from "./spinner/Spinner";
16
+ import DxcTable from "./table/Table";
17
+ import DxcBox from "./box/Box";
18
+ import DxcTag from "./tag/Tag";
19
+ import DxcPaginator from "./paginator/Paginator";
20
+ import DxcSidenav from "./sidenav/Sidenav";
21
+ import DxcWizard from "./wizard/Wizard";
22
+ import DxcLink from "./link/Link";
23
+ import DxcHeading from "./heading/Heading";
24
+ import DxcResultsetTable from "./resultsetTable/ResultsetTable";
25
+ import DxcChip from "./chip/Chip";
26
+ import DxcApplicationLayout from "./layout/ApplicationLayout";
27
+ import DxcToggleGroup from "./toggle-group/ToggleGroup";
28
+ import DxcAccordionGroup from "./accordion-group/AccordionGroup";
29
+ import DxcBadge from "./badge/Badge";
30
+ import DxcTextInput from "./text-input/TextInput";
31
+ import DxcPasswordInput from "./password-input/PasswordInput";
32
+ import DxcDateInput from "./date-input/DateInput";
33
+ import DxcNumberInput from "./number-input/NumberInput";
34
+ import DxcTextarea from "./textarea/Textarea";
35
+ import DxcSelect from "./select/Select";
36
+ import DxcFileInput from "./file-input/FileInput";
37
+ import DxcStack from "./stack/Stack";
38
+ import DxcRow from "./row/Row";
39
+ import DxcText from "./text/Text";
40
+ import DxcList from "./list/List";
41
+ import DxcRadioGroup from "./radio-group/RadioGroup";
42
+ import DxcBleed from "./bleed/Bleed";
43
+ import DxcInset from "./inset/Inset";
44
+ import DxcQuickNav from "./quick-nav/QuickNav";
45
+ import HalstackContext, { HalstackProvider } from "./HalstackContext";
46
+ import { BackgroundColorProvider } from "./BackgroundColorContext";
47
+ export { DxcAlert, DxcButton, DxcFooter, DxcCheckbox, DxcTextInput, DxcDropdown, DxcSwitch, DxcSlider, DxcRadio, DxcHeader, DxcTable, DxcTabs, DxcToggleGroup, DxcDialog, DxcCard, DxcProgressBar, DxcAccordion, DxcSpinner, DxcBox, DxcTag, DxcPaginator, DxcSidenav, DxcWizard, DxcLink, DxcHeading, DxcResultsetTable, DxcChip, DxcApplicationLayout, HalstackContext, HalstackProvider, BackgroundColorProvider, DxcAccordionGroup, DxcBadge, DxcPasswordInput, DxcDateInput, DxcNumberInput, DxcTextarea, DxcSelect, DxcFileInput, DxcStack, DxcRow, DxcText, DxcList, DxcRadioGroup, DxcBleed, DxcInset, DxcQuickNav, };