vxe-table 3.21.3 → 3.21.5

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 (122) hide show
  1. package/es/locale/lang/ar-EG.js +2 -2
  2. package/es/locale/lang/de-DE.js +1 -1
  3. package/es/locale/lang/en-US.js +1 -1
  4. package/es/locale/lang/fr-FR.js +2 -2
  5. package/es/locale/lang/hu-HU.js +1 -1
  6. package/es/locale/lang/hy-AM.js +1 -1
  7. package/es/locale/lang/id-ID.js +2 -2
  8. package/es/locale/lang/it-IT.js +1 -1
  9. package/es/locale/lang/ko-KR.js +1 -1
  10. package/es/locale/lang/ms-MY.js +2 -2
  11. package/es/locale/lang/nb-NO.js +2 -2
  12. package/es/locale/lang/pt-BR.js +2 -2
  13. package/es/locale/lang/th-TH.js +1 -1
  14. package/es/locale/lang/ug-CN.js +1 -1
  15. package/es/locale/lang/uk-UA.js +1 -1
  16. package/es/locale/lang/uz-UZ.js +1 -1
  17. package/es/style.css +1 -1
  18. package/es/table/module/export/mixin.js +74 -14
  19. package/es/table/src/cell.js +15 -8
  20. package/es/table/src/columnInfo.js +1 -4
  21. package/es/table/src/methods.js +84 -0
  22. package/es/table/src/util.js +1 -0
  23. package/es/ui/index.js +1 -1
  24. package/es/ui/src/log.js +1 -1
  25. package/lib/index.umd.js +128 -52
  26. package/lib/index.umd.min.js +1 -1
  27. package/lib/locale/lang/ar-EG.js +2 -2
  28. package/lib/locale/lang/ar-EG.min.js +1 -1
  29. package/lib/locale/lang/ar-EG.umd.js +2 -2
  30. package/lib/locale/lang/de-DE.js +1 -1
  31. package/lib/locale/lang/de-DE.min.js +1 -1
  32. package/lib/locale/lang/de-DE.umd.js +1 -1
  33. package/lib/locale/lang/en-US.js +1 -1
  34. package/lib/locale/lang/en-US.min.js +1 -1
  35. package/lib/locale/lang/en-US.umd.js +1 -1
  36. package/lib/locale/lang/fr-FR.js +2 -2
  37. package/lib/locale/lang/fr-FR.min.js +1 -1
  38. package/lib/locale/lang/fr-FR.umd.js +2 -2
  39. package/lib/locale/lang/hu-HU.js +1 -1
  40. package/lib/locale/lang/hu-HU.min.js +1 -1
  41. package/lib/locale/lang/hu-HU.umd.js +1 -1
  42. package/lib/locale/lang/hy-AM.js +1 -1
  43. package/lib/locale/lang/hy-AM.min.js +1 -1
  44. package/lib/locale/lang/hy-AM.umd.js +1 -1
  45. package/lib/locale/lang/id-ID.js +2 -2
  46. package/lib/locale/lang/id-ID.min.js +1 -1
  47. package/lib/locale/lang/id-ID.umd.js +2 -2
  48. package/lib/locale/lang/it-IT.js +1 -1
  49. package/lib/locale/lang/it-IT.min.js +1 -1
  50. package/lib/locale/lang/it-IT.umd.js +1 -1
  51. package/lib/locale/lang/ko-KR.js +1 -1
  52. package/lib/locale/lang/ko-KR.min.js +1 -1
  53. package/lib/locale/lang/ko-KR.umd.js +1 -1
  54. package/lib/locale/lang/ms-MY.js +2 -2
  55. package/lib/locale/lang/ms-MY.min.js +1 -1
  56. package/lib/locale/lang/ms-MY.umd.js +2 -2
  57. package/lib/locale/lang/nb-NO.js +2 -2
  58. package/lib/locale/lang/nb-NO.min.js +1 -1
  59. package/lib/locale/lang/nb-NO.umd.js +2 -2
  60. package/lib/locale/lang/pt-BR.js +2 -2
  61. package/lib/locale/lang/pt-BR.min.js +1 -1
  62. package/lib/locale/lang/pt-BR.umd.js +2 -2
  63. package/lib/locale/lang/th-TH.js +1 -1
  64. package/lib/locale/lang/th-TH.min.js +1 -1
  65. package/lib/locale/lang/th-TH.umd.js +1 -1
  66. package/lib/locale/lang/ug-CN.js +1 -1
  67. package/lib/locale/lang/ug-CN.min.js +1 -1
  68. package/lib/locale/lang/ug-CN.umd.js +1 -1
  69. package/lib/locale/lang/uk-UA.js +1 -1
  70. package/lib/locale/lang/uk-UA.min.js +1 -1
  71. package/lib/locale/lang/uk-UA.umd.js +1 -1
  72. package/lib/locale/lang/uz-UZ.js +1 -1
  73. package/lib/locale/lang/uz-UZ.min.js +1 -1
  74. package/lib/locale/lang/uz-UZ.umd.js +1 -1
  75. package/lib/style.css +1 -1
  76. package/lib/table/module/export/mixin.js +107 -33
  77. package/lib/table/module/export/mixin.min.js +1 -1
  78. package/lib/table/src/cell.js +14 -9
  79. package/lib/table/src/cell.min.js +1 -1
  80. package/lib/table/src/columnInfo.js +1 -5
  81. package/lib/table/src/columnInfo.min.js +1 -1
  82. package/lib/table/src/methods.js +3 -3
  83. package/lib/table/src/methods.min.js +1 -1
  84. package/lib/table/src/util.js +1 -0
  85. package/lib/table/src/util.min.js +1 -1
  86. package/lib/ui/index.js +1 -1
  87. package/lib/ui/index.min.js +1 -1
  88. package/lib/ui/src/log.js +1 -1
  89. package/lib/ui/src/log.min.js +1 -1
  90. package/package.json +2 -2
  91. package/packages/locale/lang/ar-EG.ts +850 -850
  92. package/packages/locale/lang/de-DE.ts +850 -850
  93. package/packages/locale/lang/en-US.ts +850 -850
  94. package/packages/locale/lang/es-ES.ts +850 -850
  95. package/packages/locale/lang/fr-FR.ts +850 -850
  96. package/packages/locale/lang/hu-HU.ts +850 -850
  97. package/packages/locale/lang/hy-AM.ts +850 -850
  98. package/packages/locale/lang/id-ID.ts +850 -850
  99. package/packages/locale/lang/it-IT.ts +850 -850
  100. package/packages/locale/lang/ja-JP.ts +850 -850
  101. package/packages/locale/lang/ko-KR.ts +850 -850
  102. package/packages/locale/lang/ms-MY.ts +850 -850
  103. package/packages/locale/lang/nb-NO.ts +850 -850
  104. package/packages/locale/lang/pt-BR.ts +850 -850
  105. package/packages/locale/lang/ru-RU.ts +850 -850
  106. package/packages/locale/lang/th-TH.ts +850 -850
  107. package/packages/locale/lang/ug-CN.ts +850 -850
  108. package/packages/locale/lang/uk-UA.ts +850 -850
  109. package/packages/locale/lang/uz-UZ.ts +850 -850
  110. package/packages/locale/lang/vi-VN.ts +850 -850
  111. package/packages/locale/lang/zh-CHT.ts +850 -850
  112. package/packages/table/module/export/mixin.ts +73 -15
  113. package/packages/table/src/cell.ts +14 -8
  114. package/packages/table/src/columnInfo.ts +1 -5
  115. package/packages/table/src/methods.ts +85 -0
  116. package/packages/table/src/util.ts +1 -0
  117. /package/es/{iconfont.1779843521280.ttf → iconfont.1780200130470.ttf} +0 -0
  118. /package/es/{iconfont.1779843521280.woff → iconfont.1780200130470.woff} +0 -0
  119. /package/es/{iconfont.1779843521280.woff2 → iconfont.1780200130470.woff2} +0 -0
  120. /package/lib/{iconfont.1779843521280.ttf → iconfont.1780200130470.ttf} +0 -0
  121. /package/lib/{iconfont.1779843521280.woff → iconfont.1780200130470.woff} +0 -0
  122. /package/lib/{iconfont.1779843521280.woff2 → iconfont.1780200130470.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.3";
3314
+ const version = "3.21.5";
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.3"}`;
3845
+ const log_version = `table v${"3.21.5"}`;
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
@@ -3871,8 +3871,7 @@ class ColumnInfo {
3871
3871
  const {
3872
3872
  field,
3873
3873
  editRender,
3874
- filterRender,
3875
- headerFormatter
3874
+ filterRender
3876
3875
  } = _vm;
3877
3876
  const colId = _vm.colId || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId('col_');
3878
3877
  const proxyOpts = $xeGrid ? $xeGrid.computeProxyOpts : null;
@@ -3881,9 +3880,6 @@ class ColumnInfo {
3881
3880
  const flCompConf = isEnableConf(filterRender) ? columnInfo_renderer.get(filterRender.name) : null;
3882
3881
  const ctFilterOptions = flCompConf ? flCompConf.createTableFilterOptions : null;
3883
3882
  const filters = toFilters(_vm.filters, colId);
3884
- if (headerFormatter) {
3885
- errLog('vxe.error.notProp', ['header-formatter']);
3886
- }
3887
3883
  const types = ['seq', 'checkbox', 'radio', 'expand', 'html'];
3888
3884
  if (_vm.type && types.indexOf(_vm.type) === -1) {
3889
3885
  warnLog('vxe.error.errProp', [`type=${_vm.type}`, types.join(', ')]);
@@ -4393,6 +4389,7 @@ function createInternalData() {
4393
4389
  // 数据集(仅可视)
4394
4390
  visibleDataRowIdData: {},
4395
4391
  keepUpdateFieldMaps: {},
4392
+ headerFullDataColData: {},
4396
4393
  footerFullDataRowData: {},
4397
4394
  // 渲染中缓存数据
4398
4395
  sourceDataRowIdData: {},
@@ -5816,7 +5813,7 @@ const Cell = {
5816
5813
  return getSlotVNs(renderTitleContent(h, params, rtHeader.call($table, h, renderOpts, params)));
5817
5814
  }
5818
5815
  }
5819
- return renderTitleContent(h, params, formatText(column.getTitle(), 1));
5816
+ return renderTitleContent(h, params, $table.getHeaderCellLabel(column));
5820
5817
  },
5821
5818
  renderDefaultHeader(h, params) {
5822
5819
  return renderHeaderCellBaseVNs(h, params, Cell.renderHeaderTitle(h, params));
@@ -5842,8 +5839,7 @@ const Cell = {
5842
5839
  editRender,
5843
5840
  cellRender,
5844
5841
  rowGroupNode,
5845
- aggFunc,
5846
- formatter
5842
+ aggFunc
5847
5843
  } = column;
5848
5844
  const isEnableEdit = editConfig && isEnableConf(editConfig);
5849
5845
  const editRenderOpts = isEnableEdit && isEnableConf(editRender) ? editRender : null;
@@ -5941,8 +5937,9 @@ const Cell = {
5941
5937
  return renderCellBaseVNs(h, params, $table.callSlot(defaultSlot, params, h));
5942
5938
  }
5943
5939
  const renderOpts = editRenderOpts || cellRenderOpts;
5944
- // formatter > (renderTableCell | renderTableDefault)
5945
- if (renderOpts && !formatter) {
5940
+ // 如果是编辑表格:renderTableCell > formatter
5941
+ // 如果是查看表格:renderTableDefault > formatter
5942
+ if (renderOpts) {
5946
5943
  const compConf = cell_renderer.get(renderOpts.name);
5947
5944
  if (compConf) {
5948
5945
  const renderFn = editRenderOpts ? compConf.renderTableCell || compConf.renderCell : compConf.renderTableDefault || compConf.renderDefault;
@@ -6123,7 +6120,12 @@ const Cell = {
6123
6120
  const {
6124
6121
  mode
6125
6122
  } = aggregateOpts;
6126
- if (mode === 'column' ? column.field === row.groupField : rowGroupNode) {
6123
+ if (mode === 'column') {
6124
+ if (row.groupField && column.field === row.groupField) {
6125
+ return [Cell.renderRowGroupBtn(h, params, cellVNodes)];
6126
+ }
6127
+ return cellVNodes;
6128
+ } else if (rowGroupNode) {
6127
6129
  return [Cell.renderRowGroupBtn(h, params, cellVNodes)];
6128
6130
  }
6129
6131
  }
@@ -6140,7 +6142,7 @@ const Cell = {
6140
6142
  const {
6141
6143
  slots
6142
6144
  } = column;
6143
- return renderHeaderCellBaseVNs(h, params, renderTitleContent(h, params, slots && slots.header ? $table.callSlot(slots.header, params, h) : formatText(column.getTitle(), 1)));
6145
+ return renderHeaderCellBaseVNs(h, params, renderTitleContent(h, params, slots && slots.header ? $table.callSlot(slots.header, params, h) : $table.getHeaderCellLabel(column)));
6144
6146
  },
6145
6147
  renderSeqCell(h, params) {
6146
6148
  const {
@@ -6182,7 +6184,7 @@ const Cell = {
6182
6184
  const titleSlot = slots ? slots.title : null;
6183
6185
  return renderHeaderCellBaseVNs(h, params, renderTitleContent(h, params, headerSlot ? $table.callSlot(headerSlot, params, h) : [h('span', {
6184
6186
  class: 'vxe-radio--label'
6185
- }, titleSlot ? $table.callSlot(titleSlot, params, h) : formatText(column.getTitle(), 1))]));
6187
+ }, titleSlot ? $table.callSlot(titleSlot, params, h) : $table.getHeaderCellLabel(column))]));
6186
6188
  },
6187
6189
  renderRadioCell(h, params) {
6188
6190
  const {
@@ -6287,7 +6289,7 @@ const Cell = {
6287
6289
  showHeader,
6288
6290
  headerTitle
6289
6291
  } = checkboxOpts;
6290
- const colTitle = column.getTitle();
6292
+ const colTitle = $table.getHeaderCellLabel(column);
6291
6293
  const ons = {};
6292
6294
  if (!isHidden) {
6293
6295
  ons.click = evnt => {
@@ -7838,7 +7840,7 @@ tableFullColumn.forEach(column=>{if(column.visible){if(column.fixed==='left'){le
7838
7840
  // }
7839
7841
  if(props.spanMethod){warnLog('vxe.error.scrollErrProp',['span-method']);}if(props.footerSpanMethod){warnLog('vxe.error.scrollErrProp',['footer-span-method']);}if(isReset){const{visibleSize}=handleVirtualXVisible($xeTable);scrollXStore.startIndex=0;scrollXStore.endIndex=visibleSize;scrollXStore.visibleSize=visibleSize;scrollXStore.visibleStartIndex=0;scrollXStore.visibleEndIndex=visibleSize;}}// 如果列被显示/隐藏,则清除合并状态
7840
7842
  // 如果列被设置为固定,则清除合并状态
7841
- if(visibleColumn.length!==internalData.visibleColumn.length||!internalData.visibleColumn.every((column,index)=>column===visibleColumn[index])){$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();}visibleColumn.forEach((column,index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest._index=index;}});handleTableColumn($xeTable);handleUpdateAggValues($xeTable);if(isReset){return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();}function initColumnHierarchy($xeTable){const internalData=$xeTable;const{collectColumn}=internalData;const fullColIdData={};const fullColFieldData={};let sortIndex=1;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const{id:colid,field}=column;const parentId=parentColumn?parentColumn.id:null;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};column.parentId=parentId;column.defaultParentId=parentId;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;sortIndex++;if(field){if(fullColFieldData[field]){errLog('vxe.error.colRepet',['field',field]);}fullColFieldData[field]=rest;}fullColIdData[colid]=rest;});internalData.fullColumnIdData=fullColIdData;internalData.fullColumnFieldData=fullColFieldData;}function handleInitColumn($xeTable,collectColumn){const props=$xeTable;const $xeToolbar=$xeTable.$refs.$xeToolbar;const reactData=$xeTable;const internalData=$xeTable;const expandOpts=$xeTable.computeExpandOpts;internalData.collectColumn=collectColumn;const tFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tFullColumn;reactData.updateColFlag++;reactData.isColLoading=true;initColumnHierarchy($xeTable);return Promise.resolve(restoreCustomStorage($xeTable)).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap($xeTable);parseColumns($xeTable,true).then(()=>{if(reactData.scrollXLoad){loadScrollXData($xeTable);}});$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);$xeTable.handleAggregateSummaryData();if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){warnLog('vxe.error.scrollErrProp',['column.type=expand']);}return $xeTable.$nextTick().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}const columnOpts=$xeTable.computeColumnOpts;if(props.showCustomHeader&&reactData.isGroup&&(columnOpts.resizable||props.resizable)){warnLog('vxe.error.notConflictProp',['show-custom-header & colgroup','column-config.resizable=false']);}reactData.isColLoading=false;return handleLazyRecalculate($xeTable,false,true,true);});});}/**
7843
+ if(visibleColumn.length!==internalData.visibleColumn.length||!internalData.visibleColumn.every((column,index)=>column===visibleColumn[index])){$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();}visibleColumn.forEach((column,index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest._index=index;}});handleTableColumn($xeTable);handleUpdateAggValues($xeTable);if(isReset){return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();}function initColumnHierarchy($xeTable){const internalData=$xeTable;const{collectColumn}=internalData;const fullColIdData={};const fullColFieldData={};let sortIndex=1;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const{id:colid,field}=column;const parentId=parentColumn?parentColumn.id:null;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};column.parentId=parentId;column.defaultParentId=parentId;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;sortIndex++;if(field){if(fullColFieldData[field]){errLog('vxe.error.colRepet',['field',field]);}fullColFieldData[field]=rest;}fullColIdData[colid]=rest;});internalData.fullColumnIdData=fullColIdData;internalData.fullColumnFieldData=fullColFieldData;}function handleInitColumn($xeTable,collectColumn){const props=$xeTable;const $xeToolbar=$xeTable.$refs.$xeToolbar;const reactData=$xeTable;const internalData=$xeTable;const expandOpts=$xeTable.computeExpandOpts;internalData.collectColumn=collectColumn;const tFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tFullColumn;reactData.updateColFlag++;reactData.isColLoading=true;initColumnHierarchy($xeTable);return Promise.resolve(restoreCustomStorage($xeTable)).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap($xeTable);parseColumns($xeTable,true).then(()=>{if(reactData.scrollXLoad){loadScrollXData($xeTable);}});$xeTable.clearHeaderFormatterCache();$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);$xeTable.handleAggregateSummaryData();if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){warnLog('vxe.error.scrollErrProp',['column.type=expand']);}return $xeTable.$nextTick().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}const columnOpts=$xeTable.computeColumnOpts;if(props.showCustomHeader&&reactData.isGroup&&(columnOpts.resizable||props.resizable)){warnLog('vxe.error.notConflictProp',['show-custom-header & colgroup','column-config.resizable=false']);}reactData.isColLoading=false;return handleLazyRecalculate($xeTable,false,true,true);});});}/**
7842
7844
  * 纵向 Y 可视渲染处理
7843
7845
  */function loadScrollYData($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{isAllOverflow,isScrollYBig}=reactData;const{mergeBodyList,mergeBodyRowMaps,scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible($xeTable);const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeBodyList,mergeBodyRowMaps,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}}const createGetRowCacheProp=prop=>{return function(row){const $xeTable=this;const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;if(row){const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest[prop];}}return-1;};};const createGetColumnCacheProp=prop=>{return function(column){const $xeTable=this;const internalData=$xeTable;const{fullColumnIdData}=internalData;if(column){const colRest=fullColumnIdData[column.id];if(colRest){return colRest[prop];}}return-1;};};function lazyScrollXData($xeTable){const internalData=$xeTable;const{lxTimeout,lxRunTime,scrollXStore}=internalData;const{visibleSize}=scrollXStore;const fpsTime=visibleSize>26?26:visibleSize>16?14:6;if(lxTimeout){clearTimeout(lxTimeout);}if(!lxRunTime||lxRunTime+fpsTime<Date.now()){internalData.lxRunTime=Date.now();loadScrollXData($xeTable);}internalData.lxTimeout=setTimeout(()=>{internalData.lxTimeout=undefined;internalData.lxRunTime=undefined;loadScrollXData($xeTable);},fpsTime);}function lazyScrollYData($xeTable){const internalData=$xeTable;const{lyTimeout,lyRunTime,scrollYStore}=internalData;const{visibleSize}=scrollYStore;const fpsTime=visibleSize>30?32:visibleSize>20?18:8;if(lyTimeout){clearTimeout(lyTimeout);}if(!lyRunTime||lyRunTime+fpsTime<Date.now()){internalData.lyRunTime=Date.now();loadScrollYData($xeTable);}internalData.lyTimeout=setTimeout(()=>{internalData.lyTimeout=undefined;internalData.lyRunTime=undefined;loadScrollYData($xeTable);},fpsTime);}function handleSyncScroll($xeTable,isRollX,isRollY){const reactData=$xeTable;const internalData=$xeTable;const{scrollXLoad,scrollYLoad,isAllOverflow}=reactData;internalData.lcsRunTime=Date.now();internalData.lcsTimeout=undefined;internalData.intoRunScroll=false;internalData.inVirtualScroll=false;internalData.inWheelScroll=false;internalData.inHeaderScroll=false;internalData.inBodyScroll=false;internalData.inFooterScroll=false;reactData.lazScrollLoading=false;internalData.scrollRenderType='';let xRest=null;let yRest=null;if(!isAllOverflow){calcCellHeight($xeTable);updateRowOffsetTop($xeTable);}if(isRollX&&scrollXLoad){xRest=$xeTable.updateScrollXData();}if(isRollY&&scrollYLoad){yRest=$xeTable.updateScrollYData().then(()=>{if(!isAllOverflow){calcCellHeight($xeTable);updateRowOffsetTop($xeTable);}return $xeTable.updateScrollYSpace();});}updateRowExpandStyle($xeTable);return Promise.all([xRest,yRest,scrollXLoad||scrollYLoad?$xeTable.updateCellAreas():null]);}function checkLastSyncScroll($xeTable,isRollX,isRollY){const reactData=$xeTable;const internalData=$xeTable;const{lcsTimeout}=internalData;reactData.lazScrollLoading=true;if(lcsTimeout){clearTimeout(lcsTimeout);}internalData.lcsTimeout=setTimeout(()=>{handleSyncScroll($xeTable,isRollX,isRollY).then(()=>{if(reactData.scrollXLoad||reactData.scrollYLoad){$xeTable.$nextTick(()=>{updateRowExpandStyle($xeTable);if(!internalData.lcsTimeout){handleSyncScroll($xeTable,isRollX,isRollY);}});}});},240);}const getWheelSpeed=lastScrollTime=>{let multiple=1;const currTime=Date.now();if(lastScrollTime+25>currTime){multiple=1.18;}else if(lastScrollTime+30>currTime){multiple=1.15;}else if(lastScrollTime+40>currTime){multiple=1.12;}else if(lastScrollTime+55>currTime){multiple=1.09;}else if(lastScrollTime+75>currTime){multiple=1.06;}else if(lastScrollTime+100>currTime){multiple=1.03;}return multiple;};const syncGanttScrollTop=($xeTable,scrollTop)=>{const internalData=$xeTable;const $xeGanttView=internalData.xeGanttView;if($xeGanttView){const ganttInternalData=$xeGanttView.internalData;const{elemStore:ganttElemStore}=ganttInternalData;const ganttBodyScrollElem=getRefElem(ganttElemStore['main-body-scroll']);if(ganttBodyScrollElem){ganttBodyScrollElem.scrollTop=scrollTop;}}};function updateHeight($xeTable){const reactData=$xeTable;const internalData=$xeTable;internalData.customHeight=calcTableHeight($xeTable,'height');internalData.customMinHeight=calcTableHeight($xeTable,'minHeight');internalData.customMaxHeight=calcTableHeight($xeTable,'maxHeight');// 如果启用虚拟滚动,纠正高度
7844
7846
  if(reactData.scrollYLoad&&!(internalData.customHeight||internalData.customMinHeight||internalData.customMaxHeight)){internalData.customHeight=300;}}/**
@@ -7973,7 +7975,7 @@ if(eqEmptyValue(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_x
7973
7975
  * @param {Array/Row} rows 行数据
7974
7976
  * @param {String} field 字段名
7975
7977
  */clearData(rows,field){const $xeTable=this;const internalData=$xeTable;const{tableFullData,visibleColumn}=internalData;if(!arguments.length){rows=tableFullData;}else if(rows&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}if(field){rows.forEach(row=>external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,field,null));}else{rows.forEach(row=>{visibleColumn.forEach(column=>{if(column.field){setCellValue(row,column,null);}});});}return $xeTable.$nextTick();},getCellElement(row,fieldOrColumn){const $xeTable=this;const internalData=$xeTable;const{elemStore}=internalData;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const rowid=getRowid($xeTable,row);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const leftScrollElem=getRefElem(elemStore['left-body-scroll']);const rightScrollElem=getRefElem(elemStore['right-body-scroll']);let bodyElem;if(column){if(column.fixed){if(column.fixed==='left'){if(leftScrollElem){bodyElem=leftScrollElem;}}else{if(rightScrollElem){bodyElem=rightScrollElem;}}}if(!bodyElem){bodyElem=bodyScrollElem;}if(bodyElem){return bodyElem.querySelector(`.vxe-body--row[rowid="${rowid}"] .${column.id}`);}}return null;},getCellLabel(row,fieldOrColumn){const $xeTable=this;const props=$xeTable;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const{editConfig}=props;const{formatter,editRender,cellRender}=column;// formatter > tableCellFormatter
7976
- const renderOpts=formatter?null:editConfig&&isEnableConf(editRender)?editRender:isEnableConf(cellRender)?cellRender:null;const compConf=renderOpts?methods_renderer.get(renderOpts.name):null;const tcFormatter=compConf?compConf.tableCellFormatter:null;const cellValue=getCellValue(row,column);let cellLabel=cellValue;if(formatter||tcFormatter){let formatData;const{fullAllDataRowIdData}=internalData;const rowid=getRowid($xeTable,row);const colid=column.id;const rowRest=fullAllDataRowIdData[rowid];if(rowRest){formatData=rowRest.formatData;if(!formatData){formatData=fullAllDataRowIdData[rowid].formatData={};}if(rowRest&&formatData[colid]){if(formatData[colid].value===cellValue){return formatData[colid].label;}}}const formatParams={$table:$xeTable,cellValue,row,rowIndex:$xeTable.getRowIndex(row),column,columnIndex:$xeTable.getColumnIndex(column)};if(formatter){if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(formatter)){const gFormatOpts=methods_formats.get(formatter);const tcFormatMethod=gFormatOpts?gFormatOpts.tableCellFormatMethod||gFormatOpts.cellFormatMethod:null;cellLabel=tcFormatMethod?tcFormatMethod(formatParams):'';}else if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(formatter)){const gFormatOpts=methods_formats.get(formatter[0]);const tcFormatMethod=gFormatOpts?gFormatOpts.tableCellFormatMethod||gFormatOpts.cellFormatMethod:null;cellLabel=tcFormatMethod?tcFormatMethod(formatParams,...formatter.slice(1)):'';}else{cellLabel=formatter(formatParams);}}else if(renderOpts&&tcFormatter){cellLabel=tcFormatter(renderOpts,formatParams);}if(formatData){formatData[colid]={value:cellValue,label:cellLabel};}}return cellLabel;},updateCellLabel(row,fieldOrColumn){const $xeTable=this;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const{fullAllDataRowIdData}=internalData;const rowid=getRowid($xeTable,row);if(rowid){const colid=column.id;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const formatData=rowRest.formatData;if(formatData){delete formatData[colid];}}}return $xeTable.getFooterCellLabel(row,column);},clearFormatterCache(isUpdate){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{tableData,tableColumn}=reactData;const{fullAllDataRowIdData}=internalData;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(fullAllDataRowIdData,rowRest=>{if(rowRest.formatData){rowRest.formatData=undefined;}});if(isUpdate){tableData.forEach(row=>{tableColumn.forEach(column=>{$xeTable.getCellLabel(row,column);});});}return $xeTable.$nextTick();},getFooterCellLabel(row,fieldOrColumn){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const{footerFormatter}=column;const _columnIndex=$xeTable.getVTColumnIndex(column);let itemValue='';// 兼容老模式
7978
+ const renderOpts=formatter?null:editConfig&&isEnableConf(editRender)?editRender:isEnableConf(cellRender)?cellRender:null;const compConf=renderOpts?methods_renderer.get(renderOpts.name):null;const tcFormatter=compConf?compConf.tableCellFormatter:null;const cellValue=getCellValue(row,column);let cellLabel=cellValue;if(formatter||tcFormatter){let formatData;const{fullAllDataRowIdData}=internalData;const rowid=getRowid($xeTable,row);const colid=column.id;const rowRest=fullAllDataRowIdData[rowid];if(rowRest){formatData=rowRest.formatData;if(!formatData){formatData=fullAllDataRowIdData[rowid].formatData={};}if(rowRest&&formatData[colid]){if(formatData[colid].value===cellValue){return formatData[colid].label;}}}const formatParams={$table:$xeTable,cellValue,row,rowIndex:$xeTable.getRowIndex(row),column,columnIndex:$xeTable.getColumnIndex(column)};if(formatter){if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(formatter)){const gFormatOpts=methods_formats.get(formatter);const tcFormatMethod=gFormatOpts?gFormatOpts.tableCellFormatMethod||gFormatOpts.cellFormatMethod:null;cellLabel=tcFormatMethod?tcFormatMethod(formatParams):'';}else if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(formatter)){const gFormatOpts=methods_formats.get(formatter[0]);const tcFormatMethod=gFormatOpts?gFormatOpts.tableCellFormatMethod||gFormatOpts.cellFormatMethod:null;cellLabel=tcFormatMethod?tcFormatMethod(formatParams,...formatter.slice(1)):'';}else{cellLabel=formatter(formatParams);}}else if(renderOpts&&tcFormatter){cellLabel=tcFormatter(renderOpts,formatParams);}if(formatData){formatData[colid]={value:cellValue,label:cellLabel};}}return cellLabel;},updateCellLabel(row,fieldOrColumn){const $xeTable=this;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const{fullAllDataRowIdData}=internalData;const rowid=getRowid($xeTable,row);if(rowid){const colid=column.id;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const formatData=rowRest.formatData;if(formatData){delete formatData[colid];}}}return $xeTable.getFooterCellLabel(row,column);},clearFormatterCache(isUpdate){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{tableData,tableColumn}=reactData;const{fullAllDataRowIdData}=internalData;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(fullAllDataRowIdData,rowRest=>{if(rowRest.formatData){rowRest.formatData=undefined;}});if(isUpdate){tableData.forEach(row=>{tableColumn.forEach(column=>{$xeTable.getCellLabel(row,column);});});}return $xeTable.$nextTick();},getHeaderCellLabel(fieldOrColumn){const $xeTable=this;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const{headerFormatter}=column;const _columnIndex=$xeTable.getVTColumnIndex(column);let cellLabel=column.getTitle();if(headerFormatter){let formatData;const{headerFullDataColData}=internalData;const colid=column.id;let colRest=headerFullDataColData[colid];if(!colRest){colRest=headerFullDataColData[colid]={};}const formatObj=colRest.formatObj;if(formatObj&&formatObj.value===cellLabel){return formatObj.label;}const headFormatParams={$table:$xeTable,cellTitle:cellLabel,cellValue:cellLabel,column,_columnIndex,columnIndex:$xeTable.getColumnIndex(column)};if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(headerFormatter)){const gFormatOpts=methods_formats.get(headerFormatter);const fcFormatMethod=gFormatOpts?gFormatOpts.tableHeaderCellFormatMethod:null;cellLabel=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toValueString(fcFormatMethod?fcFormatMethod(headFormatParams):'');}else if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(headerFormatter)){const gFormatOpts=methods_formats.get(headerFormatter[0]);const fcFormatMethod=gFormatOpts?gFormatOpts.tableHeaderCellFormatMethod:null;cellLabel=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toValueString(fcFormatMethod?fcFormatMethod(headFormatParams,...headerFormatter.slice(1)):'');}else{cellLabel=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toValueString(headerFormatter(headFormatParams));}if(formatData){colRest.formatObj={value:cellLabel,label:cellLabel};}}return cellLabel;},updateHeaderCellLabel(fieldOrColumn){const $xeTable=this;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return'';}const{headerFullDataColData}=internalData;const colid=column.id;const colRest=headerFullDataColData[colid];if(colRest){colRest.formatObj=undefined;}return $xeTable.getHeaderCellLabel(column);},clearHeaderFormatterCache(isUpdate){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{tableColumn}=reactData;const{headerFullDataColData}=internalData;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(headerFullDataColData,colRest=>{if(colRest.formatObj){colRest.formatObj=undefined;}});if(isUpdate){tableColumn.forEach(column=>{$xeTable.getHeaderCellLabel(column);});}return $xeTable.$nextTick();},getFooterCellLabel(row,fieldOrColumn){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const{footerFormatter}=column;const _columnIndex=$xeTable.getVTColumnIndex(column);let itemValue='';// 兼容老模式
7977
7979
  if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(row)){itemValue=row[_columnIndex];}else{itemValue=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row,column.field);}let cellLabel=itemValue;if(footerFormatter){let formatData;const{footerTableData}=reactData;const{footerFullDataRowData}=internalData;const colid=column.id;const $rowIndex=footerTableData.indexOf(row);let rowRest=null;if($rowIndex>-1){rowRest=footerFullDataRowData[$rowIndex];if(!rowRest){rowRest=footerFullDataRowData[$rowIndex]={};}formatData=rowRest.formatData;if(!formatData){formatData=footerFullDataRowData[$rowIndex].formatData={};}if(rowRest&&formatData[colid]){if(formatData[colid].value===itemValue){return formatData[colid].label;}}}const footerFormatParams={$table:$xeTable,cellValue:itemValue,itemValue,row,items:row,$rowIndex,column,_columnIndex,columnIndex:$xeTable.getColumnIndex(column)};if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(footerFormatter)){const gFormatOpts=methods_formats.get(footerFormatter);const fcFormatMethod=gFormatOpts?gFormatOpts.tableFooterCellFormatMethod:null;cellLabel=fcFormatMethod?fcFormatMethod(footerFormatParams):'';}else if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(footerFormatter)){const gFormatOpts=methods_formats.get(footerFormatter[0]);const fcFormatMethod=gFormatOpts?gFormatOpts.tableFooterCellFormatMethod:null;cellLabel=fcFormatMethod?fcFormatMethod(footerFormatParams,...footerFormatter.slice(1)):'';}else{cellLabel=footerFormatter(footerFormatParams);}if(formatData){formatData[colid]={value:itemValue,label:cellLabel};}}return cellLabel;},updateFooterCellLabel(row,fieldOrColumn){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(!column){return null;}const{footerTableData}=reactData;const{footerFullDataRowData}=internalData;const colid=column.id;const $rowIndex=footerTableData.indexOf(row);const rowRest=footerFullDataRowData[$rowIndex];if(rowRest){const formatData=rowRest.formatData;if(formatData){delete formatData[colid];}}return $xeTable.getFooterCellLabel(row,column);},clearFooterFormatterCache(isUpdate){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{tableData,tableColumn}=reactData;const{footerFullDataRowData}=internalData;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(footerFullDataRowData,rowRest=>{if(rowRest.formatData){rowRest.formatData=undefined;}});if(isUpdate){tableData.forEach(row=>{tableColumn.forEach(column=>{$xeTable.getFooterCellLabel(row,column);});});}return $xeTable.$nextTick();},/**
7978
7980
  * 检查是否为临时行数据
7979
7981
  */isInsertByRow(row){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const rowid=getRowid($xeTable,row);return!!reactData.insertRowFlag&&!!internalData.insertRowMaps[rowid];},isRemoveByRow(row){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const rowid=getRowid($xeTable,row);return!!reactData.removeRowFlag&&!!internalData.removeRowMaps[rowid];},/**
@@ -8427,7 +8429,7 @@ internalData._sToTime=setTimeout(()=>{internalData._sToTime=undefined;if(scrollY
8427
8429
  * 手动清除滚动相关信息,还原到初始状态
8428
8430
  */clearScroll(){const $xeTable=this;const internalData=$xeTable;const{elemStore,scrollXStore,scrollYStore}=internalData;const headerScrollElem=getRefElem(elemStore['main-header-scroll']);const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);const footerScrollElem=getRefElem(elemStore['main-footer-scroll']);const leftScrollElem=getRefElem(elemStore['left-body-scroll']);const rightScrollElem=getRefElem(elemStore['right-body-scroll']);const xHandleEl=$xeTable.$refs.refScrollXHandleElem;const yHandleEl=$xeTable.$refs.refScrollYHandleElem;internalData.intoRunScroll=true;setScrollLeft(xHandleEl,0);setScrollLeft(bodyScrollElem,0);setScrollLeft(headerScrollElem,0);setScrollLeft(footerScrollElem,0);setScrollTop(yHandleEl,0);setScrollTop(bodyScrollElem,0);setScrollTop(leftScrollElem,0);setScrollTop(rightScrollElem,0);scrollXStore.startIndex=0;scrollXStore.visibleStartIndex=0;scrollXStore.endIndex=scrollXStore.visibleSize;scrollXStore.visibleEndIndex=scrollXStore.visibleSize;scrollYStore.startIndex=0;scrollYStore.visibleStartIndex=0;scrollYStore.endIndex=scrollYStore.visibleSize;scrollYStore.visibleEndIndex=scrollYStore.visibleSize;return $xeTable.$nextTick().then(()=>{internalData.lastScrollLeft=0;internalData.lastScrollTop=0;internalData.intoRunScroll=false;});},/**
8429
8431
  * 更新表尾合计
8430
- */updateFooter(){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const $xeGrid=$xeTable.$xeGrid;const $xeGantt=$xeTable.$xeGantt;const{showFooter,footerData,footerMethod}=props;const{visibleColumn,afterFullData}=internalData;let footData=[];if(showFooter&&footerData&&footerData.length){footData=footerData.slice(0);}else if(showFooter&&footerMethod){footData=visibleColumn.length?footerMethod({columns:visibleColumn,data:afterFullData,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}):[];}reactData.footerTableData=footData;$xeTable.handleUpdateFooterMerge();$xeTable.dispatchEvent('footer-data-change',{visibleColumn:internalData.visibleColumn,footData},null);return $xeTable.$nextTick();},/**
8432
+ */updateFooter(){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const $xeGrid=$xeTable.$xeGrid;const $xeGantt=$xeTable.$xeGantt;const{showFooter,footerData,footerMethod}=props;const{visibleColumn,afterFullData}=internalData;let footData=[];if(showFooter&&footerData&&footerData.length){footData=footerData.slice(0);}else if(showFooter&&footerMethod){footData=visibleColumn.length?footerMethod({columns:visibleColumn,data:afterFullData,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}):[];}reactData.footerTableData=footData;$xeTable.clearFooterFormatterCache();$xeTable.handleUpdateFooterMerge();$xeTable.dispatchEvent('footer-data-change',{visibleColumn:internalData.visibleColumn,footData},null);return $xeTable.$nextTick();},/**
8431
8433
  * 更新列状态 updateStatus({ row, column }, cellValue)
8432
8434
  * 如果组件值 v-model 发生 change 时,调用改函数用于更新某一列编辑状态
8433
8435
  * 如果单元格配置了校验规则,则会进行校验
@@ -16016,10 +16018,11 @@ const toStringValue = cellValue => {
16016
16018
  function getBodyLabelData($xeTable, opts, columns, datas) {
16017
16019
  const props = $xeTable;
16018
16020
  const reactData = $xeTable;
16021
+ const internalData = $xeTable;
16019
16022
  const {
16020
16023
  isTreeAllExpanded,
16021
16024
  isRowGroupAllExpanded,
16022
- mode
16025
+ mode: expMode
16023
16026
  } = opts;
16024
16027
  const {
16025
16028
  treeConfig
@@ -16027,6 +16030,9 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16027
16030
  const {
16028
16031
  isRowGroupStatus
16029
16032
  } = reactData;
16033
+ const {
16034
+ fullColumnFieldData
16035
+ } = internalData;
16030
16036
  const radioOpts = $xeTable.computeRadioOpts;
16031
16037
  const checkboxOpts = $xeTable.computeCheckboxOpts;
16032
16038
  const treeOpts = $xeTable.computeTreeOpts;
@@ -16039,9 +16045,14 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16039
16045
  handleGetRowId
16040
16046
  } = createHandleGetRowId($xeTable);
16041
16047
  if (isRowGroupStatus) {
16042
- // 如果是数据分组
16043
16048
  // 如果是数据分组
16044
16049
  const {
16050
+ mode: aggMode,
16051
+ showTotal,
16052
+ totalMethod,
16053
+ countFields,
16054
+ contentMethod,
16055
+ formatValuesMethod,
16045
16056
  mapChildrenField
16046
16057
  } = aggregateOpts;
16047
16058
  const rest = [];
@@ -16064,8 +16075,15 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16064
16075
  _expand: hasRowChild && $xeTable.isRowExpandByRow(row)
16065
16076
  };
16066
16077
  columns.forEach((column, $columnIndex) => {
16078
+ const {
16079
+ field,
16080
+ editRender,
16081
+ cellRender,
16082
+ aggFunc,
16083
+ rowGroupNode
16084
+ } = column;
16067
16085
  let cellValue = '';
16068
- const renderOpts = column.editRender || column.cellRender;
16086
+ const renderOpts = editRender || cellRender;
16069
16087
  let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
16070
16088
  if (!bodyExportMethod && renderOpts && renderOpts.name) {
16071
16089
  const compConf = export_mixin_renderer.get(renderOpts.name);
@@ -16088,39 +16106,97 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16088
16106
  case 'seq':
16089
16107
  {
16090
16108
  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);
16109
+ cellValue = expMode === 'all' ? seqVal : getSeq($xeTable, seqVal, row, $rowIndex, column, $columnIndex);
16092
16110
  break;
16093
16111
  }
16094
16112
  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;
16113
+ {
16114
+ cellValue = toBooleanValue($xeTable.isCheckedByCheckboxRow(row));
16115
+ item._checkboxLabel = checkboxOpts.labelField ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, checkboxOpts.labelField) : '';
16116
+ item._checkboxDisabled = checkboxOpts.checkMethod && !checkboxOpts.checkMethod({
16117
+ $table: $xeTable,
16118
+ row
16119
+ });
16120
+ break;
16121
+ }
16102
16122
  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;
16123
+ {
16124
+ cellValue = toBooleanValue($xeTable.isCheckedByRadioRow(row));
16125
+ item._radioLabel = radioOpts.labelField ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, radioOpts.labelField) : '';
16126
+ item._radioDisabled = radioOpts.checkMethod && !radioOpts.checkMethod({
16127
+ $table: $xeTable,
16128
+ row
16129
+ });
16130
+ break;
16131
+ }
16110
16132
  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();
16133
+ {
16134
+ if (field && row.isAggregate) {
16135
+ const aggRow = row;
16136
+ const aggData = aggRow.aggData;
16137
+ const currAggData = aggData ? aggData[field] : null;
16138
+ const groupField = aggRow.groupField;
16139
+ const groupContent = aggRow.groupContent;
16140
+ const childList = mapChildrenField ? aggRow[mapChildrenField] || [] : [];
16141
+ const childCount = aggRow.childCount;
16142
+ const colRest = fullColumnFieldData[groupField] || {};
16143
+ const ctParams = {
16144
+ $table: $xeTable,
16145
+ groupField,
16146
+ groupColumn: colRest ? colRest.column : null,
16147
+ column,
16148
+ groupValue: groupContent,
16149
+ childList,
16150
+ childCount,
16151
+ aggValue: null,
16152
+ /**
16153
+ * 已废弃
16154
+ * @deprecated
16155
+ */
16156
+ children: childList,
16157
+ /**
16158
+ * 已废弃
16159
+ * @deprecated
16160
+ */
16161
+ totalValue: childCount
16162
+ };
16163
+ if (aggMode === 'column' ? field === aggRow.groupField : rowGroupNode) {
16164
+ cellValue = groupContent;
16165
+ if (contentMethod) {
16166
+ cellValue = `${contentMethod(ctParams)}`;
16167
+ }
16168
+ if (showTotal) {
16169
+ cellValue = export_mixin_getI18n('vxe.table.rowGroupContentTotal', [cellValue, totalMethod ? totalMethod(ctParams) : childCount, childCount]);
16170
+ }
16171
+ } else if ($xeTable.getPivotTableAggregateCellAggValue) {
16172
+ const aggParams = {
16173
+ $table: $xeTable,
16174
+ row,
16175
+ column
16176
+ };
16177
+ cellValue = $xeTable.getPivotTableAggregateCellAggValue(aggParams);
16178
+ } else if (aggFunc === true || countFields && countFields.includes(field)) {
16179
+ cellValue = currAggData ? currAggData.value : childCount;
16180
+ ctParams.aggValue = cellValue;
16181
+ if (formatValuesMethod) {
16182
+ cellValue = formatValuesMethod(ctParams);
16183
+ }
16184
+ }
16185
+ } else if (opts.original) {
16186
+ cellValue = getCellValue(row, column);
16118
16187
  } else {
16119
- const cell = $xeTable.getCellElement(row, column);
16120
- if (cell && !hasClass(cell, 'is--progress')) {
16121
- cellValue = cell.innerText.trim();
16188
+ cellValue = $xeTable.getCellLabel(row, column);
16189
+ if (column.type === 'html') {
16190
+ htmlCellElem.innerHTML = cellValue;
16191
+ cellValue = htmlCellElem.innerText.trim();
16192
+ } else {
16193
+ const cell = $xeTable.getCellElement(row, column);
16194
+ if (cell && !hasClass(cell, 'is--progress')) {
16195
+ cellValue = cell.innerText.trim();
16196
+ }
16122
16197
  }
16123
16198
  }
16199
+ break;
16124
16200
  }
16125
16201
  }
16126
16202
  }
@@ -16184,7 +16260,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16184
16260
  case 'seq':
16185
16261
  {
16186
16262
  const seqVal = path.map((num, i) => i % 2 === 0 ? Number(num) + 1 : '.').join('');
16187
- cellValue = mode === 'all' ? seqVal : getSeq($xeTable, seqVal, row, $rowIndex, column, $columnIndex);
16263
+ cellValue = expMode === 'all' ? seqVal : getSeq($xeTable, seqVal, row, $rowIndex, column, $columnIndex);
16188
16264
  break;
16189
16265
  }
16190
16266
  case 'checkbox':
@@ -16259,7 +16335,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
16259
16335
  case 'seq':
16260
16336
  {
16261
16337
  const seqValue = $rowIndex + 1;
16262
- cellValue = mode === 'all' ? seqValue : getSeq($xeTable, seqValue, row, $rowIndex, column, $columnIndex);
16338
+ cellValue = expMode === 'all' ? seqValue : getSeq($xeTable, seqValue, row, $rowIndex, column, $columnIndex);
16263
16339
  break;
16264
16340
  }
16265
16341
  case 'checkbox':
@@ -16329,7 +16405,7 @@ function getHeaderTitle($xeTable, opts, column) {
16329
16405
  column,
16330
16406
  options: opts,
16331
16407
  $table: $xeTable
16332
- }) : (opts.isTitle ? column.getTitle() : column.field) || '';
16408
+ }) : (opts.isTitle ? $xeTable.getHeaderCellLabel(column) : column.field) || '';
16333
16409
  }
16334
16410
  function getFooterCellValue($xeTable, opts, row, column) {
16335
16411
  const columnOpts = $xeTable.computeColumnOpts;
@@ -16936,12 +17012,12 @@ function handleImport($xeTable, content, opts) {
16936
17012
  const tableTitleMaps = {};
16937
17013
  tableFullColumn.forEach(column => {
16938
17014
  const field = column.field;
16939
- const title = column.getTitle();
17015
+ const title = $xeTable.getHeaderCellLabel(column);
16940
17016
  if (field) {
16941
17017
  tableFieldMaps[field] = column;
16942
17018
  }
16943
17019
  if (title) {
16944
- tableTitleMaps[column.getTitle()] = column;
17020
+ tableTitleMaps[title] = column;
16945
17021
  }
16946
17022
  });
16947
17023
  const tableConf = {