whitesource
Version:
whitesource node module
7 lines • 1.59 kB
JavaScript
/*!
* angular-ui-validate
* https://github.com/angular-ui/ui-validate
* Version: 1.0.0 - 2015-07-02T16:16:08.704Z
* License: MIT
*/
!function(){"use strict";angular.module("ui.validate",[]).directive("uiValidate",function(a){return{restrict:"A",require:"ngModel",link:function(i,n,t,u){var e,r=i.$eval(t.uiValidate);r&&(angular.isString(r)&&(r={validator:r}),angular.forEach(r,function(a,n){e=function(t,e){var r=i.$eval(a,{$value:t,$modelValue:t,$viewValue:e});return angular.isObject(r)&&angular.isFunction(r.then)?(r.then(function(){u.$setValidity(n,!0)},function(){u.$setValidity(n,!1)}),!0):r},u.$validators[n]=e}),t.uiValidateWatch&&a(i,u,i.$eval(t.uiValidateWatch)))}}}).directive("uiValidateAsync",function(a,i,n){return{restrict:"A",require:"ngModel",link:function(i,t,u,e){var r,l=i.$eval(u.uiValidateAsync);l&&(angular.isString(l)&&(l={validatorAsync:l}),angular.forEach(l,function(a,t){r=function(t,u){var e=i.$eval(a,{$value:t,$modelValue:t,$viewValue:u});return angular.isObject(e)&&angular.isFunction(e.then)?e:n(function(a,i){setTimeout(function(){e?a():i()},0)})},e.$asyncValidators[t]=r}),u.uiValidateWatch&&a(i,e,i.$eval(u.uiValidateWatch)))}}}).service("$$uiValidateApplyWatch",function(){return function(a,i,n){angular.isString(n)?a.$watch(n,function(){i.$validate()}):angular.isArray(n)?angular.forEach(n,function(n){a.$watch(n,function(){i.$validate()})}):angular.isObject(n)&&angular.forEach(n,function(n){angular.isString(n)&&a.$watch(n,function(){i.$validate()}),angular.isArray(n)&&angular.forEach(n,function(n){a.$watch(n,function(){i.$validate()})})})}})}();