vxe-table 4.13.14 → 4.13.16

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 (35) hide show
  1. package/README.md +2 -0
  2. package/es/style.css +1 -1
  3. package/es/table/src/footer.js +1 -1
  4. package/es/table/src/header.js +1 -1
  5. package/es/table/src/table.js +13 -11
  6. package/es/ui/index.js +3 -3
  7. package/es/ui/src/dom.js +1 -1
  8. package/es/ui/src/log.js +1 -1
  9. package/lib/index.umd.js +13 -12
  10. package/lib/index.umd.min.js +1 -1
  11. package/lib/style.css +1 -1
  12. package/lib/table/src/footer.js +1 -1
  13. package/lib/table/src/footer.min.js +1 -1
  14. package/lib/table/src/header.js +1 -1
  15. package/lib/table/src/header.min.js +1 -1
  16. package/lib/table/src/table.js +6 -5
  17. package/lib/table/src/table.min.js +1 -1
  18. package/lib/ui/index.js +3 -3
  19. package/lib/ui/index.min.js +1 -1
  20. package/lib/ui/src/dom.js +1 -1
  21. package/lib/ui/src/dom.min.js +1 -1
  22. package/lib/ui/src/log.js +1 -1
  23. package/lib/ui/src/log.min.js +1 -1
  24. package/package.json +2 -2
  25. package/packages/table/src/footer.ts +1 -1
  26. package/packages/table/src/header.ts +1 -1
  27. package/packages/table/src/table.ts +14 -11
  28. package/packages/ui/index.ts +2 -2
  29. package/packages/ui/src/dom.ts +1 -1
  30. /package/es/{iconfont.1745827953655.ttf → iconfont.1745983712875.ttf} +0 -0
  31. /package/es/{iconfont.1745827953655.woff → iconfont.1745983712875.woff} +0 -0
  32. /package/es/{iconfont.1745827953655.woff2 → iconfont.1745983712875.woff2} +0 -0
  33. /package/lib/{iconfont.1745827953655.ttf → iconfont.1745983712875.ttf} +0 -0
  34. /package/lib/{iconfont.1745827953655.woff → iconfont.1745983712875.woff} +0 -0
  35. /package/lib/{iconfont.1745827953655.woff2 → iconfont.1745983712875.woff2} +0 -0
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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,_vue.defineComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(x){let ee=(0,_vue.inject)("$xeTable",{}),{xID:m,props:g,reactData:_,internalData:h}=ee,{computeTooltipOpts:l,computeColumnOpts:b,computeColumnDragOpts:y,computeCellOpts:t,computeFooterCellOpts:o,computeDefaultRowHeight:r,computeResizableOpts:i,computeVirtualXOpts:a}=ee.getComputeMaps(),w=(0,_vue.ref)(),C=(0,_vue.ref)(),T=(0,_vue.ref)(),O=(0,_vue.ref)(),D=(0,_vue.ref)(),F=(0,_vue.ref)(),I=(w,C,T,O,D,F)=>{let I=ee.xeGrid,S=x.fixedType,{resizable:E,border:M,footerCellClassName:k,footerCellStyle:z,footerAlign:U,footerSpanMethod:R,align:$,columnKey:A,showFooterOverflow:j}=g,{scrollXLoad:q,scrollYLoad:L,overflowX:X,currentColumn:N}=_,{fullColumnIdData:G,mergeFooterList:H,mergeFooterCellMaps:P,scrollXStore:V}=h,W=a.value,B=l.value;let K=i.value.isAllColumnDrag,Y=b.value;var e=r.value;let J=t.value,Q=o.value,Z=(0,_util.getCellHeight)(Q.height||J.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=G[d]||{},n=n||u,u=n?renderer.get(n.name):null;let c=B.showAll;var n=l.children&&l.children.length,n=S?l.fixed!==S&&!n:l.fixed&&X,p=(_xeUtils.default.isBoolean(Q.padding)?Q:J).padding,o=_xeUtils.default.eqNull(o)?j:o,r=r||(u?u.tableFooterCellAlign:"")||U||i||(u?u.tableCellAlign:"")||$,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:Y.resizable||E,x={colid:d},m={},g=s.index,s=s._index,_=s;let h={$table:ee,$grid:I,row:O,rowIndex:F,_rowIndex:F,$rowIndex:D,column:l,columnIndex:g,$columnIndex:e,_columnIndex:s,itemIndex:_,items:O,fixed:S,type:renderType,data:T},b=((f||v||c)&&(m.onMouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(v||c)&&ee.triggerFooterTooltipEvent(e,h)}),(v||c)&&(m.onMouseleave=e=>{(v||c)&&ee.handleTargetLeaveEvent(e)}),m.onClick=e=>{ee.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},h),e)},!(m.onDblclick=e=>{ee.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},h),e)}));if(H.length){g=P[F+":"+s];if(g){var{rowspan:_,colspan:g}=g;if(!_||!g)return null;1<_&&(b=!0,x.rowspan=_),1<g&&(b=!0,x.colspan=g)}}else if(R){var{rowspan:_=1,colspan:g=1}=R(h)||{};if(!_||!g)return null;1<_&&(x.rowspan=_),1<g&&(x.colspan=g)}_=e===C.length-1,g=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let y=!1;w&&!b&&q&&!l.fixed&&!W.immediate&&(s<V.visibleStartIndex-V.preloadSize||s>V.visibleEndIndex+V.preloadSize)&&(y=!0);s={};return u?s.height=Z+"px":s.minHeight=Z+"px",(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-footer--column",l.id,{["col--"+r]:r,["col--"+t]:t,"col--last":_,"fixed--width":!g,"fixed--hidden":n,"is--padding":p,"col--ellipsis":u,"col--current":N===l},(0,_dom.getPropClass)(a,h),(0,_dom.getPropClass)(k,h)]},x),{style:z?_xeUtils.default.isFunction(z)?z(h):z:null}),m),{key:A||q||L||Y.useKey||Y.drag?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":v,"c--ellipsis":i}],style:s},y?[]:[(0,_vue.h)("div",{colid:d,class:"vxe-cell--wrapper"},l.renderFooter(h))]),!n&&o&&K?(0,_vue.h)("div",{class:["vxe-cell--col-resizable",{"is--line":!M||"none"===M}],onMousedown:e=>ee.handleColResizeMousedownEvent(e,S,h),onDblclick:e=>ee.handleColResizeDblclickEvent(e,h)}):renderEmptyElement(ee)])})};return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=x.fixedType,l=h.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=w,l[e+"scroll"]=C,l[e+"table"]=T,l[e+"colgroup"]=O,l[e+"list"]=D,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}=g,{visibleColumn:a,fullColumnIdData:n}=h,{isGroup:u,isColLoading:d,overflowX:s,scrollXLoad:c,dragCol:p}=_;let f=t,v=!1;return c&&i&&(o||r||(v=!0)),v&&(d||!l&&s)||(f=a),l&&v&&(f=e||[]),l||u||c&&p&&2<f.length&&(i=n[p.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,c=a._index,o<u?f=[p].concat(f):c<o&&(f=f.concat([p]))),(0,_vue.h)("div",{ref:w,class:["vxe-table--footer-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:m},[(0,_vue.h)("div",{ref:C,class:"vxe-table--footer-inner-wrapper",onScroll(e){ee.triggerFooterScrollEvent(e,l)}},[l?renderEmptyElement(ee):(0,_vue.h)("div",{ref:F,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:T,class:"vxe-table--footer",xid:m,cellspacing:0,cellpadding:0,border:0,xvm:v?"1":null},[(0,_vue.h)("colgroup",{ref:O},f.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tfoot",{ref:D},((r,i)=>{let{fixedType:a,footerTableData:n}=x,{footerRowClassName:u,footerRowStyle:d}=g,{isColLoading:s,isDragColMove:c}=_,p=b.value,f=y.value;return n.map((e,l)=>{let t=l;var o={$table:ee,row:e,_rowIndex:t,$rowIndex:l,fixed:a,type:renderType};return!s&&p.drag&&f.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(c?"":"-disabled"),tag:"tr",class:["vxe-footer--row",u?_xeUtils.default.isFunction(u)?u(o):u:""],style:d?_xeUtils.default.isFunction(d)?d(o):d:null},{default:()=>I(r,i,n,e,l,t)}):(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},I(r,i,n,e,l,t))})})(v,f))])])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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,_vue.defineComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(x){let ee=(0,_vue.inject)("$xeTable",{}),{xID:m,props:_,reactData:g,internalData:h}=ee,{computeTooltipOpts:l,computeColumnOpts:b,computeColumnDragOpts:y,computeCellOpts:t,computeFooterCellOpts:o,computeDefaultRowHeight:r,computeResizableOpts:i,computeVirtualXOpts:a}=ee.getComputeMaps(),w=(0,_vue.ref)(),C=(0,_vue.ref)(),T=(0,_vue.ref)(),O=(0,_vue.ref)(),D=(0,_vue.ref)(),F=(0,_vue.ref)(),I=(w,C,T,O,D,F)=>{let I=ee.xeGrid,S=x.fixedType,{resizable:E,border:M,footerCellClassName:k,footerCellStyle:z,footerAlign:U,footerSpanMethod:R,align:$,columnKey:A,showFooterOverflow:j}=_,{scrollXLoad:q,scrollYLoad:L,overflowX:X,currentColumn:N}=g,{fullColumnIdData:G,mergeFooterList:H,mergeFooterCellMaps:P,scrollXStore:V}=h,W=a.value,B=l.value;let K=i.value.isAllColumnDrag,Y=b.value;var e=r.value;let J=t.value,Q=o.value,Z=(0,_util.getCellHeight)(Q.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=G[d]||{},n=n||u,u=n?renderer.get(n.name):null;let c=B.showAll;var n=l.children&&l.children.length,n=S?l.fixed!==S&&!n:l.fixed&&X,p=(_xeUtils.default.isBoolean(Q.padding)?Q:J).padding,o=_xeUtils.default.eqNull(o)?j:o,r=r||(u?u.tableFooterCellAlign:"")||U||i||(u?u.tableCellAlign:"")||$,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:Y.resizable||E,x={colid:d},m={},_=s.index,s=s._index,g=s;let h={$table:ee,$grid:I,row:O,rowIndex:F,_rowIndex:F,$rowIndex:D,column:l,columnIndex:_,$columnIndex:e,_columnIndex:s,itemIndex:g,items:O,fixed:S,type:renderType,data:T},b=((f||v||c)&&(m.onMouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(v||c)&&ee.triggerFooterTooltipEvent(e,h)}),(v||c)&&(m.onMouseleave=e=>{(v||c)&&ee.handleTargetLeaveEvent(e)}),m.onClick=e=>{ee.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},h),e)},!(m.onDblclick=e=>{ee.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},h),e)}));if(H.length){_=P[F+":"+s];if(_){var{rowspan:g,colspan:_}=_;if(!g||!_)return null;1<g&&(b=!0,x.rowspan=g),1<_&&(b=!0,x.colspan=_)}}else if(R){var{rowspan:g=1,colspan:_=1}=R(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 y=!1;w&&!b&&q&&!l.fixed&&!W.immediate&&(s<V.visibleStartIndex-V.preloadSize||s>V.visibleEndIndex+V.preloadSize)&&(y=!0);s={};return u?s.height=Z+"px":s.minHeight=Z+"px",(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-footer--column",l.id,{["col--"+r]:r,["col--"+t]:t,"col--last":g,"fixed--width":!_,"fixed--hidden":n,"is--padding":p,"col--ellipsis":u,"col--current":N===l},(0,_dom.getPropClass)(a,h),(0,_dom.getPropClass)(k,h)]},x),{style:z?_xeUtils.default.isFunction(z)?z(h):z:null}),m),{key:A||q||L||Y.useKey||Y.drag?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":v,"c--ellipsis":i}],style:s},y?[]:[(0,_vue.h)("div",{colid:d,class:"vxe-cell--wrapper"},l.renderFooter(h))]),!n&&o&&K?(0,_vue.h)("div",{class:["vxe-cell--col-resizable",{"is--line":!M||"none"===M}],onMousedown:e=>ee.handleColResizeMousedownEvent(e,S,h),onDblclick:e=>ee.handleColResizeDblclickEvent(e,h)}):renderEmptyElement(ee)])})};return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=x.fixedType,l=h.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=w,l[e+"scroll"]=C,l[e+"table"]=T,l[e+"colgroup"]=O,l[e+"list"]=D,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:c,dragCol:p}=g;let f=t,v=!1;return c&&i&&(o||r||(v=!0)),v&&(d||!l&&s)||(f=a),l&&v&&(f=e||[]),l||u||c&&p&&2<f.length&&(i=n[p.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,c=a._index,o<u?f=[p].concat(f):c<o&&(f=f.concat([p]))),(0,_vue.h)("div",{ref:w,class:["vxe-table--footer-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:m},[(0,_vue.h)("div",{ref:C,class:"vxe-table--footer-inner-wrapper",onScroll(e){ee.triggerFooterScrollEvent(e,l)}},[l?renderEmptyElement(ee):(0,_vue.h)("div",{ref:F,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:T,class:"vxe-table--footer",xid:m,cellspacing:0,cellpadding:0,border:0,xvm:v?"1":null},[(0,_vue.h)("colgroup",{ref:O},f.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tfoot",{ref:D},((r,i)=>{let{fixedType:a,footerTableData:n}=x,{footerRowClassName:u,footerRowStyle:d}=_,{isColLoading:s,isDragColMove:c}=g,p=b.value,f=y.value;return n.map((e,l)=>{let t=l;var o={$table:ee,row:e,_rowIndex:t,$rowIndex:l,fixed:a,type:renderType};return!s&&p.drag&&f.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(c?"":"-disabled"),tag:"tr",class:["vxe-footer--row",u?_xeUtils.default.isFunction(u)?u(o):u:""],style:d?_xeUtils.default.isFunction(d)?d(o):d:null},{default:()=>I(r,i,n,e,l,t)}):(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},I(r,i,n,e,l,t))})})(v,f))])])])}}});
@@ -89,7 +89,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
89
89
  const cellOpts = computeCellOpts.value;
90
90
  const defaultRowHeight = computeDefaultRowHeight.value;
91
91
  const headerCellOpts = computeHeaderCellOpts.value;
92
- const currCellHeight = (0, _util.getCellHeight)(headerCellOpts.height || cellOpts.height) || defaultRowHeight;
92
+ const currCellHeight = (0, _util.getCellHeight)(headerCellOpts.height) || defaultRowHeight;
93
93
  const {
94
94
  disabledMethod: dragDisabledMethod,
95
95
  isCrossDrag,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(_){let le=(0,_vue.inject)("$xeTable",{}),{xID:m,props:b,reactData:C,internalData:y}=le,{computeColumnOpts:w,computeColumnDragOpts:D,computeCellOpts:l,computeMouseOpts:H,computeHeaderCellOpts:a,computeDefaultRowHeight:r,computeVirtualXOpts:t}=le.getComputeMaps(),E=(0,_vue.ref)([]),S=(0,_vue.ref)(),M=(0,_vue.ref)(),O=(0,_vue.ref)(),T=(0,_vue.ref)(),U=(0,_vue.ref)(),k=(0,_vue.ref)(),i=(0,_vue.ref)(),n=()=>{var e=C.isGroup;E.value=e?(0,_util.convertHeaderColumnToRows)(_.tableGroupColumn):[]},I=(H,E,S,M)=>{let O=le.xeGrid,T=_.fixedType,{resizable:U,columnKey:k,headerCellClassName:I,headerCellStyle:z,showHeaderOverflow:R,headerAlign:$,align:F,mouseConfig:A}=b,{currentColumn:q,dragCol:G,scrollXLoad:X,scrollYLoad:j,overflowX:L}=C,{fullColumnIdData:N,scrollXStore:V}=y,W=t.value,B=w.value,K=D.value,P=l.value;var e=r.value;let Y=a.value,J=(0,_util.getCellHeight)(Y.height||P.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,v=T?e.fixed!==T&&!d:!!e.fixed&&L,p=(_xeUtils.default.isBoolean(Y.padding)?Y:P).padding,r=_xeUtils.default.eqNull(r)?R:r,t=t||(u?u.tableHeaderCellAlign:"")||$||i||(u?u.tableCellAlign:"")||F,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 _={$table:le,$grid:O,$rowIndex:M,column:e,columnIndex:f,$columnIndex:l,_columnIndex:c,firstFilterOption:g,fixed:T,type:renderType,isHidden:v,hasFilter:h};var f={colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},m={onClick:e=>le.triggerHeaderCellClickEvent(e,_),onDblclick:e=>le.triggerHeaderCellDblclickEvent(e,_)},b=B.drag&&"cell"===K.trigger;let C=!1;b&&(C=!(!Q||!Q(_))),(A||b)&&(m.onMousedown=e=>le.triggerHeaderCellMousedownEvent(e,_)),B.drag&&(m.onDragstart=le.handleHeaderCellDragDragstartEvent,m.onDragend=le.handleHeaderCellDragDragendEvent,m.onDragover=le.handleHeaderCellDragDragoverEvent,b)&&(m.onMouseup=le.handleHeaderCellDragMouseupEvent);var b=l===S.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:B.resizable||U,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let D=!1;!E||H||G&&G.id===s||X&&!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-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":v,"is--padding":p,"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":q===e},o?_xeUtils.default.isFunction(o)?o(_):o:"",I?_xeUtils.default.isFunction(I)?I(_):I:""],style:z?_xeUtils.default.isFunction(z)?z(_):z:null},f),m),{key:k||X||j||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&&v?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper"},e.renderHeader(_))]),!v&&y?(0,_vue.h)("div",{class:"vxe-cell--col-resizable",onMousedown:e=>le.handleColResizeMousedownEvent(e,T,_),onDblclick:e=>le.handleColResizeDblclickEvent(e,_)}):renderEmptyElement(le)])})};return(0,_vue.watch)(()=>_.tableColumn,n),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=_.fixedType,l=le.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=S,l[e+"scroll"]=M,l[e+"table"]=O,l[e+"colgroup"]=T,l[e+"list"]=U,l[e+"xSpace"]=k,l[e+"repair"]=i,n()})}),(0,_vue.onUnmounted)(()=>{var e=_.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}=_;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:i,footerSpanMethod:n}=b,{isGroup:o,isColLoading:d,overflowX:u,scrollXLoad:s,dragCol:c}=C,{visibleColumn:v,fullColumnIdData:p}=y,x=H.value;let h=E.value,g=a,f=!1;return o?g=v:(s&&t&&(i||n||(f=!0)),f&&(d||!l&&u)||(g=v),l&&f&&(g=e||[]),h=[g]),l||o||s&&c&&2<g.length&&(t=p[c.id])&&(i=t._index,n=g[0],d=g[g.length-1],u=p[n.id],v=p[d.id],u)&&v&&(s=u._index,t=v._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:S,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:m},[(0,_vue.h)("div",{ref:M,class:"vxe-table--header-inner-wrapper",onScroll(e){le.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(le):(0,_vue.h)("div",{ref:k,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--header",xid:m,cellspacing:0,cellpadding:0,border:0,xvm:f?"1":null},[(0,_vue.h)("colgroup",{ref:T},g.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("thead",{ref:U},((r,t,e)=>{let i=_.fixedType,{headerRowClassName:n,headerRowStyle:o}=b,{isColLoading:d,isDragColMove:u}=C,s=w.value,c=D.value;return e.map((e,l)=>{var a={$table:le,$rowIndex:l,fixed:i,type:renderType};return!d&&s.drag&&c.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(u?"":"-disabled"),tag:"tr",class:["vxe-header--row",n?_xeUtils.default.isFunction(n)?n(a):n:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},{default:()=>I(r,t,e,l)}):(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-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-col-status-area"})]):renderEmptyElement(le)])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(_){let le=(0,_vue.inject)("$xeTable",{}),{xID:m,props:b,reactData:C,internalData:y}=le,{computeColumnOpts:w,computeColumnDragOpts:D,computeCellOpts:l,computeMouseOpts:H,computeHeaderCellOpts:a,computeDefaultRowHeight:r,computeVirtualXOpts:t}=le.getComputeMaps(),E=(0,_vue.ref)([]),S=(0,_vue.ref)(),M=(0,_vue.ref)(),O=(0,_vue.ref)(),T=(0,_vue.ref)(),U=(0,_vue.ref)(),k=(0,_vue.ref)(),i=(0,_vue.ref)(),n=()=>{var e=C.isGroup;E.value=e?(0,_util.convertHeaderColumnToRows)(_.tableGroupColumn):[]},I=(H,E,S,M)=>{let O=le.xeGrid,T=_.fixedType,{resizable:U,columnKey:k,headerCellClassName:I,headerCellStyle:z,showHeaderOverflow:R,headerAlign:$,align:F,mouseConfig:A}=b,{currentColumn:q,dragCol:G,scrollXLoad:X,scrollYLoad:j,overflowX:L}=C,{fullColumnIdData:N,scrollXStore:V}=y,W=t.value,B=w.value,K=D.value,P=l.value;var e=r.value;let Y=a.value,J=(0,_util.getCellHeight)(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,v=T?e.fixed!==T&&!d:!!e.fixed&&L,p=(_xeUtils.default.isBoolean(Y.padding)?Y:P).padding,r=_xeUtils.default.eqNull(r)?R:r,t=t||(u?u.tableHeaderCellAlign:"")||$||i||(u?u.tableCellAlign:"")||F,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 _={$table:le,$grid:O,$rowIndex:M,column:e,columnIndex:f,$columnIndex:l,_columnIndex:c,firstFilterOption:g,fixed:T,type:renderType,isHidden:v,hasFilter:h};var f={colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},m={onClick:e=>le.triggerHeaderCellClickEvent(e,_),onDblclick:e=>le.triggerHeaderCellDblclickEvent(e,_)},b=B.drag&&"cell"===K.trigger;let C=!1;b&&(C=!(!Q||!Q(_))),(A||b)&&(m.onMousedown=e=>le.triggerHeaderCellMousedownEvent(e,_)),B.drag&&(m.onDragstart=le.handleHeaderCellDragDragstartEvent,m.onDragend=le.handleHeaderCellDragDragendEvent,m.onDragover=le.handleHeaderCellDragDragoverEvent,b)&&(m.onMouseup=le.handleHeaderCellDragMouseupEvent);var b=l===S.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:B.resizable||U,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let D=!1;!E||H||G&&G.id===s||X&&!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-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":v,"is--padding":p,"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":q===e},o?_xeUtils.default.isFunction(o)?o(_):o:"",I?_xeUtils.default.isFunction(I)?I(_):I:""],style:z?_xeUtils.default.isFunction(z)?z(_):z:null},f),m),{key:k||X||j||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&&v?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper"},e.renderHeader(_))]),!v&&y?(0,_vue.h)("div",{class:"vxe-cell--col-resizable",onMousedown:e=>le.handleColResizeMousedownEvent(e,T,_),onDblclick:e=>le.handleColResizeDblclickEvent(e,_)}):renderEmptyElement(le)])})};return(0,_vue.watch)(()=>_.tableColumn,n),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=_.fixedType,l=le.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=S,l[e+"scroll"]=M,l[e+"table"]=O,l[e+"colgroup"]=T,l[e+"list"]=U,l[e+"xSpace"]=k,l[e+"repair"]=i,n()})}),(0,_vue.onUnmounted)(()=>{var e=_.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}=_;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:i,footerSpanMethod:n}=b,{isGroup:o,isColLoading:d,overflowX:u,scrollXLoad:s,dragCol:c}=C,{visibleColumn:v,fullColumnIdData:p}=y,x=H.value;let h=E.value,g=a,f=!1;return o?g=v:(s&&t&&(i||n||(f=!0)),f&&(d||!l&&u)||(g=v),l&&f&&(g=e||[]),h=[g]),l||o||s&&c&&2<g.length&&(t=p[c.id])&&(i=t._index,n=g[0],d=g[g.length-1],u=p[n.id],v=p[d.id],u)&&v&&(s=u._index,t=v._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:S,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:m},[(0,_vue.h)("div",{ref:M,class:"vxe-table--header-inner-wrapper",onScroll(e){le.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(le):(0,_vue.h)("div",{ref:k,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--header",xid:m,cellspacing:0,cellpadding:0,border:0,xvm:f?"1":null},[(0,_vue.h)("colgroup",{ref:T},g.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("thead",{ref:U},((r,t,e)=>{let i=_.fixedType,{headerRowClassName:n,headerRowStyle:o}=b,{isColLoading:d,isDragColMove:u}=C,s=w.value,c=D.value;return e.map((e,l)=>{var a={$table:le,$rowIndex:l,fixed:i,type:renderType};return!d&&s.drag&&c.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(u?"":"-disabled"),tag:"tr",class:["vxe-header--row",n?_xeUtils.default.isFunction(n)?n(a):n:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},{default:()=>I(r,t,e,l)}):(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-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-col-status-area"})]):renderEmptyElement(le)])])}}});
@@ -79,7 +79,7 @@ removeRowMaps:{},cvCacheMaps:{},inited:false,tooltipTimeout:null,initStatus:fals
79
79
  * @deprecated
80
80
  */const computeSXOpts=(0,_vue.computed)(()=>{const virtualXOpts=computeVirtualXOpts.value;return virtualXOpts;});const computeScrollXThreshold=(0,_vue.computed)(()=>{const virtualXOpts=computeVirtualXOpts.value;const{threshold}=virtualXOpts;if(threshold){return _xeUtils.default.toNumber(threshold);}return 0;});/**
81
81
  * @deprecated
82
- */const computeSYOpts=(0,_vue.computed)(()=>{const virtualYOpts=computeVirtualYOpts.value;return virtualYOpts;});const computeVirtualXOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.scrollX,getConfig().table.virtualXConfig,props.scrollX,props.virtualXConfig);});const computeVirtualYOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.scrollY,getConfig().table.virtualYConfig,props.scrollY,props.virtualYConfig);});const computeScrollbarOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.scrollbarConfig,props.scrollbarConfig);});const computeScrollbarXToTop=(0,_vue.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.x&&scrollbarOpts.x.position==='top');});const computeScrollbarYToLeft=(0,_vue.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.y&&scrollbarOpts.y.position==='left');});const computeScrollYThreshold=(0,_vue.computed)(()=>{const virtualYOpts=computeVirtualYOpts.value;const{threshold}=virtualYOpts;if(threshold){return _xeUtils.default.toNumber(threshold);}return 0;});const computeRowHeightMaps=(0,_vue.computed)(()=>{return reactData.rowHeightStore;});const computeDefaultRowHeight=(0,_vue.computed)(()=>{const vSize=computeSize.value;const rowHeightMaps=computeRowHeightMaps.value;return rowHeightMaps[vSize||'default']||18;});const computeColumnOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.columnConfig,props.columnConfig);});const computeCurrentColumnOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.currentColumnConfig,props.currentColumnConfig);});const computeCellOpts=(0,_vue.computed)(()=>{const cellOpts=Object.assign({},getConfig().table.cellConfig,props.cellConfig);if(cellOpts.height){cellOpts.height=_xeUtils.default.toNumber(cellOpts.height);}return cellOpts;});const computeHeaderCellOpts=(0,_vue.computed)(()=>{const headerCellOpts=Object.assign({},getConfig().table.headerCellConfig,props.headerCellConfig);if(headerCellOpts.height){headerCellOpts.height=_xeUtils.default.toNumber(headerCellOpts.height);}return headerCellOpts;});const computeFooterCellOpts=(0,_vue.computed)(()=>{const footerCellOpts=Object.assign({},getConfig().table.footerCellConfig,props.footerCellConfig);if(footerCellOpts.height){footerCellOpts.height=_xeUtils.default.toNumber(footerCellOpts.height);}return footerCellOpts;});const computeRowOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.rowConfig,props.rowConfig);});const computeRowGroupOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.rowGroupConfig,props.rowGroupConfig);});const computeCurrentRowOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.currentRowConfig,props.currentRowConfig);});const computeRowDragOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.rowDragConfig,props.rowDragConfig);});const computeColumnDragOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.columnDragConfig,props.columnDragConfig);});const computeResizeOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.resizeConfig,props.resizeConfig);});const computeResizableOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.resizableConfig,props.resizableConfig);});const computeSeqOpts=(0,_vue.computed)(()=>{return Object.assign({startIndex:0},getConfig().table.seqConfig,props.seqConfig);});const computeRadioOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.radioConfig,props.radioConfig);});const computeCheckboxOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.checkboxConfig,props.checkboxConfig);});const computeTooltipOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().tooltip,getConfig().table.tooltipConfig,props.tooltipConfig);});const computeTableTipConfig=(0,_vue.computed)(()=>{const{tooltipStore}=reactData;const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts,tooltipStore.currOpts);});const computeValidTipConfig=(0,_vue.computed)(()=>{const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts);});const computeEditOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.editConfig,props.editConfig);});const computeSortOpts=(0,_vue.computed)(()=>{return Object.assign({orders:['asc','desc',null]},getConfig().table.sortConfig,props.sortConfig);});const computeFilterOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.filterConfig,props.filterConfig);});const computeMouseOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.mouseConfig,props.mouseConfig);});const computeAreaOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.areaConfig,props.areaConfig);});const computeKeyboardOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.keyboardConfig,props.keyboardConfig);});const computeClipOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.clipConfig,props.clipConfig);});const computeFNROpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.fnrConfig,props.fnrConfig);});const computeMenuOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.menuConfig,props.menuConfig);});const computeLeftFixedWidth=(0,_vue.computed)(()=>{const{columnStore}=reactData;const{leftList}=columnStore;let leftWidth=0;for(let i=0;i<leftList.length;i++){const column=leftList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeRightFixedWidth=(0,_vue.computed)(()=>{const{columnStore}=reactData;const{rightList}=columnStore;let leftWidth=0;for(let i=0;i<rightList.length;i++){const column=rightList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeHeaderMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerOpts=menuOpts.header;return headerOpts&&headerOpts.options?headerOpts.options:[];});const computeBodyMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const bodyOpts=menuOpts.body;return bodyOpts&&bodyOpts.options?bodyOpts.options:[];});const computeFooterMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const footerOpts=menuOpts.footer;return footerOpts&&footerOpts.options?footerOpts.options:[];});const computeIsMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerMenu=computeHeaderMenu.value;const bodyMenu=computeBodyMenu.value;const footerMenu=computeFooterMenu.value;return!!(props.menuConfig&&(0,_utils.isEnableConf)(menuOpts)&&(headerMenu.length||bodyMenu.length||footerMenu.length));});const computeMenuList=(0,_vue.computed)(()=>{const{ctxMenuStore}=reactData;const rest=[];ctxMenuStore.list.forEach(list=>{list.forEach(item=>{rest.push(item);});});return rest;});const computeExportOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.exportConfig,props.exportConfig);});const computeImportOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.importConfig,props.importConfig);});const computePrintOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.printConfig,props.printConfig);});const computeExpandOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.expandConfig,props.expandConfig);});const computeTreeOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.treeConfig,props.treeConfig);});const computeEmptyOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.emptyRender,props.emptyRender);});const computeLoadingOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.loadingConfig,props.loadingConfig);});const computeCellOffsetWidth=(0,_vue.computed)(()=>{return props.border?Math.max(2,Math.ceil(reactData.scrollbarWidth/reactData.tableColumn.length)):1;});const computeCustomOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.customConfig,props.customConfig);});const computeTableRowExpandedList=(0,_vue.computed)(()=>{const{treeConfig}=props;const{rowExpandedFlag,expandColumn,rowGroupExpandedFlag,treeExpandedFlag,isRowGroupStatus}=reactData;const{visibleDataRowIdData,rowExpandedMaps}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const expandList=[];if(expandColumn&&rowExpandedFlag&&rowGroupExpandedFlag&&treeExpandedFlag){if(isRowGroupStatus||treeConfig&&transform){_xeUtils.default.each(rowExpandedMaps,(row,rowid)=>{if(visibleDataRowIdData[rowid]){expandList.push(row);}});}else{return _xeUtils.default.values(rowExpandedMaps);}}return expandList;});const computeAutoWidthColumnList=(0,_vue.computed)(()=>{const{visibleColumn}=internalData;const{tableColumn}=reactData;return tableColumn.length||visibleColumn.length?visibleColumn.filter(column=>column.width==='auto'||column.minWidth==='auto'):[];});const computeFixedColumnSize=(0,_vue.computed)(()=>{const{tableColumn}=reactData;const{collectColumn}=internalData;let fixedSize=0;// 只判断第一层
82
+ */const computeSYOpts=(0,_vue.computed)(()=>{const virtualYOpts=computeVirtualYOpts.value;return virtualYOpts;});const computeVirtualXOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.scrollX,getConfig().table.virtualXConfig,props.scrollX,props.virtualXConfig);});const computeVirtualYOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.scrollY,getConfig().table.virtualYConfig,props.scrollY,props.virtualYConfig);});const computeScrollbarOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.scrollbarConfig,props.scrollbarConfig);});const computeScrollbarXToTop=(0,_vue.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.x&&scrollbarOpts.x.position==='top');});const computeScrollbarYToLeft=(0,_vue.computed)(()=>{const scrollbarOpts=computeScrollbarOpts.value;return!!(scrollbarOpts.y&&scrollbarOpts.y.position==='left');});const computeScrollYThreshold=(0,_vue.computed)(()=>{const virtualYOpts=computeVirtualYOpts.value;const{threshold}=virtualYOpts;if(threshold){return _xeUtils.default.toNumber(threshold);}return 0;});const computeRowHeightMaps=(0,_vue.computed)(()=>{return reactData.rowHeightStore;});const computeDefaultRowHeight=(0,_vue.computed)(()=>{const vSize=computeSize.value;const rowHeightMaps=computeRowHeightMaps.value;return rowHeightMaps[vSize||'default']||18;});const computeColumnOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.columnConfig,props.columnConfig);});const computeCurrentColumnOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.currentColumnConfig,props.currentColumnConfig);});const computeCellOpts=(0,_vue.computed)(()=>{const cellOpts=Object.assign({},getConfig().table.cellConfig,props.cellConfig);if(cellOpts.height){cellOpts.height=_xeUtils.default.toNumber(cellOpts.height);}return cellOpts;});const computeHeaderCellOpts=(0,_vue.computed)(()=>{const headerCellOpts=Object.assign({},getConfig().table.headerCellConfig,props.headerCellConfig);const cellOpts=computeCellOpts.value;headerCellOpts.height=_xeUtils.default.toNumber((0,_util.getCellHeight)(headerCellOpts.height||cellOpts.height));return headerCellOpts;});const computeFooterCellOpts=(0,_vue.computed)(()=>{const footerCellOpts=Object.assign({},getConfig().table.footerCellConfig,props.footerCellConfig);const cellOpts=computeCellOpts.value;footerCellOpts.height=_xeUtils.default.toNumber((0,_util.getCellHeight)(footerCellOpts.height||cellOpts.height));return footerCellOpts;});const computeRowOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.rowConfig,props.rowConfig);});const computeRowGroupOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.rowGroupConfig,props.rowGroupConfig);});const computeCurrentRowOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.currentRowConfig,props.currentRowConfig);});const computeRowDragOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.rowDragConfig,props.rowDragConfig);});const computeColumnDragOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.columnDragConfig,props.columnDragConfig);});const computeResizeOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.resizeConfig,props.resizeConfig);});const computeResizableOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.resizableConfig,props.resizableConfig);});const computeSeqOpts=(0,_vue.computed)(()=>{return Object.assign({startIndex:0},getConfig().table.seqConfig,props.seqConfig);});const computeRadioOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.radioConfig,props.radioConfig);});const computeCheckboxOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.checkboxConfig,props.checkboxConfig);});const computeTooltipOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().tooltip,getConfig().table.tooltipConfig,props.tooltipConfig);});const computeTableTipConfig=(0,_vue.computed)(()=>{const{tooltipStore}=reactData;const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts,tooltipStore.currOpts);});const computeValidTipConfig=(0,_vue.computed)(()=>{const tooltipOpts=computeTooltipOpts.value;return Object.assign({},tooltipOpts);});const computeEditOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.editConfig,props.editConfig);});const computeSortOpts=(0,_vue.computed)(()=>{return Object.assign({orders:['asc','desc',null]},getConfig().table.sortConfig,props.sortConfig);});const computeFilterOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.filterConfig,props.filterConfig);});const computeMouseOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.mouseConfig,props.mouseConfig);});const computeAreaOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.areaConfig,props.areaConfig);});const computeKeyboardOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.keyboardConfig,props.keyboardConfig);});const computeClipOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.clipConfig,props.clipConfig);});const computeFNROpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.fnrConfig,props.fnrConfig);});const computeMenuOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.menuConfig,props.menuConfig);});const computeLeftFixedWidth=(0,_vue.computed)(()=>{const{columnStore}=reactData;const{leftList}=columnStore;let leftWidth=0;for(let i=0;i<leftList.length;i++){const column=leftList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeRightFixedWidth=(0,_vue.computed)(()=>{const{columnStore}=reactData;const{rightList}=columnStore;let leftWidth=0;for(let i=0;i<rightList.length;i++){const column=rightList[i];leftWidth+=column.renderWidth;}return leftWidth;});const computeHeaderMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerOpts=menuOpts.header;return headerOpts&&headerOpts.options?headerOpts.options:[];});const computeBodyMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const bodyOpts=menuOpts.body;return bodyOpts&&bodyOpts.options?bodyOpts.options:[];});const computeFooterMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const footerOpts=menuOpts.footer;return footerOpts&&footerOpts.options?footerOpts.options:[];});const computeIsMenu=(0,_vue.computed)(()=>{const menuOpts=computeMenuOpts.value;const headerMenu=computeHeaderMenu.value;const bodyMenu=computeBodyMenu.value;const footerMenu=computeFooterMenu.value;return!!(props.menuConfig&&(0,_utils.isEnableConf)(menuOpts)&&(headerMenu.length||bodyMenu.length||footerMenu.length));});const computeMenuList=(0,_vue.computed)(()=>{const{ctxMenuStore}=reactData;const rest=[];ctxMenuStore.list.forEach(list=>{list.forEach(item=>{rest.push(item);});});return rest;});const computeExportOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.exportConfig,props.exportConfig);});const computeImportOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.importConfig,props.importConfig);});const computePrintOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.printConfig,props.printConfig);});const computeExpandOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.expandConfig,props.expandConfig);});const computeTreeOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.treeConfig,props.treeConfig);});const computeEmptyOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.emptyRender,props.emptyRender);});const computeLoadingOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.loadingConfig,props.loadingConfig);});const computeCellOffsetWidth=(0,_vue.computed)(()=>{return props.border?Math.max(2,Math.ceil(reactData.scrollbarWidth/reactData.tableColumn.length)):1;});const computeCustomOpts=(0,_vue.computed)(()=>{return Object.assign({},getConfig().table.customConfig,props.customConfig);});const computeTableRowExpandedList=(0,_vue.computed)(()=>{const{treeConfig}=props;const{rowExpandedFlag,expandColumn,rowGroupExpandedFlag,treeExpandedFlag,isRowGroupStatus}=reactData;const{visibleDataRowIdData,rowExpandedMaps}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const expandList=[];if(expandColumn&&rowExpandedFlag&&rowGroupExpandedFlag&&treeExpandedFlag){if(isRowGroupStatus||treeConfig&&transform){_xeUtils.default.each(rowExpandedMaps,(row,rowid)=>{if(visibleDataRowIdData[rowid]){expandList.push(row);}});}else{return _xeUtils.default.values(rowExpandedMaps);}}return expandList;});const computeAutoWidthColumnList=(0,_vue.computed)(()=>{const{visibleColumn}=internalData;const{tableColumn}=reactData;return tableColumn.length||visibleColumn.length?visibleColumn.filter(column=>column.width==='auto'||column.minWidth==='auto'):[];});const computeFixedColumnSize=(0,_vue.computed)(()=>{const{tableColumn}=reactData;const{collectColumn}=internalData;let fixedSize=0;// 只判断第一层
83
83
  if(tableColumn.length&&collectColumn.length){collectColumn.forEach(column=>{if(column.renderFixed){fixedSize++;}});}return fixedSize;});const computeIsMaxFixedColumn=(0,_vue.computed)(()=>{const fixedColumnSize=computeFixedColumnSize.value;const columnOpts=computeColumnOpts.value;const{maxFixedSize}=columnOpts;if(maxFixedSize){return fixedColumnSize>=maxFixedSize;}return false;});const computeTableBorder=(0,_vue.computed)(()=>{const{border}=props;if(border===true){return'full';}if(border){return border;}return'default';});const computeIsAllCheckboxDisabled=(0,_vue.computed)(()=>{const{treeConfig}=props;const{tableData}=reactData;const{tableFullData}=internalData;const checkboxOpts=computeCheckboxOpts.value;const{strict,checkMethod}=checkboxOpts;if(strict){if(tableData.length||tableFullData.length){if(checkMethod){if(treeConfig){// 暂时不支持树形结构
84
84
  }// 如果所有行都被禁用
85
85
  return tableFullData.every(row=>!checkMethod({$table:$xeTable,row}));}return false;}return true;}return false;});const computeVirtualScrollBars=(0,_vue.computed)(()=>{const{overflowX,scrollXLoad,overflowY,scrollYLoad}=reactData;return{x:overflowX&&scrollXLoad,y:overflowY&&scrollYLoad};});const computeRowGroupFields=(0,_vue.computed)(()=>{const rowGroupOpts=computeRowGroupOpts.value;return rowGroupOpts.groupFields;});const refMaps={refElem,refTooltip,refValidTooltip,refTableFilter,refTableCustom,refTableMenu,refTableHeader,refTableBody,refTableFooter,refTableLeftHeader,refTableLeftBody,refTableLeftFooter,refTableRightHeader,refTableRightBody,refTableRightFooter,refLeftContainer,refRightContainer,refColResizeBar,refRowResizeBar,refScrollXVirtualElem,refScrollYVirtualElem,refScrollXHandleElem,refScrollYHandleElem,refScrollXSpaceElem,refScrollYSpaceElem};const computeMaps={computeSize,computeTableId,computeValidOpts,computeVirtualXOpts,computeVirtualYOpts,computeScrollbarOpts,computeScrollbarXToTop,computeScrollbarYToLeft,computeColumnOpts,computeCurrentColumnOpts,computeScrollXThreshold,computeScrollYThreshold,computeRowHeightMaps,computeDefaultRowHeight,computeCellOpts,computeHeaderCellOpts,computeFooterCellOpts,computeRowOpts,computeRowGroupOpts,computeCurrentRowOpts,computeRowDragOpts,computeColumnDragOpts,computeResizeOpts,computeResizableOpts,computeSeqOpts,computeRadioOpts,computeCheckboxOpts,computeTooltipOpts,computeEditOpts,computeSortOpts,computeFilterOpts,computeMouseOpts,computeAreaOpts,computeKeyboardOpts,computeClipOpts,computeFNROpts,computeHeaderMenu,computeBodyMenu,computeFooterMenu,computeIsMenu,computeMenuList,computeMenuOpts,computeExportOpts,computeImportOpts,computePrintOpts,computeExpandOpts,computeTreeOpts,computeEmptyOpts,computeLoadingOpts,computeCellOffsetWidth,computeCustomOpts,computeLeftFixedWidth,computeRightFixedWidth,computeFixedColumnSize,computeIsMaxFixedColumn,computeIsAllCheckboxDisabled,computeVirtualScrollBars,computeSXOpts,computeSYOpts};const $xeTable={xID,props:props,context,reactData,internalData,getRefMaps:()=>refMaps,getComputeMaps:()=>computeMaps,xeGrid:$xeGrid,xegrid:$xeGrid};const eqCellValue=(row1,row2,field)=>{const val1=_xeUtils.default.get(row1,field);const val2=_xeUtils.default.get(row2,field);if((0,_utils.eqEmptyValue)(val1)&&(0,_utils.eqEmptyValue)(val2)){return true;}if(_xeUtils.default.isString(val1)||_xeUtils.default.isNumber(val1)){return''+val1===''+val2;}return _xeUtils.default.isEqual(val1,val2);};const getNextSortOrder=column=>{const sortOpts=computeSortOpts.value;const{orders}=sortOpts;const currOrder=column.order||null;const oIndex=orders.indexOf(currOrder)+1;return orders[oIndex<orders.length?oIndex:0];};const getCustomStorageMap=id=>{const version=getConfig().version;const rest=_xeUtils.default.toStringJSON(localStorage.getItem(customStorageKey)||'');const maps=rest&&rest._v===version?rest:{_v:version};return(id?maps[id]:maps)||{};};const setCustomStorageMap=(id,data)=>{const version=getConfig().version;const maps=getCustomStorageMap();maps[id]=data||undefined;maps._v=version;localStorage.setItem(customStorageKey,_xeUtils.default.toJSONString(maps));};const getRecoverRowMaps=keyMaps=>{const{fullAllDataRowIdData}=internalData;const restKeys={};_xeUtils.default.each(keyMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){restKeys[rowid]=row;}});return restKeys;};const handleReserveRow=reserveRowMap=>{const{fullDataRowIdData}=internalData;const reserveList=[];_xeUtils.default.each(reserveRowMap,(item,rowid)=>{if(fullDataRowIdData[rowid]&&$xeTable.findRowIndexOf(reserveList,fullDataRowIdData[rowid].row)===-1){reserveList.push(fullDataRowIdData[rowid].row);}});return reserveList;};const handleVirtualXVisible=()=>{const{isScrollXBig,scrollXWidth}=reactData;const{elemStore,visibleColumn,fullColumnIdData}=internalData;const leftFixedWidth=computeLeftFixedWidth.value;const rightFixedWidth=computeRightFixedWidth.value;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(bodyScrollElem){const clientWidth=bodyScrollElem.clientWidth;let scrollLeft=bodyScrollElem.scrollLeft;if(isScrollXBig){scrollLeft=Math.ceil((scrollXWidth-clientWidth)*Math.min(1,scrollLeft/(maxXWidth-clientWidth)));}const startLeft=scrollLeft+leftFixedWidth;const endLeft=scrollLeft+clientWidth-rightFixedWidth;let leftIndex=0;let rightIndex=visibleColumn.length;while(leftIndex<rightIndex){const cIndex=Math.floor((leftIndex+rightIndex)/2);const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};if(colRest.oLeft<=startLeft){leftIndex=cIndex+1;}else{rightIndex=cIndex;}}let visibleSize=0;const toVisibleIndex=Math.max(0,leftIndex<visibleColumn.length?leftIndex-2:0);for(let cIndex=toVisibleIndex,cLen=visibleColumn.length;cIndex<cLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};visibleSize++;if(colRest.oLeft>endLeft||visibleSize>=60){break;}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(1,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};};const calcVarRowHeightConfig=(sizeKey,sizeEl)=>{const{rowHeightStore}=reactData;if(sizeEl&&sizeEl.clientHeight){rowHeightStore[sizeKey]=sizeEl.clientHeight;}};const computeRowHeight=()=>{const{isAllOverflow}=reactData;const tableHeader=refTableHeader.value;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;const defaultRowHeight=computeDefaultRowHeight.value;let rowHeight=0;if(isAllOverflow){if(tableBodyElem){const tableHeaderElem=tableHeader?tableHeader.$el:null;let firstTrElem;firstTrElem=tableBodyElem.querySelector('tr');if(!firstTrElem&&tableHeaderElem){firstTrElem=tableHeaderElem.querySelector('tr');}if(firstTrElem){rowHeight=firstTrElem.clientHeight;}}if(!rowHeight){rowHeight=defaultRowHeight;}}else{rowHeight=defaultRowHeight;}// 最低支持 18px 行高
@@ -95,7 +95,8 @@ if(hasCustomSort){collectColumn=_xeUtils.default.orderBy(collectColumn,'renderSo
95
95
  */const restoreCustomStorage=()=>{const{customConfig}=props;const tableId=computeTableId.value;const customOpts=computeCustomOpts.value;const{storage,restoreStore}=customOpts;const isAllCustom=storage===true;const storageOpts=isAllCustom?{}:Object.assign({},storage||{});const isCustomResizable=isAllCustom||storageOpts.resizable;const isCustomVisible=isAllCustom||storageOpts.visible;const isCustomFixed=isAllCustom||storageOpts.fixed;const isCustomSort=isAllCustom||storageOpts.sort;if((customConfig?(0,_utils.isEnableConf)(customOpts):customOpts.enabled)&&(isCustomResizable||isCustomVisible||isCustomFixed||isCustomSort)){if(!tableId){(0,_log.errLog)('vxe.error.reqProp',['id']);return;}const storeData=getCustomStorageMap(tableId);if(restoreStore){return Promise.resolve(restoreStore({$table:$xeTable,id:tableId,type:'restore',storeData})).then(storeData=>{if(!storeData){return;}return handleCustomRestore(storeData);}).catch(e=>e);}else{return handleCustomRestore(storeData);}}};/**
96
96
  * 更新数据列的 Map
97
97
  * 牺牲数据组装的耗时,用来换取使用过程中的流畅
98
- */const cacheColumnMap=()=>{const{tableFullColumn,collectColumn}=internalData;const fullColumnIdData=internalData.fullColumnIdData={};const fullColumnFieldData=internalData.fullColumnFieldData={};const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const columnOpts=computeColumnOpts.value;const columnDragOpts=computeColumnDragOpts.value;const virtualYOpts=computeVirtualYOpts.value;const{isCrossDrag,isSelfToChildDrag}=columnDragOpts;const customOpts=computeCustomOpts.value;const{storage}=customOpts;const rowOpts=computeRowOpts.value;const isGroup=collectColumn.some(_utils.hasChildrenList);let isAllOverflow=!!props.showOverflow;let rowGroupColumn;let expandColumn;let treeNodeColumn;let checkboxColumn;let radioColumn;let htmlColumn;let hasFixed;const handleFunc=(column,index,items,path,parentColumn)=>{const{id:colid,field,fixed,type,treeNode,rowGroupNode}=column;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};if(field){if(fullColumnFieldData[field]){(0,_log.errLog)('vxe.error.colRepet',['field',field]);}fullColumnFieldData[field]=rest;}else{if(storage&&!type||columnOpts.drag&&(isCrossDrag||isSelfToChildDrag)){(0,_log.errLog)('vxe.error.reqProp',[`${column.getTitle()||type||''} -> column.field=?`]);}}if(!hasFixed&&fixed){hasFixed=fixed;}if(!htmlColumn&&type==='html'){htmlColumn=column;}if(treeNode){if(treeNodeColumn){(0,_log.warnLog)('vxe.error.colRepet',['tree-node',treeNode]);}if(!treeNodeColumn){treeNodeColumn=column;}}if(rowGroupNode){if(treeNodeColumn){(0,_log.warnLog)('vxe.error.colRepet',['row-group-node',rowGroupNode]);}if(!rowGroupColumn){rowGroupColumn=column;}}if(type==='expand'){if(expandColumn){(0,_log.warnLog)('vxe.error.colRepet',['type',type]);}if(!expandColumn){expandColumn=column;}}if(type==='checkbox'){if(checkboxColumn){(0,_log.warnLog)('vxe.error.colRepet',['type',type]);}if(!checkboxColumn){checkboxColumn=column;}}else if(type==='radio'){if(radioColumn){(0,_log.warnLog)('vxe.error.colRepet',['type',type]);}if(!radioColumn){radioColumn=column;}}if(isAllOverflow&&column.showOverflow===false){isAllOverflow=false;}if(fullColumnIdData[colid]){(0,_log.errLog)('vxe.error.colRepet',['colId',colid]);}fullColumnIdData[colid]=rest;};if(isGroup){_xeUtils.default.eachTree(collectColumn,(column,index,items,path,parentColumn,nodes)=>{column.level=nodes.length;handleFunc(column,index,items,path,parentColumn);});}else{tableFullColumn.forEach(handleFunc);}if(expandColumn&&expandOpts.mode!=='fixed'&&virtualYOpts.enabled){(0,_log.warnLog)('vxe.error.notConflictProp',['column.type="expand','virtual-y-config.enabled=false']);}if(expandColumn&&expandOpts.mode!=='fixed'&&mouseOpts.area){(0,_log.errLog)('vxe.error.errConflicts',['mouse-config.area','column.type=expand']);}if(htmlColumn){if(!columnOpts.useKey){(0,_log.errLog)('vxe.error.reqProp',['column-config.useKey & column.type=html']);}if(!rowOpts.useKey){(0,_log.errLog)('vxe.error.reqProp',['row-config.useKey & column.type=html']);}}reactData.isGroup=isGroup;reactData.rowGroupColumn=rowGroupColumn;reactData.treeNodeColumn=treeNodeColumn;reactData.expandColumn=expandColumn;reactData.isAllOverflow=isAllOverflow;};const updateHeight=()=>{internalData.customHeight=calcTableHeight('height');internalData.customMinHeight=calcTableHeight('minHeight');internalData.customMaxHeight=calcTableHeight('maxHeight');};const calcColumnAutoWidth=(column,wrapperEl)=>{const cellElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[colid="${column.id}"]`);let leftRightPadding=0;const firstCellEl=cellElemList[0];if(firstCellEl&&firstCellEl.parentElement){const cellStyle=getComputedStyle(firstCellEl.parentElement);leftRightPadding=Math.ceil(_xeUtils.default.toNumber(cellStyle.paddingLeft)+_xeUtils.default.toNumber(cellStyle.paddingRight));}let colWidth=column.renderAutoWidth-leftRightPadding;for(let i=0;i<cellElemList.length;i++){const celEl=cellElemList[i];colWidth=Math.max(colWidth,celEl?Math.ceil(celEl.scrollWidth)+4:0);}return colWidth+leftRightPadding;};const calcCellWidth=()=>{const autoWidthColumnList=computeAutoWidthColumnList.value;const{fullColumnIdData}=internalData;const el=refElem.value;if(el){el.setAttribute('data-calc-col','Y');autoWidthColumnList.forEach(column=>{const colid=column.id;const colRest=fullColumnIdData[colid];const colWidth=calcColumnAutoWidth(column,el);if(colRest){colRest.width=Math.max(colWidth,colRest.width);}column.renderAutoWidth=colWidth;});$xeTable.analyColumnWidth();el.removeAttribute('data-calc-col');}};/**
98
+ */const cacheColumnMap=()=>{const{tableFullColumn,collectColumn}=internalData;const fullColumnIdData=internalData.fullColumnIdData={};const fullColumnFieldData=internalData.fullColumnFieldData={};const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const columnOpts=computeColumnOpts.value;const columnDragOpts=computeColumnDragOpts.value;const virtualYOpts=computeVirtualYOpts.value;const{isCrossDrag,isSelfToChildDrag}=columnDragOpts;const customOpts=computeCustomOpts.value;const{storage}=customOpts;const rowOpts=computeRowOpts.value;const isGroup=collectColumn.some(_utils.hasChildrenList);let isAllOverflow=!!props.showOverflow;let rowGroupColumn;let expandColumn;let treeNodeColumn;let checkboxColumn;let radioColumn;let htmlColumn;let hasFixed;const handleFunc=(column,index,items,path,parentColumn)=>{const{id:colid,field,fixed,type,treeNode,rowGroupNode}=column;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};if(field){if(fullColumnFieldData[field]){(0,_log.errLog)('vxe.error.colRepet',['field',field]);}fullColumnFieldData[field]=rest;}else{if(storage&&!type||columnOpts.drag&&(isCrossDrag||isSelfToChildDrag)){(0,_log.errLog)('vxe.error.reqProp',[`${column.getTitle()||type||''} -> column.field=?`]);}}if(!hasFixed&&fixed){hasFixed=fixed;}if(!htmlColumn&&type==='html'){htmlColumn=column;}if(treeNode){if(treeNodeColumn){(0,_log.warnLog)('vxe.error.colRepet',['tree-node',treeNode]);}if(!treeNodeColumn){treeNodeColumn=column;}}if(rowGroupNode){if(treeNodeColumn){(0,_log.warnLog)('vxe.error.colRepet',['row-group-node',rowGroupNode]);}if(!rowGroupColumn){rowGroupColumn=column;}}if(type==='expand'){if(expandColumn){(0,_log.warnLog)('vxe.error.colRepet',['type',type]);}if(!expandColumn){expandColumn=column;}}if(type==='checkbox'){if(checkboxColumn){(0,_log.warnLog)('vxe.error.colRepet',['type',type]);}if(!checkboxColumn){checkboxColumn=column;}}else if(type==='radio'){if(radioColumn){(0,_log.warnLog)('vxe.error.colRepet',['type',type]);}if(!radioColumn){radioColumn=column;}}if(isAllOverflow&&column.showOverflow===false){isAllOverflow=false;}if(fullColumnIdData[colid]){(0,_log.errLog)('vxe.error.colRepet',['colId',colid]);}fullColumnIdData[colid]=rest;};if(isGroup){_xeUtils.default.eachTree(collectColumn,(column,index,items,path,parentColumn,nodes)=>{column.level=nodes.length;handleFunc(column,index,items,path,parentColumn);});}else{tableFullColumn.forEach(handleFunc);}if(expandColumn&&expandOpts.mode!=='fixed'&&virtualYOpts.enabled){(0,_log.warnLog)('vxe.error.notConflictProp',['column.type="expand','virtual-y-config.enabled=false']);}if(expandColumn&&expandOpts.mode!=='fixed'&&mouseOpts.area){(0,_log.errLog)('vxe.error.errConflicts',['mouse-config.area','column.type=expand']);}if(htmlColumn){if(!columnOpts.useKey){(0,_log.errLog)('vxe.error.reqProp',['column-config.useKey & column.type=html']);}if(!rowOpts.useKey){(0,_log.errLog)('vxe.error.reqProp',['row-config.useKey & column.type=html']);}}reactData.isGroup=isGroup;reactData.rowGroupColumn=rowGroupColumn;reactData.treeNodeColumn=treeNodeColumn;reactData.expandColumn=expandColumn;reactData.isAllOverflow=isAllOverflow;};const updateHeight=()=>{internalData.customHeight=calcTableHeight('height');internalData.customMinHeight=calcTableHeight('minHeight');internalData.customMaxHeight=calcTableHeight('maxHeight');// 如果启用虚拟滚动,默认高度
99
+ if(reactData.scrollYLoad&&!(internalData.customHeight||internalData.customMinHeight)){internalData.customHeight=300;}};const calcColumnAutoWidth=(column,wrapperEl)=>{const cellElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[colid="${column.id}"]`);let leftRightPadding=0;const firstCellEl=cellElemList[0];if(firstCellEl&&firstCellEl.parentElement){const cellStyle=getComputedStyle(firstCellEl.parentElement);leftRightPadding=Math.ceil(_xeUtils.default.toNumber(cellStyle.paddingLeft)+_xeUtils.default.toNumber(cellStyle.paddingRight));}let colWidth=column.renderAutoWidth-leftRightPadding;for(let i=0;i<cellElemList.length;i++){const celEl=cellElemList[i];colWidth=Math.max(colWidth,celEl?Math.ceil(celEl.scrollWidth)+4:0);}return colWidth+leftRightPadding;};const calcCellWidth=()=>{const autoWidthColumnList=computeAutoWidthColumnList.value;const{fullColumnIdData}=internalData;const el=refElem.value;if(el){el.setAttribute('data-calc-col','Y');autoWidthColumnList.forEach(column=>{const colid=column.id;const colRest=fullColumnIdData[colid];const colWidth=calcColumnAutoWidth(column,el);if(colRest){colRest.width=Math.max(colWidth,colRest.width);}column.renderAutoWidth=colWidth;});$xeTable.analyColumnWidth();el.removeAttribute('data-calc-col');}};/**
99
100
  * 列宽算法,计算单元格列宽,动态分配可用剩余空间
100
101
  * 支持 px、%、固定 混合分配
101
102
  * 支持动态列表调整分配
@@ -145,7 +146,7 @@ if(isOptimizeMode){renderColumnList=fixedColumn||[];}}}const tWidth=renderColumn
145
146
  if(fixedWrapperElem){if(wrapperElem){wrapperElem.style.top=`${headerHeight}px`;}fixedWrapperElem.style.height=`${customHeight>0?customHeight:tableHeight+headerHeight+footerHeight+osbHeight}px`;fixedWrapperElem.style.width=`${fixedColumn.reduce((previous,column)=>previous+column.renderWidth,0)}px`;}let renderColumnList=tableColumn;let isOptimizeMode=false;// 如果是使用优化模式
146
147
  if(scrollXLoad||scrollYLoad||isAllOverflow){if(expandColumn&&expandOpts.mode!=='fixed'||spanMethod||footerSpanMethod){// 如果不支持优化模式
147
148
  }else{isOptimizeMode=true;}}if(fixedType){renderColumnList=visibleColumn;if(isOptimizeMode){renderColumnList=fixedColumn||[];}}const tWidth=renderColumnList.reduce((previous,column)=>previous+column.renderWidth,0);if(fixedType){if(isOptimizeMode){if(wrapperElem){wrapperElem.style.width=tWidth?`${tWidth}px`:'';}}else{if(wrapperElem){wrapperElem.style.width=scrollXWidth?`${scrollXWidth}px`:'';}}}if(tableElem){tableElem.style.width=tWidth?`${tWidth}px`:'';// 兼容性处理
148
- tableElem.style.paddingRight=osbWidth&&fixedType&&(browseObj['-moz']||browseObj.safari)?`${osbWidth}px`:'';}const emptyBlockElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-emptyBlock`]);if(emptyBlockElem){emptyBlockElem.style.width=tWidth?`${tWidth}px`:'';}}else if(layout==='footer'){let renderColumnList=tableColumn;let isOptimizeMode=false;// 如果是使用优化模式
149
+ tableElem.style.paddingRight=osbWidth&&fixedType&&(browseObj.firefox||browseObj.safari)?`${osbWidth}px`:'';}const emptyBlockElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-emptyBlock`]);if(emptyBlockElem){emptyBlockElem.style.width=tWidth?`${tWidth}px`:'';}}else if(layout==='footer'){let renderColumnList=tableColumn;let isOptimizeMode=false;// 如果是使用优化模式
149
150
  if(scrollXLoad&&allColumnFooterOverflow){if(spanMethod||footerSpanMethod){// 如果不支持优化模式
150
151
  }else{isOptimizeMode=true;}}if(!isOptimizeMode||!isColLoading&&(fixedType||!overflowX)){renderColumnList=visibleColumn;}if(fixedType){if(isOptimizeMode){renderColumnList=fixedColumn||[];}}const tWidth=renderColumnList.reduce((previous,column)=>previous+column.renderWidth,0);if(fixedType){if(isOptimizeMode){if(wrapperElem){wrapperElem.style.width=tWidth?`${tWidth}px`:'';}}else{if(wrapperElem){wrapperElem.style.width=scrollXWidth?`${scrollXWidth}px`:'';}}}if(currScrollElem){currScrollElem.style.height=`${footerHeight}px`;// 如果是固定列
151
152
  if(fixedWrapperElem){if(wrapperElem){wrapperElem.style.top=`${customHeight>0?customHeight-footerHeight-osbHeight:tableHeight+headerHeight}px`;}}}if(tableElem){tableElem.style.width=tWidth?`${tWidth}px`:'';}}});});if(currentRow){$xeTable.setCurrentRow(currentRow);}if(mouseConfig&&mouseOpts.selected&&editStore.selected.row&&editStore.selected.column){$xeTable.addCellSelectedClass();}return(0,_vue.nextTick)();};const checkValidate=type=>{if($xeTable.triggerValidate){return $xeTable.triggerValidate(type);}return(0,_vue.nextTick)();};/**
@@ -230,7 +231,7 @@ if(sYLoad){scrollYStore.endIndex=scrollYStore.visibleSize;}if(sYLoad){if(reactDa
230
231
  // }
231
232
  // }
232
233
  // }
233
- if(!(props.height||props.maxHeight)){(0,_log.errLog)('vxe.error.reqProp',['table.height | table.max-height | table.scroll-y={enabled: false}']);}// if (!props.showOverflow) {
234
+ if(!(props.height||props.maxHeight)){(0,_log.errLog)('vxe.error.reqProp',['height | max-height | virtual-y-config={enabled: false}']);}// if (!props.showOverflow) {
234
235
  // warnLog('vxe.error.reqProp', ['table.show-overflow'])
235
236
  // }
236
237
  if(props.spanMethod){(0,_log.errLog)('vxe.error.scrollErrProp',['table.span-method']);}}handleReserveStatus();$xeTable.checkSelectionStatus();return new Promise(resolve=>{(0,_vue.nextTick)().then(()=>handleRecalculateLayout(false)).then(()=>{calcCellHeight();updateRowOffsetTop();return handleRecalculateLayout(false);}).then(()=>{let targetScrollLeft=lastScrollLeft;let targetScrollTop=lastScrollTop;const virtualXOpts=computeVirtualXOpts.value;const virtualYOpts=computeVirtualYOpts.value;// 是否在更新数据之后自动滚动重置滚动条
@@ -815,7 +816,7 @@ const el=refElem.value;if(!el){return;}const xHandleEl=refScrollXHandleElem.valu
815
816
  * 纵向 Y 可视渲染事件处理
816
817
  */triggerScrollYEvent(){const virtualYOpts=computeVirtualYOpts.value;if(virtualYOpts.immediate){loadScrollYData();}else{lazyScrollYData();}},triggerBodyScrollEvent(evnt,fixedType){const{scrollYLoad,scrollXLoad}=reactData;const{elemStore,intoRunScroll,lastScrollTop,lastScrollLeft,inWheelScroll,inVirtualScroll,inHeaderScroll,inBodyScroll,scrollRenderType,inFooterScroll}=internalData;if(inWheelScroll||inVirtualScroll||inHeaderScroll||inFooterScroll){return;}const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;const leftScrollElem=(0,_util.getRefElem)(elemStore['left-body-scroll']);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const rightScrollElem=(0,_util.getRefElem)(elemStore['right-body-scroll']);const headerScrollElem=(0,_util.getRefElem)(elemStore['main-header-scroll']);const footerScrollElem=(0,_util.getRefElem)(elemStore['main-footer-scroll']);const rowExpandEl=refRowExpandElem.value;if(intoRunScroll){return;}if(!bodyScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}if(inBodyScroll){if(scrollRenderType!==fixedType){return;}}let scrollTop=yHandleEl.scrollTop;let scrollLeft=xHandleEl.scrollLeft;if(leftScrollElem&&fixedType==='left'){scrollTop=leftScrollElem.scrollTop;}else if(rightScrollElem&&fixedType==='right'){scrollTop=rightScrollElem.scrollTop;}else{scrollTop=bodyScrollElem.scrollTop;scrollLeft=bodyScrollElem.scrollLeft;}const isRollX=scrollLeft!==lastScrollLeft;const isRollY=scrollTop!==lastScrollTop;internalData.inBodyScroll=true;internalData.scrollRenderType=fixedType;if(isRollY){if(fixedType==='left'){(0,_dom.setScrollTop)(bodyScrollElem,scrollTop);(0,_dom.setScrollTop)(rightScrollElem,scrollTop);}else if(fixedType==='right'){(0,_dom.setScrollTop)(bodyScrollElem,scrollTop);(0,_dom.setScrollTop)(leftScrollElem,scrollTop);}else{(0,_dom.setScrollTop)(leftScrollElem,scrollTop);(0,_dom.setScrollTop)(rightScrollElem,scrollTop);}(0,_dom.setScrollTop)(yHandleEl,scrollTop);(0,_dom.setScrollTop)(rowExpandEl,scrollTop);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}}if(isRollX){(0,_dom.setScrollLeft)(xHandleEl,scrollLeft);(0,_dom.setScrollLeft)(headerScrollElem,scrollLeft);(0,_dom.setScrollLeft)(footerScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'body',fixed:fixedType});},triggerHeaderScrollEvent(evnt,fixedType){const{scrollXLoad}=reactData;const{elemStore,intoRunScroll,inWheelScroll,inVirtualScroll,inBodyScroll,inFooterScroll}=internalData;if(inWheelScroll||inVirtualScroll||inBodyScroll||inFooterScroll){return;}const yHandleEl=refScrollYHandleElem.value;const xHandleEl=refScrollXHandleElem.value;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const headerScrollElem=(0,_util.getRefElem)(elemStore['main-header-scroll']);const footerScrollElem=(0,_util.getRefElem)(elemStore['main-footer-scroll']);if(intoRunScroll){return;}if(!headerScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}const scrollTop=yHandleEl.scrollTop;const scrollLeft=headerScrollElem.scrollLeft;const isRollX=true;const isRollY=false;internalData.inHeaderScroll=true;(0,_dom.setScrollLeft)(xHandleEl,scrollLeft);(0,_dom.setScrollLeft)(footerScrollElem,scrollLeft);(0,_dom.setScrollLeft)(bodyScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'header',fixed:fixedType});},triggerFooterScrollEvent(evnt,fixedType){const{scrollXLoad}=reactData;const{elemStore,intoRunScroll,inWheelScroll,inVirtualScroll,inHeaderScroll,inBodyScroll}=internalData;if(inWheelScroll||inVirtualScroll||inHeaderScroll||inBodyScroll){return;}const yHandleEl=refScrollYHandleElem.value;const xHandleEl=refScrollXHandleElem.value;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const headerScrollElem=(0,_util.getRefElem)(elemStore['main-header-scroll']);const footerScrollElem=(0,_util.getRefElem)(elemStore['main-footer-scroll']);if(intoRunScroll){return;}if(!footerScrollElem){return;}if(!xHandleEl){return;}if(!yHandleEl){return;}const scrollTop=yHandleEl.scrollTop;const scrollLeft=footerScrollElem.scrollLeft;const isRollX=true;const isRollY=false;internalData.inFooterScroll=true;(0,_dom.setScrollLeft)(xHandleEl,scrollLeft);(0,_dom.setScrollLeft)(headerScrollElem,scrollLeft);(0,_dom.setScrollLeft)(bodyScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'footer',fixed:fixedType});},triggerBodyWheelEvent(evnt){const{target,deltaY,deltaX,shiftKey}=evnt;if(target&&/^textarea$/i.test(target.tagName)){return;}const{highlightHoverRow}=_props.default;const{scrollXLoad,scrollYLoad,expandColumn}=reactData;const leftFixedWidth=computeLeftFixedWidth.value;const rightFixedWidth=computeRightFixedWidth.value;if(!(leftFixedWidth||rightFixedWidth||expandColumn)){return;}const{elemStore,lastScrollTop,lastScrollLeft}=internalData;const rowOpts=computeRowOpts.value;const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;const leftScrollElem=(0,_util.getRefElem)(elemStore['left-body-scroll']);const headerScrollElem=(0,_util.getRefElem)(elemStore['main-header-scroll']);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const footerScrollElem=(0,_util.getRefElem)(elemStore['main-footer-scroll']);const rightScrollElem=(0,_util.getRefElem)(elemStore['right-body-scroll']);const rowExpandEl=refRowExpandElem.value;if(!xHandleEl){return;}if(!yHandleEl){return;}if(!bodyScrollElem){return;}const wheelSpeed=getWheelSpeed(reactData.lastScrollTime);const deltaTop=shiftKey?0:Math.ceil(deltaY*wheelSpeed);const deltaLeft=shiftKey?Math.ceil((shiftKey?deltaY||deltaX:deltaX)*wheelSpeed):0;const isTopWheel=deltaTop<0;const currScrollTop=bodyScrollElem.scrollTop;// 如果滚动位置已经是顶部或底部,则不需要触发
817
818
  if(isTopWheel?currScrollTop<=0:currScrollTop>=bodyScrollElem.scrollHeight-bodyScrollElem.clientHeight){return;}const scrollTop=currScrollTop+deltaTop;const scrollLeft=bodyScrollElem.scrollLeft+deltaLeft;const isRollX=scrollLeft!==lastScrollLeft;const isRollY=scrollTop!==lastScrollTop;if(rowOpts.isHover||highlightHoverRow){$xeTable.clearHoverRow();}// 用于鼠标纵向滚轮处理
818
- if(isRollX){evnt.preventDefault();internalData.inWheelScroll=true;if(browseObj['-moz']||browseObj.safari){const currLeftNum=scrollLeft;(0,_dom.setScrollLeft)(xHandleEl,currLeftNum);(0,_dom.setScrollLeft)(bodyScrollElem,currLeftNum);(0,_dom.setScrollLeft)(headerScrollElem,currLeftNum);(0,_dom.setScrollLeft)(footerScrollElem,currLeftNum);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,bodyScrollElem.scrollTop,currLeftNum,{type:'table',fixed:''});}else{wheelScrollLeftTo(scrollLeft,offsetLeft=>{internalData.inWheelScroll=true;const currLeftNum=offsetLeft;(0,_dom.setScrollLeft)(xHandleEl,currLeftNum);(0,_dom.setScrollLeft)(bodyScrollElem,currLeftNum);(0,_dom.setScrollLeft)(headerScrollElem,currLeftNum);(0,_dom.setScrollLeft)(footerScrollElem,currLeftNum);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,bodyScrollElem.scrollTop,currLeftNum,{type:'table',fixed:''});});}}if(isRollY){evnt.preventDefault();internalData.inWheelScroll=true;if(browseObj['-moz']||browseObj.safari){const currTopNum=scrollTop;(0,_dom.setScrollTop)(yHandleEl,currTopNum);(0,_dom.setScrollTop)(bodyScrollElem,currTopNum);(0,_dom.setScrollTop)(leftScrollElem,currTopNum);(0,_dom.setScrollTop)(rightScrollElem,currTopNum);(0,_dom.setScrollTop)(rowExpandEl,currTopNum);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,currTopNum,bodyScrollElem.scrollLeft,{type:'table',fixed:''});}else{wheelScrollTopTo(scrollTop-currScrollTop,offsetTop=>{internalData.inWheelScroll=true;const currTopNum=bodyScrollElem.scrollTop+offsetTop;(0,_dom.setScrollTop)(yHandleEl,currTopNum);(0,_dom.setScrollTop)(bodyScrollElem,currTopNum);(0,_dom.setScrollTop)(leftScrollElem,currTopNum);(0,_dom.setScrollTop)(rightScrollElem,currTopNum);(0,_dom.setScrollTop)(rowExpandEl,currTopNum);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,currTopNum,bodyScrollElem.scrollLeft,{type:'table',fixed:''});});}}},triggerVirtualScrollXEvent(evnt){const{scrollXLoad}=reactData;const{elemStore,inWheelScroll,lastScrollTop,inHeaderScroll,inBodyScroll,inFooterScroll}=internalData;if(inHeaderScroll||inBodyScroll||inFooterScroll){return;}if(inWheelScroll){return;}const headerScrollElem=(0,_util.getRefElem)(elemStore['main-header-scroll']);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const footerScrollElem=(0,_util.getRefElem)(elemStore['main-footer-scroll']);const yHandleEl=refScrollYHandleElem.value;const wrapperEl=evnt.currentTarget;const{scrollLeft}=wrapperEl;const yBodyEl=yHandleEl||bodyScrollElem;let scrollTop=0;if(yBodyEl){scrollTop=yBodyEl.scrollTop;}const isRollX=true;const isRollY=scrollTop!==lastScrollTop;internalData.inVirtualScroll=true;(0,_dom.setScrollLeft)(bodyScrollElem,scrollLeft);(0,_dom.setScrollLeft)(headerScrollElem,scrollLeft);(0,_dom.setScrollLeft)(footerScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'table',fixed:''});},triggerVirtualScrollYEvent(evnt){const{scrollYLoad}=reactData;const{elemStore,inWheelScroll,lastScrollLeft,inHeaderScroll,inBodyScroll,inFooterScroll}=internalData;if(inHeaderScroll||inBodyScroll||inFooterScroll){return;}if(inWheelScroll){return;}const leftScrollElem=(0,_util.getRefElem)(elemStore['left-body-scroll']);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const rightScrollElem=(0,_util.getRefElem)(elemStore['right-body-scroll']);const rowExpandEl=refRowExpandElem.value;const xHandleEl=refScrollXHandleElem.value;const wrapperEl=evnt.currentTarget;const{scrollTop}=wrapperEl;const xBodyEl=xHandleEl||bodyScrollElem;let scrollLeft=0;if(xBodyEl){scrollLeft=xBodyEl.scrollLeft;}const isRollX=scrollLeft!==lastScrollLeft;const isRollY=true;internalData.inVirtualScroll=true;(0,_dom.setScrollTop)(bodyScrollElem,scrollTop);(0,_dom.setScrollTop)(leftScrollElem,scrollTop);(0,_dom.setScrollTop)(rightScrollElem,scrollTop);(0,_dom.setScrollTop)(rowExpandEl,scrollTop);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'table',fixed:''});},/**
819
+ if(isRollX){evnt.preventDefault();internalData.inWheelScroll=true;if(browseObj.firefox||browseObj.safari){const currLeftNum=scrollLeft;(0,_dom.setScrollLeft)(xHandleEl,currLeftNum);(0,_dom.setScrollLeft)(bodyScrollElem,currLeftNum);(0,_dom.setScrollLeft)(headerScrollElem,currLeftNum);(0,_dom.setScrollLeft)(footerScrollElem,currLeftNum);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,bodyScrollElem.scrollTop,currLeftNum,{type:'table',fixed:''});}else{wheelScrollLeftTo(scrollLeft,offsetLeft=>{internalData.inWheelScroll=true;const currLeftNum=offsetLeft;(0,_dom.setScrollLeft)(xHandleEl,currLeftNum);(0,_dom.setScrollLeft)(bodyScrollElem,currLeftNum);(0,_dom.setScrollLeft)(headerScrollElem,currLeftNum);(0,_dom.setScrollLeft)(footerScrollElem,currLeftNum);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,bodyScrollElem.scrollTop,currLeftNum,{type:'table',fixed:''});});}}if(isRollY){evnt.preventDefault();internalData.inWheelScroll=true;if(browseObj.firefox||browseObj.safari){const currTopNum=scrollTop;(0,_dom.setScrollTop)(yHandleEl,currTopNum);(0,_dom.setScrollTop)(bodyScrollElem,currTopNum);(0,_dom.setScrollTop)(leftScrollElem,currTopNum);(0,_dom.setScrollTop)(rightScrollElem,currTopNum);(0,_dom.setScrollTop)(rowExpandEl,currTopNum);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,currTopNum,bodyScrollElem.scrollLeft,{type:'table',fixed:''});}else{wheelScrollTopTo(scrollTop-currScrollTop,offsetTop=>{internalData.inWheelScroll=true;const currTopNum=bodyScrollElem.scrollTop+offsetTop;(0,_dom.setScrollTop)(yHandleEl,currTopNum);(0,_dom.setScrollTop)(bodyScrollElem,currTopNum);(0,_dom.setScrollTop)(leftScrollElem,currTopNum);(0,_dom.setScrollTop)(rightScrollElem,currTopNum);(0,_dom.setScrollTop)(rowExpandEl,currTopNum);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,currTopNum,bodyScrollElem.scrollLeft,{type:'table',fixed:''});});}}},triggerVirtualScrollXEvent(evnt){const{scrollXLoad}=reactData;const{elemStore,inWheelScroll,lastScrollTop,inHeaderScroll,inBodyScroll,inFooterScroll}=internalData;if(inHeaderScroll||inBodyScroll||inFooterScroll){return;}if(inWheelScroll){return;}const headerScrollElem=(0,_util.getRefElem)(elemStore['main-header-scroll']);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const footerScrollElem=(0,_util.getRefElem)(elemStore['main-footer-scroll']);const yHandleEl=refScrollYHandleElem.value;const wrapperEl=evnt.currentTarget;const{scrollLeft}=wrapperEl;const yBodyEl=yHandleEl||bodyScrollElem;let scrollTop=0;if(yBodyEl){scrollTop=yBodyEl.scrollTop;}const isRollX=true;const isRollY=scrollTop!==lastScrollTop;internalData.inVirtualScroll=true;(0,_dom.setScrollLeft)(bodyScrollElem,scrollLeft);(0,_dom.setScrollLeft)(headerScrollElem,scrollLeft);(0,_dom.setScrollLeft)(footerScrollElem,scrollLeft);if(scrollXLoad){$xeTable.triggerScrollXEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'table',fixed:''});},triggerVirtualScrollYEvent(evnt){const{scrollYLoad}=reactData;const{elemStore,inWheelScroll,lastScrollLeft,inHeaderScroll,inBodyScroll,inFooterScroll}=internalData;if(inHeaderScroll||inBodyScroll||inFooterScroll){return;}if(inWheelScroll){return;}const leftScrollElem=(0,_util.getRefElem)(elemStore['left-body-scroll']);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const rightScrollElem=(0,_util.getRefElem)(elemStore['right-body-scroll']);const rowExpandEl=refRowExpandElem.value;const xHandleEl=refScrollXHandleElem.value;const wrapperEl=evnt.currentTarget;const{scrollTop}=wrapperEl;const xBodyEl=xHandleEl||bodyScrollElem;let scrollLeft=0;if(xBodyEl){scrollLeft=xBodyEl.scrollLeft;}const isRollX=scrollLeft!==lastScrollLeft;const isRollY=true;internalData.inVirtualScroll=true;(0,_dom.setScrollTop)(bodyScrollElem,scrollTop);(0,_dom.setScrollTop)(leftScrollElem,scrollTop);(0,_dom.setScrollTop)(rightScrollElem,scrollTop);(0,_dom.setScrollTop)(rowExpandEl,scrollTop);if(scrollYLoad){$xeTable.triggerScrollYEvent(evnt);}$xeTable.handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,{type:'table',fixed:''});},/**
819
820
  * 对于树形结构中,可以直接滚动到指定深层节点中
820
821
  * 对于某些特定的场景可能会用到,比如定位到某一节点
821
822
  * @param {Row} row 行对象