@dxc-technology/halstack-react 0.0.0-e1386cf → 0.0.0-e19ca5f
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 +5 -22
- package/HalstackContext.d.ts +1240 -6
- package/HalstackContext.js +122 -106
- package/README.md +47 -0
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +44 -118
- package/accordion/Accordion.stories.tsx +82 -147
- package/accordion/Accordion.test.js +19 -34
- package/accordion/types.d.ts +6 -18
- package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
- package/accordion-group/AccordionGroup.d.ts +2 -2
- package/accordion-group/AccordionGroup.js +29 -77
- package/accordion-group/AccordionGroup.stories.tsx +78 -77
- package/accordion-group/AccordionGroup.test.js +44 -72
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/AccordionGroupContext.d.ts +3 -0
- package/accordion-group/AccordionGroupContext.js +8 -0
- package/accordion-group/types.d.ts +7 -19
- 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 +36 -126
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +29 -46
- 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/Bleed.stories.tsx +1 -0
- package/bleed/types.d.ts +2 -2
- package/box/Box.accessibility.test.js +33 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +18 -59
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -15
- 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/bulleted-list/BulletedList.accessibility.test.js +119 -0
- package/bulleted-list/BulletedList.js +22 -53
- package/bulleted-list/BulletedList.stories.tsx +8 -93
- package/bulleted-list/types.d.ts +32 -5
- package/button/Button.accessibility.test.js +127 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +71 -106
- package/button/Button.stories.tsx +143 -101
- package/button/Button.test.js +20 -17
- package/button/types.d.ts +9 -5
- package/card/Card.accessibility.test.js +36 -0
- package/card/Card.d.ts +1 -1
- package/card/Card.js +49 -89
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +11 -22
- package/card/types.d.ts +6 -12
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +90 -125
- package/checkbox/Checkbox.stories.tsx +68 -54
- package/checkbox/Checkbox.test.js +108 -64
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +45 -80
- package/chip/Chip.stories.tsx +107 -27
- package/chip/Chip.test.js +18 -33
- package/chip/types.d.ts +4 -4
- package/common/coreTokens.d.ts +237 -0
- package/common/coreTokens.js +184 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +6 -12
- package/common/variables.d.ts +1392 -0
- package/common/variables.js +969 -1213
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/contextual-menu/ContextualMenu.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.d.ts +4 -0
- package/date-input/Calendar.js +214 -0
- package/date-input/DateInput.accessibility.test.js +228 -0
- package/date-input/DateInput.js +149 -299
- package/date-input/DateInput.stories.tsx +210 -56
- package/date-input/DateInput.test.js +694 -429
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +121 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +100 -0
- package/date-input/types.d.ts +72 -15
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +51 -120
- package/dialog/Dialog.stories.tsx +316 -212
- package/dialog/Dialog.test.js +270 -33
- package/dialog/types.d.ts +18 -26
- 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 +66 -136
- package/dropdown/Dropdown.stories.tsx +209 -94
- package/dropdown/Dropdown.test.js +404 -390
- package/dropdown/DropdownMenu.js +23 -40
- package/dropdown/DropdownMenuItem.js +17 -38
- package/dropdown/types.d.ts +20 -24
- package/file-input/FileInput.accessibility.test.js +160 -0
- package/file-input/FileInput.js +184 -292
- package/file-input/FileInput.stories.tsx +86 -3
- package/file-input/FileInput.test.js +279 -395
- package/file-input/FileItem.js +31 -67
- package/file-input/types.d.ts +10 -10
- package/flex/Flex.js +27 -39
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +74 -9
- package/footer/Footer.accessibility.test.js +125 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +73 -118
- package/footer/Footer.stories.tsx +94 -23
- package/footer/Footer.test.js +33 -57
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +53 -22
- package/footer/types.d.ts +26 -28
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +76 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/grid/types.js +5 -0
- package/header/Header.accessibility.test.js +93 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +55 -150
- package/header/Header.stories.tsx +130 -35
- package/header/Header.test.js +13 -26
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +3 -13
- package/header/types.d.ts +7 -22
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +10 -32
- package/heading/Heading.test.js +71 -88
- 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 +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +129 -0
- package/image/types.d.ts +72 -0
- package/image/types.js +5 -0
- package/inset/Inset.js +13 -21
- package/inset/Inset.stories.tsx +2 -1
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +5 -5
- package/layout/ApplicationLayout.js +36 -70
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +7 -5
- package/layout/Icons.js +41 -59
- package/layout/types.d.ts +5 -6
- package/link/Link.accessibility.test.js +108 -0
- package/link/Link.js +31 -50
- package/link/Link.stories.tsx +64 -4
- package/link/Link.test.js +24 -44
- package/link/types.d.ts +14 -14
- package/main.d.ts +11 -5
- package/main.js +54 -59
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.d.ts +7 -0
- package/{tabs-nav → nav-tabs}/NavTabs.js +25 -57
- package/nav-tabs/NavTabs.stories.tsx +279 -0
- package/nav-tabs/NavTabs.test.js +77 -0
- package/nav-tabs/NavTabsContext.d.ts +3 -0
- package/nav-tabs/NavTabsContext.js +8 -0
- package/nav-tabs/Tab.js +117 -0
- package/{tabs-nav → nav-tabs}/types.d.ts +15 -16
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.accessibility.test.js +228 -0
- package/number-input/NumberInput.js +46 -36
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +860 -413
- package/number-input/NumberInputContext.d.ts +3 -4
- package/number-input/NumberInputContext.js +3 -14
- package/number-input/types.d.ts +17 -5
- package/package.json +43 -46
- package/paginator/Paginator.accessibility.test.js +79 -0
- package/paginator/Paginator.js +34 -67
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +252 -225
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +6 -22
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/PasswordInput.accessibility.test.js +153 -0
- package/password-input/PasswordInput.js +58 -127
- package/password-input/PasswordInput.stories.tsx +1 -33
- package/password-input/PasswordInput.test.js +158 -141
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +28 -58
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
- package/progress-bar/ProgressBar.test.js +36 -53
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.accessibility.test.js +57 -0
- package/quick-nav/QuickNav.js +4 -27
- package/quick-nav/QuickNav.stories.tsx +15 -1
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +31 -63
- package/radio-group/RadioGroup.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +46 -93
- package/radio-group/RadioGroup.stories.tsx +131 -18
- package/radio-group/RadioGroup.test.js +505 -471
- package/radio-group/types.d.ts +8 -8
- package/resultset-table/Icons.d.ts +7 -0
- package/{text-input → resultset-table}/Icons.js +13 -26
- package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/resultset-table/ResultsetTable.js +171 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +168 -30
- package/resultset-table/ResultsetTable.test.js +381 -0
- package/{resultsetTable → resultset-table}/types.d.ts +44 -11
- package/resultset-table/types.js +5 -0
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +43 -86
- package/select/Option.js +35 -56
- package/select/Select.accessibility.test.js +228 -0
- package/select/Select.js +140 -183
- package/select/Select.stories.tsx +496 -204
- package/select/Select.test.js +1949 -1917
- package/select/types.d.ts +17 -18
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +90 -157
- package/sidenav/Sidenav.stories.tsx +160 -63
- 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 +33 -30
- package/slider/Slider.accessibility.test.js +104 -0
- package/slider/Slider.js +75 -132
- package/slider/Slider.test.js +108 -104
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.js +34 -74
- package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
- package/spinner/Spinner.test.js +26 -35
- 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 +52 -100
- package/switch/Switch.stories.tsx +45 -34
- package/switch/Switch.test.js +52 -97
- 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 +78 -35
- package/table/Table.stories.tsx +663 -0
- package/table/Table.test.js +94 -7
- package/table/types.d.ts +34 -6
- package/tabs/Tab.js +28 -46
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +69 -163
- package/tabs/Tabs.stories.tsx +50 -6
- package/tabs/Tabs.test.js +61 -136
- package/tabs/types.d.ts +21 -21
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +34 -66
- package/tag/Tag.stories.tsx +18 -8
- package/tag/Tag.test.js +18 -37
- package/tag/types.d.ts +9 -9
- package/text-input/Suggestion.js +35 -25
- 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 +229 -335
- package/text-input/TextInput.stories.tsx +155 -162
- package/text-input/TextInput.test.js +1289 -1157
- package/text-input/types.d.ts +25 -17
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +71 -113
- package/textarea/Textarea.stories.tsx +174 -0
- package/textarea/Textarea.test.js +152 -183
- package/textarea/types.d.ts +9 -5
- package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +94 -107
- package/toggle-group/ToggleGroup.stories.tsx +52 -7
- package/toggle-group/ToggleGroup.test.js +69 -88
- package/toggle-group/types.d.ts +28 -19
- package/typography/Typography.accessibility.test.js +339 -0
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +15 -123
- package/typography/Typography.stories.tsx +1 -1
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +1144 -1
- package/useTheme.js +2 -9
- package/useTranslatedLabels.d.ts +84 -1
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +94 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +124 -0
- package/wizard/Wizard.accessibility.test.js +55 -0
- package/wizard/Wizard.js +29 -75
- package/wizard/Wizard.stories.tsx +39 -0
- package/wizard/Wizard.test.js +54 -81
- package/wizard/types.d.ts +10 -11
- package/card/ice-cream.jpg +0 -0
- package/common/OpenSans.css +0 -81
- package/common/RequiredComponent.js +0 -32
- package/common/fonts/OpenSans-Bold.ttf +0 -0
- package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-Italic.ttf +0 -0
- package/common/fonts/OpenSans-Light.ttf +0 -0
- package/common/fonts/OpenSans-LightItalic.ttf +0 -0
- package/common/fonts/OpenSans-Regular.ttf +0 -0
- package/common/fonts/OpenSans-SemiBold.ttf +0 -0
- package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/paginator/Icons.js +0 -66
- package/resultsetTable/ResultsetTable.d.ts +0 -4
- package/resultsetTable/ResultsetTable.js +0 -252
- package/resultsetTable/ResultsetTable.test.js +0 -348
- package/select/Icons.d.ts +0 -10
- package/select/Icons.js +0 -93
- package/slider/Slider.stories.tsx +0 -183
- package/table/Table.stories.jsx +0 -277
- package/tabs-nav/NavTabs.d.ts +0 -8
- package/tabs-nav/NavTabs.stories.tsx +0 -170
- package/tabs-nav/NavTabs.test.js +0 -82
- package/tabs-nav/Tab.js +0 -130
- package/text-input/Icons.d.ts +0 -8
- package/textarea/Textarea.stories.jsx +0 -157
- /package/{resultsetTable → action-icon}/types.js +0 -0
- /package/{tabs-nav → breadcrumbs}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → container/types.js} +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
package/header/Header.js
CHANGED
|
@@ -1,119 +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
|
-
var _variables = require("../common/variables.js");
|
|
27
|
-
|
|
15
|
+
var _variables = require("../common/variables");
|
|
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
|
-
height: "24",
|
|
43
|
-
viewBox: "0 0 24 24",
|
|
44
|
-
width: "24"
|
|
45
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
46
|
-
d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
|
|
47
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
48
|
-
d: "M0 0h24v24H0z",
|
|
49
|
-
fill: "none"
|
|
50
|
-
}));
|
|
51
|
-
|
|
52
|
-
var hamburgerIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
53
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
54
|
-
viewBox: "0 0 24 24",
|
|
55
|
-
width: "24",
|
|
56
|
-
height: "24"
|
|
57
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
58
|
-
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"
|
|
59
|
-
}));
|
|
60
|
-
|
|
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; }
|
|
61
22
|
var Dropdown = function Dropdown(props) {
|
|
62
23
|
return /*#__PURE__*/_react["default"].createElement(HeaderDropdown, null, /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], props));
|
|
63
24
|
};
|
|
64
|
-
|
|
65
|
-
var HeaderDropdown = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n button {\n background-color: transparent;\n :hover {\n background-color: transparent;\n }\n }\n"])));
|
|
66
|
-
|
|
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"])));
|
|
67
26
|
var getLogoElement = function getLogoElement(themeInput, logoLabel) {
|
|
68
27
|
if (!themeInput) return _Icons.dxcLogo;else if (typeof themeInput === "string") return /*#__PURE__*/_react["default"].createElement(LogoImg, {
|
|
69
28
|
alt: logoLabel,
|
|
70
29
|
src: themeInput
|
|
71
30
|
});else return themeInput;
|
|
72
31
|
};
|
|
73
|
-
|
|
74
32
|
var Content = function Content(_ref) {
|
|
75
33
|
var isResponsive = _ref.isResponsive,
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
81
|
-
return isResponsive ? /*#__PURE__*/_react["default"].createElement(MenuContent, {
|
|
82
|
-
backgroundType: backgroundType
|
|
83
|
-
}, responsiveContent(handleMenu)) : /*#__PURE__*/_react["default"].createElement(ContentContainer, {
|
|
84
|
-
padding: padding,
|
|
85
|
-
backgroundType: backgroundType
|
|
86
|
-
}, 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);
|
|
87
38
|
};
|
|
88
|
-
|
|
89
39
|
var DxcHeader = function DxcHeader(_ref2) {
|
|
90
40
|
var _ref2$underlined = _ref2.underlined,
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
|
|
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;
|
|
99
48
|
var colorsTheme = (0, _useTheme["default"])();
|
|
100
49
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
101
50
|
var ref = (0, _react.useRef)(null);
|
|
102
|
-
|
|
103
51
|
var _useState = (0, _react.useState)(false),
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
52
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
53
|
+
isResponsive = _useState2[0],
|
|
54
|
+
setIsResponsive = _useState2[1];
|
|
108
55
|
var _useState3 = (0, _react.useState)(false),
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
var handleResize = function handleResize() {
|
|
56
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
57
|
+
isMenuVisible = _useState4[0],
|
|
58
|
+
setIsMenuVisible = _useState4[1];
|
|
59
|
+
var handleResize = (0, _react.useCallback)(function () {
|
|
114
60
|
setIsResponsive(window.matchMedia("(max-width: ".concat(_variables.responsiveSizes.medium, "rem)")).matches);
|
|
115
|
-
};
|
|
116
|
-
|
|
61
|
+
}, []);
|
|
117
62
|
var handleMenu = function handleMenu() {
|
|
118
63
|
if (isResponsive && !isMenuVisible) {
|
|
119
64
|
setIsMenuVisible(!isMenuVisible);
|
|
@@ -121,7 +66,6 @@ var DxcHeader = function DxcHeader(_ref2) {
|
|
|
121
66
|
setIsMenuVisible(!isMenuVisible);
|
|
122
67
|
}
|
|
123
68
|
};
|
|
124
|
-
|
|
125
69
|
var headerLogo = (0, _react.useMemo)(function () {
|
|
126
70
|
return getLogoElement(colorsTheme.header.logo, translatedLabels.formFields.logoAlternativeText);
|
|
127
71
|
}, [colorsTheme.header.logo]);
|
|
@@ -134,7 +78,7 @@ var DxcHeader = function DxcHeader(_ref2) {
|
|
|
134
78
|
return function () {
|
|
135
79
|
window.removeEventListener("resize", handleResize);
|
|
136
80
|
};
|
|
137
|
-
}, []);
|
|
81
|
+
}, [handleResize]);
|
|
138
82
|
(0, _react.useEffect)(function () {
|
|
139
83
|
!isResponsive && setIsMenuVisible(false);
|
|
140
84
|
}, [isResponsive]);
|
|
@@ -148,96 +92,66 @@ var DxcHeader = function DxcHeader(_ref2) {
|
|
|
148
92
|
tabIndex: onClick ? tabIndex : -1,
|
|
149
93
|
interactuable: onClick ? true : false,
|
|
150
94
|
onClick: onClick
|
|
151
|
-
}, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, headerLogo)), isResponsive && responsiveContent && /*#__PURE__*/_react["default"].createElement(MainContainer, null, /*#__PURE__*/_react["default"].createElement(ChildContainer, {
|
|
152
|
-
padding: padding
|
|
153
|
-
}, /*#__PURE__*/_react["default"].createElement(HamburguerTrigger, {
|
|
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, {
|
|
154
96
|
tabIndex: tabIndex,
|
|
155
|
-
onClick: handleMenu
|
|
156
|
-
|
|
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, {
|
|
157
102
|
hasVisibility: isMenuVisible
|
|
158
103
|
}, /*#__PURE__*/_react["default"].createElement(ResponsiveIconsContainer, null, /*#__PURE__*/_react["default"].createElement(ResponsiveLogoContainer, null, headerResponsiveLogo), /*#__PURE__*/_react["default"].createElement(CloseAction, {
|
|
159
104
|
tabIndex: tabIndex,
|
|
160
105
|
onClick: handleMenu,
|
|
161
|
-
"aria-label": translatedLabels.header.closeIcon
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
106
|
+
"aria-label": translatedLabels.header.closeIcon,
|
|
107
|
+
title: translatedLabels.header.closeIcon
|
|
108
|
+
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
109
|
+
icon: "close"
|
|
110
|
+
}))), /*#__PURE__*/_react["default"].createElement(Content, {
|
|
165
111
|
isResponsive: isResponsive,
|
|
166
112
|
responsiveContent: responsiveContent,
|
|
167
113
|
handleMenu: handleMenu,
|
|
168
|
-
padding: padding,
|
|
169
114
|
content: content
|
|
170
|
-
}))
|
|
115
|
+
})), /*#__PURE__*/_react["default"].createElement(Overlay, {
|
|
171
116
|
onClick: handleMenu,
|
|
172
117
|
hasVisibility: isMenuVisible
|
|
173
|
-
})), !isResponsive && /*#__PURE__*/_react["default"].createElement(
|
|
174
|
-
color: colorsTheme.header.backgroundColor
|
|
175
|
-
}, /*#__PURE__*/_react["default"].createElement(Content, {
|
|
118
|
+
})), !isResponsive && /*#__PURE__*/_react["default"].createElement(Content, {
|
|
176
119
|
isResponsive: isResponsive,
|
|
177
120
|
responsiveContent: responsiveContent,
|
|
178
121
|
handleMenu: handleMenu,
|
|
179
|
-
padding: padding,
|
|
180
122
|
content: content
|
|
181
|
-
})))
|
|
123
|
+
})));
|
|
182
124
|
};
|
|
183
|
-
|
|
184
125
|
DxcHeader.Dropdown = Dropdown;
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
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) {
|
|
127
|
+
return props.theme.minHeight;
|
|
128
|
+
}, function (props) {
|
|
129
|
+
return props.margin ? _variables.spaces[props.margin] : "0px";
|
|
188
130
|
}, function (props) {
|
|
189
131
|
return "".concat(props.theme.paddingTop, " ").concat(props.theme.paddingRight, " ").concat(props.theme.paddingBottom, " ").concat(props.theme.paddingLeft);
|
|
190
132
|
}, function (props) {
|
|
191
133
|
return props.theme.backgroundColor;
|
|
192
134
|
}, function (props) {
|
|
193
135
|
return props.underlined && "".concat(props.theme.underlinedThickness, " ").concat(props.theme.underlinedStyle, " ").concat(props.theme.underlinedColor);
|
|
194
|
-
}, function (props) {
|
|
195
|
-
return props.theme.minHeight;
|
|
196
136
|
});
|
|
197
|
-
|
|
198
137
|
var LogoAnchor = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n"])), function (props) {
|
|
199
|
-
return props.interactuable ? "cursor: pointer" : "cursor: default; outline:none";
|
|
138
|
+
return props.interactuable ? "cursor: pointer" : "cursor: default; outline:none;";
|
|
200
139
|
});
|
|
201
|
-
|
|
202
140
|
var LogoImg = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
|
|
203
141
|
return props.theme.logoHeight;
|
|
204
142
|
}, function (props) {
|
|
205
143
|
return props.theme.logoWidth;
|
|
206
144
|
});
|
|
207
|
-
|
|
208
145
|
var LogoContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n vertical-align: middle;\n"])), function (props) {
|
|
209
146
|
return props.theme.logoHeight;
|
|
210
147
|
}, function (props) {
|
|
211
148
|
return props.theme.logoWidth;
|
|
212
149
|
});
|
|
213
|
-
|
|
214
|
-
var
|
|
215
|
-
return props.
|
|
216
|
-
}, function (props) {
|
|
217
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
|
|
218
|
-
}, function (props) {
|
|
219
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
|
|
220
|
-
}, function (props) {
|
|
221
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
|
|
222
|
-
}, function (props) {
|
|
223
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
|
|
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"])));
|
|
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) {
|
|
152
|
+
return props.theme.contentColor;
|
|
224
153
|
});
|
|
225
|
-
|
|
226
|
-
var ContentContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n width: calc(100% - 186px);\n display: flex;\n align-items: center;\n flex-grow: 1;\n color: ", ";\n\n justify-content: flex-end;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
|
|
227
|
-
return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
|
|
228
|
-
}, function (props) {
|
|
229
|
-
return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
|
|
230
|
-
}, function (props) {
|
|
231
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
|
|
232
|
-
}, function (props) {
|
|
233
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
|
|
234
|
-
}, function (props) {
|
|
235
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
|
|
236
|
-
}, function (props) {
|
|
237
|
-
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
|
|
238
|
-
});
|
|
239
|
-
|
|
240
|
-
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) {
|
|
241
155
|
return props.theme.hamburguerHoverColor;
|
|
242
156
|
}, function (props) {
|
|
243
157
|
return props.theme.hamburguerFocusColor;
|
|
@@ -256,10 +170,8 @@ var HamburguerTrigger = _styledComponents["default"].button(_templateObject8 ||
|
|
|
256
170
|
}, function (props) {
|
|
257
171
|
return props.theme.hamburguerFontColor;
|
|
258
172
|
});
|
|
259
|
-
|
|
260
173
|
var MainContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
|
|
261
|
-
|
|
262
|
-
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 //tablet\n width: ", ";\n }\n\n @media (not((max-width: ", "rem) and (min-width: ", "rem))) {\n //mobile phones\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) {
|
|
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) {
|
|
263
175
|
return props.theme.menuBackgroundColor;
|
|
264
176
|
}, function (props) {
|
|
265
177
|
return props.theme.menuZindex;
|
|
@@ -272,24 +184,19 @@ var ResponsiveMenu = _styledComponents["default"].div(_templateObject10 || (_tem
|
|
|
272
184
|
}, function (props) {
|
|
273
185
|
return props.hasVisibility ? "1" : "0.96";
|
|
274
186
|
});
|
|
275
|
-
|
|
276
187
|
var ResponsiveLogoContainer = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n display: flex;\n"])), function (props) {
|
|
277
188
|
return props.theme.logoHeight;
|
|
278
189
|
}, function (props) {
|
|
279
190
|
return props.theme.logoWidth;
|
|
280
191
|
});
|
|
281
|
-
|
|
282
192
|
var ResponsiveIconsContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n"])));
|
|
283
|
-
|
|
284
|
-
var CloseAction = _styledComponents["default"].button(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n padding: 6px;\n height: 36px;\n width: 36px;\n border: 1px solid transparent;\n border-radius: 2px;\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n background-color: transparent;\n :focus,\n :focus-visible {\n outline: ", " auto 1px;\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) {
|
|
285
194
|
return props.theme.hamburguerFocusColor;
|
|
286
195
|
});
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
|
|
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) {
|
|
197
|
+
return props.theme.contentColor;
|
|
290
198
|
});
|
|
291
|
-
|
|
292
|
-
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 //mobile phones\n display: none;\n }\n\n transition: opacity 0.2s 0.2s ease-in-out;\n z-index: ", ";\n"])), function (props) {
|
|
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) {
|
|
293
200
|
return props.theme.overlayColor;
|
|
294
201
|
}, function (props) {
|
|
295
202
|
return props.theme.overlayOpacity;
|
|
@@ -300,6 +207,4 @@ var Overlay = _styledComponents["default"].div(_templateObject15 || (_templateOb
|
|
|
300
207
|
}, _variables.responsiveSizes.small, function (props) {
|
|
301
208
|
return props.theme.overlayZindex;
|
|
302
209
|
});
|
|
303
|
-
|
|
304
|
-
var _default = DxcHeader;
|
|
305
|
-
exports["default"] = _default;
|
|
210
|
+
var _default = exports["default"] = DxcHeader;
|
|
@@ -1,12 +1,32 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import DxcHeader from "./Header";
|
|
3
|
+
import DxcButton from "../button/Button";
|
|
3
4
|
import Title from "../../.storybook/components/Title";
|
|
4
5
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
5
6
|
import { userEvent, waitFor, within } from "@storybook/testing-library";
|
|
7
|
+
import DxcFlex from "../flex/Flex";
|
|
8
|
+
import DxcLink from "../link/Link";
|
|
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";
|
|
6
13
|
|
|
7
14
|
export default {
|
|
8
15
|
title: "Header",
|
|
9
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
|
+
},
|
|
10
30
|
};
|
|
11
31
|
|
|
12
32
|
const options: any = [
|
|
@@ -16,16 +36,62 @@ const options: any = [
|
|
|
16
36
|
},
|
|
17
37
|
];
|
|
18
38
|
|
|
39
|
+
const options2: any = [
|
|
40
|
+
{
|
|
41
|
+
value: 1,
|
|
42
|
+
label: "Home",
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
value: 2,
|
|
46
|
+
label: "Release notes",
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
value: 3,
|
|
50
|
+
label: "Sign out",
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const opinionatedTheme = {
|
|
55
|
+
header: {
|
|
56
|
+
baseColor: "#ffffff",
|
|
57
|
+
accentColor: "#000000",
|
|
58
|
+
fontColor: "#000000",
|
|
59
|
+
menuBaseColor: "#ffffff",
|
|
60
|
+
hamburguerColor: "#000000",
|
|
61
|
+
logo: "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b8/2021_Facebook_icon.svg/2048px-2021_Facebook_icon.svg.png",
|
|
62
|
+
logoResponsive:
|
|
63
|
+
"https://upload.wikimedia.org/wikipedia/commons/thumb/b/b8/2021_Facebook_icon.svg/2048px-2021_Facebook_icon.svg.png",
|
|
64
|
+
contentColor: "#000000",
|
|
65
|
+
overlayColor: "#000000b3",
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
|
|
19
69
|
export const Chromatic = () => (
|
|
20
70
|
<>
|
|
21
71
|
<ExampleContainer>
|
|
22
72
|
<Title title="Default with dropdown" theme="light" level={4} />
|
|
23
|
-
<DxcHeader
|
|
73
|
+
<DxcHeader
|
|
74
|
+
content={<DxcHeader.Dropdown options={options} label="Default Dropdown" onSelectOption={() => {}} />}
|
|
75
|
+
/>
|
|
24
76
|
</ExampleContainer>
|
|
25
77
|
<ExampleContainer>
|
|
26
78
|
<Title title="Underlined with text" theme="light" level={4} />
|
|
27
79
|
<DxcHeader underlined content={<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>} />
|
|
28
80
|
</ExampleContainer>
|
|
81
|
+
<ExampleContainer>
|
|
82
|
+
<Title title="Underlined, dropdown and links" theme="light" level={4} />
|
|
83
|
+
<DxcHeader
|
|
84
|
+
content={
|
|
85
|
+
<DxcFlex alignItems="center" gap="4rem">
|
|
86
|
+
<DxcLink>Link 1</DxcLink>
|
|
87
|
+
<DxcLink>Link 2</DxcLink>
|
|
88
|
+
<DxcLink>Link 3</DxcLink>
|
|
89
|
+
<DxcHeader.Dropdown options={options2} label="Label" onSelectOption={() => {}} />
|
|
90
|
+
</DxcFlex>
|
|
91
|
+
}
|
|
92
|
+
underlined
|
|
93
|
+
/>
|
|
94
|
+
</ExampleContainer>
|
|
29
95
|
<Title title="Margins" theme="light" level={2} />
|
|
30
96
|
<ExampleContainer>
|
|
31
97
|
<Title title="Xxsmall margin" theme="light" level={4} />
|
|
@@ -62,35 +128,20 @@ export const Chromatic = () => (
|
|
|
62
128
|
<DxcHeader underlined margin="xxlarge" />
|
|
63
129
|
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
|
|
64
130
|
</ExampleContainer>
|
|
65
|
-
|
|
66
|
-
<Title title="Paddings" theme="light" level={2} />
|
|
67
|
-
<ExampleContainer>
|
|
68
|
-
<Title title="Xxsmall padding" theme="light" level={4} />
|
|
69
|
-
<DxcHeader underlined padding="xxsmall" />
|
|
70
|
-
</ExampleContainer>
|
|
71
|
-
<ExampleContainer>
|
|
72
|
-
<Title title="Xsmall padding" theme="light" level={4} />
|
|
73
|
-
<DxcHeader underlined padding="xsmall" />
|
|
74
|
-
</ExampleContainer>
|
|
75
|
-
<ExampleContainer>
|
|
76
|
-
<Title title="Small padding" theme="light" level={4} />
|
|
77
|
-
<DxcHeader underlined padding="small" />
|
|
78
|
-
</ExampleContainer>
|
|
79
|
-
<ExampleContainer>
|
|
80
|
-
<Title title="Medium padding" theme="light" level={4} />
|
|
81
|
-
<DxcHeader underlined padding="medium" />
|
|
82
|
-
</ExampleContainer>
|
|
83
|
-
<ExampleContainer>
|
|
84
|
-
<Title title="Large padding" theme="light" level={4} />
|
|
85
|
-
<DxcHeader underlined padding="large" />
|
|
86
|
-
</ExampleContainer>
|
|
87
|
-
<ExampleContainer>
|
|
88
|
-
<Title title="Xlarge padding" theme="light" level={4} />
|
|
89
|
-
<DxcHeader underlined padding="xlarge" />
|
|
90
|
-
</ExampleContainer>
|
|
131
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
91
132
|
<ExampleContainer>
|
|
92
|
-
<
|
|
93
|
-
|
|
133
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
134
|
+
<DxcHeader
|
|
135
|
+
underlined
|
|
136
|
+
content={<DxcButton label={"Custom Button"} />}
|
|
137
|
+
responsiveContent={(closeHandler) => (
|
|
138
|
+
<>
|
|
139
|
+
<DxcButton label={"Custom Button"} onClick={closeHandler} />
|
|
140
|
+
Custom content
|
|
141
|
+
</>
|
|
142
|
+
)}
|
|
143
|
+
/>
|
|
144
|
+
</HalstackProvider>
|
|
94
145
|
</ExampleContainer>
|
|
95
146
|
</>
|
|
96
147
|
);
|
|
@@ -99,8 +150,10 @@ export const ResponsiveHeader = () => (
|
|
|
99
150
|
<ExampleContainer>
|
|
100
151
|
<Title title="Responsive" theme="light" level={4} />
|
|
101
152
|
<DxcHeader
|
|
102
|
-
content={<DxcHeader.Dropdown options={options} label="Default Dropdown" />}
|
|
103
|
-
responsiveContent={(closeHandler) =>
|
|
153
|
+
content={<DxcHeader.Dropdown options={options} label="Default Dropdown" onSelectOption={() => {}} />}
|
|
154
|
+
responsiveContent={(closeHandler) => (
|
|
155
|
+
<DxcHeader.Dropdown options={options} label="Default Dropdown" onSelectOption={() => {}} />
|
|
156
|
+
)}
|
|
104
157
|
underlined
|
|
105
158
|
/>
|
|
106
159
|
</ExampleContainer>
|
|
@@ -120,13 +173,29 @@ const RespHeaderHover = () => (
|
|
|
120
173
|
</ExampleContainer>
|
|
121
174
|
);
|
|
122
175
|
|
|
123
|
-
const
|
|
176
|
+
const RespHeaderMenuMobile = () => (
|
|
124
177
|
<ExampleContainer>
|
|
125
178
|
<Title title="Responsive menu" theme="light" level={4} />
|
|
126
179
|
<DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
|
|
127
180
|
</ExampleContainer>
|
|
128
181
|
);
|
|
129
182
|
|
|
183
|
+
const RespHeaderMenuTablet = () => (
|
|
184
|
+
<ExampleContainer>
|
|
185
|
+
<Title title="Responsive menu" theme="light" level={4} />
|
|
186
|
+
<DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
|
|
187
|
+
</ExampleContainer>
|
|
188
|
+
);
|
|
189
|
+
|
|
190
|
+
const RespHeaderMenuOpinionated = () => (
|
|
191
|
+
<ExampleContainer>
|
|
192
|
+
<Title title="Responsive menu" theme="light" level={4} />
|
|
193
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
194
|
+
<DxcHeader responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>} underlined />
|
|
195
|
+
</HalstackProvider>
|
|
196
|
+
</ExampleContainer>
|
|
197
|
+
);
|
|
198
|
+
|
|
130
199
|
ResponsiveHeader.parameters = {
|
|
131
200
|
viewport: {
|
|
132
201
|
defaultViewport: "iphonex",
|
|
@@ -158,14 +227,40 @@ ResponsiveHeaderHover.play = async ({ canvasElement }) => {
|
|
|
158
227
|
await waitFor(() => canvas.findByText("Menu"));
|
|
159
228
|
};
|
|
160
229
|
|
|
161
|
-
export const
|
|
162
|
-
|
|
230
|
+
export const ResponsiveHeaderMenuMobile = RespHeaderMenuMobile.bind({});
|
|
231
|
+
ResponsiveHeaderMenuMobile.parameters = {
|
|
163
232
|
viewport: {
|
|
164
233
|
defaultViewport: "iphonex",
|
|
165
234
|
},
|
|
166
235
|
chromatic: { viewports: [375] },
|
|
167
236
|
};
|
|
168
|
-
|
|
237
|
+
ResponsiveHeaderMenuMobile.play = async ({ canvasElement }) => {
|
|
238
|
+
const canvas = within(canvasElement);
|
|
239
|
+
await waitFor(() => canvas.findByText("Menu"));
|
|
240
|
+
await userEvent.click(canvas.getByText("Menu"));
|
|
241
|
+
};
|
|
242
|
+
|
|
243
|
+
export const ResponsiveHeaderMenuTablet = RespHeaderMenuTablet.bind({});
|
|
244
|
+
ResponsiveHeaderMenuTablet.parameters = {
|
|
245
|
+
viewport: {
|
|
246
|
+
defaultViewport: "pixelxl",
|
|
247
|
+
},
|
|
248
|
+
chromatic: { viewports: [720] },
|
|
249
|
+
};
|
|
250
|
+
ResponsiveHeaderMenuTablet.play = async ({ canvasElement }) => {
|
|
251
|
+
const canvas = within(canvasElement);
|
|
252
|
+
await waitFor(() => canvas.findByText("Menu"));
|
|
253
|
+
await userEvent.click(canvas.getByText("Menu"));
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
export const ResponsiveHeaderMenuOpinionated = RespHeaderMenuOpinionated.bind({});
|
|
257
|
+
ResponsiveHeaderMenuOpinionated.parameters = {
|
|
258
|
+
viewport: {
|
|
259
|
+
defaultViewport: "pixelxl",
|
|
260
|
+
},
|
|
261
|
+
chromatic: { viewports: [720] },
|
|
262
|
+
};
|
|
263
|
+
ResponsiveHeaderMenuOpinionated.play = async ({ canvasElement }) => {
|
|
169
264
|
const canvas = within(canvasElement);
|
|
170
265
|
await waitFor(() => canvas.findByText("Menu"));
|
|
171
266
|
await userEvent.click(canvas.getByText("Menu"));
|
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
|
-
var _Header = _interopRequireDefault(require("./Header"));
|
|
10
|
-
|
|
6
|
+
var _Header = _interopRequireDefault(require("./Header.tsx"));
|
|
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
|
});
|