vxe-table 3.17.7 → 3.17.8

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 (47) hide show
  1. package/es/grid/src/grid.js +47 -29
  2. package/es/style.css +1 -1
  3. package/es/table/module/export/mixin.js +3 -1
  4. package/es/table/src/methods.js +109 -42
  5. package/es/table/src/props.js +1 -1
  6. package/es/table/src/table.js +7 -1
  7. package/es/table/src/util.js +0 -4
  8. package/es/toolbar/src/toolbar.js +2 -2
  9. package/es/ui/index.js +13 -4
  10. package/es/ui/src/log.js +1 -1
  11. package/lib/grid/src/grid.js +49 -26
  12. package/lib/grid/src/grid.min.js +1 -1
  13. package/lib/index.umd.js +13411 -13299
  14. package/lib/index.umd.min.js +1 -1
  15. package/lib/style.css +1 -1
  16. package/lib/table/module/export/mixin.js +5 -1
  17. package/lib/table/module/export/mixin.min.js +1 -1
  18. package/lib/table/src/methods.js +114 -43
  19. package/lib/table/src/methods.min.js +1 -1
  20. package/lib/table/src/props.js +2 -2
  21. package/lib/table/src/props.min.js +1 -1
  22. package/lib/table/src/table.js +8 -2
  23. package/lib/table/src/table.min.js +1 -1
  24. package/lib/table/src/util.js +0 -4
  25. package/lib/table/src/util.min.js +1 -1
  26. package/lib/toolbar/src/toolbar.js +2 -0
  27. package/lib/toolbar/src/toolbar.min.js +1 -1
  28. package/lib/ui/index.js +12 -3
  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/package.json +1 -1
  33. package/packages/grid/src/grid.ts +49 -30
  34. package/packages/table/module/export/mixin.ts +5 -3
  35. package/packages/table/src/methods.ts +118 -46
  36. package/packages/table/src/props.ts +1 -1
  37. package/packages/table/src/table.ts +7 -1
  38. package/packages/table/src/util.ts +0 -4
  39. package/packages/toolbar/src/toolbar.ts +2 -2
  40. package/packages/ui/index.ts +12 -2
  41. package/packages/ui/src/dom.ts +1 -1
  42. /package/es/{iconfont.1754614978390.ttf → iconfont.1754905462391.ttf} +0 -0
  43. /package/es/{iconfont.1754614978390.woff → iconfont.1754905462391.woff} +0 -0
  44. /package/es/{iconfont.1754614978390.woff2 → iconfont.1754905462391.woff2} +0 -0
  45. /package/lib/{iconfont.1754614978390.ttf → iconfont.1754905462391.ttf} +0 -0
  46. /package/lib/{iconfont.1754614978390.woff → iconfont.1754905462391.woff} +0 -0
  47. /package/lib/{iconfont.1754614978390.woff2 → iconfont.1754905462391.woff2} +0 -0
@@ -1307,6 +1307,7 @@ var _default = exports.default = {
1307
1307
  const reactData = $xeTable;
1308
1308
  const internalData = $xeTable;
1309
1309
  const $xeGrid = $xeTable.$xeGrid;
1310
+ const $xeGantt = $xeTable.$xeGantt;
1310
1311
  const {
1311
1312
  treeConfig,
1312
1313
  showHeader,
@@ -1561,6 +1562,7 @@ var _default = exports.default = {
1561
1562
  const params = {
1562
1563
  $table: $xeTable,
1563
1564
  $grid: $xeGrid,
1565
+ $gantt: $xeGantt,
1564
1566
  sort: sortData.length ? sortData[0] : {},
1565
1567
  sorts: sortData,
1566
1568
  filters: gridReactData.filterData,
@@ -1571,7 +1573,9 @@ var _default = exports.default = {
1571
1573
  const listProp = resConfigs.list;
1572
1574
  handleOptions.data = (listProp ? _xeUtils.default.isFunction(listProp) ? listProp({
1573
1575
  data: rest,
1574
- $grid: $xeGrid
1576
+ $table: $xeTable,
1577
+ $grid: $xeGrid,
1578
+ $gantt: $xeGantt
1575
1579
  }) : _xeUtils.default.get(rest, listProp) : rest) || [];
1576
1580
  if (afterQueryAll) {
1577
1581
  afterQueryAll(params);
@@ -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{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function hasTreeChildren(e,t){e=e.computeTreeOpts,e=e.children||e.childrenField;return t[e]&&t[e].length}function getSeq(e,t,l,r,o,a){var i=e.computeSeqOpts.seqMethod||o.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),$rowIndex:r,column:o,columnIndex:e.getColumnIndex(o),$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(h,m,x,e){let{isAllExpand:g,mode:f}=m;var t=h.treeConfig;let v=h.computeRadioOpts,b=h.computeCheckboxOpts;var l=h.computeTreeOpts;let _=h.computeColumnOpts;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;let c=[],u={},p={},i=(0,_util.createHandleGetRowId)(h).handleGetRowId;return _xeUtils.default.eachTree(e,(e,s,t,n,l,r)=>{let d=e._row||e;var o=i(d);if(!p[o]){e=l&&l._row?l._row:l,l=e?i(e):"";if(g||!e||u[l]&&h.isTreeExpandByRow(e)){var a=hasTreeChildren(h,d);let i={_row:d,_level:r.length-1,_hasChild:a,_expand:a&&h.isTreeExpandByRow(d)};x.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod||_.exportMethod;if(o=(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod:o)||_.exportMethod)l=o({$table:h,row:d,column:e,options:m});else switch(e.type){case"seq":var a=n.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===f?a:getSeq(h,a,d,s,e,t);break;case"checkbox":l=toBooleanValue(h.isCheckedByCheckboxRow(d)),i._checkboxLabel=b.labelField?_xeUtils.default.get(d,b.labelField):"",i._checkboxDisabled=b.checkMethod&&!b.checkMethod({$table:h,row:d});break;case"radio":l=toBooleanValue(h.isCheckedByRadioRow(d)),i._radioLabel=v.labelField?_xeUtils.default.get(d,v.labelField):"",i._radioDisabled=v.checkMethod&&!v.checkMethod({$table:h,row:d});break;default:m.original?l=(0,_util.getCellValue)(d,e):(l=h.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=h.getCellElement(d,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}i[e.id]=toStringValue(l)}),p[o]=!0,l&&(u[l]=!0),c.push(Object.assign(i,d))}}},{children:t}),c}return e.map((i,s)=>{let n={_row:i};return x.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod||_.exportMethod;if(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod:o)l=o({$table:h,row:i,column:e,options:m});else switch(e.type){case"seq":var a=s+1;l="all"===f?a:getSeq(h,a,i,s,e,t);break;case"checkbox":l=toBooleanValue(h.isCheckedByCheckboxRow(i)),n._checkboxLabel=b.labelField?_xeUtils.default.get(i,b.labelField):"",n._checkboxDisabled=b.checkMethod&&!b.checkMethod({$table:h,row:i});break;case"radio":l=toBooleanValue(h.isCheckedByRadioRow(i)),n._radioLabel=v.labelField?_xeUtils.default.get(i,v.labelField):"",n._radioDisabled=v.checkMethod&&!v.checkMethod({$table:h,row:i});break;default:m.original?l=(0,_util.getCellValue)(i,e):(l=h.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=h.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}n[e.id]=toStringValue(l)}),n})}function getExportData(l,e){let{columns:t,dataFilterMethod:r}=e,o=e.data;return r&&(o=o.filter((e,t)=>r({$table:l,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,o)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var r=e.computeColumnOpts,r=l.headerExportMethod||r.headerExportMethod;return r?r({column:l,options:t,$table:e}):(t.isTitle?l.getTitle():l.field)||""}function getFooterCellValue(e,t,l,r){var o=e.computeColumnOpts,a=r.editRender||r.cellRender;let i=r.footerExportMethod;i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||o.footerExportMethod;a=e.getVTColumnIndex(r);return i?i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:r,options:t}):_xeUtils.default.isArray(l)?_xeUtils.default.toValueString(l[a]):_xeUtils.default.get(l,r.field)}function getFooterData(l,e,t){let r=e.footerFilterMethod;return r?t.filter((e,t)=>r({$table:l,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function toCsv(l,r,e,t){var o=l;let a=csvBOM;return r.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(l,r,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join(",")+enterSymbol})),a}function toTxt(l,r,e,t){var o=l;let a="";return r.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(l,r,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,r){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?r:t;let o="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:r,scrollYLoad:t}=e;return o=r||t?o||!0:o}function toHtml(d,s,e,t){var l=d;let{id:c,border:r,treeConfig:o,headerAlign:n,align:u,footerAlign:a,showOverflow:p,showHeaderOverflow:h}=d,{isAllSelected:m,isIndeterminate:i}=l,x=d.mergeBodyCellMaps,g=d.computeTreeOpts,{print:f,isHeader:v,isFooter:b,isColgroup:_,isMerge:y,colgroups:$,original:C}=s,w="check-all",T=[`<table class="${["vxe-table","border--"+toTableBorder(r),f?"is--print":"",v?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];v&&(T.push("<thead>"),_&&!C?$.forEach(e=>{T.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||n||u,l=hasEllipsis(d,t,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,s,t);let o=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,o+=e.renderWidth},{children:"childNodes"});var i=o-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${f?"":`style="width: ${i}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${r}"><div ${f?"":`style="width: ${i}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`)}):T.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||n||u,l=hasEllipsis(d,e,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,s,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`),T.push("</thead>")),t.length&&(T.push("<tbody>"),o?t.forEach(o=>{T.push("<tr>"+e.map(t=>{var e=t.align||u,l=hasEllipsis(d,t,"showOverflow",p)?["col--ellipsis"]:[],r=o[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return o._hasChild&&(e=`<i class="${o._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${r}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(n=>{T.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||u,r=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],t=n[t];let o=1,a=1;if(y){var i=d.getVTRowIndex(n._row),s=d.getVTColumnIndex(e),i=x[i+":"+s];if(i){var{rowspan:s,colspan:i}=i;if(!s||!i)return"";1<s&&(o=s),1<i&&(a=i)}}return l&&r.push("col--"+l),"radio"===e.type?`<td class="${r.join(" ")}" rowspan="${o}" colspan="${a}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${c}" ${n._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${n._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${r.join(" ")}" rowspan="${o}" colspan="${a}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${n._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${n._checkboxLabel}</span></div></td>`:`<td class="${r.join(" ")}" rowspan="${o}" colspan="${a}" title="${t}"><div ${f?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),T.push("</tbody>")),b&&(t=l.footerTableData,(l=getFooterData(d,s,t)).length)&&(T.push("<tfoot>"),l.forEach(o=>{T.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||a||u,l=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],r=getFooterCellValue(d,s,o,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")}</tr>`)}),T.push("</tfoot>"));t=!m&&i?`<script>(function(){var a=document.querySelector(".${w}");if(a){a.indeterminate=true}})()</script>`:"";return T.push("</table>",t),f?T.join(""):(0,_util2.createHtmlPage)(s,T.join(""))}function toXML(l,r,e,t){var o=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="${r.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return r.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,r,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>"}),r.isFooter&&(t=o.footerTableData,getFooterData(l,r,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,r,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,r){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,r);case"txt":return toTxt(e,t,l,r);case"html":return toHtml(e,t,l,r);case"xml":return toXML(e,t,l,r)}return""}function downloadFile(e,t,l){var{filename:r,type:o,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:o,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:r,type:o,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,r){let o=l.$xeGrid,{remote:a,columns:i,colgroups:s,exportMethod:n,afterExportMethod:t}=r;return new Promise(t=>{if(a){var e={options:r,$table:l,$grid:o};t(n?n(e):e)}else{let e=getExportData(l,r);t(l.preventEvent(null,"event.export",{options:r,columns:i,colgroups:s,datas:e},()=>downloadFile(l,r,getContent(l,r,i,e))))}}).then(e=>(clearColumnConvert(i),r.print||t&&t({status:!0,options:r,$table:l,$grid:o}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(i),r.print||t&&t({status:!1,options:r,$table:l,$grid:o});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=[],s=[];if(e.length){let r={},o=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=replaceTxtCell(t,r),l})).split(a);s.length?(e.forEach((e,t)=>{t<s.length&&(l[s[t]]=getTxtCellValue(e.trim(),r))}),i.push(l)):s=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),r)))}})}return{fields:s,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 r=[],o=[];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=>{o.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)=>{o[t]&&(l[o[t]]=e.textContent||"")}),r.push(l)}),{fields:o,rows:r}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let r=[],o=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{o.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)=>{o[t]&&(l[o[t]]=e.textContent)}),r.push(l)}})),{fields:o,rows:r}}function handleImport(l,e,r){let{tableFullColumn:t,_importResolve:o,_importReject:a}=l,i={fields:[],rows:[]},s={},n={};t.forEach(e=>{var t=e.field,l=e.getTitle();t&&(s[t]=e),l&&(n[e.getTitle()]=e)});var d={fieldMaps:s,titleMaps:n};switch(r.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=>s[e]||n[e])?l.createData(u).then(e=>{let t;return"insert"!==r.mode&&"insertBottom"!==r.mode||(t=l.insertAt(e,-1)),t="insertTop"===r.mode?l.insert(e):l.reloadData(e),!1!==r.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{o&&o({status:!0})})}):!1!==r.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(a,i,s){let n=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=s,{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},r=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=r,window.FileReader){let t=Object.assign({mode:"insertTop"},s,{type:c,filename:u});var o;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(o=n.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:o},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[c]),r({status:!1})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else(0,_log.errLog)("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:s,$table:a})}).catch(e=>(t&&t({status:!1,options:s,$table:a}),Promise.reject(e))):(!1!==s.message&&(_ui.VxeUI.modal||(0,_log.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,r,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?r.id===e.id:_xeUtils.default.isString(e)?r.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?r.id===t:e&&l?r.field===e&&r.type===l:e?r.field===e:!!l&&r.type===l)})}function handleFilterFields(e,t,l,r){return(!r||!_xeUtils.default.includes(r,t.field))&&(l?!!_xeUtils.default.includes(l,t.field):e.original?!!t.field:defaultFilterExportColumn(t))}function handleExportAndPrint(s,e,t){var l=s.$xeGrid,{treeConfig:r,showHeader:o,showFooter:a}=s,{initStore:i,isGroup:n,footerTableData:d,exportStore:c,exportParams:u}=s,{collectColumn:p,mergeBodyList:h,mergeFooterList:m}=s,x=s.computeExportOpts,g=s.computeCustomOpts,f=s.getCheckboxRecords(),v=l?l.computeProxyOpts:{},d=!!d.length,h=!(!h.length&&!m.length);let b=Object.assign({message:!0,isHeader:o,isTitle:o,isFooter:a,isColgroup:n,isMerge:h,useStyle:!0,current:"current",modes:(v.ajax&&v.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);m=b.types||_xeUtils.default.keys(x._typeMaps),o=b.modes||[];let _=g.checkMethod;a=p.slice(0);let{columns:y,excludeFields:$,includeFields:C}=b;v=m.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=o.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});_xeUtils.default.eachTree(a,(e,t,l,r,o)=>{var a=e.children&&0<e.children.length;let i=!1;i=y&&y.length?handleFilterColumns(b,e,y):$||C?handleFilterFields(b,e,C,$):e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=o&&o.disabled||!!_&&!_({$table:s,column:e})}),Object.assign(c,{columns:a,typeList:v,modeList:e,hasFooter:d,hasMerge:h,hasTree:r,isPrint:t,hasColgroup:n,visible:!0}),Object.assign(u,{mode:f.length?"selected":"current"},b);let{filename:w,sheetName:T,mode:E,type:F}=u;return w&&(_xeUtils.default.isFunction(w)?u.filename=w({options:b,$table:s,$grid:l}):u.filename=""+w),T&&(_xeUtils.default.isFunction(T)?u.sheetName=T({options:b,$table:s,$grid:l}):u.sheetName=""+T),e.some(e=>e.value===E)||(u.mode=e[0].value),v.some(e=>e.value===F)||(u.type=v[0].value),i.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,r=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{r(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,r(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let s=this;var t=s,l=s,r=s;let n=s.$xeGrid;var{treeConfig:t,showHeader:d,showFooter:c}=t,l=l.isGroup;let{tableFullColumn:a,afterFullData:o,afterTreeFullData:i,collectColumn:u,mergeBodyList:p,mergeFooterList:h}=r;var r=s.computeExportOpts,m=s.computeTreeOpts;let x=n?n.computeProxyOpts:{};var g=!(!p.length&&!h.length);let f=Object.assign({message:!0,isHeader:d,isTitle:d,isFooter:c,isColgroup:l,isMerge:g,useStyle:!0,current:"current",modes:(x.ajax&&x.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},r,e),{filename:v,sheetName:b,type:_,mode:y,columns:$,original:C,columnFilterMethod:w,beforeExportMethod:T,includeFields:E,excludeFields:F}=f,M=[],k=s.getCheckboxRecords(),U=(y=y||(k.length?"selected":"current"),!1),I=[],j=(I=$&&$.length?(U=!0,$):_xeUtils.default.searchTree(u,e=>{var t=e.children&&0<e.children.length;let l=!1;return l=$&&$.length?handleFilterColumns(f,e,$):F||E?handleFilterFields(f,e,E,F):e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0}),Object.assign({},f,{filename:"",sheetName:""})),O=(U||w||(w=({column:e})=>(!F||!_xeUtils.default.includes(F,e.field))&&(E?!!_xeUtils.default.includes(E,e.field):C?!!e.field:defaultFilterExportColumn(e)),j.columnFilterMethod=w),M=I?(j._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(I,e=>{let r;if(e){if((0,_util.isColumnInfo)(e))r=e;else if(_xeUtils.default.isString(e))r=s.getColumnByField(e);else{var o=e.id||e.colId;let t=e.type,l=e.field;o?r=s.getColumnById(o):l&&t?r=a.find(e=>e.field===l&&e.type===t):l?r=s.getColumnByField(l):t&&(r=a.find(e=>e.type===t))}return r||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!w||w({$table:s,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?u:a,(e,t)=>e.visible&&(!w||w({$table:s,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(M,e=>{e.children&&e.children.length||O.push(e)},{children:"childNodes"}),j.columns=O,j.colgroups=convertToRows(M),v&&(_xeUtils.default.isFunction(v)?j.filename=v({options:f,$table:s,$grid:n}):j.filename=""+v),j.filename||(j.filename=getI18n(j.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),b&&(_xeUtils.default.isFunction(b)?j.sheetName=b({options:f,$table:s,$grid:n}):j.sheetName=""+b),j.sheetName||(j.sheetName=document.title||""),!j.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(r._typeMaps),_))return(0,_log.errLog)("vxe.error.notType",[_]),["xlsx","pdf"].includes(_)&&(0,_log.warnLog)("vxe.error.reqPlugin",[4,"plugin-export-xlsx"]),Promise.reject({status:!1});if(j.print||T&&T({options:j,$table:s,$grid:n}),j.data)j._isCustomData=!0;else if(j.data=[],"selected"===y)-1<["html","pdf"].indexOf(_)&&t?j.data=_xeUtils.default.searchTree(s.getTableData().fullData,e=>-1<s.findRowIndexOf(k,e),Object.assign({},m,{data:"_row"})):j.data=k;else if("all"===y){if(n||(0,_log.errLog)("vxe.error.errProp",["all","mode=current,selected"]),n&&!j.remote){d=n;let e=n.computeProxyOpts;c=d.sortData;let{beforeQueryAll:t,afterQueryAll:r,ajax:l={}}=e,o=e.response||e.props||{};g=l.queryAll;let a=l.queryAllSuccess,i=l.queryAllError;if(g||(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),g){let l={$table:s,$grid:n,sort:c.length?c[0]:{},sorts:c,filters:d.filterData,form:d.formData,options:j};return Promise.resolve((t||g)(l)).then(e=>{var t=o.list;return j.data=(t?_xeUtils.default.isFunction(t)?t({data:e,$grid:n}):_xeUtils.default.get(e,t):e)||[],r&&r(l),a&&a(Object.assign(Object.assign({},l),{response:e})),handleExport(s,j)}).catch(e=>{i&&i(Object.assign(Object.assign({},l),{response:e}))})}}}else"current"===y&&(j.data=t?i:o);return handleExport(s,j)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;return l&&l({options:t,$table:this}),handleFileImport(this,e,t)},_importData(e){let t=this;var l=this.importOpts;let r=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:o,afterImportMethod:a}=r;return o&&o({options:r,$table:this}),_ui.VxeUI.readFile(r).catch(e=>(a&&a({status:!1,options:r,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,r)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this;var t=l.$xeGrid;let r=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});e=r.sheetName;let o="",a=(o=(o=e?_xeUtils.default.isFunction(e)?e({options:r,$table:l,$grid:t}):""+e:o)||document.title||"",r.beforePrintMethod),i=r.html||r.content;return new Promise((e,t)=>{_ui.VxeUI.print?i?e(_ui.VxeUI.print({title:o,html:i,customStyle:r.style,beforeMethod:a?({html:e})=>a({html:e,content:e,options:r,$table:l}):void 0})):e(l.exportData(r).then(({content:e})=>_ui.VxeUI.print({title:o,html:e,customStyle:r.style,beforeMethod:a?({html:e})=>a({html:e,content:e,options:r,$table:l}):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:r,importStore:o,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||[],s=i.modes||[];!t?(l||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=s.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(o,{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),r.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||(0,_log.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||(0,_log.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{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function hasTreeChildren(e,t){e=e.computeTreeOpts,e=e.children||e.childrenField;return t[e]&&t[e].length}function getSeq(e,t,l,r,o,a){var i=e.computeSeqOpts.seqMethod||o.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),$rowIndex:r,column:o,columnIndex:e.getColumnIndex(o),$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(h,m,x,e){let{isAllExpand:g,mode:f}=m;var t=h.treeConfig;let v=h.computeRadioOpts,b=h.computeCheckboxOpts;var l=h.computeTreeOpts;let _=h.computeColumnOpts;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;let c=[],u={},p={},i=(0,_util.createHandleGetRowId)(h).handleGetRowId;return _xeUtils.default.eachTree(e,(e,s,t,n,l,r)=>{let d=e._row||e;var o=i(d);if(!p[o]){e=l&&l._row?l._row:l,l=e?i(e):"";if(g||!e||u[l]&&h.isTreeExpandByRow(e)){var a=hasTreeChildren(h,d);let i={_row:d,_level:r.length-1,_hasChild:a,_expand:a&&h.isTreeExpandByRow(d)};x.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod||_.exportMethod;if(o=(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod:o)||_.exportMethod)l=o({$table:h,row:d,column:e,options:m});else switch(e.type){case"seq":var a=n.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===f?a:getSeq(h,a,d,s,e,t);break;case"checkbox":l=toBooleanValue(h.isCheckedByCheckboxRow(d)),i._checkboxLabel=b.labelField?_xeUtils.default.get(d,b.labelField):"",i._checkboxDisabled=b.checkMethod&&!b.checkMethod({$table:h,row:d});break;case"radio":l=toBooleanValue(h.isCheckedByRadioRow(d)),i._radioLabel=v.labelField?_xeUtils.default.get(d,v.labelField):"",i._radioDisabled=v.checkMethod&&!v.checkMethod({$table:h,row:d});break;default:m.original?l=(0,_util.getCellValue)(d,e):(l=h.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=h.getCellElement(d,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}i[e.id]=toStringValue(l)}),p[o]=!0,l&&(u[l]=!0),c.push(Object.assign(i,d))}}},{children:t}),c}return e.map((i,s)=>{let n={_row:i};return x.forEach((e,t)=>{let l="";var r=e.editRender||e.cellRender;let o=e.exportMethod||_.exportMethod;if(o=!o&&r&&r.name&&(r=renderer.get(r.name))?r.tableExportMethod||r.exportMethod:o)l=o({$table:h,row:i,column:e,options:m});else switch(e.type){case"seq":var a=s+1;l="all"===f?a:getSeq(h,a,i,s,e,t);break;case"checkbox":l=toBooleanValue(h.isCheckedByCheckboxRow(i)),n._checkboxLabel=b.labelField?_xeUtils.default.get(i,b.labelField):"",n._checkboxDisabled=b.checkMethod&&!b.checkMethod({$table:h,row:i});break;case"radio":l=toBooleanValue(h.isCheckedByRadioRow(i)),n._radioLabel=v.labelField?_xeUtils.default.get(i,v.labelField):"",n._radioDisabled=v.checkMethod&&!v.checkMethod({$table:h,row:i});break;default:m.original?l=(0,_util.getCellValue)(i,e):(l=h.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=h.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}n[e.id]=toStringValue(l)}),n})}function getExportData(l,e){let{columns:t,dataFilterMethod:r}=e,o=e.data;return r&&(o=o.filter((e,t)=>r({$table:l,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,o)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var r=e.computeColumnOpts,r=l.headerExportMethod||r.headerExportMethod;return r?r({column:l,options:t,$table:e}):(t.isTitle?l.getTitle():l.field)||""}function getFooterCellValue(e,t,l,r){var o=e.computeColumnOpts,a=r.editRender||r.cellRender;let i=r.footerExportMethod;i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||o.footerExportMethod;a=e.getVTColumnIndex(r);return i?i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:r,options:t}):_xeUtils.default.isArray(l)?_xeUtils.default.toValueString(l[a]):_xeUtils.default.get(l,r.field)}function getFooterData(l,e,t){let r=e.footerFilterMethod;return r?t.filter((e,t)=>r({$table:l,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function toCsv(l,r,e,t){var o=l;let a=csvBOM;return r.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(l,r,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join(",")+enterSymbol})),a}function toTxt(l,r,e,t){var o=l;let a="";return r.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,r,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),r.isFooter&&(t=o.footerTableData,getFooterData(l,r,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,r,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,r){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?r:t;let o="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:r,scrollYLoad:t}=e;return o=r||t?o||!0:o}function toHtml(d,s,e,t){var l=d;let{id:c,border:r,treeConfig:o,headerAlign:n,align:u,footerAlign:a,showOverflow:p,showHeaderOverflow:h}=d,{isAllSelected:m,isIndeterminate:i}=l,x=d.mergeBodyCellMaps,g=d.computeTreeOpts,{print:f,isHeader:v,isFooter:b,isColgroup:_,isMerge:$,colgroups:y,original:C}=s,w="check-all",T=[`<table class="${["vxe-table","border--"+toTableBorder(r),f?"is--print":"",v?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];v&&(T.push("<thead>"),_&&!C?y.forEach(e=>{T.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||n||u,l=hasEllipsis(d,t,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,s,t);let o=0,a=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||a++,o+=e.renderWidth},{children:"childNodes"});var i=o-a;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${f?"":`style="width: ${i}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${r}"><div ${f?"":`style="width: ${i}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`)}):T.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||n||u,l=hasEllipsis(d,e,"showHeaderOverflow",h)?["col--ellipsis"]:[],r=getHeaderTitle(d,s,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${r}</span></div></th>`:`<th class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(r,!0)}</span></div></th>`}).join("")}</tr>`),T.push("</thead>")),t.length&&(T.push("<tbody>"),o?t.forEach(o=>{T.push("<tr>"+e.map(t=>{var e=t.align||u,l=hasEllipsis(d,t,"showOverflow",p)?["col--ellipsis"]:[],r=o[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return o._hasChild&&(e=`<i class="${o._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${o._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${r}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${c}" ${o._radioDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${f?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${o._checkboxDisabled?"disabled ":""}${getBooleanValue(r)?"checked":""}><span>${o._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(n=>{T.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||u,r=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],t=n[t];let o=1,a=1;if($){var i=d.getVTRowIndex(n._row),s=d.getVTColumnIndex(e),i=x[i+":"+s];if(i){var{rowspan:s,colspan:i}=i;if(!s||!i)return"";1<s&&(o=s),1<i&&(a=i)}}return l&&r.push("col--"+l),"radio"===e.type?`<td class="${r.join(" ")}" rowspan="${o}" colspan="${a}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${c}" ${n._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${n._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${r.join(" ")}" rowspan="${o}" colspan="${a}"><div ${f?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${n._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${n._checkboxLabel}</span></div></td>`:`<td class="${r.join(" ")}" rowspan="${o}" colspan="${a}" title="${t}"><div ${f?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),T.push("</tbody>")),b&&(t=l.footerTableData,(l=getFooterData(d,s,t)).length)&&(T.push("<tfoot>"),l.forEach(o=>{T.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||a||u,l=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],r=getFooterCellValue(d,s,o,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${r}"><div ${f?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(r,!0)}</div></td>`}).join("")}</tr>`)}),T.push("</tfoot>"));t=!m&&i?`<script>(function(){var a=document.querySelector(".${w}");if(a){a.indeterminate=true}})()</script>`:"";return T.push("</table>",t),f?T.join(""):(0,_util2.createHtmlPage)(s,T.join(""))}function toXML(l,r,e,t){var o=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="${r.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return r.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,r,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>"}),r.isFooter&&(t=o.footerTableData,getFooterData(l,r,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,r,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,r){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,r);case"txt":return toTxt(e,t,l,r);case"html":return toHtml(e,t,l,r);case"xml":return toXML(e,t,l,r)}return""}function downloadFile(e,t,l){var{filename:r,type:o,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:o,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:r,type:o,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,r){let o=l.$xeGrid,{remote:a,columns:i,colgroups:s,exportMethod:n,afterExportMethod:t}=r;return new Promise(t=>{if(a){var e={options:r,$table:l,$grid:o};t(n?n(e):e)}else{let e=getExportData(l,r);t(l.preventEvent(null,"event.export",{options:r,columns:i,colgroups:s,datas:e},()=>downloadFile(l,r,getContent(l,r,i,e))))}}).then(e=>(clearColumnConvert(i),r.print||t&&t({status:!0,options:r,$table:l,$grid:o}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(i),r.print||t&&t({status:!1,options:r,$table:l,$grid:o});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=[],s=[];if(e.length){let r={},o=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(o);return r[l]=replaceTxtCell(t,r),l})).split(a);s.length?(e.forEach((e,t)=>{t<s.length&&(l[s[t]]=getTxtCellValue(e.trim(),r))}),i.push(l)):s=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),r)))}})}return{fields:s,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 r=[],o=[];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=>{o.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)=>{o[t]&&(l[o[t]]=e.textContent||"")}),r.push(l)}),{fields:o,rows:r}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let r=[],o=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{o.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)=>{o[t]&&(l[o[t]]=e.textContent)}),r.push(l)}})),{fields:o,rows:r}}function handleImport(l,e,r){let{tableFullColumn:t,_importResolve:o,_importReject:a}=l,i={fields:[],rows:[]},s={},n={};t.forEach(e=>{var t=e.field,l=e.getTitle();t&&(s[t]=e),l&&(n[e.getTitle()]=e)});var d={fieldMaps:s,titleMaps:n};switch(r.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=>s[e]||n[e])?l.createData(u).then(e=>{let t;return"insert"!==r.mode&&"insertBottom"!==r.mode||(t=l.insertAt(e,-1)),t="insertTop"===r.mode?l.insert(e):l.reloadData(e),!1!==r.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{o&&o({status:!0})})}):!1!==r.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(a,i,s){let n=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=s,{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},r=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=r,window.FileReader){let t=Object.assign({mode:"insertTop"},s,{type:c,filename:u});var o;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(o=n.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:o},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[c]),r({status:!1})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else(0,_log.errLog)("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:s,$table:a})}).catch(e=>(t&&t({status:!1,options:s,$table:a}),Promise.reject(e))):(!1!==s.message&&(_ui.VxeUI.modal||(0,_log.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,r,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?r.id===e.id:_xeUtils.default.isString(e)?r.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?r.id===t:e&&l?r.field===e&&r.type===l:e?r.field===e:!!l&&r.type===l)})}function handleFilterFields(e,t,l,r){return(!r||!_xeUtils.default.includes(r,t.field))&&(l?!!_xeUtils.default.includes(l,t.field):e.original?!!t.field:defaultFilterExportColumn(t))}function handleExportAndPrint(s,e,t){var l=s.$xeGrid,{treeConfig:r,showHeader:o,showFooter:a}=s,{initStore:i,isGroup:n,footerTableData:d,exportStore:c,exportParams:u}=s,{collectColumn:p,mergeBodyList:h,mergeFooterList:m}=s,x=s.computeExportOpts,g=s.computeCustomOpts,f=s.getCheckboxRecords(),v=l?l.computeProxyOpts:{},d=!!d.length,h=!(!h.length&&!m.length);let b=Object.assign({message:!0,isHeader:o,isTitle:o,isFooter:a,isColgroup:n,isMerge:h,useStyle:!0,current:"current",modes:(v.ajax&&v.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);m=b.types||_xeUtils.default.keys(x._typeMaps),o=b.modes||[];let _=g.checkMethod;a=p.slice(0);let{columns:$,excludeFields:y,includeFields:C}=b;v=m.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=o.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});_xeUtils.default.eachTree(a,(e,t,l,r,o)=>{var a=e.children&&0<e.children.length;let i=!1;i=$&&$.length?handleFilterColumns(b,e,$):y||C?handleFilterFields(b,e,C,y):e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=o&&o.disabled||!!_&&!_({$table:s,column:e})}),Object.assign(c,{columns:a,typeList:v,modeList:e,hasFooter:d,hasMerge:h,hasTree:r,isPrint:t,hasColgroup:n,visible:!0}),Object.assign(u,{mode:f.length?"selected":"current"},b);let{filename:w,sheetName:T,mode:E,type:F}=u;return w&&(_xeUtils.default.isFunction(w)?u.filename=w({options:b,$table:s,$grid:l}):u.filename=""+w),T&&(_xeUtils.default.isFunction(T)?u.sheetName=T({options:b,$table:s,$grid:l}):u.sheetName=""+T),e.some(e=>e.value===E)||(u.mode=e[0].value),v.some(e=>e.value===F)||(u.type=v[0].value),i.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,r=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{r(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,r(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let s=this;var t=s,l=s,r=s;let n=s.$xeGrid,d=s.$xeGantt;var{treeConfig:t,showHeader:c,showFooter:u}=t,l=l.isGroup;let{tableFullColumn:a,afterFullData:o,afterTreeFullData:i,collectColumn:p,mergeBodyList:h,mergeFooterList:m}=r;var r=s.computeExportOpts,x=s.computeTreeOpts;let g=n?n.computeProxyOpts:{};var f=!(!h.length&&!m.length);let v=Object.assign({message:!0,isHeader:c,isTitle:c,isFooter:u,isColgroup:l,isMerge:f,useStyle:!0,current:"current",modes:(g.ajax&&g.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},r,e),{filename:b,sheetName:_,type:$,mode:y,columns:C,original:w,columnFilterMethod:T,beforeExportMethod:E,includeFields:F,excludeFields:M}=v,k=[],U=s.getCheckboxRecords(),I=(y=y||(U.length?"selected":"current"),!1),j=[],O=(j=C&&C.length?(I=!0,C):_xeUtils.default.searchTree(p,e=>{var t=e.children&&0<e.children.length;let l=!1;return l=C&&C.length?handleFilterColumns(v,e,C):M||F?handleFilterFields(v,e,F,M):e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0}),Object.assign({},v,{filename:"",sheetName:""})),L=(I||T||(T=({column:e})=>(!M||!_xeUtils.default.includes(M,e.field))&&(F?!!_xeUtils.default.includes(F,e.field):w?!!e.field:defaultFilterExportColumn(e)),O.columnFilterMethod=T),k=j?(O._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(j,e=>{let r;if(e){if((0,_util.isColumnInfo)(e))r=e;else if(_xeUtils.default.isString(e))r=s.getColumnByField(e);else{var o=e.id||e.colId;let t=e.type,l=e.field;o?r=s.getColumnById(o):l&&t?r=a.find(e=>e.field===l&&e.type===t):l?r=s.getColumnByField(l):t&&(r=a.find(e=>e.type===t))}return r||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!T||T({$table:s,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?p:a,(e,t)=>e.visible&&(!T||T({$table:s,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(k,e=>{e.children&&e.children.length||L.push(e)},{children:"childNodes"}),O.columns=L,O.colgroups=convertToRows(k),b&&(_xeUtils.default.isFunction(b)?O.filename=b({options:v,$table:s,$grid:n}):O.filename=""+b),O.filename||(O.filename=getI18n(O.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),_&&(_xeUtils.default.isFunction(_)?O.sheetName=_({options:v,$table:s,$grid:n}):O.sheetName=""+_),O.sheetName||(O.sheetName=document.title||""),!O.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(r._typeMaps),$))return(0,_log.errLog)("vxe.error.notType",[$]),["xlsx","pdf"].includes($)&&(0,_log.warnLog)("vxe.error.reqPlugin",[4,"plugin-export-xlsx"]),Promise.reject({status:!1});if(O.print||E&&E({options:O,$table:s,$grid:n}),O.data)O._isCustomData=!0;else if(O.data=[],"selected"===y)-1<["html","pdf"].indexOf($)&&t?O.data=_xeUtils.default.searchTree(s.getTableData().fullData,e=>-1<s.findRowIndexOf(U,e),Object.assign({},x,{data:"_row"})):O.data=U;else if("all"===y){if(n||(0,_log.errLog)("vxe.error.errProp",["all","mode=current,selected"]),n&&!O.remote){c=n;let e=n.computeProxyOpts;u=c.sortData;let{beforeQueryAll:t,afterQueryAll:r,ajax:l={}}=e,o=e.response||e.props||{};f=l.queryAll;let a=l.queryAllSuccess,i=l.queryAllError;if(f||(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),f){let l={$table:s,$grid:n,$gantt:d,sort:u.length?u[0]:{},sorts:u,filters:c.filterData,form:c.formData,options:O};return Promise.resolve((t||f)(l)).then(e=>{var t=o.list;return O.data=(t?_xeUtils.default.isFunction(t)?t({data:e,$table:s,$grid:n,$gantt:d}):_xeUtils.default.get(e,t):e)||[],r&&r(l),a&&a(Object.assign(Object.assign({},l),{response:e})),handleExport(s,O)}).catch(e=>{i&&i(Object.assign(Object.assign({},l),{response:e}))})}}}else"current"===y&&(O.data=t?i:o);return handleExport(s,O)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;return l&&l({options:t,$table:this}),handleFileImport(this,e,t)},_importData(e){let t=this;var l=this.importOpts;let r=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:o,afterImportMethod:a}=r;return o&&o({options:r,$table:this}),_ui.VxeUI.readFile(r).catch(e=>(a&&a({status:!1,options:r,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,r)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this;var t=l.$xeGrid;let r=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});e=r.sheetName;let o="",a=(o=(o=e?_xeUtils.default.isFunction(e)?e({options:r,$table:l,$grid:t}):""+e:o)||document.title||"",r.beforePrintMethod),i=r.html||r.content;return new Promise((e,t)=>{_ui.VxeUI.print?i?e(_ui.VxeUI.print({title:o,html:i,customStyle:r.style,beforeMethod:a?({html:e})=>a({html:e,content:e,options:r,$table:l}):void 0})):e(l.exportData(r).then(({content:e})=>_ui.VxeUI.print({title:o,html:e,customStyle:r.style,beforeMethod:a?({html:e})=>a({html:e,content:e,options:r,$table:l}):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:r,importStore:o,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||[],s=i.modes||[];!t?(l||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=s.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(o,{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),r.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||(0,_log.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||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,t,!0)}}};
@@ -1235,24 +1235,25 @@ function updateStyle($xeTable) {
1235
1235
  editStore,
1236
1236
  isAllOverflow,
1237
1237
  expandColumn,
1238
- isColLoading
1238
+ isColLoading,
1239
+ tHeaderHeight,
1240
+ tFooterHeight
1239
1241
  } = reactData;
1240
1242
  const {
1241
1243
  visibleColumn,
1242
1244
  tableHeight,
1243
- headerHeight,
1244
- footerHeight,
1245
1245
  elemStore,
1246
1246
  customHeight,
1247
1247
  customMinHeight,
1248
1248
  customMaxHeight
1249
1249
  } = internalData;
1250
+ const $xeGanttView = internalData.xeGanttView;
1250
1251
  const el = $xeTable.$refs.refElem;
1251
- if (!el) {
1252
+ if (!el || !el.clientHeight) {
1252
1253
  return;
1253
1254
  }
1254
1255
  const containerList = ['main', 'left', 'right'];
1255
- const osbWidth = overflowY ? scrollbarWidth : 0;
1256
+ let osbWidth = overflowY ? scrollbarWidth : 0;
1256
1257
  const osbHeight = overflowX ? scrollbarHeight : 0;
1257
1258
  const emptyPlaceholderElem = $xeTable.$refs.refEmptyPlaceholder;
1258
1259
  const mouseOpts = $xeTable.computeMouseOpts;
@@ -1260,36 +1261,45 @@ function updateStyle($xeTable) {
1260
1261
  const bodyWrapperElem = (0, _util.getRefElem)(elemStore['main-body-wrapper']);
1261
1262
  const bodyTableElem = (0, _util.getRefElem)(elemStore['main-body-table']);
1262
1263
  if (emptyPlaceholderElem) {
1263
- emptyPlaceholderElem.style.top = `${headerHeight}px`;
1264
+ emptyPlaceholderElem.style.top = `${tHeaderHeight}px`;
1264
1265
  emptyPlaceholderElem.style.height = bodyWrapperElem ? `${bodyWrapperElem.offsetHeight - osbHeight}px` : '';
1265
1266
  }
1266
- let bodyHeight = 0;
1267
+ const scrollbarXToTop = $xeTable.computeScrollbarXToTop;
1268
+ const scrollbarYToLeft = $xeTable.computeScrollbarYToLeft;
1269
+ const xScrollbarVisible = overflowX ? 'visible' : 'hidden';
1270
+ let yScrollbarVisible = overflowY ? 'visible' : 'hidden';
1271
+ if ($xeGanttView) {
1272
+ if (!scrollbarYToLeft) {
1273
+ osbWidth = 0;
1274
+ yScrollbarVisible = 'hidden';
1275
+ }
1276
+ }
1277
+ let tbHeight = 0;
1267
1278
  let bodyMaxHeight = 0;
1268
- const bodyMinHeight = customMinHeight - headerHeight - footerHeight - osbHeight;
1279
+ const bodyMinHeight = customMinHeight - tHeaderHeight - tFooterHeight - osbHeight;
1269
1280
  if (customMaxHeight) {
1270
- bodyMaxHeight = Math.max(bodyMinHeight, customMaxHeight - headerHeight - footerHeight - osbHeight);
1281
+ bodyMaxHeight = Math.max(bodyMinHeight, customMaxHeight - tHeaderHeight - tFooterHeight - osbHeight);
1271
1282
  }
1272
1283
  if (customHeight) {
1273
- bodyHeight = customHeight - headerHeight - footerHeight - osbHeight;
1284
+ tbHeight = customHeight - tHeaderHeight - tFooterHeight - osbHeight;
1274
1285
  }
1275
- if (!bodyHeight) {
1286
+ if (!tbHeight) {
1276
1287
  if (bodyTableElem) {
1277
- bodyHeight = bodyTableElem.clientHeight;
1288
+ tbHeight = bodyTableElem.clientHeight;
1278
1289
  }
1279
1290
  }
1280
- if (bodyHeight) {
1291
+ if (tbHeight) {
1281
1292
  if (bodyMaxHeight) {
1282
- bodyHeight = Math.min(bodyMaxHeight, bodyHeight);
1293
+ tbHeight = Math.min(bodyMaxHeight, tbHeight);
1283
1294
  }
1284
- bodyHeight = Math.max(bodyMinHeight, bodyHeight);
1295
+ tbHeight = Math.max(bodyMinHeight, tbHeight);
1285
1296
  }
1286
- const scrollbarXToTop = $xeTable.$refs.computeScrollbarXToTop;
1287
1297
  const xLeftCornerEl = $xeTable.$refs.refScrollXLeftCornerElem;
1288
1298
  const xRightCornerEl = $xeTable.$refs.refScrollXRightCornerElem;
1289
1299
  const scrollXVirtualEl = $xeTable.$refs.refScrollXVirtualElem;
1290
1300
  if (scrollXVirtualEl) {
1291
1301
  scrollXVirtualEl.style.height = `${osbHeight}px`;
1292
- scrollXVirtualEl.style.visibility = overflowX ? 'visible' : 'hidden';
1302
+ scrollXVirtualEl.style.visibility = xScrollbarVisible;
1293
1303
  }
1294
1304
  const xWrapperEl = $xeTable.$refs.refScrollXWrapperElem;
1295
1305
  if (xWrapperEl) {
@@ -1307,30 +1317,31 @@ function updateStyle($xeTable) {
1307
1317
  const scrollYVirtualEl = $xeTable.$refs.refScrollYVirtualElem;
1308
1318
  if (scrollYVirtualEl) {
1309
1319
  scrollYVirtualEl.style.width = `${osbWidth}px`;
1310
- scrollYVirtualEl.style.height = `${bodyHeight + headerHeight + footerHeight}px`;
1311
- scrollYVirtualEl.style.visibility = overflowY ? 'visible' : 'hidden';
1320
+ scrollYVirtualEl.style.height = `${tbHeight + tHeaderHeight + tFooterHeight}px`;
1321
+ scrollYVirtualEl.style.visibility = yScrollbarVisible;
1312
1322
  }
1313
1323
  const yTopCornerEl = $xeTable.$refs.refScrollYTopCornerElem;
1314
1324
  if (yTopCornerEl) {
1315
- yTopCornerEl.style.height = `${headerHeight}px`;
1316
- yTopCornerEl.style.display = overflowY && headerHeight ? 'block' : '';
1325
+ yTopCornerEl.style.height = `${tHeaderHeight}px`;
1326
+ yTopCornerEl.style.display = overflowY && tHeaderHeight ? 'block' : '';
1317
1327
  }
1318
1328
  const yWrapperEl = $xeTable.$refs.refScrollYWrapperElem;
1319
1329
  if (yWrapperEl) {
1320
- yWrapperEl.style.height = `${bodyHeight}px`;
1321
- yWrapperEl.style.top = `${headerHeight}px`;
1330
+ yWrapperEl.style.height = `${tbHeight}px`;
1331
+ yWrapperEl.style.top = `${tHeaderHeight}px`;
1322
1332
  }
1323
1333
  const yBottomCornerEl = $xeTable.$refs.refScrollYBottomCornerElem;
1324
1334
  if (yBottomCornerEl) {
1325
- yBottomCornerEl.style.height = `${footerHeight}px`;
1326
- yBottomCornerEl.style.top = `${headerHeight + bodyHeight}px`;
1327
- yBottomCornerEl.style.display = overflowY && footerHeight ? 'block' : '';
1335
+ yBottomCornerEl.style.height = `${tFooterHeight}px`;
1336
+ yBottomCornerEl.style.top = `${tHeaderHeight + tbHeight}px`;
1337
+ yBottomCornerEl.style.display = overflowY && tFooterHeight ? 'block' : '';
1328
1338
  }
1329
1339
  const rowExpandEl = $xeTable.$refs.refRowExpandElem;
1330
1340
  if (rowExpandEl) {
1331
- rowExpandEl.style.height = `${bodyHeight}px`;
1332
- rowExpandEl.style.top = `${headerHeight}px`;
1341
+ rowExpandEl.style.height = `${tbHeight}px`;
1342
+ rowExpandEl.style.top = `${tHeaderHeight}px`;
1333
1343
  }
1344
+ reactData.tBodyHeight = tbHeight;
1334
1345
  containerList.forEach((name, index) => {
1335
1346
  const fixedType = index > 0 ? name : '';
1336
1347
  const layoutList = ['header', 'body', 'footer'];
@@ -1390,7 +1401,7 @@ function updateStyle($xeTable) {
1390
1401
  }
1391
1402
  }
1392
1403
  if (currScrollElem) {
1393
- currScrollElem.style.height = `${headerHeight}px`;
1404
+ currScrollElem.style.height = `${tHeaderHeight}px`;
1394
1405
  }
1395
1406
  if (tableElem) {
1396
1407
  tableElem.style.width = tWidth ? `${tWidth}px` : '';
@@ -1398,15 +1409,15 @@ function updateStyle($xeTable) {
1398
1409
  } else if (layout === 'body') {
1399
1410
  if (currScrollElem) {
1400
1411
  currScrollElem.style.maxHeight = customMaxHeight ? `${bodyMaxHeight}px` : '';
1401
- currScrollElem.style.height = customHeight ? `${bodyHeight}px` : '';
1412
+ currScrollElem.style.height = customHeight ? `${tbHeight}px` : '';
1402
1413
  currScrollElem.style.minHeight = `${bodyMinHeight}px`;
1403
1414
  }
1404
1415
  // 如果是固定列
1405
1416
  if (fixedWrapperElem) {
1406
1417
  if (wrapperElem) {
1407
- wrapperElem.style.top = `${headerHeight}px`;
1418
+ wrapperElem.style.top = `${tHeaderHeight}px`;
1408
1419
  }
1409
- fixedWrapperElem.style.height = `${customHeight > 0 ? customHeight : tableHeight + headerHeight + footerHeight + osbHeight}px`;
1420
+ fixedWrapperElem.style.height = `${customHeight > 0 ? customHeight : tableHeight + tHeaderHeight + tFooterHeight + osbHeight}px`;
1410
1421
  fixedWrapperElem.style.width = `${fixedColumn.reduce((previous, column) => previous + column.renderWidth, 0)}px`;
1411
1422
  }
1412
1423
  let renderColumnList = tableColumn;
@@ -1478,11 +1489,11 @@ function updateStyle($xeTable) {
1478
1489
  }
1479
1490
  }
1480
1491
  if (currScrollElem) {
1481
- currScrollElem.style.height = `${footerHeight}px`;
1492
+ currScrollElem.style.height = `${tFooterHeight}px`;
1482
1493
  // 如果是固定列
1483
1494
  if (fixedWrapperElem) {
1484
1495
  if (wrapperElem) {
1485
- wrapperElem.style.top = `${customHeight > 0 ? customHeight - footerHeight - osbHeight : tableHeight + headerHeight}px`;
1496
+ wrapperElem.style.top = `${customHeight > 0 ? customHeight - tFooterHeight - osbHeight : tableHeight + tHeaderHeight}px`;
1486
1497
  }
1487
1498
  }
1488
1499
  }
@@ -1498,6 +1509,9 @@ function updateStyle($xeTable) {
1498
1509
  if (mouseConfig && mouseOpts.selected && editStore.selected.row && editStore.selected.column) {
1499
1510
  $xeTable.addCellSelectedClass();
1500
1511
  }
1512
+ if ($xeGanttView) {
1513
+ $xeGanttView.handleUpdateStyle();
1514
+ }
1501
1515
  return $xeTable.$nextTick();
1502
1516
  }
1503
1517
  function checkValidate($xeTable, type) {
@@ -3213,12 +3227,13 @@ function calcScrollbar($xeTable) {
3213
3227
  reactData.scrollbarHeight = scrollbarOpts.height || xHandleEl.offsetHeight - xHandleEl.clientHeight || 14;
3214
3228
  }
3215
3229
  reactData.overflowX = overflowX;
3216
- const headerHeight = headerTableElem ? headerTableElem.clientHeight : 0;
3217
- const footerHeight = footerTableElem ? footerTableElem.clientHeight : 0;
3230
+ const hHeight = headerTableElem ? headerTableElem.clientHeight : 0;
3231
+ const fHeight = footerTableElem ? footerTableElem.clientHeight : 0;
3218
3232
  internalData.tableHeight = bodyWrapperElem.offsetHeight;
3219
- internalData.headerHeight = headerHeight;
3220
- internalData.footerHeight = footerHeight;
3221
- reactData.parentHeight = Math.max(internalData.headerHeight + footerHeight + 20, $xeTable.getParentHeight());
3233
+ reactData.tHeaderHeight = hHeight;
3234
+ reactData.tFooterHeight = fHeight;
3235
+ reactData.overflowX = overflowX;
3236
+ reactData.parentHeight = Math.max(hHeight + fHeight + 20, $xeTable.getParentHeight());
3222
3237
  }
3223
3238
  if (overflowX) {
3224
3239
  $xeTable.checkScrolling();
@@ -3277,6 +3292,7 @@ function handleLazyRecalculate($xeTable, reFull, reWidth, reHeight) {
3277
3292
  rceTimeout,
3278
3293
  rceRunTime
3279
3294
  } = internalData;
3295
+ const $xeGanttView = internalData.xeGanttView;
3280
3296
  const resizeOpts = $xeTable.computeResizeOpts;
3281
3297
  const refreshDelay = resizeOpts.refreshDelay || 20;
3282
3298
  const el = $xeTable.$refs.refElem;
@@ -3296,6 +3312,9 @@ function handleLazyRecalculate($xeTable, reFull, reWidth, reHeight) {
3296
3312
  } else {
3297
3313
  resolve(handleRecalculateStyle($xeTable, reFull, reWidth, reHeight));
3298
3314
  }
3315
+ if ($xeGanttView) {
3316
+ $xeGanttView.handleLazyRecalculate();
3317
+ }
3299
3318
  internalData.rceTimeout = setTimeout(() => {
3300
3319
  internalData.rceTimeout = undefined;
3301
3320
  handleRecalculateStyle($xeTable, reFull, reWidth, reHeight);
@@ -4186,6 +4205,20 @@ const wheelScrollTopTo = (diffNum, cb) => {
4186
4205
  };
4187
4206
  requestAnimationFrame(step);
4188
4207
  };
4208
+ const syncGanttScrollTop = ($xeTable, scrollTop) => {
4209
+ const internalData = $xeTable;
4210
+ const $xeGanttView = internalData.xeGanttView;
4211
+ if ($xeGanttView) {
4212
+ const ganttInternalData = $xeGanttView.internalData;
4213
+ const {
4214
+ elemStore: ganttElemStore
4215
+ } = ganttInternalData;
4216
+ const ganttBodyScrollElem = (0, _util.getRefElem)(ganttElemStore['main-body-scroll']);
4217
+ if (ganttBodyScrollElem) {
4218
+ ganttBodyScrollElem.scrollTop = scrollTop;
4219
+ }
4220
+ }
4221
+ };
4189
4222
  function updateHeight($xeTable) {
4190
4223
  const reactData = $xeTable;
4191
4224
  const internalData = $xeTable;
@@ -4532,6 +4565,7 @@ const Methods = {
4532
4565
  scrollYStore,
4533
4566
  fullDataRowIdData
4534
4567
  } = internalData;
4568
+ const $xeGanttView = internalData.xeGanttView;
4535
4569
  let fullList = internalData.afterFullData;
4536
4570
  // 是否进行数据处理
4537
4571
  if (force) {
@@ -4552,6 +4586,9 @@ const Methods = {
4552
4586
  });
4553
4587
  reactData.tableData = tableData;
4554
4588
  internalData.visibleDataRowIdData = visibleDataRowIdMaps;
4589
+ if ($xeGanttView) {
4590
+ $xeGanttView.updateViewData();
4591
+ }
4555
4592
  return $xeTable.$nextTick();
4556
4593
  },
4557
4594
  /**
@@ -11686,6 +11723,7 @@ const Methods = {
11686
11723
  }
11687
11724
  (0, _dom.setScrollTop)(yHandleEl, scrollTop);
11688
11725
  (0, _dom.setScrollTop)(rowExpandEl, scrollTop);
11726
+ syncGanttScrollTop($xeTable, scrollTop);
11689
11727
  if (scrollYLoad) {
11690
11728
  $xeTable.triggerScrollYEvent(evnt);
11691
11729
  }
@@ -11914,6 +11952,7 @@ const Methods = {
11914
11952
  (0, _dom.setScrollTop)(leftScrollElem, currTopNum);
11915
11953
  (0, _dom.setScrollTop)(rightScrollElem, currTopNum);
11916
11954
  (0, _dom.setScrollTop)(rowExpandEl, currTopNum);
11955
+ syncGanttScrollTop($xeTable, currTopNum);
11917
11956
  if (scrollYLoad) {
11918
11957
  $xeTable.triggerScrollYEvent(evnt);
11919
11958
  }
@@ -11930,6 +11969,7 @@ const Methods = {
11930
11969
  (0, _dom.setScrollTop)(leftScrollElem, currTopNum);
11931
11970
  (0, _dom.setScrollTop)(rightScrollElem, currTopNum);
11932
11971
  (0, _dom.setScrollTop)(rowExpandEl, currTopNum);
11972
+ syncGanttScrollTop($xeTable, currTopNum);
11933
11973
  if (scrollYLoad) {
11934
11974
  $xeTable.triggerScrollYEvent(evnt);
11935
11975
  }
@@ -12031,6 +12071,7 @@ const Methods = {
12031
12071
  (0, _dom.setScrollTop)(leftScrollElem, scrollTop);
12032
12072
  (0, _dom.setScrollTop)(rightScrollElem, scrollTop);
12033
12073
  (0, _dom.setScrollTop)(rowExpandEl, scrollTop);
12074
+ syncGanttScrollTop($xeTable, scrollTop);
12034
12075
  if (scrollYLoad) {
12035
12076
  $xeTable.triggerScrollYEvent(evnt);
12036
12077
  }
@@ -12071,6 +12112,7 @@ const Methods = {
12071
12112
  elemStore,
12072
12113
  fullColumnIdData
12073
12114
  } = internalData;
12115
+ const $xeGanttView = internalData.xeGanttView;
12074
12116
  const mouseOpts = $xeTable.computeMouseOpts;
12075
12117
  const tableBody = $xeTable.$refs.refTableBody;
12076
12118
  const tableBodyElem = tableBody ? tableBody.$el : null;
@@ -12131,10 +12173,13 @@ const Methods = {
12131
12173
  if (scrollXSpaceEl) {
12132
12174
  scrollXSpaceEl.style.width = `${ySpaceWidth}px`;
12133
12175
  }
12176
+ calcScrollbar($xeTable);
12134
12177
  if (isScrollXBig && mouseOpts.area) {
12135
12178
  (0, _log.errLog)('vxe.error.notProp', ['mouse-config.area']);
12136
12179
  }
12137
- calcScrollbar($xeTable);
12180
+ if ($xeGanttView) {
12181
+ $xeGanttView.updateScrollXSpace();
12182
+ }
12138
12183
  return $xeTable.$nextTick(() => {
12139
12184
  updateStyle($xeTable);
12140
12185
  });
@@ -12167,6 +12212,7 @@ const Methods = {
12167
12212
  fullAllDataRowIdData,
12168
12213
  rowExpandedMaps
12169
12214
  } = internalData;
12215
+ const $xeGanttView = internalData.xeGanttView;
12170
12216
  const {
12171
12217
  startIndex
12172
12218
  } = scrollYStore;
@@ -12258,10 +12304,13 @@ const Methods = {
12258
12304
  reactData.scrollYTop = scrollYTop;
12259
12305
  reactData.scrollYHeight = scrollYHeight;
12260
12306
  reactData.isScrollYBig = isScrollYBig;
12307
+ calcScrollbar($xeTable);
12261
12308
  if (isScrollYBig && mouseOpts.area) {
12262
12309
  (0, _log.errLog)('vxe.error.notProp', ['mouse-config.area']);
12263
12310
  }
12264
- calcScrollbar($xeTable);
12311
+ if ($xeGanttView) {
12312
+ $xeGanttView.updateScrollYSpace();
12313
+ }
12265
12314
  return $xeTable.$nextTick().then(() => {
12266
12315
  updateStyle($xeTable);
12267
12316
  });
@@ -12659,12 +12708,23 @@ const Methods = {
12659
12708
  this.isActivated = false;
12660
12709
  return this.$nextTick();
12661
12710
  },
12662
- // 连接工具栏
12711
+ /**
12712
+ * 已废弃,被 connectToolbar 替换
12713
+ * @deprecated
12714
+ */
12663
12715
  connect($toolbar) {
12716
+ return this.connectToolbar($toolbar);
12717
+ },
12718
+ /**
12719
+ * 连接工具栏
12720
+ * @param $toolbar
12721
+ */
12722
+ connectToolbar($toolbar) {
12723
+ const $xeTable = this;
12664
12724
  if ($toolbar && $toolbar.syncUpdate) {
12665
12725
  $toolbar.syncUpdate({
12666
12726
  collectColumn: this.collectColumn,
12667
- $table: this
12727
+ $table: $xeTable
12668
12728
  });
12669
12729
  this.$toolbar = $toolbar;
12670
12730
  } else {
@@ -12672,6 +12732,17 @@ const Methods = {
12672
12732
  }
12673
12733
  return this.$nextTick();
12674
12734
  },
12735
+ handleConnectGanttView($ganttView) {
12736
+ const $xeTable = this;
12737
+ const internalData = $xeTable;
12738
+ if ($ganttView && $ganttView.connectUpdate) {
12739
+ $ganttView.connectUpdate({
12740
+ $table: $xeTable
12741
+ });
12742
+ internalData.xeGanttView = $ganttView;
12743
+ }
12744
+ return $xeTable.$nextTick();
12745
+ },
12675
12746
  /*************************
12676
12747
  * Publish methods
12677
12748
  *************************/