@dxc-technology/halstack-react 0.0.0-5b2ad05 → 0.0.0-5b32837

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 (478) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1237 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.d.ts +4 -0
  7. package/accordion/Accordion.js +182 -0
  8. package/accordion/Accordion.stories.tsx +283 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +57 -0
  11. package/accordion/types.js +5 -0
  12. package/accordion-group/AccordionGroup.d.ts +8 -0
  13. package/accordion-group/AccordionGroup.js +101 -0
  14. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  15. package/accordion-group/AccordionGroup.test.js +98 -0
  16. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  17. package/accordion-group/AccordionGroupAccordion.js +31 -0
  18. package/accordion-group/types.d.ts +67 -0
  19. package/accordion-group/types.js +5 -0
  20. package/action-icon/ActionIcon.d.ts +4 -0
  21. package/action-icon/ActionIcon.js +47 -0
  22. package/action-icon/ActionIcon.stories.tsx +41 -0
  23. package/action-icon/ActionIcon.test.js +64 -0
  24. package/action-icon/types.d.ts +26 -0
  25. package/action-icon/types.js +5 -0
  26. package/alert/Alert.d.ts +4 -0
  27. package/{dist/alert → alert}/Alert.js +55 -204
  28. package/alert/Alert.stories.tsx +198 -0
  29. package/alert/Alert.test.js +75 -0
  30. package/alert/types.d.ts +49 -0
  31. package/alert/types.js +5 -0
  32. package/badge/Badge.d.ts +4 -0
  33. package/badge/Badge.js +159 -0
  34. package/badge/Badge.stories.tsx +210 -0
  35. package/badge/Badge.test.js +30 -0
  36. package/badge/types.d.ts +54 -0
  37. package/badge/types.js +5 -0
  38. package/bleed/Bleed.d.ts +3 -0
  39. package/bleed/Bleed.js +43 -0
  40. package/bleed/Bleed.stories.tsx +342 -0
  41. package/bleed/types.d.ts +37 -0
  42. package/bleed/types.js +5 -0
  43. package/box/Box.d.ts +4 -0
  44. package/box/Box.js +75 -0
  45. package/box/Box.stories.tsx +119 -0
  46. package/box/Box.test.js +13 -0
  47. package/box/types.d.ts +32 -0
  48. package/box/types.js +5 -0
  49. package/bulleted-list/BulletedList.d.ts +7 -0
  50. package/bulleted-list/BulletedList.js +89 -0
  51. package/bulleted-list/BulletedList.stories.tsx +115 -0
  52. package/bulleted-list/types.d.ts +38 -0
  53. package/bulleted-list/types.js +5 -0
  54. package/button/Button.d.ts +4 -0
  55. package/button/Button.js +120 -0
  56. package/button/Button.stories.tsx +344 -0
  57. package/button/Button.test.js +38 -0
  58. package/button/types.d.ts +57 -0
  59. package/button/types.js +5 -0
  60. package/card/Card.d.ts +4 -0
  61. package/card/Card.js +120 -0
  62. package/card/Card.stories.tsx +171 -0
  63. package/card/Card.test.js +39 -0
  64. package/card/types.d.ts +62 -0
  65. package/card/types.js +5 -0
  66. package/checkbox/Checkbox.d.ts +4 -0
  67. package/checkbox/Checkbox.js +215 -0
  68. package/checkbox/Checkbox.stories.tsx +222 -0
  69. package/checkbox/Checkbox.test.js +199 -0
  70. package/checkbox/types.d.ts +72 -0
  71. package/checkbox/types.js +5 -0
  72. package/chip/Chip.d.ts +4 -0
  73. package/chip/Chip.js +121 -0
  74. package/chip/Chip.stories.tsx +214 -0
  75. package/chip/Chip.test.js +41 -0
  76. package/chip/types.d.ts +45 -0
  77. package/chip/types.js +5 -0
  78. package/common/OpenSans.css +69 -0
  79. package/common/coreTokens.d.ts +237 -0
  80. package/common/coreTokens.js +184 -0
  81. package/common/utils.d.ts +1 -0
  82. package/{dist/common → common}/utils.js +6 -12
  83. package/common/variables.d.ts +1383 -0
  84. package/common/variables.js +1255 -0
  85. package/container/Container.d.ts +4 -0
  86. package/container/Container.js +194 -0
  87. package/container/Container.stories.tsx +214 -0
  88. package/container/types.d.ts +74 -0
  89. package/container/types.js +5 -0
  90. package/date-input/Calendar.d.ts +4 -0
  91. package/date-input/Calendar.js +214 -0
  92. package/date-input/DateInput.d.ts +4 -0
  93. package/date-input/DateInput.js +223 -0
  94. package/date-input/DateInput.stories.tsx +285 -0
  95. package/date-input/DateInput.test.js +808 -0
  96. package/date-input/DatePicker.d.ts +4 -0
  97. package/date-input/DatePicker.js +115 -0
  98. package/date-input/Icons.d.ts +6 -0
  99. package/date-input/Icons.js +58 -0
  100. package/date-input/YearPicker.d.ts +4 -0
  101. package/date-input/YearPicker.js +100 -0
  102. package/date-input/types.d.ts +164 -0
  103. package/date-input/types.js +5 -0
  104. package/dialog/Dialog.d.ts +4 -0
  105. package/dialog/Dialog.js +104 -0
  106. package/dialog/Dialog.stories.tsx +365 -0
  107. package/dialog/Dialog.test.js +307 -0
  108. package/dialog/types.d.ts +36 -0
  109. package/dialog/types.js +5 -0
  110. package/dropdown/Dropdown.d.ts +4 -0
  111. package/dropdown/Dropdown.js +336 -0
  112. package/dropdown/Dropdown.stories.tsx +438 -0
  113. package/dropdown/Dropdown.test.js +599 -0
  114. package/dropdown/DropdownMenu.d.ts +4 -0
  115. package/dropdown/DropdownMenu.js +63 -0
  116. package/dropdown/DropdownMenuItem.d.ts +4 -0
  117. package/dropdown/DropdownMenuItem.js +67 -0
  118. package/dropdown/types.d.ts +98 -0
  119. package/dropdown/types.js +5 -0
  120. package/file-input/FileInput.d.ts +4 -0
  121. package/file-input/FileInput.js +479 -0
  122. package/file-input/FileInput.stories.tsx +618 -0
  123. package/file-input/FileInput.test.js +459 -0
  124. package/file-input/FileItem.d.ts +4 -0
  125. package/file-input/FileItem.js +135 -0
  126. package/file-input/types.d.ts +129 -0
  127. package/file-input/types.js +5 -0
  128. package/flex/Flex.d.ts +4 -0
  129. package/flex/Flex.js +57 -0
  130. package/flex/Flex.stories.tsx +112 -0
  131. package/flex/types.d.ts +97 -0
  132. package/flex/types.js +5 -0
  133. package/footer/Footer.d.ts +4 -0
  134. package/footer/Footer.js +138 -0
  135. package/footer/Footer.stories.tsx +171 -0
  136. package/footer/Footer.test.js +85 -0
  137. package/footer/Icons.d.ts +3 -0
  138. package/footer/Icons.js +136 -0
  139. package/footer/types.d.ts +64 -0
  140. package/footer/types.js +5 -0
  141. package/grid/Grid.d.ts +7 -0
  142. package/grid/Grid.js +76 -0
  143. package/grid/Grid.stories.tsx +219 -0
  144. package/grid/types.d.ts +115 -0
  145. package/grid/types.js +5 -0
  146. package/header/Header.d.ts +8 -0
  147. package/header/Header.js +220 -0
  148. package/header/Header.stories.tsx +251 -0
  149. package/header/Header.test.js +66 -0
  150. package/header/Icons.d.ts +2 -0
  151. package/{dist/header → header}/Icons.js +9 -39
  152. package/header/types.d.ts +33 -0
  153. package/header/types.js +5 -0
  154. package/heading/Heading.d.ts +4 -0
  155. package/{dist/heading → heading}/Heading.js +31 -124
  156. package/heading/Heading.stories.tsx +54 -0
  157. package/heading/Heading.test.js +169 -0
  158. package/heading/types.d.ts +33 -0
  159. package/heading/types.js +5 -0
  160. package/image/Image.d.ts +4 -0
  161. package/image/Image.js +70 -0
  162. package/image/Image.stories.tsx +127 -0
  163. package/image/types.d.ts +72 -0
  164. package/image/types.js +5 -0
  165. package/inset/Inset.d.ts +3 -0
  166. package/inset/Inset.js +43 -0
  167. package/inset/Inset.stories.tsx +230 -0
  168. package/inset/types.d.ts +37 -0
  169. package/inset/types.js +5 -0
  170. package/layout/ApplicationLayout.d.ts +20 -0
  171. package/layout/ApplicationLayout.js +134 -0
  172. package/layout/ApplicationLayout.stories.tsx +162 -0
  173. package/layout/Icons.d.ts +8 -0
  174. package/layout/Icons.js +58 -0
  175. package/layout/SidenavContext.d.ts +5 -0
  176. package/layout/SidenavContext.js +13 -0
  177. package/layout/types.d.ts +41 -0
  178. package/layout/types.js +5 -0
  179. package/link/Link.d.ts +4 -0
  180. package/link/Link.js +115 -0
  181. package/link/Link.stories.tsx +253 -0
  182. package/link/Link.test.js +63 -0
  183. package/link/types.d.ts +54 -0
  184. package/link/types.js +5 -0
  185. package/main.d.ts +47 -0
  186. package/{dist/main.js → main.js} +123 -139
  187. package/nav-tabs/NavTabs.d.ts +8 -0
  188. package/nav-tabs/NavTabs.js +93 -0
  189. package/nav-tabs/NavTabs.stories.tsx +276 -0
  190. package/nav-tabs/NavTabs.test.js +76 -0
  191. package/nav-tabs/Tab.d.ts +4 -0
  192. package/nav-tabs/Tab.js +118 -0
  193. package/nav-tabs/types.d.ts +52 -0
  194. package/nav-tabs/types.js +5 -0
  195. package/number-input/NumberInput.d.ts +11 -0
  196. package/number-input/NumberInput.js +67 -0
  197. package/number-input/NumberInput.stories.tsx +131 -0
  198. package/number-input/NumberInput.test.js +830 -0
  199. package/number-input/types.d.ts +130 -0
  200. package/number-input/types.js +5 -0
  201. package/package.json +56 -44
  202. package/paginator/Icons.d.ts +5 -0
  203. package/paginator/Icons.js +40 -0
  204. package/paginator/Paginator.d.ts +4 -0
  205. package/paginator/Paginator.js +135 -0
  206. package/paginator/Paginator.stories.tsx +87 -0
  207. package/paginator/Paginator.test.js +335 -0
  208. package/paginator/types.d.ts +38 -0
  209. package/paginator/types.js +5 -0
  210. package/paragraph/Paragraph.d.ts +5 -0
  211. package/paragraph/Paragraph.js +22 -0
  212. package/paragraph/Paragraph.stories.tsx +27 -0
  213. package/password-input/Icons.d.ts +6 -0
  214. package/password-input/Icons.js +35 -0
  215. package/password-input/PasswordInput.d.ts +4 -0
  216. package/password-input/PasswordInput.js +97 -0
  217. package/password-input/PasswordInput.stories.tsx +99 -0
  218. package/password-input/PasswordInput.test.js +198 -0
  219. package/password-input/types.d.ts +111 -0
  220. package/password-input/types.js +5 -0
  221. package/progress-bar/ProgressBar.d.ts +4 -0
  222. package/progress-bar/ProgressBar.js +144 -0
  223. package/progress-bar/ProgressBar.stories.tsx +93 -0
  224. package/progress-bar/ProgressBar.test.js +93 -0
  225. package/progress-bar/types.d.ts +37 -0
  226. package/progress-bar/types.js +5 -0
  227. package/quick-nav/QuickNav.d.ts +4 -0
  228. package/quick-nav/QuickNav.js +94 -0
  229. package/quick-nav/QuickNav.stories.tsx +356 -0
  230. package/quick-nav/types.d.ts +21 -0
  231. package/quick-nav/types.js +5 -0
  232. package/radio-group/Radio.d.ts +4 -0
  233. package/radio-group/Radio.js +124 -0
  234. package/radio-group/RadioGroup.d.ts +4 -0
  235. package/radio-group/RadioGroup.js +235 -0
  236. package/radio-group/RadioGroup.stories.tsx +214 -0
  237. package/radio-group/RadioGroup.test.js +756 -0
  238. package/radio-group/types.d.ts +114 -0
  239. package/radio-group/types.js +5 -0
  240. package/resultset-table/Icons.d.ts +7 -0
  241. package/resultset-table/Icons.js +47 -0
  242. package/resultset-table/ResultsetTable.d.ts +7 -0
  243. package/resultset-table/ResultsetTable.js +167 -0
  244. package/resultset-table/ResultsetTable.stories.tsx +381 -0
  245. package/resultset-table/ResultsetTable.test.js +371 -0
  246. package/resultset-table/types.d.ts +73 -0
  247. package/resultset-table/types.js +5 -0
  248. package/select/Icons.d.ts +10 -0
  249. package/select/Icons.js +89 -0
  250. package/select/Listbox.d.ts +4 -0
  251. package/select/Listbox.js +143 -0
  252. package/select/Option.d.ts +4 -0
  253. package/select/Option.js +87 -0
  254. package/select/Select.d.ts +4 -0
  255. package/select/Select.js +590 -0
  256. package/select/Select.stories.tsx +971 -0
  257. package/select/Select.test.js +2370 -0
  258. package/select/types.d.ts +209 -0
  259. package/select/types.js +5 -0
  260. package/sidenav/Icons.d.ts +7 -0
  261. package/sidenav/Icons.js +47 -0
  262. package/sidenav/Sidenav.d.ts +10 -0
  263. package/sidenav/Sidenav.js +196 -0
  264. package/sidenav/Sidenav.stories.tsx +282 -0
  265. package/sidenav/Sidenav.test.js +37 -0
  266. package/sidenav/types.d.ts +76 -0
  267. package/sidenav/types.js +5 -0
  268. package/slider/Slider.d.ts +4 -0
  269. package/slider/Slider.js +285 -0
  270. package/slider/Slider.test.js +254 -0
  271. package/slider/types.d.ts +86 -0
  272. package/slider/types.js +5 -0
  273. package/spinner/Spinner.d.ts +4 -0
  274. package/spinner/Spinner.js +206 -0
  275. package/spinner/Spinner.stories.tsx +129 -0
  276. package/spinner/Spinner.test.js +55 -0
  277. package/spinner/types.d.ts +32 -0
  278. package/spinner/types.js +5 -0
  279. package/status-light/StatusLight.d.ts +4 -0
  280. package/status-light/StatusLight.js +51 -0
  281. package/status-light/StatusLight.stories.tsx +74 -0
  282. package/status-light/StatusLight.test.js +25 -0
  283. package/status-light/types.d.ts +17 -0
  284. package/status-light/types.js +5 -0
  285. package/switch/Switch.d.ts +4 -0
  286. package/switch/Switch.js +214 -0
  287. package/switch/Switch.stories.tsx +137 -0
  288. package/switch/Switch.test.js +180 -0
  289. package/switch/types.d.ts +66 -0
  290. package/switch/types.js +5 -0
  291. package/table/ActionsCell.d.ts +4 -0
  292. package/table/ActionsCell.js +54 -0
  293. package/table/DropdownTheme.js +57 -0
  294. package/table/Table.d.ts +7 -0
  295. package/table/Table.js +113 -0
  296. package/table/Table.stories.tsx +615 -0
  297. package/table/Table.test.js +113 -0
  298. package/table/types.d.ts +60 -0
  299. package/table/types.js +5 -0
  300. package/tabs/Tab.d.ts +4 -0
  301. package/tabs/Tab.js +116 -0
  302. package/tabs/Tabs.d.ts +4 -0
  303. package/tabs/Tabs.js +384 -0
  304. package/tabs/Tabs.stories.tsx +226 -0
  305. package/tabs/Tabs.test.js +294 -0
  306. package/tabs/types.d.ts +92 -0
  307. package/tabs/types.js +5 -0
  308. package/tag/Tag.d.ts +4 -0
  309. package/tag/Tag.js +151 -0
  310. package/tag/Tag.stories.tsx +155 -0
  311. package/tag/Tag.test.js +49 -0
  312. package/tag/types.d.ts +69 -0
  313. package/tag/types.js +5 -0
  314. package/text-input/Icons.d.ts +8 -0
  315. package/text-input/Icons.js +56 -0
  316. package/text-input/Suggestion.d.ts +4 -0
  317. package/text-input/Suggestion.js +67 -0
  318. package/text-input/Suggestions.d.ts +4 -0
  319. package/text-input/Suggestions.js +84 -0
  320. package/text-input/TextInput.d.ts +4 -0
  321. package/text-input/TextInput.js +572 -0
  322. package/text-input/TextInput.stories.tsx +465 -0
  323. package/text-input/TextInput.test.js +1739 -0
  324. package/text-input/types.d.ts +205 -0
  325. package/text-input/types.js +5 -0
  326. package/textarea/Textarea.d.ts +4 -0
  327. package/textarea/Textarea.js +234 -0
  328. package/textarea/Textarea.stories.tsx +174 -0
  329. package/textarea/Textarea.test.js +406 -0
  330. package/textarea/types.d.ts +141 -0
  331. package/textarea/types.js +5 -0
  332. package/toggle-group/ToggleGroup.d.ts +4 -0
  333. package/toggle-group/ToggleGroup.js +201 -0
  334. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  335. package/toggle-group/ToggleGroup.test.js +137 -0
  336. package/toggle-group/types.d.ts +114 -0
  337. package/toggle-group/types.js +5 -0
  338. package/typography/Typography.d.ts +4 -0
  339. package/typography/Typography.js +23 -0
  340. package/typography/Typography.stories.tsx +198 -0
  341. package/typography/types.d.ts +18 -0
  342. package/typography/types.js +5 -0
  343. package/useTheme.d.ts +1136 -0
  344. package/{dist/useTheme.js → useTheme.js} +4 -11
  345. package/useTranslatedLabels.d.ts +85 -0
  346. package/useTranslatedLabels.js +14 -0
  347. package/utils/BaseTypography.d.ts +21 -0
  348. package/utils/BaseTypography.js +94 -0
  349. package/utils/FocusLock.d.ts +13 -0
  350. package/utils/FocusLock.js +124 -0
  351. package/wizard/Wizard.d.ts +4 -0
  352. package/wizard/Wizard.js +250 -0
  353. package/wizard/Wizard.stories.tsx +253 -0
  354. package/wizard/Wizard.test.js +114 -0
  355. package/wizard/types.d.ts +64 -0
  356. package/wizard/types.js +5 -0
  357. package/babel.config.js +0 -8
  358. package/dist/BackgroundColorContext.js +0 -46
  359. package/dist/ThemeContext.js +0 -250
  360. package/dist/V3Select/V3Select.js +0 -549
  361. package/dist/V3Textarea/V3Textarea.js +0 -264
  362. package/dist/accordion/Accordion.js +0 -353
  363. package/dist/accordion-group/AccordionGroup.js +0 -186
  364. package/dist/alert/index.d.ts +0 -51
  365. package/dist/badge/Badge.js +0 -63
  366. package/dist/box/Box.js +0 -156
  367. package/dist/button/Button.js +0 -238
  368. package/dist/card/Card.js +0 -254
  369. package/dist/checkbox/Checkbox.js +0 -299
  370. package/dist/chip/Chip.js +0 -265
  371. package/dist/common/OpenSans.css +0 -81
  372. package/dist/common/RequiredComponent.js +0 -40
  373. package/dist/common/variables.js +0 -1578
  374. package/dist/date/Date.js +0 -379
  375. package/dist/date-input/DateInput.js +0 -400
  376. package/dist/date-input/index.d.ts +0 -95
  377. package/dist/dialog/Dialog.js +0 -218
  378. package/dist/dropdown/Dropdown.js +0 -544
  379. package/dist/file-input/FileInput.js +0 -644
  380. package/dist/file-input/FileItem.js +0 -280
  381. package/dist/file-input/index.d.ts +0 -81
  382. package/dist/footer/Footer.js +0 -421
  383. package/dist/footer/Icons.js +0 -77
  384. package/dist/header/Header.js +0 -470
  385. package/dist/input-text/Icons.js +0 -22
  386. package/dist/input-text/InputText.js +0 -705
  387. package/dist/layout/ApplicationLayout.js +0 -327
  388. package/dist/layout/Icons.js +0 -55
  389. package/dist/link/Link.js +0 -237
  390. package/dist/main.d.ts +0 -8
  391. package/dist/number-input/NumberInput.js +0 -136
  392. package/dist/number-input/NumberInputContext.js +0 -16
  393. package/dist/number-input/index.d.ts +0 -113
  394. package/dist/paginator/Icons.js +0 -66
  395. package/dist/paginator/Paginator.js +0 -283
  396. package/dist/password-input/PasswordInput.js +0 -198
  397. package/dist/password-input/index.d.ts +0 -94
  398. package/dist/progress-bar/ProgressBar.js +0 -242
  399. package/dist/radio/Radio.js +0 -209
  400. package/dist/resultsetTable/ResultsetTable.js +0 -358
  401. package/dist/select/Select.js +0 -1085
  402. package/dist/select/index.d.ts +0 -53
  403. package/dist/sidenav/Sidenav.js +0 -179
  404. package/dist/slider/Slider.js +0 -404
  405. package/dist/spinner/Spinner.js +0 -381
  406. package/dist/switch/Switch.js +0 -222
  407. package/dist/table/Table.js +0 -132
  408. package/dist/tabs/Tabs.js +0 -343
  409. package/dist/tag/Tag.js +0 -282
  410. package/dist/text-input/TextInput.js +0 -971
  411. package/dist/text-input/index.d.ts +0 -135
  412. package/dist/textarea/Textarea.js +0 -369
  413. package/dist/textarea/index.d.ts +0 -117
  414. package/dist/toggle/Toggle.js +0 -220
  415. package/dist/toggle-group/ToggleGroup.js +0 -327
  416. package/dist/upload/Upload.js +0 -205
  417. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  418. package/dist/upload/buttons-upload/Icons.js +0 -40
  419. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  420. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  421. package/dist/upload/file-upload/FileToUpload.js +0 -189
  422. package/dist/upload/file-upload/Icons.js +0 -66
  423. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  424. package/dist/upload/transaction/Icons.js +0 -160
  425. package/dist/upload/transaction/Transaction.js +0 -148
  426. package/dist/upload/transactions/Transactions.js +0 -138
  427. package/dist/wizard/Icons.js +0 -65
  428. package/dist/wizard/Wizard.js +0 -405
  429. package/test/Accordion.test.js +0 -33
  430. package/test/AccordionGroup.test.js +0 -125
  431. package/test/Alert.test.js +0 -53
  432. package/test/Box.test.js +0 -10
  433. package/test/Button.test.js +0 -18
  434. package/test/Card.test.js +0 -30
  435. package/test/Checkbox.test.js +0 -45
  436. package/test/Chip.test.js +0 -25
  437. package/test/Date.test.js +0 -397
  438. package/test/DateInput.test.js +0 -242
  439. package/test/Dialog.test.js +0 -23
  440. package/test/Dropdown.test.js +0 -145
  441. package/test/FileInput.test.js +0 -201
  442. package/test/Footer.test.js +0 -94
  443. package/test/Header.test.js +0 -34
  444. package/test/Heading.test.js +0 -83
  445. package/test/InputText.test.js +0 -248
  446. package/test/Link.test.js +0 -43
  447. package/test/NumberInput.test.js +0 -259
  448. package/test/Paginator.test.js +0 -177
  449. package/test/PasswordInput.test.js +0 -83
  450. package/test/ProgressBar.test.js +0 -35
  451. package/test/Radio.test.js +0 -37
  452. package/test/ResultsetTable.test.js +0 -329
  453. package/test/Sidenav.test.js +0 -45
  454. package/test/Slider.test.js +0 -74
  455. package/test/Spinner.test.js +0 -32
  456. package/test/Switch.test.js +0 -45
  457. package/test/Table.test.js +0 -36
  458. package/test/Tabs.test.js +0 -109
  459. package/test/Tag.test.js +0 -32
  460. package/test/TextInput.test.js +0 -732
  461. package/test/Textarea.test.js +0 -193
  462. package/test/ToggleGroup.test.js +0 -85
  463. package/test/Upload.test.js +0 -60
  464. package/test/V3Select.test.js +0 -212
  465. package/test/V3TextArea.test.js +0 -51
  466. package/test/Wizard.test.js +0 -130
  467. package/test/mocks/pngMock.js +0 -1
  468. package/test/mocks/svgMock.js +0 -1
  469. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  470. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  471. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  472. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  473. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  474. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  475. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  476. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  477. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  478. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -0,0 +1,285 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
14
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
15
+ var _variables = require("../common/variables");
16
+ var _utils = require("../common/utils");
17
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
18
+ var _uuid = require("uuid");
19
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
20
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
22
+ var DxcSlider = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
23
+ var _navigator;
24
+ var _ref$label = _ref.label,
25
+ label = _ref$label === void 0 ? "" : _ref$label,
26
+ _ref$name = _ref.name,
27
+ name = _ref$name === void 0 ? "" : _ref$name,
28
+ defaultValue = _ref.defaultValue,
29
+ value = _ref.value,
30
+ _ref$helperText = _ref.helperText,
31
+ helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
32
+ _ref$minValue = _ref.minValue,
33
+ minValue = _ref$minValue === void 0 ? 0 : _ref$minValue,
34
+ _ref$maxValue = _ref.maxValue,
35
+ maxValue = _ref$maxValue === void 0 ? 100 : _ref$maxValue,
36
+ _ref$step = _ref.step,
37
+ step = _ref$step === void 0 ? 1 : _ref$step,
38
+ _ref$showLimitsValues = _ref.showLimitsValues,
39
+ showLimitsValues = _ref$showLimitsValues === void 0 ? false : _ref$showLimitsValues,
40
+ _ref$showInput = _ref.showInput,
41
+ showInput = _ref$showInput === void 0 ? false : _ref$showInput,
42
+ _ref$disabled = _ref.disabled,
43
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
44
+ _ref$marks = _ref.marks,
45
+ marks = _ref$marks === void 0 ? false : _ref$marks,
46
+ onChange = _ref.onChange,
47
+ onDragEnd = _ref.onDragEnd,
48
+ labelFormatCallback = _ref.labelFormatCallback,
49
+ margin = _ref.margin,
50
+ _ref$size = _ref.size,
51
+ size = _ref$size === void 0 ? "fillParent" : _ref$size;
52
+ var _useState = (0, _react.useState)("label-".concat((0, _uuid.v4)())),
53
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
54
+ labelId = _useState2[0];
55
+ var _useState3 = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : 0),
56
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
57
+ innerValue = _useState4[0],
58
+ setInnerValue = _useState4[1];
59
+ var _useState5 = (0, _react.useState)(false),
60
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
61
+ dragging = _useState6[0],
62
+ setDragging = _useState6[1];
63
+ var colorsTheme = (0, _useTheme["default"])();
64
+ var isFirefox = ((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.userAgent.indexOf("Firefox")) !== -1;
65
+ var minLabel = (0, _react.useMemo)(function () {
66
+ return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
67
+ }, [labelFormatCallback, minValue]);
68
+ var maxLabel = (0, _react.useMemo)(function () {
69
+ return labelFormatCallback ? labelFormatCallback(maxValue) : maxValue;
70
+ }, [labelFormatCallback, maxValue]);
71
+ var tickMarks = (0, _react.useMemo)(function () {
72
+ var numberOfMarks = Math.floor(maxValue / step - minValue / step);
73
+ var range = maxValue - minValue;
74
+ var ticks = [];
75
+ var index = 0;
76
+ if (marks) {
77
+ while (index <= numberOfMarks) {
78
+ ticks.push( /*#__PURE__*/_react["default"].createElement(TickMark, {
79
+ disabled: disabled,
80
+ stepPosition: step * index / range,
81
+ stepValue: (value !== null && value !== void 0 ? value : innerValue) / maxValue
82
+ }));
83
+ index++;
84
+ }
85
+ return ticks;
86
+ } else return null;
87
+ }, [minValue, maxValue, step, value, innerValue]);
88
+ var handleSliderChange = function handleSliderChange(event) {
89
+ var valueToCheck = event.target.value;
90
+ (valueToCheck !== value || valueToCheck !== innerValue) && setInnerValue(valueToCheck);
91
+ onChange === null || onChange === void 0 ? void 0 : onChange(valueToCheck);
92
+ };
93
+ var handleSliderDragging = function handleSliderDragging() {
94
+ setDragging(true);
95
+ };
96
+ var handleSliderOnChangeCommitted = function handleSliderOnChangeCommitted(event) {
97
+ if (dragging) {
98
+ setDragging(false);
99
+ onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(event.target.value);
100
+ }
101
+ };
102
+ var handlerInputChange = function handlerInputChange(event) {
103
+ var intValue = parseInt(event.value, 10);
104
+ if (value == null) {
105
+ if (!Number.isNaN(intValue)) setInnerValue(intValue > maxValue ? maxValue : intValue);
106
+ }
107
+ if (!Number.isNaN(intValue)) {
108
+ onChange === null || onChange === void 0 ? void 0 : onChange(intValue > maxValue ? maxValue : intValue);
109
+ }
110
+ };
111
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
112
+ theme: colorsTheme.slider
113
+ }, /*#__PURE__*/_react["default"].createElement(Container, {
114
+ margin: margin,
115
+ size: size,
116
+ ref: ref
117
+ }, /*#__PURE__*/_react["default"].createElement(Label, {
118
+ id: labelId,
119
+ disabled: disabled
120
+ }, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
121
+ disabled: disabled
122
+ }, helperText), /*#__PURE__*/_react["default"].createElement(SliderContainer, null, showLimitsValues && /*#__PURE__*/_react["default"].createElement(MinLabelContainer, {
123
+ disabled: disabled
124
+ }, minLabel), /*#__PURE__*/_react["default"].createElement(SliderInputContainer, null, /*#__PURE__*/_react["default"].createElement(SliderInput, {
125
+ role: "slider",
126
+ type: "range",
127
+ value: value != null && value >= 0 ? value : innerValue,
128
+ min: minValue,
129
+ max: maxValue,
130
+ step: step,
131
+ disabled: disabled,
132
+ "aria-labelledby": labelId,
133
+ "aria-orientation": "horizontal",
134
+ "aria-valuemax": maxValue,
135
+ "aria-valuemin": minValue,
136
+ "aria-valuenow": value != null && value >= 0 ? value : innerValue,
137
+ onChange: handleSliderChange,
138
+ onMouseUp: handleSliderOnChangeCommitted,
139
+ onMouseDown: handleSliderDragging
140
+ }), marks && /*#__PURE__*/_react["default"].createElement(MarksContainer, {
141
+ isFirefox: isFirefox
142
+ }, tickMarks)), showLimitsValues && /*#__PURE__*/_react["default"].createElement(MaxLabelContainer, {
143
+ disabled: disabled,
144
+ step: step
145
+ }, maxLabel), showInput && /*#__PURE__*/_react["default"].createElement(StyledTextInput, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
146
+ name: name,
147
+ value: value != null && value >= 0 ? value.toString() : innerValue.toString(),
148
+ disabled: disabled,
149
+ onChange: handlerInputChange,
150
+ size: "fillParent"
151
+ })))));
152
+ });
153
+ var sizes = {
154
+ medium: "360px",
155
+ large: "480px",
156
+ fillParent: "100%"
157
+ };
158
+ var calculateWidth = function calculateWidth(margin, size) {
159
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
160
+ };
161
+ var getChromeStyles = function getChromeStyles() {
162
+ return "\n width: 100%;\n margin-right: 4px;";
163
+ };
164
+ var getFireFoxStyles = function getFireFoxStyles() {
165
+ return "\n width: calc(100% - 16px);\n margin-right: 3px;";
166
+ };
167
+ 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) {
168
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
169
+ }, function (props) {
170
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
171
+ }, function (props) {
172
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
173
+ }, function (props) {
174
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
175
+ }, function (props) {
176
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
177
+ }, function (props) {
178
+ return calculateWidth(props.margin, props.size);
179
+ });
180
+ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
181
+ return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
182
+ }, function (props) {
183
+ return props.theme.fontFamily;
184
+ }, function (props) {
185
+ return props.theme.labelFontSize;
186
+ }, function (props) {
187
+ return props.theme.labelFontStyle;
188
+ }, function (props) {
189
+ return props.theme.labelFontWeight;
190
+ }, function (props) {
191
+ return props.theme.labelLineHeight;
192
+ });
193
+ 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) {
194
+ return props.disabled ? props.theme.disabledHelperTextFontColor : props.theme.helperTextFontColor;
195
+ }, function (props) {
196
+ return props.theme.fontFamily;
197
+ }, function (props) {
198
+ return props.theme.helperTextFontSize;
199
+ }, function (props) {
200
+ return props.theme.helperTextFontStyle;
201
+ }, function (props) {
202
+ return props.theme.helperTextFontWeight;
203
+ }, function (props) {
204
+ return props.theme.helperTextLineHeight;
205
+ });
206
+ var SliderInput = _styledComponents["default"].input(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n min-width: 240px;\n height: ", ";\n display: inline-block;\n vertical-align: middle;\n -webkit-appearance: none;\n background-color: ", ";\n background-image: ", ";\n background-repeat: no-repeat;\n background-size: ", ";\n border-radius: 5px;\n cursor: ", ";\n &::-webkit-slider-runnable-track {\n -webkit-appearance: none;\n box-shadow: none;\n border: none;\n background: transparent;\n margin: 0px -8px;\n }\n\n &::-webkit-slider-thumb {\n -webkit-appearance: none;\n border: none;\n height: ", ";\n width: ", ";\n border-radius: 25px;\n background: ", ";\n &:active {\n ", "\n }\n &:hover {\n ", "\n }\n }\n &::-moz-range-track {\n -webkit-appearance: none;\n box-shadow: none;\n border: none;\n background: transparent;\n }\n &::-moz-range-thumb {\n -webkit-appearance: none;\n border: none;\n height: ", ";\n width: ", ";\n border-radius: 25px;\n background: ", ";\n &:active {\n background: ", ";\n transform: scale(1.16667);\n }\n &:hover {\n ", "\n }\n }\n &:focus {\n outline: none;\n &::-webkit-slider-thumb {\n outline: ", " auto 1px;\n outline-offset: 2px;\n }\n &::-moz-range-thumb {\n outline: ", " auto 1px;\n outline-offset: 2px;\n }\n }\n"])), function (props) {
207
+ return props.theme.trackLineThickness;
208
+ }, function (props) {
209
+ return props.disabled ? props.theme.disabledTotalLineColor + "61" : props.theme.totalLineColor;
210
+ }, function (props) {
211
+ return props.disabled ? "linear-gradient(".concat(props.theme.disabledTrackLineColor, ", ").concat(props.theme.disabledTrackLineColor, ")") : "linear-gradient(".concat(props.theme.trackLineColor, ", ").concat(props.theme.trackLineColor, ")");
212
+ }, function (props) {
213
+ return (props.value - props.min) * 100 / (props.max - props.min) + "% 100%";
214
+ }, function (props) {
215
+ return props.disabled ? "not-allowed" : "pointer";
216
+ }, function (props) {
217
+ return props.theme.thumbHeight;
218
+ }, function (props) {
219
+ return props.theme.thumbWidth;
220
+ }, function (props) {
221
+ return props.disabled ? props.theme.disabledThumbBackgroundColor : props.theme.thumbBackgroundColor;
222
+ }, function (props) {
223
+ if (!props.disabled) {
224
+ return "\n background: ".concat(props.theme.activeThumbBackgroundColor, ";\n transform: scale(1.16667);");
225
+ }
226
+ }, function (props) {
227
+ if (!props.disabled) {
228
+ return "height: ".concat(props.theme.hoverThumbHeight, ";\n width: ").concat(props.theme.hoverThumbWidth, ";\n transform: scale(1.16667);\n transform-origin: center center;\n background: ").concat(props.theme.hoverThumbBackgroundColor, ";");
229
+ }
230
+ }, function (props) {
231
+ return props.theme.thumbHeight;
232
+ }, function (props) {
233
+ return props.theme.thumbWidth;
234
+ }, function (props) {
235
+ return props.disabled ? props.theme.disabledThumbBackgroundColor : props.theme.thumbBackgroundColor;
236
+ }, function (props) {
237
+ return props.theme.activeThumbBackgroundColor;
238
+ }, function (props) {
239
+ if (!props.disabled) {
240
+ return "height: ".concat(props.theme.hoverThumbHeight, ";\n width: ").concat(props.theme.hoverThumbWidth, ";\n transform: scale(1.16667);\n transform-origin: center center;\n background: ").concat(props.theme.hoverThumbBackgroundColor, ";");
241
+ }
242
+ }, function (props) {
243
+ return props.disabled ? props.theme.disabledFocusColor : props.theme.focusColor;
244
+ }, function (props) {
245
+ return props.disabled ? props.theme.disabledFocusColor : props.theme.focusColor;
246
+ });
247
+ var SliderContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 48px;\n align-items: center;\n"])));
248
+ var LimitLabelContainer = _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"])), function (props) {
249
+ return props.disabled ? props.theme.disabledLimitValuesFontColor : props.theme.limitValuesFontColor;
250
+ }, function (props) {
251
+ return props.theme.fontFamily;
252
+ }, function (props) {
253
+ return props.theme.limitValuesFontSize;
254
+ }, function (props) {
255
+ return props.theme.limitValuesFontStyle;
256
+ }, function (props) {
257
+ return props.theme.limitValuesFontWeight;
258
+ }, function (props) {
259
+ return props.theme.limitValuesFontLetterSpacing;
260
+ });
261
+ var MinLabelContainer = (0, _styledComponents["default"])(LimitLabelContainer)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n"])), function (props) {
262
+ return props.theme.floorLabelMarginRight;
263
+ });
264
+ var MaxLabelContainer = (0, _styledComponents["default"])(LimitLabelContainer)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n"])), function (props) {
265
+ return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
266
+ });
267
+ var SliderInputContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n width: 100%;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: -2px;\n padding-top: 1px;\n z-index: 0;\n"])));
268
+ var MarksContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n position: absolute;\n pointer-events: none;\n height: 100%;\n display: flex;\n align-items: center;\n"])), function (props) {
269
+ return props.isFirefox ? getFireFoxStyles() : getChromeStyles();
270
+ });
271
+ var TickMark = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n background: ", ";\n height: ", ";\n width: ", ";\n border-radius: 18px;\n left: ", ";\n z-index: ", ";\n"])), function (props) {
272
+ return props.disabled ? props.theme.disabledTickBackgroundColor : props.theme.tickBackgroundColor;
273
+ }, function (props) {
274
+ return props.theme.tickHeight;
275
+ }, function (props) {
276
+ return props.theme.tickWidth;
277
+ }, function (props) {
278
+ return "calc(".concat(props.stepPosition, " * 100%)");
279
+ }, function (props) {
280
+ return "".concat(props.stepPosition <= props.stepValue ? "-1" : "0");
281
+ });
282
+ var StyledTextInput = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n max-width: 70px;\n"])), function (props) {
283
+ return props.theme.inputMarginLeft;
284
+ });
285
+ var _default = exports["default"] = DxcSlider;
@@ -0,0 +1,254 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
5
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
9
+ var _Slider = _interopRequireDefault(require("./Slider.tsx"));
10
+ // Mocking DOMRect for Radix Primitive Popover
11
+ global.globalThis = global;
12
+ global.DOMRect = {
13
+ fromRect: function fromRect() {
14
+ return {
15
+ top: 0,
16
+ left: 0,
17
+ bottom: 0,
18
+ right: 0,
19
+ width: 0,
20
+ height: 0
21
+ };
22
+ }
23
+ };
24
+ global.ResizeObserver = /*#__PURE__*/function () {
25
+ function ResizeObserver() {
26
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
27
+ }
28
+ (0, _createClass2["default"])(ResizeObserver, [{
29
+ key: "observe",
30
+ value: function observe() {}
31
+ }, {
32
+ key: "unobserve",
33
+ value: function unobserve() {}
34
+ }, {
35
+ key: "disconnect",
36
+ value: function disconnect() {}
37
+ }]);
38
+ return ResizeObserver;
39
+ }();
40
+ describe("Slider component tests", function () {
41
+ test("Slider renders with correct text and label id", function () {
42
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
43
+ label: "label",
44
+ minValue: 0,
45
+ maxValue: 100,
46
+ showLimitsValues: true
47
+ })),
48
+ getByText = _render.getByText,
49
+ getByRole = _render.getByRole;
50
+ expect(getByText("0")).toBeTruthy();
51
+ expect(getByText("100")).toBeTruthy();
52
+ var sliderId = getByText("label").getAttribute("id");
53
+ expect(getByRole("slider").getAttribute("aria-labelledby")).toBe(sliderId);
54
+ expect(getByRole("slider").getAttribute("aria-orientation")).toBe("horizontal");
55
+ });
56
+ test("Slider renders with correct initial value when it is uncontrolled", function () {
57
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
58
+ defaultValue: 30,
59
+ minValue: 0,
60
+ maxValue: 100,
61
+ showLimitsValues: true,
62
+ showInput: true
63
+ })),
64
+ getByRole = _render2.getByRole;
65
+ var slider = getByRole("slider");
66
+ var input = getByRole("textbox");
67
+ expect(slider.getAttribute("aria-valuenow")).toBe("30");
68
+ expect(input.value).toBe("30");
69
+ });
70
+ test("Slider correct limit values", function () {
71
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
72
+ defaultValue: 125,
73
+ minValue: 30,
74
+ maxValue: 125,
75
+ showLimitsValues: true
76
+ })),
77
+ getByRole = _render3.getByRole,
78
+ getByText = _render3.getByText;
79
+ var slider = getByRole("slider");
80
+ expect(slider.getAttribute("aria-valuemin")).toBe("30");
81
+ expect(slider.getAttribute("aria-valuemax")).toBe("125");
82
+ _userEvent["default"].tab();
83
+ _react2.fireEvent.keyDown(slider, {
84
+ key: "ArrowRight",
85
+ code: "ArrowRight",
86
+ keyCode: 39,
87
+ charCode: 39
88
+ });
89
+ expect(slider.getAttribute("aria-valuenow")).toBe("125");
90
+ expect(getByText("30")).toBeTruthy();
91
+ expect(getByText("125")).toBeTruthy();
92
+ });
93
+ test("Calls correct function onChange in controlled slider", function () {
94
+ var onChange = jest.fn();
95
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
96
+ minValue: 0,
97
+ maxValue: 100,
98
+ onChange: onChange,
99
+ showLimitsValues: true,
100
+ value: 13,
101
+ showInput: true
102
+ })),
103
+ getByRole = _render4.getByRole;
104
+ expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
105
+ expect(getByRole("textbox").value).toBe("13");
106
+ (0, _react2.act)(function () {
107
+ _react2.fireEvent.change(getByRole("textbox"), {
108
+ target: {
109
+ value: 25
110
+ }
111
+ });
112
+ });
113
+ expect(onChange).toHaveBeenCalledWith(25);
114
+ expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
115
+ expect(getByRole("textbox").value).toBe("13");
116
+ });
117
+ test("Calls correct function onChange in uncontrolled slider", function () {
118
+ var onChange = jest.fn();
119
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
120
+ minValue: 0,
121
+ maxValue: 100,
122
+ onChange: onChange,
123
+ showLimitsValues: true,
124
+ showInput: true
125
+ })),
126
+ getByRole = _render5.getByRole;
127
+ (0, _react2.act)(function () {
128
+ _react2.fireEvent.change(getByRole("textbox"), {
129
+ target: {
130
+ value: 25
131
+ }
132
+ });
133
+ });
134
+ expect(onChange).toHaveBeenCalledWith(25);
135
+ expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("25");
136
+ expect(getByRole("textbox").value).toBe("25");
137
+ });
138
+ test("Disabled slider have disabled input and slider", function () {
139
+ var onChange = jest.fn();
140
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
141
+ minValue: 0,
142
+ maxValue: 100,
143
+ onChange: onChange,
144
+ showLimitsValues: true,
145
+ disabled: true,
146
+ showInput: true,
147
+ value: 13
148
+ })),
149
+ getByRole = _render6.getByRole;
150
+ (0, _react2.act)(function () {
151
+ _react2.fireEvent.change(getByRole("textbox"), {
152
+ target: {
153
+ value: 25
154
+ }
155
+ });
156
+ });
157
+ expect(getByRole("textbox").hasAttribute("disabled")).toBeTruthy();
158
+ expect(getByRole("textbox").value).toBe("13");
159
+ expect(getByRole("slider").hasAttribute("disabled")).toBeTruthy();
160
+ });
161
+ test("Calls correct function onDragEnd when it is uncontrolled", function () {
162
+ var onDragEnd = jest.fn();
163
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
164
+ minValue: 0,
165
+ maxValue: 150,
166
+ onDragEnd: onDragEnd,
167
+ showInput: true
168
+ })),
169
+ getByRole = _render7.getByRole;
170
+ var slider = getByRole("slider");
171
+ (0, _react2.act)(function () {
172
+ _react2.fireEvent.mouseDown(slider);
173
+ });
174
+ (0, _react2.act)(function () {
175
+ _react2.fireEvent.mouseUp(slider, {
176
+ target: {
177
+ value: 120
178
+ }
179
+ });
180
+ });
181
+ expect(onDragEnd).toHaveBeenCalledWith("120");
182
+ });
183
+ test("Calls correct function onDragEnd when it is controlled", function () {
184
+ var onDragEnd = jest.fn();
185
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
186
+ minValue: 0,
187
+ maxValue: 150,
188
+ value: 50,
189
+ onDragEnd: onDragEnd,
190
+ showInput: true
191
+ })),
192
+ getByRole = _render8.getByRole;
193
+ var slider = getByRole("slider");
194
+ (0, _react2.act)(function () {
195
+ _react2.fireEvent.mouseDown(slider);
196
+ });
197
+ (0, _react2.act)(function () {
198
+ _react2.fireEvent.mouseUp(slider, {
199
+ target: {
200
+ value: 120
201
+ }
202
+ });
203
+ });
204
+ expect(onDragEnd).toHaveBeenCalledWith("120");
205
+ expect(slider.getAttribute("aria-valuenow")).toBe("50");
206
+ });
207
+ test("Calls correct function labelFormatCallback", function () {
208
+ var labelFormatCallback = jest.fn(function (x) {
209
+ return "".concat(x, "$");
210
+ });
211
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
212
+ minValue: 0,
213
+ maxValue: 100,
214
+ showLimitsValues: true,
215
+ showInput: true,
216
+ value: 25,
217
+ labelFormatCallback: labelFormatCallback
218
+ })),
219
+ getByText = _render9.getByText;
220
+ expect(getByText("0$")).toBeTruthy();
221
+ expect(getByText("100$")).toBeTruthy();
222
+ expect(labelFormatCallback).toHaveBeenCalledTimes(2);
223
+ });
224
+ test("Change value correctly to 0 from external function", function () {
225
+ var onChange = jest.fn();
226
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
227
+ minValue: 0,
228
+ maxValue: 100,
229
+ onChange: onChange,
230
+ showLimitsValues: true,
231
+ value: 13,
232
+ showInput: true
233
+ })),
234
+ rerender = _render10.rerender,
235
+ getByRole = _render10.getByRole;
236
+ var slider = getByRole("slider");
237
+ _userEvent["default"].tab();
238
+ _react2.fireEvent.keyDown(slider, {
239
+ key: "ArrowRight",
240
+ code: "ArrowRight",
241
+ keyCode: 39,
242
+ charCode: 39
243
+ });
244
+ rerender( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
245
+ minValue: 0,
246
+ maxValue: 100,
247
+ onChange: onChange,
248
+ showLimitsValues: true,
249
+ value: 0,
250
+ showInput: true
251
+ }));
252
+ expect(slider.getAttribute("aria-valuenow")).toBe("0");
253
+ });
254
+ });
@@ -0,0 +1,86 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ type Props = {
9
+ /**
10
+ * Text to be placed above the slider.
11
+ */
12
+ label?: string;
13
+ /**
14
+ * Name attribute of the input element.
15
+ */
16
+ name?: string;
17
+ /**
18
+ * Initial value of the slider, only when it is uncontrolled.
19
+ */
20
+ defaultValue?: number;
21
+ /**
22
+ * The selected value. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
23
+ */
24
+ value?: number;
25
+ /**
26
+ * Helper text to be placed above the slider.
27
+ */
28
+ helperText?: string;
29
+ /**
30
+ * The minimum value available for selection.
31
+ */
32
+ minValue?: number;
33
+ /**
34
+ * The maximum value available for selection.
35
+ */
36
+ maxValue?: number;
37
+ /**
38
+ * The step interval between values available for selection.
39
+ */
40
+ step?: number;
41
+ /**
42
+ * Whether the min/max value labels should be displayed next to the slider
43
+ */
44
+ showLimitsValues?: boolean;
45
+ /**
46
+ * Whether the input element for displaying/controlling the slider value should be displayed next to the slider.
47
+ */
48
+ showInput?: boolean;
49
+ /**
50
+ * If true, the component will be disabled.
51
+ */
52
+ disabled?: boolean;
53
+ /**
54
+ * Whether the marks between each step should be shown or not.
55
+ */
56
+ marks?: boolean;
57
+ /**
58
+ * This function will be called when the slider changes its value, as it's being dragged.
59
+ * The new value will be passed as a parameter when this function is executed.
60
+ */
61
+ onChange?: (value: number) => void;
62
+ /**
63
+ * This function will be called when the slider changes its value, but only when the thumb is released.
64
+ * The new value will be passed as a parameter when this function is executed.
65
+ */
66
+ onDragEnd?: (value: number) => void;
67
+ /**
68
+ * This function will be used to format the labels displayed next to the slider.
69
+ * The value will be passed as parameter and the function must return the formatted value.
70
+ */
71
+ labelFormatCallback?: (value: number) => string;
72
+ /**
73
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
74
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
75
+ */
76
+ margin?: Space | Margin;
77
+ /**
78
+ * Size of the component.
79
+ */
80
+ size?: "medium" | "large" | "fillParent";
81
+ };
82
+ /**
83
+ * Reference to the component.
84
+ */
85
+ export type RefType = HTMLDivElement;
86
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import SpinnerPropsType from "./types";
3
+ declare const DxcSpinner: ({ label, value, showValue, mode, margin, }: SpinnerPropsType) => JSX.Element;
4
+ export default DxcSpinner;