{"version":3,"sources":["js/nav.js"],"names":["$","$navToggle","$mainNavMenu","$scrollTop","menuOpen","activeHeader","attr","on","event","preventDefault","find","text","document","ready","siteHeaderHeightWhileHidden","parseInt","css","$stickyHeader","$staticHeader","window","func","wait","options","timeout","context","args","result","previous","later","leading","Date","getTime","apply","throttled","now","remaining","this","arguments","clearTimeout","trailing","setTimeout","cancel","throttle","val","jQuery"],"mappings":"CACM,SAAkBA,GACvB,aAIA,IAAMC,EAAaD,EAAE,eACpBE,EAAeF,EAAE,YACjBG,EAAaH,EAAE,cACZI,GAAW,EACdC,EAAe,GAiFhBJ,EAAWK,KAAK,OAAQ,UAAUC,GAAG,SALrC,SAAoBC,GACnBA,EAAMC,iBAfNL,GAAYA,EACZF,EAAaI,KAAK,eAAeF,GACjCH,EACEK,KAAK,CACL,aAAcF,EACX,2BACA,2BACH,kBAAiBA,IAEjBM,KAAK,QACLC,KAAKP,EAAW,QAAU,OAO7B,IAKAJ,EAAEY,UAAUC,OAAM,WACjB,IAECC,EADgB,GADQC,SAASf,EAAE,iBAAiBgB,IAAI,UAAW,IAGnEC,EAAgBjB,EAAE,mBAClBkB,EAAgBlB,EAAE,mBACnBK,EAAe,eACfL,EAAEmB,QAAQZ,GACT,SArFF,SAAkBa,EAAMC,EAAMC,GAC7B,IAAIC,EAASC,EAASC,EAAMC,EACxBC,EAAW,EAKf,SAASC,IACRD,GAA+B,IAApBL,EAAQO,QAAoB,GAAI,IAAIC,MAAOC,UACtDR,EAAU,KACVG,EAASN,EAAKY,MAAMR,EAASC,GACxBF,IACJC,EAAUC,EAAO,KAEnB,CAEA,SAASQ,IACR,IAAIC,GAAM,IAAIJ,MAAOC,UAChBJ,IAAgC,IAApBL,EAAQO,UACxBF,EAAWO,GAGZ,IAAIC,EAAYd,GAAQa,EAAMP,GAkB9B,OAjBAH,EAAUY,KACVX,EAAOY,UACHF,GAAa,GAAKA,EAAYd,GAC7BE,IACHe,aAAaf,GACbA,EAAU,MAGXI,EAAWO,EACXR,EAASN,EAAKY,MAAMR,EAASC,GACxBF,IACJC,EAAUC,EAAO,OAEPF,IAAgC,IAArBD,EAAQiB,WAC9BhB,EAAUiB,WAAWZ,EAAOO,IAGtBT,CACR,CAQA,OA9CKJ,IACJA,EAAU,CAAC,GAuCZW,EAAUQ,OAAS,WAClBH,aAAaf,GACbI,EAAW,EACXJ,EAAUC,EAAUC,EAAO,IAC5B,EAEOQ,CACR,CAoCES,EAAS,WACJvC,EAAWwC,MAAQ7B,EACD,iBAAjBT,IACHY,EAAcX,KAAK,eAAe,GAClCY,EAAcZ,KAAK,eAAe,GAClCD,EAAe,gBAGK,iBAAjBA,IACHY,EAAcX,KAAK,eAAe,GAClCY,EAAcZ,KAAK,eAAe,GAClCD,EAAe,eAGlB,GAxB8B,KA0BhC,GACD,CAvHM,CAuHHuC","file":"js\\nav.min.js","sourcesContent":["/*global jQuery */\r\nvoid (function navStart($) {\r\n\t'use strict';\r\n\r\n\t// // GLOBAL VARIABLES // //\r\n\r\n\tconst $navToggle = $('.nav-toggle'),\r\n\t\t$mainNavMenu = $('#mainNav'),\r\n\t\t$scrollTop = $('#ScrollTop');\r\n\tlet menuOpen = false,\r\n\t\tactiveHeader = '';\r\n\r\n\t// // GLOBAL FUNCTIONS // //\r\n\r\n\t// Throttle\r\n\t// Lifted from underscore.js (https://github.com/jashkenas/underscore/blob/master/underscore.js)\r\n\t/* eslint-disable */\r\n\tfunction throttle(func, wait, options) {\r\n\t\tvar timeout, context, args, result;\r\n\t\tvar previous = 0;\r\n\t\tif (!options) {\r\n\t\t\toptions = {};\r\n\t\t}\r\n\r\n\t\tfunction later() {\r\n\t\t\tprevious = options.leading === false ? 0 : new Date().getTime();\r\n\t\t\ttimeout = null;\r\n\t\t\tresult = func.apply(context, args);\r\n\t\t\tif (!timeout) {\r\n\t\t\t\tcontext = args = null;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction throttled() {\r\n\t\t\tvar now = new Date().getTime();\r\n\t\t\tif (!previous && options.leading === false) {\r\n\t\t\t\tprevious = now;\r\n\t\t\t}\r\n\r\n\t\t\tvar remaining = wait - (now - previous);\r\n\t\t\tcontext = this;\r\n\t\t\targs = arguments;\r\n\t\t\tif (remaining <= 0 || remaining > wait) {\r\n\t\t\t\tif (timeout) {\r\n\t\t\t\t\tclearTimeout(timeout);\r\n\t\t\t\t\ttimeout = null;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tprevious = now;\r\n\t\t\t\tresult = func.apply(context, args);\r\n\t\t\t\tif (!timeout) {\r\n\t\t\t\t\tcontext = args = null;\r\n\t\t\t\t}\r\n\t\t\t} else if (!timeout && options.trailing !== false) {\r\n\t\t\t\ttimeout = setTimeout(later, remaining);\r\n\t\t\t}\r\n\r\n\t\t\treturn result;\r\n\t\t}\r\n\r\n\t\tthrottled.cancel = function cancelThrottle() {\r\n\t\t\tclearTimeout(timeout);\r\n\t\t\tprevious = 0;\r\n\t\t\ttimeout = context = args = null;\r\n\t\t};\r\n\r\n\t\treturn throttled;\r\n\t}\r\n\t/* eslint-enable */\r\n\r\n\t// Change menu state\r\n\tfunction changeMenuState() {\r\n\t\tmenuOpen = !menuOpen;\r\n\t\t$mainNavMenu.attr('aria-hidden', menuOpen ? false : true);\r\n\t\t$navToggle\r\n\t\t\t.attr({\r\n\t\t\t\t'aria-label': menuOpen\r\n\t\t\t\t\t? 'Click to hide navigation'\r\n\t\t\t\t\t: 'Click to open navigation',\r\n\t\t\t\t'aria-expanded': menuOpen ? true : false,\r\n\t\t\t})\r\n\t\t\t.find('span')\r\n\t\t\t.text(menuOpen ? 'close' : 'menu');\r\n\t}\r\n\r\n\t// Toggle menu open and close\r\n\tfunction menuToggle(event) {\r\n\t\tevent.preventDefault();\r\n\t\tchangeMenuState();\r\n\t}\r\n\r\n\t$navToggle.attr('role', 'button').on('click', menuToggle);\r\n\r\n\tconst scrollThrottleThreshold = 100;\r\n\t$(document).ready(() => {\r\n\t\tconst siteHeaderHeight = parseInt($('.site--header').css('height'), 10),\r\n\t\t\tpercentHidden = 0.9,\r\n\t\t\tsiteHeaderHeightWhileHidden = siteHeaderHeight * percentHidden,\r\n\t\t\t$stickyHeader = $('.header__sticky'),\r\n\t\t\t$staticHeader = $('.header__static');\r\n\t\tactiveHeader = 'staticHeader';\r\n\t\t$(window).on(\r\n\t\t\t'scroll',\r\n\t\t\tthrottle(() => {\r\n\t\t\t\tif ($scrollTop.val() > siteHeaderHeightWhileHidden) {\r\n\t\t\t\t\tif (activeHeader !== 'stickyHeader') {\r\n\t\t\t\t\t\t$stickyHeader.attr('aria-hidden', false);\r\n\t\t\t\t\t\t$staticHeader.attr('aria-hidden', true);\r\n\t\t\t\t\t\tactiveHeader = 'stickyHeader';\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (activeHeader !== 'staticHeader') {\r\n\t\t\t\t\t\t$stickyHeader.attr('aria-hidden', true);\r\n\t\t\t\t\t\t$staticHeader.attr('aria-hidden', false);\r\n\t\t\t\t\t\tactiveHeader = 'staticHeader';\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}, scrollThrottleThreshold),\r\n\t\t);\r\n\t});\r\n})(jQuery);\r\n"]}