@dxc-technology/halstack-react 0.0.0-71a326e → 0.0.0-73f82b7
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/accordion/types.d.ts +1 -1
- package/accordion-group/types.d.ts +1 -1
- package/alert/Alert.stories.tsx +170 -0
- package/box/Box.d.ts +4 -0
- package/box/Box.js +9 -32
- package/box/Box.stories.tsx +132 -0
- package/box/types.d.ts +47 -0
- package/box/types.js +5 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +7 -12
- package/button/Button.stories.tsx +217 -234
- package/button/types.d.ts +10 -10
- package/card/Card.d.ts +4 -0
- package/card/Card.js +13 -48
- package/card/types.d.ts +69 -0
- package/card/types.js +5 -0
- package/checkbox/Checkbox.stories.tsx +192 -0
- package/common/variables.js +30 -22
- package/date-input/DateInput.stories.tsx +138 -0
- package/dialog/Dialog.d.ts +4 -0
- package/dialog/Dialog.js +4 -23
- package/dialog/types.d.ts +43 -0
- package/dialog/types.js +5 -0
- package/dropdown/Dropdown.d.ts +4 -0
- package/dropdown/Dropdown.js +7 -40
- package/dropdown/types.d.ts +89 -0
- package/dropdown/types.js +5 -0
- package/footer/Footer.d.ts +4 -0
- package/footer/Footer.js +4 -35
- package/footer/Footer.stories.jsx +151 -0
- package/footer/types.d.ts +61 -0
- package/footer/types.js +5 -0
- package/header/Header.d.ts +7 -0
- package/header/Header.js +26 -28
- package/header/Icons.js +2 -27
- package/header/types.d.ts +45 -0
- package/header/types.js +5 -0
- package/link/Link.d.ts +3 -0
- package/link/Link.js +1 -23
- package/link/Link.stories.tsx +70 -0
- package/link/types.d.ts +74 -0
- package/link/types.js +5 -0
- package/number-input/NumberInput.d.ts +4 -0
- package/number-input/NumberInput.js +2 -44
- package/number-input/NumberInput.stories.tsx +115 -0
- package/number-input/types.d.ts +117 -0
- package/number-input/types.js +5 -0
- package/package.json +1 -1
- package/paginator/Paginator.stories.tsx +63 -0
- package/password-input/PasswordInput.d.ts +4 -0
- package/password-input/PasswordInput.js +0 -37
- package/password-input/{PasswordInput.stories.jsx → PasswordInput.stories.tsx} +1 -1
- package/password-input/types.d.ts +100 -0
- package/password-input/types.js +5 -0
- package/progress-bar/ProgressBar.d.ts +4 -0
- package/progress-bar/ProgressBar.js +3 -21
- package/progress-bar/ProgressBar.stories.jsx +58 -0
- package/progress-bar/types.d.ts +37 -0
- package/progress-bar/types.js +5 -0
- package/radio/Radio.stories.tsx +192 -0
- package/select/index.d.ts +4 -4
- package/sidenav/Sidenav.d.ts +9 -0
- package/sidenav/Sidenav.js +4 -13
- package/sidenav/types.d.ts +50 -0
- package/sidenav/types.js +5 -0
- package/slider/Slider.d.ts +4 -0
- package/slider/Slider.js +57 -80
- package/slider/Slider.stories.tsx +172 -0
- package/slider/types.d.ts +78 -0
- package/slider/types.js +5 -0
- package/spinner/Spinner.d.ts +4 -0
- package/spinner/Spinner.js +6 -23
- package/spinner/Spinner.stories.jsx +102 -0
- package/spinner/types.d.ts +32 -0
- package/spinner/types.js +5 -0
- package/switch/Switch.js +2 -2
- package/switch/Switch.stories.tsx +160 -0
- package/table/Table.d.ts +4 -0
- package/table/Table.stories.jsx +276 -0
- package/table/types.d.ts +21 -0
- package/table/types.js +5 -0
- package/tabs/Tabs.d.ts +4 -0
- package/tabs/Tabs.js +5 -53
- package/tabs/types.d.ts +71 -0
- package/tabs/types.js +5 -0
- package/tag/Tag.d.ts +4 -0
- package/tag/Tag.js +20 -35
- package/tag/Tag.stories.tsx +145 -0
- package/tag/types.d.ts +60 -0
- package/tag/types.js +5 -0
- package/text-input/index.d.ts +2 -2
- package/textarea/Textarea.stories.jsx +135 -0
- package/toggle-group/ToggleGroup.stories.tsx +178 -0
- package/wizard/Wizard.d.ts +4 -0
- package/wizard/Wizard.js +11 -51
- package/wizard/types.d.ts +64 -0
- package/wizard/types.js +5 -0
- package/box/index.d.ts +0 -25
- package/card/index.d.ts +0 -22
- package/dialog/index.d.ts +0 -18
- package/dropdown/index.d.ts +0 -26
- package/footer/index.d.ts +0 -25
- package/header/index.d.ts +0 -25
- package/link/index.d.ts +0 -23
- package/number-input/index.d.ts +0 -113
- package/password-input/index.d.ts +0 -94
- package/progress-bar/index.d.ts +0 -18
- package/sidenav/index.d.ts +0 -13
- package/slider/index.d.ts +0 -29
- package/spinner/index.d.ts +0 -17
- package/table/index.d.ts +0 -13
- package/tabs/index.d.ts +0 -19
- package/tag/index.d.ts +0 -24
- package/wizard/index.d.ts +0 -18
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import DxcRadio from "./Radio";
|
|
3
|
+
import { BackgroundColorProvider } from "../BackgroundColorContext";
|
|
4
|
+
import Title from "../../.storybook/components/Title";
|
|
5
|
+
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
6
|
+
import DarkContainer from "../../.storybook/components/DarkSection";
|
|
7
|
+
import { userEvent, within } from "@storybook/testing-library";
|
|
8
|
+
|
|
9
|
+
export default {
|
|
10
|
+
title: "Radio",
|
|
11
|
+
component: DxcRadio,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const Radio = () => (
|
|
15
|
+
<>
|
|
16
|
+
<>
|
|
17
|
+
<ExampleContainer>
|
|
18
|
+
<Title title="Default" theme="light" level={4} />
|
|
19
|
+
<DxcRadio label="Radio" />
|
|
20
|
+
</ExampleContainer>
|
|
21
|
+
<ExampleContainer>
|
|
22
|
+
<Title title="Focused" theme="light" level={4} />
|
|
23
|
+
<DxcRadio label="Focused" />
|
|
24
|
+
</ExampleContainer>
|
|
25
|
+
<ExampleContainer>
|
|
26
|
+
<Title title="Checked" theme="light" level={4} />
|
|
27
|
+
<DxcRadio label="Radio" checked />
|
|
28
|
+
</ExampleContainer>
|
|
29
|
+
<ExampleContainer>
|
|
30
|
+
<Title title="Required" theme="light" level={4} />
|
|
31
|
+
<DxcRadio label="Radio" required />
|
|
32
|
+
</ExampleContainer>
|
|
33
|
+
<ExampleContainer>
|
|
34
|
+
<Title title="Disabled and checked" theme="light" level={4} />
|
|
35
|
+
<DxcRadio label="Radio" disabled checked />
|
|
36
|
+
</ExampleContainer>
|
|
37
|
+
<ExampleContainer>
|
|
38
|
+
<Title title="Disabled and required" theme="light" level={4} />
|
|
39
|
+
<DxcRadio label="Radio" disabled required />
|
|
40
|
+
</ExampleContainer>
|
|
41
|
+
<ExampleContainer>
|
|
42
|
+
<Title title="Disabled, required and checked" theme="light" level={4} />
|
|
43
|
+
<DxcRadio label="Radio" disabled required checked />
|
|
44
|
+
</ExampleContainer>
|
|
45
|
+
<ExampleContainer>
|
|
46
|
+
<Title title="Label after" theme="light" level={4} />
|
|
47
|
+
<DxcRadio label="Radio" labelPosition="after" />
|
|
48
|
+
</ExampleContainer>
|
|
49
|
+
<ExampleContainer>
|
|
50
|
+
<Title title="Checked with label after" theme="light" level={4} />
|
|
51
|
+
<DxcRadio label="Radio" checked labelPosition="after" />
|
|
52
|
+
</ExampleContainer>
|
|
53
|
+
<ExampleContainer>
|
|
54
|
+
<Title title="Required with label after" theme="light" level={4} />
|
|
55
|
+
<DxcRadio label="Radio" required labelPosition="after" />
|
|
56
|
+
</ExampleContainer>
|
|
57
|
+
<ExampleContainer>
|
|
58
|
+
<Title title="Disabled and checked with label after" theme="light" level={4} />
|
|
59
|
+
<DxcRadio label="Radio" disabled checked labelPosition="after" />
|
|
60
|
+
</ExampleContainer>
|
|
61
|
+
<ExampleContainer>
|
|
62
|
+
<Title title="Disabled and required with label after" theme="light" level={4} />
|
|
63
|
+
<DxcRadio label="Radio" disabled required labelPosition="after" />
|
|
64
|
+
</ExampleContainer>
|
|
65
|
+
<ExampleContainer>
|
|
66
|
+
<Title title="Disabled, required and checked with label after" theme="light" level={4} />
|
|
67
|
+
<DxcRadio label="Radio" disabled required checked labelPosition="after" />
|
|
68
|
+
</ExampleContainer>
|
|
69
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
70
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
71
|
+
<DxcRadio label="Hovered" />
|
|
72
|
+
</ExampleContainer>
|
|
73
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
74
|
+
<Title title="Hovered and checked" theme="light" level={4} />
|
|
75
|
+
<DxcRadio label="Hovered" checked />
|
|
76
|
+
</ExampleContainer>
|
|
77
|
+
</>
|
|
78
|
+
<BackgroundColorProvider color="#333333">
|
|
79
|
+
<DarkContainer>
|
|
80
|
+
<>
|
|
81
|
+
<ExampleContainer>
|
|
82
|
+
<Title title="Default" theme="dark" level={4} />
|
|
83
|
+
<DxcRadio label="Radio" />
|
|
84
|
+
</ExampleContainer>
|
|
85
|
+
<ExampleContainer>
|
|
86
|
+
<Title title="Checked" theme="dark" level={4} />
|
|
87
|
+
<DxcRadio label="Radio" checked />
|
|
88
|
+
</ExampleContainer>
|
|
89
|
+
<ExampleContainer>
|
|
90
|
+
<Title title="Required" theme="dark" level={4} />
|
|
91
|
+
<DxcRadio label="Radio" required />
|
|
92
|
+
</ExampleContainer>
|
|
93
|
+
<ExampleContainer>
|
|
94
|
+
<Title title="Disabled and checked" theme="dark" level={4} />
|
|
95
|
+
<DxcRadio label="Radio" disabled checked />
|
|
96
|
+
</ExampleContainer>
|
|
97
|
+
<ExampleContainer>
|
|
98
|
+
<Title title="Disabled and required" theme="dark" level={4} />
|
|
99
|
+
<DxcRadio label="Radio" disabled required />
|
|
100
|
+
</ExampleContainer>
|
|
101
|
+
<ExampleContainer>
|
|
102
|
+
<Title title="Disabled, required and checked" theme="dark" level={4} />
|
|
103
|
+
<DxcRadio label="Radio" disabled required checked />
|
|
104
|
+
</ExampleContainer>
|
|
105
|
+
<ExampleContainer>
|
|
106
|
+
<Title title="Label after" theme="dark" level={4} />
|
|
107
|
+
<DxcRadio label="Radio" labelPosition="after" />
|
|
108
|
+
</ExampleContainer>
|
|
109
|
+
<ExampleContainer>
|
|
110
|
+
<Title title="Checked with label after" theme="dark" level={4} />
|
|
111
|
+
<DxcRadio label="Radio" checked labelPosition="after" />
|
|
112
|
+
</ExampleContainer>
|
|
113
|
+
<ExampleContainer>
|
|
114
|
+
<Title title="Required with label after" theme="dark" level={4} />
|
|
115
|
+
<DxcRadio label="Radio" required labelPosition="after" />
|
|
116
|
+
</ExampleContainer>
|
|
117
|
+
<ExampleContainer>
|
|
118
|
+
<Title title="Disabled and checked with label after" theme="dark" level={4} />
|
|
119
|
+
<DxcRadio label="Radio" disabled checked labelPosition="after" />
|
|
120
|
+
</ExampleContainer>
|
|
121
|
+
<ExampleContainer>
|
|
122
|
+
<Title title="Disabled and required with label after" theme="dark" level={4} />
|
|
123
|
+
<DxcRadio label="Radio" disabled required labelPosition="after" />
|
|
124
|
+
</ExampleContainer>
|
|
125
|
+
<ExampleContainer>
|
|
126
|
+
<Title title="Disabled, required and checked with label after" theme="dark" level={4} />
|
|
127
|
+
<DxcRadio label="Radio" disabled required checked labelPosition="after" />
|
|
128
|
+
</ExampleContainer>
|
|
129
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
130
|
+
<Title title="Hovered" theme="dark" level={4} />
|
|
131
|
+
<DxcRadio label="Hovered" />
|
|
132
|
+
</ExampleContainer>
|
|
133
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
134
|
+
<Title title="Hovered and checked" theme="dark" level={4} />
|
|
135
|
+
<DxcRadio label="Hovered" checked />
|
|
136
|
+
</ExampleContainer>
|
|
137
|
+
</>
|
|
138
|
+
</DarkContainer>
|
|
139
|
+
</BackgroundColorProvider>
|
|
140
|
+
<Title title="Sizes" theme="light" level={2} />
|
|
141
|
+
<ExampleContainer>
|
|
142
|
+
<DxcRadio label="Small" size="small" />
|
|
143
|
+
</ExampleContainer>
|
|
144
|
+
<ExampleContainer>
|
|
145
|
+
<DxcRadio label="Medium" size="medium" />
|
|
146
|
+
</ExampleContainer>
|
|
147
|
+
<ExampleContainer>
|
|
148
|
+
<DxcRadio label="Large" size="large" />
|
|
149
|
+
</ExampleContainer>
|
|
150
|
+
<ExampleContainer>
|
|
151
|
+
<DxcRadio label="FitContent" size="fitContent" />
|
|
152
|
+
</ExampleContainer>
|
|
153
|
+
<ExampleContainer>
|
|
154
|
+
<DxcRadio label="FillParent" size="fillParent" />
|
|
155
|
+
</ExampleContainer>
|
|
156
|
+
<Title title="Margins" theme="light" level={2} />
|
|
157
|
+
<ExampleContainer>
|
|
158
|
+
<Title title="Xxsmall" theme="light" level={4} />
|
|
159
|
+
<DxcRadio label="Xxsmall" margin={"xxsmall"} />
|
|
160
|
+
</ExampleContainer>
|
|
161
|
+
<ExampleContainer>
|
|
162
|
+
<Title title="Xsmall" theme="light" level={4} />
|
|
163
|
+
<DxcRadio label="Xsmall" margin={"xsmall"} />
|
|
164
|
+
</ExampleContainer>
|
|
165
|
+
<ExampleContainer>
|
|
166
|
+
<Title title="Small" theme="light" level={4} />
|
|
167
|
+
<DxcRadio label="Small" margin={"small"} />
|
|
168
|
+
</ExampleContainer>
|
|
169
|
+
<ExampleContainer>
|
|
170
|
+
<Title title="Medium" theme="light" level={4} />
|
|
171
|
+
<DxcRadio label="Medium" margin={"medium"} />
|
|
172
|
+
</ExampleContainer>
|
|
173
|
+
<ExampleContainer>
|
|
174
|
+
<Title title="Large" theme="light" level={4} />
|
|
175
|
+
<DxcRadio label="Large" margin={"large"} />
|
|
176
|
+
</ExampleContainer>
|
|
177
|
+
<ExampleContainer>
|
|
178
|
+
<Title title="Xlarge" theme="light" level={4} />
|
|
179
|
+
<DxcRadio label="Xlarge" margin={"xlarge"} />
|
|
180
|
+
</ExampleContainer>
|
|
181
|
+
<ExampleContainer>
|
|
182
|
+
<Title title="Xxlarge" theme="light" level={4} />
|
|
183
|
+
<DxcRadio label="Xxlarge" margin={"xxlarge"} />
|
|
184
|
+
</ExampleContainer>
|
|
185
|
+
</>
|
|
186
|
+
);
|
|
187
|
+
|
|
188
|
+
export const Chromatic = Radio.bind({});
|
|
189
|
+
Chromatic.play = async () => {
|
|
190
|
+
await userEvent.tab();
|
|
191
|
+
await userEvent.tab();
|
|
192
|
+
};
|
package/select/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
type SVG = string | (HTMLElement & SVGElement);
|
|
2
1
|
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
2
|
type Margin = {
|
|
4
3
|
top?: Space;
|
|
@@ -6,6 +5,7 @@ type Margin = {
|
|
|
6
5
|
left?: Space;
|
|
7
6
|
right?: Space;
|
|
8
7
|
};
|
|
8
|
+
type SVG = React.SVGProps<SVGSVGElement> | React.FunctionComponent<React.SVGProps<SVGSVGElement>>;
|
|
9
9
|
|
|
10
10
|
type OptionGroup = {
|
|
11
11
|
/**
|
|
@@ -24,7 +24,7 @@ type Option = {
|
|
|
24
24
|
* is the chosen one, take into account that the component's
|
|
25
25
|
* color styling tokens will not be applied to the image.
|
|
26
26
|
*/
|
|
27
|
-
icon?: SVG;
|
|
27
|
+
icon?: string | SVG;
|
|
28
28
|
/**
|
|
29
29
|
* Label of the option to be shown in the select's listbox.
|
|
30
30
|
*/
|
|
@@ -74,8 +74,8 @@ type Props = {
|
|
|
74
74
|
disabled?: boolean;
|
|
75
75
|
/**
|
|
76
76
|
* If true, the select will be optional, showing '(Optional)'
|
|
77
|
-
* next to the label and adding a default first option with empty value,
|
|
78
|
-
* the placeholder (if defined) its label. Otherwise, the field will be
|
|
77
|
+
* next to the label and adding a default first option with an empty string as value,
|
|
78
|
+
* been the placeholder (if defined) its label. Otherwise, the field will be
|
|
79
79
|
* considered required and an error will be passed as a parameter to the
|
|
80
80
|
* OnBlur and onChange functions if an option wasn't selected.
|
|
81
81
|
*/
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import SidenavPropsType, { SidenavTitlePropsType, SidenavSubtitlePropsType, SidenavLinkPropsType } from "./types.js";
|
|
3
|
+
declare const DxcSidenav: {
|
|
4
|
+
({ padding, children }: SidenavPropsType): JSX.Element;
|
|
5
|
+
Title: ({ children }: SidenavTitlePropsType) => JSX.Element;
|
|
6
|
+
Subtitle: ({ children }: SidenavSubtitlePropsType) => JSX.Element;
|
|
7
|
+
Link: ({ tabIndex, href, onClick, children }: SidenavLinkPropsType) => JSX.Element;
|
|
8
|
+
};
|
|
9
|
+
export default DxcSidenav;
|
package/sidenav/Sidenav.js
CHANGED
|
@@ -9,16 +9,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
12
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
13
|
|
|
16
14
|
var _react = _interopRequireDefault(require("react"));
|
|
17
15
|
|
|
18
16
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
17
|
|
|
20
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
21
|
-
|
|
22
18
|
var _variables = require("../common/variables.js");
|
|
23
19
|
|
|
24
20
|
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
@@ -55,10 +51,13 @@ var Subtitle = function Subtitle(_ref3) {
|
|
|
55
51
|
};
|
|
56
52
|
|
|
57
53
|
var Link = function Link(_ref4) {
|
|
58
|
-
var
|
|
54
|
+
var _ref4$tabIndex = _ref4.tabIndex,
|
|
55
|
+
tabIndex = _ref4$tabIndex === void 0 ? 0 : _ref4$tabIndex,
|
|
56
|
+
href = _ref4.href,
|
|
59
57
|
onClick = _ref4.onClick,
|
|
60
58
|
children = _ref4.children;
|
|
61
59
|
return /*#__PURE__*/_react["default"].createElement(SideNavMenuLink, {
|
|
60
|
+
tabIndex: tabIndex,
|
|
62
61
|
href: href,
|
|
63
62
|
onClick: onClick
|
|
64
63
|
}, children);
|
|
@@ -130,14 +129,6 @@ var SideNavMenuLink = _styledComponents["default"].a(_templateObject4 || (_templ
|
|
|
130
129
|
return props.theme.linkFocusColor;
|
|
131
130
|
});
|
|
132
131
|
|
|
133
|
-
DxcSidenav.propTypes = {
|
|
134
|
-
padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
135
|
-
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
136
|
-
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
137
|
-
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
138
|
-
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
139
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
|
|
140
|
-
};
|
|
141
132
|
DxcSidenav.Title = Title;
|
|
142
133
|
DxcSidenav.Subtitle = Subtitle;
|
|
143
134
|
DxcSidenav.Link = Link;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
declare type Padding = {
|
|
4
|
+
top?: Space;
|
|
5
|
+
bottom?: Space;
|
|
6
|
+
left?: Space;
|
|
7
|
+
right?: Space;
|
|
8
|
+
};
|
|
9
|
+
export declare type SidenavLinkPropsType = {
|
|
10
|
+
/**
|
|
11
|
+
* Value of the tabindex.
|
|
12
|
+
*/
|
|
13
|
+
tabIndex?: number;
|
|
14
|
+
/**
|
|
15
|
+
* Page to be opened when the user clicks on the link.
|
|
16
|
+
*/
|
|
17
|
+
href?: string;
|
|
18
|
+
/**
|
|
19
|
+
* This function will be called when the user clicks the link.
|
|
20
|
+
*/
|
|
21
|
+
onClick?: () => void;
|
|
22
|
+
/**
|
|
23
|
+
* The area inside the sidenav link. This area can be used to render custom content.
|
|
24
|
+
*/
|
|
25
|
+
children: React.ReactNode;
|
|
26
|
+
};
|
|
27
|
+
export declare type SidenavTitlePropsType = {
|
|
28
|
+
/**
|
|
29
|
+
* The area inside the sidenav title. This area can be used to render custom content.
|
|
30
|
+
*/
|
|
31
|
+
children: React.ReactNode;
|
|
32
|
+
};
|
|
33
|
+
export declare type SidenavSubtitlePropsType = {
|
|
34
|
+
/**
|
|
35
|
+
* The area inside the sidenav subtitle. This area can be used to render custom content.
|
|
36
|
+
*/
|
|
37
|
+
children: React.ReactNode;
|
|
38
|
+
};
|
|
39
|
+
declare type SidenavPropsType = {
|
|
40
|
+
/**
|
|
41
|
+
* Size of the padding to be applied to the custom area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
42
|
+
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
|
|
43
|
+
*/
|
|
44
|
+
padding?: Space | Padding;
|
|
45
|
+
/**
|
|
46
|
+
* The area inside the sidenav. This area can be used to render custom content.
|
|
47
|
+
*/
|
|
48
|
+
children: React.ReactNode;
|
|
49
|
+
};
|
|
50
|
+
export default SidenavPropsType;
|
package/sidenav/types.js
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import SliderPropsType from "./types";
|
|
3
|
+
declare const DxcSlider: ({ label, name, value, helperText, minValue, maxValue, step, showLimitsValues, showInput, disabled, marks, onChange, onDragEnd, labelFormatCallback, margin, size, }: SliderPropsType) => JSX.Element;
|
|
4
|
+
export default DxcSlider;
|
package/slider/Slider.js
CHANGED
|
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
12
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
13
|
|
|
16
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
@@ -23,8 +21,6 @@ var _Slider = _interopRequireDefault(require("@material-ui/lab/Slider"));
|
|
|
23
21
|
|
|
24
22
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
25
23
|
|
|
26
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
24
|
var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
|
|
29
25
|
|
|
30
26
|
var _variables = require("../common/variables.js");
|
|
@@ -35,6 +31,8 @@ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
|
35
31
|
|
|
36
32
|
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
|
|
37
33
|
|
|
34
|
+
var _uuid = require("uuid");
|
|
35
|
+
|
|
38
36
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
|
|
39
37
|
|
|
40
38
|
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); }
|
|
@@ -42,26 +40,29 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
42
40
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
43
41
|
|
|
44
42
|
var DxcSlider = function DxcSlider(_ref) {
|
|
45
|
-
var label = _ref.label,
|
|
46
|
-
|
|
43
|
+
var _ref$label = _ref.label,
|
|
44
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
45
|
+
_ref$name = _ref.name,
|
|
46
|
+
name = _ref$name === void 0 ? "" : _ref$name,
|
|
47
|
+
value = _ref.value,
|
|
48
|
+
_ref$helperText = _ref.helperText,
|
|
49
|
+
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
47
50
|
_ref$minValue = _ref.minValue,
|
|
48
51
|
minValue = _ref$minValue === void 0 ? 0 : _ref$minValue,
|
|
49
52
|
_ref$maxValue = _ref.maxValue,
|
|
50
53
|
maxValue = _ref$maxValue === void 0 ? 100 : _ref$maxValue,
|
|
51
54
|
_ref$step = _ref.step,
|
|
52
55
|
step = _ref$step === void 0 ? 1 : _ref$step,
|
|
53
|
-
value = _ref.value,
|
|
54
56
|
_ref$showLimitsValues = _ref.showLimitsValues,
|
|
55
57
|
showLimitsValues = _ref$showLimitsValues === void 0 ? false : _ref$showLimitsValues,
|
|
56
58
|
_ref$showInput = _ref.showInput,
|
|
57
59
|
showInput = _ref$showInput === void 0 ? false : _ref$showInput,
|
|
58
|
-
name = _ref.name,
|
|
59
|
-
onChange = _ref.onChange,
|
|
60
|
-
onDragEnd = _ref.onDragEnd,
|
|
61
60
|
_ref$disabled = _ref.disabled,
|
|
62
61
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
63
62
|
_ref$marks = _ref.marks,
|
|
64
63
|
marks = _ref$marks === void 0 ? false : _ref$marks,
|
|
64
|
+
onChange = _ref.onChange,
|
|
65
|
+
onDragEnd = _ref.onDragEnd,
|
|
65
66
|
labelFormatCallback = _ref.labelFormatCallback,
|
|
66
67
|
margin = _ref.margin,
|
|
67
68
|
_ref$size = _ref.size,
|
|
@@ -74,6 +75,11 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
74
75
|
|
|
75
76
|
var colorsTheme = (0, _useTheme["default"])();
|
|
76
77
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
78
|
+
|
|
79
|
+
var _useState3 = (0, _react.useState)("label-".concat((0, _uuid.v4)())),
|
|
80
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
|
|
81
|
+
labelId = _useState4[0];
|
|
82
|
+
|
|
77
83
|
var minLabel = (0, _react.useMemo)(function () {
|
|
78
84
|
return labelFormatCallback ? labelFormatCallback(minValue) : minValue;
|
|
79
85
|
}, [labelFormatCallback, minValue]);
|
|
@@ -82,36 +88,24 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
82
88
|
}, [labelFormatCallback, maxValue]);
|
|
83
89
|
|
|
84
90
|
var handlerSliderChange = function handlerSliderChange(event, newValue) {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
setInnerValue(newValue);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
91
|
+
var valueToCheck = value !== null && value !== void 0 ? value : innerValue;
|
|
92
|
+
valueToCheck !== newValue && setInnerValue(newValue);
|
|
93
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
|
|
94
|
+
};
|
|
92
95
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
+
var handleSliderOnChangeCommited = function handleSliderOnChangeCommited(event, selectedValue) {
|
|
97
|
+
onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(selectedValue);
|
|
96
98
|
};
|
|
97
99
|
|
|
98
100
|
var handlerInputChange = function handlerInputChange(event) {
|
|
99
101
|
var intValue = parseInt(event.value, 10);
|
|
100
102
|
|
|
101
103
|
if (value == null) {
|
|
102
|
-
if (!Number.isNaN(intValue))
|
|
103
|
-
setInnerValue(intValue > maxValue ? maxValue : intValue);
|
|
104
|
-
} else {
|
|
105
|
-
setInnerValue("");
|
|
106
|
-
}
|
|
104
|
+
if (!Number.isNaN(intValue)) setInnerValue(intValue > maxValue ? maxValue : intValue);
|
|
107
105
|
}
|
|
108
106
|
|
|
109
|
-
if (
|
|
110
|
-
|
|
111
|
-
onChange(intValue > maxValue ? maxValue : intValue);
|
|
112
|
-
} else {
|
|
113
|
-
onChange("");
|
|
114
|
-
}
|
|
107
|
+
if (!Number.isNaN(intValue)) {
|
|
108
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(intValue > maxValue ? maxValue : intValue);
|
|
115
109
|
}
|
|
116
110
|
};
|
|
117
111
|
|
|
@@ -120,7 +114,14 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
120
114
|
}, /*#__PURE__*/_react["default"].createElement(Container, {
|
|
121
115
|
margin: margin,
|
|
122
116
|
size: size
|
|
123
|
-
}, /*#__PURE__*/_react["default"].createElement(Label,
|
|
117
|
+
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
118
|
+
id: labelId,
|
|
119
|
+
disabled: disabled,
|
|
120
|
+
backgroundType: backgroundType
|
|
121
|
+
}, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
|
|
122
|
+
disabled: disabled,
|
|
123
|
+
backgroundType: backgroundType
|
|
124
|
+
}, helperText), /*#__PURE__*/_react["default"].createElement(SliderContainer, {
|
|
124
125
|
backgroundType: backgroundType
|
|
125
126
|
}, showLimitsValues && /*#__PURE__*/_react["default"].createElement(MinLabelContainer, {
|
|
126
127
|
backgroundType: backgroundType,
|
|
@@ -130,12 +131,11 @@ var DxcSlider = function DxcSlider(_ref) {
|
|
|
130
131
|
min: minValue,
|
|
131
132
|
max: maxValue,
|
|
132
133
|
onChange: handlerSliderChange,
|
|
133
|
-
onChangeCommitted:
|
|
134
|
-
return onDragEnd(selectedValue);
|
|
135
|
-
},
|
|
134
|
+
onChangeCommitted: handleSliderOnChangeCommited,
|
|
136
135
|
step: step,
|
|
137
136
|
marks: marks || [],
|
|
138
|
-
disabled: disabled
|
|
137
|
+
disabled: disabled,
|
|
138
|
+
"aria-labelledby": labelId
|
|
139
139
|
}), showLimitsValues && /*#__PURE__*/_react["default"].createElement(MaxLabelContainer, {
|
|
140
140
|
backgroundType: backgroundType,
|
|
141
141
|
disabled: disabled,
|
|
@@ -173,10 +173,10 @@ var Container = _styledComponents["default"].div(_templateObject || (_templateOb
|
|
|
173
173
|
return calculateWidth(props.margin, props.size);
|
|
174
174
|
});
|
|
175
175
|
|
|
176
|
-
var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
177
|
-
return props.theme.labelFontColor;
|
|
176
|
+
var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
177
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
|
|
178
178
|
}, function (props) {
|
|
179
|
-
return props.theme.
|
|
179
|
+
return props.theme.fontFamily;
|
|
180
180
|
}, function (props) {
|
|
181
181
|
return props.theme.labelFontSize;
|
|
182
182
|
}, function (props) {
|
|
@@ -187,14 +187,14 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
|
|
|
187
187
|
return props.theme.labelLineHeight;
|
|
188
188
|
});
|
|
189
189
|
|
|
190
|
-
var HelperText = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
191
|
-
return props.theme.helperTextFontColor;
|
|
190
|
+
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) {
|
|
191
|
+
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
|
|
192
192
|
}, function (props) {
|
|
193
|
-
return props.theme.
|
|
193
|
+
return props.theme.fontFamily;
|
|
194
194
|
}, function (props) {
|
|
195
195
|
return props.theme.helperTextFontSize;
|
|
196
196
|
}, function (props) {
|
|
197
|
-
return props.theme.
|
|
197
|
+
return props.theme.helperTextFontStyle;
|
|
198
198
|
}, function (props) {
|
|
199
199
|
return props.theme.helperTextFontWeight;
|
|
200
200
|
}, function (props) {
|
|
@@ -277,34 +277,34 @@ var SliderContainer = _styledComponents["default"].div(_templateObject4 || (_tem
|
|
|
277
277
|
return props.theme.tickVerticalPosition;
|
|
278
278
|
});
|
|
279
279
|
|
|
280
|
-
var MinLabelContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
281
|
-
return props.theme.
|
|
280
|
+
var MinLabelContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n margin-right: ", ";\n"])), function (props) {
|
|
281
|
+
return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
|
|
282
282
|
}, function (props) {
|
|
283
|
-
return props.theme.
|
|
283
|
+
return props.theme.fontFamily;
|
|
284
284
|
}, function (props) {
|
|
285
|
-
return props.theme.
|
|
285
|
+
return props.theme.limitValuesFontSize;
|
|
286
286
|
}, function (props) {
|
|
287
|
-
return props.theme.
|
|
287
|
+
return props.theme.limitValuesFontStyle;
|
|
288
288
|
}, function (props) {
|
|
289
|
-
return props.
|
|
289
|
+
return props.theme.limitValuesFontWeight;
|
|
290
290
|
}, function (props) {
|
|
291
|
-
return props.theme.
|
|
291
|
+
return props.theme.limitValuesFontLetterSpacing;
|
|
292
292
|
}, function (props) {
|
|
293
293
|
return props.theme.floorLabelMarginRight;
|
|
294
294
|
});
|
|
295
295
|
|
|
296
|
-
var MaxLabelContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
297
|
-
return props.theme.
|
|
296
|
+
var MaxLabelContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
297
|
+
return props.disabled ? props.theme.disabledLimitValuesFontColor : props.backgroundType === "dark" ? props.theme.limitValuesFontColorOnDark : props.theme.limitValuesFontColor;
|
|
298
298
|
}, function (props) {
|
|
299
|
-
return props.theme.
|
|
299
|
+
return props.theme.fontFamily;
|
|
300
300
|
}, function (props) {
|
|
301
|
-
return props.theme.
|
|
301
|
+
return props.theme.limitValuesFontSize;
|
|
302
302
|
}, function (props) {
|
|
303
|
-
return props.theme.
|
|
303
|
+
return props.theme.limitValuesFontStyle;
|
|
304
304
|
}, function (props) {
|
|
305
|
-
return props.
|
|
305
|
+
return props.theme.limitValuesFontWeight;
|
|
306
306
|
}, function (props) {
|
|
307
|
-
return props.theme.
|
|
307
|
+
return props.theme.limitValuesFontLetterSpacing;
|
|
308
308
|
}, function (props) {
|
|
309
309
|
return props.step === 1 ? props.theme.ceilLabelMarginLeft : "1.25rem";
|
|
310
310
|
});
|
|
@@ -313,28 +313,5 @@ var StyledTextInput = _styledComponents["default"].div(_templateObject7 || (_tem
|
|
|
313
313
|
return props.theme.inputMarginLeft;
|
|
314
314
|
});
|
|
315
315
|
|
|
316
|
-
DxcSlider.propTypes = {
|
|
317
|
-
label: _propTypes["default"].string,
|
|
318
|
-
helperText: _propTypes["default"].string,
|
|
319
|
-
size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
|
|
320
|
-
minValue: _propTypes["default"].number,
|
|
321
|
-
maxValue: _propTypes["default"].number,
|
|
322
|
-
step: _propTypes["default"].number,
|
|
323
|
-
value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
|
|
324
|
-
showLimitsValues: _propTypes["default"].bool,
|
|
325
|
-
showInput: _propTypes["default"].bool,
|
|
326
|
-
name: _propTypes["default"].string,
|
|
327
|
-
onChange: _propTypes["default"].func,
|
|
328
|
-
onDragEnd: _propTypes["default"].func,
|
|
329
|
-
disabled: _propTypes["default"].bool,
|
|
330
|
-
marks: _propTypes["default"].bool,
|
|
331
|
-
labelFormatCallback: _propTypes["default"].func,
|
|
332
|
-
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
333
|
-
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
334
|
-
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
335
|
-
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
336
|
-
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
337
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
|
|
338
|
-
};
|
|
339
316
|
var _default = DxcSlider;
|
|
340
317
|
exports["default"] = _default;
|