(function() { "use strict"; angular.module('shared') .component('menuItemPopover', { templateUrl: '/shared/js/angular/main-navigation/menu-item-popover.html', controller: 'MenuItemPopover', transclude: true, bindings: { buttonClass: '@?', itemClass: '@', menuItemName: '@', parentMenuItemName: '@?', headingLevel: ' -1 && menuItemPopoverAmbassador.getInitFirstSubMenuOpen(); if (ctrl.isResponsiveMainNavEnabled) { return initOpen && ($window.innerWidth > ctrl.responsiveWidthLimit); } return initOpen; } function shouldAddClass() { if (ctrl.popoverCtrl.isOpen()) { return ctrl.buttonClass && ctrl.buttonClass.indexOf('js-last') === -1; } return ctrl.buttonClass; } function onMouseMove(event) { ctrl.popoverCtrl.triangleCoordinates = menuItemPopoverAmbassador.getTriangleCoordinates(event); } function onUpdateActiveMenuItem(event, eventTarget) { var isChild = $element.find(eventTarget).length > 0; if (isChild && !ctrl.popoverCtrl.isOpen()) { ctrl.popoverCtrl.open(true); menuItemPopoverAmbassador.emitActivatedMenuItem(eventTarget); } } function onActivatedMenuItem(event, eventTarget) { var isChild = $element.find(eventTarget).length > 0; if (!isChild && ctrl.popoverCtrl.isOpen()) { $scope.$apply(function() { ctrl.close(); }); } } } ]) })();