1import{A as c,o as s,c as r,r as i,I as v,J as b,b as n,a as p,H as h,t as V,h as f,w as o,T as m,f as A,e as y,v as $,d as C,u as g}from"./D8A5kj92.js";const B="not-validated",k="invalid",S="valid",w="disabled",F={props:{wrapperAttrs:{type:Object,required:!1,default:void 0},label:{type:String,default:""},clearable:{type:Boolean,default:!0},forceFloat:{type:Boolean,default:!1},showStatus:{type:Boolean,default:!1},modelValue:{type:[String,Number],default:void 0},validator:{type:Object,default:void 0}},data(){return{isFocussed:!1}},computed:{hasValue(){return this.modelValue!==null&&this.modelValue!==void 0&&this.modelValue!==""},hasLabel(){return this.label!==null&&this.label!==void 0&&this.label!==""},hasStatus(){return this.showStatus||!!this.$slots.status},showClearButton(){return this.clearable&&this.hasValue},defaultInputAttrs(){return{autofocus:!1,novalidate:!0}},defaultWrapperAttrs(){const t={"data-focus":this.isFocussed,"data-disabled":!!this.$attrs?.disabled,"data-readonly":!!this.$attrs?.readonly,"data-floating":this.isFloating};return this.validator&&(t["data-validation"]=this.validationState),t},slotProps(){return{characterCount:this.characterCount,value:this.modelValue,validation:this.validationState}},isFloating(){return this.forceFloat||this.hasLabel&&(this.isFocussed||this.hasValue)},characterCount(){return this.modelValue?this.modelValue.length:0},validationState(){return this.validator?this.validator.validated&&this.validator.valid?S:this.validator.validated&&!this.validator.valid?k:B:w}},methods:{onFocusInput(){this.$emit("focus"),this.isFocussed=!0},onBlurInput(){this.$emit("blur"),this.isFocussed=!1},onInput(t){this.$emit("update:modelValue",t.target.value)},onChange(t){this.$emit("change",t)},onClear(){this.$emit("clear"),this.$emit("update:modelValue","")},onClickWrapper(){this.$refs.input.focus()}}},D={name:"DnInput",mixins:[F],inheritAttrs:!1,computed:{hasPre(){return!!this.$slots.pre},hasAfter(){return!!this.$slots.after},extendedWrapperAttrs(){return{...this.defaultWrapperAttrs,"data-has-pre":this.hasPre,"data-has-after":this.hasAfter,...this.wrapperAttrs}},extendedInputAttrs(){return{...this.defaultInputAttrs,...this.$attrs}}}},P={key:0,class:"dn-input__pre"},L={class:"dn-input__field"},N={class:"dn-input__field-body"},W=["value"],O={key:0,class:"dn-input__label"},T={key:0,class:"dn-input__field-aside"},j={key:1,class:"dn-input__after"};function E(t,e,d,l,I,u){return s(),r("div",h({class:["dn-input",{"dn-input--has-floating-label":!!t.label}]},u.extendedWrapperAttrs,{onClick:e[5]||(e[5]=(...a)=>t.onClickWrapper&&t.onClickWrapper(...a))}),[u.hasPre?(s(),r("div",P,[i(t.$slots,"pre",v(b(t.slotProps)))])):n("",!0),p("div",L,[p("div",N,[p("input",h({ref:"input",value:t.modelValue},u.extendedInputAttrs,{onFocus:e[0]||(e[0]=(...a)=>t.onFocusInput&&t.onFocusInput(...a)),onBlur:e[1]||(e[1]=(...a)=>t.onBlurInput&&t.onBlurInput(...a)),onInput:e[2]||(e[2]=(...a)=>t.onInput&&t.onInput(...a)),onChange:e[3]||(e[3]=(...a)=>t.onChange&&t.onChange(...a))}),null,16,W),t.label?(s(),r("label",O,V(t.label),1)):n("",!0)]),f(m,{name:"dn-input-fade"},{default:o(()=>[t.showClearButton||t.hasStatus?(s(),r("div",T,[f(m,{name:"dn-input-fade"},{default:o(()=>[t.showClearButton?(s(),r("button",{key:"clear",type:"button",class:"dn-input__clear",title:"Reset",tabindex:"-1",onClick:e[4]||(e[4]=(...a)=>t.onClear&&t.onClear(...a))},[i(t.$slots,"clear",{},()=>[e[6]||(e[6]=A("â¨",-1))])])):n("",!0)]),_:3}),f(m,{name:"dn-input-fade"},{default:o(()=>[t.hasStatus?(s(),r("div",h({key:0},t.slotProps,{class:"dn-input__status"}),[i(t.$slots,"status")],16)):n("",!0)]),_:3})])):n("",!0)]),_:3})]),u.hasAfter?(s(),r("div",j,[i(t.$slots,"after",v(b(t.slotProps)))])):n("",!0)],16)}const _=c(D,[["render",E]]),q={__name:"BaseInput",props:{wrapperAttr:{type:Object,default:()=>({})},modelValue:{type:String,default:""}},emits:["update:modelValue"],setup(t){return(e,d)=>(s(),y(g(_),{"wrapper-attrs":t.wrapperAttr,value:t.modelValue,onInput:d[0]||(d[0]=l=>e.$emit("update:modelValue",l))},$({_:2},[C(Object.keys(e.$slots),l=>({name:l,fn:o(I=>[i(e.$slots,l,v(b(I)))])}))]),1032,["wrapper-attrs","value"]))}};export{F as I,q as _}; 2//# sourceMappingURL=CZ0Otz_t.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.