@dxc-technology/halstack-react 0.0.0-c4ba791 → 0.0.0-c593452

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 (323) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +260 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -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 +170 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/alert/Alert.js +290 -0
  17. package/alert/types.d.ts +49 -0
  18. package/alert/types.js +5 -0
  19. package/badge/Badge.js +59 -0
  20. package/{dist/box → box}/Box.js +38 -34
  21. package/box/index.d.ts +25 -0
  22. package/button/Button.d.ts +4 -0
  23. package/button/Button.js +182 -0
  24. package/button/Button.stories.tsx +293 -0
  25. package/button/types.d.ts +57 -0
  26. package/button/types.js +5 -0
  27. package/card/Card.d.ts +4 -0
  28. package/card/Card.js +165 -0
  29. package/card/types.d.ts +69 -0
  30. package/card/types.js +5 -0
  31. package/checkbox/Checkbox.d.ts +4 -0
  32. package/checkbox/Checkbox.js +253 -0
  33. package/checkbox/types.d.ts +60 -0
  34. package/checkbox/types.js +5 -0
  35. package/chip/Chip.js +221 -0
  36. package/chip/index.d.ts +22 -0
  37. package/{dist/common → common}/OpenSans.css +0 -0
  38. package/{dist/common → common}/RequiredComponent.js +3 -11
  39. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  40. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  41. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  42. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  43. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  44. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  49. package/common/utils.js +22 -0
  50. package/common/variables.js +1569 -0
  51. package/{dist/date → date}/Date.js +81 -65
  52. package/date/index.d.ts +27 -0
  53. package/date-input/DateInput.d.ts +4 -0
  54. package/date-input/DateInput.js +361 -0
  55. package/date-input/types.d.ts +100 -0
  56. package/date-input/types.js +5 -0
  57. package/dialog/Dialog.js +184 -0
  58. package/dialog/index.d.ts +18 -0
  59. package/dropdown/Dropdown.d.ts +4 -0
  60. package/dropdown/Dropdown.js +417 -0
  61. package/dropdown/types.d.ts +89 -0
  62. package/dropdown/types.js +5 -0
  63. package/file-input/FileInput.js +532 -0
  64. package/file-input/FileItem.js +193 -0
  65. package/file-input/index.d.ts +81 -0
  66. package/footer/Footer.js +297 -0
  67. package/footer/Icons.js +77 -0
  68. package/footer/index.d.ts +25 -0
  69. package/header/Header.js +326 -0
  70. package/header/Icons.js +59 -0
  71. package/header/index.d.ts +25 -0
  72. package/heading/Heading.js +176 -0
  73. package/heading/index.d.ts +17 -0
  74. package/input-text/Icons.js +22 -0
  75. package/input-text/InputText.js +611 -0
  76. package/input-text/index.d.ts +36 -0
  77. package/{dist/layout → layout}/ApplicationLayout.js +42 -142
  78. package/layout/Icons.js +55 -0
  79. package/link/Link.js +183 -0
  80. package/link/index.d.ts +23 -0
  81. package/main.d.ts +44 -0
  82. package/{dist/main.js → main.js} +125 -65
  83. package/number-input/NumberInput.js +128 -0
  84. package/number-input/NumberInputContext.js +16 -0
  85. package/number-input/index.d.ts +113 -0
  86. package/package.json +34 -22
  87. package/paginator/Icons.js +66 -0
  88. package/paginator/Paginator.d.ts +4 -0
  89. package/paginator/Paginator.js +198 -0
  90. package/paginator/types.d.ts +38 -0
  91. package/paginator/types.js +5 -0
  92. package/password-input/PasswordInput.js +199 -0
  93. package/password-input/PasswordInput.stories.jsx +131 -0
  94. package/password-input/index.d.ts +94 -0
  95. package/progress-bar/ProgressBar.d.ts +4 -0
  96. package/progress-bar/ProgressBar.js +170 -0
  97. package/progress-bar/types.d.ts +37 -0
  98. package/progress-bar/types.js +5 -0
  99. package/radio/Radio.d.ts +4 -0
  100. package/radio/Radio.js +174 -0
  101. package/radio/types.d.ts +54 -0
  102. package/radio/types.js +5 -0
  103. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +95 -162
  104. package/resultsetTable/index.d.ts +19 -0
  105. package/select/Select.js +865 -0
  106. package/select/index.d.ts +131 -0
  107. package/sidenav/Sidenav.js +145 -0
  108. package/sidenav/index.d.ts +13 -0
  109. package/slider/Slider.d.ts +4 -0
  110. package/slider/Slider.js +306 -0
  111. package/slider/types.d.ts +83 -0
  112. package/slider/types.js +5 -0
  113. package/spinner/Spinner.js +267 -0
  114. package/spinner/index.d.ts +17 -0
  115. package/switch/Switch.d.ts +4 -0
  116. package/switch/Switch.js +179 -0
  117. package/switch/types.d.ts +58 -0
  118. package/switch/types.js +5 -0
  119. package/table/Table.js +118 -0
  120. package/table/index.d.ts +13 -0
  121. package/tabs/Tabs.d.ts +4 -0
  122. package/tabs/Tabs.js +211 -0
  123. package/tabs/types.d.ts +71 -0
  124. package/tabs/types.js +5 -0
  125. package/tag/Tag.js +208 -0
  126. package/tag/index.d.ts +24 -0
  127. package/text-input/TextInput.js +825 -0
  128. package/text-input/index.d.ts +135 -0
  129. package/textarea/Textarea.js +317 -0
  130. package/textarea/Textarea.stories.jsx +135 -0
  131. package/textarea/index.d.ts +117 -0
  132. package/{dist/toggle → toggle}/Toggle.js +30 -67
  133. package/toggle/index.d.ts +21 -0
  134. package/toggle-group/ToggleGroup.js +243 -0
  135. package/toggle-group/index.d.ts +21 -0
  136. package/{dist/upload → upload}/Upload.js +23 -22
  137. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  138. package/upload/buttons-upload/Icons.js +40 -0
  139. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  140. package/upload/dragAndDropArea/Icons.js +39 -0
  141. package/upload/file-upload/FileToUpload.js +115 -0
  142. package/upload/file-upload/Icons.js +66 -0
  143. package/upload/files-upload/FilesToUpload.js +109 -0
  144. package/upload/index.d.ts +15 -0
  145. package/upload/transaction/Icons.js +160 -0
  146. package/upload/transaction/Transaction.js +104 -0
  147. package/upload/transactions/Transactions.js +94 -0
  148. package/{dist/useTheme.js → useTheme.js} +0 -0
  149. package/wizard/Icons.js +65 -0
  150. package/wizard/Wizard.js +271 -0
  151. package/wizard/index.d.ts +18 -0
  152. package/README.md +0 -66
  153. package/babel.config.js +0 -4
  154. package/dist/ThemeContext.js +0 -54
  155. package/dist/accordion/Accordion.js +0 -273
  156. package/dist/accordion/Accordion.stories.js +0 -207
  157. package/dist/accordion/readme.md +0 -96
  158. package/dist/accordion-group/AccordionGroup.js +0 -159
  159. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  160. package/dist/accordion-group/readme.md +0 -70
  161. package/dist/alert/Alert.js +0 -304
  162. package/dist/alert/Alert.stories.js +0 -158
  163. package/dist/alert/close.svg +0 -4
  164. package/dist/alert/error.svg +0 -4
  165. package/dist/alert/info.svg +0 -4
  166. package/dist/alert/readme.md +0 -43
  167. package/dist/alert/success.svg +0 -4
  168. package/dist/alert/warning.svg +0 -4
  169. package/dist/badge/Badge.js +0 -58
  170. package/dist/button/Button.js +0 -202
  171. package/dist/button/Button.stories.js +0 -224
  172. package/dist/button/readme.md +0 -93
  173. package/dist/card/Card.js +0 -217
  174. package/dist/checkbox/Checkbox.js +0 -240
  175. package/dist/checkbox/Checkbox.stories.js +0 -144
  176. package/dist/checkbox/readme.md +0 -116
  177. package/dist/chip/Chip.js +0 -208
  178. package/dist/common/services/example-service.js +0 -10
  179. package/dist/common/services/example-service.test.js +0 -12
  180. package/dist/common/utils.js +0 -42
  181. package/dist/common/variables.js +0 -436
  182. package/dist/date/Date.stories.js +0 -205
  183. package/dist/date/calendar.svg +0 -1
  184. package/dist/date/calendar_dark.svg +0 -1
  185. package/dist/date/readme.md +0 -73
  186. package/dist/dialog/Dialog.js +0 -197
  187. package/dist/dialog/Dialog.stories.js +0 -217
  188. package/dist/dialog/readme.md +0 -32
  189. package/dist/dropdown/Dropdown.js +0 -449
  190. package/dist/dropdown/Dropdown.stories.js +0 -249
  191. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  192. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  193. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  194. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  195. package/dist/dropdown/readme.md +0 -69
  196. package/dist/footer/Footer.js +0 -371
  197. package/dist/footer/Footer.stories.js +0 -94
  198. package/dist/footer/dxc_logo_wht.png +0 -0
  199. package/dist/footer/readme.md +0 -41
  200. package/dist/header/Header.js +0 -373
  201. package/dist/header/Header.stories.js +0 -176
  202. package/dist/header/close_icon.svg +0 -1
  203. package/dist/header/dxc_logo_black.png +0 -0
  204. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  205. package/dist/header/dxc_logo_white.png +0 -0
  206. package/dist/header/hamb_menu_black.svg +0 -1
  207. package/dist/header/hamb_menu_white.svg +0 -1
  208. package/dist/header/readme.md +0 -33
  209. package/dist/heading/Heading.js +0 -153
  210. package/dist/input-text/InputText.js +0 -570
  211. package/dist/input-text/InputText.stories.js +0 -209
  212. package/dist/input-text/error.svg +0 -1
  213. package/dist/input-text/readme.md +0 -91
  214. package/dist/layout/facebook.svg +0 -45
  215. package/dist/layout/linkedin.svg +0 -50
  216. package/dist/layout/twitter.svg +0 -53
  217. package/dist/link/Link.js +0 -192
  218. package/dist/link/readme.md +0 -51
  219. package/dist/paginator/Paginator.js +0 -232
  220. package/dist/paginator/images/next.svg +0 -3
  221. package/dist/paginator/images/nextPage.svg +0 -3
  222. package/dist/paginator/images/previous.svg +0 -3
  223. package/dist/paginator/images/previousPage.svg +0 -3
  224. package/dist/paginator/readme.md +0 -50
  225. package/dist/progress-bar/ProgressBar.js +0 -185
  226. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  227. package/dist/progress-bar/readme.md +0 -63
  228. package/dist/radio/Radio.js +0 -195
  229. package/dist/radio/Radio.stories.js +0 -166
  230. package/dist/radio/readme.md +0 -70
  231. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  232. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  233. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  234. package/dist/select/Select.js +0 -473
  235. package/dist/select/Select.stories.js +0 -235
  236. package/dist/select/readme.md +0 -72
  237. package/dist/sidenav/Sidenav.js +0 -128
  238. package/dist/slider/Slider.js +0 -266
  239. package/dist/slider/Slider.stories.js +0 -241
  240. package/dist/slider/readme.md +0 -64
  241. package/dist/spinner/Spinner.js +0 -193
  242. package/dist/spinner/Spinner.stories.js +0 -183
  243. package/dist/spinner/readme.md +0 -65
  244. package/dist/switch/Switch.js +0 -199
  245. package/dist/switch/Switch.stories.js +0 -134
  246. package/dist/switch/readme.md +0 -133
  247. package/dist/table/Table.js +0 -105
  248. package/dist/tabs/Tabs.js +0 -292
  249. package/dist/tabs/Tabs.stories.js +0 -130
  250. package/dist/tabs/readme.md +0 -78
  251. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  252. package/dist/tabs-for-sections/readme.md +0 -78
  253. package/dist/tag/Tag.js +0 -249
  254. package/dist/textarea/Textarea.js +0 -227
  255. package/dist/toggle/Toggle.stories.js +0 -297
  256. package/dist/toggle/readme.md +0 -80
  257. package/dist/toggle-group/ToggleGroup.js +0 -226
  258. package/dist/toggle-group/readme.md +0 -82
  259. package/dist/upload/Upload.stories.js +0 -72
  260. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  261. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  262. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  263. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  264. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  265. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  266. package/dist/upload/file-upload/FileToUpload.js +0 -158
  267. package/dist/upload/file-upload/audio-icon.svg +0 -4
  268. package/dist/upload/file-upload/close.svg +0 -4
  269. package/dist/upload/file-upload/file-icon.svg +0 -4
  270. package/dist/upload/file-upload/video-icon.svg +0 -4
  271. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  272. package/dist/upload/readme.md +0 -37
  273. package/dist/upload/transaction/Transaction.js +0 -155
  274. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  275. package/dist/upload/transaction/audio-icon.svg +0 -4
  276. package/dist/upload/transaction/error-icon.svg +0 -4
  277. package/dist/upload/transaction/file-icon-err.svg +0 -4
  278. package/dist/upload/transaction/file-icon.svg +0 -4
  279. package/dist/upload/transaction/image-icon-err.svg +0 -4
  280. package/dist/upload/transaction/image-icon.svg +0 -4
  281. package/dist/upload/transaction/success-icon.svg +0 -4
  282. package/dist/upload/transaction/video-icon-err.svg +0 -4
  283. package/dist/upload/transaction/video-icon.svg +0 -4
  284. package/dist/upload/transactions/Transactions.js +0 -120
  285. package/dist/wizard/Wizard.js +0 -331
  286. package/dist/wizard/invalid_icon.svg +0 -6
  287. package/dist/wizard/valid_icon.svg +0 -6
  288. package/dist/wizard/validation-wrong.svg +0 -6
  289. package/test/Accordion.test.js +0 -33
  290. package/test/AccordionGroup.test.js +0 -109
  291. package/test/Alert.test.js +0 -53
  292. package/test/Box.test.js +0 -10
  293. package/test/Button.test.js +0 -18
  294. package/test/Card.test.js +0 -30
  295. package/test/Checkbox.test.js +0 -45
  296. package/test/Chip.test.js +0 -25
  297. package/test/Date.test.js +0 -393
  298. package/test/Dialog.test.js +0 -23
  299. package/test/Dropdown.test.js +0 -130
  300. package/test/Footer.test.js +0 -99
  301. package/test/Header.test.js +0 -39
  302. package/test/Heading.test.js +0 -35
  303. package/test/InputText.test.js +0 -240
  304. package/test/Link.test.js +0 -42
  305. package/test/Paginator.test.js +0 -194
  306. package/test/ProgressBar.test.js +0 -35
  307. package/test/Radio.test.js +0 -37
  308. package/test/ResultsetTable.test.js +0 -304
  309. package/test/Select.test.js +0 -192
  310. package/test/Sidenav.test.js +0 -45
  311. package/test/Slider.test.js +0 -82
  312. package/test/Spinner.test.js +0 -27
  313. package/test/Switch.test.js +0 -45
  314. package/test/Table.test.js +0 -36
  315. package/test/Tabs.test.js +0 -109
  316. package/test/TabsForSections.test.js +0 -34
  317. package/test/Tag.test.js +0 -32
  318. package/test/TextArea.test.js +0 -52
  319. package/test/ToggleGroup.test.js +0 -81
  320. package/test/Upload.test.js +0 -60
  321. package/test/Wizard.test.js +0 -130
  322. package/test/mocks/pngMock.js +0 -1
  323. package/test/mocks/svgMock.js +0 -1
@@ -1,6 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="496" height="496" viewBox="0 0 496 496">
2
- <g id="Group_2913" data-name="Group 2913" transform="translate(5286 3925)">
3
- <path id="Path_2821" data-name="Path 2821" d="M240,0C372.548,0,480,107.452,480,240S372.548,480,240,480,0,372.548,0,240,107.452,0,240,0Z" transform="translate(-5278 -3917)" fill="#f9cfcf"/>
4
- <path id="times-circle-regular" d="M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm0,448A200,200,0,1,1,456,256,199.945,199.945,0,0,1,256,456ZM357.8,193.8,295.6,256l62.2,62.2a12.011,12.011,0,0,1,0,17l-22.6,22.6a12.011,12.011,0,0,1-17,0L256,295.6l-62.2,62.2a12.011,12.011,0,0,1-17,0l-22.6-22.6a12.011,12.011,0,0,1,0-17L216.4,256l-62.2-62.2a12.011,12.011,0,0,1,0-17l22.6-22.6a12.011,12.011,0,0,1,17,0L256,216.4l62.2-62.2a12.011,12.011,0,0,1,17,0l22.6,22.6a12.011,12.011,0,0,1,0,17Z" transform="translate(-5294 -3933)" fill="#e22"/>
5
- </g>
6
- </svg>
@@ -1,6 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="496" height="496" viewBox="0 0 496 496">
2
- <g id="Group_2914" data-name="Group 2914" transform="translate(4677 3925)">
3
- <path id="Path_2822" data-name="Path 2822" d="M240,0C372.548,0,480,107.452,480,240S372.548,480,240,480,0,372.548,0,240,107.452,0,240,0Z" transform="translate(-4669 -3917)" fill="#dbf1c4"/>
4
- <path id="check-circle-regular" d="M256,8C119.033,8,8,119.033,8,256S119.033,504,256,504,504,392.967,504,256,392.967,8,256,8Zm0,48A200,200,0,1,1,56,256,199.893,199.893,0,0,1,256,56M396.2,186.267l-22.536-22.718a12,12,0,0,0-16.97-.068L215.346,303.7,155.554,243.42a12,12,0,0,0-16.97-.069l-22.719,22.536a12,12,0,0,0-.068,16.971l90.781,91.516a12,12,0,0,0,16.97.068l172.589-171.2a12,12,0,0,0,.067-16.971Z" transform="translate(-4685 -3933)" fill="#7ed321"/>
5
- </g>
6
- </svg>
@@ -1,6 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="496" height="496" viewBox="0 0 496 496">
2
- <g id="Group_2913" data-name="Group 2913" transform="translate(5286 3925)">
3
- <path id="Path_2821" data-name="Path 2821" d="M240,0C372.548,0,480,107.452,480,240S372.548,480,240,480,0,372.548,0,240,107.452,0,240,0Z" transform="translate(-5278 -3917)" fill="#f9cfcf"/>
4
- <path id="times-circle-regular" d="M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm0,448A200,200,0,1,1,456,256,199.945,199.945,0,0,1,256,456ZM357.8,193.8,295.6,256l62.2,62.2a12.011,12.011,0,0,1,0,17l-22.6,22.6a12.011,12.011,0,0,1-17,0L256,295.6l-62.2,62.2a12.011,12.011,0,0,1-17,0l-22.6-22.6a12.011,12.011,0,0,1,0-17L216.4,256l-62.2-62.2a12.011,12.011,0,0,1,0-17l22.6-22.6a12.011,12.011,0,0,1,17,0L256,216.4l62.2-62.2a12.011,12.011,0,0,1,17,0l22.6,22.6a12.011,12.011,0,0,1,0,17Z" transform="translate(-5294 -3933)" fill="#e22"/>
5
- </g>
6
- </svg>
@@ -1,33 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcAccordion from "../src/accordion/Accordion";
4
-
5
- describe("Accordion component tests", () => {
6
- test("Accordion renders with correct text", () => {
7
- const onChange = jest.fn();
8
- const { getByText } = render(<DxcAccordion label="Accordion" onChange={onChange} />);
9
-
10
- expect(getByText("Accordion")).toBeTruthy();
11
- });
12
-
13
- test("Calls correct function on click", () => {
14
- const onChange = jest.fn();
15
- const { getByText } = render(<DxcAccordion label="Accordion" onChange={onChange} />);
16
-
17
- fireEvent.click(getByText("Accordion"));
18
- expect(onChange).toHaveBeenCalled();
19
- });
20
-
21
- test("Controlled accordion", () => {
22
- const onChange = jest.fn();
23
- const { getByText } = render(<DxcAccordion label="Accordion" onChange={onChange} isExpanded={true} />);
24
-
25
- fireEvent.click(getByText("Accordion"));
26
- fireEvent.click(getByText("Accordion"));
27
- fireEvent.click(getByText("Accordion"));
28
- expect(onChange).toHaveBeenCalledTimes(3);
29
- expect(onChange.mock.calls[0][0]).toBe(false);
30
- expect(onChange.mock.calls[1][0]).toBe(false);
31
- expect(onChange.mock.calls[2][0]).toBe(false);
32
- });
33
- });
@@ -1,109 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcAccordionGroup from "../src/accordion-group/AccordionGroup";
4
-
5
- describe("Accordion component tests", () => {
6
- test("Uncontrolled accordion group renders with children", () => {
7
- const { getByText, getAllByRole } = render(
8
- <DxcAccordionGroup>
9
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium">
10
- <div>
11
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
12
- leo lobortis eget.
13
- </div>
14
- </DxcAccordionGroup.Accordion>
15
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
16
- <div>
17
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
18
- leo lobortis eget.
19
- </div>
20
- </DxcAccordionGroup.Accordion>
21
- </DxcAccordionGroup>
22
- );
23
-
24
- expect(getByText("Accordion1")).toBeTruthy();
25
- expect(getByText("Accordion2")).toBeTruthy();
26
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
27
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
28
- });
29
-
30
- test("Uncontrolled accordion group calls correct function on click", () => {
31
- const onActiveChange = jest.fn();
32
- const { getByText, getAllByRole } = render(
33
- <DxcAccordionGroup margin="large" onActiveChange={onActiveChange}>
34
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
35
- <div>
36
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
37
- leo lobortis eget.
38
- </div>
39
- </DxcAccordionGroup.Accordion>
40
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
41
- <div>
42
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
43
- leo lobortis eget.
44
- </div>
45
- </DxcAccordionGroup.Accordion>
46
- </DxcAccordionGroup>
47
- );
48
-
49
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
50
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
51
- fireEvent.click(getByText("Accordion1"));
52
- expect(onActiveChange).toHaveBeenCalled();
53
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
54
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
55
- });
56
-
57
- test("Controlled accordion with indexActive change", () => {
58
- const onActiveChange = jest.fn();
59
- const { getByText, getAllByRole, rerender } = render(
60
- <DxcAccordionGroup margin="large" indexActive={1} onActiveChange={onActiveChange}>
61
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
62
- <div>Text1</div>
63
- </DxcAccordionGroup.Accordion>
64
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
65
- <div>Text2</div>
66
- </DxcAccordionGroup.Accordion>
67
- </DxcAccordionGroup>
68
- );
69
- expect(getByText("Text1")).toBeTruthy();
70
- expect(getByText("Text2")).toBeTruthy();
71
- fireEvent.click(getByText("Accordion1"));
72
- fireEvent.click(getByText("Accordion2"));
73
- expect(onActiveChange.mock.calls[0][0]).toBe(0);
74
- expect(onActiveChange.mock.calls[1][0]).toBe(1);
75
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
76
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("true");
77
-
78
- rerender(
79
- <DxcAccordionGroup margin="large" indexActive={0} onActiveChange={onActiveChange}>
80
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
81
- <div>Text1</div>
82
- </DxcAccordionGroup.Accordion>
83
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
84
- <div>Text2</div>
85
- </DxcAccordionGroup.Accordion>
86
- </DxcAccordionGroup>
87
- );
88
-
89
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
90
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
91
- });
92
-
93
- test("Disabled uncontrolled accordion group", () => {
94
- const onActiveChange = jest.fn();
95
- const { getByText } = render(
96
- <DxcAccordionGroup margin="large" onActiveChange={onActiveChange} disabled={true}>
97
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
98
- <div>Text1</div>
99
- </DxcAccordionGroup.Accordion>
100
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
101
- <div>Text2</div>
102
- </DxcAccordionGroup.Accordion>
103
- </DxcAccordionGroup>
104
- );
105
- fireEvent.click(getByText("Accordion1"));
106
- fireEvent.click(getByText("Accordion2"));
107
- expect(onActiveChange).toHaveBeenCalledTimes(0);
108
- });
109
- });
@@ -1,53 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcAlert from "../src/alert/Alert";
4
-
5
- describe("Alert component tests", () => {
6
- test("Info alert renders with correct text", () => {
7
- const { getByText } = render(<DxcAlert type="info" inlineText="info-alert-text" />);
8
- expect(getByText("information")).toBeTruthy();
9
- expect(getByText("info-alert-text")).toBeTruthy();
10
- });
11
-
12
- test("Confirm alert renders with correct text", () => {
13
- const { getByText } = render(<DxcAlert type="confirm" inlineText="confirm-alert-text" />);
14
- expect(getByText("success")).toBeTruthy();
15
- expect(getByText("confirm-alert-text")).toBeTruthy();
16
- });
17
-
18
- test("Warning alert renders with correct text", () => {
19
- const { getByText } = render(<DxcAlert type="warning" inlineText="warning-alert-text" />);
20
- expect(getByText("warning")).toBeTruthy();
21
- expect(getByText("warning-alert-text")).toBeTruthy();
22
- });
23
-
24
- test("Error alert renders with correct text", () => {
25
- const { getByText } = render(<DxcAlert type="error" inlineText="error-alert-text" />);
26
- expect(getByText("error")).toBeTruthy();
27
- expect(getByText("error-alert-text")).toBeTruthy();
28
- });
29
-
30
- test("Alert renders with correct children", () => {
31
- const { getByText } = render(<DxcAlert inlineText="alert-text"><p>sample-children</p></DxcAlert>);
32
- expect(getByText("alert-text")).toBeTruthy();
33
- expect(getByText("sample-children")).toBeTruthy();
34
- });
35
-
36
- test("Calls correct function on close", () => {
37
- const onClose = jest.fn();
38
- const { getByRole } = render(<DxcAlert onClose={onClose} inlineText="info-alert-text" />);
39
-
40
- const closeButton = getByRole("button");
41
- fireEvent.click(closeButton);
42
- expect(onClose).toHaveBeenCalled();
43
- });
44
-
45
- test("Modal alert calls correct function on close", () => {
46
- const onClose = jest.fn();
47
- const { getByRole } = render(<DxcAlert onClose={onClose} mode="modal" inlineText="info-alert-text" />);
48
-
49
- const closeButton = getByRole("button");
50
- fireEvent.click(closeButton);
51
- expect(onClose).toHaveBeenCalled();
52
- });
53
- });
package/test/Box.test.js DELETED
@@ -1,10 +0,0 @@
1
- import React from "react";
2
- import { render } from "@testing-library/react";
3
- import DxcBox from "../src/card/Card";
4
-
5
- describe("Box component tests", () => {
6
- test("Box renders with correct text", () => {
7
- const { getByText } = render(<DxcBox>test-box</DxcBox>);
8
- expect(getByText("test-box")).toBeTruthy();
9
- });
10
- });
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcButton from "../src/button/Button";
4
-
5
- describe("Button component tests", () => {
6
- test("Button renders with correct text", () => {
7
- const { getByText } = render(<DxcButton label="Button" />);
8
- expect(getByText("Button")).toBeTruthy();
9
- });
10
- test("Calls correct function on click", () => {
11
- const onClick = jest.fn();
12
- const { getByText } = render(<DxcButton label="Button" onClick={onClick} />);
13
-
14
- const button = getByText("Button");
15
- fireEvent.click(button);
16
- expect(onClick).toHaveBeenCalled();
17
- });
18
- });
package/test/Card.test.js DELETED
@@ -1,30 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcCard from "../src/card/Card";
4
-
5
- describe("Card component tests", () => {
6
- test("Card renders with correct content", () => {
7
- const { getByText } = render(<DxcCard>test-card</DxcCard>);
8
- expect(getByText("test-card")).toBeTruthy();
9
- });
10
-
11
- test("Card renders with correct href", () => {
12
- const { getByRole } = render(<DxcCard linkHref="/testPage">test-card</DxcCard>);
13
- const card = getByRole("link");
14
- expect(card.getAttribute("href")).toEqual("/testPage");
15
- });
16
-
17
- test("Card renders with correct image", () => {
18
- const { getByRole } = render(<DxcCard imageSrc="/testImage">test-card</DxcCard>);
19
- const card = getByRole("img");
20
- expect(card.getAttribute("src")).toEqual("/testImage");
21
- });
22
-
23
- test("OnClick function is called", () => {
24
- const onClick = jest.fn();
25
- const { getByText } = render(<DxcCard onClick={onClick}>test-card</DxcCard>);
26
- const card = getByText("test-card");
27
- fireEvent.click(card);
28
- expect(onClick).toHaveBeenCalled();
29
- });
30
- });
@@ -1,45 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
-
4
- import DxcCheckbox from "../src/checkbox/Checkbox";
5
-
6
- describe("Checkbox component tests", () => {
7
- test("Checkbox renders with correct text", () => {
8
- const { getByText } = render(<DxcCheckbox label="Checkbox" />);
9
-
10
- expect(getByText("Checkbox")).toBeTruthy();
11
- });
12
-
13
- test("Calls correct function on click", () => {
14
- const onChange = jest.fn();
15
- const { getByText } = render(<DxcCheckbox label="Checkbox" onChange={onChange} />);
16
-
17
- fireEvent.click(getByText("Checkbox"));
18
- expect(onChange).toHaveBeenCalled();
19
- });
20
-
21
- test("Uncontrolled checkbox", () => {
22
- const onChange = jest.fn();
23
- const component = render(<DxcCheckbox label="Checkbox" onChange={onChange} />);
24
- const visibleCheckbox = component.getByText("Checkbox");
25
- const input = component.getByRole("checkbox");
26
- expect(input.checked).toBe(false);
27
- fireEvent.click(visibleCheckbox);
28
- expect(onChange).toHaveBeenCalled();
29
- expect(onChange).toHaveBeenCalledWith(true);
30
- expect(input.checked).toBe(true);
31
- });
32
-
33
- test("Controlled checkbox", () => {
34
- const onChange = jest.fn();
35
- const component = render(<DxcCheckbox label="Checkbox" checked={false} onChange={onChange} />);
36
-
37
- const input = component.getByRole("checkbox");
38
- const visibleCheckbox = component.getByText("Checkbox");
39
-
40
- fireEvent.click(visibleCheckbox);
41
- expect(onChange).toHaveBeenCalled();
42
- expect(onChange).toHaveBeenCalledWith(true);
43
- expect(input.checked).toBe(false);
44
- });
45
- });
package/test/Chip.test.js DELETED
@@ -1,25 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcChip from "../src/chip/Chip";
4
- import icon from "../../app/src/images/invision.svg";
5
-
6
- describe("Chip component tests", () => {
7
- test("Chip renders with correct text", () => {
8
- const { getByText } = render(<DxcChip label="Chip" />);
9
- expect(getByText("Chip")).toBeTruthy();
10
- });
11
- test("Calls correct function when clicking on prefix icon", () => {
12
- const onClick = jest.fn();
13
- const { getByText, getByRole } = render(<DxcChip label="Chip" prefixIconSrc={icon} onClickPrefix={onClick} />);
14
- expect(getByText("Chip")).toBeTruthy();
15
- fireEvent.click(getByRole("img"));
16
- expect(onClick).toHaveBeenCalled();
17
- });
18
- test("Calls correct function when clicking on suffix icon", () => {
19
- const onClick = jest.fn();
20
- const { getByText, getByRole } = render(<DxcChip label="Chip" suffixIconSrc={icon} onClickSuffix={onClick} />);
21
- expect(getByText("Chip")).toBeTruthy();
22
- fireEvent.click(getByRole("img"));
23
- expect(onClick).toHaveBeenCalled();
24
- });
25
- });