vxe-table 3.15.45 → 3.15.47

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 (148) hide show
  1. package/es/locale/lang/ar-EG.js +14 -1
  2. package/es/locale/lang/de-DE.js +14 -1
  3. package/es/locale/lang/en-US.js +14 -1
  4. package/es/locale/lang/es-ES.js +14 -1
  5. package/es/locale/lang/fr-FR.js +14 -1
  6. package/es/locale/lang/hu-HU.js +14 -1
  7. package/es/locale/lang/hy-AM.js +14 -1
  8. package/es/locale/lang/id-ID.js +14 -1
  9. package/es/locale/lang/it-IT.js +14 -1
  10. package/es/locale/lang/ja-JP.js +14 -1
  11. package/es/locale/lang/ko-KR.js +14 -1
  12. package/es/locale/lang/ms-MY.js +14 -1
  13. package/es/locale/lang/nb-NO.js +14 -1
  14. package/es/locale/lang/pt-BR.js +14 -1
  15. package/es/locale/lang/ru-RU.js +14 -1
  16. package/es/locale/lang/th-TH.js +14 -1
  17. package/es/locale/lang/ug-CN.js +14 -1
  18. package/es/locale/lang/uk-UA.js +14 -1
  19. package/es/locale/lang/uz-UZ.js +14 -1
  20. package/es/locale/lang/vi-VN.js +14 -1
  21. package/es/locale/lang/zh-CHT.js +15 -2
  22. package/es/locale/lang/zh-CN.js +14 -1
  23. package/es/style.css +1 -1
  24. package/es/table/module/custom/mixin.js +20 -5
  25. package/es/table/module/custom/panel.js +29 -15
  26. package/es/table/src/columnInfo.js +1 -0
  27. package/es/table/src/methods.js +57 -16
  28. package/es/table/src/table.js +14 -3
  29. package/es/ui/index.js +8 -5
  30. package/es/ui/src/log.js +1 -1
  31. package/lib/index.umd.js +148 -50
  32. package/lib/index.umd.min.js +1 -1
  33. package/lib/locale/lang/ar-EG.js +14 -1
  34. package/lib/locale/lang/ar-EG.min.js +1 -1
  35. package/lib/locale/lang/ar-EG.umd.js +14 -1
  36. package/lib/locale/lang/de-DE.js +14 -1
  37. package/lib/locale/lang/de-DE.min.js +1 -1
  38. package/lib/locale/lang/de-DE.umd.js +14 -1
  39. package/lib/locale/lang/en-US.js +14 -1
  40. package/lib/locale/lang/en-US.min.js +1 -1
  41. package/lib/locale/lang/en-US.umd.js +14 -1
  42. package/lib/locale/lang/es-ES.js +14 -1
  43. package/lib/locale/lang/es-ES.min.js +1 -1
  44. package/lib/locale/lang/es-ES.umd.js +14 -1
  45. package/lib/locale/lang/fr-FR.js +14 -1
  46. package/lib/locale/lang/fr-FR.min.js +1 -1
  47. package/lib/locale/lang/fr-FR.umd.js +14 -1
  48. package/lib/locale/lang/hu-HU.js +14 -1
  49. package/lib/locale/lang/hu-HU.min.js +1 -1
  50. package/lib/locale/lang/hu-HU.umd.js +14 -1
  51. package/lib/locale/lang/hy-AM.js +14 -1
  52. package/lib/locale/lang/hy-AM.min.js +1 -1
  53. package/lib/locale/lang/hy-AM.umd.js +14 -1
  54. package/lib/locale/lang/id-ID.js +14 -1
  55. package/lib/locale/lang/id-ID.min.js +1 -1
  56. package/lib/locale/lang/id-ID.umd.js +14 -1
  57. package/lib/locale/lang/it-IT.js +14 -1
  58. package/lib/locale/lang/it-IT.min.js +1 -1
  59. package/lib/locale/lang/it-IT.umd.js +14 -1
  60. package/lib/locale/lang/ja-JP.js +14 -1
  61. package/lib/locale/lang/ja-JP.min.js +1 -1
  62. package/lib/locale/lang/ja-JP.umd.js +14 -1
  63. package/lib/locale/lang/ko-KR.js +14 -1
  64. package/lib/locale/lang/ko-KR.min.js +1 -1
  65. package/lib/locale/lang/ko-KR.umd.js +14 -1
  66. package/lib/locale/lang/ms-MY.js +14 -1
  67. package/lib/locale/lang/ms-MY.min.js +1 -1
  68. package/lib/locale/lang/ms-MY.umd.js +14 -1
  69. package/lib/locale/lang/nb-NO.js +14 -1
  70. package/lib/locale/lang/nb-NO.min.js +1 -1
  71. package/lib/locale/lang/nb-NO.umd.js +14 -1
  72. package/lib/locale/lang/pt-BR.js +14 -1
  73. package/lib/locale/lang/pt-BR.min.js +1 -1
  74. package/lib/locale/lang/pt-BR.umd.js +14 -1
  75. package/lib/locale/lang/ru-RU.js +14 -1
  76. package/lib/locale/lang/ru-RU.min.js +1 -1
  77. package/lib/locale/lang/ru-RU.umd.js +14 -1
  78. package/lib/locale/lang/th-TH.js +14 -1
  79. package/lib/locale/lang/th-TH.min.js +1 -1
  80. package/lib/locale/lang/th-TH.umd.js +14 -1
  81. package/lib/locale/lang/ug-CN.js +14 -1
  82. package/lib/locale/lang/ug-CN.min.js +1 -1
  83. package/lib/locale/lang/ug-CN.umd.js +14 -1
  84. package/lib/locale/lang/uk-UA.js +14 -1
  85. package/lib/locale/lang/uk-UA.min.js +1 -1
  86. package/lib/locale/lang/uk-UA.umd.js +14 -1
  87. package/lib/locale/lang/uz-UZ.js +14 -1
  88. package/lib/locale/lang/uz-UZ.min.js +1 -1
  89. package/lib/locale/lang/uz-UZ.umd.js +14 -1
  90. package/lib/locale/lang/vi-VN.js +14 -1
  91. package/lib/locale/lang/vi-VN.min.js +1 -1
  92. package/lib/locale/lang/vi-VN.umd.js +14 -1
  93. package/lib/locale/lang/zh-CHT.js +15 -2
  94. package/lib/locale/lang/zh-CHT.min.js +1 -1
  95. package/lib/locale/lang/zh-CHT.umd.js +15 -2
  96. package/lib/locale/lang/zh-CN.js +14 -1
  97. package/lib/locale/lang/zh-CN.min.js +1 -1
  98. package/lib/locale/lang/zh-CN.umd.js +14 -1
  99. package/lib/style.css +1 -1
  100. package/lib/table/module/custom/mixin.js +20 -5
  101. package/lib/table/module/custom/mixin.min.js +1 -1
  102. package/lib/table/module/custom/panel.js +28 -16
  103. package/lib/table/module/custom/panel.min.js +1 -1
  104. package/lib/table/src/columnInfo.js +1 -0
  105. package/lib/table/src/columnInfo.min.js +1 -1
  106. package/lib/table/src/methods.js +62 -19
  107. package/lib/table/src/methods.min.js +1 -1
  108. package/lib/table/src/table.js +14 -3
  109. package/lib/table/src/table.min.js +1 -1
  110. package/lib/ui/index.js +8 -5
  111. package/lib/ui/index.min.js +1 -1
  112. package/lib/ui/src/log.js +1 -1
  113. package/lib/ui/src/log.min.js +1 -1
  114. package/package.json +1 -1
  115. package/packages/locale/lang/ar-EG.ts +14 -1
  116. package/packages/locale/lang/de-DE.ts +14 -1
  117. package/packages/locale/lang/en-US.ts +14 -1
  118. package/packages/locale/lang/es-ES.ts +14 -1
  119. package/packages/locale/lang/fr-FR.ts +14 -1
  120. package/packages/locale/lang/hu-HU.ts +14 -1
  121. package/packages/locale/lang/hy-AM.ts +14 -1
  122. package/packages/locale/lang/id-ID.ts +14 -1
  123. package/packages/locale/lang/it-IT.ts +14 -1
  124. package/packages/locale/lang/ja-JP.ts +14 -1
  125. package/packages/locale/lang/ko-KR.ts +14 -1
  126. package/packages/locale/lang/ms-MY.ts +14 -1
  127. package/packages/locale/lang/nb-NO.ts +14 -1
  128. package/packages/locale/lang/pt-BR.ts +14 -1
  129. package/packages/locale/lang/ru-RU.ts +14 -1
  130. package/packages/locale/lang/th-TH.ts +14 -1
  131. package/packages/locale/lang/ug-CN.ts +14 -1
  132. package/packages/locale/lang/uk-UA.ts +14 -1
  133. package/packages/locale/lang/uz-UZ.ts +14 -1
  134. package/packages/locale/lang/vi-VN.ts +14 -1
  135. package/packages/locale/lang/zh-CHT.ts +15 -2
  136. package/packages/locale/lang/zh-CN.ts +14 -1
  137. package/packages/table/module/custom/mixin.ts +18 -5
  138. package/packages/table/module/custom/panel.ts +27 -14
  139. package/packages/table/src/columnInfo.ts +1 -0
  140. package/packages/table/src/methods.ts +61 -16
  141. package/packages/table/src/table.ts +14 -3
  142. package/packages/ui/index.ts +7 -4
  143. /package/es/{iconfont.1750641764687.ttf → iconfont.1750732150166.ttf} +0 -0
  144. /package/es/{iconfont.1750641764687.woff → iconfont.1750732150166.woff} +0 -0
  145. /package/es/{iconfont.1750641764687.woff2 → iconfont.1750732150166.woff2} +0 -0
  146. /package/lib/{iconfont.1750641764687.ttf → iconfont.1750732150166.ttf} +0 -0
  147. /package/lib/{iconfont.1750641764687.woff → iconfont.1750732150166.woff} +0 -0
  148. /package/lib/{iconfont.1750641764687.woff2 → iconfont.1750732150166.woff2} +0 -0
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'キャンセル',
80
80
  customRestore: 'デフォルトを復元します',
81
81
  maxFixedCol: '凍結柱の最大数は{0}を超えることはできません',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: '移動:{0}',
83
84
  resizeColTip: '幅:{0}ピクセル',
84
85
  resizeRowTip: '高さ:{0}ピクセル',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: '취소',
80
80
  customRestore: '기본값을 복원하십시오',
81
81
  maxFixedCol: '냉동 열의 최대 수는 {0}을 초과 할 수 없습니다.',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: '움직임 : {0}',
83
84
  resizeColTip: '너비 : {0} 픽셀',
84
85
  resizeRowTip: '높이 : {0} 픽셀',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'Batalkan',
80
80
  customRestore: 'Pulihkan lalai',
81
81
  maxFixedCol: 'Bilangan lajur beku maksimum tidak dapat melebihi {0}',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'Bergerak: {0}',
83
84
  resizeColTip: 'Lebar: {0} piksel',
84
85
  resizeRowTip: 'Tinggi: {0} piksel',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'Kansellere',
80
80
  customRestore: 'Gjenopprett standard',
81
81
  maxFixedCol: 'Det maksimale antall frosne kolonner kan ikke overstige {0}',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'Flytt: {0}',
83
84
  resizeColTip: 'Bredde: {0} piksler',
84
85
  resizeRowTip: 'Høyde: {0} piksler',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'Cancelar',
80
80
  customRestore: 'Restaure o padrão',
81
81
  maxFixedCol: 'O número máximo de colunas congeladas não pode exceder {0}',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'Move: {0}',
83
84
  resizeColTip: 'Largura: {0} pixels',
84
85
  resizeRowTip: 'Altura: {0} pixels',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'Отмена',
80
80
  customRestore: 'Восстановить дефолт',
81
81
  maxFixedCol: 'Максимальное количество замороженных столбцов не может превышать {0}',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'MOVE: {0}',
83
84
  resizeColTip: 'Ширина: {0} пиксели',
84
85
  resizeRowTip: 'Высота: {0} пиксели',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'ยกเลิก',
80
80
  customRestore: 'กู้คืนค่าเริ่มต้น',
81
81
  maxFixedCol: 'จำนวนคอลัมน์แช่แข็งสูงสุดไม่เกิน {0}',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'ย้าย: {0}',
83
84
  resizeColTip: 'ความกว้าง: {0} พิกเซล',
84
85
  resizeRowTip: 'ความสูง: {0} พิกเซล',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'ئەمەلدىن قالدۇرۇش',
80
80
  customRestore: 'ئەسلىگە قايتۇرۇش',
81
81
  maxFixedCol: 'توڭلىتىشقا بولىدىغان ئەڭ چوڭ قۇر سانى {0} دانە',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'يۆتكەش:{0}',
83
84
  resizeColTip: '宽:{0} 像素',
84
85
  resizeRowTip: '高:{0} 像素',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'Скасувати',
80
80
  customRestore: 'Відновити за замовчуванням',
81
81
  maxFixedCol: 'Максимальна кількість заморожених стовпців не може перевищувати {0}',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'Перемістити: {0}',
83
84
  resizeColTip: 'Ширина: {0} пікселів',
84
85
  resizeRowTip: 'Висота: {0} пікселів',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'Bekor qilmoq',
80
80
  customRestore: 'Standartni tiklash',
81
81
  maxFixedCol: 'Muzlatilgan ustunlarning maksimal soni {0} dan oshmaydi',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: "Ko'chiring: {0}",
83
84
  resizeColTip: 'Kengligi: {0} piksel',
84
85
  resizeRowTip: 'Yuqori: {0} piksel',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: 'Hủy bỏ',
80
80
  customRestore: 'Khôi phục mặc định',
81
81
  maxFixedCol: 'Số lượng cột đóng băng tối đa không thể vượt quá {0}',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: 'Di chuyển: {0}',
83
84
  resizeColTip: 'Chiều rộng: {0} pixel',
84
85
  resizeRowTip: 'Chiều cao: {0} pixel',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: '取消',
80
80
  customRestore: '恢復默認',
81
81
  maxFixedCol: '最大凍結列的數量不能超過 {0} 個',
82
+ maxGroupCol: '最大分組欄位的數量不能超過 {0} 個',
82
83
  dragTip: '移動:{0}',
83
84
  resizeColTip: '寬:{0} 像素',
84
85
  resizeRowTip: '高:{0} 像素',
@@ -560,8 +561,20 @@ export default {
560
561
  },
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
- grouping: '分组',
564
- values: '值'
564
+ grouping: '分組',
565
+ values: '值',
566
+ groupPlaceholder: '拖曳至此處進行分組',
567
+ valuesPlaceholder: '拖曳至此處進行聚合',
568
+ dragExistCol: '該列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -79,6 +79,7 @@ export default {
79
79
  customCancel: '取消',
80
80
  customRestore: '恢复默认',
81
81
  maxFixedCol: '最大冻结列的数量不能超过 {0} 个',
82
+ maxGroupCol: '最大分组字段的数量不能超过 {0} 个',
82
83
  dragTip: '移动:{0}',
83
84
  resizeColTip: '宽:{0} 像素',
84
85
  resizeRowTip: '高:{0} 像素',
@@ -561,7 +562,19 @@ export default {
561
562
  extendPivotTable: {
562
563
  aggregation: {
563
564
  grouping: '分组',
564
- values: '值'
565
+ values: '值',
566
+ groupPlaceholder: '拖至此处进行分组',
567
+ valuesPlaceholder: '拖至此处进行聚合',
568
+ dragExistCol: '该列已存在'
569
+ },
570
+ aggFuncs: {
571
+ sum: '求和',
572
+ count: '计数',
573
+ avg: '平均值',
574
+ min: '最小值',
575
+ max: '最大值',
576
+ first: '首个值',
577
+ last: '末尾值'
565
578
  }
566
579
  },
567
580
  filterComplexInput: {
@@ -66,7 +66,7 @@ export default {
66
66
 
67
67
  const { customColumnList, aggHandleFields, rowGroupList } = reactData
68
68
  const customOpts = $xeTable.computeCustomOpts
69
- const { allowVisible, allowSort, allowFixed, allowResizable } = customOpts
69
+ const { allowVisible, allowSort, allowFixed, allowResizable, allowGroup, allowValues } = customOpts
70
70
  XEUtils.eachTree(customColumnList, (column, index, items, path, parentColumn) => {
71
71
  if (parentColumn) {
72
72
  // 更新子列信息
@@ -91,6 +91,9 @@ export default {
91
91
  if (allowVisible) {
92
92
  column.visible = column.renderVisible
93
93
  }
94
+ if (allowGroup && allowValues) {
95
+ column.aggFunc = column.renderAggFn
96
+ }
94
97
  })
95
98
  reactData.isCustomStatus = true
96
99
  reactData.isDragColMove = true
@@ -98,14 +101,17 @@ export default {
98
101
  reactData.isDragColMove = false
99
102
  }, 1000)
100
103
  return $xeTable.saveCustomStore('confirm').then(() => {
101
- if (($xeTable as any).handlePivotTableAggregateData) {
104
+ if (allowGroup && allowValues && ($xeTable as any).handlePivotTableAggregateData) {
102
105
  if (rowGroupList.length !== aggHandleFields.length || rowGroupList.some((conf, i) => conf.field !== aggHandleFields[i])) {
103
- // 改动聚合分组
106
+ // 更新数据分组
104
107
  if (aggHandleFields.length) {
105
108
  $xeTable.setRowGroups(aggHandleFields)
106
109
  } else {
107
110
  $xeTable.clearRowGroups()
108
111
  }
112
+ } else {
113
+ // 更新聚合函数
114
+ $xeTable.handleUpdateAggData()
109
115
  }
110
116
  }
111
117
  })
@@ -152,7 +158,8 @@ export default {
152
158
  visible: true,
153
159
  resizable: options === true,
154
160
  fixed: options === true,
155
- sort: options === true
161
+ sort: options === true,
162
+ aggFunc: options === true
156
163
  }, options)
157
164
  XEUtils.eachTree(collectColumn, (column) => {
158
165
  if (opts.resizable) {
@@ -167,12 +174,16 @@ export default {
167
174
  if (!checkMethod || checkMethod({ $table: $xeTable, column })) {
168
175
  column.visible = column.defaultVisible
169
176
  }
177
+ if (opts.aggFunc) {
178
+ column.aggFunc = column.defaultAggFunc
179
+ column.renderAggFn = column.defaultAggFunc
180
+ }
170
181
  column.renderResizeWidth = column.renderWidth
171
182
  })
172
183
  reactData.isCustomStatus = false
173
184
  $xeTable.saveCustomStore('reset')
174
185
  return $xeTable.handleCustom().then(() => {
175
- if (($xeTable as any).handlePivotTableAggregateData) {
186
+ if (opts.aggFunc && ($xeTable as any).handlePivotTableAggregateData) {
176
187
  const rowGroupFields = $xeTable.computeRowGroupFields
177
188
  if (rowGroupFields ? rowGroupFields.length : rowGroupList.length) {
178
189
  if (rowGroupFields && rowGroupFields.length) {
@@ -180,6 +191,8 @@ export default {
180
191
  } else {
181
192
  $xeTable.clearRowGroups()
182
193
  }
194
+ } else {
195
+ $xeTable.handleUpdateAggData()
183
196
  }
184
197
  }
185
198
  })
@@ -24,8 +24,8 @@ function showDropTip ($xeTableCustomPanel: VxeTableCustomPanelConstructor, evnt:
24
24
  const { prevDragToChild } = customPanelInternalData
25
25
  const bodyWrapperRect = bodyWrapperElem.getBoundingClientRect()
26
26
  const customBodyRect = customBodyElem.getBoundingClientRect()
27
+ const dragLineEl = $xeTableCustomPanel.$refs.refDragLineElem as HTMLDivElement
27
28
  if (optEl) {
28
- const dragLineEl = $xeTableCustomPanel.$refs.refDragLineElem as HTMLDivElement
29
29
  if (dragLineEl) {
30
30
  if (showLine) {
31
31
  const optRect = optEl.getBoundingClientRect()
@@ -40,6 +40,10 @@ function showDropTip ($xeTableCustomPanel: VxeTableCustomPanelConstructor, evnt:
40
40
  dragLineEl.style.display = ''
41
41
  }
42
42
  }
43
+ } else {
44
+ if (dragLineEl) {
45
+ dragLineEl.style.display = 'node'
46
+ }
43
47
  }
44
48
  const dragTipEl = $xeTableCustomPanel.$refs.refDragTipElem as HTMLDivElement
45
49
  if (dragTipEl) {
@@ -294,7 +298,7 @@ const renderSimplePanel = (h: CreateElement, _vm: any) => {
294
298
  ? [
295
299
  h('div', {
296
300
  ref: 'refBodyWrapperElem',
297
- class: 'vxe-table-custom-body-wrapper'
301
+ class: 'vxe-table-custom-simple--body-wrapper'
298
302
  }, [
299
303
  !treeConfig && (aggregateConfig || rowGroupConfig) && $xeTable.getPivotTableAggregateSimplePanel
300
304
  ? h($xeTable.getPivotTableAggregateSimplePanel(), {
@@ -879,13 +883,15 @@ export default {
879
883
  data () {
880
884
  const reactData: TableCustomPanelReactData = {
881
885
  dragCol: null,
882
- dragGroup: null,
883
- dragValues: null,
886
+ dragGroupField: null,
887
+ dragAggFnCol: null,
884
888
  dragTipText: ''
885
889
  }
886
890
 
887
891
  const internalData: TableCustomPanelInternalData = {
888
892
  // prevDragCol: undefined,
893
+ // prevDragGroupField: undefined,
894
+ // prevDragAggFnColid: undefined,
889
895
  // prevDragToChild: false,
890
896
  // prevDragPos: null
891
897
  }
@@ -1158,6 +1164,8 @@ export default {
1158
1164
  const column = $xeTable.getColumnById(colid)
1159
1165
  trEl.draggable = true
1160
1166
  customPanelReactData.dragCol = column
1167
+ customPanelReactData.dragGroupField = null
1168
+ customPanelReactData.dragAggFnCol = null
1161
1169
  this.updateColDropTipContent()
1162
1170
  addClass(trEl, 'active--drag-origin')
1163
1171
  },
@@ -1172,17 +1180,19 @@ export default {
1172
1180
  hideDropTip($xeTableCustomPanel)
1173
1181
  trEl.draggable = false
1174
1182
  customPanelReactData.dragCol = null
1183
+ customPanelReactData.dragGroupField = null
1184
+ customPanelReactData.dragAggFnCol = null
1175
1185
  removeClass(trEl, 'active--drag-origin')
1176
1186
  },
1177
1187
  sortDragstartEvent (evnt: any) {
1178
1188
  const $xeTableCustomPanel = this as unknown as VxeTableCustomPanelConstructor
1179
- const customPanelReactData = $xeTableCustomPanel.reactData
1189
+ const customPanelInternalData = $xeTableCustomPanel.internalData
1180
1190
 
1181
1191
  if (evnt.dataTransfer) {
1182
1192
  evnt.dataTransfer.setDragImage(getTpImg(), 0, 0)
1183
1193
  }
1184
- customPanelReactData.dragGroup = null
1185
- customPanelReactData.dragValues = null
1194
+ customPanelInternalData.prevDragGroupField = null
1195
+ customPanelInternalData.prevDragAggFnColid = null
1186
1196
  },
1187
1197
  sortDragendEvent (evnt: any) {
1188
1198
  const $xeTableCustomPanel = this as unknown as VxeTableCustomPanelConstructor
@@ -1201,11 +1211,11 @@ export default {
1201
1211
  const trEl = evnt.currentTarget as HTMLElement
1202
1212
  const columnDragOpts = $xeTable.computeColumnDragOpts
1203
1213
  const { isCrossDrag, isSelfToChildDrag, isToChildDrag, dragEndMethod } = columnDragOpts
1204
- const { dragCol, dragGroup, dragValues } = customPanelReactData
1205
- const { prevDragCol, prevDragPos, prevDragToChild } = customPanelInternalData
1214
+ const { dragCol } = customPanelReactData
1215
+ const { prevDragCol, prevDragGroupField, prevDragAggFnColid, prevDragPos, prevDragToChild } = customPanelInternalData
1206
1216
  const dragOffsetIndex = prevDragPos === 'bottom' ? 1 : 0
1207
1217
 
1208
- if (dragGroup || dragValues) {
1218
+ if (prevDragGroupField || prevDragAggFnColid) {
1209
1219
  if ($xeTable.handlePivotTableAggregatePanelDragendEvent) {
1210
1220
  $xeTable.handlePivotTableAggregatePanelDragendEvent(evnt)
1211
1221
  }
@@ -1375,8 +1385,10 @@ export default {
1375
1385
 
1376
1386
  hideDropTip($xeTableCustomPanel)
1377
1387
  customPanelReactData.dragCol = null
1378
- customPanelReactData.dragGroup = null
1379
- customPanelReactData.dragValues = null
1388
+ customPanelReactData.dragGroupField = null
1389
+ customPanelReactData.dragAggFnCol = null
1390
+ customPanelInternalData.prevDragGroupField = null
1391
+ customPanelInternalData.prevDragAggFnColid = null
1380
1392
  trEl.draggable = false
1381
1393
  trEl.removeAttribute('drag-pos')
1382
1394
  removeClass(trEl, 'active--drag-target')
@@ -1397,14 +1409,15 @@ export default {
1397
1409
  const isControlKey = hasControlKey(evnt)
1398
1410
  const colid = optEl.getAttribute('colid')
1399
1411
  const column = $xeTable.getColumnById(colid)
1400
- customPanelReactData.dragGroup = null
1401
- customPanelReactData.dragValues = null
1412
+ customPanelInternalData.prevDragGroupField = null
1413
+ customPanelInternalData.prevDragAggFnColid = null
1402
1414
  // 是否移入有效列
1403
1415
  if (column && (isCrossDrag || column.level === 1)) {
1404
1416
  evnt.preventDefault()
1405
1417
  const offsetY = evnt.clientY - optEl.getBoundingClientRect().y
1406
1418
  const dragPos = offsetY < optEl.clientHeight / 2 ? 'top' : 'bottom'
1407
1419
  if (
1420
+ !dragCol ||
1408
1421
  (dragCol && dragCol.id === column.id) ||
1409
1422
  (!isCrossDrag && column.level > 1) ||
1410
1423
  (!immediate && column.level > 1) ||
@@ -114,6 +114,7 @@ export class ColumnInfo {
114
114
  halfVisible: false,
115
115
  defaultVisible: visible,
116
116
  defaultFixed: _vm.fixed,
117
+ defaultAggFunc: _vm.aggFunc,
117
118
  checked: false,
118
119
  halfChecked: false,
119
120
  disabled: false,