@dxc-technology/halstack-react 3.3.0 → 4.0.1

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 (254) hide show
  1. package/{dist/BackgroundColorContext.js → BackgroundColorContext.js} +0 -0
  2. package/ThemeContext.js +250 -0
  3. package/{dist/select/Select.js → V3Select/V3Select.js} +175 -189
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +30 -26
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/{dist/accordion → accordion}/Accordion.js +66 -59
  8. package/accordion/index.d.ts +28 -0
  9. package/{dist/accordion-group → accordion-group}/AccordionGroup.js +1 -3
  10. package/accordion-group/index.d.ts +16 -0
  11. package/{dist/alert → alert}/Alert.js +126 -111
  12. package/alert/index.d.ts +51 -0
  13. package/{dist/badge → badge}/Badge.js +0 -0
  14. package/{dist/box → box}/Box.js +1 -9
  15. package/box/index.d.ts +25 -0
  16. package/button/Button.js +238 -0
  17. package/button/Button.stories.js +27 -0
  18. package/button/index.d.ts +24 -0
  19. package/{dist/card → card}/Card.js +0 -0
  20. package/card/index.d.ts +22 -0
  21. package/{dist/checkbox → checkbox}/Checkbox.js +26 -21
  22. package/checkbox/index.d.ts +24 -0
  23. package/{dist/chip → chip}/Chip.js +21 -25
  24. package/chip/index.d.ts +22 -0
  25. package/{dist/common → common}/OpenSans.css +0 -0
  26. package/{dist/common → common}/RequiredComponent.js +0 -0
  27. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  28. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  29. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  30. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  31. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  32. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  33. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  34. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  35. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  36. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  37. package/{dist/common → common}/utils.js +0 -0
  38. package/common/variables.js +1567 -0
  39. package/{dist/date → date}/Date.js +7 -9
  40. package/date/index.d.ts +27 -0
  41. package/date-input/DateInput.js +400 -0
  42. package/date-input/index.d.ts +95 -0
  43. package/{dist/dialog → dialog}/Dialog.js +15 -32
  44. package/dialog/index.d.ts +18 -0
  45. package/{dist/dropdown → dropdown}/Dropdown.js +117 -66
  46. package/dropdown/index.d.ts +26 -0
  47. package/file-input/FileInput.js +644 -0
  48. package/file-input/FileItem.js +287 -0
  49. package/file-input/index.d.ts +81 -0
  50. package/{dist/footer → footer}/Footer.js +63 -49
  51. package/footer/Icons.js +77 -0
  52. package/footer/index.d.ts +25 -0
  53. package/{dist/header → header}/Header.js +123 -84
  54. package/header/Icons.js +59 -0
  55. package/header/index.d.ts +25 -0
  56. package/{dist/heading → heading}/Heading.js +13 -5
  57. package/heading/index.d.ts +17 -0
  58. package/input-text/Icons.js +22 -0
  59. package/{dist/input-text → input-text}/InputText.js +96 -63
  60. package/input-text/index.d.ts +36 -0
  61. package/{dist/layout → layout}/ApplicationLayout.js +5 -9
  62. package/layout/Icons.js +55 -0
  63. package/{dist/link → link}/Link.js +4 -8
  64. package/link/index.d.ts +23 -0
  65. package/main.d.ts +40 -0
  66. package/{dist/main.js → main.js} +62 -14
  67. package/number-input/NumberInput.js +136 -0
  68. package/number-input/NumberInputContext.js +16 -0
  69. package/number-input/index.d.ts +113 -0
  70. package/package.json +23 -17
  71. package/paginator/Icons.js +66 -0
  72. package/{dist/paginator → paginator}/Paginator.js +60 -38
  73. package/paginator/index.d.ts +20 -0
  74. package/password-input/PasswordInput.js +203 -0
  75. package/password-input/index.d.ts +94 -0
  76. package/{dist/progress-bar → progress-bar}/ProgressBar.js +63 -27
  77. package/progress-bar/index.d.ts +18 -0
  78. package/{dist/radio → radio}/Radio.js +0 -0
  79. package/radio/index.d.ts +23 -0
  80. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +1 -1
  81. package/resultsetTable/index.d.ts +19 -0
  82. package/select/Select.js +1138 -0
  83. package/select/index.d.ts +131 -0
  84. package/{dist/sidenav → sidenav}/Sidenav.js +11 -15
  85. package/sidenav/index.d.ts +13 -0
  86. package/{dist/slider → slider}/Slider.js +155 -66
  87. package/slider/index.d.ts +29 -0
  88. package/spinner/Spinner.js +381 -0
  89. package/spinner/index.d.ts +17 -0
  90. package/{dist/switch → switch}/Switch.js +0 -0
  91. package/switch/index.d.ts +24 -0
  92. package/{dist/table → table}/Table.js +5 -1
  93. package/table/index.d.ts +13 -0
  94. package/{dist/tabs → tabs}/Tabs.js +0 -0
  95. package/tabs/index.d.ts +19 -0
  96. package/{dist/tag → tag}/Tag.js +37 -35
  97. package/tag/index.d.ts +24 -0
  98. package/text-input/TextInput.js +992 -0
  99. package/text-input/index.d.ts +135 -0
  100. package/textarea/Textarea.js +369 -0
  101. package/textarea/index.d.ts +117 -0
  102. package/{dist/toggle → toggle}/Toggle.js +0 -0
  103. package/toggle/index.d.ts +21 -0
  104. package/toggle-group/ToggleGroup.js +327 -0
  105. package/toggle-group/index.d.ts +21 -0
  106. package/{dist/upload → upload}/Upload.js +0 -0
  107. package/{dist/upload → upload}/buttons-upload/ButtonsUpload.js +12 -12
  108. package/upload/buttons-upload/Icons.js +40 -0
  109. package/{dist/upload → upload}/dragAndDropArea/DragAndDropArea.js +23 -19
  110. package/upload/dragAndDropArea/Icons.js +39 -0
  111. package/{dist/upload → upload}/file-upload/FileToUpload.js +27 -22
  112. package/upload/file-upload/Icons.js +66 -0
  113. package/{dist/upload → upload}/files-upload/FilesToUpload.js +0 -0
  114. package/upload/index.d.ts +15 -0
  115. package/upload/transaction/Icons.js +160 -0
  116. package/{dist/upload → upload}/transaction/Transaction.js +18 -41
  117. package/{dist/upload → upload}/transactions/Transactions.js +11 -11
  118. package/{dist/useTheme.js → useTheme.js} +0 -0
  119. package/wizard/Icons.js +65 -0
  120. package/{dist/wizard → wizard}/Wizard.js +11 -17
  121. package/wizard/index.d.ts +18 -0
  122. package/README.md +0 -66
  123. package/babel.config.js +0 -8
  124. package/dist/ThemeContext.js +0 -216
  125. package/dist/accordion/Accordion.stories.js +0 -207
  126. package/dist/accordion/readme.md +0 -96
  127. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  128. package/dist/accordion-group/readme.md +0 -70
  129. package/dist/alert/Alert.stories.js +0 -158
  130. package/dist/alert/close.svg +0 -4
  131. package/dist/alert/error.svg +0 -4
  132. package/dist/alert/info.svg +0 -4
  133. package/dist/alert/readme.md +0 -43
  134. package/dist/alert/success.svg +0 -4
  135. package/dist/alert/warning.svg +0 -4
  136. package/dist/button/Button.js +0 -232
  137. package/dist/button/Button.stories.js +0 -224
  138. package/dist/button/readme.md +0 -93
  139. package/dist/checkbox/Checkbox.stories.js +0 -144
  140. package/dist/checkbox/readme.md +0 -116
  141. package/dist/common/variables.js +0 -1158
  142. package/dist/date/Date.stories.js +0 -205
  143. package/dist/date/readme.md +0 -73
  144. package/dist/dialog/Dialog.stories.js +0 -217
  145. package/dist/dialog/readme.md +0 -32
  146. package/dist/dropdown/Dropdown.stories.js +0 -249
  147. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  148. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  149. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  150. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  151. package/dist/dropdown/readme.md +0 -69
  152. package/dist/footer/Footer.stories.js +0 -94
  153. package/dist/footer/dxc_logo.svg +0 -15
  154. package/dist/footer/readme.md +0 -41
  155. package/dist/header/Header.stories.js +0 -176
  156. package/dist/header/close_icon.svg +0 -1
  157. package/dist/header/dxc_logo_black.svg +0 -8
  158. package/dist/header/hamb_menu_black.svg +0 -1
  159. package/dist/header/hamb_menu_white.svg +0 -1
  160. package/dist/header/readme.md +0 -33
  161. package/dist/input-text/InputText.stories.js +0 -209
  162. package/dist/input-text/error.svg +0 -1
  163. package/dist/input-text/readme.md +0 -91
  164. package/dist/layout/facebook.svg +0 -45
  165. package/dist/layout/linkedin.svg +0 -50
  166. package/dist/layout/twitter.svg +0 -53
  167. package/dist/link/readme.md +0 -51
  168. package/dist/paginator/images/next.svg +0 -3
  169. package/dist/paginator/images/nextPage.svg +0 -3
  170. package/dist/paginator/images/previous.svg +0 -3
  171. package/dist/paginator/images/previousPage.svg +0 -3
  172. package/dist/paginator/readme.md +0 -50
  173. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  174. package/dist/progress-bar/readme.md +0 -63
  175. package/dist/radio/Radio.stories.js +0 -166
  176. package/dist/radio/readme.md +0 -70
  177. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  178. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  179. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  180. package/dist/select/Select.stories.js +0 -235
  181. package/dist/select/readme.md +0 -72
  182. package/dist/slider/Slider.stories.js +0 -241
  183. package/dist/slider/readme.md +0 -64
  184. package/dist/spinner/Spinner.js +0 -214
  185. package/dist/spinner/Spinner.stories.js +0 -183
  186. package/dist/spinner/readme.md +0 -65
  187. package/dist/switch/Switch.stories.js +0 -134
  188. package/dist/switch/readme.md +0 -133
  189. package/dist/tabs/Tabs.stories.js +0 -130
  190. package/dist/tabs/readme.md +0 -78
  191. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  192. package/dist/tabs-for-sections/readme.md +0 -78
  193. package/dist/toggle/Toggle.stories.js +0 -297
  194. package/dist/toggle/readme.md +0 -80
  195. package/dist/toggle-group/ToggleGroup.js +0 -241
  196. package/dist/toggle-group/readme.md +0 -82
  197. package/dist/upload/Upload.stories.js +0 -72
  198. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  199. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  200. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  201. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  202. package/dist/upload/file-upload/audio-icon.svg +0 -4
  203. package/dist/upload/file-upload/close.svg +0 -4
  204. package/dist/upload/file-upload/file-icon.svg +0 -4
  205. package/dist/upload/file-upload/video-icon.svg +0 -4
  206. package/dist/upload/readme.md +0 -37
  207. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  208. package/dist/upload/transaction/audio-icon.svg +0 -4
  209. package/dist/upload/transaction/error-icon.svg +0 -4
  210. package/dist/upload/transaction/file-icon-err.svg +0 -4
  211. package/dist/upload/transaction/file-icon.svg +0 -4
  212. package/dist/upload/transaction/image-icon-err.svg +0 -4
  213. package/dist/upload/transaction/image-icon.svg +0 -4
  214. package/dist/upload/transaction/success-icon.svg +0 -4
  215. package/dist/upload/transaction/video-icon-err.svg +0 -4
  216. package/dist/upload/transaction/video-icon.svg +0 -4
  217. package/dist/wizard/invalid_icon.svg +0 -5
  218. package/dist/wizard/valid_icon.svg +0 -5
  219. package/dist/wizard/validation-wrong.svg +0 -6
  220. package/test/Accordion.test.js +0 -33
  221. package/test/AccordionGroup.test.js +0 -125
  222. package/test/Alert.test.js +0 -53
  223. package/test/Box.test.js +0 -10
  224. package/test/Button.test.js +0 -18
  225. package/test/Card.test.js +0 -30
  226. package/test/Checkbox.test.js +0 -45
  227. package/test/Chip.test.js +0 -25
  228. package/test/Date.test.js +0 -393
  229. package/test/Dialog.test.js +0 -23
  230. package/test/Dropdown.test.js +0 -130
  231. package/test/Footer.test.js +0 -99
  232. package/test/Header.test.js +0 -39
  233. package/test/Heading.test.js +0 -35
  234. package/test/InputText.test.js +0 -240
  235. package/test/Link.test.js +0 -43
  236. package/test/Paginator.test.js +0 -177
  237. package/test/ProgressBar.test.js +0 -35
  238. package/test/Radio.test.js +0 -37
  239. package/test/ResultsetTable.test.js +0 -330
  240. package/test/Select.test.js +0 -192
  241. package/test/Sidenav.test.js +0 -45
  242. package/test/Slider.test.js +0 -82
  243. package/test/Spinner.test.js +0 -27
  244. package/test/Switch.test.js +0 -45
  245. package/test/Table.test.js +0 -36
  246. package/test/Tabs.test.js +0 -109
  247. package/test/TabsForSections.test.js +0 -34
  248. package/test/Tag.test.js +0 -32
  249. package/test/TextArea.test.js +0 -52
  250. package/test/ToggleGroup.test.js +0 -81
  251. package/test/Upload.test.js +0 -60
  252. package/test/Wizard.test.js +0 -130
  253. package/test/mocks/pngMock.js +0 -1
  254. package/test/mocks/svgMock.js +0 -1
@@ -25,16 +25,22 @@ var _Button = _interopRequireDefault(require("../button/Button"));
25
25
 
26
26
  var _Select = _interopRequireDefault(require("../select/Select"));
27
27
 
28
- var _previousPage = _interopRequireDefault(require("./images/previousPage.svg"));
28
+ var _Icons = require("./Icons");
29
29
 
30
- var _previous = _interopRequireDefault(require("./images/previous.svg"));
30
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
31
31
 
32
- var _next = _interopRequireDefault(require("./images/next.svg"));
32
+ function _templateObject9() {
33
+ var data = (0, _taggedTemplateLiteral2["default"])([""]);
33
34
 
34
- var _nextPage = _interopRequireDefault(require("./images/nextPage.svg"));
35
+ _templateObject9 = function _templateObject9() {
36
+ return data;
37
+ };
38
+
39
+ return data;
40
+ }
35
41
 
36
42
  function _templateObject8() {
37
- var data = (0, _taggedTemplateLiteral2["default"])([""]);
43
+ var data = (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"]);
38
44
 
39
45
  _templateObject8 = function _templateObject8() {
40
46
  return data;
@@ -44,7 +50,7 @@ function _templateObject8() {
44
50
  }
45
51
 
46
52
  function _templateObject7() {
47
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: ", ";\n margin-left: ", ";\n label {\n height: 0px;\n }\n\n label + .MuiInput-formControl {\n margin-top: 0px;\n }\n"]);
53
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n width: 100%;\n justify-content: flex-end;\n align-items: center;\n margin: 0 ", " 0 ", ";\n"]);
48
54
 
49
55
  _templateObject7 = function _templateObject7() {
50
56
  return data;
@@ -54,7 +60,7 @@ function _templateObject7() {
54
60
  }
55
61
 
56
62
  function _templateObject6() {
57
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n width: 100%;\n justify-content: flex-end;\n align-items: center;\n margin: 0 ", " 0 ", ";\n"]);
63
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n margin-left: ", ";\n"]);
58
64
 
59
65
  _templateObject6 = function _templateObject6() {
60
66
  return data;
@@ -64,7 +70,7 @@ function _templateObject6() {
64
70
  }
65
71
 
66
72
  function _templateObject5() {
67
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n margin-left: ", ";\n"]);
73
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 10px;\n margin-left: 10px;\n"]);
68
74
 
69
75
  _templateObject5 = function _templateObject5() {
70
76
  return data;
@@ -74,7 +80,7 @@ function _templateObject5() {
74
80
  }
75
81
 
76
82
  function _templateObject4() {
77
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 10px;\n margin-left: 10px;\n"]);
83
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 15px;\n"]);
78
84
 
79
85
  _templateObject4 = function _templateObject4() {
80
86
  return data;
@@ -84,7 +90,7 @@ function _templateObject4() {
84
90
  }
85
91
 
86
92
  function _templateObject3() {
87
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 15px;\n"]);
93
+ var data = (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"]);
88
94
 
89
95
  _templateObject3 = function _templateObject3() {
90
96
  return data;
@@ -94,7 +100,7 @@ function _templateObject3() {
94
100
  }
95
101
 
96
102
  function _templateObject2() {
97
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: ", ";\n margin-left: ", ";\n label {\n height: 0px;\n }\n\n label + .MuiInput-formControl {\n margin-top: 0px;\n }\n"]);
103
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n max-width: 100px;\n"]);
98
104
 
99
105
  _templateObject2 = function _templateObject2() {
100
106
  return data;
@@ -104,7 +110,7 @@ function _templateObject2() {
104
110
  }
105
111
 
106
112
  function _templateObject() {
107
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: ", ";\n width: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n background-color: ", ";\n color: ", ";\n button {\n &:disabled {\n background-color: transparent !important;\n opacity: 0.3 !important;\n }\n }\n"]);
113
+ var data = (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"]);
108
114
 
109
115
  _templateObject = function _templateObject() {
110
116
  return data;
@@ -133,20 +139,27 @@ var DxcPaginator = function DxcPaginator(_ref) {
133
139
  var colorsTheme = (0, _useTheme["default"])();
134
140
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
135
141
  theme: colorsTheme.paginator
142
+ }, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
143
+ color: colorsTheme.paginator.backgroundColor
136
144
  }, _react["default"].createElement(DxcPaginatorContainer, {
137
145
  disabled: currentPageInternal === 1
138
- }, _react["default"].createElement(LabelsContainer, null, itemsPerPageOptions && _react["default"].createElement(ItemsPageContainer, null, _react["default"].createElement(ItemsLabel, null, "Items per page "), _react["default"].createElement(_Select["default"], {
146
+ }, _react["default"].createElement(LabelsContainer, null, itemsPerPageOptions && _react["default"].createElement(ItemsPageContainer, null, _react["default"].createElement(ItemsLabel, null, "Items per page "), _react["default"].createElement(SelectContainer, null, _react["default"].createElement(_Select["default"], {
139
147
  options: itemsPerPageOptions.map(function (num) {
140
148
  return {
141
- label: num,
142
- value: num
149
+ label: num.toString(),
150
+ value: num.toString()
143
151
  };
144
152
  }),
145
- onChange: itemsPerPageFunction,
146
- value: itemsPerPage,
147
- size: "small",
153
+ onChange: function onChange(newValue) {
154
+ itemsPerPageFunction(Number(newValue.value));
155
+ },
156
+ value: itemsPerPage.toString(),
157
+ size: "fillParent",
158
+ margin: {
159
+ top: "xsmall"
160
+ },
148
161
  tabIndex: tabIndex
149
- })), _react["default"].createElement(TotalItemsContainer, null, minItemsPerPage, " to ", maxItemsPerPage, " of ", totalItems), onPageChange && _react["default"].createElement(_Button["default"], {
162
+ }))), _react["default"].createElement(TotalItemsContainer, null, minItemsPerPage, " to ", maxItemsPerPage, " of ", totalItems), onPageChange && _react["default"].createElement(_Button["default"], {
150
163
  size: "small",
151
164
  mode: "secondary",
152
165
  disabled: currentPageInternal === 1 || currentPageInternal === 0,
@@ -154,7 +167,7 @@ var DxcPaginator = function DxcPaginator(_ref) {
154
167
  left: "xxsmall",
155
168
  right: "xxsmall"
156
169
  },
157
- iconSrc: _previousPage["default"],
170
+ icon: _Icons.firstIcon,
158
171
  tabIndex: tabIndex,
159
172
  onClick: function onClick() {
160
173
  onPageChange(1);
@@ -167,23 +180,28 @@ var DxcPaginator = function DxcPaginator(_ref) {
167
180
  left: "xxsmall",
168
181
  right: "xxsmall"
169
182
  },
170
- iconSrc: _previous["default"],
183
+ icon: _Icons.previousIcon,
171
184
  tabIndex: tabIndex,
172
185
  onClick: function onClick() {
173
186
  onPageChange(currentPage - 1);
174
187
  }
175
- }), showGoToPage && _react["default"].createElement(PageToSelectContainer, null, _react["default"].createElement(GoToLabel, null, "Go to page: "), _react["default"].createElement(_Select["default"], {
188
+ }), showGoToPage && _react["default"].createElement(PageToSelectContainer, null, _react["default"].createElement(GoToLabel, null, "Go to page: "), _react["default"].createElement(SelectContainer, null, _react["default"].createElement(_Select["default"], {
176
189
  options: (0, _toConsumableArray2["default"])(Array(totalPages).keys()).map(function (num) {
177
190
  return {
178
- label: num + 1,
179
- value: num + 1
191
+ label: (num + 1).toString(),
192
+ value: (num + 1).toString()
180
193
  };
181
194
  }),
182
- onChange: onPageChange,
183
- value: currentPage,
184
- size: "small",
195
+ onChange: function onChange(newValue) {
196
+ onPageChange(Number(newValue.value));
197
+ },
198
+ value: currentPage.toString(),
199
+ size: "fillParent",
200
+ margin: {
201
+ top: "xsmall"
202
+ },
185
203
  tabIndex: tabIndex
186
- })) || _react["default"].createElement(TextContainer, null, "Page: ", currentPageInternal, " of ", totalPages), onPageChange && _react["default"].createElement(_Button["default"], {
204
+ }))) || _react["default"].createElement(TextContainer, null, "Page: ", currentPageInternal, " of ", totalPages), onPageChange && _react["default"].createElement(_Button["default"], {
187
205
  size: "small",
188
206
  mode: "secondary",
189
207
  disabled: currentPageInternal === totalPages,
@@ -191,7 +209,7 @@ var DxcPaginator = function DxcPaginator(_ref) {
191
209
  left: "xxsmall",
192
210
  right: "xxsmall"
193
211
  },
194
- iconSrc: _next["default"],
212
+ icon: _Icons.nextIcon,
195
213
  tabIndex: tabIndex,
196
214
  onClick: function onClick() {
197
215
  onPageChange(currentPage + 1);
@@ -204,12 +222,12 @@ var DxcPaginator = function DxcPaginator(_ref) {
204
222
  left: "xxsmall",
205
223
  right: "xxsmall"
206
224
  },
207
- iconSrc: _nextPage["default"],
225
+ icon: _Icons.lastIcon,
208
226
  tabIndex: tabIndex,
209
227
  onClick: function onClick() {
210
228
  onPageChange(totalPages);
211
229
  }
212
- }))));
230
+ })))));
213
231
  };
214
232
 
215
233
  var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject(), function (props) {
@@ -224,41 +242,45 @@ var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject(),
224
242
  return props.theme.fontWeight;
225
243
  }, function (props) {
226
244
  return props.theme.fontStyle;
245
+ }, function (props) {
246
+ return props.theme.fontTextTransform;
227
247
  }, function (props) {
228
248
  return props.theme.backgroundColor;
229
249
  }, function (props) {
230
250
  return props.theme.fontColor;
231
251
  });
232
252
 
233
- var ItemsPageContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
253
+ var SelectContainer = _styledComponents["default"].div(_templateObject2());
254
+
255
+ var ItemsPageContainer = _styledComponents["default"].span(_templateObject3(), function (props) {
234
256
  return props.theme.itemsPerPageSelectorMarginRight;
235
257
  }, function (props) {
236
258
  return props.theme.itemsPerPageSelectorMarginLeft;
237
259
  });
238
260
 
239
- var ItemsLabel = _styledComponents["default"].span(_templateObject3());
261
+ var ItemsLabel = _styledComponents["default"].span(_templateObject4());
240
262
 
241
- var GoToLabel = _styledComponents["default"].span(_templateObject4());
263
+ var GoToLabel = _styledComponents["default"].span(_templateObject5());
242
264
 
243
- var TotalItemsContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
265
+ var TotalItemsContainer = _styledComponents["default"].span(_templateObject6(), function (props) {
244
266
  return props.theme.totalItemsContainerMarginRight;
245
267
  }, function (props) {
246
268
  return props.theme.totalItemsContainerMarginLeft;
247
269
  });
248
270
 
249
- var LabelsContainer = _styledComponents["default"].div(_templateObject6(), function (props) {
271
+ var LabelsContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
250
272
  return props.theme.marginRight;
251
273
  }, function (props) {
252
274
  return props.theme.marginLeft;
253
275
  });
254
276
 
255
- var PageToSelectContainer = _styledComponents["default"].span(_templateObject7(), function (props) {
277
+ var PageToSelectContainer = _styledComponents["default"].span(_templateObject8(), function (props) {
256
278
  return props.theme.pageSelectorMarginRight;
257
279
  }, function (props) {
258
280
  return props.theme.pageSelectorMarginLeft;
259
281
  });
260
282
 
261
- var TextContainer = _styledComponents["default"].span(_templateObject8());
283
+ var TextContainer = _styledComponents["default"].span(_templateObject9());
262
284
 
263
285
  DxcPaginator.propTypes = {
264
286
  currentPage: _propTypes["default"].number,
@@ -0,0 +1,20 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+
9
+ type Props = {
10
+ currentPage?: number;
11
+ itemsPerPage?: number;
12
+ itemsPerPageOptions?: number[];
13
+ totalItems?: number
14
+ showGoToPage?: boolean,
15
+ onPageChange?: void;
16
+ itemsPerPageFunction?: void;
17
+ tabIndex?: number;
18
+ };
19
+
20
+ export default function DxcPaginator(props: Props): JSX.Element;
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
21
+
22
+ var _propTypes = _interopRequireDefault(require("prop-types"));
23
+
24
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
25
+
26
+ var _variables = require("../common/variables.js");
27
+
28
+ function _templateObject() {
29
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n & ::-ms-reveal {\n display: none;\n }\n"]);
30
+
31
+ _templateObject = function _templateObject() {
32
+ return data;
33
+ };
34
+
35
+ return data;
36
+ }
37
+
38
+ var DxcPasswordInput = _react["default"].forwardRef(function (_ref, ref) {
39
+ var _ref$label = _ref.label,
40
+ label = _ref$label === void 0 ? "" : _ref$label,
41
+ _ref$name = _ref.name,
42
+ name = _ref$name === void 0 ? "" : _ref$name,
43
+ value = _ref.value,
44
+ _ref$helperText = _ref.helperText,
45
+ helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
46
+ _ref$clearable = _ref.clearable,
47
+ clearable = _ref$clearable === void 0 ? false : _ref$clearable,
48
+ onChange = _ref.onChange,
49
+ onBlur = _ref.onBlur,
50
+ _ref$error = _ref.error,
51
+ error = _ref$error === void 0 ? "" : _ref$error,
52
+ pattern = _ref.pattern,
53
+ length = _ref.length,
54
+ _ref$autocomplete = _ref.autocomplete,
55
+ autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
56
+ margin = _ref.margin,
57
+ _ref$size = _ref.size,
58
+ size = _ref$size === void 0 ? "medium" : _ref$size,
59
+ _ref$tabIndex = _ref.tabIndex,
60
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
61
+
62
+ var _useState = (0, _react.useState)(false),
63
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
64
+ isPasswordVisible = _useState2[0],
65
+ setIsPasswordVisible = _useState2[1];
66
+
67
+ var inputRef = (0, _react.useRef)(null);
68
+
69
+ var setInputType = function setInputType(type) {
70
+ var _inputRef$current, _inputRef$current$chi;
71
+
72
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : (_inputRef$current$chi = _inputRef$current.children[2]) === null || _inputRef$current$chi === void 0 ? void 0 : _inputRef$current$chi.children[0].setAttribute("type", type);
73
+ };
74
+
75
+ var setAriaAttributes = function setAriaAttributes(ariaExpanded, ariaLabel) {
76
+ if (error && clearable && value) {
77
+ var _inputRef$current2, _inputRef$current2$ch, _inputRef$current2$ch2, _inputRef$current3, _inputRef$current3$ch, _inputRef$current3$ch2;
78
+
79
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : (_inputRef$current2$ch = _inputRef$current2.children[2]) === null || _inputRef$current2$ch === void 0 ? void 0 : (_inputRef$current2$ch2 = _inputRef$current2$ch.children[3]) === null || _inputRef$current2$ch2 === void 0 ? void 0 : _inputRef$current2$ch2.setAttribute("aria-expanded", ariaExpanded);
80
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : (_inputRef$current3$ch = _inputRef$current3.children[2]) === null || _inputRef$current3$ch === void 0 ? void 0 : (_inputRef$current3$ch2 = _inputRef$current3$ch.children[3]) === null || _inputRef$current3$ch2 === void 0 ? void 0 : _inputRef$current3$ch2.setAttribute("aria-label", ariaLabel);
81
+ } else if (error || clearable && !value) {
82
+ var _inputRef$current4, _inputRef$current4$ch, _inputRef$current4$ch2, _inputRef$current5, _inputRef$current5$ch, _inputRef$current5$ch2;
83
+
84
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : (_inputRef$current4$ch = _inputRef$current4.children[2]) === null || _inputRef$current4$ch === void 0 ? void 0 : (_inputRef$current4$ch2 = _inputRef$current4$ch.children[2]) === null || _inputRef$current4$ch2 === void 0 ? void 0 : _inputRef$current4$ch2.setAttribute("aria-expanded", ariaExpanded);
85
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : (_inputRef$current5$ch = _inputRef$current5.children[2]) === null || _inputRef$current5$ch === void 0 ? void 0 : (_inputRef$current5$ch2 = _inputRef$current5$ch.children[2]) === null || _inputRef$current5$ch2 === void 0 ? void 0 : _inputRef$current5$ch2.setAttribute("aria-label", ariaLabel);
86
+ } else {
87
+ var _inputRef$current6, _inputRef$current6$ch, _inputRef$current6$ch2, _inputRef$current7, _inputRef$current7$ch, _inputRef$current7$ch2;
88
+
89
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current6 = inputRef.current) === null || _inputRef$current6 === void 0 ? void 0 : (_inputRef$current6$ch = _inputRef$current6.children[2]) === null || _inputRef$current6$ch === void 0 ? void 0 : (_inputRef$current6$ch2 = _inputRef$current6$ch.children[1]) === null || _inputRef$current6$ch2 === void 0 ? void 0 : _inputRef$current6$ch2.setAttribute("aria-expanded", ariaExpanded);
90
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current7 = inputRef.current) === null || _inputRef$current7 === void 0 ? void 0 : (_inputRef$current7$ch = _inputRef$current7.children[2]) === null || _inputRef$current7$ch === void 0 ? void 0 : (_inputRef$current7$ch2 = _inputRef$current7$ch.children[1]) === null || _inputRef$current7$ch2 === void 0 ? void 0 : _inputRef$current7$ch2.setAttribute("aria-label", ariaLabel);
91
+ }
92
+ };
93
+
94
+ var getIconTitle = function getIconTitle() {
95
+ return isPasswordVisible ? "Hide password" : "Show password";
96
+ };
97
+
98
+ (0, _react.useEffect)(function () {
99
+ setAriaAttributes(false, "Show");
100
+
101
+ if (isPasswordVisible) {
102
+ setInputType("text");
103
+ setAriaAttributes(true, "Hide");
104
+ } else {
105
+ setInputType("password");
106
+ setAriaAttributes(false, "Show");
107
+ }
108
+ }, [isPasswordVisible]);
109
+
110
+ var viewPassword = function viewPassword() {
111
+ setInputType("text");
112
+ setIsPasswordVisible(true);
113
+ };
114
+
115
+ var hidePassword = function hidePassword() {
116
+ setInputType("password");
117
+ setIsPasswordVisible(false);
118
+ };
119
+
120
+ var action = {
121
+ onClick: isPasswordVisible ? hidePassword : viewPassword,
122
+ icon: isPasswordVisible ? _react["default"].createElement("svg", {
123
+ xmlns: "http://www.w3.org/2000/svg",
124
+ height: "24px",
125
+ viewBox: "0 0 24 24",
126
+ width: "24px",
127
+ fill: "#000000"
128
+ }, _react["default"].createElement("path", {
129
+ d: "M0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0z",
130
+ fill: "none"
131
+ }), _react["default"].createElement("path", {
132
+ d: "M12 6c3.79 0 7.17 2.13 8.82 5.5-.59 1.22-1.42 2.27-2.41 3.12l1.41 1.41c1.39-1.23 2.49-2.77 3.18-4.53C21.27 7.11 17 4 12 4c-1.27 0-2.49.2-3.64.57l1.65 1.65C10.66 6.09 11.32 6 12 6zm-1.07 1.14L13 9.21c.57.25 1.03.71 1.28 1.28l2.07 2.07c.08-.34.14-.7.14-1.07C16.5 9.01 14.48 7 12 7c-.37 0-.72.05-1.07.14zM2.01 3.87l2.68 2.68C3.06 7.83 1.77 9.53 1 11.5 2.73 15.89 7 19 12 19c1.52 0 2.98-.29 4.32-.82l3.42 3.42 1.41-1.41L3.42 2.45 2.01 3.87zm7.5 7.5l2.61 2.61c-.04.01-.08.02-.12.02-1.38 0-2.5-1.12-2.5-2.5 0-.05.01-.08.01-.13zm-3.4-3.4l1.75 1.75c-.23.55-.36 1.15-.36 1.78 0 2.48 2.02 4.5 4.5 4.5.63 0 1.23-.13 1.77-.36l.98.98c-.88.24-1.8.38-2.75.38-3.79 0-7.17-2.13-8.82-5.5.7-1.43 1.72-2.61 2.93-3.53z"
133
+ })) : _react["default"].createElement("svg", {
134
+ xmlns: "http://www.w3.org/2000/svg",
135
+ height: "24px",
136
+ viewBox: "0 0 24 24",
137
+ width: "24px",
138
+ fill: "#000000"
139
+ }, _react["default"].createElement("path", {
140
+ d: "M0 0h24v24H0V0z",
141
+ fill: "none"
142
+ }), _react["default"].createElement("path", {
143
+ d: "M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4zm0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7z"
144
+ })),
145
+ title: getIconTitle()
146
+ };
147
+ return _react["default"].createElement(PasswordInput, {
148
+ ref: ref
149
+ }, _react["default"].createElement(_TextInput["default"], {
150
+ ref: inputRef,
151
+ label: label,
152
+ name: name,
153
+ value: value,
154
+ helperText: helperText,
155
+ action: action,
156
+ error: error,
157
+ clearable: clearable,
158
+ onChange: onChange,
159
+ onBlur: onBlur,
160
+ margin: margin,
161
+ size: size,
162
+ pattern: pattern,
163
+ length: length,
164
+ autocomplete: autocomplete,
165
+ tabIndex: tabIndex
166
+ }));
167
+ });
168
+
169
+ var sizes = {
170
+ small: "240px",
171
+ medium: "360px",
172
+ large: "480px",
173
+ fillParent: "100%"
174
+ };
175
+
176
+ var PasswordInput = _styledComponents["default"].div(_templateObject());
177
+
178
+ DxcPasswordInput.propTypes = {
179
+ label: _propTypes["default"].string,
180
+ name: _propTypes["default"].string,
181
+ value: _propTypes["default"].string,
182
+ helperText: _propTypes["default"].string,
183
+ error: _propTypes["default"].string,
184
+ clearable: _propTypes["default"].bool,
185
+ onChange: _propTypes["default"].func,
186
+ onBlur: _propTypes["default"].func,
187
+ autocomplete: _propTypes["default"].string,
188
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
189
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
190
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
191
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
192
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
193
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
194
+ size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
195
+ pattern: _propTypes["default"].string,
196
+ length: _propTypes["default"].shape({
197
+ min: _propTypes["default"].number,
198
+ max: _propTypes["default"].number
199
+ }),
200
+ tabIndex: _propTypes["default"].number
201
+ };
202
+ var _default = DxcPasswordInput;
203
+ exports["default"] = _default;
@@ -0,0 +1,94 @@
1
+ type Size = "small" | "medium" | "large" | "fillParent";
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+
10
+ type Props = {
11
+ /**
12
+ * Text to be placed above the password.
13
+ */
14
+ label?: string;
15
+ /**
16
+ * Name attribute of the input element.
17
+ */
18
+ name?: string;
19
+ /**
20
+ * Value of the input element. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
21
+ */
22
+ value?: string;
23
+ /**
24
+ * Helper text to be placed above the password.
25
+ */
26
+ helperText?: string;
27
+ /**
28
+ * If true, the password input will have an action to clear the entered value.
29
+ */
30
+ clearable?: boolean;
31
+ /**
32
+ * This function will be called when the user types within the input
33
+ * element of the component. An object including the current value and
34
+ * the error (if the value entered is not valid) will be passed to this
35
+ * function. If there is no error, error will be null.
36
+ * */
37
+ onChange?: (val: { value: string; error: string }) => void;
38
+ /**
39
+ * This function will be called when the input element loses the focus.
40
+ * An object including the input value and the error (if the value entered is
41
+ * not valid) will be passed to this function. If there is no error, error will be null.
42
+ */
43
+ onBlur?: (val: { value: string; error: string }) => void;
44
+ /**
45
+ * If it is defined, the component will change its appearance, showing
46
+ * the error below the password input component. If it is not defined, the
47
+ * error messages will be managed internally, but never displayed on its own.
48
+ */
49
+ error?: string;
50
+ /**
51
+ * Regular expression that defines the valid format allowed by the
52
+ * password input. This will be checked both when the input element loses the
53
+ * focus and while typing within it. If the string entered does not match
54
+ * the pattern, the onBlur and onChange functions will be called with the
55
+ * current value and an internal error informing that this value does not
56
+ * match the pattern. If the pattern is met, the error parameter of both
57
+ * events will be null.
58
+ */
59
+ pattern?: string;
60
+ /**
61
+ * Specifies the minimun and maximum length allowed by the password input.
62
+ * This will be checked both when the input element loses the
63
+ * focus and while typing within it. If the string entered does not
64
+ * comply the length, the onBlur and onChange functions will be called
65
+ * with the current value and an internal error informing that the value
66
+ * length does not comply the specified range. If a valid length is
67
+ * reached, the error parameter of both events will be null.
68
+ */
69
+ length?: { min?: number; max?: number };
70
+ /**
71
+ * HTML autocomplete attribute. Lets the user specify if any permission the user agent has to provide automated assistance in filling out the input value.
72
+ * Its value must be one of all the possible values of the HTML autocomplete attribute: 'on', 'off', 'email', 'username', 'new-password', ...
73
+ */
74
+ autocomplete?: string;
75
+ /**
76
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
77
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
78
+ */
79
+ margin?: Space | Margin;
80
+ /**
81
+ * Size of the component ('small' | 'medium' | 'large' | 'fillParent').
82
+ */
83
+ size?: Size;
84
+ /**
85
+ * Value of the tabindex attribute.
86
+ */
87
+ tabIndex?: number;
88
+ /**
89
+ * Reference to the component.
90
+ */
91
+ ref?: React.RefObject<HTMLDivElement>;
92
+ };
93
+
94
+ export default function DxcPasswordInput(props: Props): JSX.Element;