@dxc-technology/halstack-react 0.0.0-3a8852f → 0.0.0-3e57f0d

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 (126) hide show
  1. package/{dist/README.md → README.md} +1 -1
  2. package/babel.config.js +6 -2
  3. package/dist/BackgroundColorContext.js +46 -0
  4. package/dist/ThemeContext.js +235 -2
  5. package/dist/accordion/Accordion.js +170 -81
  6. package/dist/accordion-group/AccordionGroup.js +186 -0
  7. package/dist/alert/Alert.js +181 -80
  8. package/dist/alert/index.d.ts +51 -0
  9. package/dist/badge/Badge.js +63 -0
  10. package/dist/box/Box.js +39 -19
  11. package/dist/button/Button.js +91 -40
  12. package/dist/card/Card.js +64 -56
  13. package/dist/checkbox/Checkbox.js +118 -39
  14. package/dist/chip/Chip.js +135 -40
  15. package/dist/common/RequiredComponent.js +5 -15
  16. package/dist/common/variables.js +1377 -10
  17. package/dist/date/Date.js +110 -73
  18. package/dist/dialog/Dialog.js +87 -33
  19. package/dist/dropdown/Dropdown.js +226 -94
  20. package/dist/file-input/FileInput.js +644 -0
  21. package/dist/file-input/FileItem.js +280 -0
  22. package/dist/file-input/index.d.ts +81 -0
  23. package/dist/footer/Footer.js +90 -36
  24. package/dist/footer/dxc_logo.svg +15 -0
  25. package/dist/footer/readme.md +1 -1
  26. package/dist/header/Header.js +132 -72
  27. package/dist/header/dxc_logo_black.svg +8 -0
  28. package/dist/header/readme.md +1 -1
  29. package/dist/heading/Heading.js +81 -22
  30. package/dist/input-text/InputText.js +298 -101
  31. package/dist/layout/ApplicationLayout.js +331 -0
  32. package/dist/layout/facebook.svg +45 -0
  33. package/dist/layout/linkedin.svg +50 -0
  34. package/dist/layout/twitter.svg +53 -0
  35. package/dist/link/Link.js +142 -34
  36. package/dist/main.d.ts +7 -0
  37. package/dist/main.js +97 -1
  38. package/dist/new-date/NewDate.js +400 -0
  39. package/dist/new-date/index.d.ts +95 -0
  40. package/dist/new-input-text/NewInputText.js +967 -0
  41. package/dist/new-input-text/index.d.ts +135 -0
  42. package/dist/new-textarea/NewTextarea.js +365 -0
  43. package/dist/new-textarea/index.d.ts +117 -0
  44. package/dist/number/Number.js +136 -0
  45. package/dist/number/NumberContext.js +16 -0
  46. package/dist/number/index.d.ts +113 -0
  47. package/dist/paginator/Paginator.js +160 -49
  48. package/dist/password/Password.js +200 -0
  49. package/dist/password/index.d.ts +94 -0
  50. package/dist/password/styles.css +3 -0
  51. package/dist/progress-bar/ProgressBar.js +97 -44
  52. package/dist/radio/Radio.js +39 -34
  53. package/dist/resultsetTable/ResultsetTable.js +94 -70
  54. package/dist/select/Select.js +253 -129
  55. package/dist/sidenav/Sidenav.js +87 -125
  56. package/dist/slider/Slider.js +125 -74
  57. package/dist/spinner/Spinner.js +249 -64
  58. package/dist/switch/Switch.js +54 -51
  59. package/dist/table/Table.js +63 -15
  60. package/dist/tabs/Tabs.js +210 -50
  61. package/dist/tabs-for-sections/TabsForSections.js +1 -16
  62. package/dist/tag/Tag.js +100 -35
  63. package/dist/textarea/Textarea.js +81 -43
  64. package/dist/toggle/Toggle.js +16 -19
  65. package/dist/toggle-group/ToggleGroup.js +223 -0
  66. package/dist/upload/Upload.js +13 -8
  67. package/dist/upload/buttons-upload/ButtonsUpload.js +34 -20
  68. package/dist/upload/dragAndDropArea/DragAndDropArea.js +78 -31
  69. package/dist/upload/file-upload/FileToUpload.js +50 -24
  70. package/dist/upload/files-upload/FilesToUpload.js +16 -16
  71. package/dist/upload/transaction/Transaction.js +44 -24
  72. package/dist/upload/transactions/Transactions.js +38 -20
  73. package/dist/useTheme.js +22 -0
  74. package/dist/wizard/Wizard.js +156 -55
  75. package/dist/wizard/invalid_icon.svg +4 -5
  76. package/dist/wizard/valid_icon.svg +4 -5
  77. package/package.json +17 -6
  78. package/test/AccordionGroup.test.js +125 -0
  79. package/test/Date.test.js +13 -13
  80. package/test/Dropdown.test.js +19 -4
  81. package/test/FileInput.test.js +201 -0
  82. package/test/InputText.test.js +30 -26
  83. package/test/Link.test.js +25 -7
  84. package/test/NewDate.test.js +232 -0
  85. package/test/NewInputText.test.js +734 -0
  86. package/test/NewTextarea.test.js +195 -0
  87. package/test/Number.test.js +257 -0
  88. package/test/Paginator.test.js +72 -60
  89. package/test/Password.test.js +83 -0
  90. package/test/ResultsetTable.test.js +66 -19
  91. package/test/Select.test.js +55 -34
  92. package/test/Sidenav.test.js +22 -64
  93. package/test/Slider.test.js +17 -0
  94. package/test/Spinner.test.js +5 -0
  95. package/test/Tabs.test.js +21 -0
  96. package/test/ToggleGroup.test.js +81 -0
  97. package/dist/accordion/Accordion.stories.js +0 -207
  98. package/dist/accordion/readme.md +0 -96
  99. package/dist/alert/Alert.stories.js +0 -158
  100. package/dist/alert/close.svg +0 -4
  101. package/dist/alert/error.svg +0 -4
  102. package/dist/alert/info.svg +0 -4
  103. package/dist/alert/readme.md +0 -43
  104. package/dist/alert/success.svg +0 -4
  105. package/dist/alert/warning.svg +0 -4
  106. package/dist/button/Button.stories.js +0 -224
  107. package/dist/button/readme.md +0 -93
  108. package/dist/common/services/example-service.js +0 -10
  109. package/dist/common/services/example-service.test.js +0 -12
  110. package/dist/date/calendar.svg +0 -1
  111. package/dist/date/calendar_dark.svg +0 -1
  112. package/dist/dialog/Dialog.stories.js +0 -217
  113. package/dist/dialog/readme.md +0 -32
  114. package/dist/dropdown/Dropdown.stories.js +0 -249
  115. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  116. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  117. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  118. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  119. package/dist/dropdown/readme.md +0 -69
  120. package/dist/footer/dxc_logo_wht.png +0 -0
  121. package/dist/header/dxc_logo_black.png +0 -0
  122. package/dist/header/dxc_logo_white.png +0 -0
  123. package/dist/select/Select.stories.js +0 -235
  124. package/dist/select/readme.md +0 -72
  125. package/dist/sidenav/arrow_icon.svg +0 -3
  126. package/test/Toggle.test.js +0 -43
@@ -13,9 +13,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
13
13
 
14
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
15
 
16
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
- var _react = _interopRequireWildcard(require("react"));
16
+ var _react = _interopRequireDefault(require("react"));
19
17
 
20
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
19
 
@@ -23,24 +21,12 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
23
21
 
24
22
  var _variables = require("../common/variables.js");
25
23
 
26
- require("../common/OpenSans.css");
27
-
28
- var _arrow_icon = _interopRequireDefault(require("./arrow_icon.svg"));
29
-
30
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
31
-
32
- function _templateObject5() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n flex-grow: 1;\n height: 100%;\n padding: ", ";\n margin-left: ", ";\n transition: margin 0.4s ease-in-out;\n width: ", ";\n"]);
34
-
35
- _templateObject5 = function _templateObject5() {
36
- return data;
37
- };
24
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
38
25
 
39
- return data;
40
- }
26
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
41
27
 
42
28
  function _templateObject4() {
43
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 18px;\n height: 18px;\n margin-left: ", ";\n transition: margin 0.4s ease-in;\n"]);
29
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n text-transform: ", ";\n text-decoration: ", ";\n margin: ", ";\n cursor: pointer;\n\n :focus-visible {\n outline: 2px solid ", ";\n outline-offset: 1px;\n }\n"]);
44
30
 
45
31
  _templateObject4 = function _templateObject4() {
46
32
  return data;
@@ -50,7 +36,7 @@ function _templateObject4() {
50
36
  }
51
37
 
52
38
  function _templateObject3() {
53
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n left: ", ";\n top: ", ";\n width: 42px;\n min-height: 42px;\n background-color: ", ";\n border-radius: 50%;\n transform: ", ";\n transition: transform 0.4s ease-in-out;\n cursor: pointer;\n"]);
39
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n text-transform: ", ";\n margin-bottom: 4px;\n"]);
54
40
 
55
41
  _templateObject3 = function _templateObject3() {
56
42
  return data;
@@ -60,7 +46,7 @@ function _templateObject3() {
60
46
  }
61
47
 
62
48
  function _templateObject2() {
63
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n\n background-color: #f8f8f8;\n\n width: ", ";\n box-sizing: border-box;\n padding: ", ";\n z-index: ", ";\n transform: ", ";\n transition: transform 0.4s ease-in-out;\n"]);
49
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n text-transform: ", ";\n margin-bottom: 16px;\n"]);
64
50
 
65
51
  _templateObject2 = function _templateObject2() {
66
52
  return data;
@@ -70,7 +56,7 @@ function _templateObject2() {
70
56
  }
71
57
 
72
58
  function _templateObject() {
73
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n"]);
59
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n max-width: 300px;\n width: ", ";\n padding: ", ";\n\n overflow-y: auto;\n overflow-x: hidden;\n ::-webkit-scrollbar {\n width: 2px;\n }\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n"]);
74
60
 
75
61
  _templateObject = function _templateObject() {
76
62
  return data;
@@ -80,138 +66,114 @@ function _templateObject() {
80
66
  }
81
67
 
82
68
  var DxcSidenav = function DxcSidenav(_ref) {
83
- var navContent = _ref.navContent,
84
- pageContent = _ref.pageContent,
85
- padding = _ref.padding,
86
- mode = _ref.mode,
87
- arrowDistance = _ref.arrowDistance,
88
- _ref$displayArrow = _ref.displayArrow,
89
- displayArrow = _ref$displayArrow === void 0 ? true : _ref$displayArrow;
90
- var ref = (0, _react.useRef)(null);
91
-
92
- var _useState = (0, _react.useState)(),
93
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
94
- sidenavSize = _useState2[0],
95
- setSidenavSize = _useState2[1];
96
-
97
- var _useState3 = (0, _react.useState)(),
98
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
99
- isShown = _useState4[0],
100
- setIsShown = _useState4[1];
101
-
102
- var _useState5 = (0, _react.useState)(),
103
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
104
- isResponsive = _useState6[0],
105
- setIsResponsive = _useState6[1];
106
-
107
- var colorsTheme = (0, _react.useContext)(_ThemeContext["default"]) || _variables.colors;
108
-
109
- var handleVisbility = function handleVisbility(width) {
110
- setIsShown(width <= _variables.responsiveSizes.tablet ? false : true);
111
- };
112
-
113
- var handleResize = function handleResize(width) {
114
- if (width) {
115
- setSidenavSize(width);
116
- if (width <= _variables.responsiveSizes.tablet ? setIsResponsive(true) : setIsResponsive(false)) ;
117
- }
118
- };
119
-
120
- var handleEventListener = function handleEventListener() {
121
- handleResize(ref.current.offsetWidth);
122
- };
123
-
124
- (0, _react.useEffect)(function () {
125
- if (ref.current) {
126
- window.addEventListener("resize", handleEventListener);
127
- handleResize(ref.current.offsetWidth);
128
- handleVisbility(ref.current.offsetWidth);
129
- }
130
-
131
- return function () {
132
- window.removeEventListener("resize", handleEventListener);
133
- };
134
- }, []);
69
+ var padding = _ref.padding,
70
+ children = _ref.children;
71
+ var colorsTheme = (0, _useTheme["default"])();
72
+ return _react["default"].createElement(_styledComponents.ThemeProvider, {
73
+ theme: colorsTheme.sidenav
74
+ }, _react["default"].createElement(SideNavContainer, {
75
+ padding: padding
76
+ }, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
77
+ color: colorsTheme.sidenav.backgroundColor
78
+ }, children)));
79
+ };
135
80
 
136
- var handleSidenav = function handleSidenav() {
137
- setIsShown(!isShown);
138
- };
81
+ var Title = function Title(_ref2) {
82
+ var children = _ref2.children;
83
+ return _react["default"].createElement(SideNavMenuTitle, null, children);
84
+ };
139
85
 
140
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
141
- theme: colorsTheme
142
- }, _react["default"].createElement(SidenavComponent, {
143
- ref: ref
144
- }, ref.current && _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(Sidenav, {
145
- navContent: navContent,
146
- isShown: isShown,
147
- padding: padding,
148
- mode: isResponsive ? "overlay" : mode,
149
- sidenavSize: sidenavSize,
150
- isResponsive: isResponsive
151
- }, navContent, (displayArrow || isResponsive) && _react["default"].createElement(ArrowTrigger, {
152
- onClick: handleSidenav,
153
- isShown: isShown,
154
- sidenavSize: sidenavSize,
155
- arrowDistance: arrowDistance
156
- }, _react["default"].createElement(ArrowImage, {
157
- src: _arrow_icon["default"],
158
- isShown: isShown
159
- }))), _react["default"].createElement(PageContent, {
160
- pageContent: pageContent,
161
- padding: padding,
162
- isShown: isShown,
163
- mode: isResponsive ? "overlay" : mode,
164
- sidenavSize: sidenavSize,
165
- isResponsive: isResponsive
166
- }, pageContent))));
86
+ var Subtitle = function Subtitle(_ref3) {
87
+ var children = _ref3.children;
88
+ return _react["default"].createElement(SideNavMenuSubTitle, null, children);
167
89
  };
168
90
 
169
- var SidenavComponent = _styledComponents["default"].div(_templateObject());
91
+ var Link = function Link(_ref4) {
92
+ var href = _ref4.href,
93
+ onClick = _ref4.onClick,
94
+ children = _ref4.children;
95
+ return _react["default"].createElement(SideNavMenuLink, {
96
+ href: href,
97
+ onClick: onClick
98
+ }, children);
99
+ };
170
100
 
171
- var Sidenav = _styledComponents["default"].div(_templateObject2(), function (props) {
172
- return props.sidenavSize <= _variables.responsiveSizes.tablet ? "60%" : "300px";
101
+ var SideNavContainer = _styledComponents["default"].div(_templateObject(), function (props) {
102
+ return props.theme.backgroundColor;
103
+ }, function (props) {
104
+ return props.padding ? "calc(300px - ".concat(_variables.spaces[props.padding], " - ").concat(_variables.spaces[props.padding], ")") : "300px";
173
105
  }, function (props) {
174
106
  return props.padding ? _variables.spaces[props.padding] : "";
175
107
  }, function (props) {
176
- return props.mode === "overlay" ? "400" : "auto";
108
+ return props.theme.scrollBarTrackColor;
177
109
  }, function (props) {
178
- return props.isShown ? "translateX(0)" : !props.isShown ? "translateX(-100%)" : "";
110
+ return props.theme.scrollBarThumbColor;
179
111
  });
180
112
 
181
- var ArrowTrigger = _styledComponents["default"].div(_templateObject3(), function (props) {
182
- return props.sidenavSize <= _variables.responsiveSizes.tablet ? "calc(100% - 21px)" : "279px";
113
+ var SideNavMenuTitle = _styledComponents["default"].div(_templateObject2(), function (props) {
114
+ return props.theme.titleFontFamily;
115
+ }, function (props) {
116
+ return props.theme.titleFontSize;
117
+ }, function (props) {
118
+ return props.theme.titleFontStyle;
183
119
  }, function (props) {
184
- return props.arrowDistance ? props.arrowDistance : "calc(50% - 21px)";
120
+ return props.theme.titleFontWeight;
185
121
  }, function (props) {
186
- return props.theme.lighterGrey;
122
+ return props.theme.titleFontColor;
187
123
  }, function (props) {
188
- return props.isShown ? "rotate(-180deg)" : "rotate(0deg)";
124
+ return props.theme.titleFontLetterSpacing;
125
+ }, function (props) {
126
+ return props.theme.titleFontTextTransform;
189
127
  });
190
128
 
191
- var ArrowImage = _styledComponents["default"].img(_templateObject4(), function (props) {
192
- return props.isShown ? "0" : "10px";
129
+ var SideNavMenuSubTitle = _styledComponents["default"].div(_templateObject3(), function (props) {
130
+ return props.theme.subtitleFontFamily;
131
+ }, function (props) {
132
+ return props.theme.subtitleFontSize;
133
+ }, function (props) {
134
+ return props.theme.subtitleFontStyle;
135
+ }, function (props) {
136
+ return props.theme.subtitleFontWeight;
137
+ }, function (props) {
138
+ return props.theme.subtitleFontColor;
139
+ }, function (props) {
140
+ return props.theme.subtitleFontLetterSpacing;
141
+ }, function (props) {
142
+ return props.theme.subtitleFontTextTransform;
193
143
  });
194
144
 
195
- var PageContent = _styledComponents["default"].div(_templateObject5(), function (props) {
196
- return props.padding ? _variables.spaces[props.padding] : "";
145
+ var SideNavMenuLink = _styledComponents["default"].a(_templateObject4(), function (props) {
146
+ return props.theme.linkFontFamily;
147
+ }, function (props) {
148
+ return props.theme.linkFontSize;
149
+ }, function (props) {
150
+ return props.theme.linkFontStyle;
151
+ }, function (props) {
152
+ return props.theme.linkFontWeight;
153
+ }, function (props) {
154
+ return props.theme.linkFontColor;
155
+ }, function (props) {
156
+ return props.theme.linkFontLetterSpacing;
157
+ }, function (props) {
158
+ return props.theme.linkFontTextTransform;
159
+ }, function (props) {
160
+ return props.theme.linkTextDecoration;
197
161
  }, function (props) {
198
- return props.isShown && props.mode === "push" && !props.isResponsive ? "" : !props.isResponsive ? "-300px" : "-60%";
162
+ return "".concat(props.theme.linkMarginTop, " ").concat(props.theme.linkMarginRight, " ").concat(props.theme.linkMarginBottom, " ").concat(props.theme.linkMarginLeft);
199
163
  }, function (props) {
200
- return props.isShown && props.mode === "push" ? "calc(100% - 300px)" : "calc(100%)";
164
+ return props.theme.linkFocusColor;
201
165
  });
202
166
 
203
167
  DxcSidenav.propTypes = {
204
- mode: _propTypes["default"].oneOf(["overlay", "push", ""]),
205
168
  padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
206
169
  top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
207
170
  bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
208
171
  left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
209
172
  right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
210
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
211
- navContent: _propTypes["default"].object,
212
- pageContent: _propTypes["default"].object,
213
- arrowDistance: _propTypes["default"].string,
214
- displayArrow: _propTypes["default"].bool
173
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
215
174
  };
175
+ DxcSidenav.Title = Title;
176
+ DxcSidenav.Subtitle = Subtitle;
177
+ DxcSidenav.Link = Link;
216
178
  var _default = DxcSidenav;
217
179
  exports["default"] = _default;
@@ -9,12 +9,12 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
12
14
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
15
 
14
16
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
17
 
16
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
-
18
18
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
19
 
20
20
  var _react = _interopRequireWildcard(require("react"));
@@ -25,18 +25,18 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
25
 
26
26
  var _propTypes = _interopRequireDefault(require("prop-types"));
27
27
 
28
- require("../common/OpenSans.css");
29
-
30
28
  var _InputText = _interopRequireDefault(require("../input-text/InputText"));
31
29
 
32
30
  var _variables = require("../common/variables.js");
33
31
 
34
32
  var _utils = require("../common/utils.js");
35
33
 
36
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
34
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
35
+
36
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
37
37
 
38
38
  function _templateObject4() {
39
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: \"Open Sans\", sans-serif;\n color: ", ";\n font-size: 16px;\n margin-left: ", ";\n"]);
39
+ 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"]);
40
40
 
41
41
  _templateObject4 = function _templateObject4() {
42
42
  return data;
@@ -46,7 +46,7 @@ function _templateObject4() {
46
46
  }
47
47
 
48
48
  function _templateObject3() {
49
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: \"Open Sans\", sans-serif;\n color: ", ";\n font-size: 16px;\n margin-right: 15px;\n"]);
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-right: 16px;\n"]);
50
50
 
51
51
  _templateObject3 = function _templateObject3() {
52
52
  return data;
@@ -56,7 +56,7 @@ function _templateObject3() {
56
56
  }
57
57
 
58
58
  function _templateObject2() {
59
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n width: ", ";\n\n .MultiSlider-root {\n display: flex;\n align-items: center;\n }\n .MuiSlider-container {\n padding: 30px 24px;\n }\n\n .MuiSlider-root.Mui-disabled {\n opacity: ", ";\n color: ", ";\n cursor: not-allowed;\n }\n\n .Mui-disabled {\n & .MuiSlider-thumb {\n height: 14px;\n width: 14px;\n background-color: ", ";\n top: 35%;\n }\n & .MuiSlider-track {\n background-color: ", ";\n }\n & > .MuiSlider-mark.MuiSlider-markActive {\n background-color: ", " !important;\n }\n & > .MuiSlider-mark {\n background-color: ", ";\n width: 6px;\n height: 6px;\n border-radius: 18px;\n }\n & .MuiSlider-rail {\n opacity: 1;\n }\n }\n .MuiSlider-thumb {\n height: 14px;\n width: 14px;\n background-color: ", ";\n top: 45%;\n :hover,\n &.Mui-focusVisible {\n box-shadow: none;\n }\n &.MuiSlider-active {\n box-shadow: none;\n }\n :hover:not(:active) {\n box-shadow: ", ";\n }\n :active {\n box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.2);\n background-color: ", ";\n top: 45%;\n transform: scale(1.25);\n transform-origin: center;\n }\n }\n .MuiSlider-track {\n background-color: ", ";\n height: 2px;\n top: 50%;\n }\n\n .MuiSlider-track.MuiSlider-trackAfter {\n background-color: ", ";\n }\n .MuiSlider-rail {\n background-color: ", ";\n top: 50%;\n opacity: 0.54;\n }\n .MuiSlider-mark.MuiSlider-markActive {\n background-color: ", ";\n }\n .MuiSlider-mark {\n background-color: ", ";\n width: 6px;\n height: 6px;\n border-radius: 18px;\n top: ", ";\n }\n"]);
59
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\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 }\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"]);
60
60
 
61
61
  _templateObject2 = function _templateObject2() {
62
62
  return data;
@@ -66,7 +66,7 @@ function _templateObject2() {
66
66
  }
67
67
 
68
68
  function _templateObject() {
69
- var data = (0, _taggedTemplateLiteral2["default"])(["\n .MuiTextField-root {\n font-size: 16px;\n .MuiInputBase-input {\n color: ", ";\n }\n }\n"]);
69
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 32px;\n\n label + .MuiInput-formControl {\n margin-top: 2px;\n }\n"]);
70
70
 
71
71
  _templateObject = function _templateObject() {
72
72
  return data;
@@ -92,10 +92,9 @@ var DxcSlider = function DxcSlider(_ref) {
92
92
  onDragEnd = _ref.onDragEnd,
93
93
  _ref$disabled = _ref.disabled,
94
94
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
95
- _ref$theme = _ref.theme,
96
- theme = _ref$theme === void 0 ? "light" : _ref$theme,
97
95
  _ref$marks = _ref.marks,
98
96
  marks = _ref$marks === void 0 ? false : _ref$marks,
97
+ labelFormatCallback = _ref.labelFormatCallback,
99
98
  margin = _ref.margin,
100
99
  _ref$size = _ref.size,
101
100
  size = _ref$size === void 0 ? "fillParent" : _ref$size;
@@ -105,7 +104,14 @@ var DxcSlider = function DxcSlider(_ref) {
105
104
  innerValue = _useState2[0],
106
105
  setInnerValue = _useState2[1];
107
106
 
108
- var colorsTheme = (0, _react.useContext)(_ThemeContext["default"]) || _variables.colors;
107
+ var colorsTheme = (0, _useTheme["default"])();
108
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
109
+ var minLabel = (0, _react.useMemo)(function () {
110
+ return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
111
+ }, [labelFormatCallback, minValue]);
112
+ var maxLabel = (0, _react.useMemo)(function () {
113
+ return labelFormatCallback ? labelFormatCallback(maxValue) : maxValue;
114
+ }, [labelFormatCallback, maxValue]);
109
115
 
110
116
  var handlerSliderChange = function handlerSliderChange(event, newValue) {
111
117
  if (value == null) {
@@ -132,15 +138,15 @@ var DxcSlider = function DxcSlider(_ref) {
132
138
  };
133
139
 
134
140
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
135
- theme: colorsTheme
141
+ theme: colorsTheme.slider
136
142
  }, _react["default"].createElement(SliderContainer, {
137
- brightness: theme,
138
143
  margin: margin,
139
- size: size
144
+ size: size,
145
+ backgroundType: backgroundType
140
146
  }, showLimitsValues && _react["default"].createElement(MinLabelContainer, {
141
- brightness: theme,
147
+ backgroundType: backgroundType,
142
148
  disabled: disabled
143
- }, minValue), _react["default"].createElement(_Slider["default"], {
149
+ }, minLabel), _react["default"].createElement(_Slider["default"], {
144
150
  value: value != null && value >= 0 && value || innerValue,
145
151
  min: minValue,
146
152
  max: maxValue,
@@ -152,21 +158,15 @@ var DxcSlider = function DxcSlider(_ref) {
152
158
  marks: marks || [],
153
159
  disabled: disabled
154
160
  }), showLimitsValues && _react["default"].createElement(MaxLabelContainer, {
155
- brightness: theme,
161
+ backgroundType: backgroundType,
156
162
  disabled: disabled,
157
163
  step: step
158
- }, maxValue), showInput && _react["default"].createElement(StyledTextInput, {
159
- brightness: theme
160
- }, _react["default"].createElement(_InputText["default"], {
164
+ }, maxLabel), showInput && _react["default"].createElement(StyledTextInput, null, _react["default"].createElement(_InputText["default"], {
161
165
  name: name,
162
- brightness: theme,
163
166
  value: value != null && value >= 0 && value || innerValue,
164
167
  disabled: disabled,
165
168
  onChange: handlerInputChange,
166
- size: "small",
167
- margin: {
168
- left: "medium"
169
- }
169
+ size: "small"
170
170
  }))));
171
171
  };
172
172
 
@@ -177,38 +177,10 @@ var sizes = {
177
177
  };
178
178
 
179
179
  var calculateWidth = function calculateWidth(margin, size) {
180
- if (size === "fillParent") {
181
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
182
- }
183
-
184
- return sizes[size];
185
- };
186
-
187
- DxcSlider.propTypes = {
188
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
189
- minValue: _propTypes["default"].number,
190
- maxValue: _propTypes["default"].number,
191
- step: _propTypes["default"].number,
192
- value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
193
- showLimitsValues: _propTypes["default"].bool,
194
- showInput: _propTypes["default"].bool,
195
- name: _propTypes["default"].string,
196
- onChange: _propTypes["default"].func,
197
- onDragEnd: _propTypes["default"].func,
198
- disabled: _propTypes["default"].bool,
199
- theme: _propTypes["default"].oneOf(["dark", "light"]),
200
- marks: _propTypes["default"].bool,
201
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
202
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
203
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
204
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
205
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
206
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
180
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
207
181
  };
208
182
 
209
- var StyledTextInput = _styledComponents["default"].div(_templateObject(), function (props) {
210
- return props.brightness === "light" && props.theme.black || props.theme.white;
211
- });
183
+ var StyledTextInput = _styledComponents["default"].div(_templateObject());
212
184
 
213
185
  var SliderContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
214
186
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -223,46 +195,125 @@ var SliderContainer = _styledComponents["default"].div(_templateObject2(), funct
223
195
  }, function (props) {
224
196
  return calculateWidth(props.margin, props.size);
225
197
  }, function (props) {
226
- return props.brightness === "light" && 1 || 0.3;
198
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
199
+ }, function (props) {
200
+ return props.theme.thumbHeight;
201
+ }, function (props) {
202
+ return props.theme.thumbWidth;
203
+ }, function (props) {
204
+ return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
205
+ }, function (props) {
206
+ return props.theme.disabledThumbVerticalPosition;
207
+ }, function (props) {
208
+ return props.backgroundType === "dark" ? props.theme.disabledTrackLineColorOnDark : props.theme.disabledTrackLineColor;
209
+ }, function (props) {
210
+ return props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark : props.theme.disabledTotalLineColor;
211
+ }, function (props) {
212
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
213
+ }, function (props) {
214
+ return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
215
+ }, function (props) {
216
+ return props.theme.tickHeight;
217
+ }, function (props) {
218
+ return props.theme.tickWidth;
227
219
  }, function (props) {
228
- return props.theme.lightGrey;
220
+ return props.theme.disabledTickVerticalPosition;
229
221
  }, function (props) {
230
- return props.theme.lightGrey;
222
+ return props.theme.thumbHeight;
231
223
  }, function (props) {
232
- return props.theme.lightGrey;
224
+ return props.theme.thumbWidth;
233
225
  }, function (props) {
234
- return props.theme.lightGrey;
226
+ return props.backgroundType === "dark" ? props.theme.thumbBackgroundColorOnDark : props.theme.thumbBackgroundColor;
235
227
  }, function (props) {
236
- return props.theme.lightGrey;
228
+ return props.theme.thumbVerticalPosition;
237
229
  }, function (props) {
238
- return props.brightness === "light" && props.theme.black || props.theme.lightGrey;
230
+ return props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
239
231
  }, function (props) {
240
- return props.brightness === "light" && "0px 0px 0px 18px #66666633" || "0px 0px 0px 18px #d9d9d933";
232
+ return props.backgroundType === "dark" ? props.theme.focusThumbBackgroundColorOnDark : props.theme.focusThumbBackgroundColor;
241
233
  }, function (props) {
242
- return props.brightness === "light" && props.theme.black || props.theme.yellow;
234
+ return props.backgroundType === "dark" ? props.theme.hoverThumbBackgroundColorOnDark : props.theme.hoverThumbBackgroundColor;
243
235
  }, function (props) {
244
- return props.brightness === "light" && props.theme.black || props.theme.lightGrey;
236
+ return props.theme.hoverThumbScale;
245
237
  }, function (props) {
246
- return props.theme.black;
238
+ return props.backgroundType === "dark" ? props.theme.activeThumbBackgroundColorOnDark : props.theme.activeThumbBackgroundColor;
247
239
  }, function (props) {
248
- return props.brightness === "light" && props.theme.lightGrey || props.theme.lightGrey;
240
+ return props.theme.activeThumbScale;
249
241
  }, function (props) {
250
- return props.brightness === "light" && props.theme.black || props.theme.lightGrey;
242
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
251
243
  }, function (props) {
252
- return props.brightness === "light" && props.theme.black || props.theme.lightGrey;
244
+ return props.theme.trackLineThickness;
253
245
  }, function (props) {
254
- return props.brightness === "light" && "40%" || "44%";
246
+ return props.theme.trackLineVerticalPosition;
247
+ }, function (props) {
248
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
249
+ }, function (props) {
250
+ return props.backgroundType === "dark" ? props.theme.totalLineColorOnDark : props.theme.totalLineColor;
251
+ }, function (props) {
252
+ return props.theme.totalLineThickness;
253
+ }, function (props) {
254
+ return props.theme.totalLineVerticalPosition;
255
+ }, function (props) {
256
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
257
+ }, function (props) {
258
+ return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
259
+ }, function (props) {
260
+ return props.theme.tickHeight;
261
+ }, function (props) {
262
+ return props.theme.tickWidth;
263
+ }, function (props) {
264
+ return props.theme.tickVerticalPosition;
255
265
  });
256
266
 
257
267
  var MinLabelContainer = _styledComponents["default"].span(_templateObject3(), function (props) {
258
- return props.brightness === "dark" && props.disabled ? props.theme.darkGrey : props.brightness === "dark" ? props.theme.white : props.brightness === "light" && props.disabled ? props.theme.lightGrey : props.theme.black;
268
+ return props.theme.fontFamily;
269
+ }, function (props) {
270
+ return props.theme.fontSize;
271
+ }, function (props) {
272
+ return props.theme.fontStyle;
273
+ }, function (props) {
274
+ return props.theme.fontWeight;
275
+ }, function (props) {
276
+ return props.disabled ? props.theme.disabledFontColor : props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
277
+ }, function (props) {
278
+ return props.theme.fontLetterSpacing;
259
279
  });
260
280
 
261
281
  var MaxLabelContainer = _styledComponents["default"].span(_templateObject4(), function (props) {
262
- return props.brightness === "dark" && props.disabled ? props.theme.darkGrey : props.brightness === "dark" ? props.theme.white : props.brightness === "light" && props.disabled ? props.theme.lightGrey : props.theme.black;
282
+ return props.theme.fontFamily;
283
+ }, function (props) {
284
+ return props.theme.fontSize;
263
285
  }, function (props) {
264
- return props.step === 1 ? "15px" : "20px";
286
+ return props.theme.fontStyle;
287
+ }, function (props) {
288
+ return props.theme.fontWeight;
289
+ }, function (props) {
290
+ return props.disabled ? props.theme.disabledFontColor : props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
291
+ }, function (props) {
292
+ return props.theme.fontLetterSpacing;
293
+ }, function (props) {
294
+ return props.step === 1 ? "16px" : "20px";
265
295
  });
266
296
 
297
+ DxcSlider.propTypes = {
298
+ size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
299
+ minValue: _propTypes["default"].number,
300
+ maxValue: _propTypes["default"].number,
301
+ step: _propTypes["default"].number,
302
+ value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
303
+ showLimitsValues: _propTypes["default"].bool,
304
+ showInput: _propTypes["default"].bool,
305
+ name: _propTypes["default"].string,
306
+ onChange: _propTypes["default"].func,
307
+ onDragEnd: _propTypes["default"].func,
308
+ disabled: _propTypes["default"].bool,
309
+ marks: _propTypes["default"].bool,
310
+ labelFormatCallback: _propTypes["default"].func,
311
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
312
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
313
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
314
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
315
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
316
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
317
+ };
267
318
  var _default = DxcSlider;
268
319
  exports["default"] = _default;