/*! * Angular Material Design * https://github.com/angular/material * @license MIT * v0.10.0 */ !function(e,t,n){"use strict";function r(e){function n(e){e.addClass("md-menu");var t=e.children()[0];if(t.hasAttribute("ng-click")||(t=t.querySelector("[ng-click]")),t&&t.setAttribute("aria-haspopup","true"),2!=e.children().length)throw Error("Invalid HTML for md-menu. Expected two children elements.");return r}function r(e,n,r,o){var i=t.element('
'),a=n.children()[1];i.append(a),o.init(i),e.$on("$destroy",function(){o.isOpen&&(i.remove(),o.close())})}return{restrict:"E",require:"mdMenu",controller:"mdMenuCtrl",scope:!0,compile:n}}function o(e,t,n,r){var o,i,a=this;this.init=function(e){o=e,i=n[0].querySelector("[ng-click]")},this.open=function(){a.isOpen=!0,i.setAttribute("aria-expanded","true"),e.show({mdMenuCtrl:a,element:o,target:n[0]})},r.$mdOpenMenu=this.open,this.close=function(t){a.isOpen=!1,i.setAttribute("aria-expanded","false"),e.hide(),t||n.children()[0].focus()},this.positionMode=function(){var e=(t.mdPositionMode||"target").split(" ");return 1==e.length&&e.push(e[0]),{left:e[0],top:e[1]}},this.offsets=function(){var e=(t.mdOffset||"0 0").split(" ").map(parseFloat);if(2==e.length)return{left:e[0],top:e[1]};if(1==e.length)return{top:e[0],left:e[0]};throw Error("Invalid offsets specified. Please follow format or ")}}function i(e){function r(e,r,i,a,l,d,s){function c(n,o,s){function c(){if(!s.target)throw Error("$mdMenu.show() expected a target to animate from in options.target");t.extend(s,{alreadyOpen:!1,isRemoved:!1,target:t.element(s.target),parent:t.element(s.parent),menuContentEl:t.element(o[0].querySelector("md-menu-content")),backdrop:s.hasBackdrop&&t.element('')})}function u(){s.resizeFn=function(){p(o,s)},t.element(r).on("resize",s.resizeFn),t.element(r).on("orientationchange",s.resizeFn)}function f(){s.parent.append(o),o.removeClass("md-leave"),e(function(){e(function(){p(o,s),e(function(){o.addClass("md-active"),s.alreadyOpen=!0,o[0].style[d.CSS.TRANSFORM]=""})})})}function h(){o.addClass("md-clickable"),s.backdrop&&s.backdrop.on("click",function(e){e.preventDefault(),e.stopPropagation(),s.mdMenuCtrl.close(!0)}),s.menuContentEl.on("keydown",function(e){n.$apply(function(){switch(e.keyCode){case d.KEY_CODE.ESCAPE:s.mdMenuCtrl.close();break;case d.KEY_CODE.UP_ARROW:m(e,s.menuContentEl,s,-1);break;case d.KEY_CODE.DOWN_ARROW:m(e,s.menuContentEl,s,1)}})}),s.menuContentEl.on("click",function(e){function t(){n.$apply(function(){s.mdMenuCtrl.close()})}var r=e.target;do if(r&&r.hasAttribute("ng-click")){r.hasAttribute("disabled")||t();break}while((r=r.parentNode)&&r!=s.menuContentEl)});var e=s.menuContentEl[0].querySelector("[md-menu-focus-target]");e||(e=s.menuContentEl[0].firstElementChild.firstElementChild),e.focus()}return c(s),a.inherit(s.menuContentEl,s.target),u(),s.disableParentScroll&&(s.restoreScroll=i.disableScrollAround(s.element)),l(h,75,!1),s.backdrop&&(a.inherit(s.backdrop,s.parent),s.parent.append(s.backdrop)),f(),i.transitionEndPromise(o,{timeout:350})}function m(e,t,n,r){for(var o=i.getClosest(e.target,"MD-MENU-ITEM"),a=i.nodesToArray(t[0].children),l=a.indexOf(o),d=l+r;d>=0&&d