{"version":3,"file":"kendo.timeselector.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendotimeselector","js","this","$","undefined$1","kendo","window","ui","encode","htmlEncode","Widget","html","extend","mediaQuery","FOCUSED","keys","NS","listItemTemplate","value","TimeSelector","init","element","options","that","fn","call","bigScreenMQL","smallScreenMQL","adaptiveMode","onChange","popup","isFunction","fullscreen","mediaQueryList","matches","_wrappers","_buttons","_attchHandlers","_shortCuts","_columns","_popup","name","columns","shortcuts","size","fillMode","rounded","messages","set","cancel","days","hours","minutes","milliseconds","seconds","events","addTranslate","list","itemHeight","listHeight","translate","bottomOffset","lists","_listsContainer","find","length","i","getItemHeight","eq","outerHeight","css","transform","height","off","on","_itemClickHandler","bind","_listScrollHandler","applyValue","values","rest","Math","floor","getTimeParts","each","index","column","columnVal","min","max","_scrollListToPosition","format","selectorFormat","toggle","destroy","_listContainer","_timeSelectorWrapper","_scrollerKeyDownHandler","_applyShortCut","_cancelClickHandler","_setClickHandler","_mouseOverHandler","e","preventDefault","_value","parseInt","currentTarget","attr","change","close","focus","key","keyCode","isRtl","support","wrapper","container","UP","DOWN","altKey","RIGHT","LEFT","_focusList","scrollTop","ENTER","ESC","setTimeout","visible","removeClass","addClass","trigger","_scrollTop","_activeElement","_currentValues","originalEvent","_internalScroll","_scrollingTimeout","clearTimeout","_updateCurrentlySelected","_findSelectedValue","firstOccurence","round","is","item","_renderList","title","listTemplate","elements","step","appendTo","shortcut","_shortcuts","renderButton","getValidCssClass","text","id","Popup","anchor","open","activate","document","body","ActionSheet","adaptive","subtitle","closeButton","getBoundingClientRect","plugin","jQuery"],"sources":["kendo.timeselector.js"],"mappings":"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","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('kendo.popup.js'), require('kendo.html.button.js'), require('kendo.actionsheet.js')) :\n typeof define === 'function' && define.amd ? define(['kendo.popup', 'kendo.html.button', 'kendo.actionsheet'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendotimeselector = global.kendotimeselector || {}, global.kendotimeselector.js = factory()));\n})(this, (function () {\n var __meta__ = {\n id: \"timeselector\",\n name: \"TimeSelector\",\n category: \"web\",\n description: \"The TimeSelector widget allows the end user to select a time range from a popup\",\n depends: [ \"popup\", \"html.button\", \"actionsheet\" ]\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n ui = kendo.ui,\n encode = kendo.htmlEncode,\n Widget = ui.Widget,\n html = kendo.html,\n extend = $.extend,\n mediaQuery = kendo.mediaQuery,\n CHANGE = \"change\",\n CLICK = \"click\",\n SCROLL = \"scroll\",\n FOCUSED = \"k-focus\",\n keys = kendo.keys,\n NS = \".kendoTimeSelector\",\n html = kendo.html;\n\n var listItemTemplate = ({ value }) => `
  • ${encode(value)}
  • `;\n var listTemplate = ({ title, name }) => '
    ' +\n `${encode(title)}` +\n '
    ' +\n `
    ` +\n '
      ' +\n '
      ' +\n '
      ' +\n '
      ' +\n '
      ';\n\n var TimeSelector = Widget.extend({\n init: function(element, options) {\n var that = this;\n\n Widget.fn.init.call(that, element, options);\n\n that.bigScreenMQL = mediaQuery(\"large\");\n that.smallScreenMQL = mediaQuery(\"small\");\n if (that.options.adaptiveMode == \"auto\" ) {\n that.smallScreenMQL.onChange(function() {\n if (that.popup && kendo.isFunction(that.popup.fullscreen)) {\n that.popup.fullscreen(that.smallScreenMQL.mediaQueryList.matches);\n }\n });\n }\n\n that._wrappers();\n that._buttons();\n that._attchHandlers();\n that._shortCuts();\n that._columns();\n that._popup();\n },\n options: {\n name: \"TimeSelector\",\n columns: [],\n shortcuts: [],\n adaptiveMode: \"none\",\n size: \"medium\",\n fillMode: \"solid\",\n rounded: \"medium\",\n messages: {\n set: \"Set\",\n cancel: \"Cancel\",\n days: \"Days\",\n hours: \"Hours\",\n minutes: \"Minutes\",\n milliseconds: \"Milliseconds\",\n seconds: \"Seconds\"\n }\n },\n\n events: [CHANGE],\n\n addTranslate: function() {\n var lists = this._listsContainer.find(\".k-time-container.k-content.k-scrollable\");\n var length = lists.length;\n var list;\n var itemHeight;\n var listHeight;\n var topOffset;\n var translate;\n var bottomOffset;\n\n for (var i = 0; i < length; i++) {\n list = lists.eq(i);\n itemHeight = getItemHeight(list.find(\".k-item:visible\").eq(0));\n listHeight = list.outerHeight();\n topOffset = (listHeight - itemHeight) / 2;\n translate = \"translateY(\" + topOffset + \"px)\";\n bottomOffset = listHeight - itemHeight;\n list.find(\"ul\").css({\n transform: translate,\n \"-ms-transform\": translate\n });\n list.find(\".k-scrollable-placeholder\").css({\n height: list.find(\"ul\").height() + bottomOffset\n });\n list.off(NS)\n .on(CLICK + NS, \".k-item\", this._itemClickHandler.bind(this))\n .on(SCROLL + NS, this._listScrollHandler.bind(this));\n }\n },\n\n applyValue: function(value) {\n if (!value) {\n return;\n }\n var that = this;\n var lists = this._listsContainer.find('.k-time-container.k-content.k-scrollable');\n var values = getTimeParts(value);\n\n lists.each(function(index, list) {\n var column = that.options.columns[index];\n var columnVal = values[column.name];\n\n if (columnVal >= column.min && columnVal <= column.max) {\n that._scrollListToPosition($(list), kendo.format(column.selectorFormat, columnVal));\n }\n });\n },\n\n toggle: function() {\n this.popup.toggle();\n },\n\n destroy: function() {\n this._listContainer.off(NS);\n this._timeSelectorWrapper.off(NS);\n\n if (this.popup) {\n this.popup.destroy();\n this.popup = null;\n }\n\n if (this.bigScreenMQL) {\n this.bigScreenMQL.destroy();\n }\n\n if (this.smallScreenMQL) {\n this.smallScreenMQL.destroy();\n }\n },\n\n _attchHandlers: function() {\n var that = this;\n\n that._listContainer.on(\"keydown\" + NS, this._scrollerKeyDownHandler.bind(this));\n that._timeSelectorWrapper.on(\"click\" + NS, \".k-time-fast-selection button\", this._applyShortCut.bind(this));\n that._timeSelectorWrapper.on(\"click\" + NS, \".k-timeduration-footer button.k-time-cancel\", this._cancelClickHandler.bind(this));\n that._timeSelectorWrapper.on(\"click\" + NS, \".k-timeduration-footer button.k-time-accept\", this._setClickHandler.bind(this));\n that._listContainer.on(\"mouseover\" + NS, \".k-time-list-wrapper\", this._mouseOverHandler.bind(this));\n },\n\n _applyShortCut: function(e) {\n e.preventDefault();\n this._value = parseInt($(e.currentTarget).attr(kendo.attr(\"value\")));\n this.options.change(this._value);\n this.popup.close();\n this.options.focus();\n },\n\n _scrollerKeyDownHandler: function(e) {\n var that = this,\n key = e.keyCode,\n list = $(e.currentTarget).find(\".k-time-list-wrapper.k-focus\"),\n lists = that._listContainer.find(\".k-time-list-wrapper\"),\n length = lists.length,\n index = lists.index(list),\n isRtl = kendo.support.isRtl(that.wrapper),\n itemHeight = getItemHeight(list.find(\".k-item:visible\").eq(0)),\n container = list.find(\".k-time-container.k-content.k-scrollable\");\n\n if (!list.length) {\n return;\n }\n\n if ((key == keys.UP || key == keys.DOWN) && e.altKey) {\n e.preventDefault();\n that.toggle();\n setTimeout(function() {\n if (!that.popup.visible()) {\n that.options.focus();\n }\n }, 100);\n return;\n }\n\n if (key == keys.RIGHT && !isRtl || key == keys.LEFT && isRtl) {\n if (index + 1 < length) {\n that._focusList(lists.eq(index + 1));\n }\n\n } else if (key == keys.LEFT && !isRtl || key == keys.RIGHT && isRtl) {\n if (index - 1 >= 0) {\n that._focusList(lists.eq(index - 1));\n }\n } else if (key == keys.UP) {\n container.scrollTop(container.scrollTop() - itemHeight);\n e.preventDefault();\n } else if (key == keys.DOWN) {\n container.scrollTop(container.scrollTop() + itemHeight);\n e.preventDefault();\n } else if (key === keys.ENTER) {\n that._setClickHandler(e);\n } else if (key === keys.ESC) {\n that._cancelClickHandler(e);\n }\n },\n\n _mouseOverHandler: function(e) {\n this._focusList($(e.currentTarget));\n },\n\n _focusList: function(list) {\n this._listContainer.find(\".k-time-list-wrapper\").removeClass(FOCUSED);\n list.addClass(FOCUSED);\n this._listContainer.trigger(\"focus\");\n this._scrollTop = list.find('.k-scrollable').scrollTop();\n },\n\n _setClickHandler: function(e) {\n if ($(kendo._activeElement()).attr(kendo.attr(\"value\"))) {\n return;\n }\n\n e.preventDefault();\n this._value = convertToMsec(this._currentValues);\n this.options.change(this._value);\n this.popup.close();\n this.options.focus();\n },\n\n _cancelClickHandler: function(e) {\n if ($(kendo._activeElement()).attr(kendo.attr(\"value\"))) {\n return;\n }\n e.preventDefault();\n this.popup.close();\n this.options.focus();\n },\n\n _itemClickHandler: function(e) {\n var list = $(e.originalEvent.currentTarget);\n var index = list.find(\".k-item:visible\").index($(e.currentTarget));\n var itemHeight = getItemHeight(list.find(\".k-item:visible\").eq(0));\n\n list.scrollTop(index * itemHeight);\n },\n\n _listScrollHandler: function(e) {\n var that = this;\n var itemHeight = getItemHeight($(e.currentTarget).find(\".k-item:visible\").eq(0));\n\n if (that._internalScroll) {\n return;\n }\n\n if (that._scrollingTimeout) {\n clearTimeout(that._scrollingTimeout);\n }\n\n that._scrollingTimeout = setTimeout(function() {\n if (e.currentTarget.scrollTop % itemHeight > 1) {\n e.currentTarget.scrollTop += itemHeight - e.currentTarget.scrollTop % itemHeight;\n }\n that._scrollTop = e.currentTarget.scrollTop;\n that._updateCurrentlySelected();\n }, 100);\n },\n\n _findSelectedValue: function(list) {\n var firstOccurence = firstItemIndex(list.scrollTop(), getItemHeight(list.find(\".k-item:visible\").eq(0)));\n return list.find(\".k-item:visible\").eq(firstOccurence).attr(\"data-value\");\n },\n\n _updateCurrentlySelected: function() {\n var that = this;\n var lists = this._listsContainer.find('.k-content.k-scrollable');\n\n if (!this._listsContainer.is(\":visible\")) {\n return;\n }\n\n that._currentValues = {};\n\n lists.each(function() {\n var list = $(this);\n that._currentValues[list.attr(\"data-name\")] = parseInt(that._findSelectedValue(list));\n });\n },\n\n _scrollListToPosition: function(list, value) {\n var item = list.find('.k-item[data-value=\"' + value + '\"]');\n var itemHeight = getItemHeight(item);\n\n list.scrollTop(list.find(\".k-item:visible\").index(item) * itemHeight);\n },\n\n _renderList: function(wrapper, options) {\n if (!options) {\n return;\n }\n var that = this;\n var list = $(listTemplate({ name: options.name, title: that.options.messages[options.name] }));\n var elements = \"\";\n\n for (var i = options.min; i <= options.max; i += options.step) {\n elements += listItemTemplate({ value: kendo.format(options.selectorFormat, i) });\n }\n list.find(\"ul\").html(elements);\n list.appendTo(wrapper);\n },\n\n _columns: function() {\n var that = this;\n var column;\n var options = that.options;\n\n if (that._listsContainer) {\n for (var i = 0; i < options.columns.length; i++) {\n column = options.columns[i];\n that._renderList(that._listsContainer, column);\n }\n }\n },\n\n _shortCuts: function() {\n var that = this;\n var options = that.options;\n var shortcut;\n\n if (that._shortcuts) {\n for (var i = 0; i < options.shortcuts.length; i++) {\n shortcut = options.shortcuts[i];\n\n $(html.renderButton(`', {\n rounded: options.rounded\n }))\n .attr(kendo.attr(\"value\"), shortcut.value)\n .appendTo(that._shortcuts);\n }\n }\n },\n\n _buttons: function() {\n var that = this;\n var options = that.options;\n\n $(\"\").appendTo(that._timeSelectorWrapper);\n },\n\n _wrappers: function() {\n var that = this;\n var options = that.options;\n\n that._timeSelectorWrapper = $(\"
      \");\n\n that._listContainer = $(`
      `);\n that._listContainer.appendTo(that._timeSelectorWrapper);\n\n if (options.shortcuts) {\n that._shortcuts = $(\"
      \").appendTo(that._listContainer);\n }\n\n if (options.columns.length) {\n that._listsContainer = $(\"
      \").appendTo(that._listContainer);\n that._listsContainer.attr(\"id\", options.id);\n }\n },\n\n _popup: function() {\n var that = this,\n options = that.options;\n\n if (options.adaptiveMode == \"auto\" && !that.bigScreenMQL.mediaQueryList.matches) {\n that._timeSelectorWrapper.appendTo(document.body);\n that.popup = new ui.ActionSheet(that._timeSelectorWrapper, {\n adaptive: true,\n title: \"Set time\",\n subtitle: \"00/00/00\",\n closeButton: true,\n fullscreen: that.smallScreenMQL.mediaQueryList.matches,\n popup: extend(true, {}, options.popup, {\n anchor: options.anchor,\n open: options.open,\n close: options.close,\n isRtl: kendo.support.isRtl(options.anchor)\n }),\n activate: function() {\n that.addTranslate();\n if (that._value) {\n that.applyValue(that._value);\n } else {\n that._updateCurrentlySelected();\n }\n that._focusList(that._listContainer.find(\".k-time-list-wrapper\").eq(0));\n }\n });\n\n that._timeSelectorWrapper.find(\".k-timeduration-footer\").appendTo(that.popup.element);\n } else {\n that.popup = new ui.Popup(that._timeSelectorWrapper, extend(true, {}, options.popup, {\n anchor: options.anchor,\n open: options.open,\n close: options.close,\n isRtl: kendo.support.isRtl(options.anchor),\n activate: function() {\n that.addTranslate();\n if (that._value) {\n that.applyValue(that._value);\n } else {\n that._updateCurrentlySelected();\n }\n that._focusList(that._listContainer.find(\".k-time-list-wrapper\").eq(0));\n }\n }));\n }\n }\n });\n\n function convertToMsec(value) {\n return ((value.days || 0) * 86400000) + ((value.hours || 0) * 3600000) + ((value.minutes || 0) * 60000) + ((value.seconds || 0) * 1000) + (value.milliseconds || 0);\n }\n\n function getTimeParts(value) {\n var rest;\n var days = Math.floor(value / 86400000);\n rest = value % 86400000;\n var hours = Math.floor(rest / 3600000);\n rest = value % 3600000;\n var minutes = Math.floor(rest / 60000);\n rest = value % 60000;\n var seconds = Math.floor(rest / 1000);\n rest = value % 1000;\n\n return {\n days: days,\n hours: hours,\n minutes: minutes,\n seconds: seconds,\n milliseconds: rest\n };\n }\n\n function firstItemIndex(scrollTop, itemHeight) {\n return Math.max(Math.round(scrollTop / itemHeight), 0);\n }\n\n function getItemHeight(item) {\n return item.length && item[0].getBoundingClientRect().height;\n }\n\n ui.plugin(TimeSelector);\n\n })(window.kendo.jQuery);\n var kendo$1 = kendo;\n\n return kendo$1;\n\n}));\n"]}