@dxc-technology/halstack-react 0.0.0-fdc49d2 → 0.0.0-ff5083e
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/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +295 -0
- package/accordion/Accordion.js +5 -27
- package/accordion/Accordion.stories.tsx +3 -3
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +13 -15
- package/accordion-group/AccordionGroup.stories.tsx +1 -1
- package/accordion-group/AccordionGroup.test.js +24 -6
- package/accordion-group/types.d.ts +4 -0
- package/alert/Alert.js +4 -1
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +5 -3
- package/badge/types.d.ts +1 -0
- package/bleed/Bleed.js +1 -34
- package/bleed/Bleed.stories.tsx +31 -32
- package/bleed/types.d.ts +1 -1
- package/box/Box.js +22 -32
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +120 -0
- package/bulleted-list/BulletedList.stories.tsx +203 -0
- package/bulleted-list/types.d.ts +11 -0
- package/{list → bulleted-list}/types.js +0 -0
- package/button/Button.js +14 -11
- package/card/Card.js +24 -27
- package/checkbox/Checkbox.d.ts +1 -1
- package/checkbox/Checkbox.js +38 -28
- package/checkbox/Checkbox.stories.tsx +124 -128
- package/checkbox/types.d.ts +3 -3
- package/common/variables.js +197 -84
- package/date-input/DateInput.js +38 -20
- package/date-input/DateInput.test.js +9 -22
- package/date-input/types.d.ts +12 -9
- package/dialog/Dialog.js +4 -32
- package/dropdown/Dropdown.js +13 -17
- package/file-input/FileInput.js +9 -6
- package/file-input/FileItem.js +7 -5
- package/footer/Footer.js +15 -88
- package/header/Header.js +27 -48
- package/header/Header.stories.tsx +46 -36
- package/header/Header.test.js +18 -2
- package/inset/Inset.js +1 -34
- package/inset/Inset.stories.tsx +32 -32
- package/inset/types.d.ts +25 -1
- package/layout/ApplicationLayout.d.ts +4 -3
- package/layout/ApplicationLayout.js +82 -114
- package/layout/ApplicationLayout.stories.tsx +14 -59
- package/layout/Icons.d.ts +5 -0
- package/layout/Icons.js +13 -2
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +19 -0
- package/layout/types.d.ts +5 -10
- package/link/Link.d.ts +3 -2
- package/link/Link.js +57 -74
- package/link/Link.stories.tsx +87 -52
- package/link/Link.test.js +7 -15
- package/link/types.d.ts +7 -23
- package/main.d.ts +6 -5
- package/main.js +37 -23
- package/number-input/NumberInput.test.js +2 -4
- package/number-input/types.d.ts +13 -10
- package/package.json +6 -5
- package/paginator/Paginator.js +17 -38
- package/paragraph/Paragraph.d.ts +6 -0
- package/paragraph/Paragraph.js +38 -0
- package/paragraph/Paragraph.stories.tsx +44 -0
- package/password-input/PasswordInput.js +7 -4
- package/password-input/PasswordInput.test.js +3 -6
- package/password-input/types.d.ts +14 -11
- package/progress-bar/ProgressBar.js +1 -1
- package/progress-bar/ProgressBar.stories.jsx +11 -11
- package/quick-nav/QuickNav.js +75 -23
- package/quick-nav/QuickNav.stories.tsx +13 -13
- package/quick-nav/types.d.ts +4 -8
- package/radio-group/Radio.js +1 -1
- package/radio-group/RadioGroup.js +8 -6
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +152 -0
- package/select/Option.js +1 -1
- package/select/Select.js +66 -161
- package/select/Select.stories.tsx +14 -2
- package/select/Select.test.js +335 -231
- package/select/types.d.ts +33 -11
- package/sidenav/Sidenav.d.ts +1 -1
- package/sidenav/Sidenav.js +20 -9
- package/slider/Slider.d.ts +1 -1
- package/slider/Slider.js +2 -1
- package/slider/Slider.stories.tsx +8 -8
- package/slider/Slider.test.js +31 -10
- package/slider/types.d.ts +4 -0
- package/spinner/Spinner.js +1 -1
- package/switch/Switch.d.ts +1 -1
- package/switch/Switch.js +19 -16
- package/switch/Switch.stories.tsx +8 -8
- package/switch/types.d.ts +2 -2
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +9 -11
- package/tabs/Tabs.stories.tsx +0 -8
- package/tabs/Tabs.test.js +26 -9
- package/tabs/types.d.ts +4 -0
- package/tabs-nav/NavTabs.d.ts +8 -0
- package/tabs-nav/NavTabs.js +125 -0
- package/tabs-nav/NavTabs.stories.tsx +170 -0
- package/tabs-nav/NavTabs.test.js +82 -0
- package/tabs-nav/Tab.d.ts +4 -0
- package/tabs-nav/Tab.js +132 -0
- package/tabs-nav/types.d.ts +53 -0
- package/{radio → tabs-nav}/types.js +0 -0
- package/tag/Tag.js +5 -8
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +55 -0
- package/text-input/TextInput.js +48 -76
- package/text-input/TextInput.test.js +22 -35
- package/text-input/types.d.ts +27 -12
- package/textarea/Textarea.js +10 -19
- package/textarea/types.d.ts +10 -7
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toggle-group/ToggleGroup.js +5 -4
- package/toggle-group/ToggleGroup.stories.tsx +4 -4
- package/toggle-group/ToggleGroup.test.js +35 -4
- package/toggle-group/types.d.ts +8 -0
- package/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +131 -0
- package/typography/Typography.stories.tsx +175 -0
- package/typography/types.d.ts +18 -0
- package/typography/types.js +5 -0
- package/typography/typographyContextTypes.d.ts +16 -0
- package/typography/typographyContextTypes.js +5 -0
- package/useTheme.js +2 -2
- package/useTranslatedLabels.d.ts +2 -0
- package/useTranslatedLabels.js +20 -0
- package/wizard/Wizard.js +35 -29
- package/ThemeContext.d.ts +0 -10
- package/ThemeContext.js +0 -243
- package/list/List.d.ts +0 -4
- package/list/List.js +0 -47
- package/list/List.stories.tsx +0 -95
- package/list/types.d.ts +0 -7
- package/radio/Radio.d.ts +0 -4
- package/radio/Radio.js +0 -174
- package/radio/Radio.stories.tsx +0 -192
- package/radio/Radio.test.js +0 -71
- package/radio/types.d.ts +0 -54
- package/text/Text.d.ts +0 -7
- package/text/Text.js +0 -30
- package/text/Text.stories.tsx +0 -19
package/select/types.d.ts
CHANGED
|
@@ -79,9 +79,12 @@ declare type CommonProps = {
|
|
|
79
79
|
*/
|
|
80
80
|
searchable?: boolean;
|
|
81
81
|
/**
|
|
82
|
-
* If it is defined
|
|
83
|
-
* the error below the select component.
|
|
84
|
-
*
|
|
82
|
+
* If it is a defined value and also a truthy string, the component will
|
|
83
|
+
* change its appearance, showing the error below the select component.
|
|
84
|
+
* If the defined value is an empty string, it will reserve a space below
|
|
85
|
+
* the component for a future error, but it would not change its look. In
|
|
86
|
+
* case of being undefined or null, both the appearance and the space for
|
|
87
|
+
* the error message would not be modified.
|
|
85
88
|
*/
|
|
86
89
|
error?: string;
|
|
87
90
|
/**
|
|
@@ -117,21 +120,21 @@ declare type SingleSelect = CommonProps & {
|
|
|
117
120
|
/**
|
|
118
121
|
* This function will be called when the user selects an option.
|
|
119
122
|
* An object including the current value and the error (if the value entered is not valid)
|
|
120
|
-
* will be passed to this function. If there is no error, error will be
|
|
123
|
+
* will be passed to this function. If there is no error, error will not be defined.
|
|
121
124
|
*/
|
|
122
125
|
onChange?: (val: {
|
|
123
126
|
value: string;
|
|
124
|
-
error
|
|
127
|
+
error?: string;
|
|
125
128
|
}) => void;
|
|
126
129
|
/**
|
|
127
130
|
* This function will be called when the select loses the focus. An
|
|
128
131
|
* object including the value and the error (if the value
|
|
129
132
|
* selected is not valid) will be passed to this function. If there is no error,
|
|
130
|
-
* error will be
|
|
133
|
+
* error will not be defined.
|
|
131
134
|
*/
|
|
132
135
|
onBlur?: (val: {
|
|
133
136
|
value: string;
|
|
134
|
-
error
|
|
137
|
+
error?: string;
|
|
135
138
|
}) => void;
|
|
136
139
|
};
|
|
137
140
|
declare type MultipleSelect = CommonProps & {
|
|
@@ -157,7 +160,7 @@ declare type MultipleSelect = CommonProps & {
|
|
|
157
160
|
*/
|
|
158
161
|
onChange?: (val: {
|
|
159
162
|
value: string[];
|
|
160
|
-
error
|
|
163
|
+
error?: string;
|
|
161
164
|
}) => void;
|
|
162
165
|
/**
|
|
163
166
|
* This function will be called when the select loses the focus. An
|
|
@@ -167,7 +170,7 @@ declare type MultipleSelect = CommonProps & {
|
|
|
167
170
|
*/
|
|
168
171
|
onBlur?: (val: {
|
|
169
172
|
value: string[];
|
|
170
|
-
error
|
|
173
|
+
error?: string;
|
|
171
174
|
}) => void;
|
|
172
175
|
};
|
|
173
176
|
declare type Props = SingleSelect | MultipleSelect;
|
|
@@ -180,12 +183,31 @@ export declare type OptionProps = {
|
|
|
180
183
|
onClick: (option: Option) => void;
|
|
181
184
|
multiple: boolean;
|
|
182
185
|
visualFocused: boolean;
|
|
183
|
-
isGroupedOption
|
|
186
|
+
isGroupedOption?: boolean;
|
|
184
187
|
isLastOption: boolean;
|
|
185
188
|
isSelected: boolean;
|
|
186
189
|
};
|
|
187
190
|
/**
|
|
188
|
-
*
|
|
191
|
+
* Listbox from the select component.
|
|
192
|
+
*/
|
|
193
|
+
export declare type ListboxProps = {
|
|
194
|
+
id: string;
|
|
195
|
+
currentValue: string | string[];
|
|
196
|
+
options: Option[] | OptionGroup[];
|
|
197
|
+
visualFocusIndex: number;
|
|
198
|
+
lastOptionIndex: number;
|
|
199
|
+
multiple: boolean;
|
|
200
|
+
optional: boolean;
|
|
201
|
+
optionalItem: Option;
|
|
202
|
+
searchable: boolean;
|
|
203
|
+
handleOptionOnClick: (option: Option) => void;
|
|
204
|
+
};
|
|
205
|
+
/**
|
|
206
|
+
* Reference to the listbox component.
|
|
207
|
+
*/
|
|
208
|
+
export declare type ListboxRefType = HTMLUListElement;
|
|
209
|
+
/**
|
|
210
|
+
* Reference to the select component.
|
|
189
211
|
*/
|
|
190
212
|
export declare type RefType = HTMLDivElement;
|
|
191
213
|
export default Props;
|
package/sidenav/Sidenav.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import SidenavPropsType, { SidenavTitlePropsType, SidenavSubtitlePropsType, SidenavLinkPropsType } from "./types
|
|
2
|
+
import SidenavPropsType, { SidenavTitlePropsType, SidenavSubtitlePropsType, SidenavLinkPropsType } from "./types";
|
|
3
3
|
declare const DxcSidenav: {
|
|
4
4
|
({ padding, children }: SidenavPropsType): JSX.Element;
|
|
5
5
|
Title: ({ children }: SidenavTitlePropsType) => JSX.Element;
|
package/sidenav/Sidenav.js
CHANGED
|
@@ -21,6 +21,8 @@ var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
|
21
21
|
|
|
22
22
|
var _BackgroundColorContext = require("../BackgroundColorContext");
|
|
23
23
|
|
|
24
|
+
var _SidenavContext = require("../layout/SidenavContext");
|
|
25
|
+
|
|
24
26
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
25
27
|
|
|
26
28
|
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); }
|
|
@@ -33,7 +35,7 @@ var DxcSidenav = function DxcSidenav(_ref) {
|
|
|
33
35
|
var colorsTheme = (0, _useTheme["default"])();
|
|
34
36
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
35
37
|
theme: colorsTheme.sidenav
|
|
36
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
38
|
+
}, /*#__PURE__*/_react["default"].createElement(SidenavContainer, {
|
|
37
39
|
padding: padding
|
|
38
40
|
}, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
|
|
39
41
|
color: colorsTheme.sidenav.backgroundColor
|
|
@@ -42,12 +44,12 @@ var DxcSidenav = function DxcSidenav(_ref) {
|
|
|
42
44
|
|
|
43
45
|
var Title = function Title(_ref2) {
|
|
44
46
|
var children = _ref2.children;
|
|
45
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
47
|
+
return /*#__PURE__*/_react["default"].createElement(SidenavMenuTitle, null, children);
|
|
46
48
|
};
|
|
47
49
|
|
|
48
50
|
var Subtitle = function Subtitle(_ref3) {
|
|
49
51
|
var children = _ref3.children;
|
|
50
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
52
|
+
return /*#__PURE__*/_react["default"].createElement(SidenavMenuSubTitle, null, children);
|
|
51
53
|
};
|
|
52
54
|
|
|
53
55
|
var Link = function Link(_ref4) {
|
|
@@ -56,15 +58,24 @@ var Link = function Link(_ref4) {
|
|
|
56
58
|
href = _ref4.href,
|
|
57
59
|
onClick = _ref4.onClick,
|
|
58
60
|
children = _ref4.children;
|
|
59
|
-
|
|
61
|
+
var setIsSidenavVisibleResponsive = (0, _SidenavContext.useResponsiveSidenavVisibility)();
|
|
62
|
+
|
|
63
|
+
var handleClick = function handleClick() {
|
|
64
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
65
|
+
setIsSidenavVisibleResponsive === null || setIsSidenavVisibleResponsive === void 0 ? void 0 : setIsSidenavVisibleResponsive(false);
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
return /*#__PURE__*/_react["default"].createElement(SidenavMenuLink, {
|
|
60
69
|
tabIndex: tabIndex,
|
|
61
70
|
href: href,
|
|
62
|
-
onClick:
|
|
71
|
+
onClick: handleClick
|
|
63
72
|
}, children);
|
|
64
73
|
};
|
|
65
74
|
|
|
66
|
-
var
|
|
75
|
+
var SidenavContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n\n @media (max-width: ", "rem) {\n width: ", ";\n }\n\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"])), function (props) {
|
|
67
76
|
return props.theme.backgroundColor;
|
|
77
|
+
}, _variables.responsiveSizes.medium, function (props) {
|
|
78
|
+
return props.padding ? "calc(100vw - ".concat(_variables.spaces[props.padding], " - ").concat(_variables.spaces[props.padding], ")") : "100vw";
|
|
68
79
|
}, function (props) {
|
|
69
80
|
return props.padding ? "calc(300px - ".concat(_variables.spaces[props.padding], " - ").concat(_variables.spaces[props.padding], ")") : "300px";
|
|
70
81
|
}, function (props) {
|
|
@@ -75,7 +86,7 @@ var SideNavContainer = _styledComponents["default"].div(_templateObject || (_tem
|
|
|
75
86
|
return props.theme.scrollBarThumbColor;
|
|
76
87
|
});
|
|
77
88
|
|
|
78
|
-
var
|
|
89
|
+
var SidenavMenuTitle = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (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"])), function (props) {
|
|
79
90
|
return props.theme.titleFontFamily;
|
|
80
91
|
}, function (props) {
|
|
81
92
|
return props.theme.titleFontSize;
|
|
@@ -91,7 +102,7 @@ var SideNavMenuTitle = _styledComponents["default"].div(_templateObject2 || (_te
|
|
|
91
102
|
return props.theme.titleFontTextTransform;
|
|
92
103
|
});
|
|
93
104
|
|
|
94
|
-
var
|
|
105
|
+
var SidenavMenuSubTitle = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (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"])), function (props) {
|
|
95
106
|
return props.theme.subtitleFontFamily;
|
|
96
107
|
}, function (props) {
|
|
97
108
|
return props.theme.subtitleFontSize;
|
|
@@ -107,7 +118,7 @@ var SideNavMenuSubTitle = _styledComponents["default"].div(_templateObject3 || (
|
|
|
107
118
|
return props.theme.subtitleFontTextTransform;
|
|
108
119
|
});
|
|
109
120
|
|
|
110
|
-
var
|
|
121
|
+
var SidenavMenuLink = _styledComponents["default"].a(_templateObject4 || (_templateObject4 = (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"])), function (props) {
|
|
111
122
|
return props.theme.linkFontFamily;
|
|
112
123
|
}, function (props) {
|
|
113
124
|
return props.theme.linkFontSize;
|
package/slider/Slider.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import SliderPropsType from "./types";
|
|
3
|
-
declare const DxcSlider: ({ label, name, value, helperText, minValue, maxValue, step, showLimitsValues, showInput, disabled, marks, onChange, onDragEnd, labelFormatCallback, margin, size, }: SliderPropsType) => JSX.Element;
|
|
3
|
+
declare const DxcSlider: ({ label, name, defaultValue, value, helperText, minValue, maxValue, step, showLimitsValues, showInput, disabled, marks, onChange, onDragEnd, labelFormatCallback, margin, size, }: SliderPropsType) => JSX.Element;
|
|
4
4
|
export default DxcSlider;
|
package/slider/Slider.js
CHANGED
|
@@ -44,6 +44,7 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
44
44
|
label = _ref$label === void 0 ? "" : _ref$label,
|
|
45
45
|
_ref$name = _ref.name,
|
|
46
46
|
name = _ref$name === void 0 ? "" : _ref$name,
|
|
47
|
+
defaultValue = _ref.defaultValue,
|
|
47
48
|
value = _ref.value,
|
|
48
49
|
_ref$helperText = _ref.helperText,
|
|
49
50
|
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
@@ -68,7 +69,7 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
68
69
|
_ref$size = _ref.size,
|
|
69
70
|
size = _ref$size === void 0 ? "fillParent" : _ref$size;
|
|
70
71
|
|
|
71
|
-
var _useState = (0, _react.useState)(0),
|
|
72
|
+
var _useState = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : 0),
|
|
72
73
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
73
74
|
innerValue = _useState2[0],
|
|
74
75
|
setInnerValue = _useState2[1];
|
|
@@ -37,7 +37,7 @@ export const Chromatic = () => (
|
|
|
37
37
|
label="Slider"
|
|
38
38
|
helperText="Help message"
|
|
39
39
|
disabled
|
|
40
|
-
|
|
40
|
+
defaultValue={40}
|
|
41
41
|
minValue={0}
|
|
42
42
|
maxValue={50}
|
|
43
43
|
showLimitsValues
|
|
@@ -49,16 +49,16 @@ export const Chromatic = () => (
|
|
|
49
49
|
<Title title="Variants" theme="light" level={2} />
|
|
50
50
|
<ExampleContainer>
|
|
51
51
|
<Title title="Continuous slider" theme="light" level={4} />
|
|
52
|
-
<DxcSlider
|
|
52
|
+
<DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
|
|
53
53
|
</ExampleContainer>
|
|
54
54
|
<ExampleContainer>
|
|
55
55
|
<Title title="Discrete slider" theme="light" level={4} />
|
|
56
|
-
<DxcSlider
|
|
56
|
+
<DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
|
|
57
57
|
</ExampleContainer>
|
|
58
58
|
<ExampleContainer>
|
|
59
59
|
<Title title="Discrete slider with input" theme="light" level={4} />
|
|
60
60
|
<DxcSlider
|
|
61
|
-
|
|
61
|
+
defaultValue={20}
|
|
62
62
|
minValue={0}
|
|
63
63
|
maxValue={50}
|
|
64
64
|
label="Slider"
|
|
@@ -94,7 +94,7 @@ export const Chromatic = () => (
|
|
|
94
94
|
label="Slider"
|
|
95
95
|
helperText="Help message"
|
|
96
96
|
disabled
|
|
97
|
-
|
|
97
|
+
defaultValue={40}
|
|
98
98
|
minValue={0}
|
|
99
99
|
maxValue={50}
|
|
100
100
|
showLimitsValues
|
|
@@ -105,16 +105,16 @@ export const Chromatic = () => (
|
|
|
105
105
|
</ExampleContainer>
|
|
106
106
|
<ExampleContainer>
|
|
107
107
|
<Title title="Continuous slider" theme="dark" level={4} />
|
|
108
|
-
<DxcSlider
|
|
108
|
+
<DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
|
|
109
109
|
</ExampleContainer>
|
|
110
110
|
<ExampleContainer>
|
|
111
111
|
<Title title="Discrete slider" theme="dark" level={4} />
|
|
112
|
-
<DxcSlider
|
|
112
|
+
<DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
|
|
113
113
|
</ExampleContainer>
|
|
114
114
|
<ExampleContainer>
|
|
115
115
|
<Title title="Discrete slider with input" theme="dark" level={4} />
|
|
116
116
|
<DxcSlider
|
|
117
|
-
|
|
117
|
+
defaultValue={20}
|
|
118
118
|
minValue={0}
|
|
119
119
|
maxValue={50}
|
|
120
120
|
label="Slider"
|
package/slider/Slider.test.js
CHANGED
|
@@ -20,10 +20,25 @@ describe("Slider component tests", function () {
|
|
|
20
20
|
expect(getByText("0")).toBeTruthy();
|
|
21
21
|
expect(getByText("100")).toBeTruthy();
|
|
22
22
|
});
|
|
23
|
+
test("Slider renders with correct initial value when it is uncontrolled", function () {
|
|
24
|
+
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
25
|
+
defaultValue: 30,
|
|
26
|
+
minValue: 0,
|
|
27
|
+
maxValue: 100,
|
|
28
|
+
showLimitsValues: true,
|
|
29
|
+
showInput: true
|
|
30
|
+
})),
|
|
31
|
+
getByRole = _render2.getByRole;
|
|
32
|
+
|
|
33
|
+
var slider = getByRole("slider");
|
|
34
|
+
var input = getByRole("textbox");
|
|
35
|
+
expect(slider.getAttribute("aria-valuenow")).toBe("30");
|
|
36
|
+
expect(input.value).toBe("30");
|
|
37
|
+
});
|
|
23
38
|
test("Calls correct function onChange in controlled slider", function () {
|
|
24
39
|
var onChange = jest.fn();
|
|
25
40
|
|
|
26
|
-
var
|
|
41
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
27
42
|
minValue: 0,
|
|
28
43
|
maxValue: 100,
|
|
29
44
|
onChange: onChange,
|
|
@@ -31,8 +46,10 @@ describe("Slider component tests", function () {
|
|
|
31
46
|
value: 13,
|
|
32
47
|
showInput: true
|
|
33
48
|
})),
|
|
34
|
-
getByRole =
|
|
49
|
+
getByRole = _render3.getByRole;
|
|
35
50
|
|
|
51
|
+
expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
|
|
52
|
+
expect(getByRole("textbox").value).toBe("13");
|
|
36
53
|
(0, _react2.act)(function () {
|
|
37
54
|
_react2.fireEvent.change(getByRole("textbox"), {
|
|
38
55
|
target: {
|
|
@@ -41,18 +58,20 @@ describe("Slider component tests", function () {
|
|
|
41
58
|
});
|
|
42
59
|
});
|
|
43
60
|
expect(onChange).toHaveBeenCalledWith(25);
|
|
61
|
+
expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
|
|
62
|
+
expect(getByRole("textbox").value).toBe("13");
|
|
44
63
|
});
|
|
45
64
|
test("Calls correct function onChange in uncontrolled slider", function () {
|
|
46
65
|
var onChange = jest.fn();
|
|
47
66
|
|
|
48
|
-
var
|
|
67
|
+
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
49
68
|
minValue: 0,
|
|
50
69
|
maxValue: 100,
|
|
51
70
|
onChange: onChange,
|
|
52
71
|
showLimitsValues: true,
|
|
53
72
|
showInput: true
|
|
54
73
|
})),
|
|
55
|
-
getByRole =
|
|
74
|
+
getByRole = _render4.getByRole;
|
|
56
75
|
|
|
57
76
|
(0, _react2.act)(function () {
|
|
58
77
|
_react2.fireEvent.change(getByRole("textbox"), {
|
|
@@ -62,11 +81,13 @@ describe("Slider component tests", function () {
|
|
|
62
81
|
});
|
|
63
82
|
});
|
|
64
83
|
expect(onChange).toHaveBeenCalledWith(25);
|
|
84
|
+
expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("25");
|
|
85
|
+
expect(getByRole("textbox").value).toBe("25");
|
|
65
86
|
});
|
|
66
87
|
test("Disabled slider have disabled input", function () {
|
|
67
88
|
var onChange = jest.fn();
|
|
68
89
|
|
|
69
|
-
var
|
|
90
|
+
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
70
91
|
minValue: 0,
|
|
71
92
|
maxValue: 100,
|
|
72
93
|
onChange: onChange,
|
|
@@ -75,7 +96,7 @@ describe("Slider component tests", function () {
|
|
|
75
96
|
showInput: true,
|
|
76
97
|
value: 13
|
|
77
98
|
})),
|
|
78
|
-
getByRole =
|
|
99
|
+
getByRole = _render5.getByRole;
|
|
79
100
|
|
|
80
101
|
(0, _react2.act)(function () {
|
|
81
102
|
_react2.fireEvent.change(getByRole("textbox"), {
|
|
@@ -90,7 +111,7 @@ describe("Slider component tests", function () {
|
|
|
90
111
|
test("Calls correct function onDragEnd", function () {
|
|
91
112
|
var onDragEnd = jest.fn();
|
|
92
113
|
|
|
93
|
-
var
|
|
114
|
+
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
94
115
|
minValue: 0,
|
|
95
116
|
maxValue: 100,
|
|
96
117
|
showLimitsValues: true,
|
|
@@ -98,7 +119,7 @@ describe("Slider component tests", function () {
|
|
|
98
119
|
onDragEnd: onDragEnd,
|
|
99
120
|
value: 25
|
|
100
121
|
})),
|
|
101
|
-
getByRole =
|
|
122
|
+
getByRole = _render6.getByRole;
|
|
102
123
|
|
|
103
124
|
(0, _react2.act)(function () {
|
|
104
125
|
_react2.fireEvent.mouseDown(getByRole("slider"));
|
|
@@ -112,7 +133,7 @@ describe("Slider component tests", function () {
|
|
|
112
133
|
return "".concat(x, "$");
|
|
113
134
|
});
|
|
114
135
|
|
|
115
|
-
var
|
|
136
|
+
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
|
|
116
137
|
minValue: 0,
|
|
117
138
|
maxValue: 100,
|
|
118
139
|
showLimitsValues: true,
|
|
@@ -120,7 +141,7 @@ describe("Slider component tests", function () {
|
|
|
120
141
|
value: 25,
|
|
121
142
|
labelFormatCallback: labelFormatCallback
|
|
122
143
|
})),
|
|
123
|
-
getByText =
|
|
144
|
+
getByText = _render7.getByText;
|
|
124
145
|
|
|
125
146
|
expect(getByText("0$")).toBeTruthy();
|
|
126
147
|
expect(getByText("100$")).toBeTruthy();
|
package/slider/types.d.ts
CHANGED
|
@@ -14,6 +14,10 @@ declare type Props = {
|
|
|
14
14
|
* Name attribute of the input element.
|
|
15
15
|
*/
|
|
16
16
|
name?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Initial value of the slider, only when it is uncontrolled.
|
|
19
|
+
*/
|
|
20
|
+
defaultValue?: number;
|
|
17
21
|
/**
|
|
18
22
|
* The selected value. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
|
|
19
23
|
*/
|
package/spinner/Spinner.js
CHANGED
|
@@ -199,7 +199,7 @@ var SVGSpinner = _styledComponents["default"].svg(_templateObject8 || (_template
|
|
|
199
199
|
var CircleSpinner = _styledComponents["default"].circle(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n fill: transparent;\n stroke-linecap: initial;\n vector-effect: non-scaling-stroke;\n animation: ", ";\n stroke: ", ";\n transform-origin: ", ";\n stroke-dasharray: ", ";\n stroke-width: ", ";\n stroke-dashoffset: ", ";\n"])), function (props) {
|
|
200
200
|
return props.isDeterminated ? "none" : props.mode !== "small" ? "1.4s ease-in-out infinite both svg-circle-large" : "1.4s ease-in-out infinite both svg-circle-small";
|
|
201
201
|
}, function (props) {
|
|
202
|
-
return props.backgroundType === "dark" ? props.theme.
|
|
202
|
+
return props.backgroundType === "dark" || props.mode === "overlay" ? props.theme.trackCircleColorOverlay : props.theme.trackCircleColor;
|
|
203
203
|
}, function (props) {
|
|
204
204
|
return !props.isDeterminated ? "50% 50%" : "";
|
|
205
205
|
}, function (props) {
|
package/switch/Switch.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import SwitchPropsType from "./types";
|
|
3
|
-
declare const DxcSwitch: ({ defaultChecked, checked, value, label, labelPosition, name, disabled,
|
|
3
|
+
declare const DxcSwitch: ({ defaultChecked, checked, value, label, labelPosition, name, disabled, optional, onChange, margin, size, tabIndex, }: SwitchPropsType) => JSX.Element;
|
|
4
4
|
export default DxcSwitch;
|
package/switch/Switch.js
CHANGED
|
@@ -21,8 +21,6 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
|
21
21
|
|
|
22
22
|
var _core = require("@material-ui/core");
|
|
23
23
|
|
|
24
|
-
var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
|
|
25
|
-
|
|
26
24
|
var _uuid = require("uuid");
|
|
27
25
|
|
|
28
26
|
var _variables = require("../common/variables.js");
|
|
@@ -31,6 +29,8 @@ var _utils = require("../common/utils.js");
|
|
|
31
29
|
|
|
32
30
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
33
31
|
|
|
32
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
33
|
+
|
|
34
34
|
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
35
35
|
|
|
36
36
|
var _templateObject, _templateObject2;
|
|
@@ -51,9 +51,9 @@ var DxcSwitch = function DxcSwitch(_ref) {
|
|
|
51
51
|
name = _ref$name === void 0 ? "" : _ref$name,
|
|
52
52
|
_ref$disabled = _ref.disabled,
|
|
53
53
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
54
|
+
_ref$optional = _ref.optional,
|
|
55
|
+
optional = _ref$optional === void 0 ? false : _ref$optional,
|
|
54
56
|
onChange = _ref.onChange,
|
|
55
|
-
_ref$required = _ref.required,
|
|
56
|
-
required = _ref$required === void 0 ? false : _ref$required,
|
|
57
57
|
margin = _ref.margin,
|
|
58
58
|
_ref$size = _ref.size,
|
|
59
59
|
size = _ref$size === void 0 ? "fitContent" : _ref$size,
|
|
@@ -72,6 +72,7 @@ var DxcSwitch = function DxcSwitch(_ref) {
|
|
|
72
72
|
setInnerChecked = _useState4[1];
|
|
73
73
|
|
|
74
74
|
var colorsTheme = (0, _useTheme["default"])();
|
|
75
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
75
76
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
76
77
|
|
|
77
78
|
var handlerSwitchChange = function handlerSwitchChange(event) {
|
|
@@ -84,6 +85,14 @@ var DxcSwitch = function DxcSwitch(_ref) {
|
|
|
84
85
|
} else onChange === null || onChange === void 0 ? void 0 : onChange(!checked);
|
|
85
86
|
};
|
|
86
87
|
|
|
88
|
+
var labelComponent = /*#__PURE__*/_react["default"].createElement(LabelContainer, {
|
|
89
|
+
id: labelId,
|
|
90
|
+
labelPosition: labelPosition,
|
|
91
|
+
onClick: !disabled && handlerSwitchChange,
|
|
92
|
+
disabled: disabled,
|
|
93
|
+
backgroundType: backgroundType
|
|
94
|
+
}, labelPosition === "before" ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, label, " ", optional && /*#__PURE__*/_react["default"].createElement("span", null, translatedLabels.formFields.optionalLabel)) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, optional && /*#__PURE__*/_react["default"].createElement("span", null, translatedLabels.formFields.optionalLabel), " ", label));
|
|
95
|
+
|
|
87
96
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
88
97
|
theme: colorsTheme["switch"]
|
|
89
98
|
}, /*#__PURE__*/_react["default"].createElement(SwitchContainer, {
|
|
@@ -92,7 +101,7 @@ var DxcSwitch = function DxcSwitch(_ref) {
|
|
|
92
101
|
labelPosition: labelPosition,
|
|
93
102
|
size: size,
|
|
94
103
|
backgroundType: backgroundType
|
|
95
|
-
}, /*#__PURE__*/_react["default"].createElement(_core.Switch, {
|
|
104
|
+
}, labelPosition === "before" && labelComponent, /*#__PURE__*/_react["default"].createElement(_core.Switch, {
|
|
96
105
|
checked: checked !== null && checked !== void 0 ? checked : innerChecked,
|
|
97
106
|
inputProps: {
|
|
98
107
|
name: name,
|
|
@@ -105,13 +114,7 @@ var DxcSwitch = function DxcSwitch(_ref) {
|
|
|
105
114
|
value: value,
|
|
106
115
|
disabled: disabled,
|
|
107
116
|
disableRipple: true
|
|
108
|
-
}),
|
|
109
|
-
id: labelId,
|
|
110
|
-
labelPosition: labelPosition,
|
|
111
|
-
onClick: !disabled && handlerSwitchChange,
|
|
112
|
-
disabled: disabled,
|
|
113
|
-
backgroundType: backgroundType
|
|
114
|
-
}, required && /*#__PURE__*/_react["default"].createElement(_RequiredComponent["default"], null), label)));
|
|
117
|
+
}), labelPosition === "after" && labelComponent));
|
|
115
118
|
};
|
|
116
119
|
|
|
117
120
|
var sizes = {
|
|
@@ -126,10 +129,8 @@ var calculateWidth = function calculateWidth(margin, size) {
|
|
|
126
129
|
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
127
130
|
};
|
|
128
131
|
|
|
129
|
-
var SwitchContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n display: inline-flex;\n align-items: center;\n
|
|
132
|
+
var SwitchContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n display: inline-flex;\n align-items: center;\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n\n .MuiSwitch-root {\n align-items: center;\n width: ", ";\n height: 45px;\n margin: 3px;\n\n .Mui-focusVisible {\n outline: ", ";\n outline-offset: -3px;\n }\n\n .MuiSwitch-track {\n /*Enabled and unchecked bar*/\n background-color: ", ";\n height: ", ";\n }\n\n .MuiSwitch-switchBase + .MuiSwitch-track {\n opacity: 1;\n }\n\n .MuiIconButton-root {\n /*Enabled and unchecked*/\n top: unset;\n .MuiSwitch-thumb {\n /*Only for thumb in all states*/\n width: ", ";\n height: ", ";\n }\n color: ", ";\n &:hover {\n background-color: transparent;\n }\n &.Mui-disabled {\n /*Disabled and unchecked*/\n color: ", ";\n + .MuiSwitch-track {\n /*Disabled and unchecked bar*/\n background-color: ", ";\n }\n }\n &.Mui-disabled.Mui-checked {\n /*Disabled and checked*/\n color: ", ";\n + .MuiSwitch-track {\n /*Disabled and checked bar*/\n background-color: ", ";\n }\n }\n &.Mui-checked {\n /*Enabled and checked*/\n color: ", ";\n transform: translateX(", ");\n &:hover {\n background-color: transparent;\n }\n + .MuiSwitch-track {\n /*Enabled and checked bar*/\n background-color: ", ";\n }\n }\n }\n }\n"])), function (props) {
|
|
130
133
|
return calculateWidth(props.margin, props.size);
|
|
131
|
-
}, function (props) {
|
|
132
|
-
return props.labelPosition === "after" ? "row" : "row-reverse";
|
|
133
134
|
}, function (props) {
|
|
134
135
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
135
136
|
}, function (props) {
|
|
@@ -172,7 +173,7 @@ var SwitchContainer = _styledComponents["default"].div(_templateObject || (_temp
|
|
|
172
173
|
return props.backgroundType === "dark" ? props.theme.checkedTrackBackgroundColorOnDark : props.theme.checkedTrackBackgroundColor;
|
|
173
174
|
});
|
|
174
175
|
|
|
175
|
-
var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: ", ";\n opacity: 1;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n cursor: ", ";\n ", "\n"])), function (props) {
|
|
176
|
+
var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: ", ";\n opacity: 1;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n cursor: ", ";\n ", "\n\n ", "\n"])), function (props) {
|
|
176
177
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
|
|
177
178
|
}, function (props) {
|
|
178
179
|
return props.theme.labelFontFamily;
|
|
@@ -186,6 +187,8 @@ var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_tem
|
|
|
186
187
|
return props.disabled === true ? "not-allowed" : "pointer";
|
|
187
188
|
}, function (props) {
|
|
188
189
|
return props.labelPosition === "after" ? "margin-left: ".concat(props.theme.spaceBetweenLabelSwitch, ";") : "margin-right: ".concat(props.theme.spaceBetweenLabelSwitch, ";");
|
|
190
|
+
}, function (props) {
|
|
191
|
+
return props.labelPosition === "before" && "order: -1";
|
|
189
192
|
});
|
|
190
193
|
|
|
191
194
|
var _default = DxcSwitch;
|
|
@@ -26,16 +26,16 @@ export const Chromatic = () => (
|
|
|
26
26
|
<DxcSwitch label="Switch" defaultChecked />
|
|
27
27
|
</ExampleContainer>
|
|
28
28
|
<ExampleContainer>
|
|
29
|
-
<Title title="
|
|
30
|
-
<DxcSwitch label="Switch"
|
|
29
|
+
<Title title="Optional" theme="light" level={4} />
|
|
30
|
+
<DxcSwitch label="Switch" optional />
|
|
31
31
|
</ExampleContainer>
|
|
32
32
|
<ExampleContainer>
|
|
33
33
|
<Title title="Disabled" theme="light" level={4} />
|
|
34
34
|
<DxcSwitch label="Switch" disabled />
|
|
35
35
|
</ExampleContainer>
|
|
36
36
|
<ExampleContainer>
|
|
37
|
-
<Title title="Disabled
|
|
38
|
-
<DxcSwitch label="Switch" disabled
|
|
37
|
+
<Title title="Disabled optional" theme="light" level={4} />
|
|
38
|
+
<DxcSwitch label="Switch" disabled optional labelPosition="after" />
|
|
39
39
|
</ExampleContainer>
|
|
40
40
|
<ExampleContainer>
|
|
41
41
|
<Title title="Disabled checked" theme="light" level={4} />
|
|
@@ -52,16 +52,16 @@ export const Chromatic = () => (
|
|
|
52
52
|
<DxcSwitch label="Switch" defaultChecked />
|
|
53
53
|
</ExampleContainer>
|
|
54
54
|
<ExampleContainer>
|
|
55
|
-
<Title title="
|
|
56
|
-
<DxcSwitch label="Switch"
|
|
55
|
+
<Title title="Optional" theme="dark" level={4} />
|
|
56
|
+
<DxcSwitch label="Switch" optional />
|
|
57
57
|
</ExampleContainer>
|
|
58
58
|
<ExampleContainer>
|
|
59
59
|
<Title title="Disabled" theme="dark" level={4} />
|
|
60
60
|
<DxcSwitch label="Switch" disabled />
|
|
61
61
|
</ExampleContainer>
|
|
62
62
|
<ExampleContainer>
|
|
63
|
-
<Title title="Disabled
|
|
64
|
-
<DxcSwitch label="Switch" disabled
|
|
63
|
+
<Title title="Disabled optional" theme="dark" level={4} />
|
|
64
|
+
<DxcSwitch label="Switch" disabled optional labelPosition="after" />
|
|
65
65
|
</ExampleContainer>
|
|
66
66
|
<ExampleContainer>
|
|
67
67
|
<Title title="Disabled checked" theme="dark" level={4} />
|
package/switch/types.d.ts
CHANGED
|
@@ -42,9 +42,9 @@ declare type Props = {
|
|
|
42
42
|
*/
|
|
43
43
|
onChange?: (checked: boolean) => void;
|
|
44
44
|
/**
|
|
45
|
-
* If true, the
|
|
45
|
+
* If true, the component will display '(Optional)' next to the label.
|
|
46
46
|
*/
|
|
47
|
-
|
|
47
|
+
optional?: boolean;
|
|
48
48
|
/**
|
|
49
49
|
* Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
50
50
|
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
package/tabs/Tabs.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import TabsPropsType from "./types";
|
|
3
|
-
declare const DxcTabs: ({ activeTabIndex, tabs, onTabClick, onTabHover, margin, iconPosition, tabIndex, }: TabsPropsType) => JSX.Element;
|
|
3
|
+
declare const DxcTabs: ({ defaultActiveTabIndex, activeTabIndex, tabs, onTabClick, onTabHover, margin, iconPosition, tabIndex, }: TabsPropsType) => JSX.Element;
|
|
4
4
|
export default DxcTabs;
|