/*! * Angular Material Design * https://github.com/angular/material * @license MIT * v0.10.0 */ !function(n,e,i){"use strict";!function(){function n(){function n(n,e){e.prepend('
')}function e(n,e,i){function t(){s.direction=s.direction||"down",s.isOpen=s.isOpen||!1}function o(){e.on("mouseenter",s.open),e.on("mouseleave",s.close)}function a(){n.$watch("vm.direction",function(n,t){i.removeClass(e,"md-"+t),i.addClass(e,"md-"+n)}),n.$watch("vm.isOpen",function(n){var t=n?"md-is-open":"",o=n?"":"md-is-open";i.setClass(e,t,o)})}var s=this;s.open=function(){n.$apply("vm.isOpen = true")},s.close=function(){n.$apply("vm.isOpen = false")},t(),o(),a()}return e.$inject=["$scope","$element","$animate"],{restrict:"E",scope:{direction:"@?mdDirection",isOpen:"=?mdOpen"},bindToController:!0,controller:e,controllerAs:"vm",link:n}}function i(){function n(n){var i=n[0],t=n.controller("mdFabSpeedDial"),o=i.querySelectorAll(".md-fab-action-item"),a=i.querySelector(".md-css-variables"),s=a.style.zIndex;e.forEach(o,function(n,e){var i=n.style;i.transform="",i.transitionDelay="",i.opacity=1,n.style.zIndex=o.length-e+s}),t.isOpen||e.forEach(o,function(n,e){var i,o;switch(t.direction){case"up":i=n.scrollHeight*(e+1),o="Y";break;case"down":i=-n.scrollHeight*(e+1),o="Y";break;case"left":i=n.scrollWidth*(e+1),o="X";break;case"right":i=-n.scrollWidth*(e+1),o="X"}n.style.transform="translate"+o+"("+i+"px)"})}return{addClass:function(e,i,t){e.hasClass("md-fling")&&n(e)},removeClass:function(e,i,t){n(e)}}}function t(){function n(n){var t=n[0],o=n.controller("mdFabSpeedDial"),a=t.querySelectorAll(".md-fab-action-item");e.forEach(a,function(n,e){var t=n.style,s=e*i;t.opacity=o.isOpen?1:0,t.transform=o.isOpen?"scale(1)":"scale(0)",t.transitionDelay=(o.isOpen?s:a.length-s)+"ms"})}var i=65;return{addClass:function(e,i,t){n(e)},removeClass:function(e,i,t){n(e)}}}e.module("material.components.fabSpeedDial",["material.core","material.components.fabTrigger","material.components.fabActions"]).directive("mdFabSpeedDial",n).animation(".md-fling",i).animation(".md-scale",t)}()}(window,window.angular);