mirror of
https://git-qiuchenly.yltfspace.com/QiuChenly/corepatch
synced 2025-11-25 05:40:27 +08:00
12 lines
2.3 KiB
JavaScript
12 lines
2.3 KiB
JavaScript
import{d as a,r as e,o as i,a as l,e as s,b as t,m,p as d,q as n,z as u,h as o,c as g,F as c,B as r,l as v,W as p}from"./CdD4XvnD.js"
|
|
import{_ as I,A as f,a as x}from"./BaSQ3xJt.js"
|
|
const h={class:"image-wrapper"},k={key:0,class:"image-loading"},_=["src"],y={key:0,class:"image-error"},w={key:0,class:"image-index"},C=x(a({__name:"ImageListItem",props:{imageId:{},imageSource:{default:"attachment"},showIndex:{type:Boolean,default:!1},index:{default:0},total:{default:0}},emits:["imageClick"],setup(a,{emit:g}){const c=a,r=g,v=e(!0),p=e(!1),x=e(null),C=()=>{v.value=!1},b=()=>{p.value=!0,v.value=!1},S=()=>{x.value&&r("imageClick",c.imageId,x.value)}
|
|
return i(()=>{(async()=>{if(!c.imageId)return p.value=!0,void(v.value=!1)
|
|
v.value=!0,p.value=!1,x.value=null
|
|
try{const a="app"===c.imageSource?await f.getImage(c.imageId):await f.getAttachmentImage(c.imageId)
|
|
a?x.value=a:(p.value=!0,v.value=!1)}catch(a){p.value=!0,v.value=!1}})()}),(e,i)=>(o(),l("div",{class:"image-item",onClick:S},[s("div",h,[m(d,{name:"fade"},{default:n(()=>[v.value?(o(),l("div",k,[...i[0]||(i[0]=[s("div",{class:"spinner"},null,-1)])])):t("",!0)]),_:1}),m(d,{name:"fade"},{default:n(()=>[x.value&&!p.value?(o(),l("img",{key:0,src:x.value,alt:"图片",onLoad:C,onError:b,class:"image-content"},null,40,_)):t("",!0)]),_:1}),m(d,{name:"fade"},{default:n(()=>[p.value?(o(),l("div",y,[m(I,{icon:"mdi:image-broken"}),i[1]||(i[1]=s("span",null,"加载失败",-1))])):t("",!0)]),_:1})]),a.showIndex?(o(),l("div",w,u(a.index)+"/"+u(a.total),1)):t("",!0)]))}}),[["__scopeId","data-v-3d7a38bc"]]),b={key:0,class:"image-list"},S=x(a({__name:"ImageList",props:{imageIds:{default:()=>[]},imageSource:{default:"attachment"},showIndex:{type:Boolean,default:!1},columns:{default:3},maxWidth:{default:void 0}},emits:["imageClick"],setup(a,{emit:e}){p(a=>({dd592ab8:m.value}))
|
|
const i=a,s=e,m=g(()=>i.maxWidth?`repeat(auto-fill, minmax(0, min(100%, ${i.maxWidth}px)))`:`repeat(${i.columns}, minmax(0, 1fr))`),d=(a,e)=>{const l=i.imageIds.indexOf(a)
|
|
s("imageClick",l,e)}
|
|
return(e,i)=>a.imageIds.length>0?(o(),l("div",b,[(o(!0),l(c,null,r(a.imageIds,(e,i)=>(o(),v(C,{key:`image-${e}-${i}`,"image-id":e,"image-source":a.imageSource,"show-index":a.showIndex,index:i+1,total:a.imageIds.length,onImageClick:d},null,8,["image-id","image-source","show-index","index","total"]))),128))])):t("",!0)}}),[["__scopeId","data-v-1bd3035f"]])
|
|
export{S as I}
|