@dxc-technology/halstack-react 0.0.0-ecc45e2 → 0.0.0-ede733c
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.
- package/BackgroundColorContext.d.ts +2 -2
- package/BackgroundColorContext.js +1 -1
- package/HalstackContext.d.ts +1329 -5
- package/HalstackContext.js +117 -77
- package/accordion/Accordion.js +118 -110
- package/accordion/Accordion.stories.tsx +103 -15
- package/accordion/Accordion.test.js +10 -11
- package/accordion/types.d.ts +1 -0
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +24 -65
- package/accordion-group/AccordionGroup.stories.tsx +27 -1
- package/accordion-group/AccordionGroup.test.js +21 -46
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +43 -0
- package/accordion-group/types.d.ts +7 -0
- package/alert/Alert.js +5 -9
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +1 -1
- package/bleed/Bleed.stories.tsx +1 -0
- package/box/Box.js +4 -6
- package/box/Box.stories.tsx +15 -0
- package/box/Box.test.js +1 -1
- package/box/types.d.ts +1 -0
- package/bulleted-list/BulletedList.js +4 -2
- package/bulleted-list/BulletedList.stories.tsx +7 -1
- package/bulleted-list/types.d.ts +31 -4
- package/button/Button.js +13 -16
- package/button/Button.stories.tsx +151 -9
- package/button/Button.test.js +1 -1
- package/button/types.d.ts +3 -3
- package/card/Card.js +12 -13
- package/card/Card.stories.tsx +12 -13
- package/card/Card.test.js +1 -1
- package/card/types.d.ts +1 -0
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +94 -101
- package/checkbox/Checkbox.stories.tsx +131 -59
- package/checkbox/Checkbox.test.js +94 -17
- package/checkbox/types.d.ts +4 -0
- package/chip/Chip.js +28 -49
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +3 -5
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +146 -0
- package/common/coreTokens.js +167 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +4 -4
- package/common/variables.d.ts +1482 -0
- package/common/variables.js +994 -1137
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +258 -0
- package/date-input/DateInput.js +134 -237
- package/date-input/DateInput.stories.tsx +199 -33
- package/date-input/DateInput.test.js +494 -138
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +146 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +75 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +126 -0
- package/date-input/types.d.ts +51 -0
- package/dialog/Dialog.js +60 -73
- package/dialog/Dialog.stories.tsx +229 -121
- package/dialog/Dialog.test.js +302 -3
- package/dialog/types.d.ts +3 -2
- package/dropdown/Dropdown.js +43 -42
- package/dropdown/Dropdown.stories.tsx +210 -84
- package/dropdown/Dropdown.test.js +22 -27
- package/dropdown/DropdownMenu.js +12 -18
- package/dropdown/DropdownMenuItem.js +5 -18
- package/dropdown/types.d.ts +3 -3
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +174 -220
- package/file-input/FileInput.stories.tsx +122 -11
- package/file-input/FileInput.test.js +14 -14
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +39 -63
- package/file-input/types.d.ts +17 -0
- package/flex/Flex.d.ts +1 -1
- package/flex/Flex.js +33 -19
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +83 -7
- package/footer/Footer.js +6 -8
- package/footer/Footer.stories.tsx +99 -1
- package/footer/Footer.test.js +14 -26
- package/footer/types.d.ts +1 -0
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +91 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +3 -2
- package/header/Header.js +21 -23
- package/header/Header.stories.tsx +152 -9
- package/header/Header.test.js +2 -2
- package/header/types.d.ts +3 -2
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.js +1 -1
- package/inset/Inset.stories.tsx +2 -1
- package/layout/ApplicationLayout.d.ts +3 -3
- package/layout/ApplicationLayout.js +1 -1
- package/layout/ApplicationLayout.stories.tsx +1 -0
- package/layout/types.d.ts +2 -3
- package/link/Link.js +4 -4
- package/link/Link.stories.tsx +60 -0
- package/link/Link.test.js +2 -4
- package/link/types.d.ts +2 -2
- package/main.d.ts +3 -2
- package/main.js +9 -1
- package/{tabs-nav → nav-tabs}/NavTabs.js +1 -1
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +96 -6
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
- package/{tabs-nav → nav-tabs}/Tab.js +38 -18
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.test.js +44 -8
- package/package.json +15 -20
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +16 -28
- package/paginator/Paginator.js +7 -15
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +45 -48
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +5 -5
- package/password-input/PasswordInput.test.js +14 -13
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +5 -5
- package/progress-bar/ProgressBar.stories.jsx +35 -2
- package/progress-bar/ProgressBar.test.js +1 -1
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.js +11 -12
- package/quick-nav/QuickNav.stories.tsx +111 -19
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +43 -28
- package/radio-group/RadioGroup.js +15 -13
- package/radio-group/RadioGroup.stories.tsx +132 -18
- package/radio-group/RadioGroup.test.js +124 -97
- package/radio-group/types.d.ts +2 -2
- package/resultsetTable/Icons.d.ts +7 -0
- package/resultsetTable/Icons.js +51 -0
- package/resultsetTable/ResultsetTable.js +49 -108
- package/resultsetTable/ResultsetTable.stories.tsx +50 -25
- package/resultsetTable/ResultsetTable.test.js +41 -64
- package/resultsetTable/types.d.ts +1 -1
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +5 -35
- package/select/Option.js +11 -24
- package/select/Select.js +59 -36
- package/select/Select.stories.tsx +494 -150
- package/select/Select.test.js +341 -288
- package/select/types.d.ts +2 -2
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +51 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +66 -96
- package/sidenav/Sidenav.stories.tsx +165 -63
- package/sidenav/types.d.ts +21 -18
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +119 -95
- package/slider/Slider.stories.tsx +64 -1
- package/slider/Slider.test.js +88 -25
- package/slider/types.d.ts +4 -0
- package/spinner/Spinner.js +17 -23
- package/spinner/Spinner.stories.jsx +53 -27
- package/spinner/Spinner.test.js +1 -1
- package/switch/Switch.d.ts +3 -3
- package/switch/Switch.js +96 -85
- package/switch/Switch.stories.tsx +33 -0
- package/switch/Switch.test.js +27 -14
- package/switch/types.d.ts +8 -3
- package/table/Table.js +3 -3
- package/table/Table.stories.jsx +80 -1
- package/table/Table.test.js +2 -2
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +132 -0
- package/tabs/Tabs.js +358 -108
- package/tabs/Tabs.stories.tsx +119 -5
- package/tabs/Tabs.test.js +220 -10
- package/tabs/types.d.ts +12 -2
- package/tag/Tag.js +8 -10
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +1 -1
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +60 -0
- package/text-input/Suggestion.js +40 -11
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +134 -0
- package/text-input/TextInput.js +189 -277
- package/text-input/TextInput.stories.tsx +280 -184
- package/text-input/TextInput.test.js +736 -725
- package/text-input/types.d.ts +21 -2
- package/textarea/Textarea.js +3 -4
- package/textarea/Textarea.stories.jsx +60 -1
- package/textarea/Textarea.test.js +2 -4
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +7 -4
- package/toggle-group/ToggleGroup.stories.tsx +42 -0
- package/toggle-group/ToggleGroup.test.js +1 -1
- package/toggle-group/types.d.ts +1 -1
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +14 -113
- package/typography/Typography.stories.tsx +1 -1
- package/useTheme.d.ts +1234 -1
- package/useTheme.js +1 -1
- package/useTranslatedLabels.d.ts +84 -1
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +108 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +138 -0
- package/wizard/Wizard.js +2 -2
- package/wizard/Wizard.stories.tsx +20 -0
- package/wizard/Wizard.test.js +1 -1
- package/wizard/types.d.ts +5 -6
- package/common/RequiredComponent.js +0 -32
- /package/{tabs-nav → grid}/types.js +0 -0
- /package/{tabs-nav → nav-tabs}/NavTabs.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/types.d.ts +0 -0
package/slider/Slider.js
CHANGED
|
@@ -17,15 +17,13 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
17
17
|
|
|
18
18
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
19
|
|
|
20
|
-
var _Slider = _interopRequireDefault(require("@material-ui/lab/Slider"));
|
|
21
|
-
|
|
22
20
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
23
21
|
|
|
24
22
|
var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
|
|
25
23
|
|
|
26
|
-
var _variables = require("../common/variables
|
|
24
|
+
var _variables = require("../common/variables");
|
|
27
25
|
|
|
28
|
-
var _utils = require("../common/utils
|
|
26
|
+
var _utils = require("../common/utils");
|
|
29
27
|
|
|
30
28
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
31
29
|
|
|
@@ -33,13 +31,13 @@ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColor
|
|
|
33
31
|
|
|
34
32
|
var _uuid = require("uuid");
|
|
35
33
|
|
|
36
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
|
|
34
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
37
35
|
|
|
38
36
|
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
37
|
|
|
40
38
|
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
39
|
|
|
42
|
-
var DxcSlider = function
|
|
40
|
+
var DxcSlider = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
43
41
|
var _ref$label = _ref.label,
|
|
44
42
|
label = _ref$label === void 0 ? "" : _ref$label,
|
|
45
43
|
_ref$name = _ref.name,
|
|
@@ -74,12 +72,17 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
74
72
|
innerValue = _useState2[0],
|
|
75
73
|
setInnerValue = _useState2[1];
|
|
76
74
|
|
|
75
|
+
var _useState3 = (0, _react.useState)(false),
|
|
76
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
77
|
+
dragging = _useState4[0],
|
|
78
|
+
setDragging = _useState4[1];
|
|
79
|
+
|
|
77
80
|
var colorsTheme = (0, _useTheme["default"])();
|
|
78
81
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
79
82
|
|
|
80
|
-
var
|
|
81
|
-
|
|
82
|
-
labelId =
|
|
83
|
+
var _useState5 = (0, _react.useState)("label-".concat((0, _uuid.v4)())),
|
|
84
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
|
|
85
|
+
labelId = _useState6[0];
|
|
83
86
|
|
|
84
87
|
var minLabel = (0, _react.useMemo)(function () {
|
|
85
88
|
return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
|
|
@@ -87,15 +90,44 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
87
90
|
var maxLabel = (0, _react.useMemo)(function () {
|
|
88
91
|
return labelFormatCallback ? labelFormatCallback(maxValue) : maxValue;
|
|
89
92
|
}, [labelFormatCallback, maxValue]);
|
|
93
|
+
var tickMarks = (0, _react.useMemo)(function () {
|
|
94
|
+
var ticks = [];
|
|
95
|
+
var numberOfMarks = Math.floor(maxValue / step - minValue / step);
|
|
96
|
+
var index = 0;
|
|
97
|
+
var range = maxValue - minValue;
|
|
98
|
+
|
|
99
|
+
if (marks) {
|
|
100
|
+
while (index <= numberOfMarks) {
|
|
101
|
+
ticks.push( /*#__PURE__*/_react["default"].createElement(TickMark, {
|
|
102
|
+
disabled: disabled,
|
|
103
|
+
stepPosition: step * index / range,
|
|
104
|
+
backgroundType: backgroundType,
|
|
105
|
+
stepValue: (value !== null && value !== void 0 ? value : innerValue) / maxValue
|
|
106
|
+
}));
|
|
107
|
+
index++;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return ticks;
|
|
111
|
+
} else {
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
}, [minValue, maxValue, step, value, innerValue]);
|
|
115
|
+
|
|
116
|
+
var handleSliderChange = function handleSliderChange(event) {
|
|
117
|
+
var valueToCheck = event.target.value;
|
|
118
|
+
(valueToCheck !== value || valueToCheck !== innerValue) && setInnerValue(valueToCheck);
|
|
119
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(valueToCheck);
|
|
120
|
+
};
|
|
90
121
|
|
|
91
|
-
var
|
|
92
|
-
|
|
93
|
-
valueToCheck !== newValue && setInnerValue(newValue);
|
|
94
|
-
onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
|
|
122
|
+
var handleSliderDragging = function handleSliderDragging() {
|
|
123
|
+
setDragging(true);
|
|
95
124
|
};
|
|
96
125
|
|
|
97
|
-
var handleSliderOnChangeCommited = function handleSliderOnChangeCommited(event
|
|
98
|
-
|
|
126
|
+
var handleSliderOnChangeCommited = function handleSliderOnChangeCommited(event) {
|
|
127
|
+
if (dragging) {
|
|
128
|
+
setDragging(false);
|
|
129
|
+
onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(event.target.value);
|
|
130
|
+
}
|
|
99
131
|
};
|
|
100
132
|
|
|
101
133
|
var handlerInputChange = function handlerInputChange(event) {
|
|
@@ -110,11 +142,13 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
110
142
|
}
|
|
111
143
|
};
|
|
112
144
|
|
|
145
|
+
var isFirefox = navigator.userAgent.indexOf("Firefox") !== -1;
|
|
113
146
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
114
147
|
theme: colorsTheme.slider
|
|
115
148
|
}, /*#__PURE__*/_react["default"].createElement(Container, {
|
|
116
149
|
margin: margin,
|
|
117
|
-
size: size
|
|
150
|
+
size: size,
|
|
151
|
+
ref: ref
|
|
118
152
|
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
119
153
|
id: labelId,
|
|
120
154
|
disabled: disabled,
|
|
@@ -122,22 +156,29 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
122
156
|
}, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
|
|
123
157
|
disabled: disabled,
|
|
124
158
|
backgroundType: backgroundType
|
|
125
|
-
}, helperText), /*#__PURE__*/_react["default"].createElement(SliderContainer, {
|
|
126
|
-
backgroundType: backgroundType
|
|
127
|
-
}, showLimitsValues && /*#__PURE__*/_react["default"].createElement(MinLabelContainer, {
|
|
159
|
+
}, helperText), /*#__PURE__*/_react["default"].createElement(SliderContainer, null, showLimitsValues && /*#__PURE__*/_react["default"].createElement(MinLabelContainer, {
|
|
128
160
|
backgroundType: backgroundType,
|
|
129
161
|
disabled: disabled
|
|
130
|
-
}, minLabel), /*#__PURE__*/_react["default"].createElement(
|
|
162
|
+
}, minLabel), /*#__PURE__*/_react["default"].createElement(SliderInputContainer, null, /*#__PURE__*/_react["default"].createElement(SliderInput, {
|
|
163
|
+
role: "slider",
|
|
164
|
+
type: "range",
|
|
131
165
|
value: value != null && value >= 0 ? value : innerValue,
|
|
132
166
|
min: minValue,
|
|
133
167
|
max: maxValue,
|
|
134
|
-
onChange: handlerSliderChange,
|
|
135
|
-
onChangeCommitted: handleSliderOnChangeCommited,
|
|
136
168
|
step: step,
|
|
137
|
-
marks: marks || [],
|
|
138
169
|
disabled: disabled,
|
|
139
|
-
"aria-labelledby": labelId
|
|
140
|
-
|
|
170
|
+
"aria-labelledby": labelId,
|
|
171
|
+
"aria-orientation": "horizontal",
|
|
172
|
+
"aria-valuemax": maxValue,
|
|
173
|
+
"aria-valuemin": minValue,
|
|
174
|
+
"aria-valuenow": value != null && value >= 0 ? value : innerValue,
|
|
175
|
+
onChange: handleSliderChange,
|
|
176
|
+
onMouseUp: handleSliderOnChangeCommited,
|
|
177
|
+
onMouseDown: handleSliderDragging,
|
|
178
|
+
backgroundType: backgroundType
|
|
179
|
+
}), marks && /*#__PURE__*/_react["default"].createElement(MarksContainer, {
|
|
180
|
+
isFirefox: isFirefox
|
|
181
|
+
}, tickMarks)), showLimitsValues && /*#__PURE__*/_react["default"].createElement(MaxLabelContainer, {
|
|
141
182
|
backgroundType: backgroundType,
|
|
142
183
|
disabled: disabled,
|
|
143
184
|
step: step
|
|
@@ -148,7 +189,7 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
148
189
|
onChange: handlerInputChange,
|
|
149
190
|
size: "fillParent"
|
|
150
191
|
})))));
|
|
151
|
-
};
|
|
192
|
+
});
|
|
152
193
|
|
|
153
194
|
var sizes = {
|
|
154
195
|
medium: "360px",
|
|
@@ -160,6 +201,14 @@ var calculateWidth = function calculateWidth(margin, size) {
|
|
|
160
201
|
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
161
202
|
};
|
|
162
203
|
|
|
204
|
+
var getChromeStyles = function getChromeStyles() {
|
|
205
|
+
return "\n width: 100%;\n margin-right: 4px;";
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
var getFireFoxStyles = function getFireFoxStyles() {
|
|
209
|
+
return "\n width: calc(100% - 16px);\n margin-right: 3px;";
|
|
210
|
+
};
|
|
211
|
+
|
|
163
212
|
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) {
|
|
164
213
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
165
214
|
}, function (props) {
|
|
@@ -188,7 +237,7 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
|
|
|
188
237
|
return props.theme.labelLineHeight;
|
|
189
238
|
});
|
|
190
239
|
|
|
191
|
-
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) {
|
|
240
|
+
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) {
|
|
192
241
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
|
|
193
242
|
}, function (props) {
|
|
194
243
|
return props.theme.fontFamily;
|
|
@@ -202,83 +251,51 @@ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templat
|
|
|
202
251
|
return props.theme.helperTextLineHeight;
|
|
203
252
|
});
|
|
204
253
|
|
|
205
|
-
var
|
|
206
|
-
return props.
|
|
207
|
-
}, function (props) {
|
|
208
|
-
return props.theme.thumbHeight;
|
|
209
|
-
}, function (props) {
|
|
210
|
-
return props.theme.thumbWidth;
|
|
211
|
-
}, function (props) {
|
|
212
|
-
return props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor;
|
|
213
|
-
}, function (props) {
|
|
214
|
-
return props.theme.disabledThumbVerticalPosition;
|
|
215
|
-
}, function (props) {
|
|
216
|
-
return props.backgroundType === "dark" ? props.theme.disabledTrackLineColorOnDark : props.theme.disabledTrackLineColor;
|
|
217
|
-
}, function (props) {
|
|
218
|
-
return props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark : props.theme.disabledTotalLineColor;
|
|
219
|
-
}, function (props) {
|
|
220
|
-
return props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor;
|
|
254
|
+
var SliderInput = _styledComponents["default"].input(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n min-width: 240px;\n height: ", ";\n display: inline-block;\n vertical-align: middle;\n -webkit-appearance: none;\n background-color: ", ";\n background-image: ", ";\n background-repeat: no-repeat;\n background-size: ", ";\n border-radius: 5px;\n cursor: ", ";\n &::-webkit-slider-runnable-track {\n -webkit-appearance: none;\n box-shadow: none;\n border: none;\n background: transparent;\n margin: 0px -8px;\n }\n\n &::-webkit-slider-thumb {\n -webkit-appearance: none;\n border: none;\n height: ", ";\n width: ", ";\n border-radius: 25px;\n background: ", ";\n &:active {\n ", "\n }\n &:hover {\n ", "\n }\n }\n &::-moz-range-track {\n -webkit-appearance: none;\n box-shadow: none;\n border: none;\n background: transparent;\n }\n &::-moz-range-thumb {\n -webkit-appearance: none;\n border: none;\n height: ", ";\n width: ", ";\n border-radius: 25px;\n background: ", ";\n &:active {\n background: ", ";\n transform: scale(1.16667);\n }\n &:hover {\n ", "\n }\n }\n &:focus {\n outline: none;\n &::-webkit-slider-thumb {\n outline: ", "\n auto 1px;\n outline-offset: 2px;\n }\n &::-moz-range-thumb {\n outline: ", "\n auto 1px;\n outline-offset: 2px;\n }\n }\n"])), function (props) {
|
|
255
|
+
return props.theme.trackLineThickness;
|
|
221
256
|
}, function (props) {
|
|
222
|
-
return props.backgroundType === "dark" ? props.theme.
|
|
257
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark + "61" : props.theme.disabledTotalLineColor + "61" : props.backgroundType === "dark" ? props.theme.totalLineColorOnDark + "61" : props.theme.totalLineColor;
|
|
223
258
|
}, function (props) {
|
|
224
|
-
return props.theme.
|
|
259
|
+
return props.disabled ? props.backgroundType === "dark" ? "linear-gradient(".concat(props.theme.disabledTrackLineColorOnDark, ", ").concat(props.theme.disabledTrackLineColorOnDark, ")") : "linear-gradient(".concat(props.theme.disabledTrackLineColor, ", ").concat(props.theme.disabledTrackLineColor, ")") : props.backgroundType === "dark" ? "linear-gradient(".concat(props.theme.trackLineColorOnDark, ", ").concat(props.theme.trackLineColorOnDark, ")") : "linear-gradient(".concat(props.theme.trackLineColor, ", ").concat(props.theme.trackLineColor, ")");
|
|
225
260
|
}, function (props) {
|
|
226
|
-
return props.
|
|
261
|
+
return (props.value - props.min) * 100 / (props.max - props.min) + "% 100%";
|
|
227
262
|
}, function (props) {
|
|
228
|
-
return props.
|
|
263
|
+
return props.disabled ? "not-allowed" : "pointer";
|
|
229
264
|
}, function (props) {
|
|
230
265
|
return props.theme.thumbHeight;
|
|
231
266
|
}, function (props) {
|
|
232
267
|
return props.theme.thumbWidth;
|
|
233
268
|
}, function (props) {
|
|
234
|
-
return props.backgroundType === "dark" ? props.theme.thumbBackgroundColorOnDark : props.theme.thumbBackgroundColor;
|
|
235
|
-
}, function (props) {
|
|
236
|
-
return props.theme.thumbVerticalPosition;
|
|
237
|
-
}, function (props) {
|
|
238
|
-
return props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
|
|
269
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor : props.backgroundType === "dark" ? props.theme.thumbBackgroundColorOnDark : props.theme.thumbBackgroundColor;
|
|
239
270
|
}, function (props) {
|
|
240
|
-
|
|
271
|
+
if (!props.disabled) {
|
|
272
|
+
return "\n background: ".concat(props.backgroundType === "dark" ? props.theme.activeThumbBackgroundColorOnDark : props.theme.activeThumbBackgroundColor, ";\n transform: scale(1.16667);");
|
|
273
|
+
}
|
|
241
274
|
}, function (props) {
|
|
242
|
-
|
|
275
|
+
if (!props.disabled) {
|
|
276
|
+
return "height: ".concat(props.theme.hoverThumbHeight, ";\n width: ").concat(props.theme.hoverThumbWidth, ";\n transform: scale(1.16667);\n transform-origin: center center;\n background: ").concat(props.backgroundType === "dark" ? props.theme.hoverThumbBackgroundColorOnDark : props.theme.hoverThumbBackgroundColor, ";");
|
|
277
|
+
}
|
|
243
278
|
}, function (props) {
|
|
244
|
-
return props.theme.
|
|
245
|
-
}, function (props) {
|
|
246
|
-
return props.theme.hoverThumbHeight;
|
|
279
|
+
return props.theme.thumbHeight;
|
|
247
280
|
}, function (props) {
|
|
248
|
-
return props.theme.
|
|
281
|
+
return props.theme.thumbWidth;
|
|
249
282
|
}, function (props) {
|
|
250
|
-
return props.theme.
|
|
283
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledThumbBackgroundColorOnDark : props.theme.disabledThumbBackgroundColor : props.backgroundType === "dark" ? props.theme.thumbBackgroundColorOnDark : props.theme.thumbBackgroundColor;
|
|
251
284
|
}, function (props) {
|
|
252
285
|
return props.backgroundType === "dark" ? props.theme.activeThumbBackgroundColorOnDark : props.theme.activeThumbBackgroundColor;
|
|
253
286
|
}, function (props) {
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
287
|
+
if (!props.disabled) {
|
|
288
|
+
return "height: ".concat(props.theme.hoverThumbHeight, ";\n width: ").concat(props.theme.hoverThumbWidth, ";\n transform: scale(1.16667);\n transform-origin: center center;\n background: ").concat(props.backgroundType === "dark" ? props.theme.hoverThumbBackgroundColorOnDark : props.theme.hoverThumbBackgroundColor, ";");
|
|
289
|
+
}
|
|
257
290
|
}, function (props) {
|
|
258
|
-
return props.theme.
|
|
259
|
-
}, function (props) {
|
|
260
|
-
return props.theme.trackLineVerticalPosition;
|
|
261
|
-
}, function (props) {
|
|
262
|
-
return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
|
|
263
|
-
}, function (props) {
|
|
264
|
-
return props.backgroundType === "dark" ? props.theme.totalLineColorOnDark : props.theme.totalLineColor;
|
|
265
|
-
}, function (props) {
|
|
266
|
-
return props.theme.totalLineThickness;
|
|
267
|
-
}, function (props) {
|
|
268
|
-
return props.theme.totalLineVerticalPosition;
|
|
269
|
-
}, function (props) {
|
|
270
|
-
return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
|
|
271
|
-
}, function (props) {
|
|
272
|
-
return props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
|
|
291
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledFocusColorOnDark : props.theme.disabledFocusColor : props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
|
|
273
292
|
}, function (props) {
|
|
274
|
-
return props.theme.
|
|
275
|
-
}, function (props) {
|
|
276
|
-
return props.theme.tickWidth;
|
|
277
|
-
}, function (props) {
|
|
278
|
-
return props.theme.tickVerticalPosition;
|
|
293
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledFocusColorOnDark : props.theme.disabledFocusColor : props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
|
|
279
294
|
});
|
|
280
295
|
|
|
281
|
-
var
|
|
296
|
+
var SliderContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 48px;\n align-items: center;\n"])));
|
|
297
|
+
|
|
298
|
+
var LimitLabelContainer = _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"])), function (props) {
|
|
282
299
|
return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
|
|
283
300
|
}, function (props) {
|
|
284
301
|
return props.theme.fontFamily;
|
|
@@ -290,27 +307,34 @@ var MinLabelContainer = _styledComponents["default"].span(_templateObject5 || (_
|
|
|
290
307
|
return props.theme.limitValuesFontWeight;
|
|
291
308
|
}, function (props) {
|
|
292
309
|
return props.theme.limitValuesFontLetterSpacing;
|
|
293
|
-
}
|
|
310
|
+
});
|
|
311
|
+
|
|
312
|
+
var MinLabelContainer = (0, _styledComponents["default"])(LimitLabelContainer)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n"])), function (props) {
|
|
294
313
|
return props.theme.floorLabelMarginRight;
|
|
295
314
|
});
|
|
315
|
+
var MaxLabelContainer = (0, _styledComponents["default"])(LimitLabelContainer)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n"])), function (props) {
|
|
316
|
+
return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
|
|
317
|
+
});
|
|
296
318
|
|
|
297
|
-
var
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
return props.
|
|
301
|
-
}
|
|
302
|
-
|
|
319
|
+
var SliderInputContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n width: 100%;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: -2px;\n padding-top: 1px;\n z-index: 0;\n"])));
|
|
320
|
+
|
|
321
|
+
var MarksContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n position: absolute;\n pointer-events: none;\n height: 100%;\n display: flex;\n align-items: center;\n"])), function (props) {
|
|
322
|
+
return props.isFirefox ? getFireFoxStyles() : getChromeStyles();
|
|
323
|
+
});
|
|
324
|
+
|
|
325
|
+
var TickMark = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n background: ", ";\n height: ", ";\n width: ", ";\n border-radius: 18px;\n left: ", ";\n z-index: ", ";\n"])), function (props) {
|
|
326
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor : props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
|
|
303
327
|
}, function (props) {
|
|
304
|
-
return props.theme.
|
|
328
|
+
return props.theme.tickHeight;
|
|
305
329
|
}, function (props) {
|
|
306
|
-
return props.theme.
|
|
330
|
+
return props.theme.tickWidth;
|
|
307
331
|
}, function (props) {
|
|
308
|
-
return props.
|
|
332
|
+
return "calc(".concat(props.stepPosition, " * 100%)");
|
|
309
333
|
}, function (props) {
|
|
310
|
-
return props.
|
|
334
|
+
return "".concat(props.stepPosition <= props.stepValue ? "-1" : "0");
|
|
311
335
|
});
|
|
312
336
|
|
|
313
|
-
var StyledTextInput = _styledComponents["default"].div(
|
|
337
|
+
var StyledTextInput = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n max-width: 70px;\n"])), function (props) {
|
|
314
338
|
return props.theme.inputMarginLeft;
|
|
315
339
|
});
|
|
316
340
|
|
|
@@ -4,6 +4,7 @@ import { BackgroundColorProvider } from "../BackgroundColorContext";
|
|
|
4
4
|
import Title from "../../.storybook/components/Title";
|
|
5
5
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
6
6
|
import DarkContainer from "../../.storybook/components/DarkSection";
|
|
7
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
7
8
|
|
|
8
9
|
export default {
|
|
9
10
|
title: "Slider",
|
|
@@ -12,6 +13,14 @@ export default {
|
|
|
12
13
|
|
|
13
14
|
const labelFormat = (value) => `${value}E100000000000000000000000`;
|
|
14
15
|
|
|
16
|
+
const opinionatedTheme = {
|
|
17
|
+
slider: {
|
|
18
|
+
baseColor: "#0067b3",
|
|
19
|
+
fontColor: "#000000",
|
|
20
|
+
totalLineColor: "#e6e6e6",
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
|
|
15
24
|
export const Chromatic = () => (
|
|
16
25
|
<>
|
|
17
26
|
<Title title="States" theme="light" level={2} />
|
|
@@ -171,7 +180,61 @@ export const Chromatic = () => (
|
|
|
171
180
|
</ExampleContainer>
|
|
172
181
|
<ExampleContainer>
|
|
173
182
|
<Title title="Large limit values labels" theme="light" level={4} />
|
|
174
|
-
<DxcSlider
|
|
183
|
+
<DxcSlider
|
|
184
|
+
label="Slider"
|
|
185
|
+
helperText="Help message"
|
|
186
|
+
showLimitsValues
|
|
187
|
+
labelFormatCallback={labelFormat}
|
|
188
|
+
size="large"
|
|
189
|
+
/>
|
|
190
|
+
</ExampleContainer>
|
|
191
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
192
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
193
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
194
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
195
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
196
|
+
</HalstackProvider>
|
|
197
|
+
</ExampleContainer>
|
|
198
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
199
|
+
<Title title="Active" theme="light" level={4} />
|
|
200
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
201
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
202
|
+
</HalstackProvider>
|
|
203
|
+
</ExampleContainer>
|
|
204
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
205
|
+
<Title title="Focused" theme="light" level={4} />
|
|
206
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
207
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
208
|
+
</HalstackProvider>
|
|
209
|
+
</ExampleContainer>
|
|
210
|
+
<ExampleContainer>
|
|
211
|
+
<Title title="Disabled discrete slider with input" theme="light" level={4} />{" "}
|
|
212
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
213
|
+
<DxcSlider
|
|
214
|
+
label="Slider"
|
|
215
|
+
helperText="Help message"
|
|
216
|
+
disabled
|
|
217
|
+
defaultValue={40}
|
|
218
|
+
minValue={0}
|
|
219
|
+
maxValue={50}
|
|
220
|
+
showLimitsValues
|
|
221
|
+
showInput
|
|
222
|
+
marks
|
|
223
|
+
step={10}
|
|
224
|
+
/>
|
|
225
|
+
</HalstackProvider>
|
|
226
|
+
</ExampleContainer>
|
|
227
|
+
<ExampleContainer>
|
|
228
|
+
<Title title="Continuous slider" theme="light" level={4} />
|
|
229
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
230
|
+
<DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
|
|
231
|
+
</HalstackProvider>
|
|
232
|
+
</ExampleContainer>
|
|
233
|
+
<ExampleContainer>
|
|
234
|
+
<Title title="Discrete slider" theme="light" level={4} />
|
|
235
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
236
|
+
<DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
|
|
237
|
+
</HalstackProvider>
|
|
175
238
|
</ExampleContainer>
|
|
176
239
|
</>
|
|
177
240
|
);
|