vxe-table 3.25.0-beta.4 → 3.25.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/style.css +1 -1
- package/es/table/src/methods.js +18 -192
- package/es/table/src/table.js +2 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +7 -13
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/src/methods.js +4 -10
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +1 -1
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/table/src/methods.ts +20 -208
- package/packages/table/src/table.ts +17 -15
- /package/es/{iconfont.1792139868734.ttf → iconfont.1792220310836.ttf} +0 -0
- /package/es/{iconfont.1792139868734.woff → iconfont.1792220310836.woff} +0 -0
- /package/es/{iconfont.1792139868734.woff2 → iconfont.1792220310836.woff2} +0 -0
- /package/lib/{iconfont.1792139868734.ttf → iconfont.1792220310836.ttf} +0 -0
- /package/lib/{iconfont.1792139868734.woff → iconfont.1792220310836.woff} +0 -0
- /package/lib/{iconfont.1792139868734.woff2 → iconfont.1792220310836.woff2} +0 -0
package/es/table/src/methods.js
CHANGED
|
@@ -9,8 +9,7 @@ import { moveRowAnimateToTb, clearRowAnimate, moveColAnimateToLr, clearColAnimat
|
|
|
9
9
|
import { createComponentLog } from '../../ui/src/log';
|
|
10
10
|
import { getCrossTableDragRowInfo } from './store';
|
|
11
11
|
const { warnLog, errLog } = createComponentLog('table');
|
|
12
|
-
const { getConfig, getI18n, renderer,
|
|
13
|
-
const { getThumbOffsetSize, getThumbSize, getScrollFromClick, getScrollFromDrag } = scrollbarUtils || {};
|
|
12
|
+
const { getConfig, getI18n, renderer, formats, interceptor, createEvent, globalEvents, GLOBAL_EVENT_KEYS } = VxeUI;
|
|
14
13
|
const supportMaxRow = 5e6;
|
|
15
14
|
const customStorageKey = 'VXE_CUSTOM_STORE';
|
|
16
15
|
const maxYHeight = 5e6;
|
|
@@ -4679,6 +4678,13 @@ const tableMethods = {
|
|
|
4679
4678
|
const $xeTable = this;
|
|
4680
4679
|
return $xeTable.$refs.refElem;
|
|
4681
4680
|
},
|
|
4681
|
+
getScrollViewElem() {
|
|
4682
|
+
const $xeTable = this;
|
|
4683
|
+
const internalData = $xeTable;
|
|
4684
|
+
const { elemStore } = internalData;
|
|
4685
|
+
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
4686
|
+
return viewEl;
|
|
4687
|
+
},
|
|
4682
4688
|
/**
|
|
4683
4689
|
* 获取父容器元素
|
|
4684
4690
|
*/
|
|
@@ -13559,196 +13565,6 @@ const tableMethods = {
|
|
|
13559
13565
|
const $xeTable = this;
|
|
13560
13566
|
return $xeTable.handleClearStack();
|
|
13561
13567
|
},
|
|
13562
|
-
// 滚动条
|
|
13563
|
-
updateThumbSize() {
|
|
13564
|
-
const $xeTable = this;
|
|
13565
|
-
const reactData = $xeTable;
|
|
13566
|
-
const internalData = $xeTable;
|
|
13567
|
-
const { elemStore } = internalData;
|
|
13568
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13569
|
-
if (!viewEl) {
|
|
13570
|
-
return;
|
|
13571
|
-
}
|
|
13572
|
-
if (!viewEl.clientHeight || !viewEl.clientHeight) {
|
|
13573
|
-
return;
|
|
13574
|
-
}
|
|
13575
|
-
const trackXEl = $xeTable.$refs.refTrackXElem;
|
|
13576
|
-
const xThumbWidth = trackXEl ? getThumbSize(viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth) : 0;
|
|
13577
|
-
const thumbXElem = $xeTable.$refs.refThumbXElem;
|
|
13578
|
-
if (thumbXElem) {
|
|
13579
|
-
thumbXElem.style.width = xThumbWidth + 'px';
|
|
13580
|
-
}
|
|
13581
|
-
reactData.xThumbWidth = xThumbWidth;
|
|
13582
|
-
const trackYEl = $xeTable.$refs.refTrackYElem;
|
|
13583
|
-
const yThumbHeight = trackYEl ? getThumbSize(viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight) : 0;
|
|
13584
|
-
const thumbYElem = $xeTable.$refs.refThumbYElem;
|
|
13585
|
-
if (thumbYElem) {
|
|
13586
|
-
thumbYElem.style.height = yThumbHeight + 'px';
|
|
13587
|
-
}
|
|
13588
|
-
reactData.yThumbHeight = yThumbHeight;
|
|
13589
|
-
},
|
|
13590
|
-
updateThumbOffset() {
|
|
13591
|
-
const $xeTable = this;
|
|
13592
|
-
const reactData = $xeTable;
|
|
13593
|
-
const internalData = $xeTable;
|
|
13594
|
-
const { elemStore } = internalData;
|
|
13595
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13596
|
-
if (!viewEl) {
|
|
13597
|
-
return;
|
|
13598
|
-
}
|
|
13599
|
-
if (!viewEl.clientHeight || !viewEl.clientHeight) {
|
|
13600
|
-
return;
|
|
13601
|
-
}
|
|
13602
|
-
const { xThumbWidth, yThumbHeight } = reactData;
|
|
13603
|
-
const trackXEl = $xeTable.$refs.refTrackXElem;
|
|
13604
|
-
const thumbXElem = $xeTable.$refs.refThumbXElem;
|
|
13605
|
-
const xThumbLeft = trackXEl && xThumbWidth ? getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth, xThumbWidth) : 0;
|
|
13606
|
-
internalData.xThumbLeft = xThumbLeft;
|
|
13607
|
-
if (thumbXElem && xThumbWidth) {
|
|
13608
|
-
thumbXElem.style.width = xThumbWidth + 'px';
|
|
13609
|
-
thumbXElem.style.transform = `translateX(${xThumbLeft}px)`;
|
|
13610
|
-
}
|
|
13611
|
-
const trackYEl = $xeTable.$refs.refTrackYElem;
|
|
13612
|
-
const thumbYElem = $xeTable.$refs.refThumbYElem;
|
|
13613
|
-
const yThumbTop = trackYEl && yThumbHeight ? getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight, yThumbHeight) : 0;
|
|
13614
|
-
internalData.yThumbTop = yThumbTop;
|
|
13615
|
-
if (thumbYElem && yThumbHeight) {
|
|
13616
|
-
thumbYElem.style.height = yThumbHeight + 'px';
|
|
13617
|
-
thumbYElem.style.transform = `translateY(${yThumbTop}px)`;
|
|
13618
|
-
}
|
|
13619
|
-
},
|
|
13620
|
-
clickTrackXEvent(evnt) {
|
|
13621
|
-
const $xeTable = this;
|
|
13622
|
-
const reactData = $xeTable;
|
|
13623
|
-
const internalData = $xeTable;
|
|
13624
|
-
const { elemStore } = internalData;
|
|
13625
|
-
const trackEl = evnt.currentTarget;
|
|
13626
|
-
if (trackEl !== evnt.target) {
|
|
13627
|
-
return;
|
|
13628
|
-
}
|
|
13629
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13630
|
-
if (!viewEl) {
|
|
13631
|
-
return;
|
|
13632
|
-
}
|
|
13633
|
-
const { xThumbWidth } = reactData;
|
|
13634
|
-
const trackRect = trackEl.getBoundingClientRect();
|
|
13635
|
-
viewEl.scrollTo({
|
|
13636
|
-
left: getScrollFromClick(evnt.clientX - trackRect.left, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth),
|
|
13637
|
-
behavior: 'auto'
|
|
13638
|
-
});
|
|
13639
|
-
},
|
|
13640
|
-
clickTrackYEvent(evnt) {
|
|
13641
|
-
const $xeTable = this;
|
|
13642
|
-
const reactData = $xeTable;
|
|
13643
|
-
const internalData = $xeTable;
|
|
13644
|
-
const trackEl = evnt.currentTarget;
|
|
13645
|
-
if (trackEl !== evnt.target) {
|
|
13646
|
-
return;
|
|
13647
|
-
}
|
|
13648
|
-
const { elemStore } = internalData;
|
|
13649
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13650
|
-
if (!viewEl) {
|
|
13651
|
-
return;
|
|
13652
|
-
}
|
|
13653
|
-
const { yThumbHeight } = reactData;
|
|
13654
|
-
const trackRect = trackEl.getBoundingClientRect();
|
|
13655
|
-
viewEl.scrollTo({
|
|
13656
|
-
top: getScrollFromClick(evnt.clientY - trackRect.top, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight),
|
|
13657
|
-
behavior: 'auto'
|
|
13658
|
-
});
|
|
13659
|
-
},
|
|
13660
|
-
pointerdownThumbXEvent(evnt) {
|
|
13661
|
-
const $xeTable = this;
|
|
13662
|
-
const reactData = $xeTable;
|
|
13663
|
-
const internalData = $xeTable;
|
|
13664
|
-
const { elemStore } = internalData;
|
|
13665
|
-
const thumbEl = evnt.currentTarget;
|
|
13666
|
-
internalData.isThumbDrag = true;
|
|
13667
|
-
thumbEl.setPointerCapture(evnt.pointerId);
|
|
13668
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13669
|
-
if (!viewEl) {
|
|
13670
|
-
return;
|
|
13671
|
-
}
|
|
13672
|
-
const { xThumbWidth } = reactData;
|
|
13673
|
-
const trackEl = thumbEl.parentElement;
|
|
13674
|
-
const trackRect = trackEl.getBoundingClientRect();
|
|
13675
|
-
const pointerPosition = evnt.clientX - trackRect.left;
|
|
13676
|
-
// 记录 thumb 的偏移
|
|
13677
|
-
const thumbOffset = getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
|
|
13678
|
-
internalData.thumbDragOffset = pointerPosition - thumbOffset;
|
|
13679
|
-
},
|
|
13680
|
-
pointermoveThumbXEvent(evnt) {
|
|
13681
|
-
const $xeTable = this;
|
|
13682
|
-
const reactData = $xeTable;
|
|
13683
|
-
const internalData = $xeTable;
|
|
13684
|
-
const thumbEl = evnt.currentTarget;
|
|
13685
|
-
if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
|
|
13686
|
-
return;
|
|
13687
|
-
}
|
|
13688
|
-
const { elemStore, isThumbDrag, thumbDragOffset } = internalData;
|
|
13689
|
-
if (isThumbDrag) {
|
|
13690
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13691
|
-
if (!viewEl) {
|
|
13692
|
-
return;
|
|
13693
|
-
}
|
|
13694
|
-
const { xThumbWidth } = reactData;
|
|
13695
|
-
const thumbEl = evnt.currentTarget;
|
|
13696
|
-
const trackEl = thumbEl.parentElement;
|
|
13697
|
-
const trackRect = trackEl.getBoundingClientRect();
|
|
13698
|
-
// 更新偏移
|
|
13699
|
-
viewEl.scrollLeft = getScrollFromDrag(evnt.clientX - trackRect.left, thumbDragOffset, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
|
|
13700
|
-
}
|
|
13701
|
-
},
|
|
13702
|
-
cleatPointerThumbEvent(evnt) {
|
|
13703
|
-
const $xeTable = this;
|
|
13704
|
-
const internalData = $xeTable;
|
|
13705
|
-
const thumbEl = evnt.currentTarget;
|
|
13706
|
-
thumbEl.releasePointerCapture(evnt.pointerId);
|
|
13707
|
-
internalData.isThumbDrag = false;
|
|
13708
|
-
},
|
|
13709
|
-
pointerdownThumbYEvent(evnt) {
|
|
13710
|
-
const $xeTable = this;
|
|
13711
|
-
const reactData = $xeTable;
|
|
13712
|
-
const internalData = $xeTable;
|
|
13713
|
-
const { elemStore } = internalData;
|
|
13714
|
-
const thumbEl = evnt.currentTarget;
|
|
13715
|
-
internalData.isThumbDrag = true;
|
|
13716
|
-
thumbEl.setPointerCapture(evnt.pointerId);
|
|
13717
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13718
|
-
if (!viewEl) {
|
|
13719
|
-
return;
|
|
13720
|
-
}
|
|
13721
|
-
const { yThumbHeight } = reactData;
|
|
13722
|
-
const trackEl = thumbEl.parentElement;
|
|
13723
|
-
const trackRect = trackEl.getBoundingClientRect();
|
|
13724
|
-
const pointerPosition = evnt.clientY - trackRect.top;
|
|
13725
|
-
// 记录 thumb 的偏移
|
|
13726
|
-
const thumbOffset = getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
|
|
13727
|
-
internalData.thumbDragOffset = pointerPosition - thumbOffset;
|
|
13728
|
-
},
|
|
13729
|
-
pointermoveThumbYEvent(evnt) {
|
|
13730
|
-
const $xeTable = this;
|
|
13731
|
-
const reactData = $xeTable;
|
|
13732
|
-
const internalData = $xeTable;
|
|
13733
|
-
const thumbEl = evnt.currentTarget;
|
|
13734
|
-
if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
|
|
13735
|
-
return;
|
|
13736
|
-
}
|
|
13737
|
-
const { elemStore, isThumbDrag, thumbDragOffset } = internalData;
|
|
13738
|
-
if (isThumbDrag) {
|
|
13739
|
-
const viewEl = getRefElem(elemStore['main-body-scroll']);
|
|
13740
|
-
if (!viewEl) {
|
|
13741
|
-
return;
|
|
13742
|
-
}
|
|
13743
|
-
const { yThumbHeight } = reactData;
|
|
13744
|
-
const thumbEl = evnt.currentTarget;
|
|
13745
|
-
const trackEl = thumbEl.parentElement;
|
|
13746
|
-
const trackRect = trackEl.getBoundingClientRect();
|
|
13747
|
-
// 更新偏移
|
|
13748
|
-
viewEl.scrollTop = getScrollFromDrag(evnt.clientY - trackRect.top, thumbDragOffset, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
|
|
13749
|
-
}
|
|
13750
|
-
},
|
|
13751
|
-
// 滚动条
|
|
13752
13568
|
dispatchEvent(type, params, evnt) {
|
|
13753
13569
|
const $xeTable = this;
|
|
13754
13570
|
const $xeGrid = $xeTable.$xeGrid;
|
|
@@ -13805,6 +13621,16 @@ const tableMethods = {
|
|
|
13805
13621
|
}
|
|
13806
13622
|
return $xeTable.$nextTick();
|
|
13807
13623
|
},
|
|
13624
|
+
getInternalData() {
|
|
13625
|
+
const $xeTable = this;
|
|
13626
|
+
const internalData = $xeTable;
|
|
13627
|
+
return internalData;
|
|
13628
|
+
},
|
|
13629
|
+
getReactData() {
|
|
13630
|
+
const $xeTable = this;
|
|
13631
|
+
const reactData = $xeTable;
|
|
13632
|
+
return reactData;
|
|
13633
|
+
},
|
|
13808
13634
|
/*************************
|
|
13809
13635
|
* Publish methods
|
|
13810
13636
|
*************************/
|
package/es/table/src/table.js
CHANGED
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
const { log } = VxeUI;
|
|
3
|
-
const tableVersion = `table v${"3.25.0-beta.
|
|
3
|
+
const tableVersion = `table v${"3.25.0-beta.5"}`;
|
|
4
4
|
export function createComponentLog(name) {
|
|
5
5
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
6
6
|
const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
|
package/lib/index.umd.js
CHANGED
|
@@ -3323,7 +3323,7 @@ function getDefaultConfig(val1, def1) {
|
|
|
3323
3323
|
/* unused harmony import specifier */ var VxeUI;
|
|
3324
3324
|
|
|
3325
3325
|
|
|
3326
|
-
const version = "3.25.0-beta.
|
|
3326
|
+
const version = "3.25.0-beta.5";
|
|
3327
3327
|
core_.VxeUI.version = version;
|
|
3328
3328
|
core_.VxeUI.tableVersion = version;
|
|
3329
3329
|
core_.VxeUI.setConfig({
|
|
@@ -4286,7 +4286,7 @@ function getPopupAppendElement(appendTo) {
|
|
|
4286
4286
|
const {
|
|
4287
4287
|
log: log_log
|
|
4288
4288
|
} = core_.VxeUI;
|
|
4289
|
-
const tableVersion = `table v${"3.25.0-beta.
|
|
4289
|
+
const tableVersion = `table v${"3.25.0-beta.5"}`;
|
|
4290
4290
|
function createComponentLog(name) {
|
|
4291
4291
|
const uiVersion = core_.VxeUI.uiVersion ? `ui v${core_.VxeUI.uiVersion}` : '';
|
|
4292
4292
|
const ganttVersion = core_.VxeUI.ganttVersion ? `gantt v${core_.VxeUI.ganttVersion}` : '';
|
|
@@ -8066,7 +8066,7 @@ function getCrossTableDragRowInfo($xeTable) {
|
|
|
8066
8066
|
return crossTableDragRowInfo;
|
|
8067
8067
|
}
|
|
8068
8068
|
;// ./packages/table/src/methods.ts
|
|
8069
|
-
const{warnLog: methods_warnLog,errLog: methods_errLog}=createComponentLog('table');const{getConfig: methods_getConfig,getI18n: methods_getI18n,renderer: methods_renderer,
|
|
8069
|
+
const{warnLog: methods_warnLog,errLog: methods_errLog}=createComponentLog('table');const{getConfig: methods_getConfig,getI18n: methods_getI18n,renderer: methods_renderer,formats: methods_formats,interceptor: methods_interceptor,createEvent,globalEvents: methods_globalEvents,GLOBAL_EVENT_KEYS}=core_.VxeUI;const supportMaxRow=5e6;const customStorageKey='VXE_CUSTOM_STORE';const maxYHeight=5e6;const maxXWidth=5e6;const sourceType='table';let crossTableDragRowObj=null;function eqCellValue(newRow,oldRow,field){const val1=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(newRow,field);const val2=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(oldRow,field);let result=false;if(eqEmptyValue(val1)&&eqEmptyValue(val2)){result=true;}else if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(val1)||external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(val1)){result=''+val1===''+val2;}else{result=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isEqual(val1,val2);}return{newValue:val1,oldValue:val2,result};}function getNextSortOrder($xeTable,column){const sortOpts=$xeTable.computeSortOpts;const{orders=[]}=sortOpts;const currOrder=column.order||null;const oIndex=orders.indexOf(currOrder)+1;return orders[oIndex<orders.length?oIndex:0];}const getCustomStorageMap=id=>{const version=methods_getConfig().version;const rest=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toStringJSON(localStorage.getItem(customStorageKey)||'');const maps=rest&&rest._v===version?rest:{_v:version};return(id?maps[id]:maps)||{};};const setCustomStorageMap=(id,data)=>{const version=methods_getConfig().version;const maps=getCustomStorageMap();maps[id]=data||undefined;maps._v=version;localStorage.setItem(customStorageKey,external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toJSONString(maps));};const getRecoverRowMaps=($xeTable,keyMaps)=>{const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const restKeys={};external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(keyMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){restKeys[rowid]=row;}});return restKeys;};function handleReserveRow($xeTable,reserveRowMap){const internalData=$xeTable;const{fullDataRowIdData}=internalData;const reserveList=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(reserveRowMap,(item,rowid)=>{if(fullDataRowIdData[rowid]&&reserveList.indexOf(fullDataRowIdData[rowid].row)===-1){reserveList.push(fullDataRowIdData[rowid].row);}});return reserveList;}function handleVirtualXVisible($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{isScrollXBig,scrollXWidth}=reactData;const{elemStore,visibleColumn,fullColumnIdData}=internalData;const leftFixedWidth=$xeTable.computeLeftFixedWidth;const rightFixedWidth=$xeTable.computeRightFixedWidth;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(bodyScrollElem){const clientWidth=bodyScrollElem.clientWidth;let scrollLeft=bodyScrollElem.scrollLeft;if(isScrollXBig){scrollLeft=Math.ceil((scrollXWidth-clientWidth)*Math.min(1,scrollLeft/(maxXWidth-clientWidth)));}const startLeft=scrollLeft+leftFixedWidth;const endLeft=scrollLeft+clientWidth-rightFixedWidth;let leftIndex=0;let rightIndex=visibleColumn.length;while(leftIndex<rightIndex){const cIndex=Math.floor((leftIndex+rightIndex)/2);const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};if(colRest.oLeft<=startLeft){leftIndex=cIndex+1;}else{rightIndex=cIndex;}}let visibleSize=0;const toVisibleIndex=leftIndex===visibleColumn.length?leftIndex:Math.max(0,leftIndex<visibleColumn.length?leftIndex-2:0);for(let cIndex=toVisibleIndex,cLen=visibleColumn.length;cIndex<cLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};visibleSize++;if(colRest.oLeft>endLeft||visibleSize>=60){break;}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(6,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};}function handleCustomRestore($xeTable,storeData){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const $xeGrid=$xeTable.$xeGrid;const $xeGantt=$xeTable.$xeGantt;const $xeGGWrapper=$xeGrid||$xeGantt;const{aggregateConfig,rowGroupConfig}=props;const{collectColumn}=internalData;const{isCustomAlign,isCustomHeaderAlign,isCustomFooterAlign,isCustomResizable,isCustomVisible,isCustomFixed,isCustomSort,isCustomAggGroup,isCustomAggFunc,isCustomPager}=handleCustomStoreConfig($xeTable);let{alignData,headerAlignData,footerAlignData,resizableData,sortData,visibleData,fixedData,aggGroupData,aggFuncData,pagerData}=storeData;// 处理还原
|
|
8070
8070
|
if(isCustomAlign&&alignData||isCustomHeaderAlign&&headerAlignData||isCustomFooterAlign&&footerAlignData||isCustomResizable&&resizableData||isCustomSort&&sortData||isCustomVisible&&visibleData||isCustomFixed&&fixedData||isCustomAggGroup&&aggGroupData||isCustomAggFunc&&aggFuncData||isCustomPager&&pagerData&&$xeGGWrapper){const sortColMaps={};if(isCustomSort&&sortData){// 转换兼容老版本数据,即将废弃兼容
|
|
8071
8071
|
if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(sortData)){const sortRests=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(sortData,(index,colKey)=>{sortRests.push({key:colKey,index});});sortData=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(sortRests,{field:'index',order:'asc'}).map(item=>({k:item.key}));}let colNum=1;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(sortData,(sObj,index,sOjs,path,pSObj)=>{sortColMaps[sObj.k]={key:sObj.k,sNum:colNum++,pKey:pSObj?pSObj.k:null};},{children:'c'});}const colKeyMaps={};const allCols=[];const aggGroupConfs=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const colKey=column.getKey();// 支持一级
|
|
8072
8072
|
if(!parentColumn){if(isCustomFixed&&fixedData&&fixedData[colKey]!==undefined){column.fixed=fixedData[colKey];}}if(isCustomResizable&&resizableData&&external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(resizableData[colKey])){column.resizeWidth=resizableData[colKey];}if(isCustomVisible&&visibleData&&external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(visibleData[colKey])){column.visible=visibleData[colKey];}if(isCustomAggFunc&&aggFuncData&&(aggregateConfig||rowGroupConfig)&&aggFuncData[colKey]){column.aggFunc=aggFuncData[colKey];}if(isCustomAggGroup&&aggGroupData&&aggGroupData[colKey]){aggGroupConfs.push({field:column.field});}colKeyMaps[colKey]=column;allCols.push(column);});if((aggregateConfig||rowGroupConfig)&&aggGroupConfs.length){const groupRest=handleGroupData($xeTable,internalData.tableFullData,aggGroupConfs);internalData.tableFullTreeData=[];internalData.tableFullGroupData=groupRest.treeData;reactData.isRowGroupStatus=true;reactData.rowGroupList=aggGroupConfs;$xeTable.cacheRowMap(false);}// 如果自定义了顺序
|
|
@@ -8323,7 +8323,7 @@ if(expandColumn&&rowExpandedMaps[rowid]){offsetTop+=rowRest.expandHeight||expand
|
|
|
8323
8323
|
const $xeGrid=$xeTable.$xeGrid;const $xeGantt=$xeTable.$xeGantt;const $xeGGWrapper=$xeGrid||$xeGantt;if(slotFunc){if($xeGGWrapper){return $xeGGWrapper.callSlot(slotFunc,params,h);}// if (XEUtils.isString(slotFunc)) {
|
|
8324
8324
|
// slotFunc = slots[slotFunc] || null
|
|
8325
8325
|
// }
|
|
8326
|
-
if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(slotFunc)){return getSlotVNs(slotFunc.call(this,params,h,vNodes));}}return[];},getEl(){const $xeTable=this;return $xeTable.$refs.refElem;},/**
|
|
8326
|
+
if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(slotFunc)){return getSlotVNs(slotFunc.call(this,params,h,vNodes));}}return[];},getEl(){const $xeTable=this;return $xeTable.$refs.refElem;},getScrollViewElem(){const $xeTable=this;const internalData=$xeTable;const{elemStore}=internalData;const viewEl=getRefElem(elemStore['main-body-scroll']);return viewEl;},/**
|
|
8327
8327
|
* 获取父容器元素
|
|
8328
8328
|
*/getParentElem(){const $xeTable=this;const $xeGrid=$xeTable.$xeGrid;const $xeGantt=$xeTable.$xeGantt;const el=$xeTable.$refs.refElem;if(!el){return null;}const parentEl=el.parentElement;if(!parentEl){return null;}if($xeGantt&&hasClass(parentEl,'vxe-gantt--table-wrapper')){return $xeGantt.getParentElem();}else if($xeGrid&&hasClass(parentEl,'vxe-grid--table-wrapper')){return $xeGrid.getParentElem();}// 如果是虚拟滚动条
|
|
8329
8329
|
if(parentEl&&hasClass(parentEl,'vxe-scrollbar--view-inner')){return parentEl.parentElement;}return parentEl;},/**
|
|
@@ -8952,20 +8952,14 @@ return $xeTable.removeMergeFooterCells(merges);},/**
|
|
|
8952
8952
|
return $xeTable.getMergeFooterCells();},/**
|
|
8953
8953
|
* 清除所有表尾合并
|
|
8954
8954
|
*/clearMergeFooterCells(){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;internalData.mergeFooterList=[];internalData.mergeFooterMaps={};internalData.mergeFooterCellMaps={};internalData.mergeFooterRowMaps={};internalData.mergeFooterColMaps={};reactData.mergeFootFlag++;return $xeTable.$nextTick().then(()=>{return updateStyle($xeTable);});},clearMergeFooterItems(){const $xeTable=this;// errLog('vxe.error.delFunc', ['clearMergeFooterItems', 'clearMergeFooterCells'])
|
|
8955
|
-
return $xeTable.clearMergeFooterCells();},handleUpdateAggData(){const $xeTable=this;const internalData=$xeTable;return loadTableData($xeTable,internalData.tableSynchData,false,true);},handlePushStack(){const $xeTable=this;const internalData=$xeTable;const keyboardOpts=$xeTable.computeKeyboardOpts;if(!keyboardOpts.isUndoRedo){return;}const{stackHistoryStore}=internalData;const stackObj=getSnapshotStackData($xeTable);stackHistoryStore.undoStacks.push(stackObj);stackHistoryStore.redoStacks=[];truncateStackHistory($xeTable);},handleUndoStackEvent(evnt){const $xeTable=this;const internalData=$xeTable;const{stackHistoryStore}=internalData;const{undoStacks,redoStacks}=stackHistoryStore;if(undoStacks.length){const stackObj=getSnapshotStackData($xeTable);redoStacks.push(stackObj);handleUpdateSnapshotStackData($xeTable,undoStacks.pop());if(evnt){$xeTable.dispatchEvent('undo',{},evnt);}return $xeTable.$nextTick(()=>{return{status:true};});}return Promise.resolve({status:false});},handleRedoStackEvent(evnt){const $xeTable=this;const internalData=$xeTable;const{stackHistoryStore}=internalData;const{undoStacks,redoStacks}=stackHistoryStore;if(redoStacks.length){const stackObj=getSnapshotStackData($xeTable);undoStacks.push(stackObj);handleUpdateSnapshotStackData($xeTable,redoStacks.pop());if(evnt){$xeTable.dispatchEvent('redo',{},evnt);}return $xeTable.$nextTick(()=>{return{status:true};});}return Promise.resolve({status:false});},handleClearStack(){const $xeTable=this;const internalData=$xeTable;const{stackHistoryStore}=internalData;stackHistoryStore.undoStacks=[];stackHistoryStore.redoStacks=[];return $xeTable.$nextTick();},updateZindex(){const $xeTable=this;const props=$xeTable;const internalData=$xeTable;if(props.zIndex){internalData.tZindex=props.zIndex;}else if(internalData.tZindex<getLastZIndex()){internalData.tZindex=nextZIndex();}},updateCellAreas(){const $xeTable=this;const props=$xeTable;const{mouseConfig}=props;const mouseOpts=$xeTable.computeMouseOpts;if(hasEnableConf(mouseConfig,mouseOpts)&&mouseOpts.area&&$xeTable.handleRecalculateCellAreaEvent){return $xeTable.handleRecalculateCellAreaEvent();}return $xeTable.$nextTick();},undo(){const $xeTable=this;return $xeTable.handleUndoStackEvent(null);},redo(){const $xeTable=this;return $xeTable.handleRedoStackEvent(null);},clearHistory(){const $xeTable=this;return $xeTable.handleClearStack();},//
|
|
8956
|
-
updateThumbSize(){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{elemStore}=internalData;const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}if(!viewEl.clientHeight||!viewEl.clientHeight){return;}const trackXEl=$xeTable.$refs.refTrackXElem;const xThumbWidth=trackXEl?getThumbSize(viewEl.clientWidth,viewEl.scrollWidth,trackXEl.clientWidth):0;const thumbXElem=$xeTable.$refs.refThumbXElem;if(thumbXElem){thumbXElem.style.width=xThumbWidth+'px';}reactData.xThumbWidth=xThumbWidth;const trackYEl=$xeTable.$refs.refTrackYElem;const yThumbHeight=trackYEl?getThumbSize(viewEl.clientHeight,viewEl.scrollHeight,trackYEl.clientHeight):0;const thumbYElem=$xeTable.$refs.refThumbYElem;if(thumbYElem){thumbYElem.style.height=yThumbHeight+'px';}reactData.yThumbHeight=yThumbHeight;},updateThumbOffset(){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{elemStore}=internalData;const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}if(!viewEl.clientHeight||!viewEl.clientHeight){return;}const{xThumbWidth,yThumbHeight}=reactData;const trackXEl=$xeTable.$refs.refTrackXElem;const thumbXElem=$xeTable.$refs.refThumbXElem;const xThumbLeft=trackXEl&&xThumbWidth?getThumbOffsetSize(viewEl.scrollLeft,viewEl.clientWidth,viewEl.scrollWidth,trackXEl.clientWidth,xThumbWidth):0;internalData.xThumbLeft=xThumbLeft;if(thumbXElem&&xThumbWidth){thumbXElem.style.width=xThumbWidth+'px';thumbXElem.style.transform=`translateX(${xThumbLeft}px)`;}const trackYEl=$xeTable.$refs.refTrackYElem;const thumbYElem=$xeTable.$refs.refThumbYElem;const yThumbTop=trackYEl&&yThumbHeight?getThumbOffsetSize(viewEl.scrollTop,viewEl.clientHeight,viewEl.scrollHeight,trackYEl.clientHeight,yThumbHeight):0;internalData.yThumbTop=yThumbTop;if(thumbYElem&&yThumbHeight){thumbYElem.style.height=yThumbHeight+'px';thumbYElem.style.transform=`translateY(${yThumbTop}px)`;}},clickTrackXEvent(evnt){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{elemStore}=internalData;const trackEl=evnt.currentTarget;if(trackEl!==evnt.target){return;}const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}const{xThumbWidth}=reactData;const trackRect=trackEl.getBoundingClientRect();viewEl.scrollTo({left:getScrollFromClick(evnt.clientX-trackRect.left,viewEl.clientWidth,viewEl.scrollWidth,trackEl.clientWidth,xThumbWidth),behavior:'auto'});},clickTrackYEvent(evnt){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const trackEl=evnt.currentTarget;if(trackEl!==evnt.target){return;}const{elemStore}=internalData;const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}const{yThumbHeight}=reactData;const trackRect=trackEl.getBoundingClientRect();viewEl.scrollTo({top:getScrollFromClick(evnt.clientY-trackRect.top,viewEl.clientHeight,viewEl.scrollHeight,trackEl.clientHeight,yThumbHeight),behavior:'auto'});},pointerdownThumbXEvent(evnt){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{elemStore}=internalData;const thumbEl=evnt.currentTarget;internalData.isThumbDrag=true;thumbEl.setPointerCapture(evnt.pointerId);const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}const{xThumbWidth}=reactData;const trackEl=thumbEl.parentElement;const trackRect=trackEl.getBoundingClientRect();const pointerPosition=evnt.clientX-trackRect.left;// 记录 thumb 的偏移
|
|
8957
|
-
const thumbOffset=getThumbOffsetSize(viewEl.scrollLeft,viewEl.clientWidth,viewEl.scrollWidth,trackEl.clientWidth,xThumbWidth);internalData.thumbDragOffset=pointerPosition-thumbOffset;},pointermoveThumbXEvent(evnt){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const thumbEl=evnt.currentTarget;if(!thumbEl.hasPointerCapture(evnt.pointerId)){return;}const{elemStore,isThumbDrag,thumbDragOffset}=internalData;if(isThumbDrag){const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}const{xThumbWidth}=reactData;const thumbEl=evnt.currentTarget;const trackEl=thumbEl.parentElement;const trackRect=trackEl.getBoundingClientRect();// 更新偏移
|
|
8958
|
-
viewEl.scrollLeft=getScrollFromDrag(evnt.clientX-trackRect.left,thumbDragOffset,viewEl.clientWidth,viewEl.scrollWidth,trackEl.clientWidth,xThumbWidth);}},cleatPointerThumbEvent(evnt){const $xeTable=this;const internalData=$xeTable;const thumbEl=evnt.currentTarget;thumbEl.releasePointerCapture(evnt.pointerId);internalData.isThumbDrag=false;},pointerdownThumbYEvent(evnt){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{elemStore}=internalData;const thumbEl=evnt.currentTarget;internalData.isThumbDrag=true;thumbEl.setPointerCapture(evnt.pointerId);const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}const{yThumbHeight}=reactData;const trackEl=thumbEl.parentElement;const trackRect=trackEl.getBoundingClientRect();const pointerPosition=evnt.clientY-trackRect.top;// 记录 thumb 的偏移
|
|
8959
|
-
const thumbOffset=getThumbOffsetSize(viewEl.scrollTop,viewEl.clientHeight,viewEl.scrollHeight,trackEl.clientHeight,yThumbHeight);internalData.thumbDragOffset=pointerPosition-thumbOffset;},pointermoveThumbYEvent(evnt){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const thumbEl=evnt.currentTarget;if(!thumbEl.hasPointerCapture(evnt.pointerId)){return;}const{elemStore,isThumbDrag,thumbDragOffset}=internalData;if(isThumbDrag){const viewEl=getRefElem(elemStore['main-body-scroll']);if(!viewEl){return;}const{yThumbHeight}=reactData;const thumbEl=evnt.currentTarget;const trackEl=thumbEl.parentElement;const trackRect=trackEl.getBoundingClientRect();// 更新偏移
|
|
8960
|
-
viewEl.scrollTop=getScrollFromDrag(evnt.clientY-trackRect.top,thumbDragOffset,viewEl.clientHeight,viewEl.scrollHeight,trackEl.clientHeight,yThumbHeight);}},// 滚动条
|
|
8961
|
-
dispatchEvent(type,params,evnt){const $xeTable=this;const $xeGrid=$xeTable.$xeGrid;const $xeGantt=$xeTable.$xeGantt;$xeTable.$emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt},params));},// 已废弃,使用 dispatchEvent
|
|
8955
|
+
return $xeTable.clearMergeFooterCells();},handleUpdateAggData(){const $xeTable=this;const internalData=$xeTable;return loadTableData($xeTable,internalData.tableSynchData,false,true);},handlePushStack(){const $xeTable=this;const internalData=$xeTable;const keyboardOpts=$xeTable.computeKeyboardOpts;if(!keyboardOpts.isUndoRedo){return;}const{stackHistoryStore}=internalData;const stackObj=getSnapshotStackData($xeTable);stackHistoryStore.undoStacks.push(stackObj);stackHistoryStore.redoStacks=[];truncateStackHistory($xeTable);},handleUndoStackEvent(evnt){const $xeTable=this;const internalData=$xeTable;const{stackHistoryStore}=internalData;const{undoStacks,redoStacks}=stackHistoryStore;if(undoStacks.length){const stackObj=getSnapshotStackData($xeTable);redoStacks.push(stackObj);handleUpdateSnapshotStackData($xeTable,undoStacks.pop());if(evnt){$xeTable.dispatchEvent('undo',{},evnt);}return $xeTable.$nextTick(()=>{return{status:true};});}return Promise.resolve({status:false});},handleRedoStackEvent(evnt){const $xeTable=this;const internalData=$xeTable;const{stackHistoryStore}=internalData;const{undoStacks,redoStacks}=stackHistoryStore;if(redoStacks.length){const stackObj=getSnapshotStackData($xeTable);undoStacks.push(stackObj);handleUpdateSnapshotStackData($xeTable,redoStacks.pop());if(evnt){$xeTable.dispatchEvent('redo',{},evnt);}return $xeTable.$nextTick(()=>{return{status:true};});}return Promise.resolve({status:false});},handleClearStack(){const $xeTable=this;const internalData=$xeTable;const{stackHistoryStore}=internalData;stackHistoryStore.undoStacks=[];stackHistoryStore.redoStacks=[];return $xeTable.$nextTick();},updateZindex(){const $xeTable=this;const props=$xeTable;const internalData=$xeTable;if(props.zIndex){internalData.tZindex=props.zIndex;}else if(internalData.tZindex<getLastZIndex()){internalData.tZindex=nextZIndex();}},updateCellAreas(){const $xeTable=this;const props=$xeTable;const{mouseConfig}=props;const mouseOpts=$xeTable.computeMouseOpts;if(hasEnableConf(mouseConfig,mouseOpts)&&mouseOpts.area&&$xeTable.handleRecalculateCellAreaEvent){return $xeTable.handleRecalculateCellAreaEvent();}return $xeTable.$nextTick();},undo(){const $xeTable=this;return $xeTable.handleUndoStackEvent(null);},redo(){const $xeTable=this;return $xeTable.handleRedoStackEvent(null);},clearHistory(){const $xeTable=this;return $xeTable.handleClearStack();},dispatchEvent(type,params,evnt){const $xeTable=this;const $xeGrid=$xeTable.$xeGrid;const $xeGantt=$xeTable.$xeGantt;$xeTable.$emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt},params));},// 已废弃,使用 dispatchEvent
|
|
8962
8956
|
emitEvent(type,params,evnt){const $xeTable=this;$xeTable.dispatchEvent(type,params,evnt);},focus(){const $xeTable=this;const internalData=$xeTable;internalData.isActivated=true;return $xeTable.$nextTick();},blur(){const $xeTable=this;const internalData=$xeTable;internalData.isActivated=false;return $xeTable.$nextTick();},/**
|
|
8963
8957
|
* 已废弃,被 connectToolbar 替换
|
|
8964
8958
|
* @deprecated
|
|
8965
8959
|
*/connect($toolbar){const $xeTable=this;return $xeTable.connectToolbar($toolbar);},/**
|
|
8966
8960
|
* 连接工具栏
|
|
8967
8961
|
* @param $toolbar
|
|
8968
|
-
*/connectToolbar($toolbar){const $xeTable=this;const internalData=$xeTable;if($toolbar&&$toolbar.syncUpdate){$toolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});this.$toolbar=$toolbar;}else{methods_errLog('vxe.error.barUnableLink');}return $xeTable.$nextTick();},handleConnectGanttView($ganttView){const $xeTable=this;const internalData=$xeTable;if($ganttView&&$ganttView.connectUpdate){$ganttView.connectUpdate({$table:$xeTable});internalData.xeGanttView=$ganttView;}return $xeTable.$nextTick();},/*************************
|
|
8962
|
+
*/connectToolbar($toolbar){const $xeTable=this;const internalData=$xeTable;if($toolbar&&$toolbar.syncUpdate){$toolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});this.$toolbar=$toolbar;}else{methods_errLog('vxe.error.barUnableLink');}return $xeTable.$nextTick();},handleConnectGanttView($ganttView){const $xeTable=this;const internalData=$xeTable;if($ganttView&&$ganttView.connectUpdate){$ganttView.connectUpdate({$table:$xeTable});internalData.xeGanttView=$ganttView;}return $xeTable.$nextTick();},getInternalData(){const $xeTable=this;const internalData=$xeTable;return internalData;},getReactData(){const $xeTable=this;const reactData=$xeTable;return reactData;},/*************************
|
|
8969
8963
|
* Publish methods
|
|
8970
8964
|
*************************//**
|
|
8971
8965
|
* 已废弃,被 getCellElement 替换
|
|
@@ -21858,7 +21852,7 @@ function renderVirtualBody(h, $xeTable) {
|
|
|
21858
21852
|
}
|
|
21859
21853
|
/* harmony default export */ var table = ({
|
|
21860
21854
|
name: 'VxeTable',
|
|
21861
|
-
mixins: [table_globalMixins.sizeMixin, mixin, menu_mixin, edit_mixin, export_mixin, keyboard_mixin, validator_mixin, custom_mixin],
|
|
21855
|
+
mixins: [table_globalMixins.sizeMixin, table_globalMixins.vScrollbarMixin, table_globalMixins.initVScrollbarMixin, mixin, menu_mixin, edit_mixin, export_mixin, keyboard_mixin, validator_mixin, custom_mixin],
|
|
21862
21856
|
props: tableProps,
|
|
21863
21857
|
provide() {
|
|
21864
21858
|
const $xeTable = this;
|