vxe-table 3.24.0-beta.0 → 3.24.0

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 (73) hide show
  1. package/es/grid/src/grid.js +2 -2
  2. package/es/style.css +1 -1
  3. package/es/table/module/edit/mixin.js +3 -1
  4. package/es/table/module/export/mixin.js +6 -4
  5. package/es/table/module/filter/mixin.js +4 -2
  6. package/es/table/module/filter/panel.js +4 -2
  7. package/es/table/src/body.js +4 -2
  8. package/es/table/src/cell.js +11 -6
  9. package/es/table/src/columnInfo.js +2 -1
  10. package/es/table/src/footer.js +2 -1
  11. package/es/table/src/header.js +5 -3
  12. package/es/table/src/methods.js +7 -4
  13. package/es/table/src/props.js +4 -0
  14. package/es/table/src/table.js +7 -1
  15. package/es/toolbar/src/toolbar.js +5 -4
  16. package/es/ui/index.js +1 -1
  17. package/es/ui/src/log.js +1 -1
  18. package/lib/grid/src/grid.js +2 -2
  19. package/lib/grid/src/grid.min.js +1 -1
  20. package/lib/index.umd.js +66 -36
  21. package/lib/index.umd.min.js +1 -1
  22. package/lib/style.css +1 -1
  23. package/lib/table/module/edit/mixin.js +3 -1
  24. package/lib/table/module/edit/mixin.min.js +1 -1
  25. package/lib/table/module/export/mixin.js +6 -4
  26. package/lib/table/module/export/mixin.min.js +1 -1
  27. package/lib/table/module/filter/mixin.js +4 -2
  28. package/lib/table/module/filter/mixin.min.js +1 -1
  29. package/lib/table/module/filter/panel.js +4 -2
  30. package/lib/table/module/filter/panel.min.js +1 -1
  31. package/lib/table/src/body.js +4 -2
  32. package/lib/table/src/body.min.js +1 -1
  33. package/lib/table/src/cell.js +11 -6
  34. package/lib/table/src/cell.min.js +1 -1
  35. package/lib/table/src/columnInfo.js +2 -1
  36. package/lib/table/src/columnInfo.min.js +1 -1
  37. package/lib/table/src/footer.js +2 -1
  38. package/lib/table/src/footer.min.js +1 -1
  39. package/lib/table/src/header.js +5 -3
  40. package/lib/table/src/header.min.js +1 -1
  41. package/lib/table/src/methods.js +5 -5
  42. package/lib/table/src/methods.min.js +1 -1
  43. package/lib/table/src/props.js +4 -0
  44. package/lib/table/src/props.min.js +1 -1
  45. package/lib/table/src/table.js +7 -1
  46. package/lib/table/src/table.min.js +1 -1
  47. package/lib/toolbar/src/toolbar.js +5 -4
  48. package/lib/toolbar/src/toolbar.min.js +1 -1
  49. package/lib/ui/index.js +1 -1
  50. package/lib/ui/index.min.js +1 -1
  51. package/lib/ui/src/log.js +1 -1
  52. package/lib/ui/src/log.min.js +1 -1
  53. package/package.json +2 -2
  54. package/packages/grid/src/grid.ts +2 -2
  55. package/packages/table/module/edit/mixin.ts +3 -1
  56. package/packages/table/module/export/mixin.ts +6 -4
  57. package/packages/table/module/filter/mixin.ts +6 -4
  58. package/packages/table/module/filter/panel.ts +4 -2
  59. package/packages/table/src/body.ts +4 -2
  60. package/packages/table/src/cell.ts +11 -6
  61. package/packages/table/src/columnInfo.ts +2 -1
  62. package/packages/table/src/footer.ts +2 -1
  63. package/packages/table/src/header.ts +5 -3
  64. package/packages/table/src/methods.ts +7 -4
  65. package/packages/table/src/props.ts +4 -0
  66. package/packages/table/src/table.ts +8 -1
  67. package/packages/toolbar/src/toolbar.ts +5 -4
  68. /package/es/{iconfont.1789131659648.ttf → iconfont.1789914697948.ttf} +0 -0
  69. /package/es/{iconfont.1789131659648.woff → iconfont.1789914697948.woff} +0 -0
  70. /package/es/{iconfont.1789131659648.woff2 → iconfont.1789914697948.woff2} +0 -0
  71. /package/lib/{iconfont.1789131659648.ttf → iconfont.1789914697948.ttf} +0 -0
  72. /package/lib/{iconfont.1789131659648.woff → iconfont.1789914697948.woff} +0 -0
  73. /package/lib/{iconfont.1789131659648.woff2 → iconfont.1789914697948.woff2} +0 -0
@@ -1205,7 +1205,9 @@ var _default = exports.default = {
1205
1205
  } = column;
1206
1206
  const editOpts = $xeTable.computeEditOpts;
1207
1207
  if (editConfig && (0, _utils.isEnableConf)(editRender)) {
1208
- const compRender = renderer.get(editRender.name);
1208
+ const rendererOpts = $xeTable.computeRendererOpts;
1209
+ const renderName = editRender.name;
1210
+ const compRender = renderName ? rendererOpts[renderName] || renderer.get(renderName) : null;
1209
1211
  let autoFocus = editRender.autofocus || editRender.autoFocus;
1210
1212
  let autoSelect = editRender.autoSelect || editRender.autoselect;
1211
1213
  let inputElem = null;
@@ -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{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getConfig,renderer,getI18n}=_ui.VxeUI;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:o}=t;r&&o&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,o))}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),o=t?_xeUtils.default.findTree(d,e=>t===e[c],{children:g}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(n,o)],i=i?i.level:0;let e=o[w],t=o[g];_xeUtils.default.isArray(e)||(e=o[w]=[]),_xeUtils.default.isArray(t)||(t=o[g]=[]),e[f](l),t[f](l);o={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:e,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}else{t&&warnLog("vxe.error.unableInsert"),a[f](l),d[f](l);i={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:d,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}})}function handleInsertRowAt(d,t,e,a){var l=d;let o=d.treeConfig;var r=l.isRowGroupStatus;let{tableFullTreeData:s,afterFullData:i,mergeBodyList:n,tableFullData:u,fullDataRowIdData:c,fullAllDataRowIdData:h,insertRowMaps:g,removeRowMaps:w}=d;var f=d.computeTreeOpts;let{transform:x,parentField:m,rowField:v,mapChildrenField:p}=f,C=f.children||f.childrenField,R=(_xeUtils.default.isArray(t)||(t=[t]),e);if((_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e))&&(f=h[e])&&(R=f.row),!t.length)return Promise.resolve({row:null,rows:[]});d.handlePushStack();let _=d.defineField(t.map(e=>Object.assign(o&&x?{[p]:[],[C]:[]}:{},e))),I=[];if(o&&x&&(I=_xeUtils.default.toArrayTree(_,{key:v,parentKey:m,children:C})),_xeUtils.default.eqNull(R))if(o&&x)insertTreeRow(d,_,!1);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.unshift(e),u.unshift(e)}),n.forEach(e=>{var t=e.row;0<=t&&(e.row=t+_.length)});else if(-1===R)if(o&&x)insertTreeRow(d,_,!0);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.push(e),u.push(e)});else if(o&&x){let n=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:p});if(n){let r=n.parent,o=r?r[p]:s;e=h[(0,_util.getRowid)(d,r)];let i=e?e.level:0;if(I.forEach((e,t)=>{r?e[m]!==r[v]&&(errLog("vxe.error.errProp",[m+"="+e[m],m+"="+r[v]]),e[m]=r[v]):null!==e[m]&&(_xeUtils.default.eqNull(e[m])||errLog("vxe.error.errProp",[m+"="+e[m],"null"]),e[m]=null);let l=n.index+t;a&&(l+=1),o.splice(l,0,e)}),_xeUtils.default.eachTree(I,e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:o,parent:r,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};e[C]&&(e[p]=e[C]),c[t]=l,h[t]=l},{children:C}),r){f=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:C});if(f){t=f.items;let e=f.index;a&&(e+=1),t.splice(e,0,...I)}}}else warnLog("vxe.error.unableInsert"),insertTreeRow(d,_,!0)}else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(R)?R<i.length&&(r=R):r=d.findRowIndexOf(i,R),-1===(r=a?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,..._);e=d.findRowIndexOf(u,R);-1<e?u.splice(e+(a?1:0),0,..._):u.push(..._),n.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+_.length:(a?t+l>=r:t+l>r)&&(e.rowspan=l+_.length)})}f=e=>{var t=(0,_util.getRowid)(d,e);w[t]?(delete w[t],g[t]&&delete g[t]):g[t]=e};return o&&x?_xeUtils.default.eachTree(I,f,{children:p}):_.forEach(f),l.removeRowFlag++,l.insertRowFlag++,d.cacheRowMap(!1),d.updateScrollYStatus(),d.handleTableData(o&&x),o&&x||d.updateAfterDataIndex(),d.updateFooter(),d.handleUpdateBodyMerge(),d.checkSelectionStatus(),l.scrollYLoad&&d.updateScrollYSpace(),d.$nextTick().then(()=>(d.updateCellAreas(),d.recalculate(!0))).then(()=>({row:_.length?_[_.length-1]:null,rows:_}))}function handleInsertChildRowAt(e,l,r,o,i){var n=e.treeConfig,d=e.fullAllDataRowIdData;let{transform:t,rowField:a,parentField:s}=e.computeTreeOpts;if(n&&t){_xeUtils.default.isArray(l)||(l=[l]);let t=r;return(_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(n=d[r])&&(t=n.row),handleInsertRowAt(e,l.map(e=>Object.assign({},e,{[s]:t[a]})),o,i)}return 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:o}=r,{row:i,column:n}=r,d=e.computeValidOpts;if(i||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,i))return e.$nextTick();syncActivedCell(e),e.updateFooter(),r.args=null,r.row=null,r.column=null,e.dispatchEvent("edit-closed",{row:i,rowIndex:e.getRowIndex(i),$rowIndex:e.getVMRowIndex(i),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return o.row=null,o.column=null,d.autoClear&&("full"!==d.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,e,r,o){let i=l.$xeGrid,n=l.$xeGantt;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}=e;var f=w.editRender;let{isFocus:x,isPos:m,isClear:v}=o;var o=e.cell||l.getCellElement(g,w),p=u.beforeEditMethod||u.activeMethod;let C=Object.assign(Object.assign({},e),{cell:o});if(o&&(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({},C),{$table:l,$grid:i,$gantt:n}))){d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),a.column&&handleClearEdit(l,r),t="edit-activated",w.renderHeight=o.offsetHeight,a.args=C,a.row=g,a.column=w,l.handlePushStack(),v&&(0,_util.setCellValue)(g,w,null),"row"===c?s.forEach(e=>getEditColumnModel(g,e)):getEditColumnModel(g,w);let e=u.afterEditMethod;l.$nextTick(()=>{x&&l.handleFocus(C,r),e&&e(Object.assign(Object.assign({},C),{$table:l,$grid:i,$gantt:n}))})}l.dispatchEvent(t,{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},r),"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)},r)}else{e=a.column;d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),e&&e!==w&&(t=e.model,t.update&&(0,_util.setCellValue)(g,e,t.value),l.clearValidate)&&l.clearValidate(g,w),w.renderHeight=o.offsetHeight,a.args=C,a.column=w,m&&setTimeout(()=>{l.handleFocus(C,r)})}h.column=null,h.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let o=t;var i=t.editConfig,n=r.isPos;let d=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&d&&(0,_utils.isEnableConf)(i)&&(0,_utils.isEnableConf)(d.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(n?t.scrollToRow(l,d):null).then(()=>{var e=t.getCellElement(l,d);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),$rowIndex:t.getVMRowIndex(l),_rowIndex:t.getVTRowIndex(l),column:d,columnIndex:t.getColumnIndex(d),$columnIndex:t.getVMColumnIndex(d),_columnIndex:t.getVTColumnIndex(d),cell:e,$table:t},null,r),o._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 o=this;var t=o,l=o,r=o,t=t.treeConfig,{editStore:i,isRowGroupStatus:n}=l;let{tableFullTreeData:d,selectCheckboxMaps:a,afterFullData:s,mergeBodyList:u,tableFullData:c,pendingRowMaps:h,insertRowMaps:g,removeRowMaps:w}=r;var f=o.computeCheckboxOpts,x=o.computeTreeOpts;let{transform:m,mapChildrenField:v}=x,p=x.children||x.childrenField;x=i.actived,i=f.checkField;let C=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=c,e.length?(o.handlePushStack(),e.forEach(e=>{var t;o.isInsertByRow(e)||(t=(0,_util.getRowid)(o,e),w[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);a[e]&&delete a[e]}),l.updateCheckboxFlag++),c===e?(e=C=c.slice(0),r.tableFullData=[],r.afterFullData=[],o.clearMergeCells()):t&&m?e.forEach(e=>{let t=(0,_util.getRowid)(o,e);var l=_xeUtils.default.findTree(d,e=>t===(0,_util.getRowid)(o,e),{children:v}),l=(l&&(l=l.items.splice(l.index,1),C.push(l[0])),_xeUtils.default.findTree(d,e=>t===(0,_util.getRowid)(o,e),{children:p})),l=(l&&l.items.splice(l.index,1),o.findRowIndexOf(s,e));-1<l&&s.splice(l,1)}):n?warnLog(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=o.findRowIndexOf(c,e);-1<t&&(t=c.splice(t,1),C.push(t[0]));let r=o.findRowIndexOf(s,e);-1<r&&(u.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),s.splice(r,1))}),x.row&&-1<o.findRowIndexOf(e,x.row)&&o.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(o,e);g[e]&&delete g[e],h[e]&&delete h[e]}),l.removeRowFlag++,l.insertRowFlag++,l.pendingRowFlag++,o.cacheRowMap(!1),o.handleTableData(t&&m),o.updateFooter(),o.handleUpdateBodyMerge(),t&&m||o.updateAfterDataIndex(),o.checkSelectionStatus(),l.scrollYLoad&&o.updateScrollYSpace(),o.$nextTick().then(()=>(o.updateCellAreas(),o.recalculate(!0))).then(()=>({row:C.length?C[C.length-1]:null,rows:C}))):Promise.resolve({row:null,rows:[]})},_removeCheckboxRow(){let t=this;return t.remove(t.getCheckboxRecords()).then(e=>(t.clearCheckboxRow(),e))},_removeRadioRow(){let t=this;var e=t.getRadioRecord();return t.remove(e||[]).then(e=>(t.clearRadioRow(),e))},_removeCurrentRow(){let t=this;var e=t.getCurrentRecord();return t.remove(e||[]).then(e=>(t.clearCurrentRow(),e))},_getRecordset(){let l=this;var e=l.getRemoveRecords(),t=l.getPendingRecords();let r=e.concat(t);var o=l.getUpdateRecords().filter(t=>!r.some(e=>l.eqRow(e,t)));return{insertRecords:l.getInsertRecords(),removeRecords:e,updateRecords:o,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,{tableFullData:r,tableFullTreeData:o}=t,i=t.computeTreeOpts;let n=[];return e&&(syncActivedCell(t),l?(e=i.children||i.childrenField,_xeUtils.default.eachTree(o,e=>{t.isUpdateByRow(e)&&n.push(e)},{children:e})):r.forEach(e=>{t.isUpdateByRow(e)&&n.push(e)})),n},handleEdit(e,t,l){return handleEditActive(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},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 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(){var e=(warnLog("vxe.error.delFunc",["getActiveRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditRecord(){var e=(warnLog("vxe.error.delFunc",["getEditRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditCell(){var e=this.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,rowIndex:this.getRowIndex(e),column:t,columnIndex:this.getColumnIndex(t)}:null},_isActiveByRow(e){return warnLog("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleCellFocus(l,r){var o=this.editConfig,i=r.column,i=i.editRender,n=this.computeEditOpts;if(o&&(0,_utils.isEnableConf)(i)){o=renderer.get(i.name);let e=i.autofocus||i.autoFocus;i=i.autoSelect||i.autoselect;let t=null;return n.autoFocus&&(!e&&o&&(e=o.tableAutoFocus||o.tableAutofocus||o.autofocus),!i&&o&&(o.tableAutoSelect||o.autoselect),_xeUtils.default.isFunction(e)?t=e(r):e&&(t=!0===e?l.querySelector("input,textarea"):l.querySelector(e))&&t.focus()),t}return null},handleFocus(e){var t,{row:l,column:r,cell:o}=e,i=r.editRender,n=this.computeEditOpts;(0,_utils.isEnableConf)(i)&&(t=_xeUtils.default.browse(),i=i.autoSelect||i.autoselect,(o=this.handleCellFocus(o,e))?i?o.select():t.msie&&((e=o.createTextRange()).collapse(!1),e.select()):n.autoPos&&!r.fixed&&this.scrollToRow(l,r))},_setActiveRow(e){return warnLog("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t,l){var r=this.visibleColumn;let o=_xeUtils.default.find(r,e=>(0,_utils.isEnableConf)(e.editRender)),i=!1;return t&&(i=!0)!==t&&(o=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,o,Object.assign({isPos:i,isFocus:i},l))},_setActiveCell(e,t){return warnLog("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t,l){return handleEditCell(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},_setSelectCell(e,t){var l=this,r=l.tableData,o=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&-1<(o=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),o={$table:l,row:e,rowIndex:o,$rowIndex:l.getVMRowIndex(e),_rowIndex:l.getVTRowIndex(e),column:t,columnIndex:l.getColumnIndex(t),$columnIndex:l.getVMColumnIndex(t),_columnIndex:l.getVTColumnIndex(t),cell:r},l.handleSelected(o,null)),l.$nextTick()},handleSelected(t,e){let l=this;var r=l,o=l;let{mouseConfig:i,editConfig:n}=r;r=o.editStore,o=l.computeMouseOpts;let d=l.computeEditOpts,{actived:a,selected:s}=r,{row:u,column:c}=t,h=i&&o.selected;return!h||s.row===u&&s.column===c||(a.row!==u||"cell"===d.mode&&a.column!==c)&&(handleClearEdit(l,e),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),s.args=t,s.row=u,s.column=c,h&&l.addCellSelectedClass(),l.focus(),n&&d.isReuseKeep&&(0,_utils.isEnableConf)(d)&&(0,_utils.isEnableConf)(c.editRender)&&setTimeout(()=>{var e=l.getCellElement(u,c);e&&e.querySelector(".vxe-reusekeep-control")&&(t.cell=e,l.handleCellFocus(e,t))},0),e)&&l.dispatchEvent("cell-selected",t,e),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}: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,e=e["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{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getConfig,renderer,getI18n}=_ui.VxeUI;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:o}=t;r&&o&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,o))}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),o=t?_xeUtils.default.findTree(d,e=>t===e[c],{children:g}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(n,o)],i=i?i.level:0;let e=o[w],t=o[g];_xeUtils.default.isArray(e)||(e=o[w]=[]),_xeUtils.default.isArray(t)||(t=o[g]=[]),e[f](l),t[f](l);o={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:e,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}else{t&&warnLog("vxe.error.unableInsert"),a[f](l),d[f](l);i={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:d,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}})}function handleInsertRowAt(d,t,e,a){var l=d;let o=d.treeConfig;var r=l.isRowGroupStatus;let{tableFullTreeData:s,afterFullData:i,mergeBodyList:n,tableFullData:u,fullDataRowIdData:c,fullAllDataRowIdData:h,insertRowMaps:g,removeRowMaps:w}=d;var f=d.computeTreeOpts;let{transform:x,parentField:m,rowField:v,mapChildrenField:p}=f,C=f.children||f.childrenField,R=(_xeUtils.default.isArray(t)||(t=[t]),e);if((_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e))&&(f=h[e])&&(R=f.row),!t.length)return Promise.resolve({row:null,rows:[]});d.handlePushStack();let _=d.defineField(t.map(e=>Object.assign(o&&x?{[p]:[],[C]:[]}:{},e))),I=[];if(o&&x&&(I=_xeUtils.default.toArrayTree(_,{key:v,parentKey:m,children:C})),_xeUtils.default.eqNull(R))if(o&&x)insertTreeRow(d,_,!1);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.unshift(e),u.unshift(e)}),n.forEach(e=>{var t=e.row;0<=t&&(e.row=t+_.length)});else if(-1===R)if(o&&x)insertTreeRow(d,_,!0);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.push(e),u.push(e)});else if(o&&x){let n=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:p});if(n){let r=n.parent,o=r?r[p]:s;e=h[(0,_util.getRowid)(d,r)];let i=e?e.level:0;if(I.forEach((e,t)=>{r?e[m]!==r[v]&&(errLog("vxe.error.errProp",[m+"="+e[m],m+"="+r[v]]),e[m]=r[v]):null!==e[m]&&(_xeUtils.default.eqNull(e[m])||errLog("vxe.error.errProp",[m+"="+e[m],"null"]),e[m]=null);let l=n.index+t;a&&(l+=1),o.splice(l,0,e)}),_xeUtils.default.eachTree(I,e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:o,parent:r,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};e[C]&&(e[p]=e[C]),c[t]=l,h[t]=l},{children:C}),r){f=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:C});if(f){t=f.items;let e=f.index;a&&(e+=1),t.splice(e,0,...I)}}}else warnLog("vxe.error.unableInsert"),insertTreeRow(d,_,!0)}else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(R)?R<i.length&&(r=R):r=d.findRowIndexOf(i,R),-1===(r=a?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,..._);e=d.findRowIndexOf(u,R);-1<e?u.splice(e+(a?1:0),0,..._):u.push(..._),n.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+_.length:(a?t+l>=r:t+l>r)&&(e.rowspan=l+_.length)})}f=e=>{var t=(0,_util.getRowid)(d,e);w[t]?(delete w[t],g[t]&&delete g[t]):g[t]=e};return o&&x?_xeUtils.default.eachTree(I,f,{children:p}):_.forEach(f),l.removeRowFlag++,l.insertRowFlag++,d.cacheRowMap(!1),d.updateScrollYStatus(),d.handleTableData(o&&x),o&&x||d.updateAfterDataIndex(),d.updateFooter(),d.handleUpdateBodyMerge(),d.checkSelectionStatus(),l.scrollYLoad&&d.updateScrollYSpace(),d.$nextTick().then(()=>(d.updateCellAreas(),d.recalculate(!0))).then(()=>({row:_.length?_[_.length-1]:null,rows:_}))}function handleInsertChildRowAt(e,l,r,o,i){var n=e.treeConfig,d=e.fullAllDataRowIdData;let{transform:t,rowField:a,parentField:s}=e.computeTreeOpts;if(n&&t){_xeUtils.default.isArray(l)||(l=[l]);let t=r;return(_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(n=d[r])&&(t=n.row),handleInsertRowAt(e,l.map(e=>Object.assign({},e,{[s]:t[a]})),o,i)}return 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:o}=r,{row:i,column:n}=r,d=e.computeValidOpts;if(i||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,i))return e.$nextTick();syncActivedCell(e),e.updateFooter(),r.args=null,r.row=null,r.column=null,e.dispatchEvent("edit-closed",{row:i,rowIndex:e.getRowIndex(i),$rowIndex:e.getVMRowIndex(i),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return o.row=null,o.column=null,d.autoClear&&("full"!==d.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,e,r,o){let i=l.$xeGrid,n=l.$xeGantt;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}=e;var f=w.editRender;let{isFocus:x,isPos:m,isClear:v}=o;var o=e.cell||l.getCellElement(g,w),p=u.beforeEditMethod||u.activeMethod;let C=Object.assign(Object.assign({},e),{cell:o});if(o&&(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({},C),{$table:l,$grid:i,$gantt:n}))){d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),a.column&&handleClearEdit(l,r),t="edit-activated",w.renderHeight=o.offsetHeight,a.args=C,a.row=g,a.column=w,l.handlePushStack(),v&&(0,_util.setCellValue)(g,w,null),"row"===c?s.forEach(e=>getEditColumnModel(g,e)):getEditColumnModel(g,w);let e=u.afterEditMethod;l.$nextTick(()=>{x&&l.handleFocus(C,r),e&&e(Object.assign(Object.assign({},C),{$table:l,$grid:i,$gantt:n}))})}l.dispatchEvent(t,{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},r),"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)},r)}else{e=a.column;d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),e&&e!==w&&(t=e.model,t.update&&(0,_util.setCellValue)(g,e,t.value),l.clearValidate)&&l.clearValidate(g,w),w.renderHeight=o.offsetHeight,a.args=C,a.column=w,m&&setTimeout(()=>{l.handleFocus(C,r)})}h.column=null,h.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let o=t;var i=t.editConfig,n=r.isPos;let d=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&d&&(0,_utils.isEnableConf)(i)&&(0,_utils.isEnableConf)(d.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(n?t.scrollToRow(l,d):null).then(()=>{var e=t.getCellElement(l,d);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),$rowIndex:t.getVMRowIndex(l),_rowIndex:t.getVTRowIndex(l),column:d,columnIndex:t.getColumnIndex(d),$columnIndex:t.getVMColumnIndex(d),_columnIndex:t.getVTColumnIndex(d),cell:e,$table:t},null,r),o._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 o=this;var t=o,l=o,r=o,t=t.treeConfig,{editStore:i,isRowGroupStatus:n}=l;let{tableFullTreeData:d,selectCheckboxMaps:a,afterFullData:s,mergeBodyList:u,tableFullData:c,pendingRowMaps:h,insertRowMaps:g,removeRowMaps:w}=r;var f=o.computeCheckboxOpts,x=o.computeTreeOpts;let{transform:m,mapChildrenField:v}=x,p=x.children||x.childrenField;x=i.actived,i=f.checkField;let C=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=c,e.length?(o.handlePushStack(),e.forEach(e=>{var t;o.isInsertByRow(e)||(t=(0,_util.getRowid)(o,e),w[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);a[e]&&delete a[e]}),l.updateCheckboxFlag++),c===e?(e=C=c.slice(0),r.tableFullData=[],r.afterFullData=[],o.clearMergeCells()):t&&m?e.forEach(e=>{let t=(0,_util.getRowid)(o,e);var l=_xeUtils.default.findTree(d,e=>t===(0,_util.getRowid)(o,e),{children:v}),l=(l&&(l=l.items.splice(l.index,1),C.push(l[0])),_xeUtils.default.findTree(d,e=>t===(0,_util.getRowid)(o,e),{children:p})),l=(l&&l.items.splice(l.index,1),o.findRowIndexOf(s,e));-1<l&&s.splice(l,1)}):n?warnLog(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=o.findRowIndexOf(c,e);-1<t&&(t=c.splice(t,1),C.push(t[0]));let r=o.findRowIndexOf(s,e);-1<r&&(u.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),s.splice(r,1))}),x.row&&-1<o.findRowIndexOf(e,x.row)&&o.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(o,e);g[e]&&delete g[e],h[e]&&delete h[e]}),l.removeRowFlag++,l.insertRowFlag++,l.pendingRowFlag++,o.cacheRowMap(!1),o.handleTableData(t&&m),o.updateFooter(),o.handleUpdateBodyMerge(),t&&m||o.updateAfterDataIndex(),o.checkSelectionStatus(),l.scrollYLoad&&o.updateScrollYSpace(),o.$nextTick().then(()=>(o.updateCellAreas(),o.recalculate(!0))).then(()=>({row:C.length?C[C.length-1]:null,rows:C}))):Promise.resolve({row:null,rows:[]})},_removeCheckboxRow(){let t=this;return t.remove(t.getCheckboxRecords()).then(e=>(t.clearCheckboxRow(),e))},_removeRadioRow(){let t=this;var e=t.getRadioRecord();return t.remove(e||[]).then(e=>(t.clearRadioRow(),e))},_removeCurrentRow(){let t=this;var e=t.getCurrentRecord();return t.remove(e||[]).then(e=>(t.clearCurrentRow(),e))},_getRecordset(){let l=this;var e=l.getRemoveRecords(),t=l.getPendingRecords();let r=e.concat(t);var o=l.getUpdateRecords().filter(t=>!r.some(e=>l.eqRow(e,t)));return{insertRecords:l.getInsertRecords(),removeRecords:e,updateRecords:o,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,{tableFullData:r,tableFullTreeData:o}=t,i=t.computeTreeOpts;let n=[];return e&&(syncActivedCell(t),l?(e=i.children||i.childrenField,_xeUtils.default.eachTree(o,e=>{t.isUpdateByRow(e)&&n.push(e)},{children:e})):r.forEach(e=>{t.isUpdateByRow(e)&&n.push(e)})),n},handleEdit(e,t,l){return handleEditActive(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},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 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(){var e=(warnLog("vxe.error.delFunc",["getActiveRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditRecord(){var e=(warnLog("vxe.error.delFunc",["getEditRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditCell(){var e=this.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,rowIndex:this.getRowIndex(e),column:t,columnIndex:this.getColumnIndex(t)}:null},_isActiveByRow(e){return warnLog("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleCellFocus(l,r){var o=this.editConfig,i=r.column,i=i.editRender,n=this.computeEditOpts;if(o&&(0,_utils.isEnableConf)(i)){var o=this.computeRendererOpts,d=i.name,o=d?o[d]||renderer.get(d):null;let e=i.autofocus||i.autoFocus;d=i.autoSelect||i.autoselect;let t=null;return n.autoFocus&&(!e&&o&&(e=o.tableAutoFocus||o.tableAutofocus||o.autofocus),!d&&o&&(o.tableAutoSelect||o.autoselect),_xeUtils.default.isFunction(e)?t=e(r):e&&(t=!0===e?l.querySelector("input,textarea"):l.querySelector(e))&&t.focus()),t}return null},handleFocus(e){var t,{row:l,column:r,cell:o}=e,i=r.editRender,n=this.computeEditOpts;(0,_utils.isEnableConf)(i)&&(t=_xeUtils.default.browse(),i=i.autoSelect||i.autoselect,(o=this.handleCellFocus(o,e))?i?o.select():t.msie&&((e=o.createTextRange()).collapse(!1),e.select()):n.autoPos&&!r.fixed&&this.scrollToRow(l,r))},_setActiveRow(e){return warnLog("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t,l){var r=this.visibleColumn;let o=_xeUtils.default.find(r,e=>(0,_utils.isEnableConf)(e.editRender)),i=!1;return t&&(i=!0)!==t&&(o=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,o,Object.assign({isPos:i,isFocus:i},l))},_setActiveCell(e,t){return warnLog("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t,l){return handleEditCell(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},_setSelectCell(e,t){var l=this,r=l.tableData,o=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&-1<(o=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),o={$table:l,row:e,rowIndex:o,$rowIndex:l.getVMRowIndex(e),_rowIndex:l.getVTRowIndex(e),column:t,columnIndex:l.getColumnIndex(t),$columnIndex:l.getVMColumnIndex(t),_columnIndex:l.getVTColumnIndex(t),cell:r},l.handleSelected(o,null)),l.$nextTick()},handleSelected(t,e){let l=this;var r=l,o=l;let{mouseConfig:i,editConfig:n}=r;r=o.editStore,o=l.computeMouseOpts;let d=l.computeEditOpts,{actived:a,selected:s}=r,{row:u,column:c}=t,h=i&&o.selected;return!h||s.row===u&&s.column===c||(a.row!==u||"cell"===d.mode&&a.column!==c)&&(handleClearEdit(l,e),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),s.args=t,s.row=u,s.column=c,h&&l.addCellSelectedClass(),l.focus(),n&&d.isReuseKeep&&(0,_utils.isEnableConf)(d)&&(0,_utils.isEnableConf)(c.editRender)&&setTimeout(()=>{var e=l.getCellElement(u,c);e&&e.querySelector(".vxe-reusekeep-control")&&(t.cell=e,l.handleCellFocus(e,t))},0),e)&&l.dispatchEvent("cell-selected",t,e),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}: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,e=e["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")}}};
@@ -83,6 +83,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
83
83
  const treeOpts = $xeTable.computeTreeOpts;
84
84
  const columnOpts = $xeTable.computeColumnOpts;
85
85
  const aggregateOpts = $xeTable.computeAggregateOpts;
86
+ const rendererOpts = $xeTable.computeRendererOpts;
86
87
  if (!htmlCellElem) {
87
88
  htmlCellElem = document.createElement('div');
88
89
  }
@@ -131,7 +132,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
131
132
  const renderOpts = editRender || cellRender;
132
133
  let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
133
134
  if (!bodyExportMethod && renderOpts && renderOpts.name) {
134
- const compConf = renderer.get(renderOpts.name);
135
+ const compConf = rendererOpts[renderOpts.name] || renderer.get(renderOpts.name);
135
136
  if (compConf) {
136
137
  bodyExportMethod = compConf.tableExportMethod || compConf.exportMethod;
137
138
  }
@@ -289,7 +290,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
289
290
  const renderOpts = column.editRender || column.cellRender;
290
291
  let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
291
292
  if (!bodyExportMethod && renderOpts && renderOpts.name) {
292
- const compConf = renderer.get(renderOpts.name);
293
+ const compConf = rendererOpts[renderOpts.name] || renderer.get(renderOpts.name);
293
294
  if (compConf) {
294
295
  bodyExportMethod = compConf.tableExportMethod || compConf.exportMethod;
295
296
  }
@@ -370,7 +371,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
370
371
  const renderOpts = column.editRender || column.cellRender;
371
372
  let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
372
373
  if (!bodyExportMethod && renderOpts && renderOpts.name) {
373
- const compConf = renderer.get(renderOpts.name);
374
+ const compConf = rendererOpts[renderOpts.name] || renderer.get(renderOpts.name);
374
375
  if (compConf) {
375
376
  bodyExportMethod = compConf.tableExportMethod || compConf.exportMethod;
376
377
  }
@@ -461,10 +462,11 @@ function getHeaderTitle($xeTable, opts, column) {
461
462
  }
462
463
  function getFooterCellValue($xeTable, opts, row, column) {
463
464
  const columnOpts = $xeTable.computeColumnOpts;
465
+ const rendererOpts = $xeTable.computeRendererOpts;
464
466
  const renderOpts = column.editRender || column.cellRender;
465
467
  let footLabelMethod = column.footerExportMethod;
466
468
  if (!footLabelMethod && renderOpts && renderOpts.name) {
467
- const compConf = renderer.get(renderOpts.name);
469
+ const compConf = rendererOpts[renderOpts.name] || renderer.get(renderOpts.name);
468
470
  if (compConf) {
469
471
  footLabelMethod = compConf.tableFooterExportMethod || compConf.footerExportMethod || compConf.footerCellExportMethod;
470
472
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function getSeq(e,t,l,o,r,a){var i=e.computeSeqOpts.seqMethod||r.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),_rowIndex:e.getVTRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),_columnIndex:e.getVTColumnIndex(r),$columnIndex:a}):t}function defaultFilterExportColumn(e){return!!e.field||-1===["seq","checkbox","radio"].indexOf(e.type||"")}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(F,M,k,e){let{isTreeAllExpanded:i,isRowGroupAllExpanded:d,mode:U}=M;var t=F.treeConfig,l=F.isRowGroupStatus;let{fullColumnFieldData:I,fullAllDataRowIdData:x}=F,j=F.computeRadioOpts,L=F.computeCheckboxOpts;var o=F.computeTreeOpts;let O=F.computeColumnOpts;var r=F.computeAggregateOpts;htmlCellElem=htmlCellElem||document.createElement("div");let V=(0,_util.createHandleGetRowId)(F).handleGetRowId;if(l){let{mode:_,showTotal:$,totalMethod:y,countFields:C,contentMethod:w,formatValuesMethod:E,mapChildrenField:T}=r,i=[],n={},s={};return _xeUtils.default.eachTree(e,(e,f,t,b,l,o)=>{let v=e._row||e;var r=V(v);if(!s[r]){e=l&&l._row?l._row:l,l=e?V(e):"";if(d||!e||n[l]&&F.isRowExpandByRow(e)){var a=T&&v[T]&&v[T].length;let x={_row:v,_level:o.length-1,_hasChild:a,_expand:a&&F.isRowExpandByRow(v)};k.forEach((e,t)=>{var{field:l,editRender:o,cellRender:r,aggFunc:a,rowGroupNode:i}=e;let n="";var s,d,c,u,p,h,o=o||r;let m=e.exportMethod||O.exportMethod;if(m=(m=!m&&o&&o.name&&(r=renderer.get(o.name))?r.tableExportMethod||r.exportMethod:m)||O.exportMethod)n=m({$table:F,row:v,column:e,options:M});else switch(e.type){case"seq":var g=b.map((e,t)=>t%2==0?Number(e)+1:".").join("");n="all"===U?g:getSeq(F,g,v,f,e,t);break;case"checkbox":n=toBooleanValue(F.isCheckedByCheckboxRow(v)),x._checkboxLabel=L.labelField?_xeUtils.default.get(v,L.labelField):"",x._checkboxDisabled=L.checkMethod&&!L.checkMethod({$table:F,row:v});break;case"radio":n=toBooleanValue(F.isCheckedByRadioRow(v)),x._radioLabel=j.labelField?_xeUtils.default.get(v,j.labelField):"",x._radioDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:v});break;default:l&&v.isAggregate?(s=(s=(g=v).aggData)?s[l]:null,u=g.groupField,d=g.groupContent,h=T&&g[T]||[],c=g.childCount,p=I[u]||{},u={$table:F,groupField:u,groupColumn:p?p.column:null,column:e,groupValue:d,childList:h,childCount:c,aggValue:null,children:h,totalValue:c},("column"===_?l===g.groupField:i)?(n=d,w&&(n=""+w(u)),$&&(n=getI18n("vxe.table.rowGroupContentTotal",[n,y?y(u):c,c]))):F.getPivotTableAggregateCellAggValue?(p={$table:F,row:v,column:e},n=F.getPivotTableAggregateCellAggValue(p)):(!0===a||C&&C.includes(l))&&(n=s?s.value:c,u.aggValue=n,E)&&(n=E(u))):M.original?n=(0,_util.getCellValue)(v,e):(n=F.getCellLabel(v,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(h=F.getCellElement(v,e))&&!(0,_dom.hasClass)(h,"is--progress")&&(n=h.innerText.trim()))}x[e.id]=toStringValue(n)}),s[r]=!0,l&&(n[l]=!0),i.push(Object.assign(x,v))}}},{children:T}),i}if(t){let u=o.seqMode,p=o.children||o.childrenField,h=[],m={},g={};return _xeUtils.default.eachTree(e,(e,s,t,d,l,o)=>{let c=e._row||e;var r=V(c);if(!g[r]){e=l&&l._row?l._row:l,l=e?V(e):"";if(i||!e||m[l]&&F.isTreeExpandByRow(e)){var a=c[p]&&c[p].length;let i={_row:c,_level:o.length-1,_hasChild:a,_expand:a&&F.isTreeExpandByRow(c)},n=x[r]||{};k.forEach((t,l)=>{let o="";var e,r=t.editRender||t.cellRender;let a=t.exportMethod||O.exportMethod;if(a=(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod:a)||O.exportMethod)o=a({$table:F,row:c,column:t,options:M});else switch(t.type){case"seq":{let e=d.map((e,t)=>t%2==0?Number(e)+1:".").join("");"increasing"===u&&(e=n?n._index+1:-1),o="all"===U?e:getSeq(F,e,c,s,t,l);break}case"checkbox":o=toBooleanValue(F.isCheckedByCheckboxRow(c)),i._checkboxLabel=L.labelField?_xeUtils.default.get(c,L.labelField):"",i._checkboxDisabled=L.checkMethod&&!L.checkMethod({$table:F,row:c});break;case"radio":o=toBooleanValue(F.isCheckedByRadioRow(c)),i._radioLabel=j.labelField?_xeUtils.default.get(c,j.labelField):"",i._radioDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:c});break;default:M.original?o=(0,_util.getCellValue)(c,t):(o=F.getCellLabel(c,t),"html"===t.type?(htmlCellElem.innerHTML=o,o=htmlCellElem.innerText.trim()):(e=F.getCellElement(c,t))&&!(0,_dom.hasClass)(e,"is--progress")&&(o=e.innerText.trim()))}i[t.id]=toStringValue(o)}),g[r]=!0,l&&(m[l]=!0),h.push(Object.assign(i,c))}}},{children:p}),h}return e.map((i,n)=>{let s={_row:i};return k.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||O.exportMethod;if(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:F,row:i,column:e,options:M});else switch(e.type){case"seq":var a=n+1;l="all"===U?a:getSeq(F,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(i)),s._checkboxLabel=L.labelField?_xeUtils.default.get(i,L.labelField):"",s._checkboxDisabled=L.checkMethod&&!L.checkMethod({$table:F,row:i});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(i)),s._radioLabel=j.labelField?_xeUtils.default.get(i,j.labelField):"",s._radioDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:i});break;default:M.original?l=(0,_util.getCellValue)(i,e):(l=F.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(l,e){let o=l.$xeGrid,r=l.$xeGantt,{columns:t,dataFilterMethod:a}=e,i=e.data;return a&&(i=i.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,i)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.isTitle?e.getHeaderCellLabel(l):l.field)||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,a=o.editRender||o.cellRender;let i=o.footerExportMethod;return(i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||r.footerExportMethod)?(a=e.getVTColumnIndex(o),i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:o,options:t})):e.getFooterCellLabel(l,o)}function getFooterData(l,e,t){let o=l.$xeGrid,r=l.$xeGantt,a=e.footerFilterMethod;return a?t.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:_xeUtils.default.eqNull(e)?"":e}function toCsv(l,o,e,t){var r=l;let a=csvBOM;return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),a}function toTxt(l,o,e,t){var r=l;let a="";return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function getCustomColKey(e){return`${e.field||""}:`+(e.type||"")}function toHtml(c,u,e,t){var l=c;let{id:d,border:o,treeConfig:r,headerAlign:a,align:p,footerAlign:h,showOverflow:m,showHeaderOverflow:i}=c,{isAllSelected:n,isIndeterminate:s}=l,{mergeBodyCellMaps:g,mergeFooterCellMaps:x}=c,f=c.computeTreeOpts,{print:b,widthMode:v,isHeader:_,isFooter:$,isColgroup:y,isMerge:C,colgroups:w,_columnConfs:E,original:T}=u,F="auto"===v,M="scale"===v,k=!F&&!M,U={},I=(E&&E.forEach(e=>{(0,_util.isColumnInfo)(e)||(e.field||e.type)&&e.width&&(U[getCustomColKey(e)]=e.width)}),{}),j={};if(b){let r=0;e.forEach(e=>{r+=e.renderWidth}),w&&w.forEach(e=>{e.forEach(o=>{if(o.childNodes&&o.childNodes.length){let t=0,l=0;_xeUtils.default.eachTree([o],e=>{e.childNodes&&o.childNodes.length||l++;e=j[e.id];t+=e||0},{children:"childNodes"});var e=t-l;I[o.id]=e,j[o.id]=_xeUtils.default.floor(e/r*180,2)}})}),e.forEach(e=>{var t=e.renderWidth;e.width&&(I[e.id]=t),j[e.id]=_xeUtils.default.floor(t/r*180,2)})}let L=e=>{var t=getCustomColKey(e),t=U[t];return t?"width:"+(0,_dom.toCssUnit)(t):F||k?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""},O="check-all",V=[`<table class="${["vxe-table","border--"+toTableBorder(o),b?"is--print":"",F?"is--auto-width":"",M?"is--scale-width":"",k?"is--default-width":"",_?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>{return`<col style="${e=e,t=getCustomColKey(e),t=U[t],t?"width:"+(0,_dom.toCssUnit)(t):F?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""}">`;var t}).join("")}</colgroup>`];_&&(V.push("<thead>"),y&&!T?w.forEach(e=>{V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),V.push("</thead>")),t.length&&(V.push("<tbody>"),r?t.forEach(r=>{V.push("<tr>"+e.map(t=>{var e=t.align||p,l=hasEllipsis(c,t,"showOverflow",m)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{V.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||p,o=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],t=s[t];let r=1,a=1;if(C){var i=c.getVTRowIndex(s._row),n=c.getVTColumnIndex(e),i=g[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return l&&o.push("col--"+l),"radio"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="radio" name="radio_${d}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}" title="${t}"><div style="${L(e)}">${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),V.push("</tbody>")),$&&(t=l.footerTableData,(l=getFooterData(c,u,t)).length)&&(V.push("<tfoot>"),l.forEach((s,d)=>{V.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||h||p,l=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],o=getFooterCellValue(c,u,s,e);let r=1,a=1;if(C){var i=d,n=c.getVTColumnIndex(e),i=x[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return t&&l.push("col--"+t),`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div style="${L(e)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),V.push("</tfoot>"));t=!n&&s?`<script>(function(){var a=document.querySelector(".${O}");if(a){a.indeterminate=true}})()</script>`:"";return V.push("</table>",t),F?V.join(""):(0,_util2.createHtmlPage)(u,V.join(""))}function toXML(l,o,e,t){var r=l;let a=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{a+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function downloadFile(e,t,l){var{filename:o,type:r,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,a=l.$xeGantt,{remote:i,columns:n,colgroups:s,exportMethod:d,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r,$gantt:a};t(d?d(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:n,colgroups:s,datas:e},()=>downloadFile(l,o,getContent(l,o,n,e))))}}).then(e=>(clearColumnConvert(n),o.print||t&&t({status:!0,options:o,$table:l,$grid:r,$gantt:a}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(n),o.print||t&&t({status:!1,options:o,$table:l,$grid:r,$gantt:a});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,a){e=e.split(enterSymbol);let i=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),i.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:i}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(o,e,l){let{tableFullColumn:t,_importResolve:r,_importReject:a}=o,i={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=o.getHeaderCellLabel(e);t&&(n[t]=e),l&&(s[l]=e)});var d={fieldMaps:n,titleMaps:s};switch(l.type){case"csv":i=parseCsv(d,e);break;case"txt":i=parseTxt(d,e);break;case"html":i=parseHTML(d,e);break;case"xml":i=parseXML(d,e)}let{fields:c,rows:u}=i;c.some(e=>n[e]||s[e])?o.createData(u).then(e=>{let t;return t="insert"===l.mode||"insertBottom"===l.mode?o.insertAt(e,-1):"insertTop"===l.mode?o.insert(e):o.reloadData(e),!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1,msg:"field mismatching"})}function handleFileImport(a,i,n){let s=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(i);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),a._importResolve=null,a._importReject=null},o=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{errLog("vxe.error.notType",[c]),o({status:!1,msg:"reading file error"})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else errLog("vxe.error.notExp"),e({status:!1,msg:"unsupported browser"})}).then(()=>{t&&t({status:!0,options:n,$table:a})}).catch(e=>(t&&t({status:!1,options:n,$table:a}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1,msg:"type error"}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o,r,a){var i=t.field;return!r[i]&&(l?!!o[i]:!!a[i]||(e.original?!!i:defaultFilterExportColumn(t)))}function handleExportAndPrint(s,e,t){var l=s.$xeGrid,o=s.$xeGantt,r=l||o,{treeConfig:a,showHeader:i,showFooter:n}=s,{initStore:d,isGroup:c,rowGroupList:u,footerTableData:p,exportStore:h,exportParams:m}=s,{collectColumn:g,mergeBodyList:x,mergeFooterList:f}=s,b=s.computeExportOpts,a=!!a,u=0<u.length,v=s.computePrintOpts,_=s.getCheckboxRecords(),r=r?r.computeProxyOpts:{},p=!!p.length,x=!(!x.length&&!f.length);let $=Object.assign({message:!0,isHeader:i,isTitle:i,isFooter:n,isColgroup:c,isMerge:x,useStyle:!0,current:"current",modes:(r.ajax&&r.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);_xeUtils.default.isBoolean($.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),$.isTreeAllExpanded=$.isAllExpand);f=t?[]:$.types||_xeUtils.default.keys(b._typeMaps),i=$.modes||[];let y=(t?v:b).checkMethod;n=g.slice(0);let{columns:C,excludeFields:w,includeFields:E,extraFields:T}=$;r=f.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});let F={},M=(w&&w.length&&w.forEach(e=>{F[e]=1}),{}),k=(E&&E.length&&E.forEach(e=>{M[e]=1}),{}),{filename:U,sheetName:I,mode:j,type:L}=(T&&T.forEach(e=>{k[e]=1}),_xeUtils.default.eachTree(n,(e,t,l,o,r)=>{var a=e.children&&0<e.children.length;let i=!1;var n=k[e.field];i=C?handleFilterColumns($,e,C):w||E?handleFilterFields($,e,E,M,F,k):!!n||e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=r&&r.disabled||!!y&&!y({$table:s,column:e})}),h.columns=n,h.typeList=r,h.modeList=e,h.hasFooter=p,h.hasMerge=x,h.hasTree=a,h.hasRowGroup=u,h.isPrint=!!t,h.hasColgroup=c,h.visible=!0,Object.assign(m,{mode:_.length?"selected":"current"},$),m);return U&&(_xeUtils.default.isFunction(U)?m.filename=U({options:$,$table:s,$grid:l,$gantt:o}):m.filename=""+U),I&&(_xeUtils.default.isFunction(I)?m.sheetName=I({options:$,$table:s,$grid:l,$gantt:o}):m.sheetName=""+I),e.some(e=>e.value===j)||(m.mode=e.length?e[0].value:""),r.some(e=>e.value===L)||(m.type=r.length?r[0].value:""),m.widthMode||(m.widthMode=""),d.export=!0,s.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(c){let u=this;var e=u,t=u,l=u;let p=u.$xeGrid,h=u.$xeGantt;var o=p||h,{treeConfig:e,showHeader:m,showFooter:r}=e,t=t.isGroup;let{tableFullColumn:a,afterFullData:i,afterTreeFullData:n,collectColumn:s,mergeBodyList:R,mergeFooterList:D}=l;var l=u.computeExportOpts,B=u.computeTreeOpts;let d=o?o.computeProxyOpts:{};var g=!(!R.length&&!D.length);let x=Object.assign({message:!0,isHeader:m,isTitle:m,isFooter:r,isColgroup:t,isMerge:g,useStyle:!0,current:"current",modes:(d.ajax&&d.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},l,c),{filename:f,sheetName:b,type:v,mode:_,columns:$,columnFilterMethod:y,beforeExportMethod:C,includeFields:w,excludeFields:E,extraFields:T}=(_xeUtils.default.isBoolean(x.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),x.isTreeAllExpanded=x.isAllExpand),x),F=[],M=u.getCheckboxRecords(),k=(_=_||(M.length?"selected":"current"),{}),U=(E&&E.length&&E.forEach(e=>{k[e]=1}),{}),I=(w&&w.length&&w.forEach(e=>{U[e]=1}),{}),j=(T&&T.forEach(e=>{I[e]=1}),!1),L=[];m=x._columns;L=m?(j=!0,_xeUtils.default.searchTree(m,()=>!0,{children:"_children",mapChildren:"childNodes",original:!0})):$?(j=!0,_xeUtils.default.searchTree($,()=>!0,{children:"children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(s,e=>{var t=e.children&&0<e.children.length;let l=!1;var o=I[e.field];return l=$?handleFilterColumns(x,e,$):E||w?handleFilterFields(x,e,w,U,k,I):!!o||e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0});let O=Object.assign({},x,{filename:"",sheetName:"",_columnConfs:$}),V=(j||y||(y=({column:e})=>handleFilterFields(O,e,w,U,k,I),O.columnFilterMethod=y),F=L?(O._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(L,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=u.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=u.getColumnById(r):l&&t?o=a.find(e=>e.field===l&&e.type===t):l?o=u.getColumnByField(l):t&&(o=a.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(t?s:a,(e,t)=>e.visible&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(F,e=>{e.children&&e.children.length||V.push(e)},{children:"childNodes"}),O.columns=V,O.colgroups=convertToRows(F),f&&(_xeUtils.default.isFunction(f)?O.filename=f({options:x,$table:u,$grid:p,$gantt:h}):O.filename=""+f),O.filename||(O.filename=getI18n(O.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),b&&(_xeUtils.default.isFunction(b)?O.sheetName=b({options:x,$table:u,$grid:p,$gantt:h}):O.sheetName=""+b),O.sheetName||(O.sheetName=document.title||""),!O.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(l._typeMaps),v))return errLog("vxe.error.notType",[v]),["xlsx","pdf"].includes(v)&&warnLog("vxe.error.reqPlugin",[3,"plugin-export-xlsx"]),Promise.reject({status:!1,msg:"type error"});if(!O.print&&C){r=C({options:O,$table:u,$grid:p,$gantt:h});if(_xeUtils.default.isBoolean(r)){if(!r)return Promise.reject({status:!1,msg:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeExportMethod","boolean",r])}if(O.data)O._isCustomData=!0;else if(O.data=[],"selected"===_)-1<["html","pdf"].indexOf(v)&&e?O.data=_xeUtils.default.searchTree(u.getTableData().fullData,e=>-1<u.findRowIndexOf(M,e),Object.assign({},B,{data:"_row"})):O.data=M;else if("all"===_){if(o||errLog("vxe.error.errProp",["all","mode=current,selected"]),o&&!O.remote){g=o.reactData;let e=o.computeProxyOpts;c=g.sortData;let{beforeQueryAll:l,afterQueryAll:r,ajax:t={}}=e,a=e.response||e.props||{};m=t.beforeQueryAll;let i=t.queryAll,n=t.afterQueryAll,s=t.queryAllSuccess,d=t.queryAllError;if(i||errLog("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),i){let o={$table:u,$grid:p,$gantt:h,sort:c.length?c[0]:{},sorts:c,filters:g.filterData,form:g.formData,options:O},t=()=>Promise.resolve((l||i)(o)).then(t=>{if(n)n(Object.assign(Object.assign({},o),{response:t,status:"success"}));else{var l=a.list;let e=[];l?e=_xeUtils.default.isFunction(l)?l({data:t,$table:u,$grid:p,$gantt:h}):_xeUtils.default.isArray(t)?t:_xeUtils.default.get(t,l):_xeUtils.default.isArray(t)&&(e=t),O.data=e,r&&r(Object.assign(Object.assign({},o),{response:t}))}return s&&s(Object.assign(Object.assign({},o),{response:t})),handleExport(u,O)}).catch(e=>{n&&n(Object.assign(Object.assign({},o),{response:e,status:"error"})),d&&d(Object.assign(Object.assign({},o),{response:e}))});return m?Promise.resolve(m(o)).then(e=>{if(!1!==e)return t()}):t()}}}else"current"===_&&(O.data=e?n:i);return handleExport(u,O)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;if(l){l=l({options:t,$table:this});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1,mas:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return handleFileImport(this,e,t)},_importData(e){let t=this;var l=t.computeImportOpts;let o=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:r,afterImportMethod:a}=o;if(r){l=r({options:o,$table:t});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1,mas:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return _ui.VxeUI.readFile(o).catch(e=>(a&&a({status:!1,options:o,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,o)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this,o=l.$xeGrid,r=l.$xeGantt;var t=l.computePrintOpts;let a=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});t=a.sheetName;let i="",n=(i=(i=t?_xeUtils.default.isFunction(t)?t({options:a,$table:l,$grid:o,$gantt:r}):""+t:i)||document.title||"",a.beforePrintMethod),s=a.printMethod,d=a.html||a.content;return new Promise((e,t)=>{_ui.VxeUI.print?d?e(_ui.VxeUI.print({title:i,html:d,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0})):e(l.exportData(a).then(({content:e})=>_ui.VxeUI.print({title:i,html:e,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0}))):(errLog("vxe.error.reqComp",["vxe-print"]),t({status:!1,msg:"print not exist"}))})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var{treeConfig:t,importConfig:l}=this;let{initStore:o,importStore:r,importParams:a}=this;var i=this.computeImportOpts,i=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(i._typeMaps),modes:["insertTop","covering"]},i,e),e=i.types||[],n=i.modes||[];!t?(l||errLog("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=n.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,i),l.some(e=>e.value===a.mode)||(a.mode=l[0].value),o.import=!0):i.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.computeExportOpts,t=Object.assign({message:!0,types:_xeUtils.default.keys(t._typeMaps)},t,e);return this.exportConfig||errLog("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,t)},_closePrint:handleCloseExport,_openPrint(e){var t=this.computePrintOpts,t=Object.assign({message:!0},t,e);return this.printConfig||errLog("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,t,!0)}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function getSeq(e,t,l,o,r,a){var i=e.computeSeqOpts.seqMethod||r.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),_rowIndex:e.getVTRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),_columnIndex:e.getVTColumnIndex(r),$columnIndex:a}):t}function defaultFilterExportColumn(e){return!!e.field||-1===["seq","checkbox","radio"].indexOf(e.type||"")}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(F,M,k,e){let{isTreeAllExpanded:i,isRowGroupAllExpanded:d,mode:U}=M;var t=F.treeConfig,l=F.isRowGroupStatus;let{fullColumnFieldData:I,fullAllDataRowIdData:x}=F,j=F.computeRadioOpts,L=F.computeCheckboxOpts;var o=F.computeTreeOpts;let O=F.computeColumnOpts;var r=F.computeAggregateOpts;let V=F.computeRendererOpts,R=(htmlCellElem=htmlCellElem||document.createElement("div"),(0,_util.createHandleGetRowId)(F)).handleGetRowId;if(l){let{mode:_,showTotal:$,totalMethod:y,countFields:C,contentMethod:w,formatValuesMethod:E,mapChildrenField:T}=r,i=[],n={},s={};return _xeUtils.default.eachTree(e,(e,f,t,b,l,o)=>{let v=e._row||e;var r=R(v);if(!s[r]){e=l&&l._row?l._row:l,l=e?R(e):"";if(d||!e||n[l]&&F.isRowExpandByRow(e)){var a=T&&v[T]&&v[T].length;let x={_row:v,_level:o.length-1,_hasChild:a,_expand:a&&F.isRowExpandByRow(v)};k.forEach((e,t)=>{var{field:l,editRender:o,cellRender:r,aggFunc:a,rowGroupNode:i}=e;let n="";var s,d,c,u,p,h,o=o||r;let m=e.exportMethod||O.exportMethod;if(m=(m=!m&&o&&o.name&&(r=V[o.name]||renderer.get(o.name))?r.tableExportMethod||r.exportMethod:m)||O.exportMethod)n=m({$table:F,row:v,column:e,options:M});else switch(e.type){case"seq":var g=b.map((e,t)=>t%2==0?Number(e)+1:".").join("");n="all"===U?g:getSeq(F,g,v,f,e,t);break;case"checkbox":n=toBooleanValue(F.isCheckedByCheckboxRow(v)),x._checkboxLabel=L.labelField?_xeUtils.default.get(v,L.labelField):"",x._checkboxDisabled=L.checkMethod&&!L.checkMethod({$table:F,row:v});break;case"radio":n=toBooleanValue(F.isCheckedByRadioRow(v)),x._radioLabel=j.labelField?_xeUtils.default.get(v,j.labelField):"",x._radioDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:v});break;default:l&&v.isAggregate?(s=(s=(g=v).aggData)?s[l]:null,u=g.groupField,d=g.groupContent,h=T&&g[T]||[],c=g.childCount,p=I[u]||{},u={$table:F,groupField:u,groupColumn:p?p.column:null,column:e,groupValue:d,childList:h,childCount:c,aggValue:null,children:h,totalValue:c},("column"===_?l===g.groupField:i)?(n=d,w&&(n=""+w(u)),$&&(n=getI18n("vxe.table.rowGroupContentTotal",[n,y?y(u):c,c]))):F.getPivotTableAggregateCellAggValue?(p={$table:F,row:v,column:e},n=F.getPivotTableAggregateCellAggValue(p)):(!0===a||C&&C.includes(l))&&(n=s?s.value:c,u.aggValue=n,E)&&(n=E(u))):M.original?n=(0,_util.getCellValue)(v,e):(n=F.getCellLabel(v,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(h=F.getCellElement(v,e))&&!(0,_dom.hasClass)(h,"is--progress")&&(n=h.innerText.trim()))}x[e.id]=toStringValue(n)}),s[r]=!0,l&&(n[l]=!0),i.push(Object.assign(x,v))}}},{children:T}),i}if(t){let u=o.seqMode,p=o.children||o.childrenField,h=[],m={},g={};return _xeUtils.default.eachTree(e,(e,s,t,d,l,o)=>{let c=e._row||e;var r=R(c);if(!g[r]){e=l&&l._row?l._row:l,l=e?R(e):"";if(i||!e||m[l]&&F.isTreeExpandByRow(e)){var a=c[p]&&c[p].length;let i={_row:c,_level:o.length-1,_hasChild:a,_expand:a&&F.isTreeExpandByRow(c)},n=x[r]||{};k.forEach((t,l)=>{let o="";var e,r=t.editRender||t.cellRender;let a=t.exportMethod||O.exportMethod;if(a=(a=!a&&r&&r.name&&(r=V[r.name]||renderer.get(r.name))?r.tableExportMethod||r.exportMethod:a)||O.exportMethod)o=a({$table:F,row:c,column:t,options:M});else switch(t.type){case"seq":{let e=d.map((e,t)=>t%2==0?Number(e)+1:".").join("");"increasing"===u&&(e=n?n._index+1:-1),o="all"===U?e:getSeq(F,e,c,s,t,l);break}case"checkbox":o=toBooleanValue(F.isCheckedByCheckboxRow(c)),i._checkboxLabel=L.labelField?_xeUtils.default.get(c,L.labelField):"",i._checkboxDisabled=L.checkMethod&&!L.checkMethod({$table:F,row:c});break;case"radio":o=toBooleanValue(F.isCheckedByRadioRow(c)),i._radioLabel=j.labelField?_xeUtils.default.get(c,j.labelField):"",i._radioDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:c});break;default:M.original?o=(0,_util.getCellValue)(c,t):(o=F.getCellLabel(c,t),"html"===t.type?(htmlCellElem.innerHTML=o,o=htmlCellElem.innerText.trim()):(e=F.getCellElement(c,t))&&!(0,_dom.hasClass)(e,"is--progress")&&(o=e.innerText.trim()))}i[t.id]=toStringValue(o)}),g[r]=!0,l&&(m[l]=!0),h.push(Object.assign(i,c))}}},{children:p}),h}return e.map((i,n)=>{let s={_row:i};return k.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||O.exportMethod;if(r=!r&&o&&o.name&&(o=V[o.name]||renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:F,row:i,column:e,options:M});else switch(e.type){case"seq":var a=n+1;l="all"===U?a:getSeq(F,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(i)),s._checkboxLabel=L.labelField?_xeUtils.default.get(i,L.labelField):"",s._checkboxDisabled=L.checkMethod&&!L.checkMethod({$table:F,row:i});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(i)),s._radioLabel=j.labelField?_xeUtils.default.get(i,j.labelField):"",s._radioDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:i});break;default:M.original?l=(0,_util.getCellValue)(i,e):(l=F.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(l,e){let o=l.$xeGrid,r=l.$xeGantt,{columns:t,dataFilterMethod:a}=e,i=e.data;return a&&(i=i.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,i)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.isTitle?e.getHeaderCellLabel(l):l.field)||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,a=o.editRender||o.cellRender;let i=o.footerExportMethod;return(i=(i=!i&&a&&a.name&&(a=e.computeRendererOpts[a.name]||renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||r.footerExportMethod)?(a=e.getVTColumnIndex(o),i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:o,options:t})):e.getFooterCellLabel(l,o)}function getFooterData(l,e,t){let o=l.$xeGrid,r=l.$xeGantt,a=e.footerFilterMethod;return a?t.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:_xeUtils.default.eqNull(e)?"":e}function toCsv(l,o,e,t){var r=l;let a=csvBOM;return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),a}function toTxt(l,o,e,t){var r=l;let a="";return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function getCustomColKey(e){return`${e.field||""}:`+(e.type||"")}function toHtml(c,u,e,t){var l=c;let{id:d,border:o,treeConfig:r,headerAlign:a,align:p,footerAlign:h,showOverflow:m,showHeaderOverflow:i}=c,{isAllSelected:n,isIndeterminate:s}=l,{mergeBodyCellMaps:g,mergeFooterCellMaps:x}=c,f=c.computeTreeOpts,{print:b,widthMode:v,isHeader:_,isFooter:$,isColgroup:y,isMerge:C,colgroups:w,_columnConfs:E,original:T}=u,F="auto"===v,M="scale"===v,k=!F&&!M,U={},I=(E&&E.forEach(e=>{(0,_util.isColumnInfo)(e)||(e.field||e.type)&&e.width&&(U[getCustomColKey(e)]=e.width)}),{}),j={};if(b){let r=0;e.forEach(e=>{r+=e.renderWidth}),w&&w.forEach(e=>{e.forEach(o=>{if(o.childNodes&&o.childNodes.length){let t=0,l=0;_xeUtils.default.eachTree([o],e=>{e.childNodes&&o.childNodes.length||l++;e=j[e.id];t+=e||0},{children:"childNodes"});var e=t-l;I[o.id]=e,j[o.id]=_xeUtils.default.floor(e/r*180,2)}})}),e.forEach(e=>{var t=e.renderWidth;e.width&&(I[e.id]=t),j[e.id]=_xeUtils.default.floor(t/r*180,2)})}let L=e=>{var t=getCustomColKey(e),t=U[t];return t?"width:"+(0,_dom.toCssUnit)(t):F||k?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""},O="check-all",V=[`<table class="${["vxe-table","border--"+toTableBorder(o),b?"is--print":"",F?"is--auto-width":"",M?"is--scale-width":"",k?"is--default-width":"",_?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>{return`<col style="${e=e,t=getCustomColKey(e),t=U[t],t?"width:"+(0,_dom.toCssUnit)(t):F?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""}">`;var t}).join("")}</colgroup>`];_&&(V.push("<thead>"),y&&!T?w.forEach(e=>{V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),V.push("</thead>")),t.length&&(V.push("<tbody>"),r?t.forEach(r=>{V.push("<tr>"+e.map(t=>{var e=t.align||p,l=hasEllipsis(c,t,"showOverflow",m)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{V.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||p,o=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],t=s[t];let r=1,a=1;if(C){var i=c.getVTRowIndex(s._row),n=c.getVTColumnIndex(e),i=g[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return l&&o.push("col--"+l),"radio"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="radio" name="radio_${d}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}" title="${t}"><div style="${L(e)}">${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),V.push("</tbody>")),$&&(t=l.footerTableData,(l=getFooterData(c,u,t)).length)&&(V.push("<tfoot>"),l.forEach((s,d)=>{V.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||h||p,l=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],o=getFooterCellValue(c,u,s,e);let r=1,a=1;if(C){var i=d,n=c.getVTColumnIndex(e),i=x[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return t&&l.push("col--"+t),`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div style="${L(e)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),V.push("</tfoot>"));t=!n&&s?`<script>(function(){var a=document.querySelector(".${O}");if(a){a.indeterminate=true}})()</script>`:"";return V.push("</table>",t),F?V.join(""):(0,_util2.createHtmlPage)(u,V.join(""))}function toXML(l,o,e,t){var r=l;let a=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{a+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function downloadFile(e,t,l){var{filename:o,type:r,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,a=l.$xeGantt,{remote:i,columns:n,colgroups:s,exportMethod:d,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r,$gantt:a};t(d?d(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:n,colgroups:s,datas:e},()=>downloadFile(l,o,getContent(l,o,n,e))))}}).then(e=>(clearColumnConvert(n),o.print||t&&t({status:!0,options:o,$table:l,$grid:r,$gantt:a}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(n),o.print||t&&t({status:!1,options:o,$table:l,$grid:r,$gantt:a});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,a){e=e.split(enterSymbol);let i=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),i.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:i}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(o,e,l){let{tableFullColumn:t,_importResolve:r,_importReject:a}=o,i={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=o.getHeaderCellLabel(e);t&&(n[t]=e),l&&(s[l]=e)});var d={fieldMaps:n,titleMaps:s};switch(l.type){case"csv":i=parseCsv(d,e);break;case"txt":i=parseTxt(d,e);break;case"html":i=parseHTML(d,e);break;case"xml":i=parseXML(d,e)}let{fields:c,rows:u}=i;c.some(e=>n[e]||s[e])?o.createData(u).then(e=>{let t;return t="insert"===l.mode||"insertBottom"===l.mode?o.insertAt(e,-1):"insertTop"===l.mode?o.insert(e):o.reloadData(e),!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1,msg:"field mismatching"})}function handleFileImport(a,i,n){let s=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(i);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),a._importResolve=null,a._importReject=null},o=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{errLog("vxe.error.notType",[c]),o({status:!1,msg:"reading file error"})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else errLog("vxe.error.notExp"),e({status:!1,msg:"unsupported browser"})}).then(()=>{t&&t({status:!0,options:n,$table:a})}).catch(e=>(t&&t({status:!1,options:n,$table:a}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1,msg:"type error"}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o,r,a){var i=t.field;return!r[i]&&(l?!!o[i]:!!a[i]||(e.original?!!i:defaultFilterExportColumn(t)))}function handleExportAndPrint(s,e,t){var l=s.$xeGrid,o=s.$xeGantt,r=l||o,{treeConfig:a,showHeader:i,showFooter:n}=s,{initStore:d,isGroup:c,rowGroupList:u,footerTableData:p,exportStore:h,exportParams:m}=s,{collectColumn:g,mergeBodyList:x,mergeFooterList:f}=s,b=s.computeExportOpts,a=!!a,u=0<u.length,v=s.computePrintOpts,_=s.getCheckboxRecords(),r=r?r.computeProxyOpts:{},p=!!p.length,x=!(!x.length&&!f.length);let $=Object.assign({message:!0,isHeader:i,isTitle:i,isFooter:n,isColgroup:c,isMerge:x,useStyle:!0,current:"current",modes:(r.ajax&&r.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);_xeUtils.default.isBoolean($.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),$.isTreeAllExpanded=$.isAllExpand);f=t?[]:$.types||_xeUtils.default.keys(b._typeMaps),i=$.modes||[];let y=(t?v:b).checkMethod;n=g.slice(0);let{columns:C,excludeFields:w,includeFields:E,extraFields:T}=$;r=f.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});let F={},M=(w&&w.length&&w.forEach(e=>{F[e]=1}),{}),k=(E&&E.length&&E.forEach(e=>{M[e]=1}),{}),{filename:U,sheetName:I,mode:j,type:L}=(T&&T.forEach(e=>{k[e]=1}),_xeUtils.default.eachTree(n,(e,t,l,o,r)=>{var a=e.children&&0<e.children.length;let i=!1;var n=k[e.field];i=C?handleFilterColumns($,e,C):w||E?handleFilterFields($,e,E,M,F,k):!!n||e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=r&&r.disabled||!!y&&!y({$table:s,column:e})}),h.columns=n,h.typeList=r,h.modeList=e,h.hasFooter=p,h.hasMerge=x,h.hasTree=a,h.hasRowGroup=u,h.isPrint=!!t,h.hasColgroup=c,h.visible=!0,Object.assign(m,{mode:_.length?"selected":"current"},$),m);return U&&(_xeUtils.default.isFunction(U)?m.filename=U({options:$,$table:s,$grid:l,$gantt:o}):m.filename=""+U),I&&(_xeUtils.default.isFunction(I)?m.sheetName=I({options:$,$table:s,$grid:l,$gantt:o}):m.sheetName=""+I),e.some(e=>e.value===j)||(m.mode=e.length?e[0].value:""),r.some(e=>e.value===L)||(m.type=r.length?r[0].value:""),m.widthMode||(m.widthMode=""),d.export=!0,s.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(c){let u=this;var e=u,t=u,l=u;let p=u.$xeGrid,h=u.$xeGantt;var o=p||h,{treeConfig:e,showHeader:m,showFooter:r}=e,t=t.isGroup;let{tableFullColumn:a,afterFullData:i,afterTreeFullData:n,collectColumn:s,mergeBodyList:R,mergeFooterList:D}=l;var l=u.computeExportOpts,B=u.computeTreeOpts;let d=o?o.computeProxyOpts:{};var g=!(!R.length&&!D.length);let x=Object.assign({message:!0,isHeader:m,isTitle:m,isFooter:r,isColgroup:t,isMerge:g,useStyle:!0,current:"current",modes:(d.ajax&&d.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},l,c),{filename:f,sheetName:b,type:v,mode:_,columns:$,columnFilterMethod:y,beforeExportMethod:C,includeFields:w,excludeFields:E,extraFields:T}=(_xeUtils.default.isBoolean(x.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),x.isTreeAllExpanded=x.isAllExpand),x),F=[],M=u.getCheckboxRecords(),k=(_=_||(M.length?"selected":"current"),{}),U=(E&&E.length&&E.forEach(e=>{k[e]=1}),{}),I=(w&&w.length&&w.forEach(e=>{U[e]=1}),{}),j=(T&&T.forEach(e=>{I[e]=1}),!1),L=[];m=x._columns;L=m?(j=!0,_xeUtils.default.searchTree(m,()=>!0,{children:"_children",mapChildren:"childNodes",original:!0})):$?(j=!0,_xeUtils.default.searchTree($,()=>!0,{children:"children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(s,e=>{var t=e.children&&0<e.children.length;let l=!1;var o=I[e.field];return l=$?handleFilterColumns(x,e,$):E||w?handleFilterFields(x,e,w,U,k,I):!!o||e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0});let O=Object.assign({},x,{filename:"",sheetName:"",_columnConfs:$}),V=(j||y||(y=({column:e})=>handleFilterFields(O,e,w,U,k,I),O.columnFilterMethod=y),F=L?(O._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(L,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=u.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=u.getColumnById(r):l&&t?o=a.find(e=>e.field===l&&e.type===t):l?o=u.getColumnByField(l):t&&(o=a.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(t?s:a,(e,t)=>e.visible&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(F,e=>{e.children&&e.children.length||V.push(e)},{children:"childNodes"}),O.columns=V,O.colgroups=convertToRows(F),f&&(_xeUtils.default.isFunction(f)?O.filename=f({options:x,$table:u,$grid:p,$gantt:h}):O.filename=""+f),O.filename||(O.filename=getI18n(O.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),b&&(_xeUtils.default.isFunction(b)?O.sheetName=b({options:x,$table:u,$grid:p,$gantt:h}):O.sheetName=""+b),O.sheetName||(O.sheetName=document.title||""),!O.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(l._typeMaps),v))return errLog("vxe.error.notType",[v]),["xlsx","pdf"].includes(v)&&warnLog("vxe.error.reqPlugin",[3,"plugin-export-xlsx"]),Promise.reject({status:!1,msg:"type error"});if(!O.print&&C){r=C({options:O,$table:u,$grid:p,$gantt:h});if(_xeUtils.default.isBoolean(r)){if(!r)return Promise.reject({status:!1,msg:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeExportMethod","boolean",r])}if(O.data)O._isCustomData=!0;else if(O.data=[],"selected"===_)-1<["html","pdf"].indexOf(v)&&e?O.data=_xeUtils.default.searchTree(u.getTableData().fullData,e=>-1<u.findRowIndexOf(M,e),Object.assign({},B,{data:"_row"})):O.data=M;else if("all"===_){if(o||errLog("vxe.error.errProp",["all","mode=current,selected"]),o&&!O.remote){g=o.reactData;let e=o.computeProxyOpts;c=g.sortData;let{beforeQueryAll:l,afterQueryAll:r,ajax:t={}}=e,a=e.response||e.props||{};m=t.beforeQueryAll;let i=t.queryAll,n=t.afterQueryAll,s=t.queryAllSuccess,d=t.queryAllError;if(i||errLog("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),i){let o={$table:u,$grid:p,$gantt:h,sort:c.length?c[0]:{},sorts:c,filters:g.filterData,form:g.formData,options:O},t=()=>Promise.resolve((l||i)(o)).then(t=>{if(n)n(Object.assign(Object.assign({},o),{response:t,status:"success"}));else{var l=a.list;let e=[];l?e=_xeUtils.default.isFunction(l)?l({data:t,$table:u,$grid:p,$gantt:h}):_xeUtils.default.isArray(t)?t:_xeUtils.default.get(t,l):_xeUtils.default.isArray(t)&&(e=t),O.data=e,r&&r(Object.assign(Object.assign({},o),{response:t}))}return s&&s(Object.assign(Object.assign({},o),{response:t})),handleExport(u,O)}).catch(e=>{n&&n(Object.assign(Object.assign({},o),{response:e,status:"error"})),d&&d(Object.assign(Object.assign({},o),{response:e}))});return m?Promise.resolve(m(o)).then(e=>{if(!1!==e)return t()}):t()}}}else"current"===_&&(O.data=e?n:i);return handleExport(u,O)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;if(l){l=l({options:t,$table:this});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1,mas:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return handleFileImport(this,e,t)},_importData(e){let t=this;var l=t.computeImportOpts;let o=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:r,afterImportMethod:a}=o;if(r){l=r({options:o,$table:t});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1,mas:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return _ui.VxeUI.readFile(o).catch(e=>(a&&a({status:!1,options:o,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,o)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this,o=l.$xeGrid,r=l.$xeGantt;var t=l.computePrintOpts;let a=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});t=a.sheetName;let i="",n=(i=(i=t?_xeUtils.default.isFunction(t)?t({options:a,$table:l,$grid:o,$gantt:r}):""+t:i)||document.title||"",a.beforePrintMethod),s=a.printMethod,d=a.html||a.content;return new Promise((e,t)=>{_ui.VxeUI.print?d?e(_ui.VxeUI.print({title:i,html:d,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0})):e(l.exportData(a).then(({content:e})=>_ui.VxeUI.print({title:i,html:e,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0}))):(errLog("vxe.error.reqComp",["vxe-print"]),t({status:!1,msg:"print not exist"}))})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var{treeConfig:t,importConfig:l}=this;let{initStore:o,importStore:r,importParams:a}=this;var i=this.computeImportOpts,i=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(i._typeMaps),modes:["insertTop","covering"]},i,e),e=i.types||[],n=i.modes||[];!t?(l||errLog("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=n.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,i),l.some(e=>e.value===a.mode)||(a.mode=l[0].value),o.import=!0):i.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.computeExportOpts,t=Object.assign({message:!0,types:_xeUtils.default.keys(t._typeMaps)},t,e);return this.exportConfig||errLog("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,t)},_closePrint:handleCloseExport,_openPrint(e){var t=this.computePrintOpts,t=Object.assign({message:!0},t,e);return this.printConfig||errLog("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,t,!0)}}};
@@ -35,13 +35,14 @@ function updatePopupStyle($xeTable) {
35
35
  }
36
36
  const tableEl = $xeTable.$refs.refElem;
37
37
  const filterOpts = $xeTable.computeFilterOpts;
38
+ const rendererOpts = $xeTable.computeRendererOpts;
38
39
  const {
39
40
  maxHeight: customMaxHeight,
40
41
  transfer,
41
42
  zIndex
42
43
  } = filterOpts;
43
44
  const filterRender = column ? column.filterRender : null;
44
- const compConf = filterRender && (0, _utils.isEnableConf)(filterRender) ? renderer.get(filterRender.name) : null;
45
+ const compConf = filterRender && (0, _utils.isEnableConf)(filterRender) && filterRender.name ? rendererOpts[filterRender.name] || renderer.get(filterRender.name) : null;
45
46
  const headerScrollElem = (0, _util.getRefElem)(elemStore['main-header-scroll']);
46
47
  if (!headerScrollElem) {
47
48
  return $xeTable.$nextTick();
@@ -533,7 +534,8 @@ var _default = exports.default = {
533
534
  filterRender
534
535
  } = column;
535
536
  if (filters) {
536
- const compConf = (0, _utils.isEnableConf)(filterRender) ? renderer.get(filterRender.name) : null;
537
+ const rendererOpts = $xeTable.computeRendererOpts;
538
+ const compConf = (0, _utils.isEnableConf)(filterRender) && filterRender.name ? rendererOpts[filterRender.name] || renderer.get(filterRender.name) : null;
537
539
  const filterResetMethod = column.filterResetMethod || (compConf ? compConf.tableFilterResetMethod || compConf.filterResetMethod : null);
538
540
  filters.forEach(item => {
539
541
  item._checked = false;
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderer=_ui.VxeUI.renderer,sourceType="table";function updatePopupStyle(s){let h=s.$xeGrid||s.$xeGantt,d=s.filterStore,c=s.elemStore,{column:f,targetEl:m}=d;if(!f)return s.$nextTick();let p=s.$refs.refElem,{maxHeight:F,transfer:v,zIndex:_}=s.computeFilterOpts;var e=f?f.filterRender:null;let x=e&&(0,_utils.isEnableConf)(e)?renderer.get(e.name):null;if(!(0,_util.getRefElem)(c["main-header-scroll"]))return s.$nextTick();e=s.$refs.refTableFilter;let C=e?e.$el:null;if(!C)return s.$nextTick();let g=C.querySelector(".vxe-table--filter-header"),k=C.querySelector(".vxe-table--filter-footer"),t=()=>{let e=m;if(m||(i=(i=(0,_util.getRefElem)(c[`${f.fixed||"main"}-header-wrapper`]||c["main-header-wrapper"]))?i.querySelector(".vxe-header--column."+f.id):null)&&(e=i),!e)return s.$nextTick();var t,l,i=e.getBoundingClientRect(),r=p.getBoundingClientRect();let n=0,a=0,u=0,o={};o=v?(0,_dom.updatePanelPlacement)(e,C,{defaultPlacement:"bottom",isMinWidth:!1,teleportTo:v}).style:(t=C.offsetWidth,l=m?t/2:(t-f.renderWidth)/2,u=Math.max(40,p.clientHeight-a-(g?g.clientHeight:0)-(k?k.clientHeight:0)-14),n=i.left-r.left-l,a=i.top-r.top+e.clientHeight,n<1?n=1:n>p.clientWidth-t-1&&(n=p.clientWidth-t-1),h&&(l=h.$refs.refElem)&&(i=l.getBoundingClientRect(),a+=r.top-i.top),{top:(0,_dom.toCssUnit)(a),left:(0,_dom.toCssUnit)(n)}),_&&(o.zIndex=_),d.style=o,x&&!x.tableFilterAutoHeight?u=0:F&&(u=F>u?u:F),d.maxHeight=u};return t(),s.$nextTick().then(()=>{t()})}var _default=exports.default={methods:{_openFilter(e){let n=this,a=n.$xeGrid,u=n.$xeGantt,o=(0,_util.handleFieldOrColumn)(this,e);if(o&&o.filters){let e=this.elemStore,{fixed:i,filters:r}=o;return n.scrollToColumn(o).then(()=>{var t=e[`${i||"main"}-header-wrapper`]||e["main-header-wrapper"];if(t){var l=t.querySelector(`.vxe-header--column.${o.id} .vxe-cell--filter`);if(l)(0,_dom.triggerEvent)(l,"click");else{l=t.querySelector(".vxe-header--column."+o.id);if(l){let e=null;r&&(e=r[0]);t={$table:n,$grid:a,$gantt:u,$rowIndex:-1,column:o,columnIndex:n.getColumnIndex(o),$columnIndex:n.getVMColumnIndex(o),_columnIndex:n.getVTColumnIndex(o),firstFilterOption:e,fixed:i,source:sourceType,type:"header"};n.handleOpenFilterColumn(new Event("click"),null,l,o,t)}}}})}return n.$nextTick()},_setFilter(e,t,l){var i=this,r=i.filterStore,e=(0,_util.handleFieldOrColumn)(i,e);if(e&&e.filters){if(e.filters=(0,_util.toFilters)(t||[],e.id),l)return i.handleColumnConfirmFilter(e,null);r.visible&&i.handleFilterOptions(e)}return i.$nextTick()},checkFilterOptions(){var e=this.filterStore,t=e.column;t&&(t=t.filters||[],e.isAllSelected=t.every(e=>e._checked),e.isIndeterminate=!e.isAllSelected&&t.some(e=>e._checked))},handleOpenFilterColumn(e,t,l,i,r){let n=this;var a=n,u=n,{initStore:a,filterStore:o}=a;o.column===i&&o.visible?o.visible=!1:(n.handleFilterOptions(i),u._currFilterParams=r,o.targetEl=t,o.style=null,o.visible=!0,a.filter=!0,n.$nextTick().then(()=>{updatePopupStyle(n)})),n.dispatchEvent("filter-visible",{column:i,field:i.field,property:i.field,filterList:n.getCheckedFilters(),visible:o.visible},e)},triggerFilterEvent(e,t,l){var i=this.elemStore,r=t.fixed,r=(0,_util.getRefElem)(i[`${r||"main"}-header-wrapper`]||i["main-header-wrapper"]),i=e.currentTarget,r=r?r.querySelector(".vxe-header--column."+t.id):null;this.handleOpenFilterColumn(e,i,r||i,t,l)},handleFilterChangeRadioOption(e,t,l){var i=this.filterStore,i=i.column;i&&((i.filters||[]).forEach(e=>{e._checked=!1}),l._checked=t,this.checkFilterOptions(),this.handleFilterConfirmFilter(e,i))},handleFilterChangeMultipleOption(e,t,l){l._checked=t,this.checkFilterOptions()},handleFilterChangeOption(e,t,l){var i=this.filterStore,r=this.fullColumnIdData;let n=i.column;n||(r=r[l._colId])&&(n=r.column,i.column=n),n&&(n.filterMultiple?this.handleFilterChangeMultipleOption(e,t,l):this.handleFilterChangeRadioOption(e,t,l))},handleFilterConfirmFilter(e,t){t&&((t.filters||[]).forEach(e=>{e.checked=e._checked}),this.confirmFilterEvent(e,t))},_saveFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(this,e),this.handleFilterConfirmFilter(null,e)),this.$nextTick()},_saveFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(this,t),this.handleFilterConfirmFilter(e,t)),this.$nextTick()},_resetFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(this,e),this.handleFilterResetFilter(null,e)),this.$nextTick()},_resetFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(this,t),this.handleFilterResetFilter(e,t)),this.$nextTick()},_saveFilterPanel(){var e=this.filterStore;return this.handleFilterConfirmFilter(null,e.column||null),this.$nextTick()},_saveFilterPanelByEvent(e){var t=this.filterStore;return this.handleFilterConfirmFilter(e,t.column||null),this.$nextTick()},_resetFilterPanel(){var e=this.filterStore;return this.handleFilterResetFilter(null,e.column||null),this.$nextTick()},_resetFilterPanelByEvent(e){var t=this.filterStore;return this.handleFilterResetFilter(e,t.column||null),this.$nextTick()},_getCheckedFilters(){var e=this.tableFullColumn;let n=[];return e.forEach(e=>{var{field:t,filters:l}=e,l=l||[];let i=[],r=[];l&&(l.forEach(e=>{e.checked&&(i.push(e.value),r.push(e.data))}),i.length)&&n.push({column:e,field:t,property:t,values:i,datas:r})}),n},handleColumnConfirmFilter(e,t){let l=this;var i=l;let r=l;i=i.mouseConfig;let{scrollXLoad:n,scrollYLoad:a}=r;var u=l.computeFilterOpts,o=l.computeMouseOpts,{field:s,filters:h}=e;let d=[],c=[];(h||[]).forEach(e=>{e.checked&&(d.push(e.value),c.push(e.data))});h=l.getCheckedFilters(),e={$table:l,$event:t,column:e,field:s,property:s,values:d,datas:c,filters:h,filterList:h};return u.remote||(l.handleTableData(!0),l.checkSelectionStatus()),i&&o.area&&l.handleFilterEvent&&l.handleFilterEvent(t,e),t&&l.dispatchEvent("filter-change",e,t),l.closeFilter(),l.updateFooter().then(()=>{var{scrollXLoad:e,scrollYLoad:t}=r;if(n||e||a||t)return(n||e)&&l.updateScrollXSpace(),(a||t)&&l.updateScrollYSpace(),l.refreshScroll()}).then(()=>(l.updateCellAreas(),l.recalculate(!0))).then(()=>{setTimeout(()=>l.recalculate(),50)})},confirmFilterEvent(e,t){t&&this.handleColumnConfirmFilter(t,e)},handleClearFilter(e){if(e){var{filters:l,filterRender:i}=e;if(l){i=(0,_utils.isEnableConf)(i)?renderer.get(i.name):null;let t=e.filterResetMethod||(i?i.tableFilterResetMethod||i.filterResetMethod:null);l.forEach(e=>{e._checked=!1,e.checked=!1,t||(e.data=_xeUtils.default.clone(e.resetValue,!0))}),t&&t({options:l,column:e,$table:this})}}},handleFilterResetFilter(e,t){t&&(this.handleClearFilter(t),this.confirmFilterEvent(e,t),e)&&this.dispatchEvent("clear-filter",{filterList:[]},e)},handleFilterStyle(){var e=this.filterStore;return e.visible?updatePopupStyle(this):this.$nextTick()},_clearFilter(e){var t=this,l=t.filterStore,i=t.tableFullColumn;let r;return e?(r=(0,_util.handleFieldOrColumn)(t,e))&&t.handleClearFilter(r):i.forEach(t.handleClearFilter),e&&r===l.column||Object.assign(l,{isAllSelected:!1,isIndeterminate:!1,style:null,options:[],column:null,multiple:!1,visible:!1}),t.updateData()},_updateFilterOptionStatus(e,t){return e._checked=t,e.checked=t,this.$nextTick()}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderer=_ui.VxeUI.renderer,sourceType="table";function updatePopupStyle(s){let h=s.$xeGrid||s.$xeGantt,d=s.filterStore,c=s.elemStore,{column:f,targetEl:m}=d;if(!f)return s.$nextTick();let p=s.$refs.refElem;var e=s.computeRendererOpts;let{maxHeight:F,transfer:v,zIndex:_}=s.computeFilterOpts;var t=f?f.filterRender:null;let x=t&&(0,_utils.isEnableConf)(t)&&t.name?e[t.name]||renderer.get(t.name):null;if(!(0,_util.getRefElem)(c["main-header-scroll"]))return s.$nextTick();e=s.$refs.refTableFilter;let C=e?e.$el:null;if(!C)return s.$nextTick();let g=C.querySelector(".vxe-table--filter-header"),k=C.querySelector(".vxe-table--filter-footer"),l=()=>{let e=m;if(m||(r=(r=(0,_util.getRefElem)(c[`${f.fixed||"main"}-header-wrapper`]||c["main-header-wrapper"]))?r.querySelector(".vxe-header--column."+f.id):null)&&(e=r),!e)return s.$nextTick();var t,l,r=e.getBoundingClientRect(),i=p.getBoundingClientRect();let n=0,a=0,u=0,o={};o=v?(0,_dom.updatePanelPlacement)(e,C,{defaultPlacement:"bottom",isMinWidth:!1,teleportTo:v}).style:(t=C.offsetWidth,l=m?t/2:(t-f.renderWidth)/2,u=Math.max(40,p.clientHeight-a-(g?g.clientHeight:0)-(k?k.clientHeight:0)-14),n=r.left-i.left-l,a=r.top-i.top+e.clientHeight,n<1?n=1:n>p.clientWidth-t-1&&(n=p.clientWidth-t-1),h&&(l=h.$refs.refElem)&&(r=l.getBoundingClientRect(),a+=i.top-r.top),{top:(0,_dom.toCssUnit)(a),left:(0,_dom.toCssUnit)(n)}),_&&(o.zIndex=_),d.style=o,x&&!x.tableFilterAutoHeight?u=0:F&&(u=F>u?u:F),d.maxHeight=u};return l(),s.$nextTick().then(()=>{l()})}var _default=exports.default={methods:{_openFilter(e){let n=this,a=n.$xeGrid,u=n.$xeGantt,o=(0,_util.handleFieldOrColumn)(this,e);if(o&&o.filters){let e=this.elemStore,{fixed:r,filters:i}=o;return n.scrollToColumn(o).then(()=>{var t=e[`${r||"main"}-header-wrapper`]||e["main-header-wrapper"];if(t){var l=t.querySelector(`.vxe-header--column.${o.id} .vxe-cell--filter`);if(l)(0,_dom.triggerEvent)(l,"click");else{l=t.querySelector(".vxe-header--column."+o.id);if(l){let e=null;i&&(e=i[0]);t={$table:n,$grid:a,$gantt:u,$rowIndex:-1,column:o,columnIndex:n.getColumnIndex(o),$columnIndex:n.getVMColumnIndex(o),_columnIndex:n.getVTColumnIndex(o),firstFilterOption:e,fixed:r,source:sourceType,type:"header"};n.handleOpenFilterColumn(new Event("click"),null,l,o,t)}}}})}return n.$nextTick()},_setFilter(e,t,l){var r=this,i=r.filterStore,e=(0,_util.handleFieldOrColumn)(r,e);if(e&&e.filters){if(e.filters=(0,_util.toFilters)(t||[],e.id),l)return r.handleColumnConfirmFilter(e,null);i.visible&&r.handleFilterOptions(e)}return r.$nextTick()},checkFilterOptions(){var e=this.filterStore,t=e.column;t&&(t=t.filters||[],e.isAllSelected=t.every(e=>e._checked),e.isIndeterminate=!e.isAllSelected&&t.some(e=>e._checked))},handleOpenFilterColumn(e,t,l,r,i){let n=this;var a=n,u=n,{initStore:a,filterStore:o}=a;o.column===r&&o.visible?o.visible=!1:(n.handleFilterOptions(r),u._currFilterParams=i,o.targetEl=t,o.style=null,o.visible=!0,a.filter=!0,n.$nextTick().then(()=>{updatePopupStyle(n)})),n.dispatchEvent("filter-visible",{column:r,field:r.field,property:r.field,filterList:n.getCheckedFilters(),visible:o.visible},e)},triggerFilterEvent(e,t,l){var r=this.elemStore,i=t.fixed,i=(0,_util.getRefElem)(r[`${i||"main"}-header-wrapper`]||r["main-header-wrapper"]),r=e.currentTarget,i=i?i.querySelector(".vxe-header--column."+t.id):null;this.handleOpenFilterColumn(e,r,i||r,t,l)},handleFilterChangeRadioOption(e,t,l){var r=this.filterStore,r=r.column;r&&((r.filters||[]).forEach(e=>{e._checked=!1}),l._checked=t,this.checkFilterOptions(),this.handleFilterConfirmFilter(e,r))},handleFilterChangeMultipleOption(e,t,l){l._checked=t,this.checkFilterOptions()},handleFilterChangeOption(e,t,l){var r=this.filterStore,i=this.fullColumnIdData;let n=r.column;n||(i=i[l._colId])&&(n=i.column,r.column=n),n&&(n.filterMultiple?this.handleFilterChangeMultipleOption(e,t,l):this.handleFilterChangeRadioOption(e,t,l))},handleFilterConfirmFilter(e,t){t&&((t.filters||[]).forEach(e=>{e.checked=e._checked}),this.confirmFilterEvent(e,t))},_saveFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(this,e),this.handleFilterConfirmFilter(null,e)),this.$nextTick()},_saveFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(this,t),this.handleFilterConfirmFilter(e,t)),this.$nextTick()},_resetFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(this,e),this.handleFilterResetFilter(null,e)),this.$nextTick()},_resetFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(this,t),this.handleFilterResetFilter(e,t)),this.$nextTick()},_saveFilterPanel(){var e=this.filterStore;return this.handleFilterConfirmFilter(null,e.column||null),this.$nextTick()},_saveFilterPanelByEvent(e){var t=this.filterStore;return this.handleFilterConfirmFilter(e,t.column||null),this.$nextTick()},_resetFilterPanel(){var e=this.filterStore;return this.handleFilterResetFilter(null,e.column||null),this.$nextTick()},_resetFilterPanelByEvent(e){var t=this.filterStore;return this.handleFilterResetFilter(e,t.column||null),this.$nextTick()},_getCheckedFilters(){var e=this.tableFullColumn;let n=[];return e.forEach(e=>{var{field:t,filters:l}=e,l=l||[];let r=[],i=[];l&&(l.forEach(e=>{e.checked&&(r.push(e.value),i.push(e.data))}),r.length)&&n.push({column:e,field:t,property:t,values:r,datas:i})}),n},handleColumnConfirmFilter(e,t){let l=this;var r=l;let i=l;r=r.mouseConfig;let{scrollXLoad:n,scrollYLoad:a}=i;var u=l.computeFilterOpts,o=l.computeMouseOpts,{field:s,filters:h}=e;let d=[],c=[];(h||[]).forEach(e=>{e.checked&&(d.push(e.value),c.push(e.data))});h=l.getCheckedFilters(),e={$table:l,$event:t,column:e,field:s,property:s,values:d,datas:c,filters:h,filterList:h};return u.remote||(l.handleTableData(!0),l.checkSelectionStatus()),r&&o.area&&l.handleFilterEvent&&l.handleFilterEvent(t,e),t&&l.dispatchEvent("filter-change",e,t),l.closeFilter(),l.updateFooter().then(()=>{var{scrollXLoad:e,scrollYLoad:t}=i;if(n||e||a||t)return(n||e)&&l.updateScrollXSpace(),(a||t)&&l.updateScrollYSpace(),l.refreshScroll()}).then(()=>(l.updateCellAreas(),l.recalculate(!0))).then(()=>{setTimeout(()=>l.recalculate(),50)})},confirmFilterEvent(e,t){t&&this.handleColumnConfirmFilter(t,e)},handleClearFilter(e){if(e){var{filters:l,filterRender:r}=e;if(l){var i=this.computeRendererOpts,i=(0,_utils.isEnableConf)(r)&&r.name?i[r.name]||renderer.get(r.name):null;let t=e.filterResetMethod||(i?i.tableFilterResetMethod||i.filterResetMethod:null);l.forEach(e=>{e._checked=!1,e.checked=!1,t||(e.data=_xeUtils.default.clone(e.resetValue,!0))}),t&&t({options:l,column:e,$table:this})}}},handleFilterResetFilter(e,t){t&&(this.handleClearFilter(t),this.confirmFilterEvent(e,t),e)&&this.dispatchEvent("clear-filter",{filterList:[]},e)},handleFilterStyle(){var e=this.filterStore;return e.visible?updatePopupStyle(this):this.$nextTick()},_clearFilter(e){var t=this,l=t.filterStore,r=t.tableFullColumn;let i;return e?(i=(0,_util.handleFieldOrColumn)(t,e))&&t.handleClearFilter(i):r.forEach(t.handleClearFilter),e&&i===l.column||Object.assign(l,{isAllSelected:!1,isIndeterminate:!1,style:null,options:[],column:null,multiple:!1,visible:!1}),t.updateData()},_updateFilterOptionStatus(e,t){return e._checked=t,e.checked=t,this.$nextTick()}}};
@@ -253,12 +253,13 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
253
253
  return [];
254
254
  }
255
255
  const filterOpts = $xeTable.computeFilterOpts;
256
+ const rendererOpts = $xeTable.computeRendererOpts;
256
257
  const hasCheckOption = $xeFilterPanel.computeHasCheckOption;
257
258
  const {
258
259
  filterRender,
259
260
  filterMultiple
260
261
  } = column;
261
- const compConf = (0, _utils.isEnableConf)(filterRender) ? renderer.get(filterRender.name) : null;
262
+ const compConf = filterRender && (0, _utils.isEnableConf)(filterRender) && filterRender.name ? rendererOpts[filterRender.name] || renderer.get(filterRender.name) : null;
262
263
  const isDisabled = !hasCheckOption && !filterStore.isAllSelected && !filterStore.isIndeterminate;
263
264
  return filterMultiple && (compConf ? !(compConf.showTableFilterFooter === false || compConf.showFilterFooter === false || compConf.isFooter === false) : true) ? [h('div', {
264
265
  class: 'vxe-table--filter-footer'
@@ -293,8 +294,9 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
293
294
  if (!column) {
294
295
  return renderEmptyElement($xeFilterPanel);
295
296
  }
297
+ const rendererOpts = $xeTable.computeRendererOpts;
296
298
  const filterRender = column ? column.filterRender : null;
297
- const compConf = filterRender && (0, _utils.isEnableConf)(filterRender) ? renderer.get(filterRender.name) : null;
299
+ const compConf = filterRender && (0, _utils.isEnableConf)(filterRender) && filterRender.name ? rendererOpts[filterRender.name] || renderer.get(filterRender.name) : null;
298
300
  const filterClassName = compConf ? compConf.tableFilterClassName || compConf.filterClassName : '';
299
301
  const params = Object.assign({}, tableInternalData._currFilterParams, {
300
302
  $panel: $xeFilterPanel,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../../ui/src/comp"),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_vn=require("../../../ui/src/vn"),_log=require("../../../ui/src/log");let warnLog=(0,_log.createComponentLog)("table").warnLog,{getI18n,getIcon,renderer,globalMixins,renderEmptyElement}=_ui.VxeUI;function filterCheckAllEvent(e,t,l){var e=e.filterStore,r=e.column;r&&r.filters&&r.filters.forEach(e=>{e._checked=l,e.checked=l}),e.isAllSelected=l,e.isIndeterminate=!1}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableFilterPanel",mixins:[globalMixins.sizeMixin],props:{filterStore:{type:Object,default:()=>({})}},inject:{$xeTable:{default:null}},computed:Object.assign(Object.assign({},{}),{computeHasCheckOption(){var e=this.filterStore,e=e.column;return e&&e.filters&&e.filters.some(e=>e.checked)}}),mounted(){var e=this.$xeTable.computeFilterOpts.transfer,t=this.$refs.refElem;e&&t&&document.body.appendChild(t)},beforeDestroy(){var e=this.$refs.refElem;e&&e.parentNode&&e.parentNode.removeChild(e)},methods:{changeRadioOption(e,t,l){this.$xeTable.handleFilterChangeRadioOption(e,t,l)},changeMultipleOption(e,t,l){var r=this.$xeTable;l._checked=t,r.checkFilterOptions()},changeAllOption(e,t){var l=this,r=l.filterStore,r=r.column;r&&r.filterMultiple?filterCheckAllEvent(l,e,t):l.resetFilter(e)},changeOption(e,t,l){this.$xeTable.handleFilterChangeOption(e,t,l)},confirmFilter(e){var t=this.$xeTable,l=this.filterStore;e||warnLog("vxe.error.delFunc",["confirmFilter","saveFilterPanelByEvent"]),t.handleFilterConfirmFilter(e||new Event("click"),l.column||null)},resetFilter(e){var t=this.filterStore;this.$xeTable.handleFilterResetFilter(e,t.column||null)},renderOptions(l,e,t){let r=this;var i=r,n=r.$xeTable;let a=i.filterStore;var{column:i,maxHeight:s}=a;if(!i)return[];let{filterMultiple:o,filters:c,slots:d}=i;var i=c||[],u=d?d.filter:null,m=Object.assign({},n._currFilterParams,{option:i[0],$panel:r,$table:n}),t=t?t.renderTableFilter||t.renderFilter:null;return u?[l("div",{class:"vxe-table--filter-template",style:s?{maxHeight:(0,_dom.toCssUnit)(s)}:{}},n.callSlot(u,m,l))]:e&&t?[l("div",{class:"vxe-table--filter-template",style:s?{maxHeight:(0,_dom.toCssUnit)(s)}:{}},(0,_vn.getSlotVNs)(t.call(n,l,e,m)))]:(u=o?a.isAllSelected:!i.some(e=>e._checked),t=o&&a.isIndeterminate,[l("ul",{class:"vxe-table--filter-header"},[l("li",{class:["vxe-table--filter-option",{"is--checked":u,"is--indeterminate":t}],attrs:{title:getI18n(o?"vxe.table.allTitle":"vxe.table.allFilter")},on:{click:e=>{r.changeAllOption(e,!a.isAllSelected)}}},(o?[l("span",{class:["vxe-checkbox--icon",t?getIcon().TABLE_CHECKBOX_INDETERMINATE:u?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([l("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.allFilter"))]))]),l("ul",{class:"vxe-table--filter-body",style:s?{maxHeight:(0,_dom.toCssUnit)(s)}:{}},i.map(t=>{var e=t._checked;return l("li",{class:["vxe-table--filter-option",{"is--checked":e}],attrs:{title:t.label},on:{click:e=>{r.changeOption(e,!t._checked,t)}}},(o?[l("span",{class:["vxe-checkbox--icon",e?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([l("span",{class:"vxe-checkbox--label"},(0,_utils.formatText)(t.label,1))]))}))])},renderFooter(e){var t,l,r=this,i=r.$xeTable,n=r.filterStore,a=n.column;return a&&(i=i.computeFilterOpts,l=r.computeHasCheckOption,{filterRender:a,filterMultiple:t}=a,a=(0,_utils.isEnableConf)(a)?renderer.get(a.name):null,l=!l&&!n.isAllSelected&&!n.isIndeterminate,t)&&(!a||!1!==a.showTableFilterFooter&&!1!==a.showFilterFooter&&!1!==a.isFooter)?[e("div",{class:"vxe-table--filter-footer"},[e("button",{class:{"is--disabled":l},attrs:{disabled:l},on:{click:r.confirmFilter}},i.confirmButtonText||getI18n("vxe.table.confirmFilter")),e("button",{on:{click:r.resetFilter}},i.resetButtonText||getI18n("vxe.table.resetFilter"))])]:[]},renderVN(e){var t,l,r,i,n,a,s=this,o=s.$xeTable,c=o,d=s.filterStore,{visible:u,column:m}=d;return m?(r=(l=(t=m?m.filterRender:null)&&(0,_utils.isEnableConf)(t)?renderer.get(t.name):null)?l.tableFilterClassName||l.filterClassName:"",c=Object.assign({},c._currFilterParams,{$panel:s,$table:o}),i=s.computeSize,{destroyOnClose:n,className:a}=(o=o).computeFilterOpts,e("div",{ref:"refElem",class:["vxe-table--filter-wrapper","filter--prevent-default",a,l&&l.className?l.className:"",(0,_dom.getPropClass)(r,c),{["size--"+i]:i,"is--animat":o.animat,"is--multiple":m.filterMultiple,"is--active":u}],style:d.style},d.visible&&(!n||u)&&m?s.renderOptions(e,t,l).concat(s.renderFooter(e)):[])):renderEmptyElement(s)}},render(e){return this.renderVN(e)}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../../ui/src/comp"),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_vn=require("../../../ui/src/vn"),_log=require("../../../ui/src/log");let warnLog=(0,_log.createComponentLog)("table").warnLog,{getI18n,getIcon,renderer,globalMixins,renderEmptyElement}=_ui.VxeUI;function filterCheckAllEvent(e,t,l){var e=e.filterStore,r=e.column;r&&r.filters&&r.filters.forEach(e=>{e._checked=l,e.checked=l}),e.isAllSelected=l,e.isIndeterminate=!1}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableFilterPanel",mixins:[globalMixins.sizeMixin],props:{filterStore:{type:Object,default:()=>({})}},inject:{$xeTable:{default:null}},computed:Object.assign(Object.assign({},{}),{computeHasCheckOption(){var e=this.filterStore,e=e.column;return e&&e.filters&&e.filters.some(e=>e.checked)}}),mounted(){var e=this.$xeTable.computeFilterOpts.transfer,t=this.$refs.refElem;e&&t&&document.body.appendChild(t)},beforeDestroy(){var e=this.$refs.refElem;e&&e.parentNode&&e.parentNode.removeChild(e)},methods:{changeRadioOption(e,t,l){this.$xeTable.handleFilterChangeRadioOption(e,t,l)},changeMultipleOption(e,t,l){var r=this.$xeTable;l._checked=t,r.checkFilterOptions()},changeAllOption(e,t){var l=this,r=l.filterStore,r=r.column;r&&r.filterMultiple?filterCheckAllEvent(l,e,t):l.resetFilter(e)},changeOption(e,t,l){this.$xeTable.handleFilterChangeOption(e,t,l)},confirmFilter(e){var t=this.$xeTable,l=this.filterStore;e||warnLog("vxe.error.delFunc",["confirmFilter","saveFilterPanelByEvent"]),t.handleFilterConfirmFilter(e||new Event("click"),l.column||null)},resetFilter(e){var t=this.filterStore;this.$xeTable.handleFilterResetFilter(e,t.column||null)},renderOptions(l,e,t){let r=this;var i=r,n=r.$xeTable;let a=i.filterStore;var{column:i,maxHeight:s}=a;if(!i)return[];let{filterMultiple:o,filters:c,slots:d}=i;var i=c||[],m=d?d.filter:null,u=Object.assign({},n._currFilterParams,{option:i[0],$panel:r,$table:n}),t=t?t.renderTableFilter||t.renderFilter:null;return m?[l("div",{class:"vxe-table--filter-template",style:s?{maxHeight:(0,_dom.toCssUnit)(s)}:{}},n.callSlot(m,u,l))]:e&&t?[l("div",{class:"vxe-table--filter-template",style:s?{maxHeight:(0,_dom.toCssUnit)(s)}:{}},(0,_vn.getSlotVNs)(t.call(n,l,e,u)))]:(m=o?a.isAllSelected:!i.some(e=>e._checked),t=o&&a.isIndeterminate,[l("ul",{class:"vxe-table--filter-header"},[l("li",{class:["vxe-table--filter-option",{"is--checked":m,"is--indeterminate":t}],attrs:{title:getI18n(o?"vxe.table.allTitle":"vxe.table.allFilter")},on:{click:e=>{r.changeAllOption(e,!a.isAllSelected)}}},(o?[l("span",{class:["vxe-checkbox--icon",t?getIcon().TABLE_CHECKBOX_INDETERMINATE:m?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([l("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.allFilter"))]))]),l("ul",{class:"vxe-table--filter-body",style:s?{maxHeight:(0,_dom.toCssUnit)(s)}:{}},i.map(t=>{var e=t._checked;return l("li",{class:["vxe-table--filter-option",{"is--checked":e}],attrs:{title:t.label},on:{click:e=>{r.changeOption(e,!t._checked,t)}}},(o?[l("span",{class:["vxe-checkbox--icon",e?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([l("span",{class:"vxe-checkbox--label"},(0,_utils.formatText)(t.label,1))]))}))])},renderFooter(e){var t,l,r,i=this,n=i.$xeTable,a=i.filterStore,s=a.column;return s&&(t=n.computeFilterOpts,n=n.computeRendererOpts,l=i.computeHasCheckOption,{filterRender:s,filterMultiple:r}=s,n=s&&(0,_utils.isEnableConf)(s)&&s.name?n[s.name]||renderer.get(s.name):null,s=!l&&!a.isAllSelected&&!a.isIndeterminate,r)&&(!n||!1!==n.showTableFilterFooter&&!1!==n.showFilterFooter&&!1!==n.isFooter)?[e("div",{class:"vxe-table--filter-footer"},[e("button",{class:{"is--disabled":s},attrs:{disabled:s},on:{click:i.confirmFilter}},t.confirmButtonText||getI18n("vxe.table.confirmFilter")),e("button",{on:{click:i.resetFilter}},t.resetButtonText||getI18n("vxe.table.resetFilter"))])]:[]},renderVN(e){var t,l,r,i,n,a,s=this,o=s.$xeTable,c=o,d=s.filterStore,{visible:m,column:u}=d;return u?(l=o.computeRendererOpts,r=(l=(t=u?u.filterRender:null)&&(0,_utils.isEnableConf)(t)&&t.name?l[t.name]||renderer.get(t.name):null)?l.tableFilterClassName||l.filterClassName:"",c=Object.assign({},c._currFilterParams,{$panel:s,$table:o}),i=s.computeSize,{destroyOnClose:n,className:a}=(o=o).computeFilterOpts,e("div",{ref:"refElem",class:["vxe-table--filter-wrapper","filter--prevent-default",a,l&&l.className?l.className:"",(0,_dom.getPropClass)(r,c),{["size--"+i]:i,"is--animat":o.animat,"is--multiple":u.filterMultiple,"is--active":m}],style:d.style},d.visible&&(!n||m)&&u?s.renderOptions(e,t,l).concat(s.renderFooter(e)):[])):renderEmptyElement(s)}},render(e){return this.renderVN(e)}});
@@ -155,6 +155,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
155
155
  const tooltipOpts = $xeTable.computeTooltipOpts;
156
156
  const virtualXOpts = $xeTable.computeVirtualXOpts;
157
157
  const virtualYOpts = $xeTable.computeVirtualYOpts;
158
+ const rendererOpts = $xeTable.computeRendererOpts;
158
159
  const {
159
160
  isAllColumnDrag,
160
161
  isAllRowDrag
@@ -201,7 +202,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
201
202
  const colid = column.id;
202
203
  const colRest = fullColumnIdData[colid] || {};
203
204
  const renderOpts = editRender || cellRender;
204
- const compConf = renderOpts ? renderer.get(renderOpts.name) : null;
205
+ const compConf = renderOpts && renderOpts.name ? rendererOpts[renderOpts.name] || renderer.get(renderOpts.name) : null;
205
206
  const compCellClassName = compConf ? compConf.tableCellClassName || compConf.cellClassName : null;
206
207
  const compCellStyle = compConf ? compConf.tableCellStyle || compConf.cellStyle : '';
207
208
  const showAllTip = tooltipOpts.showAll;
@@ -937,7 +938,8 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
937
938
  if (emptySlot) {
938
939
  emptyContent = emptySlot.call($xeTable, emptyParams);
939
940
  } else {
940
- const compConf = emptyOpts.name ? renderer.get(emptyOpts.name) : null;
941
+ const rendererOpts = $xeTable.computeRendererOpts;
942
+ const compConf = emptyOpts.name ? rendererOpts[emptyOpts.name] || renderer.get(emptyOpts.name) : null;
941
943
  const rtEmptyView = compConf ? compConf.renderTableEmpty || compConf.renderTableEmptyView || compConf.renderEmpty : null;
942
944
  if (rtEmptyView) {
943
945
  emptyContent = (0, _vn.getSlotVNs)(rtEmptyView.call($xeTable, h, emptyOpts, emptyParams));
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_comp=require("../../ui/src/comp"),_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,sourceType="table",renderType="body",isVMScrollProcess=e=>{var l=e.delayHover,t=e.isDragResize,e=e.lastSTime;return!!(t||e&&Date.now()<e+l)};function renderLine(o,i,a,s,d){var n=s.column,c=i.treeConfig,p=i.computeCellOpts,u=i.computeRowOpts,g=i.computeDefaultRowHeight,x=i.computeTreeOpts,{slots:n,treeNode:m}=n,v=i.fullAllDataRowIdData;if(c&&m&&(x.showLine||x.line)){if(n&&n.line)return i.callSlot(n.line,s,o);c=v[a];let e=0,l=null,t=null,r="";return(c&&(e=c.level,l=c.items[c.treeIndex-1],t=c.parent),e||x.showRootLine)?(l?(m=v[(0,_util.getRowid)(i,l)]||{},r=`${m.lineHeight||0}px`):e&&t&&(n=v[(0,_util.getRowid)(i,t)]||{},r=`calc(-1em + ${Math.floor(d/2+(0,_util.getCellRestHeight)(n,p,u,g)/2)}px)`),[o("div",{key:"tl",class:"vxe-tree--line-wrapper"},[o("div",{class:"vxe-tree--line",style:{height:r,bottom:`-${Math.floor(d/2)}px`,left:`calc(${e*x.indent}px + 1em)`}})])]):[]}return[]}function renderTdColumn(e,l,z,t,r,A,F,o,q,L,i,a,V,U,s){var d=l.$xeGrid,N=l.$xeGantt,{columnKey:G,resizable:n,showOverflow:c,border:W,height:p,treeConfig:X,cellClassName:Y,cellStyle:j,align:P,spanMethod:K,mouseConfig:J,editConfig:Q,editRules:u,tooltipConfig:g,padding:x}=l,{tableData:Z,tableColumn:ee,dragRow:le,overflowX:te,overflowY:re,scrollXLoad:oe,scrollYLoad:ie,mergeBodyFlag:ae,calcCellHeightFlag:m,resizeHeightFlag:v,resizeWidthFlag:se,editStore:de,isAllOverflow:ne,validErrorMaps:w,currColFlag:ce}=l,{fullAllDataRowIdData:pe,fullColumnIdData:h,mergeBodyCellMaps:ue,visibleColumn:ge,afterFullData:xe,mergeBodyList:me,scrollXStore:ve,scrollYStore:we,keepUpdateFieldMaps:he,currentCol:fe}=l,f=l.computeCellOpts,y=l.computeValidOpts,b=l.computeCheckboxOpts,ye=l.computeEditOpts,be=l.computeTooltipOpts,Ce=l.computeVirtualXOpts,_e=l.computeVirtualYOpts,{isAllColumnDrag:Re,isAllRowDrag:Ee}=l.resizableOpts,C=l.computeRowOpts,_=l.computeRowDragOpts,Se=l.computeDefaultRowHeight,m=m?f.height||C.height:0,{disabledMethod:R,isCrossDrag:$e,isPeerDrag:De}=_,Oe=l.computeColumnOpts,Ie=l.computeMouseOpts,Te=l.computeCellOffsetWidth,ke=l.computeAreaOpts.selectCellToRow,{field:Be,type:Me,cellRender:E,editRender:He,align:ze,showOverflow:Ae,className:Fe,treeNode:qe,rowResize:Le,padding:S,verticalAlign:$,slots:Ve}=a,{verticalAlign:D,minHeight:Ue,maxHeight:Ne}=f,de=de.actived,Ge=pe[t]||{},O=a.id,h=h[O]||{},E=He||E,E=E?renderer.get(E.name):null,We=E?E.tableCellClassName||E.cellClassName:null,Xe=E?E.tableCellStyle||E.cellStyle:"";let Ye=be.showAll;var je=h.index,h=h._index,He=(0,_utils.isEnableConf)(He),v=v?Ge.resizeHeight:0;let I=te&&(r?a.fixed!==r:!!a.fixed);var S=(0,_utils.getDefaultConfig)(S,null===x?f.padding:x),x=!0===S,Pe=!!S&&(x||!1!==S.top),Ke=!!S&&(x||!1!==S.bottom),Je=!!S&&(x||!1!==S.left),x=!!S&&(x||!1!==S.right),S=(0,_utils.getDefaultConfig)(Ae,c),Ae="ellipsis"===S;let T="title"===S,k=!0===S?"tooltip"===be.mode:"tooltip"===S;c=ne||T||k||Ae,be=_xeUtils.default.isBoolean(a.resizable)?a.resizable:Oe.resizable||n,S=!!m,n=0<v;let Qe;m={},v=ze||(E?E.tableCellAlign:"")||P,ze=_xeUtils.default.eqNull($)?D:$,E=w[t+":"+O],P=u&&y.showErrorMessage&&("default"===y.message?p||1<Z.length:"inline"===y.message),D={colid:O};let B={$table:l,$grid:d,$gantt:N,isEdit:!1,seq:z,rowid:t,row:o,rowIndex:q,$rowIndex:L,_rowIndex:i,column:a,columnIndex:je,$columnIndex:V,_columnIndex:h,fixed:r,source:sourceType,type:renderType,isHidden:!!I,level:F,visibleData:xe,data:Z,items:s},M=!1,Ze=!1,H=((M=C.drag?"row"===_.trigger||a.dragSort&&"cell"===_.trigger:M)&&(Ze=!(!R||!R(B))),(T||k||Ye||g)&&(m.mouseover=e=>{isVMScrollProcess(l)||(T?(0,_dom.updateCellTitle)(e.currentTarget,a):(k||Ye)&&l.triggerBodyTooltipEvent(e,B)),l.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},B),e)}),(k||Ye||g)&&(m.mouseleave=e=>{isVMScrollProcess(l)||(k||Ye)&&l.handleTargetLeaveEvent(e),l.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},B),e)}),(M||b.range||J)&&(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)})),el=1,ll=1;if(ae&&me.length){$=ue[i+":"+h];if($){var{rowspan:w,colspan:u}=$;if(!w||!u)return renderEmptyElement(l);1<w&&(H=!0,ll=w,D.rowspan=w),1<u&&(H=!0,el=u,D.colspan=u)}}else if(K){var{rowspan:p=1,colspan:d=1}=K(B)||{};if(!p||!d)return renderEmptyElement(l);1<p&&(H=!0,ll=p,D.rowspan=p),1<d&&(H=!0,el=d,D.colspan=d)}!(I=I&&H&&(1<D.colspan||1<D.rowspan)?!1:I)&&Q&&(ye.showStatus||ye.showUpdateStatus)&&he[Be]&&(Qe=l.isUpdateByRow(o,Be));N=!c&&(ie||oe);let tl=(0,_util.getCellRestHeight)(Ge,f,C,Se);z=V===U.length-1,q=!a.resizeWidth&&("auto"===a.minWidth||"auto"===a.width);let rl=!1;H||le&&(0,_util.getRowid)(l,le)===t||(re&&ie&&!X&&16<Z.length&&!_e.immediate&&(i<we.visibleStartIndex-we.preloadSize||i>we.visibleEndIndex+we.preloadSize)||te&&oe&&10<ee.length&&!Ce.immediate&&!a.fixed&&(h<ve.visibleStartIndex-ve.preloadSize||h>ve.visibleEndIndex+ve.preloadSize))&&(rl=!0),1<ll&&(L=xe[i+ll-1])&&(s=pe[(0,_util.getRowid)(l,L)])&&(tl+=s.oTop+(0,_util.getCellRestHeight)(s,f,C,Se)-Ge.oTop-(0,_util.getCellRestHeight)(Ge,f,C,Se));_={};if(Ne&&(_.maxHeight=Ne+"px"),c&&se){let l=0;if(1<el)for(let e=1;e<el;e++){var ol=ge[je+e];ol&&(l+=ol.renderWidth)}_.width=a.renderWidth+l-Te+"px"}ie||oe||c||S||n?_.height=tl+"px":_.minHeight=tl+"px",Ue&&(_.minHeight=Ue+"px");R=[];I&&ne?R.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":Ae}],style:_})):(X&&R.push(...renderLine(e,l,t,B,tl)),g=[],rl||g.push(e("div",{attrs:{colid:O,rowid:t},class:"vxe-cell--wrapper vxe-body-cell--wrapper"},a.renderCell(e,B))),R.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":Ae}],style:_,attrs:{title:T?l.getCellLabel(o,a):null}},g)),P&&E&&(b=E.rule,ae=Ve?Ve.valid:null,me=Object.assign(Object.assign(Object.assign({},B),E),{rule:E}),R.push(e("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(y.className,E)],style:b&&b.maxWidth?{width:b.maxWidth+"px"}:void 0},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(y.theme||"normal")},[ae?l.callSlot(ae,me,e):[e("span",{class:"vxe-cell--valid-error-msg"},E.content)]])]))));let il=!1;return J&&Ie.area&&!h&&ke&&(il=!0),!I&&be&&Re&&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)}})),(Le||Ee)&&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-table--column vxe-body--column",O,ze?"col--vertical-"+ze:"",v?"col--"+v:"",Me?"col--"+Me:"",{"col--last":z,"col--tree-node":qe,"col--edit":He,"col--ellipsis":c,"col--cs-height":S,"col--rs-height":n,"col--to-row":il,"col--auto-height":N,"col--max-height":Ne,"fixed--width":!q,"fixed--hidden":I,"is--pg-top":Pe,"is--pg-bottom":Ke,"is--pg-left":Je,"is--pg-right":x,"is--progress":I&&ne||rl,"is--drag-cell":M&&($e||De||!F),"is--drag-disabled":Ze,"col--dirty":Qe,"col--active":Q&&He&&de.row===o&&(de.column===a||"row"===ye.mode),"col--valid-error":!!E,"show--valid-bg":E&&y.showErrorBackground,"col--current":ce&&fe===a},(0,_utils.getClass)(We,B),(0,_utils.getClass)(Fe,B),(0,_utils.getClass)(Y,B)],key:G||oe||ie||Oe.useKey||C.useKey||Oe.drag?a.id:V,attrs:D,style:Object.assign({},_xeUtils.default.isFunction(Xe)?Xe(B):Xe,_xeUtils.default.isFunction(j)?j(B):j),on:m},A&&I?[]:R)}function renderRows(v,w,h,f,y,b){let C=w.$parent;var e=C,l=C,t=C;let _=C.$xeGrid,R=C.$xeGantt,{stripe:E,rowKey:S,highlightHoverRow:$,rowClassName:D,rowStyle:O,editConfig:I,treeConfig:T}=e,{hasFixedColumn:k,treeExpandedFlag:B,scrollYLoad:M,isAllOverflow:H,rowExpandedFlag:z,expandColumn:A,selectRadioRow:F,pendingRowFlag:q,rowExpandHeightFlag:L,isRowGroupStatus:V}=l,{fullAllDataRowIdData:P,fullColumnIdData:K,treeExpandedMaps:J,pendingRowMaps:Q,rowExpandedMaps:Z,currentRow:U}=t,ee=C.computeCheckboxOpts,le=C.computeRadioOpts,N=C.computeTreeOpts,G=C.computeEditOpts,W=C.computeRowOpts,te=C.computeColumnOpts,{transform:X,seqMode:Y}=N,re=N.children||N.childrenField,j=[],oe=(0,_util.createHandleGetRowId)(C).handleGetRowId,ie=T||V;return y.forEach((r,o)=>{var i={};let a=oe(r);var s=P[a]||{};let d=o,n=0,c=-1,p=-1;var u=V&&r.isAggregate,g=((W.isHover||$)&&(i.mouseover=e=>{isVMScrollProcess(C)||C.triggerHoverEvent(e,{row:r,rowIndex:d})},i.mouseleave=()=>{isVMScrollProcess(C)||C.clearHoverRow()}),s&&(d=s.index,p=s._index,n=s.level,c=s.seq,u||T&&X&&"increasing"===Y?c=s._index+1:T&&"fixed"===Y&&(c=s._tIndex+1)),{$table:C,seq:c,rowid:a,fixed:h,type:renderType,level:n,row:r,rowIndex:d,$rowIndex:o,_rowIndex:p}),x=A&&!!z&&!!Z[a];let e=!1,l=[],t=!1;I&&(t=C.isInsertByRow(r)),!T||M||X||(l=r[re],e=!!B&&l&&0<l.length&&!!J[a]),!W.drag||V||T&&!X||(i.dragstart=C.handleRowDragDragstartEvent,i.dragend=C.handleRowDragDragendEvent,i.dragover=C.handleRowDragDragoverEvent);var u=["vxe-body--row",ie?"row--level-"+n:"",{"row--stripe":E&&(p+1)%2==0,"is--new":t,"is--expand-row":x,"is--expand-tree":e,"row--new":t&&(G.showStatus||G.showInsertStatus),"row--radio":le.highlight&&F===r,"row--checked":ee.highlight&&C.isCheckedByCheckboxRow(r),"row--pending":!!q&&!!Q[a],"row--group":u,"row--current":U&&a===(0,_util.getRowid)(C,U)},D?_xeUtils.default.isFunction(D)?D(g):D:""],m=b.map((e,l)=>renderTdColumn(v,C,c,a,h,f,n,r,d,o,p,e,l,b,y));if(j.push(v("tr",{class:u,attrs:{rowid:a},style:O?_xeUtils.default.isFunction(O)?O(g):O:void 0,key:S||W.useKey||W.drag||te.drag||V||T?a:o,on:i},m)),x){var{height:u,padding:g,mode:i}=C.computeExpandOpts;if("fixed"===i){m=s.expandHeight;let e=0;L&&(m||u)&&(e=(m||u||0)+1),j.push(v("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+a,attrs:{rowid:a}},[v("td",{class:"vxe-body--row-expanded-place-column",attrs:{colspan:b.length},style:{height:e+"px"}})]))}else{x={},i=(u&&(x.height=u+"px"),T&&(x.paddingLeft=n*N.indent+30+"px"),A||{}).showOverflow,s=A.id,m=K[s]||{},s=_xeUtils.default.eqNull(i)?H:i;let e=-1,l=-1,t=-1;m&&(e=m.index,l=m.$index,t=m._index);i={$grid:_,$table:C,$gantt:R,seq:c,column:A,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,source:sourceType,type:renderType,level:n,row:r,rowid:a,rowIndex:d,$rowIndex:o,_rowIndex:p,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};j.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":g}],key:"expand_"+a},[v("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!k,"col--ellipsis":s}],attrs:{colspan:b.length}},[v("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":u}],style:x},[A.renderData(v,i)])])]))}}e&&j.push(...renderRows(v,w,h,f,l,b))}),j}var _default=exports.default=(0,_comp.defineVxeComponent)({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,i=l.$xeGrid,a=l.$xeGantt,s=l.$scopedSlots,d=l.xID;let{fixedColumn:n,fixedType:c,tableColumn:p}=this;var u=e.mouseConfig,{isGroup:r,tableData:g,isColLoading:x,overflowX:m,scrollXLoad:v,scrollYLoad:w,dragRow:h,dragCol:f}=r,{visibleColumn:o,fullAllDataRowIdData:y,fullColumnIdData:b}=o,C=l.computeEmptyOpts,_=l.computeMouseOpts;let R=g,E=p;g=l.computeIsBodyRenderOptimize;x||!c&&m||(E=o),c&&g&&(E=n||[]),w&&h&&2<R.length&&(x=y[(0,_util.getRowid)(l,h)])&&(m=x._index,o=R[0],w=R[R.length-1],x=y[(0,_util.getRowid)(l,o)],o=y[(0,_util.getRowid)(l,w)],x)&&o&&(y=x._index,w=o._index,m<y?R=[h].concat(R):w<m&&(R=R.concat([h]))),c||r||v&&f&&2<E.length&&(x=b[f.id])&&(o=x._index,y=E[0],w=E[E.length-1],m=b[y.id],h=b[w.id],m)&&h&&(r=m._index,v=h._index,o<r?E=[f].concat(E):v<o&&(E=E.concat([f])));let S;x=s?s.empty:null,y={$table:l,$grid:i,$gantt:a};return S=x?x.call(l,y):(w=(b=C.name?renderer.get(C.name):null)?b.renderTableEmpty||b.renderTableEmptyView||b.renderEmpty:null)?(0,_vn.getSlotVNs)(w.call(l,t,C,y)):e.emptyText||getI18n("vxe.table.emptyText"),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",c?`fixed-${c}--wrapper`:"body--wrapper"],attrs:{xid:d}},[t("div",{ref:"refBodyScroll",class:"vxe-table--body-inner-wrapper",on:{scroll(e){l.triggerBodyScrollEvent(e,c)}}},[c?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:d,cellspacing:0,cellpadding:0,border:0,xvm:g?"1":null}},[t("colgroup",{ref:"refBodyColgroup"},E.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),t("tbody",{ref:"refBodyTBody"},renderRows(t,this,c,g,R,E))]),t("div",{class:"vxe-table--checkbox-range"}),u&&_.area?t("div",{class:"vxe-table--cell-area",attrs:{xid:d}},[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:c,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-clip-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),c?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},S)])])])}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_comp=require("../../ui/src/comp"),_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,sourceType="table",renderType="body",isVMScrollProcess=e=>{var l=e.delayHover,t=e.isDragResize,e=e.lastSTime;return!!(t||e&&Date.now()<e+l)};function renderLine(o,a,i,s,d){var n=s.column,c=a.treeConfig,p=a.computeCellOpts,u=a.computeRowOpts,g=a.computeDefaultRowHeight,m=a.computeTreeOpts,{slots:n,treeNode:x}=n,v=a.fullAllDataRowIdData;if(c&&x&&(m.showLine||m.line)){if(n&&n.line)return a.callSlot(n.line,s,o);c=v[i];let e=0,l=null,t=null,r="";return(c&&(e=c.level,l=c.items[c.treeIndex-1],t=c.parent),e||m.showRootLine)?(l?(x=v[(0,_util.getRowid)(a,l)]||{},r=`${x.lineHeight||0}px`):e&&t&&(n=v[(0,_util.getRowid)(a,t)]||{},r=`calc(-1em + ${Math.floor(d/2+(0,_util.getCellRestHeight)(n,p,u,g)/2)}px)`),[o("div",{key:"tl",class:"vxe-tree--line-wrapper"},[o("div",{class:"vxe-tree--line",style:{height:r,bottom:`-${Math.floor(d/2)}px`,left:`calc(${e*m.indent}px + 1em)`}})])]):[]}return[]}function renderTdColumn(e,l,z,t,r,A,F,o,q,L,a,i,V,U,s){var d=l.$xeGrid,N=l.$xeGantt,{columnKey:G,resizable:n,showOverflow:c,border:W,height:p,treeConfig:X,cellClassName:Y,cellStyle:j,align:P,spanMethod:K,mouseConfig:J,editConfig:Q,editRules:u,tooltipConfig:g,padding:m}=l,{tableData:Z,tableColumn:ee,dragRow:le,overflowX:te,overflowY:re,scrollXLoad:oe,scrollYLoad:ae,mergeBodyFlag:ie,calcCellHeightFlag:x,resizeHeightFlag:v,resizeWidthFlag:se,editStore:de,isAllOverflow:ne,validErrorMaps:w,currColFlag:ce}=l,{fullAllDataRowIdData:pe,fullColumnIdData:h,mergeBodyCellMaps:ue,visibleColumn:ge,afterFullData:me,mergeBodyList:xe,scrollXStore:ve,scrollYStore:we,keepUpdateFieldMaps:he,currentCol:fe}=l,f=l.computeCellOpts,y=l.computeValidOpts,b=l.computeCheckboxOpts,ye=l.computeEditOpts,be=l.computeTooltipOpts,Ce=l.computeVirtualXOpts,Re=l.computeVirtualYOpts,{isAllColumnDrag:_e,isAllRowDrag:Ee}=l.resizableOpts,C=l.computeRowOpts,R=l.computeRowDragOpts,Se=l.computeDefaultRowHeight,x=x?f.height||C.height:0,{disabledMethod:_,isCrossDrag:$e,isPeerDrag:De}=R,Oe=l.computeColumnOpts,Ie=l.computeMouseOpts,Te=l.computeCellOffsetWidth,ke=l.computeAreaOpts.selectCellToRow,{field:Be,type:Me,cellRender:E,editRender:He,align:ze,showOverflow:Ae,className:Fe,treeNode:qe,rowResize:Le,padding:S,verticalAlign:$,slots:Ve}=i,{verticalAlign:D,minHeight:Ue,maxHeight:Ne}=f,de=de.actived,Ge=pe[t]||{},O=i.id,h=h[O]||{},E=He||E,E=E&&E.name?l.computeRendererOpts[E.name]||renderer.get(E.name):null,We=E?E.tableCellClassName||E.cellClassName:null,Xe=E?E.tableCellStyle||E.cellStyle:"";let Ye=be.showAll;var je=h.index,h=h._index,He=(0,_utils.isEnableConf)(He),v=v?Ge.resizeHeight:0;let I=te&&(r?i.fixed!==r:!!i.fixed);var S=(0,_utils.getDefaultConfig)(S,null===m?f.padding:m),m=!0===S,Pe=!!S&&(m||!1!==S.top),Ke=!!S&&(m||!1!==S.bottom),Je=!!S&&(m||!1!==S.left),m=!!S&&(m||!1!==S.right),S=(0,_utils.getDefaultConfig)(Ae,c),Ae="ellipsis"===S;let T="title"===S,k=!0===S?"tooltip"===be.mode:"tooltip"===S;c=ne||T||k||Ae,be=_xeUtils.default.isBoolean(i.resizable)?i.resizable:Oe.resizable||n,S=!!x,n=0<v;let Qe;x={},v=ze||(E?E.tableCellAlign:"")||P,ze=_xeUtils.default.eqNull($)?D:$,E=w[t+":"+O],P=u&&y.showErrorMessage&&("default"===y.message?p||1<Z.length:"inline"===y.message),D={colid:O};let B={$table:l,$grid:d,$gantt:N,isEdit:!1,seq:z,rowid:t,row:o,rowIndex:q,$rowIndex:L,_rowIndex:a,column:i,columnIndex:je,$columnIndex:V,_columnIndex:h,fixed:r,source:sourceType,type:renderType,isHidden:!!I,level:F,visibleData:me,data:Z,items:s},M=!1,Ze=!1,H=((M=C.drag?"row"===R.trigger||i.dragSort&&"cell"===R.trigger:M)&&(Ze=!(!_||!_(B))),(T||k||Ye||g)&&(x.mouseover=e=>{isVMScrollProcess(l)||(T?(0,_dom.updateCellTitle)(e.currentTarget,i):(k||Ye)&&l.triggerBodyTooltipEvent(e,B)),l.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},B),e)}),(k||Ye||g)&&(x.mouseleave=e=>{isVMScrollProcess(l)||(k||Ye)&&l.handleTargetLeaveEvent(e),l.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},B),e)}),(M||b.range||J)&&(x.mousedown=e=>{l.triggerCellMousedownEvent(e,B)}),M&&(x.mouseup=l.triggerCellMouseupEvent),x.click=e=>{l.triggerCellClickEvent(e,B)},!(x.dblclick=e=>{l.triggerCellDblclickEvent(e,B)})),el=1,ll=1;if(ie&&xe.length){$=ue[a+":"+h];if($){var{rowspan:w,colspan:u}=$;if(!w||!u)return renderEmptyElement(l);1<w&&(H=!0,ll=w,D.rowspan=w),1<u&&(H=!0,el=u,D.colspan=u)}}else if(K){var{rowspan:p=1,colspan:d=1}=K(B)||{};if(!p||!d)return renderEmptyElement(l);1<p&&(H=!0,ll=p,D.rowspan=p),1<d&&(H=!0,el=d,D.colspan=d)}!(I=I&&H&&(1<D.colspan||1<D.rowspan)?!1:I)&&Q&&(ye.showStatus||ye.showUpdateStatus)&&he[Be]&&(Qe=l.isUpdateByRow(o,Be));N=!c&&(ae||oe);let tl=(0,_util.getCellRestHeight)(Ge,f,C,Se);z=V===U.length-1,q=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let rl=!1;H||le&&(0,_util.getRowid)(l,le)===t||(re&&ae&&!X&&16<Z.length&&!Re.immediate&&(a<we.visibleStartIndex-we.preloadSize||a>we.visibleEndIndex+we.preloadSize)||te&&oe&&10<ee.length&&!Ce.immediate&&!i.fixed&&(h<ve.visibleStartIndex-ve.preloadSize||h>ve.visibleEndIndex+ve.preloadSize))&&(rl=!0),1<ll&&(L=me[a+ll-1])&&(s=pe[(0,_util.getRowid)(l,L)])&&(tl+=s.oTop+(0,_util.getCellRestHeight)(s,f,C,Se)-Ge.oTop-(0,_util.getCellRestHeight)(Ge,f,C,Se));R={};if(Ne&&(R.maxHeight=Ne+"px"),c&&se){let l=0;if(1<el)for(let e=1;e<el;e++){var ol=ge[je+e];ol&&(l+=ol.renderWidth)}R.width=i.renderWidth+l-Te+"px"}ae||oe||c||S||n?R.height=tl+"px":R.minHeight=tl+"px",Ue&&(R.minHeight=Ue+"px");_=[];I&&ne?_.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":Ae}],style:R})):(X&&_.push(...renderLine(e,l,t,B,tl)),g=[],rl||g.push(e("div",{attrs:{colid:O,rowid:t},class:"vxe-cell--wrapper vxe-body-cell--wrapper"},i.renderCell(e,B))),_.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":Ae}],style:R,attrs:{title:T?l.getCellLabel(o,i):null}},g)),P&&E&&(b=E.rule,ie=Ve?Ve.valid:null,xe=Object.assign(Object.assign(Object.assign({},B),E),{rule:E}),_.push(e("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(y.className,E)],style:b&&b.maxWidth?{width:b.maxWidth+"px"}:void 0},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(y.theme||"normal")},[ie?l.callSlot(ie,xe,e):[e("span",{class:"vxe-cell--valid-error-msg"},E.content)]])]))));let al=!1;return J&&Ie.area&&!h&&ke&&(al=!0),!I&&be&&_e&&_.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)}})),(Le||Ee)&&C.resizable&&_.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-table--column vxe-body--column",O,ze?"col--vertical-"+ze:"",v?"col--"+v:"",Me?"col--"+Me:"",{"col--last":z,"col--tree-node":qe,"col--edit":He,"col--ellipsis":c,"col--cs-height":S,"col--rs-height":n,"col--to-row":al,"col--auto-height":N,"col--max-height":Ne,"fixed--width":!q,"fixed--hidden":I,"is--pg-top":Pe,"is--pg-bottom":Ke,"is--pg-left":Je,"is--pg-right":m,"is--progress":I&&ne||rl,"is--drag-cell":M&&($e||De||!F),"is--drag-disabled":Ze,"col--dirty":Qe,"col--active":Q&&He&&de.row===o&&(de.column===i||"row"===ye.mode),"col--valid-error":!!E,"show--valid-bg":E&&y.showErrorBackground,"col--current":ce&&fe===i},(0,_utils.getClass)(We,B),(0,_utils.getClass)(Fe,B),(0,_utils.getClass)(Y,B)],key:G||oe||ae||Oe.useKey||C.useKey||Oe.drag?i.id:V,attrs:D,style:Object.assign({},_xeUtils.default.isFunction(Xe)?Xe(B):Xe,_xeUtils.default.isFunction(j)?j(B):j),on:x},A&&I?[]:_)}function renderRows(v,w,h,f,y,b){let C=w.$parent;var e=C,l=C,t=C;let R=C.$xeGrid,_=C.$xeGantt,{stripe:E,rowKey:S,highlightHoverRow:$,rowClassName:D,rowStyle:O,editConfig:I,treeConfig:T}=e,{hasFixedColumn:k,treeExpandedFlag:B,scrollYLoad:M,isAllOverflow:H,rowExpandedFlag:z,expandColumn:A,selectRadioRow:F,pendingRowFlag:q,rowExpandHeightFlag:L,isRowGroupStatus:V}=l,{fullAllDataRowIdData:P,fullColumnIdData:K,treeExpandedMaps:J,pendingRowMaps:Q,rowExpandedMaps:Z,currentRow:U}=t,ee=C.computeCheckboxOpts,le=C.computeRadioOpts,N=C.computeTreeOpts,G=C.computeEditOpts,W=C.computeRowOpts,te=C.computeColumnOpts,{transform:X,seqMode:Y}=N,re=N.children||N.childrenField,j=[],oe=(0,_util.createHandleGetRowId)(C).handleGetRowId,ae=T||V;return y.forEach((r,o)=>{var a={};let i=oe(r);var s=P[i]||{};let d=o,n=0,c=-1,p=-1;var u=V&&r.isAggregate,g=((W.isHover||$)&&(a.mouseover=e=>{isVMScrollProcess(C)||C.triggerHoverEvent(e,{row:r,rowIndex:d})},a.mouseleave=()=>{isVMScrollProcess(C)||C.clearHoverRow()}),s&&(d=s.index,p=s._index,n=s.level,c=s.seq,u||T&&X&&"increasing"===Y?c=s._index+1:T&&"fixed"===Y&&(c=s._tIndex+1)),{$table:C,seq:c,rowid:i,fixed:h,type:renderType,level:n,row:r,rowIndex:d,$rowIndex:o,_rowIndex:p}),m=A&&!!z&&!!Z[i];let e=!1,l=[],t=!1;I&&(t=C.isInsertByRow(r)),!T||M||X||(l=r[re],e=!!B&&l&&0<l.length&&!!J[i]),!W.drag||V||T&&!X||(a.dragstart=C.handleRowDragDragstartEvent,a.dragend=C.handleRowDragDragendEvent,a.dragover=C.handleRowDragDragoverEvent);var u=["vxe-body--row",ae?"row--level-"+n:"",{"row--stripe":E&&(p+1)%2==0,"is--new":t,"is--expand-row":m,"is--expand-tree":e,"row--new":t&&(G.showStatus||G.showInsertStatus),"row--radio":le.highlight&&F===r,"row--checked":ee.highlight&&C.isCheckedByCheckboxRow(r),"row--pending":!!q&&!!Q[i],"row--group":u,"row--current":U&&i===(0,_util.getRowid)(C,U)},D?_xeUtils.default.isFunction(D)?D(g):D:""],x=b.map((e,l)=>renderTdColumn(v,C,c,i,h,f,n,r,d,o,p,e,l,b,y));if(j.push(v("tr",{class:u,attrs:{rowid:i},style:O?_xeUtils.default.isFunction(O)?O(g):O:void 0,key:S||W.useKey||W.drag||te.drag||V||T?i:o,on:a},x)),m){var{height:u,padding:g,mode:a}=C.computeExpandOpts;if("fixed"===a){x=s.expandHeight;let e=0;L&&(x||u)&&(e=(x||u||0)+1),j.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:e+"px"}})]))}else{m={},a=(u&&(m.height=u+"px"),T&&(m.paddingLeft=n*N.indent+30+"px"),A||{}).showOverflow,s=A.id,x=K[s]||{},s=_xeUtils.default.eqNull(a)?H:a;let e=-1,l=-1,t=-1;x&&(e=x.index,l=x.$index,t=x._index);a={$grid:R,$table:C,$gantt:_,seq:c,column:A,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,source:sourceType,type:renderType,level:n,row:r,rowid:i,rowIndex:d,$rowIndex:o,_rowIndex:p,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};j.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":g}],key:"expand_"+i},[v("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!k,"col--ellipsis":s}],attrs:{colspan:b.length}},[v("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":u}],style:m},[A.renderData(v,a)])])]))}}e&&j.push(...renderRows(v,w,h,f,l,b))}),j}var _default=exports.default=(0,_comp.defineVxeComponent)({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,i=l.$xeGantt,s=l.$scopedSlots,d=l.xID;let{fixedColumn:n,fixedType:c,tableColumn:p}=this;var u=e.mouseConfig,{isGroup:r,tableData:g,isColLoading:m,overflowX:x,scrollXLoad:v,scrollYLoad:w,dragRow:h,dragCol:f}=r,{visibleColumn:o,fullAllDataRowIdData:y,fullColumnIdData:b}=o,C=l.computeEmptyOpts,R=l.computeMouseOpts;let _=g,E=p;g=l.computeIsBodyRenderOptimize;m||!c&&x||(E=o),c&&g&&(E=n||[]),w&&h&&2<_.length&&(m=y[(0,_util.getRowid)(l,h)])&&(x=m._index,o=_[0],w=_[_.length-1],m=y[(0,_util.getRowid)(l,o)],o=y[(0,_util.getRowid)(l,w)],m)&&o&&(y=m._index,w=o._index,x<y?_=[h].concat(_):w<x&&(_=_.concat([h]))),c||r||v&&f&&2<E.length&&(m=b[f.id])&&(o=m._index,y=E[0],w=E[E.length-1],x=b[y.id],h=b[w.id],x)&&h&&(r=x._index,v=h._index,o<r?E=[f].concat(E):v<o&&(E=E.concat([f])));let S;m=s?s.empty:null,y={$table:l,$grid:a,$gantt:i};return S=m?m.call(l,y):(b=l.computeRendererOpts,(x=(w=C.name?b[C.name]||renderer.get(C.name):null)?w.renderTableEmpty||w.renderTableEmptyView||w.renderEmpty:null)?(0,_vn.getSlotVNs)(x.call(l,t,C,y)):e.emptyText||getI18n("vxe.table.emptyText")),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",c?`fixed-${c}--wrapper`:"body--wrapper"],attrs:{xid:d}},[t("div",{ref:"refBodyScroll",class:"vxe-table--body-inner-wrapper",on:{scroll(e){l.triggerBodyScrollEvent(e,c)}}},[c?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:d,cellspacing:0,cellpadding:0,border:0,xvm:g?"1":null}},[t("colgroup",{ref:"refBodyColgroup"},E.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),t("tbody",{ref:"refBodyTBody"},renderRows(t,this,c,g,_,E))]),t("div",{class:"vxe-table--checkbox-range"}),u&&R.area?t("div",{class:"vxe-table--cell-area",attrs:{xid:d}},[t("span",{class:"vxe-table--cell-main-area"},R.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){l.triggerCellAreaExtendMousedownEvent&&l.triggerCellAreaExtendMousedownEvent(e,{$table:l,fixed:c,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-clip-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),c?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},S)])])])}});