vxe-table 3.11.13 → 3.11.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/es/locale/lang/ar-EG.js +678 -0
  2. package/es/locale/lang/de-DE.js +678 -0
  3. package/es/locale/lang/en-US.js +2 -1
  4. package/es/locale/lang/es-ES.js +2 -1
  5. package/es/locale/lang/fr-FR.js +678 -0
  6. package/es/locale/lang/hu-HU.js +2 -1
  7. package/es/locale/lang/hy-AM.js +678 -0
  8. package/es/locale/lang/ja-JP.js +2 -1
  9. package/es/locale/lang/ko-KR.js +2 -1
  10. package/es/locale/lang/nb-NO.js +678 -0
  11. package/es/locale/lang/pt-BR.js +2 -1
  12. package/es/locale/lang/ru-RU.js +2 -1
  13. package/es/locale/lang/ug-CN.js +678 -0
  14. package/es/locale/lang/uk-UA.js +2 -1
  15. package/es/locale/lang/vi-VN.js +2 -1
  16. package/es/locale/lang/zh-CHT.js +2 -1
  17. package/es/locale/lang/zh-CN.js +2 -1
  18. package/es/style.css +1 -1
  19. package/es/table/module/edit/mixin.js +2 -2
  20. package/es/table/module/export/mixin.js +14 -8
  21. package/es/table/module/keyboard/mixin.js +2 -2
  22. package/es/table/src/body.js +15 -4
  23. package/es/table/src/methods.js +93 -13
  24. package/es/table/src/table.js +14 -6
  25. package/es/ui/index.js +1 -1
  26. package/es/ui/src/log.js +1 -1
  27. package/lib/index.umd.js +175 -45
  28. package/lib/index.umd.min.js +1 -1
  29. package/lib/locale/lang/ar-EG.js +684 -0
  30. package/lib/locale/lang/ar-EG.min.js +1 -0
  31. package/lib/locale/lang/de-DE.js +684 -0
  32. package/lib/locale/lang/de-DE.min.js +1 -0
  33. package/lib/locale/lang/en-US.js +2 -1
  34. package/lib/locale/lang/en-US.min.js +1 -1
  35. package/lib/locale/lang/en-US.umd.js +2 -1
  36. package/lib/locale/lang/es-ES.js +2 -1
  37. package/lib/locale/lang/es-ES.min.js +1 -1
  38. package/lib/locale/lang/es-ES.umd.js +2 -1
  39. package/lib/locale/lang/fr-FR.js +684 -0
  40. package/lib/locale/lang/fr-FR.min.js +1 -0
  41. package/lib/locale/lang/hu-HU.js +2 -1
  42. package/lib/locale/lang/hu-HU.min.js +1 -1
  43. package/lib/locale/lang/hu-HU.umd.js +2 -1
  44. package/lib/locale/lang/hy-AM.js +684 -0
  45. package/lib/locale/lang/hy-AM.min.js +1 -0
  46. package/lib/locale/lang/ja-JP.js +2 -1
  47. package/lib/locale/lang/ja-JP.min.js +1 -1
  48. package/lib/locale/lang/ja-JP.umd.js +2 -1
  49. package/lib/locale/lang/ko-KR.js +2 -1
  50. package/lib/locale/lang/ko-KR.min.js +1 -1
  51. package/lib/locale/lang/ko-KR.umd.js +2 -1
  52. package/lib/locale/lang/nb-NO.js +684 -0
  53. package/lib/locale/lang/nb-NO.min.js +1 -0
  54. package/lib/locale/lang/pt-BR.js +2 -1
  55. package/lib/locale/lang/pt-BR.min.js +1 -1
  56. package/lib/locale/lang/pt-BR.umd.js +2 -1
  57. package/lib/locale/lang/ru-RU.js +2 -1
  58. package/lib/locale/lang/ru-RU.min.js +1 -1
  59. package/lib/locale/lang/ru-RU.umd.js +2 -1
  60. package/lib/locale/lang/ug-CN.js +684 -0
  61. package/lib/locale/lang/ug-CN.min.js +1 -0
  62. package/lib/locale/lang/uk-UA.js +2 -1
  63. package/lib/locale/lang/uk-UA.min.js +1 -1
  64. package/lib/locale/lang/uk-UA.umd.js +2 -1
  65. package/lib/locale/lang/vi-VN.js +2 -1
  66. package/lib/locale/lang/vi-VN.min.js +1 -1
  67. package/lib/locale/lang/zh-CHT.js +2 -1
  68. package/lib/locale/lang/zh-CHT.min.js +1 -1
  69. package/lib/locale/lang/zh-CHT.umd.js +2 -1
  70. package/lib/locale/lang/zh-CN.js +2 -1
  71. package/lib/locale/lang/zh-CN.min.js +1 -1
  72. package/lib/locale/lang/zh-CN.umd.js +2 -1
  73. package/lib/style.css +1 -1
  74. package/lib/table/module/edit/mixin.js +2 -2
  75. package/lib/table/module/edit/mixin.min.js +1 -1
  76. package/lib/table/module/export/mixin.js +14 -8
  77. package/lib/table/module/export/mixin.min.js +1 -1
  78. package/lib/table/module/keyboard/mixin.js +2 -2
  79. package/lib/table/module/keyboard/mixin.min.js +1 -1
  80. package/lib/table/src/body.js +17 -4
  81. package/lib/table/src/body.min.js +1 -1
  82. package/lib/table/src/methods.js +120 -16
  83. package/lib/table/src/methods.min.js +1 -1
  84. package/lib/table/src/table.js +16 -10
  85. package/lib/table/src/table.min.js +1 -1
  86. package/lib/ui/index.js +1 -1
  87. package/lib/ui/index.min.js +1 -1
  88. package/lib/ui/src/log.js +1 -1
  89. package/lib/ui/src/log.min.js +1 -1
  90. package/package.json +2 -2
  91. package/packages/locale/lang/ar-EG.ts +678 -0
  92. package/packages/locale/lang/de-DE.ts +678 -0
  93. package/packages/locale/lang/en-US.ts +2 -1
  94. package/packages/locale/lang/es-ES.ts +2 -1
  95. package/packages/locale/lang/fr-FR.ts +678 -0
  96. package/packages/locale/lang/hu-HU.ts +2 -1
  97. package/packages/locale/lang/hy-AM.ts +678 -0
  98. package/packages/locale/lang/ja-JP.ts +2 -1
  99. package/packages/locale/lang/ko-KR.ts +2 -1
  100. package/packages/locale/lang/nb-NO.ts +678 -0
  101. package/packages/locale/lang/pt-BR.ts +2 -1
  102. package/packages/locale/lang/ru-RU.ts +2 -1
  103. package/packages/locale/lang/ug-CN.ts +678 -0
  104. package/packages/locale/lang/uk-UA.ts +2 -1
  105. package/packages/locale/lang/vi-VN.ts +2 -1
  106. package/packages/locale/lang/zh-CHT.ts +2 -1
  107. package/packages/locale/lang/zh-CN.ts +2 -1
  108. package/packages/table/module/edit/mixin.ts +2 -2
  109. package/packages/table/module/export/mixin.ts +14 -8
  110. package/packages/table/module/keyboard/mixin.ts +2 -2
  111. package/packages/table/src/body.ts +14 -4
  112. package/packages/table/src/methods.ts +97 -14
  113. package/packages/table/src/table.ts +14 -6
  114. /package/es/{iconfont.1732856009240.ttf → iconfont.1733108997206.ttf} +0 -0
  115. /package/es/{iconfont.1732856009240.woff → iconfont.1733108997206.woff} +0 -0
  116. /package/es/{iconfont.1732856009240.woff2 → iconfont.1733108997206.woff2} +0 -0
  117. /package/lib/{iconfont.1732856009240.ttf → iconfont.1733108997206.ttf} +0 -0
  118. /package/lib/{iconfont.1732856009240.woff → iconfont.1733108997206.woff} +0 -0
  119. /package/lib/{iconfont.1732856009240.woff2 → iconfont.1733108997206.woff2} +0 -0
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.handlePrint=handlePrint,exports.readLocalFile=readLocalFile,exports.saveLocalFile=saveLocalFile;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer}=_ui.VxeUI,htmlCellElem,fileForm,fileInput,printFrame,csvBOM="\ufeff",enterSymbol="\r\n";function createFrame(){var e=document.createElement("iframe");return e.className="vxe-table--print-frame",e}function hasTreeChildren(e,t){e=e.treeOpts,e=e.children||e.childrenField;return t[e]&&0<t[e].length}function getSeq(e,t,l,r,o,a){var i=e.seqOpts.seqMethod||o.seqMethod;return i?i({row:l,rowIndex:e.getRowIndex(l),$rowIndex:r,column:o,columnIndex:e.getColumnIndex(o),$columnIndex:a}):t}function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function getLabelData(c,p,u,e){let{isAllExpand:i,mode:m}=p,{treeConfig:t,treeOpts:l,radioOpts:h,checkboxOpts:f,columnOpts:g}=c;var r=l.children||l.childrenField;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){let o=[],a=new Map;return _xeUtils.default.eachTree(e,(e,n,t,s,l,r)=>{let d=e._row||e;e=l&&l._row?l._row:l;if(i||!e||a.has(e)&&c.isTreeExpandByRow(e)){l=hasTreeChildren(c,d);let i={_row:d,_level:r.length-1,_hasChild:l,_expand:l&&c.isTreeExpandByRow(d)};u.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod;if(o=(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod||r.cellExportMethod:o)||g.exportMethod)l=o({$table:c,row:d,column:e,options:p});else switch(e.type){case"seq":var a=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===m?a:getSeq(c,a,d,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(d)),i._checkboxLabel=f.labelField?_xeUtils.default.get(d,f.labelField):"",i._checkboxDisabled=f.checkMethod&&!f.checkMethod({row:d});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(d)),i._radioLabel=h.labelField?_xeUtils.default.get(d,h.labelField):"",i._radioDisabled=h.checkMethod&&!h.checkMethod({row:d});break;default:p.original?l=(0,_util.getCellValue)(d,e):(l=c.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=c.getCellElement(d,e))&&(l=a.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(l)}),a.set(d,1),o.push(Object.assign(i,d))}},{children:r}),o}return e.map((i,n)=>{let s={_row:i};return u.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod;if(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod||r.cellExportMethod:o)l=o({$table:c,row:i,column:e,options:p});else switch(e.type){case"seq":var a=n+1;l="all"===m?a:getSeq(c,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(i)),s._checkboxLabel=f.labelField?_xeUtils.default.get(i,f.labelField):"",s._checkboxDisabled=f.checkMethod&&!f.checkMethod({row:i});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(i)),s._radioLabel=h.labelField?_xeUtils.default.get(i,h.labelField):"",s._radioDisabled=h.checkMethod&&!h.checkMethod({row:i});break;default:p.original?l=(0,_util.getCellValue)(i,e):(l=c.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=c.getCellElement(i,e))&&(l=a.innerText.trim()))}s[e.id]=_xeUtils.default.toValueString(l)}),s})}function getExportData(e,t){let{columns:l,dataFilterMethod:r}=t,o=t.data;return getLabelData(e,t,l,o=r?o.filter((e,t)=>r({row:e,$rowIndex:t})):o)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var r=e.columnOpts,r=l.headerExportMethod||r.headerExportMethod;return r?r({column:l,options:t,$table:e}):(t.original?l.property:l.getTitle())||""}function getFooterCellValue(e,t,l,r){var o=e.columnOpts,a=r.editRender||r.cellRender;let i=r.footerExportMethod;i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||o.footerExportMethod;a=e.getVTColumnIndex(r);return i?i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:r,options:t}):_xeUtils.default.isArray(l)?_xeUtils.default.toValueString(l[a]):_xeUtils.default.get(l,r.field)}function getFooterData(e,t){let 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 toCsv(l,r,e,t){let o=csvBOM;return r.isHeader&&(o+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join(",")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),r.isFooter&&(t=l.footerTableData,getFooterData(r,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join(",")+enterSymbol})),o}function toTxt(l,r,e,t){let o="";return r.isHeader&&(o+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join("\t")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),r.isFooter&&(t=l.footerTableData,getFooterData(r,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join("\t")+enterSymbol})),o}function hasEllipsis(e,t,l,r){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?r:t;let o="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;return o=e.scrollXLoad||e.scrollYLoad?o||!0:o}function toHtml(d,n,e,t){let{id:c,border:l,treeConfig:r,treeOpts:a,isAllSelected:s,isIndeterminate:o,headerAlign:p,align:u,footerAlign:i,showOverflow:m,showHeaderOverflow:h,mergeList:f}=d,{print:g,isHeader:x,isFooter:v,isColgroup:b,isMerge:_,colgroups:y,original:$}=n,w="check-all";let E=[`<table class="${["vxe-table","border--"+toTableBorder(l),g?"is--print":"",x?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];x&&(E.push("<thead>"),b&&!$?y.forEach(e=>{E.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||p||u,l=hasEllipsis(d,t,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,n,t);let o=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,o+=e.renderWidth},{children:"childNodes"});var i=o-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${g?"":`style="width: ${i}px"`}><input type="checkbox" class="${w}" ${s?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${r}"><div ${g?"":`style="width: ${i}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`)}):E.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||p||u,l=hasEllipsis(d,e,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,n,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${w}" ${s?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`),E.push("</thead>")),t.length&&(E.push("<tbody>"),r?t.forEach(o=>{E.push("<tr>"+e.map(t=>{var e=t.align||u,l=hasEllipsis(d,t,"showOverflow",m)?["col--ellipsis"]:[],r=o[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return o._hasChild&&(e=`<i class="${o._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="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*a.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*a.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*a.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${r}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{E.push("<tr>"+e.map(e=>{var t=e.align||u,l=hasEllipsis(d,e,"showOverflow",m)?["col--ellipsis"]:[],r=s[e.id];let o=1,a=1;if(_&&f.length){var i=d.getVTRowIndex(s._row),n=d.getVTColumnIndex(e),i=(0,_util.mergeBodyMethod)(f,i,n);if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(o=n),1<i&&(a=i)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${c}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}" title="${r}"><div ${g?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}),E.push("</tbody>")),v&&(t=d.footerTableData,(t=getFooterData(n,t)).length)&&(E.push("<tfoot>"),t.forEach(o=>{E.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||i||u,l=hasEllipsis(d,e,"showOverflow",m)?["col--ellipsis"]:[],r=getFooterCellValue(d,n,o,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")}</tr>`)}),E.push("</tfoot>"));t=!s&&o?`<script>(function(){var a=document.querySelector(".${w}");if(a){a.indeterminate=true}})()</script>`:"";return E.push("</table>",t),g?E.join(""):(0,_util2.createHtmlPage)(n,E.join(""))}function toXML(l,r,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="${r.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return r.isHeader&&(o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,r,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>"}),r.isFooter&&(t=l.footerTableData,getFooterData(r,t).forEach(t=>{o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,r,t,e)}</Data></Cell>`).join("")}</Row>`})),o+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,r){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,r);case"txt":return toTxt(e,t,l,r);case"html":return toHtml(e,t,l,r);case"xml":return toXML(e,t,l,r)}return""}function saveLocalFile(e){var{filename:l,type:r,content:t}=e,l=l+"."+r;if(window.Blob){r=t instanceof Blob?t:(0,_util2.getExportBlobByContent)(_xeUtils.default.toValueString(t),e);if(navigator.msSaveBlob)navigator.msSaveBlob(r,l);else{let e=URL.createObjectURL(r),t=document.createElement("a");t.target="_blank",t.download=l,t.href=e,document.body.appendChild(t),t.click(),document.body.removeChild(t),requestAnimationFrame(()=>{t.parentNode&&t.parentNode.removeChild(t),URL.revokeObjectURL(e)})}return Promise.resolve()}return Promise.reject(new Error(getI18n("vxe.error.notExp")))}function downloadFile(e,t,l){var{filename:r,type:o,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:o,content:l,blob:a});saveLocalFile({filename:r,type:o,content:l}).then(()=>{!1!==t.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"}))})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,r){let{remote:o,columns:a,colgroups:i,exportMethod:n,afterExportMethod:t}=r;return new Promise(t=>{if(o){var e={options:r,$table:l,$grid:l.$xegrid};t(n?n(e):e)}else{let e=getExportData(l,r);t(l.preventEvent(null,"event.export",{options:r,columns:a,colgroups:i,datas:e},()=>downloadFile(l,r,getContent(l,r,a,e))))}}).then(e=>(clearColumnConvert(a),r.print||t&&t({status:!0,options:r,$table:l,$grid:l.$xegrid}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(a),r.print||t&&t({status:!1,options:r,$table:l,$grid:l.$xegrid});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function parseCsvAndTxt(e,t,a){t=t.split(enterSymbol);let i=[],n=[];if(t.length){let r={},o=Date.now();t.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=replaceTxtCell(t,r),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e,r))}),i.push(l)):n=e.map(e=>getTxtCellValue(e.trim(),r))}})}return{fields:n,rows:i}}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");let r=[],o=[];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=>{o.push(e.textContent)})}),(l=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{o[t]&&(l[o[t]]=e.textContent||"")}),r.push(l)}),{fields:o,rows:r}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet");let r=[],o=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),e=>{o.push(e.textContent)}),_xeUtils.default.arrayEach(t,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{o[t]&&(l[o[t]]=e.textContent)}),r.push(l)}})),{fields:o,rows:r}}function checkImportData(e,t){let l=[];return e.forEach(e=>{e=e.property;e&&l.push(e)}),t.some(e=>-1<l.indexOf(e))}function handleImport(l,e,r){let{tableFullColumn:t,_importResolve:o,_importReject:a}=l,i={fields:[],rows:[]};switch(r.type){case"csv":i=parseCsv(t,e);break;case"txt":i=parseTxt(t,e);break;case"html":i=parseHTML(t,e);break;case"xml":i=parseXML(t,e)}let{fields:n,rows:s}=i;checkImportData(t,n)?l.createData(s).then(e=>{let t;return"insert"!==r.mode&&"insertBottom"!==r.mode||(t=l.insertAt(e,-1)),t="insertTop"===r.mode?l.insert(e):l.reloadData(e),!1!==r.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[s.length]),status:"success"})),t.then(()=>{o&&o({status:!0})})}):!1!==r.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(o,a,i){var e=o.importOpts;let{importMethod:n,afterImportMethod:t}=i,{type:s,filename:d}=(0,_utils.parseFile)(a);return n||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),s)?new Promise((t,l)=>{let e=e=>{t(e),o._importResolve=null,o._importReject=null},r=e=>{l(e),o._importResolve=null,o._importReject=null};if(o._importResolve=e,o._importReject=r,window.FileReader){let t=Object.assign({mode:"insertTop"},i,{type:s,filename:d});t.remote?n?Promise.resolve(n({file:a,options:t,$table:o})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):o.preventEvent(null,"event.import",{file:a,options:t,columns:o.tableFullColumn},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[s]),r({status:!1})},e.onload=e=>{handleImport(o,e.target.result,t)},e.readAsText(a,t.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:o})}).catch(e=>(t&&t({status:!1,options:i,$table:o}),Promise.reject(e))):(!1!==i.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[s]),status:"error"})),Promise.reject({status:!1}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function readLocalFile(s={}){return fileForm||(fileForm=document.createElement("form"),fileInput=document.createElement("input"),fileForm.className="vxe-table--file-form",fileInput.name="file",fileInput.type="file",fileForm.appendChild(fileInput),document.body.appendChild(fileForm)),new Promise((o,a)=>{let i=s.types||[],n=!i.length||i.some(e=>"*"===e);fileInput.multiple=!!s.multiple,fileInput.accept=n?"":"."+i.join(", ."),fileInput.onchange=e=>{var t=e.target.files,e=t[0];let l;if(!n)for(let e=0;e<t.length;e++){var r=(0,_utils.parseFile)(t[e]).type;if(!_xeUtils.default.includes(i,r)){l=r;break}}l?(!1!==s.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[l]),status:"error"})),a({status:!1,files:t,file:e})):o({status:!0,files:t,file:e})},fileForm.reset(),fileInput.click()})}function removePrintFrame(){if(printFrame){if(printFrame.parentNode){try{printFrame.contentDocument.write("")}catch(e){}printFrame.parentNode.removeChild(printFrame)}printFrame=null}}function appendPrintFrame(){printFrame.parentNode||document.body.appendChild(printFrame)}function afterPrintEvent(){requestAnimationFrame(removePrintFrame)}function handlePrint(e,t,l){var r=t.beforePrintMethod,r=(r&&(l=r({content:l,options:t,$table:e})||""),l=(0,_util2.createHtmlPage)(t,l),(0,_util2.getExportBlobByContent)(l,t));_dom.browse.msie?(removePrintFrame(),printFrame=createFrame(),appendPrintFrame(),printFrame.contentDocument.write(l),printFrame.contentDocument.execCommand("print")):(printFrame||((printFrame=createFrame()).onload=e=>{e.target.src&&(e.target.contentWindow.onafterprint=afterPrintEvent,e.target.contentWindow.print())}),appendPrintFrame(),printFrame.src=URL.createObjectURL(r))}function handleExportAndPrint(e,t,l){let{$xegrid:r,initStore:o,customOpts:a,collectColumn:i,footerTableData:n,treeConfig:s,mergeList:d,isGroup:c,exportParams:p,exportOpts:u}=e;var m=r?r.proxyOpts:{},h=e.getCheckboxRecords(),f=!!n.length,g=s,x=!g&&d.length,m=Object.assign({message:!0,isHeader:!0,current:"current",modes:["current","selected"].concat(m.ajax&&m.ajax.queryAll?["all"]:[])},t),t=m.types||_xeUtils.default.keys(u._typeMaps),v=m.modes||[];let b=a.checkMethod;var _=i.slice(0);let y=m.columns;t=t.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),v=v.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});return _xeUtils.default.eachTree(_,(r,e,t,l,o)=>{(r.children&&r.children.length||defaultFilterExportColumn(r))&&(r.checked=y?y.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?r===e:_xeUtils.default.isString(e)?r.field===e:(t=e.id||e.colId,l=e.type,e=e.property||e.field,t?r.id===t:e&&l?r.property===e&&r.type===l:e?r.property===e:!!l&&r.type===l)}):r.visible,r.halfChecked=!1,r.disabled=o&&o.disabled||!!b&&!b({column:r}))}),Object.assign(e.exportStore,{columns:_,typeList:t,modeList:v,hasFooter:f,hasMerge:x,hasTree:g,isPrint:l,hasColgroup:c,visible:!0}),Object.assign(p,{mode:h.length?"selected":"current"},m),v.some(e=>e.value===p.mode)||(p.mode=v[0].value),t.some(e=>e.value===p.type)||(p.type=t[0].value),o.export=!0,e.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,r=(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=>{r(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,r(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let{$xegrid:i,isGroup:t,tableGroupColumn:l,tableFullColumn:a,afterFullData:r,treeConfig:o,treeOpts:n,exportOpts:s}=this,d=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,isMerge:!1,isAllExpand:!1,download:!0,type:"csv",mode:"current"},s,{print:!1},e);var{type:e,mode:c,columns:p,original:u,beforeExportMethod:m}=d;let h=[];p=p&&p.length?p:null;let f=d.columnFilterMethod,g=(p||(f=f||(u?({column:e})=>e.property:({column:e})=>defaultFilterExportColumn(e))),h=p?(d._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(p,e=>{let r;if(e){if((0,_util.isColumnInfo)(e))r=e;else if(_xeUtils.default.isString(e))r=this.getColumnByField(e);else{var o=e.id||e.colId;let t=e.type,l=e.property||e.field;o?r=this.getColumnById(o):l&&t?r=a.find(e=>e.property===l&&e.type===t):l?r=this.getColumnByField(l):t&&(r=a.find(e=>e.type===t))}return r||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!f||f({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(t?l:a,(e,t)=>e.visible&&(!f||f({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(h,e=>{e.children&&e.children.length||g.push(e)},{children:"childNodes"}),d.columns=g,d.colgroups=convertToRows(h),d.filename||(d.filename=getI18n(d.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),d.sheetName||(d.sheetName=document.title),!d.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(d.print||m&&m({options:d,$table:this,$grid:i}),!d.data)if(d.data=[],"selected"===c){let t=this.getCheckboxRecords();-1<["html","pdf"].indexOf(e)&&o?d.data=_xeUtils.default.searchTree(this.getTableData().fullData,e=>-1<t.indexOf(e),Object.assign({},n,{data:"_row"})):d.data=t}else if("all"===c){if("development"!==process.env.NODE_ENV||i||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),i&&!d.remote){let{beforeQueryAll:e,afterQueryAll:l,ajax:t={},props:r={}}=i.proxyOpts;u=t.queryAll;let o=t.queryAllSuccess,a=t.queryAllError;if("development"!==process.env.NODE_ENV||u||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),u){let t={$table:this,$grid:i,sort:i.sortData,filters:i.filterData,form:i.formData,target:u,options:d};return Promise.resolve((e||u)(t)).then(e=>(d.data=(r.list?_xeUtils.default.get(e,r.list):e)||[],l&&l(t),o&&o(Object.assign(Object.assign({},t),{response:e})),handleExport(this,d))).catch(e=>{a&&a(Object.assign(Object.assign({},t),{response:e}))})}}}else"current"===c&&(d.data=r);return handleExport(this,d)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;return l&&l({options:t,$table:this}),handleFileImport(this,e,t)},_importData(e){var t=this.importOpts;let l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:r,afterImportMethod:o}=l;return r&&r({options:l,$table:this}),readLocalFile(l).catch(e=>(o&&o({status:!1,options:l,$table:this}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(this,e,l)})},_saveFile(e){return saveLocalFile(e)},_readFile(e){return readLocalFile(e)},_print(e){let t=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});return t.sheetName||(t.sheetName=document.title),new Promise(e=>{t.content?e(handlePrint(this,t,t.content)):e(this.exportData(t).then(({content:e})=>handlePrint(this,t,e)))})},_getPrintHtml(e){var t=this.printOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var t=this.importOpts,e=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(t._typeMaps),modes:["insertTop","covering"]},e,t),t=e.types||[],l=e.modes||[];!this.getTreeStatus()?(this.importConfig||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=t.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=l.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(this.importStore,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(this.importParams,e),l.some(e=>e.value===this.importParams.mode)||(this.importParams.mode=l[0].value),this.initStore.import=!0):e.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.exportOpts;return"development"!==process.env.NODE_ENV||this.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,Object.assign({},t,e))},_closePrint:handleCloseExport,_openPrint(e){var t=this.printOpts;return"development"!==process.env.NODE_ENV||this.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,Object.assign({},t,e),!0)}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.handlePrint=handlePrint,exports.readLocalFile=readLocalFile,exports.saveLocalFile=saveLocalFile;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer}=_ui.VxeUI,htmlCellElem,fileForm,fileInput,printFrame,csvBOM="\ufeff",enterSymbol="\r\n";function createFrame(){var e=document.createElement("iframe");return e.className="vxe-table--print-frame",e}function hasTreeChildren(e,t){e=e.treeOpts,e=e.children||e.childrenField;return t[e]&&0<t[e].length}function getSeq(e,t,l,r,o,a){var i=e.seqOpts.seqMethod||o.seqMethod;return i?i({row:l,rowIndex:e.getRowIndex(l),$rowIndex:r,column:o,columnIndex:e.getColumnIndex(o),$columnIndex:a}):t}function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function getBodyLabelData(c,p,u,e){let{isAllExpand:i,mode:m}=p,{treeConfig:t,treeOpts:l,radioOpts:h,checkboxOpts:x,columnOpts:g}=c;var r=l.children||l.childrenField;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){let o=[],a=new Map;return _xeUtils.default.eachTree(e,(e,n,t,s,l,r)=>{let d=e._row||e;e=l&&l._row?l._row:l;if(i||!e||a.has(e)&&c.isTreeExpandByRow(e)){l=hasTreeChildren(c,d);let i={_row:d,_level:r.length-1,_hasChild:l,_expand:l&&c.isTreeExpandByRow(d)};u.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod;if(o=(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod||r.cellExportMethod:o)||g.exportMethod)l=o({$table:c,row:d,column:e,options:p});else switch(e.type){case"seq":var a=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===m?a:getSeq(c,a,d,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(d)),i._checkboxLabel=x.labelField?_xeUtils.default.get(d,x.labelField):"",i._checkboxDisabled=x.checkMethod&&!x.checkMethod({row:d});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(d)),i._radioLabel=h.labelField?_xeUtils.default.get(d,h.labelField):"",i._radioDisabled=h.checkMethod&&!h.checkMethod({row:d});break;default:p.original?l=(0,_util.getCellValue)(d,e):(l=c.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=c.getCellElement(d,e))&&(l=a.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(l)}),a.set(d,1),o.push(Object.assign(i,d))}},{children:r}),o}return e.map((i,n)=>{let s={_row:i};return u.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod;if(o=(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod||r.cellExportMethod:o)||g.exportMethod)l=o({$table:c,row:i,column:e,options:p});else switch(e.type){case"seq":var a=n+1;l="all"===m?a:getSeq(c,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(i)),s._checkboxLabel=x.labelField?_xeUtils.default.get(i,x.labelField):"",s._checkboxDisabled=x.checkMethod&&!x.checkMethod({row:i});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(i)),s._radioLabel=h.labelField?_xeUtils.default.get(i,h.labelField):"",s._radioDisabled=h.checkMethod&&!h.checkMethod({row:i});break;default:p.original?l=(0,_util.getCellValue)(i,e):(l=c.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=c.getCellElement(i,e))&&(l=a.innerText.trim()))}s[e.id]=_xeUtils.default.toValueString(l)}),s})}function getExportData(e,t){let{columns:l,dataFilterMethod:r}=t,o=t.data;return getBodyLabelData(e,t,l,o=r?o.filter((e,t)=>r({row:e,$rowIndex:t})):o)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var r=e.columnOpts,r=l.headerExportMethod||r.headerExportMethod;return r?r({column:l,options:t,$table:e}):(t.original?l.property:l.getTitle())||""}function getFooterCellValue(e,t,l,r){var o=e.columnOpts,a=r.editRender||r.cellRender;let i=r.footerExportMethod;i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||o.footerExportMethod;a=e.getVTColumnIndex(r);return i?i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:r,options:t}):_xeUtils.default.isArray(l)?_xeUtils.default.toValueString(l[a]):_xeUtils.default.get(l,r.field)}function getFooterData(e,t){let 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 toCsv(l,r,e,t){let o=csvBOM;return r.isHeader&&(o+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join(",")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),r.isFooter&&(t=l.footerTableData,getFooterData(r,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join(",")+enterSymbol})),o}function toTxt(l,r,e,t){let o="";return r.isHeader&&(o+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join("\t")+enterSymbol),t.forEach(t=>{o+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),r.isFooter&&(t=l.footerTableData,getFooterData(r,t).forEach(t=>{o+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join("\t")+enterSymbol})),o}function hasEllipsis(e,t,l,r){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?r:t;let o="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;return o=e.scrollXLoad||e.scrollYLoad?o||!0:o}function toHtml(d,n,e,t){let{id:c,border:l,treeConfig:r,treeOpts:a,isAllSelected:s,isIndeterminate:o,headerAlign:p,align:u,footerAlign:i,showOverflow:m,showHeaderOverflow:h,mergeList:x}=d,{print:g,isHeader:f,isFooter:v,isColgroup:b,isMerge:_,colgroups:y,original:$}=n,w="check-all";let E=[`<table class="${["vxe-table","border--"+toTableBorder(l),g?"is--print":"",f?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];f&&(E.push("<thead>"),b&&!$?y.forEach(e=>{E.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||p||u,l=hasEllipsis(d,t,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,n,t);let o=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,o+=e.renderWidth},{children:"childNodes"});var i=o-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${g?"":`style="width: ${i}px"`}><input type="checkbox" class="${w}" ${s?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${r}"><div ${g?"":`style="width: ${i}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`)}):E.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||p||u,l=hasEllipsis(d,e,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,n,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${w}" ${s?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`),E.push("</thead>")),t.length&&(E.push("<tbody>"),r?t.forEach(o=>{E.push("<tr>"+e.map(t=>{var e=t.align||u,l=hasEllipsis(d,t,"showOverflow",m)?["col--ellipsis"]:[],r=o[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return o._hasChild&&(e=`<i class="${o._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="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*a.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*a.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*a.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${r}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${g?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{E.push("<tr>"+e.map(e=>{var t=e.align||u,l=hasEllipsis(d,e,"showOverflow",m)?["col--ellipsis"]:[],r=s[e.id];let o=1,a=1;if(_&&x.length){var i=d.getVTRowIndex(s._row),n=d.getVTColumnIndex(e),i=(0,_util.mergeBodyMethod)(x,i,n);if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(o=n),1<i&&(a=i)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${c}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}"><div ${g?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${o}" colspan="${a}" title="${r}"><div ${g?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}),E.push("</tbody>")),v&&(t=d.footerTableData,(t=getFooterData(n,t)).length)&&(E.push("<tfoot>"),t.forEach(o=>{E.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||i||u,l=hasEllipsis(d,e,"showOverflow",m)?["col--ellipsis"]:[],r=getFooterCellValue(d,n,o,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${r}"><div ${g?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")}</tr>`)}),E.push("</tfoot>"));t=!s&&o?`<script>(function(){var a=document.querySelector(".${w}");if(a){a.indeterminate=true}})()</script>`:"";return E.push("</table>",t),g?E.join(""):(0,_util2.createHtmlPage)(n,E.join(""))}function toXML(l,r,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="${r.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return r.isHeader&&(o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,r,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>"}),r.isFooter&&(t=l.footerTableData,getFooterData(r,t).forEach(t=>{o+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,r,t,e)}</Data></Cell>`).join("")}</Row>`})),o+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,r){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,r);case"txt":return toTxt(e,t,l,r);case"html":return toHtml(e,t,l,r);case"xml":return toXML(e,t,l,r)}return""}function saveLocalFile(e){var{filename:l,type:r,content:t}=e,l=l+"."+r;if(window.Blob){r=t instanceof Blob?t:(0,_util2.getExportBlobByContent)(_xeUtils.default.toValueString(t),e);if(navigator.msSaveBlob)navigator.msSaveBlob(r,l);else{let e=URL.createObjectURL(r),t=document.createElement("a");t.target="_blank",t.download=l,t.href=e,document.body.appendChild(t),t.click(),document.body.removeChild(t),requestAnimationFrame(()=>{t.parentNode&&t.parentNode.removeChild(t),URL.revokeObjectURL(e)})}return Promise.resolve()}return Promise.reject(new Error(getI18n("vxe.error.notExp")))}function downloadFile(e,t,l){var{filename:r,type:o,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:o,content:l,blob:a});saveLocalFile({filename:r,type:o,content:l}).then(()=>{!1!==t.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"}))})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,r){let{remote:o,columns:a,colgroups:i,exportMethod:n,afterExportMethod:t}=r;return new Promise(t=>{if(o){var e={options:r,$table:l,$grid:l.$xegrid};t(n?n(e):e)}else{let e=getExportData(l,r);t(l.preventEvent(null,"event.export",{options:r,columns:a,colgroups:i,datas:e},()=>downloadFile(l,r,getContent(l,r,a,e))))}}).then(e=>(clearColumnConvert(a),r.print||t&&t({status:!0,options:r,$table:l,$grid:l.$xegrid}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(a),r.print||t&&t({status:!1,options:r,$table:l,$grid:l.$xegrid});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function parseCsvAndTxt(e,t,a){t=t.split(enterSymbol);let i=[],n=[];if(t.length){let r={},o=Date.now();t.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=replaceTxtCell(t,r),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e,r))}),i.push(l)):n=e.map(e=>getTxtCellValue(e.trim(),r))}})}return{fields:n,rows:i}}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");let r=[],o=[];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=>{o.push(e.textContent)})}),(l=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{o[t]&&(l[o[t]]=e.textContent||"")}),r.push(l)}),{fields:o,rows:r}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet");let r=[],o=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),e=>{o.push(e.textContent)}),_xeUtils.default.arrayEach(t,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{o[t]&&(l[o[t]]=e.textContent)}),r.push(l)}})),{fields:o,rows:r}}function checkImportData(e,t){let l=[];return e.forEach(e=>{e=e.property;e&&l.push(e)}),t.some(e=>-1<l.indexOf(e))}function handleImport(l,e,r){let{tableFullColumn:t,_importResolve:o,_importReject:a}=l,i={fields:[],rows:[]};switch(r.type){case"csv":i=parseCsv(t,e);break;case"txt":i=parseTxt(t,e);break;case"html":i=parseHTML(t,e);break;case"xml":i=parseXML(t,e)}let{fields:n,rows:s}=i;checkImportData(t,n)?l.createData(s).then(e=>{let t;return"insert"!==r.mode&&"insertBottom"!==r.mode||(t=l.insertAt(e,-1)),t="insertTop"===r.mode?l.insert(e):l.reloadData(e),!1!==r.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[s.length]),status:"success"})),t.then(()=>{o&&o({status:!0})})}):!1!==r.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(o,a,i){var e=o.importOpts;let{importMethod:n,afterImportMethod:t}=i,{type:s,filename:d}=(0,_utils.parseFile)(a);return n||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),s)?new Promise((t,l)=>{let e=e=>{t(e),o._importResolve=null,o._importReject=null},r=e=>{l(e),o._importResolve=null,o._importReject=null};if(o._importResolve=e,o._importReject=r,window.FileReader){let t=Object.assign({mode:"insertTop"},i,{type:s,filename:d});t.remote?n?Promise.resolve(n({file:a,options:t,$table:o})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):o.preventEvent(null,"event.import",{file:a,options:t,columns:o.tableFullColumn},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[s]),r({status:!1})},e.onload=e=>{handleImport(o,e.target.result,t)},e.readAsText(a,t.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:o})}).catch(e=>(t&&t({status:!1,options:i,$table:o}),Promise.reject(e))):(!1!==i.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[s]),status:"error"})),Promise.reject({status:!1}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function readLocalFile(s={}){return fileForm||(fileForm=document.createElement("form"),fileInput=document.createElement("input"),fileForm.className="vxe-table--file-form",fileInput.name="file",fileInput.type="file",fileForm.appendChild(fileInput),document.body.appendChild(fileForm)),new Promise((o,a)=>{let i=s.types||[],n=!i.length||i.some(e=>"*"===e);fileInput.multiple=!!s.multiple,fileInput.accept=n?"":"."+i.join(", ."),fileInput.onchange=e=>{var t=e.target.files,e=t[0];let l;if(!n)for(let e=0;e<t.length;e++){var r=(0,_utils.parseFile)(t[e]).type;if(!_xeUtils.default.includes(i,r)){l=r;break}}l?(!1!==s.message&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[l]),status:"error"})),a({status:!1,files:t,file:e})):o({status:!0,files:t,file:e})},fileForm.reset(),fileInput.click()})}function removePrintFrame(){if(printFrame){if(printFrame.parentNode){try{printFrame.contentDocument.write("")}catch(e){}printFrame.parentNode.removeChild(printFrame)}printFrame=null}}function appendPrintFrame(){printFrame.parentNode||document.body.appendChild(printFrame)}function afterPrintEvent(){requestAnimationFrame(removePrintFrame)}function handlePrint(e,t,l){var r=t.beforePrintMethod,r=(r&&(l=r({content:l,options:t,$table:e})||""),l=(0,_util2.createHtmlPage)(t,l),(0,_util2.getExportBlobByContent)(l,t));_dom.browse.msie?(removePrintFrame(),printFrame=createFrame(),appendPrintFrame(),printFrame.contentDocument.write(l),printFrame.contentDocument.execCommand("print")):(printFrame||((printFrame=createFrame()).onload=e=>{e.target.src&&(e.target.contentWindow.onafterprint=afterPrintEvent,e.target.contentWindow.print())}),appendPrintFrame(),printFrame.src=URL.createObjectURL(r))}function handleExportAndPrint(e,t,l){let{$xegrid:r,initStore:o,customOpts:a,collectColumn:i,footerTableData:n,treeConfig:s,mergeList:d,isGroup:c,exportParams:p,exportOpts:u}=e;var m=r?r.proxyOpts:{},h=e.getCheckboxRecords(),x=!!n.length,g=s,f=!g&&d.length,m=Object.assign({message:!0,isHeader:!0,current:"current",modes:["current","selected"].concat(m.ajax&&m.ajax.queryAll?["all"]:[])},t),t=m.types||_xeUtils.default.keys(u._typeMaps),v=m.modes||[];let b=a.checkMethod;var _=i.slice(0);let y=m.columns;t=t.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),v=v.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});return _xeUtils.default.eachTree(_,(r,e,t,l,o)=>{(r.children&&r.children.length||defaultFilterExportColumn(r))&&(r.checked=y?y.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?r===e:_xeUtils.default.isString(e)?r.field===e:(t=e.id||e.colId,l=e.type,e=e.property||e.field,t?r.id===t:e&&l?r.property===e&&r.type===l:e?r.property===e:!!l&&r.type===l)}):r.visible,r.halfChecked=!1,r.disabled=o&&o.disabled||!!b&&!b({column:r}))}),Object.assign(e.exportStore,{columns:_,typeList:t,modeList:v,hasFooter:x,hasMerge:f,hasTree:g,isPrint:l,hasColgroup:c,visible:!0}),Object.assign(p,{mode:h.length?"selected":"current"},m),v.some(e=>e.value===p.mode)||(p.mode=v[0].value),t.some(e=>e.value===p.type)||(p.type=t[0].value),o.export=!0,e.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,r=(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=>{r(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,r(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let{$xegrid:i,isGroup:t,tableGroupColumn:l,tableFullColumn:a,afterFullData:r,treeConfig:o,treeOpts:n,exportOpts:s}=this,d=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,isMerge:!1,isAllExpand:!1,download:!0,type:"csv",mode:"current"},s,{print:!1},e);var{type:e,mode:c,columns:p,original:u,beforeExportMethod:m}=d;let h=[];p=p&&p.length?p:null;let x=d.columnFilterMethod,g=(p||(x=x||(u?({column:e})=>e.property:({column:e})=>defaultFilterExportColumn(e))),h=p?(d._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(p,e=>{let r;if(e){if((0,_util.isColumnInfo)(e))r=e;else if(_xeUtils.default.isString(e))r=this.getColumnByField(e);else{var o=e.id||e.colId;let t=e.type,l=e.property||e.field;o?r=this.getColumnById(o):l&&t?r=a.find(e=>e.property===l&&e.type===t):l?r=this.getColumnByField(l):t&&(r=a.find(e=>e.type===t))}return r||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!x||x({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(t?l:a,(e,t)=>e.visible&&(!x||x({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(h,e=>{e.children&&e.children.length||g.push(e)},{children:"childNodes"}),d.columns=g,d.colgroups=convertToRows(h),d.filename||(d.filename=getI18n(d.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),d.sheetName||(d.sheetName=document.title),!d.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(s._typeMaps),e))return(0,_log.errLog)("vxe.error.notType",[e]),"development"===process.env.NODE_ENV&&["xlsx","pdf"].includes(e)&&(0,_log.warnLog)("vxe.error.reqPlugin",[4,"plugin-export-xlsx"]),Promise.reject({status:!1});if(d.print||m&&m({options:d,$table:this,$grid:i}),!d.data)if(d.data=[],"selected"===c){let t=this.getCheckboxRecords();-1<["html","pdf"].indexOf(e)&&o?d.data=_xeUtils.default.searchTree(this.getTableData().fullData,e=>-1<t.indexOf(e),Object.assign({},n,{data:"_row"})):d.data=t}else if("all"===c){if("development"!==process.env.NODE_ENV||i||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),i&&!d.remote){let{beforeQueryAll:e,afterQueryAll:l,ajax:t={},props:r={}}=i.proxyOpts;u=t.queryAll;let o=t.queryAllSuccess,a=t.queryAllError;if("development"!==process.env.NODE_ENV||u||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),u){let t={$table:this,$grid:i,sort:i.sortData,filters:i.filterData,form:i.formData,target:u,options:d};return Promise.resolve((e||u)(t)).then(e=>(d.data=(r.list?_xeUtils.default.get(e,r.list):e)||[],l&&l(t),o&&o(Object.assign(Object.assign({},t),{response:e})),handleExport(this,d))).catch(e=>{a&&a(Object.assign(Object.assign({},t),{response:e}))})}}}else"current"===c&&(d.data=r);return handleExport(this,d)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;return l&&l({options:t,$table:this}),handleFileImport(this,e,t)},_importData(e){var t=this.importOpts;let l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:r,afterImportMethod:o}=l;return r&&r({options:l,$table:this}),readLocalFile(l).catch(e=>(o&&o({status:!1,options:l,$table:this}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(this,e,l)})},_saveFile(e){return saveLocalFile(e)},_readFile(e){return readLocalFile(e)},_print(e){let t=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});return t.sheetName||(t.sheetName=document.title),new Promise(e=>{t.content?e(handlePrint(this,t,t.content)):e(this.exportData(t).then(({content:e})=>handlePrint(this,t,e)))})},_getPrintHtml(e){var t=this.printOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var t=this.importOpts,e=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(t._typeMaps),modes:["insertTop","covering"]},e,t),t=e.types||[],l=e.modes||[];!this.getTreeStatus()?(this.importConfig||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=t.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=l.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(this.importStore,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(this.importParams,e),l.some(e=>e.value===this.importParams.mode)||(this.importParams.mode=l[0].value),this.initStore.import=!0):e.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.exportOpts;return"development"!==process.env.NODE_ENV||this.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,Object.assign({},t,e))},_closePrint:handleCloseExport,_openPrint(e){var t=this.printOpts;return"development"!==process.env.NODE_ENV||this.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,Object.assign({},t,e),!0)}}};
@@ -257,8 +257,8 @@ var _default = exports.default = {
257
257
  mouseConfig,
258
258
  mouseOpts
259
259
  } = this;
260
- if (mouseConfig && mouseOpts.area && this.handleCellAreaEvent) {
261
- return this.handleCellAreaEvent(evnt, params);
260
+ if (mouseConfig && mouseOpts.area && this.handleMousedownCellAreaEvent) {
261
+ return this.handleMousedownCellAreaEvent(evnt, params);
262
262
  } else {
263
263
  if (checkboxConfig && checkboxOpts.range) {
264
264
  this.handleCheckboxRangeEvent(evnt, params);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getTargetOffset(e,t){let l=0,o=0;var n,r,s=!_dom.browse.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(s&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,s&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));return{offsetTop:l,offsetLeft:o}}function getCheckboxRangeRows(e,t,l,o,n,r,s){let i=0,a=[],c=0;var d=0<s,h=e.scrollYLoad,{afterFullData:u,scrollYStore:g}=e;if(h){c=d?r+s:n.height-r+Math.abs(s);h=e.getVTRowIndex(l.row);a=d?u.slice(h,h+Math.ceil(c/g.rowHeight)):u.slice(h-Math.floor(c/g.rowHeight),h+1)}else{c=d?t.clientY-n.y:n.y-t.clientY+n.height;for(var f=d?"next":"previous";o&&i<c;){var m=e.getRowNode(o);m&&(a.push(m.item),i+=o.offsetHeight,o=o[f+"ElementSibling"])}}return a}var _default=exports.default={methods:{moveTabSelected(e,t,l){var{afterFullData:o,visibleColumn:n,editConfig:r,editOpts:s}=this;let i,a,c,d=Object.assign({},e);var e=this.getVTRowIndex(d.row),h=this.getVTColumnIndex(d.column),t=(l.preventDefault(),t?h<=0?0<e&&(a=e-1,i=o[a],c=n.length-1):c=h-1:h>=n.length-1?e<o.length-1&&(a=e+1,i=o[a],c=0):c=h+1,n[c]);t&&(i?(d.rowIndex=a,d.row=i):d.rowIndex=e,d.columnIndex=c,d.column=t,d.cell=this.getCellElement(d.row,d.column),r?"click"!==s.trigger&&"dblclick"!==s.trigger||("row"===s.mode?this.handleEdit(d,l):this.scrollToRow(d.row,d.column).then(()=>this.handleSelected(d,l))):this.scrollToRow(d.row,d.column).then(()=>this.handleSelected(d,l)))},moveCurrentRow(e,t,l){let{currentRow:o,treeConfig:n,treeOpts:r,afterFullData:s}=this;var i,a=r.children||r.childrenField;let c;if(l.preventDefault(),o?n?({index:a,items:i}=_xeUtils.default.findTree(s,e=>e===o,{children:a}),e&&0<a?c=i[a-1]:t&&a<i.length-1&&(c=i[a+1])):(i=this.getVTRowIndex(o),e&&0<i?c=s[i-1]:t&&i<s.length-1&&(c=s[i+1])):c=s[0],c){let e={$table:this,row:c};this.scrollToRow(c).then(()=>this.triggerCurrentRowEvent(l,e))}},moveSelected(e,t,l,o,n,r){var{afterFullData:s,visibleColumn:i}=this;let a=Object.assign({},e);var e=this.getVTRowIndex(a.row),c=this.getVTColumnIndex(a.column);r.preventDefault(),l&&0<e?(a.rowIndex=e-1,a.row=s[a.rowIndex]):n&&e<s.length-1?(a.rowIndex=e+1,a.row=s[a.rowIndex]):t&&c?(a.columnIndex=c-1,a.column=i[a.columnIndex]):o&&c<i.length-1&&(a.columnIndex=c+1,a.column=i[a.columnIndex]),this.scrollToRow(a.row,a.column).then(()=>{a.cell=this.getCellElement(a.row,a.column),this.handleSelected(a,r)})},triggerHeaderCellMousedownEvent(e,t){var l,{mouseConfig:o,mouseOpts:n}=this;o&&n.area&&this.handleHeaderCellAreaEvent&&(o=e.currentTarget,n=(0,_dom.getEventTargetNode)(e,o,"vxe-cell--sort").flag,l=(0,_dom.getEventTargetNode)(e,o,"vxe-cell--filter").flag,this.handleHeaderCellAreaEvent(e,Object.assign({cell:o,triggerSort:n,triggerFilter:l},t))),this.focus(),this.closeMenu()},triggerCellMousedownEvent(e,t){var l=e.currentTarget;t.cell=l,this.handleCellMousedownEvent(e,t),this.focus(),this.closeFilter(),this.closeMenu()},handleCellMousedownEvent(e,t){var{editConfig:l,editOpts:o,handleSelected:n,checkboxConfig:r,checkboxOpts:s,mouseConfig:i,mouseOpts:a}=this;if(i&&a.area&&this.handleCellAreaEvent)return this.handleCellAreaEvent(e,t);r&&s.range&&this.handleCheckboxRangeEvent(e,t),i&&a.selected&&(l&&"cell"!==o.mode||n(t,e))},handleCheckboxRangeEvent(n,y){var{column:r,cell:I}=y;if("checkbox"===r.type){let{$el:t,elemStore:e}=this,i=n.clientX,a=n.clientY,c=e[`${r.fixed||"main"}-body-wrapper`]||e["main-body-wrapper"],d=c.querySelector(".vxe-table--checkbox-range"),l=document.onmousemove,o=document.onmouseup,h=I.parentNode,u=this.getCheckboxRecords(),g=[],f=1;r=getTargetOffset(n.target,c);let m=r.offsetTop+n.offsetY,v=r.offsetLeft+n.offsetX,x=c.scrollTop,s=h.offsetHeight,p=h.getBoundingClientRect(),w=a-p.y,b=null,C=!1,T=1,R=(e,t)=>{this.emitEvent("checkbox-range-"+e,{records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords()},t)},_=e=>{var{clientX:t,clientY:l}=e,t=t-i,l=l-a+(c.scrollTop-x);let o=Math.abs(l),n=Math.abs(t),r=m,s=v;l<f?(r+=l)<f&&(r=f,o=m):o=Math.min(o,c.scrollHeight-m-f),t<f?(s+=t,n>v&&(s=f,n=v)):n=Math.min(n,c.clientWidth-v-f),d.style.height=o+"px",d.style.width=n+"px",d.style.left=s+"px",d.style.top=r+"px",d.style.display="block";t=getCheckboxRangeRows(this,e,y,h,p,w,l<f?-o:o);10<o&&t.length!==g.length&&(g=t,e.ctrlKey?t.forEach(e=>{this.handleSelectRow({row:e},-1===u.indexOf(e))}):(this.setAllCheckboxRow(!1),this.handleCheckedCheckboxRow(t,!0,!1)),R("change",e))},k=()=>{clearTimeout(b),b=null},E=r=>{k(),b=setTimeout(()=>{var e,t,l,o,n;b&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=c,n=Math.ceil(50*T/s),C?t+l<o?(this.scrollTo(e,t+n),E(r),_(r)):k():t?(this.scrollTo(e,t-n),E(r),_(r)):k())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(c).boundingTop;t<l?(C=!1,T=l-t,b||E(e)):t>l+c.clientHeight?(C=!0,T=t-l-c.clientHeight,b||E(e)):b&&k(),_(e)},document.onmouseup=e=>{k(),(0,_dom.removeClass)(t,"drag--range"),d.removeAttribute("style"),document.onmousemove=l,document.onmouseup=o,R("end",e)},R("start",n)}}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getTargetOffset(e,t){let o=0,l=0;var n,r,s=!_dom.browse.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(s&&(n=getComputedStyle(e),o-=_xeUtils.default.toNumber(n.paddingTop),l-=_xeUtils.default.toNumber(n.paddingLeft));e&&e!==t;)o+=e.offsetTop,l+=e.offsetLeft,e=e.offsetParent,s&&(r=getComputedStyle(e),o-=_xeUtils.default.toNumber(r.paddingTop),l-=_xeUtils.default.toNumber(r.paddingLeft));return{offsetTop:o,offsetLeft:l}}function getCheckboxRangeRows(e,t,o,l,n,r,s){let i=0,a=[],d=0;var c=0<s,h=e.scrollYLoad,{afterFullData:u,scrollYStore:g}=e;if(h){d=c?r+s:n.height-r+Math.abs(s);h=e.getVTRowIndex(o.row);a=c?u.slice(h,h+Math.ceil(d/g.rowHeight)):u.slice(h-Math.floor(d/g.rowHeight),h+1)}else{d=c?t.clientY-n.y:n.y-t.clientY+n.height;for(var f=c?"next":"previous";l&&i<d;){var m=e.getRowNode(l);m&&(a.push(m.item),i+=l.offsetHeight,l=l[f+"ElementSibling"])}}return a}var _default=exports.default={methods:{moveTabSelected(e,t,o){var{afterFullData:l,visibleColumn:n,editConfig:r,editOpts:s}=this;let i,a,d,c=Object.assign({},e);var e=this.getVTRowIndex(c.row),h=this.getVTColumnIndex(c.column),t=(o.preventDefault(),t?h<=0?0<e&&(a=e-1,i=l[a],d=n.length-1):d=h-1:h>=n.length-1?e<l.length-1&&(a=e+1,i=l[a],d=0):d=h+1,n[d]);t&&(i?(c.rowIndex=a,c.row=i):c.rowIndex=e,c.columnIndex=d,c.column=t,c.cell=this.getCellElement(c.row,c.column),r?"click"!==s.trigger&&"dblclick"!==s.trigger||("row"===s.mode?this.handleEdit(c,o):this.scrollToRow(c.row,c.column).then(()=>this.handleSelected(c,o))):this.scrollToRow(c.row,c.column).then(()=>this.handleSelected(c,o)))},moveCurrentRow(e,t,o){let{currentRow:l,treeConfig:n,treeOpts:r,afterFullData:s}=this;var i,a=r.children||r.childrenField;let d;if(o.preventDefault(),l?n?({index:a,items:i}=_xeUtils.default.findTree(s,e=>e===l,{children:a}),e&&0<a?d=i[a-1]:t&&a<i.length-1&&(d=i[a+1])):(i=this.getVTRowIndex(l),e&&0<i?d=s[i-1]:t&&i<s.length-1&&(d=s[i+1])):d=s[0],d){let e={$table:this,row:d};this.scrollToRow(d).then(()=>this.triggerCurrentRowEvent(o,e))}},moveSelected(e,t,o,l,n,r){var{afterFullData:s,visibleColumn:i}=this;let a=Object.assign({},e);var e=this.getVTRowIndex(a.row),d=this.getVTColumnIndex(a.column);r.preventDefault(),o&&0<e?(a.rowIndex=e-1,a.row=s[a.rowIndex]):n&&e<s.length-1?(a.rowIndex=e+1,a.row=s[a.rowIndex]):t&&d?(a.columnIndex=d-1,a.column=i[a.columnIndex]):l&&d<i.length-1&&(a.columnIndex=d+1,a.column=i[a.columnIndex]),this.scrollToRow(a.row,a.column).then(()=>{a.cell=this.getCellElement(a.row,a.column),this.handleSelected(a,r)})},triggerHeaderCellMousedownEvent(e,t){var o,{mouseConfig:l,mouseOpts:n}=this;l&&n.area&&this.handleHeaderCellAreaEvent&&(l=e.currentTarget,n=(0,_dom.getEventTargetNode)(e,l,"vxe-cell--sort").flag,o=(0,_dom.getEventTargetNode)(e,l,"vxe-cell--filter").flag,this.handleHeaderCellAreaEvent(e,Object.assign({cell:l,triggerSort:n,triggerFilter:o},t))),this.focus(),this.closeMenu()},triggerCellMousedownEvent(e,t){var o=e.currentTarget;t.cell=o,this.handleCellMousedownEvent(e,t),this.focus(),this.closeFilter(),this.closeMenu()},handleCellMousedownEvent(e,t){var{editConfig:o,editOpts:l,handleSelected:n,checkboxConfig:r,checkboxOpts:s,mouseConfig:i,mouseOpts:a}=this;if(i&&a.area&&this.handleMousedownCellAreaEvent)return this.handleMousedownCellAreaEvent(e,t);r&&s.range&&this.handleCheckboxRangeEvent(e,t),i&&a.selected&&(o&&"cell"!==l.mode||n(t,e))},handleCheckboxRangeEvent(n,y){var{column:r,cell:M}=y;if("checkbox"===r.type){let{$el:t,elemStore:e}=this,i=n.clientX,a=n.clientY,d=e[`${r.fixed||"main"}-body-wrapper`]||e["main-body-wrapper"],c=d.querySelector(".vxe-table--checkbox-range"),o=document.onmousemove,l=document.onmouseup,h=M.parentNode,u=this.getCheckboxRecords(),g=[],f=1;r=getTargetOffset(n.target,d);let m=r.offsetTop+n.offsetY,v=r.offsetLeft+n.offsetX,x=d.scrollTop,s=h.offsetHeight,p=h.getBoundingClientRect(),w=a-p.y,b=null,C=!1,T=1,R=(e,t)=>{this.emitEvent("checkbox-range-"+e,{records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords()},t)},_=e=>{var{clientX:t,clientY:o}=e,t=t-i,o=o-a+(d.scrollTop-x);let l=Math.abs(o),n=Math.abs(t),r=m,s=v;o<f?(r+=o)<f&&(r=f,l=m):l=Math.min(l,d.scrollHeight-m-f),t<f?(s+=t,n>v&&(s=f,n=v)):n=Math.min(n,d.clientWidth-v-f),c.style.height=l+"px",c.style.width=n+"px",c.style.left=s+"px",c.style.top=r+"px",c.style.display="block";t=getCheckboxRangeRows(this,e,y,h,p,w,o<f?-l:l);10<l&&t.length!==g.length&&(g=t,e.ctrlKey?t.forEach(e=>{this.handleSelectRow({row:e},-1===u.indexOf(e))}):(this.setAllCheckboxRow(!1),this.handleCheckedCheckboxRow(t,!0,!1)),R("change",e))},k=()=>{clearTimeout(b),b=null},E=r=>{k(),b=setTimeout(()=>{var e,t,o,l,n;b&&({scrollLeft:e,scrollTop:t,clientHeight:o,scrollHeight:l}=d,n=Math.ceil(50*T/s),C?t+o<l?(this.scrollTo(e,t+n),E(r),_(r)):k():t?(this.scrollTo(e,t-n),E(r),_(r)):k())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,o=(0,_dom.getAbsolutePos)(d).boundingTop;t<o?(C=!1,T=o-t,b||E(e)):t>o+d.clientHeight?(C=!0,T=t-o-d.clientHeight,b||E(e)):b&&k(),_(e)},document.onmouseup=e=>{k(),(0,_dom.removeClass)(t,"drag--range"),c.removeAttribute("style"),document.onmousemove=o,document.onmouseup=l,R("end",e)},R("start",n)}}}};
@@ -386,12 +386,15 @@ function renderRows(h, _vm, $xeTable, fixedType, tableData, tableColumn) {
386
386
  columnOpts,
387
387
  isDragColMove
388
388
  } = $xeTable;
389
+ const {
390
+ transform,
391
+ seqMode
392
+ } = treeOpts;
389
393
  const childrenField = treeOpts.children || treeOpts.childrenField;
390
394
  const rows = [];
391
395
  tableData.forEach((row, $rowIndex) => {
392
396
  const trOn = {};
393
397
  let rowIndex = $rowIndex;
394
- const _rowIndex = $xeTable.getVTRowIndex(row);
395
398
  // 确保任何情况下 rowIndex 都精准指向真实 data 索引
396
399
  rowIndex = $xeTable.getRowIndex(row);
397
400
  // 当前行事件
@@ -414,8 +417,18 @@ function renderRows(h, _vm, $xeTable, fixedType, tableData, tableColumn) {
414
417
  }
415
418
  const rowid = (0, _util.getRowid)($xeTable, row);
416
419
  const rest = fullAllDataRowIdData[rowid];
417
- const rowLevel = rest ? rest.level : 0;
418
- const seq = rest ? rest.seq : -1;
420
+ let rowLevel = 0;
421
+ let seq = -1;
422
+ let _rowIndex = 0;
423
+ if (rest) {
424
+ rowLevel = rest.level;
425
+ if (treeConfig && transform && seqMode === 'increasing') {
426
+ seq = rest._index + 1;
427
+ } else {
428
+ seq = rest.seq;
429
+ }
430
+ _rowIndex = rest._index;
431
+ }
419
432
  const params = {
420
433
  $table: $xeTable,
421
434
  seq,
@@ -454,7 +467,7 @@ function renderRows(h, _vm, $xeTable, fixedType, tableData, tableColumn) {
454
467
  };
455
468
  }
456
469
  const trClass = ['vxe-body--row', treeConfig ? `row--level-${rowLevel}` : '', {
457
- 'row--stripe': stripe && ($xeTable.getVTRowIndex(row) + 1) % 2 === 0,
470
+ 'row--stripe': stripe && (_rowIndex + 1) % 2 === 0,
458
471
  'is--new': isNewRow,
459
472
  'is--expand-row': isExpandRow,
460
473
  'is--expand-tree': isExpandTree,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";function isVMScrollProcess(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,r){var{row:o,column:s}=r,{afterFullData:a,treeOpts:i,treeConfig:n,fullAllDataRowIdData:d}=t,{slots:s,treeNode:c}=s,d=d[(0,_util.getRowid)(t,o)];let p=0,u=0,g=[];return d&&(p=d.level,u=d._index,g=d.items),s&&s.line?t.callSlot(s.line,r,e):(d=t.eqRow(a[0],o),n&&c&&(i.showLine||i.line)?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:`${d?1:(0,_util.calcTreeLine)(r,g,u)}px`,left:p*i.indent+(p?2-(0,_util.getOffsetSize)(t):0)+16+"px"}})])]:[])}function renderColumn(e,H,l,t,r,o,s,a,i,n,B,d,c,U,q){var{$listeners:p,fullAllDataRowIdData:A,afterFullData:u,tableData:V,height:g,columnKey:F,overflowX:h,sYOpts:v,scrollXLoad:N,scrollYLoad:W,highlightCurrentRow:P,showOverflow:X,isAllOverflow:j,align:z,currentColumn:K,cellClassName:G,cellStyle:m,mergeList:w,spanMethod:J,radioOpts:Q,checkboxOpts:x,expandOpts:Z,treeOpts:ee,tooltipOpts:y,mouseConfig:le,editConfig:f,editOpts:b,editRules:S,validOpts:T,editStore:te,tooltipConfig:re,rowOpts:oe,columnOpts:se,mouseOpts:ae,areaOpts:_,validErrorMaps:C}=l,_=_.selectCellToRow,ie=l.computeCellOpts,{type:ne,cellRender:de,editRender:$,align:ce,showOverflow:O,className:pe,treeNode:ue,slots:ge}=d,ie=ie.verticalAlign,te=te.actived,v=v.rHeight,E=oe.height,R=$||de,R=R?renderer.get(R.name):null,he=R?R.tableCellClassName||R.cellClassName:"",ve=R?R.tableCellStyle||R.cellStyle:"";let I=y.showAll||y.enabled;var y=l.getColumnIndex(d),me=l.getVTColumnIndex(d),we=(0,_utils.isEnableConf)($);let D=o?d.fixed!==o:d.fixed&&h;h=_xeUtils.default.isUndefined(O)||_xeUtils.default.isNull(O)?X:O,O="ellipsis"===h;let L="title"===h,k=!0===h||"tooltip"===h;h=L||k||O;let xe;var M={},A=A[r],ce=ce||(R?R.tableCellAlign:"")||z,R=C[r+":"+d.id],z=S&&T.showMessage&&("default"===T.message?g||1<V.length:"inline"===T.message),C={colid:d.id};let ye=p["cell-mouseenter"],fe=p["cell-mouseleave"];S=$&&f&&"dblclick"===b.trigger;let Y={$table:l,$grid:l.$xegrid,isEdit:!1,seq:t,rowid:r,row:a,rowIndex:i,$rowIndex:n,_rowIndex:B,column:d,columnIndex:y,$columnIndex:c,_columnIndex:me,fixed:o,type:renderType,isHidden:D,level:s,visibleData:u,data:V,items:q};if((L||k||I||ye||re)&&(M.mouseenter=e=>{isVMScrollProcess(l)||(L?(0,_dom.updateCellTitle)(e.currentTarget,d):(k||I)&&l.triggerBodyTooltipEvent(e,Y),ye&&l.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},Y),e))}),(k||I||fe||re)&&(M.mouseleave=e=>{isVMScrollProcess(l)||((k||I)&&l.handleTargetLeaveEvent(e),fe&&l.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},Y),e))}),(x.range||le)&&(M.mousedown=e=>{l.triggerCellMousedownEvent(e,Y)}),(oe.isCurrent||P||p["cell-click"]||$&&f||"row"===Z.trigger||"cell"===Z.trigger||"row"===Q.trigger||"radio"===d.type&&"cell"===Q.trigger||"row"===x.trigger||"checkbox"===d.type&&"cell"===x.trigger||"row"===ee.trigger||d.treeNode&&"cell"===ee.trigger)&&(M.click=e=>{l.triggerCellClickEvent(e,Y)}),(S||p["cell-dblclick"])&&(M.dblclick=e=>{l.triggerCellDblclickEvent(e,Y)}),w.length){g=(0,_util.mergeBodyMethod)(w,B,me);if(g){var{rowspan:t,colspan:r}=g;if(!t||!r)return null;1<t&&(C.rowspan=t),1<r&&(C.colspan=r)}}else if(J){var{rowspan:i=1,colspan:n=1}=J(Y)||{};if(!i||!n)return null;1<i&&(C.rowspan=i),1<n&&(C.colspan=n)}!(D=D&&w&&(1<C.colspan||1<C.rowspan)?!1:D)&&f&&($||de)&&(b.showStatus||b.showUpdateStatus)&&(xe=l.isUpdateByRow(a,d.field));y=[];D&&X&&j?y.push(e("div",{class:["vxe-cell",{"c--title":L,"c--tooltip":k,"c--ellipsis":O}],style:{maxHeight:h&&(v||E)?`${v||E}px`:""}})):(y.push(...renderLine(e,H,l,Y),e("div",{class:["vxe-cell",{"c--title":L,"c--tooltip":k,"c--ellipsis":O}],style:{maxHeight:h&&(v||E)?`${v||E}px`:""},attrs:{title:L?l.getCellLabel(a,d):null}},d.renderCell(e,Y))),z&&R&&(o=R.rule,s=ge?ge.valid:null,u=Object.assign(Object.assign(Object.assign({},Y),R),{rule:R}),y.push(e("div",{class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(T.className,R)],style:o&&o.maxWidth?{width:o.maxWidth+"px"}:null},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(T.theme||"normal")},[s?l.callSlot(s,u,e):[e("span",{class:"vxe-cell--valid-error-msg"},R.content)]])]))));let be="";return h&&(v||E)?be=`${v||E}px`:!N&&!W||h||(be=`${A.height||24}px`),le&&ae.area&&_&&((c||!0!==_)&&_!==d.field||y.push(e("div",{class:"vxe-cell--area-status"}))),e("td",{class:["vxe-body--column",d.id,{["col--"+ce]:ce,["col--vertical-"+ie]:ie,["col--"+ne]:ne,"col--last":c===U.length-1,"col--tree-node":ue,"col--edit":we,"col--ellipsis":h,"fixed--hidden":D,"col--dirty":xe,"col--active":f&&we&&te.row===a&&(te.column===d||"row"===b.mode),"col--valid-error":!!R,"col--current":K===d},(0,_utils.getClass)(he,Y),(0,_utils.getClass)(pe,Y),(0,_utils.getClass)(G,Y)],key:F||se.useKey||oe.useKey?d.id:c,attrs:C,style:Object.assign({height:be},_xeUtils.default.isFunction(ve)?ve(Y):ve,_xeUtils.default.isFunction(m)?m(Y):m),on:M},y)}function renderRows(m,w,x,y,f,b){let{stripe:S,rowKey:T,highlightHoverRow:_,rowClassName:C,rowStyle:$,editConfig:O,showOverflow:E,treeConfig:R,treeOpts:I,expandOpts:D,editOpts:L,treeExpandedMaps:k,scrollYLoad:M,rowExpandedMaps:Y,radioOpts:H,checkboxOpts:B,expandColumn:U,hasFixedColumn:q,fullAllDataRowIdData:A,rowOpts:V,pendingRowList:F,pendingRowMaps:N,columnOpts:W,isDragColMove:P}=x,X=I.children||I.childrenField,j=[];return f.forEach((t,r)=>{var e={};let o,s=x.getVTRowIndex(t),a=(o=x.getRowIndex(t),(V.isHover||_)&&(e.mouseenter=e=>{isVMScrollProcess(x)||x.triggerHoverEvent(e,{row:t,rowIndex:o})},e.mouseleave=()=>{isVMScrollProcess(x)||x.clearHoverRow()}),(0,_util.getRowid)(x,t));var l=A[a];let i=l?l.level:0,n=l?l.seq:-1;var l={$table:x,seq:n,rowid:a,fixed:y,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:r},d=U&&!!Y[a];let c=!1,p=[],u=!1;O&&(u=x.isInsertByRow(t)),!R||M||I.transform||(p=t[X],c=p&&p.length&&!!k[a]),V.drag&&!i&&(e.dragstart=e=>{x.handleRowDragDragstartEvent(e)},e.dragover=e=>{x.handleRowDragDragoverEvent(e)},e.dragend=e=>{x.handleRowDragDragendEvent(e)});var g,h=["vxe-body--row",R?"row--level-"+i:"",{"row--stripe":S&&(x.getVTRowIndex(t)+1)%2==0,"is--new":u,"is--expand-row":d,"is--expand-tree":c,"row--new":u&&(L.showStatus||L.showInsertStatus),"row--radio":H.highlight&&x.selectRadioRow===t,"row--checked":B.highlight&&x.isCheckedByCheckboxRow(t),"row--pending":F.length&&!!N[a]},C?_xeUtils.default.isFunction(C)?C(l):C:""],v=b.map((e,l)=>renderColumn(m,w,x,n,a,y,i,t,o,r,s,e,l,b,f));j.push(W.drag?m("transition-group",{props:{tag:"tr",name:"vxe-header--col-list"+(P?"":"-disabled")},class:h,attrs:{rowid:a},style:$?_xeUtils.default.isFunction($)?$(l):$:null,key:T||V.useKey||V.drag||R?a:r,nativeOn:e},v):m("tr",{class:h,attrs:{rowid:a},style:$?_xeUtils.default.isFunction($)?$(l):$:null,key:T||V.useKey||V.drag||R?a:r,on:e},v)),d&&({height:h,padding:l}=D,v={},d=(h&&(v.height=h+"px"),R&&(v.paddingLeft=i*I.indent+30+"px"),U).showOverflow,d=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?E:d,g={$table:x,seq:n,column:U,fixed:y,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:r},j.push(m("tr",{class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+a,style:$?_xeUtils.default.isFunction($)?$(g):$:null,on:e},[m("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":y&&!q,"col--ellipsis":d},attrs:{colspan:b.length}},[m("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":h},style:v},[U.renderData(m,g)])])]))),c&&j.push(...renderRows(m,w,x,y,p,b))}),j}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted(){var{$parent:e,$el:l,$refs:t,fixedType:r}=this,e=e.elemStore,r=`${r||"main"}-body-`;e[r+"wrapper"]=l,e[r+"table"]=t.table,e[r+"colgroup"]=t.colgroup,e[r+"list"]=t.tbody,e[r+"xSpace"]=t.xSpace,e[r+"ySpace"]=t.ySpace,e[r+"emptyBlock"]=t.emptyBlock},beforeDestroy(){clearTimeout(this.wheelTime)},destroyed(){var{$parent:e,fixedType:l}=this,e=e.elemStore,l=`${l||"main"}-body-`;e[l+"wrapper"]=null,e[l+"table"]=null,e[l+"colgroup"]=null,e[l+"list"]=null,e[l+"xSpace"]=null,e[l+"ySpace"]=null,e[l+"emptyBlock"]=null},render(t){var e=this.$parent;let{_e:l,$parent:r,fixedColumn:o,fixedType:s}=this,{$scopedSlots:a,tId:i,tableData:n,tableColumn:d,visibleColumn:c,expandColumn:p,showOverflow:u,keyboardConfig:g,keyboardOpts:h,mergeList:v,spanMethod:m,scrollXLoad:w,scrollYLoad:x,isAllOverflow:y,emptyOpts:f,mouseConfig:b,mouseOpts:S,sYOpts:T,rowOpts:_,isDragRowMove:C}=r;s&&(d=p||!(w||x||u&&y)||v.length||m||g&&h.isMerge?c:o);let $;$=a.empty?a.empty.call(this,{$table:r},t):(O=(O=f.name?renderer.get(f.name):null)?O.renderTableEmpty||O.renderTableEmptyView||O.renderEmpty:null)?(0,_vn.getSlotVNs)(O.call(this,t,f,{$table:r})):r.emptyText||getI18n("vxe.table.emptyText");var O={scroll:this.scrollEvent};return"wheel"===T.mode&&(O.wheel=this.wheelEvent),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",s?`fixed-${s}--wrapper`:"body--wrapper"],attrs:{xid:i},on:O},[s?l():t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},d.map((e,l)=>t("col",{attrs:{name:e.id},key:l}))),_.drag?t("transition-group",{props:{tag:"tbody",name:"vxe-body--row-list"+(C?"":"-disabled")}},renderRows(t,this,r,s,n,d)):t("tbody",{ref:"tbody"},renderRows(t,this,r,s,n,d))]),t("div",{class:"vxe-table--checkbox-range"}),b&&S.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},S.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){r.triggerCellAreaExtendMousedownEvent&&r.triggerCellAreaExtendMousedownEvent(e,{$table:r,fixed:s,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):renderEmptyElement(e),s?renderEmptyElement(e):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},$)])])},methods:{scrollEvent(e){var l,t,r,o,s,a=this.$parent,i=a,n=this.fixedType,{lastScrollTop:d,lastScrollLeft:c,inVirtualScroll:p,inBodyScroll:u,bodyScrollType:g,inFooterScroll:h}=i;p||h||u&&g!==n||({tableHeader:p,tableBody:h,leftBody:u,rightBody:g,tableFooter:l}=a.$refs,o=this.$el,p=p?p.$el:null,l=l?l.$el:null,(h=h?h.$el:null)&&(u=u?u.$el:null,g=g?g.$el:null,t=a.$refs.refScrollXHandleElem,r=a.$refs.refScrollYHandleElem,o=o.scrollTop,c=(s=h.scrollLeft)!==c,d=o!==d,i.inBodyScroll=!0,i.bodyScrollType=n,d&&(u&&"left"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(g,o)):g&&"right"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(u,o)):((0,_dom.setScrollTop)(u,o),(0,_dom.setScrollTop)(g,o)),(0,_dom.setScrollTop)(r,o),a.triggerScrollYEvent(e)),c&&((0,_dom.setScrollLeft)(t,s),(0,_dom.setScrollLeft)(p,s),(0,_dom.setScrollLeft)(l,s),a.triggerScrollXEvent(e)),a.handleScrollEvent(e,d,c,o,s,{type:renderType,fixed:n})))},handleWheel(i,n,e,d,c){let p=this.$parent;var{$refs:l,elemStore:t,scrollYLoad:r,scrollXLoad:o}=p,{tableBody:l,leftBody:s,rightBody:a}=l;let u=l.$el,g=s?s.$el:null,h=a?a.$el:null;l=this.isPrevWheelTop===n?Math.max(0,this.wheelYSize-this.wheelYTotal):0,s=t["main-body-ySpace"],a=t["main-body-xSpace"];let v=(r&&s?s:u).clientHeight,m=(o&&a?a:u).clientWidth,w=(this.isPrevWheelTop=n,this.wheelYSize=Math.abs(n?e-l:e+l),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),()=>{let{fixedType:e,wheelYTotal:l,wheelYSize:t,wheelYInterval:r}=this;var o,s,a;l<t&&(t<(l+=r=Math.max(5,Math.floor(1.5*r)))&&(r-=l-t),{scrollTop:a,clientHeight:o,scrollHeight:s}=u,a=a+r*(n?-1:1),u.scrollTop=a,g&&(g.scrollTop=a),h&&(h.scrollTop=a),(n?a<s-o:0<=a)&&(this.wheelTime=setTimeout(w,10)),this.wheelYTotal=l,this.wheelYInterval=r,p.emitEvent("scroll",{type:renderType,fixed:e,scrollTop:u.scrollTop,scrollLeft:u.scrollLeft,scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,bodyHeight:v,bodyWidth:m,isX:d,isY:c},i))});w()},wheelEvent(e){var{deltaY:l,deltaX:t}=e,{$el:r,$parent:o}=this,{$refs:s,highlightHoverRow:a,scrollYLoad:i,lastScrollTop:n,lastScrollLeft:d,rowOpts:c}=o,s=s.tableBody,s=s.$el,p=l<0;(p?r.scrollTop<=0:r.scrollTop>=r.scrollHeight-r.clientHeight)||(r=r.scrollTop+l,t=(s=s.scrollLeft+t)!==d,(d=r!==n)&&(e.preventDefault(),o.lastScrollTop=r,o.lastScrollLeft=s,o.lastScrollTime=Date.now(),(c.isHover||a)&&o.clearHoverRow(),this.handleWheel(e,p,l,t,d),i)&&o.triggerScrollYEvent(e))}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";function isVMScrollProcess(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,r){var{row:o,column:s}=r,{afterFullData:a,treeOpts:i,treeConfig:n,fullAllDataRowIdData:d}=t,{slots:s,treeNode:c}=s,d=d[(0,_util.getRowid)(t,o)];let p=0,u=0,g=[];return d&&(p=d.level,u=d._index,g=d.items),s&&s.line?t.callSlot(s.line,r,e):(d=t.eqRow(a[0],o),n&&c&&(i.showLine||i.line)?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:`${d?1:(0,_util.calcTreeLine)(r,g,u)}px`,left:p*i.indent+(p?2-(0,_util.getOffsetSize)(t):0)+16+"px"}})])]:[])}function renderColumn(e,H,l,t,r,o,s,a,i,n,B,d,c,U,q){var{$listeners:p,fullAllDataRowIdData:A,afterFullData:u,tableData:F,height:g,columnKey:N,overflowX:h,sYOpts:v,scrollXLoad:V,scrollYLoad:W,highlightCurrentRow:P,showOverflow:X,isAllOverflow:j,align:z,currentColumn:K,cellClassName:G,cellStyle:m,mergeList:w,spanMethod:J,radioOpts:Q,checkboxOpts:x,expandOpts:Z,treeOpts:ee,tooltipOpts:y,mouseConfig:le,editConfig:f,editOpts:b,editRules:S,validOpts:T,editStore:te,tooltipConfig:re,rowOpts:oe,columnOpts:se,mouseOpts:ae,areaOpts:_,validErrorMaps:C}=l,_=_.selectCellToRow,ie=l.computeCellOpts,{type:ne,cellRender:de,editRender:$,align:ce,showOverflow:O,className:pe,treeNode:ue,slots:ge}=d,ie=ie.verticalAlign,te=te.actived,v=v.rHeight,E=oe.height,R=$||de,R=R?renderer.get(R.name):null,he=R?R.tableCellClassName||R.cellClassName:"",ve=R?R.tableCellStyle||R.cellStyle:"";let D=y.showAll||y.enabled;var y=l.getColumnIndex(d),me=l.getVTColumnIndex(d),we=(0,_utils.isEnableConf)($);let L=o?d.fixed!==o:d.fixed&&h;h=_xeUtils.default.isUndefined(O)||_xeUtils.default.isNull(O)?X:O,O="ellipsis"===h;let I="title"===h,k=!0===h||"tooltip"===h;h=I||k||O;let xe;var M={},A=A[r],ce=ce||(R?R.tableCellAlign:"")||z,R=C[r+":"+d.id],z=S&&T.showMessage&&("default"===T.message?g||1<F.length:"inline"===T.message),C={colid:d.id};let ye=p["cell-mouseenter"],fe=p["cell-mouseleave"];S=$&&f&&"dblclick"===b.trigger;let Y={$table:l,$grid:l.$xegrid,isEdit:!1,seq:t,rowid:r,row:a,rowIndex:i,$rowIndex:n,_rowIndex:B,column:d,columnIndex:y,$columnIndex:c,_columnIndex:me,fixed:o,type:renderType,isHidden:L,level:s,visibleData:u,data:F,items:q};if((I||k||D||ye||re)&&(M.mouseenter=e=>{isVMScrollProcess(l)||(I?(0,_dom.updateCellTitle)(e.currentTarget,d):(k||D)&&l.triggerBodyTooltipEvent(e,Y),ye&&l.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},Y),e))}),(k||D||fe||re)&&(M.mouseleave=e=>{isVMScrollProcess(l)||((k||D)&&l.handleTargetLeaveEvent(e),fe&&l.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},Y),e))}),(x.range||le)&&(M.mousedown=e=>{l.triggerCellMousedownEvent(e,Y)}),(oe.isCurrent||P||p["cell-click"]||$&&f||"row"===Z.trigger||"cell"===Z.trigger||"row"===Q.trigger||"radio"===d.type&&"cell"===Q.trigger||"row"===x.trigger||"checkbox"===d.type&&"cell"===x.trigger||"row"===ee.trigger||d.treeNode&&"cell"===ee.trigger)&&(M.click=e=>{l.triggerCellClickEvent(e,Y)}),(S||p["cell-dblclick"])&&(M.dblclick=e=>{l.triggerCellDblclickEvent(e,Y)}),w.length){g=(0,_util.mergeBodyMethod)(w,B,me);if(g){var{rowspan:t,colspan:r}=g;if(!t||!r)return null;1<t&&(C.rowspan=t),1<r&&(C.colspan=r)}}else if(J){var{rowspan:i=1,colspan:n=1}=J(Y)||{};if(!i||!n)return null;1<i&&(C.rowspan=i),1<n&&(C.colspan=n)}!(L=L&&w&&(1<C.colspan||1<C.rowspan)?!1:L)&&f&&($||de)&&(b.showStatus||b.showUpdateStatus)&&(xe=l.isUpdateByRow(a,d.field));y=[];L&&X&&j?y.push(e("div",{class:["vxe-cell",{"c--title":I,"c--tooltip":k,"c--ellipsis":O}],style:{maxHeight:h&&(v||E)?`${v||E}px`:""}})):(y.push(...renderLine(e,H,l,Y),e("div",{class:["vxe-cell",{"c--title":I,"c--tooltip":k,"c--ellipsis":O}],style:{maxHeight:h&&(v||E)?`${v||E}px`:""},attrs:{title:I?l.getCellLabel(a,d):null}},d.renderCell(e,Y))),z&&R&&(o=R.rule,s=ge?ge.valid:null,u=Object.assign(Object.assign(Object.assign({},Y),R),{rule:R}),y.push(e("div",{class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(T.className,R)],style:o&&o.maxWidth?{width:o.maxWidth+"px"}:null},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(T.theme||"normal")},[s?l.callSlot(s,u,e):[e("span",{class:"vxe-cell--valid-error-msg"},R.content)]])]))));let be="";return h&&(v||E)?be=`${v||E}px`:!V&&!W||h||(be=`${A.height||24}px`),le&&ae.area&&_&&((c||!0!==_)&&_!==d.field||y.push(e("div",{class:"vxe-cell--area-status"}))),e("td",{class:["vxe-body--column",d.id,{["col--"+ce]:ce,["col--vertical-"+ie]:ie,["col--"+ne]:ne,"col--last":c===U.length-1,"col--tree-node":ue,"col--edit":we,"col--ellipsis":h,"fixed--hidden":L,"col--dirty":xe,"col--active":f&&we&&te.row===a&&(te.column===d||"row"===b.mode),"col--valid-error":!!R,"col--current":K===d},(0,_utils.getClass)(he,Y),(0,_utils.getClass)(pe,Y),(0,_utils.getClass)(G,Y)],key:N||se.useKey||oe.useKey?d.id:c,attrs:C,style:Object.assign({height:be},_xeUtils.default.isFunction(ve)?ve(Y):ve,_xeUtils.default.isFunction(m)?m(Y):m),on:M},y)}function renderRows(m,w,x,y,f,b){let{stripe:S,rowKey:T,highlightHoverRow:_,rowClassName:C,rowStyle:$,editConfig:O,showOverflow:E,treeConfig:R,treeOpts:D,expandOpts:L,editOpts:I,treeExpandedMaps:k,scrollYLoad:M,rowExpandedMaps:Y,radioOpts:H,checkboxOpts:B,expandColumn:U,hasFixedColumn:q,fullAllDataRowIdData:A,rowOpts:F,pendingRowList:N,pendingRowMaps:V,columnOpts:W,isDragColMove:P}=x,{transform:X,seqMode:j}=D,z=D.children||D.childrenField,K=[];return f.forEach((t,r)=>{var e={};let o,s=(o=x.getRowIndex(t),(F.isHover||_)&&(e.mouseenter=e=>{isVMScrollProcess(x)||x.triggerHoverEvent(e,{row:t,rowIndex:o})},e.mouseleave=()=>{isVMScrollProcess(x)||x.clearHoverRow()}),(0,_util.getRowid)(x,t));var l=A[s];let a=0,i=-1,n=0;l&&(a=l.level,i=R&&X&&"increasing"===j?l._index+1:l.seq,n=l._index);var l={$table:x,seq:i,rowid:s,fixed:y,type:renderType,level:a,row:t,rowIndex:o,$rowIndex:r},d=U&&!!Y[s];let c=!1,p=[],u=!1;O&&(u=x.isInsertByRow(t)),!R||M||D.transform||(p=t[z],c=p&&p.length&&!!k[s]),F.drag&&!a&&(e.dragstart=e=>{x.handleRowDragDragstartEvent(e)},e.dragover=e=>{x.handleRowDragDragoverEvent(e)},e.dragend=e=>{x.handleRowDragDragendEvent(e)});var g,h=["vxe-body--row",R?"row--level-"+a:"",{"row--stripe":S&&(n+1)%2==0,"is--new":u,"is--expand-row":d,"is--expand-tree":c,"row--new":u&&(I.showStatus||I.showInsertStatus),"row--radio":H.highlight&&x.selectRadioRow===t,"row--checked":B.highlight&&x.isCheckedByCheckboxRow(t),"row--pending":N.length&&!!V[s]},C?_xeUtils.default.isFunction(C)?C(l):C:""],v=b.map((e,l)=>renderColumn(m,w,x,i,s,y,a,t,o,r,n,e,l,b,f));K.push(W.drag?m("transition-group",{props:{tag:"tr",name:"vxe-header--col-list"+(P?"":"-disabled")},class:h,attrs:{rowid:s},style:$?_xeUtils.default.isFunction($)?$(l):$:null,key:T||F.useKey||F.drag||R?s:r,nativeOn:e},v):m("tr",{class:h,attrs:{rowid:s},style:$?_xeUtils.default.isFunction($)?$(l):$:null,key:T||F.useKey||F.drag||R?s:r,on:e},v)),d&&({height:h,padding:l}=L,v={},d=(h&&(v.height=h+"px"),R&&(v.paddingLeft=a*D.indent+30+"px"),U).showOverflow,d=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?E:d,g={$table:x,seq:i,column:U,fixed:y,type:renderType,level:a,row:t,rowIndex:o,$rowIndex:r},K.push(m("tr",{class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+s,style:$?_xeUtils.default.isFunction($)?$(g):$:null,on:e},[m("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":y&&!q,"col--ellipsis":d},attrs:{colspan:b.length}},[m("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":h},style:v},[U.renderData(m,g)])])]))),c&&K.push(...renderRows(m,w,x,y,p,b))}),K}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted(){var{$parent:e,$el:l,$refs:t,fixedType:r}=this,e=e.elemStore,r=`${r||"main"}-body-`;e[r+"wrapper"]=l,e[r+"table"]=t.table,e[r+"colgroup"]=t.colgroup,e[r+"list"]=t.tbody,e[r+"xSpace"]=t.xSpace,e[r+"ySpace"]=t.ySpace,e[r+"emptyBlock"]=t.emptyBlock},beforeDestroy(){clearTimeout(this.wheelTime)},destroyed(){var{$parent:e,fixedType:l}=this,e=e.elemStore,l=`${l||"main"}-body-`;e[l+"wrapper"]=null,e[l+"table"]=null,e[l+"colgroup"]=null,e[l+"list"]=null,e[l+"xSpace"]=null,e[l+"ySpace"]=null,e[l+"emptyBlock"]=null},render(t){var e=this.$parent;let{_e:l,$parent:r,fixedColumn:o,fixedType:s}=this,{$scopedSlots:a,tId:i,tableData:n,tableColumn:d,visibleColumn:c,expandColumn:p,showOverflow:u,keyboardConfig:g,keyboardOpts:h,mergeList:v,spanMethod:m,scrollXLoad:w,scrollYLoad:x,isAllOverflow:y,emptyOpts:f,mouseConfig:b,mouseOpts:S,sYOpts:T,rowOpts:_,isDragRowMove:C}=r;s&&(d=p||!(w||x||u&&y)||v.length||m||g&&h.isMerge?c:o);let $;$=a.empty?a.empty.call(this,{$table:r},t):(O=(O=f.name?renderer.get(f.name):null)?O.renderTableEmpty||O.renderTableEmptyView||O.renderEmpty:null)?(0,_vn.getSlotVNs)(O.call(this,t,f,{$table:r})):r.emptyText||getI18n("vxe.table.emptyText");var O={scroll:this.scrollEvent};return"wheel"===T.mode&&(O.wheel=this.wheelEvent),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",s?`fixed-${s}--wrapper`:"body--wrapper"],attrs:{xid:i},on:O},[s?l():t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},d.map((e,l)=>t("col",{attrs:{name:e.id},key:l}))),_.drag?t("transition-group",{props:{tag:"tbody",name:"vxe-body--row-list"+(C?"":"-disabled")}},renderRows(t,this,r,s,n,d)):t("tbody",{ref:"tbody"},renderRows(t,this,r,s,n,d))]),t("div",{class:"vxe-table--checkbox-range"}),b&&S.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},S.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){r.triggerCellAreaExtendMousedownEvent&&r.triggerCellAreaExtendMousedownEvent(e,{$table:r,fixed:s,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):renderEmptyElement(e),s?renderEmptyElement(e):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},$)])])},methods:{scrollEvent(e){var l,t,r,o,s,a=this.$parent,i=a,n=this.fixedType,{lastScrollTop:d,lastScrollLeft:c,inVirtualScroll:p,inBodyScroll:u,bodyScrollType:g,inFooterScroll:h}=i;p||h||u&&g!==n||({tableHeader:p,tableBody:h,leftBody:u,rightBody:g,tableFooter:l}=a.$refs,o=this.$el,p=p?p.$el:null,l=l?l.$el:null,(h=h?h.$el:null)&&(u=u?u.$el:null,g=g?g.$el:null,t=a.$refs.refScrollXHandleElem,r=a.$refs.refScrollYHandleElem,o=o.scrollTop,c=(s=h.scrollLeft)!==c,d=o!==d,i.inBodyScroll=!0,i.bodyScrollType=n,d&&(u&&"left"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(g,o)):g&&"right"===n?((0,_dom.setScrollTop)(h,o),(0,_dom.setScrollTop)(u,o)):((0,_dom.setScrollTop)(u,o),(0,_dom.setScrollTop)(g,o)),(0,_dom.setScrollTop)(r,o),a.triggerScrollYEvent(e)),c&&((0,_dom.setScrollLeft)(t,s),(0,_dom.setScrollLeft)(p,s),(0,_dom.setScrollLeft)(l,s),a.triggerScrollXEvent(e)),a.handleScrollEvent(e,d,c,o,s,{type:renderType,fixed:n})))},handleWheel(i,n,e,d,c){let p=this.$parent;var{$refs:l,elemStore:t,scrollYLoad:r,scrollXLoad:o}=p,{tableBody:l,leftBody:s,rightBody:a}=l;let u=l.$el,g=s?s.$el:null,h=a?a.$el:null;l=this.isPrevWheelTop===n?Math.max(0,this.wheelYSize-this.wheelYTotal):0,s=t["main-body-ySpace"],a=t["main-body-xSpace"];let v=(r&&s?s:u).clientHeight,m=(o&&a?a:u).clientWidth,w=(this.isPrevWheelTop=n,this.wheelYSize=Math.abs(n?e-l:e+l),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),()=>{let{fixedType:e,wheelYTotal:l,wheelYSize:t,wheelYInterval:r}=this;var o,s,a;l<t&&(t<(l+=r=Math.max(5,Math.floor(1.5*r)))&&(r-=l-t),{scrollTop:a,clientHeight:o,scrollHeight:s}=u,a=a+r*(n?-1:1),u.scrollTop=a,g&&(g.scrollTop=a),h&&(h.scrollTop=a),(n?a<s-o:0<=a)&&(this.wheelTime=setTimeout(w,10)),this.wheelYTotal=l,this.wheelYInterval=r,p.emitEvent("scroll",{type:renderType,fixed:e,scrollTop:u.scrollTop,scrollLeft:u.scrollLeft,scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,bodyHeight:v,bodyWidth:m,isX:d,isY:c},i))});w()},wheelEvent(e){var{deltaY:l,deltaX:t}=e,{$el:r,$parent:o}=this,{$refs:s,highlightHoverRow:a,scrollYLoad:i,lastScrollTop:n,lastScrollLeft:d,rowOpts:c}=o,s=s.tableBody,s=s.$el,p=l<0;(p?r.scrollTop<=0:r.scrollTop>=r.scrollHeight-r.clientHeight)||(r=r.scrollTop+l,t=(s=s.scrollLeft+t)!==d,(d=r!==n)&&(e.preventDefault(),o.lastScrollTop=r,o.lastScrollLeft=s,o.lastScrollTime=Date.now(),(c.isHover||a)&&o.clearHoverRow(),this.handleWheel(e,p,l,t,d),i)&&o.triggerScrollYEvent(e))}}};
@@ -572,16 +572,15 @@ function handleRecalculateLayout($xeTable, reFull) {
572
572
  }
573
573
  $xeTable.calcCellWidth();
574
574
  $xeTable.autoCellWidth();
575
- if (reFull === true) {
576
- // 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
577
- return $xeTable.computeScrollLoad().then(() => {
575
+ return $xeTable.computeScrollLoad().then(() => {
576
+ if (reFull === true) {
577
+ // 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
578
578
  calcCellHeight($xeTable);
579
579
  $xeTable.calcCellWidth();
580
580
  $xeTable.autoCellWidth();
581
581
  return $xeTable.computeScrollLoad();
582
- });
583
- }
584
- return $xeTable.computeScrollLoad();
582
+ }
583
+ });
585
584
  }
586
585
  function checkLastSyncScroll($xeTable, isRollX, isRollY) {
587
586
  const reactData = $xeTable;
@@ -1950,6 +1949,11 @@ const Methods = {
1950
1949
  * @returns
1951
1950
  */
1952
1951
  handleVirtualTreeToList() {
1952
+ const $xeTable = this;
1953
+ const internalData = $xeTable;
1954
+ const {
1955
+ fullAllDataRowIdData
1956
+ } = internalData;
1953
1957
  const {
1954
1958
  treeOpts,
1955
1959
  treeConfig,
@@ -1965,6 +1969,10 @@ const Methods = {
1965
1969
  const rowid = (0, _util.getRowid)(this, row);
1966
1970
  const parentRowid = (0, _util.getRowid)(this, parent);
1967
1971
  if (!parent || expandMaps[parentRowid] && treeExpandedMaps[parentRowid]) {
1972
+ const rowRest = fullAllDataRowIdData[rowid];
1973
+ if (rowRest) {
1974
+ rowRest._index = fullData.length;
1975
+ }
1968
1976
  expandMaps[rowid] = 1;
1969
1977
  fullData.push(row);
1970
1978
  }
@@ -2188,24 +2196,69 @@ const Methods = {
2188
2196
  this.afterTreeFullData = tableTree;
2189
2197
  this.updateAfterDataIndex();
2190
2198
  },
2199
+ updateTreeDataIndex() {
2200
+ const $xeTable = this;
2201
+ const props = $xeTable;
2202
+ const internalData = $xeTable;
2203
+ const {
2204
+ treeConfig
2205
+ } = props;
2206
+ const {
2207
+ afterFullData,
2208
+ fullDataRowIdData,
2209
+ fullAllDataRowIdData
2210
+ } = internalData;
2211
+ const treeOpts = $xeTable.computeTreeOpts;
2212
+ if (treeConfig) {
2213
+ if (treeOpts.transform) {
2214
+ afterFullData.forEach((row, index) => {
2215
+ const rowid = (0, _util.getRowid)($xeTable, row);
2216
+ const rowRest = fullAllDataRowIdData[rowid];
2217
+ if (rowRest) {
2218
+ rowRest._index = index;
2219
+ } else {
2220
+ const rest = {
2221
+ row,
2222
+ rowid,
2223
+ seq: '-1',
2224
+ index: -1,
2225
+ $index: -1,
2226
+ _index: index,
2227
+ items: [],
2228
+ parent: null,
2229
+ level: 0,
2230
+ height: 0
2231
+ };
2232
+ fullAllDataRowIdData[rowid] = rest;
2233
+ fullDataRowIdData[rowid] = rest;
2234
+ }
2235
+ });
2236
+ }
2237
+ }
2238
+ },
2191
2239
  /**
2192
2240
  * 预编译
2193
2241
  * 对渲染中的数据提前解析序号及索引。牺牲提前编译耗时换取渲染中额外损耗,使运行时更加流畅
2194
2242
  */
2195
2243
  updateAfterDataIndex() {
2244
+ const $xeTable = this;
2245
+ const props = $xeTable;
2246
+ const internalData = $xeTable;
2247
+ const {
2248
+ treeConfig
2249
+ } = props;
2196
2250
  const {
2197
- treeConfig,
2198
2251
  afterFullData,
2199
2252
  fullDataRowIdData,
2200
2253
  fullAllDataRowIdData,
2201
- afterTreeFullData,
2202
- treeOpts
2203
- } = this;
2254
+ afterTreeFullData
2255
+ } = internalData;
2256
+ const treeOpts = $xeTable.computeTreeOpts;
2204
2257
  const childrenField = treeOpts.children || treeOpts.childrenField;
2205
2258
  const fullMaps = {};
2206
2259
  if (treeConfig) {
2207
2260
  _xeUtils.default.eachTree(afterTreeFullData, (row, index, items, path) => {
2208
- const rowid = (0, _util.getRowid)(this, row);
2261
+ const rowid = (0, _util.getRowid)($xeTable, row);
2209
2262
  const rowRest = fullAllDataRowIdData[rowid];
2210
2263
  const seq = path.map((num, i) => i % 2 === 0 ? Number(num) + 1 : '.').join('');
2211
2264
  if (rowRest) {
@@ -2231,9 +2284,10 @@ const Methods = {
2231
2284
  }, {
2232
2285
  children: treeOpts.transform ? treeOpts.mapChildrenField : childrenField
2233
2286
  });
2287
+ $xeTable.updateTreeDataIndex();
2234
2288
  } else {
2235
2289
  afterFullData.forEach((row, index) => {
2236
- const rowid = (0, _util.getRowid)(this, row);
2290
+ const rowid = (0, _util.getRowid)($xeTable, row);
2237
2291
  const rowRest = fullAllDataRowIdData[rowid];
2238
2292
  const seq = index + 1;
2239
2293
  if (rowRest) {
@@ -2260,10 +2314,46 @@ const Methods = {
2260
2314
  }
2261
2315
  this.afterFullRowMaps = fullMaps;
2262
2316
  },
2317
+ /**
2318
+ * 只对 tree-config 有效,获取行的子级
2319
+ */
2320
+ getTreeRowChildren(rowOrRowid) {
2321
+ const $xeTable = this;
2322
+ const props = $xeTable;
2323
+ const internalData = $xeTable;
2324
+ const {
2325
+ treeConfig
2326
+ } = props;
2327
+ const {
2328
+ fullDataRowIdData
2329
+ } = internalData;
2330
+ const treeOpts = $xeTable.computeTreeOpts;
2331
+ const {
2332
+ transform,
2333
+ mapChildrenField
2334
+ } = treeOpts;
2335
+ const childrenField = treeOpts.children || treeOpts.childrenField;
2336
+ if (rowOrRowid && treeConfig) {
2337
+ let rowid;
2338
+ if (_xeUtils.default.isString(rowOrRowid)) {
2339
+ rowid = rowOrRowid;
2340
+ } else {
2341
+ rowid = (0, _util.getRowid)($xeTable, rowOrRowid);
2342
+ }
2343
+ if (rowid) {
2344
+ const rest = fullDataRowIdData[rowid];
2345
+ const row = rest ? rest.row : null;
2346
+ if (row) {
2347
+ return row[transform ? mapChildrenField : childrenField] || [];
2348
+ }
2349
+ }
2350
+ }
2351
+ return [];
2352
+ },
2263
2353
  /**
2264
2354
  * 只对 tree-config 有效,获取行的父级
2265
2355
  */
2266
- getParentRow(rowOrRowid) {
2356
+ getTreeParentRow(rowOrRowid) {
2267
2357
  const {
2268
2358
  treeConfig,
2269
2359
  fullDataRowIdData
@@ -2282,6 +2372,11 @@ const Methods = {
2282
2372
  }
2283
2373
  return null;
2284
2374
  },
2375
+ getParentRow(rowOrRowid) {
2376
+ const $xeTable = this;
2377
+ (0, _log.warnLog)('vxe.error.delFunc', ['getParentRow', 'getTreeParentRow']);
2378
+ return $xeTable.getTreeParentRow(rowOrRowid);
2379
+ },
2285
2380
  /**
2286
2381
  * 根据行的唯一主键获取行
2287
2382
  * @param {String/Number} rowid 行主键
@@ -6889,7 +6984,9 @@ const Methods = {
6889
6984
  }
6890
6985
  return this.$nextTick().then(() => {
6891
6986
  if (transform) {
6892
- return this.handleTableData();
6987
+ this.handleTableData();
6988
+ this.updateTreeDataIndex();
6989
+ return this.$nextTick();
6893
6990
  }
6894
6991
  });
6895
6992
  });
@@ -7015,7 +7112,9 @@ const Methods = {
7015
7112
  validRows.forEach(row => this.handleTreeExpandReserve(row, expanded));
7016
7113
  }
7017
7114
  this.treeExpandedMaps = treeTempExpandedMaps;
7018
- return Promise.all(result).then(this.recalculate);
7115
+ return Promise.all(result).then(() => {
7116
+ return this.recalculate();
7117
+ });
7019
7118
  },
7020
7119
  /**
7021
7120
  * 虚拟树的展开与收起
@@ -7026,9 +7125,14 @@ const Methods = {
7026
7125
  handleVirtualTreeExpand(rows, expanded) {
7027
7126
  return this.handleBaseTreeExpand(rows, expanded).then(() => {
7028
7127
  this.handleVirtualTreeToList();
7029
- return this.handleTableData();
7128
+ this.handleTableData();
7129
+ this.updateTreeDataIndex();
7030
7130
  }).then(() => {
7031
7131
  return this.recalculate();
7132
+ }).then(() => {
7133
+ setTimeout(() => {
7134
+ this.updateCellAreas();
7135
+ }, 30);
7032
7136
  });
7033
7137
  },
7034
7138
  /**