vxe-table 3.18.1 → 3.18.3
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/grid/src/grid.js +5 -1
- package/es/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/menu/mixin.js +67 -43
- package/es/table/module/menu/panel.js +10 -8
- package/es/table/src/body.js +12 -14
- package/es/table/src/column.js +2 -0
- package/es/table/src/columnInfo.js +1 -0
- package/es/table/src/footer.js +7 -5
- package/es/table/src/header.js +67 -28
- package/es/table/src/methods.js +233 -39
- package/es/table/src/props.js +23 -6
- package/es/table/src/table.js +43 -19
- package/es/table/src/util.js +70 -2
- package/es/table/style.css +11 -21
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/ui/src/vn.js +16 -11
- package/es/vxe-table/style.css +11 -21
- package/es/vxe-table/style.min.css +1 -1
- package/lib/grid/src/grid.js +6 -0
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +610 -185
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/menu/mixin.js +84 -58
- package/lib/table/module/menu/mixin.min.js +1 -1
- package/lib/table/module/menu/panel.js +11 -10
- package/lib/table/module/menu/panel.min.js +1 -1
- package/lib/table/src/body.js +11 -13
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/column.js +2 -0
- package/lib/table/src/column.min.js +1 -1
- package/lib/table/src/columnInfo.js +1 -0
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/footer.js +7 -5
- package/lib/table/src/header.js +82 -25
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/methods.js +259 -42
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/props.js +11 -3
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +46 -16
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +74 -2
- package/lib/table/src/util.min.js +1 -1
- package/lib/table/style/style.css +11 -21
- package/lib/table/style/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/ui/src/vn.js +16 -10
- package/lib/ui/src/vn.min.js +1 -1
- package/lib/vxe-table/style/style.css +11 -21
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/grid/src/grid.ts +5 -1
- package/packages/table/module/menu/mixin.ts +79 -50
- package/packages/table/module/menu/panel.ts +11 -9
- package/packages/table/src/body.ts +11 -13
- package/packages/table/src/column.ts +4 -2
- package/packages/table/src/columnInfo.ts +1 -0
- package/packages/table/src/footer.ts +11 -9
- package/packages/table/src/header.ts +76 -34
- package/packages/table/src/methods.ts +245 -40
- package/packages/table/src/props.ts +29 -12
- package/packages/table/src/table.ts +53 -16
- package/packages/table/src/util.ts +76 -2
- package/packages/ui/src/vn.ts +16 -11
- package/styles/components/table.scss +33 -56
- /package/es/{iconfont.1756272539382.ttf → iconfont.1756629700380.ttf} +0 -0
- /package/es/{iconfont.1756272539382.woff → iconfont.1756629700380.woff} +0 -0
- /package/es/{iconfont.1756272539382.woff2 → iconfont.1756629700380.woff2} +0 -0
- /package/lib/{iconfont.1756272539382.ttf → iconfont.1756629700380.ttf} +0 -0
- /package/lib/{iconfont.1756272539382.woff → iconfont.1756629700380.woff} +0 -0
- /package/lib/{iconfont.1756272539382.woff2 → iconfont.1756629700380.woff2} +0 -0
package/lib/index.umd.js
CHANGED
|
@@ -2002,7 +2002,7 @@ function getClass(property, params) {
|
|
|
2002
2002
|
;// CONCATENATED MODULE: ./packages/ui/index.ts
|
|
2003
2003
|
|
|
2004
2004
|
|
|
2005
|
-
const version = "3.18.
|
|
2005
|
+
const version = "3.18.3";
|
|
2006
2006
|
core_.VxeUI.version = version;
|
|
2007
2007
|
core_.VxeUI.tableVersion = version;
|
|
2008
2008
|
core_.VxeUI.setConfig({
|
|
@@ -2678,7 +2678,7 @@ function isNodeElement(elem) {
|
|
|
2678
2678
|
const {
|
|
2679
2679
|
log: log_log
|
|
2680
2680
|
} = core_.VxeUI;
|
|
2681
|
-
const log_version = `table v${"3.18.
|
|
2681
|
+
const log_version = `table v${"3.18.3"}`;
|
|
2682
2682
|
const warnLog = log_log.create('warn', log_version);
|
|
2683
2683
|
const errLog = log_log.create('error', log_version);
|
|
2684
2684
|
;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
|
|
@@ -2781,6 +2781,7 @@ class ColumnInfo {
|
|
|
2781
2781
|
headerClassName: _vm.headerClassName,
|
|
2782
2782
|
footerClassName: _vm.footerClassName,
|
|
2783
2783
|
formatter,
|
|
2784
|
+
headerFormatter: _vm.headerFormatter,
|
|
2784
2785
|
footerFormatter: _vm.footerFormatter,
|
|
2785
2786
|
padding: _vm.padding,
|
|
2786
2787
|
verticalAlign: _vm.verticalAlign,
|
|
@@ -2971,14 +2972,19 @@ function createInternalData() {
|
|
|
2971
2972
|
sourceDataRowIdData: {},
|
|
2972
2973
|
fullColumnIdData: {},
|
|
2973
2974
|
fullColumnFieldData: {},
|
|
2975
|
+
// 合并表头单元格的数据
|
|
2976
|
+
mergeHeaderList: [],
|
|
2977
|
+
mergeHeaderMaps: {},
|
|
2978
|
+
// 已合并单元格数据集合
|
|
2979
|
+
mergeHeaderCellMaps: {},
|
|
2974
2980
|
// 合并单元格的数据
|
|
2975
2981
|
mergeBodyList: [],
|
|
2976
2982
|
mergeBodyMaps: {},
|
|
2983
|
+
// 已合并单元格数据集合
|
|
2984
|
+
mergeBodyCellMaps: {},
|
|
2977
2985
|
// 合并表尾的数据
|
|
2978
2986
|
mergeFooterList: [],
|
|
2979
2987
|
mergeFooterMaps: {},
|
|
2980
|
-
// 已合并单元格数据集合
|
|
2981
|
-
mergeBodyCellMaps: {},
|
|
2982
2988
|
// 已合并表尾数据集合
|
|
2983
2989
|
mergeFooterCellMaps: {},
|
|
2984
2990
|
// 已展开的行集合
|
|
@@ -3069,6 +3075,72 @@ const convertHeaderColumnToRows = originColumns => {
|
|
|
3069
3075
|
});
|
|
3070
3076
|
return rows;
|
|
3071
3077
|
};
|
|
3078
|
+
function convertHeaderToGridRows(spanColumns) {
|
|
3079
|
+
const rSize = spanColumns.length;
|
|
3080
|
+
const cSize = spanColumns[0].reduce((sum, cell) => sum + cell.colSpan, 0);
|
|
3081
|
+
const occupiedRows = [];
|
|
3082
|
+
const fullRows = [];
|
|
3083
|
+
for (let rIndex = 0; rIndex < rSize; rIndex++) {
|
|
3084
|
+
const oCols = [];
|
|
3085
|
+
const dCols = [];
|
|
3086
|
+
for (let cIndex = 0; cIndex < cSize; cIndex++) {
|
|
3087
|
+
oCols.push(false);
|
|
3088
|
+
dCols.push('');
|
|
3089
|
+
}
|
|
3090
|
+
occupiedRows.push(oCols);
|
|
3091
|
+
fullRows.push(dCols);
|
|
3092
|
+
}
|
|
3093
|
+
for (let rIndex = 0; rIndex < rSize; rIndex++) {
|
|
3094
|
+
let currColIndex = 0;
|
|
3095
|
+
for (const column of spanColumns[rIndex]) {
|
|
3096
|
+
const {
|
|
3097
|
+
colSpan,
|
|
3098
|
+
rowSpan
|
|
3099
|
+
} = column;
|
|
3100
|
+
let startColIndex = -1;
|
|
3101
|
+
for (let ccIndex = currColIndex; ccIndex <= cSize - colSpan; ccIndex++) {
|
|
3102
|
+
let oFlag = true;
|
|
3103
|
+
for (let csIndex = 0; csIndex < colSpan; csIndex++) {
|
|
3104
|
+
if (occupiedRows[rIndex][ccIndex + csIndex]) {
|
|
3105
|
+
oFlag = false;
|
|
3106
|
+
break;
|
|
3107
|
+
}
|
|
3108
|
+
}
|
|
3109
|
+
if (oFlag) {
|
|
3110
|
+
startColIndex = ccIndex;
|
|
3111
|
+
break;
|
|
3112
|
+
}
|
|
3113
|
+
}
|
|
3114
|
+
if (startColIndex === -1) {
|
|
3115
|
+
for (let j = 0; j <= cSize - colSpan; j++) {
|
|
3116
|
+
let oFlag = true;
|
|
3117
|
+
for (let k = 0; k < colSpan; k++) {
|
|
3118
|
+
if (occupiedRows[rIndex][j + k]) {
|
|
3119
|
+
oFlag = false;
|
|
3120
|
+
break;
|
|
3121
|
+
}
|
|
3122
|
+
}
|
|
3123
|
+
if (oFlag) {
|
|
3124
|
+
startColIndex = j;
|
|
3125
|
+
break;
|
|
3126
|
+
}
|
|
3127
|
+
}
|
|
3128
|
+
if (startColIndex === -1) {
|
|
3129
|
+
// error
|
|
3130
|
+
break;
|
|
3131
|
+
}
|
|
3132
|
+
}
|
|
3133
|
+
for (let srIndex = rIndex; srIndex < rIndex + rowSpan; srIndex++) {
|
|
3134
|
+
for (let scIndex = startColIndex; scIndex < startColIndex + colSpan; scIndex++) {
|
|
3135
|
+
occupiedRows[srIndex][scIndex] = true;
|
|
3136
|
+
fullRows[srIndex][scIndex] = column;
|
|
3137
|
+
}
|
|
3138
|
+
}
|
|
3139
|
+
currColIndex = startColIndex + colSpan;
|
|
3140
|
+
}
|
|
3141
|
+
}
|
|
3142
|
+
return fullRows;
|
|
3143
|
+
}
|
|
3072
3144
|
function restoreScrollLocation($xeTable, scrollLeft, scrollTop) {
|
|
3073
3145
|
const internalData = $xeTable;
|
|
3074
3146
|
if (scrollLeft || scrollTop) {
|
|
@@ -3615,25 +3687,31 @@ function colToVisible($xeTable, column, row) {
|
|
|
3615
3687
|
function getOnName(type) {
|
|
3616
3688
|
return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().kebabCase(type);
|
|
3617
3689
|
}
|
|
3618
|
-
function getModelEvent(
|
|
3619
|
-
switch (
|
|
3620
|
-
case '
|
|
3621
|
-
case '
|
|
3622
|
-
|
|
3690
|
+
function getModelEvent(name) {
|
|
3691
|
+
switch (name) {
|
|
3692
|
+
case 'VxeInput':
|
|
3693
|
+
case 'VxeTextarea':
|
|
3694
|
+
case 'VxeNumberInput':
|
|
3695
|
+
case 'VxeSelect':
|
|
3696
|
+
case 'VxeTreeSelect':
|
|
3697
|
+
case 'VxeTableSelect':
|
|
3698
|
+
case 'VxeDatePicker':
|
|
3699
|
+
case 'VxeDateRangePicker':
|
|
3700
|
+
return 'modelValue';
|
|
3623
3701
|
case 'select':
|
|
3624
3702
|
return 'change';
|
|
3625
3703
|
}
|
|
3626
|
-
return '
|
|
3704
|
+
return 'input';
|
|
3627
3705
|
}
|
|
3628
|
-
function getChangeEvent(
|
|
3629
|
-
switch (
|
|
3706
|
+
function getChangeEvent(name) {
|
|
3707
|
+
switch (name) {
|
|
3630
3708
|
case 'input':
|
|
3631
3709
|
case 'textarea':
|
|
3632
3710
|
case 'VxeInput':
|
|
3633
|
-
case 'VxeNumberInput':
|
|
3634
3711
|
case 'VxeTextarea':
|
|
3635
|
-
case '$input':
|
|
3712
|
+
case '$input': // 已废弃
|
|
3636
3713
|
case '$textarea':
|
|
3714
|
+
// 已废弃
|
|
3637
3715
|
return 'input';
|
|
3638
3716
|
}
|
|
3639
3717
|
return 'change';
|
|
@@ -5163,6 +5241,8 @@ const columnProps = {
|
|
|
5163
5241
|
footerClassName: [String, Function],
|
|
5164
5242
|
// 格式化显示内容
|
|
5165
5243
|
formatter: [Function, Array, String],
|
|
5244
|
+
// 格式化表头显示内容
|
|
5245
|
+
headerFormatter: [Function, Array, String],
|
|
5166
5246
|
// 格式化表尾显示内容
|
|
5167
5247
|
footerFormatter: [Function, Array, String],
|
|
5168
5248
|
// 是否显示间距
|
|
@@ -5392,7 +5472,7 @@ const tableProps = {
|
|
|
5392
5472
|
// 表格的最小高度
|
|
5393
5473
|
minHeight: {
|
|
5394
5474
|
type: [Number, String],
|
|
5395
|
-
default: () =>
|
|
5475
|
+
default: () => null
|
|
5396
5476
|
},
|
|
5397
5477
|
// 表格的最大高度
|
|
5398
5478
|
maxHeight: [Number, String],
|
|
@@ -5511,9 +5591,17 @@ const tableProps = {
|
|
|
5511
5591
|
headerRowStyle: [Object, Function],
|
|
5512
5592
|
// 给表尾行附加样式
|
|
5513
5593
|
footerRowStyle: [Object, Function],
|
|
5514
|
-
//
|
|
5594
|
+
// 用于分组表头,显示为自定义列头,配合 mergeHeaderCells 灵活实现自定义合并
|
|
5595
|
+
showCustomHeader: {
|
|
5596
|
+
type: Boolean,
|
|
5597
|
+
default: () => props_getConfig().table.showCustomHeader
|
|
5598
|
+
},
|
|
5599
|
+
// 临时合并指定的表头单元格
|
|
5600
|
+
mergeHeaderCells: Array,
|
|
5601
|
+
// 临时合并指定的单元格
|
|
5515
5602
|
mergeCells: Array,
|
|
5516
|
-
//
|
|
5603
|
+
// 临时合并指定的表尾单元格
|
|
5604
|
+
mergeFooterCells: Array,
|
|
5517
5605
|
mergeFooterItems: Array,
|
|
5518
5606
|
// 自定义合并行或列的方法
|
|
5519
5607
|
spanMethod: Function,
|
|
@@ -7070,7 +7158,7 @@ function updateStyle($xeTable) {
|
|
|
7070
7158
|
}
|
|
7071
7159
|
if (xRightCornerEl) {
|
|
7072
7160
|
xRightCornerEl.style.width = scrollbarXToTop ? '' : `${osbWidth}px`;
|
|
7073
|
-
xRightCornerEl.style.display = scrollbarXToTop ? '' :
|
|
7161
|
+
xRightCornerEl.style.display = scrollbarXToTop ? '' : xScrollbarVisible === 'visible' ? 'block' : '';
|
|
7074
7162
|
}
|
|
7075
7163
|
const scrollYVirtualEl = $xeTable.$refs.refScrollYVirtualElem;
|
|
7076
7164
|
if (scrollYVirtualEl) {
|
|
@@ -7081,7 +7169,7 @@ function updateStyle($xeTable) {
|
|
|
7081
7169
|
const yTopCornerEl = $xeTable.$refs.refScrollYTopCornerElem;
|
|
7082
7170
|
if (yTopCornerEl) {
|
|
7083
7171
|
yTopCornerEl.style.height = `${tHeaderHeight}px`;
|
|
7084
|
-
yTopCornerEl.style.display =
|
|
7172
|
+
yTopCornerEl.style.display = tHeaderHeight && yScrollbarVisible === 'visible' ? 'block' : '';
|
|
7085
7173
|
}
|
|
7086
7174
|
const yWrapperEl = $xeTable.$refs.refScrollYWrapperElem;
|
|
7087
7175
|
if (yWrapperEl) {
|
|
@@ -7092,7 +7180,7 @@ function updateStyle($xeTable) {
|
|
|
7092
7180
|
if (yBottomCornerEl) {
|
|
7093
7181
|
yBottomCornerEl.style.height = `${tFooterHeight}px`;
|
|
7094
7182
|
yBottomCornerEl.style.top = `${tHeaderHeight + tbHeight}px`;
|
|
7095
|
-
yBottomCornerEl.style.display =
|
|
7183
|
+
yBottomCornerEl.style.display = tFooterHeight && yScrollbarVisible === 'visible' ? 'block' : '';
|
|
7096
7184
|
}
|
|
7097
7185
|
const rowExpandEl = $xeTable.$refs.refRowExpandElem;
|
|
7098
7186
|
if (rowExpandEl) {
|
|
@@ -8120,15 +8208,71 @@ function handleBodyMerge($xeTable, merges) {
|
|
|
8120
8208
|
});
|
|
8121
8209
|
}
|
|
8122
8210
|
}
|
|
8123
|
-
function
|
|
8211
|
+
function removeBodyMerges($xeTable, merges) {
|
|
8212
|
+
const internalData = $xeTable;
|
|
8213
|
+
const {
|
|
8214
|
+
mergeBodyList,
|
|
8215
|
+
fullColumnIdData,
|
|
8216
|
+
fullAllDataRowIdData,
|
|
8217
|
+
mergeBodyMaps
|
|
8218
|
+
} = internalData;
|
|
8219
|
+
const rest = [];
|
|
8220
|
+
if (merges) {
|
|
8221
|
+
const {
|
|
8222
|
+
handleGetRowId
|
|
8223
|
+
} = createHandleGetRowId($xeTable);
|
|
8224
|
+
if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(merges)) {
|
|
8225
|
+
merges = [merges];
|
|
8226
|
+
}
|
|
8227
|
+
merges.forEach(item => {
|
|
8228
|
+
const {
|
|
8229
|
+
row: margeRow,
|
|
8230
|
+
col: margeCol
|
|
8231
|
+
} = item;
|
|
8232
|
+
let mergeRowIndex = -1;
|
|
8233
|
+
let mergeColumnIndex = -1;
|
|
8234
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(margeRow)) {
|
|
8235
|
+
mergeRowIndex = margeRow;
|
|
8236
|
+
} else {
|
|
8237
|
+
const rowid = margeRow ? handleGetRowId(margeRow) : null;
|
|
8238
|
+
const rowRest = rowid ? fullAllDataRowIdData[rowid] : null;
|
|
8239
|
+
if (rowRest) {
|
|
8240
|
+
mergeRowIndex = rowRest._index;
|
|
8241
|
+
}
|
|
8242
|
+
}
|
|
8243
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(margeCol)) {
|
|
8244
|
+
mergeColumnIndex = margeCol;
|
|
8245
|
+
} else {
|
|
8246
|
+
const colid = margeCol ? margeCol.id : null;
|
|
8247
|
+
const colRest = colid ? fullColumnIdData[colid] : null;
|
|
8248
|
+
if (colRest) {
|
|
8249
|
+
mergeColumnIndex = colRest._index;
|
|
8250
|
+
}
|
|
8251
|
+
}
|
|
8252
|
+
const mcIndex = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findIndexOf(mergeBodyList, item => item.row === mergeRowIndex && item.col === mergeColumnIndex);
|
|
8253
|
+
if (mcIndex > -1) {
|
|
8254
|
+
const rItems = mergeBodyList.splice(mcIndex, 1);
|
|
8255
|
+
const item = rItems[0];
|
|
8256
|
+
if (item) {
|
|
8257
|
+
rest.push(rItems[0]);
|
|
8258
|
+
if (mergeBodyMaps[`${mergeRowIndex}:${mergeColumnIndex}`]) {
|
|
8259
|
+
delete mergeBodyMaps[`${mergeRowIndex}:${mergeColumnIndex}`];
|
|
8260
|
+
}
|
|
8261
|
+
}
|
|
8262
|
+
}
|
|
8263
|
+
});
|
|
8264
|
+
}
|
|
8265
|
+
return rest;
|
|
8266
|
+
}
|
|
8267
|
+
function handleHeaderMerge($xeTable, merges) {
|
|
8124
8268
|
const reactData = $xeTable;
|
|
8125
8269
|
const internalData = $xeTable;
|
|
8126
8270
|
const {
|
|
8127
8271
|
footerTableData
|
|
8128
8272
|
} = reactData;
|
|
8129
8273
|
const {
|
|
8130
|
-
|
|
8131
|
-
|
|
8274
|
+
mergeHeaderList,
|
|
8275
|
+
mergeHeaderMaps,
|
|
8132
8276
|
fullColumnIdData
|
|
8133
8277
|
} = internalData;
|
|
8134
8278
|
if (merges) {
|
|
@@ -8162,7 +8306,7 @@ function handleFooterMerge($xeTable, merges) {
|
|
|
8162
8306
|
if (rowspan > 1 || colspan > 1) {
|
|
8163
8307
|
const row = footerTableData[mergeRowIndex];
|
|
8164
8308
|
const column = visibleColumn[mergeColumnIndex];
|
|
8165
|
-
let mergeItem =
|
|
8309
|
+
let mergeItem = mergeHeaderMaps[`${mergeRowIndex}:${mergeColumnIndex}`];
|
|
8166
8310
|
if (mergeItem) {
|
|
8167
8311
|
mergeItem.rowspan = rowspan;
|
|
8168
8312
|
mergeItem.colspan = colspan;
|
|
@@ -8179,27 +8323,23 @@ function handleFooterMerge($xeTable, merges) {
|
|
|
8179
8323
|
_rowspan: rowspan,
|
|
8180
8324
|
_colspan: colspan
|
|
8181
8325
|
};
|
|
8182
|
-
|
|
8183
|
-
|
|
8326
|
+
mergeHeaderMaps[`${mergeRowIndex}:${mergeColumnIndex}`] = mergeItem;
|
|
8327
|
+
mergeHeaderList.push(mergeItem);
|
|
8184
8328
|
}
|
|
8185
8329
|
}
|
|
8186
8330
|
}
|
|
8187
8331
|
});
|
|
8188
8332
|
}
|
|
8189
8333
|
}
|
|
8190
|
-
function
|
|
8334
|
+
function removeHeaderMerges($xeTable, merges) {
|
|
8191
8335
|
const internalData = $xeTable;
|
|
8192
8336
|
const {
|
|
8193
|
-
|
|
8337
|
+
mergeHeaderList,
|
|
8194
8338
|
fullColumnIdData,
|
|
8195
|
-
|
|
8196
|
-
mergeBodyMaps
|
|
8339
|
+
mergeHeaderMaps
|
|
8197
8340
|
} = internalData;
|
|
8198
8341
|
const rest = [];
|
|
8199
8342
|
if (merges) {
|
|
8200
|
-
const {
|
|
8201
|
-
handleGetRowId
|
|
8202
|
-
} = createHandleGetRowId($xeTable);
|
|
8203
8343
|
if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(merges)) {
|
|
8204
8344
|
merges = [merges];
|
|
8205
8345
|
}
|
|
@@ -8208,17 +8348,8 @@ function removeBodyMerges($xeTable, merges) {
|
|
|
8208
8348
|
row: margeRow,
|
|
8209
8349
|
col: margeCol
|
|
8210
8350
|
} = item;
|
|
8211
|
-
|
|
8351
|
+
const mergeRowIndex = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(margeRow) ? margeRow : -1;
|
|
8212
8352
|
let mergeColumnIndex = -1;
|
|
8213
|
-
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(margeRow)) {
|
|
8214
|
-
mergeRowIndex = margeRow;
|
|
8215
|
-
} else {
|
|
8216
|
-
const rowid = margeRow ? handleGetRowId(margeRow) : null;
|
|
8217
|
-
const rowRest = rowid ? fullAllDataRowIdData[rowid] : null;
|
|
8218
|
-
if (rowRest) {
|
|
8219
|
-
mergeRowIndex = rowRest._index;
|
|
8220
|
-
}
|
|
8221
|
-
}
|
|
8222
8353
|
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(margeCol)) {
|
|
8223
8354
|
mergeColumnIndex = margeCol;
|
|
8224
8355
|
} else {
|
|
@@ -8228,14 +8359,14 @@ function removeBodyMerges($xeTable, merges) {
|
|
|
8228
8359
|
mergeColumnIndex = colRest._index;
|
|
8229
8360
|
}
|
|
8230
8361
|
}
|
|
8231
|
-
const mcIndex = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findIndexOf(
|
|
8362
|
+
const mcIndex = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findIndexOf(mergeHeaderList, item => item.row === mergeRowIndex && item.col === mergeColumnIndex);
|
|
8232
8363
|
if (mcIndex > -1) {
|
|
8233
|
-
const rItems =
|
|
8364
|
+
const rItems = mergeHeaderList.splice(mcIndex, 1);
|
|
8234
8365
|
const item = rItems[0];
|
|
8235
8366
|
if (item) {
|
|
8236
|
-
rest.push(
|
|
8237
|
-
if (
|
|
8238
|
-
delete
|
|
8367
|
+
rest.push(item);
|
|
8368
|
+
if (mergeHeaderMaps[`${mergeRowIndex}:${mergeColumnIndex}`]) {
|
|
8369
|
+
delete mergeHeaderMaps[`${mergeRowIndex}:${mergeColumnIndex}`];
|
|
8239
8370
|
}
|
|
8240
8371
|
}
|
|
8241
8372
|
}
|
|
@@ -8243,6 +8374,73 @@ function removeBodyMerges($xeTable, merges) {
|
|
|
8243
8374
|
}
|
|
8244
8375
|
return rest;
|
|
8245
8376
|
}
|
|
8377
|
+
function handleFooterMerge($xeTable, merges) {
|
|
8378
|
+
const reactData = $xeTable;
|
|
8379
|
+
const internalData = $xeTable;
|
|
8380
|
+
const {
|
|
8381
|
+
footerTableData
|
|
8382
|
+
} = reactData;
|
|
8383
|
+
const {
|
|
8384
|
+
mergeFooterList,
|
|
8385
|
+
mergeFooterMaps,
|
|
8386
|
+
fullColumnIdData
|
|
8387
|
+
} = internalData;
|
|
8388
|
+
if (merges) {
|
|
8389
|
+
const {
|
|
8390
|
+
visibleColumn
|
|
8391
|
+
} = internalData;
|
|
8392
|
+
if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(merges)) {
|
|
8393
|
+
merges = [merges];
|
|
8394
|
+
}
|
|
8395
|
+
merges.forEach(item => {
|
|
8396
|
+
let {
|
|
8397
|
+
row: margeRow,
|
|
8398
|
+
col: margeCol,
|
|
8399
|
+
rowspan,
|
|
8400
|
+
colspan
|
|
8401
|
+
} = item;
|
|
8402
|
+
const mergeRowIndex = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(margeRow) ? margeRow : -1;
|
|
8403
|
+
let mergeColumnIndex = -1;
|
|
8404
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(margeCol)) {
|
|
8405
|
+
mergeColumnIndex = margeCol;
|
|
8406
|
+
} else {
|
|
8407
|
+
const colid = margeCol ? margeCol.id : null;
|
|
8408
|
+
const colRest = colid ? fullColumnIdData[colid] : null;
|
|
8409
|
+
if (colRest) {
|
|
8410
|
+
mergeColumnIndex = colRest._index;
|
|
8411
|
+
}
|
|
8412
|
+
}
|
|
8413
|
+
if (mergeRowIndex > -1 && mergeColumnIndex > -1 && (rowspan || colspan)) {
|
|
8414
|
+
rowspan = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(rowspan) || 1;
|
|
8415
|
+
colspan = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(colspan) || 1;
|
|
8416
|
+
if (rowspan > 1 || colspan > 1) {
|
|
8417
|
+
const row = footerTableData[mergeRowIndex];
|
|
8418
|
+
const column = visibleColumn[mergeColumnIndex];
|
|
8419
|
+
let mergeItem = mergeFooterMaps[`${mergeRowIndex}:${mergeColumnIndex}`];
|
|
8420
|
+
if (mergeItem) {
|
|
8421
|
+
mergeItem.rowspan = rowspan;
|
|
8422
|
+
mergeItem.colspan = colspan;
|
|
8423
|
+
mergeItem._rowspan = rowspan;
|
|
8424
|
+
mergeItem._colspan = colspan;
|
|
8425
|
+
} else {
|
|
8426
|
+
mergeItem = {
|
|
8427
|
+
row: mergeRowIndex,
|
|
8428
|
+
col: mergeColumnIndex,
|
|
8429
|
+
rowspan,
|
|
8430
|
+
colspan,
|
|
8431
|
+
_row: row,
|
|
8432
|
+
_col: column,
|
|
8433
|
+
_rowspan: rowspan,
|
|
8434
|
+
_colspan: colspan
|
|
8435
|
+
};
|
|
8436
|
+
mergeFooterMaps[`${mergeRowIndex}:${mergeColumnIndex}`] = mergeItem;
|
|
8437
|
+
mergeFooterList.push(mergeItem);
|
|
8438
|
+
}
|
|
8439
|
+
}
|
|
8440
|
+
}
|
|
8441
|
+
});
|
|
8442
|
+
}
|
|
8443
|
+
}
|
|
8246
8444
|
function removeFooterMerges($xeTable, merges) {
|
|
8247
8445
|
const internalData = $xeTable;
|
|
8248
8446
|
const {
|
|
@@ -8370,10 +8568,26 @@ function clearAllSort($xeTable) {
|
|
|
8370
8568
|
function calcTableHeight($xeTable, key) {
|
|
8371
8569
|
const props = $xeTable;
|
|
8372
8570
|
const reactData = $xeTable;
|
|
8571
|
+
const {
|
|
8572
|
+
editConfig
|
|
8573
|
+
} = props;
|
|
8373
8574
|
const {
|
|
8374
8575
|
parentHeight
|
|
8375
8576
|
} = reactData;
|
|
8376
|
-
|
|
8577
|
+
let val = props[key];
|
|
8578
|
+
if (key === 'minHeight') {
|
|
8579
|
+
const defMinHeight = methods_getConfig().table.minHeight;
|
|
8580
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(val)) {
|
|
8581
|
+
if (eqEmptyValue(defMinHeight)) {
|
|
8582
|
+
// 编辑模式默认最小高度
|
|
8583
|
+
if (isEnableConf(editConfig)) {
|
|
8584
|
+
val = 144;
|
|
8585
|
+
}
|
|
8586
|
+
} else {
|
|
8587
|
+
val = defMinHeight;
|
|
8588
|
+
}
|
|
8589
|
+
}
|
|
8590
|
+
}
|
|
8377
8591
|
let num = 0;
|
|
8378
8592
|
if (val) {
|
|
8379
8593
|
if (val === '100%' || val === 'auto') {
|
|
@@ -8922,13 +9136,24 @@ function handleDefaultMergeCells($xeTable) {
|
|
|
8922
9136
|
$xeTable.setMergeCells(mergeCells);
|
|
8923
9137
|
}
|
|
8924
9138
|
}
|
|
9139
|
+
function handleDefaultMergeHeaderItems($xeTable) {
|
|
9140
|
+
const props = $xeTable;
|
|
9141
|
+
const {
|
|
9142
|
+
mergeHeaderCells
|
|
9143
|
+
} = props;
|
|
9144
|
+
if (mergeHeaderCells) {
|
|
9145
|
+
$xeTable.setMergeHeaderCells(mergeHeaderCells);
|
|
9146
|
+
}
|
|
9147
|
+
}
|
|
8925
9148
|
function handleDefaultMergeFooterItems($xeTable) {
|
|
8926
9149
|
const props = $xeTable;
|
|
8927
9150
|
const {
|
|
9151
|
+
mergeFooterCells,
|
|
8928
9152
|
mergeFooterItems
|
|
8929
9153
|
} = props;
|
|
8930
|
-
|
|
8931
|
-
|
|
9154
|
+
const mFooterCells = mergeFooterCells || mergeFooterItems;
|
|
9155
|
+
if (mFooterCells) {
|
|
9156
|
+
$xeTable.setMergeFooterCells(mFooterCells);
|
|
8932
9157
|
}
|
|
8933
9158
|
}
|
|
8934
9159
|
// 计算可视渲染相关数据
|
|
@@ -9434,6 +9659,10 @@ function loadTableData($xeTable, datas, isReset) {
|
|
|
9434
9659
|
}
|
|
9435
9660
|
handleReserveStatus($xeTable);
|
|
9436
9661
|
$xeTable.checkSelectionStatus();
|
|
9662
|
+
$xeTable.dispatchEvent('data-change', {
|
|
9663
|
+
visibleColumn: internalData.visibleColumn,
|
|
9664
|
+
visibleData: internalData.afterFullData
|
|
9665
|
+
}, null);
|
|
9437
9666
|
return new Promise(resolve => {
|
|
9438
9667
|
$xeTable.$nextTick().then(() => handleRecalculateStyle($xeTable, false, false, false)).then(() => {
|
|
9439
9668
|
handleRecalculateStyle($xeTable, false, true, true);
|
|
@@ -9490,6 +9719,7 @@ function handleLoadDefaults($xeTable) {
|
|
|
9490
9719
|
handleDefaultTreeExpand($xeTable);
|
|
9491
9720
|
handleDefaultRowGroupExpand($xeTable);
|
|
9492
9721
|
handleDefaultMergeCells($xeTable);
|
|
9722
|
+
handleDefaultMergeHeaderItems($xeTable);
|
|
9493
9723
|
handleDefaultMergeFooterItems($xeTable);
|
|
9494
9724
|
$xeTable.$nextTick(() => setTimeout(() => $xeTable.recalculate()));
|
|
9495
9725
|
}
|
|
@@ -13523,6 +13753,16 @@ const Methods = {
|
|
|
13523
13753
|
internalData.mergeBodyCellMaps = buildMergeData(mergeBodyList);
|
|
13524
13754
|
reactData.mergeBodyFlag++;
|
|
13525
13755
|
},
|
|
13756
|
+
handleUpdateHeaderMerge() {
|
|
13757
|
+
const $xeTable = this;
|
|
13758
|
+
const reactData = $xeTable;
|
|
13759
|
+
const internalData = $xeTable;
|
|
13760
|
+
const {
|
|
13761
|
+
mergeHeaderList
|
|
13762
|
+
} = internalData;
|
|
13763
|
+
internalData.mergeHeaderCellMaps = buildMergeData(mergeHeaderList);
|
|
13764
|
+
reactData.mergeHeadFlag++;
|
|
13765
|
+
},
|
|
13526
13766
|
handleUpdateFooterMerge() {
|
|
13527
13767
|
const $xeTable = this;
|
|
13528
13768
|
const reactData = $xeTable;
|
|
@@ -18754,6 +18994,10 @@ const Methods = {
|
|
|
18754
18994
|
}
|
|
18755
18995
|
reactData.footerTableData = footData;
|
|
18756
18996
|
$xeTable.handleUpdateFooterMerge();
|
|
18997
|
+
$xeTable.dispatchEvent('footer-data-change', {
|
|
18998
|
+
visibleColumn: internalData.visibleColumn,
|
|
18999
|
+
footData
|
|
19000
|
+
}, null);
|
|
18757
19001
|
return $xeTable.$nextTick();
|
|
18758
19002
|
},
|
|
18759
19003
|
/**
|
|
@@ -18840,45 +19084,101 @@ const Methods = {
|
|
|
18840
19084
|
return updateStyle($xeTable);
|
|
18841
19085
|
});
|
|
18842
19086
|
},
|
|
18843
|
-
|
|
19087
|
+
setMergeHeaderCells(merges) {
|
|
19088
|
+
const $xeTable = this;
|
|
19089
|
+
handleHeaderMerge($xeTable, merges);
|
|
19090
|
+
$xeTable.handleUpdateHeaderMerge();
|
|
19091
|
+
return $xeTable.$nextTick().then(() => {
|
|
19092
|
+
return updateStyle($xeTable);
|
|
19093
|
+
});
|
|
19094
|
+
},
|
|
19095
|
+
/**
|
|
19096
|
+
* 移除表头单元格合并 [{row:Row|number, col:ColumnInfo|number}]
|
|
19097
|
+
*/
|
|
19098
|
+
removeMergeHeaderCells(merges) {
|
|
19099
|
+
const $xeTable = this;
|
|
19100
|
+
const rest = removeHeaderMerges($xeTable, merges);
|
|
19101
|
+
$xeTable.handleUpdateHeaderMerge();
|
|
19102
|
+
return $xeTable.$nextTick().then(() => {
|
|
19103
|
+
updateStyle($xeTable);
|
|
19104
|
+
return rest;
|
|
19105
|
+
});
|
|
19106
|
+
},
|
|
19107
|
+
/**
|
|
19108
|
+
* 获取所有被合并的表头单元格
|
|
19109
|
+
*/
|
|
19110
|
+
getMergeHeaderCells() {
|
|
19111
|
+
const $xeTable = this;
|
|
19112
|
+
const internalData = $xeTable;
|
|
19113
|
+
return internalData.mergeHeaderList.slice(0);
|
|
19114
|
+
},
|
|
19115
|
+
/**
|
|
19116
|
+
* 清除所有表头单元格合并
|
|
19117
|
+
*/
|
|
19118
|
+
clearMergeHeaderCells() {
|
|
19119
|
+
const $xeTable = this;
|
|
19120
|
+
const reactData = $xeTable;
|
|
19121
|
+
const internalData = $xeTable;
|
|
19122
|
+
internalData.mergeHeaderList = [];
|
|
19123
|
+
internalData.mergeHeaderMaps = {};
|
|
19124
|
+
internalData.mergeHeaderCellMaps = {};
|
|
19125
|
+
reactData.mergeHeadFlag++;
|
|
19126
|
+
return $xeTable.$nextTick().then(() => {
|
|
19127
|
+
return updateStyle($xeTable);
|
|
19128
|
+
});
|
|
19129
|
+
},
|
|
19130
|
+
setMergeFooterCells(merges) {
|
|
18844
19131
|
const $xeTable = this;
|
|
18845
19132
|
const props = $xeTable;
|
|
18846
19133
|
if (props.footerSpanMethod) {
|
|
18847
|
-
errLog('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
|
|
19134
|
+
errLog('vxe.error.errConflicts', ['merge-footer-cells | merge-footer-items', 'footer-span-method']);
|
|
18848
19135
|
}
|
|
18849
19136
|
handleFooterMerge($xeTable, merges);
|
|
18850
19137
|
$xeTable.handleUpdateFooterMerge();
|
|
18851
19138
|
return $xeTable.$nextTick().then(() => {
|
|
18852
|
-
$xeTable.updateCellAreas();
|
|
18853
19139
|
return updateStyle($xeTable);
|
|
18854
19140
|
});
|
|
18855
19141
|
},
|
|
18856
|
-
|
|
19142
|
+
setMergeFooterItems(merges) {
|
|
19143
|
+
const $xeTable = this;
|
|
19144
|
+
// errLog('vxe.error.delFunc', ['setMergeFooterItems', 'setMergeFooterCells'])
|
|
19145
|
+
return $xeTable.setMergeFooterCells(merges);
|
|
19146
|
+
},
|
|
19147
|
+
removeMergeFooterCells(merges) {
|
|
18857
19148
|
const $xeTable = this;
|
|
18858
19149
|
const props = $xeTable;
|
|
18859
19150
|
if (props.footerSpanMethod) {
|
|
18860
|
-
errLog('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
|
|
19151
|
+
errLog('vxe.error.errConflicts', ['merge-footer-cells | merge-footer-items', 'footer-span-method']);
|
|
18861
19152
|
}
|
|
18862
19153
|
const rest = removeFooterMerges($xeTable, merges);
|
|
18863
19154
|
$xeTable.handleUpdateFooterMerge();
|
|
18864
19155
|
return $xeTable.$nextTick().then(() => {
|
|
18865
|
-
$xeTable.updateCellAreas();
|
|
18866
19156
|
updateStyle($xeTable);
|
|
18867
19157
|
return rest;
|
|
18868
19158
|
});
|
|
18869
19159
|
},
|
|
19160
|
+
removeMergeFooterItems(merges) {
|
|
19161
|
+
const $xeTable = this;
|
|
19162
|
+
// errLog('vxe.error.delFunc', ['removeMergeFooterItems', 'removeMergeFooterCells'])
|
|
19163
|
+
return $xeTable.removeMergeFooterCells(merges);
|
|
19164
|
+
},
|
|
18870
19165
|
/**
|
|
18871
19166
|
* 获取所有被合并的表尾
|
|
18872
19167
|
*/
|
|
18873
|
-
|
|
19168
|
+
getMergeFooterCells() {
|
|
18874
19169
|
const $xeTable = this;
|
|
18875
19170
|
const internalData = $xeTable;
|
|
18876
19171
|
return internalData.mergeFooterList.slice(0);
|
|
18877
19172
|
},
|
|
19173
|
+
getMergeFooterItems() {
|
|
19174
|
+
const $xeTable = this;
|
|
19175
|
+
// errLog('vxe.error.delFunc', ['getMergeFooterItems', 'getMergeFooterCells'])
|
|
19176
|
+
return $xeTable.getMergeFooterCells();
|
|
19177
|
+
},
|
|
18878
19178
|
/**
|
|
18879
19179
|
* 清除所有表尾合并
|
|
18880
19180
|
*/
|
|
18881
|
-
|
|
19181
|
+
clearMergeFooterCells() {
|
|
18882
19182
|
const $xeTable = this;
|
|
18883
19183
|
const reactData = $xeTable;
|
|
18884
19184
|
const internalData = $xeTable;
|
|
@@ -18890,6 +19190,11 @@ const Methods = {
|
|
|
18890
19190
|
return updateStyle($xeTable);
|
|
18891
19191
|
});
|
|
18892
19192
|
},
|
|
19193
|
+
clearMergeFooterItems() {
|
|
19194
|
+
const $xeTable = this;
|
|
19195
|
+
// errLog('vxe.error.delFunc', ['clearMergeFooterItems', 'clearMergeFooterCells'])
|
|
19196
|
+
return $xeTable.clearMergeFooterCells();
|
|
19197
|
+
},
|
|
18893
19198
|
handleUpdateAggData() {
|
|
18894
19199
|
const $xeTable = this;
|
|
18895
19200
|
const internalData = $xeTable;
|
|
@@ -19258,14 +19563,13 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
|
|
|
19258
19563
|
// hover 进入事件
|
|
19259
19564
|
if (showTitle || showTooltip || showAllTip || tooltipConfig) {
|
|
19260
19565
|
tdOns.mouseenter = evnt => {
|
|
19261
|
-
if (isVMScrollProcess($xeTable)) {
|
|
19262
|
-
|
|
19263
|
-
|
|
19264
|
-
|
|
19265
|
-
|
|
19266
|
-
|
|
19267
|
-
|
|
19268
|
-
$xeTable.triggerBodyTooltipEvent(evnt, cellParams);
|
|
19566
|
+
if (!isVMScrollProcess($xeTable)) {
|
|
19567
|
+
if (showTitle) {
|
|
19568
|
+
updateCellTitle(evnt.currentTarget, column);
|
|
19569
|
+
} else if (showTooltip || showAllTip) {
|
|
19570
|
+
// 如果配置了显示 tooltip
|
|
19571
|
+
$xeTable.triggerBodyTooltipEvent(evnt, cellParams);
|
|
19572
|
+
}
|
|
19269
19573
|
}
|
|
19270
19574
|
$xeTable.dispatchEvent('cell-mouseenter', Object.assign({
|
|
19271
19575
|
cell: evnt.currentTarget
|
|
@@ -19275,11 +19579,10 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
|
|
|
19275
19579
|
// hover 退出事件
|
|
19276
19580
|
if (showTooltip || showAllTip || tooltipConfig) {
|
|
19277
19581
|
tdOns.mouseleave = evnt => {
|
|
19278
|
-
if (isVMScrollProcess($xeTable)) {
|
|
19279
|
-
|
|
19280
|
-
|
|
19281
|
-
|
|
19282
|
-
$xeTable.handleTargetLeaveEvent(evnt);
|
|
19582
|
+
if (!isVMScrollProcess($xeTable)) {
|
|
19583
|
+
if (showTooltip || showAllTip) {
|
|
19584
|
+
$xeTable.handleTargetLeaveEvent(evnt);
|
|
19585
|
+
}
|
|
19283
19586
|
}
|
|
19284
19587
|
$xeTable.dispatchEvent('cell-mouseleave', Object.assign({
|
|
19285
19588
|
cell: evnt.currentTarget
|
|
@@ -20027,7 +20330,7 @@ const {
|
|
|
20027
20330
|
renderEmptyElement: header_renderEmptyElement
|
|
20028
20331
|
} = core_.VxeUI;
|
|
20029
20332
|
const cellType = 'header';
|
|
20030
|
-
|
|
20333
|
+
function header_renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, $rowIndex, cols) {
|
|
20031
20334
|
const props = _vm;
|
|
20032
20335
|
const $xeTable = _vm.$parent;
|
|
20033
20336
|
const $xeGrid = $xeTable.$xeGrid;
|
|
@@ -20041,6 +20344,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20041
20344
|
const {
|
|
20042
20345
|
resizable: allResizable,
|
|
20043
20346
|
columnKey,
|
|
20347
|
+
showCustomHeader,
|
|
20044
20348
|
headerCellClassName,
|
|
20045
20349
|
headerCellStyle,
|
|
20046
20350
|
showHeaderOverflow: allColumnHeaderOverflow,
|
|
@@ -20054,11 +20358,14 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20054
20358
|
scrollXLoad,
|
|
20055
20359
|
scrollYLoad,
|
|
20056
20360
|
overflowX,
|
|
20361
|
+
mergeHeadFlag,
|
|
20057
20362
|
tableColumn
|
|
20058
20363
|
} = tableReactData;
|
|
20059
20364
|
const {
|
|
20060
20365
|
fullColumnIdData,
|
|
20061
|
-
scrollXStore
|
|
20366
|
+
scrollXStore,
|
|
20367
|
+
mergeHeaderList,
|
|
20368
|
+
mergeHeaderCellMaps
|
|
20062
20369
|
} = tableInternalData;
|
|
20063
20370
|
const virtualXOpts = $xeTable.computeVirtualXOpts;
|
|
20064
20371
|
const columnOpts = $xeTable.computeColumnOpts;
|
|
@@ -20072,6 +20379,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20072
20379
|
isCrossDrag,
|
|
20073
20380
|
isPeerDrag
|
|
20074
20381
|
} = columnDragOpts;
|
|
20382
|
+
const isLastRow = $rowIndex === headerGroups.length - 1;
|
|
20075
20383
|
return cols.map((column, $columnIndex) => {
|
|
20076
20384
|
const {
|
|
20077
20385
|
type,
|
|
@@ -20104,7 +20412,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20104
20412
|
hasFilter = filters.some(item => item.checked);
|
|
20105
20413
|
}
|
|
20106
20414
|
const columnIndex = colRest.index;
|
|
20107
|
-
const _columnIndex = colRest._index;
|
|
20415
|
+
const _columnIndex = showCustomHeader ? $columnIndex : colRest._index;
|
|
20108
20416
|
const cellParams = {
|
|
20109
20417
|
$table: $xeTable,
|
|
20110
20418
|
$grid: $xeGrid,
|
|
@@ -20121,10 +20429,34 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20121
20429
|
hasFilter
|
|
20122
20430
|
};
|
|
20123
20431
|
const thAttrs = {
|
|
20124
|
-
colid
|
|
20125
|
-
colspan: column.colSpan > 1 ? column.colSpan : null,
|
|
20126
|
-
rowspan: column.rowSpan > 1 ? column.rowSpan : null
|
|
20432
|
+
colid
|
|
20127
20433
|
};
|
|
20434
|
+
let isMergeCell = false;
|
|
20435
|
+
// 合并行或列
|
|
20436
|
+
if (!showCustomHeader) {
|
|
20437
|
+
thAttrs.colspan = column.colSpan > 1 ? column.colSpan : null;
|
|
20438
|
+
thAttrs.rowspan = column.rowSpan > 1 ? column.rowSpan : null;
|
|
20439
|
+
}
|
|
20440
|
+
if (mergeHeadFlag && mergeHeaderList.length && (showCustomHeader || isLastRow)) {
|
|
20441
|
+
const spanRest = mergeHeaderCellMaps[`${$rowIndex}:${showCustomHeader ? $columnIndex : _columnIndex}`];
|
|
20442
|
+
if (spanRest) {
|
|
20443
|
+
const {
|
|
20444
|
+
rowspan,
|
|
20445
|
+
colspan
|
|
20446
|
+
} = spanRest;
|
|
20447
|
+
if (!rowspan || !colspan) {
|
|
20448
|
+
return null;
|
|
20449
|
+
}
|
|
20450
|
+
if (rowspan > 1) {
|
|
20451
|
+
isMergeCell = true;
|
|
20452
|
+
thAttrs.rowspan = rowspan;
|
|
20453
|
+
}
|
|
20454
|
+
if (colspan > 1) {
|
|
20455
|
+
isMergeCell = true;
|
|
20456
|
+
thAttrs.colspan = colspan;
|
|
20457
|
+
}
|
|
20458
|
+
}
|
|
20459
|
+
}
|
|
20128
20460
|
const thOns = {
|
|
20129
20461
|
click: evnt => $xeTable.triggerHeaderCellClickEvent(evnt, cellParams),
|
|
20130
20462
|
dblclick: evnt => $xeTable.triggerHeaderCellDblclickEvent(evnt, cellParams)
|
|
@@ -20151,7 +20483,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20151
20483
|
const showResizable = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable;
|
|
20152
20484
|
const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
|
|
20153
20485
|
let isVNPreEmptyStatus = false;
|
|
20154
|
-
if (isOptimizeMode && overflowX && !isGroup) {
|
|
20486
|
+
if (isOptimizeMode && overflowX && !isGroup && !isMergeCell) {
|
|
20155
20487
|
if (!dragCol || dragCol.id !== colid) {
|
|
20156
20488
|
if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
20157
20489
|
isVNPreEmptyStatus = true;
|
|
@@ -20165,7 +20497,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20165
20497
|
tcStyle.minHeight = `${currCellHeight}px`;
|
|
20166
20498
|
}
|
|
20167
20499
|
return h('th', {
|
|
20168
|
-
class: ['vxe-table--column vxe-header--column', colid, {
|
|
20500
|
+
class: ['vxe-table--column vxe-header--column', colid, fixedHiddenColumn ? 'fixed--hidden' : 'fixed--visible', {
|
|
20169
20501
|
[`col--${headAlign}`]: headAlign,
|
|
20170
20502
|
[`col--${type}`]: type,
|
|
20171
20503
|
'col--last': isLastColumn,
|
|
@@ -20173,7 +20505,6 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20173
20505
|
'col--group': isColGroup,
|
|
20174
20506
|
'col--ellipsis': hasEllipsis,
|
|
20175
20507
|
'fixed--width': !isAutoCellWidth,
|
|
20176
|
-
'fixed--hidden': fixedHiddenColumn,
|
|
20177
20508
|
'is--padding': isPadding,
|
|
20178
20509
|
'is--sortable': column.sortable,
|
|
20179
20510
|
'col--filter': !!filters,
|
|
@@ -20185,7 +20516,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20185
20516
|
attrs: thAttrs,
|
|
20186
20517
|
style: headerCellStyle ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(headerCellStyle) ? headerCellStyle(cellParams) : headerCellStyle : undefined,
|
|
20187
20518
|
on: thOns,
|
|
20188
|
-
key: columnKey || scrollXLoad || scrollYLoad || columnOpts.useKey || columnOpts.drag || isColGroup ? colid : $columnIndex
|
|
20519
|
+
key: showCustomHeader ? `${colid}${$columnIndex}` : columnKey || scrollXLoad || scrollYLoad || columnOpts.useKey || columnOpts.drag || isColGroup ? colid : $columnIndex
|
|
20189
20520
|
}, [h('div', {
|
|
20190
20521
|
class: ['vxe-cell', {
|
|
20191
20522
|
'c--title': showTitle,
|
|
@@ -20200,9 +20531,9 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20200
20531
|
class: 'vxe-cell--wrapper vxe-header-cell--wrapper'
|
|
20201
20532
|
}, column.renderHeader(h, cellParams))]),
|
|
20202
20533
|
/**
|
|
20203
|
-
|
|
20204
|
-
|
|
20205
|
-
!fixedHiddenColumn && showResizable ? h('div', {
|
|
20534
|
+
* 列宽拖动
|
|
20535
|
+
*/
|
|
20536
|
+
!fixedHiddenColumn && showResizable && (!showCustomHeader || isLastRow) ? h('div', {
|
|
20206
20537
|
class: 'vxe-cell--col-resizable',
|
|
20207
20538
|
on: {
|
|
20208
20539
|
mousedown: evnt => $xeTable.handleColResizeMousedownEvent(evnt, fixedType, cellParams),
|
|
@@ -20210,7 +20541,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
20210
20541
|
}
|
|
20211
20542
|
}) : header_renderEmptyElement($xeTable)]);
|
|
20212
20543
|
});
|
|
20213
|
-
}
|
|
20544
|
+
}
|
|
20214
20545
|
function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
20215
20546
|
const props = _vm;
|
|
20216
20547
|
const $xeTable = _vm.$parent;
|
|
@@ -20233,7 +20564,7 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
|
20233
20564
|
key: $rowIndex,
|
|
20234
20565
|
class: ['vxe-header--row', headerRowClassName ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(headerRowClassName) ? headerRowClassName(params) : headerRowClassName : ''],
|
|
20235
20566
|
style: headerRowStyle ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(headerRowStyle) ? headerRowStyle(params) : headerRowStyle : undefined
|
|
20236
|
-
}, header_renderRows(h, _vm, isGroup, isOptimizeMode,
|
|
20567
|
+
}, header_renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, $rowIndex, cols));
|
|
20237
20568
|
});
|
|
20238
20569
|
}
|
|
20239
20570
|
/* harmony default export */ var header = ({
|
|
@@ -20255,11 +20586,13 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
|
20255
20586
|
},
|
|
20256
20587
|
watch: {
|
|
20257
20588
|
tableColumn() {
|
|
20258
|
-
this
|
|
20589
|
+
const _vm = this;
|
|
20590
|
+
_vm.uploadColumn();
|
|
20259
20591
|
}
|
|
20260
20592
|
},
|
|
20261
20593
|
created() {
|
|
20262
|
-
this
|
|
20594
|
+
const _vm = this;
|
|
20595
|
+
_vm.uploadColumn();
|
|
20263
20596
|
},
|
|
20264
20597
|
mounted() {
|
|
20265
20598
|
const _vm = this;
|
|
@@ -20282,8 +20615,9 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
|
20282
20615
|
elemStore[`${prefix}repair`] = _vm.$refs.refHeaderBorderRepair;
|
|
20283
20616
|
},
|
|
20284
20617
|
destroyed() {
|
|
20285
|
-
const
|
|
20286
|
-
const
|
|
20618
|
+
const _vm = this;
|
|
20619
|
+
const props = _vm;
|
|
20620
|
+
const $xeTable = _vm.$parent;
|
|
20287
20621
|
const internalData = $xeTable;
|
|
20288
20622
|
const {
|
|
20289
20623
|
fixedType
|
|
@@ -20301,8 +20635,9 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
|
20301
20635
|
elemStore[`${prefix}repair`] = null;
|
|
20302
20636
|
},
|
|
20303
20637
|
render(h) {
|
|
20304
|
-
const
|
|
20305
|
-
const
|
|
20638
|
+
const _vm = this;
|
|
20639
|
+
const props = _vm;
|
|
20640
|
+
const $xeTable = _vm.$parent;
|
|
20306
20641
|
const tableProps = $xeTable;
|
|
20307
20642
|
const tableReactData = $xeTable;
|
|
20308
20643
|
const tableInternalData = $xeTable;
|
|
@@ -20316,7 +20651,7 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
|
20316
20651
|
} = props;
|
|
20317
20652
|
const {
|
|
20318
20653
|
headerColumn
|
|
20319
|
-
} =
|
|
20654
|
+
} = _vm;
|
|
20320
20655
|
const {
|
|
20321
20656
|
mouseConfig,
|
|
20322
20657
|
showHeaderOverflow: allColumnHeaderOverflow,
|
|
@@ -20435,7 +20770,7 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
|
20435
20770
|
*/
|
|
20436
20771
|
h('thead', {
|
|
20437
20772
|
ref: 'refHeaderTHead'
|
|
20438
|
-
}, renderHeads(h,
|
|
20773
|
+
}, renderHeads(h, _vm, isGroup, isOptimizeMode, renderHeaderList))]), mouseConfig && mouseOpts.area ? h('div', {
|
|
20439
20774
|
class: 'vxe-table--cell-area'
|
|
20440
20775
|
}, [h('span', {
|
|
20441
20776
|
class: 'vxe-table--cell-main-area'
|
|
@@ -20453,12 +20788,37 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups) {
|
|
|
20453
20788
|
},
|
|
20454
20789
|
methods: {
|
|
20455
20790
|
uploadColumn() {
|
|
20456
|
-
const
|
|
20791
|
+
const _vm = this;
|
|
20792
|
+
const $xeTable = _vm.$parent;
|
|
20793
|
+
const tableProps = $xeTable;
|
|
20457
20794
|
const tableReactData = $xeTable;
|
|
20795
|
+
const tableInternalData = $xeTable;
|
|
20796
|
+
const props = _vm;
|
|
20797
|
+
const {
|
|
20798
|
+
showCustomHeader
|
|
20799
|
+
} = tableProps;
|
|
20800
|
+
const {
|
|
20801
|
+
collectColumn,
|
|
20802
|
+
visibleColumn
|
|
20803
|
+
} = tableInternalData;
|
|
20804
|
+
const {
|
|
20805
|
+
tableGroupColumn
|
|
20806
|
+
} = props;
|
|
20458
20807
|
const {
|
|
20459
20808
|
isGroup
|
|
20460
20809
|
} = tableReactData;
|
|
20461
|
-
|
|
20810
|
+
let spanColumns = isGroup ? convertHeaderColumnToRows(tableGroupColumn) : [];
|
|
20811
|
+
let visibleColgroups = [];
|
|
20812
|
+
if (showCustomHeader && spanColumns.length > 1) {
|
|
20813
|
+
visibleColgroups = convertHeaderToGridRows(spanColumns);
|
|
20814
|
+
spanColumns = visibleColgroups;
|
|
20815
|
+
}
|
|
20816
|
+
_vm.headerColumn = spanColumns;
|
|
20817
|
+
$xeTable.dispatchEvent('columns-change', {
|
|
20818
|
+
visibleColgroups,
|
|
20819
|
+
collectColumn,
|
|
20820
|
+
visibleColumn
|
|
20821
|
+
}, null);
|
|
20462
20822
|
}
|
|
20463
20823
|
}
|
|
20464
20824
|
});
|
|
@@ -20756,8 +21116,9 @@ function footer_renderHeads(h, _vm, isOptimizeMode, renderColumnList) {
|
|
|
20756
21116
|
elemStore[`${prefix}xSpace`] = _vm.$refs.refFooterXSpace;
|
|
20757
21117
|
},
|
|
20758
21118
|
destroyed() {
|
|
20759
|
-
const
|
|
20760
|
-
const
|
|
21119
|
+
const _vm = this;
|
|
21120
|
+
const props = _vm;
|
|
21121
|
+
const $xeTable = _vm.$parent;
|
|
20761
21122
|
const tableInternalData = $xeTable;
|
|
20762
21123
|
const {
|
|
20763
21124
|
fixedType
|
|
@@ -20774,8 +21135,9 @@ function footer_renderHeads(h, _vm, isOptimizeMode, renderColumnList) {
|
|
|
20774
21135
|
elemStore[`${prefix}xSpace`] = null;
|
|
20775
21136
|
},
|
|
20776
21137
|
render(h) {
|
|
20777
|
-
const
|
|
20778
|
-
const
|
|
21138
|
+
const _vm = this;
|
|
21139
|
+
const props = _vm;
|
|
21140
|
+
const $xeTable = _vm.$parent;
|
|
20779
21141
|
const tableProps = $xeTable;
|
|
20780
21142
|
const tableReactData = $xeTable;
|
|
20781
21143
|
const tableInternalData = $xeTable;
|
|
@@ -20894,7 +21256,7 @@ function footer_renderHeads(h, _vm, isOptimizeMode, renderColumnList) {
|
|
|
20894
21256
|
*/
|
|
20895
21257
|
h('tfoot', {
|
|
20896
21258
|
ref: 'refFooterTFoot'
|
|
20897
|
-
}, footer_renderHeads(h,
|
|
21259
|
+
}, footer_renderHeads(h, _vm, isOptimizeMode, renderColumnList))])])]);
|
|
20898
21260
|
}
|
|
20899
21261
|
});
|
|
20900
21262
|
;// CONCATENATED MODULE: ./packages/table/module/custom/panel.ts
|
|
@@ -23251,7 +23613,8 @@ const {
|
|
|
23251
23613
|
|
|
23252
23614
|
|
|
23253
23615
|
const {
|
|
23254
|
-
getIcon: menu_panel_getIcon
|
|
23616
|
+
getIcon: menu_panel_getIcon,
|
|
23617
|
+
renderEmptyElement: menu_panel_renderEmptyElement
|
|
23255
23618
|
} = core_.VxeUI;
|
|
23256
23619
|
/* harmony default export */ var menu_panel = ({
|
|
23257
23620
|
name: 'VxeTableMenuPanel',
|
|
@@ -23272,18 +23635,18 @@ const {
|
|
|
23272
23635
|
},
|
|
23273
23636
|
render(h) {
|
|
23274
23637
|
const $xeTable = this.$parent;
|
|
23638
|
+
const tableReactData = $xeTable;
|
|
23275
23639
|
const {
|
|
23276
|
-
_e,
|
|
23277
|
-
ctxMenuOpts,
|
|
23278
23640
|
ctxMenuStore
|
|
23279
|
-
} =
|
|
23641
|
+
} = tableReactData;
|
|
23642
|
+
const menuOpts = $xeTable.computeMenuOpts;
|
|
23280
23643
|
return h('div', {
|
|
23281
|
-
class: ['vxe-table--context-menu-wrapper',
|
|
23644
|
+
class: ['vxe-table--context-menu-wrapper', menuOpts.className, {
|
|
23282
23645
|
'is--visible': ctxMenuStore.visible
|
|
23283
23646
|
}],
|
|
23284
23647
|
style: ctxMenuStore.style
|
|
23285
23648
|
}, ctxMenuStore.list.map((options, gIndex) => {
|
|
23286
|
-
return options.every(item => item.visible === false) ?
|
|
23649
|
+
return options.every(item => item.visible === false) ? menu_panel_renderEmptyElement($xeTable) : h('ul', {
|
|
23287
23650
|
class: 'vxe-context-menu--option-wrapper',
|
|
23288
23651
|
key: gIndex
|
|
23289
23652
|
}, options.map((item, index) => {
|
|
@@ -23314,7 +23677,7 @@ const {
|
|
|
23314
23677
|
class: ['vxe-context-menu--link-prefix', prefixOpts.className || '']
|
|
23315
23678
|
}, [h('i', {
|
|
23316
23679
|
class: prefixOpts.icon || item.prefixIcon
|
|
23317
|
-
}), prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) :
|
|
23680
|
+
}), prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)]), h('span', {
|
|
23318
23681
|
class: 'vxe-context-menu--link-content',
|
|
23319
23682
|
attrs: {
|
|
23320
23683
|
title: menuContent
|
|
@@ -23323,7 +23686,7 @@ const {
|
|
|
23323
23686
|
class: ['vxe-context-menu--link-suffix', suffixOpts.className || '']
|
|
23324
23687
|
}, [h('i', {
|
|
23325
23688
|
class: suffixOpts.icon || item.suffixIcon || (hasChildMenus ? menu_panel_getIcon().TABLE_MENU_OPTIONS : '')
|
|
23326
|
-
}), suffixOpts.content ? h('span', `${suffixOpts.content}`) :
|
|
23689
|
+
}), suffixOpts.content ? h('span', `${suffixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)])]), hasChildMenus ? h('ul', {
|
|
23327
23690
|
class: ['vxe-table--context-menu-clild-wrapper', {
|
|
23328
23691
|
'is--show': item === ctxMenuStore.selected && ctxMenuStore.showChild
|
|
23329
23692
|
}]
|
|
@@ -23354,7 +23717,7 @@ const {
|
|
|
23354
23717
|
class: ['vxe-context-menu--link-prefix', childPrefixOpts.className || '']
|
|
23355
23718
|
}, [h('i', {
|
|
23356
23719
|
class: childPrefixOpts.icon || child.prefixIcon
|
|
23357
|
-
}), childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) :
|
|
23720
|
+
}), childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)]), h('span', {
|
|
23358
23721
|
class: 'vxe-context-menu--link-content',
|
|
23359
23722
|
attrs: {
|
|
23360
23723
|
title: childMenuContent
|
|
@@ -23363,7 +23726,7 @@ const {
|
|
|
23363
23726
|
class: ['vxe-context-menu--link-suffix', childSuffixOpts.className || '']
|
|
23364
23727
|
}, [h('i', {
|
|
23365
23728
|
class: childSuffixOpts.icon
|
|
23366
|
-
}), childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) :
|
|
23729
|
+
}), childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)])])]);
|
|
23367
23730
|
})) : null]);
|
|
23368
23731
|
}));
|
|
23369
23732
|
}));
|
|
@@ -23794,13 +24157,15 @@ const {
|
|
|
23794
24157
|
* 关闭快捷菜单
|
|
23795
24158
|
*/
|
|
23796
24159
|
_closeMenu() {
|
|
23797
|
-
|
|
24160
|
+
const $xeTable = this;
|
|
24161
|
+
const reactData = $xeTable;
|
|
24162
|
+
Object.assign(reactData.ctxMenuStore, {
|
|
23798
24163
|
visible: false,
|
|
23799
24164
|
selected: null,
|
|
23800
24165
|
selectChild: null,
|
|
23801
24166
|
showChild: false
|
|
23802
24167
|
});
|
|
23803
|
-
return
|
|
24168
|
+
return $xeTable.$nextTick();
|
|
23804
24169
|
},
|
|
23805
24170
|
// 处理菜单的移动
|
|
23806
24171
|
moveCtxMenu(evnt, ctxMenuStore, property, hasOper, operRest, menuList) {
|
|
@@ -23841,25 +24206,34 @@ const {
|
|
|
23841
24206
|
const $xeTable = this;
|
|
23842
24207
|
const $xeGrid = $xeTable.$xeGrid;
|
|
23843
24208
|
const $xeGantt = $xeTable.$xeGantt;
|
|
24209
|
+
const props = $xeTable;
|
|
24210
|
+
const reactData = $xeTable;
|
|
23844
24211
|
const internalData = $xeTable;
|
|
23845
24212
|
const {
|
|
23846
|
-
|
|
23847
|
-
|
|
23848
|
-
|
|
23849
|
-
menuConfig,
|
|
23850
|
-
contextMenu,
|
|
23851
|
-
ctxMenuStore,
|
|
23852
|
-
ctxMenuOpts,
|
|
24213
|
+
xID
|
|
24214
|
+
} = $xeTable;
|
|
24215
|
+
const {
|
|
23853
24216
|
mouseConfig,
|
|
23854
|
-
|
|
23855
|
-
} =
|
|
24217
|
+
menuConfig
|
|
24218
|
+
} = props;
|
|
24219
|
+
const {
|
|
24220
|
+
editStore,
|
|
24221
|
+
ctxMenuStore
|
|
24222
|
+
} = reactData;
|
|
24223
|
+
const {
|
|
24224
|
+
visibleColumn
|
|
24225
|
+
} = internalData;
|
|
24226
|
+
const tableFilter = $xeTable.$refs.refTableFilter;
|
|
24227
|
+
const tableMenu = $xeTable.$refs.refTableMenu;
|
|
24228
|
+
const mouseOpts = $xeTable.computeMouseOpts;
|
|
24229
|
+
const menuOpts = $xeTable.computeMenuOpts;
|
|
24230
|
+
const el = $xeTable.$refs.refElem;
|
|
23856
24231
|
const {
|
|
23857
24232
|
selected
|
|
23858
24233
|
} = editStore;
|
|
23859
|
-
const tableFilter = $xeTable.$refs.refTableFilter;
|
|
23860
24234
|
const layoutList = ['header', 'body', 'footer'];
|
|
23861
|
-
if (isEnableConf(menuConfig)
|
|
23862
|
-
if (ctxMenuStore.visible &&
|
|
24235
|
+
if (isEnableConf(menuConfig)) {
|
|
24236
|
+
if (ctxMenuStore.visible && tableMenu && getEventTargetNode(evnt, tableMenu.$el).flag) {
|
|
23863
24237
|
evnt.preventDefault();
|
|
23864
24238
|
return;
|
|
23865
24239
|
}
|
|
@@ -23871,16 +24245,16 @@ const {
|
|
|
23871
24245
|
$grid: $xeGrid,
|
|
23872
24246
|
$gantt: $xeGantt,
|
|
23873
24247
|
keyboard: true,
|
|
23874
|
-
columns:
|
|
24248
|
+
columns: visibleColumn.slice(0),
|
|
23875
24249
|
$event: evnt
|
|
23876
24250
|
};
|
|
23877
24251
|
// 如果开启单元格区域
|
|
23878
24252
|
if (mouseConfig && mouseOpts.area) {
|
|
23879
|
-
const activeArea =
|
|
24253
|
+
const activeArea = $xeTable.getActiveCellArea();
|
|
23880
24254
|
if (activeArea && activeArea.row && activeArea.column) {
|
|
23881
24255
|
params.row = activeArea.row;
|
|
23882
24256
|
params.column = activeArea.column;
|
|
23883
|
-
|
|
24257
|
+
$xeTable.handleOpenMenuEvent(evnt, type, params);
|
|
23884
24258
|
return;
|
|
23885
24259
|
}
|
|
23886
24260
|
} else if (mouseConfig && mouseOpts.selected) {
|
|
@@ -23888,7 +24262,7 @@ const {
|
|
|
23888
24262
|
if (selected.row && selected.column) {
|
|
23889
24263
|
params.row = selected.row;
|
|
23890
24264
|
params.column = selected.column;
|
|
23891
|
-
|
|
24265
|
+
$xeTable.handleOpenMenuEvent(evnt, type, params);
|
|
23892
24266
|
return;
|
|
23893
24267
|
}
|
|
23894
24268
|
}
|
|
@@ -23896,16 +24270,16 @@ const {
|
|
|
23896
24270
|
// 分别匹配表尾、内容、表尾的快捷菜单
|
|
23897
24271
|
for (let index = 0; index < layoutList.length; index++) {
|
|
23898
24272
|
const layout = layoutList[index];
|
|
23899
|
-
const columnTargetNode = getEventTargetNode(evnt,
|
|
24273
|
+
const columnTargetNode = getEventTargetNode(evnt, el, `vxe-${layout}--column`, target => {
|
|
23900
24274
|
// target=td|th,直接向上找 table 去匹配即可
|
|
23901
|
-
return target.parentNode.parentNode.parentNode.getAttribute('xid') ===
|
|
24275
|
+
return target.parentNode.parentNode.parentNode.getAttribute('xid') === xID;
|
|
23902
24276
|
});
|
|
23903
24277
|
const params = {
|
|
23904
24278
|
type: layout,
|
|
23905
24279
|
$table: $xeTable,
|
|
23906
24280
|
$grid: $xeGrid,
|
|
23907
24281
|
$gantt: $xeGantt,
|
|
23908
|
-
columns:
|
|
24282
|
+
columns: visibleColumn.slice(0),
|
|
23909
24283
|
$event: evnt
|
|
23910
24284
|
};
|
|
23911
24285
|
if (columnTargetNode.flag) {
|
|
@@ -23930,41 +24304,44 @@ const {
|
|
|
23930
24304
|
}
|
|
23931
24305
|
}
|
|
23932
24306
|
const eventType = `${typePrefix}cell-menu`;
|
|
23933
|
-
|
|
24307
|
+
$xeTable.handleOpenMenuEvent(evnt, layout, params);
|
|
23934
24308
|
// 在 v4 中废弃事件 cell-context-menu、header-cell-context-menu、footer-cell-context-menu
|
|
23935
|
-
if (
|
|
24309
|
+
if ($xeTable.$listeners[`${typePrefix}cell-context-menu`]) {
|
|
23936
24310
|
warnLog('vxe.error.delEvent', [`${typePrefix}cell-context-menu`, `${typePrefix}cell-menu`]);
|
|
23937
24311
|
$xeTable.dispatchEvent(`${typePrefix}cell-context-menu`, params, evnt);
|
|
23938
24312
|
} else {
|
|
23939
24313
|
$xeTable.dispatchEvent(eventType, params, evnt);
|
|
23940
24314
|
}
|
|
23941
24315
|
return;
|
|
23942
|
-
} else if (getEventTargetNode(evnt,
|
|
23943
|
-
if (
|
|
24316
|
+
} else if (getEventTargetNode(evnt, $xeTable.$el, `vxe-table--${layout}-wrapper`, target => target.getAttribute('xid') === xID).flag) {
|
|
24317
|
+
if (menuOpts.trigger === 'cell') {
|
|
23944
24318
|
evnt.preventDefault();
|
|
23945
24319
|
} else {
|
|
23946
|
-
|
|
24320
|
+
$xeTable.handleOpenMenuEvent(evnt, layout, params);
|
|
23947
24321
|
}
|
|
23948
24322
|
return;
|
|
23949
24323
|
}
|
|
23950
24324
|
}
|
|
23951
24325
|
}
|
|
23952
24326
|
if (tableFilter && !getEventTargetNode(evnt, tableFilter.$el).flag) {
|
|
23953
|
-
|
|
24327
|
+
$xeTable.closeFilter();
|
|
23954
24328
|
}
|
|
23955
|
-
|
|
24329
|
+
$xeTable.closeMenu();
|
|
23956
24330
|
},
|
|
23957
24331
|
/**
|
|
23958
24332
|
* 显示快捷菜单
|
|
23959
24333
|
*/
|
|
23960
24334
|
handleOpenMenuEvent(evnt, type, params) {
|
|
24335
|
+
const $xeTable = this;
|
|
24336
|
+
const reactData = $xeTable;
|
|
24337
|
+
const internalData = $xeTable;
|
|
23961
24338
|
const {
|
|
23962
|
-
|
|
23963
|
-
|
|
23964
|
-
|
|
23965
|
-
|
|
23966
|
-
const config =
|
|
23967
|
-
const visibleMethod =
|
|
24339
|
+
ctxMenuStore
|
|
24340
|
+
} = reactData;
|
|
24341
|
+
const isMenu = $xeTable.computeIsMenu;
|
|
24342
|
+
const menuOpts = $xeTable.computeMenuOpts;
|
|
24343
|
+
const config = menuOpts[type];
|
|
24344
|
+
const visibleMethod = menuOpts.visibleMethod;
|
|
23968
24345
|
if (config) {
|
|
23969
24346
|
const {
|
|
23970
24347
|
options,
|
|
@@ -23972,12 +24349,12 @@ const {
|
|
|
23972
24349
|
} = config;
|
|
23973
24350
|
if (disabled) {
|
|
23974
24351
|
evnt.preventDefault();
|
|
23975
|
-
} else if (
|
|
24352
|
+
} else if (isMenu && options && options.length) {
|
|
23976
24353
|
params.options = options;
|
|
23977
|
-
|
|
24354
|
+
$xeTable.preventEvent(evnt, 'event.showMenu', params, () => {
|
|
23978
24355
|
if (!visibleMethod || visibleMethod(params)) {
|
|
23979
24356
|
evnt.preventDefault();
|
|
23980
|
-
|
|
24357
|
+
$xeTable.updateZindex();
|
|
23981
24358
|
const {
|
|
23982
24359
|
scrollTop,
|
|
23983
24360
|
scrollLeft,
|
|
@@ -23987,21 +24364,22 @@ const {
|
|
|
23987
24364
|
let top = evnt.clientY + scrollTop;
|
|
23988
24365
|
let left = evnt.clientX + scrollLeft;
|
|
23989
24366
|
const handleVisible = () => {
|
|
24367
|
+
internalData._currMenuParams = params;
|
|
23990
24368
|
Object.assign(ctxMenuStore, {
|
|
23991
|
-
args: params,
|
|
23992
24369
|
visible: true,
|
|
23993
24370
|
list: options,
|
|
23994
24371
|
selected: null,
|
|
23995
24372
|
selectChild: null,
|
|
23996
24373
|
showChild: false,
|
|
23997
24374
|
style: {
|
|
23998
|
-
zIndex:
|
|
24375
|
+
zIndex: internalData.tZindex,
|
|
23999
24376
|
top: `${top}px`,
|
|
24000
24377
|
left: `${left}px`
|
|
24001
24378
|
}
|
|
24002
24379
|
});
|
|
24003
|
-
|
|
24004
|
-
const
|
|
24380
|
+
$xeTable.$nextTick(() => {
|
|
24381
|
+
const tableMenu = $xeTable.$refs.refTableMenu;
|
|
24382
|
+
const ctxElem = tableMenu.$el;
|
|
24005
24383
|
const clientHeight = ctxElem.clientHeight;
|
|
24006
24384
|
const clientWidth = ctxElem.clientWidth;
|
|
24007
24385
|
const {
|
|
@@ -24024,30 +24402,36 @@ const {
|
|
|
24024
24402
|
column
|
|
24025
24403
|
} = params;
|
|
24026
24404
|
if (keyboard && row && column) {
|
|
24027
|
-
|
|
24028
|
-
const cell =
|
|
24029
|
-
|
|
24030
|
-
|
|
24031
|
-
|
|
24032
|
-
|
|
24033
|
-
|
|
24034
|
-
|
|
24405
|
+
$xeTable.scrollToRow(row, column).then(() => {
|
|
24406
|
+
const cell = $xeTable.getCellElement(row, column);
|
|
24407
|
+
if (cell) {
|
|
24408
|
+
const {
|
|
24409
|
+
boundingTop,
|
|
24410
|
+
boundingLeft
|
|
24411
|
+
} = getAbsolutePos(cell);
|
|
24412
|
+
top = boundingTop + scrollTop + Math.floor(cell.offsetHeight / 2);
|
|
24413
|
+
left = boundingLeft + scrollLeft + Math.floor(cell.offsetWidth / 2);
|
|
24414
|
+
}
|
|
24035
24415
|
handleVisible();
|
|
24036
24416
|
});
|
|
24037
24417
|
} else {
|
|
24038
24418
|
handleVisible();
|
|
24039
24419
|
}
|
|
24040
24420
|
} else {
|
|
24041
|
-
|
|
24421
|
+
$xeTable.closeMenu();
|
|
24042
24422
|
}
|
|
24043
24423
|
});
|
|
24044
24424
|
}
|
|
24045
24425
|
}
|
|
24046
|
-
|
|
24426
|
+
$xeTable.closeFilter();
|
|
24047
24427
|
},
|
|
24048
24428
|
ctxMenuMouseoverEvent(evnt, item, child) {
|
|
24429
|
+
const $xeTable = this;
|
|
24430
|
+
const reactData = $xeTable;
|
|
24049
24431
|
const menuElem = evnt.currentTarget;
|
|
24050
|
-
const
|
|
24432
|
+
const {
|
|
24433
|
+
ctxMenuStore
|
|
24434
|
+
} = reactData;
|
|
24051
24435
|
evnt.preventDefault();
|
|
24052
24436
|
evnt.stopPropagation();
|
|
24053
24437
|
ctxMenuStore.selected = item;
|
|
@@ -24055,7 +24439,7 @@ const {
|
|
|
24055
24439
|
if (!child) {
|
|
24056
24440
|
ctxMenuStore.showChild = hasChildrenList(item);
|
|
24057
24441
|
if (ctxMenuStore.showChild) {
|
|
24058
|
-
|
|
24442
|
+
$xeTable.$nextTick(() => {
|
|
24059
24443
|
const childWrapperElem = menuElem.nextElementSibling;
|
|
24060
24444
|
if (childWrapperElem) {
|
|
24061
24445
|
const {
|
|
@@ -24090,7 +24474,11 @@ const {
|
|
|
24090
24474
|
}
|
|
24091
24475
|
},
|
|
24092
24476
|
ctxMenuMouseoutEvent(evnt, item) {
|
|
24093
|
-
const
|
|
24477
|
+
const $xeTable = this;
|
|
24478
|
+
const reactData = $xeTable;
|
|
24479
|
+
const {
|
|
24480
|
+
ctxMenuStore
|
|
24481
|
+
} = reactData;
|
|
24094
24482
|
if (!item.children) {
|
|
24095
24483
|
ctxMenuStore.selected = null;
|
|
24096
24484
|
}
|
|
@@ -24103,27 +24491,28 @@ const {
|
|
|
24103
24491
|
const $xeTable = this;
|
|
24104
24492
|
const $xeGrid = $xeTable.$xeGrid;
|
|
24105
24493
|
const $xeGantt = $xeTable.$xeGantt;
|
|
24494
|
+
const internalData = $xeTable;
|
|
24106
24495
|
// 如果一级菜单有配置 code 则允许点击,否则不能点击
|
|
24107
24496
|
if (!menu.disabled && (menu.code || !menu.children || !menu.children.length)) {
|
|
24108
24497
|
const gMenuOpts = mixin_menus.get(menu.code);
|
|
24109
|
-
const params = Object.assign({
|
|
24498
|
+
const params = Object.assign({}, internalData._currMenuParams, {
|
|
24110
24499
|
menu,
|
|
24111
24500
|
$table: $xeTable,
|
|
24112
24501
|
$grid: $xeGrid,
|
|
24113
24502
|
$gantt: $xeGantt,
|
|
24114
24503
|
$event: evnt
|
|
24115
|
-
}
|
|
24504
|
+
});
|
|
24116
24505
|
if (gMenuOpts && gMenuOpts.menuMethod) {
|
|
24117
24506
|
gMenuOpts.menuMethod(params, evnt);
|
|
24118
24507
|
}
|
|
24119
24508
|
// 在 v4 中废弃事件 context-menu-click
|
|
24120
|
-
if (
|
|
24509
|
+
if ($xeTable.$listeners['context-menu-click']) {
|
|
24121
24510
|
warnLog('vxe.error.delEvent', ['context-menu-click', 'menu-click']);
|
|
24122
24511
|
$xeTable.dispatchEvent('context-menu-click', params, evnt);
|
|
24123
24512
|
} else {
|
|
24124
24513
|
$xeTable.dispatchEvent('menu-click', params, evnt);
|
|
24125
24514
|
}
|
|
24126
|
-
|
|
24515
|
+
$xeTable.closeMenu();
|
|
24127
24516
|
}
|
|
24128
24517
|
}
|
|
24129
24518
|
}
|
|
@@ -29115,12 +29504,19 @@ function handleUpdateMergeBodyCells($xeTable, merges) {
|
|
|
29115
29504
|
internalData.mergeBodyCellMaps = {};
|
|
29116
29505
|
$xeTable.setMergeCells(merges);
|
|
29117
29506
|
}
|
|
29507
|
+
function handleUpdateMergeHeaderCells($xeTable, merges) {
|
|
29508
|
+
const internalData = $xeTable;
|
|
29509
|
+
internalData.mergeHeaderList = [];
|
|
29510
|
+
internalData.mergeHeaderMaps = {};
|
|
29511
|
+
internalData.mergeHeaderCellMaps = {};
|
|
29512
|
+
$xeTable.setMergeHeaderCells(merges);
|
|
29513
|
+
}
|
|
29118
29514
|
function handleUpdateMergeFooterCells($xeTable, merges) {
|
|
29119
29515
|
const internalData = $xeTable;
|
|
29120
29516
|
internalData.mergeFooterList = [];
|
|
29121
29517
|
internalData.mergeFooterMaps = {};
|
|
29122
29518
|
internalData.mergeFooterCellMaps = {};
|
|
29123
|
-
$xeTable.
|
|
29519
|
+
$xeTable.setMergeFooterCells(merges);
|
|
29124
29520
|
}
|
|
29125
29521
|
function handleKeyField($xeTable) {
|
|
29126
29522
|
const internalData = $xeTable;
|
|
@@ -29427,7 +29823,9 @@ function renderScrollX(h, $xeTable) {
|
|
|
29427
29823
|
}, [h('div', {
|
|
29428
29824
|
ref: 'refScrollXSpaceElem',
|
|
29429
29825
|
class: 'vxe-table--scroll-x-space'
|
|
29430
|
-
})])
|
|
29826
|
+
})]), h('div', {
|
|
29827
|
+
class: 'vxe-table--scroll-x-handle-appearance'
|
|
29828
|
+
})]), h('div', {
|
|
29431
29829
|
ref: 'refScrollXRightCornerElem',
|
|
29432
29830
|
class: 'vxe-table--scroll-x-right-corner'
|
|
29433
29831
|
})]);
|
|
@@ -29544,9 +29942,7 @@ function renderBody(h, $xeTable) {
|
|
|
29544
29942
|
},
|
|
29545
29943
|
data() {
|
|
29546
29944
|
const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
|
|
29547
|
-
|
|
29548
|
-
xID,
|
|
29549
|
-
tId: xID,
|
|
29945
|
+
const reactData = {
|
|
29550
29946
|
// 低性能的静态列
|
|
29551
29947
|
staticColumns: [],
|
|
29552
29948
|
// 渲染的列分组
|
|
@@ -29567,6 +29963,8 @@ function renderBody(h, $xeTable) {
|
|
|
29567
29963
|
scrollbarWidth: 0,
|
|
29568
29964
|
// 横向滚动条的高度
|
|
29569
29965
|
scrollbarHeight: 0,
|
|
29966
|
+
// 最后滚动时间戳
|
|
29967
|
+
lastScrollTime: 0,
|
|
29570
29968
|
// 行高
|
|
29571
29969
|
rowHeight: 0,
|
|
29572
29970
|
// 表格父容器的高度
|
|
@@ -29592,9 +29990,13 @@ function renderBody(h, $xeTable) {
|
|
|
29592
29990
|
expandColumn: null,
|
|
29593
29991
|
checkboxColumn: null,
|
|
29594
29992
|
radioColumn: null,
|
|
29595
|
-
hasFixedColumn: false,
|
|
29596
29993
|
// 树节点列信息
|
|
29597
29994
|
treeNodeColumn: null,
|
|
29995
|
+
hasFixedColumn: false,
|
|
29996
|
+
// 刷新列标识,当列筛选被改变时,触发表格刷新数据
|
|
29997
|
+
upDataFlag: 0,
|
|
29998
|
+
// 刷新列标识,当列的特定属性被改变时,触发表格刷新列
|
|
29999
|
+
reColumnFlag: 0,
|
|
29598
30000
|
// 初始化标识
|
|
29599
30001
|
initStore: {
|
|
29600
30002
|
filter: false,
|
|
@@ -29602,11 +30004,6 @@ function renderBody(h, $xeTable) {
|
|
|
29602
30004
|
export: false,
|
|
29603
30005
|
custom: false
|
|
29604
30006
|
},
|
|
29605
|
-
customColumnList: [],
|
|
29606
|
-
// 刷新列标识,当列筛选被改变时,触发表格刷新数据
|
|
29607
|
-
upDataFlag: 0,
|
|
29608
|
-
// 刷新列标识,当列的特定属性被改变时,触发表格刷新列
|
|
29609
|
-
reColumnFlag: 0,
|
|
29610
30007
|
// 自定义列相关的信息
|
|
29611
30008
|
customStore: {
|
|
29612
30009
|
btnEl: null,
|
|
@@ -29620,6 +30017,7 @@ function renderBody(h, $xeTable) {
|
|
|
29620
30017
|
oldFixedMaps: {},
|
|
29621
30018
|
oldVisibleMaps: {}
|
|
29622
30019
|
},
|
|
30020
|
+
customColumnList: [],
|
|
29623
30021
|
// 当前选中的筛选列
|
|
29624
30022
|
filterStore: {
|
|
29625
30023
|
isAllSelected: false,
|
|
@@ -29688,6 +30086,7 @@ function renderBody(h, $xeTable) {
|
|
|
29688
30086
|
tooltipStore: {
|
|
29689
30087
|
row: null,
|
|
29690
30088
|
column: null,
|
|
30089
|
+
content: null,
|
|
29691
30090
|
visible: false,
|
|
29692
30091
|
currOpts: {}
|
|
29693
30092
|
},
|
|
@@ -29720,8 +30119,8 @@ function renderBody(h, $xeTable) {
|
|
|
29720
30119
|
columns: [],
|
|
29721
30120
|
isPrint: false,
|
|
29722
30121
|
hasFooter: false,
|
|
29723
|
-
hasTree: false,
|
|
29724
30122
|
hasMerge: false,
|
|
30123
|
+
hasTree: false,
|
|
29725
30124
|
hasColgroup: false,
|
|
29726
30125
|
visible: false
|
|
29727
30126
|
},
|
|
@@ -29752,6 +30151,7 @@ function renderBody(h, $xeTable) {
|
|
|
29752
30151
|
pendingRowFlag: 1,
|
|
29753
30152
|
insertRowFlag: 1,
|
|
29754
30153
|
removeRowFlag: 1,
|
|
30154
|
+
mergeHeadFlag: 1,
|
|
29755
30155
|
mergeBodyFlag: 1,
|
|
29756
30156
|
mergeFootFlag: 1,
|
|
29757
30157
|
rowHeightStore: {
|
|
@@ -29768,6 +30168,7 @@ function renderBody(h, $xeTable) {
|
|
|
29768
30168
|
scrollXLeft: 0,
|
|
29769
30169
|
scrollXWidth: 0,
|
|
29770
30170
|
isScrollXBig: false,
|
|
30171
|
+
lazScrollLoading: false,
|
|
29771
30172
|
rowExpandHeightFlag: 1,
|
|
29772
30173
|
calcCellHeightFlag: 1,
|
|
29773
30174
|
resizeHeightFlag: 1,
|
|
@@ -29780,10 +30181,16 @@ function renderBody(h, $xeTable) {
|
|
|
29780
30181
|
dragTipText: '',
|
|
29781
30182
|
isDragResize: false,
|
|
29782
30183
|
isRowLoading: false,
|
|
29783
|
-
isColLoading: false
|
|
30184
|
+
isColLoading: false
|
|
30185
|
+
};
|
|
30186
|
+
return {
|
|
30187
|
+
xID,
|
|
30188
|
+
...reactData,
|
|
30189
|
+
// 私有属性
|
|
29784
30190
|
reScrollFlag: 0,
|
|
29785
30191
|
reLayoutFlag: 0,
|
|
29786
30192
|
footFlag: 0,
|
|
30193
|
+
mergeFooteCellFlag: 0,
|
|
29787
30194
|
crossTableDragRowInfo: crossTableDragRowGlobal
|
|
29788
30195
|
};
|
|
29789
30196
|
},
|
|
@@ -30548,9 +30955,21 @@ function renderBody(h, $xeTable) {
|
|
|
30548
30955
|
const $xeTable = this;
|
|
30549
30956
|
handleUpdateMergeBodyCells($xeTable, value);
|
|
30550
30957
|
},
|
|
30551
|
-
|
|
30958
|
+
mergeHeaderCells(value) {
|
|
30552
30959
|
const $xeTable = this;
|
|
30553
|
-
|
|
30960
|
+
handleUpdateMergeHeaderCells($xeTable, value);
|
|
30961
|
+
},
|
|
30962
|
+
mergeFooterCells() {
|
|
30963
|
+
this.mergeFooteCellFlag++;
|
|
30964
|
+
},
|
|
30965
|
+
mergeFooterItems() {
|
|
30966
|
+
this.mergeFooteCellFlag++;
|
|
30967
|
+
},
|
|
30968
|
+
mergeFooteCellFlag() {
|
|
30969
|
+
const $xeTable = this;
|
|
30970
|
+
const props = $xeTable;
|
|
30971
|
+
const mFooterCells = props.mergeFooterCells || props.mergeFooterItems;
|
|
30972
|
+
handleUpdateMergeFooterCells($xeTable, mFooterCells || []);
|
|
30554
30973
|
},
|
|
30555
30974
|
computeRowGroupFields(val) {
|
|
30556
30975
|
const $xeTable = this;
|
|
@@ -32705,6 +33124,8 @@ function grid_createInternalData() {
|
|
|
32705
33124
|
let itemValue = null;
|
|
32706
33125
|
if (itemRender) {
|
|
32707
33126
|
const {
|
|
33127
|
+
startField,
|
|
33128
|
+
endField,
|
|
32708
33129
|
defaultValue
|
|
32709
33130
|
} = itemRender;
|
|
32710
33131
|
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(defaultValue)) {
|
|
@@ -32714,6 +33135,10 @@ function grid_createInternalData() {
|
|
|
32714
33135
|
} else if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(defaultValue)) {
|
|
32715
33136
|
itemValue = defaultValue;
|
|
32716
33137
|
}
|
|
33138
|
+
if (startField && endField) {
|
|
33139
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(fData, startField, null);
|
|
33140
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(fData, endField, null);
|
|
33141
|
+
}
|
|
32717
33142
|
}
|
|
32718
33143
|
fData[field] = itemValue;
|
|
32719
33144
|
}
|