@cleartrip/ct-design-header 1.2.0-SNAPSHOT-header-v0.7.0 → 1.2.0-SNAPSHOT-header-v0.9.0.0
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/dist/BusinessDropdown/index.d.ts.map +1 -1
- package/dist/Header.d.ts.map +1 -1
- package/dist/HeaderAnimatedMask /hooks.d.ts.map +1 -1
- package/dist/LobsHeader/index.d.ts.map +1 -1
- package/dist/RewardsSection/LoyaltyChips.d.ts.map +1 -1
- package/dist/RewardsSection/index.d.ts.map +1 -1
- package/dist/UserAccount/UserAccountDropdown.d.ts.map +1 -1
- package/dist/UserAccount/accountOptions.d.ts +0 -1
- package/dist/UserAccount/accountOptions.d.ts.map +1 -1
- package/dist/UserAccount/index.d.ts.map +1 -1
- package/dist/constants.d.ts +31 -34
- package/dist/constants.d.ts.map +1 -1
- package/dist/ct-design-header.browser.cjs.js +1 -1
- package/dist/ct-design-header.browser.cjs.js.map +1 -1
- package/dist/ct-design-header.browser.esm.js +1 -1
- package/dist/ct-design-header.browser.esm.js.map +1 -1
- package/dist/ct-design-header.cjs.js +196 -450
- package/dist/ct-design-header.cjs.js.map +1 -1
- package/dist/ct-design-header.esm.js +197 -451
- package/dist/ct-design-header.esm.js.map +1 -1
- package/dist/ct-design-header.umd.js +200 -453
- package/dist/ct-design-header.umd.js.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/type.d.ts +1 -17
- package/dist/type.d.ts.map +1 -1
- package/package.json +8 -8
- package/dist/utils.d.ts +0 -8
- package/dist/utils.d.ts.map +0 -1
|
@@ -2,11 +2,10 @@ import { __assign, __spreadArray } from 'tslib';
|
|
|
2
2
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
3
|
import { createContext, useContext, useState, useRef, useEffect, useCallback, useMemo } from 'react';
|
|
4
4
|
import { Container } from '@cleartrip/ct-design-container';
|
|
5
|
-
import { Typography
|
|
6
|
-
import {
|
|
5
|
+
import { Typography } from '@cleartrip/ct-design-typography';
|
|
6
|
+
import { Button } from '@cleartrip/ct-design-button';
|
|
7
7
|
import { Divider } from '@cleartrip/ct-design-divider';
|
|
8
8
|
import { Offers, BusinessBag, ChevronDown, MyTrips, SupportIcon, ArrowRight, MyAccount, SavedCard, Travellers, HiFive, Wallet, SettingsCog, PrivacyRights, HeaderChevronRight, FkVip, FkPremium, InsiderIcon, InsiderElite, CtLoyalty, Supercoin, Signout, CTLogo, Fkcompany } from '@cleartrip/ct-design-icons';
|
|
9
|
-
import { Shimmer } from '@cleartrip/ct-design-shimmer';
|
|
10
9
|
|
|
11
10
|
var OFFERS_URL = 'all-offers/?categories=flights';
|
|
12
11
|
var MY_TRIPS_URL = '/account/trips';
|
|
@@ -14,27 +13,23 @@ var SUPPORT_URL = '/support';
|
|
|
14
13
|
var NAVBAR_OPTIONS = [{
|
|
15
14
|
lefticon: Offers,
|
|
16
15
|
text: 'Offers',
|
|
17
|
-
ravenActionName: 'offers',
|
|
18
16
|
isHoverable: false,
|
|
19
17
|
isClickable: true,
|
|
20
18
|
link: OFFERS_URL
|
|
21
19
|
}, {
|
|
22
20
|
lefticon: BusinessBag,
|
|
23
21
|
text: 'Business',
|
|
24
|
-
ravenActionName: 'business',
|
|
25
22
|
rightIcon: ChevronDown,
|
|
26
23
|
isHoverable: true
|
|
27
24
|
}, {
|
|
28
25
|
lefticon: MyTrips,
|
|
29
26
|
text: 'My Trips',
|
|
30
|
-
ravenActionName: 'mytrips',
|
|
31
27
|
isHoverable: false,
|
|
32
28
|
isClickable: true,
|
|
33
29
|
link: MY_TRIPS_URL
|
|
34
30
|
}, {
|
|
35
31
|
lefticon: SupportIcon,
|
|
36
32
|
text: 'Support',
|
|
37
|
-
ravenActionName: 'support',
|
|
38
33
|
isHoverable: false,
|
|
39
34
|
isClickable: true,
|
|
40
35
|
link: SUPPORT_URL
|
|
@@ -48,36 +43,33 @@ var LOBS = {
|
|
|
48
43
|
};
|
|
49
44
|
var LOB_DATA = [{
|
|
50
45
|
title: LOBS.FLIGHTS,
|
|
51
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
46
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_48,h_48,dpr_2/offermgmt-prod/offermgmt/images/banner/flight_uhp.png?cache=true',
|
|
52
47
|
link: '/flights'
|
|
53
48
|
}, {
|
|
54
49
|
title: LOBS.HOTELS,
|
|
55
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
50
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_48,h_48,dpr_2/offermgmt-prod/offermgmt/images/banner/hotel_uhp.png?cache=true',
|
|
56
51
|
link: '/hotels'
|
|
57
52
|
}, {
|
|
58
53
|
title: LOBS.BUSES,
|
|
59
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
54
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_40,h_40,dpr_2/offermgmt-prod/offermgmt/images/banner/bus_uhp.png?cache=true',
|
|
60
55
|
link: '/bus'
|
|
61
56
|
}, {
|
|
62
57
|
title: LOBS.TRAIN,
|
|
63
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
58
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_40,h_40,dpr_2/offermgmt-prod/offermgmt/images/banner/train_uhp.png?cache=true',
|
|
64
59
|
link: '/pages/trains/appOnly'
|
|
65
60
|
}, {
|
|
66
61
|
title: LOBS.PACKAGES,
|
|
67
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
62
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_40,h_40,dpr_2/offermgmt-prod/offermgmt/images/banner/holiday_uhp.png?cache=true',
|
|
68
63
|
link: '/holidays'
|
|
69
64
|
}];
|
|
70
65
|
var bdConfig = [{
|
|
71
66
|
title: 'AgentBox',
|
|
72
67
|
subtitle: 'For travel agents',
|
|
73
|
-
details: 'One-stop travel solution offering the best deals to our travel agency partners'
|
|
74
|
-
link: 'https://agency.cleartrip.com'
|
|
68
|
+
details: 'One-stop travel solution offering the best deals to our travel agency partners'
|
|
75
69
|
}, {
|
|
76
70
|
title: 'OutOfOffice',
|
|
77
71
|
subtitle: 'For startups, corporates and SMEs',
|
|
78
|
-
details: 'Manage corporate business travel, smartly'
|
|
79
|
-
link: 'https://ooo.cleartrip.com/',
|
|
80
|
-
ravenActionName: 'ooo'
|
|
72
|
+
details: 'Manage corporate business travel, smartly'
|
|
81
73
|
}, {
|
|
82
74
|
title: 'MICE',
|
|
83
75
|
subtitle: 'For corporate events',
|
|
@@ -93,32 +85,13 @@ var BUSINESS_DROPDOWN_HEADING = 'Other business services';
|
|
|
93
85
|
var RAVEN_PAGE_NAMES;
|
|
94
86
|
(function (RAVEN_PAGE_NAMES) {
|
|
95
87
|
RAVEN_PAGE_NAMES["UNIFIED_HOME"] = "unified_homepage";
|
|
96
|
-
RAVEN_PAGE_NAMES["HOTELS_HOME"] = "
|
|
97
|
-
RAVEN_PAGE_NAMES["FLIGHTS_HOME"] = "
|
|
88
|
+
RAVEN_PAGE_NAMES["HOTELS_HOME"] = "hotels_homepage";
|
|
89
|
+
RAVEN_PAGE_NAMES["FLIGHTS_HOME"] = "flights_homepage";
|
|
98
90
|
})(RAVEN_PAGE_NAMES || (RAVEN_PAGE_NAMES = {}));
|
|
99
91
|
var RAVEN_PLATFORMS;
|
|
100
92
|
(function (RAVEN_PLATFORMS) {
|
|
101
93
|
RAVEN_PLATFORMS["DESKTOP"] = "desktop";
|
|
102
94
|
})(RAVEN_PLATFORMS || (RAVEN_PLATFORMS = {}));
|
|
103
|
-
var LOG_IN_TEXT = 'Log in';
|
|
104
|
-
var THEME_CONFIG = {
|
|
105
|
-
NOVAC: {
|
|
106
|
-
headerBackground: 'transparent',
|
|
107
|
-
hoverColor: '#FDBA12',
|
|
108
|
-
logoFill: '#FFF',
|
|
109
|
-
fkcompanyColor: '#FFF',
|
|
110
|
-
typographyColor: '#FFF',
|
|
111
|
-
loginButtonColorVariant: ButtonColor.NEUTRAL
|
|
112
|
-
},
|
|
113
|
-
DEFAULT: {
|
|
114
|
-
headerBackground: '#FFFFFF',
|
|
115
|
-
hoverColor: '#FF4F17',
|
|
116
|
-
logoFill: '#FF4F17',
|
|
117
|
-
fkcompanyColor: '#1A1A1A',
|
|
118
|
-
typographyColor: '#1A1A1A',
|
|
119
|
-
loginButtonColorVariant: ButtonColor.PRIMARY
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
95
|
|
|
123
96
|
var HeaderContext = createContext(undefined);
|
|
124
97
|
var useHeaderContext = function () {
|
|
@@ -145,53 +118,44 @@ var LobsHeader = function () {
|
|
|
145
118
|
alignItems: 'center',
|
|
146
119
|
justifyContent: 'center',
|
|
147
120
|
padding: '16px',
|
|
148
|
-
|
|
121
|
+
height: '64',
|
|
122
|
+
background: '#F3F5FA',
|
|
149
123
|
top: '64px',
|
|
150
124
|
zIndex: 2,
|
|
151
125
|
css: {
|
|
152
|
-
gap:
|
|
126
|
+
gap: 40
|
|
153
127
|
}
|
|
154
128
|
}, {
|
|
155
129
|
children: LOB_DATA.map(function (item, index) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
130
|
+
return jsxs(Container, __assign({
|
|
131
|
+
display: 'flex',
|
|
132
|
+
alignItems: 'center',
|
|
133
|
+
cursor: 'pointer',
|
|
134
|
+
css: {
|
|
135
|
+
gap: 8,
|
|
136
|
+
background: selectedLOB === item.title ? '#FFFFFF' : 'transparent',
|
|
137
|
+
borderRadius: selectedLOB === item.title ? '40px' : '0',
|
|
138
|
+
padding: selectedLOB === item.title ? '8px 16px 8px 8px' : '0'
|
|
139
|
+
},
|
|
140
|
+
onClick: function () {
|
|
141
|
+
window.location.href = item.link;
|
|
165
142
|
}
|
|
166
143
|
}, {
|
|
167
|
-
children:
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
width:
|
|
171
|
-
height:
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
padding: '8px 16px 8px 8px',
|
|
179
|
-
transition: 'background 0.2s ease'
|
|
180
|
-
}
|
|
144
|
+
children: [jsx("img", {
|
|
145
|
+
src: item.image,
|
|
146
|
+
alt: item.title,
|
|
147
|
+
width: 32,
|
|
148
|
+
height: 32
|
|
149
|
+
}), jsx(Typography, __assign({
|
|
150
|
+
variant: 'P1',
|
|
151
|
+
style: {
|
|
152
|
+
fontWeight: selectedLOB === item.title ? 600 : 500
|
|
153
|
+
},
|
|
154
|
+
isClickable: true
|
|
181
155
|
}, {
|
|
182
|
-
children:
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
width: 32,
|
|
186
|
-
height: 32
|
|
187
|
-
}), jsx(Typography, __assign({
|
|
188
|
-
variant: isSelected ? TypographyVariant.HM3 : TypographyVariant.B1,
|
|
189
|
-
isClickable: true
|
|
190
|
-
}, {
|
|
191
|
-
children: title
|
|
192
|
-
}))]
|
|
193
|
-
}), index)
|
|
194
|
-
}));
|
|
156
|
+
children: item.title
|
|
157
|
+
}))]
|
|
158
|
+
}), index);
|
|
195
159
|
})
|
|
196
160
|
}));
|
|
197
161
|
};
|
|
@@ -390,85 +354,11 @@ var useDropdownAnimation = function (isOpen) {
|
|
|
390
354
|
};
|
|
391
355
|
};
|
|
392
356
|
|
|
393
|
-
var stringifyPayload = function (payload) {
|
|
394
|
-
var keys = Object.keys(payload);
|
|
395
|
-
var numericValues = [];
|
|
396
|
-
keys.forEach(function (key) {
|
|
397
|
-
if (numericValues.includes(key)) {
|
|
398
|
-
payload[key] = Number(payload[key]);
|
|
399
|
-
} else {
|
|
400
|
-
payload[key] = '' + payload[key];
|
|
401
|
-
}
|
|
402
|
-
});
|
|
403
|
-
return payload;
|
|
404
|
-
};
|
|
405
|
-
var isServer = function () {
|
|
406
|
-
return typeof window === 'undefined' || !window;
|
|
407
|
-
};
|
|
408
|
-
var getQueryParam = function (queryParam) {
|
|
409
|
-
if (isServer()) {
|
|
410
|
-
return '';
|
|
411
|
-
}
|
|
412
|
-
var urlParams = new URLSearchParams(window.location.search);
|
|
413
|
-
return urlParams.get(queryParam);
|
|
414
|
-
};
|
|
415
|
-
var ravenLoyaltyTypes = function (loyaltyType) {
|
|
416
|
-
switch (loyaltyType) {
|
|
417
|
-
case 'FkVip':
|
|
418
|
-
return 'fk_vip';
|
|
419
|
-
case 'FkPremium':
|
|
420
|
-
return 'fk_plus_premium';
|
|
421
|
-
case 'InsiderIcon':
|
|
422
|
-
return 'myntra_insidericon';
|
|
423
|
-
case 'InsiderElite':
|
|
424
|
-
return 'myntra_insiderelite';
|
|
425
|
-
default:
|
|
426
|
-
return '';
|
|
427
|
-
}
|
|
428
|
-
};
|
|
429
|
-
var ravenSDKTrigger = function (isUserLoggedIn, eventName, ravenPayload, customRavenPayload, ravenPushCallback, pageName) {
|
|
430
|
-
var _a;
|
|
431
|
-
if (typeof ravenPushCallback !== 'function') {
|
|
432
|
-
console.error('ravenPushCallback is not provided or is not a function');
|
|
433
|
-
return;
|
|
434
|
-
}
|
|
435
|
-
var commonPayload = {
|
|
436
|
-
page_name: pageName,
|
|
437
|
-
platform: RAVEN_PLATFORMS.DESKTOP,
|
|
438
|
-
login_status: isUserLoggedIn ? 'yes' : 'no',
|
|
439
|
-
domain: (_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.host
|
|
440
|
-
};
|
|
441
|
-
var newRavenPayload = stringifyPayload(ravenPayload);
|
|
442
|
-
var parsedCustomRavenPayload = stringifyPayload(customRavenPayload);
|
|
443
|
-
var finalPayload = __assign(__assign(__assign({}, commonPayload), newRavenPayload), parsedCustomRavenPayload);
|
|
444
|
-
try {
|
|
445
|
-
if (ravenPushCallback.length === 1) {
|
|
446
|
-
ravenPushCallback({
|
|
447
|
-
eventName: eventName,
|
|
448
|
-
eventData: finalPayload
|
|
449
|
-
});
|
|
450
|
-
} else {
|
|
451
|
-
ravenPushCallback(eventName, finalPayload);
|
|
452
|
-
}
|
|
453
|
-
} catch (err) {
|
|
454
|
-
console.error(err);
|
|
455
|
-
return;
|
|
456
|
-
}
|
|
457
|
-
};
|
|
458
|
-
|
|
459
357
|
var BusinessDropdownContent = function (_a) {
|
|
460
358
|
var isOpen = _a.isOpen;
|
|
461
|
-
var _b =
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
ravenPageName = _b.ravenPageName,
|
|
465
|
-
ravenEventName = _b.ravenEventName,
|
|
466
|
-
loyaltyType = _b.loyaltyType,
|
|
467
|
-
_c = _b.ravenPayload,
|
|
468
|
-
ravenPayload = _c === void 0 ? {} : _c;
|
|
469
|
-
var _d = useState(0),
|
|
470
|
-
leftPosition = _d[0],
|
|
471
|
-
setLeftPosition = _d[1];
|
|
359
|
+
var _b = useState(0),
|
|
360
|
+
leftPosition = _b[0],
|
|
361
|
+
setLeftPosition = _b[1];
|
|
472
362
|
var containerRef = useDropdownAnimation(isOpen).containerRef;
|
|
473
363
|
useEffect(function () {
|
|
474
364
|
var updatePosition = function () {
|
|
@@ -487,21 +377,6 @@ var BusinessDropdownContent = function (_a) {
|
|
|
487
377
|
return window.removeEventListener('resize', updatePosition);
|
|
488
378
|
};
|
|
489
379
|
}, [containerRef, leftPosition]);
|
|
490
|
-
var handleBusinessDropdownClick = useCallback(function (link, title, ravenActionName) {
|
|
491
|
-
var _a;
|
|
492
|
-
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
493
|
-
var actionName = ravenActionName ? "".concat(ravenActionName, "_business_click") : title ? "".concat(title.toLowerCase(), "_business_click") : '';
|
|
494
|
-
var defaultPayload = {
|
|
495
|
-
action_name: actionName,
|
|
496
|
-
action_type: 'click',
|
|
497
|
-
u_utm_source: utmSource,
|
|
498
|
-
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
499
|
-
};
|
|
500
|
-
if (link) {
|
|
501
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
502
|
-
window.location.href = link;
|
|
503
|
-
}
|
|
504
|
-
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName, loyaltyType]);
|
|
505
380
|
return jsxs(Container, __assign({
|
|
506
381
|
ref: containerRef,
|
|
507
382
|
backgroundColor: '#fff',
|
|
@@ -522,7 +397,10 @@ var BusinessDropdownContent = function (_a) {
|
|
|
522
397
|
backgroundColor: '#FFF1EC'
|
|
523
398
|
}, {
|
|
524
399
|
children: jsx(Typography, __assign({
|
|
525
|
-
variant: 'HM2'
|
|
400
|
+
variant: 'HM2',
|
|
401
|
+
css: {
|
|
402
|
+
lineHeight: '24px'
|
|
403
|
+
}
|
|
526
404
|
}, {
|
|
527
405
|
children: BUSINESS_DROPDOWN_HEADING
|
|
528
406
|
}))
|
|
@@ -536,46 +414,32 @@ var BusinessDropdownContent = function (_a) {
|
|
|
536
414
|
children: bdConfig.map(function (_a) {
|
|
537
415
|
var title = _a.title,
|
|
538
416
|
subtitle = _a.subtitle,
|
|
539
|
-
details = _a.details
|
|
540
|
-
link = _a.link,
|
|
541
|
-
ravenActionName = _a.ravenActionName;
|
|
417
|
+
details = _a.details;
|
|
542
418
|
return jsxs(Container, __assign({
|
|
543
419
|
cursor: 'pointer',
|
|
544
|
-
display: 'flex',
|
|
545
|
-
flexDirection: 'column',
|
|
546
420
|
width: '200px',
|
|
547
|
-
|
|
548
|
-
className: 'bd-hover-container',
|
|
549
|
-
onClick: function () {
|
|
550
|
-
return handleBusinessDropdownClick(link, title, ravenActionName);
|
|
551
|
-
}
|
|
421
|
+
className: 'bd-hover-container'
|
|
552
422
|
}, {
|
|
553
423
|
children: [jsxs(Container, __assign({
|
|
554
424
|
display: 'flex',
|
|
555
|
-
flexDirection: '
|
|
556
|
-
|
|
425
|
+
flexDirection: 'row',
|
|
426
|
+
alignItems: 'center',
|
|
427
|
+
columnGap: '8px'
|
|
557
428
|
}, {
|
|
558
|
-
children: [
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
alignItems: 'center',
|
|
562
|
-
columnGap: '8px'
|
|
429
|
+
children: [jsx(Typography, __assign({
|
|
430
|
+
variant: 'HM2',
|
|
431
|
+
className: 'color-orange-on-hover'
|
|
563
432
|
}, {
|
|
564
|
-
children:
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
opacity: 0.75
|
|
575
|
-
}
|
|
576
|
-
}, {
|
|
577
|
-
children: subtitle
|
|
578
|
-
}))]
|
|
433
|
+
children: title
|
|
434
|
+
})), jsx(AnimatedArrow, {})]
|
|
435
|
+
})), jsx(Typography, __assign({
|
|
436
|
+
variant: 'B3',
|
|
437
|
+
css: {
|
|
438
|
+
marginTop: '4px',
|
|
439
|
+
opacity: 0.75
|
|
440
|
+
}
|
|
441
|
+
}, {
|
|
442
|
+
children: subtitle
|
|
579
443
|
})), jsx(Typography, __assign({
|
|
580
444
|
variant: 'P3',
|
|
581
445
|
color: 'subheading',
|
|
@@ -653,7 +517,6 @@ var ACCOUNT_OPTIONS_POPUP_CONFIG = [{
|
|
|
653
517
|
redirectionLink: 'accounts/personal-data-dashboard'
|
|
654
518
|
}];
|
|
655
519
|
var SIGN_OUT_TEXT = 'Logout';
|
|
656
|
-
var MY_ACCOUNT_TEXT = 'My Account';
|
|
657
520
|
var LOGGEDIN_USER_TEXT = 'You are logged in with';
|
|
658
521
|
var HEADER_ACCOUNTS_OPTIONS_OPEN_BTN_ID = 'header-acc-btn';
|
|
659
522
|
var ACCOUNT_OPTIONS_CONTAINER_ID = 'account-options';
|
|
@@ -665,33 +528,13 @@ var LoyaltyChip = function (_a) {
|
|
|
665
528
|
backgroundGradient = _a.backgroundGradient,
|
|
666
529
|
handleChipClick = _a.handleChipClick,
|
|
667
530
|
chevronFillColor = _a.chevronFillColor;
|
|
668
|
-
var _b =
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
ravenEventName = _b.ravenEventName;
|
|
676
|
-
var _d = useState(false),
|
|
677
|
-
isHovered = _d[0],
|
|
678
|
-
setIsHovered = _d[1];
|
|
679
|
-
var handleClick = useCallback(function () {
|
|
680
|
-
var _a;
|
|
681
|
-
if (handleChipClick) {
|
|
682
|
-
handleChipClick();
|
|
683
|
-
} else {
|
|
684
|
-
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
685
|
-
var defaultPayload = {
|
|
686
|
-
action_name: "loyalty_account_click",
|
|
687
|
-
action_type: 'click',
|
|
688
|
-
u_utm_source: utmSource,
|
|
689
|
-
loyaltyType: ravenLoyaltyTypes(loyaltyType)
|
|
690
|
-
};
|
|
691
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
692
|
-
window.location.href = '/all-offers/loyalty-october';
|
|
693
|
-
}
|
|
694
|
-
}, [handleChipClick, loyaltyType, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
531
|
+
var _b = useState(false),
|
|
532
|
+
isHovered = _b[0],
|
|
533
|
+
setIsHovered = _b[1];
|
|
534
|
+
var handleClick = function () {
|
|
535
|
+
window.location.href = '/';
|
|
536
|
+
handleChipClick && handleChipClick();
|
|
537
|
+
};
|
|
695
538
|
return jsxs(Container, __assign({
|
|
696
539
|
display: 'flex',
|
|
697
540
|
position: 'relative',
|
|
@@ -716,7 +559,7 @@ var LoyaltyChip = function (_a) {
|
|
|
716
559
|
onClick: handleClick
|
|
717
560
|
}, {
|
|
718
561
|
children: [jsx(Container, {
|
|
719
|
-
|
|
562
|
+
style: {
|
|
720
563
|
content: '""',
|
|
721
564
|
position: 'absolute',
|
|
722
565
|
inset: 0,
|
|
@@ -725,7 +568,7 @@ var LoyaltyChip = function (_a) {
|
|
|
725
568
|
zIndex: -2
|
|
726
569
|
}
|
|
727
570
|
}), jsx(Container, {
|
|
728
|
-
|
|
571
|
+
style: {
|
|
729
572
|
content: '""',
|
|
730
573
|
position: 'absolute',
|
|
731
574
|
inset: 0,
|
|
@@ -746,7 +589,7 @@ var LoyaltyChip = function (_a) {
|
|
|
746
589
|
})), jsx(Container, __assign({
|
|
747
590
|
display: 'flex',
|
|
748
591
|
alignItems: 'center',
|
|
749
|
-
|
|
592
|
+
style: {
|
|
750
593
|
overflow: 'hidden',
|
|
751
594
|
maxWidth: isHovered ? 16 : 0,
|
|
752
595
|
transition: 'max-width 0.2s ease-in-out, opacity 0.2s ease-in-out',
|
|
@@ -811,46 +654,24 @@ var ExpandableItem = function (_a) {
|
|
|
811
654
|
handleChipClick = _a.handleChipClick,
|
|
812
655
|
value = _a.value,
|
|
813
656
|
type = _a.type;
|
|
814
|
-
var _b =
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
var _d = useState(false),
|
|
823
|
-
isHovered = _d[0],
|
|
824
|
-
setIsHovered = _d[1];
|
|
825
|
-
var handleDefaultClick = useCallback(function () {
|
|
826
|
-
var _a;
|
|
827
|
-
if (handleChipClick) {
|
|
828
|
-
handleChipClick();
|
|
829
|
-
} else {
|
|
830
|
-
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
831
|
-
var defaultPayload = {
|
|
832
|
-
action_name: "".concat(type, "_account_click"),
|
|
833
|
-
action_type: 'click',
|
|
834
|
-
u_utm_source: utmSource,
|
|
835
|
-
loyaltyType: ravenLoyaltyTypes(loyaltyType)
|
|
836
|
-
};
|
|
837
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
838
|
-
var redirectUrls = {
|
|
839
|
-
supercoin: '/all-offers/supercoins/',
|
|
840
|
-
wallet: '/accounts/wallet'
|
|
841
|
-
};
|
|
842
|
-
if (redirectUrls[type]) {
|
|
843
|
-
window.location.href = redirectUrls[type];
|
|
844
|
-
}
|
|
657
|
+
var _b = useState(false),
|
|
658
|
+
isHovered = _b[0],
|
|
659
|
+
setIsHovered = _b[1];
|
|
660
|
+
var handleDefaultClick = function () {
|
|
661
|
+
if (type === 'supercoins') {
|
|
662
|
+
window.location.href = '/supercoins';
|
|
663
|
+
} else if (type === 'wallet') {
|
|
664
|
+
window.location.href = '/wallet';
|
|
845
665
|
}
|
|
846
|
-
|
|
666
|
+
handleChipClick && handleChipClick();
|
|
667
|
+
};
|
|
847
668
|
return jsxs(Container, __assign({
|
|
848
669
|
display: 'flex',
|
|
849
670
|
alignItems: 'center',
|
|
850
671
|
justifyContent: 'center',
|
|
851
672
|
borderRadius: '8px',
|
|
852
673
|
cursor: 'pointer',
|
|
853
|
-
|
|
674
|
+
style: {
|
|
854
675
|
height: 32,
|
|
855
676
|
paddingLeft: 8,
|
|
856
677
|
paddingRight: isHovered ? 4 : 8,
|
|
@@ -881,7 +702,7 @@ var ExpandableItem = function (_a) {
|
|
|
881
702
|
})), jsx(Container, __assign({
|
|
882
703
|
display: 'flex',
|
|
883
704
|
alignItems: 'center',
|
|
884
|
-
|
|
705
|
+
style: {
|
|
885
706
|
overflow: 'hidden',
|
|
886
707
|
maxWidth: isHovered ? 16 : 0,
|
|
887
708
|
transition: 'max-width 0.2s ease-in-out, opacity 0.2s ease-in-out',
|
|
@@ -909,12 +730,6 @@ var RewardsSection = function () {
|
|
|
909
730
|
hideWalletChip = _b.hideWalletChip,
|
|
910
731
|
hideSupercoinsChip = _b.hideSupercoinsChip,
|
|
911
732
|
hideLoyaltyChip = _b.hideLoyaltyChip;
|
|
912
|
-
var shouldShowLoyalty = loyaltyLoading || selectedLoyaltyType && LOYALTY_DATA[selectedLoyaltyType] && !hideLoyaltyChip;
|
|
913
|
-
var shouldShowSupercoin = superCoinsLoading || !hideSupercoinsChip;
|
|
914
|
-
var shouldShowWallet = walletLoading || !hideWalletChip;
|
|
915
|
-
if (!shouldShowLoyalty && !shouldShowSupercoin && !shouldShowWallet) {
|
|
916
|
-
return null;
|
|
917
|
-
}
|
|
918
733
|
return jsxs(Container, __assign({
|
|
919
734
|
display: 'flex',
|
|
920
735
|
padding: '0 16px 16px 16px',
|
|
@@ -924,20 +739,22 @@ var RewardsSection = function () {
|
|
|
924
739
|
gap: '4px'
|
|
925
740
|
}
|
|
926
741
|
}, {
|
|
927
|
-
children: [loyaltyLoading ? jsx(
|
|
742
|
+
children: [loyaltyLoading ? jsx(Container, {
|
|
928
743
|
width: '50px',
|
|
929
744
|
height: '32px',
|
|
930
|
-
borderRadius: '8px'
|
|
745
|
+
borderRadius: '8px',
|
|
746
|
+
backgroundColor: '#efefef'
|
|
931
747
|
}) : selectedLoyaltyType && LOYALTY_DATA[selectedLoyaltyType] && !hideLoyaltyChip && jsx(LoyaltyChip, {
|
|
932
748
|
icon: LOYALTY_DATA[selectedLoyaltyType].icon,
|
|
933
749
|
borderGradient: LOYALTY_DATA[selectedLoyaltyType].borderGradient,
|
|
934
750
|
backgroundGradient: LOYALTY_DATA[selectedLoyaltyType].backgroundGradient,
|
|
935
751
|
chevronFillColor: ((_a = LOYALTY_DATA[selectedLoyaltyType]) === null || _a === void 0 ? void 0 : _a.chevronFillColor) || '#FFF',
|
|
936
752
|
handleChipClick: loyaltyChipClick
|
|
937
|
-
}), superCoinsLoading ? jsx(
|
|
753
|
+
}), superCoinsLoading ? jsx(Container, {
|
|
938
754
|
width: '50px',
|
|
939
755
|
height: '32px',
|
|
940
|
-
borderRadius: '8px'
|
|
756
|
+
borderRadius: '8px',
|
|
757
|
+
backgroundColor: '#efefef'
|
|
941
758
|
}) : !hideSupercoinsChip && jsx(ExpandableItem, {
|
|
942
759
|
icon: jsx(Supercoin, {
|
|
943
760
|
width: 20,
|
|
@@ -945,11 +762,12 @@ var RewardsSection = function () {
|
|
|
945
762
|
}),
|
|
946
763
|
value: superCoinBalance,
|
|
947
764
|
handleChipClick: supercoinsChipClick,
|
|
948
|
-
type: '
|
|
949
|
-
}), walletLoading ? jsx(
|
|
765
|
+
type: 'supercoins'
|
|
766
|
+
}), walletLoading ? jsx(Container, {
|
|
950
767
|
width: '50px',
|
|
951
768
|
height: '32px',
|
|
952
|
-
borderRadius: '8px'
|
|
769
|
+
borderRadius: '8px',
|
|
770
|
+
backgroundColor: '#efefef'
|
|
953
771
|
}) : !hideWalletChip && jsx(ExpandableItem, {
|
|
954
772
|
icon: jsx(Wallet, {
|
|
955
773
|
width: 20,
|
|
@@ -969,60 +787,45 @@ var AccountDropdownContent = function (_a) {
|
|
|
969
787
|
userName = _b.userName,
|
|
970
788
|
userMobileNumber = _b.userMobileNumber,
|
|
971
789
|
countryCode = _b.countryCode,
|
|
972
|
-
userDetailsLoading = _b.userDetailsLoading
|
|
973
|
-
loyaltyType = _b.loyaltyType,
|
|
974
|
-
isUserLoggedIn = _b.isUserLoggedIn,
|
|
975
|
-
ravenEventName = _b.ravenEventName,
|
|
976
|
-
ravenPageName = _b.ravenPageName,
|
|
977
|
-
_c = _b.ravenPayload,
|
|
978
|
-
ravenPayload = _c === void 0 ? {} : _c,
|
|
979
|
-
ravenPushCallback = _b.ravenPushCallback;
|
|
790
|
+
userDetailsLoading = _b.userDetailsLoading;
|
|
980
791
|
var containerRef = useDropdownAnimation(isOpen).containerRef;
|
|
981
|
-
var
|
|
792
|
+
var _c = useMemo(function () {
|
|
793
|
+
var userGreeting = userName && "Hello ".concat(userName, "!");
|
|
794
|
+
var phoneNumber = countryCode && userMobileNumber ? "".concat(countryCode, " ").concat(userMobileNumber) : '';
|
|
982
795
|
return {
|
|
983
|
-
userGreeting:
|
|
984
|
-
phoneNumber:
|
|
796
|
+
userGreeting: userGreeting,
|
|
797
|
+
phoneNumber: phoneNumber
|
|
985
798
|
};
|
|
986
799
|
}, [userName, userMobileNumber, countryCode]),
|
|
987
|
-
userGreeting =
|
|
988
|
-
phoneNumber =
|
|
989
|
-
var
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
action_name: actionName.toLowerCase().replace(/[\s-]/g, '') + '_account_click',
|
|
993
|
-
action_type: 'click',
|
|
994
|
-
u_utm_source: (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic',
|
|
995
|
-
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
800
|
+
userGreeting = _c.userGreeting,
|
|
801
|
+
phoneNumber = _c.phoneNumber;
|
|
802
|
+
var handleRedirectClick = function (redirectLink) {
|
|
803
|
+
return function () {
|
|
804
|
+
window.location.href = redirectLink;
|
|
996
805
|
};
|
|
997
806
|
};
|
|
998
|
-
|
|
999
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, generateRavenPayload(text), ravenPayload, ravenPushCallback, ravenPageName);
|
|
1000
|
-
window.location.href = redirectLink;
|
|
1001
|
-
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
1002
|
-
useCallback(function () {
|
|
1003
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, generateRavenPayload(SIGN_OUT_TEXT), ravenPayload, ravenPushCallback, ravenPageName);
|
|
1004
|
-
handleLogoutClick();
|
|
1005
|
-
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName, handleLogoutClick]);
|
|
1006
|
-
var positionAccountOptionsDiv = useCallback(function () {
|
|
807
|
+
useEffect(function () {
|
|
1007
808
|
var headerAccBtn = document.getElementById(HEADER_ACCOUNTS_OPTIONS_OPEN_BTN_ID);
|
|
1008
809
|
var accountOptionsElem = document.getElementById(ACCOUNT_OPTIONS_CONTAINER_ID);
|
|
1009
|
-
|
|
1010
|
-
var headerBtnRight = headerAccBtn.getBoundingClientRect().right;
|
|
1011
|
-
accountOptionsElem
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
810
|
+
var positionAccountOptionsDiv = function () {
|
|
811
|
+
var headerBtnRight = headerAccBtn === null || headerAccBtn === void 0 ? void 0 : headerAccBtn.getBoundingClientRect().right;
|
|
812
|
+
if (accountOptionsElem && headerBtnRight) {
|
|
813
|
+
accountOptionsElem.style.left = "".concat(headerBtnRight - ACCOUNT_OPTIONS_CONTAINER_WIDTH, "px");
|
|
814
|
+
}
|
|
815
|
+
};
|
|
1015
816
|
positionAccountOptionsDiv();
|
|
1016
|
-
}, [
|
|
817
|
+
}, []);
|
|
1017
818
|
var renderUserData = function () {
|
|
1018
819
|
var renderContent = function (loading, content, variant, color) {
|
|
1019
820
|
return jsx(Typography, __assign({
|
|
1020
821
|
variant: variant,
|
|
1021
822
|
color: color
|
|
1022
823
|
}, {
|
|
1023
|
-
children: loading ? jsx(
|
|
824
|
+
children: loading ? jsx(Container, {
|
|
1024
825
|
height: variant === 'HM3' ? '18px' : '12px',
|
|
1025
|
-
width: variant === 'HM3' ? '140px' : '200px'
|
|
826
|
+
width: variant === 'HM3' ? '140px' : '200px',
|
|
827
|
+
backgroundColor: '#efefef',
|
|
828
|
+
borderRadius: '8px'
|
|
1026
829
|
}) : content
|
|
1027
830
|
}));
|
|
1028
831
|
};
|
|
@@ -1058,7 +861,7 @@ var AccountDropdownContent = function (_a) {
|
|
|
1058
861
|
}, {
|
|
1059
862
|
children: [jsx(Container, __assign({
|
|
1060
863
|
padding: '16px',
|
|
1061
|
-
height: '
|
|
864
|
+
height: '72px'
|
|
1062
865
|
}, {
|
|
1063
866
|
children: renderUserData()
|
|
1064
867
|
})), jsx(RewardsSection, {}), jsxs(Container, __assign({
|
|
@@ -1067,7 +870,7 @@ var AccountDropdownContent = function (_a) {
|
|
|
1067
870
|
padding: '8px',
|
|
1068
871
|
backgroundColor: 'white',
|
|
1069
872
|
rowGap: '8px',
|
|
1070
|
-
|
|
873
|
+
style: {
|
|
1071
874
|
borderBottomLeftRadius: 12,
|
|
1072
875
|
borderBottomRightRadius: 12
|
|
1073
876
|
}
|
|
@@ -1081,14 +884,12 @@ var AccountDropdownContent = function (_a) {
|
|
|
1081
884
|
padding: '8px',
|
|
1082
885
|
borderRadius: '8px',
|
|
1083
886
|
cursor: 'pointer',
|
|
1084
|
-
onClick:
|
|
1085
|
-
return handleAccountOptionsClick(text, redirectionLink);
|
|
1086
|
-
}
|
|
887
|
+
onClick: handleRedirectClick(redirectionLink)
|
|
1087
888
|
}, {
|
|
1088
889
|
children: jsxs(Container, __assign({
|
|
1089
890
|
display: 'flex',
|
|
1090
891
|
cursor: 'pointer',
|
|
1091
|
-
|
|
892
|
+
style: {
|
|
1092
893
|
columnGap: '8px'
|
|
1093
894
|
}
|
|
1094
895
|
}, {
|
|
@@ -1105,7 +906,7 @@ var AccountDropdownContent = function (_a) {
|
|
|
1105
906
|
}))
|
|
1106
907
|
}), "account-option-".concat(text));
|
|
1107
908
|
}), jsx(Divider, {
|
|
1108
|
-
|
|
909
|
+
style: {
|
|
1109
910
|
borderBottom: '1px dashed #E6E6E6'
|
|
1110
911
|
}
|
|
1111
912
|
}), jsxs(Container, __assign({
|
|
@@ -1136,49 +937,29 @@ var AccountDropdownContent = function (_a) {
|
|
|
1136
937
|
};
|
|
1137
938
|
|
|
1138
939
|
var UserAccount = function () {
|
|
1139
|
-
var
|
|
1140
|
-
|
|
1141
|
-
ravenEventName = _a.ravenEventName,
|
|
1142
|
-
_b = _a.ravenPayload,
|
|
1143
|
-
ravenPayload = _b === void 0 ? {} : _b,
|
|
1144
|
-
ravenPushCallback = _a.ravenPushCallback,
|
|
1145
|
-
isUserLoggedIn = _a.isUserLoggedIn,
|
|
1146
|
-
loyaltyType = _a.loyaltyType,
|
|
1147
|
-
ravenPageName = _a.ravenPageName;
|
|
1148
|
-
var _c = useHoverDropdown({
|
|
940
|
+
var isNovacThemeEnabled = useHeaderContext().isNovacThemeEnabled;
|
|
941
|
+
var _a = useHoverDropdown({
|
|
1149
942
|
openDelay: 0
|
|
1150
943
|
}),
|
|
1151
|
-
isDropdownVisible =
|
|
1152
|
-
handleOnMouseEnter =
|
|
1153
|
-
handleOnMouseLeave =
|
|
1154
|
-
handleDropdownMouseEnter =
|
|
1155
|
-
handleDropdownMouseLeave =
|
|
1156
|
-
var
|
|
1157
|
-
scrolled =
|
|
1158
|
-
setScrolled =
|
|
944
|
+
isDropdownVisible = _a.isDropdownVisible,
|
|
945
|
+
handleOnMouseEnter = _a.handleOnMouseEnter,
|
|
946
|
+
handleOnMouseLeave = _a.handleOnMouseLeave,
|
|
947
|
+
handleDropdownMouseEnter = _a.handleDropdownMouseEnter,
|
|
948
|
+
handleDropdownMouseLeave = _a.handleDropdownMouseLeave;
|
|
949
|
+
var _b = useState(false),
|
|
950
|
+
scrolled = _b[0],
|
|
951
|
+
setScrolled = _b[1];
|
|
1159
952
|
useEffect(function () {
|
|
1160
953
|
var handleScroll = function () {
|
|
1161
|
-
setScrolled(window.scrollY >=
|
|
954
|
+
setScrolled(window.scrollY >= 100);
|
|
1162
955
|
};
|
|
1163
956
|
window.addEventListener('scroll', handleScroll);
|
|
1164
957
|
return function () {
|
|
1165
958
|
return window.removeEventListener('scroll', handleScroll);
|
|
1166
959
|
};
|
|
1167
960
|
}, []);
|
|
1168
|
-
var
|
|
1169
|
-
var hoverColor =
|
|
1170
|
-
typographyColor = theme.typographyColor;
|
|
1171
|
-
var triggerRavenEventOnHover = useCallback(function () {
|
|
1172
|
-
var _a;
|
|
1173
|
-
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
1174
|
-
var defaultPayload = {
|
|
1175
|
-
action_name: "".concat(MY_ACCOUNT_TEXT.toLowerCase().replace(/[\s-]/g, ''), "_header_hover"),
|
|
1176
|
-
action_type: 'hover',
|
|
1177
|
-
u_utm_source: utmSource,
|
|
1178
|
-
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
1179
|
-
};
|
|
1180
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1181
|
-
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName, loyaltyType]);
|
|
961
|
+
var effectiveNovacThemeEnabled = isNovacThemeEnabled && !scrolled;
|
|
962
|
+
var hoverColor = effectiveNovacThemeEnabled ? '#FFB8A5' : '#FF4F17';
|
|
1182
963
|
return jsxs(Container, {
|
|
1183
964
|
children: [jsxs(Container, __assign({
|
|
1184
965
|
display: 'flex',
|
|
@@ -1187,19 +968,18 @@ var UserAccount = function () {
|
|
|
1187
968
|
borderRadius: '12px',
|
|
1188
969
|
height: '100%',
|
|
1189
970
|
cursor: 'pointer',
|
|
1190
|
-
|
|
971
|
+
style: {
|
|
1191
972
|
columnGap: 8,
|
|
1192
973
|
height: 64
|
|
1193
974
|
},
|
|
1194
975
|
onMouseEnter: function () {
|
|
1195
|
-
handleOnMouseEnter(0);
|
|
1196
|
-
triggerRavenEventOnHover();
|
|
976
|
+
return handleOnMouseEnter(0);
|
|
1197
977
|
},
|
|
1198
978
|
onMouseLeave: handleOnMouseLeave,
|
|
1199
979
|
id: HEADER_ACCOUNTS_OPTIONS_OPEN_BTN_ID
|
|
1200
980
|
}, {
|
|
1201
981
|
children: [jsx(MyAccount, {
|
|
1202
|
-
color: isDropdownVisible ? hoverColor :
|
|
982
|
+
color: isDropdownVisible ? hoverColor : effectiveNovacThemeEnabled ? '#FFF' : '#1A1A1A'
|
|
1203
983
|
}), jsxs(Container, __assign({
|
|
1204
984
|
display: 'flex',
|
|
1205
985
|
flexDirection: 'row',
|
|
@@ -1210,13 +990,13 @@ var UserAccount = function () {
|
|
|
1210
990
|
css: {
|
|
1211
991
|
cursor: 'pointer'
|
|
1212
992
|
},
|
|
1213
|
-
colorCode: isDropdownVisible ? hoverColor :
|
|
993
|
+
colorCode: isDropdownVisible ? hoverColor : effectiveNovacThemeEnabled ? '#FFF' : '#1A1A1A'
|
|
1214
994
|
}, {
|
|
1215
|
-
children:
|
|
995
|
+
children: "My Account"
|
|
1216
996
|
})), jsx(ChevronDown, {
|
|
1217
997
|
width: 20,
|
|
1218
998
|
height: 20,
|
|
1219
|
-
fill: isDropdownVisible ? hoverColor :
|
|
999
|
+
fill: isDropdownVisible ? hoverColor : effectiveNovacThemeEnabled ? '#FFF' : '#1A1A1A'
|
|
1220
1000
|
})]
|
|
1221
1001
|
}))]
|
|
1222
1002
|
})), jsx(HeaderAnimatedMask, __assign({
|
|
@@ -1241,74 +1021,42 @@ var Header = function (props) {
|
|
|
1241
1021
|
}));
|
|
1242
1022
|
};
|
|
1243
1023
|
var HeaderContent = function () {
|
|
1244
|
-
var _a
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
scrolled = _f[0],
|
|
1260
|
-
setScrolled = _f[1];
|
|
1024
|
+
var _a = useHeaderContext(),
|
|
1025
|
+
onLoginButtonClick = _a.onLoginButtonClick,
|
|
1026
|
+
_b = _a.showAllLobs,
|
|
1027
|
+
showAllLobs = _b === void 0 ? false : _b,
|
|
1028
|
+
isUserLoggedIn = _a.isUserLoggedIn;
|
|
1029
|
+
_a.loyaltyType;
|
|
1030
|
+
var _c = _a.isNovacThemeEnabled,
|
|
1031
|
+
isNovacThemeEnabled = _c === void 0 ? false : _c;
|
|
1032
|
+
_a.ravenPayload;
|
|
1033
|
+
_a.ravenPushCallback;
|
|
1034
|
+
_a.ravenPageName;
|
|
1035
|
+
_a.ravenEventName;
|
|
1036
|
+
var _e = useState(false),
|
|
1037
|
+
scrolled = _e[0],
|
|
1038
|
+
setScrolled = _e[1];
|
|
1261
1039
|
useEffect(function () {
|
|
1262
1040
|
var handleScroll = function () {
|
|
1263
|
-
setScrolled(window.scrollY >=
|
|
1041
|
+
setScrolled(window.scrollY >= 100);
|
|
1264
1042
|
};
|
|
1265
1043
|
window.addEventListener('scroll', handleScroll);
|
|
1266
1044
|
return function () {
|
|
1267
1045
|
return window.removeEventListener('scroll', handleScroll);
|
|
1268
1046
|
};
|
|
1269
1047
|
}, []);
|
|
1270
|
-
var
|
|
1271
|
-
var headerBackground =
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
fkcompanyColor = theme.fkcompanyColor,
|
|
1275
|
-
typographyColor = theme.typographyColor;
|
|
1276
|
-
var _g = useHoverDropdown({
|
|
1048
|
+
var effectiveNovacThemeEnabled = isNovacThemeEnabled && !scrolled;
|
|
1049
|
+
var headerBackground = effectiveNovacThemeEnabled ? 'transparent' : '#F7FAFF';
|
|
1050
|
+
var hoverColor = effectiveNovacThemeEnabled ? '#FFB8A5' : '#FF4F17';
|
|
1051
|
+
var _f = useHoverDropdown({
|
|
1277
1052
|
openDelay: 0
|
|
1278
1053
|
}),
|
|
1279
|
-
isDropdownVisible =
|
|
1280
|
-
hoveredElemIndex =
|
|
1281
|
-
handleOnMouseEnter =
|
|
1282
|
-
handleOnMouseLeave =
|
|
1283
|
-
handleDropdownMouseEnter =
|
|
1284
|
-
handleDropdownMouseLeave =
|
|
1285
|
-
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
1286
|
-
var createPayload = useCallback(function (actionName, actionType) {
|
|
1287
|
-
return {
|
|
1288
|
-
action_name: actionName,
|
|
1289
|
-
action_type: actionType,
|
|
1290
|
-
u_utm_source: utmSource,
|
|
1291
|
-
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
1292
|
-
};
|
|
1293
|
-
}, [utmSource, loyaltyType]);
|
|
1294
|
-
var handleNavbarOptionsClick = useCallback(function (option) {
|
|
1295
|
-
if (option.isClickable && option.link) {
|
|
1296
|
-
var actionName = "".concat(option.text.toLowerCase().replace(/\s/g, ''), "_header_click");
|
|
1297
|
-
var payload = createPayload(actionName, 'click');
|
|
1298
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, payload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1299
|
-
window.location.href = option.link;
|
|
1300
|
-
}
|
|
1301
|
-
}, [createPayload, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
1302
|
-
var handleHomeClick = useCallback(function () {
|
|
1303
|
-
var payload = createPayload('home_header_click', 'click');
|
|
1304
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, payload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1305
|
-
window.location.href = '/';
|
|
1306
|
-
}, [createPayload, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
1307
|
-
var triggerRavenEventOnHover = useCallback(function (option) {
|
|
1308
|
-
var actionName = "".concat(option.text.toLowerCase().replace(/\s/g, ''), "_header_hover");
|
|
1309
|
-
var payload = createPayload(actionName, 'hover');
|
|
1310
|
-
ravenSDKTrigger(isUserLoggedIn, ravenEventName, payload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1311
|
-
}, [createPayload, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
1054
|
+
isDropdownVisible = _f.isDropdownVisible,
|
|
1055
|
+
hoveredElemIndex = _f.hoveredElemIndex,
|
|
1056
|
+
handleOnMouseEnter = _f.handleOnMouseEnter,
|
|
1057
|
+
handleOnMouseLeave = _f.handleOnMouseLeave,
|
|
1058
|
+
handleDropdownMouseEnter = _f.handleDropdownMouseEnter,
|
|
1059
|
+
handleDropdownMouseLeave = _f.handleDropdownMouseLeave;
|
|
1312
1060
|
return jsxs(Fragment, {
|
|
1313
1061
|
children: [jsx(Container, __assign({
|
|
1314
1062
|
display: 'flex',
|
|
@@ -1323,7 +1071,7 @@ var HeaderContent = function () {
|
|
|
1323
1071
|
css: {
|
|
1324
1072
|
gap: '24px',
|
|
1325
1073
|
flexShrink: 0,
|
|
1326
|
-
borderBottom:
|
|
1074
|
+
borderBottom: effectiveNovacThemeEnabled ? '' : '1px solid #E6E6E6',
|
|
1327
1075
|
transition: 'background-color 0.3s ease-in-out, border-bottom 0.3s ease-in-out'
|
|
1328
1076
|
}
|
|
1329
1077
|
}, {
|
|
@@ -1333,7 +1081,7 @@ var HeaderContent = function () {
|
|
|
1333
1081
|
justifyContent: 'space-between',
|
|
1334
1082
|
padding: '0 28px',
|
|
1335
1083
|
flex: 1,
|
|
1336
|
-
|
|
1084
|
+
style: {
|
|
1337
1085
|
gap: '24px',
|
|
1338
1086
|
maxWidth: 1440
|
|
1339
1087
|
}
|
|
@@ -1344,10 +1092,13 @@ var HeaderContent = function () {
|
|
|
1344
1092
|
alignItems: 'center',
|
|
1345
1093
|
justifyContent: 'center',
|
|
1346
1094
|
cursor: 'pointer',
|
|
1347
|
-
|
|
1095
|
+
paddingLeft: '16px',
|
|
1096
|
+
onClick: function () {
|
|
1097
|
+
window.location.href = '/';
|
|
1098
|
+
}
|
|
1348
1099
|
}, {
|
|
1349
1100
|
children: [jsx(CTLogo, {
|
|
1350
|
-
fillColor:
|
|
1101
|
+
fillColor: effectiveNovacThemeEnabled ? '#FFF' : '#FF4F17'
|
|
1351
1102
|
}), jsx(Divider, {
|
|
1352
1103
|
css: {
|
|
1353
1104
|
width: 12,
|
|
@@ -1357,7 +1108,7 @@ var HeaderContent = function () {
|
|
|
1357
1108
|
borderBottom: '1px solid #e0e0e0'
|
|
1358
1109
|
}
|
|
1359
1110
|
}), jsx(Fkcompany, {
|
|
1360
|
-
color:
|
|
1111
|
+
color: effectiveNovacThemeEnabled ? '#FFF' : '#1A1A1A'
|
|
1361
1112
|
})]
|
|
1362
1113
|
})), jsxs(Container, __assign({
|
|
1363
1114
|
display: 'flex',
|
|
@@ -1374,18 +1125,11 @@ var HeaderContent = function () {
|
|
|
1374
1125
|
columnGap: '4px'
|
|
1375
1126
|
}, {
|
|
1376
1127
|
children: NAVBAR_OPTIONS.map(function (option, index) {
|
|
1377
|
-
var text = option.text,
|
|
1378
|
-
LeftIcon = option.lefticon,
|
|
1379
|
-
RightIcon = option.rightIcon,
|
|
1380
|
-
isHoverable = option.isHoverable;
|
|
1381
1128
|
var isHovered = hoveredElemIndex === index;
|
|
1382
1129
|
return jsxs(Container, {
|
|
1383
1130
|
children: [jsxs(Container, __assign({
|
|
1384
1131
|
onMouseEnter: function () {
|
|
1385
|
-
handleOnMouseEnter(index);
|
|
1386
|
-
if (option.isHoverable) {
|
|
1387
|
-
triggerRavenEventOnHover(option);
|
|
1388
|
-
}
|
|
1132
|
+
return handleOnMouseEnter(index);
|
|
1389
1133
|
},
|
|
1390
1134
|
onMouseLeave: handleOnMouseLeave,
|
|
1391
1135
|
display: 'flex',
|
|
@@ -1397,11 +1141,13 @@ var HeaderContent = function () {
|
|
|
1397
1141
|
columnGap: 8,
|
|
1398
1142
|
height: '64px',
|
|
1399
1143
|
onClick: function () {
|
|
1400
|
-
|
|
1144
|
+
if (option.link && option.isClickable) {
|
|
1145
|
+
window.location.href = option.link;
|
|
1146
|
+
}
|
|
1401
1147
|
}
|
|
1402
1148
|
}, {
|
|
1403
|
-
children: [jsx(
|
|
1404
|
-
color: isHovered ? hoverColor :
|
|
1149
|
+
children: [jsx(option.lefticon, {
|
|
1150
|
+
color: isHovered ? hoverColor : effectiveNovacThemeEnabled ? '#FFF' : '#1A1A1A'
|
|
1405
1151
|
}), jsxs(Container, __assign({
|
|
1406
1152
|
display: 'flex',
|
|
1407
1153
|
flexDirection: 'row',
|
|
@@ -1409,31 +1155,31 @@ var HeaderContent = function () {
|
|
|
1409
1155
|
}, {
|
|
1410
1156
|
children: [jsx(Typography, __assign({
|
|
1411
1157
|
variant: 'B2',
|
|
1412
|
-
colorCode: isHovered ? hoverColor :
|
|
1158
|
+
colorCode: isHovered ? hoverColor : effectiveNovacThemeEnabled ? '#FFF' : '#1A1A1A',
|
|
1413
1159
|
isClickable: true
|
|
1414
1160
|
}, {
|
|
1415
|
-
children: text
|
|
1416
|
-
})),
|
|
1161
|
+
children: option.text
|
|
1162
|
+
})), option.rightIcon && jsx(option.rightIcon, {
|
|
1417
1163
|
width: 20,
|
|
1418
1164
|
height: 20,
|
|
1419
|
-
fill: isHovered ? hoverColor :
|
|
1165
|
+
fill: isHovered ? hoverColor : effectiveNovacThemeEnabled ? '#FFF' : '#1A1A1A'
|
|
1420
1166
|
})]
|
|
1421
1167
|
}))]
|
|
1422
1168
|
}), "nav-option-".concat(index)), jsx(HeaderAnimatedMask, __assign({
|
|
1423
|
-
show: hoveredElemIndex === index && isHoverable && isDropdownVisible,
|
|
1169
|
+
show: hoveredElemIndex === index && option.isHoverable && isDropdownVisible,
|
|
1424
1170
|
marginTop: '64px',
|
|
1425
1171
|
handleDropdownMouseEnter: handleDropdownMouseEnter,
|
|
1426
1172
|
handleDropdownMouseLeave: handleDropdownMouseLeave,
|
|
1427
1173
|
onMaskClick: handleDropdownMouseLeave
|
|
1428
1174
|
}, {
|
|
1429
1175
|
children: jsx(BusinessDropdownContent, {
|
|
1430
|
-
isOpen: hoveredElemIndex === index && isHoverable && isDropdownVisible
|
|
1176
|
+
isOpen: hoveredElemIndex === index && option.isHoverable && isDropdownVisible
|
|
1431
1177
|
})
|
|
1432
1178
|
}))]
|
|
1433
1179
|
});
|
|
1434
1180
|
})
|
|
1435
1181
|
})), isUserLoggedIn && jsx(Divider, {
|
|
1436
|
-
|
|
1182
|
+
style: {
|
|
1437
1183
|
width: 12,
|
|
1438
1184
|
margin: '0 -18px',
|
|
1439
1185
|
transform: 'rotate(90deg)',
|
|
@@ -1447,21 +1193,21 @@ var HeaderContent = function () {
|
|
|
1447
1193
|
}, {
|
|
1448
1194
|
children: jsx(UserAccount, {})
|
|
1449
1195
|
})) : jsx(Button, __assign({
|
|
1450
|
-
className: "".concat(
|
|
1196
|
+
className: "fw-400 fs-14 ".concat(effectiveNovacThemeEnabled ? 'novac-login-button' : 'login-button'),
|
|
1451
1197
|
onClick: onLoginButtonClick,
|
|
1452
|
-
|
|
1198
|
+
style: {
|
|
1453
1199
|
width: 153,
|
|
1454
1200
|
height: 40,
|
|
1455
|
-
border:
|
|
1201
|
+
border: effectiveNovacThemeEnabled ? '1px solid #FFF' : '1px solid #1A1A1A'
|
|
1456
1202
|
},
|
|
1457
1203
|
loading: false
|
|
1458
1204
|
}, {
|
|
1459
1205
|
children: jsx(Typography, __assign({
|
|
1460
1206
|
componentNode: 'span',
|
|
1461
1207
|
variant: 'L2',
|
|
1462
|
-
color:
|
|
1208
|
+
color: effectiveNovacThemeEnabled ? 'neutral' : 'primary'
|
|
1463
1209
|
}, {
|
|
1464
|
-
children:
|
|
1210
|
+
children: "Login"
|
|
1465
1211
|
}))
|
|
1466
1212
|
}))
|
|
1467
1213
|
})]
|
|
@@ -1471,5 +1217,5 @@ var HeaderContent = function () {
|
|
|
1471
1217
|
});
|
|
1472
1218
|
};
|
|
1473
1219
|
|
|
1474
|
-
export { Header, LOBS_VALUES, LoyaltyType
|
|
1220
|
+
export { Header, LOBS_VALUES, LoyaltyType };
|
|
1475
1221
|
//# sourceMappingURL=ct-design-header.esm.js.map
|