vxe-table 3.19.7 → 3.19.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/es/style.css +1 -1
  2. package/es/table/src/column.js +6 -0
  3. package/es/table/src/columnInfo.js +3 -0
  4. package/es/table/src/header.js +1 -7
  5. package/es/table/src/methods.js +90 -26
  6. package/es/table/src/table.js +2 -10
  7. package/es/ui/index.js +1 -1
  8. package/es/ui/src/log.js +1 -1
  9. package/lib/index.umd.js +107 -47
  10. package/lib/index.umd.min.js +1 -1
  11. package/lib/style.css +1 -1
  12. package/lib/table/src/column.js +6 -0
  13. package/lib/table/src/column.min.js +1 -1
  14. package/lib/table/src/columnInfo.js +3 -0
  15. package/lib/table/src/columnInfo.min.js +1 -1
  16. package/lib/table/src/header.js +1 -7
  17. package/lib/table/src/header.min.js +1 -1
  18. package/lib/table/src/methods.js +94 -28
  19. package/lib/table/src/methods.min.js +1 -1
  20. package/lib/table/src/table.js +1 -10
  21. package/lib/table/src/table.min.js +1 -1
  22. package/lib/ui/index.js +1 -1
  23. package/lib/ui/index.min.js +1 -1
  24. package/lib/ui/src/log.js +1 -1
  25. package/lib/ui/src/log.min.js +1 -1
  26. package/package.json +1 -1
  27. package/packages/table/src/column.ts +8 -0
  28. package/packages/table/src/columnInfo.ts +5 -0
  29. package/packages/table/src/header.ts +2 -8
  30. package/packages/table/src/methods.ts +92 -28
  31. package/packages/table/src/table.ts +2 -10
  32. /package/es/{iconfont.1762136064244.ttf → iconfont.1762392676329.ttf} +0 -0
  33. /package/es/{iconfont.1762136064244.woff → iconfont.1762392676329.woff} +0 -0
  34. /package/es/{iconfont.1762136064244.woff2 → iconfont.1762392676329.woff2} +0 -0
  35. /package/lib/{iconfont.1762136064244.ttf → iconfont.1762392676329.ttf} +0 -0
  36. /package/lib/{iconfont.1762136064244.woff → iconfont.1762392676329.woff} +0 -0
  37. /package/lib/{iconfont.1762136064244.woff2 → iconfont.1762392676329.woff2} +0 -0
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.columnWatch=exports.columnProps=void 0;var _cell=_interopRequireDefault(require("./cell")),_comp=require("../../ui/src/comp"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let columnProps=exports.columnProps={colId:[String,Number],type:String,field:String,title:String,width:[Number,String],minWidth:[Number,String],maxWidth:[Number,String],resizable:{type:Boolean,default:null},fixed:String,align:String,headerAlign:String,footerAlign:String,showOverflow:{type:[Boolean,String],default:null},showHeaderOverflow:{type:[Boolean,String],default:null},showFooterOverflow:{type:[Boolean,String],default:null},className:[String,Function],headerClassName:[String,Function],footerClassName:[String,Function],formatter:[Function,Array,String],headerFormatter:[Function,Array,String],footerFormatter:[Function,Array,String],padding:{type:Boolean,default:null},verticalAlign:{type:String,default:null},sortable:Boolean,remoteSort:{type:Boolean,default:null},sortBy:[String,Function],sortType:String,sortMethod:Function,filters:{type:Array,default:null},filterMultiple:{type:Boolean,default:!0},filterMethod:Function,filterResetMethod:Function,filterRecoverMethod:Function,filterRender:Object,floatingFilters:Object,rowGroupNode:Boolean,treeNode:Boolean,dragSort:Boolean,rowResize:Boolean,visible:{type:Boolean,default:null},headerExportMethod:Function,exportMethod:Function,footerExportMethod:Function,titleHelp:Object,titlePrefix:Object,titleSuffix:Object,cellType:String,cellRender:Object,editRender:Object,contentRender:Object,aggFunc:[String,Boolean],params:Object},columnWatch=exports.columnWatch={};Object.keys(columnProps).forEach(o=>{columnWatch[o]=function(e){var t=this.$xeTable;this.columnConfig.update(o,e),t&&("filters"===o?(t.setFilter(this.columnConfig,e),t.handleUpdateDataQueue()):["visible","fixed","width","minWidth","maxWidth"].includes(o)&&t.handleRefreshColumnQueue())}});var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeColumn",props:columnProps,provide(){return{$xeColumn:this,$xeGrid:null,$xeGantt:null}},inject:{$xeTable:{default:null},$xeColumn:{default:null}},watch:columnWatch,created(){var e=this.$xeTable;this.columnConfig=this.createColumn(e,this)},mounted(){this.columnConfig.slots=this.$scopedSlots,(0,_util.assembleColumn)(this)},destroyed(){(0,_util.destroyColumn)(this)},render(e){return e("div",this.$slots.default)},methods:_cell.default});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.columnWatch=exports.columnProps=void 0;var _cell=_interopRequireDefault(require("./cell")),_comp=require("../../ui/src/comp"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let columnProps=exports.columnProps={colId:[String,Number],type:String,field:String,title:String,width:[Number,String],minWidth:[Number,String],maxWidth:[Number,String],resizable:{type:Boolean,default:null},fixed:String,align:String,headerAlign:String,footerAlign:String,showOverflow:{type:[Boolean,String],default:null},showHeaderOverflow:{type:[Boolean,String],default:null},showFooterOverflow:{type:[Boolean,String],default:null},className:[String,Function],headerClassName:[String,Function],footerClassName:[String,Function],formatter:[Function,Array,String],headerFormatter:[Function,Array,String],footerFormatter:[Function,Array,String],padding:{type:Boolean,default:null},verticalAlign:{type:String,default:null},sortable:Boolean,remoteSort:{type:Boolean,default:null},sortBy:[String,Function],sortType:String,sortMethod:Function,filters:{type:Array,default:null},filterMultiple:{type:Boolean,default:!0},filterMethod:Function,filterResetMethod:Function,filterRecoverMethod:Function,filterRender:Object,floatingFilters:Object,rowGroupNode:Boolean,treeNode:Boolean,dragSort:Boolean,rowResize:Boolean,visible:{type:Boolean,default:null},headerExportMethod:Function,exportMethod:Function,footerExportMethod:Function,titleHelp:Object,titlePrefix:Object,titleSuffix:Object,cellType:String,cellRender:Object,editRender:Object,contentRender:Object,aggFunc:[String,Boolean],copyMethod:Function,cutMethod:Function,pasteMethod:Function,params:Object},columnWatch=exports.columnWatch={};Object.keys(columnProps).forEach(o=>{columnWatch[o]=function(e){var t=this.$xeTable;this.columnConfig.update(o,e),t&&("filters"===o?(t.setFilter(this.columnConfig,e),t.handleUpdateDataQueue()):["visible","fixed","width","minWidth","maxWidth"].includes(o)&&t.handleRefreshColumnQueue())}});var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeColumn",props:columnProps,provide(){return{$xeColumn:this,$xeGrid:null,$xeGantt:null}},inject:{$xeTable:{default:null},$xeColumn:{default:null}},watch:columnWatch,created(){var e=this.$xeTable;this.columnConfig=this.createColumn(e,this)},mounted(){this.columnConfig.slots=this.$scopedSlots,(0,_util.assembleColumn)(this)},destroyed(){(0,_util.destroyColumn)(this)},render(e){return e("div",this.$slots.default)},methods:_cell.default});
@@ -141,6 +141,9 @@ class ColumnInfo {
141
141
  titlePrefix: _vm.titlePrefix,
142
142
  titleSuffix: _vm.titleSuffix,
143
143
  aggFunc: _vm.aggFunc,
144
+ copyMethod: _vm.copyMethod,
145
+ cutMethod: _vm.cutMethod,
146
+ pasteMethod: _vm.pasteMethod,
144
147
  // 自定义参数
145
148
  params: _vm.params,
146
149
  // 渲染属性
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,formats,renderer}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:l,renderFooter:o,renderData:i}={}){var d=e,n=e.$xeGrid,a=e.$xeGantt,s=n||a,{field:u,editRender:f,filterRender:g}=r,c=r.colId||_xeUtils.default.uniqueId("col_"),h=n?n.computeProxyOpts:null,p=r.formatter,m=!_xeUtils.default.isBoolean(r.visible)||r.visible,x=(0,_utils.isEnableConf)(g)?renderer.get(g.name):null,x=x?x.createTableFilterOptions:null,F=(0,_util.toFilters)(r.filters,c),_=["seq","checkbox","radio","expand","html"];r.type&&-1===_.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,_.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),"expand"===r.type&&(_=d.treeConfig,_)&&(e.treeOpts.showLine||e.treeOpts.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),r.remoteSort&&(0,_log.warnLog)("vxe.error.delProp",["column.remote-sort","sort-config.remote"]),r.sortMethod&&(0,_log.warnLog)("vxe.error.delProp",["column.sort-method","sort-config.sortMethod"]),p&&(_xeUtils.default.isString(p)?(d=formats.get(p)||_xeUtils.default[p])&&_xeUtils.default.isFunction(d.tableCellFormatMethod||d.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[p]):!_xeUtils.default.isArray(p)||(_=formats.get(p[0])||_xeUtils.default[p[0]])&&_xeUtils.default.isFunction(_.tableCellFormatMethod||_.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[p[0]])),r.aggFunc&&!e.handlePivotTableAggregateData&&!0!==r.aggFunc&&(0,_log.errLog)("vxe.error.errProp",["column.agg-func="+r.aggFunc,"column.agg-func=true"]),u&&f&&(f.startField&&0<=(""+f.startField).indexOf(u)&&(0,_log.errLog)("vxe.error.modelConflicts",["field="+u,"edit-render.startField="+f.startField]),f.endField)&&0<=(""+f.endField).indexOf(u)&&(0,_log.errLog)("vxe.error.modelConflicts",["field="+u,"edit-render.endField="+f.endField]),Object.assign(this,{type:r.type,property:r.field,field:u,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:p,headerFormatter:r.headerFormatter,footerFormatter:r.footerFormatter,padding:r.padding,verticalAlign:r.verticalAlign,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,sortMethod:r.sortMethod,remoteSort:r.remoteSort,filters:F,filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:g,floatingFilters:r.floatingFilters,rowGroupNode:r.rowGroupNode,treeNode:r.treeNode,dragSort:r.dragSort,rowResize:r.rowResize,cellType:r.cellType,cellRender:r.cellRender,editRender:f,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,aggFunc:r.aggFunc,params:r.params,id:c,parentId:null,visible:m,defaultParentId:null,halfVisible:!1,defaultVisible:m,defaultFixed:r.fixed,defaultAggGroup:r.aggGroup,defaultAggFunc:r.aggFunc,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderAggFn:"",renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:l||r.renderCell,renderFooter:o||r.renderFooter,renderData:i,slots:r.slots}),!x||F&&F.length||(this.filters=(0,_util.toFilters)(x({$table:e,column:this}),c)),s&&h&&h.beforeColumn&&h.beforeColumn({$table:e,$grid:n,$gantt:a,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var e=this.type;return this.field||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,formats,renderer}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:o,renderFooter:l,renderData:i}={}){var d=e,n=e.$xeGrid,a=e.$xeGantt,s=n||a,{field:u,editRender:f,filterRender:g}=r,c=r.colId||_xeUtils.default.uniqueId("col_"),h=n?n.computeProxyOpts:null,p=r.formatter,m=!_xeUtils.default.isBoolean(r.visible)||r.visible,x=(0,_utils.isEnableConf)(g)?renderer.get(g.name):null,x=x?x.createTableFilterOptions:null,F=(0,_util.toFilters)(r.filters,c),_=["seq","checkbox","radio","expand","html"];r.type&&-1===_.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,_.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),"expand"===r.type&&(_=d.treeConfig,_)&&(e.treeOpts.showLine||e.treeOpts.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),r.remoteSort&&(0,_log.warnLog)("vxe.error.delProp",["column.remote-sort","sort-config.remote"]),r.sortMethod&&(0,_log.warnLog)("vxe.error.delProp",["column.sort-method","sort-config.sortMethod"]),p&&(_xeUtils.default.isString(p)?(d=formats.get(p)||_xeUtils.default[p])&&_xeUtils.default.isFunction(d.tableCellFormatMethod||d.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[p]):!_xeUtils.default.isArray(p)||(_=formats.get(p[0])||_xeUtils.default[p[0]])&&_xeUtils.default.isFunction(_.tableCellFormatMethod||_.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[p[0]])),r.aggFunc&&!e.handlePivotTableAggregateData&&!0!==r.aggFunc&&(0,_log.errLog)("vxe.error.errProp",["column.agg-func="+r.aggFunc,"column.agg-func=true"]),u&&f&&(f.startField&&0<=(""+f.startField).indexOf(u)&&(0,_log.errLog)("vxe.error.modelConflicts",["field="+u,"edit-render.startField="+f.startField]),f.endField)&&0<=(""+f.endField).indexOf(u)&&(0,_log.errLog)("vxe.error.modelConflicts",["field="+u,"edit-render.endField="+f.endField]),Object.assign(this,{type:r.type,property:r.field,field:u,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:p,headerFormatter:r.headerFormatter,footerFormatter:r.footerFormatter,padding:r.padding,verticalAlign:r.verticalAlign,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,sortMethod:r.sortMethod,remoteSort:r.remoteSort,filters:F,filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:g,floatingFilters:r.floatingFilters,rowGroupNode:r.rowGroupNode,treeNode:r.treeNode,dragSort:r.dragSort,rowResize:r.rowResize,cellType:r.cellType,cellRender:r.cellRender,editRender:f,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,aggFunc:r.aggFunc,copyMethod:r.copyMethod,cutMethod:r.cutMethod,pasteMethod:r.pasteMethod,params:r.params,id:c,parentId:null,visible:m,defaultParentId:null,halfVisible:!1,defaultVisible:m,defaultFixed:r.fixed,defaultAggGroup:r.aggGroup,defaultAggFunc:r.aggFunc,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderAggFn:"",renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:o||r.renderCell,renderFooter:l||r.renderFooter,renderData:i,slots:r.slots}),!x||F&&F.length||(this.filters=(0,_util.toFilters)(x({$table:e,column:this}),c)),s&&h&&h.beforeColumn&&h.beforeColumn({$table:e,$grid:n,$gantt:a,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var e=this.type;return this.field||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
@@ -375,13 +375,7 @@ function renderFilterRows(h, _vm, isOptimizeMode, cols) {
375
375
  colid
376
376
  },
377
377
  class: 'vxe-cell--wrapper vxe-header-cell--wrapper'
378
- }, flSlot ? $xeTable.callSlot(flSlot, cellParams, h) : rtFloatingFilter && firstFilterOption ? (0, _vn.getSlotVNs)(rtFloatingFilter.call($xeTable, h, filterRender, {
379
- $table: $xeTable,
380
- option: firstFilterOption,
381
- column: column,
382
- columnIndex,
383
- $columnIndex
384
- })) : [])])]);
378
+ }, flSlot ? $xeTable.callSlot(flSlot, cellParams, h) : rtFloatingFilter && firstFilterOption ? (0, _vn.getSlotVNs)(rtFloatingFilter.call($xeTable, h, filterRender, cellParams)) : [])])]);
385
379
  });
386
380
  }
387
381
  function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="header";function getColumnFirstChild(e){var l=e.children;return l&&l.length?getColumnFirstChild(l[0]):e}function getColumnLastChild(e){var l=e.children;return l&&l.length?getColumnLastChild(l[l.length-1]):e}function renderRows(D,e,R,I,l,F,O){let k=e.$parent,z=k.$xeGrid,A=k.$xeGantt;var r=k,t=k,a=k;let U=e.fixedType,{resizable:L,columnKey:G,showCustomHeader:X,headerCellClassName:q,headerCellStyle:M,showHeaderOverflow:N,headerAlign:W,align:B,mouseConfig:V}=r,{currentColumn:K,dragCol:P,scrollXLoad:j,scrollYLoad:Y,overflowX:J,mergeHeadFlag:de,tableColumn:ne}=t,{fullColumnIdData:Q,scrollXStore:Z,mergeHeaderList:oe,mergeHeaderCellMaps:se}=a,ue=k.computeVirtualXOpts,ee=k.computeColumnOpts,le=k.computeColumnDragOpts,ce=k.computeCellOpts;e=k.computeDefaultRowHeight;let re=k.computeHeaderCellOpts,te=(0,_util.getCalcHeight)(re.height)||e,{disabledMethod:ae,isCrossDrag:pe,isPeerDrag:me}=le,ie=F===l.length-1;return O.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,headerClassName:n,editRender:o,cellRender:s}=e,u=e.id,c=Q[u]||{},o=o||s,s=o?renderer.get(o.name):null,o=e.children&&e.children.length,p=J&&!o&&(U?e.fixed!==U:!!e.fixed),m=(_xeUtils.default.isBoolean(re.padding)?re:ce).padding,t=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?N:t,a=a||(s?s.tableHeaderCellAlign:"")||W||i||(s?s.tableCellAlign:"")||B,i="ellipsis"===t,s="title"===t,t=!0===t||"tooltip"===t,g=s||t||i;let f=!1,h=null;d&&(h=d[0],f=d.some(e=>e.checked));var x=c.index,c=X?l:c._index;let v={$table:k,$grid:z,$gantt:A,$rowIndex:F,column:e,columnIndex:x,$columnIndex:l,_columnIndex:c,firstFilterOption:h,fixed:U,source:sourceType,type:renderType,isHidden:p,hasFilter:f};x={colid:u};let C=!1;if(X||(x.colspan=1<e.colSpan?e.colSpan:null,x.rowspan=1<e.rowSpan?e.rowSpan:null),de&&oe.length&&(X||ie)){var b=se[F+":"+(X?l:c)];if(b){var{rowspan:b,colspan:w}=b;if(!b||!w)return null;1<b&&(C=!0,x.rowspan=b),1<w&&(C=!0,x.colspan=w)}}b={click:e=>k.triggerHeaderCellClickEvent(e,v),dblclick:e=>k.triggerHeaderCellDblclickEvent(e,v)},w=ee.drag&&"cell"===le.trigger;let H=!1;w&&(H=!(!ae||!ae(v))),(V||w)&&(b.mousedown=e=>k.triggerHeaderCellMousedownEvent(e,v)),ee.drag&&(b.dragstart=k.handleHeaderCellDragDragstartEvent,b.dragend=k.handleHeaderCellDragDragendEvent,b.dragover=k.handleHeaderCellDragDragoverEvent,w)&&(b.mouseup=k.handleHeaderCellDragMouseupEvent);var w=l===O.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:ee.resizable||L,_=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let $=!1;!I||!J||R||C||P&&P.id===u||j&&10<ne.length&&!e.fixed&&!ue.immediate&&(c<Z.visibleStartIndex-Z.preloadSize||c>Z.visibleEndIndex+Z.preloadSize)&&($=!0);var E,S,T,c={};return g?c.height=te+"px":c.minHeight=te+"px",X||o&&!ie&&(S=getColumnFirstChild(e),E=getColumnLastChild(e),S)&&E&&S.id!==E.id&&(S=Q[S.id],T=Q[E.id],S)&&T&&(c.width=T.oLeft-S.oLeft+E.renderWidth+"px"),D("th",{class:["vxe-table--column vxe-header--column",u,p?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":w,"col--fixed":e.fixed,"col--group":o,"col--ellipsis":g,"fixed--width":!_,"is--padding":m,"is--sortable":e.sortable,"col--filter":!!d,"is--filter-active":f,"is--drag-active":ee.drag&&!e.fixed&&!H&&(pe||me||!e.parentId),"is--drag-disabled":ee.drag&&H,"col--current":K===e},(0,_utils.getClass)(n,v),(0,_utils.getClass)(q,v)],attrs:x,style:M?_xeUtils.default.isFunction(M)?M(v):M:void 0,on:b,key:X?""+u+l:G||j||Y||ee.useKey||ee.drag||o?u:l},[D("div",{class:["vxe-cell",{"c--title":s,"c--tooltip":t,"c--ellipsis":i}],style:c},$||I&&p?[]:[D("div",{attrs:{colid:u},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(D,v))]),p||!y||X&&!ie?renderEmptyElement(k):D("div",{class:"vxe-cell--col-resizable",on:{mousedown:e=>k.handleColResizeMousedownEvent(e,U,v),dblclick:e=>k.handleColResizeDblclickEvent(e,v)}})])})}function renderFilterRows(y,e,_,$){let E=e.$parent,S=E.$xeGrid,T=E.$xeGantt;var l=E,r=E,t=E;let D=e.fixedType,{showHeaderOverflow:R,headerAlign:I,align:F}=l,{currentColumn:O,overflowX:k}=r,z=t.fullColumnIdData,A=E.computeCellOpts;e=E.computeDefaultRowHeight;let U=E.computeHeaderCellOpts,L=(0,_util.getCalcHeight)(U.height)||e;return $.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,editRender:n,cellRender:o,floatingFilters:s,filterRender:u,slots:c}=e,p=e.id,m=z[p]||{},n=n||o,o=n?renderer.get(n.name):null,n=(0,_utils.isEnableConf)(u)?renderer.get(u.name):null,n=n?n.renderTableFloatingFilter:null,c=c?c.floatingFilter||c["floating-filter"]:null,g=k&&(D?e.fixed!==D:!!e.fixed),f=(_xeUtils.default.isBoolean(U.padding)?U:A).padding,t=_xeUtils.default.eqNull(t)?R:t,a=a||(o?o.tableHeaderCellAlign:"")||I||i||(o?o.tableCellAlign:"")||F,i="ellipsis"===t,o="title"===t,t=!0===t||"tooltip"===t,h=o||t||i;let x=!1,v=null;d&&(v=d[0],x=d.some(e=>e.checked));var d=m.index,m=m._index,m={$table:E,$grid:S,$gantt:T,column:e,columnIndex:d,$columnIndex:l,_columnIndex:m,option:v,fixed:D,source:sourceType,type:renderType,isHidden:g,hasFilter:x},C={colid:p},b=l===$.length-1,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width),H={};return h?H.height=L+"px":H.minHeight=L+"px",y("th",{class:["vxe-table--column vxe-header--column",p,g?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":b,"col--fixed":e.fixed,"col--ellipsis":h,"fixed--width":!w,"is--padding":f,"is--sortable":e.sortable,"col--current":O===e}],key:p,attrs:C},[y("div",{class:["vxe-cell",{"c--title":o,"c--tooltip":t,"c--ellipsis":i}],style:H},_&&g&&!s?[]:[y("div",{attrs:{colid:p},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},c?E.callSlot(c,m,y):n&&v?(0,_vn.getSlotVNs)(n.call(E,y,u,{$table:E,option:v,column:e,columnIndex:d,$columnIndex:l})):[])])])})}function renderHeads(t,a,i,d,n){let o=a.$parent;var e=o,l=o;let{fixedType:s,fixedColumn:r}=a,{headerRowClassName:u,headerRowStyle:c}=e;var e=l.visibleColumn,l=o.computeFloatingFilterOpts,p=n.map((e,l)=>{var r={$table:o,$rowIndex:l,fixed:s,type:renderType};return t("tr",{key:l,class:["vxe-header--row",u?_xeUtils.default.isFunction(u)?u(r):u:""],style:c?_xeUtils.default.isFunction(c)?c(r):c:void 0},renderRows(t,a,i,d,n,l,e))});return l.enabled&&p.push(t("tr",{key:"ff",class:["vxe-header--row"]},renderFilterRows(t,a,d,d&&s?r:e))),p}var _default=exports.default={name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.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},render(r){let l=this.$parent;var e=l,t=l,a=l,i=l.xID;let{fixedType:d,fixedColumn:n,tableColumn:o}=this;var s=this.headerColumn,e=e.mouseConfig,{isGroup:t,isColLoading:u,overflowX:c,scrollXLoad:p,dragCol:m}=t,{visibleColumn:a,fullColumnIdData:g}=a,f=l.computeMouseOpts;let h=s,x=o;s=l.computeIsHeaderRenderOptimize;return t?x=a:(s&&(u||!d&&c)||(x=a),d&&s&&(x=n||[]),h=[x]),d||t||p&&m&&2<x.length&&(u=g[m.id])&&(c=u._index,a=x[0],p=x[x.length-1],u=g[a.id],a=g[p.id],u)&&a&&(g=u._index,p=a._index,c<g?(x=[m].concat(x),h=[[m].concat(h[0])].concat(h.slice(1))):p<c&&(x=x.concat([m]),h=[h[0].concat([m])].concat(h.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",d?`fixed-${d}--wrapper`:"body--wrapper"],attrs:{xid:i}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,d)}}},[d?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:s?"1":null}},[r("colgroup",{ref:"refHeaderColgroup"},x.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,t,s,h))]),e&&f.area?r("div",{class:"vxe-table--cell-area",attrs:{xid:i}},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-clip-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])},methods:{uploadColumn(){var e=this.$parent,l=e.showCustomHeader,{collectColumn:r,visibleColumn:t}=e,a=this.tableGroupColumn,i=e.isGroup;let d=i?(0,_util.convertHeaderColumnToRows)(a):[],n=[];l&&1<d.length&&(n=(0,_util.convertHeaderToGridRows)(d),d=n),this.headerColumn=d,e.dispatchEvent("columns-change",{visibleColgroups:n,collectColumn:r,visibleColumn:t},null)}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="header";function getColumnFirstChild(e){var l=e.children;return l&&l.length?getColumnFirstChild(l[0]):e}function getColumnLastChild(e){var l=e.children;return l&&l.length?getColumnLastChild(l[l.length-1]):e}function renderRows(D,e,R,F,l,I,O){let k=e.$parent,z=k.$xeGrid,A=k.$xeGantt;var r=k,t=k,a=k;let U=e.fixedType,{resizable:L,columnKey:G,showCustomHeader:X,headerCellClassName:q,headerCellStyle:M,showHeaderOverflow:N,headerAlign:W,align:B,mouseConfig:V}=r,{currentColumn:K,dragCol:P,scrollXLoad:j,scrollYLoad:Y,overflowX:J,mergeHeadFlag:de,tableColumn:ne}=t,{fullColumnIdData:Q,scrollXStore:Z,mergeHeaderList:oe,mergeHeaderCellMaps:se}=a,ue=k.computeVirtualXOpts,ee=k.computeColumnOpts,le=k.computeColumnDragOpts,ce=k.computeCellOpts;e=k.computeDefaultRowHeight;let re=k.computeHeaderCellOpts,te=(0,_util.getCalcHeight)(re.height)||e,{disabledMethod:ae,isCrossDrag:pe,isPeerDrag:ge}=le,ie=I===l.length-1;return O.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,headerClassName:n,editRender:o,cellRender:s}=e,u=e.id,c=Q[u]||{},o=o||s,s=o?renderer.get(o.name):null,o=e.children&&e.children.length,p=J&&!o&&(U?e.fixed!==U:!!e.fixed),g=(_xeUtils.default.isBoolean(re.padding)?re:ce).padding,t=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?N:t,a=a||(s?s.tableHeaderCellAlign:"")||W||i||(s?s.tableCellAlign:"")||B,i="ellipsis"===t,s="title"===t,t=!0===t||"tooltip"===t,f=s||t||i;let h=!1,m=null;d&&(m=d[0],h=d.some(e=>e.checked));var x=c.index,c=X?l:c._index;let v={$table:k,$grid:z,$gantt:A,$rowIndex:I,column:e,columnIndex:x,$columnIndex:l,_columnIndex:c,firstFilterOption:m,fixed:U,source:sourceType,type:renderType,isHidden:p,hasFilter:h};x={colid:u};let C=!1;if(X||(x.colspan=1<e.colSpan?e.colSpan:null,x.rowspan=1<e.rowSpan?e.rowSpan:null),de&&oe.length&&(X||ie)){var b=se[I+":"+(X?l:c)];if(b){var{rowspan:b,colspan:w}=b;if(!b||!w)return null;1<b&&(C=!0,x.rowspan=b),1<w&&(C=!0,x.colspan=w)}}b={click:e=>k.triggerHeaderCellClickEvent(e,v),dblclick:e=>k.triggerHeaderCellDblclickEvent(e,v)},w=ee.drag&&"cell"===le.trigger;let H=!1;w&&(H=!(!ae||!ae(v))),(V||w)&&(b.mousedown=e=>k.triggerHeaderCellMousedownEvent(e,v)),ee.drag&&(b.dragstart=k.handleHeaderCellDragDragstartEvent,b.dragend=k.handleHeaderCellDragDragendEvent,b.dragover=k.handleHeaderCellDragDragoverEvent,w)&&(b.mouseup=k.handleHeaderCellDragMouseupEvent);var w=l===O.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:ee.resizable||L,_=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let $=!1;!F||!J||R||C||P&&P.id===u||j&&10<ne.length&&!e.fixed&&!ue.immediate&&(c<Z.visibleStartIndex-Z.preloadSize||c>Z.visibleEndIndex+Z.preloadSize)&&($=!0);var E,S,T,c={};return f?c.height=te+"px":c.minHeight=te+"px",X||o&&!ie&&(S=getColumnFirstChild(e),E=getColumnLastChild(e),S)&&E&&S.id!==E.id&&(S=Q[S.id],T=Q[E.id],S)&&T&&(c.width=T.oLeft-S.oLeft+E.renderWidth+"px"),D("th",{class:["vxe-table--column vxe-header--column",u,p?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":w,"col--fixed":e.fixed,"col--group":o,"col--ellipsis":f,"fixed--width":!_,"is--padding":g,"is--sortable":e.sortable,"col--filter":!!d,"is--filter-active":h,"is--drag-active":ee.drag&&!e.fixed&&!H&&(pe||ge||!e.parentId),"is--drag-disabled":ee.drag&&H,"col--current":K===e},(0,_utils.getClass)(n,v),(0,_utils.getClass)(q,v)],attrs:x,style:M?_xeUtils.default.isFunction(M)?M(v):M:void 0,on:b,key:X?""+u+l:G||j||Y||ee.useKey||ee.drag||o?u:l},[D("div",{class:["vxe-cell",{"c--title":s,"c--tooltip":t,"c--ellipsis":i}],style:c},$||F&&p?[]:[D("div",{attrs:{colid:u},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(D,v))]),p||!y||X&&!ie?renderEmptyElement(k):D("div",{class:"vxe-cell--col-resizable",on:{mousedown:e=>k.handleColResizeMousedownEvent(e,U,v),dblclick:e=>k.handleColResizeDblclickEvent(e,v)}})])})}function renderFilterRows(w,e,H,y){let _=e.$parent,$=_.$xeGrid,E=_.$xeGantt;var l=_,r=_,t=_;let S=e.fixedType,{showHeaderOverflow:T,headerAlign:D,align:R}=l,{currentColumn:F,overflowX:I}=r,O=t.fullColumnIdData,k=_.computeCellOpts;e=_.computeDefaultRowHeight;let z=_.computeHeaderCellOpts,A=(0,_util.getCalcHeight)(z.height)||e;return y.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,editRender:n,cellRender:o,floatingFilters:s,filterRender:u,slots:c}=e,p=e.id,g=O[p]||{},n=n||o,o=n?renderer.get(n.name):null,n=(0,_utils.isEnableConf)(u)?renderer.get(u.name):null,n=n?n.renderTableFloatingFilter:null,c=c?c.floatingFilter||c["floating-filter"]:null,f=I&&(S?e.fixed!==S:!!e.fixed),h=(_xeUtils.default.isBoolean(z.padding)?z:k).padding,t=_xeUtils.default.eqNull(t)?T:t,a=a||(o?o.tableHeaderCellAlign:"")||D||i||(o?o.tableCellAlign:"")||R,i="ellipsis"===t,o="title"===t,t=!0===t||"tooltip"===t,m=o||t||i;let x=!1,v=null;d&&(v=d[0],x=d.some(e=>e.checked));var d=g.index,g=g._index,d={$table:_,$grid:$,$gantt:E,column:e,columnIndex:d,$columnIndex:l,_columnIndex:g,option:v,fixed:S,source:sourceType,type:renderType,isHidden:f,hasFilter:x},g={colid:p},l=l===y.length-1,C=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width),b={};return m?b.height=A+"px":b.minHeight=A+"px",w("th",{class:["vxe-table--column vxe-header--column",p,f?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":l,"col--fixed":e.fixed,"col--ellipsis":m,"fixed--width":!C,"is--padding":h,"is--sortable":e.sortable,"col--current":F===e}],key:p,attrs:g},[w("div",{class:["vxe-cell",{"c--title":o,"c--tooltip":t,"c--ellipsis":i}],style:b},H&&f&&!s?[]:[w("div",{attrs:{colid:p},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},c?_.callSlot(c,d,w):n&&v?(0,_vn.getSlotVNs)(n.call(_,w,u,d)):[])])])})}function renderHeads(t,a,i,d,n){let o=a.$parent;var e=o,l=o;let{fixedType:s,fixedColumn:r}=a,{headerRowClassName:u,headerRowStyle:c}=e;var e=l.visibleColumn,l=o.computeFloatingFilterOpts,p=n.map((e,l)=>{var r={$table:o,$rowIndex:l,fixed:s,type:renderType};return t("tr",{key:l,class:["vxe-header--row",u?_xeUtils.default.isFunction(u)?u(r):u:""],style:c?_xeUtils.default.isFunction(c)?c(r):c:void 0},renderRows(t,a,i,d,n,l,e))});return l.enabled&&p.push(t("tr",{key:"ff",class:["vxe-header--row"]},renderFilterRows(t,a,d,d&&s?r:e))),p}var _default=exports.default={name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.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},render(r){let l=this.$parent;var e=l,t=l,a=l,i=l.xID;let{fixedType:d,fixedColumn:n,tableColumn:o}=this;var s=this.headerColumn,e=e.mouseConfig,{isGroup:t,isColLoading:u,overflowX:c,scrollXLoad:p,dragCol:g}=t,{visibleColumn:a,fullColumnIdData:f}=a,h=l.computeMouseOpts;let m=s,x=o;s=l.computeIsHeaderRenderOptimize;return t?x=a:(s&&(u||!d&&c)||(x=a),d&&s&&(x=n||[]),m=[x]),d||t||p&&g&&2<x.length&&(u=f[g.id])&&(c=u._index,a=x[0],p=x[x.length-1],u=f[a.id],a=f[p.id],u)&&a&&(f=u._index,p=a._index,c<f?(x=[g].concat(x),m=[[g].concat(m[0])].concat(m.slice(1))):p<c&&(x=x.concat([g]),m=[m[0].concat([g])].concat(m.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",d?`fixed-${d}--wrapper`:"body--wrapper"],attrs:{xid:i}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,d)}}},[d?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:s?"1":null}},[r("colgroup",{ref:"refHeaderColgroup"},x.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,t,s,m))]),e&&h.area?r("div",{class:"vxe-table--cell-area",attrs:{xid:i}},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-clip-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])},methods:{uploadColumn(){var e=this.$parent,l=e.showCustomHeader,{collectColumn:r,visibleColumn:t}=e,a=this.tableGroupColumn,i=e.isGroup;let d=i?(0,_util.convertHeaderColumnToRows)(a):[],n=[];l&&1<d.length&&(n=(0,_util.convertHeaderToGridRows)(d),d=n),this.headerColumn=d,e.dispatchEvent("columns-change",{visibleColgroups:n,collectColumn:r,visibleColumn:t},null)}}};
@@ -2921,21 +2921,36 @@ function autoCellWidth($xeTable) {
2921
2921
  /**
2922
2922
  * 计算自适应行高
2923
2923
  */
2924
- const calcCellAutoHeight = (rowRest, wrapperEl) => {
2925
- const cellElemList = wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);
2926
- let colHeight = rowRest.height;
2924
+ const calcCellAutoHeight = ($xeTable, rowRest, wrapperEl) => {
2925
+ const reactData = $xeTable;
2926
+ const {
2927
+ scrollXLoad
2928
+ } = reactData;
2929
+ const wrapperElemList = wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);
2930
+ let colHeight = 0;
2927
2931
  let firstCellStyle = null;
2928
2932
  let topBottomPadding = 0;
2929
- for (let i = 0; i < cellElemList.length; i++) {
2930
- const wrapperElem = cellElemList[i];
2933
+ for (let i = 0; i < wrapperElemList.length; i++) {
2934
+ const wrapperElem = wrapperElemList[i];
2931
2935
  const cellElem = wrapperElem.parentElement;
2936
+ const cellStyle = cellElem.style;
2937
+ const orHeight = cellStyle.height;
2938
+ if (!scrollXLoad) {
2939
+ cellStyle.height = '';
2940
+ }
2932
2941
  if (!firstCellStyle) {
2933
2942
  firstCellStyle = getComputedStyle(cellElem);
2934
2943
  topBottomPadding = firstCellStyle ? Math.ceil(_xeUtils.default.toNumber(firstCellStyle.paddingTop) + _xeUtils.default.toNumber(firstCellStyle.paddingBottom)) : 0;
2935
2944
  }
2945
+ if (!scrollXLoad) {
2946
+ cellStyle.height = orHeight;
2947
+ }
2936
2948
  const cellHeight = wrapperElem ? wrapperElem.clientHeight : 0;
2937
2949
  colHeight = Math.max(colHeight, Math.ceil(cellHeight + topBottomPadding));
2938
2950
  }
2951
+ if (scrollXLoad) {
2952
+ colHeight = Math.max(colHeight, rowRest.height);
2953
+ }
2939
2954
  return colHeight;
2940
2955
  };
2941
2956
  /**
@@ -2960,17 +2975,19 @@ const calcCellHeight = $xeTable => {
2960
2975
  const treeOpts = $xeTable.computeTreeOpts;
2961
2976
  const defaultRowHeight = $xeTable.computeDefaultRowHeight;
2962
2977
  const el = $xeTable.$refs.refElem;
2963
- if (!isAllOverflow && (scrollYLoad || scrollXLoad || treeConfig && treeOpts.showLine) && el) {
2978
+ if (el && !isAllOverflow && (scrollYLoad || scrollXLoad || treeConfig && treeOpts.showLine)) {
2964
2979
  const {
2965
2980
  handleGetRowId
2966
2981
  } = (0, _util.createHandleGetRowId)($xeTable);
2982
+ el.setAttribute('data-calc-row', 'Y');
2967
2983
  tableData.forEach(row => {
2968
2984
  const rowid = handleGetRowId(row);
2969
2985
  const rowRest = fullAllDataRowIdData[rowid];
2970
2986
  if (rowRest) {
2971
- const height = calcCellAutoHeight(rowRest, el);
2972
- rowRest.height = Math.max(defaultRowHeight, scrollXLoad ? Math.max(rowRest.height, height) : height);
2987
+ const height = calcCellAutoHeight($xeTable, rowRest, el);
2988
+ rowRest.height = Math.max(defaultRowHeight, height);
2973
2989
  }
2990
+ el.removeAttribute('data-calc-row');
2974
2991
  });
2975
2992
  reactData.calcCellHeightFlag++;
2976
2993
  }
@@ -4466,8 +4483,8 @@ function updateHeight($xeTable) {
4466
4483
  internalData.customHeight = calcTableHeight($xeTable, 'height');
4467
4484
  internalData.customMinHeight = calcTableHeight($xeTable, 'minHeight');
4468
4485
  internalData.customMaxHeight = calcTableHeight($xeTable, 'maxHeight');
4469
- // 如果启用虚拟滚动,默认高度
4470
- if (reactData.scrollYLoad && !(internalData.customHeight || internalData.customMinHeight)) {
4486
+ // 如果启用虚拟滚动,纠正高度
4487
+ if (reactData.scrollYLoad && !(internalData.customHeight || internalData.customMinHeight || internalData.customMaxHeight)) {
4471
4488
  internalData.customHeight = 300;
4472
4489
  }
4473
4490
  }
@@ -4957,6 +4974,28 @@ const Methods = {
4957
4974
  }
4958
4975
  return $xeTable.$nextTick();
4959
4976
  },
4977
+ initData() {
4978
+ const $xeTable = this;
4979
+ const props = $xeTable;
4980
+ const reactData = $xeTable;
4981
+ const internalData = $xeTable;
4982
+ const {
4983
+ data
4984
+ } = props;
4985
+ loadTableData($xeTable, data || [], true).then(() => {
4986
+ if (data && data.length) {
4987
+ internalData.inited = true;
4988
+ internalData.initStatus = true;
4989
+ handleLoadDefaults($xeTable);
4990
+ }
4991
+ handleInitDefaults($xeTable);
4992
+ updateStyle($xeTable);
4993
+ if (!reactData.isAllOverflow) {
4994
+ calcCellHeight($xeTable);
4995
+ updateRowOffsetTop($xeTable);
4996
+ }
4997
+ });
4998
+ },
4960
4999
  /**
4961
5000
  * 加载表格数据
4962
5001
  * @param {Array} datas 数据
@@ -7155,7 +7194,9 @@ const Methods = {
7155
7194
  return;
7156
7195
  }
7157
7196
  const handleRsHeight = () => {
7158
- const resizeHeight = calcCellAutoHeight(rowRest, el);
7197
+ el.setAttribute('data-calc-row', 'Y');
7198
+ const resizeHeight = calcCellAutoHeight($xeTable, rowRest, el);
7199
+ el.removeAttribute('data-calc-row');
7159
7200
  const resizeParams = Object.assign(Object.assign({}, params), {
7160
7201
  resizeHeight,
7161
7202
  resizeRow: row
@@ -7254,7 +7295,7 @@ const Methods = {
7254
7295
  const rowid = _xeUtils.default.isString(row) || _xeUtils.default.isNumber(row) ? row : handleGetRowId(row);
7255
7296
  const rowRest = fullAllDataRowIdData[rowid];
7256
7297
  if (rowRest) {
7257
- rowRest.resizeHeight = calcCellAutoHeight(rowRest, el);
7298
+ rowRest.resizeHeight = calcCellAutoHeight($xeTable, rowRest, el);
7258
7299
  }
7259
7300
  el.removeAttribute('data-calc-row');
7260
7301
  });
@@ -13076,14 +13117,27 @@ const Methods = {
13076
13117
  if (!(scrollXLoad && overflowX)) {
13077
13118
  xSpaceLeft = 0;
13078
13119
  }
13079
- if (headerTableElem) {
13080
- headerTableElem.style.transform = headerTableElem.getAttribute('xvm') ? `translate(${xSpaceLeft}px, 0px)` : '';
13081
- }
13082
- if (bodyTableElem) {
13083
- bodyTableElem.style.transform = `translate(${xSpaceLeft}px, ${reactData.scrollYTop || 0}px)`;
13084
- }
13085
- if (footerTableElem) {
13086
- footerTableElem.style.transform = footerTableElem.getAttribute('xvm') ? `translate(${xSpaceLeft}px, 0px)` : '';
13120
+ if (getConfig().scrollMarginStyle) {
13121
+ // 已废弃方式
13122
+ if (headerTableElem) {
13123
+ headerTableElem.style.marginLeft = headerTableElem.getAttribute('xvm') ? `${xSpaceLeft}px` : '';
13124
+ }
13125
+ if (bodyTableElem) {
13126
+ bodyTableElem.style.marginLeft = `${xSpaceLeft}px`;
13127
+ }
13128
+ if (footerTableElem) {
13129
+ footerTableElem.style.marginLeft = footerTableElem.getAttribute('xvm') ? `${xSpaceLeft}px` : '';
13130
+ }
13131
+ } else {
13132
+ if (headerTableElem) {
13133
+ headerTableElem.style.transform = headerTableElem.getAttribute('xvm') ? `translate(${xSpaceLeft}px, 0px)` : '';
13134
+ }
13135
+ if (bodyTableElem) {
13136
+ bodyTableElem.style.transform = `translate(${xSpaceLeft}px, ${reactData.scrollYTop || 0}px)`;
13137
+ }
13138
+ if (footerTableElem) {
13139
+ footerTableElem.style.transform = footerTableElem.getAttribute('xvm') ? `translate(${xSpaceLeft}px, 0px)` : '';
13140
+ }
13087
13141
  }
13088
13142
  const containerList = ['main'];
13089
13143
  containerList.forEach(name => {
@@ -13212,14 +13266,26 @@ const Methods = {
13212
13266
  if (!(scrollYLoad && overflowY)) {
13213
13267
  scrollYTop = 0;
13214
13268
  }
13215
- if (leftBodyTableElem) {
13216
- leftBodyTableElem.style.transform = `translate(0px, ${scrollYTop}px)`;
13217
- }
13218
- if (bodyTableElem) {
13219
- bodyTableElem.style.transform = `translate(${reactData.scrollXLeft || 0}px, ${scrollYTop}px)`;
13220
- }
13221
- if (rightbodyTableElem) {
13222
- rightbodyTableElem.style.transform = `translate(0px, ${scrollYTop}px)`;
13269
+ if (getConfig().scrollMarginStyle) {
13270
+ if (leftBodyTableElem) {
13271
+ leftBodyTableElem.style.marginTop = `${scrollYTop}px`;
13272
+ }
13273
+ if (bodyTableElem) {
13274
+ bodyTableElem.style.marginTop = `${scrollYTop}px`;
13275
+ }
13276
+ if (rightbodyTableElem) {
13277
+ rightbodyTableElem.style.marginTop = `${scrollYTop}px`;
13278
+ }
13279
+ } else {
13280
+ if (leftBodyTableElem) {
13281
+ leftBodyTableElem.style.transform = `translate(0px, ${scrollYTop}px)`;
13282
+ }
13283
+ if (bodyTableElem) {
13284
+ bodyTableElem.style.transform = `translate(${reactData.scrollXLeft || 0}px, ${scrollYTop}px)`;
13285
+ }
13286
+ if (rightbodyTableElem) {
13287
+ rightbodyTableElem.style.transform = `translate(0px, ${scrollYTop}px)`;
13288
+ }
13223
13289
  }
13224
13290
  containerList.forEach(name => {
13225
13291
  const layoutList = ['header', 'body', 'footer'];