@dxc-technology/halstack-react 10.1.0 → 12.0.0
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 +45 -143
- package/HalstackContext.js +10 -35
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.js +33 -84
- package/accordion/Accordion.stories.tsx +8 -64
- package/accordion/Accordion.test.js +18 -33
- package/accordion/types.d.ts +6 -6
- package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
- package/accordion-group/AccordionGroup.d.ts +2 -3
- package/accordion-group/AccordionGroup.js +17 -44
- package/accordion-group/AccordionGroup.stories.tsx +24 -24
- 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.accessibility.test.js +63 -0
- 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.accessibility.test.js +95 -0
- package/alert/Alert.js +34 -120
- package/alert/Alert.test.js +28 -45
- package/alert/types.d.ts +5 -5
- package/badge/Badge.accessibility.test.js +129 -0
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +142 -42
- 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.accessibility.test.js +33 -0
- package/box/Box.js +11 -33
- package/box/Box.test.js +1 -6
- package/box/types.d.ts +3 -3
- package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
- package/breadcrumbs/Breadcrumbs.d.ts +4 -0
- package/breadcrumbs/Breadcrumbs.js +79 -0
- package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
- package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.test.js +169 -0
- package/breadcrumbs/Item.d.ts +4 -0
- package/breadcrumbs/Item.js +52 -0
- package/breadcrumbs/dropdownTheme.d.ts +53 -0
- package/breadcrumbs/dropdownTheme.js +62 -0
- package/breadcrumbs/types.d.ts +16 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.js +119 -0
- 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.accessibility.test.js +127 -0
- package/button/Button.js +36 -59
- package/button/Button.stories.tsx +35 -135
- package/button/Button.test.js +13 -21
- package/button/types.d.ts +5 -5
- package/card/Card.accessibility.test.js +36 -0
- package/card/Card.js +23 -45
- package/card/Card.test.js +10 -21
- package/card/types.d.ts +5 -5
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +88 -123
- package/checkbox/Checkbox.stories.tsx +16 -54
- package/checkbox/Checkbox.test.js +107 -63
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +22 -36
- package/chip/Chip.stories.tsx +10 -25
- package/chip/Chip.test.js +17 -30
- package/chip/types.d.ts +4 -4
- package/common/coreTokens.d.ts +105 -14
- package/common/coreTokens.js +40 -23
- package/common/utils.js +2 -8
- package/common/variables.d.ts +46 -144
- package/common/variables.js +120 -225
- 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/container/types.js +5 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +97 -0
- package/contextual-menu/ContextualMenu.d.ts +5 -0
- package/contextual-menu/ContextualMenu.js +88 -0
- package/contextual-menu/ContextualMenu.stories.tsx +232 -0
- package/contextual-menu/ContextualMenu.test.js +205 -0
- package/contextual-menu/GroupItem.d.ts +4 -0
- package/contextual-menu/GroupItem.js +67 -0
- package/contextual-menu/ItemAction.d.ts +4 -0
- package/contextual-menu/ItemAction.js +51 -0
- package/contextual-menu/MenuItem.d.ts +4 -0
- package/contextual-menu/MenuItem.js +29 -0
- package/contextual-menu/SingleItem.d.ts +4 -0
- package/contextual-menu/SingleItem.js +38 -0
- package/contextual-menu/types.d.ts +58 -0
- package/contextual-menu/types.js +5 -0
- package/date-input/Calendar.js +13 -57
- package/date-input/DateInput.accessibility.test.js +228 -0
- package/date-input/DateInput.js +53 -100
- package/date-input/DateInput.stories.tsx +19 -31
- package/date-input/DateInput.test.js +674 -701
- package/date-input/DatePicker.js +23 -48
- package/date-input/YearPicker.js +8 -34
- package/date-input/types.d.ts +28 -22
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.js +21 -59
- package/dialog/Dialog.stories.tsx +176 -0
- package/dialog/Dialog.test.js +126 -188
- package/dialog/types.d.ts +18 -13
- package/divider/Divider.accessibility.test.js +33 -0
- 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.accessibility.test.js +180 -0
- package/dropdown/Dropdown.js +63 -130
- package/dropdown/Dropdown.stories.tsx +15 -26
- package/dropdown/Dropdown.test.js +402 -389
- package/dropdown/DropdownMenu.js +12 -23
- package/dropdown/DropdownMenuItem.js +13 -21
- package/dropdown/types.d.ts +20 -24
- package/file-input/FileInput.accessibility.test.js +160 -0
- package/file-input/FileInput.js +180 -284
- package/file-input/FileInput.stories.tsx +1 -1
- package/file-input/FileInput.test.js +279 -354
- package/file-input/FileItem.js +29 -66
- package/file-input/types.d.ts +9 -9
- package/flex/Flex.js +25 -39
- package/flex/types.d.ts +6 -6
- package/footer/Footer.accessibility.test.js +125 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +43 -68
- package/footer/Footer.stories.tsx +58 -2
- package/footer/Footer.test.js +18 -32
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +53 -22
- package/footer/types.d.ts +17 -17
- package/grid/Grid.js +1 -16
- package/grid/types.d.ts +10 -10
- package/header/Header.accessibility.test.js +93 -0
- package/header/Header.d.ts +1 -1
- package/header/Header.js +38 -104
- package/header/Header.stories.tsx +16 -0
- package/header/Header.test.js +12 -25
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +3 -13
- package/header/types.d.ts +7 -8
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +9 -31
- package/heading/Heading.test.js +70 -87
- package/heading/types.d.ts +7 -7
- package/icon/Icon.accessibility.test.js +30 -0
- 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.accessibility.test.js +56 -0
- package/image/Image.d.ts +2 -2
- package/image/Image.js +17 -32
- package/image/Image.stories.tsx +3 -1
- package/image/types.d.ts +2 -2
- package/inset/Inset.js +13 -21
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +2 -2
- package/layout/ApplicationLayout.js +23 -60
- package/layout/Icons.d.ts +4 -5
- package/layout/Icons.js +2 -16
- package/layout/types.d.ts +3 -3
- package/link/Link.accessibility.test.js +108 -0
- package/link/Link.js +28 -47
- package/link/Link.stories.tsx +4 -4
- package/link/Link.test.js +23 -41
- package/link/types.d.ts +14 -14
- package/main.d.ts +8 -4
- package/main.js +39 -60
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.d.ts +1 -2
- package/nav-tabs/NavTabs.js +19 -48
- package/nav-tabs/NavTabs.stories.tsx +30 -25
- package/nav-tabs/NavTabs.test.js +45 -50
- package/nav-tabs/NavTabsContext.d.ts +3 -0
- package/nav-tabs/NavTabsContext.js +8 -0
- package/nav-tabs/Tab.js +38 -67
- package/nav-tabs/types.d.ts +10 -10
- package/number-input/NumberInput.accessibility.test.js +228 -0
- package/number-input/NumberInput.d.ts +0 -7
- package/number-input/NumberInput.js +47 -39
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +839 -575
- package/number-input/NumberInputContext.d.ts +3 -0
- package/number-input/NumberInputContext.js +8 -0
- package/number-input/types.d.ts +17 -5
- package/package.json +41 -37
- package/paginator/Paginator.accessibility.test.js +79 -0
- package/paginator/Paginator.js +27 -52
- package/paginator/Paginator.test.js +224 -207
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/paragraph/Paragraph.js +3 -19
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/PasswordInput.accessibility.test.js +153 -0
- package/password-input/PasswordInput.js +32 -54
- package/password-input/PasswordInput.stories.tsx +1 -34
- package/password-input/PasswordInput.test.js +153 -129
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.js +26 -56
- 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.accessibility.test.js +57 -0
- 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.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +38 -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.accessibility.test.js +285 -0
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.js +45 -69
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +118 -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/Listbox.js +40 -54
- package/select/Option.js +28 -36
- package/select/Select.accessibility.test.js +228 -0
- package/select/Select.js +107 -171
- package/select/Select.stories.tsx +59 -111
- package/select/Select.test.js +1895 -1858
- package/select/types.d.ts +15 -16
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.js +44 -81
- package/sidenav/Sidenav.stories.tsx +4 -9
- 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 +20 -20
- package/slider/Slider.accessibility.test.js +104 -0
- package/slider/Slider.js +70 -126
- package/slider/Slider.test.js +107 -103
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.js +21 -55
- package/spinner/Spinner.test.js +25 -34
- package/spinner/types.d.ts +3 -3
- package/status-light/StatusLight.accessibility.test.js +157 -0
- 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.accessibility.test.js +98 -0
- package/switch/Switch.js +49 -97
- package/switch/Switch.stories.tsx +12 -34
- package/switch/Switch.test.js +51 -96
- package/switch/types.d.ts +4 -4
- package/table/DropdownTheme.js +62 -0
- package/table/Table.accessibility.test.js +93 -0
- package/table/Table.d.ts +6 -2
- package/table/Table.js +76 -33
- package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
- package/table/Table.test.js +93 -6
- package/table/types.d.ts +34 -6
- package/tabs/Tab.js +22 -37
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +59 -147
- package/tabs/Tabs.stories.tsx +8 -4
- package/tabs/Tabs.test.js +57 -131
- package/tabs/types.d.ts +21 -21
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +27 -57
- package/tag/Tag.stories.tsx +4 -7
- package/tag/Tag.test.js +17 -36
- package/tag/types.d.ts +9 -9
- package/text-input/Suggestion.js +9 -26
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +30 -70
- package/text-input/TextInput.accessibility.test.js +321 -0
- package/text-input/TextInput.js +203 -289
- package/text-input/TextInput.stories.tsx +65 -160
- package/text-input/TextInput.test.js +1227 -1194
- package/text-input/types.d.ts +25 -17
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +68 -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.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.js +25 -64
- package/toggle-group/ToggleGroup.stories.tsx +4 -4
- package/toggle-group/ToggleGroup.test.js +48 -81
- package/toggle-group/types.d.ts +12 -12
- package/typography/Typography.accessibility.test.js +339 -0
- package/typography/Typography.js +4 -13
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +43 -141
- 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.accessibility.test.js +55 -0
- package/wizard/Wizard.js +27 -73
- package/wizard/Wizard.stories.tsx +19 -0
- package/wizard/Wizard.test.js +53 -80
- package/wizard/types.d.ts +8 -8
- 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/date-input/Icons.d.ts +0 -6
- package/date-input/Icons.js +0 -75
- package/paginator/Icons.d.ts +0 -5
- package/paginator/Icons.js +0 -54
- package/password-input/Icons.d.ts +0 -6
- package/password-input/Icons.js +0 -39
- package/resultsetTable/Icons.d.ts +0 -7
- package/resultsetTable/ResultsetTable.d.ts +0 -4
- package/select/Icons.d.ts +0 -10
- package/select/Icons.js +0 -93
- package/sidenav/Icons.d.ts +0 -7
- package/sidenav/Icons.js +0 -51
- 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/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
package/grid/Grid.js
CHANGED
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireDefault(require("react"));
|
|
13
|
-
|
|
14
10
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
15
|
-
|
|
16
11
|
var _templateObject, _templateObject2;
|
|
17
|
-
|
|
18
12
|
var DxcGrid = function DxcGrid(props) {
|
|
19
13
|
return /*#__PURE__*/_react["default"].createElement(Grid, props);
|
|
20
14
|
};
|
|
21
|
-
|
|
22
15
|
var Grid = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n ", "\n ", "\n ", "\n ", "\n"])), function (_ref) {
|
|
23
16
|
var templateColumns = _ref.templateColumns;
|
|
24
17
|
return templateColumns && "grid-template-columns: ".concat(templateColumns.join(" "), ";");
|
|
@@ -41,17 +34,14 @@ var Grid = _styledComponents["default"].div(_templateObject || (_templateObject
|
|
|
41
34
|
return autoFlow && "grid-auto-flow: ".concat(autoFlow, ";");
|
|
42
35
|
}, function (_ref7) {
|
|
43
36
|
var _gap$rowGap, _gap$columnGap;
|
|
44
|
-
|
|
45
37
|
var gap = _ref7.gap;
|
|
46
38
|
return gap != null && (typeof gap === "string" ? "gap: ".concat(gap, ";") : "row-gap: ".concat((_gap$rowGap = gap.rowGap) !== null && _gap$rowGap !== void 0 ? _gap$rowGap : "", "; column-gap: ").concat((_gap$columnGap = gap.columnGap) !== null && _gap$columnGap !== void 0 ? _gap$columnGap : "", ";"));
|
|
47
39
|
}, function (_ref8) {
|
|
48
40
|
var _placeItems$alignItem, _placeItems$justifyIt;
|
|
49
|
-
|
|
50
41
|
var placeItems = _ref8.placeItems;
|
|
51
42
|
return placeItems && (typeof placeItems === "string" ? "place-items: ".concat(placeItems) : "align-items: ".concat((_placeItems$alignItem = placeItems.alignItems) !== null && _placeItems$alignItem !== void 0 ? _placeItems$alignItem : "", "; justify-items: ").concat((_placeItems$justifyIt = placeItems.justifyItems) !== null && _placeItems$justifyIt !== void 0 ? _placeItems$justifyIt : "", ";"));
|
|
52
43
|
}, function (_ref9) {
|
|
53
44
|
var _placeContent$alignCo, _placeContent$justify;
|
|
54
|
-
|
|
55
45
|
var placeContent = _ref9.placeContent;
|
|
56
46
|
return placeContent && (typeof placeContent === "string" ? "place-content: ".concat(placeContent) : "align-content: ".concat((_placeContent$alignCo = placeContent.alignContent) !== null && _placeContent$alignCo !== void 0 ? _placeContent$alignCo : "", "; justify-content: ").concat((_placeContent$justify = placeContent.justifyContent) !== null && _placeContent$justify !== void 0 ? _placeContent$justify : "", ";"));
|
|
57
47
|
}, function (_ref10) {
|
|
@@ -65,11 +55,9 @@ var Grid = _styledComponents["default"].div(_templateObject || (_templateObject
|
|
|
65
55
|
return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
|
|
66
56
|
}, function (_ref13) {
|
|
67
57
|
var _placeSelf$alignSelf, _placeSelf$justifySel;
|
|
68
|
-
|
|
69
58
|
var placeSelf = _ref13.placeSelf;
|
|
70
59
|
return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf = placeSelf.alignSelf) !== null && _placeSelf$alignSelf !== void 0 ? _placeSelf$alignSelf : "", "; justify-self: ").concat((_placeSelf$justifySel = placeSelf.justifySelf) !== null && _placeSelf$justifySel !== void 0 ? _placeSelf$justifySel : "", ";"));
|
|
71
60
|
});
|
|
72
|
-
|
|
73
61
|
var GridItem = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n ", "\n ", "\n ", "\n"])), function (_ref14) {
|
|
74
62
|
var areaName = _ref14.areaName;
|
|
75
63
|
return areaName && "grid-area: ".concat(areaName, ";");
|
|
@@ -81,11 +69,8 @@ var GridItem = _styledComponents["default"].div(_templateObject2 || (_templateOb
|
|
|
81
69
|
return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
|
|
82
70
|
}, function (_ref17) {
|
|
83
71
|
var _placeSelf$alignSelf2, _placeSelf$justifySel2;
|
|
84
|
-
|
|
85
72
|
var placeSelf = _ref17.placeSelf;
|
|
86
73
|
return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf2 = placeSelf.alignSelf) !== null && _placeSelf$alignSelf2 !== void 0 ? _placeSelf$alignSelf2 : "", "; justify-self: ").concat((_placeSelf$justifySel2 = placeSelf.justifySelf) !== null && _placeSelf$justifySel2 !== void 0 ? _placeSelf$justifySel2 : "", ";"));
|
|
87
74
|
});
|
|
88
|
-
|
|
89
75
|
DxcGrid.Item = GridItem;
|
|
90
|
-
var _default = DxcGrid;
|
|
91
|
-
exports["default"] = _default;
|
|
76
|
+
var _default = exports["default"] = DxcGrid;
|
package/grid/types.d.ts
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
type Spaces = "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
|
|
3
|
+
type Gap = {
|
|
4
4
|
rowGap: Spaces;
|
|
5
5
|
columnGap?: Spaces;
|
|
6
6
|
} | {
|
|
7
7
|
rowGap?: Spaces;
|
|
8
8
|
columnGap: Spaces;
|
|
9
9
|
} | Spaces;
|
|
10
|
-
|
|
10
|
+
type GridCell = {
|
|
11
11
|
start: number | string;
|
|
12
12
|
end: number | string;
|
|
13
13
|
};
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
type PlaceSelfValues = "auto" | "start" | "end" | "center" | "stretch" | "baseline";
|
|
15
|
+
type PlaceContentValues = "normal" | "start" | "end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly" | "baseline";
|
|
16
|
+
type PlaceItemsValues = "normal" | "start" | "end" | "center" | "stretch" | "baseline";
|
|
17
|
+
type PlaceObject<Type, Suffix extends string> = {
|
|
18
18
|
[Property in keyof Type as `${string & Property}${Capitalize<string & Suffix>}`]: Type[Property];
|
|
19
19
|
};
|
|
20
|
-
|
|
20
|
+
type PlaceGeneric<PlaceValues, Element extends string> = PlaceObject<{
|
|
21
21
|
justify?: PlaceValues;
|
|
22
22
|
align: PlaceValues;
|
|
23
23
|
}, Element> | PlaceObject<{
|
|
24
24
|
justify: PlaceValues;
|
|
25
25
|
align?: PlaceValues;
|
|
26
26
|
}, Element> | PlaceValues;
|
|
27
|
-
export
|
|
27
|
+
export type GridItemProps = {
|
|
28
28
|
/**
|
|
29
29
|
* Sets the name of an item so that it can be referenced by a template created with the grid-template-areas property.
|
|
30
30
|
*/
|
|
@@ -56,7 +56,7 @@ export declare type GridItemProps = {
|
|
|
56
56
|
*/
|
|
57
57
|
children: React.ReactNode;
|
|
58
58
|
};
|
|
59
|
-
|
|
59
|
+
type Props = GridItemProps & {
|
|
60
60
|
/**
|
|
61
61
|
* Sets the grid-auto-columns CSS property.
|
|
62
62
|
*
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
var _react2 = require("@testing-library/react");
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _Header = _interopRequireDefault(require("./Header.tsx"));
|
|
10
|
+
var _Flex = _interopRequireDefault(require("../flex/Flex.tsx"));
|
|
11
|
+
var _Link = _interopRequireDefault(require("../link/Link.tsx"));
|
|
12
|
+
var _disabledRules = require("../../test/accessibility/rules/specific/header/disabledRules.js");
|
|
13
|
+
var disabledRules = {
|
|
14
|
+
rules: _disabledRules.disabledRules.reduce(function (rulesObj, rule) {
|
|
15
|
+
rulesObj[rule] = {
|
|
16
|
+
enabled: false
|
|
17
|
+
};
|
|
18
|
+
return rulesObj;
|
|
19
|
+
}, {})
|
|
20
|
+
};
|
|
21
|
+
var iconSVG = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
22
|
+
viewBox: "0 0 24 24",
|
|
23
|
+
height: "24",
|
|
24
|
+
width: "24",
|
|
25
|
+
fill: "currentColor"
|
|
26
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
27
|
+
d: "M0 0h24v24H0z",
|
|
28
|
+
fill: "none"
|
|
29
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
30
|
+
d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"
|
|
31
|
+
}));
|
|
32
|
+
var iconUrl = "https://iconape.com/wp-content/files/yd/367773/svg/logo-linkedin-logo-icon-png-svg.png";
|
|
33
|
+
var options = [{
|
|
34
|
+
value: "1",
|
|
35
|
+
label: "Amazon",
|
|
36
|
+
icon: iconUrl
|
|
37
|
+
}, {
|
|
38
|
+
value: "2",
|
|
39
|
+
label: "Ebay",
|
|
40
|
+
icon: iconUrl
|
|
41
|
+
}, {
|
|
42
|
+
value: "3",
|
|
43
|
+
label: "Wallapop",
|
|
44
|
+
icon: iconSVG
|
|
45
|
+
}, {
|
|
46
|
+
value: "4",
|
|
47
|
+
label: "Aliexpress",
|
|
48
|
+
icon: iconSVG
|
|
49
|
+
}];
|
|
50
|
+
describe("Header component accessibility tests", function () {
|
|
51
|
+
beforeAll(function () {
|
|
52
|
+
Object.defineProperty(window, "matchMedia", {
|
|
53
|
+
writable: true,
|
|
54
|
+
value: jest.fn().mockImplementation(function () {
|
|
55
|
+
return {
|
|
56
|
+
matches: false
|
|
57
|
+
};
|
|
58
|
+
})
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
62
|
+
var _render, container, results;
|
|
63
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
64
|
+
while (1) switch (_context.prev = _context.next) {
|
|
65
|
+
case 0:
|
|
66
|
+
_render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
|
|
67
|
+
content: /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
|
|
68
|
+
alignItems: "center",
|
|
69
|
+
gap: "4rem"
|
|
70
|
+
}, /*#__PURE__*/_react["default"].createElement(_Link["default"], null, "Link 1"), /*#__PURE__*/_react["default"].createElement(_Link["default"], null, "Link 2"), /*#__PURE__*/_react["default"].createElement(_Link["default"], null, "Link 3"), /*#__PURE__*/_react["default"].createElement(_Header["default"].Dropdown, {
|
|
71
|
+
options: options,
|
|
72
|
+
label: "dropdown-test",
|
|
73
|
+
icon: iconSVG,
|
|
74
|
+
iconPosition: "after",
|
|
75
|
+
margin: "medium",
|
|
76
|
+
size: "medium",
|
|
77
|
+
optionsIconPosition: "after"
|
|
78
|
+
})),
|
|
79
|
+
margin: "medium",
|
|
80
|
+
underlined: true
|
|
81
|
+
})), container = _render.container;
|
|
82
|
+
_context.next = 3;
|
|
83
|
+
return (0, _axeHelper.axe)(container, disabledRules);
|
|
84
|
+
case 3:
|
|
85
|
+
results = _context.sent;
|
|
86
|
+
expect(results).toHaveNoViolations();
|
|
87
|
+
case 5:
|
|
88
|
+
case "end":
|
|
89
|
+
return _context.stop();
|
|
90
|
+
}
|
|
91
|
+
}, _callee);
|
|
92
|
+
})));
|
|
93
|
+
});
|
package/header/Header.d.ts
CHANGED
|
@@ -3,6 +3,6 @@ import DxcDropdown from "../dropdown/Dropdown";
|
|
|
3
3
|
import HeaderPropsType from "./types";
|
|
4
4
|
declare const DxcHeader: {
|
|
5
5
|
({ underlined, content, responsiveContent, onClick, margin, tabIndex, }: HeaderPropsType): JSX.Element;
|
|
6
|
-
Dropdown: (props: React.ComponentProps<typeof DxcDropdown>) => JSX.Element;
|
|
6
|
+
Dropdown: (props: React.ComponentProps<typeof DxcDropdown>) => React.JSX.Element;
|
|
7
7
|
};
|
|
8
8
|
export default DxcHeader;
|
package/header/Header.js
CHANGED
|
@@ -1,113 +1,64 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
-
|
|
14
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
-
|
|
16
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
17
|
-
|
|
18
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
-
|
|
20
12
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
|
-
|
|
22
13
|
var _Dropdown = _interopRequireDefault(require("../dropdown/Dropdown"));
|
|
23
|
-
|
|
24
14
|
var _Icons = require("./Icons");
|
|
25
|
-
|
|
26
15
|
var _variables = require("../common/variables");
|
|
27
|
-
|
|
28
16
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
29
|
-
|
|
30
17
|
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
31
|
-
|
|
32
|
-
var _BackgroundColorContext = _interopRequireWildcard(require("../BackgroundColorContext"));
|
|
33
|
-
|
|
18
|
+
var _Icon = _interopRequireDefault(require("../icon/Icon"));
|
|
34
19
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
|
|
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
|
-
|
|
40
|
-
var closeIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
41
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
42
|
-
viewBox: "0 0 24 24",
|
|
43
|
-
height: "24",
|
|
44
|
-
width: "24"
|
|
45
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
46
|
-
d: "M6.4 19 5 17.6l5.6-5.6L5 6.4 6.4 5l5.6 5.6L17.6 5 19 6.4 13.4 12l5.6 5.6-1.4 1.4-5.6-5.6Z"
|
|
47
|
-
}));
|
|
48
|
-
|
|
49
|
-
var hamburgerIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
50
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
51
|
-
viewBox: "0 0 24 24",
|
|
52
|
-
width: "24",
|
|
53
|
-
height: "24"
|
|
54
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
55
|
-
d: "M3,8H21a1,1,0,0,0,0-2H3A1,1,0,0,0,3,8Zm18,8H3a1,1,0,0,0,0,2H21a1,1,0,0,0,0-2Zm0-5H3a1,1,0,0,0,0,2H21a1,1,0,0,0,0-2Z"
|
|
56
|
-
}));
|
|
57
|
-
|
|
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" != _typeof(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 && {}.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; }
|
|
58
22
|
var Dropdown = function Dropdown(props) {
|
|
59
23
|
return /*#__PURE__*/_react["default"].createElement(HeaderDropdown, null, /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], props));
|
|
60
24
|
};
|
|
61
|
-
|
|
62
25
|
var HeaderDropdown = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n button {\n background-color: transparent;\n :hover {\n background-color: transparent;\n }\n }\n"])));
|
|
63
|
-
|
|
64
26
|
var getLogoElement = function getLogoElement(themeInput, logoLabel) {
|
|
65
27
|
if (!themeInput) return _Icons.dxcLogo;else if (typeof themeInput === "string") return /*#__PURE__*/_react["default"].createElement(LogoImg, {
|
|
66
28
|
alt: logoLabel,
|
|
67
29
|
src: themeInput
|
|
68
30
|
});else return themeInput;
|
|
69
31
|
};
|
|
70
|
-
|
|
71
32
|
var Content = function Content(_ref) {
|
|
72
33
|
var isResponsive = _ref.isResponsive,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
return isResponsive ? /*#__PURE__*/_react["default"].createElement(MenuContent, {
|
|
78
|
-
backgroundType: backgroundType
|
|
79
|
-
}, responsiveContent(handleMenu)) : /*#__PURE__*/_react["default"].createElement(ContentContainer, {
|
|
80
|
-
backgroundType: backgroundType
|
|
81
|
-
}, content);
|
|
34
|
+
responsiveContent = _ref.responsiveContent,
|
|
35
|
+
handleMenu = _ref.handleMenu,
|
|
36
|
+
content = _ref.content;
|
|
37
|
+
return isResponsive ? /*#__PURE__*/_react["default"].createElement(MenuContent, null, responsiveContent(handleMenu)) : /*#__PURE__*/_react["default"].createElement(ContentContainer, null, content);
|
|
82
38
|
};
|
|
83
|
-
|
|
84
39
|
var DxcHeader = function DxcHeader(_ref2) {
|
|
85
40
|
var _ref2$underlined = _ref2.underlined,
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
41
|
+
underlined = _ref2$underlined === void 0 ? false : _ref2$underlined,
|
|
42
|
+
content = _ref2.content,
|
|
43
|
+
responsiveContent = _ref2.responsiveContent,
|
|
44
|
+
onClick = _ref2.onClick,
|
|
45
|
+
margin = _ref2.margin,
|
|
46
|
+
_ref2$tabIndex = _ref2.tabIndex,
|
|
47
|
+
tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
|
|
93
48
|
var colorsTheme = (0, _useTheme["default"])();
|
|
94
49
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
95
50
|
var ref = (0, _react.useRef)(null);
|
|
96
|
-
|
|
97
51
|
var _useState = (0, _react.useState)(false),
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
52
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
53
|
+
isResponsive = _useState2[0],
|
|
54
|
+
setIsResponsive = _useState2[1];
|
|
102
55
|
var _useState3 = (0, _react.useState)(false),
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
56
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
57
|
+
isMenuVisible = _useState4[0],
|
|
58
|
+
setIsMenuVisible = _useState4[1];
|
|
107
59
|
var handleResize = (0, _react.useCallback)(function () {
|
|
108
60
|
setIsResponsive(window.matchMedia("(max-width: ".concat(_variables.responsiveSizes.medium, "rem)")).matches);
|
|
109
61
|
}, []);
|
|
110
|
-
|
|
111
62
|
var handleMenu = function handleMenu() {
|
|
112
63
|
if (isResponsive && !isMenuVisible) {
|
|
113
64
|
setIsMenuVisible(!isMenuVisible);
|
|
@@ -115,7 +66,6 @@ var DxcHeader = function DxcHeader(_ref2) {
|
|
|
115
66
|
setIsMenuVisible(!isMenuVisible);
|
|
116
67
|
}
|
|
117
68
|
};
|
|
118
|
-
|
|
119
69
|
var headerLogo = (0, _react.useMemo)(function () {
|
|
120
70
|
return getLogoElement(colorsTheme.header.logo, translatedLabels.formFields.logoAlternativeText);
|
|
121
71
|
}, [colorsTheme.header.logo]);
|
|
@@ -144,40 +94,39 @@ var DxcHeader = function DxcHeader(_ref2) {
|
|
|
144
94
|
onClick: onClick
|
|
145
95
|
}, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, headerLogo)), isResponsive && responsiveContent && /*#__PURE__*/_react["default"].createElement(MainContainer, null, /*#__PURE__*/_react["default"].createElement(ChildContainer, null, /*#__PURE__*/_react["default"].createElement(HamburguerTrigger, {
|
|
146
96
|
tabIndex: tabIndex,
|
|
147
|
-
onClick: handleMenu
|
|
148
|
-
|
|
97
|
+
onClick: handleMenu,
|
|
98
|
+
"aria-label": "Show options"
|
|
99
|
+
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
100
|
+
icon: "menu"
|
|
101
|
+
}), translatedLabels.header.hamburguerTitle)), /*#__PURE__*/_react["default"].createElement(ResponsiveMenu, {
|
|
149
102
|
hasVisibility: isMenuVisible
|
|
150
103
|
}, /*#__PURE__*/_react["default"].createElement(ResponsiveIconsContainer, null, /*#__PURE__*/_react["default"].createElement(ResponsiveLogoContainer, null, headerResponsiveLogo), /*#__PURE__*/_react["default"].createElement(CloseAction, {
|
|
151
104
|
tabIndex: tabIndex,
|
|
152
105
|
onClick: handleMenu,
|
|
153
106
|
"aria-label": translatedLabels.header.closeIcon,
|
|
154
107
|
title: translatedLabels.header.closeIcon
|
|
155
|
-
},
|
|
156
|
-
|
|
157
|
-
}, /*#__PURE__*/_react["default"].createElement(Content, {
|
|
108
|
+
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
109
|
+
icon: "close"
|
|
110
|
+
}))), /*#__PURE__*/_react["default"].createElement(Content, {
|
|
158
111
|
isResponsive: isResponsive,
|
|
159
112
|
responsiveContent: responsiveContent,
|
|
160
113
|
handleMenu: handleMenu,
|
|
161
114
|
content: content
|
|
162
|
-
}))
|
|
115
|
+
})), /*#__PURE__*/_react["default"].createElement(Overlay, {
|
|
163
116
|
onClick: handleMenu,
|
|
164
117
|
hasVisibility: isMenuVisible
|
|
165
|
-
})), !isResponsive && /*#__PURE__*/_react["default"].createElement(
|
|
166
|
-
color: colorsTheme.header.backgroundColor
|
|
167
|
-
}, /*#__PURE__*/_react["default"].createElement(Content, {
|
|
118
|
+
})), !isResponsive && /*#__PURE__*/_react["default"].createElement(Content, {
|
|
168
119
|
isResponsive: isResponsive,
|
|
169
120
|
responsiveContent: responsiveContent,
|
|
170
121
|
handleMenu: handleMenu,
|
|
171
122
|
content: content
|
|
172
|
-
})))
|
|
123
|
+
})));
|
|
173
124
|
};
|
|
174
|
-
|
|
175
125
|
DxcHeader.Dropdown = Dropdown;
|
|
176
|
-
|
|
177
126
|
var HeaderContainer = _styledComponents["default"].header(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n min-height: ", ";\n margin-bottom: ", ";\n padding: ", ";\n background-color: ", ";\n border-bottom: ", ";\n"])), function (props) {
|
|
178
127
|
return props.theme.minHeight;
|
|
179
128
|
}, function (props) {
|
|
180
|
-
return props.margin
|
|
129
|
+
return props.margin ? _variables.spaces[props.margin] : "0px";
|
|
181
130
|
}, function (props) {
|
|
182
131
|
return "".concat(props.theme.paddingTop, " ").concat(props.theme.paddingRight, " ").concat(props.theme.paddingBottom, " ").concat(props.theme.paddingLeft);
|
|
183
132
|
}, function (props) {
|
|
@@ -185,30 +134,24 @@ var HeaderContainer = _styledComponents["default"].header(_templateObject2 || (_
|
|
|
185
134
|
}, function (props) {
|
|
186
135
|
return props.underlined && "".concat(props.theme.underlinedThickness, " ").concat(props.theme.underlinedStyle, " ").concat(props.theme.underlinedColor);
|
|
187
136
|
});
|
|
188
|
-
|
|
189
137
|
var LogoAnchor = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n"])), function (props) {
|
|
190
138
|
return props.interactuable ? "cursor: pointer" : "cursor: default; outline:none;";
|
|
191
139
|
});
|
|
192
|
-
|
|
193
140
|
var LogoImg = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
|
|
194
141
|
return props.theme.logoHeight;
|
|
195
142
|
}, function (props) {
|
|
196
143
|
return props.theme.logoWidth;
|
|
197
144
|
});
|
|
198
|
-
|
|
199
145
|
var LogoContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n vertical-align: middle;\n"])), function (props) {
|
|
200
146
|
return props.theme.logoHeight;
|
|
201
147
|
}, function (props) {
|
|
202
148
|
return props.theme.logoWidth;
|
|
203
149
|
});
|
|
204
|
-
|
|
205
150
|
var ChildContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: flex-end;\n flex-grow: 1;\n width: calc(100% - 186px);\n"])));
|
|
206
|
-
|
|
207
151
|
var ContentContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n flex-grow: 1;\n justify-content: flex-end;\n width: calc(100% - 186px);\n color: ", ";\n"])), function (props) {
|
|
208
|
-
return props.
|
|
152
|
+
return props.theme.contentColor;
|
|
209
153
|
});
|
|
210
|
-
|
|
211
|
-
var HamburguerTrigger = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 54px;\n cursor: pointer;\n border: 1px solid transparent;\n border-radius: 2px;\n background-color: transparent;\n :hover {\n background-color: ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n & > svg {\n fill: ", ";\n }\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n text-transform: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
|
|
154
|
+
var HamburguerTrigger = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 54px;\n cursor: pointer;\n border: 1px solid transparent;\n border-radius: 2px;\n background-color: transparent;\n :hover {\n background-color: ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n & > svg {\n fill: ", ";\n }\n & > span {\n font-size: 24px;\n }\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n text-transform: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
|
|
212
155
|
return props.theme.hamburguerHoverColor;
|
|
213
156
|
}, function (props) {
|
|
214
157
|
return props.theme.hamburguerFocusColor;
|
|
@@ -227,9 +170,7 @@ var HamburguerTrigger = _styledComponents["default"].button(_templateObject8 ||
|
|
|
227
170
|
}, function (props) {
|
|
228
171
|
return props.theme.hamburguerFontColor;
|
|
229
172
|
});
|
|
230
|
-
|
|
231
173
|
var MainContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
|
|
232
|
-
|
|
233
174
|
var ResponsiveMenu = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n position: fixed;\n top: 0;\n right: 0;\n z-index: ", ";\n\n @media (max-width: ", "rem) and (min-width: ", "rem) {\n width: ", ";\n }\n\n @media (not((max-width: ", "rem) and (min-width: ", "rem))) {\n width: ", ";\n }\n\n height: 100vh;\n padding: 20px;\n transform: ", ";\n opacity: ", ";\n transition-property: transform, opacity;\n transition-duration: 0.6s;\n transition-timing-function: ease-in-out;\n box-sizing: border-box;\n"])), function (props) {
|
|
234
175
|
return props.theme.menuBackgroundColor;
|
|
235
176
|
}, function (props) {
|
|
@@ -243,23 +184,18 @@ var ResponsiveMenu = _styledComponents["default"].div(_templateObject10 || (_tem
|
|
|
243
184
|
}, function (props) {
|
|
244
185
|
return props.hasVisibility ? "1" : "0.96";
|
|
245
186
|
});
|
|
246
|
-
|
|
247
187
|
var ResponsiveLogoContainer = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n display: flex;\n"])), function (props) {
|
|
248
188
|
return props.theme.logoHeight;
|
|
249
189
|
}, function (props) {
|
|
250
190
|
return props.theme.logoWidth;
|
|
251
191
|
});
|
|
252
|
-
|
|
253
192
|
var ResponsiveIconsContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n"])));
|
|
254
|
-
|
|
255
|
-
var CloseAction = _styledComponents["default"].button(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: center;\n align-content: center;\n padding: 6px;\n border: unset;\n border-radius: 2px;\n background-color: transparent;\n cursor: pointer;\n\n :focus,\n :focus-visible {\n outline: ", " auto 1px;\n }\n\n svg {\n height: 24px;\n width: 24px;\n }\n"])), function (props) {
|
|
193
|
+
var CloseAction = _styledComponents["default"].button(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: center;\n align-content: center;\n padding: 6px;\n border: unset;\n border-radius: 2px;\n background-color: transparent;\n cursor: pointer;\n\n :focus,\n :focus-visible {\n outline: ", " auto 1px;\n }\n font-size: 24px;\n svg {\n height: 24px;\n width: 24px;\n }\n"])), function (props) {
|
|
256
194
|
return props.theme.hamburguerFocusColor;
|
|
257
195
|
});
|
|
258
|
-
|
|
259
196
|
var MenuContent = _styledComponents["default"].div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n height: 100%;\n color: ", ";\n"])), function (props) {
|
|
260
|
-
return props.
|
|
197
|
+
return props.theme.contentColor;
|
|
261
198
|
});
|
|
262
|
-
|
|
263
199
|
var Overlay = _styledComponents["default"].div(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: ", ";\n opacity: ", " !important;\n visibility: ", ";\n opacity: ", ";\n\n @media (max-width: ", "rem) {\n display: none;\n }\n\n transition: opacity 0.2s 0.2s ease-in-out;\n z-index: ", ";\n"])), function (props) {
|
|
264
200
|
return props.theme.overlayColor;
|
|
265
201
|
}, function (props) {
|
|
@@ -271,6 +207,4 @@ var Overlay = _styledComponents["default"].div(_templateObject15 || (_templateOb
|
|
|
271
207
|
}, _variables.responsiveSizes.small, function (props) {
|
|
272
208
|
return props.theme.overlayZindex;
|
|
273
209
|
});
|
|
274
|
-
|
|
275
|
-
var _default = DxcHeader;
|
|
276
|
-
exports["default"] = _default;
|
|
210
|
+
var _default = exports["default"] = DxcHeader;
|
|
@@ -7,10 +7,26 @@ import { userEvent, waitFor, within } from "@storybook/testing-library";
|
|
|
7
7
|
import DxcFlex from "../flex/Flex";
|
|
8
8
|
import DxcLink from "../link/Link";
|
|
9
9
|
import { HalstackProvider } from "../HalstackContext";
|
|
10
|
+
import { INITIAL_VIEWPORTS } from "@storybook/addon-viewport";
|
|
11
|
+
import { disabledRules } from "../../test/accessibility/rules/specific/header/disabledRules";
|
|
12
|
+
import preview from "../../.storybook/preview";
|
|
10
13
|
|
|
11
14
|
export default {
|
|
12
15
|
title: "Header",
|
|
13
16
|
component: DxcHeader,
|
|
17
|
+
parameters: {
|
|
18
|
+
a11y: {
|
|
19
|
+
config: {
|
|
20
|
+
rules: [
|
|
21
|
+
...disabledRules.map((ruleId) => ({ id: ruleId, enabled: false })),
|
|
22
|
+
...preview?.parameters?.a11y?.config?.rules,
|
|
23
|
+
],
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
viewport: {
|
|
27
|
+
viewports: INITIAL_VIEWPORTS,
|
|
28
|
+
},
|
|
29
|
+
},
|
|
14
30
|
};
|
|
15
31
|
|
|
16
32
|
const options: any = [
|
package/header/Header.test.js
CHANGED
|
@@ -1,13 +1,9 @@
|
|
|
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 _Header = _interopRequireDefault(require("./Header.tsx"));
|
|
10
|
-
|
|
11
7
|
describe("Header component tests", function () {
|
|
12
8
|
beforeAll(function () {
|
|
13
9
|
Object.defineProperty(window, "matchMedia", {
|
|
@@ -21,22 +17,17 @@ describe("Header component tests", function () {
|
|
|
21
17
|
});
|
|
22
18
|
test("Header renders with default logo", function () {
|
|
23
19
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], null)),
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
getByTitle = _render.getByTitle;
|
|
26
21
|
expect(getByTitle("DXC Logo")).toBeTruthy();
|
|
27
22
|
});
|
|
28
23
|
test("Call correct function on logo click", function () {
|
|
29
24
|
var onClick = jest.fn();
|
|
30
|
-
|
|
31
25
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
26
|
+
onClick: onClick
|
|
27
|
+
})),
|
|
28
|
+
getByTitle = _render2.getByTitle;
|
|
36
29
|
var logo = getByTitle("DXC Logo");
|
|
37
|
-
|
|
38
30
|
_react2.fireEvent.click(logo);
|
|
39
|
-
|
|
40
31
|
expect(onClick).toHaveBeenCalled();
|
|
41
32
|
});
|
|
42
33
|
test("Header renders with correct children", function () {
|
|
@@ -45,12 +36,10 @@ describe("Header component tests", function () {
|
|
|
45
36
|
configurable: true,
|
|
46
37
|
value: 1024
|
|
47
38
|
});
|
|
48
|
-
|
|
49
39
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
40
|
+
content: /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text")
|
|
41
|
+
})),
|
|
42
|
+
getByText = _render3.getByText;
|
|
54
43
|
expect(getByText("header-child-text")).toBeTruthy();
|
|
55
44
|
});
|
|
56
45
|
test("Header renders menu button in mobile", function () {
|
|
@@ -66,14 +55,12 @@ describe("Header component tests", function () {
|
|
|
66
55
|
};
|
|
67
56
|
})
|
|
68
57
|
});
|
|
69
|
-
|
|
70
58
|
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
59
|
+
responsiveContent: function responsiveContent() {
|
|
60
|
+
return /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text");
|
|
61
|
+
}
|
|
62
|
+
})),
|
|
63
|
+
getByText = _render4.getByText;
|
|
77
64
|
expect(getByText("Menu")).toBeTruthy();
|
|
78
65
|
});
|
|
79
66
|
});
|
package/header/Icons.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const dxcLogo: JSX.Element;
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare const dxcLogo: React.JSX.Element;
|