@cleartrip/ct-design-header 1.2.0-SNAPSHOT-test-logo-left-padding.0 → 1.2.0-SNAPSHOT-header-0.2.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 +1 -0
- package/dist/UserAccount/accountOptions.d.ts.map +1 -1
- package/dist/UserAccount/index.d.ts.map +1 -1
- package/dist/constants.d.ts +34 -31
- 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 +415 -164
- package/dist/ct-design-header.cjs.js.map +1 -1
- package/dist/ct-design-header.esm.js +416 -165
- package/dist/ct-design-header.esm.js.map +1 -1
- package/dist/ct-design-header.umd.js +415 -164
- package/dist/ct-design-header.umd.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/type.d.ts +17 -1
- package/dist/type.d.ts.map +1 -1
- package/dist/utils.d.ts +8 -0
- package/dist/utils.d.ts.map +1 -0
- package/package.json +8 -8
|
@@ -2,8 +2,8 @@ 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 } from '@cleartrip/ct-design-typography';
|
|
6
|
-
import { Button } from '@cleartrip/ct-design-button';
|
|
5
|
+
import { Typography, TypographyVariant } from '@cleartrip/ct-design-typography';
|
|
6
|
+
import { ButtonColor, 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
9
|
import { Shimmer } from '@cleartrip/ct-design-shimmer';
|
|
@@ -14,23 +14,27 @@ var SUPPORT_URL = '/support';
|
|
|
14
14
|
var NAVBAR_OPTIONS = [{
|
|
15
15
|
lefticon: Offers,
|
|
16
16
|
text: 'Offers',
|
|
17
|
+
ravenActionName: 'offers',
|
|
17
18
|
isHoverable: false,
|
|
18
19
|
isClickable: true,
|
|
19
20
|
link: OFFERS_URL
|
|
20
21
|
}, {
|
|
21
22
|
lefticon: BusinessBag,
|
|
22
23
|
text: 'Business',
|
|
24
|
+
ravenActionName: 'business',
|
|
23
25
|
rightIcon: ChevronDown,
|
|
24
26
|
isHoverable: true
|
|
25
27
|
}, {
|
|
26
28
|
lefticon: MyTrips,
|
|
27
29
|
text: 'My Trips',
|
|
30
|
+
ravenActionName: 'mytrips',
|
|
28
31
|
isHoverable: false,
|
|
29
32
|
isClickable: true,
|
|
30
33
|
link: MY_TRIPS_URL
|
|
31
34
|
}, {
|
|
32
35
|
lefticon: SupportIcon,
|
|
33
36
|
text: 'Support',
|
|
37
|
+
ravenActionName: 'support',
|
|
34
38
|
isHoverable: false,
|
|
35
39
|
isClickable: true,
|
|
36
40
|
link: SUPPORT_URL
|
|
@@ -44,33 +48,36 @@ var LOBS = {
|
|
|
44
48
|
};
|
|
45
49
|
var LOB_DATA = [{
|
|
46
50
|
title: LOBS.FLIGHTS,
|
|
47
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
51
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_32,h_32,dpr_4/offermgmt-prod/offermgmt/images/banner/Navbar_Flights.png?cache=true',
|
|
48
52
|
link: '/flights'
|
|
49
53
|
}, {
|
|
50
54
|
title: LOBS.HOTELS,
|
|
51
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
55
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_32,h_32,dpr_4/offermgmt-prod/offermgmt/images/banner/Navbar_Hotels.png?cache=true',
|
|
52
56
|
link: '/hotels'
|
|
53
57
|
}, {
|
|
54
58
|
title: LOBS.BUSES,
|
|
55
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
59
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_32,h_32,dpr_4/offermgmt-prod/offermgmt/images/banner/Navbar_Buses.png?cache=true',
|
|
56
60
|
link: '/bus'
|
|
57
61
|
}, {
|
|
58
62
|
title: LOBS.TRAIN,
|
|
59
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
63
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_32,h_32,dpr_4/offermgmt-prod/offermgmt/images/banner/Navbar_Trains.png?cache=true',
|
|
60
64
|
link: '/pages/trains/appOnly'
|
|
61
65
|
}, {
|
|
62
66
|
title: LOBS.PACKAGES,
|
|
63
|
-
image: 'https://rukmini-ct.flixcart.com/f_auto,
|
|
67
|
+
image: 'https://rukmini-ct.flixcart.com/f_auto,w_32,h_32,dpr_4/offermgmt-prod/offermgmt/images/banner/Navbar_Packages.png?cache=true',
|
|
64
68
|
link: '/holidays'
|
|
65
69
|
}];
|
|
66
70
|
var bdConfig = [{
|
|
67
71
|
title: 'AgentBox',
|
|
68
72
|
subtitle: 'For travel agents',
|
|
69
|
-
details: 'One-stop travel solution offering the best deals to our travel agency partners'
|
|
73
|
+
details: 'One-stop travel solution offering the best deals to our travel agency partners',
|
|
74
|
+
link: 'https://agency.cleartrip.com'
|
|
70
75
|
}, {
|
|
71
76
|
title: 'OutOfOffice',
|
|
72
77
|
subtitle: 'For startups, corporates and SMEs',
|
|
73
|
-
details: 'Manage corporate business travel, smartly'
|
|
78
|
+
details: 'Manage corporate business travel, smartly',
|
|
79
|
+
link: 'https://ooo.cleartrip.com/',
|
|
80
|
+
ravenActionName: 'ooo'
|
|
74
81
|
}, {
|
|
75
82
|
title: 'MICE',
|
|
76
83
|
subtitle: 'For corporate events',
|
|
@@ -86,13 +93,32 @@ var BUSINESS_DROPDOWN_HEADING = 'Other business services';
|
|
|
86
93
|
var RAVEN_PAGE_NAMES;
|
|
87
94
|
(function (RAVEN_PAGE_NAMES) {
|
|
88
95
|
RAVEN_PAGE_NAMES["UNIFIED_HOME"] = "unified_homepage";
|
|
89
|
-
RAVEN_PAGE_NAMES["HOTELS_HOME"] = "
|
|
90
|
-
RAVEN_PAGE_NAMES["FLIGHTS_HOME"] = "
|
|
96
|
+
RAVEN_PAGE_NAMES["HOTELS_HOME"] = "hotel_home";
|
|
97
|
+
RAVEN_PAGE_NAMES["FLIGHTS_HOME"] = "flights_home";
|
|
91
98
|
})(RAVEN_PAGE_NAMES || (RAVEN_PAGE_NAMES = {}));
|
|
92
99
|
var RAVEN_PLATFORMS;
|
|
93
100
|
(function (RAVEN_PLATFORMS) {
|
|
94
101
|
RAVEN_PLATFORMS["DESKTOP"] = "desktop";
|
|
95
102
|
})(RAVEN_PLATFORMS || (RAVEN_PLATFORMS = {}));
|
|
103
|
+
var LOG_IN_TEXT = 'Log in';
|
|
104
|
+
var THEME_CONFIG = {
|
|
105
|
+
NOVAC: {
|
|
106
|
+
headerBackground: 'transparent',
|
|
107
|
+
hoverColor: '#FFB8A5',
|
|
108
|
+
logoFill: '#FFF',
|
|
109
|
+
fkcompanyColor: '#FFF',
|
|
110
|
+
typographyColor: '#FFF',
|
|
111
|
+
loginButtonColorVariant: ButtonColor.NEUTRAL
|
|
112
|
+
},
|
|
113
|
+
DEFAULT: {
|
|
114
|
+
headerBackground: '#F7FAFF',
|
|
115
|
+
hoverColor: '#FF4F17',
|
|
116
|
+
logoFill: '#FF4F17',
|
|
117
|
+
fkcompanyColor: '#1A1A1A',
|
|
118
|
+
typographyColor: '#1A1A1A',
|
|
119
|
+
loginButtonColorVariant: ButtonColor.PRIMARY
|
|
120
|
+
}
|
|
121
|
+
};
|
|
96
122
|
|
|
97
123
|
var HeaderContext = createContext(undefined);
|
|
98
124
|
var useHeaderContext = function () {
|
|
@@ -128,33 +154,33 @@ var LobsHeader = function () {
|
|
|
128
154
|
}
|
|
129
155
|
}, {
|
|
130
156
|
children: LOB_DATA.map(function (item, index) {
|
|
157
|
+
var title = item.title,
|
|
158
|
+
link = item.link,
|
|
159
|
+
image = item.image;
|
|
131
160
|
return jsxs(Container, __assign({
|
|
132
161
|
display: 'flex',
|
|
133
162
|
alignItems: 'center',
|
|
134
163
|
cursor: 'pointer',
|
|
135
164
|
css: {
|
|
136
165
|
gap: 8,
|
|
137
|
-
background: selectedLOB ===
|
|
138
|
-
borderRadius: selectedLOB ===
|
|
139
|
-
padding: selectedLOB ===
|
|
166
|
+
background: selectedLOB === title ? '#FFFFFF' : 'transparent',
|
|
167
|
+
borderRadius: selectedLOB === title ? '40px' : '0',
|
|
168
|
+
padding: selectedLOB === title ? '8px 16px 8px 8px' : '0'
|
|
140
169
|
},
|
|
141
170
|
onClick: function () {
|
|
142
|
-
window.location.href =
|
|
171
|
+
window.location.href = link;
|
|
143
172
|
}
|
|
144
173
|
}, {
|
|
145
174
|
children: [jsx("img", {
|
|
146
|
-
src:
|
|
147
|
-
alt:
|
|
175
|
+
src: image,
|
|
176
|
+
alt: title,
|
|
148
177
|
width: 32,
|
|
149
178
|
height: 32
|
|
150
179
|
}), jsx(Typography, __assign({
|
|
151
|
-
variant:
|
|
152
|
-
style: {
|
|
153
|
-
fontWeight: selectedLOB === item.title ? 600 : 500
|
|
154
|
-
},
|
|
180
|
+
variant: selectedLOB === title ? TypographyVariant.HM3 : TypographyVariant.B1,
|
|
155
181
|
isClickable: true
|
|
156
182
|
}, {
|
|
157
|
-
children:
|
|
183
|
+
children: title
|
|
158
184
|
}))]
|
|
159
185
|
}), index);
|
|
160
186
|
})
|
|
@@ -355,11 +381,85 @@ var useDropdownAnimation = function (isOpen) {
|
|
|
355
381
|
};
|
|
356
382
|
};
|
|
357
383
|
|
|
384
|
+
var stringifyPayload = function (payload) {
|
|
385
|
+
var keys = Object.keys(payload);
|
|
386
|
+
var numericValues = [];
|
|
387
|
+
keys.forEach(function (key) {
|
|
388
|
+
if (numericValues.includes(key)) {
|
|
389
|
+
payload[key] = Number(payload[key]);
|
|
390
|
+
} else {
|
|
391
|
+
payload[key] = '' + payload[key];
|
|
392
|
+
}
|
|
393
|
+
});
|
|
394
|
+
return payload;
|
|
395
|
+
};
|
|
396
|
+
var isServer = function () {
|
|
397
|
+
return typeof window === 'undefined' || !window;
|
|
398
|
+
};
|
|
399
|
+
var getQueryParam = function (queryParam) {
|
|
400
|
+
if (isServer()) {
|
|
401
|
+
return '';
|
|
402
|
+
}
|
|
403
|
+
var urlParams = new URLSearchParams(window.location.search);
|
|
404
|
+
return urlParams.get(queryParam);
|
|
405
|
+
};
|
|
406
|
+
var ravenLoyaltyTypes = function (loyaltyType) {
|
|
407
|
+
switch (loyaltyType) {
|
|
408
|
+
case 'FkVip':
|
|
409
|
+
return 'fk_vip';
|
|
410
|
+
case 'FkPremium':
|
|
411
|
+
return 'fk_plus_premium';
|
|
412
|
+
case 'InsiderIcon':
|
|
413
|
+
return 'myntra_insidericon';
|
|
414
|
+
case 'InsiderElite':
|
|
415
|
+
return 'myntra_insiderelite';
|
|
416
|
+
default:
|
|
417
|
+
return '';
|
|
418
|
+
}
|
|
419
|
+
};
|
|
420
|
+
var ravenSDKTrigger = function (isUserLoggedIn, eventName, ravenPayload, customRavenPayload, ravenPushCallback, pageName) {
|
|
421
|
+
var _a;
|
|
422
|
+
if (typeof ravenPushCallback !== 'function') {
|
|
423
|
+
console.error('ravenPushCallback is not provided or is not a function');
|
|
424
|
+
return;
|
|
425
|
+
}
|
|
426
|
+
var commonPayload = {
|
|
427
|
+
page_name: pageName,
|
|
428
|
+
platform: RAVEN_PLATFORMS.DESKTOP,
|
|
429
|
+
login_status: isUserLoggedIn ? 'yes' : 'no',
|
|
430
|
+
domain: (_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.host
|
|
431
|
+
};
|
|
432
|
+
var newRavenPayload = stringifyPayload(ravenPayload);
|
|
433
|
+
var parsedCustomRavenPayload = stringifyPayload(customRavenPayload);
|
|
434
|
+
var finalPayload = __assign(__assign(__assign({}, commonPayload), newRavenPayload), parsedCustomRavenPayload);
|
|
435
|
+
try {
|
|
436
|
+
if (ravenPushCallback.length === 1) {
|
|
437
|
+
ravenPushCallback({
|
|
438
|
+
eventName: eventName,
|
|
439
|
+
eventData: finalPayload
|
|
440
|
+
});
|
|
441
|
+
} else {
|
|
442
|
+
ravenPushCallback(eventName, finalPayload);
|
|
443
|
+
}
|
|
444
|
+
} catch (err) {
|
|
445
|
+
console.error(err);
|
|
446
|
+
return;
|
|
447
|
+
}
|
|
448
|
+
};
|
|
449
|
+
|
|
358
450
|
var BusinessDropdownContent = function (_a) {
|
|
359
451
|
var isOpen = _a.isOpen;
|
|
360
|
-
var _b =
|
|
361
|
-
|
|
362
|
-
|
|
452
|
+
var _b = useHeaderContext(),
|
|
453
|
+
isUserLoggedIn = _b.isUserLoggedIn,
|
|
454
|
+
ravenPushCallback = _b.ravenPushCallback,
|
|
455
|
+
ravenPageName = _b.ravenPageName,
|
|
456
|
+
ravenEventName = _b.ravenEventName,
|
|
457
|
+
loyaltyType = _b.loyaltyType,
|
|
458
|
+
_c = _b.ravenPayload,
|
|
459
|
+
ravenPayload = _c === void 0 ? {} : _c;
|
|
460
|
+
var _d = useState(0),
|
|
461
|
+
leftPosition = _d[0],
|
|
462
|
+
setLeftPosition = _d[1];
|
|
363
463
|
var containerRef = useDropdownAnimation(isOpen).containerRef;
|
|
364
464
|
useEffect(function () {
|
|
365
465
|
var updatePosition = function () {
|
|
@@ -378,6 +478,21 @@ var BusinessDropdownContent = function (_a) {
|
|
|
378
478
|
return window.removeEventListener('resize', updatePosition);
|
|
379
479
|
};
|
|
380
480
|
}, [containerRef, leftPosition]);
|
|
481
|
+
var handleBusinessDropdownClick = useCallback(function (link, title, ravenActionName) {
|
|
482
|
+
var _a;
|
|
483
|
+
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
484
|
+
var actionName = ravenActionName ? "".concat(ravenActionName, "_business_click") : title ? "".concat(title.toLowerCase(), "_business_click") : '';
|
|
485
|
+
var defaultPayload = {
|
|
486
|
+
action_name: actionName,
|
|
487
|
+
action_type: 'click',
|
|
488
|
+
u_utm_source: utmSource,
|
|
489
|
+
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
490
|
+
};
|
|
491
|
+
if (link) {
|
|
492
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
493
|
+
window.location.href = link;
|
|
494
|
+
}
|
|
495
|
+
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName, loyaltyType]);
|
|
381
496
|
return jsxs(Container, __assign({
|
|
382
497
|
ref: containerRef,
|
|
383
498
|
backgroundColor: '#fff',
|
|
@@ -398,10 +513,7 @@ var BusinessDropdownContent = function (_a) {
|
|
|
398
513
|
backgroundColor: '#FFF1EC'
|
|
399
514
|
}, {
|
|
400
515
|
children: jsx(Typography, __assign({
|
|
401
|
-
variant: 'HM2'
|
|
402
|
-
css: {
|
|
403
|
-
lineHeight: '24px'
|
|
404
|
-
}
|
|
516
|
+
variant: 'HM2'
|
|
405
517
|
}, {
|
|
406
518
|
children: BUSINESS_DROPDOWN_HEADING
|
|
407
519
|
}))
|
|
@@ -415,32 +527,46 @@ var BusinessDropdownContent = function (_a) {
|
|
|
415
527
|
children: bdConfig.map(function (_a) {
|
|
416
528
|
var title = _a.title,
|
|
417
529
|
subtitle = _a.subtitle,
|
|
418
|
-
details = _a.details
|
|
530
|
+
details = _a.details,
|
|
531
|
+
link = _a.link,
|
|
532
|
+
ravenActionName = _a.ravenActionName;
|
|
419
533
|
return jsxs(Container, __assign({
|
|
420
534
|
cursor: 'pointer',
|
|
535
|
+
display: 'flex',
|
|
536
|
+
flexDirection: 'column',
|
|
421
537
|
width: '200px',
|
|
422
|
-
|
|
538
|
+
rowGap: '11px',
|
|
539
|
+
className: 'bd-hover-container',
|
|
540
|
+
onClick: function () {
|
|
541
|
+
return handleBusinessDropdownClick(link, title, ravenActionName);
|
|
542
|
+
}
|
|
423
543
|
}, {
|
|
424
544
|
children: [jsxs(Container, __assign({
|
|
425
545
|
display: 'flex',
|
|
426
|
-
flexDirection: '
|
|
427
|
-
|
|
428
|
-
columnGap: '8px'
|
|
546
|
+
flexDirection: 'column',
|
|
547
|
+
rowGap: '4px'
|
|
429
548
|
}, {
|
|
430
|
-
children: [
|
|
431
|
-
|
|
432
|
-
|
|
549
|
+
children: [jsxs(Container, __assign({
|
|
550
|
+
display: 'flex',
|
|
551
|
+
flexDirection: 'row',
|
|
552
|
+
alignItems: 'center',
|
|
553
|
+
columnGap: '8px'
|
|
433
554
|
}, {
|
|
434
|
-
children:
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
555
|
+
children: [jsx(Typography, __assign({
|
|
556
|
+
variant: 'HM2',
|
|
557
|
+
className: 'color-orange-on-hover'
|
|
558
|
+
}, {
|
|
559
|
+
children: title
|
|
560
|
+
})), jsx(AnimatedArrow, {})]
|
|
561
|
+
})), jsx(Typography, __assign({
|
|
562
|
+
variant: 'B3',
|
|
563
|
+
css: {
|
|
564
|
+
marginTop: '4px',
|
|
565
|
+
opacity: 0.75
|
|
566
|
+
}
|
|
567
|
+
}, {
|
|
568
|
+
children: subtitle
|
|
569
|
+
}))]
|
|
444
570
|
})), jsx(Typography, __assign({
|
|
445
571
|
variant: 'P3',
|
|
446
572
|
color: 'subheading',
|
|
@@ -518,6 +644,7 @@ var ACCOUNT_OPTIONS_POPUP_CONFIG = [{
|
|
|
518
644
|
redirectionLink: 'accounts/personal-data-dashboard'
|
|
519
645
|
}];
|
|
520
646
|
var SIGN_OUT_TEXT = 'Logout';
|
|
647
|
+
var MY_ACCOUNT_TEXT = 'My Account';
|
|
521
648
|
var LOGGEDIN_USER_TEXT = 'You are logged in with';
|
|
522
649
|
var HEADER_ACCOUNTS_OPTIONS_OPEN_BTN_ID = 'header-acc-btn';
|
|
523
650
|
var ACCOUNT_OPTIONS_CONTAINER_ID = 'account-options';
|
|
@@ -529,13 +656,33 @@ var LoyaltyChip = function (_a) {
|
|
|
529
656
|
backgroundGradient = _a.backgroundGradient,
|
|
530
657
|
handleChipClick = _a.handleChipClick,
|
|
531
658
|
chevronFillColor = _a.chevronFillColor;
|
|
532
|
-
var _b =
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
659
|
+
var _b = useHeaderContext(),
|
|
660
|
+
loyaltyType = _b.loyaltyType,
|
|
661
|
+
isUserLoggedIn = _b.isUserLoggedIn,
|
|
662
|
+
ravenPushCallback = _b.ravenPushCallback,
|
|
663
|
+
ravenPageName = _b.ravenPageName,
|
|
664
|
+
_c = _b.ravenPayload,
|
|
665
|
+
ravenPayload = _c === void 0 ? {} : _c,
|
|
666
|
+
ravenEventName = _b.ravenEventName;
|
|
667
|
+
var _d = useState(false),
|
|
668
|
+
isHovered = _d[0],
|
|
669
|
+
setIsHovered = _d[1];
|
|
670
|
+
var handleClick = useCallback(function () {
|
|
671
|
+
var _a;
|
|
672
|
+
if (handleChipClick) {
|
|
673
|
+
handleChipClick();
|
|
674
|
+
} else {
|
|
675
|
+
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
676
|
+
var defaultPayload = {
|
|
677
|
+
action_name: "loyalty_account_click",
|
|
678
|
+
action_type: 'click',
|
|
679
|
+
u_utm_source: utmSource,
|
|
680
|
+
loyaltyType: ravenLoyaltyTypes(loyaltyType)
|
|
681
|
+
};
|
|
682
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
683
|
+
window.location.href = '/all-offers/loyalty-october';
|
|
684
|
+
}
|
|
685
|
+
}, [handleChipClick, loyaltyType, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
539
686
|
return jsxs(Container, __assign({
|
|
540
687
|
display: 'flex',
|
|
541
688
|
position: 'relative',
|
|
@@ -560,7 +707,7 @@ var LoyaltyChip = function (_a) {
|
|
|
560
707
|
onClick: handleClick
|
|
561
708
|
}, {
|
|
562
709
|
children: [jsx(Container, {
|
|
563
|
-
|
|
710
|
+
css: {
|
|
564
711
|
content: '""',
|
|
565
712
|
position: 'absolute',
|
|
566
713
|
inset: 0,
|
|
@@ -569,7 +716,7 @@ var LoyaltyChip = function (_a) {
|
|
|
569
716
|
zIndex: -2
|
|
570
717
|
}
|
|
571
718
|
}), jsx(Container, {
|
|
572
|
-
|
|
719
|
+
css: {
|
|
573
720
|
content: '""',
|
|
574
721
|
position: 'absolute',
|
|
575
722
|
inset: 0,
|
|
@@ -590,7 +737,7 @@ var LoyaltyChip = function (_a) {
|
|
|
590
737
|
})), jsx(Container, __assign({
|
|
591
738
|
display: 'flex',
|
|
592
739
|
alignItems: 'center',
|
|
593
|
-
|
|
740
|
+
css: {
|
|
594
741
|
overflow: 'hidden',
|
|
595
742
|
maxWidth: isHovered ? 16 : 0,
|
|
596
743
|
transition: 'max-width 0.2s ease-in-out, opacity 0.2s ease-in-out',
|
|
@@ -655,24 +802,46 @@ var ExpandableItem = function (_a) {
|
|
|
655
802
|
handleChipClick = _a.handleChipClick,
|
|
656
803
|
value = _a.value,
|
|
657
804
|
type = _a.type;
|
|
658
|
-
var _b =
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
805
|
+
var _b = useHeaderContext(),
|
|
806
|
+
loyaltyType = _b.loyaltyType,
|
|
807
|
+
isUserLoggedIn = _b.isUserLoggedIn,
|
|
808
|
+
ravenPushCallback = _b.ravenPushCallback,
|
|
809
|
+
ravenPageName = _b.ravenPageName,
|
|
810
|
+
ravenEventName = _b.ravenEventName,
|
|
811
|
+
_c = _b.ravenPayload,
|
|
812
|
+
ravenPayload = _c === void 0 ? {} : _c;
|
|
813
|
+
var _d = useState(false),
|
|
814
|
+
isHovered = _d[0],
|
|
815
|
+
setIsHovered = _d[1];
|
|
816
|
+
var handleDefaultClick = useCallback(function () {
|
|
817
|
+
var _a;
|
|
818
|
+
if (handleChipClick) {
|
|
819
|
+
handleChipClick();
|
|
820
|
+
} else {
|
|
821
|
+
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
822
|
+
var defaultPayload = {
|
|
823
|
+
action_name: "".concat(type, "_account_click"),
|
|
824
|
+
action_type: 'click',
|
|
825
|
+
u_utm_source: utmSource,
|
|
826
|
+
loyaltyType: ravenLoyaltyTypes(loyaltyType)
|
|
827
|
+
};
|
|
828
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
829
|
+
var redirectUrls = {
|
|
830
|
+
supercoin: '/all-offers/supercoins/',
|
|
831
|
+
wallet: '/accounts/wallet'
|
|
832
|
+
};
|
|
833
|
+
if (redirectUrls[type]) {
|
|
834
|
+
window.location.href = redirectUrls[type];
|
|
835
|
+
}
|
|
666
836
|
}
|
|
667
|
-
|
|
668
|
-
};
|
|
837
|
+
}, [handleChipClick, type, loyaltyType, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
669
838
|
return jsxs(Container, __assign({
|
|
670
839
|
display: 'flex',
|
|
671
840
|
alignItems: 'center',
|
|
672
841
|
justifyContent: 'center',
|
|
673
842
|
borderRadius: '8px',
|
|
674
843
|
cursor: 'pointer',
|
|
675
|
-
|
|
844
|
+
css: {
|
|
676
845
|
height: 32,
|
|
677
846
|
paddingLeft: 8,
|
|
678
847
|
paddingRight: isHovered ? 4 : 8,
|
|
@@ -703,7 +872,7 @@ var ExpandableItem = function (_a) {
|
|
|
703
872
|
})), jsx(Container, __assign({
|
|
704
873
|
display: 'flex',
|
|
705
874
|
alignItems: 'center',
|
|
706
|
-
|
|
875
|
+
css: {
|
|
707
876
|
overflow: 'hidden',
|
|
708
877
|
maxWidth: isHovered ? 16 : 0,
|
|
709
878
|
transition: 'max-width 0.2s ease-in-out, opacity 0.2s ease-in-out',
|
|
@@ -731,6 +900,12 @@ var RewardsSection = function () {
|
|
|
731
900
|
hideWalletChip = _b.hideWalletChip,
|
|
732
901
|
hideSupercoinsChip = _b.hideSupercoinsChip,
|
|
733
902
|
hideLoyaltyChip = _b.hideLoyaltyChip;
|
|
903
|
+
var shouldShowLoyalty = loyaltyLoading || selectedLoyaltyType && LOYALTY_DATA[selectedLoyaltyType] && !hideLoyaltyChip;
|
|
904
|
+
var shouldShowSupercoin = superCoinsLoading || !hideSupercoinsChip;
|
|
905
|
+
var shouldShowWallet = walletLoading || !hideWalletChip;
|
|
906
|
+
if (!shouldShowLoyalty && !shouldShowSupercoin && !shouldShowWallet) {
|
|
907
|
+
return null;
|
|
908
|
+
}
|
|
734
909
|
return jsxs(Container, __assign({
|
|
735
910
|
display: 'flex',
|
|
736
911
|
padding: '0 16px 16px 16px',
|
|
@@ -761,7 +936,7 @@ var RewardsSection = function () {
|
|
|
761
936
|
}),
|
|
762
937
|
value: superCoinBalance,
|
|
763
938
|
handleChipClick: supercoinsChipClick,
|
|
764
|
-
type: '
|
|
939
|
+
type: 'supercoin'
|
|
765
940
|
}), walletLoading ? jsx(Shimmer, {
|
|
766
941
|
width: '50px',
|
|
767
942
|
height: '32px',
|
|
@@ -785,34 +960,51 @@ var AccountDropdownContent = function (_a) {
|
|
|
785
960
|
userName = _b.userName,
|
|
786
961
|
userMobileNumber = _b.userMobileNumber,
|
|
787
962
|
countryCode = _b.countryCode,
|
|
788
|
-
userDetailsLoading = _b.userDetailsLoading
|
|
963
|
+
userDetailsLoading = _b.userDetailsLoading,
|
|
964
|
+
loyaltyType = _b.loyaltyType,
|
|
965
|
+
isUserLoggedIn = _b.isUserLoggedIn,
|
|
966
|
+
ravenEventName = _b.ravenEventName,
|
|
967
|
+
ravenPageName = _b.ravenPageName,
|
|
968
|
+
_c = _b.ravenPayload,
|
|
969
|
+
ravenPayload = _c === void 0 ? {} : _c,
|
|
970
|
+
ravenPushCallback = _b.ravenPushCallback;
|
|
789
971
|
var containerRef = useDropdownAnimation(isOpen).containerRef;
|
|
790
|
-
var
|
|
791
|
-
var userGreeting = userName && "Hello ".concat(userName, "!");
|
|
792
|
-
var phoneNumber = countryCode && userMobileNumber ? "".concat(countryCode, " ").concat(userMobileNumber) : '';
|
|
972
|
+
var _d = useMemo(function () {
|
|
793
973
|
return {
|
|
794
|
-
userGreeting:
|
|
795
|
-
phoneNumber:
|
|
974
|
+
userGreeting: userName ? "Hello ".concat(userName, "!") : '',
|
|
975
|
+
phoneNumber: countryCode && userMobileNumber ? "".concat(countryCode, " ").concat(userMobileNumber) : ''
|
|
796
976
|
};
|
|
797
977
|
}, [userName, userMobileNumber, countryCode]),
|
|
798
|
-
userGreeting =
|
|
799
|
-
phoneNumber =
|
|
800
|
-
var
|
|
801
|
-
|
|
802
|
-
|
|
978
|
+
userGreeting = _d.userGreeting,
|
|
979
|
+
phoneNumber = _d.phoneNumber;
|
|
980
|
+
var generateRavenPayload = function (actionName) {
|
|
981
|
+
var _a;
|
|
982
|
+
return {
|
|
983
|
+
action_name: actionName.toLowerCase().replace(/[\s-]/g, '') + '_account_click',
|
|
984
|
+
action_type: 'click',
|
|
985
|
+
u_utm_source: (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic',
|
|
986
|
+
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
803
987
|
};
|
|
804
988
|
};
|
|
805
|
-
|
|
989
|
+
var handleAccountOptionsClick = useCallback(function (text, redirectLink) {
|
|
990
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, generateRavenPayload(text), ravenPayload, ravenPushCallback, ravenPageName);
|
|
991
|
+
window.location.href = redirectLink;
|
|
992
|
+
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
993
|
+
useCallback(function () {
|
|
994
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, generateRavenPayload(SIGN_OUT_TEXT), ravenPayload, ravenPushCallback, ravenPageName);
|
|
995
|
+
handleLogoutClick();
|
|
996
|
+
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName, handleLogoutClick]);
|
|
997
|
+
var positionAccountOptionsDiv = useCallback(function () {
|
|
806
998
|
var headerAccBtn = document.getElementById(HEADER_ACCOUNTS_OPTIONS_OPEN_BTN_ID);
|
|
807
999
|
var accountOptionsElem = document.getElementById(ACCOUNT_OPTIONS_CONTAINER_ID);
|
|
808
|
-
|
|
809
|
-
var headerBtnRight = headerAccBtn
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
}
|
|
813
|
-
};
|
|
814
|
-
positionAccountOptionsDiv();
|
|
1000
|
+
if (headerAccBtn && accountOptionsElem) {
|
|
1001
|
+
var headerBtnRight = headerAccBtn.getBoundingClientRect().right;
|
|
1002
|
+
accountOptionsElem.style.left = "".concat(headerBtnRight - ACCOUNT_OPTIONS_CONTAINER_WIDTH, "px");
|
|
1003
|
+
}
|
|
815
1004
|
}, []);
|
|
1005
|
+
useEffect(function () {
|
|
1006
|
+
positionAccountOptionsDiv();
|
|
1007
|
+
}, [positionAccountOptionsDiv]);
|
|
816
1008
|
var renderUserData = function () {
|
|
817
1009
|
var renderContent = function (loading, content, variant, color) {
|
|
818
1010
|
return jsx(Typography, __assign({
|
|
@@ -857,7 +1049,7 @@ var AccountDropdownContent = function (_a) {
|
|
|
857
1049
|
}, {
|
|
858
1050
|
children: [jsx(Container, __assign({
|
|
859
1051
|
padding: '16px',
|
|
860
|
-
height: '
|
|
1052
|
+
height: '76px'
|
|
861
1053
|
}, {
|
|
862
1054
|
children: renderUserData()
|
|
863
1055
|
})), jsx(RewardsSection, {}), jsxs(Container, __assign({
|
|
@@ -866,7 +1058,7 @@ var AccountDropdownContent = function (_a) {
|
|
|
866
1058
|
padding: '8px',
|
|
867
1059
|
backgroundColor: 'white',
|
|
868
1060
|
rowGap: '8px',
|
|
869
|
-
|
|
1061
|
+
css: {
|
|
870
1062
|
borderBottomLeftRadius: 12,
|
|
871
1063
|
borderBottomRightRadius: 12
|
|
872
1064
|
}
|
|
@@ -880,12 +1072,14 @@ var AccountDropdownContent = function (_a) {
|
|
|
880
1072
|
padding: '8px',
|
|
881
1073
|
borderRadius: '8px',
|
|
882
1074
|
cursor: 'pointer',
|
|
883
|
-
onClick:
|
|
1075
|
+
onClick: function () {
|
|
1076
|
+
return handleAccountOptionsClick(text, redirectionLink);
|
|
1077
|
+
}
|
|
884
1078
|
}, {
|
|
885
1079
|
children: jsxs(Container, __assign({
|
|
886
1080
|
display: 'flex',
|
|
887
1081
|
cursor: 'pointer',
|
|
888
|
-
|
|
1082
|
+
css: {
|
|
889
1083
|
columnGap: '8px'
|
|
890
1084
|
}
|
|
891
1085
|
}, {
|
|
@@ -902,7 +1096,7 @@ var AccountDropdownContent = function (_a) {
|
|
|
902
1096
|
}))
|
|
903
1097
|
}), "account-option-".concat(text));
|
|
904
1098
|
}), jsx(Divider, {
|
|
905
|
-
|
|
1099
|
+
css: {
|
|
906
1100
|
borderBottom: '1px dashed #E6E6E6'
|
|
907
1101
|
}
|
|
908
1102
|
}), jsxs(Container, __assign({
|
|
@@ -933,18 +1127,26 @@ var AccountDropdownContent = function (_a) {
|
|
|
933
1127
|
};
|
|
934
1128
|
|
|
935
1129
|
var UserAccount = function () {
|
|
936
|
-
var
|
|
937
|
-
|
|
1130
|
+
var _a = useHeaderContext(),
|
|
1131
|
+
isNovacThemeEnabled = _a.isNovacThemeEnabled,
|
|
1132
|
+
ravenEventName = _a.ravenEventName,
|
|
1133
|
+
_b = _a.ravenPayload,
|
|
1134
|
+
ravenPayload = _b === void 0 ? {} : _b,
|
|
1135
|
+
ravenPushCallback = _a.ravenPushCallback,
|
|
1136
|
+
isUserLoggedIn = _a.isUserLoggedIn,
|
|
1137
|
+
loyaltyType = _a.loyaltyType,
|
|
1138
|
+
ravenPageName = _a.ravenPageName;
|
|
1139
|
+
var _c = useHoverDropdown({
|
|
938
1140
|
openDelay: 0
|
|
939
1141
|
}),
|
|
940
|
-
isDropdownVisible =
|
|
941
|
-
handleOnMouseEnter =
|
|
942
|
-
handleOnMouseLeave =
|
|
943
|
-
handleDropdownMouseEnter =
|
|
944
|
-
handleDropdownMouseLeave =
|
|
945
|
-
var
|
|
946
|
-
scrolled =
|
|
947
|
-
setScrolled =
|
|
1142
|
+
isDropdownVisible = _c.isDropdownVisible,
|
|
1143
|
+
handleOnMouseEnter = _c.handleOnMouseEnter,
|
|
1144
|
+
handleOnMouseLeave = _c.handleOnMouseLeave,
|
|
1145
|
+
handleDropdownMouseEnter = _c.handleDropdownMouseEnter,
|
|
1146
|
+
handleDropdownMouseLeave = _c.handleDropdownMouseLeave;
|
|
1147
|
+
var _d = useState(false),
|
|
1148
|
+
scrolled = _d[0],
|
|
1149
|
+
setScrolled = _d[1];
|
|
948
1150
|
useEffect(function () {
|
|
949
1151
|
var handleScroll = function () {
|
|
950
1152
|
setScrolled(window.scrollY >= 100);
|
|
@@ -954,8 +1156,20 @@ var UserAccount = function () {
|
|
|
954
1156
|
return window.removeEventListener('scroll', handleScroll);
|
|
955
1157
|
};
|
|
956
1158
|
}, []);
|
|
957
|
-
var
|
|
958
|
-
var hoverColor =
|
|
1159
|
+
var theme = isNovacThemeEnabled && !scrolled ? THEME_CONFIG.NOVAC : THEME_CONFIG.DEFAULT;
|
|
1160
|
+
var hoverColor = theme.hoverColor,
|
|
1161
|
+
typographyColor = theme.typographyColor;
|
|
1162
|
+
var triggerRavenEventOnHover = useCallback(function () {
|
|
1163
|
+
var _a;
|
|
1164
|
+
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
1165
|
+
var defaultPayload = {
|
|
1166
|
+
action_name: "".concat(MY_ACCOUNT_TEXT.toLowerCase().replace(/[\s-]/g, ''), "_header_hover"),
|
|
1167
|
+
action_type: 'hover',
|
|
1168
|
+
u_utm_source: utmSource,
|
|
1169
|
+
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
1170
|
+
};
|
|
1171
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, defaultPayload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1172
|
+
}, [isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName, loyaltyType]);
|
|
959
1173
|
return jsxs(Container, {
|
|
960
1174
|
children: [jsxs(Container, __assign({
|
|
961
1175
|
display: 'flex',
|
|
@@ -964,18 +1178,19 @@ var UserAccount = function () {
|
|
|
964
1178
|
borderRadius: '12px',
|
|
965
1179
|
height: '100%',
|
|
966
1180
|
cursor: 'pointer',
|
|
967
|
-
|
|
1181
|
+
css: {
|
|
968
1182
|
columnGap: 8,
|
|
969
1183
|
height: 64
|
|
970
1184
|
},
|
|
971
1185
|
onMouseEnter: function () {
|
|
972
|
-
|
|
1186
|
+
handleOnMouseEnter(0);
|
|
1187
|
+
triggerRavenEventOnHover();
|
|
973
1188
|
},
|
|
974
1189
|
onMouseLeave: handleOnMouseLeave,
|
|
975
1190
|
id: HEADER_ACCOUNTS_OPTIONS_OPEN_BTN_ID
|
|
976
1191
|
}, {
|
|
977
1192
|
children: [jsx(MyAccount, {
|
|
978
|
-
color: isDropdownVisible ? hoverColor :
|
|
1193
|
+
color: isDropdownVisible ? hoverColor : typographyColor
|
|
979
1194
|
}), jsxs(Container, __assign({
|
|
980
1195
|
display: 'flex',
|
|
981
1196
|
flexDirection: 'row',
|
|
@@ -986,13 +1201,13 @@ var UserAccount = function () {
|
|
|
986
1201
|
css: {
|
|
987
1202
|
cursor: 'pointer'
|
|
988
1203
|
},
|
|
989
|
-
colorCode: isDropdownVisible ? hoverColor :
|
|
1204
|
+
colorCode: isDropdownVisible ? hoverColor : typographyColor
|
|
990
1205
|
}, {
|
|
991
|
-
children:
|
|
1206
|
+
children: MY_ACCOUNT_TEXT
|
|
992
1207
|
})), jsx(ChevronDown, {
|
|
993
1208
|
width: 20,
|
|
994
1209
|
height: 20,
|
|
995
|
-
fill: isDropdownVisible ? hoverColor :
|
|
1210
|
+
fill: isDropdownVisible ? hoverColor : typographyColor
|
|
996
1211
|
})]
|
|
997
1212
|
}))]
|
|
998
1213
|
})), jsx(HeaderAnimatedMask, __assign({
|
|
@@ -1017,21 +1232,23 @@ var Header = function (props) {
|
|
|
1017
1232
|
}));
|
|
1018
1233
|
};
|
|
1019
1234
|
var HeaderContent = function () {
|
|
1020
|
-
var _a
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1235
|
+
var _a;
|
|
1236
|
+
var _b = useHeaderContext(),
|
|
1237
|
+
onLoginButtonClick = _b.onLoginButtonClick,
|
|
1238
|
+
_c = _b.showAllLobs,
|
|
1239
|
+
showAllLobs = _c === void 0 ? false : _c,
|
|
1240
|
+
isUserLoggedIn = _b.isUserLoggedIn,
|
|
1241
|
+
loyaltyType = _b.loyaltyType,
|
|
1242
|
+
_d = _b.isNovacThemeEnabled,
|
|
1243
|
+
isNovacThemeEnabled = _d === void 0 ? false : _d,
|
|
1244
|
+
_e = _b.ravenPayload,
|
|
1245
|
+
ravenPayload = _e === void 0 ? {} : _e,
|
|
1246
|
+
ravenPushCallback = _b.ravenPushCallback,
|
|
1247
|
+
ravenPageName = _b.ravenPageName,
|
|
1248
|
+
ravenEventName = _b.ravenEventName;
|
|
1249
|
+
var _f = useState(false),
|
|
1250
|
+
scrolled = _f[0],
|
|
1251
|
+
setScrolled = _f[1];
|
|
1035
1252
|
useEffect(function () {
|
|
1036
1253
|
var handleScroll = function () {
|
|
1037
1254
|
setScrolled(window.scrollY >= 100);
|
|
@@ -1041,18 +1258,49 @@ var HeaderContent = function () {
|
|
|
1041
1258
|
return window.removeEventListener('scroll', handleScroll);
|
|
1042
1259
|
};
|
|
1043
1260
|
}, []);
|
|
1044
|
-
var
|
|
1045
|
-
var headerBackground =
|
|
1046
|
-
|
|
1047
|
-
|
|
1261
|
+
var theme = isNovacThemeEnabled && !scrolled ? THEME_CONFIG.NOVAC : THEME_CONFIG.DEFAULT;
|
|
1262
|
+
var headerBackground = theme.headerBackground,
|
|
1263
|
+
logoFill = theme.logoFill,
|
|
1264
|
+
loginButtonColorVariant = theme.loginButtonColorVariant,
|
|
1265
|
+
hoverColor = theme.hoverColor,
|
|
1266
|
+
fkcompanyColor = theme.fkcompanyColor,
|
|
1267
|
+
typographyColor = theme.typographyColor;
|
|
1268
|
+
var _g = useHoverDropdown({
|
|
1048
1269
|
openDelay: 0
|
|
1049
1270
|
}),
|
|
1050
|
-
isDropdownVisible =
|
|
1051
|
-
hoveredElemIndex =
|
|
1052
|
-
handleOnMouseEnter =
|
|
1053
|
-
handleOnMouseLeave =
|
|
1054
|
-
handleDropdownMouseEnter =
|
|
1055
|
-
handleDropdownMouseLeave =
|
|
1271
|
+
isDropdownVisible = _g.isDropdownVisible,
|
|
1272
|
+
hoveredElemIndex = _g.hoveredElemIndex,
|
|
1273
|
+
handleOnMouseEnter = _g.handleOnMouseEnter,
|
|
1274
|
+
handleOnMouseLeave = _g.handleOnMouseLeave,
|
|
1275
|
+
handleDropdownMouseEnter = _g.handleDropdownMouseEnter,
|
|
1276
|
+
handleDropdownMouseLeave = _g.handleDropdownMouseLeave;
|
|
1277
|
+
var utmSource = (_a = getQueryParam('utm_source')) !== null && _a !== void 0 ? _a : 'organic';
|
|
1278
|
+
var createPayload = useCallback(function (actionName, actionType) {
|
|
1279
|
+
return {
|
|
1280
|
+
action_name: actionName,
|
|
1281
|
+
action_type: actionType,
|
|
1282
|
+
u_utm_source: utmSource,
|
|
1283
|
+
loyalty_type: ravenLoyaltyTypes(loyaltyType)
|
|
1284
|
+
};
|
|
1285
|
+
}, [utmSource, loyaltyType]);
|
|
1286
|
+
var handleNavbarOptionsClick = useCallback(function (option) {
|
|
1287
|
+
if (option.isClickable && option.link) {
|
|
1288
|
+
var actionName = "".concat(option.text.toLowerCase().replace(/\s/g, ''), "_header_click");
|
|
1289
|
+
var payload = createPayload(actionName, 'click');
|
|
1290
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, payload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1291
|
+
window.location.href = option.link;
|
|
1292
|
+
}
|
|
1293
|
+
}, [createPayload, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
1294
|
+
var handleHomeClick = useCallback(function () {
|
|
1295
|
+
var payload = createPayload('home_header_click', 'click');
|
|
1296
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, payload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1297
|
+
window.location.href = '/';
|
|
1298
|
+
}, [createPayload, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
1299
|
+
var triggerRavenEventOnHover = useCallback(function (option) {
|
|
1300
|
+
var actionName = "".concat(option.text.toLowerCase().replace(/\s/g, ''), "_header_hover");
|
|
1301
|
+
var payload = createPayload(actionName, 'hover');
|
|
1302
|
+
ravenSDKTrigger(isUserLoggedIn, ravenEventName, payload, ravenPayload, ravenPushCallback, ravenPageName);
|
|
1303
|
+
}, [createPayload, isUserLoggedIn, ravenEventName, ravenPayload, ravenPushCallback, ravenPageName]);
|
|
1056
1304
|
return jsxs(Fragment, {
|
|
1057
1305
|
children: [jsx(Container, __assign({
|
|
1058
1306
|
display: 'flex',
|
|
@@ -1067,7 +1315,7 @@ var HeaderContent = function () {
|
|
|
1067
1315
|
css: {
|
|
1068
1316
|
gap: '24px',
|
|
1069
1317
|
flexShrink: 0,
|
|
1070
|
-
borderBottom:
|
|
1318
|
+
borderBottom: headerBackground === 'transparent' ? '' : '1px solid #E6E6E6',
|
|
1071
1319
|
transition: 'background-color 0.3s ease-in-out, border-bottom 0.3s ease-in-out'
|
|
1072
1320
|
}
|
|
1073
1321
|
}, {
|
|
@@ -1077,7 +1325,7 @@ var HeaderContent = function () {
|
|
|
1077
1325
|
justifyContent: 'space-between',
|
|
1078
1326
|
padding: '0 28px',
|
|
1079
1327
|
flex: 1,
|
|
1080
|
-
|
|
1328
|
+
css: {
|
|
1081
1329
|
gap: '24px',
|
|
1082
1330
|
maxWidth: 1440
|
|
1083
1331
|
}
|
|
@@ -1088,13 +1336,10 @@ var HeaderContent = function () {
|
|
|
1088
1336
|
alignItems: 'center',
|
|
1089
1337
|
justifyContent: 'center',
|
|
1090
1338
|
cursor: 'pointer',
|
|
1091
|
-
|
|
1092
|
-
onClick: function () {
|
|
1093
|
-
window.location.href = '/';
|
|
1094
|
-
}
|
|
1339
|
+
onClick: handleHomeClick
|
|
1095
1340
|
}, {
|
|
1096
1341
|
children: [jsx(CTLogo, {
|
|
1097
|
-
fillColor:
|
|
1342
|
+
fillColor: logoFill
|
|
1098
1343
|
}), jsx(Divider, {
|
|
1099
1344
|
css: {
|
|
1100
1345
|
width: 12,
|
|
@@ -1104,7 +1349,7 @@ var HeaderContent = function () {
|
|
|
1104
1349
|
borderBottom: '1px solid #e0e0e0'
|
|
1105
1350
|
}
|
|
1106
1351
|
}), jsx(Fkcompany, {
|
|
1107
|
-
color:
|
|
1352
|
+
color: fkcompanyColor
|
|
1108
1353
|
})]
|
|
1109
1354
|
})), jsxs(Container, __assign({
|
|
1110
1355
|
display: 'flex',
|
|
@@ -1121,11 +1366,18 @@ var HeaderContent = function () {
|
|
|
1121
1366
|
columnGap: '4px'
|
|
1122
1367
|
}, {
|
|
1123
1368
|
children: NAVBAR_OPTIONS.map(function (option, index) {
|
|
1369
|
+
var text = option.text,
|
|
1370
|
+
LeftIcon = option.lefticon,
|
|
1371
|
+
RightIcon = option.rightIcon,
|
|
1372
|
+
isHoverable = option.isHoverable;
|
|
1124
1373
|
var isHovered = hoveredElemIndex === index;
|
|
1125
1374
|
return jsxs(Container, {
|
|
1126
1375
|
children: [jsxs(Container, __assign({
|
|
1127
1376
|
onMouseEnter: function () {
|
|
1128
|
-
|
|
1377
|
+
handleOnMouseEnter(index);
|
|
1378
|
+
if (option.isHoverable) {
|
|
1379
|
+
triggerRavenEventOnHover(option);
|
|
1380
|
+
}
|
|
1129
1381
|
},
|
|
1130
1382
|
onMouseLeave: handleOnMouseLeave,
|
|
1131
1383
|
display: 'flex',
|
|
@@ -1137,13 +1389,11 @@ var HeaderContent = function () {
|
|
|
1137
1389
|
columnGap: 8,
|
|
1138
1390
|
height: '64px',
|
|
1139
1391
|
onClick: function () {
|
|
1140
|
-
|
|
1141
|
-
window.location.href = option.link;
|
|
1142
|
-
}
|
|
1392
|
+
return handleNavbarOptionsClick(option);
|
|
1143
1393
|
}
|
|
1144
1394
|
}, {
|
|
1145
|
-
children: [jsx(
|
|
1146
|
-
color: isHovered ? hoverColor :
|
|
1395
|
+
children: [jsx(LeftIcon, {
|
|
1396
|
+
color: isHovered ? hoverColor : typographyColor
|
|
1147
1397
|
}), jsxs(Container, __assign({
|
|
1148
1398
|
display: 'flex',
|
|
1149
1399
|
flexDirection: 'row',
|
|
@@ -1151,31 +1401,31 @@ var HeaderContent = function () {
|
|
|
1151
1401
|
}, {
|
|
1152
1402
|
children: [jsx(Typography, __assign({
|
|
1153
1403
|
variant: 'B2',
|
|
1154
|
-
colorCode: isHovered ? hoverColor :
|
|
1404
|
+
colorCode: isHovered ? hoverColor : typographyColor,
|
|
1155
1405
|
isClickable: true
|
|
1156
1406
|
}, {
|
|
1157
|
-
children:
|
|
1158
|
-
})),
|
|
1407
|
+
children: text
|
|
1408
|
+
})), RightIcon && jsx(RightIcon, {
|
|
1159
1409
|
width: 20,
|
|
1160
1410
|
height: 20,
|
|
1161
|
-
fill: isHovered ? hoverColor :
|
|
1411
|
+
fill: isHovered ? hoverColor : typographyColor
|
|
1162
1412
|
})]
|
|
1163
1413
|
}))]
|
|
1164
1414
|
}), "nav-option-".concat(index)), jsx(HeaderAnimatedMask, __assign({
|
|
1165
|
-
show: hoveredElemIndex === index &&
|
|
1415
|
+
show: hoveredElemIndex === index && isHoverable && isDropdownVisible,
|
|
1166
1416
|
marginTop: '64px',
|
|
1167
1417
|
handleDropdownMouseEnter: handleDropdownMouseEnter,
|
|
1168
1418
|
handleDropdownMouseLeave: handleDropdownMouseLeave,
|
|
1169
1419
|
onMaskClick: handleDropdownMouseLeave
|
|
1170
1420
|
}, {
|
|
1171
1421
|
children: jsx(BusinessDropdownContent, {
|
|
1172
|
-
isOpen: hoveredElemIndex === index &&
|
|
1422
|
+
isOpen: hoveredElemIndex === index && isHoverable && isDropdownVisible
|
|
1173
1423
|
})
|
|
1174
1424
|
}))]
|
|
1175
1425
|
});
|
|
1176
1426
|
})
|
|
1177
1427
|
})), isUserLoggedIn && jsx(Divider, {
|
|
1178
|
-
|
|
1428
|
+
css: {
|
|
1179
1429
|
width: 12,
|
|
1180
1430
|
margin: '0 -18px',
|
|
1181
1431
|
transform: 'rotate(90deg)',
|
|
@@ -1189,21 +1439,22 @@ var HeaderContent = function () {
|
|
|
1189
1439
|
}, {
|
|
1190
1440
|
children: jsx(UserAccount, {})
|
|
1191
1441
|
})) : jsx(Button, __assign({
|
|
1192
|
-
|
|
1442
|
+
variant: 'outline',
|
|
1443
|
+
color: loginButtonColorVariant,
|
|
1444
|
+
className: "".concat(headerBackground === 'transparent' ? 'novac-login-button' : 'login-button'),
|
|
1193
1445
|
onClick: onLoginButtonClick,
|
|
1194
|
-
|
|
1446
|
+
css: {
|
|
1195
1447
|
width: 153,
|
|
1196
|
-
height: 40
|
|
1197
|
-
border: effectiveNovacThemeEnabled ? '1px solid #FFF' : '1px solid #1A1A1A'
|
|
1448
|
+
height: 40
|
|
1198
1449
|
},
|
|
1199
1450
|
loading: false
|
|
1200
1451
|
}, {
|
|
1201
1452
|
children: jsx(Typography, __assign({
|
|
1202
1453
|
componentNode: 'span',
|
|
1203
1454
|
variant: 'L2',
|
|
1204
|
-
color:
|
|
1455
|
+
color: loginButtonColorVariant === ButtonColor.NEUTRAL ? 'neutral' : 'primary'
|
|
1205
1456
|
}, {
|
|
1206
|
-
children:
|
|
1457
|
+
children: LOG_IN_TEXT
|
|
1207
1458
|
}))
|
|
1208
1459
|
}))
|
|
1209
1460
|
})]
|
|
@@ -1213,5 +1464,5 @@ var HeaderContent = function () {
|
|
|
1213
1464
|
});
|
|
1214
1465
|
};
|
|
1215
1466
|
|
|
1216
|
-
export { Header, LOBS_VALUES, LoyaltyType };
|
|
1467
|
+
export { Header, LOBS_VALUES, LoyaltyType, RAVEN_PAGE_NAMES };
|
|
1217
1468
|
//# sourceMappingURL=ct-design-header.esm.js.map
|