vxe-table 4.14.0-beta.2 → 4.14.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 +1 -1
- package/es/locale/lang/ar-EG.js +1 -0
- package/es/locale/lang/de-DE.js +1 -0
- package/es/locale/lang/en-US.js +1 -0
- package/es/locale/lang/es-ES.js +1 -0
- package/es/locale/lang/fr-FR.js +1 -0
- package/es/locale/lang/hu-HU.js +1 -0
- package/es/locale/lang/hy-AM.js +1 -0
- package/es/locale/lang/id-ID.js +1 -0
- package/es/locale/lang/it-IT.js +1 -0
- package/es/locale/lang/ja-JP.js +1 -0
- package/es/locale/lang/ko-KR.js +1 -0
- package/es/locale/lang/ms-MY.js +1 -0
- package/es/locale/lang/nb-NO.js +1 -0
- package/es/locale/lang/pt-BR.js +1 -0
- package/es/locale/lang/ru-RU.js +1 -0
- package/es/locale/lang/th-TH.js +1 -0
- package/es/locale/lang/ug-CN.js +1 -0
- package/es/locale/lang/uk-UA.js +1 -0
- package/es/locale/lang/uz-UZ.js +1 -0
- package/es/locale/lang/vi-VN.js +1 -0
- package/es/locale/lang/zh-CHT.js +1 -0
- package/es/locale/lang/zh-CN.js +1 -0
- package/es/style.css +1 -1
- package/es/table/module/edit/hook.js +31 -1
- package/es/table/src/body.js +1 -1
- package/es/table/src/footer.js +1 -1
- package/es/table/src/header.js +1 -1
- package/es/table/src/table.js +18 -1
- package/es/ui/index.js +6 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +44 -9
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +1 -0
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +1 -0
- package/lib/locale/lang/de-DE.js +1 -0
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +1 -0
- package/lib/locale/lang/en-US.js +1 -0
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +1 -0
- package/lib/locale/lang/es-ES.js +1 -0
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +1 -0
- package/lib/locale/lang/fr-FR.js +1 -0
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +1 -0
- package/lib/locale/lang/hu-HU.js +1 -0
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +1 -0
- package/lib/locale/lang/hy-AM.js +1 -0
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +1 -0
- package/lib/locale/lang/id-ID.js +1 -0
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +1 -0
- package/lib/locale/lang/it-IT.js +1 -0
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +1 -0
- package/lib/locale/lang/ja-JP.js +1 -0
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +1 -0
- package/lib/locale/lang/ko-KR.js +1 -0
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +1 -0
- package/lib/locale/lang/ms-MY.js +1 -0
- package/lib/locale/lang/ms-MY.min.js +1 -1
- package/lib/locale/lang/ms-MY.umd.js +1 -0
- package/lib/locale/lang/nb-NO.js +1 -0
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +1 -0
- package/lib/locale/lang/pt-BR.js +1 -0
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +1 -0
- package/lib/locale/lang/ru-RU.js +1 -0
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +1 -0
- package/lib/locale/lang/th-TH.js +1 -0
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +1 -0
- package/lib/locale/lang/ug-CN.js +1 -0
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +1 -0
- package/lib/locale/lang/uk-UA.js +1 -0
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +1 -0
- package/lib/locale/lang/uz-UZ.js +1 -0
- package/lib/locale/lang/uz-UZ.min.js +1 -1
- package/lib/locale/lang/uz-UZ.umd.js +1 -0
- package/lib/locale/lang/vi-VN.js +1 -0
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +1 -0
- package/lib/locale/lang/zh-CHT.js +1 -0
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CHT.umd.js +1 -0
- package/lib/locale/lang/zh-CN.js +1 -0
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +1 -0
- package/lib/style.css +1 -1
- package/lib/table/module/edit/hook.js +30 -1
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/src/body.js +1 -1
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/footer.js +1 -1
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +1 -1
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/table.js +3 -3
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +6 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/locale/lang/ar-EG.ts +1 -0
- package/packages/locale/lang/de-DE.ts +1 -0
- package/packages/locale/lang/en-US.ts +1 -0
- package/packages/locale/lang/es-ES.ts +1 -0
- package/packages/locale/lang/fr-FR.ts +1 -0
- package/packages/locale/lang/hu-HU.ts +1 -0
- package/packages/locale/lang/hy-AM.ts +1 -0
- package/packages/locale/lang/id-ID.ts +1 -0
- package/packages/locale/lang/it-IT.ts +1 -0
- package/packages/locale/lang/ja-JP.ts +1 -0
- package/packages/locale/lang/ko-KR.ts +1 -0
- package/packages/locale/lang/ms-MY.ts +1 -0
- package/packages/locale/lang/nb-NO.ts +1 -0
- package/packages/locale/lang/pt-BR.ts +1 -0
- package/packages/locale/lang/ru-RU.ts +1 -0
- package/packages/locale/lang/th-TH.ts +1 -0
- package/packages/locale/lang/ug-CN.ts +1 -0
- package/packages/locale/lang/uk-UA.ts +1 -0
- package/packages/locale/lang/uz-UZ.ts +1 -0
- package/packages/locale/lang/vi-VN.ts +1 -0
- package/packages/locale/lang/zh-CHT.ts +1 -0
- package/packages/locale/lang/zh-CN.ts +1 -0
- package/packages/table/module/edit/hook.ts +29 -1
- package/packages/table/src/body.ts +1 -1
- package/packages/table/src/footer.ts +1 -1
- package/packages/table/src/header.ts +1 -1
- package/packages/table/src/table.ts +18 -1
- package/packages/ui/index.ts +5 -0
- /package/es/{iconfont.1751195167653.ttf → iconfont.1751277484787.ttf} +0 -0
- /package/es/{iconfont.1751195167653.woff → iconfont.1751277484787.woff} +0 -0
- /package/es/{iconfont.1751195167653.woff2 → iconfont.1751277484787.woff2} +0 -0
- /package/lib/{iconfont.1751195167653.ttf → iconfont.1751277484787.ttf} +0 -0
- /package/lib/{iconfont.1751195167653.woff → iconfont.1751277484787.woff} +0 -0
- /package/lib/{iconfont.1751195167653.woff2 → iconfont.1751277484787.woff2} +0 -0
|
@@ -93,8 +93,11 @@ hooks.add('tableEditModule', {
|
|
|
93
93
|
}
|
|
94
94
|
});
|
|
95
95
|
};
|
|
96
|
+
// const insertGroupRow = (newRecords: any[], isAppend: boolean) => {
|
|
97
|
+
// }
|
|
96
98
|
const handleInsertRowAt = (records, targetRow, isInsertNextRow) => {
|
|
97
99
|
const { treeConfig } = props;
|
|
100
|
+
const { isRowGroupStatus } = reactData;
|
|
98
101
|
const { tableFullTreeData, afterFullData, mergeBodyList, tableFullData, fullDataRowIdData, fullAllDataRowIdData, insertRowMaps } = internalData;
|
|
99
102
|
const treeOpts = computeTreeOpts.value;
|
|
100
103
|
const { transform, rowField, mapChildrenField } = treeOpts;
|
|
@@ -108,6 +111,14 @@ hooks.add('tableEditModule', {
|
|
|
108
111
|
if (treeConfig && transform) {
|
|
109
112
|
insertTreeRow(newRecords, false);
|
|
110
113
|
}
|
|
114
|
+
else if (isRowGroupStatus) {
|
|
115
|
+
// 如果分组
|
|
116
|
+
if (treeConfig) {
|
|
117
|
+
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
118
|
+
}
|
|
119
|
+
warnLog(getI18n('vxe.error.noGroup', ['remove']));
|
|
120
|
+
// insertGroupRow(newRecords, false)
|
|
121
|
+
}
|
|
111
122
|
else {
|
|
112
123
|
newRecords.forEach(item => {
|
|
113
124
|
const rowid = getRowid($xeTable, item);
|
|
@@ -132,6 +143,14 @@ hooks.add('tableEditModule', {
|
|
|
132
143
|
if (treeConfig && transform) {
|
|
133
144
|
insertTreeRow(newRecords, true);
|
|
134
145
|
}
|
|
146
|
+
else if (isRowGroupStatus) {
|
|
147
|
+
// 如果分组
|
|
148
|
+
if (treeConfig) {
|
|
149
|
+
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
150
|
+
}
|
|
151
|
+
warnLog(getI18n('vxe.error.noGroup', ['remove']));
|
|
152
|
+
// insertGroupRow(newRecords, true)
|
|
153
|
+
}
|
|
135
154
|
else {
|
|
136
155
|
newRecords.forEach(item => {
|
|
137
156
|
const rowid = getRowid($xeTable, item);
|
|
@@ -196,6 +215,13 @@ hooks.add('tableEditModule', {
|
|
|
196
215
|
insertTreeRow(newRecords, true);
|
|
197
216
|
}
|
|
198
217
|
}
|
|
218
|
+
else if (isRowGroupStatus) {
|
|
219
|
+
// 如果分组
|
|
220
|
+
if (treeConfig) {
|
|
221
|
+
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
222
|
+
}
|
|
223
|
+
warnLog(getI18n('vxe.error.noGroup', ['remove']));
|
|
224
|
+
}
|
|
199
225
|
else {
|
|
200
226
|
if (treeConfig) {
|
|
201
227
|
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
@@ -481,7 +507,7 @@ hooks.add('tableEditModule', {
|
|
|
481
507
|
*/
|
|
482
508
|
remove(rows) {
|
|
483
509
|
const { treeConfig } = props;
|
|
484
|
-
const { editStore } = reactData;
|
|
510
|
+
const { editStore, isRowGroupStatus } = reactData;
|
|
485
511
|
const { tableFullTreeData, selectCheckboxMaps, afterFullData, mergeBodyList, tableFullData, pendingRowMaps, insertRowMaps, removeRowMaps } = internalData;
|
|
486
512
|
const checkboxOpts = computeCheckboxOpts.value;
|
|
487
513
|
const treeOpts = computeTreeOpts.value;
|
|
@@ -540,6 +566,10 @@ hooks.add('tableEditModule', {
|
|
|
540
566
|
}
|
|
541
567
|
});
|
|
542
568
|
}
|
|
569
|
+
else if (isRowGroupStatus) {
|
|
570
|
+
// 如果分组
|
|
571
|
+
warnLog(getI18n('vxe.error.noGroup', ['remove']));
|
|
572
|
+
}
|
|
543
573
|
else {
|
|
544
574
|
rows.forEach((row) => {
|
|
545
575
|
const tfIndex = $xeTable.findRowIndexOf(tableFullData, row);
|
package/es/table/src/body.js
CHANGED
package/es/table/src/footer.js
CHANGED
package/es/table/src/header.js
CHANGED
package/es/table/src/table.js
CHANGED
|
@@ -1586,7 +1586,20 @@ export default defineVxeComponent({
|
|
|
1586
1586
|
}
|
|
1587
1587
|
};
|
|
1588
1588
|
const calcColumnAutoWidth = (column, wrapperEl) => {
|
|
1589
|
-
const
|
|
1589
|
+
const columnOpts = computeColumnOpts.value;
|
|
1590
|
+
const { autoOptions } = columnOpts;
|
|
1591
|
+
const { isCalcHeader, isCalcBody, isCalcFooter } = autoOptions || {};
|
|
1592
|
+
const querySelections = [];
|
|
1593
|
+
if (isCalcHeader) {
|
|
1594
|
+
querySelections.push(`.vxe-header-cell--wrapper[colid="${column.id}"]`);
|
|
1595
|
+
}
|
|
1596
|
+
if (isCalcBody) {
|
|
1597
|
+
querySelections.push(`.vxe-body-cell--wrapper[colid="${column.id}"]`);
|
|
1598
|
+
}
|
|
1599
|
+
if (isCalcFooter) {
|
|
1600
|
+
querySelections.push(`.vxe-footer-cell--wrapper[colid="${column.id}"]`);
|
|
1601
|
+
}
|
|
1602
|
+
const cellElemList = querySelections.length ? wrapperEl.querySelectorAll(querySelections.join(',')) : [];
|
|
1590
1603
|
let leftRightPadding = 0;
|
|
1591
1604
|
const firstCellEl = cellElemList[0];
|
|
1592
1605
|
if (firstCellEl && firstCellEl.parentElement) {
|
|
@@ -9461,6 +9474,8 @@ export default defineVxeComponent({
|
|
|
9461
9474
|
moveRowAnimateToTb(newTrList, dragOffsetTop - newTrEl.offsetTop);
|
|
9462
9475
|
}
|
|
9463
9476
|
}
|
|
9477
|
+
updateRowOffsetTop();
|
|
9478
|
+
updateRowExpandStyle();
|
|
9464
9479
|
$xeTable.updateCellAreas();
|
|
9465
9480
|
$xeTable.recalculate();
|
|
9466
9481
|
}).then(() => {
|
|
@@ -9854,7 +9869,9 @@ export default defineVxeComponent({
|
|
|
9854
9869
|
}
|
|
9855
9870
|
}
|
|
9856
9871
|
}
|
|
9872
|
+
updateColumnOffsetLeft();
|
|
9857
9873
|
loadScrollXData();
|
|
9874
|
+
$xeTable.updateCellAreas();
|
|
9858
9875
|
return {
|
|
9859
9876
|
status: true
|
|
9860
9877
|
};
|
package/es/ui/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
import { getFuncText } from './src/utils';
|
|
3
|
-
export const version = "4.14.0-beta.
|
|
3
|
+
export const version = "4.14.0-beta.4";
|
|
4
4
|
VxeUI.version = version;
|
|
5
5
|
VxeUI.tableVersion = version;
|
|
6
6
|
VxeUI.setConfig({
|
|
@@ -71,6 +71,11 @@ VxeUI.setConfig({
|
|
|
71
71
|
theme: 'beautify'
|
|
72
72
|
},
|
|
73
73
|
columnConfig: {
|
|
74
|
+
autoOptions: {
|
|
75
|
+
isCalcHeader: true,
|
|
76
|
+
isCalcBody: true,
|
|
77
|
+
isCalcFooter: true
|
|
78
|
+
},
|
|
74
79
|
maxFixedSize: 4
|
|
75
80
|
},
|
|
76
81
|
cellConfig: {
|
package/es/ui/src/log.js
CHANGED
package/lib/index.umd.js
CHANGED
|
@@ -3138,7 +3138,7 @@ function eqEmptyValue(cellValue) {
|
|
|
3138
3138
|
;// ./packages/ui/index.ts
|
|
3139
3139
|
|
|
3140
3140
|
|
|
3141
|
-
const version = "4.14.0-beta.
|
|
3141
|
+
const version = "4.14.0-beta.4";
|
|
3142
3142
|
core_.VxeUI.version = version;
|
|
3143
3143
|
core_.VxeUI.tableVersion = version;
|
|
3144
3144
|
core_.VxeUI.setConfig({
|
|
@@ -3209,6 +3209,11 @@ core_.VxeUI.setConfig({
|
|
|
3209
3209
|
theme: 'beautify'
|
|
3210
3210
|
},
|
|
3211
3211
|
columnConfig: {
|
|
3212
|
+
autoOptions: {
|
|
3213
|
+
isCalcHeader: true,
|
|
3214
|
+
isCalcBody: true,
|
|
3215
|
+
isCalcFooter: true
|
|
3216
|
+
},
|
|
3212
3217
|
maxFixedSize: 4
|
|
3213
3218
|
},
|
|
3214
3219
|
cellConfig: {
|
|
@@ -3623,7 +3628,7 @@ var esnext_iterator_some = __webpack_require__(7550);
|
|
|
3623
3628
|
const {
|
|
3624
3629
|
log: log_log
|
|
3625
3630
|
} = core_.VxeUI;
|
|
3626
|
-
const log_version = `table v${"4.14.0-beta.
|
|
3631
|
+
const log_version = `table v${"4.14.0-beta.4"}`;
|
|
3627
3632
|
const warnLog = log_log.create('warn', log_version);
|
|
3628
3633
|
const errLog = log_log.create('error', log_version);
|
|
3629
3634
|
;// ./packages/table/src/columnInfo.ts
|
|
@@ -6945,7 +6950,7 @@ const renderType = 'body';
|
|
|
6945
6950
|
}, isVNPreEmptyStatus ? [] : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
6946
6951
|
colid,
|
|
6947
6952
|
rowid,
|
|
6948
|
-
class: 'vxe-cell--wrapper'
|
|
6953
|
+
class: 'vxe-cell--wrapper vxe-body-cell--wrapper'
|
|
6949
6954
|
}, column.renderCell(cellParams))]));
|
|
6950
6955
|
if (showValidTip && errorValidItem) {
|
|
6951
6956
|
const errRule = errorValidItem.rule;
|
|
@@ -7698,7 +7703,7 @@ const header_renderType = 'header';
|
|
|
7698
7703
|
style: tcStyle
|
|
7699
7704
|
}, isVNPreEmptyStatus || isOptimizeMode && fixedHiddenColumn ? [] : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
7700
7705
|
colid,
|
|
7701
|
-
class: 'vxe-cell--wrapper'
|
|
7706
|
+
class: 'vxe-cell--wrapper vxe-header-cell--wrapper'
|
|
7702
7707
|
}, column.renderHeader(cellParams))]),
|
|
7703
7708
|
/**
|
|
7704
7709
|
* 列宽拖动
|
|
@@ -8154,7 +8159,7 @@ const footer_renderType = 'footer';
|
|
|
8154
8159
|
style: tcStyle
|
|
8155
8160
|
}, isVNPreEmptyStatus ? [] : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
8156
8161
|
colid,
|
|
8157
|
-
class: 'vxe-cell--wrapper'
|
|
8162
|
+
class: 'vxe-cell--wrapper vxe-footer-cell--wrapper'
|
|
8158
8163
|
}, column.renderFooter(cellParams))]),
|
|
8159
8164
|
/**
|
|
8160
8165
|
* 列宽拖动
|
|
@@ -10994,7 +10999,7 @@ if(hasCustomSort){collectColumn=external_root_XEUtils_commonjs_xe_utils_commonjs
|
|
|
10994
10999
|
* 更新数据列的 Map
|
|
10995
11000
|
* 牺牲数据组装的耗时,用来换取使用过程中的流畅
|
|
10996
11001
|
*/const cacheColumnMap=()=>{const{tableFullColumn,collectColumn}=internalData;const fullColumnIdData=internalData.fullColumnIdData={};const fullColumnFieldData=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(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(fullColumnFieldData[field]){errLog('vxe.error.colRepet',['field',field]);}fullColumnFieldData[field]=rest;}else{if(storage&&!type||columnOpts.drag&&(isCrossDrag||isSelfToChildDrag)){errLog('vxe.error.reqProp',[`${column.getTitle()||type||''} -> column.field=?`]);}}if(!hasFixed&&fixed){hasFixed=fixed;}if(!htmlColumn&&type==='html'){htmlColumn=column;}if(treeNode){if(treeNodeColumn){warnLog('vxe.error.colRepet',['tree-node',treeNode]);}if(!treeNodeColumn){treeNodeColumn=column;}}if(rowGroupNode){if(treeNodeColumn){warnLog('vxe.error.colRepet',['row-group-node',rowGroupNode]);}if(!rowGroupColumn){rowGroupColumn=column;}}if(type==='expand'){if(expandColumn){warnLog('vxe.error.colRepet',['type',type]);}if(!expandColumn){expandColumn=column;}}if(type==='checkbox'){if(checkboxColumn){warnLog('vxe.error.colRepet',['type',type]);}if(!checkboxColumn){checkboxColumn=column;}}else if(type==='radio'){if(radioColumn){warnLog('vxe.error.colRepet',['type',type]);}if(!radioColumn){radioColumn=column;}}if(isAllOverflow&&column.showOverflow===false){isAllOverflow=false;}if(fullColumnIdData[colid]){errLog('vxe.error.colRepet',['colId',colid]);}fullColumnIdData[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){warnLog('vxe.error.notConflictProp',['column.type="expand','virtual-y-config.enabled=false']);}if(expandColumn&&expandOpts.mode!=='fixed'&&mouseOpts.area){errLog('vxe.error.errConflicts',['mouse-config.area','column.type=expand']);}if(htmlColumn){if(!columnOpts.useKey){errLog('vxe.error.reqProp',['column-config.useKey & column.type=html']);}if(!rowOpts.useKey){errLog('vxe.error.reqProp',['row-config.useKey & column.type=html']);}}reactData.isGroup=isGroup;reactData.rowGroupColumn=rowGroupColumn;reactData.treeNodeColumn=treeNodeColumn;reactData.expandColumn=expandColumn;reactData.isAllOverflow=isAllOverflow;};const updateHeight=()=>{internalData.customHeight=calcTableHeight('height');internalData.customMinHeight=calcTableHeight('minHeight');internalData.customMaxHeight=calcTableHeight('maxHeight');// 如果启用虚拟滚动,默认高度
|
|
10997
|
-
if(reactData.scrollYLoad&&!(internalData.customHeight||internalData.customMinHeight)){internalData.customHeight=300;}};const calcColumnAutoWidth=(column,wrapperEl)=>{const
|
|
11002
|
+
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');}};/**
|
|
10998
11003
|
* 列宽算法,计算单元格列宽,动态分配可用剩余空间
|
|
10999
11004
|
* 支持 px、%、固定 混合分配
|
|
11000
11005
|
* 支持动态列表调整分配
|
|
@@ -11699,7 +11704,7 @@ const pafIndex=$xeTable.findRowIndexOf(afterFullData,prevDragRow);const ptfIndex
|
|
|
11699
11704
|
rsIndex=0;reIndex=_newRowIndex-_firstRowIndex;}else if(_dragRowIndex>_lastRowIndex){// 从下往上虚拟拖拽
|
|
11700
11705
|
const $newRowIndex=dragRowRest.$index;rsIndex=$newRowIndex+1;reIndex=tableData.length;offsetRate=-1;}else{if(_newRowIndex>_dragRowIndex){// 从上往下拖拽
|
|
11701
11706
|
rsIndex=_dragRowIndex-_firstRowIndex;reIndex=rsIndex+_newRowIndex-_dragRowIndex;}else{// 从下往上拖拽
|
|
11702
|
-
rsIndex=_newRowIndex-_firstRowIndex;reIndex=rsIndex+_dragRowIndex-_newRowIndex+1;offsetRate=-1;}}const dragRangeList=tableData.slice(rsIndex,reIndex);if(dragRangeList.length){const dtTrList=el.querySelectorAll(dragRangeList.map(row=>`.vxe-body--row[rowid="${getRowid($xeTable,row)}"]`).join(','));moveRowAnimateToTb(dtTrList,offsetRate*dragRowHeight);}}const newTrList=el.querySelectorAll(`.vxe-body--row[rowid="${dragRowid}"]`);const newTrEl=newTrList[0];if(dragOffsetTop>-1&&newTrEl){moveRowAnimateToTb(newTrList,dragOffsetTop-newTrEl.offsetTop);}}
|
|
11707
|
+
rsIndex=_newRowIndex-_firstRowIndex;reIndex=rsIndex+_dragRowIndex-_newRowIndex+1;offsetRate=-1;}}const dragRangeList=tableData.slice(rsIndex,reIndex);if(dragRangeList.length){const dtTrList=el.querySelectorAll(dragRangeList.map(row=>`.vxe-body--row[rowid="${getRowid($xeTable,row)}"]`).join(','));moveRowAnimateToTb(dtTrList,offsetRate*dragRowHeight);}}const newTrList=el.querySelectorAll(`.vxe-body--row[rowid="${dragRowid}"]`);const newTrEl=newTrList[0];if(dragOffsetTop>-1&&newTrEl){moveRowAnimateToTb(newTrList,dragOffsetTop-newTrEl.offsetTop);}}updateRowOffsetTop();updateRowExpandStyle();$xeTable.updateCellAreas();$xeTable.recalculate();}).then(()=>{return{status:true};});}).catch(()=>{return errRest;});}return Promise.resolve(errRest);},handleRowDragDragendEvent(evnt){const{treeConfig}=props;const{fullAllDataRowIdData,prevDragToChild}=internalData;const{dragRow}=reactData;const treeOpts=computeTreeOpts.value;const{lazy}=treeOpts;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const{prevDragRow,prevDragPos}=internalData;const el=refElem.value;if(treeConfig&&lazy&&prevDragToChild){// 懒加载
|
|
11703
11708
|
const newRowid=getRowid($xeTable,prevDragRow);const rowRest=fullAllDataRowIdData[newRowid];if(prevDragRow[hasChildField]){if(rowRest&&rowRest.treeLoaded){$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}}else{$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}}else{$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}hideDropTip();clearRowDropOrigin();clearRowAnimate(el);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;},handleRowDragDragoverEvent(evnt){const{treeConfig}=props;const{fullAllDataRowIdData}=internalData;const{dragRow}=reactData;const treeOpts=computeTreeOpts.value;const{lazy,transform,parentField}=treeOpts;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const rowDragOpts=computeRowDragOpts.value;const{isPeerDrag,isCrossDrag,isToChildDrag}=rowDragOpts;if(!dragRow){evnt.preventDefault();return;}const isControlKey=hasControlKey(evnt);const trEl=evnt.currentTarget;const rowid=trEl.getAttribute('rowid')||'';const rest=fullAllDataRowIdData[rowid];if(rest){const row=rest.row;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];evnt.preventDefault();const{dragRow}=reactData;const offsetY=evnt.clientY-trEl.getBoundingClientRect().y;const dragPos=offsetY<trEl.clientHeight/2?'top':'bottom';internalData.prevDragToChild=!!(treeConfig&&transform&&isCrossDrag&&isToChildDrag&&isControlKey);internalData.prevDragRow=row;internalData.prevDragPos=dragPos;if($xeTable.eqRow(dragRow,row)||isControlKey&&treeConfig&&lazy&&row[hasChildField]&&rowRest&&!rowRest.treeLoaded||!isCrossDrag&&treeConfig&&transform&&(isPeerDrag?dragRow[parentField]!==row[parentField]:rest.level)){showDropTip(evnt,trEl,null,false,dragPos);return;}showDropTip(evnt,trEl,null,true,dragPos);dispatchEvent('row-dragover',{oldRow:dragRow,targetRow:row,dragPos},evnt);}},handleCellDragMousedownEvent(evnt,params){evnt.stopPropagation();const{dragConfig}=props;const rowDragOpts=computeRowDragOpts.value;const{trigger,dragStartMethod}=rowDragOpts;const{row}=params;const dragEl=evnt.currentTarget;const tdEl=trigger==='cell'||trigger==='row'?dragEl:dragEl.parentElement?.parentElement;const trEl=tdEl.parentElement;const dStartMethod=dragStartMethod||(dragConfig?dragConfig.dragStartMethod:null);clearRowDropOrigin();if(dStartMethod&&!dStartMethod(params)){trEl.draggable=false;reactData.dragRow=null;reactData.dragCol=null;hideDropTip();return;}reactData.dragRow=row;reactData.dragCol=null;trEl.draggable=true;updateRowDropOrigin(row);updateRowDropTipContent(tdEl);dispatchEvent('row-dragstart',params,evnt);},handleCellDragMouseupEvent(){clearDragStatus();},/**
|
|
11704
11709
|
* 列拖拽
|
|
11705
11710
|
*/handleHeaderCellDragDragstartEvent(evnt){if(evnt.dataTransfer){evnt.dataTransfer.setDragImage(getTpImg(),0,0);}},handleColDragSwapColumn(){handleUpdateColumn();return parseColumns(false).then(()=>{$xeTable.updateCellAreas();$xeTable.saveCustomStore('update:sort');});},handleColDragSwapEvent(evnt,isSyncColumn,dragCol,prevDragCol,prevDragPos,prevDragToChild){const{mouseConfig}=props;const columnDragOpts=computeColumnDragOpts.value;const{animation,isPeerDrag,isCrossDrag,isSelfToChildDrag,isToChildDrag,dragEndMethod,dragToChildMethod}=columnDragOpts;const{collectColumn,fullColumnIdData}=internalData;const el=refElem.value;const dragOffsetIndex=prevDragPos==='right'?1:0;const errRest={status:false};if(!(el&&prevDragCol&&dragCol)){return Promise.resolve(errRest);}// 判断是否有拖动
|
|
@@ -11714,7 +11719,7 @@ if(isCrossDrag&&isToChildDrag&&isDragToChildFlag){dragColumn.parentId=newColumn.
|
|
|
11714
11719
|
csIndex=0;ceIndex=_newColIndex-_firstColIndex;}else if(_dragColIndex>_lastColIndex){// 从右往左虚拟拖拽
|
|
11715
11720
|
const $newRowIndex=dragColRest.$index;csIndex=$newRowIndex+1;ceIndex=tableColumn.length;offsetRate=-1;}else{if(_newColIndex>_dragColIndex){// 从左往右拖拽
|
|
11716
11721
|
csIndex=_dragColIndex-_firstColIndex;ceIndex=csIndex+_newColIndex-_dragColIndex;}else{// 从右往左拖拽
|
|
11717
|
-
csIndex=_newColIndex-_firstColIndex+1;ceIndex=csIndex+_dragColIndex-_newColIndex;offsetRate=-1;}}const dragRangeList=[];const dragRangeMaps={};for(let i=csIndex;i<ceIndex;i++){const column=tableColumn[i];if(!dragRangeMaps[column.id]&&!dragNewColMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([newColumn],column=>{if(!dragRangeMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}});if(dragRangeList.length){const dtTrList=el.querySelectorAll(dragRangeList.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));moveColAnimateToLr(dtTrList,offsetRate*dragColWidth);}}const newTrList=el.querySelectorAll(dragAllTargetCols.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));const newTdEl=newTrList[0];if(dragOffsetLeft>-1&&newTdEl){moveColAnimateToLr(newTrList,dragOffsetLeft-newTdEl.offsetLeft);}}}loadScrollXData();return{status:true};});}).catch(()=>{return errRest;});}return Promise.resolve(errRest);},handleHeaderCellDragDragendEvent(evnt){const{dragCol}=reactData;const{prevDragCol,prevDragPos,prevDragToChild}=internalData;const el=refElem.value;$xeTable.handleColDragSwapEvent(evnt,true,dragCol,prevDragCol,prevDragPos,prevDragToChild);hideDropTip();clearColDropOrigin();clearColAnimate(el);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;},handleHeaderCellDragDragoverEvent(evnt){const{dragCol}=reactData;const columnDragOpts=computeColumnDragOpts.value;const{isToChildDrag,isPeerDrag,isCrossDrag}=columnDragOpts;if(!dragCol){evnt.preventDefault();return;}const isControlKey=hasControlKey(evnt);const thEl=evnt.currentTarget;const colid=thEl.getAttribute('colid');const column=$xeTable.getColumnById(colid);if(column){evnt.preventDefault();const{clientX}=evnt;const offsetX=clientX-thEl.getBoundingClientRect().x;const dragPos=offsetX<thEl.clientWidth/2?'left':'right';internalData.prevDragToChild=!!(isCrossDrag&&isToChildDrag&&isControlKey);internalData.prevDragCol=column;internalData.prevDragPos=dragPos;if(column.fixed||dragCol&&dragCol.id===column.id||!isCrossDrag&&(isPeerDrag?dragCol.parentId!==column.parentId:column.parentId)){showDropTip(evnt,null,thEl,false,dragPos);return;}showDropTip(evnt,null,thEl,true,dragPos);dispatchEvent('column-dragover',{oldColumn:dragCol,targetColumn:column,dragPos},evnt);// 边缘滚动
|
|
11722
|
+
csIndex=_newColIndex-_firstColIndex+1;ceIndex=csIndex+_dragColIndex-_newColIndex;offsetRate=-1;}}const dragRangeList=[];const dragRangeMaps={};for(let i=csIndex;i<ceIndex;i++){const column=tableColumn[i];if(!dragRangeMaps[column.id]&&!dragNewColMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}}external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree([newColumn],column=>{if(!dragRangeMaps[column.id]){dragRangeMaps[column.id]=column;dragRangeList.push(column);}});if(dragRangeList.length){const dtTrList=el.querySelectorAll(dragRangeList.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));moveColAnimateToLr(dtTrList,offsetRate*dragColWidth);}}const newTrList=el.querySelectorAll(dragAllTargetCols.map(column=>`.vxe-table--column[colid="${column.id}"]`).join(','));const newTdEl=newTrList[0];if(dragOffsetLeft>-1&&newTdEl){moveColAnimateToLr(newTrList,dragOffsetLeft-newTdEl.offsetLeft);}}}updateColumnOffsetLeft();loadScrollXData();$xeTable.updateCellAreas();return{status:true};});}).catch(()=>{return errRest;});}return Promise.resolve(errRest);},handleHeaderCellDragDragendEvent(evnt){const{dragCol}=reactData;const{prevDragCol,prevDragPos,prevDragToChild}=internalData;const el=refElem.value;$xeTable.handleColDragSwapEvent(evnt,true,dragCol,prevDragCol,prevDragPos,prevDragToChild);hideDropTip();clearColDropOrigin();clearColAnimate(el);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;},handleHeaderCellDragDragoverEvent(evnt){const{dragCol}=reactData;const columnDragOpts=computeColumnDragOpts.value;const{isToChildDrag,isPeerDrag,isCrossDrag}=columnDragOpts;if(!dragCol){evnt.preventDefault();return;}const isControlKey=hasControlKey(evnt);const thEl=evnt.currentTarget;const colid=thEl.getAttribute('colid');const column=$xeTable.getColumnById(colid);if(column){evnt.preventDefault();const{clientX}=evnt;const offsetX=clientX-thEl.getBoundingClientRect().x;const dragPos=offsetX<thEl.clientWidth/2?'left':'right';internalData.prevDragToChild=!!(isCrossDrag&&isToChildDrag&&isControlKey);internalData.prevDragCol=column;internalData.prevDragPos=dragPos;if(column.fixed||dragCol&&dragCol.id===column.id||!isCrossDrag&&(isPeerDrag?dragCol.parentId!==column.parentId:column.parentId)){showDropTip(evnt,null,thEl,false,dragPos);return;}showDropTip(evnt,null,thEl,true,dragPos);dispatchEvent('column-dragover',{oldColumn:dragCol,targetColumn:column,dragPos},evnt);// 边缘滚动
|
|
11718
11723
|
const el=refElem.value;if(!el){return;}const xHandleEl=refScrollXHandleElem.value;const tableBody=refTableBody.value;const tableBodyElem=tableBody?tableBody.$el:null;const scrollTargetEl=xHandleEl||tableBodyElem;if(scrollTargetEl){const wrapperRect=el.getBoundingClientRect();const tableWrapperWidth=el.clientWidth;const leftContainerElem=refLeftContainer.value;const leftContainerWidth=leftContainerElem?leftContainerElem.clientWidth:0;const rightContainerElem=refRightContainer.value;const rightContainerWidth=rightContainerElem?rightContainerElem.clientWidth:0;const srartX=wrapperRect.x+leftContainerWidth;const endX=wrapperRect.x+tableWrapperWidth-rightContainerWidth;const distSize=28;const startDistSize=clientX-srartX;const endDistSize=endX-clientX;if(startDistSize>0&&startDistSize<=distSize){const scrollRatio=Math.floor(tableWrapperWidth/(startDistSize>distSize/2?240:120));scrollTargetEl.scrollLeft-=scrollRatio*(distSize-startDistSize);}else if(endDistSize>0&&endDistSize<=distSize){const scrollRatio=Math.floor(tableWrapperWidth/(endDistSize>distSize/2?240:120));scrollTargetEl.scrollLeft+=scrollRatio*(distSize-endDistSize);}}}},handleHeaderCellDragMousedownEvent(evnt,params){evnt.stopPropagation();const columnDragOpts=computeColumnDragOpts.value;const{trigger,dragStartMethod}=columnDragOpts;const{column}=params;const dragEl=evnt.currentTarget;const thEl=trigger==='cell'?dragEl:dragEl.parentElement?.parentElement;clearColDropOrigin();if(dragStartMethod&&!dragStartMethod(params)){thEl.draggable=false;reactData.dragRow=null;reactData.dragCol=null;hideDropTip();return;}reactData.dragCol=column;reactData.dragRow=null;thEl.draggable=true;updateColDropOrigin(column);updateColDropTipContent(thEl);dispatchEvent('column-dragstart',params,evnt);},handleHeaderCellDragMouseupEvent(){clearColDropOrigin();hideDropTip();reactData.dragRow=null;reactData.dragCol=null;},handleScrollEvent(evnt,isRollY,isRollX,scrollTop,scrollLeft,params){const{highlightHoverRow}=props;const{lastScrollLeft,lastScrollTop}=internalData;const xHandleEl=refScrollXHandleElem.value;const yHandleEl=refScrollYHandleElem.value;if(!xHandleEl||!yHandleEl){return;}const rowOpts=computeRowOpts.value;const validTip=refValidTooltip.value;const tooltip=refTooltip.value;const bodyHeight=yHandleEl.clientHeight;const bodyWidth=xHandleEl.clientWidth;const scrollHeight=yHandleEl.scrollHeight;const scrollWidth=xHandleEl.scrollWidth;let isTop=false;let isBottom=false;let isLeft=false;let isRight=false;let direction='';let isTopBoundary=false;let isBottomBoundary=false;let isLeftBoundary=false;let isRightBoundary=false;if(isRollX){const xThreshold=computeScrollXThreshold.value;isLeft=scrollLeft<=0;if(!isLeft){isRight=scrollLeft+bodyWidth>=scrollWidth;}if(scrollLeft>lastScrollLeft){direction='right';if(scrollLeft+bodyWidth>=scrollWidth-xThreshold){isRightBoundary=true;}}else{direction='left';if(scrollLeft<=xThreshold){isLeftBoundary=true;}}$xeTable.checkScrolling();internalData.lastScrollLeft=scrollLeft;}if(isRollY){const yThreshold=computeScrollYThreshold.value;isTop=scrollTop<=0;if(!isTop){isBottom=scrollTop+bodyHeight>=scrollHeight;}if(scrollTop>lastScrollTop){direction='bottom';if(scrollTop+bodyHeight>=scrollHeight-yThreshold){isBottomBoundary=true;}}else{direction='top';if(scrollTop<=yThreshold){isTopBoundary=true;}}internalData.lastScrollTop=scrollTop;}reactData.lastScrollTime=Date.now();const evntParams={scrollTop,scrollLeft,bodyHeight,bodyWidth,scrollHeight,scrollWidth,isX:isRollX,isY:isRollY,isTop,isBottom,isLeft,isRight,direction,...params};updateRowExpandStyle();checkLastSyncScroll(isRollX,isRollY);if(isRollX){$xeTable.closeFilter();}if(rowOpts.isHover||highlightHoverRow){$xeTable.clearHoverRow();}if(validTip&&validTip.reactData.visible){validTip.close();}if(tooltip&&tooltip.reactData.visible){tooltip.close();}if(isBottomBoundary||isTopBoundary||isRightBoundary||isLeftBoundary){dispatchEvent('scroll-boundary',evntParams,evnt);}dispatchEvent('scroll',evntParams,evnt);},/**
|
|
11719
11724
|
* 横向 X 可视渲染事件处理
|
|
11720
11725
|
*/triggerScrollXEvent(){const virtualXOpts=computeVirtualXOpts.value;if(virtualXOpts.immediate){loadScrollXData();}else{lazyScrollXData();}},/**
|
|
@@ -15310,10 +15315,15 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
15310
15315
|
}
|
|
15311
15316
|
});
|
|
15312
15317
|
};
|
|
15318
|
+
// const insertGroupRow = (newRecords: any[], isAppend: boolean) => {
|
|
15319
|
+
// }
|
|
15313
15320
|
const handleInsertRowAt = (records, targetRow, isInsertNextRow) => {
|
|
15314
15321
|
const {
|
|
15315
15322
|
treeConfig
|
|
15316
15323
|
} = props;
|
|
15324
|
+
const {
|
|
15325
|
+
isRowGroupStatus
|
|
15326
|
+
} = reactData;
|
|
15317
15327
|
const {
|
|
15318
15328
|
tableFullTreeData,
|
|
15319
15329
|
afterFullData,
|
|
@@ -15341,6 +15351,13 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
15341
15351
|
// 如果为虚拟树
|
|
15342
15352
|
if (treeConfig && transform) {
|
|
15343
15353
|
insertTreeRow(newRecords, false);
|
|
15354
|
+
} else if (isRowGroupStatus) {
|
|
15355
|
+
// 如果分组
|
|
15356
|
+
if (treeConfig) {
|
|
15357
|
+
throw new Error(hook_getI18n('vxe.error.noTree', ['insert']));
|
|
15358
|
+
}
|
|
15359
|
+
warnLog(hook_getI18n('vxe.error.noGroup', ['remove']));
|
|
15360
|
+
// insertGroupRow(newRecords, false)
|
|
15344
15361
|
} else {
|
|
15345
15362
|
newRecords.forEach(item => {
|
|
15346
15363
|
const rowid = getRowid($xeTable, item);
|
|
@@ -15380,6 +15397,13 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
15380
15397
|
// 如果为虚拟树
|
|
15381
15398
|
if (treeConfig && transform) {
|
|
15382
15399
|
insertTreeRow(newRecords, true);
|
|
15400
|
+
} else if (isRowGroupStatus) {
|
|
15401
|
+
// 如果分组
|
|
15402
|
+
if (treeConfig) {
|
|
15403
|
+
throw new Error(hook_getI18n('vxe.error.noTree', ['insert']));
|
|
15404
|
+
}
|
|
15405
|
+
warnLog(hook_getI18n('vxe.error.noGroup', ['remove']));
|
|
15406
|
+
// insertGroupRow(newRecords, true)
|
|
15383
15407
|
} else {
|
|
15384
15408
|
newRecords.forEach(item => {
|
|
15385
15409
|
const rowid = getRowid($xeTable, item);
|
|
@@ -15480,6 +15504,12 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
15480
15504
|
warnLog('vxe.error.unableInsert');
|
|
15481
15505
|
insertTreeRow(newRecords, true);
|
|
15482
15506
|
}
|
|
15507
|
+
} else if (isRowGroupStatus) {
|
|
15508
|
+
// 如果分组
|
|
15509
|
+
if (treeConfig) {
|
|
15510
|
+
throw new Error(hook_getI18n('vxe.error.noTree', ['insert']));
|
|
15511
|
+
}
|
|
15512
|
+
warnLog(hook_getI18n('vxe.error.noGroup', ['remove']));
|
|
15483
15513
|
} else {
|
|
15484
15514
|
if (treeConfig) {
|
|
15485
15515
|
throw new Error(hook_getI18n('vxe.error.noTree', ['insert']));
|
|
@@ -15814,7 +15844,8 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
15814
15844
|
treeConfig
|
|
15815
15845
|
} = props;
|
|
15816
15846
|
const {
|
|
15817
|
-
editStore
|
|
15847
|
+
editStore,
|
|
15848
|
+
isRowGroupStatus
|
|
15818
15849
|
} = reactData;
|
|
15819
15850
|
const {
|
|
15820
15851
|
tableFullTreeData,
|
|
@@ -15891,6 +15922,9 @@ edit_hook_hooks.add('tableEditModule', {
|
|
|
15891
15922
|
afterFullData.splice(afIndex, 1);
|
|
15892
15923
|
}
|
|
15893
15924
|
});
|
|
15925
|
+
} else if (isRowGroupStatus) {
|
|
15926
|
+
// 如果分组
|
|
15927
|
+
warnLog(hook_getI18n('vxe.error.noGroup', ['remove']));
|
|
15894
15928
|
} else {
|
|
15895
15929
|
rows.forEach(row => {
|
|
15896
15930
|
const tfIndex = $xeTable.findRowIndexOf(tableFullData, row);
|
|
@@ -21346,6 +21380,7 @@ const Toolbar = VxeToolbar;
|
|
|
21346
21380
|
notCommands: '全局指令 "{0}" 不存在',
|
|
21347
21381
|
notSlot: '插槽 "{0}" 不存在',
|
|
21348
21382
|
noTree: '树结构不支持 "{0}"',
|
|
21383
|
+
noGroup: '数据分组后不支持 "{0}"',
|
|
21349
21384
|
notProp: '不支持的参数 "{0}"',
|
|
21350
21385
|
checkProp: '当数据量过大时可能会导致复选框卡顿,建议设置参数 "{0}" 提升渲染速度',
|
|
21351
21386
|
coverProp: '"{0}" 的参数 "{1}" 重复定义,这可能会出现错误',
|