vxe-table
Version:
一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟滚动、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、虚拟列表、模态窗口、自定义模板、渲染器、贼灵活的配置项、扩展接口等...
1 lines • 68 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ctor=_interopRequireDefault(require("xe-utils/ctor")),_conf=_interopRequireDefault(require("../../conf")),_cell=_interopRequireDefault(require("./cell")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var getRowid=_tools.UtilTools.getRowid,getRowkey=_tools.UtilTools.getRowkey,setCellValue=_tools.UtilTools.setCellValue,getCellLabel=_tools.UtilTools.getCellLabel,hasChildrenList=_tools.UtilTools.hasChildrenList,getColumnList=_tools.UtilTools.getColumnList,browse=_tools.DomTools.browse,calcHeight=_tools.DomTools.calcHeight,hasClass=_tools.DomTools.hasClass,addClass=_tools.DomTools.addClass,removeClass=_tools.DomTools.removeClass,getEventTargetNode=_tools.DomTools.getEventTargetNode,isWebkit=browse["-webkit"]&&!browse.edge,debounceScrollYDuration=browse.msie?40:20,resizableStorageKey="VXE_TABLE_CUSTOM_COLUMN_WIDTH",visibleStorageKey="VXE_TABLE_CUSTOM_COLUMN_VISIBLE";function getRowUniqueId(){return _ctor.default.uniqueId("row_")}function eqCellNull(e){return""===e||_ctor.default.eqNull(e)}function eqCellValue(e,t,r){var o=_ctor.default.get(e,r),i=_ctor.default.get(t,r);return!(!eqCellNull(o)||!eqCellNull(i))||(_ctor.default.isString(o)||_ctor.default.isNumber(o)?o==i:_ctor.default.isEqual(o,i))}function getNextSortOrder(e,t){var r=e.sortOpts.orders,o=t.order||null,i=r.indexOf(o)+1;return r[i<r.length?i:0]}function getCustomStorageMap(e){var t=_conf.default.version,r=_ctor.default.toStringJSON(localStorage.getItem(e));return r&&r._v===t?r:{_v:t}}function getRecoverRow(e,t){var r=e.fullAllDataRowMap;return t.filter(function(e){return r.has(e)})}function handleReserveRow(e,t){var r=e.fullDataRowIdData,o=[];return _ctor.default.each(t,function(e,t){r[t]&&-1===o.indexOf(r[t].row)&&o.push(r[t].row)}),o}function computeVirtualX(e){var t=e.$refs,r=e.visibleColumn,o=t.tableBody,i=o?o.$el:null;if(i){for(var n=i.scrollLeft,l=n+i.clientWidth,s=-1,a=0,c=0,h=0,u=r.length;h<u&&(a+=r[h].renderWidth,-1===s&&n<a&&(s=h),!(0<=s&&(c++,l<a)));h++);return{toVisibleIndex:Math.max(0,s),visibleSize:Math.max(8,c)}}return{toVisibleIndex:0,visibleSize:8}}function computeVirtualY(e){var t=e.$refs,r=e.vSize,o=e.rowHeightMaps,i=t.tableHeader,n=t.tableBody,l=n?n.$el:null;if(l){var s,a=i?i.$el:null,c=0;return!(s=l.querySelector("tr"))&&a&&(s=a.querySelector("tr")),s&&(c=s.clientHeight),c||(c=o[r||"default"]),{rowHeight:c,visibleSize:Math.max(8,Math.ceil(l.clientHeight/c)+2)}}return{rowHeight:0,visibleSize:8}}function calculateMergerOffserIndex(e,t,r){for(var o=0,i=e.length;o<i;o++){var n=e[o],l=t.startIndex,s=t.endIndex,a=n[r],c=a+n[r+"span"];a<l&&l<c&&(t.startIndex=a),a<s&&s<c&&(t.endIndex=c),t.startIndex===l&&t.endIndex===s||(o=-1)}}function setMerges(e,t,c,h){if(t){var r=e.treeConfig,u=e.visibleColumn;if(r)throw new Error(_tools.UtilTools.getLog("vxe.error.noTree",["merge-footer-items"]));_ctor.default.isArray(t)||(t=[t]),t.forEach(function(e){var t=e.row,r=e.col,o=e.rowspan,i=e.colspan;if(h&&_ctor.default.isNumber(t)&&(t=h[t]),_ctor.default.isNumber(r)&&(r=u[r]),(h?t:_ctor.default.isNumber(t))&&r&&(o||i)&&(o=_ctor.default.toNumber(o)||1,i=_ctor.default.toNumber(i)||1,1<o||1<i)){var n=_ctor.default.findIndexOf(c,function(e){return e._row===t&&e._col===r}),l=c[n];if(l)l.rowspan=o,l.colspan=i,l._rowspan=o,l._colspan=i;else{var s=h?h.indexOf(t):t,a=u.indexOf(r);c.push({row:s,col:a,rowspan:o,colspan:i,_row:t,_col:r,_rowspan:o,_colspan:i})}}})}}function removeMerges(e,t,n,l){var s=[];if(t){var r=e.treeConfig,a=e.visibleColumn;if(r)throw new Error(_tools.UtilTools.getLog("vxe.error.noTree",["merge-cells"]));_ctor.default.isArray(t)||(t=[t]),t.forEach(function(e){var t=e.row,r=e.col;l&&_ctor.default.isNumber(t)&&(t=l[t]),_ctor.default.isNumber(r)&&(r=a[r]);var o=_ctor.default.findIndexOf(n,function(e){return e._row===t&&e._col===r});if(-1<o){var i=n.splice(o,1);s.push(i[0])}})}return s}function clearAllSort(e){e.tableFullColumn.forEach(function(e){e.order=null})}var Methods={getParentElem:function(){return this.$xegrid?this.$xegrid.$el.parentNode:this.$el.parentNode},getParentHeight:function(){return this.$xegrid?this.$xegrid.getParentHeight():this.getParentElem().clientHeight},getExcludeHeight:function(){return this.$xegrid?this.$xegrid.getExcludeHeight():0},clearAll:function(){return(0,_util.clearTableAllStatus)(this)},syncData:function(){var e=this;return this.$nextTick().then(function(){return e.tableData=[],e.$nextTick().then(function(){return e.loadTableData(e.tableFullData)})})},updateData:function(){return this.handleTableData(!0).then(this.updateFooter).then(this.recalculate)},handleTableData:function(e){var t=this.scrollYLoad,r=this.scrollYStore,o=e?this.updateAfterFullData():this.afterFullData;return this.tableData=t?o.slice(r.startIndex,r.endIndex):o.slice(0),this.$nextTick()},loadTableData:function(e){var t=this,r=this.keepSource,o=this.treeConfig,i=this.editStore,n=this.sYOpts,l=this.scrollYStore,s=this.scrollXStore,a=e?e.slice(0):[],c=!o&&-1<n.gt&&n.gt<a.length;return l.startIndex=0,l.endIndex=1,s.startIndex=0,s.endIndex=1,i.insertList=[],i.removeList=[],this.tableFullData=a,this.updateCache(!0),this.tableSynchData=e,r&&(this.tableSourceData=_ctor.default.clone(a,!0)),(this.scrollYLoad=c)&&(this.height||this.maxHeight||_tools.UtilTools.error("vxe.error.reqProp",["height | max-height"]),this.showOverflow||_tools.UtilTools.warn("vxe.error.reqProp",["show-overflow"]),this.spanMethod&&_tools.UtilTools.warn("vxe.error.scrollErrProp",["span-method"])),this.clearMergeCells(),this.clearMergeFooterItems(),this.handleTableData(!0),this.updateFooter(),this.computeScrollLoad().then(function(){return c&&(l.endIndex=l.visibleSize),t.handleReserveStatus(),t.checkSelectionStatus(),t.$nextTick().then(function(){return t.recalculate()}).then(function(){return t.refreshScroll()})})},loadData:function(e){var t=this;return this.loadTableData(e).then(function(){t.inited||(t.inited=!0,t.handleDefaults()),t.recalculate()})},reloadData:function(e){var t=this;return this.clearAll().then(function(){return t.inited=!0,t.loadTableData(e)}).then(this.handleDefaults)},reloadRow:function(e,t,r){var o=this.keepSource,i=this.tableSourceData,n=this.tableData;if(o){var l=this.getRowIndex(e),s=i[l];s&&e&&(r?_ctor.default.set(s,r,_ctor.default.get(t||e,r)):t?(i[l]=t,_ctor.default.clear(e,void 0),Object.assign(e,this.defineField(Object.assign({},t))),this.updateCache(!0)):_ctor.default.destructuring(s,_ctor.default.clone(e,!0))),this.tableData=n.slice(0)}else _tools.UtilTools.warn("vxe.error.reqProp",["keep-source"]);return this.$nextTick()},loadColumn:function(e){var t=this,r=_ctor.default.mapTree(e,function(e){return _cell.default.createColumn(t,e)});return this.handleColumn(r),this.$nextTick()},reloadColumn:function(e){return this.clearAll(),this.loadColumn(e)},handleColumn:function(e){var t=this;this.collectColumn=e;var r=getColumnList(e);this.tableFullColumn=r,this.cacheColumnMap(),this.restoreCustomStorage(),this.refreshColumn().then(function(){t.scrollXLoad&&t.loadScrollXData(!0)}),this.clearMergeCells(),this.clearMergeFooterItems(),this.handleTableData(!0),(this.scrollXLoad||this.scrollYLoad)&&this.expandColumn&&_tools.UtilTools.warn("vxe.error.scrollErrProp",["column.type=expand"]),this.$nextTick(function(){t.$toolbar&&t.$toolbar.syncUpdate({collectColumn:e,$table:t})})},updateCache:function(s){var a=this,c=this.treeConfig,h=this.treeOpts,e=this.tableFullData,u=this.fullDataRowMap,d=this.fullAllDataRowMap,f=this.fullDataRowIdData,g=this.fullAllDataRowIdData,v=getRowkey(this),p=c&&h.lazy,t=function(e,t,r,o,i){var n=getRowid(a,e);n||(n=getRowUniqueId(),_ctor.default.set(e,v,n)),p&&e[h.hasChild]&&_ctor.default.isUndefined(e[h.children])&&(e[h.children]=null);var l={row:e,rowid:n,index:c&&i?-1:t,items:r,parent:i};s&&(f[n]=l,u.set(e,l)),g[n]=l,d.set(e,l)};s&&(f=this.fullDataRowIdData={},u.clear()),g=this.fullAllDataRowIdData={},d.clear(),c?_ctor.default.eachTree(e,t,h):e.forEach(t)},appendTreeCache:function(e,t){var r,s=this,o=this.keepSource,i=this.tableSourceData,n=this.treeOpts,a=this.fullDataRowIdData,c=this.fullDataRowMap,h=this.fullAllDataRowMap,u=this.fullAllDataRowIdData,d=n.children,f=n.hasChild,g=getRowkey(this),l=getRowid(this,e);o&&(r=_ctor.default.findTree(i,function(e){return l===getRowid(s,e)},n)),_ctor.default.eachTree(t,function(e,t,r,o,i){var n=getRowid(s,e);n||(n=getRowUniqueId(),_ctor.default.set(e,g,n)),e[f]&&_ctor.default.isUndefined(e[d])&&(e[d]=null);var l={row:e,rowid:n,index:-1,items:r,parent:i};a[n]=l,c.set(e,l),u[n]=l,h.set(e,l)},n),r&&(r.item[d]=_ctor.default.clone(t,!0))},cacheColumnMap:function(){var u,d,f,g,v,e=this.tableFullColumn,t=this.collectColumn,p=this.fullColumnMap,x=this.fullColumnIdData={},m=this.fullColumnFieldData={},r=t.some(hasChildrenList),l=function(e,t,r,o,i){var n=e.id,l=e.property,s=e.fixed,a=e.type,c=e.treeNode,h={column:e,colid:n,index:t,items:r,parent:i};l&&(m[l]&&_tools.UtilTools.error("vxe.error.colRepet",["field",l]),m[l]=h),!v&&s&&(v=s),c?("development"===process.env.VUE_APP_VXE_TABLE_ENV&&d&&_tools.UtilTools.warn("vxe.error.colRepet",["tree-node",c]),d||(d=e)):"expand"===a&&("development"===process.env.VUE_APP_VXE_TABLE_ENV&&u&&_tools.UtilTools.warn("vxe.error.colRepet",["type",a]),u||(u=e)),"development"===process.env.VUE_APP_VXE_TABLE_ENV&&("checkbox"===a?(f&&_tools.UtilTools.warn("vxe.error.colRepet",["type",a]),f||(f=e)):"radio"===a&&(g&&_tools.UtilTools.warn("vxe.error.colRepet",["type",a]),g||(g=e))),x[n]&&_tools.UtilTools.error("vxe.error.colRepet",["colId",n]),x[n]=h,p.set(e,h)};p.clear(),r?_ctor.default.eachTree(t,function(e,t,r,o,i,n){e.level=n.length,l(e,t,r,0,i)}):e.forEach(l),u&&v&&_tools.UtilTools.warn("vxe.error.errConflicts",["column.fixed","column.type=expand"]),u&&this.mouseOpts.area&&_tools.UtilTools.error("vxe.error.errConflicts",["mouse-config.area","column.type=expand"]),this.isGroup=r,this.treeNodeColumn=d,this.expandColumn=u},getRowNode:function(e){if(e){var t=this.fullAllDataRowIdData[e.getAttribute("data-rowid")];if(t)return{rowid:t.rowid,item:t.row,index:t.index,items:t.items,parent:t.parent}}return null},getColumnNode:function(e){if(e){var t=this.fullColumnIdData[e.getAttribute("data-colid")];if(t)return{colid:t.colid,item:t.column,index:t.index,items:t.items,parent:t.parent}}return null},getRowIndex:function(e){return this.fullDataRowMap.has(e)?this.fullDataRowMap.get(e).index:-1},getVTRowIndex:function(e){return this.afterFullData.indexOf(e)},_getRowIndex:function(e){return"development"===process.env.VUE_APP_VXE_TABLE_ENV&&_tools.UtilTools.warn("vxe.error.delFunc",["_getRowIndex","getVTRowIndex"]),this.getVTRowIndex(e)},getVMRowIndex:function(e){return this.tableData.indexOf(e)},$getRowIndex:function(e){return"development"===process.env.VUE_APP_VXE_TABLE_ENV&&_tools.UtilTools.warn("vxe.error.delFunc",["$getRowIndex","getVMRowIndex"]),this.getVMRowIndex(e)},getColumnIndex:function(e){return this.fullColumnMap.has(e)?this.fullColumnMap.get(e).index:-1},getVTColumnIndex:function(e){return this.visibleColumn.indexOf(e)},_getColumnIndex:function(e){return"development"===process.env.VUE_APP_VXE_TABLE_ENV&&_tools.UtilTools.warn("vxe.error.delFunc",["_getColumnIndex","getVTColumnIndex"]),this.getVTColumnIndex(e)},getVMColumnIndex:function(e){return this.tableColumn.indexOf(e)},$getColumnIndex:function(e){return"development"===process.env.VUE_APP_VXE_TABLE_ENV&&_tools.UtilTools.warn("vxe.error.delFunc",["$getColumnIndex","getVMColumnIndex"]),this.getVMColumnIndex(e)},isSeqColumn:function(e){return e&&"seq"===e.type},defineField:function(o){var e=this.radioOpts,t=this.checkboxOpts,r=this.treeConfig,i=this.treeOpts,n=this.expandOpts,l=getRowkey(this);return this.visibleColumn.forEach(function(e){var t=e.property,r=e.editRender;t&&!_ctor.default.has(o,t)&&_ctor.default.set(o,t,r&&!_ctor.default.isUndefined(r.defaultValue)?r.defaultValue:null)}),[e.labelField,t.checkField,t.labelField,n.labelField].forEach(function(e){e&&!_ctor.default.get(o,e)&&_ctor.default.set(o,e,null)}),r&&i.lazy&&_ctor.default.isUndefined(o[i.children])&&(o[i.children]=null),_ctor.default.get(o,l)||_ctor.default.set(o,l,getRowUniqueId()),o},createData:function(e){var t=this,r=getRowkey(this),o=e.map(function(e){return t.defineField(Object.assign({},e,_defineProperty({},r,null)))});return this.$nextTick().then(function(){return o})},createRow:function(e){var t=this,r=_ctor.default.isArray(e);return r||(e=[e]),this.$nextTick().then(function(){return t.createData(e).then(function(e){return r?e:e[0]})})},revertData:function(e,o){var i=this,t=this.keepSource,n=this.tableSourceData,l=this.treeConfig;return t?arguments.length?(e&&!_ctor.default.isArray(e)&&(e=[e]),e.forEach(function(e){if(!i.isInsertByRow(e)){var t=i.getRowIndex(e);if(l&&-1===t)throw new Error(_tools.UtilTools.getLog("vxe.error.noTree",["revertData"]));var r=n[t];r&&e&&(o?_ctor.default.set(e,o,_ctor.default.clone(_ctor.default.get(r,o),!0)):_ctor.default.destructuring(e,_ctor.default.clone(r,!0)))}}),this.$nextTick()):this.reloadData(n):(_tools.UtilTools.warn("vxe.error.reqProp",["keep-source"]),this.$nextTick())},clearData:function(e,t){var r=this.tableFullData,o=this.visibleColumn;return arguments.length?e&&!_ctor.default.isArray(e)&&(e=[e]):e=r,t?e.forEach(function(e){return _ctor.default.set(e,t,null)}):e.forEach(function(t){o.forEach(function(e){e.property&&setCellValue(t,e,null)})}),this.$nextTick()},isInsertByRow:function(e){return-1<this.editStore.insertList.indexOf(e)},isUpdateByRow:function(e,t){var r=this,o=this.visibleColumn,i=this.keepSource,n=this.treeConfig,l=this.treeOpts,s=this.tableSourceData,a=this.fullDataRowIdData;if(i){var c,h,u=getRowid(this,e);if(!a[u])return!1;if(n){var d=l.children,f=_ctor.default.findTree(s,function(e){return u===getRowid(r,e)},l);e=Object.assign({},e,_defineProperty({},d,null)),f&&(c=Object.assign({},f.item,_defineProperty({},d,null)))}else{c=s[a[u].index]}if(c){if(1<arguments.length)return!eqCellValue(c,e,t);for(var g=0,v=o.length;g<v;g++)if((h=o[g].property)&&!eqCellValue(c,e,h))return!0}}return!1},getColumns:function(e){var t=this.visibleColumn;return arguments.length?t[e]:t.slice(0)},getColumnById:function(e){var t=this.fullColumnIdData;return t[e]?t[e].column:null},getColumnByField:function(e){var t=this.fullColumnFieldData;return t[e]?t[e].column:null},getTableColumn:function(){return{collectColumn:this.collectColumn.slice(0),fullColumn:this.tableFullColumn.slice(0),visibleColumn:this.visibleColumn.slice(0),tableColumn:this.tableColumn.slice(0)}},getData:function(e){var t=this.data||this.tableSynchData;return arguments.length?t[e]:t.slice(0)},getCheckboxRecords:function(){var e=this.tableFullData,t=this.treeConfig,r=this.treeOpts,o=this.checkboxOpts.checkField,i=[];if(o)i=t?_ctor.default.filterTree(e,function(e){return _ctor.default.get(e,o)},r):e.filter(function(e){return _ctor.default.get(e,o)});else{var n=this.selection;i=t?_ctor.default.filterTree(e,function(e){return-1<n.indexOf(e)},r):e.filter(function(e){return-1<n.indexOf(e)})}return i},updateAfterFullData:function(){var e=this.visibleColumn,t=this.tableFullData,r=this.filterOpts,o=this.sortOpts,c=r.remote,h=r.filterMethod,l=o.remote,i=o.sortMethod,n=o.multiple,s=t.slice(0),u=[],a=[];e.forEach(function(e){var t=e.sortable,r=e.order,o=e.filters;if(!c&&o&&o.length){var i=[],n=[];o.forEach(function(e){e.checked&&(n.push(e),i.push(e.value))}),n.length&&u.push({column:e,valueList:i,itemList:n})}!l&&t&&r&&a.push({column:e,sortBy:e.sortBy,property:e.property,order:r})}),u.length&&(s=s.filter(function(a){return u.every(function(e){var t=e.column,r=e.valueList,o=e.itemList;if(!r.length||c)return!0;var i=t.filterRender,n=t.property,l=t.filterMethod,s=i?_vXETable.default.renderer.get(i.name):null;return!l&&s&&s.renderFilter&&(l=s.filterMethod),h&&!l?h({options:o,values:r,row:a,column:t}):l?o.some(function(e){return l({value:e.value,option:e,row:a,column:t})}):-1<r.indexOf(_ctor.default.get(a,n))})}));var d=a[0];if(!l&&d)if(i){var f=i({data:s,column:d.column,property:d.property,order:d.order,sortList:a,$table:this});s=_ctor.default.isArray(f)?f:s}else{var g,v={$table:this};if(n)s=_ctor.default.orderBy(s,a.map(function(e){var t=e.column,r=e.property,o=e.order;return{field:(t.sortBy?_ctor.default.isArray(t.sortBy)?t.sortBy[0]:t.sortBy:null)||(t.formatter?function(e){return getCellLabel(e,t,v)}:r),order:o}}));else d.sortBy&&(g=(_ctor.default.isArray(d.sortBy)?d.sortBy:[d.sortBy]).map(function(e){return{field:e,order:d.order}})),s=_ctor.default.orderBy(s,g||[d].map(function(e){var t=e.column,r=e.property,o=e.order;return{field:t.formatter?function(e){return getCellLabel(e,t,v)}:r,order:o}}))}return this.afterFullData=s},getRowById:function(e){var t=this.fullDataRowIdData;return t[e]?t[e].row:null},getRowid:function(e){var t=this.fullAllDataRowMap;return t.has(e)?t.get(e).rowid:null},getTableData:function(){var e=this.tableFullData,t=this.afterFullData,r=this.tableData,o=this.footerData;return{fullData:e.slice(0),visibleData:t.slice(0),tableData:r.slice(0),footerData:o.slice(0)}},handleDefaults:function(){var e=this;this.checkboxConfig&&this.handleDefaultSelectionChecked(),this.radioConfig&&this.handleDefaultRadioChecked(),this.sortConfig&&this.handleDefaultSort(),this.expandConfig&&this.handleDefaultRowExpand(),this.treeConfig&&this.handleDefaultTreeExpand(),this.mergeCells&&this.handleDefaultMergeCells(),this.mergeFooterItems&&this.handleDefaultMergeFooterItems(),this.$nextTick(function(){return requestAnimationFrame(e.recalculate)})},hideColumn:function(e){return e.visible=!1,this.handleCustom()},showColumn:function(e){return e.visible=!0,this.handleCustom()},resetColumn:function(e){var t=this.customOpts.checkMethod,r=Object.assign({visible:!0,resizable:!0===e},e);return this.tableFullColumn.forEach(function(e){r.resizable&&(e.resizeWidth=0),t&&!t({column:e})||(e.visible=e.defaultVisible)}),r.resizable&&this.saveCustomResizable(!0),this.handleCustom()},handleCustom:function(){return this.saveCustomVisible(),this.analyColumnWidth(),this.refreshColumn()},restoreCustomStorage:function(){var e=this.id,t=this.collectColumn,r=this.customConfig,o=this.customOpts,i=o.storage,n=!0===o.storage,l=n||i&&i.resizable,s=n||i&&i.visible;if(r&&(l||s)){var a={};if(!e)return void _tools.UtilTools.error("vxe.error.reqProp",["id"]);if(l){var c=getCustomStorageMap(resizableStorageKey)[e];c&&_ctor.default.each(c,function(e,t){a[t]={field:t,resizeWidth:e}})}if(s){var h=getCustomStorageMap(visibleStorageKey)[e];if(h){var u=h.split("|"),d=u[0]?u[0].split(","):[],f=u[1]?u[1].split(","):[];d.forEach(function(e){a[e]?a[e].visible=!1:a[e]={field:e,visible:!1}}),f.forEach(function(e){a[e]?a[e].visible=!0:a[e]={field:e,visible:!0}})}}var g={};_ctor.default.eachTree(t,function(e){var t=e.getKey();t&&(g[t]=e)}),_ctor.default.each(a,function(e,t){var r=e.visible,o=e.resizeWidth,i=g[t];i&&(_ctor.default.isNumber(o)&&(i.resizeWidth=o),_ctor.default.isBoolean(r)&&(i.visible=r))})}},saveCustomVisible:function(){var e=this.id,t=this.collectColumn,r=this.customConfig,o=this.customOpts,i=o.checkMethod,n=o.storage,l=!0===o.storage||n&&n.visible;if(r&&l){var s=getCustomStorageMap(visibleStorageKey),a=[],c=[];if(!e)return void _tools.UtilTools.error("vxe.error.reqProp",["id"]);_ctor.default.eachTree(t,function(e){if(!i||i({column:e}))if(!e.visible&&e.defaultVisible){var t=e.getKey();t&&a.push(t)}else if(e.visible&&!e.defaultVisible){var r=e.getKey();r&&c.push(r)}}),s[e]=[a.join(",")].concat(c.length?[c.join(",")]:[]).join("|")||void 0,localStorage.setItem(visibleStorageKey,_ctor.default.toJSONString(s))}},saveCustomResizable:function(e){var t=this.id,r=this.collectColumn,o=this.customConfig,i=this.customOpts,n=i.storage,l=!0===i.storage||n&&n.resizable;if(o&&l){var s,a=getCustomStorageMap(resizableStorageKey);if(!t)return void _tools.UtilTools.error("vxe.error.reqProp",["id"]);e||(s=_ctor.default.isPlainObject(a[t])?a[t]:{},_ctor.default.eachTree(r,function(e){if(e.resizeWidth){var t=e.getKey();t&&(s[t]=e.renderWidth)}})),a[t]=_ctor.default.isEmpty(s)?void 0:s,localStorage.setItem(resizableStorageKey,_ctor.default.toJSONString(a))}},refreshColumn:function(){var e=this,l=[],s=[],a=[],t=this.collectColumn,r=this.tableFullColumn,o=this.isGroup,i=this.columnStore,n=this.sXOpts,c=this.scrollXStore;if(o){var h=[],u=[],d=[];_ctor.default.eachTree(t,function(e,t,r,o,i){var n=hasChildrenList(e);i&&i.fixed&&(e.fixed=i.fixed),i&&e.fixed!==i.fixed&&_tools.UtilTools.error("vxe.error.groupFixed"),n?e.visible=!!_ctor.default.findTree(e.children,function(e){return hasChildrenList(e)?null:e.visible}):e.visible&&("left"===e.fixed?l.push(e):"right"===e.fixed?a.push(e):s.push(e))}),t.forEach(function(e){e.visible&&("left"===e.fixed?h.push(e):"right"===e.fixed?d.push(e):u.push(e))}),this.tableGroupColumn=h.concat(u).concat(d)}else r.forEach(function(e){e.visible&&("left"===e.fixed?l.push(e):"right"===e.fixed?a.push(e):s.push(e))});var f=l.concat(s).concat(a),g=-1<n.gt&&n.gt<r.length;if(Object.assign(i,{leftList:l,centerList:s,rightList:a}),g&&o&&(g=!1,_tools.UtilTools.warn("vxe.error.scrollXNotGroup")),g){this.showHeader&&!this.showHeaderOverflow&&_tools.UtilTools.warn("vxe.error.reqProp",["show-header-overflow"]),this.showFooter&&!this.showFooterOverflow&&_tools.UtilTools.warn("vxe.error.reqProp",["show-footer-overflow"]),this.spanMethod&&_tools.UtilTools.warn("vxe.error.scrollErrProp",["span-method"]),this.footerSpanMethod&&_tools.UtilTools.warn("vxe.error.scrollErrProp",["footer-span-method"]);var v=computeVirtualX(this).visibleSize;c.startIndex=0,c.endIndex=v,c.visibleSize=v}return f.length===this.visibleColumn.length&&this.visibleColumn.every(function(e,t){return e===f[t]})||(this.clearMergeCells(),this.clearMergeFooterItems()),this.scrollXLoad=g,this.visibleColumn=f,this.handleTableColumn(),this.$nextTick().then(function(){return e.updateFooter(),e.recalculate(!0)}).then(function(){return e.updateCellAreas(),e.$nextTick().then(function(){return e.recalculate()})})},analyColumnWidth:function(){var e=this.columnOpts,t=e.width,r=e.minWidth,o=[],i=[],n=[],l=[],s=[],a=[];this.tableFullColumn.forEach(function(e){t&&!e.width&&(e.width=t),r&&!e.minWidth&&(e.minWidth=r),e.visible&&(e.resizeWidth?o.push(e):_tools.DomTools.isPx(e.width)?i.push(e):_tools.DomTools.isScale(e.width)?l.push(e):_tools.DomTools.isPx(e.minWidth)?n.push(e):_tools.DomTools.isScale(e.minWidth)?s.push(e):a.push(e))}),Object.assign(this.columnStore,{resizeList:o,pxList:i,pxMinList:n,scaleList:l,scaleMinList:s,autoList:a})},refreshScroll:function(){var e=this,t=this.lastScrollLeft,r=this.lastScrollTop;return this.clearScroll().then(function(){if(t||r)return e.lastScrollLeft=0,e.lastScrollTop=0,e.scrollTo(t,r)})},recalculate:function(e){var t=this,r=this.$refs,o=r.tableBody,i=r.tableHeader,n=r.tableFooter,l=o?o.$el:null,s=i?i.$el:null,a=n?n.$el:null;return l&&(this.autoCellWidth(s,l,a),!0===e)?this.computeScrollLoad().then(function(){t.autoCellWidth(s,l,a),t.computeScrollLoad()}):this.computeScrollLoad()},autoCellWidth:function(e,t,r){var o=0,i=t.clientWidth,n=i,l=n/100,s=this.fit,a=this.columnStore,c=a.resizeList,h=a.pxMinList,u=a.pxList,d=a.scaleList,f=a.scaleMinList,g=a.autoList;if(h.forEach(function(e){var t=parseInt(e.minWidth);o+=t,e.renderWidth=t}),f.forEach(function(e){var t=Math.floor(parseInt(e.minWidth)*l);o+=t,e.renderWidth=t}),d.forEach(function(e){var t=Math.floor(parseInt(e.width)*l);o+=t,e.renderWidth=t}),u.forEach(function(e){var t=parseInt(e.width);o+=t,e.renderWidth=t}),c.forEach(function(e){var t=parseInt(e.resizeWidth);o+=t,e.renderWidth=t}),l=0<(n-=o)?Math.floor(n/(f.length+h.length+g.length)):0,s?0<n&&f.concat(h).forEach(function(e){o+=l,e.renderWidth+=l}):l=40,g.forEach(function(e){var t=Math.max(l,40);e.renderWidth=t,o+=t}),s){var v=d.concat(f).concat(h).concat(g),p=v.length-1;if(0<p){var x=i-o;if(0<x){for(;0<x&&0<=p;)x--,v[p--].renderWidth++;o=i}}}var m=t.offsetHeight,w=t.scrollHeight>t.clientHeight;if(this.scrollbarWidth=w?t.offsetWidth-i:0,this.overflowY=w,this.tableWidth=o,this.tableHeight=m,e?(this.headerHeight=e.clientHeight,e.scrollLeft!==t.scrollLeft&&(e.scrollLeft=t.scrollLeft)):this.headerHeight=0,r){var C=r.offsetHeight;this.scrollbarHeight=Math.max(C-r.clientHeight,0),this.overflowX=o>r.clientWidth,this.footerHeight=C}else this.footerHeight=0,this.scrollbarHeight=Math.max(m-t.clientHeight,0),this.overflowX=i<o;this.customHeight=calcHeight(this,"height"),this.customMaxHeight=calcHeight(this,"maxHeight"),this.parentHeight=Math.max(this.headerHeight+this.footerHeight+20,this.getParentHeight()),this.overflowX&&this.checkScrolling()},updateStyle:function(){var p=this,t=this.$refs,x=this.isGroup,m=this.fullColumnIdData,w=this.tableColumn,C=this.customHeight,b=this.customMaxHeight,R=this.border,T=this.headerHeight,_=this.showFooter,E=this.showOverflow,y=this.showHeaderOverflow,S=this.showFooterOverflow,k=this.footerHeight,D=this.tableHeight,O=this.tableWidth,I=this.scrollbarHeight,M=this.scrollbarWidth,$=this.scrollXLoad,A=this.scrollYLoad,L=this.cellOffsetWidth,F=this.columnStore,V=this.elemStore,e=this.editStore,r=this.currentRow,o=this.mouseConfig,i=t.emptyPlaceholder,n=V["main-body-wrapper"];return i&&(i.style.top="".concat(T,"px"),i.style.height=n?"".concat(n.offsetHeight-I,"px"):""),0<C&&_&&(C+=I),["main","left","right"].forEach(function(d,e){var f=0<e?d:"",g=F["".concat(f,"List")],v=t["".concat(f,"Container")];["header","body","footer"].forEach(function(c){var e=V["".concat(d,"-").concat(c,"-wrapper")],t=V["".concat(d,"-").concat(c,"-table")];if("header"===c){var r=O;$&&(f&&(w=g),r=w.reduce(function(e,t){return e+t.renderWidth},0)),t&&(t.style.width=r?"".concat(r+M,"px"):"",browse.msie&&_ctor.default.arrayEach(t.querySelectorAll(".vxe-resizable"),function(e){e.style.height="".concat(e.parentNode.offsetHeight,"px")}));var o=V["".concat(d,"-").concat(c,"-repair")];o&&(o.style.width="".concat(O,"px"));var i=V["".concat(d,"-").concat(c,"-list")];x&&i&&_ctor.default.arrayEach(i.querySelectorAll(".col--group"),function(e){var t=p.getColumnNode(e);if(t){var r=t.item,o=r.showHeaderOverflow,i=_ctor.default.isBoolean(o)?o:y,n="title"===i||(!0===i||"tooltip"===i)||"ellipsis"===i,l=0,s=0;n&&_ctor.default.eachTree(r.children,function(e){e.children&&r.children.length||s++,l+=e.renderWidth}),e.style.width=n?"".concat(l-s-(R?2:0),"px"):""}})}else if("body"===c){var n=V["".concat(d,"-").concat(c,"-emptyBlock")];if(e&&(b?e.style.maxHeight="".concat(f?b-T-(_?0:I):b-T,"px"):e.style.height=0<C?"".concat(f?(0<C?C-T-k:D)-(_?0:I):C-T-k,"px"):""),v){var l="right"===f,s=F["".concat(f,"List")];e&&(e.style.top="".concat(T,"px")),v.style.height="".concat((0<C?C-T-k:D)+T+k-I*(_?2:1),"px"),v.style.width="".concat(s.reduce(function(e,t){return e+t.renderWidth},l?M:0),"px")}var a=O;f&&E?a=(w=g).reduce(function(e,t){return e+t.renderWidth},0):$&&(f&&(w=g),a=w.reduce(function(e,t){return e+t.renderWidth},0)),t&&(t.style.width=a?"".concat(a,"px"):"",t.style.paddingRight=M&&f&&(browse["-moz"]||browse.safari)?"".concat(M,"px"):""),n&&(n.style.width=a?"".concat(a,"px"):"")}else if("footer"===c){var h=O;f&&E?h=(w=g).reduce(function(e,t){return e+t.renderWidth},0):$&&(f&&(w=g),h=w.reduce(function(e,t){return e+t.renderWidth},0)),e&&(v&&(e.style.top="".concat(0<C?C-k:D+T,"px")),e.style.marginTop="".concat(-I,"px")),t&&(t.style.width=h?"".concat(h+M,"px"):"")}var u=V["".concat(d,"-").concat(c,"-colgroup")];u&&_ctor.default.arrayEach(u.children,function(e){var t=e.getAttribute("name");if("col_gutter"===t&&(e.style.width="".concat(M,"px")),m[t]){var r,s=m[t].column,o=s.showHeaderOverflow,i=s.showFooterOverflow,n=s.showOverflow;e.style.width="".concat(s.renderWidth,"px");var a="title"===(r="header"===c?_ctor.default.isUndefined(o)||_ctor.default.isNull(o)?y:o:"footer"===c?_ctor.default.isUndefined(i)||_ctor.default.isNull(i)?S:i:_ctor.default.isUndefined(n)||_ctor.default.isNull(n)?E:n)||(!0===r||"tooltip"===r)||"ellipsis"===r,l=V["".concat(d,"-").concat(c,"-list")];"header"===c||"footer"===c?$&&!a&&(a=!0):!$&&!A||a||(a=!0),l&&_ctor.default.arrayEach(l.querySelectorAll(".".concat(s.id)),function(e){var t=parseInt(e.getAttribute("colspan")||1),r=e.querySelector(".vxe-cell"),o=s.renderWidth;if(r){if(1<t)for(var i=p.getColumnIndex(s),n=1;n<t;n++){var l=p.getColumns(i+n);l&&(o+=l.renderWidth)}r.style.width=a?"".concat(o-L*t,"px"):""}})}})})}),r&&this.setCurrentRow(r),o&&o.selected&&e.selected.row&&e.selected.column&&this.addColSdCls(),this.$nextTick()},checkScrolling:function(){var e=this.$refs,t=e.tableBody,r=e.leftContainer,o=e.rightContainer,i=t?t.$el:null;i&&(r&&_tools.DomTools[0<i.scrollLeft?"addClass":"removeClass"](r,"scrolling--middle"),o&&_tools.DomTools[i.clientWidth<i.scrollWidth-Math.ceil(i.scrollLeft)?"addClass":"removeClass"](o,"scrolling--middle"))},preventEvent:function(t,e,r,o,i){var n,l=this;return _vXETable.default.interceptor.get(e).some(function(e){return!1===e(Object.assign({$grid:l.$xegrid,$table:l,$event:t},r))})||o&&(n=o()),i&&i(),n},handleGlobalMousedownEvent:function(o){var i=this,n=this.$el,e=this.$refs,t=this.mouseConfig,r=this.editStore,l=this.ctxMenuStore,s=this.editOpts,a=this.filterStore,c=this.getRowNode,h=r.actived,u=e.ctxWrapper,d=e.filterWrapper,f=e.validTip;if(d&&(getEventTargetNode(o,n,"vxe-cell--filter").flag||getEventTargetNode(o,d.$el).flag||getEventTargetNode(o,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(o,"event.clearFilter",a.args,this.closeFilter)),h.row){if(!1!==s.autoClear){var g=h.args.cell;g&&getEventTargetNode(o,g).flag||f&&getEventTargetNode(o,f.$el).flag||(!this.lastCallTime||this.lastCallTime+50<Date.now())&&(getEventTargetNode(o,document.body,"vxe-table--ignore-clear").flag||this.preventEvent(o,"event.clearActived",h.args,function(){var e;if("row"===s.mode){var t=getEventTargetNode(o,n,"vxe-body--row");e=!!t.flag&&c(t.targetElem).item!==h.args.row}else e=!getEventTargetNode(o,n,"col--edit").flag;if(e||(e=getEventTargetNode(o,n,"vxe-header--row").flag),e||(e=getEventTargetNode(o,n,"vxe-footer--row").flag),!e&&i.height&&!i.overflowY){var r=o.target;hasClass(r,"vxe-table--body-wrapper")&&(e=o.offsetY<r.clientHeight)}!e&&getEventTargetNode(o,n).flag||requestAnimationFrame(function(){return i.clearActived(o)})}))}}else t&&(getEventTargetNode(o,n).flag||u&&getEventTargetNode(o,u.$el).flag||(this.clearSelected(),getEventTargetNode(o,document.body,"vxe-table--ignore-areas-clear").flag||this.preventEvent(o,"event.clearAreas",{},function(){i.clearCellAreas(),i.clearCopyCellArea()})));l.visible&&u&&!getEventTargetNode(o,u.$el).flag&&this.closeMenu(),this.isActivated=getEventTargetNode(o,(this.$xegrid||this).$el).flag},handleGlobalBlurEvent:function(){this.closeFilter(),this.closeMenu()},handleGlobalMousewheelEvent:function(){this.clostTooltip(),this.closeMenu()},handleGlobalKeydownEvent:function(z){var H=this;this.isActivated&&this.preventEvent(z,"event.keydown",null,function(){var e,t=H.isCtxMenu,r=H.ctxMenuStore,o=H.editStore,i=H.editOpts,n=H.editConfig,l=H.mouseConfig,s=void 0===l?{}:l,a=H.keyboardConfig,c=void 0===a?{}:a,h=H.treeConfig,u=H.treeOpts,d=H.highlightCurrentRow,f=H.currentRow,g=H.bodyCtxMenu,v=o.selected,p=o.actived,x=z.keyCode,m=8===x,w=9===x,C=13===x,b=27===x,R=32===x,T=37===x,_=38===x,E=39===x,y=40===x,S=46===x,k=113===x,D=93===x,O=z.ctrlKey,I=z.shiftKey,M=z.altKey,$=T||_||E||y,A=t&&r.visible&&(C||R||$),L=n&&p.column&&p.row;if(A)z.preventDefault(),r.showChild&&hasChildrenList(r.selected)?H.moveCtxMenu(z,x,r,"selectChild",37,!1,r.selected.children):H.moveCtxMenu(z,x,r,"selected",39,!0,H.ctxMenuList);else if(c&&H.mouseConfig&&H.mouseOpts.area&&H.handleKeyboardEvent)H.handleKeyboardEvent(z);else if(R&&(c.isArrow||c.isTab)&&v.row&&v.column&&("checkbox"===v.column.type||"radio"===v.column.type))z.preventDefault(),"checkbox"===v.column.type?H.handleToggleCheckRowEvent(z,v.args):H.triggerRadioRowEvent(z,v.args);else if(b)H.closeMenu(),H.closeFilter(),p.row&&(e=p.args,H.clearActived(z),s.selected&&H.$nextTick(function(){return H.handleSelected(e,z)}));else if(k)L||v.row&&v.column&&(z.preventDefault(),H.handleActived(v.args,z));else if(D)H._keyCtx=v.row&&v.column&&g.length,clearTimeout(H.keyCtxTimeout),H.keyCtxTimeout=setTimeout(function(){H._keyCtx=!1},1e3);else if(C&&!M&&c.isEnter&&(v.row||p.row||h&&d&&f)){if(O)p.row&&(e=p.args,H.clearActived(z),s.selected&&H.$nextTick(function(){return H.handleSelected(e,z)}));else if(v.row||p.row){var F=v.row?v.args:p.args;I?c.enterToTab?H.moveTabSelected(F,I,z):H.moveSelected(F,T,!0,E,!1,z):c.enterToTab?H.moveTabSelected(F,I,z):H.moveSelected(F,T,!1,E,!0,z)}else if(h&&d&&f){var V=f[u.children];if(V&&V.length){z.preventDefault();var U=V[0];e={$table:H,row:U},H.setTreeExpand(f,!0).then(function(){return H.scrollToRow(U)}).then(function(){return H.triggerCurrentRowEvent(z,e)})}}}else if($&&c.isArrow)L||(v.row&&v.column?H.moveSelected(v.args,T,_,E,y,z):(_||y)&&d&&H.moveCurrentRow(_,y,z));else if(w&&c.isTab)v.row||v.column?H.moveTabSelected(v.args,I,z):(p.row||p.column)&&H.moveTabSelected(p.args,I,z);else if(S||(h&&d&&f?m&&c.isArrow:m)){if(!L)if(c.isDel&&(v.row||v.column))setCellValue(v.row,v.column,null),m&&H.handleActived(v.args,z);else if(m&&c.isArrow&&h&&d&&f){var N=_ctor.default.findTree(H.afterFullData,function(e){return e===f},u).parent;N&&(z.preventDefault(),e={$table:H,row:N},H.setTreeExpand(N,!1).then(function(){return H.scrollToRow(N)}).then(function(){return H.triggerCurrentRowEvent(z,e)}))}}else c.isEdit&&!O&&(R||48<=x&&x<=57||65<=x&&x<=90||96<=x&&x<=111||186<=x&&x<=192||219<=x&&x<=222)&&v.column&&v.row&&v.column.editRender&&(c.editMethod&&!1===c.editMethod(v.args)||i.activeMethod&&!i.activeMethod(v.args)||(setCellValue(v.row,v.column,null),H.handleActived(v.args,z)));H.emitEvent("keydown",{},z)})},handleGlobalPasteEvent:function(e){var t=this.isActivated,r=this.keyboardConfig,o=this.mouseConfig,i=this.mouseOpts,n=this.editStore.actived;t&&(n.row||n.column||r&&r.isClip&&o&&i.area&&this.handlePasteCellAreaEvent&&this.handlePasteCellAreaEvent(e),this.emitEvent("paste",{},e))},handleGlobalCopyEvent:function(e){var t=this.isActivated,r=this.keyboardConfig,o=this.mouseConfig,i=this.mouseOpts,n=this.editStore.actived;t&&(n.row||n.column||r&&r.isClip&&o&&i.area&&this.handleCopyCellAreaEvent&&this.handleCopyCellAreaEvent(e),this.emitEvent("copy",{},e))},handleGlobalCutEvent:function(e){var t=this.isActivated,r=this.keyboardConfig,o=this.mouseConfig,i=this.mouseOpts,n=this.editStore.actived;t&&(n.row||n.column||r&&r.isClip&&o&&i.area&&this.handleCutCellAreaEvent&&this.handleCutCellAreaEvent(e),this.emitEvent("cut",{},e))},handleGlobalResizeEvent:function(){this.closeMenu(),this.recalculate(!0)},handleTooltipLeaveMethod:function(){var e=this,t=this.tooltipOpts;return setTimeout(function(){e.tooltipActive||e.clostTooltip()},t.leaveDelay),!1},handleTargetEnterEvent:function(){clearTimeout(this.tooltipTimeout),this.tooltipActive=!0,this.clostTooltip()},handleTargetLeaveEvent:function(){var e=this,t=this.tooltipOpts;this.tooltipActive=!1,t.enterable?this.tooltipTimeout=setTimeout(function(){e.$refs.tooltip.isHover||e.clostTooltip()},t.leaveDelay):this.clostTooltip()},triggerHeaderHelpEvent:function(e,t){var r=t.column.titleHelp;if(r.message){var o=this.$refs,i=this.tooltipStore,n=o.tooltip,l=_tools.UtilTools.getFuncText(r.message);this.handleTargetEnterEvent(),i.visible=!0,n&&n.open(e.currentTarget,l)}},triggerHeaderTooltipEvent:function(e,t){var r=this.tooltipStore,o=t.column,i=e.currentTarget;this.handleTargetEnterEvent(),r.column===o&&r.visible||this.handleTooltip(e,i,i,null,t)},triggerBodyTooltipEvent:function(e,t){var r,o,i=this.editConfig,n=this.editOpts,l=this.editStore,s=this.tooltipStore,a=l.actived,c=t.row,h=t.column,u=e.currentTarget;(this.handleTargetEnterEvent(),i&&("row"===n.mode&&a.row===c||a.row===c&&a.column===h))||(s.column===h&&s.row===c&&s.visible||(h.treeNode?(r=u.querySelector(".vxe-tree-cell"),"html"===h.type&&(o=u.querySelector(".vxe-cell--html"))):o=u.querySelector("html"===h.type?".vxe-cell--html":".vxe-cell--label"),this.handleTooltip(e,u,r||u.children[0],o,t)))},triggerFooterTooltipEvent:function(e,t){var r=t.column,o=this.tooltipStore,i=e.currentTarget;this.handleTargetEnterEvent(),o.column===r&&o.visible||this.handleTooltip(e,i,i.querySelector(".vxe-cell--item")||i.children[0],null,t)},handleTooltip:function(e,t,r,o,i){i.cell=t;var n=this.$refs,l=this.tooltipOpts,s=this.tooltipStore,a=i.column,c=i.row,h=l.enabled,u=l.contentMethod,d=n.tooltip,f=u?u(i):null,g=u&&!_ctor.default.eqNull(f),v=g?f:("html"===a.type?r.innerText:r.textContent).trim(),p=r.scrollWidth>r.clientWidth;return v&&(h||g||p)&&(Object.assign(s,{row:c,column:a,visible:!0}),d&&d.open(p?r:o||r,_tools.UtilTools.formatText(v))),this.$nextTick()},clostTooltip:function(){var e=this.$refs,t=this.tooltipStore,r=e.tooltip;return t.visible&&(Object.assign(t,{row:null,column:null,content:null,visible:!1}),r&&r.close()),this.$nextTick()},isAllCheckboxChecked:function(){return this.isAllSelected},isCheckboxIndeterminate:function(){return!this.isAllSelected&&this.isIndeterminate},getCheckboxIndeterminateRecords:function(){var e=this.treeConfig,t=this.treeIndeterminates;return e?t.slice(0):[]},handleDefaultSelectionChecked:function(){var t=this.fullDataRowIdData,e=this.checkboxOpts,r=e.checkAll,o=e.checkRowKeys;if(r)this.setAllCheckboxRow(!0);else if(o){var i=[];o.forEach(function(e){t[e]&&i.push(t[e].row)}),this.setCheckboxRow(i,!0)}},setCheckboxRow:function(e,t){var r=this;return e&&!_ctor.default.isArray(e)&&(e=[e]),e.forEach(function(e){return r.handleSelectRow({row:e},!!t)}),this.$nextTick()},isCheckedByCheckboxRow:function(e){var t=this.checkboxOpts.checkField;return t?_ctor.default.get(e,t):-1<this.selection.indexOf(e)},handleSelectRow:function(e,r){var o=this,i=e.row,n=this.selection,t=this.afterFullData,l=this.treeConfig,s=this.treeOpts,a=this.treeIndeterminates,c=this.checkboxOpts,h=c.checkField,u=c.checkStrictly,d=c.checkMethod;if(h)if(l&&!u){-1===r?(-1===a.indexOf(i)&&a.push(i),_ctor.default.set(i,h,!1)):_ctor.default.eachTree([i],function(t){i!==t&&d&&!d({row:t})||(_ctor.default.set(t,h,r),_ctor.default.remove(a,function(e){return e===t}),o.handleCheckboxReserveRow(i,r))},s);var f=_ctor.default.findTree(t,function(e){return e===i},s);if(f&&f.parent){var g,v=d?f.items.filter(function(e){return d({row:e})}):f.items;if(_ctor.default.find(f.items,function(e){return-1<a.indexOf(e)}))g=-1;else{var p=f.items.filter(function(e){return _ctor.default.get(e,h)});g=p.filter(function(e){return-1<v.indexOf(e)}).length===v.length||!(!p.length&&-1!==r)&&-1}return this.handleSelectRow({row:f.parent},g)}}else d&&!d({row:i})||(_ctor.default.set(i,h,r),this.handleCheckboxReserveRow(i,r));else if(l&&!u){-1===r?(-1===a.indexOf(i)&&a.push(i),_ctor.default.remove(n,function(e){return e===i})):_ctor.default.eachTree([i],function(t){i!==t&&d&&!d({row:t})||(r?n.push(t):_ctor.default.remove(n,function(e){return e===t}),_ctor.default.remove(a,function(e){return e===t}),o.handleCheckboxReserveRow(i,r))},s);var x=_ctor.default.findTree(t,function(e){return e===i},s);if(x&&x.parent){var m,w=d?x.items.filter(function(e){return d({row:e})}):x.items;if(_ctor.default.find(x.items,function(e){return-1<a.indexOf(e)}))m=-1;else{var C=x.items.filter(function(e){return-1<n.indexOf(e)});m=C.filter(function(e){return-1<w.indexOf(e)}).length===w.length||!(!C.length&&-1!==r)&&-1}return this.handleSelectRow({row:x.parent},m)}}else d&&!d({row:i})||(r?-1===n.indexOf(i)&&n.push(i):_ctor.default.remove(n,function(e){return e===i}),this.handleCheckboxReserveRow(i,r));this.checkSelectionStatus()},handleToggleCheckRowEvent:function(e,t){var r=this.selection,o=this.checkboxOpts.checkField,i=t.row,n=o?!_ctor.default.get(i,o):-1===r.indexOf(i);e?this.triggerCheckRowEvent(e,t,n):this.handleSelectRow(t,n)},triggerCheckRowEvent:function(e,t,r){var o=this.checkboxOpts.checkMethod;o&&!o({row:t.row})||(this.handleSelectRow(t,r),this.emitEvent("checkbox-change",Object.assign({records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords(),indeterminates:this.getCheckboxIndeterminateRecords(),checked:r},t),e))},toggleCheckboxRow:function(e){return this.handleToggleCheckRowEvent(null,{row:e}),this.$nextTick()},setAllCheckboxRow:function(t){var r=this,o=this.afterFullData,e=this.treeConfig,i=this.treeOpts,n=this.selection,l=this.checkboxReserveRowMap,s=this.checkboxOpts,a=s.checkField,c=s.reserve,h=s.checkStrictly,u=s.checkMethod,d=[],f=e?[]:n.filter(function(e){return-1===o.indexOf(e)});if(h)this.isAllSelected=t;else{if(a){var g=function(e){u&&!u({row:e})||(t&&d.push(e),_ctor.default.set(e,a,t))};e?_ctor.default.eachTree(o,g,i):o.forEach(g)}else e?t?_ctor.default.eachTree(o,function(e){u&&!u({row:e})||d.push(e)},i):u&&_ctor.default.eachTree(o,function(e){!u({row:e})&&-1<n.indexOf(e)&&d.push(e)},i):t?d=u?o.filter(function(e){return-1<n.indexOf(e)||u({row:e})}):o.slice(0):u&&(d=o.filter(function(e){return u({row:e})?0:-1<n.indexOf(e)}));c&&(t?d.forEach(function(e){l[getRowid(r,e)]=e}):o.forEach(function(e){return r.handleCheckboxReserveRow(e,!1)})),this.selection=a?[]:f.concat(d)}this.treeIndeterminates=[],this.checkSelectionStatus()},checkSelectionStatus:function(){var e=this.afterFullData,t=this.selection,r=this.treeIndeterminates,o=this.checkboxOpts,i=this.treeConfig,n=o.checkField,l=o.halfField,s=o.checkStrictly,a=o.checkMethod;if(!s){var c=!1,h=!1;h=n?(c=e.length&&e.every(a?function(e){return!a({row:e})||_ctor.default.get(e,n)}:function(e){return _ctor.default.get(e,n)}),i?l?!c&&e.some(function(e){return _ctor.default.get(e,n)||_ctor.default.get(e,l)||-1<r.indexOf(e)}):!c&&e.some(function(e){return _ctor.default.get(e,n)||-1<r.indexOf(e)}):l?!c&&e.some(function(e){return _ctor.default.get(e,n)||_ctor.default.get(e,l)}):!c&&e.some(function(e){return _ctor.default.get(e,n)})):(c=e.length&&e.every(a?function(e){return!a({row:e})||-1<t.indexOf(e)}:function(e){return-1<t.indexOf(e)}),i?!c&&e.some(function(e){return-1<r.indexOf(e)||-1<t.indexOf(e)}):!c&&e.some(function(e){return-1<t.indexOf(e)})),this.isAllSelected=c,this.isIndeterminate=h}},handleReserveStatus:function(){var e=this.expandColumn,t=this.treeOpts,r=this.treeConfig,o=this.fullDataRowIdData,i=this.fullAllDataRowMap,n=this.currentRow,l=this.selectRow,s=this.radioReserveRow,a=this.radioOpts,c=this.checkboxOpts,h=this.selection,u=this.rowExpandeds,d=this.treeExpandeds,f=this.expandOpts;if(l&&!i.has(l)&&(this.selectRow=null),a.reserve&&s){var g=getRowid(this,s);o[g]&&this.setRadioRow(o[g].row)}this.selection=getRecoverRow(this,h),c.reserve&&this.setCheckboxRow(handleReserveRow(this,this.checkboxReserveRowMap),!0),n&&!i.has(n)&&(this.currentRow=null),this.rowExpandeds=e?getRecoverRow(this,u):[],e&&f.reserve&&this.setRowExpand(handleReserveRow(this,this.rowExpandedReserveRowMap),!0),this.treeExpandeds=r?getRecoverRow(this,d):[],r&&t.reserve&&this.setTreeExpand(handleReserveRow(this,this.treeExpandedReserveRowMap),!0)},getRadioReserveRecord:function(){var e=this.fullDataRowIdData,t=this.radioReserveRow;return this.radioOpts.reserve&&t&&!e[getRowid(this,t)]?t:null},clearRadioReserve:function(){return this.radioReserveRow=null,this.$nextTick()},handleRadioReserveRow:function(e){this.radioOpts.reserve&&(this.radioReserveRow=e)},getCheckboxReserveRecords:function(){var r=this.fullDataRowIdData,e=this.checkboxReserveRowMap,t=this.checkboxOpts,o=[];return t.reserve&&_ctor.default.each(e,function(e,t){e&&!r[t]&&o.push(e)}),o},clearCheckboxReserve:function(){return this.checkboxReserveRowMap={},this.$nextTick()},handleCheckboxReserveRow:function(e,t){var r=this.checkboxReserveRowMap;if(this.checkboxOpts.reserve){var o=getRowid(this,e);t?r[o]=e:r[o]&&delete r[o]}},triggerCheckAllEvent:function(e,t){this.setAllCheckboxRow(t),this.emitEvent("checkbox-all",{records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords(),indeterminates:this.getCheckboxIndeterminateRecords(),checked:t},e)},toggleAllCheckboxRow:function(){return this.triggerCheckAllEvent(null,!this.isAllSelected),this.$nextTick()},clearCheckboxRow:function(){var t=this,e=this.tableFullData,r=this.treeConfig,o=this.treeOpts,i=this.checkboxOpts,n=i.checkField,l=i.reserve;return n&&(r?_ctor.default.eachTree(e,function(e){return _ctor.default.set(e,n,!1)},o):e.forEach(function(e){return _ctor.default.set(e,n,!1)})),l&&e.forEach(function(e){return t.handleCheckboxReserveRow(e,!1)}),this.isAllSelected=!1,this.isIndeterminate=!1,this.selection=[],this.treeIndeterminates=[],this.$nextTick()},handleDefaultRadioChecked:function(){var e=this.radioOpts,t=this.fullDataRowIdData,r=e.checkRowKey,o=e.reserve;if(r&&(t[r]&&this.setRadioRow(t[r].row),o)){var i=getRowkey(this);this.radioReserveRow=_defineProperty({},i,r)}},triggerRadioRowEvent:function(e,t){var r=this.selectRow!==t.row;this.setRadioRow(t.row),r&&this.emitEvent("radio-change",t,e)},triggerCurrentRowEvent:function(e,t){var r=this.currentRow!==t.row;this.setCurrentRow(t.row),r&&this.emitEvent("current-change",t,e)},setCurrentRow:function(e){return this.clearCurrentRow(),this.clearCurrentColumn(),this.currentRow=e,this.highlightCurrentRow&&_ctor.default.arrayEach(this.$el.querySelectorAll('[data-rowid="'.concat(getRowid(this,e),'"]')),function(e){return addClass(e,"row--current")}),this.$nextTick()},isCheckedByRadioRow:function(e){return this.selectRow===e},setRadioRow:function(e){var t=this.radioOpts.checkMethod;return!e||t&&!t({row:e})||(this.selectRow=e,this.handleRadioReserveRow(e)),this.$nextTick()},clearCurrentRow:function(){return this.currentRow=null,this.hoverRow=null,_ctor.default.arrayEach(this.$el.querySelectorAll(".row--current"),function(e){return removeClass(e,"row--current")}),this.$nextTick()},clearRadioRow:function(){return this.selectRow=null,this.$nextTick()},getCurrentRecord:function(){return this.highlightCurrentRow?this.currentRow:null},getRadioRecord:function(){return this.selectRow},triggerHoverEvent:function(e,t){var r=t.row;this.setHoverRow(r)},setHoverRow:function(e){var t=getRowid(this,e);this.clearHoverRow(),_ctor.default.arrayEach(this.$el.querySelectorAll('[data-rowid="'.concat(t,'"]')),function(e){return addClass(e,"row--hover")}),this.hoverRow=e},clearHoverRow:function(){_ctor.default.arrayEach(this.$el.querySelectorAll(".vxe-body--row.row--hover"),function(e){return removeClass(e,"row--hover")}),this.hoverRow=null},triggerHeaderCellClickEvent:function(e,t){var r=this._lastResizeTime,o=this.sortOpts,i=t.column,n=e.currentTarget,l=r&&r>Date.now()-300,s=getEventTargetNode(e,n,"vxe-cell--sort").flag,a=getEventTargetNode(e,n,"vxe-cell--filter").flag;return"cell"!==o.trigger||l||s||a||this.triggerSortEvent(e,i,getNextSortOrder(this,i)),this.emitEvent("header-cell-click",Object.assign({triggerResizable:l,triggerSort:s,triggerFilter:a,cell:n},t),e),this.highlightCurrentColumn?this.setCurrentColumn(i):this.$nextTick()},triggerHeaderCellDBLClickEvent:function(e,t){this.emitEvent("header-cell-dblclick",Object.assign({cell:e.currentTarget},t),e)},getCurrentColumn:function(){return this.highlightCurrentColumn?this.currentColumn:null},setCurrentColumn:function(e){return this.clearCurrentRow(),this.clearCurrentColumn(),this.currentColumn=e,this.$nextTick()},clearCurrentColumn:function(){return this.currentColumn=null,this.$nextTick()},checkValidate:function(e){return _vXETable.default._valid?this.triggerValidate(e):this.$nextTick()},handleChangeCell:function(e,t){var r=this;this.checkValidate("blur").catch(function(e){return e}).then(function(){r.handleActived(t,e).then(function(){return r.checkValidate("change")}).catch(function(e){return e})})},triggerCellClickEvent:function(e,t){var r=this.highlightCurrentRow,o=this.editStore,i=this.radioOpts,n=this.expandOpts,l=this.treeOpts,s=this.editConfig,a=this.editOpts,c=this.checkboxOpts,h=o.actived,u=t,d=u.row,f=u.column,g=f.type,v=f.treeNode,p="radio"===g,x="checkbox"===g,m="expand"===g,w=e.currentTarget,C=p&&getEventTargetNode(e,w,"vxe-cell--radio").flag,b=x&&getEventTargetNode(e,w,"vxe-cell--checkbox").flag,R=v&&getEventTargetNode(e,w,"vxe-tree--btn-wrapper").flag,T=m&&getEventTargetNode(e,w,"vxe-table--expanded").flag;t=Object.assign({cell:w,triggerRadio:C,triggerCheckbox:b,triggerTreeNode:R,triggerExpandNode:T},t),!T&&("row"===n.trigger||m&&"cell"===n.trigger)&&this.triggerRowExpandEvent(e,t),("row"===l.trigger||v&&"cell"===l.trigger)&&this.triggerTreeExpandEvent(e,t),R||(T||(r&&(b||C||this.triggerCurrentRowEvent(e,t)),!C&&("row"===i.trigger||p&&"cell"===i.trigger)&&this.triggerRadioRowEvent(e,t),!b&&("row"===c.trigger||x&&"cell"===c.trigger)&&this.handleToggleCheckRowEvent(e,t)),s&&("manual"===a.trigger?h.args&&h.row===d&&f!==h.column&&this.handleChangeCell(e,t):h.args&&d===h.row&&f===h.column||("click"===a.trigger?this.handleChangeCell(e,t):"dblclick"===a.trigger&&"row"===a.mode&&h.row===d&&this.handleChangeCell(e,t)))),this.emitEvent("cell-click",t,e)},triggerCellDBLClickEvent:function(e,t){var r=this,o=this.editStore,i=this.editConfig,n=this.editOpts,l=o.actived,s=e.currentTarget;t.cell=s,i&&"dblclick"===n.trigger&&(l.args&&e.currentTarget===l.args.cell||("row"===n.mode?this.checkValidate("blur").catch(function(e){return e}).then(function(){r.handleActived(t,e).then(function(){return r.checkValidate("change")}).catch(function(e){return e})}):"cell"===n.mode&&this.handleActived(t,e).then(function(){return r.checkValidate("change")}).catch(function(e){return e}))),this.emitEvent("cell-dblclick",t,e)},handleDefaultSort:function(){var i=this,e=this.sortOpts,t=e.defaultSort;!e.remote&&t&&(_ctor.default.isArray(t)||(t=[t]),t.length&&(t.forEach(function(e){var t=e.field,r=e.order;if(t&&r){var o=i.getColumnByField(t);o&&o.sortable&&(o.order=r)}}),this.handleTableData(!0).then(this.updateStyle)))},triggerSortEvent:function(e,t,r){var o=this.sortOpts,i=t.property;if(