@lendi/navbar 7.13.2 → 7.13.3

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.
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
2
  import type { GlobalProps } from '@lendi-ui/commons/utils';
3
- export interface NavRestrictedProp {
3
+ export interface NavCommonProps {
4
4
  hasRestriction?: boolean;
5
+ isActive?: boolean;
5
6
  }
6
- export interface NavItemProps extends NavRestrictedProp {
7
+ export interface NavItemProps extends NavCommonProps {
7
8
  label: string;
8
9
  link?: string | undefined;
9
10
  }
@@ -11,10 +12,9 @@ export interface NavElements extends NavItemProps {
11
12
  children?: NavSubItems[];
12
13
  minDropdownWidth?: string;
13
14
  }
14
- export interface NavSubItems extends NavRestrictedProp {
15
+ export interface NavSubItems extends NavCommonProps {
15
16
  label: string;
16
17
  link: string;
17
- isActive?: boolean;
18
18
  }
19
19
  export declare const NAV_MENU_ITEMS: NavElements[];
20
20
  interface NavTypes {
@@ -28,5 +28,8 @@ export interface MenuItemProps {
28
28
  label: string;
29
29
  children: React.ReactNode;
30
30
  }
31
+ export declare const StyledChildrenWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {
32
+ isOpen?: boolean | undefined;
33
+ }, never>;
31
34
  export declare const Nav: ({ navOptions, isSlideout, isRestricted, ...props }: NavProps) => JSX.Element;
32
35
  export {};
@@ -10,5 +10,6 @@ export interface NavLinkProps extends GlobalProps {
10
10
  children: string;
11
11
  href: string;
12
12
  onClick?: () => void;
13
+ isActive?: boolean;
13
14
  }
14
- export declare const NavLink: ({ children, href, onClick, ...props }: NavLinkProps) => JSX.Element;
15
+ export declare const NavLink: ({ children, href, onClick, isActive, ...props }: NavLinkProps) => JSX.Element;
@@ -43,6 +43,7 @@ var Layout = require('@lendi/ui/Layout');
43
43
  var ArrowForward = require('@lendi-ui/icon/ArrowForward');
44
44
  var Typography = require('@lendi/ui/Typography');
45
45
  var Button = require('@lendi/ui/Button');
46
+ var src = require('@lendi-ui/breakpoint/src');
46
47
 
47
48
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
48
49
 
@@ -136,7 +137,7 @@ function _taggedTemplateLiteral(strings, raw) {
136
137
  }));
137
138
  }
138
139
 
139
- var _templateObject$e, _templateObject2$5, _templateObject3$2, _templateObject4$1, _templateObject5$1;
140
+ var _templateObject$f, _templateObject2$5, _templateObject3$2, _templateObject4$1, _templateObject5$1;
140
141
  var StyledHeaderLogo = styled__default["default"](Logo__default["default"]).withConfig({
141
142
  displayName: "style__StyledHeaderLogo",
142
143
  componentId: "lui__sc-17ip4hk-0"
@@ -156,7 +157,7 @@ var StyledHeaderLogo = styled__default["default"](Logo__default["default"]).with
156
157
  } = _ref3;
157
158
  return Theme.select('logo.logoName')({
158
159
  theme
159
- }) === 'LendiLogo' ? styled.css(["", ";", ";"], breakpoint.gte('tablet')(_templateObject$e || (_templateObject$e = _taggedTemplateLiteral(["\n width: auto;\n height: 28px;\n "]))), breakpoint.gte('desktop')(_templateObject2$5 || (_templateObject2$5 = _taggedTemplateLiteral(["\n width: auto;\n height: 36px;\n "])))) : styled.css(["", ";", ";"], breakpoint.gte('tablet')(_templateObject3$2 || (_templateObject3$2 = _taggedTemplateLiteral(["\n width: auto;\n height: 28px;\n "]))), breakpoint.gte('desktop')(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral(["\n width: auto;\n height: 36px;\n "]))));
160
+ }) === 'LendiLogo' ? styled.css(["", ";", ";"], breakpoint.gte('tablet')(_templateObject$f || (_templateObject$f = _taggedTemplateLiteral(["\n width: auto;\n height: 28px;\n "]))), breakpoint.gte('desktop')(_templateObject2$5 || (_templateObject2$5 = _taggedTemplateLiteral(["\n width: auto;\n height: 36px;\n "])))) : styled.css(["", ";", ";"], breakpoint.gte('tablet')(_templateObject3$2 || (_templateObject3$2 = _taggedTemplateLiteral(["\n width: auto;\n height: 28px;\n "]))), breakpoint.gte('desktop')(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral(["\n width: auto;\n height: 36px;\n "]))));
160
161
  });
161
162
  var LogoLink$1 = styled__default["default"].a.withConfig({
162
163
  displayName: "style__LogoLink",
@@ -212,7 +213,7 @@ var LogoComponent = _ref => {
212
213
 
213
214
  var LogoComponent$1 = LogoComponent;
214
215
 
215
- var _templateObject$d;
216
+ var _templateObject$e;
216
217
  var navTokens = {
217
218
  size: {
218
219
  height: {
@@ -243,7 +244,7 @@ var NavbarWrapper = styled__default["default"](NavbarBase__default["default"]).w
243
244
  tablet: 'sm',
244
245
  desktop: 'lg'
245
246
  }));
246
- }, navTokens.size.height.navbar.mobile.value, breakpoint.gte('desktop')(_templateObject$d || (_templateObject$d = _taggedTemplateLiteral(["\n height: ", "\n "])), navTokens.size.height.navbar.desktop.value));
247
+ }, navTokens.size.height.navbar.mobile.value, breakpoint.gte('desktop')(_templateObject$e || (_templateObject$e = _taggedTemplateLiteral(["\n height: ", "\n "])), navTokens.size.height.navbar.desktop.value));
247
248
  var Container = styled__default["default"].div.withConfig({
248
249
  displayName: "styles__Container",
249
250
  componentId: "lui__sc-ej7i4l-1"
@@ -261,11 +262,11 @@ var NavbarRightWrapper = styled__default["default"].div.withConfig({
261
262
  componentId: "lui__sc-ej7i4l-4"
262
263
  })(["margin-left:auto;"]);
263
264
 
264
- var _templateObject$c, _templateObject2$4;
265
+ var _templateObject$d, _templateObject2$4;
265
266
  var TalkExpertAction$1 = styled__default["default"](button.Button).withConfig({
266
267
  displayName: "style__TalkExpertAction",
267
268
  componentId: "lui__sc-9anjvz-0"
268
- })(["width:100%;", " ", ";min-width:180px;", ""], spacing.mr('sm'), breakpoint.between('mobile', 'desktop')(_templateObject$c || (_templateObject$c = _taggedTemplateLiteral(["\n border: none;\n "]))), _ref => {
269
+ })(["width:100%;", " ", ";min-width:180px;", ""], spacing.mr('sm'), breakpoint.between('mobile', 'desktop')(_templateObject$d || (_templateObject$d = _taggedTemplateLiteral(["\n border: none;\n "]))), _ref => {
269
270
  var {
270
271
  bigLabelAccomodate
271
272
  } = _ref;
@@ -326,7 +327,7 @@ var ROUTE_APPLICATIONS = '/dashboard/applications';
326
327
  var ROUTE_PROPERTY_REPORT = '/dashboard/my-property-report';
327
328
  var ROUTE_NEW_PROPERTY_REPORT = '/property-report/my-properties';
328
329
 
329
- var _templateObject$b;
330
+ var _templateObject$c;
330
331
  var TalkExpertAction = styled__default["default"](button.Button).withConfig({
331
332
  displayName: "indexstyle__TalkExpertAction",
332
333
  componentId: "lui__sc-altm9z-0"
@@ -335,7 +336,7 @@ var TalkExpertAction = styled__default["default"](button.Button).withConfig({
335
336
  dashboardVariant
336
337
  } = _ref;
337
338
  return dashboardVariant && styled.css(["", ""], spacing.mr('nil'));
338
- }, breakpoint.between('mobile', 'desktop')(_templateObject$b || (_templateObject$b = _taggedTemplateLiteral(["\n min-width: 90px;\n border: none;\n ", "\n "])), spacing.p('nil')), _ref2 => {
339
+ }, breakpoint.between('mobile', 'desktop')(_templateObject$c || (_templateObject$c = _taggedTemplateLiteral(["\n min-width: 90px;\n border: none;\n ", "\n "])), spacing.p('nil')), _ref2 => {
339
340
  var {
340
341
  continueExist
341
342
  } = _ref2;
@@ -346,11 +347,11 @@ var ContinueAction = styled__default["default"](button.Button).withConfig({
346
347
  componentId: "lui__sc-altm9z-1"
347
348
  })(["width:90px;padding:0;"]);
348
349
 
349
- var _templateObject$a;
350
+ var _templateObject$b;
350
351
  var LogoutWrapper = styled__default["default"].div.withConfig({
351
352
  displayName: "style__LogoutWrapper",
352
353
  componentId: "lui__sc-t6my6e-0"
353
- })(["position:absolute;right:5px;top:56px;", ";display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:", ";border-radius:", ";", ""], breakpoint.gte('desktop')(_templateObject$a || (_templateObject$a = _taggedTemplateLiteral(["top: 70px;"]))), getColour__default["default"]('shade', 0), borders.getRadius(), depth.depth(2));
354
+ })(["position:absolute;right:5px;top:56px;", ";display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:", ";border-radius:", ";", ""], breakpoint.gte('desktop')(_templateObject$b || (_templateObject$b = _taggedTemplateLiteral(["top: 70px;"]))), getColour__default["default"]('shade', 0), borders.getRadius(), depth.depth(2));
354
355
  var MenuItem$1 = styled.css(["", " ", ""], spacing.px('sm'), spacing.py('sm'));
355
356
  var MyAccountTitle = styled__default["default"](typography.Body).withConfig({
356
357
  displayName: "style__MyAccountTitle",
@@ -603,11 +604,11 @@ var LogoutComponent = () => {
603
604
  });
604
605
  };
605
606
 
606
- var _templateObject$9;
607
+ var _templateObject$a;
607
608
  var DesktopActionsWrapper = styled__default["default"].div.withConfig({
608
609
  displayName: "style__DesktopActionsWrapper",
609
610
  componentId: "lui__sc-jh42qz-0"
610
- })(["display:flex;", ";"], breakpoint.between('mobile', 'desktop')(_templateObject$9 || (_templateObject$9 = _taggedTemplateLiteral(["\n display: none;\n "]))));
611
+ })(["display:flex;", ";"], breakpoint.between('mobile', 'desktop')(_templateObject$a || (_templateObject$a = _taggedTemplateLiteral(["\n display: none;\n "]))));
611
612
 
612
613
  var getSignInURL = (brand, env, returnURL) => {
613
614
  var urls = lalaUtils.getURLs(brand, lalaReact.Type.Customer, env);
@@ -747,11 +748,11 @@ var RenderDesktopAction = _ref2 => {
747
748
 
748
749
  var RenderDesktopAction$1 = RenderDesktopAction;
749
750
 
750
- var _templateObject$8;
751
+ var _templateObject$9;
751
752
  var MobileActionsWrapper = styled__default["default"].div.withConfig({
752
753
  displayName: "style__MobileActionsWrapper",
753
754
  componentId: "lui__sc-jzhj4e-0"
754
- })(["display:flex;", ";.noHover{", ";:hover{box-shadow:none;}}"], breakpoint.gte('desktop')(_templateObject$8 || (_templateObject$8 = _taggedTemplateLiteral(["\n display: none;\n "]))), spacing.mr('nil'));
755
+ })(["display:flex;", ";.noHover{", ";:hover{box-shadow:none;}}"], breakpoint.gte('desktop')(_templateObject$9 || (_templateObject$9 = _taggedTemplateLiteral(["\n display: none;\n "]))), spacing.mr('nil'));
755
756
 
756
757
  var RenderMobileAction = _ref => {
757
758
  var _window, _window$location, _window2, _window2$location;
@@ -1224,7 +1225,7 @@ var useEmailOpenChat = (openChatWindow, userGroupHash) => {
1224
1225
 
1225
1226
  var _excluded$9 = ["children", "className", "isOpen", "handleClose", "topOffset"];
1226
1227
 
1227
- var _templateObject$7, _templateObject2$3;
1228
+ var _templateObject$8, _templateObject2$3;
1228
1229
  var IS_OPEN_DATA_ATTRIBUTE = 'data-slideout-isOpen';
1229
1230
  var slideInRight = styled.keyframes(["0%{transform:translate3d(100%,0,0);}100%{transform:translate3d(0,0,0);}"]);
1230
1231
  var slideOutRight = styled.keyframes(["0%{transform:translate3d(0,0,0);}100%{transform:translate3d(100%,0,0);}"]);
@@ -1235,7 +1236,7 @@ var slideOutRight = styled.keyframes(["0%{transform:translate3d(0,0,0);}100%{tra
1235
1236
  var StyledSlideoutMenu$1 = styled__default["default"].div.withConfig({
1236
1237
  displayName: "SlideoutMenuBase__StyledSlideoutMenu",
1237
1238
  componentId: "lui__sc-msuqad-0"
1238
- })(["display:none;width:100%;position:fixed;top:0;bottom:0;right:0;z-index:2;animation-fill-mode:forwards;animation-duration:0.3s;animation-timing-function:ease;", " &.is-open{transform:translate3d(0,0,0);display:block;}&.slide-in-right{animation-name:", ";}&.slide-out-right{animation-name:", ";}", ""], breakpoint.gte('sm')(_templateObject$7 || (_templateObject$7 = _taggedTemplateLiteral(["\n width: ", ";;\n "])), utils$1.pxToRem(375)), slideInRight, slideOutRight, _ref => {
1239
+ })(["display:none;width:100%;position:fixed;top:0;bottom:0;right:0;z-index:2;animation-fill-mode:forwards;animation-duration:0.3s;animation-timing-function:ease;", " &.is-open{transform:translate3d(0,0,0);display:block;}&.slide-in-right{animation-name:", ";}&.slide-out-right{animation-name:", ";}", ""], breakpoint.gte('sm')(_templateObject$8 || (_templateObject$8 = _taggedTemplateLiteral(["\n width: ", ";;\n "])), utils$1.pxToRem(375)), slideInRight, slideOutRight, _ref => {
1239
1240
  var {
1240
1241
  topOffset
1241
1242
  } = _ref;
@@ -1342,7 +1343,7 @@ var SlideoutMenuBase = _ref3 => {
1342
1343
  });
1343
1344
  };
1344
1345
 
1345
- var _templateObject$6;
1346
+ var _templateObject$7;
1346
1347
  var CommPanelWrapper = styled__default["default"](SlideoutMenuBase).withConfig({
1347
1348
  displayName: "CommPanelProvider__CommPanelWrapper",
1348
1349
  componentId: "lui__sc-jqofne-0"
@@ -1356,7 +1357,7 @@ var CommPanelWrapper = styled__default["default"](SlideoutMenuBase).withConfig({
1356
1357
  if (topOffset) {
1357
1358
  return breakpoint.map(topOffset, value => value && "top: ".concat(value, ";"));
1358
1359
  } else {
1359
- return styled.css(["top:", ";", ";"], navTokens.size.height.navbar.mobile.value, breakpoint.gte('desktop')(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteral(["\n top: ", ";\n "])), navTokens.size.height.navbar.desktop.value));
1360
+ return styled.css(["top:", ";", ";"], navTokens.size.height.navbar.mobile.value, breakpoint.gte('desktop')(_templateObject$7 || (_templateObject$7 = _taggedTemplateLiteral(["\n top: ", ";\n "])), navTokens.size.height.navbar.desktop.value));
1360
1361
  }
1361
1362
  }
1362
1363
  }, _ref2 => {
@@ -1728,7 +1729,7 @@ var CTAButtons = props => {
1728
1729
 
1729
1730
  var CTAButtons$1 = CTAButtons;
1730
1731
 
1731
- var _templateObject$5;
1732
+ var _templateObject$6;
1732
1733
 
1733
1734
  var HamBurgerMenu = _ref => {
1734
1735
  var {
@@ -1770,7 +1771,7 @@ var MenuButton$1 = styled__default["default"](Menu__default["default"]).withConf
1770
1771
  var HamBurgerWrapper = styled__default["default"].a.withConfig({
1771
1772
  displayName: "HamBurgerMenu__HamBurgerWrapper",
1772
1773
  componentId: "lui__sc-y1cjve-2"
1773
- })(["", ";cursor:pointer;"], breakpoint.gte('desktop')(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteral(["\n display: none;\n "]))));
1774
+ })(["", ";cursor:pointer;"], breakpoint.gte('desktop')(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteral(["\n display: none;\n "]))));
1774
1775
  var HamBurgerMenu$1 = HamBurgerMenu;
1775
1776
 
1776
1777
  var ITEM_HEIGHT = '40px';
@@ -1981,7 +1982,7 @@ var LeftSidebar = _ref => {
1981
1982
 
1982
1983
  var LeftSidebar$1 = LeftSidebar;
1983
1984
 
1984
- var _templateObject$4;
1985
+ var _templateObject$5;
1985
1986
  var PanelLink = styled__default["default"](typography.Link).withConfig({
1986
1987
  displayName: "indexstyle__PanelLink",
1987
1988
  componentId: "lui__sc-56jb5a-0"
@@ -2068,7 +2069,7 @@ var Label = styled__default["default"](typography.Body).withConfig({
2068
2069
  var OptionsContainer = styled__default["default"].div.withConfig({
2069
2070
  displayName: "indexstyle__OptionsContainer",
2070
2071
  componentId: "lui__sc-56jb5a-14"
2071
- })(["width:100%;display:none;flex-direction:row;justify-content:space-between;align-items:center;", " ", ""], spacing.ml('lg'), breakpoint.gte('desktop')(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteral(["\n display: flex;\n"]))));
2072
+ })(["width:100%;display:none;flex-direction:row;justify-content:space-between;align-items:center;", " ", ""], spacing.ml('lg'), breakpoint.gte('desktop')(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteral(["\n display: flex;\n"]))));
2072
2073
 
2073
2074
  var prevSelected = '';
2074
2075
 
@@ -2287,7 +2288,7 @@ var MultiNavbarComponent = _ref => {
2287
2288
 
2288
2289
  var MultiNavbar = withErrorProvider(launchdarkly.withLendiLDProvider(withCommPanel(withDomainChat(MultiNavbarComponent))));
2289
2290
 
2290
- var _templateObject$3, _templateObject2$2, _templateObject3$1, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
2291
+ var _templateObject$4, _templateObject2$2, _templateObject3$1, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
2291
2292
  var LargeTweakpoint = '67rem';
2292
2293
  var Px = styled.css(["padding-left:", ";padding-right:", ";"], utils$1.pxToRem(16), utils$1.pxToRem(16));
2293
2294
  var Py = styled.css(["padding-top:", ";padding-bottom:", ";"], utils$1.pxToRem(24), utils$1.pxToRem(24));
@@ -2310,7 +2311,7 @@ var StyledHR = styled__default["default"].hr.withConfig({
2310
2311
  styled__default["default"].div.withConfig({
2311
2312
  displayName: "sharedstyles__HideFromLarge",
2312
2313
  componentId: "lui__sc-631j2u-2"
2313
- })(["display:block;", ""], breakpoint.gte('lg')(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral(["\n display: none;\n "]))));
2314
+ })(["display:block;", ""], breakpoint.gte('lg')(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteral(["\n display: none;\n "]))));
2314
2315
  var HideFromTweakLarge = styled__default["default"].div.withConfig({
2315
2316
  displayName: "sharedstyles__HideFromTweakLarge",
2316
2317
  componentId: "lui__sc-631j2u-3"
@@ -2353,7 +2354,7 @@ var SrOnlySpan = styled__default["default"].span.withConfig({
2353
2354
  })(["", ";"], utils$1.srOnly);
2354
2355
 
2355
2356
  var _excluded$7 = ["children", "isOpen", "onClick"],
2356
- _excluded2$1 = ["children", "href", "onClick"];
2357
+ _excluded2$1 = ["children", "href", "onClick", "isActive"];
2357
2358
 
2358
2359
  /**
2359
2360
  * @todo Line-height: prefer to use token but the current one is not accessible here
@@ -2366,9 +2367,10 @@ var StyledNavButton = styled__default["default"].button.withConfig({
2366
2367
  componentId: "lui__sc-1rf7mpw-0"
2367
2368
  })(["", ";color:", ";background-color:", ";font-family:", ";font-weight:", ";-webkit-font-smoothing:antialiased;-moz-font-smoothing:'grayscale';font-size:", ";line-height:1.5;padding:", " ", ";display:flex;align-items:center;justify-content:space-between;&:hover{color:", ";}", " ", ""], () => buttonReset, () => getColour__default["default"]('text', 'inverse'), () => getColour__default["default"]('interaction', 'main'), () => getTypography__default["default"]('button1', 'fontFamily'), () => getTypography__default["default"]('button1', 'fontWeight'), utils$1.pxToRem(16), utils$1.pxToRem(12), utils$1.pxToRem(16), () => getColour__default["default"]('interaction', 'emphasis'), _ref => {
2368
2369
  var {
2369
- isOpen
2370
+ isOpen,
2371
+ isActive
2370
2372
  } = _ref;
2371
- return isOpen && "color: ".concat(getColour__default["default"]('interaction', 'emphasis'), ";");
2373
+ return (isOpen !== null && isOpen !== void 0 ? isOpen : isActive) ? "color: ".concat(getColour__default["default"]('interaction', 'emphasis'), ";") : null;
2372
2374
  }, insetFocusVisible);
2373
2375
  var StyledNavButtonText = styled__default["default"].span.withConfig({
2374
2376
  displayName: "NavButtons__StyledNavButtonText",
@@ -2404,7 +2406,8 @@ var NavLink = _ref3 => {
2404
2406
  var {
2405
2407
  children,
2406
2408
  href,
2407
- onClick
2409
+ onClick,
2410
+ isActive
2408
2411
  } = _ref3,
2409
2412
  props = _objectWithoutProperties(_ref3, _excluded2$1);
2410
2413
 
@@ -2412,7 +2415,8 @@ var NavLink = _ref3 => {
2412
2415
  return /*#__PURE__*/jsxRuntime.jsx(StyledNavButton, _objectSpread2(_objectSpread2({
2413
2416
  href: href,
2414
2417
  as: "a",
2415
- onClick: onClick
2418
+ onClick: onClick,
2419
+ isActive: isActive
2416
2420
  }, globalProps), {}, {
2417
2421
  children: /*#__PURE__*/jsxRuntime.jsx("span", {
2418
2422
  children: children
@@ -2464,13 +2468,17 @@ var Dropdown = /*#__PURE__*/React.forwardRef(DropdownComponent);
2464
2468
 
2465
2469
  var _excluded$5 = ["navSlot", "ctaSlot"];
2466
2470
 
2467
- var _templateObject$2, _templateObject2$1;
2471
+ var _templateObject$3, _templateObject2$1;
2468
2472
  var HeaderPaddingSmall = 10;
2469
2473
  var HeaderPaddingLarge = 24;
2474
+ /**
2475
+ * @todo z-index: tokenise z-index to make it easier to manage levels
2476
+ */
2477
+
2470
2478
  var StyledHeader = styled__default["default"].header.withConfig({
2471
2479
  displayName: "HeaderBase__StyledHeader",
2472
2480
  componentId: "lui__sc-1ik75ai-0"
2473
- })(["background:", ";position:sticky;top:0;padding:", " 0;", ""], () => getColour__default["default"]('fill', 'contrast'), utils$1.pxToRem(HeaderPaddingSmall), breakpoint.gte('md')(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n padding: ", " 0;\n "])), utils$1.pxToRem(HeaderPaddingLarge)));
2481
+ })(["background:", ";position:sticky;top:0;z-index:999;padding:", " 0;", ""], () => getColour__default["default"]('fill', 'contrast'), utils$1.pxToRem(HeaderPaddingSmall), breakpoint.gte('md')(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral(["\n padding: ", " 0;\n "])), utils$1.pxToRem(HeaderPaddingLarge)));
2474
2482
  var HeaderInner = styled__default["default"].div.withConfig({
2475
2483
  displayName: "HeaderBase__HeaderInner",
2476
2484
  componentId: "lui__sc-1ik75ai-1"
@@ -2533,7 +2541,7 @@ var HeaderBase = _ref => {
2533
2541
 
2534
2542
  var _excluded$4 = ["label", "children", "onClick", "minDropdownWidth", "align"];
2535
2543
 
2536
- var _templateObject$1;
2544
+ var _templateObject$2;
2537
2545
  // Make dropdown content flush to the bottom of the header not it's trigger button
2538
2546
  var StyledDropdown = styled__default["default"](Dropdown).withConfig({
2539
2547
  displayName: "NavDropdown__StyledDropdown",
@@ -2543,7 +2551,7 @@ var StyledDropdown = styled__default["default"](Dropdown).withConfig({
2543
2551
  minWidth
2544
2552
  } = _ref;
2545
2553
  return minWidth && "min-width: ".concat(minWidth);
2546
- }, () => styled.css(["top:calc(100% + ", ");"], utils$1.pxToRem(HeaderPaddingSmall)), () => styled.css(["", ""], breakpoint.gte('md')(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n top: calc(100% + ", ");\n "])), utils$1.pxToRem(HeaderPaddingLarge))));
2554
+ }, () => styled.css(["top:calc(100% + ", ");"], utils$1.pxToRem(HeaderPaddingSmall)), () => styled.css(["", ""], breakpoint.gte('md')(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n top: calc(100% + ", ");\n "])), utils$1.pxToRem(HeaderPaddingLarge))));
2547
2555
  var NavDropdown = _ref2 => {
2548
2556
  var {
2549
2557
  label,
@@ -2767,12 +2775,21 @@ var NavElement = styled__default["default"].nav.withConfig({
2767
2775
  } = _ref;
2768
2776
  return isSlideout ? NavMobileStyled : NavDesktopStyled;
2769
2777
  });
2778
+ var StyledChildrenWrapper = styled__default["default"].div.withConfig({
2779
+ displayName: "Nav__StyledChildrenWrapper",
2780
+ componentId: "lui__sc-zq7yzs-1"
2781
+ })(["::after{content:'';display:block;", "}"], _ref2 => {
2782
+ var {
2783
+ isOpen
2784
+ } = _ref2;
2785
+ return isOpen && "height: 0.0625rem; background-color: ".concat(getColour__default["default"]('text', 'inverse'), "; margin: .75rem 1rem;");
2786
+ });
2770
2787
 
2771
- var MenuItem = _ref2 => {
2788
+ var MenuItem = _ref3 => {
2772
2789
  var {
2773
2790
  label,
2774
2791
  children
2775
- } = _ref2;
2792
+ } = _ref3;
2776
2793
  var [isOpen, setIsOpen] = React.useState(false);
2777
2794
 
2778
2795
  var handleClick = () => {
@@ -2792,19 +2809,20 @@ var MenuItem = _ref2 => {
2792
2809
  onClick: () => handleClick(),
2793
2810
  isOpen: isOpen,
2794
2811
  children: label
2795
- }), isOpen && /*#__PURE__*/jsxRuntime.jsx("div", {
2812
+ }), isOpen && /*#__PURE__*/jsxRuntime.jsx(StyledChildrenWrapper, {
2813
+ isOpen: isOpen,
2796
2814
  children: children
2797
2815
  })]
2798
2816
  });
2799
2817
  };
2800
2818
 
2801
- var Nav = _ref3 => {
2819
+ var Nav = _ref4 => {
2802
2820
  var {
2803
2821
  navOptions,
2804
2822
  isSlideout,
2805
2823
  isRestricted
2806
- } = _ref3,
2807
- props = _objectWithoutProperties(_ref3, _excluded$2);
2824
+ } = _ref4,
2825
+ props = _objectWithoutProperties(_ref4, _excluded$2);
2808
2826
 
2809
2827
  var globalProps = utils$1.filterGlobalProps(props);
2810
2828
  var listItems = navOptions.map((item, index) => {
@@ -2875,6 +2893,7 @@ var Nav = _ref3 => {
2875
2893
  return item.link && !hideItem && /*#__PURE__*/jsxRuntime.jsx("li", {
2876
2894
  children: /*#__PURE__*/jsxRuntime.jsx(NavLink, {
2877
2895
  href: item.link,
2896
+ isActive: item.isActive,
2878
2897
  onClick: () => {
2879
2898
  var event = {
2880
2899
  event_name: 'Link Clicked',
@@ -2901,7 +2920,7 @@ var Nav = _ref3 => {
2901
2920
 
2902
2921
  var _excluded$1 = ["title", "children", "className", "isOpen", "hasTitleDivider", "handleClose"];
2903
2922
 
2904
- var _templateObject, _templateObject2, _templateObject3;
2923
+ var _templateObject$1, _templateObject2, _templateObject3;
2905
2924
  var headerTokens = {
2906
2925
  size: {
2907
2926
  height: {
@@ -2922,7 +2941,7 @@ var headerTokens = {
2922
2941
  var StyledCloseButton = styled__default["default"].button.withConfig({
2923
2942
  displayName: "SlideoutMenu__StyledCloseButton",
2924
2943
  componentId: "lui__sc-8pev43-0"
2925
- })(["background-color:", ";border:0;margin:0;padding:0;width:", ";height:", ";color:", ";position:absolute;top:", ";right:", ";", " &:hover{background-color:", ";}"], () => getColour__default["default"]('interaction', 'main'), utils$1.pxToRem(40), utils$1.pxToRem(40), () => getColour__default["default"]('shade', 0), utils$1.pxToRem(12), utils$1.pxToRem(16), breakpoint.gte('md')(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n top: ", ";\n "])), utils$1.pxToRem(28)), () => getColour__default["default"]('purple', 600));
2944
+ })(["background-color:", ";border:0;margin:0;padding:0;width:", ";height:", ";color:", ";position:absolute;top:", ";right:", ";", " &:hover{background-color:", ";}"], () => getColour__default["default"]('interaction', 'main'), utils$1.pxToRem(40), utils$1.pxToRem(40), () => getColour__default["default"]('shade', 0), utils$1.pxToRem(16), utils$1.pxToRem(16), breakpoint.gte('md')(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n top: ", ";\n "])), utils$1.pxToRem(28)), () => getColour__default["default"]('purple', 600));
2926
2945
  /**
2927
2946
  * @todo z-index: tokenise z-index to make it easier to manage levels
2928
2947
  */
@@ -2973,8 +2992,8 @@ var SlideoutMenu = _ref => {
2973
2992
  onClick: handleClose,
2974
2993
  children: [/*#__PURE__*/jsxRuntime.jsx(Close__default["default"], {
2975
2994
  color: getColour__default["default"]('shade', 0),
2976
- width: "1.2rem",
2977
- height: "1.2rem"
2995
+ width: "1.5rem",
2996
+ height: "1.5rem"
2978
2997
  }), /*#__PURE__*/jsxRuntime.jsxs(SrOnlySpan, {
2979
2998
  children: ["Close ", title]
2980
2999
  })]
@@ -3074,6 +3093,8 @@ var PrimaryCTA = _ref => {
3074
3093
 
3075
3094
  var _excluded = ["isRestricted"];
3076
3095
 
3096
+ var _templateObject;
3097
+
3077
3098
  var HamburgerCtaBlock = _ref => {
3078
3099
  var {
3079
3100
  handleApplyNowClick,
@@ -3095,6 +3116,10 @@ var HamburgerCtaBlock = _ref => {
3095
3116
  });
3096
3117
  };
3097
3118
 
3119
+ var StyledWrapperForButtonHack = styled__default["default"].div.withConfig({
3120
+ displayName: "HamburgerMenu__StyledWrapperForButtonHack",
3121
+ componentId: "lui__sc-302min-0"
3122
+ })(["button{padding:0;margin-left:0.75rem;", "}"], src.gte('sm')(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n margin-left: .25rem; // Make sure focus outline doesn't get cut off by preceding links with bg colour\n "]))));
3098
3123
  var HamburgerMenu = _ref2 => {
3099
3124
  var {
3100
3125
  isRestricted
@@ -3119,21 +3144,23 @@ var HamburgerMenu = _ref2 => {
3119
3144
  };
3120
3145
 
3121
3146
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
3122
- children: [/*#__PURE__*/jsxRuntime.jsxs(Button.Button, {
3123
- onPress: handleClick,
3124
- ariaExpanded: showMenu,
3125
- variant: "text",
3126
- size: "sm",
3127
- isInverse: true,
3128
- width: "auto",
3129
- minWidth: "auto",
3130
- children: [/*#__PURE__*/jsxRuntime.jsx(SrOnlySpan, {
3131
- children: "Open main menu"
3132
- }), /*#__PURE__*/jsxRuntime.jsx(Menu__default["default"], {
3133
- width: "1.5rem",
3134
- height: "1.5rem",
3135
- color: getColour.getColour('text', 'inverse')
3136
- })]
3147
+ children: [/*#__PURE__*/jsxRuntime.jsx(StyledWrapperForButtonHack, {
3148
+ children: /*#__PURE__*/jsxRuntime.jsxs(Button.Button, {
3149
+ onPress: handleClick,
3150
+ ariaExpanded: showMenu,
3151
+ variant: "text",
3152
+ size: "sm",
3153
+ isInverse: true,
3154
+ width: "auto",
3155
+ minWidth: "auto",
3156
+ children: [/*#__PURE__*/jsxRuntime.jsx(SrOnlySpan, {
3157
+ children: "Open main menu"
3158
+ }), /*#__PURE__*/jsxRuntime.jsx(Menu__default["default"], {
3159
+ width: "1.5rem",
3160
+ height: "1.5rem",
3161
+ color: getColour.getColour('text', 'inverse')
3162
+ })]
3163
+ })
3137
3164
  }), /*#__PURE__*/jsxRuntime.jsxs(SlideoutMenu, {
3138
3165
  isOpen: showMenu,
3139
3166
  handleClose: toggleMenu,