@gits-id/form-select
Version:
GITS Form Select Component
2 lines (1 loc) • 2.04 kB
JavaScript
(function(l,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vee-validate"),require("@gits-id/utils")):typeof define=="function"&&define.amd?define(["exports","vue","vee-validate","@gits-id/utils"],e):(l=typeof globalThis<"u"?globalThis:l||self,e(l.VFormSelect={},l.Vue,l.veeValidate,l.utils))})(this,function(l,e,c,s){"use strict";const m=["disabled"],f=["value"],n=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(i,{emit:p}){const o=i,{modelValue:d,value:g,itemText:y,itemValue:V,error:S,errorMessages:k,name:B,disabled:h}=e.toRefs(o),a=e.ref(d.value),{class:x}=s.useTextSize(o.size),T=e.computed(()=>s.useInputClasses(S.value)),M=e.computed(()=>[T.value,x.value]);e.watch(a,t=>{p("update:modelValue",t)}),e.watch(d,t=>{a.value=t},{immediate:!0}),e.watch(g,t=>{a.value=t});const b=t=>typeof t=="string"?t:t[V.value],w=t=>typeof t=="string"?t:t[y.value];return(t,u)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createElementVNode("select",e.mergeProps({"onUpdate:modelValue":u[0]||(u[0]=r=>a.value=r),class:["w-full block transition duration-300",e.unref(M)],disabled:e.unref(h)},t.$attrs),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,(r,C)=>(e.openBlock(),e.createElementBlock("option",e.mergeProps({key:C,value:b(r)},r),e.toDisplayString(w(r)),17,f))),128))],16,m),[[e.vModelSelect,a.value]]),e.unref(k).length?(e.openBlock(),e.createBlock(e.unref(c.ErrorMessage),{key:0,class:"text-error text-sm",name:e.unref(B)},null,8,["name"])):e.createCommentVNode("",!0)],64))}});l.VFormSelect=n,l.default=n,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});