vxe-table 3.15.46 → 3.15.48

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 (171) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/locale/lang/ar-EG.js +16 -2
  4. package/es/locale/lang/de-DE.js +16 -2
  5. package/es/locale/lang/en-US.js +16 -2
  6. package/es/locale/lang/es-ES.js +16 -2
  7. package/es/locale/lang/fr-FR.js +16 -2
  8. package/es/locale/lang/hu-HU.js +16 -2
  9. package/es/locale/lang/hy-AM.js +16 -2
  10. package/es/locale/lang/id-ID.js +16 -2
  11. package/es/locale/lang/it-IT.js +16 -2
  12. package/es/locale/lang/ja-JP.js +16 -2
  13. package/es/locale/lang/ko-KR.js +16 -2
  14. package/es/locale/lang/ms-MY.js +16 -2
  15. package/es/locale/lang/nb-NO.js +16 -2
  16. package/es/locale/lang/pt-BR.js +16 -2
  17. package/es/locale/lang/ru-RU.js +16 -2
  18. package/es/locale/lang/th-TH.js +16 -2
  19. package/es/locale/lang/ug-CN.js +16 -2
  20. package/es/locale/lang/uk-UA.js +16 -2
  21. package/es/locale/lang/uz-UZ.js +16 -2
  22. package/es/locale/lang/vi-VN.js +16 -2
  23. package/es/locale/lang/zh-CHT.js +17 -3
  24. package/es/locale/lang/zh-CN.js +16 -2
  25. package/es/style.css +1 -1
  26. package/es/style.min.css +1 -1
  27. package/es/table/module/custom/mixin.js +20 -5
  28. package/es/table/module/custom/panel.js +36 -15
  29. package/es/table/src/body.js +8 -5
  30. package/es/table/src/cell.js +21 -13
  31. package/es/table/src/columnInfo.js +1 -0
  32. package/es/table/src/methods.js +62 -17
  33. package/es/table/src/table.js +14 -3
  34. package/es/table/style.css +5 -1
  35. package/es/table/style.min.css +1 -1
  36. package/es/ui/index.js +9 -5
  37. package/es/ui/src/log.js +1 -1
  38. package/es/vxe-table/style.css +5 -1
  39. package/es/vxe-table/style.min.css +1 -1
  40. package/lib/index.css +1 -1
  41. package/lib/index.min.css +1 -1
  42. package/lib/index.umd.js +190 -66
  43. package/lib/index.umd.min.js +1 -1
  44. package/lib/locale/lang/ar-EG.js +16 -2
  45. package/lib/locale/lang/ar-EG.min.js +1 -1
  46. package/lib/locale/lang/ar-EG.umd.js +16 -2
  47. package/lib/locale/lang/de-DE.js +16 -2
  48. package/lib/locale/lang/de-DE.min.js +1 -1
  49. package/lib/locale/lang/de-DE.umd.js +16 -2
  50. package/lib/locale/lang/en-US.js +16 -2
  51. package/lib/locale/lang/en-US.min.js +1 -1
  52. package/lib/locale/lang/en-US.umd.js +16 -2
  53. package/lib/locale/lang/es-ES.js +16 -2
  54. package/lib/locale/lang/es-ES.min.js +1 -1
  55. package/lib/locale/lang/es-ES.umd.js +16 -2
  56. package/lib/locale/lang/fr-FR.js +16 -2
  57. package/lib/locale/lang/fr-FR.min.js +1 -1
  58. package/lib/locale/lang/fr-FR.umd.js +16 -2
  59. package/lib/locale/lang/hu-HU.js +16 -2
  60. package/lib/locale/lang/hu-HU.min.js +1 -1
  61. package/lib/locale/lang/hu-HU.umd.js +16 -2
  62. package/lib/locale/lang/hy-AM.js +16 -2
  63. package/lib/locale/lang/hy-AM.min.js +1 -1
  64. package/lib/locale/lang/hy-AM.umd.js +16 -2
  65. package/lib/locale/lang/id-ID.js +16 -2
  66. package/lib/locale/lang/id-ID.min.js +1 -1
  67. package/lib/locale/lang/id-ID.umd.js +16 -2
  68. package/lib/locale/lang/it-IT.js +16 -2
  69. package/lib/locale/lang/it-IT.min.js +1 -1
  70. package/lib/locale/lang/it-IT.umd.js +16 -2
  71. package/lib/locale/lang/ja-JP.js +16 -2
  72. package/lib/locale/lang/ja-JP.min.js +1 -1
  73. package/lib/locale/lang/ja-JP.umd.js +16 -2
  74. package/lib/locale/lang/ko-KR.js +16 -2
  75. package/lib/locale/lang/ko-KR.min.js +1 -1
  76. package/lib/locale/lang/ko-KR.umd.js +16 -2
  77. package/lib/locale/lang/ms-MY.js +16 -2
  78. package/lib/locale/lang/ms-MY.min.js +1 -1
  79. package/lib/locale/lang/ms-MY.umd.js +16 -2
  80. package/lib/locale/lang/nb-NO.js +16 -2
  81. package/lib/locale/lang/nb-NO.min.js +1 -1
  82. package/lib/locale/lang/nb-NO.umd.js +16 -2
  83. package/lib/locale/lang/pt-BR.js +16 -2
  84. package/lib/locale/lang/pt-BR.min.js +1 -1
  85. package/lib/locale/lang/pt-BR.umd.js +16 -2
  86. package/lib/locale/lang/ru-RU.js +16 -2
  87. package/lib/locale/lang/ru-RU.min.js +1 -1
  88. package/lib/locale/lang/ru-RU.umd.js +16 -2
  89. package/lib/locale/lang/th-TH.js +16 -2
  90. package/lib/locale/lang/th-TH.min.js +1 -1
  91. package/lib/locale/lang/th-TH.umd.js +16 -2
  92. package/lib/locale/lang/ug-CN.js +16 -2
  93. package/lib/locale/lang/ug-CN.min.js +1 -1
  94. package/lib/locale/lang/ug-CN.umd.js +16 -2
  95. package/lib/locale/lang/uk-UA.js +16 -2
  96. package/lib/locale/lang/uk-UA.min.js +1 -1
  97. package/lib/locale/lang/uk-UA.umd.js +16 -2
  98. package/lib/locale/lang/uz-UZ.js +16 -2
  99. package/lib/locale/lang/uz-UZ.min.js +1 -1
  100. package/lib/locale/lang/uz-UZ.umd.js +16 -2
  101. package/lib/locale/lang/vi-VN.js +16 -2
  102. package/lib/locale/lang/vi-VN.min.js +1 -1
  103. package/lib/locale/lang/vi-VN.umd.js +16 -2
  104. package/lib/locale/lang/zh-CHT.js +17 -3
  105. package/lib/locale/lang/zh-CHT.min.js +1 -1
  106. package/lib/locale/lang/zh-CHT.umd.js +17 -3
  107. package/lib/locale/lang/zh-CN.js +16 -2
  108. package/lib/locale/lang/zh-CN.min.js +1 -1
  109. package/lib/locale/lang/zh-CN.umd.js +16 -2
  110. package/lib/style.css +1 -1
  111. package/lib/style.min.css +1 -1
  112. package/lib/table/module/custom/mixin.js +20 -5
  113. package/lib/table/module/custom/mixin.min.js +1 -1
  114. package/lib/table/module/custom/panel.js +34 -15
  115. package/lib/table/module/custom/panel.min.js +1 -1
  116. package/lib/table/src/body.js +8 -5
  117. package/lib/table/src/body.min.js +1 -1
  118. package/lib/table/src/cell.js +20 -11
  119. package/lib/table/src/cell.min.js +1 -1
  120. package/lib/table/src/columnInfo.js +1 -0
  121. package/lib/table/src/columnInfo.min.js +1 -1
  122. package/lib/table/src/methods.js +67 -20
  123. package/lib/table/src/methods.min.js +1 -1
  124. package/lib/table/src/table.js +14 -3
  125. package/lib/table/src/table.min.js +1 -1
  126. package/lib/table/style/style.css +5 -1
  127. package/lib/table/style/style.min.css +1 -1
  128. package/lib/ui/index.js +9 -5
  129. package/lib/ui/index.min.js +1 -1
  130. package/lib/ui/src/log.js +1 -1
  131. package/lib/ui/src/log.min.js +1 -1
  132. package/lib/vxe-table/style/style.css +5 -1
  133. package/lib/vxe-table/style/style.min.css +1 -1
  134. package/package.json +1 -1
  135. package/packages/locale/lang/ar-EG.ts +16 -2
  136. package/packages/locale/lang/de-DE.ts +16 -2
  137. package/packages/locale/lang/en-US.ts +16 -2
  138. package/packages/locale/lang/es-ES.ts +16 -2
  139. package/packages/locale/lang/fr-FR.ts +16 -2
  140. package/packages/locale/lang/hu-HU.ts +16 -2
  141. package/packages/locale/lang/hy-AM.ts +16 -2
  142. package/packages/locale/lang/id-ID.ts +16 -2
  143. package/packages/locale/lang/it-IT.ts +16 -2
  144. package/packages/locale/lang/ja-JP.ts +16 -2
  145. package/packages/locale/lang/ko-KR.ts +16 -2
  146. package/packages/locale/lang/ms-MY.ts +16 -2
  147. package/packages/locale/lang/nb-NO.ts +16 -2
  148. package/packages/locale/lang/pt-BR.ts +16 -2
  149. package/packages/locale/lang/ru-RU.ts +16 -2
  150. package/packages/locale/lang/th-TH.ts +16 -2
  151. package/packages/locale/lang/ug-CN.ts +16 -2
  152. package/packages/locale/lang/uk-UA.ts +16 -2
  153. package/packages/locale/lang/uz-UZ.ts +16 -2
  154. package/packages/locale/lang/vi-VN.ts +16 -2
  155. package/packages/locale/lang/zh-CHT.ts +17 -3
  156. package/packages/locale/lang/zh-CN.ts +16 -2
  157. package/packages/table/module/custom/mixin.ts +18 -5
  158. package/packages/table/module/custom/panel.ts +34 -14
  159. package/packages/table/src/body.ts +8 -5
  160. package/packages/table/src/cell.ts +25 -13
  161. package/packages/table/src/columnInfo.ts +1 -0
  162. package/packages/table/src/methods.ts +64 -16
  163. package/packages/table/src/table.ts +14 -3
  164. package/packages/ui/index.ts +8 -4
  165. package/styles/components/table-module/custom.scss +5 -1
  166. /package/es/{iconfont.1750651550655.ttf → iconfont.1750813664386.ttf} +0 -0
  167. /package/es/{iconfont.1750651550655.woff → iconfont.1750813664386.woff} +0 -0
  168. /package/es/{iconfont.1750651550655.woff2 → iconfont.1750813664386.woff2} +0 -0
  169. /package/lib/{iconfont.1750651550655.ttf → iconfont.1750813664386.ttf} +0 -0
  170. /package/lib/{iconfont.1750651550655.woff → iconfont.1750813664386.woff} +0 -0
  171. /package/lib/{iconfont.1750651550655.woff2 → iconfont.1750813664386.woff2} +0 -0
@@ -185,7 +185,8 @@ function restoreCustomStorage ($xeTable: VxeTableConstructor & VxeTablePrivateMe
185
185
  const isCustomVisible = hangleStorageDefaultValue(storageOpts.visible, isAllCustom)
186
186
  const isCustomFixed = hangleStorageDefaultValue(storageOpts.fixed, isAllCustom)
187
187
  const isCustomSort = hangleStorageDefaultValue(storageOpts.sort, isAllCustom)
188
- if (storage && (customConfig ? isEnableConf(customOpts) : customOpts.enabled) && (isCustomResizable || isCustomVisible || isCustomFixed || isCustomSort)) {
188
+ const isCustomAggFunc = hangleStorageDefaultValue(storageOpts.aggFunc, isAllCustom)
189
+ if (storage && (customConfig ? isEnableConf(customOpts) : customOpts.enabled) && (isCustomResizable || isCustomVisible || isCustomFixed || isCustomSort || isCustomAggFunc)) {
189
190
  if (!tableId) {
190
191
  errLog('vxe.error.reqProp', ['id'])
191
192
  return
@@ -2715,7 +2716,21 @@ function handleRecalculateLayout ($xeTable: VxeTableConstructor & VxeTablePrivat
2715
2716
  })
2716
2717
  }
2717
2718
 
2718
- const handleUpdateRowGroup = ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, groupFields?: string[]) => {
2719
+ function handleUpdateAggValues ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
2720
+ const reactData = $xeTable as unknown as TableReactData
2721
+ const internalData = $xeTable as unknown as TableInternalData
2722
+
2723
+ const { visibleColumn } = internalData
2724
+ const aggCols: VxeTableDefines.ColumnInfo[] = []
2725
+ visibleColumn.forEach(column => {
2726
+ if (column.aggFunc) {
2727
+ aggCols.push(column)
2728
+ }
2729
+ })
2730
+ reactData.aggHandleAggColumns = aggCols
2731
+ }
2732
+
2733
+ function handleUpdateRowGroup ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, groupFields?: string[]) {
2719
2734
  const reactData = $xeTable as unknown as TableReactData
2720
2735
 
2721
2736
  const aggFields: string[] = []
@@ -2730,6 +2745,7 @@ const handleUpdateRowGroup = ($xeTable: VxeTableConstructor & VxeTablePrivateMet
2730
2745
  }
2731
2746
  reactData.rowGroupList = aggConfs
2732
2747
  reactData.aggHandleFields = aggFields
2748
+ handleUpdateAggValues($xeTable)
2733
2749
  }
2734
2750
 
2735
2751
  function handleeGroupSummary ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, aggList: VxeTableDefines.AggregateRowInfo[]) {
@@ -3234,6 +3250,7 @@ function parseColumns ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, i
3234
3250
  }
3235
3251
  })
3236
3252
  handleTableColumn($xeTable)
3253
+ handleUpdateAggValues($xeTable)
3237
3254
  if (isReset) {
3238
3255
  return $xeTable.updateFooter().then(() => {
3239
3256
  return $xeTable.recalculate()
@@ -5163,15 +5180,18 @@ const Methods = {
5163
5180
  const isCustomVisible = hangleStorageDefaultValue(storageOpts.visible, isAllCustom)
5164
5181
  const isCustomFixed = hangleStorageDefaultValue(storageOpts.fixed, isAllCustom)
5165
5182
  const isCustomSort = hangleStorageDefaultValue(storageOpts.sort, isAllCustom)
5183
+ const isCustomAggFunc = hangleStorageDefaultValue(storageOpts.aggFunc, isAllCustom)
5166
5184
  const resizableData: Record<string, number> = {}
5167
5185
  const sortData: Record<string, number> = {}
5168
5186
  const visibleData: Record<string, boolean> = {}
5169
5187
  const fixedData: Record<string, VxeColumnPropTypes.Fixed> = {}
5188
+ const aggFuncData: Record<string, VxeColumnPropTypes.AggFunc> = {}
5170
5189
  const storeData: VxeTableDefines.CustomStoreData = {
5171
5190
  resizableData: undefined,
5172
5191
  sortData: undefined,
5173
5192
  visibleData: undefined,
5174
- fixedData: undefined
5193
+ fixedData: undefined,
5194
+ aggFuncData: undefined
5175
5195
  }
5176
5196
  if (!id) {
5177
5197
  if (storage) {
@@ -5183,6 +5203,7 @@ const Methods = {
5183
5203
  let hasSort = 0
5184
5204
  let hasFixed = 0
5185
5205
  let hasVisible = 0
5206
+ let hasAggFunc = 0
5186
5207
  XEUtils.eachTree(collectColumn, (column, index, items, path, parentColumn) => {
5187
5208
  const colKey = column.getKey()
5188
5209
  if (!colKey) {
@@ -5213,6 +5234,10 @@ const Methods = {
5213
5234
  visibleData[colKey] = true
5214
5235
  }
5215
5236
  }
5237
+ if (isCustomAggFunc && column.aggFunc !== column.defaultAggFunc) {
5238
+ hasAggFunc = 1
5239
+ aggFuncData[colKey] = column.aggFunc
5240
+ }
5216
5241
  })
5217
5242
  if (hasResizable) {
5218
5243
  storeData.resizableData = resizableData
@@ -5226,6 +5251,9 @@ const Methods = {
5226
5251
  if (hasVisible) {
5227
5252
  storeData.visibleData = visibleData
5228
5253
  }
5254
+ if (hasAggFunc) {
5255
+ storeData.aggFuncData = aggFuncData
5256
+ }
5229
5257
  return storeData
5230
5258
  },
5231
5259
  saveCustomStore (type: any) {
@@ -5236,17 +5264,18 @@ const Methods = {
5236
5264
  const { customConfig } = props
5237
5265
  const tableId = $xeTable.computeTableId
5238
5266
  const customOpts = $xeTable.computeCustomOpts
5239
- const { updateStore, storage } = customOpts
5267
+ const { updateStore, storage, storeOptions } = customOpts
5240
5268
  const isAllCustom = storage === true
5241
- const storageOpts = isAllCustom ? {} : Object.assign({}, storage || {})
5242
- const isCustomResizable = isAllCustom || storageOpts.resizable
5243
- const isCustomVisible = isAllCustom || storageOpts.visible
5244
- const isCustomFixed = isAllCustom || storageOpts.fixed
5245
- const isCustomSort = isAllCustom || storageOpts.sort
5269
+ const storageOpts: VxeTableDefines.VxeTableCustomStorageObj = isAllCustom ? {} : Object.assign({}, storage || {}, storeOptions)
5270
+ const isCustomResizable = hangleStorageDefaultValue(storageOpts.resizable, isAllCustom)
5271
+ const isCustomVisible = hangleStorageDefaultValue(storageOpts.visible, isAllCustom)
5272
+ const isCustomFixed = hangleStorageDefaultValue(storageOpts.fixed, isAllCustom)
5273
+ const isCustomSort = hangleStorageDefaultValue(storageOpts.sort, isAllCustom)
5274
+ const isCustomAggFunc = hangleStorageDefaultValue(storageOpts.aggFunc, isAllCustom)
5246
5275
  if (type !== 'reset') {
5247
5276
  reactData.isCustomStatus = true
5248
5277
  }
5249
- if (storage && (customConfig ? isEnableConf(customOpts) : customOpts.enabled) && (isCustomResizable || isCustomVisible || isCustomFixed || isCustomSort)) {
5278
+ if (storage && (customConfig ? isEnableConf(customOpts) : customOpts.enabled) && (isCustomResizable || isCustomVisible || isCustomFixed || isCustomSort || isCustomAggFunc)) {
5250
5279
  if (!tableId) {
5251
5280
  errLog('vxe.error.reqProp', ['id'])
5252
5281
  return this.$nextTick()
@@ -5947,9 +5976,10 @@ const Methods = {
5947
5976
 
5948
5977
  const { $el, $refs, $toolbar, mouseConfig, editStore, ctxMenuStore, editRules, editOpts, validOpts, areaOpts, filterStore, customStore, getRowNode } = this
5949
5978
  const { actived } = editStore
5950
- const { customWrapper, refValidTooltip } = $refs
5951
5979
  const tableFilter = $refs.refTableFilter
5952
5980
  const tableMenu = $refs.refTableMenu
5981
+ const tableCustom = $refs.refTableCustom
5982
+ const validTooltip = $refs.refValidTooltip
5953
5983
  // 筛选
5954
5984
  if (tableFilter) {
5955
5985
  if (getEventTargetNode(evnt, $el, 'vxe-cell--filter').flag) {
@@ -5963,10 +5993,10 @@ const Methods = {
5963
5993
  }
5964
5994
  }
5965
5995
  // 自定义列
5966
- if (customWrapper) {
5996
+ if (tableCustom) {
5967
5997
  if (customStore.btnEl === evnt.target || getEventTargetNode(evnt, document.body, 'vxe-toolbar-custom-target').flag) {
5968
5998
  // 如果点击了自定义列按钮
5969
- } else if (getEventTargetNode(evnt, customWrapper.$el).flag) {
5999
+ } else if (getEventTargetNode(evnt, tableCustom.$el).flag) {
5970
6000
  // 如果点击自定义列容器
5971
6001
  } else {
5972
6002
  if (!getEventTargetNode(evnt, document.body, 'vxe-table--ignore-clear').flag) {
@@ -5981,7 +6011,7 @@ const Methods = {
5981
6011
  // 如果是激活状态,点击了单元格之外
5982
6012
  const cell = actived.args.cell
5983
6013
  if ((!cell || !getEventTargetNode(evnt, cell).flag)) {
5984
- if (refValidTooltip && getEventTargetNode(evnt, refValidTooltip.$el).flag) {
6014
+ if (validTooltip && getEventTargetNode(evnt, validTooltip.$el).flag) {
5985
6015
  // 如果是激活状态,且点击了校验提示框
5986
6016
  } else if (!this.lastCallTime || this.lastCallTime + 50 < Date.now()) {
5987
6017
  if (!getEventTargetNode(evnt, document.body, 'vxe-table--ignore-clear').flag) {
@@ -9134,12 +9164,24 @@ const Methods = {
9134
9164
  const internalData = $xeTable as unknown as TableInternalData
9135
9165
 
9136
9166
  const { aggregateConfig, rowGroupConfig } = props
9167
+ const aggregateOpts = $xeTable.computeAggregateOpts
9168
+ const { maxGroupSize } = aggregateOpts
9137
9169
  if (!(aggregateConfig || rowGroupConfig)) {
9138
9170
  errLog('vxe.error.reqProp', ['aggregate-config'])
9139
9171
  return $xeTable.$nextTick()
9140
9172
  }
9141
- if (fieldOrColumns) {
9142
- handleUpdateRowGroup($xeTable, (XEUtils.isArray(fieldOrColumns) ? fieldOrColumns : [fieldOrColumns]).map(fieldOrColumn => {
9173
+ const confList = fieldOrColumns ? (XEUtils.isArray(fieldOrColumns) ? fieldOrColumns : [fieldOrColumns]) : []
9174
+ if (maxGroupSize && confList.length > maxGroupSize) {
9175
+ if (VxeUI.modal) {
9176
+ VxeUI.modal.message({
9177
+ status: 'error',
9178
+ content: getI18n('vxe.table.maxGroupCol', [maxGroupSize])
9179
+ })
9180
+ }
9181
+ return $xeTable.$nextTick()
9182
+ }
9183
+ if (confList.length) {
9184
+ handleUpdateRowGroup($xeTable, confList.map(fieldOrColumn => {
9143
9185
  return XEUtils.isString(fieldOrColumn) ? fieldOrColumn : fieldOrColumn.field
9144
9186
  }))
9145
9187
  return loadTableData($xeTable, internalData.tableSynchData, true)
@@ -10583,6 +10625,12 @@ const Methods = {
10583
10625
  return updateStyle($xeTable)
10584
10626
  })
10585
10627
  },
10628
+ handleUpdateAggData () {
10629
+ const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
10630
+ const internalData = $xeTable as unknown as TableInternalData
10631
+
10632
+ return loadTableData($xeTable, internalData.tableSynchData, true)
10633
+ },
10586
10634
  updateZindex () {
10587
10635
  if (this.zIndex) {
10588
10636
  this.tZindex = this.zIndex
@@ -678,6 +678,7 @@ export default {
678
678
  isRowGroupStatus: false,
679
679
  rowGroupList: [],
680
680
  aggHandleFields: [],
681
+ aggHandleAggColumns: [],
681
682
 
682
683
  rowGroupExpandedFlag: 1,
683
684
  rowExpandedFlag: 1,
@@ -1684,6 +1685,16 @@ export default {
1684
1685
  return
1685
1686
  }
1686
1687
  }
1688
+ if (!$xeTable.handlePivotTableAggregateData) {
1689
+ if (customOpts.allowGroup) {
1690
+ errLog('vxe.error.notProp', ['custom-config.allowGroup'])
1691
+ return
1692
+ }
1693
+ if (customOpts.allowValues) {
1694
+ errLog('vxe.error.notProp', ['custom-config.allowValues'])
1695
+ return
1696
+ }
1697
+ }
1687
1698
  if (treeConfig && rowOpts.drag && !treeOpts.transform) {
1688
1699
  warnLog('vxe.error.notSupportProp', ['column-config.drag', 'tree-config.transform=false', 'tree-config.transform=true'])
1689
1700
  }
@@ -1696,8 +1707,8 @@ export default {
1696
1707
  if (aggregateOpts.countFields) {
1697
1708
  warnLog('vxe.error.delProp', ['row-group-config.countFields', 'column.agg-func'])
1698
1709
  }
1699
- if (aggregateOpts.countMethod) {
1700
- warnLog('vxe.error.delProp', ['row-group-config.countMethod', 'aggregate-config.aggregateMethod'])
1710
+ if (aggregateOpts.aggregateMethod) {
1711
+ warnLog('vxe.error.delProp', ['row-group-config.aggregateMethod', 'aggregate-config.countMethod'])
1701
1712
  }
1702
1713
  if (props.treeConfig && treeOpts.children) {
1703
1714
  warnLog('vxe.error.delProp', ['tree-config.children', 'tree-config.childrenField'])
@@ -2118,7 +2129,7 @@ export default {
2118
2129
  initStore.custom
2119
2130
  ? h(TableCustomPanelComponent, {
2120
2131
  key: 'cs',
2121
- ref: 'customWrapper',
2132
+ ref: 'refTableCustom',
2122
2133
  props: {
2123
2134
  customStore
2124
2135
  }
@@ -109,6 +109,7 @@ VxeUI.setConfig({
109
109
  // rowGroup: false,
110
110
  // aggFunc: false
111
111
  },
112
+ // autoAggGroupValues: false,
112
113
  // checkMethod () {},
113
114
  modalOptions: {
114
115
  showMaximize: true,
@@ -148,7 +149,9 @@ VxeUI.setConfig({
148
149
  childrenField: '_X_ROW_CHILDREN',
149
150
  mapChildrenField: '_X_ROW_CHILD_LIST',
150
151
  indent: 20,
151
- showIcon: true
152
+ showIcon: true,
153
+ maxGroupSize: 4,
154
+ showAggFuncTitle: true
152
155
  },
153
156
  treeConfig: {
154
157
  padding: true,
@@ -321,9 +324,10 @@ VxeUI.setIcon({
321
324
  TABLE_DRAG_DISABLED: iconPrefix + 'no-drop',
322
325
  TABLE_ROW_GROUP_OPEN: iconPrefix + 'arrow-right rotate90',
323
326
  TABLE_ROW_GROUP_CLOSE: iconPrefix + 'arrow-right',
324
- TABLE_AGGREGATION_GROUPING: iconPrefix + 'grouping',
325
- TABLE_AGGREGATION_VALUES: iconPrefix + 'values',
326
- TABLE_AGGREGATION_DELETE: iconPrefix + 'close',
327
+ TABLE_AGGREGATE_GROUPING: iconPrefix + 'grouping',
328
+ TABLE_AGGREGATE_VALUES: iconPrefix + 'values',
329
+ TABLE_AGGREGATE_SORT: iconPrefix + 'drag-handle',
330
+ TABLE_AGGREGATE_DELETE: iconPrefix + 'close',
327
331
 
328
332
  // toolbar
329
333
  TOOLBAR_TOOLS_REFRESH: iconPrefix + 'repeat',
@@ -218,12 +218,16 @@
218
218
 
219
219
  .vxe-table-custom-popup--body-wrapper {
220
220
  position: relative;
221
- overflow: auto;
221
+ display: flex;
222
+ flex-direction: column;
223
+ overflow: hidden;
222
224
  height: 100%;
223
225
  outline: 0;
224
226
  }
225
227
  .vxe-table-custom-popup--handle-wrapper {
228
+ flex-grow: 1;
226
229
  outline: 0;
230
+ overflow: auto;
227
231
  }
228
232
 
229
233
  .vxe-table-custom-popup--table-wrapper {