ll-package
Version:
2 lines (1 loc) • 5.25 kB
JavaScript
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const y=require("../../../@babel/runtime/helpers/esm/objectSpread2.js"),f=require("../../../@babel/runtime/helpers/esm/extends.js"),n=require("vue"),oe=require("../_util/classNames.js");require("../spin/index.js");const ie=require("../pagination/index.js"),le=require("../grid/Row.js"),re=require("../_util/hooks/useBreakpoint.js"),R=require("./Item.js"),ue=require("../_util/props-util/index.js"),de=require("../_util/props-util/initDefaultProps.js"),i=require("../_util/type.js"),ce=require("../config-provider/hooks/useConfigInject.js"),B=require("../_util/responsiveObserve.js"),se=require("../_util/eagerComputed.js"),ve=require("./style/index.js"),ge=require("./contextKey.js"),fe=require("../spin/Spin.js"),D=()=>({bordered:i.booleanType(),dataSource:i.arrayType(),extra:i.vNodeType(),grid:i.objectType(),itemLayout:String,loading:i.someType([Boolean,Object]),loadMore:i.vNodeType(),pagination:i.someType([Boolean,Object]),prefixCls:String,rowKey:i.someType([String,Number,Function]),renderItem:i.functionType(),size:String,split:i.booleanType(),header:i.vNodeType(),footer:i.vNodeType(),locale:i.objectType()}),c=n.defineComponent({compatConfig:{MODE:3},name:"AList",inheritAttrs:!1,Item:R.default,props:de.default(D(),{dataSource:[],bordered:!1,split:!0,loading:!1,pagination:!1}),slots:Object,setup(e,E){let{slots:u,attrs:L}=E;var h,S;n.provide(ge.ListContextKey,{grid:n.toRef(e,"grid"),itemLayout:n.toRef(e,"itemLayout")});const F={current:1,total:0},{prefixCls:o,direction:H,renderEmpty:W}=ce.default("list",e),[G,J]=ve.default(o),d=n.computed(()=>e.pagination&&typeof e.pagination=="object"?e.pagination:{}),b=n.ref((h=d.value.defaultCurrent)!==null&&h!==void 0?h:1),$=n.ref((S=d.value.defaultPageSize)!==null&&S!==void 0?S:10);n.watch(d,()=>{"current"in d.value&&(b.value=d.value.current),"pageSize"in d.value&&($.value=d.value.pageSize)});const C=[],j=t=>(a,l)=>{b.value=a,$.value=l,d.value[t]&&d.value[t](a,l)},Q=j("onChange"),U=j("onShowSizeChange"),q=n.computed(()=>typeof e.loading=="boolean"?{spinning:e.loading}:e.loading),p=n.computed(()=>q.value&&q.value.spinning),x=n.computed(()=>{let t="";switch(e.size){case"large":t="lg";break;case"small":t="sm";break}return t}),X=n.computed(()=>({[`${o.value}`]:!0,[`${o.value}-vertical`]:e.itemLayout==="vertical",[`${o.value}-${x.value}`]:x.value,[`${o.value}-split`]:e.split,[`${o.value}-bordered`]:e.bordered,[`${o.value}-loading`]:p.value,[`${o.value}-grid`]:!!e.grid,[`${o.value}-rtl`]:H.value==="rtl"})),s=n.computed(()=>{const t=f.default(f.default(f.default({},F),{total:e.dataSource.length,current:b.value,pageSize:$.value}),e.pagination||{}),a=Math.ceil(t.total/t.pageSize);return t.current>a&&(t.current=a),t}),V=n.computed(()=>{let t=[...e.dataSource];return e.pagination&&e.dataSource.length>(s.value.current-1)*s.value.pageSize&&(t=[...e.dataSource].splice((s.value.current-1)*s.value.pageSize,s.value.pageSize)),t}),Y=re.default(),I=se.default(()=>{for(let t=0;t<B.responsiveArray.length;t+=1){const a=B.responsiveArray[t];if(Y.value[a])return a}}),Z=n.computed(()=>{if(!e.grid)return;const t=I.value&&e.grid[I.value]?e.grid[I.value]:e.grid.column;if(t)return{width:`${100/t}%`,maxWidth:`${100/t}%`}}),ee=(t,a)=>{var l;const g=(l=e.renderItem)!==null&&l!==void 0?l:u.renderItem;if(!g)return null;let r;const v=typeof e.rowKey;return v==="function"?r=e.rowKey(t):v==="string"||v==="number"?r=t[e.rowKey]:r=t.key,r||(r=`list-item-${a}`),C[a]=r,g({item:t,index:a})};return()=>{var t,a,l,g,r,v,N,T;const M=(t=e.loadMore)!==null&&t!==void 0?t:(a=u.loadMore)===null||a===void 0?void 0:a.call(u),z=(l=e.footer)!==null&&l!==void 0?l:(g=u.footer)===null||g===void 0?void 0:g.call(u),k=(r=e.header)!==null&&r!==void 0?r:(v=u.header)===null||v===void 0?void 0:v.call(u),K=ue.flattenChildren((N=u.default)===null||N===void 0?void 0:N.call(u)),te=!!(M||e.pagination||z),ne=oe.default(f.default(f.default({},X.value),{[`${o.value}-something-after-last-item`]:te}),L.class,J.value),O=e.pagination?n.createVNode("div",{class:`${o.value}-pagination`},[n.createVNode(ie.default,y.default(y.default({},s.value),{},{onChange:Q,onShowSizeChange:U}),null)]):null;let P=p.value&&n.createVNode("div",{style:{minHeight:"53px"}},null);if(V.value.length>0){C.length=0;const A=V.value.map((_,w)=>ee(_,w)),ae=A.map((_,w)=>n.createVNode("div",{key:C[w],style:Z.value},[_]));P=e.grid?n.createVNode(le.default,{gutter:e.grid.gutter},{default:()=>[ae]}):n.createVNode("ul",{class:`${o.value}-items`},[A])}else!K.length&&!p.value&&(P=n.createVNode("div",{class:`${o.value}-empty-text`},[((T=e.locale)===null||T===void 0?void 0:T.emptyText)||W("List")]));const m=s.value.position||"bottom";return G(n.createVNode("div",y.default(y.default({},L),{},{class:ne}),[(m==="top"||m==="both")&&O,k&&n.createVNode("div",{class:`${o.value}-header`},[k]),n.createVNode(fe.default,q.value,{default:()=>[P,K]}),z&&n.createVNode("div",{class:`${o.value}-footer`},[z]),M||(m==="bottom"||m==="both")&&O]))}}});c.install=function(e){return e.component(c.name,c),e.component(c.Item.name,c.Item),e.component(c.Item.Meta.name,c.Item.Meta),e};const me=c;exports.ListItem=R.default;exports.default=me;exports.listProps=D;
;