@dxc-technology/halstack-react 0.0.0-9427b76 → 0.0.0-9439a0d

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 (339) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/{dist/select/Select.js → V3Select/V3Select.js} +38 -132
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +14 -18
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/{dist/accordion → accordion}/Accordion.js +35 -130
  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/{dist/alert → alert}/Alert.js +41 -154
  17. package/alert/Alert.stories.tsx +170 -0
  18. package/alert/types.d.ts +49 -0
  19. package/alert/types.js +5 -0
  20. package/badge/Badge.js +59 -0
  21. package/box/Box.d.ts +4 -0
  22. package/{dist/box → box}/Box.js +13 -43
  23. package/box/Box.stories.tsx +132 -0
  24. package/box/types.d.ts +43 -0
  25. package/box/types.js +5 -0
  26. package/button/Button.d.ts +4 -0
  27. package/{dist/button → button}/Button.js +23 -84
  28. package/button/Button.stories.tsx +276 -0
  29. package/button/types.d.ts +57 -0
  30. package/button/types.js +5 -0
  31. package/card/Card.d.ts +4 -0
  32. package/{dist/card → card}/Card.js +33 -123
  33. package/card/Card.stories.tsx +201 -0
  34. package/card/ice-cream.jpg +0 -0
  35. package/card/types.d.ts +69 -0
  36. package/card/types.js +5 -0
  37. package/checkbox/Checkbox.d.ts +4 -0
  38. package/{dist/checkbox → checkbox}/Checkbox.js +16 -63
  39. package/checkbox/Checkbox.stories.tsx +192 -0
  40. package/checkbox/types.d.ts +60 -0
  41. package/checkbox/types.js +5 -0
  42. package/{dist/chip → chip}/Chip.js +17 -61
  43. package/chip/Chip.stories.tsx +121 -0
  44. package/chip/index.d.ts +22 -0
  45. package/{dist/common → common}/OpenSans.css +0 -0
  46. package/{dist/common → common}/RequiredComponent.js +3 -11
  47. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  53. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  54. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  55. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  56. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  57. package/{dist/common → common}/utils.js +0 -0
  58. package/{dist/common → common}/variables.js +240 -107
  59. package/{dist/date → date}/Date.js +16 -22
  60. package/date/index.d.ts +27 -0
  61. package/date-input/DateInput.d.ts +4 -0
  62. package/{dist/new-date/NewDate.js → date-input/DateInput.js} +55 -94
  63. package/date-input/DateInput.stories.tsx +138 -0
  64. package/date-input/types.d.ts +100 -0
  65. package/date-input/types.js +5 -0
  66. package/dialog/Dialog.d.ts +4 -0
  67. package/{dist/dialog → dialog}/Dialog.js +20 -73
  68. package/dialog/Dialog.stories.tsx +212 -0
  69. package/dialog/types.d.ts +43 -0
  70. package/dialog/types.js +5 -0
  71. package/dropdown/Dropdown.d.ts +4 -0
  72. package/{dist/dropdown → dropdown}/Dropdown.js +44 -171
  73. package/dropdown/types.d.ts +89 -0
  74. package/dropdown/types.js +5 -0
  75. package/file-input/FileInput.d.ts +4 -0
  76. package/{dist/file-input → file-input}/FileInput.js +60 -190
  77. package/file-input/FileItem.d.ts +14 -0
  78. package/file-input/FileItem.js +182 -0
  79. package/file-input/types.d.ts +87 -0
  80. package/file-input/types.js +5 -0
  81. package/footer/Footer.d.ts +4 -0
  82. package/footer/Footer.js +266 -0
  83. package/footer/Footer.stories.jsx +151 -0
  84. package/footer/Icons.js +77 -0
  85. package/footer/types.d.ts +61 -0
  86. package/footer/types.js +5 -0
  87. package/header/Header.d.ts +7 -0
  88. package/header/Header.js +324 -0
  89. package/header/Header.stories.tsx +162 -0
  90. package/header/Icons.js +34 -0
  91. package/header/types.d.ts +45 -0
  92. package/header/types.js +5 -0
  93. package/heading/Heading.d.ts +4 -0
  94. package/{dist/heading → heading}/Heading.js +30 -89
  95. package/heading/types.d.ts +33 -0
  96. package/heading/types.js +5 -0
  97. package/input-text/Icons.js +22 -0
  98. package/{dist/input-text → input-text}/InputText.js +37 -133
  99. package/input-text/index.d.ts +36 -0
  100. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  101. package/layout/Icons.js +55 -0
  102. package/link/Link.d.ts +3 -0
  103. package/{dist/link → link}/Link.js +18 -94
  104. package/link/Link.stories.tsx +146 -0
  105. package/link/types.d.ts +74 -0
  106. package/link/types.js +5 -0
  107. package/main.d.ts +44 -0
  108. package/{dist/main.js → main.js} +100 -96
  109. package/number-input/NumberInput.d.ts +4 -0
  110. package/number-input/NumberInput.js +86 -0
  111. package/number-input/NumberInput.stories.tsx +115 -0
  112. package/{dist/number/NumberContext.js → number-input/NumberInputContext.js} +2 -2
  113. package/number-input/types.d.ts +117 -0
  114. package/number-input/types.js +5 -0
  115. package/package.json +32 -25
  116. package/paginator/Icons.js +66 -0
  117. package/paginator/Paginator.d.ts +4 -0
  118. package/paginator/Paginator.js +198 -0
  119. package/paginator/Paginator.stories.tsx +63 -0
  120. package/paginator/types.d.ts +38 -0
  121. package/paginator/types.js +5 -0
  122. package/password-input/PasswordInput.d.ts +4 -0
  123. package/{dist/password/Password.js → password-input/PasswordInput.js} +26 -64
  124. package/password-input/PasswordInput.stories.tsx +131 -0
  125. package/password-input/types.d.ts +100 -0
  126. package/password-input/types.js +5 -0
  127. package/progress-bar/ProgressBar.d.ts +4 -0
  128. package/{dist/progress-bar → progress-bar}/ProgressBar.js +20 -92
  129. package/progress-bar/ProgressBar.stories.jsx +58 -0
  130. package/progress-bar/types.d.ts +37 -0
  131. package/progress-bar/types.js +5 -0
  132. package/radio/Radio.d.ts +4 -0
  133. package/{dist/radio → radio}/Radio.js +15 -50
  134. package/radio/Radio.stories.tsx +192 -0
  135. package/radio/types.d.ts +54 -0
  136. package/radio/types.js +5 -0
  137. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +35 -119
  138. package/resultsetTable/index.d.ts +19 -0
  139. package/select/Select.js +865 -0
  140. package/select/Select.stories.tsx +572 -0
  141. package/select/index.d.ts +131 -0
  142. package/sidenav/Sidenav.d.ts +9 -0
  143. package/{dist/sidenav → sidenav}/Sidenav.js +19 -62
  144. package/sidenav/types.d.ts +50 -0
  145. package/sidenav/types.js +5 -0
  146. package/slider/Slider.d.ts +4 -0
  147. package/slider/Slider.js +317 -0
  148. package/slider/Slider.stories.tsx +177 -0
  149. package/slider/types.d.ts +78 -0
  150. package/slider/types.js +5 -0
  151. package/spinner/Spinner.d.ts +4 -0
  152. package/spinner/Spinner.js +250 -0
  153. package/spinner/Spinner.stories.jsx +102 -0
  154. package/spinner/types.d.ts +32 -0
  155. package/spinner/types.js +5 -0
  156. package/switch/Switch.d.ts +4 -0
  157. package/{dist/switch → switch}/Switch.js +26 -69
  158. package/switch/Switch.stories.tsx +160 -0
  159. package/switch/types.d.ts +58 -0
  160. package/switch/types.js +5 -0
  161. package/table/Table.d.ts +4 -0
  162. package/{dist/table → table}/Table.js +10 -24
  163. package/table/Table.stories.jsx +276 -0
  164. package/table/types.d.ts +21 -0
  165. package/table/types.js +5 -0
  166. package/tabs/Tabs.d.ts +4 -0
  167. package/tabs/Tabs.js +211 -0
  168. package/tabs/types.d.ts +71 -0
  169. package/tabs/types.js +5 -0
  170. package/tag/Tag.d.ts +4 -0
  171. package/tag/Tag.js +193 -0
  172. package/tag/Tag.stories.tsx +145 -0
  173. package/tag/types.d.ts +60 -0
  174. package/tag/types.js +5 -0
  175. package/{dist/new-input-text/NewInputText.js → text-input/TextInput.js} +270 -409
  176. package/{dist/new-input-text → text-input}/index.d.ts +3 -3
  177. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +31 -76
  178. package/textarea/Textarea.stories.jsx +135 -0
  179. package/{dist/new-textarea → textarea}/index.d.ts +1 -1
  180. package/{dist/toggle → toggle}/Toggle.js +15 -49
  181. package/toggle/index.d.ts +21 -0
  182. package/toggle-group/ToggleGroup.js +243 -0
  183. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  184. package/toggle-group/index.d.ts +21 -0
  185. package/{dist/upload → upload}/Upload.js +11 -15
  186. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  187. package/upload/buttons-upload/Icons.js +40 -0
  188. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  189. package/upload/dragAndDropArea/Icons.js +39 -0
  190. package/upload/file-upload/FileToUpload.js +115 -0
  191. package/upload/file-upload/Icons.js +66 -0
  192. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  193. package/upload/index.d.ts +15 -0
  194. package/upload/transaction/Icons.js +160 -0
  195. package/upload/transaction/Transaction.js +104 -0
  196. package/upload/transactions/Transactions.js +94 -0
  197. package/{dist/useTheme.js → useTheme.js} +0 -0
  198. package/wizard/Icons.js +65 -0
  199. package/wizard/Wizard.d.ts +4 -0
  200. package/{dist/wizard → wizard}/Wizard.js +33 -213
  201. package/wizard/Wizard.stories.jsx +224 -0
  202. package/wizard/types.d.ts +64 -0
  203. package/wizard/types.js +5 -0
  204. package/README.md +0 -66
  205. package/babel.config.js +0 -8
  206. package/dist/BackgroundColorContext.js +0 -46
  207. package/dist/ThemeContext.js +0 -248
  208. package/dist/accordion-group/AccordionGroup.js +0 -186
  209. package/dist/alert/index.d.ts +0 -51
  210. package/dist/badge/Badge.js +0 -63
  211. package/dist/checkbox/Checkbox.stories.js +0 -144
  212. package/dist/checkbox/readme.md +0 -116
  213. package/dist/date/Date.stories.js +0 -205
  214. package/dist/date/readme.md +0 -73
  215. package/dist/file-input/FileItem.js +0 -280
  216. package/dist/file-input/index.d.ts +0 -81
  217. package/dist/footer/Footer.js +0 -395
  218. package/dist/footer/Footer.stories.js +0 -94
  219. package/dist/footer/dxc_logo.svg +0 -15
  220. package/dist/footer/readme.md +0 -41
  221. package/dist/header/Header.js +0 -403
  222. package/dist/header/Header.stories.js +0 -176
  223. package/dist/header/close_icon.svg +0 -1
  224. package/dist/header/dxc_logo_black.svg +0 -8
  225. package/dist/header/hamb_menu_black.svg +0 -1
  226. package/dist/header/hamb_menu_white.svg +0 -1
  227. package/dist/header/readme.md +0 -33
  228. package/dist/input-text/InputText.stories.js +0 -209
  229. package/dist/input-text/error.svg +0 -1
  230. package/dist/input-text/readme.md +0 -91
  231. package/dist/layout/facebook.svg +0 -45
  232. package/dist/layout/linkedin.svg +0 -50
  233. package/dist/layout/twitter.svg +0 -53
  234. package/dist/link/readme.md +0 -51
  235. package/dist/main.d.ts +0 -7
  236. package/dist/new-date/index.d.ts +0 -95
  237. package/dist/number/Number.js +0 -136
  238. package/dist/number/index.d.ts +0 -113
  239. package/dist/paginator/Paginator.js +0 -289
  240. package/dist/paginator/images/next.svg +0 -3
  241. package/dist/paginator/images/nextPage.svg +0 -3
  242. package/dist/paginator/images/previous.svg +0 -3
  243. package/dist/paginator/images/previousPage.svg +0 -3
  244. package/dist/paginator/readme.md +0 -50
  245. package/dist/password/index.d.ts +0 -94
  246. package/dist/password/styles.css +0 -3
  247. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  248. package/dist/progress-bar/readme.md +0 -63
  249. package/dist/radio/Radio.stories.js +0 -166
  250. package/dist/radio/readme.md +0 -70
  251. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  252. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  253. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  254. package/dist/slider/Slider.js +0 -319
  255. package/dist/slider/Slider.stories.js +0 -241
  256. package/dist/slider/readme.md +0 -64
  257. package/dist/spinner/Spinner.js +0 -381
  258. package/dist/spinner/Spinner.stories.js +0 -183
  259. package/dist/spinner/readme.md +0 -65
  260. package/dist/switch/Switch.stories.js +0 -134
  261. package/dist/switch/readme.md +0 -133
  262. package/dist/tabs/Tabs.js +0 -343
  263. package/dist/tabs/Tabs.stories.js +0 -130
  264. package/dist/tabs/readme.md +0 -78
  265. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  266. package/dist/tabs-for-sections/readme.md +0 -78
  267. package/dist/tag/Tag.js +0 -282
  268. package/dist/toggle/Toggle.stories.js +0 -297
  269. package/dist/toggle/readme.md +0 -80
  270. package/dist/toggle-group/ToggleGroup.js +0 -223
  271. package/dist/upload/Upload.stories.js +0 -72
  272. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  273. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  274. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  275. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  276. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  277. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  278. package/dist/upload/file-upload/FileToUpload.js +0 -184
  279. package/dist/upload/file-upload/audio-icon.svg +0 -4
  280. package/dist/upload/file-upload/close.svg +0 -4
  281. package/dist/upload/file-upload/file-icon.svg +0 -4
  282. package/dist/upload/file-upload/video-icon.svg +0 -4
  283. package/dist/upload/readme.md +0 -37
  284. package/dist/upload/transaction/Transaction.js +0 -175
  285. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  286. package/dist/upload/transaction/audio-icon.svg +0 -4
  287. package/dist/upload/transaction/error-icon.svg +0 -4
  288. package/dist/upload/transaction/file-icon-err.svg +0 -4
  289. package/dist/upload/transaction/file-icon.svg +0 -4
  290. package/dist/upload/transaction/image-icon-err.svg +0 -4
  291. package/dist/upload/transaction/image-icon.svg +0 -4
  292. package/dist/upload/transaction/success-icon.svg +0 -4
  293. package/dist/upload/transaction/video-icon-err.svg +0 -4
  294. package/dist/upload/transaction/video-icon.svg +0 -4
  295. package/dist/upload/transactions/Transactions.js +0 -138
  296. package/dist/wizard/invalid_icon.svg +0 -5
  297. package/dist/wizard/valid_icon.svg +0 -5
  298. package/dist/wizard/validation-wrong.svg +0 -6
  299. package/test/Accordion.test.js +0 -33
  300. package/test/AccordionGroup.test.js +0 -125
  301. package/test/Alert.test.js +0 -53
  302. package/test/Box.test.js +0 -10
  303. package/test/Button.test.js +0 -18
  304. package/test/Card.test.js +0 -30
  305. package/test/Checkbox.test.js +0 -45
  306. package/test/Chip.test.js +0 -25
  307. package/test/Date.test.js +0 -393
  308. package/test/Dialog.test.js +0 -23
  309. package/test/Dropdown.test.js +0 -145
  310. package/test/FileInput.test.js +0 -201
  311. package/test/Footer.test.js +0 -99
  312. package/test/Header.test.js +0 -39
  313. package/test/Heading.test.js +0 -35
  314. package/test/InputText.test.js +0 -240
  315. package/test/Link.test.js +0 -43
  316. package/test/NewDate.test.js +0 -232
  317. package/test/NewInputText.test.js +0 -734
  318. package/test/NewTextarea.test.js +0 -195
  319. package/test/Number.test.js +0 -257
  320. package/test/Paginator.test.js +0 -177
  321. package/test/Password.test.js +0 -83
  322. package/test/ProgressBar.test.js +0 -35
  323. package/test/Radio.test.js +0 -37
  324. package/test/ResultsetTable.test.js +0 -329
  325. package/test/Select.test.js +0 -212
  326. package/test/Sidenav.test.js +0 -45
  327. package/test/Slider.test.js +0 -82
  328. package/test/Spinner.test.js +0 -32
  329. package/test/Switch.test.js +0 -45
  330. package/test/Table.test.js +0 -36
  331. package/test/Tabs.test.js +0 -109
  332. package/test/TabsForSections.test.js +0 -34
  333. package/test/Tag.test.js +0 -32
  334. package/test/TextArea.test.js +0 -52
  335. package/test/ToggleGroup.test.js +0 -81
  336. package/test/Upload.test.js +0 -60
  337. package/test/Wizard.test.js +0 -130
  338. package/test/mocks/pngMock.js +0 -1
  339. package/test/mocks/svgMock.js +0 -1
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
- <path fill="none" d="M0 0h24v24H0V0z"/>
3
- <path d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zM6 20V4h7v5h5v11H6z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
- <path d="M18 4l2 4h-3l-2-4h-2l2 4h-3l-2-4H8l2 4H7L5 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4h-4z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,37 +0,0 @@
1
- # DXC Upload Component
2
-
3
- ## Usage
4
-
5
- ```js
6
- import { DxcUpload } from "@dxc-technology/halstack-react";
7
- ```
8
-
9
- ## Props
10
-
11
- <table>
12
- <tr style="background-color: grey">
13
- <td>Name</td>
14
- <td>Default</td>
15
- <td>Description</td>
16
- </tr>
17
- <tr>
18
- <td>onUpload: function</td>
19
- <td></td>
20
- <td>This function will be called when the user clicks the 'Upload' button for every file to be uploaded, we will send as a parameter the File object; apart from that this function should return one promise on which we should make 'then'(here we should show a Success alert) or 'catch' (in this case we would receive the error message as a string)</td>
21
- </tr>
22
-
23
- </table>
24
-
25
- ## Examples
26
-
27
- ```js
28
- import React from "react";
29
-
30
- import { DxcUpload } from "@dxc-technology/halstack-react";
31
-
32
- function App() {
33
- return <Upload callbackUpload={callbackFunc} />;
34
- }
35
-
36
- export default App;
37
- ```
@@ -1,175 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _propTypes = _interopRequireDefault(require("prop-types"));
17
-
18
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
- var _Tooltip = _interopRequireDefault(require("@material-ui/core/Tooltip"));
21
-
22
- var _successIcon = _interopRequireDefault(require("./success-icon.svg"));
23
-
24
- var _errorIcon = _interopRequireDefault(require("./error-icon.svg"));
25
-
26
- var _fileIcon = _interopRequireDefault(require("./file-icon.svg"));
27
-
28
- var _imageIcon = _interopRequireDefault(require("./image-icon.svg"));
29
-
30
- var _videoIcon = _interopRequireDefault(require("./video-icon.svg"));
31
-
32
- var _audioIcon = _interopRequireDefault(require("./audio-icon.svg"));
33
-
34
- var _fileIconErr = _interopRequireDefault(require("./file-icon-err.svg"));
35
-
36
- var _imageIconErr = _interopRequireDefault(require("./image-icon-err.svg"));
37
-
38
- var _videoIconErr = _interopRequireDefault(require("./video-icon-err.svg"));
39
-
40
- var _audioIconErr = _interopRequireDefault(require("./audio-icon-err.svg"));
41
-
42
- var _Spinner = _interopRequireDefault(require("../../spinner/Spinner"));
43
-
44
- var _useTheme = _interopRequireDefault(require("../../useTheme.js"));
45
-
46
- var _BackgroundColorContext = require("../../BackgroundColorContext.js");
47
-
48
- function _templateObject5() {
49
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n width: 80%;\n"]);
50
-
51
- _templateObject5 = function _templateObject5() {
52
- return data;
53
- };
54
-
55
- return data;
56
- }
57
-
58
- function _templateObject4() {
59
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background: ", ";\n width: 25px;\n height: 20px;\n max-width: 20%;\n"]);
60
-
61
- _templateObject4 = function _templateObject4() {
62
- return data;
63
- };
64
-
65
- return data;
66
- }
67
-
68
- function _templateObject3() {
69
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n margin-right: 16px;\n width: 80%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n"]);
70
-
71
- _templateObject3 = function _templateObject3() {
72
- return data;
73
- };
74
-
75
- return data;
76
- }
77
-
78
- function _templateObject2() {
79
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n mask: url(", ") no-repeat center;\n mask-size: ", ";\n height: ", ";\n width: ", ";\n margin-right: 16px;\n max-width: 20%;\n"]);
80
-
81
- _templateObject2 = function _templateObject2() {
82
- return data;
83
- };
84
-
85
- return data;
86
- }
87
-
88
- function _templateObject() {
89
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n max-width: 100%;\n display: flex;\n flex-direction: row;\n margin-bottom: 16px;\n color: ", ";\n .MuiCircularProgress-root {\n width: 28px !important;\n height: 28px !important;\n }\n"]);
90
-
91
- _templateObject = function _templateObject() {
92
- return data;
93
- };
94
-
95
- return data;
96
- }
97
-
98
- var DxcTransaction = function DxcTransaction(_ref) {
99
- var _ref$name = _ref.name,
100
- name = _ref$name === void 0 ? "" : _ref$name,
101
- _ref$type = _ref.type,
102
- type = _ref$type === void 0 ? "" : _ref$type,
103
- _ref$status = _ref.status,
104
- status = _ref$status === void 0 ? "" : _ref$status,
105
- _ref$message = _ref.message,
106
- message = _ref$message === void 0 ? "" : _ref$message;
107
- var colorsTheme = (0, _useTheme["default"])();
108
-
109
- var icon = status === "error" && (type.includes("image") && _imageIconErr["default"] || type.includes("video") && _videoIconErr["default"] || type.includes("audio") && _audioIconErr["default"] || _fileIconErr["default"]) || type.includes("image") && _imageIcon["default"] || type.includes("video") && _videoIcon["default"] || type.includes("audio") && _audioIcon["default"] || _fileIcon["default"];
110
-
111
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
112
- theme: colorsTheme.upload
113
- }, _react["default"].createElement(DXCTransaction, {
114
- status: status
115
- }, _react["default"].createElement(FileImage, {
116
- status: status,
117
- img: icon
118
- }), status === "processing" && _react["default"].createElement(FileData, null, _react["default"].createElement(FileName, null, name), _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
119
- color: colorsTheme.upload.backgroundColor
120
- }, _react["default"].createElement(_Spinner["default"], {
121
- mode: "small"
122
- }))) || status === "success" && _react["default"].createElement(FileData, null, _react["default"].createElement(FileName, null, name), _react["default"].createElement(FileStatus, {
123
- status: status
124
- })) || status === "error" && _react["default"].createElement(FileData, null, _react["default"].createElement(_Tooltip["default"], {
125
- title: message
126
- }, _react["default"].createElement(FileName, null, name)), _react["default"].createElement(FileStatus, {
127
- status: status
128
- }))));
129
- };
130
-
131
- DxcTransaction.propTypes = {
132
- name: _propTypes["default"].string,
133
- type: _propTypes["default"].string,
134
- status: _propTypes["default"].string,
135
- message: _propTypes["default"].string
136
- };
137
-
138
- var DXCTransaction = _styledComponents["default"].div(_templateObject(), function (props) {
139
- return props.theme.fontFamily;
140
- }, function (props) {
141
- return props.status === "error" && props.theme.errorColor;
142
- });
143
-
144
- var FileImage = _styledComponents["default"].div(_templateObject2(), function (props) {
145
- return props.status === "error" && props.theme.errorColor || props.theme.uploadedFileIconColor;
146
- }, function (props) {
147
- return props.img;
148
- }, function (props) {
149
- return "".concat(props.theme.uploadedFileIconSize, " ").concat(props.theme.uploadedFileIconSize);
150
- }, function (props) {
151
- return props.theme.uploadedFileIconSize;
152
- }, function (props) {
153
- return props.theme.uploadedFileIconSize;
154
- });
155
-
156
- var FileName = _styledComponents["default"].div(_templateObject3(), function (props) {
157
- return props.theme.fileNameFontSize;
158
- }, function (props) {
159
- return props.theme.fileNameFontStyle;
160
- }, function (props) {
161
- return props.theme.fileNameFontWeight;
162
- }, function (props) {
163
- return props.theme.fileNameFontTextTransform;
164
- }, function (props) {
165
- return props.theme.fileNameFontColor;
166
- });
167
-
168
- var FileStatus = _styledComponents["default"].div(_templateObject4(), function (props) {
169
- return props.status === "success" && "url('".concat(_successIcon["default"], "') no-repeat padding-box") || props.status === "error" && "url('".concat(_errorIcon["default"], "') no-repeat padding-box");
170
- });
171
-
172
- var FileData = _styledComponents["default"].div(_templateObject5());
173
-
174
- var _default = DxcTransaction;
175
- exports["default"] = _default;
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D0011B">
2
- <path fill="none" d="M0 0h24v24H0V0z"/>
3
- <path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D9D9D9">
2
- <path fill="none" d="M0 0h24v24H0V0z"/>
3
- <path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D0011B">
2
- <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D0011B">
2
- <path d="M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6H6zm7 7V3.5L18.5 9H13z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D9D9D9">
2
- <path d="M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6H6zm7 7V3.5L18.5 9H13z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D0011B">
2
- <path d="M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D9D9D9">
2
- <path d="M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#50B50F">
2
- <path fill="none" d="M0 0h24v24H0z"/>
3
- <path d="M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D0011B">
2
- <path d="M18 4l2 4h-3l-2-4h-2l2 4h-3l-2-4H8l2 4H7L5 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4h-4z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D9D9D9">
2
- <path d="M18 4l2 4h-3l-2-4h-2l2 4h-3l-2-4H8l2 4H7L5 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4h-4z"/>
3
- <path d="M0 0h24v24H0z" fill="none"/>
4
- </svg>
@@ -1,138 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
-
18
- var _propTypes = _interopRequireDefault(require("prop-types"));
19
-
20
- var _Transaction = _interopRequireDefault(require("../transaction/Transaction"));
21
-
22
- var _useTheme = _interopRequireDefault(require("../../useTheme.js"));
23
-
24
- function _templateObject5() {
25
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"]);
26
-
27
- _templateObject5 = function _templateObject5() {
28
- return data;
29
- };
30
-
31
- return data;
32
- }
33
-
34
- function _templateObject4() {
35
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n"]);
36
-
37
- _templateObject4 = function _templateObject4() {
38
- return data;
39
- };
40
-
41
- return data;
42
- }
43
-
44
- function _templateObject3() {
45
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n margin-bottom: 4px;\n"]);
46
-
47
- _templateObject3 = function _templateObject3() {
48
- return data;
49
- };
50
-
51
- return data;
52
- }
53
-
54
- function _templateObject2() {
55
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n padding-bottom: 35px;\n"]);
56
-
57
- _templateObject2 = function _templateObject2() {
58
- return data;
59
- };
60
-
61
- return data;
62
- }
63
-
64
- function _templateObject() {
65
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n max-width: 100%;\n width: 35%;\n padding-top: 46px;\n padding-left: 65px;\n border-radius: 4px 0px 4px 4px;\n box-shadow: 0px 0px 1px ", ";\n background-color: ", ";\n overflow: auto;\n ::-webkit-scrollbar {\n width: 3px;\n height: 3px;\n }\n ::-webkit-scrollbar-track {\n border-radius: 3px;\n background-color: ", ";\n }\n ::-webkit-scrollbar-thumb {\n border-radius: 3px;\n background-color: ", ";\n }\n"]);
66
-
67
- _templateObject = function _templateObject() {
68
- return data;
69
- };
70
-
71
- return data;
72
- }
73
-
74
- var DxcTransactions = function DxcTransactions(_ref) {
75
- var transactions = _ref.transactions;
76
- var colorsTheme = (0, _useTheme["default"])();
77
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
78
- theme: colorsTheme.upload
79
- }, _react["default"].createElement(DXCTransactions, null, _react["default"].createElement(TransactionsText, null, _react["default"].createElement(TransactionsTitle, null, "Files uploaded"), _react["default"].createElement(TransactionsSubTitle, null, _react["default"].createElement(TransactionsNumber, null, transactions && transactions.filter(function (file) {
80
- return file.status === "success";
81
- }).length), " ", "documents in total")), transactions.map(function (transaction) {
82
- return _react["default"].createElement(_Transaction["default"], {
83
- name: transaction.name,
84
- type: transaction.type,
85
- status: transaction.status,
86
- message: transaction.message
87
- });
88
- })));
89
- };
90
-
91
- DxcTransactions.propTypes = {
92
- transactions: _propTypes["default"].array
93
- };
94
-
95
- var DXCTransactions = _styledComponents["default"].div(_templateObject(), function (props) {
96
- return props.theme.fontFamily;
97
- }, function (props) {
98
- return props.theme.shadowColor;
99
- }, function (props) {
100
- return props.theme.backgroundColor;
101
- }, function (props) {
102
- return props.theme.scrollBarTrackColor;
103
- }, function (props) {
104
- return props.theme.scrollBarThumbColor;
105
- });
106
-
107
- var TransactionsText = _styledComponents["default"].span(_templateObject2());
108
-
109
- var TransactionsTitle = _styledComponents["default"].span(_templateObject3(), function (props) {
110
- return props.theme.uploadedFilesTitleFontSize;
111
- }, function (props) {
112
- return props.theme.uploadedFilesTitleFontStyle;
113
- }, function (props) {
114
- return props.theme.uploadedFilesTitleFontWeight;
115
- }, function (props) {
116
- return props.theme.uploadedFilesTitleFontTextTransform;
117
- }, function (props) {
118
- return props.theme.uploadedFilesTitleFontColor;
119
- });
120
-
121
- var TransactionsSubTitle = _styledComponents["default"].span(_templateObject4(), function (props) {
122
- return props.theme.uploadedFilesSubtitleFontSize;
123
- }, function (props) {
124
- return props.theme.uploadedFilesSubtitleFontStyle;
125
- }, function (props) {
126
- return props.theme.uploadedFilesSubtitleFontWeight;
127
- }, function (props) {
128
- return props.theme.uploadedFilesSubtitleFontTextTransform;
129
- }, function (props) {
130
- return props.theme.uploadedFilesSubtitleFontColor;
131
- });
132
-
133
- var TransactionsNumber = _styledComponents["default"].span(_templateObject5(), function (props) {
134
- return props.theme.uploadedFilesNumberFontWeight;
135
- });
136
-
137
- var _default = DxcTransactions;
138
- exports["default"] = _default;
@@ -1,5 +0,0 @@
1
- <svg id="highlight_off_black_18dp" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18">
2
- <path id="Path_2943" data-name="Path 2943" d="M0,0H18V18H0Z" fill="none"/>
3
- <path id="Path_2944" data-name="Path 2944" d="M10,4a6,6,0,1,0,6,6A6.01,6.01,0,0,0,10,4Zm3,7.945L11.945,13,10,11.06,8.059,13,7,11.945,8.944,10,7,8.059,8.059,7,10,8.944,11.945,7,13,8.059,11.06,10Z" transform="translate(-1.002 -1.002)" fill="#ffe6e9"/>
4
- <path id="Path_2945" data-name="Path 2945" d="M11.444,6.5,9.5,8.443,7.558,6.5,6.5,7.558,8.443,9.5,6.5,11.444,7.558,12.5,9.5,10.558,11.444,12.5,12.5,11.444,10.558,9.5,12.5,7.558ZM9.5,2A7.5,7.5,0,1,0,17,9.5,7.494,7.494,0,0,0,9.5,2Zm0,13.5a6,6,0,1,1,6-6A6.009,6.009,0,0,1,9.5,15.5Z" transform="translate(-0.501 -0.501)" fill="#d0011b"/>
5
- </svg>
@@ -1,5 +0,0 @@
1
- <svg id="check_circle_black_18dp" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18">
2
- <path id="Path_2946" data-name="Path 2946" d="M0,0H18V18H0Z" fill="none"/>
3
- <path id="Path_2947" data-name="Path 2947" d="M9.986,4a5.986,5.986,0,1,0,5.986,5.986A5.994,5.994,0,0,0,9.986,4Zm-1.5,9.727L5.5,10.734,6.551,9.679l1.938,1.93L13.42,6.679l1.055,1.063Z" transform="translate(-0.986 -0.986)" fill="#eafaef" opacity="0.999"/>
4
- <path id="Path_2948" data-name="Path 2948" d="M9.493,2a7.493,7.493,0,1,0,7.493,7.493A7.5,7.5,0,0,0,9.493,2Zm0,13.487a5.994,5.994,0,1,1,5.994-5.994A6,6,0,0,1,9.493,15.487Zm3.439-9.306L7.994,11.119,6.054,9.186,5,10.242l3,3,5.994-5.994Z" transform="translate(-0.493 -0.493)" fill="#24a148"/>
5
- </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,125 +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 renders with only one children", () => {
31
- const { getByText, getAllByRole } = render(
32
- <DxcAccordionGroup>
33
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium">
34
- <div>
35
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
36
- leo lobortis eget.
37
- </div>
38
- </DxcAccordionGroup.Accordion>
39
- </DxcAccordionGroup>
40
- );
41
-
42
- expect(getByText("Accordion1")).toBeTruthy();
43
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
44
- });
45
-
46
- test("Uncontrolled accordion group calls correct function on click", () => {
47
- const onActiveChange = jest.fn();
48
- const { getByText, getAllByRole } = render(
49
- <DxcAccordionGroup margin="large" onActiveChange={onActiveChange}>
50
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
51
- <div>
52
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
53
- leo lobortis eget.
54
- </div>
55
- </DxcAccordionGroup.Accordion>
56
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
57
- <div>
58
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
59
- leo lobortis eget.
60
- </div>
61
- </DxcAccordionGroup.Accordion>
62
- </DxcAccordionGroup>
63
- );
64
-
65
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
66
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
67
- fireEvent.click(getByText("Accordion1"));
68
- expect(onActiveChange).toHaveBeenCalled();
69
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
70
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
71
- });
72
-
73
- test("Controlled accordion with indexActive change", () => {
74
- const onActiveChange = jest.fn();
75
- const { getByText, getAllByRole, rerender } = render(
76
- <DxcAccordionGroup margin="large" indexActive={1} onActiveChange={onActiveChange}>
77
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
78
- <div>Text1</div>
79
- </DxcAccordionGroup.Accordion>
80
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
81
- <div>Text2</div>
82
- </DxcAccordionGroup.Accordion>
83
- </DxcAccordionGroup>
84
- );
85
- expect(getByText("Text1")).toBeTruthy();
86
- expect(getByText("Text2")).toBeTruthy();
87
- fireEvent.click(getByText("Accordion1"));
88
- fireEvent.click(getByText("Accordion2"));
89
- expect(onActiveChange.mock.calls[0][0]).toBe(0);
90
- expect(onActiveChange.mock.calls[1][0]).toBe(1);
91
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
92
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("true");
93
-
94
- rerender(
95
- <DxcAccordionGroup margin="large" indexActive={0} onActiveChange={onActiveChange}>
96
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
97
- <div>Text1</div>
98
- </DxcAccordionGroup.Accordion>
99
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
100
- <div>Text2</div>
101
- </DxcAccordionGroup.Accordion>
102
- </DxcAccordionGroup>
103
- );
104
-
105
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
106
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
107
- });
108
-
109
- test("Disabled uncontrolled accordion group", () => {
110
- const onActiveChange = jest.fn();
111
- const { getByText } = render(
112
- <DxcAccordionGroup margin="large" onActiveChange={onActiveChange} disabled={true}>
113
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
114
- <div>Text1</div>
115
- </DxcAccordionGroup.Accordion>
116
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
117
- <div>Text2</div>
118
- </DxcAccordionGroup.Accordion>
119
- </DxcAccordionGroup>
120
- );
121
- fireEvent.click(getByText("Accordion1"));
122
- fireEvent.click(getByText("Accordion2"));
123
- expect(onActiveChange).toHaveBeenCalledTimes(0);
124
- });
125
- });