vxe-gantt 4.0.0-beta.7 → 4.0.0
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/gantt/src/gantt-footer.js +35 -0
- package/es/gantt/src/gantt-header.js +1 -1
- package/es/gantt/src/gantt-view.js +16 -3
- package/es/gantt/src/gantt.js +12 -2
- package/es/gantt/style.css +8 -0
- package/es/gantt/style.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/vxe-gantt/style.css +8 -0
- package/es/vxe-gantt/style.min.css +1 -1
- package/lib/gantt/src/gantt-footer.js +45 -0
- package/lib/gantt/src/gantt-footer.min.js +1 -0
- package/lib/gantt/src/gantt-header.js +1 -1
- package/lib/gantt/src/gantt-header.min.js +1 -1
- package/lib/gantt/src/gantt-view.js +15 -3
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/gantt.js +14 -2
- package/lib/gantt/src/gantt.min.js +1 -1
- package/lib/gantt/style/style.css +8 -0
- package/lib/gantt/style/style.min.css +1 -1
- package/lib/index.umd.js +78 -14
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +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/lib/vxe-gantt/style/style.css +8 -0
- package/lib/vxe-gantt/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/gantt/src/gantt-footer.ts +44 -0
- package/packages/gantt/src/gantt-header.ts +1 -1
- package/packages/gantt/src/gantt-view.ts +17 -3
- package/packages/gantt/src/gantt.ts +14 -2
- package/styles/components/gantt.scss +11 -0
package/lib/index.umd.js
CHANGED
|
@@ -2952,7 +2952,7 @@ var core_ = __webpack_require__(4345);
|
|
|
2952
2952
|
const {
|
|
2953
2953
|
log
|
|
2954
2954
|
} = core_.VxeUI;
|
|
2955
|
-
const version = `gantt v${"4.0.0
|
|
2955
|
+
const version = `gantt v${"4.0.0"}`;
|
|
2956
2956
|
const warnLog = log.create('warn', version);
|
|
2957
2957
|
const errLog = log.create('error', version);
|
|
2958
2958
|
;// ./packages/ui/index.ts
|
|
@@ -2963,7 +2963,7 @@ const {
|
|
|
2963
2963
|
setIcon,
|
|
2964
2964
|
checkVersion
|
|
2965
2965
|
} = core_.VxeUI;
|
|
2966
|
-
core_.VxeUI.ganttVersion = "4.0.0
|
|
2966
|
+
core_.VxeUI.ganttVersion = "4.0.0";
|
|
2967
2967
|
setConfig({
|
|
2968
2968
|
gantt: {
|
|
2969
2969
|
// size: null,
|
|
@@ -3470,7 +3470,7 @@ function getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight) {
|
|
|
3470
3470
|
|
|
3471
3471
|
|
|
3472
3472
|
/* harmony default export */ var gantt_header = (defineVxeComponent({
|
|
3473
|
-
name: '
|
|
3473
|
+
name: 'VxeGanttViewHeader',
|
|
3474
3474
|
setup() {
|
|
3475
3475
|
const $xeGanttView = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('$xeGanttView', {});
|
|
3476
3476
|
const {
|
|
@@ -3930,6 +3930,46 @@ const {
|
|
|
3930
3930
|
return renderVN;
|
|
3931
3931
|
}
|
|
3932
3932
|
}));
|
|
3933
|
+
;// ./packages/gantt/src/gantt-footer.ts
|
|
3934
|
+
|
|
3935
|
+
|
|
3936
|
+
/* harmony default export */ var gantt_footer = (defineVxeComponent({
|
|
3937
|
+
name: 'VxeGanttViewFooter',
|
|
3938
|
+
setup() {
|
|
3939
|
+
const $xeGanttView = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('$xeGanttView', {});
|
|
3940
|
+
const {
|
|
3941
|
+
internalData
|
|
3942
|
+
} = $xeGanttView;
|
|
3943
|
+
const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
3944
|
+
const refHeaderScroll = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
3945
|
+
const renderVN = () => {
|
|
3946
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3947
|
+
ref: refElem,
|
|
3948
|
+
class: 'vxe-gantt-view--footer-wrapper'
|
|
3949
|
+
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3950
|
+
ref: refHeaderScroll,
|
|
3951
|
+
class: 'vxe-gantt-view--footer-inner-wrapper'
|
|
3952
|
+
})]);
|
|
3953
|
+
};
|
|
3954
|
+
(0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
|
|
3955
|
+
const {
|
|
3956
|
+
elemStore
|
|
3957
|
+
} = internalData;
|
|
3958
|
+
const prefix = 'main-footer-';
|
|
3959
|
+
elemStore[`${prefix}wrapper`] = refElem;
|
|
3960
|
+
elemStore[`${prefix}scroll`] = refHeaderScroll;
|
|
3961
|
+
});
|
|
3962
|
+
(0,external_commonjs_vue_commonjs2_vue_root_Vue_.onUnmounted)(() => {
|
|
3963
|
+
const {
|
|
3964
|
+
elemStore
|
|
3965
|
+
} = internalData;
|
|
3966
|
+
const prefix = 'main-footer-';
|
|
3967
|
+
elemStore[`${prefix}wrapper`] = null;
|
|
3968
|
+
elemStore[`${prefix}scroll`] = null;
|
|
3969
|
+
});
|
|
3970
|
+
return renderVN;
|
|
3971
|
+
}
|
|
3972
|
+
}));
|
|
3933
3973
|
;// ./packages/gantt/src/gantt-view.ts
|
|
3934
3974
|
|
|
3935
3975
|
|
|
@@ -3942,6 +3982,7 @@ const {
|
|
|
3942
3982
|
|
|
3943
3983
|
|
|
3944
3984
|
|
|
3985
|
+
|
|
3945
3986
|
const {
|
|
3946
3987
|
globalEvents
|
|
3947
3988
|
} = core_.VxeUI;
|
|
@@ -4278,11 +4319,13 @@ const maxYHeight = 5e6;
|
|
|
4278
4319
|
if (!el || !el.clientHeight) {
|
|
4279
4320
|
return;
|
|
4280
4321
|
}
|
|
4322
|
+
const scrollbarOpts = computeScrollbarOpts.value;
|
|
4281
4323
|
const scrollbarXToTop = computeScrollbarXToTop.value;
|
|
4324
|
+
const scrollbarYToLeft = computeScrollbarYToLeft.value;
|
|
4282
4325
|
const xLeftCornerEl = refScrollXLeftCornerElem.value;
|
|
4283
4326
|
const xRightCornerEl = refScrollXRightCornerElem.value;
|
|
4284
4327
|
const scrollXVirtualEl = refScrollXVirtualElem.value;
|
|
4285
|
-
|
|
4328
|
+
let osbWidth = scrollbarWidth;
|
|
4286
4329
|
const osbHeight = scrollbarHeight;
|
|
4287
4330
|
let tbHeight = 0;
|
|
4288
4331
|
let tHeaderHeight = 0;
|
|
@@ -4293,6 +4336,11 @@ const maxYHeight = 5e6;
|
|
|
4293
4336
|
tHeaderHeight = tableInternalData.tHeaderHeight;
|
|
4294
4337
|
tFooterHeight = tableInternalData.tFooterHeight;
|
|
4295
4338
|
}
|
|
4339
|
+
let yScrollbarVisible = 'visible';
|
|
4340
|
+
if (scrollbarYToLeft || scrollbarOpts.y && scrollbarOpts.y.visible === false) {
|
|
4341
|
+
osbWidth = 0;
|
|
4342
|
+
yScrollbarVisible = 'hidden';
|
|
4343
|
+
}
|
|
4296
4344
|
const headerScrollElem = getRefElem(elemStore['main-header-scroll']);
|
|
4297
4345
|
if (headerScrollElem) {
|
|
4298
4346
|
headerScrollElem.style.height = `${tHeaderHeight}px`;
|
|
@@ -4301,6 +4349,10 @@ const maxYHeight = 5e6;
|
|
|
4301
4349
|
if (bodyScrollElem) {
|
|
4302
4350
|
bodyScrollElem.style.height = `${tbHeight}px`;
|
|
4303
4351
|
}
|
|
4352
|
+
const footerScrollElem = getRefElem(elemStore['main-footer-scroll']);
|
|
4353
|
+
if (footerScrollElem) {
|
|
4354
|
+
footerScrollElem.style.height = `${tFooterHeight}px`;
|
|
4355
|
+
}
|
|
4304
4356
|
if (scrollXVirtualEl) {
|
|
4305
4357
|
scrollXVirtualEl.style.height = `${osbHeight}px`;
|
|
4306
4358
|
scrollXVirtualEl.style.visibility = 'visible';
|
|
@@ -4322,7 +4374,7 @@ const maxYHeight = 5e6;
|
|
|
4322
4374
|
if (scrollYVirtualEl) {
|
|
4323
4375
|
scrollYVirtualEl.style.width = `${osbWidth}px`;
|
|
4324
4376
|
scrollYVirtualEl.style.height = `${tbHeight + tHeaderHeight + tFooterHeight}px`;
|
|
4325
|
-
scrollYVirtualEl.style.visibility =
|
|
4377
|
+
scrollYVirtualEl.style.visibility = yScrollbarVisible;
|
|
4326
4378
|
}
|
|
4327
4379
|
const yTopCornerEl = refScrollYTopCornerElem.value;
|
|
4328
4380
|
if (yTopCornerEl) {
|
|
@@ -4725,7 +4777,7 @@ const maxYHeight = 5e6;
|
|
|
4725
4777
|
const renderViewport = () => {
|
|
4726
4778
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
4727
4779
|
class: 'vxe-gantt-view--viewport-wrapper'
|
|
4728
|
-
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(gantt_header), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(gantt_body)]);
|
|
4780
|
+
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(gantt_header), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(gantt_body), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(gantt_footer)]);
|
|
4729
4781
|
};
|
|
4730
4782
|
const renderBody = () => {
|
|
4731
4783
|
const scrollbarYToLeft = computeScrollbarYToLeft.value;
|
|
@@ -4832,7 +4884,7 @@ function utils_eqEmptyValue(cellValue) {
|
|
|
4832
4884
|
;// ./node_modules/vxe-table/es/ui/index.js
|
|
4833
4885
|
|
|
4834
4886
|
|
|
4835
|
-
const ui_version = "4.16.0-beta.
|
|
4887
|
+
const ui_version = "4.16.0-beta.3";
|
|
4836
4888
|
core_.VxeUI.version = ui_version;
|
|
4837
4889
|
core_.VxeUI.tableVersion = ui_version;
|
|
4838
4890
|
core_.VxeUI.setConfig({
|
|
@@ -5327,7 +5379,7 @@ var es_iterator_some = __webpack_require__(3579);
|
|
|
5327
5379
|
const {
|
|
5328
5380
|
log: log_log
|
|
5329
5381
|
} = core_.VxeUI;
|
|
5330
|
-
const log_version = `table v${"4.16.0-beta.
|
|
5382
|
+
const log_version = `table v${"4.16.0-beta.3"}`;
|
|
5331
5383
|
const log_warnLog = log_log.create('warn', log_version);
|
|
5332
5384
|
const log_errLog = log_log.create('error', log_version);
|
|
5333
5385
|
;// ./node_modules/vxe-table/es/table/src/columnInfo.js
|
|
@@ -19994,7 +20046,7 @@ if(props.spanMethod){log_warnLog('vxe.error.scrollErrProp',['span-method']);}if(
|
|
|
19994
20046
|
// 如果列被设置为固定,则清除合并状态
|
|
19995
20047
|
if(visibleColumn.length!==internalData.visibleColumn.length||!internalData.visibleColumn.every((column,index)=>column===visibleColumn[index])){$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();}visibleColumn.forEach((column,index)=>{const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest._index=index;}});handleTableColumn();handleUpdateAggValues();if(isReset){updateColumnOffsetLeft();return $xeTable.updateFooter().then(()=>{return $xeTable.recalculate();}).then(()=>{$xeTable.updateCellAreas();return $xeTable.recalculate();});}return $xeTable.updateFooter();};const initColumnHierarchy=()=>{const{collectColumn}=internalData;const fullColIdData={};const fullColFieldData={};let sortIndex=1;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const{id:colid,field}=column;const parentId=parentColumn?parentColumn.id:null;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};column.parentId=parentId;column.defaultParentId=parentId;column.sortNumber=sortIndex;column.renderSortNumber=sortIndex;sortIndex++;if(field){if(fullColFieldData[field]){log_errLog('vxe.error.colRepet',['field',field]);}fullColFieldData[field]=rest;}fullColIdData[colid]=rest;});internalData.fullColumnIdData=fullColIdData;internalData.fullColumnFieldData=fullColFieldData;};const handleInitColumn=collectColumn=>{const expandOpts=computeExpandOpts.value;internalData.collectColumn=collectColumn;const tableFullColumn=getColumnList(collectColumn);internalData.tableFullColumn=tableFullColumn;reactData.isColLoading=true;initColumnHierarchy();return Promise.resolve(restoreCustomStorage()).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;cacheColumnMap();parseColumns(true).then(()=>{if(reactData.scrollXLoad){loadScrollXData();}});$xeTable.clearMergeCells();$xeTable.clearMergeFooterItems();$xeTable.handleTableData(true);$xeTable.handleAggregateSummaryData();if((scrollXLoad||scrollYLoad)&&expandColumn&&expandOpts.mode!=='fixed'){log_warnLog('vxe.error.scrollErrProp',['column.type=expand']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if($xeToolbar){$xeToolbar.syncUpdate({collectColumn:internalData.collectColumn,$table:$xeTable});}if($xeTable.handleUpdateCustomColumn){$xeTable.handleUpdateCustomColumn();}reactData.isColLoading=false;return handleLazyRecalculate(false,true,true);});});};const updateScrollXStatus=fullColumn=>{const virtualXOpts=computeVirtualXOpts.value;const allCols=fullColumn||internalData.tableFullColumn;// 如果gt为0,则总是启用
|
|
19996
20048
|
const scrollXLoad=!!virtualXOpts.enabled&&virtualXOpts.gt>-1&&(virtualXOpts.gt===0||virtualXOpts.gt<allCols.length);reactData.scrollXLoad=scrollXLoad;return scrollXLoad;};const updateScrollYStatus=fullData=>{const{treeConfig}=props;const $xeGanttView=internalData.xeGanttView;const virtualYOpts=computeVirtualYOpts.value;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;const allList=fullData||internalData.tableFullData;// 如果gt为0,则总是启用
|
|
19997
|
-
const scrollYLoad=(transform||!treeConfig)&&!!virtualYOpts.enabled&&virtualYOpts.gt>-1&&(virtualYOpts.gt===0||virtualYOpts.gt<allList.length);reactData.scrollYLoad=scrollYLoad;if($xeGanttView){$xeGanttView.
|
|
20049
|
+
const scrollYLoad=(transform||!treeConfig)&&!!virtualYOpts.enabled&&virtualYOpts.gt>-1&&(virtualYOpts.gt===0||virtualYOpts.gt<allList.length);reactData.scrollYLoad=scrollYLoad;if($xeGanttView){$xeGanttView.handleUpdateSYStatus(scrollYLoad);}return scrollYLoad;};/**
|
|
19998
20050
|
* 展开与收起树节点
|
|
19999
20051
|
* @param rows
|
|
20000
20052
|
* @param expanded
|
|
@@ -20555,13 +20607,13 @@ if(isRollX){evnt.preventDefault();internalData.inWheelScroll=true;if(browseObj.f
|
|
|
20555
20607
|
* 对于某些特定的场景可能会用到,比如定位到某一节点
|
|
20556
20608
|
* @param {Row} row 行对象
|
|
20557
20609
|
*/scrollToTreeRow(row){const{treeConfig}=props;const{isRowGroupStatus}=reactData;const{tableFullData}=internalData;const rests=[];if(treeConfig||isRowGroupStatus){const aggregateOpts=computeAggregateOpts.value;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(tableFullData,item=>$xeTable.eqRow(item,row),{children:isRowGroupStatus?aggregateOpts.mapChildrenField:childrenField});if(matchObj){const nodes=matchObj.nodes;nodes.forEach((row,index)=>{if(index<nodes.length-1&&!$xeTable.isTreeExpandByRow(row)){rests.push($xeTable.setTreeExpand(row,true));}});}}return Promise.all(rests).then(()=>rowToVisible($xeTable,row));},updateScrollYStatus,// 更新横向 X 可视渲染上下剩余空间大小
|
|
20558
|
-
updateScrollXSpace(){const{scrollXLoad,overflowX,scrollXWidth}=reactData;const{visibleColumn,scrollXStore,elemStore,fullColumnIdData}=internalData;const mouseOpts=computeMouseOpts.value;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;if(tableBodyElem){const bodyScrollElem=util_getRefElem(elemStore['main-body-scroll']);const bodyTableElem=util_getRefElem(elemStore['main-body-table']);const headerTableElem=util_getRefElem(elemStore['main-header-table']);const footerTableElem=util_getRefElem(elemStore['main-footer-table']);let xSpaceLeft=0;const firstColumn=visibleColumn[scrollXStore.startIndex];if(firstColumn){const colRest=fullColumnIdData[firstColumn.id]||{};xSpaceLeft=colRest.oLeft;}let clientWidth=0;if(bodyScrollElem){clientWidth=bodyScrollElem.clientWidth;}// 虚拟渲染
|
|
20610
|
+
updateScrollXSpace(){const{scrollXLoad,overflowX,scrollXWidth}=reactData;const{visibleColumn,scrollXStore,elemStore,fullColumnIdData}=internalData;const $xeGanttView=internalData.xeGanttView;const mouseOpts=computeMouseOpts.value;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;if(tableBodyElem){const bodyScrollElem=util_getRefElem(elemStore['main-body-scroll']);const bodyTableElem=util_getRefElem(elemStore['main-body-table']);const headerTableElem=util_getRefElem(elemStore['main-header-table']);const footerTableElem=util_getRefElem(elemStore['main-footer-table']);let xSpaceLeft=0;const firstColumn=visibleColumn[scrollXStore.startIndex];if(firstColumn){const colRest=fullColumnIdData[firstColumn.id]||{};xSpaceLeft=colRest.oLeft;}let clientWidth=0;if(bodyScrollElem){clientWidth=bodyScrollElem.clientWidth;}// 虚拟渲染
|
|
20559
20611
|
let isScrollXBig=false;let ySpaceWidth=scrollXWidth;if(scrollXWidth>maxXWidth){// 触右
|
|
20560
|
-
if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollLeft+clientWidth>=maxXWidth){xSpaceLeft=maxXWidth-bodyTableElem.clientWidth;}else{xSpaceLeft=(maxXWidth-clientWidth)*(xSpaceLeft/(scrollXWidth-clientWidth));}ySpaceWidth=maxXWidth;isScrollXBig=true;}if(!(scrollXLoad&&overflowX)){xSpaceLeft=0;}if(headerTableElem){headerTableElem.style.transform=headerTableElem.getAttribute('xvm')?`translate(${xSpaceLeft}px, 0px)`:'';}if(bodyTableElem){bodyTableElem.style.transform=`translate(${xSpaceLeft}px, ${reactData.scrollYTop||0}px)`;}if(footerTableElem){footerTableElem.style.transform=footerTableElem.getAttribute('xvm')?`translate(${xSpaceLeft}px, 0px)`:'';}const containerList=['main'];containerList.forEach(name=>{const layoutList=['header','body','footer'];layoutList.forEach(layout=>{const xSpaceElem=util_getRefElem(elemStore[`${name}-${layout}-xSpace`]);if(xSpaceElem){xSpaceElem.style.width=scrollXLoad?`${ySpaceWidth}px`:'';}});});reactData.scrollXLeft=xSpaceLeft;reactData.scrollXWidth=ySpaceWidth;reactData.isScrollXBig=isScrollXBig;const scrollXSpaceEl=refScrollXSpaceElem.value;if(scrollXSpaceEl){scrollXSpaceEl.style.width=`${ySpaceWidth}px`;}calcScrollbar();if(isScrollXBig&&mouseOpts.area){log_errLog('vxe.error.notProp',['mouse-config.area']);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateStyle();});}},// 更新纵向 Y 可视渲染上下剩余空间大小
|
|
20612
|
+
if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollLeft+clientWidth>=maxXWidth){xSpaceLeft=maxXWidth-bodyTableElem.clientWidth;}else{xSpaceLeft=(maxXWidth-clientWidth)*(xSpaceLeft/(scrollXWidth-clientWidth));}ySpaceWidth=maxXWidth;isScrollXBig=true;}if(!(scrollXLoad&&overflowX)){xSpaceLeft=0;}if(headerTableElem){headerTableElem.style.transform=headerTableElem.getAttribute('xvm')?`translate(${xSpaceLeft}px, 0px)`:'';}if(bodyTableElem){bodyTableElem.style.transform=`translate(${xSpaceLeft}px, ${reactData.scrollYTop||0}px)`;}if(footerTableElem){footerTableElem.style.transform=footerTableElem.getAttribute('xvm')?`translate(${xSpaceLeft}px, 0px)`:'';}const containerList=['main'];containerList.forEach(name=>{const layoutList=['header','body','footer'];layoutList.forEach(layout=>{const xSpaceElem=util_getRefElem(elemStore[`${name}-${layout}-xSpace`]);if(xSpaceElem){xSpaceElem.style.width=scrollXLoad?`${ySpaceWidth}px`:'';}});});reactData.scrollXLeft=xSpaceLeft;reactData.scrollXWidth=ySpaceWidth;reactData.isScrollXBig=isScrollXBig;const scrollXSpaceEl=refScrollXSpaceElem.value;if(scrollXSpaceEl){scrollXSpaceEl.style.width=`${ySpaceWidth}px`;}calcScrollbar();if(isScrollXBig&&mouseOpts.area){log_errLog('vxe.error.notProp',['mouse-config.area']);}if($xeGanttView){$xeGanttView.handleUpdateSXSpace();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateStyle();});}},// 更新纵向 Y 可视渲染上下剩余空间大小
|
|
20561
20613
|
updateScrollYSpace(){const{isAllOverflow,overflowY,scrollYLoad,expandColumn}=reactData;const{scrollYStore,elemStore,isResizeCellHeight,afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const $xeGanttView=internalData.xeGanttView;const{startIndex}=scrollYStore;const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const bodyScrollElem=util_getRefElem(elemStore['main-body-scroll']);const bodyTableElem=util_getRefElem(elemStore['main-body-table']);const leftBodyTableElem=util_getRefElem(elemStore['left-body-table']);const rightbodyTableElem=util_getRefElem(elemStore['right-body-table']);const containerList=['main','left','right'];let ySpaceTop=0;let scrollYHeight=0;let isScrollYBig=false;if(scrollYLoad){const isCustomCellHeight=isResizeCellHeight||cellOpts.height||rowOpts.height;if(!isCustomCellHeight&&!expandColumn&&isAllOverflow){scrollYHeight=afterFullData.length*defaultRowHeight;if(scrollYHeight>table_maxYHeight){isScrollYBig=true;}ySpaceTop=Math.max(0,startIndex*defaultRowHeight);}else{const firstRow=afterFullData[startIndex];let rowid=getRowid($xeTable,firstRow);let rowRest=fullAllDataRowIdData[rowid]||{};ySpaceTop=rowRest.oTop||0;const lastRow=afterFullData[afterFullData.length-1];rowid=getRowid($xeTable,lastRow);rowRest=fullAllDataRowIdData[rowid]||{};scrollYHeight=(rowRest.oTop||0)+(rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight);// 是否展开行
|
|
20562
20614
|
if(expandColumn&&rowExpandedMaps[rowid]){scrollYHeight+=rowRest.expandHeight||expandOpts.height||0;}if(scrollYHeight>table_maxYHeight){isScrollYBig=true;}}}else{if(bodyTableElem){scrollYHeight=bodyTableElem.clientHeight;}}let clientHeight=0;if(bodyScrollElem){clientHeight=bodyScrollElem.clientHeight;}// 虚拟渲染
|
|
20563
20615
|
let ySpaceHeight=scrollYHeight;let scrollYTop=ySpaceTop;if(isScrollYBig){// 触底
|
|
20564
|
-
if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=table_maxYHeight){scrollYTop=table_maxYHeight-bodyTableElem.clientHeight;}else{scrollYTop=(table_maxYHeight-clientHeight)*(ySpaceTop/(scrollYHeight-clientHeight));}ySpaceHeight=table_maxYHeight;}if(!(scrollYLoad&&overflowY)){scrollYTop=0;}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=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=scrollYHeight;reactData.isScrollYBig=isScrollYBig;calcScrollbar();if(isScrollYBig&&mouseOpts.area){log_errLog('vxe.error.notProp',['mouse-config.area']);}if($xeGanttView){$xeGanttView.
|
|
20616
|
+
if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=table_maxYHeight){scrollYTop=table_maxYHeight-bodyTableElem.clientHeight;}else{scrollYTop=(table_maxYHeight-clientHeight)*(ySpaceTop/(scrollYHeight-clientHeight));}ySpaceHeight=table_maxYHeight;}if(!(scrollYLoad&&overflowY)){scrollYTop=0;}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=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=scrollYHeight;reactData.isScrollYBig=isScrollYBig;calcScrollbar();if(isScrollYBig&&mouseOpts.area){log_errLog('vxe.error.notProp',['mouse-config.area']);}if($xeGanttView){$xeGanttView.handleUpdateSYSpace();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateStyle();});},updateScrollXData(){const{isAllOverflow}=reactData;handleTableColumn();$xeTable.updateScrollXSpace();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{handleTableColumn();$xeTable.updateScrollXSpace();if(!isAllOverflow){$xeTable.updateScrollYSpace();}});},updateScrollYData(){$xeTable.handleTableData();$xeTable.updateScrollYSpace();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{$xeTable.handleTableData();$xeTable.updateScrollYSpace();});},/**
|
|
20565
20617
|
* 处理固定列的显示状态
|
|
20566
20618
|
*/checkScrolling(){const{elemStore}=internalData;const bodyScrollElem=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){dom_addClass(leftContainerElem,'scrolling--middle');}else{dom_removeClass(leftContainerElem,'scrolling--middle');}}if(rightContainerElem){if(bodtTargetEl.clientWidth<bodtTargetEl.scrollWidth-Math.ceil(bodtTargetEl.scrollLeft)){dom_addClass(rightContainerElem,'scrolling--middle');}else{dom_removeClass(rightContainerElem,'scrolling--middle');}}}},handleUpdateAggData(){return loadTableData(internalData.tableSynchData,true);},updateZindex(){if(props.zIndex){internalData.tZindex=props.zIndex;}else if(internalData.tZindex<utils_getLastZIndex()){internalData.tZindex=utils_nextZIndex();}},handleCheckedCheckboxRow,/**
|
|
20567
20619
|
* 行 hover 事件
|
|
@@ -24340,10 +24392,10 @@ function gantt_createInternalData() {
|
|
|
24340
24392
|
const pagerOpts = computePagerOpts.value;
|
|
24341
24393
|
const isLoading = computeIsLoading.value;
|
|
24342
24394
|
const tProps = Object.assign({}, tableExtendProps, {
|
|
24395
|
+
// 不支持修改的属性
|
|
24343
24396
|
showOverflow: true,
|
|
24344
24397
|
showHeaderOverflow: true,
|
|
24345
|
-
showFooterOverflow: true
|
|
24346
|
-
showFooter: false
|
|
24398
|
+
showFooterOverflow: true
|
|
24347
24399
|
});
|
|
24348
24400
|
if (isZMax) {
|
|
24349
24401
|
if (tableExtendProps.maxHeight) {
|
|
@@ -25709,6 +25761,9 @@ function gantt_createInternalData() {
|
|
|
25709
25761
|
loadColumn(columns) {
|
|
25710
25762
|
const $xeTable = refTable.value;
|
|
25711
25763
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(columns, column => {
|
|
25764
|
+
const {
|
|
25765
|
+
type
|
|
25766
|
+
} = column;
|
|
25712
25767
|
if (column.slots) {
|
|
25713
25768
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(column.slots, func => {
|
|
25714
25769
|
if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(func)) {
|
|
@@ -25718,6 +25773,9 @@ function gantt_createInternalData() {
|
|
|
25718
25773
|
}
|
|
25719
25774
|
});
|
|
25720
25775
|
}
|
|
25776
|
+
if (type === 'expand') {
|
|
25777
|
+
errLog('vxe.error.errProp', ['type=expand', 'type=seq,radio,checkbox,html']);
|
|
25778
|
+
}
|
|
25721
25779
|
});
|
|
25722
25780
|
if ($xeTable) {
|
|
25723
25781
|
return $xeTable.loadColumn(columns);
|
|
@@ -26191,6 +26249,12 @@ function gantt_createInternalData() {
|
|
|
26191
26249
|
if (proxyOpts.props) {
|
|
26192
26250
|
warnLog('vxe.error.delProp', ['proxy-config.props', 'proxy-config.response']);
|
|
26193
26251
|
}
|
|
26252
|
+
if (props.expandConfig) {
|
|
26253
|
+
warnLog('vxe.error.notProp', ['expand-config']);
|
|
26254
|
+
}
|
|
26255
|
+
if (props.aggregateConfig) {
|
|
26256
|
+
warnLog('vxe.error.notProp', ['aggregate-config']);
|
|
26257
|
+
}
|
|
26194
26258
|
if (columns && columns.length) {
|
|
26195
26259
|
$xeGantt.loadColumn(columns);
|
|
26196
26260
|
}
|