@bonlineza/luxity-lib 2.37.1 → 2.37.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.
- package/LuxityDesktopHeader.js +62 -12
- package/LuxityMobileHeader.js +63 -8
- package/build/bundle.css +1 -1
- package/build/bundle.js +75 -14
- package/package.json +1 -1
- package/build/.gitignore +0 -3
- package/build/.npmignore +0 -0
package/LuxityDesktopHeader.js
CHANGED
|
@@ -310,7 +310,9 @@
|
|
|
310
310
|
isSearchFocused = _ref.isSearchFocused,
|
|
311
311
|
setIsSearchFocused = _ref.setIsSearchFocused,
|
|
312
312
|
currency = _ref.currency,
|
|
313
|
-
currencySymbol = _ref.currencySymbol
|
|
313
|
+
currencySymbol = _ref.currencySymbol,
|
|
314
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
315
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick;
|
|
314
316
|
|
|
315
317
|
var _useState = React.useState(false),
|
|
316
318
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -358,7 +360,18 @@
|
|
|
358
360
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
359
361
|
key: product.link,
|
|
360
362
|
href: product.link,
|
|
361
|
-
className: "product-card"
|
|
363
|
+
className: "product-card",
|
|
364
|
+
onClick: function onClick() {
|
|
365
|
+
if (typeof onProductSearchResultClick === 'function') {
|
|
366
|
+
onProductSearchResultClick({
|
|
367
|
+
product_name: product.name,
|
|
368
|
+
product_brand: product.brand,
|
|
369
|
+
product_link: product.link,
|
|
370
|
+
search_string: searchValue,
|
|
371
|
+
is_popular: shouldShowInitialData
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
}
|
|
362
375
|
}, product.featured_image && /*#__PURE__*/React__default.createElement("div", {
|
|
363
376
|
className: "product-card__image-container"
|
|
364
377
|
}, /*#__PURE__*/React__default.createElement("img", {
|
|
@@ -411,13 +424,33 @@
|
|
|
411
424
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
412
425
|
key: brand.id,
|
|
413
426
|
href: getBrandLink(brand),
|
|
414
|
-
className: "search-results__item"
|
|
427
|
+
className: "search-results__item",
|
|
428
|
+
onClick: function onClick() {
|
|
429
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
430
|
+
onBrandSearchResultClick({
|
|
431
|
+
brand_name: brand.name,
|
|
432
|
+
brand_link: getBrandLink(brand),
|
|
433
|
+
search_string: searchValue,
|
|
434
|
+
is_trending: true
|
|
435
|
+
});
|
|
436
|
+
}
|
|
437
|
+
}
|
|
415
438
|
}, brand.name);
|
|
416
439
|
}) : (_limitBrands2 = limitBrands(searchResults === null || searchResults === void 0 ? void 0 : searchResults.brands)) === null || _limitBrands2 === void 0 ? void 0 : _limitBrands2.map(function (brand) {
|
|
417
440
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
418
441
|
key: brand.link,
|
|
419
442
|
href: brand.link,
|
|
420
|
-
className: "search-results__item"
|
|
443
|
+
className: "search-results__item",
|
|
444
|
+
onClick: function onClick() {
|
|
445
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
446
|
+
onBrandSearchResultClick({
|
|
447
|
+
brand_name: brand.name,
|
|
448
|
+
brand_link: brand.link,
|
|
449
|
+
search_string: searchValue,
|
|
450
|
+
is_trending: false
|
|
451
|
+
});
|
|
452
|
+
}
|
|
453
|
+
}
|
|
421
454
|
}, brand.name);
|
|
422
455
|
}))), /*#__PURE__*/React__default.createElement("div", {
|
|
423
456
|
className: "search-results__section"
|
|
@@ -665,7 +698,8 @@
|
|
|
665
698
|
var useSearch = function useSearch(_ref) {
|
|
666
699
|
var endpoint = _ref.endpoint,
|
|
667
700
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
668
|
-
currency = _ref.currency
|
|
701
|
+
currency = _ref.currency,
|
|
702
|
+
onSearchPreview = _ref.onSearchPreview;
|
|
669
703
|
var currentSearchRequestToken = React.useRef(null);
|
|
670
704
|
var debounce = React.useCallback(function (func, wait) {
|
|
671
705
|
var timeout;
|
|
@@ -726,6 +760,16 @@
|
|
|
726
760
|
onProductIdsReceived(searchResults.luxity_product_ids);
|
|
727
761
|
}
|
|
728
762
|
|
|
763
|
+
if (typeof onSearchPreview === 'function') {
|
|
764
|
+
var _searchResults$brands, _searchResults$produc;
|
|
765
|
+
|
|
766
|
+
var hasResults = ((_searchResults$brands = searchResults.brands) === null || _searchResults$brands === void 0 ? void 0 : _searchResults$brands.length) > 0 || ((_searchResults$produc = searchResults.products) === null || _searchResults$produc === void 0 ? void 0 : _searchResults$produc.length) > 0;
|
|
767
|
+
onSearchPreview({
|
|
768
|
+
search_string: searchQuery,
|
|
769
|
+
has_results: hasResults
|
|
770
|
+
});
|
|
771
|
+
}
|
|
772
|
+
|
|
729
773
|
currentSearchRequestToken.current = null;
|
|
730
774
|
}
|
|
731
775
|
}).catch(function (error) {
|
|
@@ -738,7 +782,7 @@
|
|
|
738
782
|
currentSearchRequestToken.current = null;
|
|
739
783
|
}
|
|
740
784
|
});
|
|
741
|
-
}, [endpoint, currency, onProductIdsReceived]);
|
|
785
|
+
}, [endpoint, currency, onSearchPreview, onProductIdsReceived]);
|
|
742
786
|
var debouncedSearch = React.useMemo(function () {
|
|
743
787
|
return debounce(function (searchQuery, setSearchResults) {
|
|
744
788
|
return performSearch(searchQuery, setSearchResults);
|
|
@@ -874,7 +918,10 @@
|
|
|
874
918
|
endpoint = _ref.endpoint,
|
|
875
919
|
initialSearchData = _ref.initialSearchData,
|
|
876
920
|
onSearchSubmit = _ref.onSearchSubmit,
|
|
877
|
-
|
|
921
|
+
onSearchBarClick = _ref.onSearchBarClick,
|
|
922
|
+
onSearchPreview = _ref.onSearchPreview,
|
|
923
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
924
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
878
925
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
879
926
|
currency = _ref.currency,
|
|
880
927
|
currencySymbol = _ref.currencySymbol,
|
|
@@ -894,7 +941,8 @@
|
|
|
894
941
|
var _useSearch = useSearch({
|
|
895
942
|
endpoint: endpoint,
|
|
896
943
|
onProductIdsReceived: onProductIdsReceived,
|
|
897
|
-
currency: currency
|
|
944
|
+
currency: currency,
|
|
945
|
+
onSearchPreview: onSearchPreview
|
|
898
946
|
}),
|
|
899
947
|
fetchInitialSearchData = _useSearch.fetchInitialSearchData,
|
|
900
948
|
createDebouncedSearch = _useSearch.createDebouncedSearch,
|
|
@@ -959,15 +1007,15 @@
|
|
|
959
1007
|
useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
|
|
960
1008
|
|
|
961
1009
|
var handleSearchClick = function handleSearchClick() {
|
|
962
|
-
if (typeof
|
|
963
|
-
|
|
1010
|
+
if (typeof onSearchBarClick === 'function') {
|
|
1011
|
+
onSearchBarClick();
|
|
964
1012
|
return;
|
|
965
1013
|
}
|
|
966
1014
|
|
|
967
1015
|
handleSearchFocus();
|
|
968
1016
|
};
|
|
969
1017
|
|
|
970
|
-
var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults
|
|
1018
|
+
var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults);
|
|
971
1019
|
var handleKeyDown = useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused);
|
|
972
1020
|
|
|
973
1021
|
function addCategoryToElements(elements, categoryName) {
|
|
@@ -1090,7 +1138,9 @@
|
|
|
1090
1138
|
isSearchFocused: isSearchFocused,
|
|
1091
1139
|
setIsSearchFocused: setIsSearchFocused,
|
|
1092
1140
|
currency: currency,
|
|
1093
|
-
currencySymbol: currencySymbol
|
|
1141
|
+
currencySymbol: currencySymbol,
|
|
1142
|
+
onProductSearchResultClick: onProductSearchResultClick,
|
|
1143
|
+
onBrandSearchResultClick: onBrandSearchResultClick
|
|
1094
1144
|
}), /*#__PURE__*/React__default.createElement("nav", {
|
|
1095
1145
|
className: "navbar__nav-links navbar__nav-links--wrap"
|
|
1096
1146
|
}, renderDropdownLinks(), !!stores.length && /*#__PURE__*/React__default.createElement("li", {
|
package/LuxityMobileHeader.js
CHANGED
|
@@ -930,7 +930,9 @@
|
|
|
930
930
|
isSearchFocused = _ref.isSearchFocused,
|
|
931
931
|
setIsSearchFocused = _ref.setIsSearchFocused,
|
|
932
932
|
currency = _ref.currency,
|
|
933
|
-
currencySymbol = _ref.currencySymbol
|
|
933
|
+
currencySymbol = _ref.currencySymbol,
|
|
934
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
935
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick;
|
|
934
936
|
|
|
935
937
|
var _useState = React.useState(false),
|
|
936
938
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -978,7 +980,18 @@
|
|
|
978
980
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
979
981
|
key: product.link,
|
|
980
982
|
href: product.link,
|
|
981
|
-
className: "product-card"
|
|
983
|
+
className: "product-card",
|
|
984
|
+
onClick: function onClick() {
|
|
985
|
+
if (typeof onProductSearchResultClick === 'function') {
|
|
986
|
+
onProductSearchResultClick({
|
|
987
|
+
product_name: product.name,
|
|
988
|
+
product_brand: product.brand,
|
|
989
|
+
product_link: product.link,
|
|
990
|
+
search_string: searchValue,
|
|
991
|
+
is_popular: shouldShowInitialData
|
|
992
|
+
});
|
|
993
|
+
}
|
|
994
|
+
}
|
|
982
995
|
}, product.featured_image && /*#__PURE__*/React__default.createElement("div", {
|
|
983
996
|
className: "product-card__image-container"
|
|
984
997
|
}, /*#__PURE__*/React__default.createElement("img", {
|
|
@@ -1031,13 +1044,33 @@
|
|
|
1031
1044
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
1032
1045
|
key: brand.id,
|
|
1033
1046
|
href: getBrandLink(brand),
|
|
1034
|
-
className: "search-results__item"
|
|
1047
|
+
className: "search-results__item",
|
|
1048
|
+
onClick: function onClick() {
|
|
1049
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
1050
|
+
onBrandSearchResultClick({
|
|
1051
|
+
brand_name: brand.name,
|
|
1052
|
+
brand_link: getBrandLink(brand),
|
|
1053
|
+
search_string: searchValue,
|
|
1054
|
+
is_trending: true
|
|
1055
|
+
});
|
|
1056
|
+
}
|
|
1057
|
+
}
|
|
1035
1058
|
}, brand.name);
|
|
1036
1059
|
}) : (_limitBrands2 = limitBrands(searchResults === null || searchResults === void 0 ? void 0 : searchResults.brands)) === null || _limitBrands2 === void 0 ? void 0 : _limitBrands2.map(function (brand) {
|
|
1037
1060
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
1038
1061
|
key: brand.link,
|
|
1039
1062
|
href: brand.link,
|
|
1040
|
-
className: "search-results__item"
|
|
1063
|
+
className: "search-results__item",
|
|
1064
|
+
onClick: function onClick() {
|
|
1065
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
1066
|
+
onBrandSearchResultClick({
|
|
1067
|
+
brand_name: brand.name,
|
|
1068
|
+
brand_link: brand.link,
|
|
1069
|
+
search_string: searchValue,
|
|
1070
|
+
is_trending: false
|
|
1071
|
+
});
|
|
1072
|
+
}
|
|
1073
|
+
}
|
|
1041
1074
|
}, brand.name);
|
|
1042
1075
|
}))), /*#__PURE__*/React__default.createElement("div", {
|
|
1043
1076
|
className: "search-results__section"
|
|
@@ -1082,7 +1115,8 @@
|
|
|
1082
1115
|
var useSearch = function useSearch(_ref) {
|
|
1083
1116
|
var endpoint = _ref.endpoint,
|
|
1084
1117
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
1085
|
-
currency = _ref.currency
|
|
1118
|
+
currency = _ref.currency,
|
|
1119
|
+
onSearchPreview = _ref.onSearchPreview;
|
|
1086
1120
|
var currentSearchRequestToken = React.useRef(null);
|
|
1087
1121
|
var debounce = React.useCallback(function (func, wait) {
|
|
1088
1122
|
var timeout;
|
|
@@ -1143,6 +1177,16 @@
|
|
|
1143
1177
|
onProductIdsReceived(searchResults.luxity_product_ids);
|
|
1144
1178
|
}
|
|
1145
1179
|
|
|
1180
|
+
if (typeof onSearchPreview === 'function') {
|
|
1181
|
+
var _searchResults$brands, _searchResults$produc;
|
|
1182
|
+
|
|
1183
|
+
var hasResults = ((_searchResults$brands = searchResults.brands) === null || _searchResults$brands === void 0 ? void 0 : _searchResults$brands.length) > 0 || ((_searchResults$produc = searchResults.products) === null || _searchResults$produc === void 0 ? void 0 : _searchResults$produc.length) > 0;
|
|
1184
|
+
onSearchPreview({
|
|
1185
|
+
search_string: searchQuery,
|
|
1186
|
+
has_results: hasResults
|
|
1187
|
+
});
|
|
1188
|
+
}
|
|
1189
|
+
|
|
1146
1190
|
currentSearchRequestToken.current = null;
|
|
1147
1191
|
}
|
|
1148
1192
|
}).catch(function (error) {
|
|
@@ -1155,7 +1199,7 @@
|
|
|
1155
1199
|
currentSearchRequestToken.current = null;
|
|
1156
1200
|
}
|
|
1157
1201
|
});
|
|
1158
|
-
}, [endpoint, currency, onProductIdsReceived]);
|
|
1202
|
+
}, [endpoint, currency, onSearchPreview, onProductIdsReceived]);
|
|
1159
1203
|
var debouncedSearch = React.useMemo(function () {
|
|
1160
1204
|
return debounce(function (searchQuery, setSearchResults) {
|
|
1161
1205
|
return performSearch(searchQuery, setSearchResults);
|
|
@@ -1290,6 +1334,10 @@
|
|
|
1290
1334
|
endpoint = _ref.endpoint,
|
|
1291
1335
|
initialSearchData = _ref.initialSearchData,
|
|
1292
1336
|
onSearchSubmit = _ref.onSearchSubmit,
|
|
1337
|
+
onSearchBarClick = _ref.onSearchBarClick,
|
|
1338
|
+
onSearchPreview = _ref.onSearchPreview,
|
|
1339
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
1340
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
1293
1341
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
1294
1342
|
onLogoutClick = _ref.onLogoutClick,
|
|
1295
1343
|
onInterestClick = _ref.onInterestClick,
|
|
@@ -1316,7 +1364,8 @@
|
|
|
1316
1364
|
var _useSearch = useSearch({
|
|
1317
1365
|
endpoint: endpoint,
|
|
1318
1366
|
onProductIdsReceived: onProductIdsReceived,
|
|
1319
|
-
currency: currency
|
|
1367
|
+
currency: currency,
|
|
1368
|
+
onSearchPreview: onSearchPreview
|
|
1320
1369
|
}),
|
|
1321
1370
|
fetchInitialSearchData = _useSearch.fetchInitialSearchData,
|
|
1322
1371
|
createDebouncedSearch = _useSearch.createDebouncedSearch,
|
|
@@ -1391,6 +1440,10 @@
|
|
|
1391
1440
|
}, [showSearchBar]);
|
|
1392
1441
|
|
|
1393
1442
|
var onSearchClick = function onSearchClick() {
|
|
1443
|
+
if (!showSearchBar && typeof onSearchBarClick === 'function') {
|
|
1444
|
+
onSearchBarClick();
|
|
1445
|
+
}
|
|
1446
|
+
|
|
1394
1447
|
setShowSearchbar(function (prev) {
|
|
1395
1448
|
return !prev;
|
|
1396
1449
|
});
|
|
@@ -1594,7 +1647,9 @@
|
|
|
1594
1647
|
isSearchFocused: isSearchFocused,
|
|
1595
1648
|
setIsSearchFocused: setIsSearchFocused,
|
|
1596
1649
|
currency: currency,
|
|
1597
|
-
currencySymbol: currencySymbol
|
|
1650
|
+
currencySymbol: currencySymbol,
|
|
1651
|
+
onProductSearchResultClick: onProductSearchResultClick,
|
|
1652
|
+
onBrandSearchResultClick: onBrandSearchResultClick
|
|
1598
1653
|
}))), shop && /*#__PURE__*/React__default.createElement(LuxitySideNav, {
|
|
1599
1654
|
accordionIcon: accordionIcon,
|
|
1600
1655
|
logoSrc: logoSrc,
|
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}}.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}.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}.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%}@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}.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}.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{color:#000;font-family:Martel Sans;font-size:14px;font-weight:600;line-height:1}.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:#f5f0ea!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}}.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
|
+
.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;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%}.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}}.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}.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%}.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}.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{color:#000;font-family:Martel Sans;font-size:14px;font-weight:600;line-height:1}.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:#f5f0ea!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}}.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)}}
|
package/build/bundle.js
CHANGED
|
@@ -15821,7 +15821,9 @@
|
|
|
15821
15821
|
isSearchFocused = _ref.isSearchFocused,
|
|
15822
15822
|
setIsSearchFocused = _ref.setIsSearchFocused,
|
|
15823
15823
|
currency = _ref.currency,
|
|
15824
|
-
currencySymbol = _ref.currencySymbol
|
|
15824
|
+
currencySymbol = _ref.currencySymbol,
|
|
15825
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
15826
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick;
|
|
15825
15827
|
|
|
15826
15828
|
var _useState = React.useState(false),
|
|
15827
15829
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -15869,7 +15871,18 @@
|
|
|
15869
15871
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
15870
15872
|
key: product.link,
|
|
15871
15873
|
href: product.link,
|
|
15872
|
-
className: "product-card"
|
|
15874
|
+
className: "product-card",
|
|
15875
|
+
onClick: function onClick() {
|
|
15876
|
+
if (typeof onProductSearchResultClick === 'function') {
|
|
15877
|
+
onProductSearchResultClick({
|
|
15878
|
+
product_name: product.name,
|
|
15879
|
+
product_brand: product.brand,
|
|
15880
|
+
product_link: product.link,
|
|
15881
|
+
search_string: searchValue,
|
|
15882
|
+
is_popular: shouldShowInitialData
|
|
15883
|
+
});
|
|
15884
|
+
}
|
|
15885
|
+
}
|
|
15873
15886
|
}, product.featured_image && /*#__PURE__*/React__default.createElement("div", {
|
|
15874
15887
|
className: "product-card__image-container"
|
|
15875
15888
|
}, /*#__PURE__*/React__default.createElement("img", {
|
|
@@ -15922,13 +15935,33 @@
|
|
|
15922
15935
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
15923
15936
|
key: brand.id,
|
|
15924
15937
|
href: getBrandLink(brand),
|
|
15925
|
-
className: "search-results__item"
|
|
15938
|
+
className: "search-results__item",
|
|
15939
|
+
onClick: function onClick() {
|
|
15940
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
15941
|
+
onBrandSearchResultClick({
|
|
15942
|
+
brand_name: brand.name,
|
|
15943
|
+
brand_link: getBrandLink(brand),
|
|
15944
|
+
search_string: searchValue,
|
|
15945
|
+
is_trending: true
|
|
15946
|
+
});
|
|
15947
|
+
}
|
|
15948
|
+
}
|
|
15926
15949
|
}, brand.name);
|
|
15927
15950
|
}) : (_limitBrands2 = limitBrands(searchResults === null || searchResults === void 0 ? void 0 : searchResults.brands)) === null || _limitBrands2 === void 0 ? void 0 : _limitBrands2.map(function (brand) {
|
|
15928
15951
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
15929
15952
|
key: brand.link,
|
|
15930
15953
|
href: brand.link,
|
|
15931
|
-
className: "search-results__item"
|
|
15954
|
+
className: "search-results__item",
|
|
15955
|
+
onClick: function onClick() {
|
|
15956
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
15957
|
+
onBrandSearchResultClick({
|
|
15958
|
+
brand_name: brand.name,
|
|
15959
|
+
brand_link: brand.link,
|
|
15960
|
+
search_string: searchValue,
|
|
15961
|
+
is_trending: false
|
|
15962
|
+
});
|
|
15963
|
+
}
|
|
15964
|
+
}
|
|
15932
15965
|
}, brand.name);
|
|
15933
15966
|
}))), /*#__PURE__*/React__default.createElement("div", {
|
|
15934
15967
|
className: "search-results__section"
|
|
@@ -15973,7 +16006,8 @@
|
|
|
15973
16006
|
var useSearch = function useSearch(_ref) {
|
|
15974
16007
|
var endpoint = _ref.endpoint,
|
|
15975
16008
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
15976
|
-
currency = _ref.currency
|
|
16009
|
+
currency = _ref.currency,
|
|
16010
|
+
onSearchPreview = _ref.onSearchPreview;
|
|
15977
16011
|
var currentSearchRequestToken = React.useRef(null);
|
|
15978
16012
|
var debounce = React.useCallback(function (func, wait) {
|
|
15979
16013
|
var timeout;
|
|
@@ -16034,6 +16068,16 @@
|
|
|
16034
16068
|
onProductIdsReceived(searchResults.luxity_product_ids);
|
|
16035
16069
|
}
|
|
16036
16070
|
|
|
16071
|
+
if (typeof onSearchPreview === 'function') {
|
|
16072
|
+
var _searchResults$brands, _searchResults$produc;
|
|
16073
|
+
|
|
16074
|
+
var hasResults = ((_searchResults$brands = searchResults.brands) === null || _searchResults$brands === void 0 ? void 0 : _searchResults$brands.length) > 0 || ((_searchResults$produc = searchResults.products) === null || _searchResults$produc === void 0 ? void 0 : _searchResults$produc.length) > 0;
|
|
16075
|
+
onSearchPreview({
|
|
16076
|
+
search_string: searchQuery,
|
|
16077
|
+
has_results: hasResults
|
|
16078
|
+
});
|
|
16079
|
+
}
|
|
16080
|
+
|
|
16037
16081
|
currentSearchRequestToken.current = null;
|
|
16038
16082
|
}
|
|
16039
16083
|
}).catch(function (error) {
|
|
@@ -16046,7 +16090,7 @@
|
|
|
16046
16090
|
currentSearchRequestToken.current = null;
|
|
16047
16091
|
}
|
|
16048
16092
|
});
|
|
16049
|
-
}, [endpoint, currency, onProductIdsReceived]);
|
|
16093
|
+
}, [endpoint, currency, onSearchPreview, onProductIdsReceived]);
|
|
16050
16094
|
var debouncedSearch = React.useMemo(function () {
|
|
16051
16095
|
return debounce(function (searchQuery, setSearchResults) {
|
|
16052
16096
|
return performSearch(searchQuery, setSearchResults);
|
|
@@ -16182,7 +16226,10 @@
|
|
|
16182
16226
|
endpoint = _ref.endpoint,
|
|
16183
16227
|
initialSearchData = _ref.initialSearchData,
|
|
16184
16228
|
onSearchSubmit = _ref.onSearchSubmit,
|
|
16185
|
-
|
|
16229
|
+
onSearchBarClick = _ref.onSearchBarClick,
|
|
16230
|
+
onSearchPreview = _ref.onSearchPreview,
|
|
16231
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
16232
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
16186
16233
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
16187
16234
|
currency = _ref.currency,
|
|
16188
16235
|
currencySymbol = _ref.currencySymbol,
|
|
@@ -16202,7 +16249,8 @@
|
|
|
16202
16249
|
var _useSearch = useSearch({
|
|
16203
16250
|
endpoint: endpoint,
|
|
16204
16251
|
onProductIdsReceived: onProductIdsReceived,
|
|
16205
|
-
currency: currency
|
|
16252
|
+
currency: currency,
|
|
16253
|
+
onSearchPreview: onSearchPreview
|
|
16206
16254
|
}),
|
|
16207
16255
|
fetchInitialSearchData = _useSearch.fetchInitialSearchData,
|
|
16208
16256
|
createDebouncedSearch = _useSearch.createDebouncedSearch,
|
|
@@ -16267,15 +16315,15 @@
|
|
|
16267
16315
|
useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
|
|
16268
16316
|
|
|
16269
16317
|
var handleSearchClick = function handleSearchClick() {
|
|
16270
|
-
if (typeof
|
|
16271
|
-
|
|
16318
|
+
if (typeof onSearchBarClick === 'function') {
|
|
16319
|
+
onSearchBarClick();
|
|
16272
16320
|
return;
|
|
16273
16321
|
}
|
|
16274
16322
|
|
|
16275
16323
|
handleSearchFocus();
|
|
16276
16324
|
};
|
|
16277
16325
|
|
|
16278
|
-
var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults
|
|
16326
|
+
var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults);
|
|
16279
16327
|
var handleKeyDown = useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused);
|
|
16280
16328
|
|
|
16281
16329
|
function addCategoryToElements(elements, categoryName) {
|
|
@@ -16398,7 +16446,9 @@
|
|
|
16398
16446
|
isSearchFocused: isSearchFocused,
|
|
16399
16447
|
setIsSearchFocused: setIsSearchFocused,
|
|
16400
16448
|
currency: currency,
|
|
16401
|
-
currencySymbol: currencySymbol
|
|
16449
|
+
currencySymbol: currencySymbol,
|
|
16450
|
+
onProductSearchResultClick: onProductSearchResultClick,
|
|
16451
|
+
onBrandSearchResultClick: onBrandSearchResultClick
|
|
16402
16452
|
}), /*#__PURE__*/React__default.createElement("nav", {
|
|
16403
16453
|
className: "navbar__nav-links navbar__nav-links--wrap"
|
|
16404
16454
|
}, renderDropdownLinks(), !!stores.length && /*#__PURE__*/React__default.createElement("li", {
|
|
@@ -17091,6 +17141,10 @@
|
|
|
17091
17141
|
endpoint = _ref.endpoint,
|
|
17092
17142
|
initialSearchData = _ref.initialSearchData,
|
|
17093
17143
|
onSearchSubmit = _ref.onSearchSubmit,
|
|
17144
|
+
onSearchBarClick = _ref.onSearchBarClick,
|
|
17145
|
+
onSearchPreview = _ref.onSearchPreview,
|
|
17146
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
17147
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
17094
17148
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
17095
17149
|
onLogoutClick = _ref.onLogoutClick,
|
|
17096
17150
|
onInterestClick = _ref.onInterestClick,
|
|
@@ -17117,7 +17171,8 @@
|
|
|
17117
17171
|
var _useSearch = useSearch({
|
|
17118
17172
|
endpoint: endpoint,
|
|
17119
17173
|
onProductIdsReceived: onProductIdsReceived,
|
|
17120
|
-
currency: currency
|
|
17174
|
+
currency: currency,
|
|
17175
|
+
onSearchPreview: onSearchPreview
|
|
17121
17176
|
}),
|
|
17122
17177
|
fetchInitialSearchData = _useSearch.fetchInitialSearchData,
|
|
17123
17178
|
createDebouncedSearch = _useSearch.createDebouncedSearch,
|
|
@@ -17192,6 +17247,10 @@
|
|
|
17192
17247
|
}, [showSearchBar]);
|
|
17193
17248
|
|
|
17194
17249
|
var onSearchClick = function onSearchClick() {
|
|
17250
|
+
if (!showSearchBar && typeof onSearchBarClick === 'function') {
|
|
17251
|
+
onSearchBarClick();
|
|
17252
|
+
}
|
|
17253
|
+
|
|
17195
17254
|
setShowSearchbar(function (prev) {
|
|
17196
17255
|
return !prev;
|
|
17197
17256
|
});
|
|
@@ -17395,7 +17454,9 @@
|
|
|
17395
17454
|
isSearchFocused: isSearchFocused,
|
|
17396
17455
|
setIsSearchFocused: setIsSearchFocused,
|
|
17397
17456
|
currency: currency,
|
|
17398
|
-
currencySymbol: currencySymbol
|
|
17457
|
+
currencySymbol: currencySymbol,
|
|
17458
|
+
onProductSearchResultClick: onProductSearchResultClick,
|
|
17459
|
+
onBrandSearchResultClick: onBrandSearchResultClick
|
|
17399
17460
|
}))), shop && /*#__PURE__*/React__default.createElement(LuxitySideNav, {
|
|
17400
17461
|
accordionIcon: accordionIcon,
|
|
17401
17462
|
logoSrc: logoSrc,
|
package/package.json
CHANGED
package/build/.gitignore
DELETED
package/build/.npmignore
DELETED
|
File without changes
|