ll-package
Version:
2 lines (1 loc) • 9.49 kB
JavaScript
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const p=require("../../../@babel/runtime/helpers/esm/objectSpread2.js"),i=require("../../../@babel/runtime/helpers/esm/extends.js"),o=require("vue"),X=require("../vc-table/Table.js");require("../spin/index.js");const Ee=require("../pagination/index.js"),j=require("./hooks/usePagination.js"),Ne=require("./hooks/useLazyKVMap.js"),ze=require("./hooks/useSelection.js"),F=require("./hooks/useSorter.js"),L=require("./hooks/useFilter/index.js"),Ke=require("./hooks/useTitleColumns.js"),je=require("./ExpandIcon.js"),De=require("../_util/scrollTo.js"),_e=require("../locale/en_US.js"),B=require("../vc-util/devWarning.js"),$e=require("../_util/hooks/useBreakpoint.js"),Oe=require("../config-provider/hooks/useConfigInject.js"),I=require("../_util/classNames.js"),ke=require("../_util/omit.js"),te=require("../_util/props-util/initDefaultProps.js"),ee=require("./context.js"),Ae=require("./hooks/useColumns.js"),Fe=require("./util.js"),n=require("../_util/type.js"),Le=require("./style/index.js"),Be=require("../spin/Spin.js"),Ve=require("../locale/LocaleReceiver.js"),Ue=[],V=()=>({prefixCls:n.stringType(),columns:n.arrayType(),rowKey:n.someType([String,Function]),tableLayout:n.stringType(),rowClassName:n.someType([String,Function]),title:n.functionType(),footer:n.functionType(),id:n.stringType(),showHeader:n.booleanType(),components:n.objectType(),customRow:n.functionType(),customHeaderRow:n.functionType(),direction:n.stringType(),expandFixed:n.someType([Boolean,String]),expandColumnWidth:Number,expandedRowKeys:n.arrayType(),defaultExpandedRowKeys:n.arrayType(),expandedRowRender:n.functionType(),expandRowByClick:n.booleanType(),expandIcon:n.functionType(),onExpand:n.functionType(),onExpandedRowsChange:n.functionType(),"onUpdate:expandedRowKeys":n.functionType(),defaultExpandAllRows:n.booleanType(),indentSize:Number,expandIconColumnIndex:Number,showExpandColumn:n.booleanType(),expandedRowClassName:n.functionType(),childrenColumnName:n.stringType(),rowExpandable:n.functionType(),sticky:n.someType([Boolean,Object]),dropdownPrefixCls:String,dataSource:n.arrayType(),pagination:n.someType([Boolean,Object]),loading:n.someType([Boolean,Object]),size:n.stringType(),bordered:n.booleanType(),locale:n.objectType(),onChange:n.functionType(),onResizeColumn:n.functionType(),rowSelection:n.objectType(),getPopupContainer:n.functionType(),scroll:n.objectType(),sortDirections:n.arrayType(),showSorterTooltip:n.someType([Boolean,Object],!0),transformCellText:n.functionType()}),He=o.defineComponent({name:"InternalTable",inheritAttrs:!1,props:te.default(i.default(i.default({},V()),{contextSlots:n.objectType()}),{rowKey:"key"}),setup(e,D){let{attrs:w,slots:d,expose:_,emit:q}=D;B.default(!(typeof e.rowKey=="function"&&e.rowKey.length>1),"Table","`index` parameter of `rowKey` function is deprecated. There is no guarantee that it will work as expected."),ee.useProvideSlots(o.computed(()=>e.contextSlots)),ee.useProvideTableContext({onResizeColumn:(t,a)=>{q("resizeColumn",t,a)}});const T=$e.default(),C=o.computed(()=>{const t=new Set(Object.keys(T.value).filter(a=>T.value[a]));return e.columns.filter(a=>!a.responsive||a.responsive.some(l=>t.has(l)))}),{size:E,renderEmpty:ne,direction:$,prefixCls:r,configProvider:U}=Oe.default("table",e),[oe,ae]=Le.default(r),le=o.computed(()=>{var t;return e.transformCellText||((t=U.transformCellText)===null||t===void 0?void 0:t.value)}),[N]=Ve.useLocaleReceiver("Table",_e.default.Table,o.toRef(e,"locale")),b=o.computed(()=>e.dataSource||Ue),re=o.computed(()=>U.getPrefixCls("dropdown",e.dropdownPrefixCls)),S=o.computed(()=>e.childrenColumnName||"children"),H=o.computed(()=>b.value.some(t=>t==null?void 0:t[S.value])?"nest":e.expandedRowRender?"row":null),z=o.reactive({body:null}),ie=t=>{i.default(z,t)},K=o.computed(()=>typeof e.rowKey=="function"?e.rowKey:t=>t==null?void 0:t[e.rowKey]),[ue]=Ne.default(b,S,K),m={},O=function(t,a){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const{pagination:s,scroll:g,onChange:x}=e,u=i.default(i.default({},m),t);l&&(m.resetPagination(),u.pagination.current&&(u.pagination.current=1),s&&s.onChange&&s.onChange(1,u.pagination.pageSize)),g&&g.scrollToFirstRowOnChange!==!1&&z.body&&De.default(0,{getContainer:()=>z.body}),x==null||x(u.pagination,u.filters,u.sorter,{currentDataSource:L.getFilterData(F.getSortData(b.value,u.sorterStates,S.value),u.filterStates),action:a})},se=(t,a)=>{O({sorter:t,sorterStates:a},"sort",!1)},[de,M,ce,fe]=F.default({prefixCls:r,mergedColumns:C,onSorterChange:se,sortDirections:o.computed(()=>e.sortDirections||["ascend","descend"]),tableLocale:N,showSorterTooltip:o.toRef(e,"showSorterTooltip")}),me=o.computed(()=>F.getSortData(b.value,M.value,S.value)),pe=(t,a)=>{O({filters:t,filterStates:a},"filter",!0)},[ge,G,W]=L.default({prefixCls:r,locale:N,dropdownPrefixCls:re,mergedColumns:C,onFilterChange:pe,getPopupContainer:o.toRef(e,"getPopupContainer")}),c=o.computed(()=>L.getFilterData(me.value,G.value)),[ve]=Ae.default(o.toRef(e,"contextSlots")),ye=o.computed(()=>{const t={},a=W.value;return Object.keys(a).forEach(l=>{a[l]!==null&&(t[l]=a[l])}),i.default(i.default({},ce.value),{filters:t})}),[Te]=Ke.default(ye),xe=(t,a)=>{O({pagination:i.default(i.default({},m.pagination),{current:t,pageSize:a})},"paginate")},[f,we]=j.default(o.computed(()=>c.value.length),o.toRef(e,"pagination"),xe);o.watchEffect(()=>{m.sorter=fe.value,m.sorterStates=M.value,m.filters=W.value,m.filterStates=G.value,m.pagination=e.pagination===!1?{}:j.getPaginationParam(f.value,e.pagination),m.resetPagination=we});const Z=o.computed(()=>{if(e.pagination===!1||!f.value.pageSize)return c.value;const{current:t=1,total:a,pageSize:l=j.DEFAULT_PAGE_SIZE}=f.value;return B.default(t>0,"Table","`current` should be positive number."),c.value.length<a?c.value.length>l?c.value.slice((t-1)*l,t*l):c.value:c.value.slice((t-1)*l,t*l)});o.watchEffect(()=>{o.nextTick(()=>{const{total:t,pageSize:a=j.DEFAULT_PAGE_SIZE}=f.value;c.value.length<t&&c.value.length>a&&B.default(!1,"Table","`dataSource` length is less than `pagination.total` but large than `pagination.pageSize`. Please make sure your config correct data with async mode.")})},{flush:"post"});const Ce=o.computed(()=>e.showExpandColumn===!1?-1:H.value==="nest"&&e.expandIconColumnIndex===void 0?e.rowSelection?1:0:e.expandIconColumnIndex>0&&e.rowSelection?e.expandIconColumnIndex-1:e.expandIconColumnIndex),Y=o.ref();o.watch(()=>e.rowSelection,()=>{Y.value=e.rowSelection?i.default({},e.rowSelection):e.rowSelection},{deep:!0,immediate:!0});const[be,J]=ze.default(Y,{prefixCls:r,data:c,pageData:Z,getRowKey:K,getRecordByKey:ue,expandType:H,childrenColumnName:S,locale:N,getPopupContainer:o.computed(()=>e.getPopupContainer)}),Se=(t,a,l)=>{let s;const{rowClassName:g}=e;return typeof g=="function"?s=I.default(g(t,a,l)):s=I.default(g),I.default({[`${r.value}-row-selected`]:J.value.has(K.value(t,a))},s)};_({selectedKeySet:J});const he=o.computed(()=>typeof e.indentSize=="number"?e.indentSize:15),Re=t=>Te(be(ge(de(ve(t)))));return()=>{var t;const{expandIcon:a=d.expandIcon||je.default(N.value),pagination:l,loading:s,bordered:g}=e;let x,u;if(l!==!1&&(!((t=f.value)===null||t===void 0)&&t.total)){let y;f.value.size?y=f.value.size:y=E.value==="small"||E.value==="middle"?"small":void 0;const v=R=>o.createVNode(Ee.default,p.default(p.default({},f.value),{},{class:[`${r.value}-pagination ${r.value}-pagination-${R}`,f.value.class],size:y}),null),Q=$.value==="rtl"?"left":"right",{position:h}=f.value;if(h!==null&&Array.isArray(h)){const R=h.find(P=>P.includes("top")),A=h.find(P=>P.includes("bottom")),qe=h.every(P=>`${P}`=="none");!R&&!A&&!qe&&(u=v(Q)),R&&(x=v(R.toLowerCase().replace("top",""))),A&&(u=v(A.toLowerCase().replace("bottom","")))}else u=v(Q)}let k;typeof s=="boolean"?k={spinning:s}:typeof s=="object"&&(k=i.default({spinning:!0},s));const Pe=I.default(`${r.value}-wrapper`,{[`${r.value}-wrapper-rtl`]:$.value==="rtl"},w.class,ae.value),Ie=ke.default(e,["columns"]);return oe(o.createVNode("div",{class:Pe,style:w.style},[o.createVNode(Be.default,p.default({spinning:!1},k),{default:()=>[x,o.createVNode(X.default,p.default(p.default(p.default({},w),Ie),{},{expandedRowKeys:e.expandedRowKeys,defaultExpandedRowKeys:e.defaultExpandedRowKeys,expandIconColumnIndex:Ce.value,indentSize:he.value,expandIcon:a,columns:C.value,direction:$.value,prefixCls:r.value,class:I.default({[`${r.value}-middle`]:E.value==="middle",[`${r.value}-small`]:E.value==="small",[`${r.value}-bordered`]:g,[`${r.value}-empty`]:b.value.length===0}),data:Z.value,rowKey:K.value,rowClassName:Se,internalHooks:X.INTERNAL_HOOKS,internalRefs:z,onUpdateInternalRefs:ie,transformColumns:Re,transformCellText:le.value}),i.default(i.default({},d),{emptyText:()=>{var y,v;return((y=d.emptyText)===null||y===void 0?void 0:y.call(d))||((v=e.locale)===null||v===void 0?void 0:v.emptyText)||ne("Table")}})),u]})]))}}}),Me=o.defineComponent({name:"ATable",inheritAttrs:!1,props:te.default(V(),{rowKey:"key"}),slots:Object,setup(e,D){let{attrs:w,slots:d,expose:_}=D;const q=o.ref();return _({table:q}),()=>{var T;const C=e.columns||Fe.convertChildrenToColumns((T=d.default)===null||T===void 0?void 0:T.call(d));return o.createVNode(He,p.default(p.default(p.default({ref:q},w),e),{},{columns:C||[],expandedRowRender:d.expandedRowRender||e.expandedRowRender,contextSlots:i.default({},d)}),d)}}}),Ge=Me;exports.default=Ge;exports.tableProps=V;
;