vxe-table 3.12.7 → 3.12.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";function isVMScrollProcess(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,r){var{row:o,column:s}=r,{afterFullData:a,treeOpts:i,treeConfig:n,fullAllDataRowIdData:d}=t,{slots:s,treeNode:c}=s,d=d[(0,_util.getRowid)(t,o)];let p=0,u=0,g=[];return d&&(p=d.level,u=d._index,g=d.items),s&&s.line?t.callSlot(s.line,r,e):(d=t.eqRow(a[0],o),n&&c&&(i.showLine||i.line)?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:`${d?1:(0,_util.calcTreeLine)(r,g,u)}px`,left:p*i.indent+(p?2-(0,_util.getOffsetSize)(t):0)+16+"px"}})])]:[])}function renderColumn(e,H,l,t,r,o,B,s,a,i,U,n,d,q,c){var{$listeners:p,fullAllDataRowIdData:A,afterFullData:u,tableData:g,height:h,columnKey:F,overflowX:m,sYOpts:v,scrollXLoad:N,scrollYLoad:W,isCalcCellHeight:V,highlightCurrentRow:P,showOverflow:X,isAllOverflow:z,align:j,currentColumn:K,cellClassName:G,cellStyle:J,mergeList:Q,spanMethod:Z,radioOpts:ee,checkboxOpts:le,expandOpts:te,treeOpts:re,tooltipOpts:w,mouseConfig:oe,editConfig:x,editOpts:y,editRules:se,validOpts:f,editStore:ae,tooltipConfig:ie,rowOpts:b,columnOpts:ne,mouseOpts:de,areaOpts:S,validErrorMaps:T}=l,_=l.computeRowDragOpts,{disabledMethod:ce,isCrossDrag:pe,isPeerDrag:ue}=_,S=S.selectCellToRow,{type:ge,cellRender:he,editRender:C,align:me,showOverflow:$,className:ve,treeNode:we,slots:xe}=n,ye=l.computeCellOpts.verticalAlign,ae=ae.actived,v=v.rHeight,E=b.height,O=C||he,O=O?renderer.get(O.name):null,fe=O?O.tableCellClassName||O.cellClassName:"",be=O?O.tableCellStyle||O.cellStyle:"";let R=w.showAll||w.enabled;var w=l.getColumnIndex(n),Se=l.getVTColumnIndex(n),Te=(0,_utils.isEnableConf)(C);let D=o?n.fixed!==o:n.fixed&&m;m=_xeUtils.default.isUndefined($)||_xeUtils.default.isNull($)?X:$,$="ellipsis"===m;let I="title"===m,M=!0===m||"tooltip"===m;m=X||I||M||$;let _e;var L={},A=A[r],me=me||(O?O.tableCellAlign:"")||j,O=T[r+":"+n.id],j=se&&f.showMessage&&("default"===f.message?h||1<g.length:"inline"===f.message),T={colid:n.id};let Ce=p["cell-mouseenter"],$e=p["cell-mouseleave"];se=C&&x&&"dblclick"===y.trigger;let Y={$table:l,$grid:l.$xegrid,isEdit:!1,seq:t,rowid:r,row:s,rowIndex:a,$rowIndex:i,_rowIndex:U,column:n,columnIndex:w,$columnIndex:d,_columnIndex:Se,fixed:o,type:renderType,isHidden:D,level:B,visibleData:u,data:g,items:c},k=!1,Ee=!1;if((k=b.drag?"row"===_.trigger||n.dragSort&&"cell"===_.trigger:k)&&(Ee=!(!ce||!ce(Y))),(I||M||R||Ce||ie)&&(L.mouseenter=e=>{isVMScrollProcess(l)||(I?(0,_dom.updateCellTitle)(e.currentTarget,n):(M||R)&&l.triggerBodyTooltipEvent(e,Y),Ce&&l.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},Y),e))}),(M||R||$e||ie)&&(L.mouseleave=e=>{isVMScrollProcess(l)||((M||R)&&l.handleTargetLeaveEvent(e),$e&&l.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},Y),e))}),(k||le.range||oe)&&(L.mousedown=e=>{l.triggerCellMousedownEvent(e,Y)}),k&&(L.mouseup=l.triggerCellMouseupEvent),(b.isCurrent||P||p["cell-click"]||C&&x||"row"===te.trigger||"cell"===te.trigger||"row"===ee.trigger||"radio"===n.type&&"cell"===ee.trigger||"row"===le.trigger||"checkbox"===n.type&&"cell"===le.trigger||"row"===re.trigger||n.treeNode&&"cell"===re.trigger)&&(L.click=e=>{l.triggerCellClickEvent(e,Y)}),(se||p["cell-dblclick"])&&(L.dblclick=e=>{l.triggerCellDblclickEvent(e,Y)}),Q.length){h=(0,_util.mergeBodyMethod)(Q,U,Se);if(h){var{rowspan:t,colspan:r}=h;if(!t||!r)return null;1<t&&(T.rowspan=t),1<r&&(T.colspan=r)}}else if(Z){var{rowspan:a=1,colspan:i=1}=Z(Y)||{};if(!a||!i)return null;1<a&&(T.rowspan=a),1<i&&(T.colspan=i)}!(D=D&&Q&&(1<T.colspan||1<T.rowspan)?!1:D)&&x&&(C||he)&&(y.showStatus||y.showUpdateStatus)&&(_e=l.isUpdateByRow(s,n.field));w=[];D&&X&&z?w.push(e("div",{class:["vxe-cell",{"c--title":I,"c--tooltip":M,"c--ellipsis":$}],style:{maxHeight:m&&(v||E)?`${v||E}px`:""}})):(w.push(...renderLine(e,H,l,Y),e("div",{class:["vxe-cell",{"c--title":I,"c--tooltip":M,"c--ellipsis":$}],style:{maxHeight:m&&(v||E)?`${v||E}px`:""},attrs:{title:I?l.getCellLabel(s,n):null}},n.renderCell(e,Y))),j&&O&&(o=O.rule,u=xe?xe.valid:null,g=Object.assign(Object.assign(Object.assign({},Y),O),{rule:O}),w.push(e("div",{class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(f.className,O)],style:o&&o.maxWidth?{width:o.maxWidth+"px"}:null},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[u?l.callSlot(u,g,e):[e("span",{class:"vxe-cell--valid-error-msg"},O.content)]])]))));let Oe="";c=V?A.height:0,m?v||E?Oe=`${v||E}px`:z||(Oe=`${c||E||18}px`):Oe=`${c||E||18}px`,oe&&de.area&&S&&((d||!0!==S)&&S!==n.field||w.push(e("div",{class:"vxe-cell--area-status"}))),_=!n.resizeWidth&&("auto"===n.minWidth||"auto"===n.width);return e("td",{class:["vxe-body--column",n.id,{["col--"+me]:me,["col--vertical-"+ye]:ye,["col--"+ge]:ge,"col--last":d===q.length-1,"col--tree-node":we,"col--edit":Te,"col--ellipsis":m,"fixed--width":!_,"fixed--hidden":D,"is--drag-cell":k&&(pe||ue||!B),"is--drag-disabled":Ee,"col--dirty":_e,"col--active":x&&Te&&ae.row===s&&(ae.column===n||"row"===y.mode),"col--valid-error":!!O,"col--current":K===n},(0,_utils.getClass)(fe,Y),(0,_utils.getClass)(ve,Y),(0,_utils.getClass)(G,Y)],key:F||N||W||ne.useKey||b.useKey||ne.drag?n.id:d,attrs:T,style:Object.assign({height:Oe},_xeUtils.default.isFunction(be)?be(Y):be,_xeUtils.default.isFunction(J)?J(Y):J),on:L},w)}function renderRows(v,w,x,y,f,b){let S=x.computeColumnOpts,T=x.computeColumnDragOpts,{stripe:_,rowKey:C,highlightHoverRow:$,rowClassName:E,rowStyle:O,editConfig:R,showOverflow:D,treeConfig:I,treeOpts:M,expandOpts:L,editOpts:Y,treeExpandedMaps:k,scrollXLoad:H,scrollYLoad:B,rowExpandedMaps:U,radioOpts:q,checkboxOpts:A,expandColumn:F,hasFixedColumn:N,fullAllDataRowIdData:W,rowOpts:V,pendingRowMaps:P,isDragColMove:X}=x,{transform:z,seqMode:j}=M,K=M.children||M.childrenField,G=[];return f.forEach((t,r)=>{var e={};let o,s=(o=x.getRowIndex(t),(V.isHover||$)&&(e.mouseenter=e=>{isVMScrollProcess(x)||x.triggerHoverEvent(e,{row:t,rowIndex:o})},e.mouseleave=()=>{isVMScrollProcess(x)||x.clearHoverRow()}),(0,_util.getRowid)(x,t));var l=W[s];let a=0,i=-1,n=0;l&&(a=l.level,i=I&&z&&"increasing"===j?l._index+1:l.seq,n=l._index);var l={$table:x,seq:i,rowid:s,fixed:y,type:renderType,level:a,row:t,rowIndex:o,$rowIndex:r},d=F&&!!U[s];let c=!1,p=[],u=!1;R&&(u=x.isInsertByRow(t)),!I||B||z||(p=t[K],c=p&&p.length&&!!k[s]),!V.drag||I&&!z||(e.dragstart=x.handleRowDragDragstartEvent,e.dragend=x.handleRowDragDragendEvent,e.dragover=x.handleRowDragDragoverEvent);var g,h=["vxe-body--row",I?"row--level-"+a:"",{"row--stripe":_&&(n+1)%2==0,"is--new":u,"is--expand-row":d,"is--expand-tree":c,"row--new":u&&(Y.showStatus||Y.showInsertStatus),"row--radio":q.highlight&&x.selectRadioRow===t,"row--checked":A.highlight&&x.isCheckedByCheckboxRow(t),"row--pending":!!P[s]},E?_xeUtils.default.isFunction(E)?E(l):E:""],m=b.map((e,l)=>renderColumn(v,w,x,i,s,y,a,t,o,r,n,e,l,b,f));G.push(S.drag&&T.animation?v("transition-group",{props:{tag:"tr",name:"vxe-header--col-list"+(X?"":"-disabled")},class:h,attrs:{rowid:s},style:O?_xeUtils.default.isFunction(O)?O(l):O:null,key:C||H||B||V.useKey||V.drag||S.drag||I?s:r,nativeOn:e},m):v("tr",{class:h,attrs:{rowid:s},style:O?_xeUtils.default.isFunction(O)?O(l):O:null,key:C||H||B||V.useKey||V.drag||S.drag||I?s:r,on:e},m)),d&&({height:h,padding:l}=L,m={},d=(h&&(m.height=h+"px"),I&&(m.paddingLeft=a*M.indent+30+"px"),F).showOverflow,d=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?D:d,g={$table:x,seq:i,column:F,fixed:y,type:renderType,level:a,row:t,rowIndex:o,$rowIndex:r},G.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+s,style:O?_xeUtils.default.isFunction(O)?O(g):O:null,on:e},[v("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":y&&!N,"col--ellipsis":d},attrs:{colspan:b.length}},[v("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":h},style:m},[F.renderData(v,g)])])]))),c&&G.push(...renderRows(v,w,x,y,p,b))}),G}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted(){var{$parent:e,$el:l,$refs:t,fixedType:r}=this,e=e.elemStore,r=`${r||"main"}-body-`;e[r+"wrapper"]=l,e[r+"table"]=t.table,e[r+"colgroup"]=t.colgroup,e[r+"list"]=t.tbody,e[r+"xSpace"]=t.xSpace,e[r+"ySpace"]=t.ySpace,e[r+"emptyBlock"]=t.emptyBlock},beforeDestroy(){clearTimeout(this.wheelTime)},destroyed(){var{$parent:e,fixedType:l}=this,e=e.elemStore,l=`${l||"main"}-body-`;e[l+"wrapper"]=null,e[l+"table"]=null,e[l+"colgroup"]=null,e[l+"list"]=null,e[l+"xSpace"]=null,e[l+"ySpace"]=null,e[l+"emptyBlock"]=null},render(t){let l=this.$parent;var e=l,r=l,o=l,{tId:s,$scopedSlots:a}=l;let{fixedColumn:i,fixedType:n,tableColumn:d}=this;var{showOverflow:c,spanMethod:p,footerSpanMethod:u,mouseConfig:g}=e,{isGroup:r,tableData:h,scrollXLoad:m,scrollYLoad:v,isAllOverflow:w,isDragRowMove:x,expandColumn:y,dragRow:f,dragCol:b}=r,{visibleColumn:o,fullAllDataRowIdData:S,fullColumnIdData:T}=o,_=l.computeRowOpts,C=l.computeSYOpts,$=l.computeEmptyOpts,E=l.computeMouseOpts,O=l.computeRowDragOpts;let R=h,D=d;n&&(D=!(m||v||c&&w)||y||p||u?o:i||[]),v&&f&&2<R.length&&(h=S[(0,_util.getRowid)(l,f)])&&(c=h._index,w=R[0],y=R[R.length-1],p=S[(0,_util.getRowid)(l,w)],u=S[(0,_util.getRowid)(l,y)],p)&&u&&(o=p._index,v=u._index,c<o?R=[f].concat(R):v<c&&(R=R.concat([f]))),n||r||m&&b&&2<D.length&&(h=T[b.id])&&(w=h._index,S=D[0],y=D[D.length-1],p=T[S.id],u=T[y.id],p)&&u&&(o=p._index,v=u._index,w<o?D=[b].concat(D):v<w&&(D=D.concat([b])));let I;I=a.empty?a.empty.call(this,{$table:l,$grid:l.xegrid},t):(f=(c=$.name?renderer.get($.name):null)?c.renderTableEmpty||c.renderTableEmptyView||c.renderEmpty:null)?(0,_vn.getSlotVNs)(f.call(this,t,$,{$table:l})):e.emptyText||getI18n("vxe.table.emptyText");r={scroll:this.scrollEvent};return"wheel"===C.mode&&(r.wheel=this.wheelEvent),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",n?`fixed-${n}--wrapper`:"body--wrapper"],attrs:{xid:s},on:r},[n?renderEmptyElement(l):t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:s,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},D.map((e,l)=>t("col",{attrs:{name:e.id},key:l}))),_.drag&&O.animation?t("transition-group",{props:{tag:"tbody",name:"vxe-body--row-list"+(x?"":"-disabled")}},renderRows(t,this,l,n,R,D)):t("tbody",{ref:"tbody"},renderRows(t,this,l,n,R,D))]),t("div",{class:"vxe-table--checkbox-range"}),g&&E.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},E.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){l.triggerCellAreaExtendMousedownEvent&&l.triggerCellAreaExtendMousedownEvent(e,{$table:l,fixed:n,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):renderEmptyElement(l),n?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},I)])])},methods:{scrollEvent(e){var l,t,r,o,s,a=this.$parent,i=a,n=this.fixedType,{lastScrollTop:d,lastScrollLeft:c,inVirtualScroll:p,inBodyScroll:u,bodyScrollType:g,inFooterScroll:h}=i;p||h||u&&g!==n||({tableHeader:p,tableBody:h,leftBody:u,rightBody:g,tableFooter:l}=a.$refs,o=this.$el,p=p?p.$el:null,l=l?l.$el:null,(h=h?h.$el:null)&&(u=u?u.$el:null,g=g?g.$el:null,t=a.$refs.refScrollXHandleElem,r=a.$refs.refScrollYHandleElem,o=o.scrollTop,c=(s=h.scrollLeft)!==c,d=o!==d,i.inBodyScroll=!0,i.bodyScrollType=n,d&&(u&&"left"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(g,o)):g&&"right"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(u,o)):((0,_dom.setScrollTop)(u,o),(0,_dom.setScrollTop)(g,o)),(0,_dom.setScrollTop)(r,o),a.triggerScrollYEvent(e)),c&&((0,_dom.setScrollLeft)(t,s),(0,_dom.setScrollLeft)(p,s),(0,_dom.setScrollLeft)(l,s),a.triggerScrollXEvent(e)),a.handleScrollEvent(e,d,c,o,s,{type:renderType,fixed:n})))},handleWheel(i,n,e,d,c){let p=this.$parent;var{$refs:l,elemStore:t,scrollYLoad:r,scrollXLoad:o}=p,{tableBody:l,leftBody:s,rightBody:a}=l;let u=l.$el,g=s?s.$el:null,h=a?a.$el:null;l=this.isPrevWheelTop===n?Math.max(0,this.wheelYSize-this.wheelYTotal):0,s=t["main-body-ySpace"],a=t["main-body-xSpace"];let m=(r&&s?s:u).clientHeight,v=(o&&a?a:u).clientWidth,w=(this.isPrevWheelTop=n,this.wheelYSize=Math.abs(n?e-l:e+l),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),()=>{let{fixedType:e,wheelYTotal:l,wheelYSize:t,wheelYInterval:r}=this;var o,s,a;l<t&&(t<(l+=r=Math.max(5,Math.floor(1.5*r)))&&(r-=l-t),{scrollTop:a,clientHeight:o,scrollHeight:s}=u,a=a+r*(n?-1:1),u.scrollTop=a,g&&(g.scrollTop=a),h&&(h.scrollTop=a),(n?a<s-o:0<=a)&&(this.wheelTime=setTimeout(w,10)),this.wheelYTotal=l,this.wheelYInterval=r,p.emitEvent("scroll",{type:renderType,fixed:e,scrollTop:u.scrollTop,scrollLeft:u.scrollLeft,scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,bodyHeight:m,bodyWidth:v,isX:d,isY:c},i))});w()},wheelEvent(e){var{deltaY:l,deltaX:t}=e,{$el:r,$parent:o}=this,{$refs:s,highlightHoverRow:a,scrollYLoad:i,lastScrollTop:n,lastScrollLeft:d,rowOpts:c}=o,s=s.tableBody,s=s.$el,p=l<0;(p?r.scrollTop<=0:r.scrollTop>=r.scrollHeight-r.clientHeight)||(r=r.scrollTop+l,t=(s=s.scrollLeft+t)!==d,(d=r!==n)&&(e.preventDefault(),o.lastScrollTop=r,o.lastScrollLeft=s,o.lastScrollTime=Date.now(),(c.isHover||a)&&o.clearHoverRow(),this.handleWheel(e,p,l,t,d),i)&&o.triggerScrollYEvent(e))}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";function isVMScrollProcess(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,r){var{row:o,column:s}=r,a=t.afterFullData,i=t.treeConfig,n=t.computeTreeOpts,{slots:s,treeNode:d}=s,c=t.fullAllDataRowIdData;if(s&&s.line)return t.callSlot(s.line,r,e);s=c[(0,_util.getRowid)(t,o)];let p=0,u=null;s&&(p=s.level,u=s.items[s._index-1]);c=t.eqRow(a[0],o);return i&&d&&(n.showLine||n.line)?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:`${c?1:(0,_util.calcTreeLine)(r,u)}px`,left:p*n.indent+(p?2-(0,_util.getOffsetSize)(t):0)+16+"px"}})])]:[]}function renderColumn(e,H,l,t,r,o,B,s,a,i,U,n,d,q,c){var{$listeners:p,fullAllDataRowIdData:A,afterFullData:u,tableData:g,height:h,columnKey:F,overflowX:m,sYOpts:v,scrollXLoad:N,scrollYLoad:W,isCalcCellHeight:V,highlightCurrentRow:P,showOverflow:X,isAllOverflow:z,align:j,currentColumn:K,cellClassName:G,cellStyle:J,mergeList:Q,spanMethod:Z,radioOpts:ee,checkboxOpts:le,expandOpts:te,treeOpts:re,tooltipOpts:w,mouseConfig:oe,editConfig:x,editOpts:y,editRules:se,validOpts:f,editStore:ae,tooltipConfig:ie,rowOpts:b,columnOpts:ne,mouseOpts:de,areaOpts:S,validErrorMaps:T}=l,_=l.computeRowDragOpts,{disabledMethod:ce,isCrossDrag:pe,isPeerDrag:ue}=_,S=S.selectCellToRow,{type:ge,cellRender:he,editRender:C,align:me,showOverflow:$,className:ve,treeNode:we,slots:xe}=n,ye=l.computeCellOpts.verticalAlign,ae=ae.actived,v=v.rHeight,E=b.height,O=C||he,O=O?renderer.get(O.name):null,fe=O?O.tableCellClassName||O.cellClassName:"",be=O?O.tableCellStyle||O.cellStyle:"";let R=w.showAll||w.enabled;var w=l.getColumnIndex(n),Se=l.getVTColumnIndex(n),Te=(0,_utils.isEnableConf)(C);let D=o?n.fixed!==o:n.fixed&&m;m=_xeUtils.default.isUndefined($)||_xeUtils.default.isNull($)?X:$,$="ellipsis"===m;let I="title"===m,M=!0===m||"tooltip"===m;m=X||I||M||$;let _e;var L={},A=A[r],me=me||(O?O.tableCellAlign:"")||j,O=T[r+":"+n.id],j=se&&f.showMessage&&("default"===f.message?h||1<g.length:"inline"===f.message),T={colid:n.id};let Ce=p["cell-mouseenter"],$e=p["cell-mouseleave"];se=C&&x&&"dblclick"===y.trigger;let Y={$table:l,$grid:l.$xegrid,isEdit:!1,seq:t,rowid:r,row:s,rowIndex:a,$rowIndex:i,_rowIndex:U,column:n,columnIndex:w,$columnIndex:d,_columnIndex:Se,fixed:o,type:renderType,isHidden:D,level:B,visibleData:u,data:g,items:c},k=!1,Ee=!1;if((k=b.drag?"row"===_.trigger||n.dragSort&&"cell"===_.trigger:k)&&(Ee=!(!ce||!ce(Y))),(I||M||R||Ce||ie)&&(L.mouseenter=e=>{isVMScrollProcess(l)||(I?(0,_dom.updateCellTitle)(e.currentTarget,n):(M||R)&&l.triggerBodyTooltipEvent(e,Y),Ce&&l.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},Y),e))}),(M||R||$e||ie)&&(L.mouseleave=e=>{isVMScrollProcess(l)||((M||R)&&l.handleTargetLeaveEvent(e),$e&&l.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},Y),e))}),(k||le.range||oe)&&(L.mousedown=e=>{l.triggerCellMousedownEvent(e,Y)}),k&&(L.mouseup=l.triggerCellMouseupEvent),(b.isCurrent||P||p["cell-click"]||C&&x||"row"===te.trigger||"cell"===te.trigger||"row"===ee.trigger||"radio"===n.type&&"cell"===ee.trigger||"row"===le.trigger||"checkbox"===n.type&&"cell"===le.trigger||"row"===re.trigger||n.treeNode&&"cell"===re.trigger)&&(L.click=e=>{l.triggerCellClickEvent(e,Y)}),(se||p["cell-dblclick"])&&(L.dblclick=e=>{l.triggerCellDblclickEvent(e,Y)}),Q.length){h=(0,_util.mergeBodyMethod)(Q,U,Se);if(h){var{rowspan:t,colspan:r}=h;if(!t||!r)return null;1<t&&(T.rowspan=t),1<r&&(T.colspan=r)}}else if(Z){var{rowspan:a=1,colspan:i=1}=Z(Y)||{};if(!a||!i)return null;1<a&&(T.rowspan=a),1<i&&(T.colspan=i)}!(D=D&&Q&&(1<T.colspan||1<T.rowspan)?!1:D)&&x&&(C||he)&&(y.showStatus||y.showUpdateStatus)&&(_e=l.isUpdateByRow(s,n.field));w=[];D&&X&&z?w.push(e("div",{class:["vxe-cell",{"c--title":I,"c--tooltip":M,"c--ellipsis":$}],style:{maxHeight:m&&(v||E)?`${v||E}px`:""}})):(w.push(...renderLine(e,H,l,Y),e("div",{class:["vxe-cell",{"c--title":I,"c--tooltip":M,"c--ellipsis":$}],style:{maxHeight:m&&(v||E)?`${v||E}px`:""},attrs:{title:I?l.getCellLabel(s,n):null}},n.renderCell(e,Y))),j&&O&&(o=O.rule,u=xe?xe.valid:null,g=Object.assign(Object.assign(Object.assign({},Y),O),{rule:O}),w.push(e("div",{class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(f.className,O)],style:o&&o.maxWidth?{width:o.maxWidth+"px"}:null},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[u?l.callSlot(u,g,e):[e("span",{class:"vxe-cell--valid-error-msg"},O.content)]])]))));let Oe="";c=V?A.height:0,m?v||E?Oe=`${v||E}px`:z||(Oe=`${c||E||18}px`):Oe=`${c||E||18}px`,oe&&de.area&&S&&((d||!0!==S)&&S!==n.field||w.push(e("div",{class:"vxe-cell--area-status"}))),_=!n.resizeWidth&&("auto"===n.minWidth||"auto"===n.width);return e("td",{class:["vxe-body--column",n.id,{["col--"+me]:me,["col--vertical-"+ye]:ye,["col--"+ge]:ge,"col--last":d===q.length-1,"col--tree-node":we,"col--edit":Te,"col--ellipsis":m,"fixed--width":!_,"fixed--hidden":D,"is--drag-cell":k&&(pe||ue||!B),"is--drag-disabled":Ee,"col--dirty":_e,"col--active":x&&Te&&ae.row===s&&(ae.column===n||"row"===y.mode),"col--valid-error":!!O,"col--current":K===n},(0,_utils.getClass)(fe,Y),(0,_utils.getClass)(ve,Y),(0,_utils.getClass)(G,Y)],key:F||N||W||ne.useKey||b.useKey||ne.drag?n.id:d,attrs:T,style:Object.assign({height:Oe},_xeUtils.default.isFunction(be)?be(Y):be,_xeUtils.default.isFunction(J)?J(Y):J),on:L},w)}function renderRows(v,w,x,y,f,b){let S=x.computeColumnOpts,T=x.computeColumnDragOpts,{stripe:_,rowKey:C,highlightHoverRow:$,rowClassName:E,rowStyle:O,editConfig:R,showOverflow:D,treeConfig:I,treeOpts:M,expandOpts:L,editOpts:Y,treeExpandedMaps:k,scrollXLoad:H,scrollYLoad:B,rowExpandedMaps:U,radioOpts:q,checkboxOpts:A,expandColumn:F,hasFixedColumn:N,fullAllDataRowIdData:W,rowOpts:V,pendingRowMaps:P,isDragColMove:X}=x,{transform:z,seqMode:j}=M,K=M.children||M.childrenField,G=[];return f.forEach((t,r)=>{var e={};let o,s=(o=x.getRowIndex(t),(V.isHover||$)&&(e.mouseenter=e=>{isVMScrollProcess(x)||x.triggerHoverEvent(e,{row:t,rowIndex:o})},e.mouseleave=()=>{isVMScrollProcess(x)||x.clearHoverRow()}),(0,_util.getRowid)(x,t));var l=W[s];let a=0,i=-1,n=0;l&&(a=l.level,i=I&&z&&"increasing"===j?l._index+1:l.seq,n=l._index);var l={$table:x,seq:i,rowid:s,fixed:y,type:renderType,level:a,row:t,rowIndex:o,$rowIndex:r},d=F&&!!U[s];let c=!1,p=[],u=!1;R&&(u=x.isInsertByRow(t)),!I||B||z||(p=t[K],c=p&&p.length&&!!k[s]),!V.drag||I&&!z||(e.dragstart=x.handleRowDragDragstartEvent,e.dragend=x.handleRowDragDragendEvent,e.dragover=x.handleRowDragDragoverEvent);var g,h=["vxe-body--row",I?"row--level-"+a:"",{"row--stripe":_&&(n+1)%2==0,"is--new":u,"is--expand-row":d,"is--expand-tree":c,"row--new":u&&(Y.showStatus||Y.showInsertStatus),"row--radio":q.highlight&&x.selectRadioRow===t,"row--checked":A.highlight&&x.isCheckedByCheckboxRow(t),"row--pending":!!P[s]},E?_xeUtils.default.isFunction(E)?E(l):E:""],m=b.map((e,l)=>renderColumn(v,w,x,i,s,y,a,t,o,r,n,e,l,b,f));G.push(S.drag&&T.animation?v("transition-group",{props:{tag:"tr",name:"vxe-header--col-list"+(X?"":"-disabled")},class:h,attrs:{rowid:s},style:O?_xeUtils.default.isFunction(O)?O(l):O:null,key:C||H||B||V.useKey||V.drag||S.drag||I?s:r,nativeOn:e},m):v("tr",{class:h,attrs:{rowid:s},style:O?_xeUtils.default.isFunction(O)?O(l):O:null,key:C||H||B||V.useKey||V.drag||S.drag||I?s:r,on:e},m)),d&&({height:h,padding:l}=L,m={},d=(h&&(m.height=h+"px"),I&&(m.paddingLeft=a*M.indent+30+"px"),F).showOverflow,d=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?D:d,g={$table:x,seq:i,column:F,fixed:y,type:renderType,level:a,row:t,rowIndex:o,$rowIndex:r},G.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+s,style:O?_xeUtils.default.isFunction(O)?O(g):O:null,on:e},[v("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":y&&!N,"col--ellipsis":d},attrs:{colspan:b.length}},[v("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":h},style:m},[F.renderData(v,g)])])]))),c&&G.push(...renderRows(v,w,x,y,p,b))}),G}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted(){var{$parent:e,$el:l,$refs:t,fixedType:r}=this,e=e.elemStore,r=`${r||"main"}-body-`;e[r+"wrapper"]=l,e[r+"table"]=t.table,e[r+"colgroup"]=t.colgroup,e[r+"list"]=t.tbody,e[r+"xSpace"]=t.xSpace,e[r+"ySpace"]=t.ySpace,e[r+"emptyBlock"]=t.emptyBlock},beforeDestroy(){clearTimeout(this.wheelTime)},destroyed(){var{$parent:e,fixedType:l}=this,e=e.elemStore,l=`${l||"main"}-body-`;e[l+"wrapper"]=null,e[l+"table"]=null,e[l+"colgroup"]=null,e[l+"list"]=null,e[l+"xSpace"]=null,e[l+"ySpace"]=null,e[l+"emptyBlock"]=null},render(t){let l=this.$parent;var e=l,r=l,o=l,{tId:s,$scopedSlots:a}=l;let{fixedColumn:i,fixedType:n,tableColumn:d}=this;var{showOverflow:c,spanMethod:p,footerSpanMethod:u,mouseConfig:g}=e,{isGroup:r,tableData:h,scrollXLoad:m,scrollYLoad:v,isAllOverflow:w,isDragRowMove:x,expandColumn:y,dragRow:f,dragCol:b}=r,{visibleColumn:o,fullAllDataRowIdData:S,fullColumnIdData:T}=o,_=l.computeRowOpts,C=l.computeSYOpts,$=l.computeEmptyOpts,E=l.computeMouseOpts,O=l.computeRowDragOpts;let R=h,D=d;n&&(D=!(m||v||c&&w)||y||p||u?o:i||[]),v&&f&&2<R.length&&(h=S[(0,_util.getRowid)(l,f)])&&(c=h._index,w=R[0],y=R[R.length-1],p=S[(0,_util.getRowid)(l,w)],u=S[(0,_util.getRowid)(l,y)],p)&&u&&(o=p._index,v=u._index,c<o?R=[f].concat(R):v<c&&(R=R.concat([f]))),n||r||m&&b&&2<D.length&&(h=T[b.id])&&(w=h._index,S=D[0],y=D[D.length-1],p=T[S.id],u=T[y.id],p)&&u&&(o=p._index,v=u._index,w<o?D=[b].concat(D):v<w&&(D=D.concat([b])));let I;I=a.empty?a.empty.call(this,{$table:l,$grid:l.xegrid},t):(f=(c=$.name?renderer.get($.name):null)?c.renderTableEmpty||c.renderTableEmptyView||c.renderEmpty:null)?(0,_vn.getSlotVNs)(f.call(this,t,$,{$table:l})):e.emptyText||getI18n("vxe.table.emptyText");r={scroll:this.scrollEvent};return"wheel"===C.mode&&(r.wheel=this.wheelEvent),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",n?`fixed-${n}--wrapper`:"body--wrapper"],attrs:{xid:s},on:r},[n?renderEmptyElement(l):t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:s,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},D.map((e,l)=>t("col",{attrs:{name:e.id},key:l}))),_.drag&&O.animation?t("transition-group",{props:{tag:"tbody",name:"vxe-body--row-list"+(x?"":"-disabled")}},renderRows(t,this,l,n,R,D)):t("tbody",{ref:"tbody"},renderRows(t,this,l,n,R,D))]),t("div",{class:"vxe-table--checkbox-range"}),g&&E.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},E.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){l.triggerCellAreaExtendMousedownEvent&&l.triggerCellAreaExtendMousedownEvent(e,{$table:l,fixed:n,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):renderEmptyElement(l),n?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},I)])])},methods:{scrollEvent(e){var l,t,r,o,s,a=this.$parent,i=a,n=this.fixedType,{lastScrollTop:d,lastScrollLeft:c,inVirtualScroll:p,inBodyScroll:u,bodyScrollType:g,inFooterScroll:h}=i;p||h||u&&g!==n||({tableHeader:p,tableBody:h,leftBody:u,rightBody:g,tableFooter:l}=a.$refs,o=this.$el,p=p?p.$el:null,l=l?l.$el:null,(h=h?h.$el:null)&&(u=u?u.$el:null,g=g?g.$el:null,t=a.$refs.refScrollXHandleElem,r=a.$refs.refScrollYHandleElem,o=o.scrollTop,c=(s=h.scrollLeft)!==c,d=o!==d,i.inBodyScroll=!0,i.bodyScrollType=n,d&&(u&&"left"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(g,o)):g&&"right"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(u,o)):((0,_dom.setScrollTop)(u,o),(0,_dom.setScrollTop)(g,o)),(0,_dom.setScrollTop)(r,o),a.triggerScrollYEvent(e)),c&&((0,_dom.setScrollLeft)(t,s),(0,_dom.setScrollLeft)(p,s),(0,_dom.setScrollLeft)(l,s),a.triggerScrollXEvent(e)),a.handleScrollEvent(e,d,c,o,s,{type:renderType,fixed:n})))},handleWheel(i,n,e,d,c){let p=this.$parent;var{$refs:l,elemStore:t,scrollYLoad:r,scrollXLoad:o}=p,{tableBody:l,leftBody:s,rightBody:a}=l;let u=l.$el,g=s?s.$el:null,h=a?a.$el:null;l=this.isPrevWheelTop===n?Math.max(0,this.wheelYSize-this.wheelYTotal):0,s=t["main-body-ySpace"],a=t["main-body-xSpace"];let m=(r&&s?s:u).clientHeight,v=(o&&a?a:u).clientWidth,w=(this.isPrevWheelTop=n,this.wheelYSize=Math.abs(n?e-l:e+l),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),()=>{let{fixedType:e,wheelYTotal:l,wheelYSize:t,wheelYInterval:r}=this;var o,s,a;l<t&&(t<(l+=r=Math.max(5,Math.floor(1.5*r)))&&(r-=l-t),{scrollTop:a,clientHeight:o,scrollHeight:s}=u,a=a+r*(n?-1:1),u.scrollTop=a,g&&(g.scrollTop=a),h&&(h.scrollTop=a),(n?a<s-o:0<=a)&&(this.wheelTime=setTimeout(w,10)),this.wheelYTotal=l,this.wheelYInterval=r,p.emitEvent("scroll",{type:renderType,fixed:e,scrollTop:u.scrollTop,scrollLeft:u.scrollLeft,scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,bodyHeight:m,bodyWidth:v,isX:d,isY:c},i))});w()},wheelEvent(e){var{deltaY:l,deltaX:t}=e,{$el:r,$parent:o}=this,{$refs:s,highlightHoverRow:a,scrollYLoad:i,lastScrollTop:n,lastScrollLeft:d,rowOpts:c}=o,s=s.tableBody,s=s.$el,p=l<0;(p?r.scrollTop<=0:r.scrollTop>=r.scrollHeight-r.clientHeight)||(r=r.scrollTop+l,t=(s=s.scrollLeft+t)!==d,(d=r!==n)&&(e.preventDefault(),o.lastScrollTop=r,o.lastScrollLeft=s,o.lastScrollTime=Date.now(),(c.isHover||a)&&o.clearHoverRow(),this.handleWheel(e,p,l,t,d),i)&&o.triggerScrollYEvent(e))}}};
@@ -64,6 +64,7 @@ function renderCellDragIcon(h, params) {
64
64
  const {
65
65
  $table
66
66
  } = params;
67
+ const tableSlots = $table.$scopedSlots;
67
68
  const tableProps = $table;
68
69
  const {
69
70
  dragConfig
@@ -76,6 +77,7 @@ function renderCellDragIcon(h, params) {
76
77
  } = rowDragOpts;
77
78
  const rDisabledMethod = disabledMethod || (dragConfig ? dragConfig.rowDisabledMethod : null);
78
79
  const isDisabled = rDisabledMethod && rDisabledMethod(params);
80
+ const rowDragIconSlot = tableSlots.rowDragIcon || tableSlots['row-drag-icon'];
79
81
  const ons = {};
80
82
  if (trigger !== 'cell') {
81
83
  ons.mousedown = evnt => {
@@ -91,7 +93,7 @@ function renderCellDragIcon(h, params) {
91
93
  'is--disabled': isDisabled
92
94
  }],
93
95
  on: ons
94
- }, [h('i', {
96
+ }, rowDragIconSlot ? $table.callSlot(rowDragIconSlot, params, h) : [h('i', {
95
97
  class: icon || (dragConfig ? dragConfig.rowIcon : '') || getIcon().TABLE_DRAG_ROW
96
98
  })]);
97
99
  }
@@ -135,6 +137,10 @@ function renderHeaderCellDragIcon(h, params) {
135
137
  $table,
136
138
  column
137
139
  } = params;
140
+ const tableSlots = $table.$scopedSlots;
141
+ const {
142
+ slots
143
+ } = column;
138
144
  const columnOpts = $table.computeColumnOpts;
139
145
  const columnDragOpts = $table.computeColumnDragOpts;
140
146
  const {
@@ -149,6 +155,7 @@ function renderHeaderCellDragIcon(h, params) {
149
155
  if (columnOpts.drag && showIcon && (!visibleMethod || visibleMethod(params))) {
150
156
  if (!column.fixed && (isPeerDrag || isCrossDrag || !column.parentId)) {
151
157
  const isDisabled = disabledMethod && disabledMethod(params);
158
+ const columnDragIconSlot = (slots ? slots.columnDragIcon || slots['column-drag-icon'] : null) || tableSlots.columnDragIcon || tableSlots['column-drag-icon'];
152
159
  const ons = {};
153
160
  if (trigger !== 'cell') {
154
161
  ons.mousedown = evnt => {
@@ -164,7 +171,7 @@ function renderHeaderCellDragIcon(h, params) {
164
171
  'is--disabled': isDisabled
165
172
  }],
166
173
  on: ons
167
- }, [h('i', {
174
+ }, columnDragIconSlot ? $table.callSlot(columnDragIconSlot, params, h) : [h('i', {
168
175
  class: icon || getIcon().TABLE_DRAG_COLUMN
169
176
  })]);
170
177
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:r,column:t}=l,n=t.titlePrefix||t.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.icon||getIcon().TABLE_TITLE_PREFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderTitleSuffixIcon(e,l){let{$table:r,column:t}=l,n=t.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.icon||getIcon().TABLE_TITLE_SUFFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderCellDragIcon(e,l){let r=l.$table;var t=r.dragConfig,{icon:n,trigger:a,disabledMethod:d}=r.computeRowDragOpts,d=d||(t?t.rowDisabledMethod:null);let o=d&&d(l);d={};return"cell"!==a&&(d.mousedown=e=>{o||r.handleCellDragMousedownEvent(e,l)},d.mouseup=r.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":o}],on:d},[e("i",{class:n||(t?t.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:a}=l,n=n.dragSort,{treeConfig:d,dragConfig:o}=t,s=t.computeRowOpts,{showIcon:t,isPeerDrag:i,isCrossDrag:c,visibleMethod:u}=t.computeRowDragOpts,u=u||(o?o.rowVisibleMethod:null),r=_xeUtils.default.isArray(r)?r:[r];return!(n&&s.drag&&(t||o&&o.showRowIcon))||u&&!u(l)||d&&!i&&!c&&a||r.unshift(renderCellDragIcon(e,l)),r}function renderHeaderCellDragIcon(e,r){let{$table:t,column:l}=r;var n=t.computeColumnOpts,{showIcon:a,icon:d,trigger:o,isPeerDrag:s,isCrossDrag:i,visibleMethod:c,disabledMethod:u}=t.computeColumnDragOpts;if(!n.drag||!a||c&&!c(r)||l.fixed||!s&&!i&&l.parentId)return renderEmptyElement(t);{let l=u&&u(r);n={};return"cell"!==o&&(n.mousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},n.mouseup=t.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:n},[e("i",{class:d||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,r){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(r)?r:[r],renderTitleSuffixIcon(e,l)]}function renderTitleContent(e,l,r){let{$table:t,column:n}=l;var{type:a,showHeaderOverflow:d}=n,o=t;let s=t;o=o.showHeaderOverflow;let i=t.computeTooltipOpts.showAll;o=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?o:d;let c="title"===o,u=!0===o||"tooltip"===o;d={};return(c||u||i)&&(d.mouseenter=e=>{s._isResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||i)&&t.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(d.mouseleave=e=>{s._isResize||(u||i)&&t.handleTargetLeaveEvent(e)}),["html"===a&&_xeUtils.default.isString(r)?e("span",{class:"vxe-cell--title",domProps:{innerHTML:r},on:d}):e("span",{class:"vxe-cell--title",on:d},(0,_vn.getSlotVNs)(r))]}function formatFooterLabel(e,l){var r,t;return _xeUtils.default.isFunction(e)?""+e(l):(t=(t=(r=_xeUtils.default.isArray(e))?formats.get(e[0]):formats.get(e))?t.tableFooterCellFormatMethod:null)?""+(r?t(l,...e.slice(1)):t(l)):""}function getFooterContent(e,l){var{$table:r,column:t,_columnIndex:n,row:a,items:d}=l,{slots:o,editRender:s,cellRender:i,footerFormatter:c}=t,s=s||i;if(o&&o.footer)return r.callSlot(o.footer,l,e);if(s){i=renderer.get(s.name),o=i?i.renderTableFooter||i.renderFooter:null;if(o)return(0,_vn.getSlotVNs)(o.call(r,e,s,l))}let u="";return _xeUtils.default.isArray(d)?u=d[n]:u=_xeUtils.default.get(a,t.field),[c?formatFooterLabel(c,{itemValue:u,column:t,row:a,items:d,_columnIndex:n}):(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e,l){var{column:r,$table:t}=l,n=t.editConfig,{type:r,treeNode:a,editRender:d}=r,o=t.computeCheckboxOpts,t=t.computeEditOpts;switch(r){case"seq":return a?Cell.renderTreeIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return a?Cell.renderTreeRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return o.checkField?a?Cell.renderTreeSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):a?Cell.renderTreeSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return a?Cell.renderTreeHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return n&&d?"cell"===t.mode?a?Cell.renderTreeCellEdit(e,l):Cell.renderCellEdit(e,l):a?Cell.renderTreeRowEdit(e,l):Cell.renderRowEdit(e,l):a?Cell.renderTreeCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:r,$table:t}=l,t=t.editConfig,{type:r,filters:n,sortable:a,editRender:d}=r;switch(r){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(n&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(n)return Cell.renderFilterHeader(e,l)}return t&&d?Cell.renderEditHeader(e,l):n&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):n?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e,l){var{$table:r,column:t}=l,{slots:n,editRender:a,cellRender:d}=t,a=a||d;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(a){d=renderer.get(a.name),n=d?d.renderTableHeader||d.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,a,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(t.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:r,row:t,column:n}=l,{slots:a,editRender:d,cellRender:o}=n,o=d||o;if(a&&a.default)return renderCellBaseVNs(e,l,r.callSlot(a.default,l,e));if(o){var a=renderer.get(o.name),s=a?a.renderTableDefault||a.renderDefault:null,a=a?a.renderTableCell||a.renderCell:null,a=d?a:s;if(a)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(a.call(r,e,o,Object.assign({$type:d?"edit":"cell"},l))))}s=r.getCellLabel(t,n),a=d?d.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[d&&(0,_utils.eqEmptyValue)(s)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(s,1))])])},renderTreeCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return[e("span",{class:"vxe-cell--item"},getFooterContent(e,l))]},renderTreeIcon(e,l,r){let{$table:t,isHidden:n}=l;var{treeExpandedMaps:a,treeExpandLazyLoadedMaps:d}=t,o=t.fullAllDataRowIdData,s=t.computeTreeOpts,{row:i,column:c,level:u}=l,c=c.slots,{indent:C,lazy:E,trigger:g,iconLoaded:p,showIcon:b,iconOpen:v,iconClose:x}=s,f=s.children||s.childrenField,s=s.hasChild||s.hasChildField,f=i[f],f=f&&f.length,c=c?c.icon:null;let m=!1,T=!1,h=!1,_=!1;var I={};return c?t.callSlot(c,l,e):(n||(c=(0,_util.getRowid)(t,i),T=!!a[c],E&&(a=o[c],h=!!d[c],m=i[s],_=!!a.treeLoaded)),g&&"default"!==g||(I.click=e=>{t.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:{paddingLeft:u*C+"px"}},[b&&(!E||_?f:f||m)?[e("div",{class:"vxe-tree--btn-wrapper",on:I},[e("i",{class:["vxe-tree--node-btn",h?p||getIcon().TABLE_TREE_LOADED:T?v||getIcon().TABLE_TREE_OPEN:x||getIcon().TABLE_TREE_CLOSE]})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderSeqHeader(e,l){var{$table:r,column:t}=l,n=t.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?r.callSlot(n.header,l,e):(0,_utils.formatText)(t.getTitle(),1)))},renderSeqCell(e,l){var{$table:r,column:t}=l,n=r.treeConfig,a=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=a.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(a.startIndex||0)+r,1))]))},renderTreeIndexCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:r,column:t}=l,n=t.slots,a=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,a?r.callSlot(a,l,e):[e("span",{class:"vxe-radio--label"},n?r.callSlot(n,l,e):(0,_utils.formatText)(t.getTitle(),1))]))},renderRadioCell(e,l){let{$table:r,column:t,isHidden:n}=l;var a=r.selectRadioRow,d=t.slots,{labelField:o,checkMethod:s,visibleMethod:i}=r.computeRadioOpts,c=l.row,u=d?d.default:null,d=d?d.radio:null,a=c===a;let C=!i||i({row:c}),E=!!s,g;n||(g={click(e){!E&&C&&r.triggerRadioRowEvent(e,l)}},s&&(E=!s({row:c})));i=Object.assign(Object.assign({},l),{checked:a,disabled:E,visible:C});return d?renderCellBaseVNs(e,l,r.callSlot(d,i,e)):(s=[],C&&s.push(e("span",{class:["vxe-radio--icon",a?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||o)&&s.push(e("span",{class:"vxe-radio--label"},u?r.callSlot(u,i,e):_xeUtils.default.get(c,o))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":a,"is--disabled":E}],on:g},s)]))},renderTreeRadioCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:r,column:t,isHidden:n}=l;let{isAllSelected:a,isIndeterminate:d}=r,o=r.computeIsAllCheckboxDisabled;var s=t.slots,i=s?s.header:null,s=s?s.title:null,c=r.computeCheckboxOpts,u=t.getTitle(),C={},E=(n||(C.click=e=>{o||r.triggerCheckAllEvent(e,!a)}),Object.assign(Object.assign({},l),{checked:a,disabled:o,indeterminate:d}));return i?renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,r.callSlot(i,E,e))):(c.checkStrictly?c.showHeader:!1!==c.showHeader)?renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,[e("span",{class:["vxe-cell--checkbox",{"is--checked":a,"is--disabled":o,"is--indeterminate":d}],attrs:{title:getI18n("vxe.table.allTitle")},on:C},[e("span",{class:["vxe-checkbox--icon",d?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(s||u?[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):u)]:[]))])):renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):u)]))},renderCheckboxCell(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var d=r.treeConfig,{selectCheckboxMaps:o,treeIndeterminateMaps:s}=r,{labelField:i,checkMethod:c,visibleMethod:u}=r.computeCheckboxOpts,C=n.slots,E=C?C.default:null,C=C?C.checkbox:null;let g=!1,p=!1,b=!u||u({row:t}),v=!!c;var x,u={},o=(a||(x=(0,_util.getRowid)(r,t),p=!!o[x],u.click=e=>{!v&&b&&r.triggerCheckRowEvent(e,l,!p)},c&&(v=!c({row:t})),d&&(g=!!s[x])),Object.assign(Object.assign({},l),{checked:p,disabled:v,visible:b,indeterminate:g}));return C?renderCellBaseVNs(e,l,r.callSlot(C,o,e)):(c=[],b&&c.push(e("span",{class:["vxe-checkbox--icon",g?getIcon().TABLE_CHECKBOX_INDETERMINATE:p?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(E||i)&&c.push(e("span",{class:"vxe-checkbox--label"},E?r.callSlot(E,o,e):_xeUtils.default.get(t,i))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":p,"is--disabled":v,"is--indeterminate":g,"is--hidden":!b}],on:u},c)]))},renderTreeSelectionCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var d=r.treeConfig,o=r.treeIndeterminateMaps,s=r.computeCheckboxOpts,{labelField:i,checkField:c,checkMethod:u,visibleMethod:C}=s,s=s.indeterminateField||s.halfField,E=n.slots,g=E?E.default:null,E=E?E.checkbox:null;let p=!1,b=!1,v=!C||C({row:t}),x=!!u;var f,C={},c=(a||(f=(0,_util.getRowid)(r,t),b=_xeUtils.default.get(t,c),C.click=e=>{!x&&v&&r.triggerCheckRowEvent(e,l,!b)},u&&(x=!u({row:t})),d&&(p=!!o[f])),Object.assign(Object.assign({},l),{checked:b,disabled:x,visible:v,indeterminate:p}));return E?renderCellBaseVNs(e,l,r.callSlot(E,c,e)):(u=[],v&&u.push(e("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:b?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(g||i)&&u.push(e("span",{class:"vxe-checkbox--label"},g?r.callSlot(g,c,e):_xeUtils.default.get(t,i))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":b,"is--disabled":x,"is--indeterminate":s&&!b?t[s]:p,"is--hidden":!v}],on:C},u)]))},renderTreeSelectionCellByProp(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:r,isHidden:t,row:n,column:a}=l;var{rowExpandedMaps:d,rowExpandLazyLoadedMaps:o}=r,{lazy:s,labelField:i,iconLoaded:c,showIcon:u,iconOpen:C,iconClose:E,visibleMethod:g}=r.computeExpandOpts,p=a.slots,b=p?p.default:null,p=p?p.icon:null;let v=!1,x=!1;return p?renderCellBaseVNs(e,l,r.callSlot(p,l,e)):(t||(p=(0,_util.getRowid)(r,n),v=!!d[p],s&&(x=!!o[p])),renderCellBaseVNs(e,l,[!u||g&&!g(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":v}],on:{click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",x?c||getIcon().TABLE_EXPAND_LOADED:v?C||getIcon().TABLE_EXPAND_OPEN:E||getIcon().TABLE_EXPAND_CLOSE]})]),b||i?e("span",{class:"vxe-table--expand-label"},b?r.callSlot(b,l,e):_xeUtils.default.get(n,i)):renderEmptyElement(r)]))},renderExpandData(e,l){var{$table:r,column:t}=l,{slots:t,contentRender:n}=t;if(t&&t.content)return r.callSlot(t.content,l,e);if(n){t=renderer.get(n.name),t=t?t.renderTableExpand||t.renderExpand:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:r,column:t}=l,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderTreeHTMLCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:r,column:t}=l;var{showIcon:n,iconLayout:a,iconAsc:d,iconDesc:o,iconVisibleMethod:s}=r.computeSortOpts;return!n||s&&!s(l)?[]:[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${a}-layout`]},[e("i",{class:["vxe-sort--asc-btn",d||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===t.order}],attrs:{title:getI18n("vxe.table.sortAsc")},on:{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"asc")}}}),e("i",{class:["vxe-sort--desc-btn",o||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===t.order}],attrs:{title:getI18n("vxe.table.sortDesc")},on:{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"desc")}}})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:r,column:t,hasFilter:n}=l;var a=r.filterStore,{showIcon:d,iconNone:o,iconMatch:s,iconVisibleMethod:i}=r.computeFilterOpts;return!d||i&&!i(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":a.visible&&a.column===t}]},[e("i",{class:["vxe-filter--btn",n?s||getIcon().TABLE_FILTER_MATCH:o||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")},on:{click(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}}})])]},renderEditHeader(e,l){var{$table:r,column:t}=l,{editConfig:n,editRules:a}=r,d=r.computeEditOpts,{sortable:o,filters:s,editRender:i}=t;let c=!1,u=(a&&(a=_xeUtils.default.get(a,t.field))&&(c=a.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&(u=[c&&d.showAsterisk?e("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(r),(0,_utils.isEnableConf)(i)&&d.showIcon?e("i",{class:["vxe-cell--edit-icon",d.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(r)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(o?Cell.renderSortIcon(e,l):[]).concat(s?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row)},renderTreeRowEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row&&r.column===l.column)},renderTreeCellEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,r,t){var{$table:n,column:a}=l,{slots:a,editRender:d,formatter:o}=a,s=renderer.get(d.name),s=s?s.renderTableEdit||s.renderEdit:null,i=Object.assign({$type:"",isEdit:t},l);return t?a&&a.edit?n.callSlot(a.edit,i,e):s?(0,_vn.getSlotVNs)(s.call(n,e,d,i)):[]:a&&a.default?renderCellBaseVNs(e,l,n.callSlot(a.default,i,e)):o?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(i)])]):Cell.renderDefaultCell.call(r,e,i)}};var _default=exports.default=Cell;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:r,column:t}=l,n=t.titlePrefix||t.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.icon||getIcon().TABLE_TITLE_PREFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderTitleSuffixIcon(e,l){let{$table:r,column:t}=l,n=t.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.icon||getIcon().TABLE_TITLE_SUFFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderCellDragIcon(e,l){let r=l.$table;var t=r.$scopedSlots,n=r.dragConfig,{icon:a,trigger:o,disabledMethod:d}=r.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let s=d&&d(l);d=t.rowDragIcon||t["row-drag-icon"],t={};return"cell"!==o&&(t.mousedown=e=>{s||r.handleCellDragMousedownEvent(e,l)},t.mouseup=r.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":s}],on:t},d?r.callSlot(d,l,e):[e("i",{class:a||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:a}=l,n=n.dragSort,{treeConfig:o,dragConfig:d}=t,s=t.computeRowOpts,{showIcon:t,isPeerDrag:i,isCrossDrag:c,visibleMethod:u}=t.computeRowDragOpts,u=u||(d?d.rowVisibleMethod:null),r=_xeUtils.default.isArray(r)?r:[r];return!(n&&s.drag&&(t||d&&d.showRowIcon))||u&&!u(l)||o&&!i&&!c&&a||r.unshift(renderCellDragIcon(e,l)),r}function renderHeaderCellDragIcon(e,r){let{$table:t,column:l}=r;var n=t.$scopedSlots,a=l.slots,o=t.computeColumnOpts,{showIcon:d,icon:s,trigger:i,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=t.computeColumnDragOpts;if(!o.drag||!d||C&&!C(r)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(t);{let l=g&&g(r);o=(a?a.columnDragIcon||a["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.mousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.mouseup=t.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},o?t.callSlot(o,r,e):[e("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,r){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(r)?r:[r],renderTitleSuffixIcon(e,l)]}function renderTitleContent(e,l,r){let{$table:t,column:n}=l;var{type:a,showHeaderOverflow:o}=n,d=t;let s=t;d=d.showHeaderOverflow;let i=t.computeTooltipOpts.showAll;d=_xeUtils.default.isUndefined(o)||_xeUtils.default.isNull(o)?d:o;let c="title"===d,u=!0===d||"tooltip"===d;o={};return(c||u||i)&&(o.mouseenter=e=>{s._isResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||i)&&t.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(o.mouseleave=e=>{s._isResize||(u||i)&&t.handleTargetLeaveEvent(e)}),["html"===a&&_xeUtils.default.isString(r)?e("span",{class:"vxe-cell--title",domProps:{innerHTML:r},on:o}):e("span",{class:"vxe-cell--title",on:o},(0,_vn.getSlotVNs)(r))]}function formatFooterLabel(e,l){var r,t;return _xeUtils.default.isFunction(e)?""+e(l):(t=(t=(r=_xeUtils.default.isArray(e))?formats.get(e[0]):formats.get(e))?t.tableFooterCellFormatMethod:null)?""+(r?t(l,...e.slice(1)):t(l)):""}function getFooterContent(e,l){var{$table:r,column:t,_columnIndex:n,row:a,items:o}=l,{slots:d,editRender:s,cellRender:i,footerFormatter:c}=t,s=s||i;if(d&&d.footer)return r.callSlot(d.footer,l,e);if(s){i=renderer.get(s.name),d=i?i.renderTableFooter||i.renderFooter:null;if(d)return(0,_vn.getSlotVNs)(d.call(r,e,s,l))}let u="";return _xeUtils.default.isArray(o)?u=o[n]:u=_xeUtils.default.get(a,t.field),[c?formatFooterLabel(c,{itemValue:u,column:t,row:a,items:o,_columnIndex:n}):(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e,l){var{column:r,$table:t}=l,n=t.editConfig,{type:r,treeNode:a,editRender:o}=r,d=t.computeCheckboxOpts,t=t.computeEditOpts;switch(r){case"seq":return a?Cell.renderTreeIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return a?Cell.renderTreeRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return d.checkField?a?Cell.renderTreeSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):a?Cell.renderTreeSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return a?Cell.renderTreeHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return n&&o?"cell"===t.mode?a?Cell.renderTreeCellEdit(e,l):Cell.renderCellEdit(e,l):a?Cell.renderTreeRowEdit(e,l):Cell.renderRowEdit(e,l):a?Cell.renderTreeCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:r,$table:t}=l,t=t.editConfig,{type:r,filters:n,sortable:a,editRender:o}=r;switch(r){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(n&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(n)return Cell.renderFilterHeader(e,l)}return t&&o?Cell.renderEditHeader(e,l):n&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):n?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e,l){var{$table:r,column:t}=l,{slots:n,editRender:a,cellRender:o}=t,a=a||o;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(a){o=renderer.get(a.name),n=o?o.renderTableHeader||o.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,a,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(t.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:r,row:t,column:n}=l,{slots:a,editRender:o,cellRender:d}=n,d=o||d;if(a&&a.default)return renderCellBaseVNs(e,l,r.callSlot(a.default,l,e));if(d){var a=renderer.get(d.name),s=a?a.renderTableDefault||a.renderDefault:null,a=a?a.renderTableCell||a.renderCell:null,a=o?a:s;if(a)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(a.call(r,e,d,Object.assign({$type:o?"edit":"cell"},l))))}s=r.getCellLabel(t,n),a=o?o.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[o&&(0,_utils.eqEmptyValue)(s)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(s,1))])])},renderTreeCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return[e("span",{class:"vxe-cell--item"},getFooterContent(e,l))]},renderTreeIcon(e,l,r){let{$table:t,isHidden:n}=l;var{treeExpandedMaps:a,treeExpandLazyLoadedMaps:o}=t,d=t.fullAllDataRowIdData,s=t.computeTreeOpts,{row:i,column:c,level:u}=l,c=c.slots,{indent:C,lazy:g,trigger:E,iconLoaded:p,showIcon:b,iconOpen:v,iconClose:x}=s,f=s.children||s.childrenField,s=s.hasChild||s.hasChildField,f=i[f],f=f&&f.length,c=c?c.icon:null;let m=!1,T=!1,h=!1,_=!1;var I={};return c?t.callSlot(c,l,e):(n||(c=(0,_util.getRowid)(t,i),T=!!a[c],g&&(a=d[c],h=!!o[c],m=i[s],_=!!a.treeLoaded)),E&&"default"!==E||(I.click=e=>{t.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:{paddingLeft:u*C+"px"}},[b&&(!g||_?f:f||m)?[e("div",{class:"vxe-tree--btn-wrapper",on:I},[e("i",{class:["vxe-tree--node-btn",h?p||getIcon().TABLE_TREE_LOADED:T?v||getIcon().TABLE_TREE_OPEN:x||getIcon().TABLE_TREE_CLOSE]})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderSeqHeader(e,l){var{$table:r,column:t}=l,n=t.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?r.callSlot(n.header,l,e):(0,_utils.formatText)(t.getTitle(),1)))},renderSeqCell(e,l){var{$table:r,column:t}=l,n=r.treeConfig,a=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=a.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(a.startIndex||0)+r,1))]))},renderTreeIndexCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:r,column:t}=l,n=t.slots,a=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,a?r.callSlot(a,l,e):[e("span",{class:"vxe-radio--label"},n?r.callSlot(n,l,e):(0,_utils.formatText)(t.getTitle(),1))]))},renderRadioCell(e,l){let{$table:r,column:t,isHidden:n}=l;var a=r.selectRadioRow,o=t.slots,{labelField:d,checkMethod:s,visibleMethod:i}=r.computeRadioOpts,c=l.row,u=o?o.default:null,o=o?o.radio:null,a=c===a;let C=!i||i({row:c}),g=!!s,E;n||(E={click(e){!g&&C&&r.triggerRadioRowEvent(e,l)}},s&&(g=!s({row:c})));i=Object.assign(Object.assign({},l),{checked:a,disabled:g,visible:C});return o?renderCellBaseVNs(e,l,r.callSlot(o,i,e)):(s=[],C&&s.push(e("span",{class:["vxe-radio--icon",a?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&s.push(e("span",{class:"vxe-radio--label"},u?r.callSlot(u,i,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":a,"is--disabled":g}],on:E},s)]))},renderTreeRadioCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:r,column:t,isHidden:n}=l;let{isAllSelected:a,isIndeterminate:o}=r,d=r.computeIsAllCheckboxDisabled;var s=t.slots,i=s?s.header:null,s=s?s.title:null,c=r.computeCheckboxOpts,u=t.getTitle(),C={},g=(n||(C.click=e=>{d||r.triggerCheckAllEvent(e,!a)}),Object.assign(Object.assign({},l),{checked:a,disabled:d,indeterminate:o}));return i?renderHeaderCellBaseVNs(e,l,renderTitleContent(e,g,r.callSlot(i,g,e))):(c.checkStrictly?c.showHeader:!1!==c.showHeader)?renderHeaderCellBaseVNs(e,l,renderTitleContent(e,g,[e("span",{class:["vxe-cell--checkbox",{"is--checked":a,"is--disabled":d,"is--indeterminate":o}],attrs:{title:getI18n("vxe.table.allTitle")},on:C},[e("span",{class:["vxe-checkbox--icon",o?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(s||u?[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,g,e):u)]:[]))])):renderHeaderCellBaseVNs(e,l,renderTitleContent(e,g,[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,g,e):u)]))},renderCheckboxCell(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var o=r.treeConfig,{selectCheckboxMaps:d,treeIndeterminateMaps:s}=r,{labelField:i,checkMethod:c,visibleMethod:u}=r.computeCheckboxOpts,C=n.slots,g=C?C.default:null,C=C?C.checkbox:null;let E=!1,p=!1,b=!u||u({row:t}),v=!!c;var x,u={},d=(a||(x=(0,_util.getRowid)(r,t),p=!!d[x],u.click=e=>{!v&&b&&r.triggerCheckRowEvent(e,l,!p)},c&&(v=!c({row:t})),o&&(E=!!s[x])),Object.assign(Object.assign({},l),{checked:p,disabled:v,visible:b,indeterminate:E}));return C?renderCellBaseVNs(e,l,r.callSlot(C,d,e)):(c=[],b&&c.push(e("span",{class:["vxe-checkbox--icon",E?getIcon().TABLE_CHECKBOX_INDETERMINATE:p?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(g||i)&&c.push(e("span",{class:"vxe-checkbox--label"},g?r.callSlot(g,d,e):_xeUtils.default.get(t,i))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":p,"is--disabled":v,"is--indeterminate":E,"is--hidden":!b}],on:u},c)]))},renderTreeSelectionCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var o=r.treeConfig,d=r.treeIndeterminateMaps,s=r.computeCheckboxOpts,{labelField:i,checkField:c,checkMethod:u,visibleMethod:C}=s,s=s.indeterminateField||s.halfField,g=n.slots,E=g?g.default:null,g=g?g.checkbox:null;let p=!1,b=!1,v=!C||C({row:t}),x=!!u;var f,C={},c=(a||(f=(0,_util.getRowid)(r,t),b=_xeUtils.default.get(t,c),C.click=e=>{!x&&v&&r.triggerCheckRowEvent(e,l,!b)},u&&(x=!u({row:t})),o&&(p=!!d[f])),Object.assign(Object.assign({},l),{checked:b,disabled:x,visible:v,indeterminate:p}));return g?renderCellBaseVNs(e,l,r.callSlot(g,c,e)):(u=[],v&&u.push(e("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:b?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(E||i)&&u.push(e("span",{class:"vxe-checkbox--label"},E?r.callSlot(E,c,e):_xeUtils.default.get(t,i))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":b,"is--disabled":x,"is--indeterminate":s&&!b?t[s]:p,"is--hidden":!v}],on:C},u)]))},renderTreeSelectionCellByProp(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:r,isHidden:t,row:n,column:a}=l;var{rowExpandedMaps:o,rowExpandLazyLoadedMaps:d}=r,{lazy:s,labelField:i,iconLoaded:c,showIcon:u,iconOpen:C,iconClose:g,visibleMethod:E}=r.computeExpandOpts,p=a.slots,b=p?p.default:null,p=p?p.icon:null;let v=!1,x=!1;return p?renderCellBaseVNs(e,l,r.callSlot(p,l,e)):(t||(p=(0,_util.getRowid)(r,n),v=!!o[p],s&&(x=!!d[p])),renderCellBaseVNs(e,l,[!u||E&&!E(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":v}],on:{click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",x?c||getIcon().TABLE_EXPAND_LOADED:v?C||getIcon().TABLE_EXPAND_OPEN:g||getIcon().TABLE_EXPAND_CLOSE]})]),b||i?e("span",{class:"vxe-table--expand-label"},b?r.callSlot(b,l,e):_xeUtils.default.get(n,i)):renderEmptyElement(r)]))},renderExpandData(e,l){var{$table:r,column:t}=l,{slots:t,contentRender:n}=t;if(t&&t.content)return r.callSlot(t.content,l,e);if(n){t=renderer.get(n.name),t=t?t.renderTableExpand||t.renderExpand:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:r,column:t}=l,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderTreeHTMLCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:r,column:t}=l;var{showIcon:n,iconLayout:a,iconAsc:o,iconDesc:d,iconVisibleMethod:s}=r.computeSortOpts;return!n||s&&!s(l)?[]:[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${a}-layout`]},[e("i",{class:["vxe-sort--asc-btn",o||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===t.order}],attrs:{title:getI18n("vxe.table.sortAsc")},on:{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"asc")}}}),e("i",{class:["vxe-sort--desc-btn",d||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===t.order}],attrs:{title:getI18n("vxe.table.sortDesc")},on:{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"desc")}}})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:r,column:t,hasFilter:n}=l;var a=r.filterStore,{showIcon:o,iconNone:d,iconMatch:s,iconVisibleMethod:i}=r.computeFilterOpts;return!o||i&&!i(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":a.visible&&a.column===t}]},[e("i",{class:["vxe-filter--btn",n?s||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")},on:{click(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}}})])]},renderEditHeader(e,l){var{$table:r,column:t}=l,{editConfig:n,editRules:a}=r,o=r.computeEditOpts,{sortable:d,filters:s,editRender:i}=t;let c=!1,u=(a&&(a=_xeUtils.default.get(a,t.field))&&(c=a.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&(u=[c&&o.showAsterisk?e("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(r),(0,_utils.isEnableConf)(i)&&o.showIcon?e("i",{class:["vxe-cell--edit-icon",o.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(r)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(s?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row)},renderTreeRowEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row&&r.column===l.column)},renderTreeCellEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,r,t){var{$table:n,column:a}=l,{slots:a,editRender:o,formatter:d}=a,s=renderer.get(o.name),s=s?s.renderTableEdit||s.renderEdit:null,i=Object.assign({$type:"",isEdit:t},l);return t?a&&a.edit?n.callSlot(a.edit,i,e):s?(0,_vn.getSlotVNs)(s.call(n,e,o,i)):[]:a&&a.default?renderCellBaseVNs(e,l,n.callSlot(a.default,i,e)):d?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(i)])]):Cell.renderDefaultCell.call(r,e,i)}};var _default=exports.default=Cell;
@@ -381,10 +381,7 @@ function handleVirtualYVisible($xeTable) {
381
381
  const row = afterFullData[rIndex];
382
382
  const rowid = (0, _util.getRowid)($xeTable, row);
383
383
  const rowRest = fullAllDataRowIdData[rowid];
384
- if (!rowRest) {
385
- break;
386
- }
387
- offsetTop += rowRest.height || rowHeight;
384
+ offsetTop += rowRest ? rowRest.height || rowHeight : rowHeight;
388
385
  if (toVisibleIndex === -1 && scrollTop < offsetTop) {
389
386
  toVisibleIndex = rIndex;
390
387
  }
@@ -2654,47 +2651,6 @@ const Methods = {
2654
2651
  this.afterTreeFullData = tableTree;
2655
2652
  this.updateAfterDataIndex();
2656
2653
  },
2657
- updateTreeDataIndex() {
2658
- const $xeTable = this;
2659
- const props = $xeTable;
2660
- const internalData = $xeTable;
2661
- const {
2662
- treeConfig
2663
- } = props;
2664
- const {
2665
- afterFullData,
2666
- fullDataRowIdData,
2667
- fullAllDataRowIdData
2668
- } = internalData;
2669
- const treeOpts = $xeTable.computeTreeOpts;
2670
- if (treeConfig) {
2671
- if (treeOpts.transform) {
2672
- afterFullData.forEach((row, index) => {
2673
- const rowid = (0, _util.getRowid)($xeTable, row);
2674
- const rowRest = fullAllDataRowIdData[rowid];
2675
- if (rowRest) {
2676
- rowRest._index = index;
2677
- } else {
2678
- const rest = {
2679
- row,
2680
- rowid,
2681
- seq: '-1',
2682
- index: -1,
2683
- $index: -1,
2684
- _index: index,
2685
- items: [],
2686
- parent: null,
2687
- level: 0,
2688
- height: 0,
2689
- oTop: 0
2690
- };
2691
- fullAllDataRowIdData[rowid] = rest;
2692
- fullDataRowIdData[rowid] = rest;
2693
- }
2694
- });
2695
- }
2696
- }
2697
- },
2698
2654
  /**
2699
2655
  * 预编译
2700
2656
  * 对渲染中的数据提前解析序号及索引。牺牲提前编译耗时换取渲染中额外损耗,使运行时更加流畅
@@ -2744,7 +2700,6 @@ const Methods = {
2744
2700
  }, {
2745
2701
  children: treeOpts.transform ? treeOpts.mapChildrenField : childrenField
2746
2702
  });
2747
- $xeTable.updateTreeDataIndex();
2748
2703
  } else {
2749
2704
  afterFullData.forEach((row, index) => {
2750
2705
  const rowid = (0, _util.getRowid)($xeTable, row);
@@ -7928,7 +7883,7 @@ const Methods = {
7928
7883
  return this.$nextTick().then(() => {
7929
7884
  if (transform) {
7930
7885
  this.handleTableData();
7931
- this.updateTreeDataIndex();
7886
+ this.updateAfterDataIndex();
7932
7887
  return this.$nextTick();
7933
7888
  }
7934
7889
  });
@@ -8070,7 +8025,7 @@ const Methods = {
8070
8025
  return this.handleBaseTreeExpand(rows, expanded).then(() => {
8071
8026
  handleVirtualTreeToList($xeTable);
8072
8027
  this.handleTableData();
8073
- this.updateTreeDataIndex();
8028
+ this.updateAfterDataIndex();
8074
8029
  }).then(() => {
8075
8030
  return this.recalculate();
8076
8031
  }).then(() => {
@@ -8689,6 +8644,15 @@ const Methods = {
8689
8644
  */
8690
8645
  scrollToRow(row, fieldOrColumn) {
8691
8646
  const $xeTable = this;
8647
+ const props = $xeTable;
8648
+ const reactData = $xeTable;
8649
+ const {
8650
+ showOverflow
8651
+ } = props;
8652
+ const {
8653
+ scrollYLoad,
8654
+ scrollXLoad
8655
+ } = reactData;
8692
8656
  const rest = [];
8693
8657
  if (row) {
8694
8658
  if (this.treeConfig) {
@@ -8700,7 +8664,15 @@ const Methods = {
8700
8664
  if (fieldOrColumn) {
8701
8665
  rest.push(handleScrollToRowColumn($xeTable, fieldOrColumn, row));
8702
8666
  }
8703
- return Promise.all(rest);
8667
+ return Promise.all(rest).then(() => {
8668
+ if (row) {
8669
+ if (!showOverflow && (scrollYLoad || scrollXLoad)) {
8670
+ calcCellHeight($xeTable);
8671
+ calcCellWidth($xeTable);
8672
+ }
8673
+ return $xeTable.$nextTick();
8674
+ }
8675
+ });
8704
8676
  },
8705
8677
  /**
8706
8678
  * 如果有滚动条,则滚动到对应的列