@bonlineza/luxity-lib 2.15.1 → 2.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/RareStepHeader.js CHANGED
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('styled-components')) :
3
- typeof define === 'function' && define.amd ? define(['react', 'styled-components'], factory) :
4
- (global = global || self, global.RareStepHeader = factory(global.React, global.styled));
5
- }(this, (function (React, styled) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('prop-types'), require('styled-components')) :
3
+ typeof define === 'function' && define.amd ? define(['react', 'prop-types', 'styled-components'], factory) :
4
+ (global = global || self, global.RareStepHeader = factory(global.React, global.PropTypes, global.styled));
5
+ }(this, (function (React, propTypes, styled) { 'use strict';
6
6
 
7
7
  var React__default = 'default' in React ? React['default'] : React;
8
8
  var styled__default = 'default' in styled ? styled['default'] : styled;
@@ -173,14 +173,14 @@
173
173
  return props.theme.rareStepPageSizes.container;
174
174
  });
175
175
  var HeaderContainer = styled__default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n {\n display: flex;\n justify-content: space-between;\n padding: ", " 5%;\n max-width: ", ";\n margin: 0 auto;\n width: 100%;\n }\n"])), function (props) {
176
- return props.theme.marginPaddings[3];
176
+ return props.theme.marginPaddings[1];
177
177
  }, function (props) {
178
178
  return props.theme.rareStepPageSizes.container;
179
179
  });
180
180
  var LogoFigure = styled__default.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n {\n display: flex;\n justify-content: center;\n align-items: center;\n }\n"])));
181
- var LogoImage = styled__default.img(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n {\n width: 200px;\n height: 70px;\n cursor: pointer;\n }\n"])));
181
+ var LogoImage = styled__default.img(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n {\n width: 160px;\n height: 60px;\n cursor: pointer;\n }\n"])));
182
182
  var CurrencyFlagIcon = styled__default.img(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n {\n width: 25px;\n height: 15px;\n margin-top: 9px;\n margin-right: 10px;\n }\n"])));
183
- var SellToUsLink = styled__default.a(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n {\n color: ", ";\n font-weight: ", ";\n font-size: ", ";\n padding-top: 10px;\n text-transform: uppercase;\n letter-spacing: 1px;\n cursor: pointer;\n\n &:hover,\n &:active {\n color: ", ";\n text-decoration: none;\n }\n }\n"])), function (props) {
183
+ var SellToUsLink = styled__default.a(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n {\n color: ", ";\n font-weight: ", ";\n font-size: ", ";\n padding-top: 10px;\n text-transform: uppercase;\n letter-spacing: 1px;\n cursor: pointer;\n text-decoration: none;\n font-style: italic;\n\n &:hover,\n &:active {\n color: ", ";\n text-decoration: none;\n }\n }\n"])), function (props) {
184
184
  return props.theme.rareStepColors.secondary;
185
185
  }, function (props) {
186
186
  return props.theme.rareStepFontWeights.bold;
@@ -189,8 +189,8 @@
189
189
  }, function (props) {
190
190
  return props.theme.rareStepColors.secondary;
191
191
  });
192
- var HeaderIconsContainer = styled__default.div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n {\n display: flex;\n align-items: center;\n }\n"])));
193
- var HeaderIcon = styled__default.img(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n {\n width: 30px;\n height: 30px;\n margin-left: ", ";\n cursor: pointer;\n }\n"])), function (props) {
192
+ var HeaderIconsContainer = styled__default.div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n {\n display: flex;\n align-items: center;\n\n .account-icon {\n &__wrapper {\n position: relative;\n }\n\n &__dropdown {\n position: absolute;\n width: 100%;\n top: 25px;\n left: 0;\n }\n }\n }\n"])));
193
+ var HeaderIcon = styled__default.img(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n {\n width: 25px;\n height: 22px;\n margin-left: ", ";\n cursor: pointer;\n }\n"])), function (props) {
194
194
  return props.theme.marginPaddings[3];
195
195
  });
196
196
  var NavigationContainer = styled__default.div(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n {\n display: flex;\n justify-content: space-between;\n background-color: ", ";\n padding-top: ", ";\n }\n"])), function (props) {
@@ -269,7 +269,7 @@
269
269
  var SearchContainer = styled__default.div(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral(["\n {\n display: flex;\n padding: ", " 0;\n align-items: center;\n }\n"])), function (props) {
270
270
  return props.theme.marginPaddings[1];
271
271
  });
272
- var SearchInput = styled__default.input(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral(["\n {\n width: 50%;\n font-size: ", ";\n padding-bottom: ", ";\n color: ", ";\n border: none;\n margin-left: ", ";\n\n &:active,\n &:focus,\n &:focus-visible {\n outline: none;\n border: none;\n }\n\n &::placeholder {\n color: ", ";\n }\n }\n"])), function (props) {
272
+ var SearchInput = styled__default.input(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral(["\n {\n width: 100%;\n font-size: ", ";\n padding-bottom: ", ";\n color: ", ";\n border: none;\n margin-left: ", ";\n\n &:active,\n &:focus,\n &:focus-visible {\n outline: none;\n border: none;\n }\n\n &::placeholder {\n color: ", ";\n }\n }\n"])), function (props) {
273
273
  return props.theme.rareStepFontSize.footerTitle;
274
274
  }, function (props) {
275
275
  return props.theme.marginPaddings[0];
@@ -281,7 +281,7 @@
281
281
  return props.theme.rareStepColors.ntrl40;
282
282
  });
283
283
  var SearchIcon = styled__default.img(_templateObject27 || (_templateObject27 = _taggedTemplateLiteral(["\n {\n width: 20px;\n height: 20px;\n cursor: pointer;\n margin-bottom: 7px;\n }\n"])));
284
- var CloseIcon = styled__default.img(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral(["\n {\n width: 20px;\n height: 20px;\n margin-left: auto;\n cursor: pointer;\n }\n"])));
284
+ var CloseIcon = styled__default.img(_templateObject28 || (_templateObject28 = _taggedTemplateLiteral(["\n {\n width: 20px;\n height: 20px;\n cursor: pointer;\n }\n"])));
285
285
  var CurrencyContainer = styled__default.div(_templateObject29 || (_templateObject29 = _taggedTemplateLiteral(["\n {\n display: flex;\n }\n"])));
286
286
  var DropdownSearchContainer = styled__default.div(_templateObject30 || (_templateObject30 = _taggedTemplateLiteral(["\n {\n background-color: ", ";\n border-top: 1px solid ", ";\n }\n"])), function (props) {
287
287
  return props.theme.rareStepColors.primary;
@@ -357,28 +357,17 @@
357
357
  }
358
358
  }, /*#__PURE__*/React__default.createElement(DropdownBrandLinkHR, null), /*#__PURE__*/React__default.createElement(DropdownBrandLink, null, brand.brandName));
359
359
  })), /*#__PURE__*/React__default.createElement(DropdownModels, null, currentModels === null || currentModels === void 0 ? void 0 : currentModels.map(function (model, index) {
360
- return /*#__PURE__*/React__default.createElement(DropdownModelsList, null, /*#__PURE__*/React__default.createElement(DropdownLink, {
360
+ return /*#__PURE__*/React__default.createElement(DropdownModelsList, {
361
361
  key: index
362
- }, model.modelName));
362
+ }, /*#__PURE__*/React__default.createElement(DropdownLink, null, model.modelName));
363
363
  })), /*#__PURE__*/React__default.createElement(DropdownFigure, null, (currentBrand === null || currentBrand === void 0 ? void 0 : currentBrand.brandImageUrl) && /*#__PURE__*/React__default.createElement(DropdownImage, {
364
364
  src: currentBrand === null || currentBrand === void 0 ? void 0 : currentBrand.brandImageUrl
365
365
  }))));
366
366
  };
367
367
 
368
- function Currency(_ref) {
369
- var currencyFlagIconUrl = _ref.currencyFlagIconUrl,
370
- className = _ref.className;
371
- return /*#__PURE__*/React__default.createElement(CurrencyContainer, {
372
- className: className
373
- }, /*#__PURE__*/React__default.createElement(CurrencyFlagIcon, {
374
- src: currencyFlagIconUrl
375
- }), /*#__PURE__*/React__default.createElement(NavigationLink, null, "South African (ZAR, R)"));
376
- }
377
-
378
368
  function Navigation(_ref) {
379
369
  var dropdownClosedIconUrl = _ref.dropdownClosedIconUrl,
380
370
  dropdownOpenIconUrl = _ref.dropdownOpenIconUrl,
381
- currencyFlagIconUrl = _ref.currencyFlagIconUrl,
382
371
  handleShowDropdown = _ref.handleShowDropdown,
383
372
  handleHideDropdown = _ref.handleHideDropdown,
384
373
  showDropdown = _ref.showDropdown,
@@ -401,8 +390,6 @@
401
390
  href: link.url,
402
391
  key: index
403
392
  }, link.name);
404
- }), /*#__PURE__*/React__default.createElement(Currency, {
405
- currencyFlagIconUrl: currencyFlagIconUrl
406
393
  })))));
407
394
  }
408
395
 
@@ -419,7 +406,9 @@
419
406
  navigationSearchIconUrl = _ref.navigationSearchIconUrl,
420
407
  wordpressSiteUrl = _ref.wordpressSiteUrl,
421
408
  desktopHeaderLinks = _ref.desktopHeaderLinks,
422
- handleOnAccountClick = _ref.handleOnAccountClick;
409
+ handleOnAccountClick = _ref.handleOnAccountClick,
410
+ handleOnCartClick = _ref.handleOnCartClick,
411
+ userIconDropdownContent = _ref.userIconDropdownContent;
423
412
 
424
413
  var _useState = React.useState(false),
425
414
  _useState2 = _slicedToArray(_useState, 2),
@@ -433,6 +422,13 @@
433
422
  showSearch = _useState4[0],
434
423
  setShowSearch = _useState4[1];
435
424
 
425
+ var _useState5 = React.useState(false),
426
+ _useState6 = _slicedToArray(_useState5, 2),
427
+ isUserIconDropdownContent = _useState6[0],
428
+ setIsUserIconDropdownContent = _useState6[1];
429
+
430
+ var userDropdownTimeoutIdRef = React.useRef(null);
431
+
436
432
  var toggleSearch = function toggleSearch() {
437
433
  setShowSearch(!showSearch);
438
434
  };
@@ -448,22 +444,47 @@
448
444
  }, 500);
449
445
  };
450
446
 
447
+ var handleShowUserDropdown = function handleShowUserDropdown() {
448
+ clearTimeout(userDropdownTimeoutIdRef.current);
449
+ setIsUserIconDropdownContent(true);
450
+ };
451
+
452
+ var handleHideUserDropdown = function handleHideUserDropdown() {
453
+ userDropdownTimeoutIdRef.current = setTimeout(function () {
454
+ setIsUserIconDropdownContent(false);
455
+ }, 500);
456
+ };
457
+
451
458
  return /*#__PURE__*/React__default.createElement(HeaderWrapper, null, /*#__PURE__*/React__default.createElement(HeaderContainer, null, /*#__PURE__*/React__default.createElement(LogoFigure, null, /*#__PURE__*/React__default.createElement(LogoImage, {
452
459
  src: headerLogoImgUrl,
453
460
  onClick: function onClick() {
454
461
  window.location.href = wordpressSiteUrl;
455
462
  }
456
- })), /*#__PURE__*/React__default.createElement(HeaderIconsContainer, null, /*#__PURE__*/React__default.createElement(SellToUsHR, null), /*#__PURE__*/React__default.createElement(SellToUsLink, null, "Sell to us"), /*#__PURE__*/React__default.createElement(HeaderIcon, {
463
+ })), /*#__PURE__*/React__default.createElement(HeaderIconsContainer, null, /*#__PURE__*/React__default.createElement(SellToUsHR, null), /*#__PURE__*/React__default.createElement(SellToUsLink, {
464
+ href: desktopHeaderLinks.button.url
465
+ }, desktopHeaderLinks.button.name), /*#__PURE__*/React__default.createElement("div", {
466
+ className: "account-icon__wrapper"
467
+ }, /*#__PURE__*/React__default.createElement(HeaderIcon, {
457
468
  src: searchIconUrl,
458
469
  onClick: toggleSearch
459
- }), /*#__PURE__*/React__default.createElement(HeaderIcon, {
470
+ }), interestIconUrl && /*#__PURE__*/React__default.createElement(HeaderIcon, {
460
471
  src: interestIconUrl
461
472
  }), /*#__PURE__*/React__default.createElement(HeaderIcon, {
473
+ onMouseOver: handleShowUserDropdown,
474
+ onMouseOut: handleHideUserDropdown,
475
+ className: "account-icon",
462
476
  src: userIconUrl,
463
477
  onClick: handleOnAccountClick
464
478
  }), /*#__PURE__*/React__default.createElement(HeaderIcon, {
465
- src: cartIconUrl
466
- }))), /*#__PURE__*/React__default.createElement(Navigation, {
479
+ src: cartIconUrl,
480
+ onClick: handleOnCartClick
481
+ }), isUserIconDropdownContent && userIconDropdownContent && /*#__PURE__*/React__default.createElement("div", {
482
+ onFocus: handleShowUserDropdown,
483
+ onBlur: handleHideUserDropdown,
484
+ onMouseOver: handleShowUserDropdown,
485
+ onMouseOut: handleHideUserDropdown,
486
+ className: "account-icon__dropdown"
487
+ }, userIconDropdownContent)))), /*#__PURE__*/React__default.createElement(Navigation, {
467
488
  dropdownClosedIconUrl: dropdownClosedIconUrl,
468
489
  dropdownOpenIconUrl: dropdownOpenIconUrl,
469
490
  currencyFlagIconUrl: currencyFlagIconUrl,
@@ -486,14 +507,14 @@
486
507
  var RareStepDesktopHeader$1 = themed(RareStepDesktopHeader);
487
508
 
488
509
  var _templateObject$1, _templateObject2$1, _templateObject3$1, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1, _templateObject8$1, _templateObject9$1, _templateObject10$1, _templateObject11$1, _templateObject12$1, _templateObject13$1, _templateObject14$1, _templateObject15$1, _templateObject16$1, _templateObject17$1, _templateObject18$1, _templateObject19$1, _templateObject20$1;
489
- var HeaderWrapper$1 = styled__default.div(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n {\n display: flex;\n background-color: ", ";\n position: relative;\n width: 100%;\n justify-content: space-between;\n align-items: center;\n padding: ", " 0;\n }\n"])), function (props) {
510
+ var HeaderWrapper$1 = styled__default.div(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n {\n display: flex;\n background-color: ", ";\n position: relative;\n width: 100%;\n justify-content: space-between;\n align-items: center;\n padding: ", " 5%;\n }\n"])), function (props) {
490
511
  return props.theme.rareStepColors.ntrlMin;
491
512
  }, function (props) {
492
513
  return props.theme.marginPaddings[3];
493
514
  });
494
515
  var Icon = styled__default.img(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral(["\n {\n width: 30px;\n height: 30px;\n cursor: pointer;\n }\n"])));
495
- var Logo = styled__default.img(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral(["\n {\n width: 200px;\n height: 70px;\n margin-left: 20px;\n cursor: pointer;\n }\n"])));
496
- var IconWrapper = styled__default.div(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral(["\n {\n display: flex;\n\n & > img {\n margin-left: 10px;\n }\n }\n"])));
516
+ var Logo = styled__default.img(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral(["\n {\n width: 140px;\n height: auto;\n margin-left: 30px;\n cursor: pointer;\n }\n"])));
517
+ var IconWrapper = styled__default.div(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral(["\n {\n display: flex;\n width: auto;\n height: 25px;\n\n .search-icon,\n .cart-icon {\n width: 100%;\n height: 100%;\n }\n\n .cart-icon {\n margin-left: 10px;\n }\n }\n"])));
497
518
  var SideNavWrapper = styled__default.div(_templateObject5$1 || (_templateObject5$1 = _taggedTemplateLiteral(["\n {\n position: relative;\n overflow: hidden;\n\n .side-nav-link--bottom {\n font-size: ", ";\n }\n }\n"])), function (props) {
498
519
  return props.theme.rareStepFontSize.h6;
499
520
  });
@@ -514,7 +535,7 @@
514
535
  return props.theme.rareStepColors.ntrlMin;
515
536
  });
516
537
  var CloseIconWrapper = styled__default.div(_templateObject10$1 || (_templateObject10$1 = _taggedTemplateLiteral(["\n {\n width: 100%;\n display: flex;\n justify-content: flex-end;\n margin: 30px 0;\n }\n"])));
517
- var SellToUsLink$1 = styled__default.a(_templateObject11$1 || (_templateObject11$1 = _taggedTemplateLiteral(["\n {\n color: ", ";\n border: 1px solid ", ";\n background-color: transparent;\n text-transform: uppercase;\n font-weight: ", ";\n display: block;\n width: calc(100% - ", ");\n padding: ", ";\n margin: ", ";\n text-align: center;\n text-decoration: none;\n border-radius: 5px;\n letter-spacing: 1px;\n font-style: italic;\n }\n"])), function (props) {
538
+ var SellToUsLink$1 = styled__default.a(_templateObject11$1 || (_templateObject11$1 = _taggedTemplateLiteral(["\n {\n color: ", ";\n border: 1px solid ", ";\n background-color: transparent;\n text-transform: uppercase;\n font-weight: ", ";\n display: block;\n width: calc(100% - ", ");\n padding: ", ";\n margin: ", ";\n text-align: center;\n text-decoration: none;\n border-radius: 5px;\n letter-spacing: 1px;\n font-style: italic;\n font-size: ", ";\n }\n"])), function (props) {
518
539
  return props.theme.rareStepColors.secondary;
519
540
  }, function (props) {
520
541
  return props.theme.rareStepColors.secondary;
@@ -526,22 +547,24 @@
526
547
  return props.theme.marginPaddings[1];
527
548
  }, function (props) {
528
549
  return props.theme.marginPaddings[1];
550
+ }, function (props) {
551
+ return props.theme.rareStepFontSize.h5;
529
552
  });
530
553
  var SubMenuLinkContainer = styled__default.div(_templateObject12$1 || (_templateObject12$1 = _taggedTemplateLiteral(["\n {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n"])));
531
554
  var SubMenuRightIcon = styled__default.img(_templateObject13$1 || (_templateObject13$1 = _taggedTemplateLiteral(["\n {\n width: 20px;\n height: 20px;\n }\n"])));
532
555
  var Hr = styled__default.hr(_templateObject14$1 || (_templateObject14$1 = _taggedTemplateLiteral(["\n {\n width: 100%;\n color: ", ";\n margin: 0;\n }\n"])), function (props) {
533
556
  return props.theme.rareStepColors.ntrlMax;
534
557
  });
535
- var MobileSearchContainer = styled__default.div(_templateObject15$1 || (_templateObject15$1 = _taggedTemplateLiteral(["\n {\n .header {\n &__icon {\n width: 30px;\n height: 30px;\n }\n\n &__search-container {\n background-color: ", ";\n border-top: 1px solid ", ";\n }\n\n &__search-input {\n width: 100%;\n color: ", ";\n background-color: ", ";\n\n &::placeholder {\n color: ", ";\n }\n }\n }\n }\n"])), function (props) {
536
- return props.theme.rareStepColors.ntrlMin;
558
+ var MobileSearchContainer = styled__default.div(_templateObject15$1 || (_templateObject15$1 = _taggedTemplateLiteral(["\n {\n background-color: ", ";\n\n .header {\n &__icon {\n width: 20px;\n height: 20px;\n }\n\n &__search-container {\n border-top: 1px solid ", ";\n padding-left: 5%;\n padding-right: 5%;\n }\n\n &__search-input {\n width: 100%;\n color: ", ";\n background-color: ", ";\n\n &::placeholder {\n color: ", ";\n }\n }\n }\n }\n"])), function (props) {
559
+ return props.theme.rareStepColors.primary;
537
560
  }, function (props) {
538
561
  return props.theme.rareStepColors.ntrl50;
539
- }, function (props) {
540
- return props.theme.rareStepColors.ntrlMax;
541
562
  }, function (props) {
542
563
  return props.theme.rareStepColors.ntrlMin;
543
564
  }, function (props) {
544
- return props.theme.rareStepColors.ntrlMax;
565
+ return props.theme.rareStepColors.primary;
566
+ }, function (props) {
567
+ return props.theme.rareStepColors.ntrlMin;
545
568
  });
546
569
  var BackButton = styled__default.button(_templateObject16$1 || (_templateObject16$1 = _taggedTemplateLiteral(["\n {\n background-color: transparent;\n border: none;\n color: ", ";\n margin: 30px 0;\n position: relative;\n\n &:hover {\n cursor: pointer;\n background-color: transparent;\n color: ", ";\n text-decoration: underline;\n }\n }\n"])), function (props) {
547
570
  return props.theme.rareStepColors.ntrlMin;
@@ -607,7 +630,13 @@
607
630
  var rightArrowIconUrl = _ref.rightArrowIconUrl,
608
631
  links = _ref.links,
609
632
  setShowSideNavSubMenu = _ref.setShowSideNavSubMenu,
610
- currencyFlagIconUrl = _ref.currencyFlagIconUrl;
633
+ closeSubMenu = _ref.closeSubMenu;
634
+
635
+ var handleOnLinkClick = function handleOnLinkClick(link) {
636
+ link.onClick();
637
+ closeSubMenu();
638
+ };
639
+
611
640
  return /*#__PURE__*/React__default.createElement(React.Fragment, null, links.top.map(function (link, index) {
612
641
  return link !== null && link !== void 0 && link.isSubMenu ? /*#__PURE__*/React__default.createElement(SubMenuLinkContainer, {
613
642
  key: index
@@ -629,11 +658,10 @@
629
658
  key: index,
630
659
  href: link.url,
631
660
  className: "side-nav-link--bottom",
632
- onClick: link !== null && link !== void 0 && link.isButton ? link.onClick : null
661
+ onClick: link !== null && link !== void 0 && link.isButton ? function () {
662
+ return handleOnLinkClick(link);
663
+ } : null
633
664
  }, link.name);
634
- }), /*#__PURE__*/React__default.createElement(Currency, {
635
- className: "side-nav__currency",
636
- currencyFlagIconUrl: currencyFlagIconUrl
637
665
  }));
638
666
  }
639
667
 
@@ -657,9 +685,9 @@
657
685
  rightArrowIconUrl = _ref.rightArrowIconUrl,
658
686
  navigationSearchIconUrl = _ref.navigationSearchIconUrl,
659
687
  wordpressSiteUrl = _ref.wordpressSiteUrl,
660
- mobileCloseIconUrl = _ref.mobileCloseIconUrl,
661
688
  backIconUrl = _ref.backIconUrl,
662
- currencyFlagIconUrl = _ref.currencyFlagIconUrl;
689
+ currencyFlagIconUrl = _ref.currencyFlagIconUrl,
690
+ handleOnCartClick = _ref.handleOnCartClick;
663
691
 
664
692
  var _useState = React.useState(false),
665
693
  _useState2 = _slicedToArray(_useState, 2),
@@ -680,6 +708,11 @@
680
708
  setShowSearch(!showSearch);
681
709
  };
682
710
 
711
+ var closeSubMenu = function closeSubMenu() {
712
+ setShowSideNav(false);
713
+ enableBodyScroll();
714
+ };
715
+
683
716
  return /*#__PURE__*/React__default.createElement(React.Fragment, null, /*#__PURE__*/React__default.createElement(HeaderWrapper$1, null, /*#__PURE__*/React__default.createElement(Icon, {
684
717
  onClick: function onClick() {
685
718
  disableBodyScroll();
@@ -692,12 +725,15 @@
692
725
  window.location.href = wordpressSiteUrl;
693
726
  }
694
727
  }), /*#__PURE__*/React__default.createElement(IconWrapper, null, /*#__PURE__*/React__default.createElement(Icon, {
728
+ className: "search-icon",
695
729
  src: searchIconUrl,
696
730
  onClick: toggleSearch
697
731
  }), /*#__PURE__*/React__default.createElement(Icon, {
698
- src: cartIconUrl
732
+ className: "cart-icon",
733
+ src: cartIconUrl,
734
+ onClick: handleOnCartClick
699
735
  }))), showSearch && /*#__PURE__*/React__default.createElement(MobileSearchContainer, null, /*#__PURE__*/React__default.createElement(Search, {
700
- closeIconUrl: mobileCloseIconUrl,
736
+ closeIconUrl: closeIconUrl,
701
737
  navigationSearchIconUrl: navigationSearchIconUrl,
702
738
  wordpressSiteUrl: wordpressSiteUrl,
703
739
  toggleSearch: toggleSearch
@@ -712,7 +748,8 @@
712
748
  rightArrowIconUrl: rightArrowIconUrl,
713
749
  links: mobileHeaderLinks,
714
750
  setShowSideNavSubMenu: setShowSideNavSubMenu,
715
- currencyFlagIconUrl: currencyFlagIconUrl
751
+ currencyFlagIconUrl: currencyFlagIconUrl,
752
+ closeSubMenu: closeSubMenu
716
753
  }))), /*#__PURE__*/React__default.createElement(MenuSideNavWrapper, null, /*#__PURE__*/React__default.createElement(MenuSideNav, {
717
754
  sideNavClassName: "side-nav side-nav--".concat(showSideNavSubMenu ? 'open' : 'close'),
718
755
  overlayClassName: "overlay overlay--".concat(showSideNavSubMenu ? 'open' : 'close'),
@@ -725,6 +762,8 @@
725
762
  }))));
726
763
  }
727
764
 
765
+ /** RareStep header component */
766
+
728
767
  var RareStepHeader = function RareStepHeader(_ref) {
729
768
  var headerLogoImgUrl = _ref.headerLogoImgUrl,
730
769
  searchIconUrl = _ref.searchIconUrl,
@@ -745,7 +784,9 @@
745
784
  mobileHeaderLinks = _ref.mobileHeaderLinks,
746
785
  mobileCloseIconUrl = _ref.mobileCloseIconUrl,
747
786
  handleOnAccountClick = _ref.handleOnAccountClick,
748
- backIconUrl = _ref.backIconUrl;
787
+ backIconUrl = _ref.backIconUrl,
788
+ handleOnCartClick = _ref.handleOnCartClick,
789
+ userIconDropdownContent = _ref.userIconDropdownContent;
749
790
  return /*#__PURE__*/React__default.createElement(React.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
750
791
  className: desktopHeaderWrapperClass
751
792
  }, /*#__PURE__*/React__default.createElement(RareStepDesktopHeader$1, {
@@ -761,7 +802,9 @@
761
802
  navigationSearchIconUrl: navigationSearchIconUrl,
762
803
  wordpressSiteUrl: wordpressSiteUrl,
763
804
  desktopHeaderLinks: desktopHeaderLinks,
764
- handleOnAccountClick: handleOnAccountClick
805
+ handleOnAccountClick: handleOnAccountClick,
806
+ handleOnCartClick: handleOnCartClick,
807
+ userIconDropdownContent: userIconDropdownContent
765
808
  })), /*#__PURE__*/React__default.createElement("div", {
766
809
  className: mobileHeaderWrapperClass
767
810
  }, /*#__PURE__*/React__default.createElement(RareStepMobileHeader, {
@@ -772,14 +815,18 @@
772
815
  closeIconUrl: closeIconUrl,
773
816
  rightArrowIconUrl: rightArrowIconUrl,
774
817
  mobileHeaderLinks: mobileHeaderLinks,
775
- navigationSearchIconUrl: searchIconUrl,
818
+ navigationSearchIconUrl: navigationSearchIconUrl,
776
819
  mobileCloseIconUrl: mobileCloseIconUrl,
777
820
  wordpressSiteUrl: wordpressSiteUrl,
778
821
  backIconUrl: backIconUrl,
779
- currencyFlagIconUrl: currencyFlagIconUrl
822
+ currencyFlagIconUrl: currencyFlagIconUrl,
823
+ handleOnCartClick: handleOnCartClick
780
824
  })));
781
825
  };
782
826
 
827
+ RareStepHeader.defaultProps = {
828
+ userIconDropdownContent: null
829
+ };
783
830
  var index = themed(RareStepHeader);
784
831
 
785
832
  return index;