vxe-gantt 4.0.0-beta.3 → 4.0.0-beta.4
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/README.md +2 -2
- package/es/gantt/src/gantt-body.js +70 -36
- package/es/gantt/src/gantt-chart.js +80 -56
- package/es/gantt/src/gantt-view.js +62 -7
- package/es/gantt/src/gantt.js +22 -5
- package/es/gantt/style.css +17 -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 +7 -2
- package/es/ui/src/log.js +1 -1
- package/es/vxe-gantt/style.css +17 -0
- package/es/vxe-gantt/style.min.css +1 -1
- package/lib/gantt/src/gantt-body.js +104 -44
- package/lib/gantt/src/gantt-body.min.js +1 -1
- package/lib/gantt/src/gantt-chart.js +100 -60
- package/lib/gantt/src/gantt-chart.min.js +1 -1
- package/lib/gantt/src/gantt-view.js +79 -6
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/gantt.js +29 -6
- package/lib/gantt/src/gantt.min.js +1 -1
- package/lib/gantt/style/style.css +17 -0
- package/lib/gantt/style/style.min.css +1 -1
- package/lib/index.umd.js +347 -139
- 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 +13 -2
- 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 +17 -0
- package/lib/vxe-gantt/style/style.min.css +1 -1
- package/package.json +3 -3
- package/packages/gantt/src/gantt-body.ts +79 -37
- package/packages/gantt/src/gantt-chart.ts +90 -61
- package/packages/gantt/src/gantt-view.ts +62 -7
- package/packages/gantt/src/gantt.ts +21 -4
- package/packages/ui/index.ts +9 -1
- package/styles/components/gantt-module/gantt-chart.scss +1 -0
- package/styles/components/gantt.scss +19 -0
package/lib/index.umd.js
CHANGED
|
@@ -2947,13 +2947,23 @@ if (typeof window !== 'undefined') {
|
|
|
2947
2947
|
|
|
2948
2948
|
// EXTERNAL MODULE: external {"root":"VxeUI","commonjs":"@vxe-ui/core","commonjs2":"@vxe-ui/core","amd":"@vxe-ui/core"}
|
|
2949
2949
|
var core_ = __webpack_require__(4345);
|
|
2950
|
+
;// ./packages/ui/src/log.ts
|
|
2951
|
+
|
|
2952
|
+
const {
|
|
2953
|
+
log
|
|
2954
|
+
} = core_.VxeUI;
|
|
2955
|
+
const version = `gantt v${"4.0.0-beta.4"}`;
|
|
2956
|
+
const warnLog = log.create('warn', version);
|
|
2957
|
+
const errLog = log.create('error', version);
|
|
2950
2958
|
;// ./packages/ui/index.ts
|
|
2951
2959
|
|
|
2960
|
+
|
|
2952
2961
|
const {
|
|
2953
2962
|
setConfig,
|
|
2954
|
-
setIcon
|
|
2963
|
+
setIcon,
|
|
2964
|
+
checkVersion
|
|
2955
2965
|
} = core_.VxeUI;
|
|
2956
|
-
core_.VxeUI.ganttVersion = "4.0.0-beta.
|
|
2966
|
+
core_.VxeUI.ganttVersion = "4.0.0-beta.4";
|
|
2957
2967
|
setConfig({
|
|
2958
2968
|
gantt: {
|
|
2959
2969
|
// size: null,
|
|
@@ -3008,6 +3018,10 @@ setIcon({
|
|
|
3008
3018
|
GANTT_VIEW_RIGHT_OPEN: iconPrefix + 'arrow-right',
|
|
3009
3019
|
GANTT_VIEW_RIGHT_CLOSE: iconPrefix + 'arrow-left'
|
|
3010
3020
|
});
|
|
3021
|
+
if (!checkVersion(core_.VxeUI.tableVersion, 4, 16)) {
|
|
3022
|
+
errLog('vxe.error.errorVersion', [`vxe-table@${core_.VxeUI.tableVersion || '?'}`, 'vxe-table v4.16+']);
|
|
3023
|
+
}
|
|
3024
|
+
|
|
3011
3025
|
/* harmony default export */ var ui = (core_.VxeUI);
|
|
3012
3026
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
|
|
3013
3027
|
var es_array_push = __webpack_require__(4114);
|
|
@@ -3429,14 +3443,6 @@ const gridEmits = [...tableEmits, 'page-change', 'form-submit', 'form-submit-inv
|
|
|
3429
3443
|
;// ./packages/gantt/src/emits.ts
|
|
3430
3444
|
|
|
3431
3445
|
const ganttEmits = [...gridEmits, 'task-cell-click', 'task-cell-dblclick', 'task-bar-click', 'task-bar-dblclick'];
|
|
3432
|
-
;// ./packages/ui/src/log.ts
|
|
3433
|
-
|
|
3434
|
-
const {
|
|
3435
|
-
log
|
|
3436
|
-
} = core_.VxeUI;
|
|
3437
|
-
const version = `gantt v${"4.0.0-beta.3"}`;
|
|
3438
|
-
const warnLog = log.create('warn', version);
|
|
3439
|
-
const errLog = log.create('error', version);
|
|
3440
3446
|
;// ./packages/gantt/src/util.ts
|
|
3441
3447
|
function getRefElem(refEl) {
|
|
3442
3448
|
if (refEl) {
|
|
@@ -3580,26 +3586,23 @@ const {
|
|
|
3580
3586
|
computeTaskBarOpts
|
|
3581
3587
|
} = $xeGantt.getComputeMaps();
|
|
3582
3588
|
const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
3583
|
-
const
|
|
3584
|
-
const
|
|
3585
|
-
const tableInternalData = $xeTable ? $xeTable.internalData : {};
|
|
3586
|
-
const fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData || {};
|
|
3587
|
-
let cellOpts = {};
|
|
3588
|
-
let rowOpts = {};
|
|
3589
|
-
let defaultRowHeight = 0;
|
|
3590
|
-
if ($xeTable) {
|
|
3591
|
-
const {
|
|
3592
|
-
computeCellOpts,
|
|
3593
|
-
computeRowOpts,
|
|
3594
|
-
computeDefaultRowHeight
|
|
3595
|
-
} = $xeTable.getComputeMaps();
|
|
3596
|
-
cellOpts = computeCellOpts.value;
|
|
3597
|
-
rowOpts = computeRowOpts.value;
|
|
3598
|
-
defaultRowHeight = computeDefaultRowHeight.value;
|
|
3599
|
-
}
|
|
3589
|
+
const renderTaskBar = ($xeTable, row, rowid, $rowIndex) => {
|
|
3590
|
+
const tableProps = $xeTable.props;
|
|
3600
3591
|
const {
|
|
3601
|
-
|
|
3602
|
-
} =
|
|
3592
|
+
treeConfig
|
|
3593
|
+
} = tableProps;
|
|
3594
|
+
const tableInternalData = $xeTable.internalData;
|
|
3595
|
+
const {
|
|
3596
|
+
fullAllDataRowIdData
|
|
3597
|
+
} = tableInternalData;
|
|
3598
|
+
const {
|
|
3599
|
+
computeCellOpts,
|
|
3600
|
+
computeRowOpts,
|
|
3601
|
+
computeDefaultRowHeight
|
|
3602
|
+
} = $xeTable.getComputeMaps();
|
|
3603
|
+
const cellOpts = computeCellOpts.value;
|
|
3604
|
+
const rowOpts = computeRowOpts.value;
|
|
3605
|
+
const defaultRowHeight = computeDefaultRowHeight.value;
|
|
3603
3606
|
const titleField = computeTitleField.value;
|
|
3604
3607
|
const progressField = computeProgressField.value;
|
|
3605
3608
|
const taskBarOpts = computeTaskBarOpts.value;
|
|
@@ -3612,54 +3615,97 @@ const {
|
|
|
3612
3615
|
const {
|
|
3613
3616
|
round
|
|
3614
3617
|
} = barStyle || {};
|
|
3618
|
+
const rowRest = fullAllDataRowIdData[rowid] || {};
|
|
3619
|
+
const cellHeight = getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
|
|
3620
|
+
let title = getStringValue(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, titleField));
|
|
3621
|
+
const progressValue = showProgress ? Math.min(100, Math.max(0, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, progressField)))) : 0;
|
|
3622
|
+
if (contentMethod) {
|
|
3623
|
+
title = getStringValue(contentMethod({
|
|
3624
|
+
row,
|
|
3625
|
+
title
|
|
3626
|
+
}));
|
|
3627
|
+
}
|
|
3628
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3629
|
+
key: treeConfig ? rowid : $rowIndex,
|
|
3630
|
+
rowid,
|
|
3631
|
+
class: ['vxe-gantt-view--chart-row', {
|
|
3632
|
+
'is--round': round
|
|
3633
|
+
}],
|
|
3634
|
+
style: {
|
|
3635
|
+
height: `${cellHeight}px`
|
|
3636
|
+
}
|
|
3637
|
+
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3638
|
+
class: 'vxe-gantt-view--chart-bar',
|
|
3639
|
+
rowid,
|
|
3640
|
+
onClick(evnt) {
|
|
3641
|
+
$xeGantt.handleTaskBarClickEvent(evnt, {
|
|
3642
|
+
row
|
|
3643
|
+
});
|
|
3644
|
+
},
|
|
3645
|
+
onDblclick(evnt) {
|
|
3646
|
+
$xeGantt.handleTaskBarDblclickEvent(evnt, {
|
|
3647
|
+
row
|
|
3648
|
+
});
|
|
3649
|
+
}
|
|
3650
|
+
}, [showProgress ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3651
|
+
class: 'vxe-gantt-view--chart-progress',
|
|
3652
|
+
style: {
|
|
3653
|
+
width: `${progressValue || 0}%`
|
|
3654
|
+
}
|
|
3655
|
+
}) : renderEmptyElement($xeGantt), showContent ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3656
|
+
class: 'vxe-gantt-view--chart-content'
|
|
3657
|
+
}, title) : renderEmptyElement($xeGantt)])]);
|
|
3658
|
+
};
|
|
3659
|
+
const renderRows = ($xeTable, tableData) => {
|
|
3660
|
+
const tableProps = $xeTable.props;
|
|
3661
|
+
const {
|
|
3662
|
+
treeConfig
|
|
3663
|
+
} = tableProps;
|
|
3664
|
+
const tableReactData = $xeTable.reactData;
|
|
3665
|
+
const {
|
|
3666
|
+
treeExpandedFlag
|
|
3667
|
+
} = tableReactData;
|
|
3668
|
+
const tableInternalData = $xeTable.internalData;
|
|
3669
|
+
const {
|
|
3670
|
+
treeExpandedMaps
|
|
3671
|
+
} = tableInternalData;
|
|
3672
|
+
const {
|
|
3673
|
+
computeTreeOpts
|
|
3674
|
+
} = $xeTable.getComputeMaps();
|
|
3675
|
+
const treeOpts = computeTreeOpts.value;
|
|
3676
|
+
const {
|
|
3677
|
+
transform
|
|
3678
|
+
} = treeOpts;
|
|
3679
|
+
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3680
|
+
const {
|
|
3681
|
+
scrollYLoad
|
|
3682
|
+
} = reactData;
|
|
3615
3683
|
const trVNs = [];
|
|
3616
|
-
tableData.forEach((row,
|
|
3684
|
+
tableData.forEach((row, $rowIndex) => {
|
|
3617
3685
|
const rowid = $xeTable ? $xeTable.getRowid(row) : '';
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
let
|
|
3621
|
-
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3686
|
+
trVNs.push(renderTaskBar($xeTable, row, rowid, $rowIndex));
|
|
3687
|
+
let isExpandTree = false;
|
|
3688
|
+
let rowChildren = [];
|
|
3689
|
+
if (treeConfig && !scrollYLoad && !transform) {
|
|
3690
|
+
rowChildren = row[childrenField];
|
|
3691
|
+
isExpandTree = !!treeExpandedFlag && rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
|
|
3692
|
+
}
|
|
3693
|
+
// 如果是树形表格
|
|
3694
|
+
if (isExpandTree) {
|
|
3695
|
+
trVNs.push(...renderRows($xeTable, rowChildren));
|
|
3627
3696
|
}
|
|
3628
|
-
trVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3629
|
-
key: rIndex,
|
|
3630
|
-
rowid,
|
|
3631
|
-
class: ['vxe-gantt-view--chart-row', {
|
|
3632
|
-
'is--round': round
|
|
3633
|
-
}],
|
|
3634
|
-
style: {
|
|
3635
|
-
height: `${cellHeight}px`
|
|
3636
|
-
}
|
|
3637
|
-
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3638
|
-
class: 'vxe-gantt-view--chart-bar',
|
|
3639
|
-
rowid,
|
|
3640
|
-
onClick(evnt) {
|
|
3641
|
-
$xeGantt.handleTaskBarClickEvent(evnt, {
|
|
3642
|
-
row
|
|
3643
|
-
});
|
|
3644
|
-
},
|
|
3645
|
-
onDblclick(evnt) {
|
|
3646
|
-
$xeGantt.handleTaskBarDblclickEvent(evnt, {
|
|
3647
|
-
row
|
|
3648
|
-
});
|
|
3649
|
-
}
|
|
3650
|
-
}, [showProgress ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3651
|
-
class: 'vxe-gantt-view--chart-progress',
|
|
3652
|
-
style: {
|
|
3653
|
-
width: `${progressValue || 0}%`
|
|
3654
|
-
}
|
|
3655
|
-
}) : renderEmptyElement($xeGantt), showContent ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3656
|
-
class: 'vxe-gantt-view--chart-content'
|
|
3657
|
-
}, title) : renderEmptyElement($xeGantt)])]));
|
|
3658
3697
|
});
|
|
3698
|
+
return trVNs;
|
|
3699
|
+
};
|
|
3700
|
+
const renderVN = () => {
|
|
3701
|
+
const $xeTable = $xeGanttView.internalData.xeTable;
|
|
3702
|
+
const {
|
|
3703
|
+
tableData
|
|
3704
|
+
} = reactData;
|
|
3659
3705
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
3660
3706
|
ref: refElem,
|
|
3661
3707
|
class: 'vxe-gantt-view--chart-wrapper'
|
|
3662
|
-
},
|
|
3708
|
+
}, $xeTable ? renderRows($xeTable, tableData) : []);
|
|
3663
3709
|
};
|
|
3664
3710
|
(0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
|
|
3665
3711
|
const {
|
|
@@ -3701,58 +3747,119 @@ const {
|
|
|
3701
3747
|
const refBodyTable = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
3702
3748
|
const refBodyXSpace = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
3703
3749
|
const refBodyYSpace = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
|
|
3704
|
-
const
|
|
3705
|
-
const
|
|
3706
|
-
const tableInternalData = $xeTable ? $xeTable.internalData : {};
|
|
3707
|
-
const fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData || {};
|
|
3708
|
-
let cellOpts = {};
|
|
3709
|
-
let rowOpts = {};
|
|
3710
|
-
let defaultRowHeight = 0;
|
|
3711
|
-
if ($xeTable) {
|
|
3712
|
-
const {
|
|
3713
|
-
computeCellOpts,
|
|
3714
|
-
computeRowOpts,
|
|
3715
|
-
computeDefaultRowHeight
|
|
3716
|
-
} = $xeTable.getComputeMaps();
|
|
3717
|
-
cellOpts = computeCellOpts.value;
|
|
3718
|
-
rowOpts = computeRowOpts.value;
|
|
3719
|
-
defaultRowHeight = computeDefaultRowHeight.value;
|
|
3720
|
-
}
|
|
3750
|
+
const renderColumn = ($xeTable, row, rowid, $rowIndex, column, $columnIndex) => {
|
|
3751
|
+
const tableInternalData = $xeTable.internalData;
|
|
3721
3752
|
const {
|
|
3722
|
-
|
|
3723
|
-
|
|
3753
|
+
fullAllDataRowIdData
|
|
3754
|
+
} = tableInternalData;
|
|
3755
|
+
const {
|
|
3756
|
+
computeCellOpts,
|
|
3757
|
+
computeRowOpts,
|
|
3758
|
+
computeDefaultRowHeight
|
|
3759
|
+
} = $xeTable.getComputeMaps();
|
|
3760
|
+
const cellOpts = computeCellOpts.value;
|
|
3761
|
+
const rowOpts = computeRowOpts.value;
|
|
3762
|
+
const defaultRowHeight = computeDefaultRowHeight.value;
|
|
3763
|
+
const rowRest = fullAllDataRowIdData[rowid] || {};
|
|
3764
|
+
const cellHeight = getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
|
|
3765
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('td', {
|
|
3766
|
+
key: $columnIndex,
|
|
3767
|
+
class: 'vxe-gantt-view--body-column',
|
|
3768
|
+
style: {
|
|
3769
|
+
height: `${cellHeight}px`
|
|
3770
|
+
},
|
|
3771
|
+
onClick(evnt) {
|
|
3772
|
+
$xeGantt.handleTaskCellClickEvent(evnt, {
|
|
3773
|
+
row,
|
|
3774
|
+
column
|
|
3775
|
+
});
|
|
3776
|
+
},
|
|
3777
|
+
onDblclick(evnt) {
|
|
3778
|
+
$xeGantt.handleTaskCellDblclickEvent(evnt, {
|
|
3779
|
+
row,
|
|
3780
|
+
column
|
|
3781
|
+
});
|
|
3782
|
+
}
|
|
3783
|
+
});
|
|
3784
|
+
};
|
|
3785
|
+
const renderRows = ($xeTable, tableData) => {
|
|
3786
|
+
const tableProps = $xeTable.props;
|
|
3787
|
+
const {
|
|
3788
|
+
treeConfig,
|
|
3789
|
+
stripe,
|
|
3790
|
+
highlightHoverRow
|
|
3791
|
+
} = tableProps;
|
|
3792
|
+
const tableReactData = $xeTable.reactData;
|
|
3793
|
+
const {
|
|
3794
|
+
treeExpandedFlag
|
|
3795
|
+
} = tableReactData;
|
|
3796
|
+
const tableInternalData = $xeTable.internalData;
|
|
3797
|
+
const {
|
|
3798
|
+
fullAllDataRowIdData,
|
|
3799
|
+
treeExpandedMaps
|
|
3800
|
+
} = tableInternalData;
|
|
3801
|
+
const {
|
|
3802
|
+
computeTreeOpts,
|
|
3803
|
+
computeRowOpts
|
|
3804
|
+
} = $xeTable.getComputeMaps();
|
|
3805
|
+
const rowOpts = computeRowOpts.value;
|
|
3806
|
+
const treeOpts = computeTreeOpts.value;
|
|
3807
|
+
const {
|
|
3808
|
+
transform
|
|
3809
|
+
} = treeOpts;
|
|
3810
|
+
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3811
|
+
const {
|
|
3812
|
+
tableColumn,
|
|
3813
|
+
scrollYLoad
|
|
3724
3814
|
} = reactData;
|
|
3725
3815
|
const trVNs = [];
|
|
3726
|
-
tableData.forEach((row,
|
|
3727
|
-
const rowid = $xeTable
|
|
3816
|
+
tableData.forEach((row, $rowIndex) => {
|
|
3817
|
+
const rowid = $xeTable.getRowid(row);
|
|
3728
3818
|
const rowRest = fullAllDataRowIdData[rowid] || {};
|
|
3729
|
-
const
|
|
3819
|
+
const trOns = {};
|
|
3820
|
+
let rowIndex = $rowIndex;
|
|
3821
|
+
let _rowIndex = -1;
|
|
3822
|
+
if (rowRest) {
|
|
3823
|
+
rowIndex = rowRest.index;
|
|
3824
|
+
_rowIndex = rowRest._index;
|
|
3825
|
+
}
|
|
3826
|
+
// 当前行事件
|
|
3827
|
+
if (rowOpts.isHover || highlightHoverRow) {
|
|
3828
|
+
trOns.onMouseenter = evnt => {
|
|
3829
|
+
$xeTable.triggerHoverEvent(evnt, {
|
|
3830
|
+
row,
|
|
3831
|
+
rowIndex
|
|
3832
|
+
});
|
|
3833
|
+
};
|
|
3834
|
+
trOns.onMouseleave = () => {
|
|
3835
|
+
$xeTable.clearHoverRow();
|
|
3836
|
+
};
|
|
3837
|
+
}
|
|
3730
3838
|
trVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('tr', {
|
|
3731
|
-
key:
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
|
|
3740
|
-
|
|
3741
|
-
|
|
3742
|
-
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3748
|
-
}
|
|
3749
|
-
});
|
|
3750
|
-
})));
|
|
3839
|
+
key: treeConfig ? rowid : $rowIndex,
|
|
3840
|
+
class: ['vxe-gantt-view--body-row', {
|
|
3841
|
+
'row--stripe': stripe && (_rowIndex + 1) % 2 === 0
|
|
3842
|
+
}],
|
|
3843
|
+
rowid,
|
|
3844
|
+
...trOns
|
|
3845
|
+
}, tableColumn.map((column, $columnIndex) => renderColumn($xeTable, row, rowid, $rowIndex, column, $columnIndex))));
|
|
3846
|
+
let isExpandTree = false;
|
|
3847
|
+
let rowChildren = [];
|
|
3848
|
+
if (treeConfig && !scrollYLoad && !transform) {
|
|
3849
|
+
rowChildren = row[childrenField];
|
|
3850
|
+
isExpandTree = !!treeExpandedFlag && rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
|
|
3851
|
+
}
|
|
3852
|
+
// 如果是树形表格
|
|
3853
|
+
if (isExpandTree) {
|
|
3854
|
+
trVNs.push(...renderRows($xeTable, rowChildren));
|
|
3855
|
+
}
|
|
3751
3856
|
});
|
|
3752
3857
|
return trVNs;
|
|
3753
3858
|
};
|
|
3754
3859
|
const renderVN = () => {
|
|
3860
|
+
const $xeTable = $xeGanttView.internalData.xeTable;
|
|
3755
3861
|
const {
|
|
3862
|
+
tableData,
|
|
3756
3863
|
tableColumn,
|
|
3757
3864
|
viewCellWidth
|
|
3758
3865
|
} = reactData;
|
|
@@ -3779,7 +3886,7 @@ const {
|
|
|
3779
3886
|
width: `${viewCellWidth}px`
|
|
3780
3887
|
}
|
|
3781
3888
|
});
|
|
3782
|
-
})), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('tbody', {}, renderRows())]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(gantt_chart)])]);
|
|
3889
|
+
})), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('tbody', {}, $xeTable ? renderRows($xeTable, tableData) : [])]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(gantt_chart)])]);
|
|
3783
3890
|
};
|
|
3784
3891
|
(0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
|
|
3785
3892
|
const {
|
|
@@ -3929,6 +4036,10 @@ const maxXWidth = 5e6;
|
|
|
3929
4036
|
getComputeMaps: () => computeMaps
|
|
3930
4037
|
};
|
|
3931
4038
|
const handleParseColumn = () => {
|
|
4039
|
+
const ganttProps = $xeGantt.props;
|
|
4040
|
+
const {
|
|
4041
|
+
treeConfig
|
|
4042
|
+
} = ganttProps;
|
|
3932
4043
|
const {
|
|
3933
4044
|
minViewDate,
|
|
3934
4045
|
maxViewDate
|
|
@@ -3983,12 +4094,21 @@ const maxXWidth = 5e6;
|
|
|
3983
4094
|
if ($xeTable) {
|
|
3984
4095
|
const startField = computeStartField.value;
|
|
3985
4096
|
const endField = computeEndField.value;
|
|
4097
|
+
const {
|
|
4098
|
+
computeTreeOpts
|
|
4099
|
+
} = $xeTable.getComputeMaps();
|
|
3986
4100
|
const tableInternalData = $xeTable.internalData;
|
|
3987
4101
|
const {
|
|
3988
|
-
afterFullData
|
|
4102
|
+
afterFullData,
|
|
4103
|
+
afterTreeFullData
|
|
3989
4104
|
} = tableInternalData;
|
|
4105
|
+
const treeOpts = computeTreeOpts.value;
|
|
4106
|
+
const {
|
|
4107
|
+
transform
|
|
4108
|
+
} = treeOpts;
|
|
4109
|
+
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
3990
4110
|
const ctMaps = {};
|
|
3991
|
-
|
|
4111
|
+
const handleParseRender = row => {
|
|
3992
4112
|
const rowid = $xeTable.getRowid(row);
|
|
3993
4113
|
const startValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, startField);
|
|
3994
4114
|
const endValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, endField);
|
|
@@ -4004,7 +4124,14 @@ const maxXWidth = 5e6;
|
|
|
4004
4124
|
oWidthSize
|
|
4005
4125
|
};
|
|
4006
4126
|
}
|
|
4007
|
-
}
|
|
4127
|
+
};
|
|
4128
|
+
if (treeConfig) {
|
|
4129
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData, handleParseRender, {
|
|
4130
|
+
children: transform ? treeOpts.mapChildrenField : childrenField
|
|
4131
|
+
});
|
|
4132
|
+
} else {
|
|
4133
|
+
afterFullData.forEach(handleParseRender);
|
|
4134
|
+
}
|
|
4008
4135
|
internalData.chartMaps = ctMaps;
|
|
4009
4136
|
}
|
|
4010
4137
|
}
|
|
@@ -4015,6 +4142,10 @@ const maxXWidth = 5e6;
|
|
|
4015
4142
|
reactData.headerGroups = groupCols;
|
|
4016
4143
|
};
|
|
4017
4144
|
const handleUpdateData = () => {
|
|
4145
|
+
const ganttProps = $xeGantt.props;
|
|
4146
|
+
const {
|
|
4147
|
+
treeConfig
|
|
4148
|
+
} = ganttProps;
|
|
4018
4149
|
const $xeTable = internalData.xeTable;
|
|
4019
4150
|
const sdMaps = {};
|
|
4020
4151
|
const edMaps = {};
|
|
@@ -4023,11 +4154,20 @@ const maxXWidth = 5e6;
|
|
|
4023
4154
|
if ($xeTable) {
|
|
4024
4155
|
const startField = computeStartField.value;
|
|
4025
4156
|
const endField = computeEndField.value;
|
|
4157
|
+
const {
|
|
4158
|
+
computeTreeOpts
|
|
4159
|
+
} = $xeTable.getComputeMaps();
|
|
4026
4160
|
const tableInternalData = $xeTable.internalData;
|
|
4027
4161
|
const {
|
|
4028
|
-
afterFullData
|
|
4162
|
+
afterFullData,
|
|
4163
|
+
afterTreeFullData
|
|
4029
4164
|
} = tableInternalData;
|
|
4030
|
-
|
|
4165
|
+
const treeOpts = computeTreeOpts.value;
|
|
4166
|
+
const {
|
|
4167
|
+
transform
|
|
4168
|
+
} = treeOpts;
|
|
4169
|
+
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
4170
|
+
const handleMinMaxData = row => {
|
|
4031
4171
|
const startValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, startField);
|
|
4032
4172
|
const endValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, endField);
|
|
4033
4173
|
if (startValue && endValue) {
|
|
@@ -4040,7 +4180,14 @@ const maxXWidth = 5e6;
|
|
|
4040
4180
|
maxDate = endDate;
|
|
4041
4181
|
}
|
|
4042
4182
|
}
|
|
4043
|
-
}
|
|
4183
|
+
};
|
|
4184
|
+
if (treeConfig) {
|
|
4185
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData, handleMinMaxData, {
|
|
4186
|
+
children: transform ? treeOpts.mapChildrenField : childrenField
|
|
4187
|
+
});
|
|
4188
|
+
} else {
|
|
4189
|
+
afterFullData.forEach(handleMinMaxData);
|
|
4190
|
+
}
|
|
4044
4191
|
}
|
|
4045
4192
|
reactData.minViewDate = minDate;
|
|
4046
4193
|
reactData.maxViewDate = maxDate;
|
|
@@ -4203,6 +4350,7 @@ const maxXWidth = 5e6;
|
|
|
4203
4350
|
const handleLazyRecalculate = () => {
|
|
4204
4351
|
calcScrollbar();
|
|
4205
4352
|
updateStyle();
|
|
4353
|
+
updateChart();
|
|
4206
4354
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
4207
4355
|
};
|
|
4208
4356
|
const updateScrollXSpace = () => {
|
|
@@ -4384,6 +4532,38 @@ const maxXWidth = 5e6;
|
|
|
4384
4532
|
const ganttViewPrivateMethods = {
|
|
4385
4533
|
handleUpdateStyle: updateStyle,
|
|
4386
4534
|
handleLazyRecalculate,
|
|
4535
|
+
handleUpdateCurrentRow(row) {
|
|
4536
|
+
const $xeTable = internalData.xeTable;
|
|
4537
|
+
const el = refElem.value;
|
|
4538
|
+
if ($xeTable && el) {
|
|
4539
|
+
if (row) {
|
|
4540
|
+
const tableProps = $xeTable.props;
|
|
4541
|
+
const {
|
|
4542
|
+
highlightCurrentRow
|
|
4543
|
+
} = tableProps;
|
|
4544
|
+
const {
|
|
4545
|
+
computeRowOpts
|
|
4546
|
+
} = $xeTable.getComputeMaps();
|
|
4547
|
+
const rowOpts = computeRowOpts.value;
|
|
4548
|
+
if (rowOpts.isCurrent || highlightCurrentRow) {
|
|
4549
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${$xeTable.getRowid(row)}"]`), elem => addClass(elem, 'row--current'));
|
|
4550
|
+
}
|
|
4551
|
+
} else {
|
|
4552
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.vxe-gantt-view--body-row.row--current'), elem => removeClass(elem, 'row--current'));
|
|
4553
|
+
}
|
|
4554
|
+
}
|
|
4555
|
+
},
|
|
4556
|
+
handleUpdateHoverRow(row) {
|
|
4557
|
+
const $xeTable = internalData.xeTable;
|
|
4558
|
+
const el = refElem.value;
|
|
4559
|
+
if ($xeTable && el) {
|
|
4560
|
+
if (row) {
|
|
4561
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${$xeTable.getRowid(row)}"]`), elem => addClass(elem, 'row--hover'));
|
|
4562
|
+
} else {
|
|
4563
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.vxe-gantt-view--body-row.row--hover'), elem => removeClass(elem, 'row--hover'));
|
|
4564
|
+
}
|
|
4565
|
+
}
|
|
4566
|
+
},
|
|
4387
4567
|
triggerHeaderScrollEvent(evnt) {
|
|
4388
4568
|
const {
|
|
4389
4569
|
elemStore,
|
|
@@ -4665,7 +4845,7 @@ function utils_eqEmptyValue(cellValue) {
|
|
|
4665
4845
|
;// ./node_modules/vxe-table/es/ui/index.js
|
|
4666
4846
|
|
|
4667
4847
|
|
|
4668
|
-
const ui_version = "4.
|
|
4848
|
+
const ui_version = "4.16.0-beta.0";
|
|
4669
4849
|
core_.VxeUI.version = ui_version;
|
|
4670
4850
|
core_.VxeUI.tableVersion = ui_version;
|
|
4671
4851
|
core_.VxeUI.setConfig({
|
|
@@ -5160,7 +5340,7 @@ var es_iterator_some = __webpack_require__(3579);
|
|
|
5160
5340
|
const {
|
|
5161
5341
|
log: log_log
|
|
5162
5342
|
} = core_.VxeUI;
|
|
5163
|
-
const log_version = `table v${"4.
|
|
5343
|
+
const log_version = `table v${"4.16.0-beta.0"}`;
|
|
5164
5344
|
const log_warnLog = log_log.create('warn', log_version);
|
|
5165
5345
|
const log_errLog = log_log.create('error', log_version);
|
|
5166
5346
|
;// ./node_modules/vxe-table/es/table/src/columnInfo.js
|
|
@@ -8629,6 +8809,7 @@ const renderType = 'body';
|
|
|
8629
8809
|
} = tableProps;
|
|
8630
8810
|
const {
|
|
8631
8811
|
tableData,
|
|
8812
|
+
tableColumn,
|
|
8632
8813
|
dragRow,
|
|
8633
8814
|
overflowX,
|
|
8634
8815
|
overflowY,
|
|
@@ -8872,9 +9053,9 @@ const renderType = 'body';
|
|
|
8872
9053
|
let isVNPreEmptyStatus = false;
|
|
8873
9054
|
if (!isMergeCell) {
|
|
8874
9055
|
if (!dragRow || getRowid($xeTable, dragRow) !== rowid) {
|
|
8875
|
-
if (overflowY && scrollYLoad && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
|
|
9056
|
+
if (overflowY && scrollYLoad && tableData.length > 16 && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
|
|
8876
9057
|
isVNPreEmptyStatus = true;
|
|
8877
|
-
} else if (overflowX && scrollXLoad && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
9058
|
+
} else if (overflowX && scrollXLoad && tableColumn.length > 10 && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
8878
9059
|
isVNPreEmptyStatus = true;
|
|
8879
9060
|
}
|
|
8880
9061
|
}
|
|
@@ -9543,7 +9724,8 @@ const header_renderType = 'header';
|
|
|
9543
9724
|
dragCol,
|
|
9544
9725
|
scrollXLoad,
|
|
9545
9726
|
scrollYLoad,
|
|
9546
|
-
overflowX
|
|
9727
|
+
overflowX,
|
|
9728
|
+
tableColumn
|
|
9547
9729
|
} = tableReactData;
|
|
9548
9730
|
const {
|
|
9549
9731
|
fullColumnIdData,
|
|
@@ -9640,7 +9822,7 @@ const header_renderType = 'header';
|
|
|
9640
9822
|
let isVNPreEmptyStatus = false;
|
|
9641
9823
|
if (isOptimizeMode && overflowX && !isGroup) {
|
|
9642
9824
|
if (!dragCol || dragCol.id !== colid) {
|
|
9643
|
-
if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
9825
|
+
if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
9644
9826
|
isVNPreEmptyStatus = true;
|
|
9645
9827
|
}
|
|
9646
9828
|
}
|
|
@@ -10104,7 +10286,7 @@ const footer_renderType = 'footer';
|
|
|
10104
10286
|
const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
|
|
10105
10287
|
let isVNPreEmptyStatus = false;
|
|
10106
10288
|
if (isOptimizeMode && overflowX && !isMergeCell) {
|
|
10107
|
-
if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
10289
|
+
if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
10108
10290
|
isVNPreEmptyStatus = true;
|
|
10109
10291
|
}
|
|
10110
10292
|
}
|
|
@@ -19587,7 +19769,7 @@ if(isCustomSort&&sortData){allCols.forEach(column=>{const colKey=column.getKey()
|
|
|
19587
19769
|
*/const restoreCustomStorage=()=>{const{customConfig}=props;const tableId=computeTableId.value;const customOpts=computeCustomOpts.value;const{storage,restoreStore,storeOptions}=customOpts;const isAllCustom=storage===true;const storageOpts=isAllCustom?{}:Object.assign({},storage||{},storeOptions);const isCustomResizable=hangleStorageDefaultValue(storageOpts.resizable,isAllCustom);const isCustomVisible=hangleStorageDefaultValue(storageOpts.visible,isAllCustom);const isCustomFixed=hangleStorageDefaultValue(storageOpts.fixed,isAllCustom);const isCustomSort=hangleStorageDefaultValue(storageOpts.sort,isAllCustom);const isCustomAggGroup=hangleStorageDefaultValue(storageOpts.aggGroup,isAllCustom);const isCustomAggFunc=hangleStorageDefaultValue(storageOpts.aggFunc,isAllCustom);if(storage&&(customConfig?utils_isEnableConf(customOpts):customOpts.enabled)&&(isCustomResizable||isCustomVisible||isCustomFixed||isCustomSort||isCustomAggGroup||isCustomAggFunc)){if(!tableId){log_errLog('vxe.error.reqProp',['id']);return;}const storeData=getCustomStorageMap(tableId);if(restoreStore){return Promise.resolve(restoreStore({$table:$xeTable,id:tableId,type:'restore',storeData})).then(storeData=>{if(!storeData){return;}return handleCustomRestore(storeData);}).catch(e=>e);}else{return handleCustomRestore(storeData);}}};/**
|
|
19588
19770
|
* 更新数据列的 Map
|
|
19589
19771
|
* 牺牲数据组装的耗时,用来换取使用过程中的流畅
|
|
19590
|
-
*/const cacheColumnMap=()=>{const{tableFullColumn,collectColumn}=internalData;const fullColIdData=internalData.fullColumnIdData={};const fullColFieldData=internalData.fullColumnFieldData={};const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const columnOpts=computeColumnOpts.value;const columnDragOpts=computeColumnDragOpts.value;const virtualYOpts=computeVirtualYOpts.value;const{isCrossDrag,isSelfToChildDrag}=columnDragOpts;const customOpts=computeCustomOpts.value;const{storage}=customOpts;const rowOpts=computeRowOpts.value;const isGroup=collectColumn.some(utils_hasChildrenList);let isAllOverflow=!!props.showOverflow;let rowGroupColumn;let expandColumn;let treeNodeColumn;let checkboxColumn;let radioColumn;let htmlColumn;let hasFixed;const handleFunc=(column,index,items,path,parentColumn)=>{const{id:colid,field,fixed,type,treeNode,rowGroupNode}=column;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};if(field){if(fullColFieldData[field]){log_errLog('vxe.error.colRepet',['field',field]);}fullColFieldData[field]=rest;}else{if(storage&&!type||columnOpts.drag&&(isCrossDrag||isSelfToChildDrag)){log_errLog('vxe.error.
|
|
19772
|
+
*/const cacheColumnMap=()=>{const{tableFullColumn,collectColumn}=internalData;const fullColIdData=internalData.fullColumnIdData={};const fullColFieldData=internalData.fullColumnFieldData={};const mouseOpts=computeMouseOpts.value;const expandOpts=computeExpandOpts.value;const columnOpts=computeColumnOpts.value;const columnDragOpts=computeColumnDragOpts.value;const virtualYOpts=computeVirtualYOpts.value;const{isCrossDrag,isSelfToChildDrag}=columnDragOpts;const customOpts=computeCustomOpts.value;const{storage}=customOpts;const rowOpts=computeRowOpts.value;const isGroup=collectColumn.some(utils_hasChildrenList);let isAllOverflow=!!props.showOverflow;let rowGroupColumn;let expandColumn;let treeNodeColumn;let checkboxColumn;let radioColumn;let htmlColumn;let hasFixed;const handleFunc=(column,index,items,path,parentColumn)=>{const{id:colid,field,fixed,type,treeNode,rowGroupNode}=column;const rest={$index:-1,_index:-1,column,colid,index,items,parent:parentColumn||null,width:0,oLeft:0};if(field){if(fullColFieldData[field]){log_errLog('vxe.error.colRepet',['field',field]);}fullColFieldData[field]=rest;}else{if(storage&&!type){log_errLog('vxe.error.reqSupportProp',['storage',`${column.getTitle()||type||''} -> field=?`]);}if(columnOpts.drag&&(isCrossDrag||isSelfToChildDrag)){log_errLog('vxe.error.reqSupportProp',['column-drag-config.isCrossDrag | column-drag-config.isSelfToChildDrag',`${column.getTitle()||type||''} -> field=?`]);}}if(!hasFixed&&fixed){hasFixed=fixed;}if(!htmlColumn&&type==='html'){htmlColumn=column;}if(treeNode){if(treeNodeColumn){log_warnLog('vxe.error.colRepet',['tree-node',treeNode]);}if(!treeNodeColumn){treeNodeColumn=column;}}if(rowGroupNode){if(treeNodeColumn){log_warnLog('vxe.error.colRepet',['row-group-node',rowGroupNode]);}if(!rowGroupColumn){rowGroupColumn=column;}}if(type==='expand'){if(expandColumn){log_warnLog('vxe.error.colRepet',['type',type]);}if(!expandColumn){expandColumn=column;}}if(type==='checkbox'){if(checkboxColumn){log_warnLog('vxe.error.colRepet',['type',type]);}if(!checkboxColumn){checkboxColumn=column;}}else if(type==='radio'){if(radioColumn){log_warnLog('vxe.error.colRepet',['type',type]);}if(!radioColumn){radioColumn=column;}}if(isAllOverflow&&column.showOverflow===false){isAllOverflow=false;}if(fullColIdData[colid]){log_errLog('vxe.error.colRepet',['colId',colid]);}fullColIdData[colid]=rest;};if(isGroup){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(collectColumn,(column,index,items,path,parentColumn,nodes)=>{column.level=nodes.length;handleFunc(column,index,items,path,parentColumn);});}else{tableFullColumn.forEach(handleFunc);}if(expandColumn&&expandOpts.mode!=='fixed'&&virtualYOpts.enabled){log_warnLog('vxe.error.notConflictProp',['column.type="expand','virtual-y-config.enabled=false']);}if(expandColumn&&expandOpts.mode!=='fixed'&&mouseOpts.area){log_errLog('vxe.error.errConflicts',['mouse-config.area','column.type=expand']);}if(htmlColumn){if(!columnOpts.useKey){log_errLog('vxe.error.notSupportProp',['column.type=html','column-config.useKey=false','column-config.useKey=true']);}if(!rowOpts.useKey){log_errLog('vxe.error.notSupportProp',['column.type=html','row-config.useKey=false','row-config.useKey=true']);}}reactData.isGroup=isGroup;reactData.rowGroupColumn=rowGroupColumn;reactData.treeNodeColumn=treeNodeColumn;reactData.expandColumn=expandColumn;reactData.checkboxColumn=checkboxColumn;reactData.radioColumn=radioColumn;reactData.isAllOverflow=isAllOverflow;};const updateHeight=()=>{internalData.customHeight=calcTableHeight('height');internalData.customMinHeight=calcTableHeight('minHeight');internalData.customMaxHeight=calcTableHeight('maxHeight');// 如果启用虚拟滚动,默认高度
|
|
19591
19773
|
if(reactData.scrollYLoad&&!(internalData.customHeight||internalData.customMinHeight)){internalData.customHeight=300;}};const calcColumnAutoWidth=(column,wrapperEl)=>{const columnOpts=computeColumnOpts.value;const{autoOptions}=columnOpts;const{isCalcHeader,isCalcBody,isCalcFooter}=autoOptions||{};const querySelections=[];if(isCalcHeader){querySelections.push(`.vxe-header-cell--wrapper[colid="${column.id}"]`);}if(isCalcBody){querySelections.push(`.vxe-body-cell--wrapper[colid="${column.id}"]`);}if(isCalcFooter){querySelections.push(`.vxe-footer-cell--wrapper[colid="${column.id}"]`);}const cellElemList=querySelections.length?wrapperEl.querySelectorAll(querySelections.join(',')):[];let leftRightPadding=0;const firstCellEl=cellElemList[0];if(firstCellEl&&firstCellEl.parentElement){const cellStyle=getComputedStyle(firstCellEl.parentElement);leftRightPadding=Math.ceil(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellStyle.paddingLeft)+external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellStyle.paddingRight));}let colWidth=column.renderAutoWidth-leftRightPadding;for(let i=0;i<cellElemList.length;i++){const celEl=cellElemList[i];colWidth=Math.max(colWidth,celEl?Math.ceil(celEl.scrollWidth)+4:0);}return colWidth+leftRightPadding;};const calcCellWidth=()=>{const autoWidthColumnList=computeAutoWidthColumnList.value;const{fullColumnIdData}=internalData;const el=refElem.value;if(el){el.setAttribute('data-calc-col','Y');autoWidthColumnList.forEach(column=>{const colid=column.id;const colRest=fullColumnIdData[colid];const colWidth=calcColumnAutoWidth(column,el);if(colRest){colRest.width=Math.max(colWidth,colRest.width);}column.renderAutoWidth=colWidth;});$xeTable.analyColumnWidth();el.removeAttribute('data-calc-col');}};/**
|
|
19592
19774
|
* 列宽算法,计算单元格列宽,动态分配可用剩余空间
|
|
19593
19775
|
* 支持 px、%、固定 混合分配
|
|
@@ -19981,8 +20163,8 @@ setTimeout(()=>{internalData.intoRunScroll=false;resolve();},10);});},/**
|
|
|
19981
20163
|
const indeterminateField=checkboxOpts.indeterminateField||checkboxOpts.halfField;if(checkField){const handleClearChecked=item=>{if(treeConfig&&indeterminateField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(item,indeterminateField,false);}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(item,checkField,false);};if(treeConfig){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullData,handleClearChecked,{children:childrenField});}else{tableFullData.forEach(handleClearChecked);}}if(reserve){tableFullData.forEach(row=>handleCheckboxReserveRow(row,false));}reactData.isAllSelected=false;reactData.isIndeterminate=false;internalData.selectCheckboxMaps={};internalData.treeIndeterminateRowMaps={};reactData.updateCheckboxFlag++;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
19982
20164
|
* 用于当前行,设置某一行为高亮状态
|
|
19983
20165
|
* @param {Row} row 行对象
|
|
19984
|
-
*/setCurrentRow(row){const rowOpts=computeRowOpts.value;const el=refElem.value;tableMethods.clearCurrentRow();// tableMethods.clearCurrentColumn()
|
|
19985
|
-
reactData.currentRow=row;if(rowOpts.isCurrent||props.highlightCurrentRow){if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`[rowid="${getRowid($xeTable,row)}"]`),elem=>dom_addClass(elem,'row--current'));}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},isCheckedByRadioRow(row){const{selectRadioRow}=reactData;if(row&&selectRadioRow){return $xeTable.eqRow(selectRadioRow,row);}return false;},isCheckedByRadioRowKey(key){const{selectRadioRow}=reactData;if(selectRadioRow){return key===getRowid($xeTable,selectRadioRow);}return false;},/**
|
|
20166
|
+
*/setCurrentRow(row){const $xeGanttView=internalData.xeGanttView;const rowOpts=computeRowOpts.value;const el=refElem.value;tableMethods.clearCurrentRow();// tableMethods.clearCurrentColumn()
|
|
20167
|
+
reactData.currentRow=row;if(rowOpts.isCurrent||props.highlightCurrentRow){if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`[rowid="${getRowid($xeTable,row)}"]`),elem=>dom_addClass(elem,'row--current'));}}if($xeGanttView){$xeGanttView.handleUpdateCurrentRow(row);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},isCheckedByRadioRow(row){const{selectRadioRow}=reactData;if(row&&selectRadioRow){return $xeTable.eqRow(selectRadioRow,row);}return false;},isCheckedByRadioRowKey(key){const{selectRadioRow}=reactData;if(selectRadioRow){return key===getRowid($xeTable,selectRadioRow);}return false;},/**
|
|
19986
20168
|
* 用于单选行,设置某一行为选中状态
|
|
19987
20169
|
* @param {Row} row 行对象
|
|
19988
20170
|
*/setRadioRow(row){return handleCheckedRadioRow(row,true);},/**
|
|
@@ -19990,7 +20172,7 @@ reactData.currentRow=row;if(rowOpts.isCurrent||props.highlightCurrentRow){if(el)
|
|
|
19990
20172
|
* @param key 行主键
|
|
19991
20173
|
*/setRadioRowKey(rowid){const{fullAllDataRowIdData}=internalData;const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return handleCheckedRadioRow(rowRest.row,true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
19992
20174
|
* 用于当前行,手动清空当前高亮的状态
|
|
19993
|
-
*/clearCurrentRow(){const el=refElem.value;reactData.currentRow=null;internalData.hoverRow=null;if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.row--current'),elem=>dom_removeClass(elem,'row--current'));}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
20175
|
+
*/clearCurrentRow(){const $xeGanttView=internalData.xeGanttView;const el=refElem.value;reactData.currentRow=null;internalData.hoverRow=null;if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.row--current'),elem=>dom_removeClass(elem,'row--current'));}if($xeGanttView){$xeGanttView.handleUpdateCurrentRow();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
19994
20176
|
* 用于单选行,手动清空用户的选择
|
|
19995
20177
|
*/clearRadioRow(){reactData.selectRadioRow=null;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
19996
20178
|
* 用于当前行,获取当前行的数据
|
|
@@ -20329,7 +20511,7 @@ if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=table_m
|
|
|
20329
20511
|
* 处理固定列的显示状态
|
|
20330
20512
|
*/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,/**
|
|
20331
20513
|
* 行 hover 事件
|
|
20332
|
-
*/triggerHoverEvent(evnt,{row}){tablePrivateMethods.setHoverRow(row);},setHoverRow(row){const rowid=getRowid($xeTable,row);const el=refElem.value;tablePrivateMethods.clearHoverRow();if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`.vxe-body--row[rowid="${rowid}"]`),elem=>dom_addClass(elem,'row--hover'));}internalData.hoverRow=row;},clearHoverRow(){const el=refElem.value;if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.vxe-body--row.row--hover'),elem=>dom_removeClass(elem,'row--hover'));}internalData.hoverRow=null;},/**
|
|
20514
|
+
*/triggerHoverEvent(evnt,{row}){tablePrivateMethods.setHoverRow(row);},setHoverRow(row){const $xeGanttView=internalData.xeGanttView;const rowid=getRowid($xeTable,row);const el=refElem.value;tablePrivateMethods.clearHoverRow();if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(`.vxe-body--row[rowid="${rowid}"]`),elem=>dom_addClass(elem,'row--hover'));}internalData.hoverRow=row;if($xeGanttView){$xeGanttView.handleUpdateHoverRow(row);}},clearHoverRow(){const $xeGanttView=internalData.xeGanttView;const el=refElem.value;if(el){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.vxe-body--row.row--hover'),elem=>dom_removeClass(elem,'row--hover'));}internalData.hoverRow=null;if($xeGanttView){$xeGanttView.handleUpdateHoverRow();}},/**
|
|
20333
20515
|
* 已废弃,被 getCellElement 替换
|
|
20334
20516
|
* @deprecated
|
|
20335
20517
|
*/getCell(row,column){return tableMethods.getCellElement(row,column);},findRowIndexOf(list,row){return row?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findIndexOf(list,item=>$xeTable.eqRow(item,row)):-1;},eqRow(row1,row2){if(row1&&row2){if(row1===row2){return true;}return getRowid($xeTable,row1)===getRowid($xeTable,row2);}return false;},handleConnectGanttView($ganttView){if($ganttView&&$ganttView.connectUpdate){$ganttView.connectUpdate({$table:$xeTable});internalData.xeGanttView=$ganttView;}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}};// 检测对应模块是否安装
|
|
@@ -21823,10 +22005,11 @@ function grid_createInternalData() {
|
|
|
21823
22005
|
toolbarConfig
|
|
21824
22006
|
} = props;
|
|
21825
22007
|
const toolbarOpts = computeToolbarOpts.value;
|
|
21826
|
-
|
|
22008
|
+
const toolbarSlot = slots.toolbar;
|
|
22009
|
+
if (toolbarConfig && utils_isEnableConf(toolbarOpts) || toolbarSlot) {
|
|
21827
22010
|
let slotVNs = [];
|
|
21828
|
-
if (
|
|
21829
|
-
slotVNs =
|
|
22011
|
+
if (toolbarSlot) {
|
|
22012
|
+
slotVNs = toolbarSlot({
|
|
21830
22013
|
$grid: $xeGrid,
|
|
21831
22014
|
$gantt: null
|
|
21832
22015
|
});
|
|
@@ -23072,6 +23255,7 @@ const Toolbar = (/* unused pure expression or super */ null && (VxeToolbar));
|
|
|
23072
23255
|
errConflicts: '参数 "{0}" 与 "{1}" 有冲突',
|
|
23073
23256
|
modelConflicts: '绑定的字段值 "{0}" 与 "{1}" 存在冲突,将会出现错误',
|
|
23074
23257
|
notSupportProp: '当启用参数 "{0}" 时不支持 "{1}",应该为 "{2}",否则将会出现错误',
|
|
23258
|
+
reqSupportProp: '当使用 "{0}" 时,应该设置 "{1}",否则可能会出现错误',
|
|
23075
23259
|
notConflictProp: '当使用 "{0}" 时,应该设置 "{1}",否则可能会存在功能冲突',
|
|
23076
23260
|
unableInsert: '无法插入到指定位置,请检查参数是否正确',
|
|
23077
23261
|
useErr: '安装 "{0}" 模块时发生错误,可能顺序不正确,依赖的模块需要在 Table 之前安装',
|
|
@@ -23109,7 +23293,8 @@ const Toolbar = (/* unused pure expression or super */ null && (VxeToolbar));
|
|
|
23109
23293
|
treeDragChild: '父级不能拖拽到自己的子级中',
|
|
23110
23294
|
reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install',
|
|
23111
23295
|
errMaxRow: '超过支持的最大数据量 {0} 行,这可能会导致出现错误',
|
|
23112
|
-
useNew: '不建议使用 {0},请使用 {1}'
|
|
23296
|
+
useNew: '不建议使用 {0},请使用 {1}',
|
|
23297
|
+
errorVersion: '版本不匹配,当前版本 {0},最低支持版本为 {1}'
|
|
23113
23298
|
},
|
|
23114
23299
|
table: {
|
|
23115
23300
|
emptyText: '暂无数据',
|
|
@@ -25413,6 +25598,28 @@ function gantt_createInternalData() {
|
|
|
25413
25598
|
}, evnt);
|
|
25414
25599
|
},
|
|
25415
25600
|
handleTaskCellClickEvent(evnt, params) {
|
|
25601
|
+
const $xeTable = refTable.value;
|
|
25602
|
+
if ($xeTable) {
|
|
25603
|
+
const tableProps = $xeTable.props;
|
|
25604
|
+
const {
|
|
25605
|
+
highlightCurrentRow
|
|
25606
|
+
} = tableProps;
|
|
25607
|
+
const {
|
|
25608
|
+
computeRowOpts
|
|
25609
|
+
} = $xeTable.getComputeMaps();
|
|
25610
|
+
const rowOpts = computeRowOpts.value;
|
|
25611
|
+
const {
|
|
25612
|
+
row
|
|
25613
|
+
} = params;
|
|
25614
|
+
// 如果是当前行
|
|
25615
|
+
if (rowOpts.isCurrent || highlightCurrentRow) {
|
|
25616
|
+
$xeTable.triggerCurrentRowEvent(evnt, Object.assign({
|
|
25617
|
+
$table: $xeTable,
|
|
25618
|
+
rowIndex: $xeTable.getRowIndex(row),
|
|
25619
|
+
$rowIndex: $xeTable.getVMRowIndex(row)
|
|
25620
|
+
}, params));
|
|
25621
|
+
}
|
|
25622
|
+
}
|
|
25416
25623
|
$xeGantt.dispatchEvent('task-cell-click', params, evnt);
|
|
25417
25624
|
},
|
|
25418
25625
|
handleTaskCellDblclickEvent(evnt, params) {
|
|
@@ -25734,17 +25941,18 @@ function gantt_createInternalData() {
|
|
|
25734
25941
|
if (!enabled) {
|
|
25735
25942
|
return gantt_renderEmptyElement($xeGantt);
|
|
25736
25943
|
}
|
|
25944
|
+
const isResize = resize && showLeftView && showRightView;
|
|
25737
25945
|
const ons = {};
|
|
25738
|
-
if (
|
|
25946
|
+
if (isResize) {
|
|
25739
25947
|
ons.onMousedown = dragSplitEvent;
|
|
25740
25948
|
}
|
|
25741
25949
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
25742
25950
|
class: ['vxe-gantt--view-split-bar', {
|
|
25743
|
-
'is--resize':
|
|
25744
|
-
...ons
|
|
25951
|
+
'is--resize': isResize
|
|
25745
25952
|
}]
|
|
25746
25953
|
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
25747
|
-
class: 'vxe-gantt--view-split-bar-handle'
|
|
25954
|
+
class: 'vxe-gantt--view-split-bar-handle',
|
|
25955
|
+
...ons
|
|
25748
25956
|
}), showCollapseTableButton || showCollapseTaskButton ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
25749
25957
|
class: 'vxe-gantt--view-split-bar-btn-wrapper'
|
|
25750
25958
|
}, [showCollapseTableButton && showRightView ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|