{"version":3,"file":"app_src_js_full-menu_js.f96c13a944d897addf95.js","mappings":"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","sources":["webpack://WebpackConfig.Web/./app/src/js/config.js","webpack://WebpackConfig.Web/./app/src/js/full-menu.js","webpack://WebpackConfig.Web/./app/src/js/global.js","webpack://WebpackConfig.Web/./app/src/js/keyboard-accessibility-check.js"],"sourcesContent":["export const breakPoint = {\r\n SM: 576,\r\n MD: 768,\r\n LG: 992,\r\n XL: 1200,\r\n XXL: 1400\r\n}\r\n","// *****************************\r\n// ***** Main Navigation *****\r\n// *****************************\r\n\r\nimport { breakPoint } from './config';\r\nimport { Collapse as bootstrapCollapse } from 'bootstrap';\r\nimport { keyboardControl } from './keyboard-accessibility-check';\r\nimport { mainNavigation } from './global';\r\n\r\nlet isMobile = true,\r\n m = null, // main nav system\r\n sideHeaderLayout = document.body.classList.contains('side-header-layout');\r\n\r\nmainNavigation.setActive(false);\r\n\r\nclass AccessibleList {\r\n constructor(el) {\r\n this.el = el;\r\n this.tabIndex = 0;\r\n this.items = [...this.el.querySelectorAll('a')];\r\n this.itemsCount = this.items.length;\r\n this.updateTabIndexes(0);\r\n // focus behaviour\r\n for(let x = 0, l = this.items.length; x < l; x++) {\r\n this.items[x].onfocus = () => {\r\n if(this.tabIndex != x) {\r\n this.tabIndex = x;\r\n this.updateTabIndexes();\r\n }\r\n };\r\n }\r\n }\r\n updateTabIndexes(setFocus = false) {\r\n for(let x = 0, l = this.items.length; x < l; x++) {\r\n this.items[x].setAttribute('tabIndex', x == this.tabIndex ? '0' : '-1');\r\n }\r\n if(setFocus) this.items[this.tabIndex].focus();\r\n }\r\n nav(mode) {\r\n if(mode) {\r\n this.tabIndex+=1;\r\n if(this.tabIndex >= this.itemsCount) this.tabIndex = 0;\r\n } else {\r\n this.tabIndex-=1;\r\n if(this.tabIndex < 0) this.tabIndex = this.itemsCount - 1;\r\n }\r\n this.updateTabIndexes(true);\r\n }\r\n}\r\n\r\nclass menu {\r\n constructor(wrapper, toggleButton) {\r\n this.wrapper = wrapper;\r\n this.toggleButton = toggleButton;\r\n this.expanded = false;\r\n this.mobileTabElements = [...this.wrapper.querySelectorAll('#full-menu--feature-links li:first-child a, .menu-section > a, .menu-section > button, #full-menu--mobile-search input, #full-menu--mobile--utility-links li:first-child a, #full-menu--social-links li:first-child a, #full-menu--mobile-search button')];\r\n this.desktopTabElements = [...this.wrapper.querySelectorAll('#full-menu--feature-links li:first-child a, .menu-section:not(.d-lg-none) > a, .menu-section:not(.d-lg-none) .collapse ul li:first-child a, #full-menu--social-links li:first-child a')];\r\n this.tabElementIndex = -1;\r\n this.tabElementSubIndex = -1;\r\n this.sections = [];\r\n [...this.wrapper.querySelectorAll('.menu-section')].forEach((s) => {\r\n this.sections.push(new menuSection(s));\r\n });\r\n // accessible lists\r\n this.accessibleLists = [];\r\n [...this.wrapper.querySelectorAll('.menu-accessible-list')].forEach((l) => {\r\n this.accessibleLists.push(new AccessibleList(l));\r\n });\r\n }\r\n show() {\r\n // open menu\r\n this.wrapper.removeAttribute('hidden');\r\n this.expanded = true;\r\n mainNavigation.setActive(true);\r\n this.toggleButton.setAttribute('aria-expanded', true);\r\n this.wrapper.setAttribute('aria-hidden', false);\r\n window.requestAnimationFrame(() => {\r\n document.body.classList.add('menu-active');\r\n this.tabElementIndex = 0;\r\n this.wrapper.ontransitionend = (e) => {\r\n if(e.target == this.wrapper) this.showTransitionEnd();\r\n };\r\n });\r\n }\r\n showTransitionEnd() {\r\n // focus on first menu item if keyboard control\r\n if(keyboardControl.active) {\r\n if(isMobile) {\r\n this.mobileTabElements[0].focus();\r\n } else {\r\n this.desktopTabElements[0].focus();\r\n }\r\n }\r\n this.wrapper.ontransitionend = null;\r\n }\r\n hide(doFocus = false) {\r\n this.expanded = false;\r\n mainNavigation.setActive(false);\r\n this.tabElementIndex = -1;\r\n this.toggleButton.setAttribute('aria-expanded', false);\r\n document.body.classList.remove('menu-active');\r\n this.wrapper.ontransitionend = (e) => {\r\n if(e.target == this.wrapper) this.hideTransitionEnd(doFocus);\r\n };\r\n }\r\n hideTransitionEnd(doFocus = false) {\r\n this.wrapper.setAttribute('aria-hidden', true);\r\n if(keyboardControl.active && doFocus) this.toggleButton.focus();\r\n this.wrapper.ontransitionend = null;\r\n }\r\n}\r\n\r\nclass menuSection {\r\n constructor(el) {\r\n this.wrapper = el;\r\n this.collapseToggle = el.querySelector('button[data-bs-toggle=\"collapse\"]');\r\n this.collapseContent = el.querySelector('.collapse');\r\n this.firstOption = el.querySelector('ul li a');\r\n // add listeners for expansion to add class to parent wrapper\r\n if(this.collapseContent != null) {\r\n this.collapseContent.addEventListener('show.bs.collapse', () => {\r\n this.wrapper.classList.add('expanded');\r\n });\r\n this.collapseContent.addEventListener('shown.bs.collapse', () => {\r\n if(keyboardControl.active && isMobile) this.firstOption.focus();\r\n });\r\n this.collapseContent.addEventListener('hidden.bs.collapse', () => {\r\n this.wrapper.classList.remove('expanded');\r\n });\r\n }\r\n }\r\n toMobile() {\r\n if(this.collapseContent != null) {\r\n let bsCollapse = bootstrapCollapse.getOrCreateInstance(this.collapseContent);\r\n bsCollapse.hide();\r\n this.collapseToggle.removeAttribute('disabled');\r\n }\r\n }\r\n toDesktop() {\r\n if(this.collapseContent != null) {\r\n let bsCollapse = bootstrapCollapse.getOrCreateInstance(this.collapseContent);\r\n bsCollapse.show();\r\n this.collapseToggle.setAttribute('disabled', 'disabled');\r\n }\r\n }\r\n}\r\n\r\nconst findMenu = document.querySelector('#full-menu');\r\nif(findMenu != null) {\r\n\r\n // create instance of menu\r\n\r\n m = new menu(findMenu, document.querySelector('#main-header--content--full-menu-toggle'));\r\n\r\n // menu toggle functionality\r\n\r\n m.toggleButton.addEventListener('click', () => {\r\n if (!m.expanded) {\r\n // open menu\r\n m.show();\r\n } else {\r\n // close menu\r\n m.hide();\r\n }\r\n });\r\n\r\n // add keyboard accessibility\r\n\r\n const navTabElements = (mode) => {\r\n let tabElements = isMobile ? m.mobileTabElements : m.desktopTabElements,\r\n tabElementsLength = tabElements.length,\r\n lastIndex = tabElementsLength - 1;\r\n if(mode) {\r\n // move to next tab element\r\n m.tabElementIndex = m.tabElementIndex == lastIndex ? 0 : m.tabElementIndex + 1;\r\n } else {\r\n // move to previous tab element\r\n m.tabElementIndex = m.tabElementIndex == 0 ? lastIndex : m.tabElementIndex - 1;\r\n }\r\n if(keyboardControl.active) tabElements[m.tabElementIndex].focus();\r\n };\r\n\r\n // mobile menu\r\n for(let x = 0, l = m.mobileTabElements.length; x < l; x++) {\r\n m.mobileTabElements[x].addEventListener('keydown', (e) => {\r\n if(isMobile) {\r\n switch (e.key) {\r\n // ESCAPE jumps out a level\r\n case 'Escape':\r\n if(mainNavigation.active) m.hide(true);\r\n break;\r\n case 'Left':\r\n case 'ArrowLeft':\r\n e.preventDefault();\r\n navTabElements(false);\r\n break;\r\n case 'Tab':\r\n case 'Right':\r\n case 'ArrowRight':\r\n e.preventDefault();\r\n navTabElements(true);\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n // desktop menu\r\n for(let x = 0, l = m.desktopTabElements.length; x < l; x++) {\r\n m.desktopTabElements[x].addEventListener('keydown', (e) => {\r\n if(!isMobile) {\r\n switch (e.key) {\r\n // ESCAPE jumps out a level\r\n case 'Escape':\r\n if(!isMobile && mainNavigation.active) m.hide(true);\r\n break;\r\n case 'Left':\r\n case 'ArrowLeft':\r\n e.preventDefault();\r\n navTabElements(false);\r\n break;\r\n case 'Tab':\r\n case 'Right':\r\n case 'ArrowRight':\r\n e.preventDefault();\r\n navTabElements(true);\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n // accessible lists\r\n for(let x = 0, lx = m.accessibleLists.length; x < lx; x++) {\r\n for(let y = 0, ly = m.accessibleLists[x].items.length; y < ly; y++) {\r\n m.accessibleLists[x].items[y].addEventListener('keydown', (e) => {\r\n let isTabElement = y == 0; // look for tabbable element which already has some listeners\r\n switch (e.key) {\r\n // ESCAPE jumps out a level\r\n case 'Escape':\r\n e.preventDefault();\r\n if(isMobile) {\r\n m.mobileTabElements[m.tabElementIndex].focus();\r\n } else {\r\n if(!isTabElement && mainNavigation.active) m.hide(true); // only if not the tabbable element\r\n }\r\n break;\r\n case 'Up':\r\n case 'ArrowUp':\r\n e.preventDefault();\r\n m.accessibleLists[x].nav(false);\r\n break;\r\n case 'Down':\r\n case 'ArrowDown':\r\n e.preventDefault();\r\n m.accessibleLists[x].nav(true);\r\n break;\r\n case 'Left':\r\n case 'ArrowLeft':\r\n e.preventDefault();\r\n if(!isTabElement) navTabElements(false); // only if not the tabbable element\r\n break;\r\n case 'Tab':\r\n case 'Right':\r\n case 'ArrowRight':\r\n e.preventDefault();\r\n if(!isTabElement) navTabElements(true); // only if not the tabbable element\r\n break;\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n // hide or show all menu '.collapse' elements if changing from mobile to desktop or vica versa\r\n\r\n var resize = () => {\r\n let prev = isMobile;\r\n isMobile = window.innerWidth < breakPoint.LG;\r\n if (isMobile && !prev) {\r\n // collapse all menu sections and enable toggles\r\n m.sections.forEach((s) => {s.toMobile()});\r\n if(m.expanded) m.hide(true);\r\n } else if (!isMobile && prev) {\r\n // expanded all menu sections and disable toggles\r\n m.sections.forEach((s) => {s.toDesktop()});\r\n if(m.expanded) m.hide(true);\r\n }\r\n };\r\n\r\n resize();\r\n window.addEventListener('window-resize', () => {\r\n resize();\r\n });\r\n\r\n}","// ***********************************\r\n// ***** global site variables *****\r\n// ***********************************\r\n\r\nconst detectReducedMotionPref = window.matchMedia('(prefers-reduced-motion: reduce)');\r\nlet settingsLinksAdded = false,\r\n settingsModalContent = null;\r\n\r\n// site settings\r\n\r\nconst addSettingsLinks = () => {\r\n // utility bar link?\r\n let utilityBar = document.body.querySelector('#top-utility-bar');\r\n if(utilityBar != null) {\r\n let utilityBarIcons = document.body.querySelector('#top-utility-bar--icon-links ul');\r\n if(utilityBarIcons != null) {\r\n let content = document.createElement('li');\r\n content.classList.add('list-inline-item');\r\n content.innerHTML = '';\r\n utilityBarIcons.appendChild(content);\r\n } else {\r\n let utilityBarContent = document.body.querySelector('#top-utility-bar--content');\r\n let content = document.createElement('div');\r\n content.setAttribute('id','top-utility-bar--icon-links');\r\n content.innerHTML = '';\r\n utilityBarContent.appendChild(content);\r\n }\r\n } else {\r\n // put in header links instead\r\n let headerContent = document.body.querySelector('#main-header--content');\r\n if(headerContent != null) {\r\n let content = document.createElement('button');\r\n content.setAttribute('id','main-header--content--site-settings-btn');\r\n content.setAttribute('class','btn btn-link');\r\n content.setAttribute('data-bs-toggle','modal');\r\n content.setAttribute('data-bs-target','#site-settings');\r\n content.innerHTML = 'Site settings';\r\n headerContent.appendChild(content);\r\n }\r\n }\r\n // footer link?\r\n let midSectionLinks = document.body.querySelector('#main-footer--mid-section--links ul');\r\n if(midSectionLinks != null) {\r\n let newLink = document.createElement('li');\r\n newLink.innerHTML = 'Site settings';\r\n midSectionLinks.appendChild(newLink);\r\n }\r\n // update state\r\n settingsLinksAdded = true;\r\n};\r\n\r\nconst refreshModalContent = () => {\r\n if(!settingsModalContent) {\r\n let settingsModal = document.createElement('div');\r\n settingsModal.setAttribute('id','site-settings');\r\n settingsModal.setAttribute('class','modal fade');\r\n settingsModal.setAttribute('data-bs-backdrop','static');\r\n settingsModal.setAttribute('data-bs-keyboard','false');\r\n settingsModal.setAttribute('tabindex','-1');\r\n settingsModal.setAttribute('aria-hidden','true');\r\n settingsModal.innerHTML = '

Site Settings

';\r\n document.body.appendChild(settingsModal);\r\n settingsModalContent = document.body.querySelector('#site-settings .modal-body');\r\n }\r\n let content = '';\r\n if(siteSettings.fx.length > 0) {\r\n settingsModalContent.innerHTML = '

Manage the visual effects on this site:

';\r\n siteSettings.fx.forEach(i => {\r\n settingsModalContent.appendChild(i.controller);\r\n });\r\n }\r\n}\r\n\r\nexport const siteSettings = {\r\n reducedMotionPref: detectReducedMotionPref.matches,\r\n desktopSideHeaderLayout: document.querySelector('body.site-layout.side-header-layout') != null,\r\n fx: [],\r\n fxAdd: (fxType, fxEnable, fxCallback = null) => {\r\n let exists = false;\r\n siteSettings.fx.forEach(i => {\r\n if(i.type == fxType) exists = true;\r\n });\r\n if(!exists) {\r\n siteSettings.fx.push({\r\n type: fxType,\r\n enabled: fxEnable,\r\n callback: fxCallback,\r\n controller: document.createElement('div')\r\n });\r\n let thisIndex = siteSettings.fx.length - 1,\r\n thisFX = siteSettings.fx[thisIndex];\r\n thisFX.controller.setAttribute('class','form-check form-switch');\r\n let checkbox = document.createElement('input');\r\n checkbox.setAttribute('id',`site-settings--fx--${thisIndex}`);\r\n checkbox.setAttribute('class','form-check-input');\r\n checkbox.setAttribute('type','checkbox');\r\n checkbox.setAttribute('role','switch');\r\n if(fxEnable) checkbox.setAttribute('checked',true);\r\n checkbox.addEventListener('click',() => {\r\n siteSettings.fxToggle(thisFX.type,checkbox.checked);\r\n });\r\n thisFX.controller.appendChild(checkbox);\r\n let label = document.createElement('label');\r\n label.setAttribute('for',`site-settings--fx--${thisIndex}`);\r\n label.setAttribute('class','form-check-label');\r\n label.innerHTML = thisFX.type;\r\n thisFX.controller.appendChild(label);\r\n }\r\n if(fxCallback) fxCallback(fxEnable);\r\n // add settings links if not already added\r\n if(!settingsLinksAdded) addSettingsLinks();\r\n // refresh modal content\r\n refreshModalContent();\r\n },\r\n fxToggle: (fxType, mode) => {\r\n siteSettings.fx.forEach(i => {\r\n if(i.type == fxType) {\r\n i.enabled = mode;\r\n if(i.callback) i.callback(mode);\r\n }\r\n });\r\n }\r\n};\r\n\r\n// nav/search states\r\n\r\nexport const mainNavigation = {\r\n active: false,\r\n setActive: (mode) => {\r\n mainNavigation.active = mode;\r\n }\r\n};\r\n\r\nexport const megaMenuNavigation = {\r\n mobileActive: false,\r\n setMobileActive: (mode) => {\r\n megaMenuNavigation.mobileActive = mode;\r\n },\r\n desktopActive: false,\r\n setDesktopActive: (mode) => {\r\n megaMenuNavigation.desktopActive = mode;\r\n }\r\n};\r\n\r\nexport const headerSearch = {\r\n active: false,\r\n setActive: (mode) => {\r\n headerSearch.active = mode;\r\n }\r\n};","// keyboard control detection\r\n\r\nexport const keyboardControl = {\r\n active: false\r\n}\r\n\r\nlet accessibilityTimeout = null;\r\nconst toggleAccessibilityClass = (mode) => {\r\n clearTimeout(accessibilityTimeout);\r\n accessibilityTimeout = setTimeout(() => {\r\n document.body.classList.toggle('keyboard-control', mode);\r\n keyboardControl.active = mode;\r\n }, 100);\r\n}\r\ndocument.body.addEventListener('keydown', function(e) {\r\n switch (e.key) {\r\n case 'Escape':\r\n case 'Up':\r\n case 'ArrowUp':\r\n case 'Down':\r\n case 'ArrowDown':\r\n case 'Left':\r\n case 'ArrowLeft':\r\n case 'Tab':\r\n case 'Right':\r\n case 'ArrowRight':\r\n case 'PageUp':\r\n case 'PageDown':\r\n case 'Spacebar':\r\n case ' ':\r\n case 'Enter':\r\n case 'Return':\r\n toggleAccessibilityClass(true);\r\n break;\r\n }\r\n});\r\ndocument.body.addEventListener('mousedown', function() {\r\n toggleAccessibilityClass(false);\r\n});\r\ndocument.body.addEventListener('touchstart', function() {\r\n toggleAccessibilityClass(false);\r\n});"],"names":["breakPoint","SM","MD","LG","XL","XXL","Collapse","bootstrapCollapse","keyboardControl","mainNavigation","isMobile","m","sideHeaderLayout","document","body","classList","contains","setActive","AccessibleList","el","_this","_classCallCheck","tabIndex","items","_toConsumableArray","querySelectorAll","itemsCount","length","updateTabIndexes","_loop","x","onfocus","l","_createClass","key","value","setFocus","arguments","undefined","setAttribute","focus","nav","mode","menu","wrapper","toggleButton","_this2","expanded","mobileTabElements","desktopTabElements","tabElementIndex","tabElementSubIndex","sections","forEach","s","push","menuSection","accessibleLists","show","_this3","removeAttribute","window","requestAnimationFrame","add","ontransitionend","e","target","showTransitionEnd","active","hide","_this4","doFocus","remove","hideTransitionEnd","_this5","collapseToggle","querySelector","collapseContent","firstOption","addEventListener","toMobile","bsCollapse","getOrCreateInstance","toDesktop","findMenu","navTabElements","tabElements","tabElementsLength","lastIndex","preventDefault","_loop2","_x2","_loop3","y","isTabElement","ly","lx","resize","prev","innerWidth","detectReducedMotionPref","matchMedia","settingsLinksAdded","settingsModalContent","addSettingsLinks","utilityBar","utilityBarIcons","content","createElement","innerHTML","appendChild","utilityBarContent","headerContent","midSectionLinks","newLink","refreshModalContent","settingsModal","siteSettings","fx","i","controller","reducedMotionPref","matches","desktopSideHeaderLayout","fxAdd","fxType","fxEnable","fxCallback","exists","type","enabled","callback","thisIndex","thisFX","checkbox","concat","fxToggle","checked","label","megaMenuNavigation","mobileActive","setMobileActive","desktopActive","setDesktopActive","headerSearch","accessibilityTimeout","toggleAccessibilityClass","clearTimeout","setTimeout","toggle"],"sourceRoot":""}