{"version":3,"file":"kendo.numerictextbox.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendonumerictextbox","js","this","$","undefined$1","kendo","window","caret","keys","html","ui","Widget","activeElement","_activeElement","extractFormat","_extractFormat","parse","parseFloat","placeholderSupported","support","placeholder","getCulture","CHANGE","DISABLED","READONLY","INPUT","SPIN","ns","HOVEREVENTS","FOCUSED","HOVER","FOCUS","POINT","SELECTED","STATEDISABLED","STATEINVALID","ARIA_DISABLED","INTEGER_REGEXP","NULL","isPlainObject","extend","NumericTextBox","init","element","options","min","max","step","value","inputType","that","isStep","fn","call","on","_focusout","bind","attr","_parse","_initialOptions","_reset","_wrapper","_arrows","_validation","_input","mobileOS","_text","browser","edge","one","_focusin","selectValue","_click","factor","format","val","enable","is","parents","readonly","angular","elements","get","_label","_ariaLabel","_applyCssClasses","notify","name","decimals","restrictDecimals","round","culture","spinners","selectOnFocus","upArrowText","downArrowText","label","size","fillMode","rounded","events","_editable","disable","text","add","wrapper","off","_toggleText","_upArrowEventHandler","unbind","_downArrowEventHandler","_inputLabel","addClass","removeClass","_toggleHover","prop","e","preventDefault","_spin","_upArrow","_downArrow","_keydown","_keyup","_paste","_inputHandler","focus","floatingLabel","setOptions","toggleClass","_placeholder","destroy","_arrowsWrap","remove","_floatingLabelContainer","unwrap","_form","_resetHandler","_option","_value","_adjust","_update","_old","refresh","arrows","_release","clearTimeout","_spinning","siblings","buttonHtml","appendTo","wrapAll","parent","toggle","eq","UserEvents","release","_validationIcon","icon","iconClass","insertAfter","_blur","_change","_focusing","setTimeout","result","groupRegExp","extractRegExp","input","target","idx","substring","_format","group","caretPosition","RegExp","exec","replace","length","indexOf","select","_getFactorValue","_typing","trigger","_culture","_removeInvalidState","numberFormat","toLowerCase","currency","percent","show","accessKey","find","first","insertBefore","setAttribute","type","title","tabIndex","style","cssText","className","role","autocomplete","key","keyCode","NUMPAD_DOT","_numPadDot","DOWN","UP","ENTER","TAB","_cachedCaret","_step","decimalSeparator","minInvalid","charAt","_isPasted","toString","_numericRegex","test","_oldText","_blinkInvalidState","_addInvalidState","_invalidStateTimeout","separator","precision","fractionRule","_separator","_floatRegExp","option","timeout","originalValue","toFixed","currentTarget","removeAttr","_round","truncate","isNotNull","floating","labelText","id","content","wrap","FloatingLabel","widget","isFunction","guid","DOMElement","hide","width","css","formId","form","closest","direction","dir","renderButton","shape","parts","split","join","cssProperties","registerPrefix","registerValues","values","roundedValues","concat","plugin","jQuery"],"sources":["kendo.numerictextbox.js"],"mappings":"CAAA,SAAWA,EAAQC,GACI,iBAAZC,SAA0C,oBAAXC,OAAyBA,OAAOD,QAAUD,EAAQG,QAAQ,iBAAkBA,QAAQ,uBAAwBA,QAAQ,0BAA2BA,QAAQ,wBAAyBA,QAAQ,mBAC5M,mBAAXC,QAAyBA,OAAOC,IAAMD,OAAO,CAAC,iBAAkB,uBAAwB,0BAA2B,wBAAyB,mBAAoBJ,KACtKD,EAA+B,oBAAfO,WAA6BA,WAAaP,GAAUQ,MAAcC,oBAAsBT,EAAOS,qBAAuB,GAAIT,EAAOS,oBAAoBC,GAAKT,KAH/K,CAIGU,MAAM,WAw9BL,OA/8BA,SAAUC,EAAGC,GACT,IAAIC,EAAQC,OAAOD,MACfE,EAAQF,EAAME,MACdC,EAAOH,EAAMG,KACbC,EAAOJ,EAAMI,KACbC,EAAKL,EAAMK,GACXC,EAASD,EAAGC,OACZC,EAAgBP,EAAMQ,eACtBC,EAAgBT,EAAMU,eACtBC,EAAQX,EAAMY,WACdC,EAAuBb,EAAMc,QAAQC,YACrCC,EAAahB,EAAMgB,WACnBC,EAAS,SACTC,EAAW,WACXC,EAAW,WACXC,EAAQ,gBACRC,EAAO,OACPC,EAAK,uBAGLC,EAAc,aAAeD,EAAf,kCACdE,EAAU,UACVC,EAAQ,UACRC,EAAQ,QACRC,EAAQ,IAIRC,EAAW,aACXC,EAAgB,aAChBC,EAAe,YACfC,EAAgB,gBAChBC,EAAiB,cACjBC,EAAO,KACPC,EAAgBpC,EAAEoC,cAClBC,EAASrC,EAAEqC,OAEXC,EAAiB9B,EAAO6B,OAAO,CAC9BE,KAAM,SAASC,EAASC,GACpB,IAEAC,EAAKC,EAAKC,EAAMC,EACZC,EAHAC,EAAOhD,KACXiD,EAASP,GAAWA,EAAQG,OAAS3C,EAIrCO,EAAOyC,GAAGV,KAAKW,KAAKH,EAAMP,EAASC,GAEnCA,EAAUM,EAAKN,QACfD,EAAUO,EAAKP,QACAW,GAAG,WAAa3B,EAAIuB,EAAKK,UAAUC,KAAKN,IACxCO,KAAK,OAAQ,cAE5Bb,EAAQxB,YAAcwB,EAAQxB,aAAeuB,EAAQc,KAAK,eAE1DZ,EAAMK,EAAKL,IAAIF,EAAQc,KAAK,QAC5BX,EAAMI,EAAKJ,IAAIH,EAAQc,KAAK,QAC5BV,EAAOG,EAAKQ,OAAOf,EAAQc,KAAK,SAE5Bb,EAAQC,MAAQP,GAAQO,IAAQP,IAChCM,EAAQC,IAAMA,GAGdD,EAAQE,MAAQR,GAAQQ,IAAQR,IAChCM,EAAQE,IAAMA,GAGbK,GAAUJ,IAAST,IACpBM,EAAQG,KAAOA,GAGnBG,EAAKS,gBAAkBnB,EAAO,GAAII,GAElCK,EAAYN,EAAQc,KAAK,QAEzBP,EAAKU,SACLV,EAAKW,WACLX,EAAKY,UACLZ,EAAKa,cACLb,EAAKc,SAEA3D,EAAMc,QAAQ8C,SAGff,EAAKgB,MAAMZ,GAhET,WAgEuB3B,EAAK,IAAMI,EAAQJ,GAAI,WACxCtB,EAAMc,QAAQgD,QAAQC,KACtBlB,EAAKgB,MAAMG,IAAItC,EAAQJ,GAAI,WACxBuB,EAAKoB,cAGTpB,EAAKoB,WAERpB,EAAKqB,iBAVTrB,EAAKgB,MAAMZ,GAAGvB,EAAQJ,EAAIuB,EAAKsB,OAAOhB,KAAKN,IAc/CP,EAAQc,KAAK,gBAAiBb,EAAQC,MAAQP,EAAOM,EAAQC,IAAMD,EAAQ6B,OAAS7B,EAAQC,KACpFY,KAAK,gBAAiBb,EAAQE,MAAQR,EAAOM,EAAQE,IAAMF,EAAQ6B,OAAS7B,EAAQE,KAE5FF,EAAQ8B,OAAS5D,EAAc8B,EAAQ8B,SAEvC1B,EAAQJ,EAAQI,QAEHV,IAENU,EADc,UAAbC,EACOhC,WAAW0B,EAAQgC,OAElBhC,EAAQgC,OAIxBzB,EAAKF,MAAMA,IAECJ,EAAQgC,QAAUjC,EAAQkC,GAAG,eAAiB1E,EAAE+C,EAAKP,SAASmC,QAAQ,YAAYD,GAAG,aAG7F3B,EAAK0B,QAAO,GAEZ1B,EAAK6B,SAASpC,EAAQkC,GAAG,eAG7B3B,EAAK8B,QAAQ,WAAW,WACpB,MAAO,CACHC,SAAU/B,EAAKgB,MAAMgB,UAI7BhC,EAAKiC,SACLjC,EAAKkC,WAAWlC,EAAKgB,OACrBhB,EAAKmC,mBAELhF,EAAMiF,OAAOpC,IAGlBN,QAAS,CACL2C,KAAM,iBACNC,SAAUlD,EACVsC,QAAQ,EACRa,kBAAkB,EAClB5C,IAAKP,EACLQ,IAAKR,EACLU,MAAOV,EACPS,KAAM,EACN2C,OAAO,EACPC,QAAS,GACTjB,OAAQ,IACRkB,UAAU,EACVxE,YAAa,GACbyE,eAAe,EACfpB,OAAQ,EACRqB,YAAa,iBACbC,cAAe,iBACfC,MAAO,KACPC,KAAM,SACNC,SAAU,QACVC,QAAS,UAEbC,OAAQ,CACJ9E,EACAI,GAGJ2E,UAAW,SAASzD,GAChB,IAAIM,EAAOhD,KACPyC,EAAUO,EAAKP,QACf2D,EAAU1D,EAAQ0D,QAClBvB,EAAWnC,EAAQmC,SACnBwB,EAAOrD,EAAKgB,MAAMsC,IAAI7D,GACtB8D,EAAUvD,EAAKuD,QAAQC,IAAI9E,GAE/BsB,EAAKyD,aAAY,GAEjBzD,EAAK0D,qBAAqBC,OAAO,SACjC3D,EAAK4D,uBAAuBD,OAAO,SACnClE,EACK+D,IAAI,UAAY/E,GAChB+E,IAAI,QAAU/E,GACd+E,IAAI,QAAU/E,GACd+E,IAAI,QAAU/E,GAEfuB,EAAK6D,aACL7D,EAAK6D,YAAYL,IAAI/E,GAGpBoD,GAAauB,GAgCdG,EACKO,SAASV,EAAUpE,EAAgB,IACnC+E,YAAYX,EAAU,GAAKpE,GAEhCqE,EAAK9C,KAAKlC,EAAU+E,GACf7C,KAAKjC,EAAUuD,GACftB,KAAKrB,EAAekE,KArCzBG,EACKQ,YAAY/E,GACZoB,GAAG1B,EAAasB,EAAKgE,cAE1BX,EAAKY,KAAK5F,GAAU,GACf4F,KAAK3F,GAAU,GACfiC,KAAKrB,GAAe,GAEzBc,EAAK0D,qBAAqBpD,KAAK,SAAS,SAAS4D,GAC7CA,EAAEC,iBACFnE,EAAKoE,MAAM,GACXpE,EAAKqE,SAASP,SAAS/E,MAG3BiB,EAAK4D,uBAAuBtD,KAAK,SAAS,SAAS4D,GAC/CA,EAAEC,iBACFnE,EAAKoE,OAAO,GACZpE,EAAKsE,WAAWR,SAAS/E,MAG7BiB,EAAKP,QACAW,GAAG,UAAY3B,EAAIuB,EAAKuE,SAASjE,KAAKN,IACtCI,GAAG,QAAU3B,EAAIuB,EAAKwE,OAAOlE,KAAKN,IAClCI,GAAG,QAAU3B,EAAIuB,EAAKyE,OAAOnE,KAAKN,IAClCI,GAAG,QAAU3B,EAAIuB,EAAK0E,cAAcpE,KAAKN,IAE1CA,EAAK6D,aACL7D,EAAK6D,YAAYzD,GAAG,QAAU3B,EAAIuB,EAAK2E,MAAMrE,KAAKN,MAc9D6B,SAAU,SAASA,GAGf7E,KAAKmG,UAAU,CACXtB,SAAUA,IAAa3E,GAAqB2E,EAC5CuB,SAAS,IAJFpG,KAOF4H,eAPE5H,KAQF4H,cAAc/C,SAASA,IAAa3E,GAAqB2E,IAItEH,OAAQ,SAASA,GAGb1E,KAAKmG,UAAU,CACXtB,UAAU,EACVuB,UAAW1B,EAASA,IAAWxE,GAAqBwE,KAJ7C1E,KAOF4H,eAPE5H,KAQF4H,cAAclD,OAAOA,EAASA,IAAWxE,GAAqBwE,IAI3EmD,WAAY,SAASnF,GACjB,IAAIM,EAAOhD,KACXS,EAAOyC,GAAG2E,WAAW1E,KAAKH,EAAMN,GAEhCM,EAAKuD,QAAQuB,YAAY,oBAAqB9E,EAAKN,QAAQgD,UAC3D1C,EAAKgB,MAAMiD,KAAK,cAAejE,EAAKN,QAAQxB,aAC5C8B,EAAK+E,aAAa/E,EAAKN,QAAQxB,aAC/B8B,EAAKP,QAAQc,KAAK,CACd,gBAAiBP,EAAKN,QAAQC,MAAQP,EAAOY,EAAKN,QAAQC,IAAMK,EAAKN,QAAQ6B,OAASvB,EAAKN,QAAQC,IACnG,gBAAiBK,EAAKN,QAAQE,MAAQR,EAAOY,EAAKN,QAAQE,IAAMI,EAAKN,QAAQ6B,OAASvB,EAAKN,QAAQE,MAGvGI,EAAKN,QAAQ8B,OAAS5D,EAAcoC,EAAKN,QAAQ8B,QACjDxB,EAAK0D,qBAAqBsB,UAC1BhF,EAAK0D,qBAAuB,KAC5B1D,EAAK4D,uBAAuBoB,UAC5BhF,EAAK4D,uBAAyB,KAC9B5D,EAAKiF,YAAYC,SACjBlF,EAAKY,UAELZ,EAAKmC,mBAEDnC,EAAK6D,cACL7D,EAAK6D,YAAYL,IAAI/E,GACrBuB,EAAK6D,YAAYqB,SAEblF,EAAK4E,gBACL5E,EAAK4E,cAAcI,UACfhF,EAAKmF,yBACLnF,EAAKuD,QAAQ6B,WAKzBpF,EAAKiC,SAELjC,EAAKmD,UAAU,CACXtB,SAAU7B,EAAKN,QAAQmC,SACvBuB,SAAUpD,EAAKN,QAAQgC,SAGvBhC,EAAQI,QAAU5C,GAClB8C,EAAKF,MAAMJ,EAAQI,QAI3BkF,QAAS,WACL,IAAIhF,EAAOhD,KAEPgD,EAAK6D,cACL7D,EAAK6D,YAAYL,IAAI/E,GAEjBuB,EAAK4E,eACL5E,EAAK4E,cAAcI,WAI3BhF,EAAKP,QACA6D,IAAItD,EAAKgB,OACTsC,IAAItD,EAAKqE,UACTf,IAAItD,EAAKsE,YACTd,IAAI/E,GAETuB,EAAK0D,qBAAqBsB,UAC1BhF,EAAK4D,uBAAuBoB,UAExBhF,EAAKqF,OACLrF,EAAKqF,MAAM7B,IAAI,QAASxD,EAAKsF,eAGjC7H,EAAOyC,GAAG8E,QAAQ7E,KAAKH,IAG3BL,IAAK,SAASG,GACV,OAAO9C,KAAKuI,QAAQ,MAAOzF,IAG/BF,IAAK,SAASE,GACV,OAAO9C,KAAKuI,QAAQ,MAAOzF,IAG/BD,KAAM,SAASC,GACX,OAAO9C,KAAKuI,QAAQ,OAAQzF,IAGhCA,MAAO,SAASA,GACZ,IAAIE,EAAOhD,KAEX,GAAI8C,IAAU5C,EACV,OAAO8C,EAAKwF,QAGhB1F,EAAQE,EAAKQ,OAAOV,MACTE,EAAKyF,QAAQ3F,KAMxBE,EAAK0F,QAAQ5F,GACbE,EAAK2F,KAAO3F,EAAKwF,OAEbxF,EAAK4E,eACL5E,EAAK4E,cAAcgB,YAI3BjB,MAAO,WACH3H,KAAKoE,YAGTqE,QAAS,SAAS3F,GACd,IACAJ,EADW1C,KACI0C,QACfC,EAAMD,EAAQC,IACdC,EAAMF,EAAQE,IAEd,OAAIE,IAAUV,IAIVO,IAAQP,GAAQU,EAAQH,EACxBG,EAAQH,EACDC,IAAQR,GAAQU,EAAQF,IAC/BE,EAAQF,IANDE,GAYfc,QAAS,WACL,IACAiF,EADI7F,EAAOhD,KAEX8I,EAAW,WACPC,aAAc/F,EAAKgG,WACnBH,EAAO9B,YAAYhF,IAEvBW,EAAUM,EAAKN,QACfgD,EAAWhD,EAAQgD,SACnBjD,EAAUO,EAAKP,SAEfoG,EAASpG,EAAQwG,SAAS,mBAEd,KACRJ,EAAS5I,EAAEiJ,EAAW,WAAYxG,EAAQkD,YAAalD,GAAWwG,EAAW,WAAYxG,EAAQmD,cAAenD,IACvGyG,SAASnG,EAAKuD,SAEvBvD,EAAKiF,YAAcY,EAAOO,QAAQ,iDAAiDC,UAGlF3D,IACDmD,EAAOQ,SAASC,OAAO5D,GACvB1C,EAAKuD,QAAQO,SAAS,qBAG1B9D,EAAKqE,SAAWwB,EAAOU,GAAG,GAC1BvG,EAAK0D,qBAAuB,IAAIvG,EAAMqJ,WAAWxG,EAAKqE,SAAU,CAAEoC,QAASX,IAC3E9F,EAAKsE,WAAauB,EAAOU,GAAG,GAC5BvG,EAAK4D,uBAAyB,IAAIzG,EAAMqJ,WAAWxG,EAAKsE,WAAY,CAAEmC,QAASX,KAGnFjF,YAAa,WACT,IACIpB,EADOzC,KACQyC,QADRzC,KAGN0J,gBAAkBzJ,EAAEE,EAAMK,GAAGmJ,KAAK,CAAEA,KAAM,qBAAsBC,UAAW,sCAAuCC,YAAYpH,IAGvIqH,MAAO,WACH,IAAI9G,EAAOhD,KAEXgD,EAAKyD,aAAY,GAEjBzD,EAAK+G,QAAQ/G,EAAKP,QAAQgC,QAG9BH,OAAQ,SAAS4C,GACb,IAAIlE,EAAOhD,KAEX+I,aAAa/F,EAAKgH,WAClBhH,EAAKgH,UAAYC,YAAW,WACxB,IAKIC,EAAQC,EAAaC,EALrBC,EAAQnD,EAAEoD,OACVC,EAAMlK,EAAMgK,GAAO,GACnBvH,EAAQuH,EAAMvH,MAAM0H,UAAU,EAAGD,GACjC/F,EAASxB,EAAKyH,QAAQzH,EAAKN,QAAQ8B,QACnCkG,EAAQlG,EAAO,KAEfmG,EAAgB,EAEhBD,IACAP,EAAc,IAAIS,OAAO,KAAOF,EAAO,KACvCN,EAAgB,IAAIQ,OAAO,QAAUpG,EAAa,OAAI,YAAckG,EAAQ,SAAWlG,EAAO1C,KAAS,cAGvGsI,IACAF,EAASE,EAAcS,KAAK/H,IAG5BoH,IACAS,EAAgBT,EAAO,GAAGY,QAAQX,EAAa,IAAIY,QAExB,GAAvBjI,EAAMkI,QAAQ,MAAchI,EAAKwF,OAAS,GAC1CmC,KAIR3H,EAAKoB,WAEL/D,EAAM2C,EAAKP,QAAQ,GAAIkI,GACvB3H,EAAKqB,kBAIbA,YAAa,WACLrE,KAAK0C,QAAQiD,eACb3F,KAAKyC,QAAQ,GAAGwI,UAIxBC,gBAAiB,SAASpI,GACtB,IACIyB,EADOvE,KACO0C,QAAQ6B,OAS1B,OAPIA,GAAqB,IAAXA,GAEI,QADdzB,EAAQ3C,EAAMY,WAAW+B,MAErBA,GAAgByB,GAIjBzB,GAGXiH,QAAS,SAASjH,GACd,IAAIE,EAAOhD,KAEX8C,EAAQE,EAAKkI,gBAAgBpI,GAC7BE,EAAK0F,QAAQ5F,GACbA,EAAQE,EAAKwF,OAETxF,EAAK2F,MAAQ7F,IACbE,EAAK2F,KAAO7F,EAEPE,EAAKmI,SAENnI,EAAKP,QAAQ2I,QAAQhK,GAGzB4B,EAAKoI,QAAQhK,IAGjB4B,EAAKmI,SAAU,GAGnBE,SAAU,SAAS5F,GACf,OAAOA,GAAWtE,EAAWnB,KAAK0C,QAAQ+C,UAG9CrB,SAAU,WACN,IAAIpB,EAAOhD,KACXgD,EAAKuD,QAAQO,SAASnF,GACtBqB,EAAKyD,aAAY,GACjBzD,EAAKP,QAAQ,GAAGkF,SAGpBtE,UAAW,WACP,IAAIL,EAAOhD,KAEX+I,aAAa/F,EAAKgH,WAClBhH,EAAKuD,QAAQQ,YAAYpF,GAASoF,YAAYnF,GAC9CoB,EAAK8G,QACL9G,EAAKsI,uBAGTb,QAAS,SAASjG,EAAQiB,GACtB,IAAI8F,EAAevL,KAAKqL,SAAS5F,GAAS8F,aAU1C,OARA/G,EAASA,EAAOgH,eAELR,QAAQ,MAAQ,EACvBO,EAAeA,EAAaE,SACrBjH,EAAOwG,QAAQ,MAAQ,IAC9BO,EAAeA,EAAaG,SAGzBH,GAGXzH,OAAQ,WACJ,IAMIuC,EANArD,EAAOhD,KACP0C,EAAUM,EAAKN,QACfD,EAAUO,EAAKP,QAAQqE,SAASvF,GAAOoK,OAAO,GAC9CC,EAAYnJ,EAAQmJ,WAKxBvF,EAJcrD,EAAKuD,QACEsF,KAAK/J,EAAQP,GAGpBuK,SAELf,OAAS,IACd1E,EAAOpG,EAAE,wBACAsD,KAAKpD,EAAMoD,KAAK,aAAa,GAC7BwI,aAAatJ,IAG1B,IACIA,EAAQuJ,aAAa,OAAQ,QAC/B,MAAO9E,GACLzE,EAAQwJ,KAAO,OAGnB5F,EAAK,GAAG6F,MAAQzJ,EAAQyJ,MACxB7F,EAAK,GAAG8F,SAAW1J,EAAQ0J,SAC3B9F,EAAK,GAAG+F,MAAMC,QAAU5J,EAAQ2J,MAAMC,QACtChG,EAAKY,KAAK,cAAevE,EAAQxB,aAE7B0K,IACAvF,EAAK9C,KAAK,YAAaqI,GACvBnJ,EAAQmJ,UAAY,IAIxB5I,EAAKgB,MAAQqC,EAAKS,SAASrE,EAAQ6J,WACjB/I,KAAK,CACFgJ,KAAQ,aACR,gBAAiB7J,EAAQC,MAAQP,EAAOM,EAAQC,IAAMD,EAAQ6B,OAAS7B,EAAQC,IAC/E,gBAAiBD,EAAQE,MAAQR,EAAOM,EAAQE,IAAMF,EAAQ6B,OAAS7B,EAAQE,IAC/E4J,aAAgB,SAIzCjF,SAAU,SAASL,GACf,IAAIlE,EAAOhD,KACPyM,EAAMvF,EAAEwF,QAERD,IAAQnM,EAAKqM,aACb3J,EAAK4J,YAAa,GAGlBH,GAAOnM,EAAKuM,KAGLJ,GAAOnM,EAAKwM,GAGZL,GAAOnM,EAAKyM,OAKnBN,GAAOnM,EAAK0M,MACZhK,EAAKmI,SAAU,GAEnBnI,EAAKiK,aAAe5M,EAAM2C,EAAKP,UAP3BO,EAAK+G,QAAQ/G,EAAKP,QAAQgC,OAH1BzB,EAAKkK,MAAM,GAHXlK,EAAKkK,OAAO,IAgBpB1F,OAAQ,WACJxH,KAAKsL,uBAGT5D,cAAe,WACX,IAAIjF,EAAUzC,KAAKyC,QACfK,EAAQL,EAAQgC,MAChB9B,EAAM3C,KAAK0C,QAAQC,IACnB4I,EAAevL,KAAKyK,QAAQzK,KAAK0C,QAAQ8B,QACzC2I,EAAmB5B,EAAazJ,KAChCsL,EAAsB,OAARzK,GAAgBA,GAAO,GAAyB,MAApBG,EAAMuK,OAAO,GAEvDrN,KAAK4M,YAAcO,IAAqBrL,IACxCgB,EAAQA,EAAMgI,QAAQhJ,EAAOqL,GAC7BnN,KAAKyC,QAAQgC,IAAI3B,GACjB9C,KAAK4M,YAAa,GAGlB5M,KAAKsN,WAAatN,KAAKwD,OAAOV,KAC9BA,EAAQ9C,KAAKwD,OAAOV,GACfyK,WACAzC,QAAQhJ,EAAOyJ,EAAazJ,OAGjC9B,KAAKwN,cAAcjC,GAAckC,KAAK3K,KAAWsK,EACjDpN,KAAK0N,SAAW5K,GAEhB9C,KAAK2N,qBACL3N,KAAKyC,QAAQgC,IAAIzE,KAAK0N,UAClB1N,KAAKiN,eACL5M,EAAMoC,EAASzC,KAAKiN,aAAa,IACjCjN,KAAKiN,aAAe,OAI5BjN,KAAKsN,WAAY,GAGrBK,mBAAoB,WAChB,IAAI3K,EAAOhD,KAEXgD,EAAK4K,mBACL7E,aAAa/F,EAAK6K,sBAClB7K,EAAK6K,qBAAuB5D,WAAWjH,EAAKsI,oBAAoBhI,KAAKN,GAAO,MAGhF4K,iBAAkB,WACH5N,KAENuG,QAAQO,SAAS7E,GAFXjC,KAGN0J,gBAAgB3C,YAAY,aAGrCuE,oBAAqB,WACjB,IAAItI,EAAOhD,KAEXgD,EAAKuD,QAAQQ,YAAY9E,GACzBe,EAAK0G,gBAAgB5C,SAAS,YAC9B9D,EAAK6K,qBAAuB,MAGhCL,cAAe,SAASjC,GACpB,IAAIvI,EAAOhD,KACP8N,EAAYvC,EAAazJ,KACzBiM,EAAY/K,EAAKN,QAAQ4C,SACzB0I,EAAe,IAUnB,OARIF,IAAchM,IACdgM,EAAY,KAAOA,GAGnBC,IAAc3L,IACd2L,EAAYxC,EAAajG,UAGX,IAAdyI,GAAmB/K,EAAKN,QAAQ6C,iBACzBpD,GAGPa,EAAKN,QAAQ6C,mBACbyI,EAAe,MAAQD,EAAY,KAGnC/K,EAAKiL,aAAeH,IACpB9K,EAAKiL,WAAaH,EAClB9K,EAAKkL,aAAe,IAAItD,OAAO,gBAAkBkD,EAAY,MAAQE,EAAe,QAAUF,EAAY,MAAQE,EAAe,UAG9HhL,EAAKkL,eAGhBzG,OAAQ,SAASP,GACb,IAAIlE,EAAOhD,KACPyC,EAAUyE,EAAEoD,OACZxH,EAAQL,EAAQK,MAChByI,EAAevI,EAAKyH,QAAQzH,EAAKN,QAAQ8B,QAE7CxB,EAAKsK,WAAY,EAElBrD,YAAW,WACN,IAAIC,EAASlH,EAAKQ,OAAOf,EAAQK,OAE7BoH,IAAW9H,EACXY,EAAK0F,QAAQ5F,IAEbL,EAAQK,MAAQoH,EAAOqD,WAAWzC,QAAQhJ,EAAOyJ,EAAazJ,MAC1DkB,EAAKyF,QAAQyB,KAAYA,GAAWlH,EAAKwK,cAAcjC,GAAckC,KAAKhL,EAAQK,SAClFA,EAAQE,EAAKkI,gBAAgBzI,EAAQK,OACrCE,EAAK0F,QAAQ5F,SAM7ByF,QAAS,SAAS4F,EAAQrL,GACtB,IAAIE,EAAOhD,KACPyC,EAAUO,EAAKP,QACfC,EAAUM,EAAKN,QAEnB,GAAII,IAAU5C,EACV,OAAOwC,EAAQyL,KAGnBrL,EAAQE,EAAKQ,OAAOV,KAEK,SAAXqL,KAIdzL,EAAQyL,GAAUrL,EAClBL,EACK6D,IAAItD,EAAKgB,OACTT,KAAK,aAAe4K,EAAQrL,GAEjCL,EAAQc,KAAK4K,EAAQrL,KAGzBsE,MAAO,SAASvE,EAAMuL,GAClB,IAAIpL,EAAOhD,KAEXoO,EAAUA,GAAW,IAErBrF,aAAc/F,EAAKgG,WACnBhG,EAAKgG,UAAYiB,YAAW,WACxBjH,EAAKoE,MAAMvE,EAAM,MAClBuL,GAEHpL,EAAKkK,MAAMrK,IAGfqK,MAAO,SAASrK,GACZ,IAAIG,EAAOhD,KACPyC,EAAUO,EAAKP,QACf4L,EAAgBrL,EAAKwF,OACrB1F,EAAQE,EAAKQ,OAAOf,EAAQgC,QAAU,EACtCsJ,EAAY/K,EAAKN,QAAQ4C,UAAY,EAErC5E,KAAmB+B,EAAQ,IAC3BO,EAAKoB,WAGLpB,EAAKN,QAAQ6B,QAAUzB,IACvBA,GAAgBE,EAAKN,QAAQ6B,QAGjCzB,IAAUA,EAAQE,EAAKN,QAAQG,KAAOA,GAAMyL,QAAQP,GACpDjL,EAAQE,EAAKyF,QAAQ3F,GACrBE,EAAK0F,QAAQ5F,GACbE,EAAKmI,SAAU,EAEXkD,IAAkBvL,GAClBE,EAAKoI,QAAQ5J,IAIrBwF,aAAc,SAASE,GACnBjH,EAAEiH,EAAEqH,eAAezG,YAAYlG,EAAkB,eAAXsF,EAAE+E,OAG5CxF,YAAa,SAAS6C,GAClB,IAAItG,EAAOhD,KAEXgD,EAAKgB,MAAMsF,OAAOA,GACdA,EACAtG,EAAKgB,MAAMwK,WAAW,eAEtBxL,EAAKgB,MAAMT,KAAK,cAAe,QAEnCP,EAAKP,QAAQ6G,QAAQA,IAGzB9F,OAAQ,SAASV,EAAO2C,GACpB,OAAO3E,EAAMgC,EAAO9C,KAAKqL,SAAS5F,GAAUzF,KAAK0C,QAAQ8B,SAG7DiK,OAAQ,SAAS3L,EAAOiL,GAGpB,OAFc/N,KAAK0C,QAAQ8C,MAAQrF,EAAMsO,OAASC,GAEnC5L,EAAOiL,IAG1BrF,QAAS,SAAS5F,GACd,IAOIuL,EACAM,EARA3L,EAAOhD,KACP0C,EAAUM,EAAKN,QACf6B,EAAS7B,EAAQ6B,OACjBC,EAAS9B,EAAQ8B,OACjBc,EAAW5C,EAAQ4C,SACnBG,EAAUzC,EAAKqI,WACfE,EAAevI,EAAKyH,QAAQjG,EAAQiB,GAIpCH,IAAalD,IACbkD,EAAWiG,EAAajG,WAK5BqJ,GAFA7L,EAAQE,EAAKQ,OAAOV,EAAO2C,MAELrD,KAGlBU,EAAQ/B,WAAWiC,EAAKyL,OAAO3L,EAAOwC,GAAW,KAGrDtC,EAAKwF,OAAS1F,EAAQE,EAAKyF,QAAQ3F,GACnCE,EAAK+E,aAAa5H,EAAMoN,SAASzK,EAAO0B,EAAQiB,IAE5CkJ,GACIpK,IACAzB,EAAQ/B,WAAWiC,EAAKyL,OAAO3L,EAAQyB,EAAQe,GAAW,MAGlC,KAD5BxC,EAAQA,EAAMyK,YACJvC,QAAQ,OACdlI,EAAQE,EAAKyL,QAAQ3L,EAAOwC,IAEhC+I,EAAgBvL,EAChBA,EAAQA,EAAMgI,QAAQhJ,EAAOyJ,EAAazJ,QAE1CgB,EAAQ,KACRuL,EAAgB,MAGpBrL,EAAKP,QAAQgC,IAAI3B,GACjBE,EAAK0K,SAAW5K,EAChBE,EAAKP,QAAQ6D,IAAItD,EAAKgB,OAAOT,KAAK,gBAAiB8K,IAGvDtG,aAAc,SAASjF,GACnB,IAAIuH,EAAQrK,KAAKgE,MAEjBqG,EAAM5F,IAAI3B,GACL9B,GAAyB8B,GAC1BuH,EAAM5F,IAAIzE,KAAK0C,QAAQxB,aAG3BmJ,EAAM9G,KAAK,QAASvD,KAAKyC,QAAQc,KAAK,UAAY8G,EAAM5F,QAG5DQ,OAAQ,WACJ,IAII2J,EACAC,EALA7L,EAAOhD,KACPyC,EAAUO,EAAKP,QACfC,EAAUM,EAAKN,QACfoM,EAAKrM,EAAQc,KAAK,MAIA,OAAlBb,EAAQoD,QACR8I,IAAWvM,EAAcK,EAAQoD,QAASpD,EAAQoD,MAAM8I,SACxDC,EAAYxM,EAAcK,EAAQoD,OAASpD,EAAQoD,MAAMiJ,QAAUrM,EAAQoD,MAEvE8I,IACA5L,EAAKmF,wBAA0BnF,EAAKuD,QAAQyI,KAAK,iBAAiB3F,SAClErG,EAAK4E,cAAgB,IAAIzH,EAAMK,GAAGyO,cAAcjM,EAAKmF,wBAAyB,CAAE+G,OAAQlM,KAGxF7C,EAAMgP,WAAWN,KACjBA,EAAYA,EAAU1L,KAAKH,IAG1B6L,IACDA,EAAY,IAGXC,IACDA,EAAKpM,EAAQ2C,KAAO,IAAMlF,EAAMiP,OAChC3M,EAAQc,KAAK,KAAMuL,IAGvB9L,EAAK6D,YAAc5G,EAAE,6CAA8C6O,EAAK,KAAOD,EAAY,aAAa9C,aAAa/I,EAAKuD,SAErHvD,EAAKP,QAAQc,KAAK,cAAgBrD,GAAiB8C,EAAKP,QAAQc,KAAK,cAAgBrD,GACtF8C,EAAK6D,YAAYzD,GAAG,QAAU3B,EAAIuB,EAAK2E,MAAMrE,KAAKN,MAK9DW,SAAU,WACN,IAGI4C,EAFA9D,EADOzC,KACQyC,QACf4M,EAAa5M,EAAQ,IAGzB8D,EAAU9D,EAAQmC,QAAQ,sBAEbD,GAAG,2BACZ4B,EAAU9D,EAAQ6M,OAAON,KAAK,WAAW3F,UAG7C9C,EAAQ,GAAG6F,MAAMC,QAAUgD,EAAWjD,MAAMC,QAC5CgD,EAAWjD,MAAMmD,MAAQ,GAZdvP,KAaNuG,QAAUA,EAAQO,SAAS,4BACTA,SAASuI,EAAW/C,WACpBvF,YAAY,0BACZyI,IAAI,UAAW,KAG1C9L,OAAQ,WACJ,IAAIV,EAAOhD,KACPyC,EAAUO,EAAKP,QACfgN,EAAShN,EAAQc,KAAK,QACtBmM,EAAOD,EAASxP,EAAE,IAAMwP,GAAUhN,EAAQkN,QAAQ,QAElDD,EAAK,KACL1M,EAAKsF,cAAgB,WACjB2B,YAAW,WACPjH,EAAKF,MAAML,EAAQ,GAAGK,OACtBE,EAAKJ,IAAII,EAAKS,gBAAgBb,KAC9BI,EAAKL,IAAIK,EAAKS,gBAAgBd,SAItCK,EAAKqF,MAAQqH,EAAKtM,GAAG,QAASJ,EAAKsF,mBAY/C,SAASY,EAAW0G,EAAWvJ,EAAM3D,GACjC,IAAI4J,EAA0B,aAAdsD,EAA2B,eAAiB,iBACxDC,EAAoB,aAAdD,EAA2B,WAAa,WAElD,OAAOrP,EAAKuP,aAAa,0EAA4ED,EAAM,iBAAmBxJ,EAAO,YAAcA,EAAO,cAAe/D,EAAO,GAAII,EAAS,CACzLiH,KAAM2C,EACNyD,MAAO,KACP9J,QAAS,QAIjB,SAASyI,EAAS5L,EAAOiL,GACrB,IAAIiC,EAAQjP,WAAW+B,EAAO,IAAIyK,WAAW0C,MAAMnO,GAMnD,OAJIkO,EAAM,KACNA,EAAM,GAAKA,EAAM,GAAGxF,UAAU,EAAGuD,IAG9BiC,EAAME,KAAKpO,GAzBtB3B,EAAMgQ,cAAcC,eAAe,iBAAkB,YAErDjQ,EAAMgQ,cAAcE,eAAe,iBAAkB,CAAC,CAClDpJ,KAAM,UACNqJ,OAAQnQ,EAAMgQ,cAAcI,cAAcC,OAAO,CAAC,CAAC,OAAQ,aAyB/DhQ,EAAGiQ,OAAOlO,GA38Bd,CA48BGnC,OAAOD,MAAMuQ,QACFvQ","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('kendo.core.js'), require('kendo.userevents.js'), require('kendo.floatinglabel.js'), require('kendo.html.button.js'), require('kendo.icons.js')) :\n typeof define === 'function' && define.amd ? define(['kendo.core', 'kendo.userevents', 'kendo.floatinglabel', 'kendo.html.button', 'kendo.icons'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendonumerictextbox = global.kendonumerictextbox || {}, global.kendonumerictextbox.js = factory()));\n})(this, (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: [ \"core\", \"userevents\", \"floatinglabel\", \"html.button\", \"icons\" ]\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n caret = kendo.caret,\n keys = kendo.keys,\n html = kendo.html,\n ui = kendo.ui,\n Widget = ui.Widget,\n activeElement = kendo._activeElement,\n extractFormat = kendo._extractFormat,\n parse = kendo.parseFloat,\n placeholderSupported = kendo.support.placeholder,\n getCulture = kendo.getCulture,\n CHANGE = \"change\",\n DISABLED = \"disabled\",\n READONLY = \"readonly\",\n INPUT = \"k-input-inner\",\n SPIN = \"spin\",\n ns = \".kendoNumericTextBox\",\n TOUCHEND = \"touchend\",\n MOUSELEAVE = \"mouseleave\" + ns,\n HOVEREVENTS = \"mouseenter\" + ns + \" \" + MOUSELEAVE,\n FOCUSED = \"k-focus\",\n HOVER = \"k-hover\",\n FOCUS = \"focus\",\n POINT = \".\",\n SYMBOL = \"symbol\",\n CLASS_ICON = \"k-icon\",\n LABELCLASSES = \"k-label k-input-label\",\n SELECTED = \"k-selected\",\n STATEDISABLED = \"k-disabled\",\n STATEINVALID = \"k-invalid\",\n ARIA_DISABLED = \"aria-disabled\",\n INTEGER_REGEXP = /^(-)?(\\d*)$/,\n NULL = null,\n isPlainObject = $.isPlainObject,\n extend = $.extend;\n\n var NumericTextBox = Widget.extend({\n init: function(element, options) {\n var that = this,\n isStep = options && options.step !== undefined$1,\n min, max, step, value, disabled;\n var inputType;\n\n Widget.fn.init.call(that, element, options);\n\n options = that.options;\n element = that.element\n .on(\"focusout\" + ns, that._focusout.bind(that))\n .attr(\"role\", \"spinbutton\");\n\n options.placeholder = options.placeholder || element.attr(\"placeholder\");\n\n min = that.min(element.attr(\"min\"));\n max = that.max(element.attr(\"max\"));\n step = that._parse(element.attr(\"step\"));\n\n if (options.min === NULL && min !== NULL) {\n options.min = min;\n }\n\n if (options.max === NULL && max !== NULL) {\n options.max = max;\n }\n\n if (!isStep && step !== NULL) {\n options.step = step;\n }\n\n that._initialOptions = extend({}, options);\n\n inputType = element.attr(\"type\");\n\n that._reset();\n that._wrapper();\n that._arrows();\n that._validation();\n that._input();\n\n if (!kendo.support.mobileOS) {\n that._text.on(FOCUS + ns, that._click.bind(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._focusin();\n });\n } else {\n that._focusin();\n }\n that.selectValue();\n });\n }\n\n element.attr(\"aria-valuemin\", options.min !== NULL ? options.min * options.factor : options.min)\n .attr(\"aria-valuemax\", options.max !== NULL ? options.max * options.factor : options.max);\n\n options.format = extractFormat(options.format);\n\n value = options.value;\n\n if (value == NULL) {\n if (inputType == \"number\") {\n value = parseFloat(element.val());\n } else {\n value = element.val();\n }\n }\n\n that.value(value);\n\n disabled = !options.enable || element.is(\"[disabled]\") || $(that.element).parents(\"fieldset\").is(':disabled');\n\n if (disabled) {\n that.enable(false);\n } else {\n that.readonly(element.is(\"[readonly]\"));\n }\n\n that.angular(\"compile\", function() {\n return {\n elements: that._text.get()\n };\n });\n\n that._label();\n that._ariaLabel(that._text);\n that._applyCssClasses();\n\n kendo.notify(that);\n },\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 selectOnFocus: false,\n factor: 1,\n upArrowText: \"Increase value\",\n downArrowText: \"Decrease value\",\n label: null,\n size: \"medium\",\n fillMode: \"solid\",\n rounded: \"medium\"\n },\n events: [\n CHANGE,\n SPIN\n ],\n\n _editable: function(options) {\n var that = this,\n element = that.element,\n disable = options.disable,\n readonly = options.readonly,\n text = that._text.add(element),\n wrapper = that.wrapper.off(HOVEREVENTS);\n\n that._toggleText(true);\n\n that._upArrowEventHandler.unbind(\"press\");\n that._downArrowEventHandler.unbind(\"press\");\n element\n .off(\"keydown\" + ns)\n .off(\"keyup\" + ns)\n .off(\"input\" + ns)\n .off(\"paste\" + ns);\n\n if (that._inputLabel) {\n that._inputLabel.off(ns);\n }\n\n if (!readonly && !disable) {\n wrapper\n .removeClass(STATEDISABLED)\n .on(HOVEREVENTS, that._toggleHover);\n\n text.prop(DISABLED, false)\n .prop(READONLY, false)\n .attr(ARIA_DISABLED, false);\n\n that._upArrowEventHandler.bind(\"press\", function(e) {\n e.preventDefault();\n that._spin(1);\n that._upArrow.addClass(SELECTED);\n });\n\n that._downArrowEventHandler.bind(\"press\", function(e) {\n e.preventDefault();\n that._spin(-1);\n that._downArrow.addClass(SELECTED);\n });\n\n that.element\n .on(\"keydown\" + ns, that._keydown.bind(that))\n .on(\"keyup\" + ns, that._keyup.bind(that))\n .on(\"paste\" + ns, that._paste.bind(that))\n .on(\"input\" + ns, that._inputHandler.bind(that));\n\n if (that._inputLabel) {\n that._inputLabel.on(\"click\" + ns, that.focus.bind(that));\n }\n\n } else {\n wrapper\n .addClass(disable ? STATEDISABLED : \"\")\n .removeClass(disable ? \"\" : STATEDISABLED);\n\n text.attr(DISABLED, disable)\n .attr(READONLY, readonly)\n .attr(ARIA_DISABLED, disable);\n }\n },\n\n readonly: function(readonly) {\n var that = this;\n\n this._editable({\n readonly: readonly === undefined$1 ? true : readonly,\n disable: false\n });\n\n if (that.floatingLabel) {\n that.floatingLabel.readonly(readonly === undefined$1 ? true : readonly);\n }\n },\n\n enable: function(enable) {\n var that = this;\n\n this._editable({\n readonly: false,\n disable: !(enable = enable === undefined$1 ? true : enable)\n });\n\n if (that.floatingLabel) {\n that.floatingLabel.enable(enable = enable === undefined$1 ? true : enable);\n }\n },\n\n setOptions: function(options) {\n var that = this;\n Widget.fn.setOptions.call(that, options);\n\n that.wrapper.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\n that.options.format = extractFormat(that.options.format);\n that._upArrowEventHandler.destroy();\n that._upArrowEventHandler = null;\n that._downArrowEventHandler.destroy();\n that._downArrowEventHandler = null;\n that._arrowsWrap.remove();\n that._arrows();\n\n that._applyCssClasses();\n\n if (that._inputLabel) {\n that._inputLabel.off(ns);\n that._inputLabel.remove();\n\n if (that.floatingLabel) {\n that.floatingLabel.destroy();\n if (that._floatingLabelContainer) {\n that.wrapper.unwrap();\n }\n }\n }\n\n that._label();\n\n that._editable({\n readonly: that.options.readonly,\n disable: !that.options.enable\n });\n\n if (options.value !== undefined$1) {\n that.value(options.value);\n }\n },\n\n destroy: function() {\n var that = this;\n\n if (that._inputLabel) {\n that._inputLabel.off(ns);\n\n if (that.floatingLabel) {\n that.floatingLabel.destroy();\n }\n }\n\n that.element\n .add(that._text)\n .add(that._upArrow)\n .add(that._downArrow)\n .off(ns);\n\n that._upArrowEventHandler.destroy();\n that._downArrowEventHandler.destroy();\n\n if (that._form) {\n that._form.off(\"reset\", that._resetHandler);\n }\n\n Widget.fn.destroy.call(that);\n },\n\n min: function(value) {\n return this._option(\"min\", value);\n },\n\n max: function(value) {\n return this._option(\"max\", value);\n },\n\n step: function(value) {\n return this._option(\"step\", value);\n },\n\n value: function(value) {\n var that = this, adjusted;\n\n if (value === undefined$1) {\n return that._value;\n }\n\n value = that._parse(value);\n adjusted = that._adjust(value);\n\n if (value !== adjusted) {\n return;\n }\n\n that._update(value);\n that._old = that._value;\n\n if (that.floatingLabel) {\n that.floatingLabel.refresh();\n }\n },\n\n focus: function() {\n this._focusin();\n },\n\n _adjust: function(value) {\n var that = this,\n options = that.options,\n min = options.min,\n max = options.max;\n\n if (value === NULL) {\n return value;\n }\n\n if (min !== NULL && value < min) {\n value = min;\n } else if (max !== NULL && value > max) {\n value = max;\n }\n\n return value;\n },\n\n _arrows: function() {\n var that = this,\n arrows,\n _release = function() {\n clearTimeout( that._spinning );\n arrows.removeClass(SELECTED);\n },\n options = that.options,\n spinners = options.spinners,\n element = that.element;\n\n arrows = element.siblings(\".k-icon-button\");\n\n if (!arrows[0]) {\n arrows = $(buttonHtml(\"increase\", options.upArrowText, options) + buttonHtml(\"decrease\", options.downArrowText, options))\n .appendTo(that.wrapper);\n\n that._arrowsWrap = arrows.wrapAll('').parent();\n }\n\n if (!spinners) {\n arrows.parent().toggle(spinners);\n that.wrapper.addClass(\"k-expand-padding\");\n }\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\n _validation: function() {\n var that = this;\n var element = that.element;\n\n that._validationIcon = $(kendo.ui.icon({ icon: \"exclamation-circle\", iconClass: \"k-input-validation-icon k-hidden\" })).insertAfter(element);\n },\n\n _blur: function() {\n var that = this;\n\n that._toggleText(true);\n\n that._change(that.element.val());\n },\n\n _click: function(e) {\n var that = this;\n\n clearTimeout(that._focusing);\n that._focusing = setTimeout(function() {\n var input = e.target,\n idx = caret(input)[0],\n value = input.value.substring(0, idx),\n format = that._format(that.options.format),\n group = format[\",\"],\n result, groupRegExp, extractRegExp,\n caretPosition = 0;\n\n if (group) {\n groupRegExp = new RegExp(\"\\\\\" + group, \"g\");\n extractRegExp = new RegExp(\"(-)?(\" + format[SYMBOL] + \")?([\\\\d\\\\\" + group + \"]+)(\\\\\" + format[POINT] + \")?(\\\\d+)?\");\n }\n\n if (extractRegExp) {\n result = extractRegExp.exec(value);\n }\n\n if (result) {\n caretPosition = result[0].replace(groupRegExp, \"\").length;\n\n if (value.indexOf(\"(\") != -1 && that._value < 0) {\n caretPosition++;\n }\n }\n\n that._focusin();\n\n caret(that.element[0], caretPosition);\n that.selectValue();\n });\n },\n\n selectValue: function() {\n if (this.options.selectOnFocus) {\n this.element[0].select();\n }\n },\n\n _getFactorValue: function(value) {\n var that = this,\n factor = that.options.factor;\n\n if (factor && factor !== 1) {\n value = kendo.parseFloat(value);\n if (value !== null) {\n value = value / factor;\n }\n }\n\n return value;\n },\n\n _change: function(value) {\n var that = this;\n\n value = that._getFactorValue(value);\n that._update(value);\n value = that._value;\n\n if (that._old != value) {\n that._old = value;\n\n if (!that._typing) {\n // trigger the DOM change event so any subscriber gets notified\n that.element.trigger(CHANGE);\n }\n\n that.trigger(CHANGE);\n }\n\n that._typing = false;\n },\n\n _culture: function(culture) {\n return culture || getCulture(this.options.culture);\n },\n\n _focusin: function() {\n var that = this;\n that.wrapper.addClass(FOCUSED);\n that._toggleText(false);\n that.element[0].focus();\n },\n\n _focusout: function() {\n var that = this;\n\n clearTimeout(that._focusing);\n that.wrapper.removeClass(FOCUSED).removeClass(HOVER);\n that._blur();\n that._removeInvalidState();\n },\n\n _format: function(format, culture) {\n var numberFormat = this._culture(culture).numberFormat;\n\n format = format.toLowerCase();\n\n if (format.indexOf(\"c\") > -1) {\n numberFormat = numberFormat.currency;\n } else if (format.indexOf(\"p\") > -1) {\n numberFormat = numberFormat.percent;\n }\n\n return numberFormat;\n },\n\n _input: function() {\n var that = this,\n options = that.options,\n element = that.element.addClass(INPUT).show()[0],\n accessKey = element.accessKey,\n wrapper = that.wrapper,\n inputs = wrapper.find(POINT + INPUT),\n text;\n\n text = inputs.first();\n\n if (text.length < 2) {\n text = $('')\n .attr(kendo.attr(\"validate\"), false)\n .insertBefore(element);\n }\n\n try {\n element.setAttribute(\"type\", \"text\");\n } catch (e) {\n element.type = \"text\";\n }\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\n if (accessKey) {\n text.attr(\"accesskey\", accessKey);\n element.accessKey = \"\";\n }\n\n\n that._text = text.addClass(element.className)\n .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\n _keydown: function(e) {\n var that = this,\n key = e.keyCode;\n\n if (key === keys.NUMPAD_DOT) {\n that._numPadDot = true;\n }\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\n if (key != keys.TAB) {\n that._typing = true;\n }\n that._cachedCaret = caret(that.element);\n },\n\n _keyup: function() {\n this._removeInvalidState();\n },\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\n if (this._numPadDot && decimalSeparator !== POINT) {\n value = value.replace(POINT, decimalSeparator);\n this.element.val(value);\n this._numPadDot = false;\n }\n\n if (this._isPasted && this._parse(value)) {\n value = this._parse(value)\n .toString()\n .replace(POINT, numberFormat[POINT]);\n }\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 this._isPasted = false;\n },\n\n _blinkInvalidState: function() {\n var that = this;\n\n that._addInvalidState();\n clearTimeout(that._invalidStateTimeout);\n that._invalidStateTimeout = setTimeout(that._removeInvalidState.bind(that), 100);\n },\n\n _addInvalidState: function() {\n var that = this;\n\n that.wrapper.addClass(STATEINVALID);\n that._validationIcon.removeClass('k-hidden');\n },\n\n _removeInvalidState: function() {\n var that = this;\n\n that.wrapper.removeClass(STATEINVALID);\n that._validationIcon.addClass('k-hidden');\n that._invalidStateTimeout = null;\n },\n\n _numericRegex: function(numberFormat) {\n var that = this;\n var separator = numberFormat[POINT];\n var precision = that.options.decimals;\n var fractionRule = \"*\";\n\n if (separator === POINT) {\n separator = \"\\\\\" + separator;\n }\n\n if (precision === NULL) {\n precision = numberFormat.decimals;\n }\n\n if (precision === 0 && that.options.restrictDecimals) {\n return INTEGER_REGEXP;\n }\n\n if (that.options.restrictDecimals) {\n fractionRule = \"{0,\" + precision + \"}\";\n }\n\n if (that._separator !== separator) {\n that._separator = separator;\n that._floatRegExp = new RegExp(\"^(-)?(((\\\\d+(\" + separator + \"\\\\d\" + fractionRule + \")?)|(\" + separator + \"\\\\d\" + fractionRule + \")))?$\");\n }\n\n return that._floatRegExp;\n },\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\n that._isPasted = true;\n\n setTimeout(function() {\n var result = that._parse(element.value);\n\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 value = that._getFactorValue(element.value);\n that._update(value);\n }\n }\n });\n },\n\n _option: function(option, value) {\n var that = this,\n element = that.element,\n options = that.options;\n\n if (value === undefined$1) {\n return options[option];\n }\n\n value = that._parse(value);\n\n if (!value && option === \"step\") {\n return;\n }\n\n options[option] = value;\n element\n .add(that._text)\n .attr(\"aria-value\" + option, value);\n\n element.attr(option, value);\n },\n\n _spin: function(step, timeout) {\n var that = this;\n\n timeout = timeout || 500;\n\n clearTimeout( that._spinning );\n that._spinning = setTimeout(function() {\n that._spin(step, 50);\n }, timeout );\n\n that._step(step);\n },\n\n _step: function(step) {\n var that = this,\n element = that.element,\n originalValue = that._value,\n value = that._parse(element.val()) || 0,\n precision = that.options.decimals || 2;\n\n if (activeElement() != element[0]) {\n that._focusin();\n }\n\n if (that.options.factor && value) {\n value = value / that.options.factor;\n }\n\n value = +(value + that.options.step * step).toFixed(precision);\n value = that._adjust(value);\n that._update(value);\n that._typing = false;\n\n if (originalValue !== value) {\n that.trigger(SPIN);\n }\n },\n\n _toggleHover: function(e) {\n $(e.currentTarget).toggleClass(HOVER, e.type === \"mouseenter\");\n },\n\n _toggleText: function(toggle) {\n var that = this;\n\n that._text.toggle(toggle);\n if (toggle) {\n that._text.removeAttr(\"aria-hidden\");\n } else {\n that._text.attr(\"aria-hidden\", \"true\");\n }\n that.element.toggle(!toggle);\n },\n\n _parse: function(value, culture) {\n return parse(value, this._culture(culture), this.options.format);\n },\n\n _round: function(value, precision) {\n var rounder = this.options.round ? kendo._round : truncate;\n\n return rounder(value, precision);\n },\n\n _update: function(value) {\n var that = this,\n options = that.options,\n factor = options.factor,\n format = options.format,\n decimals = options.decimals,\n culture = that._culture(),\n numberFormat = that._format(format, culture),\n originalValue,\n isNotNull;\n\n if (decimals === NULL) {\n decimals = numberFormat.decimals;\n }\n\n value = that._parse(value, culture);\n\n isNotNull = value !== NULL;\n\n if (isNotNull) {\n value = parseFloat(that._round(value, decimals), 10);\n }\n\n that._value = value = that._adjust(value);\n that._placeholder(kendo.toString(value, format, culture));\n\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 originalValue = value;\n value = value.replace(POINT, numberFormat[POINT]);\n } else {\n value = null;\n originalValue = null;\n }\n\n that.element.val(value);\n that._oldText = value;\n that.element.add(that._text).attr(\"aria-valuenow\", originalValue);\n },\n\n _placeholder: function(value) {\n var input = this._text;\n\n input.val(value);\n if (!placeholderSupported && !value) {\n input.val(this.options.placeholder);\n }\n\n input.attr(\"title\", this.element.attr(\"title\") || input.val());\n },\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\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\n if (floating) {\n that._floatingLabelContainer = that.wrapper.wrap(\"\").parent();\n that.floatingLabel = new kendo.ui.FloatingLabel(that._floatingLabelContainer, { widget: that });\n }\n\n if (kendo.isFunction(labelText)) {\n labelText = labelText.call(that);\n }\n\n if (!labelText) {\n labelText = \"\";\n }\n\n if (!id) {\n id = options.name + \"_\" + kendo.guid();\n element.attr(\"id\", id);\n }\n\n that._inputLabel = $(\"'\").insertBefore(that.wrapper);\n\n if ((that.element.attr(\"disabled\") === undefined$1) && (that.element.attr(\"readonly\") === undefined$1)) {\n that._inputLabel.on(\"click\" + ns, that.focus.bind(that));\n }\n }\n },\n\n _wrapper: function() {\n var that = this,\n element = that.element,\n DOMElement = element[0],\n wrapper;\n\n wrapper = element.parents(\".k-numerictextbox\");\n\n if (!wrapper.is(\"span.k-numerictextbox\")) {\n wrapper = element.hide().wrap(\"\").parent();\n }\n\n wrapper[0].style.cssText = DOMElement.style.cssText;\n DOMElement.style.width = \"\";\n that.wrapper = wrapper.addClass(\"k-numerictextbox k-input\")\n .addClass(DOMElement.className)\n .removeClass('input-validation-error')\n .css(\"display\", \"\");\n },\n\n _reset: function() {\n var that = this,\n element = that.element,\n formId = element.attr(\"form\"),\n form = formId ? $(\"#\" + formId) : element.closest(\"form\");\n\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\n that._form = form.on(\"reset\", that._resetHandler);\n }\n }\n });\n\n kendo.cssProperties.registerPrefix(\"NumericTextBox\", \"k-input-\");\n\n kendo.cssProperties.registerValues(\"NumericTextBox\", [{\n prop: \"rounded\",\n values: kendo.cssProperties.roundedValues.concat([['full', 'full']])\n }]);\n\n function buttonHtml(direction, text, options) {\n var className = direction === \"increase\" ? \"caret-alt-up\" : \"caret-alt-down\";\n var dir = direction === \"increase\" ? \"increase\" : \"decrease\";\n\n return html.renderButton('', extend({}, options, {\n icon: className,\n shape: null,\n rounded: null\n }));\n }\n\n function truncate(value, precision) {\n var parts = parseFloat(value, 10).toString().split(POINT);\n\n if (parts[1]) {\n parts[1] = parts[1].substring(0, precision);\n }\n\n return parts.join(POINT);\n\n }\n\n ui.plugin(NumericTextBox);\n })(window.kendo.jQuery);\n var kendo$1 = kendo;\n\n return kendo$1;\n\n}));\n"]}