vxe-table 3.13.17 → 3.14.0-beta.1
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 +41 -31
- package/es/style.css +1 -1
- package/es/table/module/keyboard/mixin.js +2 -2
- package/es/table/src/methods.js +282 -163
- package/es/table/src/table.js +52 -51
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +41 -32
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +1604 -2547
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/keyboard/mixin.js +2 -2
- package/lib/table/module/keyboard/mixin.min.js +1 -1
- package/lib/table/src/methods.js +298 -169
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +52 -51
- package/lib/table/src/table.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 +1 -1
- package/packages/grid/src/grid.ts +41 -31
- package/packages/table/module/keyboard/mixin.ts +2 -2
- package/packages/table/src/methods.ts +300 -173
- package/packages/table/src/table.ts +55 -53
- /package/es/{iconfont.1741051533862.ttf → iconfont.1741051885975.ttf} +0 -0
- /package/es/{iconfont.1741051533862.woff → iconfont.1741051885975.woff} +0 -0
- /package/es/{iconfont.1741051533862.woff2 → iconfont.1741051885975.woff2} +0 -0
- /package/lib/{iconfont.1741051533862.ttf → iconfont.1741051885975.ttf} +0 -0
- /package/lib/{iconfont.1741051533862.woff → iconfont.1741051885975.woff} +0 -0
- /package/lib/{iconfont.1741051533862.woff2 → iconfont.1741051885975.woff2} +0 -0
package/es/table/src/table.js
CHANGED
|
@@ -1297,28 +1297,28 @@ export default {
|
|
|
1297
1297
|
const mouseOpts = $xeTable.computeMouseOpts;
|
|
1298
1298
|
const exportOpts = $xeTable.computeExportOpts;
|
|
1299
1299
|
const importOpts = $xeTable.computeImportOpts;
|
|
1300
|
-
if (
|
|
1300
|
+
if (props.rowId) {
|
|
1301
1301
|
warnLog('vxe.error.delProp', ['row-id', 'row-config.keyField']);
|
|
1302
1302
|
}
|
|
1303
|
-
if (
|
|
1303
|
+
if (props.rowKey) {
|
|
1304
1304
|
warnLog('vxe.error.delProp', ['row-key', 'row-config.useKey']);
|
|
1305
1305
|
}
|
|
1306
|
-
if (
|
|
1306
|
+
if (props.columnKey) {
|
|
1307
1307
|
warnLog('vxe.error.delProp', ['column-id', 'column-config.useKey']);
|
|
1308
1308
|
}
|
|
1309
|
-
if (!(
|
|
1309
|
+
if (!(props.rowId || rowOpts.keyField) && (checkboxOpts.reserve || checkboxOpts.checkRowKeys || radioOpts.reserve || radioOpts.checkRowKey || expandOpts.expandRowKeys || treeOpts.expandRowKeys)) {
|
|
1310
1310
|
warnLog('vxe.error.reqProp', ['row-config.keyField']);
|
|
1311
1311
|
}
|
|
1312
|
-
if (
|
|
1312
|
+
if (props.editConfig && editOpts.showStatus && !props.keepSource) {
|
|
1313
1313
|
warnLog('vxe.error.reqProp', ['keep-source']);
|
|
1314
1314
|
}
|
|
1315
|
-
if (treeConfig && (treeOpts.showLine || treeOpts.line) && (!(
|
|
1315
|
+
if (treeConfig && (treeOpts.showLine || treeOpts.line) && (!(props.rowKey || rowOpts.useKey) || !showOverflow)) {
|
|
1316
1316
|
warnLog('vxe.error.reqProp', ['row-config.useKey | show-overflow']);
|
|
1317
1317
|
}
|
|
1318
|
-
if (treeConfig && !treeOpts.transform &&
|
|
1318
|
+
if (treeConfig && !treeOpts.transform && props.stripe) {
|
|
1319
1319
|
warnLog('vxe.error.noTree', ['stripe']);
|
|
1320
1320
|
}
|
|
1321
|
-
if (
|
|
1321
|
+
if (props.showFooter && !(props.footerMethod || props.footerData)) {
|
|
1322
1322
|
warnLog('vxe.error.reqProp', ['footer-data | footer-method']);
|
|
1323
1323
|
}
|
|
1324
1324
|
if (rowOpts.height) {
|
|
@@ -1346,25 +1346,25 @@ export default {
|
|
|
1346
1346
|
if (exportConfig && exportOpts.types && !exportOpts.exportMethod && !XEUtils.includeArrays(XEUtils.keys(exportOpts._typeMaps), exportOpts.types)) {
|
|
1347
1347
|
warnLog('vxe.error.errProp', [`export-config.types=${exportOpts.types.join(',')}`, exportOpts.types.filter((type) => XEUtils.includes(XEUtils.keys(exportOpts._typeMaps), type)).join(',') || XEUtils.keys(exportOpts._typeMaps).join(',')]);
|
|
1348
1348
|
}
|
|
1349
|
-
if (!
|
|
1350
|
-
if ((
|
|
1349
|
+
if (!props.id) {
|
|
1350
|
+
if ((props.customConfig ? isEnableConf(customOpts) : customOpts.enabled) && customOpts.storage) {
|
|
1351
1351
|
errLog('vxe.error.reqProp', ['id']);
|
|
1352
1352
|
}
|
|
1353
1353
|
}
|
|
1354
|
-
if (
|
|
1354
|
+
if (treeConfig && checkboxOpts.range) {
|
|
1355
1355
|
errLog('vxe.error.noTree', ['checkbox-config.range']);
|
|
1356
1356
|
}
|
|
1357
|
-
if (
|
|
1357
|
+
if (rowOpts.height && !this.showOverflow) {
|
|
1358
1358
|
warnLog('vxe.error.notProp', ['table.show-overflow']);
|
|
1359
1359
|
}
|
|
1360
|
-
if (
|
|
1361
|
-
if (
|
|
1360
|
+
if (!$xeTable.handleCellAreaMousedownEvent) {
|
|
1361
|
+
if (props.areaConfig) {
|
|
1362
1362
|
warnLog('vxe.error.notProp', ['area-config']);
|
|
1363
1363
|
}
|
|
1364
|
-
if (
|
|
1364
|
+
if (props.clipConfig) {
|
|
1365
1365
|
warnLog('vxe.error.notProp', ['clip-config']);
|
|
1366
1366
|
}
|
|
1367
|
-
if (
|
|
1367
|
+
if (props.fnrConfig) {
|
|
1368
1368
|
warnLog('vxe.error.notProp', ['fnr-config']);
|
|
1369
1369
|
}
|
|
1370
1370
|
if (mouseOpts.area) {
|
|
@@ -1375,21 +1375,30 @@ export default {
|
|
|
1375
1375
|
if (treeConfig && rowOpts.drag && !treeOpts.transform) {
|
|
1376
1376
|
warnLog('vxe.error.notSupportProp', ['column-config.drag', 'tree-config.transform=false', 'tree-config.transform=true']);
|
|
1377
1377
|
}
|
|
1378
|
-
if (
|
|
1378
|
+
if (props.dragConfig) {
|
|
1379
1379
|
warnLog('vxe.error.delProp', ['drag-config', 'row-drag-config']);
|
|
1380
1380
|
}
|
|
1381
|
-
if (
|
|
1381
|
+
if (props.treeConfig && treeOpts.children) {
|
|
1382
1382
|
warnLog('vxe.error.delProp', ['tree-config.children', 'tree-config.childrenField']);
|
|
1383
1383
|
}
|
|
1384
|
-
if (
|
|
1384
|
+
if (props.treeConfig && treeOpts.line) {
|
|
1385
1385
|
warnLog('vxe.error.delProp', ['tree-config.line', 'tree-config.showLine']);
|
|
1386
1386
|
}
|
|
1387
1387
|
if (mouseOpts.area && mouseOpts.selected) {
|
|
1388
1388
|
warnLog('vxe.error.errConflicts', ['mouse-config.area', 'mouse-config.selected']);
|
|
1389
1389
|
}
|
|
1390
|
-
if (mouseOpts.area && (
|
|
1390
|
+
if (mouseOpts.area && (props.treeConfig && !treeOpts.transform)) {
|
|
1391
1391
|
errLog('vxe.error.noTree', ['mouse-config.area']);
|
|
1392
1392
|
}
|
|
1393
|
+
if (props.editConfig && editOpts.activeMethod) {
|
|
1394
|
+
warnLog('vxe.error.delProp', ['table.edit-config.activeMethod', 'table.edit-config.beforeEditMethod']);
|
|
1395
|
+
}
|
|
1396
|
+
if (props.treeConfig && checkboxOpts.isShiftKey) {
|
|
1397
|
+
errLog('vxe.error.errConflicts', ['tree-config', 'checkbox-config.isShiftKey']);
|
|
1398
|
+
}
|
|
1399
|
+
if (checkboxOpts.halfField) {
|
|
1400
|
+
warnLog('vxe.error.delProp', ['checkbox-config.halfField', 'checkbox-config.indeterminateField']);
|
|
1401
|
+
}
|
|
1393
1402
|
// 在 v3.0 中废弃 context-menu
|
|
1394
1403
|
if (this.contextMenu) {
|
|
1395
1404
|
warnLog('vxe.error.delProp', ['context-menu', 'menu-config']);
|
|
@@ -1421,26 +1430,17 @@ export default {
|
|
|
1421
1430
|
if (this.emptyRender && !XEUtils.isObject(this.emptyRender)) {
|
|
1422
1431
|
warnLog('vxe.error.errProp', [`table.empty-render=${this.emptyRender}`, 'table.empty-render={}']);
|
|
1423
1432
|
}
|
|
1424
|
-
if (this.editConfig && this.editOpts.activeMethod) {
|
|
1425
|
-
warnLog('vxe.error.delProp', ['table.edit-config.activeMethod', 'table.edit-config.beforeEditMethod']);
|
|
1426
|
-
}
|
|
1427
|
-
if (this.treeConfig && this.checkboxOpts.isShiftKey) {
|
|
1428
|
-
errLog('vxe.error.errConflicts', ['tree-config', 'checkbox-config.isShiftKey']);
|
|
1429
|
-
}
|
|
1430
|
-
if (this.checkboxOpts.halfField) {
|
|
1431
|
-
warnLog('vxe.error.delProp', ['checkbox-config.halfField', 'checkbox-config.indeterminateField']);
|
|
1432
|
-
}
|
|
1433
1433
|
// 检查是否有安装需要的模块
|
|
1434
|
-
if (
|
|
1434
|
+
if (props.editConfig && !$xeTable.insert) {
|
|
1435
1435
|
errLog('vxe.error.reqModule', ['Edit']);
|
|
1436
1436
|
}
|
|
1437
|
-
if (
|
|
1437
|
+
if (props.editRules && !$xeTable.validate) {
|
|
1438
1438
|
errLog('vxe.error.reqModule', ['Validator']);
|
|
1439
1439
|
}
|
|
1440
|
-
if ((
|
|
1440
|
+
if ((checkboxOpts.range || props.keyboardConfig || props.mouseConfig) && !$xeTable.handleCellMousedownEvent) {
|
|
1441
1441
|
errLog('vxe.error.reqModule', ['Keyboard']);
|
|
1442
1442
|
}
|
|
1443
|
-
if ((
|
|
1443
|
+
if ((props.printConfig || props.importConfig || props.exportConfig) && !$xeTable.exportData) {
|
|
1444
1444
|
errLog('vxe.error.reqModule', ['Export']);
|
|
1445
1445
|
}
|
|
1446
1446
|
Object.assign(scrollYStore, {
|
|
@@ -1463,15 +1463,15 @@ export default {
|
|
|
1463
1463
|
this.handleInitDefaults();
|
|
1464
1464
|
this.updateStyle();
|
|
1465
1465
|
});
|
|
1466
|
-
globalEvents.on(
|
|
1467
|
-
globalEvents.on(
|
|
1468
|
-
globalEvents.on(
|
|
1469
|
-
globalEvents.on(
|
|
1470
|
-
globalEvents.on(
|
|
1471
|
-
globalEvents.on(
|
|
1472
|
-
globalEvents.on(
|
|
1473
|
-
globalEvents.on(
|
|
1474
|
-
globalEvents.on(
|
|
1466
|
+
globalEvents.on($xeTable, 'paste', this.handleGlobalPasteEvent);
|
|
1467
|
+
globalEvents.on($xeTable, 'copy', this.handleGlobalCopyEvent);
|
|
1468
|
+
globalEvents.on($xeTable, 'cut', this.handleGlobalCutEvent);
|
|
1469
|
+
globalEvents.on($xeTable, 'mousedown', this.handleGlobalMousedownEvent);
|
|
1470
|
+
globalEvents.on($xeTable, 'blur', this.handleGlobalBlurEvent);
|
|
1471
|
+
globalEvents.on($xeTable, 'mousewheel', this.handleGlobalMousewheelEvent);
|
|
1472
|
+
globalEvents.on($xeTable, 'keydown', this.handleGlobalKeydownEvent);
|
|
1473
|
+
globalEvents.on($xeTable, 'resize', this.handleGlobalResizeEvent);
|
|
1474
|
+
globalEvents.on($xeTable, 'contextmenu', this.handleGlobalContextmenuEvent);
|
|
1475
1475
|
$xeTable.preventEvent(null, 'created');
|
|
1476
1476
|
},
|
|
1477
1477
|
mounted() {
|
|
@@ -1549,15 +1549,16 @@ export default {
|
|
|
1549
1549
|
this.preventEvent(null, 'beforeDestroy');
|
|
1550
1550
|
},
|
|
1551
1551
|
destroyed() {
|
|
1552
|
-
|
|
1553
|
-
globalEvents.off(
|
|
1554
|
-
globalEvents.off(
|
|
1555
|
-
globalEvents.off(
|
|
1556
|
-
globalEvents.off(
|
|
1557
|
-
globalEvents.off(
|
|
1558
|
-
globalEvents.off(
|
|
1559
|
-
globalEvents.off(
|
|
1560
|
-
globalEvents.off(
|
|
1552
|
+
const $xeTable = this;
|
|
1553
|
+
globalEvents.off($xeTable, 'paste');
|
|
1554
|
+
globalEvents.off($xeTable, 'copy');
|
|
1555
|
+
globalEvents.off($xeTable, 'cut');
|
|
1556
|
+
globalEvents.off($xeTable, 'mousedown');
|
|
1557
|
+
globalEvents.off($xeTable, 'blur');
|
|
1558
|
+
globalEvents.off($xeTable, 'mousewheel');
|
|
1559
|
+
globalEvents.off($xeTable, 'keydown');
|
|
1560
|
+
globalEvents.off($xeTable, 'resize');
|
|
1561
|
+
globalEvents.off($xeTable, 'contextmenu');
|
|
1561
1562
|
this.preventEvent(null, 'destroyed');
|
|
1562
1563
|
},
|
|
1563
1564
|
render(h) {
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
package/lib/grid/src/grid.js
CHANGED
|
@@ -503,7 +503,7 @@ var _default = exports.default = {
|
|
|
503
503
|
});
|
|
504
504
|
return rest;
|
|
505
505
|
},
|
|
506
|
-
|
|
506
|
+
computeTableProps() {
|
|
507
507
|
const {
|
|
508
508
|
isZMax,
|
|
509
509
|
seqConfig,
|
|
@@ -514,30 +514,31 @@ var _default = exports.default = {
|
|
|
514
514
|
proxyOpts,
|
|
515
515
|
tableExtendProps,
|
|
516
516
|
tableLoading,
|
|
517
|
-
tablePage
|
|
518
|
-
tableData
|
|
517
|
+
tablePage
|
|
519
518
|
} = this;
|
|
520
|
-
const
|
|
519
|
+
const tProps = Object.assign({}, tableExtendProps);
|
|
521
520
|
if (isZMax) {
|
|
522
521
|
if (tableExtendProps.maxHeight) {
|
|
523
|
-
|
|
522
|
+
tProps.maxHeight = '100%';
|
|
524
523
|
} else {
|
|
525
|
-
|
|
524
|
+
tProps.height = '100%';
|
|
526
525
|
}
|
|
527
526
|
}
|
|
528
527
|
if (proxyConfig) {
|
|
529
|
-
|
|
530
|
-
tableProps.data = tableData;
|
|
528
|
+
tProps.loading = loading || tableLoading;
|
|
531
529
|
if (proxyOpts.seq && (0, _utils.isEnableConf)(pagerConfig)) {
|
|
532
|
-
|
|
530
|
+
tProps.seqConfig = Object.assign({}, seqConfig, {
|
|
533
531
|
startIndex: (tablePage.currentPage - 1) * tablePage.pageSize
|
|
534
532
|
});
|
|
535
533
|
}
|
|
536
534
|
}
|
|
537
535
|
if (editConfig) {
|
|
538
|
-
|
|
536
|
+
tProps.editConfig = Object.assign({}, editConfig);
|
|
539
537
|
}
|
|
540
|
-
return
|
|
538
|
+
return tProps;
|
|
539
|
+
},
|
|
540
|
+
tableProps() {
|
|
541
|
+
return this.computeTableProps;
|
|
541
542
|
},
|
|
542
543
|
computeCurrLayoutConf() {
|
|
543
544
|
const $xeGrid = this;
|
|
@@ -816,7 +817,7 @@ var _default = exports.default = {
|
|
|
816
817
|
ajax = {}
|
|
817
818
|
} = proxyOpts;
|
|
818
819
|
const resConfigs = proxyOpts.response || proxyOpts.props || {};
|
|
819
|
-
const $
|
|
820
|
+
const $xeTable = $refs.xTable;
|
|
820
821
|
const formData = this.getFormData();
|
|
821
822
|
let button;
|
|
822
823
|
let code;
|
|
@@ -887,10 +888,10 @@ var _default = exports.default = {
|
|
|
887
888
|
}
|
|
888
889
|
if (isInited) {
|
|
889
890
|
let defaultSort = null;
|
|
890
|
-
if ($
|
|
891
|
+
if ($xeTable) {
|
|
891
892
|
const {
|
|
892
893
|
sortOpts
|
|
893
|
-
} = $
|
|
894
|
+
} = $xeTable;
|
|
894
895
|
defaultSort = sortOpts.defaultSort;
|
|
895
896
|
}
|
|
896
897
|
// 如果使用默认排序
|
|
@@ -906,16 +907,16 @@ var _default = exports.default = {
|
|
|
906
907
|
};
|
|
907
908
|
});
|
|
908
909
|
}
|
|
909
|
-
if ($
|
|
910
|
-
filterList = $
|
|
910
|
+
if ($xeTable) {
|
|
911
|
+
filterList = $xeTable.getCheckedFilters();
|
|
911
912
|
}
|
|
912
913
|
} else {
|
|
913
|
-
if ($
|
|
914
|
+
if ($xeTable) {
|
|
914
915
|
if (isReload) {
|
|
915
|
-
$
|
|
916
|
+
$xeTable.clearAll();
|
|
916
917
|
} else {
|
|
917
|
-
sortList = $
|
|
918
|
-
filterList = $
|
|
918
|
+
sortList = $xeTable.getSortColumns();
|
|
919
|
+
filterList = $xeTable.getCheckedFilters();
|
|
919
920
|
}
|
|
920
921
|
}
|
|
921
922
|
}
|
|
@@ -937,6 +938,7 @@ var _default = exports.default = {
|
|
|
937
938
|
this.tableLoading = true;
|
|
938
939
|
const applyArgs = [commitParams].concat(args);
|
|
939
940
|
return Promise.resolve((beforeQuery || ajaxMethods)(...applyArgs)).then(rest => {
|
|
941
|
+
let tableData = [];
|
|
940
942
|
this.tableLoading = false;
|
|
941
943
|
if (rest) {
|
|
942
944
|
if (pagerConfig && (0, _utils.isEnableConf)(pagerOpts)) {
|
|
@@ -947,7 +949,7 @@ var _default = exports.default = {
|
|
|
947
949
|
}) : _xeUtils.default.get(rest, totalProp || 'page.total')) || 0;
|
|
948
950
|
tablePage.total = _xeUtils.default.toNumber(total);
|
|
949
951
|
const resultProp = resConfigs.result;
|
|
950
|
-
|
|
952
|
+
tableData = (_xeUtils.default.isFunction(resultProp) ? resultProp({
|
|
951
953
|
data: rest,
|
|
952
954
|
$grid: this
|
|
953
955
|
}) : _xeUtils.default.get(rest, resultProp || 'result')) || [];
|
|
@@ -958,13 +960,20 @@ var _default = exports.default = {
|
|
|
958
960
|
}
|
|
959
961
|
} else {
|
|
960
962
|
const listProp = resConfigs.list;
|
|
961
|
-
|
|
963
|
+
tableData = (listProp ? _xeUtils.default.isFunction(listProp) ? listProp({
|
|
962
964
|
data: rest,
|
|
963
965
|
$grid: this
|
|
964
966
|
}) : _xeUtils.default.get(rest, listProp) : rest) || [];
|
|
965
967
|
}
|
|
968
|
+
}
|
|
969
|
+
if ($xeTable) {
|
|
970
|
+
$xeTable.loadData(tableData);
|
|
966
971
|
} else {
|
|
967
|
-
|
|
972
|
+
$xeTable.$nextTick(() => {
|
|
973
|
+
if ($xeTable) {
|
|
974
|
+
$xeTable.loadData(tableData);
|
|
975
|
+
}
|
|
976
|
+
});
|
|
968
977
|
}
|
|
969
978
|
if (afterQuery) {
|
|
970
979
|
afterQuery(...applyArgs);
|
|
@@ -1001,8 +1010,8 @@ var _default = exports.default = {
|
|
|
1001
1010
|
const deleteSuccessMethods = ajax.deleteSuccess;
|
|
1002
1011
|
const deleteErrorMethods = ajax.deleteError;
|
|
1003
1012
|
if (ajaxMethods) {
|
|
1004
|
-
const selectRecords = $
|
|
1005
|
-
const removeRecords = selectRecords.filter(row => !$
|
|
1013
|
+
const selectRecords = $xeTable.getCheckboxRecords();
|
|
1014
|
+
const removeRecords = selectRecords.filter(row => !$xeTable.isInsertByRow(row));
|
|
1006
1015
|
const body = {
|
|
1007
1016
|
removeRecords
|
|
1008
1017
|
};
|
|
@@ -1018,12 +1027,12 @@ var _default = exports.default = {
|
|
|
1018
1027
|
if (selectRecords.length) {
|
|
1019
1028
|
return this.handleDeleteRow(code, 'vxe.grid.deleteSelectRecord', () => {
|
|
1020
1029
|
if (!removeRecords.length) {
|
|
1021
|
-
return $
|
|
1030
|
+
return $xeTable.remove(selectRecords);
|
|
1022
1031
|
}
|
|
1023
1032
|
this.tableLoading = true;
|
|
1024
1033
|
return Promise.resolve((beforeDelete || ajaxMethods)(...applyArgs)).then(rest => {
|
|
1025
1034
|
this.tableLoading = false;
|
|
1026
|
-
$
|
|
1035
|
+
$xeTable.setPendingRow(removeRecords, false);
|
|
1027
1036
|
if (isRespMsg) {
|
|
1028
1037
|
// 检测弹窗模块
|
|
1029
1038
|
if (process.env.NODE_ENV === 'development') {
|
|
@@ -1140,7 +1149,7 @@ var _default = exports.default = {
|
|
|
1140
1149
|
this.tableLoading = true;
|
|
1141
1150
|
return Promise.resolve((beforeSave || ajaxMethods)(...applyArgs)).then(rest => {
|
|
1142
1151
|
this.tableLoading = false;
|
|
1143
|
-
$
|
|
1152
|
+
$xeTable.clearPendingRow();
|
|
1144
1153
|
if (isRespMsg) {
|
|
1145
1154
|
// 检测弹窗模块
|
|
1146
1155
|
if (process.env.NODE_ENV === 'development') {
|
|
@@ -1222,7 +1231,7 @@ var _default = exports.default = {
|
|
|
1222
1231
|
code,
|
|
1223
1232
|
button,
|
|
1224
1233
|
$grid: this,
|
|
1225
|
-
$table: $
|
|
1234
|
+
$table: $xeTable
|
|
1226
1235
|
}, ...args);
|
|
1227
1236
|
} else {
|
|
1228
1237
|
if (process.env.NODE_ENV === 'development') {
|
|
@@ -1516,16 +1525,16 @@ var _default = exports.default = {
|
|
|
1516
1525
|
sortData,
|
|
1517
1526
|
proxyConfig
|
|
1518
1527
|
} = this;
|
|
1519
|
-
const $
|
|
1528
|
+
const $xeTable = $refs.xTable;
|
|
1520
1529
|
if (proxyConfig) {
|
|
1521
1530
|
return {
|
|
1522
|
-
data:
|
|
1531
|
+
data: $xeTable ? $xeTable.getFullData() : [],
|
|
1523
1532
|
filter: this.filterData,
|
|
1524
1533
|
form: this.getFormData(),
|
|
1525
1534
|
sort: sortData.length ? sortData[0] : {},
|
|
1526
1535
|
sorts: sortData,
|
|
1527
1536
|
pager: this.tablePage,
|
|
1528
|
-
pendingRecords: $
|
|
1537
|
+
pendingRecords: $xeTable ? $xeTable.getPendingRecords() : []
|
|
1529
1538
|
};
|
|
1530
1539
|
}
|
|
1531
1540
|
return null;
|
package/lib/grid/src/grid.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/toolbar")),_props=_interopRequireDefault(require("../../table/src/props")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getI18n,commands,globalEvents,globalMixins,renderEmptyElement}=_ui.VxeUI,methods={},propKeys=Object.keys(_props.default),defaultLayouts=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]];function renderDefaultForm(e,r){var o=_ui.VxeUI.getComponent("VxeForm");let s=r.$scopedSlots;var{proxyConfig:i,formConfig:t}=r,{proxyOpts:a,formData:n,formOpts:l}=r;if((0,_utils.isEnableConf)(t)&&l.items&&l.items.length){let t={};if(!l.inited){l.inited=!0;let t=a.beforeItem;a&&t&&l.items.forEach(e=>{t.call(r,{$grid:r,item:e})})}return l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||s[e]&&(t[e]=s[e])})}),[o?e(o,{props:Object.assign({},l,{data:i&&a.form?n:l.data}),on:{submit:r.submitEvent,reset:r.resetEvent,collapse:r.collapseEvent,"submit-invalid":r.submitInvalidEvent},scopedSlots:t}):renderEmptyElement(r)]}return[]}function getFuncSlot(e,t,r){e=e.$scopedSlots,t=t[r];if(t){if(!_xeUtils.default.isString(t))return t;if(e[t])return e[t];"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notSlot",[t])}return null}function getToolbarSlots(e){var{$scopedSlots:t,toolbarOpts:r}=e,r=r.slots,o={};return"development"===process.env.NODE_ENV&&(!t.buttons||r&&"buttons"===r.buttons||(0,_log.warnLog)("vxe.error.reqProp",["toolbar-config.slots.buttons"]),!t.tools||r&&"tools"===r.tools||(0,_log.warnLog)("vxe.error.reqProp",["toolbar-config.slots.tools"])),r&&(t=getFuncSlot(e,r,"buttons"),e=getFuncSlot(e,r,"tools"),t&&(o.buttons=t),e)&&(o.tools=e),o}function getPagerSlots(e){var t,r=e.pagerOpts,r=r.slots,o={};return r&&(t=getFuncSlot(e,r,"left"),e=getFuncSlot(e,r,"right"),t&&(o.left=t),e)&&(o.right=e),o}function getTableOns(r){var{$listeners:e,proxyConfig:t,proxyOpts:o}=r;let s={};return _xeUtils.default.each(e,(e,t)=>{s[t]=(...e)=>{r.$emit(t,...e)}}),t&&(o.sort&&(s["sort-change"]=r.sortChangeEvent),o.filter)&&(s["filter-change"]=r.filterChangeEvent),s}function renderForm(e,t){var{_e:r,$scopedSlots:o,formConfig:s}=t,o=o.form;return!o&&!(0,_utils.isEnableConf)(s)?r():e("div",{key:"form",ref:"refFormWrapper",class:"vxe-grid--form-wrapper"},o?o.call(t,{$grid:t},e):renderDefaultForm(e,t))}function renderToolbar(e,t){var{_e:r,$scopedSlots:o,toolbarConfig:s,toolbar:i}=t,o=o.toolbar;return!(o||(0,_utils.isEnableConf)(s)||i)?r():e("div",{key:"toolbar",ref:"refToolbarWrapper",class:"vxe-grid--toolbar-wrapper"},o?o.call(t,{$grid:t},e):[e(_toolbar.default,{props:t.toolbarOpts,ref:"xToolbar",scopedSlots:getToolbarSlots(t)})])}function renderTop(e,t){var{_e:r,$scopedSlots:o}=t,o=o.top;return o?e("div",{key:"top",ref:"refTopWrapper",class:"vxe-grid--top-wrapper"},o.call(t,{$grid:t},e)):r()}function renderTableLeft(e,t){var{_e:r,$scopedSlots:o}=t,o=o.left;return o?e("div",{class:"vxe-grid--left-wrapper"},o({$grid:t})):r()}function renderTableRight(e,t){var{_e:r,$scopedSlots:o}=t,o=o.right;return o?e("div",{class:"vxe-grid--right-wrapper"},o({$grid:t})):r()}function renderTable(e,t){var{$scopedSlots:r,tableProps:o}=t;return e("div",{class:"vxe-grid--table-wrapper"},[e("vxe-table",{key:"table",props:o,on:getTableOns(t),scopedSlots:r,ref:"xTable"})])}function renderBottom(e,t){var{_e:r,$scopedSlots:o}=t,o=o.bottom;return o?e("div",{key:"bottom",ref:"refBottomWrapper",class:"vxe-grid--bottom-wrapper"},o.call(t,{$grid:t},e)):r()}function renderPager(e,t){var r=_ui.VxeUI.getComponent("VxePager"),{pagerConfig:o,proxyConfig:s}=t,{$scopedSlots:i,tablePage:a}=t,i=i.pager;return!i&&!(0,_utils.isEnableConf)(o)?renderEmptyElement(t):e("div",{key:"pager",ref:"refPagerWrapper",class:"vxe-grid--pager-wrapper"},i?i.call(t,{$grid:t},e):[r?e(r,{props:Object.assign(Object.assign({},t.pagerOpts),s?a:{}),on:{"page-change":t.pageChangeEvent},scopedSlots:getPagerSlots(t)}):renderEmptyElement(t)])}function renderChildLayout(t,r,e){let o=[];return e.forEach(e=>{switch(e){case"Form":o.push(renderForm(t,r));break;case"Toolbar":o.push(renderToolbar(t,r));break;case"Top":o.push(renderTop(t,r));break;case"Table":o.push(t("div",{key:"table",class:"vxe-grid--table-container"},[renderTableLeft(t,r),renderTable(t,r),renderTableRight(t,r)]));break;case"Bottom":o.push(renderBottom(t,r));break;case"Pager":o.push(renderPager(t,r));break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),o}function renderLayout(e,t){var r=t.$scopedSlots,{headKeys:o,bodyKeys:s,footKeys:i}=t.computeCurrLayoutConf,a=r.asideLeft||r["aside-left"],r=r.asideRight||r["aside-right"];return[e("div",{class:"vxe-grid--layout-header-wrapper"},renderChildLayout(e,t,o)),e("div",{class:"vxe-grid--layout-body-wrapper"},[a?e("div",{class:"vxe-grid--layout-aside-left-wrapper"},a({})):renderEmptyElement(t),e("div",{class:"vxe-grid--layout-body-content-wrapper"},renderChildLayout(e,t,s)),r?e("div",{class:"vxe-grid--layout-aside-right-wrapper"},r({})):renderEmptyElement(t)]),e("div",{class:"vxe-grid--layout-footer-wrapper"},renderChildLayout(e,t,i))]}Object.keys(_table.default.methods).forEach(t=>{methods[t]=function(...e){return this.$refs.xTable&&this.$refs.xTable[t](...e)}});var _default=exports.default={name:"VxeGrid",mixins:[globalMixins.sizeMixin],props:Object.assign(Object.assign({},_props.default),{layouts:Array,columns:Array,pagerConfig:[Boolean,Object],proxyConfig:Object,toolbar:[Boolean,Object],toolbarConfig:[Boolean,Object],formConfig:[Boolean,Object],zoomConfig:Object,size:{type:String,default:()=>getConfig().grid.size||getConfig().size}}),provide(){return{$xeGrid:this,$xegrid:this}},data(){var e;return{tableLoading:!1,isZMax:!1,tableData:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(e=getConfig().pager)?void 0:e.pageSize)||10,currentPage:1}}},computed:{isRespMsg(){var e=this.proxyOpts;return _xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg},isActiveMsg(){return this.proxyOpts.showActiveMsg},proxyOpts(){return this.computeProxyOpts},computeProxyOpts(){return _xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),this.proxyConfig)},pagerOpts(){return this.computePagerOpts},computePagerOpts(){return Object.assign({},getConfig().grid.pagerConfig,this.pagerConfig)},formOpts(){return this.computeFormOpts},computeFormOpts(){return Object.assign({},getConfig().grid.formConfig,this.formConfig)},toolbarOpts(){return this.computeToolbarOpts},computeToolbarOpts(){return Object.assign({},getConfig().grid.toolbarConfig,this.toolbarConfig||this.toolbar)},zoomOpts(){return this.computeZoomOpts},computeZoomOpts(){return Object.assign({},getConfig().grid.zoomConfig,this.zoomConfig)},computeStyles(){var{height:e,maxHeight:t}=this,{isZMax:r,tZindex:o}=this,s={};return r?s.zIndex=o:(e&&(s.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(s.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),s},tableExtendProps(){let t={};return propKeys.forEach(e=>{t[e]=this[e]}),t},tableProps(){var{isZMax:e,seqConfig:t,pagerConfig:r,loading:o,editConfig:s,proxyConfig:i,proxyOpts:a,tableExtendProps:n,tableLoading:l,tablePage:g,tableData:d}=this,c=Object.assign({},n);return e&&(n.maxHeight?c.maxHeight="100%":c.height="100%"),i&&(c.loading=o||l,c.data=d,a.seq)&&(0,_utils.isEnableConf)(r)&&(c.seqConfig=Object.assign({},t,{startIndex:(g.currentPage-1)*g.pageSize})),s&&(c.editConfig=Object.assign({},s)),c},computeCurrLayoutConf(){var e=this.layouts;let t=[],r=[],o=[],s=[];return(t=e&&e.length?e:getConfig().grid.layouts||defaultLayouts).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],o=t[1]||[],s=t[2]||[]):o=t),{headKeys:r,bodyKeys:o,footKeys:s}},computePageConfFlag(){var e=this.computePagerOpts;return""+e.currentPage+e.pageSize}},watch:{columns(e){this.$nextTick(()=>this.loadColumn(e))},toolbar(e){e&&this.initToolbar()},toolbarConfig(e){e&&this.initToolbar()},proxyConfig(){this.initProxy()},computePageConfFlag(){this.initPages()}},created(){let r=this;if("development"===process.env.NODE_ENV&&(this.toolbar&&(0,_log.warnLog)("vxe.error.delProp",["grid.toolbar","grid.toolbar-config"]),this.toolbarConfig)&&!_xeUtils.default.isObject(this.toolbarConfig)&&(0,_log.warnLog)("vxe.error.errProp",["grid.toolbar-config="+this.toolbarConfig,"grid.toolbar-config={}"]),"development"===process.env.NODE_ENV){let e=_ui.VxeUI.getComponent("VxeForm"),t=_ui.VxeUI.getComponent("VxePager");this.$nextTick(()=>{r.formConfig&&!e&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),r.pagerConfig&&!t&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"])})}this.initPages(),globalEvents.on(this,"keydown",this.handleGlobalKeydownEvent)},mounted(){this.columns&&this.columns.length&&this.loadColumn(this.columns),this.initToolbar(),this.initProxy()},destroyed(){globalEvents.off(this,"keydown")},render(e){var t=this,r=t.computeSize;return e("div",{ref:"refElem",class:["vxe-grid",{["size--"+r]:r,"is--animat":!!this.animat,"is--round":this.round,"is--maximize":t.isZMax,"is--loading":t.loading||t.tableLoading}],style:t.computeStyles},renderLayout(e,t))},methods:Object.assign(Object.assign(Object.assign({},methods),{callSlot(e,t,r,o){if(e){var s=this.$scopedSlots;if(_xeUtils.default.isString(e)&&(e=s[e]||null),_xeUtils.default.isFunction(e))return(0,_vn.getSlotVNs)(e.call(this,t,r,o))}return[]},getExcludeHeight(){var e=this,t=e.isZMax,r=e.$refs.refElem,o=e.$refs.refFormWrapper,s=e.$refs.refToolbarWrapper,i=e.$refs.refTopWrapper,a=e.$refs.refBottomWrapper,e=e.$refs.refPagerWrapper;return(t?0:(0,_dom.getPaddingTopBottomSize)(r.parentNode))+(0,_dom.getPaddingTopBottomSize)(r)+(0,_dom.getOffsetHeight)(o)+(0,_dom.getOffsetHeight)(s)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(e)},getParentHeight(){var e=this.$refs.refElem;return e?(this.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-this.getExcludeHeight():0},initToolbar(){this.$nextTick(()=>{var{xTable:e,xToolbar:t}=this.$refs;e&&t&&e.connect(t)})},initPages(){var{tablePage:e,pagerConfig:t,pagerOpts:r}=this,{currentPage:r,pageSize:o}=r;t&&(r&&(e.currentPage=r),o)&&(e.pageSize=o)},initProxy(){var{proxyInited:e,proxyConfig:t,proxyOpts:r,formConfig:o,formOpts:i}=this;if(t){if((0,_utils.isEnableConf)(o)&&r.form&&i.items){let s={};i.items.forEach(t=>{var{field:r,itemRender:o}=t;if(r){let e=null;o&&(o=o.defaultValue,_xeUtils.default.isFunction(o)?e=o({item:t}):_xeUtils.default.isUndefined(o)||(e=o)),s[r]=e}}),this.formData=s}e||!1===r.autoLoad||(this.proxyInited=!0,this.$nextTick().then(()=>this.commitProxy("_init")).then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{isInited:!0,$grid:this,$event:new Event("init")}))}))}},handleGlobalKeydownEvent(e){27===e.keyCode&&this.isZMax&&!1!==this.zoomOpts.escRestore&&this.triggerZoomEvent(e)},commitProxy(t,...c){let{$refs:e,toolbar:r,toolbarConfig:o,toolbarOpts:s,proxyOpts:i,tablePage:n,pagerConfig:l,editRules:u,isRespMsg:p,isActiveMsg:h,validConfig:m,pagerOpts:g}=this,{beforeQuery:d,afterQuery:f,beforeDelete:b,afterDelete:x,beforeSave:v,afterSave:_,ajax:y={}}=i,O=i.response||i.props||{},C=e.xTable;var a,$=this.getFormData();let E,P;_xeUtils.default.isString(t)?(a=o||r?_xeUtils.default.findTree(s.buttons,e=>e.code===t,{children:"dropdowns"}):null,P=t,E=a?a.item:null):(E=t,P=E.code);var j=E?E.params:null;switch(P){case"insert":return this.insert();case"insert_edit":return this.insert().then(({row:e})=>this.setEditRow(e));case"insert_actived":return this.insert().then(({row:e})=>this.setEditRow(e));case"mark_cancel":this.triggerPendingEvent(P);break;case"remove":return this.handleDeleteRow(P,"vxe.grid.removeSelectRecord",()=>this.removeCheckboxRow());case"import":this.importData(j);break;case"open_import":this.openImport(j);break;case"export":this.exportData(j);break;case"open_export":this.openExport(j);break;case"reset_custom":this.resetCustom(!0);break;case"_init":case"reload":case"query":{var S=y.query;let i=y.querySuccess,a=y.queryError;if(S){var T="_init"===P,U="reload"===P;let t=[],r=[],e={};if(l&&((T||U)&&(n.currentPage=1),(0,_utils.isEnableConf)(l))&&(e=Object.assign({},n)),T){let e=null;C&&(R=C.sortOpts,e=R.defaultSort),e&&(_xeUtils.default.isArray(e)||(e=[e]),t=e.map(e=>({field:e.field,property:e.field,order:e.order}))),C&&(r=C.getCheckedFilters())}else C&&(U?C.clearAll():(t=C.getSortColumns(),r=C.getCheckedFilters()));let o={code:P,button:E,isInited:T,isReload:U,$grid:this,page:e,sort:t.length?t[0]:{},sorts:t,filters:r,form:$,options:S},s=(this.sortData=t,this.filterData=r,this.tableLoading=!0,[o].concat(c));return Promise.resolve((d||S)(...s)).then(e=>{var t,r;return this.tableLoading=!1,e?l&&(0,_utils.isEnableConf)(g)?(r=O.total,r=(_xeUtils.default.isFunction(r)?r({data:e,$grid:this}):_xeUtils.default.get(e,r||"page.total"))||0,n.total=_xeUtils.default.toNumber(r),t=O.result,this.tableData=(_xeUtils.default.isFunction(t)?t({data:e,$grid:this}):_xeUtils.default.get(e,t||"result"))||[],t=Math.max(Math.ceil(r/n.pageSize),1),n.currentPage>t&&(n.currentPage=t)):(r=O.list,this.tableData=(r?_xeUtils.default.isFunction(r)?r({data:e,$grid:this}):_xeUtils.default.get(e,r):e)||[]):this.tableData=[],f&&f(...s),i&&i(Object.assign(Object.assign({},o),{response:e})),{status:!0}}).catch(e=>(this.tableLoading=!1,a&&a(Object.assign(Object.assign({},o),{response:e})),{status:!1}))}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{let s=y.delete,i=y.deleteSuccess,a=y.deleteError;if(s){let e=C.getCheckboxRecords(),t=e.filter(e=>!C.isInsertByRow(e));var R={removeRecords:t};let r={$grid:this,code:P,button:E,body:R,form:$,options:s},o=[r].concat(c);if(e.length)return this.handleDeleteRow(P,"vxe.grid.deleteSelectRecord",()=>t.length?(this.tableLoading=!0,Promise.resolve((b||s)(...o)).then(e=>(this.tableLoading=!1,C.setPendingRow(t,!1),p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:this.getRespMsg(e,"vxe.grid.delSuccess"),status:"success"})),x?x(...o):this.commitProxy("query"),i&&i(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(this.tableLoading=!1,p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:this.getRespMsg(e,"vxe.grid.operError"),status:"error"})),a&&a(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):C.remove(e));h&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"}))}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let l=y.save,g=y.saveSuccess,d=y.saveError;if(l){let t=this.getRecordset(),{insertRecords:r,removeRecords:o,updateRecords:s,pendingRecords:i}=t,a={$grid:this,code:P,button:E,body:t,form:$,options:l},n=[a].concat(c),e=(r.length&&(t.pendingRecords=i.filter(e=>-1===r.indexOf(e))),i.length&&(t.insertRecords=r.filter(e=>-1===i.indexOf(e))),Promise.resolve());return(e=u?this[m&&"full"===m.msgMode?"fullValidate":"validate"](t.insertRecords.concat(s)):e).then(e=>{if(!e)return t.insertRecords.length||o.length||s.length||t.pendingRecords.length?(this.tableLoading=!0,Promise.resolve((v||l)(...n)).then(e=>(this.tableLoading=!1,C.clearPendingRow(),p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:this.getRespMsg(e,"vxe.grid.saveSuccess"),status:"success"})),_?_(...n):this.commitProxy("query"),g&&g(Object.assign(Object.assign({},a),{response:e})),{status:!0})).catch(e=>(this.tableLoading=!1,p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:this.getRespMsg(e,"vxe.grid.operError"),status:"error"})),d&&d(Object.assign(Object.assign({},a),{response:e})),{status:!1}))):void(h&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:getI18n("vxe.grid.dataUnchanged"),status:"info"})))})}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:T=commands.get(P);T&&(T.commandMethod?T.commandMethod({code:P,button:E,$grid:this,$table:C},...c):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notCommands",[P]))}return this.$nextTick()},getRespMsg(e,t){var r=this.proxyOpts,r=r.response||r.props||{};let o;return(o=e&&r.message?_xeUtils.default.get(e,r.message):o)||getI18n(t)},handleDeleteRow(e,t,r){var o=this.getCheckboxRecords();if(this.isActiveMsg){if(o.length)return _ui.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return r()});"development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else o.length&&r();return Promise.resolve()},getFormData(){var{proxyConfig:e,proxyOpts:t,formOpts:r,formData:o}=this;return e&&(0,_utils.isEnableConf)(t)&&t.form?o:r.data},getFormItems(e){var{formConfig:t,formOpts:r}=this;let o=[];return _xeUtils.default.eachTree((0,_utils.isEnableConf)(t)&&r.items?r.items:[],e=>{o.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?o:o[e]},triggerToolbarCommitEvent(e,t){let r=e.code;return this.commitProxy(e,t).then(e=>{r&&e&&e.status&&["query","reload","delete","save"].includes(r)&&this.$emit("delete"===r||"save"===r?"proxy-"+r:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===r,$grid:this,$event:t}))})},triggerToolbarBtnEvent(e,t){this.triggerToolbarCommitEvent(e,t),this.$emit("toolbar-button-click",{code:e.code,button:e,$grid:this,$event:t})},triggerToolbarTolEvent(e,t){this.triggerToolbarCommitEvent(e,t),this.$emit("toolbar-tool-click",{code:e.code,tool:e,$grid:this,$event:t})},triggerPendingEvent(e){var t=this.isActiveMsg,r=this.getCheckboxRecords();r.length?(this.togglePendingRow(r),this.clearCheckboxRow()):t&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"}))},pageChangeEvent(t){var{proxyConfig:e,tablePage:r}=this,{currentPage:o,pageSize:s}=t;r.currentPage=o,r.pageSize=s,this.$emit("page-change",Object.assign({$grid:this},t)),e&&this.commitProxy("query").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{$grid:this,$event:t.$event}))})},sortChangeEvent(t){var{$table:e,column:r,sortList:o}=t;(_xeUtils.default.isBoolean(r.remoteSort)?r.remoteSort:e.sortOpts.remote)&&(this.sortData=o,this.proxyConfig)&&(this.tablePage.currentPage=1,this.commitProxy("query").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{$grid:this,$event:t.$event}))})),this.$emit("sort-change",Object.assign({$grid:this},t))},filterChangeEvent(t){var{$table:e,filterList:r}=t;e.filterOpts.remote&&(this.filterData=r,this.proxyConfig)&&(this.tablePage.currentPage=1,this.commitProxy("query").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{$grid:this,$event:t.$event}))})),this.$emit("filter-change",Object.assign({$grid:this},t))},submitEvent(t){var e=this.proxyConfig;e&&this.commitProxy("reload").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{isReload:!0,$grid:this,$event:t.$event}))}),this.$emit("form-submit",Object.assign({$grid:this},t))},resetEvent(t){var e=this.proxyConfig,r=this.$refs.xTable;e&&(r.clearScroll(),this.commitProxy("reload").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{isReload:!0,$grid:this,$event:t.$event}))})),this.$emit("form-reset",Object.assign({$grid:this},t))},submitInvalidEvent(e){this.$emit("form-submit-invalid",Object.assign({$grid:this},e))},collapseEvent(e){this.$nextTick(()=>this.recalculate(!0)),this.$emit("form-toggle-collapse",Object.assign({$grid:this},e)),this.$emit("form-collapse",Object.assign({$grid:this},e))},triggerZoomEvent(e){this.zoom(),this.$emit("zoom",{$grid:this,type:this.isZMax?"max":"revert",$event:e})},zoom(){return this[this.isZMax?"revert":"maximize"]()},isMaximized(){return this.isZMax},maximize(){return this.handleZoom(!0)},revert(){return this.handleZoom()},handleZoom(e){var t=this.isZMax;return(e?!t:t)&&(this.isZMax=!t,this.tZindex<(0,_utils.getLastZIndex)())&&(this.tZindex=(0,_utils.nextZIndex)()),this.$nextTick().then(()=>this.recalculate(!0)).then(()=>(setTimeout(()=>this.recalculate(!0),15),this.isZMax))},getProxyInfo(){var{$refs:e,sortData:t,proxyConfig:r}=this,e=e.xTable;return r?{data:this.tableData,filter:this.filterData,form:this.getFormData(),sort:t.length?t[0]:{},sorts:t,pager:this.tablePage,pendingRecords:e?e.getPendingRecords():[]}:null}}),"development"===process.env.NODE_ENV?{loadColumn(e){let t=this.$scopedSlots;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||t[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),this.$refs.xTable.loadColumn(e)},reloadColumn(e){return this.clearAll(),this.loadColumn(e)}}:null)};
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/toolbar")),_props=_interopRequireDefault(require("../../table/src/props")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getI18n,commands,globalEvents,globalMixins,renderEmptyElement}=_ui.VxeUI,methods={},propKeys=Object.keys(_props.default),defaultLayouts=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]];function renderDefaultForm(e,r){var o=_ui.VxeUI.getComponent("VxeForm");let s=r.$scopedSlots;var{proxyConfig:i,formConfig:t}=r,{proxyOpts:a,formData:n,formOpts:l}=r;if((0,_utils.isEnableConf)(t)&&l.items&&l.items.length){let t={};if(!l.inited){l.inited=!0;let t=a.beforeItem;a&&t&&l.items.forEach(e=>{t.call(r,{$grid:r,item:e})})}return l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||s[e]&&(t[e]=s[e])})}),[o?e(o,{props:Object.assign({},l,{data:i&&a.form?n:l.data}),on:{submit:r.submitEvent,reset:r.resetEvent,collapse:r.collapseEvent,"submit-invalid":r.submitInvalidEvent},scopedSlots:t}):renderEmptyElement(r)]}return[]}function getFuncSlot(e,t,r){e=e.$scopedSlots,t=t[r];if(t){if(!_xeUtils.default.isString(t))return t;if(e[t])return e[t];"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notSlot",[t])}return null}function getToolbarSlots(e){var{$scopedSlots:t,toolbarOpts:r}=e,r=r.slots,o={};return"development"===process.env.NODE_ENV&&(!t.buttons||r&&"buttons"===r.buttons||(0,_log.warnLog)("vxe.error.reqProp",["toolbar-config.slots.buttons"]),!t.tools||r&&"tools"===r.tools||(0,_log.warnLog)("vxe.error.reqProp",["toolbar-config.slots.tools"])),r&&(t=getFuncSlot(e,r,"buttons"),e=getFuncSlot(e,r,"tools"),t&&(o.buttons=t),e)&&(o.tools=e),o}function getPagerSlots(e){var t,r=e.pagerOpts,r=r.slots,o={};return r&&(t=getFuncSlot(e,r,"left"),e=getFuncSlot(e,r,"right"),t&&(o.left=t),e)&&(o.right=e),o}function getTableOns(r){var{$listeners:e,proxyConfig:t,proxyOpts:o}=r;let s={};return _xeUtils.default.each(e,(e,t)=>{s[t]=(...e)=>{r.$emit(t,...e)}}),t&&(o.sort&&(s["sort-change"]=r.sortChangeEvent),o.filter)&&(s["filter-change"]=r.filterChangeEvent),s}function renderForm(e,t){var{_e:r,$scopedSlots:o,formConfig:s}=t,o=o.form;return!o&&!(0,_utils.isEnableConf)(s)?r():e("div",{key:"form",ref:"refFormWrapper",class:"vxe-grid--form-wrapper"},o?o.call(t,{$grid:t},e):renderDefaultForm(e,t))}function renderToolbar(e,t){var{_e:r,$scopedSlots:o,toolbarConfig:s,toolbar:i}=t,o=o.toolbar;return!(o||(0,_utils.isEnableConf)(s)||i)?r():e("div",{key:"toolbar",ref:"refToolbarWrapper",class:"vxe-grid--toolbar-wrapper"},o?o.call(t,{$grid:t},e):[e(_toolbar.default,{props:t.toolbarOpts,ref:"xToolbar",scopedSlots:getToolbarSlots(t)})])}function renderTop(e,t){var{_e:r,$scopedSlots:o}=t,o=o.top;return o?e("div",{key:"top",ref:"refTopWrapper",class:"vxe-grid--top-wrapper"},o.call(t,{$grid:t},e)):r()}function renderTableLeft(e,t){var{_e:r,$scopedSlots:o}=t,o=o.left;return o?e("div",{class:"vxe-grid--left-wrapper"},o({$grid:t})):r()}function renderTableRight(e,t){var{_e:r,$scopedSlots:o}=t,o=o.right;return o?e("div",{class:"vxe-grid--right-wrapper"},o({$grid:t})):r()}function renderTable(e,t){var{$scopedSlots:r,tableProps:o}=t;return e("div",{class:"vxe-grid--table-wrapper"},[e("vxe-table",{key:"table",props:o,on:getTableOns(t),scopedSlots:r,ref:"xTable"})])}function renderBottom(e,t){var{_e:r,$scopedSlots:o}=t,o=o.bottom;return o?e("div",{key:"bottom",ref:"refBottomWrapper",class:"vxe-grid--bottom-wrapper"},o.call(t,{$grid:t},e)):r()}function renderPager(e,t){var r=_ui.VxeUI.getComponent("VxePager"),{pagerConfig:o,proxyConfig:s}=t,{$scopedSlots:i,tablePage:a}=t,i=i.pager;return!i&&!(0,_utils.isEnableConf)(o)?renderEmptyElement(t):e("div",{key:"pager",ref:"refPagerWrapper",class:"vxe-grid--pager-wrapper"},i?i.call(t,{$grid:t},e):[r?e(r,{props:Object.assign(Object.assign({},t.pagerOpts),s?a:{}),on:{"page-change":t.pageChangeEvent},scopedSlots:getPagerSlots(t)}):renderEmptyElement(t)])}function renderChildLayout(t,r,e){let o=[];return e.forEach(e=>{switch(e){case"Form":o.push(renderForm(t,r));break;case"Toolbar":o.push(renderToolbar(t,r));break;case"Top":o.push(renderTop(t,r));break;case"Table":o.push(t("div",{key:"table",class:"vxe-grid--table-container"},[renderTableLeft(t,r),renderTable(t,r),renderTableRight(t,r)]));break;case"Bottom":o.push(renderBottom(t,r));break;case"Pager":o.push(renderPager(t,r));break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),o}function renderLayout(e,t){var r=t.$scopedSlots,{headKeys:o,bodyKeys:s,footKeys:i}=t.computeCurrLayoutConf,a=r.asideLeft||r["aside-left"],r=r.asideRight||r["aside-right"];return[e("div",{class:"vxe-grid--layout-header-wrapper"},renderChildLayout(e,t,o)),e("div",{class:"vxe-grid--layout-body-wrapper"},[a?e("div",{class:"vxe-grid--layout-aside-left-wrapper"},a({})):renderEmptyElement(t),e("div",{class:"vxe-grid--layout-body-content-wrapper"},renderChildLayout(e,t,s)),r?e("div",{class:"vxe-grid--layout-aside-right-wrapper"},r({})):renderEmptyElement(t)]),e("div",{class:"vxe-grid--layout-footer-wrapper"},renderChildLayout(e,t,i))]}Object.keys(_table.default.methods).forEach(t=>{methods[t]=function(...e){return this.$refs.xTable&&this.$refs.xTable[t](...e)}});var _default=exports.default={name:"VxeGrid",mixins:[globalMixins.sizeMixin],props:Object.assign(Object.assign({},_props.default),{layouts:Array,columns:Array,pagerConfig:[Boolean,Object],proxyConfig:Object,toolbar:[Boolean,Object],toolbarConfig:[Boolean,Object],formConfig:[Boolean,Object],zoomConfig:Object,size:{type:String,default:()=>getConfig().grid.size||getConfig().size}}),provide(){return{$xeGrid:this,$xegrid:this}},data(){var e;return{tableLoading:!1,isZMax:!1,tableData:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(e=getConfig().pager)?void 0:e.pageSize)||10,currentPage:1}}},computed:{isRespMsg(){var e=this.proxyOpts;return _xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg},isActiveMsg(){return this.proxyOpts.showActiveMsg},proxyOpts(){return this.computeProxyOpts},computeProxyOpts(){return _xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),this.proxyConfig)},pagerOpts(){return this.computePagerOpts},computePagerOpts(){return Object.assign({},getConfig().grid.pagerConfig,this.pagerConfig)},formOpts(){return this.computeFormOpts},computeFormOpts(){return Object.assign({},getConfig().grid.formConfig,this.formConfig)},toolbarOpts(){return this.computeToolbarOpts},computeToolbarOpts(){return Object.assign({},getConfig().grid.toolbarConfig,this.toolbarConfig||this.toolbar)},zoomOpts(){return this.computeZoomOpts},computeZoomOpts(){return Object.assign({},getConfig().grid.zoomConfig,this.zoomConfig)},computeStyles(){var{height:e,maxHeight:t}=this,{isZMax:r,tZindex:o}=this,s={};return r?s.zIndex=o:(e&&(s.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(s.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),s},tableExtendProps(){let t={};return propKeys.forEach(e=>{t[e]=this[e]}),t},computeTableProps(){var{isZMax:e,seqConfig:t,pagerConfig:r,loading:o,editConfig:s,proxyConfig:i,proxyOpts:a,tableExtendProps:n,tableLoading:l,tablePage:g}=this,d=Object.assign({},n);return e&&(n.maxHeight?d.maxHeight="100%":d.height="100%"),i&&(d.loading=o||l,a.seq)&&(0,_utils.isEnableConf)(r)&&(d.seqConfig=Object.assign({},t,{startIndex:(g.currentPage-1)*g.pageSize})),s&&(d.editConfig=Object.assign({},s)),d},tableProps(){return this.computeTableProps},computeCurrLayoutConf(){var e=this.layouts;let t=[],r=[],o=[],s=[];return(t=e&&e.length?e:getConfig().grid.layouts||defaultLayouts).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],o=t[1]||[],s=t[2]||[]):o=t),{headKeys:r,bodyKeys:o,footKeys:s}},computePageConfFlag(){var e=this.computePagerOpts;return""+e.currentPage+e.pageSize}},watch:{columns(e){this.$nextTick(()=>this.loadColumn(e))},toolbar(e){e&&this.initToolbar()},toolbarConfig(e){e&&this.initToolbar()},proxyConfig(){this.initProxy()},computePageConfFlag(){this.initPages()}},created(){let r=this;if("development"===process.env.NODE_ENV&&(this.toolbar&&(0,_log.warnLog)("vxe.error.delProp",["grid.toolbar","grid.toolbar-config"]),this.toolbarConfig)&&!_xeUtils.default.isObject(this.toolbarConfig)&&(0,_log.warnLog)("vxe.error.errProp",["grid.toolbar-config="+this.toolbarConfig,"grid.toolbar-config={}"]),"development"===process.env.NODE_ENV){let e=_ui.VxeUI.getComponent("VxeForm"),t=_ui.VxeUI.getComponent("VxePager");this.$nextTick(()=>{r.formConfig&&!e&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),r.pagerConfig&&!t&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"])})}this.initPages(),globalEvents.on(this,"keydown",this.handleGlobalKeydownEvent)},mounted(){this.columns&&this.columns.length&&this.loadColumn(this.columns),this.initToolbar(),this.initProxy()},destroyed(){globalEvents.off(this,"keydown")},render(e){var t=this,r=t.computeSize;return e("div",{ref:"refElem",class:["vxe-grid",{["size--"+r]:r,"is--animat":!!this.animat,"is--round":this.round,"is--maximize":t.isZMax,"is--loading":t.loading||t.tableLoading}],style:t.computeStyles},renderLayout(e,t))},methods:Object.assign(Object.assign(Object.assign({},methods),{callSlot(e,t,r,o){if(e){var s=this.$scopedSlots;if(_xeUtils.default.isString(e)&&(e=s[e]||null),_xeUtils.default.isFunction(e))return(0,_vn.getSlotVNs)(e.call(this,t,r,o))}return[]},getExcludeHeight(){var e=this,t=e.isZMax,r=e.$refs.refElem,o=e.$refs.refFormWrapper,s=e.$refs.refToolbarWrapper,i=e.$refs.refTopWrapper,a=e.$refs.refBottomWrapper,e=e.$refs.refPagerWrapper;return(t?0:(0,_dom.getPaddingTopBottomSize)(r.parentNode))+(0,_dom.getPaddingTopBottomSize)(r)+(0,_dom.getOffsetHeight)(o)+(0,_dom.getOffsetHeight)(s)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(e)},getParentHeight(){var e=this.$refs.refElem;return e?(this.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-this.getExcludeHeight():0},initToolbar(){this.$nextTick(()=>{var{xTable:e,xToolbar:t}=this.$refs;e&&t&&e.connect(t)})},initPages(){var{tablePage:e,pagerConfig:t,pagerOpts:r}=this,{currentPage:r,pageSize:o}=r;t&&(r&&(e.currentPage=r),o)&&(e.pageSize=o)},initProxy(){var{proxyInited:e,proxyConfig:t,proxyOpts:r,formConfig:o,formOpts:i}=this;if(t){if((0,_utils.isEnableConf)(o)&&r.form&&i.items){let s={};i.items.forEach(t=>{var{field:r,itemRender:o}=t;if(r){let e=null;o&&(o=o.defaultValue,_xeUtils.default.isFunction(o)?e=o({item:t}):_xeUtils.default.isUndefined(o)||(e=o)),s[r]=e}}),this.formData=s}e||!1===r.autoLoad||(this.proxyInited=!0,this.$nextTick().then(()=>this.commitProxy("_init")).then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{isInited:!0,$grid:this,$event:new Event("init")}))}))}},handleGlobalKeydownEvent(e){27===e.keyCode&&this.isZMax&&!1!==this.zoomOpts.escRestore&&this.triggerZoomEvent(e)},commitProxy(t,...c){let{$refs:e,toolbar:r,toolbarConfig:o,toolbarOpts:s,proxyOpts:i,tablePage:n,pagerConfig:l,editRules:u,isRespMsg:p,isActiveMsg:h,validConfig:m,pagerOpts:g}=this,{beforeQuery:d,afterQuery:f,beforeDelete:b,afterDelete:x,beforeSave:v,afterSave:_,ajax:y={}}=i,O=i.response||i.props||{},C=e.xTable;var a,$=this.getFormData();let E,P;_xeUtils.default.isString(t)?(a=o||r?_xeUtils.default.findTree(s.buttons,e=>e.code===t,{children:"dropdowns"}):null,P=t,E=a?a.item:null):(E=t,P=E.code);var j=E?E.params:null;switch(P){case"insert":return this.insert();case"insert_edit":return this.insert().then(({row:e})=>this.setEditRow(e));case"insert_actived":return this.insert().then(({row:e})=>this.setEditRow(e));case"mark_cancel":this.triggerPendingEvent(P);break;case"remove":return this.handleDeleteRow(P,"vxe.grid.removeSelectRecord",()=>this.removeCheckboxRow());case"import":this.importData(j);break;case"open_import":this.openImport(j);break;case"export":this.exportData(j);break;case"open_export":this.openExport(j);break;case"reset_custom":this.resetCustom(!0);break;case"_init":case"reload":case"query":{var S=y.query;let a=y.querySuccess,o=y.queryError;if(S){var T="_init"===P,U="reload"===P;let t=[],r=[],e={};if(l&&((T||U)&&(n.currentPage=1),(0,_utils.isEnableConf)(l))&&(e=Object.assign({},n)),T){let e=null;C&&(R=C.sortOpts,e=R.defaultSort),e&&(_xeUtils.default.isArray(e)||(e=[e]),t=e.map(e=>({field:e.field,property:e.field,order:e.order}))),C&&(r=C.getCheckedFilters())}else C&&(U?C.clearAll():(t=C.getSortColumns(),r=C.getCheckedFilters()));let s={code:P,button:E,isInited:T,isReload:U,$grid:this,page:e,sort:t.length?t[0]:{},sorts:t,filters:r,form:$,options:S},i=(this.sortData=t,this.filterData=r,this.tableLoading=!0,[s].concat(c));return Promise.resolve((d||S)(...i)).then(e=>{let t=[];var r,o;return this.tableLoading=!1,e&&(l&&(0,_utils.isEnableConf)(g)?(o=O.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:this}):_xeUtils.default.get(e,o||"page.total"))||0,n.total=_xeUtils.default.toNumber(o),r=O.result,t=(_xeUtils.default.isFunction(r)?r({data:e,$grid:this}):_xeUtils.default.get(e,r||"result"))||[],r=Math.max(Math.ceil(o/n.pageSize),1),n.currentPage>r&&(n.currentPage=r)):(o=O.list,t=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:this}):_xeUtils.default.get(e,o):e)||[])),C?C.loadData(t):C.$nextTick(()=>{C&&C.loadData(t)}),f&&f(...i),a&&a(Object.assign(Object.assign({},s),{response:e})),{status:!0}}).catch(e=>(this.tableLoading=!1,o&&o(Object.assign(Object.assign({},s),{response:e})),{status:!1}))}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{let s=y.delete,i=y.deleteSuccess,a=y.deleteError;if(s){let e=C.getCheckboxRecords(),t=e.filter(e=>!C.isInsertByRow(e));var R={removeRecords:t};let r={$grid:this,code:P,button:E,body:R,form:$,options:s},o=[r].concat(c);if(e.length)return this.handleDeleteRow(P,"vxe.grid.deleteSelectRecord",()=>t.length?(this.tableLoading=!0,Promise.resolve((b||s)(...o)).then(e=>(this.tableLoading=!1,C.setPendingRow(t,!1),p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:this.getRespMsg(e,"vxe.grid.delSuccess"),status:"success"})),x?x(...o):this.commitProxy("query"),i&&i(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(this.tableLoading=!1,p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:this.getRespMsg(e,"vxe.grid.operError"),status:"error"})),a&&a(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):C.remove(e));h&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"}))}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let l=y.save,g=y.saveSuccess,d=y.saveError;if(l){let t=this.getRecordset(),{insertRecords:r,removeRecords:o,updateRecords:s,pendingRecords:i}=t,a={$grid:this,code:P,button:E,body:t,form:$,options:l},n=[a].concat(c),e=(r.length&&(t.pendingRecords=i.filter(e=>-1===r.indexOf(e))),i.length&&(t.insertRecords=r.filter(e=>-1===i.indexOf(e))),Promise.resolve());return(e=u?this[m&&"full"===m.msgMode?"fullValidate":"validate"](t.insertRecords.concat(s)):e).then(e=>{if(!e)return t.insertRecords.length||o.length||s.length||t.pendingRecords.length?(this.tableLoading=!0,Promise.resolve((v||l)(...n)).then(e=>(this.tableLoading=!1,C.clearPendingRow(),p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:this.getRespMsg(e,"vxe.grid.saveSuccess"),status:"success"})),_?_(...n):this.commitProxy("query"),g&&g(Object.assign(Object.assign({},a),{response:e})),{status:!0})).catch(e=>(this.tableLoading=!1,p&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:this.getRespMsg(e,"vxe.grid.operError"),status:"error"})),d&&d(Object.assign(Object.assign({},a),{response:e})),{status:!1}))):void(h&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:P,content:getI18n("vxe.grid.dataUnchanged"),status:"info"})))})}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:T=commands.get(P);T&&(T.commandMethod?T.commandMethod({code:P,button:E,$grid:this,$table:C},...c):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notCommands",[P]))}return this.$nextTick()},getRespMsg(e,t){var r=this.proxyOpts,r=r.response||r.props||{};let o;return(o=e&&r.message?_xeUtils.default.get(e,r.message):o)||getI18n(t)},handleDeleteRow(e,t,r){var o=this.getCheckboxRecords();if(this.isActiveMsg){if(o.length)return _ui.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return r()});"development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else o.length&&r();return Promise.resolve()},getFormData(){var{proxyConfig:e,proxyOpts:t,formOpts:r,formData:o}=this;return e&&(0,_utils.isEnableConf)(t)&&t.form?o:r.data},getFormItems(e){var{formConfig:t,formOpts:r}=this;let o=[];return _xeUtils.default.eachTree((0,_utils.isEnableConf)(t)&&r.items?r.items:[],e=>{o.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?o:o[e]},triggerToolbarCommitEvent(e,t){let r=e.code;return this.commitProxy(e,t).then(e=>{r&&e&&e.status&&["query","reload","delete","save"].includes(r)&&this.$emit("delete"===r||"save"===r?"proxy-"+r:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===r,$grid:this,$event:t}))})},triggerToolbarBtnEvent(e,t){this.triggerToolbarCommitEvent(e,t),this.$emit("toolbar-button-click",{code:e.code,button:e,$grid:this,$event:t})},triggerToolbarTolEvent(e,t){this.triggerToolbarCommitEvent(e,t),this.$emit("toolbar-tool-click",{code:e.code,tool:e,$grid:this,$event:t})},triggerPendingEvent(e){var t=this.isActiveMsg,r=this.getCheckboxRecords();r.length?(this.togglePendingRow(r),this.clearCheckboxRow()):t&&("development"!==process.env.NODE_ENV||_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({id:e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"}))},pageChangeEvent(t){var{proxyConfig:e,tablePage:r}=this,{currentPage:o,pageSize:s}=t;r.currentPage=o,r.pageSize=s,this.$emit("page-change",Object.assign({$grid:this},t)),e&&this.commitProxy("query").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{$grid:this,$event:t.$event}))})},sortChangeEvent(t){var{$table:e,column:r,sortList:o}=t;(_xeUtils.default.isBoolean(r.remoteSort)?r.remoteSort:e.sortOpts.remote)&&(this.sortData=o,this.proxyConfig)&&(this.tablePage.currentPage=1,this.commitProxy("query").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{$grid:this,$event:t.$event}))})),this.$emit("sort-change",Object.assign({$grid:this},t))},filterChangeEvent(t){var{$table:e,filterList:r}=t;e.filterOpts.remote&&(this.filterData=r,this.proxyConfig)&&(this.tablePage.currentPage=1,this.commitProxy("query").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{$grid:this,$event:t.$event}))})),this.$emit("filter-change",Object.assign({$grid:this},t))},submitEvent(t){var e=this.proxyConfig;e&&this.commitProxy("reload").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{isReload:!0,$grid:this,$event:t.$event}))}),this.$emit("form-submit",Object.assign({$grid:this},t))},resetEvent(t){var e=this.proxyConfig,r=this.$refs.xTable;e&&(r.clearScroll(),this.commitProxy("reload").then(e=>{this.$emit("proxy-query",Object.assign(Object.assign({},e),{isReload:!0,$grid:this,$event:t.$event}))})),this.$emit("form-reset",Object.assign({$grid:this},t))},submitInvalidEvent(e){this.$emit("form-submit-invalid",Object.assign({$grid:this},e))},collapseEvent(e){this.$nextTick(()=>this.recalculate(!0)),this.$emit("form-toggle-collapse",Object.assign({$grid:this},e)),this.$emit("form-collapse",Object.assign({$grid:this},e))},triggerZoomEvent(e){this.zoom(),this.$emit("zoom",{$grid:this,type:this.isZMax?"max":"revert",$event:e})},zoom(){return this[this.isZMax?"revert":"maximize"]()},isMaximized(){return this.isZMax},maximize(){return this.handleZoom(!0)},revert(){return this.handleZoom()},handleZoom(e){var t=this.isZMax;return(e?!t:t)&&(this.isZMax=!t,this.tZindex<(0,_utils.getLastZIndex)())&&(this.tZindex=(0,_utils.nextZIndex)()),this.$nextTick().then(()=>this.recalculate(!0)).then(()=>(setTimeout(()=>this.recalculate(!0),15),this.isZMax))},getProxyInfo(){var{$refs:e,sortData:t,proxyConfig:r}=this,e=e.xTable;return r?{data:e?e.getFullData():[],filter:this.filterData,form:this.getFormData(),sort:t.length?t[0]:{},sorts:t,pager:this.tablePage,pendingRecords:e?e.getPendingRecords():[]}:null}}),"development"===process.env.NODE_ENV?{loadColumn(e){let t=this.$scopedSlots;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||t[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),this.$refs.xTable.loadColumn(e)},reloadColumn(e){return this.clearAll(),this.loadColumn(e)}}:null)};
|