{"version":3,"sources":["kendo.numerictextbox.js"],"names":["f","define","$","undefined","buttonHtml","direction","text","className","CLASS_ICON","truncate","value","precision","parts","parseFloat","split","POINT","substring","join","kendo","window","caret","keys","ui","Widget","activeElement","_activeElement","extractFormat","_extractFormat","parse","placeholderSupported","support","placeholder","getCulture","CHANGE","DISABLED","READONLY","INPUT","SPIN","ns","TOUCHEND","MOUSELEAVE","HOVEREVENTS","DEFAULT","FOCUSED","HOVER","FOCUS","LABELCLASSES","SELECTED","STATEDISABLED","STATE_INVALID","ARIA_DISABLED","INTEGER_REGEXP","NULL","proxy","isPlainObject","extend","NumericTextBox","init","element","options","min","max","step","disabled","inputType","that","this","isStep","fn","call","on","_focusout","attr","_parse","_initialOptions","_reset","_wrapper","_arrows","_validation","_input","mobileOS","_text","browser","edge","one","_toggleText","focus","selectValue","_click","factor","format","val","enable","is","parents","readonly","angular","elements","get","_label","notify","name","decimals","restrictDecimals","round","culture","spinners","upArrowText","downArrowText","label","events","_editable","disable","add","wrapper","_inputWrapper","off","_upArrowEventHandler","unbind","_downArrowEventHandler","_inputLabel","addClass","removeClass","_toggleHover","removeAttr","bind","e","preventDefault","_spin","_upArrow","_downArrow","_keydown","_keyup","_paste","_inputHandler","floatingLabel","setOptions","_arrowsWrap","toggle","toggleClass","prop","_placeholder","aria-valuemin","aria-valuemax","destroy","_form","_resetHandler","_option","adjusted","_value","_adjust","_update","_old","_focusin","arrows","_release","clearTimeout","_spinning","siblings","insertAfter","wrapAll","parent","eq","UserEvents","release","_validationIcon","hide","_blur","_change","_focusing","setTimeout","result","groupRegExp","extractRegExp","input","target","idx","_format","group","caretPosition","RegExp","exec","replace","length","indexOf","selectOnFocus","select","_typing","trigger","_culture","_removeInvalidState","numberFormat","toLowerCase","currency","percent","CLASSNAME","show","accessKey","find","insertBefore","setAttribute","type","title","tabIndex","style","cssText","role","autocomplete","key","keyCode","NUMPAD_DOT","_numPadDot","DOWN","_step","UP","ENTER","TAB","_cachedCaret","decimalSeparator","minInvalid","charAt","_numericRegex","test","_oldText","_blinkInvalidState","_addInvalidState","_invalidStateTimeout","separator","fractionRule","_separator","_floatRegExp","option","timeout","originalValue","toFixed","currentTarget","_round","rounder","isNotNull","toString","floating","labelText","id","content","_floatingLabelContainer","wrap","FloatingLabel","widget","isFunction","guid","DOMElement","width","css","firstChild","formId","form","closest","plugin","jQuery","amd","a1","a2","a3"],"mappings":"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","file":"kendo.numerictextbox.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.numerictextbox', [\n 'kendo.core',\n 'kendo.userevents',\n 'kendo.floatinglabel'\n ], f);\n}(function () {\n var __meta__ = {\n id: 'numerictextbox',\n name: 'NumericTextBox',\n category: 'web',\n description: 'The NumericTextBox widget can format and display numeric, percentage or currency textbox.',\n depends: [\n 'core',\n 'userevents',\n 'floatinglabel'\n ]\n };\n (function ($, undefined) {\n var kendo = window.kendo, caret = kendo.caret, keys = kendo.keys, ui = kendo.ui, Widget = ui.Widget, activeElement = kendo._activeElement, extractFormat = kendo._extractFormat, parse = kendo.parseFloat, placeholderSupported = kendo.support.placeholder, getCulture = kendo.getCulture, CHANGE = 'change', DISABLED = 'disabled', READONLY = 'readonly', INPUT = 'k-input', SPIN = 'spin', ns = '.kendoNumericTextBox', TOUCHEND = 'touchend', MOUSELEAVE = 'mouseleave' + ns, HOVEREVENTS = 'mouseenter' + ns + ' ' + MOUSELEAVE, DEFAULT = 'k-state-default', FOCUSED = 'k-state-focused', HOVER = 'k-state-hover', FOCUS = 'focus', POINT = '.', CLASS_ICON = 'k-icon', LABELCLASSES = 'k-label k-input-label', SELECTED = 'k-state-selected', STATEDISABLED = 'k-state-disabled', STATE_INVALID = 'k-state-invalid', ARIA_DISABLED = 'aria-disabled', INTEGER_REGEXP = /^(-)?(\\d*)$/, NULL = null, proxy = $.proxy, isPlainObject = $.isPlainObject, extend = $.extend;\n var NumericTextBox = Widget.extend({\n init: function (element, options) {\n var that = this, isStep = options && options.step !== undefined, min, max, step, value, disabled;\n var inputType;\n Widget.fn.init.call(that, element, options);\n options = that.options;\n element = that.element.on('focusout' + ns, proxy(that._focusout, that)).attr('role', 'spinbutton');\n options.placeholder = options.placeholder || element.attr('placeholder');\n min = that.min(element.attr('min'));\n max = that.max(element.attr('max'));\n step = that._parse(element.attr('step'));\n if (options.min === NULL && min !== NULL) {\n options.min = min;\n }\n if (options.max === NULL && max !== NULL) {\n options.max = max;\n }\n if (!isStep && step !== NULL) {\n options.step = step;\n }\n that._initialOptions = extend({}, options);\n inputType = element.attr('type');\n that._reset();\n that._wrapper();\n that._arrows();\n that._validation();\n that._input();\n if (!kendo.support.mobileOS) {\n that._text.on(FOCUS + ns, proxy(that._click, that));\n } else {\n that._text.on(TOUCHEND + ns + ' ' + FOCUS + ns, function () {\n if (kendo.support.browser.edge) {\n that._text.one(FOCUS + ns, function () {\n that._toggleText(false);\n element.focus();\n });\n } else {\n that._toggleText(false);\n element.focus();\n }\n that.selectValue();\n });\n }\n element.attr('aria-valuemin', options.min !== NULL ? options.min * options.factor : options.min).attr('aria-valuemax', options.max !== NULL ? options.max * options.factor : options.max);\n options.format = extractFormat(options.format);\n value = options.value;\n if (value == NULL) {\n if (inputType == 'number') {\n value = parseFloat(element.val());\n } else {\n value = element.val();\n }\n }\n that.value(value);\n disabled = !options.enable || element.is('[disabled]') || $(that.element).parents('fieldset').is(':disabled');\n if (disabled) {\n that.enable(false);\n } else {\n that.readonly(element.is('[readonly]'));\n }\n that.angular('compile', function () {\n return { elements: that._text.get() };\n });\n that._label();\n kendo.notify(that);\n },\n options: {\n name: 'NumericTextBox',\n decimals: NULL,\n enable: true,\n restrictDecimals: false,\n min: NULL,\n max: NULL,\n value: NULL,\n step: 1,\n round: true,\n culture: '',\n format: 'n',\n spinners: true,\n placeholder: '',\n factor: 1,\n upArrowText: 'Increase value',\n downArrowText: 'Decrease value',\n label: null\n },\n events: [\n CHANGE,\n SPIN\n ],\n _editable: function (options) {\n var that = this, element = that.element, disable = options.disable, readonly = options.readonly, text = that._text.add(element), wrapper = that._inputWrapper.off(HOVEREVENTS);\n that._toggleText(true);\n that._upArrowEventHandler.unbind('press');\n that._downArrowEventHandler.unbind('press');\n element.off('keydown' + ns).off('keyup' + ns).off('input' + ns).off('paste' + ns);\n if (that._inputLabel) {\n that._inputLabel.off(ns);\n }\n if (!readonly && !disable) {\n wrapper.addClass(DEFAULT).removeClass(STATEDISABLED).on(HOVEREVENTS, that._toggleHover);\n text.removeAttr(DISABLED).removeAttr(READONLY).attr(ARIA_DISABLED, false);\n that._upArrowEventHandler.bind('press', function (e) {\n e.preventDefault();\n that._spin(1);\n that._upArrow.addClass(SELECTED);\n });\n that._downArrowEventHandler.bind('press', function (e) {\n e.preventDefault();\n that._spin(-1);\n that._downArrow.addClass(SELECTED);\n });\n that.element.on('keydown' + ns, proxy(that._keydown, that)).on('keyup' + ns, proxy(that._keyup, that)).on('paste' + ns, proxy(that._paste, that)).on('input' + ns, proxy(that._inputHandler, that));\n if (that._inputLabel) {\n that._inputLabel.on('click' + ns, proxy(that.focus, that));\n }\n } else {\n wrapper.addClass(disable ? STATEDISABLED : DEFAULT).removeClass(disable ? DEFAULT : STATEDISABLED);\n text.attr(DISABLED, disable).attr(READONLY, readonly).attr(ARIA_DISABLED, disable);\n }\n },\n readonly: function (readonly) {\n var that = this;\n this._editable({\n readonly: readonly === undefined ? true : readonly,\n disable: false\n });\n if (that.floatingLabel) {\n that.floatingLabel.readonly(readonly === undefined ? true : readonly);\n }\n },\n enable: function (enable) {\n var that = this;\n this._editable({\n readonly: false,\n disable: !(enable = enable === undefined ? true : enable)\n });\n if (that.floatingLabel) {\n that.floatingLabel.enable(enable = enable === undefined ? true : enable);\n }\n },\n setOptions: function (options) {\n var that = this;\n Widget.fn.setOptions.call(that, options);\n that._arrowsWrap.toggle(that.options.spinners);\n that._inputWrapper.toggleClass('k-expand-padding', !that.options.spinners);\n that._text.prop('placeholder', that.options.placeholder);\n that._placeholder(that.options.placeholder);\n that.element.attr({\n 'aria-valuemin': that.options.min !== NULL ? that.options.min * that.options.factor : that.options.min,\n 'aria-valuemax': that.options.max !== NULL ? that.options.max * that.options.factor : that.options.max\n });\n that.options.format = extractFormat(that.options.format);\n if (options.value !== undefined) {\n that.value(options.value);\n }\n },\n destroy: function () {\n var that = this;\n if (that._inputLabel) {\n that._inputLabel.off(ns);\n if (that.floatingLabel) {\n that.floatingLabel.destroy();\n }\n }\n that.element.add(that._text).add(that._upArrow).add(that._downArrow).add(that._inputWrapper).off(ns);\n that._upArrowEventHandler.destroy();\n that._downArrowEventHandler.destroy();\n if (that._form) {\n that._form.off('reset', that._resetHandler);\n }\n Widget.fn.destroy.call(that);\n },\n min: function (value) {\n return this._option('min', value);\n },\n max: function (value) {\n return this._option('max', value);\n },\n step: function (value) {\n return this._option('step', value);\n },\n value: function (value) {\n var that = this, adjusted;\n if (value === undefined) {\n return that._value;\n }\n value = that._parse(value);\n adjusted = that._adjust(value);\n if (value !== adjusted) {\n return;\n }\n that._update(value);\n that._old = that._value;\n },\n focus: function () {\n this._focusin();\n },\n _adjust: function (value) {\n var that = this, options = that.options, min = options.min, max = options.max;\n if (value === NULL) {\n return value;\n }\n if (min !== NULL && value < min) {\n value = min;\n } else if (max !== NULL && value > max) {\n value = max;\n }\n return value;\n },\n _arrows: function () {\n var that = this, arrows, _release = function () {\n clearTimeout(that._spinning);\n arrows.removeClass(SELECTED);\n }, options = that.options, spinners = options.spinners, element = that.element;\n arrows = element.siblings('.' + CLASS_ICON);\n if (!arrows[0]) {\n arrows = $(buttonHtml('increase', options.upArrowText) + buttonHtml('decrease', options.downArrowText)).insertAfter(element);\n that._arrowsWrap = arrows.wrapAll('').parent();\n }\n if (!spinners) {\n arrows.parent().toggle(spinners);\n that._inputWrapper.addClass('k-expand-padding');\n }\n that._upArrow = arrows.eq(0);\n that._upArrowEventHandler = new kendo.UserEvents(that._upArrow, { release: _release });\n that._downArrow = arrows.eq(1);\n that._downArrowEventHandler = new kendo.UserEvents(that._downArrow, { release: _release });\n },\n _validation: function () {\n var that = this;\n var element = that.element;\n that._validationIcon = $('').hide().insertAfter(element);\n },\n _blur: function () {\n var that = this;\n that._toggleText(true);\n that._change(that.element.val());\n },\n _click: function (e) {\n var that = this;\n clearTimeout(that._focusing);\n that._focusing = setTimeout(function () {\n var input = e.target, idx = caret(input)[0], value = input.value.substring(0, idx), format = that._format(that.options.format), group = format[','], result, groupRegExp, extractRegExp, caretPosition = 0;\n if (group) {\n groupRegExp = new RegExp('\\\\' + group, 'g');\n extractRegExp = new RegExp('(^(-)$)|(^(-)?([\\\\d\\\\' + group + ']+)(\\\\' + format[POINT] + ')?(\\\\d+)?)');\n }\n if (extractRegExp) {\n result = extractRegExp.exec(value);\n }\n if (result) {\n caretPosition = result[0].replace(groupRegExp, '').length;\n if (value.indexOf('(') != -1 && that._value < 0) {\n caretPosition++;\n }\n }\n that._focusin();\n caret(that.element[0], caretPosition);\n that.selectValue();\n });\n },\n selectValue: function () {\n if (this.options.selectOnFocus) {\n this.element[0].select();\n }\n },\n _change: function (value) {\n var that = this, factor = that.options.factor;\n if (factor && factor !== 1) {\n value = kendo.parseFloat(value);\n if (value !== null) {\n value = value / factor;\n }\n }\n that._update(value);\n value = that._value;\n if (that._old != value) {\n that._old = value;\n if (!that._typing) {\n that.element.trigger(CHANGE);\n }\n that.trigger(CHANGE);\n }\n that._typing = false;\n },\n _culture: function (culture) {\n return culture || getCulture(this.options.culture);\n },\n _focusin: function () {\n var that = this;\n that._inputWrapper.addClass(FOCUSED);\n that._toggleText(false);\n that.element[0].focus();\n },\n _focusout: function () {\n var that = this;\n clearTimeout(that._focusing);\n that._inputWrapper.removeClass(FOCUSED).removeClass(HOVER);\n that._blur();\n that._removeInvalidState();\n },\n _format: function (format, culture) {\n var numberFormat = this._culture(culture).numberFormat;\n format = format.toLowerCase();\n if (format.indexOf('c') > -1) {\n numberFormat = numberFormat.currency;\n } else if (format.indexOf('p') > -1) {\n numberFormat = numberFormat.percent;\n }\n return numberFormat;\n },\n _input: function () {\n var that = this, options = that.options, CLASSNAME = 'k-formatted-value', element = that.element.addClass(INPUT).show()[0], accessKey = element.accessKey, wrapper = that.wrapper, text;\n text = wrapper.find(POINT + CLASSNAME);\n if (!text[0]) {\n text = $('').insertBefore(element).addClass(CLASSNAME).attr('aria-hidden', 'true');\n }\n try {\n element.setAttribute('type', 'text');\n } catch (e) {\n element.type = 'text';\n }\n text[0].title = element.title;\n text[0].tabIndex = element.tabIndex;\n text[0].style.cssText = element.style.cssText;\n text.prop('placeholder', options.placeholder);\n if (accessKey) {\n text.attr('accesskey', accessKey);\n element.accessKey = '';\n }\n that._text = text.addClass(element.className).attr({\n 'role': 'spinbutton',\n 'aria-valuemin': options.min !== NULL ? options.min * options.factor : options.min,\n 'aria-valuemax': options.max !== NULL ? options.max * options.factor : options.max,\n 'autocomplete': 'off'\n });\n },\n _keydown: function (e) {\n var that = this, key = e.keyCode;\n if (key === keys.NUMPAD_DOT) {\n that._numPadDot = true;\n }\n if (key == keys.DOWN) {\n that._step(-1);\n return;\n } else if (key == keys.UP) {\n that._step(1);\n return;\n } else if (key == keys.ENTER) {\n that._change(that.element.val());\n return;\n }\n if (key != keys.TAB) {\n that._typing = true;\n }\n that._cachedCaret = caret(that.element);\n },\n _keyup: function () {\n this._removeInvalidState();\n },\n _inputHandler: function () {\n var element = this.element;\n var value = element.val();\n var min = this.options.min;\n var numberFormat = this._format(this.options.format);\n var decimalSeparator = numberFormat[POINT];\n var minInvalid = min !== null && min >= 0 && value.charAt(0) === '-';\n if (this._numPadDot && decimalSeparator !== POINT) {\n value = value.replace(POINT, decimalSeparator);\n this.element.val(value);\n this._numPadDot = false;\n }\n if (this._numericRegex(numberFormat).test(value) && !minInvalid) {\n this._oldText = value;\n } else {\n this._blinkInvalidState();\n this.element.val(this._oldText);\n if (this._cachedCaret) {\n caret(element, this._cachedCaret[0]);\n this._cachedCaret = null;\n }\n }\n },\n _blinkInvalidState: function () {\n var that = this;\n that._addInvalidState();\n clearTimeout(that._invalidStateTimeout);\n that._invalidStateTimeout = setTimeout(proxy(that._removeInvalidState, that), 100);\n },\n _addInvalidState: function () {\n var that = this;\n that._inputWrapper.addClass(STATE_INVALID);\n that._validationIcon.show();\n },\n _removeInvalidState: function () {\n var that = this;\n that._inputWrapper.removeClass(STATE_INVALID);\n that._validationIcon.hide();\n that._invalidStateTimeout = null;\n },\n _numericRegex: function (numberFormat) {\n var that = this;\n var separator = numberFormat[POINT];\n var precision = that.options.decimals;\n var fractionRule = '*';\n if (separator === POINT) {\n separator = '\\\\' + separator;\n }\n if (precision === NULL) {\n precision = numberFormat.decimals;\n }\n if (precision === 0 && that.options.restrictDecimals) {\n return INTEGER_REGEXP;\n }\n if (that.options.restrictDecimals) {\n fractionRule = '{0,' + precision + '}';\n }\n if (that._separator !== separator) {\n that._separator = separator;\n that._floatRegExp = new RegExp('^(-)?(((\\\\d+(' + separator + '\\\\d' + fractionRule + ')?)|(' + separator + '\\\\d' + fractionRule + ')))?$');\n }\n return that._floatRegExp;\n },\n _paste: function (e) {\n var that = this;\n var element = e.target;\n var value = element.value;\n var numberFormat = that._format(that.options.format);\n setTimeout(function () {\n var result = that._parse(element.value);\n if (result === NULL) {\n that._update(value);\n } else {\n element.value = result.toString().replace(POINT, numberFormat[POINT]);\n if (that._adjust(result) !== result || !that._numericRegex(numberFormat).test(element.value)) {\n that._update(value);\n }\n }\n });\n },\n _option: function (option, value) {\n var that = this, element = that.element, options = that.options;\n if (value === undefined) {\n return options[option];\n }\n value = that._parse(value);\n if (!value && option === 'step') {\n return;\n }\n options[option] = value;\n element.add(that._text).attr('aria-value' + option, value);\n element.attr(option, value);\n },\n _spin: function (step, timeout) {\n var that = this;\n timeout = timeout || 500;\n clearTimeout(that._spinning);\n that._spinning = setTimeout(function () {\n that._spin(step, 50);\n }, timeout);\n that._step(step);\n },\n _step: function (step) {\n var that = this, element = that.element, originalValue = that._value, value = that._parse(element.val()) || 0, precision = that.options.decimals || 2;\n if (activeElement() != element[0]) {\n that._focusin();\n }\n if (that.options.factor && value) {\n value = value / that.options.factor;\n }\n value = +(value + that.options.step * step).toFixed(precision);\n value = that._adjust(value);\n that._update(value);\n that._typing = false;\n if (originalValue !== value) {\n that.trigger(SPIN);\n }\n },\n _toggleHover: function (e) {\n $(e.currentTarget).toggleClass(HOVER, e.type === 'mouseenter');\n },\n _toggleText: function (toggle) {\n var that = this;\n that._text.toggle(toggle);\n that.element.toggle(!toggle);\n },\n _parse: function (value, culture) {\n return parse(value, this._culture(culture), this.options.format);\n },\n _round: function (value, precision) {\n var rounder = this.options.round ? kendo._round : truncate;\n return rounder(value, precision);\n },\n _update: function (value) {\n var that = this, options = that.options, factor = options.factor, format = options.format, decimals = options.decimals, culture = that._culture(), numberFormat = that._format(format, culture), isNotNull;\n if (decimals === NULL) {\n decimals = numberFormat.decimals;\n }\n value = that._parse(value, culture);\n isNotNull = value !== NULL;\n if (isNotNull) {\n value = parseFloat(that._round(value, decimals), 10);\n }\n that._value = value = that._adjust(value);\n that._placeholder(kendo.toString(value, format, culture));\n if (isNotNull) {\n if (factor) {\n value = parseFloat(that._round(value * factor, decimals), 10);\n }\n value = value.toString();\n if (value.indexOf('e') !== -1) {\n value = that._round(+value, decimals);\n }\n value = value.replace(POINT, numberFormat[POINT]);\n } else {\n value = null;\n }\n that.element.val(value);\n that._oldText = value;\n that.element.add(that._text).attr('aria-valuenow', value);\n },\n _placeholder: function (value) {\n var input = this._text;\n input.val(value);\n if (!placeholderSupported && !value) {\n input.val(this.options.placeholder);\n }\n input.attr('title', this.element.attr('title') || input.val());\n },\n _label: function () {\n var that = this;\n var element = that.element;\n var options = that.options;\n var id = element.attr('id');\n var floating;\n var labelText;\n if (options.label !== null) {\n floating = isPlainObject(options.label) ? options.label.floating : false;\n labelText = isPlainObject(options.label) ? options.label.content : options.label;\n if (floating) {\n that._floatingLabelContainer = that.wrapper.wrap('').parent();\n that.floatingLabel = new kendo.ui.FloatingLabel(that._floatingLabelContainer, { widget: that });\n }\n if (kendo.isFunction(labelText)) {\n labelText = labelText.call(that);\n }\n if (!labelText) {\n labelText = '';\n }\n if (!id) {\n id = options.name + '_' + kendo.guid();\n element.attr('id', id);\n }\n that._inputLabel = $('\\'').insertBefore(that.wrapper);\n if (that.element.attr('disabled') === undefined && that.element.attr('readonly') === undefined) {\n that._inputLabel.on('click' + ns, proxy(that.focus, that));\n }\n }\n },\n _wrapper: function () {\n var that = this, element = that.element, DOMElement = element[0], wrapper;\n wrapper = element.parents('.k-numerictextbox');\n if (!wrapper.is('span.k-numerictextbox')) {\n wrapper = element.hide().wrap('').parent();\n wrapper = wrapper.wrap('').parent();\n }\n wrapper[0].style.cssText = DOMElement.style.cssText;\n DOMElement.style.width = '';\n that.wrapper = wrapper.addClass('k-widget k-numerictextbox').addClass(DOMElement.className).removeClass('input-validation-error').css('display', '');\n that._inputWrapper = $(wrapper[0].firstChild);\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._resetHandler = function () {\n setTimeout(function () {\n that.value(element[0].value);\n that.max(that._initialOptions.max);\n that.min(that._initialOptions.min);\n });\n };\n that._form = form.on('reset', that._resetHandler);\n }\n }\n });\n function buttonHtml(direction, text) {\n var className = 'k-i-arrow-' + (direction === 'increase' ? '60-up' : '60-down');\n return '' + '' + '';\n }\n function truncate(value, precision) {\n var parts = parseFloat(value, 10).toString().split(POINT);\n if (parts[1]) {\n parts[1] = parts[1].substring(0, precision);\n }\n return parts.join(POINT);\n }\n ui.plugin(NumericTextBox);\n }(window.kendo.jQuery));\n return window.kendo;\n}, typeof define == 'function' && define.amd ? define : function (a1, a2, a3) {\n (a3 || a2)();\n}));"]}