1angular.module("universal-mega-menu",[]).constant("EVENT_MEGA_MENU_OPEN","megaMenuOpen").controller("universalMegaMenuCtrl",["$scope",function($scope){}]).directive("megaMenuItem",["$window","EVENT_MEGA_MENU_OPEN",function($window,EVENT_MEGA_MENU_OPEN){return{restrict:"C",scope:true,link:function(scope,element,attrs){scope.isOpen=false;scope.isFocused=false;scope.expanderColour="#ffffff";var childMenu=element.find(".mega-menu__child").first();var animationSpeed=200;var breakpoint=parseInt(getComputedStyle(document.body).getPropertyValue("--universal-mega-menu-breakpoint"), 210)||1024;var setState=function(state){if(angular.element($window).outerWidth()<breakpoint)return;scope.isOpen=!!state;scope.$emit(EVENT_MEGA_MENU_OPEN,scope.isOpen);scope.$broadcast(EVENT_MEGA_MENU_OPEN,scope.isOpen);scope.isOpen?$("html").addClass("mega-menu--open"):$("html").removeClass("mega-menu--open")};var doAnimation=function(){if(scope.isOpen)childMenu.stop().slideDown(animationSpeed);else childMenu.stop().slideUp(animationSpeed)};scope.toggle=function(){if(angular.element($window).outerWidth()< 3breakpoint){scope.isOpen=!scope.isOpen;if(scope.isOpen)scope.expanderColour="#00148C";else scope.expanderColour="#ffffff";doAnimation()}};scope.accessibleToggle=function(event){if(scope.isFocused&&event.which===13)scope.isOpen=!scope.isOpen};
3scope.focusExpander=function(){scope.isFocused=true};scope.blurExpander=function(){scope.isFocused=false};scope.toggleDesktop=function(){if(angular.element($window).outerWidth()>=breakpoint)setState(!scope.isOpen)};scope.open=function(){setState(true)};scope.close= 4function(){setState(false)};if(breakpoint){let mq=$window.matchMedia("(min-width: "+breakpoint+"px)");$($window).on("resize",function(){if(mq.matches){$("nav.mega-menu").css("height","");$("nav.mega-menu .mega-menu__child").attr("style",null);scope.isOpen=false}})}}}}]);
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.