blob: b1339eec757380de41f91e92fcaf091e5b7c0ac9 [file] [log] [blame]
/*!
* Angular Material Design
* https://github.com/angular/material
* @license MIT
* v1.0.0-master-19c11fd
*/
!function(e,i,n){"use strict";function t(e,n,t,c,d,o){function a(a,r){return r.type="checkbox",r.tabindex=r.tabindex||"0",a.attr("role",r.type),a.on("click",function(e){this.hasAttribute("disabled")&&e.stopImmediatePropagation()}),function(a,r,u,l){function m(e,i,n){u[e]&&a.$watch(u[e],function(e){n[e]&&r.attr(i,n[e])})}function f(e){var i=e.which||e.keyCode;(i===t.KEY_CODE.SPACE||i===t.KEY_CODE.ENTER)&&(e.preventDefault(),r.hasClass("md-focused")||r.addClass("md-focused"),p(e))}function p(e){r[0].hasAttribute("disabled")||a.$apply(function(){var i=u.ngChecked?u.checked:!l.$viewValue;l.$setViewValue(i,e&&e.type),l.$render()})}function v(){l.$viewValue?r.addClass(s):r.removeClass(s)}l=l||d.fakeNgModel(),c(r),u.ngChecked&&a.$watch(a.$eval.bind(a,u.ngChecked),l.$setViewValue.bind(l)),m("ngDisabled","tabindex",{"true":"-1","false":u.tabindex}),n.expectWithText(r,"aria-label"),e.link.pre(a,{on:i.noop,0:{}},u,[l]),a.mouseActive=!1,r.on("click",p).on("keypress",f).on("mousedown",function(){a.mouseActive=!0,o(function(){a.mouseActive=!1},100)}).on("focus",function(){a.mouseActive===!1&&r.addClass("md-focused")}).on("blur",function(){r.removeClass("md-focused")}),l.$render=v}}e=e[0];var s="md-checked";return{restrict:"E",transclude:!0,require:"?ngModel",priority:210,template:'<div class="md-container" md-ink-ripple md-ink-ripple-checkbox><div class="md-icon"></div></div><div ng-transclude class="md-label"></div>',compile:a}}i.module("material.components.checkbox",["material.core"]).directive("mdCheckbox",t),t.$inject=["inputDirective","$mdAria","$mdConstant","$mdTheming","$mdUtil","$timeout"]}(window,window.angular);