|
|
-import{t as w,a as x,c as E,i as u,f as c,I,w as N}from"./index-ea32d722.js";import{d as $,K as f,m as B,G as C,C as D,T as U,c as a,U as R,Y as j,W as y}from"./runtime-core.esm-bundler-8a997806.js";var[F,n]=E("image");const G=$({name:F,props:{src:String,alt:String,fit:String,round:Boolean,width:[Number,String],height:[Number,String],radius:[Number,String],lazyLoad:Boolean,iconSize:[Number,String],showError:w,iconPrefix:String,showLoading:w,errorIcon:{type:String,default:"photo-fail"},loadingIcon:{type:String,default:"photo"}},emits:["load","error"],setup(r,{emit:s,slots:i}){var o=f(!1),t=f(!0),d=f(),{$Lazyload:l}=B().proxy,S=C(()=>{var e={};return u(r.width)&&(e.width=c(r.width)),u(r.height)&&(e.height=c(r.height)),u(r.radius)&&(e.overflow="hidden",e.borderRadius=c(r.radius)),e});D(()=>r.src,()=>{o.value=!1,t.value=!0});var v=e=>{t.value=!1,s("load",e)},g=e=>{o.value=!0,t.value=!1,s("error",e)},L=()=>i.loading?i.loading():a(I,{size:r.iconSize,name:r.loadingIcon,class:n("loading-icon"),classPrefix:r.iconPrefix},null),z=()=>i.error?i.error():a(I,{size:r.iconSize,name:r.errorIcon,class:n("error-icon"),classPrefix:r.iconPrefix},null),P=()=>{if(t.value&&r.showLoading)return a("div",{class:n("loading")},[L()]);if(o.value&&r.showError)return a("div",{class:n("error")},[z()])},b=()=>{if(!(o.value||!r.src)){var e={alt:r.alt,class:n("img"),style:{objectFit:r.fit}};return r.lazyLoad?R(a("img",y({ref:d},e),null),[[j("lazy"),r.src]]):a("img",y({src:r.src,onLoad:v,onError:g},e),null)}},m=({el:e})=>{e===d.value&&t.value&&v()},h=({el:e})=>{e===d.value&&!o.value&&g()};return l&&x&&(l.$on("loaded",m),l.$on("error",h),U(()=>{l.$off("loaded",m),l.$off("error",h)})),()=>a("div",{class:n({round:r.round}),style:S.value},[b(),P(),i.default==null?void 0:i.default()])}});var V=N(G);export{V as I};
|
|
|
+import{t as w,a as x,c as E,i as u,f as c,I,w as N}from"./index-06d5b05c.js";import{d as $,L as f,n as B,H as D,D as U,T as C,c as a,U as R,Y as j,W as y}from"./runtime-core.esm-bundler-a5367c22.js";var[F,n]=E("image");const H=$({name:F,props:{src:String,alt:String,fit:String,round:Boolean,width:[Number,String],height:[Number,String],radius:[Number,String],lazyLoad:Boolean,iconSize:[Number,String],showError:w,iconPrefix:String,showLoading:w,errorIcon:{type:String,default:"photo-fail"},loadingIcon:{type:String,default:"photo"}},emits:["load","error"],setup(r,{emit:s,slots:i}){var o=f(!1),t=f(!0),d=f(),{$Lazyload:l}=B().proxy,L=D(()=>{var e={};return u(r.width)&&(e.width=c(r.width)),u(r.height)&&(e.height=c(r.height)),u(r.radius)&&(e.overflow="hidden",e.borderRadius=c(r.radius)),e});U(()=>r.src,()=>{o.value=!1,t.value=!0});var v=e=>{t.value=!1,s("load",e)},g=e=>{o.value=!0,t.value=!1,s("error",e)},S=()=>i.loading?i.loading():a(I,{size:r.iconSize,name:r.loadingIcon,class:n("loading-icon"),classPrefix:r.iconPrefix},null),z=()=>i.error?i.error():a(I,{size:r.iconSize,name:r.errorIcon,class:n("error-icon"),classPrefix:r.iconPrefix},null),P=()=>{if(t.value&&r.showLoading)return a("div",{class:n("loading")},[S()]);if(o.value&&r.showError)return a("div",{class:n("error")},[z()])},b=()=>{if(!(o.value||!r.src)){var e={alt:r.alt,class:n("img"),style:{objectFit:r.fit}};return r.lazyLoad?R(a("img",y({ref:d},e),null),[[j("lazy"),r.src]]):a("img",y({src:r.src,onLoad:v,onError:g},e),null)}},m=({el:e})=>{e===d.value&&t.value&&v()},h=({el:e})=>{e===d.value&&!o.value&&g()};return l&&x&&(l.$on("loaded",m),l.$on("error",h),C(()=>{l.$off("loaded",m),l.$off("error",h)})),()=>a("div",{class:n({round:r.round}),style:L.value},[b(),P(),i.default==null?void 0:i.default()])}});var W=N(H);export{W as I};
|