UNPKG

ll-package

Version:

2 lines (1 loc) 5.06 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const j=require("../../../../@babel/runtime/helpers/esm/extends.js"),c=require("vue"),pe=require("../../_util/classNames.js"),q=require("../../_util/props-util/index.js"),K=require("../utils/valueUtil.js"),ve=require("../../table/context.js"),xe=require("../utils/legacyUtil.js"),ye=require("../context/HoverContext.js"),me=require("../context/StickyContext.js"),ge=require("../../vc-util/warning.js"),_e=require("../../_util/eagerComputed.js"),Se=require("../../_util/vnode.js");var he=function(e,v){var s={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&v.indexOf(r)<0&&(s[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var d=0,r=Object.getOwnPropertySymbols(e);d<r.length;d++)v.indexOf(r[d])<0&&Object.prototype.propertyIsEnumerable.call(e,r[d])&&(s[r[d]]=e[r[d]]);return s};function Ce(e,v,s,r){const d=e+v-1;return e<=r&&d>=s}function we(e){return e&&typeof e=="object"&&!Array.isArray(e)&&!c.isVNode(e)}const be=c.defineComponent({name:"Cell",props:["prefixCls","record","index","renderIndex","dataIndex","customRender","component","colSpan","rowSpan","fixLeft","fixRight","firstFixLeft","lastFixLeft","firstFixRight","lastFixRight","appendNode","additionalProps","ellipsis","align","rowType","isSticky","column","cellType","transformCellText"],setup(e,v){let{slots:s}=v;const r=ve.useInjectSlots(),{onHover:d,startRow:Q,endRow:W}=ye.useInjectHover(),X=c.computed(()=>{var l,n,i,o;return(i=(l=e.colSpan)!==null&&l!==void 0?l:(n=e.additionalProps)===null||n===void 0?void 0:n.colSpan)!==null&&i!==void 0?i:(o=e.additionalProps)===null||o===void 0?void 0:o.colspan}),O=c.computed(()=>{var l,n,i,o;return(i=(l=e.rowSpan)!==null&&l!==void 0?l:(n=e.additionalProps)===null||n===void 0?void 0:n.rowSpan)!==null&&i!==void 0?i:(o=e.additionalProps)===null||o===void 0?void 0:o.rowspan}),Y=_e.default(()=>{const{index:l}=e;return Ce(l,O.value||1,Q.value,W.value)}),u=me.useInjectSticky(),Z=(l,n)=>{var i;const{record:o,index:x,additionalProps:f}=e;o&&d(x,x+n-1),(i=f==null?void 0:f.onMouseenter)===null||i===void 0||i.call(f,l)},ee=l=>{var n;const{record:i,additionalProps:o}=e;i&&d(-1,-1),(n=o==null?void 0:o.onMouseleave)===null||n===void 0||n.call(o,l)},F=l=>{const n=q.filterEmpty(l)[0];return c.isVNode(n)?n.type===c.Text?n.children:Array.isArray(n.children)?F(n.children):void 0:n};return()=>{var l,n,i,o,x,f;const{prefixCls:te,record:_,index:w,renderIndex:ne,dataIndex:le,customRender:A,component:oe="td",fixLeft:I,fixRight:V,firstFixLeft:ie,lastFixLeft:k,firstFixRight:E,lastFixRight:re,appendNode:L=(l=s.appendNode)===null||l===void 0?void 0:l.call(s),additionalProps:b={},ellipsis:S,align:M,rowType:se,isSticky:ae,column:m={},cellType:H}=e,a=`${te}-cell`;let R,t;const D=(n=s.default)===null||n===void 0?void 0:n.call(s);if(K.validateValue(D)||H==="header")t=D;else{const p=K.getPathValue(_,le);if(t=p,A){const y=A({text:p,value:p,record:_,index:w,renderIndex:ne,column:m.__originColumn__});we(y)?(process.env.NODE_ENV!=="production"&&ge.warning(!1,"`columns.customRender` return cell props is deprecated with perf issue, please use `customCell` instead."),t=y.children,R=y.props):t=y}if(!(xe.INTERNAL_COL_DEFINE in m)&&H==="body"&&r.value.bodyCell&&!(!((i=m.slots)===null||i===void 0)&&i.customRender)){const y=Se.customRenderSlot(r.value,"bodyCell",{text:p,value:p,record:_,index:w,column:m.__originColumn__},()=>{const C=t===void 0?p:t;return[typeof C=="object"&&q.isValidElement(C)||typeof C!="object"?C:null]});t=q.flattenChildren(y)}e.transformCellText&&(t=e.transformCellText({text:t,record:_,index:w,column:m.__originColumn__}))}typeof t=="object"&&!Array.isArray(t)&&!c.isVNode(t)&&(t=null),S&&(k||E)&&(t=c.createVNode("span",{class:`${a}-content`},[t])),Array.isArray(t)&&t.length===1&&(t=t[0]);const U=R||{},{colSpan:z,rowSpan:B,style:de,class:ce}=U,ue=he(U,["colSpan","rowSpan","style","class"]),N=(o=z!==void 0?z:X.value)!==null&&o!==void 0?o:1,h=(x=B!==void 0?B:O.value)!==null&&x!==void 0?x:1;if(N===0||h===0)return null;const g={},P=typeof I=="number"&&u.value,$=typeof V=="number"&&u.value;P&&(g.position="sticky",g.left=`${I}px`),$&&(g.position="sticky",g.right=`${V}px`);const G={};M&&(G.textAlign=M);let T;const J=S===!0?{showTitle:!0}:S;J&&(J.showTitle||se==="header")&&(typeof t=="string"||typeof t=="number"?T=t.toString():c.isVNode(t)&&(T=F([t])));const fe=j.default(j.default(j.default({title:T},ue),b),{colSpan:N!==1?N:null,rowSpan:h!==1?h:null,class:pe.default(a,{[`${a}-fix-left`]:P&&u.value,[`${a}-fix-left-first`]:ie&&u.value,[`${a}-fix-left-last`]:k&&u.value,[`${a}-fix-right`]:$&&u.value,[`${a}-fix-right-first`]:E&&u.value,[`${a}-fix-right-last`]:re&&u.value,[`${a}-ellipsis`]:S,[`${a}-with-append`]:L,[`${a}-fix-sticky`]:(P||$)&&ae&&u.value,[`${a}-row-hover`]:!R&&Y.value},b.class,ce),onMouseenter:p=>{Z(p,h)},onMouseleave:ee,style:[b.style,G,g,de]});return c.createVNode(oe,fe,{default:()=>[L,t,(f=s.dragHandle)===null||f===void 0?void 0:f.call(s)]})}}});exports.default=be;