vxe-table 4.1.11 → 4.1.12
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/export/src/hook.js +5 -8
- package/es/table/src/table.js +44 -21
- package/es/validator/src/hook.js +1 -1
- package/lib/export/src/hook.js +4 -8
- package/lib/export/src/hook.min.js +1 -1
- package/lib/index.umd.js +60 -32
- package/lib/index.umd.min.js +1 -1
- package/lib/table/src/table.js +57 -24
- package/lib/table/src/table.min.js +1 -1
- package/lib/validator/src/hook.js +1 -1
- package/lib/validator/src/hook.min.js +1 -1
- package/package.json +1 -1
- package/packages/table/src/table.ts +45 -20
package/es/export/src/hook.js
CHANGED
|
@@ -2,7 +2,7 @@ import { inject, nextTick } from 'vue';
|
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import GlobalConfig from '../../v-x-e-table/src/conf';
|
|
4
4
|
import { VXETable } from '../../v-x-e-table';
|
|
5
|
-
import { isColumnInfo, mergeBodyMethod, getCellValue
|
|
5
|
+
import { isColumnInfo, mergeBodyMethod, getCellValue } from '../../table/src/util';
|
|
6
6
|
import { errLog, warnLog, parseFile, formatText } from '../../tools/utils';
|
|
7
7
|
import { readLocalFile, handlePrint, saveLocalFile, createHtmlPage, getExportBlobByContent } from './util';
|
|
8
8
|
var htmlCellElem;
|
|
@@ -265,16 +265,13 @@ var tableExportHook = {
|
|
|
265
265
|
var treeOpts = computeTreeOpts.value;
|
|
266
266
|
return row[treeOpts.children] && row[treeOpts.children].length;
|
|
267
267
|
};
|
|
268
|
-
var getSeq = function (row, rowIndex, column, columnIndex
|
|
268
|
+
var getSeq = function (row, rowIndex, column, columnIndex) {
|
|
269
269
|
var seqOpts = computeSeqOpts.value;
|
|
270
270
|
var seqMethod = seqOpts.seqMethod || column.seqMethod;
|
|
271
271
|
if (seqMethod) {
|
|
272
272
|
return seqMethod({ row: row, rowIndex: rowIndex, column: column, columnIndex: columnIndex });
|
|
273
273
|
}
|
|
274
|
-
|
|
275
|
-
return toTreePathSeq(path);
|
|
276
|
-
}
|
|
277
|
-
return seqOpts.startIndex + rowIndex + 1;
|
|
274
|
+
return $xetable.getRowSeq(row);
|
|
278
275
|
};
|
|
279
276
|
var toBooleanValue = function (cellValue) {
|
|
280
277
|
return XEUtils.isBoolean(cellValue) ? (cellValue ? 'TRUE' : 'FALSE') : cellValue;
|
|
@@ -319,7 +316,7 @@ var tableExportHook = {
|
|
|
319
316
|
else {
|
|
320
317
|
switch (column.type) {
|
|
321
318
|
case 'seq':
|
|
322
|
-
cellValue = getSeq(row, rowIndex, column, columnIndex
|
|
319
|
+
cellValue = getSeq(row, rowIndex, column, columnIndex);
|
|
323
320
|
break;
|
|
324
321
|
case 'checkbox':
|
|
325
322
|
cellValue = toBooleanValue($xetable.isCheckedByCheckboxRow(row));
|
|
@@ -378,7 +375,7 @@ var tableExportHook = {
|
|
|
378
375
|
else {
|
|
379
376
|
switch (column.type) {
|
|
380
377
|
case 'seq':
|
|
381
|
-
cellValue = getSeq(row, rowIndex, column, columnIndex
|
|
378
|
+
cellValue = getSeq(row, rowIndex, column, columnIndex);
|
|
382
379
|
break;
|
|
383
380
|
case 'checkbox':
|
|
384
381
|
cellValue = toBooleanValue($xetable.isCheckedByCheckboxRow(row));
|
package/es/table/src/table.js
CHANGED
|
@@ -1134,6 +1134,29 @@ export default defineComponent({
|
|
|
1134
1134
|
});
|
|
1135
1135
|
}
|
|
1136
1136
|
};
|
|
1137
|
+
/**
|
|
1138
|
+
* 如果为虚拟树,将树结构拍平
|
|
1139
|
+
* @returns
|
|
1140
|
+
*/
|
|
1141
|
+
var handleVirtualTreeToList = function () {
|
|
1142
|
+
var treeConfig = props.treeConfig;
|
|
1143
|
+
var treeExpandeds = reactData.treeExpandeds;
|
|
1144
|
+
var treeOpts = computeTreeOpts.value;
|
|
1145
|
+
if (treeConfig && treeOpts.transform) {
|
|
1146
|
+
var fullData_1 = [];
|
|
1147
|
+
var expandMaps_1 = new Map();
|
|
1148
|
+
XEUtils.eachTree(internalData.afterTreeFullData, function (row, index, items, path, parent) {
|
|
1149
|
+
if (!parent || (expandMaps_1.has(parent) && $xetable.findRowIndexOf(treeExpandeds, parent) > -1)) {
|
|
1150
|
+
expandMaps_1.set(row, 1);
|
|
1151
|
+
fullData_1.push(row);
|
|
1152
|
+
}
|
|
1153
|
+
}, { children: treeOpts.mapChildren });
|
|
1154
|
+
internalData.afterFullData = fullData_1;
|
|
1155
|
+
updateScrollYStatus(fullData_1);
|
|
1156
|
+
return fullData_1;
|
|
1157
|
+
}
|
|
1158
|
+
return internalData.afterFullData;
|
|
1159
|
+
};
|
|
1137
1160
|
/**
|
|
1138
1161
|
* 获取处理后全量的表格数据
|
|
1139
1162
|
* 如果存在筛选条件,继续处理
|
|
@@ -2227,6 +2250,7 @@ export default defineComponent({
|
|
|
2227
2250
|
*/
|
|
2228
2251
|
var handleVirtualTreeExpand = function (rows, expanded) {
|
|
2229
2252
|
return handleBaseTreeExpand(rows, expanded).then(function () {
|
|
2253
|
+
handleVirtualTreeToList();
|
|
2230
2254
|
return tablePrivateMethods.handleTableData();
|
|
2231
2255
|
}).then(function () {
|
|
2232
2256
|
return tableMethods.recalculate();
|
|
@@ -3557,12 +3581,16 @@ export default defineComponent({
|
|
|
3557
3581
|
var treeExpandeds = reactData.treeExpandeds;
|
|
3558
3582
|
var fullAllDataRowIdData = internalData.fullAllDataRowIdData;
|
|
3559
3583
|
var treeOpts = computeTreeOpts.value;
|
|
3560
|
-
var lazy = treeOpts.lazy;
|
|
3584
|
+
var transform = treeOpts.transform, lazy = treeOpts.lazy;
|
|
3561
3585
|
var rest = fullAllDataRowIdData[getRowid($xetable, row)];
|
|
3562
3586
|
if (lazy && rest) {
|
|
3563
3587
|
rest.treeLoaded = false;
|
|
3564
3588
|
XEUtils.remove(treeExpandeds, function (item) { return $xetable.eqRow(item, row); });
|
|
3565
3589
|
}
|
|
3590
|
+
if (transform) {
|
|
3591
|
+
handleVirtualTreeToList();
|
|
3592
|
+
return tablePrivateMethods.handleTableData();
|
|
3593
|
+
}
|
|
3566
3594
|
return nextTick();
|
|
3567
3595
|
},
|
|
3568
3596
|
/**
|
|
@@ -3606,7 +3634,7 @@ export default defineComponent({
|
|
|
3606
3634
|
setAllTreeExpand: function (expanded) {
|
|
3607
3635
|
var tableFullData = internalData.tableFullData;
|
|
3608
3636
|
var treeOpts = computeTreeOpts.value;
|
|
3609
|
-
var lazy = treeOpts.lazy, children = treeOpts.children;
|
|
3637
|
+
var transform = treeOpts.transform, lazy = treeOpts.lazy, children = treeOpts.children;
|
|
3610
3638
|
var expandeds = [];
|
|
3611
3639
|
XEUtils.eachTree(tableFullData, function (row) {
|
|
3612
3640
|
var rowChildren = row[children];
|
|
@@ -3614,7 +3642,12 @@ export default defineComponent({
|
|
|
3614
3642
|
expandeds.push(row);
|
|
3615
3643
|
}
|
|
3616
3644
|
}, treeOpts);
|
|
3617
|
-
return tableMethods.setTreeExpand(expandeds, expanded)
|
|
3645
|
+
return tableMethods.setTreeExpand(expandeds, expanded).then(function () {
|
|
3646
|
+
if (transform) {
|
|
3647
|
+
handleVirtualTreeToList();
|
|
3648
|
+
return tableMethods.recalculate();
|
|
3649
|
+
}
|
|
3650
|
+
});
|
|
3618
3651
|
},
|
|
3619
3652
|
/**
|
|
3620
3653
|
* 设置展开树形节点,二个参数设置这一行展开与否
|
|
@@ -3657,13 +3690,16 @@ export default defineComponent({
|
|
|
3657
3690
|
var treeExpandeds = reactData.treeExpandeds;
|
|
3658
3691
|
var tableFullTreeData = internalData.tableFullTreeData;
|
|
3659
3692
|
var treeOpts = computeTreeOpts.value;
|
|
3660
|
-
var reserve = treeOpts.reserve;
|
|
3693
|
+
var transform = treeOpts.transform, reserve = treeOpts.reserve;
|
|
3661
3694
|
var isExists = treeExpandeds.length;
|
|
3662
3695
|
reactData.treeExpandeds = [];
|
|
3663
3696
|
if (reserve) {
|
|
3664
3697
|
XEUtils.eachTree(tableFullTreeData, function (row) { return handleTreeExpandReserve(row, false); }, treeOpts);
|
|
3665
3698
|
}
|
|
3666
3699
|
return tablePrivateMethods.handleTableData().then(function () {
|
|
3700
|
+
if (transform) {
|
|
3701
|
+
handleVirtualTreeToList();
|
|
3702
|
+
}
|
|
3667
3703
|
if (isExists) {
|
|
3668
3704
|
tableMethods.recalculate();
|
|
3669
3705
|
}
|
|
@@ -4496,28 +4532,15 @@ export default defineComponent({
|
|
|
4496
4532
|
return record;
|
|
4497
4533
|
},
|
|
4498
4534
|
handleTableData: function (force) {
|
|
4499
|
-
var treeConfig = props.treeConfig;
|
|
4500
4535
|
var scrollYLoad = reactData.scrollYLoad;
|
|
4501
4536
|
var scrollYStore = internalData.scrollYStore, fullDataRowIdData = internalData.fullDataRowIdData;
|
|
4502
|
-
var
|
|
4503
|
-
var treeOpts = computeTreeOpts.value;
|
|
4504
|
-
var fullList = [];
|
|
4537
|
+
var fullList = internalData.afterFullData;
|
|
4505
4538
|
// 是否进行数据处理
|
|
4506
4539
|
if (force) {
|
|
4540
|
+
// 更新数据,处理筛选和排序
|
|
4507
4541
|
updateAfterFullData();
|
|
4508
|
-
|
|
4509
|
-
|
|
4510
|
-
if (treeConfig && treeOpts.transform) {
|
|
4511
|
-
var expandMaps_1 = new Map();
|
|
4512
|
-
XEUtils.eachTree(internalData.afterTreeFullData, function (row, index, items, path, parent) {
|
|
4513
|
-
if (!parent || (expandMaps_1.has(parent) && $xetable.findRowIndexOf(treeExpandeds, parent) > -1)) {
|
|
4514
|
-
expandMaps_1.set(row, 1);
|
|
4515
|
-
fullList.push(row);
|
|
4516
|
-
}
|
|
4517
|
-
}, { children: treeOpts.mapChildren });
|
|
4518
|
-
}
|
|
4519
|
-
else {
|
|
4520
|
-
fullList = internalData.afterFullData;
|
|
4542
|
+
// 如果为虚拟树,将树结构拍平
|
|
4543
|
+
fullList = handleVirtualTreeToList();
|
|
4521
4544
|
}
|
|
4522
4545
|
var tableData = scrollYLoad ? fullList.slice(scrollYStore.startIndex, scrollYStore.endIndex) : fullList.slice(0);
|
|
4523
4546
|
tableData.forEach(function (row, $index) {
|
package/es/validator/src/hook.js
CHANGED
|
@@ -160,7 +160,7 @@ var validatorHook = {
|
|
|
160
160
|
var ruleProps = Object.keys(validRest);
|
|
161
161
|
return nextTick().then(function () {
|
|
162
162
|
if (ruleProps.length) {
|
|
163
|
-
return validRest[ruleProps[0]][0];
|
|
163
|
+
return Promise.reject(validRest[ruleProps[0]][0]);
|
|
164
164
|
}
|
|
165
165
|
if (cb) {
|
|
166
166
|
cb();
|
package/lib/export/src/hook.js
CHANGED
|
@@ -372,7 +372,7 @@ var tableExportHook = {
|
|
|
372
372
|
return row[treeOpts.children] && row[treeOpts.children].length;
|
|
373
373
|
};
|
|
374
374
|
|
|
375
|
-
var getSeq = function getSeq(row, rowIndex, column, columnIndex
|
|
375
|
+
var getSeq = function getSeq(row, rowIndex, column, columnIndex) {
|
|
376
376
|
var seqOpts = computeSeqOpts.value;
|
|
377
377
|
var seqMethod = seqOpts.seqMethod || column.seqMethod;
|
|
378
378
|
|
|
@@ -385,11 +385,7 @@ var tableExportHook = {
|
|
|
385
385
|
});
|
|
386
386
|
}
|
|
387
387
|
|
|
388
|
-
|
|
389
|
-
return (0, _util.toTreePathSeq)(path);
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
return seqOpts.startIndex + rowIndex + 1;
|
|
388
|
+
return $xetable.getRowSeq(row);
|
|
393
389
|
};
|
|
394
390
|
|
|
395
391
|
var toBooleanValue = function toBooleanValue(cellValue) {
|
|
@@ -447,7 +443,7 @@ var tableExportHook = {
|
|
|
447
443
|
} else {
|
|
448
444
|
switch (column.type) {
|
|
449
445
|
case 'seq':
|
|
450
|
-
cellValue = getSeq(row, rowIndex, column, columnIndex
|
|
446
|
+
cellValue = getSeq(row, rowIndex, column, columnIndex);
|
|
451
447
|
break;
|
|
452
448
|
|
|
453
449
|
case 'checkbox':
|
|
@@ -524,7 +520,7 @@ var tableExportHook = {
|
|
|
524
520
|
} else {
|
|
525
521
|
switch (column.type) {
|
|
526
522
|
case 'seq':
|
|
527
|
-
cellValue = getSeq(row, rowIndex, column, columnIndex
|
|
523
|
+
cellValue = getSeq(row, rowIndex, column, columnIndex);
|
|
528
524
|
break;
|
|
529
525
|
|
|
530
526
|
case 'checkbox':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var htmlCellElem,_vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("../../table/src/util"),_utils=require("../../tools/utils"),_util2=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var csvBOM="\ufeff",enterSymbol="\r\n";function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}var getConvertColumns=function t(e){var r=[];return e.forEach(function(e){e.childNodes&&e.childNodes.length?(r.push(e),r.push.apply(r,t(e.childNodes))):r.push(e)}),r},convertToRows=function(e){function o(t,e){var r;e&&(t._level=e._level+1,n<t._level&&(n=t._level)),t.childNodes&&t.childNodes.length?(r=0,t.childNodes.forEach(function(e){o(e,t),r+=e._colSpan}),t._colSpan=r):t._colSpan=1}var n=1;e.forEach(function(e){e._level=1,o(e)});for(var t=[],r=0;r<n;r++)t.push([]);return getConvertColumns(e).forEach(function(e){e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=n-e._level+1,t[e._level-1].push(e)}),t};function toTableBorder(e){return!0===e?"full":e||"default"}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t){return(e.original?t.property:t.getTitle())||""}function getFooterData(e,t){var r=e.footerFilterMethod;return r?t.filter(function(e,t){return r({items:e,$rowIndex:t})}):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return"\t"+t;switch(e.cellType){case"string":if(!isNaN(t))return"\t"+t;break;case"number":break;default:if(12<=t.length&&!isNaN(t))return"\t"+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?'"'+e.replace(/"/g,'""')+'"':e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return"#"+e+"@"+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,function(e){return _xeUtils.default.hasOwnProp(t,e)?t[e]:e})}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,function(e){return'"'.repeat(Math.ceil(e.length/2))})}function parseCsvAndTxt(e,t,o){var n,l,t=t.split(enterSymbol),a=[],i=[];return t.length&&(n={},l=Date.now(),t.forEach(function(e){var r;e&&(r={},e=(e=e.replace(/("")|(\n)/g,function(e,t){var r=getTxtCellKey(l);return n[r]=t?'"':"\n",r}).replace(/"(.*?)"/g,function(e,t){var r=getTxtCellKey(l);return n[r]=replaceTxtCell(t,n),r})).split(o),i.length?(e.forEach(function(e,t){t<i.length&&(r[i[t]]=getTxtCellValue(e.trim(),n))}),a.push(r)):i=e.map(function(e){return getTxtCellValue(e.trim(),n)}))})),{fields:i,rows:a}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var r=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body"),o=[],n=[];return r.length&&(!(t=getElementsByTagName(r[0],"table")).length||(r=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(r[0],"tr"),function(e){_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),function(e){n.push(e.textContent)})}),(t=getElementsByTagName(t[0],"tbody")).length&&_xeUtils.default.arrayEach(getElementsByTagName(t[0],"tr"),function(e){var r={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),function(e,t){n[t]&&(r[n[t]]=e.textContent||"")}),o.push(r)}))),{fields:n,rows:o}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet"),o=[],n=[];return t.length&&(!(t=getElementsByTagName(t[0],"Table")).length||(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),function(e){n.push(e.textContent)}),_xeUtils.default.arrayEach(t,function(e,t){var r;t&&(r={},e=getElementsByTagName(e,"Cell"),_xeUtils.default.arrayEach(e,function(e,t){n[t]&&(r[n[t]]=e.textContent)}),o.push(r))}))),{fields:n,rows:o}}function clearColumnConvert(e){_xeUtils.default.eachTree(e,function(e){delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function checkImportData(e,t){var r=[];return e.forEach(function(e){e=e.property;e&&r.push(e)}),t.some(function(e){return-1<r.indexOf(e)})}var tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"],tableExportHook={setupTable:function(w){function m(e,t,r,o,n){var l=s.value,a=l.seqMethod||r.seqMethod;return a?a({row:e,rowIndex:t,column:r,columnIndex:o}):n?(0,_util.toTreePathSeq)(n):l.startIndex+t+1}function v(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function C(e,t,r){var o=r.editRender||r.cellRender,n=r.footerExportMethod;n||!o||!o.name||(l=_vXETable.VXETable.renderer.get(o.name))&&(n=l.footerExportMethod);var l=w.getVTColumnIndex(r);return n?n({$table:w,items:t,itemIndex:l,_columnIndex:l,column:r,options:e}):_xeUtils.default.toValueString(t[l])}function k(e,t,r){return e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?r:e,r="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t,e=N.scrollXLoad,t=N.scrollYLoad,r=(e||t)&&!r?!0:r}function b(a){var i=a.remote,s=a.columns,c=a.colgroups,u=a.exportMethod,t=a.afterExportMethod;return new Promise(function(e){var t,r,o,n,l;i?(l={options:a,$table:w,$grid:T},e(u?u(l):l)):(o=(r=a).columns,n=r.dataFilterMethod,l=r.data,n&&(l=l.filter(function(e,t){return n({row:e,$rowIndex:t})})),t=d(r,o,l),e(w.preventEvent(null,"event.export",{options:a,columns:s,colgroups:c,datas:t},function(){return function(e,t){var r=e.filename,o=e.type;if(!e.download){var n=(0,_util2.getExportBlobByContent)(t,e);return Promise.resolve({type:o,content:t,blob:n})}(0,_util2.saveLocalFile)({filename:r,type:o,content:t}).then(function(){!1!==e.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.expSuccess"),status:"success"}))})}(a,function(e,t,r){if(t.length)switch(e.type){case"csv":return p(e,t,r);case"txt":return f(e,t,r);case"html":return h(e,t,r);case"xml":return g(e,t,r)}return""}(a,s,t))})))}).then(function(e){return clearColumnConvert(s),a.print||t&&t({status:!0,options:a,$table:w,$grid:T}),Object.assign({status:!0},e)}).catch(function(){clearColumnConvert(s),a.print||t&&t({status:!1,options:a,$table:w,$grid:T});return Promise.reject({status:!1})})}function n(a,i){var s=i.importMethod,t=i.afterImportMethod,e=(0,_utils.parseFile)(a),c=e.type,u=e.filename;return s||_xeUtils.default.includes(_vXETable.VXETable.config.importTypes,c)?new Promise(function(t,r){function e(e){t(e),_._importResolve=null,_._importReject=null}function o(e){r(e),_._importResolve=null,_._importReject=null}var n,l;_._importResolve=e,_._importReject=o,window.FileReader?(n=Object.assign({mode:"insert"},i,{type:c,filename:u})).remote?s?Promise.resolve(s({file:a,options:n,$table:w})).then(function(){e({status:!0})}).catch(function(){e({status:!0})}):e({status:!0}):(l=_.tableFullColumn,w.preventEvent(null,"event.import",{file:a,options:n,columns:l},function(){var e=new FileReader;e.onerror=function(){(0,_utils.errLog)("vxe.error.notType",[c]),o({status:!1})},e.onload=function(e){!function(e,t){var r=_.tableFullColumn,o=_._importResolve,n=_._importReject,l={fields:[],rows:[]};switch(t.type){case"csv":l=parseCsv(r,e);break;case"txt":l=parseTxt(r,e);break;case"html":l=parseHTML(r,e);break;case"xml":l=parseXML(r,e)}var a=l.fields,i=l.rows;checkImportData(r,a)?w.createData(i).then(function(e){e="insert"===t.mode?w.insert(e):w.reloadData(e);return!1!==t.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.impSuccess",[i.length]),status:"success"})),e.then(function(){o&&o({status:!0})})}):!1!==t.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.impFields"),status:"error"}),n&&n({status:!1}))}(e.target.result,n)},e.readAsText(a,"UTF-8")})):("development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notExp"),e({status:!0}))}).then(function(){t&&t({status:!0,options:i,$table:w})}).catch(function(e){return t&&t({status:!1,options:i,$table:w}),Promise.reject(e)}):(!1!==i.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1}))}function r(e,t){var r=D.treeConfig,o=D.showHeader,n=D.showFooter,l=N.initStore,a=N.mergeList,i=N.isGroup,s=N.footerTableData,c=N.exportStore,u=N.exportParams,d=_.collectColumn,p=r,f=x.value,h=w.getCheckboxRecords(),r=!!s.length,s=!p&&a.length,o=(a=Object.assign({message:!0,isHeader:o,isFooter:n},e)).types||_vXETable.VXETable.config.exportTypes,n=a.modes,m=f.checkMethod,e=d.slice(0),v=a.columns,f=o.map(function(e){return{value:e,label:"vxe.export.types."+e}}),d=n.map(function(e){return{value:e,label:"vxe.export.modes."+e}});return _xeUtils.default.eachTree(e,function(o,e,t,r,n){(o.children&&o.children.length||defaultFilterExportColumn(o))&&(o.checked=v?v.some(function(e){if((0,_util.isColumnInfo)(e))return o===e;if(_xeUtils.default.isString(e))return o.field===e;var t=e.id||e.colId,r=e.type,e=e.property||e.field;return t?o.id===t:e&&r?o.property===e&&o.type===r:e?o.property===e:r?o.type===r:void 0}):o.visible,o.halfChecked=!1,o.disabled=n&&n.disabled||!!m&&!m({column:o}))}),Object.assign(c,{columns:e,typeList:f,modeList:d,hasFooter:r,hasMerge:s,hasTree:p,isPrint:t,hasColgroup:i,visible:!0}),l.export||Object.assign(u,{mode:h.length?"selected":"current"},a),-1===n.indexOf(u.mode)&&(u.mode=n[0]),-1===o.indexOf(u.type)&&(u.type=o[0]),l.export=!0,(0,_vue.nextTick)()}var D=w.props,N=w.reactData,_=w.internalData,e=w.getComputeMaps(),j=e.computeTreeOpts,o=e.computePrintOpts,y=e.computeExportOpts,i=e.computeImportOpts,x=e.computeCustomOpts,s=e.computeSeqOpts,a=e.computeRadioOpts,c=e.computeCheckboxOpts,T=(0,_vue.inject)("$xegrid",null),d=function(u,n,e){var l=u.isAllExpand,t=D.treeConfig,d=a.value,p=c.value,r=j.value;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){var f=[],h=new Map;return _xeUtils.default.eachTree(e,function(e,a,t,i,r,o){var s,c=e._row||e,e=r&&r._row?r._row:r;(l||!e||h.has(e)&&w.isTreeExpandByRow(e))&&(r=c,e=j.value,e=r[e.children]&&r[e.children].length,s={_row:c,_level:o.length-1,_hasChild:e,_expand:e&&w.isTreeExpandByRow(c)},n.forEach(function(e,t){var r,o="",n=e.editRender||e.cellRender,l=e.exportMethod;if(l||!n||!n.name||(n=_vXETable.VXETable.renderer.get(n.name))&&(l=n.exportMethod),l)o=l({$table:w,row:c,column:e,options:u});else switch(e.type){case"seq":o=m(c,a,e,t,i);break;case"checkbox":o=v(w.isCheckedByCheckboxRow(c)),s._checkboxLabel=p.labelField?_xeUtils.default.get(c,p.labelField):"",s._checkboxDisabled=p.checkMethod&&!p.checkMethod({row:c});break;case"radio":o=v(w.isCheckedByRadioRow(c)),s._radioLabel=d.labelField?_xeUtils.default.get(c,d.labelField):"",s._radioDisabled=d.checkMethod&&!d.checkMethod({row:c});break;default:u.original?o=(0,_util.getCellValue)(c,e):(o=w.getCellLabel(c,e),"html"===e.type?(htmlCellElem.innerHTML=o,o=htmlCellElem.innerText.trim()):(r=w.getCell(c,e))&&(o=r.innerText.trim()))}s[e.id]=_xeUtils.default.toValueString(o)}),h.set(c,1),f.push(Object.assign(s,c)))},r),f}return e.map(function(a,i){var s={_row:a};return n.forEach(function(e,t){var r,o="",n=e.editRender||e.cellRender,l=e.exportMethod;if(l||!n||!n.name||(n=_vXETable.VXETable.renderer.get(n.name))&&(l=n.exportMethod),l)o=l({$table:w,row:a,column:e,options:u});else switch(e.type){case"seq":o=m(a,i,e,t,[]);break;case"checkbox":o=v(w.isCheckedByCheckboxRow(a)),s._checkboxLabel=p.labelField?_xeUtils.default.get(a,p.labelField):"",s._checkboxDisabled=p.checkMethod&&!p.checkMethod({row:a});break;case"radio":o=v(w.isCheckedByRadioRow(a)),s._radioLabel=d.labelField?_xeUtils.default.get(a,d.labelField):"",s._radioDisabled=d.checkMethod&&!d.checkMethod({row:a});break;default:u.original?o=(0,_util.getCellValue)(a,e):(o=w.getCellLabel(a,e),"html"===e.type?(htmlCellElem.innerHTML=o,o=htmlCellElem.innerText.trim()):(r=w.getCell(a,e))&&(o=r.innerText.trim()))}s[e.id]=_xeUtils.default.toValueString(o)}),s})},p=function(r,e,t){var o=csvBOM;return r.isHeader&&(o+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(r,e))}).join(",")+enterSymbol),t.forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))}).join(",")+enterSymbol}),r.isFooter&&(t=N.footerTableData,getFooterData(r,t).forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(C(r,t,e))}).join(",")+enterSymbol})),o},f=function(r,e,t){var o="";return r.isHeader&&(o+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(r,e))}).join("\t")+enterSymbol),t.forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(t[e.id])}).join("\t")+enterSymbol}),r.isFooter&&(t=N.footerTableData,getFooterData(r,t).forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(C(r,t,e))}).join(",")+enterSymbol})),o},h=function(i,e,t){var c=D.id,r=D.border,o=D.treeConfig,s=D.headerAlign,u=D.align,l=D.footerAlign,d=D.showOverflow,p=D.showHeaderOverflow,f=N.isAllSelected,n=N.isIndeterminate,h=N.mergeList,a=j.value,m=i.print,v=i.isHeader,x=i.isFooter,g=i.isColgroup,b=i.isMerge,_=i.colgroups,y=i.original,T="check-all",E=['<table class="'+["vxe-table","border--"+toTableBorder(r),m?"is--print":"",v?"is--header":""].filter(function(e){return e}).join(" ")+'" border="0" cellspacing="0" cellpadding="0">',"<colgroup>"+e.map(function(e){return'<col style="width:'+e.renderWidth+'px">'}).join("")+"</colgroup>"];return v&&(E.push("<thead>"),g&&!y?_.forEach(function(e){E.push("<tr>"+e.map(function(t){var e=t.headerAlign||t.align||s||u,r=k(t,"showHeaderOverflow",p)?["col--ellipsis"]:[],o=getHeaderTitle(i,t),n=0,l=0;_xeUtils.default.eachTree([t],function(e){e.childNodes&&t.childNodes.length||l++,n+=e.renderWidth},{children:"childNodes"});var a=n-l;return e&&r.push("col--"+e),"checkbox"===t.type?'<th class="'+r.join(" ")+'" colspan="'+t._colSpan+'" rowspan="'+t._rowSpan+'"><div '+(m?"":'style="width: '+a+'px"')+'><input type="checkbox" class="'+T+'" '+(f?"checked":"")+"><span>"+o+"</span></div></th>":'<th class="'+r.join(" ")+'" colspan="'+t._colSpan+'" rowspan="'+t._rowSpan+'" title="'+o+'"><div '+(m?"":'style="width: '+a+'px"')+"><span>"+(0,_utils.formatText)(o,!0)+"</span></div></th>"}).join("")+"</tr>")}):E.push("<tr>"+e.map(function(e){var t=e.headerAlign||e.align||s||u,r=k(e,"showHeaderOverflow",p)?["col--ellipsis"]:[],o=getHeaderTitle(i,e);return t&&r.push("col--"+t),"checkbox"===e.type?'<th class="'+r.join(" ")+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="checkbox" class="'+T+'" '+(f?"checked":"")+"><span>"+o+"</span></div></th>":'<th class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+"><span>"+(0,_utils.formatText)(o,!0)+"</span></div></th>"}).join("")+"</tr>"),E.push("</thead>")),t.length&&(E.push("<tbody>"),o?t.forEach(function(n){E.push("<tr>"+e.map(function(e){var t=e.align||u,r=k(e,"showOverflow",d)?["col--ellipsis"]:[],o=n[e.id];if(t&&r.push("col--"+t),e.treeNode){t="";return n._hasChild&&(t='<i class="'+(n._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon")+'"></i>'),r.push("vxe-table--tree-node"),"radio"===e.type?'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><div class="vxe-table--tree-node-wrapper" style="padding-left: '+n._level*a.indent+'px"><div class="vxe-table--tree-icon-wrapper">'+t+'</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_'+c+'" '+(n._radioDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._radioLabel+"</span></div></div></div></td>":"checkbox"===e.type?'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><div class="vxe-table--tree-node-wrapper" style="padding-left: '+n._level*a.indent+'px"><div class="vxe-table--tree-icon-wrapper">'+t+'</div><div class="vxe-table--tree-cell"><input type="checkbox" '+(n._checkboxDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._checkboxLabel+"</span></div></div></div></td>":'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><div class="vxe-table--tree-node-wrapper" style="padding-left: '+n._level*a.indent+'px"><div class="vxe-table--tree-icon-wrapper">'+t+'</div><div class="vxe-table--tree-cell">'+o+"</div></div></div></td>"}return"radio"===e.type?'<td class="'+r.join(" ")+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="radio" name="radio_'+c+'" '+(n._radioDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._radioLabel+"</span></div></td>":"checkbox"===e.type?'<td class="'+r.join(" ")+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="checkbox" '+(n._checkboxDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._checkboxLabel+"</span></div></td>":'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+">"+(0,_utils.formatText)(o,!0)+"</div></td>"}).join("")+"</tr>")}):t.forEach(function(s){E.push("<tr>"+e.map(function(e){var t=e.align||u,r=k(e,"showOverflow",d)?["col--ellipsis"]:[],o=s[e.id],n=1,l=1;if(b&&h.length){var a=w.getVTRowIndex(s._row),i=w.getVTColumnIndex(e),a=(0,_util.mergeBodyMethod)(h,a,i);if(a){i=a.rowspan,a=a.colspan;if(!i||!a)return"";1<i&&(n=i),1<a&&(l=a)}}return t&&r.push("col--"+t),"radio"===e.type?'<td class="'+r.join(" ")+'" rowspan="'+n+'" colspan="'+l+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="radio" name="radio_'+c+'" '+(s._radioDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+s._radioLabel+"</span></div></td>":"checkbox"===e.type?'<td class="'+r.join(" ")+'" rowspan="'+n+'" colspan="'+l+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="checkbox" '+(s._checkboxDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+s._checkboxLabel+"</span></div></td>":'<td class="'+r.join(" ")+'" rowspan="'+n+'" colspan="'+l+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+">"+(0,_utils.formatText)(o,!0)+"</div></td>"}).join("")+"</tr>")}),E.push("</tbody>")),x&&(x=N.footerTableData,(x=getFooterData(i,x)).length&&(E.push("<tfoot>"),x.forEach(function(n){E.push("<tr>"+e.map(function(e){var t=e.footerAlign||e.align||l||u,r=k(e,"showOverflow",d)?["col--ellipsis"]:[],o=C(i,n,e);return t&&r.push("col--"+t),'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+">"+(0,_utils.formatText)(o,!0)+"</div></td>"}).join("")+"</tr>")}),E.push("</tfoot>"))),E.push("</table>",!f&&n?'<script>(function(){var a=document.querySelector(".'+T+'");if(a){a.indeterminate=true}})()<\/script>':""),m?E.join(""):(0,_util2.createHtmlPage)(i,E.join(""))},g=function(r,e,t){var o=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",'<Worksheet ss:Name="'+r.sheetName+'">',"<Table>",e.map(function(e){return'<Column ss:Width="'+e.renderWidth+'"/>'}).join("")].join("");return r.isHeader&&(o+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'+getHeaderTitle(r,e)+"</Data></Cell>"}).join("")+"</Row>"),t.forEach(function(t){o+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'+t[e.id]+"</Data></Cell>"}).join("")+"</Row>"}),r.isFooter&&(t=N.footerTableData,getFooterData(r,t).forEach(function(t){o+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'+C(r,t,e)+"</Data></Cell>"}).join("")+"</Row>"})),o+"</Table></Worksheet></Workbook>"},l={exportData:function(e){var t=D.treeConfig,r=N.isGroup,o=N.tableGroupColumn,l=_.tableFullColumn,n=_.afterFullData,a=y.value,i=j.value,s=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},a,{print:!1},e),c=s.type,u=s.mode,d=s.columns,p=s.original,a=s.beforeExportMethod,e=[],d=d&&d.length?d:null,f=s.columnFilterMethod;d||f||(f=p?function(e){return e.column.property}:function(e){return defaultFilterExportColumn(e.column)});var e=d?_xeUtils.default.searchTree(_xeUtils.default.mapTree(d,function(e){var t,r,o,n;if(e)return(0,_util.isColumnInfo)(e)?t=e:_xeUtils.default.isString(e)?t=w.getColumnByField(e):(r=e.id||e.colId,o=e.type,n=e.property||e.field,r?t=w.getColumnById(r):n&&o?t=l.find(function(e){return e.property===n&&e.type===o}):n?t=w.getColumnByField(n):o&&(t=l.find(function(e){return e.type===o}))),t||{}},{children:"childNodes",mapChildren:"_children"}),function(e,t){return(0,_util.isColumnInfo)(e)&&(!f||f({column:e,$columnIndex:t}))},{children:"_children",mapChildren:"childNodes",original:!0}):_xeUtils.default.searchTree(r?o:l,function(e,t){return e.visible&&(!f||f({column:e,$columnIndex:t}))},{children:"children",mapChildren:"childNodes",original:!0}),h=[];if(_xeUtils.default.eachTree(e,function(e){e.children&&e.children.length||h.push(e)},{children:"childNodes"}),s.columns=h,s.colgroups=convertToRows(e),s.filename||(s.filename=_conf.default.i18n(s.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),s.sheetName||(s.sheetName=document.title),!s.exportMethod&&!_xeUtils.default.includes(_vXETable.VXETable.config.exportTypes,c)){"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notType",[c]);return Promise.reject({status:!1})}if(s.print||a&&a({options:s,$table:w,$grid:T}),!s.data)if(s.data=n,"selected"===u){var m=w.getCheckboxRecords();-1<["html","pdf"].indexOf(c)&&t?s.data=_xeUtils.default.searchTree(w.getTableData().fullData,function(e){return-1<w.findRowIndexOf(m,e)},Object.assign({},i,{data:"_row"})):s.data=m}else if("all"===u&&("development"===process.env.NODE_ENV&&(T||(0,_utils.warnLog)("vxe.error.errProp",["all","mode=current,selected"])),T&&!s.remote)){var c=T.reactData,t=T.getComputeMaps().computeProxyOpts.value,i=t.beforeQueryAll,v=t.afterQueryAll,u=t.ajax,t=t.props,x=void 0===t?{}:t,u=(void 0===u?{}:u).queryAll;if("development"===process.env.NODE_ENV&&(u||(0,_utils.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"])),u){var g={$table:w,$grid:T,sort:c.sortData,filters:c.filterData,form:c.formData,target:u,options:s};return Promise.resolve((i||u)(g)).catch(function(e){return e}).then(function(e){return s.data=(x.list?_xeUtils.default.get(e,x.list):e)||[],v&&v(g),b(s)})}}return b(s)},importByFile:function(e,t){var r=Object.assign({},t),t=r.beforeImportMethod;return t&&t({options:r,$table:w}),n(e,r)},importData:function(e){var t=i.value,r=Object.assign({types:_vXETable.VXETable.config.importTypes},t,e),e=r.beforeImportMethod,o=r.afterImportMethod;return e&&e({options:r,$table:w}),(0,_util2.readLocalFile)(r).catch(function(e){return o&&o({status:!1,options:r,$table:w}),Promise.reject(e)}).then(function(e){e=e.file;return n(e,r)})},saveFile:function(e){return(0,_util2.saveLocalFile)(e)},readFile:function(e){return(0,_util2.readLocalFile)(e)},print:function(e){var t=o.value,r=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return r.sheetName||(r.sheetName=document.title),new Promise(function(e){r.content?e((0,_util2.handlePrint)(w,r,r.content)):e(l.exportData(r).then(function(e){e=e.content;return(0,_util2.handlePrint)(w,r,e)}))})},openImport:function(e){var t=D.treeConfig,r=D.importConfig,o=N.initStore,n=N.importStore,l=N.importParams,a=i.value,e=Object.assign({mode:"insert",message:!0,types:_vXETable.VXETable.config.importTypes},e,a),a=e.types;!t?(r||(0,_utils.errLog)("vxe.error.reqProp",["import-config"]),r=a.map(function(e){return{value:e,label:"vxe.export.types."+e}}),a=e.modes.map(function(e){return{value:e,label:"vxe.import.modes."+e}}),Object.assign(n,{file:null,type:"",filename:"",modeList:a,typeList:r,visible:!0}),Object.assign(l,e),o.import=!0):e.message&&_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.treeNotImp"),status:"error"})},openExport:function(e){var t=y.value;"development"===process.env.NODE_ENV&&(D.exportConfig||(0,_utils.errLog)("vxe.error.reqProp",["export-config"])),r(Object.assign({},t,e))},openPrint:function(e){var t=o.value;"development"===process.env.NODE_ENV&&(D.printConfig||(0,_utils.errLog)("vxe.error.reqProp",["print-config"])),r(Object.assign({},t,e),!0)}};return l},setupGrid:function(e){return e.extendTableMethods(tableExportMethodKeys)}},_default=tableExportHook;exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var htmlCellElem,_vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("../../table/src/util"),_utils=require("../../tools/utils"),_util2=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var csvBOM="\ufeff",enterSymbol="\r\n";function defaultFilterExportColumn(e){return e.property||-1<["seq","checkbox","radio"].indexOf(e.type)}var getConvertColumns=function t(e){var r=[];return e.forEach(function(e){e.childNodes&&e.childNodes.length?(r.push(e),r.push.apply(r,t(e.childNodes))):r.push(e)}),r},convertToRows=function(e){function o(t,e){var r;e&&(t._level=e._level+1,n<t._level&&(n=t._level)),t.childNodes&&t.childNodes.length?(r=0,t.childNodes.forEach(function(e){o(e,t),r+=e._colSpan}),t._colSpan=r):t._colSpan=1}var n=1;e.forEach(function(e){e._level=1,o(e)});for(var t=[],r=0;r<n;r++)t.push([]);return getConvertColumns(e).forEach(function(e){e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=n-e._level+1,t[e._level-1].push(e)}),t};function toTableBorder(e){return!0===e?"full":e||"default"}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t){return(e.original?t.property:t.getTitle())||""}function getFooterData(e,t){var r=e.footerFilterMethod;return r?t.filter(function(e,t){return r({items:e,$rowIndex:t})}):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return"\t"+t;switch(e.cellType){case"string":if(!isNaN(t))return"\t"+t;break;case"number":break;default:if(12<=t.length&&!isNaN(t))return"\t"+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?'"'+e.replace(/"/g,'""')+'"':e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return"#"+e+"@"+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,function(e){return _xeUtils.default.hasOwnProp(t,e)?t[e]:e})}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,function(e){return'"'.repeat(Math.ceil(e.length/2))})}function parseCsvAndTxt(e,t,o){var n,l,t=t.split(enterSymbol),a=[],i=[];return t.length&&(n={},l=Date.now(),t.forEach(function(e){var r;e&&(r={},e=(e=e.replace(/("")|(\n)/g,function(e,t){var r=getTxtCellKey(l);return n[r]=t?'"':"\n",r}).replace(/"(.*?)"/g,function(e,t){var r=getTxtCellKey(l);return n[r]=replaceTxtCell(t,n),r})).split(o),i.length?(e.forEach(function(e,t){t<i.length&&(r[i[t]]=getTxtCellValue(e.trim(),n))}),a.push(r)):i=e.map(function(e){return getTxtCellValue(e.trim(),n)}))})),{fields:i,rows:a}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var r=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body"),o=[],n=[];return r.length&&(!(t=getElementsByTagName(r[0],"table")).length||(r=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(r[0],"tr"),function(e){_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),function(e){n.push(e.textContent)})}),(t=getElementsByTagName(t[0],"tbody")).length&&_xeUtils.default.arrayEach(getElementsByTagName(t[0],"tr"),function(e){var r={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),function(e,t){n[t]&&(r[n[t]]=e.textContent||"")}),o.push(r)}))),{fields:n,rows:o}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet"),o=[],n=[];return t.length&&(!(t=getElementsByTagName(t[0],"Table")).length||(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),function(e){n.push(e.textContent)}),_xeUtils.default.arrayEach(t,function(e,t){var r;t&&(r={},e=getElementsByTagName(e,"Cell"),_xeUtils.default.arrayEach(e,function(e,t){n[t]&&(r[n[t]]=e.textContent)}),o.push(r))}))),{fields:n,rows:o}}function clearColumnConvert(e){_xeUtils.default.eachTree(e,function(e){delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function checkImportData(e,t){var r=[];return e.forEach(function(e){e=e.property;e&&r.push(e)}),t.some(function(e){return-1<r.indexOf(e)})}var tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"],tableExportHook={setupTable:function(w){function m(e,t,r,o){var n=l.value.seqMethod||r.seqMethod;return n?n({row:e,rowIndex:t,column:r,columnIndex:o}):w.getRowSeq(e)}function v(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function C(e,t,r){var o=r.editRender||r.cellRender,n=r.footerExportMethod;n||!o||!o.name||(l=_vXETable.VXETable.renderer.get(o.name))&&(n=l.footerExportMethod);var l=w.getVTColumnIndex(r);return n?n({$table:w,items:t,itemIndex:l,_columnIndex:l,column:r,options:e}):_xeUtils.default.toValueString(t[l])}function k(e,t,r){return e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?r:e,r="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t,e=N.scrollXLoad,t=N.scrollYLoad,r=(e||t)&&!r?!0:r}function b(a){var i=a.remote,s=a.columns,c=a.colgroups,u=a.exportMethod,t=a.afterExportMethod;return new Promise(function(e){var t,r,o,n,l;i?(l={options:a,$table:w,$grid:T},e(u?u(l):l)):(o=(r=a).columns,n=r.dataFilterMethod,l=r.data,n&&(l=l.filter(function(e,t){return n({row:e,$rowIndex:t})})),t=d(r,o,l),e(w.preventEvent(null,"event.export",{options:a,columns:s,colgroups:c,datas:t},function(){return function(e,t){var r=e.filename,o=e.type;if(!e.download){var n=(0,_util2.getExportBlobByContent)(t,e);return Promise.resolve({type:o,content:t,blob:n})}(0,_util2.saveLocalFile)({filename:r,type:o,content:t}).then(function(){!1!==e.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.expSuccess"),status:"success"}))})}(a,function(e,t,r){if(t.length)switch(e.type){case"csv":return p(e,t,r);case"txt":return f(e,t,r);case"html":return h(e,t,r);case"xml":return g(e,t,r)}return""}(a,s,t))})))}).then(function(e){return clearColumnConvert(s),a.print||t&&t({status:!0,options:a,$table:w,$grid:T}),Object.assign({status:!0},e)}).catch(function(){clearColumnConvert(s),a.print||t&&t({status:!1,options:a,$table:w,$grid:T});return Promise.reject({status:!1})})}function n(a,i){var s=i.importMethod,t=i.afterImportMethod,e=(0,_utils.parseFile)(a),c=e.type,u=e.filename;return s||_xeUtils.default.includes(_vXETable.VXETable.config.importTypes,c)?new Promise(function(t,r){function e(e){t(e),_._importResolve=null,_._importReject=null}function o(e){r(e),_._importResolve=null,_._importReject=null}var n,l;_._importResolve=e,_._importReject=o,window.FileReader?(n=Object.assign({mode:"insert"},i,{type:c,filename:u})).remote?s?Promise.resolve(s({file:a,options:n,$table:w})).then(function(){e({status:!0})}).catch(function(){e({status:!0})}):e({status:!0}):(l=_.tableFullColumn,w.preventEvent(null,"event.import",{file:a,options:n,columns:l},function(){var e=new FileReader;e.onerror=function(){(0,_utils.errLog)("vxe.error.notType",[c]),o({status:!1})},e.onload=function(e){!function(e,t){var r=_.tableFullColumn,o=_._importResolve,n=_._importReject,l={fields:[],rows:[]};switch(t.type){case"csv":l=parseCsv(r,e);break;case"txt":l=parseTxt(r,e);break;case"html":l=parseHTML(r,e);break;case"xml":l=parseXML(r,e)}var a=l.fields,i=l.rows;checkImportData(r,a)?w.createData(i).then(function(e){e="insert"===t.mode?w.insert(e):w.reloadData(e);return!1!==t.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.impSuccess",[i.length]),status:"success"})),e.then(function(){o&&o({status:!0})})}):!1!==t.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.impFields"),status:"error"}),n&&n({status:!1}))}(e.target.result,n)},e.readAsText(a,"UTF-8")})):("development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notExp"),e({status:!0}))}).then(function(){t&&t({status:!0,options:i,$table:w})}).catch(function(e){return t&&t({status:!1,options:i,$table:w}),Promise.reject(e)}):(!1!==i.message&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1}))}function r(e,t){var r=D.treeConfig,o=D.showHeader,n=D.showFooter,l=N.initStore,a=N.mergeList,i=N.isGroup,s=N.footerTableData,c=N.exportStore,u=N.exportParams,d=_.collectColumn,p=r,f=x.value,h=w.getCheckboxRecords(),r=!!s.length,s=!p&&a.length,o=(a=Object.assign({message:!0,isHeader:o,isFooter:n},e)).types||_vXETable.VXETable.config.exportTypes,n=a.modes,m=f.checkMethod,e=d.slice(0),v=a.columns,f=o.map(function(e){return{value:e,label:"vxe.export.types."+e}}),d=n.map(function(e){return{value:e,label:"vxe.export.modes."+e}});return _xeUtils.default.eachTree(e,function(o,e,t,r,n){(o.children&&o.children.length||defaultFilterExportColumn(o))&&(o.checked=v?v.some(function(e){if((0,_util.isColumnInfo)(e))return o===e;if(_xeUtils.default.isString(e))return o.field===e;var t=e.id||e.colId,r=e.type,e=e.property||e.field;return t?o.id===t:e&&r?o.property===e&&o.type===r:e?o.property===e:r?o.type===r:void 0}):o.visible,o.halfChecked=!1,o.disabled=n&&n.disabled||!!m&&!m({column:o}))}),Object.assign(c,{columns:e,typeList:f,modeList:d,hasFooter:r,hasMerge:s,hasTree:p,isPrint:t,hasColgroup:i,visible:!0}),l.export||Object.assign(u,{mode:h.length?"selected":"current"},a),-1===n.indexOf(u.mode)&&(u.mode=n[0]),-1===o.indexOf(u.type)&&(u.type=o[0]),l.export=!0,(0,_vue.nextTick)()}var D=w.props,N=w.reactData,_=w.internalData,e=w.getComputeMaps(),j=e.computeTreeOpts,o=e.computePrintOpts,y=e.computeExportOpts,i=e.computeImportOpts,x=e.computeCustomOpts,l=e.computeSeqOpts,a=e.computeRadioOpts,s=e.computeCheckboxOpts,T=(0,_vue.inject)("$xegrid",null),d=function(c,l,e){var u=c.isAllExpand,t=D.treeConfig,d=a.value,p=s.value,r=j.value;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){var f=[],h=new Map;return _xeUtils.default.eachTree(e,function(e,a,t,r,o,n){var i,s=e._row||e,e=o&&o._row?o._row:o;(u||!e||h.has(e)&&w.isTreeExpandByRow(e))&&(o=s,e=j.value,e=o[e.children]&&o[e.children].length,i={_row:s,_level:n.length-1,_hasChild:e,_expand:e&&w.isTreeExpandByRow(s)},l.forEach(function(e,t){var r,o="",n=e.editRender||e.cellRender,l=e.exportMethod;if(l||!n||!n.name||(n=_vXETable.VXETable.renderer.get(n.name))&&(l=n.exportMethod),l)o=l({$table:w,row:s,column:e,options:c});else switch(e.type){case"seq":o=m(s,a,e,t);break;case"checkbox":o=v(w.isCheckedByCheckboxRow(s)),i._checkboxLabel=p.labelField?_xeUtils.default.get(s,p.labelField):"",i._checkboxDisabled=p.checkMethod&&!p.checkMethod({row:s});break;case"radio":o=v(w.isCheckedByRadioRow(s)),i._radioLabel=d.labelField?_xeUtils.default.get(s,d.labelField):"",i._radioDisabled=d.checkMethod&&!d.checkMethod({row:s});break;default:c.original?o=(0,_util.getCellValue)(s,e):(o=w.getCellLabel(s,e),"html"===e.type?(htmlCellElem.innerHTML=o,o=htmlCellElem.innerText.trim()):(r=w.getCell(s,e))&&(o=r.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(o)}),h.set(s,1),f.push(Object.assign(i,s)))},r),f}return e.map(function(a,i){var s={_row:a};return l.forEach(function(e,t){var r,o="",n=e.editRender||e.cellRender,l=e.exportMethod;if(l||!n||!n.name||(n=_vXETable.VXETable.renderer.get(n.name))&&(l=n.exportMethod),l)o=l({$table:w,row:a,column:e,options:c});else switch(e.type){case"seq":o=m(a,i,e,t);break;case"checkbox":o=v(w.isCheckedByCheckboxRow(a)),s._checkboxLabel=p.labelField?_xeUtils.default.get(a,p.labelField):"",s._checkboxDisabled=p.checkMethod&&!p.checkMethod({row:a});break;case"radio":o=v(w.isCheckedByRadioRow(a)),s._radioLabel=d.labelField?_xeUtils.default.get(a,d.labelField):"",s._radioDisabled=d.checkMethod&&!d.checkMethod({row:a});break;default:c.original?o=(0,_util.getCellValue)(a,e):(o=w.getCellLabel(a,e),"html"===e.type?(htmlCellElem.innerHTML=o,o=htmlCellElem.innerText.trim()):(r=w.getCell(a,e))&&(o=r.innerText.trim()))}s[e.id]=_xeUtils.default.toValueString(o)}),s})},p=function(r,e,t){var o=csvBOM;return r.isHeader&&(o+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(r,e))}).join(",")+enterSymbol),t.forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))}).join(",")+enterSymbol}),r.isFooter&&(t=N.footerTableData,getFooterData(r,t).forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(C(r,t,e))}).join(",")+enterSymbol})),o},f=function(r,e,t){var o="";return r.isHeader&&(o+=e.map(function(e){return toTxtCellLabel(getHeaderTitle(r,e))}).join("\t")+enterSymbol),t.forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(t[e.id])}).join("\t")+enterSymbol}),r.isFooter&&(t=N.footerTableData,getFooterData(r,t).forEach(function(t){o+=e.map(function(e){return toTxtCellLabel(C(r,t,e))}).join(",")+enterSymbol})),o},h=function(i,e,t){var c=D.id,r=D.border,o=D.treeConfig,s=D.headerAlign,u=D.align,l=D.footerAlign,d=D.showOverflow,p=D.showHeaderOverflow,f=N.isAllSelected,n=N.isIndeterminate,h=N.mergeList,a=j.value,m=i.print,v=i.isHeader,x=i.isFooter,g=i.isColgroup,b=i.isMerge,_=i.colgroups,y=i.original,T="check-all",E=['<table class="'+["vxe-table","border--"+toTableBorder(r),m?"is--print":"",v?"is--header":""].filter(function(e){return e}).join(" ")+'" border="0" cellspacing="0" cellpadding="0">',"<colgroup>"+e.map(function(e){return'<col style="width:'+e.renderWidth+'px">'}).join("")+"</colgroup>"];return v&&(E.push("<thead>"),g&&!y?_.forEach(function(e){E.push("<tr>"+e.map(function(t){var e=t.headerAlign||t.align||s||u,r=k(t,"showHeaderOverflow",p)?["col--ellipsis"]:[],o=getHeaderTitle(i,t),n=0,l=0;_xeUtils.default.eachTree([t],function(e){e.childNodes&&t.childNodes.length||l++,n+=e.renderWidth},{children:"childNodes"});var a=n-l;return e&&r.push("col--"+e),"checkbox"===t.type?'<th class="'+r.join(" ")+'" colspan="'+t._colSpan+'" rowspan="'+t._rowSpan+'"><div '+(m?"":'style="width: '+a+'px"')+'><input type="checkbox" class="'+T+'" '+(f?"checked":"")+"><span>"+o+"</span></div></th>":'<th class="'+r.join(" ")+'" colspan="'+t._colSpan+'" rowspan="'+t._rowSpan+'" title="'+o+'"><div '+(m?"":'style="width: '+a+'px"')+"><span>"+(0,_utils.formatText)(o,!0)+"</span></div></th>"}).join("")+"</tr>")}):E.push("<tr>"+e.map(function(e){var t=e.headerAlign||e.align||s||u,r=k(e,"showHeaderOverflow",p)?["col--ellipsis"]:[],o=getHeaderTitle(i,e);return t&&r.push("col--"+t),"checkbox"===e.type?'<th class="'+r.join(" ")+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="checkbox" class="'+T+'" '+(f?"checked":"")+"><span>"+o+"</span></div></th>":'<th class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+"><span>"+(0,_utils.formatText)(o,!0)+"</span></div></th>"}).join("")+"</tr>"),E.push("</thead>")),t.length&&(E.push("<tbody>"),o?t.forEach(function(n){E.push("<tr>"+e.map(function(e){var t=e.align||u,r=k(e,"showOverflow",d)?["col--ellipsis"]:[],o=n[e.id];if(t&&r.push("col--"+t),e.treeNode){t="";return n._hasChild&&(t='<i class="'+(n._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon")+'"></i>'),r.push("vxe-table--tree-node"),"radio"===e.type?'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><div class="vxe-table--tree-node-wrapper" style="padding-left: '+n._level*a.indent+'px"><div class="vxe-table--tree-icon-wrapper">'+t+'</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_'+c+'" '+(n._radioDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._radioLabel+"</span></div></div></div></td>":"checkbox"===e.type?'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><div class="vxe-table--tree-node-wrapper" style="padding-left: '+n._level*a.indent+'px"><div class="vxe-table--tree-icon-wrapper">'+t+'</div><div class="vxe-table--tree-cell"><input type="checkbox" '+(n._checkboxDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._checkboxLabel+"</span></div></div></div></td>":'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><div class="vxe-table--tree-node-wrapper" style="padding-left: '+n._level*a.indent+'px"><div class="vxe-table--tree-icon-wrapper">'+t+'</div><div class="vxe-table--tree-cell">'+o+"</div></div></div></td>"}return"radio"===e.type?'<td class="'+r.join(" ")+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="radio" name="radio_'+c+'" '+(n._radioDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._radioLabel+"</span></div></td>":"checkbox"===e.type?'<td class="'+r.join(" ")+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="checkbox" '+(n._checkboxDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+n._checkboxLabel+"</span></div></td>":'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+">"+(0,_utils.formatText)(o,!0)+"</div></td>"}).join("")+"</tr>")}):t.forEach(function(s){E.push("<tr>"+e.map(function(e){var t=e.align||u,r=k(e,"showOverflow",d)?["col--ellipsis"]:[],o=s[e.id],n=1,l=1;if(b&&h.length){var a=w.getVTRowIndex(s._row),i=w.getVTColumnIndex(e),a=(0,_util.mergeBodyMethod)(h,a,i);if(a){i=a.rowspan,a=a.colspan;if(!i||!a)return"";1<i&&(n=i),1<a&&(l=a)}}return t&&r.push("col--"+t),"radio"===e.type?'<td class="'+r.join(" ")+'" rowspan="'+n+'" colspan="'+l+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="radio" name="radio_'+c+'" '+(s._radioDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+s._radioLabel+"</span></div></td>":"checkbox"===e.type?'<td class="'+r.join(" ")+'" rowspan="'+n+'" colspan="'+l+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+'><input type="checkbox" '+(s._checkboxDisabled?"disabled ":"")+(getBooleanValue(o)?"checked":"")+"><span>"+s._checkboxLabel+"</span></div></td>":'<td class="'+r.join(" ")+'" rowspan="'+n+'" colspan="'+l+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+">"+(0,_utils.formatText)(o,!0)+"</div></td>"}).join("")+"</tr>")}),E.push("</tbody>")),x&&(x=N.footerTableData,(x=getFooterData(i,x)).length&&(E.push("<tfoot>"),x.forEach(function(n){E.push("<tr>"+e.map(function(e){var t=e.footerAlign||e.align||l||u,r=k(e,"showOverflow",d)?["col--ellipsis"]:[],o=C(i,n,e);return t&&r.push("col--"+t),'<td class="'+r.join(" ")+'" title="'+o+'"><div '+(m?"":'style="width: '+e.renderWidth+'px"')+">"+(0,_utils.formatText)(o,!0)+"</div></td>"}).join("")+"</tr>")}),E.push("</tfoot>"))),E.push("</table>",!f&&n?'<script>(function(){var a=document.querySelector(".'+T+'");if(a){a.indeterminate=true}})()<\/script>':""),m?E.join(""):(0,_util2.createHtmlPage)(i,E.join(""))},g=function(r,e,t){var o=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",'<Worksheet ss:Name="'+r.sheetName+'">',"<Table>",e.map(function(e){return'<Column ss:Width="'+e.renderWidth+'"/>'}).join("")].join("");return r.isHeader&&(o+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'+getHeaderTitle(r,e)+"</Data></Cell>"}).join("")+"</Row>"),t.forEach(function(t){o+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'+t[e.id]+"</Data></Cell>"}).join("")+"</Row>"}),r.isFooter&&(t=N.footerTableData,getFooterData(r,t).forEach(function(t){o+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'+C(r,t,e)+"</Data></Cell>"}).join("")+"</Row>"})),o+"</Table></Worksheet></Workbook>"},c={exportData:function(e){var t=D.treeConfig,r=N.isGroup,o=N.tableGroupColumn,l=_.tableFullColumn,n=_.afterFullData,a=y.value,i=j.value,s=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},a,{print:!1},e),c=s.type,u=s.mode,d=s.columns,p=s.original,a=s.beforeExportMethod,e=[],d=d&&d.length?d:null,f=s.columnFilterMethod;d||f||(f=p?function(e){return e.column.property}:function(e){return defaultFilterExportColumn(e.column)});var e=d?_xeUtils.default.searchTree(_xeUtils.default.mapTree(d,function(e){var t,r,o,n;if(e)return(0,_util.isColumnInfo)(e)?t=e:_xeUtils.default.isString(e)?t=w.getColumnByField(e):(r=e.id||e.colId,o=e.type,n=e.property||e.field,r?t=w.getColumnById(r):n&&o?t=l.find(function(e){return e.property===n&&e.type===o}):n?t=w.getColumnByField(n):o&&(t=l.find(function(e){return e.type===o}))),t||{}},{children:"childNodes",mapChildren:"_children"}),function(e,t){return(0,_util.isColumnInfo)(e)&&(!f||f({column:e,$columnIndex:t}))},{children:"_children",mapChildren:"childNodes",original:!0}):_xeUtils.default.searchTree(r?o:l,function(e,t){return e.visible&&(!f||f({column:e,$columnIndex:t}))},{children:"children",mapChildren:"childNodes",original:!0}),h=[];if(_xeUtils.default.eachTree(e,function(e){e.children&&e.children.length||h.push(e)},{children:"childNodes"}),s.columns=h,s.colgroups=convertToRows(e),s.filename||(s.filename=_conf.default.i18n(s.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),s.sheetName||(s.sheetName=document.title),!s.exportMethod&&!_xeUtils.default.includes(_vXETable.VXETable.config.exportTypes,c)){"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notType",[c]);return Promise.reject({status:!1})}if(s.print||a&&a({options:s,$table:w,$grid:T}),!s.data)if(s.data=n,"selected"===u){var m=w.getCheckboxRecords();-1<["html","pdf"].indexOf(c)&&t?s.data=_xeUtils.default.searchTree(w.getTableData().fullData,function(e){return-1<w.findRowIndexOf(m,e)},Object.assign({},i,{data:"_row"})):s.data=m}else if("all"===u&&("development"===process.env.NODE_ENV&&(T||(0,_utils.warnLog)("vxe.error.errProp",["all","mode=current,selected"])),T&&!s.remote)){var c=T.reactData,t=T.getComputeMaps().computeProxyOpts.value,i=t.beforeQueryAll,v=t.afterQueryAll,u=t.ajax,t=t.props,x=void 0===t?{}:t,u=(void 0===u?{}:u).queryAll;if("development"===process.env.NODE_ENV&&(u||(0,_utils.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"])),u){var g={$table:w,$grid:T,sort:c.sortData,filters:c.filterData,form:c.formData,target:u,options:s};return Promise.resolve((i||u)(g)).catch(function(e){return e}).then(function(e){return s.data=(x.list?_xeUtils.default.get(e,x.list):e)||[],v&&v(g),b(s)})}}return b(s)},importByFile:function(e,t){var r=Object.assign({},t),t=r.beforeImportMethod;return t&&t({options:r,$table:w}),n(e,r)},importData:function(e){var t=i.value,r=Object.assign({types:_vXETable.VXETable.config.importTypes},t,e),e=r.beforeImportMethod,o=r.afterImportMethod;return e&&e({options:r,$table:w}),(0,_util2.readLocalFile)(r).catch(function(e){return o&&o({status:!1,options:r,$table:w}),Promise.reject(e)}).then(function(e){e=e.file;return n(e,r)})},saveFile:function(e){return(0,_util2.saveLocalFile)(e)},readFile:function(e){return(0,_util2.readLocalFile)(e)},print:function(e){var t=o.value,r=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return r.sheetName||(r.sheetName=document.title),new Promise(function(e){r.content?e((0,_util2.handlePrint)(w,r,r.content)):e(c.exportData(r).then(function(e){e=e.content;return(0,_util2.handlePrint)(w,r,e)}))})},openImport:function(e){var t=D.treeConfig,r=D.importConfig,o=N.initStore,n=N.importStore,l=N.importParams,a=i.value,e=Object.assign({mode:"insert",message:!0,types:_vXETable.VXETable.config.importTypes},e,a),a=e.types;!t?(r||(0,_utils.errLog)("vxe.error.reqProp",["import-config"]),r=a.map(function(e){return{value:e,label:"vxe.export.types."+e}}),a=e.modes.map(function(e){return{value:e,label:"vxe.import.modes."+e}}),Object.assign(n,{file:null,type:"",filename:"",modeList:a,typeList:r,visible:!0}),Object.assign(l,e),o.import=!0):e.message&&_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.treeNotImp"),status:"error"})},openExport:function(e){var t=y.value;"development"===process.env.NODE_ENV&&(D.exportConfig||(0,_utils.errLog)("vxe.error.reqProp",["export-config"])),r(Object.assign({},t,e))},openPrint:function(e){var t=o.value;"development"===process.env.NODE_ENV&&(D.printConfig||(0,_utils.errLog)("vxe.error.reqProp",["print-config"])),r(Object.assign({},t,e),!0)}};return c},setupGrid:function(e){return e.extendTableMethods(tableExportMethodKeys)}},_default=tableExportHook;exports.default=_default;
|
package/lib/index.umd.js
CHANGED
|
@@ -19631,7 +19631,7 @@ var tableExportHook = {
|
|
|
19631
19631
|
return row[treeOpts.children] && row[treeOpts.children].length;
|
|
19632
19632
|
};
|
|
19633
19633
|
|
|
19634
|
-
var getSeq = function getSeq(row, rowIndex, column, columnIndex
|
|
19634
|
+
var getSeq = function getSeq(row, rowIndex, column, columnIndex) {
|
|
19635
19635
|
var seqOpts = computeSeqOpts.value;
|
|
19636
19636
|
var seqMethod = seqOpts.seqMethod || column.seqMethod;
|
|
19637
19637
|
|
|
@@ -19644,11 +19644,7 @@ var tableExportHook = {
|
|
|
19644
19644
|
});
|
|
19645
19645
|
}
|
|
19646
19646
|
|
|
19647
|
-
|
|
19648
|
-
return toTreePathSeq(path);
|
|
19649
|
-
}
|
|
19650
|
-
|
|
19651
|
-
return seqOpts.startIndex + rowIndex + 1;
|
|
19647
|
+
return $xetable.getRowSeq(row);
|
|
19652
19648
|
};
|
|
19653
19649
|
|
|
19654
19650
|
var toBooleanValue = function toBooleanValue(cellValue) {
|
|
@@ -19705,7 +19701,7 @@ var tableExportHook = {
|
|
|
19705
19701
|
} else {
|
|
19706
19702
|
switch (column.type) {
|
|
19707
19703
|
case 'seq':
|
|
19708
|
-
cellValue = getSeq(row, rowIndex, column, columnIndex
|
|
19704
|
+
cellValue = getSeq(row, rowIndex, column, columnIndex);
|
|
19709
19705
|
break;
|
|
19710
19706
|
|
|
19711
19707
|
case 'checkbox':
|
|
@@ -19781,7 +19777,7 @@ var tableExportHook = {
|
|
|
19781
19777
|
} else {
|
|
19782
19778
|
switch (column.type) {
|
|
19783
19779
|
case 'seq':
|
|
19784
|
-
cellValue = getSeq(row, rowIndex, column, columnIndex
|
|
19780
|
+
cellValue = getSeq(row, rowIndex, column, columnIndex);
|
|
19785
19781
|
break;
|
|
19786
19782
|
|
|
19787
19783
|
case 'checkbox':
|
|
@@ -21739,7 +21735,7 @@ var validatorHook = {
|
|
|
21739
21735
|
var ruleProps = Object.keys(validRest);
|
|
21740
21736
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])().then(function () {
|
|
21741
21737
|
if (ruleProps.length) {
|
|
21742
|
-
return validRest[ruleProps[0]][0];
|
|
21738
|
+
return Promise.reject(validRest[ruleProps[0]][0]);
|
|
21743
21739
|
}
|
|
21744
21740
|
|
|
21745
21741
|
if (cb) {
|
|
@@ -33092,6 +33088,35 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
33092
33088
|
});
|
|
33093
33089
|
}
|
|
33094
33090
|
};
|
|
33091
|
+
/**
|
|
33092
|
+
* 如果为虚拟树,将树结构拍平
|
|
33093
|
+
* @returns
|
|
33094
|
+
*/
|
|
33095
|
+
|
|
33096
|
+
|
|
33097
|
+
var handleVirtualTreeToList = function handleVirtualTreeToList() {
|
|
33098
|
+
var treeConfig = props.treeConfig;
|
|
33099
|
+
var treeExpandeds = reactData.treeExpandeds;
|
|
33100
|
+
var treeOpts = computeTreeOpts.value;
|
|
33101
|
+
|
|
33102
|
+
if (treeConfig && treeOpts.transform) {
|
|
33103
|
+
var fullData = [];
|
|
33104
|
+
var expandMaps = new Map();
|
|
33105
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(internalData.afterTreeFullData, function (row, index, items, path, parent) {
|
|
33106
|
+
if (!parent || expandMaps.has(parent) && $xetable.findRowIndexOf(treeExpandeds, parent) > -1) {
|
|
33107
|
+
expandMaps.set(row, 1);
|
|
33108
|
+
fullData.push(row);
|
|
33109
|
+
}
|
|
33110
|
+
}, {
|
|
33111
|
+
children: treeOpts.mapChildren
|
|
33112
|
+
});
|
|
33113
|
+
internalData.afterFullData = fullData;
|
|
33114
|
+
updateScrollYStatus(fullData);
|
|
33115
|
+
return fullData;
|
|
33116
|
+
}
|
|
33117
|
+
|
|
33118
|
+
return internalData.afterFullData;
|
|
33119
|
+
};
|
|
33095
33120
|
/**
|
|
33096
33121
|
* 获取处理后全量的表格数据
|
|
33097
33122
|
* 如果存在筛选条件,继续处理
|
|
@@ -34539,6 +34564,7 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
34539
34564
|
|
|
34540
34565
|
var handleVirtualTreeExpand = function handleVirtualTreeExpand(rows, expanded) {
|
|
34541
34566
|
return handleBaseTreeExpand(rows, expanded).then(function () {
|
|
34567
|
+
handleVirtualTreeToList();
|
|
34542
34568
|
return tablePrivateMethods.handleTableData();
|
|
34543
34569
|
}).then(function () {
|
|
34544
34570
|
return tableMethods.recalculate();
|
|
@@ -36238,7 +36264,8 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
36238
36264
|
var treeExpandeds = reactData.treeExpandeds;
|
|
36239
36265
|
var fullAllDataRowIdData = internalData.fullAllDataRowIdData;
|
|
36240
36266
|
var treeOpts = computeTreeOpts.value;
|
|
36241
|
-
var
|
|
36267
|
+
var transform = treeOpts.transform,
|
|
36268
|
+
lazy = treeOpts.lazy;
|
|
36242
36269
|
|
|
36243
36270
|
var rest = fullAllDataRowIdData[util_getRowid($xetable, row)];
|
|
36244
36271
|
|
|
@@ -36249,6 +36276,11 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
36249
36276
|
});
|
|
36250
36277
|
}
|
|
36251
36278
|
|
|
36279
|
+
if (transform) {
|
|
36280
|
+
handleVirtualTreeToList();
|
|
36281
|
+
return tablePrivateMethods.handleTableData();
|
|
36282
|
+
}
|
|
36283
|
+
|
|
36252
36284
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])();
|
|
36253
36285
|
},
|
|
36254
36286
|
|
|
@@ -36300,7 +36332,8 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
36300
36332
|
setAllTreeExpand: function setAllTreeExpand(expanded) {
|
|
36301
36333
|
var tableFullData = internalData.tableFullData;
|
|
36302
36334
|
var treeOpts = computeTreeOpts.value;
|
|
36303
|
-
var
|
|
36335
|
+
var transform = treeOpts.transform,
|
|
36336
|
+
lazy = treeOpts.lazy,
|
|
36304
36337
|
children = treeOpts.children;
|
|
36305
36338
|
var expandeds = [];
|
|
36306
36339
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(tableFullData, function (row) {
|
|
@@ -36310,7 +36343,12 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
36310
36343
|
expandeds.push(row);
|
|
36311
36344
|
}
|
|
36312
36345
|
}, treeOpts);
|
|
36313
|
-
return tableMethods.setTreeExpand(expandeds, expanded)
|
|
36346
|
+
return tableMethods.setTreeExpand(expandeds, expanded).then(function () {
|
|
36347
|
+
if (transform) {
|
|
36348
|
+
handleVirtualTreeToList();
|
|
36349
|
+
return tableMethods.recalculate();
|
|
36350
|
+
}
|
|
36351
|
+
});
|
|
36314
36352
|
},
|
|
36315
36353
|
|
|
36316
36354
|
/**
|
|
@@ -36358,7 +36396,8 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
36358
36396
|
var treeExpandeds = reactData.treeExpandeds;
|
|
36359
36397
|
var tableFullTreeData = internalData.tableFullTreeData;
|
|
36360
36398
|
var treeOpts = computeTreeOpts.value;
|
|
36361
|
-
var
|
|
36399
|
+
var transform = treeOpts.transform,
|
|
36400
|
+
reserve = treeOpts.reserve;
|
|
36362
36401
|
var isExists = treeExpandeds.length;
|
|
36363
36402
|
reactData.treeExpandeds = [];
|
|
36364
36403
|
|
|
@@ -36369,6 +36408,10 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
36369
36408
|
}
|
|
36370
36409
|
|
|
36371
36410
|
return tablePrivateMethods.handleTableData().then(function () {
|
|
36411
|
+
if (transform) {
|
|
36412
|
+
handleVirtualTreeToList();
|
|
36413
|
+
}
|
|
36414
|
+
|
|
36372
36415
|
if (isExists) {
|
|
36373
36416
|
tableMethods.recalculate();
|
|
36374
36417
|
}
|
|
@@ -37340,31 +37383,16 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
|
37340
37383
|
return record;
|
|
37341
37384
|
},
|
|
37342
37385
|
handleTableData: function handleTableData(force) {
|
|
37343
|
-
var treeConfig = props.treeConfig;
|
|
37344
37386
|
var scrollYLoad = reactData.scrollYLoad;
|
|
37345
37387
|
var scrollYStore = internalData.scrollYStore,
|
|
37346
37388
|
fullDataRowIdData = internalData.fullDataRowIdData;
|
|
37347
|
-
var
|
|
37348
|
-
var treeOpts = computeTreeOpts.value;
|
|
37349
|
-
var fullList = []; // 是否进行数据处理
|
|
37389
|
+
var fullList = internalData.afterFullData; // 是否进行数据处理
|
|
37350
37390
|
|
|
37351
37391
|
if (force) {
|
|
37352
|
-
|
|
37353
|
-
|
|
37392
|
+
// 更新数据,处理筛选和排序
|
|
37393
|
+
updateAfterFullData(); // 如果为虚拟树,将树结构拍平
|
|
37354
37394
|
|
|
37355
|
-
|
|
37356
|
-
if (treeConfig && treeOpts.transform) {
|
|
37357
|
-
var expandMaps = new Map();
|
|
37358
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(internalData.afterTreeFullData, function (row, index, items, path, parent) {
|
|
37359
|
-
if (!parent || expandMaps.has(parent) && $xetable.findRowIndexOf(treeExpandeds, parent) > -1) {
|
|
37360
|
-
expandMaps.set(row, 1);
|
|
37361
|
-
fullList.push(row);
|
|
37362
|
-
}
|
|
37363
|
-
}, {
|
|
37364
|
-
children: treeOpts.mapChildren
|
|
37365
|
-
});
|
|
37366
|
-
} else {
|
|
37367
|
-
fullList = internalData.afterFullData;
|
|
37395
|
+
fullList = handleVirtualTreeToList();
|
|
37368
37396
|
}
|
|
37369
37397
|
|
|
37370
37398
|
var tableData = scrollYLoad ? fullList.slice(scrollYStore.startIndex, scrollYStore.endIndex) : fullList.slice(0);
|