UNPKG

@gits-id/form-select

Version:

GITS Form Select Component

2 lines (1 loc) 1.78 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var e=require("vue"),h=require("vee-validate"),o=require("@gits-id/utils");const M=["disabled"],w=["value"],i=e.defineComponent({props:{modelValue:{type:String,default:""},value:{type:String,default:""},items:{type:Array,default:()=>[]},itemText:{type:String,default:"text"},itemValue:{type:String,default:"value"},name:{type:String,default:""},error:{type:Boolean,default:!1},errorMessages:{type:Array,default:()=>[]},size:{type:String,default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(r,{emit:d}){const u=r,{modelValue:s,value:c,itemText:m,itemValue:p,error:v,errorMessages:f,name:g,disabled:y}=e.toRefs(u),l=e.ref(s.value),{class:V}=o.useTextSize(u.size),S=e.computed(()=>o.useInputClasses(v.value)),k=e.computed(()=>[S.value,V.value]);e.watch(l,t=>{d("update:modelValue",t)}),e.watch(s,t=>{l.value=t},{immediate:!0}),e.watch(c,t=>{l.value=t});const B=t=>typeof t=="string"?t:t[p.value],b=t=>typeof t=="string"?t:t[m.value];return(t,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createElementVNode("select",e.mergeProps({"onUpdate:modelValue":n[0]||(n[0]=a=>l.value=a),class:["w-full block transition duration-300",e.unref(k)],disabled:e.unref(y)},t.$attrs),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.items,(a,x)=>(e.openBlock(),e.createElementBlock("option",e.mergeProps({key:x,value:B(a)},a),e.toDisplayString(b(a)),17,w))),128))],16,M),[[e.vModelSelect,l.value]]),e.unref(f).length?(e.openBlock(),e.createBlock(e.unref(h.ErrorMessage),{key:0,class:"text-error text-sm",name:e.unref(g)},null,8,["name"])):e.createCommentVNode("",!0)],64))}});exports.VFormSelect=i;exports.default=i;