vxe-table 3.15.47 → 3.15.49

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 (181) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.esm.js +1 -2
  3. package/es/index.min.css +1 -1
  4. package/es/locale/lang/ar-EG.js +3 -2
  5. package/es/locale/lang/de-DE.js +3 -2
  6. package/es/locale/lang/en-US.js +3 -2
  7. package/es/locale/lang/es-ES.js +3 -2
  8. package/es/locale/lang/fr-FR.js +3 -2
  9. package/es/locale/lang/hu-HU.js +3 -2
  10. package/es/locale/lang/hy-AM.js +3 -2
  11. package/es/locale/lang/id-ID.js +3 -2
  12. package/es/locale/lang/it-IT.js +3 -2
  13. package/es/locale/lang/ja-JP.js +3 -2
  14. package/es/locale/lang/ko-KR.js +3 -2
  15. package/es/locale/lang/ms-MY.js +3 -2
  16. package/es/locale/lang/nb-NO.js +3 -2
  17. package/es/locale/lang/pt-BR.js +3 -2
  18. package/es/locale/lang/ru-RU.js +3 -2
  19. package/es/locale/lang/th-TH.js +3 -2
  20. package/es/locale/lang/ug-CN.js +3 -2
  21. package/es/locale/lang/uk-UA.js +3 -2
  22. package/es/locale/lang/uz-UZ.js +3 -2
  23. package/es/locale/lang/vi-VN.js +3 -2
  24. package/es/locale/lang/zh-CHT.js +3 -2
  25. package/es/locale/lang/zh-CN.js +3 -2
  26. package/es/style.css +1 -1
  27. package/es/style.min.css +1 -1
  28. package/es/table/module/custom/panel.js +9 -2
  29. package/es/table/src/body.js +8 -5
  30. package/es/table/src/cell.js +21 -13
  31. package/es/table/src/methods.js +40 -12
  32. package/es/table/src/table.js +2 -2
  33. package/es/table/style.css +5 -1
  34. package/es/table/style.min.css +1 -1
  35. package/es/ui/index.js +3 -2
  36. package/es/ui/src/log.js +1 -1
  37. package/es/vxe-table/style.css +5 -1
  38. package/es/vxe-table/style.min.css +1 -1
  39. package/lib/index.common.js +1 -2
  40. package/lib/index.css +1 -1
  41. package/lib/index.min.css +1 -1
  42. package/lib/index.umd.js +2327 -945
  43. package/lib/index.umd.min.js +1 -1
  44. package/lib/locale/lang/ar-EG.js +3 -2
  45. package/lib/locale/lang/ar-EG.min.js +1 -1
  46. package/lib/locale/lang/ar-EG.umd.js +3 -2
  47. package/lib/locale/lang/de-DE.js +3 -2
  48. package/lib/locale/lang/de-DE.min.js +1 -1
  49. package/lib/locale/lang/de-DE.umd.js +3 -2
  50. package/lib/locale/lang/en-US.js +3 -2
  51. package/lib/locale/lang/en-US.min.js +1 -1
  52. package/lib/locale/lang/en-US.umd.js +3 -2
  53. package/lib/locale/lang/es-ES.js +3 -2
  54. package/lib/locale/lang/es-ES.min.js +1 -1
  55. package/lib/locale/lang/es-ES.umd.js +3 -2
  56. package/lib/locale/lang/fr-FR.js +3 -2
  57. package/lib/locale/lang/fr-FR.min.js +1 -1
  58. package/lib/locale/lang/fr-FR.umd.js +3 -2
  59. package/lib/locale/lang/hu-HU.js +3 -2
  60. package/lib/locale/lang/hu-HU.min.js +1 -1
  61. package/lib/locale/lang/hu-HU.umd.js +3 -2
  62. package/lib/locale/lang/hy-AM.js +3 -2
  63. package/lib/locale/lang/hy-AM.min.js +1 -1
  64. package/lib/locale/lang/hy-AM.umd.js +3 -2
  65. package/lib/locale/lang/id-ID.js +3 -2
  66. package/lib/locale/lang/id-ID.min.js +1 -1
  67. package/lib/locale/lang/id-ID.umd.js +3 -2
  68. package/lib/locale/lang/it-IT.js +3 -2
  69. package/lib/locale/lang/it-IT.min.js +1 -1
  70. package/lib/locale/lang/it-IT.umd.js +3 -2
  71. package/lib/locale/lang/ja-JP.js +3 -2
  72. package/lib/locale/lang/ja-JP.min.js +1 -1
  73. package/lib/locale/lang/ja-JP.umd.js +3 -2
  74. package/lib/locale/lang/ko-KR.js +3 -2
  75. package/lib/locale/lang/ko-KR.min.js +1 -1
  76. package/lib/locale/lang/ko-KR.umd.js +3 -2
  77. package/lib/locale/lang/ms-MY.js +3 -2
  78. package/lib/locale/lang/ms-MY.min.js +1 -1
  79. package/lib/locale/lang/ms-MY.umd.js +3 -2
  80. package/lib/locale/lang/nb-NO.js +3 -2
  81. package/lib/locale/lang/nb-NO.min.js +1 -1
  82. package/lib/locale/lang/nb-NO.umd.js +3 -2
  83. package/lib/locale/lang/pt-BR.js +3 -2
  84. package/lib/locale/lang/pt-BR.min.js +1 -1
  85. package/lib/locale/lang/pt-BR.umd.js +3 -2
  86. package/lib/locale/lang/ru-RU.js +3 -2
  87. package/lib/locale/lang/ru-RU.min.js +1 -1
  88. package/lib/locale/lang/ru-RU.umd.js +3 -2
  89. package/lib/locale/lang/th-TH.js +3 -2
  90. package/lib/locale/lang/th-TH.min.js +1 -1
  91. package/lib/locale/lang/th-TH.umd.js +3 -2
  92. package/lib/locale/lang/ug-CN.js +3 -2
  93. package/lib/locale/lang/ug-CN.min.js +1 -1
  94. package/lib/locale/lang/ug-CN.umd.js +3 -2
  95. package/lib/locale/lang/uk-UA.js +3 -2
  96. package/lib/locale/lang/uk-UA.min.js +1 -1
  97. package/lib/locale/lang/uk-UA.umd.js +3 -2
  98. package/lib/locale/lang/uz-UZ.js +3 -2
  99. package/lib/locale/lang/uz-UZ.min.js +1 -1
  100. package/lib/locale/lang/uz-UZ.umd.js +3 -2
  101. package/lib/locale/lang/vi-VN.js +3 -2
  102. package/lib/locale/lang/vi-VN.min.js +1 -1
  103. package/lib/locale/lang/vi-VN.umd.js +3 -2
  104. package/lib/locale/lang/zh-CHT.js +3 -2
  105. package/lib/locale/lang/zh-CHT.min.js +1 -1
  106. package/lib/locale/lang/zh-CHT.umd.js +3 -2
  107. package/lib/locale/lang/zh-CN.js +3 -2
  108. package/lib/locale/lang/zh-CN.min.js +1 -1
  109. package/lib/locale/lang/zh-CN.umd.js +3 -2
  110. package/lib/style.css +1 -1
  111. package/lib/style.min.css +1 -1
  112. package/lib/table/module/custom/panel.js +8 -1
  113. package/lib/table/module/custom/panel.min.js +1 -1
  114. package/lib/table/src/body.js +8 -5
  115. package/lib/table/src/body.min.js +1 -1
  116. package/lib/table/src/cell.js +20 -11
  117. package/lib/table/src/cell.min.js +1 -1
  118. package/lib/table/src/methods.js +39 -15
  119. package/lib/table/src/methods.min.js +1 -1
  120. package/lib/table/src/table.js +2 -1
  121. package/lib/table/src/table.min.js +1 -1
  122. package/lib/table/style/style.css +5 -1
  123. package/lib/table/style/style.min.css +1 -1
  124. package/lib/ui/index.js +3 -2
  125. package/lib/ui/index.min.js +1 -1
  126. package/lib/ui/src/log.js +1 -1
  127. package/lib/ui/src/log.min.js +1 -1
  128. package/lib/v-x-e-table/index.js +1 -2
  129. package/lib/v-x-e-table/index.min.js +1 -1
  130. package/lib/vxe-colgroup/index.js +1 -2
  131. package/lib/vxe-colgroup/index.min.js +1 -1
  132. package/lib/vxe-column/index.js +1 -2
  133. package/lib/vxe-column/index.min.js +1 -1
  134. package/lib/vxe-grid/index.js +1 -2
  135. package/lib/vxe-grid/index.min.js +1 -1
  136. package/lib/vxe-table/index.js +1 -2
  137. package/lib/vxe-table/index.min.js +1 -1
  138. package/lib/vxe-table/style/style.css +5 -1
  139. package/lib/vxe-table/style/style.min.css +1 -1
  140. package/lib/vxe-toolbar/index.js +1 -2
  141. package/lib/vxe-toolbar/index.min.js +1 -1
  142. package/lib/vxe-ui/index.js +1 -2
  143. package/lib/vxe-ui/index.min.js +1 -1
  144. package/lib/vxe-v-x-e-table/index.js +1 -2
  145. package/lib/vxe-v-x-e-table/index.min.js +1 -1
  146. package/package.json +1 -1
  147. package/packages/locale/lang/ar-EG.ts +3 -2
  148. package/packages/locale/lang/de-DE.ts +3 -2
  149. package/packages/locale/lang/en-US.ts +3 -2
  150. package/packages/locale/lang/es-ES.ts +3 -2
  151. package/packages/locale/lang/fr-FR.ts +3 -2
  152. package/packages/locale/lang/hu-HU.ts +3 -2
  153. package/packages/locale/lang/hy-AM.ts +3 -2
  154. package/packages/locale/lang/id-ID.ts +3 -2
  155. package/packages/locale/lang/it-IT.ts +3 -2
  156. package/packages/locale/lang/ja-JP.ts +3 -2
  157. package/packages/locale/lang/ko-KR.ts +3 -2
  158. package/packages/locale/lang/ms-MY.ts +3 -2
  159. package/packages/locale/lang/nb-NO.ts +3 -2
  160. package/packages/locale/lang/pt-BR.ts +3 -2
  161. package/packages/locale/lang/ru-RU.ts +3 -2
  162. package/packages/locale/lang/th-TH.ts +3 -2
  163. package/packages/locale/lang/ug-CN.ts +3 -2
  164. package/packages/locale/lang/uk-UA.ts +3 -2
  165. package/packages/locale/lang/uz-UZ.ts +3 -2
  166. package/packages/locale/lang/vi-VN.ts +3 -2
  167. package/packages/locale/lang/zh-CHT.ts +3 -2
  168. package/packages/locale/lang/zh-CN.ts +3 -2
  169. package/packages/table/module/custom/panel.ts +9 -2
  170. package/packages/table/src/body.ts +8 -5
  171. package/packages/table/src/cell.ts +25 -13
  172. package/packages/table/src/methods.ts +37 -12
  173. package/packages/table/src/table.ts +2 -2
  174. package/packages/ui/index.ts +2 -1
  175. package/styles/components/table-module/custom.scss +5 -1
  176. /package/es/{iconfont.1750732150166.ttf → iconfont.1750995593907.ttf} +0 -0
  177. /package/es/{iconfont.1750732150166.woff → iconfont.1750995593907.woff} +0 -0
  178. /package/es/{iconfont.1750732150166.woff2 → iconfont.1750995593907.woff2} +0 -0
  179. /package/lib/{iconfont.1750732150166.ttf → iconfont.1750995593907.ttf} +0 -0
  180. /package/lib/{iconfont.1750732150166.woff → iconfont.1750995593907.woff} +0 -0
  181. /package/lib/{iconfont.1750732150166.woff2 → iconfont.1750995593907.woff2} +0 -0
@@ -431,7 +431,7 @@ const renderPopupPanel = (h, $xeTableCustomPanel) => {
431
431
  const tableReactData = $xeTable;
432
432
  const $xeGrid = $xeTable.$xeGrid;
433
433
  const { customStore } = props;
434
- const { resizable: allResizable } = tableProps;
434
+ const { treeConfig, rowGroupConfig, aggregateConfig, resizable: allResizable } = tableProps;
435
435
  const { isCustomStatus, customColumnList } = tableReactData;
436
436
  const customOpts = $xeTable.computeCustomOpts;
437
437
  const { immediate } = customOpts;
@@ -725,7 +725,14 @@ const renderPopupPanel = (h, $xeTableCustomPanel) => {
725
725
  }, $xeTable.callSlot(bottomSlot, params, h))
726
726
  : renderEmptyElement($xeTable),
727
727
  renderDragTip(h, _vm)
728
- ])
728
+ ]),
729
+ !treeConfig && (aggregateConfig || rowGroupConfig) && $xeTable.getPivotTableAggregatePopupPanel
730
+ ? h($xeTable.getPivotTableAggregatePopupPanel(), {
731
+ props: {
732
+ customStore
733
+ }
734
+ })
735
+ : renderEmptyElement($xeTable)
729
736
  ]);
730
737
  },
731
738
  footer: () => {
@@ -190,6 +190,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
190
190
  $xeTable.triggerCellDblclickEvent(evnt, cellParams);
191
191
  };
192
192
  let isMergeCell = false;
193
+ let mergeColspan = 1;
193
194
  let mergeRowspan = 1;
194
195
  // 合并行或列
195
196
  if (mergeBodyFlag && mergeBodyList.length) {
@@ -206,6 +207,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
206
207
  }
207
208
  if (colspan > 1) {
208
209
  isMergeCell = true;
210
+ mergeColspan = colspan;
209
211
  tdAttrs.colspan = colspan;
210
212
  }
211
213
  }
@@ -223,6 +225,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
223
225
  }
224
226
  if (colspan > 1) {
225
227
  isMergeCell = true;
228
+ mergeColspan = colspan;
226
229
  tdAttrs.colspan = colspan;
227
230
  }
228
231
  }
@@ -262,16 +265,16 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
262
265
  }
263
266
  const tcStyle = {};
264
267
  if (hasEllipsis && resizeWidthFlag) {
265
- let tsColspan = tdAttrs.colspan || 0;
266
- if (tsColspan > 1) {
267
- for (let index = 1; index < tsColspan; index++) {
268
+ let mergeColWidth = 0;
269
+ if (mergeColspan > 1) {
270
+ for (let index = 1; index < mergeColspan; index++) {
268
271
  const nextColumn = visibleColumn[columnIndex + index];
269
272
  if (nextColumn) {
270
- tsColspan += nextColumn.renderWidth;
273
+ mergeColWidth += nextColumn.renderWidth;
271
274
  }
272
275
  }
273
276
  }
274
- tcStyle.width = `${column.renderWidth - (cellOffsetWidth * tsColspan)}px`;
277
+ tcStyle.width = `${column.renderWidth + mergeColWidth - cellOffsetWidth}px`;
275
278
  }
276
279
  if (scrollYLoad || hasEllipsis || isCsHeight || isRsHeight) {
277
280
  tcStyle.height = `${cellHeight}px`;
@@ -151,12 +151,26 @@ function renderHeaderCellBaseVNs(h, params, content) {
151
151
  ];
152
152
  return vns;
153
153
  }
154
+ function getRenderDefaultColumnTitle(h, column, content) {
155
+ if (column.type === 'html' && XEUtils.isString(content)) {
156
+ return h('span', {
157
+ key: 'ch',
158
+ domProps: {
159
+ innerHTML: content
160
+ }
161
+ });
162
+ }
163
+ return h('span', {
164
+ key: 'ct'
165
+ }, getSlotVNs(content));
166
+ }
154
167
  function renderTitleContent(h, params, content) {
155
168
  const { $table, column } = params;
156
- const { type, showHeaderOverflow } = column;
169
+ const { showHeaderOverflow } = column;
157
170
  const tableProps = $table;
158
171
  const tableReactData = $table;
159
172
  const { showHeaderOverflow: allColumnHeaderOverflow } = tableProps;
173
+ const { isRowGroupStatus } = tableReactData;
160
174
  const tooltipOpts = $table.computeTooltipOpts;
161
175
  const showAllTip = tooltipOpts.showAll;
162
176
  const headOverflow = XEUtils.isUndefined(showHeaderOverflow) || XEUtils.isNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow;
@@ -186,19 +200,13 @@ function renderTitleContent(h, params, content) {
186
200
  }
187
201
  };
188
202
  }
203
+ const titleVN = getRenderDefaultColumnTitle(h, column, content);
189
204
  return [
190
- type === 'html' && XEUtils.isString(content)
191
- ? h('span', {
192
- class: 'vxe-cell--title',
193
- domProps: {
194
- innerHTML: content
195
- },
196
- on: ons
197
- })
198
- : h('span', {
199
- class: 'vxe-cell--title',
200
- on: ons
201
- }, getSlotVNs(content))
205
+ h('span', Object.assign({ class: 'vxe-cell--title' }, ons), isRowGroupStatus && column.aggFunc && $table.getPivotTableAggregateRenderColTitles
206
+ ? $table.getPivotTableAggregateRenderColTitles(h, column, titleVN)
207
+ : [
208
+ titleVN
209
+ ])
202
210
  ];
203
211
  }
204
212
  function getFooterContent(h, params) {
@@ -6844,7 +6844,8 @@ const Methods = {
6844
6844
  const childList = vals[2];
6845
6845
  let sLen = 0; // 已选
6846
6846
  let hLen = 0; // 半选
6847
- let vLen = 0; // 有效行
6847
+ let vLen = 0; // 有效子行
6848
+ const cLen = childList.length; // 有效子行
6848
6849
  childList.forEach(checkMethod
6849
6850
  ? (item) => {
6850
6851
  const childRowid = handleGetRowId(item);
@@ -6878,16 +6879,29 @@ const Methods = {
6878
6879
  }
6879
6880
  vLen++;
6880
6881
  });
6881
- let isSelected = (sLen >= vLen && (vLen >= 1 || hLen >= 1));
6882
- if (checkMethod) {
6883
- if (checkMethod({ $table: $xeTable, row })) {
6884
- isSelected = sLen >= vLen;
6882
+ let isSelected = false;
6883
+ if (cLen > 0) {
6884
+ if (vLen > 0) {
6885
+ isSelected = (sLen > 0 || hLen > 0) && sLen >= vLen;
6885
6886
  }
6886
6887
  else {
6887
- isSelected = selectCheckboxMaps[rowid];
6888
+ // 如果存在子项禁用
6889
+ if ((sLen > 0 && sLen >= vLen)) {
6890
+ isSelected = true;
6891
+ }
6892
+ else if (selectCheckboxMaps[rowid]) {
6893
+ isSelected = true;
6894
+ }
6895
+ else {
6896
+ isSelected = false;
6897
+ }
6888
6898
  }
6889
6899
  }
6890
- const halfSelect = !isSelected && (sLen >= 1 || hLen >= 1);
6900
+ else {
6901
+ // 如果无子项
6902
+ isSelected = selectCheckboxMaps[rowid];
6903
+ }
6904
+ const halfSelect = !isSelected && (sLen > 0 || hLen > 0);
6891
6905
  if (checkField) {
6892
6906
  XEUtils.set(row, checkField, isSelected);
6893
6907
  }
@@ -6930,7 +6944,9 @@ const Methods = {
6930
6944
  const { checkField, checkMethod, showReserveStatus } = checkboxOpts;
6931
6945
  const { handleGetRowId } = createHandleGetRowId($xeTable);
6932
6946
  let sLen = 0; // 已选
6947
+ let dsLen = 0; // 禁用的已选
6933
6948
  let hLen = 0; // 半选
6949
+ let dhLen = 0; // 禁用的半选
6934
6950
  let vLen = 0; // 有效行
6935
6951
  const rootList = (treeConfig ? afterTreeFullData : (isRowGroupStatus ? afterGroupFullData : afterFullData));
6936
6952
  rootList.forEach(checkMethod
@@ -6948,10 +6964,10 @@ const Methods = {
6948
6964
  }
6949
6965
  else {
6950
6966
  if (selected) {
6951
- sLen++;
6967
+ dsLen++;
6952
6968
  }
6953
6969
  else if (treeIndeterminateRowMaps[childRowid]) {
6954
- hLen++;
6970
+ dhLen++;
6955
6971
  }
6956
6972
  }
6957
6973
  }
@@ -6967,7 +6983,7 @@ const Methods = {
6967
6983
  vLen++;
6968
6984
  });
6969
6985
  const isSelected = rootList.length > 0 ? (vLen > 0 ? (sLen >= vLen) : (sLen >= rootList.length)) : false;
6970
- let halfSelect = !isSelected && (sLen >= 1 || hLen >= 1);
6986
+ let halfSelect = !isSelected && (sLen > 0 || hLen > 0 || dsLen > 0 || dhLen > 0);
6971
6987
  // 如果复选框启用保留记录,当保留数据存在时显示半选
6972
6988
  if (!isSelected && !halfSelect && showReserveStatus) {
6973
6989
  halfSelect = !XEUtils.isEmpty(checkboxReserveRowMap);
@@ -8888,12 +8904,24 @@ const Methods = {
8888
8904
  const props = $xeTable;
8889
8905
  const internalData = $xeTable;
8890
8906
  const { aggregateConfig, rowGroupConfig } = props;
8907
+ const aggregateOpts = $xeTable.computeAggregateOpts;
8908
+ const { maxGroupSize } = aggregateOpts;
8891
8909
  if (!(aggregateConfig || rowGroupConfig)) {
8892
8910
  errLog('vxe.error.reqProp', ['aggregate-config']);
8893
8911
  return $xeTable.$nextTick();
8894
8912
  }
8895
- if (fieldOrColumns) {
8896
- handleUpdateRowGroup($xeTable, (XEUtils.isArray(fieldOrColumns) ? fieldOrColumns : [fieldOrColumns]).map(fieldOrColumn => {
8913
+ const confList = fieldOrColumns ? (XEUtils.isArray(fieldOrColumns) ? fieldOrColumns : [fieldOrColumns]) : [];
8914
+ if (maxGroupSize && confList.length > maxGroupSize) {
8915
+ if (VxeUI.modal) {
8916
+ VxeUI.modal.message({
8917
+ status: 'error',
8918
+ content: getI18n('vxe.table.maxGroupCol', [maxGroupSize])
8919
+ });
8920
+ }
8921
+ return $xeTable.$nextTick();
8922
+ }
8923
+ if (confList.length) {
8924
+ handleUpdateRowGroup($xeTable, confList.map(fieldOrColumn => {
8897
8925
  return XEUtils.isString(fieldOrColumn) ? fieldOrColumn : fieldOrColumn.field;
8898
8926
  }));
8899
8927
  return loadTableData($xeTable, internalData.tableSynchData, true);
@@ -1111,10 +1111,10 @@ export default {
1111
1111
  const $xeTable = this;
1112
1112
  const reactData = $xeTable;
1113
1113
  const internalData = $xeTable;
1114
- const { rowExpandedFlag, expandColumn, rowGroupExpandedFlag, treeExpandedFlag } = reactData;
1114
+ const { tableData, rowExpandedFlag, expandColumn, rowGroupExpandedFlag, treeExpandedFlag } = reactData;
1115
1115
  const { visibleDataRowIdData, rowExpandedMaps } = internalData;
1116
1116
  const expandList = [];
1117
- if (expandColumn && rowExpandedFlag && rowGroupExpandedFlag && treeExpandedFlag) {
1117
+ if (tableData.length && expandColumn && rowExpandedFlag && rowGroupExpandedFlag && treeExpandedFlag) {
1118
1118
  XEUtils.each(rowExpandedMaps, (row, rowid) => {
1119
1119
  if (visibleDataRowIdData[rowid]) {
1120
1120
  expandList.push(row);
@@ -999,13 +999,17 @@
999
999
 
1000
1000
  .vxe-table-custom-popup--body-wrapper {
1001
1001
  position: relative;
1002
- overflow: auto;
1002
+ display: flex;
1003
+ flex-direction: column;
1004
+ overflow: hidden;
1003
1005
  height: 100%;
1004
1006
  outline: 0;
1005
1007
  }
1006
1008
 
1007
1009
  .vxe-table-custom-popup--handle-wrapper {
1010
+ flex-grow: 1;
1008
1011
  outline: 0;
1012
+ overflow: auto;
1009
1013
  }
1010
1014
 
1011
1015
  .vxe-table-custom-popup--table-wrapper {