vxe-table 3.12.6 → 3.12.7

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.
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_ui=require("../../ui"),_cell=_interopRequireDefault(require("./cell")),_util=require("./util"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getI18n,renderer,formats,interceptor,createEvent}=_ui.VxeUI,customStorageKey="VXE_CUSTOM_STORE",getColumnList=e=>{let t=[];return e.forEach(e=>{t.push(...e.children&&e.children.length?getColumnList(e.children):[e])}),t};function eqCellValue(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))}function getNextSortOrder(e,t){e=e.sortOpts.orders,t=t.order||null,t=e.indexOf(t)+1;return e[t<e.length?t:0]}let getCustomStorageMap=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)||{}},setCustomStorageMap=(e,t)=>{var l=getConfig().version,r=getCustomStorageMap();r[e]=t||void 0,r._v=l,localStorage.setItem(customStorageKey,_xeUtils.default.toJSONString(r))},getRecoverRowMaps=(e,t)=>{let l=e.fullAllDataRowIdData,r={};return _xeUtils.default.each(t,(e,t)=>{l[t]&&(r[t]=e)}),r};function handleReserveRow(e,t){let l=e.fullDataRowIdData,r=[];return _xeUtils.default.each(t,(e,t)=>{l[t]&&-1===r.indexOf(l[t].row)&&r.push(l[t].row)}),r}function handleVirtualXVisible(e){var a=e.visibleColumn,e=e.$refs.tableBody,e=e?e.$el:null;if(e){var{scrollLeft:o,clientWidth:e}=e,s=o+e;let l=-1,r=0,i=0;for(let e=0,t=a.length;e<t&&(r+=a[e].renderWidth,!(0<=(l=-1===l&&o<r?e:l)&&(i++,r>s)));e++);return{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(6,i)}}return{toVisibleIndex:0,visibleSize:6}}function cacheColumnMap(e){var t=e,l=e,r=e,{tableFullColumn:i,collectColumn:a}=r;let h=r.fullColumnIdData={},u=r.fullColumnFieldData={};var r=e.computeMouseOpts,o=e.computeColumnOpts;let{isCrossDrag:c,isSelfToChildDrag:g}=e.computeColumnDragOpts,f=e.computeCustomOpts.storage;var e=e.computeRowOpts,s=a.some(_utils.hasChildrenList);let p=!!t.showOverflow,m,x,v,w,C,R,n=(e,t,l,r,i)=>{var{id:a,field:o,fixed:s,type:n,treeNode:d}=e,t={$index:-1,_index:-1,column:e,colid:a,index:t,items:l,parent:i||null,width:0};o?(u[o]&&(0,_log.errLog)("vxe.error.colRepet",["field",o]),u[o]=t):(f||c||g)&&(0,_log.errLog)("vxe.error.reqProp",[`${e.getTitle()||n||""} -> column.field`]),!R&&s&&(R=s),C||"html"!==n||(C=e),d?("development"===process.env.NODE_ENV&&x&&(0,_log.warnLog)("vxe.error.colRepet",["tree-node",d]),x=x||e):"expand"===n&&("development"===process.env.NODE_ENV&&m&&(0,_log.warnLog)("vxe.error.colRepet",["type",n]),m=m||e),"development"===process.env.NODE_ENV&&("checkbox"===n?(v&&(0,_log.warnLog)("vxe.error.colRepet",["type",n]),v=v||e):"radio"===n&&(w&&(0,_log.warnLog)("vxe.error.colRepet",["type",n]),w=w||e)),p&&!1===e.showOverflow&&(p=!1),h[a]&&(0,_log.errLog)("vxe.error.colRepet",["colId",a]),h[a]=t};s?_xeUtils.default.eachTree(a,(e,t,l,r,i,a)=>{e.level=a.length,n(e,t,l,0,i)}):i.forEach(n),"development"===process.env.NODE_ENV&&m&&r.area&&(0,_log.errLog)("vxe.error.errConflicts",["mouse-config.area","column.type=expand"]),"developmeznt"===process.env.NODE_ENV&&C&&(o.useKey||(0,_log.errLog)("vxe.error.reqProp",["column-config.useKey & column.type=html"]),e.useKey||(0,_log.errLog)("vxe.error.reqProp",["row-config.useKey & column.type=html"])),l.isGroup=s,l.treeNodeColumn=x,l.expandColumn=m,l.isAllOverflow=p}let updateScrollYStatus=(e,t)=>{var l=e,r=e.treeConfig,i=e.computeSYOpts,a=e.computeTreeOpts.transform,t=t||e.tableFullData,e=(a||!r)&&!!i.enabled&&-1<i.gt&&(0===i.gt||i.gt<t.length);return l.scrollYLoad=e};function handleVirtualTreeToList(d){var e=d,t=d.treeConfig;let h=d.treeExpandedMaps,u=e.fullAllDataRowIdData;var l=d.computeTreeOpts,r=l.children||l.childrenField;if(t&&l.transform){let s=[],n={};return _xeUtils.default.eachTree(e.afterTreeFullData,(e,t,l,r,i)=>{var a=(0,_util.getRowid)(d,e),o=(0,_util.getRowid)(d,i);(!i||n[o]&&h[o])&&((i=u[a])&&(i._index=s.length),n[a]=1,s.push(e))},{children:r}),e.afterFullData=s,updateScrollYStatus(d,s),s}return e.afterFullData}function computeRowHeight(e){var t=e.$refs.tableHeader,l=e.$refs.tableBody,l=l?l.$el:null,r=e.computeSize,e=e.computeRowHeightMaps;let i=0;if(l){t=t?t.$el:null;let e;(e=!(e=l.querySelector("tr"))&&t?t.querySelector("tr"):e)&&(i=e.clientHeight)}return i=i||e[r||"default"],Math.max(18,i)}function handleVirtualYVisible(a){var e=a.showOverflow,{scrollYStore:t,afterFullData:o,fullAllDataRowIdData:s}=a,n=a.$refs.tableBody,n=n?n.$el:null,d=t.rowHeight;if(n){var{scrollTop:h,clientHeight:t}=n,u=h+t;let l=-1,r=0,i=0;if(e)l=Math.floor(h/d),i=Math.ceil(t/d)+1;else for(let e=0,t=o.length;e<t;e++){var c=o[e],c=s[(0,_util.getRowid)(a,c)];if(!c)break;if(r+=c.height||d,0<=(l=-1===l&&h<r?e:l)&&(i++,r>u))break}return{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(8,i)}}return{toVisibleIndex:0,visibleSize:8}}function calculateMergerOffsetIndex(l,r,i){for(let e=0,t=l.length;e<t;e++){var a=l[e],{startIndex:o,endIndex:s}=r,n=a[i],a=n+a[i+"span"];n<o&&o<a&&(r.startIndex=n),n<s&&s<a&&(r.endIndex=a),r.startIndex===o&&r.endIndex===s||(e=-1)}}function setMerges(t,l,s,n){if(l){let{treeConfig:e,visibleColumn:o}=t;_xeUtils.default.isArray(l)||(l=[l]),e&&l.length&&(0,_log.errLog)("vxe.error.noTree",["merge-cells | merge-footer-items"]),l.forEach(e=>{let{row:t,col:l,rowspan:r,colspan:i}=e;var a;n&&_xeUtils.default.isNumber(t)&&(t=n[t]),_xeUtils.default.isNumber(l)&&(l=o[l]),(n?t:_xeUtils.default.isNumber(t))&&l&&(r||i)&&(r=_xeUtils.default.toNumber(r)||1,i=_xeUtils.default.toNumber(i)||1,1<r||1<i)&&(e=_xeUtils.default.findIndexOf(s,e=>e._row===t&&e._col===l),(e=s[e])?(e.rowspan=r,e.colspan=i,e._rowspan=r,e._colspan=i):(e=n?n.indexOf(t):t,a=o.indexOf(l),s.push({row:e,col:a,rowspan:r,colspan:i,_row:t,_col:l,_rowspan:r,_colspan:i})))})}}function removeMerges(t,l,i,a){let o=[];if(l){let{treeConfig:e,visibleColumn:r}=t;_xeUtils.default.isArray(l)||(l=[l]),e&&l.length&&(0,_log.errLog)("vxe.error.noTree",["merge-cells | merge-footer-items"]),l.forEach(e=>{let{row:t,col:l}=e;a&&_xeUtils.default.isNumber(t)&&(t=a[t]),_xeUtils.default.isNumber(l)&&(l=r[l]);var e=_xeUtils.default.findIndexOf(i,e=>e._row===t&&e._col===l);-1<e&&(e=i.splice(e,1),o.push(e[0]))})}return o}function clearAllSort(e){e.tableFullColumn.forEach(e=>{e.order=null})}function calcTableHeight(e,t){var l=e.parentHeight,t=e[t];let r=0;return r=t?"100%"===t||"auto"===t?l:(e=e.getExcludeHeight(),r=(0,_dom.isScale)(t)?Math.floor((_xeUtils.default.toInteger(t)||1)/100*l):_xeUtils.default.toNumber(t),Math.max(40,r-e)):r}function autoCellWidth(s){var n=s,d=s,h=s,u=s.$refs.tableHeader,c=s.$refs.tableBody,g=s.$refs.tableFooter;let f=c?c.$el:null,p=u?u.$el:null;c=g?g.$el:null;if(f){let l=0;u=f.clientWidth-1,g=u;let r=g/100;var n=n.fit,m=d.columnStore,{resizeList:m,pxMinList:x,autoMinList:v,pxList:w,scaleList:C,scaleMinList:R,autoList:b,remainList:_}=m;if(x.forEach(e=>{var t=_xeUtils.default.toInteger(e.minWidth);l+=t,e.renderWidth=t}),v.forEach(e=>{var t=Math.max(60,_xeUtils.default.toInteger(e.renderAutoWidth));l+=t,e.renderWidth=t}),R.forEach(e=>{var t=Math.floor(_xeUtils.default.toInteger(e.minWidth)*r);l+=t,e.renderWidth=t}),C.forEach(e=>{var t=Math.floor(_xeUtils.default.toInteger(e.width)*r);l+=t,e.renderWidth=t}),w.forEach(e=>{var t=_xeUtils.default.toInteger(e.width);l+=t,e.renderWidth=t}),b.forEach(e=>{var t=Math.max(60,_xeUtils.default.toInteger(e.renderAutoWidth));l+=t,e.renderWidth=t}),m.forEach(e=>{var t=_xeUtils.default.toInteger(e.resizeWidth);l+=t,e.renderWidth=t}),g-=l,r=0<g?Math.floor(g/(R.length+x.length+v.length+_.length)):0,n?0<g&&R.concat(x).concat(v).forEach(e=>{l+=r,e.renderWidth+=r}):r=40,_.forEach(e=>{var t=Math.max(r,40);e.renderWidth=t,l+=t}),n){var T=C.concat(R).concat(x).concat(v).concat(_);let t=T.length-1;if(0<t){let e=u-l;if(0<e){for(;0<e&&0<=t;)e--,T[t--].renderWidth++;l=u}}}w=f.offsetHeight,b=f.scrollHeight>f.clientHeight;let e=0,t=(b&&(e=Math.max(f.offsetWidth-f.clientWidth,0)),d.scrollbarWidth=e,d.overflowY=b,h.tableWidth=l,h.tableHeight=w,0),i=(p&&(t=p.clientHeight,s.$nextTick(()=>{p&&f&&p.scrollLeft!==f.scrollLeft&&(p.scrollLeft=f.scrollLeft)})),h.headerHeight=t,!1),a=0,o=0;o=c?(a=c.offsetHeight,i=l>c.clientWidth,Math.max(a-c.clientHeight,0)):(i=l>u,Math.max(w-f.clientHeight,0)),h.footerHeight=a,d.overflowX=i,d.scrollbarHeight=o,updateHeight(s),d.parentHeight=Math.max(h.headerHeight+a+20,s.getParentHeight()),i&&s.checkScrolling()}}let calcCellHeight=l=>{var e=l,t=l.showOverflow;let{tableData:r,scrollXLoad:d}=e,h=l.fullAllDataRowIdData,u=l.$refs.refElem;if(!t&&u){let o=0,s=0,n=!1;r.forEach(e=>{var e=(0,_util.getRowid)(l,e),t=h[e],r=u.querySelectorAll(`.vxe-body--row[rowid="${e}"]>.vxe-body--column>.vxe-cell`);if(t&&r.length){let l=0;for(let t=0;t<r.length;t++){var i=r[t],a=i.parentElement;if(!a||!a.clientWidth)break;n||(o=_xeUtils.default.toNumber(getComputedStyle(a).paddingTop),s=_xeUtils.default.toNumber(getComputedStyle(a).paddingBottom),n=!0);let e=o+s;i&&(e+=i.clientHeight),l=Math.max(l,e)}t.height=d?Math.max(t.height,l):l}}),e.isCalcCellHeight++}};function getOrderField(l,r){let{sortBy:i,sortType:a}=r;return e=>{let t;return t=i?_xeUtils.default.isFunction(i)?i({row:e,column:r}):_xeUtils.default.get(e,i):l.getCellLabel(e,r),a&&"auto"!==a?"number"===a?_xeUtils.default.toNumber(t):"string"===a?_xeUtils.default.toValueString(t):t:isNaN(t)?t:_xeUtils.default.toNumber(t)}}function clearDragStatus(e){var t=e,{dragRow:l,dragCol:r}=t;(l||r)&&(clearColDropOrigin(e),clearRowDropOrigin(e),hideDropTip(e),t.dragRow=null,t.dragCol=null,t.isDragColMove=!1,t.isDragRowMove=!1)}function clearRowDropOrigin(e){e=e.$el;if(e){let t="row--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}}function updateRowDropOrigin(e,t){var l=e.$el;if(l){e=(0,_util.getRowid)(e,t);_xeUtils.default.arrayEach(l.querySelectorAll(`[rowid="${e}"]`),e=>{(0,_dom.addClass)(e,"row--drag-origin")})}}function updateRowDropTipContent(e,t){var l=e,r=e.dragConfig,i=l.dragRow,e=e.computeRowDragOpts.tooltipMethod,e=e||(r?r.rowTooltipMethod:null);let a="";a=e?""+(e({row:i})||""):getI18n("vxe.table.dragTip",[t.textContent||""]),l.dragTipText=a}function updateColDropOrigin(e,l){e=e.$el;if(e){let t=[];_xeUtils.default.eachTree([l],e=>{t.push(`[colid="${e.id}"]`)});_xeUtils.default.arrayEach(e.querySelectorAll(t.join(",")),e=>{(0,_dom.addClass)(e,"col--drag-origin")})}}function clearColDropOrigin(e){e=e.$el;if(e){let t="col--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}}function updateColDropTipContent(e,t){var l=e,r=l.dragCol,e=e.computeColumnDragOpts.tooltipMethod;let i="";i=e?""+(e({column:r})||""):getI18n("vxe.table.dragTip",[t.textContent||""]),l.dragTipText=i}function showDropTip(l,e,r,i,t,a){var o=l,s=l,n=l.$refs.refElem;if(n){var{scrollbarWidth:o,scrollbarHeight:d}=o,s=s.prevDragToChild,h=n.getBoundingClientRect(),u=n.clientWidth,c=n.clientHeight;if(r){var g=l.$refs.refDragRowLineElem;if(g)if(t){var f=r.getBoundingClientRect();let e=r.clientHeight;r=Math.max(1,f.y-h.y);r+e>c-d&&(e=c-r-d),g.style.display="block",g.style.top=r+"px",g.style.height=e+"px",g.style.width=u-o+"px",g.setAttribute("drag-pos",a),g.setAttribute("drag-to-child",s?"y":"n")}else g.style.display=""}else if(i){f=l.$refs.refDragColLineElem;if(f)if(t){var r=l.$refs.leftContainer,g=r?r.clientWidth:0,r=l.$refs.rightContainer,r=r?r.clientWidth:0,p=i.getBoundingClientRect();let e=i.clientWidth;i=Math.max(0,p.y-h.y);let t=p.x-h.x;t<g&&(e-=g-t,t=g);g=u-r-(r?0:o);t+e>g&&(e=g-t),f.style.display="block",f.style.top=i+"px",f.style.left=t+"px",f.style.width=e+"px",f.style.height=s?p.height+"px":c-i-d+"px",f.setAttribute("drag-pos",a),f.setAttribute("drag-to-child",s?"y":"n")}else f.style.display=""}u=l.$refs.refDragTipElem;u&&(u.style.display="block",u.style.top=Math.min(n.clientHeight-n.scrollTop-u.clientHeight,e.clientY-h.y)+"px",u.style.left=Math.min(n.clientWidth-n.scrollLeft-u.clientWidth-16,e.clientX-h.x)+"px",u.setAttribute("drag-status",t?s?"sub":"normal":"disabled"))}}function hideDropTip(e){var t=e.$refs.refDragTipElem,l=e.$refs.refDragRowLineElem,e=e.$refs.refDragColLineElem;t&&(t.style.display=""),l&&(l.style.display=""),e&&(e.style.display="")}function handleScrollToRowColumn(e,t,l){var r=e.fullColumnIdData,t=(0,_util.handleFieldOrColumn)(e,t);return t&&r[t.id]?(0,_util.colToVisible)(e,t,l):e.$nextTick()}function computeScrollLoad(o){let s=o,n=o;return o.$nextTick().then(()=>{var{scrollXLoad:e,scrollYLoad:t}=s,{scrollXStore:l,scrollYStore:r}=n,i=o.computeSYOpts,a=o.computeSXOpts,e=(e?(e=handleVirtualXVisible(o).visibleSize,a=Math.max(0,a.oSize?_xeUtils.default.toNumber(a.oSize):_dom.browse.edge?5:0),l.offsetSize=a,l.visibleSize=e,l.endIndex=Math.max(l.startIndex+l.visibleSize+a,l.endIndex),o.updateScrollXData().then(()=>{loadScrollXData(o)})):o.updateScrollXSpace(),calcCellHeight(o),computeRowHeight(o)),a=(r.rowHeight=e,s.rowHeight=e,handleVirtualYVisible(o)).visibleSize;t?(l=Math.max(0,i.oSize?_xeUtils.default.toNumber(i.oSize):_dom.browse.edge?10:0),r.offsetSize=l,r.visibleSize=a,r.endIndex=Math.max(r.startIndex+a+l,r.endIndex),o.updateScrollYData().then(()=>{loadScrollYData(o)})):o.updateScrollYSpace(),o.$nextTick(()=>{o.updateStyle()})})}function handleRecalculateLayout(e,t){var l=e,r=e.$refs.refElem;return l.rceRunTime=Date.now(),r&&r.clientWidth?(calcCellWidth(e),autoCellWidth(e),computeScrollLoad(e).then(()=>{if(!0===t)return calcCellHeight(e),calcCellWidth(e),autoCellWidth(e),computeScrollLoad(e)})):e.$nextTick()}function loadScrollXData(e){var{mergeList:t,mergeFooterList:l}=e,r=e.scrollXStore,{startIndex:i,endIndex:a,offsetSize:o}=r,{toVisibleIndex:s,visibleSize:n}=handleVirtualXVisible(e),o={startIndex:Math.max(0,s-1-o),endIndex:s+n+o},{startIndex:t,endIndex:l}=(calculateMergerOffsetIndex(t.concat(l),o,"col"),o);!(s<=i||a-n-1<=s)||i===t&&a===l||(r.startIndex=t,r.endIndex=l,e.updateScrollXData()),e.closeTooltip()}function loadScrollYData(e){var t=e.showOverflow,l=e.mergeList,{tableHeight:r,scrollYStore:i}=e,{startIndex:a,endIndex:o,offsetSize:s}=i,t=t?s:s+Math.min(8,Math.ceil(r/200)),{toVisibleIndex:r,visibleSize:n}=handleVirtualYVisible(e),s={startIndex:Math.max(0,r-1-s),endIndex:r+n+t},{startIndex:t,endIndex:l}=(calculateMergerOffsetIndex(l,s,"row"),s);!(r<=a||o-n-1<=r)||a===t&&o===l||(i.startIndex=t,i.endIndex=l,e.updateScrollYData())}function checkLastSyncScroll(e,t,l){let r=e,{scrollXLoad:i,scrollYLoad:a}=e;var o=r.lcsTimeout;o&&clearTimeout(o),r.lcsTimeout=setTimeout(()=>{r.lcsRunTime=Date.now(),r.lcsTimeout=void 0,r.inVirtualScroll=!1,r.inBodyScroll=!1,r.inFooterScroll=!1,r.bodyScrollType="",t&&i&&e.updateScrollXData().then(()=>{loadScrollXData(e)}),l&&a&&e.updateScrollYData().then(()=>{loadScrollYData(e)}),e.updateCellAreas()},200)}function updateHeight(e){var t=e;t.customHeight=calcTableHeight(e,"height"),t.customMinHeight=calcTableHeight(e,"minHeight"),t.customMaxHeight=calcTableHeight(e,"maxHeight")}function calcColumnAutoWidth(e,t){var t=t.querySelectorAll(`.vxe-header--column.${e.id}>.vxe-cell,.vxe-body--column.${e.id}>.vxe-cell,.vxe-footer--column.${e.id}>.vxe-cell`),l=t[0];let r=0,i=(l&&(l=getComputedStyle(l),r=Math.floor(_xeUtils.default.toNumber(l.paddingLeft)+_xeUtils.default.toNumber(l.paddingRight))+2),e.renderAutoWidth-r);return _xeUtils.default.arrayEach(t,e=>{var t=e.parentElement;let l=0;"th"===(""+t.tagName).toLowerCase()?_xeUtils.default.arrayEach(e.children,e=>{l+=e.offsetWidth+1}):(t=e.firstElementChild)&&(l=t.offsetWidth),l&&(i=Math.max(i,Math.ceil(l)+4))}),i+r}function calcCellWidth(e){let t=e,l=e,a=e.computeAutoWidthColumnList;return t.isCalcColumn=!0,e.$nextTick().then(()=>{let r=l.fullColumnIdData,i=e.$refs.refElem;i&&(a.forEach(e=>{var t=e.id,t=r[t],l=calcColumnAutoWidth(e,i);t&&(t.width=Math.max(l,t.width)),e.renderAutoWidth=l}),e.analyColumnWidth()),t.isCalcColumn=!1})}let Methods={callSlot(e,t,l,r){if(e){var i=this.$xegrid;if(i)return i.callSlot(e,t,l,r);if(_xeUtils.default.isFunction(e))return(0,_vn.getSlotVNs)(e.call(this,t,l,r))}return[]},getParentElem(){var{$el:e,$xegrid:t}=this;return(t?t.$el:e).parentNode},getParentHeight(){var{$el:e,$xegrid:t,height:l}=this,e=e.parentNode,l="100%"===l||"auto"===l?(0,_dom.getPaddingTopBottomSize)(e):0;return Math.floor(t?t.getParentHeight():_xeUtils.default.toNumber(getComputedStyle(e).height)-l)},getExcludeHeight(){var e=this.$xegrid;return e?e.getExcludeHeight():0},clearAll(){return(0,_util.clearTableAllStatus)(this)},syncData(){return(0,_log.warnLog)("vxe.error.delFunc",["syncData","getData"]),this.$nextTick().then(()=>(this.tableData=[],this.$nextTick().then(()=>this.loadTableData(this.tableFullData))))},updateData(){let{scrollXLoad:e,scrollYLoad:t}=this;return this.handleTableData(!0).then(()=>{if(this.updateFooter(),e||t)return e&&this.updateScrollXSpace(),t&&this.updateScrollYSpace(),this.refreshScroll()}).then(()=>(this.updateCellAreas(),this.recalculate(!0))).then(()=>{setTimeout(()=>this.recalculate(),50)})},handleTableData(e){let{scrollYLoad:t,scrollYStore:l,fullDataRowIdData:r,afterFullData:i}=this,a=i;e&&(this.updateAfterFullData(),a=handleVirtualTreeToList(this));e=t?a.slice(l.startIndex,l.endIndex):a.slice(0);return e.forEach((e,t)=>{e=(0,_util.getRowid)(this,e),e=r[e];e&&(e.$index=t)}),this.tableData=e,this.$nextTick()},loadTableData(e){let t=this,{keepSource:l,showOverflow:r,treeConfig:i,treeOpts:a,editStore:o,scrollYStore:s,scrollXStore:n,lastScrollLeft:d,lastScrollTop:h,scrollYLoad:u,sXOpts:c,sYOpts:g}=this;var f=a.children||a.childrenField,p=t.computeRowOpts;let m=[],x=e?e.slice(0):[],v=(i&&(a.transform?("development"===process.env.NODE_ENV&&(a.rowField||(0,_log.errLog)("vxe.error.reqProp",["table.tree-config.rowField"]),a.parentField||(0,_log.errLog)("vxe.error.reqProp",["table.tree-config.parentField"]),f||(0,_log.errLog)("vxe.error.reqProp",["tree-config.childrenField"]),a.mapChildrenField||(0,_log.errLog)("vxe.error.reqProp",["tree-config.mapChildrenField"]),f===a.mapChildrenField)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.childrenField","tree-config.mapChildrenField"]),m=_xeUtils.default.toArrayTree(x,{key:a.rowField,parentKey:a.parentField,children:f,mapChildren:a.mapChildrenField}),x=m.slice(0)):m=x.slice(0)),s.startIndex=0,s.endIndex=1,n.startIndex=0,n.endIndex=1,o.insertMaps={},o.removeList=[],o.removeMaps={},updateScrollYStatus(t,x));return this.isDragRowMove=!1,this.tableFullData=x,this.tableFullTreeData=m,this.cacheRowMap(!0),this.tableSynchData=e,l&&this.cacheSourceMap(x),v&&(r&&!p.height&&(f=this.tableFullColumn.find(e=>!1===e.showOverflow))&&(0,_log.errLog)("vxe.error.errProp",[`column[field="${f.field}"].show-overflow=false`,"show-overflow=true"]),"development"===process.env.NODE_ENV)&&(this.height||this.maxHeight||(0,_log.errLog)("vxe.error.reqProp",["table.height | table.max-height | table.scroll-y={enabled: false}"]),this.spanMethod)&&(0,_log.warnLog)("vxe.error.scrollErrProp",["table.span-method"]),this.clearCellAreas&&this.mouseConfig&&(this.clearCellAreas(),this.clearCopyCellArea()),this.clearMergeCells(),this.clearMergeFooterItems(),this.handleTableData(!0),this.updateFooter(),this.$nextTick().then(()=>{updateHeight(t),this.updateStyle()}).then(()=>{computeScrollLoad(t)}).then(()=>(v&&(s.endIndex=s.visibleSize),this.handleReserveStatus(),this.checkSelectionStatus(),new Promise(l=>{this.$nextTick().then(()=>this.recalculate()).then(()=>{let e=d,t=h;c.scrollToLeftOnChange&&(e=0),g.scrollToTopOnChange&&(t=0),u===v?(0,_util.restoreScrollLocation)(this,e,t).then(l):setTimeout(()=>(0,_util.restoreScrollLocation)(this,e,t).then(l))})})))},loadData(e){let t=this.initStatus;return this.loadTableData(e).then(()=>(this.inited=!0,this.initStatus=!0,t||this.handleLoadDefaults(),this.recalculate()))},reloadData(e){return this.clearAll().then(()=>(this.inited=!0,this.initStatus=!0,this.loadTableData(e))).then(()=>(this.handleLoadDefaults(),this.recalculate()))},setRow(t,l){if(l){let e=t;(e=_xeUtils.default.isArray(t)?e:[t]).forEach(e=>Object.assign(e,l))}return this.$nextTick()},reloadRow(e,t,l){var{keepSource:r,tableSourceData:i,tableData:a}=this;return r?((r=i[this.getRowIndex(e)])&&e&&(l?(i=_xeUtils.default.get(t||e,l),_xeUtils.default.set(e,l,i),_xeUtils.default.set(r,l,i)):(l=_xeUtils.default.clone(Object.assign({},t),!0),_xeUtils.default.destructuring(r,Object.assign(e,l)))),this.tableData=a.slice(0)):"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.reqProp",["keep-source"]),this.$nextTick()},loadColumn(e){e=_xeUtils.default.mapTree(e,e=>_cell.default.createColumn(this,e),{children:"children"});return this.handleColumn(e)},reloadColumn(e){return this.clearAll().then(()=>this.loadColumn(e))},initColumnSort(){var e=this.collectColumn;e.forEach((e,t)=>{t+=1;e.sortNumber=t,e.renderSortNumber=t})},handleColumn(e){let t=this;this.collectColumn=e;e=getColumnList(e);return this.tableFullColumn=e,this._isLoading=!0,this.isDragColMove=!1,this.initColumnSort(),Promise.resolve(this.restoreCustomStorage()).then(()=>(this._isLoading=!1,cacheColumnMap(t),this.parseColumns(!0).then(()=>{this.scrollXLoad&&loadScrollXData(t)}),this.clearMergeCells(),this.clearMergeFooterItems(),this.handleTableData(!0),"development"===process.env.NODE_ENV&&(this.scrollXLoad||this.scrollYLoad)&&this.expandColumn&&(0,_log.warnLog)("vxe.error.scrollErrProp",["column.type=expand"]),this.$nextTick().then(()=>(this.$toolbar&&this.$toolbar.syncUpdate({collectColumn:this.collectColumn,$table:this}),t.handleUpdateCustomColumn&&t.handleUpdateCustomColumn(),this.recalculate()))))},cacheRowMap(n){let{treeConfig:d,treeOpts:e,tableFullData:t,fullAllDataRowIdData:h,tableFullTreeData:l}=this,u=e.children||e.childrenField,c=e.hasChild||e.hasChildField,g=(0,_util.getRowkey)(this),f=d&&e.lazy,p={},m={};var r=(e,t,l,r,i,a)=>{let o=(0,_util.getRowid)(this,e);r=d&&r?(0,_util.toTreePathSeq)(r):t+1,a=a?a.length-1:0;(0,_utils.eqEmptyValue)(o)&&(o=(0,_util.getRowUniqueId)(),_xeUtils.default.set(e,g,o)),f&&e[c]&&_xeUtils.default.isUndefined(e[u])&&(e[u]=null);let s=h[o];(s=s||{row:e,rowid:o,seq:r,index:-1,_index:-1,$index:-1,items:l,parent:i,level:a,height:0,oTop:0}).row=e,s.items=l,s.parent=i,s.level=a,s.index=d&&i?-1:t,n&&(m[o]=s),p[o]=s};n&&(this.fullDataRowIdData=m),this.fullAllDataRowIdData=p,d?_xeUtils.default.eachTree(l,r,{children:u}):t.forEach(r)},cacheSourceMap(e){let{treeConfig:t,treeOpts:l,sourceDataRowIdData:r}=this;e=_xeUtils.default.clone(e,!0);let i=(0,_util.getRowkey)(this);r=this.sourceDataRowIdData={};var a,o=e=>{let t=(0,_util.getRowid)(this,e);(0,_utils.eqEmptyValue)(t)&&(t=(0,_util.getRowUniqueId)(),_xeUtils.default.set(e,i,t)),r[t]={row:e,rowid:t}};t?(a=l.children||l.childrenField,_xeUtils.default.eachTree(e,o,{children:l.transform?l.mapChildrenField:a})):e.forEach(o),this.tableSourceData=e},getParams(){return this.params},loadTreeChildren(r,e){let s=this,{keepSource:t,tableSourceData:i,treeOpts:l,fullDataRowIdData:n,fullAllDataRowIdData:d,sourceDataRowIdData:a}=this,{transform:o,mapChildrenField:h}=l,u=l.children||l.childrenField,c=d[(0,_util.getRowid)(s,r)],g=c?c.level:0;return this.createData(e).then(e=>{if(t){let t=(0,_util.getRowid)(this,r);var l=_xeUtils.default.findTree(i,e=>t===(0,_util.getRowid)(this,e),{children:u});l&&(l.item[u]=_xeUtils.default.clone(e,!0)),e.forEach(e=>{var t=(0,_util.getRowid)(this,e);a[t]=_xeUtils.default.clone(e,!0)})}return _xeUtils.default.eachTree(e,(e,t,l,r,i,a)=>{var o=(0,_util.getRowid)(s,e),e={row:e,rowid:o,seq:-1,index:t,_index:-1,$index:-1,items:l,parent:i||c.row,level:g+a.length,height:0,oTop:0};n[o]=e,d[o]=e},{children:u}),r[u]=e,o&&(r[h]=_xeUtils.default.clone(e,!1)),this.updateAfterDataIndex(),e})},getRowNode(e){if(e){var t=this.fullAllDataRowIdData,t=t[e.getAttribute("rowid")];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=this.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(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t.seq}return-1},getRowIndex(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t.index}return-1},getVTRowIndex(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t._index}return-1},_getRowIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["_getRowIndex","getVTRowIndex"]),this.getVTRowIndex(e)},getVMRowIndex(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t.$index}return-1},$getRowIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["$getRowIndex","getVMRowIndex"]),this.getVMRowIndex(e)},getColumnIndex(e){var t=this.fullColumnIdData;if(e){t=t[e.id];if(t)return t.index}return-1},getVTColumnIndex(e){var t=this.fullColumnIdData;if(e){t=t[e.id];if(t)return t._index}return-1},_getColumnIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["_getColumnIndex","getVTColumnIndex"]),this.getVTColumnIndex(e)},getVMColumnIndex(e){var t=this.fullColumnIdData;if(e){t=t[e.id];if(t)return t.$index}return-1},$getColumnIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["$getColumnIndex","getVMColumnIndex"]),this.getVMColumnIndex(e)},isSeqColumn(e){return e&&"seq"===e.type},defineField(e){let{radioOpts:t,checkboxOpts:l,treeConfig:r,treeOpts:a,expandOpts:o}=this,s=a.children||a.childrenField,n=(0,_util.getRowkey)(this);return(e=_xeUtils.default.isArray(e)?e:[e||{}]).map(i=>(this.tableFullColumn.forEach(t=>{var{field:l,editRender:r}=t;if(l&&!_xeUtils.default.has(i,l)){let e=null;r&&(r=r.defaultValue,_xeUtils.default.isFunction(r)?e=r({column:t}):_xeUtils.default.isUndefined(r)||(e=r)),_xeUtils.default.set(i,l,e)}}),[t.labelField,l.checkField,l.labelField,o.labelField].forEach(e=>{e&&(0,_utils.eqEmptyValue)(_xeUtils.default.get(i,e))&&_xeUtils.default.set(i,e,null)}),r&&a.lazy&&_xeUtils.default.isUndefined(i[s])&&(i[s]=null),(0,_utils.eqEmptyValue)(_xeUtils.default.get(i,n))&&_xeUtils.default.set(i,n,(0,_util.getRowUniqueId)()),i))},createData(e){return this.$nextTick().then(()=>this.defineField(e))},createRow(e){let t=_xeUtils.default.isArray(e);return t||(e=[e]),this.createData(e).then(e=>t?e:e[0])},revertData(e,l){let{keepSource:t,tableSourceData:r,treeConfig:i}=this;if(!t)return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.reqProp",["keep-source"]),this.$nextTick();let a=e;return e?_xeUtils.default.isArray(e)||(a=[e]):a=_xeUtils.default.toArray(this.getUpdateRecords()),a.length&&a.forEach(e=>{var t;this.isInsertByRow(e)||(t=this.getRowIndex(e),i&&-1===t&&(0,_log.errLog)("vxe.error.noTree",["revertData"]),(t=r[t])&&e&&(l?_xeUtils.default.set(e,l,_xeUtils.default.clone(_xeUtils.default.get(t,l),!0)):_xeUtils.default.destructuring(e,_xeUtils.default.clone(t,!0))))}),e?this.$nextTick():this.reloadData(r)},clearData(e,t){let{tableFullData:l,visibleColumn:r}=this;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)})}),this.$nextTick()},getCellElement(e,t){t=(0,_util.handleFieldOrColumn)(this,t);if(!t)return null;var l=this.$refs,e=(0,_util.getRowid)(this,e);let r=null;return(r=t?l[`${t.fixed||"table"}Body`]||l.tableBody:r)&&r.$el?r.$el.querySelector(`.vxe-body--row[rowid="${e}"] .`+t.id):null},getCellLabel(t,l){l=(0,_util.handleFieldOrColumn)(this,l);if(!l)return null;var r=l.formatter,i=(0,_util.getCellValue)(t,l);let a=i;if(r){let e;var o=this.fullAllDataRowIdData,s=(0,_util.getRowid)(this,t),n=l.id,d=o[s];if(d&&(e=(e=d.formatData)||(o[s].formatData={}),d)&&e[n]&&e[n].value===i)return e[n].label;o={cellValue:i,row:t,rowIndex:this.getRowIndex(t),column:l,columnIndex:this.getColumnIndex(l)};a=_xeUtils.default.isString(r)?(d=(s=formats.get(r))?s.tableCellFormatMethod||s.cellFormatMethod:null)?d(o):"":_xeUtils.default.isArray(r)?(l=(t=formats.get(r[0]))?t.tableCellFormatMethod||t.cellFormatMethod:null)?l(o,...r.slice(1)):"":r(o),e&&(e[n]={value:i,label:a})}return a},isInsertByRow(e){var t=this.editStore,e=(0,_util.getRowid)(this,e);return!!t.insertMaps[e]},removeInsertRow(){var e=this.editStore;return e.insertMaps={},this.remove(this.getInsertRecords())},isUpdateByRow(l,e){var{tableFullColumn:r,keepSource:t,sourceDataRowIdData:i,fullDataRowIdData:a}=this;if(t){t=(0,_util.getRowid)(this,l);if(!a[t])return!1;a=i[t];if(a){var o=a.row;if(1<arguments.length)return!eqCellValue(o,l,e);for(let e=0,t=r.length;e<t;e++){var s=r[e].field;if(s&&!eqCellValue(o,l,s))return!0}}}return!1},getColumns(e){var t=this.visibleColumn;return _xeUtils.default.isUndefined(e)?t.slice(0):t[e]},getColid(e){e=(0,_util.handleFieldOrColumn)(this,e);return e?e.id:null},getColumnById(e){var t=this.fullColumnIdData;return t[e]?t[e].column:null},getColumnByField(e){var t=this.fullColumnFieldData;return t[e]?t[e].column:null},getParentColumn(e){var t=this.fullColumnIdData,e=(0,_util.handleFieldOrColumn)(this,e);return e&&e.parentId&&t[e.parentId]?t[e.parentId].column:null},getTableColumn(){return{collectColumn:this.collectColumn.slice(0),fullColumn:this.tableFullColumn.slice(0),visibleColumn:this.visibleColumn.slice(0),tableColumn:this.tableColumn.slice(0)}},getFullColumns(){var e=this.collectColumn;return e.slice(0)},getData(e){var t=this.data||this.tableSynchData;return _xeUtils.default.isUndefined(e)?t.slice(0):t[e]},getCheckboxRecords(r){let{tableFullData:e,afterFullData:t,treeConfig:l,treeOpts:i,checkboxOpts:a,tableFullTreeData:o,afterTreeFullData:s,afterFullRowMaps:n}=this;var{transform:d,mapChildrenField:h}=i;let u=a.checkField;var c=i.children||i.childrenField,g=r?d?o:e:d?s:t;let f=[];if(u)f=l?_xeUtils.default.filterTree(g,e=>_xeUtils.default.get(e,u),{children:d?h:c}):g.filter(e=>_xeUtils.default.get(e,u));else{let{selectCheckboxMaps:e,fullDataRowIdData:l}=this;_xeUtils.default.each(e,(e,t)=>{r?l[t]&&f.push(l[t].row):n[t]&&f.push(n[t])})}return f},updateAfterFullData(){var{tableFullColumn:e,tableFullData:t,filterOpts:l,sortOpts:r,treeConfig:i,treeOpts:a,tableFullTreeData:o}=this;let{remote:u,filterMethod:c}=l,{remote:s,sortMethod:n,multiple:d,chronological:h}=r;l=a.transform,r=a.children||a.childrenField;let g=[],f=[],p=[],m=[],x=(e.forEach(e=>{var{field:t,sortable:l,order:r,filters:i}=e;if(!u&&i&&i.length){let t=[],l=[];i.forEach(e=>{e.checked&&(l.push(e),t.push(e.value))}),l.length&&p.push({column:e,valueList:t,itemList:l})}!s&&l&&r&&m.push({column:e,field:t,property:t,order:r,sortTime:e.sortTime})}),d&&h&&1<m.length&&(m=_xeUtils.default.orderBy(m,"sortTime")),p.length?(e=h=>p.every(({column:o,valueList:s,itemList:n})=>{if(!s.length||u)return!0;{let{filterMethod:t,filterRender:e,field:l}=o;var d=(0,_utils.isEnableConf)(e)?renderer.get(e.name):null;let r=d?d.tableFilterMethod||d.filterMethod:null,i=d?d.tableFilterDefaultMethod||d.defaultTableFilterMethod||d.defaultFilterMethod:null,a=(0,_util.getCellValue)(h,o);return t?n.some(e=>t({value:e.value,option:e,cellValue:a,row:h,column:o,$table:this})):r?n.some(e=>r({value:e.value,option:e,cellValue:a,row:h,column:o,$table:this})):c?c({options:n,values:s,cellValue:a,row:h,column:o}):i?n.some(e=>i({value:e.value,option:e,cellValue:a,row:h,column:o,$table:this})):-1<s.indexOf(_xeUtils.default.get(h,l))}}),i&&l?(f=_xeUtils.default.searchTree(o,e,{original:!0,isEvery:!0,children:a.mapChildrenField,mapChildren:r}),g=f):(g=(i?o:t).filter(e),f=g)):i&&l?(f=_xeUtils.default.searchTree(o,()=>!0,{original:!0,isEvery:!0,children:a.mapChildrenField,mapChildren:r}),g=f):(g=(i?o:t).slice(0),f=g),m[0]);if(!s&&x)if(i&&l)f=n?(e=n({data:f,sortList:m,$table:this}),_xeUtils.default.isArray(e)?e:f):_xeUtils.default.orderBy(f,m.map(({column:e,order:t})=>[getOrderField(this,e),t])),g=f;else{if(n){a=n({data:g,column:x.column,property:x.field,field:x.field,order:x.order,sortList:m,$table:this});g=_xeUtils.default.isArray(a)?a:g}else if(d)g=_xeUtils.default.orderBy(g,m.map(({column:e,order:t})=>[getOrderField(this,e),t]));else{let e;_xeUtils.default.isArray(x.sortBy)&&(e=x.sortBy.map(e=>[e,x.order])),g=_xeUtils.default.orderBy(g,e||[x].map(({column:e,order:t})=>[getOrderField(this,e),t]))}f=g}this.afterFullData=g,this.afterTreeFullData=f,this.updateAfterDataIndex()},updateTreeDataIndex(){let i=this;var e=i.treeConfig;let{afterFullData:t,fullDataRowIdData:a,fullAllDataRowIdData:o}=i;var l=i.computeTreeOpts;e&&l.transform&&t.forEach((e,t)=>{var l=(0,_util.getRowid)(i,e),r=o[l];r?r._index=t:(r={row:e,rowid:l,seq:"-1",index:-1,$index:-1,_index:t,items:[],parent:null,level:0,height:0,oTop:0},o[l]=r,a[l]=r)})},updateAfterDataIndex(){let o=this;var e=o.treeConfig;let{afterFullData:t,fullDataRowIdData:s,fullAllDataRowIdData:n,afterTreeFullData:l}=o;var r=o.computeTreeOpts,i=r.children||r.childrenField;let d={};e?(_xeUtils.default.eachTree(l,(e,t,l,r)=>{var i=(0,_util.getRowid)(o,e),a=n[i],r=r.map((e,t)=>t%2==0?Number(e)+1:".").join("");a?(a.seq=r,a._index=t):(a={row:e,rowid:i,seq:r,index:-1,$index:-1,_index:t,items:[],parent:null,level:0,height:0,oTop:0},n[i]=a,s[i]=a),d[i]=e},{children:r.transform?r.mapChildrenField:i}),o.updateTreeDataIndex()):t.forEach((e,t)=>{var l=(0,_util.getRowid)(o,e),r=n[l],i=t+1;r?(r.seq=i,r._index=t):(r={row:e,rowid:l,seq:i,index:-1,$index:-1,_index:t,items:[],parent:null,level:0,height:0,oTop:0},n[l]=r,s[l]=r),d[l]=e}),this.afterFullRowMaps=d},getTreeRowChildren(t){var l=this.treeConfig,r=this.fullDataRowIdData,i=this.computeTreeOpts,{transform:a,mapChildrenField:o}=i,i=i.children||i.childrenField;if(t&&l){let e;if(e=_xeUtils.default.isString(t)?t:(0,_util.getRowid)(this,t)){l=r[e],t=l?l.row:null;if(t)return t[a?o:i]||[]}}return[]},getTreeParentRow(t){var{treeConfig:l,fullDataRowIdData:r}=this;if(t&&l){let e;if(e=_xeUtils.default.isString(t)?t:(0,_util.getRowid)(this,t))return(l=r[e])?l.parent:null}return null},getParentRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["getParentRow","getTreeParentRow"]),this.getTreeParentRow(e)},getRowById(e){var t=this.fullDataRowIdData,e=_xeUtils.default.eqNull(e)?"":encodeURIComponent(e);return t[e]?t[e].row:null},getRowid(e){e=_xeUtils.default.get(e,(0,_util.getRowkey)(this));return _xeUtils.default.eqNull(e)?"":encodeURIComponent(e)},getTableData(){var{treeConfig:e,tableFullData:t,afterFullData:l,tableData:r,footerTableData:i,tableFullTreeData:a}=this;return{fullData:(e?a:t).slice(0),visibleData:l.slice(0),tableData:r.slice(0),footerData:i.slice(0)}},getFullData(){var e,t,l=this.treeConfig,{tableFullData:r,tableFullTreeData:i}=this;return l?({transform:e,mapChildrenField:t}=l=this.computeTreeOpts,l=l.children||l.childrenField,e?_xeUtils.default.toArrayTree(_xeUtils.default.toTreeArray(i,{children:t}),{children:l}):i.slice(0)):r.slice(0)},handleLoadDefaults(){this.checkboxConfig&&this.handleDefaultSelectionChecked(),this.radioConfig&&this.handleDefaultRadioChecked(),this.expandConfig&&this.handleDefaultRowExpand(),this.treeConfig&&this.handleDefaultTreeExpand(),this.mergeCells&&this.handleDefaultMergeCells(),this.mergeFooterItems&&this.handleDefaultMergeFooterItems(),this.$nextTick(()=>setTimeout(this.recalculate))},handleInitDefaults(){var e=this.sortConfig;e&&this.handleDefaultSort()},setColumnFixed(e,t){var l=this;let r=!1;var i=_xeUtils.default.isArray(e)?e:[e],a=l.computeColumnOpts,o=l.computeIsMaxFixedColumn;for(let e=0;e<i.length;e++){var s=i[e],s=(0,_util.handleFieldOrColumn)(l,s),s=(0,_util.getRootColumn)(l,s);if(s&&s.fixed!==t){if(!s.fixed&&o)return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.table.maxFixedCol",[a.maxFixedSize])}),l.$nextTick();_xeUtils.default.eachTree([s],e=>{e.fixed=t}),l.saveCustomStore("update:fixed"),r=r||!0}}return r?l.refreshColumn():l.$nextTick()},clearColumnFixed(e){let t=this,l=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.handleFieldOrColumn)(t,e),e=(0,_util.getRootColumn)(t,e);e&&e.fixed&&(_xeUtils.default.eachTree([e],e=>{e.fixed=null}),t.saveCustomStore("update:fixed"),l=l||!0)}),l?t.refreshColumn():t.$nextTick()},hideColumn(e){let t=this,l=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.handleFieldOrColumn)(t,e);e&&e.visible&&(e.visible=!1,l=l||!0)}),l?t.handleCustom():t.$nextTick()},showColumn(e){let t=this,l=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.handleFieldOrColumn)(t,e);e&&!e.visible&&(e.visible=!0,l=l||!0)}),l?t.handleCustom():t.$nextTick()},setColumnWidth(e,i){let a=this,o=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(t=>{t=(0,_util.handleFieldOrColumn)(a,t);if(t){var l,r=_xeUtils.default.toInteger(i);let e=r;(0,_dom.isScale)(i)&&(l=(l=(l=a.$refs.tableBody)?l.$el:null)?l.clientWidth-1:0,e=Math.floor(r*l)),t.resizeWidth=e,o=o||!0}}),o?a.refreshColumn():a.$nextTick()},getColumnWidth(e){e=(0,_util.handleFieldOrColumn)(this,e);return e?e.renderWidth:0},resetColumn(e){return(0,_log.warnLog)("vxe.error.delFunc",["resetColumn","resetCustom"]),this.resetCustom(e)},handleCustom(){var e=this.mouseConfig;return e&&(this.clearSelected&&this.clearSelected(),this.clearCellAreas)&&(this.clearCellAreas(),this.clearCopyCellArea()),this.analyColumnWidth(),this.refreshColumn(!0)},handleCustomRestore(e){var t=this,l=this,r=l.collectColumn;let{resizableData:o,sortData:s,visibleData:n,fixedData:d}=e,h=!1;o||s||n||d?(_xeUtils.default.eachTree(r,(e,t,l,r,i)=>{var a=e.getKey();i||(d&&void 0!==d[a]&&(e.fixed=d[a]),s&&_xeUtils.default.isNumber(s[a])&&(h=!0,e.renderSortNumber=s[a])),o&&_xeUtils.default.isNumber(o[a])&&(e.resizeWidth=o[a]),n&&_xeUtils.default.isBoolean(n[a])&&(e.visible=n[a])}),h&&(r=_xeUtils.default.orderBy(r,"renderSortNumber"),l.collectColumn=r,l.tableFullColumn=getColumnList(r)),t.isCustomStatus=!0):t.isCustomStatus=!1},restoreCustomStorage(){var{tableId:e,customConfig:t,customOpts:l}=this,{storage:r,restoreStore:i}=l,a=!0===r,r=a?{}:Object.assign({},r||{}),o=a||r.resizable,s=a||r.visible,n=a||r.fixed,a=a||r.sort;if((t?(0,_utils.isEnableConf)(l):l.enabled)&&(o||s||n||a)){if(e)return r=getCustomStorageMap(e),i?Promise.resolve(i({id:e,type:"restore",storeData:r})).then(e=>{if(e)return this.handleCustomRestore(e)}).catch(e=>e):this.handleCustomRestore(r);(0,_log.errLog)("vxe.error.reqProp",["id"])}},getCustomStoreData(){let{id:e,customOpts:t,collectColumn:d}=this,h=t.checkMethod,u={},c={},g={},f={};var l={resizableData:void 0,sortData:void 0,visibleData:void 0,fixedData:void 0};if(e){let a=0,o=0,s=0,n=0;_xeUtils.default.eachTree(d,(e,t,l,r,i)=>{i||(d.forEach(e=>{var t=e.getKey();t&&(o=1,c[t]=e.renderSortNumber)}),e.fixed!==e.defaultFixed&&(i=e.getKey())&&(s=1,f[i]=e.fixed)),e.resizeWidth&&(i=e.getKey())&&(a=1,u[i]=e.renderWidth),h&&!h({column:e})||(!e.visible&&e.defaultVisible?(i=e.getKey())&&(n=1,g[i]=!1):e.visible&&!e.defaultVisible&&(i=e.getKey())&&(n=1,g[i]=!0))}),a&&(l.resizableData=u),o&&(l.sortData=c),s&&(l.fixedData=f),n&&(l.visibleData=g)}else(0,_log.errLog)("vxe.error.reqProp",["id"]);return l},saveCustomStore(e){var t=this,l=this.customConfig,r=this.computeTableId,i=this.computeCustomOpts,{updateStore:a,storage:o}=i,s=!0===o,o=s?{}:Object.assign({},o||{}),n=s||o.resizable,d=s||o.visible,h=s||o.fixed,s=s||o.sort;if("reset"!==e&&(t.isCustomStatus=!0),(l?(0,_utils.isEnableConf)(i):i.enabled)&&(n||d||h||s)){if(!r)return(0,_log.errLog)("vxe.error.reqProp",["id"]),this.$nextTick();o="reset"===e?{resizableData:{},sortData:{},visibleData:{},fixedData:{}}:this.getCustomStoreData();if(a)return a({id:r,type:e,storeData:o});setCustomStorageMap(r,"reset"===e?null:o)}return this.$nextTick()},handleUpdateDataQueue(){this.upDataFlag++},handleRefreshColumnQueue(){this.reColumnFlag++},refreshColumn(e){return e&&this.handleUpdateColumn(),this.parseColumns(!0).then(()=>this.refreshScroll()).then(()=>this.recalculate())},parseColumns(e){var t=this,l=this.showOverflow,r=this.computeRowOpts;let o=[],s=[],n=[],{collectColumn:i,tableFullColumn:a,isGroup:d,columnStore:h,sXOpts:u,scrollXStore:c,fullColumnIdData:g}=this;if(d){let t=[],l=[],r=[];_xeUtils.default.eachTree(i,(e,t,l,r,i)=>{var a=(0,_utils.hasChildrenList)(e);i&&i.fixed&&(e.fixed=i.fixed),i&&e.fixed!==i.fixed&&(0,_log.errLog)("vxe.error.groupFixed"),a?e.visible=!!_xeUtils.default.findTree(e.children,e=>(0,_utils.hasChildrenList)(e)?null:e.visible):e.visible&&("left"===e.fixed?o:"right"===e.fixed?n:s).push(e)}),i.forEach(e=>{e.visible&&("left"===e.fixed?t:"right"===e.fixed?r:l).push(e)}),this.tableGroupColumn=t.concat(l).concat(r)}else a.forEach(e=>{e.visible&&("left"===e.fixed?o:"right"===e.fixed?n:s).push(e)});let f=o.concat(s).concat(n);var p=u.enabled&&-1<u.gt&&(0===u.gt||u.gt<=a.length);return this.hasFixedColumn=0<o.length||0<n.length,Object.assign(h,{leftList:o,centerList:s,rightList:n}),p&&(l&&!r.height&&(l=t.tableFullColumn.find(e=>!1===e.showOverflow))&&(0,_log.errLog)("vxe.error.errProp",[`column[field="${l.field}"].show-overflow=false`,"show-overflow=true"]),"development"===process.env.NODE_ENV&&(this.spanMethod&&(0,_log.warnLog)("vxe.error.scrollErrProp",["span-method"]),this.footerSpanMethod)&&(0,_log.warnLog)("vxe.error.scrollErrProp",["footer-span-method"]),e)&&(r=handleVirtualXVisible(this).visibleSize,c.startIndex=0,c.endIndex=r,c.visibleSize=r),f.length===this.visibleColumn.length&&this.visibleColumn.every((e,t)=>e===f[t])||(this.clearMergeCells(),this.clearMergeFooterItems()),this.scrollXLoad=p,f.forEach((e,t)=>{e=e.id,e=g[e];e&&(e._index=t)}),this.visibleColumn=f,this.handleTableColumn(),e?this.updateFooter().then(()=>this.recalculate()).then(()=>(this.updateCellAreas(),this.recalculate())):this.updateFooter()},analyColumnWidth(){var e=this.columnOpts;let{width:t,minWidth:l}=e,r=[],i=[],a=[],o=[],s=[],n=[],d=[],h=[];this.tableFullColumn.forEach(e=>{t&&!e.width&&(e.width=t),l&&!e.minWidth&&(e.minWidth=l),e.visible&&(e.resizeWidth?r:"auto"===e.width?d:(0,_dom.isPx)(e.width)?i:(0,_dom.isScale)(e.width)?s:(0,_dom.isPx)(e.minWidth)?a:"auto"===e.minWidth?o:(0,_dom.isScale)(e.minWidth)?n:h).push(e)}),Object.assign(this.columnStore,{resizeList:r,pxList:i,pxMinList:a,autoMinList:o,scaleList:s,scaleMinList:n,autoList:d,remainList:h})},handleResizeDblclickEvent(t,l){let r=this;var i=r,a=r,o=r.computeResizableOpts.isDblclickAutoWidth,s=r.$refs.refElem;if(o&&s){var o=a.fullColumnIdData,n=l.column,o=o[n.id],d=t.target.parentNode,d=Object.assign(l,{cell:d}),d=(0,_util.getColReMinWidth)(d);let e=calcColumnAutoWidth(n,s);o&&(e=Math.max(e,o.width)),n.resizeWidth=Math.max(d,e),i._isResize=!1,a._lastResizeTime=Date.now(),r.analyColumnWidth(),r.recalculate(!0).then(()=>{r.saveCustomStore("update:visible"),r.updateCellAreas(),r.dispatchEvent("resizable-change",Object.assign(Object.assign({},l),{resizeWidth:e}),t),setTimeout(()=>r.recalculate(!0),300)})}},refreshScroll(){let{lastScrollLeft:t,lastScrollTop:l}=this;var e=this.$refs,{tableBody:e,leftBody:r,rightBody:i,tableFooter:a}=e;let o=e?e.$el:null,s=r?r.$el:null,n=i?i.$el:null,d=a?a.$el:null;return new Promise(e=>{if(t||l)return(0,_util.restoreScrollLocation)(this,t,l).then(()=>{setTimeout(e,30)});(0,_dom.setScrollTop)(o,l),(0,_dom.setScrollTop)(s,l),(0,_dom.setScrollTop)(n,l),(0,_dom.setScrollLeft)(d,t),setTimeout(e,30)})},recalculate(a){let o=this,s=o;return new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=s,r=o.computeResizeOpts.refreshDelay||20,i=o.$refs.refElem;i&&i.clientWidth&&autoCellWidth(o),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(handleRecalculateLayout(o,!!a)):o.$nextTick(()=>{e()}),s.rceTimeout=setTimeout(()=>{s.rceTimeout=void 0,handleRecalculateLayout(o,!!a)},r)})},updateStyle(){let{$refs:t,isGroup:h,fullColumnIdData:u,tableColumn:c,customHeight:g,customMinHeight:f,customMaxHeight:p,border:m,headerHeight:x,showFooter:v,showOverflow:w,showHeaderOverflow:C,showFooterOverflow:R,footerHeight:b,tableHeight:_,tableWidth:T,scrollbarHeight:E,scrollbarWidth:D,scrollXLoad:S,scrollYLoad:y,overflowX:l,cellOffsetWidth:k,columnStore:I,elemStore:M,editStore:e,currentRow:r,mouseConfig:i,spanMethod:$,expandColumn:O,footerSpanMethod:F,isAllOverflow:U,visibleColumn:L}=this;var a=t.emptyPlaceholder,o=M["main-body-wrapper"],a=(a&&(a.style.top=x+"px",a.style.height=o?o.offsetHeight-E+"px":""),0<g&&v&&(g+=E),this.$refs.refScrollXVirtualElem),o=(a&&(a.style.height=E+"px"),this.$refs.refScrollYVirtualElem);if(o){let e=0,t=0;a=f-x-b;p&&(t=p-x-b,t=Math.max(a,t)),g&&(e=g-x-b,t&&(e=Math.min(t,e)),e=Math.max(a,e)),o.style.top=x+"px",o.style.width=D+"px",o.style.height=e+(l?-Math.max(1,E):0)+"px"}return["main","left","right"].forEach((n,e)=>{let a=0<e?n:"";let o=I[a+"List"],d=t[a+"Container"];["header","body","footer"].forEach(s=>{var l=M[n+`-${s}-wrapper`],t=M[n+`-${s}-table`];if("header"===s){T;let e=c;h?e=L:a&&(e=!(S||y||C)||$||F?L:o||[]),r=e.reduce((e,t)=>e+t.renderWidth,0),t&&(t.style.width=r?r+D+"px":"",_dom.browse.msie)&&_xeUtils.default.arrayEach(t.querySelectorAll(".vxe-resizable"),e=>{e.style.height=e.parentNode.offsetHeight+"px"});var r=M[n+`-${s}-repair`],r=(r&&(r.style.width=T+"px"),M[n+`-${s}-list`]);h&&r&&_xeUtils.default.arrayEach(r.querySelectorAll(".col--group"),e=>{var i=this.getColumnNode(e);if(i){let t=i.item;i=t.showHeaderOverflow,i=_xeUtils.default.isBoolean(i)?i:C,i="title"===i||(!0===i||"tooltip"===i)||"ellipsis"===i;let l=0,r=0;i&&_xeUtils.default.eachTree(t.children,e=>{e.children&&t.children.length||r++,l+=e.renderWidth}),e.style.width=i?l-r-(m?2:0)+"px":""}})}else if("body"===s){r=M[n+`-${s}-emptyBlock`];if((0,_dom.isNodeElement)(l)){let t=0;var i=f-x-b;if(p&&(t=p-x-b,a&&(t-=v?0:E),t=Math.max(i,t),l.style.maxHeight=t+"px"),g){let e=g-x-b;a&&(e-=v?0:E),t&&(e=Math.min(t,e)),l.style.height=Math.max(i,e)+"px"}else l.style.height="";l.style.minHeight=i+"px"}if(d){i="right"===a;let e=I[a+"List"];(0,_dom.isNodeElement)(l)&&(l.style.top=x+"px"),d.style.height=(0<g?g-x-b:_)+x+b-E*(v?2:1)+"px",d.style.width=e.reduce((e,t)=>e+t.renderWidth,i?D:0)+"px"}T;let e=c;i=(e=a?!(S||y||w&&U)||O||$||F?L:o||[]:e).reduce((e,t)=>e+t.renderWidth,0),t&&(t.style.width=i?i+"px":"",t.style.paddingRight=D&&a&&(_dom.browse["-moz"]||_dom.browse.safari)?D+"px":""),r&&(r.style.width=i?i+"px":"")}else if("footer"===s){T;let e=c;r=(e=a?!(S||y||R)||$||F?L:o||[]:e).reduce((e,t)=>e+t.renderWidth,0),(0,_dom.isNodeElement)(l)&&(d&&(l.style.top=`${0<g?g-b:_+x}px`),l.style.marginTop=-E+"px"),t&&(t.style.width=r?r+D+"px":"")}i=M[n+`-${s}-colgroup`];i&&_xeUtils.default.arrayEach(i.children,t=>{var l=t.getAttribute("name");if("col_gutter"===l&&(t.style.width=D+"px"),u[l]){let a=u[l].column;var{showHeaderOverflow:l,showFooterOverflow:r,showOverflow:i}=a;let e;t.style.width=a.renderWidth+"px";t="ellipsis"===(e="header"===s?_xeUtils.default.isUndefined(l)||_xeUtils.default.isNull(l)?C:l:"footer"===s?_xeUtils.default.isUndefined(r)||_xeUtils.default.isNull(r)?R:r:_xeUtils.default.isUndefined(i)||_xeUtils.default.isNull(i)?w:i),l="title"===e,r=!0===e||"tooltip"===e;let o=l||r||t;i=M[n+`-${s}-list`];"header"===s||"footer"===s?S&&!o&&(o=!0):(S||y)&&(o=o||!0),i&&_xeUtils.default.arrayEach(i.querySelectorAll("."+a.id),e=>{var t=parseInt(e.getAttribute("colspan")||1),e=e.querySelector(".vxe-cell");let l=a.renderWidth;if(e){if(1<t){var r=this.getColumnIndex(a);for(let e=1;e<t;e++){var i=this.getColumns(r+e);i&&(l+=i.renderWidth)}}e.style.width=o?l-k*t+"px":""}})}})})}),r&&this.setCurrentRow(r),i&&i.selected&&e.selected.row&&e.selected.column&&this.addColSdCls(),this.$nextTick()},checkScrolling(){var{tableBody:e,leftContainer:t,rightContainer:l}=this.$refs,e=e?e.$el:null,e=this.$refs.refScrollXHandleElem||e;e&&(t&&(0<e.scrollLeft?(0,_dom.addClass):(0,_dom.removeClass))(t,"scrolling--middle"),l)&&(e.clientWidth<e.scrollWidth-Math.ceil(e.scrollLeft)?(0,_dom.addClass):(0,_dom.removeClass))(l,"scrolling--middle")},preventEvent(t,e,l,r,i){let a=interceptor.get(e);a.length||"event.clearEdit"!==e||(a=interceptor.get("event.clearActived"),"development"===process.env.NODE_ENV&&a.length&&(0,_log.warnLog)("vxe.error.delEvent",["event.clearActived","event.clearEdit"]));let o;return a.some(e=>!1===e(Object.assign({$grid:this.$xegrid,$table:this,$event:t},l)))||r&&(o=r()),i&&i(),o},handleGlobalMousedownEvent(l){let{$el:r,$refs:e,$xegrid:t,$toolbar:i,mouseConfig:a,editStore:o,ctxMenuStore:s,editRules:n,editOpts:d,validOpts:h,areaOpts:u,filterStore:c,customStore:g,getRowNode:f}=this,p=o.actived;var{ctxWrapper:m,filterWrapper:x,customWrapper:v,validTip:w}=e;if(!x||(0,_dom.getEventTargetNode)(l,r,"vxe-cell--filter").flag||(0,_dom.getEventTargetNode)(l,x.$el).flag||(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(l,"event.clearFilter",c.args,this.closeFilter),!v||g.btnEl===l.target||(0,_dom.getEventTargetNode)(l,document.body,"vxe-toolbar-custom-target").flag||(0,_dom.getEventTargetNode)(l,v.$el).flag||(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(l,"event.clearCustom",{},()=>this.closeCustom()),p.row)!1===d.autoClear||(x=p.args.cell)&&(0,_dom.getEventTargetNode)(l,x).flag||w&&(0,_dom.getEventTargetNode)(l,w.$el).flag||this.lastCallTime&&!(this.lastCallTime+50<Date.now())||(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(l,"event.clearEdit",p.args,()=>{let e;var t;(e=(e=(e="row"===d.mode?!!(t=(0,_dom.getEventTargetNode)(l,r,"vxe-body--row")).flag&&f(t.targetElem).item!==p.args.row:!(0,_dom.getEventTargetNode)(l,r,"col--edit").flag)||(0,_dom.getEventTargetNode)(l,r,"vxe-header--row").flag)||(0,_dom.getEventTargetNode)(l,r,"vxe-footer--row").flag)||!this.height||this.overflowY||(t=l.target,(0,_dom.hasClass)(t,"vxe-table--body-wrapper")&&(e=l.offsetY<t.clientHeight)),!e&&(0,_dom.getEventTargetNode)(l,r).flag||setTimeout(()=>{this.handleClearEdit(l).then(()=>{!this.isActivated&&n&&h.autoClear&&(this.validErrorMaps={})})})});else if(a&&!((0,_dom.getEventTargetNode)(l,r).flag||t&&(0,_dom.getEventTargetNode)(l,t.$el).flag||m&&(0,_dom.getEventTargetNode)(l,m.$el).flag||i&&(0,_dom.getEventTargetNode)(l,i.$el).flag)&&(this.clearSelected&&this.clearSelected(),u.autoClear)&&this.getCellAreas){let e=this.getCellAreas();e&&e.length&&!(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-areas-clear").flag&&this.preventEvent(l,"event.clearAreas",{},()=>{this.clearCellAreas(),this.clearCopyCellArea(),this.emitEvent("clear-cell-area-selection",{cellAreas:e},l)})}s.visible&&m&&!(0,_dom.getEventTargetNode)(l,m.$el).flag&&this.closeMenu();v=(0,_dom.getEventTargetNode)(l,(t||this).$el).flag;!v&&n&&h.autoClear&&(this.validErrorMaps={}),this.isActivated=v},handleGlobalBlurEvent(){this.closeFilter(),this.closeMenu()},handleGlobalMousewheelEvent(){this.closeTooltip(),this.closeMenu()},keydownEvent(t){let{filterStore:e,ctxMenuStore:l,editStore:r,keyboardConfig:i,mouseConfig:a,mouseOpts:o,keyboardOpts:s}=this,n=r.actived;var d=t.keyCode;27===d&&this.preventEvent(t,"event.keydown",null,()=>{if(this.emitEvent("keydown-start",{},t),i&&a&&o.area&&this.handleKeyboardCellAreaEvent)this.handleKeyboardCellAreaEvent(t);else if((n.row||e.visible||l.visible)&&(t.stopPropagation(),this.closeFilter(),this.closeMenu(),i)&&s.isEsc&&n.row){let e=n.args;this.handleClearEdit(t),a&&o.selected&&this.$nextTick(()=>this.handleSelected(e,t))}this.emitEvent("keydown",{},t),this.emitEvent("keydown-end",{},t)})},handleGlobalKeydownEvent(B){let W=this,P=W;this.isActivated&&this.preventEvent(B,"event.keydown",null,()=>{var e=P.afterFullData;let{filterStore:t,isCtxMenu:l,ctxMenuStore:r,editStore:L,editOpts:i,editConfig:a,mouseConfig:o,mouseOpts:s,keyboardConfig:n,keyboardOpts:d,treeConfig:h,treeOpts:u,highlightCurrentRow:c,currentRow:g,bodyCtxMenu:A,rowOpts:f}=this,{selected:p,actived:m}=L;var x=B.keyCode,v=8===x,N=9===x,w=13===x,C=27===x,R=32===x,b=37===x,_=38===x,T=39===x,E=40===x,V=46===x,D=113===x,S=93===x,H=B.metaKey,y=B.ctrlKey,k=B.shiftKey,I=B.altKey,M=b||_||T||E,$=l&&r.visible&&(w||R||M),O=(0,_utils.isEnableConf)(a)&&m.column&&m.row,F=u.children||u.childrenField;let U=i.beforeEditMethod||i.activeMethod;if(t.visible)C&&this.closeFilter();else{if($)B.preventDefault(),r.showChild&&(0,_utils.hasChildrenList)(r.selected)?this.moveCtxMenu(B,x,r,"selectChild",37,!1,r.selected.children):this.moveCtxMenu(B,x,r,"selected",39,!0,this.ctxMenuList);else if(n&&o&&s.area&&this.handleKeyboardCellAreaEvent)this.handleKeyboardCellAreaEvent(B);else if(n&&R&&d.isChecked&&p.row&&p.column&&("checkbox"===p.column.type||"radio"===p.column.type))B.preventDefault(),"checkbox"===p.column.type?this.handleToggleCheckRowEvent(B,p.args):this.triggerRadioRowEvent(B,p.args);else if(D&&(0,_utils.isEnableConf)(a))O||p.row&&p.column&&(B.stopPropagation(),B.preventDefault(),this.handleEdit(p.args,B));else if(S)this._keyCtx=p.row&&p.column&&A.length,clearTimeout(this.keyCtxTimeout),this.keyCtxTimeout=setTimeout(()=>{this._keyCtx=!1},1e3);else if(w&&!I&&n&&d.isEnter&&(p.row||m.row||h&&(f.isCurrent||c)&&g)){var{isLastEnterAppendRow:C,beforeEnterMethod:$,enterMethod:D}=d;if(y){if(m.row){let e=m.args;this.handleClearEdit(B),o&&s.selected&&this.$nextTick(()=>this.handleSelected(e,B))}}else if(p.row||m.row){let t=(p.row?p:m).args;if(k)d.enterToTab?this.moveTabSelected(t,k,B):this.moveSelected(t,b,!0,T,!1,B);else if(d.enterToTab)this.moveTabSelected(t,k,B);else{var S=p.row||m.row,w=p.column||m.column,I=W.getVTRowIndex(S),S={row:S,rowIndex:W.getRowIndex(S),$rowIndex:W.getVMRowIndex(S),_rowIndex:I,column:w,columnIndex:W.getColumnIndex(w),$columnIndex:W.getVMColumnIndex(w),_columnIndex:W.getVTColumnIndex(w),$table:W};if(!$||!1!==$(S)){if(C&&I>=e.length-1)return W.insertAt({},-1).then(({row:e})=>{W.scrollToRow(e,p.column),W.handleSelected(Object.assign(Object.assign({},t),{row:e}),B)}),void W.dispatchEvent("enter-append-row",S,B);this.moveSelected(t,b,!1,T,!0,B),D&&D(S)}}}else if(h&&(f.isCurrent||c)&&g){w=g[F];if(w&&w.length){B.preventDefault();let e=w[0],t={$table:this,row:e};this.setTreeExpand(g,!0).then(()=>this.scrollToRow(e)).then(()=>this.triggerCurrentRowEvent(B,t))}}}else if(M&&n&&d.isArrow)O||(p.row&&p.column?this.moveSelected(p.args,b,_,T,E,B):(_||E)&&(f.isCurrent||c)&&this.moveCurrentRow(_,E,B));else if(N&&n&&d.isTab)p.row||p.column?this.moveTabSelected(p.args,k,B):(m.row||m.column)&&this.moveTabSelected(m.args,k,B);else if(n&&d.isDel&&V&&(0,_utils.isEnableConf)(a)&&(p.row||p.column))O||($=d.delMethod,C={row:p.row,rowIndex:this.getRowIndex(p.row),column:p.column,columnIndex:this.getColumnIndex(p.column),$table:this,$grid:this.$xegrid},U&&!U(C))||($?$(C):(0,_util.setCellValue)(p.row,p.column,null),this.updateFooter(),this.emitEvent("cell-delete-value",C,B));else if(v&&n&&d.isBack&&(0,_utils.isEnableConf)(a)&&(p.row||p.column))O||({editMode:I,backMethod:e}=d,d.isDel&&(0,_utils.isEnableConf)(a)&&(p.row||p.column)&&(D={row:p.row,rowIndex:this.getRowIndex(p.row),column:p.column,columnIndex:this.getColumnIndex(p.column),$table:this,$grid:this.$xegrid},U&&!U(D)||(e?e(D):("insert"!==I&&(0,_util.setCellValue)(p.row,p.column,null),this.handleEdit(p.args,B)),this.emitEvent("cell-backspace-value",D,B))));else if(v&&n&&h&&d.isBack&&(f.isCurrent||c)&&g){let t=_xeUtils.default.findTree(this.afterTreeFullData,e=>e===g,{children:F}).parent;if(t){B.preventDefault();let e={row:t,rowIndex:this.getRowIndex(t),$rowIndex:this.getVMRowIndex(t),$table:this,$grid:this.$xegrid};this.setTreeExpand(t,!1).then(()=>this.scrollToRow(t)).then(()=>this.triggerCurrentRowEvent(B,e))}}else if(n&&d.isEdit&&!y&&!H&&(R||48<=x&&x<=57||65<=x&&x<=90||96<=x&&x<=111||186<=x&&x<=192||219<=x&&x<=222)){S=d.editMethod;if(p.column&&p.row&&(0,_utils.isEnableConf)(p.column.editRender)){let e=i.beforeEditMethod||i.activeMethod;w={row:p.row,rowIndex:this.getRowIndex(p.row),column:p.column,columnIndex:this.getColumnIndex(p.column),$table:this,$grid:this.$xegrid};e&&!e(w)||(S?S(w):((0,_util.setCellValue)(p.row,p.column,null),this.handleEdit(p.args,B)))}}this.emitEvent("keydown",{},B)}})},handleGlobalPasteEvent(e){var{isActivated:t,keyboardConfig:l,keyboardOpts:r,mouseConfig:i,mouseOpts:a,editStore:o,filterStore:s}=this,o=o.actived;t&&!s.visible&&(o.row||o.column||l&&r.isClip&&i&&a.area&&this.handlePasteCellAreaEvent&&this.handlePasteCellAreaEvent(e),this.emitEvent("paste",{},e))},handleGlobalCopyEvent(e){var{isActivated:t,keyboardConfig:l,keyboardOpts:r,mouseConfig:i,mouseOpts:a,editStore:o,filterStore:s}=this,o=o.actived;t&&!s.visible&&(o.row||o.column||l&&r.isClip&&i&&a.area&&this.handleCopyCellAreaEvent&&this.handleCopyCellAreaEvent(e),this.emitEvent("copy",{},e))},handleGlobalCutEvent(e){var{isActivated:t,keyboardConfig:l,keyboardOpts:r,mouseConfig:i,mouseOpts:a,editStore:o,filterStore:s}=this,o=o.actived;t&&!s.visible&&(o.row||o.column||l&&r.isClip&&i&&a.area&&this.handleCutCellAreaEvent&&this.handleCutCellAreaEvent(e),this.emitEvent("cut",{},e))},handleGlobalResizeEvent(){this.closeMenu(),this.updateCellAreas(),this.recalculate(!0)},handleTargetEnterEvent(e){var t=this.$refs.tooltip;clearTimeout(this.tooltipTimeout),e?this.closeTooltip():t&&t.setActived(!0)},handleTargetLeaveEvent(){var e=this.tooltipOpts;let t=this.$refs.tooltip;t&&t.setActived(!1),e.enterable?this.tooltipTimeout=setTimeout(()=>{(t=this.$refs.tooltip)&&!t.isActived()&&this.closeTooltip()},e.leaveDelay):this.closeTooltip()},triggerHeaderTitleEvent(r,i,a){var o=i.content||i.message;if(o){let{$refs:t,tooltipStore:e}=this;a=a.column;let l=(0,_utils.getFuncText)(o);this.handleTargetEnterEvent(!0),e.row=null,e.column=a,e.visible=!0,e.currOpts=i,this.$nextTick(()=>{var e=t.tooltip;e&&e.open(r.currentTarget,l)})}},triggerHeaderTooltipEvent(e,t){var l=this.tooltipStore,r=t.column,i=e.currentTarget;this.handleTargetEnterEvent(l.column!==r||l.row),l.column===r&&l.visible||this.handleTooltip(e,i,i,null,t)},triggerBodyTooltipEvent(l,r){var{editConfig:e,editOpts:t,editStore:i,tooltipStore:a}=this,i=i.actived,{row:o,column:s}=r,n=l.currentTarget;if(this.handleTargetEnterEvent(a.column!==s||a.row!==o),s.editRender&&(0,_utils.isEnableConf)(e)){if("row"===t.mode&&i.row===o)return;if(i.row===o&&i.column===s)return}if(a.column!==s||a.row!==o||!a.visible){let e,t;s.treeNode?(e=n.querySelector(".vxe-tree-cell"),"html"===s.type&&(t=n.querySelector(".vxe-cell--html"))):t=n.querySelector("html"===s.type?".vxe-cell--html":".vxe-cell--label"),this.handleTooltip(l,n,e||n.children[0],t,r)}},triggerFooterTooltipEvent(e,t){var l=t.column,r=this.tooltipStore,i=e.currentTarget;this.handleTargetEnterEvent(!0),r.column===l&&r.visible||this.handleTooltip(e,i,i.querySelector(".vxe-cell--item")||i.children[0],null,t)},handleTooltip(e,t,l,r,i){i.cell=t;let{$refs:a,tooltipOpts:o,tooltipStore:s}=this;var{column:t,row:n}=i,{showAll:d,enabled:h,contentMethod:u}=o,i=u?u(i):null,u=u&&!_xeUtils.default.eqNull(i);let c=u?i:("html"===t.type?l.innerText:l.textContent).trim(),g=l.scrollWidth>l.clientWidth;return c&&(d||h||u||g)&&(Object.assign(s,{row:n,column:t,visible:!0,currOpts:{}}),this.$nextTick(()=>{var e=a.tooltip;e&&e.open(!g&&r||l,(0,_utils.formatText)(c))})),this.$nextTick()},openTooltip(e,t){var l=this.$refs,l=l.commTip;return l?l.open(e,t):this.$nextTick()},closeTooltip(){var{$refs:e,tooltipStore:t}=this,l=e.tooltip,e=e.commTip;return t.visible&&(Object.assign(t,{row:null,column:null,content:null,visible:!1,currOpts:{}}),l)&&l.close(),e&&e.close(),this.$nextTick()},isAllCheckboxChecked(){return this.isAllSelected},isAllCheckboxIndeterminate(){return!this.isAllSelected&&this.isIndeterminate},isCheckboxIndeterminate(){return(0,_log.warnLog)("vxe.error.delFunc",["isCheckboxIndeterminate","isAllCheckboxIndeterminate"]),this.isAllCheckboxIndeterminate()},getCheckboxIndeterminateRecords(e){let{treeConfig:t,treeIndeterminateMaps:i,fullDataRowIdData:a}=this;if(t){let l=[],r=[];return _xeUtils.default.each(i,(e,t)=>{e&&(l.push(e),a[t])&&r.push(e)}),e?l:r}return[]},handleDefaultSelectionChecked(){let{fullDataRowIdData:l,checkboxOpts:e}=this;var{checkAll:t,checkRowKeys:r}=e;if(t)this.handleCheckedAllCheckboxRow(!0,!0);else if(r){let t=[];r.forEach(e=>{l[e]&&t.push(l[e].row)}),this.handleCheckedCheckboxRow(t,!0,!0)}},handleCheckedCheckboxRow(e,t,l){return e&&!_xeUtils.default.isArray(e)&&(e=[e]),this.handleBatchSelectRows(e,!!t,l),this.checkSelectionStatus(),this.$nextTick()},setCheckboxRow(e,t){return e&&!_xeUtils.default.isArray(e)&&(e=[e]),this.handleCheckedCheckboxRow(e,t,!0)},setCheckboxRowKey(e,t){let l=this.fullAllDataRowIdData,r=(e&&!_xeUtils.default.isArray(e)&&(e=[e]),[]);return e.forEach(e=>{e=l[e];e&&r.push(e.row)}),this.handleCheckedCheckboxRow(r,t,!0)},isCheckedByCheckboxRow(e){var t=this.selectCheckboxMaps,l=this.computeCheckboxOpts.checkField;return l?_xeUtils.default.get(e,l):!!t[(0,_util.getRowid)(this,e)]},isCheckedByCheckboxRowKey(e){var t=this.selectCheckboxMaps,l=this.fullAllDataRowIdData,r=this.computeCheckboxOpts.checkField;return r?!!(l=l[e])&&_xeUtils.default.get(l.row,r):!!t[e]},isIndeterminateByCheckboxRow(e){var t=this.treeIndeterminateMaps;return!!t[(0,_util.getRowid)(this,e)]&&!this.isCheckedByCheckboxRow(e)},isIndeterminateByCheckboxRowKey(e){var t=this.treeIndeterminateMaps;return!!t[e]&&!this.isCheckedByCheckboxRowKey(e)},handleBatchSelectRows(e,l,r){let i=this;var t=i,a=i,t=t.treeConfig,o=a.selectCheckboxMaps;let s=Object.assign({},o);var o=i.computeTreeOpts,{transform:n,mapChildrenField:d}=o,o=o.children||o.childrenField,h=i.computeCheckboxOpts;let{checkField:u,checkStrictly:c,checkMethod:g}=h,f=h.indeterminateField||h.halfField;u?t&&!c?_xeUtils.default.eachTree(e,e=>{!r&&g&&!g({row:e})||(_xeUtils.default.set(e,u,l),f&&_xeUtils.default.set(e,f,!1),i.handleCheckboxReserveRow(e,l))},{children:n?d:o}):e.forEach(e=>{!r&&g&&!g({row:e})||(_xeUtils.default.set(e,u,l),i.handleCheckboxReserveRow(e,l))}):t&&!c?_xeUtils.default.eachTree(e,e=>{var t=(0,_util.getRowid)(i,e);!r&&g&&!g({row:e})||(l?s[t]=e:s[t]&&delete s[t],i.handleCheckboxReserveRow(e,l))},{children:n?d:o}):e.forEach(e=>{var t=(0,_util.getRowid)(i,e);!r&&g&&!g({row:e})||(l?s[t]||(s[t]=e):s[t]&&delete s[t],i.handleCheckboxReserveRow(e,l))}),a.selectCheckboxMaps=s},handleSelectRow({row:e},t,l){this.handleBatchSelectRows([e],t,l)},handleToggleCheckRowEvent(t,l){var{selectCheckboxMaps:r,checkboxOpts:i}=this,{checkField:i,trigger:e}=i,a=l.row;if("manual"!==e){let e=!1;e=i?!_xeUtils.default.get(a,i):!r[(0,_util.getRowid)(this,a)],t?this.triggerCheckRowEvent(t,l,e):(this.handleSelectRow(l,e),this.checkSelectionStatus())}},triggerCheckRowEvent(e,t,l){var{checkboxOpts:r,afterFullData:i}=this,{checkMethod:a,trigger:o}=r,s=t.row;if("manual"!==o){if(e.stopPropagation(),r.isShiftKey&&e.shiftKey&&!this.treeConfig){o=this.getCheckboxRecords();if(o.length){r=o[0],o=this.getVTRowIndex(s),r=this.getVTRowIndex(r);if(o!==r)return this.setAllCheckboxRow(!1),i=o<r?i.slice(o,r+1):i.slice(r,o+1),this.handleCheckedCheckboxRow(i,!0,!1),void this.emitEvent("checkbox-range-select",Object.assign({rangeRecords:i},t),e)}}a&&!a({row:s})||(this.handleSelectRow(t,l),this.checkSelectionStatus(),this.emitEvent("checkbox-change",Object.assign({records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords(),indeterminates:this.getCheckboxIndeterminateRecords(),checked:l},t),e))}},toggleCheckboxRow(e){var{selectCheckboxMaps:t,checkboxOpts:l}=this,l=l.checkField,l=l?!_xeUtils.default.get(e,l):!t[(0,_util.getRowid)(this,e)];return this.handleBatchSelectRows([e],l,!0),this.checkSelectionStatus(),this.$nextTick()},handleCheckedAllCheckboxRow(t,l){var e=this;let{afterFullData:r,treeConfig:i,treeOpts:a,selectCheckboxMaps:o,checkboxReserveRowMap:s,checkboxOpts:n,afterFullRowMaps:d}=this,{checkField:h,reserve:u,checkStrictly:c,checkMethod:g}=n,f=n.indeterminateField||n.halfField;var p,m=a.children||a.childrenField;let x={};return i||_xeUtils.default.each(o,(e,t)=>{d[t]||(x[t]=e)}),c?this.isAllSelected=t:(h?(p=e=>{!l&&g&&!g({row:e})||(t&&(x[(0,_util.getRowid)(this,e)]=e),_xeUtils.default.set(e,h,t)),i&&f&&_xeUtils.default.set(e,f,!1)},i?_xeUtils.default.eachTree(r,p,{children:m}):r.forEach(p)):i?t?_xeUtils.default.eachTree(r,e=>{!l&&g&&!g({row:e})||(x[(0,_util.getRowid)(this,e)]=e)},{children:m}):!l&&g&&_xeUtils.default.eachTree(r,e=>{var t=(0,_util.getRowid)(this,e);!g({row:e})&&o[t]&&(x[t]=e)},{children:m}):t?!l&&g?r.forEach(e=>{var t=(0,_util.getRowid)(this,e);(o[t]||g({row:e}))&&(x[t]=e)}):r.forEach(e=>{x[(0,_util.getRowid)(this,e)]=e}):!l&&g&&r.forEach(e=>{var t=(0,_util.getRowid)(this,e);!g({row:e})&&o[t]&&(x[t]=e)}),u&&(t?_xeUtils.default.each(x,(e,t)=>{s[t]=e}):r.forEach(e=>this.handleCheckboxReserveRow(e,!1))),this.selectCheckboxMaps=h?{}:x),e.isAllSelected=t,e.isIndeterminate=!1,this.treeIndeterminateMaps={},this.treeIndeterminateRowMaps={},this.checkSelectionStatus(),this.$nextTick()},setAllCheckboxRow(e){return this.handleCheckedAllCheckboxRow(e,!0)},updateCheckboxStatus(){let s=this;var e=s,t=s,l=s,e=e.treeConfig,{selectCheckboxMaps:r,treeIndeterminateMaps:a}=t;let n=Object.assign({},r),d=Object.assign({},a);r=s.computeTreeOpts;let{transform:o,mapChildrenField:h}=r,u=r.children||r.childrenField,{checkField:c,checkStrictly:i,checkMethod:g}=s.computeCheckboxOpts;a=l.afterTreeFullData;if(!i){if(e){let r={},i=[];_xeUtils.default.eachTree(a,e=>{var t=(0,_util.getRowid)(s,e),l=e[o?h:u];l&&l.length&&!r[t]&&(r[t]=1,i.unshift([e,t,l]))},{children:o?h:u}),i.forEach(e=>{var t=e[0],l=e[1];let r=0,i=0,a=0;e[2].forEach(g?e=>{var t=(0,_util.getRowid)(s,e),l=c?_xeUtils.default.get(e,c):n[t];g({row:e})?(l?r++:d[t]&&i++,a++):l?r++:d[t]&&i++}:e=>{var t=(0,_util.getRowid)(s,e);(c?_xeUtils.default.get(e,c):n[t])?r++:d[t]&&i++,a++});var e=r>=a,o=!e&&(1<=r||1<=i);c&&_xeUtils.default.get(t,c,e),e?(c||(n[l]=t),d[l]&&delete d[l]):(c||n[l]&&delete n[l],o?d[l]=t:d[l]&&delete d[l])})}t.selectCheckboxMaps=n,t.treeIndeterminateMaps=d}},updateAllCheckboxStatus(){let r=this;var e=r,t=r,l=r,e=e.treeConfig;let{selectCheckboxMaps:i,treeIndeterminateMaps:a}=t,{checkField:o,checkMethod:s}=r.computeCheckboxOpts;var{afterFullData:l,afterTreeFullData:n}=l;let d=0,h=0,u=0;(e?n:l).forEach(s?e=>{var t=(0,_util.getRowid)(r,e),l=o?_xeUtils.default.get(e,o):i[t];s({row:e})?(l?d++:a[t]&&h++,u++):l?d++:a[t]&&h++}:e=>{var t=(0,_util.getRowid)(r,e);(o?_xeUtils.default.get(e,o):i[t])?d++:a[t]&&h++,u++});e=d>=u,n=!e&&(1<=d||1<=h);t.isAllSelected=e,t.isIndeterminate=n},checkSelectionStatus(){this.updateCheckboxStatus(),this.updateAllCheckboxStatus()},handleReserveStatus(){var{expandColumn:e,treeOpts:t,treeConfig:l,fullDataRowIdData:r,fullAllDataRowIdData:i,currentRow:a,selectRadioRow:o,radioReserveRow:s,radioOpts:n,checkboxOpts:d,selectCheckboxMaps:h,rowExpandedMaps:u,treeExpandedMaps:c,expandOpts:g}=this;o&&!i[(0,_util.getRowid)(this,o)]&&(this.selectRadioRow=null),n.reserve&&s&&r[i=(0,_util.getRowid)(this,s)]&&this.handleCheckedRadioRow(r[i].row,!0),this.selectCheckboxMaps=getRecoverRowMaps(this,h),d.reserve&&this.handleCheckedCheckboxRow(handleReserveRow(this,this.checkboxReserveRowMap),!0,!0),a&&!this.fullAllDataRowIdData[(0,_util.getRowid)(this,a)]&&(this.currentRow=null),this.rowExpandedMaps=e?getRecoverRowMaps(this,u):[],e&&g.reserve&&this.setRowExpand(handleReserveRow(this,this.rowExpandedReserveRowMap),!0),this.treeExpandedMaps=l?getRecoverRowMaps(this,c):[],l&&t.reserve&&this.setTreeExpand(handleReserveRow(this,this.treeExpandedReserveRowMap),!0)},getRadioReserveRecord(e){var{fullDataRowIdData:t,radioReserveRow:r,radioOpts:l,afterFullData:i,treeConfig:a,treeOpts:o}=this,o=o.children||o.childrenField;if(l.reserve&&r){let l=(0,_util.getRowid)(this,r);if(e){if(!t[l])return r}else{let t=(0,_util.getRowkey)(this);if(a){if(_xeUtils.default.findTree(i,e=>l===_xeUtils.default.get(e,t),{children:o}))return r}else if(!i.some(e=>l===_xeUtils.default.get(e,t)))return r}}return null},clearRadioReserve(){return this.radioReserveRow=null,this.$nextTick()},handleRadioReserveRow(e){var t=this.radioOpts;t.reserve&&(this.radioReserveRow=e)},getCheckboxReserveRecords(r){let{fullDataRowIdData:i,afterFullData:e,checkboxReserveRowMap:t,checkboxOpts:l,treeConfig:a,treeOpts:o}=this;var s=o.children||o.childrenField;let n=[];if(l.reserve){let l={};a?_xeUtils.default.eachTree(e,e=>{l[(0,_util.getRowid)(this,e)]=1},{children:s}):e.forEach(e=>{l[(0,_util.getRowid)(this,e)]=1}),_xeUtils.default.each(t,(e,t)=>{e&&(r?i[t]||n.push(e):l[t]||n.push(e))})}return n},clearCheckboxReserve(){return this.checkboxReserveRowMap={},this.$nextTick()},handleCheckboxReserveRow(e,t){var{checkboxReserveRowMap:l,checkboxOpts:r}=this;r.reserve&&(r=(0,_util.getRowid)(this,e),t?l[r]=e:l[r]&&delete l[r])},handleCheckAllEvent(e,t){this.handleCheckedAllCheckboxRow(t),e&&this.emitEvent("checkbox-all",{records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords(),indeterminates:this.getCheckboxIndeterminateRecords(),checked:t},e)},triggerCheckAllEvent(e,t){var l=this.checkboxOpts,l=l.trigger;"manual"!==l&&(e&&e.stopPropagation(),this.handleCheckAllEvent(e,t))},toggleAllCheckboxRow(){return this.handleCheckAllEvent(null,!this.isAllSelected),this.$nextTick()},clearCheckboxRow(){let{tableFullData:e,treeConfig:t,treeOpts:l,checkboxOpts:r}=this,{checkField:i,reserve:a}=r;var o,s=l.children||l.childrenField;let n=r.indeterminateField||r.halfField;return i&&(o=e=>{t&&n&&_xeUtils.default.set(e,n,!1),_xeUtils.default.set(e,i,!1)},t?_xeUtils.default.eachTree(e,o,{children:s}):e.forEach(o)),a&&e.forEach(e=>this.handleCheckboxReserveRow(e,!1)),this.isAllSelected=!1,this.isIndeterminate=!1,this.selectCheckboxMaps={},this.treeIndeterminateMaps={},this.$nextTick()},handleDefaultRadioChecked(){var{radioOpts:e,fullDataRowIdData:t}=this,{checkRowKey:e,reserve:l}=e;e&&(t[e]&&this.handleCheckedRadioRow(t[e].row,!0),l)&&(t=(0,_util.getRowkey)(this),this.radioReserveRow={[t]:e})},triggerRadioRowEvent(l,r){var{selectRadioRow:i,radioOpts:a}=this,o=r.row,e=a.trigger;if("manual"!==e){l.stopPropagation();let e=o,t=i!==e;t?this.handleCheckedRadioRow(e):a.strict||(t=i===e)&&(e=null,this.clearRadioRow()),t&&this.emitEvent("radio-change",Object.assign({oldValue:i,newValue:e},r),l)}},triggerCurrentColumnEvent(e,t){var l=this.computeColumnOpts.currentMethod,t=t.column;l&&!l({column:t})||this.setCurrentColumn(t)},triggerCurrentRowEvent(e,t){var l=this.currentRow,r=this.computeRowOpts.currentMethod,i=t.row,a=l!==i;r&&!r({row:i})||(this.setCurrentRow(i),a&&this.dispatchEvent("current-change",Object.assign({oldValue:l,newValue:i},t),e))},setCurrentRow(e){var{$el:t,rowOpts:l}=this;return this.clearCurrentRow(),this.currentRow=e,(l.isCurrent||this.highlightCurrentRow)&&t&&_xeUtils.default.arrayEach(t.querySelectorAll(`[rowid="${(0,_util.getRowid)(this,e)}"]`),e=>(0,_dom.addClass)(e,"row--current")),this.$nextTick()},isCheckedByRadioRow(e){var t=this.selectRadioRow;return!(!e||!t)&&this.eqRow(t,e)},isCheckedByRadioRowKey(e){var t=this.selectRadioRow;return!!t&&e===(0,_util.getRowid)(this,t)},handleCheckedRadioRow(e,t){var l=this.radioOpts,l=l.checkMethod;return e&&(t||!l||l({row:e}))&&(this.selectRadioRow=e,this.handleRadioReserveRow(e)),this.$nextTick()},setRadioRow(e){return this.handleCheckedRadioRow(e,!0)},setRadioRowKey(e){var t=this.fullAllDataRowIdData,t=t[e];return t?this.handleCheckedRadioRow(t.row,!0):this.$nextTick()},clearCurrentRow(){var e=this.$el;return this.currentRow=null,this.hoverRow=null,e&&_xeUtils.default.arrayEach(e.querySelectorAll(".row--current"),e=>(0,_dom.removeClass)(e,"row--current")),this.$nextTick()},clearRadioRow(){return this.selectRadioRow=null,this.$nextTick()},getCurrentRecord(){return this.rowOpts.isCurrent||this.highlightCurrentRow?this.currentRow:null},getRadioRecord(e){var{selectRadioRow:t,fullDataRowIdData:l,afterFullRowMaps:r}=this;if(t){var i=(0,_util.getRowid)(this,t);if(e){if(l[i])return t}else if(r[i])return t}return null},triggerHoverEvent(e,{row:t}){this.setHoverRow(t)},setHoverRow(e){var t=this.$el,l=(0,_util.getRowid)(this,e);this.clearHoverRow(),t&&_xeUtils.default.arrayEach(t.querySelectorAll(`[rowid="${l}"]`),e=>(0,_dom.addClass)(e,"row--hover")),this.hoverRow=e},clearHoverRow(){var e=this.$el;e&&_xeUtils.default.arrayEach(e.querySelectorAll(".vxe-body--row.row--hover"),e=>(0,_dom.removeClass)(e,"row--hover")),this.hoverRow=null},triggerHeaderCellClickEvent(e,t){var{_lastResizeTime:l,sortOpts:r}=this,i=t.column,a=e.currentTarget,l=l&&l>Date.now()-300,o=(0,_dom.getEventTargetNode)(e,a,"vxe-cell--sort").flag,s=(0,_dom.getEventTargetNode)(e,a,"vxe-cell--filter").flag;return"cell"!==r.trigger||l||o||s||this.triggerSortEvent(e,i,getNextSortOrder(this,i)),this.emitEvent("header-cell-click",Object.assign({triggerResizable:l,triggerSort:o,triggerFilter:s,cell:a},t),e),(this.columnOpts.isCurrent||this.highlightCurrentColumn)&&this.triggerCurrentColumnEvent(e,t),this.$nextTick()},triggerHeaderCellDblclickEvent(e,t){this.emitEvent("header-cell-dblclick",Object.assign({cell:e.currentTarget},t),e)},getCurrentColumn(){return this.columnOpts.isCurrent||this.highlightCurrentColumn?this.currentColumn:null},setCurrentColumn(e){e=(0,_util.handleFieldOrColumn)(this,e);return e&&(this.clearCurrentColumn(),this.currentColumn=e),this.$nextTick()},clearCurrentColumn(){return this.currentColumn=null,this.$nextTick()},checkValidate(e){return this.triggerValidate?this.triggerValidate(e):this.$nextTick()},handleChangeCell(e,t){this.checkValidate("blur").catch(e=>e).then(()=>{this.handleEdit(t,e).then(()=>this.checkValidate("change")).catch(e=>e)})},triggerCellClickEvent(e,t){var{highlightCurrentRow:l,editStore:r,radioOpts:i,expandOpts:a,treeOpts:o,keyboardOpts:s,editConfig:n,editOpts:d,checkboxOpts:h,rowOpts:u}=this,{actived:r,focused:c}=r,{row:g,column:f}=t,{type:p,treeNode:m}=f,x="radio"===p,v="checkbox"===p,p="expand"===p,w=e.currentTarget,C=x&&(0,_dom.getEventTargetNode)(e,w,"vxe-cell--radio").flag,R=v&&(0,_dom.getEventTargetNode)(e,w,"vxe-cell--checkbox").flag,b=m&&(0,_dom.getEventTargetNode)(e,w,"vxe-tree--btn-wrapper").flag,_=p&&(0,_dom.getEventTargetNode)(e,w,"vxe-table--expanded").flag;t=Object.assign({cell:w,triggerRadio:C,triggerCheckbox:R,triggerTreeNode:b,triggerExpandNode:_},t),!R&&!C&&(!_&&("row"===a.trigger||p&&"cell"===a.trigger)&&this.triggerRowExpandEvent(e,t),"row"===o.trigger||m&&"cell"===o.trigger)&&this.triggerTreeExpandEvent(e,t),b||(_||(!u.isCurrent&&!l||R||C||this.triggerCurrentRowEvent(e,t),!C&&("row"===i.trigger||x&&"cell"===i.trigger)&&this.triggerRadioRowEvent(e,t),!R&&("row"===h.trigger||v&&"cell"===h.trigger)&&this.handleToggleCheckRowEvent(e,t)),(0,_utils.isEnableConf)(n)&&(s.arrowCursorLock&&e&&"cell"===d.mode&&e.target&&/^input|textarea$/i.test(e.target.tagName)&&(c.column=f,c.row=g),"manual"===d.trigger?r.args&&r.row===g&&f!==r.column&&this.handleChangeCell(e,t):r.args&&g===r.row&&f===r.column||("click"===d.trigger||"dblclick"===d.trigger&&"row"===d.mode&&r.row===g)&&this.handleChangeCell(e,t))),(0,_utils.isEnableConf)(n)&&"dblclick"===d.trigger&&r.row&&r.column&&("row"===d.mode?this.eqRow(r.row,g)||this.handleClearEdit(e):"cell"!==d.mode||this.eqRow(r.row,g)&&r.column.id===f.id||this.handleClearEdit(e)),this.emitEvent("cell-click",t,e)},triggerCellDblclickEvent(e,t){var{editStore:l,editConfig:r,editOpts:i}=this,l=l.actived,a=e.currentTarget;t=Object.assign({cell:a},t),!(0,_utils.isEnableConf)(r)||"dblclick"!==i.trigger||l.args&&e.currentTarget===l.args.cell||("row"===i.mode?this.checkValidate("blur").catch(e=>e).then(()=>{this.handleEdit(t,e).then(()=>this.checkValidate("change")).catch(e=>e)}):"cell"===i.mode&&this.handleEdit(t,e).then(()=>this.checkValidate("change")).catch(e=>e)),this.emitEvent("cell-dblclick",t,e)},handleDefaultSort(){var{sortConfig:e,sortOpts:t}=this;let l=t.defaultSort;l&&(l=_xeUtils.default.isArray(l)?l:[l]).length&&((e.multiple?l:l.slice(0,1)).forEach((e,t)=>{var{field:e,order:l}=e;e&&l&&(e=this.getColumnByField(e))&&e.sortable&&(e.order=l,e.sortTime=Date.now()+t)}),t.remote||this.handleTableData(!0).then(this.updateStyle))},handleColumnSortEvent(e,t){var l=this,r=l.mouseConfig,i=l.computeMouseOpts,{field:a,sortable:o}=t;o&&(o={$table:l,$event:e,column:t,field:a,property:a,order:t.order,sortList:l.getSortColumns(),sortTime:t.sortTime},r&&i.area&&l.handleSortEvent&&l.handleSortEvent(e,o),l.dispatchEvent("sort-change",o,e))},triggerSortEvent(e,t,l){var r=this.computeSortOpts,{field:i,sortable:a,remoteSort:o}=t;(a||o)&&(l&&t.order!==l?this.sort({field:i,order:l}):this.clearSort(r.multiple?t:null),this.handleColumnSortEvent(e,t))},triggerHeaderCellMousedownEvent(e,t){var l=this,r=l.mouseConfig,i=l.computeMouseOpts,a=l.computeColumnOpts,{trigger:o,isCrossDrag:s,isPeerDrag:n,disabledMethod:d}=l.computeColumnDragOpts,h=e.currentTarget,u=h&&h.tagName&&"input"===h.tagName.toLowerCase(),c=(0,_dom.getEventTargetNode)(e,h,"vxe-cell--checkbox").flag,g=(0,_dom.getEventTargetNode)(e,h,"vxe-cell--sort").flag,f=(0,_dom.getEventTargetNode)(e,h,"vxe-cell--filter").flag;let p=!1;a=a.drag&&"cell"===o;u||c||g||f||(o=t.column,!a)||o.fixed||!s&&!n&&o.parentId||d&&d(t)||(p=!0,l.handleHeaderCellDragMousedownEvent(e,t)),!p&&r&&i.area&&l.handleHeaderCellAreaEvent&&l.handleHeaderCellAreaEvent(e,Object.assign({cell:h,triggerSort:g,triggerFilter:f},t)),l.focus(),l.closeMenu&&l.closeMenu()},triggerCellMousedownEvent(e,t){var l=this,r=t.column,{type:i,treeNode:a}=r,o="radio"===i,s="checkbox"===i,i="expand"===i,n=l.computeRowOpts,{trigger:d,isCrossDrag:h,isPeerDrag:u,disabledMethod:c}=l.computeRowDragOpts,g=e.currentTarget,f=(t.cell=g)&&g.tagName&&"input"===g.tagName.toLowerCase(),o=o&&(0,_dom.getEventTargetNode)(e,g,"vxe-cell--radio").flag,s=s&&(0,_dom.getEventTargetNode)(e,g,"vxe-cell--checkbox").flag,a=a&&(0,_dom.getEventTargetNode)(e,g,"vxe-tree--btn-wrapper").flag,i=i&&(0,_dom.getEventTargetNode)(e,g,"vxe-table--expanded").flag;let p=!1,m=(n.drag&&(p="row"===d||r.dragSort&&"cell"===d),!1);f||o||s||a||i||!p||!h&&!u&&t.level||c&&c(t)||(m=!0,l.handleCellDragMousedownEvent(e,t)),!m&&l.handleCellMousedownEvent&&l.handleCellMousedownEvent(e,t),l.focus(),l.closeFilter(),l.closeMenu&&l.closeMenu()},triggerCellMouseupEvent(){clearDragStatus(this)},handleRowDragDragstartEvent(e){e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},handleRowDragSwapEvent(s,e,n,d,h,u){let c=this;var t=c;let g=c,f=c,{treeConfig:p,dragConfig:l}=t;t=c.computeRowDragOpts;let m=f.fullAllDataRowIdData,{isPeerDrag:x,isCrossDrag:v,isSelfToChildDrag:w,dragEndMethod:r}=t,C=c.computeTreeOpts,{transform:R,rowField:b,mapChildrenField:_,parentField:T}=C,E=C.children||C.childrenField,{afterFullData:D,tableFullData:S}=f;t=r||(l?l.dragEndMethod:null);let y="bottom"===h?1:0;return d&&n&&d!==n?Promise.resolve(!t||t({oldRow:n,newRow:d,dragPos:h,dragToChild:!!u,offsetIndex:y})).then(l=>{if(l){let e=-1,t=-1;if(p){if(R){var l=(0,_util.getRowid)(c,n),l=m[l],r=(0,_util.getRowid)(c,d),i=m[r];if(l&&i){var a=l.level,o=i.level;let t={},e=(_xeUtils.default.eachTree([n],e=>{t[(0,_util.getRowid)(c,e)]=e},{children:_}),!1);if(a&&o)if(x&&!v){if(l.row[T]!==i.row[T])return}else{if(!v)return;if(t[r]&&(e=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(a){if(!v)return}else if(o){if(!v)return;if(t[r]&&(e=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}l=_xeUtils.default.toTreeArray(f.afterTreeFullData,{children:E}),i=c.findRowIndexOf(l,n),a=(l.splice(i,1),c.findRowIndexOf(l,d)),o=a+y;l.splice(o,0,n),e&&v&&w&&_xeUtils.default.each(n[E],e=>{e[T]=n[T]}),n[T]=u?d[b]:d[T],f.tableFullTreeData=_xeUtils.default.toArrayTree(l,{key:C.rowField,parentKey:C.parentField,children:E,mapChildren:C.mapChildrenField})}}}else{e=c.findRowIndexOf(D,n);r=c.findRowIndexOf(S,n),i=(D.splice(e,1),S.splice(r,1),c.findRowIndexOf(D,d)),a=c.findRowIndexOf(S,d),o=(t=i+y,a+y);D.splice(t,0,n),S.splice(o,0,n)}g.isDragRowMove=!0,c.handleTableData(p&&R),c.cacheRowMap(),updateScrollYStatus(c),p&&R||c.updateAfterDataIndex(),c.checkSelectionStatus(),g.scrollYLoad&&c.updateScrollYSpace(),c.$nextTick().then(()=>{c.updateCellAreas(),c.recalculate()}),c.dispatchEvent("row-dragend",{oldRow:n,newRow:d,dragPos:h,dragToChild:!!u,offsetIndex:y,_index:{newIndex:t,oldIndex:e}},s)}}).catch(()=>{}):Promise.resolve()},handleRowDragDragendEvent(e){var t=this;let l=t;var r=t,i=t.treeConfig,{fullAllDataRowIdData:a,prevDragToChild:o}=r,s=l.dragRow,n=t.computeTreeOpts,d=n.lazy,n=n.hasChild||n.hasChildField,{prevDragRow:h,prevDragPos:u}=r;i&&o&&!(d&&(i=a[(0,_util.getRowid)(t,h)],!h[n]||i&&i.treeLoaded))||t.handleRowDragSwapEvent(e,!0,s,h,u,o),hideDropTip(t),clearRowDropOrigin(t),r.prevDragToChild=!1,l.dragRow=null,l.dragCol=null,setTimeout(()=>{l.isDragRowMove=!1},500)},handleRowDragDragoverEvent(l){var r=this,i=r,a=r,o=r.treeConfig,s=i.fullAllDataRowIdData;let e=a.dragRow;var n=r.computeTreeOpts,{lazy:d,transform:h,parentField:u}=n,n=n.hasChild||n.hasChildField,{isPeerDrag:c,isCrossDrag:g,isToChildDrag:f}=r.computeRowDragOpts;if(e){var p=l.ctrlKey,m=l.currentTarget;let e=m.getAttribute("rowid")||"";var x=s[e];if(x){var v=x.row;let e=(0,_util.getRowid)(r,v);s=s[e];l.preventDefault();let t=a.dragRow;a=l.clientY-m.getBoundingClientRect().y<m.clientHeight/2?"top":"bottom";i.prevDragToChild=!!(o&&h&&f&&p),i.prevDragRow=v,i.prevDragPos=a,r.eqRow(t,v)||p&&o&&d&&v[n]&&s&&!s.treeLoaded||!g&&o&&h&&(c?t[u]!==v[u]:x.level)?showDropTip(r,l,m,null,!1,a):(showDropTip(r,l,m,null,!0,a),r.dispatchEvent("row-dragover",{oldRow:t,targetRow:v,dragPos:a},l))}}else l.preventDefault()},handleCellDragMousedownEvent(e,t){var l=this,r=l,i=l,r=(e.stopPropagation(),r).dragConfig,{trigger:a,dragStartMethod:o}=l.computeRowDragOpts,s=t.row,n=e.currentTarget,n="cell"===a||"row"===a?n:null==(a=n.parentElement)?void 0:a.parentElement,a=n.parentElement,o=o||(r?r.dragStartMethod:null);i.isDragRowMove=!1,clearRowDropOrigin(l),o&&!o(t)?(a.draggable=!1,i.dragRow=null,i.dragCol=null,hideDropTip(l)):(i.dragRow=s,i.dragCol=null,a.draggable=!0,updateRowDropOrigin(l,s),updateRowDropTipContent(l,n),l.dispatchEvent("row-dragstart",t,e))},handleCellDragMouseupEvent(){clearDragStatus(this)},handleHeaderCellDragDragstartEvent(e){e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},handleColDragSwapColumn(){let e=this;e.handleUpdateColumn(),e.parseColumns(!1).then(()=>{e.updateCellAreas(),e.saveCustomStore("update:sort")})},handleColDragSwapEvent(h,u,e,t,c,g){let f=this;var l=f;let p=f;var r=f;let m=l.mouseConfig,{isPeerDrag:x,isCrossDrag:v,isSelfToChildDrag:w,isToChildDrag:C,dragEndMethod:i}=f.computeColumnDragOpts,R=r.collectColumn,b="right"===c?1:0;if(t&&e&&t!==e){let n=e,d=t;return Promise.resolve(!i||i({oldColumn:n,newColumn:d,dragPos:c,dragToChild:!!g,offsetIndex:b})).then(i=>{if(i){let e=-1,t=-1,l={},r=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(n.parentId&&d.parentId)if(x&&!v){if(n.parentId!==d.parentId)return}else{if(!v)return;if(l[d.id]&&(r=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!v)return}else if(d.parentId){if(!v)return;if(l[d.id]&&(r=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var a,o,s,i=_xeUtils.default.findTree(R,e=>e.id===n.id),i=(r&&v&&w?i&&({items:a,index:s}=i,(o=n.children||[]).forEach(e=>{e.parentId=n.parentId}),a.splice(s,1,...o),n.children=[]):i&&({items:a,index:s,parent:o}=i,a.splice(s,1),o||(e=s)),_xeUtils.default.findTree(R,e=>e.id===d.id));i&&({items:a,index:o,parent:s}=i,v&&C&&g?(n.parentId=d.id,d.children=(d.children||[]).concat([n])):(n.parentId=d.parentId,a.splice(o+b,0,n)),s||(t=o)),_xeUtils.default.eachTree(R,(e,t,l,r,i)=>{i||(e.renderSortNumber=t+1)}),p.isDragColMove=!0,m&&(f.clearSelected&&f.clearSelected(),f.clearCellAreas)&&(f.clearCellAreas(),f.clearCopyCellArea()),f.dispatchEvent("column-dragend",{oldColumn:n,newColumn:d,dragPos:c,dragToChild:!!g,offsetIndex:b,_index:{newIndex:t,oldIndex:e}},h),u&&f.handleColDragSwapColumn()}}).catch(()=>{})}return Promise.resolve()},handleHeaderCellDragDragendEvent(e){let t=this,l=t;var r=t,i=l.dragCol,{prevDragCol:a,prevDragPos:o,prevDragToChild:s}=r;t.handleColDragSwapEvent(e,!0,i,a,o,s),hideDropTip(t),clearColDropOrigin(t),r.prevDragToChild=!1,l.dragRow=null,l.dragCol=null,setTimeout(()=>{l.isDragColMove=!1,t.recalculate().then(()=>{loadScrollXData(t)})},500)},handleHeaderCellDragDragoverEvent(e){var t,l,r,i,a,o=this,s=o,n=o.dragCol,{isToChildDrag:d,isPeerDrag:h,isCrossDrag:u}=o.computeColumnDragOpts;n?(i=e.ctrlKey,a=(l=e.currentTarget).getAttribute("colid"),(a=o.getColumnById(a))&&(e.preventDefault(),t=e.clientX,r=t-l.getBoundingClientRect().x<l.clientWidth/2?"left":"right",s.prevDragToChild=!!(u&&d&&i),s.prevDragCol=a,s.prevDragPos=r,a.fixed||n&&n.id===a.id||!u&&(h?n.parentId!==a.parentId:a.parentId)?showDropTip(o,e,null,l,!1,r):(showDropTip(o,e,null,l,!0,r),o.dispatchEvent("column-dragover",{oldColumn:n,targetColumn:a,dragPos:r},e),(d=o.$refs.refElem)&&(i=o.$refs.refScrollXHandleElem,u=(s=o.$refs.tableBody)?s.$el:null,h=i||u)&&(l=d.getBoundingClientRect(),n=d.clientWidth,r=(a=o.$refs.leftContainer)?a.clientWidth:0,i=(s=o.$refs.rightContainer)?s.clientWidth:0,u=t-(l.x+r),d=l.x+n-i-t,0<u&&u<=28?(a=Math.floor(n/(14<u?240:120)),h.scrollLeft-=a*(28-u)):0<d&&d<=28&&(o=Math.floor(n/(14<d?240:120)),h.scrollLeft+=o*(28-d)))))):e.preventDefault()},handleHeaderCellDragMousedownEvent(e,t){var l=this,r=l,i=(e.stopPropagation(),l.computeColumnDragOpts),{trigger:i,dragStartMethod:a}=i,o=t.column,s=e.currentTarget,s="cell"===i?s:null==(i=s.parentElement)?void 0:i.parentElement;r.isDragColMove=!1,clearColDropOrigin(l),a&&!a(t)?(s.draggable=!1,r.dragRow=null,r.dragCol=null,hideDropTip(l)):(r.dragCol=o,r.dragRow=null,s.draggable=!0,updateColDropOrigin(l,o),updateColDropTipContent(l,s),l.dispatchEvent("column-dragstart",t,e))},handleHeaderCellDragMouseupEvent(){var e=this;clearColDropOrigin(this),hideDropTip(this),e.dragRow=null,e.dragCol=null,e.isDragColMove=!1},setPendingRow(e,t){let l=this;var r=l;let i=Object.assign({},r.pendingRowMaps);return e&&!_xeUtils.default.isArray(e)&&(e=[e]),t?e.forEach(e=>{var t=(0,_util.getRowid)(l,e);t&&!i[t]&&(i[t]=e)}):e.forEach(e=>{e=(0,_util.getRowid)(l,e);e&&i[e]&&delete i[e]}),r.pendingRowMaps=i,l.$nextTick()},togglePendingRow(e){let l=this;var t=l;let r=Object.assign({},t.pendingRowMaps);return(e=e&&!_xeUtils.default.isArray(e)?[e]:e).forEach(e=>{var t=(0,_util.getRowid)(l,e);t&&(r[t]?delete r[t]:r[t]=e)}),t.pendingRowMaps=r,l.$nextTick()},getPendingRecords(){var e=this.pendingRowMaps;let l=this.fullAllDataRowIdData,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},hasPendingByRow(e){var t=this.pendingRowMaps;return!!t[(0,_util.getRowid)(this,e)]},clearPendingRow(){return this.pendingRowMaps={},this.$nextTick()},sort(e,t){var l=this.sortOpts;let{multiple:r,remote:i,orders:o}=l;if(e&&_xeUtils.default.isString(e)&&(e=[{field:e,order:t}]),(e=_xeUtils.default.isArray(e)?e:[e]).length){let a;return r||clearAllSort(this),(r?e:[e[0]]).forEach((e,t)=>{let{field:l,order:r}=e,i=l;(i=_xeUtils.default.isString(l)?this.getColumnByField(l):i)&&(i.sortable||i.remoteSort)&&(a=a||i,-1===o.indexOf(r)&&(r=getNextSortOrder(this,i)),i.order!==r&&(i.order=r),i.sortTime=Date.now()+t)}),(!i||a&&a.remoteSort)&&this.handleTableData(!0),this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle()))}return this.$nextTick()},setSort(e,t){let o=this;let{multiple:l,remote:r,orders:s}=o.computeSortOpts;if((e=_xeUtils.default.isArray(e)?e:[e])&&e.length){l||(e=[e[0]],clearAllSort(o));let a=null;return e.forEach((e,t)=>{let{field:l,order:r}=e,i=l;_xeUtils.default.isString(l)&&(i=o.getColumnByField(l)),a=a||i,i&&i.sortable&&(-1===s.indexOf(r)&&(r=getNextSortOrder(o,i)),i.order!==r&&(i.order=r),i.sortTime=Date.now()+t)}),t&&(r||o.handleTableData(!0),o.handleColumnSortEvent(new Event("click"),a)),o.$nextTick().then(()=>(o.updateCellAreas(),o.updateStyle()))}return o.$nextTick()},clearSort(e){var t=this.sortOpts;return e?(e=(0,_util.handleFieldOrColumn)(this,e))&&(e.order=null):clearAllSort(this),t.remote||this.handleTableData(!0),this.$nextTick().then(this.updateStyle)},getSortColumn(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getSortColumn","getSortColumns"]),_xeUtils.default.find(this.tableFullColumn,e=>(e.sortable||e.remoteSort)&&e.order)},isSort(e){return e?(e=(0,_util.handleFieldOrColumn)(this,e))&&e.sortable&&!!e.order:0<this.getSortColumns().length},getSortColumns(){var{multiple:e,chronological:t}=this.sortOpts;let r=[];return this.tableFullColumn.forEach(e=>{var{field:t,order:l}=e;(e.sortable||e.remoteSort)&&l&&r.push({column:e,field:t,property:t,order:l,sortTime:e.sortTime})}),e&&t&&1<r.length?_xeUtils.default.orderBy(r,"sortTime"):r},closeFilter(){var e=this.filterStore,{column:t,visible:l}=e;return Object.assign(e,{isAllSelected:!1,isIndeterminate:!1,options:[],visible:!1}),l&&this.emitEvent("filter-visible",{column:t,field:t.field,property:t.field,filterList:this.getCheckedFilters(),visible:!1},null),this.$nextTick()},isActiveFilterByColumn(e){e=(0,_util.handleFieldOrColumn)(this,e);return e?e.filters&&e.filters.some(e=>e.checked):0<this.getCheckedFilters().length},isFilter(e){return this.isActiveFilterByColumn(e)},isRowExpandLoaded(e){var t=this.fullAllDataRowIdData,t=t[(0,_util.getRowid)(this,e)];return t&&!!t.expandLoaded},clearRowExpandLoaded(e){var t=this,l=t,r=t,i=Object.assign({},l.rowExpandLazyLoadedMaps),r=r.fullAllDataRowIdData,a=t.computeExpandOpts.lazy,e=(0,_util.getRowid)(t,e),r=r[e];return a&&r&&(r.expandLoaded=!1,delete i[e]),l.rowExpandLazyLoadedMaps=i,t.$nextTick()},reloadRowExpand(e){var{expandOpts:t,rowExpandLazyLoadedMaps:l}=this,t=t.lazy,r=(0,_util.getRowid)(this,e);return t&&!l[r]&&this.clearRowExpandLoaded(e).then(()=>this.handleAsyncRowExpand(e)),this.$nextTick()},reloadExpandContent(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["reloadExpandContent","reloadRowExpand"]),this.reloadRowExpand(e)},triggerRowExpandEvent(e,t){var{expandOpts:l,rowExpandLazyLoadedMaps:r,expandColumn:i}=this,t=t.row,{lazy:l,trigger:a}=l;"manual"===a||(e.stopPropagation(),a=(0,_util.getRowid)(this,t),l&&r[a])||(l=!this.isRowExpandByRow(t),r=this.getColumnIndex(i),a=this.getVMColumnIndex(i),this.setRowExpand(t,l),this.emitEvent("toggle-row-expand",{expanded:l,column:i,columnIndex:r,$columnIndex:a,row:t,rowIndex:this.getRowIndex(t),$rowIndex:this.getVMRowIndex(t)},e))},toggleRowExpand(e){return this.setRowExpand(e,!this.isRowExpandByRow(e))},handleDefaultRowExpand(){let{expandOpts:e,fullDataRowIdData:l}=this;var{expandAll:t,expandRowKeys:r}=e;if(t)this.setAllRowExpand(!0);else if(r){let t=[];r.forEach(e=>{l[e]&&t.push(l[e].row)}),this.setRowExpand(t,!0)}},setAllRowExpand(e){var{treeConfig:t,treeOpts:l,tableFullData:r,tableFullTreeData:i}=this,l=l.children||l.childrenField;let a=[];return t?_xeUtils.default.eachTree(i,e=>{a.push(e)},{children:l}):a=r,this.setRowExpand(a,e)},handleAsyncRowExpand(o){let s=this,n=s,d=s;return new Promise(r=>{var e=this.expandOpts,e=e.loadMethod;if(e){var i=d.fullAllDataRowIdData,a=Object.assign({},n.rowExpandLazyLoadedMaps);let t=(0,_util.getRowid)(s,o),l=i[t];a[t]=o,n.rowExpandLazyLoadedMaps=a,e({$table:s,row:o,rowIndex:s.getRowIndex(o),$rowIndex:s.getVMRowIndex(o)}).then(()=>{var e=Object.assign({},n.rowExpandedMaps);l&&(l.expandLoaded=!0),e[t]=o,n.rowExpandedMaps=e}).catch(()=>{l&&(l.expandLoaded=!1)}).finally(()=>{var e=Object.assign({},n.rowExpandLazyLoadedMaps);e[t]&&delete e[t],n.rowExpandLazyLoadedMaps=e,s.$nextTick().then(()=>s.recalculate()).then(()=>r())})}else r()})},setRowExpand(e,t){let{rowExpandedMaps:l,fullAllDataRowIdData:r,rowExpandLazyLoadedMaps:i,expandOpts:a,expandColumn:o}=this,s=Object.assign({},l),{reserve:n,lazy:d,accordion:h,toggleMethod:u}=a,c=[],g=this.getColumnIndex(o),f=this.getVMColumnIndex(o);return e&&(_xeUtils.default.isArray(e)||(e=[e]),h&&(s={},e=e.slice(e.length-1,e.length)),e=u?e.filter(e=>u({expanded:t,column:o,columnIndex:g,$columnIndex:f,row:e,rowIndex:this.getRowIndex(e),$rowIndex:this.getVMRowIndex(e)})):e,t?e.forEach(e=>{var t,l=(0,_util.getRowid)(this,e);s[l]||(t=r[l],d&&!t.expandLoaded&&!i[l]?c.push(this.handleAsyncRowExpand(e)):s[l]=e)}):e.forEach(e=>{e=(0,_util.getRowid)(this,e);s[e]&&delete s[e]}),n)&&e.forEach(e=>this.handleRowExpandReserve(e,t)),this.rowExpandedMaps=s,Promise.all(c).then(this.recalculate)},isRowExpandByRow(e){var t=this.rowExpandedMaps;return!!t[(0,_util.getRowid)(this,e)]},isExpandByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isExpandByRow","isRowExpandByRow"]),this.isRowExpandByRow(e)},clearRowExpand(){var{expandOpts:e,tableFullData:t}=this,e=e.reserve;let l=this.getRowExpandRecords();return this.rowExpandedMaps={},e&&t.forEach(e=>this.handleRowExpandReserve(e,!1)),this.$nextTick().then(()=>{l.length&&this.recalculate()})},clearRowExpandReserve(){return this.rowExpandedReserveRowMap={},this.$nextTick()},handleRowExpandReserve(e,t){var{rowExpandedReserveRowMap:l,expandOpts:r}=this;r.reserve&&(r=(0,_util.getRowid)(this,e),t?l[r]=e:l[r]&&delete l[r])},getRowExpandRecords(){let t=[];return _xeUtils.default.each(this.rowExpandedMaps,e=>{e&&t.push(e)}),t},getTreeExpandRecords(){let t=[];return _xeUtils.default.each(this.treeExpandedMaps,e=>{e&&t.push(e)}),t},getTreeStatus(){return this.treeConfig?{config:this.treeOpts,rowExpandeds:this.getTreeExpandRecords()}:null},isTreeExpandLoaded(e){var t=this.fullAllDataRowIdData,t=t[(0,_util.getRowid)(this,e)];return t&&!!t.treeLoaded},clearTreeExpandLoaded(e){let l=this;var t=l,r=l;let i=Object.assign({},t.treeExpandedMaps),a=r.fullAllDataRowIdData;r=l.computeTreeOpts.transform;return e&&(e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{var e=(0,_util.getRowid)(l,e),t=a[e];t&&(t.treeLoaded=!1,i[e])&&delete i[e]}),t.treeExpandedMaps=i,r?(handleVirtualTreeToList(l),l.handleTableData()):l.$nextTick()},reloadTreeExpand(e){let t=this;var{treeOpts:l,treeExpandLazyLoadedMaps:r}=this;let{transform:i,lazy:a}=l;var l=l.hasChild||l.hasChildField,o=(0,_util.getRowid)(this,e);return a&&e[l]&&!r[o]?this.clearTreeExpandLoaded(e).then(()=>this.handleAsyncTreeExpandChilds(e)).then(()=>{if(i)return handleVirtualTreeToList(t),this.handleTableData()}).then(()=>this.recalculate()):this.$nextTick()},reloadTreeChilds(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["reloadTreeChilds","reloadTreeExpand"]),this.reloadTreeExpand(e)},triggerTreeExpandEvent(e,t){var{treeOpts:l,treeExpandLazyLoadedMaps:r}=this,{row:t,column:i}=t,{lazy:l,trigger:a}=l;"manual"===a||(e.stopPropagation(),a=(0,_util.getRowid)(this,t),l&&r[a])||(l=!this.isTreeExpandByRow(t),r=this.getColumnIndex(i),a=this.getVMColumnIndex(i),this.setTreeExpand(t,l),this.emitEvent("toggle-tree-expand",{expanded:l,column:i,columnIndex:r,$columnIndex:a,row:t},e))},toggleTreeExpand(e){return this.setTreeExpand(e,!this.isTreeExpandByRow(e))},handleDefaultTreeExpand(){let{treeConfig:e,treeOpts:t,tableFullData:a}=this;if(e){var{expandAll:l,expandRowKeys:o}=t;let i=t.children||t.childrenField;if(l)this.setAllTreeExpand(!0);else if(o){let l=[],r=(0,_util.getRowkey)(this);o.forEach(t=>{var e=_xeUtils.default.findTree(a,e=>t===_xeUtils.default.get(e,r),{children:i});e&&l.push(e.item)}),this.setTreeExpand(l,!0)}}},handleAsyncTreeExpandChilds(a){let o=this;var{treeOpts:e,checkboxOpts:t}=this;let{transform:s,loadMethod:n}=e,d=t.checkStrictly;return new Promise(i=>{if(n){let{treeExpandLazyLoadedMaps:t,fullAllDataRowIdData:e}=this,l=(0,_util.getRowid)(o,a),r=e[l];t[l]=a,Promise.resolve(n({$table:o,row:a})).then(e=>{if(r&&(r.treeLoaded=!0),t[l]&&delete t[l],e=_xeUtils.default.isArray(e)?e:[])return this.loadTreeChildren(a,e).then(e=>{var t=this.treeExpandedMaps;return e.length&&!t[l]&&(t[l]=a),!d&&this.isCheckedByCheckboxRow(a)&&this.handleCheckedCheckboxRow(e,!0),this.$nextTick().then(()=>{if(s)return this.handleTableData(),this.updateTreeDataIndex(),this.$nextTick()})})}).catch(()=>{var e=this.treeExpandLazyLoadedMaps;r&&(r.treeLoaded=!1),e[l]&&delete e[l]}).finally(()=>{this.$nextTick().then(()=>this.recalculate()).then(()=>i())})}else i()})},setAllTreeExpand(e){var{tableFullData:t,treeOpts:l}=this;let r=l.lazy,i=l.children||l.childrenField,a=[];return _xeUtils.default.eachTree(t,e=>{var t=e[i];(r||t&&t.length)&&a.push(e)},{children:i}),this.setTreeExpand(a,e)},handleBaseTreeExpand(e,t){let{fullAllDataRowIdData:r,tableFullData:l,treeExpandedMaps:i,treeOpts:a,treeExpandLazyLoadedMaps:o,treeNodeColumn:s}=this,{reserve:n,lazy:d,accordion:h,toggleMethod:u}=a,c=Object.assign({},i),g=a.children||a.childrenField,f=a.hasChild||a.hasChildField,p=[],m=this.getColumnIndex(s),x=this.getVMColumnIndex(s),v=u?e.filter(e=>u({expanded:t,column:s,columnIndex:m,$columnIndex:x,row:e})):e;return h&&(v=v.length?[v[v.length-1]]:[],e=_xeUtils.default.findTree(l,e=>e===v[0],{children:g}))&&e.items.forEach(e=>{e=(0,_util.getRowid)(this,e);c[e]&&delete c[e]}),t?v.forEach(e=>{var t,l=(0,_util.getRowid)(this,e);c[l]||(t=r[l])&&(d&&e[f]&&!t.treeLoaded&&!o[l]?p.push(this.handleAsyncTreeExpandChilds(e)):e[g]&&e[g].length&&(c[l]=e))}):v.forEach(e=>{e=(0,_util.getRowid)(this,e);c[e]&&delete c[e]}),n&&v.forEach(e=>this.handleTreeExpandReserve(e,t)),this.treeExpandedMaps=c,Promise.all(p).then(()=>this.recalculate())},handleVirtualTreeExpand(e,t){let l=this;return this.handleBaseTreeExpand(e,t).then(()=>{handleVirtualTreeToList(l),this.handleTableData(),this.updateTreeDataIndex()}).then(()=>this.recalculate()).then(()=>{setTimeout(()=>{this.updateCellAreas()},30)})},setTreeExpand(e,t){var l=this.treeOpts,l=l.transform;return e&&(e=_xeUtils.default.isArray(e)?e:[e]).length?l?this.handleVirtualTreeExpand(e,t):this.handleBaseTreeExpand(e,t):this.$nextTick()},isTreeExpandByRow(e){var t=this.treeExpandedMaps;return!!t[(0,_util.getRowid)(this,e)]},clearTreeExpand(){let e=this;var{treeOpts:t,tableFullData:l}=this;let{transform:r,reserve:i}=t;t=t.children||t.childrenField;let a=this.getTreeExpandRecords();return this.treeExpandedMaps={},i&&_xeUtils.default.eachTree(l,e=>this.handleTreeExpandReserve(e,!1),{children:t}),this.handleTableData().then(()=>{if(r)return handleVirtualTreeToList(e),this.handleTableData()}).then(()=>{a.length&&this.recalculate()})},clearTreeExpandReserve(){return this.treeExpandedReserveRowMap={},this.$nextTick()},handleTreeExpandReserve(e,t){var{treeExpandedReserveRowMap:l,treeOpts:r}=this;r.reserve&&(r=(0,_util.getRowid)(this,e),t?l[r]=e:l[r]&&delete l[r])},getScroll(){var{$refs:e,scrollXLoad:t,scrollYLoad:l}=this,e=e.tableBody.$el;return{virtualX:t,virtualY:l,scrollTop:e.scrollTop,scrollLeft:e.scrollLeft}},handleScrollEvent(e,t,l,r,i,a){var o=this,s=o,n=o,d=o.highlightHoverRow,{lastScrollLeft:h,lastScrollTop:u}=n,c=o.$refs.tableBody,c=c?c.$el:null,g=o.computeRowOpts,f=o.$refs.validTip,p=o.$refs.tooltip,m=c?c.clientHeight:0,x=c?c.clientWidth:0,v=c?c.scrollHeight:0,c=c?c.scrollWidth:0;let w=!1,C=!1,R=!1,b=!1,_="",T=!1,E=!1,D=!1,S=!1;l&&(y=o.computeScrollXThreshold,(R=i<=0)||(b=c<=i+x),h<i?(_="right",c-y<=i+x&&(S=!0)):(_="left",i<=y&&(D=!0)),o.checkScrolling(),n.lastScrollLeft=i),t&&(h=o.computeScrollYThreshold,(w=r<=0)||(C=v<=r+m),u<r?(_="bottom",v-h<=r+m&&(E=!0)):(_="top",r<=h&&(T=!0)),n.lastScrollTop=r),s.isDragColMove=!1,s.isDragRowMove=!1,s.lastScrollTime=Date.now();var y=Object.assign({scrollTop:r,scrollLeft:i,bodyHeight:m,bodyWidth:x,scrollHeight:v,scrollWidth:c,isX:l,isY:t,isTop:w,isBottom:C,isLeft:R,isRight:b,direction:_},a);checkLastSyncScroll(o,l,t),(g.isHover||d)&&o.clearHoverRow(),f&&f.visible&&f.close(),p&&p.visible&&p.close(),(E||T||S||D)&&o.dispatchEvent("scroll-boundary",y,e),o.dispatchEvent("scroll",y,e)},lazyScrollXData(){let e=this,t=e;var{lxTimeout:l,lxRunTime:r,scrollXStore:i}=t,i=i.visibleSize,i=Math.min(80,Math.floor(3*i));l&&clearTimeout(l),(!r||r+i<Date.now())&&(t.lxRunTime=Date.now(),loadScrollXData(e)),t.lxTimeout=setTimeout(()=>{t.lxTimeout=void 0,t.lxRunTime=void 0,loadScrollXData(e)},i)},lazyScrollYData(){let e=this,t=e;var{lyTimeout:l,lyRunTime:r,scrollYStore:i}=t,i=i.visibleSize,i=Math.min(80,Math.floor(i));l&&clearTimeout(l),(!r||r+i<Date.now())&&(t.lyRunTime=Date.now(),loadScrollYData(e)),t.lyTimeout=setTimeout(()=>{t.lyTimeout=void 0,t.lyRunTime=void 0,loadScrollYData(e)},i)},triggerScrollXEvent(){this.computeSXOpts.immediate?loadScrollXData(this):this.lazyScrollXData()},triggerScrollYEvent(){this.computeSYOpts.immediate?loadScrollYData(this):this.lazyScrollYData()},scrollXEvent(e){var t=this,l=t,{intoRunScroll:r,inFooterScroll:i,inBodyScroll:a,lastScrollTop:o}=l;if(!r){if(i)return;if(a)return}var r=t.$refs.tableHeader,i=t.$refs.tableBody,a=t.$refs.tableFooter,i=i.$el,r=r?r.$el:null,a=a?a.$el:null,s=t.$refs.refScrollYHandleElem,n=e.currentTarget.scrollLeft,s=s||i;let d=0;s=(d=s?s.scrollTop:d)!==o;l.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,n),(0,_dom.setScrollLeft)(r,n),(0,_dom.setScrollLeft)(a,n),t.triggerScrollXEvent(e),t.handleScrollEvent(e,s,!0,d,n,{type:"table",fixed:""})},scrollYEvent(e){var t=this,l=t,{intoRunScroll:r,inFooterScroll:i,inBodyScroll:a,lastScrollLeft:o}=l;if(!r){if(i)return;if(a)return}var r=t.$refs.tableBody,i=t.$refs.leftBody,a=t.$refs.rightBody,r=r.$el,i=i?i.$el:null,a=a?a.$el:null,s=t.$refs.refScrollXHandleElem,n=e.currentTarget.scrollTop,s=s||r;let d=0;s=(d=s?s.scrollLeft:d)!==o;l.inVirtualScroll=!0,(0,_dom.setScrollTop)(r,n),(0,_dom.setScrollTop)(i,n),(0,_dom.setScrollTop)(a,n),t.triggerScrollYEvent(e),t.handleScrollEvent(e,!0,s,n,d,{type:"table",fixed:""})},handleTableColumn(){let{scrollXLoad:e,visibleColumn:t,scrollXStore:l,fullColumnIdData:r}=this;var i=e?t.slice(l.startIndex,l.endIndex):t.slice(0);i.forEach((e,t)=>{e=e.id,e=r[e];e&&(e.$index=t)}),this.tableColumn=i},handleUpdateColumn(){var e=this,t=_xeUtils.default.orderBy(e.collectColumn,"renderSortNumber"),t=(e.collectColumn=t,getColumnList(t));e.tableFullColumn=t,cacheColumnMap(this)},updateScrollXData(){let e=this;let t=e.showOverflow;return e.handleTableColumn(),calcCellHeight(e),e.$nextTick().then(()=>{calcCellHeight(e),e.handleTableColumn(),e.updateScrollXSpace(),t||e.updateScrollYSpace()})},updateScrollXSpace(){let{$refs:e,isGroup:t,elemStore:r,visibleColumn:l,scrollXStore:i,scrollXLoad:a,tableWidth:o,scrollbarWidth:s}=this;var{tableHeader:n,tableBody:d,tableFooter:h}=e,d=d?d.$el:null;if(d){var n=n?n.$el:null,h=h?h.$el:null,n=n?n.querySelector(".vxe-table--header"):null,d=d.querySelector(".vxe-table--body"),h=h?h.querySelector(".vxe-table--footer"):null,u=l.slice(0,i.startIndex).reduce((e,t)=>e+t.renderWidth,0);let e="";a&&(e=u+"px"),n&&(n.style.marginLeft=t?"":e),d.style.marginLeft=e,h&&(h.style.marginLeft=e);["main"].forEach(l=>{["header","body","footer"].forEach(e=>{var t=r[l+`-${e}-xSpace`];t&&(t.style.width=a?o+("header"===e?s:0)+"px":"")})});u=this.$refs.refScrollXSpaceElem;u&&(u.style.width=o+s+"px"),this.$nextTick(this.updateStyle)}},updateScrollYData(){let e=this;return e.handleTableData(),calcCellHeight(e),e.$nextTick().then(()=>{calcCellHeight(e),e.handleTableData(),e.updateScrollYSpace()})},updateScrollYSpace(){let{showOverflow:e,elemStore:l,scrollYStore:t,scrollYLoad:r,afterFullData:i,fullAllDataRowIdData:a}=this;var{startIndex:o,rowHeight:s}=t;let n=0,d=0;let h="",u="";if(r){if(e)n=i.length*s,d=Math.max(0,o*s);else{for(let e=0;e<i.length;e++){var c=i[e],c=a[(0,_util.getRowid)(this,c)];c&&(n+=c.height||s)}for(let e=0;e<o;e++){var g=i[e],g=a[(0,_util.getRowid)(this,g)];g&&(d+=g.height||s)}}h=d+"px",u=n+"px"}["main","left","right"].forEach(t=>{var e=l[t+"-body-table"];e&&(e.style.marginTop=h),["header","body","footer"].forEach(e=>{e=l[t+`-${e}-ySpace`];e&&(e.style.height=u)})});var f=this.$refs.refScrollYSpaceElem;f&&(f.style.height=u),this.$nextTick(this.updateStyle)},updateScrollYStatus(){return updateScrollYStatus(this)},scrollTo(e,t){let l=this,r=l;var i,a=this.$refs,{tableBody:a,tableHeader:o,leftBody:s,rightBody:n,tableFooter:d}=a,a=a?a.$el:null,s=s?s.$el:null,n=n?n.$el:null,o=o?o.$el:null,d=d?d.$el:null;return r.intoRunScroll=!0,_xeUtils.default.isNumber(e)&&((i=l.$refs.refScrollXHandleElem)?(0,_dom.setScrollLeft)(i,e):((0,_dom.setScrollLeft)(a,e),(0,_dom.setScrollLeft)(o,e),(0,_dom.setScrollLeft)(d,e))),_xeUtils.default.isNumber(t)&&((i=l.$refs.refScrollYHandleElem)?(0,_dom.setScrollTop)(i,t):((0,_dom.setScrollTop)(a,t),(0,_dom.setScrollTop)(s,t),(0,_dom.setScrollTop)(n,t))),this.scrollXLoad||this.scrollYLoad?new Promise(e=>{setTimeout(()=>{l.$nextTick(()=>{r.intoRunScroll=!1,e()})})}):this.$nextTick()},scrollToRow(e,t){var l=[];return e&&(this.treeConfig?l.push(this.scrollToTreeRow(e)):l.push((0,_util.rowToVisible)(this,e))),t&&l.push(handleScrollToRowColumn(this,t,e)),Promise.all(l)},scrollToColumn(e){return handleScrollToRowColumn(this,e)},scrollToTreeRow(t){var{tableFullData:e,treeConfig:r,treeOpts:l}=this,l=l.children||l.childrenField;let i=[];if(r){r=_xeUtils.default.findTree(e,e=>e===t,{children:l});if(r){let l=r.nodes;l.forEach((e,t)=>{t<l.length-1&&!this.isTreeExpandByRow(e)&&i.push(this.setTreeExpand(e,!0))})}}return Promise.all(i).then(()=>(0,_util.rowToVisible)(this,t))},clearScroll(){var e=this,{scrollXStore:t,scrollYStore:l}=e,r=e.$refs.tableBody,i=e.$refs.tableHeader,a=e.$refs.tableFooter,o=e.$refs.leftBody,s=e.$refs.rightBody;let n=o?o.$el:null,d=r?r.$el:null,h=s?s.$el:null,u=i?i.$el:null,c=a?a.$el:null;o=e.$refs.refScrollXHandleElem,o?(0,_dom.setScrollLeft)(o,0):((0,_dom.setScrollLeft)(d,0),(0,_dom.setScrollLeft)(u,0),(0,_dom.setScrollLeft)(c,0)),r=e.$refs.refScrollYHandleElem;return r?(0,_dom.setScrollTop)(r,0):((0,_dom.setScrollTop)(d,0),(0,_dom.setScrollTop)(n,0),(0,_dom.setScrollTop)(h,0)),t.startIndex=0,t.endIndex=t.visibleSize,l.startIndex=0,l.endIndex=l.visibleSize,e.$nextTick().then(()=>{(0,_dom.setScrollLeft)(d,0),(0,_dom.setScrollLeft)(u,0),(0,_dom.setScrollLeft)(c,0),(0,_dom.setScrollTop)(d,0),(0,_dom.setScrollTop)(n,0),(0,_dom.setScrollTop)(h,0)})},updateFooter(){var{showFooter:e,visibleColumn:t,footerData:l,footerMethod:r}=this;let i=[];return e&&l&&l.length?i=l.slice(0):e&&r&&(i=t.length?r({columns:t,data:this.afterFullData,$table:this,$grid:this.$xegrid}):[]),this.footerTableData=i,this.$nextTick()},updateStatus(a,o){let s=!_xeUtils.default.isUndefined(o);return this.$nextTick().then(()=>{let{$refs:e,editRules:t,validStore:i}=this;var l=e.tableBody;if(a&&l&&t){let{row:l,column:r}=a;if(this.hasCellRules&&this.hasCellRules("change",l,r)){let t=this.getCellElement(l,r);if(t)return this.validCellRules("change",l,r,o).then(()=>{s&&i.visible&&(0,_util.setCellValue)(l,r,o),this.clearValidate(l,r)}).catch(({rule:e})=>{s&&(0,_util.setCellValue)(l,r,o),this.showValidTooltip({rule:e,row:l,column:r,cell:t})})}}})},handleDefaultMergeCells(){this.setMergeCells(this.mergeCells)},setMergeCells(e){return this.spanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-cells","span-method"]),setMerges(this,e,this.mergeList,this.afterFullData),this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle()))},removeMergeCells(e){this.spanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-cells","span-method"]);let t=removeMerges(this,e,this.mergeList,this.afterFullData);return this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle(),t))},getMergeCells(){return this.mergeList.slice(0)},clearMergeCells(){return this.mergeList=[],this.$nextTick().then(()=>this.updateStyle())},handleDefaultMergeFooterItems(){this.setMergeFooterItems(this.mergeFooterItems)},setMergeFooterItems(e){return this.footerSpanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-footer-items","footer-span-method"]),setMerges(this,e,this.mergeFooterList,null),this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle()))},removeMergeFooterItems(e){this.footerSpanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-footer-items","footer-span-method"]);let t=removeMerges(this,e,this.mergeFooterList,null);return this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle(),t))},getMergeFooterItems(){return this.mergeFooterList.slice(0)},clearMergeFooterItems(){return this.mergeFooterList=[],this.$nextTick().then(()=>this.updateStyle())},updateZindex(){this.zIndex?this.tZindex=this.zIndex:this.tZindex<(0,_utils.getLastZIndex)()&&(this.tZindex=(0,_utils.nextZIndex)())},updateCellAreas(){return this.mouseConfig&&this.mouseOpts.area&&this.handleRecalculateCellAreas?this.handleRecalculateCellAreas():this.$nextTick()},dispatchEvent(e,t,l){this.$emit(e,createEvent(l,{$table:this,$grid:this.$xegrid},t))},emitEvent(e,t,l){this.$emit(e,Object.assign({$table:this,$grid:this.$xegrid,$event:l},t))},focus(){return this.isActivated=!0,this.$nextTick()},blur(){return this.isActivated=!1,this.$nextTick()},connect(e){return e&&e.syncUpdate?(e.syncUpdate({collectColumn:this.collectColumn,$table:this}),this.$toolbar=e):(0,_log.errLog)("vxe.error.barUnableLink"),this.$nextTick()},getCell(e,t){return this.getCellElement(e,t)},findRowIndexOf(e,t){return t?_xeUtils.default.findIndexOf(e,e=>this.eqRow(e,t)):-1},eqRow(e,t){return!(!e||!t||e!==t&&(0,_util.getRowid)(this,e)!==(0,_util.getRowid)(this,t))},getSetupOptions(){return getConfig()}},funcs="setFilter,openFilter,clearFilter,saveFilterPanel,resetFilterPanel,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox".split(",");funcs.forEach(t=>{Methods[t]=function(...e){return"development"!==process.env.NODE_ENV||this["_"+t]||("openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableExportModule"]):"fullValidate,validate".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableValidatorModule"]):"setFilter,openFilter,clearFilter,getCheckedFilters".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableFilterModule"]):"insert,insertAt,insertNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableEditModule"]):"openCustom".split(",").includes(t)&&(0,_log.errLog)("vxe.error.reqModule",["VxeTableCustomModule"])),this["_"+t]?this["_"+t](...e):null}});var _default=exports.default=Methods;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_ui=require("../../ui"),_cell=_interopRequireDefault(require("./cell")),_util=require("./util"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getI18n,renderer,formats,interceptor,createEvent}=_ui.VxeUI,customStorageKey="VXE_CUSTOM_STORE",getColumnList=e=>{let t=[];return e.forEach(e=>{t.push(...e.children&&e.children.length?getColumnList(e.children):[e])}),t};function eqCellValue(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))}function getNextSortOrder(e,t){e=e.sortOpts.orders,t=t.order||null,t=e.indexOf(t)+1;return e[t<e.length?t:0]}let getCustomStorageMap=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)||{}},setCustomStorageMap=(e,t)=>{var l=getConfig().version,r=getCustomStorageMap();r[e]=t||void 0,r._v=l,localStorage.setItem(customStorageKey,_xeUtils.default.toJSONString(r))},getRecoverRowMaps=(e,t)=>{let l=e.fullAllDataRowIdData,r={};return _xeUtils.default.each(t,(e,t)=>{l[t]&&(r[t]=e)}),r};function handleReserveRow(e,t){let l=e.fullDataRowIdData,r=[];return _xeUtils.default.each(t,(e,t)=>{l[t]&&-1===r.indexOf(l[t].row)&&r.push(l[t].row)}),r}function handleVirtualXVisible(e){var a=e.visibleColumn,e=e.$refs.tableBody,e=e?e.$el:null;if(e){var{scrollLeft:o,clientWidth:e}=e,s=o+e;let l=-1,r=0,i=0;for(let e=0,t=a.length;e<t&&(r+=a[e].renderWidth,!(0<=(l=-1===l&&o<r?e:l)&&(i++,r>s)));e++);return{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(6,i)}}return{toVisibleIndex:0,visibleSize:6}}function cacheColumnMap(e){var t=e,l=e,r=e,{tableFullColumn:i,collectColumn:a}=r;let h=r.fullColumnIdData={},u=r.fullColumnFieldData={};var r=e.computeMouseOpts,o=e.computeColumnOpts;let{isCrossDrag:c,isSelfToChildDrag:g}=e.computeColumnDragOpts,f=e.computeCustomOpts.storage;var e=e.computeRowOpts,s=a.some(_utils.hasChildrenList);let p=!!t.showOverflow,m,x,v,w,C,R,n=(e,t,l,r,i)=>{var{id:a,field:o,fixed:s,type:n,treeNode:d}=e,t={$index:-1,_index:-1,column:e,colid:a,index:t,items:l,parent:i||null,width:0};o?(u[o]&&(0,_log.errLog)("vxe.error.colRepet",["field",o]),u[o]=t):(f||c||g)&&(0,_log.errLog)("vxe.error.reqProp",[`${e.getTitle()||n||""} -> column.field`]),!R&&s&&(R=s),C||"html"!==n||(C=e),d?("development"===process.env.NODE_ENV&&x&&(0,_log.warnLog)("vxe.error.colRepet",["tree-node",d]),x=x||e):"expand"===n&&("development"===process.env.NODE_ENV&&m&&(0,_log.warnLog)("vxe.error.colRepet",["type",n]),m=m||e),"development"===process.env.NODE_ENV&&("checkbox"===n?(v&&(0,_log.warnLog)("vxe.error.colRepet",["type",n]),v=v||e):"radio"===n&&(w&&(0,_log.warnLog)("vxe.error.colRepet",["type",n]),w=w||e)),p&&!1===e.showOverflow&&(p=!1),h[a]&&(0,_log.errLog)("vxe.error.colRepet",["colId",a]),h[a]=t};s?_xeUtils.default.eachTree(a,(e,t,l,r,i,a)=>{e.level=a.length,n(e,t,l,0,i)}):i.forEach(n),"development"===process.env.NODE_ENV&&m&&r.area&&(0,_log.errLog)("vxe.error.errConflicts",["mouse-config.area","column.type=expand"]),"developmeznt"===process.env.NODE_ENV&&C&&(o.useKey||(0,_log.errLog)("vxe.error.reqProp",["column-config.useKey & column.type=html"]),e.useKey||(0,_log.errLog)("vxe.error.reqProp",["row-config.useKey & column.type=html"])),l.isGroup=s,l.treeNodeColumn=x,l.expandColumn=m,l.isAllOverflow=p}let updateScrollYStatus=(e,t)=>{var l=e,r=e.treeConfig,i=e.computeSYOpts,a=e.computeTreeOpts.transform,t=t||e.tableFullData,e=(a||!r)&&!!i.enabled&&-1<i.gt&&(0===i.gt||i.gt<t.length);return l.scrollYLoad=e};function handleVirtualTreeToList(d){var e=d,t=d.treeConfig;let h=d.treeExpandedMaps,u=e.fullAllDataRowIdData;var l=d.computeTreeOpts,r=l.children||l.childrenField;if(t&&l.transform){let s=[],n={};return _xeUtils.default.eachTree(e.afterTreeFullData,(e,t,l,r,i)=>{var a=(0,_util.getRowid)(d,e),o=(0,_util.getRowid)(d,i);(!i||n[o]&&h[o])&&((i=u[a])&&(i._index=s.length),n[a]=1,s.push(e))},{children:r}),e.afterFullData=s,updateScrollYStatus(d,s),s}return e.afterFullData}function computeRowHeight(e){var t=e.$refs.tableHeader,l=e.$refs.tableBody,l=l?l.$el:null,r=e.computeSize,e=e.computeRowHeightMaps;let i=0;if(l){t=t?t.$el:null;let e;(e=!(e=l.querySelector("tr"))&&t?t.querySelector("tr"):e)&&(i=e.clientHeight)}return i=i||e[r||"default"],Math.max(18,i)}function handleVirtualYVisible(a){var e=a.showOverflow,{scrollYStore:t,afterFullData:o,fullAllDataRowIdData:s}=a,n=a.$refs.tableBody,n=n?n.$el:null,d=t.rowHeight;if(n){var{scrollTop:h,clientHeight:t}=n,u=h+t;let l=-1,r=0,i=0;if(e)l=Math.floor(h/d),i=Math.ceil(t/d)+1;else for(let e=0,t=o.length;e<t;e++){var c=o[e],c=s[(0,_util.getRowid)(a,c)];if(!c)break;if(r+=c.height||d,0<=(l=-1===l&&h<r?e:l)&&(i++,r>u))break}return{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(8,i)}}return{toVisibleIndex:0,visibleSize:8}}function calculateMergerOffsetIndex(l,r,i){for(let e=0,t=l.length;e<t;e++){var a=l[e],{startIndex:o,endIndex:s}=r,n=a[i],a=n+a[i+"span"];n<o&&o<a&&(r.startIndex=n),n<s&&s<a&&(r.endIndex=a),r.startIndex===o&&r.endIndex===s||(e=-1)}}function setMerges(t,l,s,n){if(l){let{treeConfig:e,visibleColumn:o}=t;_xeUtils.default.isArray(l)||(l=[l]),e&&l.length&&(0,_log.errLog)("vxe.error.noTree",["merge-cells | merge-footer-items"]),l.forEach(e=>{let{row:t,col:l,rowspan:r,colspan:i}=e;var a;n&&_xeUtils.default.isNumber(t)&&(t=n[t]),_xeUtils.default.isNumber(l)&&(l=o[l]),(n?t:_xeUtils.default.isNumber(t))&&l&&(r||i)&&(r=_xeUtils.default.toNumber(r)||1,i=_xeUtils.default.toNumber(i)||1,1<r||1<i)&&(e=_xeUtils.default.findIndexOf(s,e=>e._row===t&&e._col===l),(e=s[e])?(e.rowspan=r,e.colspan=i,e._rowspan=r,e._colspan=i):(e=n?n.indexOf(t):t,a=o.indexOf(l),s.push({row:e,col:a,rowspan:r,colspan:i,_row:t,_col:l,_rowspan:r,_colspan:i})))})}}function removeMerges(t,l,i,a){let o=[];if(l){let{treeConfig:e,visibleColumn:r}=t;_xeUtils.default.isArray(l)||(l=[l]),e&&l.length&&(0,_log.errLog)("vxe.error.noTree",["merge-cells | merge-footer-items"]),l.forEach(e=>{let{row:t,col:l}=e;a&&_xeUtils.default.isNumber(t)&&(t=a[t]),_xeUtils.default.isNumber(l)&&(l=r[l]);var e=_xeUtils.default.findIndexOf(i,e=>e._row===t&&e._col===l);-1<e&&(e=i.splice(e,1),o.push(e[0]))})}return o}function clearAllSort(e){e.tableFullColumn.forEach(e=>{e.order=null})}function calcTableHeight(e,t){var l=e.parentHeight,t=e[t];let r=0;return r=t?"100%"===t||"auto"===t?l:(e=e.getExcludeHeight(),r=(0,_dom.isScale)(t)?Math.floor((_xeUtils.default.toInteger(t)||1)/100*l):_xeUtils.default.toNumber(t),Math.max(40,r-e)):r}function autoCellWidth(s){var n=s,d=s,h=s,u=s.$refs.tableHeader,c=s.$refs.tableBody,g=s.$refs.tableFooter;let f=c?c.$el:null,p=u?u.$el:null;c=g?g.$el:null;if(f){let l=0;u=f.clientWidth-1,g=u;let r=g/100;var n=n.fit,m=d.columnStore,{resizeList:m,pxMinList:x,autoMinList:v,pxList:w,scaleList:C,scaleMinList:R,autoList:b,remainList:_}=m;if(x.forEach(e=>{var t=_xeUtils.default.toInteger(e.minWidth);l+=t,e.renderWidth=t}),v.forEach(e=>{var t=Math.max(60,_xeUtils.default.toInteger(e.renderAutoWidth));l+=t,e.renderWidth=t}),R.forEach(e=>{var t=Math.floor(_xeUtils.default.toInteger(e.minWidth)*r);l+=t,e.renderWidth=t}),C.forEach(e=>{var t=Math.floor(_xeUtils.default.toInteger(e.width)*r);l+=t,e.renderWidth=t}),w.forEach(e=>{var t=_xeUtils.default.toInteger(e.width);l+=t,e.renderWidth=t}),b.forEach(e=>{var t=Math.max(60,_xeUtils.default.toInteger(e.renderAutoWidth));l+=t,e.renderWidth=t}),m.forEach(e=>{var t=_xeUtils.default.toInteger(e.resizeWidth);l+=t,e.renderWidth=t}),g-=l,r=0<g?Math.floor(g/(R.length+x.length+v.length+_.length)):0,n?0<g&&R.concat(x).concat(v).forEach(e=>{l+=r,e.renderWidth+=r}):r=40,_.forEach(e=>{var t=Math.max(r,40);e.renderWidth=t,l+=t}),n){var T=C.concat(R).concat(x).concat(v).concat(_);let t=T.length-1;if(0<t){let e=u-l;if(0<e){for(;0<e&&0<=t;)e--,T[t--].renderWidth++;l=u}}}w=f.offsetHeight,b=f.scrollHeight>f.clientHeight;let e=0,t=(b&&(e=Math.max(f.offsetWidth-f.clientWidth,0)),d.scrollbarWidth=e,d.overflowY=b,h.tableWidth=l,h.tableHeight=w,0),i=(p&&(t=p.clientHeight,s.$nextTick(()=>{p&&f&&p.scrollLeft!==f.scrollLeft&&(p.scrollLeft=f.scrollLeft)})),h.headerHeight=t,!1),a=0,o=0;o=c?(a=c.offsetHeight,i=l>c.clientWidth,Math.max(a-c.clientHeight,0)):(i=l>u,Math.max(w-f.clientHeight,0)),h.footerHeight=a,d.overflowX=i,d.scrollbarHeight=o,updateHeight(s),d.parentHeight=Math.max(h.headerHeight+a+20,s.getParentHeight()),i&&s.checkScrolling()}}let calcCellHeight=l=>{var e=l,t=l.showOverflow;let{tableData:r,scrollXLoad:d}=e,h=l.fullAllDataRowIdData,u=l.$refs.refElem;if(!t&&u){let o=0,s=0,n=!1;r.forEach(e=>{var e=(0,_util.getRowid)(l,e),t=h[e],r=u.querySelectorAll(`.vxe-body--row[rowid="${e}"]>.vxe-body--column>.vxe-cell`);if(t&&r.length){let l=0;for(let t=0;t<r.length;t++){var i=r[t],a=i.parentElement;if(!a||!a.clientWidth)break;n||(o=_xeUtils.default.toNumber(getComputedStyle(a).paddingTop),s=_xeUtils.default.toNumber(getComputedStyle(a).paddingBottom),n=!0);let e=o+s;i&&(e+=i.clientHeight),l=Math.max(l,e)}t.height=d?Math.max(t.height,l):l}}),e.isCalcCellHeight++}};function getOrderField(l,r){let{sortBy:i,sortType:a}=r;return e=>{let t;return t=i?_xeUtils.default.isFunction(i)?i({row:e,column:r}):_xeUtils.default.get(e,i):l.getCellLabel(e,r),a&&"auto"!==a?"number"===a?_xeUtils.default.toNumber(t):"string"===a?_xeUtils.default.toValueString(t):t:isNaN(t)?t:_xeUtils.default.toNumber(t)}}function clearDragStatus(e){var t=e,{dragRow:l,dragCol:r}=t;(l||r)&&(clearColDropOrigin(e),clearRowDropOrigin(e),hideDropTip(e),t.dragRow=null,t.dragCol=null,t.isDragColMove=!1,t.isDragRowMove=!1)}function clearRowDropOrigin(e){e=e.$el;if(e){let t="row--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}}function updateRowDropOrigin(e,t){var l=e.$el;if(l){e=(0,_util.getRowid)(e,t);_xeUtils.default.arrayEach(l.querySelectorAll(`[rowid="${e}"]`),e=>{(0,_dom.addClass)(e,"row--drag-origin")})}}function updateRowDropTipContent(e,t){var l=e,r=e.dragConfig,i=l.dragRow,e=e.computeRowDragOpts.tooltipMethod,e=e||(r?r.rowTooltipMethod:null);let a="";a=e?""+(e({row:i})||""):getI18n("vxe.table.dragTip",[t.textContent||""]),l.dragTipText=a}function updateColDropOrigin(e,l){e=e.$el;if(e){let t=[];_xeUtils.default.eachTree([l],e=>{t.push(`[colid="${e.id}"]`)});_xeUtils.default.arrayEach(e.querySelectorAll(t.join(",")),e=>{(0,_dom.addClass)(e,"col--drag-origin")})}}function clearColDropOrigin(e){e=e.$el;if(e){let t="col--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}}function updateColDropTipContent(e,t){var l=e,r=l.dragCol,e=e.computeColumnDragOpts.tooltipMethod;let i="";i=e?""+(e({column:r})||""):getI18n("vxe.table.dragTip",[t.textContent||""]),l.dragTipText=i}function showDropTip(l,e,r,i,t,a){var o=l,s=l,n=l.$refs.refElem;if(n){var{scrollbarWidth:o,scrollbarHeight:d}=o,s=s.prevDragToChild,h=n.getBoundingClientRect(),u=n.clientWidth,c=n.clientHeight;if(r){var g=l.$refs.refDragRowLineElem;if(g)if(t){var f=r.getBoundingClientRect();let e=r.clientHeight;r=Math.max(1,f.y-h.y);r+e>c-d&&(e=c-r-d),g.style.display="block",g.style.top=r+"px",g.style.height=e+"px",g.style.width=u-o+"px",g.setAttribute("drag-pos",a),g.setAttribute("drag-to-child",s?"y":"n")}else g.style.display=""}else if(i){f=l.$refs.refDragColLineElem;if(f)if(t){var r=l.$refs.leftContainer,g=r?r.clientWidth:0,r=l.$refs.rightContainer,r=r?r.clientWidth:0,p=i.getBoundingClientRect();let e=i.clientWidth;i=Math.max(0,p.y-h.y);let t=p.x-h.x;t<g&&(e-=g-t,t=g);g=u-r-(r?0:o);t+e>g&&(e=g-t),f.style.display="block",f.style.top=i+"px",f.style.left=t+"px",f.style.width=e+"px",f.style.height=s?p.height+"px":c-i-d+"px",f.setAttribute("drag-pos",a),f.setAttribute("drag-to-child",s?"y":"n")}else f.style.display=""}u=l.$refs.refDragTipElem;u&&(u.style.display="block",u.style.top=Math.min(n.clientHeight-n.scrollTop-u.clientHeight,e.clientY-h.y)+"px",u.style.left=Math.min(n.clientWidth-n.scrollLeft-u.clientWidth-16,e.clientX-h.x)+"px",u.setAttribute("drag-status",t?s?"sub":"normal":"disabled"))}}function hideDropTip(e){var t=e.$refs.refDragTipElem,l=e.$refs.refDragRowLineElem,e=e.$refs.refDragColLineElem;t&&(t.style.display=""),l&&(l.style.display=""),e&&(e.style.display="")}function handleScrollToRowColumn(e,t,l){var r=e.fullColumnIdData,t=(0,_util.handleFieldOrColumn)(e,t);return t&&r[t.id]?(0,_util.colToVisible)(e,t,l):e.$nextTick()}function computeScrollLoad(o){let s=o,n=o;return o.$nextTick().then(()=>{var{scrollXLoad:e,scrollYLoad:t}=s,{scrollXStore:l,scrollYStore:r}=n,i=o.computeSYOpts,a=o.computeSXOpts,e=(e?(e=handleVirtualXVisible(o).visibleSize,a=Math.max(0,a.oSize?_xeUtils.default.toNumber(a.oSize):_dom.browse.edge?5:0),l.offsetSize=a,l.visibleSize=e,l.endIndex=Math.max(l.startIndex+l.visibleSize+a,l.endIndex),o.updateScrollXData().then(()=>{loadScrollXData(o)})):o.updateScrollXSpace(),calcCellHeight(o),computeRowHeight(o)),a=(r.rowHeight=e,s.rowHeight=e,handleVirtualYVisible(o)).visibleSize;t?(l=Math.max(0,i.oSize?_xeUtils.default.toNumber(i.oSize):_dom.browse.edge?10:0),r.offsetSize=l,r.visibleSize=a,r.endIndex=Math.max(r.startIndex+a+l,r.endIndex),o.updateScrollYData().then(()=>{loadScrollYData(o)})):o.updateScrollYSpace(),o.$nextTick(()=>{o.updateStyle()})})}function handleRecalculateLayout(e,t){var l=e,r=e.$refs.refElem;return l.rceRunTime=Date.now(),r&&r.clientWidth?(calcCellWidth(e),autoCellWidth(e),computeScrollLoad(e).then(()=>{if(!0===t)return calcCellHeight(e),calcCellWidth(e),autoCellWidth(e),computeScrollLoad(e)})):e.$nextTick()}function loadScrollXData(e){var{mergeList:t,mergeFooterList:l}=e,r=e.scrollXStore,{startIndex:i,endIndex:a,offsetSize:o}=r,{toVisibleIndex:s,visibleSize:n}=handleVirtualXVisible(e),o={startIndex:Math.max(0,s-1-o),endIndex:s+n+o},{startIndex:t,endIndex:l}=(calculateMergerOffsetIndex(t.concat(l),o,"col"),o);!(s<=i||a-n-1<=s)||i===t&&a===l||(r.startIndex=t,r.endIndex=l,e.updateScrollXData()),e.closeTooltip()}function loadScrollYData(e){var t=e.showOverflow,l=e.mergeList,{tableHeight:r,scrollYStore:i}=e,{startIndex:a,endIndex:o,offsetSize:s}=i,t=t?s:s+Math.min(8,Math.ceil(r/200)),{toVisibleIndex:r,visibleSize:n}=handleVirtualYVisible(e),s={startIndex:Math.max(0,r-1-s),endIndex:r+n+t},{startIndex:t,endIndex:l}=(calculateMergerOffsetIndex(l,s,"row"),s);!(r<=a||o-n-1<=r)||a===t&&o===l||(i.startIndex=t,i.endIndex=l,e.updateScrollYData())}function checkLastSyncScroll(e,t,l){let r=e,{scrollXLoad:i,scrollYLoad:a}=e;var o=r.lcsTimeout;o&&clearTimeout(o),r.lcsTimeout=setTimeout(()=>{r.lcsRunTime=Date.now(),r.lcsTimeout=void 0,r.inVirtualScroll=!1,r.inBodyScroll=!1,r.inFooterScroll=!1,r.bodyScrollType="",t&&i&&e.updateScrollXData().then(()=>{loadScrollXData(e)}),l&&a&&e.updateScrollYData().then(()=>{loadScrollYData(e)}),e.updateCellAreas()},200)}function updateHeight(e){var t=e;t.customHeight=calcTableHeight(e,"height"),t.customMinHeight=calcTableHeight(e,"minHeight"),t.customMaxHeight=calcTableHeight(e,"maxHeight")}function calcColumnAutoWidth(e,t){var t=t.querySelectorAll(`.vxe-header--column.${e.id}>.vxe-cell,.vxe-body--column.${e.id}>.vxe-cell,.vxe-footer--column.${e.id}>.vxe-cell`),l=t[0];let r=0,i=(l&&(l=getComputedStyle(l),r=Math.floor(_xeUtils.default.toNumber(l.paddingLeft)+_xeUtils.default.toNumber(l.paddingRight))+2),e.renderAutoWidth-r);return _xeUtils.default.arrayEach(t,e=>{var t=e.parentElement;let l=0;"th"===(""+t.tagName).toLowerCase()?_xeUtils.default.arrayEach(e.children,e=>{l+=e.offsetWidth+1}):(t=e.firstElementChild)&&(l=t.offsetWidth),l&&(i=Math.max(i,Math.ceil(l)+4))}),i+r}function calcCellWidth(e){let t=e,l=e,a=e.computeAutoWidthColumnList;return t.isCalcColumn=!0,e.$nextTick().then(()=>{let r=l.fullColumnIdData,i=e.$refs.refElem;i&&(a.forEach(e=>{var t=e.id,t=r[t],l=calcColumnAutoWidth(e,i);t&&(t.width=Math.max(l,t.width)),e.renderAutoWidth=l}),e.analyColumnWidth()),t.isCalcColumn=!1})}let Methods={callSlot(e,t,l,r){if(e){var i=this.$xegrid;if(i)return i.callSlot(e,t,l,r);if(_xeUtils.default.isFunction(e))return(0,_vn.getSlotVNs)(e.call(this,t,l,r))}return[]},getParentElem(){var{$el:e,$xegrid:t}=this;return(t?t.$el:e).parentNode},getParentHeight(){var{$el:e,$xegrid:t,height:l}=this,e=e.parentNode,l="100%"===l||"auto"===l?(0,_dom.getPaddingTopBottomSize)(e):0;return Math.floor(t?t.getParentHeight():_xeUtils.default.toNumber(getComputedStyle(e).height)-l)},getExcludeHeight(){var e=this.$xegrid;return e?e.getExcludeHeight():0},clearAll(){return(0,_util.clearTableAllStatus)(this)},syncData(){return(0,_log.warnLog)("vxe.error.delFunc",["syncData","getData"]),this.$nextTick().then(()=>(this.tableData=[],this.$nextTick().then(()=>this.loadTableData(this.tableFullData))))},updateData(){let{scrollXLoad:e,scrollYLoad:t}=this;return this.handleTableData(!0).then(()=>{if(this.updateFooter(),e||t)return e&&this.updateScrollXSpace(),t&&this.updateScrollYSpace(),this.refreshScroll()}).then(()=>(this.updateCellAreas(),this.recalculate(!0))).then(()=>{setTimeout(()=>this.recalculate(),50)})},handleTableData(e){let{scrollYLoad:t,scrollYStore:l,fullDataRowIdData:r,afterFullData:i}=this,a=i;e&&(this.updateAfterFullData(),a=handleVirtualTreeToList(this));e=t?a.slice(l.startIndex,l.endIndex):a.slice(0);return e.forEach((e,t)=>{e=(0,_util.getRowid)(this,e),e=r[e];e&&(e.$index=t)}),this.tableData=e,this.$nextTick()},loadTableData(e){let t=this,{keepSource:l,showOverflow:r,treeConfig:i,treeOpts:a,editStore:o,scrollYStore:s,scrollXStore:n,lastScrollLeft:d,lastScrollTop:h,scrollYLoad:u,sXOpts:c,sYOpts:g}=this;var f=a.children||a.childrenField,p=t.computeRowOpts;let m=[],x=e?e.slice(0):[],v=(i&&(a.transform?("development"===process.env.NODE_ENV&&(a.rowField||(0,_log.errLog)("vxe.error.reqProp",["table.tree-config.rowField"]),a.parentField||(0,_log.errLog)("vxe.error.reqProp",["table.tree-config.parentField"]),f||(0,_log.errLog)("vxe.error.reqProp",["tree-config.childrenField"]),a.mapChildrenField||(0,_log.errLog)("vxe.error.reqProp",["tree-config.mapChildrenField"]),f===a.mapChildrenField)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.childrenField","tree-config.mapChildrenField"]),m=_xeUtils.default.toArrayTree(x,{key:a.rowField,parentKey:a.parentField,children:f,mapChildren:a.mapChildrenField}),x=m.slice(0)):m=x.slice(0)),s.startIndex=0,s.endIndex=1,n.startIndex=0,n.endIndex=1,o.insertMaps={},o.removeList=[],o.removeMaps={},updateScrollYStatus(t,x));return this.isDragRowMove=!1,this.tableFullData=x,this.tableFullTreeData=m,this.cacheRowMap(!0),this.tableSynchData=e,l&&this.cacheSourceMap(x),v&&(r&&!p.height&&(f=this.tableFullColumn.find(e=>!1===e.showOverflow))&&(0,_log.errLog)("vxe.error.errProp",[`column[field="${f.field}"].show-overflow=false`,"show-overflow=true"]),"development"===process.env.NODE_ENV)&&(this.height||this.maxHeight||(0,_log.errLog)("vxe.error.reqProp",["table.height | table.max-height | table.scroll-y={enabled: false}"]),this.spanMethod)&&(0,_log.warnLog)("vxe.error.scrollErrProp",["table.span-method"]),this.clearCellAreas&&this.mouseConfig&&(this.clearCellAreas(),this.clearCopyCellArea()),this.clearMergeCells(),this.clearMergeFooterItems(),this.handleTableData(!0),this.updateFooter(),this.$nextTick().then(()=>{updateHeight(t),this.updateStyle()}).then(()=>{computeScrollLoad(t)}).then(()=>(v&&(s.endIndex=s.visibleSize),this.handleReserveStatus(),this.checkSelectionStatus(),new Promise(l=>{this.$nextTick().then(()=>this.recalculate()).then(()=>{let e=d,t=h;c.scrollToLeftOnChange&&(e=0),g.scrollToTopOnChange&&(t=0),u===v?(0,_util.restoreScrollLocation)(this,e,t).then(l):setTimeout(()=>(0,_util.restoreScrollLocation)(this,e,t).then(l))})})))},loadData(e){let t=this.initStatus;return this.loadTableData(e).then(()=>(this.inited=!0,this.initStatus=!0,t||this.handleLoadDefaults(),this.recalculate()))},reloadData(e){return this.clearAll().then(()=>(this.inited=!0,this.initStatus=!0,this.loadTableData(e))).then(()=>(this.handleLoadDefaults(),this.recalculate()))},setRow(t,l){if(l){let e=t;(e=_xeUtils.default.isArray(t)?e:[t]).forEach(e=>Object.assign(e,l))}return this.$nextTick()},reloadRow(e,t,l){var{keepSource:r,tableSourceData:i,tableData:a}=this;return r?((r=i[this.getRowIndex(e)])&&e&&(l?(i=_xeUtils.default.get(t||e,l),_xeUtils.default.set(e,l,i),_xeUtils.default.set(r,l,i)):(l=_xeUtils.default.clone(Object.assign({},t),!0),_xeUtils.default.destructuring(r,Object.assign(e,l)))),this.tableData=a.slice(0)):"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.reqProp",["keep-source"]),this.$nextTick()},loadColumn(e){e=_xeUtils.default.mapTree(e,e=>_cell.default.createColumn(this,e),{children:"children"});return this.handleColumn(e)},reloadColumn(e){return this.clearAll().then(()=>this.loadColumn(e))},initColumnSort(){var e=this.collectColumn;e.forEach((e,t)=>{t+=1;e.sortNumber=t,e.renderSortNumber=t})},handleColumn(e){let t=this;this.collectColumn=e;e=getColumnList(e);return this.tableFullColumn=e,this._isLoading=!0,this.isDragColMove=!1,this.initColumnSort(),Promise.resolve(this.restoreCustomStorage()).then(()=>(this._isLoading=!1,cacheColumnMap(t),this.parseColumns(!0).then(()=>{this.scrollXLoad&&loadScrollXData(t)}),this.clearMergeCells(),this.clearMergeFooterItems(),this.handleTableData(!0),"development"===process.env.NODE_ENV&&(this.scrollXLoad||this.scrollYLoad)&&this.expandColumn&&(0,_log.warnLog)("vxe.error.scrollErrProp",["column.type=expand"]),this.$nextTick().then(()=>(this.$toolbar&&this.$toolbar.syncUpdate({collectColumn:this.collectColumn,$table:this}),t.handleUpdateCustomColumn&&t.handleUpdateCustomColumn(),this.recalculate()))))},cacheRowMap(n){let{treeConfig:d,treeOpts:e,tableFullData:t,fullAllDataRowIdData:h,tableFullTreeData:l}=this,u=e.children||e.childrenField,c=e.hasChild||e.hasChildField,g=(0,_util.getRowkey)(this),f=d&&e.lazy,p={},m={};var r=(e,t,l,r,i,a)=>{let o=(0,_util.getRowid)(this,e);r=d&&r?(0,_util.toTreePathSeq)(r):t+1,a=a?a.length-1:0;(0,_utils.eqEmptyValue)(o)&&(o=(0,_util.getRowUniqueId)(),_xeUtils.default.set(e,g,o)),f&&e[c]&&_xeUtils.default.isUndefined(e[u])&&(e[u]=null);let s=h[o];(s=s||{row:e,rowid:o,seq:r,index:-1,_index:-1,$index:-1,items:l,parent:i,level:a,height:0,oTop:0}).row=e,s.items=l,s.parent=i,s.level=a,s.index=d&&i?-1:t,n&&(m[o]=s),p[o]=s};n&&(this.fullDataRowIdData=m),this.fullAllDataRowIdData=p,d?_xeUtils.default.eachTree(l,r,{children:u}):t.forEach(r)},cacheSourceMap(e){let{treeConfig:t,treeOpts:l,sourceDataRowIdData:r}=this;e=_xeUtils.default.clone(e,!0);let i=(0,_util.getRowkey)(this);r=this.sourceDataRowIdData={};var a,o=e=>{let t=(0,_util.getRowid)(this,e);(0,_utils.eqEmptyValue)(t)&&(t=(0,_util.getRowUniqueId)(),_xeUtils.default.set(e,i,t)),r[t]={row:e,rowid:t}};t?(a=l.children||l.childrenField,_xeUtils.default.eachTree(e,o,{children:l.transform?l.mapChildrenField:a})):e.forEach(o),this.tableSourceData=e},getParams(){return this.params},loadTreeChildren(r,e){let s=this,{keepSource:t,tableSourceData:i,treeOpts:l,fullDataRowIdData:n,fullAllDataRowIdData:d,sourceDataRowIdData:a}=this,{transform:o,mapChildrenField:h}=l,u=l.children||l.childrenField,c=d[(0,_util.getRowid)(s,r)],g=c?c.level:0;return this.createData(e).then(e=>{if(t){let t=(0,_util.getRowid)(this,r);var l=_xeUtils.default.findTree(i,e=>t===(0,_util.getRowid)(this,e),{children:u});l&&(l.item[u]=_xeUtils.default.clone(e,!0)),e.forEach(e=>{var t=(0,_util.getRowid)(this,e);a[t]=_xeUtils.default.clone(e,!0)})}return _xeUtils.default.eachTree(e,(e,t,l,r,i,a)=>{var o=(0,_util.getRowid)(s,e),e={row:e,rowid:o,seq:-1,index:t,_index:-1,$index:-1,items:l,parent:i||c.row,level:g+a.length,height:0,oTop:0};n[o]=e,d[o]=e},{children:u}),r[u]=e,o&&(r[h]=_xeUtils.default.clone(e,!1)),this.updateAfterDataIndex(),e})},getRowNode(e){if(e){var t=this.fullAllDataRowIdData,t=t[e.getAttribute("rowid")];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=this.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(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t.seq}return-1},getRowIndex(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t.index}return-1},getVTRowIndex(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t._index}return-1},_getRowIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["_getRowIndex","getVTRowIndex"]),this.getVTRowIndex(e)},getVMRowIndex(e){var t=this.fullAllDataRowIdData;if(e){t=t[(0,_util.getRowid)(this,e)];if(t)return t.$index}return-1},$getRowIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["$getRowIndex","getVMRowIndex"]),this.getVMRowIndex(e)},getColumnIndex(e){var t=this.fullColumnIdData;if(e){t=t[e.id];if(t)return t.index}return-1},getVTColumnIndex(e){var t=this.fullColumnIdData;if(e){t=t[e.id];if(t)return t._index}return-1},_getColumnIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["_getColumnIndex","getVTColumnIndex"]),this.getVTColumnIndex(e)},getVMColumnIndex(e){var t=this.fullColumnIdData;if(e){t=t[e.id];if(t)return t.$index}return-1},$getColumnIndex(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["$getColumnIndex","getVMColumnIndex"]),this.getVMColumnIndex(e)},isSeqColumn(e){return e&&"seq"===e.type},defineField(e){let{radioOpts:t,checkboxOpts:l,treeConfig:r,treeOpts:a,expandOpts:o}=this,s=a.children||a.childrenField,n=(0,_util.getRowkey)(this);return(e=_xeUtils.default.isArray(e)?e:[e||{}]).map(i=>(this.tableFullColumn.forEach(t=>{var{field:l,editRender:r}=t;if(l&&!_xeUtils.default.has(i,l)){let e=null;r&&(r=r.defaultValue,_xeUtils.default.isFunction(r)?e=r({column:t}):_xeUtils.default.isUndefined(r)||(e=r)),_xeUtils.default.set(i,l,e)}}),[t.labelField,l.checkField,l.labelField,o.labelField].forEach(e=>{e&&(0,_utils.eqEmptyValue)(_xeUtils.default.get(i,e))&&_xeUtils.default.set(i,e,null)}),r&&a.lazy&&_xeUtils.default.isUndefined(i[s])&&(i[s]=null),(0,_utils.eqEmptyValue)(_xeUtils.default.get(i,n))&&_xeUtils.default.set(i,n,(0,_util.getRowUniqueId)()),i))},createData(e){return this.$nextTick().then(()=>this.defineField(e))},createRow(e){let t=_xeUtils.default.isArray(e);return t||(e=[e]),this.createData(e).then(e=>t?e:e[0])},revertData(e,l){let{keepSource:t,tableSourceData:r,treeConfig:i}=this;if(!t)return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.reqProp",["keep-source"]),this.$nextTick();let a=e;return e?_xeUtils.default.isArray(e)||(a=[e]):a=_xeUtils.default.toArray(this.getUpdateRecords()),a.length&&a.forEach(e=>{var t;this.isInsertByRow(e)||(t=this.getRowIndex(e),i&&-1===t&&(0,_log.errLog)("vxe.error.noTree",["revertData"]),(t=r[t])&&e&&(l?_xeUtils.default.set(e,l,_xeUtils.default.clone(_xeUtils.default.get(t,l),!0)):_xeUtils.default.destructuring(e,_xeUtils.default.clone(t,!0))))}),e?this.$nextTick():this.reloadData(r)},clearData(e,t){let{tableFullData:l,visibleColumn:r}=this;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)})}),this.$nextTick()},getCellElement(e,t){t=(0,_util.handleFieldOrColumn)(this,t);if(!t)return null;var l=this.$refs,e=(0,_util.getRowid)(this,e);let r=null;return(r=t?l[`${t.fixed||"table"}Body`]||l.tableBody:r)&&r.$el?r.$el.querySelector(`.vxe-body--row[rowid="${e}"] .`+t.id):null},getCellLabel(t,l){l=(0,_util.handleFieldOrColumn)(this,l);if(!l)return null;var r=l.formatter,i=(0,_util.getCellValue)(t,l);let a=i;if(r){let e;var o=this.fullAllDataRowIdData,s=(0,_util.getRowid)(this,t),n=l.id,d=o[s];if(d&&(e=(e=d.formatData)||(o[s].formatData={}),d)&&e[n]&&e[n].value===i)return e[n].label;o={cellValue:i,row:t,rowIndex:this.getRowIndex(t),column:l,columnIndex:this.getColumnIndex(l)};a=_xeUtils.default.isString(r)?(d=(s=formats.get(r))?s.tableCellFormatMethod||s.cellFormatMethod:null)?d(o):"":_xeUtils.default.isArray(r)?(l=(t=formats.get(r[0]))?t.tableCellFormatMethod||t.cellFormatMethod:null)?l(o,...r.slice(1)):"":r(o),e&&(e[n]={value:i,label:a})}return a},isInsertByRow(e){var t=this.editStore,e=(0,_util.getRowid)(this,e);return!!t.insertMaps[e]},removeInsertRow(){var e=this.editStore;return e.insertMaps={},this.remove(this.getInsertRecords())},isUpdateByRow(l,e){var{tableFullColumn:r,keepSource:t,sourceDataRowIdData:i,fullDataRowIdData:a}=this;if(t){t=(0,_util.getRowid)(this,l);if(!a[t])return!1;a=i[t];if(a){var o=a.row;if(1<arguments.length)return!eqCellValue(o,l,e);for(let e=0,t=r.length;e<t;e++){var s=r[e].field;if(s&&!eqCellValue(o,l,s))return!0}}}return!1},getColumns(e){var t=this.visibleColumn;return _xeUtils.default.isUndefined(e)?t.slice(0):t[e]},getColid(e){e=(0,_util.handleFieldOrColumn)(this,e);return e?e.id:null},getColumnById(e){var t=this.fullColumnIdData;return t[e]?t[e].column:null},getColumnByField(e){var t=this.fullColumnFieldData;return t[e]?t[e].column:null},getParentColumn(e){var t=this.fullColumnIdData,e=(0,_util.handleFieldOrColumn)(this,e);return e&&e.parentId&&t[e.parentId]?t[e.parentId].column:null},getTableColumn(){return{collectColumn:this.collectColumn.slice(0),fullColumn:this.tableFullColumn.slice(0),visibleColumn:this.visibleColumn.slice(0),tableColumn:this.tableColumn.slice(0)}},getFullColumns(){var e=this.collectColumn;return e.slice(0)},getData(e){var t=this.data||this.tableSynchData;return _xeUtils.default.isUndefined(e)?t.slice(0):t[e]},getCheckboxRecords(r){let{tableFullData:e,afterFullData:t,treeConfig:l,treeOpts:i,checkboxOpts:a,tableFullTreeData:o,afterTreeFullData:s,afterFullRowMaps:n}=this;var{transform:d,mapChildrenField:h}=i;let u=a.checkField;var c=i.children||i.childrenField,g=r?d?o:e:d?s:t;let f=[];if(u)f=l?_xeUtils.default.filterTree(g,e=>_xeUtils.default.get(e,u),{children:d?h:c}):g.filter(e=>_xeUtils.default.get(e,u));else{let{selectCheckboxMaps:e,fullDataRowIdData:l}=this;_xeUtils.default.each(e,(e,t)=>{r?l[t]&&f.push(l[t].row):n[t]&&f.push(n[t])})}return f},updateAfterFullData(){var{tableFullColumn:e,tableFullData:t,filterOpts:l,sortOpts:r,treeConfig:i,treeOpts:a,tableFullTreeData:o}=this;let{remote:u,filterMethod:c}=l,{remote:s,sortMethod:n,multiple:d,chronological:h}=r;l=a.transform,r=a.children||a.childrenField;let g=[],f=[],p=[],m=[],x=(e.forEach(e=>{var{field:t,sortable:l,order:r,filters:i}=e;if(!u&&i&&i.length){let t=[],l=[];i.forEach(e=>{e.checked&&(l.push(e),t.push(e.value))}),l.length&&p.push({column:e,valueList:t,itemList:l})}!s&&l&&r&&m.push({column:e,field:t,property:t,order:r,sortTime:e.sortTime})}),d&&h&&1<m.length&&(m=_xeUtils.default.orderBy(m,"sortTime")),p.length?(e=h=>p.every(({column:o,valueList:s,itemList:n})=>{if(!s.length||u)return!0;{let{filterMethod:t,filterRender:e,field:l}=o;var d=(0,_utils.isEnableConf)(e)?renderer.get(e.name):null;let r=d?d.tableFilterMethod||d.filterMethod:null,i=d?d.tableFilterDefaultMethod||d.defaultTableFilterMethod||d.defaultFilterMethod:null,a=(0,_util.getCellValue)(h,o);return t?n.some(e=>t({value:e.value,option:e,cellValue:a,row:h,column:o,$table:this})):r?n.some(e=>r({value:e.value,option:e,cellValue:a,row:h,column:o,$table:this})):c?c({options:n,values:s,cellValue:a,row:h,column:o}):i?n.some(e=>i({value:e.value,option:e,cellValue:a,row:h,column:o,$table:this})):-1<s.indexOf(_xeUtils.default.get(h,l))}}),i&&l?(f=_xeUtils.default.searchTree(o,e,{original:!0,isEvery:!0,children:a.mapChildrenField,mapChildren:r}),g=f):(g=(i?o:t).filter(e),f=g)):i&&l?(f=_xeUtils.default.searchTree(o,()=>!0,{original:!0,isEvery:!0,children:a.mapChildrenField,mapChildren:r}),g=f):(g=(i?o:t).slice(0),f=g),m[0]);if(!s&&x)if(i&&l)f=n?(e=n({data:f,sortList:m,$table:this}),_xeUtils.default.isArray(e)?e:f):_xeUtils.default.orderBy(f,m.map(({column:e,order:t})=>[getOrderField(this,e),t])),g=f;else{if(n){a=n({data:g,column:x.column,property:x.field,field:x.field,order:x.order,sortList:m,$table:this});g=_xeUtils.default.isArray(a)?a:g}else if(d)g=_xeUtils.default.orderBy(g,m.map(({column:e,order:t})=>[getOrderField(this,e),t]));else{let e;_xeUtils.default.isArray(x.sortBy)&&(e=x.sortBy.map(e=>[e,x.order])),g=_xeUtils.default.orderBy(g,e||[x].map(({column:e,order:t})=>[getOrderField(this,e),t]))}f=g}this.afterFullData=g,this.afterTreeFullData=f,this.updateAfterDataIndex()},updateTreeDataIndex(){let i=this;var e=i.treeConfig;let{afterFullData:t,fullDataRowIdData:a,fullAllDataRowIdData:o}=i;var l=i.computeTreeOpts;e&&l.transform&&t.forEach((e,t)=>{var l=(0,_util.getRowid)(i,e),r=o[l];r?r._index=t:(r={row:e,rowid:l,seq:"-1",index:-1,$index:-1,_index:t,items:[],parent:null,level:0,height:0,oTop:0},o[l]=r,a[l]=r)})},updateAfterDataIndex(){let o=this;var e=o.treeConfig;let{afterFullData:t,fullDataRowIdData:s,fullAllDataRowIdData:n,afterTreeFullData:l}=o;var r=o.computeTreeOpts,i=r.children||r.childrenField;let d={};e?(_xeUtils.default.eachTree(l,(e,t,l,r)=>{var i=(0,_util.getRowid)(o,e),a=n[i],r=r.map((e,t)=>t%2==0?Number(e)+1:".").join("");a?(a.seq=r,a._index=t):(a={row:e,rowid:i,seq:r,index:-1,$index:-1,_index:t,items:[],parent:null,level:0,height:0,oTop:0},n[i]=a,s[i]=a),d[i]=e},{children:r.transform?r.mapChildrenField:i}),o.updateTreeDataIndex()):t.forEach((e,t)=>{var l=(0,_util.getRowid)(o,e),r=n[l],i=t+1;r?(r.seq=i,r._index=t):(r={row:e,rowid:l,seq:i,index:-1,$index:-1,_index:t,items:[],parent:null,level:0,height:0,oTop:0},n[l]=r,s[l]=r),d[l]=e}),this.afterFullRowMaps=d},getTreeRowChildren(t){var l=this.treeConfig,r=this.fullDataRowIdData,i=this.computeTreeOpts,{transform:a,mapChildrenField:o}=i,i=i.children||i.childrenField;if(t&&l){let e;if(e=_xeUtils.default.isString(t)?t:(0,_util.getRowid)(this,t)){l=r[e],t=l?l.row:null;if(t)return t[a?o:i]||[]}}return[]},getTreeParentRow(t){var{treeConfig:l,fullDataRowIdData:r}=this;if(t&&l){let e;if(e=_xeUtils.default.isString(t)?t:(0,_util.getRowid)(this,t))return(l=r[e])?l.parent:null}return null},getParentRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["getParentRow","getTreeParentRow"]),this.getTreeParentRow(e)},getRowById(e){var t=this.fullDataRowIdData,e=_xeUtils.default.eqNull(e)?"":encodeURIComponent(e);return t[e]?t[e].row:null},getRowid(e){e=_xeUtils.default.get(e,(0,_util.getRowkey)(this));return _xeUtils.default.eqNull(e)?"":encodeURIComponent(e)},getTableData(){var{treeConfig:e,tableFullData:t,afterFullData:l,tableData:r,footerTableData:i,tableFullTreeData:a}=this;return{fullData:(e?a:t).slice(0),visibleData:l.slice(0),tableData:r.slice(0),footerData:i.slice(0)}},getFullData(){var e,t,l=this.treeConfig,{tableFullData:r,tableFullTreeData:i}=this;return l?({transform:e,mapChildrenField:t}=l=this.computeTreeOpts,l=l.children||l.childrenField,e?_xeUtils.default.toArrayTree(_xeUtils.default.toTreeArray(i,{children:t}),{children:l}):i.slice(0)):r.slice(0)},handleLoadDefaults(){this.checkboxConfig&&this.handleDefaultSelectionChecked(),this.radioConfig&&this.handleDefaultRadioChecked(),this.expandConfig&&this.handleDefaultRowExpand(),this.treeConfig&&this.handleDefaultTreeExpand(),this.mergeCells&&this.handleDefaultMergeCells(),this.mergeFooterItems&&this.handleDefaultMergeFooterItems(),this.$nextTick(()=>setTimeout(this.recalculate))},handleInitDefaults(){var e=this.sortConfig;e&&this.handleDefaultSort()},setColumnFixed(e,t){var l=this;let r=!1;var i=_xeUtils.default.isArray(e)?e:[e],a=l.computeColumnOpts,o=l.computeIsMaxFixedColumn;for(let e=0;e<i.length;e++){var s=i[e],s=(0,_util.handleFieldOrColumn)(l,s),s=(0,_util.getRootColumn)(l,s);if(s&&s.fixed!==t){if(!s.fixed&&o)return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.table.maxFixedCol",[a.maxFixedSize])}),l.$nextTick();_xeUtils.default.eachTree([s],e=>{e.fixed=t}),l.saveCustomStore("update:fixed"),r=r||!0}}return r?l.refreshColumn():l.$nextTick()},clearColumnFixed(e){let t=this,l=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.handleFieldOrColumn)(t,e),e=(0,_util.getRootColumn)(t,e);e&&e.fixed&&(_xeUtils.default.eachTree([e],e=>{e.fixed=null}),t.saveCustomStore("update:fixed"),l=l||!0)}),l?t.refreshColumn():t.$nextTick()},hideColumn(e){let t=this,l=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.handleFieldOrColumn)(t,e);e&&e.visible&&(e.visible=!1,l=l||!0)}),l?t.handleCustom():t.$nextTick()},showColumn(e){let t=this,l=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.handleFieldOrColumn)(t,e);e&&!e.visible&&(e.visible=!0,l=l||!0)}),l?t.handleCustom():t.$nextTick()},setColumnWidth(e,i){let a=this,o=!1;return(_xeUtils.default.isArray(e)?e:[e]).forEach(t=>{t=(0,_util.handleFieldOrColumn)(a,t);if(t){var l,r=_xeUtils.default.toInteger(i);let e=r;(0,_dom.isScale)(i)&&(l=(l=(l=a.$refs.tableBody)?l.$el:null)?l.clientWidth-1:0,e=Math.floor(r*l)),t.resizeWidth=e,o=o||!0}}),o?a.refreshColumn():a.$nextTick()},getColumnWidth(e){e=(0,_util.handleFieldOrColumn)(this,e);return e?e.renderWidth:0},resetColumn(e){return(0,_log.warnLog)("vxe.error.delFunc",["resetColumn","resetCustom"]),this.resetCustom(e)},handleCustom(){var e=this.mouseConfig;return e&&(this.clearSelected&&this.clearSelected(),this.clearCellAreas)&&(this.clearCellAreas(),this.clearCopyCellArea()),this.analyColumnWidth(),this.refreshColumn(!0)},handleCustomRestore(e){var t=this,l=this,r=l.collectColumn;let{resizableData:o,sortData:s,visibleData:n,fixedData:d}=e,h=!1;o||s||n||d?(_xeUtils.default.eachTree(r,(e,t,l,r,i)=>{var a=e.getKey();i||(d&&void 0!==d[a]&&(e.fixed=d[a]),s&&_xeUtils.default.isNumber(s[a])&&(h=!0,e.renderSortNumber=s[a])),o&&_xeUtils.default.isNumber(o[a])&&(e.resizeWidth=o[a]),n&&_xeUtils.default.isBoolean(n[a])&&(e.visible=n[a])}),h&&(r=_xeUtils.default.orderBy(r,"renderSortNumber"),l.collectColumn=r,l.tableFullColumn=getColumnList(r)),t.isCustomStatus=!0):t.isCustomStatus=!1},restoreCustomStorage(){var{tableId:e,customConfig:t,customOpts:l}=this,{storage:r,restoreStore:i}=l,a=!0===r,r=a?{}:Object.assign({},r||{}),o=a||r.resizable,s=a||r.visible,n=a||r.fixed,a=a||r.sort;if((t?(0,_utils.isEnableConf)(l):l.enabled)&&(o||s||n||a)){if(e)return r=getCustomStorageMap(e),i?Promise.resolve(i({id:e,type:"restore",storeData:r})).then(e=>{if(e)return this.handleCustomRestore(e)}).catch(e=>e):this.handleCustomRestore(r);(0,_log.errLog)("vxe.error.reqProp",["id"])}},getCustomStoreData(){let{id:e,customOpts:t,collectColumn:d}=this,h=t.checkMethod,u={},c={},g={},f={};var l={resizableData:void 0,sortData:void 0,visibleData:void 0,fixedData:void 0};if(e){let a=0,o=0,s=0,n=0;_xeUtils.default.eachTree(d,(e,t,l,r,i)=>{i||(d.forEach(e=>{var t=e.getKey();t&&(o=1,c[t]=e.renderSortNumber)}),e.fixed!==e.defaultFixed&&(i=e.getKey())&&(s=1,f[i]=e.fixed)),e.resizeWidth&&(i=e.getKey())&&(a=1,u[i]=e.renderWidth),h&&!h({column:e})||(!e.visible&&e.defaultVisible?(i=e.getKey())&&(n=1,g[i]=!1):e.visible&&!e.defaultVisible&&(i=e.getKey())&&(n=1,g[i]=!0))}),a&&(l.resizableData=u),o&&(l.sortData=c),s&&(l.fixedData=f),n&&(l.visibleData=g)}else(0,_log.errLog)("vxe.error.reqProp",["id"]);return l},saveCustomStore(e){var t=this,l=this.customConfig,r=this.computeTableId,i=this.computeCustomOpts,{updateStore:a,storage:o}=i,s=!0===o,o=s?{}:Object.assign({},o||{}),n=s||o.resizable,d=s||o.visible,h=s||o.fixed,s=s||o.sort;if("reset"!==e&&(t.isCustomStatus=!0),(l?(0,_utils.isEnableConf)(i):i.enabled)&&(n||d||h||s)){if(!r)return(0,_log.errLog)("vxe.error.reqProp",["id"]),this.$nextTick();o="reset"===e?{resizableData:{},sortData:{},visibleData:{},fixedData:{}}:this.getCustomStoreData();if(a)return a({id:r,type:e,storeData:o});setCustomStorageMap(r,"reset"===e?null:o)}return this.$nextTick()},handleUpdateDataQueue(){this.upDataFlag++},handleRefreshColumnQueue(){this.reColumnFlag++},refreshColumn(e){return e&&this.handleUpdateColumn(),this.parseColumns(!0).then(()=>this.refreshScroll()).then(()=>this.recalculate())},parseColumns(e){var t=this,l=this.showOverflow,r=this.computeRowOpts;let o=[],s=[],n=[],{collectColumn:i,tableFullColumn:a,isGroup:d,columnStore:h,sXOpts:u,scrollXStore:c,fullColumnIdData:g}=this;if(d){let t=[],l=[],r=[];_xeUtils.default.eachTree(i,(e,t,l,r,i)=>{var a=(0,_utils.hasChildrenList)(e);i&&i.fixed&&(e.fixed=i.fixed),i&&e.fixed!==i.fixed&&(0,_log.errLog)("vxe.error.groupFixed"),a?e.visible=!!_xeUtils.default.findTree(e.children,e=>(0,_utils.hasChildrenList)(e)?null:e.visible):e.visible&&("left"===e.fixed?o:"right"===e.fixed?n:s).push(e)}),i.forEach(e=>{e.visible&&("left"===e.fixed?t:"right"===e.fixed?r:l).push(e)}),this.tableGroupColumn=t.concat(l).concat(r)}else a.forEach(e=>{e.visible&&("left"===e.fixed?o:"right"===e.fixed?n:s).push(e)});let f=o.concat(s).concat(n);var p=u.enabled&&-1<u.gt&&(0===u.gt||u.gt<=a.length);return this.hasFixedColumn=0<o.length||0<n.length,Object.assign(h,{leftList:o,centerList:s,rightList:n}),p&&(l&&!r.height&&(l=t.tableFullColumn.find(e=>!1===e.showOverflow))&&(0,_log.errLog)("vxe.error.errProp",[`column[field="${l.field}"].show-overflow=false`,"show-overflow=true"]),"development"===process.env.NODE_ENV&&(this.spanMethod&&(0,_log.warnLog)("vxe.error.scrollErrProp",["span-method"]),this.footerSpanMethod)&&(0,_log.warnLog)("vxe.error.scrollErrProp",["footer-span-method"]),e)&&(r=handleVirtualXVisible(this).visibleSize,c.startIndex=0,c.endIndex=r,c.visibleSize=r),f.length===this.visibleColumn.length&&this.visibleColumn.every((e,t)=>e===f[t])||(this.clearMergeCells(),this.clearMergeFooterItems()),this.scrollXLoad=p,f.forEach((e,t)=>{e=e.id,e=g[e];e&&(e._index=t)}),this.visibleColumn=f,this.handleTableColumn(),e?this.updateFooter().then(()=>this.recalculate()).then(()=>(this.updateCellAreas(),this.recalculate())):this.updateFooter()},analyColumnWidth(){var e=this.columnOpts;let{width:t,minWidth:l}=e,r=[],i=[],a=[],o=[],s=[],n=[],d=[],h=[];this.tableFullColumn.forEach(e=>{t&&!e.width&&(e.width=t),l&&!e.minWidth&&(e.minWidth=l),e.visible&&(e.resizeWidth?r:"auto"===e.width?d:(0,_dom.isPx)(e.width)?i:(0,_dom.isScale)(e.width)?s:(0,_dom.isPx)(e.minWidth)?a:"auto"===e.minWidth?o:(0,_dom.isScale)(e.minWidth)?n:h).push(e)}),Object.assign(this.columnStore,{resizeList:r,pxList:i,pxMinList:a,autoMinList:o,scaleList:s,scaleMinList:n,autoList:d,remainList:h})},handleResizeDblclickEvent(t,l){let r=this;var i=r,a=r,o=r.computeResizableOpts.isDblclickAutoWidth,s=r.$refs.refElem;if(o&&s){var o=a.fullColumnIdData,n=l.column,o=o[n.id],d=t.target.parentNode,d=Object.assign(l,{cell:d}),d=(0,_util.getColReMinWidth)(d);let e=calcColumnAutoWidth(n,s);o&&(e=Math.max(e,o.width)),n.resizeWidth=Math.max(d,e),i._isResize=!1,a._lastResizeTime=Date.now(),r.analyColumnWidth(),r.recalculate(!0).then(()=>{r.saveCustomStore("update:visible"),r.updateCellAreas(),r.dispatchEvent("resizable-change",Object.assign(Object.assign({},l),{resizeWidth:e}),t),setTimeout(()=>r.recalculate(!0),300)})}},refreshScroll(){let{lastScrollLeft:t,lastScrollTop:l}=this;var e=this.$refs,{tableBody:e,leftBody:r,rightBody:i,tableFooter:a}=e;let o=e?e.$el:null,s=r?r.$el:null,n=i?i.$el:null,d=a?a.$el:null;return new Promise(e=>{if(t||l)return(0,_util.restoreScrollLocation)(this,t,l).then(()=>{setTimeout(e,30)});(0,_dom.setScrollTop)(o,l),(0,_dom.setScrollTop)(s,l),(0,_dom.setScrollTop)(n,l),(0,_dom.setScrollLeft)(d,t),setTimeout(e,30)})},recalculate(a){let o=this,s=o;return new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=s,r=o.computeResizeOpts.refreshDelay||20,i=o.$refs.refElem;i&&i.clientWidth&&autoCellWidth(o),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(handleRecalculateLayout(o,!!a)):o.$nextTick(()=>{e()}),s.rceTimeout=setTimeout(()=>{s.rceTimeout=void 0,handleRecalculateLayout(o,!!a)},r)})},updateStyle(){let{$refs:t,isGroup:h,fullColumnIdData:u,tableColumn:c,customHeight:g,customMinHeight:f,customMaxHeight:p,border:m,headerHeight:x,showFooter:v,showOverflow:w,showHeaderOverflow:C,showFooterOverflow:R,footerHeight:b,tableHeight:_,tableWidth:T,scrollbarHeight:E,scrollbarWidth:D,scrollXLoad:S,scrollYLoad:y,overflowX:l,cellOffsetWidth:k,columnStore:I,elemStore:M,editStore:e,currentRow:r,mouseConfig:i,spanMethod:$,expandColumn:O,footerSpanMethod:F,isAllOverflow:U,visibleColumn:L}=this;var a=t.emptyPlaceholder,o=M["main-body-wrapper"],a=(a&&(a.style.top=x+"px",a.style.height=o?o.offsetHeight-E+"px":""),0<g&&v&&(g+=E),this.$refs.refScrollXVirtualElem),o=(a&&(a.style.height=E+"px"),this.$refs.refScrollYVirtualElem);if(o){let e=0,t=0;a=f-x-b;p&&(t=p-x-b,t=Math.max(a,t)),g&&(e=g-x-b,t&&(e=Math.min(t,e)),e=Math.max(a,e)),o.style.top=x+"px",o.style.width=D+"px",o.style.height=e+(l?-Math.max(1,E):0)+"px"}return["main","left","right"].forEach((n,e)=>{let a=0<e?n:"";let o=I[a+"List"],d=t[a+"Container"];["header","body","footer"].forEach(s=>{var l=M[n+`-${s}-wrapper`],t=M[n+`-${s}-table`];if("header"===s){T;let e=c;h?e=L:a&&(e=!(S||y||C)||$||F?L:o||[]),r=e.reduce((e,t)=>e+t.renderWidth,0),t&&(t.style.width=r?r+D+"px":"",_dom.browse.msie)&&_xeUtils.default.arrayEach(t.querySelectorAll(".vxe-resizable"),e=>{e.style.height=e.parentNode.offsetHeight+"px"});var r=M[n+`-${s}-repair`],r=(r&&(r.style.width=T+"px"),M[n+`-${s}-list`]);h&&r&&_xeUtils.default.arrayEach(r.querySelectorAll(".col--group"),e=>{var i=this.getColumnNode(e);if(i){let t=i.item;i=t.showHeaderOverflow,i=_xeUtils.default.isBoolean(i)?i:C,i="title"===i||(!0===i||"tooltip"===i)||"ellipsis"===i;let l=0,r=0;i&&_xeUtils.default.eachTree(t.children,e=>{e.children&&t.children.length||r++,l+=e.renderWidth}),e.style.width=i?l-r-(m?2:0)+"px":""}})}else if("body"===s){r=M[n+`-${s}-emptyBlock`];if((0,_dom.isNodeElement)(l)){let t=0;var i=f-x-b;if(p&&(t=p-x-b,a&&(t-=v?0:E),t=Math.max(i,t),l.style.maxHeight=t+"px"),g){let e=g-x-b;a&&(e-=v?0:E),t&&(e=Math.min(t,e)),l.style.height=Math.max(i,e)+"px"}else l.style.height="";l.style.minHeight=i+"px"}if(d){i="right"===a;let e=I[a+"List"];(0,_dom.isNodeElement)(l)&&(l.style.top=x+"px"),d.style.height=(0<g?g-x-b:_)+x+b-E*(v?2:1)+"px",d.style.width=e.reduce((e,t)=>e+t.renderWidth,i?D:0)+"px"}T;let e=c;i=(e=a?!(S||y||w&&U)||O||$||F?L:o||[]:e).reduce((e,t)=>e+t.renderWidth,0),t&&(t.style.width=i?i+"px":"",t.style.paddingRight=D&&a&&(_dom.browse["-moz"]||_dom.browse.safari)?D+"px":""),r&&(r.style.width=i?i+"px":"")}else if("footer"===s){T;let e=c;r=(e=a?!(S||y||R)||$||F?L:o||[]:e).reduce((e,t)=>e+t.renderWidth,0),(0,_dom.isNodeElement)(l)&&(d&&(l.style.top=`${0<g?g-b:_+x}px`),l.style.marginTop=-E+"px"),t&&(t.style.width=r?r+D+"px":"")}i=M[n+`-${s}-colgroup`];i&&_xeUtils.default.arrayEach(i.children,t=>{var l=t.getAttribute("name");if("col_gutter"===l&&(t.style.width=D+"px"),u[l]){let a=u[l].column;var{showHeaderOverflow:l,showFooterOverflow:r,showOverflow:i}=a;let e;t.style.width=a.renderWidth+"px";t="ellipsis"===(e="header"===s?_xeUtils.default.isUndefined(l)||_xeUtils.default.isNull(l)?C:l:"footer"===s?_xeUtils.default.isUndefined(r)||_xeUtils.default.isNull(r)?R:r:_xeUtils.default.isUndefined(i)||_xeUtils.default.isNull(i)?w:i),l="title"===e,r=!0===e||"tooltip"===e;let o=l||r||t;i=M[n+`-${s}-list`];"header"===s||"footer"===s?S&&!o&&(o=!0):(S||y)&&(o=o||!0),i&&_xeUtils.default.arrayEach(i.querySelectorAll("."+a.id),e=>{var t=parseInt(e.getAttribute("colspan")||1),e=e.querySelector(".vxe-cell");let l=a.renderWidth;if(e){if(1<t){var r=this.getColumnIndex(a);for(let e=1;e<t;e++){var i=this.getColumns(r+e);i&&(l+=i.renderWidth)}}e.style.width=o?l-k*t+"px":""}})}})})}),r&&this.setCurrentRow(r),i&&i.selected&&e.selected.row&&e.selected.column&&this.addColSdCls(),this.$nextTick()},checkScrolling(){var{tableBody:e,leftContainer:t,rightContainer:l}=this.$refs,e=e?e.$el:null,e=this.$refs.refScrollXHandleElem||e;e&&(t&&(0<e.scrollLeft?(0,_dom.addClass):(0,_dom.removeClass))(t,"scrolling--middle"),l)&&(e.clientWidth<e.scrollWidth-Math.ceil(e.scrollLeft)?(0,_dom.addClass):(0,_dom.removeClass))(l,"scrolling--middle")},preventEvent(t,e,l,r,i){let a=interceptor.get(e);a.length||"event.clearEdit"!==e||(a=interceptor.get("event.clearActived"),"development"===process.env.NODE_ENV&&a.length&&(0,_log.warnLog)("vxe.error.delEvent",["event.clearActived","event.clearEdit"]));let o;return a.some(e=>!1===e(Object.assign({$grid:this.$xegrid,$table:this,$event:t},l)))||r&&(o=r()),i&&i(),o},handleGlobalMousedownEvent(l){let{$el:r,$refs:e,$xegrid:t,$toolbar:i,mouseConfig:a,editStore:o,ctxMenuStore:s,editRules:n,editOpts:d,validOpts:h,areaOpts:u,filterStore:c,customStore:g,getRowNode:f}=this,p=o.actived;var{ctxWrapper:m,filterWrapper:x,customWrapper:v,validTip:w}=e;if(!x||(0,_dom.getEventTargetNode)(l,r,"vxe-cell--filter").flag||(0,_dom.getEventTargetNode)(l,x.$el).flag||(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(l,"event.clearFilter",c.args,this.closeFilter),!v||g.btnEl===l.target||(0,_dom.getEventTargetNode)(l,document.body,"vxe-toolbar-custom-target").flag||(0,_dom.getEventTargetNode)(l,v.$el).flag||(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(l,"event.clearCustom",{},()=>this.closeCustom()),p.row)!1===d.autoClear||(x=p.args.cell)&&(0,_dom.getEventTargetNode)(l,x).flag||w&&(0,_dom.getEventTargetNode)(l,w.$el).flag||this.lastCallTime&&!(this.lastCallTime+50<Date.now())||(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(l,"event.clearEdit",p.args,()=>{let e;var t;(e=(e=(e="row"===d.mode?!!(t=(0,_dom.getEventTargetNode)(l,r,"vxe-body--row")).flag&&f(t.targetElem).item!==p.args.row:!(0,_dom.getEventTargetNode)(l,r,"col--edit").flag)||(0,_dom.getEventTargetNode)(l,r,"vxe-header--row").flag)||(0,_dom.getEventTargetNode)(l,r,"vxe-footer--row").flag)||!this.height||this.overflowY||(t=l.target,(0,_dom.hasClass)(t,"vxe-table--body-wrapper")&&(e=l.offsetY<t.clientHeight)),!e&&(0,_dom.getEventTargetNode)(l,r).flag||setTimeout(()=>{this.handleClearEdit(l).then(()=>{!this.isActivated&&n&&h.autoClear&&(this.validErrorMaps={})})})});else if(a&&!((0,_dom.getEventTargetNode)(l,r).flag||t&&(0,_dom.getEventTargetNode)(l,t.$el).flag||m&&(0,_dom.getEventTargetNode)(l,m.$el).flag||i&&(0,_dom.getEventTargetNode)(l,i.$el).flag)&&(this.clearSelected&&this.clearSelected(),u.autoClear)&&this.getCellAreas){let e=this.getCellAreas();e&&e.length&&!(0,_dom.getEventTargetNode)(l,document.body,"vxe-table--ignore-areas-clear").flag&&this.preventEvent(l,"event.clearAreas",{},()=>{this.clearCellAreas(),this.clearCopyCellArea(),this.emitEvent("clear-cell-area-selection",{cellAreas:e},l)})}s.visible&&m&&!(0,_dom.getEventTargetNode)(l,m.$el).flag&&this.closeMenu();v=(0,_dom.getEventTargetNode)(l,(t||this).$el).flag;!v&&n&&h.autoClear&&(this.validErrorMaps={}),this.isActivated=v},handleGlobalBlurEvent(){this.closeFilter(),this.closeMenu()},handleGlobalMousewheelEvent(){this.closeTooltip(),this.closeMenu()},keydownEvent(t){let{filterStore:e,ctxMenuStore:l,editStore:r,keyboardConfig:i,mouseConfig:a,mouseOpts:o,keyboardOpts:s}=this,n=r.actived;var d=t.keyCode;27===d&&this.preventEvent(t,"event.keydown",null,()=>{if(this.emitEvent("keydown-start",{},t),i&&a&&o.area&&this.handleKeyboardCellAreaEvent)this.handleKeyboardCellAreaEvent(t);else if((n.row||e.visible||l.visible)&&(t.stopPropagation(),this.closeFilter(),this.closeMenu(),i)&&s.isEsc&&n.row){let e=n.args;this.handleClearEdit(t),a&&o.selected&&this.$nextTick(()=>this.handleSelected(e,t))}this.emitEvent("keydown",{},t),this.emitEvent("keydown-end",{},t)})},handleGlobalKeydownEvent(B){let W=this,P=W;this.isActivated&&this.preventEvent(B,"event.keydown",null,()=>{var e=P.afterFullData;let{filterStore:t,isCtxMenu:l,ctxMenuStore:r,editStore:L,editOpts:i,editConfig:a,mouseConfig:o,mouseOpts:s,keyboardConfig:n,keyboardOpts:d,treeConfig:h,treeOpts:u,highlightCurrentRow:c,currentRow:g,bodyCtxMenu:A,rowOpts:f}=this,{selected:p,actived:m}=L;var x=B.keyCode,v=8===x,N=9===x,w=13===x,C=27===x,R=32===x,b=37===x,_=38===x,T=39===x,E=40===x,V=46===x,D=113===x,S=93===x,H=B.metaKey,y=B.ctrlKey,k=B.shiftKey,I=B.altKey,M=b||_||T||E,$=l&&r.visible&&(w||R||M),O=(0,_utils.isEnableConf)(a)&&m.column&&m.row,F=u.children||u.childrenField;let U=i.beforeEditMethod||i.activeMethod;if(t.visible)C&&this.closeFilter();else{if($)B.preventDefault(),r.showChild&&(0,_utils.hasChildrenList)(r.selected)?this.moveCtxMenu(B,x,r,"selectChild",37,!1,r.selected.children):this.moveCtxMenu(B,x,r,"selected",39,!0,this.ctxMenuList);else if(n&&o&&s.area&&this.handleKeyboardCellAreaEvent)this.handleKeyboardCellAreaEvent(B);else if(n&&R&&d.isChecked&&p.row&&p.column&&("checkbox"===p.column.type||"radio"===p.column.type))B.preventDefault(),"checkbox"===p.column.type?this.handleToggleCheckRowEvent(B,p.args):this.triggerRadioRowEvent(B,p.args);else if(D&&(0,_utils.isEnableConf)(a))O||p.row&&p.column&&(B.stopPropagation(),B.preventDefault(),this.handleEdit(p.args,B));else if(S)this._keyCtx=p.row&&p.column&&A.length,clearTimeout(this.keyCtxTimeout),this.keyCtxTimeout=setTimeout(()=>{this._keyCtx=!1},1e3);else if(w&&!I&&n&&d.isEnter&&(p.row||m.row||h&&(f.isCurrent||c)&&g)){var{isLastEnterAppendRow:C,beforeEnterMethod:$,enterMethod:D}=d;if(y){if(m.row){let e=m.args;this.handleClearEdit(B),o&&s.selected&&this.$nextTick(()=>this.handleSelected(e,B))}}else if(p.row||m.row){let t=(p.row?p:m).args;if(k)d.enterToTab?this.moveTabSelected(t,k,B):this.moveSelected(t,b,!0,T,!1,B);else if(d.enterToTab)this.moveTabSelected(t,k,B);else{var S=p.row||m.row,w=p.column||m.column,I=W.getVTRowIndex(S),S={row:S,rowIndex:W.getRowIndex(S),$rowIndex:W.getVMRowIndex(S),_rowIndex:I,column:w,columnIndex:W.getColumnIndex(w),$columnIndex:W.getVMColumnIndex(w),_columnIndex:W.getVTColumnIndex(w),$table:W};if(!$||!1!==$(S)){if(C&&I>=e.length-1)return W.insertAt({},-1).then(({row:e})=>{W.scrollToRow(e,p.column),W.handleSelected(Object.assign(Object.assign({},t),{row:e}),B)}),void W.dispatchEvent("enter-append-row",S,B);this.moveSelected(t,b,!1,T,!0,B),D&&D(S)}}}else if(h&&(f.isCurrent||c)&&g){w=g[F];if(w&&w.length){B.preventDefault();let e=w[0],t={$table:this,row:e};this.setTreeExpand(g,!0).then(()=>this.scrollToRow(e)).then(()=>this.triggerCurrentRowEvent(B,t))}}}else if(M&&n&&d.isArrow)O||(p.row&&p.column?this.moveSelected(p.args,b,_,T,E,B):(_||E)&&(f.isCurrent||c)&&this.moveCurrentRow(_,E,B));else if(N&&n&&d.isTab)p.row||p.column?this.moveTabSelected(p.args,k,B):(m.row||m.column)&&this.moveTabSelected(m.args,k,B);else if(n&&d.isDel&&V&&(0,_utils.isEnableConf)(a)&&(p.row||p.column))O||($=d.delMethod,C={row:p.row,rowIndex:this.getRowIndex(p.row),column:p.column,columnIndex:this.getColumnIndex(p.column),$table:this,$grid:this.$xegrid},U&&!U(C))||($?$(C):(0,_util.setCellValue)(p.row,p.column,null),this.updateFooter(),this.emitEvent("cell-delete-value",C,B));else if(v&&n&&d.isBack&&(0,_utils.isEnableConf)(a)&&(p.row||p.column))O||({editMode:I,backMethod:e}=d,d.isDel&&(0,_utils.isEnableConf)(a)&&(p.row||p.column)&&(D={row:p.row,rowIndex:this.getRowIndex(p.row),column:p.column,columnIndex:this.getColumnIndex(p.column),$table:this,$grid:this.$xegrid},U&&!U(D)||(e?e(D):("insert"!==I&&(0,_util.setCellValue)(p.row,p.column,null),this.handleEdit(p.args,B)),this.emitEvent("cell-backspace-value",D,B))));else if(v&&n&&h&&d.isBack&&(f.isCurrent||c)&&g){let t=_xeUtils.default.findTree(this.afterTreeFullData,e=>e===g,{children:F}).parent;if(t){B.preventDefault();let e={row:t,rowIndex:this.getRowIndex(t),$rowIndex:this.getVMRowIndex(t),$table:this,$grid:this.$xegrid};this.setTreeExpand(t,!1).then(()=>this.scrollToRow(t)).then(()=>this.triggerCurrentRowEvent(B,e))}}else if(n&&d.isEdit&&!y&&!H&&(R||48<=x&&x<=57||65<=x&&x<=90||96<=x&&x<=111||186<=x&&x<=192||219<=x&&x<=222)){S=d.editMethod;if(p.column&&p.row&&(0,_utils.isEnableConf)(p.column.editRender)){let e=i.beforeEditMethod||i.activeMethod;w={row:p.row,rowIndex:this.getRowIndex(p.row),column:p.column,columnIndex:this.getColumnIndex(p.column),$table:this,$grid:this.$xegrid};e&&!e(w)||(S?S(w):((0,_util.setCellValue)(p.row,p.column,null),this.handleEdit(p.args,B)))}}this.emitEvent("keydown",{},B)}})},handleGlobalPasteEvent(e){var{isActivated:t,keyboardConfig:l,keyboardOpts:r,mouseConfig:i,mouseOpts:a,editStore:o,filterStore:s}=this,o=o.actived;t&&!s.visible&&(o.row||o.column||l&&r.isClip&&i&&a.area&&this.handlePasteCellAreaEvent&&this.handlePasteCellAreaEvent(e),this.emitEvent("paste",{},e))},handleGlobalCopyEvent(e){var{isActivated:t,keyboardConfig:l,keyboardOpts:r,mouseConfig:i,mouseOpts:a,editStore:o,filterStore:s}=this,o=o.actived;t&&!s.visible&&(o.row||o.column||l&&r.isClip&&i&&a.area&&this.handleCopyCellAreaEvent&&this.handleCopyCellAreaEvent(e),this.emitEvent("copy",{},e))},handleGlobalCutEvent(e){var{isActivated:t,keyboardConfig:l,keyboardOpts:r,mouseConfig:i,mouseOpts:a,editStore:o,filterStore:s}=this,o=o.actived;t&&!s.visible&&(o.row||o.column||l&&r.isClip&&i&&a.area&&this.handleCutCellAreaEvent&&this.handleCutCellAreaEvent(e),this.emitEvent("cut",{},e))},handleGlobalResizeEvent(){this.closeMenu(),this.updateCellAreas(),this.recalculate(!0)},handleTargetEnterEvent(e){var t=this.$refs.tooltip;clearTimeout(this.tooltipTimeout),e?this.closeTooltip():t&&t.setActived(!0)},handleTargetLeaveEvent(){var e=this.tooltipOpts;let t=this.$refs.tooltip;t&&t.setActived(!1),e.enterable?this.tooltipTimeout=setTimeout(()=>{(t=this.$refs.tooltip)&&!t.isActived()&&this.closeTooltip()},e.leaveDelay):this.closeTooltip()},triggerHeaderTitleEvent(r,i,a){var o=i.content||i.message;if(o){let{$refs:t,tooltipStore:e}=this;a=a.column;let l=(0,_utils.getFuncText)(o);this.handleTargetEnterEvent(!0),e.row=null,e.column=a,e.visible=!0,e.currOpts=i,this.$nextTick(()=>{var e=t.tooltip;e&&e.open(r.currentTarget,l)})}},triggerHeaderTooltipEvent(e,t){var l=this.tooltipStore,r=t.column,i=e.currentTarget;this.handleTargetEnterEvent(l.column!==r||l.row),l.column===r&&l.visible||this.handleTooltip(e,i,i,null,t)},triggerBodyTooltipEvent(l,r){var{editConfig:e,editOpts:t,editStore:i,tooltipStore:a}=this,i=i.actived,{row:o,column:s}=r,n=l.currentTarget;if(this.handleTargetEnterEvent(a.column!==s||a.row!==o),s.editRender&&(0,_utils.isEnableConf)(e)){if("row"===t.mode&&i.row===o)return;if(i.row===o&&i.column===s)return}if(a.column!==s||a.row!==o||!a.visible){let e,t;s.treeNode?(e=n.querySelector(".vxe-tree-cell"),"html"===s.type&&(t=n.querySelector(".vxe-cell--html"))):t=n.querySelector("html"===s.type?".vxe-cell--html":".vxe-cell--label"),this.handleTooltip(l,n,e||n.children[0],t,r)}},triggerFooterTooltipEvent(e,t){var l=t.column,r=this.tooltipStore,i=e.currentTarget;this.handleTargetEnterEvent(!0),r.column===l&&r.visible||this.handleTooltip(e,i,i.querySelector(".vxe-cell--item")||i.children[0],null,t)},handleTooltip(e,t,l,r,i){i.cell=t;let{$refs:a,tooltipOpts:o,tooltipStore:s}=this;var{column:t,row:n}=i,{showAll:d,enabled:h,contentMethod:u}=o,i=u?u(i):null,u=u&&!_xeUtils.default.eqNull(i);let c=u?i:("html"===t.type?l.innerText:l.textContent).trim(),g=l.scrollWidth>l.clientWidth;return c&&(d||h||u||g)&&(Object.assign(s,{row:n,column:t,visible:!0,currOpts:{}}),this.$nextTick(()=>{var e=a.tooltip;e&&e.open(!g&&r||l,(0,_utils.formatText)(c))})),this.$nextTick()},openTooltip(e,t){var l=this.$refs,l=l.commTip;return l?l.open(e,t):this.$nextTick()},closeTooltip(){var{$refs:e,tooltipStore:t}=this,l=e.tooltip,e=e.commTip;return t.visible&&(Object.assign(t,{row:null,column:null,content:null,visible:!1,currOpts:{}}),l)&&l.close(),e&&e.close(),this.$nextTick()},isAllCheckboxChecked(){return this.isAllSelected},isAllCheckboxIndeterminate(){return!this.isAllSelected&&this.isIndeterminate},isCheckboxIndeterminate(){return(0,_log.warnLog)("vxe.error.delFunc",["isCheckboxIndeterminate","isAllCheckboxIndeterminate"]),this.isAllCheckboxIndeterminate()},getCheckboxIndeterminateRecords(e){let{treeConfig:t,treeIndeterminateMaps:i,fullDataRowIdData:a}=this;if(t){let l=[],r=[];return _xeUtils.default.each(i,(e,t)=>{e&&(l.push(e),a[t])&&r.push(e)}),e?l:r}return[]},handleDefaultSelectionChecked(){let{fullDataRowIdData:l,checkboxOpts:e}=this;var{checkAll:t,checkRowKeys:r}=e;if(t)this.handleCheckedAllCheckboxRow(!0,!0);else if(r){let t=[];r.forEach(e=>{l[e]&&t.push(l[e].row)}),this.handleCheckedCheckboxRow(t,!0,!0)}},handleCheckedCheckboxRow(e,t,l){return e&&!_xeUtils.default.isArray(e)&&(e=[e]),this.handleBatchSelectRows(e,!!t,l),this.checkSelectionStatus(),this.$nextTick()},setCheckboxRow(e,t){return e&&!_xeUtils.default.isArray(e)&&(e=[e]),this.handleCheckedCheckboxRow(e,t,!0)},setCheckboxRowKey(e,t){let l=this.fullAllDataRowIdData,r=(e&&!_xeUtils.default.isArray(e)&&(e=[e]),[]);return e.forEach(e=>{e=l[e];e&&r.push(e.row)}),this.handleCheckedCheckboxRow(r,t,!0)},isCheckedByCheckboxRow(e){var t=this.selectCheckboxMaps,l=this.computeCheckboxOpts.checkField;return l?_xeUtils.default.get(e,l):!!t[(0,_util.getRowid)(this,e)]},isCheckedByCheckboxRowKey(e){var t=this.selectCheckboxMaps,l=this.fullAllDataRowIdData,r=this.computeCheckboxOpts.checkField;return r?!!(l=l[e])&&_xeUtils.default.get(l.row,r):!!t[e]},isIndeterminateByCheckboxRow(e){var t=this.treeIndeterminateMaps;return!!t[(0,_util.getRowid)(this,e)]&&!this.isCheckedByCheckboxRow(e)},isIndeterminateByCheckboxRowKey(e){var t=this.treeIndeterminateMaps;return!!t[e]&&!this.isCheckedByCheckboxRowKey(e)},handleBatchSelectRows(e,l,r){let i=this;var t=i,a=i,t=t.treeConfig,o=a.selectCheckboxMaps;let s=Object.assign({},o);var o=i.computeTreeOpts,{transform:n,mapChildrenField:d}=o,o=o.children||o.childrenField,h=i.computeCheckboxOpts;let{checkField:u,checkStrictly:c,checkMethod:g}=h,f=h.indeterminateField||h.halfField;u?t&&!c?_xeUtils.default.eachTree(e,e=>{!r&&g&&!g({row:e})||(_xeUtils.default.set(e,u,l),f&&_xeUtils.default.set(e,f,!1),i.handleCheckboxReserveRow(e,l))},{children:n?d:o}):e.forEach(e=>{!r&&g&&!g({row:e})||(_xeUtils.default.set(e,u,l),i.handleCheckboxReserveRow(e,l))}):t&&!c?_xeUtils.default.eachTree(e,e=>{var t=(0,_util.getRowid)(i,e);!r&&g&&!g({row:e})||(l?s[t]=e:s[t]&&delete s[t],i.handleCheckboxReserveRow(e,l))},{children:n?d:o}):e.forEach(e=>{var t=(0,_util.getRowid)(i,e);!r&&g&&!g({row:e})||(l?s[t]||(s[t]=e):s[t]&&delete s[t],i.handleCheckboxReserveRow(e,l))}),a.selectCheckboxMaps=s},handleSelectRow({row:e},t,l){this.handleBatchSelectRows([e],t,l)},handleToggleCheckRowEvent(t,l){var{selectCheckboxMaps:r,checkboxOpts:i}=this,{checkField:i,trigger:e}=i,a=l.row;if("manual"!==e){let e=!1;e=i?!_xeUtils.default.get(a,i):!r[(0,_util.getRowid)(this,a)],t?this.triggerCheckRowEvent(t,l,e):(this.handleSelectRow(l,e),this.checkSelectionStatus())}},triggerCheckRowEvent(e,t,l){var{checkboxOpts:r,afterFullData:i}=this,{checkMethod:a,trigger:o}=r,s=t.row;if("manual"!==o){if(e.stopPropagation(),r.isShiftKey&&e.shiftKey&&!this.treeConfig){o=this.getCheckboxRecords();if(o.length){r=o[0],o=this.getVTRowIndex(s),r=this.getVTRowIndex(r);if(o!==r)return this.setAllCheckboxRow(!1),i=o<r?i.slice(o,r+1):i.slice(r,o+1),this.handleCheckedCheckboxRow(i,!0,!1),void this.emitEvent("checkbox-range-select",Object.assign({rangeRecords:i},t),e)}}a&&!a({row:s})||(this.handleSelectRow(t,l),this.checkSelectionStatus(),this.emitEvent("checkbox-change",Object.assign({records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords(),indeterminates:this.getCheckboxIndeterminateRecords(),checked:l},t),e))}},toggleCheckboxRow(e){var{selectCheckboxMaps:t,checkboxOpts:l}=this,l=l.checkField,l=l?!_xeUtils.default.get(e,l):!t[(0,_util.getRowid)(this,e)];return this.handleBatchSelectRows([e],l,!0),this.checkSelectionStatus(),this.$nextTick()},handleCheckedAllCheckboxRow(t,l){var e=this;let{afterFullData:r,treeConfig:i,treeOpts:a,selectCheckboxMaps:o,checkboxReserveRowMap:s,checkboxOpts:n,afterFullRowMaps:d}=this,{checkField:h,reserve:u,checkStrictly:c,checkMethod:g}=n,f=n.indeterminateField||n.halfField;var p,m=a.children||a.childrenField;let x={};return i||_xeUtils.default.each(o,(e,t)=>{d[t]||(x[t]=e)}),c?this.isAllSelected=t:(h?(p=e=>{!l&&g&&!g({row:e})||(t&&(x[(0,_util.getRowid)(this,e)]=e),_xeUtils.default.set(e,h,t)),i&&f&&_xeUtils.default.set(e,f,!1)},i?_xeUtils.default.eachTree(r,p,{children:m}):r.forEach(p)):i?t?_xeUtils.default.eachTree(r,e=>{!l&&g&&!g({row:e})||(x[(0,_util.getRowid)(this,e)]=e)},{children:m}):!l&&g&&_xeUtils.default.eachTree(r,e=>{var t=(0,_util.getRowid)(this,e);!g({row:e})&&o[t]&&(x[t]=e)},{children:m}):t?!l&&g?r.forEach(e=>{var t=(0,_util.getRowid)(this,e);(o[t]||g({row:e}))&&(x[t]=e)}):r.forEach(e=>{x[(0,_util.getRowid)(this,e)]=e}):!l&&g&&r.forEach(e=>{var t=(0,_util.getRowid)(this,e);!g({row:e})&&o[t]&&(x[t]=e)}),u&&(t?_xeUtils.default.each(x,(e,t)=>{s[t]=e}):r.forEach(e=>this.handleCheckboxReserveRow(e,!1))),this.selectCheckboxMaps=h?{}:x),e.isAllSelected=t,e.isIndeterminate=!1,this.treeIndeterminateMaps={},this.treeIndeterminateRowMaps={},this.checkSelectionStatus(),this.$nextTick()},setAllCheckboxRow(e){return this.handleCheckedAllCheckboxRow(e,!0)},updateCheckboxStatus(){let s=this;var e=s,t=s,l=s,e=e.treeConfig,{selectCheckboxMaps:r,treeIndeterminateMaps:a}=t;let n=Object.assign({},r),d=Object.assign({},a);r=s.computeTreeOpts;let{transform:o,mapChildrenField:h}=r,u=r.children||r.childrenField,{checkField:c,checkStrictly:i,checkMethod:g}=s.computeCheckboxOpts;a=l.afterTreeFullData;if(!i){if(e){let r={},i=[];_xeUtils.default.eachTree(a,e=>{var t=(0,_util.getRowid)(s,e),l=e[o?h:u];l&&l.length&&!r[t]&&(r[t]=1,i.unshift([e,t,l]))},{children:o?h:u}),i.forEach(e=>{var t=e[0],l=e[1];let r=0,i=0,a=0;e[2].forEach(g?e=>{var t=(0,_util.getRowid)(s,e),l=c?_xeUtils.default.get(e,c):n[t];g({row:e})?(l?r++:d[t]&&i++,a++):l?r++:d[t]&&i++}:e=>{var t=(0,_util.getRowid)(s,e);(c?_xeUtils.default.get(e,c):n[t])?r++:d[t]&&i++,a++});var e=r>=a,o=!e&&(1<=r||1<=i);c&&_xeUtils.default.get(t,c,e),e?(c||(n[l]=t),d[l]&&delete d[l]):(c||n[l]&&delete n[l],o?d[l]=t:d[l]&&delete d[l])})}t.selectCheckboxMaps=n,t.treeIndeterminateMaps=d}},updateAllCheckboxStatus(){let r=this;var e=r,t=r,l=r,e=e.treeConfig;let{selectCheckboxMaps:i,treeIndeterminateMaps:a}=t,{checkField:o,checkMethod:s}=r.computeCheckboxOpts;var{afterFullData:l,afterTreeFullData:n}=l;let d=0,h=0,u=0;e=e?n:l,e.forEach(s?e=>{var t=(0,_util.getRowid)(r,e),l=o?_xeUtils.default.get(e,o):i[t];s({row:e})?(l?d++:a[t]&&h++,u++):l?d++:a[t]&&h++}:e=>{var t=(0,_util.getRowid)(r,e);(o?_xeUtils.default.get(e,o):i[t])?d++:a[t]&&h++,u++}),n=0<e.length&&d>=u,l=!n&&(1<=d||1<=h);t.isAllSelected=n,t.isIndeterminate=l},checkSelectionStatus(){this.updateCheckboxStatus(),this.updateAllCheckboxStatus()},handleReserveStatus(){var{expandColumn:e,treeOpts:t,treeConfig:l,fullDataRowIdData:r,fullAllDataRowIdData:i,currentRow:a,selectRadioRow:o,radioReserveRow:s,radioOpts:n,checkboxOpts:d,selectCheckboxMaps:h,rowExpandedMaps:u,treeExpandedMaps:c,expandOpts:g}=this;o&&!i[(0,_util.getRowid)(this,o)]&&(this.selectRadioRow=null),n.reserve&&s&&r[i=(0,_util.getRowid)(this,s)]&&this.handleCheckedRadioRow(r[i].row,!0),this.selectCheckboxMaps=getRecoverRowMaps(this,h),d.reserve&&this.handleCheckedCheckboxRow(handleReserveRow(this,this.checkboxReserveRowMap),!0,!0),a&&!this.fullAllDataRowIdData[(0,_util.getRowid)(this,a)]&&(this.currentRow=null),this.rowExpandedMaps=e?getRecoverRowMaps(this,u):[],e&&g.reserve&&this.setRowExpand(handleReserveRow(this,this.rowExpandedReserveRowMap),!0),this.treeExpandedMaps=l?getRecoverRowMaps(this,c):[],l&&t.reserve&&this.setTreeExpand(handleReserveRow(this,this.treeExpandedReserveRowMap),!0)},getRadioReserveRecord(e){var{fullDataRowIdData:t,radioReserveRow:r,radioOpts:l,afterFullData:i,treeConfig:a,treeOpts:o}=this,o=o.children||o.childrenField;if(l.reserve&&r){let l=(0,_util.getRowid)(this,r);if(e){if(!t[l])return r}else{let t=(0,_util.getRowkey)(this);if(a){if(_xeUtils.default.findTree(i,e=>l===_xeUtils.default.get(e,t),{children:o}))return r}else if(!i.some(e=>l===_xeUtils.default.get(e,t)))return r}}return null},clearRadioReserve(){return this.radioReserveRow=null,this.$nextTick()},handleRadioReserveRow(e){var t=this.radioOpts;t.reserve&&(this.radioReserveRow=e)},getCheckboxReserveRecords(r){let{fullDataRowIdData:i,afterFullData:e,checkboxReserveRowMap:t,checkboxOpts:l,treeConfig:a,treeOpts:o}=this;var s=o.children||o.childrenField;let n=[];if(l.reserve){let l={};a?_xeUtils.default.eachTree(e,e=>{l[(0,_util.getRowid)(this,e)]=1},{children:s}):e.forEach(e=>{l[(0,_util.getRowid)(this,e)]=1}),_xeUtils.default.each(t,(e,t)=>{e&&(r?i[t]||n.push(e):l[t]||n.push(e))})}return n},clearCheckboxReserve(){return this.checkboxReserveRowMap={},this.$nextTick()},handleCheckboxReserveRow(e,t){var{checkboxReserveRowMap:l,checkboxOpts:r}=this;r.reserve&&(r=(0,_util.getRowid)(this,e),t?l[r]=e:l[r]&&delete l[r])},handleCheckAllEvent(e,t){this.handleCheckedAllCheckboxRow(t),e&&this.emitEvent("checkbox-all",{records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords(),indeterminates:this.getCheckboxIndeterminateRecords(),checked:t},e)},triggerCheckAllEvent(e,t){var l=this.checkboxOpts,l=l.trigger;"manual"!==l&&(e&&e.stopPropagation(),this.handleCheckAllEvent(e,t))},toggleAllCheckboxRow(){return this.handleCheckAllEvent(null,!this.isAllSelected),this.$nextTick()},clearCheckboxRow(){let{tableFullData:e,treeConfig:t,treeOpts:l,checkboxOpts:r}=this,{checkField:i,reserve:a}=r;var o,s=l.children||l.childrenField;let n=r.indeterminateField||r.halfField;return i&&(o=e=>{t&&n&&_xeUtils.default.set(e,n,!1),_xeUtils.default.set(e,i,!1)},t?_xeUtils.default.eachTree(e,o,{children:s}):e.forEach(o)),a&&e.forEach(e=>this.handleCheckboxReserveRow(e,!1)),this.isAllSelected=!1,this.isIndeterminate=!1,this.selectCheckboxMaps={},this.treeIndeterminateMaps={},this.$nextTick()},handleDefaultRadioChecked(){var{radioOpts:e,fullDataRowIdData:t}=this,{checkRowKey:e,reserve:l}=e;e&&(t[e]&&this.handleCheckedRadioRow(t[e].row,!0),l)&&(t=(0,_util.getRowkey)(this),this.radioReserveRow={[t]:e})},triggerRadioRowEvent(l,r){var{selectRadioRow:i,radioOpts:a}=this,o=r.row,e=a.trigger;if("manual"!==e){l.stopPropagation();let e=o,t=i!==e;t?this.handleCheckedRadioRow(e):a.strict||(t=i===e)&&(e=null,this.clearRadioRow()),t&&this.emitEvent("radio-change",Object.assign({oldValue:i,newValue:e},r),l)}},triggerCurrentColumnEvent(e,t){var l=this.computeColumnOpts.currentMethod,t=t.column;l&&!l({column:t})||this.setCurrentColumn(t)},triggerCurrentRowEvent(e,t){var l=this.currentRow,r=this.computeRowOpts.currentMethod,i=t.row,a=l!==i;r&&!r({row:i})||(this.setCurrentRow(i),a&&this.dispatchEvent("current-change",Object.assign({oldValue:l,newValue:i},t),e))},setCurrentRow(e){var{$el:t,rowOpts:l}=this;return this.clearCurrentRow(),this.currentRow=e,(l.isCurrent||this.highlightCurrentRow)&&t&&_xeUtils.default.arrayEach(t.querySelectorAll(`[rowid="${(0,_util.getRowid)(this,e)}"]`),e=>(0,_dom.addClass)(e,"row--current")),this.$nextTick()},isCheckedByRadioRow(e){var t=this.selectRadioRow;return!(!e||!t)&&this.eqRow(t,e)},isCheckedByRadioRowKey(e){var t=this.selectRadioRow;return!!t&&e===(0,_util.getRowid)(this,t)},handleCheckedRadioRow(e,t){var l=this.radioOpts,l=l.checkMethod;return e&&(t||!l||l({row:e}))&&(this.selectRadioRow=e,this.handleRadioReserveRow(e)),this.$nextTick()},setRadioRow(e){return this.handleCheckedRadioRow(e,!0)},setRadioRowKey(e){var t=this.fullAllDataRowIdData,t=t[e];return t?this.handleCheckedRadioRow(t.row,!0):this.$nextTick()},clearCurrentRow(){var e=this.$el;return this.currentRow=null,this.hoverRow=null,e&&_xeUtils.default.arrayEach(e.querySelectorAll(".row--current"),e=>(0,_dom.removeClass)(e,"row--current")),this.$nextTick()},clearRadioRow(){return this.selectRadioRow=null,this.$nextTick()},getCurrentRecord(){return this.rowOpts.isCurrent||this.highlightCurrentRow?this.currentRow:null},getRadioRecord(e){var{selectRadioRow:t,fullDataRowIdData:l,afterFullRowMaps:r}=this;if(t){var i=(0,_util.getRowid)(this,t);if(e){if(l[i])return t}else if(r[i])return t}return null},triggerHoverEvent(e,{row:t}){this.setHoverRow(t)},setHoverRow(e){var t=this.$el,l=(0,_util.getRowid)(this,e);this.clearHoverRow(),t&&_xeUtils.default.arrayEach(t.querySelectorAll(`[rowid="${l}"]`),e=>(0,_dom.addClass)(e,"row--hover")),this.hoverRow=e},clearHoverRow(){var e=this.$el;e&&_xeUtils.default.arrayEach(e.querySelectorAll(".vxe-body--row.row--hover"),e=>(0,_dom.removeClass)(e,"row--hover")),this.hoverRow=null},triggerHeaderCellClickEvent(e,t){var{_lastResizeTime:l,sortOpts:r}=this,i=t.column,a=e.currentTarget,l=l&&l>Date.now()-300,o=(0,_dom.getEventTargetNode)(e,a,"vxe-cell--sort").flag,s=(0,_dom.getEventTargetNode)(e,a,"vxe-cell--filter").flag;return"cell"!==r.trigger||l||o||s||this.triggerSortEvent(e,i,getNextSortOrder(this,i)),this.emitEvent("header-cell-click",Object.assign({triggerResizable:l,triggerSort:o,triggerFilter:s,cell:a},t),e),(this.columnOpts.isCurrent||this.highlightCurrentColumn)&&this.triggerCurrentColumnEvent(e,t),this.$nextTick()},triggerHeaderCellDblclickEvent(e,t){this.emitEvent("header-cell-dblclick",Object.assign({cell:e.currentTarget},t),e)},getCurrentColumn(){return this.columnOpts.isCurrent||this.highlightCurrentColumn?this.currentColumn:null},setCurrentColumn(e){e=(0,_util.handleFieldOrColumn)(this,e);return e&&(this.clearCurrentColumn(),this.currentColumn=e),this.$nextTick()},clearCurrentColumn(){return this.currentColumn=null,this.$nextTick()},checkValidate(e){return this.triggerValidate?this.triggerValidate(e):this.$nextTick()},handleChangeCell(e,t){this.checkValidate("blur").catch(e=>e).then(()=>{this.handleEdit(t,e).then(()=>this.checkValidate("change")).catch(e=>e)})},triggerCellClickEvent(e,t){var{highlightCurrentRow:l,editStore:r,radioOpts:i,expandOpts:a,treeOpts:o,keyboardOpts:s,editConfig:n,editOpts:d,checkboxOpts:h,rowOpts:u}=this,{actived:r,focused:c}=r,{row:g,column:f}=t,{type:p,treeNode:m}=f,x="radio"===p,v="checkbox"===p,p="expand"===p,w=e.currentTarget,C=x&&(0,_dom.getEventTargetNode)(e,w,"vxe-cell--radio").flag,R=v&&(0,_dom.getEventTargetNode)(e,w,"vxe-cell--checkbox").flag,b=m&&(0,_dom.getEventTargetNode)(e,w,"vxe-tree--btn-wrapper").flag,_=p&&(0,_dom.getEventTargetNode)(e,w,"vxe-table--expanded").flag;t=Object.assign({cell:w,triggerRadio:C,triggerCheckbox:R,triggerTreeNode:b,triggerExpandNode:_},t),!R&&!C&&(!_&&("row"===a.trigger||p&&"cell"===a.trigger)&&this.triggerRowExpandEvent(e,t),"row"===o.trigger||m&&"cell"===o.trigger)&&this.triggerTreeExpandEvent(e,t),b||(_||(!u.isCurrent&&!l||R||C||this.triggerCurrentRowEvent(e,t),!C&&("row"===i.trigger||x&&"cell"===i.trigger)&&this.triggerRadioRowEvent(e,t),!R&&("row"===h.trigger||v&&"cell"===h.trigger)&&this.handleToggleCheckRowEvent(e,t)),(0,_utils.isEnableConf)(n)&&(s.arrowCursorLock&&e&&"cell"===d.mode&&e.target&&/^input|textarea$/i.test(e.target.tagName)&&(c.column=f,c.row=g),"manual"===d.trigger?r.args&&r.row===g&&f!==r.column&&this.handleChangeCell(e,t):r.args&&g===r.row&&f===r.column||("click"===d.trigger||"dblclick"===d.trigger&&"row"===d.mode&&r.row===g)&&this.handleChangeCell(e,t))),(0,_utils.isEnableConf)(n)&&"dblclick"===d.trigger&&r.row&&r.column&&("row"===d.mode?this.eqRow(r.row,g)||this.handleClearEdit(e):"cell"!==d.mode||this.eqRow(r.row,g)&&r.column.id===f.id||this.handleClearEdit(e)),this.emitEvent("cell-click",t,e)},triggerCellDblclickEvent(e,t){var{editStore:l,editConfig:r,editOpts:i}=this,l=l.actived,a=e.currentTarget;t=Object.assign({cell:a},t),!(0,_utils.isEnableConf)(r)||"dblclick"!==i.trigger||l.args&&e.currentTarget===l.args.cell||("row"===i.mode?this.checkValidate("blur").catch(e=>e).then(()=>{this.handleEdit(t,e).then(()=>this.checkValidate("change")).catch(e=>e)}):"cell"===i.mode&&this.handleEdit(t,e).then(()=>this.checkValidate("change")).catch(e=>e)),this.emitEvent("cell-dblclick",t,e)},handleDefaultSort(){var{sortConfig:e,sortOpts:t}=this;let l=t.defaultSort;l&&(l=_xeUtils.default.isArray(l)?l:[l]).length&&((e.multiple?l:l.slice(0,1)).forEach((e,t)=>{var{field:e,order:l}=e;e&&l&&(e=this.getColumnByField(e))&&e.sortable&&(e.order=l,e.sortTime=Date.now()+t)}),t.remote||this.handleTableData(!0).then(this.updateStyle))},handleColumnSortEvent(e,t){var l=this,r=l.mouseConfig,i=l.computeMouseOpts,{field:a,sortable:o}=t;o&&(o={$table:l,$event:e,column:t,field:a,property:a,order:t.order,sortList:l.getSortColumns(),sortTime:t.sortTime},r&&i.area&&l.handleSortEvent&&l.handleSortEvent(e,o),l.dispatchEvent("sort-change",o,e))},triggerSortEvent(e,t,l){var r=this.computeSortOpts,{field:i,sortable:a,remoteSort:o}=t;(a||o)&&(l&&t.order!==l?this.sort({field:i,order:l}):this.clearSort(r.multiple?t:null),this.handleColumnSortEvent(e,t))},triggerHeaderCellMousedownEvent(e,t){var l=this,r=l.mouseConfig,i=l.computeMouseOpts,a=l.computeColumnOpts,{trigger:o,isCrossDrag:s,isPeerDrag:n,disabledMethod:d}=l.computeColumnDragOpts,h=e.currentTarget,u=h&&h.tagName&&"input"===h.tagName.toLowerCase(),c=(0,_dom.getEventTargetNode)(e,h,"vxe-cell--checkbox").flag,g=(0,_dom.getEventTargetNode)(e,h,"vxe-cell--sort").flag,f=(0,_dom.getEventTargetNode)(e,h,"vxe-cell--filter").flag;let p=!1;a=a.drag&&"cell"===o;u||c||g||f||(o=t.column,!a)||o.fixed||!s&&!n&&o.parentId||d&&d(t)||(p=!0,l.handleHeaderCellDragMousedownEvent(e,t)),!p&&r&&i.area&&l.handleHeaderCellAreaEvent&&l.handleHeaderCellAreaEvent(e,Object.assign({cell:h,triggerSort:g,triggerFilter:f},t)),l.focus(),l.closeMenu&&l.closeMenu()},triggerCellMousedownEvent(e,t){var l=this,r=t.column,{type:i,treeNode:a}=r,o="radio"===i,s="checkbox"===i,i="expand"===i,n=l.computeRowOpts,{trigger:d,isCrossDrag:h,isPeerDrag:u,disabledMethod:c}=l.computeRowDragOpts,g=e.currentTarget,f=(t.cell=g)&&g.tagName&&"input"===g.tagName.toLowerCase(),o=o&&(0,_dom.getEventTargetNode)(e,g,"vxe-cell--radio").flag,s=s&&(0,_dom.getEventTargetNode)(e,g,"vxe-cell--checkbox").flag,a=a&&(0,_dom.getEventTargetNode)(e,g,"vxe-tree--btn-wrapper").flag,i=i&&(0,_dom.getEventTargetNode)(e,g,"vxe-table--expanded").flag;let p=!1,m=(n.drag&&(p="row"===d||r.dragSort&&"cell"===d),!1);f||o||s||a||i||!p||!h&&!u&&t.level||c&&c(t)||(m=!0,l.handleCellDragMousedownEvent(e,t)),!m&&l.handleCellMousedownEvent&&l.handleCellMousedownEvent(e,t),l.focus(),l.closeFilter(),l.closeMenu&&l.closeMenu()},triggerCellMouseupEvent(){clearDragStatus(this)},handleRowDragDragstartEvent(e){e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},handleRowDragSwapEvent(s,e,n,d,h,u){let c=this;var t=c;let g=c,f=c,{treeConfig:p,dragConfig:l}=t;t=c.computeRowDragOpts;let m=f.fullAllDataRowIdData,{isPeerDrag:x,isCrossDrag:v,isSelfToChildDrag:w,dragEndMethod:r}=t,C=c.computeTreeOpts,{transform:R,rowField:b,mapChildrenField:_,parentField:T}=C,E=C.children||C.childrenField,{afterFullData:D,tableFullData:S}=f;t=r||(l?l.dragEndMethod:null);let y="bottom"===h?1:0;return d&&n&&d!==n?Promise.resolve(!t||t({oldRow:n,newRow:d,dragPos:h,dragToChild:!!u,offsetIndex:y})).then(l=>{if(l){let e=-1,t=-1;if(p){if(R){var l=(0,_util.getRowid)(c,n),l=m[l],r=(0,_util.getRowid)(c,d),i=m[r];if(l&&i){var a=l.level,o=i.level;let t={},e=(_xeUtils.default.eachTree([n],e=>{t[(0,_util.getRowid)(c,e)]=e},{children:_}),!1);if(a&&o)if(x&&!v){if(l.row[T]!==i.row[T])return}else{if(!v)return;if(t[r]&&(e=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(a){if(!v)return}else if(o){if(!v)return;if(t[r]&&(e=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}l=_xeUtils.default.toTreeArray(f.afterTreeFullData,{children:E}),i=c.findRowIndexOf(l,n),a=(l.splice(i,1),c.findRowIndexOf(l,d)),o=a+y;l.splice(o,0,n),e&&v&&w&&_xeUtils.default.each(n[E],e=>{e[T]=n[T]}),n[T]=u?d[b]:d[T],f.tableFullTreeData=_xeUtils.default.toArrayTree(l,{key:C.rowField,parentKey:C.parentField,children:E,mapChildren:C.mapChildrenField})}}}else{e=c.findRowIndexOf(D,n);r=c.findRowIndexOf(S,n),i=(D.splice(e,1),S.splice(r,1),c.findRowIndexOf(D,d)),a=c.findRowIndexOf(S,d),o=(t=i+y,a+y);D.splice(t,0,n),S.splice(o,0,n)}g.isDragRowMove=!0,c.handleTableData(p&&R),c.cacheRowMap(),updateScrollYStatus(c),p&&R||c.updateAfterDataIndex(),c.checkSelectionStatus(),g.scrollYLoad&&c.updateScrollYSpace(),c.$nextTick().then(()=>{c.updateCellAreas(),c.recalculate()}),c.dispatchEvent("row-dragend",{oldRow:n,newRow:d,dragPos:h,dragToChild:!!u,offsetIndex:y,_index:{newIndex:t,oldIndex:e}},s)}}).catch(()=>{}):Promise.resolve()},handleRowDragDragendEvent(e){var t=this;let l=t;var r=t,i=t.treeConfig,{fullAllDataRowIdData:a,prevDragToChild:o}=r,s=l.dragRow,n=t.computeTreeOpts,d=n.lazy,n=n.hasChild||n.hasChildField,{prevDragRow:h,prevDragPos:u}=r;i&&o&&!(d&&(i=a[(0,_util.getRowid)(t,h)],!h[n]||i&&i.treeLoaded))||t.handleRowDragSwapEvent(e,!0,s,h,u,o),hideDropTip(t),clearRowDropOrigin(t),r.prevDragToChild=!1,l.dragRow=null,l.dragCol=null,setTimeout(()=>{l.isDragRowMove=!1},500)},handleRowDragDragoverEvent(l){var r=this,i=r,a=r,o=r.treeConfig,s=i.fullAllDataRowIdData;let e=a.dragRow;var n=r.computeTreeOpts,{lazy:d,transform:h,parentField:u}=n,n=n.hasChild||n.hasChildField,{isPeerDrag:c,isCrossDrag:g,isToChildDrag:f}=r.computeRowDragOpts;if(e){var p=l.ctrlKey,m=l.currentTarget;let e=m.getAttribute("rowid")||"";var x=s[e];if(x){var v=x.row;let e=(0,_util.getRowid)(r,v);s=s[e];l.preventDefault();let t=a.dragRow;a=l.clientY-m.getBoundingClientRect().y<m.clientHeight/2?"top":"bottom";i.prevDragToChild=!!(o&&h&&f&&p),i.prevDragRow=v,i.prevDragPos=a,r.eqRow(t,v)||p&&o&&d&&v[n]&&s&&!s.treeLoaded||!g&&o&&h&&(c?t[u]!==v[u]:x.level)?showDropTip(r,l,m,null,!1,a):(showDropTip(r,l,m,null,!0,a),r.dispatchEvent("row-dragover",{oldRow:t,targetRow:v,dragPos:a},l))}}else l.preventDefault()},handleCellDragMousedownEvent(e,t){var l=this,r=l,i=l,r=(e.stopPropagation(),r).dragConfig,{trigger:a,dragStartMethod:o}=l.computeRowDragOpts,s=t.row,n=e.currentTarget,n="cell"===a||"row"===a?n:null==(a=n.parentElement)?void 0:a.parentElement,a=n.parentElement,o=o||(r?r.dragStartMethod:null);i.isDragRowMove=!1,clearRowDropOrigin(l),o&&!o(t)?(a.draggable=!1,i.dragRow=null,i.dragCol=null,hideDropTip(l)):(i.dragRow=s,i.dragCol=null,a.draggable=!0,updateRowDropOrigin(l,s),updateRowDropTipContent(l,n),l.dispatchEvent("row-dragstart",t,e))},handleCellDragMouseupEvent(){clearDragStatus(this)},handleHeaderCellDragDragstartEvent(e){e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},handleColDragSwapColumn(){let e=this;e.handleUpdateColumn(),e.parseColumns(!1).then(()=>{e.updateCellAreas(),e.saveCustomStore("update:sort")})},handleColDragSwapEvent(h,u,e,t,c,g){let f=this;var l=f;let p=f;var r=f;let m=l.mouseConfig,{isPeerDrag:x,isCrossDrag:v,isSelfToChildDrag:w,isToChildDrag:C,dragEndMethod:i}=f.computeColumnDragOpts,R=r.collectColumn,b="right"===c?1:0;if(t&&e&&t!==e){let n=e,d=t;return Promise.resolve(!i||i({oldColumn:n,newColumn:d,dragPos:c,dragToChild:!!g,offsetIndex:b})).then(i=>{if(i){let e=-1,t=-1,l={},r=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(n.parentId&&d.parentId)if(x&&!v){if(n.parentId!==d.parentId)return}else{if(!v)return;if(l[d.id]&&(r=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!v)return}else if(d.parentId){if(!v)return;if(l[d.id]&&(r=!0,!v||!w))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var a,o,s,i=_xeUtils.default.findTree(R,e=>e.id===n.id),i=(r&&v&&w?i&&({items:a,index:s}=i,(o=n.children||[]).forEach(e=>{e.parentId=n.parentId}),a.splice(s,1,...o),n.children=[]):i&&({items:a,index:s,parent:o}=i,a.splice(s,1),o||(e=s)),_xeUtils.default.findTree(R,e=>e.id===d.id));i&&({items:a,index:o,parent:s}=i,v&&C&&g?(n.parentId=d.id,d.children=(d.children||[]).concat([n])):(n.parentId=d.parentId,a.splice(o+b,0,n)),s||(t=o)),_xeUtils.default.eachTree(R,(e,t,l,r,i)=>{i||(e.renderSortNumber=t+1)}),p.isDragColMove=!0,m&&(f.clearSelected&&f.clearSelected(),f.clearCellAreas)&&(f.clearCellAreas(),f.clearCopyCellArea()),f.dispatchEvent("column-dragend",{oldColumn:n,newColumn:d,dragPos:c,dragToChild:!!g,offsetIndex:b,_index:{newIndex:t,oldIndex:e}},h),u&&f.handleColDragSwapColumn()}}).catch(()=>{})}return Promise.resolve()},handleHeaderCellDragDragendEvent(e){let t=this,l=t;var r=t,i=l.dragCol,{prevDragCol:a,prevDragPos:o,prevDragToChild:s}=r;t.handleColDragSwapEvent(e,!0,i,a,o,s),hideDropTip(t),clearColDropOrigin(t),r.prevDragToChild=!1,l.dragRow=null,l.dragCol=null,setTimeout(()=>{l.isDragColMove=!1,t.recalculate().then(()=>{loadScrollXData(t)})},500)},handleHeaderCellDragDragoverEvent(e){var t,l,r,i,a,o=this,s=o,n=o.dragCol,{isToChildDrag:d,isPeerDrag:h,isCrossDrag:u}=o.computeColumnDragOpts;n?(i=e.ctrlKey,a=(l=e.currentTarget).getAttribute("colid"),(a=o.getColumnById(a))&&(e.preventDefault(),t=e.clientX,r=t-l.getBoundingClientRect().x<l.clientWidth/2?"left":"right",s.prevDragToChild=!!(u&&d&&i),s.prevDragCol=a,s.prevDragPos=r,a.fixed||n&&n.id===a.id||!u&&(h?n.parentId!==a.parentId:a.parentId)?showDropTip(o,e,null,l,!1,r):(showDropTip(o,e,null,l,!0,r),o.dispatchEvent("column-dragover",{oldColumn:n,targetColumn:a,dragPos:r},e),(d=o.$refs.refElem)&&(i=o.$refs.refScrollXHandleElem,u=(s=o.$refs.tableBody)?s.$el:null,h=i||u)&&(l=d.getBoundingClientRect(),n=d.clientWidth,r=(a=o.$refs.leftContainer)?a.clientWidth:0,i=(s=o.$refs.rightContainer)?s.clientWidth:0,u=t-(l.x+r),d=l.x+n-i-t,0<u&&u<=28?(a=Math.floor(n/(14<u?240:120)),h.scrollLeft-=a*(28-u)):0<d&&d<=28&&(o=Math.floor(n/(14<d?240:120)),h.scrollLeft+=o*(28-d)))))):e.preventDefault()},handleHeaderCellDragMousedownEvent(e,t){var l=this,r=l,i=(e.stopPropagation(),l.computeColumnDragOpts),{trigger:i,dragStartMethod:a}=i,o=t.column,s=e.currentTarget,s="cell"===i?s:null==(i=s.parentElement)?void 0:i.parentElement;r.isDragColMove=!1,clearColDropOrigin(l),a&&!a(t)?(s.draggable=!1,r.dragRow=null,r.dragCol=null,hideDropTip(l)):(r.dragCol=o,r.dragRow=null,s.draggable=!0,updateColDropOrigin(l,o),updateColDropTipContent(l,s),l.dispatchEvent("column-dragstart",t,e))},handleHeaderCellDragMouseupEvent(){var e=this;clearColDropOrigin(this),hideDropTip(this),e.dragRow=null,e.dragCol=null,e.isDragColMove=!1},setPendingRow(e,t){let l=this;var r=l;let i=Object.assign({},r.pendingRowMaps);return e&&!_xeUtils.default.isArray(e)&&(e=[e]),t?e.forEach(e=>{var t=(0,_util.getRowid)(l,e);t&&!i[t]&&(i[t]=e)}):e.forEach(e=>{e=(0,_util.getRowid)(l,e);e&&i[e]&&delete i[e]}),r.pendingRowMaps=i,l.$nextTick()},togglePendingRow(e){let l=this;var t=l;let r=Object.assign({},t.pendingRowMaps);return(e=e&&!_xeUtils.default.isArray(e)?[e]:e).forEach(e=>{var t=(0,_util.getRowid)(l,e);t&&(r[t]?delete r[t]:r[t]=e)}),t.pendingRowMaps=r,l.$nextTick()},getPendingRecords(){var e=this.pendingRowMaps;let l=this.fullAllDataRowIdData,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},hasPendingByRow(e){var t=this.pendingRowMaps;return!!t[(0,_util.getRowid)(this,e)]},clearPendingRow(){return this.pendingRowMaps={},this.$nextTick()},sort(e,t){var l=this.sortOpts;let{multiple:r,remote:i,orders:o}=l;if(e&&_xeUtils.default.isString(e)&&(e=[{field:e,order:t}]),(e=_xeUtils.default.isArray(e)?e:[e]).length){let a;return r||clearAllSort(this),(r?e:[e[0]]).forEach((e,t)=>{let{field:l,order:r}=e,i=l;(i=_xeUtils.default.isString(l)?this.getColumnByField(l):i)&&(i.sortable||i.remoteSort)&&(a=a||i,-1===o.indexOf(r)&&(r=getNextSortOrder(this,i)),i.order!==r&&(i.order=r),i.sortTime=Date.now()+t)}),(!i||a&&a.remoteSort)&&this.handleTableData(!0),this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle()))}return this.$nextTick()},setSort(e,t){let o=this;let{multiple:l,remote:r,orders:s}=o.computeSortOpts;if((e=_xeUtils.default.isArray(e)?e:[e])&&e.length){l||(e=[e[0]],clearAllSort(o));let a=null;return e.forEach((e,t)=>{let{field:l,order:r}=e,i=l;_xeUtils.default.isString(l)&&(i=o.getColumnByField(l)),a=a||i,i&&i.sortable&&(-1===s.indexOf(r)&&(r=getNextSortOrder(o,i)),i.order!==r&&(i.order=r),i.sortTime=Date.now()+t)}),t&&(r||o.handleTableData(!0),o.handleColumnSortEvent(new Event("click"),a)),o.$nextTick().then(()=>(o.updateCellAreas(),o.updateStyle()))}return o.$nextTick()},clearSort(e){var t=this.sortOpts;return e?(e=(0,_util.handleFieldOrColumn)(this,e))&&(e.order=null):clearAllSort(this),t.remote||this.handleTableData(!0),this.$nextTick().then(this.updateStyle)},getSortColumn(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getSortColumn","getSortColumns"]),_xeUtils.default.find(this.tableFullColumn,e=>(e.sortable||e.remoteSort)&&e.order)},isSort(e){return e?(e=(0,_util.handleFieldOrColumn)(this,e))&&e.sortable&&!!e.order:0<this.getSortColumns().length},getSortColumns(){var{multiple:e,chronological:t}=this.sortOpts;let r=[];return this.tableFullColumn.forEach(e=>{var{field:t,order:l}=e;(e.sortable||e.remoteSort)&&l&&r.push({column:e,field:t,property:t,order:l,sortTime:e.sortTime})}),e&&t&&1<r.length?_xeUtils.default.orderBy(r,"sortTime"):r},closeFilter(){var e=this.filterStore,{column:t,visible:l}=e;return Object.assign(e,{isAllSelected:!1,isIndeterminate:!1,options:[],visible:!1}),l&&this.emitEvent("filter-visible",{column:t,field:t.field,property:t.field,filterList:this.getCheckedFilters(),visible:!1},null),this.$nextTick()},isActiveFilterByColumn(e){e=(0,_util.handleFieldOrColumn)(this,e);return e?e.filters&&e.filters.some(e=>e.checked):0<this.getCheckedFilters().length},isFilter(e){return this.isActiveFilterByColumn(e)},isRowExpandLoaded(e){var t=this.fullAllDataRowIdData,t=t[(0,_util.getRowid)(this,e)];return t&&!!t.expandLoaded},clearRowExpandLoaded(e){var t=this,l=t,r=t,i=Object.assign({},l.rowExpandLazyLoadedMaps),r=r.fullAllDataRowIdData,a=t.computeExpandOpts.lazy,e=(0,_util.getRowid)(t,e),r=r[e];return a&&r&&(r.expandLoaded=!1,delete i[e]),l.rowExpandLazyLoadedMaps=i,t.$nextTick()},reloadRowExpand(e){var{expandOpts:t,rowExpandLazyLoadedMaps:l}=this,t=t.lazy,r=(0,_util.getRowid)(this,e);return t&&!l[r]&&this.clearRowExpandLoaded(e).then(()=>this.handleAsyncRowExpand(e)),this.$nextTick()},reloadExpandContent(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["reloadExpandContent","reloadRowExpand"]),this.reloadRowExpand(e)},triggerRowExpandEvent(e,t){var{expandOpts:l,rowExpandLazyLoadedMaps:r,expandColumn:i}=this,t=t.row,{lazy:l,trigger:a}=l;"manual"===a||(e.stopPropagation(),a=(0,_util.getRowid)(this,t),l&&r[a])||(l=!this.isRowExpandByRow(t),r=this.getColumnIndex(i),a=this.getVMColumnIndex(i),this.setRowExpand(t,l),this.emitEvent("toggle-row-expand",{expanded:l,column:i,columnIndex:r,$columnIndex:a,row:t,rowIndex:this.getRowIndex(t),$rowIndex:this.getVMRowIndex(t)},e))},toggleRowExpand(e){return this.setRowExpand(e,!this.isRowExpandByRow(e))},handleDefaultRowExpand(){let{expandOpts:e,fullDataRowIdData:l}=this;var{expandAll:t,expandRowKeys:r}=e;if(t)this.setAllRowExpand(!0);else if(r){let t=[];r.forEach(e=>{l[e]&&t.push(l[e].row)}),this.setRowExpand(t,!0)}},setAllRowExpand(e){var{treeConfig:t,treeOpts:l,tableFullData:r,tableFullTreeData:i}=this,l=l.children||l.childrenField;let a=[];return t?_xeUtils.default.eachTree(i,e=>{a.push(e)},{children:l}):a=r,this.setRowExpand(a,e)},handleAsyncRowExpand(o){let s=this,n=s,d=s;return new Promise(r=>{var e=this.expandOpts,e=e.loadMethod;if(e){var i=d.fullAllDataRowIdData,a=Object.assign({},n.rowExpandLazyLoadedMaps);let t=(0,_util.getRowid)(s,o),l=i[t];a[t]=o,n.rowExpandLazyLoadedMaps=a,e({$table:s,row:o,rowIndex:s.getRowIndex(o),$rowIndex:s.getVMRowIndex(o)}).then(()=>{var e=Object.assign({},n.rowExpandedMaps);l&&(l.expandLoaded=!0),e[t]=o,n.rowExpandedMaps=e}).catch(()=>{l&&(l.expandLoaded=!1)}).finally(()=>{var e=Object.assign({},n.rowExpandLazyLoadedMaps);e[t]&&delete e[t],n.rowExpandLazyLoadedMaps=e,s.$nextTick().then(()=>s.recalculate()).then(()=>r())})}else r()})},setRowExpand(e,t){let{rowExpandedMaps:l,fullAllDataRowIdData:r,rowExpandLazyLoadedMaps:i,expandOpts:a,expandColumn:o}=this,s=Object.assign({},l),{reserve:n,lazy:d,accordion:h,toggleMethod:u}=a,c=[],g=this.getColumnIndex(o),f=this.getVMColumnIndex(o);return e&&(_xeUtils.default.isArray(e)||(e=[e]),h&&(s={},e=e.slice(e.length-1,e.length)),e=u?e.filter(e=>u({expanded:t,column:o,columnIndex:g,$columnIndex:f,row:e,rowIndex:this.getRowIndex(e),$rowIndex:this.getVMRowIndex(e)})):e,t?e.forEach(e=>{var t,l=(0,_util.getRowid)(this,e);s[l]||(t=r[l],d&&!t.expandLoaded&&!i[l]?c.push(this.handleAsyncRowExpand(e)):s[l]=e)}):e.forEach(e=>{e=(0,_util.getRowid)(this,e);s[e]&&delete s[e]}),n)&&e.forEach(e=>this.handleRowExpandReserve(e,t)),this.rowExpandedMaps=s,Promise.all(c).then(this.recalculate)},isRowExpandByRow(e){var t=this.rowExpandedMaps;return!!t[(0,_util.getRowid)(this,e)]},isExpandByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isExpandByRow","isRowExpandByRow"]),this.isRowExpandByRow(e)},clearRowExpand(){var{expandOpts:e,tableFullData:t}=this,e=e.reserve;let l=this.getRowExpandRecords();return this.rowExpandedMaps={},e&&t.forEach(e=>this.handleRowExpandReserve(e,!1)),this.$nextTick().then(()=>{l.length&&this.recalculate()})},clearRowExpandReserve(){return this.rowExpandedReserveRowMap={},this.$nextTick()},handleRowExpandReserve(e,t){var{rowExpandedReserveRowMap:l,expandOpts:r}=this;r.reserve&&(r=(0,_util.getRowid)(this,e),t?l[r]=e:l[r]&&delete l[r])},getRowExpandRecords(){let t=[];return _xeUtils.default.each(this.rowExpandedMaps,e=>{e&&t.push(e)}),t},getTreeExpandRecords(){let t=[];return _xeUtils.default.each(this.treeExpandedMaps,e=>{e&&t.push(e)}),t},getTreeStatus(){return this.treeConfig?{config:this.treeOpts,rowExpandeds:this.getTreeExpandRecords()}:null},isTreeExpandLoaded(e){var t=this.fullAllDataRowIdData,t=t[(0,_util.getRowid)(this,e)];return t&&!!t.treeLoaded},clearTreeExpandLoaded(e){let l=this;var t=l,r=l;let i=Object.assign({},t.treeExpandedMaps),a=r.fullAllDataRowIdData;r=l.computeTreeOpts.transform;return e&&(e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{var e=(0,_util.getRowid)(l,e),t=a[e];t&&(t.treeLoaded=!1,i[e])&&delete i[e]}),t.treeExpandedMaps=i,r?(handleVirtualTreeToList(l),l.handleTableData()):l.$nextTick()},reloadTreeExpand(e){let t=this;var{treeOpts:l,treeExpandLazyLoadedMaps:r}=this;let{transform:i,lazy:a}=l;var l=l.hasChild||l.hasChildField,o=(0,_util.getRowid)(this,e);return a&&e[l]&&!r[o]?this.clearTreeExpandLoaded(e).then(()=>this.handleAsyncTreeExpandChilds(e)).then(()=>{if(i)return handleVirtualTreeToList(t),this.handleTableData()}).then(()=>this.recalculate()):this.$nextTick()},reloadTreeChilds(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["reloadTreeChilds","reloadTreeExpand"]),this.reloadTreeExpand(e)},triggerTreeExpandEvent(e,t){var{treeOpts:l,treeExpandLazyLoadedMaps:r}=this,{row:t,column:i}=t,{lazy:l,trigger:a}=l;"manual"===a||(e.stopPropagation(),a=(0,_util.getRowid)(this,t),l&&r[a])||(l=!this.isTreeExpandByRow(t),r=this.getColumnIndex(i),a=this.getVMColumnIndex(i),this.setTreeExpand(t,l),this.emitEvent("toggle-tree-expand",{expanded:l,column:i,columnIndex:r,$columnIndex:a,row:t},e))},toggleTreeExpand(e){return this.setTreeExpand(e,!this.isTreeExpandByRow(e))},handleDefaultTreeExpand(){let{treeConfig:e,treeOpts:t,tableFullData:a}=this;if(e){var{expandAll:l,expandRowKeys:o}=t;let i=t.children||t.childrenField;if(l)this.setAllTreeExpand(!0);else if(o){let l=[],r=(0,_util.getRowkey)(this);o.forEach(t=>{var e=_xeUtils.default.findTree(a,e=>t===_xeUtils.default.get(e,r),{children:i});e&&l.push(e.item)}),this.setTreeExpand(l,!0)}}},handleAsyncTreeExpandChilds(a){let o=this;var{treeOpts:e,checkboxOpts:t}=this;let{transform:s,loadMethod:n}=e,d=t.checkStrictly;return new Promise(i=>{if(n){let{treeExpandLazyLoadedMaps:t,fullAllDataRowIdData:e}=this,l=(0,_util.getRowid)(o,a),r=e[l];t[l]=a,Promise.resolve(n({$table:o,row:a})).then(e=>{if(r&&(r.treeLoaded=!0),t[l]&&delete t[l],e=_xeUtils.default.isArray(e)?e:[])return this.loadTreeChildren(a,e).then(e=>{var t=this.treeExpandedMaps;return e.length&&!t[l]&&(t[l]=a),!d&&this.isCheckedByCheckboxRow(a)&&this.handleCheckedCheckboxRow(e,!0),this.$nextTick().then(()=>{if(s)return this.handleTableData(),this.updateTreeDataIndex(),this.$nextTick()})})}).catch(()=>{var e=this.treeExpandLazyLoadedMaps;r&&(r.treeLoaded=!1),e[l]&&delete e[l]}).finally(()=>{this.$nextTick().then(()=>this.recalculate()).then(()=>i())})}else i()})},setAllTreeExpand(e){var{tableFullData:t,treeOpts:l}=this;let r=l.lazy,i=l.children||l.childrenField,a=[];return _xeUtils.default.eachTree(t,e=>{var t=e[i];(r||t&&t.length)&&a.push(e)},{children:i}),this.setTreeExpand(a,e)},handleBaseTreeExpand(e,t){let{fullAllDataRowIdData:r,tableFullData:l,treeExpandedMaps:i,treeOpts:a,treeExpandLazyLoadedMaps:o,treeNodeColumn:s}=this,{reserve:n,lazy:d,accordion:h,toggleMethod:u}=a,c=Object.assign({},i),g=a.children||a.childrenField,f=a.hasChild||a.hasChildField,p=[],m=this.getColumnIndex(s),x=this.getVMColumnIndex(s),v=u?e.filter(e=>u({expanded:t,column:s,columnIndex:m,$columnIndex:x,row:e})):e;return h&&(v=v.length?[v[v.length-1]]:[],e=_xeUtils.default.findTree(l,e=>e===v[0],{children:g}))&&e.items.forEach(e=>{e=(0,_util.getRowid)(this,e);c[e]&&delete c[e]}),t?v.forEach(e=>{var t,l=(0,_util.getRowid)(this,e);c[l]||(t=r[l])&&(d&&e[f]&&!t.treeLoaded&&!o[l]?p.push(this.handleAsyncTreeExpandChilds(e)):e[g]&&e[g].length&&(c[l]=e))}):v.forEach(e=>{e=(0,_util.getRowid)(this,e);c[e]&&delete c[e]}),n&&v.forEach(e=>this.handleTreeExpandReserve(e,t)),this.treeExpandedMaps=c,Promise.all(p).then(()=>this.recalculate())},handleVirtualTreeExpand(e,t){let l=this;return this.handleBaseTreeExpand(e,t).then(()=>{handleVirtualTreeToList(l),this.handleTableData(),this.updateTreeDataIndex()}).then(()=>this.recalculate()).then(()=>{setTimeout(()=>{this.updateCellAreas()},30)})},setTreeExpand(e,t){var l=this.treeOpts,l=l.transform;return e&&(e=_xeUtils.default.isArray(e)?e:[e]).length?l?this.handleVirtualTreeExpand(e,t):this.handleBaseTreeExpand(e,t):this.$nextTick()},isTreeExpandByRow(e){var t=this.treeExpandedMaps;return!!t[(0,_util.getRowid)(this,e)]},clearTreeExpand(){let e=this;var{treeOpts:t,tableFullData:l}=this;let{transform:r,reserve:i}=t;t=t.children||t.childrenField;let a=this.getTreeExpandRecords();return this.treeExpandedMaps={},i&&_xeUtils.default.eachTree(l,e=>this.handleTreeExpandReserve(e,!1),{children:t}),this.handleTableData().then(()=>{if(r)return handleVirtualTreeToList(e),this.handleTableData()}).then(()=>{a.length&&this.recalculate()})},clearTreeExpandReserve(){return this.treeExpandedReserveRowMap={},this.$nextTick()},handleTreeExpandReserve(e,t){var{treeExpandedReserveRowMap:l,treeOpts:r}=this;r.reserve&&(r=(0,_util.getRowid)(this,e),t?l[r]=e:l[r]&&delete l[r])},getScroll(){var{$refs:e,scrollXLoad:t,scrollYLoad:l}=this,e=e.tableBody.$el;return{virtualX:t,virtualY:l,scrollTop:e.scrollTop,scrollLeft:e.scrollLeft}},handleScrollEvent(e,t,l,r,i,a){var o=this,s=o,n=o,d=o.highlightHoverRow,{lastScrollLeft:h,lastScrollTop:u}=n,c=o.$refs.tableBody,c=c?c.$el:null,g=o.computeRowOpts,f=o.$refs.validTip,p=o.$refs.tooltip,m=c?c.clientHeight:0,x=c?c.clientWidth:0,v=c?c.scrollHeight:0,c=c?c.scrollWidth:0;let w=!1,C=!1,R=!1,b=!1,_="",T=!1,E=!1,D=!1,S=!1;l&&(y=o.computeScrollXThreshold,(R=i<=0)||(b=c<=i+x),h<i?(_="right",c-y<=i+x&&(S=!0)):(_="left",i<=y&&(D=!0)),o.checkScrolling(),n.lastScrollLeft=i),t&&(h=o.computeScrollYThreshold,(w=r<=0)||(C=v<=r+m),u<r?(_="bottom",v-h<=r+m&&(E=!0)):(_="top",r<=h&&(T=!0)),n.lastScrollTop=r),s.isDragColMove=!1,s.isDragRowMove=!1,s.lastScrollTime=Date.now();var y=Object.assign({scrollTop:r,scrollLeft:i,bodyHeight:m,bodyWidth:x,scrollHeight:v,scrollWidth:c,isX:l,isY:t,isTop:w,isBottom:C,isLeft:R,isRight:b,direction:_},a);checkLastSyncScroll(o,l,t),(g.isHover||d)&&o.clearHoverRow(),f&&f.visible&&f.close(),p&&p.visible&&p.close(),(E||T||S||D)&&o.dispatchEvent("scroll-boundary",y,e),o.dispatchEvent("scroll",y,e)},lazyScrollXData(){let e=this,t=e;var{lxTimeout:l,lxRunTime:r,scrollXStore:i}=t,i=i.visibleSize,i=Math.min(80,Math.floor(3*i));l&&clearTimeout(l),(!r||r+i<Date.now())&&(t.lxRunTime=Date.now(),loadScrollXData(e)),t.lxTimeout=setTimeout(()=>{t.lxTimeout=void 0,t.lxRunTime=void 0,loadScrollXData(e)},i)},lazyScrollYData(){let e=this,t=e;var{lyTimeout:l,lyRunTime:r,scrollYStore:i}=t,i=i.visibleSize,i=Math.min(80,Math.floor(i));l&&clearTimeout(l),(!r||r+i<Date.now())&&(t.lyRunTime=Date.now(),loadScrollYData(e)),t.lyTimeout=setTimeout(()=>{t.lyTimeout=void 0,t.lyRunTime=void 0,loadScrollYData(e)},i)},triggerScrollXEvent(){this.computeSXOpts.immediate?loadScrollXData(this):this.lazyScrollXData()},triggerScrollYEvent(){this.computeSYOpts.immediate?loadScrollYData(this):this.lazyScrollYData()},scrollXEvent(e){var t=this,l=t,{intoRunScroll:r,inFooterScroll:i,inBodyScroll:a,lastScrollTop:o}=l;if(!r){if(i)return;if(a)return}var r=t.$refs.tableHeader,i=t.$refs.tableBody,a=t.$refs.tableFooter,i=i.$el,r=r?r.$el:null,a=a?a.$el:null,s=t.$refs.refScrollYHandleElem,n=e.currentTarget.scrollLeft,s=s||i;let d=0;s=(d=s?s.scrollTop:d)!==o;l.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,n),(0,_dom.setScrollLeft)(r,n),(0,_dom.setScrollLeft)(a,n),t.triggerScrollXEvent(e),t.handleScrollEvent(e,s,!0,d,n,{type:"table",fixed:""})},scrollYEvent(e){var t=this,l=t,{intoRunScroll:r,inFooterScroll:i,inBodyScroll:a,lastScrollLeft:o}=l;if(!r){if(i)return;if(a)return}var r=t.$refs.tableBody,i=t.$refs.leftBody,a=t.$refs.rightBody,r=r.$el,i=i?i.$el:null,a=a?a.$el:null,s=t.$refs.refScrollXHandleElem,n=e.currentTarget.scrollTop,s=s||r;let d=0;s=(d=s?s.scrollLeft:d)!==o;l.inVirtualScroll=!0,(0,_dom.setScrollTop)(r,n),(0,_dom.setScrollTop)(i,n),(0,_dom.setScrollTop)(a,n),t.triggerScrollYEvent(e),t.handleScrollEvent(e,!0,s,n,d,{type:"table",fixed:""})},handleTableColumn(){let{scrollXLoad:e,visibleColumn:t,scrollXStore:l,fullColumnIdData:r}=this;var i=e?t.slice(l.startIndex,l.endIndex):t.slice(0);i.forEach((e,t)=>{e=e.id,e=r[e];e&&(e.$index=t)}),this.tableColumn=i},handleUpdateColumn(){var e=this,t=_xeUtils.default.orderBy(e.collectColumn,"renderSortNumber"),t=(e.collectColumn=t,getColumnList(t));e.tableFullColumn=t,cacheColumnMap(this)},updateScrollXData(){let e=this;let t=e.showOverflow;return e.handleTableColumn(),calcCellHeight(e),e.$nextTick().then(()=>{calcCellHeight(e),e.handleTableColumn(),e.updateScrollXSpace(),t||e.updateScrollYSpace()})},updateScrollXSpace(){let{$refs:e,isGroup:t,elemStore:r,visibleColumn:l,scrollXStore:i,scrollXLoad:a,tableWidth:o,scrollbarWidth:s}=this;var{tableHeader:n,tableBody:d,tableFooter:h}=e,d=d?d.$el:null;if(d){var n=n?n.$el:null,h=h?h.$el:null,n=n?n.querySelector(".vxe-table--header"):null,d=d.querySelector(".vxe-table--body"),h=h?h.querySelector(".vxe-table--footer"):null,u=l.slice(0,i.startIndex).reduce((e,t)=>e+t.renderWidth,0);let e="";a&&(e=u+"px"),n&&(n.style.marginLeft=t?"":e),d.style.marginLeft=e,h&&(h.style.marginLeft=e);["main"].forEach(l=>{["header","body","footer"].forEach(e=>{var t=r[l+`-${e}-xSpace`];t&&(t.style.width=a?o+("header"===e?s:0)+"px":"")})});u=this.$refs.refScrollXSpaceElem;u&&(u.style.width=o+s+"px"),this.$nextTick(this.updateStyle)}},updateScrollYData(){let e=this;return e.handleTableData(),calcCellHeight(e),e.$nextTick().then(()=>{calcCellHeight(e),e.handleTableData(),e.updateScrollYSpace()})},updateScrollYSpace(){let{showOverflow:e,elemStore:l,scrollYStore:t,scrollYLoad:r,afterFullData:i,fullAllDataRowIdData:a}=this;var{startIndex:o,rowHeight:s}=t;let n=0,d=0;let h="",u="";if(r){if(e)n=i.length*s,d=Math.max(0,o*s);else{for(let e=0;e<i.length;e++){var c=i[e],c=a[(0,_util.getRowid)(this,c)];c&&(n+=c.height||s)}for(let e=0;e<o;e++){var g=i[e],g=a[(0,_util.getRowid)(this,g)];g&&(d+=g.height||s)}}h=d+"px",u=n+"px"}["main","left","right"].forEach(t=>{var e=l[t+"-body-table"];e&&(e.style.marginTop=h),["header","body","footer"].forEach(e=>{e=l[t+`-${e}-ySpace`];e&&(e.style.height=u)})});var f=this.$refs.refScrollYSpaceElem;f&&(f.style.height=u),this.$nextTick(this.updateStyle)},updateScrollYStatus(){return updateScrollYStatus(this)},scrollTo(e,t){let l=this,r=l;var i,a=this.$refs,{tableBody:a,tableHeader:o,leftBody:s,rightBody:n,tableFooter:d}=a,a=a?a.$el:null,s=s?s.$el:null,n=n?n.$el:null,o=o?o.$el:null,d=d?d.$el:null;return r.intoRunScroll=!0,_xeUtils.default.isNumber(e)&&((i=l.$refs.refScrollXHandleElem)?(0,_dom.setScrollLeft)(i,e):((0,_dom.setScrollLeft)(a,e),(0,_dom.setScrollLeft)(o,e),(0,_dom.setScrollLeft)(d,e))),_xeUtils.default.isNumber(t)&&((i=l.$refs.refScrollYHandleElem)?(0,_dom.setScrollTop)(i,t):((0,_dom.setScrollTop)(a,t),(0,_dom.setScrollTop)(s,t),(0,_dom.setScrollTop)(n,t))),this.scrollXLoad||this.scrollYLoad?new Promise(e=>{setTimeout(()=>{l.$nextTick(()=>{r.intoRunScroll=!1,e()})})}):this.$nextTick()},scrollToRow(e,t){var l=[];return e&&(this.treeConfig?l.push(this.scrollToTreeRow(e)):l.push((0,_util.rowToVisible)(this,e))),t&&l.push(handleScrollToRowColumn(this,t,e)),Promise.all(l)},scrollToColumn(e){return handleScrollToRowColumn(this,e)},scrollToTreeRow(t){var{tableFullData:e,treeConfig:r,treeOpts:l}=this,l=l.children||l.childrenField;let i=[];if(r){r=_xeUtils.default.findTree(e,e=>e===t,{children:l});if(r){let l=r.nodes;l.forEach((e,t)=>{t<l.length-1&&!this.isTreeExpandByRow(e)&&i.push(this.setTreeExpand(e,!0))})}}return Promise.all(i).then(()=>(0,_util.rowToVisible)(this,t))},clearScroll(){var e=this,{scrollXStore:t,scrollYStore:l}=e,r=e.$refs.tableBody,i=e.$refs.tableHeader,a=e.$refs.tableFooter,o=e.$refs.leftBody,s=e.$refs.rightBody;let n=o?o.$el:null,d=r?r.$el:null,h=s?s.$el:null,u=i?i.$el:null,c=a?a.$el:null;o=e.$refs.refScrollXHandleElem,o?(0,_dom.setScrollLeft)(o,0):((0,_dom.setScrollLeft)(d,0),(0,_dom.setScrollLeft)(u,0),(0,_dom.setScrollLeft)(c,0)),r=e.$refs.refScrollYHandleElem;return r?(0,_dom.setScrollTop)(r,0):((0,_dom.setScrollTop)(d,0),(0,_dom.setScrollTop)(n,0),(0,_dom.setScrollTop)(h,0)),t.startIndex=0,t.endIndex=t.visibleSize,l.startIndex=0,l.endIndex=l.visibleSize,e.$nextTick().then(()=>{(0,_dom.setScrollLeft)(d,0),(0,_dom.setScrollLeft)(u,0),(0,_dom.setScrollLeft)(c,0),(0,_dom.setScrollTop)(d,0),(0,_dom.setScrollTop)(n,0),(0,_dom.setScrollTop)(h,0)})},updateFooter(){var{showFooter:e,visibleColumn:t,footerData:l,footerMethod:r}=this;let i=[];return e&&l&&l.length?i=l.slice(0):e&&r&&(i=t.length?r({columns:t,data:this.afterFullData,$table:this,$grid:this.$xegrid}):[]),this.footerTableData=i,this.$nextTick()},updateStatus(a,o){let s=!_xeUtils.default.isUndefined(o);return this.$nextTick().then(()=>{let{$refs:e,editRules:t,validStore:i}=this;var l=e.tableBody;if(a&&l&&t){let{row:l,column:r}=a;if(this.hasCellRules&&this.hasCellRules("change",l,r)){let t=this.getCellElement(l,r);if(t)return this.validCellRules("change",l,r,o).then(()=>{s&&i.visible&&(0,_util.setCellValue)(l,r,o),this.clearValidate(l,r)}).catch(({rule:e})=>{s&&(0,_util.setCellValue)(l,r,o),this.showValidTooltip({rule:e,row:l,column:r,cell:t})})}}})},handleDefaultMergeCells(){this.setMergeCells(this.mergeCells)},setMergeCells(e){return this.spanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-cells","span-method"]),setMerges(this,e,this.mergeList,this.afterFullData),this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle()))},removeMergeCells(e){this.spanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-cells","span-method"]);let t=removeMerges(this,e,this.mergeList,this.afterFullData);return this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle(),t))},getMergeCells(){return this.mergeList.slice(0)},clearMergeCells(){return this.mergeList=[],this.$nextTick().then(()=>this.updateStyle())},handleDefaultMergeFooterItems(){this.setMergeFooterItems(this.mergeFooterItems)},setMergeFooterItems(e){return this.footerSpanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-footer-items","footer-span-method"]),setMerges(this,e,this.mergeFooterList,null),this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle()))},removeMergeFooterItems(e){this.footerSpanMethod&&(0,_log.errLog)("vxe.error.errConflicts",["merge-footer-items","footer-span-method"]);let t=removeMerges(this,e,this.mergeFooterList,null);return this.$nextTick().then(()=>(this.updateCellAreas(),this.updateStyle(),t))},getMergeFooterItems(){return this.mergeFooterList.slice(0)},clearMergeFooterItems(){return this.mergeFooterList=[],this.$nextTick().then(()=>this.updateStyle())},updateZindex(){this.zIndex?this.tZindex=this.zIndex:this.tZindex<(0,_utils.getLastZIndex)()&&(this.tZindex=(0,_utils.nextZIndex)())},updateCellAreas(){return this.mouseConfig&&this.mouseOpts.area&&this.handleRecalculateCellAreas?this.handleRecalculateCellAreas():this.$nextTick()},dispatchEvent(e,t,l){this.$emit(e,createEvent(l,{$table:this,$grid:this.$xegrid},t))},emitEvent(e,t,l){this.$emit(e,Object.assign({$table:this,$grid:this.$xegrid,$event:l},t))},focus(){return this.isActivated=!0,this.$nextTick()},blur(){return this.isActivated=!1,this.$nextTick()},connect(e){return e&&e.syncUpdate?(e.syncUpdate({collectColumn:this.collectColumn,$table:this}),this.$toolbar=e):(0,_log.errLog)("vxe.error.barUnableLink"),this.$nextTick()},getCell(e,t){return this.getCellElement(e,t)},findRowIndexOf(e,t){return t?_xeUtils.default.findIndexOf(e,e=>this.eqRow(e,t)):-1},eqRow(e,t){return!(!e||!t||e!==t&&(0,_util.getRowid)(this,e)!==(0,_util.getRowid)(this,t))},getSetupOptions(){return getConfig()}},funcs="setFilter,openFilter,clearFilter,saveFilterPanel,resetFilterPanel,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,openCustom,closeCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox".split(",");funcs.forEach(t=>{Methods[t]=function(...e){return"development"!==process.env.NODE_ENV||this["_"+t]||("openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableExportModule"]):"fullValidate,validate".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableValidatorModule"]):"setFilter,openFilter,clearFilter,getCheckedFilters".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableFilterModule"]):"insert,insertAt,insertNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,getEditRecord,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell".split(",").includes(t)?(0,_log.errLog)("vxe.error.reqModule",["VxeTableEditModule"]):"openCustom".split(",").includes(t)&&(0,_log.errLog)("vxe.error.reqModule",["VxeTableCustomModule"])),this["_"+t]?this["_"+t](...e):null}});var _default=exports.default=Methods;
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.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 = "3.12.6";
16
+ const version = exports.version = "3.12.7";
17
17
  _core.VxeUI.version = version;
18
18
  _core.VxeUI.tableVersion = version;
19
19
  _core.VxeUI.setConfig({