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.
Files changed (59) hide show
  1. package/README.en.md +1 -1
  2. package/README.md +1 -1
  3. package/README.zh-TW.md +1 -1
  4. package/es/export/src/hook.js +2 -1
  5. package/es/icon/style.css +1 -1
  6. package/es/keyboard/src/hook.js +2 -1
  7. package/es/style.css +1 -1
  8. package/es/style.min.css +1 -1
  9. package/es/table/src/body.js +4 -2
  10. package/es/table/src/table.js +35 -25
  11. package/es/table/style.css +2 -2
  12. package/es/tools/log.js +1 -1
  13. package/es/v-x-e-table/index.js +1 -1
  14. package/es/validator/src/hook.js +2 -1
  15. package/es/vxe-table/style.css +2 -2
  16. package/lib/export/src/hook.js +4 -1
  17. package/lib/export/src/hook.min.js +1 -1
  18. package/lib/icon/style/style.css +1 -1
  19. package/lib/icon/style/style.min.css +1 -1
  20. package/lib/index.umd.js +93 -29
  21. package/lib/index.umd.min.js +1 -1
  22. package/lib/keyboard/src/hook.js +4 -1
  23. package/lib/keyboard/src/hook.min.js +1 -1
  24. package/lib/style.css +1 -1
  25. package/lib/style.min.css +1 -1
  26. package/lib/table/src/body.js +4 -2
  27. package/lib/table/src/body.min.js +1 -1
  28. package/lib/table/src/table.js +77 -25
  29. package/lib/table/src/table.min.js +1 -1
  30. package/lib/table/style/style.css +2 -2
  31. package/lib/table/style/style.min.css +1 -1
  32. package/lib/tools/log.js +1 -1
  33. package/lib/tools/log.min.js +1 -1
  34. package/lib/v-x-e-table/index.js +1 -1
  35. package/lib/v-x-e-table/index.min.js +1 -1
  36. package/lib/validator/src/hook.js +4 -1
  37. package/lib/validator/src/hook.min.js +1 -1
  38. package/lib/vxe-table/style/style.css +2 -2
  39. package/lib/vxe-table/style/style.min.css +1 -1
  40. package/package.json +2 -2
  41. package/packages/export/src/hook.ts +2 -1
  42. package/packages/keyboard/src/hook.ts +2 -1
  43. package/packages/table/src/body.ts +4 -2
  44. package/packages/table/src/table.ts +33 -23
  45. package/packages/validator/src/hook.ts +2 -1
  46. package/styles/table.scss +6 -2
  47. package/types/v-x-e-table/index.d.ts +1 -1
  48. /package/es/icon/style/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
  49. /package/es/icon/style/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
  50. /package/es/icon/style/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
  51. /package/es/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
  52. /package/es/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
  53. /package/es/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
  54. /package/lib/icon/style/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
  55. /package/lib/icon/style/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
  56. /package/lib/icon/style/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
  57. /package/lib/{iconfont.1692577799119.ttf → iconfont.1693010447356.ttf} +0 -0
  58. /package/lib/{iconfont.1692577799119.woff → iconfont.1693010447356.woff} +0 -0
  59. /package/lib/{iconfont.1692577799119.woff2 → iconfont.1693010447356.woff2} +0 -0
@@ -694,8 +694,10 @@ export default defineComponent({
694
694
  onBeforeUnmount(function () {
695
695
  var el = refElem.value;
696
696
  clearTimeout(wheelTime);
697
- el._onscroll = null;
698
- el.onscroll = null;
697
+ if (el) {
698
+ el._onscroll = null;
699
+ el.onscroll = null;
700
+ }
699
701
  });
700
702
  onUnmounted(function () {
701
703
  var fixedType = props.fixedType;
@@ -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 : (childrenField) });
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, treeOpts);
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
- }, treeOpts);
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
- }, treeOpts);
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 treeOpts_1 = computeTreeOpts.value;
1974
- var expandAll = treeOpts_1.expandAll, expandRowKeys = treeOpts_1.expandRowKeys;
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); }, treeOpts_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]; }, treeOpts);
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); }, treeOpts);
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
- }, treeOpts);
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); }, treeOpts);
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
- }, treeOpts);
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, treeOpts);
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
- }, treeOpts);
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
- }, treeOpts);
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); }, treeOpts);
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; }, treeOpts).parent;
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, treeOpts);
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 && !treeOpts.transform) {
5007
- XEUtils.eachTree(sourceData, handleSourceRow, treeOpts);
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
- }, treeOpts);
5288
+ }, { children: childrenField });
5280
5289
  }
5281
5290
  // 如果存在父节点,更新父节点状态
5282
- var matchObj = XEUtils.findTree(afterFullData, function (item) { return $xetable.eqRow(item, row); }, treeOpts);
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
- }, treeOpts);
5368
+ }, { children: childrenField });
5360
5369
  }
5361
5370
  // 如果存在父节点,更新父节点状态
5362
- var matchObj = XEUtils.findTree(afterFullData, function (item) { return $xetable.eqRow(item, row); }, treeOpts);
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 matchObj = XEUtils.findTree(tableFullData, function (item) { return $xetable.eqRow(item, row); }, treeOpts);
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) {
@@ -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", "] ").concat(GlobalConfig.i18n(message, params));
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) {
@@ -84,7 +84,7 @@ export var config = new VXETableConfig();
84
84
  export var v = 'v4';
85
85
  export var VXETable = {
86
86
  v: v,
87
- version: "4.5.3",
87
+ version: "4.5.6",
88
88
  setup: setup,
89
89
  interceptor: interceptor,
90
90
  renderer: renderer,
@@ -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, treeOpts);
178
+ XEUtils.eachTree(vaildDatas, handleVaild, { children: childrenField });
178
179
  }
179
180
  else {
180
181
  vaildDatas.forEach(handleVaild);
@@ -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,
@@ -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
- }, treeOpts);
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;