text: /**
   * angular-strap
   * @version v2.3.3 - 2015-09-24
   * @link http://mgcrea.github.io/angular-strap
   * @author Olivier Louvignes <olivier@mg-crea.com> (https://github.com/mgcrea)
   * @license MIT License, http://www.opensource.org/licenses/MIT
   */
  'use strict';angular.module('mgcrea.ngStrap.helpers.dateParser',[]).provider('$dateParser',['$localeProvider',function(t){function e(){this.year=1970,this.month=0,this.day=1,this.hours=0,this.minutes=0,this.seconds=0,this.milliseconds=0}function n(){}function s(t){return!isNaN(parseFloat(t))&&isFinite(t)}function r(t,e){for(var n=t.length,s=e.toString().toLowerCase(),r=0;n>r;r++)if(t[r].toLowerCase()===s)return r;return-1}e.prototype.setMilliseconds=function(t){this.milliseconds=t},e.prototype.setSeconds=function(t){this.seconds=t},e.prototype.setMinutes=function(t){this.minutes=t},e.prototype.setHours=function(t){this.hours=t},e.prototype.getHours=function(){return this.hours},e.prototype.setDate=function(t){this.day=t},e.prototype.setMonth=function(t){this.month=t},e.prototype.setFullYear=function(t){this.year=t},e.prototype.fromDate=function(t){return this.year=t.getFullYear(),this.month=t.getMonth(),this.day=t.getDate(),this.hours=t.getHours(),this.minutes=t.getMinutes(),this.seconds=t.getSeconds(),this.milliseconds=t.getMilliseconds(),this},e.prototype.toDate=function(){return new Date(this.year,this.month,this.day,this.hours,this.minutes,this.seconds,this.milliseconds)};var i=e.prototype,o=this.defaults={format:'shortDate',strict:!1};this.$get=['$locale','dateFilter',function(t,a){var u=function(u){function h(t){var e,n=Object.keys(D),s=[],r=[],i=t;for(e=0;e<n.length;e++)if(t.split(n[e]).length>1){var o=i.search(n[e]);t=t.split(n[e]).join(''),D[n[e]]&&(s[o]=D[n[e]])}return angular.forEach(s,function(t){t&&r.push(t)}),r}function l(t){return t.replace(/\//g,'[\\/]').replace('/-/g','[-]').replace(/\./g,'[.]').replace(/\\s/g,'[\\s]')}function c(t){var e,n=Object.keys(p),s=t;for(e=0;e<n.length;e++)s=s.split(n[e]).join('${'+e+'}');for(e=0;e<n.length;e++)s=s.split('${'+e+'}').join('('+p[n[e]]+')');return t=l(t),new RegExp('^'+s+'$',['i'])}var f,M,g=angular.extend({},o,u),m={},p={sss:'[0-9]{3}',ss:'[0-5][0-9]',s:g.strict?'[1-5]?[0-9]':'[0-9]|[0-5][0-9]',mm:'[0-5][0-9]',m:g.strict?'[1-5]?[0-9]':'[0-9]|[0-5][0-9]',HH:'[01][0-9]|2[0-3]',H:g.strict?'1?[0-9]|2[0-3]':'[01]?[0-9]|2[0-3]',hh:'[0][1-9]|[1][012]',h:g.strict?'[1-9]|1[012]':'0?[1-9]|1[012]',a:'AM|PM',EEEE:t.DATETIME_FORMATS.DAY.join('|'),EEE:t.DATETIME_FORMATS.SHORTDAY.join('|'),dd:'0[1-9]|[12][0-9]|3[01]',d:g.strict?'[1-9]|[1-2][0-9]|3[01]':'0?[1-9]|[1-2][0-9]|3[01]',MMMM:t.DATETIME_FORMATS.MONTH.join('|'),MMM:t.DATETIME_FORMATS.SHORTMONTH.join('|'),MM:'0[1-9]|1[012]',M:g.strict?'[1-9]|1[012]':'0?[1-9]|1[012]',yyyy:'[1]{1}[0-9]{3}|[2]{1}[0-9]{3}',yy:'[0-9]{2}',y:g.strict?'-?(0|[1-9][0-9]{0,3})':'-?0*[0-9]{1,4}'},D={sss:i.setMilliseconds,ss:i.setSeconds,s:i.setSeconds,mm:i.setMinutes,m:i.setMinutes,HH:i.setHours,H:i.setHours,hh:i.setHours,h:i.setHours,EEEE:n,EEE:n,dd:i.setDate,d:i.setDate,a:function(t){var e=this.getHours()%12;return this.setHours(t.match(/pm/i)?e+12:e)},MMMM:function(e){return this.setMonth(r(t.DATETIME_FORMATS.MONTH,e))},MMM:function(e){return this.setMonth(r(t.DATETIME_FORMATS.SHORTMONTH,e))},MM:function(t){return this.setMonth(1*t-1)},M:function(t){return this.setMonth(1*t-1)},yyyy:i.setFullYear,yy:function(t){return this.setFullYear(2e3+1*t)},y:function(t){return 50>=1*t&&2===t.length?this.setFullYear(2e3+1*t):this.setFullYear(1*t)}};return m.init=function(){m.$format=t.DATETIME_FORMATS[g.format]||g.format,f=c(m.$format),M=h(m.$format)},m.isValid=function(t){return angular.isDate(t)?!isNaN(t.getTime()):f.test(t)},m.parse=function(n,s,r,i){r&&(r=t.DATETIME_FORMATS[r]||r),angular.isDate(n)&&(n=a(n,r||m.$format,i));var o=r?c(r):f,u=r?h(r):M,l=o.exec(n);if(!l)return!1;for(var g=s&&!isNaN(s.getTime())?(new e).fromDate(s):(new e).fromDate(new Date(1970,0,1,0)),p=0;p<l.length-1;p++)u[p]&&u[p].call(g,l[p+1]);var D=g.toDate();return parseInt(g.day,10)!==D.getDate()?!1:D},m.getDateForAttribute=function(t,e){var n;if('today'===e){var r=new Date;n=new Date(r.getFullYear(),r.getMonth(),r.getDate()+('maxDate'===t?1:0),0,0,0,'minDate'===t?0:-1)}else n=angular.isString(e)&&e.match(/^".+"$/)?new Date(e.substr(1,e.length-2)):s(e)?new Date(parseInt(e,10)):angular.isString(e)&&0===e.length?'minDate'===t?-(1/0):+(1/0):new Date(e);return n},m.getTimeForAttribute=function(t,e){var n;return n='now'===e?(new Date).setFullYear(1970,0,1):angular.isString(e)&&e.match(/^".+"$/)?new Date(e.substr(1,e.length-2)).setFullYear(1970,0,1):s(e)?new Date(parseInt(e,10)).setFullYear(1970,0,1):angular.isString(e)&&0===e.length?'minTime'===t?-(1/0):+(1/0):m.parse(e,new Date(1970,0,1,0))},m.daylightSavingAdjust=function(t){return t?(t.setHours(t.getHours()>12?t.getHours()+2:0),t):null},m.timezoneOffsetAdjust=function(t,e,n){return t?(e&&'UTC'===e&&(t=new Date(t.getTime()),t.setMinutes(t.getMinutes()+(n?-1:1)*t.getTimezoneOffset())),t):null},m.init(),m};return u}]}]);
  //# sourceMappingURL=../modules/date-parser.min.js.map