vxe-table 4.7.22 → 4.7.24

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.
@@ -965,7 +965,7 @@ hooks.add('tableEditModule', {
965
965
  } = editRender;
966
966
  let inputElem;
967
967
  if (!autofocus && compRender) {
968
- autofocus = compRender.tableAutofocus || compRender.autofocus;
968
+ autofocus = compRender.tableAutoFocus || compRender.tableAutofocus || compRender.autofocus;
969
969
  }
970
970
  if (!autoselect && compRender) {
971
971
  autoselect = compRender.tableAutoSelect || compRender.autoselect;
@@ -1 +1 @@
1
- "use strict";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}}const{getConfig,renderer,hooks,getI18n}=_ui.VxeUI,tableEditMethodKeys=["insert","insertAt","insertNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];hooks.add("tableEditModule",{setupTable(E){const{props:I,reactData:b,internalData:A}=E,o=E.getRefMaps()["refElem"],{computeMouseOpts:u,computeEditOpts:f,computeCheckboxOpts:x,computeTreeOpts:F}=E.getComputeMaps();let R={},m={};const p=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},n=(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=o.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")};function a(){var{editStore:e,tableColumn:t}=b,l=f.value,e=e["actived"];const{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>n(r,e)):n(r,o))}function S(e,t){const{tableFullTreeData:a,afterFullData:i,fullDataRowIdData:d,fullAllDataRowIdData:c}=A;var l=F.value;const{rowField:s,parentField:u,mapChildrenField:v}=l,g=l.children||l.childrenField,w=t?"push":"unshift";e.forEach(l=>{const t=l[u];var r=(0,_util.getRowid)(E,l),o=t?_xeUtils.default.findTree(a,e=>t===e[s],{children:v}):null;if(o){var o=o["item"],n=c[(0,_util.getRowid)(E,o)],n=n?n.level:0;let e=o[g],t=o[v];_xeUtils.default.isArray(e)||(e=o[g]=[]),_xeUtils.default.isArray(t)||(t=o[g]=[]),e[w](l),t[w](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:e,parent:o,level:n+1};d[r]=o,c[r]=o}else{"development"===process.env.NODE_ENV&&t&&(0,_log.warnLog)("vxe.error.unableInsert"),i[w](l),a[w](l);n={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:a,parent:null,level:0};d[r]=n,c[r]=n}})}const r=(t,l,o)=>{const n=I["treeConfig"];var{mergeList:e,editStore:r}=b;const{tableFullTreeData:a,afterFullData:i,tableFullData:d,fullDataRowIdData:c,fullAllDataRowIdData:s}=A,u=F.value,{transform:v,rowField:g,mapChildrenField:w}=u,f=u.children||u.childrenField,m=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(E.defineField(t.map(e=>Object.assign(n&&v?{[w]:[],[f]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))n&&v?S(m,!1):(i.unshift(...m),d.unshift(...m),e.forEach(e=>{var t=e["row"];0<t&&(e.row=t+m.length)}));else if(-1===l)n&&v?S(m,!0):(i.push(...m),d.push(...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>i.length&&(e.rowspan=l+m.length)}));else if(n&&v){const R=_xeUtils.default.findTree(a,e=>l[g]===e[g],{children:w});if(R){const h=R["parent"],C=h?h[w]:a;t=s[(0,_util.getRowid)(E,h)];const _=t?t.level:0;if(m.forEach((e,t)=>{var l=(0,_util.getRowid)(E,e);"development"===process.env.NODE_ENV&&e[u.parentField]&&h&&e[u.parentField]!==h[g]&&(0,_log.errLog)("vxe.error.errProp",[u.parentField+"="+e[u.parentField],u.parentField+"="+h[g]]),h&&(e[u.parentField]=h[g]);let r=R.index+t;o&&(r+=1),C.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,items:C,parent:h,level:_+1};c[l]=t,s[l]=t}),h){t=_xeUtils.default.findTree(a,e=>l[g]===e[g],{children:f});if(t){var p=t.items;let e=t.index;o&&(e+=1),p.splice(e,0,...m)}}}else"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.unableInsert"),S(m,!0)}else{if(n)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<i.length&&(r=l):r=E.findRowIndexOf(i,l),-1===(r=o?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,...m),d.splice(E.findRowIndexOf(d,l),0,...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+m.length:t+l>r&&(e.rowspan=l+m.length)})}const x=r["insertMaps"];return m.forEach(e=>{var t=(0,_util.getRowid)(E,e);x[t]=e}),E.cacheRowMap(),E.updateScrollYStatus(),E.handleTableData(n&&v),n&&v||E.updateAfterDataIndex(),E.updateFooter(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))};return R={insert(e){return r(e,null)},insertAt(e,t){return r(e,t)},insertNextAt(e,t){return r(e,t,!0)},remove(e){var t=I["treeConfig"];const{mergeList:l,editStore:r,selectCheckboxMaps:o}=b,{tableFullTreeData:n,afterFullData:a,tableFullData:i}=A;var d=x.value,c=F.value;const{transform:s,mapChildrenField:u}=c,v=c.children||c.childrenField,{actived:g,removeMaps:w,insertMaps:f}=r;c=d.checkField;let m=[];if(e?_xeUtils.default.isArray(e)||(e=[e]):e=i,e.forEach(e=>{var t;E.isInsertByRow(e)||(t=(0,_util.getRowid)(E,e),w[t]=e)}),!c){const p=Object.assign({},o);e.forEach(e=>{e=(0,_util.getRowid)(E,e);p[e]&&delete p[e]}),b.selectCheckboxMaps=p}return i===e?(e=m=i.slice(0),A.tableFullData=[],A.afterFullData=[],E.clearMergeCells()):t&&s?e.forEach(e=>{const t=(0,_util.getRowid)(E,e);var l=_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(E,e),{children:u}),l=(l&&(l=l.items.splice(l.index,1),m.push(l[0])),_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(E,e),{children:v})),l=(l&&l.items.splice(l.index,1),E.findRowIndexOf(a,e));-1<l&&a.splice(l,1)}):e.forEach(e=>{var t=E.findRowIndexOf(i,e);-1<t&&(t=i.splice(t,1),m.push(t[0]));const r=E.findRowIndexOf(a,e);-1<r&&(l.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))}),g.row&&-1<E.findRowIndexOf(e,g.row)&&R.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(E,e);f[e]&&delete f[e]}),E.updateFooter(),E.cacheRowMap(),E.handleTableData(t&&s),t&&s||E.updateAfterDataIndex(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))},removeCheckboxRow(){return R.remove(E.getCheckboxRecords()).then(e=>(E.clearCheckboxRow(),e))},removeRadioRow(){var e=E.getRadioRecord();return R.remove(e||[]).then(e=>(E.clearRadioRow(),e))},removeCurrentRow(){var e=E.getCurrentRecord();return R.remove(e||[]).then(e=>(E.clearCurrentRow(),e))},getRecordset(){return{insertRecords:R.getInsertRecords(),removeRecords:R.getRemoveRecords(),updateRecords:R.getUpdateRecords(),pendingRecords:E.getPendingRecords()}},getInsertRecords(){var e=b["editStore"];const l=A["fullAllDataRowIdData"];e=e.insertMaps;const r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=b["editStore"],e=e["removeMaps"];const t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=I,l=A["tableFullData"],r=F.value;return e?(a(),t?_xeUtils.default.filterTree(l,e=>E.isUpdateByRow(e),r):l.filter(e=>E.isUpdateByRow(e))):[]},getActiveRecord(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},getEditRecord(){var e=b["editStore"],t=A["afterFullData"],l=o.value,{args:e,row:r}=e.actived;return e&&-1<E.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},getSelectedCell(){var e=b["editStore"],{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},clearActived(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},clearEdit(e){var t=b["editStore"],{actived:t,focused:l}=t,{row:r,column:o}=t;return(r||o)&&(a(),t.args=null,t.row=null,t.column=null,E.updateFooter(),E.dispatchEvent("edit-closed",{row:r,rowIndex:E.getRowIndex(r),$rowIndex:E.getVMRowIndex(r),column:o,columnIndex:E.getColumnIndex(o),$columnIndex:E.getVMColumnIndex(o)},e||null)),"obsolete"===getConfig().cellVaildMode&&E.clearValidate?E.clearValidate():(l.row=null,(l.column=null,_vue.nextTick)())},clearSelected(){var e=b["editStore"],e=e["selected"];return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},isEditByRow(e){var t=b["editStore"];return t.actived.row===e},setActiveRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),R.setEditRow(e)},setEditRow(e,t){var l=A["visibleColumn"];let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender));return t&&(r=_xeUtils.default.isString(t)?E.getColumnByField(t):t),E.setEditCell(e,r)},setActiveCell(e,t){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),R.setEditCell(e,t)},setEditCell(t,e){var l=I["editConfig"];const r=_xeUtils.default.isString(e)?E.getColumnByField(e):e;return t&&r&&(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(r.editRender)?E.scrollToRow(t,r).then(()=>{var e=E.getCell(t,r);return e&&(m.handleActived({row:t,rowIndex:E.getRowIndex(t),column:r,columnIndex:E.getColumnIndex(r),cell:e,$table:E}),A._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell(e,t){var l=b["tableData"],r=f.value,t=_xeUtils.default.isString(t)?E.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=E.findRowIndexOf(l,e))&&t&&(l=E.getCell(e,t),e={row:e,rowIndex:r,column:t,columnIndex:E.getColumnIndex(t),cell:l},E.handleSelected(e,{})),(0,_vue.nextTick)()}},m={handleActived(t,l){var{editConfig:e,mouseConfig:r}=I,{editStore:o,tableColumn:n}=b,a=f.value,i=a["mode"],{actived:o,focused:d}=o;const{row:c,column:s}=t;var u=s["editRender"],v=t.cell||E.getCell(c,s),g=a.beforeEditMethod||a.activeMethod;if((t.cell=v)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(u)&&!E.hasPendingByRow(c)){if(o.row!==c||"cell"===i&&o.column!==s){let e="edit-disabled";if(!g||g(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))){r&&(R.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),E.closeTooltip(),o.column&&R.clearEdit(l),e="edit-activated",s.renderHeight=v.offsetHeight,o.args=t,o.row=c,o.column=s,"row"===i?n.forEach(e=>p(c,e)):p(c,s);const w=a.afterEditMethod;(0,_vue.nextTick)(()=>{m.handleFocus(t,l),w&&w(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))})}E.dispatchEvent(e,{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l),"edit-activated"===e&&E.dispatchEvent("edit-actived",{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l)}else{e=o["column"];r&&(R.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),e!==s&&(u=e["model"],u.update&&(0,_util.setCellValue)(c,e,u.value),E.clearValidate)&&E.clearValidate(c,s),s.renderHeight=v.offsetHeight,o.args=t,o.column=s,setTimeout(()=>{m.handleFocus(t,l)})}d.column=null,d.row=null,E.focus()}return(0,_vue.nextTick)()},handleFocus(r){var{row:o,column:n,cell:a}=r,i=n["editRender"];if((0,_utils.isEnableConf)(i)){var d=renderer.get(i.name);let{autofocus:e,autoselect:t}=i,l;!e&&d&&(e=d.tableAutofocus||d.autofocus),!t&&d&&(t=d.tableAutoSelect||d.autoselect),_xeUtils.default.isFunction(e)?l=e(r):e&&(l=a.querySelector(e))&&l.focus(),l?t?l.select():_dom.browse.msie&&((i=l.createTextRange()).collapse(!1),i.select()):E.scrollToRow(o,n)}},handleSelected(e,t){var l=I["mouseConfig"],r=b["editStore"],o=u.value;const n=f.value,{actived:a,selected:i}=r,{row:d,column:c}=e,s=l&&o.selected;return!s||i.row===d&&i.column===c||(a.row!==d||"cell"===n.mode&&a.column!==c)&&(R.clearEdit(t),R.clearSelected(),E.clearCellAreas&&(E.clearCellAreas(),E.clearCopyCellArea()),i.args=e,i.row=d,i.column=c,s&&m.addCellSelectedClass(),E.focus(),t)&&E.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=b["editStore"],e=e["selected"],{row:e,column:t}=e;l(),e&&t&&(e=E.getCell(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},R),m)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
1
+ "use strict";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}}const{getConfig,renderer,hooks,getI18n}=_ui.VxeUI,tableEditMethodKeys=["insert","insertAt","insertNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];hooks.add("tableEditModule",{setupTable(E){const{props:I,reactData:b,internalData:A}=E,o=E.getRefMaps()["refElem"],{computeMouseOpts:u,computeEditOpts:f,computeCheckboxOpts:x,computeTreeOpts:F}=E.getComputeMaps();let R={},m={};const p=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},n=(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=o.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")};function a(){var{editStore:e,tableColumn:t}=b,l=f.value,e=e["actived"];const{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>n(r,e)):n(r,o))}function S(e,t){const{tableFullTreeData:a,afterFullData:i,fullDataRowIdData:d,fullAllDataRowIdData:c}=A;var l=F.value;const{rowField:s,parentField:u,mapChildrenField:v}=l,g=l.children||l.childrenField,w=t?"push":"unshift";e.forEach(l=>{const t=l[u];var r=(0,_util.getRowid)(E,l),o=t?_xeUtils.default.findTree(a,e=>t===e[s],{children:v}):null;if(o){var o=o["item"],n=c[(0,_util.getRowid)(E,o)],n=n?n.level:0;let e=o[g],t=o[v];_xeUtils.default.isArray(e)||(e=o[g]=[]),_xeUtils.default.isArray(t)||(t=o[g]=[]),e[w](l),t[w](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:e,parent:o,level:n+1};d[r]=o,c[r]=o}else{"development"===process.env.NODE_ENV&&t&&(0,_log.warnLog)("vxe.error.unableInsert"),i[w](l),a[w](l);n={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:a,parent:null,level:0};d[r]=n,c[r]=n}})}const r=(t,l,o)=>{const n=I["treeConfig"];var{mergeList:e,editStore:r}=b;const{tableFullTreeData:a,afterFullData:i,tableFullData:d,fullDataRowIdData:c,fullAllDataRowIdData:s}=A,u=F.value,{transform:v,rowField:g,mapChildrenField:w}=u,f=u.children||u.childrenField,m=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(E.defineField(t.map(e=>Object.assign(n&&v?{[w]:[],[f]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))n&&v?S(m,!1):(i.unshift(...m),d.unshift(...m),e.forEach(e=>{var t=e["row"];0<t&&(e.row=t+m.length)}));else if(-1===l)n&&v?S(m,!0):(i.push(...m),d.push(...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>i.length&&(e.rowspan=l+m.length)}));else if(n&&v){const R=_xeUtils.default.findTree(a,e=>l[g]===e[g],{children:w});if(R){const h=R["parent"],C=h?h[w]:a;t=s[(0,_util.getRowid)(E,h)];const _=t?t.level:0;if(m.forEach((e,t)=>{var l=(0,_util.getRowid)(E,e);"development"===process.env.NODE_ENV&&e[u.parentField]&&h&&e[u.parentField]!==h[g]&&(0,_log.errLog)("vxe.error.errProp",[u.parentField+"="+e[u.parentField],u.parentField+"="+h[g]]),h&&(e[u.parentField]=h[g]);let r=R.index+t;o&&(r+=1),C.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,items:C,parent:h,level:_+1};c[l]=t,s[l]=t}),h){t=_xeUtils.default.findTree(a,e=>l[g]===e[g],{children:f});if(t){var p=t.items;let e=t.index;o&&(e+=1),p.splice(e,0,...m)}}}else"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.unableInsert"),S(m,!0)}else{if(n)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<i.length&&(r=l):r=E.findRowIndexOf(i,l),-1===(r=o?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,...m),d.splice(E.findRowIndexOf(d,l),0,...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+m.length:t+l>r&&(e.rowspan=l+m.length)})}const x=r["insertMaps"];return m.forEach(e=>{var t=(0,_util.getRowid)(E,e);x[t]=e}),E.cacheRowMap(),E.updateScrollYStatus(),E.handleTableData(n&&v),n&&v||E.updateAfterDataIndex(),E.updateFooter(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))};return R={insert(e){return r(e,null)},insertAt(e,t){return r(e,t)},insertNextAt(e,t){return r(e,t,!0)},remove(e){var t=I["treeConfig"];const{mergeList:l,editStore:r,selectCheckboxMaps:o}=b,{tableFullTreeData:n,afterFullData:a,tableFullData:i}=A;var d=x.value,c=F.value;const{transform:s,mapChildrenField:u}=c,v=c.children||c.childrenField,{actived:g,removeMaps:w,insertMaps:f}=r;c=d.checkField;let m=[];if(e?_xeUtils.default.isArray(e)||(e=[e]):e=i,e.forEach(e=>{var t;E.isInsertByRow(e)||(t=(0,_util.getRowid)(E,e),w[t]=e)}),!c){const p=Object.assign({},o);e.forEach(e=>{e=(0,_util.getRowid)(E,e);p[e]&&delete p[e]}),b.selectCheckboxMaps=p}return i===e?(e=m=i.slice(0),A.tableFullData=[],A.afterFullData=[],E.clearMergeCells()):t&&s?e.forEach(e=>{const t=(0,_util.getRowid)(E,e);var l=_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(E,e),{children:u}),l=(l&&(l=l.items.splice(l.index,1),m.push(l[0])),_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(E,e),{children:v})),l=(l&&l.items.splice(l.index,1),E.findRowIndexOf(a,e));-1<l&&a.splice(l,1)}):e.forEach(e=>{var t=E.findRowIndexOf(i,e);-1<t&&(t=i.splice(t,1),m.push(t[0]));const r=E.findRowIndexOf(a,e);-1<r&&(l.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))}),g.row&&-1<E.findRowIndexOf(e,g.row)&&R.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(E,e);f[e]&&delete f[e]}),E.updateFooter(),E.cacheRowMap(),E.handleTableData(t&&s),t&&s||E.updateAfterDataIndex(),E.checkSelectionStatus(),b.scrollYLoad&&E.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(E.updateCellAreas(),E.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))},removeCheckboxRow(){return R.remove(E.getCheckboxRecords()).then(e=>(E.clearCheckboxRow(),e))},removeRadioRow(){var e=E.getRadioRecord();return R.remove(e||[]).then(e=>(E.clearRadioRow(),e))},removeCurrentRow(){var e=E.getCurrentRecord();return R.remove(e||[]).then(e=>(E.clearCurrentRow(),e))},getRecordset(){return{insertRecords:R.getInsertRecords(),removeRecords:R.getRemoveRecords(),updateRecords:R.getUpdateRecords(),pendingRecords:E.getPendingRecords()}},getInsertRecords(){var e=b["editStore"];const l=A["fullAllDataRowIdData"];e=e.insertMaps;const r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=b["editStore"],e=e["removeMaps"];const t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=I,l=A["tableFullData"],r=F.value;return e?(a(),t?_xeUtils.default.filterTree(l,e=>E.isUpdateByRow(e),r):l.filter(e=>E.isUpdateByRow(e))):[]},getActiveRecord(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},getEditRecord(){var e=b["editStore"],t=A["afterFullData"],l=o.value,{args:e,row:r}=e.actived;return e&&-1<E.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},getSelectedCell(){var e=b["editStore"],{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},clearActived(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},clearEdit(e){var t=b["editStore"],{actived:t,focused:l}=t,{row:r,column:o}=t;return(r||o)&&(a(),t.args=null,t.row=null,t.column=null,E.updateFooter(),E.dispatchEvent("edit-closed",{row:r,rowIndex:E.getRowIndex(r),$rowIndex:E.getVMRowIndex(r),column:o,columnIndex:E.getColumnIndex(o),$columnIndex:E.getVMColumnIndex(o)},e||null)),"obsolete"===getConfig().cellVaildMode&&E.clearValidate?E.clearValidate():(l.row=null,(l.column=null,_vue.nextTick)())},clearSelected(){var e=b["editStore"],e=e["selected"];return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},isEditByRow(e){var t=b["editStore"];return t.actived.row===e},setActiveRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),R.setEditRow(e)},setEditRow(e,t){var l=A["visibleColumn"];let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender));return t&&(r=_xeUtils.default.isString(t)?E.getColumnByField(t):t),E.setEditCell(e,r)},setActiveCell(e,t){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),R.setEditCell(e,t)},setEditCell(t,e){var l=I["editConfig"];const r=_xeUtils.default.isString(e)?E.getColumnByField(e):e;return t&&r&&(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(r.editRender)?E.scrollToRow(t,r).then(()=>{var e=E.getCell(t,r);return e&&(m.handleActived({row:t,rowIndex:E.getRowIndex(t),column:r,columnIndex:E.getColumnIndex(r),cell:e,$table:E}),A._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell(e,t){var l=b["tableData"],r=f.value,t=_xeUtils.default.isString(t)?E.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=E.findRowIndexOf(l,e))&&t&&(l=E.getCell(e,t),e={row:e,rowIndex:r,column:t,columnIndex:E.getColumnIndex(t),cell:l},E.handleSelected(e,{})),(0,_vue.nextTick)()}},m={handleActived(t,l){var{editConfig:e,mouseConfig:r}=I,{editStore:o,tableColumn:n}=b,a=f.value,i=a["mode"],{actived:o,focused:d}=o;const{row:c,column:s}=t;var u=s["editRender"],v=t.cell||E.getCell(c,s),g=a.beforeEditMethod||a.activeMethod;if((t.cell=v)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(u)&&!E.hasPendingByRow(c)){if(o.row!==c||"cell"===i&&o.column!==s){let e="edit-disabled";if(!g||g(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))){r&&(R.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),E.closeTooltip(),o.column&&R.clearEdit(l),e="edit-activated",s.renderHeight=v.offsetHeight,o.args=t,o.row=c,o.column=s,"row"===i?n.forEach(e=>p(c,e)):p(c,s);const w=a.afterEditMethod;(0,_vue.nextTick)(()=>{m.handleFocus(t,l),w&&w(Object.assign(Object.assign({},t),{$table:E,$grid:E.xegrid}))})}E.dispatchEvent(e,{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l),"edit-activated"===e&&E.dispatchEvent("edit-actived",{row:c,rowIndex:E.getRowIndex(c),$rowIndex:E.getVMRowIndex(c),column:s,columnIndex:E.getColumnIndex(s),$columnIndex:E.getVMColumnIndex(s)},l)}else{e=o["column"];r&&(R.clearSelected(),E.clearCellAreas)&&(E.clearCellAreas(),E.clearCopyCellArea()),e!==s&&(u=e["model"],u.update&&(0,_util.setCellValue)(c,e,u.value),E.clearValidate)&&E.clearValidate(c,s),s.renderHeight=v.offsetHeight,o.args=t,o.column=s,setTimeout(()=>{m.handleFocus(t,l)})}d.column=null,d.row=null,E.focus()}return(0,_vue.nextTick)()},handleFocus(r){var{row:o,column:n,cell:a}=r,i=n["editRender"];if((0,_utils.isEnableConf)(i)){var d=renderer.get(i.name);let{autofocus:e,autoselect:t}=i,l;!e&&d&&(e=d.tableAutoFocus||d.tableAutofocus||d.autofocus),!t&&d&&(t=d.tableAutoSelect||d.autoselect),_xeUtils.default.isFunction(e)?l=e(r):e&&(l=a.querySelector(e))&&l.focus(),l?t?l.select():_dom.browse.msie&&((i=l.createTextRange()).collapse(!1),i.select()):E.scrollToRow(o,n)}},handleSelected(e,t){var l=I["mouseConfig"],r=b["editStore"],o=u.value;const n=f.value,{actived:a,selected:i}=r,{row:d,column:c}=e,s=l&&o.selected;return!s||i.row===d&&i.column===c||(a.row!==d||"cell"===n.mode&&a.column!==c)&&(R.clearEdit(t),R.clearSelected(),E.clearCellAreas&&(E.clearCellAreas(),E.clearCopyCellArea()),i.args=e,i.row=d,i.column=c,s&&m.addCellSelectedClass(),E.focus(),t)&&E.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=b["editStore"],e=e["selected"],{row:e,column:t}=e;l(),e&&t&&(e=E.getCell(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},R),m)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
@@ -1500,7 +1500,7 @@ hooks.add('tableExportModule', {
1500
1500
  mode: 'insert',
1501
1501
  message: true,
1502
1502
  types: _xeUtils.default.keys(importOpts._typeMaps)
1503
- }, options, importOpts);
1503
+ }, importOpts, options);
1504
1504
  const {
1505
1505
  types
1506
1506
  } = defOpts;
@@ -1545,21 +1545,29 @@ hooks.add('tableExportModule', {
1545
1545
  },
1546
1546
  openExport(options) {
1547
1547
  const exportOpts = computeExportOpts.value;
1548
+ const defOpts = Object.assign({
1549
+ mode: 'insert',
1550
+ message: true,
1551
+ types: _xeUtils.default.keys(exportOpts._typeMaps)
1552
+ }, exportOpts, options);
1548
1553
  if (process.env.NODE_ENV === 'development') {
1549
1554
  if (!props.exportConfig) {
1550
1555
  (0, _log.errLog)('vxe.error.reqProp', ['export-config']);
1551
1556
  }
1552
1557
  }
1553
- handleExportAndPrint(Object.assign({}, exportOpts, options));
1558
+ handleExportAndPrint(defOpts);
1554
1559
  },
1555
1560
  openPrint(options) {
1556
1561
  const printOpts = computePrintOpts.value;
1562
+ const defOpts = Object.assign({
1563
+ message: true
1564
+ }, printOpts, options);
1557
1565
  if (process.env.NODE_ENV === 'development') {
1558
1566
  if (!props.printConfig) {
1559
1567
  (0, _log.errLog)('vxe.error.reqProp', ['print-config']);
1560
1568
  }
1561
1569
  }
1562
- handleExportAndPrint(Object.assign({}, printOpts, options), true);
1570
+ handleExportAndPrint(defOpts, true);
1563
1571
  }
1564
1572
  };
1565
1573
  return exportMethods;
@@ -1 +1 @@
1
- "use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,hooks,renderer}=_ui.VxeUI;let htmlCellElem;const csvBOM="\ufeff",enterSymbol="\r\n";function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}const getConvertColumns=e=>{const t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1;const o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};function toTableBorder(e){return!0===e?"full":e||"default"}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getFooterData(e,t){const l=e["footerFilterMethod"];return l?t.filter((e,t)=>l({items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function parseCsvAndTxt(e,t,o){t=t.split(enterSymbol);const r=[];let a=[];if(t.length){const i={},s=Date.now();t.forEach(e=>{if(e){const l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(s);return i[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(s);return i[l]=replaceTxtCell(t,i),l})).split(o);a.length?(e.forEach((e,t)=>{t<a.length&&(l[a[t]]=getTxtCellValue(e.trim(),i))}),r.push(l)):a=e.map(e=>getTxtCellValue(e.trim(),i))}})}return{fields:a,rows:r}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var l,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body");const o=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(l=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(e.textContent)})}),(l=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{const l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet");const o=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),e=>{r.push(e.textContent)}),_xeUtils.default.arrayEach(t,(e,t)=>{if(t){const l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function checkImportData(e,t){const l=[];return e.forEach(e=>{e=e.property;e&&l.push(e)}),t.some(e=>-1<l.indexOf(e))}const tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"];hooks.add("tableExportModule",{setupTable(C){const{props:T,reactData:E,internalData:y}=C,{computeTreeOpts:k,computePrintOpts:o,computeExportOpts:$,computeImportOpts:d,computeCustomOpts:f,computeSeqOpts:a,computeRadioOpts:i,computeCheckboxOpts:s,computeColumnOpts:n}=C.getComputeMaps(),w=(0,_vue.inject)("$xeGrid",null),v=(e,t,l,o)=>{var r=a.value.seqMethod||l.seqMethod;return r?r({row:e,rowIndex:C.getRowIndex(e),$rowIndex:t,column:l,columnIndex:C.getColumnIndex(l),$columnIndex:o}):C.getRowSeq(e)};function U(e,t){var l=n.value,l=t.headerExportMethod||l.headerExportMethod;return l?l({column:t,options:e,$table:C}):(e.original?t.property:t.getTitle())||""}const b=e=>_xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e,c=(c,r,e)=>{const{isAllExpand:a,mode:p}=c;var t=T["treeConfig"];const u=i.value,h=s.value;var l=k.value;const m=n.value;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;const x=[],g=new Map;return _xeUtils.default.eachTree(e,(i,s,e,n,t,l)=>{const d=i._row||i;var o,i=t&&t._row?t._row:t;if(a||!i||g.has(i)&&C.isTreeExpandByRow(i)){t=d,o=(o=k.value).children||o.childrenField;t=t[o]&&t[o].length;const i={_row:d,_level:l.length-1,_hasChild:t,_expand:t&&C.isTreeExpandByRow(d)};r.forEach((e,t)=>{let l="";var o,r=e.editRender||e.cellRender;let a=e.exportMethod;if(a=(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod:a)||m.exportMethod)l=a({$table:C,row:d,column:e,options:c});else switch(e.type){case"seq":l="all"===p?n.map((e,t)=>t%2==0?Number(e)+1:".").join(""):v(d,s,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(d)),i._checkboxLabel=h.labelField?_xeUtils.default.get(d,h.labelField):"",i._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:d});break;case"radio":l=b(C.isCheckedByRadioRow(d)),i._radioLabel=u.labelField?_xeUtils.default.get(d,u.labelField):"",i._radioDisabled=u.checkMethod&&!u.checkMethod({row:d});break;default:c.original?l=(0,_util.getCellValue)(d,e):(l=C.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(o=C.getCell(d,e))&&(l=o.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(l)}),g.set(d,1),x.push(Object.assign(i,d))}},{children:t}),x}return e.map((i,s)=>{const n={_row:i};return r.forEach((e,t)=>{let l="";var o,r=e.editRender||e.cellRender;let a=e.exportMethod;if(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.exportMethod:a)l=a({$table:C,row:i,column:e,options:c});else switch(e.type){case"seq":l="all"===p?s+1:v(i,s,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(i)),n._checkboxLabel=h.labelField?_xeUtils.default.get(i,h.labelField):"",n._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:i});break;case"radio":l=b(C.isCheckedByRadioRow(i)),n._radioLabel=u.labelField?_xeUtils.default.get(i,u.labelField):"",n._radioDisabled=u.checkMethod&&!u.checkMethod({row:i});break;default:c.original?l=(0,_util.getCellValue)(i,e):(l=C.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(o=C.getCell(i,e))&&(l=o.innerText.trim()))}n[e.id]=_xeUtils.default.toValueString(l)}),n})},j=(e,t,l)=>{var o=n.value,r=l.editRender||l.cellRender;let a=l.footerExportMethod;a=(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.tableFooterExportMethod||r.footerExportMethod:a)||o.footerExportMethod;r=C.getVTColumnIndex(l);return a?a({$table:C,items:t,itemIndex:r,row:t,_columnIndex:r,column:l,options:e}):_xeUtils.default.isArray(t)?_xeUtils.default.toValueString(t[r]):_xeUtils.default.get(t,l.field)},p=(l,e,t)=>{let o=csvBOM;return l.isHeader&&(o+=e.map(e=>toTxtCellLabel(U(l,e))).join(",")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(j(l,t,e))).join(",")+enterSymbol})),o},u=(l,e,t)=>{let o="";return l.isHeader&&(o+=e.map(e=>toTxtCellLabel(U(l,e))).join("\t")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(j(l,t,e))).join(",")+enterSymbol})),o},M=(e,t,l)=>{e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?l:e;let o="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t;var{scrollXLoad:l,scrollYLoad:e}=E;return o=l||e?o||!0:o},h=(s,e,t)=>{const{id:d,border:l,treeConfig:o,headerAlign:n,align:c,footerAlign:a,showOverflow:p,showHeaderOverflow:u}=T,{isAllSelected:h,isIndeterminate:r,mergeList:m}=E,i=k.value,{print:x,isHeader:g,isFooter:f,isColgroup:v,isMerge:b,colgroups:_,original:y}=s,$="check-all";const w=[`<table class="${["vxe-table","border--"+toTableBorder(l),x?"is--print":"",g?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];g&&(w.push("<thead>"),v&&!y?_.forEach(e=>{w.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||n||c,l=M(t,"showHeaderOverflow",u)?["col--ellipsis"]:[],o=U(s,t);let r=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,r+=e.renderWidth},{children:"childNodes"});var i=r-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${x?"":`style="width: ${i}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${o}"><div ${x?"":`style="width: ${i}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):w.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||n||c,l=M(e,"showHeaderOverflow",u)?["col--ellipsis"]:[],o=U(s,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),w.push("</thead>")),t.length&&(w.push("<tbody>"),o?t.forEach(r=>{w.push("<tr>"+e.map(t=>{var e=t.align||c,l=M(t,"showOverflow",p)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*i.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*i.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*i.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(n=>{w.push("<tr>"+e.map(e=>{var t=e.align||c,l=M(e,"showOverflow",p)?["col--ellipsis"]:[],o=n[e.id];let r=1,a=1;if(b&&m.length){var i=C.getVTRowIndex(n._row),s=C.getVTColumnIndex(e),i=(0,_util.mergeBodyMethod)(m,i,s);if(i){var{rowspan:s,colspan:i}=i;if(!s||!i)return"";1<s&&(r=s),1<i&&(a=i)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${d}" ${n._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${n._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${n._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${n._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}),w.push("</tbody>")),f&&(t=E["footerTableData"],(t=getFooterData(s,t)).length)&&(w.push("<tfoot>"),t.forEach(r=>{w.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||a||c,l=M(e,"showOverflow",p)?["col--ellipsis"]:[],o=j(s,r,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),w.push("</tfoot>"));t=!h&&r?`<script>(function(){var a=document.querySelector(".${$}");if(a){a.indeterminate=true}})()</script>`:"";return w.push("</table>",t),x?w.join(""):(0,_util2.createHtmlPage)(s,w.join(""))},m=(l,e,t)=>{let o=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${l.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return l.isHeader&&(o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${U(l,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{o+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${j(l,t,e)}</Data></Cell>`).join("")}</Row>`})),o+"</Table></Worksheet></Workbook>"},D=i=>{const{remote:l,columns:s,colgroups:o,exportMethod:r,afterExportMethod:t}=i;return new Promise(e=>{if(l){var t={options:i,$table:C,$grid:w};e(r?r(t):t)}else{const a=(e=>{const{columns:t,dataFilterMethod:l}=e;let o=e.data;return l&&(o=o.filter((e,t)=>l({row:e,$rowIndex:t}))),c(e,t,o)})(i);e(C.preventEvent(null,"event.export",{options:i,columns:s,colgroups:o,datas:a},()=>{var e=i,t=((e,t,l)=>{if(t.length)switch(e.type){case"csv":return p(e,t,l);case"txt":return u(e,t,l);case"html":return h(e,t,l);case"xml":return m(e,t,l)}return""})(i,s,a),{filename:l,type:o,download:r}=e;if(!r)return r=(0,_util2.getExportBlobByContent)(t,e),Promise.resolve({type:o,content:t,blob:r});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:l,type:o,content:t}).then(()=>{!1!==e.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}))}}).then(e=>(clearColumnConvert(s),i.print||t&&t({status:!0,options:i,$table:C,$grid:w}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(s),i.print||t&&t({status:!1,options:i,$table:C,$grid:w});return Promise.reject({status:!1})})},x=(a,i)=>{const{importMethod:s,afterImportMethod:t}=i,{type:n,filename:c}=(0,_utils.parseFile)(a);var e=d.value;return s||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),n)?new Promise((t,l)=>{const e=e=>{t(e),y._importResolve=null,y._importReject=null},o=e=>{l(e),y._importResolve=null,y._importReject=null};if(y._importResolve=e,y._importReject=o,window.FileReader){const d=Object.assign({mode:"insert"},i,{type:n,filename:c});var r;d.remote?s?Promise.resolve(s({file:a,options:d,$table:C})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=y["tableFullColumn"],C.preventEvent(null,"event.import",{file:a,options:d,columns:r},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[n]),o({status:!1})},e.onload=t=>{{var l=t.target.result,o=d;const{tableFullColumn:r,_importResolve:a,_importReject:i}=y;let e={fields:[],rows:[]};switch(o.type){case"csv":e=parseCsv(r,l);break;case"txt":e=parseTxt(r,l);break;case"html":e=parseHTML(r,l);break;case"xml":e=parseXML(r,l)}const{fields:s,rows:n}=e;checkImportData(r,s)?C.createData(n).then(e=>{let t;return t="insert"===o.mode?C.insert(e):C.reloadData(e),!1!==o.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[n.length]),status:"success"}),t.then(()=>{a&&a({status:!0})})}):!1!==o.message&&(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),i)&&i({status:!1})}},e.readAsText(a,d.encoding||"UTF-8")}))}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:i,$table:C})}).catch(e=>(t&&t({status:!1,options:i,$table:C}),Promise.reject(e))):(!1!==i.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[n]),status:"error"}),Promise.reject({status:!1}))},l=(e,t)=>{var{treeConfig:l,showHeader:o,showFooter:r}=T,{initStore:a,mergeList:i,isGroup:s,footerTableData:n,exportStore:d,exportParams:c}=E,p=y["collectColumn"],u=$.value,h=f.value,m=C.getCheckboxRecords(),n=!!n.length,i=!l&&i.length,o=Object.assign({message:!0,isHeader:o,isFooter:r},e),r=o.types||_xeUtils.default.keys(u._typeMaps),e=o.modes;const x=h.checkMethod;u=p.slice(0);const g=o["columns"];h=r.map(e=>({value:e,label:"vxe.export.types."+e})),p=e.map(e=>({value:e,label:"vxe.export.modes."+e}));return _xeUtils.default.eachTree(u,(o,e,t,l,r)=>{(o.children&&o.children.length||defaultFilterExportColumn(o))&&(o.checked=g?g.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o===e:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.property||e.field,t?o.id===t:e&&l?o.property===e&&o.type===l:e?o.property===e:!!l&&o.type===l)}):o.visible,o.halfChecked=!1,o.disabled=r&&r.disabled||!!x&&!x({column:o}))}),Object.assign(d,{columns:u,typeList:h,modeList:p,hasFooter:n,hasMerge:i,hasTree:l,isPrint:t,hasColgroup:s,visible:!0}),Object.assign(c,{mode:m.length?"selected":"current"},o),-1===e.indexOf(c.mode)&&(c.mode=e[0]),-1===r.indexOf(c.type)&&(c.type=r[0]),a.export=!0,(0,_vue.nextTick)()},r={exportData(e){var t=T["treeConfig"],{isGroup:l,tableGroupColumn:o}=E;const{tableFullColumn:a,afterFullData:r}=y;var i=$.value,s=k.value;const n=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},i,{print:!1},e);var{type:e,mode:d,columns:c,original:p,beforeExportMethod:u}=n;let h=[];c=c&&c.length?c:null;let m=n.columnFilterMethod;c||(m=m||(p?({column:e})=>e.property:({column:e})=>defaultFilterExportColumn(e))),h=c?(n._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(c,e=>{let t;if(e){if((0,_util.isColumnInfo)(e))t=e;else if(_xeUtils.default.isString(e))t=C.getColumnByField(e);else{var l=e.id||e.colId;const o=e.type,r=e.property||e.field;l?t=C.getColumnById(l):r&&o?t=a.find(e=>e.property===r&&e.type===o):r?t=C.getColumnByField(r):o&&(t=a.find(e=>e.type===o))}return t||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!m||m({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?o:a,(e,t)=>e.visible&&(!m||m({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0});const x=[];if(_xeUtils.default.eachTree(h,e=>{e.children&&e.children.length||x.push(e)},{children:"childNodes"}),n.columns=x,n.colgroups=convertToRows(h),n.filename||(n.filename=getI18n(n.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),n.sheetName||(n.sheetName=document.title),!n.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(i._typeMaps),e))return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notType",[e]),Promise.reject({status:!1});if(n.print||u&&u({options:n,$table:C,$grid:w}),!n.data)if(n.data=r,"selected"===d){const g=C.getCheckboxRecords();-1<["html","pdf"].indexOf(e)&&t?n.data=_xeUtils.default.searchTree(C.getTableData().fullData,e=>-1<C.findRowIndexOf(g,e),Object.assign({},s,{data:"_row"})):n.data=g}else if("all"===d&&("development"!==process.env.NODE_ENV||w||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),w)&&!n.remote){p=w["reactData"],c=w.getComputeMaps()["computeProxyOpts"];const{beforeQueryAll:f,afterQueryAll:v,ajax:b={},props:T={}}=c.value;l=b.queryAll;if("development"!==process.env.NODE_ENV||l||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),l){const _={$table:C,$grid:w,sort:p.sortData,filters:p.filterData,form:p.formData,target:l,options:n};return Promise.resolve((f||l)(_)).catch(e=>e).then(e=>(n.data=(T.list?_xeUtils.default.get(e,T.list):e)||[],v&&v(_),D(n)))}}return D(n)},importByFile(e,t){var t=Object.assign({},t),l=t["beforeImportMethod"];return l&&l({options:t,$table:C}),x(e,t)},importData(e){var t=d.value;const l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:o,afterImportMethod:r}=l;return o&&o({options:l,$table:C}),_ui.VxeUI.readFile(l).catch(e=>(r&&r({status:!1,options:l,$table:C}),Promise.reject(e))).then(e=>{e=e.file;return x(e,l)})},saveFile(e){return _ui.VxeUI.saveFile(e)},readFile(e){return _ui.VxeUI.readFile(e)},print(e){var t=o.value;const l=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return l.sheetName||(l.sheetName=document.title),new Promise((e,t)=>{_ui.VxeUI.print?l.content?e(_ui.VxeUI.print({title:l.sheetName,html:l.content})):e(r.exportData(l).then(({content:e})=>_ui.VxeUI.print({title:l.sheetName,html:e}))):t({status:!1})})},getPrintHtml(e){var t=o.value,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return r.exportData(t).then(({content:e})=>({html:e}))},openImport(e){var{treeConfig:t,importConfig:l}=T,{initStore:o,importStore:r,importParams:a}=E,i=d.value,e=Object.assign({mode:"insert",message:!0,types:_xeUtils.default.keys(i._typeMaps)},e,i),i=e["types"];!t?(l||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=i.map(e=>({value:e,label:"vxe.export.types."+e})),l=e.modes.map(e=>({value:e,label:"vxe.import.modes."+e})),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,e),o.import=!0):e.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},openExport(e){var t=$.value;"development"!==process.env.NODE_ENV||T.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),l(Object.assign({},t,e))},openPrint(e){var t=o.value;"development"!==process.env.NODE_ENV||T.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),l(Object.assign({},t,e),!0)}};return r},setupGrid(e){return e.extendTableMethods(tableExportMethodKeys)}});
1
+ "use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,hooks,renderer}=_ui.VxeUI;let htmlCellElem;const csvBOM="\ufeff",enterSymbol="\r\n";function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}const getConvertColumns=e=>{const t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1;const o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};function toTableBorder(e){return!0===e?"full":e||"default"}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getFooterData(e,t){const l=e["footerFilterMethod"];return l?t.filter((e,t)=>l({items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function parseCsvAndTxt(e,t,o){t=t.split(enterSymbol);const r=[];let a=[];if(t.length){const s={},i=Date.now();t.forEach(e=>{if(e){const l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(i);return s[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(i);return s[l]=replaceTxtCell(t,s),l})).split(o);a.length?(e.forEach((e,t)=>{t<a.length&&(l[a[t]]=getTxtCellValue(e.trim(),s))}),r.push(l)):a=e.map(e=>getTxtCellValue(e.trim(),s))}})}return{fields:a,rows:r}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var l,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body");const o=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(l=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(e.textContent)})}),(l=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{const l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet");const o=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),e=>{r.push(e.textContent)}),_xeUtils.default.arrayEach(t,(e,t)=>{if(t){const l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function checkImportData(e,t){const l=[];return e.forEach(e=>{e=e.property;e&&l.push(e)}),t.some(e=>-1<l.indexOf(e))}const tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"];hooks.add("tableExportModule",{setupTable(C){const{props:T,reactData:E,internalData:y}=C,{computeTreeOpts:k,computePrintOpts:o,computeExportOpts:$,computeImportOpts:d,computeCustomOpts:f,computeSeqOpts:a,computeRadioOpts:s,computeCheckboxOpts:i,computeColumnOpts:n}=C.getComputeMaps(),w=(0,_vue.inject)("$xeGrid",null),v=(e,t,l,o)=>{var r=a.value.seqMethod||l.seqMethod;return r?r({row:e,rowIndex:C.getRowIndex(e),$rowIndex:t,column:l,columnIndex:C.getColumnIndex(l),$columnIndex:o}):C.getRowSeq(e)};function U(e,t){var l=n.value,l=t.headerExportMethod||l.headerExportMethod;return l?l({column:t,options:e,$table:C}):(e.original?t.property:t.getTitle())||""}const b=e=>_xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e,c=(c,r,e)=>{const{isAllExpand:a,mode:p}=c;var t=T["treeConfig"];const u=s.value,h=i.value;var l=k.value;const m=n.value;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;const x=[],g=new Map;return _xeUtils.default.eachTree(e,(s,i,e,n,t,l)=>{const d=s._row||s;var o,s=t&&t._row?t._row:t;if(a||!s||g.has(s)&&C.isTreeExpandByRow(s)){t=d,o=(o=k.value).children||o.childrenField;t=t[o]&&t[o].length;const s={_row:d,_level:l.length-1,_hasChild:t,_expand:t&&C.isTreeExpandByRow(d)};r.forEach((e,t)=>{let l="";var o,r=e.editRender||e.cellRender;let a=e.exportMethod;if(a=(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod:a)||m.exportMethod)l=a({$table:C,row:d,column:e,options:c});else switch(e.type){case"seq":l="all"===p?n.map((e,t)=>t%2==0?Number(e)+1:".").join(""):v(d,i,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(d)),s._checkboxLabel=h.labelField?_xeUtils.default.get(d,h.labelField):"",s._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:d});break;case"radio":l=b(C.isCheckedByRadioRow(d)),s._radioLabel=u.labelField?_xeUtils.default.get(d,u.labelField):"",s._radioDisabled=u.checkMethod&&!u.checkMethod({row:d});break;default:c.original?l=(0,_util.getCellValue)(d,e):(l=C.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(o=C.getCell(d,e))&&(l=o.innerText.trim()))}s[e.id]=_xeUtils.default.toValueString(l)}),g.set(d,1),x.push(Object.assign(s,d))}},{children:t}),x}return e.map((s,i)=>{const n={_row:s};return r.forEach((e,t)=>{let l="";var o,r=e.editRender||e.cellRender;let a=e.exportMethod;if(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.exportMethod:a)l=a({$table:C,row:s,column:e,options:c});else switch(e.type){case"seq":l="all"===p?i+1:v(s,i,e,t);break;case"checkbox":l=b(C.isCheckedByCheckboxRow(s)),n._checkboxLabel=h.labelField?_xeUtils.default.get(s,h.labelField):"",n._checkboxDisabled=h.checkMethod&&!h.checkMethod({row:s});break;case"radio":l=b(C.isCheckedByRadioRow(s)),n._radioLabel=u.labelField?_xeUtils.default.get(s,u.labelField):"",n._radioDisabled=u.checkMethod&&!u.checkMethod({row:s});break;default:c.original?l=(0,_util.getCellValue)(s,e):(l=C.getCellLabel(s,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(o=C.getCell(s,e))&&(l=o.innerText.trim()))}n[e.id]=_xeUtils.default.toValueString(l)}),n})},M=(e,t,l)=>{var o=n.value,r=l.editRender||l.cellRender;let a=l.footerExportMethod;a=(a=!a&&r&&r.name&&(r=renderer.get(r.name))?r.tableFooterExportMethod||r.footerExportMethod:a)||o.footerExportMethod;r=C.getVTColumnIndex(l);return a?a({$table:C,items:t,itemIndex:r,row:t,_columnIndex:r,column:l,options:e}):_xeUtils.default.isArray(t)?_xeUtils.default.toValueString(t[r]):_xeUtils.default.get(t,l.field)},p=(l,e,t)=>{let o=csvBOM;return l.isHeader&&(o+=e.map(e=>toTxtCellLabel(U(l,e))).join(",")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(M(l,t,e))).join(",")+enterSymbol})),o},u=(l,e,t)=>{let o="";return l.isHeader&&(o+=e.map(e=>toTxtCellLabel(U(l,e))).join("\t")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(M(l,t,e))).join(",")+enterSymbol})),o},j=(e,t,l)=>{e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?l:e;let o="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t;var{scrollXLoad:l,scrollYLoad:e}=E;return o=l||e?o||!0:o},h=(i,e,t)=>{const{id:d,border:l,treeConfig:o,headerAlign:n,align:c,footerAlign:a,showOverflow:p,showHeaderOverflow:u}=T,{isAllSelected:h,isIndeterminate:r,mergeList:m}=E,s=k.value,{print:x,isHeader:g,isFooter:f,isColgroup:v,isMerge:b,colgroups:_,original:y}=i,$="check-all";const w=[`<table class="${["vxe-table","border--"+toTableBorder(l),x?"is--print":"",g?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];g&&(w.push("<thead>"),v&&!y?_.forEach(e=>{w.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||n||c,l=j(t,"showHeaderOverflow",u)?["col--ellipsis"]:[],o=U(i,t);let r=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,r+=e.renderWidth},{children:"childNodes"});var s=r-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${x?"":`style="width: ${s}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${o}"><div ${x?"":`style="width: ${s}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):w.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||n||c,l=j(e,"showHeaderOverflow",u)?["col--ellipsis"]:[],o=U(i,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${$}" ${h?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),w.push("</thead>")),t.length&&(w.push("<tbody>"),o?t.forEach(r=>{w.push("<tr>"+e.map(t=>{var e=t.align||c,l=j(t,"showOverflow",p)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*s.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*s.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*s.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(n=>{w.push("<tr>"+e.map(e=>{var t=e.align||c,l=j(e,"showOverflow",p)?["col--ellipsis"]:[],o=n[e.id];let r=1,a=1;if(b&&m.length){var s=C.getVTRowIndex(n._row),i=C.getVTColumnIndex(e),s=(0,_util.mergeBodyMethod)(m,s,i);if(s){var{rowspan:i,colspan:s}=s;if(!i||!s)return"";1<i&&(r=i),1<s&&(a=s)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${d}" ${n._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${n._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${n._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${n._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}),w.push("</tbody>")),f&&(t=E["footerTableData"],(t=getFooterData(i,t)).length)&&(w.push("<tfoot>"),t.forEach(r=>{w.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||a||c,l=j(e,"showOverflow",p)?["col--ellipsis"]:[],o=M(i,r,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),w.push("</tfoot>"));t=!h&&r?`<script>(function(){var a=document.querySelector(".${$}");if(a){a.indeterminate=true}})()</script>`:"";return w.push("</table>",t),x?w.join(""):(0,_util2.createHtmlPage)(i,w.join(""))},m=(l,e,t)=>{let o=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${l.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return l.isHeader&&(o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${U(l,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{o+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),l.isFooter&&(t=E["footerTableData"],getFooterData(l,t).forEach(t=>{o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${M(l,t,e)}</Data></Cell>`).join("")}</Row>`})),o+"</Table></Worksheet></Workbook>"},D=s=>{const{remote:l,columns:i,colgroups:o,exportMethod:r,afterExportMethod:t}=s;return new Promise(e=>{if(l){var t={options:s,$table:C,$grid:w};e(r?r(t):t)}else{const a=(e=>{const{columns:t,dataFilterMethod:l}=e;let o=e.data;return l&&(o=o.filter((e,t)=>l({row:e,$rowIndex:t}))),c(e,t,o)})(s);e(C.preventEvent(null,"event.export",{options:s,columns:i,colgroups:o,datas:a},()=>{var e=s,t=((e,t,l)=>{if(t.length)switch(e.type){case"csv":return p(e,t,l);case"txt":return u(e,t,l);case"html":return h(e,t,l);case"xml":return m(e,t,l)}return""})(s,i,a),{filename:l,type:o,download:r}=e;if(!r)return r=(0,_util2.getExportBlobByContent)(t,e),Promise.resolve({type:o,content:t,blob:r});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:l,type:o,content:t}).then(()=>{!1!==e.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}))}}).then(e=>(clearColumnConvert(i),s.print||t&&t({status:!0,options:s,$table:C,$grid:w}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(i),s.print||t&&t({status:!1,options:s,$table:C,$grid:w});return Promise.reject({status:!1})})},x=(a,s)=>{const{importMethod:i,afterImportMethod:t}=s,{type:n,filename:c}=(0,_utils.parseFile)(a);var e=d.value;return i||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),n)?new Promise((t,l)=>{const e=e=>{t(e),y._importResolve=null,y._importReject=null},o=e=>{l(e),y._importResolve=null,y._importReject=null};if(y._importResolve=e,y._importReject=o,window.FileReader){const d=Object.assign({mode:"insert"},s,{type:n,filename:c});var r;d.remote?i?Promise.resolve(i({file:a,options:d,$table:C})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=y["tableFullColumn"],C.preventEvent(null,"event.import",{file:a,options:d,columns:r},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[n]),o({status:!1})},e.onload=t=>{{var l=t.target.result,o=d;const{tableFullColumn:r,_importResolve:a,_importReject:s}=y;let e={fields:[],rows:[]};switch(o.type){case"csv":e=parseCsv(r,l);break;case"txt":e=parseTxt(r,l);break;case"html":e=parseHTML(r,l);break;case"xml":e=parseXML(r,l)}const{fields:i,rows:n}=e;checkImportData(r,i)?C.createData(n).then(e=>{let t;return t="insert"===o.mode?C.insert(e):C.reloadData(e),!1!==o.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[n.length]),status:"success"}),t.then(()=>{a&&a({status:!0})})}):!1!==o.message&&(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),s)&&s({status:!1})}},e.readAsText(a,d.encoding||"UTF-8")}))}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:s,$table:C})}).catch(e=>(t&&t({status:!1,options:s,$table:C}),Promise.reject(e))):(!1!==s.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[n]),status:"error"}),Promise.reject({status:!1}))},l=(e,t)=>{var{treeConfig:l,showHeader:o,showFooter:r}=T,{initStore:a,mergeList:s,isGroup:i,footerTableData:n,exportStore:d,exportParams:c}=E,p=y["collectColumn"],u=$.value,h=f.value,m=C.getCheckboxRecords(),n=!!n.length,s=!l&&s.length,o=Object.assign({message:!0,isHeader:o,isFooter:r},e),r=o.types||_xeUtils.default.keys(u._typeMaps),e=o.modes;const x=h.checkMethod;u=p.slice(0);const g=o["columns"];h=r.map(e=>({value:e,label:"vxe.export.types."+e})),p=e.map(e=>({value:e,label:"vxe.export.modes."+e}));return _xeUtils.default.eachTree(u,(o,e,t,l,r)=>{(o.children&&o.children.length||defaultFilterExportColumn(o))&&(o.checked=g?g.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o===e:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.property||e.field,t?o.id===t:e&&l?o.property===e&&o.type===l:e?o.property===e:!!l&&o.type===l)}):o.visible,o.halfChecked=!1,o.disabled=r&&r.disabled||!!x&&!x({column:o}))}),Object.assign(d,{columns:u,typeList:h,modeList:p,hasFooter:n,hasMerge:s,hasTree:l,isPrint:t,hasColgroup:i,visible:!0}),Object.assign(c,{mode:m.length?"selected":"current"},o),-1===e.indexOf(c.mode)&&(c.mode=e[0]),-1===r.indexOf(c.type)&&(c.type=r[0]),a.export=!0,(0,_vue.nextTick)()},r={exportData(e){var t=T["treeConfig"],{isGroup:l,tableGroupColumn:o}=E;const{tableFullColumn:a,afterFullData:r}=y;var s=$.value,i=k.value;const n=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},s,{print:!1},e);var{type:e,mode:d,columns:c,original:p,beforeExportMethod:u}=n;let h=[];c=c&&c.length?c:null;let m=n.columnFilterMethod;c||(m=m||(p?({column:e})=>e.property:({column:e})=>defaultFilterExportColumn(e))),h=c?(n._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(c,e=>{let t;if(e){if((0,_util.isColumnInfo)(e))t=e;else if(_xeUtils.default.isString(e))t=C.getColumnByField(e);else{var l=e.id||e.colId;const o=e.type,r=e.property||e.field;l?t=C.getColumnById(l):r&&o?t=a.find(e=>e.property===r&&e.type===o):r?t=C.getColumnByField(r):o&&(t=a.find(e=>e.type===o))}return t||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!m||m({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?o:a,(e,t)=>e.visible&&(!m||m({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0});const x=[];if(_xeUtils.default.eachTree(h,e=>{e.children&&e.children.length||x.push(e)},{children:"childNodes"}),n.columns=x,n.colgroups=convertToRows(h),n.filename||(n.filename=getI18n(n.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),n.sheetName||(n.sheetName=document.title),!n.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(s._typeMaps),e))return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notType",[e]),Promise.reject({status:!1});if(n.print||u&&u({options:n,$table:C,$grid:w}),!n.data)if(n.data=r,"selected"===d){const g=C.getCheckboxRecords();-1<["html","pdf"].indexOf(e)&&t?n.data=_xeUtils.default.searchTree(C.getTableData().fullData,e=>-1<C.findRowIndexOf(g,e),Object.assign({},i,{data:"_row"})):n.data=g}else if("all"===d&&("development"!==process.env.NODE_ENV||w||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),w)&&!n.remote){p=w["reactData"],c=w.getComputeMaps()["computeProxyOpts"];const{beforeQueryAll:f,afterQueryAll:v,ajax:b={},props:T={}}=c.value;l=b.queryAll;if("development"!==process.env.NODE_ENV||l||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),l){const _={$table:C,$grid:w,sort:p.sortData,filters:p.filterData,form:p.formData,target:l,options:n};return Promise.resolve((f||l)(_)).catch(e=>e).then(e=>(n.data=(T.list?_xeUtils.default.get(e,T.list):e)||[],v&&v(_),D(n)))}}return D(n)},importByFile(e,t){var t=Object.assign({},t),l=t["beforeImportMethod"];return l&&l({options:t,$table:C}),x(e,t)},importData(e){var t=d.value;const l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:o,afterImportMethod:r}=l;return o&&o({options:l,$table:C}),_ui.VxeUI.readFile(l).catch(e=>(r&&r({status:!1,options:l,$table:C}),Promise.reject(e))).then(e=>{e=e.file;return x(e,l)})},saveFile(e){return _ui.VxeUI.saveFile(e)},readFile(e){return _ui.VxeUI.readFile(e)},print(e){var t=o.value;const l=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return l.sheetName||(l.sheetName=document.title),new Promise((e,t)=>{_ui.VxeUI.print?l.content?e(_ui.VxeUI.print({title:l.sheetName,html:l.content})):e(r.exportData(l).then(({content:e})=>_ui.VxeUI.print({title:l.sheetName,html:e}))):t({status:!1})})},getPrintHtml(e){var t=o.value,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return r.exportData(t).then(({content:e})=>({html:e}))},openImport(e){var{treeConfig:t,importConfig:l}=T,{initStore:o,importStore:r,importParams:a}=E,s=d.value,s=Object.assign({mode:"insert",message:!0,types:_xeUtils.default.keys(s._typeMaps)},s,e),e=s["types"];!t?(l||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:"vxe.export.types."+e})),l=s.modes.map(e=>({value:e,label:"vxe.import.modes."+e})),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,s),o.import=!0):s.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},openExport(e){var t=$.value,t=Object.assign({mode:"insert",message:!0,types:_xeUtils.default.keys(t._typeMaps)},t,e);"development"!==process.env.NODE_ENV||T.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),l(t)},openPrint(e){var t=o.value,t=Object.assign({message:!0},t,e);"development"!==process.env.NODE_ENV||T.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),l(t,!0)}};return r},setupGrid(e){return e.extendTableMethods(tableExportMethodKeys)}});
@@ -961,7 +961,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
961
961
  });
962
962
  } else {
963
963
  const compConf = emptyOpts.name ? renderer.get(emptyOpts.name) : null;
964
- const rtEmptyView = compConf ? compConf.renderTableEmptyView || compConf.renderEmpty : null;
964
+ const rtEmptyView = compConf ? compConf.renderTableEmpty || compConf.renderTableEmptyView || compConf.renderEmpty : null;
965
965
  if (rtEmptyView) {
966
966
  emptyContent = (0, _vn.getSlotVNs)(rtEmptyView(emptyOpts, {
967
967
  $table: $xeTable
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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}}const{getI18n,renderer}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){const ae=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:se,context:y,reactData:ie,internalData:ne}=ae,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=ae.getRefMaps(),{computeEditOpts:ue,computeMouseOpts:B,computeSYOpts:ce,computeEmptyOpts:N,computeKeyboardOpts:Y,computeTooltipOpts:he,computeRadioOpts:e,computeExpandOpts:A,computeTreeOpts:d,computeCheckboxOpts:de,computeValidOpts:ge,computeRowOpts:ve,computeColumnOpts:xe}=ae.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),M=(0,_vue.ref)(),v=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},pe=()=>{var e=se["delayHover"],{lastScrollTime:l,_isResize:t}=ie;return!!(t||l&&Date.now()<l+e)},p=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&ae.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=p(r[e],l)}return t},me=e=>{var{row:l,column:t}=e,o=ne["afterFullData"],r=se["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=ne["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(ae,l)];let n=0,u=0,c=[];return i&&(n=i.level,u=i._index,c=i.items),t&&t.line?ae.callSlot(t.line,e):(i=ae.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${i?1:((e,l,t)=>{let o=1;return t&&(o=p(l[t-1],e)),ie.rowHeight*o-(t?1:12-v())})(e,c,u)}px`,left:n*a.indent+(n?2-v():0)+16+"px"}})])]:[])},P=(e,l,t,o,r,a,s,i,n,u,U,q)=>{var{columnKey:j,height:c,showOverflow:d,cellClassName:B,cellStyle:v,align:p,spanMethod:h,mouseConfig:N,editConfig:Y,editRules:g,tooltipConfig:W}=se,{tableData:F,overflowX:x,scrollYLoad:V,currentColumn:A,mergeList:m,editStore:f,isAllOverflow:P,validErrorMaps:w}=ie,X=ne["afterFullData"],y=ge.value,K=de.value,_=ue.value,b=he.value,T=ve.value,S=ce.value,z=xe.value,{type:G,cellRender:J,editRender:C,align:O,showOverflow:L,className:Q,treeNode:Z,slots:ee}=n,f=f["actived"],S=S["rHeight"],T=T["height"],R=C||J,R=R?renderer.get(R.name):null,le=R?R.tableCellClassName||R.cellClassName:null,R=R?R.tableCellStyle||R.cellStyle:"";const H=b.showAll;var b=ae.getColumnIndex(n),te=ae.getVTColumnIndex(n),oe=(0,_utils.isEnableConf)(C);let $=t?n.fixed!==t:n.fixed&&x;x=_xeUtils.default.isUndefined(L)||_xeUtils.default.isNull(L)?d:L;let M="ellipsis"===x;const E="title"===x,I=!0===x||"tooltip"===x;let D=E||I||M,re;L={},x=O||p,O=w[l+":"+n.id],p=g&&y.showMessage&&("default"===y.message?c||1<F.length:"inline"===y.message),w={colid:n.id};const k={$table:ae,$grid:ae.xegrid,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:i,column:n,columnIndex:b,$columnIndex:u,_columnIndex:te,fixed:t,type:renderType,isHidden:$,level:o,visibleData:X,data:F,items:q};if(V&&!D&&(M=D=!0),(E||I||H||W)&&(L.onMouseenter=e=>{pe()||(E?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||H)&&ae.triggerBodyTooltipEvent(e,k),ae.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||W)&&(L.onMouseleave=e=>{pe()||((I||H)&&ae.handleTargetLeaveEvent(e),ae.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(K.range||N)&&(L.onMousedown=e=>{ae.triggerCellMousedownEvent(e,k)}),L.onClick=e=>{ae.triggerCellClickEvent(e,k)},L.onDblclick=e=>{ae.triggerCellDblclickEvent(e,k)},m.length){g=(0,_util.mergeBodyMethod)(m,i,te);if(g){var{rowspan:c,colspan:e}=g;if(!c||!e)return null;1<c&&(w.rowspan=c),1<e&&(w.colspan=e)}}else if(h){var{rowspan:l=1,colspan:a=1}=h(k)||{};if(!l||!a)return null;1<l&&(w.rowspan=l),1<a&&(w.colspan=a)}!($=$&&m&&(1<w.colspan||1<w.rowspan)?!1:$)&&Y&&(C||J)&&(_.showStatus||_.showUpdateStatus)&&(re=ae.isUpdateByRow(r,n.field));s=[];return $&&d&&P?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":E,"c--tooltip":I,"c--ellipsis":M}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""}})):(s.push(...me(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":E,"c--tooltip":I,"c--ellipsis":M}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""},title:E?ae.getCellLabel(r,n):null},n.renderCell(k))),p&&O&&(b=O.rule,t=ee?ee.valid:null,o=Object.assign(Object.assign({},k),O),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(y.className,o)],style:b&&b.maxWidth?{width:b.maxWidth+"px"}:null},t?ae.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",n.id,{["col--"+x]:x,["col--"+G]:G,"col--last":u===U.length-1,"col--tree-node":Z,"col--edit":oe,"col--ellipsis":D,"fixed--hidden":$,"col--dirty":re,"col--active":Y&&oe&&f.row===r&&(f.column===n||"row"===_.mode),"col--valid-error":!!O,"col--current":A===n},(0,_dom.getPropClass)(le,k),(0,_dom.getPropClass)(Q,k),(0,_dom.getPropClass)(B,k)],key:j||z.useKey?n.id:u},w),{style:Object.assign({height:D&&(S||T)?`${S||T}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(v)?v(k):v)}),L),s)},V=(x,m,f)=>{const{stripe:w,rowKey:y,highlightHoverRow:_,rowClassName:b,rowStyle:T,showOverflow:S,editConfig:C,treeConfig:O}=se,{hasFixedColumn:L,treeExpandedMaps:R,scrollYLoad:H,rowExpandedMaps:$,expandColumn:M,selectRadioRow:E,pendingRowMaps:I,pendingRowList:D}=ie,k=ne["fullAllDataRowIdData"],U=de.value,q=e.value,j=d.value,B=ue.value,N=ve.value,Y=j["transform"],W=j.children||j.childrenField,F=[];return m.forEach((t,o)=>{var e={};let r;r=ae.getRowIndex(t),(N.isHover||_)&&(e.onMouseenter=e=>{pe()||ae.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{pe()||ae.clearHoverRow()});const a=(0,_util.getRowid)(ae,t);var l=k[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var u,c,d,l={$table:ae,seq:i,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},v=M&&!!$[a];let p=!1,h=[],g=!1;C&&(g=ae.isInsertByRow(t)),!O||H||Y||(h=t[W],p=h&&0<h.length&&!!R[a]),F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(ae.getVTRowIndex(t)+1)%2==0,"is--new":g,"is--expand-row":v,"is--expand-tree":p,"row--new":g&&(B.showStatus||B.showInsertStatus),"row--radio":q.highlight&&ae.eqRow(E,t),"row--checked":U.highlight&&ae.isCheckedByCheckboxRow(t),"row--pending":D.length&&!!I[a]},(0,_dom.getPropClass)(b,l)],rowid:a,style:T?_xeUtils.default.isFunction(T)?T(l):T:null,key:y||N.useKey||O?a:o},e),f.map((e,l)=>P(i,a,x,s,t,r,o,n,e,l,f,m)))),v&&({height:l,padding:v}=A.value,u={},c=(l&&(u.height=l+"px"),O&&(u.paddingLeft=s*j.indent+30+"px"),M)["showOverflow"],c=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?S:c,d={$table:ae,seq:i,column:M,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+a,style:T?_xeUtils.default.isFunction(T)?T(d):T:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!L,"col--ellipsis":c},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:u},[M.renderData(d)])])]))),p&&F.push(...V(x,h,f))}),F};let r;const E=(e,l,t,o)=>{(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(()=>{(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o),ie.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=se["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ie,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=ne,n=ve.value,u=_.value,c=b.value,d=q.value,v=T.value,p=S.value,h=j.value,g=C.value,u=u?u.$el:null,d=d?d.$el:null,c=c.$el,v=v?v.$el:null,p=p?p.$el:null,x=a["main-body-ySpace"],x=x?x.value:null,a=a["main-body-xSpace"],a=a?a.value:null,x=(r&&x?x:c).clientHeight,a=(o&&a?a:c).clientWidth;let m=g.scrollTop;g=c.scrollLeft,i=g!==i,s=m!==s;ne.lastScrollTop=m,ne.lastScrollLeft=g,ie.lastScrollTime=Date.now(),(n.isHover||t)&&ae.clearHoverRow(),v&&"left"===l?(m=v.scrollTop,E(0,m,c,p)):p&&"right"===l?(m=p.scrollTop,E(0,m,c,v)):(i&&(u&&(u.scrollLeft=c.scrollLeft),d)&&(d.scrollLeft=c.scrollLeft),(v||p)&&(ae.checkScrolling(),s)&&E(0,m,v,p)),o&&i&&ae.triggerScrollXEvent(e),r&&s&&ae.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),ae.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:m,scrollLeft:g,scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth,bodyHeight:x,bodyWidth:a,isX:i,isY:s},e)};let m,I=0,D=0,k=0,U=!1;const h=(r,a,e,s,i)=>{var l=ne["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ie,n=b.value,u=T.value,c=S.value;const d=u?u.$el:null,v=c?c.$el:null,p=n.$el;u=l["main-body-ySpace"],c=u?u.value:null,n=l["main-body-xSpace"],u=n?n.value:null;const h=(o&&c?c:p).clientHeight,g=(t&&u?u:p).clientWidth;l=U===a?Math.max(0,I-k):0;U=a,I=Math.abs(a?e-l:e+l),D=0,k=0,clearTimeout(m);const x=()=>{var e,l,t,o;k<I&&(e=f["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(D=Math.max(5,Math.floor(1.5*D)),(k+=D)>I&&(D-=k-I),p),o=o+D*(a?-1:1),p.scrollTop=o,d&&(d.scrollTop=o),v&&(v.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(x,10)),ae.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:p.scrollTop,scrollLeft:p.scrollLeft,scrollHeight:p.scrollHeight,scrollWidth:p.scrollWidth,bodyHeight:h,bodyWidth:g,isX:s,isY:i},r))};x()},W=e=>{var{deltaY:l,deltaX:t}=e,o=se["highlightHoverRow"],r=ie["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=ne,i=ve.value,n=b.value,u=C.value,n=n.$el,c=l<0;(c?u.scrollTop<=0:u.scrollTop>=u.scrollHeight-u.clientHeight)||(u=u.scrollTop+l,t=(n=n.scrollLeft+t)!==s,(s=u!==a)&&(e.preventDefault(),ne.lastScrollTop=u,ne.lastScrollLeft=n,ie.lastScrollTime=Date.now(),(i.isHover||o)&&ae.clearHoverRow(),h(e,c,l,t,s),r)&&ae.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=ne["elemStore"],e=`${e||"main"}-body-`,t=C.value;l[e+"wrapper"]=C,l[e+"table"]=O,l[e+"colgroup"]=L,l[e+"list"]=R,l[e+"xSpace"]=H,l[e+"ySpace"]=$,l[e+"emptyBlock"]=M,t&&(t.onscroll=o,t._onscroll=o)})}),(0,_vue.onBeforeUnmount)(()=>{var e=C.value;clearTimeout(m),e&&(e._onscroll=null,e.onscroll=null)}),(0,_vue.onUnmounted)(()=>{var e=f["fixedType"],l=ne["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=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()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=f;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=se,{tableData:i,mergeList:n,scrollYLoad:u,isAllOverflow:c}=ie,d=ne["visibleColumn"],v=y["slots"],p=ce.value,h=N.value,g=Y.value,x=B.value;l&&(t=ie.expandColumn||!(u||r&&c)||n.length||a||o&&g.isMerge?d:e);let m;u=v?v.empty:null;return m=u?ae.callSlot(u,{$table:ae,$grid:ae.xegrid}):(c=(r=h.name?renderer.get(h.name):null)?r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(c(h,{$table:ae})):se.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",Object.assign({ref:C,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:w},"wheel"===p.mode?{onWheel:W}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--body",xid:w,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:L},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("tbody",{ref:R},V(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){ae.triggerCellExtendMousedownEvent(e,{$table:ae,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-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"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:M},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},m)])])}}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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}}const{getI18n,renderer}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){const ae=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:se,context:y,reactData:ie,internalData:ne}=ae,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=ae.getRefMaps(),{computeEditOpts:ue,computeMouseOpts:B,computeSYOpts:ce,computeEmptyOpts:N,computeKeyboardOpts:Y,computeTooltipOpts:he,computeRadioOpts:e,computeExpandOpts:A,computeTreeOpts:d,computeCheckboxOpts:de,computeValidOpts:ge,computeRowOpts:pe,computeColumnOpts:xe}=ae.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),E=(0,_vue.ref)(),p=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},ve=()=>{var e=se["delayHover"],{lastScrollTime:l,_isResize:t}=ie;return!!(t||l&&Date.now()<l+e)},v=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&ae.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=v(r[e],l)}return t},me=e=>{var{row:l,column:t}=e,o=ne["afterFullData"],r=se["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=ne["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(ae,l)];let n=0,u=0,c=[];return i&&(n=i.level,u=i._index,c=i.items),t&&t.line?ae.callSlot(t.line,e):(i=ae.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${i?1:((e,l,t)=>{let o=1;return t&&(o=v(l[t-1],e)),ie.rowHeight*o-(t?1:12-p())})(e,c,u)}px`,left:n*a.indent+(n?2-p():0)+16+"px"}})])]:[])},P=(e,l,t,o,r,a,s,i,n,u,U,q)=>{var{columnKey:j,height:c,showOverflow:d,cellClassName:B,cellStyle:p,align:v,spanMethod:h,mouseConfig:N,editConfig:Y,editRules:g,tooltipConfig:W}=se,{tableData:F,overflowX:x,scrollYLoad:V,currentColumn:A,mergeList:m,editStore:f,isAllOverflow:P,validErrorMaps:w}=ie,X=ne["afterFullData"],y=ge.value,K=de.value,_=ue.value,b=he.value,T=pe.value,S=ce.value,z=xe.value,{type:G,cellRender:J,editRender:C,align:O,showOverflow:L,className:Q,treeNode:Z,slots:ee}=n,f=f["actived"],S=S["rHeight"],T=T["height"],R=C||J,R=R?renderer.get(R.name):null,le=R?R.tableCellClassName||R.cellClassName:null,R=R?R.tableCellStyle||R.cellStyle:"";const H=b.showAll;var b=ae.getColumnIndex(n),te=ae.getVTColumnIndex(n),oe=(0,_utils.isEnableConf)(C);let $=t?n.fixed!==t:n.fixed&&x;x=_xeUtils.default.isUndefined(L)||_xeUtils.default.isNull(L)?d:L;let E="ellipsis"===x;const M="title"===x,I=!0===x||"tooltip"===x;let D=M||I||E,re;L={},x=O||v,O=w[l+":"+n.id],v=g&&y.showMessage&&("default"===y.message?c||1<F.length:"inline"===y.message),w={colid:n.id};const k={$table:ae,$grid:ae.xegrid,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:i,column:n,columnIndex:b,$columnIndex:u,_columnIndex:te,fixed:t,type:renderType,isHidden:$,level:o,visibleData:X,data:F,items:q};if(V&&!D&&(E=D=!0),(M||I||H||W)&&(L.onMouseenter=e=>{ve()||(M?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||H)&&ae.triggerBodyTooltipEvent(e,k),ae.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||W)&&(L.onMouseleave=e=>{ve()||((I||H)&&ae.handleTargetLeaveEvent(e),ae.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(K.range||N)&&(L.onMousedown=e=>{ae.triggerCellMousedownEvent(e,k)}),L.onClick=e=>{ae.triggerCellClickEvent(e,k)},L.onDblclick=e=>{ae.triggerCellDblclickEvent(e,k)},m.length){g=(0,_util.mergeBodyMethod)(m,i,te);if(g){var{rowspan:c,colspan:e}=g;if(!c||!e)return null;1<c&&(w.rowspan=c),1<e&&(w.colspan=e)}}else if(h){var{rowspan:l=1,colspan:a=1}=h(k)||{};if(!l||!a)return null;1<l&&(w.rowspan=l),1<a&&(w.colspan=a)}!($=$&&m&&(1<w.colspan||1<w.rowspan)?!1:$)&&Y&&(C||J)&&(_.showStatus||_.showUpdateStatus)&&(re=ae.isUpdateByRow(r,n.field));s=[];return $&&d&&P?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""}})):(s.push(...me(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""},title:M?ae.getCellLabel(r,n):null},n.renderCell(k))),v&&O&&(b=O.rule,t=ee?ee.valid:null,o=Object.assign(Object.assign({},k),O),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(y.className,o)],style:b&&b.maxWidth?{width:b.maxWidth+"px"}:null},t?ae.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",n.id,{["col--"+x]:x,["col--"+G]:G,"col--last":u===U.length-1,"col--tree-node":Z,"col--edit":oe,"col--ellipsis":D,"fixed--hidden":$,"col--dirty":re,"col--active":Y&&oe&&f.row===r&&(f.column===n||"row"===_.mode),"col--valid-error":!!O,"col--current":A===n},(0,_dom.getPropClass)(le,k),(0,_dom.getPropClass)(Q,k),(0,_dom.getPropClass)(B,k)],key:j||z.useKey?n.id:u},w),{style:Object.assign({height:D&&(S||T)?`${S||T}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(p)?p(k):p)}),L),s)},V=(x,m,f)=>{const{stripe:w,rowKey:y,highlightHoverRow:_,rowClassName:b,rowStyle:T,showOverflow:S,editConfig:C,treeConfig:O}=se,{hasFixedColumn:L,treeExpandedMaps:R,scrollYLoad:H,rowExpandedMaps:$,expandColumn:E,selectRadioRow:M,pendingRowMaps:I,pendingRowList:D}=ie,k=ne["fullAllDataRowIdData"],U=de.value,q=e.value,j=d.value,B=ue.value,N=pe.value,Y=j["transform"],W=j.children||j.childrenField,F=[];return m.forEach((t,o)=>{var e={};let r;r=ae.getRowIndex(t),(N.isHover||_)&&(e.onMouseenter=e=>{ve()||ae.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{ve()||ae.clearHoverRow()});const a=(0,_util.getRowid)(ae,t);var l=k[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var u,c,d,l={$table:ae,seq:i,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},p=E&&!!$[a];let v=!1,h=[],g=!1;C&&(g=ae.isInsertByRow(t)),!O||H||Y||(h=t[W],v=h&&0<h.length&&!!R[a]),F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(ae.getVTRowIndex(t)+1)%2==0,"is--new":g,"is--expand-row":p,"is--expand-tree":v,"row--new":g&&(B.showStatus||B.showInsertStatus),"row--radio":q.highlight&&ae.eqRow(M,t),"row--checked":U.highlight&&ae.isCheckedByCheckboxRow(t),"row--pending":D.length&&!!I[a]},(0,_dom.getPropClass)(b,l)],rowid:a,style:T?_xeUtils.default.isFunction(T)?T(l):T:null,key:y||N.useKey||O?a:o},e),f.map((e,l)=>P(i,a,x,s,t,r,o,n,e,l,f,m)))),p&&({height:l,padding:p}=A.value,u={},c=(l&&(u.height=l+"px"),O&&(u.paddingLeft=s*j.indent+30+"px"),E)["showOverflow"],c=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?S:c,d={$table:ae,seq:i,column:E,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":p}],key:"expand_"+a,style:T?_xeUtils.default.isFunction(T)?T(d):T:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!L,"col--ellipsis":c},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:u},[E.renderData(d)])])]))),v&&F.push(...V(x,h,f))}),F};let r;const M=(e,l,t,o)=>{(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(()=>{(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o),ie.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=se["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ie,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=ne,n=pe.value,u=_.value,c=b.value,d=q.value,p=T.value,v=S.value,h=j.value,g=C.value,u=u?u.$el:null,d=d?d.$el:null,c=c.$el,p=p?p.$el:null,v=v?v.$el:null,x=a["main-body-ySpace"],x=x?x.value:null,a=a["main-body-xSpace"],a=a?a.value:null,x=(r&&x?x:c).clientHeight,a=(o&&a?a:c).clientWidth;let m=g.scrollTop;g=c.scrollLeft,i=g!==i,s=m!==s;ne.lastScrollTop=m,ne.lastScrollLeft=g,ie.lastScrollTime=Date.now(),(n.isHover||t)&&ae.clearHoverRow(),p&&"left"===l?(m=p.scrollTop,M(0,m,c,v)):v&&"right"===l?(m=v.scrollTop,M(0,m,c,p)):(i&&(u&&(u.scrollLeft=c.scrollLeft),d)&&(d.scrollLeft=c.scrollLeft),(p||v)&&(ae.checkScrolling(),s)&&M(0,m,p,v)),o&&i&&ae.triggerScrollXEvent(e),r&&s&&ae.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),ae.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:m,scrollLeft:g,scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth,bodyHeight:x,bodyWidth:a,isX:i,isY:s},e)};let m,I=0,D=0,k=0,U=!1;const h=(r,a,e,s,i)=>{var l=ne["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ie,n=b.value,u=T.value,c=S.value;const d=u?u.$el:null,p=c?c.$el:null,v=n.$el;u=l["main-body-ySpace"],c=u?u.value:null,n=l["main-body-xSpace"],u=n?n.value:null;const h=(o&&c?c:v).clientHeight,g=(t&&u?u:v).clientWidth;l=U===a?Math.max(0,I-k):0;U=a,I=Math.abs(a?e-l:e+l),D=0,k=0,clearTimeout(m);const x=()=>{var e,l,t,o;k<I&&(e=f["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(D=Math.max(5,Math.floor(1.5*D)),(k+=D)>I&&(D-=k-I),v),o=o+D*(a?-1:1),v.scrollTop=o,d&&(d.scrollTop=o),p&&(p.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(x,10)),ae.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:v.scrollTop,scrollLeft:v.scrollLeft,scrollHeight:v.scrollHeight,scrollWidth:v.scrollWidth,bodyHeight:h,bodyWidth:g,isX:s,isY:i},r))};x()},W=e=>{var{deltaY:l,deltaX:t}=e,o=se["highlightHoverRow"],r=ie["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=ne,i=pe.value,n=b.value,u=C.value,n=n.$el,c=l<0;(c?u.scrollTop<=0:u.scrollTop>=u.scrollHeight-u.clientHeight)||(u=u.scrollTop+l,t=(n=n.scrollLeft+t)!==s,(s=u!==a)&&(e.preventDefault(),ne.lastScrollTop=u,ne.lastScrollLeft=n,ie.lastScrollTime=Date.now(),(i.isHover||o)&&ae.clearHoverRow(),h(e,c,l,t,s),r)&&ae.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=ne["elemStore"],e=`${e||"main"}-body-`,t=C.value;l[e+"wrapper"]=C,l[e+"table"]=O,l[e+"colgroup"]=L,l[e+"list"]=R,l[e+"xSpace"]=H,l[e+"ySpace"]=$,l[e+"emptyBlock"]=E,t&&(t.onscroll=o,t._onscroll=o)})}),(0,_vue.onBeforeUnmount)(()=>{var e=C.value;clearTimeout(m),e&&(e._onscroll=null,e.onscroll=null)}),(0,_vue.onUnmounted)(()=>{var e=f["fixedType"],l=ne["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=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()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=f;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=se,{tableData:i,mergeList:n,scrollYLoad:u,isAllOverflow:c}=ie,d=ne["visibleColumn"],p=y["slots"],v=ce.value,h=N.value,g=Y.value,x=B.value;l&&(t=ie.expandColumn||!(u||r&&c)||n.length||a||o&&g.isMerge?d:e);let m;u=p?p.empty:null;return m=u?ae.callSlot(u,{$table:ae,$grid:ae.xegrid}):(c=(r=h.name?renderer.get(h.name):null)?r.renderTableEmpty||r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(c(h,{$table:ae})):se.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",Object.assign({ref:C,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:w},"wheel"===v.mode?{onWheel:W}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--body",xid:w,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:L},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("tbody",{ref:R},V(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){ae.triggerCellExtendMousedownEvent(e,{$table:ae,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-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"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:E},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},m)])])}}});
@@ -7439,7 +7439,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
7439
7439
  return slots.empty(params);
7440
7440
  } else {
7441
7441
  const compConf = emptyOpts.name ? renderer.get(emptyOpts.name) : null;
7442
- const rtEmptyView = compConf ? compConf.renderTableEmptyView || compConf.renderEmpty : null;
7442
+ const rtEmptyView = compConf ? compConf.renderTableEmpty || compConf.renderTableEmptyView || compConf.renderEmpty : null;
7443
7443
  if (rtEmptyView) {
7444
7444
  return (0, _vn.getSlotVNs)(rtEmptyView(emptyOpts, params));
7445
7445
  }