import{u as E}from"./du-OHyYL.js";import{u as w,m as x}from"./hZbx9JaR.js";import{a as B}from"./DlDklb_P.js";import"./B-XSawTn.js";import{az as N,aA as I,G as O,o as _,e as j,ar as v,g as L,ap as P,i as o,r as C}from"./CGuWR5z3.js";import"./COjhYyr1.js";import"./B6orRp05.js";const M=["src"],D={__name:"NuxtImg",props:{custom:{type:Boolean,required:!1},placeholder:{type:[Boolean,String,Number,Array],required:!1},placeholderClass:{type:String,required:!1},src:{type:String,required:!1},format:{type:String,required:!1},quality:{type:[String,Number],required:!1},background:{type:String,required:!1},fit:{type:String,required:!1},modifiers:{type:Object,required:!1},preset:{type:String,required:!1},provider:{type:null,required:!1},sizes:{type:[String,Object],required:!1},densities:{type:String,required:!1},preload:{type:[Boolean,Object],required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1},crossorigin:{type:[String,Boolean],required:!1},nonce:{type:String,required:!1}},emits:["load","error"],setup(u,{expose:y,emit:q}){const r=u,t=q,n=E(),{providerOptions:d,normalizedAttrs:h,imageModifiers:c}=w(r),i=o(()=>n.getSizes(r.src,{...d.value,sizes:r.sizes,densities:r.densities,modifiers:c.value})),l=C(!1),S=N(),f=o(()=>({...h.value,"data-nuxt-img":"",...!r.placeholder||l.value?{sizes:i.value.sizes,srcset:i.value.srcset}:{},...S})),p=o(()=>{if(l.value)return!1;const e=r.placeholder===""?[10,10]:r.placeholder;if(!e)return!1;if(typeof e=="string")return e;const[s=10,b=s,A=50,k=3]=Array.isArray(e)?e:typeof e=="number"?[e]:[];return n(r.src,{...c.value,width:s,height:b,quality:A,blur:k},d.value)}),m=o(()=>r.sizes?i.value.src:n(r.src,c.value,d.value)),g=o(()=>p.value||m.value),z=B().isHydrating,a=I("imgEl");return y({imgEl:a}),O(()=>{if(p.value||r.custom){const e=new Image;m.value&&(e.src=m.value),r.sizes&&(e.sizes=i.value.sizes||"",e.srcset=i.value.srcset),e.decode?e.decode().then(()=>{l.value=!0,t("load",new Event("load"))}).catch(s=>{t("error",s)}):(e.onload=s=>{l.value=!0,t("load",s)},e.onerror=s=>{t("error",s)}),x("nuxt-image");return}a.value&&(a.value.complete&&z&&(a.value.getAttribute("data-error")?t("error",new Event("error")):t("load",new Event("load"))),a.value.onload=e=>{t("load",e)},a.value.onerror=e=>{t("error",e)})}),(e,s)=>u.custom?L(e.$slots,"default",P(v({key:1},{imgAttrs:f.value,isLoaded:l.value,src:g.value}))):(_(),j("img",v({key:0,ref_key:"imgEl",ref:a,class:p.value?u.placeholderClass:void 0},f.value,{src:g.value}),null,16,M))}};export{D as default};