@progress/kendo-vue-inputs
Version:
15 lines • 154 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@progress/kendo-vue-common"),require("vue"),require("@progress/kendo-drawing"),require("@progress/kendo-vue-labels"),require("@progress/kendo-svg-icons"),require("@progress/kendo-vue-buttons"),require("@progress/kendo-vue-intl"),require("@progress/kendo-vue-popup"),require("@progress/kendo-vue-layout"),require("@progress/kendo-vue-dialogs"),require("@progress/kendo-inputs-common")):"function"==typeof define&&define.amd?define(["exports","@progress/kendo-vue-common","vue","@progress/kendo-drawing","@progress/kendo-vue-labels","@progress/kendo-svg-icons","@progress/kendo-vue-buttons","@progress/kendo-vue-intl","@progress/kendo-vue-popup","@progress/kendo-vue-layout","@progress/kendo-vue-dialogs","@progress/kendo-inputs-common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoVueInputs={},e.KendoVueCommon,e.Vue,e.KendoDrawing,e.KendoVueLabels,e.KendoSVGIcons,e.KendoVueButtons,e.KendoVueIntl,e.KendoVuePopup,e.KendoVueLayout,e.KendoVueDialogs,e.KendoInputsCommon)}(this,(function(e,t,i,a,s,n,l,o,r,d,u,c){"use strict";const h={name:"@progress/kendo-vue-inputs",productName:"Kendo UI for Vue",productCode:"KENDOUIVUE",productCodes:["KENDOUIVUE"],publishDate:1658759014,version:"6.3.0",licensingDocsUrl:"https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"},p=e=>null!=e,m=(e,t,i)=>!p(e)||isNaN(e)||e<=t?t:e>=i?i:e,g=(e,t,i=!1,s=!0)=>{if(-1===["hex","rgba"].indexOf(t))throw new Error(`Unsupported color output format '${t}'. The available options are 'hex' or 'rgba'.`);if(!p(e))return;const n=a.parseColor(e.trim(),s);return p(n)?"hex"===t?f(n,i):n.toCssRgba():void 0},f=(e,t)=>t&&e.a<1?e.toCss({alpha:!0}):e.toCss(),v=(e,t=!0)=>{const i=a.parseColor(e,t);return p(i)?i.toHSV():{}},b=(e,t=!0)=>{const i=a.parseColor(e,t);return p(i)?i.toBytes():{}},k=e=>{const t=m(e.h,0,359.9),i=m(e.s,0,1),s=m(e.v,0,1),n=m(e.a,0,1);return a.Color.fromHSV(t,i,s,n).toCssRgba()},$=e=>k({h:e,s:1,v:1,a:1}),y=(e,t)=>{const i=m(e.r,0,255),a=m(e.g,0,255),s=m(e.b,0,255),n=m(e.a,0,1),l=m(t.r,0,255),o=m(t.g,0,255),r=m(t.b,0,255);return{r:Math.round((1-n)*l+n*i),g:Math.round((1-n)*o+n*a),b:Math.round((1-n)*r+n*s)}},V=e=>{let t=[e.r,e.g,e.b].map((function(e){return(e/=255)<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4)}));return.2126*t[0]+.7152*t[1]+.0722*t[2]},C=(e,t)=>((e,t)=>(Math.max(e,t)+.05)/(Math.min(e,t)+.05))(V(y(e,t)),V(y(t,{r:0,g:0,b:0,a:1}))),S={opacity:!0};const x=i.defineComponent({model:{event:"changemodel"},inheritAttrs:!1,emits:{input:null,change:null,changemodel:null,"update:modelValue":null,focus:null,blur:null,keyup:null,keydown:null,keypress:null},props:{modelValue:{type:[String,Number],default:void 0},disabled:{type:Boolean,default:void 0},defaultValue:{type:[String,Number],default:""},value:{type:[String,Number]},label:{type:String},placeholder:{type:String},required:{type:Boolean,default:!1},size:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large"].includes(e)}},rounded:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large","full"].includes(e)}},fillMode:{type:String,default:"solid",validator:function(e){return[null,"solid","flat","outline"].includes(e)}},dir:{type:String},id:String,valid:{type:Boolean,default:void 0},validate:{type:Boolean},validationMessage:{type:String},validityStyles:{type:Boolean,default:!0},iconName:String,inputPrefix:[String,Function],inputSuffix:[String,Function],showValidationIcon:Boolean,showLoadingIcon:Boolean,showClearButton:Boolean,inputClass:String,wrapperClass:String,tabIndex:Number,role:String,title:String,ariaLabel:String,inputAttributes:Object},data:function(){return{hasMounted:!1,autofill:!1,currentValue:"",valueDuringOnChange:"",focused:!1}},created(){t.validatePackage(h),this._input=void 0,this._inputId=t.guid(),this.$data.valueDuringOnChange=void 0,this.$data.currentValue=this.$props.defaultValue},mounted(){this._input=this.inputRef,this.wrapper=this.wrapperRef,this.$data.hasMounted=!0,this.setValidity()},updated(){this.setValidity(),this.updateValidClass()},setup:()=>({inputRef:i.ref(null)}),render(){const e=!this.$props.validityStyles||this.validity().valid,{label:a,id:l,required:o,iconName:r,showValidationIcon:d,showLoadingIcon:u,showClearButton:c,inputAttributes:h}=this.$props,p=l||this._inputId,m=i.h("input",{...this.$attrs,...h,"aria-label":this.$props.ariaLabel,role:this.$props.role,title:this.$props.title,tabindex:this.$props.tabIndex,placeholder:this.$props.placeholder,id:p,required:o,disabled:this.$props.disabled,value:this.computedValue,class:this.inputInnerClass,ref:e=>{this.inputRef=e},onKeydown:this.handleKeydown,onKeyup:this.handleKeyup,onKeypress:this.handleKeypress,onChange:this.handleChange,onFocus:this.emitFocus,onBlur:this.emitBlur,onInput:this.handleInput,onAnimationstart:this.handleAutoFill,onAnimationend:this.handleAutoFillEnd}),g=t.templateRendering.call(this,this.$props.inputPrefix,t.getListeners.call(this)),f=t.templateRendering.call(this,this.$props.inputSuffix,t.getListeners.call(this)),v=t.getTemplate.call(this,{h:i.h,template:g,additionalProps:{value:this.computedValue,valid:e}}),b=t.getTemplate.call(this,{h:i.h,template:f,additionalProps:{value:this.computedValue,valid:e}}),k=i.createVNode("span",{class:this.inputWrapperClass(),ref:e=>{this.wrapperRef=e}},[r&&i.createVNode(t.Icon,{name:r,class:"k-input-icon"},null),this.$props.inputPrefix&&i.createVNode("span",{class:"k-input-prefix"},[v]),m,this.$props.inputSuffix&&i.createVNode("span",{class:"k-input-suffix"},[b]),d&&e&&i.createVNode(t.Icon,{name:"check",icon:n.checkIcon,class:"k-input-validation-icon"},null),d&&!e&&i.createVNode(t.Icon,{name:"exclamation-circle",icon:n.exclamationCircleIcon,class:"k-input-validation-icon"},null),u&&i.createVNode(t.Icon,{name:"loading",class:"k-input-loading-icon"},null),c&&this.computedValue&&i.createVNode("span",{onClick:this.clearClick,class:"k-clear-value"},[i.createVNode(t.Icon,{name:"x",icon:n.xIcon},null)])]);return a?i.createVNode(s.FloatingLabel,{label:a,editorId:p,editorValue:this.computedValue,editorValid:e,editorDisabled:this.$props.disabled,editorPlaceholder:this.$data.focused?this.$props.placeholder:"",dir:this.$props.dir},function(e){return"function"==typeof e||"[object Object]"===Object.prototype.toString.call(e)&&!i.isVNode(e)}(k)?k:{default:()=>[k]}):k},methods:{updateValidClass(){this.wrapper.classList.toggle("k-invalid",!this.validity().valid)},emitFocus(e){this.$emit("focus",e),this.$data.focused=!0},emitBlur(e){this.$emit("blur",e),this.$data.focused=!1},handleKeydown(e){this.$emit("keydown",e)},handleKeyup(e){this.$emit("keyup",e)},handleKeypress(e){this.$emit("keypress",e)},clearClick(e){this.emitUpdate(e,"change","")},focus(){this._input&&this._input.focus()},validity(){const e={badTextBox:!!this._input&&this._input.validity.badTextBox,patternMismatch:!!this._input&&this._input.validity.patternMismatch,rangeOverflow:!!this._input&&this._input.validity.rangeOverflow,rangeUnderflow:!!this._input&&this._input.validity.rangeUnderflow,stepMismatch:!!this._input&&this._input.validity.stepMismatch,tooLong:!!this._input&&this._input.validity.tooLong,tooShort:!!this._input&&this._input.validity.tooShort,typeMismatch:!!this._input&&this._input.validity.typeMismatch,valueMissing:!!this._input&&this._input.validity.valueMissing};return{...e,customError:void 0!==this.$props.validationMessage,valid:void 0!==this.$props.valid?this.$props.valid:!this._input||!this.isInvalid(e)}},isInvalid(e){let t=!1;for(const i in e)e.hasOwnProperty(i)&&(t=t||e[i]);return t},setValidity(){this._input&&this._input.setCustomValidity&&this._input.setCustomValidity(this.validity().valid?"":this.$props.validationMessage||"")},handleInput(e){this.emitUpdate(e,"input",e.target.value)},handleChange(e){this.emitUpdate(e,"change",e.target.value)},emitUpdate(e,t,i){this.disabled||(this.$data.currentValue=i,this.$data.valueDuringOnChange=i,this.$nextTick((()=>{this.$emit("changemodel",i),this.$emit("update:modelValue",i),this.$emit(t,{event:e,value:i,component:this,target:e.target,validity:this.validity()}),this.$data.valueDuringOnChange=void 0})))},handleAutoFill(e){if("autoFillStart"===e.animationName){const t=e.target.parentNode;t&&t.classList.contains("k-empty")&&(this.$data.autofill=!0,t.classList.remove("k-empty"))}},handleAutoFillEnd(e){"autoFillEnd"===e.animationName&&e.target.parentNode&&(this.$data.autofill=!1)},name:function(){return this.$props.name},inputWrapperClass(){const{size:e,fillMode:i,rounded:a}=this.$props,s=!this.$data.hasMounted||!this.$props.validityStyles||this.validity().valid;return{"k-textbox":!0,"k-input":!0,[`k-input-${t.kendoThemeMaps.sizeMap[e]||e}`]:e,[`k-input-${i}`]:i,[`k-rounded-${t.kendoThemeMaps.roundedMap[a]||a}`]:a,"k-invalid":!s,"k-required":this.required,"k-disabled":this.$props.disabled,[this.wrapperClass]:this.wrapperClass}}},computed:{spanClassNames(){const e=!this.$data.hasMounted||!this.$props.validityStyles||this.validity().valid;return{"k-floating-label-container":!0,"k-focus":this.$data.focused,"k-empty":!(0===this.computedValue||this.computedValue||this.$props.placeholder||this.$data.autofill),"k-autofill":this.$data.autofill,"k-invalid":!e&&void 0!==e,"k-rtl":"rtl"===this.$props.dir}},inputInnerClass(){return{"k-input-inner":!0,[this.inputClass]:this.inputClass}},computedValue(){return void 0!==this.$data.valueDuringOnChange?this.$data.valueDuringOnChange:void 0!==this.$props.value?this.$props.value:void 0!==this.$props.modelValue?this.$props.modelValue:this.$data.currentValue}}}),w=i.defineComponent({name:"KendoHexInput",emits:{hexchange:null,blur:null,focus:null},props:{tabIndex:Number,hex:String,disabled:Boolean,id:String,size:String},computed:{isHexValid(){return!!g(this.currentHex,"rgba")}},data(){return{currentHex:this.$props.hex,originalHex:this.$props.hex}},mounted(){this._input=this.$refs.input._input},watch:{hex:function(e){this.currentHex=e}},render(){return i.createVNode(x,{id:this.$props.id,value:this.currentHex,onInput:this.onChange,onChange:this.onChange,onFocus:this.onFocus,onBlur:this.onBlur,valid:this.isHexValid,disabled:this.$props.disabled,size:this.$props.size,tabIndex:this.tabIndex,ref:"input"},null)},methods:{onChange(e){const t=e.target.value,i=g(t,"rgba");this.currentHex=t,p(i)&&this.$emit("hexchange",{hex:t,value:i,event:e})},onBlur(e){p(g(this.hex,"rgba"))||(this.currentHex=this.originalHex),this.$emit("blur",e)},onFocus(e){this.$emit("focus",e)}}}),N="numerictextbox.increment",I="numerictextbox.decrement",B="slider.increment",L="slider.decrement",D="slider.dragTitle",R="colorGradient.dragHandle",O="colorGradient.r",M="colorGradient.g",z="colorGradient.b",T="colorGradient.a",P="colorGradient.hex",K="colorGradient.hexLabel",F="colorGradient.inputColorButton",_="colorGradient.rLabel",A="colorGradient.gLabel",j="colorGradient.bLabel",E="colorGradient.aLabel",H="colorGradient.contrastRatio",W="colorGradient.colorGradientAALevel",q="colorGradient.colorGradientAAALevel",G="colorGradient.colorGradientPass",U="colorGradient.colorGradientFail",X="colorGradient.hueSliderLabel",Y="colorGradient.alphaSliderLabel",Z="flatColorPicker.cancelBtn",J="flatColorPicker.applyBtn",Q="flatColorPicker.gradientBtn",ee="flatColorPicker.paletterBtn",te="flatColorPicker.clearBtn",ie="colorPicker.adaptiveTitle",ae="checkbox.validation",se="checkbox.optionalText",ne="radioButton.validation",le="switch.validation",oe="colorPicker.dropdownButtonAriaLabel",re="colorGradient.toggleInputsButton",de="rating.ariaLabel",ue="signature.clear",ce="signature.maximize",he="signature.minimize",pe={[N]:"Increase value",[I]:"Decrease value",[B]:"Increase",[L]:"Decrease",[D]:"Drag",[R]:"Color well with two-dimensional slider for selecting\n saturation and lightness. Selected color is",[F]:"Change the color input",[O]:"r",[M]:"g",[z]:"b",[T]:"a",[_]:"red chanel",[A]:"green chanel",[j]:"blue chanel",[E]:"alpha chanel",[P]:"hex",[K]:"HEX",[H]:"Contrast ratio",[W]:"AA",[q]:"AAA",[G]:"Pass",[U]:"Fail",[X]:"Hue slider",[Y]:"Alpha slider",[re]:"Toggle colorgradient inputs",[Z]:"Cancel",[J]:"Apply",[Q]:"Gradient",[ee]:"Palette",[te]:"Clear",[ie]:"Choose color",[ae]:"Please check this box if you want to proceed!",[se]:"(Optional)",[ne]:"Please select option if you want to proceed!",[le]:"Please turn on if you want to proceed!",[oe]:"Select",[de]:"Rating",[ue]:"Clear",[ce]:"Maximize",[he]:"Minimize"},me=1111111.1111111,ge=/\d/,fe=(e,t)=>void 0!==e?e:t,ve=(e,t,i)=>null===e&&void 0===e?"":"string"==typeof e?e:i.formatNumber(e,t),be=e=>(String(e).split(".")[1]||"").length,ke=(e,t)=>Math.max(be(e),be(t)),$e=(e,t)=>{const i=(e=>Math.min(e,15))(t);return parseFloat(e.toFixed(i))},ye=(e,t,i,a,s,n,l)=>{const o=ke(e||0,i||0),r=Ce($e((e||0)+(i||0),o),a,s);t.eventValue=r,t.currentLooseValue=ve(r,n,l),t.selectionStart=t.selectionEnd=Ie(t.currentLooseValue,ge)},Ve=(e,t,i,a,s,n,l)=>{const o=ke(e||0,i||0),r=Ce($e((e||0)-(i||0),o),a,s);t.eventValue=r,t.currentLooseValue=ve(r,n,l),t.selectionStart=t.selectionEnd=Ie(t.currentLooseValue,ge)},Ce=(e,t,i)=>null==e?e:!(e>1||e<1||1===e)||void 0!==i&&void 0!==t&&i<t?null:(void 0!==i&&e>i&&(e=i),void 0!==t&&e<t&&(e=t),e),Se=(e,t,i,a)=>{e.selectionStart=e.selectionEnd=t,((e,t,i)=>{const a=((e,t)=>{const i=t.findIndex((([t,i])=>!!i&&e.indexOf(i)===e.length-i.length));if(-1===i)return-1;const a=t[i][1];return e.length-a.length})(e,t);if(-1!==a&&i.selectionStart>a)return void(i.selectionStart=i.selectionEnd=a);i.selectionStart>e.length&&(i.selectionStart=i.selectionEnd=e.length);const s=((e,t)=>{const i=t.findIndex((([t,i])=>!!t&&0===e.indexOf(t)));return-1===i?-1:t[i][0].length})(e,t);-1!==s&&i.selectionStart<s&&(i.selectionStart=i.selectionEnd=s),-1===i.selectionStart&&(i.selectionStart=i.selectionEnd=0)})(i,a,e)},xe=(e,t,i,a)=>{e.eventValue=a.parseNumber(e.prevLooseValue,t),e.currentLooseValue=e.prevLooseValue,e.valueIsCorrected=!0,Se(e,e.selectionStart,e.currentLooseValue,i)},we=(e,t)=>{const i=e.indexOf(t.decimal);return i>-1?i:Ie(e,ge)},Ne=e=>e.split("").reverse().join(""),Ie=(e,t)=>e.length-Ne(e).search(t),Be=e=>e.split(e[e.search(ge)])[0],Le=e=>{const t=Ne(e);return Ne(t.split(t[t.search(ge)])[0])},De=(e,t)=>e.search(t),Re=(e,t)=>{const i=e.indexOf(t);return i>-1?e.length-i-1:0},Oe=(e,t,i,a,s)=>{const n="0"===e.replace(s,"")[0],l="0"===t.replace(s,"")[0];if(n&&!l)return i-1;if(l&&a)return i+1;let o=0;for(let t=0;t<i;t++)ge.test(e.charAt(t))&&o++;let r=0;for(;o>0&&t.length>r;)ge.test(t.charAt(r))&&o--,r++;return r},Me=(e,t,i)=>{const a={...e},{prevLooseValue:s}=a,n=i.numberSymbols(),l=((e,t)=>{const i=t.formatNumber(me,e),a=t.formatNumber(-me,e),s=t.formatNumber(0,e),n=t.formatNumber(1,e),l=t.numberSymbols(),o=new RegExp(`[\\d\\${l.decimal}${l.group}]`,"g");return[i,a,s,n].map((e=>e.replace(o,""))).join("").split("").filter(((e,t,i)=>i.indexOf(e)===t)).join("")})(t,i),o=String(a.currentLooseValue),r=String(s),d=new RegExp(`[^\\d\\${n.decimal}]`,"g"),u=new RegExp(`[^\\d\\${n.decimal}\\${n.group}]`,"g"),c=new RegExp(`[\\d\\${n.decimal}\\${n.group}]`),h=o.replace(d,""),p=De(o,ge),m=-1===p?-1:Ie(o,ge),g=o.indexOf(n.decimal),f=(o.substring(0,p)+o.substring(p,m).replace(u,"")+o.substring(m,o.length)).split("").filter((e=>-1!==l.indexOf(e)||-1!==e.search(c))).join(""),v=i.formatNumber(.31111111111111117,t).replace(d,""),b=v.indexOf(n.decimal),k=b>-1?v.length-b-1:0,$=i.formatNumber(1,t).replace(d,""),y=$.indexOf(n.decimal),V=y>-1?$.length-y-1:0,{positiveInfo:C,negativeInfo:S,zeroInfo:x,oneInfo:w}=((e,t)=>{const i=t.formatNumber(me,e),a=t.formatNumber(-me,e),s=t.formatNumber(0,e),n=t.formatNumber(1,e),l=Be(i),o=Be(a),r=Be(s),d=Be(n);return{positiveInfo:[l,Le(i)],negativeInfo:[o,Le(a)],zeroInfo:[r,Le(s)],oneInfo:[d,Le(n)]}})(t,i),N=[C,S,x,w],I=1!==N.findIndex((e=>-1!==e.findIndex((e=>!!e)))),B=o.length>0&&o.length<r.length,L=t&&"p"===t[0]&&o&&-1===o.indexOf(n.percentSign);if(!a.isPaste){if(""===o)return a.eventValue=null,a.currentLooseValue="",a;if(a.currentLooseValue===n.minusSign&&i.formatNumber(-0,t)!==r)return a.eventValue=-0,a.currentLooseValue=ve(a.eventValue,t,i),Se(a,we(a.currentLooseValue,n),a.currentLooseValue,N),a;if(((e,t)=>{const i=String(e.currentLooseValue),a=String(e.prevLooseValue);return i.split(t.minusSign).length!==a.split(t.minusSign).length&&i.length===a.length+t.minusSign.length})(a,n)){const e=i.parseNumber(s,t);a.eventValue=-(null!==e?e:0),a.currentLooseValue=ve(a.eventValue,t,i);const n=De(a.currentLooseValue,ge),l=De(r,ge);return Se(a,a.selectionEnd-1+(n-l),a.currentLooseValue,N),a}if(((e,t)=>{const i=String(e.currentLooseValue),a=String(e.prevLooseValue);return-1===i.indexOf(t.minusSign)&&-1!==a.indexOf(t.minusSign)})(a,n))return a.eventValue=i.parseNumber(a.currentLooseValue,t),Se(a,a.selectionStart,a.currentLooseValue,N),a;if(a.currentLooseValue===n.decimal){a.eventValue=0;const e=ve(a.eventValue,t,i);if(0===V&&k>0){const t=Ie(e,ge);a.currentLooseValue=e.substring(0,t)+n.decimal+e.substring(t)}else a.currentLooseValue=e;return Se(a,we(a.currentLooseValue,n)+1,a.currentLooseValue,N),a}if(((e,t)=>String(e.currentLooseValue).split(t.decimal).length>2)(a,n))return xe(a,t,N,i),a;if(L)return a.eventValue=i.parseNumber(o,t)/100,a.currentLooseValue=ve(a.eventValue,t,i),a;if(String(a.currentLooseValue).replace(/[^\d]/g,"").length>15||h!==o&&o&&I&&-1===N.findIndex((([e,t])=>{const i=o.indexOf(e),a=o.indexOf(t),s=0===i,l=a===o.length-t.length,r=i+e.length!==p&&-1!==p&&o[i+e.length]!==n.decimal,d=a!==m&&-1!==m&&o[a-1]!==n.decimal;return e&&t?!r&&!d&&(s&&l):e?!r&&s:!!t&&(!d&&l)})))return xe(a,t,N,i),a;if(h[h.length-1]===n.decimal&&k>0)return a.eventValue=i.parseNumber(o,t),a.currentLooseValue=f,a;if(a.currentLooseValue&&s&&(l+n.decimal+n.group).split("").findIndex((e=>o.split("").filter((t=>t===e)).length<r.split("").filter((t=>t===e)).length&&o.length+1===r.length&&!(e===n.decimal&&0===Re(r.replace(d,""),n.decimal))))>-1)return a.eventValue=i.parseNumber(e.prevLooseValue,t),a.currentLooseValue=e.prevLooseValue,a;const u=Re(h,n.decimal),c="0"===h[h.length-1];if(B&&c&&u<V)return a.eventValue=i.parseNumber(a.currentLooseValue,t),a.currentLooseValue=ve(a.eventValue,t,i),a;if(u>0){const e=o.substring(0,g);if(c&&(!e||0!==r.indexOf(e))){a.eventValue=i.parseNumber(a.currentLooseValue,t);const e=ve(a.eventValue,t,i);return Se(a,Oe(o,e,a.selectionEnd,B,d),e,N),a.currentLooseValue=e,a}if(u>k){const e=o.indexOf(n.decimal),s=o.substring(0,e)+o.substring(e,e+1+k)+o.substring(m,String(a.currentLooseValue).length);return a.eventValue=i.parseNumber(s,t),a.currentLooseValue=s,Se(a,a.selectionStart,s,N),a}if(V!==k&&u<=k&&c)return a.eventValue=i.parseNumber(a.currentLooseValue,t),a.currentLooseValue=f,a;if(u<V)return a.eventValue=i.parseNumber(a.currentLooseValue,t),a.currentLooseValue=ve(a.eventValue,t,i),a}}if(a.eventValue=i.parseNumber(a.currentLooseValue,t),L&&(a.eventValue=a.eventValue/100),"number"==typeof a.eventValue){const e=ve(a.eventValue,t,i);1===o.length?Se(a,we(e,n),e,N):Se(a,Oe(o,e,a.selectionEnd,B,d),e,N),a.currentLooseValue=e}else a.currentLooseValue=ve(i.parseNumber(h),t,i);return a},ze=i.defineComponent({model:{event:"changemodel"},emits:{change:null,changemodel:null,"update:modelValue":null,focus:null,blur:null},props:{modelValue:Number,value:Number,defaultValue:Number,step:{type:Number,default:1},format:[String,Object],tabIndex:Number,accessKey:String,title:String,placeholder:String,min:Number,max:Number,spinners:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},dir:String,name:String,label:String,validationMessage:String,validityStyles:{type:Boolean,default:!0},valid:{type:Boolean,default:void 0},size:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large"].includes(e)}},rounded:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large","full"].includes(e)}},fillMode:{type:String,default:"solid",validator:function(e){return[null,"solid","flat","outline"].includes(e)}},required:{type:Boolean,default:!1},id:String,ariaLabel:String,iconName:String,inputPrefix:[String,Function],inputSuffix:[String,Function],showValidationIcon:Boolean,showLoadingIcon:Boolean,showClearButton:Boolean,inputClass:String,inputType:{type:String,default:"tel"},wrapperClass:String,inputAttributes:Object},inject:{kendoIntlService:{default:null},kendoLocalizationService:{default:null}},data:()=>({hasMounted:!1,isInvalid:!1,isEmpty:!1,currentValue:0,valueDuringOnChange:0,currentLooseValue:"",selectionStart:0,selectionEnd:0,decimalSelect:!1,focused:!1,forceUpdate:!1}),created(){t.validatePackage(h),this._textBeforeInput="",this._inputId=t.guid(),this.$data.currentLooseValue=null,this.$data.valueDuringOnChange=void 0,this._intl=o.provideIntlService(this),this._symbols=this._intl.numberSymbols(),void 0!==this.$props.value?this.$data.currentValue=this.$props.value:void 0!==this.$props.modelValue?this.$data.currentValue=this.$props.modelValue:void 0!==this.$props.defaultValue?this.$data.currentValue=this.$props.defaultValue:this.$data.currentValue=null},mounted(){this._input=t.getRef(this,"input"),this._elementWrapper=this.elementWrapperRef,this.$data.hasMounted=!0,this._input&&(this._textBeforeInput=this._input.value),this.setValidity()},updated(){!(t.canUseDOM&&document.activeElement!==this._input||!this._input)&&null!==this.$data.currentLooseValue&&this.$data.forceUpdate&&"number"!==this._input.type&&(this._input.selectionStart=this.$data.selectionStart,this._input.selectionEnd=this.$data.selectionEnd,this.$data.forceUpdate=!1),this._input&&(this._textBeforeInput=this._input.value),this.setValidity()},computed:{computedValue(){return void 0!==this.$data.valueDuringOnChange?this.$data.valueDuringOnChange:this.$data.currentValue},looseValue(){return ve(this.$data.focused?this.$data.currentLooseValue:fe(this.$props.value,this.$data.currentValue),this.$props.format,this._intl)},spanClassNames(){const e=!this.$data.hasMounted||!this.$props.validityStyles||this.validity().valid,t=this.computedValue;return{"k-floating-label-container":!0,"k-focus":this.$data.focused,"k-empty":!(0===t||t||this.$props.placeholder),"k-invalid":!e&&void 0!==e,"k-rtl":"rtl"===this.$props.dir,[this.inputClass]:this.inputClass}},wrapperClassNames(){const{size:e,fillMode:i,rounded:a,required:s,disabled:n}=this.$props,l=!this.$props.validityStyles||this.validity().valid;return{"k-input":!0,"k-numerictextbox":!0,[`k-input-${t.kendoThemeMaps.sizeMap[e]||e}`]:e,[`k-input-${i}`]:i,[`k-rounded-${t.kendoThemeMaps.roundedMap[a]||a}`]:a,"k-invalid":!l,"k-required":s,"k-disabled":n,"k-loading":this.showLoadingIcon,[this.wrapperClass]:this.wrapperClass}},inputInnerClass(){return{"k-input-inner":!0,[this.inputClass]:this.inputClass}}},methods:{validity(){const e=void 0!==this.$props.validationMessage,t=!(this.$data.valueIsOutOfRange||this.$props.required&&null===this.computedValue);return{customError:e,valid:void 0!==this.$props.valid?this.$props.valid:t,valueMissing:null===this.computedValue}},clearClick(e){void 0!==this.$props.value?this.$data.currentValue=this.$props.value:void 0!==this.$props.modelValue?this.$data.currentValue=this.$props.modelValue:this.$data.currentValue=null,this.$emit("changemodel",null),this.$emit("update:modelValue",null),this.$emit("change",{event:e,value:null,component:this,target:{name:this.$props.name,value:null},validity:this.validity()})},focus(){this._input&&this._input.focus()},emitFocus(e){this.$data.currentLooseValue=this._prevLooseValue,this.$data.focused=!0,this.$emit("focus",e),this.$data.forceUpdate=!0},emitBlur(e){this.$data.eventValue=null,this.$data.prevLooseValue="",this.$data.currentLooseValue="",this.$data.focused=!1,this.$data.selectionStart=void 0,this.$data.selectionEnd=void 0,this.$data.decimalSelect=!1,this.$data.valueIsCorrected=!1,this.$data.valueIsOutOfRange=!1,this.$emit("blur",e),this.$data.forceUpdate=!0},handleFocus(e){this.$data.focused=!0},handleBlur(e){this.$data.focused=!1},setValidity(){this._input&&this._input.setCustomValidity&&this._input.setCustomValidity(this.validity().valid?"":this.$props.validationMessage||"Please enter a valid value!")},getCurrentState(){return{eventValue:fe(this.$props.value,this.$data.currentValue),prevLooseValue:this._prevLooseValue,currentLooseValue:this._input.value,selectionStart:this._input.selectionStart,selectionEnd:this._input.selectionEnd,decimalSelect:!1,valueIsCorrected:!1,valueIsOutOfRange:!1,isPaste:this._isPaste,focused:this.$data.focused}},parseNumber(e){return this._intl.parseNumber(e,this.$props.format)},elementChange(e){const t=this.getCurrentState();this._isPaste=!1,this.triggerChange(e,Me(t,this.$props.format,this._intl))},triggerChange(e,t){if(this.$props.disabled)return;this.$data.valueDuringOnChange=t.eventValue,this.$data.currentValue=t.eventValue;const i=ve(Ce(t.eventValue,this.$props.min,this.$props.max),this.$props.format,this._intl),a=Ce(this.parseNumber(i),this.$props.min,this.$props.max);if(a!==t.eventValue&&(t.valueIsOutOfRange=!0,t.eventValue=a,this.$data.valueDuringOnChange=a,this.$data.currentValue=a),t.valueIsCorrected){const e=this._elementWrapper;e&&-1===e.className.indexOf("k-invalid")&&(this.$data.isInvalid=!0,setTimeout((()=>{this.$data.isInvalid=!1}),50))}const s=this.$props.value!==t.eventValue;void 0!==this.$props.value?this.$data.currentValue=this.$props.value:void 0!==this.$props.modelValue?this.$data.currentValue=this.$props.modelValue:this.$data.currentValue=this.$data.valueDuringOnChange,this.$data.prevLooseValue=t.prevLooseValue,this.$data.currentLooseValue=void 0,this.$data.currentLooseValue=t.currentLooseValue,this.$data.selectionStart=t.selectionStart,this.$data.selectionEnd=t.selectionEnd,this.$data.decimalSelect=t.decimalSelect,this.$data.valueIsCorrected=t.valueIsCorrected,this.$data.valueIsOutOfRange=t.valueIsOutOfRange,this.$data.focused=t.focused,this.$data.isPaste=t.isPaste,this.$data.forceUpdate=!this.$data.forceUpdate,s&&(this.$emit("changemodel",this.$data.valueDuringOnChange),this.$emit("update:modelValue",this.$data.valueDuringOnChange),this.$emit("change",{event:e,value:this.$data.valueDuringOnChange,component:this,target:{name:this.$props.name,value:this.$data.valueDuringOnChange},validity:this.validity()})),this.$data.valueDuringOnChange=void 0},onPasteHandler(e){this._isPaste=!0},increase(e){const t=this.getCurrentState();ye(this.parseNumber(String(t.currentLooseValue)),t,this.$props.step,this.$props.min,this.$props.max,this.$props.format,this._intl),this.triggerChange(e,t)},decrease(e){const t=this.getCurrentState();Ve(this.parseNumber(String(t.currentLooseValue)),t,this.$props.step,this.$props.min,this.$props.max,this.$props.format,this._intl),this.triggerChange(e,t)},wheel(e){!t.canUseDOM||document.activeElement!==this._input||!this._input||(e.deltaY<0&&(e.preventDefault(),this.increase(e)),e.deltaY>0&&(e.preventDefault(),this.decrease(e)))},keyDown(e){let t,i,a,s,n=this.getCurrentState();const l=this.parseNumber(String(n.currentLooseValue));if(!(n.selectionEnd>n.selectionStart&&n.selectionEnd-n.selectionStart===String(n.currentLooseValue).length)){switch(e.keyCode){case 38:ye(l,n,this.$props.step,this.$props.min,this.$props.max,this.$props.format,this._intl);break;case 40:Ve(l,n,this.$props.step,this.$props.min,this.$props.max,this.$props.format,this._intl);break;case 13:t=ve(Ce(l,this.$props.min,this.$props.max),this.$props.format,this._intl),i=Ce(this.parseNumber(t),this.$props.min,this.$props.max),n.eventValue=i,n.currentLooseValue=ve(i,this.$props.format,this._intl),n.selectionStart=n.selectionEnd=n.currentLooseValue.length;break;case 110:a=this._input,s=this._intl.numberSymbols(),a&&(n.currentLooseValue=n.currentLooseValue.slice(0,n.selectionStart)+s.decimal+n.currentLooseValue.slice(n.selectionEnd),n.selectionStart=n.selectionEnd=n.selectionStart+1,n=Me(n,this.$props.format,this._intl));break;default:return}e.preventDefault(),this.triggerChange(e,n)}},spinnersWrapperMouseDown(e){t.canUseDOM&&this._input&&(e.preventDefault(),document.activeElement!==this._input&&this._input.focus())}},setup:()=>({inputRef:i.ref(null),elementWrapperRef:i.ref(null),kendoLocalizationService:i.inject("kendoLocalizationService",{}),kendoIntlService:i.inject("kendoIntlService",{})}),render(){const{iconName:e,showValidationIcon:a,showLoadingIcon:s,showClearButton:r,inputAttributes:d}=this.$props,u=this.$props.id||this._inputId,c=t.getDefaultSlots(this),h=o.provideLocalizationService(this),p=this.validity().valid;void 0!==this.$props.value&&this.$props.value!==this.$data.currentValue?this.$data.currentValue=this.$props.value:void 0!==this.$props.modelValue&&this.$props.modelValue!==this.$data.currentValue&&(this.$data.currentValue=this.$props.modelValue),this._prevLooseValue=(this.$data.currentLooseValue,this.looseValue);const m=t.templateRendering.call(this,this.$props.inputPrefix,t.getListeners.call(this)),g=t.templateRendering.call(this,this.$props.inputSuffix,t.getListeners.call(this)),f=t.getTemplate.call(this,{h:i.h,template:m,additionalProps:{value:this.computedValue,valid:p}}),v=t.getTemplate.call(this,{h:i.h,template:g,additionalProps:{value:this.computedValue,valid:p}}),b=i.createVNode("span",{dir:this.$props.dir,class:this.wrapperClassNames,style:this.$attrs.style},[e&&i.createVNode(t.Icon,{name:e,class:"k-input-icon"},null),this.$props.inputPrefix&&i.createVNode("span",{class:"k-input-prefix"},[f]),i.createVNode("input",i.mergeProps({tabindex:this.$props.tabIndex,accesskey:this.$props.accessKey,disabled:this.$props.disabled,title:this.$props.title,"aria-label":this.$props.ariaLabel,"aria-valuemin":this.$props.min,"aria-valuemax":this.$props.max,"aria-disabled":this.$props.disabled?"true":void 0,placeholder:this.$props.placeholder,type:this.$props.inputType,spellcheck:!1,autocomplete:"off",autocorrect:"off",class:this.inputInnerClass,id:u,role:"spinbutton",value:this.looseValue,name:this.$props.name,onWheel:this.wheel,onKeydown:this.keyDown,onInput:this.elementChange,onFocus:this.emitFocus,onBlur:this.emitBlur,onPaste:this.onPasteHandler,ref:t.setRef(this,"input")},d),null),this.$props.inputSuffix&&i.createVNode("span",{class:"k-input-suffix"},[v]),a&&p&&i.createVNode(t.Icon,{name:"check",icon:n.checkIcon,class:"k-input-validation-icon"},null),a&&!p&&i.createVNode(t.Icon,{name:"exclamation-circle",icon:n.exclamationCircleIcon,class:"k-input-validation-icon"},null),s&&i.createVNode(t.Icon,{name:"loading",class:"k-input-loading-icon"},null),r&&void 0!==this.computedValue&&null!==this.computedValue&&i.createVNode("span",{onClick:this.clearClick,class:"k-clear-value"},[i.createVNode(t.Icon,{name:"x",icon:n.xIcon},null)]),c,this.$props.spinners&&i.createVNode("span",{class:"k-input-spinner k-spin-button",onMousedown:this.spinnersWrapperMouseDown},[i.createVNode(l.Button,{type:"button",tabIndex:-1,icon:"caret-alt-up",svgIcon:n.caretAltUpIcon,class:"k-spinner-increase",rounded:null,"aria-label":h.toLanguageString(N,pe[N]),title:h.toLanguageString(N,pe[N]),onClick:this.increase},null),i.createVNode(l.Button,{type:"button",tabIndex:-1,class:"k-spinner-decrease",icon:"caret-alt-down",svgIcon:n.caretAltDownIcon,rounded:null,"aria-label":h.toLanguageString(I,pe[I]),title:h.toLanguageString(I,pe[I]),onClick:this.decrease},null)])]);return this.$props.label?i.createVNode("span",{class:this.spanClassNames,onFocusin:this.handleFocus,onFocusout:this.handleBlur,dir:this.$props.dir},[b,this.$props.label?u?i.createVNode("label",{for:u,class:"k-floating-label"},[this.$props.label]):i.createVNode("span",{class:"k-label"},[this.$props.label]):null]):b}});function Te(e){return"function"==typeof e||"[object Object]"===Object.prototype.toString.call(e)&&!i.isVNode(e)}const Pe=["rgba","rgb","hex"],Ke=i.defineComponent({name:"KendoColorInput",emits:{hexchange:null,rgbachange:null},props:{tabIndex:Number,rgba:{type:Object,default:function(){return{}}},hex:String,opacity:Boolean,disabled:Boolean,size:String},inject:{kendoLocalizationService:{default:null}},created(){this.hexInputId=t.guid()},data:()=>({inputMode:Pe[1]}),mounted(){this.lastFocusable=this.$refs.hexinput||this.$refs.numerica||this.$refs.numericb},updated(){this.lastFocusable=this.$refs.hexinput||this.$refs.numerica||this.$refs.numericb},render(){const e=o.provideLocalizationService(this),t=e.toLanguageString(P,pe[P]),a=e.toLanguageString(F,pe[F]),r=e.toLanguageString(O,pe[O]),d=e.toLanguageString(M,pe[M]),u=e.toLanguageString(z,pe[z]),c=e.toLanguageString(T,pe[T]),h=e.toLanguageString(_,pe[_]),p=e.toLanguageString(A,pe[A]),m=e.toLanguageString(j,pe[j]),g=e.toLanguageString(E,pe[E]);return i.createVNode("div",{class:"k-colorgradient-inputs k-hstack"},[i.createVNode("div",{class:"k-vstack"},[i.createVNode(l.Button,{ariaLabel:a,tabIndex:this.tabIndex,type:"button",fillMode:"flat",icon:"caret-alt-expand",svgIcon:n.caretAltExpandIcon,class:"k-colorgradient-toggle-mode k-icon-button",onClick:this.onToggleModeChange,onKeydown:this.onKeyDown,size:this.$props.size},null)]),"hex"===this.inputMode&&i.createVNode("div",{class:"k-vstack k-flex-1"},[i.createVNode("span",{class:"k-hex-value"},[i.createVNode(w,{id:this.hexInputId,tabIndex:this.tabIndex,hex:this.$props.hex,onHexchange:this.onHexChange,disabled:this.$props.disabled,ref:"hexinput",size:this.$props.size},null)]),i.createVNode(s.Label,{class:"k-colorgradient-input-label",editorId:this.hexInputId},Te(t)?t:{default:()=>[t]})]),("rgb"===this.inputMode||"rgba"===this.inputMode)&&[i.createVNode("div",{class:"k-vstack"},[i.createVNode(ze,{inputType:"number",tabIndex:this.tabIndex,value:this.$props.rgba.r,min:0,max:255,spinners:!1,format:"n",ariaLabel:h,onChange:this.onRgbaRChange,disabled:this.$props.disabled,size:this.$props.size},null),i.createVNode(s.Label,{class:"k-colorgradient-input-label"},Te(r)?r:{default:()=>[r]})]),i.createVNode("div",{class:"k-vstack"},[i.createVNode(ze,{inputType:"number",tabIndex:this.tabIndex,value:this.$props.rgba.g,min:0,max:255,spinners:!1,format:"n",ariaLabel:p,onChange:this.onRgbaGChange,disabled:this.$props.disabled,size:this.$props.size},null),i.createVNode(s.Label,{class:"k-colorgradient-input-label"},Te(d)?d:{default:()=>[d]})]),i.createVNode("div",{class:"k-vstack"},[i.createVNode(ze,{inputType:"number",tabIndex:this.tabIndex,value:this.$props.rgba.b,min:0,max:255,spinners:!1,format:"n",ariaLabel:m,onChange:this.onRgbaBChange,disabled:this.$props.disabled,ref:"numericb",size:this.$props.size},null),i.createVNode(s.Label,{class:"k-colorgradient-input-label"},Te(u)?u:{default:()=>[u]})])],"rgba"===this.inputMode&&i.createVNode("div",{class:"k-vstack"},[this.$props.opacity&&i.createVNode(ze,{inputType:"number",tabIndex:this.tabIndex,value:this.$props.rgba.a,min:0,max:1,step:.01,spinners:!1,format:"n2",ariaLabel:g,onChange:this.onRgbaAChange,disabled:this.$props.disabled,ref:"numerica",size:this.$props.size},null),this.$props.opacity&&i.createVNode(s.Label,{class:"k-colorgradient-input-label"},Te(c)?c:{default:()=>[c]})])])},methods:{onHexChange(e){this.$emit("hexchange",e.hex,e.value,e)},onRgbaRChange(e){this.dispatchRgbaChange({r:e.value},e)},onRgbaGChange(e){this.dispatchRgbaChange({g:e.value},e)},onRgbaBChange(e){this.dispatchRgbaChange({b:e.value},e)},onRgbaAChange(e){this.dispatchRgbaChange({a:e.value},e)},dispatchRgbaChange(e,t){let i={...this.$props.rgba};void 0!==e.r&&(i.r=e.r),void 0!==e.g&&(i.g=e.g),void 0!==e.b&&(i.b=e.b),void 0!==e.a&&(i.a=e.a),this.$emit("rgbachange",i,t)},onToggleModeChange(){const e=Pe.length-1===Pe.indexOf(this.inputMode)?0:Pe.indexOf(this.inputMode)+1;if(this.$props.opacity)this.inputMode=Pe[e];else{const t="rgba"===Pe[e]?e+1:e;this.inputMode=Pe[t]}},onKeyDown(e){e.keyCode===t.Keys.enter&&e.stopPropagation()}}}),Fe=i.defineComponent({name:"KendoColorContrastLabels",props:{bgColor:Object,rgba:Object},inject:{kendoLocalizationService:{default:null}},render(){const e=o.provideLocalizationService(this),a=e.toLanguageString(H,pe[H]),s=e.toLanguageString(W,pe[W]),l=e.toLanguageString(q,pe[q]),r=e.toLanguageString(G,pe[G]),d=e.toLanguageString(U,pe[U]),u=C(this.$props.rgba,this.$props.bgColor),c=4.5.toFixed(1),h=7..toFixed(1),p=`${a}: ${u.toFixed(2)}`,m=`${s}: ${c}`,g=`${l}: ${h}`,f=u>=4.5,v=u>=7,b=i.createVNode("span",{key:1,class:"k-contrast-validation k-text-success"},[r,i.createTextVNode(" "),i.createVNode(t.Icon,{name:"check",icon:n.checkIcon},null)]),k=i.createVNode("span",{key:2,class:"k-contrast-validation k-text-error"},[d,i.createTextVNode(" "),i.createVNode(t.Icon,{name:"x",icon:n.xIcon},null)]);return i.createVNode("div",{class:"k-vbox k-colorgradient-color-contrast"},[i.createVNode("div",{class:"k-contrast-ratio"},[i.createVNode("span",{class:"k-contrast-ratio-text"},[p]),f?i.createVNode("span",{class:"k-contrast-validation k-text-success"},[i.createVNode(t.Icon,{name:"check",icon:n.checkIcon},null),v&&i.createVNode(t.Icon,{name:"check",icon:n.checkIcon},null)]):i.createVNode("span",{class:"k-contrast-validation k-text-error"},[i.createVNode(t.Icon,{name:"x",icon:n.xIcon},null)])]),i.createVNode("div",null,[i.createVNode("span",null,[m]),f?b:k]),i.createVNode("div",null,[i.createVNode("span",null,[g]),v?b:k])])}}),_e=(e,t)=>{const i=t[0]-e[0],a=t[1]-e[1];return{length:Math.sqrt(Math.pow(i,2)+Math.pow(a,2)),angle:Math.atan2(a,i)}},Ae=i.defineComponent({name:"KendoColorContrastSvg",props:{metrics:Object,backgroundColor:String,hsva:Object},render(){const e=function(e,t){if(0===e.length)return"";const a=e.reduce(((e,i,a,s)=>0===a?`M ${i[0]},${i[1]}`:`${e} ${t(i,a,s)}`),"");return i.createVNode("path",{d:a,fill:"none",stroke:"white","stroke-width":"1"},null)},t=this.$props.metrics,a=(e,i,s,n,l)=>{const o=(s+n)/2,r=Object.assign({},this.$props.hsva,{s:i/t.width,v:1-o/t.height}),d=C(b(k(r)),b(this.$props.backgroundColor||""));return s+.5>n?d<e+1&&d>e-1?o:null:l(d,e)?a(e,i,s,n-(n-s)/2,l):a(e,i,s+(n-s)/2,n,l)},s=(e,i,s=!1)=>{const n=[];for(let l=0;l<=t.width;l+=t.width/i){const i=a(e,l,0,t.height,s?(e,t)=>e<t:(e,t)=>e>t);null!==i&&n.push([l,i])}return n},n=(e=>(t,i,a)=>{const[s,n]=e(a[i-1],a[i-2],t),[l,o]=e(t,a[i-1],a[i+1],!0);return`C ${s},${n} ${l},${o} ${t[0]},${t[1]}`})((e=>(t,i,a,s)=>{const n=e(i||t,a||t),l=n.angle+(s?Math.PI:0),o=.1*n.length;return[t[0]+Math.cos(l)*o,t[1]+Math.sin(l)*o]})(_e));return i.createVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"k-color-contrast-svg",style:{position:"absolute",overflow:"visible",pointerEvents:"none",left:0,top:0,zIndex:3}},[e.call(this,s(4.5,16),n),e.call(this,s(4.5,16,!0),n),e.call(this,s(7,16),n),e.call(this,s(7,16,!0),n)])}}),je="data-slider-label",Ee=i.defineComponent({name:"KendoSliderLabel",emits:{click:null},props:{position:Number,title:String,vertical:Boolean},data:()=>({currentDir:"ltr"}),inject:["kendoMax","kendoMin","kendoVertical"],mounted(){if(this.sliderLabelRef=this.$refs.sliderLabelRef,!this.currentDir&&window&&this.$el){const e=window.getComputedStyle(this.$el).direction;e&&(this.currentDir=e)}},render(){let e=this.currentDir;const a=t.getDefaultSlots(this),s=100*(this.$props.position-this.kendoMin)/(this.kendoMax-this.kendoMin),n=this.kendoVertical,l=n?{bottom:`${s}%`}:{["rtl"===e?"right":"left"]:`${s}%`};return i.createVNode("li",{ref:"sliderLabelRef",class:t.classNames("k-tick","k-tick-large",n?"k-tick-vertical":"k-tick-horizontal"),title:this.$props.title,style:{zIndex:1,position:"absolute",...l}},[i.createVNode("span",{"data-slider-label":!0,class:"k-label",onClick:this.onClick},[a])])},methods:{onClick(e){this.$emit("click",e)}}}),He=i.defineComponent({name:"KendoSlider",model:{event:"changemodel"},emits:{changemodel:null,"update:modelValue":null,change:null,blur:null,focus:null},props:{modelValue:{type:Number,default:void 0},defaultValue:{type:Number,default:void 0},name:String,buttons:Boolean,tabIndex:Number,disabled:Boolean,dir:String,step:Number,min:{type:Number,required:!0},max:{type:Number,required:!0},value:Number,vertical:Boolean,id:String,ariaLabelledBy:String,ariaDescribedBy:String,ariaLabel:String},provide(){return{kendoMin:this.$props.min,kendoMax:this.$props.max,kendoVertical:this.$props.vertical}},inject:{kendoLocalizationService:{default:null}},data:()=>({currentValue:void 0,currentFocused:!1,currentDir:"ltr"}),computed:{computedValue(){const e=void 0!==this.$props.value?this.$props.value:this.currentValue,{min:t,max:i}=this.$props;return void 0===e?e:Math.min(Math.max(e,t),i)},sliderTrack(){return this._sliderTrack}},created(){t.validatePackage(h),void 0!==this.$props.value?this.$data.currentValue=this.$props.value:void 0!==this.$props.modelValue?this.$data.currentValue=this.$props.modelValue:void 0!==this.$props.defaultValue?this.$data.currentValue=this.$props.defaultValue:this.$data.currentValue=this.$props.min,this.currentFocused=!1,this.currentDir=this.$props.dir},mounted(){if(this._sliderTrack=this.$refs.sliderTrack,this.$el&&(this.draggable=this.$refs.draggable),!this.currentDir&&window&&this.$el){const e=window.getComputedStyle(this.$el).direction;e&&(this.currentDir=e)}},updated(){this.$el&&(this.draggable=this.$refs.draggable)},setup:()=>({inputRef:i.ref(null),kendoLocalizationService:i.inject("kendoLocalizationService",{})}),render(){const e=o.provideLocalizationService(this),a=(this.computedValue-this.$props.min)/(this.$props.max-this.$props.min)*100,s=t.getDefaultSlots(this),{vertical:r}=this.$props,d="rtl"===this.currentDir?r?n.caretAltUpIcon:n.caretAltLeftIcon:r?n.caretAltUpIcon:n.caretAltRightIcon,u="rtl"===this.currentDir?r?n.caretAltDownIcon:n.caretAltRightIcon:r?n.caretAltDownIcon:n.caretAltLeftIcon,c="rtl"===this.currentDir?r?"caret-alt-up":"caret-alt-left":r?"caret-alt-up":"caret-alt-right",h="rtl"===this.currentDir?r?"caret-alt-down":"caret-alt-right":r?"caret-alt-down":"caret-alt-left";return i.createVNode("div",{dir:this.currentDir,id:this.$props.id,style:this.$props.style,onFocus:this.onFocus,onBlur:this.onBlur,onKeydown:this.onKeyDown,"aria-label":this.$props.ariaLabel,class:t.classNames("k-slider",{"k-focus":this.currentFocused,"k-disabled":this.$props.disabled,"k-slider-horizontal":!this.$props.vertical,"k-slider-vertical":this.$props.vertical},this.$props.className)},[this.$props.buttons&&i.createVNode(l.Button,{type:"button",tabIndex:-1,icon:h,svgIcon:u,style:{position:"relative"},rounded:"full",class:"k-button-decrease",title:e.toLanguageString(L,pe[L]),onClick:this.decrement},null),i.createVNode(t.Draggable,{onDrag:this.dragOver,onPress:this.dragStart,ref:"draggable"},{default:()=>[i.createVNode("div",{class:"k-slider-track-wrap",style:{touchAction:"none"}},[s&&i.createVNode("ul",{class:"k-reset k-slider-items"},[s]),i.createVNode("div",{class:"k-slider-track",ref:"sliderTrack"},[i.createVNode("div",{class:"k-slider-selection",style:this.$props.vertical?{height:a+"%"}:{width:a+"%"}},null),i.createVNode("span",{class:"k-draghandle",role:"slider",tabindex:"0","aria-valuenow":this.computedValue,"aria-valuemin":this.$props.min,"aria-valuemax":this.$props.max,"aria-valuetext":this.computedValue.toString(),"aria-disabled":this.$props.disabled?"true":void 0,title:e.toLanguageString(D,pe[D]),style:this.$props.vertical?{bottom:a+"%",zIndex:1}:{["rtl"===this.currentDir?"right":"left"]:a+"%",zIndex:1}},null)])])]}),this.$props.buttons&&i.createVNode(l.Button,{type:"button",tabIndex:-1,icon:c,svgIcon:d,rounded:"full",style:{position:"relative"},class:"k-button-increase",title:e.toLanguageString(B,pe[B]),onClick:this.increment},null)])},methods:{focus(){this.$el&&this.$el.focus()},isLabel(e){let t=e;for(;t;){if(t.getAttribute(je))return!0;t=t.parentElement}return!1},onFocus(e){this.currentFocused=!0,this.$emit("focus",e)},onBlur(e){this.currentFocused=!1,this.$emit("blur",e)},onKeyDown(e){let i;e.keyCode===t.Keys.left||e.keyCode===t.Keys.down?i=this.currentValue-(this.$props.step||0):e.keyCode===t.Keys.right||e.keyCode===t.Keys.up?i=this.currentValue+(this.$props.step||0):e.keyCode===t.Keys.home?i=this.$props.min:e.keyCode===t.Keys.end&&(i=this.$props.max),void 0!==i&&(e.preventDefault(),this.change(e,i))},decrement(e){e.preventDefault(),this.change(e,this.currentValue-(this.$props.step||0))},increment(e){e.preventDefault(),this.change(e,this.currentValue+(this.$props.step||0))},dragStart(e){this.isLabel(e.originalEvent.target)||(e.isTouch&&e.originalEvent.preventDefault(),this.drag(e))},dragOver(e){e.originalEvent.preventDefault(),this.drag(e)},drag(e){const t=this.draggable.element.getBoundingClientRect(),i=(this.$props.vertical?t.bottom-e.clientY:"rtl"===this.currentDir?t.right-e.clientX:e.clientX-t.left)/(this.$props.vertical?t.height:t.width);this.change(e,this.$props.min+i*(this.$props.max-this.$props.min))},change(e,t){t=Math.min(Math.max(t,this.$props.min),this.$props.max),this.currentValue=t,this.$emit("changemodel",t),this.$emit("update:modelValue",t),this.$emit("change",{event:e,value:t,component:this,target:{name:this.$props.name,value:t}})}}}),We="rgba(255, 255, 255, 1)",qe=i.defineComponent({name:"KendoColorGradient",model:{event:"changemodel"},emits:{change:null,focus:null,blur:null,changemodel:null,"update:modelValue":null,"update:modelRgbaValue":null,keydown:null},inject:{kendoLocalizationService:{default:null}},props:{modelValue:String,modelRgbaValue:String,defaultValue:String,value:String,opacity:{type:Boolean,default:!0},backgroundColor:String,disabled:Boolean,id:String,ariaLabelledBy:String,ariaDescribedBy:String,tabIndex:Number,innerTabIndex:{type:Number,default:void 0},size:String,class:String,adaptive:Boolean},created(){t.validatePackage(h),this.guid=t.guid()},computed:{valueSet(){return this.value||this.modelValue||this.modelRgbaValue},computedValue(){let e=this.valueSet||this.currentValue||this.defaultValue||g(We,"rgba");return p(g(e,"hex",this.opacity))||(e=We),e},hsva(){return this.valueSet?v(this.computedValue):this.currentHsva||v(this.computedValue)},rgba(){return this.valueSet?b(this.computedValue):this.currentRgba},hex(){return this.valueSet?g(this.computedValue,"hex",this.opacity):this.currentHex},computedBgColor(){return this.currentBgColor||$(this.hsva.h)},computedTabIndex(){return void 0!==this.innerTabIndex?this.innerTabIndex:this.focused?0:-1}},data:()=>({currentValue:void 0,currentBgColor:void 0,isFirstRender:!0,currentHsva:void 0,currentRgba:void 0,currentHex:void 0,focused:!1}),mounted(){this.alphaSlider=this.alphaSliderRef,this.setAlphaSliderBackground(this.computedBgColor),this.$el&&(this.draggable=this.$refs.draggable,this.gradientWrapper=this.draggable&&this.draggable.element),this.isFirstRender&&(this.isFirstRender=!1)},destroyed(){this.guid},updated(){this.setAlphaSliderBackground(this.computedBgColor)},render(){const{size:e,disabled:a,class:s,opacity:n,id:l,tabIndex:r,ariaDescribedBy:d,ariaLabelledBy:u,adaptive:c}=this.$props,h=t.classNames("k-colorgradient",{"k-disabled":a,[`k-colorgradient-${t.kendoThemeMaps.sizeMap[e]||e}`]:e},s),m=o.provideLocalizationService(this),g=m.toLanguageString(X,pe[X]),f=m.toLanguageString(Y,pe[Y]),v=m.toLanguageString(R,pe[R]),k=function(){let e={};if(!this.isFirstRender){const t=this.getGradientRectMetrics(),i=(1-this.hsva.v)*t.height,a=this.hsva.s*t.width;e.top=`${i}px`,e.left=`${a}px`}return i.createVNode("div",{class:"k-hsv-draghandle k-draghandle",role:"slider","aria-orientation":void 0,"aria-label":v+`${this.value||"none"}`,"aria-valuenow":Math.round(100*this.hsva.s),"aria-valuetext":`\n saturation: ${Math.round(100*this.hsva.s)}%,\n value: ${Math.round(100*this.hsva.v)}%`,tabindex:this.computedTabIndex,onKeydown:this.dragKeyDown,style:e,ref:t.setRef(this,"draghandle")},null)};return i.createVNode("div",{id:l,class:h,role:-1!==r?"textbox":void 0,"aria-disabled":a,tabindex:t.getTabIndex(r,a),"aria-labelledby":u,"aria-describedby":d,onFocus:this.onFocus,onBlur:this.onBlur,onKeydown:this.onKeyDownHandler},[i.createVNode("div",{class:"k-colorgradient-canvas "+(c?"k-vstack":"k-hstack")},[i.createVNode("div",{class:"k-hsv-rectangle",style:{background:this.computedBgColor}},[i.createVNode(t.Draggable,{onDrag:this.onDrag,onRelease:this.onRelease,ref:"draggable"},{default:()=>[i.createVNode("div",{class:"k-hsv-gradient",style:{touchAction:"none"},tabindex:-1,onClick:this.onGradientWrapperClick},[k.call(this)])]}),this.backgroundColor&&!this.isFirstRender&&i.createVNode(Ae,{metrics:this.gradientWrapper?this.getGradientRectMetrics():void 0,hsva:this.hsva,backgroundColor:this.backgroundColor},null)]),i.createVNode("div",{class:"k-hsv-controls "+(c?"k-vstack":"k-hstack")},[i.createVNode(He,{tabIndex:this.computedTabIndex,value:this.hsva.h,buttons:!1,vertical:!c,min:0,max:360,step:5,onChange:this.onHueSliderChange,class:"k-hue-slider k-colorgradient-slider",disabled:a,ariaLabel:g},null),n&&i.createVNode(He,{tabIndex:this.computedTabIndex,value:p(this.hsva.a)?100*this.hsva.a:100,buttons:!1,vertical:!c,min:0,max:100,step:1,onChange:this.onAlphaSliderChange,class:"k-alpha-slider k-colorgradient-slider",disabled:a,ariaLabel:f,ref:e=>{this.alphaSliderRef=e}},null)])]),i.createVNode(Ke,{tabIndex:this.computedTabIndex,rgba:this.rgba,onRgbachange:this.onRgbaChange,hex:this.hex,onHexchange:this.onHexChange,opacity:n,disabled:a,ref:"colorInput",size:e},null),this.backgroundColor&&i.createVNode(Fe,{bgColor:b(this.backgroundColor),rgba:this.rgba},null)])},methods: