index-CzkDiPpG.js 11 KB

1
  1. import{A as Oe,_ as Q,h as N,v as ge,w as he,$ as B,ag as je,o as Le,ah as Ge,z as ie}from"./index-DnTunbJs.js";import{S as ze}from"./index-Bu5jldT_.js";import{u as G,G as ye,b as $e,R as A,C as T}from"./index-DJdrcsn1.js";import{r as L,c as g,w as Ne,u as Pe,ae as Re,d as R,l as W,f as ue,Z,s as ce,o as w,a as I,k as z,n as x,b as be,i as J,M as Be,B as c,A as M,N as Me,a9 as k,q as H,F as de,G as fe}from"./vue-vendor-B2yM2jt_.js";import{P as He}from"./index-DNH0kuFI.js";import{S as Ve,E as ke}from"./index-CPr5VJXZ.js";import{V as Ee}from"./index-BPy71hpd.js";import{u as De,b as Ae}from"./index-CUTiTmfb.js";const Te=({itemRef:e,selector:n,index:t,parentClassName:r})=>{const a=L(-1),l=g(()=>{var d;return(d=t==null?void 0:t.value)!=null?d:a.value}),i=L(),u=()=>{var d,f,b;let $=(f=(d=e.value)==null?void 0:d.parentElement)!=null?f:void 0;if(r)for(;$&&!$.className.includes(r);)$=(b=$.parentElement)!=null?b:void 0;return $},s=()=>{if(Oe(t==null?void 0:t.value)&&i.value&&e.value){const d=Array.from(i.value.querySelectorAll(n)).indexOf(e.value);d!==a.value&&(a.value=d)}};return Ne(e,()=>{e.value&&!i.value&&(i.value=u())}),Pe(()=>{e.value&&(i.value=u()),s()}),Re(()=>s()),{computedIndex:l}};function Ke(e,n){var t,r;const a=(t=n.span)!=null?t:1,l=(r=n.offset)!=null?r:0,i=Math.min(l,e);return{span:Math.min(i>0?a+l:a,e),offset:i,suffix:"suffix"in n?n.suffix!==!1:!1}}function Ue({cols:e,collapsed:n,collapsedRows:t,itemDataList:r}){let a=!1,l=[];function i(u){return Math.ceil(u/e)>t}if(n){let u=0;for(let s=0;s<r.length;s++)r[s].suffix&&(u+=r[s].span,l.push(s));if(!i(u)){let s=0;for(;s<r.length;){const d=r[s];if(!d.suffix){if(u+=d.span,i(u))break;l.push(s)}s++}}a=r.some((s,d)=>!s.suffix&&!l.includes(d))}else l=r.map((u,s)=>s);return{overflow:a,displayIndexList:l}}const qe=R({name:"Grid",props:{cols:{type:[Number,Object],default:24},rowGap:{type:[Number,Object],default:0},colGap:{type:[Number,Object],default:0},collapsed:{type:Boolean,default:!1},collapsedRows:{type:Number,default:1}},setup(e){const{cols:n,rowGap:t,colGap:r,collapsedRows:a,collapsed:l}=W(e),i=G(n,24),u=G(r,0),s=G(t,0),d=N("grid"),f=g(()=>[d]),b=g(()=>[{gap:`${s.value}px ${u.value}px`,"grid-template-columns":`repeat(${i.value}, minmax(0px, 1fr))`}]),$=ue(new Map),O=g(()=>{const P=[];for(const[v,S]of $.entries())P[v]=S;return P}),_=ue({overflow:!1,displayIndexList:[],cols:i.value,colGap:u.value});return Z(()=>{_.cols=i.value,_.colGap=u.value}),Z(()=>{const P=Ue({cols:i.value,collapsed:l.value,collapsedRows:a.value,itemDataList:O.value});_.overflow=P.overflow,_.displayIndexList=P.displayIndexList}),ce(ye,_),ce($e,{collectItemData(P,v){$.set(P,v)},removeItemData(P){$.delete(P)}}),{classNames:f,style:b}}});function Fe(e,n,t,r,a,l){return w(),I("div",{class:x(e.classNames),style:be(e.style)},[z(e.$slots,"default")],6)}var K=Q(qe,[["render",Fe]]),Ye=Object.defineProperty,Ze=Object.defineProperties,Je=Object.getOwnPropertyDescriptors,pe=Object.getOwnPropertySymbols,Qe=Object.prototype.hasOwnProperty,We=Object.prototype.propertyIsEnumerable,ve=(e,n,t)=>n in e?Ye(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Xe=(e,n)=>{for(var t in n||(n={}))Qe.call(n,t)&&ve(e,t,n[t]);if(pe)for(var t of pe(n))We.call(n,t)&&ve(e,t,n[t]);return e},et=(e,n)=>Ze(e,Je(n));const tt=R({name:"GridItem",props:{span:{type:[Number,Object],default:1},offset:{type:[Number,Object],default:0},suffix:{type:Boolean,default:!1}},setup(e){const n=N("grid-item"),t=L(),{computedIndex:r}=Te({itemRef:t,selector:`.${n}`}),a=J(ye,{overflow:!1,displayIndexList:[],cols:24,colGap:0}),l=J($e),i=g(()=>{var v;return(v=a==null?void 0:a.displayIndexList)==null?void 0:v.includes(r.value)}),{span:u,offset:s}=W(e),d=G(u,1),f=G(s,0),b=g(()=>Ke(a.cols,et(Xe({},e),{span:d.value,offset:f.value}))),$=g(()=>[n]),O=g(()=>{const{offset:v,span:S}=b.value,{colGap:j}=a;return v>0?{"margin-left":`calc((${`(100% - ${j*(S-1)}px) / ${S}`} * ${v}) + ${j*v}px)`}:{}}),_=g(()=>{const{suffix:v,span:S}=b.value,{cols:j}=a;return v?`${j-S+1}`:`span ${S}`}),P=g(()=>{const{span:v}=b.value;return t.value?[{"grid-column":`${_.value} / span ${v}`},O.value,!i.value||v===0?{display:"none"}:{}]:[]});return Z(()=>{r.value!==-1&&(l==null||l.collectItemData(r.value,b.value))}),Be(()=>{r.value!==-1&&(l==null||l.removeItemData(r.value))}),{classNames:$,style:P,domRef:t,overflow:g(()=>a.overflow)}}});function nt(e,n,t,r,a,l){return w(),I("div",{ref:"domRef",class:x(e.classNames),style:be(e.style)},[z(e.$slots,"default",{overflow:e.overflow})],6)}var U=Q(tt,[["render",nt]]);const V=Object.assign(K,{Row:A,Col:T,Item:U,install:(e,n)=>{ge(e,n);const t=he(n);e.component(t+A.name,A),e.component(t+T.name,T),e.component(t+K.name,K),e.component(t+U.name,U)}}),at=(e,{emit:n})=>{var t,r;const a=L(B(e.paginationProps)&&(t=e.paginationProps.defaultCurrent)!=null?t:1),l=L(B(e.paginationProps)&&(r=e.paginationProps.defaultPageSize)!=null?r:10),i=g(()=>{var f;return B(e.paginationProps)&&(f=e.paginationProps.current)!=null?f:a.value}),u=g(()=>{var f;return B(e.paginationProps)&&(f=e.paginationProps.pageSize)!=null?f:l.value});return{current:i,pageSize:u,handlePageChange:f=>{a.value=f,n("pageChange",f)},handlePageSizeChange:f=>{l.value=f,n("pageSizeChange",f)}}};function me(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!k(e)}var q=R({name:"List",props:{data:{type:Array},size:{type:String,default:"medium"},bordered:{type:Boolean,default:!0},split:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!1},paginationProps:{type:Object},gridProps:{type:Object},maxHeight:{type:[String,Number],default:0},bottomOffset:{type:Number,default:0},virtualListProps:{type:Object},scrollbar:{type:[Object,Boolean],default:!0}},emits:{scroll:()=>!0,reachBottom:()=>!0,pageChange:e=>!0,pageSizeChange:e=>!0},setup(e,{emit:n,slots:t}){const{scrollbar:r}=W(e),a=N("list"),l=J(je,void 0),{componentRef:i,elementRef:u}=De("containerRef"),s=g(()=>e.virtualListProps),{displayScrollbar:d,scrollbarProps:f}=Ae(r);let b=0;const $=o=>{const{scrollTop:p,scrollHeight:h,offsetHeight:y}=o.target,m=Math.floor(h-(p+y));p>b&&m<=e.bottomOffset&&n("reachBottom"),n("scroll"),b=p};Pe(()=>{if(u.value){const{scrollTop:o,scrollHeight:p,offsetHeight:h}=u.value;p<=o+h&&n("reachBottom")}});const{current:O,pageSize:_,handlePageChange:P,handlePageSizeChange:v}=at(e,{emit:n}),S=o=>{if(!e.paginationProps)return o;if(e.paginationProps&&o.length>_.value){const p=(O.value-1)*_.value;return o.slice(p,p+_.value)}return o},j=o=>{let p;if(!e.gridProps)return null;const h=S(o);if(e.gridProps.span){const y=[],m=24/e.gridProps.span;for(let C=0;C<h.length;C+=m){let E;const xe=C+m,re=Math.floor(C/m);y.push(c(V.Row,{key:re,class:`${a}-row`,gutter:e.gridProps.gutter},me(E=h.slice(C,xe).map((D,le)=>{var oe;return c(V.Col,{key:`${re}-${le}`,class:`${a}-col`,span:(oe=e.gridProps)==null?void 0:oe.span},{default:()=>{var se;return[k(D)?D:(se=t.item)==null?void 0:se.call(t,{item:D,index:le})]}})}))?E:{default:()=>[E]}))}return y}return c(V.Row,{class:`${a}-row`,gutter:e.gridProps.gutter},me(p=h.map((y,m)=>c(V.Col,M({key:m,class:`${a}-col`},ie(e.gridProps,["gutter"])),{default:()=>{var C;return[k(y)?y:(C=t.item)==null?void 0:C.call(t,{item:y,index:m})]}})))?p:{default:()=>[p]})},X=o=>S(o).map((h,y)=>{var m;return k(h)?h:(m=t.item)==null?void 0:m.call(t,{item:h,index:y})}),_e=()=>{const o=t.default?Ge(t.default()):e.data;return o&&o.length>0?e.gridProps?j(o):X(o):ae()},Se=()=>{if(!e.paginationProps)return null;const o=ie(e.paginationProps,["current","pageSize","defaultCurrent","defaultPageSize"]);return c(He,M({class:`${a}-pagination`},o,{current:O.value,pageSize:_.value,onChange:P,onPageSizeChange:v}),null)},Ce=g(()=>[a,`${a}-${e.size}`,{[`${a}-bordered`]:e.bordered,[`${a}-split`]:e.split,[`${a}-hover`]:e.hoverable}]),we=g(()=>{if(e.maxHeight)return{maxHeight:Le(e.maxHeight)?`${e.maxHeight}px`:e.maxHeight,overflowY:"auto"}}),ee=g(()=>[`${a}-content`,{[`${a}-virtual`]:s.value}]),te=L(),Ie=()=>{var o;const p=S((o=e.data)!=null?o:[]);return p.length?c(Ee,M({ref:te,class:ee.value,data:p},e.virtualListProps,{onScroll:$}),{item:({item:h,index:y})=>{var m;return(m=t.item)==null?void 0:m.call(t,{item:h,index:y})}}):ae()},ne=()=>t["scroll-loading"]?c("div",{class:[`${a}-item`,`${a}-scroll-loading`]},[t["scroll-loading"]()]):null,ae=()=>{var o,p,h,y,m;return t["scroll-loading"]?null:(m=(y=(o=t.empty)==null?void 0:o.call(t))!=null?y:(h=l==null?void 0:(p=l.slots).empty)==null?void 0:h.call(p,{component:"list"}))!=null?m:c(ke,null,null)};return{virtualListRef:te,render:()=>{const o=d.value?Ve:"div";return c("div",{class:`${a}-wrapper`},[c(ze,{class:`${a}-spin`,loading:e.loading},{default:()=>[c(o,M({ref:i,class:Ce.value,style:we.value},f.value,{onScroll:$}),{default:()=>[c("div",{class:`${a}-content-wrapper`},[t.header&&c("div",{class:`${a}-header`},[t.header()]),s.value&&!e.gridProps?c(Me,null,[Ie(),ne()]):c("div",{role:"list",class:ee.value},[_e(),ne()]),t.footer&&c("div",{class:`${a}-footer`},[t.footer()])])]}),Se()]})])}}},methods:{scrollIntoView(e){this.virtualListRef&&this.virtualListRef.scrollTo(e)}},render(){return this.render()}}),F=R({name:"ListItem",props:{actionLayout:{type:String,default:"horizontal"}},setup(e,{slots:n}){const t=N("list-item"),r=()=>{var a;const l=(a=n.actions)==null?void 0:a.call(n);return!l||!l.length?null:c("ul",{class:`${t}-action`},[l.map((i,u)=>c("li",{key:`${t}-action-${u}`},[i]))])};return()=>{var a,l;return c("div",{role:"listitem",class:t},[c("div",{class:`${t}-main`},[(a=n.meta)==null?void 0:a.call(n),c("div",{class:`${t}-content`},[(l=n.default)==null?void 0:l.call(n)]),e.actionLayout==="vertical"&&r()]),e.actionLayout==="horizontal"&&r(),n.extra&&c("div",{class:`${t}-extra`},[n.extra()])])}}});const rt=R({name:"ListItemMeta",props:{title:String,description:String},setup(e,{slots:n}){const t=N("list-item-meta"),r=!!(e.title||e.description||n.title||n.description);return{prefixCls:t,hasContent:r}}});function lt(e,n,t,r,a,l){return w(),I("div",{class:x(e.prefixCls)},[e.$slots.avatar?(w(),I("div",{key:0,class:x(`${e.prefixCls}-avatar`)},[z(e.$slots,"avatar")],2)):H("v-if",!0),e.hasContent?(w(),I("div",{key:1,class:x(`${e.prefixCls}-content`)},[e.$slots.title||e.title?(w(),I("div",{key:0,class:x(`${e.prefixCls}-title`)},[z(e.$slots,"title",{},()=>[de(fe(e.title),1)])],2)):H("v-if",!0),e.$slots.description||e.description?(w(),I("div",{key:1,class:x(`${e.prefixCls}-description`)},[z(e.$slots,"description",{},()=>[de(fe(e.description),1)])],2)):H("v-if",!0)],2)):H("v-if",!0)],2)}var Y=Q(rt,[["render",lt]]);const mt=Object.assign(q,{Item:Object.assign(F,{Meta:Y}),install:(e,n)=>{ge(e,n);const t=he(n);e.component(t+q.name,q),e.component(t+F.name,F),e.component(t+Y.name,Y)}});export{Y as L,F as a,mt as b};