vxe-table 4.13.52 → 4.14.0-beta.1

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 (169) hide show
  1. package/es/grid/src/grid.js +102 -78
  2. package/es/locale/lang/ar-EG.js +1 -3
  3. package/es/locale/lang/de-DE.js +1 -3
  4. package/es/locale/lang/en-US.js +1 -3
  5. package/es/locale/lang/es-ES.js +1 -3
  6. package/es/locale/lang/fr-FR.js +1 -3
  7. package/es/locale/lang/hu-HU.js +1 -3
  8. package/es/locale/lang/hy-AM.js +1 -3
  9. package/es/locale/lang/id-ID.js +1 -3
  10. package/es/locale/lang/it-IT.js +1 -3
  11. package/es/locale/lang/ja-JP.js +1 -3
  12. package/es/locale/lang/ko-KR.js +1 -3
  13. package/es/locale/lang/ms-MY.js +1 -3
  14. package/es/locale/lang/nb-NO.js +1 -3
  15. package/es/locale/lang/pt-BR.js +1 -3
  16. package/es/locale/lang/ru-RU.js +1 -3
  17. package/es/locale/lang/th-TH.js +1 -3
  18. package/es/locale/lang/ug-CN.js +1 -3
  19. package/es/locale/lang/uk-UA.js +1 -3
  20. package/es/locale/lang/uz-UZ.js +1 -3
  21. package/es/locale/lang/vi-VN.js +1 -3
  22. package/es/locale/lang/zh-CHT.js +1 -3
  23. package/es/locale/lang/zh-CN.js +1 -3
  24. package/es/style.css +1 -1
  25. package/es/table/module/edit/hook.js +1 -31
  26. package/es/table/module/filter/hook.js +1 -1
  27. package/es/table/module/keyboard/hook.js +2 -2
  28. package/es/table/src/columnInfo.js +0 -5
  29. package/es/table/src/table.js +13 -50
  30. package/es/ui/index.js +2 -2
  31. package/es/ui/src/log.js +1 -1
  32. package/lib/grid/src/grid.js +115 -82
  33. package/lib/grid/src/grid.min.js +1 -1
  34. package/lib/index.common.js +2 -1
  35. package/lib/index.umd.js +1918 -2024
  36. package/lib/index.umd.min.js +1 -1
  37. package/lib/locale/lang/ar-EG.js +1 -3
  38. package/lib/locale/lang/ar-EG.min.js +1 -1
  39. package/lib/locale/lang/ar-EG.umd.js +1 -3
  40. package/lib/locale/lang/de-DE.js +1 -3
  41. package/lib/locale/lang/de-DE.min.js +1 -1
  42. package/lib/locale/lang/de-DE.umd.js +1 -3
  43. package/lib/locale/lang/en-US.js +1 -3
  44. package/lib/locale/lang/en-US.min.js +1 -1
  45. package/lib/locale/lang/en-US.umd.js +1 -3
  46. package/lib/locale/lang/es-ES.js +1 -3
  47. package/lib/locale/lang/es-ES.min.js +1 -1
  48. package/lib/locale/lang/es-ES.umd.js +1 -3
  49. package/lib/locale/lang/fr-FR.js +1 -3
  50. package/lib/locale/lang/fr-FR.min.js +1 -1
  51. package/lib/locale/lang/fr-FR.umd.js +1 -3
  52. package/lib/locale/lang/hu-HU.js +1 -3
  53. package/lib/locale/lang/hu-HU.min.js +1 -1
  54. package/lib/locale/lang/hu-HU.umd.js +1 -3
  55. package/lib/locale/lang/hy-AM.js +1 -3
  56. package/lib/locale/lang/hy-AM.min.js +1 -1
  57. package/lib/locale/lang/hy-AM.umd.js +1 -3
  58. package/lib/locale/lang/id-ID.js +1 -3
  59. package/lib/locale/lang/id-ID.min.js +1 -1
  60. package/lib/locale/lang/id-ID.umd.js +1 -3
  61. package/lib/locale/lang/it-IT.js +1 -3
  62. package/lib/locale/lang/it-IT.min.js +1 -1
  63. package/lib/locale/lang/it-IT.umd.js +1 -3
  64. package/lib/locale/lang/ja-JP.js +1 -3
  65. package/lib/locale/lang/ja-JP.min.js +1 -1
  66. package/lib/locale/lang/ja-JP.umd.js +1 -3
  67. package/lib/locale/lang/ko-KR.js +1 -3
  68. package/lib/locale/lang/ko-KR.min.js +1 -1
  69. package/lib/locale/lang/ko-KR.umd.js +1 -3
  70. package/lib/locale/lang/ms-MY.js +1 -3
  71. package/lib/locale/lang/ms-MY.min.js +1 -1
  72. package/lib/locale/lang/ms-MY.umd.js +1 -3
  73. package/lib/locale/lang/nb-NO.js +1 -3
  74. package/lib/locale/lang/nb-NO.min.js +1 -1
  75. package/lib/locale/lang/nb-NO.umd.js +1 -3
  76. package/lib/locale/lang/pt-BR.js +1 -3
  77. package/lib/locale/lang/pt-BR.min.js +1 -1
  78. package/lib/locale/lang/pt-BR.umd.js +1 -3
  79. package/lib/locale/lang/ru-RU.js +1 -3
  80. package/lib/locale/lang/ru-RU.min.js +1 -1
  81. package/lib/locale/lang/ru-RU.umd.js +1 -3
  82. package/lib/locale/lang/th-TH.js +1 -3
  83. package/lib/locale/lang/th-TH.min.js +1 -1
  84. package/lib/locale/lang/th-TH.umd.js +1 -3
  85. package/lib/locale/lang/ug-CN.js +1 -3
  86. package/lib/locale/lang/ug-CN.min.js +1 -1
  87. package/lib/locale/lang/ug-CN.umd.js +1 -3
  88. package/lib/locale/lang/uk-UA.js +1 -3
  89. package/lib/locale/lang/uk-UA.min.js +1 -1
  90. package/lib/locale/lang/uk-UA.umd.js +1 -3
  91. package/lib/locale/lang/uz-UZ.js +1 -3
  92. package/lib/locale/lang/uz-UZ.min.js +1 -1
  93. package/lib/locale/lang/uz-UZ.umd.js +1 -3
  94. package/lib/locale/lang/vi-VN.js +1 -3
  95. package/lib/locale/lang/vi-VN.min.js +1 -1
  96. package/lib/locale/lang/vi-VN.umd.js +1 -3
  97. package/lib/locale/lang/zh-CHT.js +1 -3
  98. package/lib/locale/lang/zh-CHT.min.js +1 -1
  99. package/lib/locale/lang/zh-CHT.umd.js +1 -3
  100. package/lib/locale/lang/zh-CN.js +1 -3
  101. package/lib/locale/lang/zh-CN.min.js +1 -1
  102. package/lib/locale/lang/zh-CN.umd.js +1 -3
  103. package/lib/style.css +1 -1
  104. package/lib/table/module/edit/hook.js +1 -30
  105. package/lib/table/module/edit/hook.min.js +1 -1
  106. package/lib/table/module/filter/hook.js +1 -1
  107. package/lib/table/module/filter/hook.min.js +1 -1
  108. package/lib/table/module/keyboard/hook.js +2 -2
  109. package/lib/table/module/keyboard/hook.min.js +1 -1
  110. package/lib/table/src/columnInfo.js +0 -5
  111. package/lib/table/src/columnInfo.min.js +1 -1
  112. package/lib/table/src/table.js +7 -12
  113. package/lib/table/src/table.min.js +1 -1
  114. package/lib/ui/index.js +2 -2
  115. package/lib/ui/index.min.js +1 -1
  116. package/lib/ui/src/log.js +1 -1
  117. package/lib/ui/src/log.min.js +1 -1
  118. package/lib/v-x-e-table/index.js +2 -1
  119. package/lib/v-x-e-table/index.min.js +1 -1
  120. package/lib/vxe-colgroup/index.js +2 -1
  121. package/lib/vxe-colgroup/index.min.js +1 -1
  122. package/lib/vxe-column/index.js +2 -1
  123. package/lib/vxe-column/index.min.js +1 -1
  124. package/lib/vxe-grid/index.js +2 -1
  125. package/lib/vxe-grid/index.min.js +1 -1
  126. package/lib/vxe-table/index.js +2 -1
  127. package/lib/vxe-table/index.min.js +1 -1
  128. package/lib/vxe-toolbar/index.js +2 -1
  129. package/lib/vxe-toolbar/index.min.js +1 -1
  130. package/lib/vxe-ui/index.js +2 -1
  131. package/lib/vxe-ui/index.min.js +1 -1
  132. package/lib/vxe-v-x-e-table/index.js +2 -1
  133. package/lib/vxe-v-x-e-table/index.min.js +1 -1
  134. package/package.json +1 -1
  135. package/packages/grid/src/grid.ts +109 -84
  136. package/packages/locale/lang/ar-EG.ts +1 -3
  137. package/packages/locale/lang/de-DE.ts +1 -3
  138. package/packages/locale/lang/en-US.ts +1 -3
  139. package/packages/locale/lang/es-ES.ts +1 -3
  140. package/packages/locale/lang/fr-FR.ts +1 -3
  141. package/packages/locale/lang/hu-HU.ts +1 -3
  142. package/packages/locale/lang/hy-AM.ts +1 -3
  143. package/packages/locale/lang/id-ID.ts +1 -3
  144. package/packages/locale/lang/it-IT.ts +1 -3
  145. package/packages/locale/lang/ja-JP.ts +1 -3
  146. package/packages/locale/lang/ko-KR.ts +1 -3
  147. package/packages/locale/lang/ms-MY.ts +1 -3
  148. package/packages/locale/lang/nb-NO.ts +1 -3
  149. package/packages/locale/lang/pt-BR.ts +1 -3
  150. package/packages/locale/lang/ru-RU.ts +1 -3
  151. package/packages/locale/lang/th-TH.ts +1 -3
  152. package/packages/locale/lang/ug-CN.ts +1 -3
  153. package/packages/locale/lang/uk-UA.ts +1 -3
  154. package/packages/locale/lang/uz-UZ.ts +1 -3
  155. package/packages/locale/lang/vi-VN.ts +1 -3
  156. package/packages/locale/lang/zh-CHT.ts +1 -3
  157. package/packages/locale/lang/zh-CN.ts +1 -3
  158. package/packages/table/module/edit/hook.ts +1 -29
  159. package/packages/table/module/filter/hook.ts +1 -1
  160. package/packages/table/module/keyboard/hook.ts +2 -2
  161. package/packages/table/src/columnInfo.ts +0 -5
  162. package/packages/table/src/table.ts +13 -47
  163. package/packages/ui/index.ts +1 -1
  164. /package/es/{iconfont.1751505288329.ttf → iconfont.1750910518778.ttf} +0 -0
  165. /package/es/{iconfont.1751505288329.woff → iconfont.1750910518778.woff} +0 -0
  166. /package/es/{iconfont.1751505288329.woff2 → iconfont.1750910518778.woff2} +0 -0
  167. /package/lib/{iconfont.1751505288329.ttf → iconfont.1750910518778.ttf} +0 -0
  168. /package/lib/{iconfont.1751505288329.woff → iconfont.1750910518778.woff} +0 -0
  169. /package/lib/{iconfont.1751505288329.woff2 → iconfont.1750910518778.woff2} +0 -0
@@ -112,11 +112,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
112
112
  });
113
113
  const computeIsRespMsg = (0, _vue.computed)(() => {
114
114
  const proxyOpts = computeProxyOpts.value;
115
- return _xeUtils.default.isBoolean(proxyOpts.message) ? proxyOpts.message : proxyOpts.showResponseMsg;
115
+ return !!(_xeUtils.default.isBoolean(proxyOpts.message) ? proxyOpts.message : proxyOpts.showResponseMsg);
116
116
  });
117
117
  const computeIsActiveMsg = (0, _vue.computed)(() => {
118
118
  const proxyOpts = computeProxyOpts.value;
119
- return proxyOpts.showActiveMsg;
119
+ return !!proxyOpts.showActiveMsg;
120
120
  });
121
121
  const computePagerOpts = (0, _vue.computed)(() => {
122
122
  return Object.assign({}, getConfig().grid.pagerConfig, props.pagerConfig);
@@ -414,12 +414,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
414
414
  reactData.sortData = params.sortList;
415
415
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
416
416
  reactData.tablePage.currentPage = 1;
417
- gridMethods.commitProxy('query').then(rest => {
418
- gridMethods.dispatchEvent('proxy-query', rest, params.$event);
417
+ $xeGrid.commitProxy('query').then(rest => {
418
+ $xeGrid.dispatchEvent('proxy-query', rest, params.$event);
419
419
  });
420
420
  }
421
421
  }
422
- gridMethods.dispatchEvent('sort-change', params, params.$event);
422
+ $xeGrid.dispatchEvent('sort-change', params, params.$event);
423
423
  };
424
424
  const filterChangeEvent = params => {
425
425
  const $xeTable = refTable.value;
@@ -436,12 +436,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
436
436
  reactData.filterData = params.filterList;
437
437
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
438
438
  reactData.tablePage.currentPage = 1;
439
- gridMethods.commitProxy('query').then(rest => {
440
- gridMethods.dispatchEvent('proxy-query', rest, params.$event);
439
+ $xeGrid.commitProxy('query').then(rest => {
440
+ $xeGrid.dispatchEvent('proxy-query', rest, params.$event);
441
441
  });
442
442
  }
443
443
  }
444
- gridMethods.dispatchEvent('filter-change', params, params.$event);
444
+ $xeGrid.dispatchEvent('filter-change', params, params.$event);
445
445
  };
446
446
  const submitFormEvent = params => {
447
447
  const {
@@ -452,15 +452,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
452
452
  return;
453
453
  }
454
454
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
455
- gridMethods.commitProxy('reload').then(rest => {
456
- gridMethods.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
455
+ $xeGrid.commitProxy('reload').then(rest => {
456
+ $xeGrid.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
457
457
  isReload: true
458
458
  }), params.$event);
459
459
  });
460
460
  }
461
- gridMethods.dispatchEvent('form-submit', params, params.$event);
461
+ $xeGrid.dispatchEvent('form-submit', params, params.$event);
462
462
  };
463
463
  const resetFormEvent = params => {
464
+ const $xeTable = refTable.value;
464
465
  const {
465
466
  proxyConfig
466
467
  } = props;
@@ -468,26 +469,25 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
468
469
  $event
469
470
  } = params;
470
471
  const proxyOpts = computeProxyOpts.value;
471
- const $xeTable = refTable.value;
472
472
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
473
473
  $xeTable.clearScroll();
474
- gridMethods.commitProxy('reload').then(rest => {
475
- gridMethods.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
474
+ $xeGrid.commitProxy('reload').then(rest => {
475
+ $xeGrid.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
476
476
  isReload: true
477
477
  }), $event);
478
478
  });
479
479
  }
480
- gridMethods.dispatchEvent('form-reset', params, $event);
480
+ $xeGrid.dispatchEvent('form-reset', params, $event);
481
481
  };
482
482
  const submitInvalidEvent = params => {
483
- gridMethods.dispatchEvent('form-submit-invalid', params, params.$event);
483
+ $xeGrid.dispatchEvent('form-submit-invalid', params, params.$event);
484
484
  };
485
485
  const collapseEvent = params => {
486
486
  const {
487
487
  $event
488
488
  } = params;
489
- gridMethods.dispatchEvent('form-toggle-collapse', params, $event);
490
- gridMethods.dispatchEvent('form-collapse', params, $event);
489
+ $xeGrid.dispatchEvent('form-toggle-collapse', params, $event);
490
+ $xeGrid.dispatchEvent('form-collapse', params, $event);
491
491
  };
492
492
  const handleZoom = isMax => {
493
493
  const {
@@ -499,8 +499,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
499
499
  reactData.tZindex = (0, _utils.nextZIndex)();
500
500
  }
501
501
  }
502
- return (0, _vue.nextTick)().then(() => gridExtendTableMethods.recalculate(true)).then(() => {
503
- setTimeout(() => gridExtendTableMethods.recalculate(true), 15);
502
+ return (0, _vue.nextTick)().then(() => $xeGrid.recalculate(true)).then(() => {
503
+ setTimeout(() => $xeGrid.recalculate(true), 15);
504
504
  return reactData.isZMax;
505
505
  });
506
506
  };
@@ -663,12 +663,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
663
663
  * 渲染表格顶部区域
664
664
  */
665
665
  const renderTop = () => {
666
- if (slots.top) {
666
+ const topSlot = slots.top;
667
+ if (topSlot) {
667
668
  return (0, _vue.h)('div', {
668
669
  ref: refTopWrapper,
669
670
  key: 'top',
670
671
  class: 'vxe-grid--top-wrapper'
671
- }, slots.top({
672
+ }, topSlot({
672
673
  $grid: $xeGrid
673
674
  }));
674
675
  }
@@ -838,6 +839,36 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
838
839
  const type = _xeUtils.default.camelCase(`on-${name}`);
839
840
  tableCompEvents[type] = (...args) => emit(name, ...args);
840
841
  });
842
+ const getDefaultFormData = () => {
843
+ const formOpts = computeFormOpts.value;
844
+ if (formOpts.items) {
845
+ const fData = {};
846
+ formOpts.items.forEach(item => {
847
+ const {
848
+ field,
849
+ itemRender
850
+ } = item;
851
+ if (field) {
852
+ let itemValue = null;
853
+ if (itemRender) {
854
+ const {
855
+ defaultValue
856
+ } = itemRender;
857
+ if (_xeUtils.default.isFunction(defaultValue)) {
858
+ itemValue = defaultValue({
859
+ item
860
+ });
861
+ } else if (!_xeUtils.default.isUndefined(defaultValue)) {
862
+ itemValue = defaultValue;
863
+ }
864
+ }
865
+ fData[field] = itemValue;
866
+ }
867
+ });
868
+ return fData;
869
+ }
870
+ return {};
871
+ };
841
872
  const initProxy = () => {
842
873
  const {
843
874
  proxyConfig,
@@ -850,38 +881,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
850
881
  const formOpts = computeFormOpts.value;
851
882
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
852
883
  if (formConfig && (0, _utils.isEnableConf)(formOpts) && proxyOpts.form && formOpts.items) {
853
- const fData = {};
854
- formOpts.items.forEach(item => {
855
- const {
856
- field,
857
- itemRender
858
- } = item;
859
- if (field) {
860
- let itemValue = null;
861
- if (itemRender) {
862
- const {
863
- defaultValue
864
- } = itemRender;
865
- if (_xeUtils.default.isFunction(defaultValue)) {
866
- itemValue = defaultValue({
867
- item
868
- });
869
- } else if (!_xeUtils.default.isUndefined(defaultValue)) {
870
- itemValue = defaultValue;
871
- }
872
- }
873
- fData[field] = itemValue;
874
- }
875
- });
876
- reactData.formData = fData;
884
+ reactData.formData = getDefaultFormData();
877
885
  }
878
886
  if (!proxyInited) {
879
887
  reactData.proxyInited = true;
880
888
  if (proxyOpts.autoLoad !== false) {
881
- (0, _vue.nextTick)().then(() => gridMethods.commitProxy('_init')).then(rest => {
889
+ (0, _vue.nextTick)().then(() => gridMethods.commitProxy('initial')).then(rest => {
882
890
  gridMethods.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
883
891
  isInited: true
884
- }), new Event('init'));
892
+ }), new Event('initial'));
885
893
  });
886
894
  }
887
895
  }
@@ -891,7 +899,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
891
899
  const zoomOpts = computeZoomOpts.value;
892
900
  const isEsc = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ESCAPE);
893
901
  if (isEsc && reactData.isZMax && zoomOpts.escRestore !== false) {
894
- gridPrivateMethods.triggerZoomEvent(evnt);
902
+ $xeGrid.triggerZoomEvent(evnt);
895
903
  }
896
904
  };
897
905
  const dispatchEvent = (type, params, evnt) => {
@@ -910,6 +918,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
910
918
  */
911
919
  commitProxy(proxyTarget, ...args) {
912
920
  const {
921
+ proxyConfig,
913
922
  toolbarConfig,
914
923
  pagerConfig,
915
924
  editRules,
@@ -934,7 +943,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
934
943
  } = proxyOpts;
935
944
  const resConfigs = proxyOpts.response || proxyOpts.props || {};
936
945
  const $xeTable = refTable.value;
937
- const formData = getFormData();
946
+ let formData = getFormData();
938
947
  let button = null;
939
948
  let code = null;
940
949
  if (_xeUtils.default.isString(proxyTarget)) {
@@ -957,12 +966,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
957
966
  case 'insert_edit':
958
967
  return $xeTable.insert({}).then(({
959
968
  row
960
- }) => $xeTable.setEditRow(row, true));
969
+ }) => $xeTable.setEditRow(row));
961
970
  // 已废弃
962
971
  case 'insert_actived':
963
972
  return $xeTable.insert({}).then(({
964
973
  row
965
- }) => $xeTable.setEditRow(row, true));
974
+ }) => $xeTable.setEditRow(row));
966
975
  // 已废弃
967
976
  case 'mark_cancel':
968
977
  triggerPendingEvent(code);
@@ -983,7 +992,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
983
992
  break;
984
993
  case 'reset_custom':
985
994
  return $xeTable.resetCustom(true);
986
- case '_init':
995
+ case 'initial':
987
996
  case 'reload':
988
997
  case 'query':
989
998
  {
@@ -991,7 +1000,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
991
1000
  const querySuccessMethods = ajax.querySuccess;
992
1001
  const queryErrorMethods = ajax.queryError;
993
1002
  if (ajaxMethods) {
994
- const isInited = code === '_init';
1003
+ const isInited = code === 'initial';
995
1004
  const isReload = code === 'reload';
996
1005
  if (!isInited && reactData.tableLoading) {
997
1006
  return (0, _vue.nextTick)();
@@ -1001,6 +1010,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1001
1010
  let pageParams = {};
1002
1011
  if (pagerConfig) {
1003
1012
  if (isInited || isReload) {
1013
+ // 重置分页
1004
1014
  tablePage.currentPage = 1;
1005
1015
  }
1006
1016
  if ((0, _utils.isEnableConf)(pagerOpts)) {
@@ -1008,28 +1018,51 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1008
1018
  }
1009
1019
  }
1010
1020
  if (isInited) {
1011
- let defaultSort = null;
1021
+ // 重置代理表单数据
1022
+ if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts) && proxyOpts.form) {
1023
+ formData = getDefaultFormData();
1024
+ reactData.formData = formData;
1025
+ }
1012
1026
  if ($xeTable) {
1027
+ const {
1028
+ internalData: tableInternalData
1029
+ } = $xeTable;
1030
+ const {
1031
+ tableFullColumn,
1032
+ fullColumnFieldData
1033
+ } = tableInternalData;
1013
1034
  const {
1014
1035
  computeSortOpts
1015
1036
  } = $xeTable.getComputeMaps();
1016
1037
  const sortOpts = computeSortOpts.value;
1017
- defaultSort = sortOpts.defaultSort;
1018
- }
1019
- // 如果使用默认排序
1020
- if (defaultSort) {
1021
- if (!_xeUtils.default.isArray(defaultSort)) {
1022
- defaultSort = [defaultSort];
1023
- }
1024
- sortList = defaultSort.map(item => {
1025
- return {
1026
- field: item.field,
1027
- property: item.field,
1028
- order: item.order
1029
- };
1038
+ let defaultSort = sortOpts.defaultSort;
1039
+ tableFullColumn.forEach(column => {
1040
+ column.order = null;
1030
1041
  });
1031
- }
1032
- if ($xeTable) {
1042
+ // 如果使用默认排序
1043
+ if (defaultSort) {
1044
+ if (!_xeUtils.default.isArray(defaultSort)) {
1045
+ defaultSort = [defaultSort];
1046
+ }
1047
+ sortList = defaultSort.map(item => {
1048
+ const {
1049
+ field,
1050
+ order
1051
+ } = item;
1052
+ const colRest = fullColumnFieldData[field];
1053
+ if (colRest) {
1054
+ const column = colRest.column;
1055
+ if (column) {
1056
+ column.order = order;
1057
+ }
1058
+ }
1059
+ return {
1060
+ field,
1061
+ property: field,
1062
+ order
1063
+ };
1064
+ });
1065
+ }
1033
1066
  filterList = $xeTable.getCheckedFilters();
1034
1067
  }
1035
1068
  } else {
@@ -1445,31 +1478,31 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1445
1478
  const {
1446
1479
  code
1447
1480
  } = params;
1448
- return gridMethods.commitProxy(params, evnt).then(rest => {
1481
+ return $xeGrid.commitProxy(params, evnt).then(rest => {
1449
1482
  if (code && rest && rest.status && ['query', 'reload', 'delete', 'save'].includes(code)) {
1450
- gridMethods.dispatchEvent(code === 'delete' || code === 'save' ? `proxy-${code}` : 'proxy-query', Object.assign(Object.assign({}, rest), {
1483
+ $xeGrid.dispatchEvent(code === 'delete' || code === 'save' ? `proxy-${code}` : 'proxy-query', Object.assign(Object.assign({}, rest), {
1451
1484
  isReload: code === 'reload'
1452
1485
  }), evnt);
1453
1486
  }
1454
1487
  });
1455
1488
  },
1456
1489
  triggerToolbarBtnEvent(button, evnt) {
1457
- gridPrivateMethods.triggerToolbarCommitEvent(button, evnt);
1458
- gridMethods.dispatchEvent('toolbar-button-click', {
1490
+ $xeGrid.triggerToolbarCommitEvent(button, evnt);
1491
+ $xeGrid.dispatchEvent('toolbar-button-click', {
1459
1492
  code: button.code,
1460
1493
  button
1461
1494
  }, evnt);
1462
1495
  },
1463
1496
  triggerToolbarTolEvent(tool, evnt) {
1464
- gridPrivateMethods.triggerToolbarCommitEvent(tool, evnt);
1465
- gridMethods.dispatchEvent('toolbar-tool-click', {
1497
+ $xeGrid.triggerToolbarCommitEvent(tool, evnt);
1498
+ $xeGrid.dispatchEvent('toolbar-tool-click', {
1466
1499
  code: tool.code,
1467
1500
  tool
1468
1501
  }, evnt);
1469
1502
  },
1470
1503
  triggerZoomEvent(evnt) {
1471
- gridMethods.zoom();
1472
- gridMethods.dispatchEvent('zoom', {
1504
+ $xeGrid.zoom();
1505
+ $xeGrid.dispatchEvent('zoom', {
1473
1506
  type: reactData.isZMax ? 'max' : 'revert'
1474
1507
  }, evnt);
1475
1508
  }
@@ -1541,6 +1574,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1541
1574
  const {
1542
1575
  columns
1543
1576
  } = props;
1577
+ const proxyOpts = computeProxyOpts.value;
1544
1578
  if (props.formConfig) {
1545
1579
  if (!VxeUIFormComponent) {
1546
1580
  (0, _log.errLog)('vxe.error.reqComp', ['vxe-form']);
@@ -1552,14 +1586,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1552
1586
  }
1553
1587
  }
1554
1588
  // const { data, columns, proxyConfig } = props
1555
- // const proxyOpts = computeProxyOpts.value
1556
1589
  // const formOpts = computeFormOpts.value
1557
1590
  // if (isEnableConf(proxyConfig) && (data || (proxyOpts.form && formOpts.data))) {
1558
1591
  // errLog('vxe.error.errConflicts', ['grid.data', 'grid.proxy-config'])
1559
1592
  // }
1560
- // if (proxyOpts.props) {
1561
- // warnLog('vxe.error.delProp', ['proxy-config.props', 'proxy-config.response'])
1562
- // }
1593
+ if (proxyOpts.props) {
1594
+ (0, _log.warnLog)('vxe.error.delProp', ['proxy-config.props', 'proxy-config.response']);
1595
+ }
1563
1596
  if (columns && columns.length) {
1564
1597
  $xeGrid.loadColumn(columns);
1565
1598
  }
@@ -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","sort","setSort","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"];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(S,e){let t,{slots:u,emit:r}=e;var E=_xeUtils.default.uniqueId();let l=_ui.VxeUI.getComponent("VxeForm"),i=_ui.VxeUI.getComponent("VxePager"),w=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],O=useFns.useSize(S).computeSize,T=(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}}),s=(0,_vue.ref)(),j=(0,_vue.ref)(),n=(0,_vue.ref)(),d=(0,_vue.ref)(),g=(0,_vue.ref)(),c=(0,_vue.ref)(),m=(0,_vue.ref)(),v=(0,_vue.ref)(),p=(0,_vue.ref)(),f=(0,_vue.ref)();var o=e=>{let t={};return e.forEach(o=>{t[o]=(...e)=>{var t=j.value;if(t&&t[o])return t[o](...e)}}),t};let D=o(tableComponentMethodKeys),q=(tableComponentMethodKeys.forEach(o=>{D[o]=(...e)=>{var t=j.value;if(t&&t[o])return t&&t[o](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),S.proxyConfig))),A=(0,_vue.computed)(()=>{var e=q.value;return _xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg}),M=(0,_vue.computed)(()=>q.value.showActiveMsg),F=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,S.pagerConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,S.formConfig)),L=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,S.toolbarConfig)),a=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,S.zoomConfig)),I=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=S,{isZMax:o,tZindex:r}=T,a={};return o?a.zIndex=r:(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}),P=(0,_vue.computed)(()=>{let t={},o=S;return tableComponentPropKeys.forEach(e=>{t[e]=o[e]}),t}),k=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,loading:o,editConfig:r,proxyConfig:a}=S,{isZMax:i,tableLoading:l,tablePage:n}=T,s=P.value,u=q.value,d=F.value,g=Object.assign({},s);return i&&(s.maxHeight?g.maxHeight="100%":g.height="100%"),a&&(0,_utils.isEnableConf)(u)&&(g.loading=o||l,t)&&u.seq&&(0,_utils.isEnableConf)(d)&&(g.seqConfig=Object.assign({},e,{startIndex:(n.currentPage-1)*n.pageSize})),r&&(g.editConfig=Object.assign({},r)),g}),U=(0,_vue.computed)(()=>{var e=S.layouts;let t=[],o=[],r=[],a=[];return(t=e&&e.length?e:getConfig().grid.layouts||w).length&&(_xeUtils.default.isArray(t[0])?(o=t[0],r=t[1]||[],a=t[2]||[]):r=t),{headKeys:o,bodyKeys:r,footKeys:a}});var Z=(0,_vue.computed)(()=>F.value.currentPage),K=(0,_vue.computed)(()=>F.value.pageSize),H=(0,_vue.computed)(()=>F.value.total);let G={refElem:s,refTable:j,refForm:n,refToolbar:d,refPager:g},N={computeProxyOpts:q,computePagerOpts:F,computeFormOpts:x,computeToolbarOpts:L,computeZoomOpts:a},V={xID:E,props:S,context:e,reactData:T,getRefMaps:()=>G,getComputeMaps:()=>N},b=()=>{var e=L.value;S.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=j.value,t=d.value;e&&t&&e.connect(t)})},B=()=>{var e=S.proxyConfig,t=T.formData,o=q.value,r=x.value;return e&&(0,_utils.isEnableConf)(o)&&o.form?t:r.data},_=e=>{var t=T.tablePage,o=S.pagerConfig,r=F.value;o&&(0,_utils.isEnableConf)(r)&&(e?r[e]&&(t[e]=_xeUtils.default.toNumber(r[e])):({currentPage:o,pageSize:e,total:r}=r,o&&(t.currentPage=o),e&&(t.pageSize=e),r&&(t.pageSize=r)))},z=(e,t)=>{var o=q.value,o=(o.response||o.props||{}).message;let r;return(r=e&&o?_xeUtils.default.isFunction(o)?o({data:e,$grid:V}):_xeUtils.default.get(e,o):r)||getI18n(t)},Q=(e,t,o)=>{var r=M.value,a=D.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()},W=e=>{var t=S.proxyConfig,o=T.tablePage;let{$event:r,currentPage:a,pageSize:i}=e;var l=q.value;o.currentPage=a,o.pageSize=i,V.dispatchEvent("page-change",e,r),t&&(0,_utils.isEnableConf)(l)&&V.commitProxy("query").then(e=>{V.dispatchEvent("proxy-query",e,r)})},Y=t=>{var e=j.value,o=S.proxyConfig,e=e.getComputeMaps().computeSortOpts,r=q.value;e.value.remote&&(T.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(r)&&(T.tablePage.currentPage=1,$.commitProxy("query").then(e=>{$.dispatchEvent("proxy-query",e,t.$event)})),$.dispatchEvent("sort-change",t,t.$event)},J=t=>{var e=j.value,o=S.proxyConfig,e=e.getComputeMaps().computeFilterOpts,r=q.value;e.value.remote&&(T.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(r)&&(T.tablePage.currentPage=1,$.commitProxy("query").then(e=>{$.dispatchEvent("proxy-query",e,t.$event)})),$.dispatchEvent("filter-change",t,t.$event)},X=t=>{var e=S.proxyConfig,o=q.value;T.tableLoading||(e&&(0,_utils.isEnableConf)(o)&&$.commitProxy("reload").then(e=>{$.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),$.dispatchEvent("form-submit",t,t.$event))},ee=e=>{var t=S.proxyConfig;let o=e.$event;var r=q.value,a=j.value;t&&(0,_utils.isEnableConf)(r)&&(a.clearScroll(),$.commitProxy("reload").then(e=>{$.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)})),$.dispatchEvent("form-reset",e,o)},te=e=>{$.dispatchEvent("form-submit-invalid",e,e.$event)},oe=e=>{var t=e.$event;$.dispatchEvent("form-toggle-collapse",e,t),$.dispatchEvent("form-collapse",e,t)},re=e=>{var t=T.isZMax;return(e?!t:t)&&(T.isZMax=!t,T.tZindex<(0,_utils.getLastZIndex)())&&(T.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>D.recalculate(!0)).then(()=>(setTimeout(()=>D.recalculate(!0),15),T.isZMax))},h=(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},ae=e=>{let o={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?u[e]?o[t]=u[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):o[t]=e)}),o},ie=()=>{var{formConfig:e,proxyConfig:o}=S,r=T.formData,a=q.value,i=x.value;if(e&&(0,_utils.isEnableConf)(i)||u.form){let e=[];if(u.form)e=u.form({$grid:V});else if(i.items){let t={};if(!i.inited){i.inited=!0;let t=a.beforeItem;a&&t&&i.items.forEach(e=>{t({$grid:V,item:e})})}i.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]&&(t[e]=u[e])})}),l&&e.push((0,_vue.h)(l,Object.assign(Object.assign({ref:n},Object.assign({},i,{data:o&&(0,_utils.isEnableConf)(a)&&a.form?r:i.data})),{onSubmit:X,onReset:ee,onSubmitInvalid:te,onCollapse:oe}),t))}return(0,_vue.h)("div",{ref:c,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(V)},le=()=>{var t,o,r,a,i,l,n=S.toolbarConfig,s=L.value;if(n&&(0,_utils.isEnableConf)(s)||u.toolbar){let e=[];return u.toolbar?e=u.toolbar({$grid:V}):(n={},(l=s.slots)&&(t=h(l,"buttons"),o=h(l,"buttonPrefix"),r=h(l,"buttonSuffix"),a=h(l,"tools"),i=h(l,"toolPrefix"),l=h(l,"toolSuffix"),t&&(n.buttons=t),o&&(n.buttonPrefix=o),r&&(n.buttonSuffix=r),a&&(n.tools=a),i&&(n.toolPrefix=i),l)&&(n.toolSuffix=l),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:d},s),{slots:void 0}),n))),(0,_vue.h)("div",{ref:m,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(V)},ne=()=>u.top?(0,_vue.h)("div",{ref:v,key:"top",class:"vxe-grid--top-wrapper"},u.top({$grid:V})):renderEmptyElement(V),se=()=>{var e=u.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:V})):renderEmptyElement(V)},ue=()=>{var e=u.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:V})):renderEmptyElement(V)},de=()=>{var e=S.proxyConfig,t=k.value,o=q.value,r=Object.assign({},me),a=u.empty,i=u.loading,l=u.rowDragIcon||u["row-drag-icon"],n=u.columnDragIcon||u["column-drag-icon"],e=(e&&(0,_utils.isEnableConf)(o)&&(o.sort&&(r.onSortChange=Y),o.filter)&&(r.onFilterChange=J),{});return a&&(e.empty=a),i&&(e.loading=i),l&&(e.rowDragIcon=l),n&&(e.columnDragIcon=n),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:j},t),r),e)])},ge=()=>u.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},u.bottom({$grid:V})):renderEmptyElement(V),ce=()=>{var{proxyConfig:e,pagerConfig:t}=S,o=q.value,r=F.value,a=u.pager;return t&&(0,_utils.isEnableConf)(r)||u.pager?(0,_vue.h)("div",{ref:f,key:"pager",class:"vxe-grid--pager-wrapper"},a?a({$grid:V}):[i?(0,_vue.h)(i,Object.assign(Object.assign(Object.assign({ref:g},r),e&&(0,_utils.isEnableConf)(o)?T.tablePage:{}),{onPageChange:W}),ae(r.slots)):renderEmptyElement(V)]):renderEmptyElement(V)},C=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(ie());break;case"Toolbar":t.push(le());break;case"Top":t.push(ne());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[se(),de(),ue()]));break;case"Bottom":t.push(ge());break;case"Pager":t.push(ce());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},me={},ve=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);me[e]=(...e)=>r(t,...e)}),()=>{var{proxyConfig:e,formConfig:t}=S,o=T.proxyInited,r=q.value,i=x.value;if(e&&(0,_utils.isEnableConf)(r)){if(t&&(0,_utils.isEnableConf)(i)&&r.form&&i.items){let a={};i.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)),a[o]=e}}),T.formData=a}o||!(T.proxyInited=!0)!==r.autoLoad&&(0,_vue.nextTick)().then(()=>$.commitProxy("_init")).then(e=>{$.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("init"))})}}),pe=e=>{var t=a.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&T.isZMax&&!1!==t.escRestore&&y.triggerZoomEvent(e)};let $={dispatchEvent:(e,t,o)=>{r(e,createEvent(o,{$grid:V},t))},getEl(){return s.value},commitProxy(t,...d){let{toolbarConfig:e,pagerConfig:l,editRules:g,validConfig:c}=S,n=T.tablePage,m=M.value,v=A.value;var o=q.value;let s=F.value;var r=L.value;let{beforeQuery:u,afterQuery:p,beforeDelete:f,afterDelete:x,beforeSave:b,afterSave:_,ajax:h={}}=o,C=o.response||o.props||{},y=j.value;var R=B();let E=null,w=null;w=_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,E=r?r.item:null,t):(E=t).code;var a=E?E.params:null;switch(w){case"insert":return y.insert({});case"insert_edit":return y.insert({}).then(({row:e})=>y.setEditRow(e,!0));case"insert_actived":return y.insert({}).then(({row:e})=>y.setEditRow(e,!0));case"mark_cancel":I=w,k=M.value,O=j.value,(P=O.getCheckboxRecords()).length?(O.togglePendingRow(P),D.clearCheckboxRow()):k&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:I,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Q(w,"vxe.grid.removeSelectRecord",()=>y.removeCheckboxRow());case"import":y.importData(a);break;case"open_import":y.openImport(a);break;case"export":y.exportData(a);break;case"open_export":y.openExport(a);break;case"reset_custom":return y.resetCustom(!0);case"_init":case"reload":case"query":{var O=h.query;let i=h.querySuccess,r=h.queryError;if(O){var I,P="_init"===w,k="reload"===w;if(!P&&T.tableLoading)return(0,_vue.nextTick)();let t=[],o=[],e={};if(l&&((P||k)&&(n.currentPage=1),(0,_utils.isEnableConf)(s))&&(e=Object.assign({},n)),P){let e=null;y&&(I=y.getComputeMaps().computeSortOpts,U=I.value,e=U.defaultSort),e&&(_xeUtils.default.isArray(e)||(e=[e]),t=e.map(e=>({field:e.field,property:e.field,order:e.order}))),y&&(o=y.getCheckedFilters())}else y&&(k?y.clearAll():(t=y.getSortColumns(),o=y.getCheckedFilters()));let a={code:w,button:E,isInited:P,isReload:k,$grid:V,page:e,sort:t.length?t[0]:{},sorts:t,filters:o,form:R,options:O};return T.sortData=t,T.filterData=o,T.tableLoading=!0,Promise.resolve((u||O)(a,...d)).then(e=>{let t=[];var o,r;return T.tableLoading=!1,e&&(l&&(0,_utils.isEnableConf)(s)?(r=C.total,r=(_xeUtils.default.isFunction(r)?r({data:e,$grid:V}):_xeUtils.default.get(e,r||"page.total"))||0,n.total=_xeUtils.default.toNumber(r),o=C.result,t=(_xeUtils.default.isFunction(o)?o({data:e,$grid:V}):_xeUtils.default.get(e,o||"result"))||[],o=Math.max(Math.ceil(r/n.pageSize),1),n.currentPage>o&&(n.currentPage=o)):(r=C.list,t=(r?_xeUtils.default.isFunction(r)?r({data:e,$grid:V}):_xeUtils.default.get(e,r):e)||[])),y?y.loadData(t):(0,_vue.nextTick)(()=>{y&&y.loadData(t)}),p&&p(a,...d),i&&i(Object.assign(Object.assign({},a),{response:e})),{status:!0}}).catch(e=>(T.tableLoading=!1,r&&r(Object.assign(Object.assign({},a),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{let r=h.delete,a=h.deleteSuccess,i=h.deleteError;if(r){let e=D.getCheckboxRecords(),t=e.filter(e=>!y.isInsertByRow(e));var U={removeRecords:t};let o={$grid:V,code:w,button:E,body:U,form:R,options:r};if(e.length)return Q(w,"vxe.grid.deleteSelectRecord",()=>t.length?(T.tableLoading=!0,Promise.resolve((f||r)(o,...d)).then(e=>(T.tableLoading=!1,y.setPendingRow(t,!1),v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:z(e,"vxe.grid.delSuccess"),status:"success"}),x?x(o,...d):$.commitProxy("query"),a&&a(Object.assign(Object.assign({},o),{response:e})),{status:!0})).catch(e=>(T.tableLoading=!1,v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:w,content:z(e,"vxe.grid.operError"),status:"error"}),i&&i(Object.assign(Object.assign({},o),{response:e})),{status:!1}))):y.remove(e));m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:w,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let n=h.save,s=h.saveSuccess,u=h.saveError;if(n){let t=y.getRecordset(),{insertRecords:o,removeRecords:r,updateRecords:a,pendingRecords:i}=t,l={$grid:V,code:w,button:E,body:t,form:R,options:n},e=(o.length&&(t.pendingRecords=i.filter(e=>-1===y.findRowIndexOf(o,e))),i.length&&(t.insertRecords=o.filter(e=>-1===y.findRowIndexOf(i,e))),Promise.resolve());return(e=g?y[c&&"full"===c.msgMode?"fullValidate":"validate"](t.insertRecords.concat(a)):e).then(e=>{if(!e)return t.insertRecords.length||r.length||a.length||t.pendingRecords.length?(T.tableLoading=!0,Promise.resolve((b||n)(l,...d)).then(e=>(T.tableLoading=!1,y.clearPendingRow(),v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:z(e,"vxe.grid.saveSuccess"),status:"success"}),_?_(l,...d):$.commitProxy("query"),s&&s(Object.assign(Object.assign({},l),{response:e})),{status:!0})).catch(e=>(T.tableLoading=!1,v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:w,content:z(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},l),{response:e})),{status:!1}))):void(m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:w,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var U=commands.get(w);U&&((U=U.tableCommandMethod||U.commandMethod)?U({code:w,button:E,$grid:V,$table:y},...d):(0,_log.errLog)("vxe.error.notCommands",[w]))}return(0,_vue.nextTick)()},zoom(){return T.isZMax?$.revert():$.maximize()},isMaximized(){return T.isZMax},maximize(){return re(!0)},revert(){return re()},getFormData:B,getFormItems(e){var t=x.value,o=S.formConfig,r=t.items;let 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=j.value;return S.proxyConfig?(e=T.sortData,{data:t?t.getFullData():[],filter:T.filterData,form:B(),sort:e.length?e[0]:{},sorts:e,pager:T.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},y={extendTableMethods:o,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,o,r,a,i,l=T.isZMax,n=s.value;return n?(e=c.value,t=m.value,o=v.value,r=p.value,a=f.value,i=n.parentElement,(!l&&i?(0,_dom.getPaddingTopBottomSize)(i):0)+(0,_dom.getPaddingTopBottomSize)(n)+(0,_dom.getOffsetHeight)(e)+(0,_dom.getOffsetHeight)(t)+(0,_dom.getOffsetHeight)(o)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(a)):0},getParentHeight(){var e=s.value;return e?(e=e.parentElement,(T.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-y.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let o=e.code;return $.commitProxy(e,t).then(e=>{o&&e&&e.status&&["query","reload","delete","save"].includes(o)&&$.dispatchEvent("delete"===o||"save"===o?"proxy-"+o:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===o}),t)})},triggerToolbarBtnEvent(e,t){y.triggerToolbarCommitEvent(e,t),$.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){y.triggerToolbarCommitEvent(e,t),$.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){$.zoom(),$.dispatchEvent("zoom",{type:T.isZMax?"max":"revert"},e)}},R=(Object.assign(V,D,$,y,{loadColumn(e){var t=j.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)}}),(0,_vue.ref)(0));(0,_vue.watch)(()=>S.columns?S.columns.length:-1,()=>{R.value++}),(0,_vue.watch)(()=>S.columns,()=>{R.value++}),(0,_vue.watch)(R,()=>{(0,_vue.nextTick)(()=>V.loadColumn(S.columns||[]))}),(0,_vue.watch)(()=>S.toolbarConfig,()=>{b()}),(0,_vue.watch)(Z,()=>{_("currentPage")}),(0,_vue.watch)(K,()=>{_("pageSize")}),(0,_vue.watch)(H,()=>{_("total")}),(0,_vue.watch)(()=>S.proxyConfig,()=>{ve()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(V))&&_xeUtils.default.isObject(e)&&Object.assign(V,e)}),_(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=S.columns;S.formConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),S.pagerConfig&&!i&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),e&&e.length&&V.loadColumn(e),b(),ve()}),globalEvents.on(V,"keydown",pe)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(V,"keydown")});return V.renderVN=()=>{var e=O.value,t=I.value;return(0,_vue.h)("div",{ref:s,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!S.animat,"is--round":S.round,"is--maximize":T.isZMax,"is--loading":S.loading||T.tableLoading}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:o}=U.value,r=u.asideLeft||u["aside-left"],a=u.asideRight||u["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},C(e)),(0,_vue.h)("div",{class:"vxe-grid--layout-body-wrapper"},[r?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-left-wrapper"},r({})):renderEmptyElement(V),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},C(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"},C(o))]})())},(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"),_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","sort","setSort","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"];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 i=_ui.VxeUI.getComponent("VxeForm"),l=_ui.VxeUI.getComponent("VxePager"),E=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],w=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}}),s=(0,_vue.ref)(),D=(0,_vue.ref)(),n=(0,_vue.ref)(),d=(0,_vue.ref)(),g=(0,_vue.ref)(),c=(0,_vue.ref)(),m=(0,_vue.ref)(),v=(0,_vue.ref)(),p=(0,_vue.ref)(),f=(0,_vue.ref)();var r=e=>{let t={};return e.forEach(r=>{t[r]=(...e)=>{var t=D.value;if(t&&t[r])return t[r](...e)}}),t};let q=r(tableComponentMethodKeys),M=(tableComponentMethodKeys.forEach(r=>{q[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))),K=(0,_vue.computed)(()=>{var e=M.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),F=(0,_vue.computed)(()=>!!M.value.showActiveMsg),L=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,T.pagerConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,T.formConfig)),V=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,T.toolbarConfig)),a=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,T.zoomConfig)),O=(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}),P=(0,_vue.computed)(()=>{let t={},r=T;return tableComponentPropKeys.forEach(e=>{t[e]=r[e]}),t}),I=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,loading:r,editConfig:o,proxyConfig:a}=T,{isZMax:l,tableLoading:i,tablePage:n}=j,s=P.value,u=M.value,d=L.value,g=Object.assign({},s);return l&&(s.maxHeight?g.maxHeight="100%":g.height="100%"),a&&(0,_utils.isEnableConf)(u)&&(g.loading=r||i,t)&&u.seq&&(0,_utils.isEnableConf)(d)&&(g.seqConfig=Object.assign({},e,{startIndex:(n.currentPage-1)*n.pageSize})),o&&(g.editConfig=Object.assign({},o)),g}),k=(0,_vue.computed)(()=>{var e=T.layouts;let t=[],r=[],o=[],a=[];return(t=e&&e.length?e:getConfig().grid.layouts||E).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],o=t[1]||[],a=t[2]||[]):o=t),{headKeys:r,bodyKeys:o,footKeys:a}});var U=(0,_vue.computed)(()=>L.value.currentPage),S=(0,_vue.computed)(()=>L.value.pageSize),H=(0,_vue.computed)(()=>L.value.total);let G={refElem:s,refTable:D,refForm:n,refToolbar:d,refPager:g},N={computeProxyOpts:M,computePagerOpts:L,computeFormOpts:x,computeToolbarOpts:V,computeZoomOpts:a},B={xID:R,props:T,context:e,reactData:j,getRefMaps:()=>G,getComputeMaps:()=>N},b=()=>{var e=V.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=M.value,o=x.value;return e&&(0,_utils.isEnableConf)(r)&&r.form?t:o.data},_=e=>{var t=j.tablePage,r=T.pagerConfig,o=L.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.pageSize=o)))},$=(e,t)=>{var r=M.value,r=(r.response||r.props||{}).message;let o;return(o=e&&r?_xeUtils.default.isFunction(r)?r({data:e,$grid:B}):_xeUtils.default.get(e,r):o)||getI18n(t)},A=(e,t,r)=>{var o=F.value,a=q.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()},Q=e=>{var t=T.proxyConfig,r=j.tablePage;let{$event:o,currentPage:a,pageSize:l}=e;var i=M.value;r.currentPage=a,r.pageSize=l,B.dispatchEvent("page-change",e,o),t&&(0,_utils.isEnableConf)(i)&&B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,o)})},W=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeSortOpts,o=M.value;e.value.remote&&(j.sortData=t.sortList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)})),B.dispatchEvent("sort-change",t,t.$event)},Y=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeFilterOpts,o=M.value;e.value.remote&&(j.filterData=t.filterList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)})),B.dispatchEvent("filter-change",t,t.$event)},J=t=>{var e=T.proxyConfig,r=M.value;j.tableLoading||(e&&(0,_utils.isEnableConf)(r)&&B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),B.dispatchEvent("form-submit",t,t.$event))},X=e=>{var t=D.value,r=T.proxyConfig;let o=e.$event;var a=M.value;r&&(0,_utils.isEnableConf)(a)&&(t.clearScroll(),B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)})),B.dispatchEvent("form-reset",e,o)},ee=e=>{B.dispatchEvent("form-submit-invalid",e,e.$event)},te=e=>{var t=e.$event;B.dispatchEvent("form-toggle-collapse",e,t),B.dispatchEvent("form-collapse",e,t)},re=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(()=>B.recalculate(!0)).then(()=>(setTimeout(()=>B.recalculate(!0),15),j.isZMax))},h=(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},oe=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},ae=()=>{var{formConfig:e,proxyConfig:r}=T,o=j.formData,a=M.value,l=x.value;if(e&&(0,_utils.isEnableConf)(l)||u.form){let e=[];if(u.form)e=u.form({$grid:B});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=a.beforeItem;a&&t&&l.items.forEach(e=>{t({$grid:B,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]&&(t[e]=u[e])})}),i&&e.push((0,_vue.h)(i,Object.assign(Object.assign({ref:n},Object.assign({},l,{data:r&&(0,_utils.isEnableConf)(a)&&a.form?o:l.data})),{onSubmit:J,onReset:X,onSubmitInvalid:ee,onCollapse:te}),t))}return(0,_vue.h)("div",{ref:c,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(B)},le=()=>{var t,r,o,a,l,i,n=T.toolbarConfig,s=V.value;if(n&&(0,_utils.isEnableConf)(s)||u.toolbar){let e=[];return u.toolbar?e=u.toolbar({$grid:B}):(n={},(i=s.slots)&&(t=h(i,"buttons"),r=h(i,"buttonPrefix"),o=h(i,"buttonSuffix"),a=h(i,"tools"),l=h(i,"toolPrefix"),i=h(i,"toolSuffix"),t&&(n.buttons=t),r&&(n.buttonPrefix=r),o&&(n.buttonSuffix=o),a&&(n.tools=a),l&&(n.toolPrefix=l),i)&&(n.toolSuffix=i),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:d},s),{slots:void 0}),n))),(0,_vue.h)("div",{ref:m,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(B)},ie=()=>{var e=u.top;return e?(0,_vue.h)("div",{ref:v,key:"top",class:"vxe-grid--top-wrapper"},e({$grid:B})):renderEmptyElement(B)},ne=()=>{var e=u.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:B})):renderEmptyElement(B)},se=()=>{var e=u.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:B})):renderEmptyElement(B)},ue=()=>{var e=T.proxyConfig,t=I.value,r=M.value,o=Object.assign({},ce),a=u.empty,l=u.loading,i=u.rowDragIcon||u["row-drag-icon"],n=u.columnDragIcon||u["column-drag-icon"],e=(e&&(0,_utils.isEnableConf)(r)&&(r.sort&&(o.onSortChange=W),r.filter)&&(o.onFilterChange=Y),{});return a&&(e.empty=a),l&&(e.loading=l),i&&(e.rowDragIcon=i),n&&(e.columnDragIcon=n),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:D},t),o),e)])},de=()=>u.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},u.bottom({$grid:B})):renderEmptyElement(B),ge=()=>{var{proxyConfig:e,pagerConfig:t}=T,r=M.value,o=L.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:B}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:g},o),e&&(0,_utils.isEnableConf)(r)?j.tablePage:{}),{onPageChange:Q}),oe(o.slots)):renderEmptyElement(B)]):renderEmptyElement(B)},C=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(ae());break;case"Toolbar":t.push(le());break;case"Top":t.push(ie());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[ne(),ue(),se()]));break;case"Bottom":t.push(de());break;case"Pager":t.push(ge());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},ce={},me=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);ce[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{}}),ve=()=>{var{proxyConfig:e,formConfig:t}=T,r=j.proxyInited,o=M.value,a=x.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(a)&&o.form&&a.items&&(j.formData=me()),r||!(j.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>Z.commitProxy("initial")).then(e=>{Z.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},pe=e=>{var t=a.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&j.isZMax&&!1!==t.escRestore&&B.triggerZoomEvent(e)};let Z={dispatchEvent:(e,t,r)=>{o(e,createEvent(r,{$grid:B},t))},getEl(){return s.value},commitProxy(t,...d){let{proxyConfig:o,toolbarConfig:e,pagerConfig:n,editRules:g,validConfig:c}=T,s=j.tablePage,m=F.value,v=K.value;var u=M.value;let p=L.value;var r,a=V.value;let{beforeQuery:f,afterQuery:x,beforeDelete:i,afterDelete:b,beforeSave:_,afterSave:h,ajax:C={}}=u,y=u.response||u.props||{},R=D.value,E=z(),w=null,O=null;O=_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(O){case"insert":return R.insert({});case"insert_edit":return R.insert({}).then(({row:e})=>R.setEditRow(e));case"insert_actived":return R.insert({}).then(({row:e})=>R.setEditRow(e));case"mark_cancel":U=O,k=F.value,P=D.value,(I=P.getCheckboxRecords()).length?(P.togglePendingRow(I),q.clearCheckboxRow()):k&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:U,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return A(O,"vxe.grid.removeSelectRecord",()=>R.removeCheckboxRow());case"import":R.importData(l);break;case"open_import":R.openImport(l);break;case"export":R.exportData(l);break;case"open_export":R.openExport(l);break;case"reset_custom":return R.resetCustom(!0);case"initial":case"reload":case"query":{var P=C.query;let i=C.querySuccess,t=C.queryError;if(P){var I="initial"===O,k="reload"===O;if(!I&&j.tableLoading)return(0,_vue.nextTick)();let r=[],a=[],e={};if(n&&((I||k)&&(s.currentPage=1),(0,_utils.isEnableConf)(p))&&(e=Object.assign({},s)),I){if(o&&(0,_utils.isEnableConf)(u)&&u.form&&(E=me(),j.formData=E),R){var U=R.internalData;let{tableFullColumn:e,fullColumnFieldData:o}=U;var S=R.getComputeMaps().computeSortOpts;let t=S.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=R.getCheckedFilters()}}else R&&(k?R.clearAll():(r=R.getSortColumns(),a=R.getCheckedFilters()));let l={code:O,button:w,isInited:I,isReload:k,$grid:B,page:e,sort:r.length?r[0]:{},sorts:r,filters:a,form:E,options:P};return j.sortData=r,j.filterData=a,j.tableLoading=!0,Promise.resolve((f||P)(l,...d)).then(e=>{let t=[];var r,o;return j.tableLoading=!1,e&&(n&&(0,_utils.isEnableConf)(p)?(o=y.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:B}):_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:B}):_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:B}):_xeUtils.default.get(e,o):e)||[])),R?R.loadData(t):(0,_vue.nextTick)(()=>{R&&R.loadData(t)}),x&&x(l,...d),i&&i(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=q.getCheckboxRecords(),t=e.filter(e=>!R.isInsertByRow(e));S={removeRecords:t};let r={$grid:B,code:O,button:w,body:S,form:E,options:o};if(e.length)return A(O,"vxe.grid.deleteSelectRecord",()=>t.length?(j.tableLoading=!0,Promise.resolve((i||o)(r,...d)).then(e=>(j.tableLoading=!1,R.setPendingRow(t,!1),v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.delSuccess"),status:"success"}),b?b(r,...d):Z.commitProxy("query"),a&&a(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:$(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):R.remove(e));m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let n=C.save,s=C.saveSuccess,u=C.saveError;if(n){let t=R.getRecordset(),{insertRecords:r,removeRecords:o,updateRecords:a,pendingRecords:l}=t,i={$grid:B,code:O,button:w,body:t,form:E,options:n},e=(r.length&&(t.pendingRecords=l.filter(e=>-1===R.findRowIndexOf(r,e))),l.length&&(t.insertRecords=r.filter(e=>-1===R.findRowIndexOf(l,e))),Promise.resolve());return(e=g?R[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((_||n)(i,...d)).then(e=>(j.tableLoading=!1,R.clearPendingRow(),v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.saveSuccess"),status:"success"}),h?h(i,...d):Z.commitProxy("query"),s&&s(Object.assign(Object.assign({},i),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:$(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},i),{response:e})),{status:!1}))):void(m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var S=commands.get(O);S&&((S=S.tableCommandMethod||S.commandMethod)?S({code:O,button:w,$grid:B,$table:R},...d):(0,_log.errLog)("vxe.error.notCommands",[O]))}return(0,_vue.nextTick)()},zoom(){return j.isZMax?Z.revert():Z.maximize()},isMaximized(){return j.isZMax},maximize(){return re(!0)},revert(){return re()},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]},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}},fe={extendTableMethods:r,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,i=j.isZMax,n=s.value;return n?(e=c.value,t=m.value,r=v.value,o=p.value,a=f.value,l=n.parentElement,(!i&&l?(0,_dom.getPaddingTopBottomSize)(l):0)+(0,_dom.getPaddingTopBottomSize)(n)+(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)-fe.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let r=e.code;return B.commitProxy(e,t).then(e=>{r&&e&&e.status&&["query","reload","delete","save"].includes(r)&&B.dispatchEvent("delete"===r||"save"===r?"proxy-"+r:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===r}),t)})},triggerToolbarBtnEvent(e,t){B.triggerToolbarCommitEvent(e,t),B.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){B.triggerToolbarCommitEvent(e,t),B.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){B.zoom(),B.dispatchEvent("zoom",{type:j.isZMax?"max":"revert"},e)}},y=(Object.assign(B,q,Z,fe,{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 B.clearAll(),B.loadColumn(e)}}),(0,_vue.ref)(0));(0,_vue.watch)(()=>T.columns?T.columns.length:-1,()=>{y.value++}),(0,_vue.watch)(()=>T.columns,()=>{y.value++}),(0,_vue.watch)(y,()=>{(0,_vue.nextTick)(()=>B.loadColumn(T.columns||[]))}),(0,_vue.watch)(()=>T.toolbarConfig,()=>{b()}),(0,_vue.watch)(U,()=>{_("currentPage")}),(0,_vue.watch)(S,()=>{_("pageSize")}),(0,_vue.watch)(H,()=>{_("total")}),(0,_vue.watch)(()=>T.proxyConfig,()=>{ve()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(B))&&_xeUtils.default.isObject(e)&&Object.assign(B,e)}),_(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.columns,t=M.value;T.formConfig&&!i&&(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&&B.loadColumn(e),b(),ve()}),globalEvents.on(B,"keydown",pe)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(B,"keydown")});return B.renderVN=()=>{var e=w.value,t=O.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":T.loading||j.tableLoading}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:r}=k.value,o=u.asideLeft||u["aside-left"],a=u.asideRight||u["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},C(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(B),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},C(t)),a?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-right-wrapper"},a({})):renderEmptyElement(B)]),(0,_vue.h)("div",{class:"vxe-grid--layout-footer-wrapper"},C(r))]})())},(0,_vue.provide)("$xeGrid",B),B},render(){return this.renderVN()}});
@@ -17,5 +17,6 @@ Object.keys(VxeTableExport).forEach(function (key) {
17
17
  }
18
18
  });
19
19
  });
20
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
20
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
22
  var _default = exports.default = VxeTableExport;