vxe-table 3.23.0-beta.7 → 3.23.1

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 (44) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/style.css +1 -1
  4. package/es/style.min.css +1 -1
  5. package/es/table/module/export/mixin.js +10 -9
  6. package/es/table/src/methods.js +7 -6
  7. package/es/table/src/util.js +2 -2
  8. package/es/table/style.css +3 -1
  9. package/es/table/style.min.css +1 -1
  10. package/es/ui/index.js +1 -1
  11. package/es/ui/src/log.js +1 -1
  12. package/es/vxe-table/style.css +3 -1
  13. package/es/vxe-table/style.min.css +1 -1
  14. package/lib/index.css +1 -1
  15. package/lib/index.min.css +1 -1
  16. package/lib/index.umd.js +28 -18
  17. package/lib/index.umd.min.js +1 -1
  18. package/lib/style.css +1 -1
  19. package/lib/style.min.css +1 -1
  20. package/lib/table/module/export/mixin.js +19 -9
  21. package/lib/table/module/export/mixin.min.js +1 -1
  22. package/lib/table/src/methods.js +5 -5
  23. package/lib/table/src/methods.min.js +1 -1
  24. package/lib/table/src/util.js +2 -2
  25. package/lib/table/src/util.min.js +1 -1
  26. package/lib/table/style/style.css +3 -1
  27. package/lib/table/style/style.min.css +1 -1
  28. package/lib/ui/index.js +1 -1
  29. package/lib/ui/index.min.js +1 -1
  30. package/lib/ui/src/log.js +1 -1
  31. package/lib/ui/src/log.min.js +1 -1
  32. package/lib/vxe-table/style/style.css +3 -1
  33. package/lib/vxe-table/style/style.min.css +1 -1
  34. package/package.json +2 -2
  35. package/packages/table/module/export/mixin.ts +10 -9
  36. package/packages/table/src/methods.ts +7 -6
  37. package/packages/table/src/util.ts +2 -2
  38. package/styles/components/table.scss +3 -1
  39. /package/es/{iconfont.1787383485465.ttf → iconfont.1787542588120.ttf} +0 -0
  40. /package/es/{iconfont.1787383485465.woff → iconfont.1787542588120.woff} +0 -0
  41. /package/es/{iconfont.1787383485465.woff2 → iconfont.1787542588120.woff2} +0 -0
  42. /package/lib/{iconfont.1787383485465.ttf → iconfont.1787542588120.ttf} +0 -0
  43. /package/lib/{iconfont.1787383485465.woff → iconfont.1787542588120.woff} +0 -0
  44. /package/lib/{iconfont.1787383485465.woff2 → iconfont.1787542588120.woff2} +0 -0
@@ -1223,7 +1223,8 @@ function handleImport($xeTable, content, opts) {
1223
1223
  });
1224
1224
  if (_importReject) {
1225
1225
  _importReject({
1226
- status: false
1226
+ status: false,
1227
+ msg: 'field mismatching'
1227
1228
  });
1228
1229
  }
1229
1230
  }
@@ -1252,7 +1253,8 @@ function handleFileImport($xeTable, file, opts) {
1252
1253
  });
1253
1254
  }
1254
1255
  const params = {
1255
- status: false
1256
+ status: false,
1257
+ msg: 'type error'
1256
1258
  };
1257
1259
  return Promise.reject(params);
1258
1260
  }
@@ -1309,7 +1311,8 @@ function handleFileImport($xeTable, file, opts) {
1309
1311
  reader.onerror = () => {
1310
1312
  errLog('vxe.error.notType', [type]);
1311
1313
  _importReject({
1312
- status: false
1314
+ status: false,
1315
+ msg: 'reading file error'
1313
1316
  });
1314
1317
  };
1315
1318
  reader.onload = e => {
@@ -1322,7 +1325,8 @@ function handleFileImport($xeTable, file, opts) {
1322
1325
  // 不支持的浏览器
1323
1326
  errLog('vxe.error.notExp');
1324
1327
  _importResolve({
1325
- status: true
1328
+ status: false,
1329
+ msg: 'unsupported browser'
1326
1330
  });
1327
1331
  }
1328
1332
  });
@@ -1868,7 +1872,8 @@ var _default = exports.default = {
1868
1872
  warnLog('vxe.error.reqPlugin', [3, 'plugin-export-xlsx']);
1869
1873
  }
1870
1874
  const params = {
1871
- status: false
1875
+ status: false,
1876
+ msg: 'type error'
1872
1877
  };
1873
1878
  return Promise.reject(params);
1874
1879
  }
@@ -1883,7 +1888,8 @@ var _default = exports.default = {
1883
1888
  if (_xeUtils.default.isBoolean(beRest)) {
1884
1889
  if (!beRest) {
1885
1890
  const params = {
1886
- status: false
1891
+ status: false,
1892
+ msg: 'before prevent'
1887
1893
  };
1888
1894
  return Promise.reject(params);
1889
1895
  }
@@ -2022,7 +2028,8 @@ var _default = exports.default = {
2022
2028
  if (_xeUtils.default.isBoolean(biRest)) {
2023
2029
  if (!biRest) {
2024
2030
  const params = {
2025
- status: false
2031
+ status: false,
2032
+ mas: 'before prevent'
2026
2033
  };
2027
2034
  return Promise.reject(params);
2028
2035
  }
@@ -2052,7 +2059,8 @@ var _default = exports.default = {
2052
2059
  if (_xeUtils.default.isBoolean(biRest)) {
2053
2060
  if (!biRest) {
2054
2061
  const params = {
2055
- status: false
2062
+ status: false,
2063
+ mas: 'before prevent'
2056
2064
  };
2057
2065
  return Promise.reject(params);
2058
2066
  }
@@ -2210,8 +2218,10 @@ var _default = exports.default = {
2210
2218
  }));
2211
2219
  }
2212
2220
  } else {
2221
+ errLog('vxe.error.reqComp', ['vxe-print']);
2213
2222
  const e = {
2214
- status: false
2223
+ status: false,
2224
+ msg: 'print not exist'
2215
2225
  };
2216
2226
  reject(e);
2217
2227
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function getSeq(e,t,l,o,r,a){var i=e.computeSeqOpts.seqMethod||r.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),_rowIndex:e.getVTRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),_columnIndex:e.getVTColumnIndex(r),$columnIndex:a}):t}function defaultFilterExportColumn(e){return!!e.field||-1===["seq","checkbox","radio"].indexOf(e.type||"")}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(F,M,m,e){let{isTreeAllExpanded:i,isRowGroupAllExpanded:d,mode:k}=M;var t=F.treeConfig,l=F.isRowGroupStatus;let U=F.fullColumnFieldData,I=F.computeRadioOpts,j=F.computeCheckboxOpts;var o=F.computeTreeOpts;let L=F.computeColumnOpts;var r=F.computeAggregateOpts;htmlCellElem=htmlCellElem||document.createElement("div");let g=(0,_util.createHandleGetRowId)(F).handleGetRowId;if(l){let{mode:_,showTotal:$,totalMethod:y,countFields:C,contentMethod:w,formatValuesMethod:E,mapChildrenField:T}=r,i=[],n={},s={};return _xeUtils.default.eachTree(e,(e,f,t,b,l,o)=>{let v=e._row||e;var r=g(v);if(!s[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(d||!e||n[l]&&F.isRowExpandByRow(e)){var a=T&&v[T]&&v[T].length;let x={_row:v,_level:o.length-1,_hasChild:a,_expand:a&&F.isRowExpandByRow(v)};m.forEach((e,t)=>{var{field:l,editRender:o,cellRender:r,aggFunc:a,rowGroupNode:i}=e;let n="";var s,d,c,u,p,h,o=o||r;let m=e.exportMethod||L.exportMethod;if(m=(m=!m&&o&&o.name&&(r=renderer.get(o.name))?r.tableExportMethod||r.exportMethod:m)||L.exportMethod)n=m({$table:F,row:v,column:e,options:M});else switch(e.type){case"seq":var g=b.map((e,t)=>t%2==0?Number(e)+1:".").join("");n="all"===k?g:getSeq(F,g,v,f,e,t);break;case"checkbox":n=toBooleanValue(F.isCheckedByCheckboxRow(v)),x._checkboxLabel=j.labelField?_xeUtils.default.get(v,j.labelField):"",x._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:v});break;case"radio":n=toBooleanValue(F.isCheckedByRadioRow(v)),x._radioLabel=I.labelField?_xeUtils.default.get(v,I.labelField):"",x._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:v});break;default:l&&v.isAggregate?(s=(s=(g=v).aggData)?s[l]:null,u=g.groupField,d=g.groupContent,h=T&&g[T]||[],c=g.childCount,p=U[u]||{},u={$table:F,groupField:u,groupColumn:p?p.column:null,column:e,groupValue:d,childList:h,childCount:c,aggValue:null,children:h,totalValue:c},("column"===_?l===g.groupField:i)?(n=d,w&&(n=""+w(u)),$&&(n=getI18n("vxe.table.rowGroupContentTotal",[n,y?y(u):c,c]))):F.getPivotTableAggregateCellAggValue?(p={$table:F,row:v,column:e},n=F.getPivotTableAggregateCellAggValue(p)):(!0===a||C&&C.includes(l))&&(n=s?s.value:c,u.aggValue=n,E)&&(n=E(u))):M.original?n=(0,_util.getCellValue)(v,e):(n=F.getCellLabel(v,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(h=F.getCellElement(v,e))&&!(0,_dom.hasClass)(h,"is--progress")&&(n=h.innerText.trim()))}x[e.id]=toStringValue(n)}),s[r]=!0,l&&(n[l]=!0),i.push(Object.assign(x,v))}}},{children:T}),i}if(t){let c=o.children||o.childrenField,u=[],p={},h={};return _xeUtils.default.eachTree(e,(e,n,t,s,l,o)=>{let d=e._row||e;var r=g(d);if(!h[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(i||!e||p[l]&&F.isTreeExpandByRow(e)){var a=d[c]&&d[c].length;let i={_row:d,_level:o.length-1,_hasChild:a,_expand:a&&F.isTreeExpandByRow(d)};m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)||L.exportMethod)l=r({$table:F,row:d,column:e,options:M});else switch(e.type){case"seq":var a=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===k?a:getSeq(F,a,d,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(d)),i._checkboxLabel=j.labelField?_xeUtils.default.get(d,j.labelField):"",i._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:d});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(d)),i._radioLabel=I.labelField?_xeUtils.default.get(d,I.labelField):"",i._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:d});break;default:M.original?l=(0,_util.getCellValue)(d,e):(l=F.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(d,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}i[e.id]=toStringValue(l)}),h[r]=!0,l&&(p[l]=!0),u.push(Object.assign(i,d))}}},{children:c}),u}return e.map((i,n)=>{let s={_row:i};return m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:F,row:i,column:e,options:M});else switch(e.type){case"seq":var a=n+1;l="all"===k?a:getSeq(F,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(i)),s._checkboxLabel=j.labelField?_xeUtils.default.get(i,j.labelField):"",s._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:i});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(i)),s._radioLabel=I.labelField?_xeUtils.default.get(i,I.labelField):"",s._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:i});break;default:M.original?l=(0,_util.getCellValue)(i,e):(l=F.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(l,e){let o=l.$xeGrid,r=l.$xeGantt,{columns:t,dataFilterMethod:a}=e,i=e.data;return a&&(i=i.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,i)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.isTitle?e.getHeaderCellLabel(l):l.field)||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,a=o.editRender||o.cellRender;let i=o.footerExportMethod;return(i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||r.footerExportMethod)?(a=e.getVTColumnIndex(o),i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:o,options:t})):e.getFooterCellLabel(l,o)}function getFooterData(l,e,t){let o=l.$xeGrid,r=l.$xeGantt,a=e.footerFilterMethod;return a?t.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:_xeUtils.default.eqNull(e)?"":e}function toCsv(l,o,e,t){var r=l;let a=csvBOM;return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),a}function toTxt(l,o,e,t){var r=l;let a="";return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function getCustomColKey(e){return`${e.field||""}:`+(e.type||"")}function toHtml(c,u,e,t){var l=c;let{id:d,border:o,treeConfig:r,headerAlign:a,align:p,footerAlign:h,showOverflow:m,showHeaderOverflow:i}=c,{isAllSelected:n,isIndeterminate:s}=l,{mergeBodyCellMaps:g,mergeFooterCellMaps:x}=c,f=c.computeTreeOpts,{print:b,widthMode:v,isHeader:_,isFooter:$,isColgroup:y,isMerge:C,colgroups:w,_columnConfs:E,original:T}=u,F="auto"===v,M="scale"===v,k=!F&&!M,U={},I=(E&&E.forEach(e=>{(0,_util.isColumnInfo)(e)||(e.field||e.type)&&e.width&&(U[getCustomColKey(e)]=e.width)}),{}),j={};if(b){let r=0;e.forEach(e=>{r+=e.renderWidth}),w&&w.forEach(e=>{e.forEach(o=>{if(o.childNodes&&o.childNodes.length){let t=0,l=0;_xeUtils.default.eachTree([o],e=>{e.childNodes&&o.childNodes.length||l++;e=j[e.id];t+=e||0},{children:"childNodes"});var e=t-l;I[o.id]=e,j[o.id]=_xeUtils.default.floor(e/r*180,2)}})}),e.forEach(e=>{var t=e.renderWidth;e.width&&(I[e.id]=t),j[e.id]=_xeUtils.default.floor(t/r*180,2)})}let L=e=>{var t=getCustomColKey(e),t=U[t];return t?"width:"+(0,_dom.toCssUnit)(t):F||k?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""},O="check-all",V=[`<table class="${["vxe-table","border--"+toTableBorder(o),b?"is--print":"",F?"is--auto-width":"",M?"is--scale-width":"",k?"is--default-width":"",_?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>{return`<col style="${e=e,t=getCustomColKey(e),t=U[t],t?"width:"+(0,_dom.toCssUnit)(t):F?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""}">`;var t}).join("")}</colgroup>`];_&&(V.push("<thead>"),y&&!T?w.forEach(e=>{V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),V.push("</thead>")),t.length&&(V.push("<tbody>"),r?t.forEach(r=>{V.push("<tr>"+e.map(t=>{var e=t.align||p,l=hasEllipsis(c,t,"showOverflow",m)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{V.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||p,o=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],t=s[t];let r=1,a=1;if(C){var i=c.getVTRowIndex(s._row),n=c.getVTColumnIndex(e),i=g[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return l&&o.push("col--"+l),"radio"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="radio" name="radio_${d}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}" title="${t}"><div style="${L(e)}">${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),V.push("</tbody>")),$&&(t=l.footerTableData,(l=getFooterData(c,u,t)).length)&&(V.push("<tfoot>"),l.forEach((s,d)=>{V.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||h||p,l=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],o=getFooterCellValue(c,u,s,e);let r=1,a=1;if(C){var i=d,n=c.getVTColumnIndex(e),i=x[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return t&&l.push("col--"+t),`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div style="${L(e)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),V.push("</tfoot>"));t=!n&&s?`<script>(function(){var a=document.querySelector(".${O}");if(a){a.indeterminate=true}})()</script>`:"";return V.push("</table>",t),F?V.join(""):(0,_util2.createHtmlPage)(u,V.join(""))}function toXML(l,o,e,t){var r=l;let a=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{a+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function downloadFile(e,t,l){var{filename:o,type:r,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,a=l.$xeGantt,{remote:i,columns:n,colgroups:s,exportMethod:d,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r,$gantt:a};t(d?d(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:n,colgroups:s,datas:e},()=>downloadFile(l,o,getContent(l,o,n,e))))}}).then(e=>(clearColumnConvert(n),o.print||t&&t({status:!0,options:o,$table:l,$grid:r,$gantt:a}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(n),o.print||t&&t({status:!1,options:o,$table:l,$grid:r,$gantt:a});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,a){e=e.split(enterSymbol);let i=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),i.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:i}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(o,e,l){let{tableFullColumn:t,_importResolve:r,_importReject:a}=o,i={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=o.getHeaderCellLabel(e);t&&(n[t]=e),l&&(s[l]=e)});var d={fieldMaps:n,titleMaps:s};switch(l.type){case"csv":i=parseCsv(d,e);break;case"txt":i=parseTxt(d,e);break;case"html":i=parseHTML(d,e);break;case"xml":i=parseXML(d,e)}let{fields:c,rows:u}=i;c.some(e=>n[e]||s[e])?o.createData(u).then(e=>{let t;return t="insert"===l.mode||"insertBottom"===l.mode?o.insertAt(e,-1):"insertTop"===l.mode?o.insert(e):o.reloadData(e),!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(a,i,n){let s=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(i);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),a._importResolve=null,a._importReject=null},o=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{errLog("vxe.error.notType",[c]),o({status:!1})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else errLog("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:n,$table:a})}).catch(e=>(t&&t({status:!1,options:n,$table:a}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o,r,a){var i=t.field;return!r[i]&&(l?!!o[i]:!!a[i]||(e.original?!!i:defaultFilterExportColumn(t)))}function handleExportAndPrint(s,e,t){var l=s.$xeGrid,o=s.$xeGantt,r=l||o,{treeConfig:a,showHeader:i,showFooter:n}=s,{initStore:d,isGroup:c,rowGroupList:u,footerTableData:p,exportStore:h,exportParams:m}=s,{collectColumn:g,mergeBodyList:x,mergeFooterList:f}=s,b=s.computeExportOpts,a=!!a,u=0<u.length,v=s.computeCustomOpts,_=s.getCheckboxRecords(),r=r?r.computeProxyOpts:{},p=!!p.length,x=!(!x.length&&!f.length);let $=Object.assign({message:!0,isHeader:i,isTitle:i,isFooter:n,isColgroup:c,isMerge:x,useStyle:!0,current:"current",modes:(r.ajax&&r.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);_xeUtils.default.isBoolean($.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),$.isTreeAllExpanded=$.isAllExpand);f=$.types||_xeUtils.default.keys(b._typeMaps),i=$.modes||[];let y=v.checkMethod;n=g.slice(0);let{columns:C,excludeFields:w,includeFields:E,extraFields:T}=$;r=f.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});let F={},M=(w&&w.length&&w.forEach(e=>{F[e]=1}),{}),k=(E&&E.length&&E.forEach(e=>{M[e]=1}),{}),{filename:U,sheetName:I,mode:j,type:L}=(T&&T.forEach(e=>{k[e]=1}),_xeUtils.default.eachTree(n,(e,t,l,o,r)=>{var a=e.children&&0<e.children.length;let i=!1;var n=k[e.field];i=C?handleFilterColumns($,e,C):w||E?handleFilterFields($,e,E,M,F,k):!!n||e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=r&&r.disabled||!!y&&!y({$table:s,column:e})}),h.columns=n,h.typeList=r,h.modeList=e,h.hasFooter=p,h.hasMerge=x,h.hasTree=a,h.hasRowGroup=u,h.isPrint=!!t,h.hasColgroup=c,h.visible=!0,Object.assign(m,{mode:_.length?"selected":"current"},$),m);return U&&(_xeUtils.default.isFunction(U)?m.filename=U({options:$,$table:s,$grid:l,$gantt:o}):m.filename=""+U),I&&(_xeUtils.default.isFunction(I)?m.sheetName=I({options:$,$table:s,$grid:l,$gantt:o}):m.sheetName=""+I),e.some(e=>e.value===j)||(m.mode=e[0].value),r.some(e=>e.value===L)||(m.type=r[0].value),m.widthMode||(m.widthMode=""),d.export=!0,s.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(c){let u=this;var e=u,t=u,l=u;let p=u.$xeGrid,h=u.$xeGantt;var o=p||h,{treeConfig:e,showHeader:r,showFooter:m}=e,t=t.isGroup;let{tableFullColumn:a,afterFullData:i,afterTreeFullData:n,collectColumn:s,mergeBodyList:R,mergeFooterList:B}=l;var l=u.computeExportOpts,D=u.computeTreeOpts;let d=o?o.computeProxyOpts:{};var g=!(!R.length&&!B.length);let x=Object.assign({message:!0,isHeader:r,isTitle:r,isFooter:m,isColgroup:t,isMerge:g,useStyle:!0,current:"current",modes:(d.ajax&&d.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},l,c),{filename:f,sheetName:b,type:v,mode:_,columns:$,columnFilterMethod:y,beforeExportMethod:C,includeFields:w,excludeFields:E,extraFields:T}=(_xeUtils.default.isBoolean(x.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),x.isTreeAllExpanded=x.isAllExpand),x),F=[],M=u.getCheckboxRecords(),k=(_=_||(M.length?"selected":"current"),{}),U=(E&&E.length&&E.forEach(e=>{k[e]=1}),{}),I=(w&&w.length&&w.forEach(e=>{U[e]=1}),{}),j=(T&&T.forEach(e=>{I[e]=1}),!1),L=[],O=(L=$?(j=!0,_xeUtils.default.searchTree($,()=>!0,{children:"children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(s,e=>{var t=e.children&&0<e.children.length;let l=!1;var o=I[e.field];return l=$?handleFilterColumns(x,e,$):E||w?handleFilterFields(x,e,w,U,k,I):!!o||e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0}),Object.assign({},x,{filename:"",sheetName:"",_columnConfs:$})),V=(j||y||(y=({column:e})=>handleFilterFields(O,e,w,U,k,I),O.columnFilterMethod=y),F=L?(O._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(L,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=u.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=u.getColumnById(r):l&&t?o=a.find(e=>e.field===l&&e.type===t):l?o=u.getColumnByField(l):t&&(o=a.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(t?s:a,(e,t)=>e.visible&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(F,e=>{e.children&&e.children.length||V.push(e)},{children:"childNodes"}),O.columns=V,O.colgroups=convertToRows(F),f&&(_xeUtils.default.isFunction(f)?O.filename=f({options:x,$table:u,$grid:p,$gantt:h}):O.filename=""+f),O.filename||(O.filename=getI18n(O.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),b&&(_xeUtils.default.isFunction(b)?O.sheetName=b({options:x,$table:u,$grid:p,$gantt:h}):O.sheetName=""+b),O.sheetName||(O.sheetName=document.title||""),!O.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(l._typeMaps),v))return errLog("vxe.error.notType",[v]),["xlsx","pdf"].includes(v)&&warnLog("vxe.error.reqPlugin",[3,"plugin-export-xlsx"]),Promise.reject({status:!1});if(!O.print&&C){r=C({options:O,$table:u,$grid:p,$gantt:h});if(_xeUtils.default.isBoolean(r)){if(!r)return Promise.reject({status:!1})}else warnLog("vxe.error.returnErr",["beforeExportMethod","boolean",r])}if(O.data)O._isCustomData=!0;else if(O.data=[],"selected"===_)-1<["html","pdf"].indexOf(v)&&e?O.data=_xeUtils.default.searchTree(u.getTableData().fullData,e=>-1<u.findRowIndexOf(M,e),Object.assign({},D,{data:"_row"})):O.data=M;else if("all"===_){if(o||errLog("vxe.error.errProp",["all","mode=current,selected"]),o&&!O.remote){m=o.reactData;let e=o.computeProxyOpts;g=m.sortData;let{beforeQueryAll:l,afterQueryAll:r,ajax:t={}}=e,a=e.response||e.props||{};c=t.beforeQueryAll;let i=t.queryAll,n=t.afterQueryAll,s=t.queryAllSuccess,d=t.queryAllError;if(i||errLog("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),i){let o={$table:u,$grid:p,$gantt:h,sort:g.length?g[0]:{},sorts:g,filters:m.filterData,form:m.formData,options:O},t=()=>Promise.resolve((l||i)(o)).then(t=>{if(n)n(Object.assign(Object.assign({},o),{response:t,status:"success"}));else{var l=a.list;let e=[];l?e=_xeUtils.default.isFunction(l)?l({data:t,$table:u,$grid:p,$gantt:h}):_xeUtils.default.isArray(t)?t:_xeUtils.default.get(t,l):_xeUtils.default.isArray(t)&&(e=t),O.data=e,r&&r(Object.assign(Object.assign({},o),{response:t}))}return s&&s(Object.assign(Object.assign({},o),{response:t})),handleExport(u,O)}).catch(e=>{n&&n(Object.assign(Object.assign({},o),{response:e,status:"error"})),d&&d(Object.assign(Object.assign({},o),{response:e}))});return c?Promise.resolve(c(o)).then(e=>{if(!1!==e)return t()}):t()}}}else"current"===_&&(O.data=e?n:i);return handleExport(u,O)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;if(l){l=l({options:t,$table:this});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return handleFileImport(this,e,t)},_importData(e){let t=this;var l=t.computeImportOpts;let o=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:r,afterImportMethod:a}=o;if(r){l=r({options:o,$table:t});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return _ui.VxeUI.readFile(o).catch(e=>(a&&a({status:!1,options:o,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,o)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this,o=l.$xeGrid,r=l.$xeGantt;var t=l.computePrintOpts;let a=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});t=a.sheetName;let i="",n=(i=(i=t?_xeUtils.default.isFunction(t)?t({options:a,$table:l,$grid:o,$gantt:r}):""+t:i)||document.title||"",a.beforePrintMethod),s=a.printMethod,d=a.html||a.content;return new Promise((e,t)=>{_ui.VxeUI.print?d?e(_ui.VxeUI.print({title:i,html:d,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0})):e(l.exportData(a).then(({content:e})=>_ui.VxeUI.print({title:i,html:e,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0}))):t({status:!1})})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var{treeConfig:t,importConfig:l}=this;let{initStore:o,importStore:r,importParams:a}=this;var i=this.computeImportOpts,i=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(i._typeMaps),modes:["insertTop","covering"]},i,e),e=i.types||[],n=i.modes||[];!t?(l||errLog("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=n.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,i),l.some(e=>e.value===a.mode)||(a.mode=l[0].value),o.import=!0):i.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.computeExportOpts,t=Object.assign({message:!0,types:_xeUtils.default.keys(t._typeMaps)},t,e);return this.exportConfig||errLog("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,t)},_closePrint:handleCloseExport,_openPrint(e){var t=this.computePrintOpts,t=Object.assign({message:!0},t,e);return this.printConfig||errLog("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,t,!0)}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function getSeq(e,t,l,o,r,a){var i=e.computeSeqOpts.seqMethod||r.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),_rowIndex:e.getVTRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),_columnIndex:e.getVTColumnIndex(r),$columnIndex:a}):t}function defaultFilterExportColumn(e){return!!e.field||-1===["seq","checkbox","radio"].indexOf(e.type||"")}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(F,M,m,e){let{isTreeAllExpanded:i,isRowGroupAllExpanded:d,mode:k}=M;var t=F.treeConfig,l=F.isRowGroupStatus;let U=F.fullColumnFieldData,I=F.computeRadioOpts,j=F.computeCheckboxOpts;var o=F.computeTreeOpts;let L=F.computeColumnOpts;var r=F.computeAggregateOpts;htmlCellElem=htmlCellElem||document.createElement("div");let g=(0,_util.createHandleGetRowId)(F).handleGetRowId;if(l){let{mode:_,showTotal:$,totalMethod:y,countFields:C,contentMethod:w,formatValuesMethod:E,mapChildrenField:T}=r,i=[],n={},s={};return _xeUtils.default.eachTree(e,(e,f,t,b,l,o)=>{let v=e._row||e;var r=g(v);if(!s[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(d||!e||n[l]&&F.isRowExpandByRow(e)){var a=T&&v[T]&&v[T].length;let x={_row:v,_level:o.length-1,_hasChild:a,_expand:a&&F.isRowExpandByRow(v)};m.forEach((e,t)=>{var{field:l,editRender:o,cellRender:r,aggFunc:a,rowGroupNode:i}=e;let n="";var s,d,c,u,p,h,o=o||r;let m=e.exportMethod||L.exportMethod;if(m=(m=!m&&o&&o.name&&(r=renderer.get(o.name))?r.tableExportMethod||r.exportMethod:m)||L.exportMethod)n=m({$table:F,row:v,column:e,options:M});else switch(e.type){case"seq":var g=b.map((e,t)=>t%2==0?Number(e)+1:".").join("");n="all"===k?g:getSeq(F,g,v,f,e,t);break;case"checkbox":n=toBooleanValue(F.isCheckedByCheckboxRow(v)),x._checkboxLabel=j.labelField?_xeUtils.default.get(v,j.labelField):"",x._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:v});break;case"radio":n=toBooleanValue(F.isCheckedByRadioRow(v)),x._radioLabel=I.labelField?_xeUtils.default.get(v,I.labelField):"",x._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:v});break;default:l&&v.isAggregate?(s=(s=(g=v).aggData)?s[l]:null,u=g.groupField,d=g.groupContent,h=T&&g[T]||[],c=g.childCount,p=U[u]||{},u={$table:F,groupField:u,groupColumn:p?p.column:null,column:e,groupValue:d,childList:h,childCount:c,aggValue:null,children:h,totalValue:c},("column"===_?l===g.groupField:i)?(n=d,w&&(n=""+w(u)),$&&(n=getI18n("vxe.table.rowGroupContentTotal",[n,y?y(u):c,c]))):F.getPivotTableAggregateCellAggValue?(p={$table:F,row:v,column:e},n=F.getPivotTableAggregateCellAggValue(p)):(!0===a||C&&C.includes(l))&&(n=s?s.value:c,u.aggValue=n,E)&&(n=E(u))):M.original?n=(0,_util.getCellValue)(v,e):(n=F.getCellLabel(v,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(h=F.getCellElement(v,e))&&!(0,_dom.hasClass)(h,"is--progress")&&(n=h.innerText.trim()))}x[e.id]=toStringValue(n)}),s[r]=!0,l&&(n[l]=!0),i.push(Object.assign(x,v))}}},{children:T}),i}if(t){let c=o.children||o.childrenField,u=[],p={},h={};return _xeUtils.default.eachTree(e,(e,n,t,s,l,o)=>{let d=e._row||e;var r=g(d);if(!h[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(i||!e||p[l]&&F.isTreeExpandByRow(e)){var a=d[c]&&d[c].length;let i={_row:d,_level:o.length-1,_hasChild:a,_expand:a&&F.isTreeExpandByRow(d)};m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)||L.exportMethod)l=r({$table:F,row:d,column:e,options:M});else switch(e.type){case"seq":var a=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===k?a:getSeq(F,a,d,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(d)),i._checkboxLabel=j.labelField?_xeUtils.default.get(d,j.labelField):"",i._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:d});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(d)),i._radioLabel=I.labelField?_xeUtils.default.get(d,I.labelField):"",i._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:d});break;default:M.original?l=(0,_util.getCellValue)(d,e):(l=F.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(d,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}i[e.id]=toStringValue(l)}),h[r]=!0,l&&(p[l]=!0),u.push(Object.assign(i,d))}}},{children:c}),u}return e.map((i,n)=>{let s={_row:i};return m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:F,row:i,column:e,options:M});else switch(e.type){case"seq":var a=n+1;l="all"===k?a:getSeq(F,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(i)),s._checkboxLabel=j.labelField?_xeUtils.default.get(i,j.labelField):"",s._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:i});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(i)),s._radioLabel=I.labelField?_xeUtils.default.get(i,I.labelField):"",s._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:i});break;default:M.original?l=(0,_util.getCellValue)(i,e):(l=F.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(l,e){let o=l.$xeGrid,r=l.$xeGantt,{columns:t,dataFilterMethod:a}=e,i=e.data;return a&&(i=i.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,i)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.isTitle?e.getHeaderCellLabel(l):l.field)||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,a=o.editRender||o.cellRender;let i=o.footerExportMethod;return(i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||r.footerExportMethod)?(a=e.getVTColumnIndex(o),i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:o,options:t})):e.getFooterCellLabel(l,o)}function getFooterData(l,e,t){let o=l.$xeGrid,r=l.$xeGantt,a=e.footerFilterMethod;return a?t.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:_xeUtils.default.eqNull(e)?"":e}function toCsv(l,o,e,t){var r=l;let a=csvBOM;return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),a}function toTxt(l,o,e,t){var r=l;let a="";return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function getCustomColKey(e){return`${e.field||""}:`+(e.type||"")}function toHtml(c,u,e,t){var l=c;let{id:d,border:o,treeConfig:r,headerAlign:a,align:p,footerAlign:h,showOverflow:m,showHeaderOverflow:i}=c,{isAllSelected:n,isIndeterminate:s}=l,{mergeBodyCellMaps:g,mergeFooterCellMaps:x}=c,f=c.computeTreeOpts,{print:b,widthMode:v,isHeader:_,isFooter:$,isColgroup:y,isMerge:C,colgroups:w,_columnConfs:E,original:T}=u,F="auto"===v,M="scale"===v,k=!F&&!M,U={},I=(E&&E.forEach(e=>{(0,_util.isColumnInfo)(e)||(e.field||e.type)&&e.width&&(U[getCustomColKey(e)]=e.width)}),{}),j={};if(b){let r=0;e.forEach(e=>{r+=e.renderWidth}),w&&w.forEach(e=>{e.forEach(o=>{if(o.childNodes&&o.childNodes.length){let t=0,l=0;_xeUtils.default.eachTree([o],e=>{e.childNodes&&o.childNodes.length||l++;e=j[e.id];t+=e||0},{children:"childNodes"});var e=t-l;I[o.id]=e,j[o.id]=_xeUtils.default.floor(e/r*180,2)}})}),e.forEach(e=>{var t=e.renderWidth;e.width&&(I[e.id]=t),j[e.id]=_xeUtils.default.floor(t/r*180,2)})}let L=e=>{var t=getCustomColKey(e),t=U[t];return t?"width:"+(0,_dom.toCssUnit)(t):F||k?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""},O="check-all",V=[`<table class="${["vxe-table","border--"+toTableBorder(o),b?"is--print":"",F?"is--auto-width":"",M?"is--scale-width":"",k?"is--default-width":"",_?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>{return`<col style="${e=e,t=getCustomColKey(e),t=U[t],t?"width:"+(0,_dom.toCssUnit)(t):F?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""}">`;var t}).join("")}</colgroup>`];_&&(V.push("<thead>"),y&&!T?w.forEach(e=>{V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):V.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div style="${L(e)}"><input type="checkbox" class="${O}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),V.push("</thead>")),t.length&&(V.push("<tbody>"),r?t.forEach(r=>{V.push("<tr>"+e.map(t=>{var e=t.align||p,l=hasEllipsis(c,t,"showOverflow",m)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{V.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||p,o=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],t=s[t];let r=1,a=1;if(C){var i=c.getVTRowIndex(s._row),n=c.getVTColumnIndex(e),i=g[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return l&&o.push("col--"+l),"radio"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="radio" name="radio_${d}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}" title="${t}"><div style="${L(e)}">${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),V.push("</tbody>")),$&&(t=l.footerTableData,(l=getFooterData(c,u,t)).length)&&(V.push("<tfoot>"),l.forEach((s,d)=>{V.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||h||p,l=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],o=getFooterCellValue(c,u,s,e);let r=1,a=1;if(C){var i=d,n=c.getVTColumnIndex(e),i=x[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return t&&l.push("col--"+t),`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div style="${L(e)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),V.push("</tfoot>"));t=!n&&s?`<script>(function(){var a=document.querySelector(".${O}");if(a){a.indeterminate=true}})()</script>`:"";return V.push("</table>",t),F?V.join(""):(0,_util2.createHtmlPage)(u,V.join(""))}function toXML(l,o,e,t){var r=l;let a=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{a+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function downloadFile(e,t,l){var{filename:o,type:r,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,a=l.$xeGantt,{remote:i,columns:n,colgroups:s,exportMethod:d,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r,$gantt:a};t(d?d(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:n,colgroups:s,datas:e},()=>downloadFile(l,o,getContent(l,o,n,e))))}}).then(e=>(clearColumnConvert(n),o.print||t&&t({status:!0,options:o,$table:l,$grid:r,$gantt:a}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(n),o.print||t&&t({status:!1,options:o,$table:l,$grid:r,$gantt:a});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,a){e=e.split(enterSymbol);let i=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),i.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:i}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(o,e,l){let{tableFullColumn:t,_importResolve:r,_importReject:a}=o,i={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=o.getHeaderCellLabel(e);t&&(n[t]=e),l&&(s[l]=e)});var d={fieldMaps:n,titleMaps:s};switch(l.type){case"csv":i=parseCsv(d,e);break;case"txt":i=parseTxt(d,e);break;case"html":i=parseHTML(d,e);break;case"xml":i=parseXML(d,e)}let{fields:c,rows:u}=i;c.some(e=>n[e]||s[e])?o.createData(u).then(e=>{let t;return t="insert"===l.mode||"insertBottom"===l.mode?o.insertAt(e,-1):"insertTop"===l.mode?o.insert(e):o.reloadData(e),!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1,msg:"field mismatching"})}function handleFileImport(a,i,n){let s=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(i);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),a._importResolve=null,a._importReject=null},o=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{errLog("vxe.error.notType",[c]),o({status:!1,msg:"reading file error"})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else errLog("vxe.error.notExp"),e({status:!1,msg:"unsupported browser"})}).then(()=>{t&&t({status:!0,options:n,$table:a})}).catch(e=>(t&&t({status:!1,options:n,$table:a}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1,msg:"type error"}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o,r,a){var i=t.field;return!r[i]&&(l?!!o[i]:!!a[i]||(e.original?!!i:defaultFilterExportColumn(t)))}function handleExportAndPrint(s,e,t){var l=s.$xeGrid,o=s.$xeGantt,r=l||o,{treeConfig:a,showHeader:i,showFooter:n}=s,{initStore:d,isGroup:c,rowGroupList:u,footerTableData:p,exportStore:h,exportParams:m}=s,{collectColumn:g,mergeBodyList:x,mergeFooterList:f}=s,b=s.computeExportOpts,a=!!a,u=0<u.length,v=s.computeCustomOpts,_=s.getCheckboxRecords(),r=r?r.computeProxyOpts:{},p=!!p.length,x=!(!x.length&&!f.length);let $=Object.assign({message:!0,isHeader:i,isTitle:i,isFooter:n,isColgroup:c,isMerge:x,useStyle:!0,current:"current",modes:(r.ajax&&r.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);_xeUtils.default.isBoolean($.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),$.isTreeAllExpanded=$.isAllExpand);f=$.types||_xeUtils.default.keys(b._typeMaps),i=$.modes||[];let y=v.checkMethod;n=g.slice(0);let{columns:C,excludeFields:w,includeFields:E,extraFields:T}=$;r=f.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});let F={},M=(w&&w.length&&w.forEach(e=>{F[e]=1}),{}),k=(E&&E.length&&E.forEach(e=>{M[e]=1}),{}),{filename:U,sheetName:I,mode:j,type:L}=(T&&T.forEach(e=>{k[e]=1}),_xeUtils.default.eachTree(n,(e,t,l,o,r)=>{var a=e.children&&0<e.children.length;let i=!1;var n=k[e.field];i=C?handleFilterColumns($,e,C):w||E?handleFilterFields($,e,E,M,F,k):!!n||e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=r&&r.disabled||!!y&&!y({$table:s,column:e})}),h.columns=n,h.typeList=r,h.modeList=e,h.hasFooter=p,h.hasMerge=x,h.hasTree=a,h.hasRowGroup=u,h.isPrint=!!t,h.hasColgroup=c,h.visible=!0,Object.assign(m,{mode:_.length?"selected":"current"},$),m);return U&&(_xeUtils.default.isFunction(U)?m.filename=U({options:$,$table:s,$grid:l,$gantt:o}):m.filename=""+U),I&&(_xeUtils.default.isFunction(I)?m.sheetName=I({options:$,$table:s,$grid:l,$gantt:o}):m.sheetName=""+I),e.some(e=>e.value===j)||(m.mode=e[0].value),r.some(e=>e.value===L)||(m.type=r[0].value),m.widthMode||(m.widthMode=""),d.export=!0,s.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(c){let u=this;var e=u,t=u,l=u;let p=u.$xeGrid,h=u.$xeGantt;var o=p||h,{treeConfig:e,showHeader:r,showFooter:m}=e,t=t.isGroup;let{tableFullColumn:a,afterFullData:i,afterTreeFullData:n,collectColumn:s,mergeBodyList:R,mergeFooterList:B}=l;var l=u.computeExportOpts,D=u.computeTreeOpts;let d=o?o.computeProxyOpts:{};var g=!(!R.length&&!B.length);let x=Object.assign({message:!0,isHeader:r,isTitle:r,isFooter:m,isColgroup:t,isMerge:g,useStyle:!0,current:"current",modes:(d.ajax&&d.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},l,c),{filename:f,sheetName:b,type:v,mode:_,columns:$,columnFilterMethod:y,beforeExportMethod:C,includeFields:w,excludeFields:E,extraFields:T}=(_xeUtils.default.isBoolean(x.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),x.isTreeAllExpanded=x.isAllExpand),x),F=[],M=u.getCheckboxRecords(),k=(_=_||(M.length?"selected":"current"),{}),U=(E&&E.length&&E.forEach(e=>{k[e]=1}),{}),I=(w&&w.length&&w.forEach(e=>{U[e]=1}),{}),j=(T&&T.forEach(e=>{I[e]=1}),!1),L=[],O=(L=$?(j=!0,_xeUtils.default.searchTree($,()=>!0,{children:"children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(s,e=>{var t=e.children&&0<e.children.length;let l=!1;var o=I[e.field];return l=$?handleFilterColumns(x,e,$):E||w?handleFilterFields(x,e,w,U,k,I):!!o||e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0}),Object.assign({},x,{filename:"",sheetName:"",_columnConfs:$})),V=(j||y||(y=({column:e})=>handleFilterFields(O,e,w,U,k,I),O.columnFilterMethod=y),F=L?(O._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(L,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=u.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=u.getColumnById(r):l&&t?o=a.find(e=>e.field===l&&e.type===t):l?o=u.getColumnByField(l):t&&(o=a.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(t?s:a,(e,t)=>e.visible&&(!y||y({$table:u,$grid:p,$gantt:h,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(F,e=>{e.children&&e.children.length||V.push(e)},{children:"childNodes"}),O.columns=V,O.colgroups=convertToRows(F),f&&(_xeUtils.default.isFunction(f)?O.filename=f({options:x,$table:u,$grid:p,$gantt:h}):O.filename=""+f),O.filename||(O.filename=getI18n(O.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),b&&(_xeUtils.default.isFunction(b)?O.sheetName=b({options:x,$table:u,$grid:p,$gantt:h}):O.sheetName=""+b),O.sheetName||(O.sheetName=document.title||""),!O.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(l._typeMaps),v))return errLog("vxe.error.notType",[v]),["xlsx","pdf"].includes(v)&&warnLog("vxe.error.reqPlugin",[3,"plugin-export-xlsx"]),Promise.reject({status:!1,msg:"type error"});if(!O.print&&C){r=C({options:O,$table:u,$grid:p,$gantt:h});if(_xeUtils.default.isBoolean(r)){if(!r)return Promise.reject({status:!1,msg:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeExportMethod","boolean",r])}if(O.data)O._isCustomData=!0;else if(O.data=[],"selected"===_)-1<["html","pdf"].indexOf(v)&&e?O.data=_xeUtils.default.searchTree(u.getTableData().fullData,e=>-1<u.findRowIndexOf(M,e),Object.assign({},D,{data:"_row"})):O.data=M;else if("all"===_){if(o||errLog("vxe.error.errProp",["all","mode=current,selected"]),o&&!O.remote){m=o.reactData;let e=o.computeProxyOpts;g=m.sortData;let{beforeQueryAll:l,afterQueryAll:r,ajax:t={}}=e,a=e.response||e.props||{};c=t.beforeQueryAll;let i=t.queryAll,n=t.afterQueryAll,s=t.queryAllSuccess,d=t.queryAllError;if(i||errLog("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),i){let o={$table:u,$grid:p,$gantt:h,sort:g.length?g[0]:{},sorts:g,filters:m.filterData,form:m.formData,options:O},t=()=>Promise.resolve((l||i)(o)).then(t=>{if(n)n(Object.assign(Object.assign({},o),{response:t,status:"success"}));else{var l=a.list;let e=[];l?e=_xeUtils.default.isFunction(l)?l({data:t,$table:u,$grid:p,$gantt:h}):_xeUtils.default.isArray(t)?t:_xeUtils.default.get(t,l):_xeUtils.default.isArray(t)&&(e=t),O.data=e,r&&r(Object.assign(Object.assign({},o),{response:t}))}return s&&s(Object.assign(Object.assign({},o),{response:t})),handleExport(u,O)}).catch(e=>{n&&n(Object.assign(Object.assign({},o),{response:e,status:"error"})),d&&d(Object.assign(Object.assign({},o),{response:e}))});return c?Promise.resolve(c(o)).then(e=>{if(!1!==e)return t()}):t()}}}else"current"===_&&(O.data=e?n:i);return handleExport(u,O)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;if(l){l=l({options:t,$table:this});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1,mas:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return handleFileImport(this,e,t)},_importData(e){let t=this;var l=t.computeImportOpts;let o=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:r,afterImportMethod:a}=o;if(r){l=r({options:o,$table:t});if(_xeUtils.default.isBoolean(l)){if(!l)return Promise.reject({status:!1,mas:"before prevent"})}else warnLog("vxe.error.returnErr",["beforeImportMethod","boolean",l])}return _ui.VxeUI.readFile(o).catch(e=>(a&&a({status:!1,options:o,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,o)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this,o=l.$xeGrid,r=l.$xeGantt;var t=l.computePrintOpts;let a=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});t=a.sheetName;let i="",n=(i=(i=t?_xeUtils.default.isFunction(t)?t({options:a,$table:l,$grid:o,$gantt:r}):""+t:i)||document.title||"",a.beforePrintMethod),s=a.printMethod,d=a.html||a.content;return new Promise((e,t)=>{_ui.VxeUI.print?d?e(_ui.VxeUI.print({title:i,html:d,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0})):e(l.exportData(a).then(({content:e})=>_ui.VxeUI.print({title:i,html:e,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,beforePrintMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0,printMethod:s?({html:e})=>s({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0}))):(errLog("vxe.error.reqComp",["vxe-print"]),t({status:!1,msg:"print not exist"}))})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var{treeConfig:t,importConfig:l}=this;let{initStore:o,importStore:r,importParams:a}=this;var i=this.computeImportOpts,i=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(i._typeMaps),modes:["insertTop","covering"]},i,e),e=i.types||[],n=i.modes||[];!t?(l||errLog("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=n.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,i),l.some(e=>e.value===a.mode)||(a.mode=l[0].value),o.import=!0):i.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.computeExportOpts,t=Object.assign({message:!0,types:_xeUtils.default.keys(t._typeMaps)},t,e);return this.exportConfig||errLog("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,t)},_closePrint:handleCloseExport,_openPrint(e){var t=this.computePrintOpts,t=Object.assign({message:!0},t,e);return this.printConfig||errLog("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,t,!0)}}};
@@ -149,7 +149,7 @@ remainList.forEach(column=>{const width=Math.max(meanWidth,minCellWidth);column.
149
149
  * 计算自适应行高
150
150
  */const calcCellAutoHeight=($xeTable,rowid,rowRest,wrapperEl)=>{const internalData=$xeTable;const{fullCellHeightMaps}=internalData;let chRest=fullCellHeightMaps[rowid];if(!chRest){chRest={};fullCellHeightMaps[rowid]=chRest;}const wrapperElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);let firstCellStyle=null;let topBottomPadding=0;let changeCH=false;for(let i=0;i<wrapperElemList.length;i++){const wrapperElem=wrapperElemList[i];const cellElem=wrapperElem.parentElement;const cellStyle=cellElem.style;const orHeight=cellStyle.height;const colid=wrapperElem.getAttribute('colid')||'';cellStyle.height='';if(!firstCellStyle){firstCellStyle=getComputedStyle(cellElem);topBottomPadding=firstCellStyle?Math.ceil(_xeUtils.default.toNumber(firstCellStyle.paddingTop)+_xeUtils.default.toNumber(firstCellStyle.paddingBottom)):0;}const cellHeight=wrapperElem?wrapperElem.clientHeight:0;const colHeight=Math.ceil(cellHeight+topBottomPadding);if(chRest[colid]!==colHeight){changeCH=true;chRest[colid]=colHeight;}cellStyle.height=orHeight;}const cellMaxHeight=(0,_util.getRowMaxHeight)(chRest,changeCH);return cellMaxHeight;};/**
151
151
  * 自适应行高
152
- */const calcCellHeight=$xeTable=>{const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig}=props;const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const treeOpts=$xeTable.computeTreeOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;if(!isAllOverflow&&(scrollYLoad||scrollXLoad||treeConfig&&treeOpts.showLine)){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const height=calcCellAutoHeight($xeTable,rowid,rowRest,el);rowRest.height=Math.max(defaultRowHeight,height);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}};function getOrderField($xeTable,column){const reactData=$xeTable;const{isRowGroupStatus}=reactData;const{sortBy,sortType,aggFunc}=column;return isRowGroupStatus&&aggFunc?row=>{if(row.isAggregate){const aggData=row.aggData;const currAggData=aggData?aggData[column.field]:null;return currAggData?currAggData.value:null;}let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=$xeTable.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return(0,_utils.eqEmptyValue)(cellValue)||isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;}:row=>{let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=$xeTable.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return(0,_utils.eqEmptyValue)(cellValue)||isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;};}function handleTargetEnterEvent($xeTable,isClear){const internalData=$xeTable;const $tooltip=$xeTable.$refs.refTooltip;clearTimeout(internalData.tooltipTimeout);if(isClear){$xeTable.closeTooltip();}else{if($tooltip&&$tooltip.setActived){$tooltip.setActived(true);}}}function clearCrossTableDragStatus($xeTable){const crossTableDragRowInfo=(0,_store.getCrossTableDragRowInfo)($xeTable);crossTableDragRowObj=null;crossTableDragRowInfo.row=null;}function clearDragStatus($xeTable){const reactData=$xeTable;const{dragRow,dragCol}=reactData;if(dragRow||dragCol){clearColDropOrigin($xeTable);clearRowDropOrigin($xeTable);hideDropTip($xeTable);clearCrossTableDragStatus($xeTable);reactData.dragRow=null;reactData.dragCol=null;}}function handleRowDragEndClearStatus($xeTable){clearRowDragData($xeTable);clearCrossTableDragStatus($xeTable);handleRecalculateStyle($xeTable,false,true,true);}function handleColDragEndClearStatus($xeTable){clearColDragData($xeTable);clearCrossTableDragStatus($xeTable);handleRecalculateStyle($xeTable,true,true,true);}function clearRowDropOrigin($xeTable){const el=$xeTable.$el;if(el){const clss='row--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}}function updateRowDropOrigin($xeTable,row){const el=$xeTable.$el;if(el){const clss='row--drag-origin';const rowid=(0,_util.getRowid)($xeTable,row);_xeUtils.default.arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`),elem=>{(0,_dom.addClass)(elem,clss);});}}function updateRowDropTipContent($xeTable,tdEl){const reactData=$xeTable;const props=$xeTable;const{dragConfig}=props;const{dragRow}=reactData;const rowDragOpts=$xeTable.computeRowDragOpts;const{tooltipMethod}=rowDragOpts;const rTooltipMethod=tooltipMethod||(dragConfig?dragConfig.rowTooltipMethod:null);let tipContent='';if(rTooltipMethod){const rtParams={$table:$xeTable,row:dragRow};tipContent=`${rTooltipMethod(rtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;}function updateColDropOrigin($xeTable,column){const el=$xeTable.$el;if(el){const colQuerys=[];_xeUtils.default.eachTree([column],item=>{colQuerys.push(`[colid="${item.id}"]`);});const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(colQuerys.join(',')),elem=>{(0,_dom.addClass)(elem,clss);});}}function clearColDropOrigin($xeTable){const el=$xeTable.$el;if(el){const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}}function updateColDropTipContent($xeTable,tdEl){const reactData=$xeTable;const{dragCol}=reactData;const columnDragOpts=$xeTable.computeColumnDragOpts;const{tooltipMethod}=columnDragOpts;let tipContent='';if(tooltipMethod){const dtParams={$table:$xeTable,column:dragCol};tipContent=`${tooltipMethod(dtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;}function showDropTip($xeTable,evnt,trEl,thEl,showLine,dragPos){const $xeGantt=$xeTable.$xeGantt;const reactData=$xeTable;const internalData=$xeTable;let wrapperEl=$xeTable.$refs.refElem;if($xeGantt&&trEl){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}if(!wrapperEl){return;}const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{prevDragToChild}=internalData;const wrapperRect=wrapperEl.getBoundingClientRect();const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const tableWrapperWidth=wrapperEl.clientWidth;const tableWrapperHeight=wrapperEl.clientHeight;if(trEl){const rdLineEl=$xeTable.$refs.refDragRowLineElem;if(rdLineEl){if(showLine){const scrollbarYToLeft=$xeTable.computeScrollbarYToLeft;const trRect=trEl.getBoundingClientRect();let trHeight=trEl.clientHeight;const offsetTop=Math.max(1,trRect.y-wrapperRect.y);if(offsetTop+trHeight>tableWrapperHeight-osbHeight){trHeight=tableWrapperHeight-offsetTop-osbHeight;}rdLineEl.style.display='block';rdLineEl.style.left=`${scrollbarYToLeft?osbWidth:0}px`;rdLineEl.style.top=`${offsetTop}px`;rdLineEl.style.height=`${trHeight}px`;rdLineEl.style.width=`${tableWrapperWidth-osbWidth}px`;rdLineEl.setAttribute('drag-pos',dragPos);rdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{rdLineEl.style.display='';}}}else if(thEl){const cdLineEl=$xeTable.$refs.refDragColLineElem;if(cdLineEl){if(showLine){const scrollbarXToTop=$xeTable.computeScrollbarXToTop;const leftContainerElem=$xeTable.$refs.refLeftContainer;const leftContainerWidth=leftContainerElem?leftContainerElem.clientWidth:0;const rightContainerElem=$xeTable.$refs.refRightContainer;const rightContainerWidth=rightContainerElem?rightContainerElem.clientWidth:0;const thRect=thEl.getBoundingClientRect();let thWidth=thEl.clientWidth;const offsetTop=Math.max(0,thRect.y-wrapperRect.y);const startX=leftContainerWidth;let offsetLeft=thRect.x-wrapperRect.x;if(offsetLeft<startX){thWidth-=startX-offsetLeft;offsetLeft=startX;}const endX=tableWrapperWidth-rightContainerWidth-(rightContainerWidth?0:osbWidth);if(offsetLeft+thWidth>endX){thWidth=endX-offsetLeft;}cdLineEl.style.display='block';cdLineEl.style.top=`${offsetTop}px`;cdLineEl.style.left=`${offsetLeft}px`;cdLineEl.style.width=`${thWidth}px`;if(prevDragToChild){cdLineEl.style.height=`${thRect.height}px`;}else{cdLineEl.style.height=`${tableWrapperHeight-offsetTop-(scrollbarXToTop?0:osbHeight)}px`;}cdLineEl.setAttribute('drag-pos',dragPos);cdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{cdLineEl.style.display='';}}}const rdTipEl=$xeTable.$refs.refDragTipElem;if(rdTipEl){rdTipEl.style.display='block';rdTipEl.style.top=`${Math.min(wrapperEl.clientHeight-wrapperEl.scrollTop-rdTipEl.clientHeight,evnt.clientY-wrapperRect.y)}px`;rdTipEl.style.left=`${Math.min(wrapperEl.clientWidth-wrapperEl.scrollLeft-rdTipEl.clientWidth-16,evnt.clientX-wrapperRect.x)}px`;rdTipEl.setAttribute('drag-status',showLine?prevDragToChild?'sub':'normal':'disabled');}}function hideDropTip($xeTable){const rdTipEl=$xeTable.$refs.refDragTipElem;const rdLineEl=$xeTable.$refs.refDragRowLineElem;const cdLineEl=$xeTable.$refs.refDragColLineElem;if(rdTipEl){rdTipEl.style.display='';}if(rdLineEl){rdLineEl.style.display='';}if(cdLineEl){cdLineEl.style.display='';}}function clearRowDragData($xeTable){const $xeGantt=$xeTable.$xeGantt;const reactData=$xeTable;const internalData=$xeTable;let wrapperEl=$xeTable.$refs.refElem;const dtClss=['.vxe-body--row'];if($xeGantt){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){wrapperEl=ganttContainerElem;}dtClss.push('.vxe-gantt-view--body-row','.vxe-gantt-view--chart-row');}hideDropTip($xeTable);clearRowDropOrigin($xeTable);(0,_anime.clearRowAnimate)(wrapperEl,dtClss);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;}function clearColDragData($xeTable){const reactData=$xeTable;const internalData=$xeTable;const el=$xeTable.$refs.refElem;hideDropTip($xeTable);clearColDropOrigin($xeTable);(0,_anime.clearColAnimate)(el,['.vxe-table--column']);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;}/**
152
+ */const calcCellHeight=$xeTable=>{const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig}=props;const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const cellOpts=$xeTable.computeCellOpts;const treeOpts=$xeTable.computeTreeOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;if(!isAllOverflow&&(scrollYLoad||scrollXLoad||cellOpts.maxHeight||treeConfig&&treeOpts.showLine)){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const height=calcCellAutoHeight($xeTable,rowid,rowRest,el);rowRest.height=Math.max(defaultRowHeight,height);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}};function getOrderField($xeTable,column){const reactData=$xeTable;const{isRowGroupStatus}=reactData;const{sortBy,sortType,aggFunc}=column;return isRowGroupStatus&&aggFunc?row=>{if(row.isAggregate){const aggData=row.aggData;const currAggData=aggData?aggData[column.field]:null;return currAggData?currAggData.value:null;}let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=$xeTable.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return(0,_utils.eqEmptyValue)(cellValue)||isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;}:row=>{let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=$xeTable.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return(0,_utils.eqEmptyValue)(cellValue)||isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;};}function handleTargetEnterEvent($xeTable,isClear){const internalData=$xeTable;const $tooltip=$xeTable.$refs.refTooltip;clearTimeout(internalData.tooltipTimeout);if(isClear){$xeTable.closeTooltip();}else{if($tooltip&&$tooltip.setActived){$tooltip.setActived(true);}}}function clearCrossTableDragStatus($xeTable){const crossTableDragRowInfo=(0,_store.getCrossTableDragRowInfo)($xeTable);crossTableDragRowObj=null;crossTableDragRowInfo.row=null;}function clearDragStatus($xeTable){const reactData=$xeTable;const{dragRow,dragCol}=reactData;if(dragRow||dragCol){clearColDropOrigin($xeTable);clearRowDropOrigin($xeTable);hideDropTip($xeTable);clearCrossTableDragStatus($xeTable);reactData.dragRow=null;reactData.dragCol=null;}}function handleRowDragEndClearStatus($xeTable){clearRowDragData($xeTable);clearCrossTableDragStatus($xeTable);handleRecalculateStyle($xeTable,false,true,true);}function handleColDragEndClearStatus($xeTable){clearColDragData($xeTable);clearCrossTableDragStatus($xeTable);handleRecalculateStyle($xeTable,true,true,true);}function clearRowDropOrigin($xeTable){const el=$xeTable.$el;if(el){const clss='row--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}}function updateRowDropOrigin($xeTable,row){const el=$xeTable.$el;if(el){const clss='row--drag-origin';const rowid=(0,_util.getRowid)($xeTable,row);_xeUtils.default.arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`),elem=>{(0,_dom.addClass)(elem,clss);});}}function updateRowDropTipContent($xeTable,tdEl){const reactData=$xeTable;const props=$xeTable;const{dragConfig}=props;const{dragRow}=reactData;const rowDragOpts=$xeTable.computeRowDragOpts;const{tooltipMethod}=rowDragOpts;const rTooltipMethod=tooltipMethod||(dragConfig?dragConfig.rowTooltipMethod:null);let tipContent='';if(rTooltipMethod){const rtParams={$table:$xeTable,row:dragRow};tipContent=`${rTooltipMethod(rtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;}function updateColDropOrigin($xeTable,column){const el=$xeTable.$el;if(el){const colQuerys=[];_xeUtils.default.eachTree([column],item=>{colQuerys.push(`[colid="${item.id}"]`);});const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(colQuerys.join(',')),elem=>{(0,_dom.addClass)(elem,clss);});}}function clearColDropOrigin($xeTable){const el=$xeTable.$el;if(el){const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}}function updateColDropTipContent($xeTable,tdEl){const reactData=$xeTable;const{dragCol}=reactData;const columnDragOpts=$xeTable.computeColumnDragOpts;const{tooltipMethod}=columnDragOpts;let tipContent='';if(tooltipMethod){const dtParams={$table:$xeTable,column:dragCol};tipContent=`${tooltipMethod(dtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;}function showDropTip($xeTable,evnt,trEl,thEl,showLine,dragPos){const $xeGantt=$xeTable.$xeGantt;const reactData=$xeTable;const internalData=$xeTable;let wrapperEl=$xeTable.$refs.refElem;if($xeGantt&&trEl){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}if(!wrapperEl){return;}const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{prevDragToChild}=internalData;const wrapperRect=wrapperEl.getBoundingClientRect();const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const tableWrapperWidth=wrapperEl.clientWidth;const tableWrapperHeight=wrapperEl.clientHeight;if(trEl){const rdLineEl=$xeTable.$refs.refDragRowLineElem;if(rdLineEl){if(showLine){const scrollbarYToLeft=$xeTable.computeScrollbarYToLeft;const trRect=trEl.getBoundingClientRect();let trHeight=trEl.clientHeight;const offsetTop=Math.max(1,trRect.y-wrapperRect.y);if(offsetTop+trHeight>tableWrapperHeight-osbHeight){trHeight=tableWrapperHeight-offsetTop-osbHeight;}rdLineEl.style.display='block';rdLineEl.style.left=`${scrollbarYToLeft?osbWidth:0}px`;rdLineEl.style.top=`${offsetTop}px`;rdLineEl.style.height=`${trHeight}px`;rdLineEl.style.width=`${tableWrapperWidth-osbWidth}px`;rdLineEl.setAttribute('drag-pos',dragPos);rdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{rdLineEl.style.display='';}}}else if(thEl){const cdLineEl=$xeTable.$refs.refDragColLineElem;if(cdLineEl){if(showLine){const scrollbarXToTop=$xeTable.computeScrollbarXToTop;const leftContainerElem=$xeTable.$refs.refLeftContainer;const leftContainerWidth=leftContainerElem?leftContainerElem.clientWidth:0;const rightContainerElem=$xeTable.$refs.refRightContainer;const rightContainerWidth=rightContainerElem?rightContainerElem.clientWidth:0;const thRect=thEl.getBoundingClientRect();let thWidth=thEl.clientWidth;const offsetTop=Math.max(0,thRect.y-wrapperRect.y);const startX=leftContainerWidth;let offsetLeft=thRect.x-wrapperRect.x;if(offsetLeft<startX){thWidth-=startX-offsetLeft;offsetLeft=startX;}const endX=tableWrapperWidth-rightContainerWidth-(rightContainerWidth?0:osbWidth);if(offsetLeft+thWidth>endX){thWidth=endX-offsetLeft;}cdLineEl.style.display='block';cdLineEl.style.top=`${offsetTop}px`;cdLineEl.style.left=`${offsetLeft}px`;cdLineEl.style.width=`${thWidth}px`;if(prevDragToChild){cdLineEl.style.height=`${thRect.height}px`;}else{cdLineEl.style.height=`${tableWrapperHeight-offsetTop-(scrollbarXToTop?0:osbHeight)}px`;}cdLineEl.setAttribute('drag-pos',dragPos);cdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{cdLineEl.style.display='';}}}const rdTipEl=$xeTable.$refs.refDragTipElem;if(rdTipEl){rdTipEl.style.display='block';rdTipEl.style.top=`${Math.min(wrapperEl.clientHeight-wrapperEl.scrollTop-rdTipEl.clientHeight,evnt.clientY-wrapperRect.y)}px`;rdTipEl.style.left=`${Math.min(wrapperEl.clientWidth-wrapperEl.scrollLeft-rdTipEl.clientWidth-16,evnt.clientX-wrapperRect.x)}px`;rdTipEl.setAttribute('drag-status',showLine?prevDragToChild?'sub':'normal':'disabled');}}function hideDropTip($xeTable){const rdTipEl=$xeTable.$refs.refDragTipElem;const rdLineEl=$xeTable.$refs.refDragRowLineElem;const cdLineEl=$xeTable.$refs.refDragColLineElem;if(rdTipEl){rdTipEl.style.display='';}if(rdLineEl){rdLineEl.style.display='';}if(cdLineEl){cdLineEl.style.display='';}}function clearRowDragData($xeTable){const $xeGantt=$xeTable.$xeGantt;const reactData=$xeTable;const internalData=$xeTable;let wrapperEl=$xeTable.$refs.refElem;const dtClss=['.vxe-body--row'];if($xeGantt){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){wrapperEl=ganttContainerElem;}dtClss.push('.vxe-gantt-view--body-row','.vxe-gantt-view--chart-row');}hideDropTip($xeTable);clearRowDropOrigin($xeTable);(0,_anime.clearRowAnimate)(wrapperEl,dtClss);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;}function clearColDragData($xeTable){const reactData=$xeTable;const internalData=$xeTable;const el=$xeTable.$refs.refElem;hideDropTip($xeTable);clearColDropOrigin($xeTable);(0,_anime.clearColAnimate)(el,['.vxe-table--column']);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;}/**
153
153
  * 处理显示 tooltip
154
154
  * @param {Event} evnt 事件
155
155
  * @param {Row} row 行对象
@@ -240,10 +240,10 @@ if(reactData.scrollYLoad&&!(internalData.customHeight||internalData.customMinHei
240
240
  */function calcColumnAutoWidth($xeTable,column,wrapperEl){const reactData=$xeTable;const{scrollYLoad}=reactData;const columnOpts=$xeTable.computeColumnOpts;const{autoOptions}=columnOpts;const{isCalcHeader,isCalcBody,isCalcFooter}=autoOptions||{};const querySelections=[];if(isCalcHeader){querySelections.push(`.vxe-header-cell--wrapper[colid="${column.id}"]`);}if(isCalcBody){querySelections.push(`.vxe-body-cell--wrapper[colid="${column.id}"]`);}if(isCalcFooter){querySelections.push(`.vxe-footer-cell--wrapper[colid="${column.id}"]`);}const cellElemList=querySelections.length?wrapperEl.querySelectorAll(querySelections.join(',')):[];let leftRightPadding=0;const firstCellEl=cellElemList[0];if(firstCellEl&&firstCellEl.parentElement){const cellStyle=getComputedStyle(firstCellEl.parentElement);leftRightPadding=Math.ceil(_xeUtils.default.toNumber(cellStyle.paddingLeft)+_xeUtils.default.toNumber(cellStyle.paddingRight));}let colWidth=(scrollYLoad?column.renderAutoWidth:0)-leftRightPadding;for(let i=0;i<cellElemList.length;i++){const celEl=cellElemList[i];colWidth=Math.max(colWidth,celEl?Math.ceil(celEl.scrollWidth)+4:0);}return colWidth+leftRightPadding;}/**
241
241
  * 自适应列宽
242
242
  */function calcCellWidth($xeTable){const internalData=$xeTable;const autoWidthColumnList=$xeTable.computeAutoWidthColumnList;const{fullColumnIdData}=internalData;const el=$xeTable.$refs.refElem;if(el&&autoWidthColumnList.length){el.setAttribute('data-calc-col','Y');autoWidthColumnList.forEach(column=>{const colid=column.id;const colRest=fullColumnIdData[colid];const colWidth=calcColumnAutoWidth($xeTable,column,el);if(colRest){colRest.width=Math.max(colWidth,colRest.width);}column.renderAutoWidth=colWidth;});$xeTable.analyColumnWidth();el.removeAttribute('data-calc-col');}}function handleUpdateColResize($xeTable,evnt,params){$xeTable.analyColumnWidth();$xeTable.recalculate().then(()=>{$xeTable.saveCustomStore('update:width');$xeTable.refreshScroll().then(()=>{$xeTable.updateCellAreas();});$xeTable.dispatchEvent('column-resizable-change',params,evnt);// 已废弃 resizable-change
243
- $xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});}function handleUpdateRowResize($xeTable,evnt,params){const reactData=$xeTable;reactData.resizeHeightFlag++;$xeTable.recalculate().then(()=>{$xeTable.refreshScroll().then(()=>{$xeTable.updateCellAreas();});$xeTable.dispatchEvent('row-resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});}function updateColumnOffsetLeft($xeTable){const internalData=$xeTable;const{visibleColumn,fullColumnIdData}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}let offsetLeft=0;for(let cIndex=0,rLen=visibleColumn.length;cIndex<rLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest.oLeft=offsetLeft;}offsetLeft+=column.renderWidth;}}function updateRowOffsetTop($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{expandColumn}=reactData;const{afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const expandOpts=$xeTable.computeExpandOpts;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);let offsetTop=0;for(let rIndex=0,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};rowRest.oTop=offsetTop;offsetTop+=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;// 是否展开行
243
+ $xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});}function handleUpdateRowResize($xeTable,evnt,params){const reactData=$xeTable;reactData.resizeHeightFlag++;$xeTable.recalculate().then(()=>{$xeTable.refreshScroll().then(()=>{$xeTable.updateCellAreas();});$xeTable.dispatchEvent('row-resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});}function updateColumnOffsetLeft($xeTable){const internalData=$xeTable;const{visibleColumn,fullColumnIdData}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}let offsetLeft=0;for(let cIndex=0,rLen=visibleColumn.length;cIndex<rLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest.oLeft=offsetLeft;}offsetLeft+=column.renderWidth;}}function updateRowOffsetTop($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{expandColumn}=reactData;const{afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const expandOpts=$xeTable.computeExpandOpts;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);let offsetTop=0;for(let rIndex=0,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};rowRest.oTop=offsetTop;offsetTop+=(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);// 是否展开行
244
244
  if(expandColumn&&rowExpandedMaps[rowid]){offsetTop+=rowRest.expandHeight||expandOpts.height||0;}}}/**
245
245
  * 更新展开行样式
246
- */function updateRowExpandStyle($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{expandColumn,scrollYLoad,scrollYTop,isScrollYBig}=reactData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const expandOpts=$xeTable.computeExpandOpts;const{mode}=expandOpts;if(expandColumn&&mode==='fixed'){const{elemStore,fullAllDataRowIdData}=internalData;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const rowExpandEl=$xeTable.$refs.refRowExpandElem;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){let isUpdateHeight=false;_xeUtils.default.arrayEach(rowExpandEl.children,reEl=>{const expandEl=reEl;const rowid=expandEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const expandHeight=expandEl.offsetHeight;const trEl=bodyScrollElem.querySelector(`.vxe-body--row[rowid="${rowid}"]`);let offsetTop=0;if(scrollYLoad){if(isScrollYBig&&trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}else{offsetTop=rowRest.oTop+(rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight);}}else{if(trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}}if(isScrollYBig){offsetTop+=scrollYTop;}expandEl.style.top=(0,_dom.toCssUnit)(offsetTop);if(!isUpdateHeight){if(rowRest.expandHeight!==expandHeight){isUpdateHeight=true;}}rowRest.expandHeight=expandHeight;}});if(isUpdateHeight){reactData.rowExpandHeightFlag++;$xeTable.$nextTick(()=>{updateRowOffsetTop($xeTable);});}}}}/**
246
+ */function updateRowExpandStyle($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{expandColumn,scrollYLoad,scrollYTop,isScrollYBig}=reactData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const expandOpts=$xeTable.computeExpandOpts;const{mode}=expandOpts;if(expandColumn&&mode==='fixed'){const{elemStore,fullAllDataRowIdData}=internalData;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const rowExpandEl=$xeTable.$refs.refRowExpandElem;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){let isUpdateHeight=false;_xeUtils.default.arrayEach(rowExpandEl.children,reEl=>{const expandEl=reEl;const rowid=expandEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const expandHeight=expandEl.offsetHeight;const trEl=bodyScrollElem.querySelector(`.vxe-body--row[rowid="${rowid}"]`);let offsetTop=0;if(scrollYLoad){if(isScrollYBig&&trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}else{offsetTop=rowRest.oTop+(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);}}else{if(trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}}if(isScrollYBig){offsetTop+=scrollYTop;}expandEl.style.top=(0,_dom.toCssUnit)(offsetTop);if(!isUpdateHeight){if(rowRest.expandHeight!==expandHeight){isUpdateHeight=true;}}rowRest.expandHeight=expandHeight;}});if(isUpdateHeight){reactData.rowExpandHeightFlag++;$xeTable.$nextTick(()=>{updateRowOffsetTop($xeTable);});}}}}/**
247
247
  * 更新树连接线样式
248
248
  */function updateTreeLineStyle($xeTable){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig}=props;if(!treeConfig){return;}const{tableData}=reactData;const{fullAllDataRowIdData,treeExpandedMaps}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const cellOpts=$xeTable.computeCellOpts;const rowOpts=$xeTable.computeRowOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const treeOpts=$xeTable.computeTreeOpts;const{transform,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);const expParentList=[];const handleNodeRow=(row,rIndex,rows)=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};const childList=row[transform?mapChildrenField:childrenField];const prevRow=rows[rIndex-1]||null;const nextRow=rows[rIndex+1]||null;if(childList&&childList.length&&treeExpandedMaps[rowid]){expParentList.push({row,prevRow,nextRow});childList.forEach((childRow,crIndex)=>{const childRowid=handleGetRowId(childRow);if(treeExpandedMaps[childRowid]){handleNodeRow(childRow,crIndex,childList);}});}else{if(nextRow){const nextRowid=handleGetRowId(nextRow);const nextRowRest=fullAllDataRowIdData[nextRowid]||{};const currCellHeight=(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);const nextCellHeight=(0,_util.getCellRestHeight)(nextRowRest,cellOpts,rowOpts,defaultRowHeight);rowRest.oHeight=currCellHeight;rowRest.lineHeight=Math.floor(currCellHeight/2+nextCellHeight/2);}else{rowRest.oHeight=0;rowRest.lineHeight=0;}}};tableData.forEach((row,rIndex)=>{handleNodeRow(row,rIndex,tableData);});_xeUtils.default.lastArrayEach(expParentList,({row,nextRow})=>{const rowid=handleGetRowId(row);const childList=row[transform?mapChildrenField:childrenField];const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const currCellHeight=(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);let countOffsetHeight=currCellHeight;let countLineHeight=0;childList.forEach(childRow=>{const childRowid=handleGetRowId(childRow);const childRowRest=fullAllDataRowIdData[childRowid]||{};const childList=childRow[transform?mapChildrenField:childrenField];if(treeExpandedMaps[childRowid]&&childList&&childList.length){countOffsetHeight+=childRowRest.oHeight||0;countLineHeight+=childRowRest.oHeight||0;}else{const cellHeight=(0,_util.getCellRestHeight)(childRowRest,cellOpts,rowOpts,defaultRowHeight);childRowRest.oHeight=cellHeight;childRowRest.lineHeight=cellHeight;countOffsetHeight+=cellHeight;countLineHeight+=cellHeight;}});if(nextRow){const nextRowid=handleGetRowId(nextRow);const nextRowRest=fullAllDataRowIdData[nextRowid]||{};const currCellHeight=(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);const nextCellHeight=(0,_util.getCellRestHeight)(nextRowRest,cellOpts,rowOpts,defaultRowHeight);countOffsetHeight+=currCellHeight;countLineHeight+=Math.floor(currCellHeight/2+nextCellHeight/2);}rowRest.lineHeight=countLineHeight;rowRest.oHeight=countOffsetHeight;}});}function handleRowExpandScroll($xeTable){const internalData=$xeTable;const{elemStore}=internalData;const rowExpandEl=$xeTable.$refs.refRowExpandElem;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){rowExpandEl.scrollTop=bodyScrollElem.scrollTop;}}function handleColumnVisible(visible){return function(fieldOrColumn){const $xeTable=this;let status=false;const cols=_xeUtils.default.isArray(fieldOrColumn)?fieldOrColumn:[fieldOrColumn];cols.forEach(item=>{const column=(0,_util.handleFieldOrColumn)($xeTable,item);if(column){if(column.children&&column.children.length){_xeUtils.default.eachTree([column],item=>{item.visible=visible;item.renderVisible=visible;});}else{column.visible=visible;column.renderVisible=visible;}if(!status){status=true;}}});if(status){return $xeTable.handleCustom();}return $xeTable.$nextTick();};}function reUpdateCustomStyleEvent($xeTable,evnt){const reactData=$xeTable;const{customStore}=reactData;const customOpts=$xeTable.computeCustomOpts;const{popupOptions}=customOpts;const{transfer}=popupOptions||{};if(transfer&&customStore.visible){const tableCustom=$xeTable.$refs.refTableCustom;if(tableCustom&&$xeTable.handleCustomStyle&&!(0,_dom.checkTargetElement)(evnt.target,[tableCustom.$el],evnt.currentTarget)){$xeTable.handleCustomStyle().then(()=>{$xeTable.handleCustomStyle();});}}}function truncateStackHistory($xeTable){const internalData=$xeTable;const{stackHistoryStore}=internalData;const{undoStacks}=stackHistoryStore;const undoRedoHistoryOpts=$xeTable.computeUndoRedoHistoryOpts;const{stackSize}=undoRedoHistoryOpts;if(undoStacks.length>_xeUtils.default.toNumber(stackSize)){undoStacks.shift();}}/**
249
249
  * 生成快照数据
@@ -475,10 +475,10 @@ const dragMinLeft=isRightFixed?0:cellRect.x-tableRect.x+dragBtnWidth+minInterval
475
475
  const updateEvent=evnt=>{evnt.stopPropagation();evnt.preventDefault();const tableHeight=tableEl.clientHeight;const offsetX=evnt.clientX-dragClientX;let left=dragPosLeft+offsetX;if(isLeftFixed){if(rightContainerRect){left=Math.min(left,rightContainerRect.x-tableRect.x-fixedLeftRemainWidth-minInterval);}}else if(isRightFixed){if(leftContainerElem){left=Math.max(left,leftContainerElem.clientWidth+fixedRightRemainWidth+minInterval);}left=Math.min(left,dragMaxLeft);}dragLeft=Math.max(left,dragMinLeft);// 最大宽
476
476
  if(maxInterval>1){dragLeft=Math.min(dragLeft,maxInterval+dragMinLeft-minInterval);}const resizeBarLeft=Math.max(1,dragLeft);resizeBarElem.style.left=`${resizeBarLeft}px`;resizeBarElem.style.top=`${scrollbarXToTop?osbHeight:0}px`;resizeBarElem.style.height=`${scrollbarXToTop?tableHeight-osbHeight:tableHeight}px`;if(resizableOpts.showDragTip&&resizeTipElem){resizeTipElem.textContent=getI18n('vxe.table.resizeColTip',[Math.floor(resizeColumn.renderWidth+(isRightFixed?dragPosLeft-dragLeft:dragLeft-dragPosLeft))]);const tableWrapperWidth=tableEl.clientWidth;const resizeBarWidth=resizeBarElem.clientWidth;const resizeTipWidth=resizeTipElem.clientWidth;const resizeTipHeight=resizeTipElem.clientHeight;let resizeTipLeft=-resizeTipWidth;if(resizeBarLeft<resizeTipWidth+resizeBarWidth){resizeTipLeft=0;}else if(resizeBarLeft>tableWrapperWidth){resizeTipLeft+=tableWrapperWidth-resizeBarLeft;}resizeTipElem.style.left=`${resizeTipLeft}px`;resizeTipElem.style.top=`${Math.min(tableHeight-resizeTipHeight,Math.max(0,evnt.clientY-tableRect.y-resizeTipHeight/2))}px`;}reactData.isDragResize=true;};reactData.isDragResize=true;(0,_dom.addClass)(tableEl,'col-drag--resize');resizeBarElem.style.display='block';document.onmousemove=updateEvent;document.onmouseup=function(evnt){document.onmousemove=null;document.onmouseup=null;resizeBarElem.style.display='none';internalData._lastResizeTime=Date.now();setTimeout(()=>{reactData.isDragResize=false;},50);const resizeWidth=resizeColumn.renderWidth+(isRightFixed?dragPosLeft-dragLeft:dragLeft-dragPosLeft);const resizeParams=Object.assign(Object.assign({},params),{resizeWidth,resizeColumn});if(resizableOpts.dragMode==='fixed'){visibleColumn.forEach(item=>{if(item.id!==resizeColumn.id){if(!item.resizeWidth){item.resizeWidth=item.renderWidth;}}});}if($xeTable.handleColResizeCellAreaEvent){$xeTable.handleColResizeCellAreaEvent(evnt,resizeParams);}else{resizeColumn.resizeWidth=resizeWidth;handleUpdateColResize($xeTable,evnt,resizeParams);}(0,_dom.removeClass)(tableEl,'col-drag--resize');};updateEvent(evnt);if($xeTable.closeMenu){$xeTable.closeMenu();}},handleColResizeDblclickEvent(evnt,params){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const resizableOpts=$xeTable.computeResizableOpts;const{isDblclickAutoWidth}=resizableOpts;const el=$xeTable.$refs.refElem;if(isDblclickAutoWidth&&el){evnt.stopPropagation();evnt.preventDefault();const{fullColumnIdData}=internalData;const{column}=params;let resizeColumn=column;if(column.children&&column.children.length){_xeUtils.default.eachTree(column.children,childColumn=>{resizeColumn=childColumn;});}const colid=resizeColumn.id;const colRest=fullColumnIdData[colid];const dragBtnElem=evnt.target;const cell=dragBtnElem.parentNode;const cellParams=Object.assign(params,{cell,$table:$xeTable});const colMinWidth=(0,_util.getColReMinWidth)(cellParams);const colMaxWidth=(0,_util.getColReMaxWidth)(cellParams);el.setAttribute('data-calc-col','Y');let resizeWidth=calcColumnAutoWidth($xeTable,resizeColumn,el);el.removeAttribute('data-calc-col');if(colRest){resizeWidth=Math.max(resizeWidth,colRest.width);}resizeWidth=Math.max(colMinWidth,resizeWidth);if(colMaxWidth>1){resizeWidth=Math.min(colMaxWidth,resizeWidth);}const resizeParams=Object.assign(Object.assign({},params),{resizeWidth,resizeColumn});reactData.isDragResize=false;internalData._lastResizeTime=Date.now();if($xeTable.handleColResizeDblclickCellAreaEvent){$xeTable.handleColResizeDblclickCellAreaEvent(evnt,resizeParams);}else{resizeColumn.resizeWidth=resizeWidth;handleUpdateColResize($xeTable,evnt,resizeParams);}}},/**
477
477
  * @private
478
- */handleRowResizeMousedownEvent(evnt,params){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;evnt.stopPropagation();evnt.preventDefault();const $xeGantt=$xeTable.$xeGantt;const{row}=params;const{showOverflow}=props;const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{elemStore,fullAllDataRowIdData}=internalData;const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const scrollbarYToLeft=$xeTable.computeScrollbarYToLeft;const resizableOpts=$xeTable.computeResizableOpts;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;let tableEl=$xeTable.$refs.refElem;if($xeGantt){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){tableEl=ganttContainerElem;}}const resizeBarElem=$xeTable.$refs.refRowResizeBar;if(!resizeBarElem){return;}const{clientY:dragClientY}=evnt;const resizeTipElem=resizeBarElem.firstElementChild;const dragBtnElem=evnt.currentTarget;const tdEl=dragBtnElem.parentNode;const trEl=tdEl.parentNode;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(!bodyScrollElem){return;}const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(!rowRest){return;}const defaultRowHeight=$xeTable.computeDefaultRowHeight;let currCellHeight=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;if(!showOverflow){currCellHeight=tdEl.clientHeight;}const tableRect=tableEl.getBoundingClientRect();const trRect=trEl.getBoundingClientRect();const targetOffsetY=dragClientY-trRect.y-trEl.clientHeight;let resizeHeight=currCellHeight;const cellEl=tdEl.querySelector('.vxe-cell');let cellMinHeight=0;if(cellEl){const cellStyle=getComputedStyle(cellEl);cellMinHeight=Math.max(1,Math.ceil(_xeUtils.default.toNumber(cellStyle.paddingTop)+_xeUtils.default.toNumber(cellStyle.paddingBottom)));}const minTop=trRect.y-tableRect.y+cellMinHeight;// 处理拖动事件
478
+ */handleRowResizeMousedownEvent(evnt,params){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;evnt.stopPropagation();evnt.preventDefault();const $xeGantt=$xeTable.$xeGantt;const{row}=params;const{showOverflow}=props;const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{elemStore,fullAllDataRowIdData}=internalData;const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const scrollbarYToLeft=$xeTable.computeScrollbarYToLeft;const resizableOpts=$xeTable.computeResizableOpts;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;let tableEl=$xeTable.$refs.refElem;if($xeGantt){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){tableEl=ganttContainerElem;}}const resizeBarElem=$xeTable.$refs.refRowResizeBar;if(!resizeBarElem){return;}const{clientY:dragClientY}=evnt;const resizeTipElem=resizeBarElem.firstElementChild;const dragBtnElem=evnt.currentTarget;const tdEl=dragBtnElem.parentNode;const trEl=tdEl.parentNode;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(!bodyScrollElem){return;}const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(!rowRest){return;}const defaultRowHeight=$xeTable.computeDefaultRowHeight;let currCellHeight=(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);if(!showOverflow){currCellHeight=tdEl.clientHeight;}const tableRect=tableEl.getBoundingClientRect();const trRect=trEl.getBoundingClientRect();const targetOffsetY=dragClientY-trRect.y-trEl.clientHeight;let resizeHeight=currCellHeight;const cellEl=tdEl.querySelector('.vxe-cell');let cellMinHeight=0;if(cellEl){const cellStyle=getComputedStyle(cellEl);cellMinHeight=Math.max(1,Math.ceil(_xeUtils.default.toNumber(cellStyle.paddingTop)+_xeUtils.default.toNumber(cellStyle.paddingBottom)));}const minTop=trRect.y-tableRect.y+cellMinHeight;// 处理拖动事件
479
479
  const updateEvent=evnt=>{evnt.stopPropagation();evnt.preventDefault();const rtWidth=tableEl.clientWidth-osbWidth;const tableHeight=tableEl.clientHeight-osbHeight;let dragTop=evnt.clientY-tableRect.y-targetOffsetY;if(dragTop<minTop){dragTop=minTop;}else{resizeHeight=Math.max(cellMinHeight,currCellHeight+evnt.clientY-dragClientY);}resizeBarElem.style.left=`${scrollbarYToLeft?osbWidth:0}px`;resizeBarElem.style.top=`${dragTop}px`;resizeBarElem.style.width=`${rtWidth}px`;if(resizableOpts.showDragTip&&resizeTipElem){resizeTipElem.textContent=getI18n('vxe.table.resizeRowTip',[resizeHeight]);const resizeTipWidth=resizeTipElem.clientWidth;const resizeTipHeight=resizeTipElem.clientHeight;let resizeBarLeft=Math.max(2,evnt.clientX-tableRect.x);let resizeBarTop=0;if(resizeBarLeft+resizeTipWidth>=rtWidth-2){resizeBarLeft=rtWidth-resizeTipWidth-2;}if(dragTop+resizeTipHeight>=tableHeight){resizeBarTop=tableHeight-(dragTop+resizeTipHeight);}resizeTipElem.style.left=`${resizeBarLeft}px`;resizeTipElem.style.top=`${resizeBarTop}px`;}reactData.isDragResize=true;};reactData.isDragResize=true;(0,_dom.addClass)(tableEl,'row-drag--resize');resizeBarElem.style.display='block';document.onmousemove=updateEvent;document.onmouseup=function(evnt){document.onmousemove=null;document.onmouseup=null;resizeBarElem.style.display='none';internalData._lastResizeTime=Date.now();setTimeout(()=>{reactData.isDragResize=false;},50);if(resizeHeight!==currCellHeight){const resizeParams=Object.assign(Object.assign({},params),{resizeHeight,resizeRow:row});internalData.isResizeCellHeight=true;if($xeTable.handleRowResizeCellAreaEvent){$xeTable.handleRowResizeCellAreaEvent(evnt,resizeParams);}else{rowRest.resizeHeight=resizeHeight;handleUpdateRowResize($xeTable,evnt,resizeParams);updateRowOffsetTop($xeTable);}}(0,_dom.removeClass)(tableEl,'row-drag--resize');};updateEvent(evnt);},/**
480
480
  * @private
481
- */handleRowResizeDblclickEvent(evnt,params){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const resizableOpts=$xeTable.computeResizableOpts;const{isDblclickAutoHeight}=resizableOpts;const el=$xeTable.$refs.refElem;if(isDblclickAutoHeight&&el){evnt.stopPropagation();evnt.preventDefault();const{editStore}=reactData;const{fullAllDataRowIdData}=internalData;const{actived}=editStore;const{row}=params;const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(!rowRest){return;}const handleRsHeight=()=>{el.setAttribute('data-calc-row','Y');const resizeHeight=calcCellAutoHeight($xeTable,rowid,rowRest,el);el.removeAttribute('data-calc-row');const resizeParams=Object.assign(Object.assign({},params),{resizeHeight,resizeRow:row});reactData.isDragResize=false;internalData._lastResizeTime=Date.now();if($xeTable.handleRowResizeDblclickCellAreaEvent){$xeTable.handleRowResizeDblclickCellAreaEvent(evnt,resizeParams);}else{rowRest.resizeHeight=resizeHeight;handleUpdateRowResize($xeTable,evnt,resizeParams);}};if(actived.row||actived.column){$xeTable.clearEdit().then(handleRsHeight);}else{handleRsHeight();}}},setRowHeightConf(heightConf){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;let status=false;if(heightConf){_xeUtils.default.each(heightConf,(height,rowid)=>{const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const rHeight=_xeUtils.default.toInteger(height);if(rHeight){rowRest.resizeHeight=rHeight;if(!status){status=true;}}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return $xeTable.$nextTick().then(()=>{updateRowOffsetTop($xeTable);return{status};});},getRowHeightConf(isFull){const $xeTable=this;const internalData=$xeTable;const{fullAllDataRowIdData,afterFullData}=internalData;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const rest={};afterFullData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const resizeHeight=rowRest.resizeHeight;if(resizeHeight||isFull){const currCellHeight=resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;rest[rowid]=currCellHeight;}}});return rest;},recalcRowHeight(rowOrId){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const rows=_xeUtils.default.isArray(rowOrId)?rowOrId:[rowOrId];const el=$xeTable.$refs.refElem;if(el){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');rows.forEach(row=>{const rowid=_xeUtils.default.isString(row)||_xeUtils.default.isNumber(row)?row:handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.resizeHeight=calcCellAutoHeight($xeTable,rowid,rowRest,el);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}return $xeTable.$nextTick();},setRowHeight(rowOrId,height){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;let status=false;const rows=_xeUtils.default.isArray(rowOrId)?rowOrId:[rowOrId];let rHeight=_xeUtils.default.toInteger(height);if((0,_dom.isScale)(height)){const tableBody=$xeTable.$refs.refTableBody;const bodyElem=tableBody?tableBody.$el:null;const bodyHeight=bodyElem?bodyElem.clientHeight-1:0;rHeight=Math.floor(rHeight*bodyHeight);}if(rHeight){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);rows.forEach(row=>{const rowid=_xeUtils.default.isString(row)||_xeUtils.default.isNumber(row)?row:handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.resizeHeight=rHeight;if(!status){status=true;}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return $xeTable.$nextTick();},getRowHeight(rowOrId){const $xeTable=this;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const rowid=_xeUtils.default.isString(rowOrId)||_xeUtils.default.isNumber(rowOrId)?rowOrId:(0,_util.getRowid)($xeTable,rowOrId);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;}return 0;},/**
481
+ */handleRowResizeDblclickEvent(evnt,params){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const resizableOpts=$xeTable.computeResizableOpts;const{isDblclickAutoHeight}=resizableOpts;const el=$xeTable.$refs.refElem;if(isDblclickAutoHeight&&el){evnt.stopPropagation();evnt.preventDefault();const{editStore}=reactData;const{fullAllDataRowIdData}=internalData;const{actived}=editStore;const{row}=params;const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(!rowRest){return;}const handleRsHeight=()=>{el.setAttribute('data-calc-row','Y');const resizeHeight=calcCellAutoHeight($xeTable,rowid,rowRest,el);el.removeAttribute('data-calc-row');const resizeParams=Object.assign(Object.assign({},params),{resizeHeight,resizeRow:row});reactData.isDragResize=false;internalData._lastResizeTime=Date.now();if($xeTable.handleRowResizeDblclickCellAreaEvent){$xeTable.handleRowResizeDblclickCellAreaEvent(evnt,resizeParams);}else{rowRest.resizeHeight=resizeHeight;handleUpdateRowResize($xeTable,evnt,resizeParams);}};if(actived.row||actived.column){$xeTable.clearEdit().then(handleRsHeight);}else{handleRsHeight();}}},setRowHeightConf(heightConf){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;let status=false;if(heightConf){_xeUtils.default.each(heightConf,(height,rowid)=>{const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const rHeight=_xeUtils.default.toInteger(height);if(rHeight){rowRest.resizeHeight=rHeight;if(!status){status=true;}}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return $xeTable.$nextTick().then(()=>{updateRowOffsetTop($xeTable);return{status};});},getRowHeightConf(isFull){const $xeTable=this;const internalData=$xeTable;const{fullAllDataRowIdData,afterFullData}=internalData;const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const rest={};afterFullData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const resizeHeight=rowRest.resizeHeight;if(resizeHeight||isFull){const currCellHeight=(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);rest[rowid]=currCellHeight;}}});return rest;},recalcRowHeight(rowOrId){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const rows=_xeUtils.default.isArray(rowOrId)?rowOrId:[rowOrId];const el=$xeTable.$refs.refElem;if(el){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');rows.forEach(row=>{const rowid=_xeUtils.default.isString(row)||_xeUtils.default.isNumber(row)?row:handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.resizeHeight=calcCellAutoHeight($xeTable,rowid,rowRest,el);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}return $xeTable.$nextTick();},setRowHeight(rowOrId,height){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;let status=false;const rows=_xeUtils.default.isArray(rowOrId)?rowOrId:[rowOrId];let rHeight=_xeUtils.default.toInteger(height);if((0,_dom.isScale)(height)){const tableBody=$xeTable.$refs.refTableBody;const bodyElem=tableBody?tableBody.$el:null;const bodyHeight=bodyElem?bodyElem.clientHeight-1:0;rHeight=Math.floor(rHeight*bodyHeight);}if(rHeight){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);rows.forEach(row=>{const rowid=_xeUtils.default.isString(row)||_xeUtils.default.isNumber(row)?row:handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.resizeHeight=rHeight;if(!status){status=true;}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return $xeTable.$nextTick();},getRowHeight(rowOrId){const $xeTable=this;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const rowOpts=$xeTable.computeRowOpts;const cellOpts=$xeTable.computeCellOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const rowid=_xeUtils.default.isString(rowOrId)||_xeUtils.default.isNumber(rowOrId)?rowOrId:(0,_util.getRowid)($xeTable,rowOrId);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return(0,_util.getCellRestHeight)(rowRest,cellOpts,rowOpts,defaultRowHeight);}return 0;},/**
482
482
  * 刷新滚动操作,手动同步滚动相关位置(对于某些特殊的操作,比如滚动条错位、固定列不同步)
483
483
  */refreshScroll(){const $xeTable=this;const internalData=$xeTable;const{elemStore,lastScrollLeft,lastScrollTop}=internalData;const headerScrollElem=(0,_util.getRefElem)(elemStore['main-header-scroll']);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const footerScrollElem=(0,_util.getRefElem)(elemStore['main-footer-scroll']);const leftScrollElem=(0,_util.getRefElem)(elemStore['left-body-scroll']);const rightScrollElem=(0,_util.getRefElem)(elemStore['right-body-scroll']);const xHandleEl=$xeTable.$refs.refScrollXHandleElem;const yHandleEl=$xeTable.$refs.refScrollYHandleElem;return new Promise(resolve=>{// 还原滚动条位置
484
484
  if(lastScrollLeft||lastScrollTop){return(0,_util.restoreScrollLocation)($xeTable,lastScrollLeft,lastScrollTop).then(()=>{// 存在滚动行为未结束情况