vxe-table 3.21.1 → 3.21.3

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 (186) 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 +6 -2
  4. package/es/locale/lang/de-DE.js +6 -2
  5. package/es/locale/lang/en-US.js +6 -2
  6. package/es/locale/lang/es-ES.js +6 -2
  7. package/es/locale/lang/fr-FR.js +6 -2
  8. package/es/locale/lang/hu-HU.js +6 -2
  9. package/es/locale/lang/hy-AM.js +6 -2
  10. package/es/locale/lang/id-ID.js +6 -2
  11. package/es/locale/lang/it-IT.js +6 -2
  12. package/es/locale/lang/ja-JP.js +6 -2
  13. package/es/locale/lang/ko-KR.js +6 -2
  14. package/es/locale/lang/ms-MY.js +6 -2
  15. package/es/locale/lang/nb-NO.js +6 -2
  16. package/es/locale/lang/pt-BR.js +6 -2
  17. package/es/locale/lang/ru-RU.js +6 -2
  18. package/es/locale/lang/th-TH.js +6 -2
  19. package/es/locale/lang/ug-CN.js +6 -2
  20. package/es/locale/lang/uk-UA.js +6 -2
  21. package/es/locale/lang/uz-UZ.js +6 -2
  22. package/es/locale/lang/vi-VN.js +6 -2
  23. package/es/locale/lang/zh-CHT.js +6 -2
  24. package/es/locale/lang/zh-CN.js +6 -2
  25. package/es/style.css +1 -1
  26. package/es/style.min.css +1 -1
  27. package/es/table/module/custom/panel.js +29 -22
  28. package/es/table/module/export/export-panel.js +29 -16
  29. package/es/table/module/export/mixin.js +121 -26
  30. package/es/table/module/menu/mixin.js +3 -2
  31. package/es/table/module/validator/mixin.js +4 -4
  32. package/es/table/src/cell.js +1 -1
  33. package/es/table/src/column.js +2 -0
  34. package/es/table/src/columnInfo.js +1 -0
  35. package/es/table/src/methods.js +82 -31
  36. package/es/table/src/table.js +16 -0
  37. package/es/table/src/util.js +3 -1
  38. package/es/table/style.css +1 -1
  39. package/es/table/style.min.css +1 -1
  40. package/es/ui/index.js +1 -1
  41. package/es/ui/src/log.js +1 -1
  42. package/es/vxe-table/style.css +1 -1
  43. package/es/vxe-table/style.min.css +1 -1
  44. package/lib/index.css +1 -1
  45. package/lib/index.min.css +1 -1
  46. package/lib/index.umd.js +235 -75
  47. package/lib/index.umd.min.js +1 -1
  48. package/lib/locale/lang/ar-EG.js +6 -2
  49. package/lib/locale/lang/ar-EG.min.js +1 -1
  50. package/lib/locale/lang/ar-EG.umd.js +6 -2
  51. package/lib/locale/lang/de-DE.js +6 -2
  52. package/lib/locale/lang/de-DE.min.js +1 -1
  53. package/lib/locale/lang/de-DE.umd.js +6 -2
  54. package/lib/locale/lang/en-US.js +6 -2
  55. package/lib/locale/lang/en-US.min.js +1 -1
  56. package/lib/locale/lang/en-US.umd.js +6 -2
  57. package/lib/locale/lang/es-ES.js +6 -2
  58. package/lib/locale/lang/es-ES.min.js +1 -1
  59. package/lib/locale/lang/es-ES.umd.js +6 -2
  60. package/lib/locale/lang/fr-FR.js +6 -2
  61. package/lib/locale/lang/fr-FR.min.js +1 -1
  62. package/lib/locale/lang/fr-FR.umd.js +6 -2
  63. package/lib/locale/lang/hu-HU.js +6 -2
  64. package/lib/locale/lang/hu-HU.min.js +1 -1
  65. package/lib/locale/lang/hu-HU.umd.js +6 -2
  66. package/lib/locale/lang/hy-AM.js +6 -2
  67. package/lib/locale/lang/hy-AM.min.js +1 -1
  68. package/lib/locale/lang/hy-AM.umd.js +6 -2
  69. package/lib/locale/lang/id-ID.js +6 -2
  70. package/lib/locale/lang/id-ID.min.js +1 -1
  71. package/lib/locale/lang/id-ID.umd.js +6 -2
  72. package/lib/locale/lang/it-IT.js +6 -2
  73. package/lib/locale/lang/it-IT.min.js +1 -1
  74. package/lib/locale/lang/it-IT.umd.js +6 -2
  75. package/lib/locale/lang/ja-JP.js +6 -2
  76. package/lib/locale/lang/ja-JP.min.js +1 -1
  77. package/lib/locale/lang/ja-JP.umd.js +6 -2
  78. package/lib/locale/lang/ko-KR.js +6 -2
  79. package/lib/locale/lang/ko-KR.min.js +1 -1
  80. package/lib/locale/lang/ko-KR.umd.js +6 -2
  81. package/lib/locale/lang/ms-MY.js +6 -2
  82. package/lib/locale/lang/ms-MY.min.js +1 -1
  83. package/lib/locale/lang/ms-MY.umd.js +6 -2
  84. package/lib/locale/lang/nb-NO.js +6 -2
  85. package/lib/locale/lang/nb-NO.min.js +1 -1
  86. package/lib/locale/lang/nb-NO.umd.js +6 -2
  87. package/lib/locale/lang/pt-BR.js +6 -2
  88. package/lib/locale/lang/pt-BR.min.js +1 -1
  89. package/lib/locale/lang/pt-BR.umd.js +6 -2
  90. package/lib/locale/lang/ru-RU.js +6 -2
  91. package/lib/locale/lang/ru-RU.min.js +1 -1
  92. package/lib/locale/lang/ru-RU.umd.js +6 -2
  93. package/lib/locale/lang/th-TH.js +6 -2
  94. package/lib/locale/lang/th-TH.min.js +1 -1
  95. package/lib/locale/lang/th-TH.umd.js +6 -2
  96. package/lib/locale/lang/ug-CN.js +6 -2
  97. package/lib/locale/lang/ug-CN.min.js +1 -1
  98. package/lib/locale/lang/ug-CN.umd.js +6 -2
  99. package/lib/locale/lang/uk-UA.js +6 -2
  100. package/lib/locale/lang/uk-UA.min.js +1 -1
  101. package/lib/locale/lang/uk-UA.umd.js +6 -2
  102. package/lib/locale/lang/uz-UZ.js +6 -2
  103. package/lib/locale/lang/uz-UZ.min.js +1 -1
  104. package/lib/locale/lang/uz-UZ.umd.js +6 -2
  105. package/lib/locale/lang/vi-VN.js +6 -2
  106. package/lib/locale/lang/vi-VN.min.js +1 -1
  107. package/lib/locale/lang/vi-VN.umd.js +6 -2
  108. package/lib/locale/lang/zh-CHT.js +6 -2
  109. package/lib/locale/lang/zh-CHT.min.js +1 -1
  110. package/lib/locale/lang/zh-CHT.umd.js +6 -2
  111. package/lib/locale/lang/zh-CN.js +6 -2
  112. package/lib/locale/lang/zh-CN.min.js +1 -1
  113. package/lib/locale/lang/zh-CN.umd.js +6 -2
  114. package/lib/style.css +1 -1
  115. package/lib/style.min.css +1 -1
  116. package/lib/table/module/custom/panel.js +30 -21
  117. package/lib/table/module/custom/panel.min.js +1 -1
  118. package/lib/table/module/export/export-panel.js +26 -13
  119. package/lib/table/module/export/export-panel.min.js +1 -1
  120. package/lib/table/module/export/mixin.js +139 -27
  121. package/lib/table/module/export/mixin.min.js +1 -1
  122. package/lib/table/module/menu/mixin.js +3 -2
  123. package/lib/table/module/menu/mixin.min.js +1 -1
  124. package/lib/table/module/validator/mixin.js +4 -4
  125. package/lib/table/module/validator/mixin.min.js +1 -1
  126. package/lib/table/src/cell.js +1 -1
  127. package/lib/table/src/cell.min.js +1 -1
  128. package/lib/table/src/column.js +2 -0
  129. package/lib/table/src/column.min.js +1 -1
  130. package/lib/table/src/columnInfo.js +1 -0
  131. package/lib/table/src/columnInfo.min.js +1 -1
  132. package/lib/table/src/methods.js +2 -2
  133. package/lib/table/src/methods.min.js +1 -1
  134. package/lib/table/src/table.js +16 -0
  135. package/lib/table/src/table.min.js +1 -1
  136. package/lib/table/src/util.js +3 -1
  137. package/lib/table/src/util.min.js +1 -1
  138. package/lib/table/style/style.css +1 -1
  139. package/lib/table/style/style.min.css +1 -1
  140. package/lib/ui/index.js +1 -1
  141. package/lib/ui/index.min.js +1 -1
  142. package/lib/ui/src/log.js +1 -1
  143. package/lib/ui/src/log.min.js +1 -1
  144. package/lib/vxe-table/style/style.css +1 -1
  145. package/lib/vxe-table/style/style.min.css +1 -1
  146. package/package.json +2 -2
  147. package/packages/locale/lang/ar-EG.ts +6 -2
  148. package/packages/locale/lang/de-DE.ts +6 -2
  149. package/packages/locale/lang/en-US.ts +6 -2
  150. package/packages/locale/lang/es-ES.ts +6 -2
  151. package/packages/locale/lang/fr-FR.ts +6 -2
  152. package/packages/locale/lang/hu-HU.ts +6 -2
  153. package/packages/locale/lang/hy-AM.ts +6 -2
  154. package/packages/locale/lang/id-ID.ts +6 -2
  155. package/packages/locale/lang/it-IT.ts +6 -2
  156. package/packages/locale/lang/ja-JP.ts +6 -2
  157. package/packages/locale/lang/ko-KR.ts +6 -2
  158. package/packages/locale/lang/ms-MY.ts +6 -2
  159. package/packages/locale/lang/nb-NO.ts +6 -2
  160. package/packages/locale/lang/pt-BR.ts +6 -2
  161. package/packages/locale/lang/ru-RU.ts +6 -2
  162. package/packages/locale/lang/th-TH.ts +6 -2
  163. package/packages/locale/lang/ug-CN.ts +6 -2
  164. package/packages/locale/lang/uk-UA.ts +6 -2
  165. package/packages/locale/lang/uz-UZ.ts +6 -2
  166. package/packages/locale/lang/vi-VN.ts +6 -2
  167. package/packages/locale/lang/zh-CHT.ts +6 -2
  168. package/packages/locale/lang/zh-CN.ts +6 -2
  169. package/packages/table/module/custom/panel.ts +30 -23
  170. package/packages/table/module/export/export-panel.ts +29 -17
  171. package/packages/table/module/export/mixin.ts +122 -27
  172. package/packages/table/module/menu/mixin.ts +3 -2
  173. package/packages/table/module/validator/mixin.ts +4 -4
  174. package/packages/table/src/cell.ts +1 -1
  175. package/packages/table/src/column.ts +2 -0
  176. package/packages/table/src/columnInfo.ts +1 -0
  177. package/packages/table/src/methods.ts +82 -31
  178. package/packages/table/src/table.ts +18 -0
  179. package/packages/table/src/util.ts +3 -1
  180. package/styles/components/table-module/export.scss +1 -1
  181. /package/es/{iconfont.1779447236462.ttf → iconfont.1779843521280.ttf} +0 -0
  182. /package/es/{iconfont.1779447236462.woff → iconfont.1779843521280.woff} +0 -0
  183. /package/es/{iconfont.1779447236462.woff2 → iconfont.1779843521280.woff2} +0 -0
  184. /package/lib/{iconfont.1779447236462.ttf → iconfont.1779843521280.ttf} +0 -0
  185. /package/lib/{iconfont.1779447236462.woff → iconfont.1779843521280.woff} +0 -0
  186. /package/lib/{iconfont.1779447236462.woff2 → iconfont.1779843521280.woff2} +0 -0
package/lib/index.umd.js CHANGED
@@ -3311,7 +3311,7 @@ function getClass(property, params) {
3311
3311
  /* unused harmony import specifier */ var VxeUI;
3312
3312
 
3313
3313
 
3314
- const version = "3.21.1";
3314
+ const version = "3.21.3";
3315
3315
  core_.VxeUI.version = version;
3316
3316
  core_.VxeUI.tableVersion = version;
3317
3317
  core_.VxeUI.setConfig({
@@ -3842,7 +3842,7 @@ var es_iterator_some = __webpack_require__(3579);
3842
3842
  const {
3843
3843
  log: log_log
3844
3844
  } = core_.VxeUI;
3845
- const log_version = `table v${"3.21.1"}`;
3845
+ const log_version = `table v${"3.21.3"}`;
3846
3846
  const warnLog = log_log.create('warn', log_version);
3847
3847
  const errLog = log_log.create('error', log_version);
3848
3848
  ;// ./packages/table/src/columnInfo.ts
@@ -3971,6 +3971,7 @@ class ColumnInfo {
3971
3971
  filterRecoverMethod: _vm.filterRecoverMethod,
3972
3972
  filterRender: filterRender,
3973
3973
  floatingFilters: _vm.floatingFilters,
3974
+ rules: _vm.rules,
3974
3975
  rowGroupNode: _vm.rowGroupNode,
3975
3976
  treeNode: _vm.treeNode,
3976
3977
  dragSort: _vm.dragSort,
@@ -4637,6 +4638,7 @@ function createReactData() {
4637
4638
  hasFooter: false,
4638
4639
  hasMerge: false,
4639
4640
  hasTree: false,
4641
+ hasRowGroup: false,
4640
4642
  hasColgroup: false,
4641
4643
  visible: false
4642
4644
  },
@@ -4647,7 +4649,8 @@ function createReactData() {
4647
4649
  type: '',
4648
4650
  isColgroup: false,
4649
4651
  isMerge: false,
4650
- isAllExpand: false,
4652
+ isTreeAllExpanded: false,
4653
+ isRowGroupAllExpanded: false,
4651
4654
  useStyle: false,
4652
4655
  original: false,
4653
4656
  message: true,
@@ -6779,7 +6782,7 @@ const Cell = {
6779
6782
  const editRenderOpts = isEnableEdit && isEnableConf(editRender) ? editRender : null;
6780
6783
  let isRequired = false;
6781
6784
  if (editRules) {
6782
- const columnRules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, column.field);
6785
+ const columnRules = column.rules ? column.rules : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, column.field);
6783
6786
  if (columnRules) {
6784
6787
  isRequired = columnRules.some(rule => rule.required);
6785
6788
  }
@@ -7033,6 +7036,8 @@ const columnProps = {
7033
7036
  filterRender: Object,
7034
7037
  // 是否显示浮动筛选
7035
7038
  floatingFilters: Object,
7039
+ // 列的校验规则
7040
+ rules: Array,
7036
7041
  // 设置为分组节点
7037
7042
  rowGroupNode: Boolean,
7038
7043
  // 设置为树节点
@@ -7774,7 +7779,7 @@ if(reWidth){calcCellWidth($xeTable);}if(reFull){autoCellWidth($xeTable);}if(reHe
7774
7779
  * 已废弃
7775
7780
  * @deprecated
7776
7781
  */totalValue:childCount};let aggVal=0;// 如果下层同时也是分组
7777
- if(childList.length&&childList[0].isAggregate){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(childList,row=>{if(row.isAggregate){const currAggData=row.aggData[field];if(currAggData){aggVal+=currAggData.value;}}});}else{aggVal=aggCalcMethod?aggCalcMethod(ctParams):aggRow.childCount;}aggDtObj[field]={type:'count',value:aggVal,label:aggVal};});aggRow.aggData=aggDtObj;});}}}function updateGroupData($xeTable){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{aggregateConfig,rowGroupConfig}=props;const{isRowGroupStatus}=reactData;const{tableFullGroupData}=internalData;const aggregateOpts=$xeTable.computeAggregateOpts;const{mapChildrenField}=aggregateOpts;if((aggregateConfig||rowGroupConfig)&&isRowGroupStatus){const aggList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullGroupData,row=>{if(row.isAggregate){aggList.push(row);}},{children:mapChildrenField});handleeGroupSummary($xeTable,aggList);}}function handleGroupData($xeTable,list,rowGroups){let fullData=list;let treeData=list;if(rowGroups){const aggregateOpts=$xeTable.computeAggregateOpts;const{rowField,parentField,childrenField,mapChildrenField}=aggregateOpts;const rowOpts=$xeTable.computeRowOpts;const checkboxOpts=$xeTable.computeCheckboxOpts;const{checkField}=checkboxOpts;const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;const rgItem=rowGroups[0];if(rgItem&&rowField&&parentField&&childrenField&&mapChildrenField){fullData=[];treeData=[];const groupField=rgItem.field;const groupColumn=$xeTable.getColumnByField(groupField);const groupMaps={};const aggList=[];const rowkey=getRowkey($xeTable);list.forEach(row=>{const cellValue=groupColumn?$xeTable.getCellLabel(row,groupColumn):external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,groupField);const groupValue=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(cellValue)?'':cellValue;let childList=groupMaps[groupValue];if(!childList){childList=[];groupMaps[groupValue]=childList;}if(row.isAggregate){row.isAggregate=undefined;}childList.push(row);});external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().objectEach(groupMaps,(childList,groupValue)=>{const{fullData:childFullData,treeData:childTreeData}=handleGroupData($xeTable,childList,rowGroups.slice(1));const aggRow={isAggregate:true,aggData:{},groupContent:groupValue,groupField,childCount:0,[rowField]:getRowUniqueId(),[parentField]:null,[childrenField]:childTreeData,[mapChildrenField]:childTreeData};aggRow[rowkey]=createRowId(rowOpts,aggRow,rowkey);if(checkField){aggRow[checkField]=false;}if(indeterminateField){aggRow[indeterminateField]=false;}aggList.push(aggRow);treeData.push(aggRow);fullData.push(aggRow);if(childFullData.length){fullData.push(...childFullData);}});handleeGroupSummary($xeTable,aggList);}}return{treeData,fullData};}/**
7782
+ if(childList.length&&childList[0].isAggregate){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(childList,row=>{if(row.isAggregate){const currAggData=row.aggData[field];if(currAggData){aggVal+=currAggData.value;}}});}else{aggVal=aggCalcMethod?aggCalcMethod(ctParams):aggRow.childCount;}aggDtObj[field]={type:'count',value:aggVal,label:aggVal};});aggRow.aggData=aggDtObj;});}}}function updateGroupData($xeTable){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{aggregateConfig,rowGroupConfig}=props;const{isRowGroupStatus}=reactData;const{tableFullGroupData}=internalData;const aggregateOpts=$xeTable.computeAggregateOpts;const{mapChildrenField}=aggregateOpts;if((aggregateConfig||rowGroupConfig)&&isRowGroupStatus){const aggList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullGroupData,row=>{if(row.isAggregate){aggList.push(row);}},{children:mapChildrenField});handleeGroupSummary($xeTable,aggList);}}function handleGroupData($xeTable,list,rowGroups,isCombinedField){let fullData=list;let treeData=list;if(rowGroups){const aggregateOpts=$xeTable.computeAggregateOpts;const{rowField,parentField,separator,childrenField,mapChildrenField}=aggregateOpts;const rowOpts=$xeTable.computeRowOpts;const checkboxOpts=$xeTable.computeCheckboxOpts;const{checkField}=checkboxOpts;const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;const rgItem=rowGroups[0];if(rgItem&&rowField&&parentField&&childrenField&&mapChildrenField){fullData=[];treeData=[];const groupField=rgItem.field;const groupColumn=$xeTable.getColumnByField(groupField);const groupMaps={};const groupCombinedMaps={};const aggList=[];const rowkey=getRowkey($xeTable);list.forEach(row=>{const cellValue=groupColumn?$xeTable.getCellLabel(row,groupColumn):external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,groupField);let groupValue=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(cellValue)?'':cellValue;if(isCombinedField){const groupVals=[groupValue];rowGroups.slice(1).forEach(ogItem=>{const ogField=ogItem.field;const ogColumn=$xeTable.getColumnByField(ogField);const ocValue=ogColumn?$xeTable.getCellLabel(row,ogColumn):external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,ogField);const ogValue=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(ocValue)?'':ocValue;groupValue+=(separator||' / ')+ogValue;groupVals.push(ogValue);});if(!groupCombinedMaps[groupValue]){groupCombinedMaps[groupValue]=groupVals;}}let childList=groupMaps[groupValue];if(!childList){childList=[];groupMaps[groupValue]=childList;}if(row.isAggregate){row.isAggregate=undefined;}childList.push(row);});if(isCombinedField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().objectEach(groupMaps,(childList,groupValue)=>{const aggRow={isAggregate:true,aggData:{},groupContent:groupValue,groupCombineds:groupCombinedMaps[groupValue],groupField,childCount:0,[rowField]:getRowUniqueId(),[parentField]:null,[childrenField]:childList,[mapChildrenField]:childList};aggRow[rowkey]=createRowId(rowOpts,aggRow,rowkey);if(checkField){aggRow[checkField]=false;}if(indeterminateField){aggRow[indeterminateField]=false;}aggList.push(aggRow);treeData.push(aggRow);fullData.push(aggRow);});}else{external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().objectEach(groupMaps,(childList,groupValue)=>{const{fullData:childFullData,treeData:childTreeData}=handleGroupData($xeTable,childList,rowGroups.slice(1));const aggRow={isAggregate:true,aggData:{},groupContent:groupValue,groupCombineds:[],groupField,childCount:0,[rowField]:getRowUniqueId(),[parentField]:null,[childrenField]:childTreeData,[mapChildrenField]:childTreeData};aggRow[rowkey]=createRowId(rowOpts,aggRow,rowkey);if(checkField){aggRow[checkField]=false;}if(indeterminateField){aggRow[indeterminateField]=false;}aggList.push(aggRow);treeData.push(aggRow);fullData.push(aggRow);if(childFullData.length){fullData.push(...childFullData);}});}handleeGroupSummary($xeTable,aggList);}}return{treeData,fullData};}function initGroupData($xeTable,list,rowGroups){const aggregateOpts=$xeTable.computeAggregateOpts;const{mode}=aggregateOpts;const isCombinedField=mode==='combined';const groupRest=handleGroupData($xeTable,list,rowGroups,isCombinedField);return groupRest;}/**
7778
7783
  * 加载表格数据
7779
7784
  * @param {Array} datas 数据
7780
7785
  */function loadTableData($xeTable,datas,isReload,isReset){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{keepSource,treeConfig,aggregateConfig,rowGroupConfig}=props;const{rowGroupList,scrollYLoad:oldScrollYLoad}=reactData;const{initStatus,scrollYStore,scrollXStore,lastScrollLeft,lastScrollTop}=internalData;const rowOpts=$xeTable.computeRowOpts;const treeOpts=$xeTable.computeTreeOpts;const expandOpts=$xeTable.computeExpandOpts;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;let treeData=[];let fullData=datas?datas.slice(0):[];// 转为响应式数据
@@ -7784,7 +7789,7 @@ if(!treeOpts.rowField){errLog('vxe.error.reqProp',['tree-config.rowField']);}if(
7784
7789
  // warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${treeOpts.children}`])
7785
7790
  // }
7786
7791
  // })
7787
- treeData=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toArrayTree(fullData,{key:treeOpts.rowField,parentKey:treeOpts.parentField,children:childrenField,mapChildren:treeOpts.mapChildrenField});fullData=treeData.slice(0);}else{treeData=fullData.slice(0);}}else if((aggregateConfig||rowGroupConfig)&&rowGroupList.length){const groupRest=handleGroupData($xeTable,fullData,rowGroupList);treeData=groupRest.treeData;fullData=groupRest.fullData;isRGroup=true;}reactData.isRowGroupStatus=isRGroup;scrollYStore.startIndex=0;scrollYStore.endIndex=1;scrollXStore.startIndex=0;scrollXStore.endIndex=1;internalData.cvCacheMaps={};reactData.isRowLoading=true;reactData.scrollVMLoading=false;reactData.treeExpandedFlag++;reactData.rowExpandedFlag++;internalData.insertRowMaps={};reactData.insertRowFlag++;internalData.removeRowMaps={};reactData.removeRowFlag++;const sYLoad=updateScrollYStatus($xeTable,fullData);// 全量数据
7792
+ treeData=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toArrayTree(fullData,{key:treeOpts.rowField,parentKey:treeOpts.parentField,children:childrenField,mapChildren:treeOpts.mapChildrenField});fullData=treeData.slice(0);}else{treeData=fullData.slice(0);}}else if((aggregateConfig||rowGroupConfig)&&rowGroupList.length){const groupRest=initGroupData($xeTable,fullData,rowGroupList);treeData=groupRest.treeData;fullData=groupRest.fullData;isRGroup=true;}reactData.isRowGroupStatus=isRGroup;scrollYStore.startIndex=0;scrollYStore.endIndex=1;scrollXStore.startIndex=0;scrollXStore.endIndex=1;internalData.cvCacheMaps={};reactData.isRowLoading=true;reactData.scrollVMLoading=false;reactData.treeExpandedFlag++;reactData.rowExpandedFlag++;internalData.insertRowMaps={};reactData.insertRowFlag++;internalData.removeRowMaps={};reactData.removeRowFlag++;const sYLoad=updateScrollYStatus($xeTable,fullData);// 全量数据
7788
7793
  internalData.tableFullData=fullData;internalData.tableFullTreeData=isRGroup?[]:treeData;internalData.tableFullGroupData=isRGroup?treeData:[];// 缓存数据
7789
7794
  $xeTable.cacheRowMap(isReset);// 原始数据
7790
7795
  internalData.tableSynchData=datas;if(isReset){internalData.isResizeCellHeight=false;}// 克隆原数据,用于显示编辑状态,与编辑值做对比
@@ -11012,6 +11017,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11012
11017
  const columnDragOpts = $xeTable.computeColumnDragOpts;
11013
11018
  const {
11014
11019
  isCrossDrag,
11020
+ isPeerDrag,
11015
11021
  isSelfToChildDrag,
11016
11022
  isToChildDrag,
11017
11023
  dragEndMethod
@@ -11058,20 +11064,27 @@ function panel_hideDropTip($xeTableCustomPanel) {
11058
11064
  if (immediate) {
11059
11065
  if (dragColumn.parentId && newColumn.parentId) {
11060
11066
  // 子到子
11061
- if (!isCrossDrag) {
11062
- return;
11063
- }
11064
- if (oldAllMaps[newColumn.id]) {
11065
- isSelfToChildStatus = true;
11066
- if (!(isCrossDrag && isSelfToChildDrag)) {
11067
- if (core_.VxeUI.modal) {
11068
- core_.VxeUI.modal.message({
11069
- status: 'error',
11070
- content: panel_getI18n('vxe.error.treeDragChild')
11071
- });
11072
- }
11067
+ if (isPeerDrag && !isCrossDrag) {
11068
+ if (dragColumn.parentId !== newColumn.parentId) {
11069
+ // 非同级
11070
+ return;
11071
+ }
11072
+ } else {
11073
+ if (!isCrossDrag) {
11073
11074
  return;
11074
11075
  }
11076
+ if (oldAllMaps[newColumn.id]) {
11077
+ isSelfToChildStatus = true;
11078
+ if (!(isCrossDrag && isSelfToChildDrag)) {
11079
+ if (core_.VxeUI.modal) {
11080
+ core_.VxeUI.modal.message({
11081
+ status: 'error',
11082
+ content: panel_getI18n('vxe.error.treeDragChild')
11083
+ });
11084
+ }
11085
+ return;
11086
+ }
11087
+ }
11075
11088
  }
11076
11089
  } else if (dragColumn.parentId) {
11077
11090
  // 子到根
@@ -11215,6 +11228,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11215
11228
  const columnDragOpts = $xeTable.computeColumnDragOpts;
11216
11229
  const {
11217
11230
  isCrossDrag,
11231
+ isPeerDrag,
11218
11232
  isToChildDrag
11219
11233
  } = columnDragOpts;
11220
11234
  const optEl = evnt.currentTarget;
@@ -11224,11 +11238,11 @@ function panel_hideDropTip($xeTableCustomPanel) {
11224
11238
  customPanelInternalData.prevDragGroupField = null;
11225
11239
  customPanelInternalData.prevDragAggFnColid = null;
11226
11240
  // 是否移入有效列
11227
- if (column && (isCrossDrag || column.level === 1)) {
11241
+ if (column && (isCrossDrag || isPeerDrag || column.level === 1)) {
11228
11242
  evnt.preventDefault();
11229
11243
  const offsetY = evnt.clientY - optEl.getBoundingClientRect().y;
11230
11244
  const dragPos = offsetY < optEl.clientHeight / 2 ? 'top' : 'bottom';
11231
- if (!dragCol || !(showSortDragButton && allowSort) || dragCol && dragCol.id === column.id || !isCrossDrag && column.level > 1 || !immediate && column.level > 1 || !isCrossDrag && dragCol.level > 1 || !immediate && dragCol.level > 1) {
11245
+ if (!dragCol || !(showSortDragButton && allowSort) || dragCol && dragCol.id === column.id || !isCrossDrag && (isPeerDrag ? dragCol.parentId !== column.parentId : column.level > 1) || !immediate && column.level > 1 || !isCrossDrag && (isPeerDrag ? dragCol.parentId !== column.parentId : dragCol.level > 1) || !immediate && dragCol.level > 1) {
11232
11246
  panel_showDropTip($xeTableCustomPanel, evnt, optEl, false, dragPos);
11233
11247
  return;
11234
11248
  }
@@ -11405,14 +11419,12 @@ function panel_hideDropTip($xeTableCustomPanel) {
11405
11419
  isCustomDragStatus
11406
11420
  } = tableReactData;
11407
11421
  const customOpts = $xeTable.computeCustomOpts;
11408
- const {
11409
- immediate
11410
- } = customOpts;
11411
11422
  const columnDragOpts = $xeTable.computeColumnDragOpts;
11412
11423
  const {
11413
11424
  popupStyle
11414
11425
  } = customStore;
11415
11426
  const {
11427
+ immediate,
11416
11428
  checkMethod,
11417
11429
  visibleMethod,
11418
11430
  allowVisible,
@@ -11429,7 +11441,8 @@ function panel_hideDropTip($xeTableCustomPanel) {
11429
11441
  const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn;
11430
11442
  const vSize = $xeTable.computeSize;
11431
11443
  const {
11432
- isCrossDrag
11444
+ isCrossDrag,
11445
+ isPeerDrag
11433
11446
  } = columnDragOpts;
11434
11447
  const slots = customOpts.slots || {};
11435
11448
  const headerSlot = slots.header;
@@ -11470,7 +11483,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11470
11483
  column
11471
11484
  }) : false;
11472
11485
  const isHidden = !isChecked;
11473
- const showSortBtn = (isCrossDrag ? immediate : false) || column.level === 1;
11486
+ const showSortBtn = (isCrossDrag || isPeerDrag ? immediate : false) || column.level === 1;
11474
11487
  colVNs.push(h('li', {
11475
11488
  key: column.id,
11476
11489
  attrs: {
@@ -11774,7 +11787,8 @@ function panel_hideDropTip($xeTableCustomPanel) {
11774
11787
  const drawerOpts = Object.assign({}, drawerOptions);
11775
11788
  const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn;
11776
11789
  const {
11777
- isCrossDrag
11790
+ isCrossDrag,
11791
+ isPeerDrag
11778
11792
  } = columnDragOpts;
11779
11793
  const slots = customOpts.slots || {};
11780
11794
  const headerSlot = slots.header;
@@ -11828,7 +11842,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11828
11842
  column
11829
11843
  }) : false;
11830
11844
  const isHidden = !isChecked;
11831
- const showSortBtn = (isCrossDrag ? immediate : false) || column.level === 1;
11845
+ const showSortBtn = (isCrossDrag || isPeerDrag ? immediate : false) || column.level === 1;
11832
11846
  trVNs.push(h('tr', {
11833
11847
  key: column.id,
11834
11848
  attrs: {
@@ -13029,6 +13043,7 @@ const {
13029
13043
  } = reactData;
13030
13044
  const {
13031
13045
  hasTree,
13046
+ hasRowGroup,
13032
13047
  hasMerge,
13033
13048
  isPrint,
13034
13049
  hasColgroup,
@@ -13216,6 +13231,18 @@ const {
13216
13231
  defaultOptions.isHeader = value;
13217
13232
  }
13218
13233
  }
13234
+ }), h('vxe-checkbox', {
13235
+ props: {
13236
+ value: defaultOptions.isFooter,
13237
+ disabled: !storeData.hasFooter,
13238
+ title: export_panel_getI18n('vxe.export.expFooterTitle'),
13239
+ content: export_panel_getI18n('vxe.export.expOptFooter')
13240
+ },
13241
+ on: {
13242
+ input(value) {
13243
+ defaultOptions.isFooter = value;
13244
+ }
13245
+ }
13219
13246
  }), h('vxe-checkbox', {
13220
13247
  props: {
13221
13248
  value: isHeader ? defaultOptions.isTitle : false,
@@ -13278,30 +13305,30 @@ const {
13278
13305
  defaultOptions.useStyle = value;
13279
13306
  }
13280
13307
  }
13281
- }), h('vxe-checkbox', {
13308
+ })]), h('div', {
13309
+ class: 'vxe-table-export--panel-option-row'
13310
+ }, [h('vxe-checkbox', {
13282
13311
  props: {
13283
- value: hasTree ? defaultOptions.isAllExpand : false,
13312
+ value: hasTree ? defaultOptions.isTreeAllExpanded : false,
13284
13313
  disabled: hasEmptyData || !hasTree,
13285
- title: export_panel_getI18n('vxe.export.expAllExpandTitle'),
13286
- content: export_panel_getI18n('vxe.export.expOptAllExpand')
13314
+ title: export_panel_getI18n('vxe.export.expTreeAllExpandTitle'),
13315
+ content: export_panel_getI18n('vxe.export.expOptTreeAllExpand')
13287
13316
  },
13288
13317
  on: {
13289
13318
  input(value) {
13290
- defaultOptions.isAllExpand = value;
13319
+ defaultOptions.isTreeAllExpanded = value;
13291
13320
  }
13292
13321
  }
13293
- })]), h('div', {
13294
- class: 'vxe-table-export--panel-option-row'
13295
- }, [h('vxe-checkbox', {
13322
+ }), h('vxe-checkbox', {
13296
13323
  props: {
13297
- value: defaultOptions.isFooter,
13298
- disabled: !storeData.hasFooter,
13299
- title: export_panel_getI18n('vxe.export.expFooterTitle'),
13300
- content: export_panel_getI18n('vxe.export.expOptFooter')
13324
+ value: hasRowGroup ? defaultOptions.isRowGroupAllExpanded : false,
13325
+ disabled: hasEmptyData || !hasRowGroup,
13326
+ title: export_panel_getI18n('vxe.export.expRowGroupAllExpandTitle'),
13327
+ content: export_panel_getI18n('vxe.export.expOptRowGroupAllExpand')
13301
13328
  },
13302
13329
  on: {
13303
13330
  input(value) {
13304
- defaultOptions.isFooter = value;
13331
+ defaultOptions.isRowGroupAllExpanded = value;
13305
13332
  }
13306
13333
  }
13307
13334
  })])])])]])])]), bottomSlot ? h('div', {
@@ -14482,8 +14509,9 @@ const {
14482
14509
  $gantt: $xeGantt,
14483
14510
  $event: evnt
14484
14511
  });
14485
- if (gMenuOpts && gMenuOpts.menuMethod) {
14486
- gMenuOpts.menuMethod(params, evnt);
14512
+ const tmMethod = gMenuOpts ? gMenuOpts.tableMenuMethod || gMenuOpts.menuMethod : null;
14513
+ if (tmMethod) {
14514
+ tmMethod(params, evnt);
14487
14515
  }
14488
14516
  // 在 v4 中废弃事件 context-menu-click
14489
14517
  if ($xeTable.$listeners['context-menu-click']) {
@@ -15949,11 +15977,6 @@ const {
15949
15977
  let htmlCellElem;
15950
15978
  const csvBOM = '\ufeff';
15951
15979
  const enterSymbol = '\r\n';
15952
- function hasTreeChildren($xeTable, row) {
15953
- const treeOpts = $xeTable.computeTreeOpts;
15954
- const childrenField = treeOpts.children || treeOpts.childrenField;
15955
- return row[childrenField] && row[childrenField].length;
15956
- }
15957
15980
  function getSeq($xeTable, cellValue, row, $rowIndex, column, $columnIndex) {
15958
15981
  const seqOpts = $xeTable.computeSeqOpts;
15959
15982
  const seqMd = seqOpts.seqMethod || column.seqMethod;
@@ -15992,39 +16015,144 @@ const toStringValue = cellValue => {
15992
16015
  };
15993
16016
  function getBodyLabelData($xeTable, opts, columns, datas) {
15994
16017
  const props = $xeTable;
16018
+ const reactData = $xeTable;
15995
16019
  const {
15996
- isAllExpand,
16020
+ isTreeAllExpanded,
16021
+ isRowGroupAllExpanded,
15997
16022
  mode
15998
16023
  } = opts;
15999
16024
  const {
16000
16025
  treeConfig
16001
16026
  } = props;
16027
+ const {
16028
+ isRowGroupStatus
16029
+ } = reactData;
16002
16030
  const radioOpts = $xeTable.computeRadioOpts;
16003
16031
  const checkboxOpts = $xeTable.computeCheckboxOpts;
16004
16032
  const treeOpts = $xeTable.computeTreeOpts;
16005
16033
  const columnOpts = $xeTable.computeColumnOpts;
16034
+ const aggregateOpts = $xeTable.computeAggregateOpts;
16006
16035
  if (!htmlCellElem) {
16007
16036
  htmlCellElem = document.createElement('div');
16008
16037
  }
16038
+ const {
16039
+ handleGetRowId
16040
+ } = createHandleGetRowId($xeTable);
16041
+ if (isRowGroupStatus) {
16042
+ // 如果是数据分组
16043
+ // 如果是数据分组
16044
+ const {
16045
+ mapChildrenField
16046
+ } = aggregateOpts;
16047
+ const rest = [];
16048
+ const expandMaps = {};
16049
+ const useMaps = {};
16050
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(datas, (item, $rowIndex, items, path, parentItem, nodes) => {
16051
+ const row = item._row || item;
16052
+ const rowid = handleGetRowId(row);
16053
+ if (useMaps[rowid]) {
16054
+ return;
16055
+ }
16056
+ const parentRow = parentItem && parentItem._row ? parentItem._row : parentItem;
16057
+ const pRowid = parentRow ? handleGetRowId(parentRow) : '';
16058
+ if (isRowGroupAllExpanded || !parentRow || expandMaps[pRowid] && $xeTable.isRowExpandByRow(parentRow)) {
16059
+ const hasRowChild = mapChildrenField && row[mapChildrenField] && row[mapChildrenField].length;
16060
+ const item = {
16061
+ _row: row,
16062
+ _level: nodes.length - 1,
16063
+ _hasChild: hasRowChild,
16064
+ _expand: hasRowChild && $xeTable.isRowExpandByRow(row)
16065
+ };
16066
+ columns.forEach((column, $columnIndex) => {
16067
+ let cellValue = '';
16068
+ const renderOpts = column.editRender || column.cellRender;
16069
+ let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
16070
+ if (!bodyExportMethod && renderOpts && renderOpts.name) {
16071
+ const compConf = export_mixin_renderer.get(renderOpts.name);
16072
+ if (compConf) {
16073
+ bodyExportMethod = compConf.tableExportMethod || compConf.exportMethod;
16074
+ }
16075
+ }
16076
+ if (!bodyExportMethod) {
16077
+ bodyExportMethod = columnOpts.exportMethod;
16078
+ }
16079
+ if (bodyExportMethod) {
16080
+ cellValue = bodyExportMethod({
16081
+ $table: $xeTable,
16082
+ row,
16083
+ column,
16084
+ options: opts
16085
+ });
16086
+ } else {
16087
+ switch (column.type) {
16088
+ case 'seq':
16089
+ {
16090
+ const seqVal = path.map((num, i) => i % 2 === 0 ? Number(num) + 1 : '.').join('');
16091
+ cellValue = mode === 'all' ? seqVal : getSeq($xeTable, seqVal, row, $rowIndex, column, $columnIndex);
16092
+ break;
16093
+ }
16094
+ case 'checkbox':
16095
+ cellValue = toBooleanValue($xeTable.isCheckedByCheckboxRow(row));
16096
+ item._checkboxLabel = checkboxOpts.labelField ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, checkboxOpts.labelField) : '';
16097
+ item._checkboxDisabled = checkboxOpts.checkMethod && !checkboxOpts.checkMethod({
16098
+ $table: $xeTable,
16099
+ row
16100
+ });
16101
+ break;
16102
+ case 'radio':
16103
+ cellValue = toBooleanValue($xeTable.isCheckedByRadioRow(row));
16104
+ item._radioLabel = radioOpts.labelField ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, radioOpts.labelField) : '';
16105
+ item._radioDisabled = radioOpts.checkMethod && !radioOpts.checkMethod({
16106
+ $table: $xeTable,
16107
+ row
16108
+ });
16109
+ break;
16110
+ default:
16111
+ if (opts.original) {
16112
+ cellValue = getCellValue(row, column);
16113
+ } else {
16114
+ cellValue = $xeTable.getCellLabel(row, column);
16115
+ if (column.type === 'html') {
16116
+ htmlCellElem.innerHTML = cellValue;
16117
+ cellValue = htmlCellElem.innerText.trim();
16118
+ } else {
16119
+ const cell = $xeTable.getCellElement(row, column);
16120
+ if (cell && !hasClass(cell, 'is--progress')) {
16121
+ cellValue = cell.innerText.trim();
16122
+ }
16123
+ }
16124
+ }
16125
+ }
16126
+ }
16127
+ item[column.id] = toStringValue(cellValue);
16128
+ });
16129
+ useMaps[rowid] = true;
16130
+ if (pRowid) {
16131
+ expandMaps[pRowid] = true;
16132
+ }
16133
+ rest.push(Object.assign(item, row));
16134
+ }
16135
+ }, {
16136
+ children: mapChildrenField
16137
+ });
16138
+ return rest;
16139
+ }
16009
16140
  if (treeConfig) {
16010
16141
  const childrenField = treeOpts.children || treeOpts.childrenField;
16011
- // 如果是树表格只允许导出数据源
16142
+ // 如果是树结构
16012
16143
  const rest = [];
16013
16144
  const expandMaps = {};
16014
16145
  const useMaps = {};
16015
- const {
16016
- handleGetRowId
16017
- } = createHandleGetRowId($xeTable);
16018
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(datas, (item, $rowIndex, items, path, parent, nodes) => {
16146
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(datas, (item, $rowIndex, items, path, parentItem, nodes) => {
16019
16147
  const row = item._row || item;
16020
16148
  const rowid = handleGetRowId(row);
16021
16149
  if (useMaps[rowid]) {
16022
16150
  return;
16023
16151
  }
16024
- const parentRow = parent && parent._row ? parent._row : parent;
16152
+ const parentRow = parentItem && parentItem._row ? parentItem._row : parentItem;
16025
16153
  const pRowid = parentRow ? handleGetRowId(parentRow) : '';
16026
- if (isAllExpand || !parentRow || expandMaps[pRowid] && $xeTable.isTreeExpandByRow(parentRow)) {
16027
- const hasRowChild = hasTreeChildren($xeTable, row);
16154
+ if (isTreeAllExpanded || !parentRow || expandMaps[pRowid] && $xeTable.isTreeExpandByRow(parentRow)) {
16155
+ const hasRowChild = row[childrenField] && row[childrenField].length;
16028
16156
  const item = {
16029
16157
  _row: row,
16030
16158
  _level: nodes.length - 1,
@@ -17058,6 +17186,7 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17058
17186
  const {
17059
17187
  initStore,
17060
17188
  isGroup,
17189
+ rowGroupList,
17061
17190
  footerTableData,
17062
17191
  exportStore,
17063
17192
  exportParams
@@ -17068,7 +17197,8 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17068
17197
  mergeFooterList
17069
17198
  } = internalData;
17070
17199
  const exportOpts = $xeTable.computeExportOpts;
17071
- const hasTree = treeConfig;
17200
+ const hasTree = !!treeConfig;
17201
+ const hasRowGroup = rowGroupList.length > 0;
17072
17202
  const customOpts = $xeTable.computeCustomOpts;
17073
17203
  const selectRecords = $xeTable.getCheckboxRecords();
17074
17204
  const proxyOpts = $xeGGWrapper ? $xeGGWrapper.computeProxyOpts : {};
@@ -17085,6 +17215,11 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17085
17215
  current: 'current',
17086
17216
  modes: (proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : []).concat(['current', 'selected', 'empty'])
17087
17217
  }, options);
17218
+ // 已废弃,参数 isAllExpand
17219
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(defOpts.isAllExpand)) {
17220
+ warnLog('vxe.error.delProp', ['isAllExpand', 'isTreeAllExpanded']);
17221
+ defOpts.isTreeAllExpanded = defOpts.isAllExpand;
17222
+ }
17088
17223
  const types = defOpts.types || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(exportOpts._typeMaps);
17089
17224
  const modes = defOpts.modes || [];
17090
17225
  const checkMethod = customOpts.checkMethod;
@@ -17132,17 +17267,16 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17132
17267
  }) : false);
17133
17268
  });
17134
17269
  // 更新条件
17135
- Object.assign(exportStore, {
17136
- columns: exportColumns,
17137
- typeList,
17138
- modeList,
17139
- hasFooter,
17140
- hasMerge,
17141
- hasTree,
17142
- isPrint,
17143
- hasColgroup: isGroup,
17144
- visible: true
17145
- });
17270
+ exportStore.columns = exportColumns;
17271
+ exportStore.typeList = typeList;
17272
+ exportStore.modeList = modeList;
17273
+ exportStore.hasFooter = hasFooter;
17274
+ exportStore.hasMerge = hasMerge;
17275
+ exportStore.hasTree = hasTree;
17276
+ exportStore.hasRowGroup = hasRowGroup;
17277
+ exportStore.isPrint = !!isPrint;
17278
+ exportStore.hasColgroup = isGroup;
17279
+ exportStore.visible = true;
17146
17280
  // 默认参数
17147
17281
  Object.assign(exportParams, {
17148
17282
  mode: selectRecords.length ? 'selected' : 'current'
@@ -17288,7 +17422,8 @@ const convertToRows = originColumns => {
17288
17422
  // filename: '',
17289
17423
  // sheetName: '',
17290
17424
  // original: false,
17291
- // isAllExpand: false,
17425
+ // isTreeAllExpanded: false,
17426
+ // isRowGroupAllExpanded: false,
17292
17427
  // data: null,
17293
17428
  // remote: false,
17294
17429
  // dataFilterMethod: null,
@@ -17298,6 +17433,11 @@ const convertToRows = originColumns => {
17298
17433
  // beforeExportMethod: null,
17299
17434
  // afterExportMethod: null
17300
17435
  }, exportOpts, options);
17436
+ // 已废弃,参数 isAllExpand
17437
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(opts.isAllExpand)) {
17438
+ warnLog('vxe.error.delProp', ['isAllExpand', 'isTreeAllExpanded']);
17439
+ opts.isTreeAllExpanded = opts.isAllExpand;
17440
+ }
17301
17441
  let {
17302
17442
  filename,
17303
17443
  sheetName,
@@ -18839,10 +18979,10 @@ function beginValidate($xeTable, rows, cols, cb, isFull) {
18839
18979
  editRules
18840
18980
  } = this;
18841
18981
  const {
18842
- property
18982
+ field
18843
18983
  } = column;
18844
- if (property && editRules) {
18845
- const rules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, property);
18984
+ if (field && editRules) {
18985
+ const rules = column.rules ? column.rules : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, field);
18846
18986
  return rules && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().find(rules, rule => type === 'all' || !rule.trigger || type === rule.trigger);
18847
18987
  }
18848
18988
  return false;
@@ -18874,7 +19014,7 @@ function beginValidate($xeTable, rows, cols, cb, isFull) {
18874
19014
  const errorRules = [];
18875
19015
  const syncValidList = [];
18876
19016
  if (field && editRules) {
18877
- const rules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, field);
19017
+ const rules = column.rules ? column.rules : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, field);
18878
19018
  if (rules) {
18879
19019
  const cellValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(val) ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, field) : val;
18880
19020
  rules.forEach(rule => {
@@ -20435,6 +20575,11 @@ function renderBody(h, $xeTable) {
20435
20575
  const props = $xeTable;
20436
20576
  return Object.assign({}, table_getConfig().table.aggregateConfig || table_getConfig().table.rowGroupConfig, props.aggregateConfig || props.rowGroupConfig);
20437
20577
  },
20578
+ computeAggregateMode() {
20579
+ const $xeTable = this;
20580
+ const aggregateOpts = $xeTable.computeAggregateOpts;
20581
+ return aggregateOpts.mode;
20582
+ },
20438
20583
  computeAggregateAccuracyOpts() {
20439
20584
  const $xeTable = this;
20440
20585
  const props = $xeTable;
@@ -21326,6 +21471,14 @@ function renderBody(h, $xeTable) {
21326
21471
  $xeTable.reloadData(tableFullData);
21327
21472
  });
21328
21473
  }
21474
+ },
21475
+ computeAggregateMode() {
21476
+ const $xeTable = this;
21477
+ const reactData = $xeTable;
21478
+ const internalData = $xeTable;
21479
+ if (reactData.isRowGroupStatus) {
21480
+ this.loadTableData(internalData.tableSynchData, false, true);
21481
+ }
21329
21482
  }
21330
21483
  },
21331
21484
  created() {
@@ -21451,6 +21604,9 @@ function renderBody(h, $xeTable) {
21451
21604
  if (exportConfig && exportOpts.types && !exportOpts.exportMethod && !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().includeArrays(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(exportOpts._typeMaps), exportOpts.types)) {
21452
21605
  warnLog('vxe.error.errProp', [`export-config.types=${exportOpts.types.join(',')}`, exportOpts.types.filter(type => external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().includes(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(exportOpts._typeMaps), type)).join(',') || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(exportOpts._typeMaps).join(',')]);
21453
21606
  }
21607
+ if (exportConfig && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(exportOpts.isAllExpand)) {
21608
+ warnLog('vxe.error.delProp', ['isAllExpand', 'isTreeAllExpanded']);
21609
+ }
21454
21610
  if (!props.id) {
21455
21611
  if ((props.customConfig ? isEnableConf(customOpts) : customOpts.enabled) && customOpts.storage) {
21456
21612
  errLog('vxe.error.reqProp', ['id']);
@@ -27064,7 +27220,7 @@ const Toolbar = VxeToolbar;
27064
27220
  cstmDragTarget: '移动:{0}',
27065
27221
  setting: {
27066
27222
  colSort: '排序',
27067
- sortHelpTip: '点击并拖动图标可以调整顺序',
27223
+ sortHelpTip: '点击图标开始拖动',
27068
27224
  colTitle: '列标题',
27069
27225
  colResizable: '列宽(像素)',
27070
27226
  colVisible: '是否显示',
@@ -27138,6 +27294,10 @@ const Toolbar = VxeToolbar;
27138
27294
  expMergeTitle: '如果存在,则支持带有合并结构的单元格',
27139
27295
  expOptAllExpand: '展开树',
27140
27296
  expAllExpandTitle: '如果存在,则支持将带有层级结构的数据全部展开',
27297
+ expOptTreeAllExpand: '展开树',
27298
+ expTreeAllExpandTitle: '如果存在,则自动展开所有树层级',
27299
+ expOptRowGroupAllExpand: '展开分组',
27300
+ expRowGroupAllExpandTitle: '如果存在,则自动展开所有分组层级',
27141
27301
  expOptUseStyle: '样式',
27142
27302
  expUseStyleTitle: '如果存在,则支持带样式的单元格',
27143
27303
  expOptOriginal: '源数据',
@@ -27550,7 +27710,7 @@ const Toolbar = VxeToolbar;
27550
27710
  groupPlaceholder: '拖至此处进行分组',
27551
27711
  valuesPlaceholder: '拖至此处进行聚合',
27552
27712
  dragExistCol: '该列已存在',
27553
- sortHelpTip: '点击并拖动图标可以调整顺序'
27713
+ sortHelpTip: '点击图标开始拖动'
27554
27714
  },
27555
27715
  aggFuncs: {
27556
27716
  sum: '求和',