@lendi/navbar 7.44.5 → 7.44.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,5 +17,7 @@ export declare const Accordion: import("styled-components").StyledComponent<"ul"
17
17
  export declare const SubItem: import("styled-components").StyledComponent<"li", import("styled-components").DefaultTheme, {}, never>;
18
18
  export declare const ItemLink: import("styled-components").StyledComponent<"a", import("styled-components").DefaultTheme, {}, never>;
19
19
  export declare const SubItemLink: import("styled-components").StyledComponent<"a", import("styled-components").DefaultTheme, {}, never>;
20
+ export declare const ArrowSpacer: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
20
21
  export declare const ListItem: import("styled-components").StyledComponent<"li", import("styled-components").DefaultTheme, {}, never>;
22
+ export declare const PlainListItem: import("styled-components").StyledComponent<"li", import("styled-components").DefaultTheme, {}, never>;
21
23
  export {};
@@ -4,7 +4,7 @@ export interface LinkProps {
4
4
  link?: string | undefined;
5
5
  }
6
6
  export interface MenuItem extends LinkProps {
7
- children: MenuSubItem[];
7
+ children?: MenuSubItem[];
8
8
  }
9
9
  export interface MenuSubItem {
10
10
  label: string;
@@ -2135,16 +2135,30 @@ var MULTI_MENU_OPTIONS = [{
2135
2135
  link: '/inspire/category/life-at-lendi/'
2136
2136
  }]
2137
2137
  }];
2138
- var MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK = MULTI_MENU_OPTIONS.map(menu => _objectSpread2(_objectSpread2({}, menu), {}, {
2139
- children: menu.children.map(child => child.link === '/calculators/debt-consolidation-calculator/' ? {
2140
- label: 'Home loan health check',
2141
- link: '/home-loans/health-check/'
2142
- } : child)
2143
- }));
2138
+ var MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK = MULTI_MENU_OPTIONS.map(menu => {
2139
+ var _menu$children;
2140
+ return _objectSpread2(_objectSpread2({}, menu), {}, {
2141
+ children: (_menu$children = menu.children) === null || _menu$children === void 0 ? void 0 : _menu$children.map(child => child.link === '/calculators/debt-consolidation-calculator/' ? {
2142
+ label: 'Home loan health check',
2143
+ link: '/home-loans/health-check/'
2144
+ } : child)
2145
+ });
2146
+ });
2144
2147
  var getMultiMenuOptions = function getMultiMenuOptions() {
2145
2148
  var featureFlags = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2146
2149
  // replace debt-consolidation-calculator with health-check if gpHomeLoanHealthCheck enabled
2147
- return featureFlags.gpHomeLoanHealthCheck ? MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK : MULTI_MENU_OPTIONS;
2150
+ var menuOptions = featureFlags.gpHomeLoanHealthCheck ? MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK : MULTI_MENU_OPTIONS;
2151
+
2152
+ // insert "Other loans" after "Home loans" if gpOtherLoansNavbarOption enabled
2153
+ if (featureFlags.gpOtherLoansNavbarOption) {
2154
+ var homeLoansIndex = menuOptions.findIndex(item => item.label === 'Home loans');
2155
+ var otherLoansItem = {
2156
+ label: 'Other loans',
2157
+ link: '/loans'
2158
+ };
2159
+ return [...menuOptions.slice(0, homeLoansIndex + 1), otherLoansItem, ...menuOptions.slice(homeLoansIndex + 1)];
2160
+ }
2161
+ return menuOptions;
2148
2162
  };
2149
2163
 
2150
2164
  var DesktopActions = _ref => {
@@ -2403,10 +2417,18 @@ var SubItemLink = styled__default["default"].a.withConfig({
2403
2417
  displayName: "indexstyle__SubItemLink",
2404
2418
  componentId: "lui__sc-1j3tn22-6"
2405
2419
  })(["text-decoration:none;color:", ";display:block;padding-left:48px;"], color.color('shade.900'));
2420
+ var ArrowSpacer = styled__default["default"].span.withConfig({
2421
+ displayName: "indexstyle__ArrowSpacer",
2422
+ componentId: "lui__sc-1j3tn22-7"
2423
+ })(["display:inline-block;width:18px;", ";"], spacing.mr('sm'));
2406
2424
  var ListItem$1 = styled__default["default"].li.withConfig({
2407
2425
  displayName: "indexstyle__ListItem",
2408
- componentId: "lui__sc-1j3tn22-7"
2426
+ componentId: "lui__sc-1j3tn22-8"
2409
2427
  })([""]);
2428
+ var PlainListItem = styled__default["default"].li.withConfig({
2429
+ displayName: "indexstyle__PlainListItem",
2430
+ componentId: "lui__sc-1j3tn22-9"
2431
+ })(["> button:last-child{border-bottom:none;}"]);
2410
2432
 
2411
2433
  var LeftSidebarContent = _ref => {
2412
2434
  var {
@@ -2419,75 +2441,78 @@ var LeftSidebarContent = _ref => {
2419
2441
  var [selected, setSelected] = React__default["default"].useState(-1);
2420
2442
  return /*#__PURE__*/jsxRuntime.jsxs(ItemsWrapper, {
2421
2443
  role: "menu",
2422
- children: [MENU_OPTIONS.map((item, index) => item.children.length > 0 ? /*#__PURE__*/jsxRuntime.jsxs(ListItem$1, {
2423
- children: [/*#__PURE__*/jsxRuntime.jsxs(Item, {
2424
- onClick: () => {
2425
- setSelected(index);
2426
- var event = {
2427
- event_name: 'Menu Clicked',
2428
- menuName: item.label,
2429
- category: analytics$1.EventCategory.NAVBAR
2430
- };
2431
- analytics(event);
2432
- },
2433
- "aria-label": item.label,
2434
- children: [/*#__PURE__*/jsxRuntime.jsx(RightArrow, {
2435
- shouldRotate: selected === index
2436
- }), /*#__PURE__*/jsxRuntime.jsx("span", {
2437
- children: item.label
2438
- })]
2439
- }), /*#__PURE__*/jsxRuntime.jsx(Accordion, {
2440
- isVisible: selected === index,
2441
- "aria-expanded": selected === index,
2442
- children: item.children.map((child, childIndex) => {
2443
- var _child$link;
2444
- return /*#__PURE__*/jsxRuntime.jsx(SubItem, {
2445
- role: "none",
2446
- children: /*#__PURE__*/jsxRuntime.jsx(SubItemLink, {
2447
- role: "menuitem",
2448
- href: embedMarketingTrackingIntoURL((_child$link = child.link) !== null && _child$link !== void 0 ? _child$link : '', 'https://www.lendi.com.au'),
2449
- "aria-label": child.label,
2450
- onClick: () => {
2451
- var event = {
2452
- event_name: 'Menu Element Clicked',
2453
- menuName: item.label,
2454
- text: child.label,
2455
- category: analytics$1.EventCategory.NAVBAR
2456
- };
2457
- analytics(event);
2458
- },
2459
- children: child.label
2460
- })
2461
- }, index + '-' + childIndex);
2462
- })
2463
- })]
2464
- }, index) : /*#__PURE__*/jsxRuntime.jsx(ListItem$1, {
2465
- role: "none",
2466
- children: item.link ? /*#__PURE__*/jsxRuntime.jsx(Item, {
2467
- children: /*#__PURE__*/jsxRuntime.jsx(ItemLink, {
2468
- role: "menuitem",
2469
- href: embedMarketingTrackingIntoURL(item.link, 'https://www.lendi.com.au'),
2470
- "aria-label": item.label,
2444
+ children: [MENU_OPTIONS.map((item, index) => {
2445
+ var _item$children;
2446
+ return item.children && item.children.length > 0 ? /*#__PURE__*/jsxRuntime.jsxs(ListItem$1, {
2447
+ children: [/*#__PURE__*/jsxRuntime.jsxs(Item, {
2471
2448
  onClick: () => {
2449
+ setSelected(index);
2472
2450
  var event = {
2473
- event_name: 'Menu Element Clicked',
2451
+ event_name: 'Menu Clicked',
2474
2452
  menuName: item.label,
2475
- text: '',
2476
2453
  category: analytics$1.EventCategory.NAVBAR
2477
2454
  };
2478
2455
  analytics(event);
2479
2456
  },
2480
- children: /*#__PURE__*/jsxRuntime.jsx("span", {
2457
+ "aria-label": item.label,
2458
+ children: [/*#__PURE__*/jsxRuntime.jsx(RightArrow, {
2459
+ shouldRotate: selected === index
2460
+ }), /*#__PURE__*/jsxRuntime.jsx("span", {
2481
2461
  children: item.label
2462
+ })]
2463
+ }), /*#__PURE__*/jsxRuntime.jsx(Accordion, {
2464
+ isVisible: selected === index,
2465
+ "aria-expanded": selected === index,
2466
+ children: (_item$children = item.children) === null || _item$children === void 0 ? void 0 : _item$children.map((child, childIndex) => {
2467
+ var _child$link;
2468
+ return /*#__PURE__*/jsxRuntime.jsx(SubItem, {
2469
+ role: "none",
2470
+ children: /*#__PURE__*/jsxRuntime.jsx(SubItemLink, {
2471
+ role: "menuitem",
2472
+ href: embedMarketingTrackingIntoURL((_child$link = child.link) !== null && _child$link !== void 0 ? _child$link : '', 'https://www.lendi.com.au'),
2473
+ "aria-label": child.label,
2474
+ onClick: () => {
2475
+ var event = {
2476
+ event_name: 'Menu Element Clicked',
2477
+ menuName: item.label,
2478
+ text: child.label,
2479
+ category: analytics$1.EventCategory.NAVBAR
2480
+ };
2481
+ analytics(event);
2482
+ },
2483
+ children: child.label
2484
+ })
2485
+ }, index + '-' + childIndex);
2482
2486
  })
2487
+ })]
2488
+ }, index) : /*#__PURE__*/jsxRuntime.jsx(PlainListItem, {
2489
+ role: "none",
2490
+ children: item.link ? /*#__PURE__*/jsxRuntime.jsxs(Item, {
2491
+ children: [/*#__PURE__*/jsxRuntime.jsx(ArrowSpacer, {}), /*#__PURE__*/jsxRuntime.jsx(ItemLink, {
2492
+ role: "menuitem",
2493
+ href: embedMarketingTrackingIntoURL(item.link, 'https://www.lendi.com.au'),
2494
+ "aria-label": item.label,
2495
+ onClick: () => {
2496
+ var event = {
2497
+ event_name: 'Menu Element Clicked',
2498
+ menuName: item.label,
2499
+ text: '',
2500
+ category: analytics$1.EventCategory.NAVBAR
2501
+ };
2502
+ analytics(event);
2503
+ },
2504
+ children: /*#__PURE__*/jsxRuntime.jsx("span", {
2505
+ children: item.label
2506
+ })
2507
+ })]
2508
+ }) : /*#__PURE__*/jsxRuntime.jsxs(Item, {
2509
+ "aria-label": item.label,
2510
+ children: [/*#__PURE__*/jsxRuntime.jsx(ArrowSpacer, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
2511
+ children: item.label
2512
+ })]
2483
2513
  })
2484
- }) : /*#__PURE__*/jsxRuntime.jsx(Item, {
2485
- "aria-label": item.label,
2486
- children: /*#__PURE__*/jsxRuntime.jsx("span", {
2487
- children: item.label
2488
- })
2489
- })
2490
- }, index)), sendFeedback && isSVA && /*#__PURE__*/jsxRuntime.jsx(ListItem$1, {
2514
+ }, index);
2515
+ }), sendFeedback && isSVA && /*#__PURE__*/jsxRuntime.jsx(ListItem$1, {
2491
2516
  role: "none",
2492
2517
  children: /*#__PURE__*/jsxRuntime.jsx(Item, {
2493
2518
  "aria-label": LABEL_SEND_FEEDBACK,
@@ -2721,15 +2746,17 @@ var MenuOptions = props => {
2721
2746
  return /*#__PURE__*/jsxRuntime.jsx(OptionsContainer, {
2722
2747
  children: /*#__PURE__*/jsxRuntime.jsx(UnOrderedList, {
2723
2748
  children: getMultiMenuOptions(flags).map(_ref => {
2724
- var _selectedItem$link;
2749
+ var _selectedItem$link, _selectedItem$childre;
2725
2750
  var {
2726
2751
  label,
2727
- children
2752
+ children,
2753
+ link
2728
2754
  } = _ref;
2729
2755
  return /*#__PURE__*/jsxRuntime.jsxs(ListItem, {
2730
2756
  children: [/*#__PURE__*/jsxRuntime.jsxs(LinkOption, {
2757
+ href: !children ? embedMarketingTrackingIntoURL(link !== null && link !== void 0 ? link : '', 'https://www.lendi.com.au') : undefined,
2731
2758
  onClick: () => {
2732
- onClickOption(label, setCurrentSelected);
2759
+ if (children) onClickOption(label, setCurrentSelected);
2733
2760
  var event = {
2734
2761
  event_name: 'Menu Clicked',
2735
2762
  category: analytics$1.EventCategory.NAVBAR,
@@ -2738,7 +2765,7 @@ var MenuOptions = props => {
2738
2765
  analytics(event);
2739
2766
  },
2740
2767
  isTransparent: isTransparent,
2741
- type: "button",
2768
+ type: children ? 'button' : undefined,
2742
2769
  children: [/*#__PURE__*/jsxRuntime.jsxs(BarWrapper, {
2743
2770
  children: [/*#__PURE__*/jsxRuntime.jsx(Label, {
2744
2771
  size: "xs",
@@ -2751,7 +2778,7 @@ var MenuOptions = props => {
2751
2778
  isSelected: currentSelected === label,
2752
2779
  isTransparent: isTransparent
2753
2780
  })]
2754
- }), currentSelected === label && /*#__PURE__*/jsxRuntime.jsxs(DisplayPanel, {
2781
+ }), children && currentSelected === label && /*#__PURE__*/jsxRuntime.jsxs(DisplayPanel, {
2755
2782
  ref: displayPanel,
2756
2783
  children: [/*#__PURE__*/jsxRuntime.jsxs(HeadingWrapper, {
2757
2784
  children: [/*#__PURE__*/jsxRuntime.jsxs(HeadingLink, {
@@ -2789,7 +2816,7 @@ var MenuOptions = props => {
2789
2816
  children: isAuthenticated ? LABEL_CONTINUE : LABEL_SIGN_IN
2790
2817
  })]
2791
2818
  }), /*#__PURE__*/jsxRuntime.jsx(LinksGroup, {
2792
- children: selectedItem.children.map(child => {
2819
+ children: (_selectedItem$childre = selectedItem.children) === null || _selectedItem$childre === void 0 ? void 0 : _selectedItem$childre.map(child => {
2793
2820
  var _child$link;
2794
2821
  return /*#__PURE__*/jsxRuntime.jsx(LinkItem, {
2795
2822
  children: /*#__PURE__*/jsxRuntime.jsx(PanelLink, {
@@ -1355,13 +1355,24 @@ var _templateObject$9, _templateObject2$4, _templateObject$8, _templateObject2$3
1355
1355
  label: "Life at Lendi",
1356
1356
  link: "/inspire/category/life-at-lendi/"
1357
1357
  } ]
1358
- } ], MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK = MULTI_MENU_OPTIONS.map((menu => _objectSpread2(_objectSpread2({}, menu), {}, {
1359
- children: menu.children.map((child => "/calculators/debt-consolidation-calculator/" === child.link ? {
1360
- label: "Home loan health check",
1361
- link: "/home-loans/health-check/"
1362
- } : child))
1363
- }))), getMultiMenuOptions = function() {
1364
- return (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}).gpHomeLoanHealthCheck ? MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK : MULTI_MENU_OPTIONS;
1358
+ } ], MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK = MULTI_MENU_OPTIONS.map((menu => {
1359
+ var _menu$children;
1360
+ return _objectSpread2(_objectSpread2({}, menu), {}, {
1361
+ children: null === (_menu$children = menu.children) || void 0 === _menu$children ? void 0 : _menu$children.map((child => "/calculators/debt-consolidation-calculator/" === child.link ? {
1362
+ label: "Home loan health check",
1363
+ link: "/home-loans/health-check/"
1364
+ } : child))
1365
+ });
1366
+ })), getMultiMenuOptions = function() {
1367
+ var featureFlags = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, menuOptions = featureFlags.gpHomeLoanHealthCheck ? MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK : MULTI_MENU_OPTIONS;
1368
+ if (featureFlags.gpOtherLoansNavbarOption) {
1369
+ var homeLoansIndex = menuOptions.findIndex((item => "Home loans" === item.label));
1370
+ return [ ...menuOptions.slice(0, homeLoansIndex + 1), {
1371
+ label: "Other loans",
1372
+ link: "/loans"
1373
+ }, ...menuOptions.slice(homeLoansIndex + 1) ];
1374
+ }
1375
+ return menuOptions;
1365
1376
  }, DesktopActions = _ref => {
1366
1377
  var _window, _window2, {isAuthenticated: isAuthenticated, continueURL: continueURL, showContinueAction: showContinueAction = !1, openCommPanel: openCommPanel = (() => {}), teamMember: teamMember, hasUnreadMessages: hasUnreadMessages, showTalkToExpertCta: showTalkToExpertCta} = _ref, brand = lalaUtils.getBrandFromHostname(), env = getEnvFromHostname(null === (_window = window) || void 0 === _window || null === (_window = _window.location) || void 0 === _window ? void 0 : _window.hostname), signInURL = getSignInURL(brand, env, null === (_window2 = window) || void 0 === _window2 || null === (_window2 = _window2.location) || void 0 === _window2 ? void 0 : _window2.href), primaryLabel = null != teamMember && teamMember.firstName ? "Talk to ".concat(teamMember.firstName) : "aussie" === brand ? LABEL_TALK_TO_A_BROKER : LABEL_TALK_TO_EXPERT;
1367
1378
  return jsxRuntime.jsxs(DesktopActionsWrapper, {
@@ -1547,82 +1558,91 @@ var _templateObject$5, _templateObject$4, _templateObject2$2, _templateObject3$1
1547
1558
  })([ "text-decoration:none;color:", ";width:100%;" ], color.color("secondary.500")), SubItemLink = styled__default.default.a.withConfig({
1548
1559
  displayName: "indexstyle__SubItemLink",
1549
1560
  componentId: "lui__sc-1j3tn22-6"
1550
- })([ "text-decoration:none;color:", ";display:block;padding-left:48px;" ], color.color("shade.900")), ListItem$1 = styled__default.default.li.withConfig({
1551
- displayName: "indexstyle__ListItem",
1561
+ })([ "text-decoration:none;color:", ";display:block;padding-left:48px;" ], color.color("shade.900")), ArrowSpacer = styled__default.default.span.withConfig({
1562
+ displayName: "indexstyle__ArrowSpacer",
1552
1563
  componentId: "lui__sc-1j3tn22-7"
1553
- })([ "" ]), LeftSidebarContent = _ref => {
1564
+ })([ "display:inline-block;width:18px;", ";" ], spacing.mr("sm")), ListItem$1 = styled__default.default.li.withConfig({
1565
+ displayName: "indexstyle__ListItem",
1566
+ componentId: "lui__sc-1j3tn22-8"
1567
+ })([ "" ]), PlainListItem = styled__default.default.li.withConfig({
1568
+ displayName: "indexstyle__PlainListItem",
1569
+ componentId: "lui__sc-1j3tn22-9"
1570
+ })([ "> button:last-child{border-bottom:none;}" ]), LeftSidebarContent = _ref => {
1554
1571
  var {menuOptions: MENU_OPTIONS} = _ref, {sendFeedback: sendFeedback} = launchdarkly.useFlags(), isSVA = checkSVA(), [selected, setSelected] = React__default.default.useState(-1);
1555
1572
  return jsxRuntime.jsxs(ItemsWrapper, {
1556
1573
  role: "menu",
1557
- children: [ MENU_OPTIONS.map(((item, index) => item.children.length > 0 ? jsxRuntime.jsxs(ListItem$1, {
1558
- children: [ jsxRuntime.jsxs(Item, {
1559
- onClick: () => {
1560
- setSelected(index);
1561
- var event = {
1562
- event_name: "Menu Clicked",
1563
- menuName: item.label,
1564
- category: analytics$1.EventCategory.NAVBAR
1565
- };
1566
- analytics(event);
1567
- },
1568
- "aria-label": item.label,
1569
- children: [ jsxRuntime.jsx(RightArrow, {
1570
- shouldRotate: selected === index
1571
- }), jsxRuntime.jsx("span", {
1572
- children: item.label
1573
- }) ]
1574
- }), jsxRuntime.jsx(Accordion, {
1575
- isVisible: selected === index,
1576
- "aria-expanded": selected === index,
1577
- children: item.children.map(((child, childIndex) => {
1578
- var _child$link;
1579
- return jsxRuntime.jsx(SubItem, {
1580
- role: "none",
1581
- children: jsxRuntime.jsx(SubItemLink, {
1582
- role: "menuitem",
1583
- href: embedMarketingTrackingIntoURL(null !== (_child$link = child.link) && void 0 !== _child$link ? _child$link : "", "https://www.lendi.com.au"),
1584
- "aria-label": child.label,
1585
- onClick: () => {
1586
- var event = {
1587
- event_name: "Menu Element Clicked",
1588
- menuName: item.label,
1589
- text: child.label,
1590
- category: analytics$1.EventCategory.NAVBAR
1591
- };
1592
- analytics(event);
1593
- },
1594
- children: child.label
1595
- })
1596
- }, index + "-" + childIndex);
1597
- }))
1598
- }) ]
1599
- }, index) : jsxRuntime.jsx(ListItem$1, {
1600
- role: "none",
1601
- children: item.link ? jsxRuntime.jsx(Item, {
1602
- children: jsxRuntime.jsx(ItemLink, {
1603
- role: "menuitem",
1604
- href: embedMarketingTrackingIntoURL(item.link, "https://www.lendi.com.au"),
1605
- "aria-label": item.label,
1574
+ children: [ MENU_OPTIONS.map(((item, index) => {
1575
+ var _item$children;
1576
+ return item.children && item.children.length > 0 ? jsxRuntime.jsxs(ListItem$1, {
1577
+ children: [ jsxRuntime.jsxs(Item, {
1606
1578
  onClick: () => {
1579
+ setSelected(index);
1607
1580
  var event = {
1608
- event_name: "Menu Element Clicked",
1581
+ event_name: "Menu Clicked",
1609
1582
  menuName: item.label,
1610
- text: "",
1611
1583
  category: analytics$1.EventCategory.NAVBAR
1612
1584
  };
1613
1585
  analytics(event);
1614
1586
  },
1615
- children: jsxRuntime.jsx("span", {
1587
+ "aria-label": item.label,
1588
+ children: [ jsxRuntime.jsx(RightArrow, {
1589
+ shouldRotate: selected === index
1590
+ }), jsxRuntime.jsx("span", {
1616
1591
  children: item.label
1617
- })
1618
- })
1619
- }) : jsxRuntime.jsx(Item, {
1620
- "aria-label": item.label,
1621
- children: jsxRuntime.jsx("span", {
1622
- children: item.label
1592
+ }) ]
1593
+ }), jsxRuntime.jsx(Accordion, {
1594
+ isVisible: selected === index,
1595
+ "aria-expanded": selected === index,
1596
+ children: null === (_item$children = item.children) || void 0 === _item$children ? void 0 : _item$children.map(((child, childIndex) => {
1597
+ var _child$link;
1598
+ return jsxRuntime.jsx(SubItem, {
1599
+ role: "none",
1600
+ children: jsxRuntime.jsx(SubItemLink, {
1601
+ role: "menuitem",
1602
+ href: embedMarketingTrackingIntoURL(null !== (_child$link = child.link) && void 0 !== _child$link ? _child$link : "", "https://www.lendi.com.au"),
1603
+ "aria-label": child.label,
1604
+ onClick: () => {
1605
+ var event = {
1606
+ event_name: "Menu Element Clicked",
1607
+ menuName: item.label,
1608
+ text: child.label,
1609
+ category: analytics$1.EventCategory.NAVBAR
1610
+ };
1611
+ analytics(event);
1612
+ },
1613
+ children: child.label
1614
+ })
1615
+ }, index + "-" + childIndex);
1616
+ }))
1617
+ }) ]
1618
+ }, index) : jsxRuntime.jsx(PlainListItem, {
1619
+ role: "none",
1620
+ children: item.link ? jsxRuntime.jsxs(Item, {
1621
+ children: [ jsxRuntime.jsx(ArrowSpacer, {}), jsxRuntime.jsx(ItemLink, {
1622
+ role: "menuitem",
1623
+ href: embedMarketingTrackingIntoURL(item.link, "https://www.lendi.com.au"),
1624
+ "aria-label": item.label,
1625
+ onClick: () => {
1626
+ var event = {
1627
+ event_name: "Menu Element Clicked",
1628
+ menuName: item.label,
1629
+ text: "",
1630
+ category: analytics$1.EventCategory.NAVBAR
1631
+ };
1632
+ analytics(event);
1633
+ },
1634
+ children: jsxRuntime.jsx("span", {
1635
+ children: item.label
1636
+ })
1637
+ }) ]
1638
+ }) : jsxRuntime.jsxs(Item, {
1639
+ "aria-label": item.label,
1640
+ children: [ jsxRuntime.jsx(ArrowSpacer, {}), jsxRuntime.jsx("span", {
1641
+ children: item.label
1642
+ }) ]
1623
1643
  })
1624
- })
1625
- }, index))), sendFeedback && isSVA && jsxRuntime.jsx(ListItem$1, {
1644
+ }, index);
1645
+ })), sendFeedback && isSVA && jsxRuntime.jsx(ListItem$1, {
1626
1646
  role: "none",
1627
1647
  children: jsxRuntime.jsx(Item, {
1628
1648
  "aria-label": LABEL_SEND_FEEDBACK,
@@ -1776,11 +1796,12 @@ var _templateObject$5, _templateObject$4, _templateObject2$2, _templateObject3$1
1776
1796
  return jsxRuntime.jsx(OptionsContainer, {
1777
1797
  children: jsxRuntime.jsx(UnOrderedList, {
1778
1798
  children: getMultiMenuOptions(flags).map((_ref => {
1779
- var _selectedItem$link, {label: label, children: children} = _ref;
1799
+ var _selectedItem$link, _selectedItem$childre, {label: label, children: children, link: link} = _ref;
1780
1800
  return jsxRuntime.jsxs(ListItem, {
1781
1801
  children: [ jsxRuntime.jsxs(LinkOption, {
1802
+ href: children ? void 0 : embedMarketingTrackingIntoURL(null != link ? link : "", "https://www.lendi.com.au"),
1782
1803
  onClick: () => {
1783
- onClickOption(label, setCurrentSelected);
1804
+ children && onClickOption(label, setCurrentSelected);
1784
1805
  var event = {
1785
1806
  event_name: "Menu Clicked",
1786
1807
  category: analytics$1.EventCategory.NAVBAR,
@@ -1789,7 +1810,7 @@ var _templateObject$5, _templateObject$4, _templateObject2$2, _templateObject3$1
1789
1810
  analytics(event);
1790
1811
  },
1791
1812
  isTransparent: isTransparent,
1792
- type: "button",
1813
+ type: children ? "button" : void 0,
1793
1814
  children: [ jsxRuntime.jsxs(BarWrapper, {
1794
1815
  children: [ jsxRuntime.jsx(Label, {
1795
1816
  size: "xs",
@@ -1802,7 +1823,7 @@ var _templateObject$5, _templateObject$4, _templateObject2$2, _templateObject3$1
1802
1823
  isSelected: currentSelected === label,
1803
1824
  isTransparent: isTransparent
1804
1825
  }) ]
1805
- }), currentSelected === label && jsxRuntime.jsxs(DisplayPanel, {
1826
+ }), children && currentSelected === label && jsxRuntime.jsxs(DisplayPanel, {
1806
1827
  ref: displayPanel,
1807
1828
  children: [ jsxRuntime.jsxs(HeadingWrapper, {
1808
1829
  children: [ jsxRuntime.jsxs(HeadingLink, {
@@ -1840,7 +1861,7 @@ var _templateObject$5, _templateObject$4, _templateObject2$2, _templateObject3$1
1840
1861
  children: isAuthenticated ? LABEL_CONTINUE : LABEL_SIGN_IN
1841
1862
  }) ]
1842
1863
  }), jsxRuntime.jsx(LinksGroup, {
1843
- children: selectedItem.children.map((child => {
1864
+ children: null === (_selectedItem$childre = selectedItem.children) || void 0 === _selectedItem$childre ? void 0 : _selectedItem$childre.map((child => {
1844
1865
  var _child$link;
1845
1866
  return jsxRuntime.jsx(LinkItem, {
1846
1867
  children: jsxRuntime.jsx(PanelLink, {
@@ -2101,16 +2101,30 @@ var MULTI_MENU_OPTIONS = [{
2101
2101
  link: '/inspire/category/life-at-lendi/'
2102
2102
  }]
2103
2103
  }];
2104
- var MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK = MULTI_MENU_OPTIONS.map(menu => _objectSpread2(_objectSpread2({}, menu), {}, {
2105
- children: menu.children.map(child => child.link === '/calculators/debt-consolidation-calculator/' ? {
2106
- label: 'Home loan health check',
2107
- link: '/home-loans/health-check/'
2108
- } : child)
2109
- }));
2104
+ var MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK = MULTI_MENU_OPTIONS.map(menu => {
2105
+ var _menu$children;
2106
+ return _objectSpread2(_objectSpread2({}, menu), {}, {
2107
+ children: (_menu$children = menu.children) === null || _menu$children === void 0 ? void 0 : _menu$children.map(child => child.link === '/calculators/debt-consolidation-calculator/' ? {
2108
+ label: 'Home loan health check',
2109
+ link: '/home-loans/health-check/'
2110
+ } : child)
2111
+ });
2112
+ });
2110
2113
  var getMultiMenuOptions = function getMultiMenuOptions() {
2111
2114
  var featureFlags = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2112
2115
  // replace debt-consolidation-calculator with health-check if gpHomeLoanHealthCheck enabled
2113
- return featureFlags.gpHomeLoanHealthCheck ? MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK : MULTI_MENU_OPTIONS;
2116
+ var menuOptions = featureFlags.gpHomeLoanHealthCheck ? MULTI_MENU_OPTIONS_WITH_HEALTH_CHECK : MULTI_MENU_OPTIONS;
2117
+
2118
+ // insert "Other loans" after "Home loans" if gpOtherLoansNavbarOption enabled
2119
+ if (featureFlags.gpOtherLoansNavbarOption) {
2120
+ var homeLoansIndex = menuOptions.findIndex(item => item.label === 'Home loans');
2121
+ var otherLoansItem = {
2122
+ label: 'Other loans',
2123
+ link: '/loans'
2124
+ };
2125
+ return [...menuOptions.slice(0, homeLoansIndex + 1), otherLoansItem, ...menuOptions.slice(homeLoansIndex + 1)];
2126
+ }
2127
+ return menuOptions;
2114
2128
  };
2115
2129
 
2116
2130
  var DesktopActions = _ref => {
@@ -2369,10 +2383,18 @@ var SubItemLink = styled.a.withConfig({
2369
2383
  displayName: "indexstyle__SubItemLink",
2370
2384
  componentId: "lui__sc-1j3tn22-6"
2371
2385
  })(["text-decoration:none;color:", ";display:block;padding-left:48px;"], color('shade.900'));
2386
+ var ArrowSpacer = styled.span.withConfig({
2387
+ displayName: "indexstyle__ArrowSpacer",
2388
+ componentId: "lui__sc-1j3tn22-7"
2389
+ })(["display:inline-block;width:18px;", ";"], mr('sm'));
2372
2390
  var ListItem$1 = styled.li.withConfig({
2373
2391
  displayName: "indexstyle__ListItem",
2374
- componentId: "lui__sc-1j3tn22-7"
2392
+ componentId: "lui__sc-1j3tn22-8"
2375
2393
  })([""]);
2394
+ var PlainListItem = styled.li.withConfig({
2395
+ displayName: "indexstyle__PlainListItem",
2396
+ componentId: "lui__sc-1j3tn22-9"
2397
+ })(["> button:last-child{border-bottom:none;}"]);
2376
2398
 
2377
2399
  var LeftSidebarContent = _ref => {
2378
2400
  var {
@@ -2385,75 +2407,78 @@ var LeftSidebarContent = _ref => {
2385
2407
  var [selected, setSelected] = React.useState(-1);
2386
2408
  return /*#__PURE__*/jsxs(ItemsWrapper, {
2387
2409
  role: "menu",
2388
- children: [MENU_OPTIONS.map((item, index) => item.children.length > 0 ? /*#__PURE__*/jsxs(ListItem$1, {
2389
- children: [/*#__PURE__*/jsxs(Item, {
2390
- onClick: () => {
2391
- setSelected(index);
2392
- var event = {
2393
- event_name: 'Menu Clicked',
2394
- menuName: item.label,
2395
- category: EventCategory.NAVBAR
2396
- };
2397
- analytics(event);
2398
- },
2399
- "aria-label": item.label,
2400
- children: [/*#__PURE__*/jsx(RightArrow, {
2401
- shouldRotate: selected === index
2402
- }), /*#__PURE__*/jsx("span", {
2403
- children: item.label
2404
- })]
2405
- }), /*#__PURE__*/jsx(Accordion, {
2406
- isVisible: selected === index,
2407
- "aria-expanded": selected === index,
2408
- children: item.children.map((child, childIndex) => {
2409
- var _child$link;
2410
- return /*#__PURE__*/jsx(SubItem, {
2411
- role: "none",
2412
- children: /*#__PURE__*/jsx(SubItemLink, {
2413
- role: "menuitem",
2414
- href: embedMarketingTrackingIntoURL((_child$link = child.link) !== null && _child$link !== void 0 ? _child$link : '', 'https://www.lendi.com.au'),
2415
- "aria-label": child.label,
2416
- onClick: () => {
2417
- var event = {
2418
- event_name: 'Menu Element Clicked',
2419
- menuName: item.label,
2420
- text: child.label,
2421
- category: EventCategory.NAVBAR
2422
- };
2423
- analytics(event);
2424
- },
2425
- children: child.label
2426
- })
2427
- }, index + '-' + childIndex);
2428
- })
2429
- })]
2430
- }, index) : /*#__PURE__*/jsx(ListItem$1, {
2431
- role: "none",
2432
- children: item.link ? /*#__PURE__*/jsx(Item, {
2433
- children: /*#__PURE__*/jsx(ItemLink, {
2434
- role: "menuitem",
2435
- href: embedMarketingTrackingIntoURL(item.link, 'https://www.lendi.com.au'),
2436
- "aria-label": item.label,
2410
+ children: [MENU_OPTIONS.map((item, index) => {
2411
+ var _item$children;
2412
+ return item.children && item.children.length > 0 ? /*#__PURE__*/jsxs(ListItem$1, {
2413
+ children: [/*#__PURE__*/jsxs(Item, {
2437
2414
  onClick: () => {
2415
+ setSelected(index);
2438
2416
  var event = {
2439
- event_name: 'Menu Element Clicked',
2417
+ event_name: 'Menu Clicked',
2440
2418
  menuName: item.label,
2441
- text: '',
2442
2419
  category: EventCategory.NAVBAR
2443
2420
  };
2444
2421
  analytics(event);
2445
2422
  },
2446
- children: /*#__PURE__*/jsx("span", {
2423
+ "aria-label": item.label,
2424
+ children: [/*#__PURE__*/jsx(RightArrow, {
2425
+ shouldRotate: selected === index
2426
+ }), /*#__PURE__*/jsx("span", {
2447
2427
  children: item.label
2428
+ })]
2429
+ }), /*#__PURE__*/jsx(Accordion, {
2430
+ isVisible: selected === index,
2431
+ "aria-expanded": selected === index,
2432
+ children: (_item$children = item.children) === null || _item$children === void 0 ? void 0 : _item$children.map((child, childIndex) => {
2433
+ var _child$link;
2434
+ return /*#__PURE__*/jsx(SubItem, {
2435
+ role: "none",
2436
+ children: /*#__PURE__*/jsx(SubItemLink, {
2437
+ role: "menuitem",
2438
+ href: embedMarketingTrackingIntoURL((_child$link = child.link) !== null && _child$link !== void 0 ? _child$link : '', 'https://www.lendi.com.au'),
2439
+ "aria-label": child.label,
2440
+ onClick: () => {
2441
+ var event = {
2442
+ event_name: 'Menu Element Clicked',
2443
+ menuName: item.label,
2444
+ text: child.label,
2445
+ category: EventCategory.NAVBAR
2446
+ };
2447
+ analytics(event);
2448
+ },
2449
+ children: child.label
2450
+ })
2451
+ }, index + '-' + childIndex);
2448
2452
  })
2453
+ })]
2454
+ }, index) : /*#__PURE__*/jsx(PlainListItem, {
2455
+ role: "none",
2456
+ children: item.link ? /*#__PURE__*/jsxs(Item, {
2457
+ children: [/*#__PURE__*/jsx(ArrowSpacer, {}), /*#__PURE__*/jsx(ItemLink, {
2458
+ role: "menuitem",
2459
+ href: embedMarketingTrackingIntoURL(item.link, 'https://www.lendi.com.au'),
2460
+ "aria-label": item.label,
2461
+ onClick: () => {
2462
+ var event = {
2463
+ event_name: 'Menu Element Clicked',
2464
+ menuName: item.label,
2465
+ text: '',
2466
+ category: EventCategory.NAVBAR
2467
+ };
2468
+ analytics(event);
2469
+ },
2470
+ children: /*#__PURE__*/jsx("span", {
2471
+ children: item.label
2472
+ })
2473
+ })]
2474
+ }) : /*#__PURE__*/jsxs(Item, {
2475
+ "aria-label": item.label,
2476
+ children: [/*#__PURE__*/jsx(ArrowSpacer, {}), /*#__PURE__*/jsx("span", {
2477
+ children: item.label
2478
+ })]
2449
2479
  })
2450
- }) : /*#__PURE__*/jsx(Item, {
2451
- "aria-label": item.label,
2452
- children: /*#__PURE__*/jsx("span", {
2453
- children: item.label
2454
- })
2455
- })
2456
- }, index)), sendFeedback && isSVA && /*#__PURE__*/jsx(ListItem$1, {
2480
+ }, index);
2481
+ }), sendFeedback && isSVA && /*#__PURE__*/jsx(ListItem$1, {
2457
2482
  role: "none",
2458
2483
  children: /*#__PURE__*/jsx(Item, {
2459
2484
  "aria-label": LABEL_SEND_FEEDBACK,
@@ -2687,15 +2712,17 @@ var MenuOptions = props => {
2687
2712
  return /*#__PURE__*/jsx(OptionsContainer, {
2688
2713
  children: /*#__PURE__*/jsx(UnOrderedList, {
2689
2714
  children: getMultiMenuOptions(flags).map(_ref => {
2690
- var _selectedItem$link;
2715
+ var _selectedItem$link, _selectedItem$childre;
2691
2716
  var {
2692
2717
  label,
2693
- children
2718
+ children,
2719
+ link
2694
2720
  } = _ref;
2695
2721
  return /*#__PURE__*/jsxs(ListItem, {
2696
2722
  children: [/*#__PURE__*/jsxs(LinkOption, {
2723
+ href: !children ? embedMarketingTrackingIntoURL(link !== null && link !== void 0 ? link : '', 'https://www.lendi.com.au') : undefined,
2697
2724
  onClick: () => {
2698
- onClickOption(label, setCurrentSelected);
2725
+ if (children) onClickOption(label, setCurrentSelected);
2699
2726
  var event = {
2700
2727
  event_name: 'Menu Clicked',
2701
2728
  category: EventCategory.NAVBAR,
@@ -2704,7 +2731,7 @@ var MenuOptions = props => {
2704
2731
  analytics(event);
2705
2732
  },
2706
2733
  isTransparent: isTransparent,
2707
- type: "button",
2734
+ type: children ? 'button' : undefined,
2708
2735
  children: [/*#__PURE__*/jsxs(BarWrapper, {
2709
2736
  children: [/*#__PURE__*/jsx(Label, {
2710
2737
  size: "xs",
@@ -2717,7 +2744,7 @@ var MenuOptions = props => {
2717
2744
  isSelected: currentSelected === label,
2718
2745
  isTransparent: isTransparent
2719
2746
  })]
2720
- }), currentSelected === label && /*#__PURE__*/jsxs(DisplayPanel, {
2747
+ }), children && currentSelected === label && /*#__PURE__*/jsxs(DisplayPanel, {
2721
2748
  ref: displayPanel,
2722
2749
  children: [/*#__PURE__*/jsxs(HeadingWrapper, {
2723
2750
  children: [/*#__PURE__*/jsxs(HeadingLink, {
@@ -2755,7 +2782,7 @@ var MenuOptions = props => {
2755
2782
  children: isAuthenticated ? LABEL_CONTINUE : LABEL_SIGN_IN
2756
2783
  })]
2757
2784
  }), /*#__PURE__*/jsx(LinksGroup, {
2758
- children: selectedItem.children.map(child => {
2785
+ children: (_selectedItem$childre = selectedItem.children) === null || _selectedItem$childre === void 0 ? void 0 : _selectedItem$childre.map(child => {
2759
2786
  var _child$link;
2760
2787
  return /*#__PURE__*/jsx(LinkItem, {
2761
2788
  children: /*#__PURE__*/jsx(PanelLink, {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lendi/navbar",
3
3
  "access": "restricted",
4
- "version": "7.44.5",
4
+ "version": "7.44.6",
5
5
  "license": "ISC",
6
6
  "source": "src/index.tsx",
7
7
  "main": "dist/navbar.cjs.js",