Files
douyin-card-message/admin/dist/assets/MaterialSelect-48edffdf.js
T
2025-01-08 17:05:44 +08:00

2 lines
4.3 KiB
JavaScript

import{u as R}from"./propData-9c18804a.js";import{u as T,_ as w,O as A}from"./index-9afa9bfa.js";import{u as H}from"./curd-08f35801.js";import{d as S,j as p,r as v,o as b,b as C,i,w as h,l as D,E as V,A as E,B as N,f,k as O,X as j,t as L,g as n,F as P,e as Q,M as X,Y,v as G,y as J,c as K}from"./.pnpm-0d809032.js";import W from"./cate-aca31f78.js";const Z=u=>(E("data-v-7a738714"),u=u(),N(),u),ee={class:"upload-box"},ae=Z(()=>f("div",{style:{display:"none"}},null,-1)),te=S({__name:"uploadImage",props:{modelValue:{},type:{},size:{},width:{},height:{},action:{default:"/api/materials"}},emits:["update:modelValue","query"],setup(u,{emit:_}){const t=u,o=p(),d=p(),s=p(!1),l={Authorization:"Bearer "+T.getToken()},m=e=>{if(t.type&&t.type.length>0||t.size){s.value=!0,console.log(e.size,"rawFile.size");const r=e.size<1024*1024*t.size,a=t.type.indexOf(e.type)>-1;if(!r)return V.warning(`图片大小不超过${t.size}M`),s.value=!1,!1;if(!a)return V.warning(`图片只能是${t.type.join(",")}格式!`),s.value=!1,!1}else return!0},y=e=>{s.value=!0,setTimeout(()=>{_("update:modelValue",e.path),V.success("上传成功"),_("query"),s.value=!1},1e3)};return(e,r)=>{const a=v("el-button"),z=v("el-upload");return b(),C("div",ee,[i(z,{ref_key:"uploadRef",ref:o,"file-list":d.value,"onUpdate:fileList":r[0]||(r[0]=k=>d.value=k),action:t.action,headers:l,name:"image","before-upload":m,"on-success":y},{file:h(()=>[ae]),default:h(()=>[i(a,{type:"primary"},{default:h(()=>[D("上传图片")]),_:1})]),_:1},8,["file-list","action"])])}}});const oe=w(te,[["__scopeId","data-v-7a738714"]]),le={class:"bottom_image"},se={class:"right_image"},ne={class:"right-top"},ie={class:"num_icon"},ue={class:"right_main"},de={class:"right_image_main"},re=["onClick"],ce=S({__name:"dialog",props:{max:{default:1},type:{default:"image"},kind:{default:"avatar"}},emits:["confirm"],setup(u,{expose:_,emit:t}){const o=u,d=p(!1),s=p(null),{state:l,query:m,sizeChangeHandle:y,currentChangeHandle:e}=H({url:"/materials",queryForm:{cate_id:s,page:1}}),r=R(()=>o.max,0),a=p([]),z=c=>{a.value.find(x=>x.id===c.id)?a.value=a.value.filter(x=>x.id!==c.id):a.value.length>=r.value?V.warning("最多只能选择"+r.value+"张图片"):a.value.push(c)},k=()=>{t("confirm",a.value.map(c=>c.path)),d.value=!1,X(()=>{a.value=[]})},$=()=>{a.value=[],d.value=!0},U=c=>{a.value=[],s.value=c,m()};return O("query",m),_({openDialog:$}),(c,M)=>{const x=v("el-button"),q=v("el-pagination"),B=v("el-dialog"),F=j("loading");return b(),C("div",null,[i(B,{modelValue:d.value,"onUpdate:modelValue":M[0]||(M[0]=g=>d.value=g),width:"900","append-to-body":!0,title:"素材库"},{default:h(()=>[f("div",le,[f("div",se,[f("div",ne,[i(x,{type:"primary",class:"margin-right-20",onClick:k,disabled:a.value.length===0},{default:h(()=>[D(" 使用选中图片 "),f("div",ie,"("+L(a.value.length)+" / "+L(n(r))+")",1)]),_:1},8,["disabled"]),i(oe,{onQuery:n(m)},null,8,["onQuery"])]),f("div",ue,[i(W,{onRsCate:U}),f("div",de,[(b(!0),C(P,null,Q(n(l).dataList,g=>Y((b(),C("div",{class:G(["image",{on:a.value.find(I=>I.id===g.id)}]),key:g.id,onClick:I=>z(g)},[i(A,{paths:[g.path],width:100,height:100,disabled:!1},null,8,["paths"])],10,re)),[[F,n(l).listLoading]])),128))]),i(q,{"current-page":n(l).page,total:n(l).total,"page-sizes":n(l).pageSizes,"page-size":n(l).limit,background:"",layout:"total, prev, pager, next",onSizeChange:n(y),onCurrentChange:n(e)},null,8,["current-page","total","page-sizes","page-size","onSizeChange","onCurrentChange"])])])])]),_:1},8,["modelValue"])])}}});const pe=w(ce,[["__scopeId","data-v-b4e62889"]]),_e=S({__name:"MaterialSelect",props:{modelValue:{default:""},type:{default:"avatar"},max:{default:1}},emits:["update:modelValue"],setup(u,{emit:_}){const t=u,o=p([]);J(()=>t.modelValue,e=>{Array.isArray(e)?o.value=e:o.value=e?[e]:[]},{immediate:!0,deep:!0});const d=K(()=>t.max-o.value.length),s=()=>{t.max===1?_("update:modelValue",o.value[0]||""):_("update:modelValue",o.value)},l=p(),m=()=>{var e;o.value=[],(e=l.value)==null||e.openDialog()},y=e=>{o.value=o.value.concat(e),s()};return(e,r)=>{const a=v("el-button");return b(),C("div",null,[i(a,{type:"primary",onClick:m},{default:h(()=>[D("素材库")]),_:1}),i(pe,{kind:t==null?void 0:t.type,max:d.value,ref_key:"fileMangeDialogRef",ref:l,onConfirm:y},null,8,["kind","max"])])}}});const ye=w(_e,[["__scopeId","data-v-506ffbc9"]]);export{ye as M,oe as U};