@dxc-technology/halstack-react 0.0.0-9b45027 → 0.0.0-9bd9511

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 (294) hide show
  1. package/BackgroundColorContext.d.ts +2 -2
  2. package/BackgroundColorContext.js +1 -11
  3. package/HalstackContext.d.ts +13 -0
  4. package/HalstackContext.js +318 -0
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +124 -179
  7. package/accordion/Accordion.stories.tsx +115 -27
  8. package/accordion/Accordion.test.js +56 -0
  9. package/accordion/types.d.ts +12 -11
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +28 -77
  12. package/accordion-group/AccordionGroup.stories.tsx +28 -2
  13. package/accordion-group/AccordionGroup.test.js +108 -0
  14. package/accordion-group/types.d.ts +19 -12
  15. package/alert/Alert.js +18 -46
  16. package/alert/Alert.stories.tsx +28 -0
  17. package/alert/Alert.test.js +75 -0
  18. package/alert/types.d.ts +3 -3
  19. package/badge/Badge.d.ts +4 -0
  20. package/badge/Badge.js +6 -16
  21. package/badge/types.d.ts +5 -0
  22. package/bleed/Bleed.d.ts +2 -2
  23. package/bleed/Bleed.js +14 -55
  24. package/bleed/Bleed.stories.tsx +94 -95
  25. package/bleed/types.d.ts +26 -2
  26. package/box/Box.js +34 -63
  27. package/box/Box.stories.tsx +15 -0
  28. package/box/Box.test.js +13 -0
  29. package/box/types.d.ts +5 -4
  30. package/bulleted-list/BulletedList.d.ts +7 -0
  31. package/bulleted-list/BulletedList.js +98 -0
  32. package/bulleted-list/BulletedList.stories.tsx +200 -0
  33. package/bulleted-list/types.d.ts +11 -0
  34. package/bulleted-list/types.js +5 -0
  35. package/button/Button.js +61 -100
  36. package/button/Button.stories.tsx +159 -8
  37. package/button/Button.test.js +26 -0
  38. package/button/types.d.ts +8 -8
  39. package/card/Card.js +44 -70
  40. package/card/Card.test.js +39 -0
  41. package/card/types.d.ts +4 -3
  42. package/checkbox/Checkbox.d.ts +2 -2
  43. package/checkbox/Checkbox.js +115 -162
  44. package/checkbox/Checkbox.stories.tsx +198 -130
  45. package/checkbox/Checkbox.test.js +128 -0
  46. package/checkbox/types.d.ts +14 -6
  47. package/chip/Chip.d.ts +1 -1
  48. package/chip/Chip.js +29 -91
  49. package/chip/Chip.stories.tsx +98 -13
  50. package/chip/Chip.test.js +42 -0
  51. package/chip/types.d.ts +8 -16
  52. package/common/utils.js +1 -6
  53. package/common/variables.d.ts +1431 -0
  54. package/common/variables.js +480 -554
  55. package/date-input/Calendar.d.ts +4 -0
  56. package/date-input/Calendar.js +215 -0
  57. package/date-input/DateInput.js +164 -300
  58. package/date-input/DateInput.stories.tsx +199 -33
  59. package/date-input/DateInput.test.js +648 -0
  60. package/date-input/DatePicker.d.ts +4 -0
  61. package/date-input/DatePicker.js +116 -0
  62. package/date-input/Icons.d.ts +6 -0
  63. package/date-input/Icons.js +63 -0
  64. package/date-input/YearPicker.d.ts +4 -0
  65. package/date-input/YearPicker.js +101 -0
  66. package/date-input/types.d.ts +71 -13
  67. package/dialog/Dialog.js +52 -84
  68. package/dialog/Dialog.stories.tsx +99 -22
  69. package/dialog/Dialog.test.js +56 -0
  70. package/dialog/types.d.ts +4 -3
  71. package/dropdown/Dropdown.d.ts +1 -1
  72. package/dropdown/Dropdown.js +240 -323
  73. package/dropdown/Dropdown.stories.tsx +255 -64
  74. package/dropdown/Dropdown.test.js +479 -0
  75. package/dropdown/DropdownMenu.d.ts +4 -0
  76. package/dropdown/DropdownMenu.js +60 -0
  77. package/dropdown/DropdownMenuItem.d.ts +4 -0
  78. package/dropdown/DropdownMenuItem.js +70 -0
  79. package/dropdown/types.d.ts +30 -19
  80. package/file-input/FileInput.d.ts +2 -2
  81. package/file-input/FileInput.js +224 -351
  82. package/file-input/FileInput.stories.tsx +122 -11
  83. package/file-input/FileInput.test.js +445 -0
  84. package/file-input/FileItem.d.ts +4 -14
  85. package/file-input/FileItem.js +48 -97
  86. package/file-input/types.d.ts +24 -7
  87. package/flex/Flex.d.ts +4 -0
  88. package/flex/Flex.js +57 -0
  89. package/flex/Flex.stories.tsx +103 -0
  90. package/flex/types.d.ts +32 -0
  91. package/flex/types.js +5 -0
  92. package/footer/Footer.js +36 -143
  93. package/footer/Footer.stories.tsx +99 -1
  94. package/footer/Footer.test.js +92 -0
  95. package/footer/Icons.js +1 -5
  96. package/footer/types.d.ts +7 -6
  97. package/header/Header.js +112 -177
  98. package/header/Header.stories.tsx +189 -36
  99. package/header/Header.test.js +66 -0
  100. package/header/Icons.js +2 -6
  101. package/header/types.d.ts +4 -3
  102. package/heading/Heading.js +8 -29
  103. package/heading/Heading.test.js +169 -0
  104. package/heading/types.d.ts +3 -3
  105. package/inset/Inset.js +14 -55
  106. package/inset/Inset.stories.tsx +36 -36
  107. package/inset/types.d.ts +26 -2
  108. package/layout/ApplicationLayout.d.ts +16 -6
  109. package/layout/ApplicationLayout.js +71 -164
  110. package/layout/ApplicationLayout.stories.tsx +84 -93
  111. package/layout/Icons.d.ts +5 -0
  112. package/layout/Icons.js +11 -10
  113. package/layout/SidenavContext.d.ts +5 -0
  114. package/layout/SidenavContext.js +15 -0
  115. package/layout/types.d.ts +18 -33
  116. package/link/Link.d.ts +3 -2
  117. package/link/Link.js +61 -106
  118. package/link/Link.stories.tsx +159 -52
  119. package/link/Link.test.js +65 -0
  120. package/link/types.d.ts +9 -29
  121. package/main.d.ts +11 -15
  122. package/main.js +48 -121
  123. package/nav-tabs/NavTabs.d.ts +8 -0
  124. package/nav-tabs/NavTabs.js +95 -0
  125. package/nav-tabs/NavTabs.stories.tsx +260 -0
  126. package/nav-tabs/NavTabs.test.js +75 -0
  127. package/nav-tabs/Tab.d.ts +4 -0
  128. package/nav-tabs/Tab.js +120 -0
  129. package/nav-tabs/types.d.ts +53 -0
  130. package/nav-tabs/types.js +5 -0
  131. package/number-input/NumberInput.js +21 -38
  132. package/number-input/NumberInput.stories.tsx +5 -5
  133. package/number-input/NumberInput.test.js +406 -0
  134. package/number-input/NumberInputContext.js +0 -5
  135. package/number-input/numberInputContextTypes.d.ts +1 -1
  136. package/number-input/types.d.ts +21 -14
  137. package/package.json +22 -25
  138. package/paginator/Icons.d.ts +5 -0
  139. package/paginator/Icons.js +16 -38
  140. package/paginator/Paginator.js +31 -82
  141. package/paginator/Paginator.stories.tsx +24 -0
  142. package/paginator/Paginator.test.js +266 -0
  143. package/paginator/types.d.ts +1 -1
  144. package/paragraph/Paragraph.d.ts +6 -0
  145. package/paragraph/Paragraph.js +28 -0
  146. package/paragraph/Paragraph.stories.tsx +44 -0
  147. package/password-input/PasswordInput.js +28 -54
  148. package/password-input/PasswordInput.test.js +138 -0
  149. package/password-input/types.d.ts +18 -15
  150. package/progress-bar/ProgressBar.d.ts +2 -2
  151. package/progress-bar/ProgressBar.js +65 -84
  152. package/progress-bar/ProgressBar.stories.jsx +47 -12
  153. package/progress-bar/ProgressBar.test.js +93 -0
  154. package/progress-bar/types.d.ts +3 -4
  155. package/quick-nav/QuickNav.d.ts +4 -0
  156. package/quick-nav/QuickNav.js +95 -0
  157. package/quick-nav/QuickNav.stories.tsx +356 -0
  158. package/quick-nav/types.d.ts +21 -0
  159. package/quick-nav/types.js +5 -0
  160. package/radio-group/Radio.d.ts +1 -1
  161. package/radio-group/Radio.js +61 -66
  162. package/radio-group/RadioGroup.js +99 -129
  163. package/radio-group/RadioGroup.stories.tsx +171 -36
  164. package/radio-group/RadioGroup.test.js +620 -0
  165. package/radio-group/types.d.ts +85 -7
  166. package/resultsetTable/Icons.d.ts +7 -0
  167. package/resultsetTable/Icons.js +48 -0
  168. package/resultsetTable/ResultsetTable.js +66 -157
  169. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  170. package/resultsetTable/ResultsetTable.test.js +292 -0
  171. package/resultsetTable/types.d.ts +5 -5
  172. package/select/Icons.d.ts +10 -0
  173. package/select/Icons.js +90 -0
  174. package/select/Listbox.d.ts +4 -0
  175. package/select/Listbox.js +144 -0
  176. package/select/Option.d.ts +4 -0
  177. package/select/Option.js +81 -0
  178. package/select/Select.js +201 -485
  179. package/select/Select.stories.tsx +600 -201
  180. package/select/Select.test.js +1845 -0
  181. package/select/types.d.ts +62 -22
  182. package/sidenav/Sidenav.d.ts +6 -5
  183. package/sidenav/Sidenav.js +164 -74
  184. package/sidenav/Sidenav.stories.tsx +249 -149
  185. package/sidenav/Sidenav.test.js +37 -0
  186. package/sidenav/types.d.ts +50 -27
  187. package/slider/Slider.d.ts +2 -2
  188. package/slider/Slider.js +143 -164
  189. package/slider/Slider.stories.tsx +72 -9
  190. package/slider/Slider.test.js +222 -0
  191. package/slider/types.d.ts +11 -3
  192. package/spinner/Spinner.js +12 -41
  193. package/spinner/Spinner.stories.jsx +27 -1
  194. package/spinner/Spinner.test.js +55 -0
  195. package/spinner/types.d.ts +3 -3
  196. package/switch/Switch.d.ts +2 -2
  197. package/switch/Switch.js +148 -107
  198. package/switch/Switch.stories.tsx +53 -42
  199. package/switch/Switch.test.js +180 -0
  200. package/switch/types.d.ts +13 -5
  201. package/table/Table.js +5 -23
  202. package/table/Table.stories.jsx +80 -1
  203. package/table/Table.test.js +21 -0
  204. package/table/types.d.ts +3 -3
  205. package/tabs/Tab.d.ts +4 -0
  206. package/tabs/Tab.js +115 -0
  207. package/tabs/Tabs.d.ts +1 -1
  208. package/tabs/Tabs.js +318 -139
  209. package/tabs/Tabs.stories.tsx +119 -13
  210. package/tabs/Tabs.test.js +295 -0
  211. package/tabs/types.d.ts +21 -7
  212. package/tag/Tag.d.ts +1 -1
  213. package/tag/Tag.js +36 -75
  214. package/tag/Tag.stories.tsx +37 -27
  215. package/tag/Tag.test.js +49 -0
  216. package/tag/types.d.ts +25 -16
  217. package/text-input/Icons.d.ts +8 -0
  218. package/text-input/Icons.js +57 -0
  219. package/text-input/Suggestion.d.ts +4 -0
  220. package/text-input/Suggestion.js +68 -0
  221. package/text-input/Suggestions.d.ts +4 -0
  222. package/text-input/Suggestions.js +109 -0
  223. package/text-input/TextInput.js +232 -438
  224. package/text-input/TextInput.stories.tsx +310 -197
  225. package/text-input/TextInput.test.js +1404 -0
  226. package/text-input/types.d.ts +55 -17
  227. package/textarea/Textarea.js +53 -96
  228. package/textarea/Textarea.stories.jsx +93 -13
  229. package/textarea/Textarea.test.js +360 -0
  230. package/textarea/types.d.ts +22 -15
  231. package/toggle-group/ToggleGroup.d.ts +1 -1
  232. package/toggle-group/ToggleGroup.js +23 -57
  233. package/toggle-group/ToggleGroup.stories.tsx +46 -4
  234. package/toggle-group/ToggleGroup.test.js +124 -0
  235. package/toggle-group/types.d.ts +19 -11
  236. package/translatedLabelsType.d.ts +82 -0
  237. package/translatedLabelsType.js +5 -0
  238. package/typography/Typography.d.ts +4 -0
  239. package/typography/Typography.js +119 -0
  240. package/typography/Typography.stories.tsx +198 -0
  241. package/typography/types.d.ts +18 -0
  242. package/typography/types.js +5 -0
  243. package/useTheme.d.ts +1 -1
  244. package/useTheme.js +3 -9
  245. package/useTranslatedLabels.d.ts +3 -0
  246. package/useTranslatedLabels.js +15 -0
  247. package/wizard/Wizard.d.ts +1 -1
  248. package/wizard/Wizard.js +68 -98
  249. package/wizard/Wizard.stories.tsx +48 -19
  250. package/wizard/Wizard.test.js +114 -0
  251. package/wizard/types.d.ts +12 -7
  252. package/ThemeContext.d.ts +0 -15
  253. package/ThemeContext.js +0 -243
  254. package/V3Select/V3Select.js +0 -455
  255. package/V3Select/index.d.ts +0 -27
  256. package/V3Textarea/V3Textarea.js +0 -260
  257. package/V3Textarea/index.d.ts +0 -27
  258. package/common/RequiredComponent.js +0 -32
  259. package/date/Date.js +0 -373
  260. package/date/index.d.ts +0 -27
  261. package/input-text/Icons.js +0 -22
  262. package/input-text/InputText.js +0 -611
  263. package/input-text/index.d.ts +0 -36
  264. package/list/List.d.ts +0 -8
  265. package/list/List.js +0 -47
  266. package/list/List.stories.tsx +0 -95
  267. package/radio/Radio.d.ts +0 -4
  268. package/radio/Radio.js +0 -174
  269. package/radio/Radio.stories.tsx +0 -192
  270. package/radio/types.d.ts +0 -54
  271. package/row/Row.d.ts +0 -11
  272. package/row/Row.js +0 -127
  273. package/row/Row.stories.tsx +0 -239
  274. package/stack/Stack.d.ts +0 -10
  275. package/stack/Stack.js +0 -97
  276. package/stack/Stack.stories.tsx +0 -166
  277. package/text/Text.d.ts +0 -7
  278. package/text/Text.js +0 -30
  279. package/text/Text.stories.tsx +0 -19
  280. package/toggle/Toggle.js +0 -186
  281. package/toggle/index.d.ts +0 -21
  282. package/upload/Upload.js +0 -201
  283. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  284. package/upload/buttons-upload/Icons.js +0 -40
  285. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  286. package/upload/dragAndDropArea/Icons.js +0 -39
  287. package/upload/file-upload/FileToUpload.js +0 -115
  288. package/upload/file-upload/Icons.js +0 -66
  289. package/upload/files-upload/FilesToUpload.js +0 -109
  290. package/upload/index.d.ts +0 -15
  291. package/upload/transaction/Icons.js +0 -160
  292. package/upload/transaction/Transaction.js +0 -104
  293. package/upload/transactions/Transactions.js +0 -94
  294. /package/{radio → badge}/types.js +0 -0
@@ -1,66 +1,44 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.previousIcon = exports.nextIcon = exports.lastIcon = exports.firstIcon = void 0;
9
-
10
8
  var _react = _interopRequireDefault(require("react"));
11
-
12
9
  var firstIcon = /*#__PURE__*/_react["default"].createElement("svg", {
13
10
  xmlns: "http://www.w3.org/2000/svg",
14
- width: "12.41",
15
- height: "12",
16
- viewBox: "0 0 12.41 12"
11
+ height: "24",
12
+ width: "24",
13
+ fill: "currentColor"
17
14
  }, /*#__PURE__*/_react["default"].createElement("path", {
18
- id: "Path_2463",
19
- "data-name": "Path 2463",
20
- d: "M18.41,16.59,13.82,12l4.59-4.59L17,6l-6,6,6,6ZM6,6H8V18H6Z",
21
- transform: "translate(-6 -6)"
15
+ d: "M6 18V6h2v12Zm11 0-6-6 6-6 1.4 1.4-4.6 4.6 4.6 4.6Z"
22
16
  }));
23
-
24
17
  exports.firstIcon = firstIcon;
25
-
26
18
  var previousIcon = /*#__PURE__*/_react["default"].createElement("svg", {
27
19
  xmlns: "http://www.w3.org/2000/svg",
28
- width: "7.41",
29
- height: "12",
30
- viewBox: "0 0 7.41 12"
20
+ height: "24",
21
+ width: "24",
22
+ fill: "currentColor"
31
23
  }, /*#__PURE__*/_react["default"].createElement("path", {
32
- id: "Path_2459",
33
- "data-name": "Path 2459",
34
- d: "M15.41,7.41,14,6,8,12l6,6,1.41-1.41L10.83,12Z",
35
- transform: "translate(-8 -6)"
24
+ d: "m14 18-6-6 6-6 1.4 1.4-4.6 4.6 4.6 4.6Z"
36
25
  }));
37
-
38
26
  exports.previousIcon = previousIcon;
39
-
40
27
  var nextIcon = /*#__PURE__*/_react["default"].createElement("svg", {
41
28
  xmlns: "http://www.w3.org/2000/svg",
42
- width: "7.41",
43
- height: "12",
44
- viewBox: "0 0 7.41 12"
29
+ height: "24",
30
+ width: "24",
31
+ fill: "currentColor"
45
32
  }, /*#__PURE__*/_react["default"].createElement("path", {
46
- id: "Path_2461",
47
- "data-name": "Path 2461",
48
- d: "M10,6,8.59,7.41,13.17,12,8.59,16.59,10,18l6-6Z",
49
- transform: "translate(-8.59 -6)"
33
+ d: "M9.4 18 8 16.6l4.6-4.6L8 7.4 9.4 6l6 6Z"
50
34
  }));
51
-
52
35
  exports.nextIcon = nextIcon;
53
-
54
36
  var lastIcon = /*#__PURE__*/_react["default"].createElement("svg", {
55
37
  xmlns: "http://www.w3.org/2000/svg",
56
- width: "12.41",
57
- height: "12",
58
- viewBox: "0 0 12.41 12"
38
+ height: "24",
39
+ width: "24",
40
+ fill: "currentColor"
59
41
  }, /*#__PURE__*/_react["default"].createElement("path", {
60
- id: "Path_2465",
61
- "data-name": "Path 2465",
62
- d: "M5.59,7.41,10.18,12,5.59,16.59,7,18l6-6L7,6ZM16,6h2V18H16Z",
63
- transform: "translate(-5.59 -6)"
42
+ d: "m7 18-1.4-1.4 4.6-4.6-4.6-4.6L7 6l6 6Zm9 0V6h2v12Z"
64
43
  }));
65
-
66
44
  exports.lastIcon = lastIcon;
@@ -1,61 +1,49 @@
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
17
  var _BackgroundColorContext = require("../BackgroundColorContext");
27
-
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
29
-
18
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
30
19
  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
20
  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
-
34
21
  var DxcPaginator = function DxcPaginator(_ref) {
35
22
  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;
23
+ currentPage = _ref$currentPage === void 0 ? 1 : _ref$currentPage,
24
+ _ref$itemsPerPage = _ref.itemsPerPage,
25
+ itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
26
+ itemsPerPageOptions = _ref.itemsPerPageOptions,
27
+ _ref$totalItems = _ref.totalItems,
28
+ totalItems = _ref$totalItems === void 0 ? 1 : _ref$totalItems,
29
+ showGoToPage = _ref.showGoToPage,
30
+ onPageChange = _ref.onPageChange,
31
+ itemsPerPageFunction = _ref.itemsPerPageFunction,
32
+ _ref$tabIndex = _ref.tabIndex,
33
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
47
34
  var totalPages = Math.ceil(totalItems / itemsPerPage);
48
35
  var currentPageInternal = currentPage === -1 ? totalPages : currentPage;
49
36
  var minItemsPerPage = currentPageInternal === 1 || currentPageInternal === 0 ? currentPageInternal : (currentPageInternal - 1) * itemsPerPage + 1;
50
37
  var maxItemsPerPage = minItemsPerPage - 1 + itemsPerPage > totalItems ? totalItems : minItemsPerPage - 1 + itemsPerPage;
51
38
  var colorsTheme = (0, _useTheme["default"])();
39
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
52
40
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
53
- theme: colorsTheme.paginator
41
+ theme: colorsTheme["paginator"]
54
42
  }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
55
- color: colorsTheme.paginator.backgroundColor
43
+ color: colorsTheme["paginator"].backgroundColor
56
44
  }, /*#__PURE__*/_react["default"].createElement(DxcPaginatorContainer, {
57
45
  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"], {
46
+ }, /*#__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
47
  options: itemsPerPageOptions.map(function (num) {
60
48
  return {
61
49
  label: num.toString(),
@@ -68,33 +56,23 @@ var DxcPaginator = function DxcPaginator(_ref) {
68
56
  value: itemsPerPage.toString(),
69
57
  size: "fillParent",
70
58
  tabIndex: tabIndex
71
- }))), /*#__PURE__*/_react["default"].createElement(TotalItemsContainer, null, minItemsPerPage, " to ", maxItemsPerPage, " of ", totalItems), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
72
- size: "small",
59
+ }))), /*#__PURE__*/_react["default"].createElement(TotalItemsContainer, null, translatedLabels.paginator.minToMaxOfText(minItemsPerPage, maxItemsPerPage, totalItems)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
73
60
  mode: "secondary",
74
61
  disabled: currentPageInternal === 1 || currentPageInternal === 0,
75
- margin: {
76
- left: "xxsmall",
77
- right: "xxsmall"
78
- },
79
62
  icon: _Icons.firstIcon,
80
63
  tabIndex: tabIndex,
81
64
  onClick: function onClick() {
82
65
  onPageChange(1);
83
66
  }
84
67
  }), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
85
- size: "small",
86
68
  mode: "secondary",
87
69
  disabled: currentPageInternal === 1 || currentPageInternal === 0,
88
- margin: {
89
- left: "xxsmall",
90
- right: "xxsmall"
91
- },
92
70
  icon: _Icons.previousIcon,
93
71
  tabIndex: tabIndex,
94
72
  onClick: function onClick() {
95
73
  onPageChange(currentPage - 1);
96
74
  }
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"], {
75
+ }), 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
76
  options: Array.from(Array(totalPages), function (e, num) {
99
77
  return {
100
78
  label: (num + 1).toString(),
@@ -107,27 +85,17 @@ var DxcPaginator = function DxcPaginator(_ref) {
107
85
  value: currentPage.toString(),
108
86
  size: "fillParent",
109
87
  tabIndex: tabIndex
110
- }))) || /*#__PURE__*/_react["default"].createElement(TextContainer, null, "Page: ", currentPageInternal, " of ", totalPages), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
111
- size: "small",
88
+ }))) : /*#__PURE__*/_react["default"].createElement("span", null, translatedLabels.paginator.pageOfText(currentPageInternal, totalPages)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
112
89
  mode: "secondary",
113
90
  disabled: currentPageInternal === totalPages,
114
- margin: {
115
- left: "xxsmall",
116
- right: "xxsmall"
117
- },
118
91
  icon: _Icons.nextIcon,
119
92
  tabIndex: tabIndex,
120
93
  onClick: function onClick() {
121
94
  onPageChange(currentPage + 1);
122
95
  }
123
96
  }), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
124
- size: "small",
125
97
  mode: "secondary",
126
98
  disabled: currentPageInternal === totalPages,
127
- margin: {
128
- left: "xxsmall",
129
- right: "xxsmall"
130
- },
131
99
  icon: _Icons.lastIcon,
132
100
  tabIndex: tabIndex,
133
101
  onClick: function onClick() {
@@ -135,12 +103,7 @@ var DxcPaginator = function DxcPaginator(_ref) {
135
103
  }
136
104
  })))));
137
105
  };
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) {
106
+ 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
107
  return props.theme.fontFamily;
145
108
  }, function (props) {
146
109
  return props.theme.fontSize;
@@ -154,39 +117,25 @@ var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject ||
154
117
  return props.theme.backgroundColor;
155
118
  }, function (props) {
156
119
  return props.theme.fontColor;
120
+ }, function (props) {
121
+ return props.theme.verticalPadding;
122
+ }, function (props) {
123
+ return props.theme.horizontalPadding;
157
124
  });
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) {
125
+ var SelectContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n min-width: 5.25rem;\n"])));
126
+ 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
127
  return props.theme.itemsPerPageSelectorMarginRight;
163
128
  }, function (props) {
164
129
  return props.theme.itemsPerPageSelectorMarginLeft;
165
130
  });
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
-
131
+ var ItemsLabel = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 0.5rem;\n"])));
132
+ var GoToLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n"])));
171
133
  var TotalItemsContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
172
134
  return props.theme.totalItemsContainerMarginRight;
173
135
  }, function (props) {
174
136
  return props.theme.totalItemsContainerMarginLeft;
175
137
  });
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
-
138
+ 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"])));
139
+ var PageToSelectContainer = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: 0.5rem;\n"])));
191
140
  var _default = DxcPaginator;
192
141
  exports["default"] = _default;
@@ -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,266 @@
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 _Paginator = _interopRequireDefault(require("./Paginator"));
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
+ global.DOMRect = {
41
+ fromRect: function fromRect() {
42
+ return {
43
+ top: 0,
44
+ left: 0,
45
+ bottom: 0,
46
+ right: 0,
47
+ width: 0,
48
+ height: 0
49
+ };
50
+ }
51
+ };
52
+ describe("Paginator component tests", function () {
53
+ test("Paginator renders with default values", function () {
54
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], null)),
55
+ getByText = _render.getByText;
56
+ expect(getByText("1 to 1 of 1")).toBeTruthy();
57
+ expect(getByText("Page: 1 of 1")).toBeTruthy();
58
+ });
59
+ test("Paginator renders with currentPage", function () {
60
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
61
+ currentPage: 2
62
+ })),
63
+ getByText = _render2.getByText;
64
+ expect(getByText("Page: 2 of 1")).toBeTruthy();
65
+ });
66
+ test("Paginator renders with itemsPerPageOptions", function () {
67
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
68
+ currentPage: 1,
69
+ itemsPerPage: 10,
70
+ itemsPerPageOptions: [10, 15],
71
+ totalItems: 20
72
+ })),
73
+ getByText = _render3.getByText;
74
+ expect(getByText("Items per page:")).toBeTruthy();
75
+ });
76
+ test("Paginator renders with itemsPerPageOptions", function () {
77
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
78
+ currentPage: 1,
79
+ itemsPerPage: 10,
80
+ totalItems: 20
81
+ })),
82
+ getByText = _render4.getByText;
83
+ expect(getByText("1 to 10 of 20")).toBeTruthy();
84
+ expect(getByText("Page: 1 of 2")).toBeTruthy();
85
+ });
86
+ test("Paginator renders with totalItems", function () {
87
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
88
+ totalItems: 20
89
+ })),
90
+ getByText = _render5.getByText;
91
+ expect(getByText("1 to 5 of 20")).toBeTruthy();
92
+ expect(getByText("Page: 1 of 4")).toBeTruthy();
93
+ });
94
+ test("Paginator renders with correct text in second page", function () {
95
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
96
+ currentPage: 2,
97
+ itemsPerPage: 10,
98
+ totalItems: 20
99
+ })),
100
+ getByText = _render6.getByText;
101
+ expect(getByText("11 to 20 of 20")).toBeTruthy();
102
+ expect(getByText("Page: 2 of 2")).toBeTruthy();
103
+ });
104
+ test("Paginator renders goToPage select", function () {
105
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
106
+ currentPage: 2,
107
+ showGoToPage: true,
108
+ itemsPerPage: 10,
109
+ totalItems: 20
110
+ })),
111
+ getByText = _render7.getByText;
112
+ expect(getByText("Go to page:")).toBeTruthy();
113
+ });
114
+ test("Paginator goToPage call correct function", function () {
115
+ var onClick = jest.fn();
116
+ window.HTMLElement.prototype.scrollIntoView = function () {};
117
+ window.HTMLElement.prototype.scrollTo = function () {};
118
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
119
+ currentPage: 1,
120
+ itemsPerPage: 10,
121
+ totalItems: 27,
122
+ showGoToPage: true,
123
+ onPageChange: onClick
124
+ })),
125
+ getByText = _render8.getByText,
126
+ getAllByRole = _render8.getAllByRole,
127
+ getByRole = _render8.getByRole;
128
+ var goToPageSelect = getAllByRole("combobox")[0];
129
+ (0, _react2.act)(function () {
130
+ _userEvent["default"].click(goToPageSelect);
131
+ });
132
+ var goToPageOption = getByText("2");
133
+ (0, _react2.act)(function () {
134
+ _userEvent["default"].click(goToPageOption);
135
+ });
136
+ expect(onClick).toHaveBeenCalledWith(2);
137
+ });
138
+ test("Call correct goToPageFunction", function () {
139
+ var onClick = jest.fn();
140
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
141
+ onPageChange: onClick,
142
+ currentPage: 1,
143
+ itemsPerPage: 10,
144
+ totalItems: 20
145
+ })),
146
+ getAllByRole = _render9.getAllByRole;
147
+ var nextButton = getAllByRole("button")[2];
148
+ _userEvent["default"].click(nextButton);
149
+ expect(onClick).toHaveBeenCalled();
150
+ });
151
+ test("Call correct itemsPerPageFunction", function () {
152
+ var onClick = jest.fn();
153
+ window.HTMLElement.prototype.scrollIntoView = function () {};
154
+ window.HTMLElement.prototype.scrollTo = function () {};
155
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
156
+ currentPage: 1,
157
+ itemsPerPage: 10,
158
+ itemsPerPageOptions: [10, 15],
159
+ itemsPerPageFunction: onClick,
160
+ totalItems: 20
161
+ })),
162
+ getAllByText = _render10.getAllByText,
163
+ getByText = _render10.getByText;
164
+ var select = getAllByText("10")[0];
165
+ (0, _react2.act)(function () {
166
+ _userEvent["default"].click(select);
167
+ });
168
+ var itemPerPageOption = getByText("15");
169
+ (0, _react2.act)(function () {
170
+ _userEvent["default"].click(itemPerPageOption);
171
+ });
172
+ expect(onClick).toHaveBeenCalledWith(15);
173
+ });
174
+ test("Next button is disable in last page", function () {
175
+ var onClick = jest.fn();
176
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
177
+ onPageChange: onClick,
178
+ currentPage: 2,
179
+ itemsPerPage: 10,
180
+ totalItems: 20
181
+ })),
182
+ getAllByRole = _render11.getAllByRole;
183
+ var nextButton = getAllByRole("button")[2];
184
+ expect(nextButton.hasAttribute("disabled")).toBeTruthy();
185
+ _userEvent["default"].click(nextButton);
186
+ expect(onClick).toHaveBeenCalledTimes(0);
187
+ });
188
+ test("Last button is disable in last page", function () {
189
+ var onClick = jest.fn();
190
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
191
+ onPageChange: onClick,
192
+ currentPage: 2,
193
+ itemsPerPage: 10,
194
+ totalItems: 20
195
+ })),
196
+ getAllByRole = _render12.getAllByRole;
197
+ var lastButton = getAllByRole("button")[3];
198
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
199
+ _userEvent["default"].click(lastButton);
200
+ expect(onClick).toHaveBeenCalledTimes(0);
201
+ });
202
+ test("First button is disable in first page", function () {
203
+ var onClick = jest.fn();
204
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
205
+ onPageChange: onClick,
206
+ currentPage: 1,
207
+ itemsPerPage: 10,
208
+ totalItems: 20
209
+ })),
210
+ getAllByRole = _render13.getAllByRole;
211
+ var lastButton = getAllByRole("button")[0];
212
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
213
+ _userEvent["default"].click(lastButton);
214
+ expect(onClick).toHaveBeenCalledTimes(0);
215
+ });
216
+ test("Previous button is disable in first page", function () {
217
+ var onClick = jest.fn();
218
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
219
+ onPageChange: onClick,
220
+ currentPage: 1,
221
+ itemsPerPage: 10,
222
+ totalItems: 20
223
+ })),
224
+ getAllByRole = _render14.getAllByRole;
225
+ var lastButton = getAllByRole("button")[1];
226
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
227
+ _userEvent["default"].click(lastButton);
228
+ expect(onClick).toHaveBeenCalledTimes(0);
229
+ });
230
+ test("Last and next buttons are disable in last page", function () {
231
+ var onClick = jest.fn();
232
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
233
+ onPageChange: onClick,
234
+ currentPage: 2,
235
+ itemsPerPage: 10,
236
+ totalItems: 20
237
+ })),
238
+ getAllByRole = _render15.getAllByRole;
239
+ var firstButton = getAllByRole("button")[0];
240
+ var prevButton = getAllByRole("button")[1];
241
+ var nextButton = getAllByRole("button")[2];
242
+ var lastButton = getAllByRole("button")[3];
243
+ expect(firstButton.hasAttribute("disabled")).toBeFalsy();
244
+ expect(prevButton.hasAttribute("disabled")).toBeFalsy();
245
+ expect(nextButton.hasAttribute("disabled")).toBeTruthy();
246
+ expect(lastButton.hasAttribute("disabled")).toBeTruthy();
247
+ });
248
+ test("First and previous buttons are disable in first page", function () {
249
+ var onClick = jest.fn();
250
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
251
+ onPageChange: onClick,
252
+ currentPage: 1,
253
+ itemsPerPage: 10,
254
+ totalItems: 20
255
+ })),
256
+ getAllByRole = _render16.getAllByRole;
257
+ var firstButton = getAllByRole("button")[0];
258
+ var prevButton = getAllByRole("button")[1];
259
+ var nextButton = getAllByRole("button")[2];
260
+ var lastButton = getAllByRole("button")[3];
261
+ expect(firstButton.hasAttribute("disabled")).toBeTruthy();
262
+ expect(prevButton.hasAttribute("disabled")).toBeTruthy();
263
+ expect(nextButton.hasAttribute("disabled")).toBeFalsy();
264
+ expect(lastButton.hasAttribute("disabled")).toBeFalsy();
265
+ });
266
+ });
@@ -1,4 +1,4 @@
1
- declare type Props = {
1
+ type Props = {
2
2
  /**
3
3
  * Number of the current selected page.
4
4
  */
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ type ParagraphPropsType = {
3
+ children: React.ReactNode;
4
+ };
5
+ declare const Paragraph: ({ children }: ParagraphPropsType) => JSX.Element;
6
+ export default Paragraph;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _Typography = _interopRequireDefault(require("../typography/Typography"));
11
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
12
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
13
+ 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); }
14
+ 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; }
15
+ var Paragraph = function Paragraph(_ref) {
16
+ var children = _ref.children;
17
+ var colorsTheme = (0, _useTheme["default"])();
18
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
19
+ return /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
20
+ as: "p",
21
+ display: colorsTheme["paragraph"].display,
22
+ fontSize: colorsTheme["paragraph"].fontSize,
23
+ fontWeight: colorsTheme["paragraph"].fontWeight,
24
+ color: backgroundType && backgroundType === "dark" ? colorsTheme["paragraph"].fontColorOnDark : colorsTheme["paragraph"].fontColor
25
+ }, children);
26
+ };
27
+ var _default = Paragraph;
28
+ exports["default"] = _default;