vxe-table 4.13.35 → 4.13.37

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 (41) hide show
  1. package/es/grid/src/grid.js +34 -10
  2. package/es/style.css +1 -1
  3. package/es/table/module/edit/hook.js +2 -2
  4. package/es/table/module/keyboard/hook.js +4 -1
  5. package/es/table/module/validator/hook.js +11 -3
  6. package/es/table/src/table.js +35 -13
  7. package/es/toolbar/src/toolbar.js +0 -6
  8. package/es/ui/index.js +1 -1
  9. package/es/ui/src/log.js +1 -1
  10. package/lib/grid/src/grid.js +38 -14
  11. package/lib/grid/src/grid.min.js +1 -1
  12. package/lib/index.umd.js +68 -35
  13. package/lib/index.umd.min.js +1 -1
  14. package/lib/style.css +1 -1
  15. package/lib/table/module/edit/hook.js +2 -2
  16. package/lib/table/module/edit/hook.min.js +1 -1
  17. package/lib/table/module/keyboard/hook.js +2 -2
  18. package/lib/table/module/keyboard/hook.min.js +1 -1
  19. package/lib/table/module/validator/hook.js +15 -3
  20. package/lib/table/module/validator/hook.min.js +1 -1
  21. package/lib/table/src/table.js +9 -8
  22. package/lib/table/src/table.min.js +1 -1
  23. package/lib/toolbar/src/toolbar.js +0 -4
  24. package/lib/toolbar/src/toolbar.min.js +1 -1
  25. package/lib/ui/index.js +1 -1
  26. package/lib/ui/index.min.js +1 -1
  27. package/lib/ui/src/log.js +1 -1
  28. package/lib/ui/src/log.min.js +1 -1
  29. package/package.json +1 -1
  30. package/packages/grid/src/grid.ts +38 -11
  31. package/packages/table/module/edit/hook.ts +2 -2
  32. package/packages/table/module/keyboard/hook.ts +4 -1
  33. package/packages/table/module/validator/hook.ts +10 -3
  34. package/packages/table/src/table.ts +36 -13
  35. package/packages/toolbar/src/toolbar.ts +0 -4
  36. /package/es/{iconfont.1749202972772.ttf → iconfont.1749517680224.ttf} +0 -0
  37. /package/es/{iconfont.1749202972772.woff → iconfont.1749517680224.woff} +0 -0
  38. /package/es/{iconfont.1749202972772.woff2 → iconfont.1749517680224.woff2} +0 -0
  39. /package/lib/{iconfont.1749202972772.ttf → iconfont.1749517680224.ttf} +0 -0
  40. /package/lib/{iconfont.1749202972772.woff → iconfont.1749517680224.woff} +0 -0
  41. /package/lib/{iconfont.1749202972772.woff2 → iconfont.1749517680224.woff2} +0 -0
package/lib/index.umd.js CHANGED
@@ -3138,7 +3138,7 @@ function eqEmptyValue(cellValue) {
3138
3138
  ;// ./packages/ui/index.ts
3139
3139
 
3140
3140
 
3141
- const version = "4.13.35";
3141
+ const version = "4.13.37";
3142
3142
  core_.VxeUI.version = version;
3143
3143
  core_.VxeUI.tableVersion = version;
3144
3144
  core_.VxeUI.setConfig({
@@ -3599,7 +3599,7 @@ var esnext_iterator_some = __webpack_require__(7550);
3599
3599
  const {
3600
3600
  log: log_log
3601
3601
  } = core_.VxeUI;
3602
- const log_version = `table v${"4.13.35"}`;
3602
+ const log_version = `table v${"4.13.37"}`;
3603
3603
  const warnLog = log_log.create('warn', log_version);
3604
3604
  const errLog = log_log.create('error', log_version);
3605
3605
  ;// ./packages/table/src/columnInfo.ts
@@ -10935,11 +10935,10 @@ if(oldScrollYLoad===sYLoad){restoreScrollLocation($xeTable,targetScrollLeft,targ
10935
10935
  */const handleInitDefaults=()=>{handleDefaultSort();};const handleTableColumn=()=>{const{scrollXLoad}=reactData;const{visibleColumn,scrollXStore,fullColumnIdData}=internalData;const tableColumn=scrollXLoad?visibleColumn.slice(scrollXStore.startIndex,scrollXStore.endIndex):visibleColumn.slice(0);tableColumn.forEach((column,$index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest.$index=$index;}});reactData.tableColumn=tableColumn;};const handleUpdateColumn=()=>{const columnList=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(internalData.collectColumn,'renderSortNumber');internalData.collectColumn=columnList;const tableFullColumn=getColumnList(columnList);internalData.tableFullColumn=tableFullColumn;cacheColumnMap();};const loadScrollXData=()=>{const{isScrollXBig}=reactData;const{mergeBodyList,mergeFooterList,scrollXStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollXStore;const{toVisibleIndex,visibleSize}=handleVirtualXVisible();const offsetItem={startIndex:Math.max(0,isScrollXBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollXBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+offsetSize+preloadSize};scrollXStore.visibleStartIndex=toVisibleIndex-1;scrollXStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeBodyList.concat(mergeFooterList),offsetItem,'col');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollXStore.startIndex=offsetStartIndex;scrollXStore.endIndex=offsetEndIndex;$xeTable.updateScrollXData();}}$xeTable.closeTooltip();};// 获取所有的列,排除分组
10936
10936
  const getColumnList=columns=>{const result=[];columns.forEach(column=>{result.push(...(column.children&&column.children.length?getColumnList(column.children):[column]));});return result;};const parseColumns=isReset=>{// const { showOverflow } = props
10937
10937
  // const rowOpts = computeRowOpts.value
10938
- const leftList=[];const centerList=[];const rightList=[];const{isGroup,columnStore}=reactData;const virtualXOpts=computeVirtualXOpts.value;const{collectColumn,tableFullColumn,scrollXStore,fullColumnIdData}=internalData;// 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
10938
+ const leftList=[];const centerList=[];const rightList=[];const{isGroup,columnStore}=reactData;const{collectColumn,tableFullColumn,scrollXStore,fullColumnIdData}=internalData;// 如果是分组表头,如果子列全部被隐藏,则根列也隐藏
10939
10939
  if(isGroup){const leftGroupList=[];const centerGroupList=[];const rightGroupList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const isColGroup=hasChildrenList(column);// 如果是分组,必须按组设置固定列,不允许给子列设置固定
10940
10940
  if(parentColumn&&parentColumn.fixed){column.fixed=parentColumn.fixed;}if(parentColumn&&column.fixed!==parentColumn.fixed){errLog('vxe.error.groupFixed');}if(isColGroup){column.visible=!!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(column.children,subColumn=>hasChildrenList(subColumn)?false:subColumn.visible);}else if(column.visible){if(column.fixed==='left'){leftList.push(column);}else if(column.fixed==='right'){rightList.push(column);}else{centerList.push(column);}}});collectColumn.forEach(column=>{if(column.visible){if(column.fixed==='left'){leftGroupList.push(column);}else if(column.fixed==='right'){rightGroupList.push(column);}else{centerGroupList.push(column);}}});reactData.tableGroupColumn=leftGroupList.concat(centerGroupList).concat(rightGroupList);}else{// 重新分配列
10941
- tableFullColumn.forEach(column=>{if(column.visible){if(column.fixed==='left'){leftList.push(column);}else if(column.fixed==='right'){rightList.push(column);}else{centerList.push(column);}}});}const visibleColumn=leftList.concat(centerList).concat(rightList);// 如果gt为0,则总是启用
10942
- const scrollXLoad=!!virtualXOpts.enabled&&virtualXOpts.gt>-1&&(virtualXOpts.gt===0||virtualXOpts.gt<tableFullColumn.length);reactData.hasFixedColumn=leftList.length>0||rightList.length>0;Object.assign(columnStore,{leftList,centerList,rightList});if(scrollXLoad){// if (showOverflow) {
10941
+ tableFullColumn.forEach(column=>{if(column.visible){if(column.fixed==='left'){leftList.push(column);}else if(column.fixed==='right'){rightList.push(column);}else{centerList.push(column);}}});}const visibleColumn=leftList.concat(centerList).concat(rightList);internalData.visibleColumn=visibleColumn;updateColumnOffsetLeft();const sXLoad=updateScrollXStatus();reactData.hasFixedColumn=leftList.length>0||rightList.length>0;Object.assign(columnStore,{leftList,centerList,rightList});if(sXLoad){// if (showOverflow) {
10943
10942
  // if (!rowOpts.height) {
10944
10943
  // const errColumn = internalData.tableFullColumn.find(column => column.showOverflow === false)
10945
10944
  // if (errColumn) {
@@ -10955,7 +10954,8 @@ const scrollXLoad=!!virtualXOpts.enabled&&virtualXOpts.gt>-1&&(virtualXOpts.gt==
10955
10954
  // }
10956
10955
  if(props.spanMethod){warnLog('vxe.error.scrollErrProp',['span-method']);}if(props.footerSpanMethod){warnLog('vxe.error.scrollErrProp',['footer-span-method']);}if(isReset){const{visibleSize}=handleVirtualXVisible();scrollXStore.startIndex=0;scrollXStore.endIndex=visibleSize;scrollXStore.visibleSize=visibleSize;scrollXStore.visibleStartIndex=0;scrollXStore.visibleEndIndex=visibleSize;}}// 如果列被显示/隐藏,则清除合并状态
10957
10956
  // 如果列被设置为固定,则清除合并状态
10958
- if(visibleColumn.length!==internalData.visibleColumn.length||!internalData.visibleColumn.every((column,index)=>column===visibleColumn[index])){$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();}reactData.scrollXLoad=scrollXLoad;visibleColumn.forEach((column,index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest._index=index;}});internalData.visibleColumn=visibleColumn;handleTableColumn();if(isReset){updateColumnOffsetLeft();return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();};const initColumnSort=()=>{const{collectColumn}=internalData;collectColumn.forEach((column,index)=>{const sortIndex=index+1;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;});};const handleColumn=collectColumn=>{const expandOpts=computeExpandOpts.value;internalData.collectColumn=collectColumn;const tableFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tableFullColumn;reactData.isColLoading=true;reactData.isDragColMove=false;initColumnSort();return Promise.resolve(restoreCustomStorage()).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap();parseColumns(true).then(()=>{if(reactData.scrollXLoad){loadScrollXData();}});$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);$xeTable.handleAggregateSummaryData();if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){warnLog('vxe.error.scrollErrProp',['column.type=expand']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}reactData.isColLoading=false;return $xeTable.recalculate();});});};const updateScrollYStatus=fullData=>{const{treeConfig}=props;const virtualYOpts=computeVirtualYOpts.value;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const allList=fullData||internalData.tableFullData;// 如果gt为0,则总是启用
10957
+ 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();if(isReset){updateColumnOffsetLeft();return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();};const initColumnSort=()=>{const{collectColumn}=internalData;collectColumn.forEach((column,index)=>{const sortIndex=index+1;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;});};const handleColumn=collectColumn=>{const expandOpts=computeExpandOpts.value;internalData.collectColumn=collectColumn;const tableFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tableFullColumn;reactData.isColLoading=true;reactData.isDragColMove=false;initColumnSort();return Promise.resolve(restoreCustomStorage()).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap();parseColumns(true).then(()=>{if(reactData.scrollXLoad){loadScrollXData();}});$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);$xeTable.handleAggregateSummaryData();if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){warnLog('vxe.error.scrollErrProp',['column.type=expand']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}reactData.isColLoading=false;return $xeTable.recalculate();});});};const updateScrollXStatus=fullColumn=>{const virtualXOpts=computeVirtualXOpts.value;const allCols=fullColumn||internalData.tableFullColumn;// 如果gt为0,则总是启用
10958
+ const scrollXLoad=!!virtualXOpts.enabled&&virtualXOpts.gt>-1&&(virtualXOpts.gt===0||virtualXOpts.gt<allCols.length);reactData.scrollXLoad=scrollXLoad;return scrollXLoad;};const updateScrollYStatus=fullData=>{const{treeConfig}=props;const virtualYOpts=computeVirtualYOpts.value;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const allList=fullData||internalData.tableFullData;// 如果gt为0,则总是启用
10959
10959
  const scrollYLoad=(transform||!treeConfig)&&!!virtualYOpts.enabled&&virtualYOpts.gt>-1&&(virtualYOpts.gt===0||virtualYOpts.gt<allList.length);reactData.scrollYLoad=scrollYLoad;return scrollYLoad;};/**
10960
10960
  * 展开与收起树节点
10961
10961
  * @param rows
@@ -11007,13 +11007,14 @@ setTimeout(()=>$xeTable.recalculate(),50);});},/**
11007
11007
  * @param {Row} row 行对象
11008
11008
  * @param {Object} record 新数据
11009
11009
  * @param {String} field 字段名
11010
- */reloadRow(row,record,field){const{keepSource}=props;const{tableData}=reactData;const{tableSourceData}=internalData;if(keepSource){const rowIndex=tableMethods.getRowIndex(row);const oRow=tableSourceData[rowIndex];if(oRow&&row){if(field){const newValue=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(record||row,field),true);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,field,newValue);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(oRow,field,newValue);}else{const rowkey=getRowkey($xeTable);const rowid=getRowid($xeTable,row);const newRecord=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(Object.assign({},record),true);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(newRecord,rowkey,rowid);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().destructuring(oRow,Object.assign(row,newRecord));}}reactData.tableData=tableData.slice(0);}else{errLog('vxe.error.reqProp',['keep-source']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getParams(){return props.params;},/**
11010
+ */reloadRow(row,record,field){const{keepSource}=props;const{tableData}=reactData;const{sourceDataRowIdData}=internalData;if(keepSource){if($xeTable.isAggregateRecord(row)){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const oRow=sourceDataRowIdData[getRowid($xeTable,row)];if(oRow&&row){if(field){const newValue=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(record||row,field),true);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row,field,newValue);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(oRow,field,newValue);}else{const rowkey=getRowkey($xeTable);const rowid=getRowid($xeTable,row);const newRecord=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(Object.assign({},record),true);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(newRecord,rowkey,rowid);external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().destructuring(oRow,Object.assign(row,newRecord));}}reactData.tableData=tableData.slice(0);}else{errLog('vxe.error.reqProp',['keep-source']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getParams(){return props.params;},/**
11011
11011
  * 用于树结构,给行数据加载子节点
11012
11012
  */loadTreeChildren(row,childRecords){const{keepSource}=props;const{tableSourceData,fullDataRowIdData,fullAllDataRowIdData,sourceDataRowIdData}=internalData;const treeOpts=computeTreeOpts.value;const{transform,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const parentRest=fullAllDataRowIdData[getRowid($xeTable,row)];const parentLevel=parentRest?parentRest.level:0;return tableMethods.createData(childRecords).then(rows=>{if(keepSource){const rowid=getRowid($xeTable,row);const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(tableSourceData,item=>rowid===getRowid($xeTable,item),{children:childrenField});if(matchObj){matchObj.item[childrenField]=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(rows,true);}rows.forEach(childRow=>{const rowid=getRowid($xeTable,childRow);sourceDataRowIdData[rowid]=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(childRow,true);});}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(rows,(childRow,index,items,path,parentItem,nodes)=>{const rowid=getRowid($xeTable,childRow);const parentRow=parentItem||parentRest.row;const rest={row:childRow,rowid,seq:-1,index,_index:-1,$index:-1,treeIndex:-1,items,parent:parentRow,level:parentLevel+nodes.length,height:0,resizeHeight:0,oTop:0,expandHeight:0};fullDataRowIdData[rowid]=rest;fullAllDataRowIdData[rowid]=rest;},{children:childrenField});row[childrenField]=rows;if(transform){row[mapChildrenField]=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(rows,false);}updateAfterDataIndex();return rows;});},/**
11013
11013
  * 加载列配置
11014
11014
  * 对于表格列需要重载、局部递增场景下可能会用到
11015
11015
  * @param {ColumnInfo} columns 列配置
11016
- */loadColumn(columns){const collectColumn=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().mapTree(columns,column=>(0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(cell.createColumn($xeTable,column)));return handleColumn(collectColumn);},/**
11016
+ */loadColumn(columns){const{lastScrollLeft,lastScrollTop}=internalData;const collectColumn=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().mapTree(columns,column=>(0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(cell.createColumn($xeTable,column)));return handleColumn(collectColumn).then(()=>{let targetScrollLeft=lastScrollLeft;let targetScrollTop=lastScrollTop;const virtualXOpts=computeVirtualXOpts.value;const virtualYOpts=computeVirtualYOpts.value;// 是否在更新数据之后自动滚动重置滚动条
11017
+ if(virtualXOpts.scrollToLeftOnChange){targetScrollLeft=0;}if(virtualYOpts.scrollToTopOnChange){targetScrollTop=0;}restoreScrollLocation($xeTable,targetScrollLeft,targetScrollTop);});},/**
11017
11018
  * 加载列配置并恢复到初始状态
11018
11019
  * 对于表格列需要重载、局部递增场景下可能会用到
11019
11020
  * @param {ColumnInfo} columns 列配置
@@ -11140,7 +11141,7 @@ if(!targetColumn.fixed&&isMaxFixedColumn){if(core_.VxeUI.modal){core_.VxeUI.moda
11140
11141
  */refreshColumn(initSort){if(initSort){handleUpdateColumn();}return parseColumns(true).then(()=>{return tableMethods.refreshScroll();}).then(()=>{return tableMethods.recalculate();});},setRowHeightConf(heightConf){const{fullAllDataRowIdData}=internalData;let status=false;if(heightConf){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(heightConf,(height,rowid)=>{const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const rHeight=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(height);if(rHeight){rowRest.resizeHeight=rHeight;if(!status){status=true;}}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateRowOffsetTop();return{status};});},getRowHeightConf(isFull){const{fullAllDataRowIdData,afterFullData}=internalData;const{handleGetRowId}=createHandleGetRowId($xeTable);const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const rest={};afterFullData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const resizeHeight=rowRest.resizeHeight;if(resizeHeight||isFull){const currCellHeight=resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;rest[rowid]=currCellHeight;}}});return rest;},setRowHeight(rowOrId,height){const{fullAllDataRowIdData}=internalData;let status=false;const rows=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rowOrId)?rowOrId:[rowOrId];let rHeight=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toInteger(height);if(isScale(height)){const tableBody=refTableBody.value;const bodyElem=tableBody?tableBody.$el:null;const bodyHeight=bodyElem?bodyElem.clientHeight-1:0;rHeight=Math.floor(rHeight*bodyHeight);}if(rHeight){const{handleGetRowId}=createHandleGetRowId($xeTable);rows.forEach(row=>{const rowid=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(row)||external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(row)?row:handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.resizeHeight=rHeight;if(!status){status=true;}}});if(status){internalData.isResizeCellHeight=true;reactData.resizeHeightFlag++;}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{return{status};});},getRowHeight(rowOrId){const{fullAllDataRowIdData}=internalData;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const rowid=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(rowOrId)||external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(rowOrId)?rowOrId:getRowid($xeTable,rowOrId);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;}return 0;},/**
11141
11142
  * 刷新滚动操作,手动同步滚动相关位置(对于某些特殊的操作,比如滚动条错位、固定列不同步)
11142
11143
  */refreshScroll(){const{elemStore,lastScrollLeft,lastScrollTop}=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=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;return new Promise(resolve=>{// 还原滚动条位置
11143
- if(lastScrollLeft||lastScrollTop){return restoreScrollLocation($xeTable,lastScrollLeft,lastScrollTop).then().then(()=>{// 存在滚动行为未结束情况
11144
+ if(lastScrollLeft||lastScrollTop){return restoreScrollLocation($xeTable,lastScrollLeft,lastScrollTop).then(()=>{// 存在滚动行为未结束情况
11144
11145
  setTimeout(resolve,10);});}internalData.intoRunScroll=true;// 重置
11145
11146
  setScrollTop(yHandleEl,lastScrollTop);setScrollTop(bodyScrollElem,lastScrollTop);setScrollTop(leftScrollElem,lastScrollTop);setScrollTop(rightScrollElem,lastScrollTop);setScrollLeft(xHandleEl,lastScrollLeft);setScrollLeft(bodyScrollElem,lastScrollLeft);setScrollLeft(headerScrollElem,lastScrollLeft);setScrollLeft(footerScrollElem,lastScrollLeft);// 存在滚动行为未结束情况
11146
11147
  setTimeout(()=>{internalData.intoRunScroll=false;resolve();},10);});},/**
@@ -11516,7 +11517,7 @@ if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=maxYHei
11516
11517
  * 已废弃,被 getCellElement 替换
11517
11518
  * @deprecated
11518
11519
  */getCell(row,column){return tableMethods.getCellElement(row,column);},findRowIndexOf(list,row){return row?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findIndexOf(list,item=>$xeTable.eqRow(item,row)):-1;},eqRow(row1,row2){if(row1&&row2){if(row1===row2){return true;}return getRowid($xeTable,row1)===getRowid($xeTable,row2);}return false;}};// 检测对应模块是否安装
11519
- 'openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',').forEach(name=>{$xeTable[name]=function(){errLog('vxe.error.reqModule',['VxeTableExportModule']);};});'clearValidate,fullValidate,validate'.split(',').forEach(name=>{$xeTable[name]=function(){errLog('vxe.error.reqModule',['VxeTableValidatorModule']);};});Object.assign($xeTable,tableMethods,tablePrivateMethods);/**
11520
+ 'openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',').forEach(name=>{$xeTable[name]=function(){errLog('vxe.error.reqModule',['Export']);};});'clearValidate,fullValidate,validate'.split(',').forEach(name=>{$xeTable[name]=function(){errLog('vxe.error.reqModule',['Validator']);};});Object.assign($xeTable,tableMethods,tablePrivateMethods);/**
11520
11521
  * 渲染浮固定列
11521
11522
  * 分别渲染左边固定列和右边固定列
11522
11523
  * 如果宽度足够情况下,则不需要渲染固定列
@@ -11728,8 +11729,6 @@ const {
11728
11729
  if ($table) {
11729
11730
  if ($table.triggerCustomEvent) {
11730
11731
  $table.triggerCustomEvent($event);
11731
- } else {
11732
- errLog('vxe.error.reqModule', ['VxeTableCustomModule']);
11733
11732
  }
11734
11733
  }
11735
11734
  };
@@ -11742,8 +11741,6 @@ const {
11742
11741
  const $table = connectTable;
11743
11742
  if ($table) {
11744
11743
  $table.customOpenEvent($event);
11745
- } else {
11746
- errLog('vxe.error.reqModule', ['VxeTableCustomModule']);
11747
11744
  }
11748
11745
  };
11749
11746
  const handleMouseleaveSettingEvent = ({
@@ -12481,9 +12478,17 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
12481
12478
  footKeys
12482
12479
  };
12483
12480
  });
12484
- const computePageConfFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
12481
+ const computeCustomCurrentPageFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
12482
+ const pagerOpts = computePagerOpts.value;
12483
+ return pagerOpts.currentPage;
12484
+ });
12485
+ const computeCustomPageSizeFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
12485
12486
  const pagerOpts = computePagerOpts.value;
12486
- return `${pagerOpts.currentPage}${pagerOpts.pageSize}`;
12487
+ return pagerOpts.pageSize;
12488
+ });
12489
+ const computeCustomTotalFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
12490
+ const pagerOpts = computePagerOpts.value;
12491
+ return pagerOpts.total;
12487
12492
  });
12488
12493
  const refMaps = {
12489
12494
  refElem,
@@ -12530,7 +12535,7 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
12530
12535
  const formOpts = computeFormOpts.value;
12531
12536
  return proxyConfig && isEnableConf(proxyOpts) && proxyOpts.form ? formData : formOpts.data;
12532
12537
  };
12533
- const initPages = () => {
12538
+ const initPages = propKey => {
12534
12539
  const {
12535
12540
  tablePage
12536
12541
  } = reactData;
@@ -12538,16 +12543,26 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
12538
12543
  pagerConfig
12539
12544
  } = props;
12540
12545
  const pagerOpts = computePagerOpts.value;
12541
- const {
12542
- currentPage,
12543
- pageSize
12544
- } = pagerOpts;
12545
12546
  if (pagerConfig && isEnableConf(pagerOpts)) {
12546
- if (currentPage) {
12547
- tablePage.currentPage = currentPage;
12548
- }
12549
- if (pageSize) {
12550
- tablePage.pageSize = pageSize;
12547
+ if (propKey) {
12548
+ if (pagerOpts[propKey]) {
12549
+ tablePage[propKey] = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(pagerOpts[propKey]);
12550
+ }
12551
+ } else {
12552
+ const {
12553
+ currentPage,
12554
+ pageSize,
12555
+ total
12556
+ } = pagerOpts;
12557
+ if (currentPage) {
12558
+ tablePage.currentPage = currentPage;
12559
+ }
12560
+ if (pageSize) {
12561
+ tablePage.pageSize = pageSize;
12562
+ }
12563
+ if (total) {
12564
+ tablePage.pageSize = total;
12565
+ }
12551
12566
  }
12552
12567
  }
12553
12568
  };
@@ -13751,8 +13766,14 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
13751
13766
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.toolbarConfig, () => {
13752
13767
  initToolbar();
13753
13768
  });
13754
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(computePageConfFlag, () => {
13755
- initPages();
13769
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(computeCustomCurrentPageFlag, () => {
13770
+ initPages('currentPage');
13771
+ });
13772
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(computeCustomPageSizeFlag, () => {
13773
+ initPages('pageSize');
13774
+ });
13775
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(computeCustomTotalFlag, () => {
13776
+ initPages('total');
13756
13777
  });
13757
13778
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.proxyConfig, () => {
13758
13779
  initProxy();
@@ -15247,7 +15268,7 @@ edit_hook_hooks.add('tableEditModule', {
15247
15268
  params.cell = cell;
15248
15269
  if (cell && isEnableConf(editConfig) && isEnableConf(editRender)) {
15249
15270
  // 激活编辑
15250
- if (!$xeTable.isPendingByRow(row)) {
15271
+ if (!$xeTable.isPendingByRow(row) && !$xeTable.isAggregateRecord(row)) {
15251
15272
  if (actived.row !== row || (mode === 'cell' ? actived.column !== column : false)) {
15252
15273
  // 判断是否禁用编辑
15253
15274
  let type = 'edit-disabled';
@@ -15353,7 +15374,7 @@ edit_hook_hooks.add('tableEditModule', {
15353
15374
  editConfig
15354
15375
  } = props;
15355
15376
  const column = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(fieldOrColumn) ? $xeTable.getColumnByField(fieldOrColumn) : fieldOrColumn;
15356
- if (row && column && isEnableConf(editConfig) && isEnableConf(column.editRender)) {
15377
+ if (row && column && isEnableConf(editConfig) && isEnableConf(column.editRender) && !$xeTable.isAggregateRecord(row)) {
15357
15378
  return Promise.resolve(isPos ? $xeTable.scrollToRow(row, column) : null).then(() => {
15358
15379
  const cell = $xeTable.getCellElement(row, column);
15359
15380
  if (cell) {
@@ -17978,8 +17999,8 @@ keyboard_hook_hooks.add('tableKeyboardModule', {
17978
17999
  let mouseScrollSpaceSize = 1;
17979
18000
  const triggerEvent = (type, evnt) => {
17980
18001
  $xeTable.dispatchEvent(`checkbox-range-${type}`, {
17981
- records: $xeTable.getCheckboxRecords(),
17982
- reserves: $xeTable.getCheckboxReserveRecords()
18002
+ records: () => $xeTable.getCheckboxRecords(),
18003
+ reserves: () => $xeTable.getCheckboxReserveRecords()
17983
18004
  }, evnt);
17984
18005
  };
17985
18006
  const handleChecked = evnt => {
@@ -18545,7 +18566,8 @@ validator_hook_hooks.add('tableValidatorModule', {
18545
18566
  const {
18546
18567
  computeValidOpts,
18547
18568
  computeTreeOpts,
18548
- computeEditOpts
18569
+ computeEditOpts,
18570
+ computeAggregateOpts
18549
18571
  } = $xeTable.getComputeMaps();
18550
18572
  let validatorMethods = {};
18551
18573
  let validatorPrivateMethods = {};
@@ -18597,13 +18619,16 @@ validator_hook_hooks.add('tableValidatorModule', {
18597
18619
  editRules,
18598
18620
  treeConfig
18599
18621
  } = props;
18622
+ const {
18623
+ isRowGroupStatus
18624
+ } = reactData;
18600
18625
  const {
18601
18626
  afterFullData,
18602
18627
  pendingRowMaps,
18603
18628
  removeRowMaps
18604
18629
  } = internalData;
18605
18630
  const treeOpts = computeTreeOpts.value;
18606
- const childrenField = treeOpts.children || treeOpts.childrenField;
18631
+ const aggregateOpts = computeAggregateOpts.value;
18607
18632
  const validOpts = computeValidOpts.value;
18608
18633
  let validList;
18609
18634
  if (rows === true) {
@@ -18639,6 +18664,9 @@ validator_hook_hooks.add('tableValidatorModule', {
18639
18664
  if (pendingRowMaps[rowid]) {
18640
18665
  return;
18641
18666
  }
18667
+ if ($xeTable.isAggregateRecord(row)) {
18668
+ return;
18669
+ }
18642
18670
  if (isFull || !validRuleErr) {
18643
18671
  const colVailds = [];
18644
18672
  columns.forEach(column => {
@@ -18678,7 +18706,12 @@ validator_hook_hooks.add('tableValidatorModule', {
18678
18706
  rowValidErrs.push(Promise.all(colVailds));
18679
18707
  }
18680
18708
  };
18681
- if (treeConfig) {
18709
+ if (isRowGroupStatus) {
18710
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(validList, handleVaild, {
18711
+ children: aggregateOpts.mapChildrenField
18712
+ });
18713
+ } else if (treeConfig) {
18714
+ const childrenField = treeOpts.children || treeOpts.childrenField;
18682
18715
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(validList, handleVaild, {
18683
18716
  children: childrenField
18684
18717
  });