{"version":3,"sources":["kendo.slider.js"],"names":["f","define","$","undefined","createWrapper","options","element","isHorizontal","orientationCssClass","style","attr","cssClasses","tickPlacementCssClass","tickPlacement","showButtons","createButton","type","isRtl","buttonCssClass","createSliderItems","distance","i","result","count","math","floor","round","smallStep","createTrack","dragHandleCount","is","firstDragHandleTitle","leftDragHandleTitle","dragHandleTitle","min","max","selectionStart","value","rightDragHandleTitle","selectionEnd","step","stepValue","setValue","formatValue","replace","kendo","cultures","current","numberFormat","calculatePrecision","number","precision","split","length","power","parseFloat","pow","parseAttr","name","parse","getAttribute","defined","UNDEFINED","removeFraction","RangeSlider","window","Widget","ui","Draggable","outerWidth","_outerWidth","outerHeight","_outerHeight","extend","format","proxy","isArray","Array","Math","support","pointers","msPointers","CHANGE","SLIDE","NS","MOUSE_DOWN","TRACK_MOUSE_DOWN","MOUSE_UP","TRACK_MOUSE_UP","MOVE_SELECTION","KEY_DOWN","CLICK","MOUSE_OVER","FOCUS","BLUR","DRAG_HANDLE","TRACK_SELECTOR","TICK_SELECTOR","STATE_SELECTED","STATE_FOCUSED","STATE_DEFAULT","STATE_DISABLED","DISABLED","TABINDEX","getTouches","SliderBase","init","rtlDirectionSign","that","this","fn","call","_isHorizontal","orientation","_isRtl","_position","_sizeFn","_outerSize","tooltip","enabled","Error","_createHtml","wrapper","closest","_trackDiv","find","_setTrackDivWidth","_maxSelection","_sliderItemsInit","_reset","_tabindex","_keyMap","37","40","39","38","35","36","33","largeStep","34","notify","events","_distance","_resize","remove","_refresh","enable","sizeBetweenTicks","pixelWidths","_calculateItemsWidth","parent","before","_setItemsWidth","_setItemsTitle","_calculateSteps","_setItemsLargeTick","getSize","dimensions","trackDivPosition","css","first","last","items","paddingTop","bordersWidth","selection","addClass","titleNumber","limit","increment","item","valueWithoutFraction","makeArray","reverse","_values","html","itemsCount","itemWidth","trackDivSize","preciseItemsCount","pixelStep","_roundWidths","pixelWidthsArray","balance","_addAdditionalSize","additionalSize","parseInt","lastItem","val","ceil","splice","pop","_pixelSteps","_getValueFromPosition","mousePosition","dragableArea","position","halfStep","startPoint","abs","_getFormattedValue","drag","tooltipTemplate","template","_getDraggableArea","offset","getOffset","left","top","endPoint","inputs","eq","prop","wrap","hide","_focus","e","target","_drag","_firstHandleDrag","_activeHandle","_lastHandleDrag","_activeHandleDrag","_updateTooltip","_focusWithMouse","idx","index","setTimeout","focus","_setTooltipTimeout","_blur","removeClass","_removeTooltip","_tooltipTimeout","_clearTooltipTimeout","clearTimeout","tooltipDiv","stop","formId","form","_form","on","_formResetHandler","setOptions","destroy","off","Slider","dragHandle","_selection","Selection","Drag","increaseButtonTitle","decreaseButtonTitle","clickHandler","move","mouseDownHandler","disable","touch","location","pageX","pageY","hasClass","_update","dragstart","preventDefault","end","document","documentElement","one","_end","sign","newVal","_nextValueByIndex","_valueIndex","_setValueInRange","which","timeout","timer","setInterval","_clearTimer","currentTarget","click","_keydown","change","trigger","isNaN","_refreshAriaAttr","formattedValue","_tooltipDiv","text","clearInterval","keyCode","draggable","moveSelection","selectionValue","selectionDiv","halfDragHanndle","rtlCorrection","bind","sender","owner","_dragstart","dragend","dragcancel","prototype","_activeDragHandle","userEvents","cancel","_setZIndex","oldVal","_createTooltip","colloutCssClass","wnd","appendTo","body","tooltipInnerDiv","_scrollOffset","scrollTop","scrollLeft","moveTooltip","slideParams","x","y","constrainValue","values","_disposeAll","noAnimation","fadeOut","dragHandles","sdhOffset","diff","anchorSize","margin","viewport","callout","width","height","_flip","_fit","size","viewPortEnd","output","maxOverflow","plugin","firstInput","secondInput","console","warn","from","to","handle","dragSelectionStart","dragSelectionEnd","activeHandleDrag","selectionStartValue","selectionEndValue","_value","start","each","selectionStartIndex","selectionEndIndex","halfHandle","makeSelection","selectionPosition","jQuery","amd","a1","a2","a3"],"mappings":"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","file":"kendo.slider.min.js","sourcesContent":["/*!\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n*/\n(function (f, define) {\n define('kendo.slider', ['kendo.draganddrop'], f);\n}(function () {\n var __meta__ = {\n id: 'slider',\n name: 'Slider',\n category: 'web',\n description: 'The Slider widget provides a rich input for selecting values or ranges of values.',\n depends: ['draganddrop']\n };\n (function ($, undefined) {\n var kendo = window.kendo, Widget = kendo.ui.Widget, Draggable = kendo.ui.Draggable, outerWidth = kendo._outerWidth, outerHeight = kendo._outerHeight, extend = $.extend, format = kendo.format, parse = kendo.parseFloat, proxy = $.proxy, isArray = Array.isArray, math = Math, support = kendo.support, pointers = support.pointers, msPointers = support.msPointers, CHANGE = 'change', SLIDE = 'slide', NS = '.slider', MOUSE_DOWN = 'touchstart' + NS + ' mousedown' + NS, TRACK_MOUSE_DOWN = pointers ? 'pointerdown' + NS : msPointers ? 'MSPointerDown' + NS : MOUSE_DOWN, MOUSE_UP = 'touchend' + NS + ' mouseup' + NS, TRACK_MOUSE_UP = pointers ? 'pointerup' : msPointers ? 'MSPointerUp' + NS : MOUSE_UP, MOVE_SELECTION = 'moveSelection', KEY_DOWN = 'keydown' + NS, CLICK = 'click' + NS, MOUSE_OVER = 'mouseover' + NS, FOCUS = 'focus' + NS, BLUR = 'blur' + NS, DRAG_HANDLE = '.k-draghandle', TRACK_SELECTOR = '.k-slider-track', TICK_SELECTOR = '.k-tick', STATE_SELECTED = 'k-state-selected', STATE_FOCUSED = 'k-state-focused', STATE_DEFAULT = 'k-state-default', STATE_DISABLED = 'k-state-disabled', DISABLED = 'disabled', UNDEFINED = 'undefined', TABINDEX = 'tabindex', getTouches = kendo.getTouches;\n var SliderBase = Widget.extend({\n init: function (element, options) {\n var that = this;\n Widget.fn.init.call(that, element, options);\n options = that.options;\n that._isHorizontal = options.orientation == 'horizontal';\n that._isRtl = that._isHorizontal && kendo.support.isRtl(element);\n that._position = that._isHorizontal ? 'left' : 'bottom';\n that._sizeFn = that._isHorizontal ? 'width' : 'height';\n that._outerSize = that._isHorizontal ? outerWidth : outerHeight;\n options.tooltip.format = options.tooltip.enabled ? options.tooltip.format || '{0}' : '{0}';\n if (options.smallStep <= 0) {\n throw new Error('Kendo UI Slider smallStep must be a positive number.');\n }\n that._createHtml();\n that.wrapper = that.element.closest('.k-slider');\n that._trackDiv = that.wrapper.find(TRACK_SELECTOR);\n that._setTrackDivWidth();\n that._maxSelection = that._trackDiv[that._sizeFn]();\n that._sliderItemsInit();\n that._reset();\n that._tabindex(that.wrapper.find(DRAG_HANDLE));\n that[options.enabled ? 'enable' : 'disable']();\n var rtlDirectionSign = kendo.support.isRtl(that.wrapper) ? -1 : 1;\n that._keyMap = {\n 37: step(-1 * rtlDirectionSign * options.smallStep),\n 40: step(-options.smallStep),\n 39: step(+1 * rtlDirectionSign * options.smallStep),\n 38: step(+options.smallStep),\n 35: setValue(options.max),\n 36: setValue(options.min),\n 33: step(+options.largeStep),\n 34: step(-options.largeStep)\n };\n kendo.notify(that);\n },\n events: [\n CHANGE,\n SLIDE\n ],\n options: {\n enabled: true,\n min: 0,\n max: 10,\n smallStep: 1,\n largeStep: 5,\n orientation: 'horizontal',\n tickPlacement: 'both',\n tooltip: {\n enabled: true,\n format: '{0}'\n }\n },\n _distance: function () {\n return round(this.options.max - this.options.min);\n },\n _resize: function () {\n this._setTrackDivWidth();\n this.wrapper.find('.k-slider-items').remove();\n this._maxSelection = this._trackDiv[this._sizeFn]();\n this._sliderItemsInit();\n this._refresh();\n if (this.options.enabled) {\n this.enable(true);\n }\n },\n _sliderItemsInit: function () {\n var that = this, options = that.options;\n var sizeBetweenTicks = that._maxSelection / ((options.max - options.min) / options.smallStep);\n var pixelWidths = that._calculateItemsWidth(math.floor(removeFraction(that._distance()) / removeFraction(options.smallStep)));\n if (options.tickPlacement != 'none' && sizeBetweenTicks >= 2) {\n $(this.element).parent().find('.k-slider-items').remove();\n that._trackDiv.before(createSliderItems(options, that._distance()));\n that._setItemsWidth(pixelWidths);\n that._setItemsTitle();\n }\n that._calculateSteps(pixelWidths);\n if (options.tickPlacement != 'none' && sizeBetweenTicks >= 2 && options.largeStep >= options.smallStep) {\n that._setItemsLargeTick();\n }\n },\n getSize: function () {\n return kendo.dimensions(this.wrapper);\n },\n _setTrackDivWidth: function () {\n var that = this, trackDivPosition = parseFloat(that._trackDiv.css(that._isRtl ? 'right' : that._position), 10) * 2;\n that._trackDiv[that._sizeFn](that.wrapper[that._sizeFn]() - 2 - trackDivPosition);\n },\n _setItemsWidth: function (pixelWidths) {\n var that = this, options = that.options, first = 0, last = pixelWidths.length - 1, items = that.wrapper.find(TICK_SELECTOR), i, paddingTop = 0, bordersWidth = 2, count = items.length, selection = 0;\n for (i = 0; i < count - 2; i++) {\n $(items[i + 1])[that._sizeFn](pixelWidths[i]);\n }\n if (that._isHorizontal) {\n $(items[first]).addClass('k-first')[that._sizeFn](pixelWidths[last - 1]);\n $(items[last]).addClass('k-last')[that._sizeFn](pixelWidths[last]);\n } else {\n $(items[last]).addClass('k-first')[that._sizeFn](pixelWidths[last]);\n $(items[first]).addClass('k-last')[that._sizeFn](pixelWidths[last - 1]);\n }\n if (that._distance() % options.smallStep !== 0 && !that._isHorizontal) {\n for (i = 0; i < pixelWidths.length; i++) {\n selection += pixelWidths[i];\n }\n paddingTop = that._maxSelection - selection;\n paddingTop += parseFloat(that._trackDiv.css(that._position), 10) + bordersWidth;\n that.wrapper.find('.k-slider-items').css('padding-top', paddingTop);\n }\n },\n _setItemsTitle: function () {\n var that = this, options = that.options, items = that.wrapper.find(TICK_SELECTOR), titleNumber = options.min, count = items.length, i = that._isHorizontal && !that._isRtl ? 0 : count - 1, limit = that._isHorizontal && !that._isRtl ? count : -1, increment = that._isHorizontal && !that._isRtl ? 1 : -1;\n for (; i - limit !== 0; i += increment) {\n $(items[i]).attr('title', format(options.tooltip.format, round(titleNumber)));\n titleNumber += options.smallStep;\n }\n },\n _setItemsLargeTick: function () {\n var that = this, options = that.options, items = that.wrapper.find(TICK_SELECTOR), i = 0, item, value;\n if (removeFraction(options.largeStep) % removeFraction(options.smallStep) === 0 || that._distance() / options.largeStep >= 3) {\n if (!that._isHorizontal && !that._isRtl) {\n items = $.makeArray(items).reverse();\n }\n for (i = 0; i < items.length; i++) {\n item = $(items[i]);\n value = that._values[i];\n var valueWithoutFraction = round(removeFraction(value - this.options.min));\n if (valueWithoutFraction % removeFraction(options.smallStep) === 0 && valueWithoutFraction % removeFraction(options.largeStep) === 0) {\n item.addClass('k-tick-large').html('' + item.attr('title') + '');\n if (i !== 0 && i !== items.length - 1) {\n item.css('line-height', item[that._sizeFn]() + 'px');\n }\n }\n }\n }\n },\n _calculateItemsWidth: function (itemsCount) {\n var that = this, options = that.options, trackDivSize = parseFloat(that._trackDiv.css(that._sizeFn)) + 1, distance = that._distance(), preciseItemsCount = removeFraction(distance) / removeFraction(options.smallStep), pixelStep = trackDivSize / removeFraction(distance), itemWidth, pixelWidths, i;\n if (preciseItemsCount - itemsCount > 0) {\n trackDivSize -= removeFraction(distance) % removeFraction(options.smallStep) * pixelStep;\n }\n itemWidth = trackDivSize / itemsCount;\n pixelWidths = [];\n for (i = 0; i < itemsCount - 1; i++) {\n pixelWidths[i] = itemWidth;\n }\n pixelWidths[itemsCount - 1] = pixelWidths[itemsCount] = itemWidth / 2;\n return that._roundWidths(pixelWidths);\n },\n _roundWidths: function (pixelWidthsArray) {\n var balance = 0, count = pixelWidthsArray.length, i;\n for (i = 0; i < count; i++) {\n balance += pixelWidthsArray[i] - math.floor(pixelWidthsArray[i]);\n pixelWidthsArray[i] = math.floor(pixelWidthsArray[i]);\n }\n balance = math.round(balance);\n return this._addAdditionalSize(balance, pixelWidthsArray);\n },\n _addAdditionalSize: function (additionalSize, pixelWidthsArray) {\n if (additionalSize === 0) {\n return pixelWidthsArray;\n }\n var step = parseFloat(pixelWidthsArray.length - 1) / parseFloat(additionalSize == 1 ? additionalSize : additionalSize - 1), i;\n for (i = 0; i < additionalSize; i++) {\n pixelWidthsArray[parseInt(math.round(step * i), 10)] += 1;\n }\n return pixelWidthsArray;\n },\n _calculateSteps: function (pixelWidths) {\n var that = this, options = that.options, val = options.min, selection = 0, distance = that._distance(), itemsCount = math.ceil(removeFraction(distance) / removeFraction(options.smallStep)), i = 1, lastItem;\n itemsCount += removeFraction(distance) / removeFraction(options.smallStep) % 1 === 0 ? 1 : 0;\n pixelWidths.splice(0, 0, pixelWidths[itemsCount - 2] * 2);\n pixelWidths.splice(itemsCount - 1, 1, pixelWidths.pop() * 2);\n that._pixelSteps = [selection];\n that._values = [val];\n if (itemsCount === 0) {\n return;\n }\n while (i < itemsCount) {\n selection += (pixelWidths[i - 1] + pixelWidths[i]) / 2;\n that._pixelSteps[i] = selection;\n val += options.smallStep;\n that._values[i] = round(val);\n i++;\n }\n lastItem = removeFraction(distance) % removeFraction(options.smallStep) === 0 ? itemsCount - 1 : itemsCount;\n that._pixelSteps[lastItem] = that._maxSelection;\n that._values[lastItem] = options.max;\n if (that._isRtl) {\n that._pixelSteps.reverse();\n that._values.reverse();\n }\n },\n _getValueFromPosition: function (mousePosition, dragableArea) {\n var that = this, options = that.options, step = math.max(options.smallStep * (that._maxSelection / that._distance()), 0), position = 0, halfStep = step / 2, i;\n if (that._isHorizontal) {\n position = mousePosition - dragableArea.startPoint;\n if (that._isRtl) {\n position = that._maxSelection - position;\n }\n } else {\n position = dragableArea.startPoint - mousePosition;\n }\n if (that._maxSelection - (parseInt(that._maxSelection % step, 10) - 3) / 2 < position) {\n return options.max;\n }\n for (i = 0; i < that._pixelSteps.length; i++) {\n if (math.abs(that._pixelSteps[i] - position) - 1 <= halfStep) {\n return round(that._values[i]);\n }\n }\n },\n _getFormattedValue: function (val, drag) {\n var that = this, html = '', tooltip = that.options.tooltip, tooltipTemplate, selectionStart, selectionEnd;\n if (isArray(val)) {\n selectionStart = val[0];\n selectionEnd = val[1];\n } else if (drag && drag.type) {\n selectionStart = drag.selectionStart;\n selectionEnd = drag.selectionEnd;\n }\n if (drag) {\n tooltipTemplate = drag.tooltipTemplate;\n }\n if (!tooltipTemplate && tooltip.template) {\n tooltipTemplate = kendo.template(tooltip.template);\n }\n if (isArray(val) || drag && drag.type) {\n if (tooltipTemplate) {\n html = tooltipTemplate({\n selectionStart: selectionStart,\n selectionEnd: selectionEnd\n });\n } else {\n selectionStart = format(tooltip.format, selectionStart);\n selectionEnd = format(tooltip.format, selectionEnd);\n html = selectionStart + ' - ' + selectionEnd;\n }\n } else {\n if (drag) {\n drag.val = val;\n }\n if (tooltipTemplate) {\n html = tooltipTemplate({ value: val });\n } else {\n html = format(tooltip.format, val);\n }\n }\n return html;\n },\n _getDraggableArea: function () {\n var that = this, offset = kendo.getOffset(that._trackDiv);\n return {\n startPoint: that._isHorizontal ? offset.left : offset.top + that._maxSelection,\n endPoint: that._isHorizontal ? offset.left + that._maxSelection : offset.top\n };\n },\n _createHtml: function () {\n var that = this, element = that.element, options = that.options, inputs = element.find('input');\n if (inputs.length == 2) {\n inputs.eq(0).prop('value', formatValue(options.selectionStart));\n inputs.eq(1).prop('value', formatValue(options.selectionEnd));\n } else {\n element.prop('value', formatValue(options.value));\n }\n element.wrap(createWrapper(options, element, that._isHorizontal)).hide();\n if (options.showButtons) {\n element.before(createButton(options, 'increase', that._isHorizontal, that._isRtl)).before(createButton(options, 'decrease', that._isHorizontal, that._isRtl));\n }\n element.before(createTrack(options, element));\n },\n _focus: function (e) {\n var that = this, target = e.target, val = that.value(), drag = that._drag;\n if (!drag) {\n if (target == that.wrapper.find(DRAG_HANDLE).eq(0)[0]) {\n drag = that._firstHandleDrag;\n that._activeHandle = 0;\n } else {\n drag = that._lastHandleDrag;\n that._activeHandle = 1;\n }\n val = val[that._activeHandle];\n }\n $(target).addClass(STATE_FOCUSED + ' ' + STATE_SELECTED);\n if (drag) {\n that._activeHandleDrag = drag;\n drag.selectionStart = that.options.selectionStart;\n drag.selectionEnd = that.options.selectionEnd;\n drag._updateTooltip(val);\n }\n },\n _focusWithMouse: function (target) {\n target = $(target);\n var that = this, idx = target.is(DRAG_HANDLE) ? target.index() : 0;\n window.setTimeout(function () {\n that.wrapper.find(DRAG_HANDLE)[idx == 2 ? 1 : 0].focus();\n }, 1);\n that._setTooltipTimeout();\n },\n _blur: function (e) {\n var that = this, drag = that._activeHandleDrag;\n $(e.target).removeClass(STATE_FOCUSED + ' ' + STATE_SELECTED);\n if (drag) {\n drag._removeTooltip();\n delete that._activeHandleDrag;\n delete that._activeHandle;\n }\n },\n _setTooltipTimeout: function () {\n var that = this;\n that._tooltipTimeout = window.setTimeout(function () {\n var drag = that._drag || that._activeHandleDrag;\n if (drag) {\n drag._removeTooltip();\n }\n }, 300);\n },\n _clearTooltipTimeout: function () {\n var that = this;\n window.clearTimeout(this._tooltipTimeout);\n var drag = that._drag || that._activeHandleDrag;\n if (drag && drag.tooltipDiv) {\n drag.tooltipDiv.stop(true, false).css('opacity', 1);\n }\n },\n _reset: function () {\n var that = this, element = that.element, formId = element.attr('form'), form = formId ? $('#' + formId) : element.closest('form');\n if (form[0]) {\n that._form = form.on('reset', proxy(that._formResetHandler, that));\n }\n },\n min: function (value) {\n if (!value) {\n return this.options.min;\n }\n this.setOptions({ 'min': value });\n },\n max: function (value) {\n if (!value) {\n return this.options.max;\n }\n this.setOptions({ 'max': value });\n },\n setOptions: function (options) {\n Widget.fn.setOptions.call(this, options);\n this._sliderItemsInit();\n this._refresh();\n },\n destroy: function () {\n if (this._form) {\n this._form.off('reset', this._formResetHandler);\n }\n Widget.fn.destroy.call(this);\n }\n });\n function createWrapper(options, element, isHorizontal) {\n var orientationCssClass = isHorizontal ? ' k-slider-horizontal' : ' k-slider-vertical', style = options.style ? options.style : element.attr('style'), cssClasses = element.attr('class') ? ' ' + element.attr('class') : '', tickPlacementCssClass = '';\n if (options.tickPlacement == 'bottomRight') {\n tickPlacementCssClass = ' k-slider-bottomright';\n } else if (options.tickPlacement == 'topLeft') {\n tickPlacementCssClass = ' k-slider-topleft';\n }\n style = style ? ' style=\\'' + style + '\\'' : '';\n return '
';\n }\n function createButton(options, type, isHorizontal, isRtl) {\n var buttonCssClass = '';\n if (isHorizontal) {\n if (!isRtl && type == 'increase' || isRtl && type != 'increase') {\n buttonCssClass = 'k-i-arrow-60-right';\n } else {\n buttonCssClass = 'k-i-arrow-60-left';\n }\n } else {\n if (type == 'increase') {\n buttonCssClass = 'k-i-arrow-60-up';\n } else {\n buttonCssClass = 'k-i-arrow-60-down';\n }\n }\n return '' + '';\n }\n function createSliderItems(options, distance) {\n var result = '