vxe-table 4.15.7 → 4.15.8

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.
Files changed (34) hide show
  1. package/es/components.js +1 -1
  2. package/es/style.css +1 -1
  3. package/es/table/src/body.js +3 -3
  4. package/es/table/src/footer.js +1 -1
  5. package/es/table/src/header.js +2 -2
  6. package/es/ui/index.js +1 -1
  7. package/es/ui/src/log.js +1 -1
  8. package/lib/components.js +17 -18
  9. package/lib/components.min.js +1 -1
  10. package/lib/index.umd.js +9 -7
  11. package/lib/index.umd.min.js +1 -1
  12. package/lib/style.css +1 -1
  13. package/lib/table/src/body.js +3 -2
  14. package/lib/table/src/body.min.js +1 -1
  15. package/lib/table/src/footer.js +1 -1
  16. package/lib/table/src/footer.min.js +1 -1
  17. package/lib/table/src/header.js +3 -2
  18. package/lib/table/src/header.min.js +1 -1
  19. package/lib/ui/index.js +1 -1
  20. package/lib/ui/index.min.js +1 -1
  21. package/lib/ui/src/log.js +1 -1
  22. package/lib/ui/src/log.min.js +1 -1
  23. package/package.json +1 -1
  24. package/packages/components.ts +1 -1
  25. package/packages/grid/src/grid.ts +2 -2
  26. package/packages/table/src/body.ts +3 -3
  27. package/packages/table/src/footer.ts +1 -1
  28. package/packages/table/src/header.ts +2 -2
  29. /package/es/{iconfont.1755066378525.ttf → iconfont.1755133696364.ttf} +0 -0
  30. /package/es/{iconfont.1755066378525.woff → iconfont.1755133696364.woff} +0 -0
  31. /package/es/{iconfont.1755066378525.woff2 → iconfont.1755133696364.woff2} +0 -0
  32. /package/lib/{iconfont.1755066378525.ttf → iconfont.1755133696364.ttf} +0 -0
  33. /package/lib/{iconfont.1755066378525.woff → iconfont.1755133696364.woff} +0 -0
  34. /package/lib/{iconfont.1755066378525.woff2 → iconfont.1755133696364.woff2} +0 -0
@@ -146,6 +146,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
146
146
  } = tableProps;
147
147
  const {
148
148
  tableData,
149
+ tableColumn,
149
150
  dragRow,
150
151
  overflowX,
151
152
  overflowY,
@@ -389,9 +390,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
389
390
  let isVNPreEmptyStatus = false;
390
391
  if (!isMergeCell) {
391
392
  if (!dragRow || (0, _util.getRowid)($xeTable, dragRow) !== rowid) {
392
- if (overflowY && scrollYLoad && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
393
+ if (overflowY && scrollYLoad && tableData.length > 16 && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
393
394
  isVNPreEmptyStatus = true;
394
- } else if (overflowX && scrollXLoad && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
395
+ } else if (overflowX && scrollXLoad && tableColumn.length > 10 && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
395
396
  isVNPreEmptyStatus = true;
396
397
  }
397
398
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(O){let Ye=(0,_vue.inject)("$xeTable",{}),{xID:S,props:Ke,context:M,reactData:Je,internalData:Qe}=Ye,{computeEditOpts:Ze,computeMouseOpts:el,computeCellOffsetWidth:ll,computeAreaOpts:tl,computeDefaultRowHeight:al,computeEmptyOpts:T,computeTooltipOpts:rl,computeRadioOpts:e,computeExpandOpts:te,computeTreeOpts:c,computeCheckboxOpts:ol,computeCellOpts:il,computeValidOpts:sl,computeRowOpts:nl,computeColumnOpts:dl,computeRowDragOpts:ul,computeResizableOpts:cl,computeVirtualXOpts:pl,computeVirtualYOpts:vl}=Ye.getComputeMaps(),k=(0,_vue.ref)(),z=(0,_vue.ref)(),$=(0,_vue.ref)(),q=(0,_vue.ref)(),A=(0,_vue.ref)(),H=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),gl=()=>{var e=Ke.delayHover,{lastScrollTime:l,isDragResize:t}=Je;return!!(t||l&&Date.now()<l+e)},xl=(e,l,t)=>{var a=l.column,r=Qe.afterFullData,o=Ke.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=Qe.fullAllDataRowIdData;if(a&&a.line)return Ye.callSlot(a.line,l);a=n[e];let d=0,u=null;return a&&(d=a.level,u=a.items[a.treeIndex-1]),o&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${(0,_util.getRowid)(Ye,r[0])===e?1:(0,_util.calcTreeLine)(l,u)}px`,bottom:`-${Math.floor(t/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(Ye):0)+16+"px"}})])]:[]},re=(e,l,t,A,H,a,F,j,r,o,L,N,U)=>{var i=Ye.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:W,height:d,treeConfig:V,cellClassName:G,cellStyle:P,align:u,spanMethod:X,mouseConfig:Y,editConfig:K,editRules:c,tooltipConfig:p,padding:v}=Ke,{tableData:g,dragRow:J,overflowX:Q,overflowY:Z,currentColumn:ee,scrollXLoad:le,scrollYLoad:te,mergeBodyFlag:ae,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:re,editStore:oe,isAllOverflow:ie,validErrorMaps:se}=Je,{fullAllDataRowIdData:ne,fullColumnIdData:m,mergeBodyCellMaps:de,visibleColumn:ue,afterFullData:ce,mergeBodyList:pe,scrollXStore:ve,scrollYStore:ge}=Qe,w=il.value,_=sl.value,f=ol.value,xe=Ze.value,b=rl.value,he=cl.value,me=pl.value,we=vl.value,{isAllColumnDrag:he,isAllRowDrag:_e}=he,y=nl.value,C=ul.value,fe=al.value,x=x?w.height||y.height:0,{disabledMethod:E,isCrossDrag:be,isPeerDrag:ye}=C,Ce=dl.value,Ee=el.value,Re=tl.value,De=ll.value,Re=Re.selectCellToRow,{type:Ie,cellRender:Oe,editRender:Se,align:Me,showOverflow:R,className:Te,treeNode:ke,rowResize:ze,padding:D,verticalAlign:I,slots:$e}=o,qe=w.verticalAlign,oe=oe.actived,Ae=ne[l]||{},O=o.id,m=m[O]||{},S=Se||Oe,S=S?renderer.get(S.name):null,He=S?S.tableCellClassName||S.cellClassName:null,Fe=S?S.tableCellStyle||S.cellStyle:"";let je=b.showAll;var Le=m.index,b=m._index,m=(0,_utils.isEnableConf)(Se),h=h?Ae.resizeHeight:0;let M=Q&&(t?o.fixed!==t:!!o.fixed);v=_xeUtils.default.eqNull(D)?null===v?w.padding:v:D,D=_xeUtils.default.eqNull(R)?n:R,n="ellipsis"===D;let T="title"===D,k=!0===D||"tooltip"===D;R=ie||T||k||n,D=_xeUtils.default.isBoolean(o.resizable)?o.resizable:Ce.resizable||s,s=!!x,x=0<h;let Ne;h={},Me=Me||(S?S.tableCellAlign:"")||u,S=_xeUtils.default.eqNull(I)?qe:I,u=se[l+":"+O],qe=c&&_.showMessage&&("default"===_.message?d||1<g.length:"inline"===_.message),I={colid:O};let z={$table:Ye,$grid:i,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:F,$rowIndex:j,_rowIndex:r,column:o,columnIndex:Le,$columnIndex:L,_columnIndex:b,fixed:t,type:renderType,isHidden:!!M,level:H,visibleData:ce,data:g,items:U},$=!1,Ue=!1,q=(($=y.drag?"row"===C.trigger||o.dragSort&&"cell"===C.trigger:$)&&(Ue=!(!E||!E(z))),(T||k||je||p)&&(h.onMouseenter=e=>{gl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(k||je)&&Ye.triggerBodyTooltipEvent(e,z),Ye.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||je||p)&&(h.onMouseleave=e=>{gl()||((k||je)&&Ye.handleTargetLeaveEvent(e),Ye.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),($||f.range||Y)&&(h.onMousedown=e=>{Ye.triggerCellMousedownEvent(e,z)}),$&&(h.onMouseup=Ye.triggerCellMouseupEvent),h.onClick=e=>{Ye.triggerCellClickEvent(e,z)},!(h.onDblclick=e=>{Ye.triggerCellDblclickEvent(e,z)})),Be=1,We=1;if(ae&&pe.length){se=de[r+":"+b];if(se){var{rowspan:c,colspan:d}=se;if(!c||!d)return renderEmptyElement(Ye);1<c&&(q=!0,We=c,I.rowspan=c),1<d&&(q=!0,Be=d,I.colspan=d)}}else if(X){var{rowspan:i=1,colspan:e=1}=X(z)||{};if(!i||!e)return renderEmptyElement(Ye);1<i&&(q=!0,We=i,I.rowspan=i),1<e&&(q=!0,Be=e,I.colspan=e)}!(M=M&&q&&(1<I.colspan||1<I.rowspan)?!1:M)&&K&&(Se||Oe)&&(xe.showStatus||xe.showUpdateStatus)&&(Ne=Ye.isUpdateByRow(a,o.field));F=!R&&(te||le);let Ve=(0,_util.getCellRestHeight)(Ae,w,y,fe);j=L===N.length-1,g=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let Ge=!1;q||J&&(0,_util.getRowid)(Ye,J)===l||(Z&&te&&!V&&!we.immediate&&(r<ge.visibleStartIndex-ge.preloadSize||r>ge.visibleEndIndex+ge.preloadSize)||Q&&le&&!me.immediate&&!o.fixed&&(b<ve.visibleStartIndex-ve.preloadSize||b>ve.visibleEndIndex+ve.preloadSize))&&(Ge=!0),1<We&&(U=ce[r+We-1])&&(C=ne[(0,_util.getRowid)(Ye,U)])&&(Ve+=C.oTop+(0,_util.getCellRestHeight)(C,w,y,fe)-Ae.oTop-(0,_util.getCellRestHeight)(Ae,w,y,fe));E={};if(R&&re){let l=0;if(1<Be)for(let e=1;e<Be;e++){var Pe=ue[Le+e];Pe&&(l+=Pe.renderWidth)}E.width=o.renderWidth+l-De+"px"}te||le||R||s||x?E.height=Ve+"px":E.minHeight=Ve+"px";p=[];M&&ie?p.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:E})):(V&&p.push(...xl(l,z,Ve)),p.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:E,title:T?Ye.getCellLabel(a,o):null},Ge?[]:[(0,_vue.h)("div",{colid:O,rowid:l,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},o.renderCell(z))])),qe&&u&&(f=u.rule,ae=$e?$e.valid:null,pe=Object.assign(Object.assign(Object.assign({},z),u),{rule:u}),p.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(_.className,pe)],style:f&&f.maxWidth?{width:f.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(_.theme||"normal")},[ae?Ye.callSlot(ae,pe):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},u.content)]])]))));let Xe=!1;return Y&&Ee.area&&!b&&Re&&(Xe=!0),!M&&D&&he&&p.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Ye.handleColResizeMousedownEvent(e,t,z),onDblclick:e=>Ye.handleColResizeDblclickEvent(e,z)})),(ze||_e)&&y.resizable&&p.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Ye.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Ye.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",O,S?"col--vertical-"+S:"",Me?"col--"+Me:"",Ie?"col--"+Ie:"",{"col--last":j,"col--tree-node":ke,"col--edit":m,"col--ellipsis":R,"col--cs-height":s,"col--rs-height":x,"col--to-row":Xe,"col--auto-height":F,"fixed--width":!g,"fixed--hidden":M,"is--padding":v,"is--progress":M&&ie||Ge,"is--drag-cell":$&&(be||ye||!H),"is--drag-disabled":Ue,"col--dirty":Ne,"col--active":K&&m&&oe.row===a&&(oe.column===o||"row"===xe.mode),"col--valid-error":!!u,"col--current":ee===o},(0,_dom.getPropClass)(He,z),(0,_dom.getPropClass)(Te,z),(0,_dom.getPropClass)(G,z)],key:B||le||te||Ce.useKey||y.useKey||Ce.drag?O:L},I),{style:Object.assign({},_xeUtils.default.isFunction(Fe)?Fe(z):Fe,_xeUtils.default.isFunction(P)?P(z):P)}),h),A&&M?[]:p)},ae=(h,m,w,_)=>{let f=Ye.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:E,rowStyle:R,editConfig:D,treeConfig:I}=Ke,{hasFixedColumn:O,treeExpandedFlag:S,scrollXLoad:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:z,expandColumn:$,selectRadioRow:q,pendingRowFlag:A,rowExpandHeightFlag:H,isRowGroupStatus:F}=Je,{fullAllDataRowIdData:j,fullColumnIdData:L,treeExpandedMaps:N,pendingRowMaps:U,rowExpandedMaps:B}=Qe,W=ol.value,V=e.value,G=c.value,P=Ze.value,X=nl.value,Q=dl.value,{transform:Y,seqMode:K}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(Ye).handleGetRowId,le=I||F;return w.forEach((a,r)=>{let o=ee(a);var i=j[o]||{};let s=r,n=0,d=-1,u=-1;var c=F&&a.isAggregate,p={},v=((X.isHover||C)&&(p.onMouseenter=e=>{gl()||Ye.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{gl()||Ye.clearHoverRow()}),i&&(s=i.index,u=i._index,n=i.level,d=i.seq,c||I&&Y&&"increasing"===K?d=i._index+1:I&&"fixed"===K&&(d=i._tIndex+1)),{$table:Ye,seq:d,rowid:o,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:r,_rowIndex:u}),g=$&&!!z&&!!B[o];let e=!1,l=[],t=!1;D&&(t=Ye.isInsertByRow(a)),!I||T||Y||(l=a[Z],e=!!S&&l&&0<l.length&&!!N[o]),!X.drag||F||I&&!Y||(p.onDragstart=Ye.handleRowDragDragstartEvent,p.onDragend=Ye.handleRowDragDragendEvent,p.onDragover=Ye.handleRowDragDragoverEvent);var c=["vxe-body--row",le?"row--level-"+n:"",{"row--stripe":b&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":V.highlight&&Ye.eqRow(q,a),"row--checked":W.highlight&&Ye.isCheckedByCheckboxRow(a),"row--pending":!!A&&!!U[o],"row--group":c},(0,_dom.getPropClass)(E,v)],x=_.map((e,l)=>re(d,o,h,m,n,a,s,r,u,e,l,_,w));if(J.push((0,_vue.h)("tr",Object.assign({class:c,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(v):R:null,key:y||M||T||X.useKey||X.drag||Q.drag||F||I?o:r},p),x)),g){var{height:c,padding:v,mode:p}=te.value;if("fixed"===p)J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+o,rowid:o},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:`${H?i.expandHeight||c:0}px`}})]));else{x={},g=(c&&(x.height=c+"px"),I&&(x.paddingLeft=n*G.indent+30+"px"),$||{}).showOverflow,p=$.id,i=L[p]||{},p=_xeUtils.default.eqNull(g)?k:g;let e=-1,l=-1,t=-1;i&&(e=i.index,l=i.$index,t=i._index);g={$grid:f,$table:Ye,seq:d,column:$,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:a,rowid:o,rowIndex:s,$rowIndex:r,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+o},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!O,"col--ellipsis":p}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:x},[$.renderData(g)])])]))}}e&&J.push(...ae(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=O.fixedType,l=Qe.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=k,l[e+"scroll"]=z,l[e+"table"]=$,l[e+"colgroup"]=q,l[e+"list"]=A,l[e+"xSpace"]=H,l[e+"ySpace"]=F,l[e+"emptyBlock"]=j})}),(0,_vue.onUnmounted)(()=>{var e=O.fixedType,l=Qe.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=M.slots,l=Ye.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=O;var{spanMethod:o,footerSpanMethod:i,mouseConfig:s}=Ke,{isGroup:n,tableData:d,isColLoading:u,overflowX:c,scrollXLoad:p,scrollYLoad:v,isAllOverflow:g,expandColumn:x,dragRow:h,dragCol:m}=Je,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:f}=Qe,b=T.value,y=el.value,C=te.value;let E=d,R=r,D=!1;!(p||v||g)||x&&"fixed"!==C.mode||o||i||(D=!0),u||!a&&c||(R=w),a&&D&&(R=t||[]),v&&h&&2<E.length&&(d=_[(0,_util.getRowid)(Ye,h)])&&(g=d._index,x=E[0],C=E[E.length-1],o=_[(0,_util.getRowid)(Ye,x)],i=_[(0,_util.getRowid)(Ye,C)],o)&&i&&(u=o._index,c=i._index,g<u?E=[h].concat(E):c<g&&(E=E.concat([h]))),a||n||p&&m&&2<R.length&&(w=f[m.id])&&(v=w._index,d=R[0],x=R[R.length-1],_=f[d.id],C=f[x.id],_)&&C&&(o=_._index,i=C._index,v<o?R=[m].concat(R):i<v&&(R=R.concat([m])));let I;u=e?e.empty:null,c={$table:Ye,$grid:l},I=u?Ye.callSlot(u,c):(h=(g=b.name?renderer.get(b.name):null)?g.renderTableEmpty||g.renderTableEmptyView||g.renderEmpty:null)?(0,_vn.getSlotVNs)(h(b,c)):Ke.emptyText||getI18n("vxe.table.emptyText"),n={onScroll(e){Ye.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:k,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:S},[(0,_vue.h)("div",Object.assign({ref:z,class:"vxe-table--body-inner-wrapper"},n),[a?renderEmptyElement(Ye):(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:F,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:$,class:"vxe-table--body",xid:S,cellspacing:0,cellpadding:0,border:0,xvm:D?"1":null},[(0,_vue.h)("colgroup",{ref:q},R.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tbody",{ref:A},ae(a,D,E,R))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&y.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},y.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Ye.triggerCellAreaExtendMousedownEvent&&Ye.triggerCellAreaExtendMousedownEvent(e,{$table:Ye,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Ye),a?renderEmptyElement(Ye):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:j},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},I)])])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(O){let Ke=(0,_vue.inject)("$xeTable",{}),{xID:S,props:Je,context:M,reactData:Qe,internalData:Ze}=Ke,{computeEditOpts:el,computeMouseOpts:ll,computeCellOffsetWidth:tl,computeAreaOpts:al,computeDefaultRowHeight:rl,computeEmptyOpts:T,computeTooltipOpts:ol,computeRadioOpts:e,computeExpandOpts:te,computeTreeOpts:c,computeCheckboxOpts:il,computeCellOpts:sl,computeValidOpts:nl,computeRowOpts:dl,computeColumnOpts:ul,computeRowDragOpts:cl,computeResizableOpts:pl,computeVirtualXOpts:vl,computeVirtualYOpts:gl}=Ke.getComputeMaps(),k=(0,_vue.ref)(),z=(0,_vue.ref)(),$=(0,_vue.ref)(),q=(0,_vue.ref)(),A=(0,_vue.ref)(),H=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),xl=()=>{var e=Je.delayHover,{lastScrollTime:l,isDragResize:t}=Qe;return!!(t||l&&Date.now()<l+e)},hl=(e,l,t)=>{var a=l.column,r=Ze.afterFullData,o=Je.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=Ze.fullAllDataRowIdData;if(a&&a.line)return Ke.callSlot(a.line,l);a=n[e];let d=0,u=null;return a&&(d=a.level,u=a.items[a.treeIndex-1]),o&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${(0,_util.getRowid)(Ke,r[0])===e?1:(0,_util.calcTreeLine)(l,u)}px`,bottom:`-${Math.floor(t/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(Ke):0)+16+"px"}})])]:[]},re=(e,l,t,A,H,a,F,j,r,o,L,N,U)=>{var i=Ke.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:W,height:d,treeConfig:V,cellClassName:G,cellStyle:P,align:u,spanMethod:X,mouseConfig:Y,editConfig:K,editRules:c,tooltipConfig:p,padding:v}=Je,{tableData:J,tableColumn:Q,dragRow:Z,overflowX:ee,overflowY:le,currentColumn:te,scrollXLoad:ae,scrollYLoad:re,mergeBodyFlag:g,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:oe,editStore:ie,isAllOverflow:se,validErrorMaps:ne}=Qe,{fullAllDataRowIdData:de,fullColumnIdData:m,mergeBodyCellMaps:ue,visibleColumn:ce,afterFullData:pe,mergeBodyList:ve,scrollXStore:ge,scrollYStore:xe}=Ze,w=sl.value,_=nl.value,f=il.value,he=el.value,b=ol.value,me=pl.value,we=vl.value,_e=gl.value,{isAllColumnDrag:me,isAllRowDrag:fe}=me,y=dl.value,C=cl.value,be=rl.value,x=x?w.height||y.height:0,{disabledMethod:E,isCrossDrag:ye,isPeerDrag:Ce}=C,Ee=ul.value,Re=ll.value,De=al.value,Ie=tl.value,De=De.selectCellToRow,{type:Oe,cellRender:Se,editRender:Me,align:Te,showOverflow:R,className:ke,treeNode:ze,rowResize:$e,padding:D,verticalAlign:I,slots:qe}=o,Ae=w.verticalAlign,ie=ie.actived,He=de[l]||{},O=o.id,m=m[O]||{},S=Me||Se,S=S?renderer.get(S.name):null,Fe=S?S.tableCellClassName||S.cellClassName:null,je=S?S.tableCellStyle||S.cellStyle:"";let Le=b.showAll;var Ne=m.index,b=m._index,m=(0,_utils.isEnableConf)(Me),h=h?He.resizeHeight:0;let M=ee&&(t?o.fixed!==t:!!o.fixed);v=_xeUtils.default.eqNull(D)?null===v?w.padding:v:D,D=_xeUtils.default.eqNull(R)?n:R,n="ellipsis"===D;let T="title"===D,k=!0===D||"tooltip"===D;R=se||T||k||n,D=_xeUtils.default.isBoolean(o.resizable)?o.resizable:Ee.resizable||s,s=!!x,x=0<h;let Ue;h={},Te=Te||(S?S.tableCellAlign:"")||u,S=_xeUtils.default.eqNull(I)?Ae:I,u=ne[l+":"+O],Ae=c&&_.showMessage&&("default"===_.message?d||1<J.length:"inline"===_.message),I={colid:O};let z={$table:Ke,$grid:i,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:F,$rowIndex:j,_rowIndex:r,column:o,columnIndex:Ne,$columnIndex:L,_columnIndex:b,fixed:t,type:renderType,isHidden:!!M,level:H,visibleData:pe,data:J,items:U},$=!1,Be=!1,q=(($=y.drag?"row"===C.trigger||o.dragSort&&"cell"===C.trigger:$)&&(Be=!(!E||!E(z))),(T||k||Le||p)&&(h.onMouseenter=e=>{xl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(k||Le)&&Ke.triggerBodyTooltipEvent(e,z),Ke.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Le||p)&&(h.onMouseleave=e=>{xl()||((k||Le)&&Ke.handleTargetLeaveEvent(e),Ke.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),($||f.range||Y)&&(h.onMousedown=e=>{Ke.triggerCellMousedownEvent(e,z)}),$&&(h.onMouseup=Ke.triggerCellMouseupEvent),h.onClick=e=>{Ke.triggerCellClickEvent(e,z)},!(h.onDblclick=e=>{Ke.triggerCellDblclickEvent(e,z)})),We=1,Ve=1;if(g&&ve.length){ne=ue[r+":"+b];if(ne){var{rowspan:c,colspan:d}=ne;if(!c||!d)return renderEmptyElement(Ke);1<c&&(q=!0,Ve=c,I.rowspan=c),1<d&&(q=!0,We=d,I.colspan=d)}}else if(X){var{rowspan:i=1,colspan:e=1}=X(z)||{};if(!i||!e)return renderEmptyElement(Ke);1<i&&(q=!0,Ve=i,I.rowspan=i),1<e&&(q=!0,We=e,I.colspan=e)}!(M=M&&q&&(1<I.colspan||1<I.rowspan)?!1:M)&&K&&(Me||Se)&&(he.showStatus||he.showUpdateStatus)&&(Ue=Ke.isUpdateByRow(a,o.field));F=!R&&(re||ae);let Ge=(0,_util.getCellRestHeight)(He,w,y,be);j=L===N.length-1,U=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let Pe=!1;q||Z&&(0,_util.getRowid)(Ke,Z)===l||(le&&re&&16<J.length&&!V&&!_e.immediate&&(r<xe.visibleStartIndex-xe.preloadSize||r>xe.visibleEndIndex+xe.preloadSize)||ee&&ae&&10<Q.length&&!we.immediate&&!o.fixed&&(b<ge.visibleStartIndex-ge.preloadSize||b>ge.visibleEndIndex+ge.preloadSize))&&(Pe=!0),1<Ve&&(C=pe[r+Ve-1])&&(E=de[(0,_util.getRowid)(Ke,C)])&&(Ge+=E.oTop+(0,_util.getCellRestHeight)(E,w,y,be)-He.oTop-(0,_util.getCellRestHeight)(He,w,y,be));p={};if(R&&oe){let l=0;if(1<We)for(let e=1;e<We;e++){var Xe=ce[Ne+e];Xe&&(l+=Xe.renderWidth)}p.width=o.renderWidth+l-Ie+"px"}re||ae||R||s||x?p.height=Ge+"px":p.minHeight=Ge+"px";f=[];M&&se?f.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:p})):(V&&f.push(...hl(l,z,Ge)),f.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:p,title:T?Ke.getCellLabel(a,o):null},Pe?[]:[(0,_vue.h)("div",{colid:O,rowid:l,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},o.renderCell(z))])),Ae&&u&&(g=u.rule,ve=qe?qe.valid:null,ue=Object.assign(Object.assign(Object.assign({},z),u),{rule:u}),f.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(_.className,ue)],style:g&&g.maxWidth?{width:g.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(_.theme||"normal")},[ve?Ke.callSlot(ve,ue):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},u.content)]])]))));let Ye=!1;return Y&&Re.area&&!b&&De&&(Ye=!0),!M&&D&&me&&f.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Ke.handleColResizeMousedownEvent(e,t,z),onDblclick:e=>Ke.handleColResizeDblclickEvent(e,z)})),($e||fe)&&y.resizable&&f.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Ke.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Ke.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",O,S?"col--vertical-"+S:"",Te?"col--"+Te:"",Oe?"col--"+Oe:"",{"col--last":j,"col--tree-node":ze,"col--edit":m,"col--ellipsis":R,"col--cs-height":s,"col--rs-height":x,"col--to-row":Ye,"col--auto-height":F,"fixed--width":!U,"fixed--hidden":M,"is--padding":v,"is--progress":M&&se||Pe,"is--drag-cell":$&&(ye||Ce||!H),"is--drag-disabled":Be,"col--dirty":Ue,"col--active":K&&m&&ie.row===a&&(ie.column===o||"row"===he.mode),"col--valid-error":!!u,"col--current":te===o},(0,_dom.getPropClass)(Fe,z),(0,_dom.getPropClass)(ke,z),(0,_dom.getPropClass)(G,z)],key:B||ae||re||Ee.useKey||y.useKey||Ee.drag?O:L},I),{style:Object.assign({},_xeUtils.default.isFunction(je)?je(z):je,_xeUtils.default.isFunction(P)?P(z):P)}),h),A&&M?[]:f)},ae=(h,m,w,_)=>{let f=Ke.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:E,rowStyle:R,editConfig:D,treeConfig:I}=Je,{hasFixedColumn:O,treeExpandedFlag:S,scrollXLoad:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:z,expandColumn:$,selectRadioRow:q,pendingRowFlag:A,rowExpandHeightFlag:H,isRowGroupStatus:F}=Qe,{fullAllDataRowIdData:j,fullColumnIdData:L,treeExpandedMaps:N,pendingRowMaps:U,rowExpandedMaps:B}=Ze,W=il.value,V=e.value,G=c.value,P=el.value,X=dl.value,Q=ul.value,{transform:Y,seqMode:K}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(Ke).handleGetRowId,le=I||F;return w.forEach((a,r)=>{let o=ee(a);var i=j[o]||{};let s=r,n=0,d=-1,u=-1;var c=F&&a.isAggregate,p={},v=((X.isHover||C)&&(p.onMouseenter=e=>{xl()||Ke.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{xl()||Ke.clearHoverRow()}),i&&(s=i.index,u=i._index,n=i.level,d=i.seq,c||I&&Y&&"increasing"===K?d=i._index+1:I&&"fixed"===K&&(d=i._tIndex+1)),{$table:Ke,seq:d,rowid:o,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:r,_rowIndex:u}),g=$&&!!z&&!!B[o];let e=!1,l=[],t=!1;D&&(t=Ke.isInsertByRow(a)),!I||T||Y||(l=a[Z],e=!!S&&l&&0<l.length&&!!N[o]),!X.drag||F||I&&!Y||(p.onDragstart=Ke.handleRowDragDragstartEvent,p.onDragend=Ke.handleRowDragDragendEvent,p.onDragover=Ke.handleRowDragDragoverEvent);var c=["vxe-body--row",le?"row--level-"+n:"",{"row--stripe":b&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":V.highlight&&Ke.eqRow(q,a),"row--checked":W.highlight&&Ke.isCheckedByCheckboxRow(a),"row--pending":!!A&&!!U[o],"row--group":c},(0,_dom.getPropClass)(E,v)],x=_.map((e,l)=>re(d,o,h,m,n,a,s,r,u,e,l,_,w));if(J.push((0,_vue.h)("tr",Object.assign({class:c,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(v):R:null,key:y||M||T||X.useKey||X.drag||Q.drag||F||I?o:r},p),x)),g){var{height:c,padding:v,mode:p}=te.value;if("fixed"===p)J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+o,rowid:o},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:`${H?i.expandHeight||c:0}px`}})]));else{x={},g=(c&&(x.height=c+"px"),I&&(x.paddingLeft=n*G.indent+30+"px"),$||{}).showOverflow,p=$.id,i=L[p]||{},p=_xeUtils.default.eqNull(g)?k:g;let e=-1,l=-1,t=-1;i&&(e=i.index,l=i.$index,t=i._index);g={$grid:f,$table:Ke,seq:d,column:$,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:a,rowid:o,rowIndex:s,$rowIndex:r,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+o},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!O,"col--ellipsis":p}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:x},[$.renderData(g)])])]))}}e&&J.push(...ae(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=O.fixedType,l=Ze.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=k,l[e+"scroll"]=z,l[e+"table"]=$,l[e+"colgroup"]=q,l[e+"list"]=A,l[e+"xSpace"]=H,l[e+"ySpace"]=F,l[e+"emptyBlock"]=j})}),(0,_vue.onUnmounted)(()=>{var e=O.fixedType,l=Ze.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=M.slots,l=Ke.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=O;var{spanMethod:o,footerSpanMethod:i,mouseConfig:s}=Je,{isGroup:n,tableData:d,isColLoading:u,overflowX:c,scrollXLoad:p,scrollYLoad:v,isAllOverflow:g,expandColumn:x,dragRow:h,dragCol:m}=Qe,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:f}=Ze,b=T.value,y=ll.value,C=te.value;let E=d,R=r,D=!1;!(p||v||g)||x&&"fixed"!==C.mode||o||i||(D=!0),u||!a&&c||(R=w),a&&D&&(R=t||[]),v&&h&&2<E.length&&(d=_[(0,_util.getRowid)(Ke,h)])&&(g=d._index,x=E[0],C=E[E.length-1],o=_[(0,_util.getRowid)(Ke,x)],i=_[(0,_util.getRowid)(Ke,C)],o)&&i&&(u=o._index,c=i._index,g<u?E=[h].concat(E):c<g&&(E=E.concat([h]))),a||n||p&&m&&2<R.length&&(w=f[m.id])&&(v=w._index,d=R[0],x=R[R.length-1],_=f[d.id],C=f[x.id],_)&&C&&(o=_._index,i=C._index,v<o?R=[m].concat(R):i<v&&(R=R.concat([m])));let I;u=e?e.empty:null,c={$table:Ke,$grid:l},I=u?Ke.callSlot(u,c):(h=(g=b.name?renderer.get(b.name):null)?g.renderTableEmpty||g.renderTableEmptyView||g.renderEmpty:null)?(0,_vn.getSlotVNs)(h(b,c)):Je.emptyText||getI18n("vxe.table.emptyText"),n={onScroll(e){Ke.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:k,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:S},[(0,_vue.h)("div",Object.assign({ref:z,class:"vxe-table--body-inner-wrapper"},n),[a?renderEmptyElement(Ke):(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:F,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:$,class:"vxe-table--body",xid:S,cellspacing:0,cellpadding:0,border:0,xvm:D?"1":null},[(0,_vue.h)("colgroup",{ref:q},R.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tbody",{ref:A},ae(a,D,E,R))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&y.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},y.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Ke.triggerCellAreaExtendMousedownEvent&&Ke.triggerCellAreaExtendMousedownEvent(e,{$table:Ke,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Ke),a?renderEmptyElement(Ke):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:j},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},I)])])])}}});
@@ -214,7 +214,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
214
214
  const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
215
215
  let isVNPreEmptyStatus = false;
216
216
  if (isOptimizeMode && overflowX && !isMergeCell) {
217
- if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
217
+ if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
218
218
  isVNPreEmptyStatus = true;
219
219
  }
220
220
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="footer";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(x){let le=(0,_vue.inject)("$xeTable",{}),{xID:m,props:_,reactData:g,internalData:h}=le,{computeTooltipOpts:l,computeColumnOpts:t,computeCellOpts:o,computeFooterCellOpts:r,computeDefaultRowHeight:i,computeResizableOpts:a,computeVirtualXOpts:n}=le.getComputeMaps(),b=(0,_vue.ref)(),w=(0,_vue.ref)(),y=(0,_vue.ref)(),C=(0,_vue.ref)(),T=(0,_vue.ref)(),F=(0,_vue.ref)(),O=(y,C,T,F,O,I)=>{let S=le.xeGrid,D=x.fixedType,{resizable:E,border:M,footerCellClassName:z,footerCellStyle:k,footerAlign:R,footerSpanMethod:$,align:q,columnKey:A,showFooterOverflow:U}=_,{scrollXLoad:j,scrollYLoad:L,overflowX:X,currentColumn:N,mergeFootFlag:V}=g,{fullColumnIdData:H,mergeFooterList:P,mergeFooterCellMaps:W,scrollXStore:B}=h,G=n.value,K=l.value;let Y=a.value.isAllColumnDrag,J=t.value;var e=i.value;let Q=o.value,Z=r.value,ee=(0,_util.getCalcHeight)(Z.height)||e;return C.map((l,e)=>{var{type:t,showFooterOverflow:o,footerAlign:r,align:i,footerClassName:a,editRender:n,cellRender:u}=l,d=l.id,s=H[d]||{},n=n||u,u=n?renderer.get(n.name):null;let p=K.showAll;var n=X&&(D?l.fixed!==D:!!l.fixed),c=(_xeUtils.default.isBoolean(Z.padding)?Z:Q).padding,o=_xeUtils.default.eqNull(o)?U:o,r=r||(u?u.tableFooterCellAlign:"")||R||i||(u?u.tableCellAlign:"")||q,i="ellipsis"===o;let f="title"===o,v=!0===o||"tooltip"===o;var u=f||v||i,o=_xeUtils.default.isBoolean(l.resizable)?l.resizable:J.resizable||E,x={colid:d},m={},_=s.index,s=s._index,g=s;let h={$table:le,$grid:S,row:F,rowIndex:I,_rowIndex:I,$rowIndex:O,column:l,columnIndex:_,$columnIndex:e,_columnIndex:s,itemIndex:g,items:F,fixed:D,type:renderType,data:T},b=((f||v||p)&&(m.onMouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(v||p)&&le.triggerFooterTooltipEvent(e,h)}),(v||p)&&(m.onMouseleave=e=>{(v||p)&&le.handleTargetLeaveEvent(e)}),m.onClick=e=>{le.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},h),e)},!(m.onDblclick=e=>{le.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},h),e)}));if(V&&P.length){_=W[I+":"+s];if(_){var{rowspan:g,colspan:_}=_;if(!g||!_)return null;1<g&&(b=!0,x.rowspan=g),1<_&&(b=!0,x.colspan=_)}}else if($){var{rowspan:g=1,colspan:_=1}=$(h)||{};if(!g||!_)return null;1<g&&(x.rowspan=g),1<_&&(x.colspan=_)}g=e===C.length-1,_=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let w=!1;y&&X&&!b&&j&&!l.fixed&&!G.immediate&&(s<B.visibleStartIndex-B.preloadSize||s>B.visibleEndIndex+B.preloadSize)&&(w=!0);s={};return u?s.height=ee+"px":s.minHeight=ee+"px",(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-footer--column",l.id,{["col--"+r]:r,["col--"+t]:t,"col--last":g,"fixed--width":!_,"fixed--hidden":n,"is--padding":c,"col--ellipsis":u,"col--current":N===l},(0,_dom.getPropClass)(a,h),(0,_dom.getPropClass)(z,h)]},x),{style:k?_xeUtils.default.isFunction(k)?k(h):k:null}),m),{key:A||j||L||J.useKey||J.drag?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":v,"c--ellipsis":i}],style:s},w?[]:[(0,_vue.h)("div",{colid:d,class:"vxe-cell--wrapper vxe-footer-cell--wrapper"},l.renderFooter(h))]),!n&&o&&Y?(0,_vue.h)("div",{class:["vxe-cell--col-resizable",{"is--line":!M||"none"===M}],onMousedown:e=>le.handleColResizeMousedownEvent(e,D,h),onDblclick:e=>le.handleColResizeDblclickEvent(e,h)}):renderEmptyElement(le)])})};return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=x.fixedType,l=h.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=b,l[e+"scroll"]=w,l[e+"table"]=y,l[e+"colgroup"]=C,l[e+"list"]=T,l[e+"xSpace"]=F})}),(0,_vue.onUnmounted)(()=>{var e=x.fixedType,l=h.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:t}=x;var{spanMethod:o,footerSpanMethod:r,showFooterOverflow:i}=_,{visibleColumn:a,fullColumnIdData:n}=h,{isGroup:u,isColLoading:d,overflowX:s,scrollXLoad:p,dragCol:c}=g;let f=t,v=!1;return p&&i&&(o||r||(v=!0)),v&&(d||!l&&s)||(f=a),l&&v&&(f=e||[]),l||u||p&&c&&2<f.length&&(i=n[c.id])&&(o=i._index,r=f[0],d=f[f.length-1],s=n[r.id],a=n[d.id],s)&&a&&(u=s._index,p=a._index,o<u?f=[c].concat(f):p<o&&(f=f.concat([c]))),(0,_vue.h)("div",{ref:b,class:["vxe-table--footer-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:m},[(0,_vue.h)("div",{ref:w,class:"vxe-table--footer-inner-wrapper",onScroll(e){le.triggerFooterScrollEvent(e,l)}},[l?renderEmptyElement(le):(0,_vue.h)("div",{ref:F,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:y,class:"vxe-table--footer",xid:m,cellspacing:0,cellpadding:0,border:0,xvm:v?"1":null},[(0,_vue.h)("colgroup",{ref:C},f.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tfoot",{ref:T},((r,i)=>{let{fixedType:a,footerTableData:n}=x,{footerRowClassName:u,footerRowStyle:d}=_;return n.map((e,l)=>{var t=l,o={$table:le,row:e,_rowIndex:t,$rowIndex:l,fixed:a,type:renderType};return(0,_vue.h)("tr",{key:l,class:["vxe-footer--row",u?_xeUtils.default.isFunction(u)?u(o):u:""],style:d?_xeUtils.default.isFunction(d)?d(o):d:null},O(r,i,n,e,l,t))})})(v,f))])])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="footer";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(x){let le=(0,_vue.inject)("$xeTable",{}),{xID:m,props:_,reactData:g,internalData:h}=le,{computeTooltipOpts:l,computeColumnOpts:t,computeCellOpts:o,computeFooterCellOpts:r,computeDefaultRowHeight:i,computeResizableOpts:a,computeVirtualXOpts:n}=le.getComputeMaps(),b=(0,_vue.ref)(),w=(0,_vue.ref)(),y=(0,_vue.ref)(),C=(0,_vue.ref)(),T=(0,_vue.ref)(),F=(0,_vue.ref)(),O=(y,C,T,F,O,I)=>{let S=le.xeGrid,D=x.fixedType,{resizable:E,border:M,footerCellClassName:z,footerCellStyle:k,footerAlign:R,footerSpanMethod:$,align:q,columnKey:A,showFooterOverflow:U}=_,{scrollXLoad:j,scrollYLoad:L,overflowX:X,currentColumn:N,mergeFootFlag:V}=g,{fullColumnIdData:H,mergeFooterList:P,mergeFooterCellMaps:W,scrollXStore:B}=h,G=n.value,K=l.value;let Y=a.value.isAllColumnDrag,J=t.value;var e=i.value;let Q=o.value,Z=r.value,ee=(0,_util.getCalcHeight)(Z.height)||e;return C.map((l,e)=>{var{type:t,showFooterOverflow:o,footerAlign:r,align:i,footerClassName:a,editRender:n,cellRender:u}=l,d=l.id,s=H[d]||{},n=n||u,u=n?renderer.get(n.name):null;let p=K.showAll;var n=X&&(D?l.fixed!==D:!!l.fixed),c=(_xeUtils.default.isBoolean(Z.padding)?Z:Q).padding,o=_xeUtils.default.eqNull(o)?U:o,r=r||(u?u.tableFooterCellAlign:"")||R||i||(u?u.tableCellAlign:"")||q,i="ellipsis"===o;let f="title"===o,v=!0===o||"tooltip"===o;var u=f||v||i,o=_xeUtils.default.isBoolean(l.resizable)?l.resizable:J.resizable||E,x={colid:d},m={},_=s.index,s=s._index,g=s;let h={$table:le,$grid:S,row:F,rowIndex:I,_rowIndex:I,$rowIndex:O,column:l,columnIndex:_,$columnIndex:e,_columnIndex:s,itemIndex:g,items:F,fixed:D,type:renderType,data:T},b=((f||v||p)&&(m.onMouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(v||p)&&le.triggerFooterTooltipEvent(e,h)}),(v||p)&&(m.onMouseleave=e=>{(v||p)&&le.handleTargetLeaveEvent(e)}),m.onClick=e=>{le.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},h),e)},!(m.onDblclick=e=>{le.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},h),e)}));if(V&&P.length){_=W[I+":"+s];if(_){var{rowspan:g,colspan:_}=_;if(!g||!_)return null;1<g&&(b=!0,x.rowspan=g),1<_&&(b=!0,x.colspan=_)}}else if($){var{rowspan:g=1,colspan:_=1}=$(h)||{};if(!g||!_)return null;1<g&&(x.rowspan=g),1<_&&(x.colspan=_)}g=e===C.length-1,_=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let w=!1;y&&X&&!b&&j&&10<C.length&&!l.fixed&&!G.immediate&&(s<B.visibleStartIndex-B.preloadSize||s>B.visibleEndIndex+B.preloadSize)&&(w=!0);s={};return u?s.height=ee+"px":s.minHeight=ee+"px",(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-footer--column",l.id,{["col--"+r]:r,["col--"+t]:t,"col--last":g,"fixed--width":!_,"fixed--hidden":n,"is--padding":c,"col--ellipsis":u,"col--current":N===l},(0,_dom.getPropClass)(a,h),(0,_dom.getPropClass)(z,h)]},x),{style:k?_xeUtils.default.isFunction(k)?k(h):k:null}),m),{key:A||j||L||J.useKey||J.drag?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":v,"c--ellipsis":i}],style:s},w?[]:[(0,_vue.h)("div",{colid:d,class:"vxe-cell--wrapper vxe-footer-cell--wrapper"},l.renderFooter(h))]),!n&&o&&Y?(0,_vue.h)("div",{class:["vxe-cell--col-resizable",{"is--line":!M||"none"===M}],onMousedown:e=>le.handleColResizeMousedownEvent(e,D,h),onDblclick:e=>le.handleColResizeDblclickEvent(e,h)}):renderEmptyElement(le)])})};return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=x.fixedType,l=h.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=b,l[e+"scroll"]=w,l[e+"table"]=y,l[e+"colgroup"]=C,l[e+"list"]=T,l[e+"xSpace"]=F})}),(0,_vue.onUnmounted)(()=>{var e=x.fixedType,l=h.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:t}=x;var{spanMethod:o,footerSpanMethod:r,showFooterOverflow:i}=_,{visibleColumn:a,fullColumnIdData:n}=h,{isGroup:u,isColLoading:d,overflowX:s,scrollXLoad:p,dragCol:c}=g;let f=t,v=!1;return p&&i&&(o||r||(v=!0)),v&&(d||!l&&s)||(f=a),l&&v&&(f=e||[]),l||u||p&&c&&2<f.length&&(i=n[c.id])&&(o=i._index,r=f[0],d=f[f.length-1],s=n[r.id],a=n[d.id],s)&&a&&(u=s._index,p=a._index,o<u?f=[c].concat(f):p<o&&(f=f.concat([c]))),(0,_vue.h)("div",{ref:b,class:["vxe-table--footer-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:m},[(0,_vue.h)("div",{ref:w,class:"vxe-table--footer-inner-wrapper",onScroll(e){le.triggerFooterScrollEvent(e,l)}},[l?renderEmptyElement(le):(0,_vue.h)("div",{ref:F,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:y,class:"vxe-table--footer",xid:m,cellspacing:0,cellpadding:0,border:0,xvm:v?"1":null},[(0,_vue.h)("colgroup",{ref:C},f.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tfoot",{ref:T},((r,i)=>{let{fixedType:a,footerTableData:n}=x,{footerRowClassName:u,footerRowStyle:d}=_;return n.map((e,l)=>{var t=l,o={$table:le,row:e,_rowIndex:t,$rowIndex:l,fixed:a,type:renderType};return(0,_vue.h)("tr",{key:l,class:["vxe-footer--row",u?_xeUtils.default.isFunction(u)?u(o):u:""],style:d?_xeUtils.default.isFunction(d)?d(o):d:null},O(r,i,n,e,l,t))})})(v,f))])])])}}});
@@ -78,7 +78,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
78
78
  dragCol,
79
79
  scrollXLoad,
80
80
  scrollYLoad,
81
- overflowX
81
+ overflowX,
82
+ tableColumn
82
83
  } = tableReactData;
83
84
  const {
84
85
  fullColumnIdData,
@@ -175,7 +176,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
175
176
  let isVNPreEmptyStatus = false;
176
177
  if (isOptimizeMode && overflowX && !isGroup) {
177
178
  if (!dragCol || dragCol.id !== colid) {
178
- if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
179
+ if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
179
180
  isVNPreEmptyStatus = true;
180
181
  }
181
182
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(m){let le=(0,_vue.inject)("$xeTable",{}),{xID:_,props:b,reactData:C,internalData:y}=le,{computeColumnOpts:l,computeColumnDragOpts:a,computeCellOpts:r,computeMouseOpts:w,computeHeaderCellOpts:t,computeDefaultRowHeight:i,computeVirtualXOpts:n}=le.getComputeMaps(),D=(0,_vue.ref)([]),H=(0,_vue.ref)(),E=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),O=(0,_vue.ref)(),T=(0,_vue.ref)(),o=(0,_vue.ref)(),d=()=>{var e=C.isGroup;D.value=e?(0,_util.convertHeaderColumnToRows)(m.tableGroupColumn):[]},I=(H,E,S,M)=>{let O=le.xeGrid,T=m.fixedType,{resizable:I,columnKey:k,headerCellClassName:U,headerCellStyle:z,showHeaderOverflow:R,headerAlign:$,align:q,mouseConfig:A}=b,{currentColumn:F,dragCol:X,scrollXLoad:j,scrollYLoad:G,overflowX:L}=C,{fullColumnIdData:N,scrollXStore:V}=y,W=n.value,B=l.value,K=a.value,P=r.value;var e=i.value;let Y=t.value,J=(0,_util.getCalcHeight)(Y.height)||e,{disabledMethod:Q,isCrossDrag:Z,isPeerDrag:ee}=K;return S.map((e,l)=>{var{type:a,showHeaderOverflow:r,headerAlign:t,align:i,filters:n,headerClassName:o,editRender:d,cellRender:u}=e,s=e.id,c=N[s]||{},d=d||u,u=d?renderer.get(d.name):null,d=e.children&&e.children.length,p=L&&!d&&(T?e.fixed!==T:!!e.fixed),v=(_xeUtils.default.isBoolean(Y.padding)?Y:P).padding,r=_xeUtils.default.eqNull(r)?R:r,t=t||(u?u.tableHeaderCellAlign:"")||$||i||(u?u.tableCellAlign:"")||q,i="ellipsis"===r,u="title"===r,r=!0===r||"tooltip"===r,x=u||r||i;let h=!1,g=null;n&&(g=n[0],h=n.some(e=>e.checked));var f=c.index,c=c._index;let m={$table:le,$grid:O,$rowIndex:M,column:e,columnIndex:f,$columnIndex:l,_columnIndex:c,firstFilterOption:g,fixed:T,type:renderType,isHidden:p,hasFilter:h};var f={colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},_={onClick:e=>le.triggerHeaderCellClickEvent(e,m),onDblclick:e=>le.triggerHeaderCellDblclickEvent(e,m)},b=B.drag&&"cell"===K.trigger;let C=!1;b&&(C=!(!Q||!Q(m))),(A||b)&&(_.onMousedown=e=>le.triggerHeaderCellMousedownEvent(e,m)),B.drag&&(_.onDragstart=le.handleHeaderCellDragDragstartEvent,_.onDragend=le.handleHeaderCellDragDragendEvent,_.onDragover=le.handleHeaderCellDragDragoverEvent,b)&&(_.onMouseup=le.handleHeaderCellDragMouseupEvent);var b=l===S.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:B.resizable||I,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let D=!1;!E||!L||H||X&&X.id===s||j&&!e.fixed&&!W.immediate&&(c<V.visibleStartIndex-V.preloadSize||c>V.visibleEndIndex+V.preloadSize)&&(D=!0);c={};return x?c.height=J+"px":c.minHeight=J+"px",(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-header--column",s,{["col--"+t]:t,["col--"+a]:a,"col--last":b,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":x,"fixed--width":!w,"fixed--hidden":p,"is--padding":v,"is--sortable":e.sortable,"col--filter":!!n,"is--filter-active":h,"is--drag-active":B.drag&&!e.fixed&&!C&&(Z||ee||!e.parentId),"is--drag-disabled":B.drag&&C,"col--current":F===e},o?_xeUtils.default.isFunction(o)?o(m):o:"",U?_xeUtils.default.isFunction(U)?U(m):U:""],style:z?_xeUtils.default.isFunction(z)?z(m):z:null},f),_),{key:k||j||G||B.useKey||B.drag||d?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":u,"c--tooltip":r,"c--ellipsis":i}],style:c},D||E&&p?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(m))]),!p&&y?(0,_vue.h)("div",{class:"vxe-cell--col-resizable",onMousedown:e=>le.handleColResizeMousedownEvent(e,T,m),onDblclick:e=>le.handleColResizeDblclickEvent(e,m)}):renderEmptyElement(le)])})};return(0,_vue.watch)(()=>m.tableColumn,d),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=m.fixedType,l=le.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=H,l[e+"scroll"]=E,l[e+"table"]=S,l[e+"colgroup"]=M,l[e+"list"]=O,l[e+"xSpace"]=T,l[e+"repair"]=o,d()})}),(0,_vue.onUnmounted)(()=>{var e=m.fixedType,l=le.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:a}=m;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:i,footerSpanMethod:n}=b,{isGroup:o,isColLoading:d,overflowX:u,scrollXLoad:s,dragCol:c}=C,{visibleColumn:p,fullColumnIdData:v}=y,x=w.value;let h=D.value,g=a,f=!1;return o?g=p:(s&&t&&(i||n||(f=!0)),f&&(d||!l&&u)||(g=p),l&&f&&(g=e||[]),h=[g]),l||o||s&&c&&2<g.length&&(t=v[c.id])&&(i=t._index,n=g[0],d=g[g.length-1],u=v[n.id],p=v[d.id],u)&&p&&(s=u._index,t=p._index,i<s?(g=[c].concat(g),h=[[c].concat(h[0])].concat(h.slice(1))):t<i&&(g=g.concat([c]),h=[h[0].concat([c])].concat(h.slice(1)))),(0,_vue.h)("div",{ref:H,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:_},[(0,_vue.h)("div",{ref:E,class:"vxe-table--header-inner-wrapper",onScroll(e){le.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(le):(0,_vue.h)("div",{ref:T,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:S,class:"vxe-table--header",xid:_,cellspacing:0,cellpadding:0,border:0,xvm:f?"1":null},[(0,_vue.h)("colgroup",{ref:M},g.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("thead",{ref:O},((r,t,e)=>{let i=m.fixedType,{headerRowClassName:n,headerRowStyle:o}=b;return e.map((e,l)=>{var a={$table:le,$rowIndex:l,fixed:i,type:renderType};return(0,_vue.h)("tr",{key:l,class:["vxe-header--row",n?_xeUtils.default.isFunction(n)?n(a):n:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},I(r,t,e,l))})})(o,f,h))]),r&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(le)])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(m){let ae=(0,_vue.inject)("$xeTable",{}),{xID:_,props:b,reactData:C,internalData:y}=ae,{computeColumnOpts:l,computeColumnDragOpts:a,computeCellOpts:r,computeMouseOpts:w,computeHeaderCellOpts:t,computeDefaultRowHeight:i,computeVirtualXOpts:n}=ae.getComputeMaps(),D=(0,_vue.ref)([]),H=(0,_vue.ref)(),E=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),O=(0,_vue.ref)(),T=(0,_vue.ref)(),o=(0,_vue.ref)(),d=()=>{var e=C.isGroup;D.value=e?(0,_util.convertHeaderColumnToRows)(m.tableGroupColumn):[]},I=(H,E,S,M)=>{let O=ae.xeGrid,T=m.fixedType,{resizable:I,columnKey:k,headerCellClassName:U,headerCellStyle:z,showHeaderOverflow:R,headerAlign:$,align:q,mouseConfig:A}=b,{currentColumn:F,dragCol:X,scrollXLoad:j,scrollYLoad:G,overflowX:L,tableColumn:N}=C,{fullColumnIdData:V,scrollXStore:W}=y,B=n.value,K=l.value,P=a.value,Y=r.value;var e=i.value;let J=t.value,Q=(0,_util.getCalcHeight)(J.height)||e,{disabledMethod:Z,isCrossDrag:ee,isPeerDrag:le}=P;return S.map((e,l)=>{var{type:a,showHeaderOverflow:r,headerAlign:t,align:i,filters:n,headerClassName:o,editRender:d,cellRender:u}=e,s=e.id,c=V[s]||{},d=d||u,u=d?renderer.get(d.name):null,d=e.children&&e.children.length,p=L&&!d&&(T?e.fixed!==T:!!e.fixed),v=(_xeUtils.default.isBoolean(J.padding)?J:Y).padding,r=_xeUtils.default.eqNull(r)?R:r,t=t||(u?u.tableHeaderCellAlign:"")||$||i||(u?u.tableCellAlign:"")||q,i="ellipsis"===r,u="title"===r,r=!0===r||"tooltip"===r,x=u||r||i;let h=!1,g=null;n&&(g=n[0],h=n.some(e=>e.checked));var f=c.index,c=c._index;let m={$table:ae,$grid:O,$rowIndex:M,column:e,columnIndex:f,$columnIndex:l,_columnIndex:c,firstFilterOption:g,fixed:T,type:renderType,isHidden:p,hasFilter:h};var f={colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},_={onClick:e=>ae.triggerHeaderCellClickEvent(e,m),onDblclick:e=>ae.triggerHeaderCellDblclickEvent(e,m)},b=K.drag&&"cell"===P.trigger;let C=!1;b&&(C=!(!Z||!Z(m))),(A||b)&&(_.onMousedown=e=>ae.triggerHeaderCellMousedownEvent(e,m)),K.drag&&(_.onDragstart=ae.handleHeaderCellDragDragstartEvent,_.onDragend=ae.handleHeaderCellDragDragendEvent,_.onDragover=ae.handleHeaderCellDragDragoverEvent,b)&&(_.onMouseup=ae.handleHeaderCellDragMouseupEvent);var b=l===S.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:K.resizable||I,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let D=!1;!E||!L||H||X&&X.id===s||j&&10<N.length&&!e.fixed&&!B.immediate&&(c<W.visibleStartIndex-W.preloadSize||c>W.visibleEndIndex+W.preloadSize)&&(D=!0);c={};return x?c.height=Q+"px":c.minHeight=Q+"px",(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-header--column",s,{["col--"+t]:t,["col--"+a]:a,"col--last":b,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":x,"fixed--width":!w,"fixed--hidden":p,"is--padding":v,"is--sortable":e.sortable,"col--filter":!!n,"is--filter-active":h,"is--drag-active":K.drag&&!e.fixed&&!C&&(ee||le||!e.parentId),"is--drag-disabled":K.drag&&C,"col--current":F===e},o?_xeUtils.default.isFunction(o)?o(m):o:"",U?_xeUtils.default.isFunction(U)?U(m):U:""],style:z?_xeUtils.default.isFunction(z)?z(m):z:null},f),_),{key:k||j||G||K.useKey||K.drag||d?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":u,"c--tooltip":r,"c--ellipsis":i}],style:c},D||E&&p?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(m))]),!p&&y?(0,_vue.h)("div",{class:"vxe-cell--col-resizable",onMousedown:e=>ae.handleColResizeMousedownEvent(e,T,m),onDblclick:e=>ae.handleColResizeDblclickEvent(e,m)}):renderEmptyElement(ae)])})};return(0,_vue.watch)(()=>m.tableColumn,d),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=m.fixedType,l=ae.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=H,l[e+"scroll"]=E,l[e+"table"]=S,l[e+"colgroup"]=M,l[e+"list"]=O,l[e+"xSpace"]=T,l[e+"repair"]=o,d()})}),(0,_vue.onUnmounted)(()=>{var e=m.fixedType,l=ae.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:a}=m;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:i,footerSpanMethod:n}=b,{isGroup:o,isColLoading:d,overflowX:u,scrollXLoad:s,dragCol:c}=C,{visibleColumn:p,fullColumnIdData:v}=y,x=w.value;let h=D.value,g=a,f=!1;return o?g=p:(s&&t&&(i||n||(f=!0)),f&&(d||!l&&u)||(g=p),l&&f&&(g=e||[]),h=[g]),l||o||s&&c&&2<g.length&&(t=v[c.id])&&(i=t._index,n=g[0],d=g[g.length-1],u=v[n.id],p=v[d.id],u)&&p&&(s=u._index,t=p._index,i<s?(g=[c].concat(g),h=[[c].concat(h[0])].concat(h.slice(1))):t<i&&(g=g.concat([c]),h=[h[0].concat([c])].concat(h.slice(1)))),(0,_vue.h)("div",{ref:H,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:_},[(0,_vue.h)("div",{ref:E,class:"vxe-table--header-inner-wrapper",onScroll(e){ae.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(ae):(0,_vue.h)("div",{ref:T,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:S,class:"vxe-table--header",xid:_,cellspacing:0,cellpadding:0,border:0,xvm:f?"1":null},[(0,_vue.h)("colgroup",{ref:M},g.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("thead",{ref:O},((r,t,e)=>{let i=m.fixedType,{headerRowClassName:n,headerRowStyle:o}=b;return e.map((e,l)=>{var a={$table:ae,$rowIndex:l,fixed:i,type:renderType};return(0,_vue.h)("tr",{key:l,class:["vxe-header--row",n?_xeUtils.default.isFunction(n)?n(a):n:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},I(r,t,e,l))})})(o,f,h))]),r&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(ae)])])}}});
package/lib/ui/index.js CHANGED
@@ -13,7 +13,7 @@ Object.defineProperty(exports, "VxeUI", {
13
13
  exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.hooks = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
14
14
  var _core = require("@vxe-ui/core");
15
15
  var _utils = require("./src/utils");
16
- const version = exports.version = "4.15.7";
16
+ const version = exports.version = "4.15.8";
17
17
  _core.VxeUI.version = version;
18
18
  _core.VxeUI.tableVersion = version;
19
19
  _core.VxeUI.setConfig({
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.15.7",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,minHeight:144,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{multiple:!0,showIcon:!0},aggregateConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:1,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{},gantt:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_AGG_GROUP:iconPrefix+"grouping",TABLE_DRAG_STATUS_AGG_VALUES:iconPrefix+"values",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",TABLE_AGGREGATE_GROUPING:iconPrefix+"grouping",TABLE_AGGREGATE_VALUES:iconPrefix+"values",TABLE_AGGREGATE_SORT:iconPrefix+"drag-handle",TABLE_AGGREGATE_DELETE:iconPrefix+"close",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,i){return _core.VxeUI.modal.alert(e,o,i)},confirm(e,o,i){return _core.VxeUI.modal.confirm(e,o,i)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,i){return _core.VxeUI.modal.notification(e,o,i)}});var _default=exports.default=_core.VxeUI;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.15.8",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,minHeight:144,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{multiple:!0,showIcon:!0},aggregateConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:1,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{},gantt:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_AGG_GROUP:iconPrefix+"grouping",TABLE_DRAG_STATUS_AGG_VALUES:iconPrefix+"values",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",TABLE_AGGREGATE_GROUPING:iconPrefix+"grouping",TABLE_AGGREGATE_VALUES:iconPrefix+"values",TABLE_AGGREGATE_SORT:iconPrefix+"drag-handle",TABLE_AGGREGATE_DELETE:iconPrefix+"close",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,i){return _core.VxeUI.modal.alert(e,o,i)},confirm(e,o,i){return _core.VxeUI.modal.confirm(e,o,i)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,i){return _core.VxeUI.modal.notification(e,o,i)}});var _default=exports.default=_core.VxeUI;
package/lib/ui/src/log.js CHANGED
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
8
8
  const {
9
9
  log
10
10
  } = _core.VxeUI;
11
- const version = `table v${"4.15.7"}`;
11
+ const version = `table v${"4.15.8"}`;
12
12
  const warnLog = exports.warnLog = log.create('warn', version);
13
13
  const errLog = exports.errLog = log.create('error', version);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v4.15.7",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v4.15.8",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-table",
3
- "version": "4.15.7",
3
+ "version": "4.15.8",
4
4
  "description": "A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -1,5 +1,5 @@
1
1
  import { App } from 'vue'
2
- import { VxeUI } from '@vxe-ui/core'
2
+ import { VxeUI } from './ui'
3
3
 
4
4
  import { VxeColumn } from './column'
5
5
  import { VxeColgroup } from './colgroup'
@@ -1,4 +1,4 @@
1
- import { h, ref, computed, provide, reactive, onUnmounted, watch, nextTick, VNode, ComponentPublicInstance, onMounted } from 'vue'
1
+ import { h, ref, computed, provide, reactive, onUnmounted, watch, nextTick, VNode, onMounted } from 'vue'
2
2
  import { defineVxeComponent } from '../../ui/src/comp'
3
3
  import XEUtils from 'xe-utils'
4
4
  import { getLastZIndex, nextZIndex, isEnableConf } from '../../ui/src/utils'
@@ -62,7 +62,7 @@ export default defineVxeComponent({
62
62
  const internalData = createInternalData()
63
63
 
64
64
  const refElem = ref<HTMLDivElement>()
65
- const refTable = ref<ComponentPublicInstance<VxeTableProps, VxeTableConstructor & VxeTableMethods & VxeTablePrivateMethods>>()
65
+ const refTable = ref<VxeTableConstructor & VxeTablePrivateMethods>()
66
66
  const refForm = ref<VxeFormInstance>()
67
67
  const refToolbar = ref<VxeToolbarInstance>()
68
68
  const refPager = ref<VxePagerInstance>()
@@ -104,7 +104,7 @@ export default defineVxeComponent({
104
104
  const $xeGrid = $xeTable.xeGrid
105
105
 
106
106
  const { columnKey, resizable: allResizable, showOverflow: allShowOverflow, border, height, treeConfig, cellClassName: allCellClassName, cellStyle, align: allAlign, spanMethod, mouseConfig, editConfig, editRules, tooltipConfig, padding: allPadding } = tableProps
107
- const { tableData, dragRow, overflowX, overflowY, currentColumn, scrollXLoad, scrollYLoad, mergeBodyFlag, calcCellHeightFlag, resizeHeightFlag, resizeWidthFlag, editStore, isAllOverflow, validErrorMaps } = tableReactData
107
+ const { tableData, tableColumn, dragRow, overflowX, overflowY, currentColumn, scrollXLoad, scrollYLoad, mergeBodyFlag, calcCellHeightFlag, resizeHeightFlag, resizeWidthFlag, editStore, isAllOverflow, validErrorMaps } = tableReactData
108
108
  const { fullAllDataRowIdData, fullColumnIdData, mergeBodyCellMaps, visibleColumn, afterFullData, mergeBodyList, scrollXStore, scrollYStore } = tableInternalData
109
109
  const cellOpts = computeCellOpts.value
110
110
  const validOpts = computeValidOpts.value
@@ -293,9 +293,9 @@ export default defineVxeComponent({
293
293
  let isVNPreEmptyStatus = false
294
294
  if (!isMergeCell) {
295
295
  if (!dragRow || getRowid($xeTable, dragRow) !== rowid) {
296
- if (overflowY && scrollYLoad && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
296
+ if (overflowY && scrollYLoad && tableData.length > 16 && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
297
297
  isVNPreEmptyStatus = true
298
- } else if (overflowX && scrollXLoad && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
298
+ } else if (overflowX && scrollXLoad && tableColumn.length > 10 && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
299
299
  isVNPreEmptyStatus = true
300
300
  }
301
301
  }
@@ -159,7 +159,7 @@ export default defineVxeComponent({
159
159
 
160
160
  let isVNPreEmptyStatus = false
161
161
  if (isOptimizeMode && overflowX && !isMergeCell) {
162
- if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
162
+ if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
163
163
  isVNPreEmptyStatus = true
164
164
  }
165
165
  }
@@ -48,7 +48,7 @@ export default defineVxeComponent({
48
48
 
49
49
  const { fixedType } = props
50
50
  const { resizable: allResizable, columnKey, headerCellClassName, headerCellStyle, showHeaderOverflow: allColumnHeaderOverflow, headerAlign: allHeaderAlign, align: allAlign, mouseConfig } = tableProps
51
- const { currentColumn, dragCol, scrollXLoad, scrollYLoad, overflowX } = tableReactData
51
+ const { currentColumn, dragCol, scrollXLoad, scrollYLoad, overflowX, tableColumn } = tableReactData
52
52
  const { fullColumnIdData, scrollXStore } = tableInternalData
53
53
  const virtualXOpts = computeVirtualXOpts.value
54
54
  const columnOpts = computeColumnOpts.value
@@ -132,7 +132,7 @@ export default defineVxeComponent({
132
132
  let isVNPreEmptyStatus = false
133
133
  if (isOptimizeMode && overflowX && !isGroup) {
134
134
  if (!dragCol || dragCol.id !== colid) {
135
- if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
135
+ if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
136
136
  isVNPreEmptyStatus = true
137
137
  }
138
138
  }