全栈小学生 d680214fd1 up
2025-06-11 09:21:43 +08:00

2 lines
5.3 KiB
JavaScript

import{d as P,W as $,l as h,aj as Z,r as B,ap as W,aI as _,h as o,c as s,a as i,n as q,aE as v,u as r,e as a,z as w,aM as A,m as N,w as T,t as D,k as F,F as y,T as G,B as L,C as H,aN as J,ak as M}from"./index-e05985b6.js";/* empty css */import{_ as K}from"./index.vue_vue_type_style_index_0_lang-0aa9ed6b.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-de519c71.js";/* empty css */import{S as U}from"./sortable.esm-be94e56d.js";import{_ as X}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css *//* empty css */import"./attachment-07742802.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-7d319548.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-41313d1e.js";/* empty css */import"./sys-5553c504.js";const Y={class:"flex flex-wrap"},ee={key:0,class:"w-full h-full relative"},te={class:"w-full h-full flex items-center justify-center"},ie={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},le={class:"w-full h-full flex items-center justify-center flex-col content-wrap"},oe={class:"leading-none text-xs mt-[10px] text-secondary"},ae={class:"w-full h-full relative"},ne={class:"w-full h-full flex items-center justify-center"},re={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},se={class:"w-full h-full flex items-center justify-center flex-col content-wrap"},me={class:"leading-none text-xs mt-[10px] text-secondary"},ce=P({__name:"index",props:{type:{type:String,default:"image"},imageFit:{type:String,default:"contain"},modelValue:{type:String,default:""},width:{type:String,default:"100px"},height:{type:String,default:"100px"},imageText:{type:String},limit:{type:Number,default:1}},emits:["update:modelValue","change"],setup(l,{emit:k}){const m=l,c=$({get(){return m.modelValue},set(e){k("update:modelValue",e)}}),t=h({data:[]});let b=h([]);const f=()=>{c.value=M(t.data).toString(),b=M(t.data).map(e=>e.indexOf("data:image")!=-1?e:w(e))};Z(()=>c.value,()=>{c.value.indexOf("data:image")!=-1?t.data=[c.value]:t.data=[...c.value.split(",").filter(e=>e)],f()},{immediate:!0});const x=$(()=>({width:m.width,height:m.height})),C=e=>{m.limit==1?(t.data.splice(0,1),e&&t.data.push(e.url)):(e.forEach(n=>{t.data.length<m.limit&&t.data.push(n.url)}),_(()=>{V()})),f(),_(()=>{k("change",c.value)})},z=(e=0)=>{t.data.splice(e,1),f()},u=h({show:!1,index:0}),I=(e=0)=>{u.show=!0,u.index=e},S=B(null);W(()=>{_(()=>{V()})}),B([]);const V=()=>{m.limit!=1&&U.create(S.value,{group:"image-wrap",animation:300,onEnd:e=>{const n=t.data[e.oldIndex];t.data.splice(e.oldIndex,1),t.data.splice(e.newIndex,0,n),f()}})};return(e,n)=>{const j=H,d=Q,E=K,O=J;return o(),s(y,null,[i("div",Y,[l.limit==1?(o(),s("div",{key:0,class:q(["rounded cursor-pointer overflow-hidden relative border border-solid border-color image-wrap mr-[10px]",{"rounded-full":l.type=="avatar"}]),style:v(r(x))},[t.data.length?(o(),s("div",ee,[i("div",te,[a(j,{class:"w-full h-full",src:t.data[0].indexOf("data:image")!=-1?t.data[0]:r(w)(t.data[0]),fit:l.imageFit},null,8,["src","fit"])]),i("div",ie,[a(d,{name:"element ZoomIn",color:"#fff",size:"18px",class:"mr-[10px]",onClick:n[0]||(n[0]=p=>I())}),a(d,{name:"element Delete",color:"#fff",size:"18px",onClick:A(z,["stop"])},null,8,["onClick"])])])):(o(),N(E,{key:1,limit:l.limit,onConfirm:C},{default:T(()=>[i("div",le,[a(d,{name:"element Plus",size:"20px",color:"var(--el-text-color-secondary)"}),i("div",oe,D(l.imageText||r(F)("upload.root")),1)])]),_:1},8,["limit"]))],6)):(o(),s(y,{key:1},[i("div",{class:"flex flex-wrap",ref_key:"imgListRef",ref:S},[(o(!0),s(y,null,G(t.data,(p,g)=>(o(),s("div",{class:"rounded cursor-pointer overflow-hidden relative border border-solid border-color image-wrap mr-[10px] mb-[10px]",style:v(r(x)),key:p+g},[i("div",ae,[i("div",ne,[a(j,{src:r(w)(p),fit:"contain"},null,8,["src"])]),i("div",re,[a(d,{name:"element ZoomIn",color:"#fff",size:"18px",class:"mr-[10px]",onClick:R=>I(g)},null,8,["onClick"]),a(d,{name:"element Delete",color:"#fff",size:"18px",onClick:R=>z(g)},null,8,["onClick"])])])],4))),128))],512),t.data.length<l.limit?(o(),s("div",{key:0,class:"rounded cursor-pointer overflow-hidden relative border border-dashed border-color",style:v(r(x))},[a(E,{limit:l.limit,onConfirm:C},{default:T(()=>[i("div",se,[a(d,{name:"element Plus",size:"20px",color:"var(--el-text-color-secondary)"}),i("div",me,D(l.imageText||r(F)("upload.root")),1)])]),_:1},8,["limit"])],4)):L("",!0)],64))]),u.show?(o(),N(O,{key:0,"url-list":r(b),onClose:n[1]||(n[1]=p=>u.show=!1),"initial-index":u.index,"zoom-rate":1},null,8,["url-list","initial-index"])):L("",!0)],64)}}});const Ze=X(ce,[["__scopeId","data-v-672bf006"]]);export{Ze as default};