vxe-table 4.15.4 → 4.15.6

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.
Files changed (87) hide show
  1. package/README.en.md +2 -6
  2. package/README.ja-JP.md +2 -6
  3. package/README.md +8 -10
  4. package/README.zh-TW.md +2 -6
  5. package/es/grid/src/emits.js +16 -0
  6. package/es/grid/src/grid.js +77 -62
  7. package/es/grid/src/props.js +7 -0
  8. package/es/style.css +1 -1
  9. package/es/table/index.js +0 -8
  10. package/es/table/module/custom/hook.js +3 -0
  11. package/es/table/module/edit/hook.js +3 -0
  12. package/es/table/module/export/hook.js +6 -1
  13. package/es/table/module/filter/hook.js +3 -0
  14. package/es/table/module/menu/hook.js +3 -0
  15. package/es/table/module/validator/hook.js +3 -0
  16. package/es/table/src/emits.js +1 -1
  17. package/es/table/src/header.js +2 -2
  18. package/es/table/src/props.js +1 -1
  19. package/es/table/src/table.js +161 -63
  20. package/es/table/src/util.js +1 -14
  21. package/es/toolbar/src/toolbar.js +2 -2
  22. package/es/ui/index.js +13 -4
  23. package/es/ui/src/log.js +1 -1
  24. package/lib/grid/src/emits.js +8 -0
  25. package/lib/grid/src/emits.min.js +1 -0
  26. package/lib/grid/src/grid.js +78 -54
  27. package/lib/grid/src/grid.min.js +1 -1
  28. package/lib/grid/src/props.js +24 -0
  29. package/lib/grid/src/props.min.js +1 -0
  30. package/lib/index.umd.js +12073 -12008
  31. package/lib/index.umd.min.js +1 -1
  32. package/lib/style.css +1 -1
  33. package/lib/table/index.js +0 -8
  34. package/lib/table/index.min.js +1 -1
  35. package/lib/table/module/custom/hook.js +3 -0
  36. package/lib/table/module/custom/hook.min.js +1 -1
  37. package/lib/table/module/edit/hook.js +3 -0
  38. package/lib/table/module/edit/hook.min.js +1 -1
  39. package/lib/table/module/export/hook.js +8 -1
  40. package/lib/table/module/export/hook.min.js +1 -1
  41. package/lib/table/module/filter/hook.js +3 -0
  42. package/lib/table/module/filter/hook.min.js +1 -1
  43. package/lib/table/module/menu/hook.js +3 -0
  44. package/lib/table/module/menu/hook.min.js +1 -1
  45. package/lib/table/module/validator/hook.js +3 -0
  46. package/lib/table/module/validator/hook.min.js +1 -1
  47. package/lib/table/src/emits.js +2 -2
  48. package/lib/table/src/emits.min.js +1 -1
  49. package/lib/table/src/header.js +2 -2
  50. package/lib/table/src/props.js +2 -2
  51. package/lib/table/src/props.min.js +1 -1
  52. package/lib/table/src/table.js +33 -26
  53. package/lib/table/src/table.min.js +1 -1
  54. package/lib/table/src/util.js +1 -14
  55. package/lib/table/src/util.min.js +1 -1
  56. package/lib/toolbar/src/toolbar.js +2 -0
  57. package/lib/toolbar/src/toolbar.min.js +1 -1
  58. package/lib/ui/index.js +12 -3
  59. package/lib/ui/index.min.js +1 -1
  60. package/lib/ui/src/log.js +1 -1
  61. package/lib/ui/src/log.min.js +1 -1
  62. package/package.json +1 -1
  63. package/packages/grid/src/emits.ts +19 -0
  64. package/packages/grid/src/grid.ts +89 -85
  65. package/packages/grid/src/props.ts +23 -0
  66. package/packages/table/index.ts +0 -8
  67. package/packages/table/module/custom/hook.ts +3 -0
  68. package/packages/table/module/edit/hook.ts +3 -0
  69. package/packages/table/module/export/hook.ts +8 -3
  70. package/packages/table/module/filter/hook.ts +3 -0
  71. package/packages/table/module/menu/hook.ts +3 -0
  72. package/packages/table/module/validator/hook.ts +3 -0
  73. package/packages/table/src/emits.ts +2 -2
  74. package/packages/table/src/header.ts +5 -5
  75. package/packages/table/src/props.ts +1 -1
  76. package/packages/table/src/table.ts +167 -66
  77. package/packages/table/src/util.ts +1 -14
  78. package/packages/toolbar/src/toolbar.ts +2 -2
  79. package/packages/ui/index.ts +12 -2
  80. package/packages/ui/src/dom.ts +1 -1
  81. package/styles/cssvar.scss +0 -2
  82. /package/es/{iconfont.1754457119712.ttf → iconfont.1754905357789.ttf} +0 -0
  83. /package/es/{iconfont.1754457119712.woff → iconfont.1754905357789.woff} +0 -0
  84. /package/es/{iconfont.1754457119712.woff2 → iconfont.1754905357789.woff2} +0 -0
  85. /package/lib/{iconfont.1754457119712.ttf → iconfont.1754905357789.ttf} +0 -0
  86. /package/lib/{iconfont.1754457119712.woff → iconfont.1754905357789.woff} +0 -0
  87. /package/lib/{iconfont.1754457119712.woff2 → iconfont.1754905357789.woff2} +0 -0
@@ -33,10 +33,6 @@ export function createInternalData() {
33
33
  tableWidth: 0,
34
34
  // 表格高度
35
35
  tableHeight: 0,
36
- // 表头高度
37
- headerHeight: 0,
38
- // 表尾高度
39
- footerHeight: 0,
40
36
  customHeight: 0,
41
37
  customMinHeight: 0,
42
38
  customMaxHeight: 0,
@@ -604,18 +600,9 @@ export function rowToVisible($xeTable, row) {
604
600
  if (!isCustomCellHeight && showOverflow) {
605
601
  return $xeTable.scrollTo(null, ($xeTable.findRowIndexOf(afterFullData, row) - 1) * defaultRowHeight);
606
602
  }
607
- let scrollTop = 0;
608
603
  const rowRest = fullAllDataRowIdData[rowid] || {};
609
604
  const rHeight = rowRest.resizeHeight || cellOpts.height || rowOpts.height || rowRest.height || defaultRowHeight;
610
- for (let i = 0; i < afterFullData.length; i++) {
611
- const currRow = afterFullData[i];
612
- const currRowid = getRowid($xeTable, currRow);
613
- if (currRow === row || currRowid === rowid) {
614
- break;
615
- }
616
- const currRowRest = fullAllDataRowIdData[currRowid] || {};
617
- scrollTop += currRowRest.resizeHeight || cellOpts.height || rowOpts.height || currRowRest.height || defaultRowHeight;
618
- }
605
+ const scrollTop = rowRest.oTop;
619
606
  if (scrollTop < bodyScrollTop) {
620
607
  return $xeTable.scrollTo(null, scrollTop - leftFixedWidth - 1);
621
608
  }
@@ -276,7 +276,7 @@ export default defineVxeComponent({
276
276
  }
277
277
  else {
278
278
  const gCommandOpts = commands.get(code);
279
- const params = { code, button: item, $table: $table, $grid: $xeGrid, $event };
279
+ const params = { code, button: item, $table: $table, $grid: $xeGrid, $gantt: null, $event };
280
280
  if (gCommandOpts) {
281
281
  const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
282
282
  if (tCommandMethod) {
@@ -303,7 +303,7 @@ export default defineVxeComponent({
303
303
  }
304
304
  else {
305
305
  const gCommandOpts = commands.get(code);
306
- const params = { code, button: null, tool: item, $table: $table, $grid: $xeGrid, $event };
306
+ const params = { code, button: null, tool: item, $table: $table, $grid: $xeGrid, $gantt: null, $event };
307
307
  if (gCommandOpts) {
308
308
  const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod;
309
309
  if (tCommandMethod) {
package/es/ui/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  import { getFuncText } from './src/utils';
3
- export const version = "4.15.4";
3
+ export const version = "4.15.6";
4
4
  VxeUI.version = version;
5
5
  VxeUI.tableVersion = version;
6
6
  VxeUI.setConfig({
@@ -231,8 +231,16 @@ VxeUI.setConfig({
231
231
  oSize: 0
232
232
  },
233
233
  scrollbarConfig: {
234
- // width: 14,
235
- // height: 14
234
+ // width: 14,
235
+ // height: 14,
236
+ x: {
237
+ // position: 'bottom',
238
+ visible: true
239
+ },
240
+ y: {
241
+ // position: 'right',
242
+ visible: true
243
+ }
236
244
  }
237
245
  },
238
246
  // export: {
@@ -285,7 +293,8 @@ VxeUI.setConfig({
285
293
  // types: ['csv', 'html', 'xml', 'txt']
286
294
  // },
287
295
  // buttons: []
288
- }
296
+ },
297
+ gantt: {}
289
298
  });
290
299
  const iconPrefix = 'vxe-table-icon-';
291
300
  VxeUI.setIcon({
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.15.4"}`;
3
+ const version = `table v${"4.15.6"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.gridEmits = void 0;
7
+ var _emits = require("../../table/src/emits");
8
+ const gridEmits = exports.gridEmits = [..._emits.tableEmits, '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'];
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.gridEmits=void 0;var _emits=require("../../table/src/emits");let gridEmits=exports.gridEmits=[..._emits.tableEmits,"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"];
@@ -10,12 +10,14 @@ var _xeUtils = _interopRequireDefault(require("xe-utils"));
10
10
  var _utils = require("../../ui/src/utils");
11
11
  var _dom = require("../../ui/src/dom");
12
12
  var _ui = require("../../ui");
13
- var _table = _interopRequireDefault(require("../../table/src/table"));
14
- var _toolbar = _interopRequireDefault(require("../../toolbar/src/toolbar"));
15
- var _props = _interopRequireDefault(require("../../table/src/props"));
16
- var _emits = _interopRequireDefault(require("../../table/src/emits"));
13
+ var _props = require("./props");
14
+ var _emits = require("./emits");
17
15
  var _vn = require("../../ui/src/vn");
18
16
  var _log = require("../../ui/src/log");
17
+ var _emits2 = require("../../table/src/emits");
18
+ var _props2 = require("../../table/src/props");
19
+ var _table = _interopRequireDefault(require("../../table/src/table"));
20
+ var _toolbar = _interopRequireDefault(require("../../toolbar/src/toolbar"));
19
21
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
22
  const {
21
23
  getConfig,
@@ -28,30 +30,15 @@ const {
28
30
  GLOBAL_EVENT_KEYS,
29
31
  renderEmptyElement
30
32
  } = _ui.VxeUI;
31
- const tableComponentPropKeys = Object.keys(_props.default);
32
- const tableComponentMethodKeys = ['clearAll', 'syncData', 'updateData', 'loadData', 'reloadData', 'reloadRow', 'loadColumn', 'reloadColumn', 'getRowNode', 'getColumnNode', 'getRowIndex', 'getVTRowIndex', 'getVMRowIndex', 'getColumnIndex', 'getVTColumnIndex', 'getVMColumnIndex', 'setRow', 'createData', 'createRow', 'revertData', 'clearData', 'isRemoveByRow', 'isInsertByRow', 'isUpdateByRow', 'getColumns', 'getColumnById', 'getColumnByField', 'getTableColumn', 'getFullColumns', 'getData', 'getCheckboxRecords', 'getParentRow', 'getTreeRowChildren', 'getTreeParentRow', 'getRowSeq', 'getRowById', 'getRowid', 'getTableData', 'getFullData', 'setColumnFixed', 'clearColumnFixed', 'setColumnWidth', 'getColumnWidth', 'setRowHeightConf', 'getRowHeightConf', 'setRowHeight', 'getRowHeight', 'hideColumn', 'showColumn', 'resetColumn', 'refreshColumn', 'refreshScroll', 'recalculate', 'closeTooltip', 'isAllCheckboxChecked', 'isAllCheckboxIndeterminate', 'getCheckboxIndeterminateRecords', 'setCheckboxRow', 'setCheckboxRowKey', 'isCheckedByCheckboxRow', 'isCheckedByCheckboxRowKey', 'isIndeterminateByCheckboxRow', 'isIndeterminateByCheckboxRowKey', 'toggleCheckboxRow', 'setAllCheckboxRow', 'getRadioReserveRecord', 'clearRadioReserve', 'getCheckboxReserveRecords', 'clearCheckboxReserve', 'toggleAllCheckboxRow', 'clearCheckboxRow', 'setCurrentRow', 'isCheckedByRadioRow', 'isCheckedByRadioRowKey', 'setRadioRow', 'setRadioRowKey', 'clearCurrentRow', 'clearRadioRow', 'getCurrentRecord', 'getRadioRecord', 'getCurrentColumn', 'setCurrentColumn', 'clearCurrentColumn', 'setPendingRow', 'togglePendingRow', 'hasPendingByRow', 'isPendingByRow', 'getPendingRecords', 'clearPendingRow', 'setFilterByEvent', 'sort', 'setSort', 'setSortByEvent', 'clearSort', 'clearSortByEvent', 'isSort', 'getSortColumns', 'closeFilter', 'isFilter', 'clearFilterByEvent', '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', 'setRowGroupExpand', 'setAllRowGroupExpand', 'clearRowGroupExpand', 'isRowGroupExpandByRow', 'isRowGroupRecord', 'isAggregateRecord', 'isAggregateExpandByRow', 'getAggregateContentByRow', 'getAggregateRowChildren', 'setRowGroups', 'clearRowGroups', 'openTooltip', 'moveColumnTo', 'moveRowTo', 'getCellLabel', 'getCellElement', 'focus', 'blur', 'connect'];
33
- const 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'];
33
+ const tableComponentPropKeys = Object.keys(_props2.tableProps);
34
+ const tableComponentMethodKeys = ['clearAll', 'syncData', 'updateData', 'loadData', 'reloadData', 'reloadRow', 'loadColumn', 'reloadColumn', 'getRowNode', 'getColumnNode', 'getRowIndex', 'getVTRowIndex', 'getVMRowIndex', 'getColumnIndex', 'getVTColumnIndex', 'getVMColumnIndex', 'setRow', 'createData', 'createRow', 'revertData', 'clearData', 'isRemoveByRow', 'isInsertByRow', 'isUpdateByRow', 'getColumns', 'getColumnById', 'getColumnByField', 'getTableColumn', 'getFullColumns', 'getData', 'getCheckboxRecords', 'getParentRow', 'getTreeRowChildren', 'getTreeParentRow', 'getRowSeq', 'getRowById', 'getRowid', 'getTableData', 'getFullData', 'setColumnFixed', 'clearColumnFixed', 'setColumnWidth', 'getColumnWidth', 'recalcRowHeight', 'setRowHeightConf', 'getRowHeightConf', 'setRowHeight', 'getRowHeight', 'hideColumn', 'showColumn', 'resetColumn', 'refreshColumn', 'refreshScroll', 'recalculate', 'closeTooltip', 'isAllCheckboxChecked', 'isAllCheckboxIndeterminate', 'getCheckboxIndeterminateRecords', 'setCheckboxRow', 'setCheckboxRowKey', 'isCheckedByCheckboxRow', 'isCheckedByCheckboxRowKey', 'isIndeterminateByCheckboxRow', 'isIndeterminateByCheckboxRowKey', 'toggleCheckboxRow', 'setAllCheckboxRow', 'getRadioReserveRecord', 'clearRadioReserve', 'getCheckboxReserveRecords', 'clearCheckboxReserve', 'toggleAllCheckboxRow', 'clearCheckboxRow', 'setCurrentRow', 'isCheckedByRadioRow', 'isCheckedByRadioRowKey', 'setRadioRow', 'setRadioRowKey', 'clearCurrentRow', 'clearRadioRow', 'getCurrentRecord', 'getRadioRecord', 'getCurrentColumn', 'setCurrentColumn', 'clearCurrentColumn', 'setPendingRow', 'togglePendingRow', 'hasPendingByRow', 'isPendingByRow', 'getPendingRecords', 'clearPendingRow', 'setFilterByEvent', 'sort', 'setSort', 'setSortByEvent', 'clearSort', 'clearSortByEvent', 'isSort', 'getSortColumns', 'closeFilter', 'isFilter', 'clearFilterByEvent', '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', 'setRowGroupExpand', 'setAllRowGroupExpand', 'clearRowGroupExpand', 'isRowGroupExpandByRow', 'isRowGroupRecord', 'isAggregateRecord', 'isAggregateExpandByRow', 'getAggregateContentByRow', 'getAggregateRowChildren', 'setRowGroups', 'clearRowGroups', 'openTooltip', 'moveColumnTo', 'moveRowTo', 'getCellLabel', 'getCellElement', 'focus', 'blur', 'connect', 'connectToolbar'];
34
35
  function createInternalData() {
35
- return {
36
- connectTable: null
37
- };
36
+ return {};
38
37
  }
39
38
  var _default = exports.default = (0, _comp.defineVxeComponent)({
40
39
  name: 'VxeGrid',
41
- props: Object.assign(Object.assign({}, _props.default), {
42
- layouts: Array,
43
- columns: Array,
44
- pagerConfig: Object,
45
- proxyConfig: Object,
46
- toolbarConfig: Object,
47
- formConfig: Object,
48
- zoomConfig: Object,
49
- size: {
50
- type: String,
51
- default: () => getConfig().grid.size || getConfig().size
52
- }
53
- }),
54
- emits: gridComponentEmits,
40
+ props: _props.gridProps,
41
+ emits: _emits.gridEmits,
55
42
  setup(props, context) {
56
43
  var _a;
57
44
  const {
@@ -160,9 +147,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
160
147
  });
161
148
  const computeTableExtendProps = (0, _vue.computed)(() => {
162
149
  const rest = {};
163
- const gridProps = props;
164
150
  tableComponentPropKeys.forEach(key => {
165
- rest[key] = gridProps[key];
151
+ rest[key] = props[key];
166
152
  });
167
153
  return rest;
168
154
  });
@@ -292,7 +278,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
292
278
  const $xeTable = refTable.value;
293
279
  const $xeToolbar = refToolbar.value;
294
280
  if ($xeTable && $xeToolbar) {
295
- $xeTable.connect($xeToolbar);
281
+ $xeTable.connectToolbar($xeToolbar);
296
282
  }
297
283
  });
298
284
  }
@@ -342,10 +328,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
342
328
  const triggerPendingEvent = code => {
343
329
  const isActiveMsg = computeIsActiveMsg.value;
344
330
  const $xeTable = refTable.value;
345
- const selectRecords = $xeTable.getCheckboxRecords();
331
+ const selectRecords = $xeTable ? $xeTable.getCheckboxRecords() : [];
346
332
  if (selectRecords.length) {
347
- $xeTable.togglePendingRow(selectRecords);
348
- gridExtendTableMethods.clearCheckboxRow();
333
+ if ($xeTable) {
334
+ $xeTable.togglePendingRow(selectRecords);
335
+ }
336
+ $xeGrid.clearCheckboxRow();
349
337
  } else {
350
338
  if (isActiveMsg) {
351
339
  if (_ui.VxeUI.modal) {
@@ -362,18 +350,21 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
362
350
  const proxyOpts = computeProxyOpts.value;
363
351
  const resConfigs = proxyOpts.response || proxyOpts.props || {};
364
352
  const messageProp = resConfigs.message;
353
+ const $xeTable = refTable.value;
365
354
  let msg;
366
355
  if (rest && messageProp) {
367
356
  msg = _xeUtils.default.isFunction(messageProp) ? messageProp({
368
357
  data: rest,
369
- $grid: $xeGrid
358
+ $table: $xeTable,
359
+ $grid: $xeGrid,
360
+ $gantt: null
370
361
  }) : _xeUtils.default.get(rest, messageProp);
371
362
  }
372
363
  return msg || getI18n(defaultMsg);
373
364
  };
374
365
  const handleDeleteRow = (code, alertKey, callback) => {
375
366
  const isActiveMsg = computeIsActiveMsg.value;
376
- const selectRecords = gridExtendTableMethods.getCheckboxRecords();
367
+ const selectRecords = $xeGrid.getCheckboxRecords();
377
368
  if (isActiveMsg) {
378
369
  if (selectRecords.length) {
379
370
  if (_ui.VxeUI.modal) {
@@ -430,6 +421,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
430
421
  const {
431
422
  proxyConfig
432
423
  } = props;
424
+ if (!$xeTable) {
425
+ return;
426
+ }
433
427
  const {
434
428
  computeSortOpts
435
429
  } = $xeTable.getComputeMaps();
@@ -459,6 +453,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
459
453
  const {
460
454
  proxyConfig
461
455
  } = props;
456
+ if (!$xeTable) {
457
+ return;
458
+ }
462
459
  const {
463
460
  computeFilterOpts
464
461
  } = $xeTable.getComputeMaps();
@@ -510,7 +507,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
510
507
  } = params;
511
508
  const proxyOpts = computeProxyOpts.value;
512
509
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
513
- $xeTable.clearScroll();
510
+ if ($xeTable) {
511
+ $xeTable.clearScroll();
512
+ }
514
513
  $xeGrid.commitProxy('reload').then(rest => {
515
514
  $xeGrid.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
516
515
  isReload: true
@@ -593,7 +592,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
593
592
  let slotVNs = [];
594
593
  if (slots.form) {
595
594
  slotVNs = slots.form({
596
- $grid: $xeGrid
595
+ $grid: $xeGrid,
596
+ $gantt: null
597
597
  });
598
598
  } else {
599
599
  if (formOpts.items) {
@@ -605,6 +605,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
605
605
  formOpts.items.forEach(item => {
606
606
  beforeItem({
607
607
  $grid: $xeGrid,
608
+ $gantt: null,
608
609
  item
609
610
  });
610
611
  });
@@ -654,7 +655,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
654
655
  let slotVNs = [];
655
656
  if (slots.toolbar) {
656
657
  slotVNs = slots.toolbar({
657
- $grid: $xeGrid
658
+ $grid: $xeGrid,
659
+ $gantt: null
658
660
  });
659
661
  } else {
660
662
  const toolbarOptSlots = toolbarOpts.slots;
@@ -710,7 +712,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
710
712
  key: 'top',
711
713
  class: 'vxe-grid--top-wrapper'
712
714
  }, topSlot({
713
- $grid: $xeGrid
715
+ $grid: $xeGrid,
716
+ $gantt: null
714
717
  }));
715
718
  }
716
719
  return renderEmptyElement($xeGrid);
@@ -721,7 +724,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
721
724
  return (0, _vue.h)('div', {
722
725
  class: 'vxe-grid--left-wrapper'
723
726
  }, leftSlot({
724
- $grid: $xeGrid
727
+ $grid: $xeGrid,
728
+ $gantt: null
725
729
  }));
726
730
  }
727
731
  return renderEmptyElement($xeGrid);
@@ -732,7 +736,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
732
736
  return (0, _vue.h)('div', {
733
737
  class: 'vxe-grid--right-wrapper'
734
738
  }, rightSlot({
735
- $grid: $xeGrid
739
+ $grid: $xeGrid,
740
+ $gantt: null
736
741
  }));
737
742
  }
738
743
  return renderEmptyElement($xeGrid);
@@ -790,7 +795,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
790
795
  key: 'bottom',
791
796
  class: 'vxe-grid--bottom-wrapper'
792
797
  }, slots.bottom({
793
- $grid: $xeGrid
798
+ $grid: $xeGrid,
799
+ $gantt: null
794
800
  }));
795
801
  }
796
802
  return renderEmptyElement($xeGrid);
@@ -812,7 +818,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
812
818
  key: 'pager',
813
819
  class: 'vxe-grid--pager-wrapper'
814
820
  }, pagerSlot ? pagerSlot({
815
- $grid: $xeGrid
821
+ $grid: $xeGrid,
822
+ $gantt: null
816
823
  }) : [VxeUIPagerComponent ? (0, _vue.h)(VxeUIPagerComponent, Object.assign(Object.assign(Object.assign({
817
824
  ref: refPager
818
825
  }, pagerOpts), proxyConfig && (0, _utils.isEnableConf)(proxyOpts) ? reactData.tablePage : {}), {
@@ -877,7 +884,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
877
884
  }, renderChildLayout(footKeys))];
878
885
  };
879
886
  const tableCompEvents = {};
880
- _emits.default.forEach(name => {
887
+ _emits2.tableEmits.forEach(name => {
881
888
  const type = _xeUtils.default.camelCase(`on-${name}`);
882
889
  tableCompEvents[type] = (...args) => emit(name, ...args);
883
890
  });
@@ -928,8 +935,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
928
935
  if (!proxyInited) {
929
936
  reactData.proxyInited = true;
930
937
  if (proxyOpts.autoLoad !== false) {
931
- (0, _vue.nextTick)().then(() => gridMethods.commitProxy('initial')).then(rest => {
932
- gridMethods.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
938
+ (0, _vue.nextTick)().then(() => $xeGrid.commitProxy('initial')).then(rest => {
939
+ dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
933
940
  isInited: true
934
941
  }), new Event('initial'));
935
942
  });
@@ -946,7 +953,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
946
953
  };
947
954
  const dispatchEvent = (type, params, evnt) => {
948
955
  emit(type, createEvent(evnt, {
949
- $grid: $xeGrid
956
+ $grid: $xeGrid,
957
+ $gantt: null
950
958
  }, params));
951
959
  };
952
960
  const gridMethods = {
@@ -985,6 +993,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
985
993
  } = proxyOpts;
986
994
  const resConfigs = proxyOpts.response || proxyOpts.props || {};
987
995
  const $xeTable = refTable.value;
996
+ if (!$xeTable) {
997
+ return (0, _vue.nextTick)();
998
+ }
988
999
  let formData = getFormData();
989
1000
  let button = null;
990
1001
  let code = null;
@@ -1116,11 +1127,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1116
1127
  }
1117
1128
  }
1118
1129
  const commitParams = {
1130
+ $table: $xeTable,
1131
+ $grid: $xeGrid,
1132
+ $gantt: null,
1119
1133
  code,
1120
1134
  button,
1121
1135
  isInited,
1122
1136
  isReload,
1123
- $grid: $xeGrid,
1124
1137
  page: pageParams,
1125
1138
  sort: sortList.length ? sortList[0] : {},
1126
1139
  sorts: sortList,
@@ -1139,13 +1152,17 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1139
1152
  const totalProp = resConfigs.total;
1140
1153
  const total = (_xeUtils.default.isFunction(totalProp) ? totalProp({
1141
1154
  data: rest,
1142
- $grid: $xeGrid
1155
+ $table: $xeTable,
1156
+ $grid: $xeGrid,
1157
+ $gantt: null
1143
1158
  }) : _xeUtils.default.get(rest, totalProp || 'page.total')) || 0;
1144
1159
  tablePage.total = _xeUtils.default.toNumber(total);
1145
1160
  const resultProp = resConfigs.result;
1146
1161
  tableData = (_xeUtils.default.isFunction(resultProp) ? resultProp({
1147
1162
  data: rest,
1148
- $grid: $xeGrid
1163
+ $table: $xeTable,
1164
+ $grid: $xeGrid,
1165
+ $gantt: null
1149
1166
  }) : _xeUtils.default.get(rest, resultProp || 'result')) || [];
1150
1167
  // 检验当前页码,不能超出当前最大页数
1151
1168
  const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1);
@@ -1156,7 +1173,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1156
1173
  const listProp = resConfigs.list;
1157
1174
  tableData = (listProp ? _xeUtils.default.isFunction(listProp) ? listProp({
1158
1175
  data: rest,
1159
- $grid: $xeGrid
1176
+ $table: $xeTable,
1177
+ $grid: $xeGrid,
1178
+ $gantt: null
1160
1179
  }) : _xeUtils.default.get(rest, listProp) : rest) || [];
1161
1180
  }
1162
1181
  }
@@ -1202,13 +1221,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1202
1221
  const deleteSuccessMethods = ajax.deleteSuccess;
1203
1222
  const deleteErrorMethods = ajax.deleteError;
1204
1223
  if (ajaxMethods) {
1205
- const selectRecords = gridExtendTableMethods.getCheckboxRecords();
1224
+ const selectRecords = $xeGrid.getCheckboxRecords();
1206
1225
  const removeRecords = selectRecords.filter(row => !$xeTable.isInsertByRow(row));
1207
1226
  const body = {
1208
1227
  removeRecords
1209
1228
  };
1210
1229
  const commitParams = {
1230
+ $table: $xeTable,
1211
1231
  $grid: $xeGrid,
1232
+ $gantt: null,
1212
1233
  code,
1213
1234
  button,
1214
1235
  body,
@@ -1235,7 +1256,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1235
1256
  if (afterDelete) {
1236
1257
  afterDelete(commitParams, ...args);
1237
1258
  } else {
1238
- gridMethods.commitProxy('query');
1259
+ $xeGrid.commitProxy('query');
1239
1260
  }
1240
1261
  if (deleteSuccessMethods) {
1241
1262
  deleteSuccessMethods(Object.assign(Object.assign({}, commitParams), {
@@ -1296,7 +1317,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1296
1317
  pendingRecords
1297
1318
  } = body;
1298
1319
  const commitParams = {
1320
+ $table: $xeTable,
1299
1321
  $grid: $xeGrid,
1322
+ $gantt: null,
1300
1323
  code,
1301
1324
  button,
1302
1325
  body,
@@ -1337,7 +1360,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1337
1360
  if (afterSave) {
1338
1361
  afterSave(commitParams, ...args);
1339
1362
  } else {
1340
- gridMethods.commitProxy('query');
1363
+ $xeGrid.commitProxy('query');
1341
1364
  }
1342
1365
  if (saveSuccessMethods) {
1343
1366
  saveSuccessMethods(Object.assign(Object.assign({}, commitParams), {
@@ -1394,7 +1417,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1394
1417
  code,
1395
1418
  button,
1396
1419
  $grid: $xeGrid,
1397
- $table: $xeTable
1420
+ $table: $xeTable,
1421
+ $gantt: null
1398
1422
  }, ...args);
1399
1423
  } else {
1400
1424
  (0, _log.errLog)('vxe.error.notCommands', [code]);
@@ -1409,9 +1433,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1409
1433
  },
1410
1434
  zoom() {
1411
1435
  if (reactData.isZMax) {
1412
- return gridMethods.revert();
1436
+ return $xeGrid.revert();
1413
1437
  }
1414
- return gridMethods.maximize();
1438
+ return $xeGrid.maximize();
1415
1439
  },
1416
1440
  isMaximized() {
1417
1441
  return reactData.isZMax;
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/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}}let{getConfig,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS,renderEmptyElement}=_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","isRemoveByRow","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getFullColumns","getData","getCheckboxRecords","getParentRow","getTreeRowChildren","getTreeParentRow","getRowSeq","getRowById","getRowid","getTableData","getFullData","setColumnFixed","clearColumnFixed","setColumnWidth","getColumnWidth","setRowHeightConf","getRowHeightConf","setRowHeight","getRowHeight","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","setCheckboxRowKey","isCheckedByCheckboxRow","isCheckedByCheckboxRowKey","isIndeterminateByCheckboxRow","isIndeterminateByCheckboxRowKey","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","isCheckedByRadioRowKey","setRadioRow","setRadioRowKey","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","setPendingRow","togglePendingRow","hasPendingByRow","isPendingByRow","getPendingRecords","clearPendingRow","setFilterByEvent","sort","setSort","setSortByEvent","clearSort","clearSortByEvent","isSort","getSortColumns","closeFilter","isFilter","clearFilterByEvent","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","setRowGroupExpand","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","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"];function createInternalData(){return{connectTable:null}}var _default=exports.default=(0,_comp.defineVxeComponent)({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(T,e){let t,{slots:u,emit:o}=e;var R=_xeUtils.default.uniqueId();let n=_ui.VxeUI.getComponent("VxeForm"),l=_ui.VxeUI.getComponent("VxePager"),w=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],P=useFns.useSize(T).computeSize,j=(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}}),r=createInternalData(),s=(0,_vue.ref)(),D=(0,_vue.ref)(),i=(0,_vue.ref)(),d=(0,_vue.ref)(),g=(0,_vue.ref)(),c=(0,_vue.ref)(),v=(0,_vue.ref)(),m=(0,_vue.ref)(),p=(0,_vue.ref)(),f=(0,_vue.ref)();var a=e=>{let t={};return e.forEach(r=>{t[r]=(...e)=>{var t=D.value;if(t&&t[r])return t[r](...e)}}),t};let M=a(tableComponentMethodKeys),F=(tableComponentMethodKeys.forEach(r=>{M[r]=(...e)=>{var t=D.value;if(t&&t[r])return t&&t[r](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),T.proxyConfig))),Z=(0,_vue.computed)(()=>{var e=F.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),q=(0,_vue.computed)(()=>{var e=F.value;return _xeUtils.default.isBoolean(e.showActionMsg)?e.showActionMsg:!!e.showActiveMsg}),B=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,T.pagerConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,T.formConfig)),L=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,T.toolbarConfig)),b=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,T.zoomConfig)),k=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=T,{isZMax:r,tZindex:o}=j,a={};return r?a.zIndex=o:(e&&(a.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(a.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),a}),I=(0,_vue.computed)(()=>{let t={},r=T;return tableComponentPropKeys.forEach(e=>{t[e]=r[e]}),t}),O=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,editConfig:r,proxyConfig:o}=T,{isZMax:a,tablePage:l}=j,n=I.value,i=F.value,s=B.value,u=N.value,d=Object.assign({},n);return a&&(n.maxHeight?d.maxHeight="100%":d.height="100%"),o&&(0,_utils.isEnableConf)(i)&&(d.loading=u,t)&&i.seq&&(0,_utils.isEnableConf)(s)&&(d.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize})),r&&(d.editConfig=Object.assign({},r)),d}),U=(0,_vue.computed)(()=>{var e=T.layouts;let t=[],r=[],o=[],a=[];return(t=e&&e.length?e:getConfig().grid.layouts||w).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],o=t[1]||[],a=t[2]||[]):o=t),{headKeys:r,bodyKeys:o,footKeys:a}});var S=(0,_vue.computed)(()=>B.value.currentPage),K=(0,_vue.computed)(()=>B.value.pageSize),H=(0,_vue.computed)(()=>B.value.total);let _=(0,_vue.computed)(()=>{var e=j.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),N=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=T,r=j.tableLoading,o=F.value,a=o.showLoading;return e||r&&a&&t&&(0,_utils.isEnableConf)(o)}),G={refElem:s,refTable:D,refForm:i,refToolbar:d,refPager:g},Q={computeProxyOpts:F,computePagerOpts:B,computeFormOpts:x,computeToolbarOpts:L,computeZoomOpts:b},V={xID:R,props:T,context:e,reactData:j,internalData:r,getRefMaps:()=>G,getComputeMaps:()=>Q},W=()=>{var e=L.value;T.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=D.value,t=d.value;e&&t&&e.connect(t)})},z=()=>{var e=T.proxyConfig,t=j.formData,r=F.value,o=x.value;return e&&(0,_utils.isEnableConf)(r)&&r.form?t:o.data},h=e=>{var t=j.tablePage,r=T.pagerConfig,o=B.value;r&&(0,_utils.isEnableConf)(o)&&(e?o[e]&&(t[e]=_xeUtils.default.toNumber(o[e])):({currentPage:r,pageSize:e,total:o}=o,r&&(t.currentPage=r),e&&(t.pageSize=e),o&&(t.total=o)))},$=(e,t)=>{var r=F.value,r=(r.response||r.props||{}).message;let o;return(o=e&&r?_xeUtils.default.isFunction(r)?r({data:e,$grid:V}):_xeUtils.default.get(e,r):o)||getI18n(t)},Y=(e,t,r)=>{var o=q.value,a=M.getCheckboxRecords();if(o)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 r()})}else _ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else a.length&&r();return Promise.resolve()},J=e=>{var t=T.proxyConfig,r=j.tablePage;let{$event:o,currentPage:a,pageSize:l}=e;var n=F.value;r.currentPage=a,r.pageSize=l,V.dispatchEvent("page-change",e,o),t&&(0,_utils.isEnableConf)(n)&&V.commitProxy("query").then(e=>{V.dispatchEvent("proxy-query",e,o)})},X=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeSortOpts,o=F.value;e.value.remote&&(j.sortData=t.sortList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,V.commitProxy("query").then(e=>{V.dispatchEvent("proxy-query",e,t.$event)}))},ee=e=>{X(e),V.dispatchEvent("sort-change",e,e.$event)},te=e=>{X(e),V.dispatchEvent("clear-all-sort",e,e.$event)},re=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeFilterOpts,o=F.value;e.value.remote&&(j.filterData=t.filterList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,V.commitProxy("query").then(e=>{V.dispatchEvent("proxy-query",e,t.$event)}))},oe=e=>{re(e),V.dispatchEvent("filter-change",e,e.$event)},ae=e=>{re(e),V.dispatchEvent("clear-all-filter",e,e.$event)},le=t=>{var e=T.proxyConfig,r=F.value;j.tableLoading||(e&&(0,_utils.isEnableConf)(r)&&V.commitProxy("reload").then(e=>{V.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),V.dispatchEvent("form-submit",t,t.$event))},ne=e=>{var t=D.value,r=T.proxyConfig;let o=e.$event;var a=F.value;r&&(0,_utils.isEnableConf)(a)&&(t.clearScroll(),V.commitProxy("reload").then(e=>{V.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)})),V.dispatchEvent("form-reset",e,o)},ie=e=>{V.dispatchEvent("form-submit-invalid",e,e.$event)},se=e=>{var t=e.$event;V.dispatchEvent("form-toggle-collapse",e,t),V.dispatchEvent("form-collapse",e,t)},ue=e=>{var t=j.isZMax;return(e?!t:t)&&(j.isZMax=!t,j.tZindex<(0,_utils.getLastZIndex)())&&(j.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>V.recalculate(!0)).then(()=>(setTimeout(()=>V.recalculate(!0),15),j.isZMax))},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(u[e])return u[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},de=e=>{let r={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?u[e]?r[t]=u[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):r[t]=e)}),r},ge=()=>{var{formConfig:e,proxyConfig:r}=T,o=j.formData,a=F.value,l=x.value;if(e&&(0,_utils.isEnableConf)(l)||u.form){let e=[];if(u.form)e=u.form({$grid:V});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=a.beforeItem;a&&t&&l.items.forEach(e=>{t({$grid:V,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]&&(t[e]=u[e])})}),n&&e.push((0,_vue.h)(n,Object.assign(Object.assign({ref:i},Object.assign({},l,{data:r&&(0,_utils.isEnableConf)(a)&&a.form?o:l.data})),{onSubmit:le,onReset:ne,onSubmitInvalid:ie,onCollapse:se}),t))}return(0,_vue.h)("div",{ref:c,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(V)},ce=()=>{var t,r,o,a,l,n,i=T.toolbarConfig,s=L.value;if(i&&(0,_utils.isEnableConf)(s)||u.toolbar){let e=[];return u.toolbar?e=u.toolbar({$grid:V}):(i={},(n=s.slots)&&(t=C(n,"buttons"),r=C(n,"buttonPrefix"),o=C(n,"buttonSuffix"),a=C(n,"tools"),l=C(n,"toolPrefix"),n=C(n,"toolSuffix"),t&&(i.buttons=t),r&&(i.buttonPrefix=r),o&&(i.buttonSuffix=o),a&&(i.tools=a),l&&(i.toolPrefix=l),n)&&(i.toolSuffix=n),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:d},s),{slots:void 0}),i))),(0,_vue.h)("div",{ref:v,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(V)},ve=()=>{var e=u.top;return e?(0,_vue.h)("div",{ref:m,key:"top",class:"vxe-grid--top-wrapper"},e({$grid:V})):renderEmptyElement(V)},me=()=>{var e=u.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:V})):renderEmptyElement(V)},pe=()=>{var e=u.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:V})):renderEmptyElement(V)},fe=()=>{var e=T.proxyConfig,t=O.value,r=F.value,o=Object.assign({},_e),a=u.empty,l=u.loading,n=u.rowDragIcon||u["row-drag-icon"],i=u.columnDragIcon||u["column-drag-icon"],e=(e&&(0,_utils.isEnableConf)(r)&&(r.sort&&(o.onSortChange=ee,o.onClearAllSort=te),r.filter)&&(o.onFilterChange=oe,o.onClearAllFilter=ae),{});return a&&(e.empty=a),l&&(e.loading=l),n&&(e.rowDragIcon=n),i&&(e.columnDragIcon=i),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:D},t),o),e)])},xe=()=>u.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},u.bottom({$grid:V})):renderEmptyElement(V),be=()=>{var{proxyConfig:e,pagerConfig:t}=T,r=F.value,o=B.value,a=u.pager;return t&&(0,_utils.isEnableConf)(o)||u.pager?(0,_vue.h)("div",{ref:f,key:"pager",class:"vxe-grid--pager-wrapper"},a?a({$grid:V}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:g},o),e&&(0,_utils.isEnableConf)(r)?j.tablePage:{}),{onPageChange:J}),de(o.slots)):renderEmptyElement(V)]):renderEmptyElement(V)},y=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(ge());break;case"Toolbar":t.push(ce());break;case"Top":t.push(ve());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[me(),fe(),pe()]));break;case"Bottom":t.push(xe());break;case"Pager":t.push(be());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},_e={},he=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);_e[e]=(...e)=>o(t,...e)}),()=>{var e=x.value;if(e.items){let a={};return e.items.forEach(t=>{var{field:r,itemRender:o}=t;if(r){let e=null;o&&(o=o.defaultValue,_xeUtils.default.isFunction(o)?e=o({item:t}):_xeUtils.default.isUndefined(o)||(e=o)),a[r]=e}}),a}return{}}),Ce=()=>{var{proxyConfig:e,formConfig:t}=T,r=j.proxyInited,o=F.value,a=x.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(a)&&o.form&&a.items&&(j.formData=he()),r||!(j.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>A.commitProxy("initial")).then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},ye=e=>{var t=b.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&j.isZMax&&!1!==t.escRestore&&V.triggerZoomEvent(e)};let A={dispatchEvent:(e,t,r)=>{o(e,createEvent(r,{$grid:V},t))},getEl(){return s.value},commitProxy(t,...d){let{proxyConfig:o,toolbarConfig:e,pagerConfig:i,editRules:g,validConfig:c}=T,s=j.tablePage,v=q.value,m=Z.value;var u=F.value;let p=B.value;var r,a=L.value;let{beforeQuery:f,afterQuery:x,beforeDelete:n,afterDelete:b,beforeSave:_,afterSave:h,ajax:C={}}=u,y=u.response||u.props||{},E=D.value,R=z(),w=null,P=null;P=_xeUtils.default.isString(t)?(r=a.buttons,a=e&&(0,_utils.isEnableConf)(a)&&r?_xeUtils.default.findTree(r,e=>e.code===t,{children:"dropdowns"}):null,w=a?a.item:null,t):(w=t).code;var l=w?w.params:null;switch(P){case"insert":return E.insert({});case"insert_edit":return E.insert({}).then(({row:e})=>E.setEditRow(e,!0));case"insert_actived":return E.insert({}).then(({row:e})=>E.setEditRow(e,!0));case"mark_cancel":U=P,O=q.value,k=D.value,(I=k.getCheckboxRecords()).length?(k.togglePendingRow(I),M.clearCheckboxRow()):O&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:U,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Y(P,"vxe.grid.removeSelectRecord",()=>E.removeCheckboxRow());case"import":E.importData(l);break;case"open_import":E.openImport(l);break;case"export":E.exportData(l);break;case"open_export":E.openExport(l);break;case"reset_custom":return E.resetCustom(!0);case"initial":case"reload":case"query":{var k=C.query;let n=C.querySuccess,t=C.queryError;if(k){var I="initial"===P,O="reload"===P;if(!I&&j.tableLoading)return(0,_vue.nextTick)();let r=[],a=[],e={};if(i&&((I||O)&&(s.currentPage=1),(0,_utils.isEnableConf)(p))&&(e=Object.assign({},s)),I){if(o&&(0,_utils.isEnableConf)(u)&&u.form&&(R=he(),j.formData=R),E){let{tableFullColumn:e,fullColumnFieldData:o}=E.internalData;var U=E.getComputeMaps().computeSortOpts;let t=U.value.defaultSort;e.forEach(e=>{e.order=null}),t&&(_xeUtils.default.isArray(t)||(t=[t]),r=t.map(e=>{var{field:e,order:t}=e,r=o[e];return r&&(r=r.column)&&(r.order=t),{field:e,property:e,order:t}})),a=E.getCheckedFilters()}}else E&&(O?E.clearAll():(r=E.getSortColumns(),a=E.getCheckedFilters()));let l={code:P,button:w,isInited:I,isReload:O,$grid:V,page:e,sort:r.length?r[0]:{},sorts:r,filters:a,form:R,options:k};return j.sortData=r,j.filterData=a,j.tableLoading=!0,Promise.resolve((f||k)(l,...d)).then(e=>{let t=[];var r,o;return j.tableLoading=!1,e&&(i&&(0,_utils.isEnableConf)(p)?(o=y.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:V}):_xeUtils.default.get(e,o||"page.total"))||0,s.total=_xeUtils.default.toNumber(o),r=y.result,t=(_xeUtils.default.isFunction(r)?r({data:e,$grid:V}):_xeUtils.default.get(e,r||"result"))||[],r=Math.max(Math.ceil(o/s.pageSize),1),s.currentPage>r&&(s.currentPage=r)):(o=y.list,t=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:V}):_xeUtils.default.get(e,o):e)||[])),E?E.loadData(t):(0,_vue.nextTick)(()=>{E&&E.loadData(t)}),x&&x(l,...d),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(j.tableLoading=!1,t&&t(Object.assign(Object.assign({},l),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{let o=C.delete,a=C.deleteSuccess,l=C.deleteError;if(o){let e=M.getCheckboxRecords(),t=e.filter(e=>!E.isInsertByRow(e));var S={removeRecords:t};let r={$grid:V,code:P,button:w,body:S,form:R,options:o};if(e.length)return Y(P,"vxe.grid.deleteSelectRecord",()=>t.length?(j.tableLoading=!0,Promise.resolve((n||o)(r,...d)).then(e=>(j.tableLoading=!1,E.setPendingRow(t,!1),m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.delSuccess"),status:"success"}),b?b(r,...d):A.commitProxy("query"),a&&a(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:P,content:$(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):E.remove(e));v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:P,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let i=C.save,s=C.saveSuccess,u=C.saveError;if(i){let t=E.getRecordset(),{insertRecords:r,removeRecords:o,updateRecords:a,pendingRecords:l}=t,n={$grid:V,code:P,button:w,body:t,form:R,options:i},e=(r.length&&(t.pendingRecords=l.filter(e=>-1===E.findRowIndexOf(r,e))),l.length&&(t.insertRecords=r.filter(e=>-1===E.findRowIndexOf(l,e))),Promise.resolve());return(e=g?E[c&&"full"===c.msgMode?"fullValidate":"validate"](t.insertRecords.concat(a)):e).then(e=>{if(!e)return t.insertRecords.length||o.length||a.length||t.pendingRecords.length?(j.tableLoading=!0,Promise.resolve((_||i)(n,...d)).then(e=>(j.tableLoading=!1,E.clearPendingRow(),m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.saveSuccess"),status:"success"}),h?h(n,...d):A.commitProxy("query"),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:P,content:$(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},n),{response:e})),{status:!1}))):void(v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:P,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var S=commands.get(P);S&&((S=S.tableCommandMethod||S.commandMethod)?S({code:P,button:w,$grid:V,$table:E},...d):(0,_log.errLog)("vxe.error.notCommands",[P]))}return(0,_vue.nextTick)()},getParams(){return T.params},zoom(){return j.isZMax?A.revert():A.maximize()},isMaximized(){return j.isZMax},maximize(){return ue(!0)},revert(){return ue()},getFormData:z,getFormItems(e){var t=x.value,r=T.formConfig,o=t.items;let a=[];return _xeUtils.default.eachTree(r&&(0,_utils.isEnableConf)(t)&&o?o:[],e=>{a.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?a:a[e]},resetForm(){var e=i.value;return e?e.reset():(0,_vue.nextTick)()},validateForm(){var e=i.value;return e?e.validate():(0,_vue.nextTick)()},validateFormField(e){var t=i.value;return t?t.validateField(e):(0,_vue.nextTick)()},clearFormValidate(e){var t=i.value;return t?t.clearValidate(e):(0,_vue.nextTick)()},homePage(){var e=j.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=g.value;t&&t.homePageByEvent(e)},endPage(){var e=j.tablePage,t=_.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=g.value;t&&t.endPageByEvent(e)},setCurrentPage(e){var t=j.tablePage,r=_.value;return t.currentPage=Math.min(r,Math.max(1,_xeUtils.default.toNumber(e))),(0,_vue.nextTick)()},setCurrentPageByEvent(e,t){var r=g.value;r&&r.setCurrentPageByEvent(e,t)},setPageSize(e){var t=j.tablePage;return t.pageSize=Math.max(1,_xeUtils.default.toNumber(e)),(0,_vue.nextTick)()},setPageSizeByEvent(e,t){var r=g.value;r&&r.setPageSizeByEvent(e,t)},getProxyInfo(){var e,t=D.value;return T.proxyConfig?(e=j.sortData,{data:t?t.getFullData():[],filter:j.filterData,form:z(),sort:e.length?e[0]:{},sorts:e,pager:j.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},Ee={extendTableMethods:a,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=u[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e,t,r,o,a,l,n=j.isZMax,i=s.value;return i?(e=c.value,t=v.value,r=m.value,o=p.value,a=f.value,l=i.parentElement,(!n&&l?(0,_dom.getPaddingTopBottomSize)(l):0)+(0,_dom.getPaddingTopBottomSize)(i)+(0,_dom.getOffsetHeight)(e)+(0,_dom.getOffsetHeight)(t)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(o)+(0,_dom.getOffsetHeight)(a)):0},getParentHeight(){var e=s.value;return e?(e=e.parentElement,(j.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-Ee.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let r=e.code;return V.commitProxy(e,t).then(e=>{r&&e&&e.status&&["query","reload","delete","save"].includes(r)&&V.dispatchEvent("delete"===r||"save"===r?"proxy-"+r:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===r}),t)})},triggerToolbarBtnEvent(e,t){V.triggerToolbarCommitEvent(e,t),V.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){V.triggerToolbarCommitEvent(e,t),V.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){V.zoom(),V.dispatchEvent("zoom",{type:j.isZMax?"max":"revert"},e)}};Object.assign(V,M,A,Ee,{loadColumn(e){var t=D.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return V.clearAll(),V.loadColumn(e)}});let E=(0,_vue.ref)(0);return(0,_vue.watch)(()=>T.columns?T.columns.length:-1,()=>{E.value++}),(0,_vue.watch)(()=>T.columns,()=>{E.value++}),(0,_vue.watch)(E,()=>{(0,_vue.nextTick)(()=>V.loadColumn(T.columns||[]))}),(0,_vue.watch)(()=>T.toolbarConfig,()=>{W()}),(0,_vue.watch)(S,()=>{h("currentPage")}),(0,_vue.watch)(K,()=>{h("pageSize")}),(0,_vue.watch)(H,()=>{h("total")}),(0,_vue.watch)(()=>T.proxyConfig,()=>{Ce()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(V))&&_xeUtils.default.isObject(e)&&Object.assign(V,e)}),h(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.columns,t=F.value;T.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),T.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),t.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),e&&e.length&&V.loadColumn(e),W(),Ce()}),globalEvents.on(V,"keydown",ye)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(V,"keydown"),_xeUtils.default.assign(r,createInternalData())}),V.renderVN=()=>{var e=P.value,t=k.value,r=N.value;return(0,_vue.h)("div",{ref:s,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!T.animat,"is--round":T.round,"is--maximize":j.isZMax,"is--loading":r}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:r}=U.value,o=u.asideLeft||u["aside-left"],a=u.asideRight||u["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},y(e)),(0,_vue.h)("div",{class:"vxe-grid--layout-body-wrapper"},[o?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-left-wrapper"},o({})):renderEmptyElement(V),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},y(t)),a?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-right-wrapper"},a({})):renderEmptyElement(V)]),(0,_vue.h)("div",{class:"vxe-grid--layout-footer-wrapper"},y(r))]})())},(0,_vue.provide)("$xeGrid",V),V},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_props=require("./props"),_emits=require("./emits"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_emits2=require("../../table/src/emits"),_props2=require("../../table/src/props"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/toolbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS,renderEmptyElement}=_ui.VxeUI,tableComponentPropKeys=Object.keys(_props2.tableProps),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","setRow","createData","createRow","revertData","clearData","isRemoveByRow","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getFullColumns","getData","getCheckboxRecords","getParentRow","getTreeRowChildren","getTreeParentRow","getRowSeq","getRowById","getRowid","getTableData","getFullData","setColumnFixed","clearColumnFixed","setColumnWidth","getColumnWidth","recalcRowHeight","setRowHeightConf","getRowHeightConf","setRowHeight","getRowHeight","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","setCheckboxRowKey","isCheckedByCheckboxRow","isCheckedByCheckboxRowKey","isIndeterminateByCheckboxRow","isIndeterminateByCheckboxRowKey","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","isCheckedByRadioRowKey","setRadioRow","setRadioRowKey","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","setPendingRow","togglePendingRow","hasPendingByRow","isPendingByRow","getPendingRecords","clearPendingRow","setFilterByEvent","sort","setSort","setSortByEvent","clearSort","clearSortByEvent","isSort","getSortColumns","closeFilter","isFilter","clearFilterByEvent","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","setRowGroupExpand","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","getCellLabel","getCellElement","focus","blur","connect","connectToolbar"];function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGrid",props:_props.gridProps,emits:_emits.gridEmits,setup(d,e){let t,{slots:u,emit:a}=e;var r=_xeUtils.default.uniqueId();let n=_ui.VxeUI.getComponent("VxeForm"),l=_ui.VxeUI.getComponent("VxePager"),k=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],I=useFns.useSize(d).computeSize,O=(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}}),o=createInternalData(),s=(0,_vue.ref)(),$=(0,_vue.ref)(),i=(0,_vue.ref)(),g=(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 b=e=>{let t={};return e.forEach(r=>{t[r]=(...e)=>{var t=$.value;if(t&&t[r])return t[r](...e)}}),t};let _=b(tableComponentMethodKeys),M=(tableComponentMethodKeys.forEach(r=>{_[r]=(...e)=>{var t=$.value;if(t&&t[r])return t&&t[r](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),d.proxyConfig))),V=(0,_vue.computed)(()=>{var e=M.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),D=(0,_vue.computed)(()=>{var e=M.value;return _xeUtils.default.isBoolean(e.showActionMsg)?e.showActionMsg:!!e.showActiveMsg}),j=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,d.pagerConfig)),h=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,d.formConfig)),F=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,d.toolbarConfig)),C=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,d.zoomConfig)),U=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=d,{isZMax:r,tZindex:a}=O,o={};return r?o.zIndex=a:(e&&(o.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(o.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),o}),T=(0,_vue.computed)(()=>{let t={};return tableComponentPropKeys.forEach(e=>{t[e]=d[e]}),t}),S=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,editConfig:r,proxyConfig:a}=d,{isZMax:o,tablePage:l}=O,n=T.value,i=M.value,s=j.value,u=H.value,g=Object.assign({},n);return o&&(n.maxHeight?g.maxHeight="100%":g.height="100%"),a&&(0,_utils.isEnableConf)(i)&&(g.loading=u,t)&&i.seq&&(0,_utils.isEnableConf)(s)&&(g.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize})),r&&(g.editConfig=Object.assign({},r)),g}),z=(0,_vue.computed)(()=>{var e=d.layouts;let t=[],r=[],a=[],o=[];return(t=e&&e.length?e:getConfig().grid.layouts||k).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],a=t[1]||[],o=t[2]||[]):a=t),{headKeys:r,bodyKeys:a,footKeys:o}});var A=(0,_vue.computed)(()=>j.value.currentPage),Z=(0,_vue.computed)(()=>j.value.pageSize),K=(0,_vue.computed)(()=>j.value.total);let y=(0,_vue.computed)(()=>{var e=O.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),H=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=d,r=O.tableLoading,a=M.value,o=a.showLoading;return e||r&&o&&t&&(0,_utils.isEnableConf)(a)}),N={refElem:s,refTable:$,refForm:i,refToolbar:g,refPager:c},G={computeProxyOpts:M,computePagerOpts:j,computeFormOpts:h,computeToolbarOpts:F,computeZoomOpts:C},q={xID:r,props:d,context:e,reactData:O,internalData:o,getRefMaps:()=>N,getComputeMaps:()=>G},Q=()=>{var e=F.value;d.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=$.value,t=g.value;e&&t&&e.connectToolbar(t)})},B=()=>{var e=d.proxyConfig,t=O.formData,r=M.value,a=h.value;return e&&(0,_utils.isEnableConf)(r)&&r.form?t:a.data},E=e=>{var t=O.tablePage,r=d.pagerConfig,a=j.value;r&&(0,_utils.isEnableConf)(a)&&(e?a[e]&&(t[e]=_xeUtils.default.toNumber(a[e])):({currentPage:r,pageSize:e,total:a}=a,r&&(t.currentPage=r),e&&(t.pageSize=e),a&&(t.total=a)))},L=(e,t)=>{var r=M.value,r=(r.response||r.props||{}).message,a=$.value;let o;return(o=e&&r?_xeUtils.default.isFunction(r)?r({data:e,$table:a,$grid:q,$gantt:null}):_xeUtils.default.get(e,r):o)||getI18n(t)},W=(e,t,r)=>{var a=D.value,o=q.getCheckboxRecords();if(a)if(o.length){if(_ui.VxeUI.modal)return _ui.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return r()})}else _ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else o.length&&r();return Promise.resolve()},Y=e=>{var t=d.proxyConfig,r=O.tablePage;let{$event:a,currentPage:o,pageSize:l}=e;var n=M.value;r.currentPage=o,r.pageSize=l,q.dispatchEvent("page-change",e,a),t&&(0,_utils.isEnableConf)(n)&&q.commitProxy("query").then(e=>{q.dispatchEvent("proxy-query",e,a)})},J=t=>{var e,r=$.value,a=d.proxyConfig;r&&(r=r.getComputeMaps().computeSortOpts,e=M.value,r.value.remote)&&(O.sortData=t.sortList,a)&&(0,_utils.isEnableConf)(e)&&(O.tablePage.currentPage=1,q.commitProxy("query").then(e=>{q.dispatchEvent("proxy-query",e,t.$event)}))},X=e=>{J(e),q.dispatchEvent("sort-change",e,e.$event)},ee=e=>{J(e),q.dispatchEvent("clear-all-sort",e,e.$event)},te=t=>{var e,r=$.value,a=d.proxyConfig;r&&(r=r.getComputeMaps().computeFilterOpts,e=M.value,r.value.remote)&&(O.filterData=t.filterList,a)&&(0,_utils.isEnableConf)(e)&&(O.tablePage.currentPage=1,q.commitProxy("query").then(e=>{q.dispatchEvent("proxy-query",e,t.$event)}))},re=e=>{te(e),q.dispatchEvent("filter-change",e,e.$event)},ae=e=>{te(e),q.dispatchEvent("clear-all-filter",e,e.$event)},oe=t=>{var e=d.proxyConfig,r=M.value;O.tableLoading||(e&&(0,_utils.isEnableConf)(r)&&q.commitProxy("reload").then(e=>{q.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),q.dispatchEvent("form-submit",t,t.$event))},le=e=>{var t=$.value,r=d.proxyConfig;let a=e.$event;var o=M.value;r&&(0,_utils.isEnableConf)(o)&&(t&&t.clearScroll(),q.commitProxy("reload").then(e=>{q.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),a)})),q.dispatchEvent("form-reset",e,a)},ne=e=>{q.dispatchEvent("form-submit-invalid",e,e.$event)},ie=e=>{var t=e.$event;q.dispatchEvent("form-toggle-collapse",e,t),q.dispatchEvent("form-collapse",e,t)},se=e=>{var t=O.isZMax;return(e?!t:t)&&(O.isZMax=!t,O.tZindex<(0,_utils.getLastZIndex)())&&(O.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>q.recalculate(!0)).then(()=>(setTimeout(()=>q.recalculate(!0),15),O.isZMax))},R=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(u[e])return u[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},ue=e=>{let r={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?u[e]?r[t]=u[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):r[t]=e)}),r},ge=()=>{var{formConfig:e,proxyConfig:r}=d,a=O.formData,o=M.value,l=h.value;if(e&&(0,_utils.isEnableConf)(l)||u.form){let e=[];if(u.form)e=u.form({$grid:q,$gantt:null});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=o.beforeItem;o&&t&&l.items.forEach(e=>{t({$grid:q,$gantt:null,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]&&(t[e]=u[e])})}),n&&e.push((0,_vue.h)(n,Object.assign(Object.assign({ref:i},Object.assign({},l,{data:r&&(0,_utils.isEnableConf)(o)&&o.form?a:l.data})),{onSubmit:oe,onReset:le,onSubmitInvalid:ne,onCollapse:ie}),t))}return(0,_vue.h)("div",{ref:v,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(q)},de=()=>{var t,r,a,o,l,n,i=d.toolbarConfig,s=F.value;if(i&&(0,_utils.isEnableConf)(s)||u.toolbar){let e=[];return u.toolbar?e=u.toolbar({$grid:q,$gantt:null}):(i={},(n=s.slots)&&(t=R(n,"buttons"),r=R(n,"buttonPrefix"),a=R(n,"buttonSuffix"),o=R(n,"tools"),l=R(n,"toolPrefix"),n=R(n,"toolSuffix"),t&&(i.buttons=t),r&&(i.buttonPrefix=r),a&&(i.buttonSuffix=a),o&&(i.tools=o),l&&(i.toolPrefix=l),n)&&(i.toolSuffix=n),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:g},s),{slots:void 0}),i))),(0,_vue.h)("div",{ref:m,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(q)},ce=()=>{var e=u.top;return e?(0,_vue.h)("div",{ref:p,key:"top",class:"vxe-grid--top-wrapper"},e({$grid:q,$gantt:null})):renderEmptyElement(q)},ve=()=>{var e=u.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:q,$gantt:null})):renderEmptyElement(q)},me=()=>{var e=u.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:q,$gantt:null})):renderEmptyElement(q)},pe=()=>{var e=d.proxyConfig,t=S.value,r=M.value,a=Object.assign({},be),o=u.empty,l=u.loading,n=u.rowDragIcon||u["row-drag-icon"],i=u.columnDragIcon||u["column-drag-icon"],e=(e&&(0,_utils.isEnableConf)(r)&&(r.sort&&(a.onSortChange=X,a.onClearAllSort=ee),r.filter)&&(a.onFilterChange=re,a.onClearAllFilter=ae),{});return o&&(e.empty=o),l&&(e.loading=l),n&&(e.rowDragIcon=n),i&&(e.columnDragIcon=i),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:$},t),a),e)])},fe=()=>u.bottom?(0,_vue.h)("div",{ref:f,key:"bottom",class:"vxe-grid--bottom-wrapper"},u.bottom({$grid:q,$gantt:null})):renderEmptyElement(q),xe=()=>{var{proxyConfig:e,pagerConfig:t}=d,r=M.value,a=j.value,o=u.pager;return t&&(0,_utils.isEnableConf)(a)||u.pager?(0,_vue.h)("div",{ref:x,key:"pager",class:"vxe-grid--pager-wrapper"},o?o({$grid:q,$gantt:null}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:c},a),e&&(0,_utils.isEnableConf)(r)?O.tablePage:{}),{onPageChange:Y}),ue(a.slots)):renderEmptyElement(q)]):renderEmptyElement(q)},w=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(ge());break;case"Toolbar":t.push(de());break;case"Top":t.push(ce());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[ve(),pe(),me()]));break;case"Bottom":t.push(fe());break;case"Pager":t.push(xe());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},be={},_e=(_emits2.tableEmits.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);be[e]=(...e)=>a(t,...e)}),()=>{var e=h.value;if(e.items){let o={};return e.items.forEach(t=>{var{field:r,itemRender:a}=t;if(r){let e=null;a&&(a=a.defaultValue,_xeUtils.default.isFunction(a)?e=a({item:t}):_xeUtils.default.isUndefined(a)||(e=a)),o[r]=e}}),o}return{}}),he=()=>{var{proxyConfig:e,formConfig:t}=d,r=O.proxyInited,a=M.value,o=h.value;e&&(0,_utils.isEnableConf)(a)&&(t&&(0,_utils.isEnableConf)(o)&&a.form&&o.items&&(O.formData=_e()),r||!(O.proxyInited=!0)!==a.autoLoad&&(0,_vue.nextTick)().then(()=>q.commitProxy("initial")).then(e=>{ye("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},Ce=e=>{var t=C.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&O.isZMax&&!1!==t.escRestore&&q.triggerZoomEvent(e)},ye=(e,t,r)=>{a(e,createEvent(r,{$grid:q,$gantt:null},t))};r={dispatchEvent:ye,getEl(){return s.value},commitProxy(t,...v){let{proxyConfig:a,toolbarConfig:e,pagerConfig:i,editRules:m,validConfig:p}=d,s=O.tablePage,f=D.value,x=V.value;var u=M.value;let b=j.value;var r=F.value;let{beforeQuery:_,afterQuery:h,beforeDelete:n,afterDelete:C,beforeSave:y,afterSave:E,ajax:R={}}=u,w=u.response||u.props||{},P=$.value;if(P){let g=B(),d=null,c=null;c=_xeUtils.default.isString(t)?(o=r.buttons,r=e&&(0,_utils.isEnableConf)(r)&&o?_xeUtils.default.findTree(o,e=>e.code===t,{children:"dropdowns"}):null,d=r?r.item:null,t):(d=t).code;var o,l=d?d.params:null;switch(c){case"insert":return P.insert({});case"insert_edit":return P.insert({}).then(({row:e})=>P.setEditRow(e,!0));case"insert_actived":return P.insert({}).then(({row:e})=>P.setEditRow(e,!0));case"mark_cancel":T=c,U=D.value,k=$.value,(I=k?k.getCheckboxRecords():[]).length?(k&&k.togglePendingRow(I),q.clearCheckboxRow()):U&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:T,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return W(c,"vxe.grid.removeSelectRecord",()=>P.removeCheckboxRow());case"import":P.importData(l);break;case"open_import":P.openImport(l);break;case"export":P.exportData(l);break;case"open_export":P.openExport(l);break;case"reset_custom":return P.resetCustom(!0);case"initial":case"reload":case"query":{var k=R.query;let n=R.querySuccess,t=R.queryError;if(k){var I="initial"===c,U="reload"===c;if(!I&&O.tableLoading)return(0,_vue.nextTick)();let r=[],o=[],e={};if(i&&((I||U)&&(s.currentPage=1),(0,_utils.isEnableConf)(b))&&(e=Object.assign({},s)),I){if(a&&(0,_utils.isEnableConf)(u)&&u.form&&(g=_e(),O.formData=g),P){let{tableFullColumn:e,fullColumnFieldData:a}=P.internalData;var T=P.getComputeMaps().computeSortOpts;let t=T.value.defaultSort;e.forEach(e=>{e.order=null}),t&&(_xeUtils.default.isArray(t)||(t=[t]),r=t.map(e=>{var{field:e,order:t}=e,r=a[e];return r&&(r=r.column)&&(r.order=t),{field:e,property:e,order:t}})),o=P.getCheckedFilters()}}else P&&(U?P.clearAll():(r=P.getSortColumns(),o=P.getCheckedFilters()));let l={$table:P,$grid:q,$gantt:null,code:c,button:d,isInited:I,isReload:U,page:e,sort:r.length?r[0]:{},sorts:r,filters:o,form:g,options:k};return O.sortData=r,O.filterData=o,O.tableLoading=!0,Promise.resolve((_||k)(l,...v)).then(e=>{let t=[];var r,a;return O.tableLoading=!1,e&&(i&&(0,_utils.isEnableConf)(b)?(a=w.total,a=(_xeUtils.default.isFunction(a)?a({data:e,$table:P,$grid:q,$gantt:null}):_xeUtils.default.get(e,a||"page.total"))||0,s.total=_xeUtils.default.toNumber(a),r=w.result,t=(_xeUtils.default.isFunction(r)?r({data:e,$table:P,$grid:q,$gantt:null}):_xeUtils.default.get(e,r||"result"))||[],r=Math.max(Math.ceil(a/s.pageSize),1),s.currentPage>r&&(s.currentPage=r)):(a=w.list,t=(a?_xeUtils.default.isFunction(a)?a({data:e,$table:P,$grid:q,$gantt:null}):_xeUtils.default.get(e,a):e)||[])),P?P.loadData(t):(0,_vue.nextTick)(()=>{P&&P.loadData(t)}),h&&h(l,...v),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(O.tableLoading=!1,t&&t(Object.assign(Object.assign({},l),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{let a=R.delete,o=R.deleteSuccess,l=R.deleteError;if(a){let e=q.getCheckboxRecords(),t=e.filter(e=>!P.isInsertByRow(e));var S={removeRecords:t};let r={$table:P,$grid:q,$gantt:null,code:c,button:d,body:S,form:g,options:a};if(e.length)return W(c,"vxe.grid.deleteSelectRecord",()=>t.length?(O.tableLoading=!0,Promise.resolve((n||a)(r,...v)).then(e=>(O.tableLoading=!1,P.setPendingRow(t,!1),x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:L(e,"vxe.grid.delSuccess"),status:"success"}),C?C(r,...v):q.commitProxy("query"),o&&o(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(O.tableLoading=!1,x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:L(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):P.remove(e));f&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let i=R.save,s=R.saveSuccess,u=R.saveError;if(i){let t=P.getRecordset(),{insertRecords:r,removeRecords:a,updateRecords:o,pendingRecords:l}=t,n={$table:P,$grid:q,$gantt:null,code:c,button:d,body:t,form:g,options:i},e=(r.length&&(t.pendingRecords=l.filter(e=>-1===P.findRowIndexOf(r,e))),l.length&&(t.insertRecords=r.filter(e=>-1===P.findRowIndexOf(l,e))),Promise.resolve());return(e=m?P[p&&"full"===p.msgMode?"fullValidate":"validate"](t.insertRecords.concat(o)):e).then(e=>{if(!e)return t.insertRecords.length||a.length||o.length||t.pendingRecords.length?(O.tableLoading=!0,Promise.resolve((y||i)(n,...v)).then(e=>(O.tableLoading=!1,P.clearPendingRow(),x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:L(e,"vxe.grid.saveSuccess"),status:"success"}),E?E(n,...v):q.commitProxy("query"),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(O.tableLoading=!1,x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:L(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},n),{response:e})),{status:!1}))):void(f&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var S=commands.get(c);S&&((S=S.tableCommandMethod||S.commandMethod)?S({code:c,button:d,$grid:q,$table:P,$gantt:null},...v):(0,_log.errLog)("vxe.error.notCommands",[c]))}}return(0,_vue.nextTick)()},getParams(){return d.params},zoom(){return O.isZMax?q.revert():q.maximize()},isMaximized(){return O.isZMax},maximize(){return se(!0)},revert(){return se()},getFormData:B,getFormItems(e){var t=h.value,r=d.formConfig,a=t.items;let o=[];return _xeUtils.default.eachTree(r&&(0,_utils.isEnableConf)(t)&&a?a:[],e=>{o.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?o:o[e]},resetForm(){var e=i.value;return e?e.reset():(0,_vue.nextTick)()},validateForm(){var e=i.value;return e?e.validate():(0,_vue.nextTick)()},validateFormField(e){var t=i.value;return t?t.validateField(e):(0,_vue.nextTick)()},clearFormValidate(e){var t=i.value;return t?t.clearValidate(e):(0,_vue.nextTick)()},homePage(){var e=O.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=c.value;t&&t.homePageByEvent(e)},endPage(){var e=O.tablePage,t=y.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=c.value;t&&t.endPageByEvent(e)},setCurrentPage(e){var t=O.tablePage,r=y.value;return t.currentPage=Math.min(r,Math.max(1,_xeUtils.default.toNumber(e))),(0,_vue.nextTick)()},setCurrentPageByEvent(e,t){var r=c.value;r&&r.setCurrentPageByEvent(e,t)},setPageSize(e){var t=O.tablePage;return t.pageSize=Math.max(1,_xeUtils.default.toNumber(e)),(0,_vue.nextTick)()},setPageSizeByEvent(e,t){var r=c.value;r&&r.setPageSizeByEvent(e,t)},getProxyInfo(){var e,t=$.value;return d.proxyConfig?(e=O.sortData,{data:t?t.getFullData():[],filter:O.filterData,form:B(),sort:e.length?e[0]:{},sorts:e,pager:O.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}};let Ee={extendTableMethods:b,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=u[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e,t,r,a,o,l,n=O.isZMax,i=s.value;return i?(e=v.value,t=m.value,r=p.value,a=f.value,o=x.value,l=i.parentElement,(!n&&l?(0,_dom.getPaddingTopBottomSize)(l):0)+(0,_dom.getPaddingTopBottomSize)(i)+(0,_dom.getOffsetHeight)(e)+(0,_dom.getOffsetHeight)(t)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(o)):0},getParentHeight(){var e=s.value;return e?(e=e.parentElement,(O.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-Ee.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let r=e.code;return q.commitProxy(e,t).then(e=>{r&&e&&e.status&&["query","reload","delete","save"].includes(r)&&q.dispatchEvent("delete"===r||"save"===r?"proxy-"+r:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===r}),t)})},triggerToolbarBtnEvent(e,t){q.triggerToolbarCommitEvent(e,t),q.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){q.triggerToolbarCommitEvent(e,t),q.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){q.zoom(),q.dispatchEvent("zoom",{type:O.isZMax?"max":"revert"},e)}};Object.assign(q,_,r,Ee,{loadColumn(e){var t=$.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return q.clearAll(),q.loadColumn(e)}});let P=(0,_vue.ref)(0);return(0,_vue.watch)(()=>d.columns?d.columns.length:-1,()=>{P.value++}),(0,_vue.watch)(()=>d.columns,()=>{P.value++}),(0,_vue.watch)(P,()=>{(0,_vue.nextTick)(()=>q.loadColumn(d.columns||[]))}),(0,_vue.watch)(()=>d.toolbarConfig,()=>{Q()}),(0,_vue.watch)(A,()=>{E("currentPage")}),(0,_vue.watch)(Z,()=>{E("pageSize")}),(0,_vue.watch)(K,()=>{E("total")}),(0,_vue.watch)(()=>d.proxyConfig,()=>{he()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(q))&&_xeUtils.default.isObject(e)&&Object.assign(q,e)}),E(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=d.columns,t=M.value;d.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),d.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),t.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),e&&e.length&&q.loadColumn(e),Q(),he()}),globalEvents.on(q,"keydown",Ce)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(q,"keydown"),_xeUtils.default.assign(o,createInternalData())}),q.renderVN=()=>{var e=I.value,t=U.value,r=H.value;return(0,_vue.h)("div",{ref:s,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!d.animat,"is--round":d.round,"is--maximize":O.isZMax,"is--loading":r}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:r}=z.value,a=u.asideLeft||u["aside-left"],o=u.asideRight||u["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},w(e)),(0,_vue.h)("div",{class:"vxe-grid--layout-body-wrapper"},[a?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-left-wrapper"},a({})):renderEmptyElement(q),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},w(t)),o?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-right-wrapper"},o({})):renderEmptyElement(q)]),(0,_vue.h)("div",{class:"vxe-grid--layout-footer-wrapper"},w(r))]})())},(0,_vue.provide)("$xeGrid",q),q},render(){return this.renderVN()}});