@bonlineza/luxity-lib 2.34.0 → 2.34.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/Accordion.js +76 -116
  2. package/AddInterest.js +434 -768
  3. package/BrandSelector.js +176 -336
  4. package/Checkbox.js +68 -101
  5. package/CheckboxButton.js +79 -124
  6. package/CommunicationPreferenceOptionsRenderer.js +107 -125
  7. package/CommunicationPreferenceSection.js +114 -134
  8. package/CommunicationPreferences.js +443 -339
  9. package/CountryCodeSelect.js +7 -10
  10. package/CurrencyInputFormatter.js +29 -56
  11. package/CurrencySelect.js +188 -19
  12. package/GALink.js +6 -16
  13. package/GenderSelector.js +88 -142
  14. package/GraphQLDropdownSelector.js +505 -939
  15. package/GraphQLMultiSelector.js +141 -274
  16. package/IconHeader.js +11 -25
  17. package/IconWrapper.js +3 -7
  18. package/InterestCatSelector.js +34 -74
  19. package/InterestItem.js +103 -187
  20. package/Interests.js +485 -890
  21. package/InterestsSubheading.js +5 -10
  22. package/InvertedTextButton.js +27 -63
  23. package/LuxityAppSideNav.js +18 -21
  24. package/LuxityDesktopHeader.js +376 -214
  25. package/LuxityFooter.js +464 -260
  26. package/LuxityGraphQLDropdownSelector.js +519 -969
  27. package/LuxityGraphQLMultiselector.js +167 -321
  28. package/LuxityMobileHeader.js +221 -278
  29. package/LuxityPageReady.js +74 -136
  30. package/LuxitySideNav.js +134 -155
  31. package/MaterialSelector.js +525 -976
  32. package/ModelSelector.js +525 -976
  33. package/NotificationDropDown.js +111 -209
  34. package/Notify.js +0 -1
  35. package/OutlinePrimaryButton.js +26 -58
  36. package/PriceRangeSelector.js +168 -281
  37. package/PrimaryButton.js +26 -58
  38. package/RadioButtons.js +114 -140
  39. package/RangeSlider.js +152 -242
  40. package/RareStepFooter.js +27 -41
  41. package/RareStepHeader.js +139 -190
  42. package/ReactSelectWrapper.js +0 -1
  43. package/SecondaryButton.js +26 -58
  44. package/ShoeSizeRangeSelector.js +162 -260
  45. package/ShoeSizeSelector.js +158 -263
  46. package/SimpleErrorBoundary.js +59 -106
  47. package/StyleSelector.js +176 -336
  48. package/TextButton.js +26 -58
  49. package/Tooltip.js +17 -39
  50. package/Tracking.js +0 -1
  51. package/WrapperButton.js +20 -43
  52. package/build/bundle.css +1 -1
  53. package/build/bundle.js +1338 -1722
  54. package/package.json +1 -1
  55. package/svg/Accessories.js +6 -13
  56. package/svg/Account.js +6 -13
  57. package/svg/Add.js +6 -13
  58. package/svg/ArrowRight.js +6 -13
  59. package/svg/Bags.js +6 -13
  60. package/svg/BurgerMenu.js +6 -13
  61. package/svg/Calendar.js +6 -13
  62. package/svg/CalendarCircled.js +6 -13
  63. package/svg/CheckCircled.js +6 -13
  64. package/svg/Close.js +6 -13
  65. package/svg/Clothing.js +6 -13
  66. package/svg/Dot.js +6 -13
  67. package/svg/Edit.js +6 -13
  68. package/svg/Eye.js +6 -13
  69. package/svg/FileAttach.js +6 -13
  70. package/svg/FileAttachCircled.js +6 -13
  71. package/svg/LightBulb.js +6 -13
  72. package/svg/Logo.js +6 -13
  73. package/svg/LuxityMenu.js +6 -13
  74. package/svg/Minus.js +6 -13
  75. package/svg/MobileAvatar.js +6 -13
  76. package/svg/MyOrder.js +6 -13
  77. package/svg/MyPayment.js +6 -13
  78. package/svg/MyProfile.js +8 -14
  79. package/svg/MySale.js +6 -13
  80. package/svg/Notification.js +6 -13
  81. package/svg/PointerDown.js +6 -13
  82. package/svg/Search.js +6 -13
  83. package/svg/Shoes.js +6 -13
  84. package/svg/SvgWrapper.js +3 -7
  85. package/svg/Trash.js +6 -13
  86. package/svg/Watches.js +6 -13
@@ -1,110 +1,119 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('axios')) :
3
- typeof define === 'function' && define.amd ? define(['react', 'axios'], factory) :
4
- (global = global || self, global.LuxityDesktopHeader = factory(global.React, global.axios));
5
- }(this, (function (React, axios) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('axios'), require('styled-components')) :
3
+ typeof define === 'function' && define.amd ? define(['react', 'axios', 'styled-components'], factory) :
4
+ (global = global || self, global.LuxityDesktopHeader = factory(global.React, global.axios, global.styled));
5
+ }(this, (function (React, axios, styled) { 'use strict';
6
6
 
7
7
  var React__default = 'default' in React ? React['default'] : React;
8
8
  axios = axios && Object.prototype.hasOwnProperty.call(axios, 'default') ? axios['default'] : axios;
9
+ var styled__default = 'default' in styled ? styled['default'] : styled;
9
10
 
10
- function ownKeys(object, enumerableOnly) {
11
- var keys = Object.keys(object);
12
-
13
- if (Object.getOwnPropertySymbols) {
14
- var symbols = Object.getOwnPropertySymbols(object);
15
- enumerableOnly && (symbols = symbols.filter(function (sym) {
16
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
17
- })), keys.push.apply(keys, symbols);
11
+ function _arrayLikeToArray(r, a) {
12
+ (null == a || a > r.length) && (a = r.length);
13
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
14
+ return n;
15
+ }
16
+ function _arrayWithHoles(r) {
17
+ if (Array.isArray(r)) return r;
18
+ }
19
+ function _defineProperty(e, r, t) {
20
+ return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
21
+ value: t,
22
+ enumerable: !0,
23
+ configurable: !0,
24
+ writable: !0
25
+ }) : e[r] = t, e;
26
+ }
27
+ function _extends() {
28
+ return _extends = Object.assign ? Object.assign.bind() : function (n) {
29
+ for (var e = 1; e < arguments.length; e++) {
30
+ var t = arguments[e];
31
+ for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
32
+ }
33
+ return n;
34
+ }, _extends.apply(null, arguments);
35
+ }
36
+ function _iterableToArrayLimit(r, l) {
37
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
38
+ if (null != t) {
39
+ var e,
40
+ n,
41
+ i,
42
+ u,
43
+ a = [],
44
+ f = !0,
45
+ o = !1;
46
+ try {
47
+ if (i = (t = t.call(r)).next, 0 === l) {
48
+ if (Object(t) !== t) return;
49
+ f = !1;
50
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
51
+ } catch (r) {
52
+ o = !0, n = r;
53
+ } finally {
54
+ try {
55
+ if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;
56
+ } finally {
57
+ if (o) throw n;
58
+ }
59
+ }
60
+ return a;
18
61
  }
19
-
20
- return keys;
21
62
  }
22
-
23
- function _objectSpread2(target) {
24
- for (var i = 1; i < arguments.length; i++) {
25
- var source = null != arguments[i] ? arguments[i] : {};
26
- i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
27
- _defineProperty(target, key, source[key]);
28
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
29
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
30
- });
63
+ function _nonIterableRest() {
64
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
65
+ }
66
+ function ownKeys(e, r) {
67
+ var t = Object.keys(e);
68
+ if (Object.getOwnPropertySymbols) {
69
+ var o = Object.getOwnPropertySymbols(e);
70
+ r && (o = o.filter(function (r) {
71
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
72
+ })), t.push.apply(t, o);
31
73
  }
32
-
33
- return target;
74
+ return t;
34
75
  }
35
-
36
- function _defineProperty(obj, key, value) {
37
- if (key in obj) {
38
- Object.defineProperty(obj, key, {
39
- value: value,
40
- enumerable: true,
41
- configurable: true,
42
- writable: true
76
+ function _objectSpread2(e) {
77
+ for (var r = 1; r < arguments.length; r++) {
78
+ var t = null != arguments[r] ? arguments[r] : {};
79
+ r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
80
+ _defineProperty(e, r, t[r]);
81
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
82
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
43
83
  });
44
- } else {
45
- obj[key] = value;
46
84
  }
47
-
48
- return obj;
85
+ return e;
49
86
  }
50
-
51
- function _slicedToArray(arr, i) {
52
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
53
- }
54
-
55
- function _arrayWithHoles(arr) {
56
- if (Array.isArray(arr)) return arr;
87
+ function _slicedToArray(r, e) {
88
+ return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
57
89
  }
58
-
59
- function _iterableToArrayLimit(arr, i) {
60
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
61
-
62
- if (_i == null) return;
63
- var _arr = [];
64
- var _n = true;
65
- var _d = false;
66
-
67
- var _s, _e;
68
-
69
- try {
70
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
71
- _arr.push(_s.value);
72
-
73
- if (i && _arr.length === i) break;
90
+ function _taggedTemplateLiteral(e, t) {
91
+ return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {
92
+ raw: {
93
+ value: Object.freeze(t)
74
94
  }
75
- } catch (err) {
76
- _d = true;
77
- _e = err;
78
- } finally {
79
- try {
80
- if (!_n && _i["return"] != null) _i["return"]();
81
- } finally {
82
- if (_d) throw _e;
83
- }
84
- }
85
-
86
- return _arr;
95
+ }));
87
96
  }
88
-
89
- function _unsupportedIterableToArray(o, minLen) {
90
- if (!o) return;
91
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
92
- var n = Object.prototype.toString.call(o).slice(8, -1);
93
- if (n === "Object" && o.constructor) n = o.constructor.name;
94
- if (n === "Map" || n === "Set") return Array.from(o);
95
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
97
+ function _toPrimitive(t, r) {
98
+ if ("object" != typeof t || !t) return t;
99
+ var e = t[Symbol.toPrimitive];
100
+ if (void 0 !== e) {
101
+ var i = e.call(t, r || "default");
102
+ if ("object" != typeof i) return i;
103
+ throw new TypeError("@@toPrimitive must return a primitive value.");
104
+ }
105
+ return ("string" === r ? String : Number)(t);
96
106
  }
97
-
98
- function _arrayLikeToArray(arr, len) {
99
- if (len == null || len > arr.length) len = arr.length;
100
-
101
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
102
-
103
- return arr2;
107
+ function _toPropertyKey(t) {
108
+ var i = _toPrimitive(t, "string");
109
+ return "symbol" == typeof i ? i : i + "";
104
110
  }
105
-
106
- function _nonIterableRest() {
107
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
111
+ function _unsupportedIterableToArray(r, a) {
112
+ if (r) {
113
+ if ("string" == typeof r) return _arrayLikeToArray(r, a);
114
+ var t = {}.toString.call(r).slice(8, -1);
115
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
116
+ }
108
117
  }
109
118
 
110
119
  var cssUnit = {
@@ -246,16 +255,16 @@
246
255
 
247
256
  var Dropdown = function Dropdown(_ref) {
248
257
  var title = _ref.title,
249
- imageSrc = _ref.imageSrc,
250
- _ref$categoryElements = _ref.categoryElements,
251
- categoryElements = _ref$categoryElements === void 0 ? [] : _ref$categoryElements,
252
- _ref$brandElements = _ref.brandElements,
253
- brandElements = _ref$brandElements === void 0 ? [] : _ref$brandElements,
254
- productsUrl = _ref.productsUrl,
255
- categorySlug = _ref.categorySlug,
256
- categoryTitle = _ref.categoryTitle,
257
- isLoading = _ref.isLoading,
258
- hasError = _ref.hasError;
258
+ imageSrc = _ref.imageSrc,
259
+ _ref$categoryElements = _ref.categoryElements,
260
+ categoryElements = _ref$categoryElements === void 0 ? [] : _ref$categoryElements,
261
+ _ref$brandElements = _ref.brandElements,
262
+ brandElements = _ref$brandElements === void 0 ? [] : _ref$brandElements,
263
+ productsUrl = _ref.productsUrl,
264
+ categorySlug = _ref.categorySlug,
265
+ categoryTitle = _ref.categoryTitle,
266
+ isLoading = _ref.isLoading,
267
+ hasError = _ref.hasError;
259
268
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, hasError ? /*#__PURE__*/React__default.createElement("div", {
260
269
  className: "dropdown__errors"
261
270
  }, "Failed to load data.") : /*#__PURE__*/React__default.createElement("div", {
@@ -307,8 +316,8 @@
307
316
 
308
317
  var StoresDropdown = function StoresDropdown(_ref) {
309
318
  var _ref$stores = _ref.stores,
310
- stores = _ref$stores === void 0 ? [] : _ref$stores,
311
- contactNumber = _ref.contactNumber;
319
+ stores = _ref$stores === void 0 ? [] : _ref$stores,
320
+ contactNumber = _ref.contactNumber;
312
321
  return /*#__PURE__*/React__default.createElement("div", {
313
322
  className: "stores-dropdown"
314
323
  }, !!stores.length && stores.map(function (store) {
@@ -373,7 +382,6 @@
373
382
 
374
383
  var removeCategoryByName = function removeCategoryByName(categories, name) {
375
384
  var _categories$filter;
376
-
377
385
  return (_categories$filter = categories === null || categories === void 0 ? void 0 : categories.filter(function (category) {
378
386
  return category.name !== name;
379
387
  })) !== null && _categories$filter !== void 0 ? _categories$filter : [];
@@ -381,17 +389,15 @@
381
389
 
382
390
  var SearchResults = function SearchResults(_ref) {
383
391
  var searchValue = _ref.searchValue,
384
- searchResults = _ref.searchResults,
385
- onViewAll = _ref.onViewAll,
386
- searchResultsRef = _ref.searchResultsRef,
387
- onSearchSubmit = _ref.onSearchSubmit,
388
- setSearchValue = _ref.setSearchValue;
389
-
392
+ searchResults = _ref.searchResults,
393
+ onViewAll = _ref.onViewAll,
394
+ searchResultsRef = _ref.searchResultsRef,
395
+ onSearchSubmit = _ref.onSearchSubmit,
396
+ setSearchValue = _ref.setSearchValue;
390
397
  if (searchValue.trim().length >= 3) {
391
398
  if (searchResults.brands.length === 0 && searchResults.products.length === 0) {
392
399
  return null;
393
400
  }
394
-
395
401
  return /*#__PURE__*/React__default.createElement("div", {
396
402
  className: "z-50 absolute md:top-14 font-body bg-white w-full lg:w-1/2 flex flex-col md:flex-row md:divide-x divide-black lg:mt-1 shadow-md",
397
403
  ref: searchResultsRef
@@ -428,29 +434,178 @@
428
434
  className: "bottom-0 mt-5 py-3 w-full font-body text-center text-white uppercase bg-black hover:bg-gray-950 border border-black transition-all ease-in-out duration-300 cursor-pointer"
429
435
  }, "View all"))));
430
436
  }
431
-
432
437
  return null;
433
438
  };
434
439
 
440
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
441
+
442
+ /* position relative is required for the Body element to be positioned correctly */
443
+ var relativeInlineStyle = styled.css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: relative;\n"])));
444
+ var topMiddleBodyStyle = styled.css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n position: absolute;\n z-index: 1;\n bottom: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n"])));
445
+ var getTopMiddleArrowAfterStyle = function getTopMiddleArrowAfterStyle(props) {
446
+ return styled.css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n /*Bottom Arrow*/\n top: 100%; /* At the bottom of the tooltip */\n left: calc(50% - ", ");\n border-width: ", ";\n border-style: solid;\n border-color: ", " transparent transparent transparent;\n"])), props.apexWidth, props.apexWidth, props.theme.colors.base);
447
+ };
448
+ var getBottomMiddleBodyStyle = function getBottomMiddleBodyStyle(props) {
449
+ return styled.css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n position: absolute;\n top: 100%;\n left: calc(50% - ", " / 2);\n"])), props.bodyWidth);
450
+ };
451
+ var getBottomMiddleArrowAfterStyle = function getBottomMiddleArrowAfterStyle(props) {
452
+ return styled.css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n /*Top Arrow*/\n bottom: 100%; /* At the top of the tooltip */\n top: initial;\n left: 50%;\n border-style: solid;\n border-color: transparent transparent ", " transparent;\n"])), props.theme.colors.base);
453
+ };
454
+
455
+ var _templateObject$1;
456
+ var getBodyStyle = function getBodyStyle() {
457
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
458
+ var _props$toolTipPositio = props.toolTipPosition,
459
+ toolTipPosition = _props$toolTipPositio === void 0 ? '' : _props$toolTipPositio;
460
+ switch (toolTipPosition) {
461
+ case 'top':
462
+ return topMiddleBodyStyle;
463
+ case 'bottom':
464
+ return getBottomMiddleBodyStyle(props);
465
+ default:
466
+ return null;
467
+ }
468
+ };
469
+ var getAfterStyling = function getAfterStyling() {
470
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
471
+ var toolTipPosition = props.toolTipPosition;
472
+ switch (toolTipPosition) {
473
+ case 'top':
474
+ return getTopMiddleArrowAfterStyle(props);
475
+ case 'bottom':
476
+ return getBottomMiddleArrowAfterStyle(props);
477
+ default:
478
+ return '';
479
+ }
480
+ };
481
+ var Body = styled__default.span(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n ", ";\n visibility: hidden;\n opacity: 0;\n width: ", ";\n transition: visibility 0.3s linear, opacity 0.3s linear;\n background-color: ", ";\n color: white;\n text-align: center;\n border-radius: 5px;\n ", "\n &::after {\n content: ' ';\n position: absolute;\n ", "\n }\n"])), relativeInlineStyle, function (props) {
482
+ return props.bodyWidth;
483
+ }, function (props) {
484
+ return props.theme.colors.base || 'black';
485
+ }, function (props) {
486
+ return getBodyStyle(props);
487
+ }, function (props) {
488
+ return getAfterStyling(props);
489
+ });
490
+
491
+ var _templateObject$2;
492
+ var Container = styled__default.div(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n ", ";\n cursor: pointer;\n &:hover ", " {\n opacity: 1;\n visibility: visible;\n }\n"])), relativeInlineStyle, Body);
493
+
494
+ var theme = {
495
+ breakpoints: ['40em', '52em', '64em'],
496
+ space: ['0px', '4px', '8px', '16px', '32px', '64px', '128px', '256px', '512px'],
497
+ fontSizes: ['12px', '14px', '16px', '20px', '24px', '32px', '48px', '64px', '72px'],
498
+ marginPaddings: ['0.5rem', '1rem', '1.5rem', '2rem', '2.5rem', '3rem', '3.5rem', '4rem', '4.5rem', '5rem', '5.5rem', '6rem'],
499
+ letterSpacings: ['-0.5px', '0px', '+0.5px'],
500
+ radii: ['0px', '2px', '4px', '8px'],
501
+ borderRadius: '6px',
502
+ colors: {
503
+ primary: '#000',
504
+ base: '#4e4949',
505
+ baseLt: '#817c7c',
506
+ borderColor: '#d8d8d8',
507
+ ntrlMin: '#fff',
508
+ ntrlMinTen: '#e6e6e6',
509
+ gray: '#efefef',
510
+ darkerGray: '#454141'
511
+ },
512
+ rareStepColors: {
513
+ primary: '#202b58',
514
+ secondary: '#ef5c2d',
515
+ ntrlMin: '#ffffff',
516
+ ntrl40: '#f4f4f4',
517
+ ntrl50: '#808080',
518
+ ntrl60: '#e8e8e8',
519
+ ntrl70: '#252525',
520
+ ntrlMax: '#000000'
521
+ },
522
+ rareStepFontWeights: {
523
+ normal: 400,
524
+ medium: 500,
525
+ semiBold: 600,
526
+ bold: 700
527
+ },
528
+ rareStepFontSize: {
529
+ h1: '36px',
530
+ h2: '30px',
531
+ h3: '24px',
532
+ h4: '20px',
533
+ h5: '16px',
534
+ h6: '14px',
535
+ footerTitle: '16px'
536
+ },
537
+ rareStepPageSizes: {
538
+ mobile: '500px',
539
+ tablet: '768px',
540
+ desktop: '992px',
541
+ screenl: '1280px',
542
+ screenxl: '1680px',
543
+ screenxxl: '1920px',
544
+ container: '1600px'
545
+ }
546
+ };
547
+
548
+ var themed = (function (Component) {
549
+ return /*#__PURE__*/React.forwardRef(function (props, ref) {
550
+ return /*#__PURE__*/React__default.createElement(styled.ThemeProvider, {
551
+ theme: theme
552
+ }, /*#__PURE__*/React__default.createElement(Component, _extends({}, props, {
553
+ ref: ref
554
+ })));
555
+ });
556
+ });
557
+
558
+ var Tooltip = function Tooltip(_ref) {
559
+ var children = _ref.children,
560
+ toolTipText = _ref.toolTipText,
561
+ toolTipPosition = _ref.toolTipPosition,
562
+ bodyWidth = _ref.bodyWidth,
563
+ apexWidth = _ref.apexWidth,
564
+ containerClassName = _ref.containerClassName,
565
+ bodyClassName = _ref.bodyClassName;
566
+ return /*#__PURE__*/React__default.createElement(Container, {
567
+ className: containerClassName
568
+ }, children, /*#__PURE__*/React__default.createElement(Body, {
569
+ toolTipPosition: toolTipPosition,
570
+ bodyWidth: bodyWidth,
571
+ apexWidth: apexWidth,
572
+ className: bodyClassName
573
+ }, toolTipText));
574
+ };
575
+ Tooltip.defaultProps = {
576
+ children: null,
577
+ toolTipText: '',
578
+ toolTipPosition: 'top',
579
+ bodyWidth: '8em',
580
+ apexWidth: '5px',
581
+ containerClassName: '',
582
+ bodyClassName: ''
583
+ };
584
+ var Tooltip$1 = themed(Tooltip);
585
+
435
586
  var CurrencySelect = function CurrencySelect(_ref) {
436
587
  var currency = _ref.currency,
437
- currencyOptions = _ref.currencyOptions,
438
- onCurrencyChange = _ref.onCurrencyChange;
439
-
588
+ currencyOptions = _ref.currencyOptions,
589
+ onCurrencyChange = _ref.onCurrencyChange,
590
+ _ref$isCurrencySelect = _ref.isCurrencySelectionDisabled,
591
+ isCurrencySelectionDisabled = _ref$isCurrencySelect === void 0 ? false : _ref$isCurrencySelect,
592
+ _ref$tooltipContent = _ref.tooltipContent,
593
+ tooltipContent = _ref$tooltipContent === void 0 ? '' : _ref$tooltipContent;
440
594
  if (!currencyOptions || currencyOptions.length === 0) {
441
595
  return null;
442
596
  }
443
-
444
597
  var selectedOption = currencyOptions.find(function (opt) {
445
598
  return opt.value === currency;
446
599
  });
447
-
448
600
  if (!selectedOption) {
449
601
  return null;
450
602
  }
451
-
452
- return /*#__PURE__*/React__default.createElement("div", {
453
- className: "currency-select-container"
603
+ return /*#__PURE__*/React__default.createElement(Tooltip$1, {
604
+ toolTipText: isCurrencySelectionDisabled ? tooltipContent : '',
605
+ toolTipPosition: "bottom",
606
+ bodyWidth: "160px"
607
+ }, /*#__PURE__*/React__default.createElement("div", {
608
+ className: "currency-select-container ".concat(isCurrencySelectionDisabled ? 'disabled' : '')
454
609
  }, /*#__PURE__*/React__default.createElement("div", {
455
610
  className: "currency-flag"
456
611
  }, /*#__PURE__*/React__default.createElement("img", {
@@ -461,112 +616,106 @@
461
616
  onChange: function onChange(e) {
462
617
  return onCurrencyChange(e.target.value);
463
618
  },
464
- className: "currency-select"
619
+ className: "currency-select",
620
+ disabled: isCurrencySelectionDisabled
465
621
  }, currencyOptions.map(function (option) {
466
622
  return /*#__PURE__*/React__default.createElement("option", {
467
623
  key: option.value,
468
624
  value: option.value
469
625
  }, option.value, " (", option.symbol, ")");
470
- })));
626
+ }))));
471
627
  };
472
628
 
473
629
  var LuxityDesktopHeader = function LuxityDesktopHeader(_ref) {
474
630
  var accountIcon = _ref.accountIcon,
475
- cartIcon = _ref.cartIcon,
476
- interestIcon = _ref.interestIcon,
477
- cartCount = _ref.cartCount,
478
- logoSrc = _ref.logoSrc,
479
- categoryElements = _ref.categoryElements,
480
- newBrandsImage = _ref.newBrandsImage,
481
- bagsImage = _ref.bagsImage,
482
- shoesImage = _ref.shoesImage,
483
- clothingImage = _ref.clothingImage,
484
- accessoriesImage = _ref.accessoriesImage,
485
- watchesImage = _ref.watchesImage,
486
- stores = _ref.stores,
487
- contactNumber = _ref.contactNumber,
488
- productsUrl = _ref.productsUrl,
489
- onInterestClick = _ref.onInterestClick,
490
- onCartClick = _ref.onCartClick,
491
- onAccountClick = _ref.onAccountClick,
492
- inputSearchIcon = _ref.inputSearchIcon,
493
- onSearch = _ref.onSearch,
494
- onSellToUsClick = _ref.onSellToUsClick,
495
- contactUsLink = _ref.contactUsLink,
496
- ourStoryLink = _ref.ourStoryLink,
497
- onLogoClick = _ref.onLogoClick,
498
- endpoint = _ref.endpoint,
499
- menuData = _ref.menuData,
500
- onSearchSubmit = _ref.onSearchSubmit,
501
- onProductIdsReceived = _ref.onProductIdsReceived,
502
- currency = _ref.currency,
503
- currencyOptions = _ref.currencyOptions,
504
- onCurrencyChange = _ref.onCurrencyChange,
505
- hideCurrencySelect = _ref.hideCurrencySelect,
506
- shop = _ref.shop,
507
- app = _ref.app;
508
-
631
+ cartIcon = _ref.cartIcon,
632
+ interestIcon = _ref.interestIcon,
633
+ cartCount = _ref.cartCount,
634
+ logoSrc = _ref.logoSrc,
635
+ categoryElements = _ref.categoryElements,
636
+ newBrandsImage = _ref.newBrandsImage,
637
+ bagsImage = _ref.bagsImage,
638
+ shoesImage = _ref.shoesImage,
639
+ clothingImage = _ref.clothingImage,
640
+ accessoriesImage = _ref.accessoriesImage,
641
+ watchesImage = _ref.watchesImage,
642
+ stores = _ref.stores,
643
+ contactNumber = _ref.contactNumber,
644
+ productsUrl = _ref.productsUrl,
645
+ onInterestClick = _ref.onInterestClick,
646
+ onCartClick = _ref.onCartClick,
647
+ onAccountClick = _ref.onAccountClick,
648
+ inputSearchIcon = _ref.inputSearchIcon,
649
+ onSearch = _ref.onSearch,
650
+ onSellToUsClick = _ref.onSellToUsClick,
651
+ contactUsLink = _ref.contactUsLink,
652
+ ourStoryLink = _ref.ourStoryLink,
653
+ onLogoClick = _ref.onLogoClick,
654
+ endpoint = _ref.endpoint,
655
+ menuData = _ref.menuData,
656
+ onSearchSubmit = _ref.onSearchSubmit,
657
+ onProductIdsReceived = _ref.onProductIdsReceived,
658
+ currency = _ref.currency,
659
+ currencyOptions = _ref.currencyOptions,
660
+ onCurrencyChange = _ref.onCurrencyChange,
661
+ isCurrencySelectionDisabled = _ref.isCurrencySelectionDisabled,
662
+ tooltipContent = _ref.tooltipContent,
663
+ vipIcon = _ref.vipIcon,
664
+ name = _ref.name,
665
+ isVip = _ref.isVip,
666
+ shop = _ref.shop,
667
+ app = _ref.app;
509
668
  var _useState = React.useState(''),
510
- _useState2 = _slicedToArray(_useState, 2),
511
- searchValue = _useState2[0],
512
- setSearchValue = _useState2[1];
513
-
669
+ _useState2 = _slicedToArray(_useState, 2),
670
+ searchValue = _useState2[0],
671
+ setSearchValue = _useState2[1];
514
672
  var _useState3 = React.useState(false),
515
- _useState4 = _slicedToArray(_useState3, 2),
516
- loading = _useState4[0],
517
- setLoading = _useState4[1];
518
-
673
+ _useState4 = _slicedToArray(_useState3, 2),
674
+ loading = _useState4[0],
675
+ setLoading = _useState4[1];
519
676
  var _useState5 = React.useState({
520
- latestArrivals: [],
521
- bags: [],
522
- shoes: [],
523
- clothing: [],
524
- accessories: [],
525
- watches: [],
526
- accessoriesCategories: [],
527
- apparelStyles: []
528
- }),
529
- _useState6 = _slicedToArray(_useState5, 2),
530
- dropdownData = _useState6[0],
531
- setDropdownData = _useState6[1];
532
-
677
+ latestArrivals: [],
678
+ bags: [],
679
+ shoes: [],
680
+ clothing: [],
681
+ accessories: [],
682
+ watches: [],
683
+ accessoriesCategories: [],
684
+ apparelStyles: []
685
+ }),
686
+ _useState6 = _slicedToArray(_useState5, 2),
687
+ dropdownData = _useState6[0],
688
+ setDropdownData = _useState6[1];
533
689
  var _useState7 = React.useState(false),
534
- _useState8 = _slicedToArray(_useState7, 2),
535
- hasError = _useState8[0],
536
- setHasError = _useState8[1];
537
-
690
+ _useState8 = _slicedToArray(_useState7, 2),
691
+ hasError = _useState8[0],
692
+ setHasError = _useState8[1];
538
693
  var _useState9 = React.useState(false),
539
- _useState10 = _slicedToArray(_useState9, 2),
540
- searchLoading = _useState10[0],
541
- setSearchLoading = _useState10[1];
542
-
694
+ _useState10 = _slicedToArray(_useState9, 2),
695
+ searchLoading = _useState10[0],
696
+ setSearchLoading = _useState10[1];
543
697
  var _useState11 = React.useState({
544
- brands: [],
545
- products: []
546
- }),
547
- _useState12 = _slicedToArray(_useState11, 2),
548
- searchResults = _useState12[0],
549
- setSearchResults = _useState12[1];
550
-
698
+ brands: [],
699
+ products: []
700
+ }),
701
+ _useState12 = _slicedToArray(_useState11, 2),
702
+ searchResults = _useState12[0],
703
+ setSearchResults = _useState12[1];
551
704
  var searchResultsRef = React.useRef(null);
552
-
553
705
  var debounce = function debounce(func, wait) {
554
706
  var timeout;
555
707
  return function executedFunction() {
556
708
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
557
709
  args[_key] = arguments[_key];
558
710
  }
559
-
560
711
  var later = function later() {
561
712
  clearTimeout(timeout);
562
713
  func.apply(void 0, args);
563
714
  };
564
-
565
715
  clearTimeout(timeout);
566
716
  timeout = setTimeout(later, wait);
567
717
  };
568
718
  };
569
-
570
719
  var debouncedSearch = React.useCallback(debounce(function (nextValue) {
571
720
  setSearchLoading(true);
572
721
  axios.post(endpoint, searchProducts(nextValue, 6)).then(function (response) {
@@ -578,11 +727,9 @@
578
727
  setSearchLoading(false);
579
728
  });
580
729
  }, 500), [endpoint]);
581
-
582
730
  var handleChange = function handleChange(event) {
583
731
  var value = event.target.value;
584
732
  setSearchValue(value);
585
-
586
733
  if (value.trim().length >= 3) {
587
734
  debouncedSearch(value);
588
735
  } else {
@@ -592,20 +739,17 @@
592
739
  });
593
740
  }
594
741
  };
595
-
596
742
  React.useEffect(function () {
597
743
  var handleClickOutside = function handleClickOutside(event) {
598
744
  if (searchResultsRef.current && !searchResultsRef.current.contains(event.target)) {
599
745
  setSearchValue('');
600
746
  }
601
747
  };
602
-
603
748
  document.addEventListener('mousedown', handleClickOutside);
604
749
  return function () {
605
750
  document.removeEventListener('mousedown', handleClickOutside);
606
751
  };
607
752
  }, []);
608
-
609
753
  var handleKeyDown = function handleKeyDown(event) {
610
754
  if (event.key === 'Enter') {
611
755
  onSearchSubmit(searchValue);
@@ -614,7 +758,6 @@
614
758
  setSearchValue('');
615
759
  }
616
760
  };
617
-
618
761
  function addCategoryToElements(elements, categoryName) {
619
762
  return elements.map(function (element) {
620
763
  return _objectSpread2(_objectSpread2({}, element), {}, {
@@ -622,7 +765,6 @@
622
765
  });
623
766
  });
624
767
  }
625
-
626
768
  React.useMemo(function () {
627
769
  setLoading(true);
628
770
  axios.get("".concat(menuData)).then(function (_ref2) {
@@ -809,31 +951,51 @@
809
951
  className: "navbar__icons-wrapper"
810
952
  }, /*#__PURE__*/React__default.createElement("div", {
811
953
  className: "navbar__icons"
812
- }, !hideCurrencySelect && /*#__PURE__*/React__default.createElement(CurrencySelect, {
954
+ }, /*#__PURE__*/React__default.createElement(CurrencySelect, {
813
955
  currency: currency,
814
956
  currencyOptions: currencyOptions,
815
- onCurrencyChange: onCurrencyChange
816
- }), /*#__PURE__*/React__default.createElement("button", {
957
+ onCurrencyChange: onCurrencyChange,
958
+ isCurrencySelectionDisabled: isCurrencySelectionDisabled,
959
+ tooltipContent: tooltipContent
960
+ }), shop && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("button", {
817
961
  type: "button",
818
- className: "".concat(app ? 'navbar__icon--app' : 'navbar__icon'),
819
- onClick: onInterestClick
962
+ className: "navbar__icon relative flex",
963
+ onClick: onAccountClick
820
964
  }, /*#__PURE__*/React__default.createElement("img", {
821
- src: interestIcon,
822
- alt: "interest-icon"
823
- })), shop && /*#__PURE__*/React__default.createElement("button", {
965
+ src: accountIcon,
966
+ alt: "account-icon",
967
+ width: 20,
968
+ height: 20
969
+ }), isVip && /*#__PURE__*/React__default.createElement("img", {
970
+ src: vipIcon,
971
+ alt: "vip-icon",
972
+ className: "navbar__vip-icon",
973
+ width: 16,
974
+ height: 16
975
+ })), isVip && /*#__PURE__*/React__default.createElement("button", {
824
976
  type: "button",
825
- className: "navbar__icon",
977
+ className: "mr-3",
826
978
  onClick: onAccountClick
979
+ }, /*#__PURE__*/React__default.createElement("span", {
980
+ className: "text-sm"
981
+ }, name))), /*#__PURE__*/React__default.createElement("button", {
982
+ type: "button",
983
+ className: "".concat(app ? 'navbar__icon--app' : 'navbar__icon'),
984
+ onClick: onInterestClick
827
985
  }, /*#__PURE__*/React__default.createElement("img", {
828
- src: accountIcon,
829
- alt: "account-icon"
986
+ src: interestIcon,
987
+ alt: "interest-icon",
988
+ width: 20,
989
+ height: 20
830
990
  })), /*#__PURE__*/React__default.createElement("button", {
831
991
  type: "button",
832
992
  className: "navbar__cart-icon ".concat(app ? 'navbar__icon--app' : 'navbar__icon'),
833
993
  onClick: onCartClick
834
994
  }, /*#__PURE__*/React__default.createElement("img", {
835
995
  src: cartIcon,
836
- alt: "cart-icon"
996
+ alt: "cart-icon",
997
+ width: 20,
998
+ height: 20
837
999
  }), shop && /*#__PURE__*/React__default.createElement("div", {
838
1000
  className: "navbar__cart-count"
839
1001
  }, cartCount))), /*#__PURE__*/React__default.createElement("nav", {