@bonlineza/luxity-lib 2.34.4 → 2.34.6

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.
@@ -767,11 +767,22 @@
767
767
  };
768
768
 
769
769
  var debouncedSearch = React.useCallback(debounce(function (nextValue) {
770
+ var isKeyDown = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
770
771
  setSearchLoading(true);
771
772
  axios.post(endpoint, searchProducts(nextValue, 6)).then(function (response) {
772
773
  setSearchResults(response.data.data.luxity_products_serach_results);
773
774
  var ids = response.data.data.luxity_products_serach_results.luxity_product_ids;
774
775
  onProductIdsReceived(ids);
776
+
777
+ if (isKeyDown) {
778
+ // reset the search results on keydown
779
+ setSearchResults({
780
+ brands: [],
781
+ products: []
782
+ });
783
+ onSearchSubmit(nextValue);
784
+ }
785
+
775
786
  setSearchLoading(false);
776
787
  }).catch(function () {
777
788
  setSearchLoading(false);
@@ -807,8 +818,7 @@
807
818
 
808
819
  var handleKeyDown = function handleKeyDown(event) {
809
820
  if (event.key === 'Enter') {
810
- onSearchSubmit(searchValue);
811
- setSearchValue('');
821
+ debouncedSearch(searchValue, true);
812
822
  } else if (event.key === 'Escape') {
813
823
  setSearchValue('');
814
824
  }
@@ -493,6 +493,7 @@
493
493
  var BrandsDropDown = function BrandsDropDown(_ref) {
494
494
  var subMenuOpen = _ref.subMenuOpen,
495
495
  onBackClick = _ref.onBackClick,
496
+ onCloseSideNav = _ref.onCloseSideNav,
496
497
  backIcon = _ref.backIcon,
497
498
  subMenuCategoryTitle = _ref.subMenuCategoryTitle,
498
499
  productUrl = _ref.productUrl,
@@ -502,9 +503,16 @@
502
503
  brandsList = _ref$brandsList === void 0 ? [] : _ref$brandsList,
503
504
  categorySlug = _ref.categorySlug,
504
505
  isLoading = _ref.isLoading,
505
- hasError = _ref.hasError,
506
- LinkComponent = _ref.LinkComponent,
507
- setSubMenuOpen = _ref.setSubMenuOpen;
506
+ hasError = _ref.hasError;
507
+
508
+ var handleLinkClick = function handleLinkClick(event) {
509
+ event.preventDefault();
510
+ var href = event.currentTarget.getAttribute('href');
511
+ onBackClick();
512
+ onCloseSideNav();
513
+ window.location.href = href;
514
+ };
515
+
508
516
  return /*#__PURE__*/React__default.createElement("div", {
509
517
  className: "side-nav__content ".concat(subMenuOpen ? '' : 'side-nav__content--hidden')
510
518
  }, hasError ? /*#__PURE__*/React__default.createElement("div", {
@@ -530,18 +538,14 @@
530
538
  }, subMenuCategoryTitle), /*#__PURE__*/React__default.createElement("div", {
531
539
  className: "side-nav__elements"
532
540
  }, categoryElements.map(function (categoryElement) {
533
- return categoryElement.category ? /*#__PURE__*/React__default.createElement(LinkComponent, {
541
+ return categoryElement.category ? /*#__PURE__*/React__default.createElement("a", {
534
542
  href: "".concat(productUrl, "/").concat(categoryElement.category, "/").concat(categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.slug),
535
- onClick: function onClick() {
536
- return setSubMenuOpen(false);
537
- },
543
+ onClick: handleLinkClick,
538
544
  className: "dropdown__element",
539
545
  key: categoryElement.name
540
- }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase()) : /*#__PURE__*/React__default.createElement(LinkComponent, {
546
+ }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase()) : /*#__PURE__*/React__default.createElement("a", {
541
547
  href: "".concat(productUrl, "/").concat(categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.slug),
542
- onClick: function onClick() {
543
- return setSubMenuOpen(false);
544
- },
548
+ onClick: handleLinkClick,
545
549
  className: "dropdown__element",
546
550
  key: categoryElement.name
547
551
  }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase());
@@ -549,18 +553,14 @@
549
553
  className: "side-nav__elements"
550
554
  }, /*#__PURE__*/React__default.createElement("div", {
551
555
  className: "side-nav__sub-menu-title"
552
- }, subMenuBrandsTitle), /*#__PURE__*/React__default.createElement(LinkComponent, {
556
+ }, subMenuBrandsTitle), /*#__PURE__*/React__default.createElement("a", {
553
557
  href: "".concat(productUrl, "/").concat(categorySlug === 'new' ? 'brands' : categorySlug),
554
- onClick: function onClick() {
555
- return setSubMenuOpen(false);
556
- },
558
+ onClick: handleLinkClick,
557
559
  className: "side-nav__element"
558
560
  }, "All Brands"), !!brandsList.length && brandsList.map(function (brand) {
559
- return /*#__PURE__*/React__default.createElement(LinkComponent, {
561
+ return /*#__PURE__*/React__default.createElement("a", {
560
562
  href: "".concat(productUrl, "/").concat(categorySlug === 'new' ? 'brands' : categorySlug, "/").concat(brand.slug),
561
- onClick: function onClick() {
562
- return setSubMenuOpen(false);
563
- },
563
+ onClick: handleLinkClick,
564
564
  className: "side-nav__element"
565
565
  }, brand.name);
566
566
  })))));
@@ -816,7 +816,6 @@
816
816
  showSideNav = _ref.showSideNav,
817
817
  onMenuClick = _ref.onMenuClick,
818
818
  menuData = _ref.menuData,
819
- LinkComponent = _ref.LinkComponent,
820
819
  currency = _ref.currency,
821
820
  currencyOptions = _ref.currencyOptions,
822
821
  onCurrencyChange = _ref.onCurrencyChange,
@@ -879,7 +878,7 @@
879
878
  setSubMenuOpen(false);
880
879
  setDisplayedSubMenu('');
881
880
 
882
- if (e.key === 'Enter') {
881
+ if (e && e.key === 'Enter') {
883
882
  e.preventDefault();
884
883
  }
885
884
  };
@@ -1083,8 +1082,7 @@
1083
1082
  categorySlug: displayedSubMenu,
1084
1083
  isLoading: loading,
1085
1084
  hasError: hasError,
1086
- LinkComponent: LinkComponent,
1087
- setSubMenuOpen: onCloseSideNav
1085
+ onCloseSideNav: onCloseSideNav
1088
1086
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
1089
1087
  subMenuOpen: subMenuOpen && displayedSubMenu === 'bags',
1090
1088
  onBackClick: onBackClick,
@@ -1097,8 +1095,7 @@
1097
1095
  categorySlug: displayedSubMenu,
1098
1096
  isLoading: loading,
1099
1097
  hasError: hasError,
1100
- LinkComponent: LinkComponent,
1101
- setSubMenuOpen: onCloseSideNav
1098
+ onCloseSideNav: onCloseSideNav
1102
1099
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
1103
1100
  subMenuOpen: subMenuOpen && displayedSubMenu === 'shoes',
1104
1101
  onBackClick: onBackClick,
@@ -1111,8 +1108,7 @@
1111
1108
  categorySlug: displayedSubMenu,
1112
1109
  isLoading: loading,
1113
1110
  hasError: hasError,
1114
- LinkComponent: LinkComponent,
1115
- setSubMenuOpen: onCloseSideNav
1111
+ onCloseSideNav: onCloseSideNav
1116
1112
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
1117
1113
  subMenuOpen: subMenuOpen && displayedSubMenu === 'apparel',
1118
1114
  onBackClick: onBackClick,
@@ -1125,8 +1121,7 @@
1125
1121
  categorySlug: displayedSubMenu,
1126
1122
  isLoading: loading,
1127
1123
  hasError: hasError,
1128
- LinkComponent: LinkComponent,
1129
- setSubMenuOpen: onCloseSideNav
1124
+ onCloseSideNav: onCloseSideNav
1130
1125
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
1131
1126
  subMenuOpen: subMenuOpen && displayedSubMenu === 'accessories',
1132
1127
  onBackClick: onBackClick,
@@ -1139,8 +1134,7 @@
1139
1134
  categorySlug: displayedSubMenu,
1140
1135
  isLoading: loading,
1141
1136
  hasError: hasError,
1142
- LinkComponent: LinkComponent,
1143
- setSubMenuOpen: onCloseSideNav
1137
+ onCloseSideNav: onCloseSideNav
1144
1138
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
1145
1139
  subMenuOpen: subMenuOpen && displayedSubMenu === 'watches',
1146
1140
  onBackClick: onBackClick,
@@ -1153,8 +1147,7 @@
1153
1147
  categorySlug: displayedSubMenu,
1154
1148
  isLoading: loading,
1155
1149
  hasError: hasError,
1156
- LinkComponent: LinkComponent,
1157
- setSubMenuOpen: onCloseSideNav
1150
+ onCloseSideNav: onCloseSideNav
1158
1151
  }), displayedSubMenu === 'stores' && /*#__PURE__*/React__default.createElement("div", {
1159
1152
  className: "side-nav__content"
1160
1153
  }, /*#__PURE__*/React__default.createElement(StoresDropdown, {
@@ -1267,7 +1260,6 @@
1267
1260
  onSubmissionsClick = _ref.onSubmissionsClick,
1268
1261
  onPastSalesClick = _ref.onPastSalesClick,
1269
1262
  onPaidOutClick = _ref.onPaidOutClick,
1270
- LinkComponent = _ref.LinkComponent,
1271
1263
  currency = _ref.currency,
1272
1264
  currencyOptions = _ref.currencyOptions,
1273
1265
  onCurrencyChange = _ref.onCurrencyChange,
@@ -1322,11 +1314,22 @@
1322
1314
  };
1323
1315
 
1324
1316
  var debouncedSearch = React.useCallback(debounce(function (nextValue) {
1317
+ var isKeyDown = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1325
1318
  setSearchLoading(true);
1326
1319
  axios.post(endpoint, searchProducts(nextValue, 6)).then(function (response) {
1327
1320
  setSearchResults(response.data.data.luxity_products_serach_results);
1328
1321
  var ids = response.data.data.luxity_products_serach_results.luxity_product_ids;
1329
1322
  onProductIdsReceived(ids);
1323
+
1324
+ if (isKeyDown) {
1325
+ // reset the search results on keydown
1326
+ setSearchResults({
1327
+ brands: [],
1328
+ products: []
1329
+ });
1330
+ onSearchSubmit(nextValue);
1331
+ }
1332
+
1330
1333
  setSearchLoading(false);
1331
1334
  }).catch(function () {
1332
1335
  setSearchLoading(false);
@@ -1349,8 +1352,7 @@
1349
1352
 
1350
1353
  var handleKeyDown = function handleKeyDown(event) {
1351
1354
  if (event.key === 'Enter') {
1352
- onSearchSubmit(searchValue);
1353
- setSearchValue('');
1355
+ debouncedSearch(searchValue, true);
1354
1356
  } else if (event.key === 'Escape') {
1355
1357
  setSearchValue('');
1356
1358
  }
@@ -1544,7 +1546,6 @@
1544
1546
  onMenuClick: onMenuClick,
1545
1547
  endpoint: endpoint,
1546
1548
  menuData: menuData,
1547
- LinkComponent: LinkComponent,
1548
1549
  currency: currency,
1549
1550
  currencyOptions: currencyOptions,
1550
1551
  onCurrencyChange: onCurrencyChange,
package/LuxitySideNav.js CHANGED
@@ -182,6 +182,7 @@
182
182
  var BrandsDropDown = function BrandsDropDown(_ref) {
183
183
  var subMenuOpen = _ref.subMenuOpen,
184
184
  onBackClick = _ref.onBackClick,
185
+ onCloseSideNav = _ref.onCloseSideNav,
185
186
  backIcon = _ref.backIcon,
186
187
  subMenuCategoryTitle = _ref.subMenuCategoryTitle,
187
188
  productUrl = _ref.productUrl,
@@ -191,9 +192,16 @@
191
192
  brandsList = _ref$brandsList === void 0 ? [] : _ref$brandsList,
192
193
  categorySlug = _ref.categorySlug,
193
194
  isLoading = _ref.isLoading,
194
- hasError = _ref.hasError,
195
- LinkComponent = _ref.LinkComponent,
196
- setSubMenuOpen = _ref.setSubMenuOpen;
195
+ hasError = _ref.hasError;
196
+
197
+ var handleLinkClick = function handleLinkClick(event) {
198
+ event.preventDefault();
199
+ var href = event.currentTarget.getAttribute('href');
200
+ onBackClick();
201
+ onCloseSideNav();
202
+ window.location.href = href;
203
+ };
204
+
197
205
  return /*#__PURE__*/React__default.createElement("div", {
198
206
  className: "side-nav__content ".concat(subMenuOpen ? '' : 'side-nav__content--hidden')
199
207
  }, hasError ? /*#__PURE__*/React__default.createElement("div", {
@@ -219,18 +227,14 @@
219
227
  }, subMenuCategoryTitle), /*#__PURE__*/React__default.createElement("div", {
220
228
  className: "side-nav__elements"
221
229
  }, categoryElements.map(function (categoryElement) {
222
- return categoryElement.category ? /*#__PURE__*/React__default.createElement(LinkComponent, {
230
+ return categoryElement.category ? /*#__PURE__*/React__default.createElement("a", {
223
231
  href: "".concat(productUrl, "/").concat(categoryElement.category, "/").concat(categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.slug),
224
- onClick: function onClick() {
225
- return setSubMenuOpen(false);
226
- },
232
+ onClick: handleLinkClick,
227
233
  className: "dropdown__element",
228
234
  key: categoryElement.name
229
- }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase()) : /*#__PURE__*/React__default.createElement(LinkComponent, {
235
+ }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase()) : /*#__PURE__*/React__default.createElement("a", {
230
236
  href: "".concat(productUrl, "/").concat(categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.slug),
231
- onClick: function onClick() {
232
- return setSubMenuOpen(false);
233
- },
237
+ onClick: handleLinkClick,
234
238
  className: "dropdown__element",
235
239
  key: categoryElement.name
236
240
  }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase());
@@ -238,18 +242,14 @@
238
242
  className: "side-nav__elements"
239
243
  }, /*#__PURE__*/React__default.createElement("div", {
240
244
  className: "side-nav__sub-menu-title"
241
- }, subMenuBrandsTitle), /*#__PURE__*/React__default.createElement(LinkComponent, {
245
+ }, subMenuBrandsTitle), /*#__PURE__*/React__default.createElement("a", {
242
246
  href: "".concat(productUrl, "/").concat(categorySlug === 'new' ? 'brands' : categorySlug),
243
- onClick: function onClick() {
244
- return setSubMenuOpen(false);
245
- },
247
+ onClick: handleLinkClick,
246
248
  className: "side-nav__element"
247
249
  }, "All Brands"), !!brandsList.length && brandsList.map(function (brand) {
248
- return /*#__PURE__*/React__default.createElement(LinkComponent, {
250
+ return /*#__PURE__*/React__default.createElement("a", {
249
251
  href: "".concat(productUrl, "/").concat(categorySlug === 'new' ? 'brands' : categorySlug, "/").concat(brand.slug),
250
- onClick: function onClick() {
251
- return setSubMenuOpen(false);
252
- },
252
+ onClick: handleLinkClick,
253
253
  className: "side-nav__element"
254
254
  }, brand.name);
255
255
  })))));
@@ -505,7 +505,6 @@
505
505
  showSideNav = _ref.showSideNav,
506
506
  onMenuClick = _ref.onMenuClick,
507
507
  menuData = _ref.menuData,
508
- LinkComponent = _ref.LinkComponent,
509
508
  currency = _ref.currency,
510
509
  currencyOptions = _ref.currencyOptions,
511
510
  onCurrencyChange = _ref.onCurrencyChange,
@@ -568,7 +567,7 @@
568
567
  setSubMenuOpen(false);
569
568
  setDisplayedSubMenu('');
570
569
 
571
- if (e.key === 'Enter') {
570
+ if (e && e.key === 'Enter') {
572
571
  e.preventDefault();
573
572
  }
574
573
  };
@@ -772,8 +771,7 @@
772
771
  categorySlug: displayedSubMenu,
773
772
  isLoading: loading,
774
773
  hasError: hasError,
775
- LinkComponent: LinkComponent,
776
- setSubMenuOpen: onCloseSideNav
774
+ onCloseSideNav: onCloseSideNav
777
775
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
778
776
  subMenuOpen: subMenuOpen && displayedSubMenu === 'bags',
779
777
  onBackClick: onBackClick,
@@ -786,8 +784,7 @@
786
784
  categorySlug: displayedSubMenu,
787
785
  isLoading: loading,
788
786
  hasError: hasError,
789
- LinkComponent: LinkComponent,
790
- setSubMenuOpen: onCloseSideNav
787
+ onCloseSideNav: onCloseSideNav
791
788
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
792
789
  subMenuOpen: subMenuOpen && displayedSubMenu === 'shoes',
793
790
  onBackClick: onBackClick,
@@ -800,8 +797,7 @@
800
797
  categorySlug: displayedSubMenu,
801
798
  isLoading: loading,
802
799
  hasError: hasError,
803
- LinkComponent: LinkComponent,
804
- setSubMenuOpen: onCloseSideNav
800
+ onCloseSideNav: onCloseSideNav
805
801
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
806
802
  subMenuOpen: subMenuOpen && displayedSubMenu === 'apparel',
807
803
  onBackClick: onBackClick,
@@ -814,8 +810,7 @@
814
810
  categorySlug: displayedSubMenu,
815
811
  isLoading: loading,
816
812
  hasError: hasError,
817
- LinkComponent: LinkComponent,
818
- setSubMenuOpen: onCloseSideNav
813
+ onCloseSideNav: onCloseSideNav
819
814
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
820
815
  subMenuOpen: subMenuOpen && displayedSubMenu === 'accessories',
821
816
  onBackClick: onBackClick,
@@ -828,8 +823,7 @@
828
823
  categorySlug: displayedSubMenu,
829
824
  isLoading: loading,
830
825
  hasError: hasError,
831
- LinkComponent: LinkComponent,
832
- setSubMenuOpen: onCloseSideNav
826
+ onCloseSideNav: onCloseSideNav
833
827
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
834
828
  subMenuOpen: subMenuOpen && displayedSubMenu === 'watches',
835
829
  onBackClick: onBackClick,
@@ -842,8 +836,7 @@
842
836
  categorySlug: displayedSubMenu,
843
837
  isLoading: loading,
844
838
  hasError: hasError,
845
- LinkComponent: LinkComponent,
846
- setSubMenuOpen: onCloseSideNav
839
+ onCloseSideNav: onCloseSideNav
847
840
  }), displayedSubMenu === 'stores' && /*#__PURE__*/React__default.createElement("div", {
848
841
  className: "side-nav__content"
849
842
  }, /*#__PURE__*/React__default.createElement(StoresDropdown, {
@@ -0,0 +1,15 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react')) :
3
+ typeof define === 'function' && define.amd ? define(['react'], factory) :
4
+ (global = global || self, global.TestComponent = factory(global.React));
5
+ }(this, (function (React) { 'use strict';
6
+
7
+ React = React && Object.prototype.hasOwnProperty.call(React, 'default') ? React['default'] : React;
8
+
9
+ var TestComponent = function TestComponent() {
10
+ return /*#__PURE__*/React.createElement("div", null, "TestComponent");
11
+ };
12
+
13
+ return TestComponent;
14
+
15
+ })));
package/build/bundle.css CHANGED
@@ -1 +1 @@
1
- .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;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%}.navbar{box-shadow:2px 2px 10px #dfdede;display:flex;padding-bottom:10px;padding-top:20px;position:relative}.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-bottom:20px;padding-left:32px;padding-right:32px}.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;justify-content:space-between;width:100%}.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__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:30px}.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:125px}}.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}@media only screen and (max-width:879px){.navbar__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__vip-icon{height:16px;position:absolute;right:-12px;top:-4px;width:16px}.navbar__cart-icon{position:relative}.navbar__cart-count{align-items:center;background-color:#000;border-radius:50%;bottom:50%;color:#fff;display:flex;font-size:13px;height:20px;justify-content:center;left:100%;position:absolute;width:20px}.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%}@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}.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}.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
+ .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%}@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}.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-bottom:20px;padding-left:32px;padding-right:32px}.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;justify-content:space-between;width:100%}.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__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:30px}.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:125px}}.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}@media only screen and (max-width:879px){.navbar__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__vip-icon{height:16px;position:absolute;right:-12px;top:-4px;width:16px}.navbar__cart-icon{position:relative}.navbar__cart-count{align-items:center;background-color:#000;border-radius:50%;bottom:50%;color:#fff;display:flex;font-size:13px;height:20px;justify-content:center;left:100%;position:absolute;width:20px}.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%}.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)}}.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}
package/build/bundle.js CHANGED
@@ -14939,11 +14939,22 @@
14939
14939
  };
14940
14940
 
14941
14941
  var debouncedSearch = React.useCallback(debounce(function (nextValue) {
14942
+ var isKeyDown = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
14942
14943
  setSearchLoading(true);
14943
14944
  axios.post(endpoint, searchProducts(nextValue, 6)).then(function (response) {
14944
14945
  setSearchResults(response.data.data.luxity_products_serach_results);
14945
14946
  var ids = response.data.data.luxity_products_serach_results.luxity_product_ids;
14946
14947
  onProductIdsReceived(ids);
14948
+
14949
+ if (isKeyDown) {
14950
+ // reset the search results on keydown
14951
+ setSearchResults({
14952
+ brands: [],
14953
+ products: []
14954
+ });
14955
+ onSearchSubmit(nextValue);
14956
+ }
14957
+
14947
14958
  setSearchLoading(false);
14948
14959
  }).catch(function () {
14949
14960
  setSearchLoading(false);
@@ -14979,8 +14990,7 @@
14979
14990
 
14980
14991
  var handleKeyDown = function handleKeyDown(event) {
14981
14992
  if (event.key === 'Enter') {
14982
- onSearchSubmit(searchValue);
14983
- setSearchValue('');
14993
+ debouncedSearch(searchValue, true);
14984
14994
  } else if (event.key === 'Escape') {
14985
14995
  setSearchValue('');
14986
14996
  }
@@ -15293,6 +15303,7 @@
15293
15303
  var BrandsDropDown = function BrandsDropDown(_ref) {
15294
15304
  var subMenuOpen = _ref.subMenuOpen,
15295
15305
  onBackClick = _ref.onBackClick,
15306
+ onCloseSideNav = _ref.onCloseSideNav,
15296
15307
  backIcon = _ref.backIcon,
15297
15308
  subMenuCategoryTitle = _ref.subMenuCategoryTitle,
15298
15309
  productUrl = _ref.productUrl,
@@ -15302,9 +15313,16 @@
15302
15313
  brandsList = _ref$brandsList === void 0 ? [] : _ref$brandsList,
15303
15314
  categorySlug = _ref.categorySlug,
15304
15315
  isLoading = _ref.isLoading,
15305
- hasError = _ref.hasError,
15306
- LinkComponent = _ref.LinkComponent,
15307
- setSubMenuOpen = _ref.setSubMenuOpen;
15316
+ hasError = _ref.hasError;
15317
+
15318
+ var handleLinkClick = function handleLinkClick(event) {
15319
+ event.preventDefault();
15320
+ var href = event.currentTarget.getAttribute('href');
15321
+ onBackClick();
15322
+ onCloseSideNav();
15323
+ window.location.href = href;
15324
+ };
15325
+
15308
15326
  return /*#__PURE__*/React__default.createElement("div", {
15309
15327
  className: "side-nav__content ".concat(subMenuOpen ? '' : 'side-nav__content--hidden')
15310
15328
  }, hasError ? /*#__PURE__*/React__default.createElement("div", {
@@ -15330,18 +15348,14 @@
15330
15348
  }, subMenuCategoryTitle), /*#__PURE__*/React__default.createElement("div", {
15331
15349
  className: "side-nav__elements"
15332
15350
  }, categoryElements.map(function (categoryElement) {
15333
- return categoryElement.category ? /*#__PURE__*/React__default.createElement(LinkComponent, {
15351
+ return categoryElement.category ? /*#__PURE__*/React__default.createElement("a", {
15334
15352
  href: "".concat(productUrl, "/").concat(categoryElement.category, "/").concat(categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.slug),
15335
- onClick: function onClick() {
15336
- return setSubMenuOpen(false);
15337
- },
15353
+ onClick: handleLinkClick,
15338
15354
  className: "dropdown__element",
15339
15355
  key: categoryElement.name
15340
- }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase()) : /*#__PURE__*/React__default.createElement(LinkComponent, {
15356
+ }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase()) : /*#__PURE__*/React__default.createElement("a", {
15341
15357
  href: "".concat(productUrl, "/").concat(categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.slug),
15342
- onClick: function onClick() {
15343
- return setSubMenuOpen(false);
15344
- },
15358
+ onClick: handleLinkClick,
15345
15359
  className: "dropdown__element",
15346
15360
  key: categoryElement.name
15347
15361
  }, categoryElement === null || categoryElement === void 0 ? void 0 : categoryElement.name.toLowerCase());
@@ -15349,18 +15363,14 @@
15349
15363
  className: "side-nav__elements"
15350
15364
  }, /*#__PURE__*/React__default.createElement("div", {
15351
15365
  className: "side-nav__sub-menu-title"
15352
- }, subMenuBrandsTitle), /*#__PURE__*/React__default.createElement(LinkComponent, {
15366
+ }, subMenuBrandsTitle), /*#__PURE__*/React__default.createElement("a", {
15353
15367
  href: "".concat(productUrl, "/").concat(categorySlug === 'new' ? 'brands' : categorySlug),
15354
- onClick: function onClick() {
15355
- return setSubMenuOpen(false);
15356
- },
15368
+ onClick: handleLinkClick,
15357
15369
  className: "side-nav__element"
15358
15370
  }, "All Brands"), !!brandsList.length && brandsList.map(function (brand) {
15359
- return /*#__PURE__*/React__default.createElement(LinkComponent, {
15371
+ return /*#__PURE__*/React__default.createElement("a", {
15360
15372
  href: "".concat(productUrl, "/").concat(categorySlug === 'new' ? 'brands' : categorySlug, "/").concat(brand.slug),
15361
- onClick: function onClick() {
15362
- return setSubMenuOpen(false);
15363
- },
15373
+ onClick: handleLinkClick,
15364
15374
  className: "side-nav__element"
15365
15375
  }, brand.name);
15366
15376
  })))));
@@ -15382,7 +15392,6 @@
15382
15392
  showSideNav = _ref.showSideNav,
15383
15393
  onMenuClick = _ref.onMenuClick,
15384
15394
  menuData = _ref.menuData,
15385
- LinkComponent = _ref.LinkComponent,
15386
15395
  currency = _ref.currency,
15387
15396
  currencyOptions = _ref.currencyOptions,
15388
15397
  onCurrencyChange = _ref.onCurrencyChange,
@@ -15445,7 +15454,7 @@
15445
15454
  setSubMenuOpen(false);
15446
15455
  setDisplayedSubMenu('');
15447
15456
 
15448
- if (e.key === 'Enter') {
15457
+ if (e && e.key === 'Enter') {
15449
15458
  e.preventDefault();
15450
15459
  }
15451
15460
  };
@@ -15649,8 +15658,7 @@
15649
15658
  categorySlug: displayedSubMenu,
15650
15659
  isLoading: loading,
15651
15660
  hasError: hasError,
15652
- LinkComponent: LinkComponent,
15653
- setSubMenuOpen: onCloseSideNav
15661
+ onCloseSideNav: onCloseSideNav
15654
15662
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
15655
15663
  subMenuOpen: subMenuOpen && displayedSubMenu === 'bags',
15656
15664
  onBackClick: onBackClick,
@@ -15663,8 +15671,7 @@
15663
15671
  categorySlug: displayedSubMenu,
15664
15672
  isLoading: loading,
15665
15673
  hasError: hasError,
15666
- LinkComponent: LinkComponent,
15667
- setSubMenuOpen: onCloseSideNav
15674
+ onCloseSideNav: onCloseSideNav
15668
15675
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
15669
15676
  subMenuOpen: subMenuOpen && displayedSubMenu === 'shoes',
15670
15677
  onBackClick: onBackClick,
@@ -15677,8 +15684,7 @@
15677
15684
  categorySlug: displayedSubMenu,
15678
15685
  isLoading: loading,
15679
15686
  hasError: hasError,
15680
- LinkComponent: LinkComponent,
15681
- setSubMenuOpen: onCloseSideNav
15687
+ onCloseSideNav: onCloseSideNav
15682
15688
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
15683
15689
  subMenuOpen: subMenuOpen && displayedSubMenu === 'apparel',
15684
15690
  onBackClick: onBackClick,
@@ -15691,8 +15697,7 @@
15691
15697
  categorySlug: displayedSubMenu,
15692
15698
  isLoading: loading,
15693
15699
  hasError: hasError,
15694
- LinkComponent: LinkComponent,
15695
- setSubMenuOpen: onCloseSideNav
15700
+ onCloseSideNav: onCloseSideNav
15696
15701
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
15697
15702
  subMenuOpen: subMenuOpen && displayedSubMenu === 'accessories',
15698
15703
  onBackClick: onBackClick,
@@ -15705,8 +15710,7 @@
15705
15710
  categorySlug: displayedSubMenu,
15706
15711
  isLoading: loading,
15707
15712
  hasError: hasError,
15708
- LinkComponent: LinkComponent,
15709
- setSubMenuOpen: onCloseSideNav
15713
+ onCloseSideNav: onCloseSideNav
15710
15714
  }), /*#__PURE__*/React__default.createElement(BrandsDropDown, {
15711
15715
  subMenuOpen: subMenuOpen && displayedSubMenu === 'watches',
15712
15716
  onBackClick: onBackClick,
@@ -15719,8 +15723,7 @@
15719
15723
  categorySlug: displayedSubMenu,
15720
15724
  isLoading: loading,
15721
15725
  hasError: hasError,
15722
- LinkComponent: LinkComponent,
15723
- setSubMenuOpen: onCloseSideNav
15726
+ onCloseSideNav: onCloseSideNav
15724
15727
  }), displayedSubMenu === 'stores' && /*#__PURE__*/React__default.createElement("div", {
15725
15728
  className: "side-nav__content"
15726
15729
  }, /*#__PURE__*/React__default.createElement(StoresDropdown$1, {
@@ -15954,7 +15957,6 @@
15954
15957
  onSubmissionsClick = _ref.onSubmissionsClick,
15955
15958
  onPastSalesClick = _ref.onPastSalesClick,
15956
15959
  onPaidOutClick = _ref.onPaidOutClick,
15957
- LinkComponent = _ref.LinkComponent,
15958
15960
  currency = _ref.currency,
15959
15961
  currencyOptions = _ref.currencyOptions,
15960
15962
  onCurrencyChange = _ref.onCurrencyChange,
@@ -16009,11 +16011,22 @@
16009
16011
  };
16010
16012
 
16011
16013
  var debouncedSearch = React.useCallback(debounce(function (nextValue) {
16014
+ var isKeyDown = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
16012
16015
  setSearchLoading(true);
16013
16016
  axios.post(endpoint, searchProducts(nextValue, 6)).then(function (response) {
16014
16017
  setSearchResults(response.data.data.luxity_products_serach_results);
16015
16018
  var ids = response.data.data.luxity_products_serach_results.luxity_product_ids;
16016
16019
  onProductIdsReceived(ids);
16020
+
16021
+ if (isKeyDown) {
16022
+ // reset the search results on keydown
16023
+ setSearchResults({
16024
+ brands: [],
16025
+ products: []
16026
+ });
16027
+ onSearchSubmit(nextValue);
16028
+ }
16029
+
16017
16030
  setSearchLoading(false);
16018
16031
  }).catch(function () {
16019
16032
  setSearchLoading(false);
@@ -16036,8 +16049,7 @@
16036
16049
 
16037
16050
  var handleKeyDown = function handleKeyDown(event) {
16038
16051
  if (event.key === 'Enter') {
16039
- onSearchSubmit(searchValue);
16040
- setSearchValue('');
16052
+ debouncedSearch(searchValue, true);
16041
16053
  } else if (event.key === 'Escape') {
16042
16054
  setSearchValue('');
16043
16055
  }
@@ -16231,7 +16243,6 @@
16231
16243
  onMenuClick: onMenuClick,
16232
16244
  endpoint: endpoint,
16233
16245
  menuData: menuData,
16234
- LinkComponent: LinkComponent,
16235
16246
  currency: currency,
16236
16247
  currencyOptions: currencyOptions,
16237
16248
  onCurrencyChange: onCurrencyChange,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bonlineza/luxity-lib",
3
- "version": "2.34.4",
3
+ "version": "2.34.6",
4
4
  "scripts": {
5
5
  "start": "start-storybook -p 9001 -c .storybook -s ./public",
6
6
  "clean": "rimraf ./build/*.*",