vxe-table
Version:
一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、拖拽排序,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...
1 lines • 153 kB
JavaScript
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_ui=require("../../ui"),_cell=_interopRequireDefault(require("./cell")),_body=_interopRequireDefault(require("./body")),_header=_interopRequireDefault(require("./header")),_footer=_interopRequireDefault(require("./footer")),_props=_interopRequireDefault(require("./props")),_emits=_interopRequireDefault(require("./emits")),_util=require("./util"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_panel=_interopRequireDefault(require("../module/custom/panel")),_panel2=_interopRequireDefault(require("../module/filter/panel")),_importPanel=_interopRequireDefault(require("../module/export/import-panel")),_exportPanel=_interopRequireDefault(require("../module/export/export-panel")),_panel3=_interopRequireDefault(require("../module/menu/panel"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getIcon,getI18n,renderer,formats,createEvent,globalResize,interceptor,hooks,globalEvents,GLOBAL_EVENT_KEYS,useFns,renderEmptyElement}=_ui.VxeUI,supportMaxRow=5e6,customStorageKey="VXE_CUSTOM_STORE",maxYHeight=5e6,maxXWidth=5e6;var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTable",props:_props.default,emits:_emits.default,setup(W,e){let{slots:de,emit:r}=e,ue=_xeUtils.default.uniqueId(),se=_xeUtils.default.browse(),ce=_ui.VxeUI.getComponent("VxeLoading"),ge=_ui.VxeUI.getComponent("VxeTooltip"),t=(0,_vue.inject)("$xeTabs",null),ve=useFns.useSize(W).computeSize,V=(0,_vue.reactive)({staticColumns:[],tableGroupColumn:[],tableColumn:[],tableData:[],scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!1,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,rowHeight:0,parentHeight:0,isGroup:!1,isAllOverflow:!1,isAllSelected:!1,isIndeterminate:!1,currentRow:null,currentColumn:null,selectRadioRow:null,footerTableData:[],expandColumn: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:0,oldSortMaps:{},oldFixedMaps:{},oldVisibleMaps:{}},customColumnList:[],filterStore:{isAllSelected:!1,isIndeterminate:!1,style:null,options:[],column:null,multiple:!1,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:null,visible:!1,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,hasColgroup:!1,visible:!1},exportParams:{filename:"",sheetName:"",mode:"",type:"",isColgroup:!1,isMerge:!1,isAllExpand:!1,useStyle:!1,original:!1,message:!0,isHeader:!1,isTitle:!1,isFooter:!1},rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,insertRowFlag:1,removeRowFlag:1,mergeBodyFlag:1,mergeFootFlag:1,rowHeightStore:{large:52,default:48,medium:44,small:40,mini:36},scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:!1,isDragRowMove:!1,dragRow:null,isDragColMove:!1,dragCol:null,dragTipText:"",isDragResize:!1,isRowLoading:!1,isColLoading:!1}),Y={tZindex:0,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,headerHeight:0,footerHeight:0,customHeight:0,customMinHeight:0,customMaxHeight:0,hoverRow:null,lastScrollLeft:0,lastScrollTop:0,radioReserveRow:null,checkboxReserveRowMap:{},rowExpandedReserveRowMap:{},treeExpandedReserveRowMap:{},treeIndeterminateRowMaps:{},tableFullData:[],afterFullData:[],afterTreeFullData:[],afterFullRowMaps:{},tableFullTreeData:[],tableSynchData:[],tableSourceData:[],collectColumn:[],tableFullColumn:[],visibleColumn:[],fullAllDataRowIdData:{},fullDataRowIdData:{},visibleDataRowIdData:{},sourceDataRowIdData:{},fullColumnIdData:{},fullColumnFieldData:{},mergeBodyList:[],mergeBodyMaps:{},mergeFooterList:[],mergeFooterMaps:{},mergeBodyCellMaps:{},mergeFooterCellMaps:{},rowExpandedMaps:{},rowExpandLazyLoadedMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},selectCheckboxMaps:{},pendingRowMaps:{},insertRowMaps:{},removeRowMaps:{},inited:!1,tooltipTimeout:null,initStatus:!1,isActivated:!1},q={},$={},X=(0,_vue.ref)(),he=(0,_vue.ref)(),j=(0,_vue.ref)(),fe=(0,_vue.ref)(),me=(0,_vue.ref)(),pe=(0,_vue.ref)(),xe=(0,_vue.ref)(),_e=(0,_vue.ref)(),u=(0,_vue.ref)(),s=(0,_vue.ref)(),_=(0,_vue.ref)(),c=(0,_vue.ref)(),g=(0,_vue.ref)(),v=(0,_vue.ref)(),h=(0,_vue.ref)(),f=(0,_vue.ref)(),p=(0,_vue.ref)(),x=(0,_vue.ref)(),P=(0,_vue.ref)(),N=(0,_vue.ref)(),we=(0,_vue.ref)(),Ce=(0,_vue.ref)(),be=(0,_vue.ref)(),Re=(0,_vue.ref)(),Ee=(0,_vue.ref)(),ye=(0,_vue.ref)(),B=(0,_vue.ref)(),A=(0,_vue.ref)(),Se=(0,_vue.ref)(),Te=(0,_vue.ref)(),S=(0,_vue.ref)(),De=(0,_vue.ref)(),Ie=(0,_vue.ref)(),T=(0,_vue.ref)(),Me=(0,_vue.ref)(),Le=(0,_vue.ref)(),Fe=(0,_vue.ref)(),ke=(0,_vue.ref)(),w=(0,_vue.ref)(),H=(0,_vue.ref)(),K=(0,_vue.inject)("$xeGrid",null),C,b=(0,_vue.computed)(()=>{var e=W.id;return e?_xeUtils.default.isFunction(e)?""+(e({$table:ie,$grid:K})||""):""+e:""}),Ue=(0,_vue.computed)(()=>Object.assign({},getConfig().table.validConfig,W.validConfig));var l=(0,_vue.computed)(()=>y.value);let O=(0,_vue.computed)(()=>{var e=y.value.threshold;return e?_xeUtils.default.toNumber(e):0});var a=(0,_vue.computed)(()=>D.value);let y=(0,_vue.computed)(()=>Object.assign({},getConfig().table.scrollX,getConfig().table.virtualXConfig,W.scrollX,W.virtualXConfig)),D=(0,_vue.computed)(()=>Object.assign({},getConfig().table.scrollY,getConfig().table.virtualYConfig,W.scrollY,W.virtualYConfig)),z=(0,_vue.computed)(()=>Object.assign({},getConfig().table.scrollbarConfig,W.scrollbarConfig)),Ae=(0,_vue.computed)(()=>{var e=z.value;return!(!e.x||"top"!==e.x.position)}),He=(0,_vue.computed)(()=>{var e=z.value;return!(!e.y||"left"!==e.y.position)}),Oe=(0,_vue.computed)(()=>{var e=D.value.threshold;return e?_xeUtils.default.toNumber(e):0}),o=(0,_vue.computed)(()=>V.rowHeightStore),E=(0,_vue.computed)(()=>{var e=ve.value;return o.value[e||"default"]||18}),G=(0,_vue.computed)(()=>Object.assign({},getConfig().table.columnConfig,W.columnConfig)),ze=(0,_vue.computed)(()=>Object.assign({},getConfig().table.currentColumnConfig,W.currentColumnConfig)),I=(0,_vue.computed)(()=>{var e=Object.assign({},getConfig().table.cellConfig,W.cellConfig);return e.height&&(e.height=_xeUtils.default.toNumber(e.height)),e});var i=(0,_vue.computed)(()=>{var e=Object.assign({},getConfig().table.headerCellConfig,W.headerCellConfig);return e.height&&(e.height=_xeUtils.default.toNumber(e.height)),e}),n=(0,_vue.computed)(()=>{var e=Object.assign({},getConfig().table.footerCellConfig,W.footerCellConfig);return e.height&&(e.height=_xeUtils.default.toNumber(e.height)),e});let Z=(0,_vue.computed)(()=>Object.assign({},getConfig().table.rowConfig,W.rowConfig)),Pe=(0,_vue.computed)(()=>Object.assign({},getConfig().table.currentRowConfig,W.currentRowConfig)),J=(0,_vue.computed)(()=>Object.assign({},getConfig().table.rowDragConfig,W.rowDragConfig)),Q=(0,_vue.computed)(()=>Object.assign({},getConfig().table.columnDragConfig,W.columnDragConfig)),d=(0,_vue.computed)(()=>Object.assign({},getConfig().table.resizeConfig,W.resizeConfig)),Ne=(0,_vue.computed)(()=>Object.assign({},getConfig().table.resizableConfig,W.resizableConfig));var Be=(0,_vue.computed)(()=>Object.assign({startIndex:0},getConfig().table.seqConfig,W.seqConfig));let M=(0,_vue.computed)(()=>Object.assign({},getConfig().table.radioConfig,W.radioConfig)),ee=(0,_vue.computed)(()=>Object.assign({},getConfig().table.checkboxConfig,W.checkboxConfig)),We=(0,_vue.computed)(()=>Object.assign({},getConfig().tooltip,getConfig().table.tooltipConfig,W.tooltipConfig)),Ve=(0,_vue.computed)(()=>{var e=V.tooltipStore,t=We.value;return Object.assign({},t,e.currOpts)}),Ye=(0,_vue.computed)(()=>{var e=We.value;return Object.assign({},e)}),te=(0,_vue.computed)(()=>Object.assign({},getConfig().table.editConfig,W.editConfig)),R=(0,_vue.computed)(()=>Object.assign({orders:["asc","desc",null]},getConfig().table.sortConfig,W.sortConfig)),qe=(0,_vue.computed)(()=>Object.assign({},getConfig().table.filterConfig,W.filterConfig)),le=(0,_vue.computed)(()=>Object.assign({},getConfig().table.mouseConfig,W.mouseConfig)),$e=(0,_vue.computed)(()=>Object.assign({},getConfig().table.areaConfig,W.areaConfig)),re=(0,_vue.computed)(()=>Object.assign({},getConfig().table.keyboardConfig,W.keyboardConfig));var Xe=(0,_vue.computed)(()=>Object.assign({},getConfig().table.clipConfig,W.clipConfig)),je=(0,_vue.computed)(()=>Object.assign({},getConfig().table.fnrConfig,W.fnrConfig));let Ke=(0,_vue.computed)(()=>Object.assign({},getConfig().table.menuConfig,W.menuConfig)),Ge=(0,_vue.computed)(()=>{var e=V.columnStore,t=e.leftList;let l=0;for(let e=0;e<t.length;e++){var r=t[e];l+=r.renderWidth}return l}),Ze=(0,_vue.computed)(()=>{var e=V.columnStore,t=e.rightList;let l=0;for(let e=0;e<t.length;e++){var r=t[e];l+=r.renderWidth}return l}),Je=(0,_vue.computed)(()=>{var e=Ke.value.header;return e&&e.options?e.options:[]}),Qe=(0,_vue.computed)(()=>{var e=Ke.value.body;return e&&e.options?e.options:[]}),et=(0,_vue.computed)(()=>{var e=Ke.value.footer;return e&&e.options?e.options:[]}),tt=(0,_vue.computed)(()=>{var e=Ke.value,t=Je.value,l=Qe.value,r=et.value;return!!(W.menuConfig&&(0,_utils.isEnableConf)(e)&&(t.length||l.length||r.length))}),lt=(0,_vue.computed)(()=>{var e=V.ctxMenuStore;let t=[];return e.list.forEach(e=>{e.forEach(e=>{t.push(e)})}),t}),rt=(0,_vue.computed)(()=>Object.assign({},getConfig().table.exportConfig,W.exportConfig)),at=(0,_vue.computed)(()=>Object.assign({},getConfig().table.importConfig,W.importConfig));var ot=(0,_vue.computed)(()=>Object.assign({},getConfig().table.printConfig,W.printConfig));let ae=(0,_vue.computed)(()=>Object.assign({},getConfig().table.expandConfig,W.expandConfig)),oe=(0,_vue.computed)(()=>Object.assign({},getConfig().table.treeConfig,W.treeConfig)),it=(0,_vue.computed)(()=>Object.assign({},getConfig().table.emptyRender,W.emptyRender)),nt=(0,_vue.computed)(()=>Object.assign({},getConfig().table.loadingConfig,W.loadingConfig));var dt=(0,_vue.computed)(()=>W.border?Math.max(2,Math.ceil(V.scrollbarWidth/V.tableColumn.length)):1);let L=(0,_vue.computed)(()=>Object.assign({},getConfig().table.customConfig,W.customConfig)),ut=(0,_vue.computed)(()=>{var e=W.treeConfig,{rowExpandedFlag:t,expandColumn:l}=V;let{visibleDataRowIdData:r,rowExpandedMaps:a}=Y;var o=oe.value.transform;let i=[];if(l&&t){if(e&&!o)return _xeUtils.default.values(a);_xeUtils.default.each(a,(e,t)=>{r[t]&&i.push(e)})}return i}),st=(0,_vue.computed)(()=>{var e=Y.visibleColumn,t=V.tableColumn;return t.length||e.length?e.filter(e=>"auto"===e.width||"auto"===e.minWidth):[]}),ct=(0,_vue.computed)(()=>{var e=V.tableColumn,t=Y.collectColumn;let l=0;return e.length&&t.length&&t.forEach(e=>{e.renderFixed&&l++}),l}),gt=(0,_vue.computed)(()=>{var e=ct.value,t=G.value.maxFixedSize;return!!t&&t<=e}),vt=(0,_vue.computed)(()=>{var e=W.border;return!0===e?"full":e||"default"});var ht=(0,_vue.computed)(()=>{var{}=W,e=V.tableData,t=Y.tableFullData;let{strict:l,checkMethod:r}=ee.value;return!!l&&(!e.length&&!t.length||!!r&&t.every(e=>!r({row:e})))}),ft=(0,_vue.computed)(()=>{var{overflowX:e,scrollXLoad:t,overflowY:l,scrollYLoad:r}=V;return{x:e&&t,y:l&&r}});let mt={refElem:X,refTooltip:j,refValidTooltip:me,refTableFilter:xe,refTableCustom:_e,refTableMenu:pe,refTableHeader:s,refTableBody:_,refTableFooter:c,refTableLeftHeader:g,refTableLeftBody:v,refTableLeftFooter:h,refTableRightHeader:f,refTableRightBody:p,refTableRightFooter:x,refLeftContainer:P,refRightContainer:N,refColResizeBar:we,refRowResizeBar:Ce,refScrollXVirtualElem:Se,refScrollYVirtualElem:Te,refScrollXHandleElem:S,refScrollYHandleElem:T,refScrollXSpaceElem:w,refScrollYSpaceElem:H},pt={computeSize:ve,computeTableId:b,computeValidOpts:Ue,computeVirtualXOpts:y,computeVirtualYOpts:D,computeScrollbarOpts:z,computeScrollbarXToTop:Ae,computeScrollbarYToLeft:He,computeColumnOpts:G,computeCurrentColumnOpts:ze,computeScrollXThreshold:O,computeScrollYThreshold:Oe,computeRowHeightMaps:o,computeDefaultRowHeight:E,computeCellOpts:I,computeHeaderCellOpts:i,computeFooterCellOpts:n,computeRowOpts:Z,computeCurrentRowOpts:Pe,computeRowDragOpts:J,computeColumnDragOpts:Q,computeResizeOpts:d,computeResizableOpts:Ne,computeSeqOpts:Be,computeRadioOpts:M,computeCheckboxOpts:ee,computeTooltipOpts:We,computeEditOpts:te,computeSortOpts:R,computeFilterOpts:qe,computeMouseOpts:le,computeAreaOpts:$e,computeKeyboardOpts:re,computeClipOpts:Xe,computeFNROpts:je,computeHeaderMenu:Je,computeBodyMenu:Qe,computeFooterMenu:et,computeIsMenu:tt,computeMenuList:lt,computeMenuOpts:Ke,computeExportOpts:rt,computeImportOpts:at,computePrintOpts:ot,computeExpandOpts:ae,computeTreeOpts:oe,computeEmptyOpts:it,computeLoadingOpts:nt,computeCellOffsetWidth:dt,computeCustomOpts:L,computeLeftFixedWidth:Ge,computeRightFixedWidth:Ze,computeFixedColumnSize:ct,computeIsMaxFixedColumn:gt,computeIsAllCheckboxDisabled:ht,computeVirtualScrollBars:ft,computeSXOpts:l,computeSYOpts:a},ie={xID:ue,props:W,context:e,reactData:V,internalData:Y,getRefMaps:()=>mt,getComputeMaps:()=>pt,xeGrid:K,xegrid:K},xt=(e,t,l)=>{e=_xeUtils.default.get(e,l),t=_xeUtils.default.get(t,l);return!(!(0,_utils.eqEmptyValue)(e)||!(0,_utils.eqEmptyValue)(t))||(_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e)?""+e==""+t:_xeUtils.default.isEqual(e,t))},_t=e=>{var t=R.value.orders,e=e.order||null,e=t.indexOf(e)+1;return t[e<t.length?e:0]},wt=e=>{var t=getConfig().version,l=_xeUtils.default.toStringJSON(localStorage.getItem(customStorageKey)||""),l=l&&l._v===t?l:{_v:t};return(e?l[e]:l)||{}},Ct=e=>{let l=Y.fullAllDataRowIdData,r={};return _xeUtils.default.each(e,(e,t)=>{l[t]&&(r[t]=e)}),r},bt=e=>{let l=Y.fullDataRowIdData,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&-1===ie.findRowIndexOf(r,l[t].row)&&r.push(l[t].row)}),r},Rt=()=>{var{isScrollXBig:a,scrollXWidth:o}=V,{elemStore:i,visibleColumn:n,fullColumnIdData:d}=Y,u=Ge.value,s=Ze.value,i=(0,_util.getRefElem)(i["main-body-scroll"]);if(i){var c=i.clientWidth;let e=i.scrollLeft;var g=(e=a?Math.ceil((o-c)*Math.min(1,e/(maxXWidth-c))):e)+u,v=e+c-s;let t=0,l=n.length;for(;t<l;){var h=Math.floor((t+l)/2);(d[n[h].id]||{}).oLeft<=g?t=h+1:l=h}let r=0;i=Math.max(0,t<n.length?t-2:0);for(let e=i,t=n.length;e<t;e++){var f=d[n[e].id]||{};if(r++,f.oLeft>v||60<=r)break}return{toVisibleIndex:Math.max(0,i),visibleSize:Math.max(1,r)}}return{toVisibleIndex:0,visibleSize:6}},Et=(e,t)=>{var l=V.rowHeightStore;t&&t.clientHeight&&(l[e]=t.clientHeight)},yt=()=>{var t=V.isAllOverflow,l=s.value,r=_.value,r=r?r.$el:null,e=E.value;let a=0;if(t){if(r){t=l?l.$el:null;let e;(e=!(e=r.querySelector("tr"))&&t?t.querySelector("tr"):e)&&(a=e.clientHeight)}a=a||e}else a=e;return Math.max(18,a)},St=()=>{var{isAllOverflow:t,expandColumn:l,isScrollYBig:o,scrollYHeight:i}=V,{elemStore:n,isResizeCellHeight:d,afterFullData:u,fullAllDataRowIdData:s}=Y,c=Z.value,g=I.value,v=E.value,n=(0,_util.getRefElem)(n["main-body-scroll"]);if(n){var h=n.clientHeight;let e=n.scrollTop;var f=e=o?Math.ceil((i-h)*Math.min(1,e/(maxYHeight-h))):e,m=e+h;let r=-1,a=0;if(d||g.height||c.height||l||!t){var p=(0,_util.createHandleGetRowId)(ie).handleGetRowId;let l=0,e=u.length;for(;l<e;){var x=Math.floor((l+e)/2);(s[p(u[x])]||{}).oTop<=f?l=x+1:e=x}for(let e=r=Math.max(0,l<u.length?l-2:0),t=u.length;e<t;e++){var _=s[p(u[e])]||{};if(a++,_.oTop>m||100<=a)break}}else r=Math.floor(f/v)-1,a=Math.ceil(h/v)+1;return{toVisibleIndex:Math.max(0,r),visibleSize:Math.max(6,a)}}return{toVisibleIndex:0,visibleSize:6}},Tt=(l,r,a)=>{for(let e=0,t=l.length;e<t;e++){var o=l[e],{startIndex:i,endIndex:n}=r,d=o[a],o=d+o[a+"span"];d<i&&i<o&&(r.startIndex=d),d<n&&n<o&&(r.endIndex=o),r.startIndex===i&&r.endIndex===n||(e=-1)}};function Dt(t){var l={};if(t&&t.length)for(let e=0;e<t.length;e++){var{row:r,col:a,rowspan:o,colspan:i}=t[e];for(let t=0;t<o;t++)for(let e=0;e<i;e++)l[r+t+":"+(a+e)]=t||e?{rowspan:0,colspan:0}:{rowspan:o,colspan:i}}return l}let It=(e,a,o)=>{let i=[];if(e){let r=Y.visibleColumn;(e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{let{row:t,col:l}=e;o&&_xeUtils.default.isNumber(t)&&(t=o[t]),_xeUtils.default.isNumber(l)&&(l=r[l]);var e=_xeUtils.default.findIndexOf(a,e=>!(e._row!==t&&(0,_util.getRowid)(ie,e._row)!==(0,_util.getRowid)(ie,t)||e._col.id!==l&&e._col.id!==l.id));-1<e&&(e=a.splice(e,1),i.push(e[0]))})}return i},Mt=()=>{var e=Y.tableFullColumn;e.forEach(e=>{e.order=null})},Lt=e=>{var t,l=V.parentHeight,e=W[e];let r=0;return r=e?"100%"===e||"auto"===e?l:(t=ie.getExcludeHeight(),r=(0,_dom.isScale)(e)?Math.floor((_xeUtils.default.toInteger(e)||1)/100*l):_xeUtils.default.toNumber(e),Math.max(40,r-t)):r},Ft=e=>{var t=Y.collectColumn;let{resizableData:i,sortData:n,visibleData:d,fixedData:u}=e,s=!1;i||n||d||u?(_xeUtils.default.eachTree(t,(e,t,l,r,a)=>{var o=e.getKey();a||(u&&void 0!==u[o]&&(e.fixed=u[o]),n&&_xeUtils.default.isNumber(n[o])&&(s=!0,e.renderSortNumber=n[o])),i&&_xeUtils.default.isNumber(i[o])&&(e.resizeWidth=i[o]),d&&_xeUtils.default.isBoolean(d[o])&&(e.visible=d[o])}),s&&(t=_xeUtils.default.orderBy(t,"renderSortNumber"),Y.collectColumn=t,Y.tableFullColumn=ul(t)),V.isCustomStatus=!0):V.isCustomStatus=!1},kt=()=>{var{tableFullColumn:e,collectColumn:t}=Y;let s=Y.fullColumnIdData={},c=Y.fullColumnFieldData={};var l=le.value,r=ae.value;let g=G.value;var a=Q.value,o=D.value;let{isCrossDrag:v,isSelfToChildDrag:h}=a,f=L.value.storage;var a=Z.value,i=t.some(_utils.hasChildrenList);let m=!!W.showOverflow,p,x,_,w,C,b,n=(e,t,l,r,a)=>{var{id:o,field:i,fixed:n,type:d,treeNode:u}=e,t={$index:-1,_index:-1,column:e,colid:o,index:t,items:l,parent:a||null,width:0,oLeft:0};i?(c[i]&&(0,_log.errLog)("vxe.error.colRepet",["field",i]),c[i]=t):(f&&!d||g.drag&&(v||h))&&(0,_log.errLog)("vxe.error.reqProp",[`${e.getTitle()||d||""} -> column.field=?`]),!b&&n&&(b=n),C||"html"!==d||(C=e),u?(x&&(0,_log.warnLog)("vxe.error.colRepet",["tree-node",u]),x=x||e):"expand"===d&&(p&&(0,_log.warnLog)("vxe.error.colRepet",["type",d]),p=p||e),"checkbox"===d?(_&&(0,_log.warnLog)("vxe.error.colRepet",["type",d]),_=_||e):"radio"===d&&(w&&(0,_log.warnLog)("vxe.error.colRepet",["type",d]),w=w||e),m&&!1===e.showOverflow&&(m=!1),s[o]&&(0,_log.errLog)("vxe.error.colRepet",["colId",o]),s[o]=t};i?_xeUtils.default.eachTree(t,(e,t,l,r,a,o)=>{e.level=o.length,n(e,t,l,0,a)}):e.forEach(n),p&&"fixed"!==r.mode&&o.enabled&&(0,_log.warnLog)("vxe.error.notConflictProp",['column.type="expand',"virtual-y-config.enabled=false"]),p&&"fixed"!==r.mode&&l.area&&(0,_log.errLog)("vxe.error.errConflicts",["mouse-config.area","column.type=expand"]),C&&(g.useKey||(0,_log.errLog)("vxe.error.reqProp",["column-config.useKey & column.type=html"]),a.useKey||(0,_log.errLog)("vxe.error.reqProp",["row-config.useKey & column.type=html"])),V.isGroup=i,V.treeNodeColumn=x,V.expandColumn=p,V.isAllOverflow=m},Ut=()=>{Y.customHeight=Lt("height"),Y.customMinHeight=Lt("minHeight"),Y.customMaxHeight=Lt("maxHeight")},At=(e,t)=>{var l=t.querySelectorAll(`.vxe-cell--wrapper[colid="${e.id}"]`);let r=0;var t=l[0];t&&t.parentElement&&(t=getComputedStyle(t.parentElement),r=Math.ceil(_xeUtils.default.toNumber(t.paddingLeft)+_xeUtils.default.toNumber(t.paddingRight)));let a=e.renderAutoWidth-r;for(let e=0;e<l.length;e++){var o=l[e];a=Math.max(a,o?Math.ceil(o.scrollWidth)+4:0)}return a+r},Ht=()=>{var e=st.value;let r=Y.fullColumnIdData,a=X.value;a&&(a.setAttribute("data-calc-col","Y"),e.forEach(e=>{var t=e.id,t=r[t],l=At(e,a);t&&(t.width=Math.max(l,t.width)),e.renderAutoWidth=l}),ie.analyColumnWidth(),a.removeAttribute("data-calc-col"))},Ot=()=>{var e=Y.elemStore,e=(0,_util.getRefElem)(e["main-body-wrapper"]);if(e){var a=T.value;if(a)if(S.value){let l=0;a=e.clientWidth,e=a;let r=e/100;var t=W.fit,o=V.columnStore,{resizeList:o,pxMinList:i,autoMinList:n,pxList:d,scaleList:u,scaleMinList:s,autoList:c,remainList:g}=o;if(i.forEach(e=>{var t=_xeUtils.default.toInteger(e.minWidth);l+=t,e.renderWidth=t}),n.forEach(e=>{var t=Math.max(60,_xeUtils.default.toInteger(e.renderAutoWidth));l+=t,e.renderWidth=t}),s.forEach(e=>{var t=Math.floor(_xeUtils.default.toInteger(e.minWidth)*r);l+=t,e.renderWidth=t}),u.forEach(e=>{var t=Math.floor(_xeUtils.default.toInteger(e.width)*r);l+=t,e.renderWidth=t}),d.forEach(e=>{var t=_xeUtils.default.toInteger(e.width);l+=t,e.renderWidth=t}),c.forEach(e=>{var t=Math.max(60,_xeUtils.default.toInteger(e.renderAutoWidth));l+=t,e.renderWidth=t}),o.forEach(e=>{var t=_xeUtils.default.toInteger(e.resizeWidth);l+=t,e.renderWidth=t}),e-=l,r=0<e?Math.floor(e/(s.length+i.length+n.length+g.length)):0,t?0<e&&s.concat(i).concat(n).forEach(e=>{l+=r,e.renderWidth+=r}):r=40,g.forEach(e=>{var t=Math.max(r,40);e.renderWidth=t,l+=t}),t){var v=u.concat(s).concat(i).concat(n).concat(g);let t=v.length-1;if(0<t){let e=a-l;if(0<e){for(;0<e&&0<=t;)e--,v[t--].renderWidth++;l=a}}}V.scrollXWidth=l,V.resizeWidthFlag++,_l(),Ut()}}},zt=(e,t)=>{var l=t.querySelectorAll(`.vxe-cell--wrapper[rowid="${e.rowid}"]`);let r=e.height;for(let e=0;e<l.length;e++){var a=l[e],o=a.parentElement,o=Math.ceil(_xeUtils.default.toNumber(o.style.paddingTop)+_xeUtils.default.toNumber(o.style.paddingBottom)),a=a?a.clientHeight:0;r=Math.max(r-o,Math.ceil(a))}return r},Pt=()=>{let{tableData:e,isAllOverflow:t,scrollYLoad:l,scrollXLoad:r}=V,a=Y.fullAllDataRowIdData,o=E.value,i=X.value;if(!t&&l&&i){let l=(0,_util.createHandleGetRowId)(ie).handleGetRowId;i.setAttribute("data-calc-row","Y"),e.forEach(e=>{var t,e=l(e),e=a[e];e&&(t=zt(e,i),e.height=Math.max(o,r?Math.max(e.height,t):t)),i.removeAttribute("data-calc-row")}),V.calcCellHeightFlag++}},Nt=l=>{let{sortBy:r,sortType:a}=l;return e=>{let t;return t=r?_xeUtils.default.isFunction(r)?r({row:e,column:l}):_xeUtils.default.get(e,r):q.getCellLabel(e,l),a&&"auto"!==a?"number"===a?_xeUtils.default.toNumber(t):"string"===a?_xeUtils.default.toValueString(t):t:isNaN(t)?t:_xeUtils.default.toNumber(t)}},Bt=()=>{let o=W.treeConfig,{afterFullData:e,fullDataRowIdData:i,fullAllDataRowIdData:n}=Y,d=(0,_util.createHandleGetRowId)(ie).handleGetRowId,u={};e.forEach((e,t)=>{var l=d(e),r=n[l],a=t+1;r?(o||(r.seq=a),r._index=t):(r={row:e,rowid:l,seq:a,index:-1,$index:-1,_index:t,treeIndex:-1,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0},n[l]=r,i[l]=r),u[l]=e}),Y.afterFullRowMaps=u},Wt=()=>{var e=W.treeConfig;let{fullDataRowIdData:n,fullAllDataRowIdData:d,afterTreeFullData:t}=Y;var l=oe.value,r=l.transform,a=l.children||l.childrenField;let u={};if(e){let i=(0,_util.createHandleGetRowId)(ie).handleGetRowId;_xeUtils.default.eachTree(t,(e,t,l,r)=>{var a=i(e),o=d[a],r=r.map((e,t)=>t%2==0?Number(e)+1:".").join("");o?(o.seq=r,o.treeIndex=t):(o={row:e,rowid:a,seq:r,index:-1,$index:-1,_index:-1,treeIndex:-1,items:[],parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0},d[a]=o,n[a]=o),u[a]=e},{children:r?l.mapChildrenField:a}),Y.afterFullRowMaps=u}Bt()},Vt=()=>{var e=W.treeConfig;let{fullAllDataRowIdData:s,treeExpandedMaps:c}=Y;var t=oe.value,l=t.children||t.childrenField;if(e&&t.transform){let n=(0,_util.createHandleGetRowId)(ie).handleGetRowId,d=[],u={};return _xeUtils.default.eachTree(Y.afterTreeFullData,(e,t,l,r,a)=>{var o=n(e),i=n(a);(!a||u[i]&&c[i])&&((a=s[o])&&(a._index=d.length),u[o]=1,d.push(e))},{children:l}),Y.afterFullData=d,gl(d),d}return Y.afterFullData},F=()=>{let{showHeaderOverflow:x,showFooterOverflow:_,mouseConfig:e,spanMethod:w,footerSpanMethod:C}=W,{isGroup:b,currentRow:t,tableColumn:R,scrollXLoad:E,scrollYLoad:y,overflowX:l,scrollbarWidth:r,overflowY:a,scrollbarHeight:o,scrollXWidth:S,columnStore:i,editStore:n,isAllOverflow:T,expandColumn:D}=V,{visibleColumn:I,tableHeight:M,headerHeight:L,footerHeight:F,elemStore:k,customHeight:U,customMinHeight:d,customMaxHeight:A}=Y;var u=X.value;if(u){let g=a?r:0,v=l?o:0;var s=be.value,c=le.value;let h=ae.value;var H=(0,_util.getRefElem)(k["main-body-wrapper"]),O=(0,_util.getRefElem)(k["main-body-table"]);s&&(s.style.top=L+"px",s.style.height=H?H.offsetHeight-v+"px":"");let f=0,m=0,p=d-L-F-v;A&&(m=Math.max(p,A-L-F-v)),(f=U?U-L-F-v:f)||O&&(f=O.clientHeight),f&&(m&&(f=Math.min(m,f)),f=Math.max(p,f));var s=Ae.value,H=De.value,O=Ie.value,z=Se.value,z=(z&&(z.style.height=v+"px",z.style.visibility=l?"visible":"hidden"),Le.value),z=(z&&(z.style.left=s?g+"px":"",z.style.width=u.clientWidth-g+"px"),H&&(H.style.width=s?g+"px":"",H.style.display=s&&l&&v?"block":""),O&&(O.style.width=s?"":g+"px",O.style.display=!s&&l&&v?"block":""),Te.value),u=(z&&(z.style.width=g+"px",z.style.height=f+L+F+"px",z.style.visibility=a?"visible":"hidden"),Me.value),H=(u&&(u.style.height=L+"px",u.style.display=a&&L?"block":""),Fe.value),O=(H&&(H.style.height=f+"px",H.style.top=L+"px"),ke.value),s=(O&&(O.style.height=F+"px",O.style.top=L+f+"px",O.style.display=a&&F?"block":""),B.value);return s&&(s.style.height=f+"px",s.style.top=L+"px"),["main","left","right"].forEach((d,e)=>{let u=0<e?d:"";e="left"===u;let s=[],c;u&&(s=e?i.leftList:i.rightList,c=(e?P:N).value),["header","body","footer"].forEach(l=>{var r=(0,_util.getRefElem)(k[d+`-${l}-wrapper`]),a=(0,_util.getRefElem)(k[d+`-${l}-scroll`]),o=(0,_util.getRefElem)(k[d+`-${l}-table`]);if("header"===l){let e=R,t=!1;b?e=I:(!(E||y||x)||w||C||(t=!0),u&&(e=I,t)&&(e=s||[]));var i=e.reduce((e,t)=>e+t.renderWidth,0);u&&(!b&&t?r&&(r.style.width=i?i+"px":""):r&&(r.style.width=S?S+"px":"")),a&&(a.style.height=L+"px"),o&&(o.style.width=i?i+"px":"")}else if("body"===l){a&&(a.style.maxHeight=A?m+"px":"",a.style.height=U?f+"px":"",a.style.minHeight=p+"px"),c&&(r&&(r.style.top=L+"px"),c.style.height=`${0<U?U:M+L+F+v}px`,c.style.width=s.reduce((e,t)=>e+t.renderWidth,0)+"px");let e=R,t=!1;!(E||y||T)||D&&"fixed"!==h.mode||w||C||(t=!0);var i=(e=u&&(e=I,t)?s||[]:e).reduce((e,t)=>e+t.renderWidth,0),n=(u&&(t?r&&(r.style.width=i?i+"px":""):r&&(r.style.width=S?S+"px":"")),o&&(o.style.width=i?i+"px":"",o.style.paddingRight=g&&u&&(se["-moz"]||se.safari)?g+"px":""),(0,_util.getRefElem)(k[d+`-${l}-emptyBlock`]));n&&(n.style.width=i?i+"px":"")}else if("footer"===l){let e=R,t=!1;!(E||y||_)||w||C||(t=!0);n=(e=u&&(e=I,t)?s||[]:e).reduce((e,t)=>e+t.renderWidth,0);u&&(t?r&&(r.style.width=n?n+"px":""):r&&(r.style.width=S?S+"px":"")),a&&(a.style.height=F+"px",c)&&r&&(r.style.top=`${0<U?U-F-v:M+L}px`),o&&(o.style.width=n?n+"px":"")}})}),t&&ie.setCurrentRow(t),e&&c.selected&&n.selected.row&&n.selected.column&&ie.addCellSelectedClass(),(0,_vue.nextTick)()}},Yt=e=>ie.triggerValidate?ie.triggerValidate(e):(0,_vue.nextTick)(),qt=(e,t)=>{Yt("blur").catch(e=>e).then(()=>{ie.handleEdit(t,e).then(()=>Yt("change")).catch(e=>e)})},$t=e=>{M.value.reserve&&(Y.radioReserveRow=e)},Xt=(e,t)=>{var l,r=Y.checkboxReserveRowMap;ee.value.reserve&&(l=(0,_util.getRowid)(ie,e),t?r[l]=e:r[l]&&delete r[l])},jt=(e,t)=>{var l=M.value.checkMethod;return e&&(t||!l||l({row:e}))&&(V.selectRadioRow=e,$t(e)),(0,_vue.nextTick)()},m=(e,t,l)=>(e&&!_xeUtils.default.isArray(e)&&(e=[e]),ie.handleBatchSelectRows(e,!!t,l),ie.checkSelectionStatus(),(0,_vue.nextTick)()),Kt=(t,l)=>{let r=W.treeConfig,{afterFullData:e,checkboxReserveRowMap:a,selectCheckboxMaps:o}=Y;var i=oe.value,i=i.children||i.childrenField,n=ee.value;let{checkField:d,reserve:u,checkMethod:s}=n,c=(0,_util.createHandleGetRowId)(ie).handleGetRowId,g=n.indeterminateField||n.halfField,v={};return d?(n=e=>{!l&&s&&!s({row:e})||(t&&(v[c(e)]=e),_xeUtils.default.set(e,d,t)),r&&g&&_xeUtils.default.set(e,g,!1)},r?_xeUtils.default.eachTree(e,n,{children:i}):e.forEach(n)):r?t?_xeUtils.default.eachTree(e,e=>{var t;!l&&s&&!s({row:e})||(t=c(e),v[t]=e)},{children:i}):!l&&s&&_xeUtils.default.eachTree(e,e=>{var t=c(e);!s({row:e})&&o[t]&&(v[t]=e)},{children:i}):t?!l&&s?e.forEach(e=>{var t=c(e);(o[t]||s({row:e}))&&(v[t]=e)}):e.forEach(e=>{var t=c(e);v[t]=e}):!l&&s&&e.forEach(e=>{var t=c(e);!s({row:e})&&o[t]&&(v[t]=e)}),u&&(t?_xeUtils.default.each(v,(e,t)=>{a[t]=e}):e.forEach(e=>Xt(e,!1))),V.updateCheckboxFlag++,Y.selectCheckboxMaps=d?{}:v,V.isAllSelected=t,V.isIndeterminate=!1,Y.treeIndeterminateRowMaps={},ie.checkSelectionStatus(),(0,_vue.nextTick)()},Gt=o=>{var e=oe.value,t=ee.value;let{transform:i,loadMethod:n}=e,d=t.checkStrictly;return new Promise(a=>{if(n){let{fullAllDataRowIdData:e,treeExpandLazyLoadedMaps:t}=Y,l=(0,_util.getRowid)(ie,o),r=e[l];t[l]=o,Promise.resolve(n({$table:ie,row:o})).then(e=>{if(r&&(r.treeLoaded=!0),t[l]&&delete t[l],e=_xeUtils.default.isArray(e)?e:[])return ie.loadTreeChildren(o,e).then(e=>{var t=Y.treeExpandedMaps;return e.length&&!t[l]&&(t[l]=o),V.treeExpandedFlag++,!d&&ie.isCheckedByCheckboxRow(o)&&m(e,!0),(0,_vue.nextTick)().then(()=>{if(i)return ie.handleTableData(),Wt(),(0,_vue.nextTick)()})})}).catch(()=>{var e=Y.treeExpandLazyLoadedMaps;r&&(r.treeLoaded=!1),e[l]&&delete e[l]}).finally(()=>{V.treeExpandedFlag++,(0,_vue.nextTick)().then(()=>ie.recalculate()).then(()=>a())})}else a()})},Zt=(e,t)=>{var l,r=Y.treeExpandedReserveRowMap;oe.value.reserve&&(l=(0,_util.getRowid)(ie,e),t?r[l]=e:r[l]&&delete r[l])},Jt=i=>new Promise(r=>{var e=ae.value.loadMethod;if(e){var{fullAllDataRowIdData:a,rowExpandLazyLoadedMaps:o}=Y;let t=(0,_util.getRowid)(ie,i),l=a[t];o[t]=i,e({$table:ie,row:i,rowIndex:ie.getRowIndex(i),$rowIndex:ie.getVMRowIndex(i)}).then(()=>{var e=Y.rowExpandedMaps;l&&(l.expandLoaded=!0),e[t]=i,V.rowExpandedFlag++}).catch(()=>{l&&(l.expandLoaded=!1)}).finally(()=>{var e=Y.rowExpandLazyLoadedMaps;e[t]&&delete e[t],V.rowExpandedFlag++,(0,_vue.nextTick)().then(()=>ie.recalculate()).then(()=>ie.updateCellAreas()).then(()=>r())})}else r()}),Qt=(e,t)=>{var l,r=Y.rowExpandedReserveRowMap;ae.value.reserve&&(l=(0,_util.getRowid)(ie,e),t?r[l]=e:r[l]&&delete r[l])},el=()=>(0,_vue.nextTick)().then(()=>{var e,{scrollXLoad:t,scrollYLoad:l}=V,{scrollXStore:r,scrollYStore:a}=Y,o=D.value,i=y.value,i=(t?({toVisibleIndex:t,visibleSize:e}=Rt(),n=Math.max(0,i.oSize?_xeUtils.default.toNumber(i.oSize):0),r.preloadSize=_xeUtils.default.toNumber(i.preSize),r.offsetSize=n,r.visibleSize=e,r.endIndex=Math.max(r.startIndex+r.visibleSize+n,r.endIndex),r.visibleStartIndex=Math.max(r.startIndex,t),r.visibleEndIndex=Math.min(r.endIndex,t+e),ie.updateScrollXData().then(()=>{dl()})):ie.updateScrollXSpace(),yt()),{toVisibleIndex:n,visibleSize:r}=(a.rowHeight=i,V.rowHeight=i,St());l?(t=Math.max(0,o.oSize?_xeUtils.default.toNumber(o.oSize):0),a.preloadSize=_xeUtils.default.toNumber(o.preSize),a.offsetSize=t,a.visibleSize=r,a.endIndex=Math.max(a.startIndex+r+t,a.endIndex),a.visibleStartIndex=Math.max(a.startIndex,n),a.visibleEndIndex=Math.min(a.endIndex,n+r),ie.updateScrollYData().then(()=>{fl()})):ie.updateScrollYSpace()}),tl=()=>{var{scrollXWidth:e,scrollYHeight:t}=V,l=Y.elemStore,r=z.value,a=(0,_util.getRefElem)(l["main-body-wrapper"]),o=(0,_util.getRefElem)(l["main-header-table"]),l=(0,_util.getRefElem)(l["main-footer-table"]),i=S.value,n=T.value;let d=!1;a&&(t=t>a.clientHeight,n&&(V.scrollbarWidth=Math.max(r.width||0,n.offsetWidth-n.clientWidth)),V.overflowY=t,d=e>a.clientWidth,i&&(V.scrollbarHeight=Math.max(r.height||0,i.offsetHeight-i.clientHeight)),n=o?o.clientHeight:0,t=l?l.clientHeight:0,Y.tableHeight=a.offsetHeight,Y.headerHeight=n,Y.footerHeight=t,V.overflowX=d,V.parentHeight=Math.max(Y.headerHeight+t+20,ie.getParentHeight())),d&&ie.checkScrolling()},ll=e=>{var t,l,r,a=X.value;return Y.rceRunTime=Date.now(),a&&a.clientWidth?((a=he.value)&&([a,t,l,r]=a.children,Et("default",a),Et("medium",t),Et("small",l),Et("mini",r)),Ht(),Ot(),tl(),F(),U(),el().then(()=>{if(Ht(),e&&Ot(),tl(),F(),e&&k(),U(),e)return el()})):(0,_vue.nextTick)()},rl=(e,t)=>{var{keepSource:l,treeConfig:r}=W;let o=V.scrollYLoad,{scrollYStore:a,scrollXStore:i,lastScrollLeft:n,lastScrollTop:d}=Y;var u=oe.value;let s=ae.value;var c=u.transform,g=u.children||u.childrenField;let v=[],h=(0,_vue.reactive)(e?e.slice(0):[]),f=(h.length>supportMaxRow&&(0,_log.errLog)("vxe.error.errMaxRow",[supportMaxRow]),r&&(c?(u.rowField||(0,_log.errLog)("vxe.error.reqProp",["tree-config.rowField"]),u.parentField||(0,_log.errLog)("vxe.error.reqProp",["tree-config.parentField"]),g||(0,_log.errLog)("vxe.error.reqProp",["tree-config.childrenField"]),u.mapChildrenField||(0,_log.errLog)("vxe.error.reqProp",["tree-config.mapChildrenField"]),g===u.mapChildrenField&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.childrenField","tree-config.mapChildrenField"]),v=_xeUtils.default.toArrayTree(h,{key:u.rowField,parentKey:u.parentField,children:g,mapChildren:u.mapChildrenField}),h=v.slice(0)):v=h.slice(0)),a.startIndex=0,a.endIndex=1,i.startIndex=0,i.endIndex=1,V.isRowLoading=!0,V.scrollVMLoading=!1,Y.insertRowMaps={},Y.removeRowMaps={},gl(h));return V.isDragColMove=!1,V.isDragRowMove=!1,Y.tableFullData=h,Y.tableFullTreeData=v,ie.cacheRowMap(t),Y.tableSynchData=e,t&&(Y.isResizeCellHeight=!1),l&&ie.cacheSourceMap(h),ie.clearCellAreas&&W.mouseConfig&&(ie.clearCellAreas(),ie.clearCopyCellArea()),ie.clearMergeCells(),ie.clearMergeFooterItems(),ie.handleTableData(!0),ie.updateFooter(),ie.handleUpdateBodyMerge(),(0,_vue.nextTick)().then(()=>{Ut(),F()}).then(()=>{el()}).then(()=>(f&&(a.endIndex=a.visibleSize),f&&(V.expandColumn&&"fixed"!==s.mode&&(0,_log.errLog)("vxe.error.notConflictProp",['column.type="expand','expand-config.mode="fixed"']),W.height||W.maxHeight||(0,_log.errLog)("vxe.error.reqProp",["table.height | table.max-height | table.scroll-y={enabled: false}"]),W.spanMethod)&&(0,_log.errLog)("vxe.error.scrollErrProp",["table.span-method"]),(()=>{var e=W.treeConfig,{expandColumn:t,currentRow:l,selectRadioRow:r}=V,{fullDataRowIdData:a,fullAllDataRowIdData:o,radioReserveRow:i,selectCheckboxMaps:n,treeExpandedMaps:d,rowExpandedMaps:u}=Y,s=ae.value,c=oe.value,g=M.value,v=ee.value;r&&!o[(0,_util.getRowid)(ie,r)]&&(V.selectRadioRow=null),g.reserve&&i&&a[r=(0,_util.getRowid)(ie,i)]&&jt(a[r].row,!0),Y.selectCheckboxMaps=Ct(n),V.updateCheckboxFlag++,v.reserve&&m(bt(Y.checkboxReserveRowMap),!0,!0),l&&!o[(0,_util.getRowid)(ie,l)]&&(V.currentRow=null),Y.rowExpandedMaps=t?Ct(u):{},V.rowExpandedFlag++,t&&s.reserve&&ie.setRowExpand(bt(Y.rowExpandedReserveRowMap),!0),Y.treeExpandedMaps=e?Ct(d):{},V.treeExpandedFlag++,e&&c.reserve&&ie.setTreeExpand(bt(Y.treeExpandedReserveRowMap),!0)})(),ie.checkSelectionStatus(),new Promise(a=>{(0,_vue.nextTick)().then(()=>ll(!1)).then(()=>(Pt(),k(),ll(!1))).then(()=>{let e=n,t=d;var l=y.value,r=D.value;l.scrollToLeftOnChange&&(e=0),r.scrollToTopOnChange&&(t=0),V.isRowLoading=!1,ll(!1),o===f?(0,_util.restoreScrollLocation)(ie,e,t).then(()=>{a()}):setTimeout(()=>{(0,_util.restoreScrollLocation)(ie,e,t).then(()=>{a()})})})})))},al=()=>{var e,t,l;(()=>{var e=W.checkboxConfig;if(e){let l=Y.fullDataRowIdData;var{checkAll:e,checkRowKeys:r}=ee.value;if(e)Kt(!0,!0);else if(r){let t=[];r.forEach(e=>{l[e]&&t.push(l[e].row)}),m(t,!0,!0)}}})(),(l=W.radioConfig)&&(l=Y.fullDataRowIdData,{checkRowKey:e,reserve:t}=M.value,e)&&(l[e]&&jt(l[e].row,!0),t)&&(l=(0,_util.getRowkey)(ie),Y.radioReserveRow={[l]:e}),(()=>{var e=W.expandConfig;if(e){let l=Y.fullDataRowIdData;var{expandAll:e,expandRowKeys:r}=ae.value;if(e)ie.setAllRowExpand(!0);else if(r){let t=[];r.forEach(e=>{l[e]&&t.push(l[e].row)}),ie.setRowExpand(t,!0)}}})(),(()=>{var e=W.treeConfig;if(e){let a=Y.tableFullData;var e=oe.value,{expandAll:t,expandRowKeys:i}=e;let o=e.children||e.childrenField;if(t)ie.setAllTreeExpand(!0);else if(i){let l=[],r=(0,_util.getRowkey)(ie);i.forEach(t=>{var e=_xeUtils.default.findTree(a,e=>t===_xeUtils.default.get(e,r),{children:o});e&&l.push(e.item)}),ie.setTreeExpand(l,!0)}}})(),(t=W.mergeCells)&&ie.setMergeCells(t),(l=W.mergeFooterItems)&&ie.setMergeFooterItems(l),(0,_vue.nextTick)(()=>setTimeout(()=>ie.recalculate()))},ol=()=>{(()=>{var t=W.sortConfig;if(t){var l=R.value;let e=l.defaultSort;e&&(e=_xeUtils.default.isArray(e)?e:[e]).length&&((t.multiple?e:e.slice(0,1)).forEach((e,t)=>{var{field:e,order:l}=e;e&&l&&(e=ie.getColumnByField(e))&&e.sortable&&(e.order=l,e.sortTime=Date.now()+t)}),l.remote||ie.handleTableData(!0).then(F))}})()},il=()=>{var e=V.scrollXLoad;let{visibleColumn:t,scrollXStore:l,fullColumnIdData:r}=Y;e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);e.forEach((e,t)=>{e=e.id,e=r[e];e&&(e.$index=t)}),V.tableColumn=e},nl=()=>{var e=_xeUtils.default.orderBy(Y.collectColumn,"renderSortNumber"),e=(Y.collectColumn=e,ul(e));Y.tableFullColumn=e,kt()},dl=()=>{var e=V.isScrollXBig,{mergeBodyList:t,mergeFooterList:l,scrollXStore:r}=Y,{preloadSize:a,startIndex:o,endIndex:i,offsetSize:n}=r,{toVisibleIndex:d,visibleSize:u}=Rt(),e={startIndex:Math.max(0,e?d-1:d-1-n-a),endIndex:e?d+u:d+u+n+a},{startIndex:n,endIndex:a}=(r.visibleStartIndex=d-1,r.visibleEndIndex=d+u+1,Tt(t.concat(l),e,"col"),e);!(d<=o||i-u-1<=d)||o===n&&i===a||(r.startIndex=n,r.endIndex=a,ie.updateScrollXData()),ie.closeTooltip()},ul=e=>{let t=[];return e.forEach(e=>{t.push(...e.children&&e.children.length?ul(e.children):[e])}),t},sl=e=>{let i=[],n=[],d=[];var{isGroup:t,columnStore:l}=V,r=y.value;let{collectColumn:a,tableFullColumn:o,scrollXStore:u,fullColumnIdData:s}=Y;if(t){let t=[],l=[],r=[];_xeUtils.default.eachTree(a,(e,t,l,r,a)=>{var o=(0,_utils.hasChildrenList)(e);a&&a.fixed&&(e.fixed=a.fixed),a&&e.fixed!==a.fixed&&(0,_log.errLog)("vxe.error.groupFixed"),o?e.visible=!!_xeUtils.default.findTree(e.children,e=>!(0,_utils.hasChildrenList)(e)&&e.visible):e.visible&&("left"===e.fixed?i:"right"===e.fixed?d:n).push(e)}),a.forEach(e=>{e.visible&&("left"===e.fixed?t:"right"===e.fixed?r:l).push(e)}),V.tableGroupColumn=t.concat(l).concat(r)}else o.forEach(e=>{e.visible&&("left"===e.fixed?i:"right"===e.fixed?d:n).push(e)});let c=i.concat(n).concat(d);t=!!r.enabled&&-1<r.gt&&(0===r.gt||r.gt<o.length);return V.hasFixedColumn=0<i.length||0<d.length,Object.assign(l,{leftList:i,centerList:n,rightList:d}),t&&(W.spanMethod&&(0,_log.warnLog)("vxe.error.scrollErrProp",["span-method"]),W.footerSpanMethod&&(0,_log.warnLog)("vxe.error.scrollErrProp",["footer-span-method"]),e)&&(r=Rt().visibleSize,u.startIndex=0,u.endIndex=r,u.visibleSize=r,u.visibleStartIndex=0,u.visibleEndIndex=r),c.length===Y.visibleColumn.length&&Y.visibleColumn.every((e,t)=>e===c[t])||(ie.clearMergeCells(),ie.clearMergeFooterItems()),V.scrollXLoad=t,c.forEach((e,t)=>{e=e.id,e=s[e];e&&(e._index=t)}),Y.visibleColumn=c,il(),e?(_l(),ie.updateFooter().then(()=>ie.recalculate()).then(()=>(ie.updateCellAreas(),ie.recalculate()))):ie.updateFooter()},cl=e=>{let r=ae.value;Y.collectColumn=e;e=ul(e);return Y.tableFullColumn=e,V.isColLoading=!0,V.isDragColMove=!1,Y.collectColumn.forEach((e,t)=>{t+=1;e.sortNumber=t,e.renderSortNumber=t}),Promise.resolve((()=>{var e=W.customConfig,t=b.value,l=L.value,{storage:r,restoreStore:a}=l,o=!0===r,r=o?{}:Object.assign({},r||{}),i=o||r.resizable,n=o||r.visible,d=o||r.fixed,o=o||r.sort;if((e?(0,_utils.isEnableConf)(l):l.enabled)&&(i||n||d||o)){if(t)return r=wt(t),a?Promise.resolve(a({id:t,type:"restore",storeData:r})).then(e=>{if(e)return Ft(e)}).catch(e=>e):Ft(r);(0,_log.errLog)("vxe.error.reqProp",["id"])}})()).then(()=>{var{scrollXLoad:e,scrollYLoad:t,expandColumn:l}=V;return kt(),sl(!0).then(()=>{V.scrollXLoad&&dl()}),ie.clearMergeCells(),ie.clearMergeFooterItems(),ie.handleTableData(!0),(e||t)&&l&&"fixed"!==r.mode&&(0,_log.warnLog)("vxe.error.scrollErrProp",["column.type=expand"]),(0,_vue.nextTick)().then(()=>(C&&C.syncUpdate({collectColumn:Y.collectColumn,$table:ie}),ie.handleUpdateCustomColumn&&ie.handleUpdateCustomColumn(),V.isColLoading=!1,ie.recalculate()))})},gl=e=>{var t=W.treeConfig,l=D.value,r=oe.value.transform,e=e||Y.tableFullData,r=(r||!t)&&!!l.enabled&&-1<l.gt&&(0===l.gt||l.gt<e.length);return V.scrollYLoad=r},vl=(e,t)=>{let l=V.treeNodeColumn,{fullAllDataRowIdData:r,tableFullData:a,treeExpandedMaps:o,treeExpandLazyLoadedMaps:i}=Y;var n=oe.value;let{reserve:d,lazy:u,accordion:s,toggleMethod:c}=n,g=n.children||n.childrenField,v=n.hasChild||n.hasChildField,h=[],f=ie.getColumnIndex(l),m=ie.getVMColumnIndex(l),p=(0,_util.createHandleGetRowId)(ie).handleGetRowId,x=c?e.filter(e=>c({$table:ie,expanded:t,column:l,columnIndex:f,$columnIndex:m,row:e})):e;return s&&(x=x.length?[x[x.length-1]]:[],n=_xeUtils.default.findTree(a,e=>e===x[0],{children:g}))&&n.items.forEach(e=>{e=p(e);o[e]&&delete o[e]}),t?x.forEach(e=>{var t,l=p(e);o[l]||(t=r[l])&&(u&&e[v]&&!t.treeLoaded&&!i[l]?h.push(Gt(e)):e[g]&&e[g].length&&(o[l]=e))}):x.forEach(e=>{e=p(e);o[e]&&delete o[e]}),d&&x.forEach(e=>Zt(e,t)),V.treeExpandedFlag++,Promise.all(h).then(()=>ie.recalculate())},hl=(e,t)=>{Kt(t),e&&ne("checkbox-all",{records:()=>ie.getCheckboxRecords(),reserves:()=>ie.getCheckboxReserveRecords(),indeterminates:()=>ie.getCheckboxIndeterminateRecords(),checked:t},e)},fl=()=>{var{isAllOverflow:e,isScrollYBig:t}=V,{mergeBodyList:l,scrollYStore:r}=Y,{preloadSize:a,startIndex:o,endIndex:i,offsetSize:n}=r,e=e?n:n+1,{toVisibleIndex:d,visibleSize:u}=St(),n={startIndex:Math.max(0,t?d-1:d-1-n-a),endIndex:t?d+u:d+u+e+a},{startIndex:t,endIndex:e}=(r.visibleStartIndex=d-1,r.visibleEndIndex=d+u+1,Tt(l,n,"row"),n);!(d<=o||i-u-1<=d)||o===t&&i===e||(r.startIndex=t,r.endIndex=e,ie.updateScrollYData())};i=l=>{let r=(0,_util.createHandleGetRowId)(ie).handleGetRowId;return function(e){var t=Y.fullAllDataRowIdData;if(e){t=t[r(e)];if(t)return t[l]}return-1}},n=l=>function(e){var t=Y.fullColumnIdData;if(e){t=t[e.id];if(t)return t[l]}return-1};let ne=(e,t,l)=>{r(e,createEvent(l,{$table:ie,$grid:K},t))},ml=()=>{var e=X.value;e&&e.clientWidth&&e.clientHeight&&q.recalculate()},pl=(e,t)=>{ie.analyColumnWidth(),ie.recalculate().then(()=>{ie.saveCustomStore("update:width"),ie.updateCellAreas(),ie.dispatchEvent("column-resizable-change",t,e),ie.dispatchEvent("resizable-change",t,e),setTimeout(()=>ie.recalculate(!0),300)})},xl=(e,t)=>{V.resizeHeightFlag++,ie.recalculate().then(()=>{ie.updateCellAreas(),ie.dispatchEvent("row-resizable-change",t,e),setTimeout(()=>ie.recalculate(!0),300)})},_l=()=>{var{visibleColumn:l,fullColumnIdData:r}=Y;let a=0;for(let e=0,t=l.length;e<t;e++){var o=l[e];r[o.id].oLeft=a,a+=o.renderWidth}},k=()=>{var l=V.expandColumn,{afterFullData:r,fullAllDataRowIdData:a,rowExpandedMaps:o}=Y,i=ae.value,n=Z.value,d=I.value,u=E.value,s=(0,_util.createHandleGetRowId)(ie).handleGetRowId;let c=0;for(let e=0,t=r.length;e<t;e++){var g=s(r[e]),v=a[g]||{};v.oTop=c,c+=v.resizeHeight||d.height||n.height||v.height||u,l&&o[g]&&(c+=v.expandHeight||i.height||0)}},U=()=>{let{expandColumn:e,scrollYLoad:d,scrollYTop:u,isScrollYBig:s}=V;var t=ae.value;let c=Z.value,g=I.value,v=E.value;t=t.mode;if(e&&"fixed"===t){let{elemStore:e,fullAllDataRowIdData:i}=Y;t=B.value;let n=(0,_util.getRefElem)(e["main-body-scroll"]);if(t&&n){let o=!1;_xeUtils.default.arrayEach(t.children,t=>{var l=t.getAttribute("rowid")||"",r=i[l];if(r){var a=t.offsetHeight+1,l=n.querySelector(`.vxe-body--row[rowid="${l}"]`);let e=0;d?e=s&&l?l.offsetTop+l.offsetHeight:r.oTop+(r.resizeHeight||g.height||c.height||r.height||v):l&&(e=l.offsetTop+l.offsetHeight),s&&(e+=u),t.style.top=(0,_dom.toCssUnit)(e),o||r.expandHeight!==a&&(o=!0),r.expandHeight=a}}),o&&(V.rowExpandHeightFlag++,(0,_vue.nextTick)(()=>{k()}))}}},wl=()=>{var e=Y.elemStore,t=B.value,e=(0,_util.getRefElem)(e["main-body-scroll"]);t&&e&&(t.scrollTop=e.scrollTop)},Cl=(q={dispatchEvent:ne,getEl(){return X.value},clearAll(){return(0,_util.clearTableAllStatus)(ie)},syncData(){return(0,_log.errLog)("vxe.error.delFunc",["syncData","getData"]),(0,_vue.nextTick)().then(()=>(V.tableData=[],r("update:data",Y.tableFullData),(0,_vue.nextTick)()))},updateData(){let{scrollXLoad:e,scrollYLoad:t}=V;return $.handleTableData(!0).then(()=>{if(q.updateFooter(),e||t)return e&&$.updateScrollXSpace(),t&&$.updateScrollYSpace(),q.refreshScroll()}).then(()=>(q.updateCellAreas(),q.recalculate(!0))).then(()=>{setTimeout(()=>ie.recalculate(),50)})},loadData(e){let t=Y.initStatus;return rl(e,!1).then(()=>(Y.inited=!0,Y.initStatus=!0,t||al(),q.recalculate()))},reloadData(e){return q.clearAll().then(()=>(Y.inited=!0,Y.initStatus=!0,rl(e,!0))).then(()=>(al(),q.recalculate()))},setRow(t,a){if(t&&a){let e=t,r=(_xeUtils.default.isArray(t)||(e=[t]),(0,_util.getRowkey)(ie));e.forEach(e=>{var t=(0,_util.getRowid)(ie,e),l=_xeUtils.default.clone(Object.assign({},a),!0);_xeUtils.default.set(l,r,t),Object.assign(e,l)})}return(0,_vue.nextTick)()},reloadRow(e,t,l){var r=W.keepSource,a=V.tableData,o=Y.tableSourceData;return r?((r=o[q.getRowIndex(e)])&&e&&(l?(o=_xeUtils.default.clone(_xeUtils.default.get(t||e,l),!0),_xeUtils.default.set(e,l,o),_xeUtils.default.set(r,l,o)):(l=(0,_util.getRowkey)(ie),o=(0,_util.getRowid)(ie,e),t=_xeUtils.default.clone(Object.assign({},t),!0),_xeUtils.default.set(t,l,o),_xeUtils.default.destructuring(r,Object.assign(e,t)))),V.tableData=a.slice(0)):"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.reqProp",["keep-source"]),(0,_vue.nextTick)()},getParams(){return W.params},loadTreeChildren(r,e){let t=W.keepSource,{tableSourceData:a,fullDataRowIdData:n,fullAllDataRowIdData:d,sourceDataRowIdData:o}=Y;var l=oe.value;let{transform:i,mapChildrenField:u}=l,s=l.children||l.childrenField,c=d[(0,_util.getRowid)(ie,r)],g=c?c.level:0;return q.createData(e).then(e=>{if(t){let t=(0,_util.getRowid)(ie,r);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(ie,e),{children:s});l&&(l.item[s]=_xeUtils.default.clone(e,!0)),e.forEach(e=>{var t=(0,_util.getRowid)(ie,e);o[t]=_xeUtils.default.clone(e,!0)})}return _xeUtils.default.eachTree(e,(e,t,l,r,a,o)=>{var i=(0,_util.getRowid)(ie,e),e={row:e,rowid:i,seq:-1,index:t,_index:-1,$index:-1,treeIndex:-1,items:l,parent:a||c.row,level:g+o.length,height:0,resizeHeight:0,oTop:0,expandHeight:0};n[i]=e,d[i]=e},{children:s}),r[s]=e,i&&(r[u]=_xeUtils.default.clone(e,!1)),Wt(),e})},loadColumn(e){e=_xeUtils.default.mapTree(e,e=>(0,_vue.reactive)(_cell.default.createColumn(ie,e)));return cl(e)},reloadColumn(e){return q.clearAll().then(()=>q.loadColumn(e))},getRowNode(e){if(e){var t=Y.fullAllDataRowIdData,e=e.getAttribute("rowid");if(e){t=t[e];if(t)return{rowid:t.rowid,item:t.row,index:t.index,items:t.items,parent:t.parent}}}return null},getColumnNode(e){if(e){var t=Y.fullColumnIdData,e=e.getAttribute("colid");if(e){t=t[e];if(t)return{colid:t.colid,item:t.column,index:t.index,items:t.items,parent:t.parent}}}return null},getRowSeq:i("seq"),getRowIndex:i("index"),getVTRowIndex:i("_index"),getVMRowIndex:i("$index"),getColumnIndex:n("index"),getVTColumnIndex:n("_index"),getVMColumnIndex:n("$index"),createData(e){return(0,_vue.nextTick)().then(()=>(0,_vue.reactive)($.defineField(e)))},createRow(e){let t=_xeUtils.default.isArray(e);return t||(e=[e||{}]),q.createData(e).then(e=>t?e:e[0])},revertData(e,r){var{keepSource:t,treeConfig:l}=W;let{fullAllDataRowIdData:a,fullDataRowIdData:o,tableSourceData:i,sourceDataRowIdData:n,tableFullData:d,afterFullData:u,removeRowMaps:s}=Y;var c=oe.value.transform;let g=(0,_util.createHandleGetRowId)(ie).handleGetRowId;if(!t)return"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.reqProp",["keep-source"]),(0,_vue.nextTick)();let v=e,h=(e?_xeUtils.default.isArray(e)||(v=[e]):v=_xeUtils.default.toArray(ie.getUpdateRecords()),!1);return v.length&&v.forEach(e=>{var t,e=g(e),l=a[e];l&&(l=l.row,ie.isInsertByRow(l)||(t=n[e])&&l&&(r?_xeUtils.default.set(l,r,_xeUtils.default.clone(_xeUtils.default.get(t,r),!0)):_xeUtils.default.destructuring(l,_xeUtils.default.clone(t,!0)),!o[e])&&ie.isRemoveByRow(l)&&(s[e]&&delete s[e],d.unshift(l),u.unshift(l),h=!0))}),e?(h&&(V.removeRowFlag++,ie.updateFooter(),ie.cacheRowMap(!1),ie.handleTableData(l&&c),l&&c||ie.updateAfterDataIndex(),ie.checkSelectionStatus(),V.scrollYLoad)&&ie.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(ie.updateCellAreas(),ie.recalculate()))):ie.reloadData(i)},clearData(e,t){let{tableFullData:l,visibleColumn:r}=Y;return arguments.length?e&&!_xeUtils.default.isArray(e)&&(e=[e]):e=l,t?e.forEach(e=>_xeUtils.default.set(e,t,null)):e.forEach(t=>{r.forEach(e=>{e.field&&(0,_util.setCellValue)(t,e,null)})}),(0,_vue.nextTick)()},getCellElement(e,t){var l=Y.elemStore,t=(0,_util.handleFieldOrColumn)(ie,t);if(!t)return null;var e=(0,_util.getRowid)(ie,e),r=(0,_util.getRefElem)(l["main-body-scroll"]),a=(0,_util.getRefElem)(l["left-body-scroll"]),l=(0,_util.getRefElem)(l["right-body-scroll"]);let o;return t&&(t.fixed&&("left"===t.fixed?a&&(o=a):l&&(o=l)),o=o||r)?o.querySelector(`.vxe-body--row[rowid="${e}"] .`+t.id):null},getCellLabel(t,l){l=(0,_util.handleFieldOrColumn)(ie,l);if(!l)return null;var r=l.formatter,a=(0,_util.getCellValue)(t,l);let o=a;if(r){let e;var i=Y.fullAllDataRowIdData,n=(0,_util.getRowid)(ie,t),d=l.id,u=i[n];if(u&&(e=(e=u.formatData)||(i[n].formatData={}),u)&&e[d]&&e[d].value===a)return e[d].label;i={cellValue:a,row:t,rowIndex:q.getRowIndex(t),column:l,columnIndex:q.getColumnIndex(l)};o=_xeUtils.default.isString(r)?(u=(n=formats.get(r))?n.tableCellFormatMethod||n.cellFormatMethod:null)?u(i):"":_xeUtils.default.isArray(r)?(l=(t=formats.get(r[0]))?t.tableCellFormatMethod||t.cellFormatMethod:null)?l(i,...r.slice(1)):"":r(i),e&&(e[d]={value:a,label:o})}return o},isInsertByRow(e){e=(0,_util.getRowid)(ie,e);return!!V.insertRowFlag&&!!Y.insertRowMaps[e]},isRemoveByRow(e