@dxc-technology/halstack-react 0.0.0-2c3a5e1 → 0.0.0-2d43940

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 (349) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1235 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +116 -181
  8. package/accordion/Accordion.stories.tsx +103 -127
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +9 -16
  11. package/accordion-group/AccordionGroup.d.ts +5 -4
  12. package/accordion-group/AccordionGroup.js +38 -107
  13. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  14. package/accordion-group/AccordionGroup.test.js +98 -0
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +15 -16
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +43 -0
  20. package/action-icon/types.d.ts +26 -0
  21. package/alert/Alert.js +23 -59
  22. package/alert/Alert.stories.tsx +28 -0
  23. package/alert/Alert.test.js +75 -0
  24. package/alert/types.d.ts +5 -5
  25. package/badge/Badge.d.ts +4 -0
  26. package/badge/Badge.js +8 -19
  27. package/badge/types.d.ts +5 -0
  28. package/bleed/Bleed.js +14 -55
  29. package/bleed/Bleed.stories.tsx +95 -95
  30. package/bleed/types.d.ts +26 -2
  31. package/box/Box.d.ts +1 -1
  32. package/box/Box.js +30 -81
  33. package/box/Box.stories.tsx +38 -51
  34. package/box/Box.test.js +13 -0
  35. package/box/types.d.ts +3 -14
  36. package/bulleted-list/BulletedList.d.ts +7 -0
  37. package/bulleted-list/BulletedList.js +89 -0
  38. package/bulleted-list/BulletedList.stories.tsx +115 -0
  39. package/bulleted-list/types.d.ts +38 -0
  40. package/button/Button.d.ts +1 -1
  41. package/button/Button.js +62 -113
  42. package/button/Button.stories.tsx +160 -90
  43. package/button/Button.test.js +36 -0
  44. package/button/types.d.ts +12 -8
  45. package/card/Card.d.ts +1 -1
  46. package/card/Card.js +58 -102
  47. package/card/Card.stories.tsx +12 -42
  48. package/card/Card.test.js +39 -0
  49. package/card/types.d.ts +6 -11
  50. package/checkbox/Checkbox.d.ts +2 -2
  51. package/checkbox/Checkbox.js +144 -182
  52. package/checkbox/Checkbox.stories.tsx +166 -136
  53. package/checkbox/Checkbox.test.js +199 -0
  54. package/checkbox/types.d.ts +18 -6
  55. package/chip/Chip.js +39 -79
  56. package/chip/Chip.stories.tsx +121 -26
  57. package/chip/Chip.test.js +41 -0
  58. package/chip/types.d.ts +4 -4
  59. package/common/OpenSans.css +68 -80
  60. package/common/coreTokens.d.ts +237 -0
  61. package/common/coreTokens.js +184 -0
  62. package/common/utils.d.ts +1 -0
  63. package/common/utils.js +6 -12
  64. package/common/variables.d.ts +1381 -0
  65. package/common/variables.js +1002 -1360
  66. package/container/Container.d.ts +4 -0
  67. package/container/Container.js +194 -0
  68. package/container/Container.stories.tsx +214 -0
  69. package/container/types.d.ts +74 -0
  70. package/date-input/Calendar.d.ts +4 -0
  71. package/date-input/Calendar.js +214 -0
  72. package/date-input/DateInput.js +171 -306
  73. package/date-input/DateInput.stories.tsx +203 -56
  74. package/date-input/DateInput.test.js +808 -0
  75. package/date-input/DatePicker.d.ts +4 -0
  76. package/date-input/DatePicker.js +115 -0
  77. package/date-input/Icons.d.ts +6 -0
  78. package/date-input/Icons.js +58 -0
  79. package/date-input/YearPicker.d.ts +4 -0
  80. package/date-input/YearPicker.js +100 -0
  81. package/date-input/types.d.ts +86 -22
  82. package/dialog/Dialog.d.ts +1 -1
  83. package/dialog/Dialog.js +68 -130
  84. package/dialog/Dialog.stories.tsx +320 -167
  85. package/dialog/Dialog.test.js +307 -0
  86. package/dialog/types.d.ts +18 -25
  87. package/dropdown/Dropdown.d.ts +1 -1
  88. package/dropdown/Dropdown.js +243 -304
  89. package/dropdown/Dropdown.stories.tsx +245 -56
  90. package/dropdown/Dropdown.test.js +599 -0
  91. package/dropdown/DropdownMenu.d.ts +4 -0
  92. package/dropdown/DropdownMenu.js +63 -0
  93. package/dropdown/DropdownMenuItem.d.ts +4 -0
  94. package/dropdown/DropdownMenuItem.js +67 -0
  95. package/dropdown/types.d.ts +32 -14
  96. package/file-input/FileInput.d.ts +2 -2
  97. package/file-input/FileInput.js +246 -357
  98. package/file-input/FileInput.stories.tsx +123 -12
  99. package/file-input/FileInput.test.js +459 -0
  100. package/file-input/FileItem.d.ts +4 -14
  101. package/file-input/FileItem.js +50 -99
  102. package/file-input/types.d.ts +25 -8
  103. package/flex/Flex.d.ts +4 -0
  104. package/flex/Flex.js +57 -0
  105. package/flex/Flex.stories.tsx +112 -0
  106. package/flex/types.d.ts +97 -0
  107. package/footer/Footer.d.ts +1 -1
  108. package/footer/Footer.js +70 -190
  109. package/footer/Footer.stories.tsx +60 -19
  110. package/footer/Footer.test.js +85 -0
  111. package/footer/Icons.d.ts +3 -2
  112. package/footer/Icons.js +67 -8
  113. package/footer/types.d.ts +25 -26
  114. package/grid/Grid.d.ts +7 -0
  115. package/grid/Grid.js +76 -0
  116. package/grid/Grid.stories.tsx +219 -0
  117. package/grid/types.d.ts +115 -0
  118. package/header/Header.d.ts +4 -3
  119. package/header/Header.js +99 -203
  120. package/header/Header.stories.tsx +152 -63
  121. package/header/Header.test.js +66 -0
  122. package/header/Icons.d.ts +2 -2
  123. package/header/Icons.js +4 -9
  124. package/header/types.d.ts +5 -19
  125. package/heading/Heading.js +10 -32
  126. package/heading/Heading.test.js +169 -0
  127. package/heading/types.d.ts +7 -7
  128. package/image/Image.d.ts +4 -0
  129. package/image/Image.js +70 -0
  130. package/image/Image.stories.tsx +127 -0
  131. package/image/types.d.ts +72 -0
  132. package/image/types.js +5 -0
  133. package/inset/Inset.js +14 -55
  134. package/inset/Inset.stories.tsx +37 -36
  135. package/inset/types.d.ts +26 -2
  136. package/layout/ApplicationLayout.d.ts +16 -6
  137. package/layout/ApplicationLayout.js +83 -174
  138. package/layout/ApplicationLayout.stories.tsx +85 -94
  139. package/layout/Icons.d.ts +8 -0
  140. package/layout/Icons.js +51 -48
  141. package/layout/SidenavContext.d.ts +5 -0
  142. package/layout/SidenavContext.js +13 -0
  143. package/layout/types.d.ts +19 -35
  144. package/link/Link.d.ts +3 -2
  145. package/link/Link.js +64 -110
  146. package/link/Link.stories.tsx +159 -52
  147. package/link/Link.test.js +63 -0
  148. package/link/types.d.ts +15 -35
  149. package/main.d.ts +15 -17
  150. package/main.js +62 -122
  151. package/nav-tabs/NavTabs.d.ts +8 -0
  152. package/nav-tabs/NavTabs.js +93 -0
  153. package/nav-tabs/NavTabs.stories.tsx +274 -0
  154. package/nav-tabs/NavTabs.test.js +75 -0
  155. package/nav-tabs/Tab.d.ts +4 -0
  156. package/nav-tabs/Tab.js +117 -0
  157. package/nav-tabs/types.d.ts +52 -0
  158. package/nav-tabs/types.js +5 -0
  159. package/number-input/NumberInput.d.ts +7 -0
  160. package/number-input/NumberInput.js +27 -43
  161. package/number-input/NumberInput.stories.tsx +44 -28
  162. package/number-input/NumberInput.test.js +830 -0
  163. package/number-input/types.d.ts +28 -15
  164. package/package.json +46 -47
  165. package/paginator/Icons.d.ts +5 -0
  166. package/paginator/Icons.js +21 -47
  167. package/paginator/Paginator.js +34 -91
  168. package/paginator/Paginator.stories.tsx +24 -0
  169. package/paginator/Paginator.test.js +335 -0
  170. package/paginator/types.d.ts +3 -3
  171. package/paragraph/Paragraph.d.ts +5 -0
  172. package/paragraph/Paragraph.js +22 -0
  173. package/paragraph/Paragraph.stories.tsx +27 -0
  174. package/password-input/Icons.d.ts +6 -0
  175. package/password-input/Icons.js +35 -0
  176. package/password-input/PasswordInput.js +57 -123
  177. package/password-input/PasswordInput.stories.tsx +1 -33
  178. package/password-input/PasswordInput.test.js +198 -0
  179. package/password-input/types.d.ts +21 -17
  180. package/progress-bar/ProgressBar.js +65 -91
  181. package/progress-bar/ProgressBar.stories.tsx +93 -0
  182. package/progress-bar/ProgressBar.test.js +93 -0
  183. package/progress-bar/types.d.ts +3 -3
  184. package/quick-nav/QuickNav.d.ts +4 -0
  185. package/quick-nav/QuickNav.js +94 -0
  186. package/quick-nav/QuickNav.stories.tsx +356 -0
  187. package/quick-nav/types.d.ts +21 -0
  188. package/quick-nav/types.js +5 -0
  189. package/radio-group/Radio.d.ts +1 -1
  190. package/radio-group/Radio.js +64 -80
  191. package/radio-group/RadioGroup.js +101 -139
  192. package/radio-group/RadioGroup.stories.tsx +171 -36
  193. package/radio-group/RadioGroup.test.js +691 -183
  194. package/radio-group/types.d.ts +89 -11
  195. package/resultset-table/Icons.d.ts +7 -0
  196. package/resultset-table/Icons.js +47 -0
  197. package/resultset-table/ResultsetTable.js +159 -0
  198. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +50 -25
  199. package/resultset-table/ResultsetTable.test.js +305 -0
  200. package/{resultsetTable → resultset-table}/types.d.ts +7 -7
  201. package/resultset-table/types.js +5 -0
  202. package/select/Icons.d.ts +10 -0
  203. package/select/Icons.js +89 -0
  204. package/select/Listbox.d.ts +4 -0
  205. package/select/Listbox.js +143 -0
  206. package/select/Option.d.ts +4 -0
  207. package/select/Option.js +87 -0
  208. package/select/Select.js +229 -502
  209. package/select/Select.stories.tsx +603 -204
  210. package/select/Select.test.js +2370 -0
  211. package/select/types.d.ts +64 -25
  212. package/sidenav/Icons.d.ts +7 -0
  213. package/sidenav/Icons.js +47 -0
  214. package/sidenav/Sidenav.d.ts +6 -5
  215. package/sidenav/Sidenav.js +131 -71
  216. package/sidenav/Sidenav.stories.tsx +251 -151
  217. package/sidenav/Sidenav.test.js +37 -0
  218. package/sidenav/types.d.ts +52 -26
  219. package/slider/Slider.d.ts +2 -2
  220. package/slider/Slider.js +148 -180
  221. package/slider/Slider.test.js +254 -0
  222. package/slider/types.d.ts +11 -3
  223. package/spinner/Spinner.js +31 -75
  224. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  225. package/spinner/Spinner.test.js +55 -0
  226. package/spinner/types.d.ts +3 -3
  227. package/status-light/StatusLight.d.ts +4 -0
  228. package/status-light/StatusLight.js +51 -0
  229. package/status-light/StatusLight.stories.tsx +74 -0
  230. package/status-light/StatusLight.test.js +25 -0
  231. package/status-light/types.d.ts +17 -0
  232. package/status-light/types.js +5 -0
  233. package/switch/Switch.d.ts +2 -2
  234. package/switch/Switch.js +149 -114
  235. package/switch/Switch.stories.tsx +44 -67
  236. package/switch/Switch.test.js +180 -0
  237. package/switch/types.d.ts +13 -5
  238. package/table/Table.js +8 -30
  239. package/table/{Table.stories.jsx → Table.stories.tsx} +80 -1
  240. package/table/Table.test.js +21 -0
  241. package/table/types.d.ts +8 -8
  242. package/tabs/Tab.d.ts +4 -0
  243. package/tabs/Tab.js +113 -0
  244. package/tabs/Tabs.d.ts +1 -1
  245. package/tabs/Tabs.js +316 -145
  246. package/tabs/Tabs.stories.tsx +119 -13
  247. package/tabs/Tabs.test.js +294 -0
  248. package/tabs/types.d.ts +29 -15
  249. package/tag/Tag.js +41 -78
  250. package/tag/Tag.stories.tsx +25 -8
  251. package/tag/Tag.test.js +49 -0
  252. package/tag/types.d.ts +7 -7
  253. package/text-input/Icons.d.ts +8 -0
  254. package/text-input/Icons.js +56 -0
  255. package/text-input/Suggestion.d.ts +4 -0
  256. package/text-input/Suggestion.js +67 -0
  257. package/text-input/Suggestions.d.ts +4 -0
  258. package/text-input/Suggestions.js +84 -0
  259. package/text-input/TextInput.js +326 -548
  260. package/text-input/TextInput.stories.tsx +281 -272
  261. package/text-input/TextInput.test.js +1739 -0
  262. package/text-input/types.d.ts +70 -24
  263. package/textarea/Textarea.js +85 -135
  264. package/textarea/Textarea.stories.tsx +174 -0
  265. package/textarea/Textarea.test.js +406 -0
  266. package/textarea/types.d.ts +27 -16
  267. package/toggle-group/ToggleGroup.d.ts +2 -2
  268. package/toggle-group/ToggleGroup.js +92 -105
  269. package/toggle-group/ToggleGroup.stories.tsx +53 -8
  270. package/toggle-group/ToggleGroup.test.js +137 -0
  271. package/toggle-group/types.d.ts +34 -17
  272. package/typography/Typography.d.ts +4 -0
  273. package/typography/Typography.js +23 -0
  274. package/typography/Typography.stories.tsx +198 -0
  275. package/typography/types.d.ts +18 -0
  276. package/typography/types.js +5 -0
  277. package/useTheme.d.ts +1133 -1
  278. package/useTheme.js +4 -11
  279. package/useTranslatedLabels.d.ts +85 -0
  280. package/useTranslatedLabels.js +14 -0
  281. package/utils/BaseTypography.d.ts +21 -0
  282. package/utils/BaseTypography.js +94 -0
  283. package/utils/FocusLock.d.ts +13 -0
  284. package/utils/FocusLock.js +124 -0
  285. package/wizard/Wizard.d.ts +1 -1
  286. package/wizard/Wizard.js +70 -101
  287. package/wizard/Wizard.stories.tsx +48 -19
  288. package/wizard/Wizard.test.js +114 -0
  289. package/wizard/types.d.ts +12 -8
  290. package/ThemeContext.d.ts +0 -15
  291. package/ThemeContext.js +0 -243
  292. package/V3Select/V3Select.js +0 -455
  293. package/V3Select/index.d.ts +0 -27
  294. package/V3Textarea/V3Textarea.js +0 -260
  295. package/V3Textarea/index.d.ts +0 -27
  296. package/card/ice-cream.jpg +0 -0
  297. package/common/RequiredComponent.js +0 -32
  298. package/date/Date.js +0 -373
  299. package/date/index.d.ts +0 -27
  300. package/input-text/Icons.js +0 -22
  301. package/input-text/InputText.js +0 -611
  302. package/input-text/index.d.ts +0 -36
  303. package/list/List.d.ts +0 -4
  304. package/list/List.js +0 -47
  305. package/list/List.stories.tsx +0 -95
  306. package/list/types.d.ts +0 -7
  307. package/number-input/NumberInputContext.d.ts +0 -4
  308. package/number-input/NumberInputContext.js +0 -19
  309. package/number-input/numberInputContextTypes.d.ts +0 -19
  310. package/progress-bar/ProgressBar.stories.jsx +0 -58
  311. package/radio/Radio.d.ts +0 -4
  312. package/radio/Radio.js +0 -174
  313. package/radio/Radio.stories.tsx +0 -192
  314. package/radio/types.d.ts +0 -54
  315. package/resultsetTable/ResultsetTable.js +0 -251
  316. package/row/Row.d.ts +0 -3
  317. package/row/Row.js +0 -127
  318. package/row/Row.stories.tsx +0 -237
  319. package/row/types.d.ts +0 -10
  320. package/slider/Slider.stories.tsx +0 -177
  321. package/stack/Stack.d.ts +0 -3
  322. package/stack/Stack.js +0 -97
  323. package/stack/Stack.stories.tsx +0 -164
  324. package/stack/types.d.ts +0 -9
  325. package/text/Text.d.ts +0 -7
  326. package/text/Text.js +0 -30
  327. package/text/Text.stories.tsx +0 -19
  328. package/textarea/Textarea.stories.jsx +0 -136
  329. package/toggle/Toggle.js +0 -186
  330. package/toggle/index.d.ts +0 -21
  331. package/upload/Upload.js +0 -201
  332. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  333. package/upload/buttons-upload/Icons.js +0 -40
  334. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  335. package/upload/dragAndDropArea/Icons.js +0 -39
  336. package/upload/file-upload/FileToUpload.js +0 -115
  337. package/upload/file-upload/Icons.js +0 -66
  338. package/upload/files-upload/FilesToUpload.js +0 -109
  339. package/upload/index.d.ts +0 -15
  340. package/upload/transaction/Icons.js +0 -160
  341. package/upload/transaction/Transaction.js +0 -104
  342. package/upload/transactions/Transactions.js +0 -94
  343. /package/{list → action-icon}/types.js +0 -0
  344. /package/{radio → badge}/types.js +0 -0
  345. /package/{resultsetTable → bulleted-list}/types.js +0 -0
  346. /package/{row → container}/types.js +0 -0
  347. /package/{stack → flex}/types.js +0 -0
  348. /package/{number-input/numberInputContextTypes.js → grid/types.js} +0 -0
  349. /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
@@ -1,11 +1,11 @@
1
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- declare type Margin = {
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- declare type Props = {
8
+ type Props = {
9
9
  /**
10
10
  * Text to be placed above the number.
11
11
  */
@@ -14,6 +14,10 @@ declare type Props = {
14
14
  * Name attribute of the input element.
15
15
  */
16
16
  name?: string;
17
+ /**
18
+ * Initial value of the input element, only when it is uncontrolled.
19
+ */
20
+ defaultValue?: string;
17
21
  /**
18
22
  * Value of the input element. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
19
23
  */
@@ -31,12 +35,18 @@ declare type Props = {
31
35
  */
32
36
  disabled?: boolean;
33
37
  /**
34
- * If true, the number will be optional, showing '(Optional)'
38
+ * If true, the number will be optional, showing the text '(Optional)'
35
39
  * next to the label. Otherwise, the field will be considered required
36
40
  * and an error will be passed as a parameter to the OnBlur and onChange
37
41
  * functions when it has not been filled.
38
42
  */
39
43
  optional?: boolean;
44
+ /**
45
+ * If true, the component will not be mutable, meaning the user can
46
+ * not edit the control. The value won't change when pressing on the
47
+ * up or down arrows and neither on the spin buttons.
48
+ */
49
+ readOnly?: boolean;
40
50
  /**
41
51
  * Prefix to be placed before the number value.
42
52
  */
@@ -50,7 +60,7 @@ declare type Props = {
50
60
  * lower than min, the onBlur and onChange functions will be called with
51
61
  * the current value and an internal error informing that the current
52
62
  * value is not correct. If a valid state is reached, the error parameter
53
- * will be null in both events.
63
+ * will not be defined in both events.
54
64
  */
55
65
  min?: number;
56
66
  /**
@@ -58,7 +68,7 @@ declare type Props = {
58
68
  * surpasses max, the onBlur and onChange functions will be called with
59
69
  * the current value and an internal error informing that the current
60
70
  * value is not correct. If a valid state is reached, the error parameter
61
- * will be null in both events.
71
+ * will not be defined in both events.
62
72
  */
63
73
  max?: number;
64
74
  /**
@@ -69,26 +79,29 @@ declare type Props = {
69
79
  * This function will be called when the user types within the input
70
80
  * element of the component. An object including the current value and
71
81
  * the error (if the value entered is not valid) will be passed to this
72
- * function. If there is no error, error will be null.
82
+ * function. If there is no error, error will not be defined.
73
83
  */
74
84
  onChange?: (val: {
75
85
  value: string;
76
- error: string | null;
86
+ error?: string;
77
87
  }) => void;
78
88
  /**
79
89
  * This function will be called when the input element loses the focus.
80
90
  * An object including the input value and the error (if the value
81
91
  * entered is not valid) will be passed to this function. If there is no error,
82
- * error will be null.
92
+ * error will not be defined.
83
93
  */
84
94
  onBlur?: (val: {
85
95
  value: string;
86
- error: string | null;
96
+ error?: string;
87
97
  }) => void;
88
98
  /**
89
- * If it is defined, the component will change its appearance, showing
90
- * the error below the input component. If it is not defined, the error
91
- * messages will be managed internally, but never displayed on its own.
99
+ * If it is a defined value and also a truthy string, the component will
100
+ * change its appearance, showing the error below the input component. If
101
+ * the defined value is an empty string, it will reserve a space below
102
+ * the component for a future error, but it would not change its look. In
103
+ * case of being undefined or null, both the appearance and the space for
104
+ * the error message would not be modified.
92
105
  */
93
106
  error?: string;
94
107
  /**
@@ -102,7 +115,7 @@ declare type Props = {
102
115
  */
103
116
  margin?: Space | Margin;
104
117
  /**
105
- * Size of the component ('small' | 'medium' | 'large' | 'fillParent').
118
+ * Size of the component.
106
119
  */
107
120
  size?: "small" | "medium" | "large" | "fillParent";
108
121
  /**
@@ -113,5 +126,5 @@ declare type Props = {
113
126
  /**
114
127
  * Reference to the component.
115
128
  */
116
- export declare type RefType = HTMLDivElement;
129
+ export type RefType = HTMLDivElement;
117
130
  export default Props;
package/package.json CHANGED
@@ -1,88 +1,87 @@
1
1
  {
2
2
  "name": "@dxc-technology/halstack-react",
3
- "version": "0.0.0-2c3a5e1",
3
+ "version": "0.0.0-2d43940",
4
4
  "description": "DXC Halstack React components library",
5
5
  "repository": "dxc-technology/halstack-react",
6
- "homepage": "http://developer.dxc.com/tools/react",
6
+ "homepage": "https://developer.dxc.com/halstack",
7
7
  "license": "Apache-2.0",
8
8
  "author": {
9
9
  "name": "DXC Technology",
10
10
  "email": "DigitalInsurance@dxc.com",
11
- "url": "https://dxc.com"
11
+ "url": "https://developer.dxc.com"
12
12
  },
13
13
  "main": "./main.js",
14
14
  "types": "./main.d.ts",
15
15
  "peerDependencies": {
16
- "react": "^17.0.1",
17
- "react-dom": "^17.0.1",
16
+ "react": "^18.x",
17
+ "react-dom": "^18.x",
18
18
  "styled-components": "^5.0.1"
19
19
  },
20
20
  "dependencies": {
21
- "@date-io/date-fns": "^1.3.9",
22
- "@material-ui/core": "4.11.1",
23
- "@material-ui/icons": "4.4.3",
24
- "@material-ui/lab": "4.0.0-alpha.17",
25
- "@material-ui/pickers": "3.2.2",
26
- "@material-ui/styles": "4.0.2",
27
- "@types/styled-components": "^5.1.24",
28
- "@types/uuid": "^8.3.4",
21
+ "@radix-ui/react-popover": "^1.0.7",
29
22
  "color": "^3.1.3",
30
- "date-fns": "^2.0.0-beta.4",
31
- "moment": "2.24.0",
32
- "prop-types": "^15.7.2",
33
- "rgb-hex": "^3.0.0",
23
+ "dayjs": "^1.11.1",
24
+ "slugify": "^1.6.5",
34
25
  "uuid": "^8.3.2"
35
26
  },
36
27
  "scripts": {
37
- "test": "jest",
28
+ "test": "jest --env=jsdom",
38
29
  "test:watch": "npm test -- --watch --coverage",
39
- "build": "babel src --extensions .js,.jsx,.ts,.tsx --out-dir ../dist --copy-files --verbose && node ../scripts/build/copy-package.js && tsc ",
40
- "build:watch": "babel src --watch --out-dir ../dist --copy-files --verbose",
41
- "storybook": "start-storybook -p 6006",
42
- "build-storybook": "build-storybook"
30
+ "build": "babel src --extensions .js,.jsx,.ts,.tsx --out-dir ../dist --copy-files --verbose && node ../scripts/build/copy-package.js && node ../scripts/build/copy-readme.js && tsc ",
31
+ "build:watch": "babel src --watch --extensions .js,.jsx,.ts,.tsx --out-dir ../dist --copy-files --verbose",
32
+ "storybook": "storybook dev -p 6006",
33
+ "build-storybook": "storybook build"
43
34
  },
44
35
  "devDependencies": {
45
36
  "@babel/cli": "^7.16.8",
46
- "@babel/core": "^7.16.7",
37
+ "@babel/core": "^7.23.9",
47
38
  "@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8",
48
39
  "@babel/plugin-proposal-optional-chaining": "^7.13.8",
49
40
  "@babel/plugin-transform-runtime": "^7.16.8",
50
41
  "@babel/preset-env": "^7.16.8",
51
42
  "@babel/preset-react": "^7.16.7",
52
43
  "@babel/preset-typescript": "^7.16.7",
53
- "@storybook/addon-actions": "^6.4.9",
54
- "@storybook/addon-essentials": "^6.4.9",
55
- "@storybook/addon-links": "^6.4.9",
56
- "@storybook/react": "^6.4.9",
57
- "@storybook/testing-library": "0.0.7",
58
- "@testing-library/react": "^11.2.5",
59
- "@testing-library/user-event": "^12.6.3",
44
+ "@storybook/addon-essentials": "^7.5.3",
45
+ "@storybook/addon-interactions": "^7.5.3",
46
+ "@storybook/addon-links": "^7.5.3",
47
+ "@storybook/blocks": "^7.5.3",
48
+ "@storybook/react": "^7.5.3",
49
+ "@storybook/react-vite": "^7.5.3",
50
+ "@storybook/testing-library": "^0.2.2",
51
+ "@testing-library/react": "^13.0.0",
52
+ "@testing-library/user-event": "^13.0.0",
53
+ "@types/color": "^3.0.3",
54
+ "@types/react": "^18.0.18",
55
+ "@types/styled-components": "5.1.29",
56
+ "@types/uuid": "^9.0.6",
60
57
  "babel-jest": "^24.8.0",
61
58
  "babel-loader": "^8.0.6",
62
- "chromatic": "^6.3.3",
63
- "eslint": "^5.16.0",
64
- "eslint-config-airbnb": "^17.1.0",
65
- "eslint-config-prettier": "^6.7.0",
66
- "eslint-plugin-import": "^2.17.3",
67
- "eslint-plugin-jest": "^22.7.1",
68
- "eslint-plugin-jsx-a11y": "^6.2.1",
69
- "eslint-plugin-react": "^7.13.0",
70
- "eslint-plugin-react-hooks": "^4.2.0",
71
- "eslint-plugin-storybook": "^0.5.5",
59
+ "chromatic": "^8.0.0",
60
+ "eslint": "^8.53.0",
61
+ "eslint-config-airbnb": "^19.0.4",
62
+ "eslint-config-prettier": "^9.0.0",
63
+ "eslint-plugin-import": "^2.29.0",
64
+ "eslint-plugin-jest": "^27.6.0",
65
+ "eslint-plugin-jsx-a11y": "^6.8.0",
66
+ "eslint-plugin-react": "^7.33.2",
67
+ "eslint-plugin-react-hooks": "^4.6.0",
68
+ "eslint-plugin-storybook": "^0.6.15",
72
69
  "identity-obj-proxy": "^3.0.0",
73
- "jest": "^25.5.4",
74
- "react": "^17.0.1",
75
- "react-dom": "^17.0.1",
76
- "react-test-renderer": "^16.8.6",
77
- "storybook-addon-pseudo-states": "^1.0.0",
70
+ "jest": "^29.2.2",
71
+ "jest-environment-jsdom": "^29.3.1",
72
+ "react": "^18.2.0",
73
+ "react-dom": "^18.2.0",
74
+ "storybook": "^7.5.3",
75
+ "storybook-addon-pseudo-states": "^2.1.2",
78
76
  "styled-components": "^5.0.1",
79
- "typescript": "^4.5.4"
77
+ "typescript": "^5.3.3"
80
78
  },
81
79
  "jest": {
82
80
  "moduleNameMapper": {
83
81
  "\\.(css|less|scss|sass)$": "identity-obj-proxy",
84
82
  "\\.(svg)$": "<rootDir>/test/mocks/svgMock.js",
85
- "\\.(png)$": "<rootDir>/test/mocks/pngMock.js"
83
+ "\\.(png)$": "<rootDir>/test/mocks/pngMock.js",
84
+ "^uuid$": "uuid"
86
85
  }
87
86
  }
88
87
  }
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ export declare const firstIcon: React.JSX.Element;
3
+ export declare const previousIcon: React.JSX.Element;
4
+ export declare const nextIcon: React.JSX.Element;
5
+ export declare const lastIcon: React.JSX.Element;
@@ -1,66 +1,40 @@
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
- var firstIcon = /*#__PURE__*/_react["default"].createElement("svg", {
9
+ var firstIcon = exports.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
- exports.firstIcon = firstIcon;
25
-
26
- var previousIcon = /*#__PURE__*/_react["default"].createElement("svg", {
17
+ var previousIcon = exports.previousIcon = /*#__PURE__*/_react["default"].createElement("svg", {
27
18
  xmlns: "http://www.w3.org/2000/svg",
28
- width: "7.41",
29
- height: "12",
30
- viewBox: "0 0 7.41 12"
19
+ height: "24",
20
+ width: "24",
21
+ fill: "currentColor"
31
22
  }, /*#__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)"
23
+ d: "m14 18-6-6 6-6 1.4 1.4-4.6 4.6 4.6 4.6Z"
36
24
  }));
37
-
38
- exports.previousIcon = previousIcon;
39
-
40
- var nextIcon = /*#__PURE__*/_react["default"].createElement("svg", {
25
+ var nextIcon = exports.nextIcon = /*#__PURE__*/_react["default"].createElement("svg", {
41
26
  xmlns: "http://www.w3.org/2000/svg",
42
- width: "7.41",
43
- height: "12",
44
- viewBox: "0 0 7.41 12"
27
+ height: "24",
28
+ width: "24",
29
+ fill: "currentColor"
45
30
  }, /*#__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)"
31
+ d: "M9.4 18 8 16.6l4.6-4.6L8 7.4 9.4 6l6 6Z"
50
32
  }));
51
-
52
- exports.nextIcon = nextIcon;
53
-
54
- var lastIcon = /*#__PURE__*/_react["default"].createElement("svg", {
33
+ var lastIcon = exports.lastIcon = /*#__PURE__*/_react["default"].createElement("svg", {
55
34
  xmlns: "http://www.w3.org/2000/svg",
56
- width: "12.41",
57
- height: "12",
58
- viewBox: "0 0 12.41 12"
35
+ height: "24",
36
+ width: "24",
37
+ fill: "currentColor"
59
38
  }, /*#__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)"
64
- }));
65
-
66
- exports.lastIcon = lastIcon;
39
+ d: "m7 18-1.4-1.4 4.6-4.6-4.6-4.6L7 6l6 6Zm9 0V6h2v12Z"
40
+ }));
@@ -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
  );