import{z as g,t as j,r as o,T as $,b as I,O as M,s as a,Z as O,A as D,aD as E}from"./entry.5131710f.js";const F={ratio:[String,Number]};function H(e,r){return g(()=>{const u=Number(e.ratio||(r!==void 0?r.value:void 0));return isNaN(u)!==!0&&u>0?{paddingBottom:`${100/u}%`}:null})}const L=16/9,Q=j({name:"QImg",props:{...F,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:L},placeholderSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:r,emit:u}){const h=o(e.initialRatio),S=H(e,h);let t=null,d=!1;const n=[o(null),o(v())],l=o(0),s=o(!1),c=o(!1),C=g(()=>`q-img q-img--${e.noNativeMenu===!0?"no-":""}menu`),T=g(()=>({width:e.width,height:e.height})),w=g(()=>`q-img__image ${e.imgClass!==void 0?e.imgClass+" ":""}q-img__image--with${e.noTransition===!0?"out":""}-transition`),z=g(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));$(()=>y(),_);function y(){return e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null}function v(){return e.placeholderSrc!==void 0?{src:e.placeholderSrc}:null}function _(i){t!==null&&(clearTimeout(t),t=null),c.value=!1,i===null?(s.value=!1,n[l.value^1].value=v()):s.value=!0,n[l.value].value=i}function N({target:i}){d!==!0&&(t!==null&&(clearTimeout(t),t=null),h.value=i.naturalHeight===0?.5:i.naturalWidth/i.naturalHeight,b(i,1))}function b(i,f){d===!0||f===1e3||(i.complete===!0?k(i):t=setTimeout(()=>{t=null,b(i,f+1)},50))}function k(i){d!==!0&&(l.value=l.value^1,n[l.value].value=null,s.value=!1,c.value=!1,u("load",i.currentSrc||i.src))}function B(i){t!==null&&(clearTimeout(t),t=null),s.value=!1,c.value=!0,n[l.value].value=null,n[l.value^1].value=v(),u("error",i)}function q(i){const f=n[i].value,m={key:"img_"+i,class:w.value,style:z.value,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...f};return l.value===i?(m.class+=" q-img__image--waiting",Object.assign(m,{onLoad:N,onError:B})):m.class+=" q-img__image--loaded",a("div",{class:"q-img__container absolute-full",key:"img"+i},a("img",m))}function R(){return s.value!==!0?a("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},D(r[c.value===!0?"error":"default"])):a("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},r.loading!==void 0?r.loading():e.noSpinner===!0?void 0:[a(E,{color:e.spinnerColor,size:e.spinnerSize})])}return I(()=>{_(y())}),M(()=>{d=!0,t!==null&&(clearTimeout(t),t=null)}),()=>{const i=[];return S.value!==null&&i.push(a("div",{key:"filler",style:S.value})),c.value!==!0&&(n[0].value!==null&&i.push(q(0)),n[1].value!==null&&i.push(q(1))),i.push(a(O,{name:"q-transition--fade"},R)),a("div",{class:C.value,style:T.value,role:"img","aria-label":e.alt},i)}}});export{Q as _,H as a,F as u};
