/*! * AngularJS Material Design * https://github.com/angular/material * @license MIT * v1.1.8-master-aba7b2b */ !function(e,t,n){"use strict";function r(e,r,i,o,l,a,d,c){function u(c,u){var p=t.element("");p.append(''),p.addClass("md-select-value"),p[0].hasAttribute("id")||p.attr("id","select_value_label_"+r.nextUid());var f=c.find("md-content");if(f.length||c.append(t.element("").append(c.contents())),f.attr("role","presentation"),u.mdOnOpen&&(c.find("md-content").prepend(t.element('
')),c.find("md-option").attr("ng-show","$$loadingAsyncDone")),u.name){var m=t.element('');m.attr({name:u.name,"aria-hidden":"true",tabindex:"-1"});var h=c.find("md-option");t.forEach(h,function(e){var n=t.element("");e.hasAttribute("ng-value")?n.attr("ng-value",e.getAttribute("ng-value")):e.hasAttribute("value")&&n.attr("value",e.getAttribute("value")),m.append(n)}),m.append(''),c.parent().append(m)}var g=r.parseAttributeBoolean(u.multiple),v=g?"multiple":"",b='';return b=r.supplant(b,[v,c.html()]),c.empty().append(p),c.append(b),u.tabindex||u.$set("tabindex",0),function(c,u,p,f){function m(){var e=u.attr("aria-label")||u.attr("placeholder");!e&&S&&S.label&&(e=S.label.text()),k=e,l.expect(u,"aria-label",e)}function h(){V&&(B=B||V.find("md-select-menu").controller("mdSelectMenu"),x.setLabelText(B.selectedLabels()))}function v(){if(k){var e=B.selectedLabels({mode:"aria"});u.attr("aria-label",e.length?k+": "+e:k)}}function b(){S&&S.setHasValue(B.selectedLabels().length>0||(u[0].validity||{}).badInput)}function $(){if(V=t.element(u[0].querySelector(".md-select-menu-container")),P=c,p.mdContainerClass){var e=V[0].getAttribute("class")+" "+p.mdContainerClass;V[0].setAttribute("class",e)}B=V.find("md-select-menu").controller("mdSelectMenu"),B.init(A,p.ngModel),u.on("$destroy",function(){V.remove()})}function y(e){if(i.isNavigationKey(e))e.preventDefault(),C(e);else if(s(e,i)){e.preventDefault();var n=B.optNodeForKeyboardSearch(e);if(!n||n.hasAttribute("disabled"))return;var r=t.element(n).controller("mdOption");B.isMultiple||B.deselect(Object.keys(B.selected)[0]),B.select(r.hashKey,r.value),B.refreshViewValue()}}function C(){P._mdSelectIsOpen=!0,u.attr("aria-expanded","true"),e.show({scope:P,preserveScope:!0,skipCompile:!0,element:V,target:u[0],selectCtrl:x,preserveElement:!0,hasBackdrop:!0,loadingAsync:!!p.mdOnOpen&&(c.$eval(p.mdOnOpen)||!0)})["finally"](function(){P._mdSelectIsOpen=!1,u.focus(),u.attr("aria-expanded","false"),A.$setTouched()})}var w,k,M=!0,S=f[0],x=f[1],A=f[2],O=f[3],E=u.find("md-select-value"),T=t.isDefined(p.readonly),D=r.parseAttributeBoolean(p.mdNoAsterisk);if(D&&u.addClass("md-no-asterisk"),S){var R=S.isErrorGetter||function(){return A.$invalid&&(A.$touched||O&&O.$submitted)};if(S.input&&u.find("md-select-header").find("input")[0]!==S.input[0])throw new Error(" can only have *one* child ,