vxe-table 4.17.28 → 4.17.29

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.
@@ -4,4 +4,4 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.tableEmits = void 0;
7
- const tableEmits = exports.tableEmits = ['update:data', 'keydown-start', 'keydown', 'keydown-end', 'paste', 'copy', 'cut', 'columns-change', 'data-change', 'footer-data-change', 'current-change', 'current-row-change', 'current-row-disabled', 'current-column-change', 'current-column-disabled', 'radio-change', 'checkbox-change', 'checkbox-all', 'checkbox-range-start', 'checkbox-range-change', 'checkbox-range-end', 'checkbox-range-select', 'cell-click', 'cell-dblclick', 'cell-menu', 'cell-mouseenter', 'cell-mouseleave', 'cell-selected', 'cell-delete-value', 'cell-backspace-value', 'header-cell-click', 'header-cell-dblclick', 'header-cell-menu', 'footer-cell-click', 'footer-cell-dblclick', 'footer-cell-menu', 'clear-merge', 'sort-change', 'clear-sort', 'clear-all-sort', 'filter-change', 'filter-visible', 'clear-filter', 'clear-all-filter', 'resizable-change', 'column-resizable-change', 'row-resizable-change', 'toggle-row-group-expand', 'toggle-row-expand', 'toggle-tree-expand', 'menu-click', 'edit-closed', 'row-dragstart', 'row-dragover', 'row-dragend', 'row-remove-dragend', 'row-insert-dragend', 'column-dragstart', 'column-dragover', 'column-dragend', 'enter-append-row', 'edit-actived', 'edit-activated', 'edit-disabled', 'valid-error', 'scroll', 'scroll-boundary', 'custom', 'custom-visible-change', 'custom-visible-all', 'custom-fixed-change', 'custom-sort-change', 'change-fnr', 'open-fnr', 'show-fnr', 'hide-fnr', 'fnr-change', 'fnr-find', 'fnr-find-all', 'fnr-replace', 'fnr-replace-all', 'cell-area-copy', 'cell-area-cut', 'cell-area-paste', 'cell-area-merge', 'clear-cell-area-selection', 'clear-cell-area-merge', 'header-cell-area-selection', 'cell-area-selection-invalid', 'cell-area-selection-start', 'cell-area-selection-drag', 'cell-area-selection-end', 'cell-area-extension-start', 'cell-area-extension-drag', 'cell-area-extension-end', 'cell-area-extension-fill', 'cell-area-selection-all-start', 'cell-area-selection-all-end', 'cell-area-arrows-start', 'cell-area-arrows-end', 'active-cell-change-start', 'active-cell-change-end'];
7
+ const tableEmits = exports.tableEmits = ['ready', 'init-rendered', 'data-rendered', 'update:data', 'keydown-start', 'keydown', 'keydown-end', 'paste', 'copy', 'cut', 'columns-change', 'data-change', 'footer-data-change', 'current-change', 'current-row-change', 'current-row-disabled', 'current-column-change', 'current-column-disabled', 'radio-change', 'checkbox-change', 'checkbox-all', 'checkbox-range-start', 'checkbox-range-change', 'checkbox-range-end', 'checkbox-range-select', 'cell-click', 'cell-dblclick', 'cell-menu', 'cell-mouseenter', 'cell-mouseleave', 'cell-selected', 'cell-delete-value', 'cell-backspace-value', 'header-cell-click', 'header-cell-dblclick', 'header-cell-menu', 'footer-cell-click', 'footer-cell-dblclick', 'footer-cell-menu', 'clear-merge', 'sort-change', 'clear-sort', 'clear-all-sort', 'filter-change', 'filter-visible', 'clear-filter', 'clear-all-filter', 'resizable-change', 'column-resizable-change', 'row-resizable-change', 'toggle-row-group-expand', 'toggle-row-expand', 'toggle-tree-expand', 'menu-click', 'edit-closed', 'row-dragstart', 'row-dragover', 'row-dragend', 'row-remove-dragend', 'row-insert-dragend', 'column-dragstart', 'column-dragover', 'column-dragend', 'enter-append-row', 'edit-actived', 'edit-activated', 'edit-disabled', 'valid-error', 'scroll', 'scroll-boundary', 'custom', 'custom-visible-change', 'custom-visible-all', 'custom-fixed-change', 'custom-sort-change', 'change-fnr', 'open-fnr', 'show-fnr', 'hide-fnr', 'fnr-change', 'fnr-find', 'fnr-find-all', 'fnr-replace', 'fnr-replace-all', 'cell-area-copy', 'cell-area-cut', 'cell-area-paste', 'cell-area-merge', 'clear-cell-area-selection', 'clear-cell-area-merge', 'header-cell-area-selection', 'cell-area-selection-invalid', 'cell-area-selection-start', 'cell-area-selection-drag', 'cell-area-selection-end', 'cell-area-extension-start', 'cell-area-extension-drag', 'cell-area-extension-end', 'cell-area-extension-fill', 'cell-area-selection-all-start', 'cell-area-selection-all-end', 'cell-area-arrows-start', 'cell-area-arrows-end', 'active-cell-change-start', 'active-cell-change-end'];
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.tableEmits=void 0;let tableEmits=exports.tableEmits=["update:data","keydown-start","keydown","keydown-end","paste","copy","cut","columns-change","data-change","footer-data-change","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","row-remove-dragend","row-insert-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","custom-sort-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-extension-fill","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end"];
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.tableEmits=void 0;let tableEmits=exports.tableEmits=["ready","init-rendered","data-rendered","update:data","keydown-start","keydown","keydown-end","paste","copy","cut","columns-change","data-change","footer-data-change","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","row-remove-dragend","row-insert-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","custom-sort-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-extension-fill","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end"];
@@ -193,10 +193,10 @@ if(reWidth){calcCellWidth();}if(reFull){autoCellWidth();}if(reHeight){calcCellHe
193
193
  * 已废弃
194
194
  * @deprecated
195
195
  */totalValue:childCount};let aggVal=0;// 如果下层同时也是分组
196
- if(childList.length&&childList[0].isAggregate){_xeUtils.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;});}}}};const updateGroupData=()=>{const{aggregateConfig,rowGroupConfig}=props;const{isRowGroupStatus}=reactData;const{tableFullGroupData}=internalData;const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;if((aggregateConfig||rowGroupConfig)&&isRowGroupStatus){const aggList=[];_xeUtils.default.eachTree(tableFullGroupData,row=>{if(row.isAggregate){aggList.push(row);}},{children:mapChildrenField});handleeGroupSummary(aggList);}};const handleGroupData=(list,rowGroups)=>{let fullData=list;let treeData=list;if(rowGroups){const aggregateOpts=computeAggregateOpts.value;const{rowField,parentField,childrenField,mapChildrenField}=aggregateOpts;const checkboxOpts=computeCheckboxOpts.value;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=(0,_util.getRowkey)($xeTable);list.forEach(row=>{const cellValue=groupColumn?$xeTable.getCellLabel(row,groupColumn):_xeUtils.default.get(row,groupField);const groupValue=_xeUtils.default.eqNull(cellValue)?'':cellValue;let childList=groupMaps[groupValue];if(!childList){childList=[];groupMaps[groupValue]=childList;}if(row.isAggregate){row.isAggregate=undefined;}childList.push(row);});_xeUtils.default.objectEach(groupMaps,(childList,groupValue)=>{const{fullData:childFullData,treeData:childTreeData}=handleGroupData(childList,rowGroups.slice(1));const aggRow={isAggregate:true,aggData:{},groupContent:groupValue,groupField,childCount:0,[rowField]:(0,_util.getRowUniqueId)(),[parentField]:null,[rowkey]:(0,_util.getRowUniqueId)(),[childrenField]:childTreeData,[mapChildrenField]:childTreeData};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(aggList);}}return{treeData,fullData};};const initData=()=>{const{data}=props;loadTableData(data||[],true).then(()=>{if(data&&data.length){internalData.inited=true;internalData.initStatus=true;handleLoadDefaults();}handleInitDefaults();updateStyle();if(!reactData.isAllOverflow){calcCellHeight();updateRowOffsetTop();}});};/**
196
+ if(childList.length&&childList[0].isAggregate){_xeUtils.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;});}}}};const updateGroupData=()=>{const{aggregateConfig,rowGroupConfig}=props;const{isRowGroupStatus}=reactData;const{tableFullGroupData}=internalData;const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;if((aggregateConfig||rowGroupConfig)&&isRowGroupStatus){const aggList=[];_xeUtils.default.eachTree(tableFullGroupData,row=>{if(row.isAggregate){aggList.push(row);}},{children:mapChildrenField});handleeGroupSummary(aggList);}};const handleGroupData=(list,rowGroups)=>{let fullData=list;let treeData=list;if(rowGroups){const aggregateOpts=computeAggregateOpts.value;const{rowField,parentField,childrenField,mapChildrenField}=aggregateOpts;const checkboxOpts=computeCheckboxOpts.value;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=(0,_util.getRowkey)($xeTable);list.forEach(row=>{const cellValue=groupColumn?$xeTable.getCellLabel(row,groupColumn):_xeUtils.default.get(row,groupField);const groupValue=_xeUtils.default.eqNull(cellValue)?'':cellValue;let childList=groupMaps[groupValue];if(!childList){childList=[];groupMaps[groupValue]=childList;}if(row.isAggregate){row.isAggregate=undefined;}childList.push(row);});_xeUtils.default.objectEach(groupMaps,(childList,groupValue)=>{const{fullData:childFullData,treeData:childTreeData}=handleGroupData(childList,rowGroups.slice(1));const aggRow={isAggregate:true,aggData:{},groupContent:groupValue,groupField,childCount:0,[rowField]:(0,_util.getRowUniqueId)(),[parentField]:null,[rowkey]:(0,_util.getRowUniqueId)(),[childrenField]:childTreeData,[mapChildrenField]:childTreeData};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(aggList);}}return{treeData,fullData};};const initData=()=>{const{data}=props;dispatchEvent('ready',{},null);loadTableData(data||[],true,true).then(()=>{if(data&&data.length){internalData.inited=true;internalData.initStatus=true;handleLoadDefaults();}handleInitDefaults();updateStyle();if(!reactData.isAllOverflow){calcCellHeight();updateRowOffsetTop();}});};/**
197
197
  * 加载表格数据
198
198
  * @param {Array} datas 数据
199
- */const loadTableData=(datas,isReset)=>{const{keepSource,treeConfig,rowGroupConfig,aggregateConfig}=props;const{rowGroupList,scrollYLoad:oldScrollYLoad}=reactData;const{scrollYStore,scrollXStore,lastScrollLeft,lastScrollTop}=internalData;const rowOpts=computeRowOpts.value;const treeOpts=computeTreeOpts.value;const expandOpts=computeExpandOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;let treeData=[];let fullData=(0,_vue.reactive)(datas?datas.slice(0):[]);// 转为响应式数据
199
+ */const loadTableData=(datas,isReload,isReset)=>{const{keepSource,treeConfig,rowGroupConfig,aggregateConfig}=props;const{rowGroupList,scrollYLoad:oldScrollYLoad}=reactData;const{initStatus,scrollYStore,scrollXStore,lastScrollLeft,lastScrollTop}=internalData;const rowOpts=computeRowOpts.value;const treeOpts=computeTreeOpts.value;const expandOpts=computeExpandOpts.value;const{transform}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;let treeData=[];let fullData=(0,_vue.reactive)(datas?datas.slice(0):[]);// 转为响应式数据
200
200
  if(fullData.length>supportMaxRow){(0,_log.errLog)('vxe.error.errMaxRow',[supportMaxRow]);}if(treeConfig&&rowGroupList.length){(0,_log.errLog)('vxe.error.noTree',['aggregate-config']);return(0,_vue.nextTick)();}if(rowOpts.drag&&rowGroupList.length){(0,_log.errLog)('vxe.error.errConflicts',['row-config.drag','aggregate-config']);return(0,_vue.nextTick)();}let isRGroup=false;if(treeConfig){if(transform){// 树结构自动转换
201
201
  if(!treeOpts.rowField){(0,_log.errLog)('vxe.error.reqProp',['tree-config.rowField']);}if(!treeOpts.parentField){(0,_log.errLog)('vxe.error.reqProp',['tree-config.parentField']);}if(!childrenField){(0,_log.errLog)('vxe.error.reqProp',['tree-config.childrenField']);}if(!treeOpts.mapChildrenField){(0,_log.errLog)('vxe.error.reqProp',['tree-config.mapChildrenField']);}if(childrenField===treeOpts.mapChildrenField){(0,_log.errLog)('vxe.error.errConflicts',['tree-config.childrenField','tree-config.mapChildrenField']);}// fullData.forEach(row => {
202
202
  // if (row[treeOpts.children] && row[treeOpts.children].length) {
@@ -222,13 +222,13 @@ if(!(props.height||props.maxHeight)){(0,_log.errLog)('vxe.error.reqProp',['heigh
222
222
  // if (props.spanMethod) {
223
223
  // warnLog('vxe.error.scrollErrProp', ['span-method'])
224
224
  // }
225
- }handleReserveStatus();$xeTable.checkSelectionStatus();$xeTable.dispatchEvent('data-change',{visibleColumn:internalData.visibleColumn,visibleData:internalData.afterFullData},null);return new Promise(resolve=>{(0,_vue.nextTick)().then(()=>handleRecalculateStyle(false,false,false)).then(()=>{handleRecalculateStyle(false,true,true);updateRowOffsetTop();}).then(()=>{let targetScrollLeft=lastScrollLeft;let targetScrollTop=lastScrollTop;const virtualXOpts=computeVirtualXOpts.value;const virtualYOpts=computeVirtualYOpts.value;// 是否在更新数据之后自动滚动重置滚动条
225
+ }handleReserveStatus();$xeTable.checkSelectionStatus();if(initStatus){dispatchEvent('data-rendered',{isReload,visibleColumn:internalData.visibleColumn,visibleData:internalData.afterFullData},null);}else{dispatchEvent('init-rendered',{visibleColumn:internalData.visibleColumn,visibleData:internalData.afterFullData},null);}$xeTable.dispatchEvent('data-change',{visibleColumn:internalData.visibleColumn,visibleData:internalData.afterFullData},null);return new Promise(resolve=>{(0,_vue.nextTick)().then(()=>handleRecalculateStyle(false,false,false)).then(()=>{handleRecalculateStyle(false,true,true);updateRowOffsetTop();}).then(()=>{let targetScrollLeft=lastScrollLeft;let targetScrollTop=lastScrollTop;const virtualXOpts=computeVirtualXOpts.value;const virtualYOpts=computeVirtualYOpts.value;// 是否在更新数据之后自动滚动重置滚动条
226
226
  if(virtualXOpts.scrollToLeftOnChange){targetScrollLeft=0;}if(virtualYOpts.scrollToTopOnChange){targetScrollTop=0;}reactData.isRowLoading=false;handleRecalculateStyle(false,false,false);updateTreeLineStyle();// 如果是自动行高,特殊情况需调用 recalculate 手动刷新
227
227
  if(!props.showOverflow){setTimeout(()=>{handleLazyRecalculate(false,true,true);setTimeout(()=>handleLazyRecalculate(false,true,true),3000);},2000);}// 是否变更虚拟滚动
228
228
  if(oldScrollYLoad===sYLoad){(0,_util.restoreScrollLocation)($xeTable,targetScrollLeft,targetScrollTop).then(()=>{handleRecalculateStyle(false,true,true);updateRowOffsetTop();updateTreeLineStyle();(0,_vue.nextTick)(()=>resolve());});}else{setTimeout(()=>{(0,_util.restoreScrollLocation)($xeTable,targetScrollLeft,targetScrollTop).then(()=>{handleRecalculateStyle(false,true,true);updateRowOffsetTop();updateTreeLineStyle();(0,_vue.nextTick)(()=>resolve());});});}});});});};/**
229
229
  * 处理数据加载默认行为
230
230
  * 默认执行一次,除非被重置
231
- */const handleLoadDefaults=()=>{handleDefaultSelectionChecked();handleDefaultRadioChecked();handleDefaultRowExpand();handleDefaultTreeExpand();handleDefaultRowGroupExpand();handleDefaultMergeCells();handleDefaultMergeHeaderItems();handleDefaultMergeFooterItems();(0,_vue.nextTick)(()=>setTimeout(()=>$xeTable.recalculate()));};/**
231
+ */const handleLoadDefaults=()=>{handleDefaultSelectionChecked();handleDefaultRadioChecked();handleDefaultRowExpand();handleDefaultTreeExpand();handleDefaultRowGroupExpand();handleDefaultMergeCells();handleDefaultMergeHeaderItems();handleDefaultMergeFooterItems();(0,_vue.nextTick)(()=>{setTimeout(()=>$xeTable.recalculate());});};/**
232
232
  * 处理初始化的默认行为
233
233
  * 只会执行一次
234
234
  */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=_xeUtils.default.orderBy(internalData.collectColumn,'renderSortNumber');internalData.collectColumn=columnList;const tableFullColumn=(0,_util.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();};const parseColumns=isReset=>{// const { showOverflow } = props
@@ -300,10 +300,10 @@ if(expandColumn&&rowExpandedMaps[rowid]){offsetTop+=rowRest.expandHeight||expand
300
300
  setTimeout(()=>handleLazyRecalculate(false,true,true),50);});},/**
301
301
  * 重新加载数据,不会清空表格状态
302
302
  * @param {Array} datas 数据
303
- */loadData(datas){const{initStatus}=internalData;return loadTableData(datas,false).then(()=>{internalData.inited=true;internalData.initStatus=true;if(!initStatus){handleLoadDefaults();}return handleLazyRecalculate(false,true,true);});},/**
303
+ */loadData(datas){const{initStatus}=internalData;return loadTableData(datas,false,false).then(()=>{internalData.inited=true;internalData.initStatus=true;if(!initStatus){handleLoadDefaults();}return handleLazyRecalculate(false,true,true);});},/**
304
304
  * 重新加载数据,会清空表格状态
305
305
  * @param {Array} datas 数据
306
- */reloadData(datas){return $xeTable.clearAll().then(()=>{internalData.inited=true;internalData.initStatus=true;return loadTableData(datas,true);}).then(()=>{handleLoadDefaults();return handleLazyRecalculate(false,true,true);});},/**
306
+ */reloadData(datas){return $xeTable.clearAll().then(()=>{internalData.inited=true;internalData.initStatus=true;return loadTableData(datas,true,true);}).then(()=>{handleLoadDefaults();return handleLazyRecalculate(false,true,true);});},/**
307
307
  * 修改行数据
308
308
  */setRow(rows,record){if(rows&&record){let rest=rows;if(!_xeUtils.default.isArray(rows)){rest=[rows];}const rowkey=(0,_util.getRowkey)($xeTable);rest.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);const newRecord=_xeUtils.default.clone(Object.assign({},record),true);_xeUtils.default.set(newRecord,rowkey,rowid);Object.assign(row,newRecord);});}return(0,_vue.nextTick)();},/**
309
309
  * 局部加载行数据并恢复到初始状态
@@ -541,7 +541,7 @@ rowExpandedMaps={};internalData.rowExpandedMaps=rowExpandedMaps;rows=rows.slice(
541
541
  */isRowExpandByRow(row){const{rowExpandedFlag}=reactData;const{rowExpandedMaps}=internalData;const rowid=(0,_util.getRowid)($xeTable,row);return!!rowExpandedFlag&&!!rowExpandedMaps[rowid];},isExpandByRow(row){// 已废弃
542
542
  (0,_log.warnLog)('vxe.error.delFunc',['isExpandByRow','isRowExpandByRow']);return tableMethods.isRowExpandByRow(row);},/**
543
543
  * 手动清空展开行状态,数据会恢复成未展开的状态
544
- */clearRowExpand(){const{tableFullData,scrollYStore}=internalData;const expandOpts=computeExpandOpts.value;const{reserve}=expandOpts;const expList=$xeTable.getRowExpandRecords();internalData.rowExpandedMaps={};if(reserve){tableFullData.forEach(row=>handleRowExpandReserve(row,false));}reactData.rowExpandedFlag++;scrollYStore.startIndex=0;scrollYStore.endIndex=1;return(0,_vue.nextTick)().then(()=>{if(expList.length){return handleLazyRecalculate(true,true,true);}}).then(()=>{updateRowOffsetTop();updateRowExpandStyle();handleRowExpandScroll();return $xeTable.updateCellAreas();});},clearRowExpandReserve(){internalData.rowExpandedReserveRowMap={};return(0,_vue.nextTick)();},getRowExpandRecords(){const rest=[];_xeUtils.default.each(internalData.rowExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},setRowGroups(fieldOrColumns){const{aggregateConfig,rowGroupConfig}=props;const aggregateOpts=computeAggregateOpts.value;const{maxGroupSize}=aggregateOpts;if(!(aggregateConfig||rowGroupConfig)){(0,_log.errLog)('vxe.error.reqProp',['aggregate-config']);return(0,_vue.nextTick)();}const confList=fieldOrColumns?_xeUtils.default.isArray(fieldOrColumns)?fieldOrColumns:[fieldOrColumns]:[];if(maxGroupSize&&confList.length>maxGroupSize){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.table.maxGroupCol',[maxGroupSize])});}return(0,_vue.nextTick)();}if(confList.length){handleUpdateRowGroup(confList.map(fieldOrColumn=>{return _xeUtils.default.isString(fieldOrColumn)?fieldOrColumn:fieldOrColumn.field;}));return loadTableData(internalData.tableSynchData,true);}return(0,_vue.nextTick)();},getRowGroups(){const{aggregateConfig,rowGroupConfig}=props;const{fullColumnFieldData}=internalData;if(aggregateConfig||rowGroupConfig){const{rowGroupList}=reactData;return rowGroupList.map(({field})=>{const colRet=fullColumnFieldData[field];if(colRet){return colRet.column;}return{field};});}return[];},getRowGroupFields(){return $xeTable.getRowGroups().map(item=>item.field);},clearRowGroups(){const{aggregateConfig,rowGroupConfig}=props;if(!(aggregateConfig||rowGroupConfig)){(0,_log.errLog)('vxe.error.reqProp',['aggregate-config']);return(0,_vue.nextTick)();}handleUpdateRowGroup([]);return loadTableData(internalData.tableSynchData,true);},isRowGroupRecord(row){(0,_log.warnLog)('vxe.error.delFunc',['isRowGroupRecord','isAggregateRecord']);return $xeTable.isAggregateRecord(row);},isRowGroupExpandByRow(row){(0,_log.warnLog)('vxe.error.delFunc',['isRowGroupExpandByRow','isAggregateExpandByRow']);return $xeTable.isAggregateExpandByRow(row);},isAggregateRecord(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row.isAggregate;},getAggregateContentByRow(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate?row.groupContent:'';},getAggregateRowChildren(row){const aggregateOpts=computeAggregateOpts.value;const{childrenField,mapChildrenField}=aggregateOpts;const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate&&childrenField&&mapChildrenField?row[mapChildrenField]||[]:[];},refreshAggregateCalcValues(){updateGroupData();return(0,_vue.nextTick)();},isAggregateExpandByRow(row){const{rowGroupExpandedFlag}=reactData;const{rowGroupExpandedMaps}=internalData;return!!rowGroupExpandedFlag&&!!rowGroupExpandedMaps[(0,_util.getRowid)($xeTable,row)];},setRowGroupExpand(rows,expanded){if(rows){if(!_xeUtils.default.isArray(rows)){rows=[rows];}return handleRowGroupVirtualExpand(rows,expanded);}return(0,_vue.nextTick)();},setRowGroupExpandByField(groupFields,expanded){const{isRowGroupStatus}=reactData;const aggregateOpts=computeAggregateOpts.value;const{childrenField}=aggregateOpts;if(groupFields){if(!_xeUtils.default.isArray(groupFields)){groupFields=[groupFields];}if(isRowGroupStatus){const rows=[];const gfKeys={};groupFields.forEach(groupField=>{gfKeys[groupField]=true;});_xeUtils.default.eachTree(internalData.afterGroupFullData,row=>{if(row.isAggregate&&gfKeys[row.groupField]){rows.push(row);}},{children:childrenField});if(rows.length){return handleRowGroupVirtualExpand(rows,expanded);}}}return(0,_vue.nextTick)();},setAllRowGroupExpand(expanded){const{tableFullGroupData}=internalData;const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;const rgExpandedMaps={};if(expanded&&mapChildrenField){_xeUtils.default.eachTree(tableFullGroupData,row=>{if(row[mapChildrenField]&&row[mapChildrenField].length){rgExpandedMaps[(0,_util.getRowid)($xeTable,row)]=row;}},{children:mapChildrenField});}internalData.rowGroupExpandedMaps=rgExpandedMaps;handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},clearRowGroupExpand(){internalData.rowGroupExpandedMaps={};handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},getTreeExpandRecords(){const rest=[];_xeUtils.default.each(internalData.treeExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},/**
544
+ */clearRowExpand(){const{tableFullData,scrollYStore}=internalData;const expandOpts=computeExpandOpts.value;const{reserve}=expandOpts;const expList=$xeTable.getRowExpandRecords();internalData.rowExpandedMaps={};if(reserve){tableFullData.forEach(row=>handleRowExpandReserve(row,false));}reactData.rowExpandedFlag++;scrollYStore.startIndex=0;scrollYStore.endIndex=1;return(0,_vue.nextTick)().then(()=>{if(expList.length){return handleLazyRecalculate(true,true,true);}}).then(()=>{updateRowOffsetTop();updateRowExpandStyle();handleRowExpandScroll();return $xeTable.updateCellAreas();});},clearRowExpandReserve(){internalData.rowExpandedReserveRowMap={};return(0,_vue.nextTick)();},getRowExpandRecords(){const rest=[];_xeUtils.default.each(internalData.rowExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},setRowGroups(fieldOrColumns){const{aggregateConfig,rowGroupConfig}=props;const aggregateOpts=computeAggregateOpts.value;const{maxGroupSize}=aggregateOpts;if(!(aggregateConfig||rowGroupConfig)){(0,_log.errLog)('vxe.error.reqProp',['aggregate-config']);return(0,_vue.nextTick)();}const confList=fieldOrColumns?_xeUtils.default.isArray(fieldOrColumns)?fieldOrColumns:[fieldOrColumns]:[];if(maxGroupSize&&confList.length>maxGroupSize){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.table.maxGroupCol',[maxGroupSize])});}return(0,_vue.nextTick)();}if(confList.length){handleUpdateRowGroup(confList.map(fieldOrColumn=>{return _xeUtils.default.isString(fieldOrColumn)?fieldOrColumn:fieldOrColumn.field;}));return loadTableData(internalData.tableSynchData,false,true);}return(0,_vue.nextTick)();},getRowGroups(){const{aggregateConfig,rowGroupConfig}=props;const{fullColumnFieldData}=internalData;if(aggregateConfig||rowGroupConfig){const{rowGroupList}=reactData;return rowGroupList.map(({field})=>{const colRet=fullColumnFieldData[field];if(colRet){return colRet.column;}return{field};});}return[];},getRowGroupFields(){return $xeTable.getRowGroups().map(item=>item.field);},clearRowGroups(){const{aggregateConfig,rowGroupConfig}=props;if(!(aggregateConfig||rowGroupConfig)){(0,_log.errLog)('vxe.error.reqProp',['aggregate-config']);return(0,_vue.nextTick)();}handleUpdateRowGroup([]);return loadTableData(internalData.tableSynchData,false,true);},isRowGroupRecord(row){(0,_log.warnLog)('vxe.error.delFunc',['isRowGroupRecord','isAggregateRecord']);return $xeTable.isAggregateRecord(row);},isRowGroupExpandByRow(row){(0,_log.warnLog)('vxe.error.delFunc',['isRowGroupExpandByRow','isAggregateExpandByRow']);return $xeTable.isAggregateExpandByRow(row);},isAggregateRecord(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row.isAggregate;},getAggregateContentByRow(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate?row.groupContent:'';},getAggregateRowChildren(row){const aggregateOpts=computeAggregateOpts.value;const{childrenField,mapChildrenField}=aggregateOpts;const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate&&childrenField&&mapChildrenField?row[mapChildrenField]||[]:[];},refreshAggregateCalcValues(){updateGroupData();return(0,_vue.nextTick)();},isAggregateExpandByRow(row){const{rowGroupExpandedFlag}=reactData;const{rowGroupExpandedMaps}=internalData;return!!rowGroupExpandedFlag&&!!rowGroupExpandedMaps[(0,_util.getRowid)($xeTable,row)];},setRowGroupExpand(rows,expanded){if(rows){if(!_xeUtils.default.isArray(rows)){rows=[rows];}return handleRowGroupVirtualExpand(rows,expanded);}return(0,_vue.nextTick)();},setRowGroupExpandByField(groupFields,expanded){const{isRowGroupStatus}=reactData;const aggregateOpts=computeAggregateOpts.value;const{childrenField}=aggregateOpts;if(groupFields){if(!_xeUtils.default.isArray(groupFields)){groupFields=[groupFields];}if(isRowGroupStatus){const rows=[];const gfKeys={};groupFields.forEach(groupField=>{gfKeys[groupField]=true;});_xeUtils.default.eachTree(internalData.afterGroupFullData,row=>{if(row.isAggregate&&gfKeys[row.groupField]){rows.push(row);}},{children:childrenField});if(rows.length){return handleRowGroupVirtualExpand(rows,expanded);}}}return(0,_vue.nextTick)();},setAllRowGroupExpand(expanded){const{tableFullGroupData}=internalData;const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;const rgExpandedMaps={};if(expanded&&mapChildrenField){_xeUtils.default.eachTree(tableFullGroupData,row=>{if(row[mapChildrenField]&&row[mapChildrenField].length){rgExpandedMaps[(0,_util.getRowid)($xeTable,row)]=row;}},{children:mapChildrenField});}internalData.rowGroupExpandedMaps=rgExpandedMaps;handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},clearRowGroupExpand(){internalData.rowGroupExpandedMaps={};handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},getTreeExpandRecords(){const rest=[];_xeUtils.default.each(internalData.treeExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},/**
545
545
  * 判断树节点是否懒加载完成
546
546
  * @param {Row} row 行对象
547
547
  */isTreeExpandLoaded(row){const{fullAllDataRowIdData}=internalData;const rowRest=fullAllDataRowIdData[(0,_util.getRowid)($xeTable,row)];return rowRest&&!!rowRest.treeLoaded;},clearTreeExpandLoaded(rows){const{fullAllDataRowIdData,treeExpandedMaps}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;if(rows){if(!_xeUtils.default.isArray(rows)){rows=[rows];}rows.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.treeLoaded=false;if(treeExpandedMaps[rowid]){delete treeExpandedMaps[rowid];}}});}else{_xeUtils.default.each(fullAllDataRowIdData,rowRest=>{rowRest.treeLoaded=false;});}internalData.treeExpandedMaps={};if(transform){handleVirtualTreeToList();$xeTable.handleTableData();}reactData.treeExpandedFlag++;return(0,_vue.nextTick)();},/**
@@ -678,7 +678,7 @@ const{parent:parentRow}=_xeUtils.default.findTree(internalData.afterTreeFullData
678
678
  // }
679
679
  // 如果是按下非功能键之外允许直接编辑
680
680
  if(selected.column&&selected.row&&(0,_utils.isEnableConf)(selected.column.editRender)){const beforeEditMethod=editOpts.beforeEditMethod||editOpts.activeMethod;const params={row:selected.row,rowIndex:$xeTable.getRowIndex(selected.row),column:selected.column,columnIndex:$xeTable.getColumnIndex(selected.column),$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt};if(!beforeEditMethod||beforeEditMethod(Object.assign(Object.assign({},selected.args),{$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}))){if(editMethod){editMethod(params);}else{// 追加方式与覆盖式
681
- if(editMode!=='insert'){(0,_util.setCellValue)(selected.row,selected.column,null);}$xeTable.handleEdit(selected.args,evnt);}}}}dispatchEvent('keydown',{},evnt);});}};const handleGlobalPasteEvent=evnt=>{const{keyboardConfig,mouseConfig}=props;const{editStore,filterStore}=reactData;const{isActivated}=internalData;const mouseOpts=computeMouseOpts.value;const keyboardOpts=computeKeyboardOpts.value;const{actived}=editStore;if(isActivated&&!filterStore.visible){if(!(actived.row||actived.column)){if(keyboardConfig&&keyboardOpts.isClip&&mouseConfig&&mouseOpts.area&&$xeTable.handlePasteCellAreaEvent){$xeTable.handlePasteCellAreaEvent(evnt);}}dispatchEvent('paste',{},evnt);}};const handleGlobalCopyEvent=evnt=>{const{keyboardConfig,mouseConfig}=props;const{editStore,filterStore}=reactData;const{isActivated}=internalData;const mouseOpts=computeMouseOpts.value;const keyboardOpts=computeKeyboardOpts.value;const{actived}=editStore;if(isActivated&&!filterStore.visible){if(!(actived.row||actived.column)){if(keyboardConfig&&keyboardOpts.isClip&&mouseConfig&&mouseOpts.area&&$xeTable.handleCopyCellAreaEvent){$xeTable.handleCopyCellAreaEvent(evnt);}}dispatchEvent('copy',{},evnt);}};const handleGlobalCutEvent=evnt=>{const{keyboardConfig,mouseConfig}=props;const{editStore,filterStore}=reactData;const{isActivated}=internalData;const mouseOpts=computeMouseOpts.value;const keyboardOpts=computeKeyboardOpts.value;const{actived}=editStore;if(isActivated&&!filterStore.visible){if(!(actived.row||actived.column)){if(keyboardConfig&&keyboardOpts.isClip&&mouseConfig&&mouseOpts.area&&$xeTable.handleCutCellAreaEvent){$xeTable.handleCutCellAreaEvent(evnt);}}dispatchEvent('cut',{},evnt);}};const handleGlobalResizeEvent=()=>{if($xeTable.closeMenu){$xeTable.closeMenu();}const el=refElem.value;if(!el||!el.clientWidth){return;}handleResizeEvent();$xeTable.updateCellAreas();};const handleTargetEnterEvent=isClear=>{const $tooltip=refTooltip.value;clearTimeout(internalData.tooltipTimeout);if(isClear){tableMethods.closeTooltip();}else{if($tooltip&&$tooltip.setActived){$tooltip.setActived(true);}}};const clearCrossTableDragStatus=()=>{crossTableDragRowObj=null;crossTableDragRowInfo.row=null;};const clearDragStatus=()=>{const{dragRow,dragCol}=reactData;if(dragRow||dragCol){clearColDropOrigin();clearRowDropOrigin();hideDropTip();clearCrossTableDragStatus();reactData.dragRow=null;reactData.dragCol=null;}};const clearRowDropOrigin=()=>{const el=refElem.value;if(el){const clss='row--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}};const updateRowDropOrigin=row=>{const el=refElem.value;if(el){const clss='row--drag-origin';const rowid=(0,_util.getRowid)($xeTable,row);_xeUtils.default.arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`),elem=>{(0,_dom.addClass)(elem,clss);});}};const updateRowDropTipContent=tdEl=>{const{dragConfig}=props;const{dragRow}=reactData;const rowDragOpts=computeRowDragOpts.value;const{tooltipMethod}=rowDragOpts;const rTooltipMethod=tooltipMethod||(dragConfig?dragConfig.rowTooltipMethod:null);let tipContent='';if(rTooltipMethod){const rtParams={$table:$xeTable,row:dragRow};tipContent=`${rTooltipMethod(rtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;};const updateColDropOrigin=column=>{const el=refElem.value;if(el){const colQuerys=[];_xeUtils.default.eachTree([column],item=>{colQuerys.push(`[colid="${item.id}"]`);});const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(colQuerys.join(',')),elem=>{(0,_dom.addClass)(elem,clss);});}};const clearColDropOrigin=()=>{const el=refElem.value;if(el){const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}};const updateColDropTipContent=tdEl=>{const{dragCol}=reactData;const columnDragOpts=computeColumnDragOpts.value;const{tooltipMethod}=columnDragOpts;let tipContent='';if(tooltipMethod){const dtParams={$table:$xeTable,column:dragCol};tipContent=`${tooltipMethod(dtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;};const showDropTip=(evnt,trEl,thEl,showLine,dragPos)=>{let wrapperEl=refElem.value;if($xeGantt&&trEl){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}if(!wrapperEl){return;}const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{prevDragToChild}=internalData;const wrapperRect=wrapperEl.getBoundingClientRect();const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const tableWrapperWidth=wrapperEl.clientWidth;const tableWrapperHeight=wrapperEl.clientHeight;if(trEl){const rdLineEl=refDragRowLineElem.value;if(rdLineEl){if(showLine){const scrollbarYToLeft=computeScrollbarYToLeft.value;const trRect=trEl.getBoundingClientRect();let trHeight=trEl.clientHeight;const offsetTop=Math.max(1,trRect.y-wrapperRect.y);if(offsetTop+trHeight>tableWrapperHeight-osbHeight){trHeight=tableWrapperHeight-offsetTop-osbHeight;}rdLineEl.style.display='block';rdLineEl.style.left=`${scrollbarYToLeft?osbWidth:0}px`;rdLineEl.style.top=`${offsetTop}px`;rdLineEl.style.height=`${trHeight}px`;rdLineEl.style.width=`${tableWrapperWidth-osbWidth}px`;rdLineEl.setAttribute('drag-pos',dragPos);rdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{rdLineEl.style.display='';}}}else if(thEl){const cdLineEl=refDragColLineElem.value;if(cdLineEl){if(showLine){const scrollbarXToTop=computeScrollbarXToTop.value;const leftContainerElem=refLeftContainer.value;const leftContainerWidth=leftContainerElem?leftContainerElem.clientWidth:0;const rightContainerElem=refRightContainer.value;const rightContainerWidth=rightContainerElem?rightContainerElem.clientWidth:0;const thRect=thEl.getBoundingClientRect();let thWidth=thEl.clientWidth;const offsetTop=Math.max(0,thRect.y-wrapperRect.y);const startX=leftContainerWidth;let offsetLeft=thRect.x-wrapperRect.x;if(offsetLeft<startX){thWidth-=startX-offsetLeft;offsetLeft=startX;}const endX=tableWrapperWidth-rightContainerWidth-(rightContainerWidth?0:osbWidth);if(offsetLeft+thWidth>endX){thWidth=endX-offsetLeft;}cdLineEl.style.display='block';cdLineEl.style.top=`${offsetTop}px`;cdLineEl.style.left=`${offsetLeft}px`;cdLineEl.style.width=`${thWidth}px`;if(prevDragToChild){cdLineEl.style.height=`${thRect.height}px`;}else{cdLineEl.style.height=`${tableWrapperHeight-offsetTop-(scrollbarXToTop?0:osbHeight)}px`;}cdLineEl.setAttribute('drag-pos',dragPos);cdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{cdLineEl.style.display='';}}}const rdTipEl=refDragTipElem.value;if(rdTipEl){rdTipEl.style.display='block';rdTipEl.style.top=`${Math.min(wrapperEl.clientHeight-wrapperEl.scrollTop-rdTipEl.clientHeight,evnt.clientY-wrapperRect.y)}px`;rdTipEl.style.left=`${Math.min(wrapperEl.clientWidth-wrapperEl.scrollLeft-rdTipEl.clientWidth-16,evnt.clientX-wrapperRect.x)}px`;rdTipEl.setAttribute('drag-status',showLine?prevDragToChild?'sub':'normal':'disabled');}};const hideDropTip=()=>{const rdTipEl=refDragTipElem.value;const rdLineEl=refDragRowLineElem.value;const cdLineEl=refDragColLineElem.value;if(rdTipEl){rdTipEl.style.display='';}if(rdLineEl){rdLineEl.style.display='';}if(cdLineEl){cdLineEl.style.display='';}};const clearRowDragData=()=>{let wrapperEl=refElem.value;const dtClss=['.vxe-body--row'];if($xeGantt){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}dtClss.push('.vxe-gantt-view--body-row','.vxe-gantt-view--chart-row');}hideDropTip();clearRowDropOrigin();(0,_anime.clearRowAnimate)(wrapperEl,dtClss);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;};const clearColDragData=()=>{const el=refElem.value;hideDropTip();clearColDropOrigin();(0,_anime.clearColAnimate)(el,['.vxe-table--column']);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;};/**
681
+ if(editMode!=='insert'){(0,_util.setCellValue)(selected.row,selected.column,null);}$xeTable.handleEdit(selected.args,evnt);}}}}dispatchEvent('keydown',{},evnt);});}};const handleGlobalPasteEvent=evnt=>{const{keyboardConfig,mouseConfig}=props;const{editStore,filterStore}=reactData;const{isActivated}=internalData;const mouseOpts=computeMouseOpts.value;const keyboardOpts=computeKeyboardOpts.value;const{actived}=editStore;if(isActivated&&!filterStore.visible){if(!(actived.row||actived.column)){if(keyboardConfig&&keyboardOpts.isClip&&mouseConfig&&mouseOpts.area&&$xeTable.handlePasteCellAreaEvent){$xeTable.handlePasteCellAreaEvent(evnt);}}dispatchEvent('paste',{},evnt);}};const handleGlobalCopyEvent=evnt=>{const{keyboardConfig,mouseConfig}=props;const{editStore,filterStore}=reactData;const{isActivated}=internalData;const mouseOpts=computeMouseOpts.value;const keyboardOpts=computeKeyboardOpts.value;const{actived}=editStore;if(isActivated&&!filterStore.visible){if(!(actived.row||actived.column)){if(keyboardConfig&&keyboardOpts.isClip&&mouseConfig&&mouseOpts.area&&$xeTable.handleCopyCellAreaEvent){$xeTable.handleCopyCellAreaEvent(evnt);}}dispatchEvent('copy',{},evnt);}};const handleGlobalCutEvent=evnt=>{const{keyboardConfig,mouseConfig}=props;const{editStore,filterStore}=reactData;const{isActivated}=internalData;const mouseOpts=computeMouseOpts.value;const keyboardOpts=computeKeyboardOpts.value;const{actived}=editStore;if(isActivated&&!filterStore.visible){if(!(actived.row||actived.column)){if(keyboardConfig&&keyboardOpts.isClip&&mouseConfig&&mouseOpts.area&&$xeTable.handleCutCellAreaEvent){$xeTable.handleCutCellAreaEvent(evnt);}}dispatchEvent('cut',{},evnt);}};const handleGlobalResizeEvent=()=>{if($xeTable.closeMenu){$xeTable.closeMenu();}const el=refElem.value;if(!el||!el.clientWidth){return;}handleResizeEvent();$xeTable.updateCellAreas();};const handleTargetEnterEvent=isClear=>{const $tooltip=refTooltip.value;clearTimeout(internalData.tooltipTimeout);if(isClear){tableMethods.closeTooltip();}else{if($tooltip&&$tooltip.setActived){$tooltip.setActived(true);}}};const clearCrossTableDragStatus=()=>{crossTableDragRowObj=null;crossTableDragRowInfo.row=null;};const clearDragStatus=()=>{const{dragRow,dragCol}=reactData;if(dragRow||dragCol){clearColDropOrigin();clearRowDropOrigin();hideDropTip();clearCrossTableDragStatus();reactData.dragRow=null;reactData.dragCol=null;}};const handleRowDragEndClearStatus=()=>{clearRowDragData();clearCrossTableDragStatus();handleRecalculateStyle(false,true,true);};const handleColDragEndClearStatus=()=>{clearColDragData();clearCrossTableDragStatus();handleRecalculateStyle(true,true,true);};const clearRowDropOrigin=()=>{const el=refElem.value;if(el){const clss='row--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}};const updateRowDropOrigin=row=>{const el=refElem.value;if(el){const clss='row--drag-origin';const rowid=(0,_util.getRowid)($xeTable,row);_xeUtils.default.arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`),elem=>{(0,_dom.addClass)(elem,clss);});}};const updateRowDropTipContent=tdEl=>{const{dragConfig}=props;const{dragRow}=reactData;const rowDragOpts=computeRowDragOpts.value;const{tooltipMethod}=rowDragOpts;const rTooltipMethod=tooltipMethod||(dragConfig?dragConfig.rowTooltipMethod:null);let tipContent='';if(rTooltipMethod){const rtParams={$table:$xeTable,row:dragRow};tipContent=`${rTooltipMethod(rtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;};const updateColDropOrigin=column=>{const el=refElem.value;if(el){const colQuerys=[];_xeUtils.default.eachTree([column],item=>{colQuerys.push(`[colid="${item.id}"]`);});const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(colQuerys.join(',')),elem=>{(0,_dom.addClass)(elem,clss);});}};const clearColDropOrigin=()=>{const el=refElem.value;if(el){const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}};const updateColDropTipContent=tdEl=>{const{dragCol}=reactData;const columnDragOpts=computeColumnDragOpts.value;const{tooltipMethod}=columnDragOpts;let tipContent='';if(tooltipMethod){const dtParams={$table:$xeTable,column:dragCol};tipContent=`${tooltipMethod(dtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;};const showDropTip=(evnt,trEl,thEl,showLine,dragPos)=>{let wrapperEl=refElem.value;if($xeGantt&&trEl){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}if(!wrapperEl){return;}const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{prevDragToChild}=internalData;const wrapperRect=wrapperEl.getBoundingClientRect();const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const tableWrapperWidth=wrapperEl.clientWidth;const tableWrapperHeight=wrapperEl.clientHeight;if(trEl){const rdLineEl=refDragRowLineElem.value;if(rdLineEl){if(showLine){const scrollbarYToLeft=computeScrollbarYToLeft.value;const trRect=trEl.getBoundingClientRect();let trHeight=trEl.clientHeight;const offsetTop=Math.max(1,trRect.y-wrapperRect.y);if(offsetTop+trHeight>tableWrapperHeight-osbHeight){trHeight=tableWrapperHeight-offsetTop-osbHeight;}rdLineEl.style.display='block';rdLineEl.style.left=`${scrollbarYToLeft?osbWidth:0}px`;rdLineEl.style.top=`${offsetTop}px`;rdLineEl.style.height=`${trHeight}px`;rdLineEl.style.width=`${tableWrapperWidth-osbWidth}px`;rdLineEl.setAttribute('drag-pos',dragPos);rdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{rdLineEl.style.display='';}}}else if(thEl){const cdLineEl=refDragColLineElem.value;if(cdLineEl){if(showLine){const scrollbarXToTop=computeScrollbarXToTop.value;const leftContainerElem=refLeftContainer.value;const leftContainerWidth=leftContainerElem?leftContainerElem.clientWidth:0;const rightContainerElem=refRightContainer.value;const rightContainerWidth=rightContainerElem?rightContainerElem.clientWidth:0;const thRect=thEl.getBoundingClientRect();let thWidth=thEl.clientWidth;const offsetTop=Math.max(0,thRect.y-wrapperRect.y);const startX=leftContainerWidth;let offsetLeft=thRect.x-wrapperRect.x;if(offsetLeft<startX){thWidth-=startX-offsetLeft;offsetLeft=startX;}const endX=tableWrapperWidth-rightContainerWidth-(rightContainerWidth?0:osbWidth);if(offsetLeft+thWidth>endX){thWidth=endX-offsetLeft;}cdLineEl.style.display='block';cdLineEl.style.top=`${offsetTop}px`;cdLineEl.style.left=`${offsetLeft}px`;cdLineEl.style.width=`${thWidth}px`;if(prevDragToChild){cdLineEl.style.height=`${thRect.height}px`;}else{cdLineEl.style.height=`${tableWrapperHeight-offsetTop-(scrollbarXToTop?0:osbHeight)}px`;}cdLineEl.setAttribute('drag-pos',dragPos);cdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{cdLineEl.style.display='';}}}const rdTipEl=refDragTipElem.value;if(rdTipEl){rdTipEl.style.display='block';rdTipEl.style.top=`${Math.min(wrapperEl.clientHeight-wrapperEl.scrollTop-rdTipEl.clientHeight,evnt.clientY-wrapperRect.y)}px`;rdTipEl.style.left=`${Math.min(wrapperEl.clientWidth-wrapperEl.scrollLeft-rdTipEl.clientWidth-16,evnt.clientX-wrapperRect.x)}px`;rdTipEl.setAttribute('drag-status',showLine?prevDragToChild?'sub':'normal':'disabled');}};const hideDropTip=()=>{const rdTipEl=refDragTipElem.value;const rdLineEl=refDragRowLineElem.value;const cdLineEl=refDragColLineElem.value;if(rdTipEl){rdTipEl.style.display='';}if(rdLineEl){rdLineEl.style.display='';}if(cdLineEl){cdLineEl.style.display='';}};const clearRowDragData=()=>{let wrapperEl=refElem.value;const dtClss=['.vxe-body--row'];if($xeGantt){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}dtClss.push('.vxe-gantt-view--body-row','.vxe-gantt-view--chart-row');}hideDropTip();clearRowDropOrigin();(0,_anime.clearRowAnimate)(wrapperEl,dtClss);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;};const clearColDragData=()=>{const el=refElem.value;hideDropTip();clearColDropOrigin();(0,_anime.clearColAnimate)(el,['.vxe-table--column']);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;};/**
682
682
  * 处理显示 tooltip
683
683
  * @param {Event} evnt 事件
684
684
  * @param {Row} row 行对象
@@ -793,47 +793,48 @@ dispatchEvent('current-change',Object.assign({oldValue,newValue},params),evnt);}
793
793
  */triggerCellMousedownEvent(evnt,params){const{column}=params;const{type,treeNode}=column;const isRadioType=type==='radio';const isCheckboxType=type==='checkbox';const isExpandType=type==='expand';const rowOpts=computeRowOpts.value;const rowDragOpts=computeRowDragOpts.value;const{trigger,isCrossDrag,isPeerDrag,disabledMethod}=rowDragOpts;const cell=evnt.currentTarget;params.cell=cell;const triggerInput=cell&&cell.tagName&&cell.tagName.toLowerCase()==='input';const triggerRadio=isRadioType&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-cell--radio').flag;const triggerCheckbox=isCheckboxType&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-cell--checkbox').flag;const triggerTreeNode=treeNode&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-cell--tree-btn').flag;const triggerExpandNode=isExpandType&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-table--expanded').flag;let isColDragCell=false;if(rowOpts.drag){isColDragCell=trigger==='row'||column.dragSort&&trigger==='cell';}let triggerDrag=false;if(!(triggerInput||triggerRadio||triggerCheckbox||triggerTreeNode||triggerExpandNode)){if(isColDragCell&&(isCrossDrag||isPeerDrag||!params.level)&&!(disabledMethod&&disabledMethod(params))){triggerDrag=true;$xeTable.handleCellDragMousedownEvent(evnt,params);}}if(!triggerDrag&&$xeTable.handleCellMousedownEvent){$xeTable.handleCellMousedownEvent(evnt,params);}$xeTable.focus();$xeTable.closeFilter();if($xeTable.closeMenu){$xeTable.closeMenu();}},triggerCellMouseupEvent(){clearDragStatus();},/**
794
794
  * 行拖拽
795
795
  */handleRowDragDragstartEvent(evnt){if(evnt.dataTransfer){evnt.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0);}},handleRowDragSwapEvent(evnt,isSyncRow,dragRow,prevDragRow,prevDragPos,prevDragToChild){const{treeConfig,dragConfig}=props;const rowDragOpts=computeRowDragOpts.value;const{afterFullData,tableFullData,fullAllDataRowIdData}=internalData;const $xeGanttView=internalData.xeGanttView;const{animation,isPeerDrag,isCrossDrag,isSelfToChildDrag,dragEndMethod,dragToChildMethod}=rowDragOpts;const treeOpts=computeTreeOpts.value;const cellOpts=computeCellOpts.value;const rowOpts=computeRowOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{transform,rowField,mapChildrenField,parentField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const dEndMethod=dragEndMethod||(dragConfig?dragConfig.dragEndMethod:null);const dragOffsetIndex=prevDragPos==='bottom'?1:0;const el=refElem.value;const errRest={status:false};if(!(el&&prevDragRow&&dragRow)){return Promise.resolve(errRest);}// 判断是否有拖动
796
- if(prevDragRow!==dragRow){const dragParams={oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};const isDragToChildFlag=isSelfToChildDrag&&dragToChildMethod?dragToChildMethod(dragParams):prevDragToChild;return Promise.resolve(dEndMethod?dEndMethod(dragParams):true).then(status=>{if(!status){return errRest;}const dragRowid=(0,_util.getRowid)($xeTable,dragRow);const dragRowRest=fullAllDataRowIdData[dragRowid]||{};const _dragRowIndex=dragRowRest._index;let dragRowHeight=0;let dragOffsetTop=-1;if(animation){dragRowHeight=(0,_util.getCellRestHeight)(dragRowRest,cellOpts,rowOpts,defaultRowHeight);const oldTrEl=el.querySelector(`.vxe-body--row[rowid="${dragRowid}"]`);if(oldTrEl){dragOffsetTop=oldTrEl.offsetTop;}}let oafIndex=-1;let nafIndex=-1;// 如果为树结构
797
- if(treeConfig){if(transform){// 移出源位置
798
- const oldRest=dragRowRest;const newRowid=(0,_util.getRowid)($xeTable,prevDragRow);const newRest=fullAllDataRowIdData[newRowid];if(oldRest&&newRest){const{level:oldLevel}=oldRest;const{level:newLevel}=newRest;const oldAllMaps={};_xeUtils.default.eachTree([dragRow],item=>{oldAllMaps[(0,_util.getRowid)($xeTable,item)]=item;},{children:mapChildrenField});let isSelfToChildStatus=false;if(oldLevel&&newLevel){// 子到子
796
+ if(prevDragRow!==dragRow){const dragParams={oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};const dragRowid=(0,_util.getRowid)($xeTable,dragRow);const dragRowRest=fullAllDataRowIdData[dragRowid]||{};const _dragRowIndex=dragRowRest._index;let dragRowHeight=0;let dragOffsetTop=-1;if(animation){dragRowHeight=(0,_util.getCellRestHeight)(dragRowRest,cellOpts,rowOpts,defaultRowHeight);const oldTrEl=el.querySelector(`.vxe-body--row[rowid="${dragRowid}"]`);if(oldTrEl){dragOffsetTop=oldTrEl.offsetTop;}}let oafIndex=-1;let nafIndex=-1;const oldRest=dragRowRest;const newRowid=(0,_util.getRowid)($xeTable,prevDragRow);const newRest=fullAllDataRowIdData[newRowid];const oldAllMaps={};let isSelfToChildStatus=false;// 如果为树结构
797
+ if(treeConfig){if(transform){if(oldRest&&newRest){const{level:oldLevel}=oldRest;const{level:newLevel}=newRest;_xeUtils.default.eachTree([dragRow],item=>{oldAllMaps[(0,_util.getRowid)($xeTable,item)]=item;},{children:mapChildrenField});if(oldLevel&&newLevel){// 子到子
799
798
  if(isPeerDrag&&!isCrossDrag){if(oldRest.row[parentField]!==newRest.row[parentField]){// 非同级
800
- return errRest;}}else{if(!isCrossDrag){return errRest;}if(oldAllMaps[newRowid]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}return errRest;}}}}else if(oldLevel){// 子到根
801
- if(!isCrossDrag){return errRest;}}else if(newLevel){// 根到子
802
- if(!isCrossDrag){return errRest;}if(oldAllMaps[newRowid]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}return errRest;}}}else{// 根到根
803
- }const fullList=_xeUtils.default.toTreeArray(internalData.afterTreeFullData,{key:rowField,parentKey:parentField,children:mapChildrenField});// 移出
799
+ handleRowDragEndClearStatus();return Promise.resolve(errRest);}}else{if(!isCrossDrag){handleRowDragEndClearStatus();return Promise.resolve(errRest);}if(oldAllMaps[newRowid]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}handleRowDragEndClearStatus();return Promise.resolve(errRest);}}}}else if(oldLevel){// 子到根
800
+ if(!isCrossDrag){handleRowDragEndClearStatus();return Promise.resolve(errRest);}}else if(newLevel){// 根到子
801
+ if(!isCrossDrag){handleRowDragEndClearStatus();return Promise.resolve(errRest);}if(oldAllMaps[newRowid]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}handleRowDragEndClearStatus();return Promise.resolve(errRest);}}}else{// 根到根
802
+ }}}}const isDragToChildFlag=isSelfToChildDrag&&dragToChildMethod?dragToChildMethod(dragParams):prevDragToChild;return Promise.resolve(dEndMethod?dEndMethod(dragParams):true).then(status=>{if(!status){return errRest;}// 如果为树结构
803
+ if(treeConfig){if(transform){// 移出源位置
804
+ if(oldRest&&newRest){const fullList=_xeUtils.default.toTreeArray(internalData.afterTreeFullData,{key:rowField,parentKey:parentField,children:mapChildrenField});// 移出
804
805
  const otfIndex=$xeTable.findRowIndexOf(fullList,dragRow);fullList.splice(otfIndex,1);// 插入
805
806
  const ptfIndex=$xeTable.findRowIndexOf(fullList,prevDragRow);const ntfIndex=ptfIndex+dragOffsetIndex;fullList.splice(ntfIndex,0,dragRow);// 改变层级
806
807
  if(isSelfToChildStatus&&isCrossDrag&&isSelfToChildDrag){_xeUtils.default.each(dragRow[childrenField],childRow=>{childRow[parentField]=dragRow[parentField];});}dragRow[parentField]=isDragToChildFlag?prevDragRow[rowField]:prevDragRow[parentField];internalData.tableFullTreeData=_xeUtils.default.toArrayTree(fullList,{key:rowField,parentKey:parentField,children:childrenField,mapChildren:mapChildrenField});}}}else{// 移出
807
808
  oafIndex=$xeTable.findRowIndexOf(afterFullData,dragRow);const otfIndex=$xeTable.findRowIndexOf(tableFullData,dragRow);afterFullData.splice(oafIndex,1);tableFullData.splice(otfIndex,1);// 插入
808
- const pafIndex=$xeTable.findRowIndexOf(afterFullData,prevDragRow);const ptfIndex=$xeTable.findRowIndexOf(tableFullData,prevDragRow);nafIndex=pafIndex+dragOffsetIndex;const ntfIndex=ptfIndex+dragOffsetIndex;afterFullData.splice(nafIndex,0,dragRow);tableFullData.splice(ntfIndex,0,dragRow);}clearRowDragData();clearCrossTableDragStatus();$xeTable.handleTableData(treeConfig&&transform);$xeTable.cacheRowMap(false);updateScrollYStatus();if(!(treeConfig&&transform)){$xeTable.updateAfterDataIndex();}$xeTable.checkSelectionStatus();if(reactData.scrollYLoad){$xeTable.updateScrollYSpace();}if(evnt){dispatchEvent('row-dragend',{oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:isDragToChildFlag,offsetIndex:dragOffsetIndex,_index:{newIndex:nafIndex,oldIndex:oafIndex}},evnt);}return(0,_vue.nextTick)().then(()=>{if(animation){const{tableData}=reactData;const{fullAllDataRowIdData}=internalData;const dragRowRest=fullAllDataRowIdData[dragRowid];const _newRowIndex=dragRowRest._index;const firstRow=tableData[0];const firstRowRest=fullAllDataRowIdData[(0,_util.getRowid)($xeTable,firstRow)];let wrapperEl=el;if($xeGantt&&$xeGanttView){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}if(firstRowRest){const _firstRowIndex=firstRowRest._index;const _lastRowIndex=_firstRowIndex+tableData.length;let rsIndex=-1;let reIndex=-1;let offsetRate=1;if(_dragRowIndex<_firstRowIndex){// 从上往下虚拟拖拽
809
+ const pafIndex=$xeTable.findRowIndexOf(afterFullData,prevDragRow);const ptfIndex=$xeTable.findRowIndexOf(tableFullData,prevDragRow);nafIndex=pafIndex+dragOffsetIndex;const ntfIndex=ptfIndex+dragOffsetIndex;afterFullData.splice(nafIndex,0,dragRow);tableFullData.splice(ntfIndex,0,dragRow);}$xeTable.handleTableData(treeConfig&&transform);$xeTable.cacheRowMap(false);updateScrollYStatus();if(!(treeConfig&&transform)){$xeTable.updateAfterDataIndex();}$xeTable.checkSelectionStatus();if(reactData.scrollYLoad){$xeTable.updateScrollYSpace();}if(evnt){dispatchEvent('row-dragend',{oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:isDragToChildFlag,offsetIndex:dragOffsetIndex,_index:{newIndex:nafIndex,oldIndex:oafIndex}},evnt);}return(0,_vue.nextTick)().then(()=>{if(animation){const{tableData}=reactData;const{fullAllDataRowIdData}=internalData;const dragRowRest=fullAllDataRowIdData[dragRowid];const _newRowIndex=dragRowRest._index;const firstRow=tableData[0];const firstRowRest=fullAllDataRowIdData[(0,_util.getRowid)($xeTable,firstRow)];let wrapperEl=el;if($xeGantt&&$xeGanttView){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}if(firstRowRest){const _firstRowIndex=firstRowRest._index;const _lastRowIndex=_firstRowIndex+tableData.length;let rsIndex=-1;let reIndex=-1;let offsetRate=1;if(_dragRowIndex<_firstRowIndex){// 从上往下虚拟拖拽
809
810
  rsIndex=0;reIndex=_newRowIndex-_firstRowIndex;}else if(_dragRowIndex>_lastRowIndex){// 从下往上虚拟拖拽
810
811
  const $newRowIndex=dragRowRest.$index;rsIndex=$newRowIndex+1;reIndex=tableData.length;offsetRate=-1;}else{if(_newRowIndex>_dragRowIndex){// 从上往下拖拽
811
812
  rsIndex=_dragRowIndex-_firstRowIndex;reIndex=rsIndex+_newRowIndex-_dragRowIndex;}else{// 从下往上拖拽
812
- rsIndex=_newRowIndex-_firstRowIndex;reIndex=rsIndex+_dragRowIndex-_newRowIndex+1;offsetRate=-1;}}const dragRangeList=tableData.slice(rsIndex,reIndex);if(dragRangeList.length){const dtClss=[];dragRangeList.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);dtClss.push(`.vxe-body--row[rowid="${rowid}"]`);if($xeGantt){dtClss.push(`.vxe-gantt-view--body-row[rowid="${rowid}"]`,`.vxe-gantt-view--chart-row[rowid="${rowid}"]`);}});const dtTrList=wrapperEl.querySelectorAll(dtClss.join(','));(0,_anime.moveRowAnimateToTb)(dtTrList,offsetRate*dragRowHeight);}}const drClss=[`.vxe-body--row[rowid="${dragRowid}"]`];if($xeGantt){drClss.push(`.vxe-gantt-view--body-row[rowid="${dragRowid}"]`,`.vxe-gantt-view--chart-row[rowid="${dragRowid}"]`);}const newDtTrList=wrapperEl.querySelectorAll(drClss.join(','));const newTrEl=newDtTrList[0];if(dragOffsetTop>-1&&newTrEl){(0,_anime.moveRowAnimateToTb)(newDtTrList,dragOffsetTop-newTrEl.offsetTop);}}updateRowOffsetTop();updateRowExpandStyle();$xeTable.updateCellAreas();$xeTable.recalculate();}).then(()=>{return{status:true};});}).catch(()=>{return errRest;}).then(rest=>{clearRowDragData();clearCrossTableDragStatus();return rest;});}clearRowDragData();clearCrossTableDragStatus();return Promise.resolve(errRest);},handleCrossTableRowDragCancelEvent(){clearRowDragData();clearCrossTableDragStatus();},/**
813
+ rsIndex=_newRowIndex-_firstRowIndex;reIndex=rsIndex+_dragRowIndex-_newRowIndex+1;offsetRate=-1;}}const dragRangeList=tableData.slice(rsIndex,reIndex);if(dragRangeList.length){const dtClss=[];dragRangeList.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);dtClss.push(`.vxe-body--row[rowid="${rowid}"]`);if($xeGantt){dtClss.push(`.vxe-gantt-view--body-row[rowid="${rowid}"]`,`.vxe-gantt-view--chart-row[rowid="${rowid}"]`);}});const dtTrList=wrapperEl.querySelectorAll(dtClss.join(','));(0,_anime.moveRowAnimateToTb)(dtTrList,offsetRate*dragRowHeight);}}const drClss=[`.vxe-body--row[rowid="${dragRowid}"]`];if($xeGantt){drClss.push(`.vxe-gantt-view--body-row[rowid="${dragRowid}"]`,`.vxe-gantt-view--chart-row[rowid="${dragRowid}"]`);}const newDtTrList=wrapperEl.querySelectorAll(drClss.join(','));const newTrEl=newDtTrList[0];if(dragOffsetTop>-1&&newTrEl){(0,_anime.moveRowAnimateToTb)(newDtTrList,dragOffsetTop-newTrEl.offsetTop);}}updateRowOffsetTop();updateRowExpandStyle();$xeTable.updateCellAreas();$xeTable.recalculate();}).then(()=>{return{status:true};});}).catch(()=>{return errRest;}).then(rest=>{handleRowDragEndClearStatus();return rest;});}handleRowDragEndClearStatus();return Promise.resolve(errRest);},handleCrossTableRowDragCancelEvent(){handleRowDragEndClearStatus();},/**
813
814
  * 处理跨表拖拽完成
814
- */handleCrossTableRowDragFinishEvent(evnt){const{tableData}=reactData;const{fullAllDataRowIdData}=internalData;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const rowDragOpts=computeRowDragOpts.value;const{animation,isCrossTableDrag}=rowDragOpts;const treeOpts=computeTreeOpts.value;const{mapChildrenField}=treeOpts;const el=refElem.value;if(isCrossTableDrag&&crossTableDragRowObj&&crossTableDragRowInfo){const{row:dragRow}=crossTableDragRowInfo;if(dragRow){const dragRowid=(0,_util.getRowid)($xeTable,dragRow);const dragRowRest=fullAllDataRowIdData[dragRowid];let dragRowHeight=0;let rsIndex=-1;if(dragRowRest){if(animation){dragRowHeight=(0,_util.getCellRestHeight)(dragRowRest,cellOpts,rowOpts,defaultRowHeight);}rsIndex=dragRowRest.$index;}const dragRangeList=rsIndex>-1&&rsIndex<tableData.length-1?tableData.slice(rsIndex+1):[];const dragList=_xeUtils.default.toTreeArray([dragRow],{updated:true,children:mapChildrenField});$xeTable.remove(dragList).then(()=>{if(animation&&dragRowHeight&&dragRangeList.length){const $xeGanttView=internalData.xeGanttView;let wrapperEl=el;if($xeGantt&&$xeGanttView){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}const dtClss=[];dragRangeList.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);dtClss.push(`.vxe-body--row[rowid="${rowid}"]`);if($xeGantt){dtClss.push(`.vxe-gantt-view--body-row[rowid="${rowid}"]`,`.vxe-gantt-view--chart-row[rowid="${rowid}"]`);}});const dtTrList=wrapperEl.querySelectorAll(dtClss.join(','));(0,_anime.moveRowAnimateToTb)(dtTrList,dragRowHeight);}});dispatchEvent('row-remove-dragend',{row:dragRow},evnt);clearRowDragData();clearCrossTableDragStatus();}}},/**
815
+ */handleCrossTableRowDragFinishEvent(evnt){const{tableData}=reactData;const{fullAllDataRowIdData}=internalData;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const rowDragOpts=computeRowDragOpts.value;const{animation,isCrossTableDrag}=rowDragOpts;const treeOpts=computeTreeOpts.value;const{mapChildrenField}=treeOpts;const el=refElem.value;if(isCrossTableDrag&&crossTableDragRowObj&&crossTableDragRowInfo){const{row:dragRow}=crossTableDragRowInfo;if(dragRow){const dragRowid=(0,_util.getRowid)($xeTable,dragRow);const dragRowRest=fullAllDataRowIdData[dragRowid];let dragRowHeight=0;let rsIndex=-1;if(dragRowRest){if(animation){dragRowHeight=(0,_util.getCellRestHeight)(dragRowRest,cellOpts,rowOpts,defaultRowHeight);}rsIndex=dragRowRest.$index;}const dragRangeList=rsIndex>-1&&rsIndex<tableData.length-1?tableData.slice(rsIndex+1):[];const dragList=_xeUtils.default.toTreeArray([dragRow],{updated:true,children:mapChildrenField});$xeTable.remove(dragList).then(()=>{if(animation&&dragRowHeight&&dragRangeList.length){const $xeGanttView=internalData.xeGanttView;let wrapperEl=el;if($xeGantt&&$xeGanttView){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}const dtClss=[];dragRangeList.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);dtClss.push(`.vxe-body--row[rowid="${rowid}"]`);if($xeGantt){dtClss.push(`.vxe-gantt-view--body-row[rowid="${rowid}"]`,`.vxe-gantt-view--chart-row[rowid="${rowid}"]`);}});const dtTrList=wrapperEl.querySelectorAll(dtClss.join(','));(0,_anime.moveRowAnimateToTb)(dtTrList,dragRowHeight);}});dispatchEvent('row-remove-dragend',{row:dragRow},evnt);handleRowDragEndClearStatus();}}},/**
815
816
  * 处理跨表拖至新的空表
816
817
  */handleCrossTableRowDragoverEmptyEvent(evnt){const{tableData}=reactData;const rowDragOpts=computeRowDragOpts.value;const{isCrossTableDrag}=rowDragOpts;if(isCrossTableDrag&&crossTableDragRowObj&&!tableData.length){const{$oldTable,$newTable}=crossTableDragRowObj;if($oldTable){const oldTableReactData=$oldTable.reactData;if($oldTable.xID!==$xeTable.xID){if($newTable&&$newTable.xID!==$xeTable.xID){$newTable.hideCrossTableRowDropClearStatus();}evnt.preventDefault();$oldTable.hideCrossTableRowDropClearStatus();crossTableDragRowObj.$newTable=$xeTable;internalData.prevDragRow=null;reactData.dragTipText=oldTableReactData.dragTipText;showDropTip(evnt,evnt.currentTarget,null,true,'');}}}},/**
817
818
  * 处理跨表拖插入
818
819
  */handleCrossTableRowDragInsertEvent(evnt){const{treeConfig}=props;const{prevDragRow,prevDragPos,prevDragToChild}=internalData;const rowDragOpts=computeRowDragOpts.value;const{animation,isSelfToChildDrag,isCrossTableDrag,dragEndMethod,dragToChildMethod}=rowDragOpts;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const treeOpts=computeTreeOpts.value;const{parentField,mapChildrenField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;// 跨表拖拽
819
- if(isCrossTableDrag&&crossTableDragRowObj&&crossTableDragRowInfo){const{row:oldRow}=crossTableDragRowInfo;const{$oldTable}=crossTableDragRowObj;const el=refElem.value;if($oldTable&&oldRow){const dragRow=oldRow;let dragOffsetIndex=-1;if(prevDragRow){dragOffsetIndex=prevDragPos==='bottom'?1:0;}const dragParams={oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};const isDragToChildFlag=isSelfToChildDrag&&dragToChildMethod?dragToChildMethod(dragParams):prevDragToChild;const errRest={status:false};Promise.resolve(dragEndMethod?dragEndMethod(dragParams):true).then(status=>{if(!status){if($oldTable){if($oldTable.xID!==$xeTable.xID){$oldTable.handleCrossTableRowDragCancelEvent(evnt);}}clearRowDragData();clearCrossTableDragStatus();return errRest;}let insertRest=Promise.resolve();if(treeConfig){const dragList=_xeUtils.default.toTreeArray([dragRow],{updated:true,children:mapChildrenField});$oldTable.handleCrossTableRowDragFinishEvent(evnt);if(prevDragRow){dragRow[parentField]=prevDragRow[parentField];}else{dragRow[parentField]=null;}dragList.forEach(row=>{row[childrenField]=undefined;row[mapChildrenField]=undefined;});if(prevDragRow){if(prevDragPos==='bottom'){insertRest=$xeTable.insertNextAt(dragList,prevDragRow);}else{insertRest=$xeTable.insertAt(dragList,prevDragRow);}}else{insertRest=$xeTable.insert(dragList);}}else{$oldTable.handleCrossTableRowDragFinishEvent(evnt);if(prevDragRow){if(prevDragPos==='bottom'){insertRest=$xeTable.insertNextAt(dragRow,prevDragRow);}else{insertRest=$xeTable.insertAt(dragRow,prevDragRow);}}else{insertRest=$xeTable.insert(dragRow);}}dispatchEvent('row-insert-dragend',{oldRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:isDragToChildFlag,offsetIndex:dragOffsetIndex},evnt);clearRowDragData();insertRest.then(()=>{const{tableData}=reactData;const{fullAllDataRowIdData}=internalData;const oldRowid=(0,_util.getRowid)($xeTable,dragRow);const oldRowRest=fullAllDataRowIdData[oldRowid];let dragRowHeight=0;let rsIndex=-1;if(oldRowRest){if(animation){dragRowHeight=(0,_util.getCellRestHeight)(oldRowRest,cellOpts,rowOpts,defaultRowHeight);}rsIndex=oldRowRest.$index;}const dragRangeList=rsIndex>-1?tableData.slice(rsIndex):[];if(animation&&dragRowHeight&&dragRangeList.length){const $xeGanttView=internalData.xeGanttView;let wrapperEl=el;if($xeGantt&&$xeGanttView){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}const dtClss=[];dragRangeList.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);dtClss.push(`.vxe-body--row[rowid="${rowid}"]`);if($xeGantt){dtClss.push(`.vxe-gantt-view--body-row[rowid="${rowid}"]`,`.vxe-gantt-view--chart-row[rowid="${rowid}"]`);}});const dtTrList=wrapperEl.querySelectorAll(dtClss.join(','));(0,_anime.moveRowAnimateToTb)(dtTrList,-dragRowHeight);}});});}}},hideCrossTableRowDropClearStatus(){hideDropTip();},handleRowDragDragendEvent(evnt){const{treeConfig}=props;const{fullAllDataRowIdData,prevDragToChild}=internalData;const{dragRow}=reactData;const treeOpts=computeTreeOpts.value;const{lazy}=treeOpts;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const{prevDragRow,prevDragPos}=internalData;const rowDragOpts=computeRowDragOpts.value;const{isCrossTableDrag}=rowDragOpts;// 跨表拖拽
820
+ if(isCrossTableDrag&&crossTableDragRowObj&&crossTableDragRowInfo){const{row:oldRow}=crossTableDragRowInfo;const{$oldTable}=crossTableDragRowObj;const el=refElem.value;if($oldTable&&oldRow){const dragRow=oldRow;let dragOffsetIndex=-1;if(prevDragRow){dragOffsetIndex=prevDragPos==='bottom'?1:0;}const dragParams={oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};const isDragToChildFlag=isSelfToChildDrag&&dragToChildMethod?dragToChildMethod(dragParams):prevDragToChild;const errRest={status:false};Promise.resolve(dragEndMethod?dragEndMethod(dragParams):true).then(status=>{if(!status){if($oldTable){if($oldTable.xID!==$xeTable.xID){$oldTable.handleCrossTableRowDragCancelEvent(evnt);}}handleRowDragEndClearStatus();return errRest;}let insertRest=Promise.resolve();if(treeConfig){const dragList=_xeUtils.default.toTreeArray([dragRow],{updated:true,children:mapChildrenField});$oldTable.handleCrossTableRowDragFinishEvent(evnt);if(prevDragRow){dragRow[parentField]=prevDragRow[parentField];}else{dragRow[parentField]=null;}dragList.forEach(row=>{row[childrenField]=undefined;row[mapChildrenField]=undefined;});if(prevDragRow){if(prevDragPos==='bottom'){insertRest=$xeTable.insertNextAt(dragList,prevDragRow);}else{insertRest=$xeTable.insertAt(dragList,prevDragRow);}}else{insertRest=$xeTable.insert(dragList);}}else{$oldTable.handleCrossTableRowDragFinishEvent(evnt);if(prevDragRow){if(prevDragPos==='bottom'){insertRest=$xeTable.insertNextAt(dragRow,prevDragRow);}else{insertRest=$xeTable.insertAt(dragRow,prevDragRow);}}else{insertRest=$xeTable.insert(dragRow);}}dispatchEvent('row-insert-dragend',{oldRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:isDragToChildFlag,offsetIndex:dragOffsetIndex},evnt);clearRowDragData();insertRest.then(()=>{const{tableData}=reactData;const{fullAllDataRowIdData}=internalData;const oldRowid=(0,_util.getRowid)($xeTable,dragRow);const oldRowRest=fullAllDataRowIdData[oldRowid];let dragRowHeight=0;let rsIndex=-1;if(oldRowRest){if(animation){dragRowHeight=(0,_util.getCellRestHeight)(oldRowRest,cellOpts,rowOpts,defaultRowHeight);}rsIndex=oldRowRest.$index;}const dragRangeList=rsIndex>-1?tableData.slice(rsIndex):[];if(animation&&dragRowHeight&&dragRangeList.length){const $xeGanttView=internalData.xeGanttView;let wrapperEl=el;if($xeGantt&&$xeGanttView){const{refGanttContainerElem}=$xeGantt.getRefMaps();const ganttContainerElem=refGanttContainerElem.value;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}const dtClss=[];dragRangeList.forEach(row=>{const rowid=(0,_util.getRowid)($xeTable,row);dtClss.push(`.vxe-body--row[rowid="${rowid}"]`);if($xeGantt){dtClss.push(`.vxe-gantt-view--body-row[rowid="${rowid}"]`,`.vxe-gantt-view--chart-row[rowid="${rowid}"]`);}});const dtTrList=wrapperEl.querySelectorAll(dtClss.join(','));(0,_anime.moveRowAnimateToTb)(dtTrList,-dragRowHeight);}});});}}},hideCrossTableRowDropClearStatus(){hideDropTip();},handleRowDragDragendEvent(evnt){const{treeConfig}=props;const{fullAllDataRowIdData,prevDragToChild}=internalData;const{dragRow}=reactData;const treeOpts=computeTreeOpts.value;const{lazy}=treeOpts;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const{prevDragRow,prevDragPos}=internalData;const rowDragOpts=computeRowDragOpts.value;const{isCrossTableDrag}=rowDragOpts;// 跨表拖拽
820
821
  if(isCrossTableDrag&&crossTableDragRowObj){const{$newTable}=crossTableDragRowObj;if($newTable&&$newTable.xID!==$xeTable.xID){$newTable.handleCrossTableRowDragInsertEvent(evnt);return;}}if(treeConfig&&lazy&&prevDragToChild){// 懒加载
821
822
  const newRowid=(0,_util.getRowid)($xeTable,prevDragRow);const rowRest=fullAllDataRowIdData[newRowid];if(prevDragRow[hasChildField]){if(rowRest&&rowRest.treeLoaded){$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}}else{$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}}else{$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}},handleRowDragDragoverEvent(evnt){const{treeConfig}=props;const{fullAllDataRowIdData}=internalData;const{dragRow}=reactData;const treeOpts=computeTreeOpts.value;const{lazy,transform,parentField}=treeOpts;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const rowDragOpts=computeRowDragOpts.value;const{isPeerDrag,isCrossDrag,isToChildDrag,isCrossTableDrag}=rowDragOpts;if(!dragRow&&!(isCrossTableDrag&&(!treeConfig||isCrossDrag)&&crossTableDragRowObj)){evnt.preventDefault();return;}const isControlKey=(0,_dom.hasControlKey)(evnt);const trEl=evnt.currentTarget;const rowid=trEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){evnt.preventDefault();const row=rowRest.row;const offsetY=evnt.clientY-trEl.getBoundingClientRect().y;const dragPos=offsetY<trEl.clientHeight/2?'top':'bottom';internalData.prevDragToChild=!!(treeConfig&&transform&&isCrossDrag&&isToChildDrag&&isControlKey);internalData.prevDragRow=row;internalData.prevDragPos=dragPos;// 跨表拖拽
822
823
  if(isCrossTableDrag&&(!treeConfig||isCrossDrag)&&crossTableDragRowObj){const{$oldTable,$newTable}=crossTableDragRowObj;if($oldTable){const oldTableReactData=$oldTable.reactData;if($oldTable.xID===$xeTable.xID){if($newTable){$newTable.hideCrossTableRowDropClearStatus();}reactData.isCrossDragRow=false;oldTableReactData.isCrossDragRow=false;crossTableDragRowObj.$newTable=null;}else{if($newTable&&$newTable.xID!==$xeTable.xID){$newTable.hideCrossTableRowDropClearStatus();}$oldTable.hideCrossTableRowDropClearStatus();oldTableReactData.isCrossDragRow=true;reactData.dragTipText=oldTableReactData.dragTipText;crossTableDragRowObj.$newTable=$xeTable;showDropTip(evnt,trEl,null,true,dragPos);return;}}}if($xeTable.eqRow(dragRow,row)||isControlKey&&treeConfig&&lazy&&row[hasChildField]&&rowRest&&!rowRest.treeLoaded||!isCrossDrag&&treeConfig&&transform&&(isPeerDrag?dragRow[parentField]!==row[parentField]:rowRest.level)){showDropTip(evnt,trEl,null,false,dragPos);return;}showDropTip(evnt,trEl,null,true,dragPos);dispatchEvent('row-dragover',{oldRow:dragRow,targetRow:row,dragPos},evnt);}},handleCellDragMousedownEvent(evnt,params){var _a;evnt.stopPropagation();const{dragConfig}=props;const rowDragOpts=computeRowDragOpts.value;const{isCrossTableDrag,trigger,dragStartMethod}=rowDragOpts;const{row}=params;const dragEl=evnt.currentTarget;const tdEl=trigger==='cell'||trigger==='row'?dragEl:(_a=dragEl.parentElement)===null||_a===void 0?void 0:_a.parentElement;const trEl=tdEl.parentElement;const dStartMethod=dragStartMethod||(dragConfig?dragConfig.dragStartMethod:null);clearRowDropOrigin();if(dStartMethod&&!dStartMethod(params)){trEl.draggable=false;reactData.dragRow=null;reactData.dragCol=null;clearCrossTableDragStatus();hideDropTip();return;}if(isCrossTableDrag){crossTableDragRowInfo.row=row;crossTableDragRowObj={$oldTable:$xeTable,$newTable:null};}reactData.dragRow=row;reactData.isCrossDragRow=false;reactData.dragCol=null;trEl.draggable=true;updateRowDropOrigin(row);updateRowDropTipContent(tdEl);dispatchEvent('row-dragstart',params,evnt);},handleCellDragMouseupEvent(){clearDragStatus();},/**
823
824
  * 列拖拽
824
825
  */handleHeaderCellDragDragstartEvent(evnt){if(evnt.dataTransfer){evnt.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0);}},handleColDragSwapColumn(){handleUpdateColumn();return parseColumns(false).then(()=>{$xeTable.updateCellAreas();$xeTable.saveCustomStore('update:sort');});},handleColDragSwapEvent(evnt,isSyncColumn,dragCol,prevDragCol,prevDragPos,prevDragToChild){const{mouseConfig}=props;const columnDragOpts=computeColumnDragOpts.value;const{animation,isPeerDrag,isCrossDrag,isSelfToChildDrag,isToChildDrag,dragEndMethod,dragToChildMethod}=columnDragOpts;const{collectColumn,fullColumnIdData}=internalData;const el=refElem.value;const dragOffsetIndex=prevDragPos==='right'?1:0;const errRest={status:false};if(!(el&&prevDragCol&&dragCol)){return Promise.resolve(errRest);}// 判断是否有拖动
825
- if(prevDragCol!==dragCol){const dragColumn=dragCol;const newColumn=prevDragCol;const dragParams={oldColumn:dragColumn,newColumn,dragColumn,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};const isDragToChildFlag=isSelfToChildDrag&&dragToChildMethod?dragToChildMethod(dragParams):prevDragToChild;return Promise.resolve(dragEndMethod?dragEndMethod(dragParams):true).then(status=>{if(!status){return errRest;}let dragTargetColumn=null;const dragAllTargetCols=[];let dragColWidth=0;if(animation){_xeUtils.default.eachTree([dragColumn],column=>{if(!dragTargetColumn&&(!column.children||!column.children.length)){dragTargetColumn=column;dragColWidth+=column.renderWidth;}dragAllTargetCols.push(column);});}if(!dragTargetColumn){dragTargetColumn=dragColumn;}const dragColRest=fullColumnIdData[dragTargetColumn.id]||{};const _dragColIndex=dragColRest._index;let dragOffsetLeft=-1;if(animation){const oldTrEl=el.querySelector(`.vxe-table--column[colid="${dragTargetColumn.id}"]`);if(oldTrEl){dragOffsetLeft=oldTrEl.offsetLeft;}}let oafIndex=-1;let nafIndex=-1;const oldAllMaps={};_xeUtils.default.eachTree([dragColumn],column=>{oldAllMaps[column.id]=column;});let isSelfToChildStatus=false;if(dragColumn.parentId&&newColumn.parentId){// 子到子
826
+ if(prevDragCol!==dragCol){const dragColumn=dragCol;const newColumn=prevDragCol;const dragParams={oldColumn:dragColumn,newColumn,dragColumn,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};let dragTargetColumn=null;const dragAllTargetCols=[];let dragColWidth=0;if(animation){_xeUtils.default.eachTree([dragColumn],column=>{if(!dragTargetColumn&&(!column.children||!column.children.length)){dragTargetColumn=column;dragColWidth+=column.renderWidth;}dragAllTargetCols.push(column);});}if(!dragTargetColumn){dragTargetColumn=dragColumn;}const dragColRest=fullColumnIdData[dragTargetColumn.id]||{};const _dragColIndex=dragColRest._index;let dragOffsetLeft=-1;if(animation){const oldTrEl=el.querySelector(`.vxe-table--column[colid="${dragTargetColumn.id}"]`);if(oldTrEl){dragOffsetLeft=oldTrEl.offsetLeft;}}let oafIndex=-1;let nafIndex=-1;const oldAllMaps={};_xeUtils.default.eachTree([dragColumn],column=>{oldAllMaps[column.id]=column;});let isSelfToChildStatus=false;if(dragColumn.parentId&&newColumn.parentId){// 子到子
826
827
  if(isPeerDrag&&!isCrossDrag){if(dragColumn.parentId!==newColumn.parentId){// 非同级
827
- return errRest;}}else{if(!isCrossDrag){return errRest;}if(oldAllMaps[newColumn.id]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}return errRest;}}}}else if(dragColumn.parentId){// 子到根
828
- if(!isCrossDrag){return errRest;}}else if(newColumn.parentId){// 根到子
829
- if(!isCrossDrag){return errRest;}if(oldAllMaps[newColumn.id]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}return errRest;}}}else{// 根到根
830
- }const oldewMatchRest=_xeUtils.default.findTree(collectColumn,item=>item.id===dragColumn.id);// 改变层级
828
+ handleColDragEndClearStatus();return Promise.resolve(errRest);}}else{if(!isCrossDrag){handleColDragEndClearStatus();return Promise.resolve(errRest);}if(oldAllMaps[newColumn.id]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}handleColDragEndClearStatus();return Promise.resolve(errRest);}}}}else if(dragColumn.parentId){// 子到根
829
+ if(!isCrossDrag){handleColDragEndClearStatus();return Promise.resolve(errRest);}}else if(newColumn.parentId){// 根到子
830
+ if(!isCrossDrag){handleColDragEndClearStatus();return Promise.resolve(errRest);}if(oldAllMaps[newColumn.id]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}handleColDragEndClearStatus();return Promise.resolve(errRest);}}}else{// 根到根
831
+ }const isDragToChildFlag=isSelfToChildDrag&&dragToChildMethod?dragToChildMethod(dragParams):prevDragToChild;return Promise.resolve(dragEndMethod?dragEndMethod(dragParams):true).then(status=>{if(!status){return errRest;}const oldewMatchRest=_xeUtils.default.findTree(collectColumn,item=>item.id===dragColumn.id);// 改变层级
831
832
  if(isSelfToChildStatus&&isCrossDrag&&isSelfToChildDrag){if(oldewMatchRest){const{items:oCols,index:oIndex}=oldewMatchRest;const childList=dragColumn.children||[];childList.forEach(column=>{column.parentId=dragColumn.parentId;});oCols.splice(oIndex,1,...childList);dragColumn.children=[];}}else{if(oldewMatchRest){const{items:oCols,index:oIndex,parent:oParent}=oldewMatchRest;oCols.splice(oIndex,1);if(!oParent){oafIndex=oIndex;}}}const newMatchRest=_xeUtils.default.findTree(collectColumn,item=>item.id===newColumn.id);if(newMatchRest){const{items:nCols,index:nIndex,parent:nParent}=newMatchRest;// 转子级
832
833
  if(isCrossDrag&&isToChildDrag&&isDragToChildFlag){dragColumn.parentId=newColumn.id;newColumn.children=(newColumn.children||[]).concat([dragColumn]);}else{dragColumn.parentId=newColumn.parentId;nCols.splice(nIndex+dragOffsetIndex,0,dragColumn);}if(!nParent){nafIndex=nIndex;}}_xeUtils.default.eachTree(collectColumn,(column,index,items,path,parentColumn)=>{if(!parentColumn){const sortIndex=index+1;column.renderSortNumber=sortIndex;}});if(mouseConfig){if($xeTable.clearSelected){$xeTable.clearSelected();}if($xeTable.clearCellAreas){$xeTable.clearCellAreas();$xeTable.clearCopyCellArea();}}if(evnt){dispatchEvent('column-dragend',{oldColumn:dragColumn,newColumn,dragColumn,dragPos:prevDragPos,dragToChild:isDragToChildFlag,offsetIndex:dragOffsetIndex,_index:{newIndex:nafIndex,oldIndex:oafIndex}},evnt);}return(0,_vue.nextTick)().then(()=>{if(isSyncColumn){return $xeTable.handleColDragSwapColumn();}}).then(()=>{if(animation){const{tableColumn}=reactData;const{visibleColumn,fullColumnIdData}=internalData;let dragNewColumn=null;const dragNewColMaps={};_xeUtils.default.eachTree([dragColumn],column=>{if(!dragNewColumn&&(!column.children||!column.children.length)){dragNewColumn=column;}dragNewColMaps[column.id]=column;});if(!dragNewColumn){dragNewColumn=dragColumn;}if(dragColWidth&&dragAllTargetCols.length){const _newColIndex=_xeUtils.default.findIndexOf(visibleColumn,column=>!!dragNewColumn&&column.id===dragNewColumn.id);const firstCol=tableColumn[0];const firstColRest=fullColumnIdData[firstCol.id];if(firstColRest){const _firstColIndex=firstColRest._index;const _lastColIndex=_firstColIndex+tableColumn.length;let csIndex=-1;let ceIndex=-1;let offsetRate=1;if(_dragColIndex<_firstColIndex){// 从左往右虚拟拖拽
833
834
  csIndex=0;ceIndex=_newColIndex-_firstColIndex;}else if(_dragColIndex>_lastColIndex){// 从右往左虚拟拖拽
834
835
  const $newRowIndex=dragColRest.$index;csIndex=$newRowIndex+1;ceIndex=tableColumn.length;offsetRate=-1;}else{if(_newColIndex>_dragColIndex){// 从左往右拖拽
835
836
  csIndex=_dragColIndex-_firstColIndex;ceIndex=csIndex+_newColIndex-_dragColIndex;}else{// 从右往左拖拽
836
- csIndex=_newColIndex-_firstColIndex+1;ceIndex=csIndex+_dragColIndex-_newColIndex;offsetRate=-1;}}const dragRangeList=[];const dragRangeMaps={};for(let i=csIndex;i<ceIndex;i++){const column=tableColumn[i];if(!dragRangeMaps[column.id]&&!dragNewColMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}}_xeUtils.default.eachTree([newColumn],column=>{if(!dragRangeMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}});if(dragRangeList.length){const dtTrList=el.querySelectorAll(dragRangeList.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));(0,_anime.moveColAnimateToLr)(dtTrList,offsetRate*dragColWidth);}}const newTrList=el.querySelectorAll(dragAllTargetCols.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));const newTdEl=newTrList[0];if(dragOffsetLeft>-1&&newTdEl){(0,_anime.moveColAnimateToLr)(newTrList,dragOffsetLeft-newTdEl.offsetLeft);}}}updateColumnOffsetLeft();loadScrollXData();$xeTable.updateCellAreas();return{status:true};});}).catch(()=>{return errRest;}).then(rest=>{clearColDragData();clearCrossTableDragStatus();return rest;});}clearColDragData();clearCrossTableDragStatus();return Promise.resolve(errRest);},handleHeaderCellDragDragendEvent(evnt){const{dragCol}=reactData;const{prevDragCol,prevDragPos,prevDragToChild}=internalData;$xeTable.handleColDragSwapEvent(evnt,true,dragCol,prevDragCol,prevDragPos,prevDragToChild);},handleHeaderCellDragDragoverEvent(evnt){const{dragCol}=reactData;const columnDragOpts=computeColumnDragOpts.value;const{isToChildDrag,isPeerDrag,isCrossDrag}=columnDragOpts;if(!dragCol){evnt.preventDefault();return;}const isControlKey=(0,_dom.hasControlKey)(evnt);const thEl=evnt.currentTarget;const colid=thEl.getAttribute('colid');const column=$xeTable.getColumnById(colid);if(column){evnt.preventDefault();const{clientX}=evnt;const offsetX=clientX-thEl.getBoundingClientRect().x;const dragPos=offsetX<thEl.clientWidth/2?'left':'right';internalData.prevDragToChild=!!(isCrossDrag&&isToChildDrag&&isControlKey);internalData.prevDragCol=column;internalData.prevDragPos=dragPos;if(column.fixed||dragCol&&dragCol.id===column.id||!isCrossDrag&&(isPeerDrag?dragCol.parentId!==column.parentId:column.parentId)){showDropTip(evnt,null,thEl,false,dragPos);return;}showDropTip(evnt,null,thEl,true,dragPos);dispatchEvent('column-dragover',{oldColumn:dragCol,targetColumn:column,dragPos},evnt);// 边缘滚动
837
+ csIndex=_newColIndex-_firstColIndex+1;ceIndex=csIndex+_dragColIndex-_newColIndex;offsetRate=-1;}}const dragRangeList=[];const dragRangeMaps={};for(let i=csIndex;i<ceIndex;i++){const column=tableColumn[i];if(!dragRangeMaps[column.id]&&!dragNewColMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}}_xeUtils.default.eachTree([newColumn],column=>{if(!dragRangeMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}});if(dragRangeList.length){const dtTrList=el.querySelectorAll(dragRangeList.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));(0,_anime.moveColAnimateToLr)(dtTrList,offsetRate*dragColWidth);}}const newTrList=el.querySelectorAll(dragAllTargetCols.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));const newTdEl=newTrList[0];if(dragOffsetLeft>-1&&newTdEl){(0,_anime.moveColAnimateToLr)(newTrList,dragOffsetLeft-newTdEl.offsetLeft);}}}updateColumnOffsetLeft();loadScrollXData();$xeTable.updateCellAreas();return{status:true};});}).catch(()=>{return errRest;}).then(rest=>{handleColDragEndClearStatus();return rest;});}handleColDragEndClearStatus();return Promise.resolve(errRest);},handleHeaderCellDragDragendEvent(evnt){const{dragCol}=reactData;const{prevDragCol,prevDragPos,prevDragToChild}=internalData;$xeTable.handleColDragSwapEvent(evnt,true,dragCol,prevDragCol,prevDragPos,prevDragToChild);},handleHeaderCellDragDragoverEvent(evnt){const{dragCol}=reactData;const columnDragOpts=computeColumnDragOpts.value;const{isToChildDrag,isPeerDrag,isCrossDrag}=columnDragOpts;if(!dragCol){evnt.preventDefault();return;}const isControlKey=(0,_dom.hasControlKey)(evnt);const thEl=evnt.currentTarget;const colid=thEl.getAttribute('colid');const column=$xeTable.getColumnById(colid);if(column){evnt.preventDefault();const{clientX}=evnt;const offsetX=clientX-thEl.getBoundingClientRect().x;const dragPos=offsetX<thEl.clientWidth/2?'left':'right';internalData.prevDragToChild=!!(isCrossDrag&&isToChildDrag&&isControlKey);internalData.prevDragCol=column;internalData.prevDragPos=dragPos;if(column.fixed||dragCol&&dragCol.id===column.id||!isCrossDrag&&(isPeerDrag?dragCol.parentId!==column.parentId:column.parentId)){showDropTip(evnt,null,thEl,false,dragPos);return;}showDropTip(evnt,null,thEl,true,dragPos);dispatchEvent('column-dragover',{oldColumn:dragCol,targetColumn:column,dragPos},evnt);// 边缘滚动
837
838
  const el=refElem.value;if(!el){return;}const xHandleEl=refScrollXHandleElem.value;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;const scrollTargetEl=xHandleEl||tableBodyElem;if(scrollTargetEl){const wrapperRect=el.getBoundingClientRect();const tableWrapperWidth=el.clientWidth;const leftContainerElem=refLeftContainer.value;const leftContainerWidth=leftContainerElem?leftContainerElem.clientWidth:0;const rightContainerElem=refRightContainer.value;const rightContainerWidth=rightContainerElem?rightContainerElem.clientWidth:0;const srartX=wrapperRect.x+leftContainerWidth;const endX=wrapperRect.x+tableWrapperWidth-rightContainerWidth;const distSize=28;const startDistSize=clientX-srartX;const endDistSize=endX-clientX;if(startDistSize>0&&startDistSize<=distSize){const scrollRatio=Math.floor(tableWrapperWidth/(startDistSize>distSize/2?240:120));scrollTargetEl.scrollLeft-=scrollRatio*(distSize-startDistSize);}else if(endDistSize>0&&endDistSize<=distSize){const scrollRatio=Math.floor(tableWrapperWidth/(endDistSize>distSize/2?240:120));scrollTargetEl.scrollLeft+=scrollRatio*(distSize-endDistSize);}}}},handleHeaderCellDragMousedownEvent(evnt,params){var _a;evnt.stopPropagation();const columnDragOpts=computeColumnDragOpts.value;const{trigger,dragStartMethod}=columnDragOpts;const{column}=params;const dragEl=evnt.currentTarget;const thEl=trigger==='cell'?dragEl:(_a=dragEl.parentElement)===null||_a===void 0?void 0:_a.parentElement;clearColDropOrigin();if(dragStartMethod&&!dragStartMethod(params)){thEl.draggable=false;reactData.dragRow=null;reactData.dragCol=null;clearCrossTableDragStatus();hideDropTip();return;}reactData.dragCol=column;reactData.dragRow=null;thEl.draggable=true;clearCrossTableDragStatus();updateColDropOrigin(column);updateColDropTipContent(thEl);dispatchEvent('column-dragstart',params,evnt);},handleHeaderCellDragMouseupEvent(){clearColDropOrigin();hideDropTip();clearCrossTableDragStatus();reactData.dragRow=null;reactData.dragCol=null;},handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,params){const{highlightHoverRow}=props;const{lastScrollLeft,lastScrollTop}=internalData;const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;if(!xHandleEl||!yHandleEl){return;}const rowOpts=computeRowOpts.value;const validTip=refValidTooltip.value;const tooltip=refTooltip.value;const bodyHeight=yHandleEl.clientHeight;const bodyWidth=xHandleEl.clientWidth;const scrollHeight=yHandleEl.scrollHeight;const scrollWidth=xHandleEl.scrollWidth;let isTop=false;let isBottom=false;let isLeft=false;let isRight=false;let direction='';let isTopBoundary=false;let isBottomBoundary=false;let isLeftBoundary=false;let isRightBoundary=false;if(isRollX){const xThreshold=computeScrollXThreshold.value;isLeft=scrollLeft<=0;if(!isLeft){isRight=scrollLeft+bodyWidth>=scrollWidth;}if(scrollLeft>lastScrollLeft){direction='right';if(scrollLeft+bodyWidth>=scrollWidth-xThreshold){isRightBoundary=true;}}else{direction='left';if(scrollLeft<=xThreshold){isLeftBoundary=true;}}$xeTable.checkScrolling();internalData.lastScrollLeft=scrollLeft;}if(isRollY){const yThreshold=computeScrollYThreshold.value;isTop=scrollTop<=1;if(!isTop){isBottom=scrollTop+bodyHeight>=scrollHeight-1;}if(scrollTop>lastScrollTop){direction='bottom';if(scrollTop+bodyHeight>=scrollHeight-yThreshold){isBottomBoundary=true;}}else{direction='top';if(scrollTop<=yThreshold){isTopBoundary=true;}}internalData.lastScrollTop=scrollTop;}reactData.lastScrollTime=Date.now();const evntParams=Object.assign({source:sourceType,scrollTop,scrollLeft,bodyHeight,bodyWidth,scrollHeight,scrollWidth,isX:isRollX,isY:isRollY,isTop,isBottom,isLeft,isRight,direction},params);updateRowExpandStyle();checkLastSyncScroll(isRollX,isRollY);if(isRollX){$xeTable.closeFilter();}if(rowOpts.isHover||highlightHoverRow){$xeTable.clearHoverRow();}if(validTip&&validTip.reactData.visible){validTip.close();}if(tooltip&&tooltip.reactData.visible){tooltip.close();}if(isBottomBoundary||isTopBoundary||isRightBoundary||isLeftBoundary){dispatchEvent('scroll-boundary',evntParams,evnt);}dispatchEvent('scroll',evntParams,evnt);},/**
838
839
  * 横向 X 可视渲染事件处理
839
840
  */triggerScrollXEvent(){const virtualXOpts=computeVirtualXOpts.value;if(virtualXOpts.immediate){loadScrollXData();}else{lazyScrollXData();}},/**
@@ -859,7 +860,7 @@ if(expandColumn&&rowExpandedMaps[rowid]){sYHeight+=rowRest.expandHeight||expandO
859
860
  let ySpaceHeight=sYHeight;let scrollYTop=ySpaceTop;if(isScrollYBig){// 触底
860
861
  if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=maxYHeight){scrollYTop=maxYHeight-bodyTableElem.clientHeight;}else{scrollYTop=(maxYHeight-clientHeight)*(ySpaceTop/(scrollYHeight-clientHeight));}ySpaceHeight=maxYHeight;}if(!(scrollYLoad&&overflowY)){scrollYTop=0;}if(getConfig().scrollMarginStyle){if(leftBodyTableElem){leftBodyTableElem.style.marginTop=`${scrollYTop}px`;}if(bodyTableElem){bodyTableElem.style.marginTop=`${scrollYTop}px`;}if(rightbodyTableElem){rightbodyTableElem.style.marginTop=`${scrollYTop}px`;}}else{if(leftBodyTableElem){leftBodyTableElem.style.transform=`translate(0px, ${scrollYTop}px)`;}if(bodyTableElem){bodyTableElem.style.transform=`translate(${reactData.scrollXLeft||0}px, ${scrollYTop}px)`;}if(rightbodyTableElem){rightbodyTableElem.style.transform=`translate(0px, ${scrollYTop}px)`;}}containerList.forEach(name=>{const layoutList=['header','body','footer'];layoutList.forEach(layout=>{const ySpaceElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-ySpace`]);if(ySpaceElem){ySpaceElem.style.height=ySpaceHeight?`${ySpaceHeight}px`:'';}});});const scrollYSpaceEl=refScrollYSpaceElem.value;if(scrollYSpaceEl){scrollYSpaceEl.style.height=ySpaceHeight?`${ySpaceHeight}px`:'';}const rowExpandYSpaceEl=refRowExpandYSpaceElem.value;if(rowExpandYSpaceEl){rowExpandYSpaceEl.style.height=ySpaceHeight?`${ySpaceHeight}px`:'';}reactData.scrollYTop=scrollYTop;reactData.scrollYHeight=ySpaceHeight;reactData.isScrollYBig=isScrollYBig;calcScrollbar();if(isScrollYBig&&mouseOpts.area){(0,_log.errLog)('vxe.error.notProp',['mouse-config.area']);}if($xeGanttView&&$xeGanttView.handleUpdateSYSpace){$xeGanttView.handleUpdateSYSpace();}return(0,_vue.nextTick)().then(()=>{return updateStyle();});},updateScrollXData(){const{isAllOverflow}=reactData;handleTableColumn();$xeTable.updateScrollXSpace();return(0,_vue.nextTick)().then(()=>{handleTableColumn();$xeTable.updateScrollXSpace();if(!isAllOverflow){$xeTable.updateScrollYSpace();}});},updateScrollYData(){$xeTable.handleTableData();$xeTable.updateScrollYSpace();return(0,_vue.nextTick)().then(()=>{$xeTable.handleTableData();$xeTable.updateScrollYSpace();});},/**
861
862
  * 处理固定列的显示状态
862
- */checkScrolling(){const{elemStore}=internalData;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const leftContainerElem=refLeftContainer.value;const rightContainerElem=refRightContainer.value;const xHandleEl=refScrollXHandleElem.value;const bodtTargetEl=xHandleEl||bodyScrollElem;if(bodtTargetEl){if(leftContainerElem){if(bodtTargetEl.scrollLeft>0){(0,_dom.addClass)(leftContainerElem,'scrolling--middle');}else{(0,_dom.removeClass)(leftContainerElem,'scrolling--middle');}}if(rightContainerElem){if(bodtTargetEl.clientWidth<bodtTargetEl.scrollWidth-Math.ceil(bodtTargetEl.scrollLeft)){(0,_dom.addClass)(rightContainerElem,'scrolling--middle');}else{(0,_dom.removeClass)(rightContainerElem,'scrolling--middle');}}}},handleUpdateAggData(){return loadTableData(internalData.tableSynchData,true);},updateZindex(){if(props.zIndex){internalData.tZindex=props.zIndex;}else if(internalData.tZindex<(0,_utils.getLastZIndex)()){internalData.tZindex=(0,_utils.nextZIndex)();}},handleCheckedCheckboxRow,/**
863
+ */checkScrolling(){const{elemStore}=internalData;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const leftContainerElem=refLeftContainer.value;const rightContainerElem=refRightContainer.value;const xHandleEl=refScrollXHandleElem.value;const bodtTargetEl=xHandleEl||bodyScrollElem;if(bodtTargetEl){if(leftContainerElem){if(bodtTargetEl.scrollLeft>0){(0,_dom.addClass)(leftContainerElem,'scrolling--middle');}else{(0,_dom.removeClass)(leftContainerElem,'scrolling--middle');}}if(rightContainerElem){if(bodtTargetEl.clientWidth<bodtTargetEl.scrollWidth-Math.ceil(bodtTargetEl.scrollLeft)){(0,_dom.addClass)(rightContainerElem,'scrolling--middle');}else{(0,_dom.removeClass)(rightContainerElem,'scrolling--middle');}}}},handleUpdateAggData(){return loadTableData(internalData.tableSynchData,false,true);},updateZindex(){if(props.zIndex){internalData.tZindex=props.zIndex;}else if(internalData.tZindex<(0,_utils.getLastZIndex)()){internalData.tZindex=(0,_utils.nextZIndex)();}},handleCheckedCheckboxRow,/**
863
864
  * 行 hover 事件
864
865
  */triggerHoverEvent(evnt,{row}){tablePrivateMethods.setHoverRow(row);},setHoverRow(row){const $xeGanttView=internalData.xeGanttView;const rowid=(0,_util.getRowid)($xeTable,row);const el=refElem.value;tablePrivateMethods.clearHoverRow();if(el){_xeUtils.default.arrayEach(el.querySelectorAll(`.vxe-body--row[rowid="${rowid}"]`),elem=>(0,_dom.addClass)(elem,'row--hover'));}internalData.hoverRow=row;if($xeGanttView&&$xeGanttView.handleUpdateHoverRow){$xeGanttView.handleUpdateHoverRow(row);}},clearHoverRow(){const $xeGanttView=internalData.xeGanttView;const el=refElem.value;if(el){_xeUtils.default.arrayEach(el.querySelectorAll('.vxe-body--row.row--hover'),elem=>(0,_dom.removeClass)(elem,'row--hover'));}internalData.hoverRow=null;if($xeGanttView&&$xeGanttView.handleUpdateHoverRow){$xeGanttView.handleUpdateHoverRow();}},/**
865
866
  * 已废弃,被 getCellElement 替换
@@ -918,7 +919,7 @@ Object.assign($xeTable,tableMethods,tablePrivateMethods);/**
918
919
  * 工具提示
919
920
  */(0,_vue.h)(VxeUITooltipComponent,{key:'btp',ref:refTooltip,theme:tableTipConfig.theme,enterable:tableTipConfig.enterable,enterDelay:tableTipConfig.enterDelay,leaveDelay:tableTipConfig.leaveDelay,useHTML:tableTipConfig.useHTML,width:tableTipConfig.width,height:tableTipConfig.height,minWidth:tableTipConfig.minWidth,minHeight:tableTipConfig.minHeight,maxWidth:tableTipConfig.maxWidth,maxHeight:tableTipConfig.maxHeight},currTooltipSlot?{content:()=>{const{type,row,column,content:tooltipContent}=tooltipStore;if(currTooltipSlot){if(column&&type==='header'){return(0,_vue.h)('div',{key:type},currTooltipSlot({column,tooltipContent,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}));}if(row&&column&&type==='body'){return(0,_vue.h)('div',{key:type},currTooltipSlot({row,column,tooltipContent,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}));}if(row&&column&&type==='footer'){return(0,_vue.h)('div',{key:type},currTooltipSlot({row,column,tooltipContent,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}));}}return renderEmptyElement($xeTable);}}:{}),/**
920
921
  * 校验提示
921
- */props.editRules&&validOpts.showMessage&&(validOpts.message==='default'?!height:validOpts.message==='tooltip')?(0,_vue.h)(VxeUITooltipComponent,{key:'vtp',ref:refValidTooltip,class:[{'old-cell-valid':editRules&&getConfig().cellVaildMode==='obsolete'},'vxe-table--valid-error'],theme:validTipConfig.theme,enterable:validTipConfig.enterable,enterDelay:validTipConfig.enterDelay,leaveDelay:validTipConfig.leaveDelay}):renderEmptyElement($xeTable)]):renderEmptyElement($xeTable)]);};const dataFlag=(0,_vue.ref)(0);(0,_vue.watch)(()=>props.data?props.data.length:-1,()=>{dataFlag.value++;});(0,_vue.watch)(()=>props.data,()=>{dataFlag.value++;});(0,_vue.watch)(dataFlag,()=>{const{initStatus}=internalData;const value=props.data||[];if(value&&value.length>=20000){(0,_log.warnLog)('vxe.error.errLargeData',['loadData(data), reloadData(data)']);}loadTableData(value,true).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;const expandOpts=computeExpandOpts.value;internalData.inited=true;internalData.initStatus=true;if(!initStatus){handleLoadDefaults();}// const checkboxOpts = computeCheckboxOpts.value
922
+ */props.editRules&&validOpts.showMessage&&(validOpts.message==='default'?!height:validOpts.message==='tooltip')?(0,_vue.h)(VxeUITooltipComponent,{key:'vtp',ref:refValidTooltip,class:[{'old-cell-valid':editRules&&getConfig().cellVaildMode==='obsolete'},'vxe-table--valid-error'],theme:validTipConfig.theme,enterable:validTipConfig.enterable,enterDelay:validTipConfig.enterDelay,leaveDelay:validTipConfig.leaveDelay}):renderEmptyElement($xeTable)]):renderEmptyElement($xeTable)]);};const dataFlag=(0,_vue.ref)(0);(0,_vue.watch)(()=>props.data?props.data.length:-1,()=>{dataFlag.value++;});(0,_vue.watch)(()=>props.data,()=>{dataFlag.value++;});(0,_vue.watch)(dataFlag,()=>{const{initStatus}=internalData;const value=props.data||[];if(value&&value.length>=20000){(0,_log.warnLog)('vxe.error.errLargeData',['loadData(data), reloadData(data)']);}loadTableData(value,false,true).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;const expandOpts=computeExpandOpts.value;internalData.inited=true;internalData.initStatus=true;if(!initStatus){handleLoadDefaults();}// const checkboxOpts = computeCheckboxOpts.value
922
923
  // const checkboxColumn = internalData.tableFullColumn.find(column => column.type === 'checkbox')
923
924
  // if (checkboxColumn && internalData.tableFullData.length > 300 && !checkboxOpts.checkField) {
924
925
  // warnLog('vxe.error.checkProp', ['checkbox-config.checkField'])