@dxc-technology/halstack-react 0.0.0-7604f1d → 0.0.0-76b7408

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 (309) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +343 -0
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +119 -138
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +12 -11
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +16 -37
  12. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  13. package/accordion-group/AccordionGroup.test.js +126 -0
  14. package/accordion-group/types.d.ts +17 -10
  15. package/alert/Alert.js +7 -4
  16. package/alert/Alert.stories.tsx +28 -0
  17. package/alert/Alert.test.js +92 -0
  18. package/alert/types.d.ts +1 -1
  19. package/badge/Badge.d.ts +4 -0
  20. package/badge/Badge.js +6 -4
  21. package/badge/types.d.ts +5 -0
  22. package/bleed/Bleed.d.ts +3 -0
  23. package/bleed/Bleed.js +51 -0
  24. package/bleed/Bleed.stories.tsx +341 -0
  25. package/bleed/types.d.ts +37 -0
  26. package/bleed/types.js +5 -0
  27. package/box/Box.js +25 -35
  28. package/box/Box.stories.tsx +15 -0
  29. package/box/Box.test.js +18 -0
  30. package/box/types.d.ts +1 -0
  31. package/bulleted-list/BulletedList.d.ts +7 -0
  32. package/bulleted-list/BulletedList.js +123 -0
  33. package/bulleted-list/BulletedList.stories.tsx +200 -0
  34. package/bulleted-list/types.d.ts +11 -0
  35. package/bulleted-list/types.js +5 -0
  36. package/button/Button.d.ts +1 -1
  37. package/button/Button.js +59 -82
  38. package/button/Button.stories.tsx +163 -14
  39. package/button/Button.test.js +35 -0
  40. package/button/types.d.ts +10 -14
  41. package/card/Card.js +26 -30
  42. package/card/Card.stories.tsx +201 -0
  43. package/card/Card.test.js +50 -0
  44. package/card/ice-cream.jpg +0 -0
  45. package/card/types.d.ts +5 -6
  46. package/checkbox/Checkbox.d.ts +2 -2
  47. package/checkbox/Checkbox.js +108 -111
  48. package/checkbox/Checkbox.stories.tsx +198 -130
  49. package/checkbox/Checkbox.test.js +155 -0
  50. package/checkbox/types.d.ts +15 -7
  51. package/chip/Chip.d.ts +4 -0
  52. package/chip/Chip.js +22 -88
  53. package/chip/Chip.stories.tsx +98 -13
  54. package/chip/Chip.test.js +56 -0
  55. package/chip/types.d.ts +45 -0
  56. package/chip/types.js +5 -0
  57. package/common/variables.js +536 -575
  58. package/date-input/Calendar.d.ts +4 -0
  59. package/date-input/Calendar.js +258 -0
  60. package/date-input/DateInput.js +174 -266
  61. package/date-input/DateInput.stories.tsx +199 -33
  62. package/date-input/DateInput.test.js +835 -0
  63. package/date-input/DatePicker.d.ts +4 -0
  64. package/date-input/DatePicker.js +146 -0
  65. package/date-input/Icons.d.ts +6 -0
  66. package/date-input/Icons.js +75 -0
  67. package/date-input/YearPicker.d.ts +4 -0
  68. package/date-input/YearPicker.js +126 -0
  69. package/date-input/types.d.ts +67 -9
  70. package/dialog/Dialog.js +79 -95
  71. package/dialog/Dialog.stories.tsx +230 -123
  72. package/dialog/Dialog.test.js +369 -0
  73. package/dialog/types.d.ts +3 -2
  74. package/dropdown/Dropdown.d.ts +1 -1
  75. package/dropdown/Dropdown.js +248 -277
  76. package/dropdown/Dropdown.stories.tsx +438 -0
  77. package/dropdown/Dropdown.test.js +585 -0
  78. package/dropdown/DropdownMenu.d.ts +4 -0
  79. package/dropdown/DropdownMenu.js +70 -0
  80. package/dropdown/DropdownMenuItem.d.ts +4 -0
  81. package/dropdown/DropdownMenuItem.js +81 -0
  82. package/dropdown/types.d.ts +30 -19
  83. package/file-input/FileInput.d.ts +2 -2
  84. package/file-input/FileInput.js +179 -142
  85. package/file-input/FileInput.stories.tsx +618 -0
  86. package/file-input/FileInput.test.js +457 -0
  87. package/file-input/FileItem.d.ts +4 -14
  88. package/file-input/FileItem.js +47 -67
  89. package/file-input/types.d.ts +49 -7
  90. package/flex/Flex.d.ts +4 -0
  91. package/flex/Flex.js +69 -0
  92. package/flex/Flex.stories.tsx +103 -0
  93. package/flex/types.d.ts +32 -0
  94. package/flex/types.js +5 -0
  95. package/footer/Footer.d.ts +1 -1
  96. package/footer/Footer.js +32 -113
  97. package/footer/Footer.stories.tsx +228 -0
  98. package/footer/Footer.test.js +109 -0
  99. package/footer/Icons.d.ts +2 -0
  100. package/footer/Icons.js +4 -4
  101. package/footer/types.d.ts +22 -17
  102. package/header/Header.js +109 -130
  103. package/header/Header.stories.tsx +189 -36
  104. package/header/Header.test.js +79 -0
  105. package/header/Icons.d.ts +2 -0
  106. package/header/Icons.js +2 -2
  107. package/header/types.d.ts +7 -4
  108. package/heading/Heading.js +1 -1
  109. package/heading/Heading.stories.tsx +54 -0
  110. package/heading/Heading.test.js +186 -0
  111. package/inset/Inset.d.ts +3 -0
  112. package/inset/Inset.js +51 -0
  113. package/inset/Inset.stories.tsx +229 -0
  114. package/inset/types.d.ts +37 -0
  115. package/inset/types.js +5 -0
  116. package/layout/ApplicationLayout.d.ts +20 -0
  117. package/layout/ApplicationLayout.js +71 -135
  118. package/layout/ApplicationLayout.stories.tsx +162 -0
  119. package/layout/Icons.d.ts +5 -0
  120. package/layout/Icons.js +13 -2
  121. package/layout/SidenavContext.d.ts +5 -0
  122. package/layout/SidenavContext.js +19 -0
  123. package/layout/types.d.ts +42 -0
  124. package/layout/types.js +5 -0
  125. package/link/Link.d.ts +3 -2
  126. package/link/Link.js +62 -87
  127. package/link/Link.stories.tsx +159 -52
  128. package/link/Link.test.js +83 -0
  129. package/link/types.d.ts +9 -29
  130. package/main.d.ts +12 -12
  131. package/main.js +64 -58
  132. package/nav-tabs/NavTabs.d.ts +8 -0
  133. package/nav-tabs/NavTabs.js +125 -0
  134. package/nav-tabs/NavTabs.stories.tsx +260 -0
  135. package/nav-tabs/NavTabs.test.js +82 -0
  136. package/nav-tabs/Tab.d.ts +4 -0
  137. package/nav-tabs/Tab.js +150 -0
  138. package/nav-tabs/types.d.ts +53 -0
  139. package/nav-tabs/types.js +5 -0
  140. package/number-input/NumberInput.js +14 -24
  141. package/number-input/NumberInput.stories.tsx +5 -5
  142. package/number-input/NumberInput.test.js +542 -0
  143. package/number-input/NumberInputContext.d.ts +4 -0
  144. package/number-input/NumberInputContext.js +5 -2
  145. package/number-input/numberInputContextTypes.d.ts +19 -0
  146. package/number-input/numberInputContextTypes.js +5 -0
  147. package/number-input/types.d.ts +17 -10
  148. package/package.json +21 -22
  149. package/paginator/Icons.d.ts +5 -0
  150. package/paginator/Icons.js +16 -28
  151. package/paginator/Paginator.js +21 -54
  152. package/paginator/Paginator.stories.tsx +24 -0
  153. package/paginator/Paginator.test.js +315 -0
  154. package/paragraph/Paragraph.d.ts +6 -0
  155. package/paragraph/Paragraph.js +38 -0
  156. package/paragraph/Paragraph.stories.tsx +44 -0
  157. package/password-input/PasswordInput.js +23 -19
  158. package/password-input/PasswordInput.stories.tsx +3 -3
  159. package/password-input/PasswordInput.test.js +181 -0
  160. package/password-input/types.d.ts +29 -19
  161. package/progress-bar/ProgressBar.d.ts +2 -2
  162. package/progress-bar/ProgressBar.js +62 -56
  163. package/progress-bar/ProgressBar.stories.jsx +47 -12
  164. package/progress-bar/ProgressBar.test.js +110 -0
  165. package/progress-bar/types.d.ts +3 -4
  166. package/quick-nav/QuickNav.d.ts +4 -0
  167. package/quick-nav/QuickNav.js +117 -0
  168. package/quick-nav/QuickNav.stories.tsx +356 -0
  169. package/quick-nav/types.d.ts +21 -0
  170. package/quick-nav/types.js +5 -0
  171. package/radio-group/Radio.d.ts +4 -0
  172. package/radio-group/Radio.js +156 -0
  173. package/radio-group/RadioGroup.d.ts +4 -0
  174. package/radio-group/RadioGroup.js +283 -0
  175. package/radio-group/RadioGroup.stories.tsx +214 -0
  176. package/radio-group/RadioGroup.test.js +722 -0
  177. package/radio-group/types.d.ts +114 -0
  178. package/radio-group/types.js +5 -0
  179. package/resultsetTable/Icons.d.ts +7 -0
  180. package/resultsetTable/Icons.js +51 -0
  181. package/resultsetTable/ResultsetTable.d.ts +4 -0
  182. package/resultsetTable/ResultsetTable.js +53 -132
  183. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  184. package/resultsetTable/ResultsetTable.test.js +325 -0
  185. package/resultsetTable/types.d.ts +67 -0
  186. package/resultsetTable/types.js +5 -0
  187. package/select/Icons.d.ts +10 -0
  188. package/select/Icons.js +93 -0
  189. package/select/Listbox.d.ts +4 -0
  190. package/select/Listbox.js +169 -0
  191. package/select/Option.d.ts +4 -0
  192. package/select/Option.js +97 -0
  193. package/select/Select.d.ts +4 -0
  194. package/select/Select.js +196 -397
  195. package/select/Select.stories.tsx +600 -201
  196. package/select/Select.test.js +2228 -0
  197. package/select/types.d.ts +210 -0
  198. package/select/types.js +5 -0
  199. package/sidenav/Sidenav.d.ts +6 -5
  200. package/sidenav/Sidenav.js +184 -54
  201. package/sidenav/Sidenav.stories.tsx +282 -0
  202. package/sidenav/Sidenav.test.js +44 -0
  203. package/sidenav/types.d.ts +50 -27
  204. package/slider/Slider.d.ts +2 -2
  205. package/slider/Slider.js +123 -97
  206. package/slider/Slider.stories.tsx +72 -9
  207. package/slider/Slider.test.js +250 -0
  208. package/slider/types.d.ts +10 -2
  209. package/spinner/Spinner.js +5 -5
  210. package/spinner/Spinner.stories.jsx +27 -0
  211. package/spinner/Spinner.test.js +64 -0
  212. package/switch/Switch.d.ts +2 -2
  213. package/switch/Switch.js +152 -69
  214. package/switch/Switch.stories.tsx +54 -43
  215. package/switch/Switch.test.js +225 -0
  216. package/switch/types.d.ts +12 -4
  217. package/table/Table.js +4 -4
  218. package/table/Table.stories.jsx +81 -1
  219. package/table/Table.test.js +26 -0
  220. package/tabs/Tab.d.ts +4 -0
  221. package/tabs/Tab.js +133 -0
  222. package/tabs/Tabs.d.ts +1 -1
  223. package/tabs/Tabs.js +364 -108
  224. package/tabs/Tabs.stories.tsx +226 -0
  225. package/tabs/Tabs.test.js +351 -0
  226. package/tabs/types.d.ts +41 -20
  227. package/tag/Tag.d.ts +1 -1
  228. package/tag/Tag.js +19 -29
  229. package/tag/Tag.stories.tsx +38 -28
  230. package/tag/Tag.test.js +60 -0
  231. package/tag/types.d.ts +23 -14
  232. package/text-input/Icons.d.ts +8 -0
  233. package/text-input/Icons.js +60 -0
  234. package/text-input/Suggestion.d.ts +4 -0
  235. package/text-input/Suggestion.js +84 -0
  236. package/text-input/Suggestions.d.ts +4 -0
  237. package/text-input/Suggestions.js +134 -0
  238. package/text-input/TextInput.d.ts +4 -0
  239. package/text-input/TextInput.js +233 -385
  240. package/text-input/TextInput.stories.tsx +569 -0
  241. package/text-input/TextInput.test.js +1724 -0
  242. package/text-input/types.d.ts +197 -0
  243. package/text-input/types.js +5 -0
  244. package/textarea/Textarea.d.ts +4 -0
  245. package/textarea/Textarea.js +39 -79
  246. package/textarea/Textarea.stories.jsx +96 -15
  247. package/textarea/Textarea.test.js +437 -0
  248. package/textarea/types.d.ts +137 -0
  249. package/textarea/types.js +5 -0
  250. package/toggle-group/ToggleGroup.d.ts +4 -0
  251. package/toggle-group/ToggleGroup.js +18 -46
  252. package/toggle-group/ToggleGroup.stories.tsx +69 -32
  253. package/toggle-group/ToggleGroup.test.js +156 -0
  254. package/toggle-group/types.d.ts +105 -0
  255. package/toggle-group/types.js +5 -0
  256. package/typography/Typography.d.ts +4 -0
  257. package/typography/Typography.js +131 -0
  258. package/typography/Typography.stories.tsx +198 -0
  259. package/typography/types.d.ts +18 -0
  260. package/typography/types.js +5 -0
  261. package/useTheme.d.ts +2 -0
  262. package/useTheme.js +2 -2
  263. package/useTranslatedLabels.d.ts +2 -0
  264. package/useTranslatedLabels.js +20 -0
  265. package/utils/FocusLock.d.ts +13 -0
  266. package/utils/FocusLock.js +139 -0
  267. package/wizard/Wizard.d.ts +1 -1
  268. package/wizard/Wizard.js +112 -58
  269. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
  270. package/wizard/Wizard.test.js +141 -0
  271. package/wizard/types.d.ts +13 -12
  272. package/ThemeContext.js +0 -246
  273. package/V3Select/V3Select.js +0 -455
  274. package/V3Select/index.d.ts +0 -27
  275. package/V3Textarea/V3Textarea.js +0 -260
  276. package/V3Textarea/index.d.ts +0 -27
  277. package/chip/index.d.ts +0 -22
  278. package/common/RequiredComponent.js +0 -32
  279. package/date/Date.js +0 -373
  280. package/date/index.d.ts +0 -27
  281. package/footer/Footer.stories.jsx +0 -151
  282. package/input-text/Icons.js +0 -22
  283. package/input-text/InputText.js +0 -611
  284. package/input-text/index.d.ts +0 -36
  285. package/radio/Radio.d.ts +0 -4
  286. package/radio/Radio.js +0 -174
  287. package/radio/Radio.stories.tsx +0 -192
  288. package/radio/types.d.ts +0 -54
  289. package/resultsetTable/index.d.ts +0 -19
  290. package/select/index.d.ts +0 -131
  291. package/text-input/index.d.ts +0 -135
  292. package/textarea/index.d.ts +0 -117
  293. package/toggle/Toggle.js +0 -186
  294. package/toggle/index.d.ts +0 -21
  295. package/toggle-group/index.d.ts +0 -21
  296. package/upload/Upload.js +0 -201
  297. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  298. package/upload/buttons-upload/Icons.js +0 -40
  299. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  300. package/upload/dragAndDropArea/Icons.js +0 -39
  301. package/upload/file-upload/FileToUpload.js +0 -115
  302. package/upload/file-upload/Icons.js +0 -66
  303. package/upload/files-upload/FilesToUpload.js +0 -109
  304. package/upload/index.d.ts +0 -15
  305. package/upload/transaction/Icons.js +0 -160
  306. package/upload/transaction/Transaction.js +0 -104
  307. package/upload/transactions/Transactions.js +0 -94
  308. package/wizard/Icons.js +0 -65
  309. /package/{radio → badge}/types.js +0 -0
package/package.json CHANGED
@@ -1,41 +1,37 @@
1
1
  {
2
2
  "name": "@dxc-technology/halstack-react",
3
- "version": "0.0.0-7604f1d",
3
+ "version": "0.0.0-76b7408",
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",
21
+ "@radix-ui/react-popover": "0.1.6",
22
+ "@types/styled-components": "^5.1.24",
23
+ "@types/uuid": "^8.3.4",
27
24
  "color": "^3.1.3",
28
- "date-fns": "^2.0.0-beta.4",
29
- "moment": "2.24.0",
30
- "prop-types": "^15.7.2",
25
+ "dayjs": "^1.11.1",
31
26
  "rgb-hex": "^3.0.0",
27
+ "slugify": "^1.6.5",
32
28
  "uuid": "^8.3.2"
33
29
  },
34
30
  "scripts": {
35
- "test": "jest",
31
+ "test": "jest --env=jsdom",
36
32
  "test:watch": "npm test -- --watch --coverage",
37
33
  "build": "babel src --extensions .js,.jsx,.ts,.tsx --out-dir ../dist --copy-files --verbose && node ../scripts/build/copy-package.js && tsc ",
38
- "build:watch": "babel src --watch --out-dir ../dist --copy-files --verbose",
34
+ "build:watch": "babel src --watch --extensions .js,.jsx,.ts,.tsx --out-dir ../dist --copy-files --verbose",
39
35
  "storybook": "start-storybook -p 6006",
40
36
  "build-storybook": "build-storybook"
41
37
  },
@@ -52,9 +48,10 @@
52
48
  "@storybook/addon-essentials": "^6.4.9",
53
49
  "@storybook/addon-links": "^6.4.9",
54
50
  "@storybook/react": "^6.4.9",
55
- "@testing-library/react": "^11.2.5",
56
51
  "@storybook/testing-library": "0.0.7",
57
- "@testing-library/user-event": "^12.6.3",
52
+ "@testing-library/react": "^13.0.0",
53
+ "@testing-library/user-event": "^13.0.0",
54
+ "@types/react": "^18.0.18",
58
55
  "babel-jest": "^24.8.0",
59
56
  "babel-loader": "^8.0.6",
60
57
  "chromatic": "^6.3.3",
@@ -68,9 +65,10 @@
68
65
  "eslint-plugin-react-hooks": "^4.2.0",
69
66
  "eslint-plugin-storybook": "^0.5.5",
70
67
  "identity-obj-proxy": "^3.0.0",
71
- "jest": "^25.5.4",
72
- "react": "^17.0.1",
73
- "react-dom": "^17.0.1",
68
+ "jest": "^29.2.2",
69
+ "jest-environment-jsdom": "^29.3.1",
70
+ "react": "^18.x",
71
+ "react-dom": "^18.x",
74
72
  "react-test-renderer": "^16.8.6",
75
73
  "storybook-addon-pseudo-states": "^1.0.0",
76
74
  "styled-components": "^5.0.1",
@@ -80,7 +78,8 @@
80
78
  "moduleNameMapper": {
81
79
  "\\.(css|less|scss|sass)$": "identity-obj-proxy",
82
80
  "\\.(svg)$": "<rootDir>/test/mocks/svgMock.js",
83
- "\\.(png)$": "<rootDir>/test/mocks/pngMock.js"
81
+ "\\.(png)$": "<rootDir>/test/mocks/pngMock.js",
82
+ "^uuid$": "uuid"
84
83
  }
85
84
  }
86
85
  }
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const firstIcon: JSX.Element;
3
+ export declare const previousIcon: JSX.Element;
4
+ export declare const nextIcon: JSX.Element;
5
+ export declare const lastIcon: JSX.Element;
@@ -11,56 +11,44 @@ var _react = _interopRequireDefault(require("react"));
11
11
 
12
12
  var firstIcon = /*#__PURE__*/_react["default"].createElement("svg", {
13
13
  xmlns: "http://www.w3.org/2000/svg",
14
- width: "12.41",
15
- height: "12",
16
- viewBox: "0 0 12.41 12"
14
+ height: "24",
15
+ width: "24",
16
+ fill: "currentColor"
17
17
  }, /*#__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)"
18
+ d: "M6 18V6h2v12Zm11 0-6-6 6-6 1.4 1.4-4.6 4.6 4.6 4.6Z"
22
19
  }));
23
20
 
24
21
  exports.firstIcon = firstIcon;
25
22
 
26
23
  var previousIcon = /*#__PURE__*/_react["default"].createElement("svg", {
27
24
  xmlns: "http://www.w3.org/2000/svg",
28
- width: "7.41",
29
- height: "12",
30
- viewBox: "0 0 7.41 12"
25
+ height: "24",
26
+ width: "24",
27
+ fill: "currentColor"
31
28
  }, /*#__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)"
29
+ d: "m14 18-6-6 6-6 1.4 1.4-4.6 4.6 4.6 4.6Z"
36
30
  }));
37
31
 
38
32
  exports.previousIcon = previousIcon;
39
33
 
40
34
  var nextIcon = /*#__PURE__*/_react["default"].createElement("svg", {
41
35
  xmlns: "http://www.w3.org/2000/svg",
42
- width: "7.41",
43
- height: "12",
44
- viewBox: "0 0 7.41 12"
36
+ height: "24",
37
+ width: "24",
38
+ fill: "currentColor"
45
39
  }, /*#__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)"
40
+ d: "M9.4 18 8 16.6l4.6-4.6L8 7.4 9.4 6l6 6Z"
50
41
  }));
51
42
 
52
43
  exports.nextIcon = nextIcon;
53
44
 
54
45
  var lastIcon = /*#__PURE__*/_react["default"].createElement("svg", {
55
46
  xmlns: "http://www.w3.org/2000/svg",
56
- width: "12.41",
57
- height: "12",
58
- viewBox: "0 0 12.41 12"
47
+ height: "24",
48
+ width: "24",
49
+ fill: "currentColor"
59
50
  }, /*#__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)"
51
+ d: "m7 18-1.4-1.4 4.6-4.6-4.6-4.6L7 6l6 6Zm9 0V6h2v12Z"
64
52
  }));
65
53
 
66
54
  exports.lastIcon = lastIcon;
@@ -15,7 +15,9 @@ var _react = _interopRequireDefault(require("react"));
15
15
 
16
16
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
17
 
18
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
18
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
19
+
20
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
19
21
 
20
22
  var _Button = _interopRequireDefault(require("../button/Button"));
21
23
 
@@ -23,9 +25,9 @@ var _Select = _interopRequireDefault(require("../select/Select"));
23
25
 
24
26
  var _Icons = require("./Icons");
25
27
 
26
- var _BackgroundColorContext = require("../BackgroundColorContext.js");
28
+ var _BackgroundColorContext = require("../BackgroundColorContext");
27
29
 
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
29
31
 
30
32
  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
33
 
@@ -49,13 +51,14 @@ var DxcPaginator = function DxcPaginator(_ref) {
49
51
  var minItemsPerPage = currentPageInternal === 1 || currentPageInternal === 0 ? currentPageInternal : (currentPageInternal - 1) * itemsPerPage + 1;
50
52
  var maxItemsPerPage = minItemsPerPage - 1 + itemsPerPage > totalItems ? totalItems : minItemsPerPage - 1 + itemsPerPage;
51
53
  var colorsTheme = (0, _useTheme["default"])();
54
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
52
55
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
53
56
  theme: colorsTheme.paginator
54
57
  }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
55
58
  color: colorsTheme.paginator.backgroundColor
56
59
  }, /*#__PURE__*/_react["default"].createElement(DxcPaginatorContainer, {
57
60
  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"], {
61
+ }, /*#__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
62
  options: itemsPerPageOptions.map(function (num) {
60
63
  return {
61
64
  label: num.toString(),
@@ -67,37 +70,24 @@ var DxcPaginator = function DxcPaginator(_ref) {
67
70
  },
68
71
  value: itemsPerPage.toString(),
69
72
  size: "fillParent",
70
- margin: {
71
- top: "xsmall"
72
- },
73
73
  tabIndex: tabIndex
74
- }))), /*#__PURE__*/_react["default"].createElement(TotalItemsContainer, null, minItemsPerPage, " to ", maxItemsPerPage, " of ", totalItems), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
75
- size: "small",
74
+ }))), /*#__PURE__*/_react["default"].createElement(TotalItemsContainer, null, translatedLabels.paginator.minToMaxOfText(minItemsPerPage, maxItemsPerPage, totalItems)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
76
75
  mode: "secondary",
77
76
  disabled: currentPageInternal === 1 || currentPageInternal === 0,
78
- margin: {
79
- left: "xxsmall",
80
- right: "xxsmall"
81
- },
82
77
  icon: _Icons.firstIcon,
83
78
  tabIndex: tabIndex,
84
79
  onClick: function onClick() {
85
80
  onPageChange(1);
86
81
  }
87
82
  }), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
88
- size: "small",
89
83
  mode: "secondary",
90
84
  disabled: currentPageInternal === 1 || currentPageInternal === 0,
91
- margin: {
92
- left: "xxsmall",
93
- right: "xxsmall"
94
- },
95
85
  icon: _Icons.previousIcon,
96
86
  tabIndex: tabIndex,
97
87
  onClick: function onClick() {
98
88
  onPageChange(currentPage - 1);
99
89
  }
100
- }), 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"], {
90
+ }), 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"], {
101
91
  options: Array.from(Array(totalPages), function (e, num) {
102
92
  return {
103
93
  label: (num + 1).toString(),
@@ -109,31 +99,18 @@ var DxcPaginator = function DxcPaginator(_ref) {
109
99
  },
110
100
  value: currentPage.toString(),
111
101
  size: "fillParent",
112
- margin: {
113
- top: "xsmall"
114
- },
115
102
  tabIndex: tabIndex
116
- }))) || /*#__PURE__*/_react["default"].createElement(TextContainer, null, "Page: ", currentPageInternal, " of ", totalPages), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
117
- size: "small",
103
+ }))) : /*#__PURE__*/_react["default"].createElement("span", null, translatedLabels.paginator.pageOfText(currentPageInternal, totalPages)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
118
104
  mode: "secondary",
119
105
  disabled: currentPageInternal === totalPages,
120
- margin: {
121
- left: "xxsmall",
122
- right: "xxsmall"
123
- },
124
106
  icon: _Icons.nextIcon,
125
107
  tabIndex: tabIndex,
126
108
  onClick: function onClick() {
127
109
  onPageChange(currentPage + 1);
128
110
  }
129
111
  }), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
130
- size: "small",
131
112
  mode: "secondary",
132
113
  disabled: currentPageInternal === totalPages,
133
- margin: {
134
- left: "xxsmall",
135
- right: "xxsmall"
136
- },
137
114
  icon: _Icons.lastIcon,
138
115
  tabIndex: tabIndex,
139
116
  onClick: function onClick() {
@@ -142,11 +119,7 @@ var DxcPaginator = function DxcPaginator(_ref) {
142
119
  })))));
143
120
  };
144
121
 
145
- 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) {
146
- return props.theme.height;
147
- }, function (props) {
148
- return props.theme.width;
149
- }, function (props) {
122
+ 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) {
150
123
  return props.theme.fontFamily;
151
124
  }, function (props) {
152
125
  return props.theme.fontSize;
@@ -160,19 +133,23 @@ var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject ||
160
133
  return props.theme.backgroundColor;
161
134
  }, function (props) {
162
135
  return props.theme.fontColor;
136
+ }, function (props) {
137
+ return props.theme.verticalPadding;
138
+ }, function (props) {
139
+ return props.theme.horizontalPadding;
163
140
  });
164
141
 
165
- var SelectContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n max-width: 100px;\n"])));
142
+ var SelectContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n min-width: 5.25rem;\n"])));
166
143
 
167
- 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) {
144
+ 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) {
168
145
  return props.theme.itemsPerPageSelectorMarginRight;
169
146
  }, function (props) {
170
147
  return props.theme.itemsPerPageSelectorMarginLeft;
171
148
  });
172
149
 
173
- var ItemsLabel = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 15px;\n"])));
150
+ var ItemsLabel = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 0.5rem;\n"])));
174
151
 
175
- var GoToLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 10px;\n margin-left: 10px;\n"])));
152
+ var GoToLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n"])));
176
153
 
177
154
  var TotalItemsContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
178
155
  return props.theme.totalItemsContainerMarginRight;
@@ -180,19 +157,9 @@ var TotalItemsContainer = _styledComponents["default"].span(_templateObject6 ||
180
157
  return props.theme.totalItemsContainerMarginLeft;
181
158
  });
182
159
 
183
- 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) {
184
- return props.theme.marginRight;
185
- }, function (props) {
186
- return props.theme.marginLeft;
187
- });
188
-
189
- 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) {
190
- return props.theme.pageSelectorMarginRight;
191
- }, function (props) {
192
- return props.theme.pageSelectorMarginLeft;
193
- });
160
+ 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"])));
194
161
 
195
- var TextContainer = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])([""])));
162
+ var PageToSelectContainer = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: 0.5rem;\n"])));
196
163
 
197
164
  var _default = DxcPaginator;
198
165
  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
  );