vxe-table 3.17.0 → 3.17.1

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 (34) hide show
  1. package/es/style.css +1 -1
  2. package/es/table/module/custom/mixin.js +10 -0
  3. package/es/table/module/custom/panel.js +1 -1
  4. package/es/table/src/methods.js +22 -9
  5. package/es/table/src/table.js +10 -2
  6. package/es/ui/index.js +2 -1
  7. package/es/ui/src/log.js +1 -1
  8. package/lib/index.umd.js +65 -14
  9. package/lib/index.umd.min.js +1 -1
  10. package/lib/style.css +1 -1
  11. package/lib/table/module/custom/mixin.js +12 -0
  12. package/lib/table/module/custom/mixin.min.js +1 -1
  13. package/lib/table/module/custom/panel.js +1 -1
  14. package/lib/table/module/custom/panel.min.js +1 -1
  15. package/lib/table/src/methods.js +35 -9
  16. package/lib/table/src/methods.min.js +1 -1
  17. package/lib/table/src/table.js +14 -2
  18. package/lib/table/src/table.min.js +1 -1
  19. package/lib/ui/index.js +2 -1
  20. package/lib/ui/index.min.js +1 -1
  21. package/lib/ui/src/log.js +1 -1
  22. package/lib/ui/src/log.min.js +1 -1
  23. package/package.json +1 -1
  24. package/packages/table/module/custom/mixin.ts +11 -0
  25. package/packages/table/module/custom/panel.ts +1 -1
  26. package/packages/table/src/methods.ts +22 -9
  27. package/packages/table/src/table.ts +11 -3
  28. package/packages/ui/index.ts +1 -0
  29. /package/es/{iconfont.1753928711953.ttf → iconfont.1754358049869.ttf} +0 -0
  30. /package/es/{iconfont.1753928711953.woff → iconfont.1754358049869.woff} +0 -0
  31. /package/es/{iconfont.1753928711953.woff2 → iconfont.1754358049869.woff2} +0 -0
  32. /package/lib/{iconfont.1753928711953.ttf → iconfont.1754358049869.ttf} +0 -0
  33. /package/lib/{iconfont.1753928711953.woff → iconfont.1754358049869.woff} +0 -0
  34. /package/lib/{iconfont.1753928711953.woff2 → iconfont.1754358049869.woff2} +0 -0
@@ -18,6 +18,12 @@ function emitCustomEvent($xeTable, type, evnt) {
18
18
  }
19
19
  export default {
20
20
  methods: {
21
+ _getCustomVisible() {
22
+ const $xeTable = this;
23
+ const reactData = $xeTable;
24
+ const { customStore } = reactData;
25
+ return customStore.visible;
26
+ },
21
27
  _openCustom() {
22
28
  const $xeTable = this;
23
29
  const reactData = $xeTable;
@@ -54,6 +60,7 @@ export default {
54
60
  _saveCustom() {
55
61
  const $xeTable = this;
56
62
  const reactData = $xeTable;
63
+ const internalData = $xeTable;
57
64
  const { customColumnList, aggHandleFields, rowGroupList } = reactData;
58
65
  const customOpts = $xeTable.computeCustomOpts;
59
66
  const { allowVisible, allowSort, allowFixed, allowResizable, allowGroup, allowValues } = customOpts;
@@ -102,6 +109,9 @@ export default {
102
109
  $xeTable.handleUpdateAggData();
103
110
  }
104
111
  }
112
+ if (allowSort) {
113
+ internalData.collectColumn = customColumnList;
114
+ }
105
115
  return $xeTable.saveCustomStore('confirm');
106
116
  },
107
117
  _cancelCustom() {
@@ -1085,7 +1085,7 @@ export default {
1085
1085
  }
1086
1086
  }
1087
1087
  }
1088
- if (!targetFixed !== null) {
1088
+ if (targetFixed !== null) {
1089
1089
  $xeTable.dispatchEvent('custom-fixed-change', { column, fixed: targetFixed }, evnt);
1090
1090
  }
1091
1091
  },
@@ -251,8 +251,8 @@ function cacheColumnMap($xeTable) {
251
251
  const reactData = $xeTable;
252
252
  const internalData = $xeTable;
253
253
  const { tableFullColumn, collectColumn } = internalData;
254
- const fullColumnIdData = internalData.fullColumnIdData = {};
255
- const fullColumnFieldData = internalData.fullColumnFieldData = {};
254
+ const fullColIdData = internalData.fullColumnIdData = {};
255
+ const fullColFieldData = internalData.fullColumnFieldData = {};
256
256
  const mouseOpts = $xeTable.computeMouseOpts;
257
257
  const expandOpts = $xeTable.computeExpandOpts;
258
258
  const columnOpts = $xeTable.computeColumnOpts;
@@ -274,10 +274,10 @@ function cacheColumnMap($xeTable) {
274
274
  const { id: colid, field, fixed, type, treeNode, rowGroupNode } = column;
275
275
  const rest = { $index: -1, _index: -1, column, colid, index, items, parent: parentColumn || null, width: 0, oLeft: 0 };
276
276
  if (field) {
277
- if (fullColumnFieldData[field]) {
277
+ if (fullColFieldData[field]) {
278
278
  errLog('vxe.error.colRepet', ['field', field]);
279
279
  }
280
- fullColumnFieldData[field] = rest;
280
+ fullColFieldData[field] = rest;
281
281
  }
282
282
  else {
283
283
  if ((storage && !type) || (columnOpts.drag && (isCrossDrag || isSelfToChildDrag))) {
@@ -333,10 +333,10 @@ function cacheColumnMap($xeTable) {
333
333
  if (isAllOverflow && column.showOverflow === false) {
334
334
  isAllOverflow = false;
335
335
  }
336
- if (fullColumnIdData[colid]) {
336
+ if (fullColIdData[colid]) {
337
337
  errLog('vxe.error.colRepet', ['colId', colid]);
338
338
  }
339
- fullColumnIdData[colid] = rest;
339
+ fullColIdData[colid] = rest;
340
340
  };
341
341
  if (isGroup) {
342
342
  XEUtils.eachTree(collectColumn, (column, index, items, path, parentColumn, nodes) => {
@@ -352,10 +352,10 @@ function cacheColumnMap($xeTable) {
352
352
  }
353
353
  if (htmlColumn) {
354
354
  if (!columnOpts.useKey) {
355
- errLog('vxe.error.reqProp', ['column-config.useKey & column.type=html']);
355
+ errLog('vxe.error.notSupportProp', ['column.type=html', 'column-config.useKey=false', 'column-config.useKey=true']);
356
356
  }
357
357
  if (!rowOpts.useKey) {
358
- errLog('vxe.error.reqProp', ['row-config.useKey & column.type=html']);
358
+ errLog('vxe.error.notSupportProp', ['column.type=html', 'row-config.useKey=false', 'row-config.useKey=true']);
359
359
  }
360
360
  }
361
361
  reactData.isGroup = isGroup;
@@ -3273,15 +3273,28 @@ function parseColumns($xeTable, isReset) {
3273
3273
  function initColumnHierarchy($xeTable) {
3274
3274
  const internalData = $xeTable;
3275
3275
  const { collectColumn } = internalData;
3276
+ const fullColIdData = {};
3277
+ const fullColFieldData = {};
3276
3278
  let sortIndex = 1;
3277
3279
  XEUtils.eachTree(collectColumn, (column, index, items, path, parentColumn) => {
3280
+ const { id: colid, field } = column;
3278
3281
  const parentId = parentColumn ? parentColumn.id : null;
3282
+ const rest = { $index: -1, _index: -1, column, colid, index, items, parent: parentColumn || null, width: 0, oLeft: 0 };
3279
3283
  column.parentId = parentId;
3280
3284
  column.defaultParentId = parentId;
3281
3285
  column.sortNumber = sortIndex;
3282
3286
  column.renderSortNumber = sortIndex;
3283
3287
  sortIndex++;
3288
+ if (field) {
3289
+ if (fullColFieldData[field]) {
3290
+ errLog('vxe.error.colRepet', ['field', field]);
3291
+ }
3292
+ fullColFieldData[field] = rest;
3293
+ }
3294
+ fullColIdData[colid] = rest;
3284
3295
  });
3296
+ internalData.fullColumnIdData = fullColIdData;
3297
+ internalData.fullColumnFieldData = fullColFieldData;
3285
3298
  }
3286
3299
  function handleInitColumn($xeTable, collectColumn) {
3287
3300
  const $xeToolbar = $xeTable.$refs.$xeToolbar;
@@ -10797,7 +10810,7 @@ const Methods = {
10797
10810
  }
10798
10811
  };
10799
10812
  // Module methods
10800
- const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,saveFilterPanelByEvent,resetFilterPanel,resetFilterPanelByEvent,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getEditCell,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,toggleCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
10813
+ const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,saveFilterPanelByEvent,resetFilterPanel,resetFilterPanelByEvent,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getEditCell,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,getCustomVisible,openCustom,closeCustom,toggleCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
10801
10814
  funcs.forEach(name => {
10802
10815
  Methods[name] = function (...args) {
10803
10816
  if (!this[`_${name}`]) {
@@ -758,12 +758,20 @@ export default {
758
758
  computeVirtualXOpts() {
759
759
  const $xeTable = this;
760
760
  const props = $xeTable;
761
- return Object.assign({}, getConfig().table.virtualXConfig || getConfig().table.scrollX, props.virtualXConfig || props.scrollX);
761
+ const { virtualXConfig } = props;
762
+ if (virtualXConfig) {
763
+ return Object.assign({}, getConfig().table.virtualXConfig, virtualXConfig);
764
+ }
765
+ return Object.assign({}, getConfig().table.virtualXConfig, getConfig().table.scrollX, props.scrollX);
762
766
  },
763
767
  computeVirtualYOpts() {
764
768
  const $xeTable = this;
765
769
  const props = $xeTable;
766
- return Object.assign({}, getConfig().table.virtualYConfig || getConfig().table.scrollY, props.virtualYConfig || props.scrollY);
770
+ const { virtualYConfig } = props;
771
+ if (virtualYConfig) {
772
+ return Object.assign({}, getConfig().table.virtualYConfig, virtualYConfig);
773
+ }
774
+ return Object.assign({}, getConfig().table.virtualYConfig, getConfig().table.scrollY, props.scrollY);
767
775
  },
768
776
  computeScrollbarOpts() {
769
777
  const $xeTable = this;
package/es/ui/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  import { getFuncText } from './src/utils';
3
- export const version = "3.17.0";
3
+ export const version = "3.17.1";
4
4
  VxeUI.version = version;
5
5
  VxeUI.tableVersion = version;
6
6
  VxeUI.setConfig({
@@ -221,6 +221,7 @@ VxeUI.setConfig({
221
221
  },
222
222
  virtualYConfig: {
223
223
  // enabled: false,
224
+ // mode: 'wheel',
224
225
  gt: 100,
225
226
  preSize: 1,
226
227
  oSize: 0
package/es/ui/src/log.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const version = `table v${"3.17.0"}`;
3
+ const version = `table v${"3.17.1"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
package/lib/index.umd.js CHANGED
@@ -2002,7 +2002,7 @@ function getClass(property, params) {
2002
2002
  ;// CONCATENATED MODULE: ./packages/ui/index.ts
2003
2003
 
2004
2004
 
2005
- const version = "3.17.0";
2005
+ const version = "3.17.1";
2006
2006
  core_.VxeUI.version = version;
2007
2007
  core_.VxeUI.tableVersion = version;
2008
2008
  core_.VxeUI.setConfig({
@@ -2223,6 +2223,7 @@ core_.VxeUI.setConfig({
2223
2223
  },
2224
2224
  virtualYConfig: {
2225
2225
  // enabled: false,
2226
+ // mode: 'wheel',
2226
2227
  gt: 100,
2227
2228
  preSize: 1,
2228
2229
  oSize: 0
@@ -2668,7 +2669,7 @@ function isNodeElement(elem) {
2668
2669
  const {
2669
2670
  log: log_log
2670
2671
  } = core_.VxeUI;
2671
- const log_version = `table v${"3.17.0"}`;
2672
+ const log_version = `table v${"3.17.1"}`;
2672
2673
  const warnLog = log_log.create('warn', log_version);
2673
2674
  const errLog = log_log.create('error', log_version);
2674
2675
  ;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
@@ -5569,8 +5570,8 @@ function cacheColumnMap($xeTable) {
5569
5570
  tableFullColumn,
5570
5571
  collectColumn
5571
5572
  } = internalData;
5572
- const fullColumnIdData = internalData.fullColumnIdData = {};
5573
- const fullColumnFieldData = internalData.fullColumnFieldData = {};
5573
+ const fullColIdData = internalData.fullColumnIdData = {};
5574
+ const fullColFieldData = internalData.fullColumnFieldData = {};
5574
5575
  const mouseOpts = $xeTable.computeMouseOpts;
5575
5576
  const expandOpts = $xeTable.computeExpandOpts;
5576
5577
  const columnOpts = $xeTable.computeColumnOpts;
@@ -5614,10 +5615,10 @@ function cacheColumnMap($xeTable) {
5614
5615
  oLeft: 0
5615
5616
  };
5616
5617
  if (field) {
5617
- if (fullColumnFieldData[field]) {
5618
+ if (fullColFieldData[field]) {
5618
5619
  errLog('vxe.error.colRepet', ['field', field]);
5619
5620
  }
5620
- fullColumnFieldData[field] = rest;
5621
+ fullColFieldData[field] = rest;
5621
5622
  } else {
5622
5623
  if (storage && !type || columnOpts.drag && (isCrossDrag || isSelfToChildDrag)) {
5623
5624
  errLog('vxe.error.reqProp', [`${column.getTitle() || type || ''} -> column.field=?`]);
@@ -5671,10 +5672,10 @@ function cacheColumnMap($xeTable) {
5671
5672
  if (isAllOverflow && column.showOverflow === false) {
5672
5673
  isAllOverflow = false;
5673
5674
  }
5674
- if (fullColumnIdData[colid]) {
5675
+ if (fullColIdData[colid]) {
5675
5676
  errLog('vxe.error.colRepet', ['colId', colid]);
5676
5677
  }
5677
- fullColumnIdData[colid] = rest;
5678
+ fullColIdData[colid] = rest;
5678
5679
  };
5679
5680
  if (isGroup) {
5680
5681
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn, (column, index, items, path, parentColumn, nodes) => {
@@ -5689,10 +5690,10 @@ function cacheColumnMap($xeTable) {
5689
5690
  }
5690
5691
  if (htmlColumn) {
5691
5692
  if (!columnOpts.useKey) {
5692
- errLog('vxe.error.reqProp', ['column-config.useKey & column.type=html']);
5693
+ errLog('vxe.error.notSupportProp', ['column.type=html', 'column-config.useKey=false', 'column-config.useKey=true']);
5693
5694
  }
5694
5695
  if (!rowOpts.useKey) {
5695
- errLog('vxe.error.reqProp', ['row-config.useKey & column.type=html']);
5696
+ errLog('vxe.error.notSupportProp', ['column.type=html', 'row-config.useKey=false', 'row-config.useKey=true']);
5696
5697
  }
5697
5698
  }
5698
5699
  reactData.isGroup = isGroup;
@@ -9134,15 +9135,41 @@ function initColumnHierarchy($xeTable) {
9134
9135
  const {
9135
9136
  collectColumn
9136
9137
  } = internalData;
9138
+ const fullColIdData = {};
9139
+ const fullColFieldData = {};
9137
9140
  let sortIndex = 1;
9138
9141
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn, (column, index, items, path, parentColumn) => {
9142
+ const {
9143
+ id: colid,
9144
+ field
9145
+ } = column;
9139
9146
  const parentId = parentColumn ? parentColumn.id : null;
9147
+ const rest = {
9148
+ $index: -1,
9149
+ _index: -1,
9150
+ column,
9151
+ colid,
9152
+ index,
9153
+ items,
9154
+ parent: parentColumn || null,
9155
+ width: 0,
9156
+ oLeft: 0
9157
+ };
9140
9158
  column.parentId = parentId;
9141
9159
  column.defaultParentId = parentId;
9142
9160
  column.sortNumber = sortIndex;
9143
9161
  column.renderSortNumber = sortIndex;
9144
9162
  sortIndex++;
9163
+ if (field) {
9164
+ if (fullColFieldData[field]) {
9165
+ errLog('vxe.error.colRepet', ['field', field]);
9166
+ }
9167
+ fullColFieldData[field] = rest;
9168
+ }
9169
+ fullColIdData[colid] = rest;
9145
9170
  });
9171
+ internalData.fullColumnIdData = fullColIdData;
9172
+ internalData.fullColumnFieldData = fullColFieldData;
9146
9173
  }
9147
9174
  function handleInitColumn($xeTable, collectColumn) {
9148
9175
  const $xeToolbar = $xeTable.$refs.$xeToolbar;
@@ -17861,7 +17888,7 @@ const Methods = {
17861
17888
  }
17862
17889
  };
17863
17890
  // Module methods
17864
- const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,saveFilterPanelByEvent,resetFilterPanel,resetFilterPanelByEvent,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getEditCell,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,toggleCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
17891
+ const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,saveFilterPanelByEvent,resetFilterPanel,resetFilterPanelByEvent,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getEditCell,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,getCustomVisible,openCustom,closeCustom,toggleCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
17865
17892
  funcs.forEach(name => {
17866
17893
  Methods[name] = function (...args) {
17867
17894
  if (!this[`_${name}`]) {
@@ -21042,7 +21069,7 @@ const renderPopupPanel = (h, $xeTableCustomPanel) => {
21042
21069
  }
21043
21070
  }
21044
21071
  }
21045
- if (!targetFixed !== null) {
21072
+ if (targetFixed !== null) {
21046
21073
  $xeTable.dispatchEvent('custom-fixed-change', {
21047
21074
  column,
21048
21075
  fixed: targetFixed
@@ -27720,6 +27747,14 @@ function emitCustomEvent($xeTable, type, evnt) {
27720
27747
  }
27721
27748
  /* harmony default export */ var custom_mixin = ({
27722
27749
  methods: {
27750
+ _getCustomVisible() {
27751
+ const $xeTable = this;
27752
+ const reactData = $xeTable;
27753
+ const {
27754
+ customStore
27755
+ } = reactData;
27756
+ return customStore.visible;
27757
+ },
27723
27758
  _openCustom() {
27724
27759
  const $xeTable = this;
27725
27760
  const reactData = $xeTable;
@@ -27763,6 +27798,7 @@ function emitCustomEvent($xeTable, type, evnt) {
27763
27798
  _saveCustom() {
27764
27799
  const $xeTable = this;
27765
27800
  const reactData = $xeTable;
27801
+ const internalData = $xeTable;
27766
27802
  const {
27767
27803
  customColumnList,
27768
27804
  aggHandleFields,
@@ -27819,6 +27855,9 @@ function emitCustomEvent($xeTable, type, evnt) {
27819
27855
  $xeTable.handleUpdateAggData();
27820
27856
  }
27821
27857
  }
27858
+ if (allowSort) {
27859
+ internalData.collectColumn = customColumnList;
27860
+ }
27822
27861
  return $xeTable.saveCustomStore('confirm');
27823
27862
  },
27824
27863
  _cancelCustom() {
@@ -28866,12 +28905,24 @@ function renderBody(h, $xeTable) {
28866
28905
  computeVirtualXOpts() {
28867
28906
  const $xeTable = this;
28868
28907
  const props = $xeTable;
28869
- return Object.assign({}, table_getConfig().table.virtualXConfig || table_getConfig().table.scrollX, props.virtualXConfig || props.scrollX);
28908
+ const {
28909
+ virtualXConfig
28910
+ } = props;
28911
+ if (virtualXConfig) {
28912
+ return Object.assign({}, table_getConfig().table.virtualXConfig, virtualXConfig);
28913
+ }
28914
+ return Object.assign({}, table_getConfig().table.virtualXConfig, table_getConfig().table.scrollX, props.scrollX);
28870
28915
  },
28871
28916
  computeVirtualYOpts() {
28872
28917
  const $xeTable = this;
28873
28918
  const props = $xeTable;
28874
- return Object.assign({}, table_getConfig().table.virtualYConfig || table_getConfig().table.scrollY, props.virtualYConfig || props.scrollY);
28919
+ const {
28920
+ virtualYConfig
28921
+ } = props;
28922
+ if (virtualYConfig) {
28923
+ return Object.assign({}, table_getConfig().table.virtualYConfig, virtualYConfig);
28924
+ }
28925
+ return Object.assign({}, table_getConfig().table.virtualYConfig, table_getConfig().table.scrollY, props.scrollY);
28875
28926
  },
28876
28927
  computeScrollbarOpts() {
28877
28928
  const $xeTable = this;