vxe-table 4.11.15 → 4.11.17
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 +16 -31
- package/es/style.css +1 -1
- package/es/table/module/custom/panel.js +19 -21
- package/es/table/module/edit/hook.js +7 -7
- package/es/table/module/export/export-panel.js +17 -19
- package/es/table/module/export/hook.js +5 -11
- package/es/table/module/export/import-panel.js +11 -13
- package/es/table/module/validator/hook.js +1 -3
- package/es/table/render/index.js +2 -4
- package/es/table/src/body.js +2 -2
- package/es/table/src/columnInfo.js +26 -28
- package/es/table/src/table.js +112 -78
- package/es/toolbar/src/toolbar.js +16 -24
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +16 -33
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +253 -247
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/custom/panel.js +21 -23
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/hook.js +7 -7
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/export/export-panel.js +17 -19
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/hook.js +5 -11
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/export/import-panel.js +11 -13
- package/lib/table/module/export/import-panel.min.js +1 -1
- package/lib/table/module/validator/hook.js +1 -3
- package/lib/table/module/validator/hook.min.js +1 -1
- package/lib/table/render/index.js +2 -4
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +2 -1
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/columnInfo.js +30 -32
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/table.js +119 -75
- package/lib/table/src/table.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +16 -24
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +17 -31
- package/packages/table/module/custom/panel.ts +19 -21
- package/packages/table/module/edit/hook.ts +7 -7
- package/packages/table/module/export/export-panel.ts +17 -19
- package/packages/table/module/export/hook.ts +5 -11
- package/packages/table/module/export/import-panel.ts +11 -13
- package/packages/table/module/keyboard/hook.ts +2 -2
- package/packages/table/module/validator/hook.ts +1 -3
- package/packages/table/render/index.ts +2 -4
- package/packages/table/src/body.ts +2 -2
- package/packages/table/src/columnInfo.ts +26 -28
- package/packages/table/src/table.ts +111 -76
- package/packages/toolbar/src/toolbar.ts +16 -24
- /package/es/{iconfont.1740723830079.ttf → iconfont.1741140593243.ttf} +0 -0
- /package/es/{iconfont.1740723830079.woff → iconfont.1741140593243.woff} +0 -0
- /package/es/{iconfont.1740723830079.woff2 → iconfont.1741140593243.woff2} +0 -0
- /package/lib/{iconfont.1740723830079.ttf → iconfont.1741140593243.ttf} +0 -0
- /package/lib/{iconfont.1740723830079.woff → iconfont.1741140593243.woff} +0 -0
- /package/lib/{iconfont.1740723830079.woff2 → iconfont.1741140593243.woff2} +0 -0
package/lib/table/src/table.js
CHANGED
|
@@ -1415,14 +1415,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
1415
1415
|
if (expandColumn && expandOpts.mode !== 'fixed' && mouseOpts.area) {
|
|
1416
1416
|
(0, _log.errLog)('vxe.error.errConflicts', ['mouse-config.area', 'column.type=expand']);
|
|
1417
1417
|
}
|
|
1418
|
-
if (
|
|
1419
|
-
if (
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
(0, _log.errLog)('vxe.error.reqProp', ['row-config.useKey & column.type=html']);
|
|
1425
|
-
}
|
|
1418
|
+
if (htmlColumn) {
|
|
1419
|
+
if (!columnOpts.useKey) {
|
|
1420
|
+
(0, _log.errLog)('vxe.error.reqProp', ['column-config.useKey & column.type=html']);
|
|
1421
|
+
}
|
|
1422
|
+
if (!rowOpts.useKey) {
|
|
1423
|
+
(0, _log.errLog)('vxe.error.reqProp', ['row-config.useKey & column.type=html']);
|
|
1426
1424
|
}
|
|
1427
1425
|
}
|
|
1428
1426
|
reactData.isGroup = isGroup;
|
|
@@ -3095,28 +3093,26 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3095
3093
|
if (treeConfig) {
|
|
3096
3094
|
if (transform) {
|
|
3097
3095
|
// 树结构自动转换
|
|
3098
|
-
if (
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
|
|
3102
|
-
|
|
3103
|
-
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.parentField']);
|
|
3104
|
-
}
|
|
3105
|
-
if (!childrenField) {
|
|
3106
|
-
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.childrenField']);
|
|
3107
|
-
}
|
|
3108
|
-
if (!treeOpts.mapChildrenField) {
|
|
3109
|
-
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.mapChildrenField']);
|
|
3110
|
-
}
|
|
3111
|
-
if (childrenField === treeOpts.mapChildrenField) {
|
|
3112
|
-
(0, _log.errLog)('vxe.error.errConflicts', ['tree-config.childrenField', 'tree-config.mapChildrenField']);
|
|
3113
|
-
}
|
|
3114
|
-
// fullData.forEach(row => {
|
|
3115
|
-
// if (row[treeOpts.children] && row[treeOpts.children].length) {
|
|
3116
|
-
// warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${treeOpts.children}`])
|
|
3117
|
-
// }
|
|
3118
|
-
// })
|
|
3096
|
+
if (!treeOpts.rowField) {
|
|
3097
|
+
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.rowField']);
|
|
3098
|
+
}
|
|
3099
|
+
if (!treeOpts.parentField) {
|
|
3100
|
+
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.parentField']);
|
|
3119
3101
|
}
|
|
3102
|
+
if (!childrenField) {
|
|
3103
|
+
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.childrenField']);
|
|
3104
|
+
}
|
|
3105
|
+
if (!treeOpts.mapChildrenField) {
|
|
3106
|
+
(0, _log.errLog)('vxe.error.reqProp', ['tree-config.mapChildrenField']);
|
|
3107
|
+
}
|
|
3108
|
+
if (childrenField === treeOpts.mapChildrenField) {
|
|
3109
|
+
(0, _log.errLog)('vxe.error.errConflicts', ['tree-config.childrenField', 'tree-config.mapChildrenField']);
|
|
3110
|
+
}
|
|
3111
|
+
// fullData.forEach(row => {
|
|
3112
|
+
// if (row[treeOpts.children] && row[treeOpts.children].length) {
|
|
3113
|
+
// warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${treeOpts.children}`])
|
|
3114
|
+
// }
|
|
3115
|
+
// })
|
|
3120
3116
|
treeData = _xeUtils.default.toArrayTree(fullData, {
|
|
3121
3117
|
key: treeOpts.rowField,
|
|
3122
3118
|
parentKey: treeOpts.parentField,
|
|
@@ -3180,16 +3176,14 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3180
3176
|
// }
|
|
3181
3177
|
// }
|
|
3182
3178
|
// }
|
|
3183
|
-
if (
|
|
3184
|
-
|
|
3185
|
-
|
|
3186
|
-
|
|
3187
|
-
|
|
3188
|
-
|
|
3189
|
-
|
|
3190
|
-
|
|
3191
|
-
(0, _log.warnLog)('vxe.error.scrollErrProp', ['table.span-method']);
|
|
3192
|
-
}
|
|
3179
|
+
if (!(props.height || props.maxHeight)) {
|
|
3180
|
+
(0, _log.errLog)('vxe.error.reqProp', ['table.height | table.max-height | table.scroll-y={enabled: false}']);
|
|
3181
|
+
}
|
|
3182
|
+
// if (!props.showOverflow) {
|
|
3183
|
+
// warnLog('vxe.error.reqProp', ['table.show-overflow'])
|
|
3184
|
+
// }
|
|
3185
|
+
if (props.spanMethod) {
|
|
3186
|
+
(0, _log.warnLog)('vxe.error.scrollErrProp', ['table.span-method']);
|
|
3193
3187
|
}
|
|
3194
3188
|
}
|
|
3195
3189
|
handleReserveStatus();
|
|
@@ -4310,12 +4304,20 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
4310
4304
|
*/
|
|
4311
4305
|
revertData(rows, field) {
|
|
4312
4306
|
const {
|
|
4313
|
-
keepSource
|
|
4307
|
+
keepSource,
|
|
4308
|
+
treeConfig
|
|
4314
4309
|
} = props;
|
|
4315
4310
|
const {
|
|
4311
|
+
fullAllDataRowIdData,
|
|
4316
4312
|
tableSourceData,
|
|
4317
|
-
sourceDataRowIdData
|
|
4313
|
+
sourceDataRowIdData,
|
|
4314
|
+
tableFullData,
|
|
4315
|
+
afterFullData
|
|
4318
4316
|
} = internalData;
|
|
4317
|
+
const treeOpts = computeTreeOpts.value;
|
|
4318
|
+
const {
|
|
4319
|
+
transform
|
|
4320
|
+
} = treeOpts;
|
|
4319
4321
|
if (!keepSource) {
|
|
4320
4322
|
if (process.env.NODE_ENV === 'development') {
|
|
4321
4323
|
(0, _log.warnLog)('vxe.error.reqProp', ['keep-source']);
|
|
@@ -4330,9 +4332,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
4330
4332
|
} else {
|
|
4331
4333
|
targetRows = _xeUtils.default.toArray($xeTable.getUpdateRecords());
|
|
4332
4334
|
}
|
|
4335
|
+
let reDelFlag = false;
|
|
4333
4336
|
if (targetRows.length) {
|
|
4334
4337
|
targetRows.forEach(row => {
|
|
4335
|
-
if (
|
|
4338
|
+
if (!$xeTable.isInsertByRow(row)) {
|
|
4336
4339
|
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
4337
4340
|
const oRow = sourceDataRowIdData[rowid];
|
|
4338
4341
|
if (oRow && row) {
|
|
@@ -4341,14 +4344,38 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
4341
4344
|
} else {
|
|
4342
4345
|
_xeUtils.default.destructuring(row, _xeUtils.default.clone(oRow, true));
|
|
4343
4346
|
}
|
|
4347
|
+
if ($xeTable.isRemoveByRow(row)) {
|
|
4348
|
+
const rowRest = fullAllDataRowIdData[rowid];
|
|
4349
|
+
if (rowRest) {
|
|
4350
|
+
const reRow = rowRest.row;
|
|
4351
|
+
tableFullData.unshift(reRow);
|
|
4352
|
+
afterFullData.unshift(reRow);
|
|
4353
|
+
reDelFlag = true;
|
|
4354
|
+
}
|
|
4355
|
+
}
|
|
4344
4356
|
}
|
|
4345
4357
|
}
|
|
4346
4358
|
});
|
|
4347
4359
|
}
|
|
4348
4360
|
if (rows) {
|
|
4349
|
-
|
|
4361
|
+
if (reDelFlag) {
|
|
4362
|
+
$xeTable.updateFooter();
|
|
4363
|
+
$xeTable.cacheRowMap(false);
|
|
4364
|
+
$xeTable.handleTableData(treeConfig && transform);
|
|
4365
|
+
if (!(treeConfig && transform)) {
|
|
4366
|
+
$xeTable.updateAfterDataIndex();
|
|
4367
|
+
}
|
|
4368
|
+
$xeTable.checkSelectionStatus();
|
|
4369
|
+
if (reactData.scrollYLoad) {
|
|
4370
|
+
$xeTable.updateScrollYSpace();
|
|
4371
|
+
}
|
|
4372
|
+
}
|
|
4373
|
+
return (0, _vue.nextTick)().then(() => {
|
|
4374
|
+
$xeTable.updateCellAreas();
|
|
4375
|
+
return $xeTable.recalculate();
|
|
4376
|
+
});
|
|
4350
4377
|
}
|
|
4351
|
-
return
|
|
4378
|
+
return $xeTable.reloadData(tableSourceData);
|
|
4352
4379
|
},
|
|
4353
4380
|
/**
|
|
4354
4381
|
* 清空单元格内容
|
|
@@ -4481,6 +4508,13 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
4481
4508
|
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
4482
4509
|
return !!editStore.insertMaps[rowid];
|
|
4483
4510
|
},
|
|
4511
|
+
isRemoveByRow(row) {
|
|
4512
|
+
const {
|
|
4513
|
+
editStore
|
|
4514
|
+
} = reactData;
|
|
4515
|
+
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
4516
|
+
return !!editStore.removeMaps[rowid];
|
|
4517
|
+
},
|
|
4484
4518
|
/**
|
|
4485
4519
|
* 删除所有新增的临时数据
|
|
4486
4520
|
* @returns
|
|
@@ -7654,18 +7688,21 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7654
7688
|
const {
|
|
7655
7689
|
treeConfig
|
|
7656
7690
|
} = props;
|
|
7657
|
-
const
|
|
7691
|
+
const {
|
|
7692
|
+
treeExpandedMaps
|
|
7693
|
+
} = reactData;
|
|
7658
7694
|
const {
|
|
7659
7695
|
fullAllDataRowIdData,
|
|
7660
7696
|
tableFullData,
|
|
7661
7697
|
tableFullTreeData
|
|
7662
7698
|
} = internalData;
|
|
7699
|
+
const treeOpts = computeTreeOpts.value;
|
|
7663
7700
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
7664
7701
|
const hasChildField = treeOpts.hasChild || treeOpts.hasChildField;
|
|
7665
7702
|
const rowkey = (0, _util.getRowkey)($xeTable);
|
|
7666
|
-
const
|
|
7667
|
-
const fullAllDataRowIdMaps = {};
|
|
7703
|
+
const fullAllDataRowIdMaps = Object.assign({}, fullAllDataRowIdData); // 存在已删除数据
|
|
7668
7704
|
const fullDataRowIdMaps = {};
|
|
7705
|
+
const treeTempExpandedMaps = Object.assign({}, treeExpandedMaps);
|
|
7669
7706
|
const handleRow = (row, index, items, path, parentRow, nodes) => {
|
|
7670
7707
|
let rowid = (0, _util.getRowid)($xeTable, row);
|
|
7671
7708
|
const seq = treeConfig && path ? (0, _util.toTreePathSeq)(path) : index + 1;
|
|
@@ -7674,8 +7711,16 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7674
7711
|
rowid = (0, _util.getRowUniqueId)();
|
|
7675
7712
|
_xeUtils.default.set(row, rowkey, rowid);
|
|
7676
7713
|
}
|
|
7677
|
-
if (
|
|
7678
|
-
|
|
7714
|
+
if (treeConfig && treeOpts.lazy) {
|
|
7715
|
+
const treeExpRest = treeExpandedMaps[rowid];
|
|
7716
|
+
if (row[hasChildField] && _xeUtils.default.isUndefined(row[childrenField])) {
|
|
7717
|
+
row[childrenField] = null;
|
|
7718
|
+
}
|
|
7719
|
+
if (treeExpRest) {
|
|
7720
|
+
if (!row[childrenField] || !row[childrenField].length) {
|
|
7721
|
+
delete treeTempExpandedMaps[rowid];
|
|
7722
|
+
}
|
|
7723
|
+
}
|
|
7679
7724
|
}
|
|
7680
7725
|
let rowRest = fullAllDataRowIdData[rowid];
|
|
7681
7726
|
if (!rowRest) {
|
|
@@ -7696,6 +7741,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7696
7741
|
expandHeight: 0
|
|
7697
7742
|
};
|
|
7698
7743
|
}
|
|
7744
|
+
rowRest.treeLoaded = false;
|
|
7745
|
+
rowRest.expandLoaded = false;
|
|
7699
7746
|
rowRest.row = row;
|
|
7700
7747
|
rowRest.items = items;
|
|
7701
7748
|
rowRest.parent = parentRow;
|
|
@@ -7704,8 +7751,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7704
7751
|
fullDataRowIdMaps[rowid] = rowRest;
|
|
7705
7752
|
fullAllDataRowIdMaps[rowid] = rowRest;
|
|
7706
7753
|
};
|
|
7707
|
-
internalData.fullDataRowIdData = fullDataRowIdMaps;
|
|
7708
|
-
internalData.fullAllDataRowIdData = fullAllDataRowIdMaps;
|
|
7709
7754
|
if (treeConfig) {
|
|
7710
7755
|
_xeUtils.default.eachTree(tableFullTreeData, handleRow, {
|
|
7711
7756
|
children: childrenField
|
|
@@ -7713,6 +7758,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7713
7758
|
} else {
|
|
7714
7759
|
tableFullData.forEach(handleRow);
|
|
7715
7760
|
}
|
|
7761
|
+
internalData.fullDataRowIdData = fullDataRowIdMaps;
|
|
7762
|
+
internalData.fullAllDataRowIdData = fullAllDataRowIdMaps;
|
|
7763
|
+
reactData.treeExpandedMaps = treeTempExpandedMaps;
|
|
7716
7764
|
},
|
|
7717
7765
|
cacheSourceMap(fullData) {
|
|
7718
7766
|
const {
|
|
@@ -10690,18 +10738,16 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
10690
10738
|
}
|
|
10691
10739
|
};
|
|
10692
10740
|
// 检测对应模块是否安装
|
|
10693
|
-
|
|
10694
|
-
|
|
10695
|
-
|
|
10696
|
-
|
|
10697
|
-
|
|
10698
|
-
|
|
10699
|
-
|
|
10700
|
-
|
|
10701
|
-
|
|
10702
|
-
|
|
10703
|
-
});
|
|
10704
|
-
}
|
|
10741
|
+
'openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',').forEach(name => {
|
|
10742
|
+
$xeTable[name] = function () {
|
|
10743
|
+
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableExportModule']);
|
|
10744
|
+
};
|
|
10745
|
+
});
|
|
10746
|
+
'clearValidate,fullValidate,validate'.split(',').forEach(name => {
|
|
10747
|
+
$xeTable[name] = function () {
|
|
10748
|
+
(0, _log.errLog)('vxe.error.reqModule', ['VxeTableValidatorModule']);
|
|
10749
|
+
};
|
|
10750
|
+
});
|
|
10705
10751
|
Object.assign($xeTable, tableMethods, tablePrivateMethods);
|
|
10706
10752
|
/**
|
|
10707
10753
|
* 渲染浮固定列
|
|
@@ -11680,20 +11726,18 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
11680
11726
|
$table: $xeTable
|
|
11681
11727
|
});
|
|
11682
11728
|
});
|
|
11683
|
-
|
|
11684
|
-
(
|
|
11685
|
-
if (
|
|
11686
|
-
|
|
11687
|
-
(0, _log.errLog)('vxe.error.reqComp', ['vxe-loading']);
|
|
11688
|
-
}
|
|
11729
|
+
(0, _vue.nextTick)(() => {
|
|
11730
|
+
if (props.loading) {
|
|
11731
|
+
if (!VxeUILoadingComponent && !slots.loading) {
|
|
11732
|
+
(0, _log.errLog)('vxe.error.reqComp', ['vxe-loading']);
|
|
11689
11733
|
}
|
|
11690
|
-
|
|
11691
|
-
|
|
11692
|
-
|
|
11693
|
-
|
|
11734
|
+
}
|
|
11735
|
+
if (props.showOverflow === true || props.showOverflow === 'tooltip' || props.showHeaderOverflow === true || props.showHeaderOverflow === 'tooltip' || props.showFooterOverflow === true || props.showFooterOverflow === 'tooltip' || props.tooltipConfig || props.editRules) {
|
|
11736
|
+
if (!VxeUITooltipComponent) {
|
|
11737
|
+
(0, _log.errLog)('vxe.error.reqComp', ['vxe-tooltip']);
|
|
11694
11738
|
}
|
|
11695
|
-
}
|
|
11696
|
-
}
|
|
11739
|
+
}
|
|
11740
|
+
});
|
|
11697
11741
|
(0, _vue.provide)('$xeColgroup', null);
|
|
11698
11742
|
(0, _vue.provide)('$xeTable', $xeTable);
|
|
11699
11743
|
$xeTable.renderVN = renderVN;
|