@dxc-technology/halstack-react 3.2.0 → 4.0.0

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 (265) hide show
  1. package/BackgroundColorContext.js +46 -0
  2. package/ThemeContext.js +250 -0
  3. package/V3Select/V3Select.js +549 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +264 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/{dist/accordion → accordion}/Accordion.js +119 -50
  8. package/accordion/index.d.ts +28 -0
  9. package/{dist/accordion-group → accordion-group}/AccordionGroup.js +33 -1
  10. package/accordion-group/index.d.ts +16 -0
  11. package/alert/Alert.js +403 -0
  12. package/alert/index.d.ts +51 -0
  13. package/badge/Badge.js +63 -0
  14. package/{dist/box → box}/Box.js +27 -18
  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 +16 -9
  20. package/card/index.d.ts +22 -0
  21. package/{dist/checkbox → checkbox}/Checkbox.js +89 -23
  22. package/checkbox/index.d.ts +24 -0
  23. package/{dist/chip → chip}/Chip.js +63 -21
  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/common/utils.js +22 -0
  38. package/common/variables.js +1567 -0
  39. package/{dist/date → date}/Date.js +60 -38
  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 +44 -29
  44. package/dialog/index.d.ts +18 -0
  45. package/{dist/dropdown → dropdown}/Dropdown.js +162 -74
  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 +79 -37
  51. package/footer/Icons.js +77 -0
  52. package/footer/index.d.ts +25 -0
  53. package/{dist/header → header}/Header.js +157 -72
  54. package/header/Icons.js +59 -0
  55. package/header/index.d.ts +25 -0
  56. package/heading/Heading.js +230 -0
  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 +162 -66
  60. package/input-text/index.d.ts +36 -0
  61. package/{dist/layout → layout}/ApplicationLayout.js +7 -11
  62. package/layout/Icons.js +55 -0
  63. package/{dist/link → link}/Link.js +76 -39
  64. package/link/index.d.ts +23 -0
  65. package/main.d.ts +40 -0
  66. package/{dist/main.js → main.js} +71 -15
  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 +25 -19
  71. package/paginator/Icons.js +66 -0
  72. package/{dist/paginator → paginator}/Paginator.js +86 -42
  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 +88 -38
  77. package/progress-bar/index.d.ts +18 -0
  78. package/{dist/radio → radio}/Radio.js +28 -9
  79. package/radio/index.d.ts +23 -0
  80. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +65 -40
  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 +47 -23
  85. package/sidenav/index.d.ts +13 -0
  86. package/slider/Slider.js +404 -0
  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 +42 -14
  91. package/switch/index.d.ts +24 -0
  92. package/{dist/table → table}/Table.js +45 -11
  93. package/table/index.d.ts +13 -0
  94. package/{dist/tabs → tabs}/Tabs.js +37 -19
  95. package/tabs/index.d.ts +19 -0
  96. package/{dist/tag → tag}/Tag.js +50 -36
  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 +1 -5
  107. package/{dist/upload → upload}/buttons-upload/ButtonsUpload.js +28 -16
  108. package/upload/buttons-upload/Icons.js +40 -0
  109. package/{dist/upload → upload}/dragAndDropArea/DragAndDropArea.js +61 -25
  110. package/upload/dragAndDropArea/Icons.js +39 -0
  111. package/{dist/upload → upload}/file-upload/FileToUpload.js +52 -25
  112. package/upload/file-upload/Icons.js +66 -0
  113. package/{dist/upload → upload}/files-upload/FilesToUpload.js +3 -3
  114. package/upload/index.d.ts +15 -0
  115. package/upload/transaction/Icons.js +160 -0
  116. package/{dist/upload → upload}/transaction/Transaction.js +37 -41
  117. package/{dist/upload → upload}/transactions/Transactions.js +24 -8
  118. package/{dist/useTheme.js → useTheme.js} +0 -0
  119. package/wizard/Icons.js +65 -0
  120. package/{dist/wizard → wizard}/Wizard.js +106 -56
  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 -201
  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.js +0 -318
  130. package/dist/alert/Alert.stories.js +0 -158
  131. package/dist/alert/close.svg +0 -4
  132. package/dist/alert/error.svg +0 -4
  133. package/dist/alert/info.svg +0 -4
  134. package/dist/alert/readme.md +0 -43
  135. package/dist/alert/success.svg +0 -4
  136. package/dist/alert/warning.svg +0 -4
  137. package/dist/badge/Badge.js +0 -40
  138. package/dist/button/Button.js +0 -219
  139. package/dist/button/Button.stories.js +0 -224
  140. package/dist/button/readme.md +0 -93
  141. package/dist/checkbox/Checkbox.stories.js +0 -144
  142. package/dist/checkbox/readme.md +0 -116
  143. package/dist/common/utils.js +0 -42
  144. package/dist/common/variables.js +0 -523
  145. package/dist/date/Date.stories.js +0 -205
  146. package/dist/date/calendar.svg +0 -1
  147. package/dist/date/calendar_dark.svg +0 -1
  148. package/dist/date/readme.md +0 -73
  149. package/dist/dialog/Dialog.stories.js +0 -217
  150. package/dist/dialog/readme.md +0 -32
  151. package/dist/dropdown/Dropdown.stories.js +0 -249
  152. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  153. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  154. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  155. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  156. package/dist/dropdown/readme.md +0 -69
  157. package/dist/footer/Footer.stories.js +0 -94
  158. package/dist/footer/dxc_logo_wht.png +0 -0
  159. package/dist/footer/readme.md +0 -41
  160. package/dist/header/Header.stories.js +0 -176
  161. package/dist/header/close_icon.svg +0 -1
  162. package/dist/header/dxc_logo_black.png +0 -0
  163. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  164. package/dist/header/dxc_logo_white.png +0 -0
  165. package/dist/header/hamb_menu_black.svg +0 -1
  166. package/dist/header/hamb_menu_white.svg +0 -1
  167. package/dist/header/readme.md +0 -33
  168. package/dist/heading/Heading.js +0 -163
  169. package/dist/input-text/InputText.stories.js +0 -209
  170. package/dist/input-text/error.svg +0 -1
  171. package/dist/input-text/readme.md +0 -91
  172. package/dist/layout/facebook.svg +0 -45
  173. package/dist/layout/linkedin.svg +0 -50
  174. package/dist/layout/twitter.svg +0 -53
  175. package/dist/link/readme.md +0 -51
  176. package/dist/paginator/images/next.svg +0 -3
  177. package/dist/paginator/images/nextPage.svg +0 -3
  178. package/dist/paginator/images/previous.svg +0 -3
  179. package/dist/paginator/images/previousPage.svg +0 -3
  180. package/dist/paginator/readme.md +0 -50
  181. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  182. package/dist/progress-bar/readme.md +0 -63
  183. package/dist/radio/Radio.stories.js +0 -166
  184. package/dist/radio/readme.md +0 -70
  185. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  186. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  187. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  188. package/dist/select/Select.js +0 -490
  189. package/dist/select/Select.stories.js +0 -235
  190. package/dist/select/readme.md +0 -72
  191. package/dist/slider/Slider.js +0 -267
  192. package/dist/slider/Slider.stories.js +0 -241
  193. package/dist/slider/readme.md +0 -64
  194. package/dist/spinner/Spinner.js +0 -198
  195. package/dist/spinner/Spinner.stories.js +0 -183
  196. package/dist/spinner/readme.md +0 -65
  197. package/dist/switch/Switch.stories.js +0 -134
  198. package/dist/switch/readme.md +0 -133
  199. package/dist/tabs/Tabs.stories.js +0 -130
  200. package/dist/tabs/readme.md +0 -78
  201. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  202. package/dist/tabs-for-sections/readme.md +0 -78
  203. package/dist/textarea/Textarea.js +0 -238
  204. package/dist/toggle/Toggle.stories.js +0 -297
  205. package/dist/toggle/readme.md +0 -80
  206. package/dist/toggle-group/ToggleGroup.js +0 -223
  207. package/dist/toggle-group/readme.md +0 -82
  208. package/dist/upload/Upload.stories.js +0 -72
  209. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  210. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  211. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  212. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  213. package/dist/upload/file-upload/audio-icon.svg +0 -4
  214. package/dist/upload/file-upload/close.svg +0 -4
  215. package/dist/upload/file-upload/file-icon.svg +0 -4
  216. package/dist/upload/file-upload/video-icon.svg +0 -4
  217. package/dist/upload/readme.md +0 -37
  218. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  219. package/dist/upload/transaction/audio-icon.svg +0 -4
  220. package/dist/upload/transaction/error-icon.svg +0 -4
  221. package/dist/upload/transaction/file-icon-err.svg +0 -4
  222. package/dist/upload/transaction/file-icon.svg +0 -4
  223. package/dist/upload/transaction/image-icon-err.svg +0 -4
  224. package/dist/upload/transaction/image-icon.svg +0 -4
  225. package/dist/upload/transaction/success-icon.svg +0 -4
  226. package/dist/upload/transaction/video-icon-err.svg +0 -4
  227. package/dist/upload/transaction/video-icon.svg +0 -4
  228. package/dist/wizard/invalid_icon.svg +0 -6
  229. package/dist/wizard/valid_icon.svg +0 -6
  230. package/dist/wizard/validation-wrong.svg +0 -6
  231. package/test/Accordion.test.js +0 -33
  232. package/test/AccordionGroup.test.js +0 -125
  233. package/test/Alert.test.js +0 -53
  234. package/test/Box.test.js +0 -10
  235. package/test/Button.test.js +0 -18
  236. package/test/Card.test.js +0 -30
  237. package/test/Checkbox.test.js +0 -45
  238. package/test/Chip.test.js +0 -25
  239. package/test/Date.test.js +0 -393
  240. package/test/Dialog.test.js +0 -23
  241. package/test/Dropdown.test.js +0 -130
  242. package/test/Footer.test.js +0 -99
  243. package/test/Header.test.js +0 -39
  244. package/test/Heading.test.js +0 -35
  245. package/test/InputText.test.js +0 -240
  246. package/test/Link.test.js +0 -42
  247. package/test/Paginator.test.js +0 -177
  248. package/test/ProgressBar.test.js +0 -35
  249. package/test/Radio.test.js +0 -37
  250. package/test/ResultsetTable.test.js +0 -330
  251. package/test/Select.test.js +0 -192
  252. package/test/Sidenav.test.js +0 -45
  253. package/test/Slider.test.js +0 -82
  254. package/test/Spinner.test.js +0 -27
  255. package/test/Switch.test.js +0 -45
  256. package/test/Table.test.js +0 -36
  257. package/test/Tabs.test.js +0 -109
  258. package/test/TabsForSections.test.js +0 -34
  259. package/test/Tag.test.js +0 -32
  260. package/test/TextArea.test.js +0 -52
  261. package/test/ToggleGroup.test.js +0 -81
  262. package/test/Upload.test.js +0 -60
  263. package/test/Wizard.test.js +0 -130
  264. package/test/mocks/pngMock.js +0 -1
  265. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,404 @@
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 _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+
16
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
+
20
+ var _react = _interopRequireWildcard(require("react"));
21
+
22
+ var _Slider = _interopRequireDefault(require("@material-ui/lab/Slider"));
23
+
24
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
29
+
30
+ var _variables = require("../common/variables.js");
31
+
32
+ var _utils = require("../common/utils.js");
33
+
34
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
35
+
36
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
37
+
38
+ function _templateObject7() {
39
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n label + .MuiInput-formControl {\n margin-top: 2px;\n }\n max-width: 70px;\n"]);
40
+
41
+ _templateObject7 = function _templateObject7() {
42
+ return data;
43
+ };
44
+
45
+ return data;
46
+ }
47
+
48
+ function _templateObject6() {
49
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n margin-left: ", ";\n"]);
50
+
51
+ _templateObject6 = function _templateObject6() {
52
+ return data;
53
+ };
54
+
55
+ return data;
56
+ }
57
+
58
+ function _templateObject5() {
59
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n margin-right: ", ";\n"]);
60
+
61
+ _templateObject5 = function _templateObject5() {
62
+ return data;
63
+ };
64
+
65
+ return data;
66
+ }
67
+
68
+ function _templateObject4() {
69
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 48px;\n align-items: center;\n\n .MultiSlider-root {\n display: flex;\n align-items: center;\n }\n .MuiSlider-container {\n padding: 30px 24px;\n }\n .MuiSlider-root.Mui-disabled {\n color: ", ";\n cursor: not-allowed;\n }\n .Mui-disabled {\n & .MuiSlider-thumb {\n height: ", ";\n width: ", ";\n background-color: ", ";\n top: ", ";\n }\n & .MuiSlider-track {\n background-color: ", ";\n }\n & .MuiSlider-rail {\n background-color: ", ";\n }\n & > .MuiSlider-mark.MuiSlider-markActive {\n background-color: ", " !important;\n }\n & > .MuiSlider-mark {\n background-color: ", ";\n height: ", ";\n width: ", ";\n border-radius: 18px;\n top: ", ";\n }\n }\n .MuiSlider-thumb {\n height: ", ";\n width: ", ";\n background-color: ", ";\n top: ", ";\n border-radius: 9999px;\n\n :hover,\n &.Mui-focusVisible {\n box-shadow: none;\n }\n &.MuiSlider-active {\n box-shadow: none;\n }\n :focus {\n outline: ", "\n auto 1px;\n outline-offset: 2px;\n background-color: ", ";\n }\n :hover {\n background-color: ", ";\n transform: scale(", ");\n transform-origin: center;\n height: ", ";\n width: ", ";\n top: ", ";\n }\n :active {\n background-color: ", ";\n transform: scale(", ");\n transform-origin: center;\n }\n }\n .MuiSlider-track {\n background-color: ", ";\n height: ", ";\n top: ", ";\n border-radius: 9999px;\n }\n .MuiSlider-track.MuiSlider-trackAfter {\n background-color: ", ";\n }\n .MuiSlider-rail {\n background-color: ", ";\n height: ", ";\n top: ", ";\n }\n .MuiSlider-mark.MuiSlider-markActive {\n background-color: ", ";\n }\n .MuiSlider-mark {\n background-color: ", ";\n height: ", ";\n width: ", ";\n border-radius: 18px;\n top: ", ";\n }\n"]);
70
+
71
+ _templateObject4 = function _templateObject4() {
72
+ return data;
73
+ };
74
+
75
+ return data;
76
+ }
77
+
78
+ function _templateObject3() {
79
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
80
+
81
+ _templateObject3 = function _templateObject3() {
82
+ return data;
83
+ };
84
+
85
+ return data;
86
+ }
87
+
88
+ function _templateObject2() {
89
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
90
+
91
+ _templateObject2 = function _templateObject2() {
92
+ return data;
93
+ };
94
+
95
+ return data;
96
+ }
97
+
98
+ function _templateObject() {
99
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n"]);
100
+
101
+ _templateObject = function _templateObject() {
102
+ return data;
103
+ };
104
+
105
+ return data;
106
+ }
107
+
108
+ var DxcSlider = function DxcSlider(_ref) {
109
+ var label = _ref.label,
110
+ helperText = _ref.helperText,
111
+ _ref$minValue = _ref.minValue,
112
+ minValue = _ref$minValue === void 0 ? 0 : _ref$minValue,
113
+ _ref$maxValue = _ref.maxValue,
114
+ maxValue = _ref$maxValue === void 0 ? 100 : _ref$maxValue,
115
+ _ref$step = _ref.step,
116
+ step = _ref$step === void 0 ? 1 : _ref$step,
117
+ value = _ref.value,
118
+ _ref$showLimitsValues = _ref.showLimitsValues,
119
+ showLimitsValues = _ref$showLimitsValues === void 0 ? false : _ref$showLimitsValues,
120
+ _ref$showInput = _ref.showInput,
121
+ showInput = _ref$showInput === void 0 ? false : _ref$showInput,
122
+ name = _ref.name,
123
+ onChange = _ref.onChange,
124
+ onDragEnd = _ref.onDragEnd,
125
+ _ref$disabled = _ref.disabled,
126
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
127
+ _ref$marks = _ref.marks,
128
+ marks = _ref$marks === void 0 ? false : _ref$marks,
129
+ labelFormatCallback = _ref.labelFormatCallback,
130
+ margin = _ref.margin,
131
+ _ref$size = _ref.size,
132
+ size = _ref$size === void 0 ? "fillParent" : _ref$size;
133
+
134
+ var _useState = (0, _react.useState)(0),
135
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
136
+ innerValue = _useState2[0],
137
+ setInnerValue = _useState2[1];
138
+
139
+ var colorsTheme = (0, _useTheme["default"])();
140
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
141
+ var minLabel = (0, _react.useMemo)(function () {
142
+ return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
143
+ }, [labelFormatCallback, minValue]);
144
+ var maxLabel = (0, _react.useMemo)(function () {
145
+ return labelFormatCallback ? labelFormatCallback(maxValue) : maxValue;
146
+ }, [labelFormatCallback, maxValue]);
147
+
148
+ var handlerSliderChange = function handlerSliderChange(event, newValue) {
149
+ if (value == null) {
150
+ var valueToCheck = value !== undefined ? value : innerValue;
151
+
152
+ if (valueToCheck !== newValue) {
153
+ setInnerValue(newValue);
154
+ }
155
+ }
156
+
157
+ if (typeof onChange === "function") {
158
+ onChange(newValue);
159
+ }
160
+ };
161
+
162
+ var handlerInputChange = function handlerInputChange(event) {
163
+ var intValue = parseInt(event.value, 10);
164
+
165
+ if (value == null) {
166
+ if (!Number.isNaN(intValue)) {
167
+ setInnerValue(intValue > maxValue ? maxValue : intValue);
168
+ } else {
169
+ setInnerValue("");
170
+ }
171
+ }
172
+
173
+ if (typeof onChange === "function") {
174
+ if (!Number.isNaN(intValue)) {
175
+ onChange(intValue > maxValue ? maxValue : intValue);
176
+ } else {
177
+ onChange("");
178
+ }
179
+ }
180
+ };
181
+
182
+ return _react["default"].createElement(_styledComponents.ThemeProvider, {
183
+ theme: colorsTheme.slider
184
+ }, _react["default"].createElement(Container, {
185
+ margin: margin,
186
+ size: size
187
+ }, _react["default"].createElement(Label, null, label), _react["default"].createElement(HelperText, null, helperText), _react["default"].createElement(SliderContainer, {
188
+ backgroundType: backgroundType
189
+ }, showLimitsValues && _react["default"].createElement(MinLabelContainer, {
190
+ backgroundType: backgroundType,
191
+ disabled: disabled
192
+ }, minLabel), _react["default"].createElement(_Slider["default"], {
193
+ value: value != null && value >= 0 && value || innerValue,
194
+ min: minValue,
195
+ max: maxValue,
196
+ onChange: handlerSliderChange,
197
+ onChangeCommitted: onDragEnd && function (event, selectedValue) {
198
+ return onDragEnd(selectedValue);
199
+ },
200
+ step: step,
201
+ marks: marks || [],
202
+ disabled: disabled
203
+ }), showLimitsValues && _react["default"].createElement(MaxLabelContainer, {
204
+ backgroundType: backgroundType,
205
+ disabled: disabled,
206
+ step: step
207
+ }, maxLabel), showInput && _react["default"].createElement(StyledTextInput, null, _react["default"].createElement(_TextInput["default"], {
208
+ name: name,
209
+ value: value != null && value >= 0 && value || innerValue,
210
+ disabled: disabled,
211
+ onChange: handlerInputChange,
212
+ size: "fillParent"
213
+ })))));
214
+ };
215
+
216
+ var sizes = {
217
+ medium: "240px",
218
+ large: "480px",
219
+ fillParent: "100%"
220
+ };
221
+
222
+ var calculateWidth = function calculateWidth(margin, size) {
223
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
224
+ };
225
+
226
+ var Container = _styledComponents["default"].div(_templateObject(), function (props) {
227
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
228
+ }, function (props) {
229
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
230
+ }, function (props) {
231
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
232
+ }, function (props) {
233
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
234
+ }, function (props) {
235
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
236
+ }, function (props) {
237
+ return calculateWidth(props.margin, props.size);
238
+ });
239
+
240
+ var Label = _styledComponents["default"].label(_templateObject2(), function (props) {
241
+ return props.theme.labelFontColor;
242
+ }, function (props) {
243
+ return props.theme.labelFontFamily;
244
+ }, function (props) {
245
+ return props.theme.labelFontSize;
246
+ }, function (props) {
247
+ return props.theme.labelFontStyle;
248
+ }, function (props) {
249
+ return props.theme.labelFontWeight;
250
+ }, function (props) {
251
+ return props.theme.labelLineHeight;
252
+ });
253
+
254
+ var HelperText = _styledComponents["default"].span(_templateObject3(), function (props) {
255
+ return props.theme.helperTextFontColor;
256
+ }, function (props) {
257
+ return props.theme.helperTextFontFamily;
258
+ }, function (props) {
259
+ return props.theme.helperTextFontSize;
260
+ }, function (props) {
261
+ return props.theme.helperTextFontstyle;
262
+ }, function (props) {
263
+ return props.theme.helperTextFontWeight;
264
+ }, function (props) {
265
+ return props.theme.helperTextLineHeight;
266
+ });
267
+
268
+ var SliderContainer = _styledComponents["default"].div(_templateObject4(), function (props) {
269
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
270
+ }, function (props) {
271
+ return props.theme.thumbHeight;
272
+ }, function (props) {
273
+ return props.theme.thumbWidth;
274
+ }, function (props) {
275
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
276
+ }, function (props) {
277
+ return props.theme.disabledThumbVerticalPosition;
278
+ }, function (props) {
279
+ return props.backgroundType === "dark" ? props.theme.disabledTrackLineColorOnDark : props.theme.disabledTrackLineColor;
280
+ }, function (props) {
281
+ return props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark : props.theme.disabledTotalLineColor;
282
+ }, function (props) {
283
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
284
+ }, function (props) {
285
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
286
+ }, function (props) {
287
+ return props.theme.tickHeight;
288
+ }, function (props) {
289
+ return props.theme.tickWidth;
290
+ }, function (props) {
291
+ return props.theme.disabledTickVerticalPosition;
292
+ }, function (props) {
293
+ return props.theme.thumbHeight;
294
+ }, function (props) {
295
+ return props.theme.thumbWidth;
296
+ }, function (props) {
297
+ return props.backgroundType === "dark" ? props.theme.thumbBackgroundColorOnDark : props.theme.thumbBackgroundColor;
298
+ }, function (props) {
299
+ return props.theme.thumbVerticalPosition;
300
+ }, function (props) {
301
+ return props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
302
+ }, function (props) {
303
+ return props.backgroundType === "dark" ? props.theme.focusThumbBackgroundColorOnDark : props.theme.focusThumbBackgroundColor;
304
+ }, function (props) {
305
+ return props.backgroundType === "dark" ? props.theme.hoverThumbBackgroundColorOnDark : props.theme.hoverThumbBackgroundColor;
306
+ }, function (props) {
307
+ return props.theme.hoverThumbScale;
308
+ }, function (props) {
309
+ return props.theme.hoverThumbHeight;
310
+ }, function (props) {
311
+ return props.theme.hoverThumbWidth;
312
+ }, function (props) {
313
+ return props.theme.hoverThumbVerticalPosition;
314
+ }, function (props) {
315
+ return props.backgroundType === "dark" ? props.theme.activeThumbBackgroundColorOnDark : props.theme.activeThumbBackgroundColor;
316
+ }, function (props) {
317
+ return props.theme.activeThumbScale;
318
+ }, function (props) {
319
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
320
+ }, function (props) {
321
+ return props.theme.trackLineThickness;
322
+ }, function (props) {
323
+ return props.theme.trackLineVerticalPosition;
324
+ }, function (props) {
325
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
326
+ }, function (props) {
327
+ return props.backgroundType === "dark" ? props.theme.totalLineColorOnDark : props.theme.totalLineColor;
328
+ }, function (props) {
329
+ return props.theme.totalLineThickness;
330
+ }, function (props) {
331
+ return props.theme.totalLineVerticalPosition;
332
+ }, function (props) {
333
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
334
+ }, function (props) {
335
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
336
+ }, function (props) {
337
+ return props.theme.tickHeight;
338
+ }, function (props) {
339
+ return props.theme.tickWidth;
340
+ }, function (props) {
341
+ return props.theme.tickVerticalPosition;
342
+ });
343
+
344
+ var MinLabelContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
345
+ return props.theme.fontFamily;
346
+ }, function (props) {
347
+ return props.theme.fontSize;
348
+ }, function (props) {
349
+ return props.theme.fontStyle;
350
+ }, function (props) {
351
+ return props.theme.fontWeight;
352
+ }, function (props) {
353
+ return props.disabled ? props.theme.disabledFontColor : props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
354
+ }, function (props) {
355
+ return props.theme.fontLetterSpacing;
356
+ }, function (props) {
357
+ return props.theme.floorLabelMarginRight;
358
+ });
359
+
360
+ var MaxLabelContainer = _styledComponents["default"].span(_templateObject6(), function (props) {
361
+ return props.theme.fontFamily;
362
+ }, function (props) {
363
+ return props.theme.fontSize;
364
+ }, function (props) {
365
+ return props.theme.fontStyle;
366
+ }, function (props) {
367
+ return props.theme.fontWeight;
368
+ }, function (props) {
369
+ return props.disabled ? props.theme.disabledFontColor : props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
370
+ }, function (props) {
371
+ return props.theme.fontLetterSpacing;
372
+ }, function (props) {
373
+ return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
374
+ });
375
+
376
+ var StyledTextInput = _styledComponents["default"].div(_templateObject7(), function (props) {
377
+ return props.theme.inputMarginLeft;
378
+ });
379
+
380
+ DxcSlider.propTypes = {
381
+ label: _propTypes["default"].string,
382
+ helperText: _propTypes["default"].string,
383
+ size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
384
+ minValue: _propTypes["default"].number,
385
+ maxValue: _propTypes["default"].number,
386
+ step: _propTypes["default"].number,
387
+ value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
388
+ showLimitsValues: _propTypes["default"].bool,
389
+ showInput: _propTypes["default"].bool,
390
+ name: _propTypes["default"].string,
391
+ onChange: _propTypes["default"].func,
392
+ onDragEnd: _propTypes["default"].func,
393
+ disabled: _propTypes["default"].bool,
394
+ marks: _propTypes["default"].bool,
395
+ labelFormatCallback: _propTypes["default"].func,
396
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
397
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
398
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
399
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
400
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
401
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
402
+ };
403
+ var _default = DxcSlider;
404
+ exports["default"] = _default;
@@ -0,0 +1,29 @@
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
+ label?: string;
12
+ helperText?: string;
13
+ minValue?: number;
14
+ maxValue?: number;
15
+ step?: number;
16
+ value?: number;
17
+ showLimitsValues?: boolean;
18
+ showInput?: boolean;
19
+ name?: string;
20
+ onChange?: void;
21
+ onDragEnd?: void;
22
+ disabled?: boolean;
23
+ marks?: boolean;
24
+ labelFormatCallback?: void;
25
+ margin?: Space | Margin;
26
+ size?: Size;
27
+ };
28
+
29
+ export default function DxcSlider(props: Props): JSX.Element;