vxe-table 4.13.30 → 4.13.32
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/en-US.js +2 -2
- package/es/style.css +1 -1
- package/es/table/module/export/hook.js +11 -5
- package/es/table/module/validator/hook.js +2 -2
- package/es/table/src/table.js +3 -1
- package/es/table/src/util.js +2 -2
- package/es/ui/index.js +3 -3
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +32 -25
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/en-US.js +2 -2
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +2 -2
- package/lib/style.css +1 -1
- package/lib/table/module/export/hook.js +25 -18
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/validator/hook.js +1 -1
- package/lib/table/module/validator/hook.min.js +1 -1
- package/lib/table/src/table.js +1 -1
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +1 -1
- package/lib/table/src/util.min.js +1 -1
- package/lib/ui/index.js +3 -3
- 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/en-US.ts +2 -2
- package/packages/table/module/export/hook.ts +10 -5
- package/packages/table/module/validator/hook.ts +2 -2
- package/packages/table/src/table.ts +3 -1
- package/packages/table/src/util.ts +2 -2
- package/packages/ui/index.ts +2 -2
- /package/es/{iconfont.1747357348072.ttf → iconfont.1748578580599.ttf} +0 -0
- /package/es/{iconfont.1747357348072.woff → iconfont.1748578580599.woff} +0 -0
- /package/es/{iconfont.1747357348072.woff2 → iconfont.1748578580599.woff2} +0 -0
- /package/lib/{iconfont.1747357348072.ttf → iconfont.1748578580599.ttf} +0 -0
- /package/lib/{iconfont.1747357348072.woff → iconfont.1748578580599.woff} +0 -0
- /package/lib/{iconfont.1747357348072.woff2 → iconfont.1748578580599.woff2} +0 -0
|
@@ -11,7 +11,7 @@ let htmlCellElem;
|
|
|
11
11
|
const csvBOM = '\ufeff';
|
|
12
12
|
const enterSymbol = '\r\n';
|
|
13
13
|
function defaultFilterExportColumn(column) {
|
|
14
|
-
return !!column.field || ['seq', 'checkbox', 'radio'].indexOf(column.type || '')
|
|
14
|
+
return !!column.field || ['seq', 'checkbox', 'radio'].indexOf(column.type || '') === -1;
|
|
15
15
|
}
|
|
16
16
|
const getConvertColumns = (columns) => {
|
|
17
17
|
const result = [];
|
|
@@ -1118,9 +1118,14 @@ hooks.add('tableExportModule', {
|
|
|
1118
1118
|
if (!mode) {
|
|
1119
1119
|
mode = selectRecords.length ? 'selected' : 'current';
|
|
1120
1120
|
}
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1121
|
+
let isCustomCol = false;
|
|
1122
|
+
let customCols = [];
|
|
1123
|
+
if (columns && columns.length) {
|
|
1124
|
+
isCustomCol = true;
|
|
1125
|
+
customCols = columns;
|
|
1126
|
+
}
|
|
1127
|
+
else {
|
|
1128
|
+
customCols = XEUtils.searchTree(collectColumn, column => {
|
|
1124
1129
|
const isColGroup = column.children && column.children.length > 0;
|
|
1125
1130
|
let isChecked = false;
|
|
1126
1131
|
if (columns && columns.length) {
|
|
@@ -1134,9 +1139,10 @@ hooks.add('tableExportModule', {
|
|
|
1134
1139
|
}
|
|
1135
1140
|
return isChecked;
|
|
1136
1141
|
}, { children: 'children', mapChildren: 'childNodes', original: true });
|
|
1142
|
+
}
|
|
1137
1143
|
const handleOptions = Object.assign({}, opts, { filename: '', sheetName: '' });
|
|
1138
1144
|
// 如果设置源数据,则默认导出设置了字段的列
|
|
1139
|
-
if (!
|
|
1145
|
+
if (!isCustomCol && !columnFilterMethod) {
|
|
1140
1146
|
columnFilterMethod = ({ column }) => {
|
|
1141
1147
|
if (excludeFields) {
|
|
1142
1148
|
if (XEUtils.includes(excludeFields, column.field)) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { nextTick } from 'vue';
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import { VxeUI } from '../../../ui';
|
|
4
|
-
import { getFuncText } from '../../../ui/src/utils';
|
|
4
|
+
import { eqEmptyValue, getFuncText } from '../../../ui/src/utils';
|
|
5
5
|
import { scrollToView } from '../../../ui/src/dom';
|
|
6
6
|
import { handleFieldOrColumn, getRowid } from '../../src/util';
|
|
7
7
|
import { warnLog, errLog } from '../../../ui/src/log';
|
|
@@ -114,7 +114,7 @@ function validRuleValue(rule, val, required) {
|
|
|
114
114
|
}
|
|
115
115
|
function checkRuleStatus(rule, val) {
|
|
116
116
|
const { required } = rule;
|
|
117
|
-
const isEmptyVal = XEUtils.
|
|
117
|
+
const isEmptyVal = XEUtils.isArray(val) ? !val.length : eqEmptyValue(val);
|
|
118
118
|
if (required) {
|
|
119
119
|
if (isEmptyVal) {
|
|
120
120
|
return false;
|
package/es/table/src/table.js
CHANGED
|
@@ -3881,7 +3881,9 @@ export default defineComponent({
|
|
|
3881
3881
|
const column = visibleColumn[cIndex];
|
|
3882
3882
|
const colid = column.id;
|
|
3883
3883
|
const colRest = fullColumnIdData[colid];
|
|
3884
|
-
colRest
|
|
3884
|
+
if (colRest) {
|
|
3885
|
+
colRest.oLeft = offsetLeft;
|
|
3886
|
+
}
|
|
3885
3887
|
offsetLeft += column.renderWidth;
|
|
3886
3888
|
}
|
|
3887
3889
|
};
|
package/es/table/src/util.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { watch, reactive
|
|
1
|
+
import { watch, reactive } from 'vue';
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import { ColumnInfo } from './columnInfo';
|
|
4
4
|
import { isPx, isScale, queryElement } from '../../ui/src/dom';
|
|
@@ -75,7 +75,7 @@ export function restoreScrollLocation($xeTable, scrollLeft, scrollTop) {
|
|
|
75
75
|
// 还原滚动状态
|
|
76
76
|
return $xeTable.scrollTo(scrollLeft, scrollTop);
|
|
77
77
|
}
|
|
78
|
-
return
|
|
78
|
+
return $xeTable.clearScroll();
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
81
81
|
* 生成行的唯一主键
|
package/es/ui/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
import { getFuncText } from './src/utils';
|
|
3
|
-
export const version = "4.13.
|
|
3
|
+
export const version = "4.13.32";
|
|
4
4
|
VxeUI.version = version;
|
|
5
5
|
VxeUI.tableVersion = version;
|
|
6
6
|
VxeUI.setConfig({
|
|
@@ -200,13 +200,13 @@ VxeUI.setConfig({
|
|
|
200
200
|
isReplace: true
|
|
201
201
|
},
|
|
202
202
|
virtualXConfig: {
|
|
203
|
-
enabled: false,
|
|
203
|
+
// enabled: false,
|
|
204
204
|
gt: 24,
|
|
205
205
|
preSize: 1,
|
|
206
206
|
oSize: 0
|
|
207
207
|
},
|
|
208
208
|
virtualYConfig: {
|
|
209
|
-
enabled: false,
|
|
209
|
+
// enabled: false,
|
|
210
210
|
gt: 100,
|
|
211
211
|
preSize: 1,
|
|
212
212
|
oSize: 0
|
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.13.
|
|
3141
|
+
const version = "4.13.32";
|
|
3142
3142
|
core_.VxeUI.version = version;
|
|
3143
3143
|
core_.VxeUI.tableVersion = version;
|
|
3144
3144
|
core_.VxeUI.setConfig({
|
|
@@ -3338,13 +3338,13 @@ core_.VxeUI.setConfig({
|
|
|
3338
3338
|
isReplace: true
|
|
3339
3339
|
},
|
|
3340
3340
|
virtualXConfig: {
|
|
3341
|
-
enabled: false,
|
|
3341
|
+
// enabled: false,
|
|
3342
3342
|
gt: 24,
|
|
3343
3343
|
preSize: 1,
|
|
3344
3344
|
oSize: 0
|
|
3345
3345
|
},
|
|
3346
3346
|
virtualYConfig: {
|
|
3347
|
-
enabled: false,
|
|
3347
|
+
// enabled: false,
|
|
3348
3348
|
gt: 100,
|
|
3349
3349
|
preSize: 1,
|
|
3350
3350
|
oSize: 0
|
|
@@ -3599,7 +3599,7 @@ var esnext_iterator_some = __webpack_require__(7550);
|
|
|
3599
3599
|
const {
|
|
3600
3600
|
log: log_log
|
|
3601
3601
|
} = core_.VxeUI;
|
|
3602
|
-
const log_version = `table v${"4.13.
|
|
3602
|
+
const log_version = `table v${"4.13.32"}`;
|
|
3603
3603
|
const warnLog = log_log.create('warn', log_version);
|
|
3604
3604
|
const errLog = log_log.create('error', log_version);
|
|
3605
3605
|
;// ./packages/table/src/columnInfo.ts
|
|
@@ -4050,7 +4050,7 @@ function restoreScrollLocation($xeTable, scrollLeft, scrollTop) {
|
|
|
4050
4050
|
// 还原滚动状态
|
|
4051
4051
|
return $xeTable.scrollTo(scrollLeft, scrollTop);
|
|
4052
4052
|
}
|
|
4053
|
-
return
|
|
4053
|
+
return $xeTable.clearScroll();
|
|
4054
4054
|
}
|
|
4055
4055
|
/**
|
|
4056
4056
|
* 生成行的唯一主键
|
|
@@ -10910,7 +10910,7 @@ const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe
|
|
|
10910
10910
|
*/const handleRowGroupVirtualExpand=(rows,expanded)=>{return handleRowGroupBaseExpand(rows,expanded).then(()=>{handleVirtualTreeToList();$xeTable.handleTableData();reactData.rowGroupExpandedFlag++;updateAfterDataIndex();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}).then(()=>{return $xeTable.recalculate(true);}).then(()=>{setTimeout(()=>{$xeTable.updateCellAreas();},30);});};const handleCheckAllEvent=(evnt,value)=>{handleCheckedAllCheckboxRow(value);if(evnt){dispatchEvent('checkbox-all',{records:()=>$xeTable.getCheckboxRecords(),reserves:()=>$xeTable.getCheckboxReserveRecords(),indeterminates:()=>$xeTable.getCheckboxIndeterminateRecords(),checked:value},evnt);}};/**
|
|
10911
10911
|
* 纵向 Y 可视渲染处理
|
|
10912
10912
|
*/const loadScrollYData=()=>{const{isAllOverflow,isScrollYBig}=reactData;const{mergeBodyList,scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible();const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeBodyList,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}};const createGetRowCacheProp=prop=>{return function(row){const{fullAllDataRowIdData}=internalData;if(row){const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest[prop];}}return-1;};};const createGetColumnCacheProp=prop=>{return function(column){const{fullColumnIdData}=internalData;if(column){const colRest=fullColumnIdData[column.id];if(colRest){return colRest[prop];}}return-1;};};const lazyScrollXData=()=>{const{lxTimeout,lxRunTime,scrollXStore}=internalData;const{visibleSize}=scrollXStore;const fpsTime=visibleSize>26?26:visibleSize>16?14:6;if(lxTimeout){clearTimeout(lxTimeout);}if(!lxRunTime||lxRunTime+fpsTime<Date.now()){internalData.lxRunTime=Date.now();loadScrollXData();}internalData.lxTimeout=setTimeout(()=>{internalData.lxTimeout=undefined;internalData.lxRunTime=undefined;loadScrollXData();},fpsTime);};const lazyScrollYData=()=>{const{lyTimeout,lyRunTime,scrollYStore}=internalData;const{visibleSize}=scrollYStore;const fpsTime=visibleSize>30?32:visibleSize>20?18:8;if(lyTimeout){clearTimeout(lyTimeout);}if(!lyRunTime||lyRunTime+fpsTime<Date.now()){internalData.lyRunTime=Date.now();loadScrollYData();}internalData.lyTimeout=setTimeout(()=>{internalData.lyTimeout=undefined;internalData.lyRunTime=undefined;loadScrollYData();},fpsTime);};const checkLastSyncScroll=(isRollX,isRollY)=>{const{scrollXLoad,scrollYLoad,isAllOverflow}=reactData;const{lcsTimeout}=internalData;if(lcsTimeout){clearTimeout(lcsTimeout);}internalData.lcsTimeout=setTimeout(()=>{internalData.lcsRunTime=Date.now();internalData.lcsTimeout=undefined;internalData.intoRunScroll=false;internalData.inVirtualScroll=false;internalData.inWheelScroll=false;internalData.inHeaderScroll=false;internalData.inBodyScroll=false;internalData.inFooterScroll=false;internalData.scrollRenderType='';if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}if(isRollX&&scrollXLoad){$xeTable.updateScrollXData();}if(isRollY&&scrollYLoad){$xeTable.updateScrollYData().then(()=>{if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}$xeTable.updateScrollYSpace();});}updateRowExpandStyle();$xeTable.updateCellAreas();},200);};const getWheelSpeed=lastScrollTime=>{let multiple=1;const currTime=Date.now();if(lastScrollTime+25>currTime){multiple=1.18;}else if(lastScrollTime+30>currTime){multiple=1.15;}else if(lastScrollTime+40>currTime){multiple=1.12;}else if(lastScrollTime+55>currTime){multiple=1.09;}else if(lastScrollTime+75>currTime){multiple=1.06;}else if(lastScrollTime+100>currTime){multiple=1.03;}return multiple;};const wheelScrollLeftTo=(scrollLeft,cb)=>{requestAnimationFrame(()=>{cb(scrollLeft);});};const wheelScrollTopTo=(diffNum,cb)=>{const duration=Math.abs(diffNum);const startTime=performance.now();let countTop=0;const step=timestamp=>{let progress=(timestamp-startTime)/duration;if(progress>1){progress=1;}const easedProgress=Math.pow(progress,2);const offsetTop=Math.floor(diffNum*easedProgress)-countTop;countTop+=offsetTop;cb(offsetTop);if(progress<1){requestAnimationFrame(step);}};requestAnimationFrame(step);};const dispatchEvent=(type,params,evnt)=>{emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid},params));};const handleScrollToRowColumn=(fieldOrColumn,row)=>{const{fullColumnIdData}=internalData;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column&&fullColumnIdData[column.id]){return colToVisible($xeTable,column,row);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleUpdateResize=()=>{const el=refElem.value;if(el&&el.clientWidth&&el.clientHeight){tableMethods.recalculate();}};const handleUpdateColResize=(evnt,params)=>{$xeTable.analyColumnWidth();$xeTable.recalculate().then(()=>{$xeTable.saveCustomStore('update:width');$xeTable.updateCellAreas();$xeTable.dispatchEvent('column-resizable-change',params,evnt);// 已废弃 resizable-change
|
|
10913
|
-
$xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const handleUpdateRowResize=(evnt,params)=>{reactData.resizeHeightFlag++;$xeTable.recalculate().then(()=>{$xeTable.updateCellAreas();$xeTable.dispatchEvent('row-resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const updateColumnOffsetLeft=()=>{const{visibleColumn,fullColumnIdData}=internalData;let offsetLeft=0;for(let cIndex=0,rLen=visibleColumn.length;cIndex<rLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid];colRest.oLeft=offsetLeft;offsetLeft+=column.renderWidth;}};const updateRowOffsetTop=()=>{const{expandColumn}=reactData;const{afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{handleGetRowId}=createHandleGetRowId($xeTable);let offsetTop=0;for(let rIndex=0,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};rowRest.oTop=offsetTop;offsetTop+=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;// 是否展开行
|
|
10913
|
+
$xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const handleUpdateRowResize=(evnt,params)=>{reactData.resizeHeightFlag++;$xeTable.recalculate().then(()=>{$xeTable.updateCellAreas();$xeTable.dispatchEvent('row-resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const updateColumnOffsetLeft=()=>{const{visibleColumn,fullColumnIdData}=internalData;let offsetLeft=0;for(let cIndex=0,rLen=visibleColumn.length;cIndex<rLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest.oLeft=offsetLeft;}offsetLeft+=column.renderWidth;}};const updateRowOffsetTop=()=>{const{expandColumn}=reactData;const{afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{handleGetRowId}=createHandleGetRowId($xeTable);let offsetTop=0;for(let rIndex=0,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};rowRest.oTop=offsetTop;offsetTop+=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;// 是否展开行
|
|
10914
10914
|
if(expandColumn&&rowExpandedMaps[rowid]){offsetTop+=rowRest.expandHeight||expandOpts.height||0;}}};const updateRowExpandStyle=()=>{const{expandColumn,scrollYLoad,scrollYTop,isScrollYBig}=reactData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{mode}=expandOpts;if(expandColumn&&mode==='fixed'){const{elemStore,fullAllDataRowIdData}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){let isUpdateHeight=false;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(rowExpandEl.children,reEl=>{const expandEl=reEl;const rowid=expandEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const expandHeight=expandEl.offsetHeight+1;const trEl=bodyScrollElem.querySelector(`.vxe-body--row[rowid="${rowid}"]`);let offsetTop=0;if(scrollYLoad){if(isScrollYBig&&trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}else{offsetTop=rowRest.oTop+(rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight);}}else{if(trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}}if(isScrollYBig){offsetTop+=scrollYTop;}expandEl.style.top=toCssUnit(offsetTop);if(!isUpdateHeight){if(rowRest.expandHeight!==expandHeight){isUpdateHeight=true;}}rowRest.expandHeight=expandHeight;}});if(isUpdateHeight){reactData.rowExpandHeightFlag++;(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{updateRowOffsetTop();});}}}};const handleRowExpandScroll=()=>{const{elemStore}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){rowExpandEl.scrollTop=bodyScrollElem.scrollTop;}};tableMethods={dispatchEvent,getEl(){return refElem.value;},/**
|
|
10915
10915
|
* 重置表格的一切数据状态
|
|
10916
10916
|
*/clearAll(){return clearTableAllStatus($xeTable);},/**
|
|
@@ -15916,7 +15916,7 @@ let htmlCellElem;
|
|
|
15916
15916
|
const csvBOM = '\ufeff';
|
|
15917
15917
|
const enterSymbol = '\r\n';
|
|
15918
15918
|
function defaultFilterExportColumn(column) {
|
|
15919
|
-
return !!column.field || ['seq', 'checkbox', 'radio'].indexOf(column.type || '')
|
|
15919
|
+
return !!column.field || ['seq', 'checkbox', 'radio'].indexOf(column.type || '') === -1;
|
|
15920
15920
|
}
|
|
15921
15921
|
const getConvertColumns = columns => {
|
|
15922
15922
|
const result = [];
|
|
@@ -17245,28 +17245,35 @@ export_hook_hooks.add('tableExportModule', {
|
|
|
17245
17245
|
if (!mode) {
|
|
17246
17246
|
mode = selectRecords.length ? 'selected' : 'current';
|
|
17247
17247
|
}
|
|
17248
|
-
|
|
17249
|
-
|
|
17250
|
-
|
|
17251
|
-
|
|
17252
|
-
|
|
17253
|
-
|
|
17254
|
-
|
|
17255
|
-
|
|
17256
|
-
isChecked =
|
|
17257
|
-
|
|
17258
|
-
|
|
17259
|
-
|
|
17260
|
-
|
|
17261
|
-
|
|
17262
|
-
|
|
17263
|
-
|
|
17248
|
+
let isCustomCol = false;
|
|
17249
|
+
let customCols = [];
|
|
17250
|
+
if (columns && columns.length) {
|
|
17251
|
+
isCustomCol = true;
|
|
17252
|
+
customCols = columns;
|
|
17253
|
+
} else {
|
|
17254
|
+
customCols = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().searchTree(collectColumn, column => {
|
|
17255
|
+
const isColGroup = column.children && column.children.length > 0;
|
|
17256
|
+
let isChecked = false;
|
|
17257
|
+
if (columns && columns.length) {
|
|
17258
|
+
isChecked = handleFilterColumns(opts, column, columns);
|
|
17259
|
+
} else if (excludeFields || includeFields) {
|
|
17260
|
+
isChecked = handleFilterFields(opts, column, includeFields, excludeFields);
|
|
17261
|
+
} else {
|
|
17262
|
+
isChecked = column.visible && (isColGroup || defaultFilterExportColumn(column));
|
|
17263
|
+
}
|
|
17264
|
+
return isChecked;
|
|
17265
|
+
}, {
|
|
17266
|
+
children: 'children',
|
|
17267
|
+
mapChildren: 'childNodes',
|
|
17268
|
+
original: true
|
|
17269
|
+
});
|
|
17270
|
+
}
|
|
17264
17271
|
const handleOptions = Object.assign({}, opts, {
|
|
17265
17272
|
filename: '',
|
|
17266
17273
|
sheetName: ''
|
|
17267
17274
|
});
|
|
17268
17275
|
// 如果设置源数据,则默认导出设置了字段的列
|
|
17269
|
-
if (!
|
|
17276
|
+
if (!isCustomCol && !columnFilterMethod) {
|
|
17270
17277
|
columnFilterMethod = ({
|
|
17271
17278
|
column
|
|
17272
17279
|
}) => {
|
|
@@ -18435,7 +18442,7 @@ function checkRuleStatus(rule, val) {
|
|
|
18435
18442
|
const {
|
|
18436
18443
|
required
|
|
18437
18444
|
} = rule;
|
|
18438
|
-
const isEmptyVal = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().
|
|
18445
|
+
const isEmptyVal = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(val) ? !val.length : eqEmptyValue(val);
|
|
18439
18446
|
if (required) {
|
|
18440
18447
|
if (isEmptyVal) {
|
|
18441
18448
|
return false;
|