vxe-table 3.22.4 → 3.22.6
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/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/locale/lang/ar-EG.js +1 -1
- package/es/locale/lang/de-DE.js +1 -1
- package/es/locale/lang/en-US.js +1 -1
- package/es/locale/lang/es-ES.js +1 -1
- package/es/locale/lang/fr-FR.js +1 -1
- package/es/locale/lang/hu-HU.js +1 -1
- package/es/locale/lang/hy-AM.js +1 -1
- package/es/locale/lang/id-ID.js +1 -1
- package/es/locale/lang/it-IT.js +1 -1
- package/es/locale/lang/ja-JP.js +1 -1
- package/es/locale/lang/ko-KR.js +1 -1
- package/es/locale/lang/ms-MY.js +1 -1
- package/es/locale/lang/nb-NO.js +1 -1
- package/es/locale/lang/pt-BR.js +1 -1
- package/es/locale/lang/ru-RU.js +1 -1
- package/es/locale/lang/th-TH.js +1 -1
- package/es/locale/lang/ug-CN.js +1 -1
- package/es/locale/lang/uk-UA.js +1 -1
- package/es/locale/lang/uz-UZ.js +1 -1
- package/es/locale/lang/vi-VN.js +1 -1
- package/es/locale/lang/zh-CHT.js +1 -1
- package/es/locale/lang/zh-CN.js +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/export/mixin.js +69 -31
- package/es/table/src/table.js +14 -4
- package/es/table/style.css +1 -1
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/dom.js +7 -0
- package/es/ui/src/log.js +2 -2
- package/es/vxe-table/style.css +1 -1
- package/es/vxe-table/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +101 -40
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +1 -1
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +1 -1
- package/lib/locale/lang/de-DE.js +1 -1
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +1 -1
- package/lib/locale/lang/en-US.js +1 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +1 -1
- package/lib/locale/lang/es-ES.js +1 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +1 -1
- package/lib/locale/lang/fr-FR.js +1 -1
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +1 -1
- package/lib/locale/lang/hu-HU.js +1 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +1 -1
- package/lib/locale/lang/hy-AM.js +1 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +1 -1
- package/lib/locale/lang/id-ID.js +1 -1
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +1 -1
- package/lib/locale/lang/it-IT.js +1 -1
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +1 -1
- package/lib/locale/lang/ja-JP.js +1 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +1 -1
- package/lib/locale/lang/ko-KR.js +1 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +1 -1
- package/lib/locale/lang/ms-MY.js +1 -1
- package/lib/locale/lang/ms-MY.min.js +1 -1
- package/lib/locale/lang/ms-MY.umd.js +1 -1
- package/lib/locale/lang/nb-NO.js +1 -1
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +1 -1
- package/lib/locale/lang/pt-BR.js +1 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +1 -1
- package/lib/locale/lang/ru-RU.js +1 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +1 -1
- package/lib/locale/lang/th-TH.js +1 -1
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +1 -1
- package/lib/locale/lang/ug-CN.js +1 -1
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +1 -1
- package/lib/locale/lang/uk-UA.js +1 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +1 -1
- package/lib/locale/lang/uz-UZ.js +1 -1
- package/lib/locale/lang/uz-UZ.min.js +1 -1
- package/lib/locale/lang/uz-UZ.umd.js +1 -1
- package/lib/locale/lang/vi-VN.js +1 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +1 -1
- package/lib/locale/lang/zh-CHT.js +1 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CHT.umd.js +1 -1
- package/lib/locale/lang/zh-CN.js +1 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/export/mixin.js +75 -32
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/src/table.js +14 -4
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +1 -1
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +8 -0
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +2 -2
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-table/style/style.css +1 -1
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/locale/lang/ar-EG.ts +1 -1
- package/packages/locale/lang/de-DE.ts +1 -1
- package/packages/locale/lang/en-US.ts +1 -1
- package/packages/locale/lang/es-ES.ts +1 -1
- package/packages/locale/lang/fr-FR.ts +1 -1
- package/packages/locale/lang/hu-HU.ts +1 -1
- package/packages/locale/lang/hy-AM.ts +1 -1
- package/packages/locale/lang/id-ID.ts +1 -1
- package/packages/locale/lang/it-IT.ts +1 -1
- package/packages/locale/lang/ja-JP.ts +1 -1
- package/packages/locale/lang/ko-KR.ts +1 -1
- package/packages/locale/lang/ms-MY.ts +1 -1
- package/packages/locale/lang/nb-NO.ts +1 -1
- package/packages/locale/lang/pt-BR.ts +1 -1
- package/packages/locale/lang/ru-RU.ts +1 -1
- package/packages/locale/lang/th-TH.ts +1 -1
- package/packages/locale/lang/ug-CN.ts +1 -1
- package/packages/locale/lang/uk-UA.ts +1 -1
- package/packages/locale/lang/uz-UZ.ts +1 -1
- package/packages/locale/lang/vi-VN.ts +1 -1
- package/packages/locale/lang/zh-CHT.ts +1 -1
- package/packages/locale/lang/zh-CN.ts +1 -1
- package/packages/table/module/export/mixin.ts +71 -31
- package/packages/table/src/table.ts +14 -4
- package/packages/ui/src/dom.ts +8 -0
- package/packages/ui/src/log.ts +1 -1
- package/styles/components/table.scss +1 -1
- package/styles/theme/base.scss +1 -0
- /package/es/{iconfont.1784366371085.ttf → iconfont.1784791284635.ttf} +0 -0
- /package/es/{iconfont.1784366371085.woff → iconfont.1784791284635.woff} +0 -0
- /package/es/{iconfont.1784366371085.woff2 → iconfont.1784791284635.woff2} +0 -0
- /package/lib/{iconfont.1784366371085.ttf → iconfont.1784791284635.ttf} +0 -0
- /package/lib/{iconfont.1784366371085.woff → iconfont.1784791284635.woff} +0 -0
- /package/lib/{iconfont.1784366371085.woff2 → iconfont.1784791284635.woff2} +0 -0
|
@@ -519,7 +519,7 @@ function toTxtCellLabel(val) {
|
|
|
519
519
|
if (/[",\s\n]/.test(val)) {
|
|
520
520
|
return `"${val.replace(/"/g, '""')}"`;
|
|
521
521
|
}
|
|
522
|
-
return val;
|
|
522
|
+
return _xeUtils.default.eqNull(val) ? '' : val;
|
|
523
523
|
}
|
|
524
524
|
function toCsv($xeTable, opts, columns, datas) {
|
|
525
525
|
const reactData = $xeTable;
|
|
@@ -1374,19 +1374,23 @@ function handleFilterColumns(exportOpts, column, columns) {
|
|
|
1374
1374
|
return false;
|
|
1375
1375
|
});
|
|
1376
1376
|
}
|
|
1377
|
-
function handleFilterFields(exportOpts, column, includeFields,
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1377
|
+
function handleFilterFields(exportOpts, column, includeFields, includeFdMaps, excludeFdMaps, extraFdMaps) {
|
|
1378
|
+
const {
|
|
1379
|
+
field
|
|
1380
|
+
} = column;
|
|
1381
|
+
if (excludeFdMaps[field]) {
|
|
1382
|
+
return false;
|
|
1382
1383
|
}
|
|
1383
1384
|
if (includeFields) {
|
|
1384
|
-
if (
|
|
1385
|
+
if (includeFdMaps[field]) {
|
|
1385
1386
|
return true;
|
|
1386
1387
|
}
|
|
1387
1388
|
return false;
|
|
1388
1389
|
}
|
|
1389
|
-
|
|
1390
|
+
if (extraFdMaps[field]) {
|
|
1391
|
+
return true;
|
|
1392
|
+
}
|
|
1393
|
+
return exportOpts.original ? !!field : defaultFilterExportColumn(column);
|
|
1390
1394
|
}
|
|
1391
1395
|
function handleExportAndPrint($xeTable, options, isPrint) {
|
|
1392
1396
|
const props = $xeTable;
|
|
@@ -1444,7 +1448,8 @@ function handleExportAndPrint($xeTable, options, isPrint) {
|
|
|
1444
1448
|
const {
|
|
1445
1449
|
columns,
|
|
1446
1450
|
excludeFields,
|
|
1447
|
-
includeFields
|
|
1451
|
+
includeFields,
|
|
1452
|
+
extraFields
|
|
1448
1453
|
} = defOpts;
|
|
1449
1454
|
// 处理类型
|
|
1450
1455
|
const typeList = types.map(value => {
|
|
@@ -1465,20 +1470,44 @@ function handleExportAndPrint($xeTable, options, isPrint) {
|
|
|
1465
1470
|
label: getI18n(`vxe.export.modes.${item}`)
|
|
1466
1471
|
};
|
|
1467
1472
|
});
|
|
1473
|
+
const excludeFdMaps = {};
|
|
1474
|
+
if (excludeFields && excludeFields.length) {
|
|
1475
|
+
excludeFields.forEach(field => {
|
|
1476
|
+
excludeFdMaps[field] = 1;
|
|
1477
|
+
});
|
|
1478
|
+
}
|
|
1479
|
+
const includeFdMaps = {};
|
|
1480
|
+
if (includeFields && includeFields.length) {
|
|
1481
|
+
includeFields.forEach(field => {
|
|
1482
|
+
includeFdMaps[field] = 1;
|
|
1483
|
+
});
|
|
1484
|
+
}
|
|
1485
|
+
const extraFdMaps = {};
|
|
1486
|
+
if (extraFields) {
|
|
1487
|
+
extraFields.forEach(field => {
|
|
1488
|
+
extraFdMaps[field] = 1;
|
|
1489
|
+
});
|
|
1490
|
+
}
|
|
1468
1491
|
// 默认选中
|
|
1469
|
-
|
|
1492
|
+
// 优先级 columns > excludeFields > (includeFields || extraFields)
|
|
1493
|
+
_xeUtils.default.eachTree(exportColumns, (column, index, items, path, parentColumn) => {
|
|
1470
1494
|
const isColGroup = column.children && column.children.length > 0;
|
|
1471
1495
|
let isChecked = false;
|
|
1496
|
+
const isExtraChecked = extraFdMaps[column.field];
|
|
1472
1497
|
if (columns && columns.length) {
|
|
1473
1498
|
isChecked = handleFilterColumns(defOpts, column, columns);
|
|
1474
1499
|
} else if (excludeFields || includeFields) {
|
|
1475
|
-
isChecked = handleFilterFields(defOpts, column, includeFields,
|
|
1500
|
+
isChecked = handleFilterFields(defOpts, column, includeFields, includeFdMaps, excludeFdMaps, extraFdMaps);
|
|
1476
1501
|
} else {
|
|
1477
|
-
|
|
1502
|
+
if (isExtraChecked) {
|
|
1503
|
+
isChecked = true;
|
|
1504
|
+
} else {
|
|
1505
|
+
isChecked = column.visible && (isColGroup || defaultFilterExportColumn(column));
|
|
1506
|
+
}
|
|
1478
1507
|
}
|
|
1479
1508
|
column.checked = isChecked;
|
|
1480
1509
|
column.halfChecked = false;
|
|
1481
|
-
column.disabled =
|
|
1510
|
+
column.disabled = parentColumn && parentColumn.disabled || (checkMethod ? !checkMethod({
|
|
1482
1511
|
$table: $xeTable,
|
|
1483
1512
|
column
|
|
1484
1513
|
}) : false);
|
|
@@ -1664,32 +1693,59 @@ var _default = exports.default = {
|
|
|
1664
1693
|
type,
|
|
1665
1694
|
mode,
|
|
1666
1695
|
columns,
|
|
1667
|
-
original,
|
|
1668
1696
|
columnFilterMethod,
|
|
1669
1697
|
beforeExportMethod,
|
|
1670
1698
|
includeFields,
|
|
1671
|
-
excludeFields
|
|
1699
|
+
excludeFields,
|
|
1700
|
+
extraFields
|
|
1672
1701
|
} = opts;
|
|
1673
1702
|
let groups = [];
|
|
1674
1703
|
const selectRecords = $xeTable.getCheckboxRecords();
|
|
1675
1704
|
if (!mode) {
|
|
1676
1705
|
mode = selectRecords.length ? 'selected' : 'current';
|
|
1677
1706
|
}
|
|
1707
|
+
const excludeFdMaps = {};
|
|
1708
|
+
if (excludeFields && excludeFields.length) {
|
|
1709
|
+
excludeFields.forEach(field => {
|
|
1710
|
+
excludeFdMaps[field] = 1;
|
|
1711
|
+
});
|
|
1712
|
+
}
|
|
1713
|
+
const includeFdMaps = {};
|
|
1714
|
+
if (includeFields && includeFields.length) {
|
|
1715
|
+
includeFields.forEach(field => {
|
|
1716
|
+
includeFdMaps[field] = 1;
|
|
1717
|
+
});
|
|
1718
|
+
}
|
|
1719
|
+
const extraFdMaps = {};
|
|
1720
|
+
if (extraFields) {
|
|
1721
|
+
extraFields.forEach(field => {
|
|
1722
|
+
extraFdMaps[field] = 1;
|
|
1723
|
+
});
|
|
1724
|
+
}
|
|
1678
1725
|
let isCustomCol = false;
|
|
1679
1726
|
let customCols = [];
|
|
1680
1727
|
if (columns && columns.length) {
|
|
1681
1728
|
isCustomCol = true;
|
|
1682
|
-
customCols = columns
|
|
1729
|
+
customCols = _xeUtils.default.searchTree(columns, () => true, {
|
|
1730
|
+
children: 'children',
|
|
1731
|
+
mapChildren: 'childNodes',
|
|
1732
|
+
original: true
|
|
1733
|
+
});
|
|
1683
1734
|
} else {
|
|
1684
1735
|
customCols = _xeUtils.default.searchTree(collectColumn, column => {
|
|
1685
1736
|
const isColGroup = column.children && column.children.length > 0;
|
|
1686
1737
|
let isChecked = false;
|
|
1738
|
+
const isExtraChecked = extraFdMaps[column.field];
|
|
1687
1739
|
if (columns && columns.length) {
|
|
1688
1740
|
isChecked = handleFilterColumns(opts, column, columns);
|
|
1689
1741
|
} else if (excludeFields || includeFields) {
|
|
1690
|
-
isChecked = handleFilterFields(opts, column, includeFields,
|
|
1742
|
+
isChecked = handleFilterFields(opts, column, includeFields, includeFdMaps, excludeFdMaps, extraFdMaps);
|
|
1691
1743
|
} else {
|
|
1692
|
-
|
|
1744
|
+
if (isExtraChecked) {
|
|
1745
|
+
isChecked = true;
|
|
1746
|
+
} else {
|
|
1747
|
+
isChecked = column.visible && (isColGroup || defaultFilterExportColumn(column));
|
|
1748
|
+
}
|
|
1693
1749
|
}
|
|
1694
1750
|
return isChecked;
|
|
1695
1751
|
}, {
|
|
@@ -1707,20 +1763,7 @@ var _default = exports.default = {
|
|
|
1707
1763
|
if (!isCustomCol && !columnFilterMethod) {
|
|
1708
1764
|
columnFilterMethod = ({
|
|
1709
1765
|
column
|
|
1710
|
-
}) =>
|
|
1711
|
-
if (excludeFields) {
|
|
1712
|
-
if (_xeUtils.default.includes(excludeFields, column.field)) {
|
|
1713
|
-
return false;
|
|
1714
|
-
}
|
|
1715
|
-
}
|
|
1716
|
-
if (includeFields) {
|
|
1717
|
-
if (_xeUtils.default.includes(includeFields, column.field)) {
|
|
1718
|
-
return true;
|
|
1719
|
-
}
|
|
1720
|
-
return false;
|
|
1721
|
-
}
|
|
1722
|
-
return original ? !!column.field : defaultFilterExportColumn(column);
|
|
1723
|
-
};
|
|
1766
|
+
}) => handleFilterFields(handleOptions, column, includeFields, includeFdMaps, excludeFdMaps, extraFdMaps);
|
|
1724
1767
|
handleOptions.columnFilterMethod = columnFilterMethod;
|
|
1725
1768
|
}
|
|
1726
1769
|
if (customCols) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function getSeq(e,t,l,o,r,a){var i=e.computeSeqOpts.seqMethod||r.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),_rowIndex:e.getVTRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),_columnIndex:e.getVTColumnIndex(r),$columnIndex:a}):t}function defaultFilterExportColumn(e){return!!e.field||-1===["seq","checkbox","radio"].indexOf(e.type||"")}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(F,M,m,e){let{isTreeAllExpanded:i,isRowGroupAllExpanded:d,mode:k}=M;var t=F.treeConfig,l=F.isRowGroupStatus;let U=F.fullColumnFieldData,I=F.computeRadioOpts,j=F.computeCheckboxOpts;var o=F.computeTreeOpts;let L=F.computeColumnOpts;var r=F.computeAggregateOpts;htmlCellElem=htmlCellElem||document.createElement("div");let g=(0,_util.createHandleGetRowId)(F).handleGetRowId;if(l){let{mode:_,showTotal:$,totalMethod:y,countFields:C,contentMethod:w,formatValuesMethod:E,mapChildrenField:T}=r,i=[],n={},s={};return _xeUtils.default.eachTree(e,(e,f,t,b,l,o)=>{let v=e._row||e;var r=g(v);if(!s[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(d||!e||n[l]&&F.isRowExpandByRow(e)){var a=T&&v[T]&&v[T].length;let x={_row:v,_level:o.length-1,_hasChild:a,_expand:a&&F.isRowExpandByRow(v)};m.forEach((e,t)=>{var{field:l,editRender:o,cellRender:r,aggFunc:a,rowGroupNode:i}=e;let n="";var s,d,c,u,p,h,o=o||r;let m=e.exportMethod||L.exportMethod;if(m=(m=!m&&o&&o.name&&(r=renderer.get(o.name))?r.tableExportMethod||r.exportMethod:m)||L.exportMethod)n=m({$table:F,row:v,column:e,options:M});else switch(e.type){case"seq":var g=b.map((e,t)=>t%2==0?Number(e)+1:".").join("");n="all"===k?g:getSeq(F,g,v,f,e,t);break;case"checkbox":n=toBooleanValue(F.isCheckedByCheckboxRow(v)),x._checkboxLabel=j.labelField?_xeUtils.default.get(v,j.labelField):"",x._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:v});break;case"radio":n=toBooleanValue(F.isCheckedByRadioRow(v)),x._radioLabel=I.labelField?_xeUtils.default.get(v,I.labelField):"",x._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:v});break;default:l&&v.isAggregate?(s=(s=(g=v).aggData)?s[l]:null,u=g.groupField,d=g.groupContent,h=T&&g[T]||[],c=g.childCount,p=U[u]||{},u={$table:F,groupField:u,groupColumn:p?p.column:null,column:e,groupValue:d,childList:h,childCount:c,aggValue:null,children:h,totalValue:c},("column"===_?l===g.groupField:i)?(n=d,w&&(n=""+w(u)),$&&(n=getI18n("vxe.table.rowGroupContentTotal",[n,y?y(u):c,c]))):F.getPivotTableAggregateCellAggValue?(p={$table:F,row:v,column:e},n=F.getPivotTableAggregateCellAggValue(p)):(!0===a||C&&C.includes(l))&&(n=s?s.value:c,u.aggValue=n,E)&&(n=E(u))):M.original?n=(0,_util.getCellValue)(v,e):(n=F.getCellLabel(v,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(h=F.getCellElement(v,e))&&!(0,_dom.hasClass)(h,"is--progress")&&(n=h.innerText.trim()))}x[e.id]=toStringValue(n)}),s[r]=!0,l&&(n[l]=!0),i.push(Object.assign(x,v))}}},{children:T}),i}if(t){let c=o.children||o.childrenField,u=[],p={},h={};return _xeUtils.default.eachTree(e,(e,n,t,s,l,o)=>{let d=e._row||e;var r=g(d);if(!h[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(i||!e||p[l]&&F.isTreeExpandByRow(e)){var a=d[c]&&d[c].length;let i={_row:d,_level:o.length-1,_hasChild:a,_expand:a&&F.isTreeExpandByRow(d)};m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)||L.exportMethod)l=r({$table:F,row:d,column:e,options:M});else switch(e.type){case"seq":var a=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===k?a:getSeq(F,a,d,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(d)),i._checkboxLabel=j.labelField?_xeUtils.default.get(d,j.labelField):"",i._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:d});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(d)),i._radioLabel=I.labelField?_xeUtils.default.get(d,I.labelField):"",i._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:d});break;default:M.original?l=(0,_util.getCellValue)(d,e):(l=F.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(d,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}i[e.id]=toStringValue(l)}),h[r]=!0,l&&(p[l]=!0),u.push(Object.assign(i,d))}}},{children:c}),u}return e.map((i,n)=>{let s={_row:i};return m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:F,row:i,column:e,options:M});else switch(e.type){case"seq":var a=n+1;l="all"===k?a:getSeq(F,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(i)),s._checkboxLabel=j.labelField?_xeUtils.default.get(i,j.labelField):"",s._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:i});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(i)),s._radioLabel=I.labelField?_xeUtils.default.get(i,I.labelField):"",s._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:i});break;default:M.original?l=(0,_util.getCellValue)(i,e):(l=F.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(l,e){let o=l.$xeGrid,r=l.$xeGantt,{columns:t,dataFilterMethod:a}=e,i=e.data;return a&&(i=i.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,i)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.isTitle?e.getHeaderCellLabel(l):l.field)||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,a=o.editRender||o.cellRender;let i=o.footerExportMethod;return(i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||r.footerExportMethod)?(a=e.getVTColumnIndex(o),i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:o,options:t})):e.getFooterCellLabel(l,o)}function getFooterData(l,e,t){let o=l.$xeGrid,r=l.$xeGantt,a=e.footerFilterMethod;return a?t.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function toCsv(l,o,e,t){var r=l;let a=csvBOM;return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),a}function toTxt(l,o,e,t){var r=l;let a="";return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function getCustomColKey(e){return`${e.field||""}:`+(e.type||"")}function toHtml(c,u,e,t){var l=c;let{id:d,border:o,treeConfig:r,headerAlign:a,align:p,footerAlign:h,showOverflow:m,showHeaderOverflow:i}=c,{isAllSelected:n,isIndeterminate:s}=l,{mergeBodyCellMaps:g,mergeFooterCellMaps:x}=c,f=c.computeTreeOpts,{print:b,widthMode:v,isHeader:_,isFooter:$,isColgroup:y,isMerge:C,colgroups:w,_columnConfs:E,original:T}=u,F="auto"===v,M="scale"===v,k=!F&&!M,U={},I=(E&&E.forEach(e=>{(0,_util.isColumnInfo)(e)||(e.field||e.type)&&e.width&&(U[getCustomColKey(e)]=e.width)}),{}),j={};if(b){let r=0;e.forEach(e=>{r+=e.renderWidth}),w&&w.forEach(e=>{e.forEach(o=>{if(o.childNodes&&o.childNodes.length){let t=0,l=0;_xeUtils.default.eachTree([o],e=>{e.childNodes&&o.childNodes.length||l++;e=j[e.id];t+=e||0},{children:"childNodes"});var e=t-l;I[o.id]=e,j[o.id]=_xeUtils.default.floor(e/r*180,2)}})}),e.forEach(e=>{var t=e.renderWidth;e.width&&(I[e.id]=t),j[e.id]=_xeUtils.default.floor(t/r*180,2)})}let L=e=>{var t=getCustomColKey(e),t=U[t];return t?"width:"+(0,_dom.toCssUnit)(t):F||k?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""},V="check-all",O=[`<table class="${["vxe-table","border--"+toTableBorder(o),b?"is--print":"",F?"is--auto-width":"",M?"is--scale-width":"",k?"is--default-width":"",_?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>{return`<col style="${e=e,t=getCustomColKey(e),t=U[t],t?"width:"+(0,_dom.toCssUnit)(t):F?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""}">`;var t}).join("")}</colgroup>`];_&&(O.push("<thead>"),y&&!T?w.forEach(e=>{O.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}"><div style="${L(e)}"><input type="checkbox" class="${V}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):O.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div style="${L(e)}"><input type="checkbox" class="${V}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),O.push("</thead>")),t.length&&(O.push("<tbody>"),r?t.forEach(r=>{O.push("<tr>"+e.map(t=>{var e=t.align||p,l=hasEllipsis(c,t,"showOverflow",m)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{O.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||p,o=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],t=s[t];let r=1,a=1;if(C){var i=c.getVTRowIndex(s._row),n=c.getVTColumnIndex(e),i=g[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return l&&o.push("col--"+l),"radio"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="radio" name="radio_${d}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}" title="${t}"><div style="${L(e)}">${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),O.push("</tbody>")),$&&(t=l.footerTableData,(l=getFooterData(c,u,t)).length)&&(O.push("<tfoot>"),l.forEach((s,d)=>{O.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||h||p,l=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],o=getFooterCellValue(c,u,s,e);let r=1,a=1;if(C){var i=d,n=c.getVTColumnIndex(e),i=x[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return t&&l.push("col--"+t),`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div style="${L(e)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),O.push("</tfoot>"));t=!n&&s?`<script>(function(){var a=document.querySelector(".${V}");if(a){a.indeterminate=true}})()</script>`:"";return O.push("</table>",t),F?O.join(""):(0,_util2.createHtmlPage)(u,O.join(""))}function toXML(l,o,e,t){var r=l;let a=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{a+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function downloadFile(e,t,l){var{filename:o,type:r,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,a=l.$xeGantt,{remote:i,columns:n,colgroups:s,exportMethod:d,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r,$gantt:a};t(d?d(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:n,colgroups:s,datas:e},()=>downloadFile(l,o,getContent(l,o,n,e))))}}).then(e=>(clearColumnConvert(n),o.print||t&&t({status:!0,options:o,$table:l,$grid:r,$gantt:a}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(n),o.print||t&&t({status:!1,options:o,$table:l,$grid:r,$gantt:a});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,a){e=e.split(enterSymbol);let i=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),i.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:i}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(o,e,l){let{tableFullColumn:t,_importResolve:r,_importReject:a}=o,i={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=o.getHeaderCellLabel(e);t&&(n[t]=e),l&&(s[l]=e)});var d={fieldMaps:n,titleMaps:s};switch(l.type){case"csv":i=parseCsv(d,e);break;case"txt":i=parseTxt(d,e);break;case"html":i=parseHTML(d,e);break;case"xml":i=parseXML(d,e)}let{fields:c,rows:u}=i;c.some(e=>n[e]||s[e])?o.createData(u).then(e=>{let t;return t="insert"===l.mode||"insertBottom"===l.mode?o.insertAt(e,-1):"insertTop"===l.mode?o.insert(e):o.reloadData(e),!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(a,i,n){let s=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(i);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),a._importResolve=null,a._importReject=null},o=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{errLog("vxe.error.notType",[c]),o({status:!1})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else errLog("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:n,$table:a})}).catch(e=>(t&&t({status:!1,options:n,$table:a}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o){return(!o||!_xeUtils.default.includes(o,t.field))&&(l?!!_xeUtils.default.includes(l,t.field):e.original?!!t.field:defaultFilterExportColumn(t))}function handleExportAndPrint(n,e,t){var l=n.$xeGrid,o=n.$xeGantt,r=l||o,{treeConfig:a,showHeader:i,showFooter:s}=n,{initStore:d,isGroup:c,rowGroupList:u,footerTableData:p,exportStore:h,exportParams:m}=n,{collectColumn:g,mergeBodyList:x,mergeFooterList:f}=n,b=n.computeExportOpts,a=!!a,u=0<u.length,v=n.computeCustomOpts,_=n.getCheckboxRecords(),r=r?r.computeProxyOpts:{},p=!!p.length,x=!(!x.length&&!f.length);let $=Object.assign({message:!0,isHeader:i,isTitle:i,isFooter:s,isColgroup:c,isMerge:x,useStyle:!0,current:"current",modes:(r.ajax&&r.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);_xeUtils.default.isBoolean($.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),$.isTreeAllExpanded=$.isAllExpand);f=$.types||_xeUtils.default.keys(b._typeMaps),i=$.modes||[];let y=v.checkMethod;s=g.slice(0);let{columns:C,excludeFields:w,includeFields:E}=$;r=f.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});_xeUtils.default.eachTree(s,(e,t,l,o,r)=>{var a=e.children&&0<e.children.length;let i=!1;i=C&&C.length?handleFilterColumns($,e,C):w||E?handleFilterFields($,e,E,w):e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=r&&r.disabled||!!y&&!y({$table:n,column:e})}),h.columns=s,h.typeList=r,h.modeList=e,h.hasFooter=p,h.hasMerge=x,h.hasTree=a,h.hasRowGroup=u,h.isPrint=!!t,h.hasColgroup=c,h.visible=!0,Object.assign(m,{mode:_.length?"selected":"current"},$);let{filename:T,sheetName:F,mode:M,type:k}=m;return T&&(_xeUtils.default.isFunction(T)?m.filename=T({options:$,$table:n,$grid:l,$gantt:o}):m.filename=""+T),F&&(_xeUtils.default.isFunction(F)?m.sheetName=F({options:$,$table:n,$grid:l,$gantt:o}):m.sheetName=""+F),e.some(e=>e.value===M)||(m.mode=e[0].value),r.some(e=>e.value===k)||(m.type=r[0].value),m.widthMode||(m.widthMode=""),d.export=!0,n.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let s=this;var t=s,l=s,o=s;let d=s.$xeGrid,c=s.$xeGantt;var u=d||c,{treeConfig:t,showHeader:p,showFooter:h}=t,l=l.isGroup;let{tableFullColumn:a,afterFullData:r,afterTreeFullData:i,collectColumn:n,mergeBodyList:m,mergeFooterList:g}=o;var o=s.computeExportOpts,x=s.computeTreeOpts;let f=u?u.computeProxyOpts:{};var b=!(!m.length&&!g.length);let v=Object.assign({message:!0,isHeader:p,isTitle:p,isFooter:h,isColgroup:l,isMerge:b,useStyle:!0,current:"current",modes:(f.ajax&&f.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},o,e),{filename:_,sheetName:$,type:y,mode:C,columns:w,original:E,columnFilterMethod:T,beforeExportMethod:F,includeFields:M,excludeFields:k}=(_xeUtils.default.isBoolean(v.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),v.isTreeAllExpanded=v.isAllExpand),v),U=[],I=s.getCheckboxRecords(),j=(C=C||(I.length?"selected":"current"),!1),L=[],V=(L=w&&w.length?(j=!0,w):_xeUtils.default.searchTree(n,e=>{var t=e.children&&0<e.children.length;let l=!1;return l=w&&w.length?handleFilterColumns(v,e,w):k||M?handleFilterFields(v,e,M,k):e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0}),Object.assign({},v,{filename:"",sheetName:"",_columnConfs:w})),O=(j||T||(T=({column:e})=>(!k||!_xeUtils.default.includes(k,e.field))&&(M?!!_xeUtils.default.includes(M,e.field):E?!!e.field:defaultFilterExportColumn(e)),V.columnFilterMethod=T),U=L?(V._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(L,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=s.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=s.getColumnById(r):l&&t?o=a.find(e=>e.field===l&&e.type===t):l?o=s.getColumnByField(l):t&&(o=a.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!T||T({$table:s,$grid:d,$gantt:c,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?n:a,(e,t)=>e.visible&&(!T||T({$table:s,$grid:d,$gantt:c,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(U,e=>{e.children&&e.children.length||O.push(e)},{children:"childNodes"}),V.columns=O,V.colgroups=convertToRows(U),_&&(_xeUtils.default.isFunction(_)?V.filename=_({options:v,$table:s,$grid:d,$gantt:c}):V.filename=""+_),V.filename||(V.filename=getI18n(V.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),$&&(_xeUtils.default.isFunction($)?V.sheetName=$({options:v,$table:s,$grid:d,$gantt:c}):V.sheetName=""+$),V.sheetName||(V.sheetName=document.title||""),!V.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(o._typeMaps),y))return errLog("vxe.error.notType",[y]),["xlsx","pdf"].includes(y)&&warnLog("vxe.error.reqPlugin",[3,"plugin-export-xlsx"]),Promise.reject({status:!1});if(V.print||F&&F({options:V,$table:s,$grid:d,$gantt:c}),V.data)V._isCustomData=!0;else if(V.data=[],"selected"===C)-1<["html","pdf"].indexOf(y)&&t?V.data=_xeUtils.default.searchTree(s.getTableData().fullData,e=>-1<s.findRowIndexOf(I,e),Object.assign({},x,{data:"_row"})):V.data=I;else if("all"===C){if(u||errLog("vxe.error.errProp",["all","mode=current,selected"]),u&&!V.remote){p=u.reactData;let e=u.computeProxyOpts;h=p.sortData;let{beforeQueryAll:t,afterQueryAll:r,ajax:l={}}=e,a=e.response||e.props||{};b=l.queryAll;let i=l.queryAllSuccess,n=l.queryAllError;if(b||errLog("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),b){let o={$table:s,$grid:d,$gantt:c,sort:h.length?h[0]:{},sorts:h,filters:p.filterData,form:p.formData,options:V};return Promise.resolve((t||b)(o)).then(e=>{var t=a.list;let l=[];return t?l=_xeUtils.default.isFunction(t)?t({data:e,$table:s,$grid:d,$gantt:c}):_xeUtils.default.isArray(e)?e:_xeUtils.default.get(e,t):_xeUtils.default.isArray(e)&&(l=e),V.data=l,r&&r(o),i&&i(Object.assign(Object.assign({},o),{response:e})),handleExport(s,V)}).catch(e=>{n&&n(Object.assign(Object.assign({},o),{response:e}))})}}}else"current"===C&&(V.data=t?i:r);return handleExport(s,V)},_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 o=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:r,afterImportMethod:a}=o;return r&&r({options:o,$table:this}),_ui.VxeUI.readFile(o).catch(e=>(a&&a({status:!1,options:o,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,o)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this,o=l.$xeGrid,r=l.$xeGantt;var t=l.computePrintOpts;let a=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});t=a.sheetName;let i="",n=(i=(i=t?_xeUtils.default.isFunction(t)?t({options:a,$table:l,$grid:o,$gantt:r}):""+t:i)||document.title||"",a.beforePrintMethod),s=a.html||a.content;return new Promise((e,t)=>{_ui.VxeUI.print?s?e(_ui.VxeUI.print({title:i,html:s,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0})):e(l.exportData(a).then(({content:e})=>_ui.VxeUI.print({title:i,html:e,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0}))):t({status:!1})})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var{treeConfig:t,importConfig:l}=this;let{initStore:o,importStore:r,importParams:a}=this;var i=this.computeImportOpts,i=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(i._typeMaps),modes:["insertTop","covering"]},i,e),e=i.types||[],n=i.modes||[];!t?(l||errLog("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=n.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,i),l.some(e=>e.value===a.mode)||(a.mode=l[0].value),o.import=!0):i.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.computeExportOpts,t=Object.assign({message:!0,types:_xeUtils.default.keys(t._typeMaps)},t,e);return this.exportConfig||errLog("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,t)},_closePrint:handleCloseExport,_openPrint(e){var t=this.computePrintOpts,t=Object.assign({message:!0},t,e);return this.printConfig||errLog("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,t,!0)}}};
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getI18n,renderer}=_ui.VxeUI,htmlCellElem,csvBOM="\ufeff",enterSymbol="\r\n";function getSeq(e,t,l,o,r,a){var i=e.computeSeqOpts.seqMethod||r.seqMethod;return i?i({$table:e,row:l,rowIndex:e.getRowIndex(l),_rowIndex:e.getVTRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),_columnIndex:e.getVTColumnIndex(r),$columnIndex:a}):t}function defaultFilterExportColumn(e){return!!e.field||-1===["seq","checkbox","radio"].indexOf(e.type||"")}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(F,M,m,e){let{isTreeAllExpanded:i,isRowGroupAllExpanded:d,mode:k}=M;var t=F.treeConfig,l=F.isRowGroupStatus;let U=F.fullColumnFieldData,I=F.computeRadioOpts,j=F.computeCheckboxOpts;var o=F.computeTreeOpts;let L=F.computeColumnOpts;var r=F.computeAggregateOpts;htmlCellElem=htmlCellElem||document.createElement("div");let g=(0,_util.createHandleGetRowId)(F).handleGetRowId;if(l){let{mode:_,showTotal:$,totalMethod:y,countFields:C,contentMethod:w,formatValuesMethod:E,mapChildrenField:T}=r,i=[],n={},s={};return _xeUtils.default.eachTree(e,(e,f,t,b,l,o)=>{let v=e._row||e;var r=g(v);if(!s[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(d||!e||n[l]&&F.isRowExpandByRow(e)){var a=T&&v[T]&&v[T].length;let x={_row:v,_level:o.length-1,_hasChild:a,_expand:a&&F.isRowExpandByRow(v)};m.forEach((e,t)=>{var{field:l,editRender:o,cellRender:r,aggFunc:a,rowGroupNode:i}=e;let n="";var s,d,c,u,p,h,o=o||r;let m=e.exportMethod||L.exportMethod;if(m=(m=!m&&o&&o.name&&(r=renderer.get(o.name))?r.tableExportMethod||r.exportMethod:m)||L.exportMethod)n=m({$table:F,row:v,column:e,options:M});else switch(e.type){case"seq":var g=b.map((e,t)=>t%2==0?Number(e)+1:".").join("");n="all"===k?g:getSeq(F,g,v,f,e,t);break;case"checkbox":n=toBooleanValue(F.isCheckedByCheckboxRow(v)),x._checkboxLabel=j.labelField?_xeUtils.default.get(v,j.labelField):"",x._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:v});break;case"radio":n=toBooleanValue(F.isCheckedByRadioRow(v)),x._radioLabel=I.labelField?_xeUtils.default.get(v,I.labelField):"",x._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:v});break;default:l&&v.isAggregate?(s=(s=(g=v).aggData)?s[l]:null,u=g.groupField,d=g.groupContent,h=T&&g[T]||[],c=g.childCount,p=U[u]||{},u={$table:F,groupField:u,groupColumn:p?p.column:null,column:e,groupValue:d,childList:h,childCount:c,aggValue:null,children:h,totalValue:c},("column"===_?l===g.groupField:i)?(n=d,w&&(n=""+w(u)),$&&(n=getI18n("vxe.table.rowGroupContentTotal",[n,y?y(u):c,c]))):F.getPivotTableAggregateCellAggValue?(p={$table:F,row:v,column:e},n=F.getPivotTableAggregateCellAggValue(p)):(!0===a||C&&C.includes(l))&&(n=s?s.value:c,u.aggValue=n,E)&&(n=E(u))):M.original?n=(0,_util.getCellValue)(v,e):(n=F.getCellLabel(v,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(h=F.getCellElement(v,e))&&!(0,_dom.hasClass)(h,"is--progress")&&(n=h.innerText.trim()))}x[e.id]=toStringValue(n)}),s[r]=!0,l&&(n[l]=!0),i.push(Object.assign(x,v))}}},{children:T}),i}if(t){let c=o.children||o.childrenField,u=[],p={},h={};return _xeUtils.default.eachTree(e,(e,n,t,s,l,o)=>{let d=e._row||e;var r=g(d);if(!h[r]){e=l&&l._row?l._row:l,l=e?g(e):"";if(i||!e||p[l]&&F.isTreeExpandByRow(e)){var a=d[c]&&d[c].length;let i={_row:d,_level:o.length-1,_hasChild:a,_expand:a&&F.isTreeExpandByRow(d)};m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)||L.exportMethod)l=r({$table:F,row:d,column:e,options:M});else switch(e.type){case"seq":var a=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===k?a:getSeq(F,a,d,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(d)),i._checkboxLabel=j.labelField?_xeUtils.default.get(d,j.labelField):"",i._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:d});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(d)),i._radioLabel=I.labelField?_xeUtils.default.get(d,I.labelField):"",i._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:d});break;default:M.original?l=(0,_util.getCellValue)(d,e):(l=F.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(d,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}i[e.id]=toStringValue(l)}),h[r]=!0,l&&(p[l]=!0),u.push(Object.assign(i,d))}}},{children:c}),u}return e.map((i,n)=>{let s={_row:i};return m.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||L.exportMethod;if(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:F,row:i,column:e,options:M});else switch(e.type){case"seq":var a=n+1;l="all"===k?a:getSeq(F,a,i,n,e,t);break;case"checkbox":l=toBooleanValue(F.isCheckedByCheckboxRow(i)),s._checkboxLabel=j.labelField?_xeUtils.default.get(i,j.labelField):"",s._checkboxDisabled=j.checkMethod&&!j.checkMethod({$table:F,row:i});break;case"radio":l=toBooleanValue(F.isCheckedByRadioRow(i)),s._radioLabel=I.labelField?_xeUtils.default.get(i,I.labelField):"",s._radioDisabled=I.checkMethod&&!I.checkMethod({$table:F,row:i});break;default:M.original?l=(0,_util.getCellValue)(i,e):(l=F.getCellLabel(i,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(a=F.getCellElement(i,e))&&!(0,_dom.hasClass)(a,"is--progress")&&(l=a.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(l,e){let o=l.$xeGrid,r=l.$xeGantt,{columns:t,dataFilterMethod:a}=e,i=e.data;return a&&(i=i.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,row:e,$rowIndex:t}))),getBodyLabelData(l,e,t,i)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.isTitle?e.getHeaderCellLabel(l):l.field)||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,a=o.editRender||o.cellRender;let i=o.footerExportMethod;return(i=(i=!i&&a&&a.name&&(a=renderer.get(a.name))?a.tableFooterExportMethod||a.footerExportMethod||a.footerCellExportMethod:i)||r.footerExportMethod)?(a=e.getVTColumnIndex(o),i({$table:e,items:l,itemIndex:a,row:l,_columnIndex:a,column:o,options:t})):e.getFooterCellLabel(l,o)}function getFooterData(l,e,t){let o=l.$xeGrid,r=l.$xeGantt,a=e.footerFilterMethod;return a?t.filter((e,t)=>a({$table:l,$grid:o,$gantt:r,items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:_xeUtils.default.eqNull(e)?"":e}function toCsv(l,o,e,t){var r=l;let a=csvBOM;return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),a}function toTxt(l,o,e,t){var r=l;let a="";return o.isHeader&&(a+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{a+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),a}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function getCustomColKey(e){return`${e.field||""}:`+(e.type||"")}function toHtml(c,u,e,t){var l=c;let{id:d,border:o,treeConfig:r,headerAlign:a,align:p,footerAlign:h,showOverflow:m,showHeaderOverflow:i}=c,{isAllSelected:n,isIndeterminate:s}=l,{mergeBodyCellMaps:g,mergeFooterCellMaps:x}=c,f=c.computeTreeOpts,{print:b,widthMode:v,isHeader:_,isFooter:$,isColgroup:y,isMerge:C,colgroups:w,_columnConfs:E,original:T}=u,F="auto"===v,M="scale"===v,k=!F&&!M,U={},I=(E&&E.forEach(e=>{(0,_util.isColumnInfo)(e)||(e.field||e.type)&&e.width&&(U[getCustomColKey(e)]=e.width)}),{}),j={};if(b){let r=0;e.forEach(e=>{r+=e.renderWidth}),w&&w.forEach(e=>{e.forEach(o=>{if(o.childNodes&&o.childNodes.length){let t=0,l=0;_xeUtils.default.eachTree([o],e=>{e.childNodes&&o.childNodes.length||l++;e=j[e.id];t+=e||0},{children:"childNodes"});var e=t-l;I[o.id]=e,j[o.id]=_xeUtils.default.floor(e/r*180,2)}})}),e.forEach(e=>{var t=e.renderWidth;e.width&&(I[e.id]=t),j[e.id]=_xeUtils.default.floor(t/r*180,2)})}let L=e=>{var t=getCustomColKey(e),t=U[t];return t?"width:"+(0,_dom.toCssUnit)(t):F||k?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""},V="check-all",O=[`<table class="${["vxe-table","border--"+toTableBorder(o),b?"is--print":"",F?"is--auto-width":"",M?"is--scale-width":"",k?"is--default-width":"",_?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>{return`<col style="${e=e,t=getCustomColKey(e),t=U[t],t?"width:"+(0,_dom.toCssUnit)(t):F?"":M?j[e.id]?"width:"+j[e.id]+"mm":"":I[e.id]?"width:"+(0,_dom.toCssUnit)(I[e.id]):""}">`;var t}).join("")}</colgroup>`];_&&(O.push("<thead>"),y&&!T?w.forEach(e=>{O.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}"><div style="${L(e)}"><input type="checkbox" class="${V}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${e._colSpan}" rowspan="${e._rowSpan}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):O.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||a||p,l=hasEllipsis(c,e,"showHeaderOverflow",i)?["col--ellipsis"]:[],o=getHeaderTitle(c,u,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div style="${L(e)}"><input type="checkbox" class="${V}" ${n?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div style="${L(e)}"><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),O.push("</thead>")),t.length&&(O.push("<tbody>"),r?t.forEach(r=>{O.push("<tr>"+e.map(t=>{var e=t.align||p,l=hasEllipsis(c,t,"showOverflow",m)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}"><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*f.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="radio" name="radio_${d}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div style="${L(t)}"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div style="${L(t)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{O.push("<tr>"+e.map(e=>{var t=e.id,l=e.align||p,o=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],t=s[t];let r=1,a=1;if(C){var i=c.getVTRowIndex(s._row),n=c.getVTColumnIndex(e),i=g[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return l&&o.push("col--"+l),"radio"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="radio" name="radio_${d}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}"><div style="${L(e)}"><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(t)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${o.join(" ")}" rowspan="${r}" colspan="${a}" title="${t}"><div style="${L(e)}">${(0,_utils.formatText)(t,!0)}</div></td>`}).join("")+"</tr>")}),O.push("</tbody>")),$&&(t=l.footerTableData,(l=getFooterData(c,u,t)).length)&&(O.push("<tfoot>"),l.forEach((s,d)=>{O.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||h||p,l=hasEllipsis(c,e,"showOverflow",m)?["col--ellipsis"]:[],o=getFooterCellValue(c,u,s,e);let r=1,a=1;if(C){var i=d,n=c.getVTColumnIndex(e),i=x[i+":"+n];if(i){var{rowspan:n,colspan:i}=i;if(!n||!i)return"";1<n&&(r=n),1<i&&(a=i)}}return t&&l.push("col--"+t),`<td class="${l.join(" ")}" rowspan="${r}" colspan="${a}" title="${o}"><div style="${L(e)}">${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),O.push("</tfoot>"));t=!n&&s?`<script>(function(){var a=document.querySelector(".${V}");if(a){a.indeterminate=true}})()</script>`:"";return O.push("</table>",t),F?O.join(""):(0,_util2.createHtmlPage)(u,O.join(""))}function toXML(l,o,e,t){var r=l;let a=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{a+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(l,o,t).forEach(t=>{a+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),a+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function downloadFile(e,t,l){var{filename:o,type:r,download:a}=t;if(!a)return a=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:a});_ui.VxeUI.saveFile&&_ui.VxeUI.saveFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"})})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,a=l.$xeGantt,{remote:i,columns:n,colgroups:s,exportMethod:d,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r,$gantt:a};t(d?d(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:n,colgroups:s,datas:e},()=>downloadFile(l,o,getContent(l,o,n,e))))}}).then(e=>(clearColumnConvert(n),o.print||t&&t({status:!0,options:o,$table:l,$grid:r,$gantt:a}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(n),o.print||t&&t({status:!1,options:o,$table:l,$grid:r,$gantt:a});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,a){e=e.split(enterSymbol);let i=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(a);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),i.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:i}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(o,e,l){let{tableFullColumn:t,_importResolve:r,_importReject:a}=o,i={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=o.getHeaderCellLabel(e);t&&(n[t]=e),l&&(s[l]=e)});var d={fieldMaps:n,titleMaps:s};switch(l.type){case"csv":i=parseCsv(d,e);break;case"txt":i=parseTxt(d,e);break;case"html":i=parseHTML(d,e);break;case"xml":i=parseXML(d,e)}let{fields:c,rows:u}=i;c.some(e=>n[e]||s[e])?o.createData(u).then(e=>{let t;return t="insert"===l.mode||"insertBottom"===l.mode?o.insertAt(e,-1):"insertTop"===l.mode?o.insert(e):o.reloadData(e),!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==l.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),a)&&a({status:!1})}function handleFileImport(a,i,n){let s=a;var e=a.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(i);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),a._importResolve=null,a._importReject=null},o=e=>{l(e),a._importResolve=null,a._importReject=null};if(a._importResolve=e,a._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:i,options:t,$table:a})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,a.preventEvent(null,"event.import",{file:i,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{errLog("vxe.error.notType",[c]),o({status:!1})},e.onload=e=>{handleImport(a,e.target.result,t)},e.readAsText(i,t.encoding||"UTF-8")}))}else errLog("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:n,$table:a})}).catch(e=>(t&&t({status:!1,options:n,$table:a}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||errLog("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o,r,a){var i=t.field;return!r[i]&&(l?!!o[i]:!!a[i]||(e.original?!!i:defaultFilterExportColumn(t)))}function handleExportAndPrint(s,e,t){var l=s.$xeGrid,o=s.$xeGantt,r=l||o,{treeConfig:a,showHeader:i,showFooter:n}=s,{initStore:d,isGroup:c,rowGroupList:u,footerTableData:p,exportStore:h,exportParams:m}=s,{collectColumn:g,mergeBodyList:x,mergeFooterList:f}=s,b=s.computeExportOpts,a=!!a,u=0<u.length,v=s.computeCustomOpts,_=s.getCheckboxRecords(),r=r?r.computeProxyOpts:{},p=!!p.length,x=!(!x.length&&!f.length);let $=Object.assign({message:!0,isHeader:i,isTitle:i,isFooter:n,isColgroup:c,isMerge:x,useStyle:!0,current:"current",modes:(r.ajax&&r.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},e);_xeUtils.default.isBoolean($.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),$.isTreeAllExpanded=$.isAllExpand);f=$.types||_xeUtils.default.keys(b._typeMaps),i=$.modes||[];let y=v.checkMethod;n=g.slice(0);let{columns:C,excludeFields:w,includeFields:E,extraFields:T}=$;r=f.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),e=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});let F={},M=(w&&w.length&&w.forEach(e=>{F[e]=1}),{}),k=(E&&E.length&&E.forEach(e=>{M[e]=1}),{}),{filename:U,sheetName:I,mode:j,type:L}=(T&&T.forEach(e=>{k[e]=1}),_xeUtils.default.eachTree(n,(e,t,l,o,r)=>{var a=e.children&&0<e.children.length;let i=!1;var n=k[e.field];i=C&&C.length?handleFilterColumns($,e,C):w||E?handleFilterFields($,e,E,M,F,k):!!n||e.visible&&(a||defaultFilterExportColumn(e)),e.checked=i,e.halfChecked=!1,e.disabled=r&&r.disabled||!!y&&!y({$table:s,column:e})}),h.columns=n,h.typeList=r,h.modeList=e,h.hasFooter=p,h.hasMerge=x,h.hasTree=a,h.hasRowGroup=u,h.isPrint=!!t,h.hasColgroup=c,h.visible=!0,Object.assign(m,{mode:_.length?"selected":"current"},$),m);return U&&(_xeUtils.default.isFunction(U)?m.filename=U({options:$,$table:s,$grid:l,$gantt:o}):m.filename=""+U),I&&(_xeUtils.default.isFunction(I)?m.sheetName=I({options:$,$table:s,$grid:l,$gantt:o}):m.sheetName=""+I),e.some(e=>e.value===j)||(m.mode=e[0].value),r.some(e=>e.value===L)||(m.type=r[0].value),m.widthMode||(m.widthMode=""),d.export=!0,s.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let s=this;var t=s,l=s,o=s;let d=s.$xeGrid,c=s.$xeGantt;var u=d||c,{treeConfig:t,showHeader:p,showFooter:h}=t,l=l.isGroup;let{tableFullColumn:a,afterFullData:r,afterTreeFullData:i,collectColumn:n,mergeBodyList:R,mergeFooterList:D}=o;var o=s.computeExportOpts,B=s.computeTreeOpts;let m=u?u.computeProxyOpts:{};var g=!(!R.length&&!D.length);let x=Object.assign({message:!0,isHeader:p,isTitle:p,isFooter:h,isColgroup:l,isMerge:g,useStyle:!0,current:"current",modes:(m.ajax&&m.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},o,e),{filename:f,sheetName:b,type:v,mode:_,columns:$,columnFilterMethod:y,beforeExportMethod:C,includeFields:w,excludeFields:E,extraFields:T}=(_xeUtils.default.isBoolean(x.isAllExpand)&&(warnLog("vxe.error.delProp",["isAllExpand","isTreeAllExpanded"]),x.isTreeAllExpanded=x.isAllExpand),x),F=[],M=s.getCheckboxRecords(),k=(_=_||(M.length?"selected":"current"),{}),U=(E&&E.length&&E.forEach(e=>{k[e]=1}),{}),I=(w&&w.length&&w.forEach(e=>{U[e]=1}),{}),j=(T&&T.forEach(e=>{I[e]=1}),!1),L=[],V=(L=$&&$.length?(j=!0,_xeUtils.default.searchTree($,()=>!0,{children:"children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(n,e=>{var t=e.children&&0<e.children.length;let l=!1;var o=I[e.field];return l=$&&$.length?handleFilterColumns(x,e,$):E||w?handleFilterFields(x,e,w,U,k,I):!!o||e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0}),Object.assign({},x,{filename:"",sheetName:"",_columnConfs:$})),O=(j||y||(y=({column:e})=>handleFilterFields(V,e,w,U,k,I),V.columnFilterMethod=y),F=L?(V._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(L,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=s.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=s.getColumnById(r):l&&t?o=a.find(e=>e.field===l&&e.type===t):l?o=s.getColumnByField(l):t&&(o=a.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!y||y({$table:s,$grid:d,$gantt:c,column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(l?n:a,(e,t)=>e.visible&&(!y||y({$table:s,$grid:d,$gantt:c,column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(F,e=>{e.children&&e.children.length||O.push(e)},{children:"childNodes"}),V.columns=O,V.colgroups=convertToRows(F),f&&(_xeUtils.default.isFunction(f)?V.filename=f({options:x,$table:s,$grid:d,$gantt:c}):V.filename=""+f),V.filename||(V.filename=getI18n(V.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),b&&(_xeUtils.default.isFunction(b)?V.sheetName=b({options:x,$table:s,$grid:d,$gantt:c}):V.sheetName=""+b),V.sheetName||(V.sheetName=document.title||""),!V.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(o._typeMaps),v))return errLog("vxe.error.notType",[v]),["xlsx","pdf"].includes(v)&&warnLog("vxe.error.reqPlugin",[3,"plugin-export-xlsx"]),Promise.reject({status:!1});if(V.print||C&&C({options:V,$table:s,$grid:d,$gantt:c}),V.data)V._isCustomData=!0;else if(V.data=[],"selected"===_)-1<["html","pdf"].indexOf(v)&&t?V.data=_xeUtils.default.searchTree(s.getTableData().fullData,e=>-1<s.findRowIndexOf(M,e),Object.assign({},B,{data:"_row"})):V.data=M;else if("all"===_){if(u||errLog("vxe.error.errProp",["all","mode=current,selected"]),u&&!V.remote){p=u.reactData;let e=u.computeProxyOpts;h=p.sortData;let{beforeQueryAll:t,afterQueryAll:r,ajax:l={}}=e,a=e.response||e.props||{};g=l.queryAll;let i=l.queryAllSuccess,n=l.queryAllError;if(g||errLog("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),g){let o={$table:s,$grid:d,$gantt:c,sort:h.length?h[0]:{},sorts:h,filters:p.filterData,form:p.formData,options:V};return Promise.resolve((t||g)(o)).then(e=>{var t=a.list;let l=[];return t?l=_xeUtils.default.isFunction(t)?t({data:e,$table:s,$grid:d,$gantt:c}):_xeUtils.default.isArray(e)?e:_xeUtils.default.get(e,t):_xeUtils.default.isArray(e)&&(l=e),V.data=l,r&&r(o),i&&i(Object.assign(Object.assign({},o),{response:e})),handleExport(s,V)}).catch(e=>{n&&n(Object.assign(Object.assign({},o),{response:e}))})}}}else"current"===_&&(V.data=t?i:r);return handleExport(s,V)},_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 o=Object.assign({types:_xeUtils.default.keys(l._typeMaps)},l,e),{beforeImportMethod:r,afterImportMethod:a}=o;return r&&r({options:o,$table:this}),_ui.VxeUI.readFile(o).catch(e=>(a&&a({status:!1,options:o,$table:t}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(t,e,o)})},_saveFile(e){return _ui.VxeUI.saveFile(e)},_readFile(e){return _ui.VxeUI.readFile(e)},_print(e){let l=this,o=l.$xeGrid,r=l.$xeGantt;var t=l.computePrintOpts;let a=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});t=a.sheetName;let i="",n=(i=(i=t?_xeUtils.default.isFunction(t)?t({options:a,$table:l,$grid:o,$gantt:r}):""+t:i)||document.title||"",a.beforePrintMethod),s=a.html||a.content;return new Promise((e,t)=>{_ui.VxeUI.print?s?e(_ui.VxeUI.print({title:i,html:s,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0})):e(l.exportData(a).then(({content:e})=>_ui.VxeUI.print({title:i,html:e,customStyle:a.style,beforeMethod:n?({html:e})=>n({html:e,content:e,options:a,$table:l,$grid:o,$gantt:r}):void 0}))):t({status:!1})})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var{treeConfig:t,importConfig:l}=this;let{initStore:o,importStore:r,importParams:a}=this;var i=this.computeImportOpts,i=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(i._typeMaps),modes:["insertTop","covering"]},i,e),e=i.types||[],n=i.modes||[];!t?(l||errLog("vxe.error.reqProp",["import-config"]),t=e.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=n.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(r,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(a,i),l.some(e=>e.value===a.mode)||(a.mode=l[0].value),o.import=!0):i.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.computeExportOpts,t=Object.assign({message:!0,types:_xeUtils.default.keys(t._typeMaps)},t,e);return this.exportConfig||errLog("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,t)},_closePrint:handleCloseExport,_openPrint(e){var t=this.computePrintOpts,t=Object.assign({message:!0},t,e);return this.printConfig||errLog("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,t,!0)}}};
|
package/lib/table/src/table.js
CHANGED
|
@@ -1378,15 +1378,16 @@ var _default = exports.default = {
|
|
|
1378
1378
|
} = editDirtyOpts;
|
|
1379
1379
|
const kpFields = [];
|
|
1380
1380
|
if (updateColFlag) {
|
|
1381
|
-
|
|
1382
|
-
return includeFields;
|
|
1383
|
-
}
|
|
1381
|
+
// 优先级 excludeFields > (includeFields || extraFields)
|
|
1384
1382
|
const excludeFdMaps = {};
|
|
1385
1383
|
if (excludeFields && excludeFields.length) {
|
|
1386
1384
|
excludeFields.forEach(field => {
|
|
1387
1385
|
excludeFdMaps[field] = 1;
|
|
1388
1386
|
});
|
|
1389
1387
|
}
|
|
1388
|
+
if (includeFields && includeFields.length) {
|
|
1389
|
+
return excludeFields && excludeFields.length ? includeFields.filter(field => !excludeFdMaps[field]) : includeFields;
|
|
1390
|
+
}
|
|
1390
1391
|
const addFdMaps = {};
|
|
1391
1392
|
if (extraFields && extraFields.length) {
|
|
1392
1393
|
extraFields.forEach(field => {
|
|
@@ -2109,25 +2110,34 @@ var _default = exports.default = {
|
|
|
2109
2110
|
}
|
|
2110
2111
|
}
|
|
2111
2112
|
if (!VxeUITooltipComponent) {
|
|
2112
|
-
|
|
2113
|
+
let useOvTip = false;
|
|
2113
2114
|
if (showOverflow === 'tooltip') {
|
|
2115
|
+
useOvTip = true;
|
|
2114
2116
|
errLog('vxe.error.errProp', ['show-overflow=' + showOverflow, 'show-overflow=false,title,ellipsis']);
|
|
2115
2117
|
}
|
|
2116
2118
|
if (showOverflow === true && tooltipOpts.mode === 'tooltip') {
|
|
2119
|
+
useOvTip = true;
|
|
2117
2120
|
errLog('vxe.error.notSupportProp', ['show-overflow=' + showOverflow, 'tooltip-config.mode=tooltip', 'tooltip-config.mode=title,ellipsis']);
|
|
2118
2121
|
}
|
|
2119
2122
|
if (showHeaderOverflow === 'tooltip') {
|
|
2123
|
+
useOvTip = true;
|
|
2120
2124
|
errLog('vxe.error.errProp', ['show-header-overflow=' + showHeaderOverflow, 'show-header-overflow=false,title,ellipsis']);
|
|
2121
2125
|
}
|
|
2122
2126
|
if (showHeaderOverflow === true && headerTooltipOpts.mode === 'tooltip') {
|
|
2127
|
+
useOvTip = true;
|
|
2123
2128
|
errLog('vxe.error.notSupportProp', ['show-header-overflow=' + showHeaderOverflow, 'header-tooltip-config.mode=tooltip', 'header-tooltip-config.mode=title,ellipsis']);
|
|
2124
2129
|
}
|
|
2125
2130
|
if (showFooterOverflow === 'tooltip') {
|
|
2131
|
+
useOvTip = true;
|
|
2126
2132
|
errLog('vxe.error.errProp', ['show-footer-overflow=' + showFooterOverflow, 'show-footer-overflow=false,title,ellipsis']);
|
|
2127
2133
|
}
|
|
2128
2134
|
if (showFooterOverflow === true && footerTooltipOpts.mode === 'tooltip') {
|
|
2135
|
+
useOvTip = true;
|
|
2129
2136
|
errLog('vxe.error.notSupportProp', ['show-footer-overflow=' + showFooterOverflow, 'footer-tooltip-config.mode=tooltip', 'footer-tooltip-config.mode=title,ellipsis']);
|
|
2130
2137
|
}
|
|
2138
|
+
if (useOvTip) {
|
|
2139
|
+
errLog('vxe.error.reqComp', ['vxe-tooltip']);
|
|
2140
|
+
}
|
|
2131
2141
|
}
|
|
2132
2142
|
if (this.autoResize) {
|
|
2133
2143
|
const resizeObserver = globalResize.create(() => {
|