vxe-table 3.15.16 → 3.15.18
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/locale/lang/fr-FR.d.ts +2 -0
- package/es/locale/lang/hy-AM.d.ts +2 -0
- package/es/locale/lang/id-ID.d.ts +2 -0
- package/es/locale/lang/it-IT.d.ts +2 -0
- package/es/locale/lang/ms-MY.d.ts +2 -0
- package/es/locale/lang/ms-MY.js +708 -0
- package/es/locale/lang/nb-NO.d.ts +2 -0
- package/es/locale/lang/th-TH.d.ts +2 -0
- package/es/locale/lang/ug-CN.d.ts +2 -0
- package/es/locale/lang/uz-UZ.d.ts +2 -0
- package/es/locale/lang/uz-UZ.js +708 -0
- package/es/locale/lang/vi-VN.d.ts +2 -0
- package/es/style.css +1 -1
- package/es/table/module/custom/panel.js +1 -1
- package/es/table/module/filter/mixin.js +10 -0
- package/es/table/src/methods.js +39 -45
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +54 -44
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.d.ts +2 -0
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +728 -0
- package/lib/locale/lang/de-DE.d.ts +2 -0
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +728 -0
- package/lib/locale/lang/fr-FR.d.ts +2 -0
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +728 -0
- package/lib/locale/lang/hy-AM.d.ts +2 -0
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +728 -0
- package/lib/locale/lang/id-ID.d.ts +2 -0
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +728 -0
- package/lib/locale/lang/it-IT.d.ts +2 -0
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +728 -0
- package/lib/locale/lang/ms-MY.d.ts +2 -0
- package/lib/locale/lang/ms-MY.js +714 -0
- package/lib/locale/lang/ms-MY.min.js +1 -0
- package/lib/locale/lang/ms-MY.umd.js +728 -0
- package/lib/locale/lang/nb-NO.d.ts +2 -0
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +728 -0
- package/lib/locale/lang/th-TH.d.ts +2 -0
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +728 -0
- package/lib/locale/lang/ug-CN.d.ts +2 -0
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +728 -0
- package/lib/locale/lang/uz-UZ.d.ts +2 -0
- package/lib/locale/lang/uz-UZ.js +714 -0
- package/lib/locale/lang/uz-UZ.min.js +1 -0
- package/lib/locale/lang/uz-UZ.umd.js +728 -0
- package/lib/locale/lang/vi-VN.d.ts +2 -0
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +728 -0
- package/lib/locale/lang/zh-TC.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/custom/panel.js +1 -1
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/filter/mixin.js +10 -0
- package/lib/table/module/filter/mixin.min.js +1 -1
- package/lib/table/src/methods.js +41 -41
- package/lib/table/src/methods.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/locale/lang/ms-MY.ts +708 -0
- package/packages/locale/lang/uz-UZ.ts +708 -0
- package/packages/table/module/custom/panel.ts +1 -1
- package/packages/table/module/filter/mixin.ts +12 -0
- package/packages/table/src/methods.ts +44 -43
- package/lib/locale/lang/zh-TC.umd.js +0 -23
- /package/es/{iconfont.1745983689751.ttf → iconfont.1746578838891.ttf} +0 -0
- /package/es/{iconfont.1745983689751.woff → iconfont.1746578838891.woff} +0 -0
- /package/es/{iconfont.1745983689751.woff2 → iconfont.1746578838891.woff2} +0 -0
- /package/es/locale/lang/{zh-TC.d.ts → ar-EG.d.ts} +0 -0
- /package/{lib/locale/lang/zh-TC.d.ts → es/locale/lang/de-DE.d.ts} +0 -0
- /package/lib/{iconfont.1745983689751.ttf → iconfont.1746578838891.ttf} +0 -0
- /package/lib/{iconfont.1745983689751.woff → iconfont.1746578838891.woff} +0 -0
- /package/lib/{iconfont.1745983689751.woff2 → iconfont.1746578838891.woff2} +0 -0
package/es/table/src/methods.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import XEUtils from 'xe-utils';
|
|
2
|
-
import { getTpImg, isPx, isScale, hasClass, addClass, removeClass, getEventTargetNode, getPaddingTopBottomSize,
|
|
2
|
+
import { getTpImg, isPx, isScale, hasClass, addClass, removeClass, getEventTargetNode, getPaddingTopBottomSize, setScrollTop, setScrollLeft, toCssUnit, hasControlKey } from '../../ui/src/dom';
|
|
3
3
|
import { getLastZIndex, nextZIndex, hasChildrenList, getFuncText, isEnableConf, formatText, eqEmptyValue } from '../../ui/src/utils';
|
|
4
4
|
import { VxeUI } from '../../ui';
|
|
5
5
|
import Cell from './cell';
|
|
@@ -4370,16 +4370,10 @@ const Methods = {
|
|
|
4370
4370
|
}
|
|
4371
4371
|
}
|
|
4372
4372
|
else {
|
|
4373
|
+
const currMaps = isFull || (treeConfig && !transform) ? fullDataRowIdData : afterFullRowMaps;
|
|
4373
4374
|
XEUtils.each(selectCheckboxMaps, (row, rowid) => {
|
|
4374
|
-
if (
|
|
4375
|
-
|
|
4376
|
-
rowList.push(fullDataRowIdData[rowid].row);
|
|
4377
|
-
}
|
|
4378
|
-
}
|
|
4379
|
-
else {
|
|
4380
|
-
if (afterFullRowMaps[rowid]) {
|
|
4381
|
-
rowList.push(afterFullRowMaps[rowid]);
|
|
4382
|
-
}
|
|
4375
|
+
if (currMaps[rowid]) {
|
|
4376
|
+
rowList.push(fullDataRowIdData[rowid].row);
|
|
4383
4377
|
}
|
|
4384
4378
|
});
|
|
4385
4379
|
}
|
|
@@ -4937,8 +4931,9 @@ const Methods = {
|
|
|
4937
4931
|
evnt.stopPropagation();
|
|
4938
4932
|
evnt.preventDefault();
|
|
4939
4933
|
const { column } = params;
|
|
4940
|
-
const { overflowX, scrollbarHeight } = reactData;
|
|
4934
|
+
const { columnStore, overflowX, scrollbarHeight } = reactData;
|
|
4941
4935
|
const { elemStore, visibleColumn } = internalData;
|
|
4936
|
+
const { leftList, rightList } = columnStore;
|
|
4942
4937
|
const resizableOpts = $xeTable.computeResizableOpts;
|
|
4943
4938
|
const osbHeight = overflowX ? scrollbarHeight : 0;
|
|
4944
4939
|
const tableEl = $xeTable.$refs.refElem;
|
|
@@ -4948,10 +4943,11 @@ const Methods = {
|
|
|
4948
4943
|
if (!resizeBarElem) {
|
|
4949
4944
|
return;
|
|
4950
4945
|
}
|
|
4946
|
+
const isLeftFixed = fixedType === 'left';
|
|
4947
|
+
const isRightFixed = fixedType === 'right';
|
|
4951
4948
|
const resizeTipElem = resizeBarElem.firstElementChild;
|
|
4952
4949
|
const scrollbarXToTop = $xeTable.computeScrollbarXToTop;
|
|
4953
4950
|
const { clientX: dragClientX } = evnt;
|
|
4954
|
-
const wrapperElem = $xeTable.$refs.refElem;
|
|
4955
4951
|
const dragBtnElem = evnt.target;
|
|
4956
4952
|
let resizeColumn = column;
|
|
4957
4953
|
if (column.children && column.children.length) {
|
|
@@ -4966,30 +4962,32 @@ const Methods = {
|
|
|
4966
4962
|
if (!bodyScrollElem) {
|
|
4967
4963
|
return;
|
|
4968
4964
|
}
|
|
4969
|
-
const
|
|
4965
|
+
const tableRect = tableEl.getBoundingClientRect();
|
|
4966
|
+
const rightContainerRect = rightContainerElem ? rightContainerElem.getBoundingClientRect() : null;
|
|
4967
|
+
const cellRect = cell.getBoundingClientRect();
|
|
4968
|
+
const dragBtnRect = dragBtnElem.getBoundingClientRect();
|
|
4970
4969
|
const dragBtnWidth = dragBtnElem.clientWidth;
|
|
4971
4970
|
const dragBtnOffsetWidth = Math.floor(dragBtnWidth / 2);
|
|
4971
|
+
const dragPosLeft = dragBtnRect.x - tableRect.x + dragBtnOffsetWidth;
|
|
4972
4972
|
const minInterval = getColReMinWidth(cellParams) - dragBtnOffsetWidth; // 列之间的最小间距
|
|
4973
|
-
|
|
4974
|
-
|
|
4975
|
-
|
|
4976
|
-
|
|
4977
|
-
// 计算左右侧固定列偏移量
|
|
4978
|
-
let fixedOffsetWidth = 0;
|
|
4973
|
+
const dragMinLeft = isRightFixed ? 0 : (cellRect.x - tableRect.x + dragBtnWidth + minInterval);
|
|
4974
|
+
const dragMaxLeft = cellRect.x - tableRect.x + cell.clientWidth - minInterval;
|
|
4975
|
+
let fixedLeftRemainWidth = 0;
|
|
4976
|
+
let fixedRightRemainWidth = 0;
|
|
4979
4977
|
if (isLeftFixed || isRightFixed) {
|
|
4980
|
-
|
|
4981
|
-
|
|
4982
|
-
|
|
4983
|
-
|
|
4984
|
-
|
|
4978
|
+
let isMach = false;
|
|
4979
|
+
const fixedColumn = isLeftFixed ? leftList : rightList;
|
|
4980
|
+
for (let i = 0; i < fixedColumn.length; i++) {
|
|
4981
|
+
const item = fixedColumn[i];
|
|
4982
|
+
if (isMach) {
|
|
4983
|
+
fixedLeftRemainWidth += item.renderWidth;
|
|
4985
4984
|
}
|
|
4986
|
-
else
|
|
4987
|
-
|
|
4985
|
+
else {
|
|
4986
|
+
isMach = item.id === resizeColumn.id;
|
|
4987
|
+
if (!isMach) {
|
|
4988
|
+
fixedRightRemainWidth += item.renderWidth;
|
|
4989
|
+
}
|
|
4988
4990
|
}
|
|
4989
|
-
tempCellElem = tempCellElem[siblingProp];
|
|
4990
|
-
}
|
|
4991
|
-
if (isRightFixed && rightContainerElem) {
|
|
4992
|
-
dragPosLeft = rightContainerElem.offsetLeft + fixedOffsetWidth;
|
|
4993
4991
|
}
|
|
4994
4992
|
}
|
|
4995
4993
|
// 处理拖动事件
|
|
@@ -4999,29 +4997,25 @@ const Methods = {
|
|
|
4999
4997
|
const tableHeight = tableEl.clientHeight;
|
|
5000
4998
|
const offsetX = evnt.clientX - dragClientX;
|
|
5001
4999
|
let left = dragPosLeft + offsetX;
|
|
5002
|
-
const scrollLeft = fixedType ? 0 : bodyScrollElem.scrollLeft;
|
|
5003
5000
|
if (isLeftFixed) {
|
|
5004
|
-
|
|
5005
|
-
|
|
5001
|
+
if (rightContainerRect) {
|
|
5002
|
+
left = Math.min(left, rightContainerRect.x - tableRect.x - fixedLeftRemainWidth - minInterval);
|
|
5003
|
+
}
|
|
5006
5004
|
}
|
|
5007
5005
|
else if (isRightFixed) {
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5011
|
-
|
|
5012
|
-
else {
|
|
5013
|
-
dragMinLeft = Math.max(bodyScrollElem.scrollLeft, dragMinLeft);
|
|
5014
|
-
// left = Math.min(left, bodyScrollElem.clientWidth + bodyScrollElem.scrollLeft - 40)
|
|
5006
|
+
if (leftContainerElem) {
|
|
5007
|
+
left = Math.max(left, leftContainerElem.clientWidth + fixedRightRemainWidth + minInterval);
|
|
5008
|
+
}
|
|
5009
|
+
left = Math.min(left, dragMaxLeft);
|
|
5015
5010
|
}
|
|
5016
5011
|
dragLeft = Math.max(left, dragMinLeft);
|
|
5017
|
-
const resizeBarLeft = Math.max(1, dragLeft
|
|
5012
|
+
const resizeBarLeft = Math.max(1, dragLeft);
|
|
5018
5013
|
resizeBarElem.style.left = `${resizeBarLeft}px`;
|
|
5019
5014
|
resizeBarElem.style.top = `${scrollbarXToTop ? osbHeight : 0}px`;
|
|
5020
5015
|
resizeBarElem.style.height = `${scrollbarXToTop ? tableHeight - osbHeight : tableHeight}px`;
|
|
5021
5016
|
if (resizableOpts.showDragTip && resizeTipElem) {
|
|
5022
|
-
resizeTipElem.textContent = getI18n('vxe.table.resizeColTip', [resizeColumn.renderWidth + (isRightFixed ? dragPosLeft - dragLeft : dragLeft - dragPosLeft)]);
|
|
5017
|
+
resizeTipElem.textContent = getI18n('vxe.table.resizeColTip', [Math.floor(resizeColumn.renderWidth + (isRightFixed ? dragPosLeft - dragLeft : dragLeft - dragPosLeft))]);
|
|
5023
5018
|
const tableWrapperWidth = tableEl.clientWidth;
|
|
5024
|
-
const wrapperRect = wrapperElem.getBoundingClientRect();
|
|
5025
5019
|
const resizeBarWidth = resizeBarElem.clientWidth;
|
|
5026
5020
|
const resizeTipWidth = resizeTipElem.clientWidth;
|
|
5027
5021
|
const resizeTipHeight = resizeTipElem.clientHeight;
|
|
@@ -5033,7 +5027,7 @@ const Methods = {
|
|
|
5033
5027
|
resizeTipLeft += tableWrapperWidth - resizeBarLeft;
|
|
5034
5028
|
}
|
|
5035
5029
|
resizeTipElem.style.left = `${resizeTipLeft}px`;
|
|
5036
|
-
resizeTipElem.style.top = `${Math.min(tableHeight - resizeTipHeight, Math.max(0, evnt.clientY -
|
|
5030
|
+
resizeTipElem.style.top = `${Math.min(tableHeight - resizeTipHeight, Math.max(0, evnt.clientY - tableRect.y - resizeTipHeight / 2))}px`;
|
|
5037
5031
|
}
|
|
5038
5032
|
reactData.isDragResize = true;
|
|
5039
5033
|
};
|
|
@@ -9993,7 +9987,7 @@ const Methods = {
|
|
|
9993
9987
|
}
|
|
9994
9988
|
};
|
|
9995
9989
|
// Module methods
|
|
9996
|
-
const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,resetFilterPanel,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
|
|
9990
|
+
const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,saveFilterPanelByEvent,resetFilterPanel,resetFilterPanelByEvent,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
|
|
9997
9991
|
funcs.forEach(name => {
|
|
9998
9992
|
Methods[name] = function (...args) {
|
|
9999
9993
|
if (!this[`_${name}`]) {
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
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.18";
|
|
2224
2224
|
core_.VxeUI.version = version;
|
|
2225
2225
|
core_.VxeUI.tableVersion = version;
|
|
2226
2226
|
core_.VxeUI.setConfig({
|
|
@@ -2858,7 +2858,7 @@ function isNodeElement(elem) {
|
|
|
2858
2858
|
const {
|
|
2859
2859
|
log: log_log
|
|
2860
2860
|
} = core_.VxeUI;
|
|
2861
|
-
const log_version = `table v${"3.15.
|
|
2861
|
+
const log_version = `table v${"3.15.18"}`;
|
|
2862
2862
|
const warnLog = log_log.create('warn', log_version);
|
|
2863
2863
|
const errLog = log_log.create('error', log_version);
|
|
2864
2864
|
;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
|
|
@@ -10410,15 +10410,10 @@ const Methods = {
|
|
|
10410
10410
|
rowList = currTableData.filter(row => external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, checkField));
|
|
10411
10411
|
}
|
|
10412
10412
|
} else {
|
|
10413
|
+
const currMaps = isFull || treeConfig && !transform ? fullDataRowIdData : afterFullRowMaps;
|
|
10413
10414
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(selectCheckboxMaps, (row, rowid) => {
|
|
10414
|
-
if (
|
|
10415
|
-
|
|
10416
|
-
rowList.push(fullDataRowIdData[rowid].row);
|
|
10417
|
-
}
|
|
10418
|
-
} else {
|
|
10419
|
-
if (afterFullRowMaps[rowid]) {
|
|
10420
|
-
rowList.push(afterFullRowMaps[rowid]);
|
|
10421
|
-
}
|
|
10415
|
+
if (currMaps[rowid]) {
|
|
10416
|
+
rowList.push(fullDataRowIdData[rowid].row);
|
|
10422
10417
|
}
|
|
10423
10418
|
});
|
|
10424
10419
|
}
|
|
@@ -11042,6 +11037,7 @@ const Methods = {
|
|
|
11042
11037
|
column
|
|
11043
11038
|
} = params;
|
|
11044
11039
|
const {
|
|
11040
|
+
columnStore,
|
|
11045
11041
|
overflowX,
|
|
11046
11042
|
scrollbarHeight
|
|
11047
11043
|
} = reactData;
|
|
@@ -11049,6 +11045,10 @@ const Methods = {
|
|
|
11049
11045
|
elemStore,
|
|
11050
11046
|
visibleColumn
|
|
11051
11047
|
} = internalData;
|
|
11048
|
+
const {
|
|
11049
|
+
leftList,
|
|
11050
|
+
rightList
|
|
11051
|
+
} = columnStore;
|
|
11052
11052
|
const resizableOpts = $xeTable.computeResizableOpts;
|
|
11053
11053
|
const osbHeight = overflowX ? scrollbarHeight : 0;
|
|
11054
11054
|
const tableEl = $xeTable.$refs.refElem;
|
|
@@ -11058,12 +11058,13 @@ const Methods = {
|
|
|
11058
11058
|
if (!resizeBarElem) {
|
|
11059
11059
|
return;
|
|
11060
11060
|
}
|
|
11061
|
+
const isLeftFixed = fixedType === 'left';
|
|
11062
|
+
const isRightFixed = fixedType === 'right';
|
|
11061
11063
|
const resizeTipElem = resizeBarElem.firstElementChild;
|
|
11062
11064
|
const scrollbarXToTop = $xeTable.computeScrollbarXToTop;
|
|
11063
11065
|
const {
|
|
11064
11066
|
clientX: dragClientX
|
|
11065
11067
|
} = evnt;
|
|
11066
|
-
const wrapperElem = $xeTable.$refs.refElem;
|
|
11067
11068
|
const dragBtnElem = evnt.target;
|
|
11068
11069
|
let resizeColumn = column;
|
|
11069
11070
|
if (column.children && column.children.length) {
|
|
@@ -11080,29 +11081,31 @@ const Methods = {
|
|
|
11080
11081
|
if (!bodyScrollElem) {
|
|
11081
11082
|
return;
|
|
11082
11083
|
}
|
|
11083
|
-
const
|
|
11084
|
+
const tableRect = tableEl.getBoundingClientRect();
|
|
11085
|
+
const rightContainerRect = rightContainerElem ? rightContainerElem.getBoundingClientRect() : null;
|
|
11086
|
+
const cellRect = cell.getBoundingClientRect();
|
|
11087
|
+
const dragBtnRect = dragBtnElem.getBoundingClientRect();
|
|
11084
11088
|
const dragBtnWidth = dragBtnElem.clientWidth;
|
|
11085
11089
|
const dragBtnOffsetWidth = Math.floor(dragBtnWidth / 2);
|
|
11090
|
+
const dragPosLeft = dragBtnRect.x - tableRect.x + dragBtnOffsetWidth;
|
|
11086
11091
|
const minInterval = getColReMinWidth(cellParams) - dragBtnOffsetWidth; // 列之间的最小间距
|
|
11087
|
-
|
|
11088
|
-
|
|
11089
|
-
|
|
11090
|
-
|
|
11091
|
-
// 计算左右侧固定列偏移量
|
|
11092
|
-
let fixedOffsetWidth = 0;
|
|
11092
|
+
const dragMinLeft = isRightFixed ? 0 : cellRect.x - tableRect.x + dragBtnWidth + minInterval;
|
|
11093
|
+
const dragMaxLeft = cellRect.x - tableRect.x + cell.clientWidth - minInterval;
|
|
11094
|
+
let fixedLeftRemainWidth = 0;
|
|
11095
|
+
let fixedRightRemainWidth = 0;
|
|
11093
11096
|
if (isLeftFixed || isRightFixed) {
|
|
11094
|
-
|
|
11095
|
-
|
|
11096
|
-
|
|
11097
|
-
|
|
11098
|
-
|
|
11099
|
-
|
|
11100
|
-
|
|
11097
|
+
let isMach = false;
|
|
11098
|
+
const fixedColumn = isLeftFixed ? leftList : rightList;
|
|
11099
|
+
for (let i = 0; i < fixedColumn.length; i++) {
|
|
11100
|
+
const item = fixedColumn[i];
|
|
11101
|
+
if (isMach) {
|
|
11102
|
+
fixedLeftRemainWidth += item.renderWidth;
|
|
11103
|
+
} else {
|
|
11104
|
+
isMach = item.id === resizeColumn.id;
|
|
11105
|
+
if (!isMach) {
|
|
11106
|
+
fixedRightRemainWidth += item.renderWidth;
|
|
11107
|
+
}
|
|
11101
11108
|
}
|
|
11102
|
-
tempCellElem = tempCellElem[siblingProp];
|
|
11103
|
-
}
|
|
11104
|
-
if (isRightFixed && rightContainerElem) {
|
|
11105
|
-
dragPosLeft = rightContainerElem.offsetLeft + fixedOffsetWidth;
|
|
11106
11109
|
}
|
|
11107
11110
|
}
|
|
11108
11111
|
// 处理拖动事件
|
|
@@ -11112,27 +11115,24 @@ const Methods = {
|
|
|
11112
11115
|
const tableHeight = tableEl.clientHeight;
|
|
11113
11116
|
const offsetX = evnt.clientX - dragClientX;
|
|
11114
11117
|
let left = dragPosLeft + offsetX;
|
|
11115
|
-
const scrollLeft = fixedType ? 0 : bodyScrollElem.scrollLeft;
|
|
11116
11118
|
if (isLeftFixed) {
|
|
11117
|
-
|
|
11118
|
-
|
|
11119
|
+
if (rightContainerRect) {
|
|
11120
|
+
left = Math.min(left, rightContainerRect.x - tableRect.x - fixedLeftRemainWidth - minInterval);
|
|
11121
|
+
}
|
|
11119
11122
|
} else if (isRightFixed) {
|
|
11120
|
-
|
|
11121
|
-
|
|
11122
|
-
|
|
11123
|
-
|
|
11124
|
-
dragMinLeft = Math.max(bodyScrollElem.scrollLeft, dragMinLeft);
|
|
11125
|
-
// left = Math.min(left, bodyScrollElem.clientWidth + bodyScrollElem.scrollLeft - 40)
|
|
11123
|
+
if (leftContainerElem) {
|
|
11124
|
+
left = Math.max(left, leftContainerElem.clientWidth + fixedRightRemainWidth + minInterval);
|
|
11125
|
+
}
|
|
11126
|
+
left = Math.min(left, dragMaxLeft);
|
|
11126
11127
|
}
|
|
11127
11128
|
dragLeft = Math.max(left, dragMinLeft);
|
|
11128
|
-
const resizeBarLeft = Math.max(1, dragLeft
|
|
11129
|
+
const resizeBarLeft = Math.max(1, dragLeft);
|
|
11129
11130
|
resizeBarElem.style.left = `${resizeBarLeft}px`;
|
|
11130
11131
|
resizeBarElem.style.top = `${scrollbarXToTop ? osbHeight : 0}px`;
|
|
11131
11132
|
resizeBarElem.style.height = `${scrollbarXToTop ? tableHeight - osbHeight : tableHeight}px`;
|
|
11132
11133
|
if (resizableOpts.showDragTip && resizeTipElem) {
|
|
11133
|
-
resizeTipElem.textContent = methods_getI18n('vxe.table.resizeColTip', [resizeColumn.renderWidth + (isRightFixed ? dragPosLeft - dragLeft : dragLeft - dragPosLeft)]);
|
|
11134
|
+
resizeTipElem.textContent = methods_getI18n('vxe.table.resizeColTip', [Math.floor(resizeColumn.renderWidth + (isRightFixed ? dragPosLeft - dragLeft : dragLeft - dragPosLeft))]);
|
|
11134
11135
|
const tableWrapperWidth = tableEl.clientWidth;
|
|
11135
|
-
const wrapperRect = wrapperElem.getBoundingClientRect();
|
|
11136
11136
|
const resizeBarWidth = resizeBarElem.clientWidth;
|
|
11137
11137
|
const resizeTipWidth = resizeTipElem.clientWidth;
|
|
11138
11138
|
const resizeTipHeight = resizeTipElem.clientHeight;
|
|
@@ -11143,7 +11143,7 @@ const Methods = {
|
|
|
11143
11143
|
resizeTipLeft += tableWrapperWidth - resizeBarLeft;
|
|
11144
11144
|
}
|
|
11145
11145
|
resizeTipElem.style.left = `${resizeTipLeft}px`;
|
|
11146
|
-
resizeTipElem.style.top = `${Math.min(tableHeight - resizeTipHeight, Math.max(0, evnt.clientY -
|
|
11146
|
+
resizeTipElem.style.top = `${Math.min(tableHeight - resizeTipHeight, Math.max(0, evnt.clientY - tableRect.y - resizeTipHeight / 2))}px`;
|
|
11147
11147
|
}
|
|
11148
11148
|
reactData.isDragResize = true;
|
|
11149
11149
|
};
|
|
@@ -16934,7 +16934,7 @@ const Methods = {
|
|
|
16934
16934
|
}
|
|
16935
16935
|
};
|
|
16936
16936
|
// Module methods
|
|
16937
|
-
const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,resetFilterPanel,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
|
|
16937
|
+
const funcs = 'setFilter,openFilter,clearFilter,saveFilterPanel,saveFilterPanelByEvent,resetFilterPanel,resetFilterPanelByEvent,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
|
|
16938
16938
|
funcs.forEach(name => {
|
|
16939
16939
|
Methods[name] = function (...args) {
|
|
16940
16940
|
if (!this[`_${name}`]) {
|
|
@@ -19857,7 +19857,7 @@ const renderPopupPanel = (h, _vm) => {
|
|
|
19857
19857
|
const {
|
|
19858
19858
|
mode
|
|
19859
19859
|
} = customOpts;
|
|
19860
|
-
if (!VxeUIModalComponent) {
|
|
19860
|
+
if (!VxeUIModalComponent && mode === 'modal') {
|
|
19861
19861
|
errLog('vxe.error.reqComp', ['vxe-modal']);
|
|
19862
19862
|
}
|
|
19863
19863
|
if (!VxeUIDrawerComponent && mode === 'drawer') {
|
|
@@ -21655,11 +21655,21 @@ const {
|
|
|
21655
21655
|
$xeTable.handleFilterConfirmFilter(null);
|
|
21656
21656
|
return $xeTable.$nextTick();
|
|
21657
21657
|
},
|
|
21658
|
+
_saveFilterPanelByEvent(evnt) {
|
|
21659
|
+
const $xeTable = this;
|
|
21660
|
+
$xeTable.handleFilterConfirmFilter(evnt);
|
|
21661
|
+
return $xeTable.$nextTick();
|
|
21662
|
+
},
|
|
21658
21663
|
_resetFilterPanel() {
|
|
21659
21664
|
const $xeTable = this;
|
|
21660
21665
|
$xeTable.handleFilterResetFilter(null);
|
|
21661
21666
|
return $xeTable.$nextTick();
|
|
21662
21667
|
},
|
|
21668
|
+
_resetFilterPanelByEvent(evnt) {
|
|
21669
|
+
const $xeTable = this;
|
|
21670
|
+
$xeTable.handleFilterResetFilter(evnt);
|
|
21671
|
+
return $xeTable.$nextTick();
|
|
21672
|
+
},
|
|
21663
21673
|
_getCheckedFilters() {
|
|
21664
21674
|
const {
|
|
21665
21675
|
tableFullColumn
|