vxe-table 3.15.1 → 3.15.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/filter/mixin.js +29 -10
- package/es/table/module/filter/panel.js +173 -142
- package/es/table/src/body.js +5 -3
- package/es/table/src/footer.js +4 -2
- package/es/table/src/header.js +2 -1
- package/es/table/src/methods.js +125 -101
- package/es/table/src/table.js +3 -0
- package/es/table/style.css +18 -0
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +18 -0
- package/es/vxe-table/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +355 -262
- 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/filter/mixin.js +33 -9
- package/lib/table/module/filter/mixin.min.js +1 -1
- package/lib/table/module/filter/panel.js +153 -122
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/src/body.js +5 -2
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/footer.js +4 -2
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +2 -1
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/methods.js +151 -122
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +3 -0
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +18 -0
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-table/style/style.css +18 -0
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/table/module/filter/mixin.ts +27 -10
- package/packages/table/module/filter/panel.ts +178 -143
- package/packages/table/src/body.ts +5 -3
- package/packages/table/src/footer.ts +4 -2
- package/packages/table/src/header.ts +2 -1
- package/packages/table/src/methods.ts +132 -106
- package/packages/table/src/table.ts +3 -0
- package/styles/components/table-module/filter.scss +16 -0
- package/styles/components/table.scss +6 -1
- /package/es/{iconfont.1744336394111.ttf → iconfont.1744609828798.ttf} +0 -0
- /package/es/{iconfont.1744336394111.woff → iconfont.1744609828798.woff} +0 -0
- /package/es/{iconfont.1744336394111.woff2 → iconfont.1744609828798.woff2} +0 -0
- /package/lib/{iconfont.1744336394111.ttf → iconfont.1744609828798.ttf} +0 -0
- /package/lib/{iconfont.1744336394111.woff → iconfont.1744609828798.woff} +0 -0
- /package/lib/{iconfont.1744336394111.woff2 → iconfont.1744609828798.woff2} +0 -0
package/lib/index.umd.js
CHANGED
|
@@ -2220,7 +2220,7 @@ function getClass(property, params) {
|
|
|
2220
2220
|
;// CONCATENATED MODULE: ./packages/ui/index.ts
|
|
2221
2221
|
|
|
2222
2222
|
|
|
2223
|
-
const version = "3.15.
|
|
2223
|
+
const version = "3.15.3";
|
|
2224
2224
|
core_.VxeUI.version = version;
|
|
2225
2225
|
core_.VxeUI.tableVersion = version;
|
|
2226
2226
|
core_.VxeUI.setConfig({
|
|
@@ -2843,7 +2843,7 @@ function isNodeElement(elem) {
|
|
|
2843
2843
|
const {
|
|
2844
2844
|
log: log_log
|
|
2845
2845
|
} = core_.VxeUI;
|
|
2846
|
-
const log_version = `table v${"3.15.
|
|
2846
|
+
const log_version = `table v${"3.15.3"}`;
|
|
2847
2847
|
const warnLog = log_log.create('warn', log_version);
|
|
2848
2848
|
const errLog = log_log.create('error', log_version);
|
|
2849
2849
|
;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
|
|
@@ -5507,6 +5507,116 @@ const updateScrollYStatus = ($xeTable, fullData) => {
|
|
|
5507
5507
|
reactData.scrollYLoad = scrollYLoad;
|
|
5508
5508
|
return scrollYLoad;
|
|
5509
5509
|
};
|
|
5510
|
+
/**
|
|
5511
|
+
* 展开与收起树节点
|
|
5512
|
+
* @param rows
|
|
5513
|
+
* @param expanded
|
|
5514
|
+
* @returns
|
|
5515
|
+
*/
|
|
5516
|
+
function handleBaseTreeExpand($xeTable, rows, expanded) {
|
|
5517
|
+
const reactData = $xeTable;
|
|
5518
|
+
const internalData = $xeTable;
|
|
5519
|
+
const {
|
|
5520
|
+
treeNodeColumn
|
|
5521
|
+
} = reactData;
|
|
5522
|
+
const {
|
|
5523
|
+
fullAllDataRowIdData,
|
|
5524
|
+
tableFullData,
|
|
5525
|
+
treeExpandedMaps,
|
|
5526
|
+
treeExpandLazyLoadedMaps
|
|
5527
|
+
} = internalData;
|
|
5528
|
+
const treeOpts = $xeTable.computeTreeOpts;
|
|
5529
|
+
const {
|
|
5530
|
+
reserve,
|
|
5531
|
+
lazy,
|
|
5532
|
+
accordion,
|
|
5533
|
+
toggleMethod
|
|
5534
|
+
} = treeOpts;
|
|
5535
|
+
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
5536
|
+
const hasChildField = treeOpts.hasChild || treeOpts.hasChildField;
|
|
5537
|
+
const result = [];
|
|
5538
|
+
const columnIndex = $xeTable.getColumnIndex(treeNodeColumn);
|
|
5539
|
+
const $columnIndex = $xeTable.getVMColumnIndex(treeNodeColumn);
|
|
5540
|
+
const {
|
|
5541
|
+
handleGetRowId
|
|
5542
|
+
} = createHandleGetRowId($xeTable);
|
|
5543
|
+
let validRows = toggleMethod ? rows.filter(row => toggleMethod({
|
|
5544
|
+
$table: $xeTable,
|
|
5545
|
+
expanded,
|
|
5546
|
+
column: treeNodeColumn,
|
|
5547
|
+
columnIndex,
|
|
5548
|
+
$columnIndex,
|
|
5549
|
+
row
|
|
5550
|
+
})) : rows;
|
|
5551
|
+
if (accordion) {
|
|
5552
|
+
validRows = validRows.length ? [validRows[validRows.length - 1]] : [];
|
|
5553
|
+
// 同一级只能展开一个
|
|
5554
|
+
const matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(tableFullData, item => item === validRows[0], {
|
|
5555
|
+
children: childrenField
|
|
5556
|
+
});
|
|
5557
|
+
if (matchObj) {
|
|
5558
|
+
matchObj.items.forEach(item => {
|
|
5559
|
+
const rowid = handleGetRowId(item);
|
|
5560
|
+
if (treeExpandedMaps[rowid]) {
|
|
5561
|
+
delete treeExpandedMaps[rowid];
|
|
5562
|
+
}
|
|
5563
|
+
});
|
|
5564
|
+
}
|
|
5565
|
+
}
|
|
5566
|
+
if (expanded) {
|
|
5567
|
+
validRows.forEach(row => {
|
|
5568
|
+
const rowid = handleGetRowId(row);
|
|
5569
|
+
if (!treeExpandedMaps[rowid]) {
|
|
5570
|
+
const rowRest = fullAllDataRowIdData[rowid];
|
|
5571
|
+
if (rowRest) {
|
|
5572
|
+
const isLoad = lazy && row[hasChildField] && !rowRest.treeLoaded && !treeExpandLazyLoadedMaps[rowid];
|
|
5573
|
+
// 是否使用懒加载
|
|
5574
|
+
if (isLoad) {
|
|
5575
|
+
result.push(handleAsyncTreeExpandChilds($xeTable, row));
|
|
5576
|
+
} else {
|
|
5577
|
+
if (row[childrenField] && row[childrenField].length) {
|
|
5578
|
+
treeExpandedMaps[rowid] = row;
|
|
5579
|
+
}
|
|
5580
|
+
}
|
|
5581
|
+
}
|
|
5582
|
+
}
|
|
5583
|
+
});
|
|
5584
|
+
} else {
|
|
5585
|
+
validRows.forEach(item => {
|
|
5586
|
+
const rowid = handleGetRowId(item);
|
|
5587
|
+
if (treeExpandedMaps[rowid]) {
|
|
5588
|
+
delete treeExpandedMaps[rowid];
|
|
5589
|
+
}
|
|
5590
|
+
});
|
|
5591
|
+
}
|
|
5592
|
+
if (reserve) {
|
|
5593
|
+
validRows.forEach(row => handleTreeExpandReserve($xeTable, row, expanded));
|
|
5594
|
+
}
|
|
5595
|
+
reactData.treeExpandedFlag++;
|
|
5596
|
+
return Promise.all(result).then(() => {
|
|
5597
|
+
return $xeTable.recalculate();
|
|
5598
|
+
});
|
|
5599
|
+
}
|
|
5600
|
+
/**
|
|
5601
|
+
* 虚拟树的展开与收起
|
|
5602
|
+
* @param rows
|
|
5603
|
+
* @param expanded
|
|
5604
|
+
* @returns
|
|
5605
|
+
*/
|
|
5606
|
+
function handleVirtualTreeExpand($xeTable, rows, expanded) {
|
|
5607
|
+
return handleBaseTreeExpand($xeTable, rows, expanded).then(() => {
|
|
5608
|
+
handleVirtualTreeToList($xeTable);
|
|
5609
|
+
$xeTable.handleTableData();
|
|
5610
|
+
updateAfterDataIndex($xeTable);
|
|
5611
|
+
return $xeTable.$nextTick();
|
|
5612
|
+
}).then(() => {
|
|
5613
|
+
return $xeTable.recalculate(true);
|
|
5614
|
+
}).then(() => {
|
|
5615
|
+
setTimeout(() => {
|
|
5616
|
+
$xeTable.updateCellAreas();
|
|
5617
|
+
}, 30);
|
|
5618
|
+
});
|
|
5619
|
+
}
|
|
5510
5620
|
function updateAfterListIndex($xeTable) {
|
|
5511
5621
|
const props = $xeTable;
|
|
5512
5622
|
const internalData = $xeTable;
|
|
@@ -8476,7 +8586,11 @@ const Methods = {
|
|
|
8476
8586
|
handleReserveStatus($xeTable);
|
|
8477
8587
|
$xeTable.checkSelectionStatus();
|
|
8478
8588
|
return new Promise(resolve => {
|
|
8479
|
-
this.$nextTick().then(() => $xeTable
|
|
8589
|
+
this.$nextTick().then(() => handleRecalculateLayout($xeTable, false)).then(() => {
|
|
8590
|
+
calcCellHeight($xeTable);
|
|
8591
|
+
updateRowOffsetTop($xeTable);
|
|
8592
|
+
return handleRecalculateLayout($xeTable, false);
|
|
8593
|
+
}).then(() => {
|
|
8480
8594
|
let targetScrollLeft = lastScrollLeft;
|
|
8481
8595
|
let targetScrollTop = lastScrollTop;
|
|
8482
8596
|
const virtualXOpts = $xeTable.computeVirtualXOpts;
|
|
@@ -8489,8 +8603,7 @@ const Methods = {
|
|
|
8489
8603
|
targetScrollTop = 0;
|
|
8490
8604
|
}
|
|
8491
8605
|
reactData.isRowLoading = false;
|
|
8492
|
-
|
|
8493
|
-
updateRowOffsetTop($xeTable);
|
|
8606
|
+
handleRecalculateLayout($xeTable, false);
|
|
8494
8607
|
// 是否变更虚拟滚动
|
|
8495
8608
|
if (oldScrollYLoad === sYLoad) {
|
|
8496
8609
|
restoreScrollLocation($xeTable, targetScrollLeft, targetScrollTop).then(() => {
|
|
@@ -12645,6 +12758,12 @@ const Methods = {
|
|
|
12645
12758
|
const {
|
|
12646
12759
|
column: newValue
|
|
12647
12760
|
} = params;
|
|
12761
|
+
const {
|
|
12762
|
+
trigger
|
|
12763
|
+
} = currentColumnOpts;
|
|
12764
|
+
if (trigger === 'manual') {
|
|
12765
|
+
return;
|
|
12766
|
+
}
|
|
12648
12767
|
const isChange = oldValue !== newValue;
|
|
12649
12768
|
if (!beforeRowMethod || beforeRowMethod({
|
|
12650
12769
|
column: newValue,
|
|
@@ -12674,6 +12793,12 @@ const Methods = {
|
|
|
12674
12793
|
const {
|
|
12675
12794
|
row: newValue
|
|
12676
12795
|
} = params;
|
|
12796
|
+
const {
|
|
12797
|
+
trigger
|
|
12798
|
+
} = currentRowOpts;
|
|
12799
|
+
if (trigger === 'manual') {
|
|
12800
|
+
return;
|
|
12801
|
+
}
|
|
12677
12802
|
const isChange = oldValue !== newValue;
|
|
12678
12803
|
if (!beforeRowMethod || beforeRowMethod({
|
|
12679
12804
|
row: newValue,
|
|
@@ -14465,8 +14590,8 @@ const Methods = {
|
|
|
14465
14590
|
columnIndex,
|
|
14466
14591
|
$columnIndex,
|
|
14467
14592
|
row,
|
|
14468
|
-
rowIndex:
|
|
14469
|
-
$rowIndex:
|
|
14593
|
+
rowIndex: $xeTable.getRowIndex(row),
|
|
14594
|
+
$rowIndex: $xeTable.getVMRowIndex(row)
|
|
14470
14595
|
})) : rows;
|
|
14471
14596
|
if (expanded) {
|
|
14472
14597
|
validRows.forEach(row => {
|
|
@@ -14691,7 +14816,8 @@ const Methods = {
|
|
|
14691
14816
|
const $xeTable = this;
|
|
14692
14817
|
const internalData = $xeTable;
|
|
14693
14818
|
const {
|
|
14694
|
-
treeExpandLazyLoadedMaps
|
|
14819
|
+
treeExpandLazyLoadedMaps,
|
|
14820
|
+
treeEATime
|
|
14695
14821
|
} = internalData;
|
|
14696
14822
|
const treeOpts = $xeTable.computeTreeOpts;
|
|
14697
14823
|
const {
|
|
@@ -14700,7 +14826,8 @@ const Methods = {
|
|
|
14700
14826
|
} = params;
|
|
14701
14827
|
const {
|
|
14702
14828
|
lazy,
|
|
14703
|
-
trigger
|
|
14829
|
+
trigger,
|
|
14830
|
+
accordion
|
|
14704
14831
|
} = treeOpts;
|
|
14705
14832
|
if (trigger === 'manual') {
|
|
14706
14833
|
return;
|
|
@@ -14711,7 +14838,17 @@ const Methods = {
|
|
|
14711
14838
|
const expanded = !$xeTable.isTreeExpandByRow(row);
|
|
14712
14839
|
const columnIndex = $xeTable.getColumnIndex(column);
|
|
14713
14840
|
const $columnIndex = $xeTable.getVMColumnIndex(column);
|
|
14714
|
-
|
|
14841
|
+
if (treeEATime) {
|
|
14842
|
+
clearTimeout(treeEATime);
|
|
14843
|
+
}
|
|
14844
|
+
$xeTable.setTreeExpand(row, expanded).then(() => {
|
|
14845
|
+
if (accordion) {
|
|
14846
|
+
internalData.treeEATime = setTimeout(() => {
|
|
14847
|
+
internalData.treeEATime = undefined;
|
|
14848
|
+
$xeTable.scrollToRow(row);
|
|
14849
|
+
}, 30);
|
|
14850
|
+
}
|
|
14851
|
+
});
|
|
14715
14852
|
$xeTable.dispatchEvent('toggle-tree-expand', {
|
|
14716
14853
|
expanded,
|
|
14717
14854
|
column,
|
|
@@ -14751,117 +14888,6 @@ const Methods = {
|
|
|
14751
14888
|
});
|
|
14752
14889
|
return this.setTreeExpand(expandeds, expanded);
|
|
14753
14890
|
},
|
|
14754
|
-
/**
|
|
14755
|
-
* 默认,展开与收起树节点
|
|
14756
|
-
* @param rows
|
|
14757
|
-
* @param expanded
|
|
14758
|
-
* @returns
|
|
14759
|
-
*/
|
|
14760
|
-
handleBaseTreeExpand(rows, expanded) {
|
|
14761
|
-
const $xeTable = this;
|
|
14762
|
-
const reactData = $xeTable;
|
|
14763
|
-
const internalData = $xeTable;
|
|
14764
|
-
const {
|
|
14765
|
-
treeNodeColumn
|
|
14766
|
-
} = reactData;
|
|
14767
|
-
const {
|
|
14768
|
-
fullAllDataRowIdData,
|
|
14769
|
-
tableFullData,
|
|
14770
|
-
treeExpandedMaps,
|
|
14771
|
-
treeExpandLazyLoadedMaps
|
|
14772
|
-
} = internalData;
|
|
14773
|
-
const treeOpts = $xeTable.computeTreeOpts;
|
|
14774
|
-
const {
|
|
14775
|
-
reserve,
|
|
14776
|
-
lazy,
|
|
14777
|
-
accordion,
|
|
14778
|
-
toggleMethod
|
|
14779
|
-
} = treeOpts;
|
|
14780
|
-
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
14781
|
-
const hasChildField = treeOpts.hasChild || treeOpts.hasChildField;
|
|
14782
|
-
const result = [];
|
|
14783
|
-
const columnIndex = $xeTable.getColumnIndex(treeNodeColumn);
|
|
14784
|
-
const $columnIndex = $xeTable.getVMColumnIndex(treeNodeColumn);
|
|
14785
|
-
const {
|
|
14786
|
-
handleGetRowId
|
|
14787
|
-
} = createHandleGetRowId($xeTable);
|
|
14788
|
-
let validRows = toggleMethod ? rows.filter(row => toggleMethod({
|
|
14789
|
-
$table: $xeTable,
|
|
14790
|
-
expanded,
|
|
14791
|
-
column: treeNodeColumn,
|
|
14792
|
-
columnIndex,
|
|
14793
|
-
$columnIndex,
|
|
14794
|
-
row
|
|
14795
|
-
})) : rows;
|
|
14796
|
-
if (accordion) {
|
|
14797
|
-
validRows = validRows.length ? [validRows[validRows.length - 1]] : [];
|
|
14798
|
-
// 同一级只能展开一个
|
|
14799
|
-
const matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().findTree(tableFullData, item => item === validRows[0], {
|
|
14800
|
-
children: childrenField
|
|
14801
|
-
});
|
|
14802
|
-
if (matchObj) {
|
|
14803
|
-
matchObj.items.forEach(item => {
|
|
14804
|
-
const rowid = handleGetRowId(item);
|
|
14805
|
-
if (treeExpandedMaps[rowid]) {
|
|
14806
|
-
delete treeExpandedMaps[rowid];
|
|
14807
|
-
}
|
|
14808
|
-
});
|
|
14809
|
-
}
|
|
14810
|
-
}
|
|
14811
|
-
if (expanded) {
|
|
14812
|
-
validRows.forEach(row => {
|
|
14813
|
-
const rowid = handleGetRowId(row);
|
|
14814
|
-
if (!treeExpandedMaps[rowid]) {
|
|
14815
|
-
const rowRest = fullAllDataRowIdData[rowid];
|
|
14816
|
-
if (rowRest) {
|
|
14817
|
-
const isLoad = lazy && row[hasChildField] && !rowRest.treeLoaded && !treeExpandLazyLoadedMaps[rowid];
|
|
14818
|
-
// 是否使用懒加载
|
|
14819
|
-
if (isLoad) {
|
|
14820
|
-
result.push(handleAsyncTreeExpandChilds($xeTable, row));
|
|
14821
|
-
} else {
|
|
14822
|
-
if (row[childrenField] && row[childrenField].length) {
|
|
14823
|
-
treeExpandedMaps[rowid] = row;
|
|
14824
|
-
}
|
|
14825
|
-
}
|
|
14826
|
-
}
|
|
14827
|
-
}
|
|
14828
|
-
});
|
|
14829
|
-
} else {
|
|
14830
|
-
validRows.forEach(item => {
|
|
14831
|
-
const rowid = handleGetRowId(item);
|
|
14832
|
-
if (treeExpandedMaps[rowid]) {
|
|
14833
|
-
delete treeExpandedMaps[rowid];
|
|
14834
|
-
}
|
|
14835
|
-
});
|
|
14836
|
-
}
|
|
14837
|
-
if (reserve) {
|
|
14838
|
-
validRows.forEach(row => handleTreeExpandReserve($xeTable, row, expanded));
|
|
14839
|
-
}
|
|
14840
|
-
reactData.treeExpandedFlag++;
|
|
14841
|
-
return Promise.all(result).then(() => {
|
|
14842
|
-
return $xeTable.recalculate();
|
|
14843
|
-
});
|
|
14844
|
-
},
|
|
14845
|
-
/**
|
|
14846
|
-
* 虚拟树的展开与收起
|
|
14847
|
-
* @param rows
|
|
14848
|
-
* @param expanded
|
|
14849
|
-
* @returns
|
|
14850
|
-
*/
|
|
14851
|
-
handleVirtualTreeExpand(rows, expanded) {
|
|
14852
|
-
const $xeTable = this;
|
|
14853
|
-
return this.handleBaseTreeExpand(rows, expanded).then(() => {
|
|
14854
|
-
handleVirtualTreeToList($xeTable);
|
|
14855
|
-
this.handleTableData();
|
|
14856
|
-
updateAfterDataIndex($xeTable);
|
|
14857
|
-
}).then(() => {
|
|
14858
|
-
return this.recalculate();
|
|
14859
|
-
}).then(() => {
|
|
14860
|
-
setTimeout(() => {
|
|
14861
|
-
this.updateCellAreas();
|
|
14862
|
-
}, 30);
|
|
14863
|
-
});
|
|
14864
|
-
},
|
|
14865
14891
|
/**
|
|
14866
14892
|
* 设置展开树形节点,二个参数设置这一行展开与否
|
|
14867
14893
|
* 支持单行
|
|
@@ -14870,6 +14896,7 @@ const Methods = {
|
|
|
14870
14896
|
* @param {Boolean} expanded 是否展开
|
|
14871
14897
|
*/
|
|
14872
14898
|
setTreeExpand(rows, expanded) {
|
|
14899
|
+
const $xeTable = this;
|
|
14873
14900
|
const {
|
|
14874
14901
|
treeOpts
|
|
14875
14902
|
} = this;
|
|
@@ -14883,9 +14910,9 @@ const Methods = {
|
|
|
14883
14910
|
if (rows.length) {
|
|
14884
14911
|
// 如果为虚拟树
|
|
14885
14912
|
if (transform) {
|
|
14886
|
-
return
|
|
14913
|
+
return handleVirtualTreeExpand($xeTable, rows, expanded);
|
|
14887
14914
|
} else {
|
|
14888
|
-
return
|
|
14915
|
+
return handleBaseTreeExpand($xeTable, rows, expanded);
|
|
14889
14916
|
}
|
|
14890
14917
|
}
|
|
14891
14918
|
}
|
|
@@ -15594,7 +15621,8 @@ const Methods = {
|
|
|
15594
15621
|
if (isScrollXBig && mouseOpts.area) {
|
|
15595
15622
|
errLog('vxe.error.notProp', ['mouse-config.area']);
|
|
15596
15623
|
}
|
|
15597
|
-
$xeTable
|
|
15624
|
+
calcScrollbar($xeTable);
|
|
15625
|
+
return $xeTable.$nextTick(() => {
|
|
15598
15626
|
updateStyle($xeTable);
|
|
15599
15627
|
});
|
|
15600
15628
|
}
|
|
@@ -15713,6 +15741,7 @@ const Methods = {
|
|
|
15713
15741
|
if (isScrollYBig && mouseOpts.area) {
|
|
15714
15742
|
errLog('vxe.error.notProp', ['mouse-config.area']);
|
|
15715
15743
|
}
|
|
15744
|
+
calcScrollbar($xeTable);
|
|
15716
15745
|
return $xeTable.$nextTick().then(() => {
|
|
15717
15746
|
updateStyle($xeTable);
|
|
15718
15747
|
});
|
|
@@ -16237,6 +16266,7 @@ function renderTdColumn(h, _vm, seq, rowid, fixedType, isOptimizeMode, rowLevel,
|
|
|
16237
16266
|
showOverflow: allShowOverflow,
|
|
16238
16267
|
border,
|
|
16239
16268
|
height,
|
|
16269
|
+
treeConfig,
|
|
16240
16270
|
cellClassName: allCellClassName,
|
|
16241
16271
|
cellStyle,
|
|
16242
16272
|
align: allAlign,
|
|
@@ -16277,6 +16307,8 @@ function renderTdColumn(h, _vm, seq, rowid, fixedType, isOptimizeMode, rowLevel,
|
|
|
16277
16307
|
const checkboxOpts = $xeTable.computeCheckboxOpts;
|
|
16278
16308
|
const editOpts = $xeTable.computeEditOpts;
|
|
16279
16309
|
const tooltipOpts = $xeTable.computeTooltipOpts;
|
|
16310
|
+
const virtualXOpts = $xeTable.computeVirtualXOpts;
|
|
16311
|
+
const virtualYOpts = $xeTable.computeVirtualYOpts;
|
|
16280
16312
|
const {
|
|
16281
16313
|
isAllColumnDrag,
|
|
16282
16314
|
isAllRowDrag
|
|
@@ -16480,9 +16512,9 @@ function renderTdColumn(h, _vm, seq, rowid, fixedType, isOptimizeMode, rowLevel,
|
|
|
16480
16512
|
let isVNPreEmptyStatus = false;
|
|
16481
16513
|
if (!isMergeCell) {
|
|
16482
16514
|
if (!dragRow || getRowid($xeTable, dragRow) !== rowid) {
|
|
16483
|
-
if (scrollYLoad && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
|
|
16515
|
+
if (scrollYLoad && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
|
|
16484
16516
|
isVNPreEmptyStatus = true;
|
|
16485
|
-
} else if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
16517
|
+
} else if (scrollXLoad && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
16486
16518
|
isVNPreEmptyStatus = true;
|
|
16487
16519
|
}
|
|
16488
16520
|
}
|
|
@@ -17155,6 +17187,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
17155
17187
|
fullColumnIdData,
|
|
17156
17188
|
scrollXStore
|
|
17157
17189
|
} = tableInternalData;
|
|
17190
|
+
const virtualXOpts = $xeTable.computeVirtualXOpts;
|
|
17158
17191
|
const columnOpts = $xeTable.computeColumnOpts;
|
|
17159
17192
|
const columnDragOpts = $xeTable.computeColumnDragOpts;
|
|
17160
17193
|
const cellOpts = $xeTable.computeCellOpts;
|
|
@@ -17250,7 +17283,7 @@ const header_renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) =>
|
|
|
17250
17283
|
let isVNPreEmptyStatus = false;
|
|
17251
17284
|
if (!isGroup) {
|
|
17252
17285
|
if (!dragCol || dragCol.id !== colid) {
|
|
17253
|
-
if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
17286
|
+
if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
17254
17287
|
isVNPreEmptyStatus = true;
|
|
17255
17288
|
}
|
|
17256
17289
|
}
|
|
@@ -17621,10 +17654,12 @@ function footer_renderRows(h, _vm, tableColumn, footerTableData, row, $rowIndex,
|
|
|
17621
17654
|
mergeFooterCellMaps,
|
|
17622
17655
|
scrollXStore
|
|
17623
17656
|
} = tableInternalData;
|
|
17657
|
+
const virtualXOpts = $xeTable.computeVirtualXOpts;
|
|
17624
17658
|
const tooltipOpts = $xeTable.computeTooltipOpts;
|
|
17659
|
+
const resizableOpts = $xeTable.resizableOpts;
|
|
17625
17660
|
const {
|
|
17626
17661
|
isAllColumnDrag
|
|
17627
|
-
} =
|
|
17662
|
+
} = resizableOpts;
|
|
17628
17663
|
const columnOpts = $xeTable.computeColumnOpts;
|
|
17629
17664
|
const defaultRowHeight = $xeTable.computeDefaultRowHeight;
|
|
17630
17665
|
const cellOpts = $xeTable.computeCellOpts;
|
|
@@ -17750,7 +17785,7 @@ function footer_renderRows(h, _vm, tableColumn, footerTableData, row, $rowIndex,
|
|
|
17750
17785
|
const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
|
|
17751
17786
|
let isVNPreEmptyStatus = false;
|
|
17752
17787
|
if (!isMergeCell) {
|
|
17753
|
-
if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
17788
|
+
if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
17754
17789
|
isVNPreEmptyStatus = true;
|
|
17755
17790
|
}
|
|
17756
17791
|
}
|
|
@@ -19493,28 +19528,169 @@ const renderPopupPanel = (h, _vm) => {
|
|
|
19493
19528
|
const {
|
|
19494
19529
|
getI18n: filter_panel_getI18n,
|
|
19495
19530
|
getIcon: filter_panel_getIcon,
|
|
19496
|
-
renderer: panel_renderer
|
|
19531
|
+
renderer: panel_renderer,
|
|
19532
|
+
globalMixins
|
|
19497
19533
|
} = core_.VxeUI;
|
|
19534
|
+
function renderOptions($xeFilterPanel, h, filterRender, compConf) {
|
|
19535
|
+
const props = $xeFilterPanel;
|
|
19536
|
+
const $xeTable = $xeFilterPanel.$xeTable;
|
|
19537
|
+
const tableInternalData = $xeTable;
|
|
19538
|
+
const {
|
|
19539
|
+
filterStore
|
|
19540
|
+
} = props;
|
|
19541
|
+
const {
|
|
19542
|
+
column,
|
|
19543
|
+
multiple,
|
|
19544
|
+
maxHeight
|
|
19545
|
+
} = filterStore;
|
|
19546
|
+
const slots = column ? column.slots : null;
|
|
19547
|
+
const filterSlot = slots ? slots.filter : null;
|
|
19548
|
+
const params = Object.assign({}, tableInternalData._currFilterParams, {
|
|
19549
|
+
$panel: $xeFilterPanel,
|
|
19550
|
+
$table: $xeTable
|
|
19551
|
+
});
|
|
19552
|
+
const rtFilter = compConf ? compConf.renderTableFilter || compConf.renderFilter : null;
|
|
19553
|
+
if (filterSlot) {
|
|
19554
|
+
return [h('div', {
|
|
19555
|
+
class: 'vxe-table--filter-template',
|
|
19556
|
+
style: maxHeight ? {
|
|
19557
|
+
maxHeight: `${maxHeight}px`
|
|
19558
|
+
} : {}
|
|
19559
|
+
}, $xeTable.callSlot(filterSlot, params, h))];
|
|
19560
|
+
} else if (rtFilter) {
|
|
19561
|
+
return [h('div', {
|
|
19562
|
+
class: 'vxe-table--filter-template',
|
|
19563
|
+
style: maxHeight ? {
|
|
19564
|
+
maxHeight: `${maxHeight}px`
|
|
19565
|
+
} : {}
|
|
19566
|
+
}, getSlotVNs(rtFilter.call($xeTable, h, filterRender, params)))];
|
|
19567
|
+
}
|
|
19568
|
+
const isAllChecked = multiple ? filterStore.isAllSelected : !filterStore.options.some(item => item._checked);
|
|
19569
|
+
const isAllIndeterminate = multiple && filterStore.isIndeterminate;
|
|
19570
|
+
return [h('ul', {
|
|
19571
|
+
class: 'vxe-table--filter-header'
|
|
19572
|
+
}, [h('li', {
|
|
19573
|
+
class: ['vxe-table--filter-option', {
|
|
19574
|
+
'is--checked': isAllChecked,
|
|
19575
|
+
'is--indeterminate': isAllIndeterminate
|
|
19576
|
+
}],
|
|
19577
|
+
attrs: {
|
|
19578
|
+
title: filter_panel_getI18n(multiple ? 'vxe.table.allTitle' : 'vxe.table.allFilter')
|
|
19579
|
+
},
|
|
19580
|
+
on: {
|
|
19581
|
+
click: evnt => {
|
|
19582
|
+
$xeFilterPanel.changeAllOption(evnt, !filterStore.isAllSelected);
|
|
19583
|
+
}
|
|
19584
|
+
}
|
|
19585
|
+
}, (multiple ? [h('span', {
|
|
19586
|
+
class: ['vxe-checkbox--icon', isAllIndeterminate ? filter_panel_getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllChecked ? filter_panel_getIcon().TABLE_CHECKBOX_CHECKED : filter_panel_getIcon().TABLE_CHECKBOX_UNCHECKED]
|
|
19587
|
+
})] : []).concat([h('span', {
|
|
19588
|
+
class: 'vxe-checkbox--label'
|
|
19589
|
+
}, filter_panel_getI18n('vxe.table.allFilter'))]))]), h('ul', {
|
|
19590
|
+
class: 'vxe-table--filter-body',
|
|
19591
|
+
style: maxHeight ? {
|
|
19592
|
+
maxHeight: `${maxHeight}px`
|
|
19593
|
+
} : {}
|
|
19594
|
+
}, filterStore.options.map(item => {
|
|
19595
|
+
const isChecked = item._checked;
|
|
19596
|
+
const isIndeterminate = false;
|
|
19597
|
+
return h('li', {
|
|
19598
|
+
class: ['vxe-table--filter-option', {
|
|
19599
|
+
'is--checked': isChecked
|
|
19600
|
+
}],
|
|
19601
|
+
attrs: {
|
|
19602
|
+
title: item.label
|
|
19603
|
+
},
|
|
19604
|
+
on: {
|
|
19605
|
+
click: evnt => {
|
|
19606
|
+
$xeFilterPanel.changeOption(evnt, !item._checked, item);
|
|
19607
|
+
}
|
|
19608
|
+
}
|
|
19609
|
+
}, (multiple ? [h('span', {
|
|
19610
|
+
class: ['vxe-checkbox--icon', isIndeterminate ? filter_panel_getIcon().TABLE_CHECKBOX_INDETERMINATE : isChecked ? filter_panel_getIcon().TABLE_CHECKBOX_CHECKED : filter_panel_getIcon().TABLE_CHECKBOX_UNCHECKED]
|
|
19611
|
+
})] : []).concat([h('span', {
|
|
19612
|
+
class: 'vxe-checkbox--label'
|
|
19613
|
+
}, formatText(item.label, 1))]));
|
|
19614
|
+
}))];
|
|
19615
|
+
}
|
|
19616
|
+
function renderFooter($xeFilterPanel, h) {
|
|
19617
|
+
const props = $xeFilterPanel;
|
|
19618
|
+
const $xeTable = $xeFilterPanel.$xeTable;
|
|
19619
|
+
const {
|
|
19620
|
+
filterStore
|
|
19621
|
+
} = props;
|
|
19622
|
+
const {
|
|
19623
|
+
column,
|
|
19624
|
+
multiple
|
|
19625
|
+
} = filterStore;
|
|
19626
|
+
const filterOpts = $xeTable.computeFilterOpts;
|
|
19627
|
+
const hasCheckOption = $xeFilterPanel.computeHasCheckOption;
|
|
19628
|
+
const filterRender = column.filterRender;
|
|
19629
|
+
const compConf = isEnableConf(filterRender) ? panel_renderer.get(filterRender.name) : null;
|
|
19630
|
+
const isDisabled = !hasCheckOption && !filterStore.isAllSelected && !filterStore.isIndeterminate;
|
|
19631
|
+
return multiple && (compConf ? !(compConf.showTableFilterFooter === false || compConf.showFilterFooter === false || compConf.isFooter === false) : true) ? [h('div', {
|
|
19632
|
+
class: 'vxe-table--filter-footer'
|
|
19633
|
+
}, [h('button', {
|
|
19634
|
+
class: {
|
|
19635
|
+
'is--disabled': isDisabled
|
|
19636
|
+
},
|
|
19637
|
+
attrs: {
|
|
19638
|
+
disabled: isDisabled
|
|
19639
|
+
},
|
|
19640
|
+
on: {
|
|
19641
|
+
click: $xeFilterPanel.confirmFilter
|
|
19642
|
+
}
|
|
19643
|
+
}, filterOpts.confirmButtonText || filter_panel_getI18n('vxe.table.confirmFilter')), h('button', {
|
|
19644
|
+
on: {
|
|
19645
|
+
click: $xeFilterPanel.resetFilter
|
|
19646
|
+
}
|
|
19647
|
+
}, filterOpts.resetButtonText || filter_panel_getI18n('vxe.table.resetFilter'))])] : [];
|
|
19648
|
+
}
|
|
19498
19649
|
/* harmony default export */ var filter_panel = ({
|
|
19499
19650
|
name: 'VxeTableFilterPanel',
|
|
19651
|
+
mixins: [globalMixins.sizeMixin],
|
|
19500
19652
|
props: {
|
|
19501
19653
|
filterStore: Object
|
|
19502
19654
|
},
|
|
19655
|
+
inject: {
|
|
19656
|
+
$xeTable: {
|
|
19657
|
+
default: null
|
|
19658
|
+
}
|
|
19659
|
+
},
|
|
19503
19660
|
computed: {
|
|
19504
|
-
|
|
19661
|
+
computeHasCheckOption() {
|
|
19505
19662
|
const {
|
|
19506
19663
|
filterStore
|
|
19507
19664
|
} = this;
|
|
19508
19665
|
return filterStore && filterStore.options.some(option => option.checked);
|
|
19509
19666
|
}
|
|
19510
19667
|
},
|
|
19668
|
+
mounted() {
|
|
19669
|
+
const $xeFilterPanel = this;
|
|
19670
|
+
const $xeTable = $xeFilterPanel.$xeTable;
|
|
19671
|
+
const filterOpts = $xeTable.computeFilterOpts;
|
|
19672
|
+
const {
|
|
19673
|
+
transfer
|
|
19674
|
+
} = filterOpts;
|
|
19675
|
+
const el = this.$refs.refElem;
|
|
19676
|
+
if (transfer && el) {
|
|
19677
|
+
document.body.appendChild(el);
|
|
19678
|
+
}
|
|
19679
|
+
},
|
|
19680
|
+
beforeDestroy() {
|
|
19681
|
+
const el = this.$refs.refElem;
|
|
19682
|
+
if (el && el.parentNode) {
|
|
19683
|
+
el.parentNode.removeChild(el);
|
|
19684
|
+
}
|
|
19685
|
+
},
|
|
19511
19686
|
render(h) {
|
|
19512
|
-
const $
|
|
19513
|
-
const
|
|
19687
|
+
const $xeFilterPanel = this;
|
|
19688
|
+
const props = $xeFilterPanel;
|
|
19689
|
+
const $xeTable = $xeFilterPanel.$xeTable;
|
|
19514
19690
|
const tableInternalData = $xeTable;
|
|
19515
19691
|
const {
|
|
19516
19692
|
filterStore
|
|
19517
|
-
} =
|
|
19693
|
+
} = props;
|
|
19518
19694
|
const {
|
|
19519
19695
|
visible,
|
|
19520
19696
|
multiple,
|
|
@@ -19524,137 +19700,27 @@ const {
|
|
|
19524
19700
|
const compConf = isEnableConf(filterRender) ? panel_renderer.get(filterRender.name) : null;
|
|
19525
19701
|
const filterClassName = compConf ? compConf.tableFilterClassName || compConf.filterClassName : '';
|
|
19526
19702
|
const params = Object.assign({}, tableInternalData._currFilterParams, {
|
|
19527
|
-
$panel,
|
|
19703
|
+
$panel: $xeFilterPanel,
|
|
19528
19704
|
$table: $xeTable
|
|
19529
19705
|
});
|
|
19706
|
+
const tableProps = $xeTable;
|
|
19707
|
+
const vSize = $xeFilterPanel.computeSize;
|
|
19530
19708
|
const filterOpts = $xeTable.computeFilterOpts;
|
|
19531
19709
|
const {
|
|
19532
19710
|
destroyOnClose
|
|
19533
19711
|
} = filterOpts;
|
|
19534
19712
|
return h('div', {
|
|
19713
|
+
ref: 'refElem',
|
|
19535
19714
|
class: ['vxe-table--filter-wrapper', 'filter--prevent-default', compConf && compConf.className ? compConf.className : '', getClass(filterClassName, params), {
|
|
19536
|
-
|
|
19715
|
+
[`size--${vSize}`]: vSize,
|
|
19716
|
+
'is--animat': tableProps.animat,
|
|
19537
19717
|
'is--multiple': multiple,
|
|
19538
19718
|
'is--active': visible
|
|
19539
19719
|
}],
|
|
19540
19720
|
style: filterStore.style
|
|
19541
|
-
}, filterStore.visible && (destroyOnClose ? visible : true) && column ?
|
|
19721
|
+
}, filterStore.visible && (destroyOnClose ? visible : true) && column ? renderOptions($xeFilterPanel, h, filterRender, compConf).concat(renderFooter($xeFilterPanel, h)) : []);
|
|
19542
19722
|
},
|
|
19543
19723
|
methods: {
|
|
19544
|
-
renderOptions(h, filterRender, compConf) {
|
|
19545
|
-
const $panel = this;
|
|
19546
|
-
const $xeTable = this.$parent;
|
|
19547
|
-
const tableInternalData = $xeTable;
|
|
19548
|
-
const {
|
|
19549
|
-
filterStore
|
|
19550
|
-
} = this;
|
|
19551
|
-
const {
|
|
19552
|
-
column,
|
|
19553
|
-
multiple,
|
|
19554
|
-
maxHeight
|
|
19555
|
-
} = filterStore;
|
|
19556
|
-
const slots = column ? column.slots : null;
|
|
19557
|
-
const filterSlot = slots ? slots.filter : null;
|
|
19558
|
-
const params = Object.assign({}, tableInternalData._currFilterParams, {
|
|
19559
|
-
$panel,
|
|
19560
|
-
$table: $xeTable
|
|
19561
|
-
});
|
|
19562
|
-
const rtFilter = compConf ? compConf.renderTableFilter || compConf.renderFilter : null;
|
|
19563
|
-
if (filterSlot) {
|
|
19564
|
-
return [h('div', {
|
|
19565
|
-
class: 'vxe-table--filter-template',
|
|
19566
|
-
style: maxHeight ? {
|
|
19567
|
-
maxHeight: `${maxHeight}px`
|
|
19568
|
-
} : {}
|
|
19569
|
-
}, $xeTable.callSlot(filterSlot, params, h))];
|
|
19570
|
-
} else if (rtFilter) {
|
|
19571
|
-
return [h('div', {
|
|
19572
|
-
class: 'vxe-table--filter-template',
|
|
19573
|
-
style: maxHeight ? {
|
|
19574
|
-
maxHeight: `${maxHeight}px`
|
|
19575
|
-
} : {}
|
|
19576
|
-
}, getSlotVNs(rtFilter.call($xeTable, h, filterRender, params)))];
|
|
19577
|
-
}
|
|
19578
|
-
const isAllChecked = multiple ? filterStore.isAllSelected : !filterStore.options.some(item => item._checked);
|
|
19579
|
-
const isAllIndeterminate = multiple && filterStore.isIndeterminate;
|
|
19580
|
-
return [h('ul', {
|
|
19581
|
-
class: 'vxe-table--filter-header'
|
|
19582
|
-
}, [h('li', {
|
|
19583
|
-
class: ['vxe-table--filter-option', {
|
|
19584
|
-
'is--checked': isAllChecked,
|
|
19585
|
-
'is--indeterminate': isAllIndeterminate
|
|
19586
|
-
}],
|
|
19587
|
-
attrs: {
|
|
19588
|
-
title: filter_panel_getI18n(multiple ? 'vxe.table.allTitle' : 'vxe.table.allFilter')
|
|
19589
|
-
},
|
|
19590
|
-
on: {
|
|
19591
|
-
click: evnt => {
|
|
19592
|
-
this.changeAllOption(evnt, !filterStore.isAllSelected);
|
|
19593
|
-
}
|
|
19594
|
-
}
|
|
19595
|
-
}, (multiple ? [h('span', {
|
|
19596
|
-
class: ['vxe-checkbox--icon', isAllIndeterminate ? filter_panel_getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllChecked ? filter_panel_getIcon().TABLE_CHECKBOX_CHECKED : filter_panel_getIcon().TABLE_CHECKBOX_UNCHECKED]
|
|
19597
|
-
})] : []).concat([h('span', {
|
|
19598
|
-
class: 'vxe-checkbox--label'
|
|
19599
|
-
}, filter_panel_getI18n('vxe.table.allFilter'))]))]), h('ul', {
|
|
19600
|
-
class: 'vxe-table--filter-body',
|
|
19601
|
-
style: maxHeight ? {
|
|
19602
|
-
maxHeight: `${maxHeight}px`
|
|
19603
|
-
} : {}
|
|
19604
|
-
}, filterStore.options.map(item => {
|
|
19605
|
-
const isChecked = item._checked;
|
|
19606
|
-
const isIndeterminate = false;
|
|
19607
|
-
return h('li', {
|
|
19608
|
-
class: ['vxe-table--filter-option', {
|
|
19609
|
-
'is--checked': isChecked
|
|
19610
|
-
}],
|
|
19611
|
-
attrs: {
|
|
19612
|
-
title: item.label
|
|
19613
|
-
},
|
|
19614
|
-
on: {
|
|
19615
|
-
click: evnt => {
|
|
19616
|
-
this.changeOption(evnt, !item._checked, item);
|
|
19617
|
-
}
|
|
19618
|
-
}
|
|
19619
|
-
}, (multiple ? [h('span', {
|
|
19620
|
-
class: ['vxe-checkbox--icon', isIndeterminate ? filter_panel_getIcon().TABLE_CHECKBOX_INDETERMINATE : isChecked ? filter_panel_getIcon().TABLE_CHECKBOX_CHECKED : filter_panel_getIcon().TABLE_CHECKBOX_UNCHECKED]
|
|
19621
|
-
})] : []).concat([h('span', {
|
|
19622
|
-
class: 'vxe-checkbox--label'
|
|
19623
|
-
}, formatText(item.label, 1))]));
|
|
19624
|
-
}))];
|
|
19625
|
-
},
|
|
19626
|
-
renderFooter(h) {
|
|
19627
|
-
const $xeTable = this.$parent;
|
|
19628
|
-
const {
|
|
19629
|
-
hasCheckOption,
|
|
19630
|
-
filterStore
|
|
19631
|
-
} = this;
|
|
19632
|
-
const {
|
|
19633
|
-
column,
|
|
19634
|
-
multiple
|
|
19635
|
-
} = filterStore;
|
|
19636
|
-
const filterOpts = $xeTable.computeFilterOpts;
|
|
19637
|
-
const filterRender = column.filterRender;
|
|
19638
|
-
const compConf = isEnableConf(filterRender) ? panel_renderer.get(filterRender.name) : null;
|
|
19639
|
-
const isDisabled = !hasCheckOption && !filterStore.isAllSelected && !filterStore.isIndeterminate;
|
|
19640
|
-
return multiple && (compConf ? !(compConf.showTableFilterFooter === false || compConf.showFilterFooter === false || compConf.isFooter === false) : true) ? [h('div', {
|
|
19641
|
-
class: 'vxe-table--filter-footer'
|
|
19642
|
-
}, [h('button', {
|
|
19643
|
-
class: {
|
|
19644
|
-
'is--disabled': isDisabled
|
|
19645
|
-
},
|
|
19646
|
-
attrs: {
|
|
19647
|
-
disabled: isDisabled
|
|
19648
|
-
},
|
|
19649
|
-
on: {
|
|
19650
|
-
click: this.confirmFilter
|
|
19651
|
-
}
|
|
19652
|
-
}, filterOpts.confirmButtonText || filter_panel_getI18n('vxe.table.confirmFilter')), h('button', {
|
|
19653
|
-
on: {
|
|
19654
|
-
click: this.resetFilter
|
|
19655
|
-
}
|
|
19656
|
-
}, filterOpts.resetButtonText || filter_panel_getI18n('vxe.table.resetFilter'))])] : [];
|
|
19657
|
-
},
|
|
19658
19724
|
// 全部筛选事件
|
|
19659
19725
|
filterCheckAllEvent(evnt, value) {
|
|
19660
19726
|
const filterStore = this.filterStore;
|
|
@@ -19725,12 +19791,12 @@ const {
|
|
|
19725
19791
|
const {
|
|
19726
19792
|
getI18n: import_panel_getI18n,
|
|
19727
19793
|
getIcon: import_panel_getIcon,
|
|
19728
|
-
globalMixins,
|
|
19794
|
+
globalMixins: import_panel_globalMixins,
|
|
19729
19795
|
renderEmptyElement: import_panel_renderEmptyElement
|
|
19730
19796
|
} = core_.VxeUI;
|
|
19731
19797
|
/* harmony default export */ var import_panel = ({
|
|
19732
19798
|
name: 'VxeTableImportPanel',
|
|
19733
|
-
mixins: [
|
|
19799
|
+
mixins: [import_panel_globalMixins.sizeMixin],
|
|
19734
19800
|
props: {
|
|
19735
19801
|
defaultOptions: Object,
|
|
19736
19802
|
storeData: Object
|
|
@@ -20668,6 +20734,16 @@ const {
|
|
|
20668
20734
|
filterStore.visible = false;
|
|
20669
20735
|
} else {
|
|
20670
20736
|
const el = $xeTable.$refs.refElem;
|
|
20737
|
+
const {
|
|
20738
|
+
scrollTop,
|
|
20739
|
+
scrollLeft,
|
|
20740
|
+
visibleHeight,
|
|
20741
|
+
visibleWidth
|
|
20742
|
+
} = getDomNode();
|
|
20743
|
+
const filterOpts = $xeTable.computeFilterOpts;
|
|
20744
|
+
const {
|
|
20745
|
+
transfer
|
|
20746
|
+
} = filterOpts;
|
|
20671
20747
|
const tableRect = el.getBoundingClientRect();
|
|
20672
20748
|
const btnElem = evnt.currentTarget;
|
|
20673
20749
|
const {
|
|
@@ -20715,23 +20791,37 @@ const {
|
|
|
20715
20791
|
return;
|
|
20716
20792
|
}
|
|
20717
20793
|
const btnRect = btnElem.getBoundingClientRect();
|
|
20718
|
-
const filterWidth = filterWrapperElem.offsetWidth;
|
|
20719
20794
|
const filterHeadElem = filterWrapperElem.querySelector('.vxe-table--filter-header');
|
|
20720
20795
|
const filterFootElem = filterWrapperElem.querySelector('.vxe-table--filter-footer');
|
|
20796
|
+
const filterWidth = filterWrapperElem.offsetWidth;
|
|
20721
20797
|
const centerWidth = filterWidth / 2;
|
|
20722
|
-
let left =
|
|
20723
|
-
|
|
20724
|
-
|
|
20725
|
-
|
|
20726
|
-
|
|
20727
|
-
|
|
20728
|
-
|
|
20729
|
-
left
|
|
20798
|
+
let left = 0;
|
|
20799
|
+
let top = 0;
|
|
20800
|
+
let maxHeight = 0;
|
|
20801
|
+
if (transfer) {
|
|
20802
|
+
left = btnRect.left - centerWidth + scrollLeft;
|
|
20803
|
+
top = btnRect.top + btnElem.clientHeight + scrollTop;
|
|
20804
|
+
maxHeight = Math.min(Math.max(tableRect.height, Math.floor(visibleHeight / 2)), Math.max(80, visibleHeight - top - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 28));
|
|
20805
|
+
if (left < 16) {
|
|
20806
|
+
left = 16;
|
|
20807
|
+
} else if (left > visibleWidth - filterWidth - 16) {
|
|
20808
|
+
left = visibleWidth - filterWidth - 16;
|
|
20809
|
+
}
|
|
20810
|
+
} else {
|
|
20811
|
+
left = btnRect.left - tableRect.left - centerWidth;
|
|
20812
|
+
top = btnRect.top - tableRect.top + btnElem.clientHeight;
|
|
20813
|
+
maxHeight = Math.max(40, el.clientHeight - top - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14);
|
|
20814
|
+
if (left < 1) {
|
|
20815
|
+
left = 1;
|
|
20816
|
+
} else if (left > el.clientWidth - filterWidth - 1) {
|
|
20817
|
+
left = el.clientWidth - filterWidth - 1;
|
|
20818
|
+
}
|
|
20730
20819
|
}
|
|
20731
20820
|
filterStore.style = {
|
|
20732
20821
|
top: toCssUnit(top),
|
|
20733
20822
|
left: toCssUnit(left)
|
|
20734
20823
|
};
|
|
20824
|
+
// 判断面板不能大于表格高度
|
|
20735
20825
|
filterStore.maxHeight = maxHeight;
|
|
20736
20826
|
});
|
|
20737
20827
|
}
|
|
@@ -27510,6 +27600,9 @@ function renderBody(h, $xeTable) {
|
|
|
27510
27600
|
if (this.highlightHoverColumn) {
|
|
27511
27601
|
warnLog('vxe.error.delProp', ['highlight-hover-column', 'column-config.isHover']);
|
|
27512
27602
|
}
|
|
27603
|
+
if (props.resizable) {
|
|
27604
|
+
warnLog('vxe.error.delProp', ['resizable', 'column-config.resizable']);
|
|
27605
|
+
}
|
|
27513
27606
|
// if (props.scrollY) {
|
|
27514
27607
|
// warnLog('vxe.error.delProp', ['scroll-y', 'virtual-y-config'])
|
|
27515
27608
|
// }
|