1import{_ as X,aB as Y,bQ as Z,aC as f,d as _,Q as G,i as x,j as O,aM as ee,c as i,am as ae,a7 as v,o,z as d,A as le,J as S,K as j,B as W,p as te,L as b,P as w,n as q,N as F,bN as A}from"./B71O33wO.js";import{u as ne}from"./DFK7ZURi.js";const u=Y(f.ui.strategy,f.ui.select,Z),ie=_({components:{UIcon:G},inheritAttrs:!1,props:{modelValue:{type:[String,Number,Object],default:""},id:{type:String,default:null},name:{type:String,default:null},placeholder:{type:String,default:null},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},icon:{type:String,default:null},loadingIcon:{type:String,default:()=>u.default.loadingIcon},leadingIcon:{type:String,default:null},trailingIcon:{type:String,default:()=>u.default.trailingIcon},trailing:{type:Boolean,default:!1},leading:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},padded:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},size:{type:String,default:null,validator(e){return Object.keys(u.size).includes(e)}},color:{type:String,default:()=>u.default.color,validator(e){return[...f.ui.colors,...Object.keys(u.color)].includes(e)}},variant:{type:String,default:()=>u.default.variant,validator(e){return[...Object.keys(u.variant),...Object.values(u.color).flatMap(r=>Object.keys(r))].includes(e)}},optionAttribute:{type:String,default:"label"},valueAttribute:{type:String,default:"value"},selectClass:{type:String,default:null},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["update:modelValue","change"],setup(e,{emit:r,slots:C}){const{ui:a,attrs:h}=x("select",O(e,"ui"),u,O(e,"class")),{size:$,rounded:m}=ee({ui:a,props:e}),{emitFormChange:t,inputId:c,color:n,size:z,name:L}=ne(e,u),s=i(()=>$.value||z.value),M=l=>{r("update:modelValue",l.target.value)},P=l=>{r("change",l.target.value),t()},p=l=>A(l,e.valueAttribute,A(l,e.optionAttribute)),T=l=>A(l,e.optionAttribute,A(l,e.valueAttribute)),V=l=>["string","number","boolean"].includes(typeof l)?{[e.valueAttribute]:l,[e.optionAttribute]:l}:{...l,[e.valueAttribute]:p(l),[e.optionAttribute]:T(l)},B=i(()=>e.options.map(l=>V(l))),N=i(()=>e.placeholder?[{[e.valueAttribute]:"",[e.optionAttribute]:e.placeholder,disabled:!0},...B.value]:B.value),U=i(()=>{const l=V(e.modelValue),g=N.value.find(I=>I[e.valueAttribute]===l[e.valueAttribute]);return g?g[e.valueAttribute]:""}),J=i(()=>{var g,I;const l=((I=(g=a.value.color)==null?void 0:g[n.value])==null?void 0:I[e.variant])||a.value.variant[e.variant];return ae(v(a.value.base,a.value.form,m.value,a.value.size[s.value],e.padded?a.value.padding[s.value]:"p-0",l==null?void 0:l.replaceAll("{color}",n.value),(y.value||C.leading)&&a.value.leading.padding[s.value],(k.value||C.trailing)&&a.value.trailing.padding[s.value]),e.placeholder&&!e.modelValue&&a.value.placeholder,e.selectClass)}),y=i(()=>e.icon&&e.leading||e.icon&&!e.trailing||e.loading&&!e.trailing||e.leadingIcon),k=i(()=>e.icon&&e.trailing||e.loading&&e.trailing||e.trailingIcon),Q=i(()=>e.loading?e.loadingIcon:e.leadingIcon||e.icon),D=i(()=>e.loading&&!y.value?e.loadingIcon:e.trailingIcon||e.icon),E=i(()=>v(a.value.icon.leading.wrapper,a.value.icon.leading.pointer,a.value.icon.leading.padding[s.value])),K=i(()=>v(a.value.icon.base,n.value&&f.ui.colors.includes(n.value)&&a.value.icon.color.replaceAll("{color}",n.value),a.value.icon.size[s.value],e.loading&&a.value.icon.loading)),R=i(()=>v(a.value.icon.trailing.wrapper,a.value.icon.trailing.pointer,a.value.icon.trailing.padding[s.value])),H=i(()=>v(a.value.icon.base,n.value&&f.ui.colors.includes(n.value)&&a.value.icon.color.replaceAll("{color}",n.value),a.value.icon.size[s.value],e.loading&&!y.value&&a.value.icon.loading));return{ui:a,attrs:h,name:L,inputId:c,normalizedOptionsWithPlaceholder:N,normalizedValue:U,isLeading:y,isTrailing:k,selectClass:J,leadingIconName:Q,leadingIconClass:K,leadingWrapperIconClass:E,trailingIconName:D,trailingIconClass:H,trailingWrapperIconClass:R,onInput:M,onChange:P}}}),ue=["id","name","value","required","disabled"],re=["value","label"],oe=["value","selected","disabled","textContent"],de=["value","selected","disabled","textContent"];function se(e,r,C,a,h,$){const m=G;return o(),d("div",{class:b(e.ui.wrapper)},[le("select",te({id:e.inputId,name:e.name,value:e.modelValue,required:e.required,disabled:e.disabled,class:e.selectClass},e.attrs,{onInput:r[0]||(r[0]=(...t)=>e.onInput&&e.onInput(...t)),onChange:r[1]||(r[1]=(...t)=>e.onChange&&e.onChange(...t))}),[(o(!0),d(S,null,j(e.normalizedOptionsWithPlaceholder,(t,c)=>(o(),d(S,null,[t.children?(o(),d("optgroup",{key:`${t[e.valueAttribute]}-optgroup-${c}`,value:t[e.valueAttribute],label:t[e.optionAttribute]},[(o(!0),d(S,null,j(t.children,(n,z)=>(o(),d("option",{key:`${n[e.valueAttribute]}-${c}-${z}`,value:n[e.valueAttribute],selected:n[e.valueAttribute]===e.normalizedValue,disabled:n.disabled,textContent:W(n[e.o
1ptionAttribute])},null,8,oe))),128))],8,re)):(o(),d("option",{key:`${t[e.valueAttribute]}-${c}`,value:t[e.valueAttribute],selected:t[e.valueAttribute]===e.normalizedValue,disabled:t.disabled,textContent:W(t[e.optionAttribute])},null,8,de))],64))),256))],16,ue),e.isLeading&&e.leadingIconName||e.$slots.leading?(o(),d("span",{key:0,class:b(e.leadingWrapperIconClass)},[w(e.$slots,"leading",{disabled:e.disabled,loading:e.loading},()=>[q(m,{name:e.leadingIconName,class:b(e.leadingIconClass)},null,8,["name","class"])],!0)],2)):F("",!0),e.isTrailing&&e.trailingIconName||e.$slots.trailing?(o(),d("span",{key:1,class:b(e.trailingWrapperIconClass)},[w(e.$slots,"trailing",{disabled:e.disabled,loading:e.loading},()=>[q(m,{name:e.trailingIconName,class:b(e.trailingIconClass),"aria-hidden":"true"},null,8,["name","class"])],!0)],2)):F("",!0)],2)}const ve=X(ie,[["render",se],["__scopeId","data-v-024afd56"]]);export{ve as default};
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.