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.
- package/es/grid/src/grid.js +47 -29
- package/es/style.css +1 -1
- package/es/table/module/export/mixin.js +3 -1
- package/es/table/src/methods.js +109 -42
- package/es/table/src/props.js +1 -1
- package/es/table/src/table.js +7 -1
- package/es/table/src/util.js +0 -4
- package/es/toolbar/src/toolbar.js +2 -2
- package/es/ui/index.js +13 -4
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +49 -26
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +13411 -13299
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/export/mixin.js +5 -1
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/src/methods.js +114 -43
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/props.js +2 -2
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +8 -2
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +0 -4
- package/lib/table/src/util.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +2 -0
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +12 -3
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/grid/src/grid.ts +49 -30
- package/packages/table/module/export/mixin.ts +5 -3
- package/packages/table/src/methods.ts +118 -46
- package/packages/table/src/props.ts +1 -1
- package/packages/table/src/table.ts +7 -1
- package/packages/table/src/util.ts +0 -4
- package/packages/toolbar/src/toolbar.ts +2 -2
- package/packages/ui/index.ts +12 -2
- package/packages/ui/src/dom.ts +1 -1
- /package/es/{iconfont.1754614978390.ttf → iconfont.1754905462391.ttf} +0 -0
- /package/es/{iconfont.1754614978390.woff → iconfont.1754905462391.woff} +0 -0
- /package/es/{iconfont.1754614978390.woff2 → iconfont.1754905462391.woff2} +0 -0
- /package/lib/{iconfont.1754614978390.ttf → iconfont.1754905462391.ttf} +0 -0
- /package/lib/{iconfont.1754614978390.woff → iconfont.1754905462391.woff} +0 -0
- /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
|
-
$
|
|
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)}}};
|
package/lib/table/src/methods.js
CHANGED
|
@@ -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
|
-
|
|
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 = `${
|
|
1264
|
+
emptyPlaceholderElem.style.top = `${tHeaderHeight}px`;
|
|
1264
1265
|
emptyPlaceholderElem.style.height = bodyWrapperElem ? `${bodyWrapperElem.offsetHeight - osbHeight}px` : '';
|
|
1265
1266
|
}
|
|
1266
|
-
|
|
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 -
|
|
1279
|
+
const bodyMinHeight = customMinHeight - tHeaderHeight - tFooterHeight - osbHeight;
|
|
1269
1280
|
if (customMaxHeight) {
|
|
1270
|
-
bodyMaxHeight = Math.max(bodyMinHeight, customMaxHeight -
|
|
1281
|
+
bodyMaxHeight = Math.max(bodyMinHeight, customMaxHeight - tHeaderHeight - tFooterHeight - osbHeight);
|
|
1271
1282
|
}
|
|
1272
1283
|
if (customHeight) {
|
|
1273
|
-
|
|
1284
|
+
tbHeight = customHeight - tHeaderHeight - tFooterHeight - osbHeight;
|
|
1274
1285
|
}
|
|
1275
|
-
if (!
|
|
1286
|
+
if (!tbHeight) {
|
|
1276
1287
|
if (bodyTableElem) {
|
|
1277
|
-
|
|
1288
|
+
tbHeight = bodyTableElem.clientHeight;
|
|
1278
1289
|
}
|
|
1279
1290
|
}
|
|
1280
|
-
if (
|
|
1291
|
+
if (tbHeight) {
|
|
1281
1292
|
if (bodyMaxHeight) {
|
|
1282
|
-
|
|
1293
|
+
tbHeight = Math.min(bodyMaxHeight, tbHeight);
|
|
1283
1294
|
}
|
|
1284
|
-
|
|
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 =
|
|
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 = `${
|
|
1311
|
-
scrollYVirtualEl.style.visibility =
|
|
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 = `${
|
|
1316
|
-
yTopCornerEl.style.display = overflowY &&
|
|
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 = `${
|
|
1321
|
-
yWrapperEl.style.top = `${
|
|
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 = `${
|
|
1326
|
-
yBottomCornerEl.style.top = `${
|
|
1327
|
-
yBottomCornerEl.style.display = overflowY &&
|
|
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 = `${
|
|
1332
|
-
rowExpandEl.style.top = `${
|
|
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 = `${
|
|
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 ? `${
|
|
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 = `${
|
|
1418
|
+
wrapperElem.style.top = `${tHeaderHeight}px`;
|
|
1408
1419
|
}
|
|
1409
|
-
fixedWrapperElem.style.height = `${customHeight > 0 ? customHeight : tableHeight +
|
|
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 = `${
|
|
1492
|
+
currScrollElem.style.height = `${tFooterHeight}px`;
|
|
1482
1493
|
// 如果是固定列
|
|
1483
1494
|
if (fixedWrapperElem) {
|
|
1484
1495
|
if (wrapperElem) {
|
|
1485
|
-
wrapperElem.style.top = `${customHeight > 0 ? customHeight -
|
|
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
|
|
3217
|
-
const
|
|
3230
|
+
const hHeight = headerTableElem ? headerTableElem.clientHeight : 0;
|
|
3231
|
+
const fHeight = footerTableElem ? footerTableElem.clientHeight : 0;
|
|
3218
3232
|
internalData.tableHeight = bodyWrapperElem.offsetHeight;
|
|
3219
|
-
|
|
3220
|
-
|
|
3221
|
-
reactData.
|
|
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
|
-
|
|
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
|
-
|
|
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:
|
|
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
|
*************************/
|