@bonlineza/luxity-lib 2.37.1 → 2.37.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LuxityDesktopHeader.js +62 -12
- package/LuxityFooter.js +0 -6
- package/LuxityMobileHeader.js +63 -8
- package/build/bundle.css +1 -1
- package/build/bundle.js +75 -20
- 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/LuxityFooter.js
CHANGED
|
@@ -2083,7 +2083,6 @@
|
|
|
2083
2083
|
contactLinks = _ref$contactLinks === void 0 ? [] : _ref$contactLinks,
|
|
2084
2084
|
visaImgSrc = _ref.visaImgSrc,
|
|
2085
2085
|
masterCardSrc = _ref.masterCardSrc,
|
|
2086
|
-
paypalImgSrc = _ref.paypalImgSrc,
|
|
2087
2086
|
logoSrc = _ref.logoSrc,
|
|
2088
2087
|
formIconSrc = _ref.formIconSrc,
|
|
2089
2088
|
onSubmit = _ref.onSubmit,
|
|
@@ -2270,11 +2269,6 @@
|
|
|
2270
2269
|
alt: "visa",
|
|
2271
2270
|
width: 70,
|
|
2272
2271
|
height: 70
|
|
2273
|
-
}), /*#__PURE__*/React__default.createElement("img", {
|
|
2274
|
-
src: paypalImgSrc,
|
|
2275
|
-
alt: "paypal",
|
|
2276
|
-
width: 100,
|
|
2277
|
-
height: 100
|
|
2278
2272
|
})), /*#__PURE__*/React__default.createElement("p", {
|
|
2279
2273
|
className: "footer__copyright"
|
|
2280
2274
|
}, "Copyright ", currentYear, " | Luxity (Pty) LTD | All Rights Reserved"))), /*#__PURE__*/React__default.createElement("div", {
|
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}.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}}@charset "UTF-8";.currency-select-container{align-items:center;display:flex;margin-right:18px;position:relative}.currency-select-container .currency-flag{margin-right:5px}.currency-select-container .currency-flag img{height:15px;-o-object-fit:cover;object-fit:cover;width:20px}.currency-select-container .currency-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:transparent;border:none;color:#000;cursor:pointer;font-family:inherit;font-size:14px;margin:0;outline:none;padding:5px 15px 5px 5px}.currency-select-container .currency-select::-ms-expand{display:none}.currency-select-container .currency-select:focus{box-shadow:none;outline:none}.currency-select-container .currency-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.currency-select-container:after{color:#000;content:"▼";font-size:10px;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}@media only screen and (max-width:879px){.currency-select-container .currency-select{appearance:menulist;-webkit-appearance:menulist;-moz-appearance:menulist;padding-right:0}.currency-select-container:after{display:none}}.currency-select-container.disabled{cursor:not-allowed;opacity:.7}.currency-select-container.disabled .currency-select{pointer-events:none}.interests__add-button{display:flex;flex-direction:row;gap:10px;width:100%}@media only screen and (max-width:879px){.interests__add-button{flex-direction:column}}.interests__section-wrapper{display:flex;flex-direction:column;width:100%}.interests__select-option{display:flex;flex-direction:column;margin-bottom:15px}.interests__title{font-family:El Messiri;font-size:16px;margin-bottom:10px}.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%}.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
|
@@ -15422,7 +15422,6 @@
|
|
|
15422
15422
|
contactLinks = _ref$contactLinks === void 0 ? [] : _ref$contactLinks,
|
|
15423
15423
|
visaImgSrc = _ref.visaImgSrc,
|
|
15424
15424
|
masterCardSrc = _ref.masterCardSrc,
|
|
15425
|
-
paypalImgSrc = _ref.paypalImgSrc,
|
|
15426
15425
|
logoSrc = _ref.logoSrc,
|
|
15427
15426
|
formIconSrc = _ref.formIconSrc,
|
|
15428
15427
|
onSubmit = _ref.onSubmit,
|
|
@@ -15609,11 +15608,6 @@
|
|
|
15609
15608
|
alt: "visa",
|
|
15610
15609
|
width: 70,
|
|
15611
15610
|
height: 70
|
|
15612
|
-
}), /*#__PURE__*/React__default.createElement("img", {
|
|
15613
|
-
src: paypalImgSrc,
|
|
15614
|
-
alt: "paypal",
|
|
15615
|
-
width: 100,
|
|
15616
|
-
height: 100
|
|
15617
15611
|
})), /*#__PURE__*/React__default.createElement("p", {
|
|
15618
15612
|
className: "footer__copyright"
|
|
15619
15613
|
}, "Copyright ", currentYear, " | Luxity (Pty) LTD | All Rights Reserved"))), /*#__PURE__*/React__default.createElement("div", {
|
|
@@ -15821,7 +15815,9 @@
|
|
|
15821
15815
|
isSearchFocused = _ref.isSearchFocused,
|
|
15822
15816
|
setIsSearchFocused = _ref.setIsSearchFocused,
|
|
15823
15817
|
currency = _ref.currency,
|
|
15824
|
-
currencySymbol = _ref.currencySymbol
|
|
15818
|
+
currencySymbol = _ref.currencySymbol,
|
|
15819
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
15820
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick;
|
|
15825
15821
|
|
|
15826
15822
|
var _useState = React.useState(false),
|
|
15827
15823
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -15869,7 +15865,18 @@
|
|
|
15869
15865
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
15870
15866
|
key: product.link,
|
|
15871
15867
|
href: product.link,
|
|
15872
|
-
className: "product-card"
|
|
15868
|
+
className: "product-card",
|
|
15869
|
+
onClick: function onClick() {
|
|
15870
|
+
if (typeof onProductSearchResultClick === 'function') {
|
|
15871
|
+
onProductSearchResultClick({
|
|
15872
|
+
product_name: product.name,
|
|
15873
|
+
product_brand: product.brand,
|
|
15874
|
+
product_link: product.link,
|
|
15875
|
+
search_string: searchValue,
|
|
15876
|
+
is_popular: shouldShowInitialData
|
|
15877
|
+
});
|
|
15878
|
+
}
|
|
15879
|
+
}
|
|
15873
15880
|
}, product.featured_image && /*#__PURE__*/React__default.createElement("div", {
|
|
15874
15881
|
className: "product-card__image-container"
|
|
15875
15882
|
}, /*#__PURE__*/React__default.createElement("img", {
|
|
@@ -15922,13 +15929,33 @@
|
|
|
15922
15929
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
15923
15930
|
key: brand.id,
|
|
15924
15931
|
href: getBrandLink(brand),
|
|
15925
|
-
className: "search-results__item"
|
|
15932
|
+
className: "search-results__item",
|
|
15933
|
+
onClick: function onClick() {
|
|
15934
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
15935
|
+
onBrandSearchResultClick({
|
|
15936
|
+
brand_name: brand.name,
|
|
15937
|
+
brand_link: getBrandLink(brand),
|
|
15938
|
+
search_string: searchValue,
|
|
15939
|
+
is_trending: true
|
|
15940
|
+
});
|
|
15941
|
+
}
|
|
15942
|
+
}
|
|
15926
15943
|
}, brand.name);
|
|
15927
15944
|
}) : (_limitBrands2 = limitBrands(searchResults === null || searchResults === void 0 ? void 0 : searchResults.brands)) === null || _limitBrands2 === void 0 ? void 0 : _limitBrands2.map(function (brand) {
|
|
15928
15945
|
return /*#__PURE__*/React__default.createElement("a", {
|
|
15929
15946
|
key: brand.link,
|
|
15930
15947
|
href: brand.link,
|
|
15931
|
-
className: "search-results__item"
|
|
15948
|
+
className: "search-results__item",
|
|
15949
|
+
onClick: function onClick() {
|
|
15950
|
+
if (typeof onBrandSearchResultClick === 'function') {
|
|
15951
|
+
onBrandSearchResultClick({
|
|
15952
|
+
brand_name: brand.name,
|
|
15953
|
+
brand_link: brand.link,
|
|
15954
|
+
search_string: searchValue,
|
|
15955
|
+
is_trending: false
|
|
15956
|
+
});
|
|
15957
|
+
}
|
|
15958
|
+
}
|
|
15932
15959
|
}, brand.name);
|
|
15933
15960
|
}))), /*#__PURE__*/React__default.createElement("div", {
|
|
15934
15961
|
className: "search-results__section"
|
|
@@ -15973,7 +16000,8 @@
|
|
|
15973
16000
|
var useSearch = function useSearch(_ref) {
|
|
15974
16001
|
var endpoint = _ref.endpoint,
|
|
15975
16002
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
15976
|
-
currency = _ref.currency
|
|
16003
|
+
currency = _ref.currency,
|
|
16004
|
+
onSearchPreview = _ref.onSearchPreview;
|
|
15977
16005
|
var currentSearchRequestToken = React.useRef(null);
|
|
15978
16006
|
var debounce = React.useCallback(function (func, wait) {
|
|
15979
16007
|
var timeout;
|
|
@@ -16034,6 +16062,16 @@
|
|
|
16034
16062
|
onProductIdsReceived(searchResults.luxity_product_ids);
|
|
16035
16063
|
}
|
|
16036
16064
|
|
|
16065
|
+
if (typeof onSearchPreview === 'function') {
|
|
16066
|
+
var _searchResults$brands, _searchResults$produc;
|
|
16067
|
+
|
|
16068
|
+
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;
|
|
16069
|
+
onSearchPreview({
|
|
16070
|
+
search_string: searchQuery,
|
|
16071
|
+
has_results: hasResults
|
|
16072
|
+
});
|
|
16073
|
+
}
|
|
16074
|
+
|
|
16037
16075
|
currentSearchRequestToken.current = null;
|
|
16038
16076
|
}
|
|
16039
16077
|
}).catch(function (error) {
|
|
@@ -16046,7 +16084,7 @@
|
|
|
16046
16084
|
currentSearchRequestToken.current = null;
|
|
16047
16085
|
}
|
|
16048
16086
|
});
|
|
16049
|
-
}, [endpoint, currency, onProductIdsReceived]);
|
|
16087
|
+
}, [endpoint, currency, onSearchPreview, onProductIdsReceived]);
|
|
16050
16088
|
var debouncedSearch = React.useMemo(function () {
|
|
16051
16089
|
return debounce(function (searchQuery, setSearchResults) {
|
|
16052
16090
|
return performSearch(searchQuery, setSearchResults);
|
|
@@ -16182,7 +16220,10 @@
|
|
|
16182
16220
|
endpoint = _ref.endpoint,
|
|
16183
16221
|
initialSearchData = _ref.initialSearchData,
|
|
16184
16222
|
onSearchSubmit = _ref.onSearchSubmit,
|
|
16185
|
-
|
|
16223
|
+
onSearchBarClick = _ref.onSearchBarClick,
|
|
16224
|
+
onSearchPreview = _ref.onSearchPreview,
|
|
16225
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
16226
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
16186
16227
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
16187
16228
|
currency = _ref.currency,
|
|
16188
16229
|
currencySymbol = _ref.currencySymbol,
|
|
@@ -16202,7 +16243,8 @@
|
|
|
16202
16243
|
var _useSearch = useSearch({
|
|
16203
16244
|
endpoint: endpoint,
|
|
16204
16245
|
onProductIdsReceived: onProductIdsReceived,
|
|
16205
|
-
currency: currency
|
|
16246
|
+
currency: currency,
|
|
16247
|
+
onSearchPreview: onSearchPreview
|
|
16206
16248
|
}),
|
|
16207
16249
|
fetchInitialSearchData = _useSearch.fetchInitialSearchData,
|
|
16208
16250
|
createDebouncedSearch = _useSearch.createDebouncedSearch,
|
|
@@ -16267,15 +16309,15 @@
|
|
|
16267
16309
|
useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
|
|
16268
16310
|
|
|
16269
16311
|
var handleSearchClick = function handleSearchClick() {
|
|
16270
|
-
if (typeof
|
|
16271
|
-
|
|
16312
|
+
if (typeof onSearchBarClick === 'function') {
|
|
16313
|
+
onSearchBarClick();
|
|
16272
16314
|
return;
|
|
16273
16315
|
}
|
|
16274
16316
|
|
|
16275
16317
|
handleSearchFocus();
|
|
16276
16318
|
};
|
|
16277
16319
|
|
|
16278
|
-
var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults
|
|
16320
|
+
var handleSearchFocus = useSearchInputFocus(searchValue, setIsSearchFocused, cachedResults, setSearchResults);
|
|
16279
16321
|
var handleKeyDown = useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused);
|
|
16280
16322
|
|
|
16281
16323
|
function addCategoryToElements(elements, categoryName) {
|
|
@@ -16398,7 +16440,9 @@
|
|
|
16398
16440
|
isSearchFocused: isSearchFocused,
|
|
16399
16441
|
setIsSearchFocused: setIsSearchFocused,
|
|
16400
16442
|
currency: currency,
|
|
16401
|
-
currencySymbol: currencySymbol
|
|
16443
|
+
currencySymbol: currencySymbol,
|
|
16444
|
+
onProductSearchResultClick: onProductSearchResultClick,
|
|
16445
|
+
onBrandSearchResultClick: onBrandSearchResultClick
|
|
16402
16446
|
}), /*#__PURE__*/React__default.createElement("nav", {
|
|
16403
16447
|
className: "navbar__nav-links navbar__nav-links--wrap"
|
|
16404
16448
|
}, renderDropdownLinks(), !!stores.length && /*#__PURE__*/React__default.createElement("li", {
|
|
@@ -17091,6 +17135,10 @@
|
|
|
17091
17135
|
endpoint = _ref.endpoint,
|
|
17092
17136
|
initialSearchData = _ref.initialSearchData,
|
|
17093
17137
|
onSearchSubmit = _ref.onSearchSubmit,
|
|
17138
|
+
onSearchBarClick = _ref.onSearchBarClick,
|
|
17139
|
+
onSearchPreview = _ref.onSearchPreview,
|
|
17140
|
+
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
17141
|
+
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
17094
17142
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
17095
17143
|
onLogoutClick = _ref.onLogoutClick,
|
|
17096
17144
|
onInterestClick = _ref.onInterestClick,
|
|
@@ -17117,7 +17165,8 @@
|
|
|
17117
17165
|
var _useSearch = useSearch({
|
|
17118
17166
|
endpoint: endpoint,
|
|
17119
17167
|
onProductIdsReceived: onProductIdsReceived,
|
|
17120
|
-
currency: currency
|
|
17168
|
+
currency: currency,
|
|
17169
|
+
onSearchPreview: onSearchPreview
|
|
17121
17170
|
}),
|
|
17122
17171
|
fetchInitialSearchData = _useSearch.fetchInitialSearchData,
|
|
17123
17172
|
createDebouncedSearch = _useSearch.createDebouncedSearch,
|
|
@@ -17192,6 +17241,10 @@
|
|
|
17192
17241
|
}, [showSearchBar]);
|
|
17193
17242
|
|
|
17194
17243
|
var onSearchClick = function onSearchClick() {
|
|
17244
|
+
if (!showSearchBar && typeof onSearchBarClick === 'function') {
|
|
17245
|
+
onSearchBarClick();
|
|
17246
|
+
}
|
|
17247
|
+
|
|
17195
17248
|
setShowSearchbar(function (prev) {
|
|
17196
17249
|
return !prev;
|
|
17197
17250
|
});
|
|
@@ -17395,7 +17448,9 @@
|
|
|
17395
17448
|
isSearchFocused: isSearchFocused,
|
|
17396
17449
|
setIsSearchFocused: setIsSearchFocused,
|
|
17397
17450
|
currency: currency,
|
|
17398
|
-
currencySymbol: currencySymbol
|
|
17451
|
+
currencySymbol: currencySymbol,
|
|
17452
|
+
onProductSearchResultClick: onProductSearchResultClick,
|
|
17453
|
+
onBrandSearchResultClick: onBrandSearchResultClick
|
|
17399
17454
|
}))), shop && /*#__PURE__*/React__default.createElement(LuxitySideNav, {
|
|
17400
17455
|
accordionIcon: accordionIcon,
|
|
17401
17456
|
logoSrc: logoSrc,
|
package/package.json
CHANGED
package/build/.gitignore
DELETED
package/build/.npmignore
DELETED
|
File without changes
|