vxe-table 3.8.9 → 3.8.10-beta.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 (104) hide show
  1. package/lib/button/src/button.js +45 -40
  2. package/lib/button/src/button.min.js +1 -1
  3. package/lib/button/style/style.css +21 -0
  4. package/lib/button/style/style.min.css +1 -1
  5. package/lib/checkbox/src/checkbox.js +1 -1
  6. package/lib/checkbox/src/checkbox.min.js +1 -1
  7. package/lib/custom/src/panel.js +13 -11
  8. package/lib/custom/src/panel.min.js +1 -1
  9. package/lib/export/src/export-panel.js +6 -18
  10. package/lib/export/src/export-panel.min.js +1 -1
  11. package/lib/export/src/import-panel.js +6 -11
  12. package/lib/export/src/import-panel.min.js +1 -1
  13. package/lib/export/src/mixin.js +51 -21
  14. package/lib/export/src/mixin.min.js +1 -1
  15. package/lib/filter/src/mixin.js +5 -4
  16. package/lib/filter/src/mixin.min.js +1 -1
  17. package/lib/filter/src/panel.js +6 -3
  18. package/lib/filter/src/panel.min.js +1 -1
  19. package/lib/icon/style/{iconfont.1719372002523.ttf → iconfont.1720087701329.ttf} +0 -0
  20. package/lib/icon/style/iconfont.1720087701329.woff +0 -0
  21. package/lib/icon/style/iconfont.1720087701329.woff2 +0 -0
  22. package/lib/icon/style/style.css +25 -10
  23. package/lib/icon/style/style.min.css +25 -10
  24. package/lib/{iconfont.1719372002523.ttf → iconfont.1720087701329.ttf} +0 -0
  25. package/lib/iconfont.1720087701329.woff +0 -0
  26. package/lib/iconfont.1720087701329.woff2 +0 -0
  27. package/lib/index.css +1 -1
  28. package/lib/index.umd.js +175 -138
  29. package/lib/index.umd.min.js +1 -1
  30. package/lib/locale/lang/en-US.js +7 -3
  31. package/lib/locale/lang/en-US.min.js +1 -1
  32. package/lib/locale/lang/en-US.umd.js +7 -3
  33. package/lib/locale/lang/es-ES.js +7 -3
  34. package/lib/locale/lang/es-ES.min.js +1 -1
  35. package/lib/locale/lang/es-ES.umd.js +7 -3
  36. package/lib/locale/lang/ja-JP.js +7 -3
  37. package/lib/locale/lang/ja-JP.min.js +1 -1
  38. package/lib/locale/lang/ja-JP.umd.js +7 -3
  39. package/lib/locale/lang/pt-BR.js +7 -3
  40. package/lib/locale/lang/pt-BR.min.js +1 -1
  41. package/lib/locale/lang/pt-BR.umd.js +7 -3
  42. package/lib/locale/lang/zh-CN.js +7 -3
  43. package/lib/locale/lang/zh-CN.min.js +1 -1
  44. package/lib/locale/lang/zh-CN.umd.js +7 -3
  45. package/lib/locale/lang/zh-HK.min.js +1 -1
  46. package/lib/locale/lang/zh-HK.umd.js +7 -3
  47. package/lib/locale/lang/zh-MO.min.js +1 -1
  48. package/lib/locale/lang/zh-MO.umd.js +7 -3
  49. package/lib/locale/lang/zh-TC.js +7 -3
  50. package/lib/locale/lang/zh-TC.min.js +1 -1
  51. package/lib/locale/lang/zh-TC.umd.js +7 -3
  52. package/lib/locale/lang/zh-TW.min.js +1 -1
  53. package/lib/locale/lang/zh-TW.umd.js +7 -3
  54. package/lib/style.css +1 -1
  55. package/lib/style.min.css +1 -1
  56. package/lib/table/src/header.js +3 -0
  57. package/lib/table/src/header.min.js +1 -1
  58. package/lib/table/src/methods.js +24 -20
  59. package/lib/table/src/methods.min.js +1 -1
  60. package/lib/table/src/table.js +1 -1
  61. package/lib/table/src/table.min.js +1 -1
  62. package/lib/tools/log.js +1 -1
  63. package/lib/tools/log.min.js +1 -1
  64. package/lib/v-x-e-table/index.js +1 -1
  65. package/lib/v-x-e-table/index.min.js +1 -1
  66. package/lib/v-x-e-table/src/conf.js +9 -2
  67. package/lib/v-x-e-table/src/conf.min.js +1 -1
  68. package/lib/v-x-e-table/style/style.css +25 -10
  69. package/lib/v-x-e-table/style/style.min.css +1 -1
  70. package/lib/vxe-button/style/style.css +21 -0
  71. package/lib/vxe-button/style/style.min.css +1 -1
  72. package/lib/vxe-icon/style/style.css +25 -10
  73. package/lib/vxe-icon/style/style.min.css +1 -1
  74. package/package.json +1 -1
  75. package/packages/button/src/button.js +44 -40
  76. package/packages/checkbox/src/checkbox.js +1 -1
  77. package/packages/custom/src/panel.js +13 -11
  78. package/packages/export/src/export-panel.js +6 -18
  79. package/packages/export/src/import-panel.js +7 -12
  80. package/packages/export/src/mixin.js +48 -23
  81. package/packages/filter/src/mixin.js +5 -4
  82. package/packages/filter/src/panel.js +3 -3
  83. package/packages/locale/lang/en-US.js +7 -3
  84. package/packages/locale/lang/es-ES.js +7 -3
  85. package/packages/locale/lang/ja-JP.js +7 -3
  86. package/packages/locale/lang/pt-BR.js +7 -3
  87. package/packages/locale/lang/zh-CN.js +7 -3
  88. package/packages/locale/lang/zh-TC.js +7 -3
  89. package/packages/table/src/header.js +1 -0
  90. package/packages/table/src/methods.js +22 -18
  91. package/packages/table/src/table.js +1 -1
  92. package/packages/v-x-e-table/src/conf.js +9 -2
  93. package/styles/button.scss +6 -0
  94. package/styles/icon/iconfont.ttf +0 -0
  95. package/styles/icon/iconfont.woff +0 -0
  96. package/styles/icon/iconfont.woff2 +0 -0
  97. package/styles/icon.scss +26 -10
  98. package/styles/old-icon.scss +1 -1
  99. package/types/table.d.ts +2 -1
  100. package/types/v-x-e-table/index.d.ts +1 -0
  101. package/lib/icon/style/iconfont.1719372002523.woff +0 -0
  102. package/lib/icon/style/iconfont.1719372002523.woff2 +0 -0
  103. package/lib/iconfont.1719372002523.woff +0 -0
  104. package/lib/iconfont.1719372002523.woff2 +0 -0
package/lib/index.umd.js CHANGED
@@ -11164,9 +11164,16 @@ var iconPrefix = 'vxe-icon-';
11164
11164
  allowFixed: true,
11165
11165
  allowSort: true,
11166
11166
  showFooter: true,
11167
- placement: 'topRight'
11167
+ placement: 'topRight',
11168
11168
  // storage: false,
11169
- // checkMethod () {}
11169
+ // checkMethod () {},
11170
+ modalOptions: {
11171
+ showZoom: true,
11172
+ mask: true,
11173
+ lockView: true,
11174
+ resize: true,
11175
+ escClosable: true
11176
+ }
11170
11177
  },
11171
11178
  sortConfig: {
11172
11179
  // remote: false,
@@ -11505,7 +11512,7 @@ var es_array_concat = __webpack_require__(8706);
11505
11512
 
11506
11513
 
11507
11514
  function getLog(message, params) {
11508
- return "[vxe-table v".concat("3.8.9", "] ").concat(conf.i18n(message, params));
11515
+ return "[vxe-table v".concat("3.8.10-beta.1", "] ").concat(conf.i18n(message, params));
11509
11516
  }
11510
11517
  function outLog(type) {
11511
11518
  return function (message, params) {
@@ -13200,7 +13207,7 @@ function component(comp) {
13200
13207
  components[comp.name] = comp;
13201
13208
  }
13202
13209
  }
13203
- var version = "3.8.9";
13210
+ var version = "3.8.10-beta.1";
13204
13211
  var tableVersion = version;
13205
13212
  var VxeUI = {
13206
13213
  v: v,
@@ -15212,6 +15219,9 @@ var cellType = 'header';
15212
15219
  $xetable.emitEvent('resizable-change', _objectSpread2(_objectSpread2({}, params), {}, {
15213
15220
  resizeWidth: resizeWidth
15214
15221
  }), evnt);
15222
+ setTimeout(function () {
15223
+ return $xetable.recalculate(true);
15224
+ }, 300);
15215
15225
  });
15216
15226
  dom.removeClass($xetable.$el, 'drag--resize');
15217
15227
  };
@@ -18125,7 +18135,7 @@ var Methods = {
18125
18135
  var filterMethod = column.filterMethod,
18126
18136
  filterRender = column.filterRender,
18127
18137
  field = column.field;
18128
- var compConf = filterRender ? v_x_e_table.renderer.get(filterRender.name) : null;
18138
+ var compConf = isEnableConf(filterRender) ? v_x_e_table.renderer.get(filterRender.name) : null;
18129
18139
  var compFilterMethod = compConf && compConf.renderFilter ? compConf.tableFilterMethod || compConf.filterMethod : null;
18130
18140
  var defaultFilterMethod = compConf ? compConf.defaultTableFilterMethod || compConf.defaultFilterMethod : null;
18131
18141
  var cellValue = utils.getCellValue(row, column);
@@ -18432,7 +18442,6 @@ var Methods = {
18432
18442
  setColumnFixed: function setColumnFixed(fieldOrColumn, fixed) {
18433
18443
  var isMaxFixedColumn = this.isMaxFixedColumn,
18434
18444
  columnOpts = this.columnOpts;
18435
- var maxFixedSize = columnOpts.maxFixedSize;
18436
18445
  var column = handleFieldOrColumn(this, fieldOrColumn);
18437
18446
  var targetColumn = getRootColumn(this, column);
18438
18447
  if (targetColumn && targetColumn.fixed !== fixed) {
@@ -18441,7 +18450,7 @@ var Methods = {
18441
18450
  if (v_x_e_table.modal) {
18442
18451
  v_x_e_table.modal.message({
18443
18452
  status: 'error',
18444
- content: conf.i18n('vxe.table.maxFixedCol', [maxFixedSize])
18453
+ content: conf.i18n('vxe.table.maxFixedCol', [columnOpts.maxFixedSize])
18445
18454
  });
18446
18455
  }
18447
18456
  return this.$nextTick();
@@ -18574,19 +18583,22 @@ var Methods = {
18574
18583
  if (resizableData || sortData || visibleData || fixedData) {
18575
18584
  tableFullColumn.forEach(function (column) {
18576
18585
  var colKey = column.getKey();
18586
+ // 支持一级
18587
+ if (!parent) {
18588
+ if (fixedData && fixedData[colKey]) {
18589
+ column.fixed = fixedData[colKey];
18590
+ }
18591
+ if (sortData && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(sortData[colKey])) {
18592
+ hasCustomSort = true;
18593
+ column.renderSortNumber = sortData[colKey];
18594
+ }
18595
+ }
18577
18596
  if (resizableData && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(resizableData[colKey])) {
18578
18597
  column.resizeWidth = resizableData[colKey];
18579
18598
  }
18580
18599
  if (visibleData && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(visibleData[colKey])) {
18581
18600
  column.visible = visibleData[colKey];
18582
18601
  }
18583
- if (fixedData && fixedData[colKey]) {
18584
- column.fixed = fixedData[colKey];
18585
- }
18586
- if (sortData && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(sortData[colKey])) {
18587
- hasCustomSort = true;
18588
- column.renderSortNumber = sortData[colKey];
18589
- }
18590
18602
  });
18591
18603
  // 如果自定义了顺序
18592
18604
  if (hasCustomSort) {
@@ -18660,7 +18672,7 @@ var Methods = {
18660
18672
  var hasFixedt = 0;
18661
18673
  var hasVisible = 0;
18662
18674
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn, function (column, index, items, path, parent) {
18663
- // 排序只支持一级
18675
+ // 只支持一级
18664
18676
  if (!parent) {
18665
18677
  collectColumn.forEach(function (column) {
18666
18678
  var colKey = column.getKey();
@@ -18669,19 +18681,19 @@ var Methods = {
18669
18681
  sortData[colKey] = column.renderSortNumber;
18670
18682
  }
18671
18683
  });
18672
- }
18673
- if (column.resizeWidth) {
18674
- var colKey = column.getKey();
18675
- if (colKey) {
18676
- hasResizable = 1;
18677
- resizableData[colKey] = column.renderWidth;
18684
+ if (column.fixed && column.fixed !== column.defaultFixed) {
18685
+ var colKey = column.getKey();
18686
+ if (colKey) {
18687
+ hasFixedt = 1;
18688
+ fixedData[colKey] = column.fixed;
18689
+ }
18678
18690
  }
18679
18691
  }
18680
- if (column.fixed && column.fixed !== column.defaultFixed) {
18692
+ if (column.resizeWidth) {
18681
18693
  var _colKey = column.getKey();
18682
18694
  if (_colKey) {
18683
- hasFixedt = 1;
18684
- fixedData[_colKey] = column.fixed;
18695
+ hasResizable = 1;
18696
+ resizableData[_colKey] = column.renderWidth;
18685
18697
  }
18686
18698
  }
18687
18699
  if (!checkMethod || checkMethod({
@@ -22677,7 +22689,9 @@ var Methods = {
22677
22689
  tableBodyElem.scrollLeft = 0;
22678
22690
  }
22679
22691
  scrollXStore.startIndex = 0;
22692
+ scrollXStore.endIndex = scrollXStore.visibleSize;
22680
22693
  scrollYStore.startIndex = 0;
22694
+ scrollYStore.endIndex = scrollYStore.visibleSize;
22681
22695
  return this.$nextTick();
22682
22696
  },
22683
22697
  /**
@@ -23004,7 +23018,6 @@ var Loading = (/* unused pure expression or super */ null && (VxeLoading));
23004
23018
 
23005
23019
 
23006
23020
 
23007
-
23008
23021
 
23009
23022
 
23010
23023
  /**
@@ -23743,7 +23756,7 @@ function handleUupdateResize(_vm) {
23743
23756
  var collectColumn = this.collectColumn;
23744
23757
  var fixedSize = 0;
23745
23758
  collectColumn.forEach(function (column) {
23746
- if (column.fixed) {
23759
+ if (column.renderFixed) {
23747
23760
  fixedSize++;
23748
23761
  }
23749
23762
  });
@@ -24335,7 +24348,7 @@ var Table = VxeTable;
24335
24348
  var args = filterStore.args,
24336
24349
  column = filterStore.column;
24337
24350
  var filterRender = column ? column.filterRender : null;
24338
- var compConf = filterRender ? v_x_e_table.renderer.get(filterRender.name) : null;
24351
+ var compConf = isEnableConf(filterRender) ? v_x_e_table.renderer.get(filterRender.name) : null;
24339
24352
  var filterClassName = compConf ? compConf.tableFilterClassName || compConf.filterClassName : '';
24340
24353
  return h('div', {
24341
24354
  class: ['vxe-table--filter-wrapper', 'filter--prevent-default', compConf && compConf.className ? compConf.className : '', utils.getClass(filterClassName, Object.assign({
@@ -24433,7 +24446,7 @@ var Table = VxeTable;
24433
24446
  var column = filterStore.column,
24434
24447
  multiple = filterStore.multiple;
24435
24448
  var filterRender = column.filterRender;
24436
- var compConf = filterRender ? v_x_e_table.renderer.get(filterRender.name) : null;
24449
+ var compConf = isEnableConf(filterRender) ? v_x_e_table.renderer.get(filterRender.name) : null;
24437
24450
  var isDisabled = !hasCheckOption && !filterStore.isAllSelected && !filterStore.isIndeterminate;
24438
24451
  return multiple && (compConf ? !(compConf.showTableFilterFooter === false || compConf.showFilterFooter === false) : true) ? [h('div', {
24439
24452
  class: 'vxe-table--filter-footer'
@@ -24529,6 +24542,7 @@ var Table = VxeTable;
24529
24542
 
24530
24543
 
24531
24544
 
24545
+
24532
24546
  /* harmony default export */ var mixin = ({
24533
24547
  methods: {
24534
24548
  /**
@@ -24555,12 +24569,12 @@ var Table = VxeTable;
24555
24569
  * @param {ColumnInfo} fieldOrColumn 列
24556
24570
  * @param {Array} options 选项
24557
24571
  */
24558
- _setFilter: function _setFilter(fieldOrColumn, options) {
24572
+ _setFilter: function _setFilter(fieldOrColumn, options, update) {
24559
24573
  var column = handleFieldOrColumn(this, fieldOrColumn);
24560
24574
  if (column && column.filters) {
24561
24575
  column.filters = toFilters(options || []);
24562
24576
  }
24563
- return this.$nextTick();
24577
+ return update ? this.updateData() : this.$nextTick();
24564
24578
  },
24565
24579
  checkFilterOptions: function checkFilterOptions() {
24566
24580
  var filterStore = this.filterStore;
@@ -24591,7 +24605,7 @@ var Table = VxeTable;
24591
24605
  var filters = column.filters,
24592
24606
  filterMultiple = column.filterMultiple,
24593
24607
  filterRender = column.filterRender;
24594
- var compConf = filterRender ? v_x_e_table.renderer.get(filterRender.name) : null;
24608
+ var compConf = isEnableConf(filterRender) ? v_x_e_table.renderer.get(filterRender.name) : null;
24595
24609
  var filterRecoverMethod = column.filterRecoverMethod || (compConf ? compConf.tableFilterRecoverMethod || compConf.filterRecoverMethod : null);
24596
24610
  var _DomTools$getDomNode = dom.getDomNode(),
24597
24611
  visibleWidth = _DomTools$getDomNode.visibleWidth;
@@ -24776,7 +24790,7 @@ var Table = VxeTable;
24776
24790
  var filters = column.filters,
24777
24791
  filterRender = column.filterRender;
24778
24792
  if (filters) {
24779
- var compConf = filterRender ? v_x_e_table.renderer.get(filterRender.name) : null;
24793
+ var compConf = isEnableConf(filterRender) ? v_x_e_table.renderer.get(filterRender.name) : null;
24780
24794
  var filterResetMethod = column.filterResetMethod || (compConf ? compConf.tableFilterResetMethod || compConf.filterResetMethod : null);
24781
24795
  filters.forEach(function (item) {
24782
24796
  item._checked = false;
@@ -30028,7 +30042,7 @@ function renderExtraSuffixIcon(h, _vm) {
30028
30042
  change: this.changeEvent
30029
30043
  }
30030
30044
  }), h('span', {
30031
- class: ['vxe-checkbox--icon', indeterminate ? 'vxe-icon-checkbox-indeterminate' : isChecked ? 'vxe-icon-checkbox-checked' : 'vxe-icon-checkbox-unchecked']
30045
+ class: ['vxe-checkbox--icon', indeterminate ? 'vxe-icon-checkbox-indeterminate' : isChecked ? 'vxe-icon-checkbox-checked-fill' : 'vxe-icon-checkbox-unchecked']
30032
30046
  }), h('span', {
30033
30047
  class: 'vxe-checkbox--label'
30034
30048
  }, $scopedSlots.default ? $scopedSlots.default.call(this, {}) : [getFuncText(content)])]);
@@ -31254,7 +31268,6 @@ Object.keys(props).forEach(function (name) {
31254
31268
 
31255
31269
 
31256
31270
 
31257
-
31258
31271
  /* harmony default export */ var export_panel = ({
31259
31272
  name: 'VxeTableExportPanel',
31260
31273
  props: {
@@ -31384,21 +31397,15 @@ Object.keys(props).forEach(function (name) {
31384
31397
  }
31385
31398
  })])]), isPrint ? _e() : h('tr', [h('td', conf.i18n('vxe.export.expType')), h('td', [h('vxe-select', {
31386
31399
  props: {
31387
- value: defaultOptions.type
31400
+ value: defaultOptions.type,
31401
+ options: storeData.typeList
31388
31402
  },
31389
31403
  on: {
31390
31404
  input: function input(value) {
31391
31405
  defaultOptions.type = value;
31392
31406
  }
31393
31407
  }
31394
- }, storeData.typeList.map(function (item) {
31395
- return h('vxe-option', {
31396
- props: {
31397
- value: item.value,
31398
- label: conf.i18n(item.label)
31399
- }
31400
- });
31401
- }))])]), isPrint || showSheet ? h('tr', [h('td', conf.i18n('vxe.export.expSheetName')), h('td', [h('vxe-input', {
31408
+ })])]), isPrint || showSheet ? h('tr', [h('td', conf.i18n('vxe.export.expSheetName')), h('td', [h('vxe-input', {
31402
31409
  ref: 'sheetname',
31403
31410
  props: {
31404
31411
  value: defaultOptions.sheetName,
@@ -31413,21 +31420,15 @@ Object.keys(props).forEach(function (name) {
31413
31420
  }
31414
31421
  })])]) : _e(), h('tr', [h('td', conf.i18n('vxe.export.expMode')), h('td', [h('vxe-select', {
31415
31422
  props: {
31416
- value: defaultOptions.mode
31423
+ value: defaultOptions.mode,
31424
+ options: storeData.modeList
31417
31425
  },
31418
31426
  on: {
31419
31427
  input: function input(value) {
31420
31428
  defaultOptions.mode = value;
31421
31429
  }
31422
31430
  }
31423
- }, storeData.modeList.map(function (item) {
31424
- return h('vxe-option', {
31425
- props: {
31426
- value: item.value,
31427
- label: conf.i18n(item.label)
31428
- }
31429
- });
31430
- }))])]), h('tr', [h('td', [conf.i18n('vxe.export.expColumn')]), h('td', [h('div', {
31431
+ })])]), h('tr', [h('td', [conf.i18n('vxe.export.expColumn')]), h('td', [h('div', {
31431
31432
  class: 'vxe-export--panel-column'
31432
31433
  }, [h('ul', {
31433
31434
  class: 'vxe-export--panel-column-header'
@@ -31830,7 +31831,7 @@ Object.keys(props).forEach(function (name) {
31830
31831
  var selectItem = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().find(typeList, function (item) {
31831
31832
  return type === item.value;
31832
31833
  });
31833
- return selectItem ? conf.i18n(selectItem.label) : '*.*';
31834
+ return selectItem ? selectItem.label : '*.*';
31834
31835
  }
31835
31836
  return "*.".concat(typeList.map(function (item) {
31836
31837
  return item.value;
@@ -31848,7 +31849,7 @@ Object.keys(props).forEach(function (name) {
31848
31849
  props: {
31849
31850
  value: storeData.visible,
31850
31851
  title: conf.i18n('vxe.import.impTitle'),
31851
- width: 440,
31852
+ width: 520,
31852
31853
  mask: true,
31853
31854
  lockView: true,
31854
31855
  showFooter: false,
@@ -31889,22 +31890,17 @@ Object.keys(props).forEach(function (name) {
31889
31890
  on: {
31890
31891
  click: this.selectFileEvent
31891
31892
  }
31892
- }, conf.i18n('vxe.import.impSelect'))])]), h('tr', [h('td', conf.i18n('vxe.import.impType')), h('td', parseTypeLabel)]), h('tr', [h('td', conf.i18n('vxe.import.impOpts')), h('td', [h('vxe-radio-group', {
31893
+ }, conf.i18n('vxe.import.impSelect'))])]), h('tr', [h('td', conf.i18n('vxe.import.impType')), h('td', parseTypeLabel)]), h('tr', [h('td', conf.i18n('vxe.import.impMode')), h('td', [h('vxe-select', {
31893
31894
  props: {
31894
- value: defaultOptions.mode
31895
+ value: defaultOptions.mode,
31896
+ options: storeData.modeList
31895
31897
  },
31896
31898
  on: {
31897
31899
  input: function input(value) {
31898
31900
  defaultOptions.mode = value;
31899
31901
  }
31900
31902
  }
31901
- }, storeData.modeList.map(function (item) {
31902
- return h('vxe-radio', {
31903
- props: {
31904
- label: item.value
31905
- }
31906
- }, conf.i18n(item.label));
31907
- }))])])])]), h('div', {
31903
+ })])])])]), h('div', {
31908
31904
  class: 'vxe-export--panel-btns'
31909
31905
  }, [h('vxe-button', {
31910
31906
  on: {
@@ -32916,7 +32912,7 @@ function handleImport($xetable, content, opts) {
32916
32912
  if (status) {
32917
32913
  $xetable.createData(rows).then(function (data) {
32918
32914
  var loadRest;
32919
- if (opts.mode === 'insert') {
32915
+ if (opts.mode === 'insert' || opts.mode === 'insertBottom') {
32920
32916
  loadRest = $xetable.insert(data);
32921
32917
  } else {
32922
32918
  loadRest = $xetable.reloadData(data);
@@ -32989,7 +32985,7 @@ function handleFileImport($xetable, file, opts) {
32989
32985
  $xetable._importReject = _importReject;
32990
32986
  if (window.FileReader) {
32991
32987
  var options = Object.assign({
32992
- mode: 'insert'
32988
+ mode: 'insertBottom'
32993
32989
  }, opts, {
32994
32990
  type: type,
32995
32991
  filename: filename
@@ -33176,7 +33172,8 @@ function handlePrint($xetable, opts, content) {
33176
33172
  }
33177
33173
  }
33178
33174
  function handleExportAndPrint($xetable, options, isPrint) {
33179
- var initStore = $xetable.initStore,
33175
+ var $xegrid = $xetable.$xegrid,
33176
+ initStore = $xetable.initStore,
33180
33177
  customOpts = $xetable.customOpts,
33181
33178
  collectColumn = $xetable.collectColumn,
33182
33179
  footerTableData = $xetable.footerTableData,
@@ -33185,16 +33182,19 @@ function handleExportAndPrint($xetable, options, isPrint) {
33185
33182
  isGroup = $xetable.isGroup,
33186
33183
  exportParams = $xetable.exportParams,
33187
33184
  exportOpts = $xetable.exportOpts;
33185
+ var proxyOpts = $xegrid ? $xegrid.proxyOpts : {};
33188
33186
  var selectRecords = $xetable.getCheckboxRecords();
33189
33187
  var hasFooter = !!footerTableData.length;
33190
33188
  var hasTree = treeConfig;
33191
33189
  var hasMerge = !hasTree && mergeList.length;
33192
33190
  var defOpts = Object.assign({
33193
33191
  message: true,
33194
- isHeader: true
33192
+ isHeader: true,
33193
+ current: 'current',
33194
+ modes: ['current', 'selected'].concat(proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : [])
33195
33195
  }, options);
33196
33196
  var types = defOpts.types || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(exportOpts._typeMaps);
33197
- var modes = defOpts.modes;
33197
+ var modes = defOpts.modes || [];
33198
33198
  var checkMethod = customOpts.checkMethod;
33199
33199
  var exportColumns = collectColumn.slice(0);
33200
33200
  var columns = defOpts.columns;
@@ -33202,13 +33202,19 @@ function handleExportAndPrint($xetable, options, isPrint) {
33202
33202
  var typeList = types.map(function (value) {
33203
33203
  return {
33204
33204
  value: value,
33205
- label: "vxe.export.types.".concat(value)
33205
+ label: conf.i18n("vxe.export.types.".concat(value))
33206
33206
  };
33207
33207
  });
33208
- var modeList = modes.map(function (value) {
33208
+ var modeList = modes.map(function (item) {
33209
+ if (item && item.value) {
33210
+ return {
33211
+ value: item.value,
33212
+ label: item.label || item.value
33213
+ };
33214
+ }
33209
33215
  return {
33210
- value: value,
33211
- label: "vxe.export.modes.".concat(value)
33216
+ value: item,
33217
+ label: conf.i18n("vxe.export.modes.".concat(item))
33212
33218
  };
33213
33219
  });
33214
33220
  // 默认选中
@@ -33258,11 +33264,15 @@ function handleExportAndPrint($xetable, options, isPrint) {
33258
33264
  Object.assign(exportParams, {
33259
33265
  mode: selectRecords.length ? 'selected' : 'current'
33260
33266
  }, defOpts);
33261
- if (modes.indexOf(exportParams.mode) === -1) {
33262
- exportParams.mode = modes[0];
33267
+ if (!modeList.some(function (item) {
33268
+ return item.value === exportParams.mode;
33269
+ })) {
33270
+ exportParams.mode = modeList[0].value;
33263
33271
  }
33264
- if (types.indexOf(exportParams.type) === -1) {
33265
- exportParams.type = types[0];
33272
+ if (!typeList.some(function (item) {
33273
+ return item.value === exportParams.type;
33274
+ })) {
33275
+ exportParams.type = typeList[0].value;
33266
33276
  }
33267
33277
  initStore.export = true;
33268
33278
  return $xetable.$nextTick();
@@ -33470,7 +33480,7 @@ var convertToRows = function convertToRows(originColumns) {
33470
33480
  }
33471
33481
  }
33472
33482
  if (!opts.data) {
33473
- opts.data = afterFullData;
33483
+ opts.data = [];
33474
33484
  if (mode === 'selected') {
33475
33485
  var selectRecords = this.getCheckboxRecords();
33476
33486
  if (['html', 'pdf'].indexOf(type) > -1 && treeConfig) {
@@ -33515,6 +33525,8 @@ var convertToRows = function convertToRows(originColumns) {
33515
33525
  });
33516
33526
  }
33517
33527
  }
33528
+ } else if (mode === 'current') {
33529
+ opts.data = afterFullData;
33518
33530
  }
33519
33531
  }
33520
33532
  return handleExport(this, opts);
@@ -33610,13 +33622,16 @@ var convertToRows = function convertToRows(originColumns) {
33610
33622
  });
33611
33623
  },
33612
33624
  _openImport: function _openImport(options) {
33625
+ var _this4 = this;
33613
33626
  var importOpts = this.importOpts;
33614
33627
  var defOpts = Object.assign({
33615
- mode: 'insert',
33628
+ mode: 'insertBottom',
33616
33629
  message: true,
33617
- types: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(importOpts._typeMaps)
33630
+ types: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(importOpts._typeMaps),
33631
+ modes: ['insertBottom', 'covering']
33618
33632
  }, options, importOpts);
33619
- var types = defOpts.types;
33633
+ var types = defOpts.types || [];
33634
+ var modes = defOpts.modes || [];
33620
33635
  var isTree = !!this.getTreeStatus();
33621
33636
  if (isTree) {
33622
33637
  if (defOpts.message) {
@@ -33634,13 +33649,19 @@ var convertToRows = function convertToRows(originColumns) {
33634
33649
  var typeList = types.map(function (value) {
33635
33650
  return {
33636
33651
  value: value,
33637
- label: "vxe.export.types.".concat(value)
33652
+ label: conf.i18n("vxe.export.types.".concat(value))
33638
33653
  };
33639
33654
  });
33640
- var modeList = defOpts.modes.map(function (value) {
33655
+ var modeList = modes.map(function (item) {
33656
+ if (item && item.value) {
33657
+ return {
33658
+ value: item.value,
33659
+ label: item.label || item.value
33660
+ };
33661
+ }
33641
33662
  return {
33642
- value: value,
33643
- label: "vxe.import.modes.".concat(value)
33663
+ value: item,
33664
+ label: conf.i18n("vxe.import.modes.".concat(item))
33644
33665
  };
33645
33666
  });
33646
33667
  Object.assign(this.importStore, {
@@ -33652,6 +33673,11 @@ var convertToRows = function convertToRows(originColumns) {
33652
33673
  visible: true
33653
33674
  });
33654
33675
  Object.assign(this.importParams, defOpts);
33676
+ if (!modeList.some(function (item) {
33677
+ return item.value === _this4.importParams.mode;
33678
+ })) {
33679
+ this.importParams.mode = modeList[0].value;
33680
+ }
33655
33681
  this.initStore.import = true;
33656
33682
  },
33657
33683
  _openExport: function _openExport(options) {
@@ -35024,6 +35050,7 @@ var renderPopupPanel = function renderPopupPanel(h, _vm) {
35024
35050
  allowResizable = customOpts.allowResizable,
35025
35051
  checkMethod = customOpts.checkMethod,
35026
35052
  visibleMethod = customOpts.visibleMethod;
35053
+ var maxFixedSize = columnOpts.maxFixedSize;
35027
35054
  var modalOpts = Object.assign({}, modalOptions);
35028
35055
  var trVNs = [];
35029
35056
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(customColumnList, function (column, index, items, path, parent) {
@@ -35137,21 +35164,22 @@ var renderPopupPanel = function renderPopupPanel(h, _vm) {
35137
35164
  var isAllChecked = customStore.isAll;
35138
35165
  var isAllIndeterminate = customStore.isIndeterminate;
35139
35166
  return h('vxe-modal', {
35140
- key: 'popup',
35167
+ key: 'modal',
35141
35168
  props: {
35142
35169
  className: ['vxe-table-custom-popup-wrapper', 'vxe-table--ignore-clear', modalOpts.className || ''].join(' '),
35143
35170
  value: customStore.visible,
35144
35171
  title: modalOpts.title || conf.i18n('vxe.custom.cstmTitle'),
35145
- width: modalOpts.width || '50vw',
35172
+ width: modalOpts.width || Math.min(880, document.documentElement.clientWidth),
35146
35173
  minWidth: modalOpts.minWidth || 700,
35147
- height: modalOpts.height || '50vh',
35174
+ height: modalOpts.height || Math.min(680, document.documentElement.clientHeight),
35148
35175
  minHeight: modalOpts.minHeight || 400,
35149
- mask: true,
35150
- lockView: true,
35151
- showFooter: true,
35152
- resize: true,
35153
- escClosable: true,
35154
- destroyOnClose: true
35176
+ showZoom: !!modalOpts.showZoom,
35177
+ mask: !!modalOpts.mask,
35178
+ lockView: !!modalOpts.lockView,
35179
+ resize: !!modalOpts.resize,
35180
+ escClosable: !!modalOpts.escClosable,
35181
+ destroyOnClose: true,
35182
+ showFooter: true
35155
35183
  },
35156
35184
  on: {
35157
35185
  input: function input(value) {
@@ -35214,7 +35242,7 @@ var renderPopupPanel = function renderPopupPanel(h, _vm) {
35214
35242
  });
35215
35243
  }
35216
35244
  }
35217
- })]) : _e(), h('th', {}, conf.i18n('vxe.custom.setting.colTitle')), allowResizable ? h('th', {}, conf.i18n('vxe.custom.setting.colResizable')) : _e(), allowFixed ? h('th', {}, conf.i18n('vxe.custom.setting.colFixed', [columnOpts.maxFixedSize || 0])) : _e()])]), h('transition-group', {
35245
+ })]) : _e(), h('th', {}, conf.i18n('vxe.custom.setting.colTitle')), allowResizable ? h('th', {}, conf.i18n('vxe.custom.setting.colResizable')) : _e(), allowFixed ? h('th', {}, conf.i18n("vxe.custom.setting.".concat(maxFixedSize ? 'colFixedMax' : 'colFixed'), [maxFixedSize])) : _e()])]), h('transition-group', {
35218
35246
  class: 'vxe-table-custom--body',
35219
35247
  props: {
35220
35248
  tag: 'tbody',
@@ -35279,7 +35307,7 @@ var renderPopupPanel = function renderPopupPanel(h, _vm) {
35279
35307
  render: function render(h) {
35280
35308
  var $xetable = this.$xetable;
35281
35309
  var customOpts = $xetable.customOpts;
35282
- if (customOpts.mode === 'popup') {
35310
+ if (['modal', 'popup'].includes("".concat(customOpts.mode))) {
35283
35311
  return renderPopupPanel(h, this);
35284
35312
  }
35285
35313
  return renderSimplePanel(h, this);
@@ -39029,7 +39057,7 @@ var Textarea = VxeTextarea;
39029
39057
  GlobalEvent.on(this, 'mousedown', this.handleGlobalMousedownEvent);
39030
39058
  },
39031
39059
  beforeDestroy: function beforeDestroy() {
39032
- var panelElem = this.$refs.panel;
39060
+ var panelElem = this.$refs.btnPanel;
39033
39061
  if (panelElem && panelElem.parentNode) {
39034
39062
  panelElem.parentNode.removeChild(panelElem);
39035
39063
  }
@@ -39066,8 +39094,8 @@ var Textarea = VxeTextarea;
39066
39094
  // hover 触发
39067
39095
  btnOns.mouseenter = this.mouseenterTargetEvent;
39068
39096
  btnOns.mouseleave = this.mouseleaveTargetEvent;
39069
- panelOns.onMouseenter = this.mouseenterDropdownEvent;
39070
- panelOns.onMouseleave = this.mouseleaveDropdownEvent;
39097
+ panelOns.mouseenter = this.mouseenterDropdownEvent;
39098
+ panelOns.mouseleave = this.mouseleaveDropdownEvent;
39071
39099
  }
39072
39100
  return downsSlot ? h('div', {
39073
39101
  class: ['vxe-button--dropdown', className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(className) ? className({
@@ -39088,20 +39116,21 @@ var Textarea = VxeTextarea;
39088
39116
  }, this.renderContent(h).concat([h('i', {
39089
39117
  class: "vxe-button--dropdown-arrow ".concat(conf.icon.BUTTON_DROPDOWN)
39090
39118
  })])), h('div', {
39091
- ref: 'panel',
39119
+ ref: 'btnPanel',
39092
39120
  class: ['vxe-button--dropdown-panel', popupClassName ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(popupClassName) ? popupClassName({
39093
39121
  $button: this
39094
39122
  }) : popupClassName : '', _defineProperty(_defineProperty(_defineProperty({}, "size--".concat(vSize), vSize), 'animat--leave', animatVisible), 'animat--enter', visiblePanel)],
39095
39123
  attrs: {
39096
39124
  placement: panelPlacement
39097
39125
  },
39098
- style: this.panelStyle
39126
+ style: this.panelStyle,
39127
+ on: panelOns
39099
39128
  }, inited ? [h('div', {
39100
39129
  class: 'vxe-button--dropdown-wrapper',
39101
- on: _objectSpread2({
39130
+ on: {
39102
39131
  mousedown: this.mousedownDropdownEvent,
39103
39132
  click: this.clickDropdownEvent
39104
- }, panelOns)
39133
+ }
39105
39134
  }, destroyOnClose && !visiblePanel ? [] : downsSlot.call(this, {}, h))] : null)]) : h('button', {
39106
39135
  ref: 'xBtn',
39107
39136
  class: ['vxe-button', "type--".concat(btnMode), className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(className) ? className({
@@ -39152,7 +39181,7 @@ var Textarea = VxeTextarea;
39152
39181
  return contents;
39153
39182
  },
39154
39183
  handleGlobalMousewheelEvent: function handleGlobalMousewheelEvent(evnt) {
39155
- if (this.visiblePanel && !dom.getEventTargetNode(evnt, this.$refs.panel).flag) {
39184
+ if (this.visiblePanel && !dom.getEventTargetNode(evnt, this.$refs.btnPanel).flag) {
39156
39185
  this.closePanel();
39157
39186
  }
39158
39187
  },
@@ -39161,7 +39190,7 @@ var Textarea = VxeTextarea;
39161
39190
  visiblePanel = this.visiblePanel;
39162
39191
  if (!disabled) {
39163
39192
  var el = this.$refs.$el;
39164
- var panelElem = this.$refs.panel;
39193
+ var panelElem = this.$refs.btnPanel;
39165
39194
  this.isActivated = dom.getEventTargetNode(evnt, el).flag || dom.getEventTargetNode(evnt, panelElem).flag;
39166
39195
  if (visiblePanel && !this.isActivated) {
39167
39196
  this.closePanel();
@@ -39194,7 +39223,7 @@ var Textarea = VxeTextarea;
39194
39223
  clickDropdownEvent: function clickDropdownEvent(evnt) {
39195
39224
  var _this = this;
39196
39225
  var dropdownElem = evnt.currentTarget;
39197
- var panelElem = this.$refs.panel;
39226
+ var panelElem = this.$refs.btnPanel;
39198
39227
  var _DomTools$getEventTar = dom.getEventTargetNode(evnt, dropdownElem, 'vxe-button'),
39199
39228
  flag = _DomTools$getEventTar.flag,
39200
39229
  targetElem = _DomTools$getEventTar.targetElem;
@@ -39236,21 +39265,23 @@ var Textarea = VxeTextarea;
39236
39265
  },
39237
39266
  mouseenterDropdownEvent: function mouseenterDropdownEvent() {
39238
39267
  var _this2 = this;
39239
- var panelElem = this.$refs.panel;
39240
- panelElem.dataset.active = 'Y';
39241
- this.animatVisible = true;
39242
- setTimeout(function () {
39243
- if (panelElem.dataset.active === 'Y') {
39244
- _this2.visiblePanel = true;
39245
- _this2.updateZindex();
39246
- _this2.updatePlacement();
39247
- setTimeout(function () {
39248
- if (_this2.visiblePanel) {
39249
- _this2.updatePlacement();
39250
- }
39251
- }, 50);
39252
- }
39253
- }, 20);
39268
+ var panelElem = this.$refs.btnPanel;
39269
+ if (panelElem) {
39270
+ panelElem.dataset.active = 'Y';
39271
+ this.animatVisible = true;
39272
+ setTimeout(function () {
39273
+ if (panelElem.dataset.active === 'Y') {
39274
+ _this2.visiblePanel = true;
39275
+ _this2.updateZindex();
39276
+ _this2.updatePlacement();
39277
+ setTimeout(function () {
39278
+ if (_this2.visiblePanel) {
39279
+ _this2.updatePlacement();
39280
+ }
39281
+ }, 50);
39282
+ }
39283
+ }, 20);
39284
+ }
39254
39285
  },
39255
39286
  mouseleaveDropdownEvent: function mouseleaveDropdownEvent() {
39256
39287
  this.closePanel();
@@ -39269,26 +39300,28 @@ var Textarea = VxeTextarea;
39269
39300
  openPanel: function openPanel() {
39270
39301
  var _this3 = this;
39271
39302
  var trigger = this.trigger;
39272
- var panelElem = this.$refs.panel;
39273
- panelElem.dataset.active = 'Y';
39274
- if (!this.inited) {
39275
- this.inited = true;
39276
- if (this.transfer) {
39277
- document.body.appendChild(panelElem);
39303
+ var panelElem = this.$refs.btnPanel;
39304
+ if (panelElem) {
39305
+ panelElem.dataset.active = 'Y';
39306
+ if (!this.inited) {
39307
+ this.inited = true;
39308
+ if (this.transfer) {
39309
+ document.body.appendChild(panelElem);
39310
+ }
39278
39311
  }
39312
+ this.showTime = setTimeout(function () {
39313
+ if (panelElem.dataset.active === 'Y') {
39314
+ _this3.mouseenterDropdownEvent();
39315
+ } else {
39316
+ _this3.animatVisible = false;
39317
+ }
39318
+ }, trigger === 'click' ? 50 : 250);
39279
39319
  }
39280
- this.showTime = setTimeout(function () {
39281
- if (panelElem.dataset.active === 'Y') {
39282
- _this3.mouseenterDropdownEvent();
39283
- } else {
39284
- _this3.animatVisible = false;
39285
- }
39286
- }, trigger === 'click' ? 50 : 250);
39287
39320
  return this.$nextTick();
39288
39321
  },
39289
39322
  closePanel: function closePanel() {
39290
39323
  var _this4 = this;
39291
- var panelElem = this.$refs.panel;
39324
+ var panelElem = this.$refs.btnPanel;
39292
39325
  clearTimeout(this.showTime);
39293
39326
  if (panelElem) {
39294
39327
  panelElem.dataset.active = 'N';
@@ -39316,7 +39349,7 @@ var Textarea = VxeTextarea;
39316
39349
  placement = _this5.placement,
39317
39350
  panelIndex = _this5.panelIndex;
39318
39351
  var targetElem = $refs.xBtn;
39319
- var panelElem = $refs.panel;
39352
+ var panelElem = $refs.btnPanel;
39320
39353
  if (panelElem && targetElem) {
39321
39354
  var targetHeight = targetElem.offsetHeight;
39322
39355
  var targetWidth = targetElem.offsetWidth;
@@ -42474,7 +42507,8 @@ var Pulldown = VxePulldown;
42474
42507
  colTitle: '标题',
42475
42508
  colResizable: '列宽(像素)',
42476
42509
  colVisible: '是否显示',
42477
- colFixed: '冻结列(最多 {0} 列)',
42510
+ colFixed: '冻结列',
42511
+ colFixedMax: '冻结列(最多 {0} 列)',
42478
42512
  fixedLeft: '左侧',
42479
42513
  fixedUnset: '不设置',
42480
42514
  fixedRight: '右侧'
@@ -42482,14 +42516,17 @@ var Pulldown = VxePulldown;
42482
42516
  },
42483
42517
  import: {
42484
42518
  modes: {
42485
- covering: '覆盖',
42486
- insert: '新增'
42519
+ covering: '覆盖方式(直接覆盖表格数据)',
42520
+ insert: '底部追加(在表格的底部追加新数据)',
42521
+ insertTop: '顶部追加(在表格的顶部追加新数据)',
42522
+ insertBottom: '底部追加(在表格的底部追加新数据)'
42487
42523
  },
42488
42524
  impTitle: '导入数据',
42489
42525
  impFile: '文件名',
42490
42526
  impSelect: '选择文件',
42491
42527
  impType: '文件类型',
42492
42528
  impOpts: '参数设置',
42529
+ impMode: '导入模式',
42493
42530
  impConfirm: '导入',
42494
42531
  impCancel: '取消'
42495
42532
  },