vxe-table 3.19.39 → 3.20.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/index.css +1 -1
- package/es/index.esm.js +2 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/custom/mixin.js +6 -4
- package/es/table/module/custom/panel.js +806 -799
- package/es/table/module/edit/mixin.js +43 -31
- package/es/table/module/export/export-panel.js +511 -458
- package/es/table/module/export/import-panel.js +224 -192
- package/es/table/module/keyboard/mixin.js +2 -2
- package/es/table/module/menu/panel.js +165 -161
- package/es/table/module/validator/mixin.js +255 -236
- package/es/table/src/body.js +2 -1
- package/es/table/src/cell.js +2 -2
- package/es/table/src/methods.js +33 -43
- package/es/table/src/table.js +13 -249
- package/es/table/src/util.js +242 -0
- package/es/table/style.css +23 -50
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +2 -2
- package/es/ui/src/dom.js +22 -0
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +23 -50
- package/es/vxe-table/style.min.css +1 -1
- package/lib/index.common.js +2 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +3640 -4790
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/custom/mixin.js +6 -4
- package/lib/table/module/custom/mixin.min.js +1 -1
- package/lib/table/module/custom/panel.js +693 -685
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/mixin.js +47 -31
- package/lib/table/module/edit/mixin.min.js +1 -1
- package/lib/table/module/export/export-panel.js +450 -384
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/import-panel.js +200 -159
- package/lib/table/module/export/import-panel.min.js +1 -1
- package/lib/table/module/keyboard/mixin.js +2 -2
- package/lib/table/module/keyboard/mixin.min.js +1 -1
- package/lib/table/module/menu/panel.js +119 -114
- package/lib/table/module/menu/panel.min.js +1 -1
- package/lib/table/module/validator/mixin.js +271 -259
- package/lib/table/module/validator/mixin.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/cell.js +2 -2
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/methods.js +33 -45
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +12 -248
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +243 -0
- package/lib/table/src/util.min.js +1 -1
- package/lib/table/style/style.css +23 -50
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +2 -2
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +22 -0
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +2 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/vxe-colgroup/index.js +2 -1
- package/lib/vxe-colgroup/index.min.js +1 -1
- package/lib/vxe-column/index.js +2 -1
- package/lib/vxe-column/index.min.js +1 -1
- package/lib/vxe-grid/index.js +2 -1
- package/lib/vxe-grid/index.min.js +1 -1
- package/lib/vxe-table/index.js +2 -1
- package/lib/vxe-table/index.min.js +1 -1
- package/lib/vxe-table/style/style.css +23 -50
- package/lib/vxe-table/style/style.min.css +1 -1
- package/lib/vxe-toolbar/index.js +2 -1
- package/lib/vxe-toolbar/index.min.js +1 -1
- package/lib/vxe-ui/index.js +2 -1
- package/lib/vxe-ui/index.min.js +1 -1
- package/lib/vxe-v-x-e-table/index.js +2 -1
- package/lib/vxe-v-x-e-table/index.min.js +1 -1
- package/package.json +1 -1
- package/packages/table/module/custom/mixin.ts +7 -4
- package/packages/table/module/custom/panel.ts +846 -839
- package/packages/table/module/edit/mixin.ts +55 -35
- package/packages/table/module/export/export-panel.ts +545 -469
- package/packages/table/module/export/import-panel.ts +245 -202
- package/packages/table/module/filter/panel.ts +4 -18
- package/packages/table/module/keyboard/mixin.ts +2 -2
- package/packages/table/module/menu/panel.ts +171 -163
- package/packages/table/module/validator/mixin.ts +279 -240
- package/packages/table/src/body.ts +2 -1
- package/packages/table/src/cell.ts +2 -2
- package/packages/table/src/methods.ts +43 -45
- package/packages/table/src/table.ts +14 -260
- package/packages/table/src/util.ts +254 -0
- package/packages/ui/index.ts +1 -1
- package/packages/ui/src/dom.ts +22 -0
- package/styles/components/table.scss +5 -2
- package/styles/theme/base.scss +2 -1
- /package/es/{iconfont.1767145426781.ttf → iconfont.1767492234857.ttf} +0 -0
- /package/es/{iconfont.1767145426781.woff → iconfont.1767492234857.woff} +0 -0
- /package/es/{iconfont.1767145426781.woff2 → iconfont.1767492234857.woff2} +0 -0
- /package/lib/{iconfont.1767145426781.ttf → iconfont.1767492234857.ttf} +0 -0
- /package/lib/{iconfont.1767145426781.woff → iconfont.1767492234857.woff} +0 -0
- /package/lib/{iconfont.1767145426781.woff2 → iconfont.1767492234857.woff2} +0 -0
|
@@ -589,25 +589,25 @@ export default {
|
|
|
589
589
|
// 从数据源中移除
|
|
590
590
|
if (tableFullData === rows) {
|
|
591
591
|
rows = delList = tableFullData.slice(0);
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
592
|
+
internalData.tableFullData = [];
|
|
593
|
+
internalData.afterFullData = [];
|
|
594
|
+
$xeTable.clearMergeCells();
|
|
595
595
|
}
|
|
596
596
|
else {
|
|
597
597
|
// 如果为虚拟树
|
|
598
598
|
if (treeConfig && transform) {
|
|
599
599
|
rows.forEach((row) => {
|
|
600
|
-
const rowid = getRowid(
|
|
601
|
-
const matchMapObj = XEUtils.findTree(tableFullTreeData, item => rowid === getRowid(
|
|
600
|
+
const rowid = getRowid($xeTable, row);
|
|
601
|
+
const matchMapObj = XEUtils.findTree(tableFullTreeData, item => rowid === getRowid($xeTable, item), { children: mapChildrenField });
|
|
602
602
|
if (matchMapObj) {
|
|
603
603
|
const rItems = matchMapObj.items.splice(matchMapObj.index, 1);
|
|
604
604
|
delList.push(rItems[0]);
|
|
605
605
|
}
|
|
606
|
-
const matchObj = XEUtils.findTree(tableFullTreeData, item => rowid === getRowid(
|
|
606
|
+
const matchObj = XEUtils.findTree(tableFullTreeData, item => rowid === getRowid($xeTable, item), { children: childrenField });
|
|
607
607
|
if (matchObj) {
|
|
608
608
|
matchObj.items.splice(matchObj.index, 1);
|
|
609
609
|
}
|
|
610
|
-
const afIndex =
|
|
610
|
+
const afIndex = $xeTable.findRowIndexOf(afterFullData, row);
|
|
611
611
|
if (afIndex > -1) {
|
|
612
612
|
afterFullData.splice(afIndex, 1);
|
|
613
613
|
}
|
|
@@ -619,12 +619,12 @@ export default {
|
|
|
619
619
|
}
|
|
620
620
|
else {
|
|
621
621
|
rows.forEach((row) => {
|
|
622
|
-
const tfIndex =
|
|
622
|
+
const tfIndex = $xeTable.findRowIndexOf(tableFullData, row);
|
|
623
623
|
if (tfIndex > -1) {
|
|
624
624
|
const rItems = tableFullData.splice(tfIndex, 1);
|
|
625
625
|
delList.push(rItems[0]);
|
|
626
626
|
}
|
|
627
|
-
const afIndex =
|
|
627
|
+
const afIndex = $xeTable.findRowIndexOf(afterFullData, row);
|
|
628
628
|
if (afIndex > -1) {
|
|
629
629
|
// 刷新单元格合并
|
|
630
630
|
mergeBodyList.forEach((mergeItem) => {
|
|
@@ -669,9 +669,9 @@ export default {
|
|
|
669
669
|
if (reactData.scrollYLoad) {
|
|
670
670
|
$xeTable.updateScrollYSpace();
|
|
671
671
|
}
|
|
672
|
-
return
|
|
673
|
-
|
|
674
|
-
return
|
|
672
|
+
return $xeTable.$nextTick().then(() => {
|
|
673
|
+
$xeTable.updateCellAreas();
|
|
674
|
+
return $xeTable.recalculate(true);
|
|
675
675
|
}).then(() => {
|
|
676
676
|
return { row: delList.length ? delList[delList.length - 1] : null, rows: delList };
|
|
677
677
|
});
|
|
@@ -680,8 +680,9 @@ export default {
|
|
|
680
680
|
* 删除复选框选中的数据
|
|
681
681
|
*/
|
|
682
682
|
_removeCheckboxRow() {
|
|
683
|
-
|
|
684
|
-
|
|
683
|
+
const $xeTable = this;
|
|
684
|
+
return $xeTable.remove($xeTable.getCheckboxRecords()).then((params) => {
|
|
685
|
+
$xeTable.clearCheckboxRow();
|
|
685
686
|
return params;
|
|
686
687
|
});
|
|
687
688
|
},
|
|
@@ -689,9 +690,10 @@ export default {
|
|
|
689
690
|
* 删除单选框选中的数据
|
|
690
691
|
*/
|
|
691
692
|
_removeRadioRow() {
|
|
692
|
-
const
|
|
693
|
-
|
|
694
|
-
|
|
693
|
+
const $xeTable = this;
|
|
694
|
+
const radioRecord = $xeTable.getRadioRecord();
|
|
695
|
+
return $xeTable.remove(radioRecord || []).then((params) => {
|
|
696
|
+
$xeTable.clearRadioRow();
|
|
695
697
|
return params;
|
|
696
698
|
});
|
|
697
699
|
},
|
|
@@ -699,9 +701,10 @@ export default {
|
|
|
699
701
|
* 删除当前行选中的数据
|
|
700
702
|
*/
|
|
701
703
|
_removeCurrentRow() {
|
|
702
|
-
const
|
|
703
|
-
|
|
704
|
-
|
|
704
|
+
const $xeTable = this;
|
|
705
|
+
const currentRecord = $xeTable.getCurrentRecord();
|
|
706
|
+
return $xeTable.remove(currentRecord || []).then((params) => {
|
|
707
|
+
$xeTable.clearCurrentRow();
|
|
705
708
|
return params;
|
|
706
709
|
});
|
|
707
710
|
},
|
|
@@ -709,15 +712,16 @@ export default {
|
|
|
709
712
|
* 获取表格数据集,包含新增、删除、修改
|
|
710
713
|
*/
|
|
711
714
|
_getRecordset() {
|
|
712
|
-
const
|
|
713
|
-
const
|
|
715
|
+
const $xeTable = this;
|
|
716
|
+
const removeRecords = $xeTable.getRemoveRecords();
|
|
717
|
+
const pendingRecords = $xeTable.getPendingRecords();
|
|
714
718
|
const delRecords = removeRecords.concat(pendingRecords);
|
|
715
719
|
// 如果已经被删除,则无需放到更新数组
|
|
716
|
-
const updateRecords =
|
|
717
|
-
return !delRecords.some((item) =>
|
|
720
|
+
const updateRecords = $xeTable.getUpdateRecords().filter((row) => {
|
|
721
|
+
return !delRecords.some((item) => $xeTable.eqRow(item, row));
|
|
718
722
|
});
|
|
719
723
|
return {
|
|
720
|
-
insertRecords:
|
|
724
|
+
insertRecords: $xeTable.getInsertRecords(),
|
|
721
725
|
removeRecords,
|
|
722
726
|
updateRecords,
|
|
723
727
|
pendingRecords
|
|
@@ -783,7 +787,8 @@ export default {
|
|
|
783
787
|
* @deprecated
|
|
784
788
|
*/
|
|
785
789
|
handleActived(params, evnt) {
|
|
786
|
-
|
|
790
|
+
const $xeTable = this;
|
|
791
|
+
return $xeTable.handleEdit(params, evnt);
|
|
787
792
|
},
|
|
788
793
|
_getColumnModel(row, column) {
|
|
789
794
|
getEditColumnModel(row, column);
|
|
@@ -796,9 +801,10 @@ export default {
|
|
|
796
801
|
syncActivedCell($xeTable);
|
|
797
802
|
},
|
|
798
803
|
_clearActived(row) {
|
|
804
|
+
const $xeTable = this;
|
|
799
805
|
warnLog('vxe.error.delFunc', ['clearActived', 'clearEdit']);
|
|
800
806
|
// 即将废弃
|
|
801
|
-
return
|
|
807
|
+
return $xeTable.clearEdit(row);
|
|
802
808
|
},
|
|
803
809
|
/**
|
|
804
810
|
* 清除激活的编辑
|
|
@@ -944,7 +950,9 @@ export default {
|
|
|
944
950
|
*/
|
|
945
951
|
_setEditRow(row, fieldOrColumn) {
|
|
946
952
|
const $xeTable = this;
|
|
947
|
-
|
|
953
|
+
const internalData = $xeTable;
|
|
954
|
+
const { visibleColumn } = internalData;
|
|
955
|
+
let column = XEUtils.find(visibleColumn, column => isEnableConf(column.editRender));
|
|
948
956
|
let isPos = false;
|
|
949
957
|
if (fieldOrColumn) {
|
|
950
958
|
isPos = true;
|
|
@@ -955,9 +963,10 @@ export default {
|
|
|
955
963
|
return handleEditCell($xeTable, row, column, isPos);
|
|
956
964
|
},
|
|
957
965
|
_setActiveCell(row, fieldOrColumn) {
|
|
966
|
+
const $xeTable = this;
|
|
958
967
|
warnLog('vxe.error.delFunc', ['setActiveCell', 'setEditCell']);
|
|
959
968
|
// 即将废弃
|
|
960
|
-
return
|
|
969
|
+
return $xeTable.setEditCell(row, fieldOrColumn);
|
|
961
970
|
},
|
|
962
971
|
/**
|
|
963
972
|
* 激活单元格编辑
|
|
@@ -1018,7 +1027,7 @@ export default {
|
|
|
1018
1027
|
selected.row = row;
|
|
1019
1028
|
selected.column = column;
|
|
1020
1029
|
if (isMouseSelected) {
|
|
1021
|
-
|
|
1030
|
+
$xeTable.addCellSelectedClass();
|
|
1022
1031
|
}
|
|
1023
1032
|
$xeTable.focus();
|
|
1024
1033
|
if (evnt) {
|
|
@@ -1060,7 +1069,10 @@ export default {
|
|
|
1060
1069
|
return $xeTable.$nextTick();
|
|
1061
1070
|
},
|
|
1062
1071
|
reColTitleSdCls() {
|
|
1063
|
-
const
|
|
1072
|
+
const $xeTable = this;
|
|
1073
|
+
const internalData = $xeTable;
|
|
1074
|
+
const { elemStore } = internalData;
|
|
1075
|
+
const headerElem = elemStore['main-header-list'];
|
|
1064
1076
|
if (headerElem) {
|
|
1065
1077
|
XEUtils.arrayEach(headerElem.querySelectorAll('.col--title-selected'), elem => removeClass(elem, 'col--title-selected'));
|
|
1066
1078
|
}
|