@dxc-technology/halstack-react 0.0.0-de7c6b0 → 0.0.0-dec566a
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 +1 -10
- package/BackgroundColorContext.js +4 -21
- package/HalstackContext.d.ts +52 -139
- package/HalstackContext.js +11 -36
- package/README.md +47 -0
- package/accordion/Accordion.js +31 -84
- package/accordion/Accordion.stories.tsx +5 -50
- package/accordion/Accordion.test.js +18 -33
- package/accordion/types.d.ts +6 -6
- package/accordion-group/AccordionGroup.d.ts +2 -3
- package/accordion-group/AccordionGroup.js +17 -44
- package/accordion-group/AccordionGroup.stories.tsx +1 -1
- package/accordion-group/AccordionGroup.test.js +42 -60
- package/accordion-group/AccordionGroupAccordion.js +11 -23
- package/accordion-group/AccordionGroupContext.d.ts +3 -0
- package/accordion-group/AccordionGroupContext.js +8 -0
- package/accordion-group/types.d.ts +7 -7
- package/action-icon/ActionIcon.d.ts +4 -0
- package/action-icon/ActionIcon.js +48 -0
- package/action-icon/ActionIcon.stories.tsx +41 -0
- package/action-icon/ActionIcon.test.js +64 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.js +29 -118
- package/alert/Alert.test.js +28 -45
- package/alert/types.d.ts +5 -5
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +141 -43
- package/badge/Badge.stories.tsx +210 -0
- package/badge/Badge.test.js +30 -0
- package/badge/types.d.ts +52 -3
- package/bleed/Bleed.js +13 -21
- package/bleed/types.d.ts +2 -2
- package/box/Box.js +11 -33
- package/box/Box.test.js +1 -6
- package/box/types.d.ts +3 -3
- package/bulleted-list/BulletedList.js +22 -55
- package/bulleted-list/BulletedList.stories.tsx +2 -93
- package/bulleted-list/types.d.ts +5 -5
- package/button/Button.d.ts +1 -1
- package/button/Button.js +68 -100
- package/button/Button.stories.tsx +33 -132
- package/button/Button.test.js +19 -16
- package/button/types.d.ts +9 -5
- package/card/Card.js +21 -44
- package/card/Card.test.js +10 -21
- package/card/types.d.ts +5 -5
- package/checkbox/Checkbox.js +85 -120
- package/checkbox/Checkbox.stories.tsx +16 -54
- package/checkbox/Checkbox.test.js +107 -63
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.js +12 -31
- package/chip/Chip.stories.tsx +1 -1
- package/chip/Chip.test.js +15 -28
- package/chip/types.d.ts +4 -4
- package/common/coreTokens.d.ts +105 -14
- package/common/coreTokens.js +41 -24
- package/common/utils.js +2 -8
- package/common/variables.d.ts +52 -139
- package/common/variables.js +63 -157
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/contextual-menu/ContextualMenu.d.ts +7 -0
- package/contextual-menu/ContextualMenu.js +71 -0
- package/contextual-menu/ContextualMenu.stories.tsx +182 -0
- package/contextual-menu/ContextualMenu.test.js +71 -0
- package/contextual-menu/MenuItemAction.d.ts +4 -0
- package/contextual-menu/MenuItemAction.js +46 -0
- package/contextual-menu/types.d.ts +22 -0
- package/contextual-menu/types.js +5 -0
- package/date-input/Calendar.js +15 -59
- package/date-input/DateInput.js +50 -96
- package/date-input/DateInput.stories.tsx +11 -30
- package/date-input/DateInput.test.js +674 -701
- package/date-input/DatePicker.js +11 -42
- package/date-input/Icons.d.ts +6 -6
- package/date-input/Icons.js +6 -23
- package/date-input/YearPicker.js +8 -34
- package/date-input/types.d.ts +28 -22
- package/dialog/Dialog.js +13 -40
- package/dialog/Dialog.stories.tsx +170 -0
- package/dialog/Dialog.test.js +125 -187
- package/dialog/types.d.ts +18 -13
- package/divider/Divider.d.ts +4 -0
- package/divider/Divider.js +36 -0
- package/divider/Divider.stories.tsx +223 -0
- package/divider/Divider.test.js +38 -0
- package/divider/types.d.ts +21 -0
- package/divider/types.js +5 -0
- package/dropdown/Dropdown.js +59 -128
- package/dropdown/Dropdown.stories.tsx +5 -16
- package/dropdown/Dropdown.test.js +391 -378
- package/dropdown/DropdownMenu.js +8 -19
- package/dropdown/DropdownMenuItem.js +11 -20
- package/dropdown/types.d.ts +20 -24
- package/file-input/FileInput.js +180 -248
- package/file-input/FileInput.stories.tsx +1 -1
- package/file-input/FileInput.test.js +356 -354
- package/file-input/FileItem.js +14 -41
- package/file-input/types.d.ts +10 -10
- package/flex/Flex.js +25 -39
- package/flex/types.d.ts +6 -6
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +70 -102
- package/footer/Footer.stories.tsx +37 -6
- package/footer/Footer.test.js +21 -33
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +66 -7
- package/footer/types.d.ts +25 -21
- package/grid/Grid.d.ts +1 -1
- package/grid/Grid.js +2 -17
- package/grid/Grid.stories.tsx +38 -38
- package/grid/types.d.ts +10 -10
- package/header/Header.d.ts +1 -1
- package/header/Header.js +28 -84
- package/header/Header.test.js +12 -25
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +2 -7
- package/header/types.d.ts +7 -8
- package/heading/Heading.js +9 -31
- package/heading/Heading.test.js +70 -87
- package/heading/types.d.ts +7 -7
- package/icon/Icon.d.ts +4 -0
- package/icon/Icon.js +33 -0
- package/icon/Icon.stories.tsx +28 -0
- package/icon/types.d.ts +4 -0
- package/icon/types.js +5 -0
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +129 -0
- package/image/types.d.ts +72 -0
- package/image/types.js +5 -0
- package/inset/Inset.js +13 -21
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +2 -2
- package/layout/ApplicationLayout.js +29 -66
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +8 -5
- package/layout/Icons.js +51 -59
- package/layout/types.d.ts +3 -3
- package/link/Link.js +21 -42
- package/link/Link.test.js +23 -41
- package/link/types.d.ts +14 -14
- package/main.d.ts +8 -4
- package/main.js +39 -59
- package/nav-tabs/NavTabs.d.ts +1 -2
- package/nav-tabs/NavTabs.js +19 -48
- package/nav-tabs/NavTabs.stories.tsx +7 -5
- package/nav-tabs/NavTabs.test.js +38 -44
- package/nav-tabs/NavTabsContext.d.ts +3 -0
- package/nav-tabs/NavTabsContext.js +8 -0
- package/nav-tabs/Tab.js +24 -52
- package/nav-tabs/types.d.ts +9 -9
- package/number-input/NumberInput.js +46 -36
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +859 -412
- package/number-input/NumberInputContext.d.ts +3 -4
- package/number-input/NumberInputContext.js +3 -14
- package/number-input/types.d.ts +17 -5
- package/package.json +30 -28
- package/paginator/Icons.d.ts +5 -5
- package/paginator/Icons.js +5 -19
- package/paginator/Paginator.js +15 -43
- package/paginator/Paginator.test.js +224 -207
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.js +3 -19
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +35 -0
- package/password-input/PasswordInput.js +57 -126
- package/password-input/PasswordInput.stories.tsx +1 -33
- package/password-input/PasswordInput.test.js +157 -140
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.js +21 -53
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
- package/progress-bar/ProgressBar.test.js +35 -52
- package/progress-bar/types.d.ts +3 -3
- package/quick-nav/QuickNav.js +4 -27
- package/quick-nav/QuickNav.stories.tsx +1 -1
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +22 -54
- package/radio-group/RadioGroup.js +37 -83
- package/radio-group/RadioGroup.stories.tsx +10 -10
- package/radio-group/RadioGroup.test.js +504 -470
- package/radio-group/types.d.ts +8 -8
- package/resultset-table/Icons.d.ts +7 -0
- package/{resultsetTable → resultset-table}/Icons.js +1 -5
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.js +44 -69
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +106 -5
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +148 -92
- package/{resultsetTable → resultset-table}/types.d.ts +44 -11
- package/resultset-table/types.js +5 -0
- package/select/Icons.d.ts +7 -7
- package/select/Icons.js +1 -5
- package/select/Listbox.js +13 -39
- package/select/Option.js +17 -27
- package/select/Select.js +87 -163
- package/select/Select.stories.tsx +3 -3
- package/select/Select.test.js +1946 -1804
- package/select/types.d.ts +14 -15
- package/sidenav/Icons.d.ts +4 -4
- package/sidenav/Icons.js +1 -5
- package/sidenav/Sidenav.js +29 -70
- package/sidenav/Sidenav.test.js +3 -10
- package/{layout → sidenav}/SidenavContext.d.ts +1 -1
- package/{layout → sidenav}/SidenavContext.js +3 -9
- package/sidenav/types.d.ts +18 -18
- package/slider/Slider.js +68 -125
- package/slider/Slider.test.js +107 -103
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.js +16 -54
- package/spinner/Spinner.test.js +25 -34
- package/spinner/types.d.ts +3 -3
- package/status-light/StatusLight.d.ts +4 -0
- package/status-light/StatusLight.js +51 -0
- package/status-light/StatusLight.stories.tsx +74 -0
- package/status-light/StatusLight.test.js +25 -0
- package/status-light/types.d.ts +17 -0
- package/status-light/types.js +5 -0
- package/switch/Switch.js +49 -97
- package/switch/Switch.stories.tsx +0 -34
- package/switch/Switch.test.js +51 -96
- package/switch/types.d.ts +4 -4
- package/table/DropdownTheme.js +62 -0
- package/table/Table.d.ts +6 -2
- package/table/Table.js +76 -33
- package/table/{Table.stories.jsx → Table.stories.tsx} +297 -2
- package/table/Table.test.js +93 -6
- package/table/types.d.ts +34 -6
- package/tabs/Tab.js +17 -33
- package/tabs/Tabs.js +52 -129
- package/tabs/Tabs.stories.tsx +1 -1
- package/tabs/Tabs.test.js +62 -118
- package/tabs/types.d.ts +19 -19
- package/tag/Tag.js +21 -51
- package/tag/Tag.test.js +19 -30
- package/tag/types.d.ts +7 -7
- package/text-input/Suggestion.js +9 -26
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +19 -67
- package/text-input/TextInput.js +221 -327
- package/text-input/TextInput.stories.tsx +49 -153
- package/text-input/TextInput.test.js +1227 -1194
- package/text-input/types.d.ts +25 -17
- package/textarea/Textarea.js +67 -109
- package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -100
- package/textarea/Textarea.test.js +150 -179
- package/textarea/types.d.ts +9 -5
- package/toggle-group/ToggleGroup.js +90 -107
- package/toggle-group/ToggleGroup.stories.tsx +7 -4
- package/toggle-group/ToggleGroup.test.js +68 -87
- package/toggle-group/types.d.ts +26 -17
- package/typography/Typography.js +4 -13
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +49 -136
- package/useTheme.js +1 -8
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +2 -2
- package/utils/BaseTypography.js +16 -30
- package/utils/FocusLock.js +25 -39
- package/wizard/Wizard.js +14 -49
- package/wizard/Wizard.test.js +53 -80
- package/wizard/types.d.ts +7 -7
- package/common/OpenSans.css +0 -69
- package/common/fonts/OpenSans-Bold.ttf +0 -0
- package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-Italic.ttf +0 -0
- package/common/fonts/OpenSans-Light.ttf +0 -0
- package/common/fonts/OpenSans-LightItalic.ttf +0 -0
- package/common/fonts/OpenSans-Regular.ttf +0 -0
- package/common/fonts/OpenSans-SemiBold.ttf +0 -0
- package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/resultsetTable/Icons.d.ts +0 -7
- package/resultsetTable/ResultsetTable.d.ts +0 -4
- package/slider/Slider.stories.tsx +0 -240
- package/text-input/Icons.d.ts +0 -8
- package/text-input/Icons.js +0 -60
- /package/{resultsetTable → action-icon}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → container/types.js} +0 -0
- /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
package/checkbox/Checkbox.js
CHANGED
|
@@ -1,42 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
-
|
|
14
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
-
|
|
16
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
-
|
|
18
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
-
|
|
20
13
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
|
-
|
|
22
14
|
var _variables = require("../common/variables");
|
|
23
|
-
|
|
24
15
|
var _utils = require("../common/utils");
|
|
25
|
-
|
|
26
16
|
var _uuid = require("uuid");
|
|
27
|
-
|
|
28
17
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
29
|
-
|
|
30
18
|
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
31
|
-
|
|
32
|
-
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
33
|
-
|
|
34
19
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
35
|
-
|
|
36
|
-
function
|
|
37
|
-
|
|
38
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
39
|
-
|
|
20
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
21
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
40
22
|
var checkedIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
41
23
|
fill: "currentColor",
|
|
42
24
|
focusable: "false",
|
|
@@ -45,54 +27,50 @@ var checkedIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
45
27
|
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
46
28
|
d: "M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"
|
|
47
29
|
}));
|
|
48
|
-
|
|
49
30
|
var DxcCheckbox = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
50
31
|
var checked = _ref.checked,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
32
|
+
_ref$defaultChecked = _ref.defaultChecked,
|
|
33
|
+
defaultChecked = _ref$defaultChecked === void 0 ? false : _ref$defaultChecked,
|
|
34
|
+
value = _ref.value,
|
|
35
|
+
_ref$label = _ref.label,
|
|
36
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
37
|
+
_ref$labelPosition = _ref.labelPosition,
|
|
38
|
+
labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
|
|
39
|
+
_ref$name = _ref.name,
|
|
40
|
+
name = _ref$name === void 0 ? "" : _ref$name,
|
|
41
|
+
_ref$disabled = _ref.disabled,
|
|
42
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
43
|
+
_ref$optional = _ref.optional,
|
|
44
|
+
optional = _ref$optional === void 0 ? false : _ref$optional,
|
|
45
|
+
_ref$readOnly = _ref.readOnly,
|
|
46
|
+
readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
|
|
47
|
+
onChange = _ref.onChange,
|
|
48
|
+
margin = _ref.margin,
|
|
49
|
+
_ref$size = _ref.size,
|
|
50
|
+
size = _ref$size === void 0 ? "fitContent" : _ref$size,
|
|
51
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
52
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
71
53
|
var _useState = (0, _react.useState)("label-checkbox-".concat((0, _uuid.v4)())),
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
54
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 1),
|
|
55
|
+
labelId = _useState2[0];
|
|
75
56
|
var _useState3 = (0, _react.useState)(defaultChecked),
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
57
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
58
|
+
innerChecked = _useState4[0],
|
|
59
|
+
setInnerChecked = _useState4[1];
|
|
80
60
|
var checkboxRef = (0, _react.useRef)(null);
|
|
81
61
|
var colorsTheme = (0, _useTheme["default"])();
|
|
82
|
-
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
83
62
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
84
|
-
|
|
85
63
|
var handleCheckboxChange = function handleCheckboxChange() {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
64
|
+
if (!disabled && !readOnly) {
|
|
65
|
+
var _checkboxRef$current;
|
|
66
|
+
document.activeElement !== (checkboxRef === null || checkboxRef === void 0 ? void 0 : checkboxRef.current) && (checkboxRef === null || checkboxRef === void 0 ? void 0 : (_checkboxRef$current = checkboxRef.current) === null || _checkboxRef$current === void 0 ? void 0 : _checkboxRef$current.focus());
|
|
67
|
+
var newChecked = checked !== null && checked !== void 0 ? checked : innerChecked;
|
|
68
|
+
checked !== null && checked !== void 0 ? checked : setInnerChecked(function (innerChecked) {
|
|
69
|
+
return !innerChecked;
|
|
70
|
+
});
|
|
71
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(!newChecked);
|
|
72
|
+
}
|
|
94
73
|
};
|
|
95
|
-
|
|
96
74
|
var handleKeyboard = function handleKeyboard(event) {
|
|
97
75
|
switch (event.key) {
|
|
98
76
|
case " ":
|
|
@@ -100,21 +78,20 @@ var DxcCheckbox = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
100
78
|
handleCheckboxChange();
|
|
101
79
|
}
|
|
102
80
|
};
|
|
103
|
-
|
|
104
81
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
105
82
|
theme: colorsTheme.checkbox
|
|
106
83
|
}, /*#__PURE__*/_react["default"].createElement(MainContainer, {
|
|
107
84
|
disabled: disabled,
|
|
108
|
-
|
|
85
|
+
readOnly: readOnly,
|
|
86
|
+
onClick: handleCheckboxChange,
|
|
109
87
|
margin: margin,
|
|
110
88
|
size: size,
|
|
111
89
|
checked: checked !== null && checked !== void 0 ? checked : innerChecked,
|
|
112
|
-
backgroundType: backgroundType,
|
|
113
90
|
ref: ref
|
|
114
|
-
}, label &&
|
|
91
|
+
}, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
|
|
115
92
|
id: labelId,
|
|
116
93
|
disabled: disabled,
|
|
117
|
-
|
|
94
|
+
labelPosition: labelPosition
|
|
118
95
|
}, label, optional && " ".concat(translatedLabels.formFields.optionalLabel)), /*#__PURE__*/_react["default"].createElement(ValueInput, {
|
|
119
96
|
type: "checkbox",
|
|
120
97
|
checked: checked !== null && checked !== void 0 ? checked : innerChecked,
|
|
@@ -129,19 +106,15 @@ var DxcCheckbox = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
129
106
|
tabIndex: disabled ? -1 : tabIndex,
|
|
130
107
|
"aria-checked": checked !== null && checked !== void 0 ? checked : innerChecked,
|
|
131
108
|
"aria-disabled": disabled,
|
|
109
|
+
"aria-readonly": readOnly,
|
|
132
110
|
"aria-required": !disabled && !optional,
|
|
133
111
|
"aria-labelledby": labelId,
|
|
134
|
-
backgroundType: backgroundType,
|
|
135
112
|
checked: checked !== null && checked !== void 0 ? checked : innerChecked,
|
|
136
113
|
disabled: disabled,
|
|
114
|
+
readOnly: readOnly,
|
|
137
115
|
ref: checkboxRef
|
|
138
|
-
}, (checked !== null && checked !== void 0 ? checked : innerChecked) && checkedIcon))
|
|
139
|
-
id: labelId,
|
|
140
|
-
disabled: disabled,
|
|
141
|
-
backgroundType: backgroundType
|
|
142
|
-
}, optional && "".concat(translatedLabels.formFields.optionalLabel, " "), label)));
|
|
116
|
+
}, (checked !== null && checked !== void 0 ? checked : innerChecked) && checkedIcon))));
|
|
143
117
|
});
|
|
144
|
-
|
|
145
118
|
var sizes = {
|
|
146
119
|
small: "120px",
|
|
147
120
|
medium: "240px",
|
|
@@ -149,55 +122,55 @@ var sizes = {
|
|
|
149
122
|
fillParent: "100%",
|
|
150
123
|
fitContent: "fit-content"
|
|
151
124
|
};
|
|
152
|
-
|
|
153
125
|
var calculateWidth = function calculateWidth(margin, size) {
|
|
154
|
-
|
|
155
|
-
return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
return sizes[size];
|
|
126
|
+
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
159
127
|
};
|
|
160
|
-
|
|
161
|
-
var getDisabledColor = function getDisabledColor(props, element) {
|
|
128
|
+
var getDisabledColor = function getDisabledColor(theme, element) {
|
|
162
129
|
switch (element) {
|
|
163
130
|
case "check":
|
|
164
|
-
return
|
|
165
|
-
|
|
131
|
+
return theme.disabledCheckColor;
|
|
166
132
|
case "background":
|
|
167
|
-
return
|
|
168
|
-
|
|
133
|
+
return theme.disabledBackgroundColorChecked;
|
|
169
134
|
case "border":
|
|
170
|
-
return
|
|
171
|
-
|
|
135
|
+
return theme.disabledBorderColor;
|
|
172
136
|
case "label":
|
|
173
|
-
return
|
|
137
|
+
return theme.disabledFontColor;
|
|
174
138
|
}
|
|
175
139
|
};
|
|
176
|
-
|
|
177
|
-
var getEnabledColor = function getEnabledColor(props, element) {
|
|
140
|
+
var getReadOnlyColor = function getReadOnlyColor(theme, element) {
|
|
178
141
|
switch (element) {
|
|
179
142
|
case "check":
|
|
180
|
-
return
|
|
181
|
-
|
|
143
|
+
return theme.readOnlyCheckColor;
|
|
182
144
|
case "background":
|
|
183
|
-
return
|
|
184
|
-
|
|
145
|
+
return theme.readOnlyBackgroundColorChecked;
|
|
185
146
|
case "hoverBackground":
|
|
186
|
-
return
|
|
187
|
-
|
|
147
|
+
return theme.hoverReadOnlyBackgroundColorChecked;
|
|
188
148
|
case "border":
|
|
189
|
-
return
|
|
190
|
-
|
|
149
|
+
return theme.readOnlyBorderColor;
|
|
191
150
|
case "hoverBorder":
|
|
192
|
-
return
|
|
193
|
-
|
|
151
|
+
return theme.hoverReadOnlyBorderColor;
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
var getEnabledColor = function getEnabledColor(theme, element) {
|
|
155
|
+
switch (element) {
|
|
156
|
+
case "check":
|
|
157
|
+
return theme.checkColor;
|
|
158
|
+
case "background":
|
|
159
|
+
return theme.backgroundColorChecked;
|
|
160
|
+
case "hoverBackground":
|
|
161
|
+
return theme.hoverBackgroundColorChecked;
|
|
162
|
+
case "border":
|
|
163
|
+
return theme.borderColor;
|
|
164
|
+
case "hoverBorder":
|
|
165
|
+
return theme.hoverBorderColor;
|
|
194
166
|
case "label":
|
|
195
|
-
return
|
|
167
|
+
return theme.fontColor;
|
|
196
168
|
}
|
|
197
169
|
};
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
170
|
+
var LabelContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n order: ", ";\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
171
|
+
return props.labelPosition === "before" ? 0 : 1;
|
|
172
|
+
}, function (props) {
|
|
173
|
+
return props.disabled ? getDisabledColor(props.theme, "label") : getEnabledColor(props.theme, "label");
|
|
201
174
|
}, function (props) {
|
|
202
175
|
return props.theme.fontFamily;
|
|
203
176
|
}, function (props) {
|
|
@@ -205,24 +178,20 @@ var LabelContainer = _styledComponents["default"].span(_templateObject || (_temp
|
|
|
205
178
|
}, function (props) {
|
|
206
179
|
return props.theme.fontWeight;
|
|
207
180
|
});
|
|
208
|
-
|
|
209
181
|
var ValueInput = _styledComponents["default"].input(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
|
|
210
|
-
|
|
211
182
|
var CheckboxContainer = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n width: 24px;\n"])));
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
return props.disabled ? getDisabledColor(props, "border") : getEnabledColor(props, "border");
|
|
183
|
+
var Checkbox = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 18px;\n width: 18px;\n border: 2px solid\n ", ";\n border-radius: 2px;\n background-color: ", ";\n color: ", ";\n\n &:focus {\n outline: 2px solid ", ";\n outline-offset: 2px;\n }\n svg {\n position: absolute;\n width: 22px;\n height: 22px;\n }\n ", "\n"])), function (props) {
|
|
184
|
+
return props.disabled ? getDisabledColor(props.theme, "border") : props.readOnly ? getReadOnlyColor(props.theme, "border") : getEnabledColor(props.theme, "border");
|
|
215
185
|
}, function (props) {
|
|
216
|
-
return props.checked ? props.disabled ? getDisabledColor(props, "check") : getEnabledColor(props, "check") : "transparent";
|
|
186
|
+
return props.checked ? props.disabled ? getDisabledColor(props.theme, "check") : props.readOnly ? getReadOnlyColor(props.theme, "check") : getEnabledColor(props.theme, "check") : "transparent";
|
|
217
187
|
}, function (props) {
|
|
218
|
-
return props.disabled ? getDisabledColor(props, "background") : getEnabledColor(props, "background");
|
|
188
|
+
return props.disabled ? getDisabledColor(props.theme, "background") : props.readOnly ? getReadOnlyColor(props.theme, "background") : getEnabledColor(props.theme, "background");
|
|
219
189
|
}, function (props) {
|
|
220
|
-
return props.
|
|
190
|
+
return props.theme.focusColor;
|
|
221
191
|
}, function (props) {
|
|
222
192
|
return props.disabled && "pointer-events: none;";
|
|
223
193
|
});
|
|
224
|
-
|
|
225
|
-
var MainContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n gap: ", ";\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n\n &:hover ", " {\n border: 2px solid\n ", ";\n background-color: ", ";\n color: ", ";\n }\n"])), function (props) {
|
|
194
|
+
var MainContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n gap: ", ";\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n\n &:hover ", " {\n border: 2px solid\n ", ";\n color: ", ";\n }\n"])), function (props) {
|
|
226
195
|
return props.theme.checkLabelSpacing;
|
|
227
196
|
}, function (props) {
|
|
228
197
|
return calculateWidth(props.margin, props.size);
|
|
@@ -237,14 +206,10 @@ var MainContainer = _styledComponents["default"].div(_templateObject5 || (_templ
|
|
|
237
206
|
}, function (props) {
|
|
238
207
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
239
208
|
}, function (props) {
|
|
240
|
-
return props.disabled ? "not-allowed" : "pointer";
|
|
209
|
+
return props.disabled ? "not-allowed" : props.readOnly ? "default" : "pointer";
|
|
241
210
|
}, Checkbox, function (props) {
|
|
242
|
-
|
|
243
|
-
}, function (props) {
|
|
244
|
-
return props.checked ? props.disabled ? getDisabledColor(props, "check") : getEnabledColor(props, "check") : "transparent";
|
|
211
|
+
if (!props.disabled) return props.readOnly ? getReadOnlyColor(props.theme, "hoverBorder") : getEnabledColor(props.theme, "hoverBorder");
|
|
245
212
|
}, function (props) {
|
|
246
|
-
|
|
213
|
+
if (!props.disabled) return props.readOnly ? getReadOnlyColor(props.theme, "hoverBackground") : getEnabledColor(props.theme, "hoverBackground");
|
|
247
214
|
});
|
|
248
|
-
|
|
249
|
-
var _default = DxcCheckbox;
|
|
250
|
-
exports["default"] = _default;
|
|
215
|
+
var _default = exports["default"] = DxcCheckbox;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import DxcCheckbox from "./Checkbox";
|
|
3
|
-
import { BackgroundColorProvider } from "../BackgroundColorContext";
|
|
4
3
|
import Title from "../../.storybook/components/Title";
|
|
5
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
6
|
-
import DarkContainer from "../../.storybook/components/DarkSection";
|
|
7
5
|
import styled from "styled-components";
|
|
8
6
|
import { HalstackProvider } from "../HalstackContext";
|
|
9
7
|
|
|
@@ -38,6 +36,22 @@ const Checkbox = () => (
|
|
|
38
36
|
<Title title="Disabled, checked and optional" theme="light" level={4} />
|
|
39
37
|
<DxcCheckbox label="Checkbox" disabled defaultChecked optional />
|
|
40
38
|
</ExampleContainer>
|
|
39
|
+
<ExampleContainer>
|
|
40
|
+
<Title title="Read-only" theme="light" level={4} />
|
|
41
|
+
<DxcCheckbox label="Checkbox" readOnly />
|
|
42
|
+
</ExampleContainer>
|
|
43
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
44
|
+
<Title title="Hovered read-only" theme="light" level={4} />
|
|
45
|
+
<DxcCheckbox label="Checkbox" readOnly />
|
|
46
|
+
</ExampleContainer>
|
|
47
|
+
<ExampleContainer>
|
|
48
|
+
<Title title="Read-only, checked and optional" theme="light" level={4} />
|
|
49
|
+
<DxcCheckbox label="Checkbox" readOnly defaultChecked optional />
|
|
50
|
+
</ExampleContainer>
|
|
51
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
52
|
+
<Title title="Hovered read-only and checked" theme="light" level={4} />
|
|
53
|
+
<DxcCheckbox label="Checkbox" readOnly defaultChecked optional />
|
|
54
|
+
</ExampleContainer>
|
|
41
55
|
<ExampleContainer pseudoState="pseudo-focus">
|
|
42
56
|
<Title title="Focused" theme="light" level={4} />
|
|
43
57
|
<DxcCheckbox label="Focused" />
|
|
@@ -70,58 +84,6 @@ const Checkbox = () => (
|
|
|
70
84
|
<Title title="Disabled and optional with label after" theme="light" level={4} />
|
|
71
85
|
<DxcCheckbox label="Checkbox" disabled labelPosition="after" optional />
|
|
72
86
|
</ExampleContainer>
|
|
73
|
-
<BackgroundColorProvider color="#333333">
|
|
74
|
-
<DarkContainer>
|
|
75
|
-
<ExampleContainer>
|
|
76
|
-
<Title title="Default" theme="dark" level={4} />
|
|
77
|
-
<DxcCheckbox label="Checkbox" />
|
|
78
|
-
</ExampleContainer>
|
|
79
|
-
<ExampleContainer>
|
|
80
|
-
<Title title="Checked" theme="dark" level={4} />
|
|
81
|
-
<DxcCheckbox label="Checkbox" defaultChecked />
|
|
82
|
-
</ExampleContainer>
|
|
83
|
-
<ExampleContainer>
|
|
84
|
-
<Title title="Disabled" theme="dark" level={4} />
|
|
85
|
-
<DxcCheckbox label="Checkbox" disabled />
|
|
86
|
-
</ExampleContainer>
|
|
87
|
-
<ExampleContainer>
|
|
88
|
-
<Title title="Disabled, checked and optional" theme="dark" level={4} />
|
|
89
|
-
<DxcCheckbox label="Checkbox" disabled defaultChecked optional />
|
|
90
|
-
</ExampleContainer>
|
|
91
|
-
<ExampleContainer pseudoState="pseudo-focus">
|
|
92
|
-
<Title title="Focused" theme="dark" level={4} />
|
|
93
|
-
<DxcCheckbox label="Focused" />
|
|
94
|
-
</ExampleContainer>
|
|
95
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
96
|
-
<Title title="Hovered" theme="dark" level={4} />
|
|
97
|
-
<DxcCheckbox label="Hovered" />
|
|
98
|
-
</ExampleContainer>
|
|
99
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
100
|
-
<Title title="Hovered and checked" theme="dark" level={4} />
|
|
101
|
-
<DxcCheckbox label="Hovered" defaultChecked />
|
|
102
|
-
</ExampleContainer>
|
|
103
|
-
<ExampleContainer>
|
|
104
|
-
<Title title="Optional" theme="dark" level={4} />
|
|
105
|
-
<DxcCheckbox label="Checkbox" optional />
|
|
106
|
-
</ExampleContainer>
|
|
107
|
-
<ExampleContainer>
|
|
108
|
-
<Title title="Label after" theme="dark" level={4} />
|
|
109
|
-
<DxcCheckbox label="Checkbox" labelPosition="after" />
|
|
110
|
-
</ExampleContainer>
|
|
111
|
-
<ExampleContainer>
|
|
112
|
-
<Title title="Checked with label after" theme="dark" level={4} />
|
|
113
|
-
<DxcCheckbox label="Checkbox" defaultChecked labelPosition="after" />
|
|
114
|
-
</ExampleContainer>
|
|
115
|
-
<ExampleContainer>
|
|
116
|
-
<Title title="Optional with label after" theme="dark" level={4} />
|
|
117
|
-
<DxcCheckbox label="Checkbox" optional labelPosition="after" />
|
|
118
|
-
</ExampleContainer>
|
|
119
|
-
<ExampleContainer>
|
|
120
|
-
<Title title="Disabled and optional with label after" theme="dark" level={4} />
|
|
121
|
-
<DxcCheckbox label="Checkbox" disabled labelPosition="after" optional />
|
|
122
|
-
</ExampleContainer>
|
|
123
|
-
</DarkContainer>
|
|
124
|
-
</BackgroundColorProvider>
|
|
125
87
|
<Title title="Sizes" theme="light" level={2} />
|
|
126
88
|
<ExampleContainer>
|
|
127
89
|
<DxcCheckbox label="Small" size="small" />
|