Epic-231:versioning, and backup the configuration
[sdnc/oam.git] / configbackuprestore / vnfconfigbackupservice / src / main / webapp / node_modules / ng-ip-address / ngIpAddress.vanilla.min.js
1 !function(){"use strict";angular.module("ng-ip-address",[]).directive("ngIpAddress",function(){return{restrict:"A",require:"?ngModel",link:function(e,i,n,r){function t(e){return!isNaN(parseFloat(e))&&isFinite(e)}if(r){var h=new RegExp("^0","g"),c=new RegExp("^\\.","g"),s=new RegExp("\\.\\.+","g"),u=0,a=!1;i.bind("keydown",function(e){17!==e.which&&91!==e.which||(a=!0)}),i.bind("keyup",function(e){17!==e.which&&91!==e.which||(a=!1)}),i.bind("keypress",function(e){(e.which<46&&0!==e.which&&8!==e.which&&13!==e.which||47===e.which||e.which>57&&(!a||99!==e.which&&118!==e.which&&120!==e.which))&&e.preventDefault()}),r.$parsers.push(function(e){if(!e)return r.$setValidity("ipAddress",!0),e;u=i[0].selectionStart;var n=!0,a=(e=(e=e.replace(c,"")).replace(s,".")).split("."),d=a.length;d<4?n=!1:d>4&&(a.length=4,d=4);for(var l=0;l<d;l++){var w=a[l];w.length>1?(!t(w=w.replace(h,"").substring(0,3))||w>255)&&(n=!1):w||(n=!1),a[l]=w}return e=a.join("."),r.$setValidity("ipAddress",n),r.$setViewValue(e),r.$render(),i[0].setSelectionRange(u,u),e})}}}})}();