Files
CoreInject/frontend/dist/assets/CNsXoenb.js
2025-11-16 05:39:11 +08:00

10 lines
1.6 KiB
JavaScript

import{d as a,r as t,w as e,o as s,a as i,F as c,B as n,n as m,e as l,t as o,m as r,z as d,h as v}from"./CdD4XvnD.js"
import{_ as p,A as h,a as k}from"./BaSQ3xJt.js"
const g={class:"edit-attachments-list"},y=["onClick"],u=["src","alt"],C={key:1,class:"image-loading"},f=["onClick"],b={class:"attachment-name"},w=["onClick"],_=k(a({__name:"EditAttachmentPreview",props:{attachments:{}},emits:["remove","imageClick"],setup(a,{emit:k}){const _=a,A=k,E=t({}),j=async()=>{const a=_.attachments.filter(a=>"image"===a.type)
await Promise.all(a.map(a=>(async a=>{if(!E.value[a])try{const t=await h.getAttachmentImage(a)
t&&(E.value[a]=t)}catch(t){}})(a.id)))}
e(()=>_.attachments,()=>{E.value={},j()},{immediate:!0}),s(()=>{j()})
const I=a=>{a.target.style.display="none"}
return(t,e)=>(v(),i("div",g,[(v(!0),i(c,null,n(a.attachments,a=>(v(),i("div",{key:a.id,class:m(["edit-attachment-item",{"image-preview":"image"===a.type}])},["image"===a.type?(v(),i("div",{key:0,class:"edit-attachment-preview",onClick:()=>A("imageClick",a.id)},[E.value[a.id]?(v(),i("img",{key:0,src:E.value[a.id]||"",alt:a.name,onError:I,class:"clickable-image"},null,40,u)):(v(),i("div",C,[...e[0]||(e[0]=[l("div",{class:"spinner"},null,-1)])])),l("button",{class:"remove-attachment-btn",onClick:o(t=>A("remove",a.id),["stop"])},[r(p,{icon:"mdi:close"})],8,f)],8,y)):(v(),i(c,{key:1},[r(p,{icon:"mdi:file",class:"attachment-icon"}),l("span",b,d(a.name),1),l("button",{class:"remove-attachment-btn",onClick:e=>t.$emit("remove",a.id)},[r(p,{icon:"mdi:close"})],8,w)],64))],2))),128))]))}}),[["__scopeId","data-v-b3def6f7"]])
export{_ as E}