@dxc-technology/halstack-react 0.0.0-9427b76 → 0.0.0-9439a0d

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 (339) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/{dist/select/Select.js → V3Select/V3Select.js} +38 -132
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +14 -18
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/{dist/accordion → accordion}/Accordion.js +35 -130
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +170 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/{dist/alert → alert}/Alert.js +41 -154
  17. package/alert/Alert.stories.tsx +170 -0
  18. package/alert/types.d.ts +49 -0
  19. package/alert/types.js +5 -0
  20. package/badge/Badge.js +59 -0
  21. package/box/Box.d.ts +4 -0
  22. package/{dist/box → box}/Box.js +13 -43
  23. package/box/Box.stories.tsx +132 -0
  24. package/box/types.d.ts +43 -0
  25. package/box/types.js +5 -0
  26. package/button/Button.d.ts +4 -0
  27. package/{dist/button → button}/Button.js +23 -84
  28. package/button/Button.stories.tsx +276 -0
  29. package/button/types.d.ts +57 -0
  30. package/button/types.js +5 -0
  31. package/card/Card.d.ts +4 -0
  32. package/{dist/card → card}/Card.js +33 -123
  33. package/card/Card.stories.tsx +201 -0
  34. package/card/ice-cream.jpg +0 -0
  35. package/card/types.d.ts +69 -0
  36. package/card/types.js +5 -0
  37. package/checkbox/Checkbox.d.ts +4 -0
  38. package/{dist/checkbox → checkbox}/Checkbox.js +16 -63
  39. package/checkbox/Checkbox.stories.tsx +192 -0
  40. package/checkbox/types.d.ts +60 -0
  41. package/checkbox/types.js +5 -0
  42. package/{dist/chip → chip}/Chip.js +17 -61
  43. package/chip/Chip.stories.tsx +121 -0
  44. package/chip/index.d.ts +22 -0
  45. package/{dist/common → common}/OpenSans.css +0 -0
  46. package/{dist/common → common}/RequiredComponent.js +3 -11
  47. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  53. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  54. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  55. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  56. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  57. package/{dist/common → common}/utils.js +0 -0
  58. package/{dist/common → common}/variables.js +240 -107
  59. package/{dist/date → date}/Date.js +16 -22
  60. package/date/index.d.ts +27 -0
  61. package/date-input/DateInput.d.ts +4 -0
  62. package/{dist/new-date/NewDate.js → date-input/DateInput.js} +55 -94
  63. package/date-input/DateInput.stories.tsx +138 -0
  64. package/date-input/types.d.ts +100 -0
  65. package/date-input/types.js +5 -0
  66. package/dialog/Dialog.d.ts +4 -0
  67. package/{dist/dialog → dialog}/Dialog.js +20 -73
  68. package/dialog/Dialog.stories.tsx +212 -0
  69. package/dialog/types.d.ts +43 -0
  70. package/dialog/types.js +5 -0
  71. package/dropdown/Dropdown.d.ts +4 -0
  72. package/{dist/dropdown → dropdown}/Dropdown.js +44 -171
  73. package/dropdown/types.d.ts +89 -0
  74. package/dropdown/types.js +5 -0
  75. package/file-input/FileInput.d.ts +4 -0
  76. package/{dist/file-input → file-input}/FileInput.js +60 -190
  77. package/file-input/FileItem.d.ts +14 -0
  78. package/file-input/FileItem.js +182 -0
  79. package/file-input/types.d.ts +87 -0
  80. package/file-input/types.js +5 -0
  81. package/footer/Footer.d.ts +4 -0
  82. package/footer/Footer.js +266 -0
  83. package/footer/Footer.stories.jsx +151 -0
  84. package/footer/Icons.js +77 -0
  85. package/footer/types.d.ts +61 -0
  86. package/footer/types.js +5 -0
  87. package/header/Header.d.ts +7 -0
  88. package/header/Header.js +324 -0
  89. package/header/Header.stories.tsx +162 -0
  90. package/header/Icons.js +34 -0
  91. package/header/types.d.ts +45 -0
  92. package/header/types.js +5 -0
  93. package/heading/Heading.d.ts +4 -0
  94. package/{dist/heading → heading}/Heading.js +30 -89
  95. package/heading/types.d.ts +33 -0
  96. package/heading/types.js +5 -0
  97. package/input-text/Icons.js +22 -0
  98. package/{dist/input-text → input-text}/InputText.js +37 -133
  99. package/input-text/index.d.ts +36 -0
  100. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  101. package/layout/Icons.js +55 -0
  102. package/link/Link.d.ts +3 -0
  103. package/{dist/link → link}/Link.js +18 -94
  104. package/link/Link.stories.tsx +146 -0
  105. package/link/types.d.ts +74 -0
  106. package/link/types.js +5 -0
  107. package/main.d.ts +44 -0
  108. package/{dist/main.js → main.js} +100 -96
  109. package/number-input/NumberInput.d.ts +4 -0
  110. package/number-input/NumberInput.js +86 -0
  111. package/number-input/NumberInput.stories.tsx +115 -0
  112. package/{dist/number/NumberContext.js → number-input/NumberInputContext.js} +2 -2
  113. package/number-input/types.d.ts +117 -0
  114. package/number-input/types.js +5 -0
  115. package/package.json +32 -25
  116. package/paginator/Icons.js +66 -0
  117. package/paginator/Paginator.d.ts +4 -0
  118. package/paginator/Paginator.js +198 -0
  119. package/paginator/Paginator.stories.tsx +63 -0
  120. package/paginator/types.d.ts +38 -0
  121. package/paginator/types.js +5 -0
  122. package/password-input/PasswordInput.d.ts +4 -0
  123. package/{dist/password/Password.js → password-input/PasswordInput.js} +26 -64
  124. package/password-input/PasswordInput.stories.tsx +131 -0
  125. package/password-input/types.d.ts +100 -0
  126. package/password-input/types.js +5 -0
  127. package/progress-bar/ProgressBar.d.ts +4 -0
  128. package/{dist/progress-bar → progress-bar}/ProgressBar.js +20 -92
  129. package/progress-bar/ProgressBar.stories.jsx +58 -0
  130. package/progress-bar/types.d.ts +37 -0
  131. package/progress-bar/types.js +5 -0
  132. package/radio/Radio.d.ts +4 -0
  133. package/{dist/radio → radio}/Radio.js +15 -50
  134. package/radio/Radio.stories.tsx +192 -0
  135. package/radio/types.d.ts +54 -0
  136. package/radio/types.js +5 -0
  137. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +35 -119
  138. package/resultsetTable/index.d.ts +19 -0
  139. package/select/Select.js +865 -0
  140. package/select/Select.stories.tsx +572 -0
  141. package/select/index.d.ts +131 -0
  142. package/sidenav/Sidenav.d.ts +9 -0
  143. package/{dist/sidenav → sidenav}/Sidenav.js +19 -62
  144. package/sidenav/types.d.ts +50 -0
  145. package/sidenav/types.js +5 -0
  146. package/slider/Slider.d.ts +4 -0
  147. package/slider/Slider.js +317 -0
  148. package/slider/Slider.stories.tsx +177 -0
  149. package/slider/types.d.ts +78 -0
  150. package/slider/types.js +5 -0
  151. package/spinner/Spinner.d.ts +4 -0
  152. package/spinner/Spinner.js +250 -0
  153. package/spinner/Spinner.stories.jsx +102 -0
  154. package/spinner/types.d.ts +32 -0
  155. package/spinner/types.js +5 -0
  156. package/switch/Switch.d.ts +4 -0
  157. package/{dist/switch → switch}/Switch.js +26 -69
  158. package/switch/Switch.stories.tsx +160 -0
  159. package/switch/types.d.ts +58 -0
  160. package/switch/types.js +5 -0
  161. package/table/Table.d.ts +4 -0
  162. package/{dist/table → table}/Table.js +10 -24
  163. package/table/Table.stories.jsx +276 -0
  164. package/table/types.d.ts +21 -0
  165. package/table/types.js +5 -0
  166. package/tabs/Tabs.d.ts +4 -0
  167. package/tabs/Tabs.js +211 -0
  168. package/tabs/types.d.ts +71 -0
  169. package/tabs/types.js +5 -0
  170. package/tag/Tag.d.ts +4 -0
  171. package/tag/Tag.js +193 -0
  172. package/tag/Tag.stories.tsx +145 -0
  173. package/tag/types.d.ts +60 -0
  174. package/tag/types.js +5 -0
  175. package/{dist/new-input-text/NewInputText.js → text-input/TextInput.js} +270 -409
  176. package/{dist/new-input-text → text-input}/index.d.ts +3 -3
  177. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +31 -76
  178. package/textarea/Textarea.stories.jsx +135 -0
  179. package/{dist/new-textarea → textarea}/index.d.ts +1 -1
  180. package/{dist/toggle → toggle}/Toggle.js +15 -49
  181. package/toggle/index.d.ts +21 -0
  182. package/toggle-group/ToggleGroup.js +243 -0
  183. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  184. package/toggle-group/index.d.ts +21 -0
  185. package/{dist/upload → upload}/Upload.js +11 -15
  186. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  187. package/upload/buttons-upload/Icons.js +40 -0
  188. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  189. package/upload/dragAndDropArea/Icons.js +39 -0
  190. package/upload/file-upload/FileToUpload.js +115 -0
  191. package/upload/file-upload/Icons.js +66 -0
  192. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  193. package/upload/index.d.ts +15 -0
  194. package/upload/transaction/Icons.js +160 -0
  195. package/upload/transaction/Transaction.js +104 -0
  196. package/upload/transactions/Transactions.js +94 -0
  197. package/{dist/useTheme.js → useTheme.js} +0 -0
  198. package/wizard/Icons.js +65 -0
  199. package/wizard/Wizard.d.ts +4 -0
  200. package/{dist/wizard → wizard}/Wizard.js +33 -213
  201. package/wizard/Wizard.stories.jsx +224 -0
  202. package/wizard/types.d.ts +64 -0
  203. package/wizard/types.js +5 -0
  204. package/README.md +0 -66
  205. package/babel.config.js +0 -8
  206. package/dist/BackgroundColorContext.js +0 -46
  207. package/dist/ThemeContext.js +0 -248
  208. package/dist/accordion-group/AccordionGroup.js +0 -186
  209. package/dist/alert/index.d.ts +0 -51
  210. package/dist/badge/Badge.js +0 -63
  211. package/dist/checkbox/Checkbox.stories.js +0 -144
  212. package/dist/checkbox/readme.md +0 -116
  213. package/dist/date/Date.stories.js +0 -205
  214. package/dist/date/readme.md +0 -73
  215. package/dist/file-input/FileItem.js +0 -280
  216. package/dist/file-input/index.d.ts +0 -81
  217. package/dist/footer/Footer.js +0 -395
  218. package/dist/footer/Footer.stories.js +0 -94
  219. package/dist/footer/dxc_logo.svg +0 -15
  220. package/dist/footer/readme.md +0 -41
  221. package/dist/header/Header.js +0 -403
  222. package/dist/header/Header.stories.js +0 -176
  223. package/dist/header/close_icon.svg +0 -1
  224. package/dist/header/dxc_logo_black.svg +0 -8
  225. package/dist/header/hamb_menu_black.svg +0 -1
  226. package/dist/header/hamb_menu_white.svg +0 -1
  227. package/dist/header/readme.md +0 -33
  228. package/dist/input-text/InputText.stories.js +0 -209
  229. package/dist/input-text/error.svg +0 -1
  230. package/dist/input-text/readme.md +0 -91
  231. package/dist/layout/facebook.svg +0 -45
  232. package/dist/layout/linkedin.svg +0 -50
  233. package/dist/layout/twitter.svg +0 -53
  234. package/dist/link/readme.md +0 -51
  235. package/dist/main.d.ts +0 -7
  236. package/dist/new-date/index.d.ts +0 -95
  237. package/dist/number/Number.js +0 -136
  238. package/dist/number/index.d.ts +0 -113
  239. package/dist/paginator/Paginator.js +0 -289
  240. package/dist/paginator/images/next.svg +0 -3
  241. package/dist/paginator/images/nextPage.svg +0 -3
  242. package/dist/paginator/images/previous.svg +0 -3
  243. package/dist/paginator/images/previousPage.svg +0 -3
  244. package/dist/paginator/readme.md +0 -50
  245. package/dist/password/index.d.ts +0 -94
  246. package/dist/password/styles.css +0 -3
  247. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  248. package/dist/progress-bar/readme.md +0 -63
  249. package/dist/radio/Radio.stories.js +0 -166
  250. package/dist/radio/readme.md +0 -70
  251. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  252. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  253. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  254. package/dist/slider/Slider.js +0 -319
  255. package/dist/slider/Slider.stories.js +0 -241
  256. package/dist/slider/readme.md +0 -64
  257. package/dist/spinner/Spinner.js +0 -381
  258. package/dist/spinner/Spinner.stories.js +0 -183
  259. package/dist/spinner/readme.md +0 -65
  260. package/dist/switch/Switch.stories.js +0 -134
  261. package/dist/switch/readme.md +0 -133
  262. package/dist/tabs/Tabs.js +0 -343
  263. package/dist/tabs/Tabs.stories.js +0 -130
  264. package/dist/tabs/readme.md +0 -78
  265. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  266. package/dist/tabs-for-sections/readme.md +0 -78
  267. package/dist/tag/Tag.js +0 -282
  268. package/dist/toggle/Toggle.stories.js +0 -297
  269. package/dist/toggle/readme.md +0 -80
  270. package/dist/toggle-group/ToggleGroup.js +0 -223
  271. package/dist/upload/Upload.stories.js +0 -72
  272. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  273. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  274. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  275. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  276. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  277. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  278. package/dist/upload/file-upload/FileToUpload.js +0 -184
  279. package/dist/upload/file-upload/audio-icon.svg +0 -4
  280. package/dist/upload/file-upload/close.svg +0 -4
  281. package/dist/upload/file-upload/file-icon.svg +0 -4
  282. package/dist/upload/file-upload/video-icon.svg +0 -4
  283. package/dist/upload/readme.md +0 -37
  284. package/dist/upload/transaction/Transaction.js +0 -175
  285. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  286. package/dist/upload/transaction/audio-icon.svg +0 -4
  287. package/dist/upload/transaction/error-icon.svg +0 -4
  288. package/dist/upload/transaction/file-icon-err.svg +0 -4
  289. package/dist/upload/transaction/file-icon.svg +0 -4
  290. package/dist/upload/transaction/image-icon-err.svg +0 -4
  291. package/dist/upload/transaction/image-icon.svg +0 -4
  292. package/dist/upload/transaction/success-icon.svg +0 -4
  293. package/dist/upload/transaction/video-icon-err.svg +0 -4
  294. package/dist/upload/transaction/video-icon.svg +0 -4
  295. package/dist/upload/transactions/Transactions.js +0 -138
  296. package/dist/wizard/invalid_icon.svg +0 -5
  297. package/dist/wizard/valid_icon.svg +0 -5
  298. package/dist/wizard/validation-wrong.svg +0 -6
  299. package/test/Accordion.test.js +0 -33
  300. package/test/AccordionGroup.test.js +0 -125
  301. package/test/Alert.test.js +0 -53
  302. package/test/Box.test.js +0 -10
  303. package/test/Button.test.js +0 -18
  304. package/test/Card.test.js +0 -30
  305. package/test/Checkbox.test.js +0 -45
  306. package/test/Chip.test.js +0 -25
  307. package/test/Date.test.js +0 -393
  308. package/test/Dialog.test.js +0 -23
  309. package/test/Dropdown.test.js +0 -145
  310. package/test/FileInput.test.js +0 -201
  311. package/test/Footer.test.js +0 -99
  312. package/test/Header.test.js +0 -39
  313. package/test/Heading.test.js +0 -35
  314. package/test/InputText.test.js +0 -240
  315. package/test/Link.test.js +0 -43
  316. package/test/NewDate.test.js +0 -232
  317. package/test/NewInputText.test.js +0 -734
  318. package/test/NewTextarea.test.js +0 -195
  319. package/test/Number.test.js +0 -257
  320. package/test/Paginator.test.js +0 -177
  321. package/test/Password.test.js +0 -83
  322. package/test/ProgressBar.test.js +0 -35
  323. package/test/Radio.test.js +0 -37
  324. package/test/ResultsetTable.test.js +0 -329
  325. package/test/Select.test.js +0 -212
  326. package/test/Sidenav.test.js +0 -45
  327. package/test/Slider.test.js +0 -82
  328. package/test/Spinner.test.js +0 -32
  329. package/test/Switch.test.js +0 -45
  330. package/test/Table.test.js +0 -36
  331. package/test/Tabs.test.js +0 -109
  332. package/test/TabsForSections.test.js +0 -34
  333. package/test/Tag.test.js +0 -32
  334. package/test/TextArea.test.js +0 -52
  335. package/test/ToggleGroup.test.js +0 -81
  336. package/test/Upload.test.js +0 -60
  337. package/test/Wizard.test.js +0 -130
  338. package/test/mocks/pngMock.js +0 -1
  339. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,317 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
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 _Slider = _interopRequireDefault(require("@material-ui/lab/Slider"));
21
+
22
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
+
24
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
25
+
26
+ var _variables = require("../common/variables.js");
27
+
28
+ var _utils = require("../common/utils.js");
29
+
30
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
+
32
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
33
+
34
+ var _uuid = require("uuid");
35
+
36
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
37
+
38
+ 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); }
39
+
40
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
41
+
42
+ var DxcSlider = function DxcSlider(_ref) {
43
+ var _ref$label = _ref.label,
44
+ label = _ref$label === void 0 ? "" : _ref$label,
45
+ _ref$name = _ref.name,
46
+ name = _ref$name === void 0 ? "" : _ref$name,
47
+ value = _ref.value,
48
+ _ref$helperText = _ref.helperText,
49
+ helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
50
+ _ref$minValue = _ref.minValue,
51
+ minValue = _ref$minValue === void 0 ? 0 : _ref$minValue,
52
+ _ref$maxValue = _ref.maxValue,
53
+ maxValue = _ref$maxValue === void 0 ? 100 : _ref$maxValue,
54
+ _ref$step = _ref.step,
55
+ step = _ref$step === void 0 ? 1 : _ref$step,
56
+ _ref$showLimitsValues = _ref.showLimitsValues,
57
+ showLimitsValues = _ref$showLimitsValues === void 0 ? false : _ref$showLimitsValues,
58
+ _ref$showInput = _ref.showInput,
59
+ showInput = _ref$showInput === void 0 ? false : _ref$showInput,
60
+ _ref$disabled = _ref.disabled,
61
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
62
+ _ref$marks = _ref.marks,
63
+ marks = _ref$marks === void 0 ? false : _ref$marks,
64
+ onChange = _ref.onChange,
65
+ onDragEnd = _ref.onDragEnd,
66
+ labelFormatCallback = _ref.labelFormatCallback,
67
+ margin = _ref.margin,
68
+ _ref$size = _ref.size,
69
+ size = _ref$size === void 0 ? "fillParent" : _ref$size;
70
+
71
+ var _useState = (0, _react.useState)(0),
72
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
73
+ innerValue = _useState2[0],
74
+ setInnerValue = _useState2[1];
75
+
76
+ var colorsTheme = (0, _useTheme["default"])();
77
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
78
+
79
+ var _useState3 = (0, _react.useState)("label-".concat((0, _uuid.v4)())),
80
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
81
+ labelId = _useState4[0];
82
+
83
+ var minLabel = (0, _react.useMemo)(function () {
84
+ return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
85
+ }, [labelFormatCallback, minValue]);
86
+ var maxLabel = (0, _react.useMemo)(function () {
87
+ return labelFormatCallback ? labelFormatCallback(maxValue) : maxValue;
88
+ }, [labelFormatCallback, maxValue]);
89
+
90
+ var handlerSliderChange = function handlerSliderChange(event, newValue) {
91
+ var valueToCheck = value !== null && value !== void 0 ? value : innerValue;
92
+ valueToCheck !== newValue && setInnerValue(newValue);
93
+ onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
94
+ };
95
+
96
+ var handleSliderOnChangeCommited = function handleSliderOnChangeCommited(event, selectedValue) {
97
+ onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(selectedValue);
98
+ };
99
+
100
+ var handlerInputChange = function handlerInputChange(event) {
101
+ var intValue = parseInt(event.value, 10);
102
+
103
+ if (value == null) {
104
+ if (!Number.isNaN(intValue)) setInnerValue(intValue > maxValue ? maxValue : intValue);
105
+ }
106
+
107
+ if (!Number.isNaN(intValue)) {
108
+ onChange === null || onChange === void 0 ? void 0 : onChange(intValue > maxValue ? maxValue : intValue);
109
+ }
110
+ };
111
+
112
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
113
+ theme: colorsTheme.slider
114
+ }, /*#__PURE__*/_react["default"].createElement(Container, {
115
+ margin: margin,
116
+ size: size
117
+ }, /*#__PURE__*/_react["default"].createElement(Label, {
118
+ id: labelId,
119
+ disabled: disabled,
120
+ backgroundType: backgroundType
121
+ }, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
122
+ disabled: disabled,
123
+ backgroundType: backgroundType
124
+ }, helperText), /*#__PURE__*/_react["default"].createElement(SliderContainer, {
125
+ backgroundType: backgroundType
126
+ }, showLimitsValues && /*#__PURE__*/_react["default"].createElement(MinLabelContainer, {
127
+ backgroundType: backgroundType,
128
+ disabled: disabled
129
+ }, minLabel), /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
130
+ value: value != null && value >= 0 && value || innerValue,
131
+ min: minValue,
132
+ max: maxValue,
133
+ onChange: handlerSliderChange,
134
+ onChangeCommitted: handleSliderOnChangeCommited,
135
+ step: step,
136
+ marks: marks || [],
137
+ disabled: disabled,
138
+ "aria-labelledby": labelId
139
+ }), showLimitsValues && /*#__PURE__*/_react["default"].createElement(MaxLabelContainer, {
140
+ backgroundType: backgroundType,
141
+ disabled: disabled,
142
+ step: step
143
+ }, maxLabel), showInput && /*#__PURE__*/_react["default"].createElement(StyledTextInput, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
144
+ name: name,
145
+ value: value != null && value >= 0 && value || innerValue,
146
+ disabled: disabled,
147
+ onChange: handlerInputChange,
148
+ size: "fillParent"
149
+ })))));
150
+ };
151
+
152
+ var sizes = {
153
+ medium: "360px",
154
+ large: "480px",
155
+ fillParent: "100%"
156
+ };
157
+
158
+ var calculateWidth = function calculateWidth(margin, size) {
159
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
160
+ };
161
+
162
+ var Container = _styledComponents["default"].div(_templateObject || (_templateObject = (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"])), function (props) {
163
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
164
+ }, function (props) {
165
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
166
+ }, function (props) {
167
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
168
+ }, function (props) {
169
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
170
+ }, function (props) {
171
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
172
+ }, function (props) {
173
+ return calculateWidth(props.margin, props.size);
174
+ });
175
+
176
+ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
177
+ return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
178
+ }, function (props) {
179
+ return props.theme.fontFamily;
180
+ }, function (props) {
181
+ return props.theme.labelFontSize;
182
+ }, function (props) {
183
+ return props.theme.labelFontStyle;
184
+ }, function (props) {
185
+ return props.theme.labelFontWeight;
186
+ }, function (props) {
187
+ return props.theme.labelLineHeight;
188
+ });
189
+
190
+ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
191
+ return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
192
+ }, function (props) {
193
+ return props.theme.fontFamily;
194
+ }, function (props) {
195
+ return props.theme.helperTextFontSize;
196
+ }, function (props) {
197
+ return props.theme.helperTextFontStyle;
198
+ }, function (props) {
199
+ return props.theme.helperTextFontWeight;
200
+ }, function (props) {
201
+ return props.theme.helperTextLineHeight;
202
+ });
203
+
204
+ var SliderContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 48px;\n align-items: center;\n\n .MuiSlider-root {\n min-width: 15rem;\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"])), function (props) {
205
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
206
+ }, function (props) {
207
+ return props.theme.thumbHeight;
208
+ }, function (props) {
209
+ return props.theme.thumbWidth;
210
+ }, function (props) {
211
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
212
+ }, function (props) {
213
+ return props.theme.disabledThumbVerticalPosition;
214
+ }, function (props) {
215
+ return props.backgroundType === "dark" ? props.theme.disabledTrackLineColorOnDark : props.theme.disabledTrackLineColor;
216
+ }, function (props) {
217
+ return props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark : props.theme.disabledTotalLineColor;
218
+ }, function (props) {
219
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
220
+ }, function (props) {
221
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
222
+ }, function (props) {
223
+ return props.theme.tickHeight;
224
+ }, function (props) {
225
+ return props.theme.tickWidth;
226
+ }, function (props) {
227
+ return props.theme.disabledTickVerticalPosition;
228
+ }, function (props) {
229
+ return props.theme.thumbHeight;
230
+ }, function (props) {
231
+ return props.theme.thumbWidth;
232
+ }, function (props) {
233
+ return props.backgroundType === "dark" ? props.theme.thumbBackgroundColorOnDark : props.theme.thumbBackgroundColor;
234
+ }, function (props) {
235
+ return props.theme.thumbVerticalPosition;
236
+ }, function (props) {
237
+ return props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
238
+ }, function (props) {
239
+ return props.backgroundType === "dark" ? props.theme.focusThumbBackgroundColorOnDark : props.theme.focusThumbBackgroundColor;
240
+ }, function (props) {
241
+ return props.backgroundType === "dark" ? props.theme.hoverThumbBackgroundColorOnDark : props.theme.hoverThumbBackgroundColor;
242
+ }, function (props) {
243
+ return props.theme.hoverThumbScale;
244
+ }, function (props) {
245
+ return props.theme.hoverThumbHeight;
246
+ }, function (props) {
247
+ return props.theme.hoverThumbWidth;
248
+ }, function (props) {
249
+ return props.theme.hoverThumbVerticalPosition;
250
+ }, function (props) {
251
+ return props.backgroundType === "dark" ? props.theme.activeThumbBackgroundColorOnDark : props.theme.activeThumbBackgroundColor;
252
+ }, function (props) {
253
+ return props.theme.activeThumbScale;
254
+ }, function (props) {
255
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
256
+ }, function (props) {
257
+ return props.theme.trackLineThickness;
258
+ }, function (props) {
259
+ return props.theme.trackLineVerticalPosition;
260
+ }, function (props) {
261
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
262
+ }, function (props) {
263
+ return props.backgroundType === "dark" ? props.theme.totalLineColorOnDark : props.theme.totalLineColor;
264
+ }, function (props) {
265
+ return props.theme.totalLineThickness;
266
+ }, function (props) {
267
+ return props.theme.totalLineVerticalPosition;
268
+ }, function (props) {
269
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
270
+ }, function (props) {
271
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
272
+ }, function (props) {
273
+ return props.theme.tickHeight;
274
+ }, function (props) {
275
+ return props.theme.tickWidth;
276
+ }, function (props) {
277
+ return props.theme.tickVerticalPosition;
278
+ });
279
+
280
+ var MinLabelContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n white-space: nowrap;\n margin-right: ", ";\n"])), function (props) {
281
+ return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
282
+ }, function (props) {
283
+ return props.theme.fontFamily;
284
+ }, function (props) {
285
+ return props.theme.limitValuesFontSize;
286
+ }, function (props) {
287
+ return props.theme.limitValuesFontStyle;
288
+ }, function (props) {
289
+ return props.theme.limitValuesFontWeight;
290
+ }, function (props) {
291
+ return props.theme.limitValuesFontLetterSpacing;
292
+ }, function (props) {
293
+ return props.theme.floorLabelMarginRight;
294
+ });
295
+
296
+ var MaxLabelContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n white-space: nowrap;\n margin-left: ", ";\n"])), function (props) {
297
+ return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
298
+ }, function (props) {
299
+ return props.theme.fontFamily;
300
+ }, function (props) {
301
+ return props.theme.limitValuesFontSize;
302
+ }, function (props) {
303
+ return props.theme.limitValuesFontStyle;
304
+ }, function (props) {
305
+ return props.theme.limitValuesFontWeight;
306
+ }, function (props) {
307
+ return props.theme.limitValuesFontLetterSpacing;
308
+ }, function (props) {
309
+ return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
310
+ });
311
+
312
+ var StyledTextInput = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n label + .MuiInput-formControl {\n margin-top: 2px;\n }\n max-width: 70px;\n"])), function (props) {
313
+ return props.theme.inputMarginLeft;
314
+ });
315
+
316
+ var _default = DxcSlider;
317
+ exports["default"] = _default;
@@ -0,0 +1,177 @@
1
+ import React from "react";
2
+ import DxcSlider from "./Slider";
3
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import DarkContainer from "../../.storybook/components/DarkSection";
7
+
8
+ export default {
9
+ title: "Slider",
10
+ component: DxcSlider,
11
+ };
12
+
13
+ const labelFormat = (value) => `${value}E100000000000000000000000`;
14
+
15
+ export const Chromatic = () => (
16
+ <>
17
+ <Title title="States" theme="light" level={2} />
18
+ <ExampleContainer pseudoState="pseudo-hover">
19
+ <Title title="Hovered" theme="light" level={4} />
20
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
21
+ </ExampleContainer>
22
+ <ExampleContainer pseudoState="pseudo-active">
23
+ <Title title="Active" theme="light" level={4} />
24
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
25
+ </ExampleContainer>
26
+ <ExampleContainer pseudoState="pseudo-focus">
27
+ <Title title="Focused" theme="light" level={4} />
28
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
29
+ </ExampleContainer>
30
+ <ExampleContainer>
31
+ <Title title="Disabled" theme="light" level={4} />
32
+ <DxcSlider label="Slider" helperText="Help message" disabled showLimitsValues />
33
+ </ExampleContainer>
34
+ <ExampleContainer>
35
+ <Title title="Disabled discrete slider with input" theme="light" level={4} />
36
+ <DxcSlider
37
+ label="Slider"
38
+ helperText="Help message"
39
+ disabled
40
+ value={40}
41
+ minValue={0}
42
+ maxValue={50}
43
+ showLimitsValues
44
+ showInput
45
+ marks
46
+ step={10}
47
+ />
48
+ </ExampleContainer>
49
+ <Title title="Variants" theme="light" level={2} />
50
+ <ExampleContainer>
51
+ <Title title="Continuous slider" theme="light" level={4} />
52
+ <DxcSlider value={65} label="Slider" helperText="Help message" showLimitsValues />
53
+ </ExampleContainer>
54
+ <ExampleContainer>
55
+ <Title title="Discrete slider" theme="light" level={4} />
56
+ <DxcSlider value={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
57
+ </ExampleContainer>
58
+ <ExampleContainer>
59
+ <Title title="Discrete slider with input" theme="light" level={4} />
60
+ <DxcSlider
61
+ value={20}
62
+ minValue={0}
63
+ maxValue={50}
64
+ label="Slider"
65
+ helperText="Help message"
66
+ showLimitsValues
67
+ showInput
68
+ marks
69
+ step={10}
70
+ />
71
+ </ExampleContainer>
72
+ <BackgroundColorProvider color="#333333">
73
+ <DarkContainer>
74
+ <Title title="Dark" theme="dark" level={2} />
75
+ <ExampleContainer pseudoState="pseudo-hover">
76
+ <Title title="Hovered" theme="dark" level={4} />
77
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
78
+ </ExampleContainer>
79
+ <ExampleContainer pseudoState="pseudo-active">
80
+ <Title title="Active" theme="dark" level={4} />
81
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
82
+ </ExampleContainer>
83
+ <ExampleContainer pseudoState="pseudo-focus">
84
+ <Title title="Focused" theme="dark" level={4} />
85
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
86
+ </ExampleContainer>
87
+ <ExampleContainer>
88
+ <Title title="Disabled" theme="dark" level={4} />
89
+ <DxcSlider label="Slider" helperText="Help message" disabled showLimitsValues />
90
+ </ExampleContainer>
91
+ <ExampleContainer>
92
+ <Title title="Disabled discrete slider with input" theme="dark" level={4} />
93
+ <DxcSlider
94
+ label="Slider"
95
+ helperText="Help message"
96
+ disabled
97
+ value={40}
98
+ minValue={0}
99
+ maxValue={50}
100
+ showLimitsValues
101
+ showInput
102
+ marks
103
+ step={5}
104
+ />
105
+ </ExampleContainer>
106
+ <ExampleContainer>
107
+ <Title title="Continuous slider" theme="dark" level={4} />
108
+ <DxcSlider value={65} label="Slider" helperText="Help message" showLimitsValues />
109
+ </ExampleContainer>
110
+ <ExampleContainer>
111
+ <Title title="Discrete slider" theme="dark" level={4} />
112
+ <DxcSlider value={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
113
+ </ExampleContainer>
114
+ <ExampleContainer>
115
+ <Title title="Discrete slider with input" theme="dark" level={4} />
116
+ <DxcSlider
117
+ value={20}
118
+ minValue={0}
119
+ maxValue={50}
120
+ label="Slider"
121
+ helperText="Help message"
122
+ showLimitsValues
123
+ showInput
124
+ marks
125
+ step={10}
126
+ />
127
+ </ExampleContainer>
128
+ </DarkContainer>
129
+ </BackgroundColorProvider>
130
+ <Title title="Margins" theme="light" level={2} />
131
+ <ExampleContainer>
132
+ <Title title="Xxsmall" theme="light" level={4} />
133
+ <DxcSlider label="Xxsmall" margin="xxsmall" />
134
+ </ExampleContainer>
135
+ <ExampleContainer>
136
+ <Title title="Xsmall" theme="light" level={4} />
137
+ <DxcSlider label="Xsmall" margin="xsmall" />
138
+ </ExampleContainer>
139
+ <ExampleContainer>
140
+ <Title title="Small" theme="light" level={4} />
141
+ <DxcSlider label="Small" margin="small" />
142
+ </ExampleContainer>
143
+ <ExampleContainer>
144
+ <Title title="Medium" theme="light" level={4} />
145
+ <DxcSlider label="Medium" margin="medium" />
146
+ </ExampleContainer>
147
+ <ExampleContainer>
148
+ <Title title="Large" theme="light" level={4} />
149
+ <DxcSlider label="Large" margin="large" />
150
+ </ExampleContainer>
151
+ <ExampleContainer>
152
+ <Title title="Xlarge" theme="light" level={4} />
153
+ <DxcSlider label="Xlarge" margin="xlarge" />
154
+ </ExampleContainer>
155
+ <ExampleContainer>
156
+ <Title title="Xxlarge" theme="light" level={4} />
157
+ <DxcSlider label="Xxlarge" margin="xxlarge" />
158
+ </ExampleContainer>
159
+ <Title title="Sizes" theme="light" level={2} />
160
+ <ExampleContainer>
161
+ <Title title="Medium" theme="light" level={4} />
162
+ <DxcSlider label="Medium" size="medium" />
163
+ </ExampleContainer>
164
+ <ExampleContainer>
165
+ <Title title="Large" theme="light" level={4} />
166
+ <DxcSlider label="Large" size="large" />
167
+ </ExampleContainer>
168
+ <ExampleContainer>
169
+ <Title title="FillParent" theme="light" level={4} />
170
+ <DxcSlider label="FillParent" size="fillParent" />
171
+ </ExampleContainer>
172
+ <ExampleContainer>
173
+ <Title title="Large limit values labels" theme="light" level={4} />
174
+ <DxcSlider label="Slider" helperText="Help message" showLimitsValues labelFormatCallback={labelFormat} size="large" />
175
+ </ExampleContainer>
176
+ </>
177
+ );
@@ -0,0 +1,78 @@
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ declare type Props = {
9
+ /**
10
+ * Text to be placed above the slider.
11
+ */
12
+ label?: string;
13
+ /**
14
+ * Name attribute of the input element.
15
+ */
16
+ name?: string;
17
+ /**
18
+ * The selected value. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
19
+ */
20
+ value?: number;
21
+ /**
22
+ * Helper text to be placed above the slider.
23
+ */
24
+ helperText?: string;
25
+ /**
26
+ * The minimum value available for selection.
27
+ */
28
+ minValue?: number;
29
+ /**
30
+ * The maximum value available for selection.
31
+ */
32
+ maxValue?: number;
33
+ /**
34
+ * The step interval between values available for selection.
35
+ */
36
+ step?: number;
37
+ /**
38
+ * Whether the min/max value labels should be displayed next to the slider
39
+ */
40
+ showLimitsValues?: boolean;
41
+ /**
42
+ * Whether the input element for displaying/controlling the slider value should be displayed next to the slider.
43
+ */
44
+ showInput?: boolean;
45
+ /**
46
+ * If true, the component will be disabled.
47
+ */
48
+ disabled?: boolean;
49
+ /**
50
+ * Whether the marks between each step should be shown or not.
51
+ */
52
+ marks?: boolean;
53
+ /**
54
+ * This function will be called when the slider changes its value, as it's being dragged.
55
+ * The new value will be passed as a parameter when this function is executed.
56
+ */
57
+ onChange?: (value: number) => void;
58
+ /**
59
+ * This function will be called when the slider changes its value, but only when the thumb is released.
60
+ * The new value will be passed as a parameter when this function is executed.
61
+ */
62
+ onDragEnd?: (value: number) => void;
63
+ /**
64
+ * This function will be used to format the labels displayed next to the slider.
65
+ * The value will be passed as parameter and the function must return the formatted value.
66
+ */
67
+ labelFormatCallback?: (value: number) => string;
68
+ /**
69
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
70
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
71
+ */
72
+ margin?: Space | Margin;
73
+ /**
74
+ * Size of the component.
75
+ */
76
+ size?: "medium" | "large" | "fillParent";
77
+ };
78
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import SpinnerPropsType from "./types";
3
+ declare const DxcSpinner: ({ label, value, showValue, mode, margin, }: SpinnerPropsType) => JSX.Element;
4
+ export default DxcSpinner;