{"version":3,"sources":["webpack:///./src/js/main-menu.js"],"names":["jQuery","document","ready","$","$w","window","$body","$defaultMenuToggle","$stickyMenu","$fixedMenuToggle","$fullScreenMenu","$firstBlock","first","currentScroll","scrollTrigger","length","Math","round","offset","top","height","on","hasClass","removeClass","scrollTop","addClass","setTimeout","e","evt","event","key","keyCode","trigger","stopPropagation","$menuItem","this","parent","preventDefault","toggleClass","find","slideToggle"],"mappings":"wFAAAA,cAAOC,UAAUC,MAAM,SAASC,GAC5B,aAGA,IAAIC,EAAKD,EAAEE,QAASC,EAAQH,EAAE,QAC1BI,EAAqBJ,EAAE,kCACvBK,EAAcL,EAAE,oCAChBM,EAAmBN,EAAE,gCACrBO,EAAkBP,EAAE,+BACpBQ,EAAcR,EAAE,UAAUS,QAC1BC,EAAgB,EAChBC,EAAgB,IAChBH,EAAYI,SACdD,EAAgBE,KAAKC,MAAMN,EAAYO,SAASC,IAAMR,EAAYS,SAAS,IAI7Eb,EAAmBc,GAAG,QAAS,WACvBX,EAAgBY,SAAS,YAC3BZ,EAAgBa,YAAY,WAC5Bd,EAAiBc,YAAY,UAC7BjB,EAAMiB,YAAY,yBAClBnB,EAAGoB,UAAUX,KAEbH,EAAgBe,SAAS,WACzBhB,EAAiBgB,SAAS,UAC1BnB,EAAMmB,SAAS,aACfZ,EAAgBT,EAAGoB,YACnBE,WAAW,WACTpB,EAAMmB,SAAS,gBACd,QAITtB,EAAEF,UAAUoB,GAAG,QAAS,SAASM,GAC/B,IAAIC,EAAMD,GAAKtB,OAAOwB,OAClB,QAASD,EACQ,WAAVA,EAAIE,KAA4B,QAAVF,EAAIE,IAEV,KAAhBF,EAAIG,UAGTrB,EAAgBY,SAAS,YAC3Bf,EAAmByB,QAAQ,WAMjCvB,EAAiBY,GAAG,QAAS,WAC3Bd,EAAmByB,QAAQ,WAG7BtB,EAAgBW,GAAG,QAAS,WACtBX,EAAgBY,SAAS,YAC3Bf,EAAmByB,QAAQ,WAI/BtB,EAAgBW,GAAG,QAAS,IAAK,SAASM,GAExC,GADAA,EAAEM,kBACEvB,EAAgBY,SAAS,WAAY,CACvC,IAAIY,EAAY/B,EAAEgC,MAAMC,OAAO,cAC3BF,EAAUZ,SAAS,4BACrBK,EAAEU,iBACFH,EAAUI,YAAY,UAAUC,KAAK,aAAaC,YAAY,SAKpEpC,EAAGiB,GAAG,SAAU,WACVV,EAAYI,SACdD,EAAgBE,KAAKC,MAAMN,EAAYO,SAASC,IAAMR,EAAYS,SAAS,MAK/EhB,EAAGiB,GAAG,SAAU,WACTf,EAAMgB,SAAS,iBACblB,EAAGoB,YAAcV,IAAkBN,EAAYc,SAAS,YACzDd,EAAYiB,SAAS,WACrBjB,EAAYiB,SAAS,mBACbrB,EAAGoB,YAAcV,IACzBN,EAAYe,YAAY,kBAClBd,EAAiBa,SAAS,WAC5Bd,EAAYe,YAAY,eAMpCnB,EAAG4B,QAAQ,YAGfhC,EAAOK,QAAQgB,GAAG,OAAO,WACvBrB,EAAO,QAAQyB,SAAS","file":"main-menu.js","sourcesContent":["jQuery(document).ready(function($) {\r\n 'use strict';\r\n\r\n // Define menu specific variables\r\n var $w = $(window), $body = $('body'),\r\n $defaultMenuToggle = $('.menu-toggle-container.default'),\r\n $stickyMenu = $('.menu-sticky.main-menu-container'),\r\n $fixedMenuToggle = $('.menu-toggle-container.fixed'),\r\n $fullScreenMenu = $('.full-screen-menu-container'),\r\n $firstBlock = $('.block').first(),\r\n currentScroll = 0,\r\n scrollTrigger = 300;\r\n if ($firstBlock.length) {\r\n scrollTrigger = Math.round($firstBlock.offset().top + $firstBlock.height()/2);\r\n }\r\n\r\n // Toggle full screen menu when user clicks the toggle in the main menu\r\n $defaultMenuToggle.on('click', function() {\r\n if ($fullScreenMenu.hasClass('visible')) {\r\n $fullScreenMenu.removeClass('visible');\r\n $fixedMenuToggle.removeClass('active');\r\n $body.removeClass('lock-scroll menu-open');\r\n $w.scrollTop(currentScroll);\r\n } else {\r\n $fullScreenMenu.addClass('visible');\r\n $fixedMenuToggle.addClass('active');\r\n $body.addClass('menu-open');\r\n currentScroll = $w.scrollTop();\r\n setTimeout(function() {\r\n $body.addClass('lock-scroll');\r\n }, 300);\r\n }\r\n });\r\n\r\n $(document).on('keyup', function(e) {\r\n var evt = e || window.event, isEsc = false;\r\n if (\"key\" in evt) {\r\n isEsc = (evt.key==='Escape' || evt.key==='Esc');\r\n } else {\r\n isEsc = (evt.keyCode === 27);\r\n }\r\n if (isEsc) {\r\n if ($fullScreenMenu.hasClass('visible')) {\r\n $defaultMenuToggle.trigger('click');\r\n }\r\n }\r\n });\r\n\r\n // Toggle full screen menu when user clicks fixed menu toggle\r\n $fixedMenuToggle.on('click', function() {\r\n $defaultMenuToggle.trigger('click');\r\n });\r\n\r\n $fullScreenMenu.on('click', function() {\r\n if ($fullScreenMenu.hasClass('visible')) {\r\n $defaultMenuToggle.trigger('click');\r\n }\r\n });\r\n\r\n $fullScreenMenu.on('click', 'a', function(e) {\r\n e.stopPropagation();\r\n if ($fullScreenMenu.hasClass('visible')) {\r\n var $menuItem = $(this).parent('.menu-item');\r\n if ($menuItem.hasClass('menu-item-has-children')) {\r\n e.preventDefault();\r\n $menuItem.toggleClass('active').find('.sub-menu').slideToggle(300);\r\n }\r\n }\r\n });\r\n\r\n $w.on('resize', function() {\r\n if ($firstBlock.length) {\r\n scrollTrigger = Math.round($firstBlock.offset().top + $firstBlock.height()/2);\r\n }\r\n });\r\n\r\n // Toggle menu visibility based on scroll position\r\n $w.on('scroll', function() {\r\n if (!$body.hasClass('lock-scroll')) {\r\n if (($w.scrollTop() > scrollTrigger && !$stickyMenu.hasClass('visible') )) {\r\n $stickyMenu.addClass('visible');\r\n $stickyMenu.addClass('scroll-in-view');\r\n } else if ( $w.scrollTop() < scrollTrigger ) {\r\n $stickyMenu.removeClass('scroll-in-view');\r\n if ( !$fixedMenuToggle.hasClass('active') ) {\r\n $stickyMenu.removeClass('visible');\r\n }\r\n }\r\n }\r\n });\r\n\r\n $w.trigger('scroll');\r\n});\r\n\r\njQuery(window).on('load',function(){\r\n jQuery('body').addClass('loaded');\r\n});"],"sourceRoot":""}