@dxc-technology/halstack-react 0.0.0-da4b2be → 0.0.0-da9270d
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 +23 -124
- package/HalstackContext.js +10 -35
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +24 -76
- package/accordion/Accordion.stories.tsx +1 -113
- package/accordion/Accordion.test.js +18 -33
- package/accordion/types.d.ts +5 -17
- package/accordion-group/AccordionGroup.js +15 -42
- package/accordion-group/AccordionGroup.stories.tsx +78 -77
- package/accordion-group/AccordionGroup.test.js +43 -71
- package/accordion-group/AccordionGroupAccordion.js +9 -21
- package/accordion-group/types.d.ts +6 -18
- package/alert/Alert.js +15 -50
- package/alert/Alert.test.js +28 -45
- package/alert/types.d.ts +5 -5
- package/badge/Badge.js +4 -17
- package/badge/types.d.ts +1 -1
- package/bleed/Bleed.js +13 -21
- package/bleed/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 +18 -54
- package/bulleted-list/BulletedList.stories.tsx +1 -92
- package/bulleted-list/types.d.ts +5 -5
- package/button/Button.d.ts +1 -1
- package/button/Button.js +66 -99
- package/button/Button.stories.tsx +6 -87
- package/button/Button.test.js +17 -16
- package/button/types.d.ts +8 -4
- package/card/Card.d.ts +1 -1
- package/card/Card.js +39 -79
- package/card/Card.stories.tsx +0 -29
- package/card/Card.test.js +10 -21
- package/card/types.d.ts +6 -12
- 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 +23 -124
- package/common/variables.js +27 -135
- 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/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 +27 -21
- 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/dropdown/Dropdown.js +39 -93
- package/dropdown/Dropdown.test.js +391 -378
- package/dropdown/DropdownMenu.js +8 -19
- package/dropdown/DropdownMenuItem.js +5 -17
- package/dropdown/types.d.ts +17 -19
- 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 +54 -112
- package/footer/Footer.stories.tsx +19 -95
- package/footer/Footer.test.js +21 -33
- package/footer/Icons.d.ts +2 -2
- package/footer/Icons.js +2 -7
- package/footer/types.d.ts +21 -29
- 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 +2 -2
- package/header/Header.js +31 -114
- package/header/Header.stories.tsx +7 -71
- 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 +5 -20
- package/heading/Heading.js +9 -31
- package/heading/Heading.test.js +70 -87
- package/heading/types.d.ts +7 -7
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +127 -0
- package/image/types.d.ts +72 -0
- package/inset/Inset.js +13 -21
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +3 -3
- package/layout/ApplicationLayout.js +28 -65
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +8 -5
- package/layout/Icons.js +51 -59
- package/layout/SidenavContext.d.ts +1 -1
- package/layout/SidenavContext.js +3 -9
- package/layout/types.d.ts +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 +4 -3
- package/main.js +17 -58
- package/nav-tabs/NavTabs.js +11 -43
- package/nav-tabs/NavTabs.stories.tsx +1 -1
- package/nav-tabs/NavTabs.test.js +36 -43
- package/nav-tabs/Tab.js +16 -45
- package/nav-tabs/types.d.ts +9 -9
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +26 -35
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +700 -412
- package/number-input/types.d.ts +11 -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/{resultsetTable → resultset-table}/ResultsetTable.js +23 -59
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +72 -92
- package/{resultsetTable → resultset-table}/types.d.ts +7 -7
- package/resultset-table/types.js +5 -0
- package/select/Icons.d.ts +7 -7
- package/select/Icons.js +1 -5
- package/select/Listbox.js +13 -39
- package/select/Option.js +9 -26
- package/select/Select.js +70 -155
- 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 +26 -68
- package/sidenav/Sidenav.test.js +3 -10
- 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/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/Table.js +5 -27
- package/table/Table.test.js +1 -6
- package/table/types.d.ts +8 -8
- package/tabs/Tab.js +10 -29
- package/tabs/Tabs.js +52 -129
- 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/Icons.d.ts +5 -5
- package/text-input/Icons.js +1 -5
- package/text-input/Suggestion.js +9 -26
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +15 -65
- package/text-input/TextInput.js +204 -284
- package/text-input/TextInput.stories.tsx +48 -152
- package/text-input/TextInput.test.js +1210 -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 +20 -121
- 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 +22 -39
- package/wizard/Wizard.js +14 -49
- package/wizard/Wizard.test.js +53 -80
- package/wizard/types.d.ts +6 -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/resultsetTable/Icons.d.ts +0 -7
- package/slider/Slider.stories.tsx +0 -240
- /package/{resultsetTable → container}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
- /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
- /package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +0 -0
- /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
- /package/table/{Table.stories.jsx → Table.stories.tsx} +0 -0
package/accordion/Accordion.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import AccordionPropsType from "./types";
|
|
3
|
-
declare const DxcAccordion: ({ label, defaultIsExpanded, isExpanded, icon, assistiveText, disabled, onChange, children, margin,
|
|
3
|
+
declare const DxcAccordion: ({ label, defaultIsExpanded, isExpanded, icon, assistiveText, disabled, onChange, children, margin, tabIndex, }: AccordionPropsType) => JSX.Element;
|
|
4
4
|
export default DxcAccordion;
|
package/accordion/Accordion.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 _utils = require("../common/utils");
|
|
23
|
-
|
|
24
15
|
var _variables = require("../common/variables");
|
|
25
|
-
|
|
26
16
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
27
|
-
|
|
28
|
-
var _BackgroundColorContext = require("../BackgroundColorContext");
|
|
29
|
-
|
|
30
17
|
var _BaseTypography = _interopRequireDefault(require("../utils/BaseTypography"));
|
|
31
|
-
|
|
32
18
|
var _uuid = require("uuid");
|
|
33
|
-
|
|
34
19
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
|
|
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 expandLess = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
41
23
|
xmlns: "http://www.w3.org/2000/svg",
|
|
42
24
|
height: "24",
|
|
@@ -45,7 +27,6 @@ var expandLess = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
45
27
|
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
46
28
|
d: "m7.4 15.375-1.4-1.4 6-6 6 6-1.4 1.4-4.6-4.6Z"
|
|
47
29
|
}));
|
|
48
|
-
|
|
49
30
|
var expandMore = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
50
31
|
xmlns: "http://www.w3.org/2000/svg",
|
|
51
32
|
height: "24",
|
|
@@ -54,44 +35,36 @@ var expandMore = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
54
35
|
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
55
36
|
d: "m12 15.375-6-6 1.4-1.4 4.6 4.6 4.6-4.6 1.4 1.4Z"
|
|
56
37
|
}));
|
|
57
|
-
|
|
58
38
|
var DxcAccordion = function DxcAccordion(_ref) {
|
|
59
39
|
var _ref$label = _ref.label,
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
74
|
-
|
|
40
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
41
|
+
defaultIsExpanded = _ref.defaultIsExpanded,
|
|
42
|
+
isExpanded = _ref.isExpanded,
|
|
43
|
+
icon = _ref.icon,
|
|
44
|
+
_ref$assistiveText = _ref.assistiveText,
|
|
45
|
+
assistiveText = _ref$assistiveText === void 0 ? "" : _ref$assistiveText,
|
|
46
|
+
_ref$disabled = _ref.disabled,
|
|
47
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
48
|
+
onChange = _ref.onChange,
|
|
49
|
+
children = _ref.children,
|
|
50
|
+
margin = _ref.margin,
|
|
51
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
52
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
75
53
|
var _useState = (0, _react.useState)((0, _uuid.v4)()),
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
54
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 1),
|
|
55
|
+
id = _useState2[0];
|
|
79
56
|
var _useState3 = (0, _react.useState)(defaultIsExpanded !== null && defaultIsExpanded !== void 0 ? defaultIsExpanded : false),
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
57
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
58
|
+
innerIsExpanded = _useState4[0],
|
|
59
|
+
setInnerIsExpanded = _useState4[1];
|
|
84
60
|
var colorsTheme = (0, _useTheme["default"])();
|
|
85
|
-
|
|
86
61
|
var handleAccordionState = function handleAccordionState() {
|
|
87
62
|
var _isExpanded;
|
|
88
|
-
|
|
89
63
|
isExpanded !== null && isExpanded !== void 0 ? isExpanded : setInnerIsExpanded(function (innerIsExpanded) {
|
|
90
64
|
return !innerIsExpanded;
|
|
91
65
|
});
|
|
92
66
|
onChange === null || onChange === void 0 ? void 0 : onChange((_isExpanded = !isExpanded) !== null && _isExpanded !== void 0 ? _isExpanded : !innerIsExpanded);
|
|
93
67
|
};
|
|
94
|
-
|
|
95
68
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
96
69
|
theme: colorsTheme.accordion
|
|
97
70
|
}, /*#__PURE__*/_react["default"].createElement(AccordionContainer, {
|
|
@@ -129,17 +102,12 @@ var DxcAccordion = function DxcAccordion(_ref) {
|
|
|
129
102
|
}, (isExpanded !== null && isExpanded !== void 0 ? isExpanded : innerIsExpanded) ? expandLess : expandMore))), (isExpanded !== null && isExpanded !== void 0 ? isExpanded : innerIsExpanded) && /*#__PURE__*/_react["default"].createElement(AccordionPanel, {
|
|
130
103
|
id: "accordion-panel-".concat(id),
|
|
131
104
|
role: "region",
|
|
132
|
-
"aria-labelledby": "accordion-".concat(id)
|
|
133
|
-
|
|
134
|
-
}, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
|
|
135
|
-
color: colorsTheme.accordion.backgroundColor
|
|
136
|
-
}, children))));
|
|
105
|
+
"aria-labelledby": "accordion-".concat(id)
|
|
106
|
+
}, children)));
|
|
137
107
|
};
|
|
138
|
-
|
|
139
108
|
var calculateWidth = function calculateWidth(margin) {
|
|
140
109
|
return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
141
110
|
};
|
|
142
|
-
|
|
143
111
|
var AccordionContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n border-radius: ", ";\n ", "\n box-shadow: ", ";\n min-width: 280px;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n"])), function (props) {
|
|
144
112
|
return props.theme.backgroundColor;
|
|
145
113
|
}, function (props) {
|
|
@@ -161,9 +129,7 @@ var AccordionContainer = _styledComponents["default"].div(_templateObject || (_t
|
|
|
161
129
|
}, function (props) {
|
|
162
130
|
return calculateWidth(props.margin);
|
|
163
131
|
});
|
|
164
|
-
|
|
165
132
|
var AccordionHeader = _styledComponents["default"].h3(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n min-height: 48px;\n margin: 0;\n"])));
|
|
166
|
-
|
|
167
133
|
var AccordionTrigger = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 24px;\n width: 100%;\n background-color: transparent;\n border: none;\n border-radius: ", ";\n ", "\n padding: 12px 16px;\n cursor: ", ";\n\n :focus {\n outline: ", ";\n }\n :hover:enabled {\n background-color: ", ";\n }\n :active:enabled {\n background-color: ", ";\n }\n"])), function (props) {
|
|
168
134
|
return props.theme.borderRadius;
|
|
169
135
|
}, function (props) {
|
|
@@ -177,9 +143,7 @@ var AccordionTrigger = _styledComponents["default"].button(_templateObject3 || (
|
|
|
177
143
|
}, function (props) {
|
|
178
144
|
return "".concat(props.theme.hoverBackgroundColor);
|
|
179
145
|
});
|
|
180
|
-
|
|
181
146
|
var AccordionInfo = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: space-between;\n width: 100%;\n"])));
|
|
182
|
-
|
|
183
147
|
var AccordionLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding-top: ", ";\n padding-bottom: ", ";\n padding-right: ", ";\n padding-left: ", ";\n"])), function (props) {
|
|
184
148
|
return props.theme.titleLabelPaddingTop;
|
|
185
149
|
}, function (props) {
|
|
@@ -189,7 +153,6 @@ var AccordionLabel = _styledComponents["default"].span(_templateObject5 || (_tem
|
|
|
189
153
|
}, function (props) {
|
|
190
154
|
return props.theme.titleLabelPaddingLeft;
|
|
191
155
|
});
|
|
192
|
-
|
|
193
156
|
var IconContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin-left: ", ";\n margin-right: ", ";\n color: ", ";\n\n svg,\n img {\n height: ", ";\n width: ", ";\n }\n"])), function (props) {
|
|
194
157
|
return props.theme.iconMarginLeft;
|
|
195
158
|
}, function (props) {
|
|
@@ -201,7 +164,6 @@ var IconContainer = _styledComponents["default"].span(_templateObject6 || (_temp
|
|
|
201
164
|
}, function (props) {
|
|
202
165
|
return props.theme.iconSize;
|
|
203
166
|
});
|
|
204
|
-
|
|
205
167
|
var AccordionAssistiveText = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n min-width: ", ";\n padding-left: ", ";\n padding-right: ", ";\n"])), function (props) {
|
|
206
168
|
return props.theme.assistiveTextMinWidth;
|
|
207
169
|
}, function (props) {
|
|
@@ -209,26 +171,12 @@ var AccordionAssistiveText = _styledComponents["default"].span(_templateObject7
|
|
|
209
171
|
}, function (props) {
|
|
210
172
|
return props.theme.assistiveTextPaddingRight;
|
|
211
173
|
});
|
|
212
|
-
|
|
213
174
|
var CollapseIndicator = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n color: ", ";\n"])), function (props) {
|
|
214
175
|
return props.disabled ? props.theme.disabledArrowColor : props.theme.arrowColor;
|
|
215
176
|
});
|
|
216
|
-
|
|
217
|
-
var AccordionPanel = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
|
|
177
|
+
var AccordionPanel = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n"])), function (props) {
|
|
218
178
|
return props.theme.borderRadius;
|
|
219
179
|
}, function (props) {
|
|
220
180
|
return props.theme.borderRadius;
|
|
221
|
-
}, function (props) {
|
|
222
|
-
return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
|
|
223
|
-
}, function (props) {
|
|
224
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
|
|
225
|
-
}, function (props) {
|
|
226
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
|
|
227
|
-
}, function (props) {
|
|
228
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
|
|
229
|
-
}, function (props) {
|
|
230
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
|
|
231
181
|
});
|
|
232
|
-
|
|
233
|
-
var _default = DxcAccordion;
|
|
234
|
-
exports["default"] = _default;
|
|
182
|
+
var _default = exports["default"] = DxcAccordion;
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import DxcAccordion from "./Accordion";
|
|
3
|
-
import DxcHeading from "../heading/Heading";
|
|
4
|
-
import DxcTextInput from "../text-input/TextInput";
|
|
5
|
-
import DxcButton from "../button/Button";
|
|
6
3
|
import Title from "../../.storybook/components/Title";
|
|
7
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
8
5
|
import { HalstackProvider } from "../HalstackContext";
|
|
@@ -119,7 +116,7 @@ export const Chromatic = () => (
|
|
|
119
116
|
</ExampleContainer>
|
|
120
117
|
<ExampleContainer>
|
|
121
118
|
<Title title="With bigger icon (SVG)" theme="light" level={4} />
|
|
122
|
-
<DxcAccordion label="
|
|
119
|
+
<DxcAccordion label="Accordion Test" assistiveText="Assistive text" icon={facebookIcon}>
|
|
123
120
|
<div>
|
|
124
121
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
|
|
125
122
|
lobortis eget.
|
|
@@ -176,115 +173,6 @@ export const Chromatic = () => (
|
|
|
176
173
|
</div>
|
|
177
174
|
</DxcAccordion>
|
|
178
175
|
</ExampleContainer>
|
|
179
|
-
<ExampleContainer>
|
|
180
|
-
<Title title="Background color provider over accordion content" theme="light" level={4} />
|
|
181
|
-
<HalstackProvider advancedTheme={advancedTheme}>
|
|
182
|
-
<DxcAccordion
|
|
183
|
-
label="Dark Accordion"
|
|
184
|
-
defaultIsExpanded
|
|
185
|
-
assistiveText="Assistive text"
|
|
186
|
-
icon={folderIcon}
|
|
187
|
-
padding="medium"
|
|
188
|
-
>
|
|
189
|
-
<div style={{ display: "flex", flexDirection: "column", gap: "36px" }}>
|
|
190
|
-
<DxcTextInput label="Label" helperText="HelperText" placeholder="Placeholder" size="fillParent" />
|
|
191
|
-
<DxcButton label="Submit" size="medium" />
|
|
192
|
-
</div>
|
|
193
|
-
</DxcAccordion>
|
|
194
|
-
</HalstackProvider>
|
|
195
|
-
</ExampleContainer>
|
|
196
|
-
<Title title="Paddings" theme="light" level={2} />
|
|
197
|
-
<ExampleContainer>
|
|
198
|
-
<Title title="Xxsmall padding" theme="light" level={4} />
|
|
199
|
-
<DxcAccordion label="Xxsmall padding" defaultIsExpanded padding="xxsmall">
|
|
200
|
-
<div>
|
|
201
|
-
<DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
|
|
202
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
|
|
203
|
-
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
204
|
-
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
205
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
|
206
|
-
est laborum.
|
|
207
|
-
</div>
|
|
208
|
-
</DxcAccordion>
|
|
209
|
-
</ExampleContainer>
|
|
210
|
-
<ExampleContainer>
|
|
211
|
-
<Title title="Xsmall padding" theme="light" level={4} />
|
|
212
|
-
<DxcAccordion label="Xsmall padding" defaultIsExpanded padding="xsmall">
|
|
213
|
-
<div>
|
|
214
|
-
<DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
|
|
215
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
|
|
216
|
-
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
217
|
-
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
218
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
|
219
|
-
est laborum.
|
|
220
|
-
</div>
|
|
221
|
-
</DxcAccordion>
|
|
222
|
-
</ExampleContainer>
|
|
223
|
-
<ExampleContainer>
|
|
224
|
-
<Title title="Small padding" theme="light" level={4} />
|
|
225
|
-
<DxcAccordion label="Small padding" defaultIsExpanded padding="small">
|
|
226
|
-
<div>
|
|
227
|
-
<DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
|
|
228
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
|
|
229
|
-
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
230
|
-
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
231
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
|
232
|
-
est laborum.
|
|
233
|
-
</div>
|
|
234
|
-
</DxcAccordion>
|
|
235
|
-
</ExampleContainer>
|
|
236
|
-
<ExampleContainer>
|
|
237
|
-
<Title title="Medium padding" theme="light" level={4} />
|
|
238
|
-
<DxcAccordion label="Medium padding" defaultIsExpanded padding="medium">
|
|
239
|
-
<div>
|
|
240
|
-
<DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
|
|
241
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
|
|
242
|
-
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
243
|
-
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
244
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
|
245
|
-
est laborum.
|
|
246
|
-
</div>
|
|
247
|
-
</DxcAccordion>
|
|
248
|
-
</ExampleContainer>
|
|
249
|
-
<ExampleContainer>
|
|
250
|
-
<Title title="Large padding" theme="light" level={4} />
|
|
251
|
-
<DxcAccordion label="Large padding" defaultIsExpanded padding="large">
|
|
252
|
-
<div>
|
|
253
|
-
<DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
|
|
254
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
|
|
255
|
-
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
256
|
-
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
257
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
|
258
|
-
est laborum.
|
|
259
|
-
</div>
|
|
260
|
-
</DxcAccordion>
|
|
261
|
-
</ExampleContainer>
|
|
262
|
-
<ExampleContainer>
|
|
263
|
-
<Title title="Xlarge padding" theme="light" level={4} />
|
|
264
|
-
<DxcAccordion label="Xlarge padding" defaultIsExpanded padding="xlarge">
|
|
265
|
-
<div>
|
|
266
|
-
<DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
|
|
267
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
|
|
268
|
-
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
269
|
-
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
270
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
|
271
|
-
est laborum.
|
|
272
|
-
</div>
|
|
273
|
-
</DxcAccordion>
|
|
274
|
-
</ExampleContainer>
|
|
275
|
-
<ExampleContainer>
|
|
276
|
-
<Title title="Xxlarge padding" theme="light" level={4} />
|
|
277
|
-
<DxcAccordion label="Xxlarge padding" defaultIsExpanded padding="xxlarge">
|
|
278
|
-
<div>
|
|
279
|
-
<DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
|
|
280
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
|
|
281
|
-
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
282
|
-
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
283
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
|
284
|
-
est laborum.
|
|
285
|
-
</div>
|
|
286
|
-
</DxcAccordion>
|
|
287
|
-
</ExampleContainer>
|
|
288
176
|
<Title title="Margins" theme="light" level={2} />
|
|
289
177
|
<ExampleContainer>
|
|
290
178
|
<Title title="Xxsmall margin" theme="light" level={4} />
|
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _react = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
5
|
var _react2 = require("@testing-library/react");
|
|
8
|
-
|
|
9
6
|
var _Accordion = _interopRequireDefault(require("./Accordion.tsx"));
|
|
10
|
-
|
|
11
7
|
describe("Accordion component tests", function () {
|
|
12
8
|
test("Renders with correct aria accessibility attributes", function () {
|
|
13
9
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
label: "Accordion",
|
|
11
|
+
defaultIsExpanded: true
|
|
12
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null, "test-expanded"))),
|
|
13
|
+
getByRole = _render.getByRole;
|
|
19
14
|
var accordion = getByRole("button");
|
|
20
15
|
var panel = getByRole("region");
|
|
21
16
|
expect(accordion.getAttribute("aria-controls")).toBe(panel.id);
|
|
@@ -23,46 +18,36 @@ describe("Accordion component tests", function () {
|
|
|
23
18
|
});
|
|
24
19
|
test("Renders expanded by default when it is uncontrolled", function () {
|
|
25
20
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
21
|
+
label: "Accordion",
|
|
22
|
+
defaultIsExpanded: true
|
|
23
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null, "test-expanded"))),
|
|
24
|
+
getByRole = _render2.getByRole;
|
|
31
25
|
var accordion = getByRole("button");
|
|
32
26
|
expect(accordion.getAttribute("aria-expanded")).toBe("true");
|
|
33
27
|
});
|
|
34
28
|
test("Calls correct function on click", function () {
|
|
35
29
|
var onChange = jest.fn();
|
|
36
|
-
|
|
37
30
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
31
|
+
label: "Accordion",
|
|
32
|
+
onChange: onChange
|
|
33
|
+
})),
|
|
34
|
+
getByText = _render3.getByText;
|
|
43
35
|
_react2.fireEvent.click(getByText("Accordion"));
|
|
44
|
-
|
|
45
36
|
expect(onChange).toHaveBeenCalled();
|
|
46
37
|
});
|
|
47
38
|
test("Controlled accordion", function () {
|
|
48
39
|
var onChange = jest.fn();
|
|
49
|
-
|
|
50
40
|
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Accordion["default"], {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
41
|
+
label: "Accordion",
|
|
42
|
+
onChange: onChange,
|
|
43
|
+
isExpanded: true
|
|
44
|
+
})),
|
|
45
|
+
getByText = _render4.getByText,
|
|
46
|
+
getByRole = _render4.getByRole;
|
|
58
47
|
expect(getByRole("button").getAttribute("aria-expanded")).toBe("true");
|
|
59
|
-
|
|
60
48
|
_react2.fireEvent.click(getByText("Accordion"));
|
|
61
|
-
|
|
62
49
|
_react2.fireEvent.click(getByText("Accordion"));
|
|
63
|
-
|
|
64
50
|
_react2.fireEvent.click(getByText("Accordion"));
|
|
65
|
-
|
|
66
51
|
expect(onChange).toHaveBeenCalledTimes(3);
|
|
67
52
|
expect(onChange.mock.calls[0][0]).toBe(false);
|
|
68
53
|
expect(onChange.mock.calls[1][0]).toBe(false);
|
package/accordion/types.d.ts
CHANGED
|
@@ -1,19 +1,13 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
type Margin = {
|
|
4
4
|
top?: Space;
|
|
5
5
|
bottom?: Space;
|
|
6
6
|
left?: Space;
|
|
7
7
|
right?: Space;
|
|
8
8
|
};
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
bottom?: Space;
|
|
12
|
-
left?: Space;
|
|
13
|
-
right?: Space;
|
|
14
|
-
};
|
|
15
|
-
declare type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
|
|
16
|
-
declare type Props = {
|
|
9
|
+
type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
|
|
10
|
+
type Props = {
|
|
17
11
|
/**
|
|
18
12
|
* The panel label.
|
|
19
13
|
*/
|
|
@@ -56,13 +50,7 @@ declare type Props = {
|
|
|
56
50
|
*/
|
|
57
51
|
margin?: Space | Margin;
|
|
58
52
|
/**
|
|
59
|
-
*
|
|
60
|
-
* Size of the padding to be applied to the custom area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
61
|
-
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
|
|
62
|
-
*/
|
|
63
|
-
padding?: Space | Padding;
|
|
64
|
-
/**
|
|
65
|
-
* Value of the tabindex.
|
|
53
|
+
* Value of the tabindex attribute.
|
|
66
54
|
*/
|
|
67
55
|
tabIndex?: number;
|
|
68
56
|
};
|
|
@@ -1,62 +1,40 @@
|
|
|
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"] = exports.AccordionGroupAccordionContext = 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 _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
-
|
|
18
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
19
|
-
|
|
20
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
|
-
|
|
22
14
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
23
|
-
|
|
24
15
|
var _utils = require("../common/utils");
|
|
25
|
-
|
|
26
16
|
var _variables = require("../common/variables");
|
|
27
|
-
|
|
28
17
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
29
|
-
|
|
30
18
|
var _AccordionGroupAccordion = _interopRequireDefault(require("./AccordionGroupAccordion"));
|
|
31
|
-
|
|
32
19
|
var _templateObject;
|
|
33
|
-
|
|
34
|
-
function
|
|
35
|
-
|
|
36
|
-
function
|
|
37
|
-
|
|
38
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
39
|
-
|
|
40
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
41
|
-
|
|
42
|
-
var AccordionGroupAccordionContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
43
|
-
exports.AccordionGroupAccordionContext = AccordionGroupAccordionContext;
|
|
44
|
-
|
|
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; }
|
|
22
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
23
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
24
|
+
var AccordionGroupAccordionContext = exports.AccordionGroupAccordionContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
45
25
|
var DxcAccordionGroup = function DxcAccordionGroup(_ref) {
|
|
46
26
|
var defaultIndexActive = _ref.defaultIndexActive,
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
27
|
+
indexActive = _ref.indexActive,
|
|
28
|
+
_ref$disabled = _ref.disabled,
|
|
29
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
30
|
+
onActiveChange = _ref.onActiveChange,
|
|
31
|
+
margin = _ref.margin,
|
|
32
|
+
children = _ref.children;
|
|
53
33
|
var colorsTheme = (0, _useTheme["default"])();
|
|
54
|
-
|
|
55
34
|
var _useState = (0, _react.useState)(defaultIndexActive !== null && defaultIndexActive !== void 0 ? defaultIndexActive : -1),
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
35
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
36
|
+
innerIndexActive = _useState2[0],
|
|
37
|
+
setInnerIndexActive = _useState2[1];
|
|
60
38
|
var handlerActiveChange = (0, _react.useCallback)(function (index) {
|
|
61
39
|
indexActive !== null && indexActive !== void 0 ? indexActive : setInnerIndexActive(function (prev) {
|
|
62
40
|
return index === prev ? -1 : index;
|
|
@@ -84,13 +62,10 @@ var DxcAccordionGroup = function DxcAccordionGroup(_ref) {
|
|
|
84
62
|
}, accordion);
|
|
85
63
|
})));
|
|
86
64
|
};
|
|
87
|
-
|
|
88
65
|
DxcAccordionGroup.Accordion = _AccordionGroupAccordion["default"];
|
|
89
|
-
|
|
90
66
|
var calculateWidth = function calculateWidth(margin) {
|
|
91
67
|
return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
92
68
|
};
|
|
93
|
-
|
|
94
69
|
var AccordionGroupContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n\n > div:not(:last-of-type):not(:only-of-type) {\n border-bottom: ", ";\n border-color: ", ";\n }\n > div:not(:first-of-type):not(:last-of-type):not(:only-of-type) {\n border-radius: 0;\n & > h3 > button {\n border-radius: 0;\n }\n }\n > div:first-of-type:not(:only-of-type) {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: ", ";\n border-top-right-radius: ", ";\n\n & > h3 > button {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n > div:last-of-type:not(:only-of-type) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n\n & > h3 > button {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n }\n"])), function (props) {
|
|
95
70
|
return calculateWidth(props.margin);
|
|
96
71
|
}, function (_ref2) {
|
|
@@ -123,6 +98,4 @@ var AccordionGroupContainer = _styledComponents["default"].div(_templateObject |
|
|
|
123
98
|
}, function (props) {
|
|
124
99
|
return props.theme.borderRadius;
|
|
125
100
|
});
|
|
126
|
-
|
|
127
|
-
var _default = DxcAccordionGroup;
|
|
128
|
-
exports["default"] = _default;
|
|
101
|
+
var _default = exports["default"] = DxcAccordionGroup;
|