vxe-table 4.21.2 → 4.21.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/dist/all.esm.js +126 -91
- package/dist/style.css +1 -1
- package/es/style.css +1 -1
- package/es/table/module/custom/hook.js +4 -0
- package/es/table/module/export/export-panel.js +3 -2
- package/es/table/module/export/hook.js +13 -7
- package/es/table/module/filter/hook.js +97 -79
- package/es/table/src/table.js +5 -0
- package/es/table/src/util.js +1 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/dom.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +140 -99
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/custom/hook.js +6 -0
- package/lib/table/module/custom/hook.min.js +1 -1
- package/lib/table/module/export/export-panel.js +3 -2
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/hook.js +15 -7
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/filter/hook.js +111 -86
- package/lib/table/module/filter/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 -0
- package/lib/table/src/util.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +1 -1
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/table/module/custom/hook.ts +4 -0
- package/packages/table/module/export/export-panel.ts +3 -2
- package/packages/table/module/export/hook.ts +12 -7
- package/packages/table/module/filter/hook.ts +94 -75
- package/packages/table/src/table.ts +5 -0
- package/packages/table/src/util.ts +1 -0
- package/packages/ui/src/dom.ts +1 -1
- /package/es/{iconfont.1787677402393.ttf → iconfont.1788176649939.ttf} +0 -0
- /package/es/{iconfont.1787677402393.woff → iconfont.1788176649939.woff} +0 -0
- /package/es/{iconfont.1787677402393.woff2 → iconfont.1788176649939.woff2} +0 -0
- /package/lib/{iconfont.1787677402393.ttf → iconfont.1788176649939.ttf} +0 -0
- /package/lib/{iconfont.1787677402393.woff → iconfont.1788176649939.woff} +0 -0
- /package/lib/{iconfont.1787677402393.woff2 → iconfont.1788176649939.woff2} +0 -0
package/lib/table/src/util.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.assembleColumn=assembleColumn,exports.clearTableAllStatus=clearTableAllStatus,exports.clearTableDefaultStatus=clearTableDefaultStatus,exports.colToVisible=colToVisible,exports.convertHeaderColumnToRows=void 0,exports.convertHeaderToGridRows=convertHeaderToGridRows,exports.createColumn=createColumn,exports.createHandleGetRowId=createHandleGetRowId,exports.createHandleUpdateRowId=createHandleUpdateRowId,exports.createInternalData=createInternalData,exports.createReactData=createReactData,exports.createRowId=createRowId,exports.destroyColumn=destroyColumn,exports.encodeRowid=encodeRowid,exports.getCalcHeight=getCalcHeight,exports.getCellRestHeight=getCellRestHeight,exports.getCellValue=getCellValue,exports.getColReMaxWidth=getColReMaxWidth,exports.getColReMinWidth=getColReMinWidth,exports.getColumnList=getColumnList,exports.getFirstChildColumn=getFirstChildColumn,exports.getLastChildColumn=getLastChildColumn,exports.getRefElem=getRefElem,exports.getRootColumn=getRootColumn,exports.getRowMaxHeight=getRowMaxHeight,exports.getRowUniqueId=getRowUniqueId,exports.getRowid=getRowid,exports.getRowkey=getRowkey,exports.handleCustomStoreConfig=handleCustomStoreConfig,exports.handleFieldOrColumn=handleFieldOrColumn,exports.handleRowidOrRow=handleRowidOrRow,exports.hasDeepKey=hasDeepKey,exports.isColumnInfo=isColumnInfo,exports.restoreScrollLocation=restoreScrollLocation,exports.rowToVisible=rowToVisible,exports.setCellValue=setCellValue,exports.toFilters=toFilters,exports.toTreePathSeq=toTreePathSeq,exports.watchColumn=watchColumn;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_columnInfo=require("./columnInfo"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function createInternalData(){return{tZindex:0,currKeyField:"",isCurrDeepKey:!1,elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},tableWidth:0,tableHeight:0,customHeight:0,customMinHeight:0,customMaxHeight:0,hoverRow:null,lastScrollLeft:0,lastScrollTop:0,radioReserveRow:null,checkboxReserveRowMap:{},rowExpandedReserveRowMap:{},treeExpandedReserveRowMap:{},treeIndeterminateRowMaps:{},tableFullData:[],afterFullData:[],afterTreeFullData:[],afterGroupFullData:[],afterFullRowMaps:{},tableFullTreeData:[],tableFullGroupData:[],tableSynchData:[],tableSourceData:[],collectColumn:[],tableFullColumn:[],visibleColumn:[],fullAllDataRowIdData:{},fullDataRowIdData:{},visibleDataRowIdData:{},keepUpdateFieldMaps:{},headerFullDataColData:{},footerFullDataRowData:{},sourceDataRowIdData:{},fullColumnIdData:{},fullColumnFieldData:{},fullCellHeightMaps:{},fullCellStoreMaps:{},currentRow:null,mergeHeaderList:[],mergeHeaderMaps:{},mergeHeaderCellMaps:{},mergeHeaderRowMaps:{},mergeHeaderColMaps:{},mergeBodyList:[],mergeBodyMaps:{},mergeBodyCellMaps:{},mergeBodyRowMaps:{},mergeBodyColMaps:{},mergeFooterList:[],mergeFooterMaps:{},mergeFooterCellMaps:{},mergeFooterRowMaps:{},mergeFooterColMaps:{},rowExpandedMaps:{},rowExpandLazyLoadedMaps:{},rowGroupExpandedMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},selectCheckboxMaps:{},pendingRowMaps:{},insertRowMaps:{},removeRowMaps:{},cvCacheMaps:{},tHeaderHeight:0,tBodyHeight:0,tFooterHeight:0,stackHistoryStore:{undoStacks:[],redoStacks:[]},teleportToWrapperElem:null,popupToWrapperElem:null,customPopupToElem:null,lastSTime:0,inited:!1,tooltipTimeout:null,initStatus:!1,isActivated:!1,rceDelay:0}}function createReactData(){return{updateColFlag:0,staticColumns:[],tableGroupColumn:[],tableColumn:[],tableData:[],scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!1,scrollbarWidth:0,scrollbarHeight:0,rowHeight:0,parentHeight:0,isGroup:!1,isAllOverflow:!1,isAllSelected:!1,isIndeterminate:!1,currentColumn:null,selectRadioRow:null,footerTableData:[],rowGroupColumn:null,expandColumn:null,checkboxColumn:null,radioColumn:null,treeNodeColumn:null,hasFixedColumn:!1,upDataFlag:0,reColumnFlag:0,initStore:{filter:!1,import:!1,export:!1,custom:!1},customStore:{btnEl:null,isAll:!1,isIndeterminate:!1,activeBtn:!1,activeWrapper:!1,visible:!1,maxHeight:null,defPopupStyle:{},panePopupStyle:{},oldSortMaps:{},oldFixedMaps:{},oldVisibleMaps:{}},customColumnList:[],filterStore:{isAllSelected:!1,isIndeterminate:!1,style:null,column:null,visible:!1,maxHeight:null},columnStore:{leftList:[],centerList:[],rightList:[],resizeList:[],pxList:[],pxMinList:[],autoMinList:[],scaleList:[],scaleMinList:[],autoList:[],remainList:[]},ctxMenuStore:{selected:null,visible:!1,showChild:!1,selectChild:null,list:[],style:null},editStore:{indexs:{columns:[]},titles:{columns:[]},selected:{row:null,column:null},copyed:{cut:!1,rows:[],columns:[]},actived:{row:null,column:null},focused:{row:null,column:null}},tooltipStore:{row:null,column:null,content:"",visible:!1,type:null,currOpts:{}},validStore:{visible:!1},validErrorMaps:{},importStore:{inited:!1,file:null,type:"",modeList:[],typeList:[],filename:"",visible:!1},importParams:{mode:"",types:null,message:!0},exportStore:{inited:!1,name:"",modeList:[],typeList:[],columns:[],isPrint:!1,hasFooter:!1,hasMerge:!1,hasTree:!1,hasRowGroup:!1,hasColgroup:!1,visible:!1},exportParams:{filename:"",sheetName:"",mode:"",type:"",isColgroup:!1,isMerge:!1,isTreeAllExpanded:!1,isRowGroupAllExpanded:!1,useStyle:!1,original:!1,message:!0,isHeader:!1,isTitle:!1,isFooter:!1},visiblwRowsFlag:1,isRowGroupStatus:!1,rowGroupList:[],aggHandleFields:[],aggHandleAggColumns:[],rowGroupExpandedFlag:1,rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,insertRowFlag:1,removeRowFlag:1,mergeHeadFlag:1,mergeBodyFlag:1,mergeFootFlag:1,rowHeightStore:{xlarge:54,large:52,default:48,medium:44,small:40,mini:36},scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,lazScrollLoading:!1,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:!1,isCustomDragStatus:!0,ctPopupFlag:1,isCrossDragRow:!1,dragRow:null,isCrossDragCol:!1,dragCol:null,dragTipText:"",isDragResize:!1,isRowLoading:!1,isColLoading:!1}}let maxKey="__max";function getRowMaxHeight(t,e){if(!e&&t[maxKey])return t[maxKey];{let e=0;for(var l in t){var o=t[l];l!==maxKey&&_xeUtils.default.isNumber(o)&&o>e&&(e=o)}return t[maxKey]=e}}let getAllConvertColumns=(e,t)=>{let l=[];return e.forEach(e=>{e.parentId=t?t.id:null,e.visible&&(e.children&&e.children.length&&e.children.some(e=>e.visible)?(l.push(e),l.push(...getAllConvertColumns(e.children,e))):l.push(e))}),l},convertHeaderColumnToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l.level=e.level+1,t<l.level)&&(t=l.level),l.children&&l.children.length&&l.children.some(e=>e.visible)){let t=0;l.children.forEach(e=>{e.visible&&(o(e,l),t+=e.colSpan)}),l.colSpan=t}else l.colSpan=1},l=(e.forEach(e=>{e.level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getAllConvertColumns(e).forEach(e=>{e.children&&e.children.length&&e.children.some(e=>e.visible)?e.rowSpan=1:e.rowSpan=t-e.level+1,l[e.level-1].push(e)}),l};function convertHeaderToGridRows(t){var l=t.length,a=t[0].reduce((e,t)=>e+t.colSpan,0),i=[],n=[];for(let e=0;e<l;e++){var o=[],r=[];for(let e=0;e<a;e++)o.push(!1),r.push("");i.push(o),n.push(r)}for(let r=0;r<l;r++){let e=0;for(var u of t[r]){var{colSpan:s,rowSpan:d}=u;let o=-1;for(let l=e;l<=a-s;l++){let t=!0;for(let e=0;e<s;e++)if(i[r][l+e]){t=!1;break}if(t){o=l;break}}if(-1===o){for(let l=0;l<=a-s;l++){let t=!0;for(let e=0;e<s;e++)if(i[r][l+e]){t=!1;break}if(t){o=l;break}}if(-1===o)break}for(let t=r;t<r+d;t++)for(let e=o;e<o+s;e++)i[t][e]=!0,n[t][e]=u;e=o+s}}return n}function restoreScrollLocation(e,t,l){var o=e.internalData;return t||l?(o.intoRunScroll=!1,o.inVirtualScroll=!1,o.inWheelScroll=!1,o.inHeaderScroll=!1,o.inBodyScroll=!1,o.inFooterScroll=!1,o.scrollRenderType="",e.scrollTo(t,l)):e.clearScroll()}function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function createRowId(e,t,l){e=e.createKeyMethod;return e?e({row:t,keyField:l}):getRowUniqueId()}function hasDeepKey(e){return-1<e.indexOf(".")}function getRowkey(e){e=e.internalData.currKeyField;return e}function getRowid(e,t){var{isCurrDeepKey:e,currKeyField:l}=e.internalData;return t?encodeRowid((e?getDeepRowIdByKey:getFastRowIdByKey)(t,l)):""}function createHandleUpdateRowId(e){let{isCurrDeepKey:t,currKeyField:l}=e.internalData;e=e.getComputeMaps().computeRowOpts;let o=e.value,r=t?updateDeepRowKey:updateFastRowKey;return{rowKey:l,handleUpdateRowId(e){return e?r(o,e,l):""}}}function createHandleGetRowId(e){let{isCurrDeepKey:t,currKeyField:l}=e.internalData,o=t?getDeepRowIdByKey:getFastRowIdByKey;return{rowKey:l,handleGetRowId(e){return e?encodeRowid(o(e,l)):""}}}function encodeRowid(e){return _xeUtils.default.eqNull(e)?"":encodeURIComponent(e)}function getDeepRowIdByKey(e,t){return _xeUtils.default.get(e,t)}function updateDeepRowKey(e,t,l){let o=encodeRowid(getDeepRowIdByKey(t,l));return(0,_utils.eqEmptyValue)(o)&&(e=createRowId(e,t,l),o=""+e,_xeUtils.default.set(t,l,o)),o}function getFastRowIdByKey(e,t){return e[t]}function updateFastRowKey(e,t,l){let o=encodeRowid(getFastRowIdByKey(t,l));return(0,_utils.eqEmptyValue)(o)&&(e=createRowId(e,t,l),o=""+e,t[l]=e),o}function handleFieldOrColumn(e,t){return t?_xeUtils.default.isString(t)||_xeUtils.default.isNumber(t)?e.getColumnByField(""+t):t:null}function handleRowidOrRow(e,t){return t?(t=_xeUtils.default.isString(t)||_xeUtils.default.isNumber(t)?t:getRowid(e,t),e.getRowById(t)):null}function getCellRestHeight(e,t,l,o){var{height:t,minHeight:r,maxHeight:a}=t;let i=e.resizeHeight||t||l.height||e.height||o;return a&&a<=i&&(i=a),i=r&&r>=i?r:i}function getPaddingLeftRightSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingLeft)+_xeUtils.default.toNumber(e.paddingRight)):0}function getElementMarginAndWidth(e){var t,l;return e?(l=getComputedStyle(e),t=_xeUtils.default.toNumber(l.marginLeft),l=_xeUtils.default.toNumber(l.marginRight),e.offsetWidth+t+l):0}function toFilters(e,a){return e&&(_xeUtils.default.isArray(e)?e.map(({label:e,value:t,data:l,resetValue:o,checked:r})=>({label:e,value:t,data:l,resetValue:o,checked:!!r,_checked:!!r,_colId:a})):[])}function toTreePathSeq(e){return e.map((e,t)=>t%2==0?Number(e)+1:".").join("")}function getCellValue(e,t){return t?_xeUtils.default.get(e,t.field):null}function setCellValue(e,t,l){t&&_xeUtils.default.set(e,t.field,l)}function getRefElem(e){if(e){e=e.value;if(e)return e.$el||e}return null}function getCalcHeight(e){return"unset"!==e&&e||0}function getColReMaxWidth(e){var{$table:t,column:l,cell:o}=e,r=t.internalData.elemStore,{computeColumnOpts:t,computeResizableOpts:a}=t.getComputeMaps(),a=a.value,t=t.value,a=a.maxWidth,l=l.maxWidth||t.maxWidth;if(a){t=_xeUtils.default.isFunction(a)?a(e):a;if("auto"!==t)return Math.max(1,_xeUtils.default.toNumber(t))}e=_xeUtils.default.floor(1.8*(_xeUtils.default.toNumber(getComputedStyle(o).fontSize)||14))+(getPaddingLeftRightSize(o)+getPaddingLeftRightSize((0,_dom.queryElement)(o,".vxe-cell")));if(l){a=getRefElem(r["main-body-scroll"]);if(a){if((0,_dom.isScale)(l))return t=(a.clientWidth-1)/100,Math.max(e,Math.floor(_xeUtils.default.toInteger(l)*t));if((0,_dom.isPx)(l))return Math.max(e,_xeUtils.default.toInteger(l))}}return-1}function getColReMinWidth(e){var{$table:t,column:l,cell:o}=e,r=t.props,a=t.internalData,{computeColumnOpts:t,computeResizableOpts:i}=t.getComputeMaps(),i=i.value,t=t.value,i=i.minWidth;if(i){e=_xeUtils.default.isFunction(i)?i(e):i;if("auto"!==e)return Math.max(1,_xeUtils.default.toNumber(e))}var n,u,s,i=a.elemStore,e=r.showHeaderOverflow,a=l.showHeaderOverflow,r=l.minWidth||t.minWidth,l=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?e:a,t="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;let d=_xeUtils.default.floor(1.8*(_xeUtils.default.toNumber(getComputedStyle(o).fontSize)||14))+(getPaddingLeftRightSize(o)+getPaddingLeftRightSize((0,_dom.queryElement)(o,".vxe-cell")));if(t&&(e=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--drag-handle")),a=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--checkbox")),l=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--required-icon")),t=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--edit-icon")),n=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell-title-prefix-icon")),u=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell-title-suffix-icon")),s=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--sort")),o=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--filter")),d+=e+a+l+t+n+u+o+s),r){e=getRefElem(i["main-body-scroll"]);if(e){if((0,_dom.isScale)(r))return a=(e.clientWidth-1)/100,Math.max(d,Math.floor(_xeUtils.default.toInteger(r)*a));if((0,_dom.isPx)(r))return Math.max(d,_xeUtils.default.toInteger(r))}}return d}function isColumnInfo(e){return e&&(e.constructor===_columnInfo.ColumnInfo||e instanceof _columnInfo.ColumnInfo)}function getColumnList(e){let t=[];return e.forEach(e=>{t.push(...e.children&&e.children.length?getColumnList(e.children):[e])}),t}function createColumn(e,t,l){return isColumnInfo(t)?t:(0,_vue.reactive)(new _columnInfo.ColumnInfo(e,t,l))}function watchColumn(l,e,o){Object.keys(e).forEach(t=>{(0,_vue.watch)(()=>e[t],e=>{o.update(t,e),l&&("filters"===t?(l.setFilter(o,e),l.handleUpdateDataQueue()):["visible","fixed","width","minWidth","maxWidth"].includes(t)&&l.handleRefreshColumnQueue())})})}function assembleColumn(e,t,l,o){var e=e.reactData,r=e.staticColumns,a=t.parentNode,o=o?o.columnConfig:null,i=o?o.children:r;a&&i&&(l.defaultParentId=o?o.id:null,i.splice(_xeUtils.default.arrayIndexOf(a.children,t),0,l),e.staticColumns=r.slice(0))}function destroyColumn(e,t){var e=e.reactData,l=e.staticColumns,o=_xeUtils.default.findTree(l,e=>e.id===t.id,{children:"children"});o&&o.items.splice(o.index,1),e.staticColumns=l.slice(0)}function getRootColumn(e,t){var e=e.internalData,l=e.fullColumnIdData;if(!t)return null;let o=t.parentId;for(;l[o];){let e=l[o].column;if(!(o=e.parentId))return e}return t}function getFirstChildColumn(e){var t=e.children;return t&&t.length?getFirstChildColumn(_xeUtils.default.first(t)):e}function getLastChildColumn(e){var t=e.children;return t&&t.length?getFirstChildColumn(_xeUtils.default.last(t)):e}function clearTableDefaultStatus(e){var{props:t,internalData:l}=e,l=(l.initStatus=!1,[e.clearSort(),e.clearCurrentRow(),e.clearCurrentColumn(),e.clearRadioRow(),e.clearRadioReserve(),e.clearCheckboxRow(),e.clearCheckboxReserve(),e.clearRowExpand(),e.clearTreeExpand(),e.clearTreeExpandReserve(),e.clearPendingRow()]);return e.clearFilter&&l.push(e.clearFilter()),e.clearSelected&&(t.keyboardConfig||t.mouseConfig)&&l.push(e.clearSelected()),e.clearCellAreas&&t.mouseConfig&&l.push(e.clearCellAreas(),e.clearCopyCellArea()),Promise.all(l).then(()=>e.clearScroll())}function clearTableAllStatus(e){return e.clearFilter&&e.clearFilter(),clearTableDefaultStatus(e)}function rowToVisible(e,t){var l=e.reactData,o=e.internalData,{computeLeftFixedWidth:r,computeRightFixedWidth:a,computeRowOpts:i,computeCellOpts:n,computeDefaultRowHeight:u}=e.getComputeMaps(),{scrollYLoad:l,scrollYTop:s,isAllOverflow:d}=l,{elemStore:o,afterFullData:c,fullAllDataRowIdData:m,isResizeCellHeight:g}=o,i=i.value,n=n.value,u=u.value,r=r.value,a=a.value,o=getRefElem(o["main-body-scroll"]),p=getRowid(e,t);if(o){var f=o.clientHeight,h=o.scrollTop,o=o.querySelector(`[rowid="${p}"]`);if(o){var s=o.offsetTop+(l?s:0),o=o.clientHeight;if(s<h||h+f<s)return e.scrollTo(null,s);if(f+h<=s+o)return e.scrollTo(null,h+o)}else if(l)return g||n.height||i.height||!d?(o=(s=m[p]||{}).resizeHeight||n.height||i.height||s.height||u,(l=s.oTop)<h?e.scrollTo(null,l-r-1):e.scrollTo(null,l+o-(f-a-1))):e.scrollTo(null,(e.findRowIndexOf(c,t)-1)*u)}return Promise.resolve()}function colToVisible(l,o,r,t){var a=l.reactData,i=l.internalData,{computeLeftFixedWidth:n,computeRightFixedWidth:u}=l.getComputeMaps(),{scrollXLoad:a,scrollXLeft:s}=a,{elemStore:i,visibleColumn:d}=i,n=n.value,u=u.value,i=getRefElem(i["main-body-scroll"]);if(!r.fixed&&i){var c=i.clientWidth,m=i.scrollLeft;let e=null;if(t&&(t=getRowid(l,t),e=i.querySelector(`[rowid="${t}"] .`+r.id)),e=e||i.querySelector("."+r.id)){t=e.offsetLeft+(a?s:0),i=e.clientWidth;if(o||!(t<=m+n&&m+n<t+i)&&!(m+n<=t&&t<m+c-u)){if(t<m+n)return l.scrollTo(t-n-1);if(c-u<t+i-m)return l.scrollTo(t+i-(c-u-1))}}else if(a){let t=0;s=r.renderWidth;for(let e=0;e<d.length;e++){var g=d[e];if(g===r||g.id===r.id)break;t+=g.renderWidth}if(o||!(t<=m+n&&t+s>m+n)&&!(t>=m+n&&t<m+c-u))return t<m?l.scrollTo(t-n-1):l.scrollTo(t+s-(c-u-1))}}return Promise.resolve()}function hangleBolleanDefaultValue(e,t){return _xeUtils.default.isBoolean(e)?e:t}function handleCustomStoreConfig(e){var e=e.getComputeMaps().computeCustomOpts,{storage:e,storeOptions:t}=e.value,l=!0===e,e=Object.assign({},!l&&e||{},t);return{isCustomAlign:hangleBolleanDefaultValue(e.align,l),isCustomHeaderAlign:hangleBolleanDefaultValue(e.headerAlign,l),isCustomFooterAlign:hangleBolleanDefaultValue(e.footerAlign,l),isCustomResizable:hangleBolleanDefaultValue(e.resizable,l),isCustomVisible:hangleBolleanDefaultValue(e.visible,l),isCustomFixed:hangleBolleanDefaultValue(e.fixed,l),isCustomSort:hangleBolleanDefaultValue(e.sort,l),isCustomAggGroup:hangleBolleanDefaultValue(e.aggGroup,l),isCustomAggFunc:hangleBolleanDefaultValue(e.aggFunc,l),isCustomPager:hangleBolleanDefaultValue(e.pager,l)}}exports.convertHeaderColumnToRows=convertHeaderColumnToRows;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.assembleColumn=assembleColumn,exports.clearTableAllStatus=clearTableAllStatus,exports.clearTableDefaultStatus=clearTableDefaultStatus,exports.colToVisible=colToVisible,exports.convertHeaderColumnToRows=void 0,exports.convertHeaderToGridRows=convertHeaderToGridRows,exports.createColumn=createColumn,exports.createHandleGetRowId=createHandleGetRowId,exports.createHandleUpdateRowId=createHandleUpdateRowId,exports.createInternalData=createInternalData,exports.createReactData=createReactData,exports.createRowId=createRowId,exports.destroyColumn=destroyColumn,exports.encodeRowid=encodeRowid,exports.getCalcHeight=getCalcHeight,exports.getCellRestHeight=getCellRestHeight,exports.getCellValue=getCellValue,exports.getColReMaxWidth=getColReMaxWidth,exports.getColReMinWidth=getColReMinWidth,exports.getColumnList=getColumnList,exports.getFirstChildColumn=getFirstChildColumn,exports.getLastChildColumn=getLastChildColumn,exports.getRefElem=getRefElem,exports.getRootColumn=getRootColumn,exports.getRowMaxHeight=getRowMaxHeight,exports.getRowUniqueId=getRowUniqueId,exports.getRowid=getRowid,exports.getRowkey=getRowkey,exports.handleCustomStoreConfig=handleCustomStoreConfig,exports.handleFieldOrColumn=handleFieldOrColumn,exports.handleRowidOrRow=handleRowidOrRow,exports.hasDeepKey=hasDeepKey,exports.isColumnInfo=isColumnInfo,exports.restoreScrollLocation=restoreScrollLocation,exports.rowToVisible=rowToVisible,exports.setCellValue=setCellValue,exports.toFilters=toFilters,exports.toTreePathSeq=toTreePathSeq,exports.watchColumn=watchColumn;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_columnInfo=require("./columnInfo"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function createInternalData(){return{tZindex:0,currKeyField:"",isCurrDeepKey:!1,elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},tableWidth:0,tableHeight:0,customHeight:0,customMinHeight:0,customMaxHeight:0,hoverRow:null,lastScrollLeft:0,lastScrollTop:0,radioReserveRow:null,checkboxReserveRowMap:{},rowExpandedReserveRowMap:{},treeExpandedReserveRowMap:{},treeIndeterminateRowMaps:{},tableFullData:[],afterFullData:[],afterTreeFullData:[],afterGroupFullData:[],afterFullRowMaps:{},tableFullTreeData:[],tableFullGroupData:[],tableSynchData:[],tableSourceData:[],collectColumn:[],tableFullColumn:[],visibleColumn:[],fullAllDataRowIdData:{},fullDataRowIdData:{},visibleDataRowIdData:{},keepUpdateFieldMaps:{},headerFullDataColData:{},footerFullDataRowData:{},sourceDataRowIdData:{},fullColumnIdData:{},fullColumnFieldData:{},fullCellHeightMaps:{},fullCellStoreMaps:{},currentRow:null,mergeHeaderList:[],mergeHeaderMaps:{},mergeHeaderCellMaps:{},mergeHeaderRowMaps:{},mergeHeaderColMaps:{},mergeBodyList:[],mergeBodyMaps:{},mergeBodyCellMaps:{},mergeBodyRowMaps:{},mergeBodyColMaps:{},mergeFooterList:[],mergeFooterMaps:{},mergeFooterCellMaps:{},mergeFooterRowMaps:{},mergeFooterColMaps:{},rowExpandedMaps:{},rowExpandLazyLoadedMaps:{},rowGroupExpandedMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},selectCheckboxMaps:{},pendingRowMaps:{},insertRowMaps:{},removeRowMaps:{},cvCacheMaps:{},tHeaderHeight:0,tBodyHeight:0,tFooterHeight:0,stackHistoryStore:{undoStacks:[],redoStacks:[]},teleportToWrapperElem:null,popupToWrapperElem:null,customPopupToElem:null,lastSTime:0,inited:!1,tooltipTimeout:null,initStatus:!1,isActivated:!1,rceDelay:0}}function createReactData(){return{updateColFlag:0,staticColumns:[],tableGroupColumn:[],tableColumn:[],tableData:[],scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!1,scrollbarWidth:0,scrollbarHeight:0,rowHeight:0,parentHeight:0,isGroup:!1,isAllOverflow:!1,isAllSelected:!1,isIndeterminate:!1,currentColumn:null,selectRadioRow:null,footerTableData:[],rowGroupColumn:null,expandColumn:null,checkboxColumn:null,radioColumn:null,treeNodeColumn:null,hasFixedColumn:!1,upDataFlag:0,reColumnFlag:0,initStore:{filter:!1,import:!1,export:!1,custom:!1},customStore:{btnEl:null,isAll:!1,isIndeterminate:!1,activeBtn:!1,activeWrapper:!1,visible:!1,maxHeight:null,defPopupStyle:{},panePopupStyle:{},oldSortMaps:{},oldFixedMaps:{},oldVisibleMaps:{}},customColumnList:[],filterStore:{targetEl:null,isAllSelected:!1,isIndeterminate:!1,style:null,column:null,visible:!1,maxHeight:null},columnStore:{leftList:[],centerList:[],rightList:[],resizeList:[],pxList:[],pxMinList:[],autoMinList:[],scaleList:[],scaleMinList:[],autoList:[],remainList:[]},ctxMenuStore:{selected:null,visible:!1,showChild:!1,selectChild:null,list:[],style:null},editStore:{indexs:{columns:[]},titles:{columns:[]},selected:{row:null,column:null},copyed:{cut:!1,rows:[],columns:[]},actived:{row:null,column:null},focused:{row:null,column:null}},tooltipStore:{row:null,column:null,content:"",visible:!1,type:null,currOpts:{}},validStore:{visible:!1},validErrorMaps:{},importStore:{inited:!1,file:null,type:"",modeList:[],typeList:[],filename:"",visible:!1},importParams:{mode:"",types:null,message:!0},exportStore:{inited:!1,name:"",modeList:[],typeList:[],columns:[],isPrint:!1,hasFooter:!1,hasMerge:!1,hasTree:!1,hasRowGroup:!1,hasColgroup:!1,visible:!1},exportParams:{filename:"",sheetName:"",mode:"",type:"",isColgroup:!1,isMerge:!1,isTreeAllExpanded:!1,isRowGroupAllExpanded:!1,useStyle:!1,original:!1,message:!0,isHeader:!1,isTitle:!1,isFooter:!1},visiblwRowsFlag:1,isRowGroupStatus:!1,rowGroupList:[],aggHandleFields:[],aggHandleAggColumns:[],rowGroupExpandedFlag:1,rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,insertRowFlag:1,removeRowFlag:1,mergeHeadFlag:1,mergeBodyFlag:1,mergeFootFlag:1,rowHeightStore:{xlarge:54,large:52,default:48,medium:44,small:40,mini:36},scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,lazScrollLoading:!1,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:!1,isCustomDragStatus:!0,ctPopupFlag:1,isCrossDragRow:!1,dragRow:null,isCrossDragCol:!1,dragCol:null,dragTipText:"",isDragResize:!1,isRowLoading:!1,isColLoading:!1}}let maxKey="__max";function getRowMaxHeight(t,e){if(!e&&t[maxKey])return t[maxKey];{let e=0;for(var l in t){var o=t[l];l!==maxKey&&_xeUtils.default.isNumber(o)&&o>e&&(e=o)}return t[maxKey]=e}}let getAllConvertColumns=(e,t)=>{let l=[];return e.forEach(e=>{e.parentId=t?t.id:null,e.visible&&(e.children&&e.children.length&&e.children.some(e=>e.visible)?(l.push(e),l.push(...getAllConvertColumns(e.children,e))):l.push(e))}),l},convertHeaderColumnToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l.level=e.level+1,t<l.level)&&(t=l.level),l.children&&l.children.length&&l.children.some(e=>e.visible)){let t=0;l.children.forEach(e=>{e.visible&&(o(e,l),t+=e.colSpan)}),l.colSpan=t}else l.colSpan=1},l=(e.forEach(e=>{e.level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getAllConvertColumns(e).forEach(e=>{e.children&&e.children.length&&e.children.some(e=>e.visible)?e.rowSpan=1:e.rowSpan=t-e.level+1,l[e.level-1].push(e)}),l};function convertHeaderToGridRows(t){var l=t.length,a=t[0].reduce((e,t)=>e+t.colSpan,0),i=[],n=[];for(let e=0;e<l;e++){var o=[],r=[];for(let e=0;e<a;e++)o.push(!1),r.push("");i.push(o),n.push(r)}for(let r=0;r<l;r++){let e=0;for(var u of t[r]){var{colSpan:s,rowSpan:d}=u;let o=-1;for(let l=e;l<=a-s;l++){let t=!0;for(let e=0;e<s;e++)if(i[r][l+e]){t=!1;break}if(t){o=l;break}}if(-1===o){for(let l=0;l<=a-s;l++){let t=!0;for(let e=0;e<s;e++)if(i[r][l+e]){t=!1;break}if(t){o=l;break}}if(-1===o)break}for(let t=r;t<r+d;t++)for(let e=o;e<o+s;e++)i[t][e]=!0,n[t][e]=u;e=o+s}}return n}function restoreScrollLocation(e,t,l){var o=e.internalData;return t||l?(o.intoRunScroll=!1,o.inVirtualScroll=!1,o.inWheelScroll=!1,o.inHeaderScroll=!1,o.inBodyScroll=!1,o.inFooterScroll=!1,o.scrollRenderType="",e.scrollTo(t,l)):e.clearScroll()}function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function createRowId(e,t,l){e=e.createKeyMethod;return e?e({row:t,keyField:l}):getRowUniqueId()}function hasDeepKey(e){return-1<e.indexOf(".")}function getRowkey(e){e=e.internalData.currKeyField;return e}function getRowid(e,t){var{isCurrDeepKey:e,currKeyField:l}=e.internalData;return t?encodeRowid((e?getDeepRowIdByKey:getFastRowIdByKey)(t,l)):""}function createHandleUpdateRowId(e){let{isCurrDeepKey:t,currKeyField:l}=e.internalData;e=e.getComputeMaps().computeRowOpts;let o=e.value,r=t?updateDeepRowKey:updateFastRowKey;return{rowKey:l,handleUpdateRowId(e){return e?r(o,e,l):""}}}function createHandleGetRowId(e){let{isCurrDeepKey:t,currKeyField:l}=e.internalData,o=t?getDeepRowIdByKey:getFastRowIdByKey;return{rowKey:l,handleGetRowId(e){return e?encodeRowid(o(e,l)):""}}}function encodeRowid(e){return _xeUtils.default.eqNull(e)?"":encodeURIComponent(e)}function getDeepRowIdByKey(e,t){return _xeUtils.default.get(e,t)}function updateDeepRowKey(e,t,l){let o=encodeRowid(getDeepRowIdByKey(t,l));return(0,_utils.eqEmptyValue)(o)&&(e=createRowId(e,t,l),o=""+e,_xeUtils.default.set(t,l,o)),o}function getFastRowIdByKey(e,t){return e[t]}function updateFastRowKey(e,t,l){let o=encodeRowid(getFastRowIdByKey(t,l));return(0,_utils.eqEmptyValue)(o)&&(e=createRowId(e,t,l),o=""+e,t[l]=e),o}function handleFieldOrColumn(e,t){return t?_xeUtils.default.isString(t)||_xeUtils.default.isNumber(t)?e.getColumnByField(""+t):t:null}function handleRowidOrRow(e,t){return t?(t=_xeUtils.default.isString(t)||_xeUtils.default.isNumber(t)?t:getRowid(e,t),e.getRowById(t)):null}function getCellRestHeight(e,t,l,o){var{height:t,minHeight:r,maxHeight:a}=t;let i=e.resizeHeight||t||l.height||e.height||o;return a&&a<=i&&(i=a),i=r&&r>=i?r:i}function getPaddingLeftRightSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingLeft)+_xeUtils.default.toNumber(e.paddingRight)):0}function getElementMarginAndWidth(e){var t,l;return e?(l=getComputedStyle(e),t=_xeUtils.default.toNumber(l.marginLeft),l=_xeUtils.default.toNumber(l.marginRight),e.offsetWidth+t+l):0}function toFilters(e,a){return e&&(_xeUtils.default.isArray(e)?e.map(({label:e,value:t,data:l,resetValue:o,checked:r})=>({label:e,value:t,data:l,resetValue:o,checked:!!r,_checked:!!r,_colId:a})):[])}function toTreePathSeq(e){return e.map((e,t)=>t%2==0?Number(e)+1:".").join("")}function getCellValue(e,t){return t?_xeUtils.default.get(e,t.field):null}function setCellValue(e,t,l){t&&_xeUtils.default.set(e,t.field,l)}function getRefElem(e){if(e){e=e.value;if(e)return e.$el||e}return null}function getCalcHeight(e){return"unset"!==e&&e||0}function getColReMaxWidth(e){var{$table:t,column:l,cell:o}=e,r=t.internalData.elemStore,{computeColumnOpts:t,computeResizableOpts:a}=t.getComputeMaps(),a=a.value,t=t.value,a=a.maxWidth,l=l.maxWidth||t.maxWidth;if(a){t=_xeUtils.default.isFunction(a)?a(e):a;if("auto"!==t)return Math.max(1,_xeUtils.default.toNumber(t))}e=_xeUtils.default.floor(1.8*(_xeUtils.default.toNumber(getComputedStyle(o).fontSize)||14))+(getPaddingLeftRightSize(o)+getPaddingLeftRightSize((0,_dom.queryElement)(o,".vxe-cell")));if(l){a=getRefElem(r["main-body-scroll"]);if(a){if((0,_dom.isScale)(l))return t=(a.clientWidth-1)/100,Math.max(e,Math.floor(_xeUtils.default.toInteger(l)*t));if((0,_dom.isPx)(l))return Math.max(e,_xeUtils.default.toInteger(l))}}return-1}function getColReMinWidth(e){var{$table:t,column:l,cell:o}=e,r=t.props,a=t.internalData,{computeColumnOpts:t,computeResizableOpts:i}=t.getComputeMaps(),i=i.value,t=t.value,i=i.minWidth;if(i){e=_xeUtils.default.isFunction(i)?i(e):i;if("auto"!==e)return Math.max(1,_xeUtils.default.toNumber(e))}var n,u,s,i=a.elemStore,e=r.showHeaderOverflow,a=l.showHeaderOverflow,r=l.minWidth||t.minWidth,l=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?e:a,t="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;let d=_xeUtils.default.floor(1.8*(_xeUtils.default.toNumber(getComputedStyle(o).fontSize)||14))+(getPaddingLeftRightSize(o)+getPaddingLeftRightSize((0,_dom.queryElement)(o,".vxe-cell")));if(t&&(e=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--drag-handle")),a=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--checkbox")),l=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--required-icon")),t=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--edit-icon")),n=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell-title-prefix-icon")),u=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell-title-suffix-icon")),s=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--sort")),o=getElementMarginAndWidth((0,_dom.queryElement)(o,".vxe-cell--filter")),d+=e+a+l+t+n+u+o+s),r){e=getRefElem(i["main-body-scroll"]);if(e){if((0,_dom.isScale)(r))return a=(e.clientWidth-1)/100,Math.max(d,Math.floor(_xeUtils.default.toInteger(r)*a));if((0,_dom.isPx)(r))return Math.max(d,_xeUtils.default.toInteger(r))}}return d}function isColumnInfo(e){return e&&(e.constructor===_columnInfo.ColumnInfo||e instanceof _columnInfo.ColumnInfo)}function getColumnList(e){let t=[];return e.forEach(e=>{t.push(...e.children&&e.children.length?getColumnList(e.children):[e])}),t}function createColumn(e,t,l){return isColumnInfo(t)?t:(0,_vue.reactive)(new _columnInfo.ColumnInfo(e,t,l))}function watchColumn(l,e,o){Object.keys(e).forEach(t=>{(0,_vue.watch)(()=>e[t],e=>{o.update(t,e),l&&("filters"===t?(l.setFilter(o,e),l.handleUpdateDataQueue()):["visible","fixed","width","minWidth","maxWidth"].includes(t)&&l.handleRefreshColumnQueue())})})}function assembleColumn(e,t,l,o){var e=e.reactData,r=e.staticColumns,a=t.parentNode,o=o?o.columnConfig:null,i=o?o.children:r;a&&i&&(l.defaultParentId=o?o.id:null,i.splice(_xeUtils.default.arrayIndexOf(a.children,t),0,l),e.staticColumns=r.slice(0))}function destroyColumn(e,t){var e=e.reactData,l=e.staticColumns,o=_xeUtils.default.findTree(l,e=>e.id===t.id,{children:"children"});o&&o.items.splice(o.index,1),e.staticColumns=l.slice(0)}function getRootColumn(e,t){var e=e.internalData,l=e.fullColumnIdData;if(!t)return null;let o=t.parentId;for(;l[o];){let e=l[o].column;if(!(o=e.parentId))return e}return t}function getFirstChildColumn(e){var t=e.children;return t&&t.length?getFirstChildColumn(_xeUtils.default.first(t)):e}function getLastChildColumn(e){var t=e.children;return t&&t.length?getFirstChildColumn(_xeUtils.default.last(t)):e}function clearTableDefaultStatus(e){var{props:t,internalData:l}=e,l=(l.initStatus=!1,[e.clearSort(),e.clearCurrentRow(),e.clearCurrentColumn(),e.clearRadioRow(),e.clearRadioReserve(),e.clearCheckboxRow(),e.clearCheckboxReserve(),e.clearRowExpand(),e.clearTreeExpand(),e.clearTreeExpandReserve(),e.clearPendingRow()]);return e.clearFilter&&l.push(e.clearFilter()),e.clearSelected&&(t.keyboardConfig||t.mouseConfig)&&l.push(e.clearSelected()),e.clearCellAreas&&t.mouseConfig&&l.push(e.clearCellAreas(),e.clearCopyCellArea()),Promise.all(l).then(()=>e.clearScroll())}function clearTableAllStatus(e){return e.clearFilter&&e.clearFilter(),clearTableDefaultStatus(e)}function rowToVisible(e,t){var l=e.reactData,o=e.internalData,{computeLeftFixedWidth:r,computeRightFixedWidth:a,computeRowOpts:i,computeCellOpts:n,computeDefaultRowHeight:u}=e.getComputeMaps(),{scrollYLoad:l,scrollYTop:s,isAllOverflow:d}=l,{elemStore:o,afterFullData:c,fullAllDataRowIdData:m,isResizeCellHeight:g}=o,i=i.value,n=n.value,u=u.value,r=r.value,a=a.value,o=getRefElem(o["main-body-scroll"]),p=getRowid(e,t);if(o){var f=o.clientHeight,h=o.scrollTop,o=o.querySelector(`[rowid="${p}"]`);if(o){var s=o.offsetTop+(l?s:0),o=o.clientHeight;if(s<h||h+f<s)return e.scrollTo(null,s);if(f+h<=s+o)return e.scrollTo(null,h+o)}else if(l)return g||n.height||i.height||!d?(o=(s=m[p]||{}).resizeHeight||n.height||i.height||s.height||u,(l=s.oTop)<h?e.scrollTo(null,l-r-1):e.scrollTo(null,l+o-(f-a-1))):e.scrollTo(null,(e.findRowIndexOf(c,t)-1)*u)}return Promise.resolve()}function colToVisible(l,o,r,t){var a=l.reactData,i=l.internalData,{computeLeftFixedWidth:n,computeRightFixedWidth:u}=l.getComputeMaps(),{scrollXLoad:a,scrollXLeft:s}=a,{elemStore:i,visibleColumn:d}=i,n=n.value,u=u.value,i=getRefElem(i["main-body-scroll"]);if(!r.fixed&&i){var c=i.clientWidth,m=i.scrollLeft;let e=null;if(t&&(t=getRowid(l,t),e=i.querySelector(`[rowid="${t}"] .`+r.id)),e=e||i.querySelector("."+r.id)){t=e.offsetLeft+(a?s:0),i=e.clientWidth;if(o||!(t<=m+n&&m+n<t+i)&&!(m+n<=t&&t<m+c-u)){if(t<m+n)return l.scrollTo(t-n-1);if(c-u<t+i-m)return l.scrollTo(t+i-(c-u-1))}}else if(a){let t=0;s=r.renderWidth;for(let e=0;e<d.length;e++){var g=d[e];if(g===r||g.id===r.id)break;t+=g.renderWidth}if(o||!(t<=m+n&&t+s>m+n)&&!(t>=m+n&&t<m+c-u))return t<m?l.scrollTo(t-n-1):l.scrollTo(t+s-(c-u-1))}}return Promise.resolve()}function hangleBolleanDefaultValue(e,t){return _xeUtils.default.isBoolean(e)?e:t}function handleCustomStoreConfig(e){var e=e.getComputeMaps().computeCustomOpts,{storage:e,storeOptions:t}=e.value,l=!0===e,e=Object.assign({},!l&&e||{},t);return{isCustomAlign:hangleBolleanDefaultValue(e.align,l),isCustomHeaderAlign:hangleBolleanDefaultValue(e.headerAlign,l),isCustomFooterAlign:hangleBolleanDefaultValue(e.footerAlign,l),isCustomResizable:hangleBolleanDefaultValue(e.resizable,l),isCustomVisible:hangleBolleanDefaultValue(e.visible,l),isCustomFixed:hangleBolleanDefaultValue(e.fixed,l),isCustomSort:hangleBolleanDefaultValue(e.sort,l),isCustomAggGroup:hangleBolleanDefaultValue(e.aggGroup,l),isCustomAggFunc:hangleBolleanDefaultValue(e.aggFunc,l),isCustomPager:hangleBolleanDefaultValue(e.pager,l)}}exports.convertHeaderColumnToRows=convertHeaderColumnToRows;
|
package/lib/ui/index.js
CHANGED
|
@@ -13,7 +13,7 @@ Object.defineProperty(exports, "VxeUI", {
|
|
|
13
13
|
exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.hooks = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
|
|
14
14
|
var _core = require("@vxe-ui/core");
|
|
15
15
|
var _utils = require("./src/utils");
|
|
16
|
-
const version = exports.version = "4.21.
|
|
16
|
+
const version = exports.version = "4.21.3";
|
|
17
17
|
_core.VxeUI.version = version;
|
|
18
18
|
_core.VxeUI.tableVersion = version;
|
|
19
19
|
_core.VxeUI.setConfig({
|
package/lib/ui/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.21.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.21.3",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},currentRowConfig:{strict:!0},currentColumnConfig:{strict:!0},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{mode:"tooltip",enterable:!0,defaultPlacement:"top"},headerTooltipConfig:{mode:"tooltip",enterable:!0},footerTooltipConfig:{mode:"tooltip",enterable:!0},validConfig:{showErrorMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},menuConfig:{destroyOnClose:!0},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,allowAlign:!0,showSortDragButton:!0,showFooter:!0,placement:"top-right",storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0,align:!0,headerAlign:!0,footerAlign:!0,aggFunc:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{destroyOnClose:!0,multiple:!0,showIcon:!0,maxHeight:280},floatingFilterConfig:{},aggregateConfig:{padding:!0,placement:"left",rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0,showRootLine:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0,isReuseKeep:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:1,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}},undoRedoHistoryConfig:{stackSize:50}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:"list",result:"result",total:"page.total",footerData:"footerData",message:"message"}}},toolbar:{},gantt:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_CUSTOM_FIXED_LEFT:iconPrefix+"fixed-left",TABLE_CUSTOM_FIXED_RIGHT:iconPrefix+"fixed-right",TABLE_CUSTOM_ALIGN_LEFT:iconPrefix+"align-left",TABLE_CUSTOM_ALIGN_CENTER:iconPrefix+"align-center",TABLE_CUSTOM_ALIGN_RIGHT:iconPrefix+"align-right",TABLE_CUSTOM_MOVE_UP:iconPrefix+"arrows-up",TABLE_CUSTOM_MOVE_DN:iconPrefix+"arrows-down",TABLE_CUSTOM_PUT_TOP:iconPrefix+"top",TABLE_CUSTOM_PUT_BOTTOM:iconPrefix+"bottom",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_MENU_OPTION_LOADING:iconPrefix+"repeat roll",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_AGG_GROUP:iconPrefix+"grouping",TABLE_DRAG_STATUS_AGG_VALUES:iconPrefix+"values",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",TABLE_AGGREGATE_GROUPING:iconPrefix+"grouping",TABLE_AGGREGATE_VALUES:iconPrefix+"values",TABLE_AGGREGATE_SORT:iconPrefix+"drag-handle",TABLE_AGGREGATE_DELETE:iconPrefix+"close",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"setting",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,i){return _core.VxeUI.modal.alert(e,o,i)},confirm(e,o,i){return _core.VxeUI.modal.confirm(e,o,i)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,i){return _core.VxeUI.modal.notification(e,o,i)}});var _default=exports.default=_core.VxeUI;
|
package/lib/ui/src/dom.js
CHANGED
|
@@ -51,7 +51,7 @@ function getTpImg() {
|
|
|
51
51
|
return tpImgEl;
|
|
52
52
|
}
|
|
53
53
|
function getPropClass(property, params) {
|
|
54
|
-
return property ? _xeUtils.default.isFunction(property) ? property(params) : property : '';
|
|
54
|
+
return property ? (_xeUtils.default.isFunction(property) ? property(params) : property) || '' : '';
|
|
55
55
|
}
|
|
56
56
|
function getClsRE(cls) {
|
|
57
57
|
if (!reClsMap[cls]) {
|
package/lib/ui/src/dom.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.checkTargetElement=checkTargetElement,exports.getAbsolutePos=getAbsolutePos,exports.getDomNode=getDomNode,exports.getEventTargetNode=getEventTargetNode,exports.getOffsetHeight=getOffsetHeight,exports.getOffsetPos=getOffsetPos,exports.getPaddingTopBottomSize=getPaddingTopBottomSize,exports.getPopupAppendElement=getPopupAppendElement,exports.getPopupContainer=getPopupContainer,exports.getPropClass=getPropClass,exports.getTpImg=getTpImg,exports.hasClass=hasClass,exports.hasControlKey=hasControlKey,exports.hasEventInputTarget=hasEventInputTarget,exports.initTpImg=initTpImg,exports.isNodeElement=isNodeElement,exports.isPx=isPx,exports.isScale=isScale,exports.queryElement=queryElement,exports.removeClass=removeClass,exports.scrollToView=scrollToView,exports.scrollTopTo=scrollTopTo,exports.setScrollLeft=setScrollLeft,exports.setScrollTop=setScrollTop,exports.toCssUnit=toCssUnit,exports.triggerEvent=triggerEvent,exports.updateCellTitle=updateCellTitle,exports.wheelScrollLeftTo=wheelScrollLeftTo,exports.wheelScrollTopTo=wheelScrollTopTo;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let reClsMap={},tpImgEl;function initTpImg(){return tpImgEl||((tpImgEl=new Image).src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),tpImgEl}function getTpImg(){return tpImgEl||initTpImg()}function getPropClass(e,t){return e
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.checkTargetElement=checkTargetElement,exports.getAbsolutePos=getAbsolutePos,exports.getDomNode=getDomNode,exports.getEventTargetNode=getEventTargetNode,exports.getOffsetHeight=getOffsetHeight,exports.getOffsetPos=getOffsetPos,exports.getPaddingTopBottomSize=getPaddingTopBottomSize,exports.getPopupAppendElement=getPopupAppendElement,exports.getPopupContainer=getPopupContainer,exports.getPropClass=getPropClass,exports.getTpImg=getTpImg,exports.hasClass=hasClass,exports.hasControlKey=hasControlKey,exports.hasEventInputTarget=hasEventInputTarget,exports.initTpImg=initTpImg,exports.isNodeElement=isNodeElement,exports.isPx=isPx,exports.isScale=isScale,exports.queryElement=queryElement,exports.removeClass=removeClass,exports.scrollToView=scrollToView,exports.scrollTopTo=scrollTopTo,exports.setScrollLeft=setScrollLeft,exports.setScrollTop=setScrollTop,exports.toCssUnit=toCssUnit,exports.triggerEvent=triggerEvent,exports.updateCellTitle=updateCellTitle,exports.wheelScrollLeftTo=wheelScrollLeftTo,exports.wheelScrollTopTo=wheelScrollTopTo;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let reClsMap={},tpImgEl;function initTpImg(){return tpImgEl||((tpImgEl=new Image).src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),tpImgEl}function getTpImg(){return tpImgEl||initTpImg()}function getPropClass(e,t){return e&&(_xeUtils.default.isFunction(e)?e(t):e)||""}function getClsRE(e){return reClsMap[e]||(reClsMap[e]=new RegExp(`(?:^|\\s)${e}(?!\\S)`,"g")),reClsMap[e]}function getNodeOffset(e,t,o){if(e){var n=e.parentNode;if(o.top+=e.offsetTop,o.left+=e.offsetLeft,n&&n!==document.documentElement&&n!==document.body&&(o.top-=n.scrollTop,o.left-=n.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return getNodeOffset(e.offsetParent,t,o)}return o}function isPx(e){return e&&/^\d+(\.\d+)?(px)?$/.test(e)}function isScale(e){return e&&/^\d+(\.\d+)?%$/.test(e)}function hasClass(e,t){return!!e&&(e.classList?e.classList.contains(t):!!(e.className&&e.className.match&&e.className.match(getClsRE(t))))}function removeClass(e,t){e&&hasClass(e,t)&&(e.className=e.className.replace(getClsRE(t),""))}function addClass(e,t){e&&!hasClass(e,t)&&(removeClass(e,t),e.className=e.className+" "+t)}function hasControlKey(e){return e.ctrlKey||e.metaKey}function toCssUnit(e,t="px"){return _xeUtils.default.isNumber(e)||/^\d+$/.test(""+e)?""+e+t:""+(e||"")}function queryElement(e,t){return e?e.querySelector(t):null}function getDomNode(){var e=document.documentElement,t=document.body;return{scrollTop:e.scrollTop||t.scrollTop,scrollLeft:e.scrollLeft||t.scrollLeft,visibleHeight:e.clientHeight||t.clientHeight,visibleWidth:e.clientWidth||t.clientWidth}}function getOffsetHeight(e){return e?e.offsetHeight:0}function getPaddingTopBottomSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingTop)+_xeUtils.default.toNumber(e.paddingBottom)):0}function setScrollTop(e,t){e&&(e.scrollTop=t)}function setScrollLeft(e,t){e&&(e.scrollLeft=t)}function updateCellTitle(e,t){t="html"===t.type?e.innerText:e.textContent;e.getAttribute("title")!==t&&e.setAttribute("title",t)}function checkTargetElement(e,t,o){let n=e;if(t&&t.length)for(var[l,r,s]=t;n;){if(l===n||r&&n===r||s&&n===s)return!0;if(o&&n===o)return!1;n=n.parentElement}return!1}function getEventTargetNode(e,t,o,n){let l,r=e.target.shadowRoot&&e.composed&&e.composedPath()[0]||e.target;for(;r&&r.nodeType&&r!==document;){if(o&&hasClass(r,o)&&(!n||n(r)))l=r;else if(r===t)return{flag:!o||!!l,container:t,targetElem:l};r=r.parentNode}return{flag:!1}}function getOffsetPos(e,t){return getNodeOffset(e,t,{left:0,top:0})}function getAbsolutePos(e){var e=e.getBoundingClientRect(),t=e.top,e=e.left,{scrollTop:o,scrollLeft:n,visibleHeight:l,visibleWidth:r}=getDomNode();return{boundingTop:t,top:o+t,boundingLeft:e,left:n+e,visibleHeight:l,visibleWidth:r}}function hasEventInputTarget(e){e=e?e.tagName:"";return e&&["input","textarea"].includes(e.toLowerCase())}let scrollIntoViewIfNeeded="scrollIntoViewIfNeeded",scrollIntoView="scrollIntoView";function scrollToView(e){e&&(e[scrollIntoViewIfNeeded]?e[scrollIntoViewIfNeeded]():e[scrollIntoView]&&e[scrollIntoView]())}function triggerEvent(e,t){e&&e.dispatchEvent(new Event(t))}function isNodeElement(e){return e&&1===e.nodeType}function scrollTopTo(o,n){let l=Math.abs(o),r=performance.now(),s=0,i=e=>{let t=(e-r)/l;t<0?t=0:1<t&&(t=1);e=Math.pow(t,2),e=Math.floor(o*e)-s;s+=e,n(e),t<1&&requestAnimationFrame(i)};requestAnimationFrame(i)}let wtlFrame;function wheelScrollLeftTo(e,t){wtlFrame&&cancelAnimationFrame(wtlFrame),wtlFrame=requestAnimationFrame(()=>{t(e),wtlFrame=null})}let wtaFrame;function wheelScrollTopTo(e,t){wtaFrame&&cancelAnimationFrame(wtaFrame),wtaFrame=requestAnimationFrame(()=>{t(e),wtaFrame=null})}function getPopupContainer(e){return(e&&_xeUtils.default.isFunction(e)?e({}):e)||"body"}function getPopupAppendElement(e){e=getPopupContainer(e);return _xeUtils.default.isString(e)?document.querySelector(e)||document.body:e}
|
package/lib/ui/src/log.js
CHANGED
|
@@ -9,7 +9,7 @@ var _core = require("@vxe-ui/core");
|
|
|
9
9
|
const {
|
|
10
10
|
log
|
|
11
11
|
} = _core.VxeUI;
|
|
12
|
-
const tableVersion = `table v${"4.21.
|
|
12
|
+
const tableVersion = `table v${"4.21.3"}`;
|
|
13
13
|
function createComponentLog(name) {
|
|
14
14
|
const uiVersion = _core.VxeUI.uiVersion ? `ui v${_core.VxeUI.uiVersion}` : '';
|
|
15
15
|
const ganttVersion = _core.VxeUI.ganttVersion ? `gantt v${_core.VxeUI.ganttVersion}` : '';
|
package/lib/ui/src/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.createComponentLog=createComponentLog,exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,tableVersion="table v4.21.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.createComponentLog=createComponentLog,exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,tableVersion="table v4.21.3";function createComponentLog(e){var r=_core.VxeUI.uiVersion?"ui v"+_core.VxeUI.uiVersion:"",o=_core.VxeUI.ganttVersion?"gantt v"+_core.VxeUI.ganttVersion:"",t=_core.VxeUI.designVersion?"design v"+_core.VxeUI.designVersion:"",r=[r,tableVersion,o,t].filter(e=>e).join(" ");return{warnLog:log.create("warn",r+"] ["+e),errLog:log.create("error",r+"] ["+e)}}let warnLog=exports.warnLog=log.create("warn",tableVersion),errLog=exports.errLog=log.create("error",tableVersion);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "4.21.
|
|
3
|
+
"version": "4.21.3",
|
|
4
4
|
"description": "A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"update": "npm install --legacy-peer-deps",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"typescript": "~5.9.3",
|
|
67
67
|
"vue": "3.4.27",
|
|
68
68
|
"vue-router": "~4.5.1",
|
|
69
|
-
"vxe-pc-ui": "4.17.
|
|
69
|
+
"vxe-pc-ui": "4.17.23"
|
|
70
70
|
},
|
|
71
71
|
"vetur": {
|
|
72
72
|
"tags": "helper/vetur/tags.json",
|
|
@@ -482,7 +482,11 @@ VxeUI.hooks.add('tableCustomModule', {
|
|
|
482
482
|
handleUpdateCustomColumn,
|
|
483
483
|
handleCustomStyle () {
|
|
484
484
|
const reactData = $xeTable.reactData
|
|
485
|
+
const { customStore } = reactData
|
|
485
486
|
|
|
487
|
+
if (!customStore.visible) {
|
|
488
|
+
return nextTick()
|
|
489
|
+
}
|
|
486
490
|
reactData.isCustomDragStatus = false
|
|
487
491
|
return updatePopupStyle()
|
|
488
492
|
}
|
|
@@ -137,9 +137,10 @@ export default defineVxeComponent({
|
|
|
137
137
|
const { hasMerge, columns } = storeData
|
|
138
138
|
const checkedAll = computeCheckedAll.value
|
|
139
139
|
const supportMerge = computeSupportMerge.value
|
|
140
|
-
|
|
140
|
+
// 内部导出使用 _columns -> _children 为自定义子集
|
|
141
|
+
const expColumns = XEUtils.searchTree(columns, (column: any) => column.checked, { children: 'children', mapChildren: '_children', original: true })
|
|
141
142
|
return Object.assign({}, defaultOptions, {
|
|
142
|
-
|
|
143
|
+
_columns: expColumns,
|
|
143
144
|
isMerge: hasMerge && supportMerge && checkedAll ? defaultOptions.isMerge : false
|
|
144
145
|
})
|
|
145
146
|
}
|
|
@@ -304,7 +304,7 @@ const tableExportMethodKeys: (keyof TableExportMethods)[] = ['exportData', 'impo
|
|
|
304
304
|
hooks.add('tableExportModule', {
|
|
305
305
|
setupTable ($xeTable) {
|
|
306
306
|
const { props, reactData, internalData } = $xeTable
|
|
307
|
-
const { computeTreeOpts, computePrintOpts, computeExportOpts, computeImportOpts,
|
|
307
|
+
const { computeTreeOpts, computePrintOpts, computeExportOpts, computeImportOpts, computeSeqOpts, computeRadioOpts, computeCheckboxOpts, computeColumnOpts, computeAggregateOpts } = $xeTable.getComputeMaps()
|
|
308
308
|
|
|
309
309
|
const getSeq = (cellValue: any, row: any, $rowIndex: number, column: VxeTableDefines.ColumnInfo, $columnIndex: number) => {
|
|
310
310
|
const seqOpts = computeSeqOpts.value
|
|
@@ -1280,9 +1280,9 @@ hooks.add('tableExportModule', {
|
|
|
1280
1280
|
const { initStore, isGroup, rowGroupList, footerTableData, exportStore, exportParams } = reactData
|
|
1281
1281
|
const { collectColumn, mergeBodyList, mergeFooterList } = internalData
|
|
1282
1282
|
const exportOpts = computeExportOpts.value
|
|
1283
|
+
const printOpts = computePrintOpts.value
|
|
1283
1284
|
const hasTree = !!treeConfig
|
|
1284
1285
|
const hasRowGroup = rowGroupList.length > 0
|
|
1285
|
-
const customOpts = computeCustomOpts.value
|
|
1286
1286
|
const selectRecords = $xeTable.getCheckboxRecords()
|
|
1287
1287
|
const proxyOpts = $xeGGWrapper ? $xeGGWrapper.getComputeMaps().computeProxyOpts.value : {} as VxeGridPropTypes.ProxyOpts
|
|
1288
1288
|
const hasFooter = !!footerTableData.length
|
|
@@ -1305,9 +1305,9 @@ hooks.add('tableExportModule', {
|
|
|
1305
1305
|
defOpts.isTreeAllExpanded = (defOpts as any).isAllExpand
|
|
1306
1306
|
}
|
|
1307
1307
|
|
|
1308
|
-
const types: string[] = defOpts.types || XEUtils.keys(exportOpts._typeMaps)
|
|
1308
|
+
const types: string[] = isPrint ? [] : (defOpts.types || XEUtils.keys(exportOpts._typeMaps))
|
|
1309
1309
|
const modes: string[] = defOpts.modes || []
|
|
1310
|
-
const checkMethod =
|
|
1310
|
+
const checkMethod = (isPrint ? printOpts : exportOpts).checkMethod
|
|
1311
1311
|
const exportColumns = collectColumn.slice(0)
|
|
1312
1312
|
const { columns, excludeFields, includeFields, extraFields } = defOpts
|
|
1313
1313
|
// 处理类型
|
|
@@ -1411,10 +1411,10 @@ hooks.add('tableExportModule', {
|
|
|
1411
1411
|
}
|
|
1412
1412
|
}
|
|
1413
1413
|
if (!modeList.some(item => item.value === mode)) {
|
|
1414
|
-
exportParams.mode = modeList[0].value
|
|
1414
|
+
exportParams.mode = modeList.length ? modeList[0].value : ''
|
|
1415
1415
|
}
|
|
1416
1416
|
if (!typeList.some(item => item.value === type)) {
|
|
1417
|
-
exportParams.type = typeList[0].value
|
|
1417
|
+
exportParams.type = typeList.length ? typeList[0].value : ''
|
|
1418
1418
|
}
|
|
1419
1419
|
if (!exportParams.widthMode) {
|
|
1420
1420
|
exportParams.widthMode = ''
|
|
@@ -1510,7 +1510,12 @@ hooks.add('tableExportModule', {
|
|
|
1510
1510
|
|
|
1511
1511
|
let isCustomCol = false
|
|
1512
1512
|
let customCols = []
|
|
1513
|
-
|
|
1513
|
+
const _columns = (opts as any)._columns
|
|
1514
|
+
if (_columns) {
|
|
1515
|
+
// 内部导出使用 _columns -> _children 为自定义子集
|
|
1516
|
+
isCustomCol = true
|
|
1517
|
+
customCols = XEUtils.searchTree(_columns, () => true, { children: '_children', mapChildren: 'childNodes', original: true })
|
|
1518
|
+
} else if (columns) {
|
|
1514
1519
|
isCustomCol = true
|
|
1515
1520
|
customCols = XEUtils.searchTree(columns, () => true, { children: 'children', mapChildren: 'childNodes', original: true })
|
|
1516
1521
|
} else {
|
|
@@ -23,6 +23,89 @@ hooks.add('tableFilterModule', {
|
|
|
23
23
|
const { refElem, refTableFilter } = $xeTable.getRefMaps()
|
|
24
24
|
const { computeFilterOpts, computeMouseOpts } = $xeTable.getComputeMaps()
|
|
25
25
|
|
|
26
|
+
const updatePopupStyle = () => {
|
|
27
|
+
const { filterStore } = reactData
|
|
28
|
+
const { elemStore } = internalData
|
|
29
|
+
const { column, targetEl } = filterStore
|
|
30
|
+
if (!column || !targetEl) {
|
|
31
|
+
return nextTick()
|
|
32
|
+
}
|
|
33
|
+
const tableEl = refElem.value
|
|
34
|
+
const { scrollTop, scrollLeft, visibleHeight, visibleWidth } = getDomNode()
|
|
35
|
+
const filterOpts = computeFilterOpts.value
|
|
36
|
+
const { maxHeight: customMaxHeight, transfer, zIndex } = filterOpts
|
|
37
|
+
const currEl = targetEl
|
|
38
|
+
const tableRect = tableEl.getBoundingClientRect()
|
|
39
|
+
const filterRender = column ? column.filterRender : null
|
|
40
|
+
const compConf = filterRender && isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
41
|
+
|
|
42
|
+
const headerScrollElem = getRefElem(elemStore['main-header-scroll'])
|
|
43
|
+
if (!headerScrollElem) {
|
|
44
|
+
return nextTick()
|
|
45
|
+
}
|
|
46
|
+
const tableFilter = refTableFilter.value
|
|
47
|
+
const filterWrapperElem = tableFilter ? tableFilter.getRefMaps().refElem.value as HTMLDivElement : null
|
|
48
|
+
if (!filterWrapperElem) {
|
|
49
|
+
return nextTick()
|
|
50
|
+
}
|
|
51
|
+
const btnRect = currEl.getBoundingClientRect()
|
|
52
|
+
const filterHeadElem = filterWrapperElem.querySelector<HTMLDivElement>('.vxe-table--filter-header')
|
|
53
|
+
const filterFootElem = filterWrapperElem.querySelector<HTMLDivElement>('.vxe-table--filter-footer')
|
|
54
|
+
const filterWidth = filterWrapperElem.offsetWidth
|
|
55
|
+
const centerWidth = currEl ? filterWidth / 2 : ((filterWidth - column.renderWidth) / 2)
|
|
56
|
+
let left = 0
|
|
57
|
+
let top = 0
|
|
58
|
+
let maxHeight: number = 0
|
|
59
|
+
/**
|
|
60
|
+
* 是否显示筛选按钮图标
|
|
61
|
+
* 如果不存在图标,则相对单元格居中显示
|
|
62
|
+
*/
|
|
63
|
+
if (transfer) {
|
|
64
|
+
left = btnRect.left - centerWidth + scrollLeft
|
|
65
|
+
top = btnRect.top + currEl.clientHeight + scrollTop
|
|
66
|
+
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))
|
|
67
|
+
if (left < 16) {
|
|
68
|
+
left = 16
|
|
69
|
+
} else if (left > (visibleWidth - filterWidth - 16)) {
|
|
70
|
+
left = visibleWidth - filterWidth - 16
|
|
71
|
+
}
|
|
72
|
+
} else {
|
|
73
|
+
left = btnRect.left - tableRect.left - centerWidth
|
|
74
|
+
top = btnRect.top - tableRect.top + currEl.clientHeight
|
|
75
|
+
maxHeight = Math.max(40, tableEl.clientHeight - top - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14)
|
|
76
|
+
if (left < 1) {
|
|
77
|
+
left = 1
|
|
78
|
+
} else if (left > (tableEl.clientWidth - filterWidth - 1)) {
|
|
79
|
+
left = tableEl.clientWidth - filterWidth - 1
|
|
80
|
+
}
|
|
81
|
+
if ($xeGGWrapper) {
|
|
82
|
+
const wrapperEl = $xeGGWrapper.getRefMaps().refElem.value
|
|
83
|
+
if (wrapperEl) {
|
|
84
|
+
const wrapperRect = wrapperEl.getBoundingClientRect()
|
|
85
|
+
top += tableRect.top - wrapperRect.top
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
const fStys: Record<string, any> = {
|
|
90
|
+
top: toCssUnit(top),
|
|
91
|
+
left: toCssUnit(left)
|
|
92
|
+
}
|
|
93
|
+
if (zIndex) {
|
|
94
|
+
fStys.zIndex = zIndex
|
|
95
|
+
}
|
|
96
|
+
filterStore.style = fStys
|
|
97
|
+
// 筛选面板是自适应表格高度
|
|
98
|
+
if (compConf ? !compConf.tableFilterAutoHeight : false) {
|
|
99
|
+
maxHeight = 0
|
|
100
|
+
} else {
|
|
101
|
+
if (customMaxHeight) {
|
|
102
|
+
maxHeight = customMaxHeight > maxHeight ? maxHeight : customMaxHeight
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
// 判断面板不能大于表格高度
|
|
106
|
+
filterStore.maxHeight = maxHeight
|
|
107
|
+
return nextTick()
|
|
108
|
+
}
|
|
26
109
|
const filterPrivateMethods: TableFilterPrivateMethods = {
|
|
27
110
|
checkFilterOptions () {
|
|
28
111
|
const { filterStore } = reactData
|
|
@@ -35,91 +118,20 @@ hooks.add('tableFilterModule', {
|
|
|
35
118
|
},
|
|
36
119
|
handleOpenFilterColumn (evnt: MouseEvent, btnEl: HTMLDivElement | null, colEl: HTMLDivElement, column: VxeTableDefines.ColumnInfo, params: any) {
|
|
37
120
|
const { initStore, filterStore } = reactData
|
|
38
|
-
const { elemStore } = internalData
|
|
39
121
|
if (filterStore.column === column && filterStore.visible) {
|
|
40
122
|
filterStore.visible = false
|
|
41
123
|
} else {
|
|
42
|
-
const tableEl = refElem.value
|
|
43
|
-
const { scrollTop, scrollLeft, visibleHeight, visibleWidth } = getDomNode()
|
|
44
|
-
const filterOpts = computeFilterOpts.value
|
|
45
|
-
const { maxHeight: customMaxHeight, transfer, zIndex } = filterOpts
|
|
46
124
|
const currEl = btnEl || colEl
|
|
47
|
-
const tableRect = tableEl.getBoundingClientRect()
|
|
48
|
-
const filterRender = column ? column.filterRender : null
|
|
49
|
-
const compConf = filterRender && isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
50
125
|
$xeTable.handleFilterOptions(column)
|
|
51
126
|
internalData._currFilterParams = params
|
|
127
|
+
filterStore.targetEl = currEl
|
|
52
128
|
filterStore.style = null
|
|
53
129
|
filterStore.visible = true
|
|
54
130
|
initStore.filter = true
|
|
55
|
-
nextTick(() => {
|
|
56
|
-
const headerScrollElem = getRefElem(elemStore['main-header-scroll'])
|
|
57
|
-
if (!headerScrollElem) {
|
|
58
|
-
return
|
|
59
|
-
}
|
|
60
|
-
const tableFilter = refTableFilter.value
|
|
61
|
-
const filterWrapperElem = tableFilter ? tableFilter.getRefMaps().refElem.value as HTMLDivElement : null
|
|
62
|
-
if (!filterWrapperElem) {
|
|
63
|
-
return
|
|
64
|
-
}
|
|
65
|
-
const btnRect = currEl.getBoundingClientRect()
|
|
66
|
-
const filterHeadElem = filterWrapperElem.querySelector<HTMLDivElement>('.vxe-table--filter-header')
|
|
67
|
-
const filterFootElem = filterWrapperElem.querySelector<HTMLDivElement>('.vxe-table--filter-footer')
|
|
68
|
-
const filterWidth = filterWrapperElem.offsetWidth
|
|
69
|
-
const centerWidth = btnEl ? filterWidth / 2 : ((filterWidth - column.renderWidth) / 2)
|
|
70
|
-
let left = 0
|
|
71
|
-
let top = 0
|
|
72
|
-
let maxHeight: number = 0
|
|
73
|
-
/**
|
|
74
|
-
* 是否显示筛选按钮图标
|
|
75
|
-
* 如果不存在图标,则相对单元格居中显示
|
|
76
|
-
*/
|
|
77
|
-
if (transfer) {
|
|
78
|
-
left = btnRect.left - centerWidth + scrollLeft
|
|
79
|
-
top = btnRect.top + currEl.clientHeight + scrollTop
|
|
80
|
-
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))
|
|
81
|
-
if (left < 16) {
|
|
82
|
-
left = 16
|
|
83
|
-
} else if (left > (visibleWidth - filterWidth - 16)) {
|
|
84
|
-
left = visibleWidth - filterWidth - 16
|
|
85
|
-
}
|
|
86
|
-
} else {
|
|
87
|
-
left = btnRect.left - tableRect.left - centerWidth
|
|
88
|
-
top = btnRect.top - tableRect.top + currEl.clientHeight
|
|
89
|
-
maxHeight = Math.max(40, tableEl.clientHeight - top - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14)
|
|
90
|
-
if (left < 1) {
|
|
91
|
-
left = 1
|
|
92
|
-
} else if (left > (tableEl.clientWidth - filterWidth - 1)) {
|
|
93
|
-
left = tableEl.clientWidth - filterWidth - 1
|
|
94
|
-
}
|
|
95
|
-
if ($xeGGWrapper) {
|
|
96
|
-
const wrapperEl = $xeGGWrapper.getRefMaps().refElem.value
|
|
97
|
-
if (wrapperEl) {
|
|
98
|
-
const wrapperRect = wrapperEl.getBoundingClientRect()
|
|
99
|
-
top += tableRect.top - wrapperRect.top
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
const fStys: Record<string, any> = {
|
|
104
|
-
top: toCssUnit(top),
|
|
105
|
-
left: toCssUnit(left)
|
|
106
|
-
}
|
|
107
|
-
if (zIndex) {
|
|
108
|
-
fStys.zIndex = zIndex
|
|
109
|
-
}
|
|
110
|
-
filterStore.style = fStys
|
|
111
|
-
// 筛选面板是自适应表格高度
|
|
112
|
-
if (compConf ? !compConf.tableFilterAutoHeight : false) {
|
|
113
|
-
maxHeight = 0
|
|
114
|
-
} else {
|
|
115
|
-
if (customMaxHeight) {
|
|
116
|
-
maxHeight = customMaxHeight > maxHeight ? maxHeight : customMaxHeight
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
// 判断面板不能大于表格高度
|
|
120
|
-
filterStore.maxHeight = maxHeight
|
|
121
|
-
})
|
|
122
131
|
}
|
|
132
|
+
nextTick(() => {
|
|
133
|
+
updatePopupStyle()
|
|
134
|
+
})
|
|
123
135
|
$xeTable.dispatchEvent('filter-visible', { column, field: column.field, property: column.field, filterList: $xeTable.getCheckedFilters(), visible: filterStore.visible }, evnt)
|
|
124
136
|
},
|
|
125
137
|
/**
|
|
@@ -276,6 +288,13 @@ hooks.add('tableFilterModule', {
|
|
|
276
288
|
$xeTable.dispatchEvent('clear-filter', { filterList: [] }, evnt)
|
|
277
289
|
}
|
|
278
290
|
}
|
|
291
|
+
},
|
|
292
|
+
handleFilterStyle () {
|
|
293
|
+
const { filterStore } = reactData
|
|
294
|
+
if (!filterStore.visible) {
|
|
295
|
+
return nextTick()
|
|
296
|
+
}
|
|
297
|
+
return updatePopupStyle()
|
|
279
298
|
}
|
|
280
299
|
}
|
|
281
300
|
|
|
@@ -8596,6 +8596,11 @@ export default defineVxeComponent({
|
|
|
8596
8596
|
}
|
|
8597
8597
|
|
|
8598
8598
|
const handleGlobalScrollEvent = (evnt: MouseEvent) => {
|
|
8599
|
+
const { filterStore } = reactData
|
|
8600
|
+
const filterOpts = computeFilterOpts.value
|
|
8601
|
+
if (filterStore.visible && filterOpts.transfer) {
|
|
8602
|
+
$xeTable.handleFilterStyle()
|
|
8603
|
+
}
|
|
8599
8604
|
reUpdateCustomStyleEvent(evnt)
|
|
8600
8605
|
}
|
|
8601
8606
|
|
package/packages/ui/src/dom.ts
CHANGED
|
@@ -20,7 +20,7 @@ export function getTpImg () {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
export function getPropClass (property: any, params: any) {
|
|
23
|
-
return property ? XEUtils.isFunction(property) ? property(params) : property : ''
|
|
23
|
+
return property ? (XEUtils.isFunction(property) ? property(params) : property) || '' : ''
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
function getClsRE (cls: any) {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|