1 |
- import{a6 as k,C as V}from"./index.igw5cVmP.js";import{w,x as s,y as t,a7 as d,aq as p,z as g,a6 as y,Z as n,a0 as x,a1 as B,a4 as P,F as v,D as U,H as _}from"./vue.Bi2Y_N79.js";const C=w({name:"FsFilesFormat",props:{modelValue:{},color:{default:""},type:{default:"tag"},a:{},tag:{},buildUrl:{},buildUrls:{},getFileName:{}},setup(a,b){const{ui:i}=V(),f=v(()=>a.getFileName||function(e){return typeof e!="string"?(console.warn("获取文件名失败,请配置getFileName"),e):e?.lastIndexOf("/")>=0?e.substring(e.lastIndexOf("/")+1):e});function u(e){return{url:void 0,value:e,name:f.value(e),color:a.color}}async function m(e){if(a.buildUrls){const r=e.map(o=>o.value),F=await a.buildUrls(r);for(let o=0;o<e.length;o++)e[o].url=F[o]}else if(a.buildUrl)for(let r of e)r.url=await a.buildUrl(r.value);else for(let r=0;r<e.length;r++)e[r].url=e[r].value}async function l(){if(a.modelValue==null||a.modelValue==="")return[];let e=[];if(typeof a.modelValue=="string")e=[u(a.modelValue)];else if(a.modelValue instanceof Array){e=[];for(const r of a.modelValue)e.push(u(r))}return await m(e),e}const c=U([]);_(()=>a.modelValue,async()=>{c.value=await l()},{immediate:!0});const h=v(()=>({...a}));return{ui:i,itemsRef:c,computedProps:h}}}),N={class:"fs-files-format"},R=["href"],D=["href"];function O(a,b,i,f,u,m){return t(),s("div",N,[a.computedProps.type==="text"?(t(!0),s(d,{key:0},p(a.itemsRef,l=>(t(),s("span",{key:l.url,class:"fs-files-item"},[g("a",n({href:l.url,target:"_blank",ref_for:!0},a.computedProps.a),y(l.name),17,R)]))),128)):(t(!0),s(d,{key:1},p(a.itemsRef,l=>(t(),x(P(a.ui.tag.name),n({key:l.url,class:"fs-tag-item",color:l.color,ref_for:!0},a.computedProps.tag),{default:B(()=>[g("a",n({href:l.url,target:"_blank",ref_for:!0},a.computedProps.a),y(l.name),17,D)]),_:2},1040,["color"]))),128))])}const q=k(C,[["render",O]]);export{q as default};
|