@dxc-technology/halstack-react 0.0.0-7550efd → 0.0.0-757bc34
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 +3 -3
- package/BackgroundColorContext.js +6 -18
- package/HalstackContext.d.ts +1347 -6
- package/HalstackContext.js +125 -110
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +116 -157
- package/accordion/Accordion.stories.tsx +101 -125
- package/accordion/Accordion.test.js +25 -41
- package/accordion/types.d.ts +5 -16
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +30 -98
- package/accordion-group/AccordionGroup.stories.tsx +94 -67
- package/accordion-group/AccordionGroup.test.js +52 -105
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/types.d.ts +11 -16
- package/alert/Alert.js +19 -55
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +29 -46
- package/alert/types.d.ts +5 -5
- package/badge/Badge.js +4 -17
- package/badge/types.d.ts +1 -1
- package/bleed/Bleed.js +13 -21
- package/bleed/Bleed.stories.tsx +1 -0
- package/bleed/types.d.ts +2 -2
- package/box/Box.d.ts +1 -1
- package/box/Box.js +18 -56
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -14
- package/bulleted-list/BulletedList.js +11 -35
- package/bulleted-list/BulletedList.stories.tsx +8 -92
- package/bulleted-list/types.d.ts +32 -5
- package/button/Button.d.ts +1 -1
- package/button/Button.js +65 -100
- package/button/Button.stories.tsx +152 -91
- package/button/Button.test.js +18 -17
- package/button/types.d.ts +8 -4
- package/card/Card.d.ts +1 -1
- package/card/Card.js +48 -89
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +11 -22
- package/card/types.d.ts +6 -11
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +141 -178
- package/checkbox/Checkbox.stories.tsx +128 -94
- package/checkbox/Checkbox.test.js +160 -39
- package/checkbox/types.d.ts +11 -3
- package/chip/Chip.js +39 -79
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +16 -31
- package/chip/types.d.ts +4 -4
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +237 -0
- package/common/coreTokens.js +184 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +6 -12
- package/common/variables.d.ts +1499 -0
- package/common/variables.js +1008 -1145
- package/container/Container.d.ts +4 -0
- package/container/Container.js +198 -0
- package/container/Container.stories.tsx +229 -0
- package/container/types.d.ts +74 -0
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +214 -0
- package/date-input/DateInput.js +150 -299
- package/date-input/DateInput.stories.tsx +203 -56
- package/date-input/DateInput.test.js +700 -371
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +115 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +58 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +100 -0
- package/date-input/types.d.ts +72 -15
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +61 -116
- package/dialog/Dialog.stories.tsx +320 -166
- package/dialog/Dialog.test.js +269 -32
- package/dialog/types.d.ts +18 -25
- package/dropdown/Dropdown.js +72 -125
- package/dropdown/Dropdown.stories.tsx +210 -84
- package/dropdown/Dropdown.test.js +410 -402
- package/dropdown/DropdownMenu.js +20 -37
- package/dropdown/DropdownMenuItem.js +10 -35
- package/dropdown/types.d.ts +17 -19
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +241 -355
- package/file-input/FileInput.stories.tsx +123 -12
- package/file-input/FileInput.test.js +369 -367
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +45 -96
- package/file-input/types.d.ts +25 -8
- package/flex/Flex.d.ts +1 -1
- package/flex/Flex.js +40 -40
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +84 -8
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +53 -104
- package/footer/Footer.stories.tsx +41 -19
- package/footer/Footer.test.js +33 -57
- package/footer/Icons.d.ts +2 -2
- package/footer/Icons.js +2 -7
- package/footer/types.d.ts +21 -28
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +76 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +41 -116
- package/header/Header.stories.tsx +118 -39
- package/header/Header.test.js +13 -26
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +2 -7
- package/header/types.d.ts +5 -19
- package/heading/Heading.js +10 -32
- package/heading/Heading.test.js +71 -88
- package/heading/types.d.ts +7 -7
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +127 -0
- package/image/types.d.ts +72 -0
- package/inset/Inset.js +13 -21
- package/inset/Inset.stories.tsx +2 -1
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +5 -5
- package/layout/ApplicationLayout.js +29 -66
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +8 -5
- package/layout/Icons.js +51 -59
- package/layout/SidenavContext.d.ts +1 -1
- package/layout/SidenavContext.js +3 -9
- package/layout/types.d.ts +5 -6
- package/link/Link.js +25 -46
- package/link/Link.stories.tsx +60 -0
- package/link/Link.test.js +24 -44
- package/link/types.d.ts +14 -14
- package/main.d.ts +6 -3
- package/main.js +25 -51
- package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
- package/{tabs-nav → nav-tabs}/NavTabs.js +17 -52
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +111 -7
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +37 -44
- package/nav-tabs/Tab.js +117 -0
- package/{tabs-nav → nav-tabs}/types.d.ts +14 -15
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +26 -35
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +701 -377
- package/number-input/types.d.ts +11 -5
- package/package.json +37 -40
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +21 -47
- package/paginator/Paginator.js +22 -55
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +253 -226
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +6 -17
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +35 -0
- package/password-input/PasswordInput.js +57 -126
- package/password-input/PasswordInput.stories.tsx +1 -32
- package/password-input/PasswordInput.test.js +160 -142
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +21 -47
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
- package/progress-bar/ProgressBar.test.js +36 -53
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.js +15 -39
- package/quick-nav/QuickNav.stories.tsx +112 -20
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +59 -76
- package/radio-group/RadioGroup.js +59 -105
- package/radio-group/RadioGroup.stories.tsx +132 -18
- package/radio-group/RadioGroup.test.js +518 -457
- package/radio-group/types.d.ts +10 -10
- package/resultset-table/Icons.d.ts +7 -0
- package/resultset-table/Icons.js +47 -0
- package/resultset-table/ResultsetTable.js +159 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +50 -25
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +101 -144
- package/{resultsetTable → resultset-table}/types.d.ts +7 -7
- package/resultset-table/types.js +5 -0
- package/select/Icons.d.ts +7 -7
- package/select/Icons.js +1 -5
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +17 -73
- package/select/Option.js +20 -50
- package/select/Select.js +95 -156
- package/select/Select.stories.tsx +497 -153
- package/select/Select.test.js +1934 -1775
- package/select/types.d.ts +16 -17
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +47 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +80 -149
- package/sidenav/Sidenav.stories.tsx +165 -63
- package/sidenav/Sidenav.test.js +3 -10
- package/sidenav/types.d.ts +31 -28
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +57 -96
- package/slider/Slider.test.js +108 -104
- package/slider/types.d.ts +7 -3
- package/spinner/Spinner.js +27 -63
- package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
- package/spinner/Spinner.test.js +26 -35
- package/spinner/types.d.ts +3 -3
- package/switch/Switch.d.ts +3 -3
- package/switch/Switch.js +112 -144
- package/switch/Switch.stories.tsx +33 -34
- package/switch/Switch.test.js +70 -102
- package/switch/types.d.ts +8 -3
- package/table/Table.js +7 -26
- package/table/{Table.stories.jsx → Table.stories.tsx} +80 -1
- package/table/Table.test.js +3 -8
- package/table/types.d.ts +8 -8
- package/tabs/Tab.js +22 -44
- package/tabs/Tabs.js +59 -141
- package/tabs/Tabs.stories.tsx +45 -5
- package/tabs/Tabs.test.js +66 -123
- package/tabs/types.d.ts +19 -19
- package/tag/Tag.js +29 -61
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +20 -31
- package/tag/types.d.ts +7 -7
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +56 -0
- package/text-input/Suggestion.js +40 -28
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +89 -0
- package/text-input/TextInput.js +272 -441
- package/text-input/TextInput.stories.tsx +266 -274
- package/text-input/TextInput.test.js +1402 -1375
- package/text-input/types.d.ts +43 -16
- package/textarea/Textarea.js +63 -100
- package/textarea/Textarea.stories.tsx +175 -0
- package/textarea/Textarea.test.js +152 -183
- package/textarea/types.d.ts +9 -5
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +95 -106
- package/toggle-group/ToggleGroup.stories.tsx +49 -4
- package/toggle-group/ToggleGroup.test.js +69 -88
- package/toggle-group/types.d.ts +26 -17
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +15 -123
- package/typography/Typography.stories.tsx +1 -1
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +1251 -1
- package/useTheme.js +2 -9
- package/useTranslatedLabels.d.ts +84 -1
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +94 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +121 -0
- package/wizard/Wizard.js +16 -51
- package/wizard/Wizard.stories.tsx +20 -0
- package/wizard/Wizard.test.js +54 -81
- package/wizard/types.d.ts +8 -9
- package/card/ice-cream.jpg +0 -0
- package/common/RequiredComponent.js +0 -32
- package/number-input/NumberInputContext.d.ts +0 -4
- package/number-input/NumberInputContext.js +0 -19
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/resultsetTable/ResultsetTable.js +0 -254
- package/slider/Slider.stories.tsx +0 -183
- package/tabs-nav/Tab.js +0 -130
- package/textarea/Textarea.stories.jsx +0 -157
- /package/{resultsetTable → container}/types.js +0 -0
- /package/{tabs-nav → grid}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
- /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
package/slider/Slider.js
CHANGED
|
@@ -1,83 +1,67 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
-
|
|
14
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
-
|
|
16
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
-
|
|
18
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
-
|
|
20
13
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
|
-
|
|
22
14
|
var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
|
|
23
|
-
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
var _utils = require("../common/utils.js");
|
|
27
|
-
|
|
15
|
+
var _variables = require("../common/variables");
|
|
16
|
+
var _utils = require("../common/utils");
|
|
28
17
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
29
|
-
|
|
30
18
|
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
31
|
-
|
|
19
|
+
var _uuid = require("uuid");
|
|
32
20
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
33
|
-
|
|
34
|
-
function
|
|
35
|
-
|
|
36
|
-
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; }
|
|
37
|
-
|
|
38
|
-
var DxcSlider = function DxcSlider(_ref) {
|
|
21
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
22
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
23
|
+
var DxcSlider = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
39
24
|
var _ref$label = _ref.label,
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
25
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
26
|
+
_ref$name = _ref.name,
|
|
27
|
+
name = _ref$name === void 0 ? "" : _ref$name,
|
|
28
|
+
defaultValue = _ref.defaultValue,
|
|
29
|
+
value = _ref.value,
|
|
30
|
+
_ref$helperText = _ref.helperText,
|
|
31
|
+
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
32
|
+
_ref$minValue = _ref.minValue,
|
|
33
|
+
minValue = _ref$minValue === void 0 ? 0 : _ref$minValue,
|
|
34
|
+
_ref$maxValue = _ref.maxValue,
|
|
35
|
+
maxValue = _ref$maxValue === void 0 ? 100 : _ref$maxValue,
|
|
36
|
+
_ref$step = _ref.step,
|
|
37
|
+
step = _ref$step === void 0 ? 1 : _ref$step,
|
|
38
|
+
_ref$showLimitsValues = _ref.showLimitsValues,
|
|
39
|
+
showLimitsValues = _ref$showLimitsValues === void 0 ? false : _ref$showLimitsValues,
|
|
40
|
+
_ref$showInput = _ref.showInput,
|
|
41
|
+
showInput = _ref$showInput === void 0 ? false : _ref$showInput,
|
|
42
|
+
_ref$disabled = _ref.disabled,
|
|
43
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
44
|
+
_ref$marks = _ref.marks,
|
|
45
|
+
marks = _ref$marks === void 0 ? false : _ref$marks,
|
|
46
|
+
onChange = _ref.onChange,
|
|
47
|
+
onDragEnd = _ref.onDragEnd,
|
|
48
|
+
labelFormatCallback = _ref.labelFormatCallback,
|
|
49
|
+
margin = _ref.margin,
|
|
50
|
+
_ref$size = _ref.size,
|
|
51
|
+
size = _ref$size === void 0 ? "fillParent" : _ref$size;
|
|
68
52
|
var _useState = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : 0),
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
53
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
54
|
+
innerValue = _useState2[0],
|
|
55
|
+
setInnerValue = _useState2[1];
|
|
73
56
|
var _useState3 = (0, _react.useState)(false),
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
57
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
58
|
+
dragging = _useState4[0],
|
|
59
|
+
setDragging = _useState4[1];
|
|
78
60
|
var colorsTheme = (0, _useTheme["default"])();
|
|
79
61
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
80
|
-
var
|
|
62
|
+
var _useState5 = (0, _react.useState)("label-".concat((0, _uuid.v4)())),
|
|
63
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
|
|
64
|
+
labelId = _useState6[0];
|
|
81
65
|
var minLabel = (0, _react.useMemo)(function () {
|
|
82
66
|
return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
|
|
83
67
|
}, [labelFormatCallback, minValue]);
|
|
@@ -89,58 +73,51 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
89
73
|
var numberOfMarks = Math.floor(maxValue / step - minValue / step);
|
|
90
74
|
var index = 0;
|
|
91
75
|
var range = maxValue - minValue;
|
|
92
|
-
|
|
93
76
|
if (marks) {
|
|
94
77
|
while (index <= numberOfMarks) {
|
|
95
78
|
ticks.push( /*#__PURE__*/_react["default"].createElement(TickMark, {
|
|
96
79
|
disabled: disabled,
|
|
97
|
-
stepPosition: step * index / range
|
|
98
|
-
backgroundType: backgroundType
|
|
80
|
+
stepPosition: step * index / range,
|
|
81
|
+
backgroundType: backgroundType,
|
|
82
|
+
stepValue: (value !== null && value !== void 0 ? value : innerValue) / maxValue
|
|
99
83
|
}));
|
|
100
84
|
index++;
|
|
101
85
|
}
|
|
102
|
-
|
|
103
86
|
return ticks;
|
|
104
87
|
} else {
|
|
105
88
|
return null;
|
|
106
89
|
}
|
|
107
|
-
}, [minValue, maxValue, step]);
|
|
108
|
-
|
|
90
|
+
}, [minValue, maxValue, step, value, innerValue]);
|
|
109
91
|
var handleSliderChange = function handleSliderChange(event) {
|
|
110
92
|
var valueToCheck = event.target.value;
|
|
111
93
|
(valueToCheck !== value || valueToCheck !== innerValue) && setInnerValue(valueToCheck);
|
|
112
94
|
onChange === null || onChange === void 0 ? void 0 : onChange(valueToCheck);
|
|
113
95
|
};
|
|
114
|
-
|
|
115
96
|
var handleSliderDragging = function handleSliderDragging() {
|
|
116
97
|
setDragging(true);
|
|
117
98
|
};
|
|
118
|
-
|
|
119
99
|
var handleSliderOnChangeCommited = function handleSliderOnChangeCommited(event) {
|
|
120
100
|
if (dragging) {
|
|
121
101
|
setDragging(false);
|
|
122
102
|
onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(event.target.value);
|
|
123
103
|
}
|
|
124
104
|
};
|
|
125
|
-
|
|
126
105
|
var handlerInputChange = function handlerInputChange(event) {
|
|
127
106
|
var intValue = parseInt(event.value, 10);
|
|
128
|
-
|
|
129
107
|
if (value == null) {
|
|
130
108
|
if (!Number.isNaN(intValue)) setInnerValue(intValue > maxValue ? maxValue : intValue);
|
|
131
109
|
}
|
|
132
|
-
|
|
133
110
|
if (!Number.isNaN(intValue)) {
|
|
134
111
|
onChange === null || onChange === void 0 ? void 0 : onChange(intValue > maxValue ? maxValue : intValue);
|
|
135
112
|
}
|
|
136
113
|
};
|
|
137
|
-
|
|
138
114
|
var isFirefox = navigator.userAgent.indexOf("Firefox") !== -1;
|
|
139
115
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
140
116
|
theme: colorsTheme.slider
|
|
141
117
|
}, /*#__PURE__*/_react["default"].createElement(Container, {
|
|
142
118
|
margin: margin,
|
|
143
|
-
size: size
|
|
119
|
+
size: size,
|
|
120
|
+
ref: ref
|
|
144
121
|
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
145
122
|
id: labelId,
|
|
146
123
|
disabled: disabled,
|
|
@@ -158,7 +135,6 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
158
135
|
min: minValue,
|
|
159
136
|
max: maxValue,
|
|
160
137
|
step: step,
|
|
161
|
-
marks: marks,
|
|
162
138
|
disabled: disabled,
|
|
163
139
|
"aria-labelledby": labelId,
|
|
164
140
|
"aria-orientation": "horizontal",
|
|
@@ -182,26 +158,21 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
182
158
|
onChange: handlerInputChange,
|
|
183
159
|
size: "fillParent"
|
|
184
160
|
})))));
|
|
185
|
-
};
|
|
186
|
-
|
|
161
|
+
});
|
|
187
162
|
var sizes = {
|
|
188
163
|
medium: "360px",
|
|
189
164
|
large: "480px",
|
|
190
165
|
fillParent: "100%"
|
|
191
166
|
};
|
|
192
|
-
|
|
193
167
|
var calculateWidth = function calculateWidth(margin, size) {
|
|
194
168
|
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
195
169
|
};
|
|
196
|
-
|
|
197
170
|
var getChromeStyles = function getChromeStyles() {
|
|
198
171
|
return "\n width: 100%;\n margin-right: 4px;";
|
|
199
172
|
};
|
|
200
|
-
|
|
201
173
|
var getFireFoxStyles = function getFireFoxStyles() {
|
|
202
174
|
return "\n width: calc(100% - 16px);\n margin-right: 3px;";
|
|
203
175
|
};
|
|
204
|
-
|
|
205
176
|
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) {
|
|
206
177
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
207
178
|
}, function (props) {
|
|
@@ -215,7 +186,6 @@ var Container = _styledComponents["default"].div(_templateObject || (_templateOb
|
|
|
215
186
|
}, function (props) {
|
|
216
187
|
return calculateWidth(props.margin, props.size);
|
|
217
188
|
});
|
|
218
|
-
|
|
219
189
|
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) {
|
|
220
190
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
|
|
221
191
|
}, function (props) {
|
|
@@ -229,7 +199,6 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
|
|
|
229
199
|
}, function (props) {
|
|
230
200
|
return props.theme.labelLineHeight;
|
|
231
201
|
});
|
|
232
|
-
|
|
233
202
|
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) {
|
|
234
203
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
|
|
235
204
|
}, function (props) {
|
|
@@ -243,11 +212,10 @@ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templat
|
|
|
243
212
|
}, function (props) {
|
|
244
213
|
return props.theme.helperTextLineHeight;
|
|
245
214
|
});
|
|
246
|
-
|
|
247
|
-
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 z-index: 1;\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) {
|
|
215
|
+
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) {
|
|
248
216
|
return props.theme.trackLineThickness;
|
|
249
217
|
}, function (props) {
|
|
250
|
-
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark + "61" : props.theme.disabledTotalLineColor + "61" : props.backgroundType === "dark" ? props.theme.totalLineColorOnDark + "61" : props.theme.totalLineColor
|
|
218
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledTotalLineColorOnDark + "61" : props.theme.disabledTotalLineColor + "61" : props.backgroundType === "dark" ? props.theme.totalLineColorOnDark + "61" : props.theme.totalLineColor;
|
|
251
219
|
}, function (props) {
|
|
252
220
|
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, ")");
|
|
253
221
|
}, function (props) {
|
|
@@ -285,9 +253,7 @@ var SliderInput = _styledComponents["default"].input(_templateObject4 || (_templ
|
|
|
285
253
|
}, function (props) {
|
|
286
254
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledFocusColorOnDark : props.theme.disabledFocusColor : props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
|
|
287
255
|
});
|
|
288
|
-
|
|
289
256
|
var SliderContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 48px;\n align-items: center;\n"])));
|
|
290
|
-
|
|
291
257
|
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) {
|
|
292
258
|
return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
|
|
293
259
|
}, function (props) {
|
|
@@ -301,33 +267,28 @@ var LimitLabelContainer = _styledComponents["default"].span(_templateObject6 ||
|
|
|
301
267
|
}, function (props) {
|
|
302
268
|
return props.theme.limitValuesFontLetterSpacing;
|
|
303
269
|
});
|
|
304
|
-
|
|
305
270
|
var MinLabelContainer = (0, _styledComponents["default"])(LimitLabelContainer)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n"])), function (props) {
|
|
306
271
|
return props.theme.floorLabelMarginRight;
|
|
307
272
|
});
|
|
308
273
|
var MaxLabelContainer = (0, _styledComponents["default"])(LimitLabelContainer)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n"])), function (props) {
|
|
309
274
|
return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
|
|
310
275
|
});
|
|
311
|
-
|
|
312
|
-
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"])));
|
|
313
|
-
|
|
276
|
+
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"])));
|
|
314
277
|
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) {
|
|
315
278
|
return props.isFirefox ? getFireFoxStyles() : getChromeStyles();
|
|
316
279
|
});
|
|
317
|
-
|
|
318
|
-
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"])), function (props) {
|
|
280
|
+
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) {
|
|
319
281
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledTickBackgroundColorOnDark : props.theme.disabledTickBackgroundColor : props.backgroundType === "dark" ? props.theme.tickBackgroundColorOnDark : props.theme.tickBackgroundColor;
|
|
320
282
|
}, function (props) {
|
|
321
283
|
return props.theme.tickHeight;
|
|
322
284
|
}, function (props) {
|
|
323
285
|
return props.theme.tickWidth;
|
|
324
286
|
}, function (props) {
|
|
325
|
-
return "".concat(props.stepPosition, "%");
|
|
287
|
+
return "calc(".concat(props.stepPosition, " * 100%)");
|
|
288
|
+
}, function (props) {
|
|
289
|
+
return "".concat(props.stepPosition <= props.stepValue ? "-1" : "0");
|
|
326
290
|
});
|
|
327
|
-
|
|
328
291
|
var StyledTextInput = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n max-width: 70px;\n"])), function (props) {
|
|
329
292
|
return props.theme.inputMarginLeft;
|
|
330
293
|
});
|
|
331
|
-
|
|
332
|
-
var _default = DxcSlider;
|
|
333
|
-
exports["default"] = _default;
|
|
294
|
+
var _default = exports["default"] = DxcSlider;
|
package/slider/Slider.test.js
CHANGED
|
@@ -1,26 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
4
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
5
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
5
6
|
var _react = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
|
-
|
|
9
8
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
var _Slider = _interopRequireDefault(require("./Slider.tsx"));
|
|
10
|
+
// Mocking DOMRect for Radix Primitive Popover
|
|
11
|
+
global.globalThis = global;
|
|
12
|
+
global.DOMRect = {
|
|
13
|
+
fromRect: function fromRect() {
|
|
14
|
+
return {
|
|
15
|
+
top: 0,
|
|
16
|
+
left: 0,
|
|
17
|
+
bottom: 0,
|
|
18
|
+
right: 0,
|
|
19
|
+
width: 0,
|
|
20
|
+
height: 0
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
global.ResizeObserver = /*#__PURE__*/function () {
|
|
25
|
+
function ResizeObserver() {
|
|
26
|
+
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
27
|
+
}
|
|
28
|
+
(0, _createClass2["default"])(ResizeObserver, [{
|
|
29
|
+
key: "observe",
|
|
30
|
+
value: function observe() {}
|
|
31
|
+
}, {
|
|
32
|
+
key: "unobserve",
|
|
33
|
+
value: function unobserve() {}
|
|
34
|
+
}, {
|
|
35
|
+
key: "disconnect",
|
|
36
|
+
value: function disconnect() {}
|
|
37
|
+
}]);
|
|
38
|
+
return ResizeObserver;
|
|
39
|
+
}();
|
|
13
40
|
describe("Slider component tests", function () {
|
|
14
41
|
test("Slider renders with correct text and label id", function () {
|
|
15
42
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
43
|
+
label: "label",
|
|
44
|
+
minValue: 0,
|
|
45
|
+
maxValue: 100,
|
|
46
|
+
showLimitsValues: true
|
|
47
|
+
})),
|
|
48
|
+
getByText = _render.getByText,
|
|
49
|
+
getByRole = _render.getByRole;
|
|
24
50
|
expect(getByText("0")).toBeTruthy();
|
|
25
51
|
expect(getByText("100")).toBeTruthy();
|
|
26
52
|
var sliderId = getByText("label").getAttribute("id");
|
|
@@ -29,14 +55,13 @@ describe("Slider component tests", function () {
|
|
|
29
55
|
});
|
|
30
56
|
test("Slider renders with correct initial value when it is uncontrolled", function () {
|
|
31
57
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
58
|
+
defaultValue: 30,
|
|
59
|
+
minValue: 0,
|
|
60
|
+
maxValue: 100,
|
|
61
|
+
showLimitsValues: true,
|
|
62
|
+
showInput: true
|
|
63
|
+
})),
|
|
64
|
+
getByRole = _render2.getByRole;
|
|
40
65
|
var slider = getByRole("slider");
|
|
41
66
|
var input = getByRole("textbox");
|
|
42
67
|
expect(slider.getAttribute("aria-valuenow")).toBe("30");
|
|
@@ -44,44 +69,38 @@ describe("Slider component tests", function () {
|
|
|
44
69
|
});
|
|
45
70
|
test("Slider correct limit values", function () {
|
|
46
71
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
72
|
+
defaultValue: 125,
|
|
73
|
+
minValue: 30,
|
|
74
|
+
maxValue: 125,
|
|
75
|
+
showLimitsValues: true
|
|
76
|
+
})),
|
|
77
|
+
getByRole = _render3.getByRole,
|
|
78
|
+
getByText = _render3.getByText;
|
|
55
79
|
var slider = getByRole("slider");
|
|
56
80
|
expect(slider.getAttribute("aria-valuemin")).toBe("30");
|
|
57
81
|
expect(slider.getAttribute("aria-valuemax")).toBe("125");
|
|
58
|
-
|
|
59
82
|
_userEvent["default"].tab();
|
|
60
|
-
|
|
61
83
|
_react2.fireEvent.keyDown(slider, {
|
|
62
84
|
key: "ArrowRight",
|
|
63
85
|
code: "ArrowRight",
|
|
64
86
|
keyCode: 39,
|
|
65
87
|
charCode: 39
|
|
66
88
|
});
|
|
67
|
-
|
|
68
89
|
expect(slider.getAttribute("aria-valuenow")).toBe("125");
|
|
69
90
|
expect(getByText("30")).toBeTruthy();
|
|
70
91
|
expect(getByText("125")).toBeTruthy();
|
|
71
92
|
});
|
|
72
93
|
test("Calls correct function onChange in controlled slider", function () {
|
|
73
94
|
var onChange = jest.fn();
|
|
74
|
-
|
|
75
95
|
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
96
|
+
minValue: 0,
|
|
97
|
+
maxValue: 100,
|
|
98
|
+
onChange: onChange,
|
|
99
|
+
showLimitsValues: true,
|
|
100
|
+
value: 13,
|
|
101
|
+
showInput: true
|
|
102
|
+
})),
|
|
103
|
+
getByRole = _render4.getByRole;
|
|
85
104
|
expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
|
|
86
105
|
expect(getByRole("textbox").value).toBe("13");
|
|
87
106
|
(0, _react2.act)(function () {
|
|
@@ -97,16 +116,14 @@ describe("Slider component tests", function () {
|
|
|
97
116
|
});
|
|
98
117
|
test("Calls correct function onChange in uncontrolled slider", function () {
|
|
99
118
|
var onChange = jest.fn();
|
|
100
|
-
|
|
101
119
|
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
120
|
+
minValue: 0,
|
|
121
|
+
maxValue: 100,
|
|
122
|
+
onChange: onChange,
|
|
123
|
+
showLimitsValues: true,
|
|
124
|
+
showInput: true
|
|
125
|
+
})),
|
|
126
|
+
getByRole = _render5.getByRole;
|
|
110
127
|
(0, _react2.act)(function () {
|
|
111
128
|
_react2.fireEvent.change(getByRole("textbox"), {
|
|
112
129
|
target: {
|
|
@@ -120,18 +137,16 @@ describe("Slider component tests", function () {
|
|
|
120
137
|
});
|
|
121
138
|
test("Disabled slider have disabled input and slider", function () {
|
|
122
139
|
var onChange = jest.fn();
|
|
123
|
-
|
|
124
140
|
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
141
|
+
minValue: 0,
|
|
142
|
+
maxValue: 100,
|
|
143
|
+
onChange: onChange,
|
|
144
|
+
showLimitsValues: true,
|
|
145
|
+
disabled: true,
|
|
146
|
+
showInput: true,
|
|
147
|
+
value: 13
|
|
148
|
+
})),
|
|
149
|
+
getByRole = _render6.getByRole;
|
|
135
150
|
(0, _react2.act)(function () {
|
|
136
151
|
_react2.fireEvent.change(getByRole("textbox"), {
|
|
137
152
|
target: {
|
|
@@ -145,15 +160,13 @@ describe("Slider component tests", function () {
|
|
|
145
160
|
});
|
|
146
161
|
test("Calls correct function onDragEnd when it is uncontrolled", function () {
|
|
147
162
|
var onDragEnd = jest.fn();
|
|
148
|
-
|
|
149
163
|
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
164
|
+
minValue: 0,
|
|
165
|
+
maxValue: 150,
|
|
166
|
+
onDragEnd: onDragEnd,
|
|
167
|
+
showInput: true
|
|
168
|
+
})),
|
|
169
|
+
getByRole = _render7.getByRole;
|
|
157
170
|
var slider = getByRole("slider");
|
|
158
171
|
(0, _react2.act)(function () {
|
|
159
172
|
_react2.fireEvent.mouseDown(slider);
|
|
@@ -169,16 +182,14 @@ describe("Slider component tests", function () {
|
|
|
169
182
|
});
|
|
170
183
|
test("Calls correct function onDragEnd when it is controlled", function () {
|
|
171
184
|
var onDragEnd = jest.fn();
|
|
172
|
-
|
|
173
185
|
var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
186
|
+
minValue: 0,
|
|
187
|
+
maxValue: 150,
|
|
188
|
+
value: 50,
|
|
189
|
+
onDragEnd: onDragEnd,
|
|
190
|
+
showInput: true
|
|
191
|
+
})),
|
|
192
|
+
getByRole = _render8.getByRole;
|
|
182
193
|
var slider = getByRole("slider");
|
|
183
194
|
(0, _react2.act)(function () {
|
|
184
195
|
_react2.fireEvent.mouseDown(slider);
|
|
@@ -197,46 +208,39 @@ describe("Slider component tests", function () {
|
|
|
197
208
|
var labelFormatCallback = jest.fn(function (x) {
|
|
198
209
|
return "".concat(x, "$");
|
|
199
210
|
});
|
|
200
|
-
|
|
201
211
|
var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
212
|
+
minValue: 0,
|
|
213
|
+
maxValue: 100,
|
|
214
|
+
showLimitsValues: true,
|
|
215
|
+
showInput: true,
|
|
216
|
+
value: 25,
|
|
217
|
+
labelFormatCallback: labelFormatCallback
|
|
218
|
+
})),
|
|
219
|
+
getByText = _render9.getByText;
|
|
211
220
|
expect(getByText("0$")).toBeTruthy();
|
|
212
221
|
expect(getByText("100$")).toBeTruthy();
|
|
213
222
|
expect(labelFormatCallback).toHaveBeenCalledTimes(2);
|
|
214
223
|
});
|
|
215
224
|
test("Change value correctly to 0 from external function", function () {
|
|
216
225
|
var onChange = jest.fn();
|
|
217
|
-
|
|
218
226
|
var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
227
|
+
minValue: 0,
|
|
228
|
+
maxValue: 100,
|
|
229
|
+
onChange: onChange,
|
|
230
|
+
showLimitsValues: true,
|
|
231
|
+
value: 13,
|
|
232
|
+
showInput: true
|
|
233
|
+
})),
|
|
234
|
+
rerender = _render10.rerender,
|
|
235
|
+
getByRole = _render10.getByRole;
|
|
229
236
|
var slider = getByRole("slider");
|
|
230
|
-
|
|
231
237
|
_userEvent["default"].tab();
|
|
232
|
-
|
|
233
238
|
_react2.fireEvent.keyDown(slider, {
|
|
234
239
|
key: "ArrowRight",
|
|
235
240
|
code: "ArrowRight",
|
|
236
241
|
keyCode: 39,
|
|
237
242
|
charCode: 39
|
|
238
243
|
});
|
|
239
|
-
|
|
240
244
|
rerender( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
241
245
|
minValue: 0,
|
|
242
246
|
maxValue: 100,
|
package/slider/types.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
2
|
+
type Margin = {
|
|
3
3
|
top?: Space;
|
|
4
4
|
bottom?: Space;
|
|
5
5
|
left?: Space;
|
|
6
6
|
right?: Space;
|
|
7
7
|
};
|
|
8
|
-
|
|
8
|
+
type Props = {
|
|
9
9
|
/**
|
|
10
10
|
* Text to be placed above the slider.
|
|
11
11
|
*/
|
|
@@ -79,4 +79,8 @@ declare type Props = {
|
|
|
79
79
|
*/
|
|
80
80
|
size?: "medium" | "large" | "fillParent";
|
|
81
81
|
};
|
|
82
|
+
/**
|
|
83
|
+
* Reference to the component.
|
|
84
|
+
*/
|
|
85
|
+
export type RefType = HTMLDivElement;
|
|
82
86
|
export default Props;
|