1import F from"./osxQiXZR.js";import{k as m,c as C,B as A,I as a,J as l,N as d,u as b,R as q,O as p,F as f,W as I,L as N}from"./wbHSvHwd.js";import"./DiZhURkQ.js";const x={class:"input-upload"},E=["id","multiple","accept","disabled","aria-invalid","aria-describedby"],P=["for"],R={key:1,class:"input-upload__previews"},$=["src","alt"],O=["onClick"],S=d("span",{class:"visually-hidden"},"@TODO: add accessible string",-1),L={__name:"InputUpload",props:{id:{type:[String,Number],required:!0},label:{type:String,required:!0},files:{type:Array,required:!0},multipleFiles:{type:Boolean,required:!0},inputAttributes:{type:Array},error:{type:Boolean,default:!1},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},allowedKinds:{type:Array},labelIsHidden:{type:Boolean,default:!1}},emits:["emitChange","emitFocus","emitBlur","emitRemovePreview"],setup(t,{emit:y}){const o=y,i=t,v=m(()=>i.labelIsHidden&&i.required?`${i.label} *`:i.label),_=m(()=>{var e;return(e=i.allowedKinds)==null?void 0:e.map(n=>n)}),c=C(null),h=e=>{o("emitChange",e)},g=e=>{o("emitFocus",{event:e,id:i.id})},B=e=>{o("emitBlur",{event:e,id:i.id})},k=({previewName:e})=>{o("emitRemovePreview",e)};return A(()=>{var e,n;(e=i.inputAttributes)!=null&&e.length&&c.value&&((n=i.inputAttributes)==null||n.forEach(r=>{var s;return(s=c.value)==null?void 0:s.setAttribute(r.label,r.value)}))}),(e,n)=>{var s;const r=F;return a(),l("div",x,[d("input",{id:t.id,ref_key:"inputEl",ref:c,class:"input-upload__input",type:"file",multiple:t.multipleFiles,accept:b(_),disabled:t.disabled,"aria-invalid":t.error,"aria-describedby":t.error&&`input-errror-${t.id}`,onChange:h,onFocus:g,onBlur:B},null,40,E),t.label?(a(),l("label",{key:0,for:t.id,name:"test",class:"input-upload__label"},q(b(v)),9,P)):p("",!0),(s=t.files)!=null&&s.length?(a(),l("div",R,[(a(!0),l(f,null,I(t.files,(u,w)=>(a(),l("div",{class:"input-upload__preview",key:`InputUploadPreview-${w}`},[u.isImage?(a(),l(f,{key:0},[d("img",{class:"input-upload__preview-image",src:u.preview,alt:u.name},null,8,$),d("button",{class:"input-upload__preview-button",onClick:V=>k({previewName:u.name})},[N(r,{"aria-hidden":!0}),S],8,O)],64)):p("",!0)]))),128))])):p("",!0)])}}};export{L 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.