UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

1 lines 15.2 kB
module.exports=function(e){function t(a){if(i[a])return i[a].exports;var n=i[a]={exports:{},id:a,loaded:!1};return e[a].call(n.exports,n,n.exports,t),n.loaded=!0,n.exports}var i={};return t.m=e,t.c=i,t.p="",t(0)}({0:function(e,t,i){e.exports=i(1139)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},1138:function(e,t){e.exports=require("./kendo.datepicker")},1139:function(e,t,i){var a,n,o;!function(l,define){n=[i(1138),i(1140)],a=l,o="function"==typeof a?a.apply(t,n):a,!(void 0!==o&&(e.exports=o))}(function(){return function(e,t){function i(e){var t=new Date(2100,0,1);return t.setMinutes(-e),t}function a(e){e.preventDefault()}function n(t){var i,a=o.getCulture(t.culture).calendars.standard.patterns,n=!t.parseFormats.length;t.format=u(t.format||a.g),t.timeFormat=i=u(t.timeFormat||a.t),o.DateView.normalize(t),n&&t.parseFormats.unshift("yyyy-MM-ddTHH:mm:ss"),e.inArray(i,t.parseFormats)===-1&&t.parseFormats.push(i)}var o=window.kendo,l=o.TimeView,r=o.parseDate,s=o.support,p=o._activeElement,u=o._extractFormat,d=o.calendar,m=d.isInRange,c=d.restrictValue,_=d.isEqualDatePart,v=l.getMilliseconds,f=o.ui,g=f.Widget,h="open",w="close",k="change",b=".kendoDateTimePicker",V="click"+b,y=s.mouseAndTouchPresent?o.applyEventMap("up",b.slice(1)):V,x="disabled",T="readonly",D="k-state-default",I="k-state-focused",C="k-state-hover",A="k-state-disabled",P="mouseenter"+b+" mouseleave"+b,F="mousedown"+b,S="month",R="<span/>",H="aria-activedescendant",M="aria-expanded",O="aria-hidden",E="aria-owns",W="aria-disabled",q=Date,B=new q(1800,0,1),N=new q(2099,11,31),Y={view:"date"},j={view:"time"},z=e.extend,K='<div class="k-date-tab k-datetime-wrap"><div class="k-datetime-buttongroup"><div class="k-button-group k-button-group-stretched"><button class="k-button k-state-active k-group-start">Date</button><button class="k-button k-group-end">Time</button></div></div><div class="k-datetime-selector"><div class="k-datetime-calendar-wrap"></div><div class="k-datetime-time-wrap"></div></div><div class="k-datetime-footer k-action-buttons"><button class="k-button k-time-cancel" title="Cancel" aria-label="Cancel">Cancel</button><button class="k-time-accept k-button k-primary" title="Set" aria-label="Set">Set</button></div></div>',L="k-state-active",Q=g.extend({init:function(t,i){var a,l=this;i=i||{},i.componentType=i.componentType||"classic",g.fn.init.call(l,t,i),t=l.element,i=l.options,i.disableDates=o.calendar.disabled(i.disableDates),i.min=r(t.attr("min"))||r(i.min),i.max=r(t.attr("max"))||r(i.max),+i.max==+N&&+i.min==+B||(this._specifiedRange=!0),n(i),l._initialOptions=z({},i),l._wrapper(),i.singlePopup&&l._popup(),l._views(),l._icons(),l._reset(),l._template();try{t[0].setAttribute("type","text")}catch(s){t[0].type="text"}t.addClass("k-input").attr({role:"combobox","aria-expanded":!1,autocomplete:"off"}),l._midnight=l._calculateMidnight(i.min,i.max),a=t.is("[disabled]")||e(l.element).parents("fieldset").is(":disabled"),a?l.enable(!1):l.readonly(t.is("[readonly]")),l._createDateInput(i),l._old=l._update(i.value||l.element.val()),l._oldText=t.val(),o.notify(l)},options:{name:"DateTimePicker",value:null,format:"",timeFormat:"",culture:"",parseFormats:[],dates:[],disableDates:null,min:new q(B),max:new q(N),interval:30,height:200,footer:"",start:S,depth:S,animation:{},month:{},ARIATemplate:'Current focused date is #=kendo.toString(data.current, "d")#',dateButtonText:"Open the date view",timeButtonText:"Open the time view",dateInput:!1,weekNumber:!1},events:[h,w,k],componentTypes:{classic:{singlePopup:!1,timeView:{list:"list"}},modern:{singlePopup:!0,timeView:{list:"scroll"}}},setOptions:function(e){var t,i,a,l=this,s=l._value;g.fn.setOptions.call(l,e),e=l.options,e.min=t=r(e.min),e.max=i=r(e.max),n(e),l._midnight=l._calculateMidnight(e.min,e.max),a=e.value||l._value||l.dateView._current,t&&!_(t,a)&&(t=new q(B)),i&&!_(i,a)&&(i=new q(N)),l.dateView.setOptions(e),l.timeView.setOptions(z({},e,{format:e.timeFormat,min:t,max:i})),l._createDateInput(e),l._dateInput||l.element.val(o.toString(s,e.format,e.culture)),s&&l._updateARIA(s)},_editable:function(t){var i=this,n=i.element.off(b),l=i._dateIcon.off(b),r=i._timeIcon.off(b),s=i._inputWrapper.off(b),p=t.readonly,u=t.disable;p||u?(s.addClass(u?A:D).removeClass(u?D:A),n.attr(x,u).attr(T,p).attr(W,u)):(s.addClass(D).removeClass(A).on(P,i._toggleHover),n&&n.length&&(n[0].removeAttribute(x),n[0].removeAttribute(T,!1),n[0].removeAttribute(W,!1)),n.on("keydown"+b,e.proxy(i._keydown,i)).on("focus"+b,function(){i._inputWrapper.addClass(I)}).on("focusout"+b,function(){i._inputWrapper.removeClass(I),n.val()!==i._oldText&&(i._change(n.val()),n.val()||i.dateView.current(o.calendar.getToday())),i.options.singlePopup||(i.close("date"),i.close("time"))}),l.on(F,a).on(y,function(e){i.toggle("date"),i._focusElement(e.type)}),r.on(F,a).on(y,function(e){i.toggle("time"),i._focusElement(e.type)}))},_focusElement:function(e){var t=this.element;s.touch&&(!s.mouseAndTouchPresent||(e||"").match(/touch/i))||t[0]===p()||t.trigger("focus")},readonly:function(e){this._editable({readonly:e===t||e,disable:!1})},enable:function(e){this._editable({readonly:!1,disable:!(e=e===t||e)})},destroy:function(){var e=this;g.fn.destroy.call(e),e.dateView.destroy(),e.timeView.destroy(),e.options.singlePopup&&(e.popup.element.off(b),e.popup.destroy()),e.element.off(b),e._dateIcon.off(b),e._timeIcon.off(b),e._inputWrapper.off(b),e._form&&e._form.off("reset",e._resetHandler)},close:function(e){this.options.singlePopup?this.popup.close():("time"!==e&&(e="date"),this[e+"View"].close())},open:function(e){var t,i=this;i.options.singlePopup?(i.dateView._calendar(),i.timeView.ul.find("li").length<1&&i.timeView.bind(),t=i.popup._hovered,i.popup._hovered=!0,i.popup.open(),"time"===e?i._switchToTimeView():i._switchToDateView(),this._dateIcon.toggle("time"!==e),this._timeIcon.toggle("time"===e),setTimeout(function(){i.popup._hovered=t},1)):("time"!==e&&(e="date"),this[e+"View"].open())},min:function(e){return this._option("min",e)},max:function(e){return this._option("max",e)},toggle:function(e){if(this.options.singlePopup)this.popup.visible()?this.close():this.open(e);else{var t="timeView";"time"!==e?e="date":t="dateView",this[e+"View"].toggle(),this[t].close()}},value:function(e){var i=this;return e===t?i._value:(i._old=i._update(e),null===i._old&&i.element.val(""),i._oldText=i.element.val(),t)},_change:function(e){var t,i,a,n=this,o=n.element.val();e=n._update(e),t=+n._old!=+e,i=t&&!n._typing,a=o!==n.element.val(),(i||a)&&n.element.trigger(k),t&&(n._old=e,n._oldText=n.element.val(),n.trigger(k)),n._typing=!1},_option:function(e,a){var n,o,l=this,s=l.options,p=l.timeView,u=p.options,d=l._value||l._old;if(a===t)return s[e];if(a=r(a,s.parseFormats,s.culture)){if(s.min.getTime()===s.max.getTime()&&(u.dates=[]),s[e]=new q(a.getTime()),l.dateView[e](a),l._midnight=l._calculateMidnight(s.min,s.max),d&&(n=_(s.min,d),o=_(s.max,d)),n||o){if(u[e]=a,n&&!o&&(u.max=i(s.interval)),o){if(l._midnight)return p.dataBind([N]),t;n||(u.min=B)}}else u.max=N,u.min=B;p.bind()}},_toggleHover:function(t){e(t.currentTarget).toggleClass(C,"mouseenter"===t.type)},_update:function(t){var a,n,l,s,p,u=this,d=u.options,v=d.min,f=d.max,g=d.dates,h=u.timeView,w=u._value,b=r(t,d.parseFormats,d.culture),V=null===b&&null===w||b instanceof Date&&w instanceof Date;return d.disableDates&&d.disableDates(b)&&(b=null,u._old||u.element.val()||(t=null)),+b===+w&&V?(p=o.toString(b,d.format,d.culture),p!==t&&(u.element.val(null===b?t:p),t instanceof String&&u.element.trigger(k)),b):(null!==b&&_(b,v)?b=c(b,v,f):m(b,v,f)||(b=null),u._value=b,h.value(b),u.dateView.value(b),b&&(l=u._old,n=h.options,g[0]&&(g=e.grep(g,function(e){return _(b,e)}),g[0]&&(h.dataBind(g),s=!0)),s||(_(b,v)&&(n.min=v,n.max=i(d.interval),a=!0),_(b,f)&&(u._midnight?(h.dataBind([N]),s=!0):(n.max=f,a||(n.min=B),a=!0))),!s&&(!l&&a||l&&!_(l,b))&&(a||(n.max=N,n.min=B),h.bind())),u._dateInput&&b?u._dateInput.value(b||t):u.element.val(o.toString(b||t,d.format,d.culture)),u._updateARIA(b),b)},_keydown:function(e){var t=this,i=t.dateView,a=t.timeView,n=t.element.val(),l=t.options.singlePopup?t.popup.visible():i.popup.visible(),r=t._dateInput&&e.stopImmediatePropagation;e.altKey&&e.keyCode===o.keys.DOWN?t.toggle(l?"time":"date"):l?(i.move(e),t._updateARIA(i._current)):!t.options.singlePopup&&a.popup.visible()?a.move(e):e.keyCode===o.keys.ENTER&&n!==t._oldText?t._change(n):(t._typing=!0,r=!1),r&&e.stopImmediatePropagation()},_views:function(){var e,t,i,a,n,s,p,u,d,m=this,c=m.element,_=m.options,v=c.attr("id");_.singlePopup&&(_.dateDiv=m.popup.element.find(".k-datetime-calendar-wrap"),p=m.popup.element.find(".k-datetime-time-wrap"),_.omitPopup=u=!0,d=_.timeView),m.dateView=e=new o.DateView(z({},_,{id:v,anchor:m.wrapper,change:function(){var e=m._applyDateValue();_.singlePopup?(m.timeView._currentlySelected||(m.timeView._currentlySelected=new Date),m.timeView._currentlySelected.setFullYear(e.getFullYear()),m.timeView._currentlySelected.setMonth(e.getMonth()),m.timeView._currentlySelected.setDate(e.getDate()),m._switchToTimeView(),m._toggleIcons()):(m._change(e),m.close("date"))},close:function(e){m.trigger(w,Y)?e.preventDefault():(c.attr(M,!1),i.attr(O,!0),m.options.singlePopup||t.popup.visible()||c&&c.length&&c[0].removeAttribute(E))},open:function(t){m.trigger(h,Y)?t.preventDefault():(c.val()!==m._oldText&&(s=r(c.val(),_.parseFormats,_.culture),m.dateView[s?"current":"value"](s)),i.attr(O,!1),c.attr(M,!0).attr(E,e._dateViewID),m._updateARIA(s))}})),i=e.div,n=_.min.getTime(),m.timeView=t=new l({id:v,value:_.value,anchor:m.wrapper,animation:_.animation,format:_.timeFormat,culture:_.culture,height:"modern"===_.componentType?null:_.height,interval:_.interval,min:"modern"===_.componentType?_.min:new q(B),max:"modern"===_.componentType?_.max:new q(N),dates:n===_.max.getTime()?[new Date(n)]:[],parseFormats:_.parseFormats,validateDate:!0,change:function(t,i){t=m._applyTimeValue(t),i?(m._timeSelected=!0,m._change(t)):(c.val(o.toString(t,_.format,_.culture)),e.value(t),m._updateARIA(t))},close:function(t){m.trigger(w,j)?t.preventDefault():(a.attr(O,!0),c.attr(M,!1),e.popup.visible()||c&&c.length&&c[0].removeAttribute(E))},open:function(e){"modern"!==m.options.componentType?t._adjustListWidth():m.timeView._updateTitle(),m.trigger(h,j)?e.preventDefault():(c.val()!==m._oldText&&(s=r(c.val(),_.parseFormats,_.culture),m.timeView.value(s)),a.attr(O,!1),c.attr(M,!0).attr(E,t._timeViewID),t.options.active(t.current()))},active:function(e){c&&c.length&&c[0].removeAttribute(H),e&&c.attr(H,t._optionID)},popup:_.popup,useValueToRender:!0,specifiedRange:m._specifiedRange,omitPopup:u,timeDiv:p,timeView:d}),a=t.ul},_applyDateValue:function(){var e,t,i=this,a=i.options,n=i.dateView,l=n.calendar.value(),r=+l,s=+a.min,p=+a.max;return r!==s&&r!==p||(e=r===s?s:p,e=new q(i._value||e),e.setFullYear(l.getFullYear(),l.getMonth(),l.getDate()),m(e,s,p)&&(l=e)),i._value&&(t=o.date.setHours(new Date(l),i._value),m(t,s,p)&&(l=t)),l},_applyTimeValue:function(e){var t=this.timeView,i=this.options;return e=t._parse(e),e<i.min?(e=new q((+i.min)),t.options.min=e):e>i.max&&(e=new q((+i.max)),t.options.max=e),e},_icons:function(){var t=this,i=t.element,a=t.options,n=i.next("span.k-select");n[0]||(n=e('<span unselectable="on" class="k-select"><span class="k-link k-link-date" aria-label="'+a.dateButtonText+'"><span unselectable="on" class="k-icon k-i-calendar"></span></span><span class="k-link k-link-time" aria-label="'+a.timeButtonText+'"><span unselectable="on" class="k-icon k-i-clock"></span></span></span>').insertAfter(i)),n=n.children(),t._dateIcon=n.eq(0).attr("aria-controls",t.dateView._dateViewID),t._timeIcon=n.eq(1).attr("aria-controls",t.timeView._timeViewID),a.singlePopup&&t._timeIcon.hide()},_wrapper:function(){var t,i=this,a=i.element;t=a.parents(".k-datetimepicker"),t[0]||(t=a.wrap(R).parent().addClass("k-picker-wrap k-state-default"),t=t.wrap(R).parent()),t[0].style.cssText=a[0].style.cssText,a.css({width:"100%",height:a[0].style.height}),i.wrapper=t.addClass("k-widget k-datetimepicker").addClass(a[0].className).removeClass("input-validation-error"),i._inputWrapper=e(t[0].firstChild)},_reset:function(){var t=this,i=t.element,a=i.attr("form"),n=a?e("#"+a):i.closest("form"),l=t.options,r=l.disableDates,s=l.parseFormats.length?l.parseFormats:null,p=t._initialOptions.value,u=i[0].defaultValue;p&&r&&r(p)&&(p=null),u&&o.parseDate(u,s,l.culture)||!p||i.attr("value",o.toString(p,l.format,l.culture)),n[0]&&(t._resetHandler=function(){t.value(p||i[0].defaultValue),t.max(t._initialOptions.max),t.min(t._initialOptions.min)},t._form=n.on("reset",t._resetHandler))},_template:function(){this._ariaTemplate=o.template(this.options.ARIATemplate)},_createDateInput:function(e){this._dateInput&&(this._dateInput.destroy(),this._dateInput=null),e.dateInput&&(this._dateInput=new f.DateInput(this.element,{culture:e.culture,format:e.format,min:e.min,max:e.max,interval:e.interval}))},_calculateMidnight:function(e,t){return v(e)+v(t)===0},_updateARIA:function(e){var t,i=this,a=i.dateView.calendar;i.element&&i.element.length&&i.element[0].removeAttribute(H),a&&(t=a._cell,t.attr("aria-label",i._ariaTemplate({current:e||a.current()})),i.element.attr(H,t.attr("id")))},_popup:function(){var t=this,i=t.options,a=e("<div></div>").attr(O,"true").addClass("k-datetime-container k-group k-reset").appendTo(document.body);a.append(K),t.popup=new f.Popup(a,z(i.popup,i,{name:"Popup",isRtl:o.support.isRtl(t.wrapper),anchor:t.wrapper,activate:function(){t.options.timeView&&"scroll"===t.options.timeView.list&&(t.timeView.addTranslate(),t.timeView.applyValue(t._value),t.timeView._updateRanges())},open:function(){t.timeView._updateTitle()}})),a.on(V+b,".k-datetime-buttongroup .k-button",e.proxy(t._groupChangeClick,t)),a.on(V+b,".k-datetime-footer button.k-time-cancel",e.proxy(t._cancelClickHandler,t)),a.on(V+b,".k-datetime-footer button.k-time-accept",e.proxy(t._setClickHandler,t))},_groupChangeClick:function(t){var i,n;a(t),i=e(t.currentTarget),n=i.index(),n?this._switchToTimeView():this._switchToDateView(),this._toggleIcons()},_switchToDateView:function(){this.popup.element.find(".k-group-start, .k-group-end").removeClass(L).eq(0).addClass(L),this.popup.element.find(".k-datetime-wrap").removeClass("k-time-tab").addClass("k-date-tab")},_switchToTimeView:function(){this.timeView._updateRanges(),this.popup.element.find(".k-group-start, .k-group-end").removeClass(L).eq(1).addClass(L),this.popup.element.find(".k-datetime-wrap").removeClass("k-date-tab").addClass("k-time-tab")},_toggleIcons:function(){this._dateIcon.toggle(),this._timeIcon.toggle()},_cancelClickHandler:function(){this._value&&(this.value(this._value),this.dateView.value(this._value)),this.popup.close()},_setClickHandler:function(){var e=this._applyDateValue(),t=this.timeView._currentlySelected||new Date;e=e||new Date,this.timeView._updateCurrentlySelected(),e.setHours(t.getHours()),e.setMinutes(t.getMinutes()),e.setSeconds(t.getSeconds()),e=this._applyTimeValue(e),this._change(e),this.popup.close()}});f.plugin(Q)}(window.kendo.jQuery),window.kendo},i(3))},1140:function(e,t){e.exports=require("./kendo.timepicker")}});