vxe-table 4.15.0-beta.12 → 4.15.0-beta.13

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.
@@ -131,6 +131,7 @@ hooks.add('tableEditModule', {
131
131
  _index: -1,
132
132
  $index: -1,
133
133
  treeIndex: -1,
134
+ _tIndex: -1,
134
135
  items: parentChilds,
135
136
  parent: parentRow,
136
137
  level: parentLevel + 1,
@@ -155,6 +156,7 @@ hooks.add('tableEditModule', {
155
156
  _index: -1,
156
157
  $index: -1,
157
158
  treeIndex: -1,
159
+ _tIndex: -1,
158
160
  items: tableFullTreeData,
159
161
  parent: null,
160
162
  level: 0,
@@ -222,6 +224,7 @@ hooks.add('tableEditModule', {
222
224
  _index: -1,
223
225
  $index: -1,
224
226
  treeIndex: -1,
227
+ _tIndex: -1,
225
228
  items: afterFullData,
226
229
  parent: null,
227
230
  level: 0,
@@ -267,6 +270,7 @@ hooks.add('tableEditModule', {
267
270
  index: -1,
268
271
  _index: -1,
269
272
  treeIndex: -1,
273
+ _tIndex: -1,
270
274
  $index: -1,
271
275
  items: afterFullData,
272
276
  parent: null,
@@ -318,6 +322,7 @@ hooks.add('tableEditModule', {
318
322
  _index: -1,
319
323
  $index: -1,
320
324
  treeIndex: -1,
325
+ _tIndex: -1,
321
326
  items: parentMapChilds,
322
327
  parent: parentRow,
323
328
  level: parentLevel + 1,
@@ -1 +1 @@
1
- var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,hooks,getI18n}=_ui.VxeUI,tableEditMethodKeys=["insert","insertAt","insertNextAt","insertChild","insertChildAt","insertChildNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getEditCell","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];hooks.add("tableEditModule",{setupTable(p){let{props:R,reactData:C,internalData:_}=p,t=p.getRefMaps().refElem,{computeMouseOpts:c,computeEditOpts:h,computeCheckboxOpts:m,computeTreeOpts:I,computeValidOpts:n}=p.getComputeMaps(),s=_xeUtils.default.browse(),E={},g={},b=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},i=(e,t)=>{var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},l=()=>{var e=t.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")},d=()=>{var{editStore:e,tableColumn:t}=C,l=h.value,e=e.actived;let{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>i(r,e)):i(r,o))},F=(e,t)=>{let{tableFullTreeData:a,afterFullData:n,fullDataRowIdData:d,fullAllDataRowIdData:u}=_;var l=I.value;let{rowField:s,parentField:c,mapChildrenField:g}=l,w=l.children||l.childrenField,v=t?"push":"unshift";e.forEach(l=>{let t=l[c];var r=(0,_util.getRowid)(p,l),o=t?_xeUtils.default.findTree(a,e=>t===e[s],{children:g}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(p,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[w]=[]),e[v](l),t[v](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:e,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};d[r]=o,u[r]=o}else{t&&(0,_log.warnLog)("vxe.error.unableInsert"),n[v](l),a[v](l);i={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};d[r]=i,u[r]=i}})},u=(t,l,d)=>{let o=R.treeConfig;var e=C.isRowGroupStatus;let{tableFullTreeData:r,afterFullData:i,mergeBodyList:a,tableFullData:n,fullDataRowIdData:u,fullAllDataRowIdData:s,insertRowMaps:c}=_,g=I.value,{transform:w,rowField:v,mapChildrenField:f}=g,x=g.children||g.childrenField,h=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(p.defineField(t.map(e=>Object.assign(o&&w?{[f]:[],[x]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))if(o&&w)F(h,!1);else if(e){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"]))}else h.forEach(e=>{var t=(0,_util.getRowid)(p,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,s[t]=l,i.unshift(e),n.unshift(e)}),a.forEach(e=>{var t=e.row;0<=t&&(e.row=t+h.length)});else if(-1===l)if(o&&w)F(h,!0);else if(e){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"]))}else h.forEach(e=>{var t=(0,_util.getRowid)(p,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,treeIndex:-1,$index:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,s[t]=l,i.push(e),n.push(e)});else if(o&&w){let n=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:f});if(n){let o=n.parent,i=o?o[f]:r;t=s[(0,_util.getRowid)(p,o)];let a=t?t.level:0;if(h.forEach((e,t)=>{var l=(0,_util.getRowid)(p,e);e[g.parentField]&&o&&e[g.parentField]!==o[v]&&(0,_log.errLog)("vxe.error.errProp",[g.parentField+"="+e[g.parentField],g.parentField+"="+o[v]]),o&&(e[g.parentField]=o[v]);let r=n.index+t;d&&(r+=1),i.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:i,parent:o,level:a+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[l]=t,s[l]=t}),o){t=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:x});if(t){var m=t.items;let e=t.index;d&&(e+=1),m.splice(e,0,...h)}}}else(0,_log.warnLog)("vxe.error.unableInsert"),F(h,!0)}else if(e){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<i.length&&(r=l):r=p.findRowIndexOf(i,l),-1===(r=d?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,...h);t=p.findRowIndexOf(n,l);-1<t?n.splice(t+(d?1:0),0,...h):n.push(...h),a.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+h.length:(d?t+l>=r:t+l>r)&&(e.rowspan=l+h.length)})}return h.forEach(e=>{var t=(0,_util.getRowid)(p,e);c[t]=e}),C.insertRowFlag++,p.cacheRowMap(!1),p.updateScrollYStatus(),p.handleTableData(o&&w),o&&w||p.updateAfterDataIndex(),p.updateFooter(),p.handleUpdateBodyMerge(),p.checkSelectionStatus(),C.scrollYLoad&&p.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(p.updateCellAreas(),p.recalculate(!0))).then(()=>({row:h.length?h[h.length-1]:null,rows:h}))},r=(e,t,l,r)=>{var o=R.treeConfig;let{transform:i,rowField:a,parentField:n}=I.value;return o&&i?(_xeUtils.default.isArray(e)||(e=[e]),u(e.map(e=>Object.assign({},e,{[n]:t[a]})),l,r)):((0,_log.errLog)("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]}))},A=(e,t)=>{var l=C.editStore,{actived:l,focused:r}=l,{row:o,column:i}=l,a=n.value;if(o||i){if(t&&(0,_util.getRowid)(p,t)!==(0,_util.getRowid)(p,o))return(0,_vue.nextTick)();d(),l.args=null,l.row=null,l.column=null,p.updateFooter(),p.dispatchEvent("edit-closed",{row:o,rowIndex:p.getRowIndex(o),$rowIndex:p.getVMRowIndex(o),column:i,columnIndex:p.getColumnIndex(i),$columnIndex:p.getVMColumnIndex(i)},e||null)}return r.row=null,r.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&p.clearValidate?p.clearValidate():(0,_vue.nextTick)().then(()=>p.updateCellAreas())},a=(l,r,o,e)=>{let i=p.xeGrid;var{editConfig:t,mouseConfig:a}=R,{editStore:n,tableColumn:d}=C,u=h.value,s=u.mode,{actived:n,focused:c}=n;let{row:g,column:w}=l;var v=w.editRender,f=l.cell||p.getCellElement(g,w),x=u.beforeEditMethod||u.activeMethod;if((l.cell=f)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(v)&&!p.isPendingByRow(g)&&!p.isAggregateRecord(g)){if(n.row!==g||"cell"===s&&n.column!==w){let t="edit-disabled";if(!x||x(Object.assign(Object.assign({},l),{$table:p,$grid:i}))){a&&(p.clearSelected(),p.clearCellAreas)&&(p.clearCellAreas(),p.clearCopyCellArea()),p.closeTooltip(),n.column&&A(r),t="edit-activated",w.renderHeight=f.offsetHeight,n.args=l,n.row=g,n.column=w,"row"===s?d.forEach(e=>b(g,e)):b(g,w);let e=u.afterEditMethod;(0,_vue.nextTick)(()=>{o&&p.handleFocus(l,r),e&&e(Object.assign(Object.assign({},l),{$table:p,$grid:i}))})}p.dispatchEvent(t,{row:g,rowIndex:p.getRowIndex(g),$rowIndex:p.getVMRowIndex(g),column:w,columnIndex:p.getColumnIndex(w),$columnIndex:p.getVMColumnIndex(w)},r),"edit-activated"===t&&p.dispatchEvent("edit-actived",{row:g,rowIndex:p.getRowIndex(g),$rowIndex:p.getVMRowIndex(g),column:w,columnIndex:p.getColumnIndex(w),$columnIndex:p.getVMColumnIndex(w)},r)}else{t=n.column;a&&(p.clearSelected(),p.clearCellAreas)&&(p.clearCellAreas(),p.clearCopyCellArea()),t!==w&&(v=t.model,v.update&&(0,_util.setCellValue)(g,t,v.value),p.clearValidate)&&p.clearValidate(g,w),w.renderHeight=f.offsetHeight,n.args=l,n.column=w,e&&setTimeout(()=>{p.handleFocus(l,r)})}c.column=null,c.row=null,p.focus()}return(0,_vue.nextTick)()},w=(t,e,l)=>{var r=R.editConfig;let o=_xeUtils.default.isString(e)?p.getColumnByField(e):e;return t&&o&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(o.editRender)&&!p.isAggregateRecord(t)?Promise.resolve(l?p.scrollToRow(t,o):null).then(()=>{var e=p.getCellElement(t,o);return e&&(a({row:t,rowIndex:p.getRowIndex(t),column:o,columnIndex:p.getColumnIndex(o),cell:e,$table:p},null,l,l),_._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()};return E={insert(e){return u(e,null)},insertAt(e,t){return u(e,t)},insertNextAt(e,t){return u(e,t,!0)},insertChild(e,t){return r(e,t,null)},insertChildAt(e,t,l){return r(e,t,l)},insertChildNextAt(e,t,l){return r(e,t,l,!0)},remove(e){var t=R.treeConfig,{editStore:l,isRowGroupStatus:r}=C;let{tableFullTreeData:o,selectCheckboxMaps:i,afterFullData:a,mergeBodyList:n,tableFullData:d,pendingRowMaps:u,insertRowMaps:s,removeRowMaps:c}=_;var g=m.value,w=I.value;let{transform:v,mapChildrenField:f}=w,x=w.children||w.childrenField;w=l.actived,l=g.checkField;let h=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=d,e.forEach(e=>{var t;p.isInsertByRow(e)||(t=(0,_util.getRowid)(p,e),c[t]=e)}),l||(e.forEach(e=>{e=(0,_util.getRowid)(p,e);i[e]&&delete i[e]}),C.updateCheckboxFlag++),d===e?(e=h=d.slice(0),_.tableFullData=[],_.afterFullData=[],p.clearMergeCells()):t&&v?e.forEach(e=>{let t=(0,_util.getRowid)(p,e);var l=_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(p,e),{children:f}),l=(l&&(l=l.items.splice(l.index,1),h.push(l[0])),_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(p,e),{children:x})),l=(l&&l.items.splice(l.index,1),p.findRowIndexOf(a,e));-1<l&&a.splice(l,1)}):r?(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=p.findRowIndexOf(d,e);-1<t&&(t=d.splice(t,1),h.push(t[0]));let r=p.findRowIndexOf(a,e);-1<r&&(n.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),a.splice(r,1))}),w.row&&-1<p.findRowIndexOf(e,w.row)&&E.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(p,e);s[e]&&delete s[e],u[e]&&delete u[e]}),C.removeRowFlag++,C.insertRowFlag++,C.pendingRowFlag++,p.cacheRowMap(!1),p.handleTableData(t&&v),p.updateFooter(),p.handleUpdateBodyMerge(),t&&v||p.updateAfterDataIndex(),p.checkSelectionStatus(),C.scrollYLoad&&p.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(p.updateCellAreas(),p.recalculate(!0))).then(()=>({row:h.length?h[h.length-1]:null,rows:h}))},removeCheckboxRow(){return E.remove(p.getCheckboxRecords()).then(e=>(p.clearCheckboxRow(),e))},removeRadioRow(){var e=p.getRadioRecord();return E.remove(e||[]).then(e=>(p.clearRadioRow(),e))},removeCurrentRow(){var e=p.getCurrentRecord();return E.remove(e||[]).then(e=>(p.clearCurrentRow(),e))},getRecordset(){var e=E.getRemoveRecords(),t=p.getPendingRecords();let l=e.concat(t);var r=E.getUpdateRecords().filter(t=>!l.some(e=>p.eqRow(e,t)));return{insertRecords:E.getInsertRecords(),removeRecords:e,updateRecords:r,pendingRecords:t}},getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=_,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=_.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=R,l=_.tableFullData,r=I.value;return e?(d(),t?_xeUtils.default.filterTree(l,e=>p.isUpdateByRow(e),r):l.filter(e=>p.isUpdateByRow(e))):[]},getActiveRecord(){(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditCell"]);var e=C.editStore,t=_.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(p,l)]?Object.assign({},e,{row:l}):null},getEditRecord(){(0,_log.warnLog)("vxe.error.delFunc",["getEditRecord","getEditCell"]);var e=C.editStore,t=_.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(p,l)]?Object.assign({},e,{row:l}):null},getEditCell(){var e=C.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,column:t}:null},getSelectedCell(){var e=C.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}:null},clearActived(e){return(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),p.clearEdit(e)},clearEdit(e){return A(null,e)},clearSelected(){var e=C.editStore,e=e.selected;return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),p.isEditByRow(e)},isEditByRow(e){var t=C.editStore;return t.actived.row===e},setActiveRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),E.setEditRow(e)},setEditRow(e,t){var l=_.visibleColumn;let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender)),o=!1;return t&&(o=!0)!==t&&(r=_xeUtils.default.isString(t)?p.getColumnByField(t):t),w(e,r,o)},setActiveCell(e,t){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),E.setEditCell(e,t)},setEditCell(e,t){return w(e,t,!0)},setSelectCell(e,t){var l=C.tableData,r=h.value,t=_xeUtils.default.isString(t)?p.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=p.findRowIndexOf(l,e))&&t&&(l=p.getCellElement(e,t),e={row:e,rowIndex:r,column:t,columnIndex:p.getColumnIndex(t),cell:l},p.handleSelected(e,{})),(0,_vue.nextTick)()}},g={handleEdit(e,t){return a(e,t,!0,!0)},handleActived(e,t){return g.handleEdit(e,t)},handleClearEdit:A,handleFocus(r){var{row:o,column:i,cell:a}=r,n=i.editRender,d=h.value;if((0,_utils.isEnableConf)(n)){var u=renderer.get(n.name);let e=n.autofocus||n.autoFocus,t=n.autoSelect||n.autoselect,l;d.autoFocus&&(!e&&u&&(e=u.tableAutoFocus||u.tableAutofocus||u.autofocus),!t&&u&&(t=u.tableAutoSelect||u.autoselect),_xeUtils.default.isFunction(e)?l=e(r):e&&(l=!0===e?a.querySelector("input,textarea"):a.querySelector(e))&&l.focus()),l?t?l.select():s.msie&&((n=l.createTextRange()).collapse(!1),n.select()):d.autoPos&&!i.fixed&&p.scrollToRow(o,i)}},handleSelected(e,t){var l=R.mouseConfig,r=C.editStore,o=c.value;let i=h.value,{actived:a,selected:n}=r,{row:d,column:u}=e,s=l&&o.selected;return!s||n.row===d&&n.column===u||(a.row!==d||"cell"===i.mode&&a.column!==u)&&(A(t),p.clearSelected(),p.clearCellAreas&&(p.clearCellAreas(),p.clearCopyCellArea()),n.args=e,n.row=d,n.column=u,s&&g.addCellSelectedClass(),p.focus(),t)&&p.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=C.editStore,e=e.selected,{row:e,column:t}=e;l(),e&&t&&(e=p.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},E),g)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
1
+ var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,hooks,getI18n}=_ui.VxeUI,tableEditMethodKeys=["insert","insertAt","insertNextAt","insertChild","insertChildAt","insertChildNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getEditCell","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];hooks.add("tableEditModule",{setupTable(p){let{props:R,reactData:C,internalData:_}=p,t=p.getRefMaps().refElem,{computeMouseOpts:c,computeEditOpts:h,computeCheckboxOpts:m,computeTreeOpts:I,computeValidOpts:n}=p.getComputeMaps(),s=_xeUtils.default.browse(),E={},g={},b=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},i=(e,t)=>{var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},l=()=>{var e=t.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")},d=()=>{var{editStore:e,tableColumn:t}=C,l=h.value,e=e.actived;let{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>i(r,e)):i(r,o))},F=(e,t)=>{let{tableFullTreeData:a,afterFullData:n,fullDataRowIdData:d,fullAllDataRowIdData:u}=_;var l=I.value;let{rowField:s,parentField:c,mapChildrenField:g}=l,w=l.children||l.childrenField,v=t?"push":"unshift";e.forEach(l=>{let t=l[c];var r=(0,_util.getRowid)(p,l),o=t?_xeUtils.default.findTree(a,e=>t===e[s],{children:g}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(p,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[w]=[]),e[v](l),t[v](l);o={row:l,rowid:r,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};d[r]=o,u[r]=o}else{t&&(0,_log.warnLog)("vxe.error.unableInsert"),n[v](l),a[v](l);i={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};d[r]=i,u[r]=i}})},u=(t,l,d)=>{let o=R.treeConfig;var e=C.isRowGroupStatus;let{tableFullTreeData:r,afterFullData:i,mergeBodyList:a,tableFullData:n,fullDataRowIdData:u,fullAllDataRowIdData:s,insertRowMaps:c}=_,g=I.value,{transform:w,rowField:v,mapChildrenField:f}=g,x=g.children||g.childrenField,h=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(p.defineField(t.map(e=>Object.assign(o&&w?{[f]:[],[x]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))if(o&&w)F(h,!1);else if(e){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"]))}else h.forEach(e=>{var t=(0,_util.getRowid)(p,e),l={row:e,rowid:t,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};u[t]=l,s[t]=l,i.unshift(e),n.unshift(e)}),a.forEach(e=>{var t=e.row;0<=t&&(e.row=t+h.length)});else if(-1===l)if(o&&w)F(h,!0);else if(e){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"]))}else h.forEach(e=>{var t=(0,_util.getRowid)(p,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,treeIndex:-1,_tIndex:-1,$index:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,s[t]=l,i.push(e),n.push(e)});else if(o&&w){let n=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:f});if(n){let o=n.parent,i=o?o[f]:r;t=s[(0,_util.getRowid)(p,o)];let a=t?t.level:0;if(h.forEach((e,t)=>{var l=(0,_util.getRowid)(p,e);e[g.parentField]&&o&&e[g.parentField]!==o[v]&&(0,_log.errLog)("vxe.error.errProp",[g.parentField+"="+e[g.parentField],g.parentField+"="+o[v]]),o&&(e[g.parentField]=o[v]);let r=n.index+t;d&&(r+=1),i.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:o,level:a+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[l]=t,s[l]=t}),o){t=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:x});if(t){var m=t.items;let e=t.index;d&&(e+=1),m.splice(e,0,...h)}}}else(0,_log.warnLog)("vxe.error.unableInsert"),F(h,!0)}else if(e){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<i.length&&(r=l):r=p.findRowIndexOf(i,l),-1===(r=d?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,...h);t=p.findRowIndexOf(n,l);-1<t?n.splice(t+(d?1:0),0,...h):n.push(...h),a.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+h.length:(d?t+l>=r:t+l>r)&&(e.rowspan=l+h.length)})}return h.forEach(e=>{var t=(0,_util.getRowid)(p,e);c[t]=e}),C.insertRowFlag++,p.cacheRowMap(!1),p.updateScrollYStatus(),p.handleTableData(o&&w),o&&w||p.updateAfterDataIndex(),p.updateFooter(),p.handleUpdateBodyMerge(),p.checkSelectionStatus(),C.scrollYLoad&&p.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(p.updateCellAreas(),p.recalculate(!0))).then(()=>({row:h.length?h[h.length-1]:null,rows:h}))},r=(e,t,l,r)=>{var o=R.treeConfig;let{transform:i,rowField:a,parentField:n}=I.value;return o&&i?(_xeUtils.default.isArray(e)||(e=[e]),u(e.map(e=>Object.assign({},e,{[n]:t[a]})),l,r)):((0,_log.errLog)("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]}))},A=(e,t)=>{var l=C.editStore,{actived:l,focused:r}=l,{row:o,column:i}=l,a=n.value;if(o||i){if(t&&(0,_util.getRowid)(p,t)!==(0,_util.getRowid)(p,o))return(0,_vue.nextTick)();d(),l.args=null,l.row=null,l.column=null,p.updateFooter(),p.dispatchEvent("edit-closed",{row:o,rowIndex:p.getRowIndex(o),$rowIndex:p.getVMRowIndex(o),column:i,columnIndex:p.getColumnIndex(i),$columnIndex:p.getVMColumnIndex(i)},e||null)}return r.row=null,r.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&p.clearValidate?p.clearValidate():(0,_vue.nextTick)().then(()=>p.updateCellAreas())},a=(l,r,o,e)=>{let i=p.xeGrid;var{editConfig:t,mouseConfig:a}=R,{editStore:n,tableColumn:d}=C,u=h.value,s=u.mode,{actived:n,focused:c}=n;let{row:g,column:w}=l;var v=w.editRender,f=l.cell||p.getCellElement(g,w),x=u.beforeEditMethod||u.activeMethod;if((l.cell=f)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(v)&&!p.isPendingByRow(g)&&!p.isAggregateRecord(g)){if(n.row!==g||"cell"===s&&n.column!==w){let t="edit-disabled";if(!x||x(Object.assign(Object.assign({},l),{$table:p,$grid:i}))){a&&(p.clearSelected(),p.clearCellAreas)&&(p.clearCellAreas(),p.clearCopyCellArea()),p.closeTooltip(),n.column&&A(r),t="edit-activated",w.renderHeight=f.offsetHeight,n.args=l,n.row=g,n.column=w,"row"===s?d.forEach(e=>b(g,e)):b(g,w);let e=u.afterEditMethod;(0,_vue.nextTick)(()=>{o&&p.handleFocus(l,r),e&&e(Object.assign(Object.assign({},l),{$table:p,$grid:i}))})}p.dispatchEvent(t,{row:g,rowIndex:p.getRowIndex(g),$rowIndex:p.getVMRowIndex(g),column:w,columnIndex:p.getColumnIndex(w),$columnIndex:p.getVMColumnIndex(w)},r),"edit-activated"===t&&p.dispatchEvent("edit-actived",{row:g,rowIndex:p.getRowIndex(g),$rowIndex:p.getVMRowIndex(g),column:w,columnIndex:p.getColumnIndex(w),$columnIndex:p.getVMColumnIndex(w)},r)}else{t=n.column;a&&(p.clearSelected(),p.clearCellAreas)&&(p.clearCellAreas(),p.clearCopyCellArea()),t!==w&&(v=t.model,v.update&&(0,_util.setCellValue)(g,t,v.value),p.clearValidate)&&p.clearValidate(g,w),w.renderHeight=f.offsetHeight,n.args=l,n.column=w,e&&setTimeout(()=>{p.handleFocus(l,r)})}c.column=null,c.row=null,p.focus()}return(0,_vue.nextTick)()},w=(t,e,l)=>{var r=R.editConfig;let o=_xeUtils.default.isString(e)?p.getColumnByField(e):e;return t&&o&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(o.editRender)&&!p.isAggregateRecord(t)?Promise.resolve(l?p.scrollToRow(t,o):null).then(()=>{var e=p.getCellElement(t,o);return e&&(a({row:t,rowIndex:p.getRowIndex(t),column:o,columnIndex:p.getColumnIndex(o),cell:e,$table:p},null,l,l),_._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()};return E={insert(e){return u(e,null)},insertAt(e,t){return u(e,t)},insertNextAt(e,t){return u(e,t,!0)},insertChild(e,t){return r(e,t,null)},insertChildAt(e,t,l){return r(e,t,l)},insertChildNextAt(e,t,l){return r(e,t,l,!0)},remove(e){var t=R.treeConfig,{editStore:l,isRowGroupStatus:r}=C;let{tableFullTreeData:o,selectCheckboxMaps:i,afterFullData:a,mergeBodyList:n,tableFullData:d,pendingRowMaps:u,insertRowMaps:s,removeRowMaps:c}=_;var g=m.value,w=I.value;let{transform:v,mapChildrenField:f}=w,x=w.children||w.childrenField;w=l.actived,l=g.checkField;let h=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=d,e.forEach(e=>{var t;p.isInsertByRow(e)||(t=(0,_util.getRowid)(p,e),c[t]=e)}),l||(e.forEach(e=>{e=(0,_util.getRowid)(p,e);i[e]&&delete i[e]}),C.updateCheckboxFlag++),d===e?(e=h=d.slice(0),_.tableFullData=[],_.afterFullData=[],p.clearMergeCells()):t&&v?e.forEach(e=>{let t=(0,_util.getRowid)(p,e);var l=_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(p,e),{children:f}),l=(l&&(l=l.items.splice(l.index,1),h.push(l[0])),_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(p,e),{children:x})),l=(l&&l.items.splice(l.index,1),p.findRowIndexOf(a,e));-1<l&&a.splice(l,1)}):r?(0,_log.warnLog)(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=p.findRowIndexOf(d,e);-1<t&&(t=d.splice(t,1),h.push(t[0]));let r=p.findRowIndexOf(a,e);-1<r&&(n.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),a.splice(r,1))}),w.row&&-1<p.findRowIndexOf(e,w.row)&&E.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(p,e);s[e]&&delete s[e],u[e]&&delete u[e]}),C.removeRowFlag++,C.insertRowFlag++,C.pendingRowFlag++,p.cacheRowMap(!1),p.handleTableData(t&&v),p.updateFooter(),p.handleUpdateBodyMerge(),t&&v||p.updateAfterDataIndex(),p.checkSelectionStatus(),C.scrollYLoad&&p.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(p.updateCellAreas(),p.recalculate(!0))).then(()=>({row:h.length?h[h.length-1]:null,rows:h}))},removeCheckboxRow(){return E.remove(p.getCheckboxRecords()).then(e=>(p.clearCheckboxRow(),e))},removeRadioRow(){var e=p.getRadioRecord();return E.remove(e||[]).then(e=>(p.clearRadioRow(),e))},removeCurrentRow(){var e=p.getCurrentRecord();return E.remove(e||[]).then(e=>(p.clearCurrentRow(),e))},getRecordset(){var e=E.getRemoveRecords(),t=p.getPendingRecords();let l=e.concat(t);var r=E.getUpdateRecords().filter(t=>!l.some(e=>p.eqRow(e,t)));return{insertRecords:E.getInsertRecords(),removeRecords:e,updateRecords:r,pendingRecords:t}},getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=_,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=_.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=R,l=_.tableFullData,r=I.value;return e?(d(),t?_xeUtils.default.filterTree(l,e=>p.isUpdateByRow(e),r):l.filter(e=>p.isUpdateByRow(e))):[]},getActiveRecord(){(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditCell"]);var e=C.editStore,t=_.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(p,l)]?Object.assign({},e,{row:l}):null},getEditRecord(){(0,_log.warnLog)("vxe.error.delFunc",["getEditRecord","getEditCell"]);var e=C.editStore,t=_.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(p,l)]?Object.assign({},e,{row:l}):null},getEditCell(){var e=C.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,column:t}:null},getSelectedCell(){var e=C.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}:null},clearActived(e){return(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),p.clearEdit(e)},clearEdit(e){return A(null,e)},clearSelected(){var e=C.editStore,e=e.selected;return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),p.isEditByRow(e)},isEditByRow(e){var t=C.editStore;return t.actived.row===e},setActiveRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),E.setEditRow(e)},setEditRow(e,t){var l=_.visibleColumn;let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender)),o=!1;return t&&(o=!0)!==t&&(r=_xeUtils.default.isString(t)?p.getColumnByField(t):t),w(e,r,o)},setActiveCell(e,t){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),E.setEditCell(e,t)},setEditCell(e,t){return w(e,t,!0)},setSelectCell(e,t){var l=C.tableData,r=h.value,t=_xeUtils.default.isString(t)?p.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=p.findRowIndexOf(l,e))&&t&&(l=p.getCellElement(e,t),e={row:e,rowIndex:r,column:t,columnIndex:p.getColumnIndex(t),cell:l},p.handleSelected(e,{})),(0,_vue.nextTick)()}},g={handleEdit(e,t){return a(e,t,!0,!0)},handleActived(e,t){return g.handleEdit(e,t)},handleClearEdit:A,handleFocus(r){var{row:o,column:i,cell:a}=r,n=i.editRender,d=h.value;if((0,_utils.isEnableConf)(n)){var u=renderer.get(n.name);let e=n.autofocus||n.autoFocus,t=n.autoSelect||n.autoselect,l;d.autoFocus&&(!e&&u&&(e=u.tableAutoFocus||u.tableAutofocus||u.autofocus),!t&&u&&(t=u.tableAutoSelect||u.autoselect),_xeUtils.default.isFunction(e)?l=e(r):e&&(l=!0===e?a.querySelector("input,textarea"):a.querySelector(e))&&l.focus()),l?t?l.select():s.msie&&((n=l.createTextRange()).collapse(!1),n.select()):d.autoPos&&!i.fixed&&p.scrollToRow(o,i)}},handleSelected(e,t){var l=R.mouseConfig,r=C.editStore,o=c.value;let i=h.value,{actived:a,selected:n}=r,{row:d,column:u}=e,s=l&&o.selected;return!s||n.row===d&&n.column===u||(a.row!==d||"cell"===i.mode&&a.column!==u)&&(A(t),p.clearSelected(),p.clearCellAreas&&(p.clearCellAreas(),p.clearCopyCellArea()),n.args=e,n.row=d,n.column=u,s&&g.addCellSelectedClass(),p.focus(),t)&&p.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=C.editStore,e=e.selected,{row:e,column:t}=e;l(),e&&t&&(e=p.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},E),g)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
@@ -381,7 +381,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
381
381
  if (!fixedHiddenColumn && editConfig && (editRender || cellRender) && (editOpts.showStatus || editOpts.showUpdateStatus)) {
382
382
  isDirty = $xeTable.isUpdateByRow(row, column.field);
383
383
  }
384
- const isVNAutoHeight = scrollYLoad && !hasEllipsis;
384
+ const isVNAutoHeight = !hasEllipsis && (scrollYLoad || scrollXLoad);
385
385
  let cellHeight = (0, _util.getCellRestHeight)(rowRest, cellOpts, rowOpts, defaultRowHeight);
386
386
  const isLastColumn = $columnIndex === columns.length - 1;
387
387
  const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
@@ -417,7 +417,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
417
417
  }
418
418
  tcStyle.width = `${column.renderWidth + mergeColWidth - cellOffsetWidth}px`;
419
419
  }
420
- if (scrollYLoad || hasEllipsis || isCsHeight || isRsHeight) {
420
+ if (scrollYLoad || scrollXLoad || hasEllipsis || isCsHeight || isRsHeight) {
421
421
  tcStyle.height = `${cellHeight}px`;
422
422
  } else {
423
423
  tcStyle.minHeight = `${cellHeight}px`;
@@ -595,14 +595,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
595
595
  };
596
596
  }
597
597
  if (rowRest) {
598
+ rowIndex = rowRest.index;
599
+ _rowIndex = rowRest._index;
598
600
  rowLevel = rowRest.level;
601
+ seq = rowRest.seq;
599
602
  if (hasRowGroupAggregate || treeConfig && transform && seqMode === 'increasing') {
600
603
  seq = rowRest._index + 1;
601
- } else {
602
- seq = rowRest.seq;
604
+ } else if (treeConfig && seqMode === 'fixed') {
605
+ seq = rowRest._tIndex + 1;
603
606
  }
604
- rowIndex = rowRest.index;
605
- _rowIndex = rowRest._index;
606
607
  }
607
608
  const params = {
608
609
  $table: $xeTable,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(I){let Xe=(0,_vue.inject)("$xeTable",{}),{xID:S,props:Ke,context:M,reactData:Ye,internalData:Je}=Xe,{computeEditOpts:Qe,computeMouseOpts:Ze,computeCellOffsetWidth:el,computeAreaOpts:ll,computeDefaultRowHeight:tl,computeEmptyOpts:T,computeTooltipOpts:al,computeRadioOpts:e,computeExpandOpts:te,computeTreeOpts:c,computeCheckboxOpts:rl,computeCellOpts:ol,computeValidOpts:il,computeRowOpts:sl,computeColumnOpts:nl,computeRowDragOpts:dl,computeResizableOpts:ul,computeVirtualXOpts:cl,computeVirtualYOpts:pl}=Xe.getComputeMaps(),k=(0,_vue.ref)(),z=(0,_vue.ref)(),$=(0,_vue.ref)(),q=(0,_vue.ref)(),A=(0,_vue.ref)(),H=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),vl=()=>{var e=Ke.delayHover,{lastScrollTime:l,isDragResize:t}=Ye;return!!(t||l&&Date.now()<l+e)},gl=(e,l,t)=>{var a=l.column,r=Je.afterFullData,o=Ke.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=Je.fullAllDataRowIdData;if(a&&a.line)return Xe.callSlot(a.line,l);a=n[e];let d=0,u=null;return a&&(d=a.level,u=a.items[a.treeIndex-1]),o&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${(0,_util.getRowid)(Xe,r[0])===e?1:(0,_util.calcTreeLine)(l,u)}px`,bottom:`-${Math.floor(t/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(Xe):0)+16+"px"}})])]:[]},re=(e,l,t,A,H,a,F,j,r,o,L,N,U)=>{var i=Xe.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:W,height:d,treeConfig:V,cellClassName:G,cellStyle:P,align:u,spanMethod:X,mouseConfig:K,editConfig:Y,editRules:c,tooltipConfig:p,padding:v}=Ke,{tableData:g,dragRow:J,overflowX:Q,currentColumn:Z,scrollXLoad:ee,scrollYLoad:le,mergeBodyFlag:te,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:ae,editStore:re,isAllOverflow:oe,validErrorMaps:ie}=Ye,{fullAllDataRowIdData:se,fullColumnIdData:m,mergeBodyCellMaps:ne,visibleColumn:de,afterFullData:ue,mergeBodyList:ce,scrollXStore:pe,scrollYStore:ve}=Je,w=ol.value,_=il.value,f=rl.value,ge=Qe.value,b=al.value,xe=ul.value,he=cl.value,me=pl.value,{isAllColumnDrag:xe,isAllRowDrag:we}=xe,y=sl.value,C=dl.value,_e=tl.value,x=x?w.height||y.height:0,{disabledMethod:E,isCrossDrag:fe,isPeerDrag:be}=C,ye=nl.value,Ce=Ze.value,Ee=ll.value,Re=el.value,Ee=Ee.selectCellToRow,{type:De,cellRender:Oe,editRender:Ie,align:Se,showOverflow:R,className:Me,treeNode:Te,rowResize:ke,padding:D,verticalAlign:O,slots:ze}=o,$e=w.verticalAlign,re=re.actived,qe=se[l]||{},I=o.id,m=m[I]||{},S=Ie||Oe,S=S?renderer.get(S.name):null,Ae=S?S.tableCellClassName||S.cellClassName:null,He=S?S.tableCellStyle||S.cellStyle:"";let Fe=b.showAll;var je=m.index,b=m._index,m=(0,_utils.isEnableConf)(Ie),h=h?qe.resizeHeight:0;let M=Q&&(t?o.fixed!==t:!!o.fixed);v=_xeUtils.default.eqNull(D)?null===v?w.padding:v:D,D=_xeUtils.default.eqNull(R)?n:R,n="ellipsis"===D;let T="title"===D,k=!0===D||"tooltip"===D;R=oe||T||k||n,D=_xeUtils.default.isBoolean(o.resizable)?o.resizable:ye.resizable||s,s=!!x,x=0<h;let Le;h={},Se=Se||(S?S.tableCellAlign:"")||u,S=_xeUtils.default.eqNull(O)?$e:O,u=ie[l+":"+I],$e=c&&_.showMessage&&("default"===_.message?d||1<g.length:"inline"===_.message),O={colid:I};let z={$table:Xe,$grid:i,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:F,$rowIndex:j,_rowIndex:r,column:o,columnIndex:je,$columnIndex:L,_columnIndex:b,fixed:t,type:renderType,isHidden:!!M,level:H,visibleData:ue,data:g,items:U},$=!1,Ne=!1,q=(($=y.drag?"row"===C.trigger||o.dragSort&&"cell"===C.trigger:$)&&(Ne=!(!E||!E(z))),(T||k||Fe||p)&&(h.onMouseenter=e=>{vl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(k||Fe)&&Xe.triggerBodyTooltipEvent(e,z),Xe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Fe||p)&&(h.onMouseleave=e=>{vl()||((k||Fe)&&Xe.handleTargetLeaveEvent(e),Xe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),($||f.range||K)&&(h.onMousedown=e=>{Xe.triggerCellMousedownEvent(e,z)}),$&&(h.onMouseup=Xe.triggerCellMouseupEvent),h.onClick=e=>{Xe.triggerCellClickEvent(e,z)},!(h.onDblclick=e=>{Xe.triggerCellDblclickEvent(e,z)})),Ue=1,Be=1;if(te&&ce.length){ie=ne[r+":"+b];if(ie){var{rowspan:c,colspan:d}=ie;if(!c||!d)return renderEmptyElement(Xe);1<c&&(q=!0,Be=c,O.rowspan=c),1<d&&(q=!0,Ue=d,O.colspan=d)}}else if(X){var{rowspan:i=1,colspan:e=1}=X(z)||{};if(!i||!e)return renderEmptyElement(Xe);1<i&&(q=!0,Be=i,O.rowspan=i),1<e&&(q=!0,Ue=e,O.colspan=e)}!(M=M&&q&&(1<O.colspan||1<O.rowspan)?!1:M)&&Y&&(Ie||Oe)&&(ge.showStatus||ge.showUpdateStatus)&&(Le=Xe.isUpdateByRow(a,o.field));F=le&&!R;let We=(0,_util.getCellRestHeight)(qe,w,y,_e);j=L===N.length-1,g=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let Ve=!1;!Q||q||J&&(0,_util.getRowid)(Xe,J)===l||(le&&!V&&!me.immediate&&(r<ve.visibleStartIndex-ve.preloadSize||r>ve.visibleEndIndex+ve.preloadSize)||ee&&!he.immediate&&!o.fixed&&(b<pe.visibleStartIndex-pe.preloadSize||b>pe.visibleEndIndex+pe.preloadSize))&&(Ve=!0),1<Be&&(U=ue[r+Be-1])&&(C=se[(0,_util.getRowid)(Xe,U)])&&(We+=C.oTop+(0,_util.getCellRestHeight)(C,w,y,_e)-qe.oTop-(0,_util.getCellRestHeight)(qe,w,y,_e));E={};if(R&&ae){let l=0;if(1<Ue)for(let e=1;e<Ue;e++){var Ge=de[je+e];Ge&&(l+=Ge.renderWidth)}E.width=o.renderWidth+l-Re+"px"}le||R||s||x?E.height=We+"px":E.minHeight=We+"px";p=[];M&&oe?p.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:E})):(V&&p.push(...gl(l,z,We)),p.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:E,title:T?Xe.getCellLabel(a,o):null},Ve?[]:[(0,_vue.h)("div",{colid:I,rowid:l,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},o.renderCell(z))])),$e&&u&&(f=u.rule,te=ze?ze.valid:null,ce=Object.assign(Object.assign(Object.assign({},z),u),{rule:u}),p.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(_.className,ce)],style:f&&f.maxWidth?{width:f.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(_.theme||"normal")},[te?Xe.callSlot(te,ce):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},u.content)]])]))));let Pe=!1;return K&&Ce.area&&!b&&Ee&&(Pe=!0),!M&&D&&xe&&p.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Xe.handleColResizeMousedownEvent(e,t,z),onDblclick:e=>Xe.handleColResizeDblclickEvent(e,z)})),(ke||we)&&y.resizable&&p.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Xe.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Xe.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",I,S?"col--vertical-"+S:"",Se?"col--"+Se:"",De?"col--"+De:"",{"col--last":j,"col--tree-node":Te,"col--edit":m,"col--ellipsis":R,"col--cs-height":s,"col--rs-height":x,"col--to-row":Pe,"col--auto-height":F,"fixed--width":!g,"fixed--hidden":M,"is--padding":v,"is--progress":M&&oe||Ve,"is--drag-cell":$&&(fe||be||!H),"is--drag-disabled":Ne,"col--dirty":Le,"col--active":Y&&m&&re.row===a&&(re.column===o||"row"===ge.mode),"col--valid-error":!!u,"col--current":Z===o},(0,_dom.getPropClass)(Ae,z),(0,_dom.getPropClass)(Me,z),(0,_dom.getPropClass)(G,z)],key:B||ee||le||ye.useKey||y.useKey||ye.drag?I:L},O),{style:Object.assign({},_xeUtils.default.isFunction(He)?He(z):He,_xeUtils.default.isFunction(P)?P(z):P)}),h),A&&M?[]:p)},ae=(h,m,w,_)=>{let f=Xe.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:E,rowStyle:R,editConfig:D,treeConfig:O}=Ke,{hasFixedColumn:I,treeExpandedFlag:S,scrollXLoad:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:z,expandColumn:$,selectRadioRow:q,pendingRowFlag:A,rowExpandHeightFlag:H,isRowGroupStatus:F}=Ye,{fullAllDataRowIdData:j,fullColumnIdData:L,treeExpandedMaps:N,pendingRowMaps:U,rowExpandedMaps:B}=Je,W=rl.value,V=e.value,G=c.value,P=Qe.value,X=sl.value,K=nl.value,{transform:Y,seqMode:Q}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(Xe).handleGetRowId,le=O||F;return w.forEach((a,r)=>{let o=ee(a);var i=j[o]||{};let s=r,n=0,d=-1,u=-1;var c=F&&a.isAggregate,p={},v=((X.isHover||C)&&(p.onMouseenter=e=>{vl()||Xe.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{vl()||Xe.clearHoverRow()}),i&&(n=i.level,d=c||O&&Y&&"increasing"===Q?i._index+1:i.seq,s=i.index,u=i._index),{$table:Xe,seq:d,rowid:o,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:r,_rowIndex:u}),g=$&&!!z&&!!B[o];let e=!1,l=[],t=!1;D&&(t=Xe.isInsertByRow(a)),!O||T||Y||(l=a[Z],e=!!S&&l&&0<l.length&&!!N[o]),!X.drag||F||O&&!Y||(p.onDragstart=Xe.handleRowDragDragstartEvent,p.onDragend=Xe.handleRowDragDragendEvent,p.onDragover=Xe.handleRowDragDragoverEvent);var c=["vxe-body--row",le?"row--level-"+n:"",{"row--stripe":b&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":V.highlight&&Xe.eqRow(q,a),"row--checked":W.highlight&&Xe.isCheckedByCheckboxRow(a),"row--pending":!!A&&!!U[o],"row--group":c},(0,_dom.getPropClass)(E,v)],x=_.map((e,l)=>re(d,o,h,m,n,a,s,r,u,e,l,_,w));if(J.push((0,_vue.h)("tr",Object.assign({class:c,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(v):R:null,key:y||M||T||X.useKey||X.drag||K.drag||F||O?o:r},p),x)),g){var{height:c,padding:v,mode:p}=te.value;if("fixed"===p)J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+o,rowid:o},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:`${H?i.expandHeight||c:0}px`}})]));else{x={},g=(c&&(x.height=c+"px"),O&&(x.paddingLeft=n*G.indent+30+"px"),$||{}).showOverflow,p=$.id,i=L[p]||{},p=_xeUtils.default.eqNull(g)?k:g;let e=-1,l=-1,t=-1;i&&(e=i.index,l=i.$index,t=i._index);g={$grid:f,$table:Xe,seq:d,column:$,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:a,rowid:o,rowIndex:s,$rowIndex:r,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+o},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!I,"col--ellipsis":p}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:x},[$.renderData(g)])])]))}}e&&J.push(...ae(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=I.fixedType,l=Je.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=k,l[e+"scroll"]=z,l[e+"table"]=$,l[e+"colgroup"]=q,l[e+"list"]=A,l[e+"xSpace"]=H,l[e+"ySpace"]=F,l[e+"emptyBlock"]=j})}),(0,_vue.onUnmounted)(()=>{var e=I.fixedType,l=Je.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});return()=>{var e=M.slots,l=Xe.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=I;var{spanMethod:o,footerSpanMethod:i,mouseConfig:s}=Ke,{isGroup:n,tableData:d,isColLoading:u,overflowX:c,scrollXLoad:p,scrollYLoad:v,isAllOverflow:g,expandColumn:x,dragRow:h,dragCol:m}=Ye,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:f}=Je,b=T.value,y=Ze.value,C=te.value;let E=d,R=r,D=!1;!(p||v||g)||x&&"fixed"!==C.mode||o||i||(D=!0),u||!a&&c||(R=w),a&&D&&(R=t||[]),v&&h&&2<E.length&&(d=_[(0,_util.getRowid)(Xe,h)])&&(g=d._index,x=E[0],C=E[E.length-1],o=_[(0,_util.getRowid)(Xe,x)],i=_[(0,_util.getRowid)(Xe,C)],o)&&i&&(u=o._index,c=i._index,g<u?E=[h].concat(E):c<g&&(E=E.concat([h]))),a||n||p&&m&&2<R.length&&(w=f[m.id])&&(v=w._index,d=R[0],x=R[R.length-1],_=f[d.id],C=f[x.id],_)&&C&&(o=_._index,i=C._index,v<o?R=[m].concat(R):i<v&&(R=R.concat([m])));let O;u=e?e.empty:null,c={$table:Xe,$grid:l},O=u?Xe.callSlot(u,c):(h=(g=b.name?renderer.get(b.name):null)?g.renderTableEmpty||g.renderTableEmptyView||g.renderEmpty:null)?(0,_vn.getSlotVNs)(h(b,c)):Ke.emptyText||getI18n("vxe.table.emptyText"),n={onScroll(e){Xe.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:k,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:S},[(0,_vue.h)("div",Object.assign({ref:z,class:"vxe-table--body-inner-wrapper"},n),[a?renderEmptyElement(Xe):(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:F,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:$,class:"vxe-table--body",xid:S,cellspacing:0,cellpadding:0,border:0,xvm:D?"1":null},[(0,_vue.h)("colgroup",{ref:q},R.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tbody",{ref:A},ae(a,D,E,R))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&y.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},y.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Xe.triggerCellAreaExtendMousedownEvent&&Xe.triggerCellAreaExtendMousedownEvent(e,{$table:Xe,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Xe),a?renderEmptyElement(Xe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:j},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},O)])])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(O){let Xe=(0,_vue.inject)("$xeTable",{}),{xID:S,props:Ke,context:M,reactData:Ye,internalData:Je}=Xe,{computeEditOpts:Qe,computeMouseOpts:Ze,computeCellOffsetWidth:el,computeAreaOpts:ll,computeDefaultRowHeight:tl,computeEmptyOpts:T,computeTooltipOpts:al,computeRadioOpts:e,computeExpandOpts:te,computeTreeOpts:c,computeCheckboxOpts:rl,computeCellOpts:ol,computeValidOpts:il,computeRowOpts:sl,computeColumnOpts:nl,computeRowDragOpts:dl,computeResizableOpts:ul,computeVirtualXOpts:cl,computeVirtualYOpts:pl}=Xe.getComputeMaps(),k=(0,_vue.ref)(),z=(0,_vue.ref)(),$=(0,_vue.ref)(),q=(0,_vue.ref)(),A=(0,_vue.ref)(),H=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),vl=()=>{var e=Ke.delayHover,{lastScrollTime:l,isDragResize:t}=Ye;return!!(t||l&&Date.now()<l+e)},gl=(e,l,t)=>{var a=l.column,r=Je.afterFullData,o=Ke.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=Je.fullAllDataRowIdData;if(a&&a.line)return Xe.callSlot(a.line,l);a=n[e];let d=0,u=null;return a&&(d=a.level,u=a.items[a.treeIndex-1]),o&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${(0,_util.getRowid)(Xe,r[0])===e?1:(0,_util.calcTreeLine)(l,u)}px`,bottom:`-${Math.floor(t/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(Xe):0)+16+"px"}})])]:[]},re=(e,l,t,A,H,a,F,j,r,o,L,N,U)=>{var i=Xe.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:W,height:d,treeConfig:V,cellClassName:G,cellStyle:P,align:u,spanMethod:X,mouseConfig:K,editConfig:Y,editRules:c,tooltipConfig:p,padding:v}=Ke,{tableData:g,dragRow:J,overflowX:Q,currentColumn:Z,scrollXLoad:ee,scrollYLoad:le,mergeBodyFlag:te,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:ae,editStore:re,isAllOverflow:oe,validErrorMaps:ie}=Ye,{fullAllDataRowIdData:se,fullColumnIdData:m,mergeBodyCellMaps:ne,visibleColumn:de,afterFullData:ue,mergeBodyList:ce,scrollXStore:pe,scrollYStore:ve}=Je,w=ol.value,_=il.value,f=rl.value,ge=Qe.value,b=al.value,xe=ul.value,he=cl.value,me=pl.value,{isAllColumnDrag:xe,isAllRowDrag:we}=xe,y=sl.value,C=dl.value,_e=tl.value,x=x?w.height||y.height:0,{disabledMethod:E,isCrossDrag:fe,isPeerDrag:be}=C,ye=nl.value,Ce=Ze.value,Ee=ll.value,Re=el.value,Ee=Ee.selectCellToRow,{type:De,cellRender:Ie,editRender:Oe,align:Se,showOverflow:R,className:Me,treeNode:Te,rowResize:ke,padding:D,verticalAlign:I,slots:ze}=o,$e=w.verticalAlign,re=re.actived,qe=se[l]||{},O=o.id,m=m[O]||{},S=Oe||Ie,S=S?renderer.get(S.name):null,Ae=S?S.tableCellClassName||S.cellClassName:null,He=S?S.tableCellStyle||S.cellStyle:"";let Fe=b.showAll;var je=m.index,b=m._index,m=(0,_utils.isEnableConf)(Oe),h=h?qe.resizeHeight:0;let M=Q&&(t?o.fixed!==t:!!o.fixed);v=_xeUtils.default.eqNull(D)?null===v?w.padding:v:D,D=_xeUtils.default.eqNull(R)?n:R,n="ellipsis"===D;let T="title"===D,k=!0===D||"tooltip"===D;R=oe||T||k||n,D=_xeUtils.default.isBoolean(o.resizable)?o.resizable:ye.resizable||s,s=!!x,x=0<h;let Le;h={},Se=Se||(S?S.tableCellAlign:"")||u,S=_xeUtils.default.eqNull(I)?$e:I,u=ie[l+":"+O],$e=c&&_.showMessage&&("default"===_.message?d||1<g.length:"inline"===_.message),I={colid:O};let z={$table:Xe,$grid:i,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:F,$rowIndex:j,_rowIndex:r,column:o,columnIndex:je,$columnIndex:L,_columnIndex:b,fixed:t,type:renderType,isHidden:!!M,level:H,visibleData:ue,data:g,items:U},$=!1,Ne=!1,q=(($=y.drag?"row"===C.trigger||o.dragSort&&"cell"===C.trigger:$)&&(Ne=!(!E||!E(z))),(T||k||Fe||p)&&(h.onMouseenter=e=>{vl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(k||Fe)&&Xe.triggerBodyTooltipEvent(e,z),Xe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Fe||p)&&(h.onMouseleave=e=>{vl()||((k||Fe)&&Xe.handleTargetLeaveEvent(e),Xe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),($||f.range||K)&&(h.onMousedown=e=>{Xe.triggerCellMousedownEvent(e,z)}),$&&(h.onMouseup=Xe.triggerCellMouseupEvent),h.onClick=e=>{Xe.triggerCellClickEvent(e,z)},!(h.onDblclick=e=>{Xe.triggerCellDblclickEvent(e,z)})),Ue=1,Be=1;if(te&&ce.length){ie=ne[r+":"+b];if(ie){var{rowspan:c,colspan:d}=ie;if(!c||!d)return renderEmptyElement(Xe);1<c&&(q=!0,Be=c,I.rowspan=c),1<d&&(q=!0,Ue=d,I.colspan=d)}}else if(X){var{rowspan:i=1,colspan:e=1}=X(z)||{};if(!i||!e)return renderEmptyElement(Xe);1<i&&(q=!0,Be=i,I.rowspan=i),1<e&&(q=!0,Ue=e,I.colspan=e)}!(M=M&&q&&(1<I.colspan||1<I.rowspan)?!1:M)&&Y&&(Oe||Ie)&&(ge.showStatus||ge.showUpdateStatus)&&(Le=Xe.isUpdateByRow(a,o.field));F=!R&&(le||ee);let We=(0,_util.getCellRestHeight)(qe,w,y,_e);j=L===N.length-1,g=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let Ve=!1;!Q||q||J&&(0,_util.getRowid)(Xe,J)===l||(le&&!V&&!me.immediate&&(r<ve.visibleStartIndex-ve.preloadSize||r>ve.visibleEndIndex+ve.preloadSize)||ee&&!he.immediate&&!o.fixed&&(b<pe.visibleStartIndex-pe.preloadSize||b>pe.visibleEndIndex+pe.preloadSize))&&(Ve=!0),1<Be&&(U=ue[r+Be-1])&&(C=se[(0,_util.getRowid)(Xe,U)])&&(We+=C.oTop+(0,_util.getCellRestHeight)(C,w,y,_e)-qe.oTop-(0,_util.getCellRestHeight)(qe,w,y,_e));E={};if(R&&ae){let l=0;if(1<Ue)for(let e=1;e<Ue;e++){var Ge=de[je+e];Ge&&(l+=Ge.renderWidth)}E.width=o.renderWidth+l-Re+"px"}le||ee||R||s||x?E.height=We+"px":E.minHeight=We+"px";p=[];M&&oe?p.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:E})):(V&&p.push(...gl(l,z,We)),p.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":n}],style:E,title:T?Xe.getCellLabel(a,o):null},Ve?[]:[(0,_vue.h)("div",{colid:O,rowid:l,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},o.renderCell(z))])),$e&&u&&(f=u.rule,te=ze?ze.valid:null,ce=Object.assign(Object.assign(Object.assign({},z),u),{rule:u}),p.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(_.className,ce)],style:f&&f.maxWidth?{width:f.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(_.theme||"normal")},[te?Xe.callSlot(te,ce):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},u.content)]])]))));let Pe=!1;return K&&Ce.area&&!b&&Ee&&(Pe=!0),!M&&D&&xe&&p.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Xe.handleColResizeMousedownEvent(e,t,z),onDblclick:e=>Xe.handleColResizeDblclickEvent(e,z)})),(ke||we)&&y.resizable&&p.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Xe.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Xe.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",O,S?"col--vertical-"+S:"",Se?"col--"+Se:"",De?"col--"+De:"",{"col--last":j,"col--tree-node":Te,"col--edit":m,"col--ellipsis":R,"col--cs-height":s,"col--rs-height":x,"col--to-row":Pe,"col--auto-height":F,"fixed--width":!g,"fixed--hidden":M,"is--padding":v,"is--progress":M&&oe||Ve,"is--drag-cell":$&&(fe||be||!H),"is--drag-disabled":Ne,"col--dirty":Le,"col--active":Y&&m&&re.row===a&&(re.column===o||"row"===ge.mode),"col--valid-error":!!u,"col--current":Z===o},(0,_dom.getPropClass)(Ae,z),(0,_dom.getPropClass)(Me,z),(0,_dom.getPropClass)(G,z)],key:B||ee||le||ye.useKey||y.useKey||ye.drag?O:L},I),{style:Object.assign({},_xeUtils.default.isFunction(He)?He(z):He,_xeUtils.default.isFunction(P)?P(z):P)}),h),A&&M?[]:p)},ae=(h,m,w,_)=>{let f=Xe.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:E,rowStyle:R,editConfig:D,treeConfig:I}=Ke,{hasFixedColumn:O,treeExpandedFlag:S,scrollXLoad:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:z,expandColumn:$,selectRadioRow:q,pendingRowFlag:A,rowExpandHeightFlag:H,isRowGroupStatus:F}=Ye,{fullAllDataRowIdData:j,fullColumnIdData:L,treeExpandedMaps:N,pendingRowMaps:U,rowExpandedMaps:B}=Je,W=rl.value,V=e.value,G=c.value,P=Qe.value,X=sl.value,Q=nl.value,{transform:K,seqMode:Y}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(Xe).handleGetRowId,le=I||F;return w.forEach((a,r)=>{let o=ee(a);var i=j[o]||{};let s=r,n=0,d=-1,u=-1;var c=F&&a.isAggregate,p={},v=((X.isHover||C)&&(p.onMouseenter=e=>{vl()||Xe.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{vl()||Xe.clearHoverRow()}),i&&(s=i.index,u=i._index,n=i.level,d=i.seq,c||I&&K&&"increasing"===Y?d=i._index+1:I&&"fixed"===Y&&(d=i._tIndex+1)),{$table:Xe,seq:d,rowid:o,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:r,_rowIndex:u}),g=$&&!!z&&!!B[o];let e=!1,l=[],t=!1;D&&(t=Xe.isInsertByRow(a)),!I||T||K||(l=a[Z],e=!!S&&l&&0<l.length&&!!N[o]),!X.drag||F||I&&!K||(p.onDragstart=Xe.handleRowDragDragstartEvent,p.onDragend=Xe.handleRowDragDragendEvent,p.onDragover=Xe.handleRowDragDragoverEvent);var c=["vxe-body--row",le?"row--level-"+n:"",{"row--stripe":b&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":V.highlight&&Xe.eqRow(q,a),"row--checked":W.highlight&&Xe.isCheckedByCheckboxRow(a),"row--pending":!!A&&!!U[o],"row--group":c},(0,_dom.getPropClass)(E,v)],x=_.map((e,l)=>re(d,o,h,m,n,a,s,r,u,e,l,_,w));if(J.push((0,_vue.h)("tr",Object.assign({class:c,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(v):R:null,key:y||M||T||X.useKey||X.drag||Q.drag||F||I?o:r},p),x)),g){var{height:c,padding:v,mode:p}=te.value;if("fixed"===p)J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+o,rowid:o},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:`${H?i.expandHeight||c:0}px`}})]));else{x={},g=(c&&(x.height=c+"px"),I&&(x.paddingLeft=n*G.indent+30+"px"),$||{}).showOverflow,p=$.id,i=L[p]||{},p=_xeUtils.default.eqNull(g)?k:g;let e=-1,l=-1,t=-1;i&&(e=i.index,l=i.$index,t=i._index);g={$grid:f,$table:Xe,seq:d,column:$,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:a,rowid:o,rowIndex:s,$rowIndex:r,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+o},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!O,"col--ellipsis":p}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:x},[$.renderData(g)])])]))}}e&&J.push(...ae(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=O.fixedType,l=Je.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=k,l[e+"scroll"]=z,l[e+"table"]=$,l[e+"colgroup"]=q,l[e+"list"]=A,l[e+"xSpace"]=H,l[e+"ySpace"]=F,l[e+"emptyBlock"]=j})}),(0,_vue.onUnmounted)(()=>{var e=O.fixedType,l=Je.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});return()=>{var e=M.slots,l=Xe.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=O;var{spanMethod:o,footerSpanMethod:i,mouseConfig:s}=Ke,{isGroup:n,tableData:d,isColLoading:u,overflowX:c,scrollXLoad:p,scrollYLoad:v,isAllOverflow:g,expandColumn:x,dragRow:h,dragCol:m}=Ye,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:f}=Je,b=T.value,y=Ze.value,C=te.value;let E=d,R=r,D=!1;!(p||v||g)||x&&"fixed"!==C.mode||o||i||(D=!0),u||!a&&c||(R=w),a&&D&&(R=t||[]),v&&h&&2<E.length&&(d=_[(0,_util.getRowid)(Xe,h)])&&(g=d._index,x=E[0],C=E[E.length-1],o=_[(0,_util.getRowid)(Xe,x)],i=_[(0,_util.getRowid)(Xe,C)],o)&&i&&(u=o._index,c=i._index,g<u?E=[h].concat(E):c<g&&(E=E.concat([h]))),a||n||p&&m&&2<R.length&&(w=f[m.id])&&(v=w._index,d=R[0],x=R[R.length-1],_=f[d.id],C=f[x.id],_)&&C&&(o=_._index,i=C._index,v<o?R=[m].concat(R):i<v&&(R=R.concat([m])));let I;u=e?e.empty:null,c={$table:Xe,$grid:l},I=u?Xe.callSlot(u,c):(h=(g=b.name?renderer.get(b.name):null)?g.renderTableEmpty||g.renderTableEmptyView||g.renderEmpty:null)?(0,_vn.getSlotVNs)(h(b,c)):Ke.emptyText||getI18n("vxe.table.emptyText"),n={onScroll(e){Xe.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:k,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:S},[(0,_vue.h)("div",Object.assign({ref:z,class:"vxe-table--body-inner-wrapper"},n),[a?renderEmptyElement(Xe):(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:F,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:$,class:"vxe-table--body",xid:S,cellspacing:0,cellpadding:0,border:0,xvm:D?"1":null},[(0,_vue.h)("colgroup",{ref:q},R.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tbody",{ref:A},ae(a,D,E,R))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&y.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},y.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Xe.triggerCellAreaExtendMousedownEvent&&Xe.triggerCellAreaExtendMousedownEvent(e,{$table:Xe,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Xe),a?renderEmptyElement(Xe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:j},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},I)])])])}}});
@@ -110,10 +110,10 @@ resizeList.forEach(column=>{const reWidth=_xeUtils.default.toInteger(column.resi
110
110
  remainList.forEach(column=>{const width=Math.max(meanWidth,minCellWidth);column.renderWidth=width;tWidth+=width;});if(fit){/**
111
111
  * 偏移量算法
112
112
  * 如果所有列足够放的情况下,从最后动态列开始分配
113
- */const dynamicList=scaleList.concat(scaleMinList).concat(pxMinList).concat(autoMinList).concat(remainList);let dynamicSize=dynamicList.length-1;if(dynamicSize>0){let i=bodyWidth-tWidth;if(i>0){while(i>0&&dynamicSize>=0){i--;dynamicList[dynamicSize--].renderWidth++;}tWidth=bodyWidth;}}}reactData.scrollXWidth=tWidth;reactData.resizeWidthFlag++;updateColumnOffsetLeft();updateHeight();};const calcCellAutoHeight=(rowRest,wrapperEl)=>{const cellElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);let colHeight=rowRest.height;for(let i=0;i<cellElemList.length;i++){const cellElem=cellElemList[i];const tdEl=cellElem.parentElement;const topBottomPadding=Math.ceil(_xeUtils.default.toNumber(tdEl.style.paddingTop)+_xeUtils.default.toNumber(tdEl.style.paddingBottom));const cellHeight=cellElem?cellElem.clientHeight:0;colHeight=Math.max(colHeight-topBottomPadding,Math.ceil(cellHeight));}return colHeight;};const calcCellHeight=()=>{const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const defaultRowHeight=computeDefaultRowHeight.value;const el=refElem.value;if(!isAllOverflow&&scrollYLoad&&el){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const reHeight=calcCellAutoHeight(rowRest,el);rowRest.height=Math.max(defaultRowHeight,scrollXLoad?Math.max(rowRest.height,reHeight):reHeight);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}};const getOrderField=column=>{const{sortBy,sortType}=column;return row=>{let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=tableMethods.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;};};const updateAfterListIndex=()=>{const{treeConfig}=props;const{afterFullData,fullDataRowIdData,fullAllDataRowIdData}=internalData;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);const fullMaps={};afterFullData.forEach((row,index)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=index+1;if(rowRest){if(!treeConfig){rowRest.seq=seq;}rowRest._index=index;}else{const rest={row,rowid,seq,index:-1,$index:-1,_index:index,treeIndex:-1,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullAllDataRowIdData[rowid]=rest;fullDataRowIdData[rowid]=rest;}fullMaps[rowid]=row;});internalData.afterFullRowMaps=fullMaps;};/**
113
+ */const dynamicList=scaleList.concat(scaleMinList).concat(pxMinList).concat(autoMinList).concat(remainList);let dynamicSize=dynamicList.length-1;if(dynamicSize>0){let i=bodyWidth-tWidth;if(i>0){while(i>0&&dynamicSize>=0){i--;dynamicList[dynamicSize--].renderWidth++;}tWidth=bodyWidth;}}}reactData.scrollXWidth=tWidth;reactData.resizeWidthFlag++;updateColumnOffsetLeft();updateHeight();};const calcCellAutoHeight=(rowRest,wrapperEl)=>{const cellElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);let colHeight=rowRest.height;for(let i=0;i<cellElemList.length;i++){const cellElem=cellElemList[i];const tdEl=cellElem.parentElement;const topBottomPadding=Math.ceil(_xeUtils.default.toNumber(tdEl.style.paddingTop)+_xeUtils.default.toNumber(tdEl.style.paddingBottom));const cellHeight=cellElem?cellElem.clientHeight:0;colHeight=Math.max(colHeight-topBottomPadding,Math.ceil(cellHeight));}return colHeight;};const calcCellHeight=()=>{const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const defaultRowHeight=computeDefaultRowHeight.value;const el=refElem.value;if(!isAllOverflow&&(scrollYLoad||scrollXLoad)&&el){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const reHeight=calcCellAutoHeight(rowRest,el);rowRest.height=Math.max(defaultRowHeight,scrollXLoad?Math.max(rowRest.height,reHeight):reHeight);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}};const getOrderField=column=>{const{sortBy,sortType}=column;return row=>{let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=tableMethods.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;};};const updateAfterListIndex=()=>{const{treeConfig}=props;const{afterFullData,fullDataRowIdData,fullAllDataRowIdData}=internalData;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);const fullMaps={};afterFullData.forEach((row,index)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=index+1;if(rowRest){if(!treeConfig){rowRest.seq=seq;}rowRest._index=index;}else{const rest={row,rowid,seq,index:-1,$index:-1,_index:index,treeIndex:-1,_tIndex:-1,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullAllDataRowIdData[rowid]=rest;fullDataRowIdData[rowid]=rest;}fullMaps[rowid]=row;});internalData.afterFullRowMaps=fullMaps;};/**
114
114
  * 预编译
115
115
  * 对渲染中的数据提前解析序号及索引。牺牲提前编译耗时换取渲染中额外损耗,使运行时更加流畅
116
- */const updateAfterDataIndex=()=>{const{treeConfig}=props;const{fullDataRowIdData,fullAllDataRowIdData,afterFullData,afterTreeFullData}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const fullMaps={};if(treeConfig){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);_xeUtils.default.eachTree(afterTreeFullData,(row,index,items,path)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=path.map((num,i)=>i%2===0?Number(num)+1:'.').join('');if(rowRest){rowRest.seq=seq;rowRest.treeIndex=index;}else{const rest={row,rowid,seq,index:-1,$index:-1,_index:-1,treeIndex:-1,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullAllDataRowIdData[rowid]=rest;fullDataRowIdData[rowid]=rest;}fullMaps[rowid]=row;},{children:transform?treeOpts.mapChildrenField:childrenField});if(transform){afterFullData.forEach((row,index)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=index+1;if(rowRest){if(!treeConfig){rowRest.seq=seq;}rowRest._index=index;}});}internalData.afterFullRowMaps=fullMaps;}else{updateAfterListIndex();}};/**
116
+ */const updateAfterDataIndex=()=>{const{treeConfig}=props;const{fullDataRowIdData,fullAllDataRowIdData,afterFullData,afterTreeFullData}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const fullMaps={};if(treeConfig){let _treeIndex=0;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);_xeUtils.default.eachTree(afterTreeFullData,(row,index,items,path)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=path.map((num,i)=>i%2===0?Number(num)+1:'.').join('');if(rowRest){rowRest.seq=seq;rowRest.treeIndex=index;rowRest._tIndex=_treeIndex;}else{const rest={row,rowid,seq,index:-1,$index:-1,_index:-1,treeIndex:-1,_tIndex:_treeIndex,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullAllDataRowIdData[rowid]=rest;fullDataRowIdData[rowid]=rest;}_treeIndex++;fullMaps[rowid]=row;},{children:transform?treeOpts.mapChildrenField:childrenField});if(transform){afterFullData.forEach((row,index)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const seq=index+1;if(rowRest){if(!treeConfig){rowRest.seq=seq;}rowRest._index=index;}});}internalData.afterFullRowMaps=fullMaps;}else{updateAfterListIndex();}};/**
117
117
  * 如果为虚拟树、行分组、则将树结构拍平
118
118
  * @returns
119
119
  */const handleVirtualTreeToList=()=>{const{treeConfig}=props;const{isRowGroupStatus}=reactData;const{fullAllDataRowIdData,treeExpandedMaps,rowGroupExpandedMaps}=internalData;const aggregateOpts=computeAggregateOpts.value;const treeOpts=computeTreeOpts.value;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);const fullData=[];const expandMaps={};if(treeConfig&&treeOpts.transform){const childrenField=treeOpts.children||treeOpts.childrenField;_xeUtils.default.eachTree(internalData.afterTreeFullData,(row,index,items,path,parentRow)=>{const rowid=handleGetRowId(row);const parentRowid=handleGetRowId(parentRow);if(!parentRow||expandMaps[parentRowid]&&treeExpandedMaps[parentRowid]){const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest._index=fullData.length;}expandMaps[rowid]=1;fullData.push(row);}},{children:childrenField});internalData.afterFullData=fullData;updateScrollYStatus(fullData);return fullData;}else if(isRowGroupStatus){const{childrenField}=aggregateOpts;_xeUtils.default.eachTree(internalData.afterGroupFullData,(row,index,items,path,parentRow)=>{const rowid=handleGetRowId(row);const parentRowid=handleGetRowId(parentRow);if(!parentRow||expandMaps[parentRowid]&&rowGroupExpandedMaps[parentRowid]){const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest._index=fullData.length;}expandMaps[rowid]=1;fullData.push(row);}},{children:childrenField});internalData.afterFullData=fullData;updateScrollYStatus(fullData);return fullData;}return internalData.afterFullData;};/**
@@ -320,7 +320,7 @@ setTimeout(()=>handleLazyRecalculate(false,true,true),50);});},/**
320
320
  * @param {String} field 字段名
321
321
  */reloadRow(row,record,field){const{keepSource}=props;const{tableData}=reactData;const{sourceDataRowIdData}=internalData;if(keepSource){if($xeTable.isAggregateRecord(row)){return(0,_vue.nextTick)();}const oRow=sourceDataRowIdData[(0,_util.getRowid)($xeTable,row)];if(oRow&&row){if(field){const newValue=_xeUtils.default.clone(_xeUtils.default.get(record||row,field),true);_xeUtils.default.set(row,field,newValue);_xeUtils.default.set(oRow,field,newValue);}else{const rowkey=(0,_util.getRowkey)($xeTable);const rowid=(0,_util.getRowid)($xeTable,row);const newRecord=_xeUtils.default.clone(Object.assign({},record),true);_xeUtils.default.set(newRecord,rowkey,rowid);_xeUtils.default.destructuring(oRow,Object.assign(row,newRecord));}}reactData.tableData=tableData.slice(0);}else{(0,_log.errLog)('vxe.error.reqProp',['keep-source']);}return(0,_vue.nextTick)();},getParams(){return props.params;},/**
322
322
  * 用于树结构,给行数据加载子节点
323
- */loadTreeChildren(row,childRecords){const{keepSource}=props;const{tableSourceData,fullDataRowIdData,fullAllDataRowIdData,sourceDataRowIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const parentRest=fullAllDataRowIdData[(0,_util.getRowid)($xeTable,row)];const parentLevel=parentRest?parentRest.level:0;return tableMethods.createData(childRecords).then(rows=>{if(keepSource){const rowid=(0,_util.getRowid)($xeTable,row);const matchObj=_xeUtils.default.findTree(tableSourceData,item=>rowid===(0,_util.getRowid)($xeTable,item),{children:childrenField});if(matchObj){matchObj.item[childrenField]=_xeUtils.default.clone(rows,true);}rows.forEach(childRow=>{const rowid=(0,_util.getRowid)($xeTable,childRow);sourceDataRowIdData[rowid]=_xeUtils.default.clone(childRow,true);});}_xeUtils.default.eachTree(rows,(childRow,index,items,path,parentItem,nodes)=>{const rowid=(0,_util.getRowid)($xeTable,childRow);const parentRow=parentItem||parentRest.row;const rest={row:childRow,rowid,seq:-1,index,_index:-1,$index:-1,treeIndex:-1,items,parent:parentRow,level:parentLevel+nodes.length,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullDataRowIdData[rowid]=rest;fullAllDataRowIdData[rowid]=rest;},{children:childrenField});row[childrenField]=rows;if(transform){row[mapChildrenField]=_xeUtils.default.clone(rows,false);}updateAfterDataIndex();return rows;});},/**
323
+ */loadTreeChildren(row,childRecords){const{keepSource}=props;const{tableSourceData,fullDataRowIdData,fullAllDataRowIdData,sourceDataRowIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const parentRest=fullAllDataRowIdData[(0,_util.getRowid)($xeTable,row)];const parentLevel=parentRest?parentRest.level:0;return tableMethods.createData(childRecords).then(rows=>{if(keepSource){const rowid=(0,_util.getRowid)($xeTable,row);const matchObj=_xeUtils.default.findTree(tableSourceData,item=>rowid===(0,_util.getRowid)($xeTable,item),{children:childrenField});if(matchObj){matchObj.item[childrenField]=_xeUtils.default.clone(rows,true);}rows.forEach(childRow=>{const rowid=(0,_util.getRowid)($xeTable,childRow);sourceDataRowIdData[rowid]=_xeUtils.default.clone(childRow,true);});}_xeUtils.default.eachTree(rows,(childRow,index,items,path,parentItem,nodes)=>{const rowid=(0,_util.getRowid)($xeTable,childRow);const parentRow=parentItem||parentRest.row;const rest={row:childRow,rowid,seq:-1,index,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items,parent:parentRow,level:parentLevel+nodes.length,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullDataRowIdData[rowid]=rest;fullAllDataRowIdData[rowid]=rest;},{children:childrenField});row[childrenField]=rows;if(transform){row[mapChildrenField]=_xeUtils.default.clone(rows,false);}updateAfterDataIndex();return rows;});},/**
324
324
  * 加载列配置
325
325
  * 对于表格列需要重载、局部递增场景下可能会用到
326
326
  * @param {ColumnInfo} columns 列配置
@@ -693,7 +693,7 @@ updateAfterFullData();// 如果为虚拟树,将树结构拍平
693
693
  fullList=handleVirtualTreeToList();}const tableData=scrollYLoad?fullList.slice(scrollYStore.startIndex,scrollYStore.endIndex):fullList.slice(0);const visibleDataRowIdMaps={};tableData.forEach((row,$index)=>{const rowid=(0,_util.getRowid)($xeTable,row);const rest=fullDataRowIdData[rowid];if(rest){rest.$index=$index;}visibleDataRowIdMaps[rowid]=row;});reactData.tableData=tableData;internalData.visibleDataRowIdData=visibleDataRowIdMaps;return(0,_vue.nextTick)();},/**
694
694
  * 更新数据行的 Map
695
695
  */cacheRowMap(isReset){const{treeConfig}=props;const{isRowGroupStatus}=reactData;const{fullAllDataRowIdData,tableFullData,tableFullTreeData,tableFullGroupData,treeExpandedMaps}=internalData;const fullAllDataRowIdMaps=isReset?{}:Object.assign({},fullAllDataRowIdData);// 存在已删除数据
696
- const fullDataRowIdMaps={};const{handleUpdateRowId}=(0,_util.createHandleUpdateRowId)($xeTable);const handleRowCache=(row,index,items,currIndex,parentRow,rowid,level,seq)=>{let rowRest=fullAllDataRowIdMaps[rowid];if(!rowRest){rowRest={row,rowid,seq,index:-1,_index:-1,$index:-1,treeIndex:index,items,parent:parentRow,level,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullDataRowIdMaps[rowid]=rowRest;fullAllDataRowIdMaps[rowid]=rowRest;}rowRest.treeLoaded=false;rowRest.expandLoaded=false;rowRest.row=row;rowRest.items=items;rowRest.parent=parentRow;rowRest.level=level;rowRest.index=currIndex;rowRest.treeIndex=index;fullDataRowIdMaps[rowid]=rowRest;fullAllDataRowIdMaps[rowid]=rowRest;};if(treeConfig){const treeOpts=computeTreeOpts.value;const{lazy}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;_xeUtils.default.eachTree(tableFullTreeData,(row,index,items,path,parentRow,nodes)=>{const rowid=handleUpdateRowId(row);if(treeConfig&&lazy){if(row[hasChildField]&&row[childrenField]===undefined){row[childrenField]=null;}if(treeExpandedMaps[rowid]){if(!row[childrenField]||!row[childrenField].length){delete treeExpandedMaps[rowid];}}}handleRowCache(row,index,items,parentRow?-1:index,parentRow,rowid,nodes.length-1,(0,_util.toTreePathSeq)(path));},{children:childrenField});}else if(isRowGroupStatus){const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;_xeUtils.default.eachTree(tableFullGroupData,(row,index,items,path,parentRow,nodes)=>{const rowid=handleUpdateRowId(row);handleRowCache(row,index,items,parentRow?-1:index,parentRow,rowid,nodes.length-1,(0,_util.toTreePathSeq)(path));},{children:mapChildrenField});}else{tableFullData.forEach((row,index,items)=>{handleRowCache(row,index,items,index,null,handleUpdateRowId(row),0,index+1);});}internalData.fullDataRowIdData=fullDataRowIdMaps;internalData.fullAllDataRowIdData=fullAllDataRowIdMaps;reactData.treeExpandedFlag++;},cacheSourceMap(fullData){const{treeConfig}=props;const treeOpts=computeTreeOpts.value;const sourceData=_xeUtils.default.clone(fullData,true);const{handleUpdateRowId}=(0,_util.createHandleUpdateRowId)($xeTable);const sourceRowIdData={};const handleSourceRow=row=>{const rowid=handleUpdateRowId(row);sourceRowIdData[rowid]=row;};// 源数据缓存
696
+ const fullDataRowIdMaps={};const{handleUpdateRowId}=(0,_util.createHandleUpdateRowId)($xeTable);const handleRowCache=(row,index,items,currIndex,parentRow,rowid,level,seq)=>{let rowRest=fullAllDataRowIdMaps[rowid];if(!rowRest){rowRest={row,rowid,seq,index:-1,_index:-1,$index:-1,treeIndex:index,_tIndex:-1,items,parent:parentRow,level,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullDataRowIdMaps[rowid]=rowRest;fullAllDataRowIdMaps[rowid]=rowRest;}rowRest.treeLoaded=false;rowRest.expandLoaded=false;rowRest.row=row;rowRest.items=items;rowRest.parent=parentRow;rowRest.level=level;rowRest.index=currIndex;rowRest.treeIndex=index;fullDataRowIdMaps[rowid]=rowRest;fullAllDataRowIdMaps[rowid]=rowRest;};if(treeConfig){const treeOpts=computeTreeOpts.value;const{lazy}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;_xeUtils.default.eachTree(tableFullTreeData,(row,index,items,path,parentRow,nodes)=>{const rowid=handleUpdateRowId(row);if(treeConfig&&lazy){if(row[hasChildField]&&row[childrenField]===undefined){row[childrenField]=null;}if(treeExpandedMaps[rowid]){if(!row[childrenField]||!row[childrenField].length){delete treeExpandedMaps[rowid];}}}handleRowCache(row,index,items,parentRow?-1:index,parentRow,rowid,nodes.length-1,(0,_util.toTreePathSeq)(path));},{children:childrenField});}else if(isRowGroupStatus){const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;_xeUtils.default.eachTree(tableFullGroupData,(row,index,items,path,parentRow,nodes)=>{const rowid=handleUpdateRowId(row);handleRowCache(row,index,items,parentRow?-1:index,parentRow,rowid,nodes.length-1,(0,_util.toTreePathSeq)(path));},{children:mapChildrenField});}else{tableFullData.forEach((row,index,items)=>{handleRowCache(row,index,items,index,null,handleUpdateRowId(row),0,index+1);});}internalData.fullDataRowIdData=fullDataRowIdMaps;internalData.fullAllDataRowIdData=fullAllDataRowIdMaps;reactData.treeExpandedFlag++;},cacheSourceMap(fullData){const{treeConfig}=props;const treeOpts=computeTreeOpts.value;const sourceData=_xeUtils.default.clone(fullData,true);const{handleUpdateRowId}=(0,_util.createHandleUpdateRowId)($xeTable);const sourceRowIdData={};const handleSourceRow=row=>{const rowid=handleUpdateRowId(row);sourceRowIdData[rowid]=row;};// 源数据缓存
697
697
  if(treeConfig){const childrenField=treeOpts.children||treeOpts.childrenField;_xeUtils.default.eachTree(sourceData,handleSourceRow,{children:treeOpts.transform?treeOpts.mapChildrenField:childrenField});}else{sourceData.forEach(handleSourceRow);}internalData.sourceDataRowIdData=sourceRowIdData;internalData.tableSourceData=sourceData;},/**
698
698
  * 指定列宽的列进行拆分
699
699
  */analyColumnWidth(){const{tableFullColumn}=internalData;const columnOpts=computeColumnOpts.value;const{width:defaultWidth,minWidth:defaultMinWidth}=columnOpts;const resizeList=[];const pxList=[];const pxMinList=[];const autoMinList=[];const scaleList=[];const scaleMinList=[];const autoList=[];const remainList=[];tableFullColumn.forEach(column=>{if(defaultWidth&&!column.width){column.width=defaultWidth;}if(defaultMinWidth&&!column.minWidth){column.minWidth=defaultMinWidth;}if(column.visible){if(column.resizeWidth){resizeList.push(column);}else if(column.width==='auto'){autoList.push(column);}else if((0,_dom.isPx)(column.width)){pxList.push(column);}else if((0,_dom.isScale)(column.width)){scaleList.push(column);}else if((0,_dom.isPx)(column.minWidth)){pxMinList.push(column);}else if(column.minWidth==='auto'){autoMinList.push(column);}else if((0,_dom.isScale)(column.minWidth)){scaleMinList.push(column);}else{remainList.push(column);}}});Object.assign(reactData.columnStore,{resizeList,pxList,pxMinList,autoMinList,scaleList,scaleMinList,autoList,remainList});},handleColResizeMousedownEvent(evnt,fixedType,params){evnt.stopPropagation();evnt.preventDefault();const{column}=params;const{columnStore,overflowX,scrollbarHeight}=reactData;const{visibleColumn}=internalData;const{leftList,rightList}=columnStore;const resizableOpts=computeResizableOpts.value;const osbHeight=overflowX?scrollbarHeight:0;const tableEl=refElem.value;const leftContainerElem=refLeftContainer.value;const rightContainerElem=refRightContainer.value;const resizeBarElem=refColResizeBar.value;if(!resizeBarElem){return;}const isLeftFixed=fixedType==='left';const isRightFixed=fixedType==='right';const resizeTipElem=resizeBarElem.firstElementChild;const scrollbarXToTop=computeScrollbarXToTop.value;const{clientX:dragClientX}=evnt;const dragBtnElem=evnt.target;let resizeColumn=column;const isDragGroupCol=column.children&&column.children.length;if(isDragGroupCol){_xeUtils.default.eachTree(column.children,childColumn=>{resizeColumn=childColumn;});}let cell=dragBtnElem.parentElement;if(isDragGroupCol){const trEl=cell?cell.parentElement:null;const theadEl=trEl?trEl.parentElement:null;cell=theadEl?theadEl.querySelector(`.vxe-header--column[colid="${resizeColumn.id}"]`):null;}if(!cell){return;}const cellParams=_xeUtils.default.assign(params,{cell});let dragLeft=0;const tableRect=tableEl.getBoundingClientRect();const rightContainerRect=rightContainerElem?rightContainerElem.getBoundingClientRect():null;const cellRect=cell.getBoundingClientRect();const dragBtnRect=dragBtnElem.getBoundingClientRect();const dragBtnWidth=dragBtnElem.clientWidth;const dragBtnOffsetWidth=_xeUtils.default.floor(dragBtnWidth/2);const dragPosLeft=dragBtnRect.x-tableRect.x+dragBtnOffsetWidth;const minInterval=(0,_util.getColReMinWidth)(cellParams)-dragBtnOffsetWidth;// 列之间的最小间距
@@ -842,7 +842,7 @@ if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=maxYHei
842
842
  * 分别渲染左边固定列和右边固定列
843
843
  * 如果宽度足够情况下,则不需要渲染固定列
844
844
  * @param {String} fixedType 固定列类型
845
- */const renderFixed=fixedType=>{const{showHeader,showFooter}=props;const{tableData,tableColumn,tableGroupColumn,columnStore,footerTableData}=reactData;const isFixedLeft=fixedType==='left';const fixedColumn=isFixedLeft?columnStore.leftList:columnStore.rightList;return(0,_vue.h)('div',{ref:isFixedLeft?refLeftContainer:refRightContainer,class:`vxe-table--fixed-${fixedType}-wrapper`},[showHeader?(0,_vue.h)(_header.default,{ref:isFixedLeft?refTableLeftHeader:refTableRightHeader,fixedType,tableData,tableColumn,tableGroupColumn,fixedColumn}):renderEmptyElement($xeTable),(0,_vue.h)(_body.default,{ref:isFixedLeft?refTableLeftBody:refTableRightBody,fixedType,tableData,tableColumn,fixedColumn}),showFooter?(0,_vue.h)(_footer.default,{ref:isFixedLeft?refTableLeftFooter:refTableRightFooter,footerTableData,tableColumn,fixedColumn,fixedType}):renderEmptyElement($xeTable)]);};const renderEmptyBody=()=>{const emptyOpts=computeEmptyOpts.value;const emptySlot=slots.empty;const emptyParams={$table:$xeTable,$grid:$xeGrid};if(emptySlot){return emptySlot(emptyParams);}else{const compConf=emptyOpts.name?renderer.get(emptyOpts.name):null;const rtEmptyView=compConf?compConf.renderTableEmpty||compConf.renderTableEmptyView||compConf.renderEmpty:null;if(rtEmptyView){return(0,_vn.getSlotVNs)(rtEmptyView(emptyOpts,emptyParams));}}return(0,_utils.getFuncText)(props.emptyText)||getI18n('vxe.table.emptyText');};const renderDragTipContents=()=>{const{dragConfig}=props;const{dragRow,dragCol,dragTipText}=reactData;const columnDragOpts=computeColumnDragOpts.value;const rowDragOpts=computeRowDragOpts.value;const rowDragSlots=rowDragOpts.slots||{};const rTipSlot=rowDragSlots.tip||(dragConfig&&dragConfig.slots?dragConfig.slots.rowTip:null);const columnDragSlots=columnDragOpts.slots||{};const cTipSlot=columnDragSlots.tip;if(dragRow&&rTipSlot){return callSlot(rTipSlot,{row:dragRow});}if(dragCol&&cTipSlot){return callSlot(cTipSlot,{column:dragCol});}return[(0,_vue.h)('span',dragTipText)];};const renderDragTip=()=>{const{dragRow,dragCol}=reactData;const rowOpts=computeRowOpts.value;const columnOpts=computeColumnOpts.value;const rowDragOpts=computeRowDragOpts.value;const columnDragOpts=computeColumnDragOpts.value;if(rowOpts.drag||columnOpts.drag){return(0,_vue.h)('div',{class:'vxe-table--drag-wrapper'},[(0,_vue.h)('div',{ref:refDragRowLineElem,class:['vxe-table--drag-row-line',{'is--guides':rowDragOpts.showGuidesStatus}]}),(0,_vue.h)('div',{ref:refDragColLineElem,class:['vxe-table--drag-col-line',{'is--guides':columnDragOpts.showGuidesStatus}]}),dragRow&&rowDragOpts.showDragTip||dragCol&&columnDragOpts.showDragTip?(0,_vue.h)('div',{ref:refDragTipElem,class:'vxe-table--drag-sort-tip'},[(0,_vue.h)('div',{class:'vxe-table--drag-sort-tip-wrapper'},[(0,_vue.h)('div',{class:'vxe-table--drag-sort-tip-status'},[(0,_vue.h)('span',{class:['vxe-table--drag-sort-tip-normal-status',dragRow?getIcon().TABLE_DRAG_STATUS_ROW:getIcon().TABLE_DRAG_STATUS_COLUMN]}),(0,_vue.h)('span',{class:['vxe-table--drag-sort-tip-sub-status',getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,_vue.h)('span',{class:['vxe-table--drag-sort-tip-disabled-status',getIcon().TABLE_DRAG_DISABLED]})]),(0,_vue.h)('div',{class:'vxe-table--drag-sort-tip-content'},renderDragTipContents())])]):renderEmptyElement($xeTable)]);}return renderEmptyElement($xeTable);};const renderRowExpandedVNs=()=>{const{treeConfig}=props;const{expandColumn,isRowGroupStatus}=reactData;const tableRowExpandedList=computeTableRowExpandedList.value;const expandOpts=computeExpandOpts.value;const{mode}=expandOpts;if(mode!=='fixed'){return renderEmptyElement($xeTable);}const expandVNs=[(0,_vue.h)('div',{key:'repY',ref:refRowExpandYSpaceElem})];if(expandColumn){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);tableRowExpandedList.forEach(row=>{const expandOpts=computeExpandOpts.value;const{height:expandHeight,padding,indent}=expandOpts;const{fullAllDataRowIdData,fullColumnIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,seqMode}=treeOpts;const cellStyle={};const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const colid=expandColumn.id;const colRest=fullColumnIdData[colid]||{};let rowLevel=0;let seq=-1;let _rowIndex=-1;let rowIndex=-1;let $rowIndex=-1;if(rowRest){rowLevel=rowRest.level;if(isRowGroupStatus||treeConfig&&transform&&seqMode==='increasing'){seq=rowRest._index+1;}else{seq=rowRest.seq;}rowIndex=rowRest.index;$rowIndex=rowRest.$index;_rowIndex=rowRest._index;}if(expandHeight){cellStyle.height=`${expandHeight}px`;}if(isRowGroupStatus||treeConfig){cellStyle.paddingLeft=`${rowLevel*(_xeUtils.default.isNumber(indent)?indent:treeOpts.indent)+30}px`;}let columnIndex=-1;let $columnIndex=-1;let _columnIndex=-1;if(colRest){columnIndex=colRest.index;$columnIndex=colRest.$index;_columnIndex=colRest._index;}const expandParams={$grid:$xeGrid,$table:$xeTable,seq,column:expandColumn,columnIndex,$columnIndex,_columnIndex,fixed:'',type:'body',level:rowLevel,rowid,row,rowIndex,$rowIndex,_rowIndex,isHidden:false,isEdit:false,visibleData:[],data:[],items:[]};expandVNs.push((0,_vue.h)('div',{key:rowid,class:['vxe-body--row-expanded-cell',{'is--padding':padding,'is--ellipsis':expandHeight}],rowid,style:cellStyle},expandColumn.renderData(expandParams)));});}return(0,_vue.h)('div',{ref:refRowExpandElem,class:'vxe-table--row-expanded-wrapper'},expandVNs);};const renderScrollX=()=>{return(0,_vue.h)('div',{key:'vsx',ref:refScrollXVirtualElem,class:'vxe-table--scroll-x-virtual'},[(0,_vue.h)('div',{ref:refScrollXLeftCornerElem,class:'vxe-table--scroll-x-left-corner'}),(0,_vue.h)('div',{ref:refScrollXWrapperElem,class:'vxe-table--scroll-x-wrapper'},[(0,_vue.h)('div',{ref:refScrollXHandleElem,class:'vxe-table--scroll-x-handle',onScroll:$xeTable.triggerVirtualScrollXEvent},[(0,_vue.h)('div',{ref:refScrollXSpaceElem,class:'vxe-table--scroll-x-space'})])]),(0,_vue.h)('div',{ref:refScrollXRightCornerElem,class:'vxe-table--scroll-x-right-corner'})]);};const renderScrollY=()=>{return(0,_vue.h)('div',{ref:refScrollYVirtualElem,class:'vxe-table--scroll-y-virtual'},[(0,_vue.h)('div',{ref:refScrollYTopCornerElem,class:'vxe-table--scroll-y-top-corner'}),(0,_vue.h)('div',{ref:refScrollYWrapperElem,class:'vxe-table--scroll-y-wrapper'},[(0,_vue.h)('div',{ref:refScrollYHandleElem,class:'vxe-table--scroll-y-handle',onScroll:$xeTable.triggerVirtualScrollYEvent},[(0,_vue.h)('div',{ref:refScrollYSpaceElem,class:'vxe-table--scroll-y-space'})])]),(0,_vue.h)('div',{ref:refScrollYBottomCornerElem,class:'vxe-table--scroll-y-bottom-corner'})]);};const renderViewport=()=>{const{showHeader,showFooter}=props;const{overflowX,tableData,tableColumn,tableGroupColumn,footerTableData,columnStore}=reactData;const{leftList,rightList}=columnStore;return(0,_vue.h)('div',{ref:refTableViewportElem,class:'vxe-table--viewport-wrapper'},[(0,_vue.h)('div',{class:'vxe-table--main-wrapper'},[/**
845
+ */const renderFixed=fixedType=>{const{showHeader,showFooter}=props;const{tableData,tableColumn,tableGroupColumn,columnStore,footerTableData}=reactData;const isFixedLeft=fixedType==='left';const fixedColumn=isFixedLeft?columnStore.leftList:columnStore.rightList;return(0,_vue.h)('div',{ref:isFixedLeft?refLeftContainer:refRightContainer,class:`vxe-table--fixed-${fixedType}-wrapper`},[showHeader?(0,_vue.h)(_header.default,{ref:isFixedLeft?refTableLeftHeader:refTableRightHeader,fixedType,tableData,tableColumn,tableGroupColumn,fixedColumn}):renderEmptyElement($xeTable),(0,_vue.h)(_body.default,{ref:isFixedLeft?refTableLeftBody:refTableRightBody,fixedType,tableData,tableColumn,fixedColumn}),showFooter?(0,_vue.h)(_footer.default,{ref:isFixedLeft?refTableLeftFooter:refTableRightFooter,footerTableData,tableColumn,fixedColumn,fixedType}):renderEmptyElement($xeTable)]);};const renderEmptyBody=()=>{const emptyOpts=computeEmptyOpts.value;const emptySlot=slots.empty;const emptyParams={$table:$xeTable,$grid:$xeGrid};if(emptySlot){return emptySlot(emptyParams);}else{const compConf=emptyOpts.name?renderer.get(emptyOpts.name):null;const rtEmptyView=compConf?compConf.renderTableEmpty||compConf.renderTableEmptyView||compConf.renderEmpty:null;if(rtEmptyView){return(0,_vn.getSlotVNs)(rtEmptyView(emptyOpts,emptyParams));}}return(0,_utils.getFuncText)(props.emptyText)||getI18n('vxe.table.emptyText');};const renderDragTipContents=()=>{const{dragConfig}=props;const{dragRow,dragCol,dragTipText}=reactData;const columnDragOpts=computeColumnDragOpts.value;const rowDragOpts=computeRowDragOpts.value;const rowDragSlots=rowDragOpts.slots||{};const rTipSlot=rowDragSlots.tip||(dragConfig&&dragConfig.slots?dragConfig.slots.rowTip:null);const columnDragSlots=columnDragOpts.slots||{};const cTipSlot=columnDragSlots.tip;if(dragRow&&rTipSlot){return callSlot(rTipSlot,{row:dragRow});}if(dragCol&&cTipSlot){return callSlot(cTipSlot,{column:dragCol});}return[(0,_vue.h)('span',dragTipText)];};const renderDragTip=()=>{const{dragRow,dragCol}=reactData;const rowOpts=computeRowOpts.value;const columnOpts=computeColumnOpts.value;const rowDragOpts=computeRowDragOpts.value;const columnDragOpts=computeColumnDragOpts.value;if(rowOpts.drag||columnOpts.drag){return(0,_vue.h)('div',{class:'vxe-table--drag-wrapper'},[(0,_vue.h)('div',{ref:refDragRowLineElem,class:['vxe-table--drag-row-line',{'is--guides':rowDragOpts.showGuidesStatus}]}),(0,_vue.h)('div',{ref:refDragColLineElem,class:['vxe-table--drag-col-line',{'is--guides':columnDragOpts.showGuidesStatus}]}),dragRow&&rowDragOpts.showDragTip||dragCol&&columnDragOpts.showDragTip?(0,_vue.h)('div',{ref:refDragTipElem,class:'vxe-table--drag-sort-tip'},[(0,_vue.h)('div',{class:'vxe-table--drag-sort-tip-wrapper'},[(0,_vue.h)('div',{class:'vxe-table--drag-sort-tip-status'},[(0,_vue.h)('span',{class:['vxe-table--drag-sort-tip-normal-status',dragRow?getIcon().TABLE_DRAG_STATUS_ROW:getIcon().TABLE_DRAG_STATUS_COLUMN]}),(0,_vue.h)('span',{class:['vxe-table--drag-sort-tip-sub-status',getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,_vue.h)('span',{class:['vxe-table--drag-sort-tip-disabled-status',getIcon().TABLE_DRAG_DISABLED]})]),(0,_vue.h)('div',{class:'vxe-table--drag-sort-tip-content'},renderDragTipContents())])]):renderEmptyElement($xeTable)]);}return renderEmptyElement($xeTable);};const renderRowExpandedVNs=()=>{const{treeConfig}=props;const{expandColumn,isRowGroupStatus}=reactData;const tableRowExpandedList=computeTableRowExpandedList.value;const expandOpts=computeExpandOpts.value;const{mode}=expandOpts;if(mode!=='fixed'){return renderEmptyElement($xeTable);}const expandVNs=[(0,_vue.h)('div',{key:'repY',ref:refRowExpandYSpaceElem})];if(expandColumn){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);tableRowExpandedList.forEach(row=>{const expandOpts=computeExpandOpts.value;const{height:expandHeight,padding,indent}=expandOpts;const{fullAllDataRowIdData,fullColumnIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,seqMode}=treeOpts;const cellStyle={};const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];const colid=expandColumn.id;const colRest=fullColumnIdData[colid]||{};let rowLevel=0;let seq=-1;let _rowIndex=-1;let rowIndex=-1;let $rowIndex=-1;if(rowRest){rowIndex=rowRest.index;$rowIndex=rowRest.$index;_rowIndex=rowRest._index;rowLevel=rowRest.level;seq=rowRest.seq;if(isRowGroupStatus||treeConfig&&transform&&seqMode==='increasing'){seq=rowRest._index+1;}else if(treeConfig&&seqMode==='fixed'){seq=rowRest._tIndex+1;}}if(expandHeight){cellStyle.height=`${expandHeight}px`;}if(isRowGroupStatus||treeConfig){cellStyle.paddingLeft=`${rowLevel*(_xeUtils.default.isNumber(indent)?indent:treeOpts.indent)+30}px`;}let columnIndex=-1;let $columnIndex=-1;let _columnIndex=-1;if(colRest){columnIndex=colRest.index;$columnIndex=colRest.$index;_columnIndex=colRest._index;}const expandParams={$grid:$xeGrid,$table:$xeTable,seq,column:expandColumn,columnIndex,$columnIndex,_columnIndex,fixed:'',type:'body',level:rowLevel,rowid,row,rowIndex,$rowIndex,_rowIndex,isHidden:false,isEdit:false,visibleData:[],data:[],items:[]};expandVNs.push((0,_vue.h)('div',{key:rowid,class:['vxe-body--row-expanded-cell',{'is--padding':padding,'is--ellipsis':expandHeight}],rowid,style:cellStyle},expandColumn.renderData(expandParams)));});}return(0,_vue.h)('div',{ref:refRowExpandElem,class:'vxe-table--row-expanded-wrapper'},expandVNs);};const renderScrollX=()=>{return(0,_vue.h)('div',{key:'vsx',ref:refScrollXVirtualElem,class:'vxe-table--scroll-x-virtual'},[(0,_vue.h)('div',{ref:refScrollXLeftCornerElem,class:'vxe-table--scroll-x-left-corner'}),(0,_vue.h)('div',{ref:refScrollXWrapperElem,class:'vxe-table--scroll-x-wrapper'},[(0,_vue.h)('div',{ref:refScrollXHandleElem,class:'vxe-table--scroll-x-handle',onScroll:$xeTable.triggerVirtualScrollXEvent},[(0,_vue.h)('div',{ref:refScrollXSpaceElem,class:'vxe-table--scroll-x-space'})])]),(0,_vue.h)('div',{ref:refScrollXRightCornerElem,class:'vxe-table--scroll-x-right-corner'})]);};const renderScrollY=()=>{return(0,_vue.h)('div',{ref:refScrollYVirtualElem,class:'vxe-table--scroll-y-virtual'},[(0,_vue.h)('div',{ref:refScrollYTopCornerElem,class:'vxe-table--scroll-y-top-corner'}),(0,_vue.h)('div',{ref:refScrollYWrapperElem,class:'vxe-table--scroll-y-wrapper'},[(0,_vue.h)('div',{ref:refScrollYHandleElem,class:'vxe-table--scroll-y-handle',onScroll:$xeTable.triggerVirtualScrollYEvent},[(0,_vue.h)('div',{ref:refScrollYSpaceElem,class:'vxe-table--scroll-y-space'})])]),(0,_vue.h)('div',{ref:refScrollYBottomCornerElem,class:'vxe-table--scroll-y-bottom-corner'})]);};const renderViewport=()=>{const{showHeader,showFooter}=props;const{overflowX,tableData,tableColumn,tableGroupColumn,footerTableData,columnStore}=reactData;const{leftList,rightList}=columnStore;return(0,_vue.h)('div',{ref:refTableViewportElem,class:'vxe-table--viewport-wrapper'},[(0,_vue.h)('div',{class:'vxe-table--main-wrapper'},[/**
846
846
  * 表头
847
847
  */showHeader?(0,_vue.h)(_header.default,{ref:refTableHeader,tableData,tableColumn,tableGroupColumn}):renderEmptyElement($xeTable),/**
848
848
  * 表体