/*! * Angular Material Design * https://github.com/angular/material * @license MIT * v1.0.5-master-f171fd2 */ !function(t,e,n){"use strict";function i(t){return{restrict:"E",compile:function(e){return e[0].setAttribute("role","list"),t}}}function r(t,n,i,r){var o=["md-checkbox","md-switch"];return{restrict:"E",controller:"MdListController",compile:function(a,c){function s(){for(var t,e,n=["md-switch","md-checkbox"],i=0;e=n[i];++i)if((t=a.find(e)[0])&&!t.hasAttribute("aria-label")){var r=a.find("p")[0];if(!r)return;t.setAttribute("aria-label","Toggle "+r.textContent)}}function l(t){var n;if("div"==t)n=e.element('<div class="_md-no-style _md-list-item-inner">'),n.append(a.contents()),a.addClass("_md-proxy-focus");else{n=e.element('<button class="md-button _md-no-style"> <div class="_md-list-item-inner"></div></button>');var i=e.element('<md-button class="_md-no-style" md-no-focus-style></md-button>');i[0].setAttribute("aria-label",a[0].textContent),m(a[0],i[0]),n.prepend(i),n.children().eq(1).append(a.contents()),a.addClass("_md-button-wrap")}a[0].setAttribute("tabindex","-1"),a.append(n)}function d(){if(1===g.length)u(g[0],a);else if(g.length>1){var t=e.element('<div class="_md-secondary-container">');e.forEach(g,function(e){u(e,t,!0)}),a.append(t)}}function u(n,i,r){if(n&&!b(n)&&n.hasAttribute("ng-click")){t.expect(n,"aria-label");var o;o=r?e.element('<md-button class="md-icon-button">'):e.element('<md-button class="_md-secondary-container md-icon-button">'),m(n,o[0]),n.setAttribute("tabindex","-1"),n.classList.remove("md-secondary"),o.append(n),n=o[0]}n&&(n.hasAttribute("ng-click")||c.ngClick&&f(n))&&(r&&n.classList.remove("md-secondary"),a.addClass("md-with-secondary"),i.append(n))}function m(t,n){var i=["ng-if","ng-click","aria-label","ng-disabled","ui-sref","href","ng-href","ng-attr-ui-sref"];e.forEach(i,function(e){t.hasAttribute(e)&&(n.setAttribute(e,t.getAttribute(e)),t.removeAttribute(e))})}function f(t){return-1!=o.indexOf(t.nodeName.toLowerCase())}function b(t){var e=t.nodeName.toUpperCase();return"MD-BUTTON"==e||"BUTTON"==e}function h(t,a,c,s){function l(t){for(var e=t.attributes,n=0;n<e.length;n++)if("ngClick"===c.$normalize(e[n].name))return!0;return!1}function d(){var t=a.children();t.length&&!t[0].hasAttribute("ng-click")&&e.forEach(o,function(t){e.forEach(f.querySelectorAll(t),function(t){m.push(t)})})}function u(){(1==m.length||b)&&(a.addClass("md-clickable"),b||s.attachRipple(t,e.element(a[0].querySelector("._md-no-style"))))}var m=[],f=a[0].firstElementChild,b=f&&f.firstElementChild&&l(f.firstElementChild);d(),u(),a.hasClass("_md-proxy-focus")&&m.length&&e.forEach(m,function(n){n=e.element(n),t.mouseActive=!1,n.on("mousedown",function(){t.mouseActive=!0,r(function(){t.mouseActive=!1},100)}).on("focus",function(){t.mouseActive===!1&&a.addClass("md-focused"),n.on("blur",function e(){a.removeClass("md-focused"),n.off("blur",e)})})});var h=function(t){if("INPUT"!=t.target.nodeName&&"TEXTAREA"!=t.target.nodeName&&!t.target.isContentEditable){var e=t.which||t.keyCode;e==n.KEY_CODE.SPACE&&f&&(f.click(),t.preventDefault(),t.stopPropagation())}};b||m.length||f&&f.addEventListener("keypress",h),a.off("click"),a.off("keypress"),1==m.length&&f&&a.children().eq(0).on("click",function(t){var n=i.getClosest(t.target,"BUTTON");!n&&f.contains(t.target)&&e.forEach(m,function(n){t.target===n||n.contains(t.target)||e.element(n).triggerHandler("click")})}),t.$on("$destroy",function(){f&&f.removeEventListener("keypress",h)})}var p,v,g=a[0].querySelectorAll(".md-secondary");if(a[0].setAttribute("role","listitem"),c.ngClick||c.ngHref||c.href||c.uiSref||c.ngAttrUiSref)l("button");else{for(var C,y=0;C=o[y];++y)if(v=a[0].querySelector(C)){p=!0;break}p?l("div"):a[0].querySelector("md-button:not(.md-secondary):not(.md-exclude)")||a.addClass("_md-no-proxy")}return d(),s(),h}}}function o(t,e,n){function i(t,e){var i={};n.attach(t,e,i)}var r=this;r.attachRipple=i}e.module("material.components.list",["material.core"]).controller("MdListController",o).directive("mdList",i).directive("mdListItem",r),i.$inject=["$mdTheming"],r.$inject=["$mdAria","$mdConstant","$mdUtil","$timeout"],o.$inject=["$scope","$element","$mdListInkRipple"]}(window,window.angular);