UNPKG

vxe-table

Version:

一个基于 vue 的 PC 端表单/表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、JSON 配置式...

1 lines 22.5 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_log=require("../../tools/log"),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_props=_interopRequireDefault(require("../../table/src/props")),_emits=_interopRequireDefault(require("../../table/src/emits")),_size=require("../../hooks/size"),_event=require("../../tools/event"),_vn=require("../../tools/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,o=1,n=arguments.length;o<n;o++)for(var r in t=arguments[o])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},__spreadArray=function(e,t,o){if(o||2===arguments.length)for(var n,r=0,a=t.length;r<a;r++)!n&&r in t||((n=n||Array.prototype.slice.call(t,0,r))[r]=t[r]);return e.concat(n||Array.prototype.slice.call(t))},tableComponentPropKeys=Object.keys(_props.default),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","createData","createRow","revertData","clearData","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getData","getCheckboxRecords","getParentRow","getRowSeq","getRowById","getRowid","getTableData","setColumnFixed","clearColumnFixed","setColumnWidth","getColumnWidth","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","isCheckedByCheckboxRow","isIndeterminateByCheckboxRow","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","setRadioRow","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","sort","clearSort","isSort","getSortColumns","closeFilter","isFilter","isActiveFilterByColumn","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","clearRowExpand","clearRowExpandReserve","getRowExpandRecords","getTreeExpandRecords","isTreeExpandLoaded","clearTreeExpandLoaded","reloadTreeExpand","reloadTreeChilds","toggleTreeExpand","setAllTreeExpand","setTreeExpand","isTreeExpandByRow","clearTreeExpand","clearTreeExpandReserve","getScroll","scrollTo","scrollToRow","scrollToColumn","clearScroll","updateFooter","updateStatus","setMergeCells","removeInsertRow","removeMergeCells","getMergeCells","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","openTooltip","focus","blur","connect"],gridComponentEmits=__spreadArray(__spreadArray([],_emits.default,!0),["page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","proxy-query","proxy-delete","proxy-save","toolbar-button-click","toolbar-tool-click","zoom"],!1),_default=(0,_vue.defineComponent)({name:"VxeGrid",props:__assign(__assign({},_props.default),{columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:function(){return _conf.default.grid.size||_conf.default.size}}}),emits:gridComponentEmits,setup:function(K,e){function t(e){var t={};return e.forEach(function(n){t[n]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=Y.value;if(o&&o[n])return o[n].apply(o,e)}}),t}function g(t){var e=W.pendingRecords,o=K.rowClassName,n=[];return e.some(function(e){return e===t.row})&&n.push("row--pending"),n.push(o?_xeUtils.default.isFunction(o)?o(t):o:""),n}function O(e){var t=K.editConfig,o=W.pendingRecords,n=Y.value,t=t?t.beforeEditMethod||t.activeMethod:null;return-1===n.findRowIndexOf(o,e.row)&&(!t||t(__assign(__assign({},e),{$grid:re})))}function a(){var e=ne.value;K.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(function(){var e=Y.value,t=_.value;e&&t&&e.connect(t)})}function o(){var e=W.tablePage,t=K.pagerConfig,o=oe.value,n=o.currentPage,r=o.pageSize;t&&(0,_utils.isEnableConf)(o)&&(n&&(e.currentPage=n),r)&&(e.pageSize=r)}function G(e,t){var o,n=void 0===(n=ee.value.props)?{}:n;return(o=e&&n.message?_xeUtils.default.get(e,n.message):o)||_conf.default.i18n(t)}function Q(e,t,o){var n=te.value,r=J.getCheckboxRecords();if(n){if(r.length)return _vXETable.VXETable.modal.confirm({id:"cfm_".concat(e),content:_conf.default.i18n(t),escClosable:!0}).then(function(e){if("confirm"===e)return o()});"development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({id:"msg_".concat(e),content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"})}else r.length&&o();return Promise.resolve()}function n(e){var t=W.isZMax;return(e?!t:t)&&(W.isZMax=!t,W.tZindex<(0,_utils.getLastZIndex)())&&(W.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(function(){return J.recalculate(!0)}).then(function(){return W.isZMax})}function r(){var r,e=K.proxyConfig,t=K.formConfig,o=W.proxyInited,n=ee.value,a=R.value;e&&(0,_utils.isEnableConf)(n)&&(t&&(0,_utils.isEnableConf)(a)&&n.form&&a.items&&(r={},a.items.forEach(function(e){var t,o=e.field,n=e.itemRender;o&&(t=null,n&&(n=n.defaultValue,_xeUtils.default.isFunction(n)?t=n({item:e}):_xeUtils.default.isUndefined(n)||(t=n)),r[o]=t)}),W.formData=r),o||!(W.proxyInited=!0)!==n.autoLoad&&(0,_vue.nextTick)().then(function(){return ae.commitProxy("_init")}).then(function(e){ae.dispatchEvent("proxy-query",__assign(__assign({},e),{isInited:!0}),new Event("init"))}))}function c(e){var t=l.value;(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ESCAPE)&&W.isZMax&&!1!==t.escRestore&&s.triggerZoomEvent(e)}var v=e.slots,i=e.emit,d=_xeUtils.default.uniqueId(),f=(0,_vue.getCurrentInstance)(),M=(0,_size.useSize)(K),W=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],pendingRecords:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:_conf.default.pager.pageSize||10,currentPage:1}}),p=(0,_vue.ref)(),Y=(0,_vue.ref)(),m=(0,_vue.ref)(),_=(0,_vue.ref)(),x=(0,_vue.ref)(),b=(0,_vue.ref)(),h=(0,_vue.ref)(),C=(0,_vue.ref)(),E=(0,_vue.ref)(),y=(0,_vue.ref)(),J=t(tableComponentMethodKeys),ee=(tableComponentMethodKeys.forEach(function(n){J[n]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=Y.value;if(o&&o[n])return o&&o[n].apply(o,e)}}),(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.proxyConfig,K.proxyConfig)})),te=(0,_vue.computed)(function(){return!1!==ee.value.message}),oe=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.pagerConfig,K.pagerConfig)}),R=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.formConfig,K.formConfig)}),ne=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.toolbarConfig,K.toolbarConfig)}),l=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.zoomConfig,K.zoomConfig)}),D=(0,_vue.computed)(function(){return W.isZMax?{zIndex:W.tZindex}:null}),P=(0,_vue.computed)(function(){var t={},o=K;return tableComponentPropKeys.forEach(function(e){t[e]=o[e]}),t}),k={refElem:p,refTable:Y,refForm:m,refToolbar:_,refPager:x},q={computeProxyOpts:ee,computePagerOpts:oe,computeFormOpts:R,computeToolbarOpts:ne,computeZoomOpts:l},re={xID:d,props:K,context:e,instance:f,reactData:W,getRefMaps:function(){return k},getComputeMaps:function(){return q}},ae={},S=(0,_vue.computed)(function(){var e=K.seqConfig,t=K.pagerConfig,o=K.loading,n=K.editConfig,r=K.proxyConfig,a=W.isZMax,i=W.tableLoading,l=W.tablePage,s=W.tableData,u=P.value,c=ee.value,d=oe.value,f=Object.assign({},u);return a&&(u.maxHeight?f.maxHeight="auto":f.height="auto"),r&&(0,_utils.isEnableConf)(c)&&(f.loading=o||i,f.data=s,f.rowClassName=g,t)&&c.seq&&(0,_utils.isEnableConf)(d)&&(f.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize})),n&&(f.editConfig=Object.assign({},n,{beforeEditMethod:O})),f}),V=function(t){var e=K.proxyConfig,o=W.tablePage,n=t.currentPage,r=t.pageSize,a=ee.value;o.currentPage=n,o.pageSize=r,ae.dispatchEvent("page-change",t),e&&(0,_utils.isEnableConf)(a)&&ae.commitProxy("query").then(function(e){ae.dispatchEvent("proxy-query",e,t.$event)})},N=function(t){var e=Y.value,o=K.proxyConfig,e=e.getComputeMaps().computeSortOpts,n=ee.value;e.value.remote&&(W.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(n)&&(W.tablePage.currentPage=1,ae.commitProxy("query").then(function(e){ae.dispatchEvent("proxy-query",e,t.$event)})),ae.dispatchEvent("sort-change",t)},I=function(t){var e=Y.value,o=K.proxyConfig,e=e.getComputeMaps().computeFilterOpts,n=ee.value;e.value.remote&&(W.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(n)&&(W.tablePage.currentPage=1,ae.commitProxy("query").then(function(e){ae.dispatchEvent("proxy-query",e,t.$event)})),ae.dispatchEvent("filter-change",t)},X=function(t){var e=K.proxyConfig,o=ee.value;e&&(0,_utils.isEnableConf)(o)&&ae.commitProxy("reload").then(function(e){ae.dispatchEvent("proxy-query",__assign(__assign({},e),{isReload:!0}),t.$event)}),ae.dispatchEvent("form-submit",t)},L=function(t){var e=K.proxyConfig,o=ee.value;e&&(0,_utils.isEnableConf)(o)&&ae.commitProxy("reload").then(function(e){ae.dispatchEvent("proxy-query",__assign(__assign({},e),{isReload:!0}),t.$event)}),ae.dispatchEvent("form-reset",t)},U=function(e){ae.dispatchEvent("form-submit-invalid",e)},z=function(e){(0,_vue.nextTick)(function(){return J.recalculate(!0)}),ae.dispatchEvent("form-toggle-collapse",e),ae.dispatchEvent("form-collapse",e)},T=function(e,t){e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(v[e])return v[e];"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notSlot",[e])}return null},w={},ae=(_emits.default.forEach(function(o){var e=_xeUtils.default.camelCase("on-".concat(o));w[e]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i.apply(void 0,__spreadArray([o],e,!1))}}),{dispatchEvent:function(e,t,o){i(e,Object.assign({$grid:re,$event:o},t))},commitProxy:function(t){for(var e=[],o=1;o<arguments.length;o++)e[o-1]=arguments[o];var n,r,a,i,N=K.toolbarConfig,I=K.pagerConfig,X=K.editRules,l=W.tablePage,s=W.formData,u=te.value,c=ee.value,L=oe.value,U=ne.value,z=c.beforeQuery,j=c.afterQuery,F=c.beforeDelete,Z=c.afterDelete,$=c.beforeSave,A=c.afterSave,d=c.ajax,f=void 0===d?{}:d,d=c.props,g=void 0===d?{}:d,v=Y.value,p=null,m=null,_=(m=_xeUtils.default.isString(t)?(c=U.buttons,p=(d=N&&(0,_utils.isEnableConf)(U)&&c?_xeUtils.default.findTree(c,function(e){return e.code===t},{children:"dropdowns"}):null)?d.item:null,t):(p=t).code,p?p.params:null);switch(m){case"insert":return v.insert({});case"insert_actived":return v.insert({}).then(function(e){e=e.row;return v.setEditRow(e)});case"mark_cancel":b=m,a=W.pendingRecords,x=te.value,i=Y.value,(E=i.getCheckboxRecords()).length?(n=[],r=[],E.forEach(function(t){(a.some(function(e){return t===e})?r:n).push(t)}),r.length?W.pendingRecords=a.filter(function(e){return-1===i.findRowIndexOf(r,e)}).concat(n):n.length&&(W.pendingRecords=a.concat(n)),J.clearCheckboxRow()):x&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({id:b,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"}));break;case"remove":return Q(m,"vxe.grid.removeSelectRecord",function(){return v.removeCheckboxRow()});case"import":v.importData(_);break;case"open_import":v.openImport(_);break;case"export":v.exportData(_);break;case"open_export":v.openExport(_);break;case"reset_custom":return v.resetColumn(!0);case"_init":case"reload":case"query":var x,b,h,C,E=f.query;if(E)return x="_init"===m,b="reload"===m,V=[],h=[],q={},I&&((x||b)&&(l.currentPage=1),(0,_utils.isEnableConf)(L))&&(q=__assign({},l)),x?((P=v.getComputeMaps().computeSortOpts.value.defaultSort)&&(V=(P=_xeUtils.default.isArray(P)?P:[P]).map(function(e){return{field:e.field,property:e.field,order:e.order}})),h=v.getCheckedFilters()):b?(W.pendingRecords=[],v.clearAll()):(V=v.getSortColumns(),h=v.getCheckedFilters()),P={code:m,button:p,isInited:x,isReload:b,$grid:re,page:q,sort:V.length?V[0]:{},sorts:V,filters:h,form:s,options:E},W.sortData=V,W.filterData=h,W.tableLoading=!0,C=[P].concat(e),Promise.resolve((z||E).apply(void 0,C)).then(function(e){var t;return W.tableLoading=!1,e?I&&(0,_utils.isEnableConf)(L)?(t=_xeUtils.default.get(e,g.total||"page.total")||0,l.total=_xeUtils.default.toNumber(t),W.tableData=_xeUtils.default.get(e,g.result||"result")||[],t=Math.max(Math.ceil(t/l.pageSize),1),l.currentPage>t&&(l.currentPage=t)):W.tableData=(g.list?_xeUtils.default.get(e,g.list):e)||[]:W.tableData=[],j&&j.apply(void 0,C),{status:!0}}).catch(function(){return{status:W.tableLoading=!1}});"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break;case"delete":var y=f.delete;if(y){var R=J.getCheckboxRecords(),T=R.filter(function(e){return!v.isInsertByRow(e)}),B=[P={$grid:re,code:m,button:p,body:{removeRecords:T},form:s,options:y}].concat(e);if(R.length)return Q(m,"vxe.grid.deleteSelectRecord",function(){return T.length?(W.tableLoading=!0,Promise.resolve((F||y).apply(void 0,B)).then(function(e){return W.tableLoading=!1,W.pendingRecords=W.pendingRecords.filter(function(e){return-1===v.findRowIndexOf(T,e)}),u&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:G(e,"vxe.grid.delSuccess"),status:"success"})),Z?Z.apply(void 0,B):ae.commitProxy("query"),{status:!0}}).catch(function(e){return W.tableLoading=!1,u&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal.message||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({id:m,content:G(e,"vxe.grid.operError"),status:"error"})),{status:!1}})):v.remove(R)});u&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({id:m,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"}))}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break;case"save":var w,O,H,M,D,P,k,q,S=f.save;if(S)return w=Object.assign({pendingRecords:W.pendingRecords},v.getRecordset()),O=w.insertRecords,H=w.removeRecords,M=w.updateRecords,D=w.pendingRecords,k=[P={$grid:re,code:m,button:p,body:w,form:s,options:S}].concat(e),O.length&&(w.pendingRecords=D.filter(function(e){return-1===v.findRowIndexOf(O,e)})),D.length&&(w.insertRecords=O.filter(function(e){return-1===v.findRowIndexOf(D,e)})),q=Promise.resolve(),(q=X?v.validate(w.insertRecords.concat(M)):q).then(function(e){if(!e)return w.insertRecords.length||H.length||M.length||w.pendingRecords.length?(W.tableLoading=!0,Promise.resolve(($||S).apply(void 0,k)).then(function(e){return W.tableLoading=!1,W.pendingRecords=[],u&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({content:G(e,"vxe.grid.saveSuccess"),status:"success"})),A?A.apply(void 0,k):ae.commitProxy("query"),{status:!0}}).catch(function(e){return W.tableLoading=!1,u&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({id:m,content:G(e,"vxe.grid.operError"),status:"error"})),{status:!1}})):void(u&&("development"!==process.env.NODE_ENV||_vXETable.VXETable.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_vXETable.VXETable.modal.message({id:m,content:_conf.default.i18n("vxe.grid.dataUnchanged"),status:"info"})))});"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break;default:var V=_vXETable.VXETable.commands.get(m);V&&(V.commandMethod?V.commandMethod.apply(V,__spreadArray([{code:m,button:p,$grid:re,$table:v}],e,!1)):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notCommands",[m]))}return(0,_vue.nextTick)()},zoom:function(){return W.isZMax?ae.revert():ae.maximize()},isMaximized:function(){return W.isZMax},maximize:function(){return n(!0)},revert:function(){return n()},getFormItems:function(e){var t=R.value,o=K.formConfig,n=t.items,r=[];return _xeUtils.default.eachTree(o&&(0,_utils.isEnableConf)(t)&&n?n:[],function(e){r.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?r:r[e]},getPendingRecords:function(){return W.pendingRecords},getProxyInfo:function(){var e;return K.proxyConfig?(e=W.sortData,{data:W.tableData,filter:W.filterData,form:W.formData,sort:e.length?e[0]:{},sorts:e,pager:W.tablePage,pendingRecords:W.pendingRecords}):null}}),s=("development"===process.env.NODE_ENV&&(ae.loadColumn=function(e){var t=Y.value;return _xeUtils.default.eachTree(e,function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||v[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t.loadColumn(e)},ae.reloadColumn=function(e){return J.clearAll(),ae.loadColumn(e)}),{extendTableMethods:t,callSlot:function(e,t){return e&&(_xeUtils.default.isString(e)&&(e=v[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight:function(){var e=K.height,t=W.isZMax,o=p.value,n=b.value,r=h.value,a=C.value,i=E.value,l=y.value;return(t||"auto"!==e?0:(0,_dom.getPaddingTopBottomSize)(o.parentNode))+(0,_dom.getPaddingTopBottomSize)(o)+(0,_dom.getOffsetHeight)(n)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(l)},getParentHeight:function(){var e=p.value;return e?(W.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-s.getExcludeHeight():0},triggerToolbarCommitEvent:function(e,t){var o=e.code;return ae.commitProxy(e,t).then(function(e){o&&e&&e.status&&["query","reload","delete","save"].includes(o)&&ae.dispatchEvent("delete"===o||"save"===o?"proxy-".concat(o):"proxy-query",__assign(__assign({},e),{isReload:"reload"===o}),t)})},triggerToolbarBtnEvent:function(e,t){s.triggerToolbarCommitEvent(e,t),ae.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent:function(e,t){s.triggerToolbarCommitEvent(e,t),ae.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e,$event:t})},triggerZoomEvent:function(e){ae.zoom(),ae.dispatchEvent("zoom",{type:W.isZMax?"max":"revert"},e)}}),u=(Object.assign(re,J,ae,s),(0,_vue.ref)(0));(0,_vue.watch)(function(){return K.columns?K.columns.length:-1},function(){u.value++}),(0,_vue.watch)(function(){return K.columns},function(){u.value++}),(0,_vue.watch)(u,function(){(0,_vue.nextTick)(function(){return re.loadColumn(K.columns||[])})}),(0,_vue.watch)(function(){return K.toolbarConfig},function(){a()}),(0,_vue.watch)(function(){return K.pagerConfig},function(){o()}),(0,_vue.watch)(function(){return K.proxyConfig},function(){r()}),_vXETable.VXETable.hooks.forEach(function(e){var e=e.setupGrid;e&&(e=e(re))&&_xeUtils.default.isObject(e)&&Object.assign(re,e)}),o(),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=K.data,t=K.columns,o=K.proxyConfig,n=ee.value,r=R.value;(0,_utils.isEnableConf)(o)&&(e||n.form&&r.data)&&(0,_log.errLog)("vxe.error.errConflicts",["grid.data","grid.proxy-config"]),t&&t.length&&re.loadColumn(t),a()}),_event.GlobalEvent.on(re,"keydown",c)}),(0,_vue.onUnmounted)(function(){_event.GlobalEvent.off(re,"keydown")}),(0,_vue.nextTick)(function(){r()});return re.renderVN=function(){var e,t,o,n,r,a,i,l,s,u,c,d,f=M.value,g=D.value;return(0,_vue.h)("div",{ref:p,class:["vxe-grid",((s={})["size--".concat(f)]=f,s["is--animat"]=!!K.animat,s["is--round"]=K.round,s["is--maximize"]=W.isZMax,s["is--loading"]=K.loading||W.tableLoading,s)],style:g},(f=K.formConfig,s=K.proxyConfig,g=W.formData,u=ee.value,c=R.value,d=[],(f&&(0,_utils.isEnableConf)(c)||v.form)&&(f=[],v.form?f=v.form({$grid:re}):c.items&&(i={},c.inited||(c.inited=!0,l=u.beforeItem,u&&l&&c.items.forEach(function(e){l({$grid:re,item:e})})),c.items.forEach(function(e){_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||v[e]&&(i[e]=v[e])})}),f.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-form"),__assign(__assign({ref:m},Object.assign({},c,{data:s&&(0,_utils.isEnableConf)(u)&&u.form?g:c.data})),{onSubmit:X,onReset:L,onSubmitInvalid:U,onCollapse:z}),i))),d.push((0,_vue.h)("div",{ref:b,class:"vxe-grid--form-wrapper"},f))),d.concat((s=K.toolbarConfig,u=ne.value,g=[],(s&&(0,_utils.isEnableConf)(u)||v.toolbar)&&(s=[],v.toolbar?s=v.toolbar({$grid:re}):(f=c=void 0,d={},(a=u.slots)&&(c=T(a,"buttons"),f=T(a,"tools"),c&&(d.buttons=c),f)&&(d.tools=f),s.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-toolbar"),__assign({ref:_},u),d))),g.push((0,_vue.h)("div",{ref:h,class:"vxe-grid--toolbar-wrapper"},s))),g),v.top?[(0,_vue.h)("div",{ref:C,class:"vxe-grid--top-wrapper"},v.top({$grid:re}))]:[],(a=K.proxyConfig,c=S.value,f=ee.value,u=Object.assign({},w),n=v.empty,r=v.loading,a&&(0,_utils.isEnableConf)(f)&&(f.sort&&(u.onSortChange=N),f.filter)&&(u.onFilterChange=I),a={},n&&(a.empty=function(){return n({})}),r&&(a.loading=function(){return r({})}),[(0,_vue.h)((0,_vue.resolveComponent)("vxe-table"),__assign(__assign({ref:Y},c),u),a)]),v.bottom?[(0,_vue.h)("div",{ref:E,class:"vxe-grid--bottom-wrapper"},v.bottom({$grid:re}))]:[],(d=K.proxyConfig,s=K.pagerConfig,g=ee.value,f=oe.value,c=[],(s&&(0,_utils.isEnableConf)(f)||v.pager)&&(s=[],v.pager?s=v.pager({$grid:re}):(u={},o=t=void 0,(e=f.slots)&&(t=T(e,"left"),o=T(e,"right"),t&&(u.left=t),o)&&(u.right=o),s.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-pager"),__assign(__assign(__assign({ref:x},f),d&&(0,_utils.isEnableConf)(g)?W.tablePage:{}),{onPageChange:V}),u))),c.push((0,_vue.h)("div",{ref:y,class:"vxe-grid--pager-wrapper"},s))),c))))},(0,_vue.provide)("$xegrid",re),re},render:function(){return this.renderVN()}});exports.default=_default;