vxe-table 4.14.0-beta.4 → 4.14.0-beta.6
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.
- package/es/grid/src/grid.js +2 -2
- package/es/locale/lang/ar-EG.js +2 -1
- package/es/locale/lang/de-DE.js +2 -1
- package/es/locale/lang/en-US.js +2 -1
- package/es/locale/lang/es-ES.js +2 -1
- package/es/locale/lang/fr-FR.js +2 -1
- package/es/locale/lang/hu-HU.js +2 -1
- package/es/locale/lang/hy-AM.js +2 -1
- package/es/locale/lang/id-ID.js +2 -1
- package/es/locale/lang/it-IT.js +2 -1
- package/es/locale/lang/ja-JP.js +2 -1
- package/es/locale/lang/ko-KR.js +2 -1
- package/es/locale/lang/ms-MY.js +2 -1
- package/es/locale/lang/nb-NO.js +2 -1
- package/es/locale/lang/pt-BR.js +2 -1
- package/es/locale/lang/ru-RU.js +2 -1
- package/es/locale/lang/th-TH.js +2 -1
- package/es/locale/lang/ug-CN.js +2 -1
- package/es/locale/lang/uk-UA.js +2 -1
- package/es/locale/lang/uz-UZ.js +2 -1
- package/es/locale/lang/vi-VN.js +2 -1
- package/es/locale/lang/zh-CHT.js +2 -1
- package/es/locale/lang/zh-CN.js +2 -1
- package/es/style.css +1 -1
- package/es/table/src/body.js +3 -2
- package/es/table/src/table.js +11 -9
- package/es/table/src/util.js +5 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +2 -2
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +24 -15
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +2 -1
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +2 -1
- package/lib/locale/lang/de-DE.js +2 -1
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +2 -1
- package/lib/locale/lang/en-US.js +2 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +2 -1
- package/lib/locale/lang/es-ES.js +2 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +2 -1
- package/lib/locale/lang/fr-FR.js +2 -1
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +2 -1
- package/lib/locale/lang/hu-HU.js +2 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +2 -1
- package/lib/locale/lang/hy-AM.js +2 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +2 -1
- package/lib/locale/lang/id-ID.js +2 -1
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +2 -1
- package/lib/locale/lang/it-IT.js +2 -1
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +2 -1
- package/lib/locale/lang/ja-JP.js +2 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +2 -1
- package/lib/locale/lang/ko-KR.js +2 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +2 -1
- package/lib/locale/lang/ms-MY.js +2 -1
- package/lib/locale/lang/ms-MY.min.js +1 -1
- package/lib/locale/lang/ms-MY.umd.js +2 -1
- package/lib/locale/lang/nb-NO.js +2 -1
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +2 -1
- package/lib/locale/lang/pt-BR.js +2 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +2 -1
- package/lib/locale/lang/ru-RU.js +2 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +2 -1
- package/lib/locale/lang/th-TH.js +2 -1
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +2 -1
- package/lib/locale/lang/ug-CN.js +2 -1
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +2 -1
- package/lib/locale/lang/uk-UA.js +2 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +2 -1
- package/lib/locale/lang/uz-UZ.js +2 -1
- package/lib/locale/lang/uz-UZ.min.js +1 -1
- package/lib/locale/lang/uz-UZ.umd.js +2 -1
- package/lib/locale/lang/vi-VN.js +2 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +2 -1
- package/lib/locale/lang/zh-CHT.js +2 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CHT.umd.js +2 -1
- package/lib/locale/lang/zh-CN.js +2 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +2 -1
- package/lib/style.css +1 -1
- package/lib/table/src/body.js +2 -2
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/table.js +7 -7
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +9 -1
- package/lib/table/src/util.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/grid/src/grid.ts +2 -2
- package/packages/locale/lang/ar-EG.ts +2 -1
- package/packages/locale/lang/de-DE.ts +2 -1
- package/packages/locale/lang/en-US.ts +2 -1
- package/packages/locale/lang/es-ES.ts +2 -1
- package/packages/locale/lang/fr-FR.ts +2 -1
- package/packages/locale/lang/hu-HU.ts +2 -1
- package/packages/locale/lang/hy-AM.ts +2 -1
- package/packages/locale/lang/id-ID.ts +2 -1
- package/packages/locale/lang/it-IT.ts +2 -1
- package/packages/locale/lang/ja-JP.ts +2 -1
- package/packages/locale/lang/ko-KR.ts +2 -1
- package/packages/locale/lang/ms-MY.ts +2 -1
- package/packages/locale/lang/nb-NO.ts +2 -1
- package/packages/locale/lang/pt-BR.ts +2 -1
- package/packages/locale/lang/ru-RU.ts +2 -1
- package/packages/locale/lang/th-TH.ts +2 -1
- package/packages/locale/lang/ug-CN.ts +2 -1
- package/packages/locale/lang/uk-UA.ts +2 -1
- package/packages/locale/lang/uz-UZ.ts +2 -1
- package/packages/locale/lang/vi-VN.ts +2 -1
- package/packages/locale/lang/zh-CHT.ts +2 -1
- package/packages/locale/lang/zh-CN.ts +2 -1
- package/packages/table/src/body.ts +4 -2
- package/packages/table/src/table.ts +12 -9
- package/packages/table/src/util.ts +5 -1
- /package/es/{iconfont.1751277484787.ttf → iconfont.1751422282348.ttf} +0 -0
- /package/es/{iconfont.1751277484787.woff → iconfont.1751422282348.woff} +0 -0
- /package/es/{iconfont.1751277484787.woff2 → iconfont.1751422282348.woff2} +0 -0
- /package/lib/{iconfont.1751277484787.ttf → iconfont.1751422282348.ttf} +0 -0
- /package/lib/{iconfont.1751277484787.woff → iconfont.1751422282348.woff} +0 -0
- /package/lib/{iconfont.1751277484787.woff2 → iconfont.1751422282348.woff2} +0 -0
package/lib/table/src/body.js
CHANGED
|
@@ -81,7 +81,6 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
81
81
|
};
|
|
82
82
|
const renderLine = (rowid, params, cellHeight) => {
|
|
83
83
|
const {
|
|
84
|
-
row,
|
|
85
84
|
column
|
|
86
85
|
} = params;
|
|
87
86
|
const {
|
|
@@ -115,7 +114,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
115
114
|
}, [(0, _vue.h)('div', {
|
|
116
115
|
class: 'vxe-tree--line',
|
|
117
116
|
style: {
|
|
118
|
-
height: `${$xeTable
|
|
117
|
+
height: `${(0, _util.getRowid)($xeTable, afterFullData[0]) === rowid ? 1 : (0, _util.calcTreeLine)(params, prevRow)}px`,
|
|
119
118
|
bottom: `-${Math.floor(cellHeight / 2)}px`,
|
|
120
119
|
left: `${rLevel * treeOpts.indent + (rLevel ? 2 - (0, _util.getOffsetSize)($xeTable) : 0) + 16}px`
|
|
121
120
|
}
|
|
@@ -423,6 +422,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
423
422
|
} else {
|
|
424
423
|
tcStyle.minHeight = `${cellHeight}px`;
|
|
425
424
|
}
|
|
425
|
+
// console.log(lastScrollTime)
|
|
426
426
|
const tdVNs = [];
|
|
427
427
|
if (fixedHiddenColumn && isAllOverflow) {
|
|
428
428
|
tdVNs.push((0, _vue.h)('div', {
|
|
@@ -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(I){let Xe=(0,_vue.inject)("$xeTable",{}),{xID:S,props:Ke,context:M,reactData:Ye,internalData:Je}=Xe,{computeEditOpts:Qe,computeMouseOpts:Ze,computeCellOffsetWidth:el,computeAreaOpts:ll,computeDefaultRowHeight:tl,computeEmptyOpts:T,computeTooltipOpts:al,computeRadioOpts:e,computeExpandOpts:te,computeTreeOpts:p,computeCheckboxOpts:rl,computeCellOpts:ol,computeValidOpts:il,computeRowOpts:sl,computeColumnOpts:nl,computeRowDragOpts:dl,computeResizableOpts:ul,computeVirtualXOpts:cl,computeVirtualYOpts:pl}=Xe.getComputeMaps(),k=(0,_vue.ref)(),z=(0,_vue.ref)(),q=(0,_vue.ref)(),$=(0,_vue.ref)(),A=(0,_vue.ref)(),H=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),vl=()=>{var e=Ke.delayHover,{lastScrollTime:l,isDragResize:t}=Ye;return!!(t||l&&Date.now()<l+e)},gl=(e,l,t)=>{var{row:a,column:r}=l,o=Je.afterFullData,i=Ke.treeConfig,s=p.value,{slots:r,treeNode:n}=r,d=Je.fullAllDataRowIdData;if(r&&r.line)return Xe.callSlot(r.line,l);r=d[e];let u=0,c=null;return r&&(u=r.level,c=r.items[r.treeIndex-1]),i&&n&&(s.showLine||s.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${Xe.eqRow(o[0],a)?1:(0,_util.calcTreeLine)(l,c)}px`,bottom:`-${Math.floor(t/2)}px`,left:u*s.indent+(u?2-(0,_util.getOffsetSize)(Xe):0)+16+"px"}})])]:[]},re=(A,e,l,H,F,t,j,L,a,r,N,U,o)=>{var i=Xe.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:W,height:d,treeConfig:V,cellClassName:G,cellStyle:P,align:X,spanMethod:K,mouseConfig:Y,editConfig:J,editRules:u,tooltipConfig:c,padding:p}=Ke,{tableData:v,dragRow:Q,overflowX:Z,currentColumn:ee,scrollXLoad:le,scrollYLoad:g,mergeBodyFlag:te,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:ae,editStore:re,isAllOverflow:oe,validErrorMaps:m}=Ye,{fullAllDataRowIdData:ie,fullColumnIdData:w,mergeBodyCellMaps:se,visibleColumn:ne,afterFullData:de,mergeBodyList:ue,scrollXStore:ce,scrollYStore:pe}=Je,_=ol.value,f=il.value,ve=rl.value,ge=Qe.value,b=al.value,xe=ul.value,he=cl.value,me=pl.value,{isAllColumnDrag:xe,isAllRowDrag:we}=xe,y=sl.value,C=dl.value,_e=tl.value,x=x?_.height||y.height:0,{disabledMethod:R,isCrossDrag:fe,isPeerDrag:be}=C,ye=nl.value,Ce=Ze.value,Re=ll.value,De=el.value,Re=Re.selectCellToRow,{type:Ee,cellRender:Oe,editRender:Ie,align:Se,showOverflow:Me,className:Te,treeNode:ke,rowResize:ze,padding:D,verticalAlign:E,slots:qe}=r,O=_.verticalAlign,re=re.actived,$e=ie[e]||{},I=r.id,w=w[I]||{},S=Ie||Oe,S=S?renderer.get(S.name):null,Ae=S?S.tableCellClassName||S.cellClassName:null,He=S?S.tableCellStyle||S.cellStyle:"";let Fe=b.showAll;var je=w.index,b=w._index,w=(0,_utils.isEnableConf)(Ie),h=h?$e.resizeHeight:0;let M=l?r.fixed!==l:r.fixed&&Z;Z=_xeUtils.default.eqNull(D)?null===p?_.padding:p:D,p=_xeUtils.default.eqNull(Me)?n:Me,D="ellipsis"===p;let T="title"===p,k=!0===p||"tooltip"===p;n=oe||T||k||D,Me=_xeUtils.default.isBoolean(r.resizable)?r.resizable:ye.resizable||s,p=!!x,s=0<h;let Le;x={},h=Se||(S?S.tableCellAlign:"")||X,Se=_xeUtils.default.eqNull(E)?O:E,S=m[e+":"+I],X=u&&f.showMessage&&("default"===f.message?d||1<v.length:"inline"===f.message),O={colid:I};let z={$table:Xe,$grid:i,isEdit:!1,seq:A,rowid:e,row:t,rowIndex:j,$rowIndex:L,_rowIndex:a,column:r,columnIndex:je,$columnIndex:N,_columnIndex:b,fixed:l,type:renderType,isHidden:!!M,level:F,visibleData:de,data:v,items:o},q=!1,Ne=!1,$=((q=y.drag?"row"===C.trigger||r.dragSort&&"cell"===C.trigger:q)&&(Ne=!(!R||!R(z))),(T||k||Fe||c)&&(x.onMouseenter=e=>{vl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,r):(k||Fe)&&Xe.triggerBodyTooltipEvent(e,z),Xe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Fe||c)&&(x.onMouseleave=e=>{vl()||((k||Fe)&&Xe.handleTargetLeaveEvent(e),Xe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),(q||ve.range||Y)&&(x.onMousedown=e=>{Xe.triggerCellMousedownEvent(e,z)}),q&&(x.onMouseup=Xe.triggerCellMouseupEvent),x.onClick=e=>{Xe.triggerCellClickEvent(e,z)},!(x.onDblclick=e=>{Xe.triggerCellDblclickEvent(e,z)})),Ue=1,Be=1;if(te&&ue.length){E=se[a+":"+b];if(E){var{rowspan:m,colspan:u}=E;if(!m||!u)return null;1<m&&($=!0,Be=m,O.rowspan=m),1<u&&($=!0,Ue=u,O.colspan=u)}}else if(K){var{rowspan:d=1,colspan:i=1}=K(z)||{};if(!d||!i)return null;1<d&&($=!0,Be=d,O.rowspan=d),1<i&&($=!0,Ue=i,O.colspan=i)}!(M=M&&$&&(1<O.colspan||1<O.rowspan)?!1:M)&&J&&(Ie||Oe)&&(ge.showStatus||ge.showUpdateStatus)&&(Le=Xe.isUpdateByRow(t,r.field));A=g&&!n;let We=(0,_util.getCellRestHeight)($e,_,y,_e);j=N===U.length-1,L=!r.resizeWidth&&("auto"===r.minWidth||"auto"===r.width);let Ve=!1;$||Q&&(0,_util.getRowid)(Xe,Q)===e||(g&&!V&&!me.immediate&&(a<pe.visibleStartIndex-pe.preloadSize||a>pe.visibleEndIndex+pe.preloadSize)||le&&!he.immediate&&!r.fixed&&(b<ce.visibleStartIndex-ce.preloadSize||b>ce.visibleEndIndex+ce.preloadSize))&&(Ve=!0),1<Be&&(v=de[a+Be-1])&&(o=ie[(0,_util.getRowid)(Xe,v)])&&(We+=o.oTop+(0,_util.getCellRestHeight)(o,_,y,_e)-$e.oTop-(0,_util.getCellRestHeight)($e,_,y,_e));C={};if(n&&ae){let l=0;if(1<Ue)for(let e=1;e<Ue;e++){var Ge=ne[je+e];Ge&&(l+=Ge.renderWidth)}C.width=r.renderWidth+l-De+"px"}g||n||p||s?C.height=We+"px":C.minHeight=We+"px";R=[];M&&oe?R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C})):(V&&R.push(...gl(e,z,We)),R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C,title:T?Xe.getCellLabel(t,r):null},Ve?[]:[(0,_vue.h)("div",{colid:I,rowid:e,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},r.renderCell(z))])),X&&S&&(c=S.rule,ve=qe?qe.valid:null,te=Object.assign(Object.assign(Object.assign({},z),S),{rule:S}),R.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,te)],style:c&&c.maxWidth?{width:c.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[ve?Xe.callSlot(ve,te):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},S.content)]])]))));let Pe=!1;return Y&&Ce.area&&Re&&((b||!0!==Re)&&Re!==r.field||(Pe=!0)),!M&&Me&&xe&&R.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Xe.handleColResizeMousedownEvent(e,l,z),onDblclick:e=>Xe.handleColResizeDblclickEvent(e,z)})),(ze||we)&&y.resizable&&R.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Xe.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Xe.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",I,Se?"col--vertical-"+Se:"",h?"col--"+h:"",Ee?"col--"+Ee:"",{"col--last":j,"col--tree-node":ke,"col--edit":w,"col--ellipsis":n,"col--cs-height":p,"col--rs-height":s,"col--to-row":Pe,"col--auto-height":A,"fixed--width":!L,"fixed--hidden":M,"is--padding":Z,"is--progress":M&&oe||Ve,"is--drag-cell":q&&(fe||be||!F),"is--drag-disabled":Ne,"col--dirty":Le,"col--active":J&&w&&re.row===t&&(re.column===r||"row"===ge.mode),"col--valid-error":!!S,"col--current":ee===r},(0,_dom.getPropClass)(Ae,z),(0,_dom.getPropClass)(Te,z),(0,_dom.getPropClass)(G,z)],key:B||le||g||ye.useKey||y.useKey||ye.drag?I:N},O),{style:Object.assign({},_xeUtils.default.isFunction(He)?He(z):He,_xeUtils.default.isFunction(P)?P(z):P)}),x),H&&M?[]:R)},ae=(h,m,w,_)=>{let f=Xe.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:R,rowStyle:D,editConfig:E,treeConfig:O}=Ke,{hasFixedColumn:I,treeExpandedFlag:S,scrollXLoad:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:z,expandColumn:q,selectRadioRow:$,pendingRowFlag:A,rowExpandHeightFlag:H,isRowGroupStatus:F}=Ye,{fullAllDataRowIdData:j,fullColumnIdData:L,treeExpandedMaps:N,pendingRowMaps:U,rowExpandedMaps:B}=Je,W=rl.value,V=e.value,G=p.value,P=Qe.value,X=sl.value,K=nl.value,{transform:Y,seqMode:Q}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(Xe).handleGetRowId,le=O||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=>{vl()||Xe.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{vl()||Xe.clearHoverRow()}),i&&(n=i.level,d=c||O&&Y&&"increasing"===Q?i._index+1:i.seq,s=i.index,u=i._index),{$table:Xe,seq:d,rowid:o,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:r,_rowIndex:u}),g=q&&!!z&&!!B[o];let e=!1,l=[],t=!1;E&&(t=Xe.isInsertByRow(a)),!O||T||Y||(l=a[Z],e=!!S&&l&&0<l.length&&!!N[o]),!X.drag||F||O&&!Y||(p.onDragstart=Xe.handleRowDragDragstartEvent,p.onDragend=Xe.handleRowDragDragendEvent,p.onDragover=Xe.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&&Xe.eqRow($,a),"row--checked":W.highlight&&Xe.isCheckedByCheckboxRow(a),"row--pending":!!A&&!!U[o],"row--group":c},(0,_dom.getPropClass)(R,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:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:y||M||T||X.useKey||X.drag||K.drag||F||O?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"),O&&(x.paddingLeft=n*G.indent+30+"px"),q||{}).showOverflow,p=q.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:Xe,seq:d,column:q,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&&!I,"col--ellipsis":p}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:x},[q.renderData(g)])])]))}}e&&J.push(...ae(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=I.fixedType,l=Je.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=k,l[e+"scroll"]=z,l[e+"table"]=q,l[e+"colgroup"]=$,l[e+"list"]=A,l[e+"xSpace"]=H,l[e+"ySpace"]=F,l[e+"emptyBlock"]=j})}),(0,_vue.onUnmounted)(()=>{var e=I.fixedType,l=Je.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=Xe.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=I;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}=Ye,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:f}=Je,b=T.value,y=Ze.value,C=te.value;let R=d,D=r,E=!1;!(p||v||g)||x&&"fixed"!==C.mode||o||i||(E=!0),u||!a&&c||(D=w),a&&E&&(D=t||[]),v&&h&&2<R.length&&(d=_[(0,_util.getRowid)(Xe,h)])&&(g=d._index,x=R[0],C=R[R.length-1],o=_[(0,_util.getRowid)(Xe,x)],i=_[(0,_util.getRowid)(Xe,C)],o)&&i&&(u=o._index,c=i._index,g<u?R=[h].concat(R):c<g&&(R=R.concat([h]))),a||n||p&&m&&2<D.length&&(w=f[m.id])&&(v=w._index,d=D[0],x=D[D.length-1],_=f[d.id],C=f[x.id],_)&&C&&(o=_._index,i=C._index,v<o?D=[m].concat(D):i<v&&(D=D.concat([m])));let O;u=e?e.empty:null,c={$table:Xe,$grid:l},O=u?Xe.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){Xe.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(Xe):(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:q,class:"vxe-table--body",xid:S,cellspacing:0,cellpadding:0,border:0,xvm:E?"1":null},[(0,_vue.h)("colgroup",{ref:$},D.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,E,R,D))]),(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){Xe.triggerCellAreaExtendMousedownEvent&&Xe.triggerCellAreaExtendMousedownEvent(e,{$table:Xe,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-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(Xe),a?renderEmptyElement(Xe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:j},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},O)])])])}}});
|
|
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(I){let Xe=(0,_vue.inject)("$xeTable",{}),{xID:S,props:Ke,context:M,reactData:Ye,internalData:Je}=Xe,{computeEditOpts:Qe,computeMouseOpts:Ze,computeCellOffsetWidth:el,computeAreaOpts:ll,computeDefaultRowHeight:tl,computeEmptyOpts:T,computeTooltipOpts:al,computeRadioOpts:e,computeExpandOpts:te,computeTreeOpts:c,computeCheckboxOpts:rl,computeCellOpts:ol,computeValidOpts:il,computeRowOpts:sl,computeColumnOpts:nl,computeRowDragOpts:dl,computeResizableOpts:ul,computeVirtualXOpts:cl,computeVirtualYOpts:pl}=Xe.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)(),vl=()=>{var e=Ke.delayHover,{lastScrollTime:l,isDragResize:t}=Ye;return!!(t||l&&Date.now()<l+e)},gl=(e,l,t)=>{var a=l.column,r=Je.afterFullData,o=Ke.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=Je.fullAllDataRowIdData;if(a&&a.line)return Xe.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)(Xe,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)(Xe):0)+16+"px"}})])]:[]},re=(A,e,l,H,F,t,j,L,a,r,N,U,o)=>{var i=Xe.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:W,height:d,treeConfig:V,cellClassName:G,cellStyle:P,align:X,spanMethod:K,mouseConfig:Y,editConfig:J,editRules:u,tooltipConfig:c,padding:p}=Ke,{tableData:v,dragRow:Q,overflowX:Z,currentColumn:ee,scrollXLoad:le,scrollYLoad:g,mergeBodyFlag:te,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:ae,editStore:re,isAllOverflow:oe,validErrorMaps:m}=Ye,{fullAllDataRowIdData:ie,fullColumnIdData:w,mergeBodyCellMaps:se,visibleColumn:ne,afterFullData:de,mergeBodyList:ue,scrollXStore:ce,scrollYStore:pe}=Je,_=ol.value,f=il.value,ve=rl.value,ge=Qe.value,b=al.value,xe=ul.value,he=cl.value,me=pl.value,{isAllColumnDrag:xe,isAllRowDrag:we}=xe,y=sl.value,C=dl.value,_e=tl.value,x=x?_.height||y.height:0,{disabledMethod:R,isCrossDrag:fe,isPeerDrag:be}=C,ye=nl.value,Ce=Ze.value,Re=ll.value,De=el.value,Re=Re.selectCellToRow,{type:Ee,cellRender:Oe,editRender:Ie,align:Se,showOverflow:Me,className:Te,treeNode:ke,rowResize:ze,padding:D,verticalAlign:E,slots:$e}=r,O=_.verticalAlign,re=re.actived,qe=ie[e]||{},I=r.id,w=w[I]||{},S=Ie||Oe,S=S?renderer.get(S.name):null,Ae=S?S.tableCellClassName||S.cellClassName:null,He=S?S.tableCellStyle||S.cellStyle:"";let Fe=b.showAll;var je=w.index,b=w._index,w=(0,_utils.isEnableConf)(Ie),h=h?qe.resizeHeight:0;let M=l?r.fixed!==l:r.fixed&&Z;Z=_xeUtils.default.eqNull(D)?null===p?_.padding:p:D,p=_xeUtils.default.eqNull(Me)?n:Me,D="ellipsis"===p;let T="title"===p,k=!0===p||"tooltip"===p;n=oe||T||k||D,Me=_xeUtils.default.isBoolean(r.resizable)?r.resizable:ye.resizable||s,p=!!x,s=0<h;let Le;x={},h=Se||(S?S.tableCellAlign:"")||X,Se=_xeUtils.default.eqNull(E)?O:E,S=m[e+":"+I],X=u&&f.showMessage&&("default"===f.message?d||1<v.length:"inline"===f.message),O={colid:I};let z={$table:Xe,$grid:i,isEdit:!1,seq:A,rowid:e,row:t,rowIndex:j,$rowIndex:L,_rowIndex:a,column:r,columnIndex:je,$columnIndex:N,_columnIndex:b,fixed:l,type:renderType,isHidden:!!M,level:F,visibleData:de,data:v,items:o},$=!1,Ne=!1,q=(($=y.drag?"row"===C.trigger||r.dragSort&&"cell"===C.trigger:$)&&(Ne=!(!R||!R(z))),(T||k||Fe||c)&&(x.onMouseenter=e=>{vl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,r):(k||Fe)&&Xe.triggerBodyTooltipEvent(e,z),Xe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Fe||c)&&(x.onMouseleave=e=>{vl()||((k||Fe)&&Xe.handleTargetLeaveEvent(e),Xe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),($||ve.range||Y)&&(x.onMousedown=e=>{Xe.triggerCellMousedownEvent(e,z)}),$&&(x.onMouseup=Xe.triggerCellMouseupEvent),x.onClick=e=>{Xe.triggerCellClickEvent(e,z)},!(x.onDblclick=e=>{Xe.triggerCellDblclickEvent(e,z)})),Ue=1,Be=1;if(te&&ue.length){E=se[a+":"+b];if(E){var{rowspan:m,colspan:u}=E;if(!m||!u)return null;1<m&&(q=!0,Be=m,O.rowspan=m),1<u&&(q=!0,Ue=u,O.colspan=u)}}else if(K){var{rowspan:d=1,colspan:i=1}=K(z)||{};if(!d||!i)return null;1<d&&(q=!0,Be=d,O.rowspan=d),1<i&&(q=!0,Ue=i,O.colspan=i)}!(M=M&&q&&(1<O.colspan||1<O.rowspan)?!1:M)&&J&&(Ie||Oe)&&(ge.showStatus||ge.showUpdateStatus)&&(Le=Xe.isUpdateByRow(t,r.field));A=g&&!n;let We=(0,_util.getCellRestHeight)(qe,_,y,_e);j=N===U.length-1,L=!r.resizeWidth&&("auto"===r.minWidth||"auto"===r.width);let Ve=!1;q||Q&&(0,_util.getRowid)(Xe,Q)===e||(g&&!V&&!me.immediate&&(a<pe.visibleStartIndex-pe.preloadSize||a>pe.visibleEndIndex+pe.preloadSize)||le&&!he.immediate&&!r.fixed&&(b<ce.visibleStartIndex-ce.preloadSize||b>ce.visibleEndIndex+ce.preloadSize))&&(Ve=!0),1<Be&&(v=de[a+Be-1])&&(o=ie[(0,_util.getRowid)(Xe,v)])&&(We+=o.oTop+(0,_util.getCellRestHeight)(o,_,y,_e)-qe.oTop-(0,_util.getCellRestHeight)(qe,_,y,_e));C={};if(n&&ae){let l=0;if(1<Ue)for(let e=1;e<Ue;e++){var Ge=ne[je+e];Ge&&(l+=Ge.renderWidth)}C.width=r.renderWidth+l-De+"px"}g||n||p||s?C.height=We+"px":C.minHeight=We+"px";R=[];M&&oe?R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C})):(V&&R.push(...gl(e,z,We)),R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C,title:T?Xe.getCellLabel(t,r):null},Ve?[]:[(0,_vue.h)("div",{colid:I,rowid:e,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},r.renderCell(z))])),X&&S&&(c=S.rule,ve=$e?$e.valid:null,te=Object.assign(Object.assign(Object.assign({},z),S),{rule:S}),R.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,te)],style:c&&c.maxWidth?{width:c.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[ve?Xe.callSlot(ve,te):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},S.content)]])]))));let Pe=!1;return Y&&Ce.area&&Re&&((b||!0!==Re)&&Re!==r.field||(Pe=!0)),!M&&Me&&xe&&R.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Xe.handleColResizeMousedownEvent(e,l,z),onDblclick:e=>Xe.handleColResizeDblclickEvent(e,z)})),(ze||we)&&y.resizable&&R.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Xe.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Xe.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",I,Se?"col--vertical-"+Se:"",h?"col--"+h:"",Ee?"col--"+Ee:"",{"col--last":j,"col--tree-node":ke,"col--edit":w,"col--ellipsis":n,"col--cs-height":p,"col--rs-height":s,"col--to-row":Pe,"col--auto-height":A,"fixed--width":!L,"fixed--hidden":M,"is--padding":Z,"is--progress":M&&oe||Ve,"is--drag-cell":$&&(fe||be||!F),"is--drag-disabled":Ne,"col--dirty":Le,"col--active":J&&w&&re.row===t&&(re.column===r||"row"===ge.mode),"col--valid-error":!!S,"col--current":ee===r},(0,_dom.getPropClass)(Ae,z),(0,_dom.getPropClass)(Te,z),(0,_dom.getPropClass)(G,z)],key:B||le||g||ye.useKey||y.useKey||ye.drag?I:N},O),{style:Object.assign({},_xeUtils.default.isFunction(He)?He(z):He,_xeUtils.default.isFunction(P)?P(z):P)}),x),H&&M?[]:R)},ae=(h,m,w,_)=>{let f=Xe.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:R,rowStyle:D,editConfig:E,treeConfig:O}=Ke,{hasFixedColumn:I,treeExpandedFlag:S,scrollXLoad:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:z,expandColumn:$,selectRadioRow:q,pendingRowFlag:A,rowExpandHeightFlag:H,isRowGroupStatus:F}=Ye,{fullAllDataRowIdData:j,fullColumnIdData:L,treeExpandedMaps:N,pendingRowMaps:U,rowExpandedMaps:B}=Je,W=rl.value,V=e.value,G=c.value,P=Qe.value,X=sl.value,K=nl.value,{transform:Y,seqMode:Q}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(Xe).handleGetRowId,le=O||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=>{vl()||Xe.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{vl()||Xe.clearHoverRow()}),i&&(n=i.level,d=c||O&&Y&&"increasing"===Q?i._index+1:i.seq,s=i.index,u=i._index),{$table:Xe,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;E&&(t=Xe.isInsertByRow(a)),!O||T||Y||(l=a[Z],e=!!S&&l&&0<l.length&&!!N[o]),!X.drag||F||O&&!Y||(p.onDragstart=Xe.handleRowDragDragstartEvent,p.onDragend=Xe.handleRowDragDragendEvent,p.onDragover=Xe.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&&Xe.eqRow(q,a),"row--checked":W.highlight&&Xe.isCheckedByCheckboxRow(a),"row--pending":!!A&&!!U[o],"row--group":c},(0,_dom.getPropClass)(R,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:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:y||M||T||X.useKey||X.drag||K.drag||F||O?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"),O&&(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:Xe,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&&!I,"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=I.fixedType,l=Je.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=I.fixedType,l=Je.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=Xe.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=I;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}=Ye,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:f}=Je,b=T.value,y=Ze.value,C=te.value;let R=d,D=r,E=!1;!(p||v||g)||x&&"fixed"!==C.mode||o||i||(E=!0),u||!a&&c||(D=w),a&&E&&(D=t||[]),v&&h&&2<R.length&&(d=_[(0,_util.getRowid)(Xe,h)])&&(g=d._index,x=R[0],C=R[R.length-1],o=_[(0,_util.getRowid)(Xe,x)],i=_[(0,_util.getRowid)(Xe,C)],o)&&i&&(u=o._index,c=i._index,g<u?R=[h].concat(R):c<g&&(R=R.concat([h]))),a||n||p&&m&&2<D.length&&(w=f[m.id])&&(v=w._index,d=D[0],x=D[D.length-1],_=f[d.id],C=f[x.id],_)&&C&&(o=_._index,i=C._index,v<o?D=[m].concat(D):i<v&&(D=D.concat([m])));let O;u=e?e.empty:null,c={$table:Xe,$grid:l},O=u?Xe.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){Xe.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(Xe):(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:E?"1":null},[(0,_vue.h)("colgroup",{ref:q},D.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,E,R,D))]),(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){Xe.triggerCellAreaExtendMousedownEvent&&Xe.triggerCellAreaExtendMousedownEvent(e,{$table:Xe,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-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(Xe),a?renderEmptyElement(Xe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:j},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},O)])])])}}});
|
package/lib/table/src/table.js
CHANGED
|
@@ -38,7 +38,7 @@ focused:{row:null,column:null}},// 存放 tooltip 相关信息
|
|
|
38
38
|
tooltipStore:{row:null,column:null,content:null,visible:false,currOpts:{}},// 存放数据校验相关信息
|
|
39
39
|
validStore:{visible:false},validErrorMaps:{},// 导入相关信息
|
|
40
40
|
importStore:{inited:false,file:null,type:'',modeList:[],typeList:[],filename:'',visible:false},importParams:{mode:'',types:null,message:true},// 导出相关信息
|
|
41
|
-
exportStore:{inited:false,name:'',modeList:[],typeList:[],columns:[],isPrint:false,hasFooter:false,hasMerge:false,hasTree:false,hasColgroup:false,visible:false},exportParams:{filename:'',sheetName:'',mode:'',type:'',isColgroup:false,isMerge:false,isAllExpand:false,useStyle:false,original:false,message:true,isHeader:false,isTitle:false,isFooter:false},visiblwRowsFlag:1,isRowGroupStatus:false,rowGroupList:[],aggHandleFields:[],aggHandleAggColumns:[],rowGroupExpandedFlag:1,rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,insertRowFlag:1,removeRowFlag:1,mergeBodyFlag:1,mergeFootFlag:1,rowHeightStore:{large:52,default:48,medium:44,small:40,mini:36},scrollVMLoading:false,scrollYHeight:0,scrollYTop:0,isScrollYBig:false,scrollXLeft:0,scrollXWidth:0,isScrollXBig:false,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:false,isDragRowMove:false,dragRow:null,isDragColMove:false,dragCol:null,dragTipText:'',isDragResize:false,isRowLoading:false,isColLoading:false});const internalData={tZindex:0,currKeyField:'',isCurrDeepKey:false,elemStore:{},// 存放横向 X 虚拟滚动相关的信息
|
|
41
|
+
exportStore:{inited:false,name:'',modeList:[],typeList:[],columns:[],isPrint:false,hasFooter:false,hasMerge:false,hasTree:false,hasColgroup:false,visible:false},exportParams:{filename:'',sheetName:'',mode:'',type:'',isColgroup:false,isMerge:false,isAllExpand:false,useStyle:false,original:false,message:true,isHeader:false,isTitle:false,isFooter:false},visiblwRowsFlag:1,isRowGroupStatus:false,rowGroupList:[],aggHandleFields:[],aggHandleAggColumns:[],rowGroupExpandedFlag:1,rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,insertRowFlag:1,removeRowFlag:1,mergeBodyFlag:1,mergeFootFlag:1,rowHeightStore:{large:52,default:48,medium:44,small:40,mini:36},scrollVMLoading:false,scrollYHeight:0,scrollYTop:0,isScrollYBig:false,scrollXLeft:0,scrollXWidth:0,isScrollXBig:false,lazScrollLoading:false,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:false,isDragRowMove:false,dragRow:null,isDragColMove:false,dragCol:null,dragTipText:'',isDragResize:false,isRowLoading:false,isColLoading:false});const internalData={tZindex:0,currKeyField:'',isCurrDeepKey:false,elemStore:{},// 存放横向 X 虚拟滚动相关的信息
|
|
42
42
|
scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},// 存放纵向 Y 虚拟滚动相关信息
|
|
43
43
|
scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},// 表格宽度
|
|
44
44
|
tableWidth:0,// 表格高度
|
|
@@ -204,7 +204,7 @@ const computeScrollLoad=()=>{return(0,_vue.nextTick)().then(()=>{const{scrollXLo
|
|
|
204
204
|
if(scrollXLoad){const{toVisibleIndex:toXVisibleIndex,visibleSize:visibleXSize}=handleVirtualXVisible();const offsetXSize=Math.max(0,virtualXOpts.oSize?_xeUtils.default.toNumber(virtualXOpts.oSize):0);scrollXStore.preloadSize=_xeUtils.default.toNumber(virtualXOpts.preSize);scrollXStore.offsetSize=offsetXSize;scrollXStore.visibleSize=visibleXSize;scrollXStore.endIndex=Math.max(scrollXStore.startIndex+scrollXStore.visibleSize+offsetXSize,scrollXStore.endIndex);scrollXStore.visibleStartIndex=Math.max(scrollXStore.startIndex,toXVisibleIndex);scrollXStore.visibleEndIndex=Math.min(scrollXStore.endIndex,toXVisibleIndex+visibleXSize);$xeTable.updateScrollXData().then(()=>{loadScrollXData();});}else{$xeTable.updateScrollXSpace();}// 计算 Y 逻辑
|
|
205
205
|
const rowHeight=computeRowHeight();scrollYStore.rowHeight=rowHeight;// 已废弃
|
|
206
206
|
reactData.rowHeight=rowHeight;const{toVisibleIndex:toYVisibleIndex,visibleSize:visibleYSize}=handleVirtualYVisible();if(scrollYLoad){const offsetYSize=Math.max(0,virtualYOpts.oSize?_xeUtils.default.toNumber(virtualYOpts.oSize):0);scrollYStore.preloadSize=_xeUtils.default.toNumber(virtualYOpts.preSize);scrollYStore.offsetSize=offsetYSize;scrollYStore.visibleSize=visibleYSize;scrollYStore.endIndex=Math.max(scrollYStore.startIndex+visibleYSize+offsetYSize,scrollYStore.endIndex);scrollYStore.visibleStartIndex=Math.max(scrollYStore.startIndex,toYVisibleIndex);scrollYStore.visibleEndIndex=Math.min(scrollYStore.endIndex,toYVisibleIndex+visibleYSize);$xeTable.updateScrollYData().then(()=>{loadScrollYData();});}else{$xeTable.updateScrollYSpace();}});};const calcScrollbar=()=>{const{scrollXWidth,scrollYHeight}=reactData;const{elemStore}=internalData;const scrollbarOpts=computeScrollbarOpts.value;const bodyWrapperElem=(0,_util.getRefElem)(elemStore['main-body-wrapper']);const headerTableElem=(0,_util.getRefElem)(elemStore['main-header-table']);const footerTableElem=(0,_util.getRefElem)(elemStore['main-footer-table']);const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;let overflowY=false;let overflowX=false;if(bodyWrapperElem){overflowY=scrollYHeight>bodyWrapperElem.clientHeight;if(yHandleEl){reactData.scrollbarWidth=scrollbarOpts.width||yHandleEl.offsetWidth-yHandleEl.clientWidth||14;}reactData.overflowY=overflowY;overflowX=scrollXWidth>bodyWrapperElem.clientWidth;if(xHandleEl){reactData.scrollbarHeight=scrollbarOpts.height||xHandleEl.offsetHeight-xHandleEl.clientHeight||14;}const headerHeight=headerTableElem?headerTableElem.clientHeight:0;const footerHeight=footerTableElem?footerTableElem.clientHeight:0;internalData.tableHeight=bodyWrapperElem.offsetHeight;internalData.headerHeight=headerHeight;internalData.footerHeight=footerHeight;reactData.overflowX=overflowX;reactData.parentHeight=Math.max(internalData.headerHeight+footerHeight+20,$xeTable.getParentHeight());}if(overflowX){$xeTable.checkScrolling();}};const handleRecalculateStyle=(reFull,reWidth,reHeight)=>{const el=refElem.value;internalData.rceRunTime=Date.now();if(!el||!el.clientWidth){return(0,_vue.nextTick)();}const varEl=refVarElem.value;if(varEl){const[defEl,mediumEl,smallEl,miniEl]=varEl.children;calcVarRowHeightConfig('default',defEl);calcVarRowHeightConfig('medium',mediumEl);calcVarRowHeightConfig('small',smallEl);calcVarRowHeightConfig('mini',miniEl);}if(reWidth){calcCellWidth();}if(reFull){autoCellWidth();}calcScrollbar();updateStyle();updateRowExpandStyle();return computeScrollLoad().then(()=>{// 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
|
|
207
|
-
if(reWidth){calcCellWidth();}if(reFull){autoCellWidth();}if(reHeight){calcCellHeight();}updateStyle();calcScrollbar();if(reFull){updateRowOffsetTop();}updateRowExpandStyle();if(reFull){return computeScrollLoad();}});};const handleLazyRecalculate=(reFull,reWidth,reHeight)=>{return new Promise(resolve=>{const{rceTimeout,rceRunTime}=internalData;const resizeOpts=computeResizeOpts.value;const refreshDelay=resizeOpts.refreshDelay||20;const el=refElem.value;if(el&&el.clientWidth){autoCellWidth();updateRowExpandStyle();}if(rceTimeout){clearTimeout(rceTimeout);if(rceRunTime&&rceRunTime+(refreshDelay-5)<Date.now()){resolve(handleRecalculateStyle(
|
|
207
|
+
if(reWidth){calcCellWidth();}if(reFull){autoCellWidth();}if(reHeight){calcCellHeight();}updateStyle();calcScrollbar();if(reFull){updateRowOffsetTop();}updateRowExpandStyle();if(reFull){return computeScrollLoad();}});};const handleLazyRecalculate=(reFull,reWidth,reHeight)=>{return new Promise(resolve=>{const{rceTimeout,rceRunTime}=internalData;const resizeOpts=computeResizeOpts.value;const refreshDelay=resizeOpts.refreshDelay||20;const el=refElem.value;if(el&&el.clientWidth){autoCellWidth();updateRowExpandStyle();}if(rceTimeout){clearTimeout(rceTimeout);if(rceRunTime&&rceRunTime+(refreshDelay-5)<Date.now()){resolve(handleRecalculateStyle(reFull,reWidth,reHeight));}else{(0,_vue.nextTick)(()=>{resolve();});}}else{resolve(handleRecalculateStyle(reFull,reWidth,reHeight));}internalData.rceTimeout=setTimeout(()=>{internalData.rceTimeout=undefined;handleRecalculateStyle(reFull,reWidth,reHeight);},refreshDelay);});};const handleUpdateAggValues=()=>{const{visibleColumn}=internalData;const aggCols=[];visibleColumn.forEach(column=>{if(column.aggFunc){aggCols.push(column);}});reactData.aggHandleAggColumns=aggCols;};const handleUpdateRowGroup=groupFields=>{const aggFields=[];const aggConfs=[];if(groupFields){(_xeUtils.default.isArray(groupFields)?groupFields:[groupFields]).forEach(field=>{aggFields.push(field);aggConfs.push({field});});}reactData.rowGroupList=aggConfs;reactData.aggHandleFields=aggFields;handleUpdateAggValues();};const handleeGroupSummary=aggList=>{const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;if(mapChildrenField){_xeUtils.default.lastEach(aggList,aggRow=>{let count=0;_xeUtils.default.each(aggRow[mapChildrenField],row=>{if(row.isAggregate){count+=row.childCount||0;}else{count++;}});aggRow.childCount=count;});if($xeTable.handlePivotTableAggregateData){$xeTable.handlePivotTableAggregateData(aggList);}}};const updateGroupData=()=>{const{aggregateConfig,rowGroupConfig}=props;const{isRowGroupStatus}=reactData;const{tableFullGroupData}=internalData;const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;if((aggregateConfig||rowGroupConfig)&&isRowGroupStatus){const aggList=[];_xeUtils.default.eachTree(tableFullGroupData,row=>{if(row.isAggregate){aggList.push(row);}},{children:mapChildrenField});handleeGroupSummary(aggList);}};const handleGroupData=(list,rowGroups)=>{let fullData=list;let treeData=list;if(rowGroups){const aggregateOpts=computeAggregateOpts.value;const{rowField,parentField,childrenField,mapChildrenField}=aggregateOpts;const checkboxOpts=computeCheckboxOpts.value;const{checkField}=checkboxOpts;const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;const rgItem=rowGroups[0];if(rgItem&&rowField&&parentField&&childrenField&&mapChildrenField){fullData=[];treeData=[];const groupField=rgItem.field;const groupColumn=$xeTable.getColumnByField(groupField);const groupMaps={};const aggList=[];const rowkey=(0,_util.getRowkey)($xeTable);list.forEach(row=>{const cellValue=groupColumn?$xeTable.getCellLabel(row,groupColumn):_xeUtils.default.get(row,groupField);const groupValue=_xeUtils.default.eqNull(cellValue)?'':cellValue;let childList=groupMaps[groupValue];if(!childList){childList=[];groupMaps[groupValue]=childList;}if(row.isAggregate){row.isAggregate=undefined;}childList.push(row);});_xeUtils.default.objectEach(groupMaps,(childList,groupValue)=>{const{fullData:childFullData,treeData:childTreeData}=handleGroupData(childList,rowGroups.slice(1));const aggRow={isAggregate:true,aggData:{},groupContent:groupValue,groupField,childCount:0,[rowField]:(0,_util.getRowUniqueId)(),[parentField]:null,[rowkey]:(0,_util.getRowUniqueId)(),[childrenField]:childTreeData,[mapChildrenField]:childTreeData};if(checkField){aggRow[checkField]=false;}if(indeterminateField){aggRow[indeterminateField]=false;}aggList.push(aggRow);treeData.push(aggRow);fullData.push(aggRow);if(childFullData.length){fullData.push(...childFullData);}});handleeGroupSummary(aggList);}}return{treeData,fullData};};/**
|
|
208
208
|
* 加载表格数据
|
|
209
209
|
* @param {Array} datas 数据
|
|
210
210
|
*/const loadTableData=(datas,isReset)=>{const{keepSource,treeConfig,rowGroupConfig,aggregateConfig}=props;const{rowGroupList,scrollYLoad:oldScrollYLoad}=reactData;const{scrollYStore,scrollXStore,lastScrollLeft,lastScrollTop}=internalData;const rowOpts=computeRowOpts.value;const treeOpts=computeTreeOpts.value;const expandOpts=computeExpandOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;let treeData=[];let fullData=(0,_vue.reactive)(datas?datas.slice(0):[]);// 转为响应式数据
|
|
@@ -232,9 +232,9 @@ if(sYLoad){scrollYStore.endIndex=scrollYStore.visibleSize;}if(sYLoad){if(reactDa
|
|
|
232
232
|
if(!(props.height||props.maxHeight)){(0,_log.errLog)('vxe.error.reqProp',['height | max-height | virtual-y-config={enabled: false}']);}// if (!props.showOverflow) {
|
|
233
233
|
// warnLog('vxe.error.reqProp', ['table.show-overflow'])
|
|
234
234
|
// }
|
|
235
|
-
if(props.spanMethod){(0,_log.errLog)('vxe.error.scrollErrProp',['table.span-method']);}}handleReserveStatus();$xeTable.checkSelectionStatus();return new Promise(resolve=>{(0,_vue.nextTick)().then(()=>handleRecalculateStyle(false,false,false)).then(()=>{
|
|
235
|
+
if(props.spanMethod){(0,_log.errLog)('vxe.error.scrollErrProp',['table.span-method']);}}handleReserveStatus();$xeTable.checkSelectionStatus();return new Promise(resolve=>{(0,_vue.nextTick)().then(()=>handleRecalculateStyle(false,false,false)).then(()=>{handleRecalculateStyle(false,true,true);updateRowOffsetTop();}).then(()=>{let targetScrollLeft=lastScrollLeft;let targetScrollTop=lastScrollTop;const virtualXOpts=computeVirtualXOpts.value;const virtualYOpts=computeVirtualYOpts.value;// 是否在更新数据之后自动滚动重置滚动条
|
|
236
236
|
if(virtualXOpts.scrollToLeftOnChange){targetScrollLeft=0;}if(virtualYOpts.scrollToTopOnChange){targetScrollTop=0;}reactData.isRowLoading=false;handleRecalculateStyle(false,false,false);// 是否变更虚拟滚动
|
|
237
|
-
if(oldScrollYLoad===sYLoad){(0,_util.restoreScrollLocation)($xeTable,targetScrollLeft,targetScrollTop).then(()=>{
|
|
237
|
+
if(oldScrollYLoad===sYLoad){(0,_util.restoreScrollLocation)($xeTable,targetScrollLeft,targetScrollTop).then(()=>{handleRecalculateStyle(false,true,true);updateRowOffsetTop();resolve();});}else{setTimeout(()=>{(0,_util.restoreScrollLocation)($xeTable,targetScrollLeft,targetScrollTop).then(()=>{handleRecalculateStyle(false,true,true);updateRowOffsetTop();resolve();});});}});});});};/**
|
|
238
238
|
* 处理数据加载默认行为
|
|
239
239
|
* 默认执行一次,除非被重置
|
|
240
240
|
*/const handleLoadDefaults=()=>{handleDefaultSelectionChecked();handleDefaultRadioChecked();handleDefaultRowExpand();handleDefaultTreeExpand();handleDefaultMergeCells();handleDefaultMergeFooterItems();(0,_vue.nextTick)(()=>setTimeout(()=>$xeTable.recalculate()));};/**
|
|
@@ -262,7 +262,7 @@ tableFullColumn.forEach(column=>{if(column.visible){if(column.fixed==='left'){le
|
|
|
262
262
|
// }
|
|
263
263
|
if(props.spanMethod){(0,_log.warnLog)('vxe.error.scrollErrProp',['span-method']);}if(props.footerSpanMethod){(0,_log.warnLog)('vxe.error.scrollErrProp',['footer-span-method']);}if(isReset){const{visibleSize}=handleVirtualXVisible();scrollXStore.startIndex=0;scrollXStore.endIndex=visibleSize;scrollXStore.visibleSize=visibleSize;scrollXStore.visibleStartIndex=0;scrollXStore.visibleEndIndex=visibleSize;}}// 如果列被显示/隐藏,则清除合并状态
|
|
264
264
|
// 如果列被设置为固定,则清除合并状态
|
|
265
|
-
if(visibleColumn.length!==internalData.visibleColumn.length||!internalData.visibleColumn.every((column,index)=>column===visibleColumn[index])){$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();}visibleColumn.forEach((column,index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest._index=index;}});handleTableColumn();handleUpdateAggValues();if(isReset){updateColumnOffsetLeft();return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();};const initColumnSort=()=>{const{collectColumn}=internalData;collectColumn.forEach((column,index)=>{const sortIndex=index+1;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;});};const handleColumn=collectColumn=>{const expandOpts=computeExpandOpts.value;internalData.collectColumn=collectColumn;const tableFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tableFullColumn;reactData.isColLoading=true;initColumnSort();return Promise.resolve(restoreCustomStorage()).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap();parseColumns(true).then(()=>{if(reactData.scrollXLoad){loadScrollXData();}});$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);$xeTable.handleAggregateSummaryData();if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){(0,_log.warnLog)('vxe.error.scrollErrProp',['column.type=expand']);}return(0,_vue.nextTick)().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}reactData.isColLoading=false;return
|
|
265
|
+
if(visibleColumn.length!==internalData.visibleColumn.length||!internalData.visibleColumn.every((column,index)=>column===visibleColumn[index])){$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();}visibleColumn.forEach((column,index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest._index=index;}});handleTableColumn();handleUpdateAggValues();if(isReset){updateColumnOffsetLeft();return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();};const initColumnSort=()=>{const{collectColumn}=internalData;collectColumn.forEach((column,index)=>{const sortIndex=index+1;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;});};const handleColumn=collectColumn=>{const expandOpts=computeExpandOpts.value;internalData.collectColumn=collectColumn;const tableFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tableFullColumn;reactData.isColLoading=true;initColumnSort();return Promise.resolve(restoreCustomStorage()).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap();parseColumns(true).then(()=>{if(reactData.scrollXLoad){loadScrollXData();}});$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);$xeTable.handleAggregateSummaryData();if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){(0,_log.warnLog)('vxe.error.scrollErrProp',['column.type=expand']);}return(0,_vue.nextTick)().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}reactData.isColLoading=false;return handleLazyRecalculate(false,true,true);});});};const updateScrollXStatus=fullColumn=>{const virtualXOpts=computeVirtualXOpts.value;const allCols=fullColumn||internalData.tableFullColumn;// 如果gt为0,则总是启用
|
|
266
266
|
const scrollXLoad=!!virtualXOpts.enabled&&virtualXOpts.gt>-1&&(virtualXOpts.gt===0||virtualXOpts.gt<allCols.length);reactData.scrollXLoad=scrollXLoad;return scrollXLoad;};const updateScrollYStatus=fullData=>{const{treeConfig}=props;const virtualYOpts=computeVirtualYOpts.value;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const allList=fullData||internalData.tableFullData;// 如果gt为0,则总是启用
|
|
267
267
|
const scrollYLoad=(transform||!treeConfig)&&!!virtualYOpts.enabled&&virtualYOpts.gt>-1&&(virtualYOpts.gt===0||virtualYOpts.gt<allList.length);reactData.scrollYLoad=scrollYLoad;return scrollYLoad;};/**
|
|
268
268
|
* 展开与收起树节点
|
|
@@ -289,7 +289,7 @@ const matchObj=_xeUtils.default.findTree(tableFullGroupData,item=>(0,_util.getRo
|
|
|
289
289
|
* @returns
|
|
290
290
|
*/const handleRowGroupVirtualExpand=(rows,expanded)=>{return handleRowGroupBaseExpand(rows,expanded).then(()=>{handleVirtualTreeToList();$xeTable.handleTableData();reactData.rowGroupExpandedFlag++;updateAfterDataIndex();return(0,_vue.nextTick)();}).then(()=>{return handleLazyRecalculate(true,true,true);}).then(()=>{setTimeout(()=>{$xeTable.updateCellAreas();},30);});};const handleCheckAllEvent=(evnt,value)=>{handleCheckedAllCheckboxRow(value);if(evnt){dispatchEvent('checkbox-all',{records:()=>$xeTable.getCheckboxRecords(),reserves:()=>$xeTable.getCheckboxReserveRecords(),indeterminates:()=>$xeTable.getCheckboxIndeterminateRecords(),checked:value},evnt);}};/**
|
|
291
291
|
* 纵向 Y 可视渲染处理
|
|
292
|
-
*/const loadScrollYData=()=>{const{isAllOverflow,isScrollYBig}=reactData;const{mergeBodyList,scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible();const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeBodyList,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}};const createGetRowCacheProp=prop=>{return function(row){const{fullAllDataRowIdData}=internalData;if(row){const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest[prop];}}return-1;};};const createGetColumnCacheProp=prop=>{return function(column){const{fullColumnIdData}=internalData;if(column){const colRest=fullColumnIdData[column.id];if(colRest){return colRest[prop];}}return-1;};};const lazyScrollXData=()=>{const{lxTimeout,lxRunTime,scrollXStore}=internalData;const{visibleSize}=scrollXStore;const fpsTime=visibleSize>26?26:visibleSize>16?14:6;if(lxTimeout){clearTimeout(lxTimeout);}if(!lxRunTime||lxRunTime+fpsTime<Date.now()){internalData.lxRunTime=Date.now();loadScrollXData();}internalData.lxTimeout=setTimeout(()=>{internalData.lxTimeout=undefined;internalData.lxRunTime=undefined;loadScrollXData();},fpsTime);};const lazyScrollYData=()=>{const{lyTimeout,lyRunTime,scrollYStore}=internalData;const{visibleSize}=scrollYStore;const fpsTime=visibleSize>30?32:visibleSize>20?18:8;if(lyTimeout){clearTimeout(lyTimeout);}if(!lyRunTime||lyRunTime+fpsTime<Date.now()){internalData.lyRunTime=Date.now();loadScrollYData();}internalData.lyTimeout=setTimeout(()=>{internalData.lyTimeout=undefined;internalData.lyRunTime=undefined;loadScrollYData();},fpsTime);};const checkLastSyncScroll=(isRollX,isRollY)=>{const{scrollXLoad,scrollYLoad,isAllOverflow}=reactData;const{lcsTimeout}=internalData;if(lcsTimeout){clearTimeout(lcsTimeout);}internalData.lcsTimeout=setTimeout(()=>{internalData.lcsRunTime=Date.now();internalData.lcsTimeout=undefined;internalData.intoRunScroll=false;internalData.inVirtualScroll=false;internalData.inWheelScroll=false;internalData.inHeaderScroll=false;internalData.inBodyScroll=false;internalData.inFooterScroll=false;internalData.scrollRenderType='';if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}if(isRollX&&scrollXLoad){$xeTable.updateScrollXData();}if(isRollY&&scrollYLoad){$xeTable.updateScrollYData().then(()=>{if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}$xeTable.updateScrollYSpace();});}updateRowExpandStyle();$xeTable.updateCellAreas();},200);};const getWheelSpeed=lastScrollTime=>{let multiple=1;const currTime=Date.now();if(lastScrollTime+25>currTime){multiple=1.18;}else if(lastScrollTime+30>currTime){multiple=1.15;}else if(lastScrollTime+40>currTime){multiple=1.12;}else if(lastScrollTime+55>currTime){multiple=1.09;}else if(lastScrollTime+75>currTime){multiple=1.06;}else if(lastScrollTime+100>currTime){multiple=1.03;}return multiple;};const wheelScrollLeftTo=(scrollLeft,cb)=>{requestAnimationFrame(()=>{cb(scrollLeft);});};const wheelScrollTopTo=(diffNum,cb)=>{const duration=Math.abs(diffNum);const startTime=performance.now();let countTop=0;const step=timestamp=>{let progress=(timestamp-startTime)/duration;if(progress>1){progress=1;}const easedProgress=Math.pow(progress,2);const offsetTop=Math.floor(diffNum*easedProgress)-countTop;countTop+=offsetTop;cb(offsetTop);if(progress<1){requestAnimationFrame(step);}};requestAnimationFrame(step);};const dispatchEvent=(type,params,evnt)=>{emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid},params));};const handleScrollToRowColumn=(fieldOrColumn,row)=>{const{fullColumnIdData}=internalData;const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(column&&fullColumnIdData[column.id]){return(0,_util.colToVisible)($xeTable,column,row);}return(0,_vue.nextTick)();};const handleUpdateResize=()=>{const el=refElem.value;if(el&&el.clientWidth&&el.clientHeight){$xeTable.recalculate();}};const handleUpdateColResize=(evnt,params)=>{$xeTable.analyColumnWidth();$xeTable.recalculate().then(()=>{$xeTable.saveCustomStore('update:width');$xeTable.updateCellAreas();$xeTable.dispatchEvent('column-resizable-change',params,evnt);// 已废弃 resizable-change
|
|
292
|
+
*/const loadScrollYData=()=>{const{isAllOverflow,isScrollYBig}=reactData;const{mergeBodyList,scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible();const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeBodyList,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}};const createGetRowCacheProp=prop=>{return function(row){const{fullAllDataRowIdData}=internalData;if(row){const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest[prop];}}return-1;};};const createGetColumnCacheProp=prop=>{return function(column){const{fullColumnIdData}=internalData;if(column){const colRest=fullColumnIdData[column.id];if(colRest){return colRest[prop];}}return-1;};};const lazyScrollXData=()=>{const{lxTimeout,lxRunTime,scrollXStore}=internalData;const{visibleSize}=scrollXStore;const fpsTime=visibleSize>26?26:visibleSize>16?14:6;if(lxTimeout){clearTimeout(lxTimeout);}if(!lxRunTime||lxRunTime+fpsTime<Date.now()){internalData.lxRunTime=Date.now();loadScrollXData();}internalData.lxTimeout=setTimeout(()=>{internalData.lxTimeout=undefined;internalData.lxRunTime=undefined;loadScrollXData();},fpsTime);};const lazyScrollYData=()=>{const{lyTimeout,lyRunTime,scrollYStore}=internalData;const{visibleSize}=scrollYStore;const fpsTime=visibleSize>30?32:visibleSize>20?18:8;if(lyTimeout){clearTimeout(lyTimeout);}if(!lyRunTime||lyRunTime+fpsTime<Date.now()){internalData.lyRunTime=Date.now();loadScrollYData();}internalData.lyTimeout=setTimeout(()=>{internalData.lyTimeout=undefined;internalData.lyRunTime=undefined;loadScrollYData();},fpsTime);};const checkLastSyncScroll=(isRollX,isRollY)=>{const{scrollXLoad,scrollYLoad,isAllOverflow}=reactData;const{lcsTimeout}=internalData;reactData.lazScrollLoading=true;if(lcsTimeout){clearTimeout(lcsTimeout);}internalData.lcsTimeout=setTimeout(()=>{internalData.lcsRunTime=Date.now();internalData.lcsTimeout=undefined;internalData.intoRunScroll=false;internalData.inVirtualScroll=false;internalData.inWheelScroll=false;internalData.inHeaderScroll=false;internalData.inBodyScroll=false;internalData.inFooterScroll=false;reactData.lazScrollLoading=false;internalData.scrollRenderType='';if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}if(isRollX&&scrollXLoad){$xeTable.updateScrollXData();}if(isRollY&&scrollYLoad){$xeTable.updateScrollYData().then(()=>{if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}$xeTable.updateScrollYSpace();});}updateRowExpandStyle();$xeTable.updateCellAreas();},200);};const getWheelSpeed=lastScrollTime=>{let multiple=1;const currTime=Date.now();if(lastScrollTime+25>currTime){multiple=1.18;}else if(lastScrollTime+30>currTime){multiple=1.15;}else if(lastScrollTime+40>currTime){multiple=1.12;}else if(lastScrollTime+55>currTime){multiple=1.09;}else if(lastScrollTime+75>currTime){multiple=1.06;}else if(lastScrollTime+100>currTime){multiple=1.03;}return multiple;};const wheelScrollLeftTo=(scrollLeft,cb)=>{requestAnimationFrame(()=>{cb(scrollLeft);});};const wheelScrollTopTo=(diffNum,cb)=>{const duration=Math.abs(diffNum);const startTime=performance.now();let countTop=0;const step=timestamp=>{let progress=(timestamp-startTime)/duration;if(progress>1){progress=1;}const easedProgress=Math.pow(progress,2);const offsetTop=Math.floor(diffNum*easedProgress)-countTop;countTop+=offsetTop;cb(offsetTop);if(progress<1){requestAnimationFrame(step);}};requestAnimationFrame(step);};const dispatchEvent=(type,params,evnt)=>{emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid},params));};const handleScrollToRowColumn=(fieldOrColumn,row)=>{const{fullColumnIdData}=internalData;const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(column&&fullColumnIdData[column.id]){return(0,_util.colToVisible)($xeTable,column,row);}return(0,_vue.nextTick)();};const handleUpdateResize=()=>{const el=refElem.value;if(el&&el.clientWidth&&el.clientHeight){$xeTable.recalculate();}};const handleUpdateColResize=(evnt,params)=>{$xeTable.analyColumnWidth();$xeTable.recalculate().then(()=>{$xeTable.saveCustomStore('update:width');$xeTable.updateCellAreas();$xeTable.dispatchEvent('column-resizable-change',params,evnt);// 已废弃 resizable-change
|
|
293
293
|
$xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const handleUpdateRowResize=(evnt,params)=>{reactData.resizeHeightFlag++;$xeTable.recalculate().then(()=>{$xeTable.updateCellAreas();$xeTable.dispatchEvent('row-resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const updateColumnOffsetLeft=()=>{const{visibleColumn,fullColumnIdData}=internalData;let offsetLeft=0;for(let cIndex=0,rLen=visibleColumn.length;cIndex<rLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest.oLeft=offsetLeft;}offsetLeft+=column.renderWidth;}};const updateRowOffsetTop=()=>{const{expandColumn}=reactData;const{afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);let offsetTop=0;for(let rIndex=0,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};rowRest.oTop=offsetTop;offsetTop+=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;// 是否展开行
|
|
294
294
|
if(expandColumn&&rowExpandedMaps[rowid]){offsetTop+=rowRest.expandHeight||expandOpts.height||0;}}};const updateRowExpandStyle=()=>{const{expandColumn,scrollYLoad,scrollYTop,isScrollYBig}=reactData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{mode}=expandOpts;if(expandColumn&&mode==='fixed'){const{elemStore,fullAllDataRowIdData}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){let isUpdateHeight=false;_xeUtils.default.arrayEach(rowExpandEl.children,reEl=>{const expandEl=reEl;const rowid=expandEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const expandHeight=expandEl.offsetHeight+1;const trEl=bodyScrollElem.querySelector(`.vxe-body--row[rowid="${rowid}"]`);let offsetTop=0;if(scrollYLoad){if(isScrollYBig&&trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}else{offsetTop=rowRest.oTop+(rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight);}}else{if(trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}}if(isScrollYBig){offsetTop+=scrollYTop;}expandEl.style.top=(0,_dom.toCssUnit)(offsetTop);if(!isUpdateHeight){if(rowRest.expandHeight!==expandHeight){isUpdateHeight=true;}}rowRest.expandHeight=expandHeight;}});if(isUpdateHeight){reactData.rowExpandHeightFlag++;(0,_vue.nextTick)(()=>{updateRowOffsetTop();});}}}};const handleRowExpandScroll=()=>{const{elemStore}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){rowExpandEl.scrollTop=bodyScrollElem.scrollTop;}};tableMethods={dispatchEvent,getEl(){return refElem.value;},/**
|
|
295
295
|
* 重置表格的一切数据状态
|
|
@@ -909,4 +909,4 @@ if(importConfig&&importOpts.types&&!importOpts.importMethod&&!_xeUtils.default.i
|
|
|
909
909
|
// }
|
|
910
910
|
// }
|
|
911
911
|
// 检查是否有安装需要的模块
|
|
912
|
-
if(props.editConfig&&!$xeTable.insert){(0,_log.errLog)('vxe.error.reqModule',['Edit']);}if(props.editRules&&!$xeTable.validate){(0,_log.errLog)('vxe.error.reqModule',['Validator']);}if((checkboxOpts.range||props.keyboardConfig||props.mouseConfig)&&!$xeTable.handleCellMousedownEvent){(0,_log.errLog)('vxe.error.reqModule',['Keyboard']);}if((props.printConfig||props.importConfig||props.exportConfig)&&!$xeTable.exportData){(0,_log.errLog)('vxe.error.reqModule',['Export']);}Object.assign(scrollYStore,{startIndex:0,endIndex:0,visibleSize:0});Object.assign(scrollXStore,{startIndex:0,endIndex:0,visibleSize:0});loadTableData(data||[],true).then(()=>{if(data&&data.length){internalData.inited=true;internalData.initStatus=true;handleLoadDefaults();}handleInitDefaults();updateStyle();});if(props.autoResize){const el=refElem.value;const parentEl=tablePrivateMethods.getParentElem();resizeObserver=globalResize.create(()=>{if(props.autoResize){tableMethods.recalculate(true);}});if(el){resizeObserver.observe(el);}if(parentEl){resizeObserver.observe(parentEl);}}});if(virtualYOpts.mode!=='scroll'){const tableViewportEl=refTableViewportElem.value;if(tableViewportEl){tableViewportEl.addEventListener('wheel',$xeTable.triggerBodyWheelEvent,{passive:false});}}globalEvents.on($xeTable,'paste',handleGlobalPasteEvent);globalEvents.on($xeTable,'copy',handleGlobalCopyEvent);globalEvents.on($xeTable,'cut',handleGlobalCutEvent);globalEvents.on($xeTable,'mousedown',handleGlobalMousedownEvent);globalEvents.on($xeTable,'blur',handleGlobalBlurEvent);globalEvents.on($xeTable,'mousewheel',handleGlobalMousewheelEvent);globalEvents.on($xeTable,'keydown',handleGlobalKeydownEvent);globalEvents.on($xeTable,'resize',handleGlobalResizeEvent);globalEvents.on($xeTable,'contextmenu',$xeTable.handleGlobalContextmenuEvent)
|
|
912
|
+
if(props.editConfig&&!$xeTable.insert){(0,_log.errLog)('vxe.error.reqModule',['Edit']);}if(props.editRules&&!$xeTable.validate){(0,_log.errLog)('vxe.error.reqModule',['Validator']);}if((checkboxOpts.range||props.keyboardConfig||props.mouseConfig)&&!$xeTable.handleCellMousedownEvent){(0,_log.errLog)('vxe.error.reqModule',['Keyboard']);}if((props.printConfig||props.importConfig||props.exportConfig)&&!$xeTable.exportData){(0,_log.errLog)('vxe.error.reqModule',['Export']);}Object.assign(scrollYStore,{startIndex:0,endIndex:0,visibleSize:0});Object.assign(scrollXStore,{startIndex:0,endIndex:0,visibleSize:0});loadTableData(data||[],true).then(()=>{if(data&&data.length){internalData.inited=true;internalData.initStatus=true;handleLoadDefaults();}handleInitDefaults();updateStyle();});if(props.autoResize){const el=refElem.value;const parentEl=tablePrivateMethods.getParentElem();resizeObserver=globalResize.create(()=>{if(props.autoResize){tableMethods.recalculate(true);}});if(el){resizeObserver.observe(el);}if(parentEl){resizeObserver.observe(parentEl);}}});if(virtualYOpts.mode!=='scroll'){const tableViewportEl=refTableViewportElem.value;if(tableViewportEl){tableViewportEl.addEventListener('wheel',$xeTable.triggerBodyWheelEvent,{passive:false});}}globalEvents.on($xeTable,'paste',handleGlobalPasteEvent);globalEvents.on($xeTable,'copy',handleGlobalCopyEvent);globalEvents.on($xeTable,'cut',handleGlobalCutEvent);globalEvents.on($xeTable,'mousedown',handleGlobalMousedownEvent);globalEvents.on($xeTable,'blur',handleGlobalBlurEvent);globalEvents.on($xeTable,'mousewheel',handleGlobalMousewheelEvent);globalEvents.on($xeTable,'keydown',handleGlobalKeydownEvent);globalEvents.on($xeTable,'resize',handleGlobalResizeEvent);globalEvents.on($xeTable,'contextmenu',$xeTable.handleGlobalContextmenuEvent);$xeTable.preventEvent(null,'mounted',{$table:$xeTable});});(0,_vue.onBeforeUnmount)(()=>{const tableViewportEl=refTableViewportElem.value;if(tableViewportEl){tableViewportEl.removeEventListener('wheel',$xeTable.triggerBodyWheelEvent);}internalData.cvCacheMaps={};internalData.prevDragRow=null;internalData.prevDragCol=null;if(resizeObserver){resizeObserver.disconnect();}tableMethods.closeFilter();if($xeTable.closeMenu){$xeTable.closeMenu();}tablePrivateMethods.preventEvent(null,'beforeUnmount',{$table:$xeTable});});(0,_vue.onUnmounted)(()=>{globalEvents.off($xeTable,'paste');globalEvents.off($xeTable,'copy');globalEvents.off($xeTable,'cut');globalEvents.off($xeTable,'mousedown');globalEvents.off($xeTable,'blur');globalEvents.off($xeTable,'mousewheel');globalEvents.off($xeTable,'keydown');globalEvents.off($xeTable,'resize');globalEvents.off($xeTable,'contextmenu');tablePrivateMethods.preventEvent(null,'unmounted',{$table:$xeTable});});(0,_vue.nextTick)(()=>{if(props.loading){if(!VxeUILoadingComponent&&!slots.loading){(0,_log.errLog)('vxe.error.errProp',['loading=true','loading=false | <template #loading>...</template>']);(0,_log.errLog)('vxe.error.reqComp',['vxe-loading']);}}if(props.showOverflow===true||props.showOverflow==='tooltip'||props.showHeaderOverflow===true||props.showHeaderOverflow==='tooltip'||props.showFooterOverflow===true||props.showFooterOverflow==='tooltip'||props.tooltipConfig||props.editRules){if(!VxeUITooltipComponent){if(props.showOverflow===true){(0,_log.errLog)('vxe.error.errProp',['show-overflow=true','show-overflow=title']);}if(props.showOverflow==='tooltip'){(0,_log.errLog)('vxe.error.errProp',['show-overflow=tooltip','show-overflow=title']);}if(props.showHeaderOverflow===true){(0,_log.errLog)('vxe.error.errProp',['show-header-overflow=true','show-header-overflow=title']);}if(props.showHeaderOverflow==='tooltip'){(0,_log.errLog)('vxe.error.errProp',['show-header-overflow=tooltip','show-header-overflow=title']);}if(props.showFooterOverflow===true){(0,_log.errLog)('vxe.error.errProp',['show-footer-overflow=true','show-footer-overflow=title']);}if(props.showFooterOverflow==='tooltip'){(0,_log.errLog)('vxe.error.errProp',['show-footer-overflow=tooltip','show-footer-overflow=title']);}(0,_log.errLog)('vxe.error.reqComp',['vxe-tooltip']);}}});(0,_vue.provide)('$xeColgroup',null);(0,_vue.provide)('$xeTable',$xeTable);$xeTable.renderVN=renderVN;return $xeTable;},render(){return this.renderVN();}});
|