import{p as F,aD as A,i as W,aN as G,ai as L,aP as E,g as J,t as K,B as Q,s as h,r as X,b as R,z as T,D as Y,q as Z,G as p,w as N,j as ee,c as i,F as te,O as re,N as ne}from"../../assets/main-CbsX0Voe.js";import{m as ae,V as U}from"./BjChlKGFVZn29vAvPKVp.js";import{d as ie,b as se,f as oe}from"./ByfZnMKtn1DL36CPUZJN.js";import{m as le,u as ue}from"./B4raF4nqxz_3h9gAYxiJ.js";const ce=F({transition:{type:[Boolean,String,Object],default:"fade-transition",validator:e=>e!==!0}},"transition"),z=(e,o)=>{let{slots:l}=o;const{transition:r,disabled:g,group:m,...f}=e,{component:d=m?G:L,...S}=typeof r=="object"?r:{};return A(d,W(typeof r=="string"?{name:g?"":r}:S,typeof r=="string"?{}:Object.fromEntries(Object.entries({disabled:g,group:m}).filter(n=>{let[a,c]=n;return c!==void 0})),f),l)};function de(e,o){if(!E)return;const l=o.modifiers||{},r=o.value,{handler:g,options:m}=typeof r=="object"?r:{handler:r,options:{}},f=new IntersectionObserver(function(){var c;let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],S=arguments.length>1?arguments[1]:void 0;const n=(c=e._observe)==null?void 0:c[o.instance.$.uid];if(!n)return;const a=d.some(_=>_.isIntersecting);g&&(!l.quiet||n.init)&&(!l.once||a||n.init)&&g(a,d,S),a&&l.once?$(e,o):n.init=!0},m);e._observe=Object(e._observe),e._observe[o.instance.$.uid]={init:!1,observer:f},f.observe(e)}function $(e,o){var r;const l=(r=e._observe)==null?void 0:r[o.instance.$.uid];l&&(l.observer.unobserve(e),delete e._observe[o.instance.$.uid])}const ve={mounted:de,unmounted:$},ge=F({alt:String,cover:Boolean,color:String,draggable:{type:[Boolean,String],default:void 0},eager:Boolean,gradient:String,lazySrc:String,options:{type:Object,default:()=>({root:void 0,rootMargin:void 0,threshold:void 0})},sizes:String,src:{type:[String,Object],default:""},crossorigin:String,referrerpolicy:String,srcset:String,position:String,...ae(),...le(),...ie(),...ce()},"VImg"),be=J()({name:"VImg",directives:{intersect:ve},props:ge(),emits:{loadstart:e=>!0,load:e=>!0,error:e=>!0},setup(e,o){let{emit:l,slots:r}=o;const{backgroundColorClasses:g,backgroundColorStyles:m}=se(K(e,"color")),{roundedClasses:f}=oe(e),d=Q("VImg"),S=h(""),n=X(),a=h(e.eager?"loading":"idle"),c=h(),_=h(),u=R(()=>e.src&&typeof e.src=="object"?{src:e.src.src,srcset:e.srcset||e.src.srcset,lazySrc:e.lazySrc||e.src.lazySrc,aspect:Number(e.aspectRatio||e.src.aspect||0)}:{src:e.src,srcset:e.srcset,lazySrc:e.lazySrc,aspect:Number(e.aspectRatio||0)}),b=R(()=>u.value.aspect||c.value/_.value||0);T(()=>e.src,()=>{I(a.value!=="idle")}),T(b,(t,s)=>{!t&&s&&n.value&&y(n.value)}),Y(()=>I());function I(t){if(!(e.eager&&t)&&!(E&&!t&&!e.eager)){if(a.value="loading",u.value.lazySrc){const s=new Image;s.src=u.value.lazySrc,y(s,null)}u.value.src&&Z(()=>{var s;l("loadstart",((s=n.value)==null?void 0:s.currentSrc)||u.value.src),setTimeout(()=>{var v;if(!d.isUnmounted)if((v=n.value)!=null&&v.complete){if(n.value.naturalWidth||w(),a.value==="error")return;b.value||y(n.value,null),a.value==="loading"&&j()}else b.value||y(n.value),k()})})}}function j(){var t;d.isUnmounted||(k(),y(n.value),a.value="loaded",l("load",((t=n.value)==null?void 0:t.currentSrc)||u.value.src))}function w(){var t;d.isUnmounted||(a.value="error",l("error",((t=n.value)==null?void 0:t.currentSrc)||u.value.src))}function k(){const t=n.value;t&&(S.value=t.currentSrc||t.src)}let P=-1;p(()=>{clearTimeout(P)});function y(t){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:100;const v=()=>{if(clearTimeout(P),d.isUnmounted)return;const{naturalHeight:V,naturalWidth:B}=t;V||B?(c.value=B,_.value=V):!t.complete&&a.value==="loading"&&s!=null?P=window.setTimeout(v,s):(t.currentSrc.endsWith(".svg")||t.currentSrc.startsWith("data:image/svg+xml"))&&(c.value=1,_.value=1)};v()}const C=R(()=>({"v-img__img--cover":e.cover,"v-img__img--contain":!e.cover})),q=()=>{var v;if(!u.value.src||a.value==="idle")return null;const t=i("img",{class:["v-img__img",C.value],style:{objectPosition:e.position},src:u.value.src,srcset:u.value.srcset,alt:e.alt,crossorigin:e.crossorigin,referrerpolicy:e.referrerpolicy,draggable:e.draggable,sizes:e.sizes,ref:n,onLoad:j,onError:w},null),s=(v=r.sources)==null?void 0:v.call(r);return i(z,{transition:e.transition,appear:!0},{default:()=>[N(s?i("picture",{class:"v-img__picture"},[s,t]):t,[[ne,a.value==="loaded"]])]})},D=()=>i(z,{transition:e.transition},{default:()=>[u.value.lazySrc&&a.value!=="loaded"&&i("img",{class:["v-img__img","v-img__img--preload",C.value],style:{objectPosition:e.position},src:u.value.lazySrc,alt:e.alt,crossorigin:e.crossorigin,referrerpolicy:e.referrerpolicy,draggable:e.draggable},null)]}),M=()=>r.placeholder?i(z,{transition:e.transition,appear:!0},{default:()=>[(a.value==="loading"||a.value==="error"&&!r.error)&&i("div",{class:"v-img__placeholder"},[r.placeholder()])]}):null,x=()=>r.error?i(z,{transition:e.transition,appear:!0},{default:()=>[a.value==="error"&&i("div",{class:"v-img__error"},[r.error()])]}):null,H=()=>e.gradient?i("div",{class:"v-img__gradient",style:{backgroundImage:`linear-gradient(${e.gradient})`}},null):null,O=h(!1);{const t=T(b,s=>{s&&(requestAnimationFrame(()=>{requestAnimationFrame(()=>{O.value=!0})}),t())})}return ue(()=>{const t=U.filterProps(e);return N(i(U,W({class:["v-img",{"v-img--booting":!O.value},g.value,f.value,e.class],style:[{width:re(e.width==="auto"?c.value:e.width)},m.value,e.style]},t,{aspectRatio:b.value,"aria-label":e.alt,role:e.alt?"img":void 0}),{additional:()=>i(te,null,[i(q,null,null),i(D,null,null),i(H,null,null),i(M,null,null),i(x,null,null)]),default:r.default}),[[ee("intersect"),{handler:I,options:e.options},null,{once:!0}]])}),{currentSrc:S,image:n,state:a,naturalWidth:c,naturalHeight:_}}});export{ve as I,z as M,be as V,ce as m};