@dxc-technology/halstack-react 0.0.0-58e75a5 → 0.0.0-59568e7

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 (475) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +298 -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/alert/Alert.js +293 -0
  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/button/Button.js +174 -0
  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 +66 -103
  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/common/variables.js +1484 -0
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +372 -0
  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/dropdown/Dropdown.js +391 -0
  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 +593 -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 +185 -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/footer/Icons.js +77 -0
  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 +303 -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/header/Icons.js +34 -0
  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 +31 -90
  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/layout/Icons.js +55 -0
  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} +141 -99
  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/NumberContext.js → number-input/NumberInputContext.js} +6 -3
  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 +38 -27
  160. package/paginator/Icons.js +66 -0
  161. package/paginator/Paginator.d.ts +4 -0
  162. package/paginator/Paginator.js +171 -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/Password.js → password-input/PasswordInput.js} +51 -81
  169. package/password-input/PasswordInput.stories.tsx +131 -0
  170. package/password-input/PasswordInput.test.js +180 -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/progress-bar/ProgressBar.js +170 -0
  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 +112 -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 +282 -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 +152 -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 +645 -0
  217. package/select/Select.stories.tsx +594 -0
  218. package/select/Select.test.js +2120 -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/sidenav/Sidenav.js +136 -0
  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/slider/Slider.js +318 -0
  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 +195 -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/text-input/TextInput.js +770 -0
  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/new-textarea/NewTextarea.js → textarea/Textarea.js} +91 -156
  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/toggle-group/ToggleGroup.js +215 -0
  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/useTranslatedLabels.d.ts +2 -0
  294. package/useTranslatedLabels.js +20 -0
  295. package/wizard/Wizard.d.ts +4 -0
  296. package/wizard/Wizard.js +292 -0
  297. package/wizard/Wizard.stories.tsx +214 -0
  298. package/wizard/Wizard.test.js +141 -0
  299. package/wizard/types.d.ts +64 -0
  300. package/wizard/types.js +5 -0
  301. package/README.md +0 -66
  302. package/babel.config.js +0 -8
  303. package/dist/BackgroundColorContext.js +0 -46
  304. package/dist/ThemeContext.js +0 -216
  305. package/dist/accordion/Accordion.js +0 -348
  306. package/dist/accordion/Accordion.stories.js +0 -207
  307. package/dist/accordion/readme.md +0 -96
  308. package/dist/accordion-group/AccordionGroup.js +0 -188
  309. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  310. package/dist/accordion-group/readme.md +0 -70
  311. package/dist/alert/Alert.js +0 -392
  312. package/dist/alert/Alert.stories.js +0 -158
  313. package/dist/alert/close.svg +0 -4
  314. package/dist/alert/error.svg +0 -4
  315. package/dist/alert/info.svg +0 -4
  316. package/dist/alert/readme.md +0 -43
  317. package/dist/alert/success.svg +0 -4
  318. package/dist/alert/warning.svg +0 -4
  319. package/dist/badge/Badge.js +0 -63
  320. package/dist/button/Button.js +0 -232
  321. package/dist/button/Button.stories.js +0 -224
  322. package/dist/button/readme.md +0 -93
  323. package/dist/card/Card.js +0 -254
  324. package/dist/checkbox/Checkbox.stories.js +0 -144
  325. package/dist/checkbox/readme.md +0 -116
  326. package/dist/chip/Chip.js +0 -265
  327. package/dist/common/variables.js +0 -1365
  328. package/dist/date/Date.js +0 -381
  329. package/dist/date/Date.stories.js +0 -205
  330. package/dist/date/readme.md +0 -73
  331. package/dist/dialog/Dialog.js +0 -240
  332. package/dist/dialog/Dialog.stories.js +0 -217
  333. package/dist/dialog/readme.md +0 -32
  334. package/dist/dropdown/Dropdown.js +0 -504
  335. package/dist/dropdown/Dropdown.stories.js +0 -249
  336. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  337. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  338. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  339. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  340. package/dist/dropdown/readme.md +0 -69
  341. package/dist/footer/Footer.js +0 -395
  342. package/dist/footer/Footer.stories.js +0 -94
  343. package/dist/footer/dxc_logo.svg +0 -15
  344. package/dist/footer/readme.md +0 -41
  345. package/dist/header/Header.js +0 -423
  346. package/dist/header/Header.stories.js +0 -176
  347. package/dist/header/close_icon.svg +0 -1
  348. package/dist/header/dxc_logo_black.svg +0 -8
  349. package/dist/header/hamb_menu_black.svg +0 -1
  350. package/dist/header/hamb_menu_white.svg +0 -1
  351. package/dist/header/readme.md +0 -33
  352. package/dist/input-text/InputText.js +0 -707
  353. package/dist/input-text/InputText.stories.js +0 -209
  354. package/dist/input-text/error.svg +0 -1
  355. package/dist/input-text/readme.md +0 -91
  356. package/dist/layout/ApplicationLayout.js +0 -331
  357. package/dist/layout/facebook.svg +0 -45
  358. package/dist/layout/linkedin.svg +0 -50
  359. package/dist/layout/twitter.svg +0 -53
  360. package/dist/link/Link.js +0 -241
  361. package/dist/link/readme.md +0 -51
  362. package/dist/new-date/NewDate.js +0 -399
  363. package/dist/new-input-text/NewInputText.js +0 -957
  364. package/dist/number/Number.js +0 -134
  365. package/dist/paginator/Paginator.js +0 -289
  366. package/dist/paginator/images/next.svg +0 -3
  367. package/dist/paginator/images/nextPage.svg +0 -3
  368. package/dist/paginator/images/previous.svg +0 -3
  369. package/dist/paginator/images/previousPage.svg +0 -3
  370. package/dist/paginator/readme.md +0 -50
  371. package/dist/password/styles.css +0 -3
  372. package/dist/progress-bar/ProgressBar.js +0 -206
  373. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  374. package/dist/progress-bar/readme.md +0 -63
  375. package/dist/radio/Radio.stories.js +0 -166
  376. package/dist/radio/readme.md +0 -70
  377. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  378. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  379. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  380. package/dist/select/Select.js +0 -585
  381. package/dist/select/Select.stories.js +0 -235
  382. package/dist/select/readme.md +0 -72
  383. package/dist/sidenav/Sidenav.js +0 -177
  384. package/dist/slider/Slider.js +0 -315
  385. package/dist/slider/Slider.stories.js +0 -241
  386. package/dist/slider/readme.md +0 -64
  387. package/dist/spinner/Spinner.js +0 -218
  388. package/dist/spinner/Spinner.stories.js +0 -183
  389. package/dist/spinner/readme.md +0 -65
  390. package/dist/switch/Switch.js +0 -222
  391. package/dist/switch/Switch.stories.js +0 -134
  392. package/dist/switch/readme.md +0 -133
  393. package/dist/tabs/Tabs.js +0 -343
  394. package/dist/tabs/Tabs.stories.js +0 -130
  395. package/dist/tabs/readme.md +0 -78
  396. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  397. package/dist/tabs-for-sections/readme.md +0 -78
  398. package/dist/tag/Tag.js +0 -288
  399. package/dist/textarea/Textarea.js +0 -264
  400. package/dist/toggle/Toggle.js +0 -220
  401. package/dist/toggle/Toggle.stories.js +0 -297
  402. package/dist/toggle/readme.md +0 -80
  403. package/dist/toggle-group/ToggleGroup.js +0 -241
  404. package/dist/toggle-group/readme.md +0 -82
  405. package/dist/upload/Upload.js +0 -205
  406. package/dist/upload/Upload.stories.js +0 -72
  407. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  408. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  409. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  410. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  411. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  412. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  413. package/dist/upload/file-upload/FileToUpload.js +0 -184
  414. package/dist/upload/file-upload/audio-icon.svg +0 -4
  415. package/dist/upload/file-upload/close.svg +0 -4
  416. package/dist/upload/file-upload/file-icon.svg +0 -4
  417. package/dist/upload/file-upload/video-icon.svg +0 -4
  418. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  419. package/dist/upload/readme.md +0 -37
  420. package/dist/upload/transaction/Transaction.js +0 -175
  421. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  422. package/dist/upload/transaction/audio-icon.svg +0 -4
  423. package/dist/upload/transaction/error-icon.svg +0 -4
  424. package/dist/upload/transaction/file-icon-err.svg +0 -4
  425. package/dist/upload/transaction/file-icon.svg +0 -4
  426. package/dist/upload/transaction/image-icon-err.svg +0 -4
  427. package/dist/upload/transaction/image-icon.svg +0 -4
  428. package/dist/upload/transaction/success-icon.svg +0 -4
  429. package/dist/upload/transaction/video-icon-err.svg +0 -4
  430. package/dist/upload/transaction/video-icon.svg +0 -4
  431. package/dist/upload/transactions/Transactions.js +0 -138
  432. package/dist/wizard/Wizard.js +0 -411
  433. package/dist/wizard/invalid_icon.svg +0 -5
  434. package/dist/wizard/valid_icon.svg +0 -5
  435. package/dist/wizard/validation-wrong.svg +0 -6
  436. package/test/Accordion.test.js +0 -33
  437. package/test/AccordionGroup.test.js +0 -125
  438. package/test/Alert.test.js +0 -53
  439. package/test/Box.test.js +0 -10
  440. package/test/Button.test.js +0 -18
  441. package/test/Card.test.js +0 -30
  442. package/test/Checkbox.test.js +0 -45
  443. package/test/Chip.test.js +0 -25
  444. package/test/Date.test.js +0 -393
  445. package/test/Dialog.test.js +0 -23
  446. package/test/Dropdown.test.js +0 -145
  447. package/test/Footer.test.js +0 -99
  448. package/test/Header.test.js +0 -39
  449. package/test/Heading.test.js +0 -35
  450. package/test/InputText.test.js +0 -240
  451. package/test/Link.test.js +0 -43
  452. package/test/NewDate.test.js +0 -203
  453. package/test/NewInputText.test.js +0 -817
  454. package/test/NewTextarea.test.js +0 -201
  455. package/test/Number.test.js +0 -241
  456. package/test/Paginator.test.js +0 -177
  457. package/test/Password.test.js +0 -76
  458. package/test/ProgressBar.test.js +0 -35
  459. package/test/Radio.test.js +0 -37
  460. package/test/ResultsetTable.test.js +0 -330
  461. package/test/Select.test.js +0 -189
  462. package/test/Sidenav.test.js +0 -45
  463. package/test/Slider.test.js +0 -82
  464. package/test/Spinner.test.js +0 -27
  465. package/test/Switch.test.js +0 -45
  466. package/test/Table.test.js +0 -36
  467. package/test/Tabs.test.js +0 -109
  468. package/test/TabsForSections.test.js +0 -34
  469. package/test/Tag.test.js +0 -32
  470. package/test/TextArea.test.js +0 -52
  471. package/test/ToggleGroup.test.js +0 -81
  472. package/test/Upload.test.js +0 -60
  473. package/test/Wizard.test.js +0 -130
  474. package/test/mocks/pngMock.js +0 -1
  475. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _ExpansionPanel = _interopRequireDefault(require("@material-ui/core/ExpansionPanel"));
23
+
24
+ var _ExpansionPanelSummary = _interopRequireDefault(require("@material-ui/core/ExpansionPanelSummary"));
25
+
26
+ var _ExpansionPanelDetails = _interopRequireDefault(require("@material-ui/core/ExpansionPanelDetails"));
27
+
28
+ var _ExpandMore = _interopRequireDefault(require("@material-ui/icons/ExpandMore"));
29
+
30
+ var _utils = require("../common/utils.js");
31
+
32
+ var _variables = require("../common/variables.js");
33
+
34
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
35
+
36
+ var _BackgroundColorContext = require("../BackgroundColorContext");
37
+
38
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
39
+
40
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
41
+
42
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
+
44
+ var DxcAccordion = function DxcAccordion(_ref) {
45
+ var _ref$label = _ref.label,
46
+ label = _ref$label === void 0 ? "" : _ref$label,
47
+ defaultIsExpanded = _ref.defaultIsExpanded,
48
+ isExpanded = _ref.isExpanded,
49
+ icon = _ref.icon,
50
+ _ref$assistiveText = _ref.assistiveText,
51
+ assistiveText = _ref$assistiveText === void 0 ? "" : _ref$assistiveText,
52
+ _ref$disabled = _ref.disabled,
53
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
54
+ onChange = _ref.onChange,
55
+ children = _ref.children,
56
+ margin = _ref.margin,
57
+ padding = _ref.padding,
58
+ _ref$tabIndex = _ref.tabIndex,
59
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
60
+
61
+ var _useState = (0, _react.useState)(defaultIsExpanded !== null && defaultIsExpanded !== void 0 ? defaultIsExpanded : false),
62
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
63
+ innerIsExpanded = _useState2[0],
64
+ setInnerIsExpanded = _useState2[1];
65
+
66
+ var colorsTheme = (0, _useTheme["default"])();
67
+
68
+ var handlerAccordion = function handlerAccordion() {
69
+ if (isExpanded == null) {
70
+ setInnerIsExpanded(!innerIsExpanded);
71
+ }
72
+
73
+ if (typeof onChange === "function") {
74
+ onChange(isExpanded == null ? !innerIsExpanded : !isExpanded);
75
+ }
76
+ };
77
+
78
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
79
+ theme: colorsTheme.accordion
80
+ }, /*#__PURE__*/_react["default"].createElement(DXCAccordion, {
81
+ padding: padding,
82
+ margin: margin,
83
+ disabled: disabled,
84
+ icon: icon
85
+ }, /*#__PURE__*/_react["default"].createElement(_ExpansionPanel["default"], {
86
+ disabled: disabled,
87
+ onChange: handlerAccordion,
88
+ expanded: isExpanded != null ? isExpanded : innerIsExpanded
89
+ }, /*#__PURE__*/_react["default"].createElement(_ExpansionPanelSummary["default"], {
90
+ expandIcon: /*#__PURE__*/_react["default"].createElement(_ExpandMore["default"], null),
91
+ tabIndex: disabled ? -1 : tabIndex
92
+ }, /*#__PURE__*/_react["default"].createElement(AccordionInfo, {
93
+ disabled: disabled
94
+ }, icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
95
+ disabled: disabled
96
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(AccordionIcon, {
97
+ src: icon
98
+ }) : icon), /*#__PURE__*/_react["default"].createElement(AccordionLabel, null, label)), assistiveText && /*#__PURE__*/_react["default"].createElement(AccordionAssistiveText, {
99
+ disabled: disabled
100
+ }, assistiveText)), /*#__PURE__*/_react["default"].createElement(_ExpansionPanelDetails["default"], null, /*#__PURE__*/_react["default"].createElement(AccordionContent, {
101
+ disabled: disabled
102
+ }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
103
+ color: colorsTheme.accordion.backgroundColor
104
+ }, children))))));
105
+ };
106
+
107
+ var calculateWidth = function calculateWidth(margin) {
108
+ return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
109
+ };
110
+
111
+ var DXCAccordion = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n min-width: 280px;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n cursor: ", ";\n\n .MuiPaper-root {\n min-width: 0;\n display: flex;\n left: 85px;\n background-color: ", " !important;\n box-shadow: ", ";\n position: static;\n width: 100%;\n border-radius: ", ";\n\n &.Mui-expanded {\n border-radius: ", ";\n }\n &.MuiExpansionPanel-root {\n display: flex;\n flex-direction: column;\n min-height: 48px;\n }\n &.MuiExpansionPanel-rounded {\n border-radius: ", ";\n }\n .MuiButtonBase-root.MuiExpansionPanelSummary-root {\n min-height: 48px;\n height: 48px;\n\n :focus {\n outline-color: ", ";\n outline-style: ", ";\n outline-width: ", ";\n background-color: ", ";\n }\n :hover {\n background-color: ", ";\n }\n :active {\n background-color: ", ";\n }\n &.Mui-disabled {\n opacity: 1;\n }\n }\n .MuiButtonBase-root {\n border-radius: ", ";\n\n &.Mui-expanded {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n .MuiSvgIcon-root {\n opacity: 1;\n }\n }\n &.MuiIconButton-root {\n height: auto;\n }\n .MuiExpansionPanelSummary-content {\n padding-top: ", ";\n padding-bottom: ", ";\n padding-right: ", ";\n padding-left: ", ";\n min-width: 0;\n &.Mui-expanded {\n div:nth-child(2) {\n opacity: 1;\n }\n }\n :hover {\n div {\n opacity: 1;\n }\n }\n }\n }\n .MuiTouchRipple-root {\n display: none;\n }\n }\n .MuiCollapse-hidden {\n display: none;\n }\n .MuiCollapse-container {\n border-radius: 0px 0px 4px 4px;\n cursor: default;\n width: 100%;\n }\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n .MuiExpansionPanelDetails-root {\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n }\n"])), function (props) {
112
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
113
+ }, function (props) {
114
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
115
+ }, function (props) {
116
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
117
+ }, function (props) {
118
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
119
+ }, function (props) {
120
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
121
+ }, function (props) {
122
+ return calculateWidth(props.margin);
123
+ }, function (props) {
124
+ return props.disabled && "not-allowed" || "pointer";
125
+ }, function (props) {
126
+ return props.theme.backgroundColor;
127
+ }, function (props) {
128
+ return "".concat(props.theme.boxShadowOffsetX, " ").concat(props.theme.boxShadowOffsetY, " ").concat(props.theme.boxShadowBlur, " ").concat(props.theme.boxShadowColor);
129
+ }, function (props) {
130
+ return props.theme.borderRadius;
131
+ }, function (props) {
132
+ return props.theme.borderRadius;
133
+ }, function (props) {
134
+ return props.theme.borderRadius;
135
+ }, function (props) {
136
+ return props.theme.focusBorderColor;
137
+ }, function (props) {
138
+ return props.theme.focusBorderStyle;
139
+ }, function (props) {
140
+ return props.theme.focusBorderThickness;
141
+ }, function (props) {
142
+ return props.theme.backgroundColor;
143
+ }, function (props) {
144
+ return "".concat(props.theme.hoverBackgroundColor);
145
+ }, function (props) {
146
+ return "".concat(props.theme.hoverBackgroundColor);
147
+ }, function (props) {
148
+ return props.theme.borderRadius;
149
+ }, function (props) {
150
+ return props.theme.titleLabelPaddingTop;
151
+ }, function (props) {
152
+ return props.theme.titleLabelPaddingBottom;
153
+ }, function (props) {
154
+ return props.theme.titleLabelPaddingRight;
155
+ }, function (props) {
156
+ return props.theme.titleLabelPaddingLeft;
157
+ }, function (props) {
158
+ return props.disabled ? props.theme.disabledArrowColor : props.theme.arrowColor;
159
+ }, function (props) {
160
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
161
+ }, function (props) {
162
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
163
+ }, function (props) {
164
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
165
+ }, function (props) {
166
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
167
+ }, function (props) {
168
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
169
+ });
170
+
171
+ var AccordionInfo = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n padding-left: ", ";\n padding-right: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
172
+ return props.theme.titlePaddingLeft;
173
+ }, function (props) {
174
+ return props.theme.titlePaddingRight;
175
+ }, function (props) {
176
+ return props.theme.titleLabelFontFamily;
177
+ }, function (props) {
178
+ return props.theme.titleLabelFontSize;
179
+ }, function (props) {
180
+ return props.theme.titleLabelFontStyle;
181
+ }, function (props) {
182
+ return props.theme.titleFonLabeltWeight;
183
+ }, function (props) {
184
+ return props.disabled ? props.theme.disabledTitleLabelFontColor : props.theme.titleLabelFontColor;
185
+ });
186
+
187
+ var AccordionLabel = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
188
+
189
+ var AccordionContent = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n"])));
190
+
191
+ var AccordionAssistiveText = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n padding-left: ", ";\n padding-right: ", ";\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n flex: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: ", ";\n text-align: end;\n"])), function (props) {
192
+ return props.theme.assistiveTextPaddingLeft;
193
+ }, function (props) {
194
+ return props.theme.assistiveTextPaddingRight;
195
+ }, function (props) {
196
+ return props.theme.assistiveTextFontSize;
197
+ }, function (props) {
198
+ return props.theme.assistiveTextFontFamily;
199
+ }, function (props) {
200
+ return props.theme.assistiveTextFontStyle;
201
+ }, function (props) {
202
+ return props.theme.assistiveTextFontWeight;
203
+ }, function (props) {
204
+ return props.disabled ? props.theme.disabledAssistiveTextFontColor : props.theme.assistiveTextFontColor;
205
+ }, function (props) {
206
+ return props.theme.assistiveTextLetterSpacing;
207
+ }, function (props) {
208
+ return props.theme.assistiveTextMinWidth;
209
+ });
210
+
211
+ var IconContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
212
+ return props.theme.iconSize;
213
+ }, function (props) {
214
+ return props.theme.iconSize;
215
+ }, function (props) {
216
+ return props.theme.iconMarginLeft;
217
+ }, function (props) {
218
+ return props.theme.iconMarginRigth;
219
+ }, function (props) {
220
+ return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
221
+ });
222
+
223
+ var AccordionIcon = _styledComponents["default"].img(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])([""])));
224
+
225
+ var _default = DxcAccordion;
226
+ exports["default"] = _default;
@@ -0,0 +1,307 @@
1
+ import React from "react";
2
+ import DxcAccordion from "./Accordion";
3
+ import DxcHeading from "../heading/Heading";
4
+ import DxcTextInput from "../text-input/TextInput";
5
+ import DxcButton from "../button/Button";
6
+ import Title from "../../.storybook/components/Title";
7
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
8
+ import { HalstackProvider } from "../HalstackContext";
9
+
10
+ export default {
11
+ title: "Accordion",
12
+ component: DxcAccordion,
13
+ };
14
+
15
+ const folderIcon = (
16
+ <svg
17
+ xmlns="http://www.w3.org/2000/svg"
18
+ enable-background="new 0 0 24 24"
19
+ height="24px"
20
+ viewBox="0 0 24 24"
21
+ width="24px"
22
+ fill="currentColor"
23
+ >
24
+ <g>
25
+ <rect fill="none" height="24" width="24" />
26
+ </g>
27
+ <g>
28
+ <path d="M20,6h-8l-2-2H4C2.9,4,2.01,4.9,2.01,6L2,18c0,1.1,0.9,2,2,2h16c1.1,0,2-0.9,2-2V8C22,6.9,21.1,6,20,6z M16,16h2v-2h-2v-2 h2v-2h-2V8h4v10h-4V16z M16,16h-2v2H4V6h5.17l2,2H14v2h2v2h-2v2h2V16z" />
29
+ </g>
30
+ </svg>
31
+ );
32
+
33
+ const thumbIcon = (
34
+ <svg xmlns="http://www.w3.org/2000/svg" height="48px" viewBox="0 0 24 24" width="48px" fill="currentColor">
35
+ <path d="M0 0h24v24H0V0z" fill="none" />
36
+ <path d="M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z" />
37
+ </svg>
38
+ );
39
+
40
+ const advancedTheme = {
41
+ accordion: {
42
+ backgroundColor: "#000000",
43
+ assistiveTextFontColor: "#ffffff",
44
+ titleLabelFontColor: "#ffffff",
45
+ arrowColor: "#5f249f",
46
+ iconColor: "#5f249f",
47
+ },
48
+ };
49
+
50
+ export const Chromatic = () => (
51
+ <>
52
+ <Title title="Component anatomy" theme="light" level={2} />
53
+ <ExampleContainer>
54
+ <Title title="With label" theme="light" level={4} />
55
+ <DxcAccordion label="Accordion">
56
+ <div>
57
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
58
+ lobortis eget.
59
+ </div>
60
+ </DxcAccordion>
61
+ </ExampleContainer>
62
+ <ExampleContainer>
63
+ <Title title="With assistive text" theme="light" level={4} />
64
+ <DxcAccordion label="Accordion" assistiveText="Assistive text">
65
+ <div>
66
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
67
+ lobortis eget.
68
+ </div>
69
+ </DxcAccordion>
70
+ </ExampleContainer>
71
+ <ExampleContainer>
72
+ <Title title="With icon" theme="light" level={4} />
73
+ <DxcAccordion label="Accordion" assistiveText="Assistive text" icon={folderIcon}>
74
+ <div>
75
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
76
+ lobortis eget.
77
+ </div>
78
+ </DxcAccordion>
79
+ </ExampleContainer>
80
+ <ExampleContainer>
81
+ <Title title="With bigger icon 48x48" theme="light" level={4} />
82
+ <DxcAccordion label="Accordion" assistiveText="Assistive text" icon={thumbIcon}>
83
+ <div>
84
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
85
+ lobortis eget.
86
+ </div>
87
+ </DxcAccordion>
88
+ </ExampleContainer>
89
+ <Title title="States" theme="light" level={2} />
90
+ <ExampleContainer pseudoState="pseudo-focus">
91
+ <Title title="Focused" theme="light" level={4} />
92
+ <DxcAccordion label="Focused">
93
+ <div>
94
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
95
+ lobortis eget.
96
+ </div>
97
+ </DxcAccordion>
98
+ </ExampleContainer>
99
+ <ExampleContainer pseudoState="pseudo-hover">
100
+ <Title title="Hovered" theme="light" level={4} />
101
+ <DxcAccordion label="Hovered">
102
+ <div>
103
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
104
+ lobortis eget.
105
+ </div>
106
+ </DxcAccordion>
107
+ </ExampleContainer>
108
+ <ExampleContainer pseudoState="pseudo-active">
109
+ <Title title="Active" theme="light" level={4} />
110
+ <DxcAccordion label="Active">
111
+ <div>
112
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
113
+ lobortis eget.
114
+ </div>
115
+ </DxcAccordion>
116
+ </ExampleContainer>
117
+ <ExampleContainer>
118
+ <Title title="Disabled" theme="light" level={4} />
119
+ <DxcAccordion label="Disabled" assistiveText="Assistive text" icon={folderIcon} disabled>
120
+ <div>
121
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
122
+ lobortis eget.
123
+ </div>
124
+ </DxcAccordion>
125
+ </ExampleContainer>
126
+ <ExampleContainer>
127
+ <Title title="Background color provider over accordion content" theme="light" level={4} />
128
+ <HalstackProvider advancedTheme={advancedTheme}>
129
+ <DxcAccordion
130
+ label="Dark Accordion"
131
+ defaultIsExpanded
132
+ assistiveText="Assistive text"
133
+ icon={folderIcon}
134
+ padding="medium"
135
+ >
136
+ <div style={{ display: "flex", flexDirection: "column" }}>
137
+ <DxcTextInput
138
+ label="Label"
139
+ helperText="HelperText"
140
+ placeholder="Placeholder"
141
+ size="fillParent"
142
+ margin={{ bottom: "medium" }}
143
+ />
144
+ <DxcButton label="Submit" size="medium" />
145
+ </div>
146
+ </DxcAccordion>
147
+ </HalstackProvider>
148
+ </ExampleContainer>
149
+ <Title title="Paddings" theme="light" level={2} />
150
+ <ExampleContainer>
151
+ <Title title="Xxsmall padding" theme="light" level={4} />
152
+ <DxcAccordion label="Xxsmall padding" defaultIsExpanded padding="xxsmall">
153
+ <div>
154
+ <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
155
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
156
+ magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
157
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
158
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
159
+ est laborum.
160
+ </div>
161
+ </DxcAccordion>
162
+ </ExampleContainer>
163
+ <ExampleContainer>
164
+ <Title title="Xsmall padding" theme="light" level={4} />
165
+ <DxcAccordion label="Xsmall padding" defaultIsExpanded padding="xsmall">
166
+ <div>
167
+ <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
168
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
169
+ magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
170
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
171
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
172
+ est laborum.
173
+ </div>
174
+ </DxcAccordion>
175
+ </ExampleContainer>
176
+ <ExampleContainer>
177
+ <Title title="Small padding" theme="light" level={4} />
178
+ <DxcAccordion label="Small padding" defaultIsExpanded padding="small">
179
+ <div>
180
+ <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
181
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
182
+ magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
183
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
184
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
185
+ est laborum.
186
+ </div>
187
+ </DxcAccordion>
188
+ </ExampleContainer>
189
+ <ExampleContainer>
190
+ <Title title="Medium padding" theme="light" level={4} />
191
+ <DxcAccordion label="Medium padding" defaultIsExpanded padding="medium">
192
+ <div>
193
+ <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
194
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
195
+ magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
196
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
197
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
198
+ est laborum.
199
+ </div>
200
+ </DxcAccordion>
201
+ </ExampleContainer>
202
+ <ExampleContainer>
203
+ <Title title="Large padding" theme="light" level={4} />
204
+ <DxcAccordion label="Large padding" defaultIsExpanded padding="large">
205
+ <div>
206
+ <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
207
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
208
+ magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
209
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
210
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
211
+ est laborum.
212
+ </div>
213
+ </DxcAccordion>
214
+ </ExampleContainer>
215
+ <ExampleContainer>
216
+ <Title title="Xlarge padding" theme="light" level={4} />
217
+ <DxcAccordion label="Xlarge padding" defaultIsExpanded padding="xlarge">
218
+ <div>
219
+ <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
220
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
221
+ magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
222
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
223
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
224
+ est laborum.
225
+ </div>
226
+ </DxcAccordion>
227
+ </ExampleContainer>
228
+ <ExampleContainer>
229
+ <Title title="Xxlarge padding" theme="light" level={4} />
230
+ <DxcAccordion label="Xxlarge padding" defaultIsExpanded padding="xxlarge">
231
+ <div>
232
+ <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
233
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
234
+ magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
235
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
236
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
237
+ est laborum.
238
+ </div>
239
+ </DxcAccordion>
240
+ </ExampleContainer>
241
+ <Title title="Margins" theme="light" level={2} />
242
+ <ExampleContainer>
243
+ <Title title="Xxsmall margin" theme="light" level={4} />
244
+ <DxcAccordion label="Xxsmall margin" margin="xxsmall">
245
+ <div>
246
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
247
+ lobortis eget.
248
+ </div>
249
+ </DxcAccordion>
250
+ </ExampleContainer>
251
+ <ExampleContainer>
252
+ <Title title="Xsmall margin" theme="light" level={4} />
253
+ <DxcAccordion label="Xsmall margin" margin="xsmall">
254
+ <div>
255
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
256
+ lobortis eget.
257
+ </div>
258
+ </DxcAccordion>
259
+ </ExampleContainer>
260
+ <ExampleContainer>
261
+ <Title title="Small margin" theme="light" level={4} />
262
+ <DxcAccordion label="Small margin" margin="small">
263
+ <div>
264
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
265
+ lobortis eget.
266
+ </div>
267
+ </DxcAccordion>
268
+ </ExampleContainer>
269
+ <ExampleContainer>
270
+ <Title title="Medium margin" theme="light" level={4} />
271
+ <DxcAccordion label="Medium margin" margin="medium">
272
+ <div>
273
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
274
+ lobortis eget.
275
+ </div>
276
+ </DxcAccordion>
277
+ </ExampleContainer>
278
+ <ExampleContainer>
279
+ <Title title="Large margin" theme="light" level={4} />
280
+ <DxcAccordion label="Large margin" margin="large">
281
+ <div>
282
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
283
+ lobortis eget.
284
+ </div>
285
+ </DxcAccordion>
286
+ </ExampleContainer>
287
+ <ExampleContainer>
288
+ <Title title="Xlarge margin" theme="light" level={4} />
289
+ <DxcAccordion label="Xlarge margin" margin="xlarge">
290
+ <div>
291
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
292
+ lobortis eget.
293
+ </div>
294
+ </DxcAccordion>
295
+ </ExampleContainer>
296
+ <ExampleContainer>
297
+ <Title title="Xxlarge margin" theme="light" level={4} />
298
+ <DxcAccordion label="Xxlarge margin" margin="xxlarge">
299
+ <div>
300
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
301
+ lobortis eget.
302
+ </div>
303
+ </DxcAccordion>
304
+ <hr />
305
+ </ExampleContainer>
306
+ </>
307
+ );
@@ -0,0 +1,72 @@
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 _Accordion = _interopRequireDefault(require("./Accordion"));
10
+
11
+ describe("Accordion component tests", function () {
12
+ test("Accordion renders with correct text", function () {
13
+ var onChange = jest.fn();
14
+
15
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
16
+ label: "Accordion",
17
+ assistiveText: "Assistive text",
18
+ onChange: onChange
19
+ })),
20
+ getByText = _render.getByText;
21
+
22
+ expect(getByText("Accordion")).toBeTruthy();
23
+ expect(getByText("Assistive text")).toBeTruthy();
24
+ });
25
+ test("Accordion renders expanded by default when it is uncontrolled", function () {
26
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
27
+ label: "Accordion",
28
+ defaultIsExpanded: true
29
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "test-expanded"))),
30
+ getByRole = _render2.getByRole;
31
+
32
+ var accordion = getByRole("button");
33
+ expect(accordion.getAttribute("aria-expanded")).toBe("true");
34
+ });
35
+ test("Calls correct function on click", function () {
36
+ var onChange = jest.fn();
37
+
38
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
39
+ label: "Accordion",
40
+ onChange: onChange
41
+ })),
42
+ getByText = _render3.getByText;
43
+
44
+ _react2.fireEvent.click(getByText("Accordion"));
45
+
46
+ expect(onChange).toHaveBeenCalled();
47
+ });
48
+ test("Controlled accordion", function () {
49
+ var onChange = jest.fn();
50
+
51
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
52
+ label: "Accordion",
53
+ onChange: onChange,
54
+ isExpanded: true
55
+ })),
56
+ getByText = _render4.getByText,
57
+ getByRole = _render4.getByRole;
58
+
59
+ expect(getByRole("button").getAttribute("aria-expanded")).toBe("true");
60
+
61
+ _react2.fireEvent.click(getByText("Accordion"));
62
+
63
+ _react2.fireEvent.click(getByText("Accordion"));
64
+
65
+ _react2.fireEvent.click(getByText("Accordion"));
66
+
67
+ expect(onChange).toHaveBeenCalledTimes(3);
68
+ expect(onChange.mock.calls[0][0]).toBe(false);
69
+ expect(onChange.mock.calls[1][0]).toBe(false);
70
+ expect(onChange.mock.calls[2][0]).toBe(false);
71
+ });
72
+ });