@dxc-technology/halstack-react 0.0.0-d5ae9d7 → 0.0.0-d618bea

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 (216) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -3
  3. package/ThemeContext.d.ts +15 -0
  4. package/ThemeContext.js +5 -8
  5. package/V3Select/V3Select.js +2 -2
  6. package/V3Textarea/V3Textarea.js +2 -2
  7. package/accordion/Accordion.d.ts +2 -2
  8. package/accordion/Accordion.js +2 -2
  9. package/accordion/types.d.ts +1 -1
  10. package/accordion-group/AccordionGroup.d.ts +7 -0
  11. package/accordion-group/AccordionGroup.js +59 -73
  12. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.js +2 -2
  16. package/alert/Alert.stories.tsx +170 -0
  17. package/alert/types.d.ts +1 -1
  18. package/badge/Badge.js +1 -1
  19. package/box/Box.d.ts +4 -0
  20. package/box/Box.js +6 -32
  21. package/box/Box.stories.tsx +132 -0
  22. package/box/types.d.ts +43 -0
  23. package/box/types.js +5 -0
  24. package/button/Button.d.ts +1 -1
  25. package/button/Button.js +9 -12
  26. package/button/Button.stories.tsx +217 -234
  27. package/button/types.d.ts +11 -11
  28. package/card/Card.d.ts +4 -0
  29. package/card/Card.js +17 -53
  30. package/card/Card.stories.tsx +201 -0
  31. package/card/ice-cream.jpg +0 -0
  32. package/card/types.d.ts +67 -0
  33. package/card/types.js +5 -0
  34. package/checkbox/Checkbox.js +2 -2
  35. package/checkbox/Checkbox.stories.tsx +192 -0
  36. package/checkbox/types.d.ts +3 -4
  37. package/chip/Chip.d.ts +4 -0
  38. package/chip/Chip.js +1 -23
  39. package/chip/Chip.stories.tsx +121 -0
  40. package/chip/types.d.ts +53 -0
  41. package/chip/types.js +5 -0
  42. package/common/variables.js +45 -38
  43. package/date/Date.js +1 -1
  44. package/date-input/DateInput.js +4 -7
  45. package/date-input/DateInput.stories.tsx +138 -0
  46. package/dialog/Dialog.d.ts +4 -0
  47. package/dialog/Dialog.js +6 -25
  48. package/dialog/Dialog.stories.tsx +212 -0
  49. package/dialog/types.d.ts +43 -0
  50. package/dialog/types.js +5 -0
  51. package/dropdown/Dropdown.d.ts +4 -0
  52. package/dropdown/Dropdown.js +8 -41
  53. package/dropdown/types.d.ts +89 -0
  54. package/dropdown/types.js +5 -0
  55. package/file-input/FileInput.d.ts +4 -0
  56. package/file-input/FileInput.js +65 -76
  57. package/file-input/FileItem.d.ts +14 -0
  58. package/file-input/FileItem.js +12 -21
  59. package/file-input/types.d.ts +112 -0
  60. package/file-input/types.js +5 -0
  61. package/footer/Footer.d.ts +4 -0
  62. package/footer/Footer.js +11 -42
  63. package/footer/Footer.stories.tsx +151 -0
  64. package/footer/types.d.ts +65 -0
  65. package/footer/types.js +5 -0
  66. package/header/Header.d.ts +7 -0
  67. package/header/Header.js +28 -30
  68. package/header/Header.stories.tsx +162 -0
  69. package/header/Icons.js +2 -27
  70. package/header/types.d.ts +47 -0
  71. package/header/types.js +5 -0
  72. package/heading/Heading.d.ts +4 -0
  73. package/heading/Heading.js +7 -24
  74. package/heading/Heading.stories.tsx +53 -0
  75. package/heading/types.d.ts +33 -0
  76. package/heading/types.js +5 -0
  77. package/input-text/InputText.js +2 -2
  78. package/layout/ApplicationLayout.d.ts +10 -0
  79. package/layout/ApplicationLayout.js +8 -18
  80. package/layout/ApplicationLayout.stories.tsx +171 -0
  81. package/layout/types.d.ts +57 -0
  82. package/layout/types.js +5 -0
  83. package/link/Link.d.ts +3 -0
  84. package/link/Link.js +4 -26
  85. package/link/Link.stories.tsx +146 -0
  86. package/link/types.d.ts +74 -0
  87. package/link/types.js +5 -0
  88. package/list/List.d.ts +7 -0
  89. package/list/List.js +37 -0
  90. package/list/List.stories.tsx +70 -0
  91. package/main.d.ts +7 -3
  92. package/main.js +34 -2
  93. package/number-input/NumberInput.d.ts +4 -0
  94. package/number-input/NumberInput.js +5 -50
  95. package/number-input/NumberInput.stories.tsx +115 -0
  96. package/number-input/NumberInputContext.d.ts +4 -0
  97. package/number-input/NumberInputContext.js +5 -2
  98. package/number-input/numberInputContextTypes.d.ts +19 -0
  99. package/number-input/numberInputContextTypes.js +5 -0
  100. package/number-input/types.d.ts +117 -0
  101. package/number-input/types.js +5 -0
  102. package/package.json +1 -1
  103. package/paginator/Paginator.js +2 -8
  104. package/paginator/Paginator.stories.tsx +63 -0
  105. package/password-input/PasswordInput.d.ts +4 -0
  106. package/password-input/PasswordInput.js +19 -55
  107. package/password-input/{PasswordInput.stories.jsx → PasswordInput.stories.tsx} +1 -1
  108. package/password-input/types.d.ts +107 -0
  109. package/password-input/types.js +5 -0
  110. package/progress-bar/ProgressBar.d.ts +4 -0
  111. package/progress-bar/ProgressBar.js +5 -23
  112. package/progress-bar/ProgressBar.stories.jsx +58 -0
  113. package/progress-bar/types.d.ts +37 -0
  114. package/progress-bar/types.js +5 -0
  115. package/radio/Radio.js +2 -2
  116. package/radio/Radio.stories.tsx +192 -0
  117. package/radio/types.d.ts +2 -2
  118. package/resultsetTable/ResultsetTable.d.ts +4 -0
  119. package/resultsetTable/ResultsetTable.js +4 -27
  120. package/resultsetTable/types.d.ts +67 -0
  121. package/resultsetTable/types.js +5 -0
  122. package/row/Row.d.ts +11 -0
  123. package/row/Row.js +124 -0
  124. package/row/Row.stories.tsx +223 -0
  125. package/select/Select.js +15 -17
  126. package/select/Select.stories.tsx +572 -0
  127. package/select/index.d.ts +4 -4
  128. package/sidenav/Sidenav.d.ts +9 -0
  129. package/sidenav/Sidenav.js +6 -15
  130. package/sidenav/Sidenav.stories.tsx +165 -0
  131. package/sidenav/types.d.ts +50 -0
  132. package/sidenav/types.js +5 -0
  133. package/slider/Slider.d.ts +4 -0
  134. package/slider/Slider.js +61 -84
  135. package/slider/Slider.stories.tsx +177 -0
  136. package/slider/types.d.ts +78 -0
  137. package/slider/types.js +5 -0
  138. package/spinner/Spinner.d.ts +4 -0
  139. package/spinner/Spinner.js +8 -25
  140. package/spinner/Spinner.stories.jsx +102 -0
  141. package/spinner/types.d.ts +32 -0
  142. package/spinner/types.js +5 -0
  143. package/stack/Stack.d.ts +10 -0
  144. package/stack/Stack.js +94 -0
  145. package/stack/Stack.stories.tsx +150 -0
  146. package/switch/Switch.js +4 -4
  147. package/switch/Switch.stories.tsx +160 -0
  148. package/table/Table.d.ts +4 -0
  149. package/table/Table.js +3 -3
  150. package/table/Table.stories.jsx +276 -0
  151. package/table/types.d.ts +21 -0
  152. package/table/types.js +5 -0
  153. package/tabs/Tabs.d.ts +4 -0
  154. package/tabs/Tabs.js +9 -55
  155. package/tabs/Tabs.stories.tsx +121 -0
  156. package/tabs/types.d.ts +70 -0
  157. package/tabs/types.js +5 -0
  158. package/tag/Tag.d.ts +4 -0
  159. package/tag/Tag.js +21 -36
  160. package/tag/Tag.stories.tsx +145 -0
  161. package/tag/types.d.ts +60 -0
  162. package/tag/types.js +5 -0
  163. package/text/Text.d.ts +7 -0
  164. package/text/Text.js +30 -0
  165. package/text/Text.stories.tsx +19 -0
  166. package/text-input/TextInput.d.ts +4 -0
  167. package/text-input/TextInput.js +42 -81
  168. package/text-input/TextInput.stories.tsx +456 -0
  169. package/text-input/types.d.ts +159 -0
  170. package/text-input/types.js +5 -0
  171. package/textarea/Textarea.js +29 -32
  172. package/textarea/Textarea.stories.jsx +135 -0
  173. package/textarea/index.d.ts +18 -8
  174. package/toggle/Toggle.js +1 -1
  175. package/toggle-group/ToggleGroup.d.ts +4 -0
  176. package/toggle-group/ToggleGroup.js +8 -34
  177. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  178. package/toggle-group/types.d.ts +84 -0
  179. package/toggle-group/types.js +5 -0
  180. package/upload/buttons-upload/ButtonsUpload.js +2 -2
  181. package/upload/dragAndDropArea/DragAndDropArea.js +2 -2
  182. package/upload/file-upload/FileToUpload.js +1 -1
  183. package/upload/files-upload/FilesToUpload.js +1 -1
  184. package/upload/transaction/Transaction.js +2 -2
  185. package/upload/transactions/Transactions.js +1 -1
  186. package/useTheme.d.ts +2 -0
  187. package/useTheme.js +1 -1
  188. package/wizard/Wizard.d.ts +4 -0
  189. package/wizard/Wizard.js +13 -53
  190. package/wizard/Wizard.stories.jsx +224 -0
  191. package/wizard/types.d.ts +64 -0
  192. package/wizard/types.js +5 -0
  193. package/accordion-group/index.d.ts +0 -16
  194. package/box/index.d.ts +0 -25
  195. package/card/index.d.ts +0 -22
  196. package/chip/index.d.ts +0 -22
  197. package/dialog/index.d.ts +0 -18
  198. package/dropdown/index.d.ts +0 -26
  199. package/file-input/index.d.ts +0 -81
  200. package/footer/index.d.ts +0 -25
  201. package/header/index.d.ts +0 -25
  202. package/heading/index.d.ts +0 -17
  203. package/link/index.d.ts +0 -23
  204. package/number-input/index.d.ts +0 -113
  205. package/password-input/index.d.ts +0 -94
  206. package/progress-bar/index.d.ts +0 -18
  207. package/resultsetTable/index.d.ts +0 -19
  208. package/sidenav/index.d.ts +0 -13
  209. package/slider/index.d.ts +0 -29
  210. package/spinner/index.d.ts +0 -17
  211. package/table/index.d.ts +0 -13
  212. package/tabs/index.d.ts +0 -19
  213. package/tag/index.d.ts +0 -24
  214. package/text-input/index.d.ts +0 -135
  215. package/toggle-group/index.d.ts +0 -21
  216. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,165 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import DxcSidenav from "./Sidenav";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+
7
+ export default {
8
+ title: "Sidenav",
9
+ component: DxcSidenav,
10
+ };
11
+
12
+ const linkClick = () => {
13
+ console.log("click");
14
+ };
15
+
16
+ const StyledContainer = styled["div"]`
17
+ display: flex;
18
+ flex-direction: row;
19
+ height: 500px;
20
+ `;
21
+
22
+ export const Chromatic = () => (
23
+ <>
24
+ <ExampleContainer>
25
+ <Title title="Deafult sidenav" theme="light" level={4} />
26
+ <DxcSidenav>
27
+ {" "}
28
+ <p>Lorem ipsum</p>
29
+ <p>Lorem ipsum</p>
30
+ <p>Lorem ipsum</p>
31
+ <p>Lorem ipsum</p>
32
+ <p>Lorem ipsum</p>{" "}
33
+ </DxcSidenav>
34
+ </ExampleContainer>
35
+
36
+ <ExampleContainer>
37
+ <Title title="Sidenav with xxsmall padding" theme="light" level={4} />
38
+ <DxcSidenav padding="xxsmall">
39
+ {" "}
40
+ <p>Lorem ipsum</p>
41
+ <p>Lorem ipsum</p>
42
+ <p>Lorem ipsum</p>
43
+ <p>Lorem ipsum</p>
44
+ <p>Lorem ipsum</p>{" "}
45
+ </DxcSidenav>
46
+ </ExampleContainer>
47
+
48
+ <ExampleContainer>
49
+ <Title title="Sidenav with xsmall padding" theme="light" level={4} />
50
+ <DxcSidenav padding="xsmall">
51
+ {" "}
52
+ <p>Lorem ipsum</p>
53
+ <p>Lorem ipsum</p>
54
+ <p>Lorem ipsum</p>
55
+ <p>Lorem ipsum</p>
56
+ <p>Lorem ipsum</p>{" "}
57
+ </DxcSidenav>
58
+ </ExampleContainer>
59
+
60
+ <ExampleContainer>
61
+ <Title title="Sidenav with small padding" theme="light" level={4} />
62
+ <DxcSidenav padding="small">
63
+ {" "}
64
+ <p>Lorem ipsum</p>
65
+ <p>Lorem ipsum</p>
66
+ <p>Lorem ipsum</p>
67
+ <p>Lorem ipsum</p>
68
+ <p>Lorem ipsum</p>{" "}
69
+ </DxcSidenav>
70
+ </ExampleContainer>
71
+
72
+ <ExampleContainer>
73
+ <Title title="Sidenav with medium padding" theme="light" level={4} />
74
+ <DxcSidenav padding="medium">
75
+ {" "}
76
+ <p>Lorem ipsum</p>
77
+ <p>Lorem ipsum</p>
78
+ <p>Lorem ipsum</p>
79
+ <p>Lorem ipsum</p>
80
+ <p>Lorem ipsum</p>{" "}
81
+ </DxcSidenav>
82
+ </ExampleContainer>
83
+
84
+ <ExampleContainer>
85
+ <Title title="Sidenav with large padding" theme="light" level={4} />
86
+ <DxcSidenav padding="large">
87
+ {" "}
88
+ <p>Lorem ipsum</p>
89
+ <p>Lorem ipsum</p>
90
+ <p>Lorem ipsum</p>
91
+ <p>Lorem ipsum</p>
92
+ <p>Lorem ipsum</p>{" "}
93
+ </DxcSidenav>
94
+ </ExampleContainer>
95
+
96
+ <ExampleContainer>
97
+ <Title title="Sidenav with xlarge padding" theme="light" level={4} />
98
+ <DxcSidenav padding="xlarge">
99
+ {" "}
100
+ <p>Lorem ipsum</p>
101
+ <p>Lorem ipsum</p>
102
+ <p>Lorem ipsum</p>
103
+ <p>Lorem ipsum</p>
104
+ <p>Lorem ipsum</p>{" "}
105
+ </DxcSidenav>
106
+ </ExampleContainer>
107
+
108
+ <ExampleContainer>
109
+ <Title title="Sidenav with xxlarge padding" theme="light" level={4} />
110
+ <DxcSidenav padding="xxlarge">
111
+ {" "}
112
+ <p>Lorem ipsum</p>
113
+ <p>Lorem ipsum</p>
114
+ <p>Lorem ipsum</p>
115
+ <p>Lorem ipsum</p>
116
+ <p>Lorem ipsum</p>{" "}
117
+ </DxcSidenav>
118
+ </ExampleContainer>
119
+
120
+ <ExampleContainer>
121
+ <Title title="Sidenav compound components" theme="light" level={4} />
122
+ <DxcSidenav>
123
+ <DxcSidenav.Title>My sidenav</DxcSidenav.Title>
124
+ <DxcSidenav.Subtitle>Components</DxcSidenav.Subtitle>
125
+ <DxcSidenav.Link href="#">Button</DxcSidenav.Link>
126
+ <DxcSidenav.Link href="#">Date</DxcSidenav.Link>
127
+ <DxcSidenav.Subtitle>Guidelines</DxcSidenav.Subtitle>
128
+ <DxcSidenav.Link onClick={linkClick}>Layout</DxcSidenav.Link>
129
+ <DxcSidenav.Link onClick={linkClick}>Footer</DxcSidenav.Link>
130
+ </DxcSidenav>
131
+ </ExampleContainer>
132
+
133
+ <ExampleContainer>
134
+ <Title title="Sidenav with scroll" theme="light" level={4} />
135
+ <StyledContainer>
136
+ <DxcSidenav>
137
+ <p>
138
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
139
+ placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
140
+ elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
141
+ tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
142
+ eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue
143
+ gravida enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare,
144
+ malesuada urna eu, fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam
145
+ sit amet maximus augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo.
146
+ Praesent quis nunc dignissim, pharetra neque molestie, molestie lectus.
147
+ </p>
148
+ </DxcSidenav>
149
+ </StyledContainer>
150
+ </ExampleContainer>
151
+
152
+ <ExampleContainer pseudoState="pseudo-focus-visible">
153
+ <Title title="Focused" theme="light" level={4} />
154
+ <DxcSidenav>
155
+ <DxcSidenav.Title>My sidenav</DxcSidenav.Title>
156
+ <DxcSidenav.Subtitle>Components</DxcSidenav.Subtitle>
157
+ <DxcSidenav.Link href="#">Button</DxcSidenav.Link>
158
+ <DxcSidenav.Link href="#">Date</DxcSidenav.Link>
159
+ <DxcSidenav.Subtitle>Guidelines</DxcSidenav.Subtitle>
160
+ <DxcSidenav.Link onClick={linkClick}>Layout</DxcSidenav.Link>
161
+ <DxcSidenav.Link onClick={linkClick}>Footer</DxcSidenav.Link>
162
+ </DxcSidenav>
163
+ </ExampleContainer>
164
+ </>
165
+ );
@@ -0,0 +1,50 @@
1
+ /// <reference types="react" />
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Padding = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ export declare type SidenavLinkPropsType = {
10
+ /**
11
+ * Value of the tabindex.
12
+ */
13
+ tabIndex?: number;
14
+ /**
15
+ * Page to be opened when the user clicks on the link.
16
+ */
17
+ href?: string;
18
+ /**
19
+ * This function will be called when the user clicks the link.
20
+ */
21
+ onClick?: () => void;
22
+ /**
23
+ * The area inside the sidenav link. This area can be used to render custom content.
24
+ */
25
+ children: React.ReactNode;
26
+ };
27
+ export declare type SidenavTitlePropsType = {
28
+ /**
29
+ * The area inside the sidenav title. This area can be used to render custom content.
30
+ */
31
+ children: React.ReactNode;
32
+ };
33
+ export declare type SidenavSubtitlePropsType = {
34
+ /**
35
+ * The area inside the sidenav subtitle. This area can be used to render custom content.
36
+ */
37
+ children: React.ReactNode;
38
+ };
39
+ declare type SidenavPropsType = {
40
+ /**
41
+ * Size of the padding to be applied to the custom area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
42
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
43
+ */
44
+ padding?: Space | Padding;
45
+ /**
46
+ * The area inside the sidenav. This area can be used to render custom content.
47
+ */
48
+ children: React.ReactNode;
49
+ };
50
+ export default SidenavPropsType;
@@ -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 SliderPropsType from "./types";
3
+ declare const DxcSlider: ({ label, name, value, helperText, minValue, maxValue, step, showLimitsValues, showInput, disabled, marks, onChange, onDragEnd, labelFormatCallback, margin, size, }: SliderPropsType) => JSX.Element;
4
+ export default DxcSlider;
package/slider/Slider.js CHANGED
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
13
 
16
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
@@ -23,17 +21,17 @@ var _Slider = _interopRequireDefault(require("@material-ui/lab/Slider"));
23
21
 
24
22
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
23
 
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
24
  var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
29
25
 
30
26
  var _variables = require("../common/variables.js");
31
27
 
32
28
  var _utils = require("../common/utils.js");
33
29
 
34
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
30
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
35
31
 
36
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
32
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
+
34
+ var _uuid = require("uuid");
37
35
 
38
36
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
39
37
 
@@ -42,26 +40,29 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
42
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; }
43
41
 
44
42
  var DxcSlider = function DxcSlider(_ref) {
45
- var label = _ref.label,
46
- helperText = _ref.helperText,
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,
47
50
  _ref$minValue = _ref.minValue,
48
51
  minValue = _ref$minValue === void 0 ? 0 : _ref$minValue,
49
52
  _ref$maxValue = _ref.maxValue,
50
53
  maxValue = _ref$maxValue === void 0 ? 100 : _ref$maxValue,
51
54
  _ref$step = _ref.step,
52
55
  step = _ref$step === void 0 ? 1 : _ref$step,
53
- value = _ref.value,
54
56
  _ref$showLimitsValues = _ref.showLimitsValues,
55
57
  showLimitsValues = _ref$showLimitsValues === void 0 ? false : _ref$showLimitsValues,
56
58
  _ref$showInput = _ref.showInput,
57
59
  showInput = _ref$showInput === void 0 ? false : _ref$showInput,
58
- name = _ref.name,
59
- onChange = _ref.onChange,
60
- onDragEnd = _ref.onDragEnd,
61
60
  _ref$disabled = _ref.disabled,
62
61
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
63
62
  _ref$marks = _ref.marks,
64
63
  marks = _ref$marks === void 0 ? false : _ref$marks,
64
+ onChange = _ref.onChange,
65
+ onDragEnd = _ref.onDragEnd,
65
66
  labelFormatCallback = _ref.labelFormatCallback,
66
67
  margin = _ref.margin,
67
68
  _ref$size = _ref.size,
@@ -74,6 +75,11 @@ var DxcSlider = function DxcSlider(_ref) {
74
75
 
75
76
  var colorsTheme = (0, _useTheme["default"])();
76
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
+
77
83
  var minLabel = (0, _react.useMemo)(function () {
78
84
  return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
79
85
  }, [labelFormatCallback, minValue]);
@@ -82,36 +88,24 @@ var DxcSlider = function DxcSlider(_ref) {
82
88
  }, [labelFormatCallback, maxValue]);
83
89
 
84
90
  var handlerSliderChange = function handlerSliderChange(event, newValue) {
85
- if (value == null) {
86
- var valueToCheck = value !== undefined ? value : innerValue;
87
-
88
- if (valueToCheck !== newValue) {
89
- setInnerValue(newValue);
90
- }
91
- }
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
+ };
92
95
 
93
- if (typeof onChange === "function") {
94
- onChange(newValue);
95
- }
96
+ var handleSliderOnChangeCommited = function handleSliderOnChangeCommited(event, selectedValue) {
97
+ onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(selectedValue);
96
98
  };
97
99
 
98
100
  var handlerInputChange = function handlerInputChange(event) {
99
101
  var intValue = parseInt(event.value, 10);
100
102
 
101
103
  if (value == null) {
102
- if (!Number.isNaN(intValue)) {
103
- setInnerValue(intValue > maxValue ? maxValue : intValue);
104
- } else {
105
- setInnerValue("");
106
- }
104
+ if (!Number.isNaN(intValue)) setInnerValue(intValue > maxValue ? maxValue : intValue);
107
105
  }
108
106
 
109
- if (typeof onChange === "function") {
110
- if (!Number.isNaN(intValue)) {
111
- onChange(intValue > maxValue ? maxValue : intValue);
112
- } else {
113
- onChange("");
114
- }
107
+ if (!Number.isNaN(intValue)) {
108
+ onChange === null || onChange === void 0 ? void 0 : onChange(intValue > maxValue ? maxValue : intValue);
115
109
  }
116
110
  };
117
111
 
@@ -120,7 +114,14 @@ var DxcSlider = function DxcSlider(_ref) {
120
114
  }, /*#__PURE__*/_react["default"].createElement(Container, {
121
115
  margin: margin,
122
116
  size: size
123
- }, /*#__PURE__*/_react["default"].createElement(Label, null, label), /*#__PURE__*/_react["default"].createElement(HelperText, null, helperText), /*#__PURE__*/_react["default"].createElement(SliderContainer, {
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, {
124
125
  backgroundType: backgroundType
125
126
  }, showLimitsValues && /*#__PURE__*/_react["default"].createElement(MinLabelContainer, {
126
127
  backgroundType: backgroundType,
@@ -130,19 +131,18 @@ var DxcSlider = function DxcSlider(_ref) {
130
131
  min: minValue,
131
132
  max: maxValue,
132
133
  onChange: handlerSliderChange,
133
- onChangeCommitted: onDragEnd && function (event, selectedValue) {
134
- return onDragEnd(selectedValue);
135
- },
134
+ onChangeCommitted: handleSliderOnChangeCommited,
136
135
  step: step,
137
136
  marks: marks || [],
138
- disabled: disabled
137
+ disabled: disabled,
138
+ "aria-labelledby": labelId
139
139
  }), showLimitsValues && /*#__PURE__*/_react["default"].createElement(MaxLabelContainer, {
140
140
  backgroundType: backgroundType,
141
141
  disabled: disabled,
142
142
  step: step
143
143
  }, maxLabel), showInput && /*#__PURE__*/_react["default"].createElement(StyledTextInput, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
144
144
  name: name,
145
- value: value != null && value >= 0 && value || innerValue,
145
+ value: value != null && value >= 0 && value.toString() || innerValue.toString(),
146
146
  disabled: disabled,
147
147
  onChange: handlerInputChange,
148
148
  size: "fillParent"
@@ -150,7 +150,7 @@ var DxcSlider = function DxcSlider(_ref) {
150
150
  };
151
151
 
152
152
  var sizes = {
153
- medium: "240px",
153
+ medium: "360px",
154
154
  large: "480px",
155
155
  fillParent: "100%"
156
156
  };
@@ -173,10 +173,10 @@ var Container = _styledComponents["default"].div(_templateObject || (_templateOb
173
173
  return calculateWidth(props.margin, props.size);
174
174
  });
175
175
 
176
- var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
177
- return props.theme.labelFontColor;
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
178
  }, function (props) {
179
- return props.theme.labelFontFamily;
179
+ return props.theme.fontFamily;
180
180
  }, function (props) {
181
181
  return props.theme.labelFontSize;
182
182
  }, function (props) {
@@ -188,20 +188,20 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
188
188
  });
189
189
 
190
190
  var HelperText = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
191
- return props.theme.helperTextFontColor;
191
+ return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
192
192
  }, function (props) {
193
- return props.theme.helperTextFontFamily;
193
+ return props.theme.fontFamily;
194
194
  }, function (props) {
195
195
  return props.theme.helperTextFontSize;
196
196
  }, function (props) {
197
- return props.theme.helperTextFontstyle;
197
+ return props.theme.helperTextFontStyle;
198
198
  }, function (props) {
199
199
  return props.theme.helperTextFontWeight;
200
200
  }, function (props) {
201
201
  return props.theme.helperTextLineHeight;
202
202
  });
203
203
 
204
- var SliderContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (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"])), function (props) {
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
205
  return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
206
206
  }, function (props) {
207
207
  return props.theme.thumbHeight;
@@ -277,34 +277,34 @@ var SliderContainer = _styledComponents["default"].div(_templateObject4 || (_tem
277
277
  return props.theme.tickVerticalPosition;
278
278
  });
279
279
 
280
- var MinLabelContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n margin-right: ", ";\n"])), function (props) {
281
- return props.theme.fontFamily;
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
282
  }, function (props) {
283
- return props.theme.fontSize;
283
+ return props.theme.fontFamily;
284
284
  }, function (props) {
285
- return props.theme.fontStyle;
285
+ return props.theme.limitValuesFontSize;
286
286
  }, function (props) {
287
- return props.theme.fontWeight;
287
+ return props.theme.limitValuesFontStyle;
288
288
  }, function (props) {
289
- return props.disabled ? props.theme.disabledFontColor : props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
289
+ return props.theme.limitValuesFontWeight;
290
290
  }, function (props) {
291
- return props.theme.fontLetterSpacing;
291
+ return props.theme.limitValuesFontLetterSpacing;
292
292
  }, function (props) {
293
293
  return props.theme.floorLabelMarginRight;
294
294
  });
295
295
 
296
- var MaxLabelContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n margin-left: ", ";\n"])), function (props) {
297
- return props.theme.fontFamily;
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
298
  }, function (props) {
299
- return props.theme.fontSize;
299
+ return props.theme.fontFamily;
300
300
  }, function (props) {
301
- return props.theme.fontStyle;
301
+ return props.theme.limitValuesFontSize;
302
302
  }, function (props) {
303
- return props.theme.fontWeight;
303
+ return props.theme.limitValuesFontStyle;
304
304
  }, function (props) {
305
- return props.disabled ? props.theme.disabledFontColor : props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
305
+ return props.theme.limitValuesFontWeight;
306
306
  }, function (props) {
307
- return props.theme.fontLetterSpacing;
307
+ return props.theme.limitValuesFontLetterSpacing;
308
308
  }, function (props) {
309
309
  return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
310
310
  });
@@ -313,28 +313,5 @@ var StyledTextInput = _styledComponents["default"].div(_templateObject7 || (_tem
313
313
  return props.theme.inputMarginLeft;
314
314
  });
315
315
 
316
- DxcSlider.propTypes = {
317
- label: _propTypes["default"].string,
318
- helperText: _propTypes["default"].string,
319
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
320
- minValue: _propTypes["default"].number,
321
- maxValue: _propTypes["default"].number,
322
- step: _propTypes["default"].number,
323
- value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
324
- showLimitsValues: _propTypes["default"].bool,
325
- showInput: _propTypes["default"].bool,
326
- name: _propTypes["default"].string,
327
- onChange: _propTypes["default"].func,
328
- onDragEnd: _propTypes["default"].func,
329
- disabled: _propTypes["default"].bool,
330
- marks: _propTypes["default"].bool,
331
- labelFormatCallback: _propTypes["default"].func,
332
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
333
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
334
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
335
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
336
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
337
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
338
- };
339
316
  var _default = DxcSlider;
340
317
  exports["default"] = _default;