vxe-table 3.15.31 → 3.15.33

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 (39) hide show
  1. package/es/locale/lang/en-US.js +2 -2
  2. package/es/style.css +1 -1
  3. package/es/table/module/validator/mixin.js +2 -2
  4. package/es/table/src/cell.js +31 -15
  5. package/es/table/src/methods.js +21 -3
  6. package/es/table/src/util.js +1 -1
  7. package/es/ui/index.js +3 -3
  8. package/es/ui/src/log.js +1 -1
  9. package/lib/index.umd.js +65 -21
  10. package/lib/index.umd.min.js +1 -1
  11. package/lib/locale/lang/en-US.js +2 -2
  12. package/lib/locale/lang/en-US.min.js +1 -1
  13. package/lib/locale/lang/en-US.umd.js +2 -2
  14. package/lib/style.css +1 -1
  15. package/lib/table/module/validator/mixin.js +1 -1
  16. package/lib/table/module/validator/mixin.min.js +1 -1
  17. package/lib/table/src/cell.js +39 -12
  18. package/lib/table/src/cell.min.js +1 -1
  19. package/lib/table/src/methods.js +20 -3
  20. package/lib/table/src/methods.min.js +1 -1
  21. package/lib/table/src/util.js +1 -1
  22. package/lib/table/src/util.min.js +1 -1
  23. package/lib/ui/index.js +3 -3
  24. package/lib/ui/index.min.js +1 -1
  25. package/lib/ui/src/log.js +1 -1
  26. package/lib/ui/src/log.min.js +1 -1
  27. package/package.json +1 -1
  28. package/packages/locale/lang/en-US.ts +2 -2
  29. package/packages/table/module/validator/mixin.ts +2 -2
  30. package/packages/table/src/cell.ts +31 -16
  31. package/packages/table/src/methods.ts +20 -3
  32. package/packages/table/src/util.ts +1 -1
  33. package/packages/ui/index.ts +2 -2
  34. /package/es/{iconfont.1747621179042.ttf → iconfont.1749019365308.ttf} +0 -0
  35. /package/es/{iconfont.1747621179042.woff → iconfont.1749019365308.woff} +0 -0
  36. /package/es/{iconfont.1747621179042.woff2 → iconfont.1749019365308.woff2} +0 -0
  37. /package/lib/{iconfont.1747621179042.ttf → iconfont.1749019365308.ttf} +0 -0
  38. /package/lib/{iconfont.1747621179042.woff → iconfont.1749019365308.woff} +0 -0
  39. /package/lib/{iconfont.1747621179042.woff2 → iconfont.1749019365308.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"),_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.eqNull(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;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()}}};
@@ -300,21 +300,30 @@ function getDefaultCellLabel(params) {
300
300
  function renderCellHandle(h, params) {
301
301
  const {
302
302
  column,
303
+ row,
303
304
  $table
304
305
  } = params;
305
306
  const tableProps = $table;
307
+ const tableReactData = $table;
306
308
  const {
307
309
  editConfig
308
310
  } = tableProps;
311
+ const {
312
+ isRowGroupStatus
313
+ } = tableReactData;
309
314
  const {
310
315
  type,
311
316
  treeNode,
312
317
  rowGroupNode,
313
318
  editRender
314
319
  } = column;
320
+ const rowGroupOpts = $table.computeRowGroupOpts;
321
+ const {
322
+ mode
323
+ } = rowGroupOpts;
315
324
  const checkboxOpts = $table.computeCheckboxOpts;
316
325
  const editOpts = $table.computeEditOpts;
317
- const isDeepCell = treeNode || rowGroupNode;
326
+ const isDeepCell = treeNode || isRowGroupStatus && row.isAggregate && (mode === 'column' ? column.field === row.groupField : rowGroupNode);
318
327
  switch (type) {
319
328
  case 'seq':
320
329
  return isDeepCell ? Cell.renderDeepIndexCell(h, params) : Cell.renderSeqCell(h, params);
@@ -434,6 +443,7 @@ const Cell = exports.Cell = {
434
443
  isRowGroupStatus
435
444
  } = tableReactData;
436
445
  const {
446
+ field,
437
447
  slots,
438
448
  editRender,
439
449
  cellRender,
@@ -455,36 +465,46 @@ const Cell = exports.Cell = {
455
465
  }
456
466
  }
457
467
  let cellValue = '';
458
- if (isRowGroupStatus && rowGroupNode && row.isAggregate) {
468
+ if (isRowGroupStatus && row.isAggregate) {
459
469
  const {
460
470
  fullColumnFieldData
461
471
  } = tableInternalData;
462
472
  const rowGroupOpts = $table.computeRowGroupOpts;
463
473
  const {
474
+ mode,
464
475
  showTotal,
465
476
  totalMethod,
477
+ countFields,
478
+ countMethod,
466
479
  contentMethod,
467
480
  mapChildrenField
468
481
  } = rowGroupOpts;
469
482
  const groupField = row.groupField;
470
- cellValue = row.groupContent;
483
+ const groupContent = row.groupContent;
471
484
  const childList = mapChildrenField ? row[mapChildrenField] || [] : [];
472
- const totalValue = childList.length;
485
+ const totalValue = row.childCount;
473
486
  const colRest = fullColumnFieldData[groupField] || {};
474
487
  const params = {
475
488
  $table,
476
489
  groupField,
477
490
  groupColumn: colRest ? colRest.column : null,
478
491
  column,
479
- groupValue: cellValue,
492
+ groupValue: groupContent,
480
493
  children: childList,
481
494
  totalValue: totalValue
482
495
  };
483
- if (contentMethod) {
484
- cellValue = `${contentMethod(params)}`;
485
- }
486
- if (showTotal) {
487
- cellValue = getI18n('vxe.table.rowGroupContentTotal', [cellValue, totalMethod ? totalMethod(params) : totalValue, totalValue]);
496
+ if (mode === 'column' ? column.field === row.groupField : rowGroupNode) {
497
+ cellValue = groupContent;
498
+ if (contentMethod) {
499
+ cellValue = `${contentMethod(params)}`;
500
+ }
501
+ if (showTotal) {
502
+ cellValue = getI18n('vxe.table.rowGroupContentTotal', [cellValue, totalMethod ? totalMethod(params) : totalValue, totalValue]);
503
+ }
504
+ } else if (countFields && countFields.includes(field)) {
505
+ if (countMethod) {
506
+ cellValue = `${countMethod(params)}`;
507
+ }
488
508
  }
489
509
  } else if (!(isRowGroupStatus && row.isAggregate)) {
490
510
  cellValue = $table.getCellLabel(row, column);
@@ -637,14 +657,21 @@ const Cell = exports.Cell = {
637
657
  */
638
658
  renderDeepNodeBtn(h, params, cellVNodes) {
639
659
  const {
660
+ $table,
640
661
  row,
641
662
  column
642
663
  } = params;
643
664
  const {
644
665
  rowGroupNode
645
666
  } = column;
646
- if (rowGroupNode && row.isAggregate) {
647
- return [Cell.renderRowGroupBtn(h, params, cellVNodes)];
667
+ if (row.isAggregate) {
668
+ const rowGroupOpts = $table.computeRowGroupOpts;
669
+ const {
670
+ mode
671
+ } = rowGroupOpts;
672
+ if (mode === 'column' ? column.field === row.groupField : rowGroupNode) {
673
+ return [Cell.renderRowGroupBtn(h, params, cellVNodes)];
674
+ }
648
675
  }
649
676
  return [Cell.renderTreeNodeBtn(h, params, cellVNodes)];
650
677
  },
@@ -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:a,trigger:o,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"!==o&&(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:a||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:a}=l,n=n.dragSort,{treeConfig:o,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))&&(!o||i.transform&&(c||u||!a))&&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,a=l.slots,o=t.computeColumnOpts,{showIcon:d,icon:s,trigger:i,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:p}=t.computeColumnDragOpts;if(!o.drag||!d||C&&!C(r)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(t);{let l=p&&p(r);o=(a?a.columnDragIcon||a["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},o?t.callSlot(o,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:a,showHeaderOverflow:o}=n,d=t;let s=t;d=d.showHeaderOverflow;let i=t.computeTooltipOpts.showAll;d=_xeUtils.default.isUndefined(o)||_xeUtils.default.isNull(o)?d:o;let c="title"===d,u=!0===d||"tooltip"===d;o={};return(c||u||i)&&(o.mouseenter=e=>{s.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||i)&&t.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(o.mouseleave=e=>{s.isDragResize||(u||i)&&t.handleTargetLeaveEvent(e)}),["html"===a&&_xeUtils.default.isString(r)?e("span",{class:"vxe-cell--title",domProps:{innerHTML:r},on:o}):e("span",{class:"vxe-cell--title",on:o},(0,_vn.getSlotVNs)(r))]}function getFooterContent(e,l){var{$table:r,column:t,_columnIndex:n,row:a,items:o}=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(o)?o[n]:_xeUtils.default.get(a,t.field);i=Object.assign(l,{itemValue:u});if(c)return _xeUtils.default.isFunction(c)?""+c(i):(n=(o=(d=_xeUtils.default.isArray(c))?formats.get(c[0]):formats.get(c))?o.tableFooterCellFormatMethod:null)?""+(d?n(i,...c.slice(1)):n(i)):"";if(s){a=renderer.get(s.name),t=a?a.renderTableFooter||a.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,$table:t}=l,n=t.editConfig,{type:r,treeNode:a,rowGroupNode:o,editRender:d}=r,s=t.computeCheckboxOpts,t=t.computeEditOpts,i=a||o;switch(r){case"seq":return i?Cell.renderDeepIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return i?Cell.renderDeepRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return s.checkField?i?Cell.renderDeepSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):i?Cell.renderDeepSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return i?Cell.renderDeepHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return(0,_utils.isEnableConf)(n)&&d?"cell"===t.mode?i?Cell.renderDeepCellEdit(e,l):Cell.renderCellEdit(e,l):i?Cell.renderDeepRowEdit(e,l):Cell.renderRowEdit(e,l):i?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:a,editRender:o}=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&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(n)return Cell.renderFilterHeader(e,l)}return t&&o?Cell.renderEditHeader(e,l):n&&a?Cell.renderSortAndFilterHeader(e,l):a?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:a,cellRender:o}=t,a=a||o;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(a){o=renderer.get(a.name),n=o?o.renderTableHeader||o.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,a,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,a=r,o=r.isRowGroupStatus,{slots:d,editRender:s,cellRender:i,rowGroupNode:c}=n,i=s||i;if(d&&d.default)return renderCellBaseVNs(e,l,r.callSlot(d.default,l,e));if(i){var d=renderer.get(i.name),u=d?d.renderTableDefault||d.renderDefault:null,d=d?d.renderTableCell||d.renderCell:null,d=s?d:u;if(d)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(d.call(r,e,i,Object.assign({$type:s?"edit":"cell"},l))))}let C="";if(o&&c&&t.isAggregate){var u=a.fullColumnFieldData,{showTotal:d,totalMethod:i,contentMethod:c,mapChildrenField:a}=r.computeRowGroupOpts,p=t.groupField,a=(C=t.groupContent,a&&t[a]||[]),g=a.length,u=u[p]||{};let e={$table:r,groupField:p,groupColumn:u?u.column:null,column:n,groupValue:C,children:a,totalValue:g};c&&(C=""+c(e)),d&&(C=getI18n("vxe.table.rowGroupContentTotal",[C,i?i(e):g,g]))}else o&&t.isAggregate||(C=r.getCellLabel(t,n));p=s?s.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[s&&(0,_utils.eqEmptyValue)(C)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(p),1)):e("span",(0,_utils.formatText)(C,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,a=t,{row:o,level:d}=l,n=n.rowGroupExpandedFlag,a=a.rowGroupExpandedMaps,{padding:s,indent:i}=t.computeRowGroupOpts,o=(0,_util.getRowid)(t,o),n=!!n&&!!a[o];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 a=t.treeExpandedFlag,{fullAllDataRowIdData:o,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:x,iconOpen:f,iconClose:m}=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=!!a&&!!d[u],E&&(a=o[u],D=!!s[u],_=c[i],w=!!a.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},[x&&(!E||w?h:h||_)?[e("div",{class:"vxe-cell--tree-btn",on:I},[e("i",{class:D?v||getIcon().TABLE_TREE_LOADED:T?f||getIcon().TABLE_TREE_OPEN:m||getIcon().TABLE_TREE_CLOSE})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderDeepNodeBtn(e,l,r){var{row:t,column:n}=l,n=n.rowGroupNode;return n&&t.isAggregate?[Cell.renderRowGroupBtn(e,l,r)]:[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,a=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=a.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(a.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,a=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,a?r.callSlot(a,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 a=r.selectRadioRow,o=t.slots,{labelField:d,checkMethod:s,visibleMethod:i}=r.computeRadioOpts,c=l.row,u=o?o.default:null,o=o?o.radio:null,a=c===a;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:a,disabled:p,visible:C});return o?renderCellBaseVNs(e,l,r.callSlot(o,i,e)):(s=[],C&&s.push(e("span",{class:["vxe-radio--icon",a?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":a,"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:a,isIndeterminate:o}=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,!a)}),Object.assign(Object.assign({},l),{checked:a,disabled:d,indeterminate:o}));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":a,"is--disabled":d,"is--indeterminate":o}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:g},[e("span",{class:["vxe-checkbox--icon",o?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?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:a}=l;var o=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,x=!p||p({$table:r,row:t}),f=!!C;var m,p={},d=(!a&&(m=(0,_util.getRowid)(r,t),v=!!d&&!!i[m],p.click=e=>{!f&&x&&r.triggerCheckRowEvent(e,l,!v)},C&&(f=!C({$table:r,row:t})),o||s)&&(b=!!c[m]),Object.assign(Object.assign({},l),{checked:v,disabled:f,visible:x,indeterminate:b}));return g?renderCellBaseVNs(e,l,r.callSlot(g,d,e)):(i=[],x&&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":f,"is--indeterminate":b,"is--hidden":!x}],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:a}=l;var o=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,x=!1,f=!g||g({$table:r,row:t}),m=!!p;var h,g={},d=(!a&&(h=(0,_util.getRowid)(r,t),x=!!d&&_xeUtils.default.get(t,C),g.click=e=>{!m&&f&&r.triggerCheckRowEvent(e,l,!x)},p&&(m=!p({$table:r,row:t})),o||s)&&(v=!!i[h]),Object.assign(Object.assign({},l),{checked:x,disabled:m,visible:f,indeterminate:v}));return E?renderCellBaseVNs(e,l,r.callSlot(E,d,e)):(C=[],f&&C.push(e("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:x?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":x,"is--disabled":m,"is--indeterminate":c&&!x?t[c]:v,"is--hidden":!f}],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:a}=l;var o=r.isRowGroupStatus,{rowExpandedMaps:d,rowExpandLazyLoadedMaps:s}=r,{lazy:i,labelField:c,iconLoaded:u,showIcon:C,iconOpen:p,iconClose:g,visibleMethod:E}=r.computeExpandOpts,b=a.slots,v=b?b.default:null,b=b?b.icon:null;let x=!1,f=!1;return o&&n.isAggregate?renderCellBaseVNs(e,l,[]):b?renderCellBaseVNs(e,l,r.callSlot(b,l,e)):(t||(o=(0,_util.getRowid)(r,n),x=!!d[o],i&&(f=!!s[o])),renderCellBaseVNs(e,l,[!C||E&&!E(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":x}],on:{mousedown(e){e.stopPropagation()},click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",f?u||getIcon().TABLE_EXPAND_LOADED:x?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:a,ascTitle:o,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(o)?getI18n("vxe.table.sortAsc"):""+(o||"")},on:a?{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:a?{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 a=r.filterStore,{showIcon:o,iconNone:d,iconMatch:s,iconVisibleMethod:i}=r.computeFilterOpts;return!o||i&&!i(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":a.visible&&a.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:a}=r,o=r.computeEditOpts,{sortable:d,filters:s,editRender:i}=t;let c=!1,u=(a&&(a=_xeUtils.default.get(a,t.field))&&(c=a.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&(u=[c&&o.showAsterisk?e("i",{class:"vxe-cell--required-icon"},[e("i",{class:"vxe-cell--required-icon"})]):renderEmptyElement(r),(0,_utils.isEnableConf)(i)&&o.showIcon?e("i",{class:"vxe-cell--edit-icon"},[e("i",{class:o.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:a}=l,{slots:a,editRender:o,formatter:d}=a,s=renderer.get(o.name),s=s?s.renderTableEdit||s.renderEdit:null,i=Object.assign({$type:"",isEdit:t},l);return t?a&&a.edit?n.callSlot(a.edit,i,e):s?(0,_vn.getSlotVNs)(s.call(n,e,o,i)):[]:a&&a.default?renderCellBaseVNs(e,l,n.callSlot(a.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),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;
@@ -124,7 +124,7 @@ function handleVirtualXVisible($xeTable) {
124
124
  }
125
125
  }
126
126
  let visibleSize = 0;
127
- const toVisibleIndex = Math.max(0, leftIndex < visibleColumn.length ? leftIndex - 2 : 0);
127
+ const toVisibleIndex = leftIndex === visibleColumn.length ? leftIndex : Math.max(0, leftIndex < visibleColumn.length ? leftIndex - 2 : 0);
128
128
  for (let cIndex = toVisibleIndex, cLen = visibleColumn.length; cIndex < cLen; cIndex++) {
129
129
  const column = visibleColumn[cIndex];
130
130
  const colid = column.id;
@@ -2090,7 +2090,7 @@ function handleVirtualYVisible($xeTable) {
2090
2090
  rightIndex = rIndex;
2091
2091
  }
2092
2092
  }
2093
- toVisibleIndex = Math.max(0, leftIndex < afterFullData.length ? leftIndex - 2 : 0);
2093
+ toVisibleIndex = leftIndex === afterFullData.length ? leftIndex : Math.max(0, leftIndex < afterFullData.length ? leftIndex - 2 : 0);
2094
2094
  for (let rIndex = toVisibleIndex, rLen = afterFullData.length; rIndex < rLen; rIndex++) {
2095
2095
  const row = afterFullData[rIndex];
2096
2096
  const rowid = handleGetRowId(row);
@@ -3155,6 +3155,7 @@ function handleGroupData($xeTable, list, rowGroups) {
3155
3155
  const groupField = rgItem.field;
3156
3156
  const groupColumn = $xeTable.getColumnByField(groupField);
3157
3157
  const groupMaps = {};
3158
+ const groupList = [];
3158
3159
  const rowkey = (0, _util.getRowkey)($xeTable);
3159
3160
  list.forEach(row => {
3160
3161
  const cellValue = groupColumn ? $xeTable.getCellLabel(row, groupColumn) : _xeUtils.default.get(row, groupField);
@@ -3174,8 +3175,10 @@ function handleGroupData($xeTable, list, rowGroups) {
3174
3175
  fullData: childFullData,
3175
3176
  treeData: childTreeData
3176
3177
  } = handleGroupData($xeTable, childList, rowGroups.slice(1));
3178
+ const childCount = 0;
3177
3179
  const groupRow = {
3178
3180
  isAggregate: true,
3181
+ childCount,
3179
3182
  groupContent: groupValue,
3180
3183
  groupField,
3181
3184
  [rowField]: (0, _util.getRowUniqueId)(),
@@ -3190,12 +3193,24 @@ function handleGroupData($xeTable, list, rowGroups) {
3190
3193
  if (indeterminateField) {
3191
3194
  groupRow[indeterminateField] = false;
3192
3195
  }
3196
+ groupList.push(groupRow);
3193
3197
  treeData.push(groupRow);
3194
3198
  fullData.push(groupRow);
3195
3199
  if (childFullData.length) {
3196
3200
  fullData.push(...childFullData);
3197
3201
  }
3198
3202
  });
3203
+ _xeUtils.default.lastEach(groupList, groupItem => {
3204
+ let count = 0;
3205
+ _xeUtils.default.each(groupItem[childrenField], row => {
3206
+ if (row.isAggregate) {
3207
+ count += row[childrenField] ? row[childrenField].length : 0;
3208
+ } else {
3209
+ count++;
3210
+ }
3211
+ });
3212
+ groupItem.childCount = count;
3213
+ });
3199
3214
  }
3200
3215
  }
3201
3216
  return {
@@ -3979,7 +3994,9 @@ function updateColumnOffsetLeft($xeTable) {
3979
3994
  const column = visibleColumn[cIndex];
3980
3995
  const colid = column.id;
3981
3996
  const colRest = fullColumnIdData[colid];
3982
- colRest.oLeft = offsetLeft;
3997
+ if (colRest) {
3998
+ colRest.oLeft = offsetLeft;
3999
+ }
3983
4000
  offsetLeft += column.renderWidth;
3984
4001
  }
3985
4002
  }