@dnanpm/styleguide 4.0.0 → 4.0.1

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.
@@ -6,9 +6,7 @@ var icons = require('@dnanpm/icons');
6
6
  var React = require('react');
7
7
  var styledComponents = require('styled-components');
8
8
  var theme = require('../../../themes/theme.js');
9
- var navigation = require('../../../themes/themeComponents/navigation.js');
10
9
  var styledUtils = require('../../../utils/styledUtils.js');
11
- var NavContext = require('../context/NavContext.js');
12
10
  var globalNavStyles = require('../globalNavStyles.js');
13
11
  var MainNavTooltipMenu = require('./MainNavTooltipMenu.js');
14
12
 
@@ -16,22 +14,25 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
16
14
 
17
15
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
18
16
 
19
- const MenuItem = styledComponents.styled(globalNavStyles.MenuLink) `
17
+ const MenuWrapper = styledComponents.styled.div `
18
+ display: flex;
19
+ flex-direction: column;
20
+ gap: ${styledUtils.getMultipliedSize(theme.default.base.baseWidth, 2)};
21
+ margin: ${styledUtils.getMultipliedSize(theme.default.base.baseHeight, 2)}
22
+ ${styledUtils.getMultipliedSize(theme.default.base.baseHeight, 3)};
20
23
  font-weight: ${theme.default.fontWeight.medium};
21
- margin: ${styledUtils.getMultipliedSize(theme.default.base.baseHeight, 1)} auto;
22
24
  text-align: center;
23
25
  `;
24
- const LangComponent = ({ currentLanguage, languagesObject }) => (React__default.default.createElement(React__default.default.Fragment, null, Object.entries(languagesObject)
26
+ const LangComponent = ({ currentLanguage, languagesObject }) => (React__default.default.createElement(MenuWrapper, null, Object.entries(languagesObject)
25
27
  .filter(([key]) => key.toLowerCase() !== currentLanguage.toLowerCase())
26
- .map(([key, value]) => (React__default.default.createElement(MenuItem, { key: `language-${key}`, href: value }, key.toUpperCase())))));
28
+ .map(([key, value]) => (React__default.default.createElement(globalNavStyles.MenuLink, { key: `language-${key}`, href: value }, key.toUpperCase())))));
27
29
  const LanguageSelector = ({ currentLanguage, languagesObject, languageSelectorLabel, }) => {
28
- const { isMobileMenu, navZIndex } = React.useContext(NavContext.default);
29
30
  const LngComponent = React.useCallback(() => (React__default.default.createElement(LangComponent, { languageSelectorLabel: languageSelectorLabel, currentLanguage: currentLanguage, languagesObject: languagesObject })), [currentLanguage, languagesObject, languageSelectorLabel]);
30
31
  if (Object.keys(languagesObject).length < 2) {
31
32
  return null;
32
33
  }
33
- return (React__default.default.createElement(MainNavTooltipMenu.default, { ariaLabel: languageSelectorLabel, closeWhenTagClicked: ['a'], contentComponent: LngComponent, contentWidth: "5rem", globalStateString: "lang", tooltipRight: isMobileMenu ? '13.8rem' : '11.8rem', zIndex: navZIndex + 1 },
34
- React__default.default.createElement(icons.Globe, { size: navigation.navIconSize }),
34
+ return (React__default.default.createElement(MainNavTooltipMenu.default, { ariaLabel: languageSelectorLabel, closeWhenTagClicked: ['a'], contentComponent: LngComponent, contentWidth: "5rem", globalStateString: "lang", tooltipRight: "auto" },
35
+ React__default.default.createElement(icons.Globe, null),
35
36
  React__default.default.createElement("span", { "data-testid": "header-lang-label" }, currentLanguage.toUpperCase())));
36
37
  };
37
38
 
@@ -12,8 +12,8 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
12
12
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
13
13
 
14
14
  const LoginTooltip = ({ isLogged, loginLabel }) => {
15
- const { navZIndex, isMobileMenu, loginComponent } = React.useContext(NavContext.default);
16
- return (React__default.default.createElement(MainNavTooltipMenu.default, { ariaLabel: loginLabel, closeWhenTagClicked: ['a', 'button'], contentComponent: loginComponent, globalStateString: "login", tooltipRight: isMobileMenu ? '3rem' : '1rem', zIndex: navZIndex + 1 }, !isLogged ? (loginLabel) : (React__default.default.createElement(React__default.default.Fragment, null,
15
+ const { isMobileMenu, loginComponent } = React.useContext(NavContext.default);
16
+ return (React__default.default.createElement(MainNavTooltipMenu.default, { ariaLabel: loginLabel, closeWhenTagClicked: ['a', 'button'], contentComponent: loginComponent, globalStateString: "login", tooltipRight: isMobileMenu ? '3rem' : '1rem' }, !isLogged ? (loginLabel) : (React__default.default.createElement(React__default.default.Fragment, null,
17
17
  React__default.default.createElement(icons.User, null),
18
18
  React__default.default.createElement("span", { "data-testid": "header-login-label" }, loginLabel)))));
19
19
  };
@@ -6,8 +6,6 @@ interface MainNavTooltipMenuProps<ContentProps extends object = object> extends
6
6
  ariaLabel?: string;
7
7
  /** Tooltip menu content */
8
8
  children?: ReactNode;
9
- /** Overlap other elements */
10
- zIndex?: number;
11
9
  /** Tooltip position from right. Default: 1.25rem */
12
10
  tooltipRight?: string;
13
11
  /** Mandatory Component provided as login content */
@@ -27,5 +25,5 @@ export declare const IconContainer: import("styled-components/dist/types").IStyl
27
25
  $isActive?: boolean;
28
26
  $collapseSize: number;
29
27
  }>> & string;
30
- declare const MainNavTooltipMenu: <ContentProps extends object = object>({ ariaLabel, children, closeWhenTagClicked, contentComponent, contentWidth, fullWidthBreakpoint, fullWidthDesktop, globalStateString, tooltipRight, zIndex, ...props }: MainNavTooltipMenuProps<ContentProps>) => React.JSX.Element;
28
+ declare const MainNavTooltipMenu: <ContentProps extends object = object>({ ariaLabel, children, closeWhenTagClicked, contentComponent, contentWidth, fullWidthBreakpoint, fullWidthDesktop, globalStateString, tooltipRight, ...props }: MainNavTooltipMenuProps<ContentProps>) => React.JSX.Element;
31
29
  export default MainNavTooltipMenu;
@@ -49,9 +49,7 @@ const Tooltip = styledComponents.styled.div `
49
49
  min-height: ${styledUtils.getMultipliedSize(theme.default.base.baseHeight, 5)};
50
50
  // Ensure that the tooltip's content is always visible within the viewport. So, the max-height is the viewport height minus the header's height + some margin.
51
51
  max-height: calc(var(--vh100, 100vh) - ${styledUtils.getMultipliedSize(theme.default.base.baseHeight, 12)});
52
- width: 100%;
53
52
  position: absolute;
54
- right: 0;
55
53
  top: ${navigation.navMaxHeight};
56
54
  z-index: ${p => p.$zIndex};
57
55
  display: flex;
@@ -85,8 +83,8 @@ const Caret = styledComponents.styled.div `
85
83
  }
86
84
  `;
87
85
  const MainNavTooltipMenu = (_a) => {
88
- var { ariaLabel, children, closeWhenTagClicked = [], contentComponent, contentWidth = '20rem', fullWidthBreakpoint = theme.default.breakpoints.xs, fullWidthDesktop = false, globalStateString, tooltipRight = '-1rem', zIndex = 1 } = _a, props = tslib.__rest(_a, ["ariaLabel", "children", "closeWhenTagClicked", "contentComponent", "contentWidth", "fullWidthBreakpoint", "fullWidthDesktop", "globalStateString", "tooltipRight", "zIndex"]);
89
- const { collapseSize, isMobileMenu, isLoggedIn, resetMenuEvents, setTooltipItems, showLoginTooltip, showMinicart, tooltipItems, } = React.useContext(NavContext.default);
86
+ var { ariaLabel, children, closeWhenTagClicked = [], contentComponent, contentWidth = '20rem', fullWidthBreakpoint = theme.default.breakpoints.xs, fullWidthDesktop = false, globalStateString, tooltipRight = '-1rem' } = _a, props = tslib.__rest(_a, ["ariaLabel", "children", "closeWhenTagClicked", "contentComponent", "contentWidth", "fullWidthBreakpoint", "fullWidthDesktop", "globalStateString", "tooltipRight"]);
87
+ const { collapseSize, isMobileMenu, isLoggedIn, resetMenuEvents, setTooltipItems, showLoginTooltip, showMinicart, tooltipItems, navZIndex, } = React.useContext(NavContext.default);
90
88
  const ref = React.useRef(null);
91
89
  const globalStateKey = globalStateString;
92
90
  const isLoginItemAndLoggedIn = globalStateKey === 'login' && isLoggedIn;
@@ -113,8 +111,8 @@ const MainNavTooltipMenu = (_a) => {
113
111
  return (React__default.default.createElement(IconContainer, { "data-testid": `header-${globalStateKey}-container`, "$collapseSize": collapseSize, ref: ref },
114
112
  globalStateKey === 'login' && !isLoggedIn ? (React__default.default.createElement(ButtonPrimary.default, { onClick: ContentComponent ? toggleState : undefined, small: true }, children)) : (React__default.default.createElement(MainNavTooltipMenuExportedStyles.default, { "aria-label": ariaLabel, "aria-expanded": tooltipItems[globalStateKey], "$isLoggedIn": isLoginItemAndLoggedIn, "$collapseSize": collapseSize, "$isHighlighted": tooltipItems[globalStateKey] || isLoginItemAndLoggedIn, onClick: props.onCartButtonClick || (ContentComponent ? toggleState : undefined) }, children)),
115
113
  tooltipItems[globalStateKey] && ContentComponent && (React__default.default.createElement(React__default.default.Fragment, null,
116
- React__default.default.createElement(Caret, { "$zIndex": zIndex, "$collapseSize": collapseSize }),
117
- React__default.default.createElement(Tooltip, { "$zIndex": zIndex, "$tooltipRight": tooltipRight, "$contentWidth": contentWidth, "$collapseSize": collapseSize, "$fullWidthDesktop": fullWidthDesktop, "$fullWidthBreakpoint": fullWidthBreakpoint },
114
+ React__default.default.createElement(Caret, { "$zIndex": navZIndex + 1, "$collapseSize": collapseSize }),
115
+ React__default.default.createElement(Tooltip, { "$zIndex": navZIndex + 1, "$tooltipRight": tooltipRight, "$contentWidth": contentWidth, "$collapseSize": collapseSize, "$fullWidthDesktop": fullWidthDesktop, "$fullWidthBreakpoint": fullWidthBreakpoint },
118
116
  React__default.default.createElement(TooltipBox, { elevation: "high", padding: "0", width: "100%" },
119
117
  React__default.default.createElement(ContentComponent, { mobileView: isMobileMenu })))))));
120
118
  };
@@ -6,19 +6,15 @@ var icons = require('@dnanpm/icons');
6
6
  var React = require('react');
7
7
  var theme = require('../../../themes/theme.js');
8
8
  var NotificationBadge = require('../../NotificationBadge/NotificationBadge.js');
9
- var NavContext = require('../context/NavContext.js');
10
9
  var MainNavTooltipMenu = require('./MainNavTooltipMenu.js');
11
10
 
12
11
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
13
12
 
14
13
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
15
14
 
16
- const MinicartTooltip = ({ minicartAmount, minicartAmountLabel, minicartLabel, onCartButtonClick, }) => {
17
- const { navZIndex } = React.useContext(NavContext.default);
18
- return (React__default.default.createElement(MainNavTooltipMenu.default, { closeWhenTagClicked: ['a', 'button'], onCartButtonClick: onCartButtonClick, contentWidth: "35rem", fullWidthBreakpoint: theme.default.breakpoints.md, globalStateString: "minicart", tooltipRight: "5rem", zIndex: navZIndex + 1 },
19
- React__default.default.createElement(icons.Cart, null),
20
- React__default.default.createElement("span", { "aria-hidden": !!minicartAmountLabel }, minicartLabel),
21
- minicartAmount > 0 && (React__default.default.createElement(NotificationBadge.default, { "data-testid": "header-minicart-amount", right: "5px", top: "-5px", visuallyHiddenText: minicartAmountLabel }, minicartAmount))));
22
- };
15
+ const MinicartTooltip = ({ minicartAmount, minicartAmountLabel, minicartLabel, onCartButtonClick, }) => (React__default.default.createElement(MainNavTooltipMenu.default, { closeWhenTagClicked: ['a', 'button'], onCartButtonClick: onCartButtonClick, contentWidth: "35rem", fullWidthBreakpoint: theme.default.breakpoints.md, globalStateString: "minicart", tooltipRight: "5rem" },
16
+ React__default.default.createElement(icons.Cart, null),
17
+ React__default.default.createElement("span", { "aria-hidden": !!minicartAmountLabel }, minicartLabel),
18
+ minicartAmount > 0 && (React__default.default.createElement(NotificationBadge.default, { "data-testid": "header-minicart-amount", right: "5px", top: "-5px", visuallyHiddenText: minicartAmountLabel }, minicartAmount))));
23
19
 
24
20
  exports.default = MinicartTooltip;
@@ -12,8 +12,8 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
12
12
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
13
13
 
14
14
  const PageSearch = ({ searchLabel }) => {
15
- const { navZIndex, searchComponent } = React.useContext(NavContext.default);
16
- return (React__default.default.createElement(MainNavTooltipMenu.default, { ariaLabel: searchLabel, closeWhenTagClicked: ['a'], contentComponent: searchComponent, contentWidth: "100%", "data-testid": "header-search-container", fullWidthDesktop: true, globalStateString: "search", tooltipRight: "0", zIndex: navZIndex + 1 },
15
+ const { searchComponent } = React.useContext(NavContext.default);
16
+ return (React__default.default.createElement(MainNavTooltipMenu.default, { ariaLabel: searchLabel, closeWhenTagClicked: ['a'], contentComponent: searchComponent, contentWidth: "100%", "data-testid": "header-search-container", fullWidthDesktop: true, globalStateString: "search", tooltipRight: "0" },
17
17
  React__default.default.createElement(icons.Search, null),
18
18
  React__default.default.createElement("span", null, searchLabel)));
19
19
  };
@@ -108,7 +108,7 @@ const Tooltip = (_a) => {
108
108
  scroll: true,
109
109
  };
110
110
  return (React__default.default.createElement(React__default.default.Fragment, null,
111
- !props.hideTriggerElement && (React__default.default.createElement(Helper, { "data-tooltip-id": props.id, "$isClickable": isClickable, className: props.className, "data-testid": dataTestId, type: "button", "data-tooltip-delay-hide": 500, "aria-describedby": props.id },
111
+ !props.hideTriggerElement && (React__default.default.createElement(Helper, { "data-tooltip-id": props.id, "$isClickable": isClickable, className: props.className, "data-testid": dataTestId, type: "button", "data-tooltip-delay-hide": 500 },
112
112
  React__default.default.createElement(Icon.default, { icon: icons.Info, size: "1rem", position: props.position, "aria-hidden": true }))),
113
113
  React__default.default.createElement(StyledReactTooltip, { id: props.id, place: props.placement, openOnClick: isClickable, clickable: isHoverable, "$isMultiline": props.isMultiline, disableStyleInjection: true, role: isHoverable ? 'dialog' : 'tooltip', openEvents: handleReactTooltipOpenEvents, globalCloseEvents: handleReactTooltipGlobalCloseEvents, closeEvents: handleReactTooltipCloseEvents, "data-testid": dataTestId && `${dataTestId}-content` }, props.children)));
114
114
  };
@@ -1,29 +1,30 @@
1
1
  import { Globe } from '@dnanpm/icons';
2
- import React__default, { useContext, useCallback } from 'react';
2
+ import React__default, { useCallback } from 'react';
3
3
  import { styled } from 'styled-components';
4
4
  import theme from '../../../themes/theme.js';
5
- import { navIconSize } from '../../../themes/themeComponents/navigation.js';
6
5
  import { getMultipliedSize } from '../../../utils/styledUtils.js';
7
- import NavContext from '../context/NavContext.js';
8
6
  import { MenuLink } from '../globalNavStyles.js';
9
7
  import MainNavTooltipMenu from './MainNavTooltipMenu.js';
10
8
 
11
- const MenuItem = styled(MenuLink) `
9
+ const MenuWrapper = styled.div `
10
+ display: flex;
11
+ flex-direction: column;
12
+ gap: ${getMultipliedSize(theme.base.baseWidth, 2)};
13
+ margin: ${getMultipliedSize(theme.base.baseHeight, 2)}
14
+ ${getMultipliedSize(theme.base.baseHeight, 3)};
12
15
  font-weight: ${theme.fontWeight.medium};
13
- margin: ${getMultipliedSize(theme.base.baseHeight, 1)} auto;
14
16
  text-align: center;
15
17
  `;
16
- const LangComponent = ({ currentLanguage, languagesObject }) => (React__default.createElement(React__default.Fragment, null, Object.entries(languagesObject)
18
+ const LangComponent = ({ currentLanguage, languagesObject }) => (React__default.createElement(MenuWrapper, null, Object.entries(languagesObject)
17
19
  .filter(([key]) => key.toLowerCase() !== currentLanguage.toLowerCase())
18
- .map(([key, value]) => (React__default.createElement(MenuItem, { key: `language-${key}`, href: value }, key.toUpperCase())))));
20
+ .map(([key, value]) => (React__default.createElement(MenuLink, { key: `language-${key}`, href: value }, key.toUpperCase())))));
19
21
  const LanguageSelector = ({ currentLanguage, languagesObject, languageSelectorLabel, }) => {
20
- const { isMobileMenu, navZIndex } = useContext(NavContext);
21
22
  const LngComponent = useCallback(() => (React__default.createElement(LangComponent, { languageSelectorLabel: languageSelectorLabel, currentLanguage: currentLanguage, languagesObject: languagesObject })), [currentLanguage, languagesObject, languageSelectorLabel]);
22
23
  if (Object.keys(languagesObject).length < 2) {
23
24
  return null;
24
25
  }
25
- return (React__default.createElement(MainNavTooltipMenu, { ariaLabel: languageSelectorLabel, closeWhenTagClicked: ['a'], contentComponent: LngComponent, contentWidth: "5rem", globalStateString: "lang", tooltipRight: isMobileMenu ? '13.8rem' : '11.8rem', zIndex: navZIndex + 1 },
26
- React__default.createElement(Globe, { size: navIconSize }),
26
+ return (React__default.createElement(MainNavTooltipMenu, { ariaLabel: languageSelectorLabel, closeWhenTagClicked: ['a'], contentComponent: LngComponent, contentWidth: "5rem", globalStateString: "lang", tooltipRight: "auto" },
27
+ React__default.createElement(Globe, null),
27
28
  React__default.createElement("span", { "data-testid": "header-lang-label" }, currentLanguage.toUpperCase())));
28
29
  };
29
30
 
@@ -4,8 +4,8 @@ import NavContext from '../context/NavContext.js';
4
4
  import MainNavTooltipMenu from './MainNavTooltipMenu.js';
5
5
 
6
6
  const LoginTooltip = ({ isLogged, loginLabel }) => {
7
- const { navZIndex, isMobileMenu, loginComponent } = useContext(NavContext);
8
- return (React__default.createElement(MainNavTooltipMenu, { ariaLabel: loginLabel, closeWhenTagClicked: ['a', 'button'], contentComponent: loginComponent, globalStateString: "login", tooltipRight: isMobileMenu ? '3rem' : '1rem', zIndex: navZIndex + 1 }, !isLogged ? (loginLabel) : (React__default.createElement(React__default.Fragment, null,
7
+ const { isMobileMenu, loginComponent } = useContext(NavContext);
8
+ return (React__default.createElement(MainNavTooltipMenu, { ariaLabel: loginLabel, closeWhenTagClicked: ['a', 'button'], contentComponent: loginComponent, globalStateString: "login", tooltipRight: isMobileMenu ? '3rem' : '1rem' }, !isLogged ? (loginLabel) : (React__default.createElement(React__default.Fragment, null,
9
9
  React__default.createElement(User, null),
10
10
  React__default.createElement("span", { "data-testid": "header-login-label" }, loginLabel)))));
11
11
  };
@@ -6,8 +6,6 @@ interface MainNavTooltipMenuProps<ContentProps extends object = object> extends
6
6
  ariaLabel?: string;
7
7
  /** Tooltip menu content */
8
8
  children?: ReactNode;
9
- /** Overlap other elements */
10
- zIndex?: number;
11
9
  /** Tooltip position from right. Default: 1.25rem */
12
10
  tooltipRight?: string;
13
11
  /** Mandatory Component provided as login content */
@@ -27,5 +25,5 @@ export declare const IconContainer: import("styled-components/dist/types").IStyl
27
25
  $isActive?: boolean;
28
26
  $collapseSize: number;
29
27
  }>> & string;
30
- declare const MainNavTooltipMenu: <ContentProps extends object = object>({ ariaLabel, children, closeWhenTagClicked, contentComponent, contentWidth, fullWidthBreakpoint, fullWidthDesktop, globalStateString, tooltipRight, zIndex, ...props }: MainNavTooltipMenuProps<ContentProps>) => React.JSX.Element;
28
+ declare const MainNavTooltipMenu: <ContentProps extends object = object>({ ariaLabel, children, closeWhenTagClicked, contentComponent, contentWidth, fullWidthBreakpoint, fullWidthDesktop, globalStateString, tooltipRight, ...props }: MainNavTooltipMenuProps<ContentProps>) => React.JSX.Element;
31
29
  export default MainNavTooltipMenu;
@@ -41,9 +41,7 @@ const Tooltip = styled.div `
41
41
  min-height: ${getMultipliedSize(theme.base.baseHeight, 5)};
42
42
  // Ensure that the tooltip's content is always visible within the viewport. So, the max-height is the viewport height minus the header's height + some margin.
43
43
  max-height: calc(var(--vh100, 100vh) - ${getMultipliedSize(theme.base.baseHeight, 12)});
44
- width: 100%;
45
44
  position: absolute;
46
- right: 0;
47
45
  top: ${navMaxHeight};
48
46
  z-index: ${p => p.$zIndex};
49
47
  display: flex;
@@ -77,8 +75,8 @@ const Caret = styled.div `
77
75
  }
78
76
  `;
79
77
  const MainNavTooltipMenu = (_a) => {
80
- var { ariaLabel, children, closeWhenTagClicked = [], contentComponent, contentWidth = '20rem', fullWidthBreakpoint = theme.breakpoints.xs, fullWidthDesktop = false, globalStateString, tooltipRight = '-1rem', zIndex = 1 } = _a, props = __rest(_a, ["ariaLabel", "children", "closeWhenTagClicked", "contentComponent", "contentWidth", "fullWidthBreakpoint", "fullWidthDesktop", "globalStateString", "tooltipRight", "zIndex"]);
81
- const { collapseSize, isMobileMenu, isLoggedIn, resetMenuEvents, setTooltipItems, showLoginTooltip, showMinicart, tooltipItems, } = useContext(NavContext);
78
+ var { ariaLabel, children, closeWhenTagClicked = [], contentComponent, contentWidth = '20rem', fullWidthBreakpoint = theme.breakpoints.xs, fullWidthDesktop = false, globalStateString, tooltipRight = '-1rem' } = _a, props = __rest(_a, ["ariaLabel", "children", "closeWhenTagClicked", "contentComponent", "contentWidth", "fullWidthBreakpoint", "fullWidthDesktop", "globalStateString", "tooltipRight"]);
79
+ const { collapseSize, isMobileMenu, isLoggedIn, resetMenuEvents, setTooltipItems, showLoginTooltip, showMinicart, tooltipItems, navZIndex, } = useContext(NavContext);
82
80
  const ref = useRef(null);
83
81
  const globalStateKey = globalStateString;
84
82
  const isLoginItemAndLoggedIn = globalStateKey === 'login' && isLoggedIn;
@@ -105,8 +103,8 @@ const MainNavTooltipMenu = (_a) => {
105
103
  return (React__default.createElement(IconContainer, { "data-testid": `header-${globalStateKey}-container`, "$collapseSize": collapseSize, ref: ref },
106
104
  globalStateKey === 'login' && !isLoggedIn ? (React__default.createElement(ButtonPrimary, { onClick: ContentComponent ? toggleState : undefined, small: true }, children)) : (React__default.createElement(TooltipWrapper, { "aria-label": ariaLabel, "aria-expanded": tooltipItems[globalStateKey], "$isLoggedIn": isLoginItemAndLoggedIn, "$collapseSize": collapseSize, "$isHighlighted": tooltipItems[globalStateKey] || isLoginItemAndLoggedIn, onClick: props.onCartButtonClick || (ContentComponent ? toggleState : undefined) }, children)),
107
105
  tooltipItems[globalStateKey] && ContentComponent && (React__default.createElement(React__default.Fragment, null,
108
- React__default.createElement(Caret, { "$zIndex": zIndex, "$collapseSize": collapseSize }),
109
- React__default.createElement(Tooltip, { "$zIndex": zIndex, "$tooltipRight": tooltipRight, "$contentWidth": contentWidth, "$collapseSize": collapseSize, "$fullWidthDesktop": fullWidthDesktop, "$fullWidthBreakpoint": fullWidthBreakpoint },
106
+ React__default.createElement(Caret, { "$zIndex": navZIndex + 1, "$collapseSize": collapseSize }),
107
+ React__default.createElement(Tooltip, { "$zIndex": navZIndex + 1, "$tooltipRight": tooltipRight, "$contentWidth": contentWidth, "$collapseSize": collapseSize, "$fullWidthDesktop": fullWidthDesktop, "$fullWidthBreakpoint": fullWidthBreakpoint },
110
108
  React__default.createElement(TooltipBox, { elevation: "high", padding: "0", width: "100%" },
111
109
  React__default.createElement(ContentComponent, { mobileView: isMobileMenu })))))));
112
110
  };
@@ -1,16 +1,12 @@
1
1
  import { Cart } from '@dnanpm/icons';
2
- import React__default, { useContext } from 'react';
2
+ import React__default from 'react';
3
3
  import theme from '../../../themes/theme.js';
4
4
  import NotificationBadge from '../../NotificationBadge/NotificationBadge.js';
5
- import NavContext from '../context/NavContext.js';
6
5
  import MainNavTooltipMenu from './MainNavTooltipMenu.js';
7
6
 
8
- const MinicartTooltip = ({ minicartAmount, minicartAmountLabel, minicartLabel, onCartButtonClick, }) => {
9
- const { navZIndex } = useContext(NavContext);
10
- return (React__default.createElement(MainNavTooltipMenu, { closeWhenTagClicked: ['a', 'button'], onCartButtonClick: onCartButtonClick, contentWidth: "35rem", fullWidthBreakpoint: theme.breakpoints.md, globalStateString: "minicart", tooltipRight: "5rem", zIndex: navZIndex + 1 },
11
- React__default.createElement(Cart, null),
12
- React__default.createElement("span", { "aria-hidden": !!minicartAmountLabel }, minicartLabel),
13
- minicartAmount > 0 && (React__default.createElement(NotificationBadge, { "data-testid": "header-minicart-amount", right: "5px", top: "-5px", visuallyHiddenText: minicartAmountLabel }, minicartAmount))));
14
- };
7
+ const MinicartTooltip = ({ minicartAmount, minicartAmountLabel, minicartLabel, onCartButtonClick, }) => (React__default.createElement(MainNavTooltipMenu, { closeWhenTagClicked: ['a', 'button'], onCartButtonClick: onCartButtonClick, contentWidth: "35rem", fullWidthBreakpoint: theme.breakpoints.md, globalStateString: "minicart", tooltipRight: "5rem" },
8
+ React__default.createElement(Cart, null),
9
+ React__default.createElement("span", { "aria-hidden": !!minicartAmountLabel }, minicartLabel),
10
+ minicartAmount > 0 && (React__default.createElement(NotificationBadge, { "data-testid": "header-minicart-amount", right: "5px", top: "-5px", visuallyHiddenText: minicartAmountLabel }, minicartAmount))));
15
11
 
16
12
  export { MinicartTooltip as default };
@@ -4,8 +4,8 @@ import NavContext from '../context/NavContext.js';
4
4
  import MainNavTooltipMenu from './MainNavTooltipMenu.js';
5
5
 
6
6
  const PageSearch = ({ searchLabel }) => {
7
- const { navZIndex, searchComponent } = useContext(NavContext);
8
- return (React__default.createElement(MainNavTooltipMenu, { ariaLabel: searchLabel, closeWhenTagClicked: ['a'], contentComponent: searchComponent, contentWidth: "100%", "data-testid": "header-search-container", fullWidthDesktop: true, globalStateString: "search", tooltipRight: "0", zIndex: navZIndex + 1 },
7
+ const { searchComponent } = useContext(NavContext);
8
+ return (React__default.createElement(MainNavTooltipMenu, { ariaLabel: searchLabel, closeWhenTagClicked: ['a'], contentComponent: searchComponent, contentWidth: "100%", "data-testid": "header-search-container", fullWidthDesktop: true, globalStateString: "search", tooltipRight: "0" },
9
9
  React__default.createElement(Search, null),
10
10
  React__default.createElement("span", null, searchLabel)));
11
11
  };
@@ -100,7 +100,7 @@ const Tooltip = (_a) => {
100
100
  scroll: true,
101
101
  };
102
102
  return (React__default.createElement(React__default.Fragment, null,
103
- !props.hideTriggerElement && (React__default.createElement(Helper, { "data-tooltip-id": props.id, "$isClickable": isClickable, className: props.className, "data-testid": dataTestId, type: "button", "data-tooltip-delay-hide": 500, "aria-describedby": props.id },
103
+ !props.hideTriggerElement && (React__default.createElement(Helper, { "data-tooltip-id": props.id, "$isClickable": isClickable, className: props.className, "data-testid": dataTestId, type: "button", "data-tooltip-delay-hide": 500 },
104
104
  React__default.createElement(Icon, { icon: Info, size: "1rem", position: props.position, "aria-hidden": true }))),
105
105
  React__default.createElement(StyledReactTooltip, { id: props.id, place: props.placement, openOnClick: isClickable, clickable: isHoverable, "$isMultiline": props.isMultiline, disableStyleInjection: true, role: isHoverable ? 'dialog' : 'tooltip', openEvents: handleReactTooltipOpenEvents, globalCloseEvents: handleReactTooltipGlobalCloseEvents, closeEvents: handleReactTooltipCloseEvents, "data-testid": dataTestId && `${dataTestId}-content` }, props.children)));
106
106
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dnanpm/styleguide",
3
3
  "sideEffects": false,
4
- "version": "v4.0.0",
4
+ "version": "v4.0.1",
5
5
  "main": "build/cjs/index.js",
6
6
  "module": "build/es/index.js",
7
7
  "jsnext:main": "build/es/index.js",
@@ -66,14 +66,14 @@
66
66
  "@types/react-modal": "^3.13.1",
67
67
  "@types/resize-observer-browser": "^0.1.8",
68
68
  "@typescript-eslint/eslint-plugin": "^8.46.4",
69
- "@typescript-eslint/parser": "^8.46.4",
69
+ "@typescript-eslint/parser": "^8.48.0",
70
70
  "babel-loader": "^9.2.1",
71
71
  "cross-env": "^10.0.0",
72
72
  "css-loader": "^6.11.0",
73
73
  "eslint": "^9.39.1",
74
74
  "eslint-config-prettier": "^10.1.8",
75
75
  "eslint-plugin-import": "^2.32.0",
76
- "eslint-plugin-jsdoc": "^61.2.0",
76
+ "eslint-plugin-jsdoc": "^61.4.1",
77
77
  "eslint-plugin-jsx-a11y": "^6.10.2",
78
78
  "eslint-plugin-react": "^7.37.5",
79
79
  "eslint-plugin-react-hooks": "^7.0.1",
@@ -96,7 +96,7 @@
96
96
  "ts-node": "^10.9.2",
97
97
  "tslib": "^2.8.1",
98
98
  "typescript": "^5.1.6",
99
- "webpack": "^5.102.1"
99
+ "webpack": "^5.103.0"
100
100
  },
101
101
  "dependencies": {
102
102
  "ramda": "^0.32.0",
@@ -104,7 +104,7 @@
104
104
  "react-modal": "^3.16.1",
105
105
  "react-select": "^5.8.1",
106
106
  "react-spring": "^8.0.27",
107
- "react-tooltip": "^5.28.1"
107
+ "react-tooltip": "^5.30.0"
108
108
  },
109
109
  "peerDependencies": {
110
110
  "@dnanpm/icons": "^2.x",