@dxc-technology/halstack-react 0.0.0-f54247d → 0.0.0-f6d6be5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BackgroundColorContext.d.ts +2 -2
- package/BackgroundColorContext.js +1 -1
- package/HalstackContext.d.ts +1337 -5
- package/HalstackContext.js +113 -72
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +14 -37
- package/accordion/Accordion.stories.tsx +104 -113
- package/accordion/Accordion.test.js +1 -1
- package/accordion/types.d.ts +2 -14
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +23 -44
- package/accordion-group/AccordionGroup.stories.tsx +77 -76
- package/accordion-group/AccordionGroup.test.js +7 -17
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +43 -0
- package/accordion-group/types.d.ts +2 -14
- package/alert/Alert.js +4 -8
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +1 -1
- package/bleed/Bleed.stories.tsx +1 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +7 -26
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +1 -1
- package/box/types.d.ts +0 -12
- package/bulleted-list/BulletedList.js +4 -2
- package/bulleted-list/BulletedList.stories.tsx +7 -1
- package/bulleted-list/types.d.ts +31 -4
- package/button/Button.d.ts +1 -1
- package/button/Button.js +48 -60
- package/button/Button.stories.tsx +151 -9
- package/button/Button.test.js +12 -1
- package/button/types.d.ts +7 -3
- package/card/Card.d.ts +1 -1
- package/card/Card.js +27 -45
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +1 -1
- package/card/types.d.ts +1 -7
- package/checkbox/Checkbox.js +3 -3
- package/checkbox/Checkbox.stories.tsx +52 -0
- package/checkbox/Checkbox.test.js +1 -1
- package/checkbox/types.d.ts +2 -2
- package/chip/Chip.js +28 -49
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +3 -5
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +146 -0
- package/common/coreTokens.js +167 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +4 -4
- package/common/variables.d.ts +1490 -0
- package/common/variables.js +984 -1127
- package/date-input/Calendar.d.ts +1 -1
- package/date-input/Calendar.js +45 -45
- package/date-input/DateInput.js +74 -32
- package/date-input/DateInput.stories.tsx +183 -30
- package/date-input/DateInput.test.js +120 -37
- package/date-input/DatePicker.js +38 -52
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +75 -0
- package/date-input/YearPicker.d.ts +1 -1
- package/date-input/YearPicker.js +23 -12
- package/date-input/types.d.ts +6 -8
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +55 -86
- package/dialog/Dialog.stories.tsx +145 -217
- package/dialog/Dialog.test.js +302 -3
- package/dialog/types.d.ts +0 -13
- package/dropdown/Dropdown.js +5 -8
- package/dropdown/Dropdown.stories.tsx +210 -84
- package/dropdown/Dropdown.test.js +3 -2
- package/dropdown/DropdownMenu.js +12 -18
- package/dropdown/DropdownMenuItem.js +4 -17
- package/dropdown/types.d.ts +3 -3
- package/file-input/FileInput.js +4 -8
- package/file-input/FileInput.stories.tsx +85 -2
- package/file-input/FileInput.test.js +1 -42
- package/file-input/FileItem.js +3 -2
- package/file-input/types.d.ts +1 -1
- package/flex/Flex.js +4 -2
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +70 -5
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +44 -64
- package/footer/Footer.stories.tsx +36 -21
- package/footer/Footer.test.js +16 -26
- package/footer/types.d.ts +10 -12
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +91 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +20 -49
- package/header/Header.stories.tsx +115 -36
- package/header/Header.test.js +2 -2
- package/header/types.d.ts +1 -15
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.js +1 -1
- package/image/Image.d.ts +4 -0
- package/image/Image.js +85 -0
- package/image/Image.stories.tsx +127 -0
- package/image/types.d.ts +72 -0
- package/inset/Inset.stories.tsx +2 -1
- package/layout/ApplicationLayout.d.ts +5 -5
- package/layout/ApplicationLayout.js +15 -12
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +7 -4
- package/layout/Icons.js +52 -56
- package/layout/types.d.ts +2 -3
- package/link/Link.js +3 -3
- package/link/Link.stories.tsx +60 -0
- package/link/Link.test.js +2 -4
- package/link/types.d.ts +2 -2
- package/main.d.ts +4 -2
- package/main.js +17 -1
- package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
- package/{tabs-nav → nav-tabs}/NavTabs.js +8 -11
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +110 -6
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
- package/{tabs-nav → nav-tabs}/Tab.js +48 -32
- package/{tabs-nav → nav-tabs}/types.d.ts +8 -9
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +6 -4
- package/number-input/NumberInput.test.js +279 -96
- package/package.json +3 -3
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +16 -28
- package/paginator/Paginator.js +7 -15
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +57 -47
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +5 -5
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +39 -0
- package/password-input/PasswordInput.js +35 -82
- package/password-input/PasswordInput.stories.tsx +1 -0
- package/password-input/PasswordInput.test.js +28 -35
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +5 -5
- package/progress-bar/ProgressBar.stories.jsx +35 -2
- package/progress-bar/ProgressBar.test.js +1 -1
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.stories.tsx +14 -0
- package/radio-group/Radio.js +10 -10
- package/radio-group/RadioGroup.js +8 -10
- package/radio-group/RadioGroup.stories.tsx +131 -18
- package/radio-group/RadioGroup.test.js +1 -1
- package/resultsetTable/ResultsetTable.js +2 -2
- package/resultsetTable/ResultsetTable.test.js +18 -23
- package/resultsetTable/types.d.ts +3 -3
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +5 -34
- package/select/Option.js +11 -24
- package/select/Select.js +56 -35
- package/select/Select.stories.tsx +495 -148
- package/select/Select.test.js +80 -85
- package/select/types.d.ts +2 -2
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +51 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +66 -96
- package/sidenav/Sidenav.stories.tsx +165 -63
- package/sidenav/types.d.ts +21 -18
- package/slider/Slider.js +6 -7
- package/slider/Slider.stories.tsx +57 -0
- package/slider/Slider.test.js +1 -1
- package/slider/types.d.ts +2 -2
- package/spinner/Spinner.js +17 -23
- package/spinner/Spinner.stories.jsx +53 -27
- package/spinner/Spinner.test.js +1 -1
- package/switch/Switch.js +3 -3
- package/switch/Switch.stories.tsx +33 -0
- package/switch/Switch.test.js +1 -1
- package/switch/types.d.ts +2 -2
- package/table/Table.js +2 -2
- package/table/Table.stories.jsx +80 -1
- package/table/Table.test.js +1 -1
- package/tabs/Tab.js +12 -15
- package/tabs/Tabs.js +11 -17
- package/tabs/Tabs.stories.tsx +45 -5
- package/tabs/Tabs.test.js +4 -5
- package/tabs/types.d.ts +2 -2
- package/tag/Tag.js +7 -9
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +1 -1
- package/text-input/Suggestion.js +34 -7
- package/text-input/TextInput.js +71 -91
- package/text-input/TextInput.stories.tsx +93 -5
- package/text-input/TextInput.test.js +125 -26
- package/textarea/Textarea.js +3 -4
- package/textarea/Textarea.stories.jsx +60 -1
- package/textarea/Textarea.test.js +2 -4
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +85 -59
- package/toggle-group/ToggleGroup.stories.tsx +48 -3
- package/toggle-group/ToggleGroup.test.js +38 -24
- package/toggle-group/types.d.ts +22 -13
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +14 -113
- package/typography/Typography.stories.tsx +1 -1
- package/useTheme.d.ts +1242 -1
- package/useTheme.js +1 -1
- package/useTranslatedLabels.d.ts +84 -1
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +108 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +138 -0
- package/wizard/Wizard.js +2 -2
- package/wizard/Wizard.stories.tsx +20 -0
- package/wizard/Wizard.test.js +1 -1
- package/wizard/types.d.ts +5 -6
- package/card/ice-cream.jpg +0 -0
- package/number-input/NumberInputContext.d.ts +0 -4
- package/number-input/NumberInputContext.js +0 -19
- package/number-input/numberInputContextTypes.d.ts +0 -19
- /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
|
@@ -19,7 +19,9 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
19
19
|
|
|
20
20
|
var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _useTranslatedLabels2 = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
23
|
+
|
|
24
|
+
var _Icons = _interopRequireDefault(require("./Icons"));
|
|
23
25
|
|
|
24
26
|
var _templateObject;
|
|
25
27
|
|
|
@@ -27,6 +29,16 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
27
29
|
|
|
28
30
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(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; }
|
|
29
31
|
|
|
32
|
+
var setInputType = function setInputType(type, element) {
|
|
33
|
+
element === null || element === void 0 ? void 0 : element.getElementsByTagName("input")[0].setAttribute("type", type);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
var setAriaAttributes = function setAriaAttributes(ariaExpanded, ariaLabel, element) {
|
|
37
|
+
var inputElement = element === null || element === void 0 ? void 0 : element.getElementsByTagName("input")[0];
|
|
38
|
+
inputElement === null || inputElement === void 0 ? void 0 : inputElement.setAttribute("aria-expanded", ariaExpanded);
|
|
39
|
+
inputElement === null || inputElement === void 0 ? void 0 : inputElement.setAttribute("aria-label", ariaLabel);
|
|
40
|
+
};
|
|
41
|
+
|
|
30
42
|
var DxcPasswordInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
31
43
|
var label = _ref.label,
|
|
32
44
|
_ref$name = _ref.name,
|
|
@@ -55,97 +67,37 @@ var DxcPasswordInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref,
|
|
|
55
67
|
setIsPasswordVisible = _useState2[1];
|
|
56
68
|
|
|
57
69
|
var inputRef = (0, _react.useRef)(null);
|
|
58
|
-
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
59
|
-
|
|
60
|
-
var setInputType = function setInputType(type) {
|
|
61
|
-
var _inputRef$current, _inputRef$current$chi;
|
|
62
|
-
|
|
63
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : (_inputRef$current$chi = _inputRef$current.children[label && helperText ? 2 : label || helperText ? 1 : 0]) === null || _inputRef$current$chi === void 0 ? void 0 : _inputRef$current$chi.children[0].setAttribute("type", type);
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
var setAriaAttributes = function setAriaAttributes(ariaExpanded, ariaLabel) {
|
|
67
|
-
var inputIndex = label && helperText ? 2 : label || helperText ? 1 : 0;
|
|
68
70
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : (_inputRef$current2$ch = _inputRef$current2.children[inputIndex]) === null || _inputRef$current2$ch === void 0 ? void 0 : (_inputRef$current2$ch2 = _inputRef$current2$ch.children[3]) === null || _inputRef$current2$ch2 === void 0 ? void 0 : _inputRef$current2$ch2.setAttribute("aria-expanded", ariaExpanded);
|
|
73
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : (_inputRef$current3$ch = _inputRef$current3.children[inputIndex]) === null || _inputRef$current3$ch === void 0 ? void 0 : (_inputRef$current3$ch2 = _inputRef$current3$ch.children[3]) === null || _inputRef$current3$ch2 === void 0 ? void 0 : _inputRef$current3$ch2.setAttribute("aria-label", ariaLabel);
|
|
74
|
-
} else if (error || clearable && !value) {
|
|
75
|
-
var _inputRef$current4, _inputRef$current4$ch, _inputRef$current4$ch2, _inputRef$current5, _inputRef$current5$ch, _inputRef$current5$ch2;
|
|
76
|
-
|
|
77
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : (_inputRef$current4$ch = _inputRef$current4.children[inputIndex]) === null || _inputRef$current4$ch === void 0 ? void 0 : (_inputRef$current4$ch2 = _inputRef$current4$ch.children[2]) === null || _inputRef$current4$ch2 === void 0 ? void 0 : _inputRef$current4$ch2.setAttribute("aria-expanded", ariaExpanded);
|
|
78
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : (_inputRef$current5$ch = _inputRef$current5.children[inputIndex]) === null || _inputRef$current5$ch === void 0 ? void 0 : (_inputRef$current5$ch2 = _inputRef$current5$ch.children[2]) === null || _inputRef$current5$ch2 === void 0 ? void 0 : _inputRef$current5$ch2.setAttribute("aria-label", ariaLabel);
|
|
79
|
-
} else {
|
|
80
|
-
var _inputRef$current6, _inputRef$current6$ch, _inputRef$current6$ch2, _inputRef$current7, _inputRef$current7$ch, _inputRef$current7$ch2;
|
|
81
|
-
|
|
82
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current6 = inputRef.current) === null || _inputRef$current6 === void 0 ? void 0 : (_inputRef$current6$ch = _inputRef$current6.children[inputIndex]) === null || _inputRef$current6$ch === void 0 ? void 0 : (_inputRef$current6$ch2 = _inputRef$current6$ch.children[1]) === null || _inputRef$current6$ch2 === void 0 ? void 0 : _inputRef$current6$ch2.setAttribute("aria-expanded", ariaExpanded);
|
|
83
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current7 = inputRef.current) === null || _inputRef$current7 === void 0 ? void 0 : (_inputRef$current7$ch = _inputRef$current7.children[inputIndex]) === null || _inputRef$current7$ch === void 0 ? void 0 : (_inputRef$current7$ch2 = _inputRef$current7$ch.children[1]) === null || _inputRef$current7$ch2 === void 0 ? void 0 : _inputRef$current7$ch2.setAttribute("aria-label", ariaLabel);
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
var getIconTitle = function getIconTitle() {
|
|
88
|
-
return isPasswordVisible ? translatedLabels.passwordInput.inputHidePasswordTitle : translatedLabels.passwordInput.inputShowPasswordTitle;
|
|
89
|
-
};
|
|
71
|
+
var _useTranslatedLabels = (0, _useTranslatedLabels2["default"])(),
|
|
72
|
+
passwordInput = _useTranslatedLabels.passwordInput;
|
|
90
73
|
|
|
91
74
|
(0, _react.useEffect)(function () {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
}, [isPasswordVisible]);
|
|
102
|
-
|
|
103
|
-
var viewPassword = function viewPassword() {
|
|
104
|
-
setInputType("text");
|
|
105
|
-
setIsPasswordVisible(true);
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
var hidePassword = function hidePassword() {
|
|
109
|
-
setInputType("password");
|
|
110
|
-
setIsPasswordVisible(false);
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
var action = {
|
|
114
|
-
onClick: isPasswordVisible ? hidePassword : viewPassword,
|
|
115
|
-
icon: isPasswordVisible ? /*#__PURE__*/_react["default"].createElement("svg", {
|
|
116
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
117
|
-
height: "24px",
|
|
118
|
-
viewBox: "0 0 24 24",
|
|
119
|
-
width: "24px",
|
|
120
|
-
fill: "currentColor"
|
|
121
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
122
|
-
d: "M0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0z",
|
|
123
|
-
fill: "none"
|
|
124
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
125
|
-
d: "M12 6c3.79 0 7.17 2.13 8.82 5.5-.59 1.22-1.42 2.27-2.41 3.12l1.41 1.41c1.39-1.23 2.49-2.77 3.18-4.53C21.27 7.11 17 4 12 4c-1.27 0-2.49.2-3.64.57l1.65 1.65C10.66 6.09 11.32 6 12 6zm-1.07 1.14L13 9.21c.57.25 1.03.71 1.28 1.28l2.07 2.07c.08-.34.14-.7.14-1.07C16.5 9.01 14.48 7 12 7c-.37 0-.72.05-1.07.14zM2.01 3.87l2.68 2.68C3.06 7.83 1.77 9.53 1 11.5 2.73 15.89 7 19 12 19c1.52 0 2.98-.29 4.32-.82l3.42 3.42 1.41-1.41L3.42 2.45 2.01 3.87zm7.5 7.5l2.61 2.61c-.04.01-.08.02-.12.02-1.38 0-2.5-1.12-2.5-2.5 0-.05.01-.08.01-.13zm-3.4-3.4l1.75 1.75c-.23.55-.36 1.15-.36 1.78 0 2.48 2.02 4.5 4.5 4.5.63 0 1.23-.13 1.77-.36l.98.98c-.88.24-1.8.38-2.75.38-3.79 0-7.17-2.13-8.82-5.5.7-1.43 1.72-2.61 2.93-3.53z"
|
|
126
|
-
})) : /*#__PURE__*/_react["default"].createElement("svg", {
|
|
127
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
128
|
-
height: "24px",
|
|
129
|
-
viewBox: "0 0 24 24",
|
|
130
|
-
width: "24px",
|
|
131
|
-
fill: "currentColor"
|
|
132
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
133
|
-
d: "M0 0h24v24H0V0z",
|
|
134
|
-
fill: "none"
|
|
135
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
136
|
-
d: "M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4zm0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7z"
|
|
137
|
-
})),
|
|
138
|
-
title: getIconTitle()
|
|
139
|
-
};
|
|
75
|
+
(function () {
|
|
76
|
+
if (isPasswordVisible) {
|
|
77
|
+
setInputType("text", inputRef.current);
|
|
78
|
+
setAriaAttributes("true", passwordInput.inputHidePasswordTitle, inputRef.current);
|
|
79
|
+
} else {
|
|
80
|
+
setInputType("password", inputRef.current);
|
|
81
|
+
setAriaAttributes("false", passwordInput.inputShowPasswordTitle, inputRef.current);
|
|
82
|
+
}
|
|
83
|
+
})();
|
|
84
|
+
}, [isPasswordVisible, passwordInput]);
|
|
140
85
|
return /*#__PURE__*/_react["default"].createElement(PasswordInput, {
|
|
141
86
|
ref: ref
|
|
142
87
|
}, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
143
|
-
ref: inputRef,
|
|
144
88
|
label: label,
|
|
145
89
|
name: name,
|
|
146
90
|
value: value,
|
|
147
91
|
helperText: helperText,
|
|
148
|
-
action:
|
|
92
|
+
action: {
|
|
93
|
+
onClick: function onClick() {
|
|
94
|
+
setIsPasswordVisible(function (isPasswordVisible) {
|
|
95
|
+
return !isPasswordVisible;
|
|
96
|
+
});
|
|
97
|
+
},
|
|
98
|
+
icon: isPasswordVisible ? _Icons["default"].hidePassword : _Icons["default"].showPassword,
|
|
99
|
+
title: isPasswordVisible ? passwordInput.inputHidePasswordTitle : passwordInput.inputShowPasswordTitle
|
|
100
|
+
},
|
|
149
101
|
error: error,
|
|
150
102
|
clearable: clearable,
|
|
151
103
|
onChange: onChange,
|
|
@@ -156,6 +108,7 @@ var DxcPasswordInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref,
|
|
|
156
108
|
minLength: minLength,
|
|
157
109
|
maxLength: maxLength,
|
|
158
110
|
autocomplete: autocomplete,
|
|
111
|
+
ref: inputRef,
|
|
159
112
|
tabIndex: tabIndex
|
|
160
113
|
}));
|
|
161
114
|
});
|
|
@@ -12,41 +12,35 @@ var _react2 = require("@testing-library/react");
|
|
|
12
12
|
|
|
13
13
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
14
14
|
|
|
15
|
-
var _PasswordInput = _interopRequireDefault(require("./PasswordInput"));
|
|
15
|
+
var _PasswordInput = _interopRequireDefault(require("./PasswordInput.tsx"));
|
|
16
16
|
|
|
17
17
|
describe("Password input component tests", function () {
|
|
18
|
-
test("Password input renders with label", function () {
|
|
18
|
+
test("Password input renders with label and helper text", function () {
|
|
19
19
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
20
|
-
label: "Password input label"
|
|
20
|
+
label: "Password input label",
|
|
21
|
+
helperText: "Helper text"
|
|
21
22
|
})),
|
|
22
23
|
getByText = _render.getByText;
|
|
23
24
|
|
|
24
25
|
expect(getByText("Password input label")).toBeTruthy();
|
|
25
|
-
});
|
|
26
|
-
test("Password input renders with helper text", function () {
|
|
27
|
-
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
28
|
-
helperText: "Helper text"
|
|
29
|
-
})),
|
|
30
|
-
getByText = _render2.getByText;
|
|
31
|
-
|
|
32
26
|
expect(getByText("Helper text")).toBeTruthy();
|
|
33
27
|
});
|
|
34
28
|
test("Password input renders error", function () {
|
|
35
|
-
var
|
|
29
|
+
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
36
30
|
error: "Error message."
|
|
37
31
|
})),
|
|
38
|
-
getByText =
|
|
32
|
+
getByText = _render2.getByText;
|
|
39
33
|
|
|
40
34
|
expect(getByText("Error message.")).toBeTruthy();
|
|
41
35
|
});
|
|
42
36
|
test("onChange function is called correctly", function () {
|
|
43
37
|
var onChange = jest.fn();
|
|
44
38
|
|
|
45
|
-
var
|
|
39
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
46
40
|
label: "Password input",
|
|
47
41
|
onChange: onChange
|
|
48
42
|
})),
|
|
49
|
-
getByLabelText =
|
|
43
|
+
getByLabelText = _render3.getByLabelText;
|
|
50
44
|
|
|
51
45
|
var passwordInput = getByLabelText("Password input");
|
|
52
46
|
|
|
@@ -60,11 +54,11 @@ describe("Password input component tests", function () {
|
|
|
60
54
|
test("onBlur function is called correctly", function () {
|
|
61
55
|
var onBlur = jest.fn();
|
|
62
56
|
|
|
63
|
-
var
|
|
57
|
+
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
64
58
|
label: "Password input",
|
|
65
59
|
onBlur: onBlur
|
|
66
60
|
})),
|
|
67
|
-
getByLabelText =
|
|
61
|
+
getByLabelText = _render4.getByLabelText;
|
|
68
62
|
|
|
69
63
|
var passwordInput = getByLabelText("Password input");
|
|
70
64
|
|
|
@@ -78,12 +72,12 @@ describe("Password input component tests", function () {
|
|
|
78
72
|
expect(passwordInput.value).toBe("Pa$$w0rd");
|
|
79
73
|
});
|
|
80
74
|
test("Clear password input value", function () {
|
|
81
|
-
var
|
|
75
|
+
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
82
76
|
label: "Password input",
|
|
83
77
|
clearable: true
|
|
84
78
|
})),
|
|
85
|
-
getAllByRole =
|
|
86
|
-
getByLabelText =
|
|
79
|
+
getAllByRole = _render5.getAllByRole,
|
|
80
|
+
getByLabelText = _render5.getByLabelText;
|
|
87
81
|
|
|
88
82
|
var passwordInput = getByLabelText("Password input");
|
|
89
83
|
|
|
@@ -97,11 +91,11 @@ describe("Password input component tests", function () {
|
|
|
97
91
|
expect(passwordInput.value).toBe("");
|
|
98
92
|
});
|
|
99
93
|
test("Non clearable password input has no clear icon", function () {
|
|
100
|
-
var
|
|
94
|
+
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
101
95
|
label: "Password input"
|
|
102
96
|
})),
|
|
103
|
-
getAllByRole =
|
|
104
|
-
getByLabelText =
|
|
97
|
+
getAllByRole = _render6.getAllByRole,
|
|
98
|
+
getByLabelText = _render6.getByLabelText;
|
|
105
99
|
|
|
106
100
|
var passwordInput = getByLabelText("Password input");
|
|
107
101
|
|
|
@@ -112,12 +106,12 @@ describe("Password input component tests", function () {
|
|
|
112
106
|
expect(buttons.length).toBe(1);
|
|
113
107
|
});
|
|
114
108
|
test("Show/hide password input button works correctly", function () {
|
|
115
|
-
var
|
|
109
|
+
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
116
110
|
label: "Password input",
|
|
117
111
|
clearable: true
|
|
118
112
|
})),
|
|
119
|
-
getAllByRole =
|
|
120
|
-
getByLabelText =
|
|
113
|
+
getAllByRole = _render7.getAllByRole,
|
|
114
|
+
getByLabelText = _render7.getByLabelText;
|
|
121
115
|
|
|
122
116
|
var passwordInput = getByLabelText("Password input");
|
|
123
117
|
|
|
@@ -132,17 +126,17 @@ describe("Password input component tests", function () {
|
|
|
132
126
|
expect(passwordInput.type).toBe("text");
|
|
133
127
|
});
|
|
134
128
|
test("Password tooltip is correct", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
135
|
-
var
|
|
129
|
+
var _render8, getAllByRole, getByTitle, queryByTitle, showButton;
|
|
136
130
|
|
|
137
131
|
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
138
132
|
while (1) {
|
|
139
133
|
switch (_context.prev = _context.next) {
|
|
140
134
|
case 0:
|
|
141
|
-
|
|
135
|
+
_render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
142
136
|
label: "Password input",
|
|
143
137
|
clearable: true,
|
|
144
138
|
value: "Password"
|
|
145
|
-
})), getAllByRole =
|
|
139
|
+
})), getAllByRole = _render8.getAllByRole, getByTitle = _render8.getByTitle, queryByTitle = _render8.queryByTitle;
|
|
146
140
|
showButton = getAllByRole("button")[1];
|
|
147
141
|
|
|
148
142
|
_userEvent["default"].hover(showButton);
|
|
@@ -160,22 +154,21 @@ describe("Password input component tests", function () {
|
|
|
160
154
|
}
|
|
161
155
|
}, _callee);
|
|
162
156
|
})));
|
|
163
|
-
test("Password input has correct
|
|
164
|
-
var
|
|
157
|
+
test("Password input has correct accessibility attributes", function () {
|
|
158
|
+
var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
|
|
165
159
|
label: "Password input"
|
|
166
160
|
})),
|
|
167
|
-
getByRole =
|
|
168
|
-
getByLabelText =
|
|
161
|
+
getByRole = _render9.getByRole,
|
|
162
|
+
getByLabelText = _render9.getByLabelText;
|
|
169
163
|
|
|
170
164
|
var passwordInput = getByLabelText("Password input");
|
|
171
|
-
expect(passwordInput.getAttribute("aria-autocomplete")).toBeNull();
|
|
172
|
-
expect(passwordInput.getAttribute("aria-controls")).toBeNull();
|
|
173
|
-
expect(passwordInput.getAttribute("aria-expanded")).toBeNull();
|
|
174
165
|
var showButton = getByRole("button");
|
|
166
|
+
expect(passwordInput.getAttribute("aria-expanded")).toBe("false");
|
|
175
167
|
expect(showButton.getAttribute("aria-label")).toBe("Show password");
|
|
176
168
|
|
|
177
169
|
_userEvent["default"].click(showButton);
|
|
178
170
|
|
|
171
|
+
expect(passwordInput.getAttribute("aria-expanded")).toBe("true");
|
|
179
172
|
expect(showButton.getAttribute("aria-label")).toBe("Hide password");
|
|
180
173
|
});
|
|
181
174
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import
|
|
3
|
-
declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, }:
|
|
2
|
+
import ProgressBarPropsType from "./types";
|
|
3
|
+
declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, }: ProgressBarPropsType) => JSX.Element;
|
|
4
4
|
export default DxcProgressBar;
|
|
@@ -19,7 +19,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
19
19
|
|
|
20
20
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
21
|
|
|
22
|
-
var _variables = require("../common/variables
|
|
22
|
+
var _variables = require("../common/variables");
|
|
23
23
|
|
|
24
24
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
25
25
|
|
|
@@ -87,7 +87,7 @@ var DxcProgressBar = function DxcProgressBar(_ref) {
|
|
|
87
87
|
var BackgroundProgressBar = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n display: flex;\n flex-wrap: wrap;\n min-width: 100px;\n width: 100%;\n"])), function (_ref2) {
|
|
88
88
|
var overlay = _ref2.overlay,
|
|
89
89
|
theme = _ref2.theme;
|
|
90
|
-
return overlay ? "background-color: ".concat(theme.overlayColor, ";\n
|
|
90
|
+
return overlay ? "background-color: ".concat(theme.overlayColor, ";\n width: 100%;\n justify-content: center;\n height: 100vh;\n align-items: center;\n max-width: 100%;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1300;") : "background-color: \"transparent\";";
|
|
91
91
|
});
|
|
92
92
|
|
|
93
93
|
var ProgressBarContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: ", ";\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
@@ -119,7 +119,7 @@ var ProgressBarLabel = _styledComponents["default"].div(_templateObject4 || (_te
|
|
|
119
119
|
}, function (props) {
|
|
120
120
|
return props.theme.labelFontTextTransform;
|
|
121
121
|
}, function (props) {
|
|
122
|
-
return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.overlay === true ?
|
|
122
|
+
return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.labelFontColor;
|
|
123
123
|
});
|
|
124
124
|
|
|
125
125
|
var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n display: ", ";\n flex-shrink: 0;\n"])), function (props) {
|
|
@@ -133,13 +133,13 @@ var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (
|
|
|
133
133
|
}, function (props) {
|
|
134
134
|
return props.theme.valueFontTextTransform;
|
|
135
135
|
}, function (props) {
|
|
136
|
-
return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ?
|
|
136
|
+
return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.valueFontColor;
|
|
137
137
|
}, function (props) {
|
|
138
138
|
return props.value !== undefined && props.value !== null && props.showValue === true && "block" || "none";
|
|
139
139
|
});
|
|
140
140
|
|
|
141
141
|
var HelperText = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"])), function (props) {
|
|
142
|
-
return props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.overlay === true ?
|
|
142
|
+
return props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.helperTextFontColor;
|
|
143
143
|
}, function (props) {
|
|
144
144
|
return props.theme.helperTextFontFamily;
|
|
145
145
|
}, function (props) {
|
|
@@ -2,12 +2,23 @@ import React from "react";
|
|
|
2
2
|
import DxcProgressBar from "./ProgressBar";
|
|
3
3
|
import Title from "../../.storybook/components/Title";
|
|
4
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
5
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
5
6
|
|
|
6
7
|
export default {
|
|
7
8
|
title: "ProgressBar",
|
|
8
9
|
component: DxcProgressBar,
|
|
9
10
|
};
|
|
10
11
|
|
|
12
|
+
const opinionatedTheme = {
|
|
13
|
+
progressBar: {
|
|
14
|
+
accentColor: "#5f249f",
|
|
15
|
+
baseColor: "#e6e6e6",
|
|
16
|
+
fontColor: "#000000",
|
|
17
|
+
overlayColor: "#000000b3",
|
|
18
|
+
overlayFontColor: "#ffffff",
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
|
|
11
22
|
export const Chromatic = () => (
|
|
12
23
|
<>
|
|
13
24
|
<ExampleContainer>
|
|
@@ -46,15 +57,37 @@ export const Chromatic = () => (
|
|
|
46
57
|
<DxcProgressBar label="Margin xlarge" margin="xlarge" value={50} showValue />
|
|
47
58
|
</ExampleContainer>
|
|
48
59
|
<ExampleContainer>
|
|
49
|
-
<Title title="
|
|
60
|
+
<Title title="Xxlarge margin" theme="light" level={4} />
|
|
50
61
|
<DxcProgressBar label="Margin xxlarge" margin="xxlarge" value={50} showValue />
|
|
51
62
|
</ExampleContainer>
|
|
63
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
64
|
+
<ExampleContainer>
|
|
65
|
+
<Title title="Label and helper text" theme="light" level={4} />
|
|
66
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
67
|
+
<DxcProgressBar label="Loading..." helperText="Helper text" value={24} showValue />
|
|
68
|
+
</HalstackProvider>
|
|
69
|
+
</ExampleContainer>
|
|
70
|
+
<ExampleContainer>
|
|
71
|
+
<Title title="Without default value" theme="light" level={4} />
|
|
72
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
73
|
+
<DxcProgressBar label="Loading..." helperText="Helper text" showValue />
|
|
74
|
+
</HalstackProvider>
|
|
75
|
+
</ExampleContainer>
|
|
52
76
|
</>
|
|
53
77
|
);
|
|
54
78
|
|
|
55
79
|
export const ProgressBarOverlay = () => (
|
|
56
80
|
<ExampleContainer>
|
|
57
81
|
<Title title="Overlay" theme="dark" level={4} />
|
|
58
|
-
<DxcProgressBar label="Overlay" helperText="Helper text" overlay
|
|
82
|
+
<DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
|
|
83
|
+
</ExampleContainer>
|
|
84
|
+
);
|
|
85
|
+
|
|
86
|
+
export const ProgressBarOverlayOpinionated = () => (
|
|
87
|
+
<ExampleContainer>
|
|
88
|
+
<Title title="Overlay" theme="dark" level={4} />
|
|
89
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
90
|
+
<DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
|
|
91
|
+
</HalstackProvider>
|
|
59
92
|
</ExampleContainer>
|
|
60
93
|
);
|
|
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
6
6
|
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
8
|
|
|
9
|
-
var _ProgressBar = _interopRequireDefault(require("./ProgressBar"));
|
|
9
|
+
var _ProgressBar = _interopRequireDefault(require("./ProgressBar.tsx"));
|
|
10
10
|
|
|
11
11
|
describe("ProgressBar component tests", function () {
|
|
12
12
|
test("ProgressBar renders with label and helperText", function () {
|
package/progress-bar/types.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
2
|
+
declare type Size = {
|
|
3
3
|
top?: Space;
|
|
4
4
|
bottom?: Space;
|
|
5
5
|
left?: Space;
|
|
6
6
|
right?: Space;
|
|
7
7
|
};
|
|
8
|
-
|
|
8
|
+
declare type Props = {
|
|
9
9
|
/**
|
|
10
10
|
* Text to be placed above the progress bar.
|
|
11
11
|
*/
|
|
@@ -34,3 +34,4 @@ export declare type Props = {
|
|
|
34
34
|
*/
|
|
35
35
|
margin?: Space | Size;
|
|
36
36
|
};
|
|
37
|
+
export default Props;
|
|
@@ -5,12 +5,20 @@ import DxcHeading from "../heading/Heading";
|
|
|
5
5
|
import DxcParagraph from "../paragraph/Paragraph";
|
|
6
6
|
import Title from "../../.storybook/components/Title";
|
|
7
7
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
8
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
8
9
|
|
|
9
10
|
export default {
|
|
10
11
|
title: "QuickNav",
|
|
11
12
|
component: DxcQuickNav,
|
|
12
13
|
};
|
|
13
14
|
|
|
15
|
+
const opinionatedTheme = {
|
|
16
|
+
quickNav: {
|
|
17
|
+
fontColor: "#666666",
|
|
18
|
+
accentColor: "#9a6bb2",
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
|
|
14
22
|
const defaultLinks = [
|
|
15
23
|
{
|
|
16
24
|
label: "Overview",
|
|
@@ -315,6 +323,12 @@ export const Chromatic = () => (
|
|
|
315
323
|
</QuickNavContainer>
|
|
316
324
|
</Container>
|
|
317
325
|
</ExampleContainer>
|
|
326
|
+
<Title title="Opinionated theme" level={2} />
|
|
327
|
+
<ExampleContainer>
|
|
328
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
329
|
+
<DxcQuickNav links={defaultLinks} />
|
|
330
|
+
</HalstackProvider>
|
|
331
|
+
</ExampleContainer>
|
|
318
332
|
</>
|
|
319
333
|
);
|
|
320
334
|
|
package/radio-group/Radio.js
CHANGED
|
@@ -21,7 +21,9 @@ var _uuid = require("uuid");
|
|
|
21
21
|
|
|
22
22
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
23
23
|
|
|
24
|
-
var
|
|
24
|
+
var _Flex = _interopRequireDefault(require("../flex/Flex"));
|
|
25
|
+
|
|
26
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
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); }
|
|
27
29
|
|
|
@@ -56,7 +58,7 @@ var DxcRadio = function DxcRadio(_ref) {
|
|
|
56
58
|
firstUpdate = _useState4[0],
|
|
57
59
|
setFirstUpdate = _useState4[1];
|
|
58
60
|
|
|
59
|
-
(0, _react.
|
|
61
|
+
(0, _react.useEffect)(function () {
|
|
60
62
|
var _ref$current2;
|
|
61
63
|
|
|
62
64
|
// Don't apply in the first render
|
|
@@ -69,7 +71,7 @@ var DxcRadio = function DxcRadio(_ref) {
|
|
|
69
71
|
}, [focused]);
|
|
70
72
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
71
73
|
theme: colorsTheme.radioGroup
|
|
72
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
74
|
+
}, /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(RadioContainer, {
|
|
73
75
|
error: error,
|
|
74
76
|
disabled: disabled,
|
|
75
77
|
readonly: readonly,
|
|
@@ -107,11 +109,9 @@ var getRadioInputStateColor = function getRadioInputStateColor(props, state) {
|
|
|
107
109
|
}
|
|
108
110
|
};
|
|
109
111
|
|
|
110
|
-
var
|
|
111
|
-
|
|
112
|
-
var RadioInputContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n width: 24px;\n"])));
|
|
112
|
+
var RadioInputContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n width: 24px;\n"])));
|
|
113
113
|
|
|
114
|
-
var RadioInput = _styledComponents["default"].span(
|
|
114
|
+
var RadioInput = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 18px;\n height: 18px;\n border: 2px solid ", ";\n border-radius: 50%;\n\n &:focus {\n outline: 2px solid ", ";\n outline-offset: 1px;\n }\n ", "\n"])), function (props) {
|
|
115
115
|
return getRadioInputStateColor(props, "enabled");
|
|
116
116
|
}, function (props) {
|
|
117
117
|
return props.theme.focusBorderColor;
|
|
@@ -119,11 +119,11 @@ var RadioInput = _styledComponents["default"].span(_templateObject3 || (_templat
|
|
|
119
119
|
return props.disabled && "pointer-events: none;";
|
|
120
120
|
});
|
|
121
121
|
|
|
122
|
-
var Dot = _styledComponents["default"].span(
|
|
122
|
+
var Dot = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n height: 10px;\n width: 10px;\n border-radius: 50%;\n background-color: ", ";\n"])), function (props) {
|
|
123
123
|
return getRadioInputStateColor(props, "enabled");
|
|
124
124
|
});
|
|
125
125
|
|
|
126
|
-
var Label = _styledComponents["default"].span(
|
|
126
|
+
var Label = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n ", "\n"])), function (props) {
|
|
127
127
|
return props.theme.radioInputLabelMargin;
|
|
128
128
|
}, function (props) {
|
|
129
129
|
return props.theme.fontFamily;
|
|
@@ -139,7 +139,7 @@ var Label = _styledComponents["default"].span(_templateObject5 || (_templateObje
|
|
|
139
139
|
return props.disabled ? "color: ".concat(props.theme.disabledRadioInputLabelFontColor, ";") : "color: ".concat(props.theme.radioInputLabelFontColor);
|
|
140
140
|
});
|
|
141
141
|
|
|
142
|
-
var RadioContainer = _styledComponents["default"].span(
|
|
142
|
+
var RadioContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n cursor: ", ";\n\n &:hover {\n ", " {\n border-color: ", ";\n }\n ", " {\n background-color: ", ";\n }\n }\n &:active {\n ", " {\n border-color: ", ";\n }\n ", " {\n background-color: ", ";\n }\n }\n"])), function (props) {
|
|
143
143
|
return props.disabled ? "not-allowed" : props.readonly ? "default" : "pointer";
|
|
144
144
|
}, RadioInput, function (props) {
|
|
145
145
|
return !props.disabled && getRadioInputStateColor(props, "hover");
|
|
@@ -83,14 +83,13 @@ var DxcRadioGroup = /*#__PURE__*/_react["default"].forwardRef(function (_ref, re
|
|
|
83
83
|
|
|
84
84
|
var colorsTheme = (0, _useTheme["default"])();
|
|
85
85
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
86
|
-
var optionalItem = {
|
|
87
|
-
label: optionalItemLabel || translatedLabels.radioGroup.optionalItemLabelDefault,
|
|
88
|
-
value: "",
|
|
89
|
-
disabled: disabled
|
|
90
|
-
};
|
|
91
86
|
var innerOptions = (0, _react.useMemo)(function () {
|
|
92
|
-
return optional ? [].concat((0, _toConsumableArray2["default"])(options), [
|
|
93
|
-
|
|
87
|
+
return optional ? [].concat((0, _toConsumableArray2["default"])(options), [{
|
|
88
|
+
label: optionalItemLabel !== null && optionalItemLabel !== void 0 ? optionalItemLabel : translatedLabels.radioGroup.optionalItemLabelDefault,
|
|
89
|
+
value: "",
|
|
90
|
+
disabled: disabled
|
|
91
|
+
}]) : options;
|
|
92
|
+
}, [optional, options, optionalItemLabel, translatedLabels]);
|
|
94
93
|
|
|
95
94
|
var _useState7 = (0, _react.useState)(getInitialFocusIndex(innerOptions, value !== null && value !== void 0 ? value : innerValue)),
|
|
96
95
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
@@ -202,8 +201,7 @@ var DxcRadioGroup = /*#__PURE__*/_react["default"].forwardRef(function (_ref, re
|
|
|
202
201
|
name: name,
|
|
203
202
|
disabled: disabled,
|
|
204
203
|
value: (_ref2 = value !== null && value !== void 0 ? value : innerValue) !== null && _ref2 !== void 0 ? _ref2 : "",
|
|
205
|
-
readOnly: true
|
|
206
|
-
"aria-hidden": "true"
|
|
204
|
+
readOnly: true
|
|
207
205
|
}), innerOptions.map(function (option, index) {
|
|
208
206
|
return /*#__PURE__*/_react["default"].createElement(_Radio["default"], {
|
|
209
207
|
key: "radio-".concat(index),
|
|
@@ -225,7 +223,7 @@ var DxcRadioGroup = /*#__PURE__*/_react["default"].forwardRef(function (_ref, re
|
|
|
225
223
|
}, error)));
|
|
226
224
|
});
|
|
227
225
|
|
|
228
|
-
var RadioGroupContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: column;\n
|
|
226
|
+
var RadioGroupContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: inline-flex;\n flex-direction: column;\n"])));
|
|
229
227
|
|
|
230
228
|
var Label = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n ", "\n"])), function (props) {
|
|
231
229
|
return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
|