@comicrelief/component-library 8.13.1 → 8.13.3

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.
@@ -16,10 +16,12 @@ const Header2025 = _ref => {
16
16
  campaign = 'Comic Relief',
17
17
  donateButton = null,
18
18
  characterLimit = 60,
19
+ showBoxShadow = false,
19
20
  ...rest
20
21
  } = _ref;
21
22
  return /*#__PURE__*/_react.default.createElement(_Header.Header2025Wrapper, Object.assign({
22
- navItems: true
23
+ navItems: true,
24
+ showBoxShadow: showBoxShadow
23
25
  }, rest), /*#__PURE__*/_react.default.createElement(_Header.InnerWrapper, null, /*#__PURE__*/_react.default.createElement(_Header.Brand, null, /*#__PURE__*/_react.default.createElement(_Logos.default, {
24
26
  campaign: campaign,
25
27
  sizeSm: "50px",
@@ -478,6 +478,7 @@ const [success, setSuccess] = React.useState(false);
478
478
 
479
479
  <>
480
480
  <Header2025
481
+ showBoxShadow="true"
481
482
  characterLimit={50}
482
483
  navItems={data}
483
484
  rotate="true"
@@ -589,6 +590,7 @@ const [success, setSuccess] = React.useState(false);
589
590
 
590
591
  <>
591
592
  <Header2025
593
+ showBoxShadow="true"
592
594
  characterLimit={50}
593
595
  navItems={data}
594
596
  rotate="true"
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.InnerWrapper = exports.Header2025Wrapper = exports.Header2025MetaIcons = exports.DonateButtonWrapperTop = exports.ButtonsAndIcons = exports.Brand = void 0;
8
- var _styledComponents = _interopRequireDefault(require("styled-components"));
9
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
9
10
  var _zIndex = _interopRequireDefault(require("../../../theme/shared/zIndex"));
10
11
  var _containers = _interopRequireDefault(require("../../../theme/shared/containers"));
11
12
  require("./annoying.css");
@@ -14,7 +15,7 @@ const Header2025Wrapper = exports.Header2025Wrapper = _styledComponents.default.
14
15
  })).withConfig({
15
16
  displayName: "Header2025style__Header2025Wrapper",
16
17
  componentId: "sc-7gs40r-0"
17
- })(["position:relative;background-color:", ";padding:0;height:75px;@media ", "{height:auto;}"], _ref => {
18
+ })(["position:relative;background-color:", ";padding:0;height:75px;@media ", "{height:auto;}", ";"], _ref => {
18
19
  let {
19
20
  theme
20
21
  } = _ref;
@@ -24,23 +25,28 @@ const Header2025Wrapper = exports.Header2025Wrapper = _styledComponents.default.
24
25
  theme
25
26
  } = _ref2;
26
27
  return theme.allBreakpoints('Nav');
28
+ }, _ref3 => {
29
+ let {
30
+ showBoxShadow
31
+ } = _ref3;
32
+ return showBoxShadow && (0, _styledComponents.css)(["box-shadow:0px 13px 15px 0 rgba(0,0,0,0.15);"]);
27
33
  });
28
34
  const InnerWrapper = exports.InnerWrapper = _styledComponents.default.div.withConfig({
29
35
  displayName: "Header2025style__InnerWrapper",
30
36
  componentId: "sc-7gs40r-1"
31
- })(["display:flex;align-items:center;height:100%;padding:0 12px;cursor:pointer;max-width:", ";@media ", "{margin:0 auto;}"], _containers.default.large, _ref3 => {
37
+ })(["display:flex;align-items:center;height:100%;padding:0 12px;cursor:pointer;max-width:", ";@media ", "{margin:0 auto;}"], _containers.default.large, _ref4 => {
32
38
  let {
33
39
  theme
34
- } = _ref3;
40
+ } = _ref4;
35
41
  return theme.allBreakpoints('Nav');
36
42
  });
37
43
  const Brand = exports.Brand = _styledComponents.default.div.withConfig({
38
44
  displayName: "Header2025style__Brand",
39
45
  componentId: "sc-7gs40r-2"
40
- })(["", ";margin-right:auto;display:flex;align-items:center;a{border:0;color:transparent;margin-right:25px;img{width:100%;object-fit:contain;}:hover{border:0;}}@media ", "{margin-right:0}"], (0, _zIndex.default)('high'), _ref4 => {
46
+ })(["", ";margin-right:auto;display:flex;align-items:center;a{border:0;color:transparent;margin-right:25px;img{width:100%;object-fit:contain;}:hover{border:0;}}@media ", "{margin-right:0}"], (0, _zIndex.default)('high'), _ref5 => {
41
47
  let {
42
48
  theme
43
- } = _ref4;
49
+ } = _ref5;
44
50
  return theme.allBreakpoints('Nav');
45
51
  });
46
52
  const DonateButtonWrapperTop = exports.DonateButtonWrapperTop = _styledComponents.default.div.withConfig({
@@ -50,20 +56,20 @@ const DonateButtonWrapperTop = exports.DonateButtonWrapperTop = _styledComponent
50
56
  const Header2025MetaIcons = exports.Header2025MetaIcons = _styledComponents.default.div.withConfig({
51
57
  displayName: "Header2025style__Header2025MetaIcons",
52
58
  componentId: "sc-7gs40r-4"
53
- })(["display:none;@media ", "{width:auto;align-items:center;> div{height:35px;width:auto;display:inline-block;> a{height:inherit;width:inherit;margin-right:6px;img{padding:5px 7px;height:inherit;width:inherit;}}}position:relative;display:flex;align-items:center;background-color:", ";margin-right:0px;right:0px;}@media ", "{> div > a{margin-right:20px;}}"], _ref5 => {
59
+ })(["display:none;@media ", "{width:auto;align-items:center;> div{height:35px;width:auto;display:inline-block;> a{height:inherit;width:inherit;margin-right:6px;img{padding:5px 7px;height:inherit;width:inherit;}}}position:relative;display:flex;align-items:center;background-color:", ";margin-right:0px;right:0px;}@media ", "{> div > a{margin-right:20px;}}"], _ref6 => {
54
60
  let {
55
61
  theme
56
- } = _ref5;
62
+ } = _ref6;
57
63
  return theme.allBreakpoints('Nav');
58
- }, _ref6 => {
64
+ }, _ref7 => {
59
65
  let {
60
66
  theme
61
- } = _ref6;
67
+ } = _ref7;
62
68
  return theme.color('white');
63
- }, _ref7 => {
69
+ }, _ref8 => {
64
70
  let {
65
71
  theme
66
- } = _ref7;
72
+ } = _ref8;
67
73
  return theme.allBreakpoints('NavWide');
68
74
  });
69
75
  const ButtonsAndIcons = exports.ButtonsAndIcons = _styledComponents.default.div.withConfig({
@@ -92,7 +92,6 @@ const HeaderNav2025 = _ref => {
92
92
  // If we've changed from desktop to not, remove any previously-attached MoreNav event
93
93
  // listeners, BEFORE we update the flag that'd remove the elements from the DOM:
94
94
  if (isCurrentlyNotDesktop && processedItems.moreNavGroups.length) {
95
- // HERE CHERE
96
95
  document.getElementById('more-nav-ul').removeEventListener('mouseleave', resetMoreNavMouse);
97
96
  }
98
97
 
@@ -92,7 +92,7 @@ const Nav = exports.Nav = _styledComponents.default.nav.withConfig({
92
92
  const SubNavMenu = exports.SubNavMenu = _styledComponents.default.ul.withConfig({
93
93
  displayName: "HeaderNav2025style__SubNavMenu",
94
94
  componentId: "sc-xflhtq-2"
95
- })(["visibility:", ";display:", ";padding:0;position:relative;list-style:none outside;left:0;top:0;flex-direction:column;justify-content:center;align-items:center;background-color:", ";overflow:hidden;border-top:1px solid ", ";@media ", "{display:flex;width:330px;height:auto;padding:0;position:absolute;top:86px;left:-5px;border-radius:0 0 25px 25px;transition:opacity ", "s ease;opacity:0;box-shadow:0px 20px 20px 5px rgba(0,0,0,0.25);}"], _ref13 => {
95
+ })(["visibility:", ";display:", ";padding:0;position:relative;list-style:none outside;left:0;top:0;flex-direction:column;justify-content:center;align-items:center;background-color:", ";overflow:hidden;border-top:1px solid ", ";@media ", "{display:flex;width:330px;height:auto;padding:0;position:absolute;top:86px;left:-5px;border-radius:0 0 25px 25px;transition:opacity ", "s ease;opacity:0;box-shadow:0px 13px 15px 0 rgba(0,0,0,0.15);}"], _ref13 => {
96
96
  let {
97
97
  isSubMenuOpen
98
98
  } = _ref13;
@@ -75,7 +75,7 @@ const MoreNav = _ref => {
75
75
  return (
76
76
  /*#__PURE__*/
77
77
  // 'More Nav' sub item:
78
- _react.default.createElement(_MoreNav.MoreSubNavItem, {
78
+ _react.default.createElement(_MoreNav.MoreNavSubItem, {
79
79
  key: thisSubUrl
80
80
  }, /*#__PURE__*/_react.default.createElement(_MoreNav.MoreSubNavLink, {
81
81
  href: thisSubUrl,
@@ -5,7 +5,7 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.MoreSubNavMenu = exports.MoreSubNavLink = exports.MoreSubNavItem = exports.MoreNestedSubNavMenu = exports.MoreNavNestedLink = exports.MoreNavLabel = exports.MoreNavItem = void 0;
8
+ exports.MoreSubNavMenu = exports.MoreSubNavLink = exports.MoreSubNavItem = exports.MoreNestedSubNavMenu = exports.MoreNavSubItem = exports.MoreNavNestedLink = exports.MoreNavLabel = exports.MoreNavItem = void 0;
9
9
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
10
10
  var _HeaderNav = require("./HeaderNav2025.style");
11
11
  var _Text = _interopRequireDefault(require("../../../Atoms/Text/Text"));
@@ -88,21 +88,30 @@ const MoreSubNavItem = exports.MoreSubNavItem = (0, _styledComponents.default)(_
88
88
  } = _ref11;
89
89
  return theme.color('red');
90
90
  }, _HeaderNav.ChevronWrapper);
91
+ const MoreNavSubItem = exports.MoreNavSubItem = (0, _styledComponents.default)(MoreSubNavItem).withConfig({
92
+ displayName: "MoreNavstyle__MoreNavSubItem",
93
+ componentId: "sc-68lngb-5"
94
+ })(["&:first-of-type{border-top:1px solid ", ";}"], _ref12 => {
95
+ let {
96
+ theme
97
+ } = _ref12;
98
+ return theme.color('grey_medium');
99
+ });
91
100
  const MoreNavNestedLink = exports.MoreNavNestedLink = (0, _styledComponents.default)(_HeaderNav.NavLink).withConfig({
92
101
  displayName: "MoreNavstyle__MoreNavNestedLink",
93
- componentId: "sc-68lngb-5"
94
- })(["padding:20px 25px 22px 42px;> div{height:auto;}", ";"], _ref12 => {
102
+ componentId: "sc-68lngb-6"
103
+ })(["padding:20px 25px 22px 42px;> div{height:auto;}", ";"], _ref13 => {
95
104
  let {
96
105
  isSubMenuOpen
97
- } = _ref12;
98
- return isSubMenuOpen && (0, _styledComponents.css)(["color:", ";> ", "{transform:rotate(-180deg);img{filter:invert(0.5) sepia(1) saturate(100) hue-rotate(20deg);}}"], _ref13 => {
106
+ } = _ref13;
107
+ return isSubMenuOpen && (0, _styledComponents.css)(["color:", ";> ", "{transform:rotate(-180deg);img{filter:invert(0.5) sepia(1) saturate(100) hue-rotate(20deg);}}"], _ref14 => {
99
108
  let {
100
109
  theme
101
- } = _ref13;
110
+ } = _ref14;
102
111
  return theme.color('red');
103
112
  }, _HeaderNav.ChevronWrapper);
104
113
  });
105
114
  const MoreSubNavLink = exports.MoreSubNavLink = (0, _styledComponents.default)(_HeaderNav.SubNavLink).withConfig({
106
115
  displayName: "MoreNavstyle__MoreSubNavLink",
107
- componentId: "sc-68lngb-6"
116
+ componentId: "sc-68lngb-7"
108
117
  })([""]);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@comicrelief/component-library",
3
3
  "author": "Comic Relief Engineering Team",
4
- "version": "8.13.1",
4
+ "version": "8.13.3",
5
5
  "main": "dist/index.js",
6
6
  "license": "ISC",
7
7
  "jest": {
@@ -9,9 +9,10 @@ import {
9
9
  } from './Header2025.style';
10
10
 
11
11
  const Header2025 = ({
12
- navItems = {}, metaIcons, campaign = 'Comic Relief', donateButton = null, characterLimit = 60, ...rest
12
+ navItems = {}, metaIcons, campaign = 'Comic Relief', donateButton = null,
13
+ characterLimit = 60, showBoxShadow = false, ...rest
13
14
  }) => (
14
- <Header2025Wrapper navItems {...rest}>
15
+ <Header2025Wrapper navItems showBoxShadow={showBoxShadow} {...rest}>
15
16
  <InnerWrapper>
16
17
  <Brand>
17
18
  <Logos
@@ -56,7 +57,8 @@ Header2025.propTypes = {
56
57
  // ... and is supplied separately to allow more render control:
57
58
  donateButton: PropTypes.node,
58
59
  campaign: PropTypes.string,
59
- characterLimit: PropTypes.number
60
+ characterLimit: PropTypes.number,
61
+ showBoxShadow: PropTypes.bool
60
62
  };
61
63
 
62
64
  export default Header2025;
@@ -478,6 +478,7 @@ const [success, setSuccess] = React.useState(false);
478
478
 
479
479
  <>
480
480
  <Header2025
481
+ showBoxShadow="true"
481
482
  characterLimit={50}
482
483
  navItems={data}
483
484
  rotate="true"
@@ -589,6 +590,7 @@ const [success, setSuccess] = React.useState(false);
589
590
 
590
591
  <>
591
592
  <Header2025
593
+ showBoxShadow="true"
592
594
  characterLimit={50}
593
595
  navItems={data}
594
596
  rotate="true"
@@ -1,4 +1,4 @@
1
- import styled from 'styled-components';
1
+ import styled, { css } from 'styled-components';
2
2
 
3
3
  import zIndex from '../../../theme/shared/zIndex';
4
4
  import containers from '../../../theme/shared/containers';
@@ -16,6 +16,10 @@ const Header2025Wrapper = styled.header.attrs(() => ({
16
16
  @media ${({ theme }) => theme.allBreakpoints('Nav')} {
17
17
  height: auto;
18
18
  }
19
+
20
+ ${({ showBoxShadow }) => showBoxShadow && css`
21
+ box-shadow: 0px 13px 15px 0 rgba(0, 0, 0, 0.15);
22
+ `};
19
23
  `;
20
24
 
21
25
  const InnerWrapper = styled.div`
@@ -83,7 +83,6 @@ const HeaderNav2025 = ({
83
83
  // If we've changed from desktop to not, remove any previously-attached MoreNav event
84
84
  // listeners, BEFORE we update the flag that'd remove the elements from the DOM:
85
85
  if (isCurrentlyNotDesktop && processedItems.moreNavGroups.length) {
86
- // HERE CHERE
87
86
  document.getElementById('more-nav-ul').removeEventListener('mouseleave', resetMoreNavMouse);
88
87
  }
89
88
 
@@ -125,7 +125,7 @@ const SubNavMenu = styled.ul`
125
125
  border-radius: 0 0 25px 25px;
126
126
  transition: opacity ${transitionDuration}s ease;
127
127
  opacity: 0;
128
- box-shadow: 0px 20px 20px 5px rgba(0, 0, 0, 0.25);
128
+ box-shadow: 0px 13px 15px 0 rgba(0, 0, 0, 0.15);
129
129
  }
130
130
  `;
131
131
 
@@ -13,7 +13,8 @@ import {
13
13
  MoreNestedSubNavMenu,
14
14
  MoreSubNavItem,
15
15
  MoreNavNestedLink,
16
- MoreSubNavLink
16
+ MoreSubNavLink,
17
+ MoreNavSubItem
17
18
  } from './MoreNav.style';
18
19
 
19
20
  const MoreNav = ({
@@ -96,7 +97,7 @@ const MoreNav = ({
96
97
  const thisSubUrl = navHelper(subChild);
97
98
  return (
98
99
  // 'More Nav' sub item:
99
- <MoreSubNavItem key={thisSubUrl}>
100
+ <MoreNavSubItem key={thisSubUrl}>
100
101
  <MoreSubNavLink
101
102
  href={thisSubUrl}
102
103
  inline
@@ -109,7 +110,7 @@ const MoreNav = ({
109
110
  {subChild.title}
110
111
  </Text>
111
112
  </MoreSubNavLink>
112
- </MoreSubNavItem>
113
+ </MoreNavSubItem>
113
114
  );
114
115
  })}
115
116
  </MoreNestedSubNavMenu>
@@ -154,6 +154,12 @@ const MoreSubNavItem = styled(SubNavItem)`
154
154
  }
155
155
  `;
156
156
 
157
+ const MoreNavSubItem = styled(MoreSubNavItem)`
158
+ &:first-of-type {
159
+ border-top: 1px solid ${({ theme }) => theme.color('grey_medium')};
160
+ }
161
+ `;
162
+
157
163
  const MoreNavNestedLink = styled(NavLink)`
158
164
  padding: 20px 25px 22px 42px;
159
165
 
@@ -186,5 +192,6 @@ export {
186
192
  MoreNestedSubNavMenu,
187
193
  MoreSubNavItem,
188
194
  MoreNavNestedLink,
189
- MoreSubNavLink
195
+ MoreSubNavLink,
196
+ MoreNavSubItem
190
197
  };