vxe-table 4.15.0-beta.5 → 4.15.0-beta.6
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/ar-EG.js +2 -1
- package/es/locale/lang/de-DE.js +2 -1
- package/es/locale/lang/en-US.js +2 -1
- package/es/locale/lang/es-ES.js +2 -1
- package/es/locale/lang/fr-FR.js +2 -1
- package/es/locale/lang/hu-HU.js +2 -1
- package/es/locale/lang/hy-AM.js +2 -1
- package/es/locale/lang/id-ID.js +2 -1
- package/es/locale/lang/it-IT.js +2 -1
- package/es/locale/lang/ja-JP.js +2 -1
- package/es/locale/lang/ko-KR.js +2 -1
- package/es/locale/lang/ms-MY.js +2 -1
- package/es/locale/lang/nb-NO.js +2 -1
- package/es/locale/lang/pt-BR.js +2 -1
- package/es/locale/lang/ru-RU.js +2 -1
- package/es/locale/lang/th-TH.js +2 -1
- package/es/locale/lang/ug-CN.js +2 -1
- package/es/locale/lang/uk-UA.js +2 -1
- package/es/locale/lang/uz-UZ.js +2 -1
- package/es/locale/lang/vi-VN.js +2 -1
- package/es/locale/lang/zh-CHT.js +2 -1
- package/es/locale/lang/zh-CN.js +2 -1
- package/es/style.css +1 -1
- package/es/table/module/filter/hook.js +9 -22
- package/es/table/src/table.js +26 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +17 -38
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +2 -1
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +2 -1
- package/lib/locale/lang/de-DE.js +2 -1
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +2 -1
- package/lib/locale/lang/en-US.js +2 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +2 -1
- package/lib/locale/lang/es-ES.js +2 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +2 -1
- package/lib/locale/lang/fr-FR.js +2 -1
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +2 -1
- package/lib/locale/lang/hu-HU.js +2 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +2 -1
- package/lib/locale/lang/hy-AM.js +2 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +2 -1
- package/lib/locale/lang/id-ID.js +2 -1
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +2 -1
- package/lib/locale/lang/it-IT.js +2 -1
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +2 -1
- package/lib/locale/lang/ja-JP.js +2 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +2 -1
- package/lib/locale/lang/ko-KR.js +2 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +2 -1
- package/lib/locale/lang/ms-MY.js +2 -1
- package/lib/locale/lang/ms-MY.min.js +1 -1
- package/lib/locale/lang/ms-MY.umd.js +2 -1
- package/lib/locale/lang/nb-NO.js +2 -1
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +2 -1
- package/lib/locale/lang/pt-BR.js +2 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +2 -1
- package/lib/locale/lang/ru-RU.js +2 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +2 -1
- package/lib/locale/lang/th-TH.js +2 -1
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +2 -1
- package/lib/locale/lang/ug-CN.js +2 -1
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +2 -1
- package/lib/locale/lang/uk-UA.js +2 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +2 -1
- package/lib/locale/lang/uz-UZ.js +2 -1
- package/lib/locale/lang/uz-UZ.min.js +1 -1
- package/lib/locale/lang/uz-UZ.umd.js +2 -1
- package/lib/locale/lang/vi-VN.js +2 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +2 -1
- package/lib/locale/lang/zh-CHT.js +2 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CHT.umd.js +2 -1
- package/lib/locale/lang/zh-CN.js +2 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +2 -1
- package/lib/style.css +1 -1
- package/lib/table/module/filter/hook.js +10 -33
- package/lib/table/module/filter/hook.min.js +1 -1
- package/lib/table/src/table.js +3 -2
- 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/locale/lang/ar-EG.ts +2 -1
- package/packages/locale/lang/de-DE.ts +2 -1
- package/packages/locale/lang/en-US.ts +2 -1
- package/packages/locale/lang/es-ES.ts +2 -1
- package/packages/locale/lang/fr-FR.ts +2 -1
- package/packages/locale/lang/hu-HU.ts +2 -1
- package/packages/locale/lang/hy-AM.ts +2 -1
- package/packages/locale/lang/id-ID.ts +2 -1
- package/packages/locale/lang/it-IT.ts +2 -1
- package/packages/locale/lang/ja-JP.ts +2 -1
- package/packages/locale/lang/ko-KR.ts +2 -1
- package/packages/locale/lang/ms-MY.ts +2 -1
- package/packages/locale/lang/nb-NO.ts +2 -1
- package/packages/locale/lang/pt-BR.ts +2 -1
- package/packages/locale/lang/ru-RU.ts +2 -1
- package/packages/locale/lang/th-TH.ts +2 -1
- package/packages/locale/lang/ug-CN.ts +2 -1
- package/packages/locale/lang/uk-UA.ts +2 -1
- package/packages/locale/lang/uz-UZ.ts +2 -1
- package/packages/locale/lang/vi-VN.ts +2 -1
- package/packages/locale/lang/zh-CHT.ts +2 -1
- package/packages/locale/lang/zh-CN.ts +2 -1
- package/packages/table/module/filter/hook.ts +10 -24
- package/packages/table/src/table.ts +25 -0
- /package/es/{iconfont.1753255964722.ttf → iconfont.1753325046532.ttf} +0 -0
- /package/es/{iconfont.1753255964722.woff → iconfont.1753325046532.woff} +0 -0
- /package/es/{iconfont.1753255964722.woff2 → iconfont.1753325046532.woff2} +0 -0
- /package/lib/{iconfont.1753255964722.ttf → iconfont.1753325046532.ttf} +0 -0
- /package/lib/{iconfont.1753255964722.woff → iconfont.1753325046532.woff} +0 -0
- /package/lib/{iconfont.1753255964722.woff2 → iconfont.1753325046532.woff2} +0 -0
|
@@ -75,27 +75,9 @@ hooks.add('tableFilterModule', {
|
|
|
75
75
|
const { transfer } = filterOpts;
|
|
76
76
|
const tableRect = el.getBoundingClientRect();
|
|
77
77
|
const btnElem = evnt.currentTarget;
|
|
78
|
-
|
|
79
|
-
const compConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null;
|
|
80
|
-
const frMethod = column.filterRecoverMethod || (compConf ? (compConf.tableFilterRecoverMethod || compConf.filterRecoverMethod) : null);
|
|
78
|
+
$xeTable.handleFilterOptions(column);
|
|
81
79
|
internalData._currFilterParams = params;
|
|
82
|
-
|
|
83
|
-
multiple: filterMultiple,
|
|
84
|
-
options: filters,
|
|
85
|
-
column,
|
|
86
|
-
style: null
|
|
87
|
-
});
|
|
88
|
-
// 复原状态
|
|
89
|
-
filterStore.options.forEach((option) => {
|
|
90
|
-
const { _checked, checked } = option;
|
|
91
|
-
option._checked = checked;
|
|
92
|
-
if (!checked && _checked !== checked) {
|
|
93
|
-
if (frMethod) {
|
|
94
|
-
frMethod({ option, column, $table: $xeTable });
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
this.checkFilterOptions();
|
|
80
|
+
filterStore.style = null;
|
|
99
81
|
filterStore.visible = true;
|
|
100
82
|
initStore.filter = true;
|
|
101
83
|
nextTick(() => {
|
|
@@ -265,12 +247,17 @@ hooks.add('tableFilterModule', {
|
|
|
265
247
|
* @param {Array} options 选项
|
|
266
248
|
*/
|
|
267
249
|
setFilter(fieldOrColumn, options, isUpdate) {
|
|
250
|
+
const { filterStore } = reactData;
|
|
268
251
|
const column = handleFieldOrColumn($xeTable, fieldOrColumn);
|
|
269
252
|
if (column && column.filters) {
|
|
270
253
|
column.filters = toFilters(options || []);
|
|
271
254
|
if (isUpdate) {
|
|
272
|
-
|
|
273
|
-
|
|
255
|
+
return $xeTable.handleColumnConfirmFilter(column, null);
|
|
256
|
+
}
|
|
257
|
+
else {
|
|
258
|
+
if (filterStore.visible) {
|
|
259
|
+
$xeTable.handleFilterOptions(column);
|
|
260
|
+
}
|
|
274
261
|
}
|
|
275
262
|
}
|
|
276
263
|
return nextTick();
|
package/es/table/src/table.js
CHANGED
|
@@ -5883,12 +5883,18 @@ export default defineVxeComponent({
|
|
|
5883
5883
|
return sortList;
|
|
5884
5884
|
},
|
|
5885
5885
|
setFilterByEvent(evnt, fieldOrColumn, options, isUpdate) {
|
|
5886
|
+
const { filterStore } = reactData;
|
|
5886
5887
|
const column = handleFieldOrColumn($xeTable, fieldOrColumn);
|
|
5887
5888
|
if (column && column.filters) {
|
|
5888
5889
|
column.filters = toFilters(options || []);
|
|
5889
5890
|
if (isUpdate) {
|
|
5890
5891
|
return $xeTable.handleColumnConfirmFilter(column, evnt);
|
|
5891
5892
|
}
|
|
5893
|
+
else {
|
|
5894
|
+
if (filterStore.visible) {
|
|
5895
|
+
$xeTable.handleFilterOptions(column);
|
|
5896
|
+
}
|
|
5897
|
+
}
|
|
5892
5898
|
}
|
|
5893
5899
|
return nextTick();
|
|
5894
5900
|
},
|
|
@@ -8304,6 +8310,26 @@ export default defineVxeComponent({
|
|
|
8304
8310
|
handleRefreshColumnQueue() {
|
|
8305
8311
|
reactData.reColumnFlag++;
|
|
8306
8312
|
},
|
|
8313
|
+
handleFilterOptions(column) {
|
|
8314
|
+
const { filterStore } = reactData;
|
|
8315
|
+
const { filters, filterMultiple, filterRender } = column;
|
|
8316
|
+
const compConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null;
|
|
8317
|
+
const frMethod = column.filterRecoverMethod || (compConf ? (compConf.tableFilterRecoverMethod || compConf.filterRecoverMethod) : null);
|
|
8318
|
+
filterStore.multiple = filterMultiple;
|
|
8319
|
+
filterStore.options = filters;
|
|
8320
|
+
filterStore.column = column;
|
|
8321
|
+
// 复原状态
|
|
8322
|
+
filterStore.options.forEach((option) => {
|
|
8323
|
+
const { _checked, checked } = option;
|
|
8324
|
+
option._checked = checked;
|
|
8325
|
+
if (!checked && _checked !== checked) {
|
|
8326
|
+
if (frMethod) {
|
|
8327
|
+
frMethod({ option, column, $table: $xeTable });
|
|
8328
|
+
}
|
|
8329
|
+
}
|
|
8330
|
+
});
|
|
8331
|
+
$xeTable.checkFilterOptions();
|
|
8332
|
+
},
|
|
8307
8333
|
preventEvent(evnt, type, args, next, end) {
|
|
8308
8334
|
let evntList = interceptor.get(type);
|
|
8309
8335
|
// 兼容老版本
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
package/lib/index.umd.js
CHANGED
|
@@ -3138,7 +3138,7 @@ function eqEmptyValue(cellValue) {
|
|
|
3138
3138
|
;// ./packages/ui/index.ts
|
|
3139
3139
|
|
|
3140
3140
|
|
|
3141
|
-
const version = "4.15.0-beta.
|
|
3141
|
+
const version = "4.15.0-beta.6";
|
|
3142
3142
|
core_.VxeUI.version = version;
|
|
3143
3143
|
core_.VxeUI.tableVersion = version;
|
|
3144
3144
|
core_.VxeUI.setConfig({
|
|
@@ -3628,7 +3628,7 @@ var esnext_iterator_some = __webpack_require__(7550);
|
|
|
3628
3628
|
const {
|
|
3629
3629
|
log: log_log
|
|
3630
3630
|
} = core_.VxeUI;
|
|
3631
|
-
const log_version = `table v${"4.15.0-beta.
|
|
3631
|
+
const log_version = `table v${"4.15.0-beta.6"}`;
|
|
3632
3632
|
const warnLog = log_log.create('warn', log_version);
|
|
3633
3633
|
const errLog = log_log.create('error', log_version);
|
|
3634
3634
|
;// ./packages/table/src/columnInfo.ts
|
|
@@ -11443,7 +11443,7 @@ if(!remote){tablePrivateMethods.handleTableData(true);}return (0,external_common
|
|
|
11443
11443
|
* 清空指定列的排序条件
|
|
11444
11444
|
* 如果为空则清空所有列的排序条件
|
|
11445
11445
|
* @param {String} fieldOrColumn 列或字段名
|
|
11446
|
-
*/clearSort(fieldOrColumn){const sortOpts=computeSortOpts.value;if(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){column.order=null;}}else{clearAllSort();}if(!sortOpts.remote){$xeTable.handleTableData(true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateRowOffsetTop();return updateStyle();});},clearSortByEvent(evnt,fieldOrColumn){const{tableFullColumn}=internalData;const sortOpts=computeSortOpts.value;const sortCols=[];let column=null;if(evnt){if(fieldOrColumn){column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){column.order=null;}}else{tableFullColumn.forEach(column=>{if(column.order){column.order=null;sortCols.push(column);}});}if(!sortOpts.remote){$xeTable.handleTableData(true);}if(sortCols.length){const params={$table:$xeTable,$event:evnt,cols:sortCols,sortList:[]};dispatchEvent('clear-all-sort',params,evnt);}else if(column){$xeTable.handleColumnSortEvent(evnt,column);}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateRowOffsetTop();return updateStyle();});},isSort(fieldOrColumn){if(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);return column?column.sortable&&!!column.order:false;}return tableMethods.getSortColumns().length>0;},getSortColumns(){const sortOpts=computeSortOpts.value;const{multiple,chronological}=sortOpts;const sortList=[];const{tableFullColumn}=internalData;tableFullColumn.forEach(column=>{const{field,order}=column;if(column.sortable&&order){sortList.push({column,field,property:field,order:order,sortTime:column.sortTime});}});if(multiple&&chronological&&sortList.length>1){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(sortList,'sortTime');}return sortList;},setFilterByEvent(evnt,fieldOrColumn,options,isUpdate){const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column&&column.filters){column.filters=toFilters(options||[]);if(isUpdate){return $xeTable.handleColumnConfirmFilter(column,evnt);}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
11446
|
+
*/clearSort(fieldOrColumn){const sortOpts=computeSortOpts.value;if(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){column.order=null;}}else{clearAllSort();}if(!sortOpts.remote){$xeTable.handleTableData(true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateRowOffsetTop();return updateStyle();});},clearSortByEvent(evnt,fieldOrColumn){const{tableFullColumn}=internalData;const sortOpts=computeSortOpts.value;const sortCols=[];let column=null;if(evnt){if(fieldOrColumn){column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column){column.order=null;}}else{tableFullColumn.forEach(column=>{if(column.order){column.order=null;sortCols.push(column);}});}if(!sortOpts.remote){$xeTable.handleTableData(true);}if(sortCols.length){const params={$table:$xeTable,$event:evnt,cols:sortCols,sortList:[]};dispatchEvent('clear-all-sort',params,evnt);}else if(column){$xeTable.handleColumnSortEvent(evnt,column);}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{updateRowOffsetTop();return updateStyle();});},isSort(fieldOrColumn){if(fieldOrColumn){const column=handleFieldOrColumn($xeTable,fieldOrColumn);return column?column.sortable&&!!column.order:false;}return tableMethods.getSortColumns().length>0;},getSortColumns(){const sortOpts=computeSortOpts.value;const{multiple,chronological}=sortOpts;const sortList=[];const{tableFullColumn}=internalData;tableFullColumn.forEach(column=>{const{field,order}=column;if(column.sortable&&order){sortList.push({column,field,property:field,order:order,sortTime:column.sortTime});}});if(multiple&&chronological&&sortList.length>1){return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().orderBy(sortList,'sortTime');}return sortList;},setFilterByEvent(evnt,fieldOrColumn,options,isUpdate){const{filterStore}=reactData;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column&&column.filters){column.filters=toFilters(options||[]);if(isUpdate){return $xeTable.handleColumnConfirmFilter(column,evnt);}else{if(filterStore.visible){$xeTable.handleFilterOptions(column);}}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
11447
11447
|
* 关闭筛选
|
|
11448
11448
|
* @param {Event} evnt 事件
|
|
11449
11449
|
*/closeFilter(){const{filterStore}=reactData;const{column,visible}=filterStore;filterStore.isAllSelected=false;filterStore.isIndeterminate=false;filterStore.options=[];filterStore.visible=false;if(visible){dispatchEvent('filter-visible',{column,property:column.field,field:column.field,filterList:()=>$xeTable.getCheckedFilters(),visible:false},null);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
@@ -11630,7 +11630,8 @@ if(treeConfig){const childrenField=treeOpts.children||treeOpts.childrenField;ext
|
|
|
11630
11630
|
const dragMinLeft=isRightFixed?0:cellRect.x-tableRect.x+dragBtnWidth+minInterval;const dragMaxLeft=cellRect.x-tableRect.x+cell.clientWidth-minInterval;let fixedLeftRemainWidth=0;let fixedRightRemainWidth=0;if(isLeftFixed||isRightFixed){let isMach=false;const fixedColumn=isLeftFixed?leftList:rightList;for(let i=0;i<fixedColumn.length;i++){const item=fixedColumn[i];if(isMach){fixedLeftRemainWidth+=item.renderWidth;}else{isMach=item.id===resizeColumn.id;if(!isMach){fixedRightRemainWidth+=item.renderWidth;}}}}// 处理拖动事件
|
|
11631
11631
|
const updateEvent=evnt=>{evnt.stopPropagation();evnt.preventDefault();const tableHeight=tableEl.clientHeight;const offsetX=evnt.clientX-dragClientX;let left=dragPosLeft+offsetX;if(isLeftFixed){if(rightContainerRect){left=Math.min(left,rightContainerRect.x-tableRect.x-fixedLeftRemainWidth-minInterval);}}else if(isRightFixed){if(leftContainerElem){left=Math.max(left,leftContainerElem.clientWidth+fixedRightRemainWidth+minInterval);}left=Math.min(left,dragMaxLeft);}dragLeft=Math.max(left,dragMinLeft);const resizeBarLeft=Math.max(1,dragLeft);resizeBarElem.style.left=`${resizeBarLeft}px`;resizeBarElem.style.top=`${scrollbarXToTop?osbHeight:0}px`;resizeBarElem.style.height=`${scrollbarXToTop?tableHeight-osbHeight:tableHeight}px`;if(resizableOpts.showDragTip&&resizeTipElem){resizeTipElem.textContent=table_getI18n('vxe.table.resizeColTip',[Math.floor(resizeColumn.renderWidth+(isRightFixed?dragPosLeft-dragLeft:dragLeft-dragPosLeft))]);const tableWrapperWidth=tableEl.clientWidth;const resizeBarWidth=resizeBarElem.clientWidth;const resizeTipWidth=resizeTipElem.clientWidth;const resizeTipHeight=resizeTipElem.clientHeight;let resizeTipLeft=-resizeTipWidth;if(resizeBarLeft<resizeTipWidth+resizeBarWidth){resizeTipLeft=0;}else if(resizeBarLeft>tableWrapperWidth){resizeTipLeft+=tableWrapperWidth-resizeBarLeft;}resizeTipElem.style.left=`${resizeTipLeft}px`;resizeTipElem.style.top=`${Math.min(tableHeight-resizeTipHeight,Math.max(0,evnt.clientY-tableRect.y-resizeTipHeight/2))}px`;}reactData.isDragResize=true;};reactData.isDragResize=true;addClass(tableEl,'col-drag--resize');resizeBarElem.style.display='block';document.onmousemove=updateEvent;document.onmouseup=function(evnt){document.onmousemove=null;document.onmouseup=null;resizeBarElem.style.display='none';internalData._lastResizeTime=Date.now();setTimeout(()=>{reactData.isDragResize=false;},50);const resizeWidth=resizeColumn.renderWidth+(isRightFixed?dragPosLeft-dragLeft:dragLeft-dragPosLeft);const resizeParams={...params,resizeWidth,resizeColumn};if(resizableOpts.dragMode==='fixed'){visibleColumn.forEach(item=>{if(item.id!==resizeColumn.id){if(!item.resizeWidth){item.resizeWidth=item.renderWidth;}}});}if($xeTable.handleColResizeCellAreaEvent){$xeTable.handleColResizeCellAreaEvent(evnt,resizeParams);}else{resizeColumn.resizeWidth=resizeWidth;handleUpdateColResize(evnt,resizeParams);}removeClass(tableEl,'col-drag--resize');};updateEvent(evnt);if($xeTable.closeMenu){$xeTable.closeMenu();}},handleColResizeDblclickEvent(evnt,params){const resizableOpts=computeResizableOpts.value;const{isDblclickAutoWidth}=resizableOpts;const el=refElem.value;if(isDblclickAutoWidth&&el){evnt.stopPropagation();evnt.preventDefault();const{fullColumnIdData}=internalData;const{column}=params;let resizeColumn=column;if(column.children&&column.children.length){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(column.children,childColumn=>{resizeColumn=childColumn;});}const colid=resizeColumn.id;const colRest=fullColumnIdData[colid];const dragBtnElem=evnt.target;const cell=dragBtnElem.parentNode;const cellParams=Object.assign(params,{cell});const colMinWidth=getColReMinWidth(cellParams);el.setAttribute('data-calc-col','Y');let resizeWidth=calcColumnAutoWidth(resizeColumn,el);el.removeAttribute('data-calc-col');if(colRest){resizeWidth=Math.max(resizeWidth,colRest.width);}resizeWidth=Math.max(colMinWidth,resizeWidth);const resizeParams={...params,resizeWidth,resizeColumn};reactData.isDragResize=false;internalData._lastResizeTime=Date.now();if($xeTable.handleColResizeDblclickCellAreaEvent){$xeTable.handleColResizeDblclickCellAreaEvent(evnt,resizeParams);}else{resizeColumn.resizeWidth=resizeWidth;handleUpdateColResize(evnt,resizeParams);}}},handleRowResizeMousedownEvent(evnt,params){evnt.stopPropagation();evnt.preventDefault();const{row}=params;const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{elemStore,fullAllDataRowIdData}=internalData;const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const scrollbarYToLeft=computeScrollbarYToLeft.value;const resizableOpts=computeResizableOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const tableEl=refElem.value;const resizeBarElem=refRowResizeBar.value;if(!resizeBarElem){return;}const{clientY:dragClientY}=evnt;const resizeTipElem=resizeBarElem.firstElementChild;const dragBtnElem=evnt.currentTarget;const tdEl=dragBtnElem.parentNode;const trEl=tdEl.parentNode;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(!bodyScrollElem){return;}const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(!rowRest){return;}const defaultRowHeight=computeDefaultRowHeight.value;const currCellHeight=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;const tableRect=tableEl.getBoundingClientRect();const trRect=trEl.getBoundingClientRect();const targetOffsetY=dragClientY-trRect.y-trEl.clientHeight;let resizeHeight=currCellHeight;const cellEl=tdEl.querySelector('.vxe-cell');let cellMinHeight=0;if(cellEl){const cellStyle=getComputedStyle(cellEl);cellMinHeight=Math.max(1,Math.ceil(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellStyle.paddingTop)+external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(cellStyle.paddingBottom)));}const minTop=trRect.y-tableRect.y+cellMinHeight;// 处理拖动事件
|
|
11632
11632
|
const updateEvent=evnt=>{evnt.stopPropagation();evnt.preventDefault();const rtWidth=tableEl.clientWidth-osbWidth;const tableHeight=tableEl.clientHeight-osbHeight;let dragTop=evnt.clientY-tableRect.y-targetOffsetY;if(dragTop<minTop){dragTop=minTop;}else{resizeHeight=Math.max(cellMinHeight,currCellHeight+evnt.clientY-dragClientY);}resizeBarElem.style.left=`${scrollbarYToLeft?osbWidth:0}px`;resizeBarElem.style.top=`${dragTop}px`;resizeBarElem.style.width=`${rtWidth}px`;if(resizableOpts.showDragTip&&resizeTipElem){resizeTipElem.textContent=table_getI18n('vxe.table.resizeRowTip',[resizeHeight]);const resizeTipWidth=resizeTipElem.clientWidth;const resizeTipHeight=resizeTipElem.clientHeight;let resizeBarLeft=Math.max(2,evnt.clientX-tableRect.x);let resizeBarTop=0;if(resizeBarLeft+resizeTipWidth>=rtWidth-2){resizeBarLeft=rtWidth-resizeTipWidth-2;}if(dragTop+resizeTipHeight>=tableHeight){resizeBarTop=tableHeight-(dragTop+resizeTipHeight);}resizeTipElem.style.left=`${resizeBarLeft}px`;resizeTipElem.style.top=`${resizeBarTop}px`;}reactData.isDragResize=true;};reactData.isDragResize=true;addClass(tableEl,'row-drag--resize');resizeBarElem.style.display='block';document.onmousemove=updateEvent;document.onmouseup=function(evnt){document.onmousemove=null;document.onmouseup=null;resizeBarElem.style.display='none';internalData._lastResizeTime=Date.now();setTimeout(()=>{reactData.isDragResize=false;},50);if(resizeHeight!==currCellHeight){const resizeParams={...params,resizeHeight,resizeRow:row};internalData.isResizeCellHeight=true;if($xeTable.handleRowResizeCellAreaEvent){$xeTable.handleRowResizeCellAreaEvent(evnt,resizeParams);}else{rowRest.resizeHeight=resizeHeight;handleUpdateRowResize(evnt,resizeParams);updateRowOffsetTop();}}removeClass(tableEl,'row-drag--resize');};updateEvent(evnt);},handleRowResizeDblclickEvent(evnt,params){const resizableOpts=computeResizableOpts.value;const{isDblclickAutoHeight}=resizableOpts;const el=refElem.value;if(isDblclickAutoHeight&&el){evnt.stopPropagation();evnt.preventDefault();const{editStore}=reactData;const{fullAllDataRowIdData}=internalData;const{actived}=editStore;const{row}=params;const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(!rowRest){return;}const handleRsHeight=()=>{el.setAttribute('data-calc-row','Y');const resizeHeight=calcCellAutoHeight(rowRest,el);el.removeAttribute('data-calc-row');const resizeParams={...params,resizeHeight,resizeRow:row};reactData.isDragResize=false;internalData._lastResizeTime=Date.now();if($xeTable.handleRowResizeDblclickCellAreaEvent){$xeTable.handleRowResizeDblclickCellAreaEvent(evnt,resizeParams);}else{rowRest.resizeHeight=resizeHeight;handleUpdateRowResize(evnt,resizeParams);}};if(actived.row||actived.column){$xeTable.clearEdit().then(handleRsHeight);}else{handleRsHeight();}}},saveCustomStore(type){const{customConfig}=props;const tableId=computeTableId.value;const customOpts=computeCustomOpts.value;const{updateStore,storage,storeOptions}=customOpts;const isAllCustom=storage===true;const storageOpts=isAllCustom?{}:Object.assign({},storage||{},storeOptions);const isCustomResizable=hangleStorageDefaultValue(storageOpts.resizable,isAllCustom);const isCustomVisible=hangleStorageDefaultValue(storageOpts.visible,isAllCustom);const isCustomFixed=hangleStorageDefaultValue(storageOpts.fixed,isAllCustom);const isCustomSort=hangleStorageDefaultValue(storageOpts.sort,isAllCustom);const isCustomAggFunc=hangleStorageDefaultValue(storageOpts.aggFunc,isAllCustom);if(type!=='reset'){// fix:修复拖动列宽,重置按钮无法点击的问题
|
|
11633
|
-
reactData.isCustomStatus=true;}if(storage&&(customConfig?isEnableConf(customOpts):customOpts.enabled)&&(isCustomResizable||isCustomVisible||isCustomFixed||isCustomSort||isCustomAggFunc)){if(!tableId){errLog('vxe.error.reqProp',['id']);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const storeData=type==='reset'?{resizableData:{},sortData:{},visibleData:{},fixedData:{}}:tableMethods.getCustomStoreData();if(updateStore){return updateStore({$table:$xeTable,id:tableId,type,storeData});}else{setCustomStorageMap(tableId,type==='reset'?null:storeData);}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},handleCustom(){const{mouseConfig}=props;if(mouseConfig){if($xeTable.clearSelected){$xeTable.clearSelected();}if($xeTable.clearCellAreas){$xeTable.clearCellAreas();$xeTable.clearCopyCellArea();}}tablePrivateMethods.analyColumnWidth();return tableMethods.refreshColumn(true);},handleUpdateDataQueue(){reactData.upDataFlag++;},handleRefreshColumnQueue(){reactData.reColumnFlag++;},
|
|
11633
|
+
reactData.isCustomStatus=true;}if(storage&&(customConfig?isEnableConf(customOpts):customOpts.enabled)&&(isCustomResizable||isCustomVisible||isCustomFixed||isCustomSort||isCustomAggFunc)){if(!tableId){errLog('vxe.error.reqProp',['id']);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const storeData=type==='reset'?{resizableData:{},sortData:{},visibleData:{},fixedData:{}}:tableMethods.getCustomStoreData();if(updateStore){return updateStore({$table:$xeTable,id:tableId,type,storeData});}else{setCustomStorageMap(tableId,type==='reset'?null:storeData);}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},handleCustom(){const{mouseConfig}=props;if(mouseConfig){if($xeTable.clearSelected){$xeTable.clearSelected();}if($xeTable.clearCellAreas){$xeTable.clearCellAreas();$xeTable.clearCopyCellArea();}}tablePrivateMethods.analyColumnWidth();return tableMethods.refreshColumn(true);},handleUpdateDataQueue(){reactData.upDataFlag++;},handleRefreshColumnQueue(){reactData.reColumnFlag++;},handleFilterOptions(column){const{filterStore}=reactData;const{filters,filterMultiple,filterRender}=column;const compConf=isEnableConf(filterRender)?table_renderer.get(filterRender.name):null;const frMethod=column.filterRecoverMethod||(compConf?compConf.tableFilterRecoverMethod||compConf.filterRecoverMethod:null);filterStore.multiple=filterMultiple;filterStore.options=filters;filterStore.column=column;// 复原状态
|
|
11634
|
+
filterStore.options.forEach(option=>{const{_checked,checked}=option;option._checked=checked;if(!checked&&_checked!==checked){if(frMethod){frMethod({option,column,$table:$xeTable});}}});$xeTable.checkFilterOptions();},preventEvent(evnt,type,args,next,end){let evntList=table_interceptor.get(type);// 兼容老版本
|
|
11634
11635
|
if(!evntList.length&&type==='event.clearEdit'){evntList=table_interceptor.get('event.clearActived');if(evntList.length){warnLog('vxe.error.delEvent',['event.clearActived','event.clearEdit']);}}// 兼容老版本
|
|
11635
11636
|
let rest=null;let isStop=false;for(let i=0;i<evntList.length;i++){const func=evntList[i];const fnRest=func(Object.assign({$grid:$xeGrid,$table:$xeTable,$event:evnt},args));if(fnRest===false){isStop=true;break;}else if(fnRest&&fnRest.status===false){rest=fnRest.result;isStop=true;break;}}if(!isStop){if(next){rest=next();}}if(end){end();}return rest;},updateCheckboxStatus(){const{treeConfig}=props;const{isRowGroupStatus}=reactData;const{afterTreeFullData,afterGroupFullData,selectCheckboxMaps,treeIndeterminateRowMaps}=internalData;const aggregateOpts=computeAggregateOpts.value;const treeOpts=computeTreeOpts.value;const childrenField=treeOpts.children||treeOpts.childrenField;const checkboxOpts=computeCheckboxOpts.value;const{checkField,indeterminateField,checkStrictly,checkMethod}=checkboxOpts;if(checkStrictly){return;}if(isRowGroupStatus||treeConfig){const{handleGetRowId}=createHandleGetRowId($xeTable);const childRowMaps={};const childRowList=[];if(isRowGroupStatus){// 行分组
|
|
11636
11637
|
const mapChildrenField=aggregateOpts.mapChildrenField;if(mapChildrenField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterGroupFullData,row=>{const rowid=handleGetRowId(row);const childList=row[mapChildrenField];if(childList&&childList.length&&!childRowMaps[rowid]){childRowMaps[rowid]=1;childRowList.unshift([row,rowid,childList]);}},{children:mapChildrenField});}}else if(treeConfig){// 树结构
|
|
@@ -14437,38 +14438,9 @@ hook_hooks.add('tableFilterModule', {
|
|
|
14437
14438
|
} = filterOpts;
|
|
14438
14439
|
const tableRect = el.getBoundingClientRect();
|
|
14439
14440
|
const btnElem = evnt.currentTarget;
|
|
14440
|
-
|
|
14441
|
-
filters,
|
|
14442
|
-
filterMultiple,
|
|
14443
|
-
filterRender
|
|
14444
|
-
} = column;
|
|
14445
|
-
const compConf = isEnableConf(filterRender) ? hook_renderer.get(filterRender.name) : null;
|
|
14446
|
-
const frMethod = column.filterRecoverMethod || (compConf ? compConf.tableFilterRecoverMethod || compConf.filterRecoverMethod : null);
|
|
14441
|
+
$xeTable.handleFilterOptions(column);
|
|
14447
14442
|
internalData._currFilterParams = params;
|
|
14448
|
-
|
|
14449
|
-
multiple: filterMultiple,
|
|
14450
|
-
options: filters,
|
|
14451
|
-
column,
|
|
14452
|
-
style: null
|
|
14453
|
-
});
|
|
14454
|
-
// 复原状态
|
|
14455
|
-
filterStore.options.forEach(option => {
|
|
14456
|
-
const {
|
|
14457
|
-
_checked,
|
|
14458
|
-
checked
|
|
14459
|
-
} = option;
|
|
14460
|
-
option._checked = checked;
|
|
14461
|
-
if (!checked && _checked !== checked) {
|
|
14462
|
-
if (frMethod) {
|
|
14463
|
-
frMethod({
|
|
14464
|
-
option,
|
|
14465
|
-
column,
|
|
14466
|
-
$table: $xeTable
|
|
14467
|
-
});
|
|
14468
|
-
}
|
|
14469
|
-
}
|
|
14470
|
-
});
|
|
14471
|
-
this.checkFilterOptions();
|
|
14443
|
+
filterStore.style = null;
|
|
14472
14444
|
filterStore.visible = true;
|
|
14473
14445
|
initStore.filter = true;
|
|
14474
14446
|
(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(() => {
|
|
@@ -14677,12 +14649,18 @@ hook_hooks.add('tableFilterModule', {
|
|
|
14677
14649
|
* @param {Array} options 选项
|
|
14678
14650
|
*/
|
|
14679
14651
|
setFilter(fieldOrColumn, options, isUpdate) {
|
|
14652
|
+
const {
|
|
14653
|
+
filterStore
|
|
14654
|
+
} = reactData;
|
|
14680
14655
|
const column = handleFieldOrColumn($xeTable, fieldOrColumn);
|
|
14681
14656
|
if (column && column.filters) {
|
|
14682
14657
|
column.filters = toFilters(options || []);
|
|
14683
14658
|
if (isUpdate) {
|
|
14684
|
-
|
|
14685
|
-
|
|
14659
|
+
return $xeTable.handleColumnConfirmFilter(column, null);
|
|
14660
|
+
} else {
|
|
14661
|
+
if (filterStore.visible) {
|
|
14662
|
+
$xeTable.handleFilterOptions(column);
|
|
14663
|
+
}
|
|
14686
14664
|
}
|
|
14687
14665
|
}
|
|
14688
14666
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
@@ -21410,7 +21388,8 @@ const Toolbar = VxeToolbar;
|
|
|
21410
21388
|
treeCrossDrag: '只能拖拽第一层级',
|
|
21411
21389
|
treeDragChild: '父级不能拖拽到自己的子级中',
|
|
21412
21390
|
reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install',
|
|
21413
|
-
errMaxRow: '超过支持的最大数据量 {0} 行,这可能会导致出现错误'
|
|
21391
|
+
errMaxRow: '超过支持的最大数据量 {0} 行,这可能会导致出现错误',
|
|
21392
|
+
useNew: '{0} 已经不建议使用,请使用新的方式 {1}'
|
|
21414
21393
|
},
|
|
21415
21394
|
table: {
|
|
21416
21395
|
emptyText: '暂无数据',
|