vxe-table 3.21.2 → 3.21.4

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 (170) 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 +5 -1
  5. package/es/locale/lang/en-US.js +5 -1
  6. package/es/locale/lang/es-ES.js +4 -0
  7. package/es/locale/lang/fr-FR.js +6 -2
  8. package/es/locale/lang/hu-HU.js +5 -1
  9. package/es/locale/lang/hy-AM.js +5 -1
  10. package/es/locale/lang/id-ID.js +6 -2
  11. package/es/locale/lang/it-IT.js +5 -1
  12. package/es/locale/lang/ja-JP.js +4 -0
  13. package/es/locale/lang/ko-KR.js +5 -1
  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 +4 -0
  18. package/es/locale/lang/th-TH.js +5 -1
  19. package/es/locale/lang/ug-CN.js +5 -1
  20. package/es/locale/lang/uk-UA.js +5 -1
  21. package/es/locale/lang/uz-UZ.js +5 -1
  22. package/es/locale/lang/vi-VN.js +4 -0
  23. package/es/locale/lang/zh-CHT.js +4 -0
  24. package/es/locale/lang/zh-CN.js +4 -0
  25. package/es/style.css +1 -1
  26. package/es/style.min.css +1 -1
  27. package/es/table/module/custom/panel.js +28 -20
  28. package/es/table/module/export/export-panel.js +29 -16
  29. package/es/table/module/export/mixin.js +183 -28
  30. package/es/table/src/cell.js +7 -1
  31. package/es/table/src/methods.js +82 -31
  32. package/es/table/src/table.js +16 -0
  33. package/es/table/src/util.js +3 -1
  34. package/es/table/style.css +1 -1
  35. package/es/table/style.min.css +1 -1
  36. package/es/ui/index.js +1 -1
  37. package/es/ui/src/log.js +1 -1
  38. package/es/vxe-table/style.css +1 -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 +304 -67
  43. package/lib/index.umd.min.js +1 -1
  44. package/lib/locale/lang/ar-EG.js +6 -2
  45. package/lib/locale/lang/ar-EG.min.js +1 -1
  46. package/lib/locale/lang/ar-EG.umd.js +6 -2
  47. package/lib/locale/lang/de-DE.js +5 -1
  48. package/lib/locale/lang/de-DE.min.js +1 -1
  49. package/lib/locale/lang/de-DE.umd.js +5 -1
  50. package/lib/locale/lang/en-US.js +5 -1
  51. package/lib/locale/lang/en-US.min.js +1 -1
  52. package/lib/locale/lang/en-US.umd.js +5 -1
  53. package/lib/locale/lang/es-ES.js +4 -0
  54. package/lib/locale/lang/es-ES.min.js +1 -1
  55. package/lib/locale/lang/es-ES.umd.js +4 -0
  56. package/lib/locale/lang/fr-FR.js +6 -2
  57. package/lib/locale/lang/fr-FR.min.js +1 -1
  58. package/lib/locale/lang/fr-FR.umd.js +6 -2
  59. package/lib/locale/lang/hu-HU.js +5 -1
  60. package/lib/locale/lang/hu-HU.min.js +1 -1
  61. package/lib/locale/lang/hu-HU.umd.js +5 -1
  62. package/lib/locale/lang/hy-AM.js +5 -1
  63. package/lib/locale/lang/hy-AM.min.js +1 -1
  64. package/lib/locale/lang/hy-AM.umd.js +5 -1
  65. package/lib/locale/lang/id-ID.js +6 -2
  66. package/lib/locale/lang/id-ID.min.js +1 -1
  67. package/lib/locale/lang/id-ID.umd.js +6 -2
  68. package/lib/locale/lang/it-IT.js +5 -1
  69. package/lib/locale/lang/it-IT.min.js +1 -1
  70. package/lib/locale/lang/it-IT.umd.js +5 -1
  71. package/lib/locale/lang/ja-JP.js +4 -0
  72. package/lib/locale/lang/ja-JP.min.js +1 -1
  73. package/lib/locale/lang/ja-JP.umd.js +4 -0
  74. package/lib/locale/lang/ko-KR.js +5 -1
  75. package/lib/locale/lang/ko-KR.min.js +1 -1
  76. package/lib/locale/lang/ko-KR.umd.js +5 -1
  77. package/lib/locale/lang/ms-MY.js +6 -2
  78. package/lib/locale/lang/ms-MY.min.js +1 -1
  79. package/lib/locale/lang/ms-MY.umd.js +6 -2
  80. package/lib/locale/lang/nb-NO.js +6 -2
  81. package/lib/locale/lang/nb-NO.min.js +1 -1
  82. package/lib/locale/lang/nb-NO.umd.js +6 -2
  83. package/lib/locale/lang/pt-BR.js +6 -2
  84. package/lib/locale/lang/pt-BR.min.js +1 -1
  85. package/lib/locale/lang/pt-BR.umd.js +6 -2
  86. package/lib/locale/lang/ru-RU.js +4 -0
  87. package/lib/locale/lang/ru-RU.min.js +1 -1
  88. package/lib/locale/lang/ru-RU.umd.js +4 -0
  89. package/lib/locale/lang/th-TH.js +5 -1
  90. package/lib/locale/lang/th-TH.min.js +1 -1
  91. package/lib/locale/lang/th-TH.umd.js +5 -1
  92. package/lib/locale/lang/ug-CN.js +5 -1
  93. package/lib/locale/lang/ug-CN.min.js +1 -1
  94. package/lib/locale/lang/ug-CN.umd.js +5 -1
  95. package/lib/locale/lang/uk-UA.js +5 -1
  96. package/lib/locale/lang/uk-UA.min.js +1 -1
  97. package/lib/locale/lang/uk-UA.umd.js +5 -1
  98. package/lib/locale/lang/uz-UZ.js +5 -1
  99. package/lib/locale/lang/uz-UZ.min.js +1 -1
  100. package/lib/locale/lang/uz-UZ.umd.js +5 -1
  101. package/lib/locale/lang/vi-VN.js +4 -0
  102. package/lib/locale/lang/vi-VN.min.js +1 -1
  103. package/lib/locale/lang/vi-VN.umd.js +4 -0
  104. package/lib/locale/lang/zh-CHT.js +4 -0
  105. package/lib/locale/lang/zh-CHT.min.js +1 -1
  106. package/lib/locale/lang/zh-CHT.umd.js +4 -0
  107. package/lib/locale/lang/zh-CN.js +4 -0
  108. package/lib/locale/lang/zh-CN.min.js +1 -1
  109. package/lib/locale/lang/zh-CN.umd.js +4 -0
  110. package/lib/style.css +1 -1
  111. package/lib/style.min.css +1 -1
  112. package/lib/table/module/custom/panel.js +29 -18
  113. package/lib/table/module/custom/panel.min.js +1 -1
  114. package/lib/table/module/export/export-panel.js +26 -13
  115. package/lib/table/module/export/export-panel.min.js +1 -1
  116. package/lib/table/module/export/mixin.js +216 -30
  117. package/lib/table/module/export/mixin.min.js +1 -1
  118. package/lib/table/src/cell.js +6 -1
  119. package/lib/table/src/cell.min.js +1 -1
  120. package/lib/table/src/methods.js +2 -2
  121. package/lib/table/src/methods.min.js +1 -1
  122. package/lib/table/src/table.js +16 -0
  123. package/lib/table/src/table.min.js +1 -1
  124. package/lib/table/src/util.js +3 -1
  125. package/lib/table/src/util.min.js +1 -1
  126. package/lib/table/style/style.css +1 -1
  127. package/lib/table/style/style.min.css +1 -1
  128. package/lib/ui/index.js +1 -1
  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 +1 -1
  133. package/lib/vxe-table/style/style.min.css +1 -1
  134. package/package.json +2 -2
  135. package/packages/locale/lang/ar-EG.ts +850 -846
  136. package/packages/locale/lang/de-DE.ts +850 -846
  137. package/packages/locale/lang/en-US.ts +850 -846
  138. package/packages/locale/lang/es-ES.ts +850 -846
  139. package/packages/locale/lang/fr-FR.ts +850 -846
  140. package/packages/locale/lang/hu-HU.ts +850 -846
  141. package/packages/locale/lang/hy-AM.ts +850 -846
  142. package/packages/locale/lang/id-ID.ts +850 -846
  143. package/packages/locale/lang/it-IT.ts +850 -846
  144. package/packages/locale/lang/ja-JP.ts +850 -846
  145. package/packages/locale/lang/ko-KR.ts +850 -846
  146. package/packages/locale/lang/ms-MY.ts +850 -846
  147. package/packages/locale/lang/nb-NO.ts +850 -846
  148. package/packages/locale/lang/pt-BR.ts +850 -846
  149. package/packages/locale/lang/ru-RU.ts +850 -846
  150. package/packages/locale/lang/th-TH.ts +850 -846
  151. package/packages/locale/lang/ug-CN.ts +850 -846
  152. package/packages/locale/lang/uk-UA.ts +850 -846
  153. package/packages/locale/lang/uz-UZ.ts +850 -846
  154. package/packages/locale/lang/vi-VN.ts +850 -846
  155. package/packages/locale/lang/zh-CHT.ts +850 -846
  156. package/packages/locale/lang/zh-CN.ts +4 -0
  157. package/packages/table/module/custom/panel.ts +29 -21
  158. package/packages/table/module/export/export-panel.ts +29 -17
  159. package/packages/table/module/export/mixin.ts +183 -30
  160. package/packages/table/src/cell.ts +6 -1
  161. package/packages/table/src/methods.ts +82 -31
  162. package/packages/table/src/table.ts +18 -0
  163. package/packages/table/src/util.ts +3 -1
  164. package/styles/components/table-module/export.scss +1 -1
  165. /package/es/{iconfont.1779778409753.ttf → iconfont.1779936730544.ttf} +0 -0
  166. /package/es/{iconfont.1779778409753.woff → iconfont.1779936730544.woff} +0 -0
  167. /package/es/{iconfont.1779778409753.woff2 → iconfont.1779936730544.woff2} +0 -0
  168. /package/lib/{iconfont.1779778409753.ttf → iconfont.1779936730544.ttf} +0 -0
  169. /package/lib/{iconfont.1779778409753.woff → iconfont.1779936730544.woff} +0 -0
  170. /package/lib/{iconfont.1779778409753.woff2 → iconfont.1779936730544.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.2";
3314
+ const version = "3.21.4";
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.2"}`;
3845
+ const log_version = `table v${"3.21.4"}`;
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
@@ -4638,6 +4638,7 @@ function createReactData() {
4638
4638
  hasFooter: false,
4639
4639
  hasMerge: false,
4640
4640
  hasTree: false,
4641
+ hasRowGroup: false,
4641
4642
  hasColgroup: false,
4642
4643
  visible: false
4643
4644
  },
@@ -4648,7 +4649,8 @@ function createReactData() {
4648
4649
  type: '',
4649
4650
  isColgroup: false,
4650
4651
  isMerge: false,
4651
- isAllExpand: false,
4652
+ isTreeAllExpanded: false,
4653
+ isRowGroupAllExpanded: false,
4652
4654
  useStyle: false,
4653
4655
  original: false,
4654
4656
  message: true,
@@ -6121,7 +6123,12 @@ const Cell = {
6121
6123
  const {
6122
6124
  mode
6123
6125
  } = aggregateOpts;
6124
- if (mode === 'column' ? column.field === row.groupField : rowGroupNode) {
6126
+ if (mode === 'column') {
6127
+ if (row.groupField && column.field === row.groupField) {
6128
+ return [Cell.renderRowGroupBtn(h, params, cellVNodes)];
6129
+ }
6130
+ return cellVNodes;
6131
+ } else if (rowGroupNode) {
6125
6132
  return [Cell.renderRowGroupBtn(h, params, cellVNodes)];
6126
6133
  }
6127
6134
  }
@@ -7777,7 +7784,7 @@ if(reWidth){calcCellWidth($xeTable);}if(reFull){autoCellWidth($xeTable);}if(reHe
7777
7784
  * 已废弃
7778
7785
  * @deprecated
7779
7786
  */totalValue:childCount};let aggVal=0;// 如果下层同时也是分组
7780
- 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};}/**
7787
+ 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;}/**
7781
7788
  * 加载表格数据
7782
7789
  * @param {Array} datas 数据
7783
7790
  */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):[];// 转为响应式数据
@@ -7787,7 +7794,7 @@ if(!treeOpts.rowField){errLog('vxe.error.reqProp',['tree-config.rowField']);}if(
7787
7794
  // warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${treeOpts.children}`])
7788
7795
  // }
7789
7796
  // })
7790
- 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);// 全量数据
7797
+ 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);// 全量数据
7791
7798
  internalData.tableFullData=fullData;internalData.tableFullTreeData=isRGroup?[]:treeData;internalData.tableFullGroupData=isRGroup?treeData:[];// 缓存数据
7792
7799
  $xeTable.cacheRowMap(isReset);// 原始数据
7793
7800
  internalData.tableSynchData=datas;if(isReset){internalData.isResizeCellHeight=false;}// 克隆原数据,用于显示编辑状态,与编辑值做对比
@@ -11015,6 +11022,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11015
11022
  const columnDragOpts = $xeTable.computeColumnDragOpts;
11016
11023
  const {
11017
11024
  isCrossDrag,
11025
+ isPeerDrag,
11018
11026
  isSelfToChildDrag,
11019
11027
  isToChildDrag,
11020
11028
  dragEndMethod
@@ -11061,20 +11069,27 @@ function panel_hideDropTip($xeTableCustomPanel) {
11061
11069
  if (immediate) {
11062
11070
  if (dragColumn.parentId && newColumn.parentId) {
11063
11071
  // 子到子
11064
- if (!isCrossDrag) {
11065
- return;
11066
- }
11067
- if (oldAllMaps[newColumn.id]) {
11068
- isSelfToChildStatus = true;
11069
- if (!(isCrossDrag && isSelfToChildDrag)) {
11070
- if (core_.VxeUI.modal) {
11071
- core_.VxeUI.modal.message({
11072
- status: 'error',
11073
- content: panel_getI18n('vxe.error.treeDragChild')
11074
- });
11075
- }
11072
+ if (isPeerDrag && !isCrossDrag) {
11073
+ if (dragColumn.parentId !== newColumn.parentId) {
11074
+ // 非同级
11075
+ return;
11076
+ }
11077
+ } else {
11078
+ if (!isCrossDrag) {
11076
11079
  return;
11077
11080
  }
11081
+ if (oldAllMaps[newColumn.id]) {
11082
+ isSelfToChildStatus = true;
11083
+ if (!(isCrossDrag && isSelfToChildDrag)) {
11084
+ if (core_.VxeUI.modal) {
11085
+ core_.VxeUI.modal.message({
11086
+ status: 'error',
11087
+ content: panel_getI18n('vxe.error.treeDragChild')
11088
+ });
11089
+ }
11090
+ return;
11091
+ }
11092
+ }
11078
11093
  }
11079
11094
  } else if (dragColumn.parentId) {
11080
11095
  // 子到根
@@ -11218,6 +11233,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11218
11233
  const columnDragOpts = $xeTable.computeColumnDragOpts;
11219
11234
  const {
11220
11235
  isCrossDrag,
11236
+ isPeerDrag,
11221
11237
  isToChildDrag
11222
11238
  } = columnDragOpts;
11223
11239
  const optEl = evnt.currentTarget;
@@ -11227,11 +11243,11 @@ function panel_hideDropTip($xeTableCustomPanel) {
11227
11243
  customPanelInternalData.prevDragGroupField = null;
11228
11244
  customPanelInternalData.prevDragAggFnColid = null;
11229
11245
  // 是否移入有效列
11230
- if (column && (isCrossDrag || column.level === 1)) {
11246
+ if (column && (isCrossDrag || isPeerDrag || column.level === 1)) {
11231
11247
  evnt.preventDefault();
11232
11248
  const offsetY = evnt.clientY - optEl.getBoundingClientRect().y;
11233
11249
  const dragPos = offsetY < optEl.clientHeight / 2 ? 'top' : 'bottom';
11234
- 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) {
11250
+ 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) {
11235
11251
  panel_showDropTip($xeTableCustomPanel, evnt, optEl, false, dragPos);
11236
11252
  return;
11237
11253
  }
@@ -11430,7 +11446,8 @@ function panel_hideDropTip($xeTableCustomPanel) {
11430
11446
  const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn;
11431
11447
  const vSize = $xeTable.computeSize;
11432
11448
  const {
11433
- isCrossDrag
11449
+ isCrossDrag,
11450
+ isPeerDrag
11434
11451
  } = columnDragOpts;
11435
11452
  const slots = customOpts.slots || {};
11436
11453
  const headerSlot = slots.header;
@@ -11471,7 +11488,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11471
11488
  column
11472
11489
  }) : false;
11473
11490
  const isHidden = !isChecked;
11474
- const showSortBtn = (isCrossDrag ? immediate : false) || column.level === 1;
11491
+ const showSortBtn = (isCrossDrag || isPeerDrag ? immediate : false) || column.level === 1;
11475
11492
  colVNs.push(h('li', {
11476
11493
  key: column.id,
11477
11494
  attrs: {
@@ -11775,7 +11792,8 @@ function panel_hideDropTip($xeTableCustomPanel) {
11775
11792
  const drawerOpts = Object.assign({}, drawerOptions);
11776
11793
  const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn;
11777
11794
  const {
11778
- isCrossDrag
11795
+ isCrossDrag,
11796
+ isPeerDrag
11779
11797
  } = columnDragOpts;
11780
11798
  const slots = customOpts.slots || {};
11781
11799
  const headerSlot = slots.header;
@@ -11829,7 +11847,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
11829
11847
  column
11830
11848
  }) : false;
11831
11849
  const isHidden = !isChecked;
11832
- const showSortBtn = (isCrossDrag ? immediate : false) || column.level === 1;
11850
+ const showSortBtn = (isCrossDrag || isPeerDrag ? immediate : false) || column.level === 1;
11833
11851
  trVNs.push(h('tr', {
11834
11852
  key: column.id,
11835
11853
  attrs: {
@@ -13030,6 +13048,7 @@ const {
13030
13048
  } = reactData;
13031
13049
  const {
13032
13050
  hasTree,
13051
+ hasRowGroup,
13033
13052
  hasMerge,
13034
13053
  isPrint,
13035
13054
  hasColgroup,
@@ -13217,6 +13236,18 @@ const {
13217
13236
  defaultOptions.isHeader = value;
13218
13237
  }
13219
13238
  }
13239
+ }), h('vxe-checkbox', {
13240
+ props: {
13241
+ value: defaultOptions.isFooter,
13242
+ disabled: !storeData.hasFooter,
13243
+ title: export_panel_getI18n('vxe.export.expFooterTitle'),
13244
+ content: export_panel_getI18n('vxe.export.expOptFooter')
13245
+ },
13246
+ on: {
13247
+ input(value) {
13248
+ defaultOptions.isFooter = value;
13249
+ }
13250
+ }
13220
13251
  }), h('vxe-checkbox', {
13221
13252
  props: {
13222
13253
  value: isHeader ? defaultOptions.isTitle : false,
@@ -13279,30 +13310,30 @@ const {
13279
13310
  defaultOptions.useStyle = value;
13280
13311
  }
13281
13312
  }
13282
- }), h('vxe-checkbox', {
13313
+ })]), h('div', {
13314
+ class: 'vxe-table-export--panel-option-row'
13315
+ }, [h('vxe-checkbox', {
13283
13316
  props: {
13284
- value: hasTree ? defaultOptions.isAllExpand : false,
13317
+ value: hasTree ? defaultOptions.isTreeAllExpanded : false,
13285
13318
  disabled: hasEmptyData || !hasTree,
13286
- title: export_panel_getI18n('vxe.export.expAllExpandTitle'),
13287
- content: export_panel_getI18n('vxe.export.expOptAllExpand')
13319
+ title: export_panel_getI18n('vxe.export.expTreeAllExpandTitle'),
13320
+ content: export_panel_getI18n('vxe.export.expOptTreeAllExpand')
13288
13321
  },
13289
13322
  on: {
13290
13323
  input(value) {
13291
- defaultOptions.isAllExpand = value;
13324
+ defaultOptions.isTreeAllExpanded = value;
13292
13325
  }
13293
13326
  }
13294
- })]), h('div', {
13295
- class: 'vxe-table-export--panel-option-row'
13296
- }, [h('vxe-checkbox', {
13327
+ }), h('vxe-checkbox', {
13297
13328
  props: {
13298
- value: defaultOptions.isFooter,
13299
- disabled: !storeData.hasFooter,
13300
- title: export_panel_getI18n('vxe.export.expFooterTitle'),
13301
- content: export_panel_getI18n('vxe.export.expOptFooter')
13329
+ value: hasRowGroup ? defaultOptions.isRowGroupAllExpanded : false,
13330
+ disabled: hasEmptyData || !hasRowGroup,
13331
+ title: export_panel_getI18n('vxe.export.expRowGroupAllExpandTitle'),
13332
+ content: export_panel_getI18n('vxe.export.expOptRowGroupAllExpand')
13302
13333
  },
13303
13334
  on: {
13304
13335
  input(value) {
13305
- defaultOptions.isFooter = value;
13336
+ defaultOptions.isRowGroupAllExpanded = value;
13306
13337
  }
13307
13338
  }
13308
13339
  })])])])]])])]), bottomSlot ? h('div', {
@@ -15951,11 +15982,6 @@ const {
15951
15982
  let htmlCellElem;
15952
15983
  const csvBOM = '\ufeff';
15953
15984
  const enterSymbol = '\r\n';
15954
- function hasTreeChildren($xeTable, row) {
15955
- const treeOpts = $xeTable.computeTreeOpts;
15956
- const childrenField = treeOpts.children || treeOpts.childrenField;
15957
- return row[childrenField] && row[childrenField].length;
15958
- }
15959
15985
  function getSeq($xeTable, cellValue, row, $rowIndex, column, $columnIndex) {
15960
15986
  const seqOpts = $xeTable.computeSeqOpts;
15961
15987
  const seqMd = seqOpts.seqMethod || column.seqMethod;
@@ -15994,39 +16020,218 @@ const toStringValue = cellValue => {
15994
16020
  };
15995
16021
  function getBodyLabelData($xeTable, opts, columns, datas) {
15996
16022
  const props = $xeTable;
16023
+ const reactData = $xeTable;
16024
+ const internalData = $xeTable;
15997
16025
  const {
15998
- isAllExpand,
15999
- mode
16026
+ isTreeAllExpanded,
16027
+ isRowGroupAllExpanded,
16028
+ mode: expMode
16000
16029
  } = opts;
16001
16030
  const {
16002
16031
  treeConfig
16003
16032
  } = props;
16033
+ const {
16034
+ isRowGroupStatus
16035
+ } = reactData;
16036
+ const {
16037
+ fullColumnFieldData
16038
+ } = internalData;
16004
16039
  const radioOpts = $xeTable.computeRadioOpts;
16005
16040
  const checkboxOpts = $xeTable.computeCheckboxOpts;
16006
16041
  const treeOpts = $xeTable.computeTreeOpts;
16007
16042
  const columnOpts = $xeTable.computeColumnOpts;
16043
+ const aggregateOpts = $xeTable.computeAggregateOpts;
16008
16044
  if (!htmlCellElem) {
16009
16045
  htmlCellElem = document.createElement('div');
16010
16046
  }
16047
+ const {
16048
+ handleGetRowId
16049
+ } = createHandleGetRowId($xeTable);
16050
+ if (isRowGroupStatus) {
16051
+ // 如果是数据分组
16052
+ const {
16053
+ mode: aggMode,
16054
+ showTotal,
16055
+ totalMethod,
16056
+ countFields,
16057
+ contentMethod,
16058
+ formatValuesMethod,
16059
+ mapChildrenField
16060
+ } = aggregateOpts;
16061
+ const rest = [];
16062
+ const expandMaps = {};
16063
+ const useMaps = {};
16064
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(datas, (item, $rowIndex, items, path, parentItem, nodes) => {
16065
+ const row = item._row || item;
16066
+ const rowid = handleGetRowId(row);
16067
+ if (useMaps[rowid]) {
16068
+ return;
16069
+ }
16070
+ const parentRow = parentItem && parentItem._row ? parentItem._row : parentItem;
16071
+ const pRowid = parentRow ? handleGetRowId(parentRow) : '';
16072
+ if (isRowGroupAllExpanded || !parentRow || expandMaps[pRowid] && $xeTable.isRowExpandByRow(parentRow)) {
16073
+ const hasRowChild = mapChildrenField && row[mapChildrenField] && row[mapChildrenField].length;
16074
+ const item = {
16075
+ _row: row,
16076
+ _level: nodes.length - 1,
16077
+ _hasChild: hasRowChild,
16078
+ _expand: hasRowChild && $xeTable.isRowExpandByRow(row)
16079
+ };
16080
+ columns.forEach((column, $columnIndex) => {
16081
+ const {
16082
+ field,
16083
+ editRender,
16084
+ cellRender,
16085
+ aggFunc,
16086
+ rowGroupNode
16087
+ } = column;
16088
+ let cellValue = '';
16089
+ const renderOpts = editRender || cellRender;
16090
+ let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
16091
+ if (!bodyExportMethod && renderOpts && renderOpts.name) {
16092
+ const compConf = export_mixin_renderer.get(renderOpts.name);
16093
+ if (compConf) {
16094
+ bodyExportMethod = compConf.tableExportMethod || compConf.exportMethod;
16095
+ }
16096
+ }
16097
+ if (!bodyExportMethod) {
16098
+ bodyExportMethod = columnOpts.exportMethod;
16099
+ }
16100
+ if (bodyExportMethod) {
16101
+ cellValue = bodyExportMethod({
16102
+ $table: $xeTable,
16103
+ row,
16104
+ column,
16105
+ options: opts
16106
+ });
16107
+ } else {
16108
+ switch (column.type) {
16109
+ case 'seq':
16110
+ {
16111
+ const seqVal = path.map((num, i) => i % 2 === 0 ? Number(num) + 1 : '.').join('');
16112
+ cellValue = expMode === 'all' ? seqVal : getSeq($xeTable, seqVal, row, $rowIndex, column, $columnIndex);
16113
+ break;
16114
+ }
16115
+ case 'checkbox':
16116
+ {
16117
+ cellValue = toBooleanValue($xeTable.isCheckedByCheckboxRow(row));
16118
+ item._checkboxLabel = checkboxOpts.labelField ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, checkboxOpts.labelField) : '';
16119
+ item._checkboxDisabled = checkboxOpts.checkMethod && !checkboxOpts.checkMethod({
16120
+ $table: $xeTable,
16121
+ row
16122
+ });
16123
+ break;
16124
+ }
16125
+ case 'radio':
16126
+ {
16127
+ cellValue = toBooleanValue($xeTable.isCheckedByRadioRow(row));
16128
+ item._radioLabel = radioOpts.labelField ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, radioOpts.labelField) : '';
16129
+ item._radioDisabled = radioOpts.checkMethod && !radioOpts.checkMethod({
16130
+ $table: $xeTable,
16131
+ row
16132
+ });
16133
+ break;
16134
+ }
16135
+ default:
16136
+ {
16137
+ if (field && row.isAggregate) {
16138
+ const aggRow = row;
16139
+ const aggData = aggRow.aggData;
16140
+ const currAggData = aggData ? aggData[field] : null;
16141
+ const groupField = aggRow.groupField;
16142
+ const groupContent = aggRow.groupContent;
16143
+ const childList = mapChildrenField ? aggRow[mapChildrenField] || [] : [];
16144
+ const childCount = aggRow.childCount;
16145
+ const colRest = fullColumnFieldData[groupField] || {};
16146
+ const ctParams = {
16147
+ $table: $xeTable,
16148
+ groupField,
16149
+ groupColumn: colRest ? colRest.column : null,
16150
+ column,
16151
+ groupValue: groupContent,
16152
+ childList,
16153
+ childCount,
16154
+ aggValue: null,
16155
+ /**
16156
+ * 已废弃
16157
+ * @deprecated
16158
+ */
16159
+ children: childList,
16160
+ /**
16161
+ * 已废弃
16162
+ * @deprecated
16163
+ */
16164
+ totalValue: childCount
16165
+ };
16166
+ if (aggMode === 'column' ? field === aggRow.groupField : rowGroupNode) {
16167
+ cellValue = groupContent;
16168
+ if (contentMethod) {
16169
+ cellValue = `${contentMethod(ctParams)}`;
16170
+ }
16171
+ if (showTotal) {
16172
+ cellValue = export_mixin_getI18n('vxe.table.rowGroupContentTotal', [cellValue, totalMethod ? totalMethod(ctParams) : childCount, childCount]);
16173
+ }
16174
+ } else if ($xeTable.getPivotTableAggregateCellAggValue) {
16175
+ const aggParams = {
16176
+ $table: $xeTable,
16177
+ row,
16178
+ column
16179
+ };
16180
+ cellValue = $xeTable.getPivotTableAggregateCellAggValue(aggParams);
16181
+ } else if (aggFunc === true || countFields && countFields.includes(field)) {
16182
+ cellValue = currAggData ? currAggData.value : childCount;
16183
+ ctParams.aggValue = cellValue;
16184
+ if (formatValuesMethod) {
16185
+ cellValue = formatValuesMethod(ctParams);
16186
+ }
16187
+ }
16188
+ } else if (opts.original) {
16189
+ cellValue = getCellValue(row, column);
16190
+ } else {
16191
+ cellValue = $xeTable.getCellLabel(row, column);
16192
+ if (column.type === 'html') {
16193
+ htmlCellElem.innerHTML = cellValue;
16194
+ cellValue = htmlCellElem.innerText.trim();
16195
+ } else {
16196
+ const cell = $xeTable.getCellElement(row, column);
16197
+ if (cell && !hasClass(cell, 'is--progress')) {
16198
+ cellValue = cell.innerText.trim();
16199
+ }
16200
+ }
16201
+ }
16202
+ break;
16203
+ }
16204
+ }
16205
+ }
16206
+ item[column.id] = toStringValue(cellValue);
16207
+ });
16208
+ useMaps[rowid] = true;
16209
+ if (pRowid) {
16210
+ expandMaps[pRowid] = true;
16211
+ }
16212
+ rest.push(Object.assign(item, row));
16213
+ }
16214
+ }, {
16215
+ children: mapChildrenField
16216
+ });
16217
+ return rest;
16218
+ }
16011
16219
  if (treeConfig) {
16012
16220
  const childrenField = treeOpts.children || treeOpts.childrenField;
16013
- // 如果是树表格只允许导出数据源
16221
+ // 如果是树结构
16014
16222
  const rest = [];
16015
16223
  const expandMaps = {};
16016
16224
  const useMaps = {};
16017
- const {
16018
- handleGetRowId
16019
- } = createHandleGetRowId($xeTable);
16020
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(datas, (item, $rowIndex, items, path, parent, nodes) => {
16225
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(datas, (item, $rowIndex, items, path, parentItem, nodes) => {
16021
16226
  const row = item._row || item;
16022
16227
  const rowid = handleGetRowId(row);
16023
16228
  if (useMaps[rowid]) {
16024
16229
  return;
16025
16230
  }
16026
- const parentRow = parent && parent._row ? parent._row : parent;
16231
+ const parentRow = parentItem && parentItem._row ? parentItem._row : parentItem;
16027
16232
  const pRowid = parentRow ? handleGetRowId(parentRow) : '';
16028
- if (isAllExpand || !parentRow || expandMaps[pRowid] && $xeTable.isTreeExpandByRow(parentRow)) {
16029
- const hasRowChild = hasTreeChildren($xeTable, row);
16233
+ if (isTreeAllExpanded || !parentRow || expandMaps[pRowid] && $xeTable.isTreeExpandByRow(parentRow)) {
16234
+ const hasRowChild = row[childrenField] && row[childrenField].length;
16030
16235
  const item = {
16031
16236
  _row: row,
16032
16237
  _level: nodes.length - 1,
@@ -16058,7 +16263,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16058
16263
  case 'seq':
16059
16264
  {
16060
16265
  const seqVal = path.map((num, i) => i % 2 === 0 ? Number(num) + 1 : '.').join('');
16061
- cellValue = mode === 'all' ? seqVal : getSeq($xeTable, seqVal, row, $rowIndex, column, $columnIndex);
16266
+ cellValue = expMode === 'all' ? seqVal : getSeq($xeTable, seqVal, row, $rowIndex, column, $columnIndex);
16062
16267
  break;
16063
16268
  }
16064
16269
  case 'checkbox':
@@ -16133,7 +16338,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16133
16338
  case 'seq':
16134
16339
  {
16135
16340
  const seqValue = $rowIndex + 1;
16136
- cellValue = mode === 'all' ? seqValue : getSeq($xeTable, seqValue, row, $rowIndex, column, $columnIndex);
16341
+ cellValue = expMode === 'all' ? seqValue : getSeq($xeTable, seqValue, row, $rowIndex, column, $columnIndex);
16137
16342
  break;
16138
16343
  }
16139
16344
  case 'checkbox':
@@ -17060,6 +17265,7 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17060
17265
  const {
17061
17266
  initStore,
17062
17267
  isGroup,
17268
+ rowGroupList,
17063
17269
  footerTableData,
17064
17270
  exportStore,
17065
17271
  exportParams
@@ -17070,7 +17276,8 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17070
17276
  mergeFooterList
17071
17277
  } = internalData;
17072
17278
  const exportOpts = $xeTable.computeExportOpts;
17073
- const hasTree = treeConfig;
17279
+ const hasTree = !!treeConfig;
17280
+ const hasRowGroup = rowGroupList.length > 0;
17074
17281
  const customOpts = $xeTable.computeCustomOpts;
17075
17282
  const selectRecords = $xeTable.getCheckboxRecords();
17076
17283
  const proxyOpts = $xeGGWrapper ? $xeGGWrapper.computeProxyOpts : {};
@@ -17087,6 +17294,11 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17087
17294
  current: 'current',
17088
17295
  modes: (proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : []).concat(['current', 'selected', 'empty'])
17089
17296
  }, options);
17297
+ // 已废弃,参数 isAllExpand
17298
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(defOpts.isAllExpand)) {
17299
+ warnLog('vxe.error.delProp', ['isAllExpand', 'isTreeAllExpanded']);
17300
+ defOpts.isTreeAllExpanded = defOpts.isAllExpand;
17301
+ }
17090
17302
  const types = defOpts.types || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(exportOpts._typeMaps);
17091
17303
  const modes = defOpts.modes || [];
17092
17304
  const checkMethod = customOpts.checkMethod;
@@ -17134,17 +17346,16 @@ function handleExportAndPrint($xeTable, options, isPrint) {
17134
17346
  }) : false);
17135
17347
  });
17136
17348
  // 更新条件
17137
- Object.assign(exportStore, {
17138
- columns: exportColumns,
17139
- typeList,
17140
- modeList,
17141
- hasFooter,
17142
- hasMerge,
17143
- hasTree,
17144
- isPrint,
17145
- hasColgroup: isGroup,
17146
- visible: true
17147
- });
17349
+ exportStore.columns = exportColumns;
17350
+ exportStore.typeList = typeList;
17351
+ exportStore.modeList = modeList;
17352
+ exportStore.hasFooter = hasFooter;
17353
+ exportStore.hasMerge = hasMerge;
17354
+ exportStore.hasTree = hasTree;
17355
+ exportStore.hasRowGroup = hasRowGroup;
17356
+ exportStore.isPrint = !!isPrint;
17357
+ exportStore.hasColgroup = isGroup;
17358
+ exportStore.visible = true;
17148
17359
  // 默认参数
17149
17360
  Object.assign(exportParams, {
17150
17361
  mode: selectRecords.length ? 'selected' : 'current'
@@ -17290,7 +17501,8 @@ const convertToRows = originColumns => {
17290
17501
  // filename: '',
17291
17502
  // sheetName: '',
17292
17503
  // original: false,
17293
- // isAllExpand: false,
17504
+ // isTreeAllExpanded: false,
17505
+ // isRowGroupAllExpanded: false,
17294
17506
  // data: null,
17295
17507
  // remote: false,
17296
17508
  // dataFilterMethod: null,
@@ -17300,6 +17512,11 @@ const convertToRows = originColumns => {
17300
17512
  // beforeExportMethod: null,
17301
17513
  // afterExportMethod: null
17302
17514
  }, exportOpts, options);
17515
+ // 已废弃,参数 isAllExpand
17516
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(opts.isAllExpand)) {
17517
+ warnLog('vxe.error.delProp', ['isAllExpand', 'isTreeAllExpanded']);
17518
+ opts.isTreeAllExpanded = opts.isAllExpand;
17519
+ }
17303
17520
  let {
17304
17521
  filename,
17305
17522
  sheetName,
@@ -20437,6 +20654,11 @@ function renderBody(h, $xeTable) {
20437
20654
  const props = $xeTable;
20438
20655
  return Object.assign({}, table_getConfig().table.aggregateConfig || table_getConfig().table.rowGroupConfig, props.aggregateConfig || props.rowGroupConfig);
20439
20656
  },
20657
+ computeAggregateMode() {
20658
+ const $xeTable = this;
20659
+ const aggregateOpts = $xeTable.computeAggregateOpts;
20660
+ return aggregateOpts.mode;
20661
+ },
20440
20662
  computeAggregateAccuracyOpts() {
20441
20663
  const $xeTable = this;
20442
20664
  const props = $xeTable;
@@ -21328,6 +21550,14 @@ function renderBody(h, $xeTable) {
21328
21550
  $xeTable.reloadData(tableFullData);
21329
21551
  });
21330
21552
  }
21553
+ },
21554
+ computeAggregateMode() {
21555
+ const $xeTable = this;
21556
+ const reactData = $xeTable;
21557
+ const internalData = $xeTable;
21558
+ if (reactData.isRowGroupStatus) {
21559
+ this.loadTableData(internalData.tableSynchData, false, true);
21560
+ }
21331
21561
  }
21332
21562
  },
21333
21563
  created() {
@@ -21453,6 +21683,9 @@ function renderBody(h, $xeTable) {
21453
21683
  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)) {
21454
21684
  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(',')]);
21455
21685
  }
21686
+ if (exportConfig && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(exportOpts.isAllExpand)) {
21687
+ warnLog('vxe.error.delProp', ['isAllExpand', 'isTreeAllExpanded']);
21688
+ }
21456
21689
  if (!props.id) {
21457
21690
  if ((props.customConfig ? isEnableConf(customOpts) : customOpts.enabled) && customOpts.storage) {
21458
21691
  errLog('vxe.error.reqProp', ['id']);
@@ -27140,6 +27373,10 @@ const Toolbar = VxeToolbar;
27140
27373
  expMergeTitle: '如果存在,则支持带有合并结构的单元格',
27141
27374
  expOptAllExpand: '展开树',
27142
27375
  expAllExpandTitle: '如果存在,则支持将带有层级结构的数据全部展开',
27376
+ expOptTreeAllExpand: '展开树',
27377
+ expTreeAllExpandTitle: '如果存在,则自动展开所有树层级',
27378
+ expOptRowGroupAllExpand: '展开分组',
27379
+ expRowGroupAllExpandTitle: '如果存在,则自动展开所有分组层级',
27143
27380
  expOptUseStyle: '样式',
27144
27381
  expUseStyleTitle: '如果存在,则支持带样式的单元格',
27145
27382
  expOptOriginal: '源数据',