@bonlineza/luxity-lib 2.37.4 → 2.37.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AddProductInterest.js +1 -1
- package/GraphQLDropdownSelector.js +1 -1
- package/Interests.js +1 -1
- package/LuxityDesktopHeader.js +37 -4
- package/LuxityGraphQLDropdownSelector.js +1 -1
- package/LuxityMobileHeader.js +37 -4
- package/MaterialSelector.js +1 -1
- package/ModelSelector.js +1 -1
- package/build/bundle.css +1 -1
- package/build/bundle.js +41 -5
- package/package.json +1 -1
package/AddProductInterest.js
CHANGED
|
@@ -7734,7 +7734,7 @@
|
|
|
7734
7734
|
className: "fl-right__item"
|
|
7735
7735
|
}, /*#__PURE__*/React__default.createElement(PrimaryButton$1, {
|
|
7736
7736
|
"data-qe-id": "add-interest-btn",
|
|
7737
|
-
disabled: !selectedBrand,
|
|
7737
|
+
disabled: !selectedBrand || !selectedModel && !selectedMaterial,
|
|
7738
7738
|
type: "button",
|
|
7739
7739
|
onClick: submitInterest
|
|
7740
7740
|
}, "SAVE"))))))));
|
|
@@ -11461,7 +11461,7 @@
|
|
|
11461
11461
|
className: "fl-right__item"
|
|
11462
11462
|
}, /*#__PURE__*/React__default.createElement(PrimaryButton$1, {
|
|
11463
11463
|
"data-qe-id": "add-interest-btn",
|
|
11464
|
-
disabled: !selectedBrand,
|
|
11464
|
+
disabled: !selectedBrand || !selectedModel && !selectedMaterial,
|
|
11465
11465
|
type: "button",
|
|
11466
11466
|
onClick: submitInterest
|
|
11467
11467
|
}, "SAVE"))))))));
|
package/Interests.js
CHANGED
|
@@ -11324,7 +11324,7 @@
|
|
|
11324
11324
|
className: "fl-right__item"
|
|
11325
11325
|
}, /*#__PURE__*/React__default.createElement(PrimaryButton$1, {
|
|
11326
11326
|
"data-qe-id": "add-interest-btn",
|
|
11327
|
-
disabled: !selectedBrand,
|
|
11327
|
+
disabled: !selectedBrand || !selectedModel && !selectedMaterial,
|
|
11328
11328
|
type: "button",
|
|
11329
11329
|
onClick: submitInterest
|
|
11330
11330
|
}, "SAVE"))))))));
|
package/LuxityDesktopHeader.js
CHANGED
|
@@ -698,6 +698,7 @@
|
|
|
698
698
|
var useSearch = function useSearch(_ref) {
|
|
699
699
|
var endpoint = _ref.endpoint,
|
|
700
700
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
701
|
+
onSearchLoading = _ref.onSearchLoading,
|
|
701
702
|
currency = _ref.currency,
|
|
702
703
|
onSearchPreview = _ref.onSearchPreview;
|
|
703
704
|
var currentSearchRequestToken = React.useRef(null);
|
|
@@ -748,7 +749,12 @@
|
|
|
748
749
|
|
|
749
750
|
|
|
750
751
|
var newSearchToken = axios.CancelToken.source();
|
|
751
|
-
currentSearchRequestToken.current = newSearchToken;
|
|
752
|
+
currentSearchRequestToken.current = newSearchToken; // Set loading to true when starting the search request
|
|
753
|
+
|
|
754
|
+
if (typeof onSearchLoading === 'function') {
|
|
755
|
+
onSearchLoading(true);
|
|
756
|
+
}
|
|
757
|
+
|
|
752
758
|
axios.post(endpoint, searchProducts(searchQuery, 3, currency), {
|
|
753
759
|
cancelToken: newSearchToken.token
|
|
754
760
|
}).then(function (response) {
|
|
@@ -770,7 +776,11 @@
|
|
|
770
776
|
});
|
|
771
777
|
}
|
|
772
778
|
|
|
773
|
-
currentSearchRequestToken.current = null;
|
|
779
|
+
currentSearchRequestToken.current = null; // Set loading to false when search completes successfully
|
|
780
|
+
|
|
781
|
+
if (typeof onSearchLoading === 'function') {
|
|
782
|
+
onSearchLoading(false);
|
|
783
|
+
}
|
|
774
784
|
}
|
|
775
785
|
}).catch(function (error) {
|
|
776
786
|
if (!axios.isCancel(error)) {
|
|
@@ -779,10 +789,14 @@
|
|
|
779
789
|
products: [],
|
|
780
790
|
luxity_product_ids: []
|
|
781
791
|
});
|
|
782
|
-
currentSearchRequestToken.current = null;
|
|
792
|
+
currentSearchRequestToken.current = null; // Set loading to false when search fails
|
|
793
|
+
|
|
794
|
+
if (typeof onSearchLoading === 'function') {
|
|
795
|
+
onSearchLoading(false);
|
|
796
|
+
}
|
|
783
797
|
}
|
|
784
798
|
});
|
|
785
|
-
}, [endpoint, currency, onSearchPreview, onProductIdsReceived]);
|
|
799
|
+
}, [endpoint, currency, onSearchPreview, onProductIdsReceived, onSearchLoading]);
|
|
786
800
|
var debouncedSearch = React.useMemo(function () {
|
|
787
801
|
return debounce(function (searchQuery, setSearchResults) {
|
|
788
802
|
return performSearch(searchQuery, setSearchResults);
|
|
@@ -887,6 +901,22 @@
|
|
|
887
901
|
}
|
|
888
902
|
}, [searchValue, immediateSearch, setIsSearchFocused, setSearchValue]);
|
|
889
903
|
};
|
|
904
|
+
var useSearchUrlQuery = function useSearchUrlQuery(setSearchValue, debouncedSearch) {
|
|
905
|
+
var hasProcessedUrlQuery = React.useRef(false);
|
|
906
|
+
React.useEffect(function () {
|
|
907
|
+
if (hasProcessedUrlQuery.current) return;
|
|
908
|
+
var urlParams = new URLSearchParams(window.location.search);
|
|
909
|
+
var queryParam = urlParams.get('q');
|
|
910
|
+
var isSearchPage = window.location.pathname.includes('/search');
|
|
911
|
+
|
|
912
|
+
if (queryParam && queryParam.trim() !== '' && isSearchPage) {
|
|
913
|
+
hasProcessedUrlQuery.current = true;
|
|
914
|
+
setSearchValue(queryParam);
|
|
915
|
+
debouncedSearch(queryParam);
|
|
916
|
+
}
|
|
917
|
+
}, [setSearchValue, debouncedSearch]);
|
|
918
|
+
return hasProcessedUrlQuery;
|
|
919
|
+
};
|
|
890
920
|
|
|
891
921
|
var removeCategoryByName = function removeCategoryByName(categories, name) {
|
|
892
922
|
var _categories$filter;
|
|
@@ -923,6 +953,7 @@
|
|
|
923
953
|
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
924
954
|
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
925
955
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
956
|
+
onSearchLoading = _ref.onSearchLoading,
|
|
926
957
|
currency = _ref.currency,
|
|
927
958
|
currencySymbol = _ref.currencySymbol,
|
|
928
959
|
currencyOptions = _ref.currencyOptions,
|
|
@@ -941,6 +972,7 @@
|
|
|
941
972
|
var _useSearch = useSearch({
|
|
942
973
|
endpoint: endpoint,
|
|
943
974
|
onProductIdsReceived: onProductIdsReceived,
|
|
975
|
+
onSearchLoading: onSearchLoading,
|
|
944
976
|
currency: currency,
|
|
945
977
|
onSearchPreview: onSearchPreview
|
|
946
978
|
}),
|
|
@@ -1004,6 +1036,7 @@
|
|
|
1004
1036
|
});
|
|
1005
1037
|
var immediateSearch = createImmediateSearch(setSearchValue, setSearchResults, onSearchSubmit);
|
|
1006
1038
|
var handleChange = useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults);
|
|
1039
|
+
useSearchUrlQuery(setSearchValue, debouncedSearch);
|
|
1007
1040
|
useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
|
|
1008
1041
|
|
|
1009
1042
|
var handleSearchClick = function handleSearchClick() {
|
|
@@ -11461,7 +11461,7 @@
|
|
|
11461
11461
|
className: "fl-right__item"
|
|
11462
11462
|
}, /*#__PURE__*/React__default.createElement(PrimaryButton$1, {
|
|
11463
11463
|
"data-qe-id": "add-interest-btn",
|
|
11464
|
-
disabled: !selectedBrand,
|
|
11464
|
+
disabled: !selectedBrand || !selectedModel && !selectedMaterial,
|
|
11465
11465
|
type: "button",
|
|
11466
11466
|
onClick: submitInterest
|
|
11467
11467
|
}, "SAVE"))))))));
|
package/LuxityMobileHeader.js
CHANGED
|
@@ -1115,6 +1115,7 @@
|
|
|
1115
1115
|
var useSearch = function useSearch(_ref) {
|
|
1116
1116
|
var endpoint = _ref.endpoint,
|
|
1117
1117
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
1118
|
+
onSearchLoading = _ref.onSearchLoading,
|
|
1118
1119
|
currency = _ref.currency,
|
|
1119
1120
|
onSearchPreview = _ref.onSearchPreview;
|
|
1120
1121
|
var currentSearchRequestToken = React.useRef(null);
|
|
@@ -1165,7 +1166,12 @@
|
|
|
1165
1166
|
|
|
1166
1167
|
|
|
1167
1168
|
var newSearchToken = axios.CancelToken.source();
|
|
1168
|
-
currentSearchRequestToken.current = newSearchToken;
|
|
1169
|
+
currentSearchRequestToken.current = newSearchToken; // Set loading to true when starting the search request
|
|
1170
|
+
|
|
1171
|
+
if (typeof onSearchLoading === 'function') {
|
|
1172
|
+
onSearchLoading(true);
|
|
1173
|
+
}
|
|
1174
|
+
|
|
1169
1175
|
axios.post(endpoint, searchProducts(searchQuery, 3, currency), {
|
|
1170
1176
|
cancelToken: newSearchToken.token
|
|
1171
1177
|
}).then(function (response) {
|
|
@@ -1187,7 +1193,11 @@
|
|
|
1187
1193
|
});
|
|
1188
1194
|
}
|
|
1189
1195
|
|
|
1190
|
-
currentSearchRequestToken.current = null;
|
|
1196
|
+
currentSearchRequestToken.current = null; // Set loading to false when search completes successfully
|
|
1197
|
+
|
|
1198
|
+
if (typeof onSearchLoading === 'function') {
|
|
1199
|
+
onSearchLoading(false);
|
|
1200
|
+
}
|
|
1191
1201
|
}
|
|
1192
1202
|
}).catch(function (error) {
|
|
1193
1203
|
if (!axios.isCancel(error)) {
|
|
@@ -1196,10 +1206,14 @@
|
|
|
1196
1206
|
products: [],
|
|
1197
1207
|
luxity_product_ids: []
|
|
1198
1208
|
});
|
|
1199
|
-
currentSearchRequestToken.current = null;
|
|
1209
|
+
currentSearchRequestToken.current = null; // Set loading to false when search fails
|
|
1210
|
+
|
|
1211
|
+
if (typeof onSearchLoading === 'function') {
|
|
1212
|
+
onSearchLoading(false);
|
|
1213
|
+
}
|
|
1200
1214
|
}
|
|
1201
1215
|
});
|
|
1202
|
-
}, [endpoint, currency, onSearchPreview, onProductIdsReceived]);
|
|
1216
|
+
}, [endpoint, currency, onSearchPreview, onProductIdsReceived, onSearchLoading]);
|
|
1203
1217
|
var debouncedSearch = React.useMemo(function () {
|
|
1204
1218
|
return debounce(function (searchQuery, setSearchResults) {
|
|
1205
1219
|
return performSearch(searchQuery, setSearchResults);
|
|
@@ -1304,6 +1318,22 @@
|
|
|
1304
1318
|
}
|
|
1305
1319
|
}, [searchValue, immediateSearch, setIsSearchFocused, setSearchValue]);
|
|
1306
1320
|
};
|
|
1321
|
+
var useSearchUrlQuery = function useSearchUrlQuery(setSearchValue, debouncedSearch) {
|
|
1322
|
+
var hasProcessedUrlQuery = React.useRef(false);
|
|
1323
|
+
React.useEffect(function () {
|
|
1324
|
+
if (hasProcessedUrlQuery.current) return;
|
|
1325
|
+
var urlParams = new URLSearchParams(window.location.search);
|
|
1326
|
+
var queryParam = urlParams.get('q');
|
|
1327
|
+
var isSearchPage = window.location.pathname.includes('/search');
|
|
1328
|
+
|
|
1329
|
+
if (queryParam && queryParam.trim() !== '' && isSearchPage) {
|
|
1330
|
+
hasProcessedUrlQuery.current = true;
|
|
1331
|
+
setSearchValue(queryParam);
|
|
1332
|
+
debouncedSearch(queryParam);
|
|
1333
|
+
}
|
|
1334
|
+
}, [setSearchValue, debouncedSearch]);
|
|
1335
|
+
return hasProcessedUrlQuery;
|
|
1336
|
+
};
|
|
1307
1337
|
|
|
1308
1338
|
var LuxityMobileHeader = function LuxityMobileHeader(_ref) {
|
|
1309
1339
|
var logoSrc = _ref.logoSrc,
|
|
@@ -1339,6 +1369,7 @@
|
|
|
1339
1369
|
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
1340
1370
|
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
1341
1371
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
1372
|
+
onSearchLoading = _ref.onSearchLoading,
|
|
1342
1373
|
onLogoutClick = _ref.onLogoutClick,
|
|
1343
1374
|
onInterestClick = _ref.onInterestClick,
|
|
1344
1375
|
onAddressClick = _ref.onAddressClick,
|
|
@@ -1364,6 +1395,7 @@
|
|
|
1364
1395
|
var _useSearch = useSearch({
|
|
1365
1396
|
endpoint: endpoint,
|
|
1366
1397
|
onProductIdsReceived: onProductIdsReceived,
|
|
1398
|
+
onSearchLoading: onSearchLoading,
|
|
1367
1399
|
currency: currency,
|
|
1368
1400
|
onSearchPreview: onSearchPreview
|
|
1369
1401
|
}),
|
|
@@ -1423,6 +1455,7 @@
|
|
|
1423
1455
|
});
|
|
1424
1456
|
var immediateSearch = createImmediateSearch(setSearchValue, setSearchResults, onSearchSubmit);
|
|
1425
1457
|
var handleChange = useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults);
|
|
1458
|
+
useSearchUrlQuery(setSearchValue, debouncedSearch);
|
|
1426
1459
|
var handleKeyDown = useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused, setSearchValue);
|
|
1427
1460
|
React.useMemo(function () {
|
|
1428
1461
|
if (!initialSearchData) {
|
package/MaterialSelector.js
CHANGED
|
@@ -11461,7 +11461,7 @@
|
|
|
11461
11461
|
className: "fl-right__item"
|
|
11462
11462
|
}, /*#__PURE__*/React__default.createElement(PrimaryButton$1, {
|
|
11463
11463
|
"data-qe-id": "add-interest-btn",
|
|
11464
|
-
disabled: !selectedBrand,
|
|
11464
|
+
disabled: !selectedBrand || !selectedModel && !selectedMaterial,
|
|
11465
11465
|
type: "button",
|
|
11466
11466
|
onClick: submitInterest
|
|
11467
11467
|
}, "SAVE"))))))));
|
package/ModelSelector.js
CHANGED
|
@@ -11461,7 +11461,7 @@
|
|
|
11461
11461
|
className: "fl-right__item"
|
|
11462
11462
|
}, /*#__PURE__*/React__default.createElement(PrimaryButton$1, {
|
|
11463
11463
|
"data-qe-id": "add-interest-btn",
|
|
11464
|
-
disabled: !selectedBrand,
|
|
11464
|
+
disabled: !selectedBrand || !selectedModel && !selectedMaterial,
|
|
11465
11465
|
type: "button",
|
|
11466
11466
|
onClick: submitInterest
|
|
11467
11467
|
}, "SAVE"))))))));
|
package/build/bundle.css
CHANGED
|
@@ -1 +1 @@
|
|
|
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)}}
|
|
1
|
+
.interests__add-button{display:flex;flex-direction:row;gap:10px;width:100%}@media only screen and (max-width:879px){.interests__add-button{flex-direction:column}}.interests__section-wrapper{display:flex;flex-direction:column;width:100%}.interests__select-option{display:flex;flex-direction:column;margin-bottom:15px}.interests__title{font-family:El Messiri;font-size:16px;margin-bottom:10px}.navbar{box-shadow:2px 2px 10px #dfdede;display:flex;padding-bottom:10px;padding-top:20px;position:relative}@media only screen and (max-width:879px){.navbar{padding-top:12px}}.navbar__link-item--desktop{align-items:center;display:flex;height:35px;margin:auto 0;padding-top:5px}.navbar__mobile-wrapper{align-items:center;display:flex;flex-direction:column;padding-left:16px;padding-right:16px}.navbar__container{display:flex;margin:0 auto;max-width:1280px;padding-left:12px;padding-right:12px;width:100%}.navbar__body{flex-basis:60%}.navbar__wrapper{align-items:center;display:flex;gap:10px;justify-content:flex-start;width:100%}@media only screen and (max-width:879px){.navbar__wrapper .navbar__menu-icon-wrapper{margin-right:10px}.navbar__wrapper .navbar__logo{margin-left:0;margin-right:auto}.navbar__wrapper .navbar__icons-wrapper{align-items:center;display:flex;gap:20px;margin-left:auto}.navbar__wrapper .navbar__icons{align-items:center;display:flex;gap:20px;margin:0}.navbar__wrapper .navbar__icon{margin:0}}.navbar__product-search-wrapper{align-items:center;display:flex;justify-content:center;padding:0 20%;width:100%}@media only screen and (max-width:879px){.navbar__product-search-wrapper{padding:0}}.navbar__search-container{width:100%}.navbar__input-close-icon{height:auto;margin-bottom:10px;margin-left:10px;width:20px}@media only screen and (max-width:879px){.navbar__input-close-icon{margin-bottom:0;margin-left:0;width:15px}}.navbar__menu-icon{width:20px}.navbar__product-search{align-items:center;display:flex;max-width:545px;width:100%}.navbar__logo-wrapper{margin-right:18px;width:200px}.navbar__logo{width:200px}@media only screen and (max-width:879px){.navbar__logo{margin-left:10px;margin-top:5px;width:150px}}.navbar__form-input{align-items:center;background:transparent;border:none;display:flex;font-size:13px;outline:none;padding:8px;width:100%}.navbar__product-search{border:1px solid #dfdede;margin-bottom:10px}@media only screen and (max-width:879px){.navbar__product-search{border:none;border-bottom:1px solid #dfdede;margin-bottom:0;margin-right:10px;margin-top:10px}}.navbar__section{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;width:100%}.navbar__link{display:inline-block;font-family:Martel Sans;font-size:14px;font-weight:700;margin-right:10px;overflow:hidden;text-transform:uppercase;transition:.3s ease-in-out}.navbar__link:after{background-color:#000;content:"";display:block;height:2px;transition:width .25s ease-out;width:0}.navbar__link:hover:after{width:100%}.navbar__link:hover .navbar__dropdown{animation:fadeInDropdown .3s ease-in-out;display:block}.navbar__dropdown{background-color:#fff;box-shadow:5px 5px 5px #dfdede;display:none;left:0;position:absolute;width:100%;z-index:999}@keyframes fadeInDropdown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.navbar__company-link{font-size:13px;font-weight:400;list-style:none;margin-left:18px;text-decoration:none}.navbar__company-block{align-items:center;background-color:#000;color:#fff;display:flex;font-weight:700;height:33px;justify-content:center;margin-right:0;padding:0 18px;text-transform:uppercase}.navbar__input-search-icon{height:auto;margin-left:1.125rem;margin-right:.375rem;width:15px}.navbar__nav-links{align-items:center;display:flex}.navbar__nav-links--wrap{flex-wrap:wrap}.navbar__icons{align-items:center;display:flex;height:40px;justify-content:flex-end;margin-bottom:10px}@media only screen and (max-width:879px){.navbar__icons{display:block;height:20px;margin-bottom:0}}.navbar__icon{cursor:pointer;height:auto;margin-right:18px;width:20px}.navbar__icon.navbar__cart-icon{margin-right:0}.navbar__icon--app{cursor:pointer;height:auto;margin-left:12px;width:20px}@media only screen and (max-width:879px){.navbar__icon--app{margin-right:0}}.navbar__loyalty-icon{height:18px;position:absolute;right:-14px;top:-6px;width:18px}.navbar__cart-icon{position:relative}.navbar__cart-count{bottom:50%;font-size:13px;height:20px;left:60%;position:absolute;width:20px}.navbar__account-initials,.navbar__cart-count{align-items:center;background-color:#f2eeeb;border-radius:50%;color:#000;display:flex;justify-content:center}.navbar__account-initials{font-size:11px;font-weight:500;height:24px;text-transform:uppercase;width:24px}.footer__newsletter-section{align-items:center;background-color:#000;color:#fff;display:flex;justify-content:space-between;padding:2.265rem 0}@media only screen and (max-width:879px){.footer__newsletter-section{flex-direction:column}}.footer__newsletter-wrapper{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1280px;padding-left:32px;padding-right:32px;width:100%}@media only screen and (max-width:879px){.footer__newsletter-wrapper{flex-direction:column}.footer__link-container{flex-basis:50%}}.footer__newsletter-icon{height:30px;position:absolute;right:0;top:0;width:32px}.footer__newsletter-form{flex-basis:50%;max-width:250px;position:relative}@media only screen and (max-width:879px){.footer__newsletter-form{display:block;margin-top:20px;max-width:100%;width:100%}}.footer__newsletter-title{font-family:Martel Sans,sans-serif;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:1.125rem;text-transform:uppercase}.footer__newsletter-text{font-size:14px}.footer__form-input{background-color:#000;border:none;border-bottom:1px solid #fff;color:#fff;height:30px;outline:none;width:100%}.footer__form-input::-moz-placeholder{color:#fff;font-weight:400}.footer__form-input::placeholder{color:#fff;font-weight:400}.footer__form-errors{color:#fff;margin-top:5px}.footer__main-section{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:50px;margin-top:80px}.footer__link-title{font-family:El Messiri;font-size:16px;font-weight:700;margin-bottom:20px;text-transform:uppercase}@media only screen and (max-width:879px){.footer__link-title{margin-bottom:10px}}.footer__link-child{margin-top:25px}.footer__links{display:flex;flex-direction:column}.footer__link{color:#939393;cursor:pointer;font-family:Martel Sans;font-size:14px;line-height:20px;margin-bottom:7px;text-align:left;text-decoration:none}.footer__link:hover{color:#000;text-decoration:underline}@media only screen and (max-width:879px){.footer__link{margin-bottom:10px}}.footer__link-wrapper{align-items:center;display:flex;gap:5px}.footer__link-icon{height:30px;margin-bottom:18px}.footer__text{color:#939393;font-family:Martel Sans;font-size:14px;line-height:20px;margin-bottom:15px;text-align:left;text-decoration:none}.footer__store-hours{margin-top:35px}.footer__copyrights-section{border-top:1px solid;display:flex;justify-content:space-between;padding-bottom:20px;padding-top:20px}.footer__logo{height:30px;width:135px}.footer__payment-icons{align-items:center;display:flex;gap:8px}.footer__wrapper{margin:0 auto;max-width:1280px;padding-left:32px;padding-right:32px;width:100%}@media only screen and (max-width:879px){.footer__wrapper{padding:32px 0 0 24px}}.footer__wrapper--desktop{display:block}@media only screen and (max-width:879px){.footer__wrapper--desktop{display:none}}.footer__wrapper--mobile{display:none}@media only screen and (max-width:879px){.footer__wrapper--mobile{display:block;padding-top:30px}}.footer__copyright{font-size:10px;line-height:22px}.footer__copyright--mobile{display:none}@media only screen and (max-width:879px){.footer__copyright--mobile{display:block;padding:30px 10px 30px 0;text-align:center}}.footer__section-row{display:flex;gap:50%}@media only screen and (max-width:879px){.footer__section-row{gap:unset}}.side-nav{font-family:Martel Sans}.side-nav__errors{align-items:center;color:red;display:flex;font-size:16px;justify-content:center}.side-nav__overlay{background-color:rgba(78,73,73,.51);height:100%;opacity:0;position:fixed;top:0;transition:opacity .5s ease-out 0s,visibility .5s ease-out 0s;width:100%;z-index:99999}.side-nav__overlay--visible{opacity:1;visibility:visible}.side-nav__overlay--hidden{opacity:1;visibility:hidden}.side-nav__content{background-color:#fff;bottom:0;overflow-y:scroll;padding:1.5rem;position:fixed;top:0;transition:left .5s ease-in-out;width:80%;z-index:99999}.side-nav__content--hidden{display:none}.side-nav__content--open{left:0}.side-nav__content--closed{left:-100%}.side-nav__menu-title-wrapper{align-items:center;background-color:transparent;border:none;display:flex;justify-content:space-between;outline:none;width:100%}.side-nav__icon-container{float:right;margin-bottom:10px}.side-nav__menu-title{font-size:14px;font-weight:700;line-height:20px;text-transform:uppercase}.side-nav__accordion-icon{height:auto;width:15px}.side-nav__menu-item{margin-bottom:25px}.side-nav__close-icon{height:20px;margin-left:auto;width:20px}.side-nav__back-button-wrapper{align-items:center;display:flex;margin-bottom:25px}.side-nav__back-icon{height:20px;width:20px}.side-nav__back-button,.side-nav__sub-menu-title{font-weight:700;text-transform:uppercase}.side-nav__sub-menu-title{font-size:14px;margin-bottom:10px}.side-nav__elements{display:flex;flex-direction:column}.side-nav__element{color:#555;cursor:pointer;line-height:20px;margin-bottom:10px}.side-nav__element,.side-nav__sub-link{font-size:14px;font-weight:400;text-transform:capitalize}.side-nav__block-button{background-color:#000;color:#fff;font-weight:700;padding:10px 0;width:100%}@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
|
@@ -11895,7 +11895,7 @@
|
|
|
11895
11895
|
className: "fl-right__item"
|
|
11896
11896
|
}, /*#__PURE__*/React__default.createElement(PrimaryButton$1, {
|
|
11897
11897
|
"data-qe-id": "add-interest-btn",
|
|
11898
|
-
disabled: !selectedBrand,
|
|
11898
|
+
disabled: !selectedBrand || !selectedModel && !selectedMaterial,
|
|
11899
11899
|
type: "button",
|
|
11900
11900
|
onClick: submitInterest
|
|
11901
11901
|
}, "SAVE"))))))));
|
|
@@ -16000,6 +16000,7 @@
|
|
|
16000
16000
|
var useSearch = function useSearch(_ref) {
|
|
16001
16001
|
var endpoint = _ref.endpoint,
|
|
16002
16002
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
16003
|
+
onSearchLoading = _ref.onSearchLoading,
|
|
16003
16004
|
currency = _ref.currency,
|
|
16004
16005
|
onSearchPreview = _ref.onSearchPreview;
|
|
16005
16006
|
var currentSearchRequestToken = React.useRef(null);
|
|
@@ -16050,7 +16051,12 @@
|
|
|
16050
16051
|
|
|
16051
16052
|
|
|
16052
16053
|
var newSearchToken = axios.CancelToken.source();
|
|
16053
|
-
currentSearchRequestToken.current = newSearchToken;
|
|
16054
|
+
currentSearchRequestToken.current = newSearchToken; // Set loading to true when starting the search request
|
|
16055
|
+
|
|
16056
|
+
if (typeof onSearchLoading === 'function') {
|
|
16057
|
+
onSearchLoading(true);
|
|
16058
|
+
}
|
|
16059
|
+
|
|
16054
16060
|
axios.post(endpoint, searchProducts(searchQuery, 3, currency), {
|
|
16055
16061
|
cancelToken: newSearchToken.token
|
|
16056
16062
|
}).then(function (response) {
|
|
@@ -16072,7 +16078,11 @@
|
|
|
16072
16078
|
});
|
|
16073
16079
|
}
|
|
16074
16080
|
|
|
16075
|
-
currentSearchRequestToken.current = null;
|
|
16081
|
+
currentSearchRequestToken.current = null; // Set loading to false when search completes successfully
|
|
16082
|
+
|
|
16083
|
+
if (typeof onSearchLoading === 'function') {
|
|
16084
|
+
onSearchLoading(false);
|
|
16085
|
+
}
|
|
16076
16086
|
}
|
|
16077
16087
|
}).catch(function (error) {
|
|
16078
16088
|
if (!axios.isCancel(error)) {
|
|
@@ -16081,10 +16091,14 @@
|
|
|
16081
16091
|
products: [],
|
|
16082
16092
|
luxity_product_ids: []
|
|
16083
16093
|
});
|
|
16084
|
-
currentSearchRequestToken.current = null;
|
|
16094
|
+
currentSearchRequestToken.current = null; // Set loading to false when search fails
|
|
16095
|
+
|
|
16096
|
+
if (typeof onSearchLoading === 'function') {
|
|
16097
|
+
onSearchLoading(false);
|
|
16098
|
+
}
|
|
16085
16099
|
}
|
|
16086
16100
|
});
|
|
16087
|
-
}, [endpoint, currency, onSearchPreview, onProductIdsReceived]);
|
|
16101
|
+
}, [endpoint, currency, onSearchPreview, onProductIdsReceived, onSearchLoading]);
|
|
16088
16102
|
var debouncedSearch = React.useMemo(function () {
|
|
16089
16103
|
return debounce(function (searchQuery, setSearchResults) {
|
|
16090
16104
|
return performSearch(searchQuery, setSearchResults);
|
|
@@ -16189,6 +16203,22 @@
|
|
|
16189
16203
|
}
|
|
16190
16204
|
}, [searchValue, immediateSearch, setIsSearchFocused, setSearchValue]);
|
|
16191
16205
|
};
|
|
16206
|
+
var useSearchUrlQuery = function useSearchUrlQuery(setSearchValue, debouncedSearch) {
|
|
16207
|
+
var hasProcessedUrlQuery = React.useRef(false);
|
|
16208
|
+
React.useEffect(function () {
|
|
16209
|
+
if (hasProcessedUrlQuery.current) return;
|
|
16210
|
+
var urlParams = new URLSearchParams(window.location.search);
|
|
16211
|
+
var queryParam = urlParams.get('q');
|
|
16212
|
+
var isSearchPage = window.location.pathname.includes('/search');
|
|
16213
|
+
|
|
16214
|
+
if (queryParam && queryParam.trim() !== '' && isSearchPage) {
|
|
16215
|
+
hasProcessedUrlQuery.current = true;
|
|
16216
|
+
setSearchValue(queryParam);
|
|
16217
|
+
debouncedSearch(queryParam);
|
|
16218
|
+
}
|
|
16219
|
+
}, [setSearchValue, debouncedSearch]);
|
|
16220
|
+
return hasProcessedUrlQuery;
|
|
16221
|
+
};
|
|
16192
16222
|
|
|
16193
16223
|
var removeCategoryByName = function removeCategoryByName(categories, name) {
|
|
16194
16224
|
var _categories$filter;
|
|
@@ -16225,6 +16255,7 @@
|
|
|
16225
16255
|
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
16226
16256
|
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
16227
16257
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
16258
|
+
onSearchLoading = _ref.onSearchLoading,
|
|
16228
16259
|
currency = _ref.currency,
|
|
16229
16260
|
currencySymbol = _ref.currencySymbol,
|
|
16230
16261
|
currencyOptions = _ref.currencyOptions,
|
|
@@ -16243,6 +16274,7 @@
|
|
|
16243
16274
|
var _useSearch = useSearch({
|
|
16244
16275
|
endpoint: endpoint,
|
|
16245
16276
|
onProductIdsReceived: onProductIdsReceived,
|
|
16277
|
+
onSearchLoading: onSearchLoading,
|
|
16246
16278
|
currency: currency,
|
|
16247
16279
|
onSearchPreview: onSearchPreview
|
|
16248
16280
|
}),
|
|
@@ -16306,6 +16338,7 @@
|
|
|
16306
16338
|
});
|
|
16307
16339
|
var immediateSearch = createImmediateSearch(setSearchValue, setSearchResults, onSearchSubmit);
|
|
16308
16340
|
var handleChange = useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults);
|
|
16341
|
+
useSearchUrlQuery(setSearchValue, debouncedSearch);
|
|
16309
16342
|
useSearchClickOutside(searchResultsRef, searchResults, setCachedResults, setIsSearchFocused, setSearchResults);
|
|
16310
16343
|
|
|
16311
16344
|
var handleSearchClick = function handleSearchClick() {
|
|
@@ -17140,6 +17173,7 @@
|
|
|
17140
17173
|
onProductSearchResultClick = _ref.onProductSearchResultClick,
|
|
17141
17174
|
onBrandSearchResultClick = _ref.onBrandSearchResultClick,
|
|
17142
17175
|
onProductIdsReceived = _ref.onProductIdsReceived,
|
|
17176
|
+
onSearchLoading = _ref.onSearchLoading,
|
|
17143
17177
|
onLogoutClick = _ref.onLogoutClick,
|
|
17144
17178
|
onInterestClick = _ref.onInterestClick,
|
|
17145
17179
|
onAddressClick = _ref.onAddressClick,
|
|
@@ -17165,6 +17199,7 @@
|
|
|
17165
17199
|
var _useSearch = useSearch({
|
|
17166
17200
|
endpoint: endpoint,
|
|
17167
17201
|
onProductIdsReceived: onProductIdsReceived,
|
|
17202
|
+
onSearchLoading: onSearchLoading,
|
|
17168
17203
|
currency: currency,
|
|
17169
17204
|
onSearchPreview: onSearchPreview
|
|
17170
17205
|
}),
|
|
@@ -17224,6 +17259,7 @@
|
|
|
17224
17259
|
});
|
|
17225
17260
|
var immediateSearch = createImmediateSearch(setSearchValue, setSearchResults, onSearchSubmit);
|
|
17226
17261
|
var handleChange = useSearchInputChange(setSearchValue, setIsSearchFocused, debouncedSearch, setSearchResults, setCachedResults);
|
|
17262
|
+
useSearchUrlQuery(setSearchValue, debouncedSearch);
|
|
17227
17263
|
var handleKeyDown = useSearchInputKeyDown(searchValue, immediateSearch, setIsSearchFocused, setSearchValue);
|
|
17228
17264
|
React.useMemo(function () {
|
|
17229
17265
|
if (!initialSearchData) {
|