@bonlineza/luxity-lib 2.39.1 → 2.39.2

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.
@@ -333,7 +333,9 @@
333
333
  noResultsImage = _ref.noResultsImage,
334
334
  showNoResults = _ref.showNoResults,
335
335
  _ref$isLoading = _ref.isLoading,
336
- isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading;
336
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
337
+ _ref$showCreateIntere = _ref.showCreateInterest,
338
+ showCreateInterest = _ref$showCreateIntere === void 0 ? true : _ref$showCreateIntere;
337
339
 
338
340
  var _useState = React.useState(false),
339
341
  _useState2 = _slicedToArray(_useState, 2),
@@ -560,9 +562,9 @@
560
562
  className: "search-results__no-results-text"
561
563
  }, /*#__PURE__*/React__default.createElement("p", {
562
564
  className: "search-results__no-results-title"
563
- }, "There are currently no products in stock that match your selection"), /*#__PURE__*/React__default.createElement("p", {
565
+ }, "There are currently no products in stock that match your selection"), showCreateInterest && /*#__PURE__*/React__default.createElement("p", {
564
566
  className: "search-results__no-results-description"
565
- }, "Create an interest now and receive instant notifications as your interests list."))), /*#__PURE__*/React__default.createElement("button", {
567
+ }, "Create an interest now and receive instant notifications as your interests list."))), showCreateInterest && /*#__PURE__*/React__default.createElement("button", {
566
568
  type: "button",
567
569
  className: "search-results__create-interest-button",
568
570
  onClick: onCreateInterests
@@ -1036,6 +1038,8 @@
1036
1038
  };
1037
1039
 
1038
1040
  var useSearchClickOutside = function useSearchClickOutside(ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults) {
1041
+ var setSearchValue = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
1042
+ var setShowNoResults = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
1039
1043
  React.useEffect(function () {
1040
1044
  var handleClickOutside = function handleClickOutside(event) {
1041
1045
  if (ref.current && !ref.current.contains(event.target)) {
@@ -1044,7 +1048,15 @@
1044
1048
  setSearchResults({
1045
1049
  brands: [],
1046
1050
  products: []
1047
- });
1051
+ }); // Reset search value and no results state when closing
1052
+
1053
+ if (setSearchValue) {
1054
+ setSearchValue('');
1055
+ }
1056
+
1057
+ if (setShowNoResults) {
1058
+ setShowNoResults(false);
1059
+ }
1048
1060
  }
1049
1061
  };
1050
1062
 
@@ -1052,7 +1064,7 @@
1052
1064
  return function () {
1053
1065
  document.removeEventListener('mousedown', handleClickOutside);
1054
1066
  };
1055
- }, [ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults]);
1067
+ }, [ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults, setSearchValue, setShowNoResults]);
1056
1068
  };
1057
1069
  var useSearchInputChange = function useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults) {
1058
1070
  return React.useCallback(function (event) {
@@ -1076,15 +1088,20 @@
1076
1088
  };
1077
1089
  var useSearchInputFocus = function useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults) {
1078
1090
  var handleSearchClick = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : undefined;
1091
+ var setShowNoResults = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
1079
1092
  return React.useCallback(function () {
1080
- setIsSearchFocused(true);
1093
+ setIsSearchFocused(true); // Reset no results state when reopening search
1094
+
1095
+ if (setShowNoResults) {
1096
+ setShowNoResults(false);
1097
+ }
1081
1098
 
1082
1099
  if (typeof handleSearchClick === 'function') {
1083
1100
  handleSearchClick();
1084
1101
  } else if (searchValue.trim().length >= 3) {
1085
1102
  setSearchResults(cachedResults);
1086
1103
  }
1087
- }, [searchValue, setIsSearchFocused, cachedResults, setSearchResults, handleSearchClick]);
1104
+ }, [searchValue, setIsSearchFocused, cachedResults, setSearchResults, handleSearchClick, setShowNoResults]);
1088
1105
  };
1089
1106
  var useSearchInputKeyDown = function useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused) {
1090
1107
  var setSearchValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
@@ -1154,7 +1171,9 @@
1154
1171
  app = _ref.app,
1155
1172
  categoryConfig = _ref.categoryConfig,
1156
1173
  onCreateInterests = _ref.onCreateInterests,
1157
- noResultsImage = _ref.noResultsImage;
1174
+ noResultsImage = _ref.noResultsImage,
1175
+ _ref$showCreateIntere = _ref.showCreateInterest,
1176
+ showCreateInterest = _ref$showCreateIntere === void 0 ? true : _ref$showCreateIntere;
1158
1177
 
1159
1178
  var _useState = React.useState(''),
1160
1179
  _useState2 = _slicedToArray(_useState, 2),
@@ -1240,7 +1259,7 @@
1240
1259
  });
1241
1260
  var immediateSearch = createImmediateSearch(setSearchValue, setSearchResults, onSearchSubmit);
1242
1261
  var handleChange = useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults);
1243
- useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
1262
+ useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults, setSearchValue, setShowNoResults);
1244
1263
 
1245
1264
  var handleSearchClick = function handleSearchClick() {
1246
1265
  if (typeof onSearchBarClick === 'function') {
@@ -1251,7 +1270,7 @@
1251
1270
  handleSearchFocus();
1252
1271
  };
1253
1272
 
1254
- var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults);
1273
+ var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults, undefined, setShowNoResults);
1255
1274
  var handleKeyDown = useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused);
1256
1275
 
1257
1276
  function addCategoryToElements(elements, categoryName) {
@@ -1381,7 +1400,8 @@
1381
1400
  onCreateInterests: onCreateInterests,
1382
1401
  noResultsImage: noResultsImage,
1383
1402
  showNoResults: showNoResults,
1384
- isLoading: searchLoading
1403
+ isLoading: searchLoading,
1404
+ showCreateInterest: showCreateInterest
1385
1405
  }), /*#__PURE__*/React__default.createElement("nav", {
1386
1406
  className: "navbar__nav-links navbar__nav-links--wrap"
1387
1407
  }, renderDropdownLinks(), !!stores.length && /*#__PURE__*/React__default.createElement("li", {
package/LuxityFooter.js CHANGED
@@ -1823,7 +1823,6 @@
1823
1823
  _formControl.current.formState = getProxyFormState(formState, control);
1824
1824
  return _formControl.current;
1825
1825
  }
1826
- //# sourceMappingURL=index.esm.mjs.map
1827
1826
 
1828
1827
  var theme = {
1829
1828
  breakpoints: ['40em', '52em', '64em'],
@@ -2224,7 +2223,7 @@
2224
2223
  className: "footer__title-wrapper"
2225
2224
  }, /*#__PURE__*/React__default.createElement("div", {
2226
2225
  className: "footer__newsletter-title"
2227
- }, "Sign up to our news letter"), /*#__PURE__*/React__default.createElement("p", {
2226
+ }, "Sign up for our newsletter"), /*#__PURE__*/React__default.createElement("p", {
2228
2227
  className: "footer__newsletter-text"
2229
2228
  }, "By signing up you agree to our terms & conditions and privacy policy. You can unsubscribe anytime.")), /*#__PURE__*/React__default.createElement("div", {
2230
2229
  className: "footer__newsletter-form"
@@ -953,7 +953,9 @@
953
953
  noResultsImage = _ref.noResultsImage,
954
954
  showNoResults = _ref.showNoResults,
955
955
  _ref$isLoading = _ref.isLoading,
956
- isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading;
956
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
957
+ _ref$showCreateIntere = _ref.showCreateInterest,
958
+ showCreateInterest = _ref$showCreateIntere === void 0 ? true : _ref$showCreateIntere;
957
959
 
958
960
  var _useState = React.useState(false),
959
961
  _useState2 = _slicedToArray(_useState, 2),
@@ -1180,9 +1182,9 @@
1180
1182
  className: "search-results__no-results-text"
1181
1183
  }, /*#__PURE__*/React__default.createElement("p", {
1182
1184
  className: "search-results__no-results-title"
1183
- }, "There are currently no products in stock that match your selection"), /*#__PURE__*/React__default.createElement("p", {
1185
+ }, "There are currently no products in stock that match your selection"), showCreateInterest && /*#__PURE__*/React__default.createElement("p", {
1184
1186
  className: "search-results__no-results-description"
1185
- }, "Create an interest now and receive instant notifications as your interests list."))), /*#__PURE__*/React__default.createElement("button", {
1187
+ }, "Create an interest now and receive instant notifications as your interests list."))), showCreateInterest && /*#__PURE__*/React__default.createElement("button", {
1186
1188
  type: "button",
1187
1189
  className: "search-results__create-interest-button",
1188
1190
  onClick: onCreateInterests
@@ -1453,6 +1455,8 @@
1453
1455
  };
1454
1456
 
1455
1457
  var useSearchClickOutside = function useSearchClickOutside(ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults) {
1458
+ var setSearchValue = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
1459
+ var setShowNoResults = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
1456
1460
  React.useEffect(function () {
1457
1461
  var handleClickOutside = function handleClickOutside(event) {
1458
1462
  if (ref.current && !ref.current.contains(event.target)) {
@@ -1461,7 +1465,15 @@
1461
1465
  setSearchResults({
1462
1466
  brands: [],
1463
1467
  products: []
1464
- });
1468
+ }); // Reset search value and no results state when closing
1469
+
1470
+ if (setSearchValue) {
1471
+ setSearchValue('');
1472
+ }
1473
+
1474
+ if (setShowNoResults) {
1475
+ setShowNoResults(false);
1476
+ }
1465
1477
  }
1466
1478
  };
1467
1479
 
@@ -1469,7 +1481,7 @@
1469
1481
  return function () {
1470
1482
  document.removeEventListener('mousedown', handleClickOutside);
1471
1483
  };
1472
- }, [ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults]);
1484
+ }, [ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults, setSearchValue, setShowNoResults]);
1473
1485
  };
1474
1486
  var useSearchInputChange = function useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults) {
1475
1487
  return React.useCallback(function (event) {
@@ -1493,15 +1505,20 @@
1493
1505
  };
1494
1506
  var useSearchInputFocus = function useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults) {
1495
1507
  var handleSearchClick = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : undefined;
1508
+ var setShowNoResults = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
1496
1509
  return React.useCallback(function () {
1497
- setIsSearchFocused(true);
1510
+ setIsSearchFocused(true); // Reset no results state when reopening search
1511
+
1512
+ if (setShowNoResults) {
1513
+ setShowNoResults(false);
1514
+ }
1498
1515
 
1499
1516
  if (typeof handleSearchClick === 'function') {
1500
1517
  handleSearchClick();
1501
1518
  } else if (searchValue.trim().length >= 3) {
1502
1519
  setSearchResults(cachedResults);
1503
1520
  }
1504
- }, [searchValue, setIsSearchFocused, cachedResults, setSearchResults, handleSearchClick]);
1521
+ }, [searchValue, setIsSearchFocused, cachedResults, setSearchResults, handleSearchClick, setShowNoResults]);
1505
1522
  };
1506
1523
  var useSearchInputKeyDown = function useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused) {
1507
1524
  var setSearchValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
@@ -1577,7 +1594,9 @@
1577
1594
  categoryConfig = _ref.categoryConfig,
1578
1595
  name = _ref.name,
1579
1596
  onCreateInterests = _ref.onCreateInterests,
1580
- noResultsImage = _ref.noResultsImage;
1597
+ noResultsImage = _ref.noResultsImage,
1598
+ _ref$showCreateIntere = _ref.showCreateInterest,
1599
+ showCreateInterest = _ref$showCreateIntere === void 0 ? true : _ref$showCreateIntere;
1581
1600
 
1582
1601
  var _useState = React.useState(false),
1583
1602
  _useState2 = _slicedToArray(_useState, 2),
@@ -1666,8 +1685,8 @@
1666
1685
 
1667
1686
  fetchInitialSearchData(initialSearchData, setInitialSearchView);
1668
1687
  }, [initialSearchData, fetchInitialSearchData]);
1669
- useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
1670
- var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults);
1688
+ useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults, setSearchValue, setShowNoResults);
1689
+ var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults, undefined, setShowNoResults);
1671
1690
  React.useEffect(function () {
1672
1691
  if (showSearchBar && searchInputRef.current) {
1673
1692
  searchInputRef.current.focus();
@@ -1890,7 +1909,8 @@
1890
1909
  onCreateInterests: onCreateInterests,
1891
1910
  noResultsImage: noResultsImage,
1892
1911
  showNoResults: showNoResults,
1893
- isLoading: searchLoading
1912
+ isLoading: searchLoading,
1913
+ showCreateInterest: showCreateInterest
1894
1914
  }))), shop && /*#__PURE__*/React__default.createElement(LuxitySideNav, {
1895
1915
  accordionIcon: accordionIcon,
1896
1916
  logoSrc: logoSrc,
package/build/bundle.css CHANGED
@@ -1 +1 @@
1
- .interests__add-button{display:flex;flex-direction:row;gap:10px;width:100%}@media only screen and (max-width:879px){.interests__add-button{flex-direction:column}}.interests__section-wrapper{display:flex;flex-direction:column;width:100%}.interests__select-option{display:flex;flex-direction:column;margin-bottom:15px}.interests__title{font-family:El Messiri;font-size:16px;margin-bottom:10px}@charset "UTF-8";.currency-select-container{align-items:center;display:flex;margin-right:18px;position:relative}.currency-select-container .currency-flag{margin-right:5px}.currency-select-container .currency-flag img{height:15px;-o-object-fit:cover;object-fit:cover;width:20px}.currency-select-container .currency-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:transparent;border:none;color:#000;cursor:pointer;font-family:inherit;font-size:14px;margin:0;outline:none;padding:5px 15px 5px 5px}.currency-select-container .currency-select::-ms-expand{display:none}.currency-select-container .currency-select:focus{box-shadow:none;outline:none}.currency-select-container .currency-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.currency-select-container:after{color:#000;content:"▼";font-size:10px;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}@media only screen and (max-width:879px){.currency-select-container .currency-select{appearance:menulist;-webkit-appearance:menulist;-moz-appearance:menulist;padding-right:0}.currency-select-container:after{display:none}}.currency-select-container.disabled{cursor:not-allowed;opacity:.7}.currency-select-container.disabled .currency-select{pointer-events:none}.navbar{box-shadow:2px 2px 10px #dfdede;display:flex;padding-bottom:10px;padding-top:20px;position:relative}@media only screen and (max-width:879px){.navbar{padding-top:12px}}.navbar__link-item--desktop{align-items:center;display:flex;height:35px;margin:auto 0;padding-top:5px}.navbar__mobile-wrapper{align-items:center;display:flex;flex-direction:column;padding-left:16px;padding-right:16px}.navbar__container{display:flex;margin:0 auto;max-width:1280px;padding-left:12px;padding-right:12px;width:100%}.navbar__body{flex-basis:60%}.navbar__wrapper{align-items:center;display:flex;gap:10px;justify-content:flex-start;width:100%}@media only screen and (max-width:879px){.navbar__wrapper .navbar__menu-icon-wrapper{margin-right:10px}.navbar__wrapper .navbar__logo{margin-left:0;margin-right:auto}.navbar__wrapper .navbar__icons-wrapper{align-items:center;display:flex;gap:20px;margin-left:auto}.navbar__wrapper .navbar__icons{align-items:center;display:flex;gap:20px;margin:0}.navbar__wrapper .navbar__icon{margin:0}}.navbar__product-search-wrapper{align-items:center;display:flex;justify-content:center;padding:0 20%;width:100%}@media only screen and (max-width:879px){.navbar__product-search-wrapper{padding:0}}.navbar__search-container{width:100%}.navbar__input-close-icon{height:auto;margin-bottom:10px;margin-left:10px;width:20px}@media only screen and (max-width:879px){.navbar__input-close-icon{margin-bottom:0;margin-left:0;width:15px}}.navbar__menu-icon{width:20px}.navbar__product-search{align-items:center;display:flex;max-width:545px;width:100%}.navbar__logo-wrapper{margin-right:18px;width:200px}.navbar__logo{width:200px}@media only screen and (max-width:879px){.navbar__logo{margin-left:10px;margin-top:5px;width:150px}}.navbar__form-input{align-items:center;background:transparent;border:none;display:flex;font-size:13px;outline:none;padding:8px;width:100%}.navbar__product-search{border:1px solid #dfdede;margin-bottom:10px}@media only screen and (max-width:879px){.navbar__product-search{border:none;border-bottom:1px solid #dfdede;margin-bottom:0;margin-right:10px;margin-top:10px}}.navbar__section{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;width:100%}.navbar__link{display:inline-block;font-family:Martel Sans;font-size:14px;font-weight:700;margin-right:10px;overflow:hidden;text-transform:uppercase;transition:.3s ease-in-out}.navbar__link:after{background-color:#000;content:"";display:block;height:2px;transition:width .25s ease-out;width:0}.navbar__link:hover:after{width:100%}.navbar__link:hover .navbar__dropdown{animation:fadeInDropdown .3s ease-in-out;display:block}.navbar__dropdown{background-color:#fff;box-shadow:5px 5px 5px #dfdede;display:none;left:0;position:absolute;width:100%;z-index:999}@keyframes fadeInDropdown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.navbar__company-link{font-size:13px;font-weight:400;list-style:none;margin-left:18px;text-decoration:none}.navbar__company-block{align-items:center;background-color:#000;color:#fff;display:flex;font-weight:700;height:33px;justify-content:center;margin-right:0;padding:0 18px;text-transform:uppercase}.navbar__input-search-icon{height:auto;margin-left:1.125rem;margin-right:.375rem;width:15px}.navbar__nav-links{align-items:center;display:flex}.navbar__nav-links--wrap{flex-wrap:wrap}.navbar__icons{align-items:center;display:flex;height:40px;justify-content:flex-end;margin-bottom:10px}@media only screen and (max-width:879px){.navbar__icons{display:block;height:20px;margin-bottom:0}}.navbar__icon{cursor:pointer;height:auto;margin-right:18px;width:20px}.navbar__icon.navbar__cart-icon{margin-right:0}.navbar__icon--app{cursor:pointer;height:auto;margin-left:12px;width:20px}@media only screen and (max-width:879px){.navbar__icon--app{margin-right:0}}.navbar__loyalty-icon{height:18px;position:absolute;right:-14px;top:-6px;width:18px}.navbar__cart-icon{position:relative}.navbar__cart-count{bottom:50%;font-size:13px;height:20px;left:60%;position:absolute;width:20px}.navbar__account-initials,.navbar__cart-count{align-items:center;background-color:#f2eeeb;border-radius:50%;color:#000;display:flex;justify-content:center}.navbar__account-initials{font-size:11px;font-weight:500;height:24px;text-transform:uppercase;width:24px}.footer__newsletter-section{align-items:center;background-color:#000;color:#fff;display:flex;justify-content:space-between;padding:2.265rem 0}@media only screen and (max-width:879px){.footer__newsletter-section{flex-direction:column}}.footer__newsletter-wrapper{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1280px;padding-left:32px;padding-right:32px;width:100%}@media only screen and (max-width:879px){.footer__newsletter-wrapper{flex-direction:column}.footer__link-container{flex-basis:50%}}.footer__newsletter-icon{height:30px;position:absolute;right:0;top:0;width:32px}.footer__newsletter-form{flex-basis:50%;max-width:250px;position:relative}@media only screen and (max-width:879px){.footer__newsletter-form{display:block;margin-top:20px;max-width:100%;width:100%}}.footer__newsletter-title{font-family:Martel Sans,sans-serif;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:1.125rem;text-transform:uppercase}.footer__newsletter-text{font-size:14px}.footer__form-input{background-color:#000;border:none;border-bottom:1px solid #fff;color:#fff;height:30px;outline:none;width:100%}.footer__form-input::-moz-placeholder{color:#fff;font-weight:400}.footer__form-input::placeholder{color:#fff;font-weight:400}.footer__form-errors{color:#fff;margin-top:5px}.footer__main-section{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:50px;margin-top:80px}.footer__link-title{font-family:El Messiri;font-size:16px;font-weight:700;margin-bottom:20px;text-transform:uppercase}@media only screen and (max-width:879px){.footer__link-title{margin-bottom:10px}}.footer__link-child{margin-top:25px}.footer__links{display:flex;flex-direction:column}.footer__link{color:#939393;cursor:pointer;font-family:Martel Sans;font-size:14px;line-height:20px;margin-bottom:7px;text-align:left;text-decoration:none}.footer__link:hover{color:#000;text-decoration:underline}@media only screen and (max-width:879px){.footer__link{margin-bottom:10px}}.footer__link-wrapper{align-items:center;display:flex;gap:5px}.footer__link-icon{height:30px;margin-bottom:18px}.footer__text{color:#939393;font-family:Martel Sans;font-size:14px;line-height:20px;margin-bottom:15px;text-align:left;text-decoration:none}.footer__store-hours{margin-top:35px}.footer__copyrights-section{border-top:1px solid;display:flex;justify-content:space-between;padding-bottom:20px;padding-top:20px}.footer__logo{height:30px;width:135px}.footer__payment-icons{align-items:center;display:flex;gap:8px}.footer__wrapper{margin:0 auto;max-width:1280px;padding-left:32px;padding-right:32px;width:100%}@media only screen and (max-width:879px){.footer__wrapper{padding:32px 0 0 24px}}.footer__wrapper--desktop{display:block}@media only screen and (max-width:879px){.footer__wrapper--desktop{display:none}}.footer__wrapper--mobile{display:none}@media only screen and (max-width:879px){.footer__wrapper--mobile{display:block;padding-top:30px}}.footer__copyright{font-size:10px;line-height:22px}.footer__copyright--mobile{display:none}@media only screen and (max-width:879px){.footer__copyright--mobile{display:block;padding:30px 10px 30px 0;text-align:center}}.footer__section-row{display:flex;gap:50%}@media only screen and (max-width:879px){.footer__section-row{gap:unset}}.side-nav{font-family:Martel Sans}.side-nav__errors{align-items:center;color:red;display:flex;font-size:16px;justify-content:center}.side-nav__overlay{background-color:rgba(78,73,73,.51);height:100%;opacity:0;position:fixed;top:0;transition:opacity .5s ease-out 0s,visibility .5s ease-out 0s;width:100%;z-index:99999}.side-nav__overlay--visible{opacity:1;visibility:visible}.side-nav__overlay--hidden{opacity:1;visibility:hidden}.side-nav__content{background-color:#fff;bottom:0;overflow-y:scroll;padding:1.5rem;position:fixed;top:0;transition:left .5s ease-in-out;width:80%;z-index:99999}.side-nav__content--hidden{display:none}.side-nav__content--open{left:0}.side-nav__content--closed{left:-100%}.side-nav__menu-title-wrapper{align-items:center;background-color:transparent;border:none;display:flex;justify-content:space-between;outline:none;width:100%}.side-nav__icon-container{float:right;margin-bottom:10px}.side-nav__menu-title{font-size:14px;font-weight:700;line-height:20px;text-transform:uppercase}.side-nav__accordion-icon{height:auto;width:15px}.side-nav__menu-item{margin-bottom:25px}.side-nav__close-icon{height:20px;margin-left:auto;width:20px}.side-nav__back-button-wrapper{align-items:center;display:flex;margin-bottom:25px}.side-nav__back-icon{height:20px;width:20px}.side-nav__back-button,.side-nav__sub-menu-title{font-weight:700;text-transform:uppercase}.side-nav__sub-menu-title{font-size:14px;margin-bottom:10px}.side-nav__elements{display:flex;flex-direction:column}.side-nav__element{color:#555;cursor:pointer;line-height:20px;margin-bottom:10px}.side-nav__element,.side-nav__sub-link{font-size:14px;font-weight:400;text-transform:capitalize}.side-nav__block-button{background-color:#000;color:#fff;font-weight:700;padding:10px 0;width:100%}.side-nav{font-family:Martel Sans}.side-nav__errors{align-items:center;color:red;display:flex;font-size:16px;justify-content:center}.side-nav__overlay{background-color:rgba(78,73,73,.51);height:100%;opacity:0;position:fixed;top:0;transition:opacity .5s ease-out 0s,visibility .5s ease-out 0s;width:100%;z-index:99999}.side-nav__overlay--visible{opacity:1;visibility:visible}.side-nav__overlay--hidden{opacity:1;visibility:hidden}.side-nav__content{background-color:#fff;bottom:0;overflow-y:scroll;padding:1.5rem;position:fixed;top:0;transition:left .5s ease-in-out;width:80%;z-index:99999}.side-nav__content--hidden{display:none}.side-nav__content--open{left:0}.side-nav__content--closed{left:-100%}.side-nav__menu-title-wrapper{align-items:center;background-color:transparent;border:none;display:flex;outline:none;width:100%}.side-nav__icon-container{float:right;margin-bottom:10px}.side-nav__menu-title{align-items:center;display:flex;font-size:14px;font-weight:700;justify-content:center;line-height:20px;text-transform:uppercase}.side-nav__menu-icon{display:flex;height:25px;margin-right:10px;width:25px}.side-nav__menu-divider{margin-bottom:40px}.side-nav__accordion-icon{height:auto;width:15px}.side-nav__menu-item{margin-bottom:25px}.side-nav__close-icon{height:20px;margin-left:auto;width:20px}.side-nav__back-button-wrapper{align-items:center;display:flex;margin-bottom:25px}.side-nav__back-icon{height:20px;width:20px}.side-nav__back-button,.side-nav__sub-menu-title{font-weight:700;text-transform:uppercase}.side-nav__sub-menu-title{font-size:14px;margin-bottom:10px}.side-nav__elements{display:flex;flex-direction:column}.side-nav__element{color:#555;cursor:pointer;line-height:20px;margin-bottom:10px}.side-nav__element,.side-nav__sub-link{font-size:14px;font-weight:400;text-transform:capitalize}.side-nav__block-button{background-color:#000;color:#fff;font-weight:700;padding:10px 0;width:100%}.stores-dropdown{align-items:flex-start;display:flex;font-family:Martel Sans;gap:20px;margin-left:auto;margin-right:auto;max-width:1280px;overflow-x:auto;padding:20px 15px}.stores-dropdown__image{height:200px;-o-object-fit:cover;object-fit:cover;width:100%}.stores-dropdown__store-details{flex-basis:20%}.stores-dropdown__title{font-family:El Messiri}.stores-dropdown__main-title,.stores-dropdown__title{font-size:16px;font-weight:400;letter-spacing:3px;margin-top:20px}.stores-dropdown__main-title{font-weight:700;margin-bottom:10px}.stores-dropdown__open-days{font-size:12px;font-weight:700;line-height:20px}.stores-dropdown__open-hours{font-size:12px;font-weight:400;line-height:20px}.stores-dropdown__queries-title{font-family:El Messiri;font-size:16px;font-weight:400;letter-spacing:3px}.stores-dropdown__contact-details{font-size:16px;font-weight:700}.stores-dropdown__view-more{cursor:pointer;font-size:14px;font-weight:400;margin-top:10px;text-transform:capitalize}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.shimmer{animation:shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#f4f4f4 0,#dfdede 20%,#f4f4f4 40%,#f4f4f4);background-size:800px 104px}@media only screen and (max-width:1052px){.shimmer{background-size:600px 104px}}.search-results{background:#fff;border:1px solid #dfdede;border-radius:2px;box-shadow:0 2px 8px rgba(0,0,0,.08);display:flex;position:absolute;width:770px;z-index:50}@media only screen and (max-width:1052px){.search-results{border:none;box-shadow:none;flex-direction:column;left:0;right:0;top:100%;width:100%}}.search-results__section:first-child{border-right:1px solid #dfdede;flex:1;min-width:240px}.search-results__section:last-child{display:flex;flex:2;flex-direction:column}.search-results__section-header{align-items:center;display:flex;justify-content:space-between}.search-results__header{color:#000;font-family:Martel Sans;font-size:14px;font-weight:600;margin-bottom:0;padding:16px 20px;text-transform:uppercase}@media only screen and (max-width:1052px){.search-results__header{font-size:13px;padding:12px 16px}}.search-results__view-all-link{display:none}@media only screen and (max-width:879px){.search-results__view-all-link{color:#000;display:block;font-family:Martel Sans;font-size:14px;margin-right:20px}}.search-results__list{display:flex;flex-direction:column}.search-results__item{color:grey;font-family:Martel Sans;font-size:14px;padding:8px 20px;text-decoration:none}.search-results__product-list{display:flex;flex-direction:column;overflow-y:auto}.product-card{color:inherit;display:flex;padding:12px 20px;text-decoration:none;transition:background-color .15s ease}.product-card:hover{background-color:#f4f4f4}.product-card__image-container{border-radius:2px;flex-shrink:0;height:90px;margin-right:16px;overflow:hidden;width:90px}.product-card__image{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.product-card__details{display:flex;flex:1;flex-direction:column}.product-card__name{color:#000;font-family:Martel Sans;font-size:14px;line-height:1.4;margin-bottom:24px}.product-card__brand-name{font-weight:600}.product-card__info-row{align-items:flex-end;display:flex;justify-content:space-between}@media only screen and (max-width:879px){.product-card__info-row{align-items:flex-start;flex-direction:column}}.product-card__price-group{display:flex;flex-direction:column;gap:4px}.product-card__price{font-family:Martel Sans;font-size:14px;font-weight:600;line-height:1}.product-card__price--promotion{color:#000}.product-card__price--original{color:#939393;font-weight:400;text-decoration:line-through}.product-card__price-with-promotion{display:flex;flex-direction:column;gap:2px}.product-card__retail-price{color:#939393;font-family:Martel Sans;font-size:14px;text-decoration:line-through}.product-card__condition{color:#000;font-family:Martel Sans;font-size:13px;margin-right:20px;text-align:right}.product-card__condition-label{color:#939393;margin-right:4px}.search-results__view-all-button{background-color:#f2eeeb!important;border:none;color:#000;cursor:pointer;font-family:Martel Sans;font-size:13px;font-weight:400;padding:16px;text-align:center}@media only screen and (max-width:879px){.search-results__view-all-button{display:none}}.search-results__no-results{display:flex;flex-direction:column;width:100%}.search-results__no-results-content{align-items:flex-start;display:flex;gap:20px;padding:20px}@media only screen and (max-width:879px){.search-results__no-results-content{gap:16px;padding:16px}}@media only screen and (max-width:1052px){.search-results__no-results-content{align-items:flex-start;gap:12px;padding:16px 12px}}.search-results__no-results-image{border-radius:4px;flex-shrink:0;height:180px;overflow:hidden;width:180px}@media only screen and (max-width:879px){.search-results__no-results-image{height:120px;width:120px}}@media only screen and (max-width:1052px){.search-results__no-results-image{height:100px;width:100px}}.search-results__no-results-image img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.search-results__no-results-text{display:flex;flex:1;flex-direction:column;gap:12px;text-align:left}@media only screen and (max-width:1052px){.search-results__no-results-text{gap:8px}}.search-results__no-results-title{color:#000;font-family:Martel Sans;font-size:16px;font-weight:600;line-height:1.4;margin:0}@media only screen and (max-width:879px){.search-results__no-results-title{font-size:14px}}@media only screen and (max-width:1052px){.search-results__no-results-title{font-size:14px;line-height:1.3}}.search-results__no-results-description{color:#939393;font-family:Martel Sans;font-size:14px;line-height:1.5;margin:0}@media only screen and (max-width:879px){.search-results__no-results-description{font-size:13px}}@media only screen and (max-width:1052px){.search-results__no-results-description{font-size:12px;line-height:1.4}}.search-results__create-interest-button{background-color:#f2eeeb!important;border:none;color:#000;cursor:pointer;font-family:Martel Sans;font-size:13px;font-weight:400;padding:16px;text-align:center;width:100%}@media only screen and (max-width:879px){.search-results__create-interest-button{display:block}}@media only screen and (max-width:1052px){.search-results__create-interest-button{font-size:13px;margin-top:8px;padding:14px 16px}}.brand-skeleton{display:flex;flex-direction:column;width:100%}.brand-skeleton__item{background-color:#f4f4f4;border-radius:4px;height:32px;margin:8px 20px}.brand-skeleton__item:first-child{margin-top:0}@media only screen and (max-width:1052px){.brand-skeleton__item{height:28px;margin:6px 16px}}.product-skeleton{display:flex;gap:16px;padding:12px 20px}@media only screen and (max-width:1052px){.product-skeleton{gap:12px;padding:10px 16px}}.product-skeleton__image{background-color:#f4f4f4;border-radius:2px;flex-shrink:0;height:90px;width:90px}@media only screen and (max-width:1052px){.product-skeleton__image{height:70px;width:70px}}.product-skeleton__content{display:flex;flex:1;flex-direction:column;gap:12px}@media only screen and (max-width:1052px){.product-skeleton__content{gap:8px}}.product-skeleton__title{background-color:#f4f4f4;border-radius:4px;height:16px;width:100%}@media only screen and (max-width:1052px){.product-skeleton__title{height:14px}}.product-skeleton__subtitle{background-color:#f4f4f4;border-radius:4px;height:14px;width:80%}@media only screen and (max-width:1052px){.product-skeleton__subtitle{height:12px;width:70%}}.product-skeleton__price{background-color:#f4f4f4;border-radius:4px;height:14px;margin-top:auto;width:60%}@media only screen and (max-width:1052px){.product-skeleton__price{height:12px;width:50%}}.dropdown{display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:1280px;min-height:500px;overflow-x:auto;padding:20px 0}.dropdown__errors{align-items:center;color:red;display:flex;font-size:16px;justify-content:center;min-height:300px}.dropdown__column{flex:1;padding-left:12px}.dropdown__column:nth-child(2){flex:2}.dropdown__title{font-family:El Messiri;font-size:16px;font-weight:700;letter-spacing:3px;line-height:1;margin-bottom:20px;text-transform:uppercase}.dropdown__elements{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:800px;overflow-y:auto}.dropdown__brand-elements{-moz-column-count:3;column-count:3;max-height:800px}.dropdown__brand-element{cursor:pointer;margin-bottom:10px}.dropdown__element{flex-basis:33.33%;font-family:Martel Sans;font-size:14px;font-weight:400;margin-bottom:10px;text-transform:capitalize}.cover-spinner{align-items:center;background-color:hsla(0,0%,100%,.7);display:flex;height:100%;justify-content:center;min-height:400px;position:relative;top:50%;width:100%;z-index:9999}.cover-spinner:after{animation:spin 1.5s linear infinite;border:4px dotted #000;border-radius:50%;border-top-color:transparent;content:"";display:block;height:40px;position:absolute;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
1
+ @charset "UTF-8";.currency-select-container{align-items:center;display:flex;margin-right:18px;position:relative}.currency-select-container .currency-flag{margin-right:5px}.currency-select-container .currency-flag img{height:15px;-o-object-fit:cover;object-fit:cover;width:20px}.currency-select-container .currency-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:transparent;border:none;color:#000;cursor:pointer;font-family:inherit;font-size:14px;margin:0;outline:none;padding:5px 15px 5px 5px}.currency-select-container .currency-select::-ms-expand{display:none}.currency-select-container .currency-select:focus{box-shadow:none;outline:none}.currency-select-container .currency-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.currency-select-container:after{color:#000;content:"▼";font-size:10px;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}@media only screen and (max-width:879px){.currency-select-container .currency-select{appearance:menulist;-webkit-appearance:menulist;-moz-appearance:menulist;padding-right:0}.currency-select-container:after{display:none}}.currency-select-container.disabled{cursor:not-allowed;opacity:.7}.currency-select-container.disabled .currency-select{pointer-events:none}.interests__add-button{display:flex;flex-direction:row;gap:10px;width:100%}@media only screen and (max-width:879px){.interests__add-button{flex-direction:column}}.interests__section-wrapper{display:flex;flex-direction:column;width:100%}.interests__select-option{display:flex;flex-direction:column;margin-bottom:15px}.interests__title{font-family:El Messiri;font-size:16px;margin-bottom:10px}.footer__newsletter-section{align-items:center;background-color:#000;color:#fff;display:flex;justify-content:space-between;padding:2.265rem 0}@media only screen and (max-width:879px){.footer__newsletter-section{flex-direction:column}}.footer__newsletter-wrapper{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1280px;padding-left:32px;padding-right:32px;width:100%}@media only screen and (max-width:879px){.footer__newsletter-wrapper{flex-direction:column}.footer__link-container{flex-basis:50%}}.footer__newsletter-icon{height:30px;position:absolute;right:0;top:0;width:32px}.footer__newsletter-form{flex-basis:50%;max-width:250px;position:relative}@media only screen and (max-width:879px){.footer__newsletter-form{display:block;margin-top:20px;max-width:100%;width:100%}}.footer__newsletter-title{font-family:Martel Sans,sans-serif;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:1.125rem;text-transform:uppercase}.footer__newsletter-text{font-size:14px}.footer__form-input{background-color:#000;border:none;border-bottom:1px solid #fff;color:#fff;height:30px;outline:none;width:100%}.footer__form-input::-moz-placeholder{color:#fff;font-weight:400}.footer__form-input::placeholder{color:#fff;font-weight:400}.footer__form-errors{color:#fff;margin-top:5px}.footer__main-section{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:50px;margin-top:80px}.footer__link-title{font-family:El Messiri;font-size:16px;font-weight:700;margin-bottom:20px;text-transform:uppercase}@media only screen and (max-width:879px){.footer__link-title{margin-bottom:10px}}.footer__link-child{margin-top:25px}.footer__links{display:flex;flex-direction:column}.footer__link{color:#939393;cursor:pointer;font-family:Martel Sans;font-size:14px;line-height:20px;margin-bottom:7px;text-align:left;text-decoration:none}.footer__link:hover{color:#000;text-decoration:underline}@media only screen and (max-width:879px){.footer__link{margin-bottom:10px}}.footer__link-wrapper{align-items:center;display:flex;gap:5px}.footer__link-icon{height:30px;margin-bottom:18px}.footer__text{color:#939393;font-family:Martel Sans;font-size:14px;line-height:20px;margin-bottom:15px;text-align:left;text-decoration:none}.footer__store-hours{margin-top:35px}.footer__copyrights-section{border-top:1px solid;display:flex;justify-content:space-between;padding-bottom:20px;padding-top:20px}.footer__logo{height:30px;width:135px}.footer__payment-icons{align-items:center;display:flex;gap:8px}.footer__wrapper{margin:0 auto;max-width:1280px;padding-left:32px;padding-right:32px;width:100%}@media only screen and (max-width:879px){.footer__wrapper{padding:32px 0 0 24px}}.footer__wrapper--desktop{display:block}@media only screen and (max-width:879px){.footer__wrapper--desktop{display:none}}.footer__wrapper--mobile{display:none}@media only screen and (max-width:879px){.footer__wrapper--mobile{display:block;padding-top:30px}}.footer__copyright{font-size:10px;line-height:22px}.footer__copyright--mobile{display:none}@media only screen and (max-width:879px){.footer__copyright--mobile{display:block;padding:30px 10px 30px 0;text-align:center}}.footer__section-row{display:flex;gap:50%}@media only screen and (max-width:879px){.footer__section-row{gap:unset}}.navbar{box-shadow:2px 2px 10px #dfdede;display:flex;padding-bottom:10px;padding-top:20px;position:relative}@media only screen and (max-width:879px){.navbar{padding-top:12px}}.navbar__link-item--desktop{align-items:center;display:flex;height:35px;margin:auto 0;padding-top:5px}.navbar__mobile-wrapper{align-items:center;display:flex;flex-direction:column;padding-left:16px;padding-right:16px}.navbar__container{display:flex;margin:0 auto;max-width:1280px;padding-left:12px;padding-right:12px;width:100%}.navbar__body{flex-basis:60%}.navbar__wrapper{align-items:center;display:flex;gap:10px;justify-content:flex-start;width:100%}@media only screen and (max-width:879px){.navbar__wrapper .navbar__menu-icon-wrapper{margin-right:10px}.navbar__wrapper .navbar__logo{margin-left:0;margin-right:auto}.navbar__wrapper .navbar__icons-wrapper{align-items:center;display:flex;gap:20px;margin-left:auto}.navbar__wrapper .navbar__icons{align-items:center;display:flex;gap:20px;margin:0}.navbar__wrapper .navbar__icon{margin:0}}.navbar__product-search-wrapper{align-items:center;display:flex;justify-content:center;padding:0 20%;width:100%}@media only screen and (max-width:879px){.navbar__product-search-wrapper{padding:0}}.navbar__search-container{width:100%}.navbar__input-close-icon{height:auto;margin-bottom:10px;margin-left:10px;width:20px}@media only screen and (max-width:879px){.navbar__input-close-icon{margin-bottom:0;margin-left:0;width:15px}}.navbar__menu-icon{width:20px}.navbar__product-search{align-items:center;display:flex;max-width:545px;width:100%}.navbar__logo-wrapper{margin-right:18px;width:200px}.navbar__logo{width:200px}@media only screen and (max-width:879px){.navbar__logo{margin-left:10px;margin-top:5px;width:150px}}.navbar__form-input{align-items:center;background:transparent;border:none;display:flex;font-size:13px;outline:none;padding:8px;width:100%}.navbar__product-search{border:1px solid #dfdede;margin-bottom:10px}@media only screen and (max-width:879px){.navbar__product-search{border:none;border-bottom:1px solid #dfdede;margin-bottom:0;margin-right:10px;margin-top:10px}}.navbar__section{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;width:100%}.navbar__link{display:inline-block;font-family:Martel Sans;font-size:14px;font-weight:700;margin-right:10px;overflow:hidden;text-transform:uppercase;transition:.3s ease-in-out}.navbar__link:after{background-color:#000;content:"";display:block;height:2px;transition:width .25s ease-out;width:0}.navbar__link:hover:after{width:100%}.navbar__link:hover .navbar__dropdown{animation:fadeInDropdown .3s ease-in-out;display:block}.navbar__dropdown{background-color:#fff;box-shadow:5px 5px 5px #dfdede;display:none;left:0;position:absolute;width:100%;z-index:999}@keyframes fadeInDropdown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.navbar__company-link{font-size:13px;font-weight:400;list-style:none;margin-left:18px;text-decoration:none}.navbar__company-block{align-items:center;background-color:#000;color:#fff;display:flex;font-weight:700;height:33px;justify-content:center;margin-right:0;padding:0 18px;text-transform:uppercase}.navbar__input-search-icon{height:auto;margin-left:1.125rem;margin-right:.375rem;width:15px}.navbar__nav-links{align-items:center;display:flex}.navbar__nav-links--wrap{flex-wrap:wrap}.navbar__icons{align-items:center;display:flex;height:40px;justify-content:flex-end;margin-bottom:10px}@media only screen and (max-width:879px){.navbar__icons{display:block;height:20px;margin-bottom:0}}.navbar__icon{cursor:pointer;height:auto;margin-right:18px;width:20px}.navbar__icon.navbar__cart-icon{margin-right:0}.navbar__icon--app{cursor:pointer;height:auto;margin-left:12px;width:20px}@media only screen and (max-width:879px){.navbar__icon--app{margin-right:0}}.navbar__loyalty-icon{height:18px;position:absolute;right:-14px;top:-6px;width:18px}.navbar__cart-icon{position:relative}.navbar__cart-count{bottom:50%;font-size:13px;height:20px;left:60%;position:absolute;width:20px}.navbar__account-initials,.navbar__cart-count{align-items:center;background-color:#f2eeeb;border-radius:50%;color:#000;display:flex;justify-content:center}.navbar__account-initials{font-size:11px;font-weight:500;height:24px;text-transform:uppercase;width:24px}.side-nav{font-family:Martel Sans}.side-nav__errors{align-items:center;color:red;display:flex;font-size:16px;justify-content:center}.side-nav__overlay{background-color:rgba(78,73,73,.51);height:100%;opacity:0;position:fixed;top:0;transition:opacity .5s ease-out 0s,visibility .5s ease-out 0s;width:100%;z-index:99999}.side-nav__overlay--visible{opacity:1;visibility:visible}.side-nav__overlay--hidden{opacity:1;visibility:hidden}.side-nav__content{background-color:#fff;bottom:0;overflow-y:scroll;padding:1.5rem;position:fixed;top:0;transition:left .5s ease-in-out;width:80%;z-index:99999}.side-nav__content--hidden{display:none}.side-nav__content--open{left:0}.side-nav__content--closed{left:-100%}.side-nav__menu-title-wrapper{align-items:center;background-color:transparent;border:none;display:flex;outline:none;width:100%}.side-nav__icon-container{float:right;margin-bottom:10px}.side-nav__menu-title{align-items:center;display:flex;font-size:14px;font-weight:700;justify-content:center;line-height:20px;text-transform:uppercase}.side-nav__menu-icon{display:flex;height:25px;margin-right:10px;width:25px}.side-nav__menu-divider{margin-bottom:40px}.side-nav__accordion-icon{height:auto;width:15px}.side-nav__menu-item{margin-bottom:25px}.side-nav__close-icon{height:20px;margin-left:auto;width:20px}.side-nav__back-button-wrapper{align-items:center;display:flex;margin-bottom:25px}.side-nav__back-icon{height:20px;width:20px}.side-nav__back-button,.side-nav__sub-menu-title{font-weight:700;text-transform:uppercase}.side-nav__sub-menu-title{font-size:14px;margin-bottom:10px}.side-nav__elements{display:flex;flex-direction:column}.side-nav__element{color:#555;cursor:pointer;line-height:20px;margin-bottom:10px}.side-nav__element,.side-nav__sub-link{font-size:14px;font-weight:400;text-transform:capitalize}.side-nav__block-button{background-color:#000;color:#fff;font-weight:700;padding:10px 0;width:100%}.side-nav{font-family:Martel Sans}.side-nav__errors{align-items:center;color:red;display:flex;font-size:16px;justify-content:center}.side-nav__overlay{background-color:rgba(78,73,73,.51);height:100%;opacity:0;position:fixed;top:0;transition:opacity .5s ease-out 0s,visibility .5s ease-out 0s;width:100%;z-index:99999}.side-nav__overlay--visible{opacity:1;visibility:visible}.side-nav__overlay--hidden{opacity:1;visibility:hidden}.side-nav__content{background-color:#fff;bottom:0;overflow-y:scroll;padding:1.5rem;position:fixed;top:0;transition:left .5s ease-in-out;width:80%;z-index:99999}.side-nav__content--hidden{display:none}.side-nav__content--open{left:0}.side-nav__content--closed{left:-100%}.side-nav__menu-title-wrapper{align-items:center;background-color:transparent;border:none;display:flex;justify-content:space-between;outline:none;width:100%}.side-nav__icon-container{float:right;margin-bottom:10px}.side-nav__menu-title{font-size:14px;font-weight:700;line-height:20px;text-transform:uppercase}.side-nav__accordion-icon{height:auto;width:15px}.side-nav__menu-item{margin-bottom:25px}.side-nav__close-icon{height:20px;margin-left:auto;width:20px}.side-nav__back-button-wrapper{align-items:center;display:flex;margin-bottom:25px}.side-nav__back-icon{height:20px;width:20px}.side-nav__back-button,.side-nav__sub-menu-title{font-weight:700;text-transform:uppercase}.side-nav__sub-menu-title{font-size:14px;margin-bottom:10px}.side-nav__elements{display:flex;flex-direction:column}.side-nav__element{color:#555;cursor:pointer;line-height:20px;margin-bottom:10px}.side-nav__element,.side-nav__sub-link{font-size:14px;font-weight:400;text-transform:capitalize}.side-nav__block-button{background-color:#000;color:#fff;font-weight:700;padding:10px 0;width:100%}.stores-dropdown{align-items:flex-start;display:flex;font-family:Martel Sans;gap:20px;margin-left:auto;margin-right:auto;max-width:1280px;overflow-x:auto;padding:20px 15px}.stores-dropdown__image{height:200px;-o-object-fit:cover;object-fit:cover;width:100%}.stores-dropdown__store-details{flex-basis:20%}.stores-dropdown__title{font-family:El Messiri}.stores-dropdown__main-title,.stores-dropdown__title{font-size:16px;font-weight:400;letter-spacing:3px;margin-top:20px}.stores-dropdown__main-title{font-weight:700;margin-bottom:10px}.stores-dropdown__open-days{font-size:12px;font-weight:700;line-height:20px}.stores-dropdown__open-hours{font-size:12px;font-weight:400;line-height:20px}.stores-dropdown__queries-title{font-family:El Messiri;font-size:16px;font-weight:400;letter-spacing:3px}.stores-dropdown__contact-details{font-size:16px;font-weight:700}.stores-dropdown__view-more{cursor:pointer;font-size:14px;font-weight:400;margin-top:10px;text-transform:capitalize}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.shimmer{animation:shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#f4f4f4 0,#dfdede 20%,#f4f4f4 40%,#f4f4f4);background-size:800px 104px}@media only screen and (max-width:1052px){.shimmer{background-size:600px 104px}}.search-results{background:#fff;border:1px solid #dfdede;border-radius:2px;box-shadow:0 2px 8px rgba(0,0,0,.08);display:flex;position:absolute;width:770px;z-index:50}@media only screen and (max-width:1052px){.search-results{border:none;box-shadow:none;flex-direction:column;left:0;right:0;top:100%;width:100%}}.search-results__section:first-child{border-right:1px solid #dfdede;flex:1;min-width:240px}.search-results__section:last-child{display:flex;flex:2;flex-direction:column}.search-results__section-header{align-items:center;display:flex;justify-content:space-between}.search-results__header{color:#000;font-family:Martel Sans;font-size:14px;font-weight:600;margin-bottom:0;padding:16px 20px;text-transform:uppercase}@media only screen and (max-width:1052px){.search-results__header{font-size:13px;padding:12px 16px}}.search-results__view-all-link{display:none}@media only screen and (max-width:879px){.search-results__view-all-link{color:#000;display:block;font-family:Martel Sans;font-size:14px;margin-right:20px}}.search-results__list{display:flex;flex-direction:column}.search-results__item{color:grey;font-family:Martel Sans;font-size:14px;padding:8px 20px;text-decoration:none}.search-results__product-list{display:flex;flex-direction:column;overflow-y:auto}.product-card{color:inherit;display:flex;padding:12px 20px;text-decoration:none;transition:background-color .15s ease}.product-card:hover{background-color:#f4f4f4}.product-card__image-container{border-radius:2px;flex-shrink:0;height:90px;margin-right:16px;overflow:hidden;width:90px}.product-card__image{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.product-card__details{display:flex;flex:1;flex-direction:column}.product-card__name{color:#000;font-family:Martel Sans;font-size:14px;line-height:1.4;margin-bottom:24px}.product-card__brand-name{font-weight:600}.product-card__info-row{align-items:flex-end;display:flex;justify-content:space-between}@media only screen and (max-width:879px){.product-card__info-row{align-items:flex-start;flex-direction:column}}.product-card__price-group{display:flex;flex-direction:column;gap:4px}.product-card__price{font-family:Martel Sans;font-size:14px;font-weight:600;line-height:1}.product-card__price--promotion{color:#000}.product-card__price--original{color:#939393;font-weight:400;text-decoration:line-through}.product-card__price-with-promotion{display:flex;flex-direction:column;gap:2px}.product-card__retail-price{color:#939393;font-family:Martel Sans;font-size:14px;text-decoration:line-through}.product-card__condition{color:#000;font-family:Martel Sans;font-size:13px;margin-right:20px;text-align:right}.product-card__condition-label{color:#939393;margin-right:4px}.search-results__view-all-button{background-color:#f2eeeb!important;border:none;color:#000;cursor:pointer;font-family:Martel Sans;font-size:13px;font-weight:400;padding:16px;text-align:center}@media only screen and (max-width:879px){.search-results__view-all-button{display:none}}.search-results__no-results{display:flex;flex-direction:column;width:100%}.search-results__no-results-content{align-items:flex-start;display:flex;gap:20px;padding:20px}@media only screen and (max-width:879px){.search-results__no-results-content{gap:16px;padding:16px}}@media only screen and (max-width:1052px){.search-results__no-results-content{align-items:flex-start;gap:12px;padding:16px 12px}}.search-results__no-results-image{border-radius:4px;flex-shrink:0;height:180px;overflow:hidden;width:180px}@media only screen and (max-width:879px){.search-results__no-results-image{height:120px;width:120px}}@media only screen and (max-width:1052px){.search-results__no-results-image{height:100px;width:100px}}.search-results__no-results-image img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.search-results__no-results-text{display:flex;flex:1;flex-direction:column;gap:12px;text-align:left}@media only screen and (max-width:1052px){.search-results__no-results-text{gap:8px}}.search-results__no-results-title{color:#000;font-family:Martel Sans;font-size:16px;font-weight:600;line-height:1.4;margin:0}@media only screen and (max-width:879px){.search-results__no-results-title{font-size:14px}}@media only screen and (max-width:1052px){.search-results__no-results-title{font-size:14px;line-height:1.3}}.search-results__no-results-description{color:#939393;font-family:Martel Sans;font-size:14px;line-height:1.5;margin:0}@media only screen and (max-width:879px){.search-results__no-results-description{font-size:13px}}@media only screen and (max-width:1052px){.search-results__no-results-description{font-size:12px;line-height:1.4}}.search-results__create-interest-button{background-color:#f2eeeb!important;border:none;color:#000;cursor:pointer;font-family:Martel Sans;font-size:13px;font-weight:400;padding:16px;text-align:center;width:100%}@media only screen and (max-width:879px){.search-results__create-interest-button{display:block}}@media only screen and (max-width:1052px){.search-results__create-interest-button{font-size:13px;margin-top:8px;padding:14px 16px}}.brand-skeleton{display:flex;flex-direction:column;width:100%}.brand-skeleton__item{background-color:#f4f4f4;border-radius:4px;height:32px;margin:8px 20px}.brand-skeleton__item:first-child{margin-top:0}@media only screen and (max-width:1052px){.brand-skeleton__item{height:28px;margin:6px 16px}}.product-skeleton{display:flex;gap:16px;padding:12px 20px}@media only screen and (max-width:1052px){.product-skeleton{gap:12px;padding:10px 16px}}.product-skeleton__image{background-color:#f4f4f4;border-radius:2px;flex-shrink:0;height:90px;width:90px}@media only screen and (max-width:1052px){.product-skeleton__image{height:70px;width:70px}}.product-skeleton__content{display:flex;flex:1;flex-direction:column;gap:12px}@media only screen and (max-width:1052px){.product-skeleton__content{gap:8px}}.product-skeleton__title{background-color:#f4f4f4;border-radius:4px;height:16px;width:100%}@media only screen and (max-width:1052px){.product-skeleton__title{height:14px}}.product-skeleton__subtitle{background-color:#f4f4f4;border-radius:4px;height:14px;width:80%}@media only screen and (max-width:1052px){.product-skeleton__subtitle{height:12px;width:70%}}.product-skeleton__price{background-color:#f4f4f4;border-radius:4px;height:14px;margin-top:auto;width:60%}@media only screen and (max-width:1052px){.product-skeleton__price{height:12px;width:50%}}.dropdown{display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:1280px;min-height:500px;overflow-x:auto;padding:20px 0}.dropdown__errors{align-items:center;color:red;display:flex;font-size:16px;justify-content:center;min-height:300px}.dropdown__column{flex:1;padding-left:12px}.dropdown__column:nth-child(2){flex:2}.dropdown__title{font-family:El Messiri;font-size:16px;font-weight:700;letter-spacing:3px;line-height:1;margin-bottom:20px;text-transform:uppercase}.dropdown__elements{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:800px;overflow-y:auto}.dropdown__brand-elements{-moz-column-count:3;column-count:3;max-height:800px}.dropdown__brand-element{cursor:pointer;margin-bottom:10px}.dropdown__element{flex-basis:33.33%;font-family:Martel Sans;font-size:14px;font-weight:400;margin-bottom:10px;text-transform:capitalize}.cover-spinner{align-items:center;background-color:hsla(0,0%,100%,.7);display:flex;height:100%;justify-content:center;min-height:400px;position:relative;top:50%;width:100%;z-index:9999}.cover-spinner:after{animation:spin 1.5s linear infinite;border:4px dotted #000;border-radius:50%;border-top-color:transparent;content:"";display:block;height:40px;position:absolute;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
package/build/bundle.js CHANGED
@@ -15563,7 +15563,7 @@
15563
15563
  className: "footer__title-wrapper"
15564
15564
  }, /*#__PURE__*/React__default.createElement("div", {
15565
15565
  className: "footer__newsletter-title"
15566
- }, "Sign up to our news letter"), /*#__PURE__*/React__default.createElement("p", {
15566
+ }, "Sign up for our newsletter"), /*#__PURE__*/React__default.createElement("p", {
15567
15567
  className: "footer__newsletter-text"
15568
15568
  }, "By signing up you agree to our terms & conditions and privacy policy. You can unsubscribe anytime.")), /*#__PURE__*/React__default.createElement("div", {
15569
15569
  className: "footer__newsletter-form"
@@ -15824,7 +15824,9 @@
15824
15824
  noResultsImage = _ref.noResultsImage,
15825
15825
  showNoResults = _ref.showNoResults,
15826
15826
  _ref$isLoading = _ref.isLoading,
15827
- isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading;
15827
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
15828
+ _ref$showCreateIntere = _ref.showCreateInterest,
15829
+ showCreateInterest = _ref$showCreateIntere === void 0 ? true : _ref$showCreateIntere;
15828
15830
 
15829
15831
  var _useState = React.useState(false),
15830
15832
  _useState2 = _slicedToArray(_useState, 2),
@@ -16051,9 +16053,9 @@
16051
16053
  className: "search-results__no-results-text"
16052
16054
  }, /*#__PURE__*/React__default.createElement("p", {
16053
16055
  className: "search-results__no-results-title"
16054
- }, "There are currently no products in stock that match your selection"), /*#__PURE__*/React__default.createElement("p", {
16056
+ }, "There are currently no products in stock that match your selection"), showCreateInterest && /*#__PURE__*/React__default.createElement("p", {
16055
16057
  className: "search-results__no-results-description"
16056
- }, "Create an interest now and receive instant notifications as your interests list."))), /*#__PURE__*/React__default.createElement("button", {
16058
+ }, "Create an interest now and receive instant notifications as your interests list."))), showCreateInterest && /*#__PURE__*/React__default.createElement("button", {
16057
16059
  type: "button",
16058
16060
  className: "search-results__create-interest-button",
16059
16061
  onClick: onCreateInterests
@@ -16324,6 +16326,8 @@
16324
16326
  };
16325
16327
 
16326
16328
  var useSearchClickOutside = function useSearchClickOutside(ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults) {
16329
+ var setSearchValue = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
16330
+ var setShowNoResults = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
16327
16331
  React.useEffect(function () {
16328
16332
  var handleClickOutside = function handleClickOutside(event) {
16329
16333
  if (ref.current && !ref.current.contains(event.target)) {
@@ -16332,7 +16336,15 @@
16332
16336
  setSearchResults({
16333
16337
  brands: [],
16334
16338
  products: []
16335
- });
16339
+ }); // Reset search value and no results state when closing
16340
+
16341
+ if (setSearchValue) {
16342
+ setSearchValue('');
16343
+ }
16344
+
16345
+ if (setShowNoResults) {
16346
+ setShowNoResults(false);
16347
+ }
16336
16348
  }
16337
16349
  };
16338
16350
 
@@ -16340,7 +16352,7 @@
16340
16352
  return function () {
16341
16353
  document.removeEventListener('mousedown', handleClickOutside);
16342
16354
  };
16343
- }, [ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults]);
16355
+ }, [ref, searchResults, setCachedResults, setIsSearchFocused, setSearchResults, setSearchValue, setShowNoResults]);
16344
16356
  };
16345
16357
  var useSearchInputChange = function useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults) {
16346
16358
  return React.useCallback(function (event) {
@@ -16364,15 +16376,20 @@
16364
16376
  };
16365
16377
  var useSearchInputFocus = function useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults) {
16366
16378
  var handleSearchClick = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : undefined;
16379
+ var setShowNoResults = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
16367
16380
  return React.useCallback(function () {
16368
- setIsSearchFocused(true);
16381
+ setIsSearchFocused(true); // Reset no results state when reopening search
16382
+
16383
+ if (setShowNoResults) {
16384
+ setShowNoResults(false);
16385
+ }
16369
16386
 
16370
16387
  if (typeof handleSearchClick === 'function') {
16371
16388
  handleSearchClick();
16372
16389
  } else if (searchValue.trim().length >= 3) {
16373
16390
  setSearchResults(cachedResults);
16374
16391
  }
16375
- }, [searchValue, setIsSearchFocused, cachedResults, setSearchResults, handleSearchClick]);
16392
+ }, [searchValue, setIsSearchFocused, cachedResults, setSearchResults, handleSearchClick, setShowNoResults]);
16376
16393
  };
16377
16394
  var useSearchInputKeyDown = function useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused) {
16378
16395
  var setSearchValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
@@ -16442,7 +16459,9 @@
16442
16459
  app = _ref.app,
16443
16460
  categoryConfig = _ref.categoryConfig,
16444
16461
  onCreateInterests = _ref.onCreateInterests,
16445
- noResultsImage = _ref.noResultsImage;
16462
+ noResultsImage = _ref.noResultsImage,
16463
+ _ref$showCreateIntere = _ref.showCreateInterest,
16464
+ showCreateInterest = _ref$showCreateIntere === void 0 ? true : _ref$showCreateIntere;
16446
16465
 
16447
16466
  var _useState = React.useState(''),
16448
16467
  _useState2 = _slicedToArray(_useState, 2),
@@ -16528,7 +16547,7 @@
16528
16547
  });
16529
16548
  var immediateSearch = createImmediateSearch(setSearchValue, setSearchResults, onSearchSubmit);
16530
16549
  var handleChange = useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults);
16531
- useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
16550
+ useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults, setSearchValue, setShowNoResults);
16532
16551
 
16533
16552
  var handleSearchClick = function handleSearchClick() {
16534
16553
  if (typeof onSearchBarClick === 'function') {
@@ -16539,7 +16558,7 @@
16539
16558
  handleSearchFocus();
16540
16559
  };
16541
16560
 
16542
- var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults);
16561
+ var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults, undefined, setShowNoResults);
16543
16562
  var handleKeyDown = useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused);
16544
16563
 
16545
16564
  function addCategoryToElements(elements, categoryName) {
@@ -16669,7 +16688,8 @@
16669
16688
  onCreateInterests: onCreateInterests,
16670
16689
  noResultsImage: noResultsImage,
16671
16690
  showNoResults: showNoResults,
16672
- isLoading: searchLoading
16691
+ isLoading: searchLoading,
16692
+ showCreateInterest: showCreateInterest
16673
16693
  }), /*#__PURE__*/React__default.createElement("nav", {
16674
16694
  className: "navbar__nav-links navbar__nav-links--wrap"
16675
16695
  }, renderDropdownLinks(), !!stores.length && /*#__PURE__*/React__default.createElement("li", {
@@ -17389,7 +17409,9 @@
17389
17409
  categoryConfig = _ref.categoryConfig,
17390
17410
  name = _ref.name,
17391
17411
  onCreateInterests = _ref.onCreateInterests,
17392
- noResultsImage = _ref.noResultsImage;
17412
+ noResultsImage = _ref.noResultsImage,
17413
+ _ref$showCreateIntere = _ref.showCreateInterest,
17414
+ showCreateInterest = _ref$showCreateIntere === void 0 ? true : _ref$showCreateIntere;
17393
17415
 
17394
17416
  var _useState = React.useState(false),
17395
17417
  _useState2 = _slicedToArray(_useState, 2),
@@ -17478,8 +17500,8 @@
17478
17500
 
17479
17501
  fetchInitialSearchData(initialSearchData, setInitialSearchView);
17480
17502
  }, [initialSearchData, fetchInitialSearchData]);
17481
- useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
17482
- var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults);
17503
+ useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults, setSearchValue, setShowNoResults);
17504
+ var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults, undefined, setShowNoResults);
17483
17505
  React.useEffect(function () {
17484
17506
  if (showSearchBar && searchInputRef.current) {
17485
17507
  searchInputRef.current.focus();
@@ -17702,7 +17724,8 @@
17702
17724
  onCreateInterests: onCreateInterests,
17703
17725
  noResultsImage: noResultsImage,
17704
17726
  showNoResults: showNoResults,
17705
- isLoading: searchLoading
17727
+ isLoading: searchLoading,
17728
+ showCreateInterest: showCreateInterest
17706
17729
  }))), shop && /*#__PURE__*/React__default.createElement(LuxitySideNav, {
17707
17730
  accordionIcon: accordionIcon,
17708
17731
  logoSrc: logoSrc,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bonlineza/luxity-lib",
3
- "version": "2.39.1",
3
+ "version": "2.39.2",
4
4
  "scripts": {
5
5
  "start": "start-storybook -p 9001 -c .storybook -s ./public",
6
6
  "clean": "rimraf ./build/*.*",