UNPKG

ll-package

Version:

2 lines (1 loc) 3.17 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const p=require("../../../../@babel/runtime/helpers/esm/objectSpread2.js"),e=require("vue"),J=require("../Cell/index.js"),Q=require("../utils/valueUtil.js"),W=require("./ExpandedRow.js"),X=require("../context/TableContext.js"),Y=require("../context/BodyContext.js"),h=require("../../_util/classNames.js"),Z=e.defineComponent({name:"BodyRow",inheritAttrs:!1,props:["record","index","renderIndex","recordKey","expandedKeys","rowComponent","cellComponent","customRow","rowExpandable","indent","rowKey","getRowKey","childrenColumnName"],setup(n,I){let{attrs:K}=I;const T=X.useInjectTable(),c=Y.useInjectBody(),f=e.shallowRef(!1),u=e.computed(()=>n.expandedKeys&&n.expandedKeys.has(n.recordKey));e.watchEffect(()=>{u.value&&(f.value=!0)});const C=e.computed(()=>c.expandableType==="row"&&(!n.rowExpandable||n.rowExpandable(n.record))),v=e.computed(()=>c.expandableType==="nest"),$=e.computed(()=>n.childrenColumnName&&n.record&&n.record[n.childrenColumnName]),q=e.computed(()=>C.value||v.value),w=(o,l)=>{c.onTriggerExpand(o,l)},x=e.computed(()=>{var o;return((o=n.customRow)===null||o===void 0?void 0:o.call(n,n.record,n.index))||{}}),S=function(o){var l,a;c.expandRowByClick&&q.value&&w(n.record,o);for(var t=arguments.length,m=new Array(t>1?t-1:0),d=1;d<t;d++)m[d-1]=arguments[d];(a=(l=x.value)===null||l===void 0?void 0:l.onClick)===null||a===void 0||a.call(l,o,...m)},V=e.computed(()=>{const{record:o,index:l,indent:a}=n,{rowClassName:t}=c;return typeof t=="string"?t:typeof t=="function"?t(o,l,a):""}),B=e.computed(()=>Q.getColumnsKey(c.flattenColumns));return()=>{const{class:o,style:l}=K,{record:a,index:t,rowKey:m,indent:d=0,rowComponent:y,cellComponent:N}=n,{prefixCls:s,fixedInfoList:j,transformCellText:k}=T,{flattenColumns:R,expandedRowClassName:b,indentSize:P,expandIcon:A,expandedRowRender:F,expandIconColumnIndex:L}=c,M=e.createVNode(y,p.default(p.default({},x.value),{},{"data-row-key":m,class:h.default(o,`${s}-row`,`${s}-row-level-${d}`,V.value,x.value.class),style:[l,x.value.style],onClick:S}),{default:()=>[R.map((r,i)=>{const{customRender:z,dataIndex:O,className:U}=r,D=B[i],G=j[i];let E;r.customCell&&(E=r.customCell(a,t,r));const H=i===(L||0)&&v.value?e.createVNode(e.Fragment,null,[e.createVNode("span",{style:{paddingLeft:`${P*d}px`},class:`${s}-row-indent indent-level-${d}`},null),A({prefixCls:s,expanded:u.value,expandable:$.value,record:a,onExpand:w})]):null;return e.createVNode(J.default,p.default(p.default({cellType:"body",class:U,ellipsis:r.ellipsis,align:r.align,component:N,prefixCls:s,key:D,record:a,index:t,renderIndex:n.renderIndex,dataIndex:O,customRender:z},G),{},{additionalProps:E,column:r,transformCellText:k,appendNode:H}),null)})]});let g;if(C.value&&(f.value||u.value)){const r=F({record:a,index:t,indent:d+1,expanded:u.value}),i=b&&b(a,t,d);g=e.createVNode(W.default,{expanded:u.value,class:h.default(`${s}-expanded-row`,`${s}-expanded-row-level-${d+1}`,i),prefixCls:s,component:y,cellComponent:N,colSpan:R.length,isEmpty:!1},{default:()=>[r]})}return e.createVNode(e.Fragment,null,[M,g])}}});exports.default=Z;