vxe-table 4.7.18 → 4.7.19-beta.0

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.
@@ -925,8 +925,9 @@ export default defineComponent({
925
925
  default: {
926
926
  const gCommandOpts = commands.get(code);
927
927
  if (gCommandOpts) {
928
- if (gCommandOpts.commandMethod) {
929
- gCommandOpts.commandMethod({ code, button, $grid: $xeGrid, $table: $xeTable }, ...args);
928
+ const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
929
+ if (tCommandMethod) {
930
+ tCommandMethod({ code, button, $grid: $xeGrid, $table: $xeTable }, ...args);
930
931
  }
931
932
  else {
932
933
  if (process.env.NODE_ENV === 'development') {
@@ -284,8 +284,9 @@ hooks.add('tableMenuModule', {
284
284
  if (!menu.disabled && (menu.code || !menu.children || !menu.children.length)) {
285
285
  const gMenuOpts = menus.get(menu.code);
286
286
  const params = Object.assign({}, internalData._currMenuParams, { menu, $table: $xeTable, $grid: $xeTable.xegrid, $event: evnt });
287
- if (gMenuOpts && gMenuOpts.menuMethod) {
288
- gMenuOpts.menuMethod(params, evnt);
287
+ const tmMethod = gMenuOpts ? (gMenuOpts.tableMenuMethod || gMenuOpts.menuMethod) : null;
288
+ if (tmMethod) {
289
+ tmMethod(params, evnt);
289
290
  }
290
291
  $xeTable.dispatchEvent('menu-click', params, evnt);
291
292
  menuMethods.closeMenu();
@@ -358,8 +358,9 @@ hooks.add('tableValidatorModule', {
358
358
  if (XEUtils.isString(validator)) {
359
359
  const gvItem = validators.get(validator);
360
360
  if (gvItem) {
361
- if (gvItem.cellValidatorMethod) {
362
- customValid = gvItem.cellValidatorMethod(validParams);
361
+ const tcvMethod = gvItem.tableCellValidatorMethod || gvItem.cellValidatorMethod;
362
+ if (tcvMethod) {
363
+ customValid = tcvMethod(validParams);
363
364
  }
364
365
  else {
365
366
  if (process.env.NODE_ENV === 'development') {
@@ -36,13 +36,13 @@ export class ColumnInfo {
36
36
  if (formatter) {
37
37
  if (XEUtils.isString(formatter)) {
38
38
  const gFormatOpts = formats.get(formatter) || XEUtils[formatter];
39
- if (!gFormatOpts || !XEUtils.isFunction(gFormatOpts.cellFormatMethod)) {
39
+ if (!gFormatOpts || !XEUtils.isFunction(gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod)) {
40
40
  errLog('vxe.error.notFormats', [formatter]);
41
41
  }
42
42
  }
43
43
  else if (XEUtils.isArray(formatter)) {
44
44
  const gFormatOpts = formats.get(formatter[0]) || XEUtils[formatter[0]];
45
- if (!gFormatOpts || !XEUtils.isFunction(gFormatOpts.cellFormatMethod)) {
45
+ if (!gFormatOpts || !XEUtils.isFunction(gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod)) {
46
46
  errLog('vxe.error.notFormats', [formatter[0]]);
47
47
  }
48
48
  }
@@ -6284,11 +6284,13 @@ export default defineComponent({
6284
6284
  const formatParams = { cellValue, row, rowIndex: tableMethods.getRowIndex(row), column, columnIndex: tableMethods.getColumnIndex(column) };
6285
6285
  if (XEUtils.isString(formatter)) {
6286
6286
  const gFormatOpts = formats.get(formatter);
6287
- cellLabel = gFormatOpts && gFormatOpts.cellFormatMethod ? gFormatOpts.cellFormatMethod(formatParams) : '';
6287
+ const tcFormatMethod = gFormatOpts ? (gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod) : null;
6288
+ cellLabel = tcFormatMethod ? tcFormatMethod(formatParams) : '';
6288
6289
  }
6289
6290
  else if (XEUtils.isArray(formatter)) {
6290
6291
  const gFormatOpts = formats.get(formatter[0]);
6291
- cellLabel = gFormatOpts && gFormatOpts.cellFormatMethod ? gFormatOpts.cellFormatMethod(formatParams, ...formatter.slice(1)) : '';
6292
+ const tcFormatMethod = gFormatOpts ? (gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod) : null;
6293
+ cellLabel = tcFormatMethod ? tcFormatMethod(formatParams, ...formatter.slice(1)) : '';
6292
6294
  }
6293
6295
  else {
6294
6296
  cellLabel = formatter(formatParams);
@@ -160,8 +160,9 @@ export default defineComponent({
160
160
  const gCommandOpts = commands.get(code);
161
161
  const params = { code, button: item, $table: $table, $grid: $xeGrid, $event: evnt };
162
162
  if (gCommandOpts) {
163
- if (gCommandOpts.commandMethod) {
164
- gCommandOpts.commandMethod(params);
163
+ const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
164
+ if (tCommandMethod) {
165
+ tCommandMethod(params);
165
166
  }
166
167
  else {
167
168
  if (process.env.NODE_ENV === 'development') {
@@ -184,8 +185,9 @@ export default defineComponent({
184
185
  const gCommandOpts = commands.get(code);
185
186
  const params = { code, tool: item, $table: $table, $grid: $xeGrid, $event: evnt };
186
187
  if (gCommandOpts) {
187
- if (gCommandOpts.commandMethod) {
188
- gCommandOpts.commandMethod(params);
188
+ const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
189
+ if (tCommandMethod) {
190
+ tCommandMethod(params);
189
191
  }
190
192
  else {
191
193
  if (process.env.NODE_ENV === 'development') {
package/es/ui/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  import { getFuncText } from './src/utils';
3
- VxeUI.version = "4.7.18";
4
- VxeUI.tableVersion = "4.7.18";
3
+ VxeUI.version = "4.7.19-beta.0";
4
+ VxeUI.tableVersion = "4.7.19-beta.0";
5
5
  VxeUI.setConfig({
6
6
  emptyCell: ' ',
7
7
  table: {
package/es/ui/src/log.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const version = `table v${"4.7.18"}`;
3
+ const version = `table v${"4.7.19-beta.0"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
@@ -1138,8 +1138,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
1138
1138
  {
1139
1139
  const gCommandOpts = commands.get(code);
1140
1140
  if (gCommandOpts) {
1141
- if (gCommandOpts.commandMethod) {
1142
- gCommandOpts.commandMethod({
1141
+ const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
1142
+ if (tCommandMethod) {
1143
+ tCommandMethod({
1143
1144
  code,
1144
1145
  button,
1145
1146
  $grid: $xeGrid,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_table=_interopRequireDefault(require("../../table")),_toolbar=_interopRequireDefault(require("../../toolbar")),_props=_interopRequireDefault(require("../../table/src/props")),_emits=_interopRequireDefault(require("../../table/src/emits")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI,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","setPendingRow","togglePendingRow","getPendingRecords","clearPendingRow","sort","clearSort","isSort","getSortColumns","closeFilter","isFilter","isActiveFilterByColumn","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","isRowExpandByRow","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=[..._emits.default,"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"];var _default=exports.default=(0,_vue.defineComponent)({name:"VxeGrid",props:Object.assign(Object.assign({},_props.default),{layouts:Array,columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:()=>getConfig().grid.size||getConfig().size}}),emits:gridComponentEmits,setup($,e){const{slots:s,emit:r}=e;var R=_xeUtils.default.uniqueId();const l=_ui.VxeUI.getComponent("VxeForm"),u=_ui.VxeUI.getComponent("VxePager"),w=useFns.useSize($)["computeSize"],z=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(t=getConfig().pager)?void 0:t.pageSize)||10,currentPage:1}}),d=(0,_vue.ref)(),Z=(0,_vue.ref)(),g=(0,_vue.ref)(),n=(0,_vue.ref)(),c=(0,_vue.ref)(),v=(0,_vue.ref)(),m=(0,_vue.ref)(),f=(0,_vue.ref)(),p=(0,_vue.ref)(),x=(0,_vue.ref)();var t=e=>{const t={};return e.forEach(o=>{t[o]=(...e)=>{var t=Z.value;if(t&&t[o])return t[o](...e)}}),t};const B=t(tableComponentMethodKeys),A=(tableComponentMethodKeys.forEach(o=>{B[o]=(...e)=>{var t=Z.value;if(t&&t[o])return t&&t[o](...e)}}),(0,_vue.computed)(()=>Object.assign({},getConfig().grid.proxyConfig,$.proxyConfig))),H=(0,_vue.computed)(()=>{return!1!==A.value.message}),K=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,$.pagerConfig)),b=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,$.formConfig)),G=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,$.toolbarConfig)),o=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,$.zoomConfig)),O=(0,_vue.computed)(()=>z.isZMax?{zIndex:z.tZindex}:null),I=(0,_vue.computed)(()=>{const t={},o=$;return tableComponentPropKeys.forEach(e=>{t[e]=o[e]}),t}),k={refElem:d,refTable:Z,refForm:g,refToolbar:n,refPager:c},P={computeProxyOpts:A,computePagerOpts:K,computeFormOpts:b,computeToolbarOpts:G,computeZoomOpts:o},Q={xID:R,props:$,context:e,reactData:z,getRefMaps:()=>k,getComputeMaps:()=>P},U=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,loading:o,editConfig:r,proxyConfig:a}=$,{isZMax:n,tableLoading:i,tablePage:s,tableData:l}=z,u=I.value,d=A.value,g=K.value,c=Object.assign({},u);return n&&(u.maxHeight?c.maxHeight="auto":c.height="auto"),a&&(0,_utils.isEnableConf)(d)&&(c.loading=o||i,c.data=l,t)&&d.seq&&(0,_utils.isEnableConf)(g)&&(c.seqConfig=Object.assign({},e,{startIndex:(s.currentPage-1)*s.pageSize})),r&&(c.editConfig=Object.assign({},r)),c}),i=()=>{var e=G.value;$.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=Z.value,t=n.value;e&&t&&e.connect(t)})},a=()=>{var e=z["tablePage"],t=$["pagerConfig"],o=K.value,{currentPage:r,pageSize:a}=o;t&&(0,_utils.isEnableConf)(o)&&(r&&(e.currentPage=r),a)&&(e.pageSize=a)},W=(e,t)=>{var o=A.value,o=(o.response||o.props||{}).message;let r;return(r=e&&o?_xeUtils.default.isFunction(o)?o({data:e,$grid:Q}):_xeUtils.default.get(e,o):r)||getI18n(t)},Y=(e,t,o)=>{var r=H.value,a=B.getCheckboxRecords();if(r)if(a.length){if(_ui.VxeUI.modal)return _ui.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return o()})}else _ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else a.length&&o();return Promise.resolve()},T=e=>{var t=$["proxyConfig"],o=z["tablePage"];const{$event:r,currentPage:a,pageSize:n}=e;var i=A.value;o.currentPage=a,o.pageSize=n,J.dispatchEvent("page-change",e,r),t&&(0,_utils.isEnableConf)(i)&&J.commitProxy("query").then(e=>{J.dispatchEvent("proxy-query",e,r)})},V=t=>{var e=Z.value,o=$["proxyConfig"],e=e.getComputeMaps()["computeSortOpts"],r=A.value;e.value.remote&&(z.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(r)&&(z.tablePage.currentPage=1,J.commitProxy("query").then(e=>{J.dispatchEvent("proxy-query",e,t.$event)})),J.dispatchEvent("sort-change",t,t.$event)},D=t=>{var e=Z.value,o=$["proxyConfig"],e=e.getComputeMaps()["computeFilterOpts"],r=A.value;e.value.remote&&(z.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(r)&&(z.tablePage.currentPage=1,J.commitProxy("query").then(e=>{J.dispatchEvent("proxy-query",e,t.$event)})),J.dispatchEvent("filter-change",t,t.$event)},S=t=>{var e=$["proxyConfig"],o=A.value;e&&(0,_utils.isEnableConf)(o)&&J.commitProxy("reload").then(e=>{J.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),J.dispatchEvent("form-submit",t,t.$event)},j=e=>{var t=$["proxyConfig"];const o=e["$event"];var r=A.value;t&&(0,_utils.isEnableConf)(r)&&J.commitProxy("reload").then(e=>{J.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),J.dispatchEvent("form-reset",e,o)},M=e=>{J.dispatchEvent("form-submit-invalid",e,e.$event)},q=e=>{var t=e["$event"];(0,_vue.nextTick)(()=>B.recalculate(!0)),J.dispatchEvent("form-toggle-collapse",e,t),J.dispatchEvent("form-collapse",e,t)},_=e=>{var t=z["isZMax"];return(e?!t:t)&&(z.isZMax=!t,z.tZindex<(0,_utils.getLastZIndex)())&&(z.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>B.recalculate(!0)).then(()=>z.isZMax)},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(s[e])return s[e];"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notSlot",[e])}return null},F=()=>{var{formConfig:e,proxyConfig:t}=$,o=z["formData"],r=A.value,a=b.value;if(e&&(0,_utils.isEnableConf)(a)||s.form){let e=[];if(s.form)e=s.form({$grid:Q});else if(a.items){const n={};if(!a.inited){a.inited=!0;const i=r.beforeItem;r&&i&&a.items.forEach(e=>{i({$grid:Q,item:e})})}a.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||s[e]&&(n[e]=s[e])})}),l&&e.push((0,_vue.h)(l,Object.assign(Object.assign({ref:g},Object.assign({},a,{data:t&&(0,_utils.isEnableConf)(r)&&r.form?o:a.data})),{onSubmit:S,onReset:j,onSubmitInvalid:M,onCollapse:q}),n))}return(0,_vue.h)("div",{ref:v,key:"form",class:"vxe-grid--form-wrapper"},e)}return(0,_vue.createCommentVNode)()},N=()=>{var t,o,r=$["toolbarConfig"],a=G.value;if(r&&(0,_utils.isEnableConf)(a)||s.toolbar){let e=[];return s.toolbar?e=s.toolbar({$grid:Q}):(r={},(o=a.slots)&&(t=C(o,"buttons"),o=C(o,"tools"),t&&(r.buttons=t),o)&&(r.tools=o),e.push((0,_vue.h)(_toolbar.default,Object.assign({ref:n},a),r))),(0,_vue.h)("div",{ref:m,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return(0,_vue.createCommentVNode)()},L=()=>s.top?(0,_vue.h)("div",{ref:f,key:"top",class:"vxe-grid--top-wrapper"},s.top({$grid:Q})):(0,_vue.createCommentVNode)(),X=()=>{var e=s.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:Q})):(0,_vue.createCommentVNode)()},ee=()=>{var e=s.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:Q})):(0,_vue.createCommentVNode)()},te=()=>{var e=$["proxyConfig"],t=U.value,o=A.value,r=Object.assign({},h);const a=s.empty,n=s.loading;e&&(0,_utils.isEnableConf)(o)&&(o.sort&&(r.onSortChange=V),o.filter)&&(r.onFilterChange=D);e={};return a&&(e.empty=()=>a({$grid:Q})),n&&(e.loading=()=>n({$grid:Q})),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:Z},t),r),e)])},oe=()=>s.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},s.bottom({$grid:Q})):(0,_vue.createCommentVNode)(),re=()=>{var t,o,{proxyConfig:r,pagerConfig:a}=$,n=A.value,i=K.value;if(a&&(0,_utils.isEnableConf)(i)||s.pager){let e=[];return s.pager?e=s.pager({$grid:Q}):(a={},(o=i.slots)&&(t=C(o,"left"),o=C(o,"right"),t&&(a.left=t),o)&&(a.right=o),u&&e.push((0,_vue.h)(u,Object.assign(Object.assign(Object.assign({ref:c},i),r&&(0,_utils.isEnableConf)(n)?z.tablePage:{}),{onPageChange:T}),a))),(0,_vue.h)("div",{ref:x,key:"pager",class:"vxe-grid--pager-wrapper"},e)}return(0,_vue.createCommentVNode)()},ae=["Form","Toolbar","Top","Table","Bottom","Pager"],h={},ne=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);h[e]=(...e)=>r(t,...e)}),()=>{var{proxyConfig:e,formConfig:t}=$,o=z["proxyInited"],r=A.value,a=b.value;if(e&&(0,_utils.isEnableConf)(r)){if(t&&(0,_utils.isEnableConf)(a)&&r.form&&a.items){const n={};a.items.forEach(t=>{var{field:o,itemRender:r}=t;if(o){let e=null;r&&(r=r["defaultValue"],_xeUtils.default.isFunction(r)?e=r({item:t}):_xeUtils.default.isUndefined(r)||(e=r)),n[o]=e}}),z.formData=n}o||!(z.proxyInited=!0)!==r.autoLoad&&(0,_vue.nextTick)().then(()=>J.commitProxy("_init")).then(e=>{J.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("init"))})}}),J={dispatchEvent(e,t,o){r(e,createEvent(o,{$grid:Q},t))},commitProxy(t,...r){const{toolbarConfig:M,pagerConfig:a,editRules:q,validConfig:o}=$,{tablePage:n,formData:i}=z,s=H.value;var e=A.value;const l=K.value;var u=G.value;const{beforeQuery:F,afterQuery:d,beforeDelete:N,afterDelete:g,beforeSave:L,afterSave:c,ajax:v={}}=e,m=e.response||e.props||{},f=Z.value;let p=null,x=null;x=_xeUtils.default.isString(t)?(e=u["buttons"],u=M&&(0,_utils.isEnableConf)(u)&&e?_xeUtils.default.findTree(e,e=>e.code===t,{children:"dropdowns"}):null,p=u?u.item:null,t):(p=t).code;var b=p?p.params:null;switch(x){case"insert":return f.insert({});case"insert_edit":return f.insert({}).then(({row:e})=>f.setEditRow(e));case"insert_actived":return f.insert({}).then(({row:e})=>f.setEditRow(e));case"mark_cancel":E=x,h=H.value,_=Z.value,(C=_.getCheckboxRecords()).length?(_.togglePendingRow(C),B.clearCheckboxRow()):h&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:E,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Y(x,"vxe.grid.removeSelectRecord",()=>f.removeCheckboxRow());case"import":f.importData(b);break;case"open_import":f.openImport(b);break;case"export":f.exportData(b);break;case"open_export":f.openExport(b);break;case"reset_custom":return f.resetColumn(!0);case"_init":case"reload":case"query":var _=v.query;if(_){var C="_init"===x,h="reload"===x;let t=[],o=[],e={};if(a&&((C||h)&&(n.currentPage=1),(0,_utils.isEnableConf)(l))&&(e=Object.assign({},n)),C){var E=f.getComputeMaps()["computeSortOpts"];let e=E.value.defaultSort;e&&(_xeUtils.default.isArray(e)||(e=[e]),t=e.map(e=>({field:e.field,property:e.field,order:e.order}))),o=f.getCheckedFilters()}else h?f.clearAll():(t=f.getSortColumns(),o=f.getCheckedFilters());var y={code:x,button:p,isInited:C,isReload:h,$grid:Q,page:e,sort:t.length?t[0]:{},sorts:t,filters:o,form:i,options:_};z.sortData=t,z.filterData=o,z.tableLoading=!0;const R=[y].concat(r);return Promise.resolve((F||_)(...R)).then(e=>{var t,o;return z.tableLoading=!1,e?a&&(0,_utils.isEnableConf)(l)?(o=m.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:Q}):_xeUtils.default.get(e,o||"page.total"))||0,n.total=_xeUtils.default.toNumber(o),t=m.result,z.tableData=(_xeUtils.default.isFunction(t)?t({data:e,$grid:Q}):_xeUtils.default.get(e,t||"result"))||[],t=Math.max(Math.ceil(o/n.pageSize),1),n.currentPage>t&&(n.currentPage=t)):(o=m.list,z.tableData=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:Q}):_xeUtils.default.get(e,o):e)||[]):z.tableData=[],d&&d(...R),{status:!0}}).catch(()=>({status:z.tableLoading=!1}))}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break;case"delete":{const w=v.delete;if(w){const O=B.getCheckboxRecords(),I=O.filter(e=>!f.isInsertByRow(e));y={removeRecords:I};const k=[{$grid:Q,code:x,button:p,body:y,form:i,options:w}].concat(r);if(O.length)return Y(x,"vxe.grid.deleteSelectRecord",()=>I.length?(z.tableLoading=!0,Promise.resolve((N||w)(...k)).then(e=>(z.tableLoading=!1,f.setPendingRow(I,!1),s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:W(e,"vxe.grid.delSuccess"),status:"success"}),g?g(...k):J.commitProxy("query"),{status:!0})).catch(e=>(z.tableLoading=!1,s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:W(e,"vxe.grid.operError"),status:"error"}),{status:!1}))):f.remove(O));s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{const P=v.save;if(P){const U=f.getRecordset(),{insertRecords:T,removeRecords:V,updateRecords:D,pendingRecords:S}=U;const j=[{$grid:Q,code:x,button:p,body:U,form:i,options:P}].concat(r);T.length&&(U.pendingRecords=S.filter(e=>-1===f.findRowIndexOf(T,e))),S.length&&(U.insertRecords=T.filter(e=>-1===f.findRowIndexOf(S,e)));let e=Promise.resolve();return(e=q?f[o&&"full"===o.msgMode?"fullValidate":"validate"](U.insertRecords.concat(D)):e).then(e=>{if(!e)return U.insertRecords.length||V.length||D.length||U.pendingRecords.length?(z.tableLoading=!0,Promise.resolve((L||P)(...j)).then(e=>(z.tableLoading=!1,f.clearPendingRow(),s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:W(e,"vxe.grid.saveSuccess"),status:"success"}),c?c(...j):J.commitProxy("query"),{status:!0})).catch(e=>(z.tableLoading=!1,s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:W(e,"vxe.grid.operError"),status:"error"}),{status:!1}))):void(s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:y=commands.get(x);y&&(y.commandMethod?y.commandMethod({code:x,button:p,$grid:Q,$table:f},...r):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notCommands",[x]))}return(0,_vue.nextTick)()},zoom(){return z.isZMax?J.revert():J.maximize()},isMaximized(){return z.isZMax},maximize(){return _(!0)},revert(){return _()},getFormItems(e){var t=b.value,o=$["formConfig"],r=t["items"];const a=[];return _xeUtils.default.eachTree(o&&(0,_utils.isEnableConf)(t)&&r?r:[],e=>{a.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?a:a[e]},getProxyInfo(){var e,t=Z.value;return $.proxyConfig?(e=z["sortData"],{data:z.tableData,filter:z.filterData,form:z.formData,sort:e.length?e[0]:{},sorts:e,pager:z.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},E=("development"===process.env.NODE_ENV&&(J.loadColumn=e=>{var t=Z.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||s[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},J.reloadColumn=e=>(B.clearAll(),J.loadColumn(e))),{extendTableMethods:t,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=s[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e=$["height"],t=z["isZMax"],o=d.value,r=v.value,a=m.value,n=f.value,i=p.value,s=x.value;return(t||"auto"!==e?0:(0,_dom.getPaddingTopBottomSize)(o.parentNode))+(0,_dom.getPaddingTopBottomSize)(o)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(n)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(s)},getParentHeight(){var e=d.value;return e?(z.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-E.getExcludeHeight():0},triggerToolbarCommitEvent(e,t){const o=e["code"];return J.commitProxy(e,t).then(e=>{o&&e&&e.status&&["query","reload","delete","save"].includes(o)&&J.dispatchEvent("delete"===o||"save"===o?"proxy-"+o:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===o}),t)})},triggerToolbarBtnEvent(e,t){E.triggerToolbarCommitEvent(e,t),J.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){E.triggerToolbarCommitEvent(e,t),J.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){J.zoom(),J.dispatchEvent("zoom",{type:z.isZMax?"max":"revert"},e)}}),y=(Object.assign(Q,B,J,E),(0,_vue.ref)(0)),ie=((0,_vue.watch)(()=>$.columns?$.columns.length:-1,()=>{y.value++}),(0,_vue.watch)(()=>$.columns,()=>{y.value++}),(0,_vue.watch)(y,()=>{(0,_vue.nextTick)(()=>Q.loadColumn($.columns||[]))}),(0,_vue.watch)(()=>$.toolbarConfig,()=>{i()}),(0,_vue.watch)(()=>$.pagerConfig,()=>{a()}),(0,_vue.watch)(()=>$.proxyConfig,()=>{ne()}),e=>{var t=o.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&z.isZMax&&!1!==t.escRestore&&E.triggerZoomEvent(e)});hooks.forEach(e=>{var e=e["setupGrid"];e&&(e=e(Q))&&_xeUtils.default.isObject(e)&&Object.assign(Q,e)}),a(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var{data:e,columns:t,proxyConfig:o}=$,r=A.value,a=b.value;(0,_utils.isEnableConf)(o)&&(e||r.form&&a.data)&&(0,_log.errLog)("vxe.error.errConflicts",["grid.data","grid.proxy-config"]),t&&t.length&&Q.loadColumn(t),i()}),globalEvents.on(Q,"keydown",ie)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(Q,"keydown")}),(0,_vue.nextTick)(()=>{ne()});return Q.renderVN=()=>{var e=w.value,t=O.value;return(0,_vue.h)("div",{ref:d,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!$.animat,"is--round":$.round,"is--maximize":z.isZMax,"is--loading":$.loading||z.tableLoading}],style:t},(()=>{var e=$["layouts"];const t=[];return(e&&e.length?e:getConfig().grid.layouts||ae).forEach(e=>{switch(e){case"Form":t.push(F());break;case"Toolbar":t.push(N());break;case"Top":t.push(L());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[X(),te(),ee()]));break;case"Bottom":t.push(oe());break;case"Pager":t.push(re());break;default:"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t})())},(0,_vue.provide)("$xeGrid",Q),Q},render(){return this.renderVN()}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_table=_interopRequireDefault(require("../../table")),_toolbar=_interopRequireDefault(require("../../toolbar")),_props=_interopRequireDefault(require("../../table/src/props")),_emits=_interopRequireDefault(require("../../table/src/emits")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI,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","setPendingRow","togglePendingRow","getPendingRecords","clearPendingRow","sort","clearSort","isSort","getSortColumns","closeFilter","isFilter","isActiveFilterByColumn","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","isRowExpandByRow","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=[..._emits.default,"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"];var _default=exports.default=(0,_vue.defineComponent)({name:"VxeGrid",props:Object.assign(Object.assign({},_props.default),{layouts:Array,columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:()=>getConfig().grid.size||getConfig().size}}),emits:gridComponentEmits,setup($,e){const{slots:s,emit:r}=e;var R=_xeUtils.default.uniqueId();const l=_ui.VxeUI.getComponent("VxeForm"),u=_ui.VxeUI.getComponent("VxePager"),w=useFns.useSize($)["computeSize"],z=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(t=getConfig().pager)?void 0:t.pageSize)||10,currentPage:1}}),d=(0,_vue.ref)(),Z=(0,_vue.ref)(),g=(0,_vue.ref)(),n=(0,_vue.ref)(),c=(0,_vue.ref)(),v=(0,_vue.ref)(),m=(0,_vue.ref)(),f=(0,_vue.ref)(),p=(0,_vue.ref)(),x=(0,_vue.ref)();var t=e=>{const t={};return e.forEach(o=>{t[o]=(...e)=>{var t=Z.value;if(t&&t[o])return t[o](...e)}}),t};const B=t(tableComponentMethodKeys),A=(tableComponentMethodKeys.forEach(o=>{B[o]=(...e)=>{var t=Z.value;if(t&&t[o])return t&&t[o](...e)}}),(0,_vue.computed)(()=>Object.assign({},getConfig().grid.proxyConfig,$.proxyConfig))),H=(0,_vue.computed)(()=>{return!1!==A.value.message}),K=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,$.pagerConfig)),b=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,$.formConfig)),G=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,$.toolbarConfig)),o=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,$.zoomConfig)),O=(0,_vue.computed)(()=>z.isZMax?{zIndex:z.tZindex}:null),I=(0,_vue.computed)(()=>{const t={},o=$;return tableComponentPropKeys.forEach(e=>{t[e]=o[e]}),t}),k={refElem:d,refTable:Z,refForm:g,refToolbar:n,refPager:c},P={computeProxyOpts:A,computePagerOpts:K,computeFormOpts:b,computeToolbarOpts:G,computeZoomOpts:o},Q={xID:R,props:$,context:e,reactData:z,getRefMaps:()=>k,getComputeMaps:()=>P},U=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,loading:o,editConfig:r,proxyConfig:a}=$,{isZMax:n,tableLoading:i,tablePage:s,tableData:l}=z,u=I.value,d=A.value,g=K.value,c=Object.assign({},u);return n&&(u.maxHeight?c.maxHeight="auto":c.height="auto"),a&&(0,_utils.isEnableConf)(d)&&(c.loading=o||i,c.data=l,t)&&d.seq&&(0,_utils.isEnableConf)(g)&&(c.seqConfig=Object.assign({},e,{startIndex:(s.currentPage-1)*s.pageSize})),r&&(c.editConfig=Object.assign({},r)),c}),i=()=>{var e=G.value;$.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=Z.value,t=n.value;e&&t&&e.connect(t)})},a=()=>{var e=z["tablePage"],t=$["pagerConfig"],o=K.value,{currentPage:r,pageSize:a}=o;t&&(0,_utils.isEnableConf)(o)&&(r&&(e.currentPage=r),a)&&(e.pageSize=a)},W=(e,t)=>{var o=A.value,o=(o.response||o.props||{}).message;let r;return(r=e&&o?_xeUtils.default.isFunction(o)?o({data:e,$grid:Q}):_xeUtils.default.get(e,o):r)||getI18n(t)},Y=(e,t,o)=>{var r=H.value,a=B.getCheckboxRecords();if(r)if(a.length){if(_ui.VxeUI.modal)return _ui.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return o()})}else _ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else a.length&&o();return Promise.resolve()},T=e=>{var t=$["proxyConfig"],o=z["tablePage"];const{$event:r,currentPage:a,pageSize:n}=e;var i=A.value;o.currentPage=a,o.pageSize=n,J.dispatchEvent("page-change",e,r),t&&(0,_utils.isEnableConf)(i)&&J.commitProxy("query").then(e=>{J.dispatchEvent("proxy-query",e,r)})},V=t=>{var e=Z.value,o=$["proxyConfig"],e=e.getComputeMaps()["computeSortOpts"],r=A.value;e.value.remote&&(z.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(r)&&(z.tablePage.currentPage=1,J.commitProxy("query").then(e=>{J.dispatchEvent("proxy-query",e,t.$event)})),J.dispatchEvent("sort-change",t,t.$event)},D=t=>{var e=Z.value,o=$["proxyConfig"],e=e.getComputeMaps()["computeFilterOpts"],r=A.value;e.value.remote&&(z.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(r)&&(z.tablePage.currentPage=1,J.commitProxy("query").then(e=>{J.dispatchEvent("proxy-query",e,t.$event)})),J.dispatchEvent("filter-change",t,t.$event)},S=t=>{var e=$["proxyConfig"],o=A.value;e&&(0,_utils.isEnableConf)(o)&&J.commitProxy("reload").then(e=>{J.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),J.dispatchEvent("form-submit",t,t.$event)},j=e=>{var t=$["proxyConfig"];const o=e["$event"];var r=A.value;t&&(0,_utils.isEnableConf)(r)&&J.commitProxy("reload").then(e=>{J.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),J.dispatchEvent("form-reset",e,o)},M=e=>{J.dispatchEvent("form-submit-invalid",e,e.$event)},q=e=>{var t=e["$event"];(0,_vue.nextTick)(()=>B.recalculate(!0)),J.dispatchEvent("form-toggle-collapse",e,t),J.dispatchEvent("form-collapse",e,t)},_=e=>{var t=z["isZMax"];return(e?!t:t)&&(z.isZMax=!t,z.tZindex<(0,_utils.getLastZIndex)())&&(z.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>B.recalculate(!0)).then(()=>z.isZMax)},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(s[e])return s[e];"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notSlot",[e])}return null},F=()=>{var{formConfig:e,proxyConfig:t}=$,o=z["formData"],r=A.value,a=b.value;if(e&&(0,_utils.isEnableConf)(a)||s.form){let e=[];if(s.form)e=s.form({$grid:Q});else if(a.items){const n={};if(!a.inited){a.inited=!0;const i=r.beforeItem;r&&i&&a.items.forEach(e=>{i({$grid:Q,item:e})})}a.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||s[e]&&(n[e]=s[e])})}),l&&e.push((0,_vue.h)(l,Object.assign(Object.assign({ref:g},Object.assign({},a,{data:t&&(0,_utils.isEnableConf)(r)&&r.form?o:a.data})),{onSubmit:S,onReset:j,onSubmitInvalid:M,onCollapse:q}),n))}return(0,_vue.h)("div",{ref:v,key:"form",class:"vxe-grid--form-wrapper"},e)}return(0,_vue.createCommentVNode)()},N=()=>{var t,o,r=$["toolbarConfig"],a=G.value;if(r&&(0,_utils.isEnableConf)(a)||s.toolbar){let e=[];return s.toolbar?e=s.toolbar({$grid:Q}):(r={},(o=a.slots)&&(t=C(o,"buttons"),o=C(o,"tools"),t&&(r.buttons=t),o)&&(r.tools=o),e.push((0,_vue.h)(_toolbar.default,Object.assign({ref:n},a),r))),(0,_vue.h)("div",{ref:m,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return(0,_vue.createCommentVNode)()},L=()=>s.top?(0,_vue.h)("div",{ref:f,key:"top",class:"vxe-grid--top-wrapper"},s.top({$grid:Q})):(0,_vue.createCommentVNode)(),X=()=>{var e=s.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:Q})):(0,_vue.createCommentVNode)()},ee=()=>{var e=s.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:Q})):(0,_vue.createCommentVNode)()},te=()=>{var e=$["proxyConfig"],t=U.value,o=A.value,r=Object.assign({},h);const a=s.empty,n=s.loading;e&&(0,_utils.isEnableConf)(o)&&(o.sort&&(r.onSortChange=V),o.filter)&&(r.onFilterChange=D);e={};return a&&(e.empty=()=>a({$grid:Q})),n&&(e.loading=()=>n({$grid:Q})),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:Z},t),r),e)])},oe=()=>s.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},s.bottom({$grid:Q})):(0,_vue.createCommentVNode)(),re=()=>{var t,o,{proxyConfig:r,pagerConfig:a}=$,n=A.value,i=K.value;if(a&&(0,_utils.isEnableConf)(i)||s.pager){let e=[];return s.pager?e=s.pager({$grid:Q}):(a={},(o=i.slots)&&(t=C(o,"left"),o=C(o,"right"),t&&(a.left=t),o)&&(a.right=o),u&&e.push((0,_vue.h)(u,Object.assign(Object.assign(Object.assign({ref:c},i),r&&(0,_utils.isEnableConf)(n)?z.tablePage:{}),{onPageChange:T}),a))),(0,_vue.h)("div",{ref:x,key:"pager",class:"vxe-grid--pager-wrapper"},e)}return(0,_vue.createCommentVNode)()},ae=["Form","Toolbar","Top","Table","Bottom","Pager"],h={},ne=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);h[e]=(...e)=>r(t,...e)}),()=>{var{proxyConfig:e,formConfig:t}=$,o=z["proxyInited"],r=A.value,a=b.value;if(e&&(0,_utils.isEnableConf)(r)){if(t&&(0,_utils.isEnableConf)(a)&&r.form&&a.items){const n={};a.items.forEach(t=>{var{field:o,itemRender:r}=t;if(o){let e=null;r&&(r=r["defaultValue"],_xeUtils.default.isFunction(r)?e=r({item:t}):_xeUtils.default.isUndefined(r)||(e=r)),n[o]=e}}),z.formData=n}o||!(z.proxyInited=!0)!==r.autoLoad&&(0,_vue.nextTick)().then(()=>J.commitProxy("_init")).then(e=>{J.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("init"))})}}),J={dispatchEvent(e,t,o){r(e,createEvent(o,{$grid:Q},t))},commitProxy(t,...r){const{toolbarConfig:M,pagerConfig:a,editRules:q,validConfig:o}=$,{tablePage:n,formData:i}=z,s=H.value;var e=A.value;const l=K.value;var u=G.value;const{beforeQuery:F,afterQuery:d,beforeDelete:N,afterDelete:g,beforeSave:L,afterSave:c,ajax:v={}}=e,m=e.response||e.props||{},f=Z.value;let p=null,x=null;x=_xeUtils.default.isString(t)?(e=u["buttons"],u=M&&(0,_utils.isEnableConf)(u)&&e?_xeUtils.default.findTree(e,e=>e.code===t,{children:"dropdowns"}):null,p=u?u.item:null,t):(p=t).code;var b=p?p.params:null;switch(x){case"insert":return f.insert({});case"insert_edit":return f.insert({}).then(({row:e})=>f.setEditRow(e));case"insert_actived":return f.insert({}).then(({row:e})=>f.setEditRow(e));case"mark_cancel":E=x,h=H.value,_=Z.value,(C=_.getCheckboxRecords()).length?(_.togglePendingRow(C),B.clearCheckboxRow()):h&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:E,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Y(x,"vxe.grid.removeSelectRecord",()=>f.removeCheckboxRow());case"import":f.importData(b);break;case"open_import":f.openImport(b);break;case"export":f.exportData(b);break;case"open_export":f.openExport(b);break;case"reset_custom":return f.resetColumn(!0);case"_init":case"reload":case"query":var _=v.query;if(_){var C="_init"===x,h="reload"===x;let t=[],o=[],e={};if(a&&((C||h)&&(n.currentPage=1),(0,_utils.isEnableConf)(l))&&(e=Object.assign({},n)),C){var E=f.getComputeMaps()["computeSortOpts"];let e=E.value.defaultSort;e&&(_xeUtils.default.isArray(e)||(e=[e]),t=e.map(e=>({field:e.field,property:e.field,order:e.order}))),o=f.getCheckedFilters()}else h?f.clearAll():(t=f.getSortColumns(),o=f.getCheckedFilters());var y={code:x,button:p,isInited:C,isReload:h,$grid:Q,page:e,sort:t.length?t[0]:{},sorts:t,filters:o,form:i,options:_};z.sortData=t,z.filterData=o,z.tableLoading=!0;const R=[y].concat(r);return Promise.resolve((F||_)(...R)).then(e=>{var t,o;return z.tableLoading=!1,e?a&&(0,_utils.isEnableConf)(l)?(o=m.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:Q}):_xeUtils.default.get(e,o||"page.total"))||0,n.total=_xeUtils.default.toNumber(o),t=m.result,z.tableData=(_xeUtils.default.isFunction(t)?t({data:e,$grid:Q}):_xeUtils.default.get(e,t||"result"))||[],t=Math.max(Math.ceil(o/n.pageSize),1),n.currentPage>t&&(n.currentPage=t)):(o=m.list,z.tableData=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:Q}):_xeUtils.default.get(e,o):e)||[]):z.tableData=[],d&&d(...R),{status:!0}}).catch(()=>({status:z.tableLoading=!1}))}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break;case"delete":{const w=v.delete;if(w){const O=B.getCheckboxRecords(),I=O.filter(e=>!f.isInsertByRow(e));y={removeRecords:I};const k=[{$grid:Q,code:x,button:p,body:y,form:i,options:w}].concat(r);if(O.length)return Y(x,"vxe.grid.deleteSelectRecord",()=>I.length?(z.tableLoading=!0,Promise.resolve((N||w)(...k)).then(e=>(z.tableLoading=!1,f.setPendingRow(I,!1),s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:W(e,"vxe.grid.delSuccess"),status:"success"}),g?g(...k):J.commitProxy("query"),{status:!0})).catch(e=>(z.tableLoading=!1,s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:W(e,"vxe.grid.operError"),status:"error"}),{status:!1}))):f.remove(O));s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{const P=v.save;if(P){const U=f.getRecordset(),{insertRecords:T,removeRecords:V,updateRecords:D,pendingRecords:S}=U;const j=[{$grid:Q,code:x,button:p,body:U,form:i,options:P}].concat(r);T.length&&(U.pendingRecords=S.filter(e=>-1===f.findRowIndexOf(T,e))),S.length&&(U.insertRecords=T.filter(e=>-1===f.findRowIndexOf(S,e)));let e=Promise.resolve();return(e=q?f[o&&"full"===o.msgMode?"fullValidate":"validate"](U.insertRecords.concat(D)):e).then(e=>{if(!e)return U.insertRecords.length||V.length||D.length||U.pendingRecords.length?(z.tableLoading=!0,Promise.resolve((L||P)(...j)).then(e=>(z.tableLoading=!1,f.clearPendingRow(),s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:W(e,"vxe.grid.saveSuccess"),status:"success"}),c?c(...j):J.commitProxy("query"),{status:!0})).catch(e=>(z.tableLoading=!1,s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:W(e,"vxe.grid.operError"),status:"error"}),{status:!1}))):void(s&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:x,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var y=commands.get(x);y&&((y=y.tableCommandMethod||y.commandMethod)?y({code:x,button:p,$grid:Q,$table:f},...r):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notCommands",[x]))}return(0,_vue.nextTick)()},zoom(){return z.isZMax?J.revert():J.maximize()},isMaximized(){return z.isZMax},maximize(){return _(!0)},revert(){return _()},getFormItems(e){var t=b.value,o=$["formConfig"],r=t["items"];const a=[];return _xeUtils.default.eachTree(o&&(0,_utils.isEnableConf)(t)&&r?r:[],e=>{a.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?a:a[e]},getProxyInfo(){var e,t=Z.value;return $.proxyConfig?(e=z["sortData"],{data:z.tableData,filter:z.filterData,form:z.formData,sort:e.length?e[0]:{},sorts:e,pager:z.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},E=("development"===process.env.NODE_ENV&&(J.loadColumn=e=>{var t=Z.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||s[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},J.reloadColumn=e=>(B.clearAll(),J.loadColumn(e))),{extendTableMethods:t,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=s[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e=$["height"],t=z["isZMax"],o=d.value,r=v.value,a=m.value,n=f.value,i=p.value,s=x.value;return(t||"auto"!==e?0:(0,_dom.getPaddingTopBottomSize)(o.parentNode))+(0,_dom.getPaddingTopBottomSize)(o)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(n)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(s)},getParentHeight(){var e=d.value;return e?(z.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-E.getExcludeHeight():0},triggerToolbarCommitEvent(e,t){const o=e["code"];return J.commitProxy(e,t).then(e=>{o&&e&&e.status&&["query","reload","delete","save"].includes(o)&&J.dispatchEvent("delete"===o||"save"===o?"proxy-"+o:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===o}),t)})},triggerToolbarBtnEvent(e,t){E.triggerToolbarCommitEvent(e,t),J.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){E.triggerToolbarCommitEvent(e,t),J.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){J.zoom(),J.dispatchEvent("zoom",{type:z.isZMax?"max":"revert"},e)}}),y=(Object.assign(Q,B,J,E),(0,_vue.ref)(0)),ie=((0,_vue.watch)(()=>$.columns?$.columns.length:-1,()=>{y.value++}),(0,_vue.watch)(()=>$.columns,()=>{y.value++}),(0,_vue.watch)(y,()=>{(0,_vue.nextTick)(()=>Q.loadColumn($.columns||[]))}),(0,_vue.watch)(()=>$.toolbarConfig,()=>{i()}),(0,_vue.watch)(()=>$.pagerConfig,()=>{a()}),(0,_vue.watch)(()=>$.proxyConfig,()=>{ne()}),e=>{var t=o.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&z.isZMax&&!1!==t.escRestore&&E.triggerZoomEvent(e)});hooks.forEach(e=>{var e=e["setupGrid"];e&&(e=e(Q))&&_xeUtils.default.isObject(e)&&Object.assign(Q,e)}),a(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var{data:e,columns:t,proxyConfig:o}=$,r=A.value,a=b.value;(0,_utils.isEnableConf)(o)&&(e||r.form&&a.data)&&(0,_log.errLog)("vxe.error.errConflicts",["grid.data","grid.proxy-config"]),t&&t.length&&Q.loadColumn(t),i()}),globalEvents.on(Q,"keydown",ie)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(Q,"keydown")}),(0,_vue.nextTick)(()=>{ne()});return Q.renderVN=()=>{var e=w.value,t=O.value;return(0,_vue.h)("div",{ref:d,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!$.animat,"is--round":$.round,"is--maximize":z.isZMax,"is--loading":$.loading||z.tableLoading}],style:t},(()=>{var e=$["layouts"];const t=[];return(e&&e.length?e:getConfig().grid.layouts||ae).forEach(e=>{switch(e){case"Form":t.push(F());break;case"Toolbar":t.push(N());break;case"Top":t.push(L());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[X(),te(),ee()]));break;case"Bottom":t.push(oe());break;case"Pager":t.push(re());break;default:"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t})())},(0,_vue.provide)("$xeGrid",Q),Q},render(){return this.renderVN()}});
package/lib/index.umd.js CHANGED
@@ -1949,8 +1949,8 @@ function eqEmptyValue(cellValue) {
1949
1949
  ;// CONCATENATED MODULE: ./packages/ui/index.ts
1950
1950
 
1951
1951
 
1952
- core_.VxeUI.version = "4.7.18";
1953
- core_.VxeUI.tableVersion = "4.7.18";
1952
+ core_.VxeUI.version = "4.7.19-beta.0";
1953
+ core_.VxeUI.tableVersion = "4.7.19-beta.0";
1954
1954
  core_.VxeUI.setConfig({
1955
1955
  emptyCell: ' ',
1956
1956
  table: {
@@ -2253,7 +2253,7 @@ var es_array_push = __webpack_require__(4114);
2253
2253
  const {
2254
2254
  log: log_log
2255
2255
  } = core_.VxeUI;
2256
- const version = `table v${"4.7.18"}`;
2256
+ const version = `table v${"4.7.19-beta.0"}`;
2257
2257
  const warnLog = log_log.create('warn', version);
2258
2258
  const errLog = log_log.create('error', version);
2259
2259
  ;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
@@ -2309,12 +2309,12 @@ class ColumnInfo {
2309
2309
  if (formatter) {
2310
2310
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(formatter)) {
2311
2311
  const gFormatOpts = columnInfo_formats.get(formatter) || (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default())[formatter];
2312
- if (!gFormatOpts || !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(gFormatOpts.cellFormatMethod)) {
2312
+ if (!gFormatOpts || !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod)) {
2313
2313
  errLog('vxe.error.notFormats', [formatter]);
2314
2314
  }
2315
2315
  } else if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(formatter)) {
2316
2316
  const gFormatOpts = columnInfo_formats.get(formatter[0]) || (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default())[formatter[0]];
2317
- if (!gFormatOpts || !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(gFormatOpts.cellFormatMethod)) {
2317
+ if (!gFormatOpts || !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod)) {
2318
2318
  errLog('vxe.error.notFormats', [formatter[0]]);
2319
2319
  }
2320
2320
  }
@@ -15376,10 +15376,12 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
15376
15376
  };
15377
15377
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(formatter)) {
15378
15378
  const gFormatOpts = table_formats.get(formatter);
15379
- cellLabel = gFormatOpts && gFormatOpts.cellFormatMethod ? gFormatOpts.cellFormatMethod(formatParams) : '';
15379
+ const tcFormatMethod = gFormatOpts ? gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod : null;
15380
+ cellLabel = tcFormatMethod ? tcFormatMethod(formatParams) : '';
15380
15381
  } else if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(formatter)) {
15381
15382
  const gFormatOpts = table_formats.get(formatter[0]);
15382
- cellLabel = gFormatOpts && gFormatOpts.cellFormatMethod ? gFormatOpts.cellFormatMethod(formatParams, ...formatter.slice(1)) : '';
15383
+ const tcFormatMethod = gFormatOpts ? gFormatOpts.tableCellFormatMethod || gFormatOpts.cellFormatMethod : null;
15384
+ cellLabel = tcFormatMethod ? tcFormatMethod(formatParams, ...formatter.slice(1)) : '';
15383
15385
  } else {
15384
15386
  cellLabel = formatter(formatParams);
15385
15387
  }
@@ -16824,8 +16826,9 @@ menu_hook_hooks.add('tableMenuModule', {
16824
16826
  $grid: $xeTable.xegrid,
16825
16827
  $event: evnt
16826
16828
  });
16827
- if (gMenuOpts && gMenuOpts.menuMethod) {
16828
- gMenuOpts.menuMethod(params, evnt);
16829
+ const tmMethod = gMenuOpts ? gMenuOpts.tableMenuMethod || gMenuOpts.menuMethod : null;
16830
+ if (tmMethod) {
16831
+ tmMethod(params, evnt);
16829
16832
  }
16830
16833
  $xeTable.dispatchEvent('menu-click', params, evnt);
16831
16834
  menuMethods.closeMenu();
@@ -20352,8 +20355,9 @@ validator_hook_hooks.add('tableValidatorModule', {
20352
20355
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(validator)) {
20353
20356
  const gvItem = hook_validators.get(validator);
20354
20357
  if (gvItem) {
20355
- if (gvItem.cellValidatorMethod) {
20356
- customValid = gvItem.cellValidatorMethod(validParams);
20358
+ const tcvMethod = gvItem.tableCellValidatorMethod || gvItem.cellValidatorMethod;
20359
+ if (tcvMethod) {
20360
+ customValid = tcvMethod(validParams);
20357
20361
  } else {
20358
20362
  if (true) {
20359
20363
  warnLog('vxe.error.notValidators', [validator]);
@@ -21692,8 +21696,9 @@ const {
21692
21696
  $event: evnt
21693
21697
  };
21694
21698
  if (gCommandOpts) {
21695
- if (gCommandOpts.commandMethod) {
21696
- gCommandOpts.commandMethod(params);
21699
+ const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
21700
+ if (tCommandMethod) {
21701
+ tCommandMethod(params);
21697
21702
  } else {
21698
21703
  if (true) {
21699
21704
  errLog('vxe.error.notCommands', [code]);
@@ -21722,8 +21727,9 @@ const {
21722
21727
  $event: evnt
21723
21728
  };
21724
21729
  if (gCommandOpts) {
21725
- if (gCommandOpts.commandMethod) {
21726
- gCommandOpts.commandMethod(params);
21730
+ const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
21731
+ if (tCommandMethod) {
21732
+ tCommandMethod(params);
21727
21733
  } else {
21728
21734
  if (true) {
21729
21735
  errLog('vxe.error.notCommands', [code]);
@@ -23211,8 +23217,9 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
23211
23217
  {
23212
23218
  const gCommandOpts = grid_commands.get(code);
23213
23219
  if (gCommandOpts) {
23214
- if (gCommandOpts.commandMethod) {
23215
- gCommandOpts.commandMethod({
23220
+ const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
23221
+ if (tCommandMethod) {
23222
+ tCommandMethod({
23216
23223
  code,
23217
23224
  button,
23218
23225
  $grid: $xeGrid,