vxe-table 4.7.86 → 4.7.87

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.
@@ -362,13 +362,13 @@ export default defineComponent({
362
362
  return '';
363
363
  });
364
364
  const computeValidOpts = computed(() => {
365
- return Object.assign({}, XEUtils.clone(getConfig().table.validConfig, true), props.validConfig);
365
+ return Object.assign({}, getConfig().table.validConfig, props.validConfig);
366
366
  });
367
367
  const computeSXOpts = computed(() => {
368
- return Object.assign({}, XEUtils.clone(getConfig().table.scrollX, true), props.scrollX);
368
+ return Object.assign({}, getConfig().table.scrollX, props.scrollX);
369
369
  });
370
370
  const computeSYOpts = computed(() => {
371
- return Object.assign({}, XEUtils.clone(getConfig().table.scrollY, true), props.scrollY);
371
+ return Object.assign({}, getConfig().table.scrollY, props.scrollY);
372
372
  });
373
373
  const computeRowHeightMaps = computed(() => {
374
374
  return {
@@ -379,29 +379,29 @@ export default defineComponent({
379
379
  };
380
380
  });
381
381
  const computeColumnOpts = computed(() => {
382
- return Object.assign({}, XEUtils.clone(getConfig().table.columnConfig, true), props.columnConfig);
382
+ return Object.assign({}, getConfig().table.columnConfig, props.columnConfig);
383
383
  });
384
384
  const computeRowOpts = computed(() => {
385
- return Object.assign({}, XEUtils.clone(getConfig().table.rowConfig, true), props.rowConfig);
385
+ return Object.assign({}, getConfig().table.rowConfig, props.rowConfig);
386
386
  });
387
387
  const computeResizeOpts = computed(() => {
388
- return Object.assign({}, XEUtils.clone(getConfig().table.resizeConfig, true), props.resizeConfig);
388
+ return Object.assign({}, getConfig().table.resizeConfig, props.resizeConfig);
389
389
  });
390
390
  const computeResizableOpts = computed(() => {
391
- return Object.assign({}, XEUtils.clone(getConfig().table.resizableConfig, true), props.resizableConfig);
391
+ return Object.assign({}, getConfig().table.resizableConfig, props.resizableConfig);
392
392
  });
393
393
  const computeSeqOpts = computed(() => {
394
- return Object.assign({ startIndex: 0 }, XEUtils.clone(getConfig().table.seqConfig, true), props.seqConfig);
394
+ return Object.assign({ startIndex: 0 }, getConfig().table.seqConfig, props.seqConfig);
395
395
  });
396
396
  const computeRadioOpts = computed(() => {
397
- return Object.assign({}, XEUtils.clone(getConfig().table.radioConfig, true), props.radioConfig);
397
+ return Object.assign({}, getConfig().table.radioConfig, props.radioConfig);
398
398
  });
399
399
  const computeCheckboxOpts = computed(() => {
400
- return Object.assign({}, XEUtils.clone(getConfig().table.checkboxConfig, true), props.checkboxConfig);
400
+ return Object.assign({}, getConfig().table.checkboxConfig, props.checkboxConfig);
401
401
  });
402
402
  let computeTooltipOpts = ref();
403
403
  computeTooltipOpts = computed(() => {
404
- return Object.assign({}, XEUtils.clone(getConfig().tooltip, true), XEUtils.clone(getConfig().table.tooltipConfig, true), props.tooltipConfig);
404
+ return Object.assign({}, getConfig().tooltip, getConfig().table.tooltipConfig, props.tooltipConfig);
405
405
  });
406
406
  const computeTipConfig = computed(() => {
407
407
  const tooltipOpts = computeTooltipOpts.value;
@@ -412,31 +412,31 @@ export default defineComponent({
412
412
  return Object.assign({ isArrow: false }, tooltipOpts);
413
413
  });
414
414
  const computeEditOpts = computed(() => {
415
- return Object.assign({}, XEUtils.clone(getConfig().table.editConfig, true), props.editConfig);
415
+ return Object.assign({}, getConfig().table.editConfig, props.editConfig);
416
416
  });
417
417
  const computeSortOpts = computed(() => {
418
- return Object.assign({ orders: ['asc', 'desc', null] }, XEUtils.clone(getConfig().table.sortConfig, true), props.sortConfig);
418
+ return Object.assign({ orders: ['asc', 'desc', null] }, getConfig().table.sortConfig, props.sortConfig);
419
419
  });
420
420
  const computeFilterOpts = computed(() => {
421
- return Object.assign({}, XEUtils.clone(getConfig().table.filterConfig, true), props.filterConfig);
421
+ return Object.assign({}, getConfig().table.filterConfig, props.filterConfig);
422
422
  });
423
423
  const computeMouseOpts = computed(() => {
424
- return Object.assign({}, XEUtils.clone(getConfig().table.mouseConfig, true), props.mouseConfig);
424
+ return Object.assign({}, getConfig().table.mouseConfig, props.mouseConfig);
425
425
  });
426
426
  const computeAreaOpts = computed(() => {
427
- return Object.assign({}, XEUtils.clone(getConfig().table.areaConfig, true), props.areaConfig);
427
+ return Object.assign({}, getConfig().table.areaConfig, props.areaConfig);
428
428
  });
429
429
  const computeKeyboardOpts = computed(() => {
430
- return Object.assign({}, XEUtils.clone(getConfig().table.keyboardConfig, true), props.keyboardConfig);
430
+ return Object.assign({}, getConfig().table.keyboardConfig, props.keyboardConfig);
431
431
  });
432
432
  const computeClipOpts = computed(() => {
433
- return Object.assign({}, XEUtils.clone(getConfig().table.clipConfig, true), props.clipConfig);
433
+ return Object.assign({}, getConfig().table.clipConfig, props.clipConfig);
434
434
  });
435
435
  const computeFNROpts = computed(() => {
436
- return Object.assign({}, XEUtils.clone(getConfig().table.fnrConfig, true), props.fnrConfig);
436
+ return Object.assign({}, getConfig().table.fnrConfig, props.fnrConfig);
437
437
  });
438
438
  const computeMenuOpts = computed(() => {
439
- return Object.assign({}, XEUtils.clone(getConfig().table.menuConfig, true), props.menuConfig);
439
+ return Object.assign({}, getConfig().table.menuConfig, props.menuConfig);
440
440
  });
441
441
  const computeHeaderMenu = computed(() => {
442
442
  const menuOpts = computeMenuOpts.value;
@@ -471,31 +471,31 @@ export default defineComponent({
471
471
  return rest;
472
472
  });
473
473
  const computeExportOpts = computed(() => {
474
- return Object.assign({}, XEUtils.clone(getConfig().table.exportConfig, true), props.exportConfig);
474
+ return Object.assign({}, getConfig().table.exportConfig, props.exportConfig);
475
475
  });
476
476
  const computeImportOpts = computed(() => {
477
- return Object.assign({}, XEUtils.clone(getConfig().table.importConfig, true), props.importConfig);
477
+ return Object.assign({}, getConfig().table.importConfig, props.importConfig);
478
478
  });
479
479
  const computePrintOpts = computed(() => {
480
- return Object.assign({}, XEUtils.clone(getConfig().table.printConfig, true), props.printConfig);
480
+ return Object.assign({}, getConfig().table.printConfig, props.printConfig);
481
481
  });
482
482
  const computeExpandOpts = computed(() => {
483
- return Object.assign({}, XEUtils.clone(getConfig().table.expandConfig, true), props.expandConfig);
483
+ return Object.assign({}, getConfig().table.expandConfig, props.expandConfig);
484
484
  });
485
485
  const computeTreeOpts = computed(() => {
486
- return Object.assign({}, XEUtils.clone(getConfig().table.treeConfig, true), props.treeConfig);
486
+ return Object.assign({}, getConfig().table.treeConfig, props.treeConfig);
487
487
  });
488
488
  const computeEmptyOpts = computed(() => {
489
- return Object.assign({}, XEUtils.clone(getConfig().table.emptyRender, true), props.emptyRender);
489
+ return Object.assign({}, getConfig().table.emptyRender, props.emptyRender);
490
490
  });
491
491
  const computeLoadingOpts = computed(() => {
492
- return Object.assign({}, XEUtils.clone(getConfig().table.loadingConfig, true), props.loadingConfig);
492
+ return Object.assign({}, getConfig().table.loadingConfig, props.loadingConfig);
493
493
  });
494
494
  const computeCellOffsetWidth = computed(() => {
495
495
  return props.border ? Math.max(2, Math.ceil(reactData.scrollbarWidth / reactData.tableColumn.length)) : 1;
496
496
  });
497
497
  const computeCustomOpts = computed(() => {
498
- return Object.assign({}, XEUtils.clone(getConfig().table.customConfig, true), props.customConfig);
498
+ return Object.assign({}, getConfig().table.customConfig, props.customConfig);
499
499
  });
500
500
  const computeAutoWidthColumnList = computed(() => {
501
501
  const { visibleColumn } = internalData;
@@ -5402,11 +5402,13 @@ export default defineComponent({
5402
5402
  cacheRowMap(isSource) {
5403
5403
  const { treeConfig } = props;
5404
5404
  const treeOpts = computeTreeOpts.value;
5405
- let { fullDataRowIdData, fullAllDataRowIdData, tableFullData, tableFullTreeData } = internalData;
5405
+ const { fullAllDataRowIdData, tableFullData, tableFullTreeData } = internalData;
5406
5406
  const childrenField = treeOpts.children || treeOpts.childrenField;
5407
5407
  const hasChildField = treeOpts.hasChild || treeOpts.hasChildField;
5408
5408
  const rowkey = getRowkey($xeTable);
5409
5409
  const isLazy = treeConfig && treeOpts.lazy;
5410
+ const fullAllDataRowIdMaps = {};
5411
+ const fullDataRowIdMaps = {};
5410
5412
  const handleRow = (row, index, items, path, parent, nodes) => {
5411
5413
  let rowid = getRowid($xeTable, row);
5412
5414
  const seq = treeConfig && path ? toTreePathSeq(path) : index + 1;
@@ -5418,16 +5420,20 @@ export default defineComponent({
5418
5420
  if (isLazy && row[hasChildField] && XEUtils.isUndefined(row[childrenField])) {
5419
5421
  row[childrenField] = null;
5420
5422
  }
5421
- const rest = { row, rowid, seq, index: treeConfig && parent ? -1 : index, _index: -1, $index: -1, items, parent, level };
5423
+ let cacheItem = fullAllDataRowIdData[rowid];
5424
+ if (!cacheItem) {
5425
+ cacheItem = { row, rowid, seq, index: -1, _index: -1, $index: -1, items, parent, level };
5426
+ }
5422
5427
  if (isSource) {
5423
- fullDataRowIdData[rowid] = rest;
5428
+ cacheItem.index = treeConfig && parent ? -1 : index;
5429
+ fullDataRowIdMaps[rowid] = cacheItem;
5424
5430
  }
5425
- fullAllDataRowIdData[rowid] = rest;
5431
+ fullAllDataRowIdMaps[rowid] = cacheItem;
5426
5432
  };
5427
5433
  if (isSource) {
5428
- fullDataRowIdData = internalData.fullDataRowIdData = {};
5434
+ internalData.fullDataRowIdData = fullDataRowIdMaps;
5429
5435
  }
5430
- fullAllDataRowIdData = internalData.fullAllDataRowIdData = {};
5436
+ internalData.fullAllDataRowIdData = fullAllDataRowIdMaps;
5431
5437
  if (treeConfig) {
5432
5438
  XEUtils.eachTree(tableFullTreeData, handleRow, { children: childrenField });
5433
5439
  }
package/es/ui/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  import { getFuncText } from './src/utils';
3
- export const version = "4.7.86";
3
+ export const version = "4.7.87";
4
4
  VxeUI.version = version;
5
- VxeUI.tableVersion = "4.7.86";
5
+ VxeUI.tableVersion = "4.7.87";
6
6
  VxeUI.setConfig({
7
7
  emptyCell: ' ',
8
8
  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.86"}`;
3
+ const version = `table v${"4.7.87"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
@@ -116,16 +116,16 @@ var _default = exports.default = (0, _vue.defineComponent)({
116
116
  return proxyOpts.showActiveMsg;
117
117
  });
118
118
  const computePagerOpts = (0, _vue.computed)(() => {
119
- return Object.assign({}, _xeUtils.default.clone(getConfig().grid.pagerConfig, true), props.pagerConfig);
119
+ return Object.assign({}, getConfig().grid.pagerConfig, props.pagerConfig);
120
120
  });
121
121
  const computeFormOpts = (0, _vue.computed)(() => {
122
- return Object.assign({}, _xeUtils.default.clone(getConfig().grid.formConfig, true), props.formConfig);
122
+ return Object.assign({}, getConfig().grid.formConfig, props.formConfig);
123
123
  });
124
124
  const computeToolbarOpts = (0, _vue.computed)(() => {
125
- return Object.assign({}, _xeUtils.default.clone(getConfig().grid.toolbarConfig, true), props.toolbarConfig);
125
+ return Object.assign({}, getConfig().grid.toolbarConfig, props.toolbarConfig);
126
126
  });
127
127
  const computeZoomOpts = (0, _vue.computed)(() => {
128
- return Object.assign({}, _xeUtils.default.clone(getConfig().grid.zoomConfig, true), props.zoomConfig);
128
+ return Object.assign({}, getConfig().grid.zoomConfig, props.zoomConfig);
129
129
  });
130
130
  const computeStyles = (0, _vue.computed)(() => {
131
131
  return reactData.isZMax ? {
@@ -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","setRow","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","getCustomStoreData","openTooltip","getCellLabel","getCellElement","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(G,e){const{slots:i,emit:r}=e;var y=_xeUtils.default.uniqueId();const l=_ui.VxeUI.getComponent("VxeForm"),u=_ui.VxeUI.getComponent("VxePager"),R=useFns.useSize(G)["computeSize"],Q=(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)(),W=(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=W.value;if(t&&t[o])return t[o](...e)}}),t};const Y=t(tableComponentMethodKeys),J=(tableComponentMethodKeys.forEach(o=>{Y[o]=(...e)=>{var t=W.value;if(t&&t[o])return t&&t[o](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),G.proxyConfig))),ie=(0,_vue.computed)(()=>{var e=J.value;return _xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg}),X=(0,_vue.computed)(()=>{return J.value.showActiveMsg}),ee=(0,_vue.computed)(()=>Object.assign({},_xeUtils.default.clone(getConfig().grid.pagerConfig,!0),G.pagerConfig)),b=(0,_vue.computed)(()=>Object.assign({},_xeUtils.default.clone(getConfig().grid.formConfig,!0),G.formConfig)),te=(0,_vue.computed)(()=>Object.assign({},_xeUtils.default.clone(getConfig().grid.toolbarConfig,!0),G.toolbarConfig)),o=(0,_vue.computed)(()=>Object.assign({},_xeUtils.default.clone(getConfig().grid.zoomConfig,!0),G.zoomConfig)),w=(0,_vue.computed)(()=>Q.isZMax?{zIndex:Q.tZindex}:null),O=(0,_vue.computed)(()=>{const t={},o=G;return tableComponentPropKeys.forEach(e=>{t[e]=o[e]}),t}),I=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,loading:o,editConfig:r,proxyConfig:a}=G,{isZMax:n,tableLoading:s,tablePage:i,tableData:l}=Q,u=O.value,d=J.value,g=ee.value,c=Object.assign({},u);return n&&(u.maxHeight?c.maxHeight="100%":c.height="100%"),a&&(0,_utils.isEnableConf)(d)&&(c.loading=o||s,c.data=l,t)&&d.seq&&(0,_utils.isEnableConf)(g)&&(c.seqConfig=Object.assign({},e,{startIndex:(i.currentPage-1)*i.pageSize})),r&&(c.editConfig=Object.assign({},r)),c}),k=(0,_vue.computed)(()=>{var e=G["layouts"];return e&&e.length?e:getConfig().grid.layouts||["Form","Toolbar","Top","Table","Bottom","Pager"]}),U={refElem:d,refTable:W,refForm:g,refToolbar:n,refPager:c},P={computeProxyOpts:J,computePagerOpts:ee,computeFormOpts:b,computeToolbarOpts:te,computeZoomOpts:o},oe={xID:y,props:G,context:e,reactData:Q,getRefMaps:()=>U,getComputeMaps:()=>P},a=()=>{var e=te.value;G.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=W.value,t=n.value;e&&t&&e.connect(t)})},re=()=>{var e=G["proxyConfig"],t=Q["formData"],o=J.value,r=b.value;return e&&(0,_utils.isEnableConf)(o)&&o.form?t:r.data},s=()=>{var e=Q["tablePage"],t=G["pagerConfig"],o=ee.value,{currentPage:r,pageSize:a}=o;t&&(0,_utils.isEnableConf)(o)&&(r&&(e.currentPage=r),a)&&(e.pageSize=a)},ae=(e,t)=>{var o=J.value,o=(o.response||o.props||{}).message;let r;return(r=e&&o?_xeUtils.default.isFunction(o)?o({data:e,$grid:oe}):_xeUtils.default.get(e,o):r)||getI18n(t)},ne=(e,t,o)=>{var r=X.value,a=Y.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()},j=e=>{var t=G["proxyConfig"],o=Q["tablePage"];const{$event:r,currentPage:a,pageSize:n}=e;var s=J.value;o.currentPage=a,o.pageSize=n,se.dispatchEvent("page-change",e,r),t&&(0,_utils.isEnableConf)(s)&&se.commitProxy("query").then(e=>{se.dispatchEvent("proxy-query",e,r)})},T=t=>{var e=W.value,o=G["proxyConfig"],e=e.getComputeMaps()["computeSortOpts"],r=J.value;e.value.remote&&(Q.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(r)&&(Q.tablePage.currentPage=1,se.commitProxy("query").then(e=>{se.dispatchEvent("proxy-query",e,t.$event)})),se.dispatchEvent("sort-change",t,t.$event)},D=t=>{var e=W.value,o=G["proxyConfig"],e=e.getComputeMaps()["computeFilterOpts"],r=J.value;e.value.remote&&(Q.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(r)&&(Q.tablePage.currentPage=1,se.commitProxy("query").then(e=>{se.dispatchEvent("proxy-query",e,t.$event)})),se.dispatchEvent("filter-change",t,t.$event)},V=t=>{var e=G["proxyConfig"],o=J.value;e&&(0,_utils.isEnableConf)(o)&&se.commitProxy("reload").then(e=>{se.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),se.dispatchEvent("form-submit",t,t.$event)},S=e=>{var t=G["proxyConfig"];const o=e["$event"];var r=J.value;t&&(0,_utils.isEnableConf)(r)&&se.commitProxy("reload").then(e=>{se.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),se.dispatchEvent("form-reset",e,o)},q=e=>{se.dispatchEvent("form-submit-invalid",e,e.$event)},M=e=>{var t=e["$event"];(0,_vue.nextTick)(()=>Y.recalculate(!0)),se.dispatchEvent("form-toggle-collapse",e,t),se.dispatchEvent("form-collapse",e,t)},_=e=>{var t=Q["isZMax"];return(e?!t:t)&&(Q.isZMax=!t,Q.tZindex<(0,_utils.getLastZIndex)())&&(Q.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>Y.recalculate(!0)).then(()=>Q.isZMax)},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(i[e])return i[e];"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notSlot",[e])}return null},F=()=>{var{formConfig:e,proxyConfig:t}=G,o=Q["formData"],r=J.value,a=b.value;if(e&&(0,_utils.isEnableConf)(a)||i.form){let e=[];if(i.form)e=i.form({$grid:oe});else if(a.items){const n={};if(!a.inited){a.inited=!0;const s=r.beforeItem;r&&s&&a.items.forEach(e=>{s({$grid:oe,item:e})})}a.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||i[e]&&(n[e]=i[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:V,onReset:S,onSubmitInvalid:q,onCollapse:M}),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=G["toolbarConfig"],a=te.value;if(r&&(0,_utils.isEnableConf)(a)||i.toolbar){let e=[];return i.toolbar?e=i.toolbar({$grid:oe}):(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=()=>i.top?(0,_vue.h)("div",{ref:f,key:"top",class:"vxe-grid--top-wrapper"},i.top({$grid:oe})):(0,_vue.createCommentVNode)(),$=()=>{var e=i.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:oe})):(0,_vue.createCommentVNode)()},z=()=>{var e=i.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:oe})):(0,_vue.createCommentVNode)()},Z=()=>{var e=G["proxyConfig"],t=I.value,o=J.value,r=Object.assign({},H);const a=i.empty,n=i.loading;e&&(0,_utils.isEnableConf)(o)&&(o.sort&&(r.onSortChange=T),o.filter)&&(r.onFilterChange=D);e={};return a&&(e.empty=()=>a({$grid:oe})),n&&(e.loading=()=>n({$grid:oe})),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:W},t),r),e)])},B=()=>i.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},i.bottom({$grid:oe})):(0,_vue.createCommentVNode)(),A=()=>{var t,o,{proxyConfig:r,pagerConfig:a}=G,n=J.value,s=ee.value;if(a&&(0,_utils.isEnableConf)(s)||i.pager){let e=[];return i.pager?e=i.pager({$grid:oe}):(a={},(o=s.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},s),r&&(0,_utils.isEnableConf)(n)?Q.tablePage:{}),{onPageChange:j}),a))),(0,_vue.h)("div",{ref:x,key:"pager",class:"vxe-grid--pager-wrapper"},e)}return(0,_vue.createCommentVNode)()},H={},K=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);H[e]=(...e)=>r(t,...e)}),()=>{var{proxyConfig:e,formConfig:t}=G,o=Q["proxyInited"],r=J.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}}),Q.formData=n}o||!(Q.proxyInited=!0)!==r.autoLoad&&(0,_vue.nextTick)().then(()=>se.commitProxy("_init")).then(e=>{se.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("init"))})}}),le=e=>{var t=o.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&Q.isZMax&&!1!==t.escRestore&&h.triggerZoomEvent(e)};const se={dispatchEvent:(e,t,o)=>{r(e,createEvent(o,{$grid:oe},t))},commitProxy(t,...r){const{toolbarConfig:q,pagerConfig:a,editRules:M,validConfig:F}=G,n=Q["tablePage"],N=X.value,o=ie.value;var e=J.value;const L=ee.value;var s=te.value;const{beforeQuery:$,afterQuery:z,beforeDelete:Z,afterDelete:B,beforeSave:A,afterSave:H,ajax:i={}}=e,l=e.response||e.props||{},u=W.value;var d=re();let g=null,c=null;c=_xeUtils.default.isString(t)?(e=s["buttons"],s=q&&(0,_utils.isEnableConf)(s)&&e?_xeUtils.default.findTree(e,e=>e.code===t,{children:"dropdowns"}):null,g=s?s.item:null,t):(g=t).code;var v=g?g.params:null;switch(c){case"insert":return u.insert({});case"insert_edit":return u.insert({}).then(({row:e})=>u.setEditRow(e));case"insert_actived":return u.insert({}).then(({row:e})=>u.setEditRow(e));case"mark_cancel":f=c,x=X.value,m=W.value,(p=m.getCheckboxRecords()).length?(m.togglePendingRow(p),Y.clearCheckboxRow()):x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:f,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return ne(c,"vxe.grid.removeSelectRecord",()=>u.removeCheckboxRow());case"import":u.importData(v);break;case"open_import":u.openImport(v);break;case"export":u.exportData(v);break;case"open_export":u.openExport(v);break;case"reset_custom":return u.resetColumn(!0);case"_init":case"reload":case"query":{var m=i.query;const _=i.querySuccess,C=i.queryError;if(m){var f,p="_init"===c,x="reload"===c;let t=[],o=[],e={};if(a&&((p||x)&&(n.currentPage=1),(0,_utils.isEnableConf)(L))&&(e=Object.assign({},n)),p){let e=null;u&&(f=u.getComputeMaps()["computeSortOpts"],b=f.value,e=b.defaultSort),e&&(_xeUtils.default.isArray(e)||(e=[e]),t=e.map(e=>({field:e.field,property:e.field,order:e.order}))),u&&(o=u.getCheckedFilters())}else u&&(x?u.clearAll():(t=u.getSortColumns(),o=u.getCheckedFilters()));const h={code:c,button:g,isInited:p,isReload:x,$grid:oe,page:e,sort:t.length?t[0]:{},sorts:t,filters:o,form:d,options:m};return Q.sortData=t,Q.filterData=o,Q.tableLoading=!0,Promise.resolve(($||m)(h,...r)).then(e=>{var t,o;return Q.tableLoading=!1,e?a&&(0,_utils.isEnableConf)(L)?(o=l.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:oe}):_xeUtils.default.get(e,o||"page.total"))||0,n.total=_xeUtils.default.toNumber(o),t=l.result,Q.tableData=(_xeUtils.default.isFunction(t)?t({data:e,$grid:oe}):_xeUtils.default.get(e,t||"result"))||[],t=Math.max(Math.ceil(o/n.pageSize),1),n.currentPage>t&&(n.currentPage=t)):(o=l.list,Q.tableData=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:oe}):_xeUtils.default.get(e,o):e)||[]):Q.tableData=[],z&&z(h,...r),_&&_(Object.assign(Object.assign({},h),{response:e})),{status:!0}}).catch(e=>(Q.tableLoading=!1,C&&C(Object.assign(Object.assign({},h),{response:e})),{status:!1}))}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{const E=i.delete,y=i.deleteSuccess,R=i.deleteError;if(E){const w=Y.getCheckboxRecords(),O=w.filter(e=>!u.isInsertByRow(e));var b={removeRecords:O};const I={$grid:oe,code:c,button:g,body:b,form:d,options:E};if(w.length)return ne(c,"vxe.grid.deleteSelectRecord",()=>O.length?(Q.tableLoading=!0,Promise.resolve((Z||E)(I,...r)).then(e=>(Q.tableLoading=!1,u.setPendingRow(O,!1),o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:ae(e,"vxe.grid.delSuccess"),status:"success"}),B?B(I,...r):se.commitProxy("query"),y&&y(Object.assign(Object.assign({},I),{response:e})),{status:!0})).catch(e=>(Q.tableLoading=!1,o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:ae(e,"vxe.grid.operError"),status:"error"}),R&&R(Object.assign(Object.assign({},I),{response:e})),{status:!1}))):u.remove(w));N&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,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 k=i.save,U=i.saveSuccess,P=i.saveError;if(k){const j=u.getRecordset(),{insertRecords:T,removeRecords:K,updateRecords:D,pendingRecords:V}=j,S={$grid:oe,code:c,button:g,body:j,form:d,options:k};T.length&&(j.pendingRecords=V.filter(e=>-1===u.findRowIndexOf(T,e))),V.length&&(j.insertRecords=T.filter(e=>-1===u.findRowIndexOf(V,e)));let e=Promise.resolve();return(e=M?u[F&&"full"===F.msgMode?"fullValidate":"validate"](j.insertRecords.concat(D)):e).then(e=>{if(!e)return j.insertRecords.length||K.length||D.length||j.pendingRecords.length?(Q.tableLoading=!0,Promise.resolve((A||k)(S,...r)).then(e=>(Q.tableLoading=!1,u.clearPendingRow(),o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:ae(e,"vxe.grid.saveSuccess"),status:"success"}),H?H(S,...r):se.commitProxy("query"),U&&U(Object.assign(Object.assign({},S),{response:e})),{status:!0})).catch(e=>(Q.tableLoading=!1,o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:ae(e,"vxe.grid.operError"),status:"error"}),P&&P(Object.assign(Object.assign({},S),{response:e})),{status:!1}))):void(N&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,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 b=commands.get(c);b&&((b=b.tableCommandMethod||b.commandMethod)?b({code:c,button:g,$grid:oe,$table:u},...r):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notCommands",[c]))}return(0,_vue.nextTick)()},zoom(){return Q.isZMax?se.revert():se.maximize()},isMaximized(){return Q.isZMax},maximize(){return _(!0)},revert(){return _()},getFormData:re,getFormItems(e){var t=b.value,o=G["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=W.value;return G.proxyConfig?(e=Q["sortData"],{data:Q.tableData,filter:Q.filterData,form:re(),sort:e.length?e[0]:{},sorts:e,pager:Q.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},h=("development"===process.env.NODE_ENV&&(se.loadColumn=e=>{var t=W.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||i[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},se.reloadColumn=e=>(Y.clearAll(),se.loadColumn(e))),{extendTableMethods:t,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=i[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e=G["height"],t=Q["isZMax"],o=d.value,r=v.value,a=m.value,n=f.value,s=p.value,i=x.value;return(t||"auto"!==e&&"100%"!==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)(s)+(0,_dom.getOffsetHeight)(i)},getParentHeight(){var e=d.value;return e?(Q.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-h.getExcludeHeight():0},triggerToolbarCommitEvent(e,t){const o=e["code"];return se.commitProxy(e,t).then(e=>{o&&e&&e.status&&["query","reload","delete","save"].includes(o)&&se.dispatchEvent("delete"===o||"save"===o?"proxy-"+o:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===o}),t)})},triggerToolbarBtnEvent(e,t){h.triggerToolbarCommitEvent(e,t),se.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){h.triggerToolbarCommitEvent(e,t),se.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){se.zoom(),se.dispatchEvent("zoom",{type:Q.isZMax?"max":"revert"},e)}}),E=(Object.assign(oe,Y,se,h),(0,_vue.ref)(0));(0,_vue.watch)(()=>G.columns?G.columns.length:-1,()=>{E.value++}),(0,_vue.watch)(()=>G.columns,()=>{E.value++}),(0,_vue.watch)(E,()=>{(0,_vue.nextTick)(()=>oe.loadColumn(G.columns||[]))}),(0,_vue.watch)(()=>G.toolbarConfig,()=>{a()}),(0,_vue.watch)(()=>G.pagerConfig,()=>{s()}),(0,_vue.watch)(()=>G.proxyConfig,()=>{K()}),hooks.forEach(e=>{var e=e["setupGrid"];e&&(e=e(oe))&&_xeUtils.default.isObject(e)&&Object.assign(oe,e)}),s(),(0,_vue.onMounted)(()=>{"development"===process.env.NODE_ENV&&(0,_vue.nextTick)(()=>{G.formConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),G.pagerConfig&&!u&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"])}),(0,_vue.nextTick)(()=>{var e=G["columns"];e&&e.length&&oe.loadColumn(e),a(),K()}),globalEvents.on(oe,"keydown",le)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(oe,"keydown")});return oe.renderVN=()=>{var e=R.value,t=w.value;return(0,_vue.h)("div",{ref:d,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!G.animat,"is--round":G.round,"is--maximize":Q.isZMax,"is--loading":G.loading||Q.tableLoading}],style:t},(()=>{const t=[];return k.value.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"},[$(),Z(),z()]));break;case"Bottom":t.push(B());break;case"Pager":t.push(A());break;default:"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t})())},(0,_vue.provide)("$xeGrid",oe),oe},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","setRow","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","getCustomStoreData","openTooltip","getCellLabel","getCellElement","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(G,e){const{slots:i,emit:r}=e;var y=_xeUtils.default.uniqueId();const l=_ui.VxeUI.getComponent("VxeForm"),u=_ui.VxeUI.getComponent("VxePager"),R=useFns.useSize(G)["computeSize"],Q=(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)(),W=(0,_vue.ref)(),g=(0,_vue.ref)(),n=(0,_vue.ref)(),c=(0,_vue.ref)(),v=(0,_vue.ref)(),m=(0,_vue.ref)(),p=(0,_vue.ref)(),f=(0,_vue.ref)(),x=(0,_vue.ref)();var t=e=>{const t={};return e.forEach(o=>{t[o]=(...e)=>{var t=W.value;if(t&&t[o])return t[o](...e)}}),t};const Y=t(tableComponentMethodKeys),J=(tableComponentMethodKeys.forEach(o=>{Y[o]=(...e)=>{var t=W.value;if(t&&t[o])return t&&t[o](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),G.proxyConfig))),ie=(0,_vue.computed)(()=>{var e=J.value;return _xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg}),X=(0,_vue.computed)(()=>{return J.value.showActiveMsg}),ee=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,G.pagerConfig)),b=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,G.formConfig)),te=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,G.toolbarConfig)),o=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,G.zoomConfig)),w=(0,_vue.computed)(()=>Q.isZMax?{zIndex:Q.tZindex}:null),O=(0,_vue.computed)(()=>{const t={},o=G;return tableComponentPropKeys.forEach(e=>{t[e]=o[e]}),t}),I=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,loading:o,editConfig:r,proxyConfig:a}=G,{isZMax:n,tableLoading:s,tablePage:i,tableData:l}=Q,u=O.value,d=J.value,g=ee.value,c=Object.assign({},u);return n&&(u.maxHeight?c.maxHeight="100%":c.height="100%"),a&&(0,_utils.isEnableConf)(d)&&(c.loading=o||s,c.data=l,t)&&d.seq&&(0,_utils.isEnableConf)(g)&&(c.seqConfig=Object.assign({},e,{startIndex:(i.currentPage-1)*i.pageSize})),r&&(c.editConfig=Object.assign({},r)),c}),k=(0,_vue.computed)(()=>{var e=G["layouts"];return e&&e.length?e:getConfig().grid.layouts||["Form","Toolbar","Top","Table","Bottom","Pager"]}),P={refElem:d,refTable:W,refForm:g,refToolbar:n,refPager:c},U={computeProxyOpts:J,computePagerOpts:ee,computeFormOpts:b,computeToolbarOpts:te,computeZoomOpts:o},oe={xID:y,props:G,context:e,reactData:Q,getRefMaps:()=>P,getComputeMaps:()=>U},a=()=>{var e=te.value;G.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=W.value,t=n.value;e&&t&&e.connect(t)})},re=()=>{var e=G["proxyConfig"],t=Q["formData"],o=J.value,r=b.value;return e&&(0,_utils.isEnableConf)(o)&&o.form?t:r.data},s=()=>{var e=Q["tablePage"],t=G["pagerConfig"],o=ee.value,{currentPage:r,pageSize:a}=o;t&&(0,_utils.isEnableConf)(o)&&(r&&(e.currentPage=r),a)&&(e.pageSize=a)},ae=(e,t)=>{var o=J.value,o=(o.response||o.props||{}).message;let r;return(r=e&&o?_xeUtils.default.isFunction(o)?o({data:e,$grid:oe}):_xeUtils.default.get(e,o):r)||getI18n(t)},ne=(e,t,o)=>{var r=X.value,a=Y.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()},j=e=>{var t=G["proxyConfig"],o=Q["tablePage"];const{$event:r,currentPage:a,pageSize:n}=e;var s=J.value;o.currentPage=a,o.pageSize=n,se.dispatchEvent("page-change",e,r),t&&(0,_utils.isEnableConf)(s)&&se.commitProxy("query").then(e=>{se.dispatchEvent("proxy-query",e,r)})},T=t=>{var e=W.value,o=G["proxyConfig"],e=e.getComputeMaps()["computeSortOpts"],r=J.value;e.value.remote&&(Q.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(r)&&(Q.tablePage.currentPage=1,se.commitProxy("query").then(e=>{se.dispatchEvent("proxy-query",e,t.$event)})),se.dispatchEvent("sort-change",t,t.$event)},D=t=>{var e=W.value,o=G["proxyConfig"],e=e.getComputeMaps()["computeFilterOpts"],r=J.value;e.value.remote&&(Q.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(r)&&(Q.tablePage.currentPage=1,se.commitProxy("query").then(e=>{se.dispatchEvent("proxy-query",e,t.$event)})),se.dispatchEvent("filter-change",t,t.$event)},V=t=>{var e=G["proxyConfig"],o=J.value;e&&(0,_utils.isEnableConf)(o)&&se.commitProxy("reload").then(e=>{se.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),se.dispatchEvent("form-submit",t,t.$event)},S=e=>{var t=G["proxyConfig"];const o=e["$event"];var r=J.value;t&&(0,_utils.isEnableConf)(r)&&se.commitProxy("reload").then(e=>{se.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),se.dispatchEvent("form-reset",e,o)},q=e=>{se.dispatchEvent("form-submit-invalid",e,e.$event)},M=e=>{var t=e["$event"];(0,_vue.nextTick)(()=>Y.recalculate(!0)),se.dispatchEvent("form-toggle-collapse",e,t),se.dispatchEvent("form-collapse",e,t)},_=e=>{var t=Q["isZMax"];return(e?!t:t)&&(Q.isZMax=!t,Q.tZindex<(0,_utils.getLastZIndex)())&&(Q.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>Y.recalculate(!0)).then(()=>Q.isZMax)},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(i[e])return i[e];"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notSlot",[e])}return null},F=()=>{var{formConfig:e,proxyConfig:t}=G,o=Q["formData"],r=J.value,a=b.value;if(e&&(0,_utils.isEnableConf)(a)||i.form){let e=[];if(i.form)e=i.form({$grid:oe});else if(a.items){const n={};if(!a.inited){a.inited=!0;const s=r.beforeItem;r&&s&&a.items.forEach(e=>{s({$grid:oe,item:e})})}a.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||i[e]&&(n[e]=i[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:V,onReset:S,onSubmitInvalid:q,onCollapse:M}),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=G["toolbarConfig"],a=te.value;if(r&&(0,_utils.isEnableConf)(a)||i.toolbar){let e=[];return i.toolbar?e=i.toolbar({$grid:oe}):(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=()=>i.top?(0,_vue.h)("div",{ref:p,key:"top",class:"vxe-grid--top-wrapper"},i.top({$grid:oe})):(0,_vue.createCommentVNode)(),$=()=>{var e=i.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:oe})):(0,_vue.createCommentVNode)()},z=()=>{var e=i.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:oe})):(0,_vue.createCommentVNode)()},Z=()=>{var e=G["proxyConfig"],t=I.value,o=J.value,r=Object.assign({},H);const a=i.empty,n=i.loading;e&&(0,_utils.isEnableConf)(o)&&(o.sort&&(r.onSortChange=T),o.filter)&&(r.onFilterChange=D);e={};return a&&(e.empty=()=>a({$grid:oe})),n&&(e.loading=()=>n({$grid:oe})),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:W},t),r),e)])},B=()=>i.bottom?(0,_vue.h)("div",{ref:f,key:"bottom",class:"vxe-grid--bottom-wrapper"},i.bottom({$grid:oe})):(0,_vue.createCommentVNode)(),A=()=>{var t,o,{proxyConfig:r,pagerConfig:a}=G,n=J.value,s=ee.value;if(a&&(0,_utils.isEnableConf)(s)||i.pager){let e=[];return i.pager?e=i.pager({$grid:oe}):(a={},(o=s.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},s),r&&(0,_utils.isEnableConf)(n)?Q.tablePage:{}),{onPageChange:j}),a))),(0,_vue.h)("div",{ref:x,key:"pager",class:"vxe-grid--pager-wrapper"},e)}return(0,_vue.createCommentVNode)()},H={},K=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);H[e]=(...e)=>r(t,...e)}),()=>{var{proxyConfig:e,formConfig:t}=G,o=Q["proxyInited"],r=J.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}}),Q.formData=n}o||!(Q.proxyInited=!0)!==r.autoLoad&&(0,_vue.nextTick)().then(()=>se.commitProxy("_init")).then(e=>{se.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("init"))})}}),le=e=>{var t=o.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&Q.isZMax&&!1!==t.escRestore&&h.triggerZoomEvent(e)};const se={dispatchEvent:(e,t,o)=>{r(e,createEvent(o,{$grid:oe},t))},commitProxy(t,...r){const{toolbarConfig:q,pagerConfig:a,editRules:M,validConfig:F}=G,n=Q["tablePage"],N=X.value,o=ie.value;var e=J.value;const L=ee.value;var s=te.value;const{beforeQuery:$,afterQuery:z,beforeDelete:Z,afterDelete:B,beforeSave:A,afterSave:H,ajax:i={}}=e,l=e.response||e.props||{},u=W.value;var d=re();let g=null,c=null;c=_xeUtils.default.isString(t)?(e=s["buttons"],s=q&&(0,_utils.isEnableConf)(s)&&e?_xeUtils.default.findTree(e,e=>e.code===t,{children:"dropdowns"}):null,g=s?s.item:null,t):(g=t).code;var v=g?g.params:null;switch(c){case"insert":return u.insert({});case"insert_edit":return u.insert({}).then(({row:e})=>u.setEditRow(e));case"insert_actived":return u.insert({}).then(({row:e})=>u.setEditRow(e));case"mark_cancel":p=c,x=X.value,m=W.value,(f=m.getCheckboxRecords()).length?(m.togglePendingRow(f),Y.clearCheckboxRow()):x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:p,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return ne(c,"vxe.grid.removeSelectRecord",()=>u.removeCheckboxRow());case"import":u.importData(v);break;case"open_import":u.openImport(v);break;case"export":u.exportData(v);break;case"open_export":u.openExport(v);break;case"reset_custom":return u.resetColumn(!0);case"_init":case"reload":case"query":{var m=i.query;const _=i.querySuccess,C=i.queryError;if(m){var p,f="_init"===c,x="reload"===c;let t=[],o=[],e={};if(a&&((f||x)&&(n.currentPage=1),(0,_utils.isEnableConf)(L))&&(e=Object.assign({},n)),f){let e=null;u&&(p=u.getComputeMaps()["computeSortOpts"],b=p.value,e=b.defaultSort),e&&(_xeUtils.default.isArray(e)||(e=[e]),t=e.map(e=>({field:e.field,property:e.field,order:e.order}))),u&&(o=u.getCheckedFilters())}else u&&(x?u.clearAll():(t=u.getSortColumns(),o=u.getCheckedFilters()));const h={code:c,button:g,isInited:f,isReload:x,$grid:oe,page:e,sort:t.length?t[0]:{},sorts:t,filters:o,form:d,options:m};return Q.sortData=t,Q.filterData=o,Q.tableLoading=!0,Promise.resolve(($||m)(h,...r)).then(e=>{var t,o;return Q.tableLoading=!1,e?a&&(0,_utils.isEnableConf)(L)?(o=l.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:oe}):_xeUtils.default.get(e,o||"page.total"))||0,n.total=_xeUtils.default.toNumber(o),t=l.result,Q.tableData=(_xeUtils.default.isFunction(t)?t({data:e,$grid:oe}):_xeUtils.default.get(e,t||"result"))||[],t=Math.max(Math.ceil(o/n.pageSize),1),n.currentPage>t&&(n.currentPage=t)):(o=l.list,Q.tableData=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:oe}):_xeUtils.default.get(e,o):e)||[]):Q.tableData=[],z&&z(h,...r),_&&_(Object.assign(Object.assign({},h),{response:e})),{status:!0}}).catch(e=>(Q.tableLoading=!1,C&&C(Object.assign(Object.assign({},h),{response:e})),{status:!1}))}"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{const E=i.delete,y=i.deleteSuccess,R=i.deleteError;if(E){const w=Y.getCheckboxRecords(),O=w.filter(e=>!u.isInsertByRow(e));var b={removeRecords:O};const I={$grid:oe,code:c,button:g,body:b,form:d,options:E};if(w.length)return ne(c,"vxe.grid.deleteSelectRecord",()=>O.length?(Q.tableLoading=!0,Promise.resolve((Z||E)(I,...r)).then(e=>(Q.tableLoading=!1,u.setPendingRow(O,!1),o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:ae(e,"vxe.grid.delSuccess"),status:"success"}),B?B(I,...r):se.commitProxy("query"),y&&y(Object.assign(Object.assign({},I),{response:e})),{status:!0})).catch(e=>(Q.tableLoading=!1,o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:ae(e,"vxe.grid.operError"),status:"error"}),R&&R(Object.assign(Object.assign({},I),{response:e})),{status:!1}))):u.remove(w));N&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,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 k=i.save,P=i.saveSuccess,U=i.saveError;if(k){const j=u.getRecordset(),{insertRecords:T,removeRecords:K,updateRecords:D,pendingRecords:V}=j,S={$grid:oe,code:c,button:g,body:j,form:d,options:k};T.length&&(j.pendingRecords=V.filter(e=>-1===u.findRowIndexOf(T,e))),V.length&&(j.insertRecords=T.filter(e=>-1===u.findRowIndexOf(V,e)));let e=Promise.resolve();return(e=M?u[F&&"full"===F.msgMode?"fullValidate":"validate"](j.insertRecords.concat(D)):e).then(e=>{if(!e)return j.insertRecords.length||K.length||D.length||j.pendingRecords.length?(Q.tableLoading=!0,Promise.resolve((A||k)(S,...r)).then(e=>(Q.tableLoading=!1,u.clearPendingRow(),o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:ae(e,"vxe.grid.saveSuccess"),status:"success"}),H?H(S,...r):se.commitProxy("query"),P&&P(Object.assign(Object.assign({},S),{response:e})),{status:!0})).catch(e=>(Q.tableLoading=!1,o&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:ae(e,"vxe.grid.operError"),status:"error"}),U&&U(Object.assign(Object.assign({},S),{response:e})),{status:!1}))):void(N&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,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 b=commands.get(c);b&&((b=b.tableCommandMethod||b.commandMethod)?b({code:c,button:g,$grid:oe,$table:u},...r):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notCommands",[c]))}return(0,_vue.nextTick)()},zoom(){return Q.isZMax?se.revert():se.maximize()},isMaximized(){return Q.isZMax},maximize(){return _(!0)},revert(){return _()},getFormData:re,getFormItems(e){var t=b.value,o=G["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=W.value;return G.proxyConfig?(e=Q["sortData"],{data:Q.tableData,filter:Q.filterData,form:re(),sort:e.length?e[0]:{},sorts:e,pager:Q.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},h=("development"===process.env.NODE_ENV&&(se.loadColumn=e=>{var t=W.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||i[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},se.reloadColumn=e=>(Y.clearAll(),se.loadColumn(e))),{extendTableMethods:t,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=i[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e=G["height"],t=Q["isZMax"],o=d.value,r=v.value,a=m.value,n=p.value,s=f.value,i=x.value;return(t||"auto"!==e&&"100%"!==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)(s)+(0,_dom.getOffsetHeight)(i)},getParentHeight(){var e=d.value;return e?(Q.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-h.getExcludeHeight():0},triggerToolbarCommitEvent(e,t){const o=e["code"];return se.commitProxy(e,t).then(e=>{o&&e&&e.status&&["query","reload","delete","save"].includes(o)&&se.dispatchEvent("delete"===o||"save"===o?"proxy-"+o:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===o}),t)})},triggerToolbarBtnEvent(e,t){h.triggerToolbarCommitEvent(e,t),se.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){h.triggerToolbarCommitEvent(e,t),se.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){se.zoom(),se.dispatchEvent("zoom",{type:Q.isZMax?"max":"revert"},e)}}),E=(Object.assign(oe,Y,se,h),(0,_vue.ref)(0));(0,_vue.watch)(()=>G.columns?G.columns.length:-1,()=>{E.value++}),(0,_vue.watch)(()=>G.columns,()=>{E.value++}),(0,_vue.watch)(E,()=>{(0,_vue.nextTick)(()=>oe.loadColumn(G.columns||[]))}),(0,_vue.watch)(()=>G.toolbarConfig,()=>{a()}),(0,_vue.watch)(()=>G.pagerConfig,()=>{s()}),(0,_vue.watch)(()=>G.proxyConfig,()=>{K()}),hooks.forEach(e=>{var e=e["setupGrid"];e&&(e=e(oe))&&_xeUtils.default.isObject(e)&&Object.assign(oe,e)}),s(),(0,_vue.onMounted)(()=>{"development"===process.env.NODE_ENV&&(0,_vue.nextTick)(()=>{G.formConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),G.pagerConfig&&!u&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"])}),(0,_vue.nextTick)(()=>{var e=G["columns"];e&&e.length&&oe.loadColumn(e),a(),K()}),globalEvents.on(oe,"keydown",le)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(oe,"keydown")});return oe.renderVN=()=>{var e=R.value,t=w.value;return(0,_vue.h)("div",{ref:d,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!G.animat,"is--round":G.round,"is--maximize":Q.isZMax,"is--loading":G.loading||Q.tableLoading}],style:t},(()=>{const t=[];return k.value.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"},[$(),Z(),z()]));break;case"Bottom":t.push(B());break;case"Pager":t.push(A());break;default:"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t})())},(0,_vue.provide)("$xeGrid",oe),oe},render(){return this.renderVN()}});
package/lib/index.umd.js CHANGED
@@ -1998,9 +1998,9 @@ function eqEmptyValue(cellValue) {
1998
1998
  ;// CONCATENATED MODULE: ./packages/ui/index.ts
1999
1999
 
2000
2000
 
2001
- const version = "4.7.86";
2001
+ const version = "4.7.87";
2002
2002
  core_.VxeUI.version = version;
2003
- core_.VxeUI.tableVersion = "4.7.86";
2003
+ core_.VxeUI.tableVersion = "4.7.87";
2004
2004
  core_.VxeUI.setConfig({
2005
2005
  emptyCell: ' ',
2006
2006
  table: {
@@ -2384,7 +2384,7 @@ var es_array_push = __webpack_require__(4114);
2384
2384
  const {
2385
2385
  log: log_log
2386
2386
  } = core_.VxeUI;
2387
- const log_version = `table v${"4.7.86"}`;
2387
+ const log_version = `table v${"4.7.87"}`;
2388
2388
  const warnLog = log_log.create('warn', log_version);
2389
2389
  const errLog = log_log.create('error', log_version);
2390
2390
  ;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
@@ -8792,13 +8792,13 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
8792
8792
  return '';
8793
8793
  });
8794
8794
  const computeValidOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8795
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.validConfig, true), props.validConfig);
8795
+ return Object.assign({}, table_getConfig().table.validConfig, props.validConfig);
8796
8796
  });
8797
8797
  const computeSXOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8798
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.scrollX, true), props.scrollX);
8798
+ return Object.assign({}, table_getConfig().table.scrollX, props.scrollX);
8799
8799
  });
8800
8800
  const computeSYOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8801
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.scrollY, true), props.scrollY);
8801
+ return Object.assign({}, table_getConfig().table.scrollY, props.scrollY);
8802
8802
  });
8803
8803
  const computeRowHeightMaps = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8804
8804
  return {
@@ -8809,31 +8809,31 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
8809
8809
  };
8810
8810
  });
8811
8811
  const computeColumnOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8812
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.columnConfig, true), props.columnConfig);
8812
+ return Object.assign({}, table_getConfig().table.columnConfig, props.columnConfig);
8813
8813
  });
8814
8814
  const computeRowOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8815
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.rowConfig, true), props.rowConfig);
8815
+ return Object.assign({}, table_getConfig().table.rowConfig, props.rowConfig);
8816
8816
  });
8817
8817
  const computeResizeOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8818
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.resizeConfig, true), props.resizeConfig);
8818
+ return Object.assign({}, table_getConfig().table.resizeConfig, props.resizeConfig);
8819
8819
  });
8820
8820
  const computeResizableOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8821
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.resizableConfig, true), props.resizableConfig);
8821
+ return Object.assign({}, table_getConfig().table.resizableConfig, props.resizableConfig);
8822
8822
  });
8823
8823
  const computeSeqOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8824
8824
  return Object.assign({
8825
8825
  startIndex: 0
8826
- }, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.seqConfig, true), props.seqConfig);
8826
+ }, table_getConfig().table.seqConfig, props.seqConfig);
8827
8827
  });
8828
8828
  const computeRadioOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8829
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.radioConfig, true), props.radioConfig);
8829
+ return Object.assign({}, table_getConfig().table.radioConfig, props.radioConfig);
8830
8830
  });
8831
8831
  const computeCheckboxOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8832
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.checkboxConfig, true), props.checkboxConfig);
8832
+ return Object.assign({}, table_getConfig().table.checkboxConfig, props.checkboxConfig);
8833
8833
  });
8834
8834
  let computeTooltipOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
8835
8835
  computeTooltipOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8836
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().tooltip, true), external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.tooltipConfig, true), props.tooltipConfig);
8836
+ return Object.assign({}, table_getConfig().tooltip, table_getConfig().table.tooltipConfig, props.tooltipConfig);
8837
8837
  });
8838
8838
  const computeTipConfig = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8839
8839
  const tooltipOpts = computeTooltipOpts.value;
@@ -8848,33 +8848,33 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
8848
8848
  }, tooltipOpts);
8849
8849
  });
8850
8850
  const computeEditOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8851
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.editConfig, true), props.editConfig);
8851
+ return Object.assign({}, table_getConfig().table.editConfig, props.editConfig);
8852
8852
  });
8853
8853
  const computeSortOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8854
8854
  return Object.assign({
8855
8855
  orders: ['asc', 'desc', null]
8856
- }, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.sortConfig, true), props.sortConfig);
8856
+ }, table_getConfig().table.sortConfig, props.sortConfig);
8857
8857
  });
8858
8858
  const computeFilterOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8859
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.filterConfig, true), props.filterConfig);
8859
+ return Object.assign({}, table_getConfig().table.filterConfig, props.filterConfig);
8860
8860
  });
8861
8861
  const computeMouseOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8862
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.mouseConfig, true), props.mouseConfig);
8862
+ return Object.assign({}, table_getConfig().table.mouseConfig, props.mouseConfig);
8863
8863
  });
8864
8864
  const computeAreaOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8865
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.areaConfig, true), props.areaConfig);
8865
+ return Object.assign({}, table_getConfig().table.areaConfig, props.areaConfig);
8866
8866
  });
8867
8867
  const computeKeyboardOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8868
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.keyboardConfig, true), props.keyboardConfig);
8868
+ return Object.assign({}, table_getConfig().table.keyboardConfig, props.keyboardConfig);
8869
8869
  });
8870
8870
  const computeClipOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8871
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.clipConfig, true), props.clipConfig);
8871
+ return Object.assign({}, table_getConfig().table.clipConfig, props.clipConfig);
8872
8872
  });
8873
8873
  const computeFNROpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8874
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.fnrConfig, true), props.fnrConfig);
8874
+ return Object.assign({}, table_getConfig().table.fnrConfig, props.fnrConfig);
8875
8875
  });
8876
8876
  const computeMenuOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8877
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.menuConfig, true), props.menuConfig);
8877
+ return Object.assign({}, table_getConfig().table.menuConfig, props.menuConfig);
8878
8878
  });
8879
8879
  const computeHeaderMenu = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8880
8880
  const menuOpts = computeMenuOpts.value;
@@ -8911,31 +8911,31 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
8911
8911
  return rest;
8912
8912
  });
8913
8913
  const computeExportOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8914
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.exportConfig, true), props.exportConfig);
8914
+ return Object.assign({}, table_getConfig().table.exportConfig, props.exportConfig);
8915
8915
  });
8916
8916
  const computeImportOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8917
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.importConfig, true), props.importConfig);
8917
+ return Object.assign({}, table_getConfig().table.importConfig, props.importConfig);
8918
8918
  });
8919
8919
  const computePrintOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8920
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.printConfig, true), props.printConfig);
8920
+ return Object.assign({}, table_getConfig().table.printConfig, props.printConfig);
8921
8921
  });
8922
8922
  const computeExpandOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8923
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.expandConfig, true), props.expandConfig);
8923
+ return Object.assign({}, table_getConfig().table.expandConfig, props.expandConfig);
8924
8924
  });
8925
8925
  const computeTreeOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8926
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.treeConfig, true), props.treeConfig);
8926
+ return Object.assign({}, table_getConfig().table.treeConfig, props.treeConfig);
8927
8927
  });
8928
8928
  const computeEmptyOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8929
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.emptyRender, true), props.emptyRender);
8929
+ return Object.assign({}, table_getConfig().table.emptyRender, props.emptyRender);
8930
8930
  });
8931
8931
  const computeLoadingOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8932
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.loadingConfig, true), props.loadingConfig);
8932
+ return Object.assign({}, table_getConfig().table.loadingConfig, props.loadingConfig);
8933
8933
  });
8934
8934
  const computeCellOffsetWidth = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8935
8935
  return props.border ? Math.max(2, Math.ceil(reactData.scrollbarWidth / reactData.tableColumn.length)) : 1;
8936
8936
  });
8937
8937
  const computeCustomOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8938
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(table_getConfig().table.customConfig, true), props.customConfig);
8938
+ return Object.assign({}, table_getConfig().table.customConfig, props.customConfig);
8939
8939
  });
8940
8940
  const computeAutoWidthColumnList = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
8941
8941
  const {
@@ -14664,8 +14664,7 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
14664
14664
  treeConfig
14665
14665
  } = props;
14666
14666
  const treeOpts = computeTreeOpts.value;
14667
- let {
14668
- fullDataRowIdData,
14667
+ const {
14669
14668
  fullAllDataRowIdData,
14670
14669
  tableFullData,
14671
14670
  tableFullTreeData
@@ -14674,6 +14673,8 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
14674
14673
  const hasChildField = treeOpts.hasChild || treeOpts.hasChildField;
14675
14674
  const rowkey = getRowkey($xeTable);
14676
14675
  const isLazy = treeConfig && treeOpts.lazy;
14676
+ const fullAllDataRowIdMaps = {};
14677
+ const fullDataRowIdMaps = {};
14677
14678
  const handleRow = (row, index, items, path, parent, nodes) => {
14678
14679
  let rowid = getRowid($xeTable, row);
14679
14680
  const seq = treeConfig && path ? toTreePathSeq(path) : index + 1;
@@ -14685,26 +14686,30 @@ const customStorageKey = 'VXE_CUSTOM_STORE';
14685
14686
  if (isLazy && row[hasChildField] && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(row[childrenField])) {
14686
14687
  row[childrenField] = null;
14687
14688
  }
14688
- const rest = {
14689
- row,
14690
- rowid,
14691
- seq,
14692
- index: treeConfig && parent ? -1 : index,
14693
- _index: -1,
14694
- $index: -1,
14695
- items,
14696
- parent,
14697
- level
14698
- };
14689
+ let cacheItem = fullAllDataRowIdData[rowid];
14690
+ if (!cacheItem) {
14691
+ cacheItem = {
14692
+ row,
14693
+ rowid,
14694
+ seq,
14695
+ index: -1,
14696
+ _index: -1,
14697
+ $index: -1,
14698
+ items,
14699
+ parent,
14700
+ level
14701
+ };
14702
+ }
14699
14703
  if (isSource) {
14700
- fullDataRowIdData[rowid] = rest;
14704
+ cacheItem.index = treeConfig && parent ? -1 : index;
14705
+ fullDataRowIdMaps[rowid] = cacheItem;
14701
14706
  }
14702
- fullAllDataRowIdData[rowid] = rest;
14707
+ fullAllDataRowIdMaps[rowid] = cacheItem;
14703
14708
  };
14704
14709
  if (isSource) {
14705
- fullDataRowIdData = internalData.fullDataRowIdData = {};
14710
+ internalData.fullDataRowIdData = fullDataRowIdMaps;
14706
14711
  }
14707
- fullAllDataRowIdData = internalData.fullAllDataRowIdData = {};
14712
+ internalData.fullAllDataRowIdData = fullAllDataRowIdMaps;
14708
14713
  if (treeConfig) {
14709
14714
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullTreeData, handleRow, {
14710
14715
  children: childrenField
@@ -23325,16 +23330,16 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
23325
23330
  return proxyOpts.showActiveMsg;
23326
23331
  });
23327
23332
  const computePagerOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
23328
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(grid_getConfig().grid.pagerConfig, true), props.pagerConfig);
23333
+ return Object.assign({}, grid_getConfig().grid.pagerConfig, props.pagerConfig);
23329
23334
  });
23330
23335
  const computeFormOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
23331
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(grid_getConfig().grid.formConfig, true), props.formConfig);
23336
+ return Object.assign({}, grid_getConfig().grid.formConfig, props.formConfig);
23332
23337
  });
23333
23338
  const computeToolbarOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
23334
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(grid_getConfig().grid.toolbarConfig, true), props.toolbarConfig);
23339
+ return Object.assign({}, grid_getConfig().grid.toolbarConfig, props.toolbarConfig);
23335
23340
  });
23336
23341
  const computeZoomOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
23337
- return Object.assign({}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().clone(grid_getConfig().grid.zoomConfig, true), props.zoomConfig);
23342
+ return Object.assign({}, grid_getConfig().grid.zoomConfig, props.zoomConfig);
23338
23343
  });
23339
23344
  const computeStyles = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
23340
23345
  return reactData.isZMax ? {