vxe-table 3.15.34 → 3.15.36

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 (62) hide show
  1. package/es/grid/src/grid.js +50 -17
  2. package/es/style.css +1 -1
  3. package/es/table/module/edit/mixin.js +2 -2
  4. package/es/table/module/validator/mixin.js +11 -2
  5. package/es/table/src/body.js +20 -3
  6. package/es/table/src/cell.js +52 -36
  7. package/es/table/src/column.js +2 -0
  8. package/es/table/src/columnInfo.js +2 -0
  9. package/es/table/src/methods.js +135 -76
  10. package/es/table/src/props.js +3 -1
  11. package/es/table/src/table.js +19 -6
  12. package/es/table/src/util.js +5 -2
  13. package/es/ui/index.js +4 -4
  14. package/es/ui/src/log.js +1 -1
  15. package/lib/grid/src/grid.js +57 -24
  16. package/lib/grid/src/grid.min.js +1 -1
  17. package/lib/index.umd.js +323 -149
  18. package/lib/index.umd.min.js +1 -1
  19. package/lib/style.css +1 -1
  20. package/lib/table/module/edit/mixin.js +2 -2
  21. package/lib/table/module/edit/mixin.min.js +1 -1
  22. package/lib/table/module/validator/mixin.js +14 -2
  23. package/lib/table/module/validator/mixin.min.js +1 -1
  24. package/lib/table/src/body.js +19 -2
  25. package/lib/table/src/body.min.js +1 -1
  26. package/lib/table/src/cell.js +43 -28
  27. package/lib/table/src/cell.min.js +1 -1
  28. package/lib/table/src/column.js +2 -0
  29. package/lib/table/src/column.min.js +1 -1
  30. package/lib/table/src/columnInfo.js +2 -0
  31. package/lib/table/src/columnInfo.min.js +1 -1
  32. package/lib/table/src/methods.js +151 -74
  33. package/lib/table/src/methods.min.js +1 -1
  34. package/lib/table/src/props.js +3 -1
  35. package/lib/table/src/props.min.js +1 -1
  36. package/lib/table/src/table.js +19 -6
  37. package/lib/table/src/table.min.js +1 -1
  38. package/lib/table/src/util.js +7 -4
  39. package/lib/table/src/util.min.js +1 -1
  40. package/lib/ui/index.js +4 -4
  41. package/lib/ui/index.min.js +1 -1
  42. package/lib/ui/src/log.js +1 -1
  43. package/lib/ui/src/log.min.js +1 -1
  44. package/package.json +1 -1
  45. package/packages/grid/src/grid.ts +56 -17
  46. package/packages/table/module/edit/mixin.ts +2 -2
  47. package/packages/table/module/validator/mixin.ts +11 -3
  48. package/packages/table/src/body.ts +20 -3
  49. package/packages/table/src/cell.ts +52 -36
  50. package/packages/table/src/column.ts +2 -0
  51. package/packages/table/src/columnInfo.ts +3 -0
  52. package/packages/table/src/methods.ts +143 -77
  53. package/packages/table/src/props.ts +3 -1
  54. package/packages/table/src/table.ts +20 -6
  55. package/packages/table/src/util.ts +6 -2
  56. package/packages/ui/index.ts +3 -3
  57. /package/es/{iconfont.1749092456241.ttf → iconfont.1749440099787.ttf} +0 -0
  58. /package/es/{iconfont.1749092456241.woff → iconfont.1749440099787.woff} +0 -0
  59. /package/es/{iconfont.1749092456241.woff2 → iconfont.1749440099787.woff2} +0 -0
  60. /package/lib/{iconfont.1749092456241.ttf → iconfont.1749440099787.ttf} +0 -0
  61. /package/lib/{iconfont.1749092456241.woff → iconfont.1749440099787.woff} +0 -0
  62. /package/lib/{iconfont.1749092456241.woff2 → iconfont.1749440099787.woff2} +0 -0
@@ -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("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,getI18n}=_ui.VxeUI,browseObj=_xeUtils.default.browse();function getEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)}function setEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)}function removeCellSelectedClass(e){var e=e.$refs.refElem;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}function syncActivedCell(e){var{editStore:t,tableColumn:l}=e,e=e.computeEditOpts,t=t.actived;let{row:r,column:i}=t;(r||i)&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,i))}function insertTreeRow(n,e,t){let{tableFullTreeData:d,afterFullData:a,fullDataRowIdData:s,fullAllDataRowIdData:u}=n;var l=n.computeTreeOpts;let{rowField:c,parentField:h,mapChildrenField:g}=l,w=l.children||l.childrenField,f=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(n,l),i=t?_xeUtils.default.findTree(d,e=>t===e[c],{children:g}):null;if(i){var i=i.item,o=u[(0,_util.getRowid)(n,i)],o=o?o.level:0;let e=i[w],t=i[g];_xeUtils.default.isArray(e)||(e=i[w]=[]),_xeUtils.default.isArray(t)||(t=i[w]=[]),e[f](l),t[f](l);i={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:e,parent:i,level:o+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}else{t&&(0,_log.warnLog)("vxe.error.unableInsert"),a[f](l),d[f](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:d,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}})}function handleInsertRowAt(a,t,l,s){var e=a;let i=a.treeConfig,{tableFullTreeData:r,afterFullData:o,mergeBodyList:n,tableFullData:d,fullDataRowIdData:u,fullAllDataRowIdData:c,insertRowMaps:h}=a,g=a.computeTreeOpts,{transform:w,rowField:f,mapChildrenField:m}=g,p=g.children||g.childrenField,x=(_xeUtils.default.isArray(t)||(t=[t]),a.defineField(t.map(e=>Object.assign(i&&w?{[m]:[],[p]:[]}:{},e))));if(_xeUtils.default.eqNull(l))i&&w?insertTreeRow(a,x,!1):(x.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,c[t]=l,o.unshift(e),d.unshift(e)}),n.forEach(e=>{var t=e.row;0<t&&(e.row=t+x.length)}));else if(-1===l)i&&w?insertTreeRow(a,x,!0):(x.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,c[t]=l,o.push(e),d.push(e)}),n.forEach(e=>{var{row:t,rowspan:l}=e;t+l>o.length&&(e.rowspan=l+x.length)}));else if(i&&w){let d=_xeUtils.default.findTree(r,e=>l[f]===e[f],{children:m});if(d){let i=d.parent,o=i?i[m]:r;t=c[(0,_util.getRowid)(a,i)];let n=t?t.level:0;if(x.forEach((e,t)=>{var l=(0,_util.getRowid)(a,e);e[g.parentField]&&i&&e[g.parentField]!==i[f]&&(0,_log.errLog)("vxe.error.errProp",[g.parentField+"="+e[g.parentField],g.parentField+"="+i[f]]),i&&(e[g.parentField]=i[f]);let r=d.index+t;s&&(r+=1),o.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:i,level:n+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[l]=t,c[l]=t}),i){t=_xeUtils.default.findTree(r,e=>l[f]===e[f],{children:p});if(t){var v=t.items;let e=t.index;s&&(e+=1),v.splice(e,0,...x)}}}else(0,_log.warnLog)("vxe.error.unableInsert"),insertTreeRow(a,x,!0)}else{if(i)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<o.length&&(r=l):r=a.findRowIndexOf(o,l),-1===(r=s?Math.min(o.length,r+1):r))throw new Error((0,_log.errLog)("vxe.error.unableInsert"));o.splice(r,0,...x);t=a.findRowIndexOf(d,l);-1<t?d.splice(t+(s?1:0),0,...x):d.push(...x),n.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+x.length:t+l>r&&(e.rowspan=l+x.length)})}return x.forEach(e=>{var t=(0,_util.getRowid)(a,e);h[t]=e}),e.insertRowFlag++,a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(i&&w),i&&w||a.updateAfterDataIndex(),a.updateFooter(),a.handleUpdateBodyMerge(),a.checkSelectionStatus(),e.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate())).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))}function handleInsertChildRowAt(e,t,l,r,i){var o=e.treeConfig;let{transform:n,rowField:d,parentField:a}=e.computeTreeOpts;return o&&n?handleInsertRowAt(e,(t=_xeUtils.default.isArray(t)?t:[t]).map(e=>Object.assign({},e,{[a]:l[d]})),r,i):((0,_log.errLog)("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]}))}function handleClearEdit(e,t,l){var r=e.editStore,{actived:r,focused:i}=r,{row:o,column:n}=r,d=e.computeValidOpts;if(o||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,o))return e.$nextTick();syncActivedCell(e),r.args=null,r.row=null,r.column=null,e.updateFooter(),e.dispatchEvent("edit-closed",{row:o,rowIndex:e.getRowIndex(o),$rowIndex:e.getVMRowIndex(o),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return i.row=null,i.column=null,d.autoClear&&("full"!==d.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,i,o,e){let n=l.$xeGrid;var{editConfig:t,mouseConfig:d}=l,{editStore:a,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:a,focused:h}=a;let{row:g,column:w}=r;var f=w.editRender,m=r.cell||l.getCellElement(g,w),p=u.beforeEditMethod||u.activeMethod;if((r.cell=m)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(f)&&!l.isPendingByRow(g)){if(a.row!==g||"cell"===c&&a.column!==w){let t="edit-disabled";if(!p||p(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),a.column&&handleClearEdit(l,i),t="edit-activated",w.renderHeight=m.offsetHeight,a.args=r,a.row=g,a.column=w,"row"===c?s.forEach(e=>getEditColumnModel(g,e)):getEditColumnModel(g,w);let e=u.afterEditMethod;l.$nextTick(()=>{o&&l.handleFocus(r,i),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},i),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},i)}else{t=a.column;d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),t!==w&&(f=t.model,f.update&&(0,_util.setCellValue)(g,t,f.value),l.clearValidate)&&l.clearValidate(g,w),w.renderHeight=m.offsetHeight,a.args=r,a.column=w,e&&setTimeout(()=>{l.handleFocus(r,i)})}h.column=null,h.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let i=t;var o=t.editConfig;let n=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&n&&(0,_utils.isEnableConf)(o)&&(0,_utils.isEnableConf)(n.editRender)?Promise.resolve(r?t.scrollToRow(l,n):null).then(()=>{var e=t.getCellElement(l,n);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:n,columnIndex:t.getColumnIndex(n),cell:e,$table:t},null,r,r),i._lastCallTime=Date.now()),t.$nextTick()}):t.$nextTick()}var _default=exports.default={methods:{_insert(e){return handleInsertRowAt(this,e,null)},_insertAt(e,t){return handleInsertRowAt(this,e,t)},_insertNextAt(e,t){return handleInsertRowAt(this,e,t,!0)},_insertChild(e,t){return handleInsertChildRowAt(this,e,t,null)},_insertChildAt(e,t,l){return handleInsertChildRowAt(this,e,t,l)},_insertChildNextAt(e,t,l){return handleInsertChildRowAt(this,e,t,l,!0)},_remove(e){let l=this;var t=l,r=l,t=t.treeConfig,i=r.editStore;let{tableFullTreeData:o,selectCheckboxMaps:n,afterFullData:d,mergeBodyList:a,tableFullData:s,pendingRowMaps:u,insertRowMaps:c,removeRowMaps:h}=l;var g=l.computeCheckboxOpts,w=l.computeTreeOpts;let{transform:f,mapChildrenField:m}=w,p=w.children||w.childrenField;w=i.actived,i=g.checkField;let x=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=s,e.forEach(e=>{var t;l.isInsertByRow(e)||(t=(0,_util.getRowid)(l,e),h[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);n[e]&&delete n[e]}),r.updateCheckboxFlag++),s===e?(e=x=s.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):t&&f?e.forEach(e=>{let t=(0,_util.getRowid)(this,e);var l=_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(this,e),{children:m}),l=(l&&(l=l.items.splice(l.index,1),x.push(l[0])),_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(this,e),{children:p})),l=(l&&l.items.splice(l.index,1),this.findRowIndexOf(d,e));-1<l&&d.splice(l,1)}):e.forEach(e=>{var t=this.findRowIndexOf(s,e);-1<t&&(t=s.splice(t,1),x.push(t[0]));let r=this.findRowIndexOf(d,e);-1<r&&(a.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),d.splice(r,1))}),w.row&&-1<l.findRowIndexOf(e,w.row)&&l.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(l,e);c[e]&&delete c[e],u[e]&&delete u[e]}),r.removeRowFlag++,r.insertRowFlag++,r.pendingRowFlag++,l.cacheRowMap(!1),l.handleTableData(t&&f),l.updateFooter(),l.handleUpdateBodyMerge(),t&&f||l.updateAfterDataIndex(),l.checkSelectionStatus(),r.scrollYLoad&&l.updateScrollYSpace(),this.$nextTick().then(()=>(this.updateCellAreas(),this.recalculate())).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))},_removeCheckboxRow(){return this.remove(this.getCheckboxRecords()).then(e=>(this.clearCheckboxRow(),e))},_removeRadioRow(){var e=this.getRadioRecord();return this.remove(e||[]).then(e=>(this.clearRadioRow(),e))},_removeCurrentRow(){var e=this.getCurrentRecord();return this.remove(e||[]).then(e=>(this.clearCurrentRow(),e))},_getRecordset(){var e=this.getRemoveRecords(),t=this.getPendingRecords();let l=e.concat(t);var r=this.getUpdateRecords().filter(t=>!l.some(e=>this.eqRow(e,t)));return{insertRecords:this.getInsertRecords(),removeRecords:e,updateRecords:r,pendingRecords:t}},_getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=this,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){var e=this.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},_getUpdateRecords(){let t=this;var{keepSource:e,treeConfig:l}=t,r=t.tableFullData,i=t.computeTreeOpts;return e?(syncActivedCell(t),l?_xeUtils.default.filterTree(r,e=>t.isUpdateByRow(e),i):r.filter(e=>t.isUpdateByRow(e))):[]},handleEdit(e,t){return handleEditActive(this,e,t,!0,!0)},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){getEditColumnModel(e,t)},_setColumnModel(e,t){setEditColumnModel(e,t)},_syncActivedCell(){syncActivedCell(this)},_clearActived(e){return(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return handleClearEdit(this,null,e)},handleClearEdit(e,t){return handleClearEdit(this,e,t)},_getActiveRecord(){return(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},_getEditRecord(){var e=this.editStore,t=this.afterFullData,l=this.$refs.refElem,{args:e,row:r}=e.actived;return e&&-1<this.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},_isActiveByRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:i,column:o,cell:n}=r,d=o.editRender,a=this.computeEditOpts;if((0,_utils.isEnableConf)(d)){var s=renderer.get(d.name);let e=d.autofocus||d.autoFocus,t=d.autoSelect||d.autoselect,l;a.autoFocus&&(!e&&s&&(e=s.tableAutoFocus||s.tableAutofocus||s.autoFocus||s.autofocus),!t&&s&&(t=s.tableAutoSelect||s.autoSelect||s.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=!0===e?n.querySelector("input,textarea"):n.querySelector(e))&&l.focus()),l?t?l.select():browseObj.msie&&((d=l.createTextRange()).collapse(!1),d.select()):a.autoPos&&!o.fixed&&this.scrollToRow(i,o)}},_setActiveRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t){let l=_xeUtils.default.find(this.visibleColumn,e=>(0,_utils.isEnableConf)(e.editRender)),r=!1;return t&&(r=!0)!==t&&(l=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,l,r)},_setActiveCell(e,t){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t){return handleEditCell(this,e,t,!0)},_setSelectCell(e,t){var l=this,r=l.tableData,i=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==i.trigger&&-1<(i=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:i,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,i=l.editStore,o=l.computeMouseOpts;let n=l.computeEditOpts,{actived:d,selected:a}=i,{row:s,column:u}=e,c=r&&o.selected;return!c||a.row===s&&a.column===u||(d.row!==s||"cell"===n.mode&&d.column!==u)&&(handleClearEdit(l,t),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),a.args=e,a.row=s,a.column=u,c&&this.addCellSelectedClass(),l.focus(),t)&&l.dispatchEvent("cell-selected",e,t),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},_clearSelected(){var e=this.editStore,e=e.selected;return e.row=null,e.column=null,removeCellSelectedClass(this),this.$nextTick()},reColTitleSdCls(){var e=this.elemStore["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),e=>(0,_dom.removeClass)(e,"col--title-selected"))},addCellSelectedClass(){var e=this.editStore,e=e.selected,{row:e,column:t}=e;removeCellSelectedClass(this),e&&t&&(e=this.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}}};
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("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,getI18n}=_ui.VxeUI,browseObj=_xeUtils.default.browse();function getEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)}function setEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)}function removeCellSelectedClass(e){var e=e.$refs.refElem;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}function syncActivedCell(e){var{editStore:t,tableColumn:l}=e,e=e.computeEditOpts,t=t.actived;let{row:r,column:i}=t;(r||i)&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,i))}function insertTreeRow(n,e,t){let{tableFullTreeData:d,afterFullData:a,fullDataRowIdData:s,fullAllDataRowIdData:u}=n;var l=n.computeTreeOpts;let{rowField:c,parentField:h,mapChildrenField:g}=l,w=l.children||l.childrenField,f=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(n,l),i=t?_xeUtils.default.findTree(d,e=>t===e[c],{children:g}):null;if(i){var i=i.item,o=u[(0,_util.getRowid)(n,i)],o=o?o.level:0;let e=i[w],t=i[g];_xeUtils.default.isArray(e)||(e=i[w]=[]),_xeUtils.default.isArray(t)||(t=i[w]=[]),e[f](l),t[f](l);i={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:e,parent:i,level:o+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}else{t&&(0,_log.warnLog)("vxe.error.unableInsert"),a[f](l),d[f](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:d,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}})}function handleInsertRowAt(a,t,l,s){var e=a;let i=a.treeConfig,{tableFullTreeData:r,afterFullData:o,mergeBodyList:n,tableFullData:d,fullDataRowIdData:u,fullAllDataRowIdData:c,insertRowMaps:h}=a,g=a.computeTreeOpts,{transform:w,rowField:f,mapChildrenField:m}=g,p=g.children||g.childrenField,x=(_xeUtils.default.isArray(t)||(t=[t]),a.defineField(t.map(e=>Object.assign(i&&w?{[m]:[],[p]:[]}:{},e))));if(_xeUtils.default.eqNull(l))i&&w?insertTreeRow(a,x,!1):(x.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,c[t]=l,o.unshift(e),d.unshift(e)}),n.forEach(e=>{var t=e.row;0<t&&(e.row=t+x.length)}));else if(-1===l)i&&w?insertTreeRow(a,x,!0):(x.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,c[t]=l,o.push(e),d.push(e)}),n.forEach(e=>{var{row:t,rowspan:l}=e;t+l>o.length&&(e.rowspan=l+x.length)}));else if(i&&w){let d=_xeUtils.default.findTree(r,e=>l[f]===e[f],{children:m});if(d){let i=d.parent,o=i?i[m]:r;t=c[(0,_util.getRowid)(a,i)];let n=t?t.level:0;if(x.forEach((e,t)=>{var l=(0,_util.getRowid)(a,e);e[g.parentField]&&i&&e[g.parentField]!==i[f]&&(0,_log.errLog)("vxe.error.errProp",[g.parentField+"="+e[g.parentField],g.parentField+"="+i[f]]),i&&(e[g.parentField]=i[f]);let r=d.index+t;s&&(r+=1),o.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:i,level:n+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[l]=t,c[l]=t}),i){t=_xeUtils.default.findTree(r,e=>l[f]===e[f],{children:p});if(t){var v=t.items;let e=t.index;s&&(e+=1),v.splice(e,0,...x)}}}else(0,_log.warnLog)("vxe.error.unableInsert"),insertTreeRow(a,x,!0)}else{if(i)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<o.length&&(r=l):r=a.findRowIndexOf(o,l),-1===(r=s?Math.min(o.length,r+1):r))throw new Error((0,_log.errLog)("vxe.error.unableInsert"));o.splice(r,0,...x);t=a.findRowIndexOf(d,l);-1<t?d.splice(t+(s?1:0),0,...x):d.push(...x),n.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+x.length:t+l>r&&(e.rowspan=l+x.length)})}return x.forEach(e=>{var t=(0,_util.getRowid)(a,e);h[t]=e}),e.insertRowFlag++,a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(i&&w),i&&w||a.updateAfterDataIndex(),a.updateFooter(),a.handleUpdateBodyMerge(),a.checkSelectionStatus(),e.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate())).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))}function handleInsertChildRowAt(e,t,l,r,i){var o=e.treeConfig;let{transform:n,rowField:d,parentField:a}=e.computeTreeOpts;return o&&n?handleInsertRowAt(e,(t=_xeUtils.default.isArray(t)?t:[t]).map(e=>Object.assign({},e,{[a]:l[d]})),r,i):((0,_log.errLog)("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]}))}function handleClearEdit(e,t,l){var r=e.editStore,{actived:r,focused:i}=r,{row:o,column:n}=r,d=e.computeValidOpts;if(o||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,o))return e.$nextTick();syncActivedCell(e),r.args=null,r.row=null,r.column=null,e.updateFooter(),e.dispatchEvent("edit-closed",{row:o,rowIndex:e.getRowIndex(o),$rowIndex:e.getVMRowIndex(o),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return i.row=null,i.column=null,d.autoClear&&("full"!==d.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,i,o,e){let n=l.$xeGrid;var{editConfig:t,mouseConfig:d}=l,{editStore:a,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:a,focused:h}=a;let{row:g,column:w}=r;var f=w.editRender,m=r.cell||l.getCellElement(g,w),p=u.beforeEditMethod||u.activeMethod;if((r.cell=m)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(f)&&!l.isPendingByRow(g)&&!l.isAggregateRecord(g)){if(a.row!==g||"cell"===c&&a.column!==w){let t="edit-disabled";if(!p||p(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),a.column&&handleClearEdit(l,i),t="edit-activated",w.renderHeight=m.offsetHeight,a.args=r,a.row=g,a.column=w,"row"===c?s.forEach(e=>getEditColumnModel(g,e)):getEditColumnModel(g,w);let e=u.afterEditMethod;l.$nextTick(()=>{o&&l.handleFocus(r,i),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},i),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},i)}else{t=a.column;d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),t!==w&&(f=t.model,f.update&&(0,_util.setCellValue)(g,t,f.value),l.clearValidate)&&l.clearValidate(g,w),w.renderHeight=m.offsetHeight,a.args=r,a.column=w,e&&setTimeout(()=>{l.handleFocus(r,i)})}h.column=null,h.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let i=t;var o=t.editConfig;let n=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&n&&(0,_utils.isEnableConf)(o)&&(0,_utils.isEnableConf)(n.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(r?t.scrollToRow(l,n):null).then(()=>{var e=t.getCellElement(l,n);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:n,columnIndex:t.getColumnIndex(n),cell:e,$table:t},null,r,r),i._lastCallTime=Date.now()),t.$nextTick()}):t.$nextTick()}var _default=exports.default={methods:{_insert(e){return handleInsertRowAt(this,e,null)},_insertAt(e,t){return handleInsertRowAt(this,e,t)},_insertNextAt(e,t){return handleInsertRowAt(this,e,t,!0)},_insertChild(e,t){return handleInsertChildRowAt(this,e,t,null)},_insertChildAt(e,t,l){return handleInsertChildRowAt(this,e,t,l)},_insertChildNextAt(e,t,l){return handleInsertChildRowAt(this,e,t,l,!0)},_remove(e){let l=this;var t=l,r=l,t=t.treeConfig,i=r.editStore;let{tableFullTreeData:o,selectCheckboxMaps:n,afterFullData:d,mergeBodyList:a,tableFullData:s,pendingRowMaps:u,insertRowMaps:c,removeRowMaps:h}=l;var g=l.computeCheckboxOpts,w=l.computeTreeOpts;let{transform:f,mapChildrenField:m}=w,p=w.children||w.childrenField;w=i.actived,i=g.checkField;let x=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=s,e.forEach(e=>{var t;l.isInsertByRow(e)||(t=(0,_util.getRowid)(l,e),h[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);n[e]&&delete n[e]}),r.updateCheckboxFlag++),s===e?(e=x=s.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):t&&f?e.forEach(e=>{let t=(0,_util.getRowid)(this,e);var l=_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(this,e),{children:m}),l=(l&&(l=l.items.splice(l.index,1),x.push(l[0])),_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(this,e),{children:p})),l=(l&&l.items.splice(l.index,1),this.findRowIndexOf(d,e));-1<l&&d.splice(l,1)}):e.forEach(e=>{var t=this.findRowIndexOf(s,e);-1<t&&(t=s.splice(t,1),x.push(t[0]));let r=this.findRowIndexOf(d,e);-1<r&&(a.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),d.splice(r,1))}),w.row&&-1<l.findRowIndexOf(e,w.row)&&l.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(l,e);c[e]&&delete c[e],u[e]&&delete u[e]}),r.removeRowFlag++,r.insertRowFlag++,r.pendingRowFlag++,l.cacheRowMap(!1),l.handleTableData(t&&f),l.updateFooter(),l.handleUpdateBodyMerge(),t&&f||l.updateAfterDataIndex(),l.checkSelectionStatus(),r.scrollYLoad&&l.updateScrollYSpace(),this.$nextTick().then(()=>(this.updateCellAreas(),this.recalculate())).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))},_removeCheckboxRow(){return this.remove(this.getCheckboxRecords()).then(e=>(this.clearCheckboxRow(),e))},_removeRadioRow(){var e=this.getRadioRecord();return this.remove(e||[]).then(e=>(this.clearRadioRow(),e))},_removeCurrentRow(){var e=this.getCurrentRecord();return this.remove(e||[]).then(e=>(this.clearCurrentRow(),e))},_getRecordset(){var e=this.getRemoveRecords(),t=this.getPendingRecords();let l=e.concat(t);var r=this.getUpdateRecords().filter(t=>!l.some(e=>this.eqRow(e,t)));return{insertRecords:this.getInsertRecords(),removeRecords:e,updateRecords:r,pendingRecords:t}},_getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=this,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){var e=this.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},_getUpdateRecords(){let t=this;var{keepSource:e,treeConfig:l}=t,r=t.tableFullData,i=t.computeTreeOpts;return e?(syncActivedCell(t),l?_xeUtils.default.filterTree(r,e=>t.isUpdateByRow(e),i):r.filter(e=>t.isUpdateByRow(e))):[]},handleEdit(e,t){return handleEditActive(this,e,t,!0,!0)},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){getEditColumnModel(e,t)},_setColumnModel(e,t){setEditColumnModel(e,t)},_syncActivedCell(){syncActivedCell(this)},_clearActived(e){return(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return handleClearEdit(this,null,e)},handleClearEdit(e,t){return handleClearEdit(this,e,t)},_getActiveRecord(){return(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},_getEditRecord(){var e=this.editStore,t=this.afterFullData,l=this.$refs.refElem,{args:e,row:r}=e.actived;return e&&-1<this.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},_isActiveByRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:i,column:o,cell:n}=r,d=o.editRender,a=this.computeEditOpts;if((0,_utils.isEnableConf)(d)){var s=renderer.get(d.name);let e=d.autofocus||d.autoFocus,t=d.autoSelect||d.autoselect,l;a.autoFocus&&(!e&&s&&(e=s.tableAutoFocus||s.tableAutofocus||s.autoFocus||s.autofocus),!t&&s&&(t=s.tableAutoSelect||s.autoSelect||s.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=!0===e?n.querySelector("input,textarea"):n.querySelector(e))&&l.focus()),l?t?l.select():browseObj.msie&&((d=l.createTextRange()).collapse(!1),d.select()):a.autoPos&&!o.fixed&&this.scrollToRow(i,o)}},_setActiveRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t){let l=_xeUtils.default.find(this.visibleColumn,e=>(0,_utils.isEnableConf)(e.editRender)),r=!1;return t&&(r=!0)!==t&&(l=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,l,r)},_setActiveCell(e,t){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t){return handleEditCell(this,e,t,!0)},_setSelectCell(e,t){var l=this,r=l.tableData,i=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==i.trigger&&-1<(i=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:i,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,i=l.editStore,o=l.computeMouseOpts;let n=l.computeEditOpts,{actived:d,selected:a}=i,{row:s,column:u}=e,c=r&&o.selected;return!c||a.row===s&&a.column===u||(d.row!==s||"cell"===n.mode&&d.column!==u)&&(handleClearEdit(l,t),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),a.args=e,a.row=s,a.column=u,c&&this.addCellSelectedClass(),l.focus(),t)&&l.dispatchEvent("cell-selected",e,t),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},_clearSelected(){var e=this.editStore,e=e.selected;return e.row=null,e.column=null,removeCellSelectedClass(this),this.$nextTick()},reColTitleSdCls(){var e=this.elemStore["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),e=>(0,_dom.removeClass)(e,"col--title-selected"))},addCellSelectedClass(){var e=this.editStore,e=e.selected,{row:e,column:t}=e;removeCellSelectedClass(this),e&&t&&(e=this.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}}};
@@ -241,19 +241,23 @@ var _default = exports.default = {
241
241
  beginValidate(rows, cols, cb, isFull) {
242
242
  const $xeTable = this;
243
243
  const props = $xeTable;
244
+ const reactData = $xeTable;
244
245
  const internalData = $xeTable;
245
246
  const validRest = {};
246
247
  const {
247
248
  editRules,
248
249
  treeConfig
249
250
  } = props;
251
+ const {
252
+ isRowGroupStatus
253
+ } = reactData;
250
254
  const {
251
255
  afterFullData,
252
256
  pendingRowMaps,
253
257
  removeRowMaps
254
258
  } = internalData;
255
259
  const treeOpts = $xeTable.computeTreeOpts;
256
- const childrenField = treeOpts.children || treeOpts.childrenField;
260
+ const aggregateOpts = $xeTable.computeAggregateOpts;
257
261
  let validList;
258
262
  if (rows === true) {
259
263
  validList = afterFullData;
@@ -284,6 +288,9 @@ var _default = exports.default = {
284
288
  if (pendingRowMaps[rowid]) {
285
289
  return;
286
290
  }
291
+ if ($xeTable.isAggregateRecord(row)) {
292
+ return;
293
+ }
287
294
  if (isFull || !this.validRuleErr) {
288
295
  const colVailds = [];
289
296
  columns.forEach(column => {
@@ -323,7 +330,12 @@ var _default = exports.default = {
323
330
  rowValidErrs.push(Promise.all(colVailds));
324
331
  }
325
332
  };
326
- if (treeConfig) {
333
+ if (isRowGroupStatus) {
334
+ _xeUtils.default.eachTree(validList, handleVaild, {
335
+ children: aggregateOpts.mapChildrenField
336
+ });
337
+ } else if (treeConfig) {
338
+ const childrenField = treeOpts.children || treeOpts.childrenField;
327
339
  _xeUtils.default.eachTree(validList, handleVaild, {
328
340
  children: childrenField
329
341
  });
@@ -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"),_dom=require("../../../ui/src/dom"),_util=require("../../src/util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,validators}=_ui.VxeUI;class Rule{constructor(e){Object.defineProperty(this,"$options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}get content(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}get message(){return this.content}}function validREValue(e,t){return!(e&&!(_xeUtils.default.isRegExp(e)?e:new RegExp(e)).test(t))}function validMaxValue(e,t){return!(!_xeUtils.default.eqNull(e)&&t>_xeUtils.default.toNumber(e))}function validMinValue(e,t){return!(!_xeUtils.default.eqNull(e)&&t<_xeUtils.default.toNumber(e))}function validRuleValue(e,t,l){var{type:e,min:i,max:r,pattern:a}=e,s="array"===e,u="number"===e,e="string"===e,n=""+t;if(!validREValue(a,n))return!1;if(s){if(!_xeUtils.default.isArray(t))return!1;if(l&&!t.length)return!1;if(!validMinValue(i,t.length))return!1;if(!validMaxValue(r,t.length))return!1}else if(u){a=Number(t);if(isNaN(a))return!1;if(!validMinValue(i,a))return!1;if(!validMaxValue(r,a))return!1}else{if(e&&!_xeUtils.default.isString(t))return!1;if(l&&!n)return!1;if(!validMinValue(i,n.length))return!1;if(!validMaxValue(r,n.length))return!1}return!0}function checkRuleStatus(e,t){var l=e.required,i=_xeUtils.default.isArray(t)?!t.length:(0,_utils.eqEmptyValue)(t);if(l){if(i)return!1;if(!validRuleValue(e,t,l))return!1}else if(!i&&!validRuleValue(e,t,l))return!1;return!0}var _default=exports.default={methods:{_fullValidate(e,t){return _xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["fullValidate(rows, callback)","fullValidate(rows)"]),this.beginValidate(e,null,t,!0)},_validate(e,t){return _xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["validate(rows, callback)","validate(rows)"]),this.beginValidate(e,null,t)},_fullValidateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null,!0):this.$nextTick()},_validateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null):this.$nextTick()},handleValidError(t){let l=this.validOpts;return new Promise(e=>{!1===l.autoPos?(this.emitEvent("valid-error",t),e()):this.handleEdit(t,{type:"valid-error",trigger:"call"}).then(()=>{setTimeout(()=>{e(this.showValidTooltip(t))},10)})})},handleErrMsgMode(e){var t,l=this.validOpts;return"single"===l.msgMode?(l={},(t=Object.keys(e)).length&&(l[t=t[0]]=e[t]),l):e},beginValidate(e,l,s,a){let i=this;var r=i,u=i;let n={},{editRules:o,treeConfig:d}=r,{afterFullData:t,pendingRowMaps:h,removeRowMaps:c}=u;r=i.computeTreeOpts,u=r.children||r.childrenField;let g,f=(!0===e?g=t:e&&(_xeUtils.default.isFunction(e)?s=e:g=_xeUtils.default.isArray(e)?e:[e]),g=g||this.getInsertRecords().concat(this.getUpdateRecords()),[]),v=(this.lastCallTime=Date.now(),this.validRuleErr=!1,this.clearValidate(),{});if(o){let t=l&&l.length?l:this.getColumns();r=r=>{var e=(0,_util.getRowid)(i,r);if(!c[e]&&!h[e]&&(a||!this.validRuleErr)){let e=[];t.forEach(l=>{let i=_xeUtils.default.isString(l)?l:l.field;!a&&this.validRuleErr||!_xeUtils.default.has(o,i)||e.push(this.validCellRules("all",r,l).catch(({rule:e,rules:t})=>{t={rule:e,rules:t,rowIndex:this.getRowIndex(r),row:r,columnIndex:this.getColumnIndex(l),column:l,field:i,$table:this};if(n[i]||(n[i]=[]),v[(0,_util.getRowid)(this,r)+":"+l.id]={column:l,row:r,rule:e,content:e.content},n[i].push(t),!a)return this.validRuleErr=!0,Promise.reject(t)}))}),f.push(Promise.all(e))}};return d?_xeUtils.default.eachTree(g,r,{children:u}):g.forEach(r),Promise.all(f).then(()=>{let e=Object.keys(n);return this.validErrorMaps=this.handleErrMsgMode(v),this.$nextTick().then(()=>{if(e.length)return Promise.reject(n[e[0]][0]);s&&s()})}).catch(a=>new Promise((e,t)=>{let l=()=>{this.$nextTick(()=>{s?(s(n),e()):("obsolete"===getConfig().validToReject?t:e)(n)})};var i,r=()=>{a.cell=this.getCellElement(a.row,a.column),(0,_dom.scrollToView)(a.cell),this.handleValidError(a).then(l)};!1===this.validOpts.autoPos?l():(i=a.row,this.scrollToRow(i,a.column).then(r))}))}return this.validErrorMaps={},this.$nextTick().then(()=>{s&&s()})},hasCellRules(t,e,l){var i=this.editRules,l=l.property;return!(!l||!i)&&(i=_xeUtils.default.get(i,l))&&_xeUtils.default.find(i,e=>"all"===t||!e.trigger||t===e.trigger)},validCellRules(e,n,o,t){var l=this.editRules,i=o.property;let d=[],h=[];if(i&&l){let u=_xeUtils.default.get(l,i);if(u){let s=_xeUtils.default.isUndefined(t)?_xeUtils.default.get(n,i):t;u.forEach(t=>{let{trigger:l,validator:i}=t;if("all"===e||!l||e===l)if(i){var r,a={cellValue:s,rule:t,rules:u,row:n,rowIndex:this.getRowIndex(n),column:o,columnIndex:this.getColumnIndex(o),field:o.property,$table:this};let e;_xeUtils.default.isString(i)?(r=validators.get(i))&&(r=r.tableCellValidatorMethod||r.cellValidatorMethod)?e=r(a):(0,_log.errLog)("vxe.error.notValidators",[i]):e=i(a),e&&(_xeUtils.default.isError(e)?(this.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:l,content:e.message,rule:new Rule(t)}))):e.catch&&h.push(e.catch(e=>{this.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:l,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))})))}else checkRuleStatus(t,s)||(this.validRuleErr=!0,d.push(new Rule(t)))})}}return Promise.all(h).then(()=>{var e;if(d.length)return e={rules:d,rule:d[0]},Promise.reject(e)})},_clearValidate(e,t){var{validOpts:l,validErrorMaps:i}=this,r=this.$refs.refValidTooltip,e=_xeUtils.default.isArray(e)?e:e?[e]:[];let a=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e)),s={};if(r&&r.visible&&r.close(),"single"===l.msgMode)this.validErrorMaps={};else{if(e.length&&a.length)s=Object.assign({},i),e.forEach(t=>{a.forEach(e=>{e=(0,_util.getRowid)(this,t)+":"+e.id;s[e]&&delete s[e]})});else if(e.length){let l=e.map(e=>""+(0,_util.getRowid)(this,e));_xeUtils.default.each(i,(e,t)=>{-1<l.indexOf(t.split(":")[0])&&(s[t]=e)})}else if(a.length){let l=a.map(e=>""+e.id);_xeUtils.default.each(i,(e,t)=>{-1<l.indexOf(t.split(":")[1])&&(s[t]=e)})}this.validErrorMaps=s}return this.$nextTick()},triggerValidate(r){let{editConfig:e,editStore:t,editRules:l,editOpts:a,validOpts:i}=this;var s=t.actived;if(l&&"single"===i.msgMode&&(this.validErrorMaps={}),e&&l&&s.row){let{row:t,column:l,cell:i}=s.args;if(this.hasCellRules(r,t,l))return this.validCellRules(r,t,l).then(()=>{"row"===a.mode&&this.clearValidate(t,l)}).catch(({rule:e})=>e.trigger&&r!==e.trigger?Promise.resolve():(e={rule:e,row:t,column:l,cell:i},this.showValidTooltip(e),Promise.reject(e)))}return Promise.resolve()},showValidTooltip(e){var{$refs:t,height:l,validStore:i,validErrorMaps:r,tableData:a,validOpts:s}=this,{rule:u,row:n,column:o,cell:d}=e,t=t.refValidTooltip,h=u.content;return i.visible=!0,"single"===s.msgMode?this.validErrorMaps={[(0,_util.getRowid)(this,n)+":"+o.id]:{column:o,row:n,rule:u,content:h}}:this.validErrorMaps=Object.assign({},r,{[(0,_util.getRowid)(this,n)+":"+o.id]:{column:o,row:n,rule:u,content:h}}),this.emitEvent("valid-error",e,null),t&&("tooltip"===s.message||"default"===s.message&&!l&&a.length<2)?t.open(d,h):this.$nextTick()}}};
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"),_dom=require("../../../ui/src/dom"),_util=require("../../src/util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,validators}=_ui.VxeUI;class Rule{constructor(e){Object.defineProperty(this,"$options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}get content(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}get message(){return this.content}}function validREValue(e,t){return!(e&&!(_xeUtils.default.isRegExp(e)?e:new RegExp(e)).test(t))}function validMaxValue(e,t){return!(!_xeUtils.default.eqNull(e)&&t>_xeUtils.default.toNumber(e))}function validMinValue(e,t){return!(!_xeUtils.default.eqNull(e)&&t<_xeUtils.default.toNumber(e))}function validRuleValue(e,t,l){var{type:e,min:i,max:r,pattern:a}=e,s="array"===e,u="number"===e,e="string"===e,n=""+t;if(!validREValue(a,n))return!1;if(s){if(!_xeUtils.default.isArray(t))return!1;if(l&&!t.length)return!1;if(!validMinValue(i,t.length))return!1;if(!validMaxValue(r,t.length))return!1}else if(u){a=Number(t);if(isNaN(a))return!1;if(!validMinValue(i,a))return!1;if(!validMaxValue(r,a))return!1}else{if(e&&!_xeUtils.default.isString(t))return!1;if(l&&!n)return!1;if(!validMinValue(i,n.length))return!1;if(!validMaxValue(r,n.length))return!1}return!0}function checkRuleStatus(e,t){var l=e.required,i=_xeUtils.default.isArray(t)?!t.length:(0,_utils.eqEmptyValue)(t);if(l){if(i)return!1;if(!validRuleValue(e,t,l))return!1}else if(!i&&!validRuleValue(e,t,l))return!1;return!0}var _default=exports.default={methods:{_fullValidate(e,t){return _xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["fullValidate(rows, callback)","fullValidate(rows)"]),this.beginValidate(e,null,t,!0)},_validate(e,t){return _xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["validate(rows, callback)","validate(rows)"]),this.beginValidate(e,null,t)},_fullValidateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null,!0):this.$nextTick()},_validateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null):this.$nextTick()},handleValidError(t){let l=this.validOpts;return new Promise(e=>{!1===l.autoPos?(this.emitEvent("valid-error",t),e()):this.handleEdit(t,{type:"valid-error",trigger:"call"}).then(()=>{setTimeout(()=>{e(this.showValidTooltip(t))},10)})})},handleErrMsgMode(e){var t,l=this.validOpts;return"single"===l.msgMode?(l={},(t=Object.keys(e)).length&&(l[t=t[0]]=e[t]),l):e},beginValidate(e,l,s,a){let i=this;var r=i,u=i,n=i;let o={},{editRules:d,treeConfig:h}=r;r=u.isRowGroupStatus;let{afterFullData:t,pendingRowMaps:g,removeRowMaps:c}=n;u=i.computeTreeOpts,n=i.computeAggregateOpts;let f,v=(!0===e?f=t:e&&(_xeUtils.default.isFunction(e)?s=e:f=_xeUtils.default.isArray(e)?e:[e]),f=f||this.getInsertRecords().concat(this.getUpdateRecords()),[]),m=(this.lastCallTime=Date.now(),this.validRuleErr=!1,this.clearValidate(),{});if(d){let t=l&&l.length?l:this.getColumns();e=r=>{var e=(0,_util.getRowid)(i,r);if(!c[e]&&!g[e]&&!i.isAggregateRecord(r)&&(a||!this.validRuleErr)){let e=[];t.forEach(l=>{let i=_xeUtils.default.isString(l)?l:l.field;!a&&this.validRuleErr||!_xeUtils.default.has(d,i)||e.push(this.validCellRules("all",r,l).catch(({rule:e,rules:t})=>{t={rule:e,rules:t,rowIndex:this.getRowIndex(r),row:r,columnIndex:this.getColumnIndex(l),column:l,field:i,$table:this};if(o[i]||(o[i]=[]),m[(0,_util.getRowid)(this,r)+":"+l.id]={column:l,row:r,rule:e,content:e.content},o[i].push(t),!a)return this.validRuleErr=!0,Promise.reject(t)}))}),v.push(Promise.all(e))}};return r?_xeUtils.default.eachTree(f,e,{children:n.mapChildrenField}):h?(l=u.children||u.childrenField,_xeUtils.default.eachTree(f,e,{children:l})):f.forEach(e),Promise.all(v).then(()=>{let e=Object.keys(o);return this.validErrorMaps=this.handleErrMsgMode(m),this.$nextTick().then(()=>{if(e.length)return Promise.reject(o[e[0]][0]);s&&s()})}).catch(a=>new Promise((e,t)=>{let l=()=>{this.$nextTick(()=>{s?(s(o),e()):("obsolete"===getConfig().validToReject?t:e)(o)})};var i,r=()=>{a.cell=this.getCellElement(a.row,a.column),(0,_dom.scrollToView)(a.cell),this.handleValidError(a).then(l)};!1===this.validOpts.autoPos?l():(i=a.row,this.scrollToRow(i,a.column).then(r))}))}return this.validErrorMaps={},this.$nextTick().then(()=>{s&&s()})},hasCellRules(t,e,l){var i=this.editRules,l=l.property;return!(!l||!i)&&(i=_xeUtils.default.get(i,l))&&_xeUtils.default.find(i,e=>"all"===t||!e.trigger||t===e.trigger)},validCellRules(e,n,o,t){var l=this.editRules,i=o.property;let d=[],h=[];if(i&&l){let u=_xeUtils.default.get(l,i);if(u){let s=_xeUtils.default.isUndefined(t)?_xeUtils.default.get(n,i):t;u.forEach(t=>{let{trigger:l,validator:i}=t;if("all"===e||!l||e===l)if(i){var r,a={cellValue:s,rule:t,rules:u,row:n,rowIndex:this.getRowIndex(n),column:o,columnIndex:this.getColumnIndex(o),field:o.property,$table:this};let e;_xeUtils.default.isString(i)?(r=validators.get(i))&&(r=r.tableCellValidatorMethod||r.cellValidatorMethod)?e=r(a):(0,_log.errLog)("vxe.error.notValidators",[i]):e=i(a),e&&(_xeUtils.default.isError(e)?(this.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:l,content:e.message,rule:new Rule(t)}))):e.catch&&h.push(e.catch(e=>{this.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:l,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))})))}else checkRuleStatus(t,s)||(this.validRuleErr=!0,d.push(new Rule(t)))})}}return Promise.all(h).then(()=>{var e;if(d.length)return e={rules:d,rule:d[0]},Promise.reject(e)})},_clearValidate(e,t){var{validOpts:l,validErrorMaps:i}=this,r=this.$refs.refValidTooltip,e=_xeUtils.default.isArray(e)?e:e?[e]:[];let a=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e)),s={};if(r&&r.visible&&r.close(),"single"===l.msgMode)this.validErrorMaps={};else{if(e.length&&a.length)s=Object.assign({},i),e.forEach(t=>{a.forEach(e=>{e=(0,_util.getRowid)(this,t)+":"+e.id;s[e]&&delete s[e]})});else if(e.length){let l=e.map(e=>""+(0,_util.getRowid)(this,e));_xeUtils.default.each(i,(e,t)=>{-1<l.indexOf(t.split(":")[0])&&(s[t]=e)})}else if(a.length){let l=a.map(e=>""+e.id);_xeUtils.default.each(i,(e,t)=>{-1<l.indexOf(t.split(":")[1])&&(s[t]=e)})}this.validErrorMaps=s}return this.$nextTick()},triggerValidate(r){let{editConfig:e,editStore:t,editRules:l,editOpts:a,validOpts:i}=this;var s=t.actived;if(l&&"single"===i.msgMode&&(this.validErrorMaps={}),e&&l&&s.row){let{row:t,column:l,cell:i}=s.args;if(this.hasCellRules(r,t,l))return this.validCellRules(r,t,l).then(()=>{"row"===a.mode&&this.clearValidate(t,l)}).catch(({rule:e})=>e.trigger&&r!==e.trigger?Promise.resolve():(e={rule:e,row:t,column:l,cell:i},this.showValidTooltip(e),Promise.reject(e)))}return Promise.resolve()},showValidTooltip(e){var{$refs:t,height:l,validStore:i,validErrorMaps:r,tableData:a,validOpts:s}=this,{rule:u,row:n,column:o,cell:d}=e,t=t.refValidTooltip,h=u.content;return i.visible=!0,"single"===s.msgMode?this.validErrorMaps={[(0,_util.getRowid)(this,n)+":"+o.id]:{column:o,row:n,rule:u,content:h}}:this.validErrorMaps=Object.assign({},r,{[(0,_util.getRowid)(this,n)+":"+o.id]:{column:o,row:n,rule:u,content:h}}),this.emitEvent("valid-error",e,null),t&&("tooltip"===s.message||"default"===s.message&&!l&&a.length<2)?t.open(d,h):this.$nextTick()}}};
@@ -283,6 +283,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
283
283
  $xeTable.triggerCellDblclickEvent(evnt, cellParams);
284
284
  };
285
285
  let isMergeCell = false;
286
+ let mergeRowspan = 1;
286
287
  // 合并行或列
287
288
  if (mergeBodyFlag && mergeBodyList.length) {
288
289
  const spanRest = mergeBodyCellMaps[`${_rowIndex}:${_columnIndex}`];
@@ -296,6 +297,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
296
297
  }
297
298
  if (rowspan > 1) {
298
299
  isMergeCell = true;
300
+ mergeRowspan = rowspan;
299
301
  tdAttrs.rowspan = rowspan;
300
302
  }
301
303
  if (colspan > 1) {
@@ -313,9 +315,12 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
313
315
  return null;
314
316
  }
315
317
  if (rowspan > 1) {
318
+ isMergeCell = true;
319
+ mergeRowspan = rowspan;
316
320
  tdAttrs.rowspan = rowspan;
317
321
  }
318
322
  if (colspan > 1) {
323
+ isMergeCell = true;
319
324
  tdAttrs.colspan = colspan;
320
325
  }
321
326
  }
@@ -330,7 +335,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
330
335
  isDirty = $xeTable.isUpdateByRow(row, column.field);
331
336
  }
332
337
  const isVNAutoHeight = scrollYLoad && !hasEllipsis;
333
- const cellHeight = rowRest.resizeHeight || cellOpts.height || rowOpts.height || rowRest.height || defaultRowHeight;
338
+ let cellHeight = (0, _util.getCellRestHeight)(rowRest, cellOpts, rowOpts, defaultRowHeight);
334
339
  const isLastColumn = $columnIndex === columns.length - 1;
335
340
  const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
336
341
  let isVNPreEmptyStatus = false;
@@ -343,6 +348,15 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
343
348
  }
344
349
  }
345
350
  }
351
+ if (mergeRowspan > 1) {
352
+ const mEndRow = afterFullData[_rowIndex + mergeRowspan - 1];
353
+ if (mEndRow) {
354
+ const meRowRest = fullAllDataRowIdData[(0, _util.getRowid)($xeTable, mEndRow)];
355
+ if (meRowRest) {
356
+ cellHeight += meRowRest.oTop - rowRest.oTop + (0, _util.getCellRestHeight)(meRowRest, cellOpts, rowOpts, defaultRowHeight);
357
+ }
358
+ }
359
+ }
346
360
  const tcStyle = {};
347
361
  if (hasEllipsis && resizeWidthFlag) {
348
362
  let tsColspan = tdAttrs.colspan || 0;
@@ -374,7 +388,10 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
374
388
  }));
375
389
  } else {
376
390
  // 渲染单元格
377
- tdVNs.push(...renderLine(h, $xeTable, rowid, cellParams, cellHeight), h('div', {
391
+ if (treeConfig) {
392
+ tdVNs.push(...renderLine(h, $xeTable, rowid, cellParams, cellHeight));
393
+ }
394
+ tdVNs.push(h('div', {
378
395
  key: 'tc',
379
396
  class: ['vxe-cell', {
380
397
  'c--title': showTitle,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body",isVMScrollProcess=e=>{var l=e.delayHover,{lastScrollTime:e,isDragResize:t}=e;return!!(t||e&&Date.now()<e+l)};function renderLine(e,l,t,r,a){var{row:o,column:i}=r,s=l.afterFullData,d=l.treeConfig,n=l.computeTreeOpts,{slots:i,treeNode:c}=i,p=l.fullAllDataRowIdData;if(i&&i.line)return l.callSlot(i.line,r,e);i=p[t];let u=0,g=null;return i&&(u=i.level,g=i.items[i.treeIndex-1]),d&&c&&(n.showLine||n.line)?[e("div",{key:"tl",class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:`${l.eqRow(s[0],o)?1:(0,_util.calcTreeLine)(r,g)}px`,bottom:`-${Math.floor(a/2)}px`,left:u*n.indent+(u?2-(0,_util.getOffsetSize)(l):0)+16+"px"}})])]:[]}function renderTdColumn(e,l,A,t,r,q,F,a,o,L,i,s,H,U,d){var n=l.$xeGrid,{columnKey:N,resizable:c,showOverflow:p,border:V,height:u,treeConfig:W,cellClassName:X,cellStyle:j,align:G,spanMethod:P,mouseConfig:Y,editConfig:K,editRules:g,tooltipConfig:x,padding:m}=l,{tableData:v,dragRow:J,overflowX:Q,currentColumn:Z,scrollXLoad:ee,scrollYLoad:w,mergeBodyFlag:le,calcCellHeightFlag:h,resizeHeightFlag:f,resizeWidthFlag:te,editStore:re,isAllOverflow:ae,validErrorMaps:oe}=l,{fullAllDataRowIdData:ie,fullColumnIdData:y,mergeBodyCellMaps:se,visibleColumn:de,afterFullData:ne,mergeBodyList:ce,scrollXStore:pe,scrollYStore:ue}=l,ge=l.computeCellOpts,b=l.computeValidOpts,xe=l.computeCheckboxOpts,me=l.computeEditOpts,C=l.computeTooltipOpts,ve=l.computeVirtualXOpts,we=l.computeVirtualYOpts,{isAllColumnDrag:he,isAllRowDrag:fe}=l.resizableOpts,_=l.computeRowOpts,R=l.computeRowDragOpts,ye=l.computeDefaultRowHeight,h=h?ge.height||_.height:0,{disabledMethod:E,isCrossDrag:be,isPeerDrag:Ce}=R,_e=l.computeColumnOpts,Re=l.computeMouseOpts,Ee=l.computeCellOffsetWidth,Se=l.computeAreaOpts.selectCellToRow,{type:De,cellRender:Oe,editRender:$e,align:Ie,showOverflow:Te,className:ke,treeNode:Be,rowResize:Me,padding:S,verticalAlign:D,slots:ze}=s,O=ge.verticalAlign,re=re.actived,ie=ie[t]||{},$=s.id,y=y[$]||{},I=$e||Oe,I=I?renderer.get(I.name):null,Ae=I?I.tableCellClassName||I.cellClassName:null,qe=I?I.tableCellStyle||I.cellStyle:"";let Fe=C.showAll;var Le=y.index,C=y._index,y=(0,_utils.isEnableConf)($e),f=f?ie.resizeHeight:0;let T=r?s.fixed!==r:s.fixed&&Q;Q=_xeUtils.default.eqNull(S)?null===m?ge.padding:m:S,m=_xeUtils.default.eqNull(Te)?p:Te,S="ellipsis"===m;let k="title"===m,B=!0===m||"tooltip"===m;p=ae||k||B||S,Te=_xeUtils.default.isBoolean(s.resizable)?s.resizable:_e.resizable||c,m=!!h,c=0<f;let He;h={},f=Ie||(I?I.tableCellAlign:"")||G,Ie=_xeUtils.default.eqNull(D)?O:D,I=oe[t+":"+$],G=g&&b.showMessage&&("default"===b.message?u||1<v.length:"inline"===b.message),O={colid:$};let M={$table:l,$grid:n,isEdit:!1,seq:A,rowid:t,row:a,rowIndex:o,$rowIndex:L,_rowIndex:i,column:s,columnIndex:Le,$columnIndex:H,_columnIndex:C,fixed:r,type:renderType,isHidden:!!T,level:F,visibleData:ne,data:v,items:d},z=!1,Ue=!1,Ne=((z=_.drag?"row"===R.trigger||s.dragSort&&"cell"===R.trigger:z)&&(Ue=!(!E||!E(M))),(k||B||Fe||x)&&(h.mouseenter=e=>{isVMScrollProcess(l)||(k?(0,_dom.updateCellTitle)(e.currentTarget,s):(B||Fe)&&l.triggerBodyTooltipEvent(e,M),l.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},M),e))}),(B||Fe||x)&&(h.mouseleave=e=>{isVMScrollProcess(l)||((B||Fe)&&l.handleTargetLeaveEvent(e),l.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},M),e))}),(z||xe.range||Y)&&(h.mousedown=e=>{l.triggerCellMousedownEvent(e,M)}),z&&(h.mouseup=l.triggerCellMouseupEvent),h.click=e=>{l.triggerCellClickEvent(e,M)},!(h.dblclick=e=>{l.triggerCellDblclickEvent(e,M)}));if(le&&ce.length){D=se[i+":"+C];if(D){var{rowspan:oe,colspan:g}=D;if(!oe||!g)return null;1<oe&&(Ne=!0,O.rowspan=oe),1<g&&(Ne=!0,O.colspan=g)}}else if(P){var{rowspan:u=1,colspan:n=1}=P(M)||{};if(!u||!n)return null;1<u&&(O.rowspan=u),1<n&&(O.colspan=n)}!(T=T&&Ne&&(1<O.colspan||1<O.rowspan)?!1:T)&&K&&($e||Oe)&&(me.showStatus||me.showUpdateStatus)&&(He=l.isUpdateByRow(a,s.field));A=w&&!p,o=ie.resizeHeight||ge.height||_.height||ie.height||ye,L=H===U.length-1,ne=!s.resizeWidth&&("auto"===s.minWidth||"auto"===s.width);let Ve=!1;Ne||J&&(0,_util.getRowid)(l,J)===t||(w&&!W&&!we.immediate&&(i<ue.visibleStartIndex-ue.preloadSize||i>ue.visibleEndIndex+ue.preloadSize)||ee&&!ve.immediate&&!s.fixed&&(C<pe.visibleStartIndex-pe.preloadSize||C>pe.visibleEndIndex+pe.preloadSize))&&(Ve=!0);v={};if(p&&te){let l=O.colspan||0;if(1<l)for(let e=1;e<l;e++){var We=de[Le+e];We&&(l+=We.renderWidth)}v.width=s.renderWidth-Ee*l+"px"}w||p||m||c?v.height=o+"px":v.minHeight=o+"px";d=[];T&&ae?d.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":k,"c--tooltip":B,"c--ellipsis":S}],style:v})):(d.push(...renderLine(e,l,t,M,o),e("div",{key:"tc",class:["vxe-cell",{"c--title":k,"c--tooltip":B,"c--ellipsis":S}],style:v,attrs:{title:k?l.getCellLabel(a,s):null}},Ve?[]:[e("div",{attrs:{colid:$,rowid:t},class:"vxe-cell--wrapper"},s.renderCell(e,M))])),G&&I&&(R=I.rule,E=ze?ze.valid:null,x=Object.assign(Object.assign(Object.assign({},M),I),{rule:I}),d.push(e("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(b.className,I)],style:R&&R.maxWidth?{width:R.maxWidth+"px"}:void 0},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(b.theme||"normal")},[E?l.callSlot(E,x,e):[e("span",{class:"vxe-cell--valid-error-msg"},I.content)]])]))));let Xe=!1;return Y&&Re.area&&Se&&((C||!0!==Se)&&Se!==s.field||(Xe=!0)),!T&&Te&&he&&d.push(e("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!V||"none"===V}],on:{mousedown:e=>l.handleColResizeMousedownEvent(e,r,M),dblclick:e=>l.handleColResizeDblclickEvent(e,M)}})),(Me||fe)&&_.resizable&&d.push(e("div",{key:"tcr",class:"vxe-cell--row-resizable",on:{mousedown:e=>l.handleRowResizeMousedownEvent(e,M),dblclick:e=>l.handleRowResizeDblclickEvent(e,M)}})),e("td",{class:["vxe-body--column",$,Ie?"col--vertical-"+Ie:"",f?"col--"+f:"",De?"col--"+De:"",{"col--last":L,"col--tree-node":Be,"col--edit":y,"col--ellipsis":p,"col--cs-height":m,"col--rs-height":c,"col--to-row":Xe,"col--auto-height":A,"fixed--width":!ne,"fixed--hidden":T,"is--padding":Q,"is--progress":T&&ae||Ve,"is--drag-cell":z&&(be||Ce||!F),"is--drag-disabled":Ue,"col--dirty":He,"col--active":K&&y&&re.row===a&&(re.column===s||"row"===me.mode),"col--valid-error":!!I,"col--current":Z===s},(0,_utils.getClass)(Ae,M),(0,_utils.getClass)(ke,M),(0,_utils.getClass)(X,M)],key:N||ee||w||_e.useKey||_.useKey||_e.drag?s.id:H,attrs:O,style:Object.assign({},_xeUtils.default.isFunction(qe)?qe(M):qe,_xeUtils.default.isFunction(j)?j(M):j),on:h},q&&T?[]:d)}function renderRows(v,w,h,f,y,b){let C=w.$parent;var e=C,l=C,t=C;let _=C.$xeGrid,{stripe:R,rowKey:E,highlightHoverRow:S,rowClassName:D,rowStyle:O,editConfig:$,treeConfig:I}=e,{hasFixedColumn:T,treeExpandedFlag:k,isColLoading:B,scrollXLoad:M,scrollYLoad:z,isAllOverflow:A,rowExpandedFlag:q,expandColumn:F,selectRadioRow:L,pendingRowFlag:H,isDragColMove:U,rowExpandHeightFlag:Y,isRowGroupStatus:N}=l,{fullAllDataRowIdData:K,fullColumnIdData:J,treeExpandedMaps:Q,pendingRowMaps:Z,rowExpandedMaps:ee}=t,le=C.computeCheckboxOpts,te=C.computeRadioOpts,V=C.computeTreeOpts,W=C.computeEditOpts,X=C.computeRowOpts,j=C.computeColumnOpts,re=C.computeColumnDragOpts,{transform:G,seqMode:ae}=V,oe=V.children||V.childrenField,P=[],ie=(0,_util.createHandleGetRowId)(C).handleGetRowId,se=I||N;return y.forEach((r,a)=>{var o={};let i=ie(r);var s=K[i]||{};let d=a,n=0,c=-1,p=-1;var u=N&&r.isAggregate,g=((X.isHover||S)&&(o.mouseenter=e=>{isVMScrollProcess(C)||C.triggerHoverEvent(e,{row:r,rowIndex:d})},o.mouseleave=()=>{isVMScrollProcess(C)||C.clearHoverRow()}),s&&(n=s.level,c=u||I&&G&&"increasing"===ae?s._index+1:s.seq,d=s.index,p=s._index),{$table:C,seq:c,rowid:i,fixed:h,type:renderType,level:n,row:r,rowIndex:d,$rowIndex:a,_rowIndex:p}),x=F&&!!q&&!!ee[i];let e=!1,l=[],t=!1;$&&(t=C.isInsertByRow(r)),!I||z||G||(l=r[oe],e=!!k&&l&&0<l.length&&!!Q[i]),!X.drag||N||I&&!G||(o.dragstart=C.handleRowDragDragstartEvent,o.dragend=C.handleRowDragDragendEvent,o.dragover=C.handleRowDragDragoverEvent);var u=["vxe-body--row",se?"row--level-"+n:"",{"row--stripe":R&&(p+1)%2==0,"is--new":t,"is--expand-row":x,"is--expand-tree":e,"row--new":t&&(W.showStatus||W.showInsertStatus),"row--radio":te.highlight&&L===r,"row--checked":le.highlight&&C.isCheckedByCheckboxRow(r),"row--pending":!!H&&!!Z[i],"row--group":u},D?_xeUtils.default.isFunction(D)?D(g):D:""],m=b.map((e,l)=>renderTdColumn(v,C,c,i,h,f,n,r,d,a,p,e,l,b,y));if(P.push(!B&&j.drag&&re.animation?v("transition-group",{props:{tag:"tr",name:"vxe-header--col-list"+(U?"":"-disabled")},class:u,attrs:{rowid:i},style:O?_xeUtils.default.isFunction(O)?O(g):O:void 0,key:E||M||z||X.useKey||X.drag||j.drag||N||I?i:a,nativeOn:o},m):v("tr",{class:u,attrs:{rowid:i},style:O?_xeUtils.default.isFunction(O)?O(g):O:void 0,key:E||M||z||X.useKey||X.drag||j.drag||N||I?i:a,on:o},m)),x){var{height:u,padding:g,mode:o}=C.computeExpandOpts;if("fixed"===o)P.push(v("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+i,attrs:{rowid:i}},[v("td",{class:"vxe-body--row-expanded-place-column",attrs:{colspan:b.length},style:{height:`${Y?s.expandHeight||u:0}px`}})]));else{m={},x=(u&&(m.height=u+"px"),I&&(m.paddingLeft=n*V.indent+30+"px"),F||{}).showOverflow,o=F.id,s=J[o]||{},o=_xeUtils.default.isUndefined(x)||_xeUtils.default.isNull(x)?A:x;let e=-1,l=-1,t=-1;s&&(e=s.index,l=s.$index,t=s._index);x={$grid:_,$table:C,seq:c,column:F,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:r,rowid:i,rowIndex:d,$rowIndex:a,_rowIndex:p,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};P.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":g}],key:"expand_"+i},[v("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!T,"col--ellipsis":o}],attrs:{colspan:b.length}},[v("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":u}],style:m},[F.renderData(v,x)])])]))}}e&&P.push(...renderRows(v,w,h,f,l,b))}),P}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},mounted(){var e=this,l=e.fixedType,t=e.$parent.elemStore,l=`${l||"main"}-body-`;t[l+"wrapper"]=e.$refs.refElem,t[l+"scroll"]=e.$refs.refBodyScroll,t[l+"table"]=e.$refs.refBodyTable,t[l+"colgroup"]=e.$refs.refBodyColgroup,t[l+"list"]=e.$refs.refBodyTBody,t[l+"xSpace"]=e.$refs.refBodyXSpace,t[l+"ySpace"]=e.$refs.refBodyYSpace,t[l+"emptyBlock"]=e.$refs.refBodyEmptyBlock},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null},render(t){let l=this.$parent;var e=l,r=l,a=l,o=l.$xeGrid,{xID:i,$scopedSlots:s}=l;let{fixedColumn:d,fixedType:n,tableColumn:c}=this;var{spanMethod:p,footerSpanMethod:u,mouseConfig:g}=e,{isGroup:r,tableData:x,isRowLoading:m,isColLoading:v,overflowX:w,scrollXLoad:h,scrollYLoad:f,isAllOverflow:y,isDragRowMove:b,expandColumn:C,dragRow:_,dragCol:R}=r,{visibleColumn:a,fullAllDataRowIdData:E,fullColumnIdData:S}=a,D=l.computeRowOpts,O=l.computeEmptyOpts,$=l.computeMouseOpts,I=l.computeRowDragOpts,T=l.computeExpandOpts;let k=x,B=c,M=!1;!(h||f||y)||C&&"fixed"!==T.mode||p||u||(M=!0),v||!n&&w||(B=a),n&&M&&(B=d||[]),f&&_&&2<k.length&&(x=E[(0,_util.getRowid)(l,_)])&&(y=x._index,C=k[0],T=k[k.length-1],p=E[(0,_util.getRowid)(l,C)],u=E[(0,_util.getRowid)(l,T)],p)&&u&&(w=p._index,a=u._index,y<w?k=[_].concat(k):a<y&&(k=k.concat([_]))),n||r||h&&R&&2<B.length&&(f=S[R.id])&&(x=f._index,C=B[0],E=B[B.length-1],T=S[C.id],p=S[E.id],T)&&p&&(u=T._index,w=p._index,x<u?B=[R].concat(B):w<x&&(B=B.concat([R])));let z;return z=s.empty?s.empty.call(this,{$table:l,$grid:o}):(y=(a=O.name?renderer.get(O.name):null)?a.renderTableEmpty||a.renderTableEmptyView||a.renderEmpty:null)?(0,_vn.getSlotVNs)(y.call(this,t,O,{$table:l})):e.emptyText||getI18n("vxe.table.emptyText"),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",n?`fixed-${n}--wrapper`:"body--wrapper"],attrs:{xid:i}},[t("div",{ref:"refBodyScroll",class:"vxe-table--body-inner-wrapper",on:{scroll(e){l.triggerBodyScrollEvent(e,n)}}},[n?renderEmptyElement(l):t("div",{ref:"refBodyXSpace",class:"vxe-body--x-space"}),t("div",{ref:"refBodyYSpace",class:"vxe-body--y-space"}),t("table",{ref:"refBodyTable",class:"vxe-table--body",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:M?"1":null}},[t("colgroup",{ref:"refBodyColgroup"},B.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),!m&&!v&&D.drag&&I.animation?t("transition-group",{ref:"refBodyTBody",props:{tag:"tbody",name:"vxe-body--row-list"+(b?"":"-disabled")}},renderRows(t,this,n,M,k,B)):t("tbody",{ref:"refBodyTBody"},renderRows(t,this,n,M,k,B))]),t("div",{class:"vxe-table--checkbox-range"}),g&&$.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},$.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){l.triggerCellAreaExtendMousedownEvent&&l.triggerCellAreaExtendMousedownEvent(e,{$table:l,fixed:n,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"}),t("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(l),n?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},z)])])])}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body",isVMScrollProcess=e=>{var l=e.delayHover,{lastScrollTime:e,isDragResize:t}=e;return!!(t||e&&Date.now()<e+l)};function renderLine(e,l,t,r,o){var{row:a,column:i}=r,s=l.afterFullData,d=l.treeConfig,n=l.computeTreeOpts,{slots:i,treeNode:c}=i,p=l.fullAllDataRowIdData;if(i&&i.line)return l.callSlot(i.line,r,e);i=p[t];let u=0,g=null;return i&&(u=i.level,g=i.items[i.treeIndex-1]),d&&c&&(n.showLine||n.line)?[e("div",{key:"tl",class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:`${l.eqRow(s[0],a)?1:(0,_util.calcTreeLine)(r,g)}px`,bottom:`-${Math.floor(o/2)}px`,left:u*n.indent+(u?2-(0,_util.getOffsetSize)(l):0)+16+"px"}})])]:[]}function renderTdColumn(e,l,A,t,r,q,F,o,H,L,a,i,U,N,s){var d=l.$xeGrid,{columnKey:V,resizable:n,showOverflow:c,border:W,height:p,treeConfig:X,cellClassName:j,cellStyle:G,align:P,spanMethod:Y,mouseConfig:K,editConfig:J,editRules:u,tooltipConfig:g,padding:x}=l,{tableData:Q,dragRow:Z,overflowX:ee,currentColumn:le,scrollXLoad:te,scrollYLoad:re,mergeBodyFlag:oe,calcCellHeightFlag:m,resizeHeightFlag:v,resizeWidthFlag:ae,editStore:ie,isAllOverflow:se,validErrorMaps:w}=l,{fullAllDataRowIdData:de,fullColumnIdData:f,mergeBodyCellMaps:ne,visibleColumn:ce,afterFullData:pe,mergeBodyList:ue,scrollXStore:ge,scrollYStore:xe}=l,h=l.computeCellOpts,y=l.computeValidOpts,me=l.computeCheckboxOpts,ve=l.computeEditOpts,b=l.computeTooltipOpts,we=l.computeVirtualXOpts,fe=l.computeVirtualYOpts,{isAllColumnDrag:he,isAllRowDrag:ye}=l.resizableOpts,C=l.computeRowOpts,_=l.computeRowDragOpts,be=l.computeDefaultRowHeight,m=m?h.height||C.height:0,{disabledMethod:R,isCrossDrag:Ce,isPeerDrag:_e}=_,Re=l.computeColumnOpts,Ee=l.computeMouseOpts,Se=l.computeCellOffsetWidth,De=l.computeAreaOpts.selectCellToRow,{type:Oe,cellRender:$e,editRender:Ie,align:Te,showOverflow:ke,className:Be,treeNode:Me,rowResize:ze,padding:E,verticalAlign:S,slots:Ae}=i,D=h.verticalAlign,ie=ie.actived,qe=de[t]||{},O=i.id,f=f[O]||{},$=Ie||$e,$=$?renderer.get($.name):null,Fe=$?$.tableCellClassName||$.cellClassName:null,He=$?$.tableCellStyle||$.cellStyle:"";let Le=b.showAll;var Ue=f.index,b=f._index,f=(0,_utils.isEnableConf)(Ie),v=v?qe.resizeHeight:0;let I=r?i.fixed!==r:i.fixed&&ee;ee=_xeUtils.default.eqNull(E)?null===x?h.padding:x:E,x=_xeUtils.default.eqNull(ke)?c:ke,E="ellipsis"===x;let T="title"===x,k=!0===x||"tooltip"===x;c=se||T||k||E,ke=_xeUtils.default.isBoolean(i.resizable)?i.resizable:Re.resizable||n,x=!!m,n=0<v;let Ne;m={},v=Te||($?$.tableCellAlign:"")||P,Te=_xeUtils.default.eqNull(S)?D:S,$=w[t+":"+O],P=u&&y.showMessage&&("default"===y.message?p||1<Q.length:"inline"===y.message),D={colid:O};let B={$table:l,$grid:d,isEdit:!1,seq:A,rowid:t,row:o,rowIndex:H,$rowIndex:L,_rowIndex:a,column:i,columnIndex:Ue,$columnIndex:U,_columnIndex:b,fixed:r,type:renderType,isHidden:!!I,level:F,visibleData:pe,data:Q,items:s},M=!1,Ve=!1,z=((M=C.drag?"row"===_.trigger||i.dragSort&&"cell"===_.trigger:M)&&(Ve=!(!R||!R(B))),(T||k||Le||g)&&(m.mouseenter=e=>{isVMScrollProcess(l)||(T?(0,_dom.updateCellTitle)(e.currentTarget,i):(k||Le)&&l.triggerBodyTooltipEvent(e,B),l.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},B),e))}),(k||Le||g)&&(m.mouseleave=e=>{isVMScrollProcess(l)||((k||Le)&&l.handleTargetLeaveEvent(e),l.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},B),e))}),(M||me.range||K)&&(m.mousedown=e=>{l.triggerCellMousedownEvent(e,B)}),M&&(m.mouseup=l.triggerCellMouseupEvent),m.click=e=>{l.triggerCellClickEvent(e,B)},!(m.dblclick=e=>{l.triggerCellDblclickEvent(e,B)})),We=1;if(oe&&ue.length){S=ne[a+":"+b];if(S){var{rowspan:w,colspan:u}=S;if(!w||!u)return null;1<w&&(z=!0,We=w,D.rowspan=w),1<u&&(z=!0,D.colspan=u)}}else if(Y){var{rowspan:p=1,colspan:d=1}=Y(B)||{};if(!p||!d)return null;1<p&&(z=!0,We=p,D.rowspan=p),1<d&&(z=!0,D.colspan=d)}!(I=I&&z&&(1<D.colspan||1<D.rowspan)?!1:I)&&J&&(Ie||$e)&&(ve.showStatus||ve.showUpdateStatus)&&(Ne=l.isUpdateByRow(o,i.field));A=re&&!c;let Xe=(0,_util.getCellRestHeight)(qe,h,C,be);H=U===N.length-1,L=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let je=!1;z||Z&&(0,_util.getRowid)(l,Z)===t||(re&&!X&&!fe.immediate&&(a<xe.visibleStartIndex-xe.preloadSize||a>xe.visibleEndIndex+xe.preloadSize)||te&&!we.immediate&&!i.fixed&&(b<ge.visibleStartIndex-ge.preloadSize||b>ge.visibleEndIndex+ge.preloadSize))&&(je=!0),1<We&&(Q=pe[a+We-1])&&(s=de[(0,_util.getRowid)(l,Q)])&&(Xe+=s.oTop-qe.oTop+(0,_util.getCellRestHeight)(s,h,C,be));_={};if(c&&ae){let l=D.colspan||0;if(1<l)for(let e=1;e<l;e++){var Ge=ce[Ue+e];Ge&&(l+=Ge.renderWidth)}_.width=i.renderWidth-Se*l+"px"}re||c||x||n?_.height=Xe+"px":_.minHeight=Xe+"px";R=[];I&&se?R.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":E}],style:_})):(X&&R.push(...renderLine(e,l,t,B,Xe)),R.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":E}],style:_,attrs:{title:T?l.getCellLabel(o,i):null}},je?[]:[e("div",{attrs:{colid:O,rowid:t},class:"vxe-cell--wrapper"},i.renderCell(e,B))])),P&&$&&(g=$.rule,me=Ae?Ae.valid:null,oe=Object.assign(Object.assign(Object.assign({},B),$),{rule:$}),R.push(e("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(y.className,$)],style:g&&g.maxWidth?{width:g.maxWidth+"px"}:void 0},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(y.theme||"normal")},[me?l.callSlot(me,oe,e):[e("span",{class:"vxe-cell--valid-error-msg"},$.content)]])]))));let Pe=!1;return K&&Ee.area&&De&&((b||!0!==De)&&De!==i.field||(Pe=!0)),!I&&ke&&he&&R.push(e("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],on:{mousedown:e=>l.handleColResizeMousedownEvent(e,r,B),dblclick:e=>l.handleColResizeDblclickEvent(e,B)}})),(ze||ye)&&C.resizable&&R.push(e("div",{key:"tcr",class:"vxe-cell--row-resizable",on:{mousedown:e=>l.handleRowResizeMousedownEvent(e,B),dblclick:e=>l.handleRowResizeDblclickEvent(e,B)}})),e("td",{class:["vxe-body--column",O,Te?"col--vertical-"+Te:"",v?"col--"+v:"",Oe?"col--"+Oe:"",{"col--last":H,"col--tree-node":Me,"col--edit":f,"col--ellipsis":c,"col--cs-height":x,"col--rs-height":n,"col--to-row":Pe,"col--auto-height":A,"fixed--width":!L,"fixed--hidden":I,"is--padding":ee,"is--progress":I&&se||je,"is--drag-cell":M&&(Ce||_e||!F),"is--drag-disabled":Ve,"col--dirty":Ne,"col--active":J&&f&&ie.row===o&&(ie.column===i||"row"===ve.mode),"col--valid-error":!!$,"col--current":le===i},(0,_utils.getClass)(Fe,B),(0,_utils.getClass)(Be,B),(0,_utils.getClass)(j,B)],key:V||te||re||Re.useKey||C.useKey||Re.drag?i.id:U,attrs:D,style:Object.assign({},_xeUtils.default.isFunction(He)?He(B):He,_xeUtils.default.isFunction(G)?G(B):G),on:m},q&&I?[]:R)}function renderRows(v,w,f,h,y,b){let C=w.$parent;var e=C,l=C,t=C;let _=C.$xeGrid,{stripe:R,rowKey:E,highlightHoverRow:S,rowClassName:D,rowStyle:O,editConfig:$,treeConfig:I}=e,{hasFixedColumn:T,treeExpandedFlag:k,isColLoading:B,scrollXLoad:M,scrollYLoad:z,isAllOverflow:A,rowExpandedFlag:q,expandColumn:F,selectRadioRow:H,pendingRowFlag:L,isDragColMove:U,rowExpandHeightFlag:Y,isRowGroupStatus:N}=l,{fullAllDataRowIdData:K,fullColumnIdData:J,treeExpandedMaps:Q,pendingRowMaps:Z,rowExpandedMaps:ee}=t,le=C.computeCheckboxOpts,te=C.computeRadioOpts,V=C.computeTreeOpts,W=C.computeEditOpts,X=C.computeRowOpts,j=C.computeColumnOpts,re=C.computeColumnDragOpts,{transform:G,seqMode:oe}=V,ae=V.children||V.childrenField,P=[],ie=(0,_util.createHandleGetRowId)(C).handleGetRowId,se=I||N;return y.forEach((r,o)=>{var a={};let i=ie(r);var s=K[i]||{};let d=o,n=0,c=-1,p=-1;var u=N&&r.isAggregate,g=((X.isHover||S)&&(a.mouseenter=e=>{isVMScrollProcess(C)||C.triggerHoverEvent(e,{row:r,rowIndex:d})},a.mouseleave=()=>{isVMScrollProcess(C)||C.clearHoverRow()}),s&&(n=s.level,c=u||I&&G&&"increasing"===oe?s._index+1:s.seq,d=s.index,p=s._index),{$table:C,seq:c,rowid:i,fixed:f,type:renderType,level:n,row:r,rowIndex:d,$rowIndex:o,_rowIndex:p}),x=F&&!!q&&!!ee[i];let e=!1,l=[],t=!1;$&&(t=C.isInsertByRow(r)),!I||z||G||(l=r[ae],e=!!k&&l&&0<l.length&&!!Q[i]),!X.drag||N||I&&!G||(a.dragstart=C.handleRowDragDragstartEvent,a.dragend=C.handleRowDragDragendEvent,a.dragover=C.handleRowDragDragoverEvent);var u=["vxe-body--row",se?"row--level-"+n:"",{"row--stripe":R&&(p+1)%2==0,"is--new":t,"is--expand-row":x,"is--expand-tree":e,"row--new":t&&(W.showStatus||W.showInsertStatus),"row--radio":te.highlight&&H===r,"row--checked":le.highlight&&C.isCheckedByCheckboxRow(r),"row--pending":!!L&&!!Z[i],"row--group":u},D?_xeUtils.default.isFunction(D)?D(g):D:""],m=b.map((e,l)=>renderTdColumn(v,C,c,i,f,h,n,r,d,o,p,e,l,b,y));if(P.push(!B&&j.drag&&re.animation?v("transition-group",{props:{tag:"tr",name:"vxe-header--col-list"+(U?"":"-disabled")},class:u,attrs:{rowid:i},style:O?_xeUtils.default.isFunction(O)?O(g):O:void 0,key:E||M||z||X.useKey||X.drag||j.drag||N||I?i:o,nativeOn:a},m):v("tr",{class:u,attrs:{rowid:i},style:O?_xeUtils.default.isFunction(O)?O(g):O:void 0,key:E||M||z||X.useKey||X.drag||j.drag||N||I?i:o,on:a},m)),x){var{height:u,padding:g,mode:a}=C.computeExpandOpts;if("fixed"===a)P.push(v("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+i,attrs:{rowid:i}},[v("td",{class:"vxe-body--row-expanded-place-column",attrs:{colspan:b.length},style:{height:`${Y?s.expandHeight||u:0}px`}})]));else{m={},x=(u&&(m.height=u+"px"),I&&(m.paddingLeft=n*V.indent+30+"px"),F||{}).showOverflow,a=F.id,s=J[a]||{},a=_xeUtils.default.isUndefined(x)||_xeUtils.default.isNull(x)?A:x;let e=-1,l=-1,t=-1;s&&(e=s.index,l=s.$index,t=s._index);x={$grid:_,$table:C,seq:c,column:F,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:f,type:renderType,level:n,row:r,rowid:i,rowIndex:d,$rowIndex:o,_rowIndex:p,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};P.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":g}],key:"expand_"+i},[v("td",{class:["vxe-body--expanded-column",{"fixed--hidden":f&&!T,"col--ellipsis":a}],attrs:{colspan:b.length}},[v("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":u}],style:m},[F.renderData(v,x)])])]))}}e&&P.push(...renderRows(v,w,f,h,l,b))}),P}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},mounted(){var e=this,l=e.fixedType,t=e.$parent.elemStore,l=`${l||"main"}-body-`;t[l+"wrapper"]=e.$refs.refElem,t[l+"scroll"]=e.$refs.refBodyScroll,t[l+"table"]=e.$refs.refBodyTable,t[l+"colgroup"]=e.$refs.refBodyColgroup,t[l+"list"]=e.$refs.refBodyTBody,t[l+"xSpace"]=e.$refs.refBodyXSpace,t[l+"ySpace"]=e.$refs.refBodyYSpace,t[l+"emptyBlock"]=e.$refs.refBodyEmptyBlock},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null},render(t){let l=this.$parent;var e=l,r=l,o=l,a=l.$xeGrid,{xID:i,$scopedSlots:s}=l;let{fixedColumn:d,fixedType:n,tableColumn:c}=this;var{spanMethod:p,footerSpanMethod:u,mouseConfig:g}=e,{isGroup:r,tableData:x,isRowLoading:m,isColLoading:v,overflowX:w,scrollXLoad:f,scrollYLoad:h,isAllOverflow:y,isDragRowMove:b,expandColumn:C,dragRow:_,dragCol:R}=r,{visibleColumn:o,fullAllDataRowIdData:E,fullColumnIdData:S}=o,D=l.computeRowOpts,O=l.computeEmptyOpts,$=l.computeMouseOpts,I=l.computeRowDragOpts,T=l.computeExpandOpts;let k=x,B=c,M=!1;!(f||h||y)||C&&"fixed"!==T.mode||p||u||(M=!0),v||!n&&w||(B=o),n&&M&&(B=d||[]),h&&_&&2<k.length&&(x=E[(0,_util.getRowid)(l,_)])&&(y=x._index,C=k[0],T=k[k.length-1],p=E[(0,_util.getRowid)(l,C)],u=E[(0,_util.getRowid)(l,T)],p)&&u&&(w=p._index,o=u._index,y<w?k=[_].concat(k):o<y&&(k=k.concat([_]))),n||r||f&&R&&2<B.length&&(h=S[R.id])&&(x=h._index,C=B[0],E=B[B.length-1],T=S[C.id],p=S[E.id],T)&&p&&(u=T._index,w=p._index,x<u?B=[R].concat(B):w<x&&(B=B.concat([R])));let z;return z=s.empty?s.empty.call(this,{$table:l,$grid:a}):(y=(o=O.name?renderer.get(O.name):null)?o.renderTableEmpty||o.renderTableEmptyView||o.renderEmpty:null)?(0,_vn.getSlotVNs)(y.call(this,t,O,{$table:l})):e.emptyText||getI18n("vxe.table.emptyText"),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",n?`fixed-${n}--wrapper`:"body--wrapper"],attrs:{xid:i}},[t("div",{ref:"refBodyScroll",class:"vxe-table--body-inner-wrapper",on:{scroll(e){l.triggerBodyScrollEvent(e,n)}}},[n?renderEmptyElement(l):t("div",{ref:"refBodyXSpace",class:"vxe-body--x-space"}),t("div",{ref:"refBodyYSpace",class:"vxe-body--y-space"}),t("table",{ref:"refBodyTable",class:"vxe-table--body",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:M?"1":null}},[t("colgroup",{ref:"refBodyColgroup"},B.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),!m&&!v&&D.drag&&I.animation?t("transition-group",{ref:"refBodyTBody",props:{tag:"tbody",name:"vxe-body--row-list"+(b?"":"-disabled")}},renderRows(t,this,n,M,k,B)):t("tbody",{ref:"refBodyTBody"},renderRows(t,this,n,M,k,B))]),t("div",{class:"vxe-table--checkbox-range"}),g&&$.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},$.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){l.triggerCellAreaExtendMousedownEvent&&l.triggerCellAreaExtendMousedownEvent(e,{$table:l,fixed:n,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"}),t("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(l),n?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},z)])])])}};
@@ -317,13 +317,13 @@ function renderCellHandle(h, params) {
317
317
  rowGroupNode,
318
318
  editRender
319
319
  } = column;
320
- const rowGroupOpts = $table.computeRowGroupOpts;
320
+ const aggregateOpts = $table.computeAggregateOpts;
321
321
  const {
322
322
  mode
323
- } = rowGroupOpts;
323
+ } = aggregateOpts;
324
324
  const checkboxOpts = $table.computeCheckboxOpts;
325
325
  const editOpts = $table.computeEditOpts;
326
- const isDeepCell = treeNode || isRowGroupStatus && row.isAggregate && (mode === 'column' ? column.field === row.groupField : rowGroupNode);
326
+ const isDeepCell = treeNode || isRowGroupStatus && (mode === 'column' ? column.field === row.groupField : rowGroupNode);
327
327
  switch (type) {
328
328
  case 'seq':
329
329
  return isDeepCell ? Cell.renderDeepIndexCell(h, params) : Cell.renderSeqCell(h, params);
@@ -447,7 +447,8 @@ const Cell = exports.Cell = {
447
447
  slots,
448
448
  editRender,
449
449
  cellRender,
450
- rowGroupNode
450
+ rowGroupNode,
451
+ aggFunc
451
452
  } = column;
452
453
  const renderOpts = editRender || cellRender;
453
454
  if (slots && slots.default) {
@@ -465,48 +466,58 @@ const Cell = exports.Cell = {
465
466
  }
466
467
  }
467
468
  let cellValue = '';
468
- if (isRowGroupStatus && row.isAggregate) {
469
+ if (isRowGroupStatus && field && row.isAggregate) {
470
+ const aggRow = row;
469
471
  const {
470
472
  fullColumnFieldData
471
473
  } = tableInternalData;
472
- const rowGroupOpts = $table.computeRowGroupOpts;
474
+ const aggregateOpts = $table.computeAggregateOpts;
473
475
  const {
474
476
  mode,
475
477
  showTotal,
476
478
  totalMethod,
477
479
  countFields,
478
- countMethod,
479
480
  contentMethod,
480
481
  mapChildrenField
481
- } = rowGroupOpts;
482
- const groupField = row.groupField;
483
- const groupContent = row.groupContent;
484
- const childList = mapChildrenField ? row[mapChildrenField] || [] : [];
485
- const totalValue = row.childCount;
482
+ } = aggregateOpts;
483
+ const aggMethod = aggregateOpts.aggregateMethod || aggregateOpts.countMethod;
484
+ const groupField = aggRow.groupField;
485
+ const groupContent = aggRow.groupContent;
486
+ const childList = mapChildrenField ? aggRow[mapChildrenField] || [] : [];
487
+ const childCount = aggRow.childCount;
486
488
  const colRest = fullColumnFieldData[groupField] || {};
487
- const params = {
489
+ const ctParams = {
488
490
  $table,
489
491
  groupField,
490
492
  groupColumn: colRest ? colRest.column : null,
491
493
  column,
492
494
  groupValue: groupContent,
493
495
  children: childList,
494
- totalValue: totalValue
496
+ childCount,
497
+ aggValue: null,
498
+ /**
499
+ * 已废弃
500
+ * @deprecated
501
+ */
502
+ totalValue: childCount
495
503
  };
496
- if (mode === 'column' ? column.field === row.groupField : rowGroupNode) {
504
+ if (mode === 'column' ? field === aggRow.groupField : rowGroupNode) {
497
505
  cellValue = groupContent;
498
506
  if (contentMethod) {
499
- cellValue = `${contentMethod(params)}`;
507
+ cellValue = `${contentMethod(ctParams)}`;
500
508
  }
501
509
  if (showTotal) {
502
- cellValue = getI18n('vxe.table.rowGroupContentTotal', [cellValue, totalMethod ? totalMethod(params) : totalValue, totalValue]);
510
+ cellValue = getI18n('vxe.table.rowGroupContentTotal', [cellValue, totalMethod ? totalMethod(ctParams) : childCount, childCount]);
503
511
  }
504
- } else if (countFields && countFields.includes(field)) {
505
- if (countMethod) {
506
- cellValue = `${countMethod(params)}`;
512
+ } else if ($table.getPivotTableAggregateCellAggValue) {
513
+ cellValue = $table.getPivotTableAggregateCellAggValue(params);
514
+ } else if (aggFunc === true || countFields && countFields.includes(field)) {
515
+ if (aggMethod) {
516
+ ctParams.aggValue = childCount;
517
+ cellValue = `${aggMethod(ctParams)}`;
507
518
  }
508
519
  }
509
- } else if (!(isRowGroupStatus && row.isAggregate)) {
520
+ } else {
510
521
  cellValue = $table.getCellLabel(row, column);
511
522
  }
512
523
  const cellPlaceholder = editRender ? editRender.placeholder : '';
@@ -543,11 +554,11 @@ const Cell = exports.Cell = {
543
554
  const {
544
555
  rowGroupExpandedMaps
545
556
  } = tableInternalData;
546
- const rowGroupOpts = $table.computeRowGroupOpts;
557
+ const aggregateOpts = $table.computeAggregateOpts;
547
558
  const {
548
559
  padding,
549
560
  indent
550
- } = rowGroupOpts;
561
+ } = aggregateOpts;
551
562
  const rowid = (0, _util.getRowid)($table, row);
552
563
  const isExpand = !!rowGroupExpandedFlag && !!rowGroupExpandedMaps[rowid];
553
564
  return h('div', {
@@ -557,7 +568,7 @@ const Cell = exports.Cell = {
557
568
  style: padding && indent ? {
558
569
  paddingLeft: `${level * indent}px`
559
570
  } : undefined
560
- }, [h('span', {
571
+ }, [row.isAggregate ? h('span', {
561
572
  class: 'vxe-row-group--node-btn',
562
573
  on: {
563
574
  click(evnt) {
@@ -566,7 +577,7 @@ const Cell = exports.Cell = {
566
577
  }
567
578
  }, [h('i', {
568
579
  class: isExpand ? getIcon().TABLE_ROW_GROUP_OPEN : getIcon().TABLE_ROW_GROUP_CLOSE
569
- })]), h('div', {
580
+ })]) : renderEmptyElement($table), h('div', {
570
581
  class: 'vxe-row-group-cell'
571
582
  }, cellVNodes)]);
572
583
  },
@@ -664,11 +675,15 @@ const Cell = exports.Cell = {
664
675
  const {
665
676
  rowGroupNode
666
677
  } = column;
667
- if (row.isAggregate) {
668
- const rowGroupOpts = $table.computeRowGroupOpts;
678
+ const tableReactData = $table;
679
+ const {
680
+ rowGroupList
681
+ } = tableReactData;
682
+ if (rowGroupList.length) {
683
+ const aggregateOpts = $table.computeAggregateOpts;
669
684
  const {
670
685
  mode
671
- } = rowGroupOpts;
686
+ } = aggregateOpts;
672
687
  if (mode === 'column' ? column.field === row.groupField : rowGroupNode) {
673
688
  return [Cell.renderRowGroupBtn(h, params, cellVNodes)];
674
689
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:r,column:t}=l,n=t.titlePrefix||t.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_PREFIX})]):renderEmptyElement(r)}function renderTitleSuffixIcon(e,l){let{$table:r,column:t}=l,n=t.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_SUFFIX})]):renderEmptyElement(r)}function renderCellDragIcon(e,l){let r=l.$table;var t=r.$scopedSlots,n=r.dragConfig,{icon:o,trigger:a,disabledMethod:d}=r.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let s=d&&d(l);d=t.rowDragIcon||t["row-drag-icon"],t={};return"cell"!==a&&(t.mousedown=e=>{s||r.handleCellDragMousedownEvent(e,l)},t.mouseup=r.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":s}],on:t},d?r.callSlot(d,l,e):[e("i",{class:o||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:o}=l,n=n.dragSort,{treeConfig:a,dragConfig:d}=t,s=t.computeRowOpts,i=t.computeTreeOpts,{showIcon:t,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=t.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),p=[];return n&&s.drag&&(t||d&&d.showRowIcon)&&(!C||C(l))&&(!a||i.transform&&(c||u||!o))&&p.unshift(renderCellDragIcon(e,l)),p.concat(_xeUtils.default.isArray(r)?r:[r])}function renderHeaderCellDragIcon(e,r){let{$table:t,column:l}=r;var n=t.$scopedSlots,o=l.slots,a=t.computeColumnOpts,{showIcon:d,icon:s,trigger:i,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:p}=t.computeColumnDragOpts;if(!a.drag||!d||C&&!C(r)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(t);{let l=p&&p(r);a=(o?o.columnDragIcon||o["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.mousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.mouseup=t.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},a?t.callSlot(a,r,e):[e("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,r){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(r)?r:[r],renderTitleSuffixIcon(e,l)]}function renderTitleContent(e,l,r){let{$table:t,column:n}=l;var{type:o,showHeaderOverflow:a}=n,d=t;let s=t;d=d.showHeaderOverflow;let i=t.computeTooltipOpts.showAll;d=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?d:a;let c="title"===d,u=!0===d||"tooltip"===d;a={};return(c||u||i)&&(a.mouseenter=e=>{s.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||i)&&t.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(a.mouseleave=e=>{s.isDragResize||(u||i)&&t.handleTargetLeaveEvent(e)}),["html"===o&&_xeUtils.default.isString(r)?e("span",{class:"vxe-cell--title",domProps:{innerHTML:r},on:a}):e("span",{class:"vxe-cell--title",on:a},(0,_vn.getSlotVNs)(r))]}function getFooterContent(e,l){var{$table:r,column:t,_columnIndex:n,row:o,items:a}=l,{slots:d,editRender:s,cellRender:i,footerFormatter:c}=t,s=s||i;if(d&&d.footer)return r.callSlot(d.footer,l,e);let u="";u=_xeUtils.default.isArray(a)?a[n]:_xeUtils.default.get(o,t.field);i=Object.assign(l,{itemValue:u});if(c)return _xeUtils.default.isFunction(c)?""+c(i):(n=(a=(d=_xeUtils.default.isArray(c))?formats.get(c[0]):formats.get(c))?a.tableFooterCellFormatMethod:null)?""+(d?n(i,...c.slice(1)):n(i)):"";if(s){o=renderer.get(s.name),t=o?o.renderTableFooter||o.renderFooter:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,s,i))}return[(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e,l){var{column:r,row:t,$table:n}=l,o=n.editConfig,a=n.isRowGroupStatus,{type:d,treeNode:s,rowGroupNode:i,editRender:c}=r,u=n.computeRowGroupOpts.mode,C=n.computeCheckboxOpts,n=n.computeEditOpts,p=s||a&&t.isAggregate&&("column"===u?r.field===t.groupField:i);switch(d){case"seq":return p?Cell.renderDeepIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return p?Cell.renderDeepRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return C.checkField?p?Cell.renderDeepSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):p?Cell.renderDeepSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return p?Cell.renderDeepHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return(0,_utils.isEnableConf)(o)&&c?"cell"===n.mode?p?Cell.renderDeepCellEdit(e,l):Cell.renderCellEdit(e,l):p?Cell.renderDeepRowEdit(e,l):Cell.renderRowEdit(e,l):p?Cell.renderDeepCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:r,$table:t}=l,t=t.editConfig,{type:r,filters:n,sortable:o,editRender:a}=r;switch(r){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(n&&o)return Cell.renderSortAndFilterHeader(e,l);if(o)return Cell.renderSortHeader(e,l);if(n)return Cell.renderFilterHeader(e,l)}return t&&a?Cell.renderEditHeader(e,l):n&&o?Cell.renderSortAndFilterHeader(e,l):o?Cell.renderSortHeader(e,l):n?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e,l){var{$table:r,column:t}=l,{slots:n,editRender:o,cellRender:a}=t,o=o||a;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(o){a=renderer.get(o.name),n=a?a.renderTableHeader||a.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,o,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(t.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:r,row:t,column:n}=l,o=r,a=r.isRowGroupStatus,{field:d,slots:s,editRender:i,cellRender:c,rowGroupNode:u}=n,c=i||c;if(s&&s.default)return renderCellBaseVNs(e,l,r.callSlot(s.default,l,e));if(c){var s=renderer.get(c.name),C=s?s.renderTableDefault||s.renderDefault:null,s=s?s.renderTableCell||s.renderCell:null,s=i?s:C;if(s)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(s.call(r,e,c,Object.assign({$type:i?"edit":"cell"},l))))}let p="";if(a&&t.isAggregate){var C=o.fullColumnFieldData,{mode:s,showTotal:c,totalMethod:o,countFields:g,countMethod:E,contentMethod:b,mapChildrenField:v}=r.computeRowGroupOpts,m=t.groupField,x=t.groupContent,v=v&&t[v]||[],f=t.childCount,C=C[m]||{};let e={$table:r,groupField:m,groupColumn:C?C.column:null,column:n,groupValue:x,children:v,totalValue:f};("column"===s?n.field===t.groupField:u)?(p=x,b&&(p=""+b(e)),c&&(p=getI18n("vxe.table.rowGroupContentTotal",[p,o?o(e):f,f]))):g&&g.includes(d)&&E&&(p=""+E(e))}else a&&t.isAggregate||(p=r.getCellLabel(t,n));m=i?i.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[i&&(0,_utils.eqEmptyValue)(p)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(m),1)):e("span",(0,_utils.formatText)(p,1))])])},renderDeepCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderRowGroupBtn(e,l,r){let t=l.$table;var n=t,o=t,{row:a,level:d}=l,n=n.rowGroupExpandedFlag,o=o.rowGroupExpandedMaps,{padding:s,indent:i}=t.computeRowGroupOpts,a=(0,_util.getRowid)(t,a),n=!!n&&!!o[a];return e("div",{class:["vxe-row-group--tree-node",{"is--expanded":n}],style:s&&i?{paddingLeft:d*i+"px"}:void 0},[e("span",{class:"vxe-row-group--node-btn",on:{click(e){t.triggerRowGroupExpandEvent(e,l)}}},[e("i",{class:n?getIcon().TABLE_ROW_GROUP_OPEN:getIcon().TABLE_ROW_GROUP_CLOSE})]),e("div",{class:"vxe-row-group-cell"},r)])},renderTreeNodeBtn(e,l,r){let{$table:t,isHidden:n}=l;var o=t.treeExpandedFlag,{fullAllDataRowIdData:a,treeExpandedMaps:d,treeExpandLazyLoadedMaps:s}=t,i=t.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{padding:p,indent:g,lazy:E,trigger:b,iconLoaded:v,showIcon:m,iconOpen:x,iconClose:f}=i,h=i.children||i.childrenField,i=i.hasChild||i.hasChildField,h=c[h],h=h&&h.length,u=u?u.icon:null;let _=!1,T=!1,w=!1,D=!1;var I={};return u?t.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(t,c),T=!!o&&!!d[u],E&&(o=a[u],w=!!s[u],_=c[i],D=!!o.treeLoaded)),b&&"default"!==b||(I.click=e=>{t.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:p&&g?{paddingLeft:C*g+"px"}:void 0},[m&&(!E||D?h:h||_)?[e("div",{class:"vxe-cell--tree-btn",on:I},[e("i",{class:w?v||getIcon().TABLE_TREE_LOADED:T?x||getIcon().TABLE_TREE_OPEN:f||getIcon().TABLE_TREE_CLOSE})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderDeepNodeBtn(e,l,r){var{$table:t,row:n,column:o}=l,a=o.rowGroupNode;if(n.isAggregate){t=t.computeRowGroupOpts.mode;if("column"===t?o.field===n.groupField:a)return[Cell.renderRowGroupBtn(e,l,r)]}return[Cell.renderTreeNodeBtn(e,l,r)]},renderSeqHeader(e,l){var{$table:r,column:t}=l,n=t.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?r.callSlot(n.header,l,e):(0,_utils.formatText)(t.getTitle(),1)))},renderSeqCell(e,l){var{$table:r,column:t}=l,n=r.treeConfig,o=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=o.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(o.startIndex||0)+r,1))]))},renderDeepIndexCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:r,column:t}=l,n=t.slots,o=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,o?r.callSlot(o,l,e):[e("span",{class:"vxe-radio--label"},n?r.callSlot(n,l,e):(0,_utils.formatText)(t.getTitle(),1))]))},renderRadioCell(e,l){let{$table:r,column:t,isHidden:n}=l;var o=r.selectRadioRow,a=t.slots,{labelField:d,checkMethod:s,visibleMethod:i}=r.computeRadioOpts,c=l.row,u=a?a.default:null,a=a?a.radio:null,o=c===o;let C=!i||i({$table:r,row:c}),p=!!s,g;n||(g={click(e){!p&&C&&r.triggerRadioRowEvent(e,l)}},s&&(p=!s({$table:r,row:c})));i=Object.assign(Object.assign({},l),{checked:o,disabled:p,visible:C});return a?renderCellBaseVNs(e,l,r.callSlot(a,i,e)):(s=[],C&&s.push(e("span",{class:["vxe-radio--icon",o?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&s.push(e("span",{class:"vxe-radio--label"},u?r.callSlot(u,i,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":o,"is--disabled":p}],on:g},s)]))},renderDeepRadioCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:r,column:t,isHidden:n}=l;let{isAllSelected:o,isIndeterminate:a}=r,d=r.computeIsAllCheckboxDisabled;var s=t.slots,i=s?s.header:null,s=s?s.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=r.computeCheckboxOpts,p=t.getTitle(),g={},E=(n||(g.click=e=>{d||r.triggerCheckAllEvent(e,!o)}),Object.assign(Object.assign({},l),{checked:o,disabled:d,indeterminate:a}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,i?r.callSlot(i,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":o,"is--disabled":d,"is--indeterminate":a}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:g},[e("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(s||p?[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):p)]:[]))]:[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):p)]))},renderCheckboxCell(e,l){let{$table:r,row:t,column:n,isHidden:o}=l;var a=r.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:s}=r,{selectCheckboxMaps:i,treeIndeterminateRowMaps:c}=r,{labelField:u,checkMethod:C,visibleMethod:p}=r.computeCheckboxOpts,g=n.slots,E=g?g.default:null,g=g?g.checkbox:null;let b=!1,v=!1,m=!p||p({$table:r,row:t}),x=!!C;var f,p={},d=(!o&&(f=(0,_util.getRowid)(r,t),v=!!d&&!!i[f],p.click=e=>{!x&&m&&r.triggerCheckRowEvent(e,l,!v)},C&&(x=!C({$table:r,row:t})),a||s)&&(b=!!c[f]),Object.assign(Object.assign({},l),{checked:v,disabled:x,visible:m,indeterminate:b}));return g?renderCellBaseVNs(e,l,r.callSlot(g,d,e)):(i=[],m&&i.push(e("span",{class:["vxe-checkbox--icon",b?getIcon().TABLE_CHECKBOX_INDETERMINATE:v?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(E||u)&&i.push(e("span",{class:"vxe-checkbox--label"},E?r.callSlot(E,d,e):_xeUtils.default.get(t,u))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":v,"is--disabled":x,"is--indeterminate":b,"is--hidden":!m}],on:p},i)]))},renderDeepSelectionCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:r,row:t,column:n,isHidden:o}=l;var a=r.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:s}=r,i=r.treeIndeterminateRowMaps,c=r.computeCheckboxOpts,{labelField:u,checkField:C,checkMethod:p,visibleMethod:g}=c,c=c.indeterminateField||c.halfField,E=n.slots,b=E?E.default:null,E=E?E.checkbox:null;let v=!1,m=!1,x=!g||g({$table:r,row:t}),f=!!p;var h,g={},d=(!o&&(h=(0,_util.getRowid)(r,t),m=!!d&&_xeUtils.default.get(t,C),g.click=e=>{!f&&x&&r.triggerCheckRowEvent(e,l,!m)},p&&(f=!p({$table:r,row:t})),a||s)&&(v=!!i[h]),Object.assign(Object.assign({},l),{checked:m,disabled:f,visible:x,indeterminate:v}));return E?renderCellBaseVNs(e,l,r.callSlot(E,d,e)):(C=[],x&&C.push(e("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:m?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(b||u)&&C.push(e("span",{class:"vxe-checkbox--label"},b?r.callSlot(b,d,e):_xeUtils.default.get(t,u))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":m,"is--disabled":f,"is--indeterminate":c&&!m?t[c]:v,"is--hidden":!x}],on:g},C)]))},renderDeepSelectionCellByProp(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:r,isHidden:t,row:n,column:o}=l;var a=r.isRowGroupStatus,{rowExpandedMaps:d,rowExpandLazyLoadedMaps:s}=r,{lazy:i,labelField:c,iconLoaded:u,showIcon:C,iconOpen:p,iconClose:g,visibleMethod:E}=r.computeExpandOpts,b=o.slots,v=b?b.default:null,b=b?b.icon:null;let m=!1,x=!1;return a&&n.isAggregate?renderCellBaseVNs(e,l,[]):b?renderCellBaseVNs(e,l,r.callSlot(b,l,e)):(t||(a=(0,_util.getRowid)(r,n),m=!!d[a],i&&(x=!!s[a])),renderCellBaseVNs(e,l,[!C||E&&!E(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":m}],on:{mousedown(e){e.stopPropagation()},click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",x?u||getIcon().TABLE_EXPAND_LOADED:m?p||getIcon().TABLE_EXPAND_OPEN:g||getIcon().TABLE_EXPAND_CLOSE]})]),v||c?e("span",{class:"vxe-table--expand-label"},v?r.callSlot(v,l,e):_xeUtils.default.get(n,c)):renderEmptyElement(r)]))},renderExpandData(e,l){var{$table:r,column:t}=l,{slots:t,contentRender:n}=t;if(t&&t.content)return r.callSlot(t.content,l,e);if(n){t=renderer.get(n.name),t=t?t.renderTableExpand||t.renderExpand:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:r,column:t}=l,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderDeepHTMLCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:r,column:t}=l;var{showIcon:n,allowBtn:o,ascTitle:a,descTitle:d,iconLayout:s,iconAsc:i,iconDesc:c,iconVisibleMethod:u}=r.computeSortOpts;return!n||u&&!u(l)?[]:[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${s}-layout`]},[e("i",{class:["vxe-sort--asc-btn",i||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===t.order}],attrs:{title:_xeUtils.default.eqNull(a)?getI18n("vxe.table.sortAsc"):""+(a||"")},on:o?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===t.order}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:o?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:r,column:t,hasFilter:n}=l;var o=r.filterStore,{showIcon:a,iconNone:d,iconMatch:s,iconVisibleMethod:i}=r.computeFilterOpts;return!a||i&&!i(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":o.visible&&o.column===t}],on:{click(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}}},[e("i",{class:["vxe-filter--btn",n?s||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")}})])]},renderEditHeader(e,l){var{$table:r,column:t}=l,{editConfig:n,editRules:o}=r,a=r.computeEditOpts,{sortable:d,filters:s,editRender:i}=t;let c=!1,u=(o&&(o=_xeUtils.default.get(o,t.field))&&(c=o.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&(u=[c&&a.showAsterisk?e("i",{class:"vxe-cell--required-icon"},[e("i",{class:"vxe-cell--required-icon"})]):renderEmptyElement(r),(0,_utils.isEnableConf)(i)&&a.showIcon?e("i",{class:"vxe-cell--edit-icon"},[e("i",{class:a.icon||getIcon().TABLE_EDIT})]):renderEmptyElement(r)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(s?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row)},renderDeepRowEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row&&r.column===l.column)},renderDeepCellEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,r,t){var{$table:n,column:o}=l,{slots:o,editRender:a,formatter:d}=o,s=renderer.get(a.name),s=s?s.renderTableEdit||s.renderEdit:null,i=Object.assign({$type:"",isEdit:t},l);return t?o&&o.edit?n.callSlot(o.edit,i,e):s?(0,_vn.getSlotVNs)(s.call(n,e,a,i)):[]:o&&o.default?renderCellBaseVNs(e,l,n.callSlot(o.default,i,e)):d?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(i)])]):Cell.renderDefaultCell.call(r,e,i)}};var _default=exports.default=Cell;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:r,column:t}=l,n=t.titlePrefix||t.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_PREFIX})]):renderEmptyElement(r)}function renderTitleSuffixIcon(e,l){let{$table:r,column:t}=l,n=t.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_SUFFIX})]):renderEmptyElement(r)}function renderCellDragIcon(e,l){let r=l.$table;var t=r.$scopedSlots,n=r.dragConfig,{icon:o,trigger:a,disabledMethod:d}=r.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let s=d&&d(l);d=t.rowDragIcon||t["row-drag-icon"],t={};return"cell"!==a&&(t.mousedown=e=>{s||r.handleCellDragMousedownEvent(e,l)},t.mouseup=r.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":s}],on:t},d?r.callSlot(d,l,e):[e("i",{class:o||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:o}=l,n=n.dragSort,{treeConfig:a,dragConfig:d}=t,s=t.computeRowOpts,i=t.computeTreeOpts,{showIcon:t,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=t.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),g=[];return n&&s.drag&&(t||d&&d.showRowIcon)&&(!C||C(l))&&(!a||i.transform&&(c||u||!o))&&g.unshift(renderCellDragIcon(e,l)),g.concat(_xeUtils.default.isArray(r)?r:[r])}function renderHeaderCellDragIcon(e,r){let{$table:t,column:l}=r;var n=t.$scopedSlots,o=l.slots,a=t.computeColumnOpts,{showIcon:d,icon:s,trigger:i,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=t.computeColumnDragOpts;if(!a.drag||!d||C&&!C(r)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(t);{let l=g&&g(r);a=(o?o.columnDragIcon||o["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.mousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.mouseup=t.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},a?t.callSlot(a,r,e):[e("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,r){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(r)?r:[r],renderTitleSuffixIcon(e,l)]}function renderTitleContent(e,l,r){let{$table:t,column:n}=l;var{type:o,showHeaderOverflow:a}=n,d=t;let s=t;d=d.showHeaderOverflow;let i=t.computeTooltipOpts.showAll;d=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?d:a;let c="title"===d,u=!0===d||"tooltip"===d;a={};return(c||u||i)&&(a.mouseenter=e=>{s.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||i)&&t.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(a.mouseleave=e=>{s.isDragResize||(u||i)&&t.handleTargetLeaveEvent(e)}),["html"===o&&_xeUtils.default.isString(r)?e("span",{class:"vxe-cell--title",domProps:{innerHTML:r},on:a}):e("span",{class:"vxe-cell--title",on:a},(0,_vn.getSlotVNs)(r))]}function getFooterContent(e,l){var{$table:r,column:t,_columnIndex:n,row:o,items:a}=l,{slots:d,editRender:s,cellRender:i,footerFormatter:c}=t,s=s||i;if(d&&d.footer)return r.callSlot(d.footer,l,e);let u="";u=_xeUtils.default.isArray(a)?a[n]:_xeUtils.default.get(o,t.field);i=Object.assign(l,{itemValue:u});if(c)return _xeUtils.default.isFunction(c)?""+c(i):(n=(a=(d=_xeUtils.default.isArray(c))?formats.get(c[0]):formats.get(c))?a.tableFooterCellFormatMethod:null)?""+(d?n(i,...c.slice(1)):n(i)):"";if(s){o=renderer.get(s.name),t=o?o.renderTableFooter||o.renderFooter:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,s,i))}return[(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e,l){var{column:r,row:t,$table:n}=l,o=n.editConfig,a=n.isRowGroupStatus,{type:d,treeNode:s,rowGroupNode:i,editRender:c}=r,u=n.computeAggregateOpts.mode,C=n.computeCheckboxOpts,n=n.computeEditOpts,g=s||a&&("column"===u?r.field===t.groupField:i);switch(d){case"seq":return g?Cell.renderDeepIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return g?Cell.renderDeepRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return C.checkField?g?Cell.renderDeepSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):g?Cell.renderDeepSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return g?Cell.renderDeepHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return(0,_utils.isEnableConf)(o)&&c?"cell"===n.mode?g?Cell.renderDeepCellEdit(e,l):Cell.renderCellEdit(e,l):g?Cell.renderDeepRowEdit(e,l):Cell.renderRowEdit(e,l):g?Cell.renderDeepCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:r,$table:t}=l,t=t.editConfig,{type:r,filters:n,sortable:o,editRender:a}=r;switch(r){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(n&&o)return Cell.renderSortAndFilterHeader(e,l);if(o)return Cell.renderSortHeader(e,l);if(n)return Cell.renderFilterHeader(e,l)}return t&&a?Cell.renderEditHeader(e,l):n&&o?Cell.renderSortAndFilterHeader(e,l):o?Cell.renderSortHeader(e,l):n?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e,l){var{$table:r,column:t}=l,{slots:n,editRender:o,cellRender:a}=t,o=o||a;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(o){a=renderer.get(o.name),n=a?a.renderTableHeader||a.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,o,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(t.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var r,t,n,o,a,d,{$table:s,row:i,column:c}=l,u=s,C=s.isRowGroupStatus,{field:g,slots:p,editRender:E,cellRender:b,rowGroupNode:v,aggFunc:m}=c,b=E||b;if(p&&p.default)return renderCellBaseVNs(e,l,s.callSlot(p.default,l,e));if(b){var p=renderer.get(b.name),x=p?p.renderTableDefault||p.renderDefault:null,p=p?p.renderTableCell||p.renderCell:null,p=E?p:x;if(p)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(p.call(s,e,b,Object.assign({$type:E?"edit":"cell"},l))))}let f="";C&&g&&i.isAggregate?(x=u.fullColumnFieldData,{mode:b,showTotal:C,totalMethod:u,countFields:r,contentMethod:t,mapChildrenField:o}=p=s.computeAggregateOpts,p=p.aggregateMethod||p.countMethod,d=i.groupField,n=i.groupContent,o=o&&i[o]||[],a=i.childCount,d={$table:s,groupField:d,groupColumn:(x=x[d]||{})?x.column:null,column:c,groupValue:n,children:o,childCount:a,aggValue:null,totalValue:a},("column"===b?g===i.groupField:v)?(f=n,t&&(f=""+t(d)),C&&(f=getI18n("vxe.table.rowGroupContentTotal",[f,u?u(d):a,a]))):s.getPivotTableAggregateCellAggValue?f=s.getPivotTableAggregateCellAggValue(l):(!0===m||r&&r.includes(g))&&p&&(d.aggValue=a,f=""+p(d))):f=s.getCellLabel(i,c);x=E?E.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[E&&(0,_utils.eqEmptyValue)(f)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(x),1)):e("span",(0,_utils.formatText)(f,1))])])},renderDeepCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderRowGroupBtn(e,l,r){let t=l.$table;var n=t,o=t,{row:a,level:d}=l,n=n.rowGroupExpandedFlag,o=o.rowGroupExpandedMaps,{padding:s,indent:i}=t.computeAggregateOpts,c=(0,_util.getRowid)(t,a),n=!!n&&!!o[c];return e("div",{class:["vxe-row-group--tree-node",{"is--expanded":n}],style:s&&i?{paddingLeft:d*i+"px"}:void 0},[a.isAggregate?e("span",{class:"vxe-row-group--node-btn",on:{click(e){t.triggerRowGroupExpandEvent(e,l)}}},[e("i",{class:n?getIcon().TABLE_ROW_GROUP_OPEN:getIcon().TABLE_ROW_GROUP_CLOSE})]):renderEmptyElement(t),e("div",{class:"vxe-row-group-cell"},r)])},renderTreeNodeBtn(e,l,r){let{$table:t,isHidden:n}=l;var o=t.treeExpandedFlag,{fullAllDataRowIdData:a,treeExpandedMaps:d,treeExpandLazyLoadedMaps:s}=t,i=t.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{padding:g,indent:p,lazy:E,trigger:b,iconLoaded:v,showIcon:m,iconOpen:x,iconClose:f}=i,h=i.children||i.childrenField,i=i.hasChild||i.hasChildField,h=c[h],h=h&&h.length,u=u?u.icon:null;let _=!1,T=!1,D=!1,w=!1;var I={};return u?t.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(t,c),T=!!o&&!!d[u],E&&(o=a[u],D=!!s[u],_=c[i],w=!!o.treeLoaded)),b&&"default"!==b||(I.click=e=>{t.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:g&&p?{paddingLeft:C*p+"px"}:void 0},[m&&(!E||w?h:h||_)?[e("div",{class:"vxe-cell--tree-btn",on:I},[e("i",{class:D?v||getIcon().TABLE_TREE_LOADED:T?x||getIcon().TABLE_TREE_OPEN:f||getIcon().TABLE_TREE_CLOSE})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderDeepNodeBtn(e,l,r){var{$table:t,row:n,column:o}=l,a=o.rowGroupNode,d=t.rowGroupList;if(d.length){d=t.computeAggregateOpts.mode;if("column"===d?o.field===n.groupField:a)return[Cell.renderRowGroupBtn(e,l,r)]}return[Cell.renderTreeNodeBtn(e,l,r)]},renderSeqHeader(e,l){var{$table:r,column:t}=l,n=t.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?r.callSlot(n.header,l,e):(0,_utils.formatText)(t.getTitle(),1)))},renderSeqCell(e,l){var{$table:r,column:t}=l,n=r.treeConfig,o=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=o.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(o.startIndex||0)+r,1))]))},renderDeepIndexCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:r,column:t}=l,n=t.slots,o=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,o?r.callSlot(o,l,e):[e("span",{class:"vxe-radio--label"},n?r.callSlot(n,l,e):(0,_utils.formatText)(t.getTitle(),1))]))},renderRadioCell(e,l){let{$table:r,column:t,isHidden:n}=l;var o=r.selectRadioRow,a=t.slots,{labelField:d,checkMethod:s,visibleMethod:i}=r.computeRadioOpts,c=l.row,u=a?a.default:null,a=a?a.radio:null,o=c===o;let C=!i||i({$table:r,row:c}),g=!!s,p;n||(p={click(e){!g&&C&&r.triggerRadioRowEvent(e,l)}},s&&(g=!s({$table:r,row:c})));i=Object.assign(Object.assign({},l),{checked:o,disabled:g,visible:C});return a?renderCellBaseVNs(e,l,r.callSlot(a,i,e)):(s=[],C&&s.push(e("span",{class:["vxe-radio--icon",o?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&s.push(e("span",{class:"vxe-radio--label"},u?r.callSlot(u,i,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":o,"is--disabled":g}],on:p},s)]))},renderDeepRadioCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:r,column:t,isHidden:n}=l;let{isAllSelected:o,isIndeterminate:a}=r,d=r.computeIsAllCheckboxDisabled;var s=t.slots,i=s?s.header:null,s=s?s.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=r.computeCheckboxOpts,g=t.getTitle(),p={},E=(n||(p.click=e=>{d||r.triggerCheckAllEvent(e,!o)}),Object.assign(Object.assign({},l),{checked:o,disabled:d,indeterminate:a}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,i?r.callSlot(i,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":o,"is--disabled":d,"is--indeterminate":a}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:p},[e("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(s||g?[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):g)]:[]))]:[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):g)]))},renderCheckboxCell(e,l){let{$table:r,row:t,column:n,isHidden:o}=l;var a=r.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:s}=r,{selectCheckboxMaps:i,treeIndeterminateRowMaps:c}=r,{labelField:u,checkMethod:C,visibleMethod:g}=r.computeCheckboxOpts,p=n.slots,E=p?p.default:null,p=p?p.checkbox:null;let b=!1,v=!1,m=!g||g({$table:r,row:t}),x=!!C;var f,g={},d=(!o&&(f=(0,_util.getRowid)(r,t),v=!!d&&!!i[f],g.click=e=>{!x&&m&&r.triggerCheckRowEvent(e,l,!v)},C&&(x=!C({$table:r,row:t})),a||s)&&(b=!!c[f]),Object.assign(Object.assign({},l),{checked:v,disabled:x,visible:m,indeterminate:b}));return p?renderCellBaseVNs(e,l,r.callSlot(p,d,e)):(i=[],m&&i.push(e("span",{class:["vxe-checkbox--icon",b?getIcon().TABLE_CHECKBOX_INDETERMINATE:v?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(E||u)&&i.push(e("span",{class:"vxe-checkbox--label"},E?r.callSlot(E,d,e):_xeUtils.default.get(t,u))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":v,"is--disabled":x,"is--indeterminate":b,"is--hidden":!m}],on:g},i)]))},renderDeepSelectionCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:r,row:t,column:n,isHidden:o}=l;var a=r.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:s}=r,i=r.treeIndeterminateRowMaps,c=r.computeCheckboxOpts,{labelField:u,checkField:C,checkMethod:g,visibleMethod:p}=c,c=c.indeterminateField||c.halfField,E=n.slots,b=E?E.default:null,E=E?E.checkbox:null;let v=!1,m=!1,x=!p||p({$table:r,row:t}),f=!!g;var h,p={},d=(!o&&(h=(0,_util.getRowid)(r,t),m=!!d&&_xeUtils.default.get(t,C),p.click=e=>{!f&&x&&r.triggerCheckRowEvent(e,l,!m)},g&&(f=!g({$table:r,row:t})),a||s)&&(v=!!i[h]),Object.assign(Object.assign({},l),{checked:m,disabled:f,visible:x,indeterminate:v}));return E?renderCellBaseVNs(e,l,r.callSlot(E,d,e)):(C=[],x&&C.push(e("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:m?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(b||u)&&C.push(e("span",{class:"vxe-checkbox--label"},b?r.callSlot(b,d,e):_xeUtils.default.get(t,u))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":m,"is--disabled":f,"is--indeterminate":c&&!m?t[c]:v,"is--hidden":!x}],on:p},C)]))},renderDeepSelectionCellByProp(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:r,isHidden:t,row:n,column:o}=l;var a=r.isRowGroupStatus,{rowExpandedMaps:d,rowExpandLazyLoadedMaps:s}=r,{lazy:i,labelField:c,iconLoaded:u,showIcon:C,iconOpen:g,iconClose:p,visibleMethod:E}=r.computeExpandOpts,b=o.slots,v=b?b.default:null,b=b?b.icon:null;let m=!1,x=!1;return a&&n.isAggregate?renderCellBaseVNs(e,l,[]):b?renderCellBaseVNs(e,l,r.callSlot(b,l,e)):(t||(a=(0,_util.getRowid)(r,n),m=!!d[a],i&&(x=!!s[a])),renderCellBaseVNs(e,l,[!C||E&&!E(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":m}],on:{mousedown(e){e.stopPropagation()},click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",x?u||getIcon().TABLE_EXPAND_LOADED:m?g||getIcon().TABLE_EXPAND_OPEN:p||getIcon().TABLE_EXPAND_CLOSE]})]),v||c?e("span",{class:"vxe-table--expand-label"},v?r.callSlot(v,l,e):_xeUtils.default.get(n,c)):renderEmptyElement(r)]))},renderExpandData(e,l){var{$table:r,column:t}=l,{slots:t,contentRender:n}=t;if(t&&t.content)return r.callSlot(t.content,l,e);if(n){t=renderer.get(n.name),t=t?t.renderTableExpand||t.renderExpand:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:r,column:t}=l,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderDeepHTMLCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:r,column:t}=l;var{showIcon:n,allowBtn:o,ascTitle:a,descTitle:d,iconLayout:s,iconAsc:i,iconDesc:c,iconVisibleMethod:u}=r.computeSortOpts;return!n||u&&!u(l)?[]:[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${s}-layout`]},[e("i",{class:["vxe-sort--asc-btn",i||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===t.order}],attrs:{title:_xeUtils.default.eqNull(a)?getI18n("vxe.table.sortAsc"):""+(a||"")},on:o?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===t.order}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:o?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:r,column:t,hasFilter:n}=l;var o=r.filterStore,{showIcon:a,iconNone:d,iconMatch:s,iconVisibleMethod:i}=r.computeFilterOpts;return!a||i&&!i(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":o.visible&&o.column===t}],on:{click(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}}},[e("i",{class:["vxe-filter--btn",n?s||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")}})])]},renderEditHeader(e,l){var{$table:r,column:t}=l,{editConfig:n,editRules:o}=r,a=r.computeEditOpts,{sortable:d,filters:s,editRender:i}=t;let c=!1,u=(o&&(o=_xeUtils.default.get(o,t.field))&&(c=o.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&(u=[c&&a.showAsterisk?e("i",{class:"vxe-cell--required-icon"},[e("i",{class:"vxe-cell--required-icon"})]):renderEmptyElement(r),(0,_utils.isEnableConf)(i)&&a.showIcon?e("i",{class:"vxe-cell--edit-icon"},[e("i",{class:a.icon||getIcon().TABLE_EDIT})]):renderEmptyElement(r)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(s?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row)},renderDeepRowEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row&&r.column===l.column)},renderDeepCellEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,r,t){var{$table:n,column:o}=l,{slots:o,editRender:a,formatter:d}=o,s=renderer.get(a.name),s=s?s.renderTableEdit||s.renderEdit:null,i=Object.assign({$type:"",isEdit:t},l);return t?o&&o.edit?n.callSlot(o.edit,i,e):s?(0,_vn.getSlotVNs)(s.call(n,e,a,i)):[]:o&&o.default?renderCellBaseVNs(e,l,n.callSlot(o.default,i,e)):d?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(i)])]):Cell.renderDefaultCell.call(r,e,i)}};var _default=exports.default=Cell;
@@ -135,6 +135,8 @@ const columnProps = exports.columnProps = {
135
135
  editRender: Object,
136
136
  // 内容渲染配置项
137
137
  contentRender: Object,
138
+ // 聚合函数
139
+ aggFunc: [String, Boolean],
138
140
  // 额外的参数
139
141
  params: Object
140
142
  };
@@ -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],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,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,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}},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],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,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}},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});
@@ -113,6 +113,7 @@ class ColumnInfo {
113
113
  titleHelp: _vm.titleHelp,
114
114
  titlePrefix: _vm.titlePrefix,
115
115
  titleSuffix: _vm.titleSuffix,
116
+ aggFunc: _vm.aggFunc,
116
117
  // 自定义参数
117
118
  params: _vm.params,
118
119
  // 渲染属性
@@ -135,6 +136,7 @@ class ColumnInfo {
135
136
  // 列排序
136
137
  sortNumber: 0,
137
138
  renderSortNumber: 0,
139
+ renderAggFn: '',
138
140
  renderFixed: '',
139
141
  renderVisible: false,
140
142
  renderWidth: 0,