@dxc-technology/halstack-react 0.0.0-b3e1a2f → 0.0.0-b3e2de9

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 (435) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1249 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.d.ts +1 -1
  8. package/accordion/Accordion.js +104 -193
  9. package/accordion/Accordion.stories.tsx +85 -141
  10. package/accordion/Accordion.test.js +56 -0
  11. package/accordion/types.d.ts +11 -22
  12. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  13. package/accordion-group/AccordionGroup.d.ts +3 -3
  14. package/accordion-group/AccordionGroup.js +38 -107
  15. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  16. package/accordion-group/AccordionGroup.test.js +98 -0
  17. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  18. package/accordion-group/AccordionGroupAccordion.js +31 -0
  19. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  20. package/accordion-group/AccordionGroupContext.js +8 -0
  21. package/accordion-group/types.d.ts +17 -22
  22. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  23. package/action-icon/ActionIcon.d.ts +4 -0
  24. package/action-icon/ActionIcon.js +48 -0
  25. package/action-icon/ActionIcon.stories.tsx +41 -0
  26. package/action-icon/ActionIcon.test.js +64 -0
  27. package/action-icon/types.d.ts +26 -0
  28. package/alert/Alert.accessibility.test.js +95 -0
  29. package/alert/Alert.js +35 -125
  30. package/alert/Alert.stories.tsx +28 -0
  31. package/alert/Alert.test.js +75 -0
  32. package/alert/types.d.ts +5 -5
  33. package/badge/Badge.accessibility.test.js +129 -0
  34. package/badge/Badge.d.ts +4 -0
  35. package/badge/Badge.js +141 -41
  36. package/badge/Badge.stories.tsx +210 -0
  37. package/badge/Badge.test.js +30 -0
  38. package/badge/types.d.ts +54 -0
  39. package/bleed/Bleed.js +14 -55
  40. package/bleed/Bleed.stories.tsx +95 -95
  41. package/bleed/types.d.ts +26 -2
  42. package/box/Box.accessibility.test.js +33 -0
  43. package/box/Box.d.ts +1 -1
  44. package/box/Box.js +30 -81
  45. package/box/Box.stories.tsx +38 -51
  46. package/box/Box.test.js +13 -0
  47. package/box/types.d.ts +3 -14
  48. package/bulleted-list/BulletedList.accessibility.test.js +107 -0
  49. package/bulleted-list/BulletedList.d.ts +7 -0
  50. package/bulleted-list/BulletedList.js +92 -0
  51. package/bulleted-list/BulletedList.stories.tsx +115 -0
  52. package/bulleted-list/types.d.ts +38 -0
  53. package/button/Button.accessibility.test.js +127 -0
  54. package/button/Button.d.ts +1 -1
  55. package/button/Button.js +63 -113
  56. package/button/Button.stories.tsx +151 -100
  57. package/button/Button.test.js +38 -0
  58. package/button/types.d.ts +12 -8
  59. package/card/Card.accessibility.test.js +36 -0
  60. package/card/Card.d.ts +1 -1
  61. package/card/Card.js +58 -102
  62. package/card/Card.stories.tsx +12 -42
  63. package/card/Card.test.js +39 -0
  64. package/card/types.d.ts +6 -11
  65. package/checkbox/Checkbox.accessibility.test.js +87 -0
  66. package/checkbox/Checkbox.d.ts +2 -2
  67. package/checkbox/Checkbox.js +144 -182
  68. package/checkbox/Checkbox.stories.tsx +166 -136
  69. package/checkbox/Checkbox.test.js +199 -0
  70. package/checkbox/types.d.ts +18 -6
  71. package/chip/Chip.accessibility.test.js +67 -0
  72. package/chip/Chip.d.ts +1 -1
  73. package/chip/Chip.js +47 -122
  74. package/chip/Chip.stories.tsx +104 -30
  75. package/chip/Chip.test.js +41 -0
  76. package/chip/types.d.ts +8 -16
  77. package/common/coreTokens.d.ts +237 -0
  78. package/common/coreTokens.js +184 -0
  79. package/common/utils.d.ts +1 -0
  80. package/common/utils.js +6 -12
  81. package/common/variables.d.ts +1395 -0
  82. package/common/variables.js +1030 -1375
  83. package/container/Container.d.ts +4 -0
  84. package/container/Container.js +194 -0
  85. package/container/Container.stories.tsx +214 -0
  86. package/container/types.d.ts +74 -0
  87. package/contextual-menu/ContextualMenu.accessibility.test.js +86 -0
  88. package/contextual-menu/ContextualMenu.d.ts +7 -0
  89. package/contextual-menu/ContextualMenu.js +71 -0
  90. package/contextual-menu/ContextualMenu.stories.tsx +182 -0
  91. package/contextual-menu/ContextualMenu.test.js +71 -0
  92. package/contextual-menu/MenuItemAction.d.ts +4 -0
  93. package/contextual-menu/MenuItemAction.js +46 -0
  94. package/contextual-menu/types.d.ts +22 -0
  95. package/date-input/Calendar.d.ts +4 -0
  96. package/date-input/Calendar.js +214 -0
  97. package/date-input/DateInput.accessibility.test.js +216 -0
  98. package/date-input/DateInput.js +171 -306
  99. package/date-input/DateInput.stories.tsx +203 -56
  100. package/date-input/DateInput.test.js +808 -0
  101. package/date-input/DatePicker.d.ts +4 -0
  102. package/date-input/DatePicker.js +115 -0
  103. package/date-input/Icons.d.ts +6 -0
  104. package/date-input/Icons.js +58 -0
  105. package/date-input/YearPicker.d.ts +4 -0
  106. package/date-input/YearPicker.js +100 -0
  107. package/date-input/types.d.ts +86 -22
  108. package/dialog/Dialog.accessibility.test.js +69 -0
  109. package/dialog/Dialog.d.ts +1 -1
  110. package/dialog/Dialog.js +68 -130
  111. package/dialog/Dialog.stories.tsx +320 -167
  112. package/dialog/Dialog.test.js +307 -0
  113. package/dialog/types.d.ts +18 -25
  114. package/divider/Divider.accessibility.test.js +33 -0
  115. package/divider/Divider.d.ts +4 -0
  116. package/divider/Divider.js +36 -0
  117. package/divider/Divider.stories.tsx +223 -0
  118. package/divider/Divider.test.js +38 -0
  119. package/divider/types.d.ts +21 -0
  120. package/dropdown/Dropdown.accessibility.test.js +180 -0
  121. package/dropdown/Dropdown.d.ts +1 -1
  122. package/dropdown/Dropdown.js +231 -329
  123. package/dropdown/Dropdown.stories.tsx +244 -64
  124. package/dropdown/Dropdown.test.js +599 -0
  125. package/dropdown/DropdownMenu.d.ts +4 -0
  126. package/dropdown/DropdownMenu.js +63 -0
  127. package/dropdown/DropdownMenuItem.d.ts +4 -0
  128. package/dropdown/DropdownMenuItem.js +70 -0
  129. package/dropdown/types.d.ts +37 -30
  130. package/file-input/FileInput.accessibility.test.js +160 -0
  131. package/file-input/FileInput.d.ts +2 -2
  132. package/file-input/FileInput.js +246 -357
  133. package/file-input/FileInput.stories.tsx +123 -12
  134. package/file-input/FileInput.test.js +459 -0
  135. package/file-input/FileItem.d.ts +4 -14
  136. package/file-input/FileItem.js +50 -99
  137. package/file-input/types.d.ts +25 -8
  138. package/flex/Flex.d.ts +4 -0
  139. package/flex/Flex.js +57 -0
  140. package/flex/Flex.stories.tsx +112 -0
  141. package/flex/types.d.ts +97 -0
  142. package/flex/types.js +5 -0
  143. package/footer/Footer.accessibility.test.js +117 -0
  144. package/footer/Footer.d.ts +1 -1
  145. package/footer/Footer.js +70 -192
  146. package/footer/Footer.stories.tsx +61 -21
  147. package/footer/Footer.test.js +85 -0
  148. package/footer/Icons.d.ts +3 -2
  149. package/footer/Icons.js +67 -8
  150. package/footer/types.d.ts +25 -26
  151. package/grid/Grid.d.ts +7 -0
  152. package/grid/Grid.js +76 -0
  153. package/grid/Grid.stories.tsx +219 -0
  154. package/grid/types.d.ts +115 -0
  155. package/grid/types.js +5 -0
  156. package/header/Header.accessibility.test.js +84 -0
  157. package/header/Header.d.ts +4 -3
  158. package/header/Header.js +99 -203
  159. package/header/Header.stories.tsx +152 -63
  160. package/header/Header.test.js +66 -0
  161. package/header/Icons.d.ts +2 -2
  162. package/header/Icons.js +4 -9
  163. package/header/types.d.ts +7 -21
  164. package/heading/Heading.accessibility.test.js +33 -0
  165. package/heading/Heading.js +10 -32
  166. package/heading/Heading.test.js +169 -0
  167. package/heading/types.d.ts +7 -7
  168. package/icon/Icon.accessibility.test.js +30 -0
  169. package/icon/Icon.d.ts +4 -0
  170. package/icon/Icon.js +33 -0
  171. package/icon/Icon.stories.tsx +28 -0
  172. package/icon/types.d.ts +4 -0
  173. package/icon/types.js +5 -0
  174. package/image/Image.accessibility.test.js +56 -0
  175. package/image/Image.d.ts +4 -0
  176. package/image/Image.js +70 -0
  177. package/image/Image.stories.tsx +129 -0
  178. package/image/types.d.ts +72 -0
  179. package/image/types.js +5 -0
  180. package/inset/Inset.js +14 -55
  181. package/inset/Inset.stories.tsx +37 -36
  182. package/inset/types.d.ts +26 -2
  183. package/layout/ApplicationLayout.d.ts +16 -6
  184. package/layout/ApplicationLayout.js +83 -174
  185. package/layout/ApplicationLayout.stories.tsx +85 -94
  186. package/layout/Icons.d.ts +8 -0
  187. package/layout/Icons.js +49 -48
  188. package/layout/types.d.ts +19 -35
  189. package/link/Link.accessibility.test.js +112 -0
  190. package/link/Link.d.ts +3 -2
  191. package/link/Link.js +64 -108
  192. package/link/Link.stories.tsx +159 -52
  193. package/link/Link.test.js +63 -0
  194. package/link/types.d.ts +15 -35
  195. package/main.d.ts +19 -18
  196. package/main.js +82 -120
  197. package/nav-tabs/NavTabs.accessibility.test.js +52 -0
  198. package/nav-tabs/NavTabs.d.ts +7 -0
  199. package/nav-tabs/NavTabs.js +93 -0
  200. package/nav-tabs/NavTabs.stories.tsx +276 -0
  201. package/nav-tabs/NavTabs.test.js +76 -0
  202. package/nav-tabs/NavTabsContext.d.ts +3 -0
  203. package/nav-tabs/NavTabsContext.js +8 -0
  204. package/nav-tabs/Tab.d.ts +4 -0
  205. package/nav-tabs/Tab.js +118 -0
  206. package/nav-tabs/types.d.ts +52 -0
  207. package/nav-tabs/types.js +5 -0
  208. package/number-input/NumberInput.accessibility.test.js +228 -0
  209. package/number-input/NumberInput.js +47 -44
  210. package/number-input/NumberInput.stories.tsx +44 -28
  211. package/number-input/NumberInput.test.js +989 -0
  212. package/number-input/NumberInputContext.d.ts +3 -4
  213. package/number-input/NumberInputContext.js +3 -14
  214. package/number-input/types.d.ts +34 -15
  215. package/package.json +52 -53
  216. package/paginator/Icons.d.ts +5 -0
  217. package/paginator/Icons.js +21 -47
  218. package/paginator/Paginator.accessibility.test.js +79 -0
  219. package/paginator/Paginator.js +34 -91
  220. package/paginator/Paginator.stories.tsx +24 -0
  221. package/paginator/Paginator.test.js +335 -0
  222. package/paginator/types.d.ts +3 -3
  223. package/paragraph/Paragraph.accessibility.test.js +28 -0
  224. package/paragraph/Paragraph.d.ts +5 -0
  225. package/paragraph/Paragraph.js +22 -0
  226. package/paragraph/Paragraph.stories.tsx +27 -0
  227. package/password-input/Icons.d.ts +6 -0
  228. package/password-input/Icons.js +35 -0
  229. package/password-input/PasswordInput.accessibility.test.js +153 -0
  230. package/password-input/PasswordInput.js +57 -123
  231. package/password-input/PasswordInput.stories.tsx +1 -33
  232. package/password-input/PasswordInput.test.js +198 -0
  233. package/password-input/types.d.ts +21 -17
  234. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  235. package/progress-bar/ProgressBar.js +65 -91
  236. package/progress-bar/ProgressBar.stories.tsx +93 -0
  237. package/progress-bar/ProgressBar.test.js +93 -0
  238. package/progress-bar/types.d.ts +3 -3
  239. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  240. package/quick-nav/QuickNav.d.ts +4 -0
  241. package/quick-nav/QuickNav.js +94 -0
  242. package/quick-nav/QuickNav.stories.tsx +356 -0
  243. package/quick-nav/types.d.ts +21 -0
  244. package/quick-nav/types.js +5 -0
  245. package/radio-group/Radio.d.ts +1 -1
  246. package/radio-group/Radio.js +67 -73
  247. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  248. package/radio-group/RadioGroup.js +108 -141
  249. package/radio-group/RadioGroup.stories.tsx +171 -36
  250. package/radio-group/RadioGroup.test.js +756 -0
  251. package/radio-group/types.d.ts +88 -10
  252. package/resultset-table/Icons.d.ts +7 -0
  253. package/resultset-table/Icons.js +47 -0
  254. package/resultset-table/ResultsetTable.accessibility.test.js +274 -0
  255. package/resultset-table/ResultsetTable.d.ts +7 -0
  256. package/resultset-table/ResultsetTable.js +170 -0
  257. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +156 -30
  258. package/resultset-table/ResultsetTable.test.js +381 -0
  259. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  260. package/resultset-table/types.js +5 -0
  261. package/select/Icons.d.ts +10 -0
  262. package/select/Icons.js +89 -0
  263. package/select/Listbox.d.ts +4 -0
  264. package/select/Listbox.js +143 -0
  265. package/select/Option.d.ts +4 -0
  266. package/select/Option.js +87 -0
  267. package/select/Select.accessibility.test.js +217 -0
  268. package/select/Select.js +229 -502
  269. package/select/Select.stories.tsx +602 -204
  270. package/select/Select.test.js +2370 -0
  271. package/select/types.d.ts +64 -25
  272. package/sidenav/Icons.d.ts +7 -0
  273. package/sidenav/Icons.js +47 -0
  274. package/sidenav/Sidenav.accessibility.test.js +59 -0
  275. package/sidenav/Sidenav.d.ts +6 -5
  276. package/sidenav/Sidenav.js +132 -71
  277. package/sidenav/Sidenav.stories.tsx +250 -151
  278. package/sidenav/Sidenav.test.js +37 -0
  279. package/sidenav/SidenavContext.d.ts +5 -0
  280. package/sidenav/SidenavContext.js +13 -0
  281. package/sidenav/types.d.ts +52 -26
  282. package/slider/Slider.accessibility.test.js +104 -0
  283. package/slider/Slider.d.ts +2 -2
  284. package/slider/Slider.js +148 -180
  285. package/slider/Slider.test.js +254 -0
  286. package/slider/types.d.ts +11 -3
  287. package/spinner/Spinner.accessibility.test.js +96 -0
  288. package/spinner/Spinner.js +31 -75
  289. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  290. package/spinner/Spinner.test.js +55 -0
  291. package/spinner/types.d.ts +3 -3
  292. package/status-light/StatusLight.accessibility.test.js +157 -0
  293. package/status-light/StatusLight.d.ts +4 -0
  294. package/status-light/StatusLight.js +51 -0
  295. package/status-light/StatusLight.stories.tsx +74 -0
  296. package/status-light/StatusLight.test.js +25 -0
  297. package/status-light/types.d.ts +17 -0
  298. package/status-light/types.js +5 -0
  299. package/switch/Switch.accessibility.test.js +89 -0
  300. package/switch/Switch.d.ts +2 -2
  301. package/switch/Switch.js +149 -114
  302. package/switch/Switch.stories.tsx +44 -67
  303. package/switch/Switch.test.js +180 -0
  304. package/switch/types.d.ts +13 -5
  305. package/table/DropdownTheme.js +62 -0
  306. package/table/Table.accessibility.test.js +82 -0
  307. package/table/Table.d.ts +6 -2
  308. package/table/Table.js +78 -35
  309. package/table/Table.stories.tsx +651 -0
  310. package/table/Table.test.js +113 -0
  311. package/table/types.d.ts +34 -6
  312. package/tabs/Tab.d.ts +4 -0
  313. package/tabs/Tab.js +116 -0
  314. package/tabs/Tabs.accessibility.test.js +56 -0
  315. package/tabs/Tabs.d.ts +1 -1
  316. package/tabs/Tabs.js +316 -145
  317. package/tabs/Tabs.stories.tsx +120 -14
  318. package/tabs/Tabs.test.js +294 -0
  319. package/tabs/types.d.ts +29 -15
  320. package/tag/Tag.accessibility.test.js +69 -0
  321. package/tag/Tag.d.ts +1 -1
  322. package/tag/Tag.js +43 -85
  323. package/tag/Tag.stories.tsx +37 -27
  324. package/tag/Tag.test.js +49 -0
  325. package/tag/types.d.ts +25 -16
  326. package/text-input/Suggestion.d.ts +4 -0
  327. package/text-input/Suggestion.js +67 -0
  328. package/text-input/Suggestions.d.ts +4 -0
  329. package/text-input/Suggestions.js +86 -0
  330. package/text-input/TextInput.accessibility.test.js +321 -0
  331. package/text-input/TextInput.js +329 -556
  332. package/text-input/TextInput.stories.tsx +281 -272
  333. package/text-input/TextInput.test.js +1756 -0
  334. package/text-input/types.d.ts +70 -24
  335. package/textarea/Textarea.accessibility.test.js +155 -0
  336. package/textarea/Textarea.js +85 -135
  337. package/textarea/Textarea.stories.tsx +174 -0
  338. package/textarea/Textarea.test.js +406 -0
  339. package/textarea/types.d.ts +27 -16
  340. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  341. package/toggle-group/ToggleGroup.d.ts +2 -2
  342. package/toggle-group/ToggleGroup.js +92 -105
  343. package/toggle-group/ToggleGroup.stories.tsx +53 -8
  344. package/toggle-group/ToggleGroup.test.js +137 -0
  345. package/toggle-group/types.d.ts +34 -17
  346. package/typography/Typography.accessibility.test.js +339 -0
  347. package/typography/Typography.d.ts +4 -0
  348. package/typography/Typography.js +23 -0
  349. package/typography/Typography.stories.tsx +198 -0
  350. package/typography/types.d.ts +18 -0
  351. package/typography/types.js +5 -0
  352. package/useTheme.d.ts +1147 -1
  353. package/useTheme.js +4 -11
  354. package/useTranslatedLabels.d.ts +85 -0
  355. package/useTranslatedLabels.js +14 -0
  356. package/utils/BaseTypography.d.ts +21 -0
  357. package/utils/BaseTypography.js +94 -0
  358. package/utils/FocusLock.d.ts +13 -0
  359. package/utils/FocusLock.js +124 -0
  360. package/wizard/Wizard.accessibility.test.js +55 -0
  361. package/wizard/Wizard.d.ts +1 -1
  362. package/wizard/Wizard.js +70 -101
  363. package/wizard/Wizard.stories.tsx +48 -19
  364. package/wizard/Wizard.test.js +114 -0
  365. package/wizard/types.d.ts +13 -9
  366. package/ThemeContext.d.ts +0 -15
  367. package/ThemeContext.js +0 -243
  368. package/V3Select/V3Select.js +0 -455
  369. package/V3Select/index.d.ts +0 -27
  370. package/V3Textarea/V3Textarea.js +0 -260
  371. package/V3Textarea/index.d.ts +0 -27
  372. package/card/ice-cream.jpg +0 -0
  373. package/common/OpenSans.css +0 -81
  374. package/common/RequiredComponent.js +0 -32
  375. package/common/fonts/OpenSans-Bold.ttf +0 -0
  376. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  377. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  378. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  379. package/common/fonts/OpenSans-Italic.ttf +0 -0
  380. package/common/fonts/OpenSans-Light.ttf +0 -0
  381. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  382. package/common/fonts/OpenSans-Regular.ttf +0 -0
  383. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  384. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  385. package/date/Date.js +0 -373
  386. package/date/index.d.ts +0 -27
  387. package/input-text/Icons.js +0 -22
  388. package/input-text/InputText.js +0 -611
  389. package/input-text/index.d.ts +0 -36
  390. package/list/List.d.ts +0 -4
  391. package/list/List.js +0 -47
  392. package/list/List.stories.tsx +0 -95
  393. package/list/types.d.ts +0 -7
  394. package/number-input/numberInputContextTypes.d.ts +0 -19
  395. package/progress-bar/ProgressBar.stories.jsx +0 -58
  396. package/radio/Radio.d.ts +0 -4
  397. package/radio/Radio.js +0 -174
  398. package/radio/Radio.stories.tsx +0 -192
  399. package/radio/types.d.ts +0 -54
  400. package/resultsetTable/ResultsetTable.d.ts +0 -4
  401. package/resultsetTable/ResultsetTable.js +0 -251
  402. package/row/Row.d.ts +0 -3
  403. package/row/Row.js +0 -127
  404. package/row/Row.stories.tsx +0 -237
  405. package/row/types.d.ts +0 -10
  406. package/slider/Slider.stories.tsx +0 -177
  407. package/stack/Stack.d.ts +0 -3
  408. package/stack/Stack.js +0 -97
  409. package/stack/Stack.stories.tsx +0 -164
  410. package/stack/types.d.ts +0 -9
  411. package/table/Table.stories.jsx +0 -277
  412. package/text/Text.d.ts +0 -7
  413. package/text/Text.js +0 -30
  414. package/text/Text.stories.tsx +0 -19
  415. package/textarea/Textarea.stories.jsx +0 -136
  416. package/toggle/Toggle.js +0 -186
  417. package/toggle/index.d.ts +0 -21
  418. package/upload/Upload.js +0 -201
  419. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  420. package/upload/buttons-upload/Icons.js +0 -40
  421. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  422. package/upload/dragAndDropArea/Icons.js +0 -39
  423. package/upload/file-upload/FileToUpload.js +0 -115
  424. package/upload/file-upload/Icons.js +0 -66
  425. package/upload/files-upload/FilesToUpload.js +0 -109
  426. package/upload/index.d.ts +0 -15
  427. package/upload/transaction/Icons.js +0 -160
  428. package/upload/transaction/Transaction.js +0 -104
  429. package/upload/transactions/Transactions.js +0 -94
  430. /package/{list → action-icon}/types.js +0 -0
  431. /package/{radio → badge}/types.js +0 -0
  432. /package/{resultsetTable → bulleted-list}/types.js +0 -0
  433. /package/{row → container}/types.js +0 -0
  434. /package/{stack → contextual-menu}/types.js +0 -0
  435. /package/{number-input/numberInputContextTypes.js → divider/types.js} +0 -0
@@ -1,61 +1,44 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
10
  var _react = _interopRequireDefault(require("react"));
15
-
16
11
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
-
18
12
  var _useTheme = _interopRequireDefault(require("../useTheme"));
19
-
13
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
20
14
  var _Button = _interopRequireDefault(require("../button/Button"));
21
-
22
15
  var _Select = _interopRequireDefault(require("../select/Select"));
23
-
24
16
  var _Icons = require("./Icons");
25
-
26
- var _BackgroundColorContext = require("../BackgroundColorContext");
27
-
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
29
-
30
- 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); }
31
-
32
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(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; }
33
-
17
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
18
+ 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); }
19
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(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; }
34
20
  var DxcPaginator = function DxcPaginator(_ref) {
35
21
  var _ref$currentPage = _ref.currentPage,
36
- currentPage = _ref$currentPage === void 0 ? 1 : _ref$currentPage,
37
- _ref$itemsPerPage = _ref.itemsPerPage,
38
- itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
39
- itemsPerPageOptions = _ref.itemsPerPageOptions,
40
- _ref$totalItems = _ref.totalItems,
41
- totalItems = _ref$totalItems === void 0 ? 1 : _ref$totalItems,
42
- showGoToPage = _ref.showGoToPage,
43
- onPageChange = _ref.onPageChange,
44
- itemsPerPageFunction = _ref.itemsPerPageFunction,
45
- _ref$tabIndex = _ref.tabIndex,
46
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
47
- var totalPages = Math.ceil(totalItems / itemsPerPage);
22
+ currentPage = _ref$currentPage === void 0 ? 1 : _ref$currentPage,
23
+ _ref$itemsPerPage = _ref.itemsPerPage,
24
+ itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
25
+ itemsPerPageOptions = _ref.itemsPerPageOptions,
26
+ _ref$totalItems = _ref.totalItems,
27
+ totalItems = _ref$totalItems === void 0 ? 1 : _ref$totalItems,
28
+ showGoToPage = _ref.showGoToPage,
29
+ onPageChange = _ref.onPageChange,
30
+ itemsPerPageFunction = _ref.itemsPerPageFunction,
31
+ _ref$tabIndex = _ref.tabIndex,
32
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
33
+ var totalPages = itemsPerPage > 0 && Math.ceil(totalItems / itemsPerPage);
48
34
  var currentPageInternal = currentPage === -1 ? totalPages : currentPage;
49
35
  var minItemsPerPage = currentPageInternal === 1 || currentPageInternal === 0 ? currentPageInternal : (currentPageInternal - 1) * itemsPerPage + 1;
50
36
  var maxItemsPerPage = minItemsPerPage - 1 + itemsPerPage > totalItems ? totalItems : minItemsPerPage - 1 + itemsPerPage;
51
37
  var colorsTheme = (0, _useTheme["default"])();
38
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
52
39
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
53
40
  theme: colorsTheme.paginator
54
- }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
55
- color: colorsTheme.paginator.backgroundColor
56
- }, /*#__PURE__*/_react["default"].createElement(DxcPaginatorContainer, {
57
- disabled: currentPageInternal === 1
58
- }, /*#__PURE__*/_react["default"].createElement(LabelsContainer, null, itemsPerPageOptions && /*#__PURE__*/_react["default"].createElement(ItemsPageContainer, null, /*#__PURE__*/_react["default"].createElement(ItemsLabel, null, "Items per page "), /*#__PURE__*/_react["default"].createElement(SelectContainer, null, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
41
+ }, /*#__PURE__*/_react["default"].createElement(DxcPaginatorContainer, null, /*#__PURE__*/_react["default"].createElement(LabelsContainer, null, itemsPerPageOptions && /*#__PURE__*/_react["default"].createElement(ItemsPageContainer, null, /*#__PURE__*/_react["default"].createElement(ItemsLabel, null, translatedLabels.paginator.itemsPerPageText), /*#__PURE__*/_react["default"].createElement(SelectContainer, null, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
59
42
  options: itemsPerPageOptions.map(function (num) {
60
43
  return {
61
44
  label: num.toString(),
@@ -68,33 +51,23 @@ var DxcPaginator = function DxcPaginator(_ref) {
68
51
  value: itemsPerPage.toString(),
69
52
  size: "fillParent",
70
53
  tabIndex: tabIndex
71
- }))), /*#__PURE__*/_react["default"].createElement(TotalItemsContainer, null, minItemsPerPage, " to ", maxItemsPerPage, " of ", totalItems), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
72
- size: "small",
54
+ }))), /*#__PURE__*/_react["default"].createElement(TotalItemsContainer, null, translatedLabels.paginator.minToMaxOfText(minItemsPerPage, maxItemsPerPage, totalItems)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
73
55
  mode: "secondary",
74
56
  disabled: currentPageInternal === 1 || currentPageInternal === 0,
75
- margin: {
76
- left: "xxsmall",
77
- right: "xxsmall"
78
- },
79
57
  icon: _Icons.firstIcon,
80
58
  tabIndex: tabIndex,
81
59
  onClick: function onClick() {
82
60
  onPageChange(1);
83
61
  }
84
62
  }), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
85
- size: "small",
86
63
  mode: "secondary",
87
64
  disabled: currentPageInternal === 1 || currentPageInternal === 0,
88
- margin: {
89
- left: "xxsmall",
90
- right: "xxsmall"
91
- },
92
65
  icon: _Icons.previousIcon,
93
66
  tabIndex: tabIndex,
94
67
  onClick: function onClick() {
95
68
  onPageChange(currentPage - 1);
96
69
  }
97
- }), showGoToPage && /*#__PURE__*/_react["default"].createElement(PageToSelectContainer, null, /*#__PURE__*/_react["default"].createElement(GoToLabel, null, "Go to page: "), /*#__PURE__*/_react["default"].createElement(SelectContainer, null, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
70
+ }), showGoToPage ? /*#__PURE__*/_react["default"].createElement(PageToSelectContainer, null, /*#__PURE__*/_react["default"].createElement(GoToLabel, null, translatedLabels.paginator.goToPageText, " "), /*#__PURE__*/_react["default"].createElement(SelectContainer, null, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
98
71
  options: Array.from(Array(totalPages), function (e, num) {
99
72
  return {
100
73
  label: (num + 1).toString(),
@@ -107,40 +80,25 @@ var DxcPaginator = function DxcPaginator(_ref) {
107
80
  value: currentPage.toString(),
108
81
  size: "fillParent",
109
82
  tabIndex: tabIndex
110
- }))) || /*#__PURE__*/_react["default"].createElement(TextContainer, null, "Page: ", currentPageInternal, " of ", totalPages), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
111
- size: "small",
83
+ }))) : /*#__PURE__*/_react["default"].createElement("span", null, translatedLabels.paginator.pageOfText(currentPageInternal, totalPages)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
112
84
  mode: "secondary",
113
85
  disabled: currentPageInternal === totalPages,
114
- margin: {
115
- left: "xxsmall",
116
- right: "xxsmall"
117
- },
118
86
  icon: _Icons.nextIcon,
119
87
  tabIndex: tabIndex,
120
88
  onClick: function onClick() {
121
89
  onPageChange(currentPage + 1);
122
90
  }
123
91
  }), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
124
- size: "small",
125
92
  mode: "secondary",
126
93
  disabled: currentPageInternal === totalPages,
127
- margin: {
128
- left: "xxsmall",
129
- right: "xxsmall"
130
- },
131
94
  icon: _Icons.lastIcon,
132
95
  tabIndex: tabIndex,
133
96
  onClick: function onClick() {
134
97
  onPageChange(totalPages);
135
98
  }
136
- })))));
99
+ }))));
137
100
  };
138
-
139
- var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: ", ";\n width: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n text-transform: ", ";\n background-color: ", ";\n color: ", ";\n\n button {\n &:disabled {\n background-color: transparent !important;\n opacity: 0.3 !important;\n }\n }\n"])), function (props) {
140
- return props.theme.height;
141
- }, function (props) {
142
- return props.theme.width;
143
- }, function (props) {
101
+ var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n text-transform: ", ";\n background-color: ", ";\n color: ", ";\n padding: ", " ", ";\n\n button {\n &:disabled {\n background-color: transparent !important;\n opacity: 0.3 !important;\n }\n }\n"])), function (props) {
144
102
  return props.theme.fontFamily;
145
103
  }, function (props) {
146
104
  return props.theme.fontSize;
@@ -154,39 +112,24 @@ var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject ||
154
112
  return props.theme.backgroundColor;
155
113
  }, function (props) {
156
114
  return props.theme.fontColor;
115
+ }, function (props) {
116
+ return props.theme.verticalPadding;
117
+ }, function (props) {
118
+ return props.theme.horizontalPadding;
157
119
  });
158
-
159
- var SelectContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n max-width: 100px;\n"])));
160
-
161
- var ItemsPageContainer = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: ", ";\n margin-left: ", ";\n\n label {\n height: 0px;\n }\n label + .MuiInput-formControl {\n margin-top: 0px;\n }\n"])), function (props) {
120
+ var SelectContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n min-width: 5.25rem;\n"])));
121
+ var ItemsPageContainer = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
162
122
  return props.theme.itemsPerPageSelectorMarginRight;
163
123
  }, function (props) {
164
124
  return props.theme.itemsPerPageSelectorMarginLeft;
165
125
  });
166
-
167
- var ItemsLabel = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 15px;\n"])));
168
-
169
- var GoToLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 10px;\n margin-left: 10px;\n"])));
170
-
126
+ var ItemsLabel = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 0.5rem;\n"])));
127
+ var GoToLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n"])));
171
128
  var TotalItemsContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
172
129
  return props.theme.totalItemsContainerMarginRight;
173
130
  }, function (props) {
174
131
  return props.theme.totalItemsContainerMarginLeft;
175
132
  });
176
-
177
- var LabelsContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n width: 100%;\n justify-content: flex-end;\n align-items: center;\n margin: 0 ", " 0 ", ";\n"])), function (props) {
178
- return props.theme.marginRight;
179
- }, function (props) {
180
- return props.theme.marginLeft;
181
- });
182
-
183
- var PageToSelectContainer = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: ", ";\n margin-left: ", ";\n\n label {\n height: 0px;\n }\n label + .MuiInput-formControl {\n margin-top: 0px;\n }\n"])), function (props) {
184
- return props.theme.pageSelectorMarginRight;
185
- }, function (props) {
186
- return props.theme.pageSelectorMarginLeft;
187
- });
188
-
189
- var TextContainer = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])([""])));
190
-
191
- var _default = DxcPaginator;
192
- exports["default"] = _default;
133
+ var LabelsContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n gap: 0.5rem;\n width: 100%;\n justify-content: flex-end;\n align-items: center;\n"])));
134
+ var PageToSelectContainer = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: 0.5rem;\n"])));
135
+ var _default = exports["default"] = DxcPaginator;
@@ -2,12 +2,20 @@ import React from "react";
2
2
  import DxcPaginator from "./Paginator";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  export default {
7
8
  title: "Paginator",
8
9
  component: DxcPaginator,
9
10
  };
10
11
 
12
+ const opinionatedTheme = {
13
+ paginator: {
14
+ baseColor: "#f2f2f2",
15
+ fontColor: "#000000",
16
+ },
17
+ };
18
+
11
19
  export const Chromatic = () => (
12
20
  <>
13
21
  <ExampleContainer>
@@ -59,5 +67,21 @@ export const Chromatic = () => (
59
67
  showGoToPage
60
68
  />
61
69
  </ExampleContainer>
70
+ <Title title="Opinionated theme" theme="light" level={2} />
71
+ <ExampleContainer>
72
+ <HalstackProvider theme={opinionatedTheme}>
73
+ <ExampleContainer>
74
+ <Title title="Page change and items per page options" theme="light" level={4} />
75
+ <DxcPaginator
76
+ currentPage={1}
77
+ itemsPerPage={10}
78
+ totalItems={27}
79
+ onPageChange={() => {}}
80
+ itemsPerPageOptions={[5, 10, 15]}
81
+ showGoToPage
82
+ />
83
+ </ExampleContainer>
84
+ </HalstackProvider>
85
+ </ExampleContainer>
62
86
  </>
63
87
  );
@@ -0,0 +1,335 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
7
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _react2 = require("@testing-library/react");
10
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
11
+ var _Paginator = _interopRequireDefault(require("./Paginator.tsx"));
12
+ // Mocking DOMRect for Radix Primitive Popover
13
+ global.globalThis = global;
14
+ global.DOMRect = {
15
+ fromRect: function fromRect() {
16
+ return {
17
+ top: 0,
18
+ left: 0,
19
+ bottom: 0,
20
+ right: 0,
21
+ width: 0,
22
+ height: 0
23
+ };
24
+ }
25
+ };
26
+ global.ResizeObserver = /*#__PURE__*/function () {
27
+ function ResizeObserver() {
28
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
29
+ }
30
+ (0, _createClass2["default"])(ResizeObserver, [{
31
+ key: "observe",
32
+ value: function observe() {}
33
+ }, {
34
+ key: "unobserve",
35
+ value: function unobserve() {}
36
+ }, {
37
+ key: "disconnect",
38
+ value: function disconnect() {}
39
+ }]);
40
+ return ResizeObserver;
41
+ }();
42
+ global.DOMRect = {
43
+ fromRect: function fromRect() {
44
+ return {
45
+ top: 0,
46
+ left: 0,
47
+ bottom: 0,
48
+ right: 0,
49
+ width: 0,
50
+ height: 0
51
+ };
52
+ }
53
+ };
54
+ describe("Paginator component tests", function () {
55
+ test("Paginator renders with default values", function () {
56
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], null)),
57
+ getByText = _render.getByText;
58
+ expect(getByText("1 to 1 of 1")).toBeTruthy();
59
+ expect(getByText("Page: 1 of 1")).toBeTruthy();
60
+ });
61
+ test("Paginator renders with currentPage", function () {
62
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
63
+ currentPage: 2
64
+ })),
65
+ getByText = _render2.getByText;
66
+ expect(getByText("Page: 2 of 1")).toBeTruthy();
67
+ });
68
+ test("Paginator renders with itemsPerPageOptions", function () {
69
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
70
+ currentPage: 1,
71
+ itemsPerPage: 10,
72
+ itemsPerPageOptions: [10, 15],
73
+ totalItems: 20
74
+ })),
75
+ getByText = _render3.getByText;
76
+ expect(getByText("Items per page:")).toBeTruthy();
77
+ expect(getByText("1 to 10 of 20")).toBeTruthy();
78
+ expect(getByText("Page: 1 of 2")).toBeTruthy();
79
+ });
80
+ test("Paginator renders with totalItems", function () {
81
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
82
+ totalItems: 20
83
+ })),
84
+ getByText = _render4.getByText;
85
+ expect(getByText("1 to 5 of 20")).toBeTruthy();
86
+ expect(getByText("Page: 1 of 4")).toBeTruthy();
87
+ });
88
+ test("Paginator renders with correct text in second page", function () {
89
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
90
+ currentPage: 2,
91
+ itemsPerPage: 10,
92
+ totalItems: 20
93
+ })),
94
+ getByText = _render5.getByText;
95
+ expect(getByText("11 to 20 of 20")).toBeTruthy();
96
+ expect(getByText("Page: 2 of 2")).toBeTruthy();
97
+ });
98
+ test("Paginator renders goToPage select", function () {
99
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
100
+ currentPage: 2,
101
+ showGoToPage: true,
102
+ itemsPerPage: 10,
103
+ totalItems: 20
104
+ })),
105
+ getByText = _render6.getByText;
106
+ expect(getByText("Go to page:")).toBeTruthy();
107
+ });
108
+ test("Paginator goToPage call correct function", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
109
+ var onClick, _render7, getByText, getAllByRole, goToPageSelect, goToPageOption;
110
+ return _regenerator["default"].wrap(function _callee$(_context) {
111
+ while (1) switch (_context.prev = _context.next) {
112
+ case 0:
113
+ onClick = jest.fn();
114
+ window.HTMLElement.prototype.scrollIntoView = function () {};
115
+ window.HTMLElement.prototype.scrollTo = function () {};
116
+ _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
117
+ currentPage: 1,
118
+ itemsPerPage: 10,
119
+ totalItems: 27,
120
+ showGoToPage: true,
121
+ onPageChange: onClick
122
+ })), getByText = _render7.getByText, getAllByRole = _render7.getAllByRole;
123
+ goToPageSelect = getAllByRole("combobox")[0];
124
+ _context.next = 7;
125
+ return _userEvent["default"].click(goToPageSelect);
126
+ case 7:
127
+ goToPageOption = getByText("2");
128
+ _context.next = 10;
129
+ return _userEvent["default"].click(goToPageOption);
130
+ case 10:
131
+ expect(onClick).toHaveBeenCalledWith(2);
132
+ case 11:
133
+ case "end":
134
+ return _context.stop();
135
+ }
136
+ }, _callee);
137
+ })));
138
+ test("Call correct goToPageFunction", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
139
+ var onClick, _render8, getAllByRole, nextButton;
140
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
141
+ while (1) switch (_context2.prev = _context2.next) {
142
+ case 0:
143
+ onClick = jest.fn();
144
+ _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
145
+ onPageChange: onClick,
146
+ currentPage: 1,
147
+ itemsPerPage: 10,
148
+ totalItems: 20
149
+ })), getAllByRole = _render8.getAllByRole;
150
+ nextButton = getAllByRole("button")[2];
151
+ _context2.next = 5;
152
+ return _userEvent["default"].click(nextButton);
153
+ case 5:
154
+ expect(onClick).toHaveBeenCalled();
155
+ case 6:
156
+ case "end":
157
+ return _context2.stop();
158
+ }
159
+ }, _callee2);
160
+ })));
161
+ test("Call correct itemsPerPageFunction", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
162
+ var onClick, _render9, getAllByText, getByText, select, itemPerPageOption;
163
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
164
+ while (1) switch (_context3.prev = _context3.next) {
165
+ case 0:
166
+ onClick = jest.fn();
167
+ window.HTMLElement.prototype.scrollIntoView = function () {};
168
+ window.HTMLElement.prototype.scrollTo = function () {};
169
+ _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
170
+ currentPage: 1,
171
+ itemsPerPage: 10,
172
+ itemsPerPageOptions: [10, 15],
173
+ itemsPerPageFunction: onClick,
174
+ totalItems: 20
175
+ })), getAllByText = _render9.getAllByText, getByText = _render9.getByText;
176
+ select = getAllByText("10")[0];
177
+ _context3.next = 7;
178
+ return _userEvent["default"].click(select);
179
+ case 7:
180
+ itemPerPageOption = getByText("15");
181
+ _context3.next = 10;
182
+ return _userEvent["default"].click(itemPerPageOption);
183
+ case 10:
184
+ expect(onClick).toHaveBeenCalledWith(15);
185
+ case 11:
186
+ case "end":
187
+ return _context3.stop();
188
+ }
189
+ }, _callee3);
190
+ })));
191
+ test("Next button is disable in last page", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
192
+ var onClick, _render10, getAllByRole, nextButton;
193
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
194
+ while (1) switch (_context4.prev = _context4.next) {
195
+ case 0:
196
+ onClick = jest.fn();
197
+ _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
198
+ onPageChange: onClick,
199
+ currentPage: 2,
200
+ itemsPerPage: 10,
201
+ totalItems: 20
202
+ })), getAllByRole = _render10.getAllByRole;
203
+ nextButton = getAllByRole("button")[2];
204
+ expect(nextButton.hasAttribute("disabled")).toBeTruthy();
205
+ _context4.next = 6;
206
+ return _userEvent["default"].click(nextButton);
207
+ case 6:
208
+ expect(onClick).toHaveBeenCalledTimes(0);
209
+ case 7:
210
+ case "end":
211
+ return _context4.stop();
212
+ }
213
+ }, _callee4);
214
+ })));
215
+ test("Last button is disable in last page", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
216
+ var onClick, _render11, getAllByRole, lastButton;
217
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
218
+ while (1) switch (_context5.prev = _context5.next) {
219
+ case 0:
220
+ onClick = jest.fn();
221
+ _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
222
+ onPageChange: onClick,
223
+ currentPage: 2,
224
+ itemsPerPage: 10,
225
+ totalItems: 20
226
+ })), getAllByRole = _render11.getAllByRole;
227
+ lastButton = getAllByRole("button")[3];
228
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
229
+ _context5.next = 6;
230
+ return _userEvent["default"].click(lastButton);
231
+ case 6:
232
+ expect(onClick).toHaveBeenCalledTimes(0);
233
+ case 7:
234
+ case "end":
235
+ return _context5.stop();
236
+ }
237
+ }, _callee5);
238
+ })));
239
+ test("First button is disable in first page", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
240
+ var onClick, _render12, getAllByRole, lastButton;
241
+ return _regenerator["default"].wrap(function _callee6$(_context6) {
242
+ while (1) switch (_context6.prev = _context6.next) {
243
+ case 0:
244
+ onClick = jest.fn();
245
+ _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
246
+ onPageChange: onClick,
247
+ currentPage: 1,
248
+ itemsPerPage: 10,
249
+ totalItems: 20
250
+ })), getAllByRole = _render12.getAllByRole;
251
+ lastButton = getAllByRole("button")[0];
252
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
253
+ _context6.next = 6;
254
+ return _userEvent["default"].click(lastButton);
255
+ case 6:
256
+ expect(onClick).toHaveBeenCalledTimes(0);
257
+ case 7:
258
+ case "end":
259
+ return _context6.stop();
260
+ }
261
+ }, _callee6);
262
+ })));
263
+ test("Previous button is disable in first page", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
264
+ var onClick, _render13, getAllByRole, lastButton;
265
+ return _regenerator["default"].wrap(function _callee7$(_context7) {
266
+ while (1) switch (_context7.prev = _context7.next) {
267
+ case 0:
268
+ onClick = jest.fn();
269
+ _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
270
+ onPageChange: onClick,
271
+ currentPage: 1,
272
+ itemsPerPage: 10,
273
+ totalItems: 20
274
+ })), getAllByRole = _render13.getAllByRole;
275
+ lastButton = getAllByRole("button")[1];
276
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
277
+ _context7.next = 6;
278
+ return _userEvent["default"].click(lastButton);
279
+ case 6:
280
+ expect(onClick).toHaveBeenCalledTimes(0);
281
+ case 7:
282
+ case "end":
283
+ return _context7.stop();
284
+ }
285
+ }, _callee7);
286
+ })));
287
+ test("Last and next buttons are disable in last page", function () {
288
+ var onClick = jest.fn();
289
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
290
+ onPageChange: onClick,
291
+ currentPage: 2,
292
+ itemsPerPage: 10,
293
+ totalItems: 20
294
+ })),
295
+ getAllByRole = _render14.getAllByRole;
296
+ var firstButton = getAllByRole("button")[0];
297
+ var prevButton = getAllByRole("button")[1];
298
+ var nextButton = getAllByRole("button")[2];
299
+ var lastButton = getAllByRole("button")[3];
300
+ expect(firstButton.hasAttribute("disabled")).toBeFalsy();
301
+ expect(prevButton.hasAttribute("disabled")).toBeFalsy();
302
+ expect(nextButton.hasAttribute("disabled")).toBeTruthy();
303
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
304
+ });
305
+ test("First and previous buttons are disable in first page", function () {
306
+ var onClick = jest.fn();
307
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
308
+ onPageChange: onClick,
309
+ currentPage: 1,
310
+ itemsPerPage: 10,
311
+ totalItems: 20
312
+ })),
313
+ getAllByRole = _render15.getAllByRole;
314
+ var firstButton = getAllByRole("button")[0];
315
+ var prevButton = getAllByRole("button")[1];
316
+ var nextButton = getAllByRole("button")[2];
317
+ var lastButton = getAllByRole("button")[3];
318
+ expect(firstButton.hasAttribute("disabled")).toBeTruthy();
319
+ expect(prevButton.hasAttribute("disabled")).toBeTruthy();
320
+ expect(nextButton.hasAttribute("disabled")).toBeFalsy();
321
+ expect(lastButton.hasAttribute("disabled")).toBeFalsy();
322
+ });
323
+ test("itemsPerPage is 0 and showGoToPage is true", function () {
324
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
325
+ itemsPerPage: 0,
326
+ itemsPerPageOptions: [5, 10, 15],
327
+ totalItems: 27,
328
+ showGoToPage: true
329
+ })),
330
+ getByText = _render16.getByText,
331
+ getAllByRole = _render16.getAllByRole;
332
+ expect(getByText("Items per page:")).toBeTruthy();
333
+ expect(getAllByRole("combobox")).toBeTruthy();
334
+ });
335
+ });
@@ -1,4 +1,4 @@
1
- declare type Props = {
1
+ type Props = {
2
2
  /**
3
3
  * Number of the current selected page.
4
4
  */
@@ -16,7 +16,7 @@ declare type Props = {
16
16
  * This function will be called when the user selects an item per page option.
17
17
  * The number will be passed as a parameter to this function.
18
18
  */
19
- itemsPerPageFunction?: (val: number) => void;
19
+ itemsPerPageFunction?: (itemsPerPage: number) => void;
20
20
  /**
21
21
  * Total number of items in the pages.
22
22
  */
@@ -29,7 +29,7 @@ declare type Props = {
29
29
  * This function will be called when the user clicks on any of the button to change pages.
30
30
  * The page number will be passed as a parameter to this function.
31
31
  */
32
- onPageChange?: (val: number) => void;
32
+ onPageChange?: (page: number) => void;
33
33
  /**
34
34
  * Value of the tabindex attribute.
35
35
  */
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _jestAxe = require("jest-axe");
9
+ var _Paragraph = _interopRequireDefault(require("./Paragraph"));
10
+ describe("Paragraph component accessibility tests", function () {
11
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
12
+ var _render, container, results;
13
+ return _regenerator["default"].wrap(function _callee$(_context) {
14
+ while (1) switch (_context.prev = _context.next) {
15
+ case 0:
16
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paragraph["default"], null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla id tortor sit amet velit auctor cursus id eget nisl. Vivamus luctus egestas eros, at mattis libero eleifend ac. Integer vel urna rutrum, pretium arcu dignissim, fringilla turpis. Nullam luctus odio quis magna finibus, a pharetra magna euismod. Nullam efficitur semper pellentesque. Nulla eget arcu ac diam fringilla vehicula. In imperdiet nisl hendrerit, elementum metus eu, ornare risus. Aenean neque nibh, vestibulum vitae elit vel, imperdiet suscipit leo. Curabitur blandit iaculis pretium. Fusce id imperdiet dui, ut laoreet justo. Sed maximus sollicitudin ipsum, et varius massa condimentum eget. Vivamus id mauris et nisl mattis consequat et id lectus. Quisque mollis lacinia nisl. Suspendisse sed quam tincidunt, commodo dolor vel, tincidunt nisl.")), container = _render.container;
17
+ _context.next = 3;
18
+ return (0, _jestAxe.axe)(container);
19
+ case 3:
20
+ results = _context.sent;
21
+ expect(results).toHaveNoViolations();
22
+ case 5:
23
+ case "end":
24
+ return _context.stop();
25
+ }
26
+ }, _callee);
27
+ })));
28
+ });
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ declare const DxcParagraph: ({ children }: {
3
+ children: React.ReactNode;
4
+ }) => JSX.Element;
5
+ export default DxcParagraph;