1"use strict";PULSE.app.templates["main-navigation.dynamic-more"]=_.template('<li class="dynamic-more navigation__item navigation__item--dynamic-more linked-list__item has-children"> <button class="dynamic-more-btn navigation__link navigation__link--has-drop-down navigation__link--dropdown-trigger navigation__link--not-in-dropdown js-navigation-dropdown-trigger" tabindex="0" aria-haspopup="true"> <%= PULSE.I18N.lookup( \'label.more\' ) %> <%= render( {\n cssClass: \'navigation__expand-arrow\',\n name: \'dropdown\'\n }, \'common.svg-icon\' ) %> </button> <div class="navigation__drop-down drop-down drop-down--reveal-on-hover js-navigation-dropdown-element"> <div class="drop-down__options drop-down__options--one-column"> <ul class="js-dynamic-more-bucket" role="group" aria-expanded="false" aria-hidden="true"></ul> </div> </div> </li> '),function(e,t){const s="is-open",i="is-open";e.NavigationDropDownTrigger=class{constructor(e){let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(this.btn=e,this.isSidebar=i,this.isDynamicMore=s,this.onKeyPress=this.onKeyPress.bind(this),this.openDropdown=this.openDropdown.bind(this),this.closeDropdown=this.closeDropdown.bind(this),this.onBtnClick=this.onBtnClick.bind(this),this.onKeyPressEnter=this.onKeyPressEnter.bind(this),this.closeOnForewardTab=this.closeOnForewardTab.bind(this),this.isSidebar&&(this.closeOnBackwardsTab=this.closeOnBackwardsTab.bind(this)),this.dropdownOpen=!1,this.dropdownElement=this.isDynamicMore?this.btn.querySelector(".js-navigation-dropdown-element"):this.btn.parentElement.querySelector(".js-navigation-dropdown-element"),this.dropdownElement){const e=t.element.getFocusableChildElements(this.dropdownElement);e.forEach((e=>{e.tabIndex=0})),this.isSidebar&&(this.firstDropdownFocusElement=e[0]),this.lastDropdownFocusElement=e[e.length-1],this.hash=Math.round(300*Math.random()*Math.random()),this.init()}}init(){this.btn.addEventListener("click",this.onBtnClick),this.btn.addEventListener("keypress",this.onKeyPressEnter)}onKeyPressEnter(e){"Enter"===e.key&&(e.preventDefault(),this.btn.click())}onBtnClick(){this.btn.classList.contains(i)&&this.isSidebar?this.closeDropdown():this.openDropdown()}openDropdown(){this.dropdownOpen=!0,this.btn.setAttribute("aria-expanded",!0),t.styleHelper.addClass(this.dropdownElement,s),t.styleHelper.addClass(this.btn,i),window.addEventListener("keydown",this.onKeyPress),this.lastDropdownFocusElement&&this.lastDropdownFocusElement.addEventListener("keydown",this.closeOnForewardTab),this.isSidebar&&this.firstDropdownFocusElement&&this.firstDropdownFocusElement.addEventListener("keydown",this.closeOnBackwardsTab)}closeDropdown(){this.dropdownOpen=!1,this.btn.setAttribute("aria-expanded",!1),t.styleHelper.removeClass(this.dropdownElement,s),t.styleHelper.removeClass(this.btn,i),window.removeEventListener("keydown",this.onKeyPress),window.removeEventListener("keypress",this.onKeyPressEnter),window.removeEventListener("keypress",this.closeOnForewardTab),this.isSidebar&&window.removeEventListener("keypress",this.closeOnBackwardsTab)}onKeyPress(e){"Escape"===e.code&&this.dropdownOpen&&this.closeDropdown()}closeOnForewardTab(e){9!==e.keyCode||e.shiftKey||this.closeDropdown()}closeOnBackwardsTab(e){e.shiftKey&&9===e.keyCode&&this.closeDropdown()}}}(PULSE.app,PULSE.app.common),function(e,t,s){const i="menu-open",n="search-open",o="site-search__go--can-submit",a="u-body-fixed",r="is-hidden",l="is-loading",c="u-hide",h="is-visible",d="hide-nav-until-1100",u="is-focused",g="is-sticky",m="th--active",p="is-active";e.MainNavigationWidget=class{constructor(i){this.container=i,this.mainBody=document.querySelector("body"),this.body=document.querySelector(".js-body-content"),this.navigation=this.container.querySelector(".js-navigation-menu"),this.mainNavigationItems=this.container.querySelectorAll(".js-main-nav-item"),this.menuButton=document.querySelector(".js-navigation-sidebar-open"),this.closeSidebarButton=document.querySelector(".js-navigation-sidebar-close-btn"),this.closeSidebarTrigger=document.querySelectorAll(".js-navigation-sidebar-close"),this.searchForm=this.container.querySelector(".js-navigation-search"),this.toggles=this.container.querySelectorAll("[data-toggle]"),this.searchForm&&(this.searchOpenButton=this.container.querySelector(".js-navigation-search-open"),this.searchInput=this.searchForm.querySelector(".js-navigation-search-input"),this.searchButton=this.searchForm.querySelector(".js-navigation-search-button"),this.searchClose=this.searchForm.querySelector(".js-navigation-search-close-button")),this.sidebar=document.querySelector(".js-navigation-sidebar"),this.overlay=document.querySelector(".js-overlay"),this.dropdownTriggers=this.container.querySelectorAll(".js-navigation-dropdown-trigger"),this.sidebarTriggers=this.sidebar.querySelectorAll(".js-navigation-dropdown-trigger"),this.dropdownTriggers.forEac
1h((t=>new e.NavigationDropDownTrigger(t))),this.sidebarTriggers.forEach((t=>new e.NavigationDropDownTrigger(t,!1,!0))),this.navigationItems=this.container.querySelectorAll(".js-navigation-item"),this.menuItemFocusEvent=new CustomEvent("navigation-item-focus"),[...this.navigationItems].forEach((e=>{e.addEventListener("focus",(()=>{window.dispatchEvent(this.menuItemFocusEvent)}))}));const n=s.element.getFocusableChildElements(this.sidebar);this.lastSidebarFocusElement=n[n.length-1],this.firstSidebarFocusElement=n[0],this.toggleMenu=this.toggleMenu.bind(this),this.toggleSearch=this.toggleSearch.bind(this),this.closeSearch=this.closeSearch.bind(this),this.onSearchInputChange=this.onSearchInputChange.bind(this),this.onSearchFormSubmit=this.onSearchFormSubmit.bind(this),this.closeSidebarOnForewardTab=this.closeSidebarOnForewardTab.bind(this),this.closeSidebarOnBackwardsTab=this.closeSidebarOnBackwardsTab.bind(this),this.scrollTop=document.documentElement.scrollTop,this.screenPos,this.moreButtonInitialised=!1,this.urlParams=window.location.search,this.onSearchPage=this.urlParams.includes("term")||this.urlParams.includes("mterm"),this.showNavItems(),this.setListeners(),this.initToggles(),this.forceSearchOpen(),this.currentQuery="",this.stickyContainer=this.container.querySelector(".js-sticky-container"),this.telstraBar=document.getElementById("telstra-bar")??0,this.mobileQuickLinks=this.container.querySelector(".js-mobile-quicklinks")??0,this.stickyContainerOffset=this.calculateStickyValues(),this.setStickyNav(),this.loginEl=document.querySelector(".js-navigation-login-url")??null,this.mobileLoginEl=i.querySelector(".js-navigation-login-target"),this.toggleMobileLogin();e.authentication.isUserAuthenticated()&&t.style.addClass(this.container,"user-authenticated"),e.analytics.addNavigationTracking(this.container),e.analytics.addNavigationTracking(this.sidebar),this.userCtas=[].slice.call(this.container.querySelectorAll(".js-user")),this.setupListeners()}setupListeners(){this.userCtas.forEach((e=>{e.addEventListener("click",this.toggleUser.bind(this))})),t.event.windowOnScroll.add({method:this.setStickyNav.bind(this)}),window.addEventListener("resize",_.debounce((()=>{this.toggleMobileLogin(),this.stickyContainerOffset=this.calculateStickyValues()}),500))}setupMore(){const t=this.container.querySelector(".dynamic-more"),s=t.querySelector(".js-navigation-dropdown-trigger");new e.NavigationDropDownTrigger(s),setTimeout((()=>{const s=t.querySelectorAll(".js-navigation-dropdown-trigger");this.moreButtonInitialised=!0,this.focusMoreButton(),[...s].forEach((t=>new e.NavigationDropDownTrigger(t)))}),2e3)}focusMoreButton(){if(!this.moreButtonInitialised)return;const e=this.container.querySelector(".js-dynamic-more-bucket"),s=this.container.querySelector(".dynamic-more");t.style.removeClass(s,u);const i=window.location.pathname.replace(/[\/\\]/g,""),n=e.querySelectorAll("a");for(let e=0;e<n.length;e++){if(i===n[e].getAttribute("href").replace(/[\/\\]/g,"")){t.style.addClass(s,u);break}}n.forEach((e=>{this.addActiveClassToNavItem(e)}))}showNavItems(){const e=this.navigation.getBoundingClientRect().top;t.style.addClass(this.navigation,l),this.mainNavigationItems.forEach((s=>{const i=s.getBoundingClientRect().top;t.style.removeClass(s,l),i<=e?t.style.removeClass(s,r):t.style.addClass(s,r)})),t.style.removeClass(this.navigation,l)}setListeners(){this.searchOpenButton&&(s.addAriaClickListener(this.searchOpenButton,(()=>{this.toggleSearch()}),!1,!1,!1,!0),this.searchForm.addEventListener("submit",this.onSearchFormSubmit)),this.menuButton&&(s.addAriaClickListener(this.menuButton,(()=>{this.toggleMenu(),this.toggles.forEach((e=>{const t=e.getAttribute("data-toggle");this.handleToggleTarget(t,!0)}))}),!1,!1,!1,!0),this.menuButton.addEventListener("keydown",this.closeSidebarOnBackwardsTab)),this.closeSidebarTrigger&&(this.closeSidebarTrigger.forEach((e=>{s.addAriaClickListener(e,(()=>{this.toggleMenu()}),!1,!1,!1,!0)})),this.toggles.forEach((e=>{const t=e.getAttribute("data-toggle");this.handleToggleTarget(t,!0)}))),this.closeSidebarButton&&this.closeSidebarButton.addEventListener("keydown",this.closeSidebarOnBackwardsTab),this.container.addEventListener("keydown",this.closeOnBackwardsTab.bind(this)),this.lastSidebarFocusElement&&this.lastSidebarFocusElement.addEventListener("keydown",this.closeSidebarOnForewardTab),document.addEventListener(s.CONSTANTS.EVENTS.NAVIGATION.MORE_BUCKET_LOADED,(()=>{this.setupMore()})),document.addEventListener(s.CONSTANTS.EVENTS.NAVIGATION.MORE_BUCKET_UPDATED,(()=>{const t=this.container.querySelector(".dynamic-more");setTimeout((()=>{[...t.querySelectorAll(".js-navigation-dropdown-trigger")].forEac
1h((t=>new e.NavigationDropDownTrigger(t)))}),2e3)})),t.event.windowResize.add({method:this.showNavItems.bind(this)}),t.event.windowResize.add({method:this.focusMoreButton.bind(this)}),this.onSearchPage&&window.addEventListener("beforeunload",this.onResultsPageUnload.bind(this))}closeOnBackwardsTab(e){if(e.shiftKey&&9===e.keyCode){const s=[...this.container.querySelector(".js-dynamic-more-bucket").querySelectorAll(".js-dynamic-child")],i=e.target?.closest("li"),n=i?.parentNode,o=i?.closest(".js-navigation-dropdown-element");if(s.includes(i)){const e=i.querySelector(".js-navigation-dropdown-element");if(e)return void t.style.removeClass(e,"is-open")}if(i===n?.firstElementChild&&o)return t.style.removeClass(o,"is-open"),void s.forEach((e=>{const s=e.querySelector(".js-navigation-dropdown-element.is-open");s&&t.style.removeClass(s,"is-open")}));if(i){i.querySelectorAll(".js-navigation-dropdown-element.is-open").forEach((e=>{t.style.removeClass(e,"is-open")}))}}}forceSearchOpen(){if(this.onSearchPage){const e=t.url.getParam("term")||t.url.getParam("mterm")||"";this.searchInput.value=e,t.style.addClass(this.sidebar,"navigation__sidebar--search-page"),this.openSearch()}}toggleSearch(){t.style.hasClass(this.container,n)?this.closeSearch():(t.style.addClass(this.navigation,d),this.openSearch())}openSearch(){t.style.addClass(this.container,n),this.searchInput&&(setTimeout((()=>{this.searchInput.focus()}),310),this.searchInput.addEventListener("input",_.debounce(this.onSearchInputChange.bind(this),500),!1)),this.searchClose&&s.addAriaClickListener(this.searchClose,this.closeSearch)}closeSearch(e){e&&e.preventDefault(),t.style.removeClass(this.container,n),t.style.removeClass(this.searchButton,o),this.searchInput.removeEventListener("keyup",this.onSearchInputChange),t.style.hasClass(this.navigation,d)&&t.style.removeClass(this.navigation,d),s.removeAriaClickListener(this.searchClose,this.closeSearch)}onSearchInputChange(e){const i=e.target.value.trim();if(!this.onSearchPage||"Enter"!==e.code)return this.onSearchPage?(document.dispatchEvent(new CustomEvent(s.CONSTANTS.EVENTS.SEARCH.SEARCH_FIRED,{detail:{search:i}})),void(this.currentQuery=i)):void(0!==i.length||"Escape"!==e.code?i.length>0&&this.searchButton?t.style.addClass(this.searchButton,o):t.style.removeClass(this.searchButton,o):this.closeSearch())}onSearchFormSubmit(t){this.searchInput&&0===this.searchInput.value.trim().length||this.onSearchPage?t.preventDefault():e.analytics.addSearchTracking(this.searchInput)}toggleMenu(){t.style.hasClass(this.sidebar,i)?this.closeSideMenu():this.openSideMenu()}openSideMenu(){t.style.addClass(this.sidebar,i),t.style.addClass(this.overlay,i),t.style.addClass(this.menuButton,c),t.style.removeClass(this.closeSidebarButton,c),document.body.style.overflowY="hidden",window.innerWidth<841&&this.lockScreen()}closeSideMenu(){t.style.removeClass(this.sidebar,i),t.style.removeClass(this.overlay,i),t.style.removeClass(this.menuButton,c),t.style.addClass(this.closeSidebarButton,c),document.body.style.overflowY="auto",window.innerWidth<841&&this.unlockScreen()}lockScreen(){this.screenPos=window.pageYOffset,this.body.scrollTop=this.screenPos,t.style.addClass(this.body,a)}unlockScreen(){t.style.removeClass(this.body,a),window.scrollTo(0,this.screenPos)}initToggles(){this.toggles.forEach((e=>{e.addEventListener("click",this.handleToggle.bind(this))}))}handleToggle(e){this.closeSideMenu();const t=e.currentTarget.getAttribute("data-toggle");this.handleToggleTarget(t)}handleToggleTarget(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.container.querySelectorAll(e).forEach((e=>{t?(e.classList.remove(m),this.unlockScreen()):(e.classList.toggle(m),e.classList.contains(m)?this.lockScreen():this.unlockScreen())}))}closeSidebarOnForewardTab(e){9!==e.keyCode||e.shiftKey||this.closeSideMenu()}closeSidebarOnBackwardsTab(e){e.shiftKey&&9===e.keyCode&&this.closeSideMenu()}toggleMobileLogin(){if(this.loginEl&&window.matchMedia("(max-width: 840px)").matches){this.mobileLoginEl.classList.add(h);const e=this.loginEl.getAttribute("href");this.mobileLoginEl.setAttribute("href",e)}else this.mobileLoginEl.classList.remove(h)}toggleUser(){this.container.classList.contains(s.CONSTANTS.USER_MENU_OPEN_CLASS)?e.common.event.dispatch(s.CONSTANTS.NAV_CTA_EVENTS.USER.CLOSE):e.common.event.dispatch(s.CONSTANTS.NAV_CTA_EVENTS.USER.OPEN)}calculateStickyValues(){const e=this;return(e.telstraBar?e.telstraBar?.getBoundingClientRect().height:0)+e.container.getBoundingClientRect().height-e.stickyContainer.getBoundingClientRect().height-e.mobileQuickLinks.getBoundingClientRect().height}setStickyNav(){document.body.classList.contains("disable-nav-fix")||(window.pageYOffset>=this.stickyContainerOffset?(this.stickyContainer.classList.add(g),this.mobileQuickLinks?.classList.add(g)):(this.stickyContainer.classList.remove(g),this.mobileQuickLinks?.classList.remove(g)))}addActiveClassToNavItem(e){const t=e.getAttribute("href");if(window.location.pathname.replace(/[\/\\]/g,"")===t.replace(/[\/\\]/g,"")){const t=e.closest("li"),s=e.closest(".
1js-nav-item");t&&t.classList.add(p),s&&s.classList.add(p),e.classList.add(p)}}onResultsPageUnload(){if(this.currentQuery){const t=this.searchInput.closest("[data-component-name]");if(t?.dataset.componentName){const i=t.dataset.componentName;e.tracking.recordEvent(s.CONSTANTS.TRACKING.EVENTS.SELECT.SEARCH,{eventData:{component_name:i}})}}}},e.widgetInitialiser.addMultipleWidgetsByName("main-navigation",e.MainNavigationWidget)}(PULSE.app,PULSE.core,PULSE.app.common),function(e,t){const s="u-hide";e.DynamicMore=function(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this.container=e;if(window.matchMedia(`(max-width: ${PULSE.app.measurements.tablet}px)`).matches)return;if(this.listSelector=o?.listSelector||".js-dynamic-list",this.itemSelector=o?.itemSelector||".js-dynamic-child",this.bucketSelector=o?.bucketSelector||".js-dynamic-more-bucket",this.ghostClass=o?.ghostClass||"dynamic-more__ghost",this.list=e.querySelector(this.listSelector),this.list.style.position="relative",this.items=e.querySelectorAll(this.itemSelector),this.more=null,this.template=s||"main-navigation.dynamic-more",this.bucket=n.call(this,this.list),this.bucket){const e=new CustomEvent(t.CONSTANTS.EVENTS.NAVIGATION.MORE_BUCKET_LOADED);document.dispatchEvent(e)}const a={root:this.list,rootMargin:`0px -${this.more.clientWidth}px 0px 0px`,threshold:1},r=new IntersectionObserver(i.bind(this),a);this.items.forEach((e=>r.observe(e)))};const i=function(e){if(!e[0].rootBounds.right)return;const i=e.reduce(o,{exiting:[],entering:[]});i.exiting.reverse().forEach(a.bind(this)),i.entering.forEach(r.bind(this));this.bucket.children.length>=1?this.more.classList.remove(s):this.more.classList.add(s);const n=new CustomEvent(t.CONSTANTS.EVENTS.NAVIGATION.MORE_BUCKET_UPDATED);document.dispatchEvent(n)},n=function(t){const s=e.templating.render({},this.template,!0);return this.more=t.appendChild(s),t.querySelector(this.bucketSelector)},o=(e,t)=>(t.boundingClientRect.right>=t.rootBounds.right?e.exiting.push(t):e.entering.push(t),e),a=function(s){if("none"===getComputedStyle(s.target,null).display)return;s.target.setAttribute("data-cloned",Math.random()*Date.now());const i=s.target.cloneNode(!0);this.bucket.prepend(i),s.target.tabIndex=-1;t.element.getFocusableChildElements(s.target).forEach((e=>{e.tabIndex=-1})),s.target.classList.add(this.ghostClass),s.target.style.left=s.boundingClientRect.left-s.rootBounds.left+"px",new e.NavigationDropDownTrigger(s.target,!0,!1)},r=function(s){const i=this.bucket.querySelector(`[data-cloned="${s.target.getAttribute("data-cloned")}"]`);if(!i)return;i.remove(),s.target.classList.remove(this.ghostClass),s.target.removeAttribute("data-cloned"),s.target.tabIndex=0,s.target.style.left="0",s.target.tabIndex=-1;t.element.getFocusableChildElements(s.target).forEach((e=>{e.tabIndex=0})),s.target.style.left=0,new e.NavigationDropDownTrigger(s.target,!0,!1)};e.widgetInitialiser.addMultipleWidgetsByName("dynamic-more",e.DynamicMore)}(PULSE.app,PULSE.app.common);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.