UNPKG

ng-timeparser

Version:

[![npm version](https://badge.fury.io/js/ng-timeparser.svg)](https://badge.fury.io/js/ng-timeparser) [![Build Status](https://travis-ci.org/feeloor/ng-timeparser.svg?branch=master)](https://travis-ci.org/feeloor/ng-timeparser)

2 lines 3.07 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common")):"function"==typeof define&&define.amd?define("ng-timeparser",["exports","@angular/core","@angular/common"],t):t(e["ng-timeparser"]={},e.ng.core,e.ng.common)}(this,function(e,t,r){"use strict";var n=function(){function e(){}return e.prototype.parseTime=function(e,t){void 0===t&&(t=!1);var r="",n=!1,i=e;return t?new RegExp(/^[0-2][0-9]:[0-5][0-9]$/).test(i)?n=!0:new RegExp(/^[0-2][0-9][0-5][0-9]$/).test(i)?n=!0:new RegExp(/^[0-2][0-9]:[0-5]$/).test(i)?(n=!0,i+="0"):new RegExp(/^[0-2][0-9][0-5]$/).test(i)?(n=!0,i+="0"):new RegExp(/^[0-9]:[0-5][0-9]$/).test(i)?(n=!0,i="0"+i):new RegExp(/^[0-9][0-5][0-9]$/).test(i)?(n=!0,i="0"+i):new RegExp(/^[0-2][0-9]/).test(i)?(n=!0,i+="00"):new RegExp(/^[0-9]/).test(i)&&(n=!0,i="0"+i+"00"):new RegExp(/^[2-9][0-9].*$/).test(i)&&3!==(i.match(/\d/g)||[]).length?(n=!1,i=""):new RegExp(/^[0-1][0-9]:[0-5][0-9].*$/).test(i)?(n=!0,i=this.addAMorPM(i,0,5)):new RegExp(/^[0-1][0-9][0-5][0-9].*$/).test(i)?(n=!0,i=this.addAMorPM(i,0,4)):new RegExp(/^[0-9]:[0-5][0-9].*$/).test(i)?(n=!0,i="0"+this.addAMorPM(i,0,4)):new RegExp(/^[0-9][0-5][0-9].*$/).test(i)?(n=!0,i="0"+this.addAMorPM(i,0,3)):new RegExp(/^[0-1][0-2].*$/).test(i)?(n=!0,i=this.addAMorPM(i,0,2)):new RegExp(/^[0-9].*$/).test(i)&&(n=!0,i=this.addAMorPM(i,0,1)),n?(i=i.toUpperCase(),i=this.makeTime4Digit(i),r=this.addColonIfMissing(i),t&&(r=r.substring(0,5))):r="",r},e.prototype.makeTime4Digit=function(e){var t="",r=e;return new RegExp(/PM/i).test(e)?(t="PM",r=r.replace(/PM/i,"")):new RegExp(/AM/i).test(e)&&(t="AM",r=r.replace(/AM/i,"")),1===(r=(r=r.replace(":","")).replace(/ /g,"")).length?r="0"+r+"00":2===r.length?r+="00":3===r.length&&(new RegExp(/^[0-1][0-9][0-5]/).test(r)?r+="0":new RegExp(/^[0-9][0-5][0-9]/).test(r)&&(r="0"+r)),r+(t?" "+t:"")},e.prototype.addColonIfMissing=function(e){return-1===e.indexOf(":")?e.substring(0,2)+":"+e.substring(2):e},e.prototype.addAMorPM=function(e,t,r){return new RegExp(/PM/i).test(e)?e.substring(t,r)+" PM":new RegExp(/AM/i).test(e)?e.substring(t,r)+" AM":e.substring(t,r)+" PM"},e.decorators=[{type:t.Injectable}],e.ctorParameters=function(){return[]},e}(),i=function(){function e(e){this.timeParserService=e,this.ngModelChange=new t.EventEmitter,this.militaryTime=this.militaryTime||!1}return e.prototype.onBlur=function(e){this.ngModelChange.emit(this.timeParserService.parseTime(e.target.value,this.militaryTime))},e.decorators=[{type:t.Directive,args:[{selector:"[timeParser]"}]}],e.ctorParameters=function(){return[{type:n}]},e.propDecorators={militaryTime:[{type:t.Input}],ngModelChange:[{type:t.Output}],onBlur:[{type:t.HostListener,args:["blur",["$event"]]}]},e}(),s=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[r.CommonModule],declarations:[i],providers:[n],exports:[i]}]}],e}();e.TimeParserDirective=i,e.TimeParserService=n,e.TimeParserModule=s,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=ng-timeparser.umd.min.js.map