vxe-table 4.5.5 → 4.5.7
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/README.en.md +1 -1
- package/README.md +1 -1
- package/README.zh-TW.md +1 -1
- package/es/export/src/hook.js +2 -1
- package/es/icon/style.css +1 -1
- package/es/keyboard/src/hook.js +2 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/src/body.js +4 -2
- package/es/table/src/table.js +35 -25
- package/es/table/style.css +2 -2
- package/es/tools/log.js +1 -1
- package/es/v-x-e-table/index.js +1 -1
- package/es/validator/src/hook.js +2 -1
- package/es/vxe-table/style.css +2 -2
- package/lib/export/src/hook.js +4 -1
- package/lib/export/src/hook.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +93 -29
- package/lib/index.umd.min.js +1 -1
- package/lib/keyboard/src/hook.js +4 -1
- package/lib/keyboard/src/hook.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/src/body.js +4 -2
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/table.js +77 -25
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +2 -2
- package/lib/table/style/style.min.css +1 -1
- package/lib/tools/log.js +1 -1
- package/lib/tools/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/validator/src/hook.js +4 -1
- package/lib/validator/src/hook.min.js +1 -1
- package/lib/vxe-table/style/style.css +2 -2
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/export/src/hook.ts +2 -1
- package/packages/keyboard/src/hook.ts +2 -1
- package/packages/table/src/body.ts +4 -2
- package/packages/table/src/table.ts +33 -23
- package/packages/validator/src/hook.ts +2 -1
- package/styles/table.scss +6 -2
- package/types/v-x-e-table/index.d.ts +1 -1
- /package/es/icon/style/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
- /package/es/icon/style/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
- /package/es/icon/style/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
- /package/es/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
- /package/es/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
- /package/es/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
- /package/lib/icon/style/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
- /package/lib/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
- /package/lib/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
- /package/lib/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
package/es/table/src/body.js
CHANGED
|
@@ -694,8 +694,10 @@ export default defineComponent({
|
|
|
694
694
|
onBeforeUnmount(function () {
|
|
695
695
|
var el = refElem.value;
|
|
696
696
|
clearTimeout(wheelTime);
|
|
697
|
-
el
|
|
698
|
-
|
|
697
|
+
if (el) {
|
|
698
|
+
el._onscroll = null;
|
|
699
|
+
el.onscroll = null;
|
|
700
|
+
}
|
|
699
701
|
});
|
|
700
702
|
onUnmounted(function () {
|
|
701
703
|
var fixedType = props.fixedType;
|
package/es/table/src/table.js
CHANGED
|
@@ -1220,7 +1220,7 @@ export default defineComponent({
|
|
|
1220
1220
|
fullDataRowIdData[rowid] = rest;
|
|
1221
1221
|
}
|
|
1222
1222
|
fullMaps[rowid] = row;
|
|
1223
|
-
}, { children: treeOpts.transform ? treeOpts.mapChildrenField :
|
|
1223
|
+
}, { children: treeOpts.transform ? treeOpts.mapChildrenField : childrenField });
|
|
1224
1224
|
}
|
|
1225
1225
|
else {
|
|
1226
1226
|
afterFullData.forEach(function (row, index) {
|
|
@@ -1793,6 +1793,7 @@ export default defineComponent({
|
|
|
1793
1793
|
var selectCheckboxMaps = reactData.selectCheckboxMaps;
|
|
1794
1794
|
var afterFullData = internalData.afterFullData, afterFullRowMaps = internalData.afterFullRowMaps, checkboxReserveRowMap = internalData.checkboxReserveRowMap;
|
|
1795
1795
|
var treeOpts = computeTreeOpts.value;
|
|
1796
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
1796
1797
|
var checkboxOpts = computeCheckboxOpts.value;
|
|
1797
1798
|
var checkField = checkboxOpts.checkField, reserve = checkboxOpts.reserve, checkStrictly = checkboxOpts.checkStrictly, checkMethod = checkboxOpts.checkMethod;
|
|
1798
1799
|
var indeterminateField = checkboxOpts.indeterminateField || checkboxOpts.halfField;
|
|
@@ -1829,7 +1830,7 @@ export default defineComponent({
|
|
|
1829
1830
|
// 如果存在选中方法
|
|
1830
1831
|
// 如果方法成立,则更新值,否则忽略该数据
|
|
1831
1832
|
if (treeConfig) {
|
|
1832
|
-
XEUtils.eachTree(afterFullData, checkValFn,
|
|
1833
|
+
XEUtils.eachTree(afterFullData, checkValFn, { children: childrenField });
|
|
1833
1834
|
}
|
|
1834
1835
|
else {
|
|
1835
1836
|
afterFullData.forEach(checkValFn);
|
|
@@ -1850,7 +1851,7 @@ export default defineComponent({
|
|
|
1850
1851
|
if (isForce || (!checkMethod || checkMethod({ row: row }))) {
|
|
1851
1852
|
selectRowMaps[getRowid($xetable, row)] = row;
|
|
1852
1853
|
}
|
|
1853
|
-
},
|
|
1854
|
+
}, { children: childrenField });
|
|
1854
1855
|
}
|
|
1855
1856
|
else {
|
|
1856
1857
|
/**
|
|
@@ -1863,7 +1864,7 @@ export default defineComponent({
|
|
|
1863
1864
|
if (checkMethod({ row: row }) ? 0 : selectCheckboxMaps[rowid]) {
|
|
1864
1865
|
selectRowMaps[rowid] = row;
|
|
1865
1866
|
}
|
|
1866
|
-
},
|
|
1867
|
+
}, { children: childrenField });
|
|
1867
1868
|
}
|
|
1868
1869
|
}
|
|
1869
1870
|
}
|
|
@@ -1970,8 +1971,9 @@ export default defineComponent({
|
|
|
1970
1971
|
var treeConfig = props.treeConfig;
|
|
1971
1972
|
if (treeConfig) {
|
|
1972
1973
|
var tableFullData_1 = internalData.tableFullData;
|
|
1973
|
-
var
|
|
1974
|
-
var expandAll =
|
|
1974
|
+
var treeOpts = computeTreeOpts.value;
|
|
1975
|
+
var expandAll = treeOpts.expandAll, expandRowKeys = treeOpts.expandRowKeys;
|
|
1976
|
+
var childrenField_1 = treeOpts.children || treeOpts.childrenField;
|
|
1975
1977
|
if (expandAll) {
|
|
1976
1978
|
tableMethods.setAllTreeExpand(true);
|
|
1977
1979
|
}
|
|
@@ -1979,7 +1981,7 @@ export default defineComponent({
|
|
|
1979
1981
|
var defExpandeds_2 = [];
|
|
1980
1982
|
var rowkey_1 = getRowkey($xetable);
|
|
1981
1983
|
expandRowKeys.forEach(function (rowid) {
|
|
1982
|
-
var matchObj = XEUtils.findTree(tableFullData_1, function (item) { return rowid === XEUtils.get(item, rowkey_1); },
|
|
1984
|
+
var matchObj = XEUtils.findTree(tableFullData_1, function (item) { return rowid === XEUtils.get(item, rowkey_1); }, { children: childrenField_1 });
|
|
1983
1985
|
if (matchObj) {
|
|
1984
1986
|
defExpandeds_2.push(matchObj.item);
|
|
1985
1987
|
}
|
|
@@ -2501,7 +2503,7 @@ export default defineComponent({
|
|
|
2501
2503
|
if (accordion) {
|
|
2502
2504
|
validRows = validRows.length ? [validRows[validRows.length - 1]] : [];
|
|
2503
2505
|
// 同一级只能展开一个
|
|
2504
|
-
var matchObj = XEUtils.findTree(tableFullData, function (item) { return item === validRows[0]; },
|
|
2506
|
+
var matchObj = XEUtils.findTree(tableFullData, function (item) { return item === validRows[0]; }, { children: childrenField });
|
|
2505
2507
|
if (matchObj) {
|
|
2506
2508
|
matchObj.items.forEach(function (item) {
|
|
2507
2509
|
var rowid = getRowid($xetable, item);
|
|
@@ -2744,7 +2746,7 @@ export default defineComponent({
|
|
|
2744
2746
|
return tableMethods.createData(childRecords).then(function (rows) {
|
|
2745
2747
|
if (keepSource) {
|
|
2746
2748
|
var rowid_2 = getRowid($xetable, row);
|
|
2747
|
-
var matchObj = XEUtils.findTree(tableSourceData, function (item) { return rowid_2 === getRowid($xetable, item); },
|
|
2749
|
+
var matchObj = XEUtils.findTree(tableSourceData, function (item) { return rowid_2 === getRowid($xetable, item); }, { children: childrenField });
|
|
2748
2750
|
if (matchObj) {
|
|
2749
2751
|
matchObj.item[childrenField] = XEUtils.clone(rows, true);
|
|
2750
2752
|
}
|
|
@@ -2754,7 +2756,7 @@ export default defineComponent({
|
|
|
2754
2756
|
var rest = { row: childRow, rowid: rowid, seq: -1, index: index, _index: -1, $index: -1, items: items, parent: parent, level: parentLevel + nodes.length };
|
|
2755
2757
|
fullDataRowIdData[rowid] = rest;
|
|
2756
2758
|
fullAllDataRowIdData[rowid] = rest;
|
|
2757
|
-
},
|
|
2759
|
+
}, { children: childrenField });
|
|
2758
2760
|
row[childrenField] = rows;
|
|
2759
2761
|
if (transform) {
|
|
2760
2762
|
row[mapChildrenField] = rows;
|
|
@@ -3410,6 +3412,7 @@ export default defineComponent({
|
|
|
3410
3412
|
var fullDataRowIdData = internalData.fullDataRowIdData, radioReserveRow = internalData.radioReserveRow, afterFullData = internalData.afterFullData;
|
|
3411
3413
|
var radioOpts = computeRadioOpts.value;
|
|
3412
3414
|
var treeOpts = computeTreeOpts.value;
|
|
3415
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3413
3416
|
if (radioOpts.reserve && radioReserveRow) {
|
|
3414
3417
|
var rowid_3 = getRowid($xetable, radioReserveRow);
|
|
3415
3418
|
if (isFull) {
|
|
@@ -3420,7 +3423,7 @@ export default defineComponent({
|
|
|
3420
3423
|
else {
|
|
3421
3424
|
var rowkey_2 = getRowkey($xetable);
|
|
3422
3425
|
if (treeConfig) {
|
|
3423
|
-
var matchObj = XEUtils.findTree(afterFullData, function (row) { return rowid_3 === XEUtils.get(row, rowkey_2); },
|
|
3426
|
+
var matchObj = XEUtils.findTree(afterFullData, function (row) { return rowid_3 === XEUtils.get(row, rowkey_2); }, { children: childrenField });
|
|
3424
3427
|
if (matchObj) {
|
|
3425
3428
|
return radioReserveRow;
|
|
3426
3429
|
}
|
|
@@ -3446,13 +3449,14 @@ export default defineComponent({
|
|
|
3446
3449
|
var afterFullData = internalData.afterFullData, fullDataRowIdData = internalData.fullDataRowIdData, checkboxReserveRowMap = internalData.checkboxReserveRowMap;
|
|
3447
3450
|
var checkboxOpts = computeCheckboxOpts.value;
|
|
3448
3451
|
var treeOpts = computeTreeOpts.value;
|
|
3452
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3449
3453
|
var reserveSelection = [];
|
|
3450
3454
|
if (checkboxOpts.reserve) {
|
|
3451
3455
|
var afterFullIdMaps_1 = {};
|
|
3452
3456
|
if (treeConfig) {
|
|
3453
3457
|
XEUtils.eachTree(afterFullData, function (row) {
|
|
3454
3458
|
afterFullIdMaps_1[getRowid($xetable, row)] = 1;
|
|
3455
|
-
},
|
|
3459
|
+
}, { children: childrenField });
|
|
3456
3460
|
}
|
|
3457
3461
|
else {
|
|
3458
3462
|
afterFullData.forEach(function (row) {
|
|
@@ -3495,6 +3499,7 @@ export default defineComponent({
|
|
|
3495
3499
|
var treeConfig = props.treeConfig;
|
|
3496
3500
|
var tableFullData = internalData.tableFullData;
|
|
3497
3501
|
var treeOpts = computeTreeOpts.value;
|
|
3502
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3498
3503
|
var checkboxOpts = computeCheckboxOpts.value;
|
|
3499
3504
|
var checkField = checkboxOpts.checkField, reserve = checkboxOpts.reserve;
|
|
3500
3505
|
var indeterminateField = checkboxOpts.indeterminateField || checkboxOpts.halfField;
|
|
@@ -3506,7 +3511,7 @@ export default defineComponent({
|
|
|
3506
3511
|
XEUtils.set(item, checkField, false);
|
|
3507
3512
|
};
|
|
3508
3513
|
if (treeConfig) {
|
|
3509
|
-
XEUtils.eachTree(tableFullData, handleClearChecked,
|
|
3514
|
+
XEUtils.eachTree(tableFullData, handleClearChecked, { children: childrenField });
|
|
3510
3515
|
}
|
|
3511
3516
|
else {
|
|
3512
3517
|
tableFullData.forEach(handleClearChecked);
|
|
@@ -3795,11 +3800,12 @@ export default defineComponent({
|
|
|
3795
3800
|
setAllRowExpand: function (expanded) {
|
|
3796
3801
|
var treeOpts = computeTreeOpts.value;
|
|
3797
3802
|
var tableFullData = internalData.tableFullData, tableFullTreeData = internalData.tableFullTreeData;
|
|
3803
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3798
3804
|
var expandedRows = [];
|
|
3799
3805
|
if (props.treeConfig) {
|
|
3800
3806
|
XEUtils.eachTree(tableFullTreeData, function (row) {
|
|
3801
3807
|
expandedRows.push(row);
|
|
3802
|
-
},
|
|
3808
|
+
}, { children: childrenField });
|
|
3803
3809
|
}
|
|
3804
3810
|
else {
|
|
3805
3811
|
expandedRows = tableFullData;
|
|
@@ -3990,7 +3996,7 @@ export default defineComponent({
|
|
|
3990
3996
|
if (lazy || (rowChildren && rowChildren.length)) {
|
|
3991
3997
|
expandeds.push(row);
|
|
3992
3998
|
}
|
|
3993
|
-
},
|
|
3999
|
+
}, { children: childrenField });
|
|
3994
4000
|
return tableMethods.setTreeExpand(expandeds, expanded).then(function () {
|
|
3995
4001
|
if (transform) {
|
|
3996
4002
|
handleVirtualTreeToList();
|
|
@@ -4038,11 +4044,12 @@ export default defineComponent({
|
|
|
4038
4044
|
clearTreeExpand: function () {
|
|
4039
4045
|
var tableFullTreeData = internalData.tableFullTreeData;
|
|
4040
4046
|
var treeOpts = computeTreeOpts.value;
|
|
4047
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
4041
4048
|
var transform = treeOpts.transform, reserve = treeOpts.reserve;
|
|
4042
4049
|
var expList = tableMethods.getTreeExpandRecords();
|
|
4043
4050
|
reactData.treeExpandedMaps = {};
|
|
4044
4051
|
if (reserve) {
|
|
4045
|
-
XEUtils.eachTree(tableFullTreeData, function (row) { return handleTreeExpandReserve(row, false); },
|
|
4052
|
+
XEUtils.eachTree(tableFullTreeData, function (row) { return handleTreeExpandReserve(row, false); }, { children: childrenField });
|
|
4046
4053
|
}
|
|
4047
4054
|
return tablePrivateMethods.handleTableData().then(function () {
|
|
4048
4055
|
if (transform) {
|
|
@@ -4680,7 +4687,7 @@ export default defineComponent({
|
|
|
4680
4687
|
}
|
|
4681
4688
|
else if (isBack && keyboardOpts.isArrow && treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow) {
|
|
4682
4689
|
// 如果树形表格回退键关闭当前行返回父节点
|
|
4683
|
-
var parentRow_1 = XEUtils.findTree(internalData.afterFullData, function (item) { return item === currentRow; },
|
|
4690
|
+
var parentRow_1 = XEUtils.findTree(internalData.afterFullData, function (item) { return item === currentRow; }, { children: childrenField }).parent;
|
|
4684
4691
|
if (parentRow_1) {
|
|
4685
4692
|
evnt.preventDefault();
|
|
4686
4693
|
params = {
|
|
@@ -4981,7 +4988,7 @@ export default defineComponent({
|
|
|
4981
4988
|
}
|
|
4982
4989
|
fullAllDataRowIdData = internalData.fullAllDataRowIdData = {};
|
|
4983
4990
|
if (treeConfig) {
|
|
4984
|
-
XEUtils.eachTree(tableFullTreeData, handleRow,
|
|
4991
|
+
XEUtils.eachTree(tableFullTreeData, handleRow, { children: childrenField });
|
|
4985
4992
|
}
|
|
4986
4993
|
else {
|
|
4987
4994
|
tableFullData.forEach(handleRow);
|
|
@@ -5003,8 +5010,9 @@ export default defineComponent({
|
|
|
5003
5010
|
sourceDataRowIdData[rowid] = row;
|
|
5004
5011
|
};
|
|
5005
5012
|
// 源数据缓存
|
|
5006
|
-
if (treeConfig
|
|
5007
|
-
|
|
5013
|
+
if (treeConfig) {
|
|
5014
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
5015
|
+
XEUtils.eachTree(sourceData, handleSourceRow, { children: treeOpts.transform ? treeOpts.mapChildrenField : childrenField });
|
|
5008
5016
|
}
|
|
5009
5017
|
else {
|
|
5010
5018
|
sourceData.forEach(handleSourceRow);
|
|
@@ -5250,6 +5258,7 @@ export default defineComponent({
|
|
|
5250
5258
|
var selectRowMaps = __assign({}, selectCheckboxMaps);
|
|
5251
5259
|
var afterFullData = internalData.afterFullData;
|
|
5252
5260
|
var treeOpts = computeTreeOpts.value;
|
|
5261
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
5253
5262
|
var checkboxOpts = computeCheckboxOpts.value;
|
|
5254
5263
|
var checkField = checkboxOpts.checkField, checkStrictly = checkboxOpts.checkStrictly, checkMethod = checkboxOpts.checkMethod;
|
|
5255
5264
|
var indeterminateField = checkboxOpts.indeterminateField || checkboxOpts.halfField;
|
|
@@ -5276,10 +5285,10 @@ export default defineComponent({
|
|
|
5276
5285
|
delete treeIndeterminateMaps[getRowid($xetable, item)];
|
|
5277
5286
|
handleCheckboxReserveRow(row, value);
|
|
5278
5287
|
}
|
|
5279
|
-
},
|
|
5288
|
+
}, { children: childrenField });
|
|
5280
5289
|
}
|
|
5281
5290
|
// 如果存在父节点,更新父节点状态
|
|
5282
|
-
var matchObj = XEUtils.findTree(afterFullData, function (item) { return $xetable.eqRow(item, row); },
|
|
5291
|
+
var matchObj = XEUtils.findTree(afterFullData, function (item) { return $xetable.eqRow(item, row); }, { children: childrenField });
|
|
5283
5292
|
if (matchObj && matchObj.parent) {
|
|
5284
5293
|
var parentStatus = void 0;
|
|
5285
5294
|
var vItems_1 = [];
|
|
@@ -5356,10 +5365,10 @@ export default defineComponent({
|
|
|
5356
5365
|
delete treeIndeterminateMaps[getRowid($xetable, item)];
|
|
5357
5366
|
handleCheckboxReserveRow(row, value);
|
|
5358
5367
|
}
|
|
5359
|
-
},
|
|
5368
|
+
}, { children: childrenField });
|
|
5360
5369
|
}
|
|
5361
5370
|
// 如果存在父节点,更新父节点状态
|
|
5362
|
-
var matchObj = XEUtils.findTree(afterFullData, function (item) { return $xetable.eqRow(item, row); },
|
|
5371
|
+
var matchObj = XEUtils.findTree(afterFullData, function (item) { return $xetable.eqRow(item, row); }, { children: childrenField });
|
|
5363
5372
|
if (matchObj && matchObj.parent) {
|
|
5364
5373
|
var parentStatus = void 0;
|
|
5365
5374
|
var vItems_2 = [];
|
|
@@ -5830,7 +5839,8 @@ export default defineComponent({
|
|
|
5830
5839
|
var rests = [];
|
|
5831
5840
|
if (treeConfig) {
|
|
5832
5841
|
var treeOpts = computeTreeOpts.value;
|
|
5833
|
-
var
|
|
5842
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
5843
|
+
var matchObj = XEUtils.findTree(tableFullData, function (item) { return $xetable.eqRow(item, row); }, { children: childrenField });
|
|
5834
5844
|
if (matchObj) {
|
|
5835
5845
|
var nodes_1 = matchObj.nodes;
|
|
5836
5846
|
nodes_1.forEach(function (row, index) {
|
package/es/table/style.css
CHANGED
|
@@ -735,10 +735,10 @@
|
|
|
735
735
|
/*单元格编辑状态*/
|
|
736
736
|
/*可编辑*/
|
|
737
737
|
}
|
|
738
|
-
.vxe-table--render-default .vxe-table--body-wrapper {
|
|
738
|
+
.vxe-table--render-default .vxe-table--body-wrapper table {
|
|
739
739
|
background-color: var(--vxe-table-body-background-color);
|
|
740
740
|
}
|
|
741
|
-
.vxe-table--render-default .vxe-table--footer-wrapper {
|
|
741
|
+
.vxe-table--render-default .vxe-table--footer-wrapper table {
|
|
742
742
|
background-color: var(--vxe-table-footer-background-color);
|
|
743
743
|
}
|
|
744
744
|
.vxe-table--render-default .vxe-table--header,
|
package/es/tools/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import GlobalConfig from '../v-x-e-table/src/conf';
|
|
2
2
|
export function getLog(message, params) {
|
|
3
|
-
return "[vxe-table v".concat("4.5.
|
|
3
|
+
return "[vxe-table v".concat("4.5.6", "] ").concat(GlobalConfig.i18n(message, params));
|
|
4
4
|
}
|
|
5
5
|
function outLog(type) {
|
|
6
6
|
return function (message, params) {
|
package/es/v-x-e-table/index.js
CHANGED
package/es/validator/src/hook.js
CHANGED
|
@@ -107,6 +107,7 @@ var validatorHook = {
|
|
|
107
107
|
var editRules = props.editRules, treeConfig = props.treeConfig;
|
|
108
108
|
var afterFullData = internalData.afterFullData;
|
|
109
109
|
var treeOpts = computeTreeOpts.value;
|
|
110
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
110
111
|
var validOpts = computeValidOpts.value;
|
|
111
112
|
var vaildDatas;
|
|
112
113
|
if (rows === true) {
|
|
@@ -174,7 +175,7 @@ var validatorHook = {
|
|
|
174
175
|
}
|
|
175
176
|
};
|
|
176
177
|
if (treeConfig) {
|
|
177
|
-
XEUtils.eachTree(vaildDatas, handleVaild,
|
|
178
|
+
XEUtils.eachTree(vaildDatas, handleVaild, { children: childrenField });
|
|
178
179
|
}
|
|
179
180
|
else {
|
|
180
181
|
vaildDatas.forEach(handleVaild);
|
package/es/vxe-table/style.css
CHANGED
|
@@ -735,10 +735,10 @@
|
|
|
735
735
|
/*单元格编辑状态*/
|
|
736
736
|
/*可编辑*/
|
|
737
737
|
}
|
|
738
|
-
.vxe-table--render-default .vxe-table--body-wrapper {
|
|
738
|
+
.vxe-table--render-default .vxe-table--body-wrapper table {
|
|
739
739
|
background-color: var(--vxe-table-body-background-color);
|
|
740
740
|
}
|
|
741
|
-
.vxe-table--render-default .vxe-table--footer-wrapper {
|
|
741
|
+
.vxe-table--render-default .vxe-table--footer-wrapper table {
|
|
742
742
|
background-color: var(--vxe-table-footer-background-color);
|
|
743
743
|
}
|
|
744
744
|
.vxe-table--render-default .vxe-table--header,
|
package/lib/export/src/hook.js
CHANGED
|
@@ -341,6 +341,7 @@ var tableExportHook = {
|
|
|
341
341
|
htmlCellElem = document.createElement('div');
|
|
342
342
|
}
|
|
343
343
|
if (treeConfig) {
|
|
344
|
+
var childrenField = treeOpts.children || treeOpts.childrenField;
|
|
344
345
|
// 如果是树表格只允许导出数据源
|
|
345
346
|
var rest_1 = [];
|
|
346
347
|
var expandMaps_1 = new Map();
|
|
@@ -418,7 +419,9 @@ var tableExportHook = {
|
|
|
418
419
|
expandMaps_1.set(row, 1);
|
|
419
420
|
rest_1.push(Object.assign(item_3, row));
|
|
420
421
|
}
|
|
421
|
-
},
|
|
422
|
+
}, {
|
|
423
|
+
children: childrenField
|
|
424
|
+
});
|
|
422
425
|
return rest_1;
|
|
423
426
|
}
|
|
424
427
|
return datas.map(function (row, $rowIndex) {
|
|
@@ -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"),_log=require("../../tools/log"),_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(e){var t=[];return e.forEach(function(e){e.childNodes&&e.childNodes.length?(t.push(e),t.push.apply(t,getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=function(e){for(var n=1,r=function(t,e){var o;e&&(t._level=e._level+1,n<t._level)&&(n=t._level),t.childNodes&&t.childNodes.length?(o=0,t.childNodes.forEach(function(e){r(e,t),o+=e._colSpan}),t._colSpan=o):t._colSpan=1},t=(e.forEach(function(e){e._level=1,r(e)}),[]),o=0;o<n;o++)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 getFooterData(e,t){var o=e.footerFilterMethod;return o?t.filter(function(e,t){return o({items:e,$rowIndex:t})}):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return"\t".concat(t);switch(e.cellType){case"string":if(isNaN(t))break;return"\t".concat(t);case"number":break;default:if(12<=t.length&&!isNaN(t))return"\t".concat(t)}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?'"'.concat(e.replace(/"/g,'""'),'"'):e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return"#".concat(e,"@").concat(_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,n){var r,a,t=t.split(enterSymbol),l=[],c=[];return t.length&&(r={},a=Date.now(),t.forEach(function(e){var o;e&&(o={},e=(e=e.replace(/("")|(\n)/g,function(e,t){var o=getTxtCellKey(a);return r[o]=t?'"':"\n",o}).replace(/"(.*?)"/g,function(e,t){var o=getTxtCellKey(a);return r[o]=replaceTxtCell(t,r),o})).split(n),c.length?(e.forEach(function(e,t){t<c.length&&(o[c[t]]=getTxtCellValue(e.trim(),r))}),l.push(o)):c=e.map(function(e){return getTxtCellValue(e.trim(),r)}))})),{fields:c,rows:l}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var o,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body"),n=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(o=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),function(e){r.push(e.textContent)})}),(o=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){var o={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),function(e,t){r[t]&&(o[r[t]]=e.textContent||"")}),n.push(o)}),{fields:r,rows:n}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet"),n=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),function(e){r.push(e.textContent)}),_xeUtils.default.arrayEach(t,function(e,t){var o;t&&(o={},t=getElementsByTagName(e,"Cell"),_xeUtils.default.arrayEach(t,function(e,t){r[t]&&(o[r[t]]=e.textContent)}),n.push(o))})),{fields:r,rows:n}}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 o=[];return e.forEach(function(e){e=e.property;e&&o.push(e)}),t.some(function(e){return-1<o.indexOf(e)})}var tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"],tableExportHook={setupTable:function(w){function g(e,t,o,n){var r=a.value.seqMethod||o.seqMethod;return r?r({row:e,rowIndex:w.getRowIndex(e),$rowIndex:t,column:o,columnIndex:w.getColumnIndex(o),$columnIndex:n}):w.getRowSeq(e)}var C=w.props,k=w.reactData,b=w.internalData,e=w.getComputeMaps(),M=e.computeTreeOpts,n=e.computePrintOpts,_=e.computeExportOpts,c=e.computeImportOpts,x=e.computeCustomOpts,a=e.computeSeqOpts,l=e.computeRadioOpts,i=e.computeCheckboxOpts,s=e.computeColumnOpts,y=(0,_vue.inject)("$xegrid",null);function N(e,t){var o=s.value,o=t.headerExportMethod||o.headerExportMethod;return o?o({column:t,options:e,$table:w}):(e.original?t.property:t.getTitle())||""}function T(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function j(e,t,o){var n=s.value,r=o.editRender||o.cellRender,a=o.footerExportMethod,r=(a=(a=!a&&r&&r.name&&(r=_vXETable.VXETable.renderer.get(r.name))?r.footerExportMethod:a)||n.footerExportMethod,w.getVTColumnIndex(o));return a?a({$table:w,items:t,itemIndex:r,_columnIndex:r,column:o,options:e}):_xeUtils.default.toValueString(t[r])}function D(e,t,o){return e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?o:e,o="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t,e=k.scrollXLoad,t=k.scrollYLoad,o=e||t?o||!0:o}function E(l){var c=l.remote,i=l.columns,s=l.colgroups,u=l.exportMethod,t=l.afterExportMethod;return new Promise(function(e){var a,t,o,n,r;c?(t={options:l,$table:w,$grid:y},e(u?u(t):t)):(o=(t=l).columns,n=t.dataFilterMethod,r=t.data,n&&(r=r.filter(function(e,t){return n({row:e,$rowIndex:t})})),a=d(t,o,r),e(w.preventEvent(null,"event.export",{options:l,columns:i,colgroups:s,datas:a},function(){var e,t=l,o=function(e,t,o){if(t.length)switch(e.type){case"csv":return p(e,t,o);case"txt":return f(e,t,o);case"html":return h(e,t,o);case"xml":return m(e,t,o)}return""}(l,i,a),n=t.filename,r=t.type;if(!t.download)return e=(0,_util2.getExportBlobByContent)(o,t),Promise.resolve({type:r,content:o,blob:e});(0,_util2.saveLocalFile)({filename:n,type:r,content:o}).then(function(){!1!==t.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.expSuccess"),status:"success"}))})})))}).then(function(e){return clearColumnConvert(i),l.print||t&&t({status:!0,options:l,$table:w,$grid:y}),Object.assign({status:!0},e)}).catch(function(){clearColumnConvert(i),l.print||t&&t({status:!1,options:l,$table:w,$grid:y});return Promise.reject({status:!1})})}function r(a,l){var c=l.importMethod,t=l.afterImportMethod,e=(0,_utils.parseFile)(a),s=e.type,u=e.filename;return c||_xeUtils.default.includes(_vXETable.VXETable.config.importTypes,s)?new Promise(function(t,o){function e(e){t(e),b._importResolve=null,b._importReject=null}function n(e){o(e),b._importResolve=null,b._importReject=null}var i,r;b._importResolve=e,b._importReject=n,window.FileReader?(i=Object.assign({mode:"insert"},l,{type:s,filename:u})).remote?c?Promise.resolve(c({file:a,options:i,$table:w})).then(function(){e({status:!0})}).catch(function(){e({status:!0})}):e({status:!0}):(r=b.tableFullColumn,w.preventEvent(null,"event.import",{file:a,options:i,columns:r},function(){var e=new FileReader;e.onerror=function(){(0,_log.errLog)("vxe.error.notType",[s]),n({status:!1})},e.onload=function(e){var t=e.target.result,o=i,n=b.tableFullColumn,r=b._importResolve,e=b._importReject,a={fields:[],rows:[]};switch(o.type){case"csv":a=parseCsv(n,t);break;case"txt":a=parseTxt(n,t);break;case"html":a=parseHTML(n,t);break;case"xml":a=parseXML(n,t)}var l=a.fields,c=a.rows;checkImportData(n,l)?w.createData(c).then(function(e){e="insert"===o.mode?w.insert(e):w.reloadData(e);return!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.impSuccess",[c.length]),status:"success"})),e.then(function(){r&&r({status:!0})})}):!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.impFields"),status:"error"}),e)&&e({status:!1})},e.readAsText(a,i.encoding||"UTF-8")})):("development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notExp"),e({status:!0}))}).then(function(){t&&t({status:!0,options:l,$table:w})}).catch(function(e){return t&&t({status:!1,options:l,$table:w}),Promise.reject(e)}):(!1!==l.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.notType",[s]),status:"error"})),Promise.reject({status:!1}))}function o(e,t){var o=C.treeConfig,n=C.showHeader,r=C.showFooter,a=k.initStore,l=k.mergeList,c=k.isGroup,i=k.footerTableData,s=k.exportStore,u=k.exportParams,d=b.collectColumn,p=x.value,f=w.getCheckboxRecords(),i=!!i.length,l=!o&&l.length,r=(n=Object.assign({message:!0,isHeader:n,isFooter:r},e)).types||_vXETable.VXETable.config.exportTypes,e=n.modes,h=p.checkMethod,p=d.slice(0),m=n.columns,d=r.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),v=e.map(function(e){return{value:e,label:"vxe.export.modes.".concat(e)}});_xeUtils.default.eachTree(p,function(n,e,t,o,r){(n.children&&n.children.length||defaultFilterExportColumn(n))&&(n.checked=m?m.some(function(e){var t,o;return(0,_util.isColumnInfo)(e)?n===e:_xeUtils.default.isString(e)?n.field===e:(t=e.id||e.colId,o=e.type,e=e.property||e.field,t?n.id===t:e&&o?n.property===e&&n.type===o:e?n.property===e:!!o&&n.type===o)}):n.visible,n.halfChecked=!1,n.disabled=r&&r.disabled||!!h&&!h({column:n}))}),Object.assign(s,{columns:p,typeList:d,modeList:v,hasFooter:i,hasMerge:l,hasTree:o,isPrint:t,hasColgroup:c,visible:!0}),Object.assign(u,{mode:f.length?"selected":"current"},n),-1===e.indexOf(u.mode)&&(u.mode=e[0]),-1===r.indexOf(u.type)&&(u.type=r[0]),a.export=!0,(0,_vue.nextTick)()}var d=function(u,r,e){var a,d,p=u.isAllExpand,f=u.mode,t=C.treeConfig,h=l.value,m=i.value,o=M.value,v=s.value;return htmlCellElem=htmlCellElem||document.createElement("div"),t?(a=[],d=new Map,_xeUtils.default.eachTree(e,function(e,l,t,c,o,n){var i,s=e._row||e,e=o&&o._row?o._row:o;(p||!e||d.has(e)&&w.isTreeExpandByRow(e))&&(o=s,e=(e=M.value).children||e.childrenField,o=o[e]&&o[e].length,i={_row:s,_level:n.length-1,_hasChild:o,_expand:o&&w.isTreeExpandByRow(s)},r.forEach(function(e,t){var o,n="",r=e.editRender||e.cellRender,a=e.exportMethod;if(a=(a=!a&&r&&r.name&&(r=_vXETable.VXETable.renderer.get(r.name))?r.exportMethod:a)||v.exportMethod)n=a({$table:w,row:s,column:e,options:u});else switch(e.type){case"seq":n="all"===f?c.map(function(e,t){return t%2==0?Number(e)+1:"."}).join(""):g(s,l,e,t);break;case"checkbox":n=T(w.isCheckedByCheckboxRow(s)),i._checkboxLabel=m.labelField?_xeUtils.default.get(s,m.labelField):"",i._checkboxDisabled=m.checkMethod&&!m.checkMethod({row:s});break;case"radio":n=T(w.isCheckedByRadioRow(s)),i._radioLabel=h.labelField?_xeUtils.default.get(s,h.labelField):"",i._radioDisabled=h.checkMethod&&!h.checkMethod({row:s});break;default:u.original?n=(0,_util.getCellValue)(s,e):(n=w.getCellLabel(s,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(o=w.getCell(s,e))&&(n=o.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(n)}),d.set(s,1),a.push(Object.assign(i,s)))},o),a):e.map(function(l,c){var i={_row:l};return r.forEach(function(e,t){var o,n="",r=e.editRender||e.cellRender,a=e.exportMethod;if(a=!a&&r&&r.name&&(r=_vXETable.VXETable.renderer.get(r.name))?r.exportMethod:a)n=a({$table:w,row:l,column:e,options:u});else switch(e.type){case"seq":n="all"===f?c+1:g(l,c,e,t);break;case"checkbox":n=T(w.isCheckedByCheckboxRow(l)),i._checkboxLabel=m.labelField?_xeUtils.default.get(l,m.labelField):"",i._checkboxDisabled=m.checkMethod&&!m.checkMethod({row:l});break;case"radio":n=T(w.isCheckedByRadioRow(l)),i._radioLabel=h.labelField?_xeUtils.default.get(l,h.labelField):"",i._radioDisabled=h.checkMethod&&!h.checkMethod({row:l});break;default:u.original?n=(0,_util.getCellValue)(l,e):(n=w.getCellLabel(l,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(o=w.getCell(l,e))&&(n=o.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(n)}),i})},p=function(o,e,t){var n=csvBOM;return o.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(N(o,e))}).join(",")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))}).join(",")+enterSymbol}),o.isFooter&&(t=k.footerTableData,getFooterData(o,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(j(o,t,e))}).join(",")+enterSymbol})),n},f=function(o,e,t){var n="";return o.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(N(o,e))}).join("\t")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(t[e.id])}).join("\t")+enterSymbol}),o.isFooter&&(t=k.footerTableData,getFooterData(o,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(j(o,t,e))}).join(",")+enterSymbol})),n},h=function(c,e,t){var s=C.id,o=C.border,n=C.treeConfig,i=C.headerAlign,u=C.align,a=C.footerAlign,d=C.showOverflow,p=C.showHeaderOverflow,f=k.isAllSelected,r=k.isIndeterminate,h=k.mergeList,l=M.value,m=c.print,v=c.isHeader,g=c.isFooter,x=c.isColgroup,b=c.isMerge,_=c.colgroups,y=c.original,T="check-all",o=["vxe-table","border--".concat(toTableBorder(o)),m?"is--print":"",v?"is--header":""].filter(function(e){return e}),E=['<table class="'.concat(o.join(" "),'" border="0" cellspacing="0" cellpadding="0">'),"<colgroup>".concat(e.map(function(e){return'<col style="width:'.concat(e.renderWidth,'px">')}).join(""),"</colgroup>")],x=(v&&(E.push("<thead>"),x&&!y?_.forEach(function(e){E.push("<tr>".concat(e.map(function(t){var e=t.headerAlign||t.align||i||u,o=D(t,"showHeaderOverflow",p)?["col--ellipsis"]:[],n=N(c,t),r=0,a=0,l=(_xeUtils.default.eachTree([t],function(e){e.childNodes&&t.childNodes.length||a++,r+=e.renderWidth},{children:"childNodes"}),r-a);return e&&o.push("col--".concat(e)),"checkbox"===t.type?'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'"><div ').concat(m?"":'style="width: '.concat(l,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(f?"checked":"","><span>").concat(n,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(l,'px"'),"><span>").concat((0,_utils.formatText)(n,!0),"</span></div></th>")}).join(""),"</tr>"))}):E.push("<tr>".concat(e.map(function(e){var t=e.headerAlign||e.align||i||u,o=D(e,"showHeaderOverflow",p)?["col--ellipsis"]:[],n=N(c,e);return t&&o.push("col--".concat(t)),"checkbox"===e.type?'<th class="'.concat(o.join(" "),'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(f?"checked":"","><span>").concat(n,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),"><span>").concat((0,_utils.formatText)(n,!0),"</span></div></th>")}).join(""),"</tr>")),E.push("</thead>")),t.length&&(E.push("<tbody>"),n?t.forEach(function(r){E.push("<tr>"+e.map(function(e){var t=e.align||u,o=D(e,"showOverflow",d)?["col--ellipsis"]:[],n=r[e.id];return t&&o.push("col--".concat(t)),e.treeNode?(t="",r._hasChild&&(t='<i class="'.concat(r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon",'"></i>')),o.push("vxe-table--tree-node"),"radio"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(r._level*l.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_').concat(s,'" ').concat(r._radioDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._radioLabel,"</span></div></div></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(r._level*l.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="checkbox" ').concat(r._checkboxDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._checkboxLabel,"</span></div></div></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(r._level*l.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell">').concat(n,"</div></div></div></td>")):"radio"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(s,'" ').concat(r._radioDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(r._checkboxDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat((0,_utils.formatText)(n,!0),"</div></td>")}).join("")+"</tr>")}):t.forEach(function(i){E.push("<tr>"+e.map(function(e){var t=e.align||u,o=D(e,"showOverflow",d)?["col--ellipsis"]:[],n=i[e.id],r=1,a=1;if(b&&h.length){var l=w.getVTRowIndex(i._row),c=w.getVTColumnIndex(e),l=(0,_util.mergeBodyMethod)(h,l,c);if(l){c=l.rowspan,l=l.colspan;if(!c||!l)return"";1<c&&(r=c),1<l&&(a=l)}}return t&&o.push("col--".concat(t)),"radio"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(r,'" colspan="').concat(a,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(s,'" ').concat(i._radioDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(i._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(r,'" colspan="').concat(a,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(i._checkboxDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(i._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" rowspan="').concat(r,'" colspan="').concat(a,'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat((0,_utils.formatText)(n,!0),"</div></td>")}).join("")+"</tr>")}),E.push("</tbody>")),g&&(o=k.footerTableData,(v=getFooterData(c,o)).length)&&(E.push("<tfoot>"),v.forEach(function(r){E.push("<tr>".concat(e.map(function(e){var t=e.footerAlign||e.align||a||u,o=D(e,"showOverflow",d)?["col--ellipsis"]:[],n=j(c,r,e);return t&&o.push("col--".concat(t)),'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat((0,_utils.formatText)(n,!0),"</div></td>")}).join(""),"</tr>"))}),E.push("</tfoot>")),!f&&r?'<script>(function(){var a=document.querySelector(".'.concat(T,'");if(a){a.indeterminate=true}})()<\/script>'):"");return E.push("</table>",x),m?E.join(""):(0,_util2.createHtmlPage)(c,E.join(""))},m=function(o,e,t){var n=['<?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="'.concat(o.sheetName,'">'),"<Table>",e.map(function(e){return'<Column ss:Width="'.concat(e.renderWidth,'"/>')}).join("")].join("");return o.isHeader&&(n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(N(o,e),"</Data></Cell>")}).join(""),"</Row>")),t.forEach(function(t){n+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(t[e.id],"</Data></Cell>")}).join("")+"</Row>"}),o.isFooter&&(t=k.footerTableData,getFooterData(o,t).forEach(function(t){n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(j(o,t,e),"</Data></Cell>")}).join(""),"</Row>")})),"".concat(n,"</Table></Worksheet></Workbook>")},u={exportData:function(e){var t=C.treeConfig,o=k.isGroup,n=k.tableGroupColumn,a=b.tableFullColumn,r=b.afterFullData,l=_.value,c=M.value,i=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},l,{print:!1},e),l=i.type,e=i.mode,s=i.columns,u=i.original,d=i.beforeExportMethod,p=[],s=s&&s.length?s:null,f=i.columnFilterMethod,h=(s||(f=f||(u?function(e){return e.column.property}:function(e){return defaultFilterExportColumn(e.column)})),p=s?(i._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(s,function(e){var t,o,n,r;if(e)return(0,_util.isColumnInfo)(e)?t=e:_xeUtils.default.isString(e)?t=w.getColumnByField(e):(o=e.id||e.colId,n=e.type,r=e.property||e.field,o?t=w.getColumnById(o):r&&n?t=a.find(function(e){return e.property===r&&e.type===n}):r?t=w.getColumnByField(r):n&&(t=a.find(function(e){return e.type===n}))),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(o?n:a,function(e,t){return e.visible&&(!f||f({column:e,$columnIndex:t}))},{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(p,function(e){e.children&&e.children.length||h.push(e)},{children:"childNodes"}),i.columns=h,i.colgroups=convertToRows(p),i.filename||(i.filename=_conf.default.i18n(i.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),i.sheetName||(i.sheetName=document.title),!i.exportMethod&&!_xeUtils.default.includes(_vXETable.VXETable.config.exportTypes,l))return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notType",[l]),Promise.reject({status:!1});if(i.print||d&&d({options:i,$table:w,$grid:y}),!i.data)if(i.data=r,"selected"===e){var m=w.getCheckboxRecords();-1<["html","pdf"].indexOf(l)&&t?i.data=_xeUtils.default.searchTree(w.getTableData().fullData,function(e){return-1<w.findRowIndexOf(m,e)},Object.assign({},c,{data:"_row"})):i.data=m}else if("all"===e&&("development"!==process.env.NODE_ENV||y||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),y)&&!i.remote){var v,u=y.reactData,s=y.getComputeMaps().computeProxyOpts.value,o=s.beforeQueryAll,g=s.afterQueryAll,n=s.ajax,p=s.props,x=void 0===p?{}:p,d=(void 0===n?{}:n).queryAll;if("development"!==process.env.NODE_ENV||d||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),d)return v={$table:w,$grid:y,sort:u.sortData,filters:u.filterData,form:u.formData,target:d,options:i},Promise.resolve((o||d)(v)).catch(function(e){return e}).then(function(e){return i.data=(x.list?_xeUtils.default.get(e,x.list):e)||[],g&&g(v),E(i)})}return E(i)},importByFile:function(e,t){var t=Object.assign({},t),o=t.beforeImportMethod;return o&&o({options:t,$table:w}),r(e,t)},importData:function(e){var t=c.value,o=Object.assign({types:_vXETable.VXETable.config.importTypes},t,e),t=o.beforeImportMethod,n=o.afterImportMethod;return t&&t({options:o,$table:w}),(0,_util2.readLocalFile)(o).catch(function(e){return n&&n({status:!1,options:o,$table:w}),Promise.reject(e)}).then(function(e){e=e.file;return r(e,o)})},saveFile:function(e){return(0,_util2.saveLocalFile)(e)},readFile:function(e){return(0,_util2.readLocalFile)(e)},print:function(e){var t=n.value,o=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return o.sheetName||(o.sheetName=document.title),new Promise(function(e){o.content?e((0,_util2.handlePrint)(w,o,o.content)):e(u.exportData(o).then(function(e){e=e.content;return(0,_util2.handlePrint)(w,o,e)}))})},openImport:function(e){var t=C.treeConfig,o=C.importConfig,n=k.initStore,r=k.importStore,a=k.importParams,l=c.value,e=Object.assign({mode:"insert",message:!0,types:_vXETable.VXETable.config.importTypes},e,l),l=e.types;!t?(o||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=l.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),o=e.modes.map(function(e){return{value:e,label:"vxe.import.modes.".concat(e)}}),Object.assign(r,{file:null,type:"",filename:"",modeList:o,typeList:t,visible:!0}),Object.assign(a,e),n.import=!0):e.message&&_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.treeNotImp"),status:"error"})},openExport:function(e){var t=_.value;"development"!==process.env.NODE_ENV||C.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),o(Object.assign({},t,e))},openPrint:function(e){var t=n.value;"development"!==process.env.NODE_ENV||C.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),o(Object.assign({},t,e),!0)}};return u},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"),_log=require("../../tools/log"),_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(e){var t=[];return e.forEach(function(e){e.childNodes&&e.childNodes.length?(t.push(e),t.push.apply(t,getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=function(e){for(var n=1,r=function(t,e){var o;e&&(t._level=e._level+1,n<t._level)&&(n=t._level),t.childNodes&&t.childNodes.length?(o=0,t.childNodes.forEach(function(e){r(e,t),o+=e._colSpan}),t._colSpan=o):t._colSpan=1},t=(e.forEach(function(e){e._level=1,r(e)}),[]),o=0;o<n;o++)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 getFooterData(e,t){var o=e.footerFilterMethod;return o?t.filter(function(e,t){return o({items:e,$rowIndex:t})}):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return"\t".concat(t);switch(e.cellType){case"string":if(isNaN(t))break;return"\t".concat(t);case"number":break;default:if(12<=t.length&&!isNaN(t))return"\t".concat(t)}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?'"'.concat(e.replace(/"/g,'""'),'"'):e}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return"#".concat(e,"@").concat(_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,n){var r,a,t=t.split(enterSymbol),l=[],c=[];return t.length&&(r={},a=Date.now(),t.forEach(function(e){var o;e&&(o={},e=(e=e.replace(/("")|(\n)/g,function(e,t){var o=getTxtCellKey(a);return r[o]=t?'"':"\n",o}).replace(/"(.*?)"/g,function(e,t){var o=getTxtCellKey(a);return r[o]=replaceTxtCell(t,r),o})).split(n),c.length?(e.forEach(function(e,t){t<c.length&&(o[c[t]]=getTxtCellValue(e.trim(),r))}),l.push(o)):c=e.map(function(e){return getTxtCellValue(e.trim(),r)}))})),{fields:c,rows:l}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(e,t){var o,t=getElementsByTagName((new DOMParser).parseFromString(t,"text/html"),"body"),n=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"table")).length&&(o=getElementsByTagName(t[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),function(e){r.push(e.textContent)})}),(o=getElementsByTagName(t[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(o[0],"tr"),function(e){var o={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),function(e,t){r[t]&&(o[r[t]]=e.textContent||"")}),n.push(o)}),{fields:r,rows:n}}function parseXML(e,t){var t=getElementsByTagName((new DOMParser).parseFromString(t,"application/xml"),"Worksheet"),n=[],r=[];return t.length&&(t=getElementsByTagName(t[0],"Table")).length&&(t=getElementsByTagName(t[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(t[0],"Cell"),function(e){r.push(e.textContent)}),_xeUtils.default.arrayEach(t,function(e,t){var o;t&&(o={},t=getElementsByTagName(e,"Cell"),_xeUtils.default.arrayEach(t,function(e,t){r[t]&&(o[r[t]]=e.textContent)}),n.push(o))})),{fields:r,rows:n}}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 o=[];return e.forEach(function(e){e=e.property;e&&o.push(e)}),t.some(function(e){return-1<o.indexOf(e)})}var tableExportMethodKeys=["exportData","importByFile","importData","saveFile","readFile","print","openImport","openExport","openPrint"],tableExportHook={setupTable:function(w){function g(e,t,o,n){var r=a.value.seqMethod||o.seqMethod;return r?r({row:e,rowIndex:w.getRowIndex(e),$rowIndex:t,column:o,columnIndex:w.getColumnIndex(o),$columnIndex:n}):w.getRowSeq(e)}var C=w.props,k=w.reactData,b=w.internalData,e=w.getComputeMaps(),M=e.computeTreeOpts,n=e.computePrintOpts,_=e.computeExportOpts,c=e.computeImportOpts,x=e.computeCustomOpts,a=e.computeSeqOpts,l=e.computeRadioOpts,i=e.computeCheckboxOpts,s=e.computeColumnOpts,y=(0,_vue.inject)("$xegrid",null);function N(e,t){var o=s.value,o=t.headerExportMethod||o.headerExportMethod;return o?o({column:t,options:e,$table:w}):(e.original?t.property:t.getTitle())||""}function T(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}function j(e,t,o){var n=s.value,r=o.editRender||o.cellRender,a=o.footerExportMethod,r=(a=(a=!a&&r&&r.name&&(r=_vXETable.VXETable.renderer.get(r.name))?r.footerExportMethod:a)||n.footerExportMethod,w.getVTColumnIndex(o));return a?a({$table:w,items:t,itemIndex:r,_columnIndex:r,column:o,options:e}):_xeUtils.default.toValueString(t[r])}function D(e,t,o){return e=e[t],t=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?o:e,o="title"===t||(!0===t||"tooltip"===t)||"ellipsis"===t,e=k.scrollXLoad,t=k.scrollYLoad,o=e||t?o||!0:o}function E(l){var c=l.remote,i=l.columns,s=l.colgroups,d=l.exportMethod,t=l.afterExportMethod;return new Promise(function(e){var a,t,o,n,r;c?(t={options:l,$table:w,$grid:y},e(d?d(t):t)):(o=(t=l).columns,n=t.dataFilterMethod,r=t.data,n&&(r=r.filter(function(e,t){return n({row:e,$rowIndex:t})})),a=u(t,o,r),e(w.preventEvent(null,"event.export",{options:l,columns:i,colgroups:s,datas:a},function(){var e,t=l,o=function(e,t,o){if(t.length)switch(e.type){case"csv":return p(e,t,o);case"txt":return f(e,t,o);case"html":return h(e,t,o);case"xml":return m(e,t,o)}return""}(l,i,a),n=t.filename,r=t.type;if(!t.download)return e=(0,_util2.getExportBlobByContent)(o,t),Promise.resolve({type:r,content:o,blob:e});(0,_util2.saveLocalFile)({filename:n,type:r,content:o}).then(function(){!1!==t.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.expSuccess"),status:"success"}))})})))}).then(function(e){return clearColumnConvert(i),l.print||t&&t({status:!0,options:l,$table:w,$grid:y}),Object.assign({status:!0},e)}).catch(function(){clearColumnConvert(i),l.print||t&&t({status:!1,options:l,$table:w,$grid:y});return Promise.reject({status:!1})})}function r(a,l){var c=l.importMethod,t=l.afterImportMethod,e=(0,_utils.parseFile)(a),s=e.type,d=e.filename;return c||_xeUtils.default.includes(_vXETable.VXETable.config.importTypes,s)?new Promise(function(t,o){function e(e){t(e),b._importResolve=null,b._importReject=null}function n(e){o(e),b._importResolve=null,b._importReject=null}var i,r;b._importResolve=e,b._importReject=n,window.FileReader?(i=Object.assign({mode:"insert"},l,{type:s,filename:d})).remote?c?Promise.resolve(c({file:a,options:i,$table:w})).then(function(){e({status:!0})}).catch(function(){e({status:!0})}):e({status:!0}):(r=b.tableFullColumn,w.preventEvent(null,"event.import",{file:a,options:i,columns:r},function(){var e=new FileReader;e.onerror=function(){(0,_log.errLog)("vxe.error.notType",[s]),n({status:!1})},e.onload=function(e){var t=e.target.result,o=i,n=b.tableFullColumn,r=b._importResolve,e=b._importReject,a={fields:[],rows:[]};switch(o.type){case"csv":a=parseCsv(n,t);break;case"txt":a=parseTxt(n,t);break;case"html":a=parseHTML(n,t);break;case"xml":a=parseXML(n,t)}var l=a.fields,c=a.rows;checkImportData(n,l)?w.createData(c).then(function(e){e="insert"===o.mode?w.insert(e):w.reloadData(e);return!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.table.impSuccess",[c.length]),status:"success"})),e.then(function(){r&&r({status:!0})})}):!1!==o.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.impFields"),status:"error"}),e)&&e({status:!1})},e.readAsText(a,i.encoding||"UTF-8")})):("development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notExp"),e({status:!0}))}).then(function(){t&&t({status:!0,options:l,$table:w})}).catch(function(e){return t&&t({status:!1,options:l,$table:w}),Promise.reject(e)}):(!1!==l.message&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.notType",[s]),status:"error"})),Promise.reject({status:!1}))}function o(e,t){var o=C.treeConfig,n=C.showHeader,r=C.showFooter,a=k.initStore,l=k.mergeList,c=k.isGroup,i=k.footerTableData,s=k.exportStore,d=k.exportParams,u=b.collectColumn,p=x.value,f=w.getCheckboxRecords(),i=!!i.length,l=!o&&l.length,r=(n=Object.assign({message:!0,isHeader:n,isFooter:r},e)).types||_vXETable.VXETable.config.exportTypes,e=n.modes,h=p.checkMethod,p=u.slice(0),m=n.columns,u=r.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),v=e.map(function(e){return{value:e,label:"vxe.export.modes.".concat(e)}});_xeUtils.default.eachTree(p,function(n,e,t,o,r){(n.children&&n.children.length||defaultFilterExportColumn(n))&&(n.checked=m?m.some(function(e){var t,o;return(0,_util.isColumnInfo)(e)?n===e:_xeUtils.default.isString(e)?n.field===e:(t=e.id||e.colId,o=e.type,e=e.property||e.field,t?n.id===t:e&&o?n.property===e&&n.type===o:e?n.property===e:!!o&&n.type===o)}):n.visible,n.halfChecked=!1,n.disabled=r&&r.disabled||!!h&&!h({column:n}))}),Object.assign(s,{columns:p,typeList:u,modeList:v,hasFooter:i,hasMerge:l,hasTree:o,isPrint:t,hasColgroup:c,visible:!0}),Object.assign(d,{mode:f.length?"selected":"current"},n),-1===e.indexOf(d.mode)&&(d.mode=e[0]),-1===r.indexOf(d.type)&&(d.type=r[0]),a.export=!0,(0,_vue.nextTick)()}var u=function(d,r,e){var a,u,p=d.isAllExpand,f=d.mode,t=C.treeConfig,h=l.value,m=i.value,o=M.value,v=s.value;return htmlCellElem=htmlCellElem||document.createElement("div"),t?(t=o.children||o.childrenField,a=[],u=new Map,_xeUtils.default.eachTree(e,function(e,l,t,c,o,n){var i,s=e._row||e,e=o&&o._row?o._row:o;(p||!e||u.has(e)&&w.isTreeExpandByRow(e))&&(o=s,e=(e=M.value).children||e.childrenField,o=o[e]&&o[e].length,i={_row:s,_level:n.length-1,_hasChild:o,_expand:o&&w.isTreeExpandByRow(s)},r.forEach(function(e,t){var o,n="",r=e.editRender||e.cellRender,a=e.exportMethod;if(a=(a=!a&&r&&r.name&&(r=_vXETable.VXETable.renderer.get(r.name))?r.exportMethod:a)||v.exportMethod)n=a({$table:w,row:s,column:e,options:d});else switch(e.type){case"seq":n="all"===f?c.map(function(e,t){return t%2==0?Number(e)+1:"."}).join(""):g(s,l,e,t);break;case"checkbox":n=T(w.isCheckedByCheckboxRow(s)),i._checkboxLabel=m.labelField?_xeUtils.default.get(s,m.labelField):"",i._checkboxDisabled=m.checkMethod&&!m.checkMethod({row:s});break;case"radio":n=T(w.isCheckedByRadioRow(s)),i._radioLabel=h.labelField?_xeUtils.default.get(s,h.labelField):"",i._radioDisabled=h.checkMethod&&!h.checkMethod({row:s});break;default:d.original?n=(0,_util.getCellValue)(s,e):(n=w.getCellLabel(s,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(o=w.getCell(s,e))&&(n=o.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(n)}),u.set(s,1),a.push(Object.assign(i,s)))},{children:t}),a):e.map(function(l,c){var i={_row:l};return r.forEach(function(e,t){var o,n="",r=e.editRender||e.cellRender,a=e.exportMethod;if(a=!a&&r&&r.name&&(r=_vXETable.VXETable.renderer.get(r.name))?r.exportMethod:a)n=a({$table:w,row:l,column:e,options:d});else switch(e.type){case"seq":n="all"===f?c+1:g(l,c,e,t);break;case"checkbox":n=T(w.isCheckedByCheckboxRow(l)),i._checkboxLabel=m.labelField?_xeUtils.default.get(l,m.labelField):"",i._checkboxDisabled=m.checkMethod&&!m.checkMethod({row:l});break;case"radio":n=T(w.isCheckedByRadioRow(l)),i._radioLabel=h.labelField?_xeUtils.default.get(l,h.labelField):"",i._radioDisabled=h.checkMethod&&!h.checkMethod({row:l});break;default:d.original?n=(0,_util.getCellValue)(l,e):(n=w.getCellLabel(l,e),"html"===e.type?(htmlCellElem.innerHTML=n,n=htmlCellElem.innerText.trim()):(o=w.getCell(l,e))&&(n=o.innerText.trim()))}i[e.id]=_xeUtils.default.toValueString(n)}),i})},p=function(o,e,t){var n=csvBOM;return o.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(N(o,e))}).join(",")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))}).join(",")+enterSymbol}),o.isFooter&&(t=k.footerTableData,getFooterData(o,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(j(o,t,e))}).join(",")+enterSymbol})),n},f=function(o,e,t){var n="";return o.isHeader&&(n+=e.map(function(e){return toTxtCellLabel(N(o,e))}).join("\t")+enterSymbol),t.forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(t[e.id])}).join("\t")+enterSymbol}),o.isFooter&&(t=k.footerTableData,getFooterData(o,t).forEach(function(t){n+=e.map(function(e){return toTxtCellLabel(j(o,t,e))}).join(",")+enterSymbol})),n},h=function(c,e,t){var s=C.id,o=C.border,n=C.treeConfig,i=C.headerAlign,d=C.align,a=C.footerAlign,u=C.showOverflow,p=C.showHeaderOverflow,f=k.isAllSelected,r=k.isIndeterminate,h=k.mergeList,l=M.value,m=c.print,v=c.isHeader,g=c.isFooter,x=c.isColgroup,b=c.isMerge,_=c.colgroups,y=c.original,T="check-all",o=["vxe-table","border--".concat(toTableBorder(o)),m?"is--print":"",v?"is--header":""].filter(function(e){return e}),E=['<table class="'.concat(o.join(" "),'" border="0" cellspacing="0" cellpadding="0">'),"<colgroup>".concat(e.map(function(e){return'<col style="width:'.concat(e.renderWidth,'px">')}).join(""),"</colgroup>")],x=(v&&(E.push("<thead>"),x&&!y?_.forEach(function(e){E.push("<tr>".concat(e.map(function(t){var e=t.headerAlign||t.align||i||d,o=D(t,"showHeaderOverflow",p)?["col--ellipsis"]:[],n=N(c,t),r=0,a=0,l=(_xeUtils.default.eachTree([t],function(e){e.childNodes&&t.childNodes.length||a++,r+=e.renderWidth},{children:"childNodes"}),r-a);return e&&o.push("col--".concat(e)),"checkbox"===t.type?'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'"><div ').concat(m?"":'style="width: '.concat(l,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(f?"checked":"","><span>").concat(n,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" colspan="').concat(t._colSpan,'" rowspan="').concat(t._rowSpan,'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(l,'px"'),"><span>").concat((0,_utils.formatText)(n,!0),"</span></div></th>")}).join(""),"</tr>"))}):E.push("<tr>".concat(e.map(function(e){var t=e.headerAlign||e.align||i||d,o=D(e,"showHeaderOverflow",p)?["col--ellipsis"]:[],n=N(c,e);return t&&o.push("col--".concat(t)),"checkbox"===e.type?'<th class="'.concat(o.join(" "),'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" class="').concat(T,'" ').concat(f?"checked":"","><span>").concat(n,"</span></div></th>"):'<th class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),"><span>").concat((0,_utils.formatText)(n,!0),"</span></div></th>")}).join(""),"</tr>")),E.push("</thead>")),t.length&&(E.push("<tbody>"),n?t.forEach(function(r){E.push("<tr>"+e.map(function(e){var t=e.align||d,o=D(e,"showOverflow",u)?["col--ellipsis"]:[],n=r[e.id];return t&&o.push("col--".concat(t)),e.treeNode?(t="",r._hasChild&&(t='<i class="'.concat(r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon",'"></i>')),o.push("vxe-table--tree-node"),"radio"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(r._level*l.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_').concat(s,'" ').concat(r._radioDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._radioLabel,"</span></div></div></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(r._level*l.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell"><input type="checkbox" ').concat(r._checkboxDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._checkboxLabel,"</span></div></div></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><div class="vxe-table--tree-node-wrapper" style="padding-left: ').concat(r._level*l.indent,'px"><div class="vxe-table--tree-icon-wrapper">').concat(t,'</div><div class="vxe-table--tree-cell">').concat(n,"</div></div></div></td>")):"radio"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(s,'" ').concat(r._radioDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(r._checkboxDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(r._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat((0,_utils.formatText)(n,!0),"</div></td>")}).join("")+"</tr>")}):t.forEach(function(i){E.push("<tr>"+e.map(function(e){var t=e.align||d,o=D(e,"showOverflow",u)?["col--ellipsis"]:[],n=i[e.id],r=1,a=1;if(b&&h.length){var l=w.getVTRowIndex(i._row),c=w.getVTColumnIndex(e),l=(0,_util.mergeBodyMethod)(h,l,c);if(l){c=l.rowspan,l=l.colspan;if(!c||!l)return"";1<c&&(r=c),1<l&&(a=l)}}return t&&o.push("col--".concat(t)),"radio"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(r,'" colspan="').concat(a,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="radio" name="radio_').concat(s,'" ').concat(i._radioDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(i._radioLabel,"</span></div></td>"):"checkbox"===e.type?'<td class="'.concat(o.join(" "),'" rowspan="').concat(r,'" colspan="').concat(a,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),'><input type="checkbox" ').concat(i._checkboxDisabled?"disabled ":"").concat(getBooleanValue(n)?"checked":"","><span>").concat(i._checkboxLabel,"</span></div></td>"):'<td class="'.concat(o.join(" "),'" rowspan="').concat(r,'" colspan="').concat(a,'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat((0,_utils.formatText)(n,!0),"</div></td>")}).join("")+"</tr>")}),E.push("</tbody>")),g&&(o=k.footerTableData,(v=getFooterData(c,o)).length)&&(E.push("<tfoot>"),v.forEach(function(r){E.push("<tr>".concat(e.map(function(e){var t=e.footerAlign||e.align||a||d,o=D(e,"showOverflow",u)?["col--ellipsis"]:[],n=j(c,r,e);return t&&o.push("col--".concat(t)),'<td class="'.concat(o.join(" "),'" title="').concat(n,'"><div ').concat(m?"":'style="width: '.concat(e.renderWidth,'px"'),">").concat((0,_utils.formatText)(n,!0),"</div></td>")}).join(""),"</tr>"))}),E.push("</tfoot>")),!f&&r?'<script>(function(){var a=document.querySelector(".'.concat(T,'");if(a){a.indeterminate=true}})()<\/script>'):"");return E.push("</table>",x),m?E.join(""):(0,_util2.createHtmlPage)(c,E.join(""))},m=function(o,e,t){var n=['<?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="'.concat(o.sheetName,'">'),"<Table>",e.map(function(e){return'<Column ss:Width="'.concat(e.renderWidth,'"/>')}).join("")].join("");return o.isHeader&&(n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(N(o,e),"</Data></Cell>")}).join(""),"</Row>")),t.forEach(function(t){n+="<Row>"+e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(t[e.id],"</Data></Cell>")}).join("")+"</Row>"}),o.isFooter&&(t=k.footerTableData,getFooterData(o,t).forEach(function(t){n+="<Row>".concat(e.map(function(e){return'<Cell><Data ss:Type="String">'.concat(j(o,t,e),"</Data></Cell>")}).join(""),"</Row>")})),"".concat(n,"</Table></Worksheet></Workbook>")},d={exportData:function(e){var t=C.treeConfig,o=k.isGroup,n=k.tableGroupColumn,a=b.tableFullColumn,r=b.afterFullData,l=_.value,c=M.value,i=Object.assign({isHeader:!0,isFooter:!0,isColgroup:!0,download:!0,type:"csv",mode:"current"},l,{print:!1},e),l=i.type,e=i.mode,s=i.columns,d=i.original,u=i.beforeExportMethod,p=[],s=s&&s.length?s:null,f=i.columnFilterMethod,h=(s||(f=f||(d?function(e){return e.column.property}:function(e){return defaultFilterExportColumn(e.column)})),p=s?(i._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(s,function(e){var t,o,n,r;if(e)return(0,_util.isColumnInfo)(e)?t=e:_xeUtils.default.isString(e)?t=w.getColumnByField(e):(o=e.id||e.colId,n=e.type,r=e.property||e.field,o?t=w.getColumnById(o):r&&n?t=a.find(function(e){return e.property===r&&e.type===n}):r?t=w.getColumnByField(r):n&&(t=a.find(function(e){return e.type===n}))),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(o?n:a,function(e,t){return e.visible&&(!f||f({column:e,$columnIndex:t}))},{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(p,function(e){e.children&&e.children.length||h.push(e)},{children:"childNodes"}),i.columns=h,i.colgroups=convertToRows(p),i.filename||(i.filename=_conf.default.i18n(i.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),i.sheetName||(i.sheetName=document.title),!i.exportMethod&&!_xeUtils.default.includes(_vXETable.VXETable.config.exportTypes,l))return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notType",[l]),Promise.reject({status:!1});if(i.print||u&&u({options:i,$table:w,$grid:y}),!i.data)if(i.data=r,"selected"===e){var m=w.getCheckboxRecords();-1<["html","pdf"].indexOf(l)&&t?i.data=_xeUtils.default.searchTree(w.getTableData().fullData,function(e){return-1<w.findRowIndexOf(m,e)},Object.assign({},c,{data:"_row"})):i.data=m}else if("all"===e&&("development"!==process.env.NODE_ENV||y||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),y)&&!i.remote){var v,d=y.reactData,s=y.getComputeMaps().computeProxyOpts.value,o=s.beforeQueryAll,g=s.afterQueryAll,n=s.ajax,p=s.props,x=void 0===p?{}:p,u=(void 0===n?{}:n).queryAll;if("development"!==process.env.NODE_ENV||u||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),u)return v={$table:w,$grid:y,sort:d.sortData,filters:d.filterData,form:d.formData,target:u,options:i},Promise.resolve((o||u)(v)).catch(function(e){return e}).then(function(e){return i.data=(x.list?_xeUtils.default.get(e,x.list):e)||[],g&&g(v),E(i)})}return E(i)},importByFile:function(e,t){var t=Object.assign({},t),o=t.beforeImportMethod;return o&&o({options:t,$table:w}),r(e,t)},importData:function(e){var t=c.value,o=Object.assign({types:_vXETable.VXETable.config.importTypes},t,e),t=o.beforeImportMethod,n=o.afterImportMethod;return t&&t({options:o,$table:w}),(0,_util2.readLocalFile)(o).catch(function(e){return n&&n({status:!1,options:o,$table:w}),Promise.reject(e)}).then(function(e){e=e.file;return r(e,o)})},saveFile:function(e){return(0,_util2.saveLocalFile)(e)},readFile:function(e){return(0,_util2.readLocalFile)(e)},print:function(e){var t=n.value,o=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return o.sheetName||(o.sheetName=document.title),new Promise(function(e){o.content?e((0,_util2.handlePrint)(w,o,o.content)):e(d.exportData(o).then(function(e){e=e.content;return(0,_util2.handlePrint)(w,o,e)}))})},openImport:function(e){var t=C.treeConfig,o=C.importConfig,n=k.initStore,r=k.importStore,a=k.importParams,l=c.value,e=Object.assign({mode:"insert",message:!0,types:_vXETable.VXETable.config.importTypes},e,l),l=e.types;!t?(o||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=l.map(function(e){return{value:e,label:"vxe.export.types.".concat(e)}}),o=e.modes.map(function(e){return{value:e,label:"vxe.import.modes.".concat(e)}}),Object.assign(r,{file:null,type:"",filename:"",modeList:o,typeList:t,visible:!0}),Object.assign(a,e),n.import=!0):e.message&&_vXETable.VXETable.modal.message({content:_conf.default.i18n("vxe.error.treeNotImp"),status:"error"})},openExport:function(e){var t=_.value;"development"!==process.env.NODE_ENV||C.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),o(Object.assign({},t,e))},openPrint:function(e){var t=n.value;"development"!==process.env.NODE_ENV||C.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),o(Object.assign({},t,e),!0)}};return d},setupGrid:function(e){return e.extendTableMethods(tableExportMethodKeys)}},_default=tableExportHook;exports.default=_default;
|