UNPKG

angular-moment-picker

Version:

Angular Moment Picker is an AngularJS directive for date and time picker using Moment.js

2 lines 24.1 kB
/*! Angular Moment Picker - v0.10.2 - http://indrimuska.github.io/angular-moment-picker - (c) 2015 Indri Muska - MIT */ !function(e){function t(o){if(i[o])return i[o].exports;var n=i[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,t),n.l=!0,n.exports}var i={};t.m=e,t.c=i,t.i=function(e){return e},t.d=function(e,i,o){t.o(e,i)||Object.defineProperty(e,i,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var i=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(i,"a",i),i},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=17)}([function(e,t,i){"use strict";t.__esModule=!0;var o=i(1),n=i(2);t.KEYS={up:38,down:40,left:37,right:39,escape:27,enter:13},t.isValidMoment=function(e){return n.isMoment(e)&&e.isValid()},t.toValue=function(e,i,o){var n=e;return t.isValidMoment(e)||(n=t.toMoment(e,i,o)),t.momentToValue(n,i)},t.toMoment=function(e,i,o){var s=n(e,i,o);return t.isValidMoment(s)||(s=void 0),s},t.momentToValue=function(e,i){if(t.isValidMoment(e))return i?e.format(i):e.valueOf()},t.valueToMoment=function(e,t){var i;if(!e)return i;if(i=t.format?n(e,t.format,t.locale):n(e),t.model){var s=t.views.all.slice(0,t.views.all.indexOf(t.detectedMinView));o.forEach(s,function(e){var o=t.views.precisions[e];i[o](t.model[o]())})}return i},t.setValue=function(e,i,o,n){var s=t.isValidMoment(e)?e.clone():t.valueToMoment(e,i),r=t.momentToValue(s,i.format);i.model=t.updateMoment(i.model,s,i),o.$modelValue=t.updateMoment(o.$modelValue,s,i),n.ngModel!=n.momentPicker&&(i.value=r),n.ngModel&&(o.$setViewValue(r),o.$render())},t.updateMoment=function(e,i,n){if(t.isValidMoment(e)&&i){if(!e.isSame(i)){var s=n.views.all.slice(0,n.views.all.indexOf(n.detectedMaxView)+1);o.forEach(s,function(t){var o=n.views.precisions[t];e[o](i[o]())})}}else e=i;return e}},function(e,t){e.exports=angular},function(e,t){e.exports=moment},function(e,t){},function(e,t){},function(e,t,i){"use strict";t.__esModule=!0;var o=i(1),n=i(9);t.Provider=n.default;var s=i(7);t.Directive=s.default,o.module("moment-picker",[]).provider("momentPicker",[function(){return new n.default}]).directive("momentPicker",["$timeout","$sce","$log","$window","momentPicker","$compile","$templateCache",function(e,t,i,o,n,r,a){return new s.default(e,t,i,o,n,r,a)}])},function(e,t){e.exports='<div class=moment-picker> <div class="moment-picker-container {{view.selected}}-view" ng-class="{\'moment-picker-disabled\': disabled, open: view.isOpen}"> <div ng-if=additions.top class="moment-picker-addition top"></div> <table class=header-view ng-if=showHeader> <thead> <tr> <th ng-class="{disabled: !view.previous.selectable}" ng-bind-html=view.previous.label ng-click=view.previous.set()></th> <th ng-bind=view.title ng-click=view.setParentView()></th> <th ng-class="{disabled: !view.next.selectable}" ng-bind-html=view.next.label ng-click=view.next.set()></th> </tr> </thead> </table> <div class=moment-picker-specific-views> <table> <thead ng-if=views[view.selected].headers> <tr> <th ng-repeat="header in views[view.selected].headers" ng-bind=header></th> </tr> </thead> <tbody> <tr ng-repeat="row in views[view.selected].rows"> <td ng-repeat="item in row track by item.index" ng-class=item.class ng-bind=item.label ng-click="!disabled && views[view.selected].set(item)"></td> </tr> </tbody> </table> </div> <div ng-if=additions.bottom class="moment-picker-addition bottom"></div> </div> </div>'},function(e,t,i){"use strict";t.__esModule=!0;var o=i(1),n=i(2),s=i(8),r=i(13),a=i(0),l=i(6),c=function(){function e(e,t,i,c,d,m,u){var h=this;this.$timeout=e,this.$sce=t,this.$log=i,this.$window=c,this.provider=d,this.$compile=m,this.$templateCache=u,this.restrict="A",this.require="?ngModel",this.transclude=!0,this.template=l,this.scope={value:"=?momentPicker",model:"=?ngModel",locale:"@?",format:"@?",minView:"@?",maxView:"@?",startView:"@?",minDate:"=?",maxDate:"=?",startDate:"=?",disabled:"=?disable",position:"@?",inline:"@?",validate:"=?",autoclose:"=?",setOnSelect:"=?",isOpen:"=?",today:"=?",keyboard:"=?",showHeader:"=?",additions:"=?",change:"&?",selectable:"&?"},this.link=function(e,t,i,l,c){c(function(c){o.forEach(["locale","format","minView","maxView","startView","position","inline","validate","autoclose","setOnSelect","today","keyboard","showHeader","leftArrow","rightArrow","additions"],function(t){o.isDefined(e[t])||(e[t]=h.provider[t]),o.isDefined(i[t])||(i[t]=e[t])}),i.ngModel||(l={}),e.limits={minDate:a.toMoment(e.minDate,e.format,e.locale),maxDate:a.toMoment(e.maxDate,e.format,e.locale),isAfterOrEqualMin:function(t,i){return!o.isDefined(e.limits.minDate)||t.isAfter(e.limits.minDate,i)||t.isSame(e.limits.minDate,i)},isBeforeOrEqualMax:function(t,i){return!o.isDefined(e.limits.maxDate)||t.isBefore(e.limits.maxDate,i)||t.isSame(e.limits.maxDate,i)},isSelectable:function(t,n){var s=!0;try{o.isFunction(e.selectable)&&i.selectable&&(s=e.selectable({date:t,type:n}))}catch(e){h.$log.error(e)}return e.limits.isAfterOrEqualMin(t,n)&&e.limits.isBeforeOrEqualMax(t,n)&&s},checkValue:function(){a.isValidMoment(l.$modelValue)&&e.validate&&(e.limits.isAfterOrEqualMin(l.$modelValue)||a.setValue(e.limits.minDate,e,l,i),e.limits.isBeforeOrEqualMax(l.$modelValue)||a.setValue(e.limits.maxDate,e,l,i))},checkView:function(){o.isDefined(e.view.moment)||(e.view.moment=n().locale(e.locale)),e.limits.isAfterOrEqualMin(e.view.moment)||(e.view.moment=e.limits.minDate.clone()),e.limits.isBeforeOrEqualMax(e.view.moment)||(e.view.moment=e.limits.maxDate.clone()),e.view.update(),e.view.render()}},e.views={all:["decade","year","month","day","hour","minute"],precisions:{decade:"year",year:"month",month:"date",day:"hour",hour:"minute",minute:"second"},formats:{decade:"Y{1,2}(?!Y)|YYYY|[Ll]{1,4}(?!T)",year:"M{1,4}(?![Mo])|Mo|Q",month:"[Dd]{1,4}(?![Ddo])|DDDo|[Dd]o|[Ww]{1,2}(?![Wwo])|[Ww]o|[Ee]|L{1,2}(?!T)|l{1,2}",day:"[Hh]{1,2}|LTS?",hour:"m{1,2}|[Ll]{3,4}|LT(?!S)",minute:"s{1,2}|S{1,}|X|LTS"},detectMinMax:function(){if(e.detectedMinView=e.detectedMaxView=void 0,e.format){var t,i;o.forEach(e.views.formats,function(n,s){var r=new RegExp("("+n+")(?![^[]*])","g");e.format.match(r)&&(o.isDefined(t)||(t=s),i=s)}),t=o.isDefined(t)?Math.max(0,e.views.all.indexOf(t)):0,i=o.isDefined(i)?Math.min(e.views.all.length-1,e.views.all.indexOf(i)):e.views.all.length-1,t>e.views.all.indexOf(e.minView)&&(e.minView=e.views.all[t]),i<e.views.all.indexOf(e.maxView)&&(e.maxView=e.views.all[i]),e.detectedMinView=e.views.all[t],e.detectedMaxView=e.views.all[i]}},decade:new r.DecadeView(e,l,h.provider),year:new r.YearView(e,l,h.provider),month:new r.MonthView(e,l,h.provider),day:new r.DayView(e,l,h.provider),hour:new r.HourView(e,l,h.provider),minute:new r.MinuteView(e,l,h.provider)},e.view={moment:void 0,value:void 0,isOpen:!1,selected:e.startView,update:function(){e.view.value=a.momentToValue(e.view.moment,e.format)},toggle:function(){e.view.isOpen?e.view.close():e.view.open()},open:function(){e.disabled||e.view.isOpen||e.inline||(e.isOpen=!0,e.view.isOpen=!0,document.body.appendChild(e.picker[0]),e.view.position())},close:function(){e.view.isOpen&&!e.inline&&(e.isOpen=!1,e.view.isOpen=!1,e.view.selected=e.startView,e.picker[0].parentNode.removeChild(e.picker[0]))},position:function(){if(e.view.isOpen&&!e.position&&!e.inline){var i=t[0],o=e.picker.children()[0],n=e.picker.hasClass("top"),r=e.picker.hasClass("right"),a=s.getOffset(t[0]),l=a.top-h.$window.pageYOffset,c=a.left-h.$window.pageXOffset,d=h.$window.innerWidth,m=h.$window.innerHeight,u=l+h.$window.pageYOffset-o.offsetHeight>0&&l>m/2,p=c+o.offsetWidth>d,v=a.top+(u?0:i.offsetHeight)+"px",w=a.left+"px",f=i.offsetWidth+"px";!n&&u&&e.picker.addClass("top"),n&&!u&&e.picker.removeClass("top"),!r&&p&&e.picker.addClass("right"),r&&!p&&e.picker.removeClass("right"),e.picker.css("top")!==v&&e.picker.css("top",v),e.picker.css("left")!==w&&e.picker.css("left",w),e.picker.css("width")!==f&&e.picker.css("width",f)}},keydown:function(t){var i=e.views[e.view.selected],o=e.views.precisions[e.view.selected].replace("date","day"),n=h.provider[o+"sStep"]||1,s=[a.KEYS.up,a.KEYS.left].indexOf(t.keyCode)>=0?"subtract":"add",r=function(t){var r=t?i.perLine:1,a=e.view.moment.clone()[s](n*r,o);e.limits.isSelectable(a,o)&&(e.view.moment=a,e.view.update(),e.view.render())};switch(t.keyCode){case a.KEYS.up:case a.KEYS.down:t.preventDefault(),e.view.isOpen?r(!0):e.view.open();break;case a.KEYS.left:case a.KEYS.right:if(!e.view.isOpen)break;t.preventDefault(),r();break;case a.KEYS.enter:if(!e.view.isOpen)break;e.view.change(o),t.preventDefault();break;case a.KEYS.escape:e.view.toggle()}e.$evalAsync()},unit:function(){return"decade"==e.view.selected?10:1},precision:function(){return e.view.selected.replace("decade","year")},title:"",previous:{label:h.$sce.trustAsHtml(e.leftArrow),selectable:!0,set:function(){e.view.previous.selectable&&(e.view.moment.subtract(e.view.unit(),e.view.precision()),e.view.update(),e.view.render())}},next:{selectable:!0,label:h.$sce.trustAsHtml(e.rightArrow),set:function(){e.view.next.selectable&&(e.view.moment.add(e.view.unit(),e.view.precision()),e.view.update(),e.view.render())}},setParentView:function(){e.view.change(e.views.all[Math.max(0,e.views.all.indexOf(e.view.selected)-1)])},render:function(){var t=e.view.moment.clone().startOf(e.view.precision()).subtract(e.view.unit(),e.view.precision()),i=e.view.moment.clone().endOf(e.view.precision()).add(e.view.unit(),e.view.precision());e.view.previous.selectable=e.limits.isAfterOrEqualMin(t,e.view.precision()),e.view.previous.label=h.$sce.trustAsHtml(e.view.previous.selectable?e.leftArrow:"&nbsp;"),e.view.next.selectable=e.limits.isBeforeOrEqualMax(i,e.view.precision()),e.view.next.label=h.$sce.trustAsHtml(e.view.next.selectable?e.rightArrow:"&nbsp;"),e.view.title=e.views[e.view.selected].render()},change:function(t){var o=e.views.all.indexOf(t),n=e.views.all.indexOf(e.minView),s=e.views.all.indexOf(e.maxView),r=function(){a.setValue(e.view.moment,e,l,i),e.view.update(),i.ngModel&&l.$commitViewValue()};e.setOnSelect&&r(),o<0||o>s?(e.setOnSelect||r(),e.autoclose&&h.$timeout(e.view.close)):o>=n&&(e.view.selected=t)}},t.prepend(c),e.picker=o.element(t[0].querySelectorAll(".moment-picker")),e.container=o.element(e.picker[0].querySelectorAll(".moment-picker-container")),e.input="input"!=t[0].tagName.toLowerCase()&&t[0].querySelectorAll("input").length>0?o.element(t[0].querySelectorAll("input")):o.element(t[0]),e.input.addClass("moment-picker-input").attr("tabindex",0),(e.position||"").split(" ").forEach(function(t){return e.picker.addClass(t)}),e.inline?(t.after(e.picker),e.picker.addClass("inline")):e.picker[0].parentNode.removeChild(e.picker[0]),h.$timeout(function(){o.forEach(e.additions||{},function(t,i){var n=o.element(e.container[0].querySelector(".moment-picker-addition."+i)),s=h.$templateCache.get(t),r=h.$compile(s)(e.$parent);n.append(r)})}),e.views.detectMinMax(),e.limits.checkView(),h.$timeout(function(){i.ngModel?(!l.$modelValue&&e.value&&l.$setViewValue(e.value),l.$commitViewValue(),l.$render()):e.value&&(l.$modelValue=a.valueToMoment(e.value,e)),e.startDate?e.view.moment=a.toMoment(e.startDate,e.format,e.locale):a.isValidMoment(l.$modelValue)&&(e.view.moment=l.$modelValue.clone()),e.view.update(),e.view.render()}),i.ngModel&&(l.$parsers.push(function(t){return a.updateMoment(l.$modelValue,a.valueToMoment(t,e),e)||!0}),l.$formatters.push(function(t){return a.momentToValue(t,e.format)||""}),l.$viewChangeListeners.push(function(){i.ngModel!=i.momentPicker&&(e.value=l.$viewValue)}),l.$validators.minDate=function(t){return e.validate||!a.isValidMoment(t)||e.limits.isAfterOrEqualMin(t)},l.$validators.maxDate=function(t){return e.validate||!a.isValidMoment(t)||e.limits.isBeforeOrEqualMax(t)}),i.ngModel!=i.momentPicker&&e.$watch("value",function(t,o){t!==o&&a.setValue(t,e,l,i)}),e.$watch(function(){return a.momentToValue(l.$modelValue,e.format)},function(t,s){if(t!=s){var r=a.valueToMoment(t,e);if(a.setValue(r,e,l,i),e.limits.checkValue(),e.view.moment=(r||n().locale(e.locale)).clone(),e.view.update(),e.view.render(),o.isFunction(e.change)&&i.change){var c=a.valueToMoment(s,e);e.$evalAsync(function(){return e.change({newValue:r,oldValue:c})})}}}),e.$watch(function(){return l.$modelValue&&l.$modelValue.valueOf()},function(){var t=(a.isValidMoment(l.$modelValue)?l.$modelValue:n().locale(e.locale)).clone();t.isSame(e.view.moment)||(e.view.moment=t,e.view.update(),e.view.render())}),e.$watch("view.selected",function(){return e.view.render()}),e.$watchGroup(["minView","maxView"],function(){e.views.detectMinMax(),e.startView=e.views.all[Math.max(Math.min(e.views.all.indexOf(e.startView),e.views.all.indexOf(e.maxView)),e.views.all.indexOf(e.minView))],e.view.selected=e.startView}),e.$watchGroup([function(){return a.toValue(e.minDate,e.format,e.locale)},function(){return a.toValue(e.maxDate,e.format,e.locale)}],function(){o.forEach(["minDate","maxDate"],function(t){e.limits[t]=a.toMoment(e[t],e.format,e.locale)}),e.limits.checkValue(),e.limits.checkView(),e.view.render()}),e.$watch(function(){return a.toValue(e.startDate,e.format,e.locale)},function(t,i){t!=i&&(e.view.moment=a.valueToMoment(t,e),e.view.update(),e.view.render())}),i.$observe("locale",function(t){return e.locale=t}),e.$watch("locale",function(t,n){o.isDefined(n)&&t!=n&&(a.isValidMoment(l.$modelValue)&&a.setValue(l.$modelValue.locale(t),e,l,i),a.isValidMoment(e.view.moment)&&(e.view.moment=e.view.moment.locale(t)),a.isValidMoment(e.limits.minDate)&&(e.limits.minDate=e.limits.minDate.locale(t)),a.isValidMoment(e.limits.maxDate)&&(e.limits.maxDate=e.limits.maxDate.locale(t)),e.view.render())}),e.$watch("validate",e.limits.checkValue),e.$watch("isOpen",function(t){e.inline?e.view.isOpen=!0:o.isDefined(t)&&t!=e.view.isOpen&&e.view.toggle()});var d=function(t){t&&t.preventDefault(),e.input[0].focus()};e.input.on("focus click touchstart",function(){return e.$evalAsync(e.view.open)}).on("blur",function(){return e.$evalAsync(e.view.close)}).on("keydown",function(t){e.keyboard&&e.view.keydown(t)}),t.on("click touchstart",function(){return d()}),e.container.on("mousedown",function(e){return d(e)}),o.element(h.$window).on("resize scroll",e.view.position),e.$on("$destroy",function(){e.input.off("focus click touchstart blur keydown"),t.off("click touchstart"),e.container.off("mousedown"),e.picker.remove(),o.element(h.$window).off("resize scroll",e.view.position)})})}}return e}();t.default=c},function(e,t,i){"use strict";t.__esModule=!0,t.getOffset=function(e){if(e){if(!e.getClientRects().length)return{top:0,left:0};var t=function(e){return null!=e&&e===e.window},i=e.getBoundingClientRect();if(!i.width&&!i.height)return i;var o=e.ownerDocument,n=function(e){return t(e)?e:9===e.nodeType&&e.defaultView}(o),s=o.documentElement;return{top:i.top+n.pageYOffset-s.clientTop,left:i.left+n.pageXOffset-s.clientLeft}}}},function(e,t,i){"use strict";t.__esModule=!0;var o=i(1),n=function(){function e(){this.settings={locale:"en",format:"L LTS",minView:"decade",maxView:"minute",startView:"year",inline:!1,validate:!0,autoclose:!0,setOnSelect:!1,today:!1,keyboard:!1,showHeader:!0,leftArrow:"&larr;",rightArrow:"&rarr;",yearsFormat:"YYYY",monthsFormat:"MMM",daysFormat:"D",hoursFormat:"HH:[00]",hoursStart:0,hoursEnd:23,minutesStep:5,minutesStart:0,minutesEnd:59,secondsFormat:"ss",secondsStep:1,secondsStart:0,secondsEnd:59}}return e.prototype.options=function(e){return o.extend(this.settings,e),o.copy(this.settings)},e.prototype.$get=function(){return this.settings},e}();t.default=n},function(e,t,i){"use strict";t.__esModule=!0;var o=i(0),n=function(){function e(e,t,i){this.$scope=e,this.$ctrl=t,this.provider=i,this.perLine=4,this.rows={}}return e.prototype.render=function(){var e=this.$scope.view.moment.clone().startOf("day").hour(this.provider.hoursStart);this.rows={};for(var t=0;t<=this.provider.hoursEnd-this.provider.hoursStart;t++){var i=Math.floor(t/this.perLine),n=this.$scope.limits.isSelectable(e,"hour");this.rows[i]||(this.rows[i]=[]),this.rows[i].push({index:t,label:e.format(this.provider.hoursFormat),year:e.year(),month:e.month(),date:e.date(),hour:e.hour(),class:[this.$scope.keyboard&&e.isSame(this.$scope.view.moment,"hour")?"highlighted":"",n?o.isValidMoment(this.$ctrl.$modelValue)&&e.isSame(this.$ctrl.$modelValue,"hour")?"selected":"":"disabled"].join(" ").trim(),selectable:n}),e.add(1,"hours")}return this.$scope.view.moment.format("LL")},e.prototype.set=function(e){e.selectable&&(this.$scope.view.moment.year(e.year).month(e.month).date(e.date).hour(e.hour),this.$scope.view.update(),this.$scope.view.change("hour"))},e}();t.default=n},function(e,t,i){"use strict";t.__esModule=!0;var o=i(0),n=function(){function e(e,t,i){this.$scope=e,this.$ctrl=t,this.provider=i,this.perLine=4,this.rows={}}return e.prototype.render=function(){var e=this.$scope.view.moment.clone(),t=10*Math.floor(e.year()/10)-1;this.rows={},e.year(t);for(var i=0;i<12;i++){var n=Math.floor(i/this.perLine),s=this.$scope.limits.isSelectable(e,"year");this.rows[n]||(this.rows[n]=[]),this.rows[n].push({index:e.year(),label:e.format(this.provider.yearsFormat),year:e.year(),class:[this.$scope.keyboard&&e.isSame(this.$scope.view.moment,"year")?"highlighted":"",!s||[0,11].indexOf(i)>=0?"disabled":o.isValidMoment(this.$ctrl.$modelValue)&&e.isSame(this.$ctrl.$modelValue,"year")?"selected":""].join(" ").trim(),selectable:s}),e.add(1,"years")}return[e.subtract(2,"years").format("YYYY"),e.subtract(9,"years").format("YYYY")].reverse().join(" - ")},e.prototype.set=function(e){e.selectable&&(this.$scope.view.moment.year(e.year),this.$scope.view.update(),this.$scope.view.change("year"))},e}();t.default=n},function(e,t,i){"use strict";t.__esModule=!0;var o=i(1),n=i(2),s=i(0),r=function(){function e(e,t,i){this.$scope=e,this.$ctrl=t,this.provider=i,this.perLine=4,this.rows={}}return e.prototype.render=function(){var e=0,t=this.$scope.view.moment.clone().startOf("hour").minute(this.provider.minutesStart),i=this.provider.minutesFormat||n.localeData(this.$scope.locale).longDateFormat("LT").replace(/[aA]/,"").trim();this.rows={};for(var o=0;o<=this.provider.minutesEnd-this.provider.minutesStart;o+=this.provider.minutesStep){var r=Math.floor(e/this.perLine),a=this.$scope.limits.isSelectable(t,"minute");this.rows[r]||(this.rows[r]=[]),this.rows[r].push({index:t.minute(),label:t.format(i),year:t.year(),month:t.month(),date:t.date(),hour:t.hour(),minute:t.minute(),class:[this.$scope.keyboard&&t.isSame(this.$scope.view.moment,"minute")?"highlighted":"",a?s.isValidMoment(this.$ctrl.$modelValue)&&t.isSame(this.$ctrl.$modelValue,"minute")?"selected":"":"disabled"].join(" ").trim(),selectable:a}),e++,t.add(this.provider.minutesStep,"minutes")}return this.$scope.keyboard&&this.highlightClosest(),this.$scope.view.moment.clone().startOf("hour").format("lll")},e.prototype.set=function(e){e.selectable&&(this.$scope.view.moment.year(e.year).month(e.month).date(e.date).hour(e.hour).minute(e.minute),this.$scope.view.update(),this.$scope.view.change("minute"))},e.prototype.highlightClosest=function(){var e,t=this,i=[];o.forEach(this.rows,function(e){o.forEach(e,function(e){Math.abs(e.minute-t.$scope.view.moment.minute())<t.provider.minutesStep&&i.push(e)})}),(e=i.sort(function(e,i){return Math.abs(e.minute-t.$scope.view.moment.minute())>Math.abs(i.minute-t.$scope.view.moment.minute())?1:0})[0])&&e.minute-this.$scope.view.moment.minute()!=0&&(this.$scope.view.moment.year(e.year).month(e.month).date(e.date).hour(e.hour).minute(e.minute),this.$scope.view.update(),e.selectable&&(e.class=(e.class+" highlighted").trim()))},e}();t.default=r},function(e,t,i){"use strict";t.__esModule=!0;var o=i(11);t.DecadeView=o.default;var n=i(16);t.YearView=n.default;var s=i(15);t.MonthView=s.default;var r=i(10);t.DayView=r.default;var a=i(12);t.HourView=a.default;var l=i(14);t.MinuteView=l.default},function(e,t,i){"use strict";t.__esModule=!0;var o=i(1),n=i(0),s=function(){function e(e,t,i){this.$scope=e,this.$ctrl=t,this.provider=i,this.perLine=6,this.rows={}}return e.prototype.render=function(){var e=0,t=this.$scope.view.moment.clone().startOf("minute").second(this.provider.secondsStart);this.rows={};for(var i=0;i<=this.provider.secondsEnd-this.provider.secondsStart;i+=this.provider.secondsStep){var o=Math.floor(e/this.perLine),s=this.$scope.limits.isSelectable(t,"second");this.rows[o]||(this.rows[o]=[]),this.rows[o].push({index:t.second(),label:t.format(this.provider.secondsFormat),year:t.year(),month:t.month(),date:t.date(),hour:t.hour(),minute:t.minute(),second:t.second(),class:[this.$scope.keyboard&&t.isSame(this.$scope.view.moment,"second")?"highlighted":"",s?n.isValidMoment(this.$ctrl.$modelValue)&&t.isSame(this.$ctrl.$modelValue,"second")?"selected":"":"disabled"].join(" ").trim(),selectable:s}),e++,t.add(this.provider.secondsStep,"seconds")}return this.$scope.keyboard&&this.highlightClosest(),this.$scope.view.moment.clone().startOf("minute").format("lll")},e.prototype.set=function(e){e.selectable&&(this.$scope.view.moment.year(e.year).month(e.month).date(e.date).hour(e.hour).minute(e.minute).second(e.second),this.$scope.view.update(),this.$scope.view.change())},e.prototype.highlightClosest=function(){var e,t=this,i=[];o.forEach(this.rows,function(e){o.forEach(e,function(e){Math.abs(e.second-t.$scope.view.moment.second())<t.provider.secondsStep&&i.push(e)})}),(e=i.sort(function(e,i){return Math.abs(e.second-t.$scope.view.moment.second())>Math.abs(i.second-t.$scope.view.moment.second())?1:0})[0])&&e.second-this.$scope.view.moment.second()!=0&&(this.$scope.view.moment.year(e.year).month(e.month).date(e.date).hour(e.hour).minute(e.minute).second(e.second),this.$scope.view.update(),e.selectable&&(e.class=(e.class+" highlighted").trim()))},e}();t.default=s},function(e,t,i){"use strict";t.__esModule=!0;var o=i(1),n=i(2),s=i(0),r=function(){function e(e,t,i){this.$scope=e,this.$ctrl=t,this.provider=i,this.perLine=n.weekdays().length,this.rows=[]}return e.prototype.render=function(){var e=this,t=this.$scope.view.moment.month(),i=this.$scope.view.moment.clone().startOf("month").startOf("week").hour(12),r={},a=i.week(),l=a+5;this.rows=[];for(var c=a;c<=l;c++)r[c]=Array.apply(null,Array(this.perLine)).map(function(){var o=e.$scope.limits.isSelectable(i,"day"),n={index:i.date(),label:i.format(e.provider.daysFormat),year:i.year(),month:i.month(),date:i.date(),class:[e.$scope.keyboard&&i.isSame(e.$scope.view.moment,"day")?"highlighted":"",e.$scope.today&&i.isSame(new Date,"day")?"today":"",o&&i.month()==t?s.isValidMoment(e.$ctrl.$modelValue)&&i.isSame(e.$ctrl.$modelValue,"day")?"selected":"":"disabled"].join(" ").trim(),selectable:o};return i.add(1,"days"),n});return o.forEach(r,function(t){return e.rows.push(t)}),this.headers=n.weekdays().map(function(t,i){return n().locale(e.$scope.locale).startOf("week").add(i,"day").format("dd")}),this.$scope.view.moment.format("MMMM YYYY")},e.prototype.set=function(e){e.selectable&&(this.$scope.view.moment.year(e.year).month(e.month).date(e.date),this.$scope.view.update(),this.$scope.view.change("day"))},e}();t.default=r},function(e,t,i){"use strict";t.__esModule=!0;var o=i(2),n=i(0),s=function(){function e(e,t,i){this.$scope=e,this.$ctrl=t,this.provider=i,this.perLine=4,this.rows={}}return e.prototype.render=function(){var e=this,t=this.$scope.view.moment.clone().startOf("year"),i=o.monthsShort();return this.rows={},i.forEach(function(i,o){var s=Math.floor(o/e.perLine),r=e.$scope.limits.isSelectable(t,"month");e.rows[s]||(e.rows[s]=[]),e.rows[s].push({index:t.month(),label:t.format(e.provider.monthsFormat),year:t.year(),month:t.month(),class:[e.$scope.keyboard&&t.isSame(e.$scope.view.moment,"month")?"highlighted":"",r?n.isValidMoment(e.$ctrl.$modelValue)&&t.isSame(e.$ctrl.$modelValue,"month")?"selected":"":"disabled"].join(" ").trim(),selectable:r}),t.add(1,"months")}),this.$scope.view.moment.format("YYYY")},e.prototype.set=function(e){e.selectable&&(this.$scope.view.moment.year(e.year).month(e.month),this.$scope.view.update(),this.$scope.view.change("month"))},e}();t.default=s},function(e,t,i){i(5),i(3),e.exports=i(4)}]);