@dxc-technology/halstack-react 0.0.0-e1c85bf → 0.0.0-e33af28

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 (447) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/ThemeContext.d.ts +10 -0
  4. package/ThemeContext.js +243 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +226 -0
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +168 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/{dist/alert → alert}/Alert.js +43 -156
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +59 -0
  25. package/badge/types.d.ts +4 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +84 -0
  29. package/bleed/Bleed.stories.tsx +342 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/{dist/box → box}/Box.js +15 -45
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/{dist/button → button}/Button.js +27 -94
  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/{dist/card → card}/Card.js +34 -124
  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 +24 -77
  53. package/checkbox/Checkbox.stories.tsx +192 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +161 -0
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/{dist/common → common}/OpenSans.css +0 -0
  64. package/{dist/common → common}/RequiredComponent.js +3 -11
  65. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  68. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  75. package/{dist/common → common}/utils.js +0 -0
  76. package/{dist/common → common}/variables.js +263 -332
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +369 -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/{dist/dropdown → dropdown}/Dropdown.js +48 -197
  91. package/dropdown/Dropdown.stories.tsx +249 -0
  92. package/dropdown/Dropdown.test.js +189 -0
  93. package/dropdown/types.d.ts +80 -0
  94. package/dropdown/types.js +5 -0
  95. package/file-input/FileInput.d.ts +4 -0
  96. package/file-input/FileInput.js +590 -0
  97. package/file-input/FileInput.stories.tsx +507 -0
  98. package/file-input/FileInput.test.js +457 -0
  99. package/file-input/FileItem.d.ts +14 -0
  100. package/file-input/FileItem.js +184 -0
  101. package/file-input/types.d.ts +112 -0
  102. package/file-input/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +183 -0
  105. package/footer/Footer.stories.tsx +130 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/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 +300 -0
  113. package/header/Header.stories.tsx +172 -0
  114. package/header/Header.test.js +79 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/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 +3 -0
  137. package/{dist/link → link}/Link.js +22 -106
  138. package/link/Link.stories.tsx +151 -0
  139. package/link/Link.test.js +91 -0
  140. package/link/types.d.ts +70 -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} +131 -103
  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 +35 -25
  160. package/paginator/Icons.js +66 -0
  161. package/paginator/Paginator.d.ts +4 -0
  162. package/paginator/Paginator.js +192 -0
  163. package/paginator/Paginator.stories.tsx +63 -0
  164. package/paginator/Paginator.test.js +266 -0
  165. package/paginator/types.d.ts +38 -0
  166. package/paginator/types.js +5 -0
  167. package/password-input/PasswordInput.d.ts +4 -0
  168. package/{dist/password/Password.js → password-input/PasswordInput.js} +45 -82
  169. package/password-input/PasswordInput.stories.tsx +131 -0
  170. package/password-input/PasswordInput.test.js +181 -0
  171. package/password-input/types.d.ts +110 -0
  172. package/password-input/types.js +5 -0
  173. package/progress-bar/ProgressBar.d.ts +4 -0
  174. package/{dist/progress-bar → progress-bar}/ProgressBar.js +22 -94
  175. package/progress-bar/ProgressBar.stories.jsx +58 -0
  176. package/progress-bar/ProgressBar.test.js +65 -0
  177. package/progress-bar/types.d.ts +37 -0
  178. package/progress-bar/types.js +5 -0
  179. package/quick-nav/QuickNav.d.ts +4 -0
  180. package/quick-nav/QuickNav.js +66 -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 +17 -52
  186. package/radio/Radio.stories.tsx +192 -0
  187. package/radio/Radio.test.js +71 -0
  188. package/radio/types.d.ts +54 -0
  189. package/radio/types.js +5 -0
  190. package/radio-group/Radio.d.ts +4 -0
  191. package/radio-group/Radio.js +141 -0
  192. package/radio-group/RadioGroup.d.ts +4 -0
  193. package/radio-group/RadioGroup.js +280 -0
  194. package/radio-group/RadioGroup.stories.tsx +100 -0
  195. package/radio-group/RadioGroup.test.js +695 -0
  196. package/radio-group/types.d.ts +114 -0
  197. package/radio-group/types.js +5 -0
  198. package/resultsetTable/ResultsetTable.d.ts +4 -0
  199. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +43 -147
  200. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  201. package/resultsetTable/ResultsetTable.test.js +306 -0
  202. package/resultsetTable/types.d.ts +67 -0
  203. package/resultsetTable/types.js +5 -0
  204. package/row/Row.d.ts +3 -0
  205. package/row/Row.js +127 -0
  206. package/row/Row.stories.tsx +237 -0
  207. package/row/types.d.ts +28 -0
  208. package/row/types.js +5 -0
  209. package/select/Icons.d.ts +10 -0
  210. package/select/Icons.js +93 -0
  211. package/select/Option.d.ts +4 -0
  212. package/select/Option.js +110 -0
  213. package/select/Select.d.ts +4 -0
  214. package/select/Select.js +732 -0
  215. package/select/Select.stories.tsx +582 -0
  216. package/select/Select.test.js +2057 -0
  217. package/select/types.d.ts +194 -0
  218. package/select/types.js +5 -0
  219. package/sidenav/Sidenav.d.ts +9 -0
  220. package/{dist/sidenav → sidenav}/Sidenav.js +21 -64
  221. package/sidenav/Sidenav.stories.tsx +182 -0
  222. package/sidenav/Sidenav.test.js +56 -0
  223. package/sidenav/types.d.ts +50 -0
  224. package/sidenav/types.js +5 -0
  225. package/slider/Slider.d.ts +4 -0
  226. package/slider/Slider.js +318 -0
  227. package/slider/Slider.stories.tsx +177 -0
  228. package/slider/Slider.test.js +150 -0
  229. package/slider/types.d.ts +82 -0
  230. package/slider/types.js +5 -0
  231. package/spinner/Spinner.d.ts +4 -0
  232. package/spinner/Spinner.js +250 -0
  233. package/spinner/Spinner.stories.jsx +103 -0
  234. package/spinner/Spinner.test.js +64 -0
  235. package/spinner/types.d.ts +32 -0
  236. package/spinner/types.js +5 -0
  237. package/stack/Stack.d.ts +3 -0
  238. package/stack/Stack.js +97 -0
  239. package/stack/Stack.stories.tsx +164 -0
  240. package/stack/types.d.ts +24 -0
  241. package/stack/types.js +5 -0
  242. package/switch/Switch.d.ts +4 -0
  243. package/{dist/switch → switch}/Switch.js +45 -75
  244. package/switch/Switch.stories.tsx +160 -0
  245. package/switch/Switch.test.js +98 -0
  246. package/switch/types.d.ts +62 -0
  247. package/switch/types.js +5 -0
  248. package/table/Table.d.ts +4 -0
  249. package/{dist/table → table}/Table.js +12 -26
  250. package/table/Table.stories.jsx +277 -0
  251. package/table/Table.test.js +26 -0
  252. package/table/types.d.ts +21 -0
  253. package/table/types.js +5 -0
  254. package/tabs/Tabs.d.ts +4 -0
  255. package/tabs/Tabs.js +211 -0
  256. package/tabs/Tabs.stories.tsx +118 -0
  257. package/tabs/Tabs.test.js +140 -0
  258. package/tabs/types.d.ts +82 -0
  259. package/tabs/types.js +5 -0
  260. package/tag/Tag.d.ts +4 -0
  261. package/tag/Tag.js +186 -0
  262. package/tag/Tag.stories.tsx +142 -0
  263. package/tag/Tag.test.js +60 -0
  264. package/tag/types.d.ts +69 -0
  265. package/tag/types.js +5 -0
  266. package/text/Text.d.ts +7 -0
  267. package/text/Text.js +30 -0
  268. package/text/Text.stories.tsx +19 -0
  269. package/text-input/TextInput.d.ts +4 -0
  270. package/text-input/TextInput.js +796 -0
  271. package/text-input/TextInput.stories.tsx +474 -0
  272. package/text-input/TextInput.test.js +1712 -0
  273. package/text-input/types.d.ts +166 -0
  274. package/text-input/types.js +5 -0
  275. package/textarea/Textarea.d.ts +4 -0
  276. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +58 -134
  277. package/textarea/Textarea.stories.jsx +157 -0
  278. package/textarea/Textarea.test.js +437 -0
  279. package/textarea/types.d.ts +137 -0
  280. package/textarea/types.js +5 -0
  281. package/toggle-group/ToggleGroup.d.ts +4 -0
  282. package/toggle-group/ToggleGroup.js +215 -0
  283. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  284. package/toggle-group/ToggleGroup.test.js +156 -0
  285. package/toggle-group/types.d.ts +105 -0
  286. package/toggle-group/types.js +5 -0
  287. package/useTheme.d.ts +2 -0
  288. package/{dist/useTheme.js → useTheme.js} +1 -1
  289. package/wizard/Wizard.d.ts +4 -0
  290. package/wizard/Wizard.js +286 -0
  291. package/wizard/Wizard.stories.tsx +214 -0
  292. package/wizard/Wizard.test.js +141 -0
  293. package/wizard/types.d.ts +64 -0
  294. package/wizard/types.js +5 -0
  295. package/README.md +0 -66
  296. package/babel.config.js +0 -8
  297. package/dist/BackgroundColorContext.js +0 -46
  298. package/dist/ThemeContext.js +0 -248
  299. package/dist/accordion/Accordion.js +0 -353
  300. package/dist/accordion-group/AccordionGroup.js +0 -186
  301. package/dist/alert/index.d.ts +0 -51
  302. package/dist/badge/Badge.js +0 -63
  303. package/dist/checkbox/Checkbox.stories.js +0 -144
  304. package/dist/checkbox/readme.md +0 -116
  305. package/dist/chip/Chip.js +0 -265
  306. package/dist/date/Date.js +0 -379
  307. package/dist/date/Date.stories.js +0 -205
  308. package/dist/date/readme.md +0 -73
  309. package/dist/dialog/Dialog.js +0 -218
  310. package/dist/file-input/FileInput.js +0 -641
  311. package/dist/file-input/FileItem.js +0 -265
  312. package/dist/file-input/index.d.ts +0 -81
  313. package/dist/footer/Footer.js +0 -395
  314. package/dist/footer/Footer.stories.js +0 -94
  315. package/dist/footer/dxc_logo.svg +0 -15
  316. package/dist/footer/readme.md +0 -41
  317. package/dist/header/Header.js +0 -403
  318. package/dist/header/Header.stories.js +0 -176
  319. package/dist/header/close_icon.svg +0 -1
  320. package/dist/header/dxc_logo_black.svg +0 -8
  321. package/dist/header/hamb_menu_black.svg +0 -1
  322. package/dist/header/hamb_menu_white.svg +0 -1
  323. package/dist/header/readme.md +0 -33
  324. package/dist/input-text/InputText.js +0 -707
  325. package/dist/input-text/InputText.stories.js +0 -209
  326. package/dist/input-text/error.svg +0 -1
  327. package/dist/input-text/readme.md +0 -91
  328. package/dist/layout/ApplicationLayout.js +0 -331
  329. package/dist/layout/facebook.svg +0 -45
  330. package/dist/layout/linkedin.svg +0 -50
  331. package/dist/layout/twitter.svg +0 -53
  332. package/dist/link/readme.md +0 -51
  333. package/dist/main.d.ts +0 -7
  334. package/dist/new-date/NewDate.js +0 -400
  335. package/dist/new-date/index.d.ts +0 -95
  336. package/dist/new-input-text/NewInputText.js +0 -982
  337. package/dist/new-input-text/index.d.ts +0 -135
  338. package/dist/new-textarea/index.d.ts +0 -117
  339. package/dist/number/Number.js +0 -138
  340. package/dist/number/index.d.ts +0 -113
  341. package/dist/paginator/Paginator.js +0 -289
  342. package/dist/paginator/images/next.svg +0 -3
  343. package/dist/paginator/images/nextPage.svg +0 -3
  344. package/dist/paginator/images/previous.svg +0 -3
  345. package/dist/paginator/images/previousPage.svg +0 -3
  346. package/dist/paginator/readme.md +0 -50
  347. package/dist/password/index.d.ts +0 -94
  348. package/dist/password/styles.css +0 -3
  349. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  350. package/dist/progress-bar/readme.md +0 -63
  351. package/dist/radio/Radio.stories.js +0 -166
  352. package/dist/radio/readme.md +0 -70
  353. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  354. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  355. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  356. package/dist/select/Select.js +0 -549
  357. package/dist/slider/Slider.js +0 -319
  358. package/dist/slider/Slider.stories.js +0 -241
  359. package/dist/slider/readme.md +0 -64
  360. package/dist/spinner/Spinner.js +0 -381
  361. package/dist/spinner/Spinner.stories.js +0 -183
  362. package/dist/spinner/readme.md +0 -65
  363. package/dist/switch/Switch.stories.js +0 -134
  364. package/dist/switch/readme.md +0 -133
  365. package/dist/tabs/Tabs.js +0 -343
  366. package/dist/tabs/Tabs.stories.js +0 -130
  367. package/dist/tabs/readme.md +0 -78
  368. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  369. package/dist/tabs-for-sections/readme.md +0 -78
  370. package/dist/tag/Tag.js +0 -282
  371. package/dist/textarea/Textarea.js +0 -264
  372. package/dist/toggle/Toggle.js +0 -220
  373. package/dist/toggle/Toggle.stories.js +0 -297
  374. package/dist/toggle/readme.md +0 -80
  375. package/dist/toggle-group/ToggleGroup.js +0 -223
  376. package/dist/upload/Upload.js +0 -205
  377. package/dist/upload/Upload.stories.js +0 -72
  378. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  379. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  380. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  381. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  382. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  383. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  384. package/dist/upload/file-upload/FileToUpload.js +0 -184
  385. package/dist/upload/file-upload/audio-icon.svg +0 -4
  386. package/dist/upload/file-upload/close.svg +0 -4
  387. package/dist/upload/file-upload/file-icon.svg +0 -4
  388. package/dist/upload/file-upload/video-icon.svg +0 -4
  389. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  390. package/dist/upload/readme.md +0 -37
  391. package/dist/upload/transaction/Transaction.js +0 -175
  392. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  393. package/dist/upload/transaction/audio-icon.svg +0 -4
  394. package/dist/upload/transaction/error-icon.svg +0 -4
  395. package/dist/upload/transaction/file-icon-err.svg +0 -4
  396. package/dist/upload/transaction/file-icon.svg +0 -4
  397. package/dist/upload/transaction/image-icon-err.svg +0 -4
  398. package/dist/upload/transaction/image-icon.svg +0 -4
  399. package/dist/upload/transaction/success-icon.svg +0 -4
  400. package/dist/upload/transaction/video-icon-err.svg +0 -4
  401. package/dist/upload/transaction/video-icon.svg +0 -4
  402. package/dist/upload/transactions/Transactions.js +0 -138
  403. package/dist/wizard/Wizard.js +0 -411
  404. package/dist/wizard/invalid_icon.svg +0 -5
  405. package/dist/wizard/valid_icon.svg +0 -5
  406. package/dist/wizard/validation-wrong.svg +0 -6
  407. package/test/Accordion.test.js +0 -33
  408. package/test/AccordionGroup.test.js +0 -125
  409. package/test/Alert.test.js +0 -53
  410. package/test/Box.test.js +0 -10
  411. package/test/Button.test.js +0 -18
  412. package/test/Card.test.js +0 -30
  413. package/test/Checkbox.test.js +0 -45
  414. package/test/Chip.test.js +0 -25
  415. package/test/Date.test.js +0 -393
  416. package/test/Dialog.test.js +0 -23
  417. package/test/Dropdown.test.js +0 -145
  418. package/test/FileInput.test.js +0 -201
  419. package/test/Footer.test.js +0 -99
  420. package/test/Header.test.js +0 -39
  421. package/test/Heading.test.js +0 -35
  422. package/test/InputText.test.js +0 -240
  423. package/test/Link.test.js +0 -43
  424. package/test/NewDate.test.js +0 -232
  425. package/test/NewInputText.test.js +0 -734
  426. package/test/NewTextarea.test.js +0 -195
  427. package/test/Number.test.js +0 -257
  428. package/test/Paginator.test.js +0 -177
  429. package/test/Password.test.js +0 -83
  430. package/test/ProgressBar.test.js +0 -35
  431. package/test/Radio.test.js +0 -37
  432. package/test/ResultsetTable.test.js +0 -329
  433. package/test/Select.test.js +0 -212
  434. package/test/Sidenav.test.js +0 -45
  435. package/test/Slider.test.js +0 -82
  436. package/test/Spinner.test.js +0 -32
  437. package/test/Switch.test.js +0 -45
  438. package/test/Table.test.js +0 -36
  439. package/test/Tabs.test.js +0 -109
  440. package/test/TabsForSections.test.js +0 -34
  441. package/test/Tag.test.js +0 -32
  442. package/test/TextArea.test.js +0 -52
  443. package/test/ToggleGroup.test.js +0 -81
  444. package/test/Upload.test.js +0 -60
  445. package/test/Wizard.test.js +0 -130
  446. package/test/mocks/pngMock.js +0 -1
  447. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import SliderPropsType from "./types";
3
+ declare const DxcSlider: ({ label, name, defaultValue, value, helperText, minValue, maxValue, step, showLimitsValues, showInput, disabled, marks, onChange, onDragEnd, labelFormatCallback, margin, size, }: SliderPropsType) => JSX.Element;
4
+ export default DxcSlider;
@@ -0,0 +1,318 @@
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 _Slider = _interopRequireDefault(require("@material-ui/lab/Slider"));
21
+
22
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
+
24
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
25
+
26
+ var _variables = require("../common/variables.js");
27
+
28
+ var _utils = require("../common/utils.js");
29
+
30
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
31
+
32
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
+
34
+ var _uuid = require("uuid");
35
+
36
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
37
+
38
+ 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); }
39
+
40
+ 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; }
41
+
42
+ var DxcSlider = function DxcSlider(_ref) {
43
+ var _ref$label = _ref.label,
44
+ label = _ref$label === void 0 ? "" : _ref$label,
45
+ _ref$name = _ref.name,
46
+ name = _ref$name === void 0 ? "" : _ref$name,
47
+ defaultValue = _ref.defaultValue,
48
+ value = _ref.value,
49
+ _ref$helperText = _ref.helperText,
50
+ helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
51
+ _ref$minValue = _ref.minValue,
52
+ minValue = _ref$minValue === void 0 ? 0 : _ref$minValue,
53
+ _ref$maxValue = _ref.maxValue,
54
+ maxValue = _ref$maxValue === void 0 ? 100 : _ref$maxValue,
55
+ _ref$step = _ref.step,
56
+ step = _ref$step === void 0 ? 1 : _ref$step,
57
+ _ref$showLimitsValues = _ref.showLimitsValues,
58
+ showLimitsValues = _ref$showLimitsValues === void 0 ? false : _ref$showLimitsValues,
59
+ _ref$showInput = _ref.showInput,
60
+ showInput = _ref$showInput === void 0 ? false : _ref$showInput,
61
+ _ref$disabled = _ref.disabled,
62
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
63
+ _ref$marks = _ref.marks,
64
+ marks = _ref$marks === void 0 ? false : _ref$marks,
65
+ onChange = _ref.onChange,
66
+ onDragEnd = _ref.onDragEnd,
67
+ labelFormatCallback = _ref.labelFormatCallback,
68
+ margin = _ref.margin,
69
+ _ref$size = _ref.size,
70
+ size = _ref$size === void 0 ? "fillParent" : _ref$size;
71
+
72
+ var _useState = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : 0),
73
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
74
+ innerValue = _useState2[0],
75
+ setInnerValue = _useState2[1];
76
+
77
+ var colorsTheme = (0, _useTheme["default"])();
78
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
79
+
80
+ var _useState3 = (0, _react.useState)("label-".concat((0, _uuid.v4)())),
81
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
82
+ labelId = _useState4[0];
83
+
84
+ var minLabel = (0, _react.useMemo)(function () {
85
+ return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
86
+ }, [labelFormatCallback, minValue]);
87
+ var maxLabel = (0, _react.useMemo)(function () {
88
+ return labelFormatCallback ? labelFormatCallback(maxValue) : maxValue;
89
+ }, [labelFormatCallback, maxValue]);
90
+
91
+ var handlerSliderChange = function handlerSliderChange(event, newValue) {
92
+ var valueToCheck = value !== null && value !== void 0 ? value : innerValue;
93
+ valueToCheck !== newValue && setInnerValue(newValue);
94
+ onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
95
+ };
96
+
97
+ var handleSliderOnChangeCommited = function handleSliderOnChangeCommited(event, selectedValue) {
98
+ onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(selectedValue);
99
+ };
100
+
101
+ var handlerInputChange = function handlerInputChange(event) {
102
+ var intValue = parseInt(event.value, 10);
103
+
104
+ if (value == null) {
105
+ if (!Number.isNaN(intValue)) setInnerValue(intValue > maxValue ? maxValue : intValue);
106
+ }
107
+
108
+ if (!Number.isNaN(intValue)) {
109
+ onChange === null || onChange === void 0 ? void 0 : onChange(intValue > maxValue ? maxValue : intValue);
110
+ }
111
+ };
112
+
113
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
114
+ theme: colorsTheme.slider
115
+ }, /*#__PURE__*/_react["default"].createElement(Container, {
116
+ margin: margin,
117
+ size: size
118
+ }, /*#__PURE__*/_react["default"].createElement(Label, {
119
+ id: labelId,
120
+ disabled: disabled,
121
+ backgroundType: backgroundType
122
+ }, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
123
+ disabled: disabled,
124
+ backgroundType: backgroundType
125
+ }, helperText), /*#__PURE__*/_react["default"].createElement(SliderContainer, {
126
+ backgroundType: backgroundType
127
+ }, showLimitsValues && /*#__PURE__*/_react["default"].createElement(MinLabelContainer, {
128
+ backgroundType: backgroundType,
129
+ disabled: disabled
130
+ }, minLabel), /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
131
+ value: value != null && value >= 0 && value || innerValue,
132
+ min: minValue,
133
+ max: maxValue,
134
+ onChange: handlerSliderChange,
135
+ onChangeCommitted: handleSliderOnChangeCommited,
136
+ step: step,
137
+ marks: marks || [],
138
+ disabled: disabled,
139
+ "aria-labelledby": labelId
140
+ }), showLimitsValues && /*#__PURE__*/_react["default"].createElement(MaxLabelContainer, {
141
+ backgroundType: backgroundType,
142
+ disabled: disabled,
143
+ step: step
144
+ }, maxLabel), showInput && /*#__PURE__*/_react["default"].createElement(StyledTextInput, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
145
+ name: name,
146
+ value: value != null && value >= 0 && value.toString() || innerValue.toString(),
147
+ disabled: disabled,
148
+ onChange: handlerInputChange,
149
+ size: "fillParent"
150
+ })))));
151
+ };
152
+
153
+ var sizes = {
154
+ medium: "360px",
155
+ large: "480px",
156
+ fillParent: "100%"
157
+ };
158
+
159
+ var calculateWidth = function calculateWidth(margin, size) {
160
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
161
+ };
162
+
163
+ var Container = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n"])), function (props) {
164
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
165
+ }, function (props) {
166
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
167
+ }, function (props) {
168
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
169
+ }, function (props) {
170
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
171
+ }, function (props) {
172
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
173
+ }, function (props) {
174
+ return calculateWidth(props.margin, props.size);
175
+ });
176
+
177
+ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
178
+ return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
179
+ }, function (props) {
180
+ return props.theme.fontFamily;
181
+ }, function (props) {
182
+ return props.theme.labelFontSize;
183
+ }, function (props) {
184
+ return props.theme.labelFontStyle;
185
+ }, function (props) {
186
+ return props.theme.labelFontWeight;
187
+ }, function (props) {
188
+ return props.theme.labelLineHeight;
189
+ });
190
+
191
+ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
192
+ return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
193
+ }, function (props) {
194
+ return props.theme.fontFamily;
195
+ }, function (props) {
196
+ return props.theme.helperTextFontSize;
197
+ }, function (props) {
198
+ return props.theme.helperTextFontStyle;
199
+ }, function (props) {
200
+ return props.theme.helperTextFontWeight;
201
+ }, function (props) {
202
+ return props.theme.helperTextLineHeight;
203
+ });
204
+
205
+ var SliderContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 48px;\n align-items: center;\n\n .MuiSlider-root {\n min-width: 15rem;\n }\n .MuiSlider-container {\n padding: 30px 24px;\n }\n .MuiSlider-root.Mui-disabled {\n color: ", ";\n cursor: not-allowed;\n }\n .Mui-disabled {\n & .MuiSlider-thumb {\n height: ", ";\n width: ", ";\n background-color: ", ";\n top: ", ";\n }\n & .MuiSlider-track {\n background-color: ", ";\n }\n & .MuiSlider-rail {\n background-color: ", ";\n }\n & > .MuiSlider-mark.MuiSlider-markActive {\n background-color: ", " !important;\n }\n & > .MuiSlider-mark {\n background-color: ", ";\n height: ", ";\n width: ", ";\n border-radius: 18px;\n top: ", ";\n }\n }\n .MuiSlider-thumb {\n height: ", ";\n width: ", ";\n background-color: ", ";\n top: ", ";\n border-radius: 9999px;\n\n :hover,\n &.Mui-focusVisible {\n box-shadow: none;\n }\n &.MuiSlider-active {\n box-shadow: none;\n }\n :focus {\n outline: ", "\n auto 1px;\n outline-offset: 2px;\n background-color: ", ";\n }\n :hover {\n background-color: ", ";\n transform: scale(", ");\n transform-origin: center;\n height: ", ";\n width: ", ";\n top: ", ";\n }\n :active {\n background-color: ", ";\n transform: scale(", ");\n transform-origin: center;\n }\n }\n .MuiSlider-track {\n background-color: ", ";\n height: ", ";\n top: ", ";\n border-radius: 9999px;\n }\n .MuiSlider-track.MuiSlider-trackAfter {\n background-color: ", ";\n }\n .MuiSlider-rail {\n background-color: ", ";\n height: ", ";\n top: ", ";\n }\n .MuiSlider-mark.MuiSlider-markActive {\n background-color: ", ";\n }\n .MuiSlider-mark {\n background-color: ", ";\n height: ", ";\n width: ", ";\n border-radius: 18px;\n top: ", ";\n }\n"])), function (props) {
206
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
207
+ }, function (props) {
208
+ return props.theme.thumbHeight;
209
+ }, function (props) {
210
+ return props.theme.thumbWidth;
211
+ }, function (props) {
212
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
213
+ }, function (props) {
214
+ return props.theme.disabledThumbVerticalPosition;
215
+ }, function (props) {
216
+ return props.backgroundType === "dark" ? props.theme.disabledTrackLineColorOnDark : props.theme.disabledTrackLineColor;
217
+ }, function (props) {
218
+ return props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark : props.theme.disabledTotalLineColor;
219
+ }, function (props) {
220
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
221
+ }, function (props) {
222
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
223
+ }, function (props) {
224
+ return props.theme.tickHeight;
225
+ }, function (props) {
226
+ return props.theme.tickWidth;
227
+ }, function (props) {
228
+ return props.theme.disabledTickVerticalPosition;
229
+ }, function (props) {
230
+ return props.theme.thumbHeight;
231
+ }, function (props) {
232
+ return props.theme.thumbWidth;
233
+ }, function (props) {
234
+ return props.backgroundType === "dark" ? props.theme.thumbBackgroundColorOnDark : props.theme.thumbBackgroundColor;
235
+ }, function (props) {
236
+ return props.theme.thumbVerticalPosition;
237
+ }, function (props) {
238
+ return props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
239
+ }, function (props) {
240
+ return props.backgroundType === "dark" ? props.theme.focusThumbBackgroundColorOnDark : props.theme.focusThumbBackgroundColor;
241
+ }, function (props) {
242
+ return props.backgroundType === "dark" ? props.theme.hoverThumbBackgroundColorOnDark : props.theme.hoverThumbBackgroundColor;
243
+ }, function (props) {
244
+ return props.theme.hoverThumbScale;
245
+ }, function (props) {
246
+ return props.theme.hoverThumbHeight;
247
+ }, function (props) {
248
+ return props.theme.hoverThumbWidth;
249
+ }, function (props) {
250
+ return props.theme.hoverThumbVerticalPosition;
251
+ }, function (props) {
252
+ return props.backgroundType === "dark" ? props.theme.activeThumbBackgroundColorOnDark : props.theme.activeThumbBackgroundColor;
253
+ }, function (props) {
254
+ return props.theme.activeThumbScale;
255
+ }, function (props) {
256
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
257
+ }, function (props) {
258
+ return props.theme.trackLineThickness;
259
+ }, function (props) {
260
+ return props.theme.trackLineVerticalPosition;
261
+ }, function (props) {
262
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
263
+ }, function (props) {
264
+ return props.backgroundType === "dark" ? props.theme.totalLineColorOnDark : props.theme.totalLineColor;
265
+ }, function (props) {
266
+ return props.theme.totalLineThickness;
267
+ }, function (props) {
268
+ return props.theme.totalLineVerticalPosition;
269
+ }, function (props) {
270
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
271
+ }, function (props) {
272
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
273
+ }, function (props) {
274
+ return props.theme.tickHeight;
275
+ }, function (props) {
276
+ return props.theme.tickWidth;
277
+ }, function (props) {
278
+ return props.theme.tickVerticalPosition;
279
+ });
280
+
281
+ var MinLabelContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n white-space: nowrap;\n margin-right: ", ";\n"])), function (props) {
282
+ return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
283
+ }, function (props) {
284
+ return props.theme.fontFamily;
285
+ }, function (props) {
286
+ return props.theme.limitValuesFontSize;
287
+ }, function (props) {
288
+ return props.theme.limitValuesFontStyle;
289
+ }, function (props) {
290
+ return props.theme.limitValuesFontWeight;
291
+ }, function (props) {
292
+ return props.theme.limitValuesFontLetterSpacing;
293
+ }, function (props) {
294
+ return props.theme.floorLabelMarginRight;
295
+ });
296
+
297
+ var MaxLabelContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n white-space: nowrap;\n margin-left: ", ";\n"])), function (props) {
298
+ return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
299
+ }, function (props) {
300
+ return props.theme.fontFamily;
301
+ }, function (props) {
302
+ return props.theme.limitValuesFontSize;
303
+ }, function (props) {
304
+ return props.theme.limitValuesFontStyle;
305
+ }, function (props) {
306
+ return props.theme.limitValuesFontWeight;
307
+ }, function (props) {
308
+ return props.theme.limitValuesFontLetterSpacing;
309
+ }, function (props) {
310
+ return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
311
+ });
312
+
313
+ var StyledTextInput = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n label + .MuiInput-formControl {\n margin-top: 2px;\n }\n max-width: 70px;\n"])), function (props) {
314
+ return props.theme.inputMarginLeft;
315
+ });
316
+
317
+ var _default = DxcSlider;
318
+ exports["default"] = _default;
@@ -0,0 +1,177 @@
1
+ import React from "react";
2
+ import DxcSlider from "./Slider";
3
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import DarkContainer from "../../.storybook/components/DarkSection";
7
+
8
+ export default {
9
+ title: "Slider",
10
+ component: DxcSlider,
11
+ };
12
+
13
+ const labelFormat = (value) => `${value}E100000000000000000000000`;
14
+
15
+ export const Chromatic = () => (
16
+ <>
17
+ <Title title="States" theme="light" level={2} />
18
+ <ExampleContainer pseudoState="pseudo-hover">
19
+ <Title title="Hovered" theme="light" level={4} />
20
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
21
+ </ExampleContainer>
22
+ <ExampleContainer pseudoState="pseudo-active">
23
+ <Title title="Active" theme="light" level={4} />
24
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
25
+ </ExampleContainer>
26
+ <ExampleContainer pseudoState="pseudo-focus">
27
+ <Title title="Focused" theme="light" level={4} />
28
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
29
+ </ExampleContainer>
30
+ <ExampleContainer>
31
+ <Title title="Disabled" theme="light" level={4} />
32
+ <DxcSlider label="Slider" helperText="Help message" disabled showLimitsValues />
33
+ </ExampleContainer>
34
+ <ExampleContainer>
35
+ <Title title="Disabled discrete slider with input" theme="light" level={4} />
36
+ <DxcSlider
37
+ label="Slider"
38
+ helperText="Help message"
39
+ disabled
40
+ defaultValue={40}
41
+ minValue={0}
42
+ maxValue={50}
43
+ showLimitsValues
44
+ showInput
45
+ marks
46
+ step={10}
47
+ />
48
+ </ExampleContainer>
49
+ <Title title="Variants" theme="light" level={2} />
50
+ <ExampleContainer>
51
+ <Title title="Continuous slider" theme="light" level={4} />
52
+ <DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
53
+ </ExampleContainer>
54
+ <ExampleContainer>
55
+ <Title title="Discrete slider" theme="light" level={4} />
56
+ <DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
57
+ </ExampleContainer>
58
+ <ExampleContainer>
59
+ <Title title="Discrete slider with input" theme="light" level={4} />
60
+ <DxcSlider
61
+ defaultValue={20}
62
+ minValue={0}
63
+ maxValue={50}
64
+ label="Slider"
65
+ helperText="Help message"
66
+ showLimitsValues
67
+ showInput
68
+ marks
69
+ step={10}
70
+ />
71
+ </ExampleContainer>
72
+ <BackgroundColorProvider color="#333333">
73
+ <DarkContainer>
74
+ <Title title="Dark" theme="dark" level={2} />
75
+ <ExampleContainer pseudoState="pseudo-hover">
76
+ <Title title="Hovered" theme="dark" level={4} />
77
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
78
+ </ExampleContainer>
79
+ <ExampleContainer pseudoState="pseudo-active">
80
+ <Title title="Active" theme="dark" level={4} />
81
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
82
+ </ExampleContainer>
83
+ <ExampleContainer pseudoState="pseudo-focus">
84
+ <Title title="Focused" theme="dark" level={4} />
85
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
86
+ </ExampleContainer>
87
+ <ExampleContainer>
88
+ <Title title="Disabled" theme="dark" level={4} />
89
+ <DxcSlider label="Slider" helperText="Help message" disabled showLimitsValues />
90
+ </ExampleContainer>
91
+ <ExampleContainer>
92
+ <Title title="Disabled discrete slider with input" theme="dark" level={4} />
93
+ <DxcSlider
94
+ label="Slider"
95
+ helperText="Help message"
96
+ disabled
97
+ defaultValue={40}
98
+ minValue={0}
99
+ maxValue={50}
100
+ showLimitsValues
101
+ showInput
102
+ marks
103
+ step={5}
104
+ />
105
+ </ExampleContainer>
106
+ <ExampleContainer>
107
+ <Title title="Continuous slider" theme="dark" level={4} />
108
+ <DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
109
+ </ExampleContainer>
110
+ <ExampleContainer>
111
+ <Title title="Discrete slider" theme="dark" level={4} />
112
+ <DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
113
+ </ExampleContainer>
114
+ <ExampleContainer>
115
+ <Title title="Discrete slider with input" theme="dark" level={4} />
116
+ <DxcSlider
117
+ defaultValue={20}
118
+ minValue={0}
119
+ maxValue={50}
120
+ label="Slider"
121
+ helperText="Help message"
122
+ showLimitsValues
123
+ showInput
124
+ marks
125
+ step={10}
126
+ />
127
+ </ExampleContainer>
128
+ </DarkContainer>
129
+ </BackgroundColorProvider>
130
+ <Title title="Margins" theme="light" level={2} />
131
+ <ExampleContainer>
132
+ <Title title="Xxsmall" theme="light" level={4} />
133
+ <DxcSlider label="Xxsmall" margin="xxsmall" />
134
+ </ExampleContainer>
135
+ <ExampleContainer>
136
+ <Title title="Xsmall" theme="light" level={4} />
137
+ <DxcSlider label="Xsmall" margin="xsmall" />
138
+ </ExampleContainer>
139
+ <ExampleContainer>
140
+ <Title title="Small" theme="light" level={4} />
141
+ <DxcSlider label="Small" margin="small" />
142
+ </ExampleContainer>
143
+ <ExampleContainer>
144
+ <Title title="Medium" theme="light" level={4} />
145
+ <DxcSlider label="Medium" margin="medium" />
146
+ </ExampleContainer>
147
+ <ExampleContainer>
148
+ <Title title="Large" theme="light" level={4} />
149
+ <DxcSlider label="Large" margin="large" />
150
+ </ExampleContainer>
151
+ <ExampleContainer>
152
+ <Title title="Xlarge" theme="light" level={4} />
153
+ <DxcSlider label="Xlarge" margin="xlarge" />
154
+ </ExampleContainer>
155
+ <ExampleContainer>
156
+ <Title title="Xxlarge" theme="light" level={4} />
157
+ <DxcSlider label="Xxlarge" margin="xxlarge" />
158
+ </ExampleContainer>
159
+ <Title title="Sizes" theme="light" level={2} />
160
+ <ExampleContainer>
161
+ <Title title="Medium" theme="light" level={4} />
162
+ <DxcSlider label="Medium" size="medium" />
163
+ </ExampleContainer>
164
+ <ExampleContainer>
165
+ <Title title="Large" theme="light" level={4} />
166
+ <DxcSlider label="Large" size="large" />
167
+ </ExampleContainer>
168
+ <ExampleContainer>
169
+ <Title title="FillParent" theme="light" level={4} />
170
+ <DxcSlider label="FillParent" size="fillParent" />
171
+ </ExampleContainer>
172
+ <ExampleContainer>
173
+ <Title title="Large limit values labels" theme="light" level={4} />
174
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues labelFormatCallback={labelFormat} size="large" />
175
+ </ExampleContainer>
176
+ </>
177
+ );
@@ -0,0 +1,150 @@
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 _Slider = _interopRequireDefault(require("./Slider"));
10
+
11
+ describe("Slider component tests", function () {
12
+ test("Slider renders with correct text", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
14
+ minValue: 0,
15
+ maxValue: 100,
16
+ showLimitsValues: true
17
+ })),
18
+ getByText = _render.getByText;
19
+
20
+ expect(getByText("0")).toBeTruthy();
21
+ expect(getByText("100")).toBeTruthy();
22
+ });
23
+ test("Slider renders with correct initial value when it is uncontrolled", function () {
24
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
25
+ defaultValue: 30,
26
+ minValue: 0,
27
+ maxValue: 100,
28
+ showLimitsValues: true,
29
+ showInput: true
30
+ })),
31
+ getByRole = _render2.getByRole;
32
+
33
+ var slider = getByRole("slider");
34
+ var input = getByRole("textbox");
35
+ expect(slider.getAttribute("aria-valuenow")).toBe("30");
36
+ expect(input.value).toBe("30");
37
+ });
38
+ test("Calls correct function onChange in controlled slider", function () {
39
+ var onChange = jest.fn();
40
+
41
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
42
+ minValue: 0,
43
+ maxValue: 100,
44
+ onChange: onChange,
45
+ showLimitsValues: true,
46
+ value: 13,
47
+ showInput: true
48
+ })),
49
+ getByRole = _render3.getByRole;
50
+
51
+ expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
52
+ expect(getByRole("textbox").value).toBe("13");
53
+ (0, _react2.act)(function () {
54
+ _react2.fireEvent.change(getByRole("textbox"), {
55
+ target: {
56
+ value: 25
57
+ }
58
+ });
59
+ });
60
+ expect(onChange).toHaveBeenCalledWith(25);
61
+ expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
62
+ expect(getByRole("textbox").value).toBe("13");
63
+ });
64
+ test("Calls correct function onChange in uncontrolled slider", function () {
65
+ var onChange = jest.fn();
66
+
67
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
68
+ minValue: 0,
69
+ maxValue: 100,
70
+ onChange: onChange,
71
+ showLimitsValues: true,
72
+ showInput: true
73
+ })),
74
+ getByRole = _render4.getByRole;
75
+
76
+ (0, _react2.act)(function () {
77
+ _react2.fireEvent.change(getByRole("textbox"), {
78
+ target: {
79
+ value: 25
80
+ }
81
+ });
82
+ });
83
+ expect(onChange).toHaveBeenCalledWith(25);
84
+ expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("25");
85
+ expect(getByRole("textbox").value).toBe("25");
86
+ });
87
+ test("Disabled slider have disabled input", function () {
88
+ var onChange = jest.fn();
89
+
90
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
91
+ minValue: 0,
92
+ maxValue: 100,
93
+ onChange: onChange,
94
+ showLimitsValues: true,
95
+ disabled: true,
96
+ showInput: true,
97
+ value: 13
98
+ })),
99
+ getByRole = _render5.getByRole;
100
+
101
+ (0, _react2.act)(function () {
102
+ _react2.fireEvent.change(getByRole("textbox"), {
103
+ target: {
104
+ value: 25
105
+ }
106
+ });
107
+ });
108
+ expect(getByRole("textbox").hasAttribute("disabled")).toBeTruthy();
109
+ expect(getByRole("textbox").value).toBe("13");
110
+ });
111
+ test("Calls correct function onDragEnd", function () {
112
+ var onDragEnd = jest.fn();
113
+
114
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
115
+ minValue: 0,
116
+ maxValue: 100,
117
+ showLimitsValues: true,
118
+ showInput: true,
119
+ onDragEnd: onDragEnd,
120
+ value: 25
121
+ })),
122
+ getByRole = _render6.getByRole;
123
+
124
+ (0, _react2.act)(function () {
125
+ _react2.fireEvent.mouseDown(getByRole("slider"));
126
+
127
+ _react2.fireEvent.mouseUp(getByRole("slider"));
128
+ });
129
+ expect(onDragEnd).toHaveBeenCalled();
130
+ });
131
+ test("Calls correct function labelFormatCallback", function () {
132
+ var labelFormatCallback = jest.fn(function (x) {
133
+ return "".concat(x, "$");
134
+ });
135
+
136
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
137
+ minValue: 0,
138
+ maxValue: 100,
139
+ showLimitsValues: true,
140
+ showInput: true,
141
+ value: 25,
142
+ labelFormatCallback: labelFormatCallback
143
+ })),
144
+ getByText = _render7.getByText;
145
+
146
+ expect(getByText("0$")).toBeTruthy();
147
+ expect(getByText("100$")).toBeTruthy();
148
+ expect(labelFormatCallback).toHaveBeenCalledTimes(2);
149
+ });
150
+ });