vxe-table 4.17.1 → 4.17.2

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 (37) hide show
  1. package/es/style.css +1 -1
  2. package/es/table/module/custom/hook.js +2 -4
  3. package/es/table/module/custom/panel.js +3 -0
  4. package/es/table/module/menu/hook.js +7 -1
  5. package/es/table/src/cell.js +4 -5
  6. package/es/table/src/table.js +5 -4
  7. package/es/ui/index.js +1 -1
  8. package/es/ui/src/log.js +1 -1
  9. package/lib/index.umd.js +20 -15
  10. package/lib/index.umd.min.js +1 -1
  11. package/lib/style.css +1 -1
  12. package/lib/table/module/custom/hook.js +2 -4
  13. package/lib/table/module/custom/hook.min.js +1 -1
  14. package/lib/table/module/custom/panel.js +3 -0
  15. package/lib/table/module/custom/panel.min.js +1 -1
  16. package/lib/table/module/menu/hook.js +7 -1
  17. package/lib/table/module/menu/hook.min.js +1 -1
  18. package/lib/table/src/cell.js +5 -7
  19. package/lib/table/src/cell.min.js +1 -1
  20. package/lib/table/src/table.js +1 -1
  21. package/lib/table/src/table.min.js +1 -1
  22. package/lib/ui/index.js +1 -1
  23. package/lib/ui/index.min.js +1 -1
  24. package/lib/ui/src/log.js +1 -1
  25. package/lib/ui/src/log.min.js +1 -1
  26. package/package.json +1 -1
  27. package/packages/table/module/custom/hook.ts +2 -4
  28. package/packages/table/module/custom/panel.ts +3 -0
  29. package/packages/table/module/menu/hook.ts +8 -1
  30. package/packages/table/src/cell.ts +4 -5
  31. package/packages/table/src/table.ts +5 -4
  32. /package/es/{iconfont.1761181613193.ttf → iconfont.1761269928256.ttf} +0 -0
  33. /package/es/{iconfont.1761181613193.woff → iconfont.1761269928256.woff} +0 -0
  34. /package/es/{iconfont.1761181613193.woff2 → iconfont.1761269928256.woff2} +0 -0
  35. /package/lib/{iconfont.1761181613193.ttf → iconfont.1761269928256.ttf} +0 -0
  36. /package/lib/{iconfont.1761181613193.woff → iconfont.1761269928256.woff} +0 -0
  37. /package/lib/{iconfont.1761181613193.woff2 → iconfont.1761269928256.woff2} +0 -0
@@ -2,13 +2,12 @@ import { nextTick } from 'vue';
2
2
  import { VxeUI } from '../../../ui';
3
3
  import XEUtils from 'xe-utils';
4
4
  import { getColumnList } from '../../src/util';
5
- const tableCustomMethodKeys = ['openCustom', 'closeCustom', 'toggleCustom', 'saveCustom', 'cancelCustom', 'resetCustom', 'toggleCustomAllCheckbox', 'setCustomAllCheckbox'];
5
+ const tableCustomMethodKeys = ['openCustom', 'closeCustom', 'getCustomVisible', 'toggleCustom', 'saveCustom', 'cancelCustom', 'resetCustom', 'toggleCustomAllCheckbox', 'setCustomAllCheckbox'];
6
6
  VxeUI.hooks.add('tableCustomModule', {
7
7
  setupTable($xeTable) {
8
8
  const { reactData, internalData } = $xeTable;
9
9
  const { computeCustomOpts, computeRowGroupFields } = $xeTable.getComputeMaps();
10
10
  const { refElem } = $xeTable.getRefMaps();
11
- const $xeGrid = $xeTable.xeGrid;
12
11
  const $xeGantt = $xeTable.xeGantt;
13
12
  const calcMaxHeight = () => {
14
13
  const { customStore } = reactData;
@@ -279,8 +278,7 @@ VxeUI.hooks.add('tableCustomModule', {
279
278
  customStore.isIndeterminate = !customStore.isAll && collectColumn.some((column) => (!checkMethod || checkMethod({ $table: $xeTable, column })) && (column.renderVisible || column.halfVisible));
280
279
  };
281
280
  const emitCustomEvent = (type, evnt) => {
282
- const comp = $xeGrid || $xeGantt || $xeTable;
283
- comp.dispatchEvent('custom', { type }, evnt);
281
+ $xeTable.dispatchEvent('custom', { type }, evnt);
284
282
  };
285
283
  const customPrivateMethods = {
286
284
  checkCustomStatus,
@@ -73,6 +73,7 @@ export default defineVxeComponent({
73
73
  $xeTable.saveCustom();
74
74
  $xeTable.closeCustom();
75
75
  $xeTable.emitCustomEvent('confirm', $event);
76
+ $xeTable.emitCustomEvent('close', $event);
76
77
  };
77
78
  const cancelCloseEvent = ({ $event }) => {
78
79
  $xeTable.closeCustom();
@@ -82,11 +83,13 @@ export default defineVxeComponent({
82
83
  $xeTable.cancelCustom();
83
84
  $xeTable.closeCustom();
84
85
  $xeTable.emitCustomEvent('cancel', $event);
86
+ $xeTable.emitCustomEvent('close', $event);
85
87
  };
86
88
  const handleResetCustomEvent = (evnt) => {
87
89
  $xeTable.resetCustom(true);
88
90
  $xeTable.closeCustom();
89
91
  $xeTable.emitCustomEvent('reset', evnt);
92
+ $xeTable.emitCustomEvent('close', evnt);
90
93
  };
91
94
  const resetCustomEvent = ({ $event }) => {
92
95
  if (VxeUI.modal) {
@@ -10,6 +10,9 @@ hooks.add('tableMenuModule', {
10
10
  const { xID, props, reactData, internalData } = $xeTable;
11
11
  const { refElem, refTableFilter, refTableMenu } = $xeTable.getRefMaps();
12
12
  const { computeMouseOpts, computeIsContentMenu, computeMenuOpts } = $xeTable.getComputeMaps();
13
+ const $xeGrid = $xeTable.xeGrid;
14
+ const $xeGantt = $xeTable.xeGantt;
15
+ const $xeGGWrapper = $xeGrid || $xeGantt;
13
16
  let menuMethods = {};
14
17
  let menuPrivateMethods = {};
15
18
  /**
@@ -32,7 +35,10 @@ hooks.add('tableMenuModule', {
32
35
  if (!visibleMethod || visibleMethod(params)) {
33
36
  evnt.preventDefault();
34
37
  $xeTable.updateZindex();
35
- const el = refElem.value;
38
+ const el = $xeGGWrapper ? $xeGGWrapper.getRefMaps().refElem.value : refElem.value;
39
+ if (!el) {
40
+ return;
41
+ }
36
42
  const tableRect = el.getBoundingClientRect();
37
43
  const { scrollTop, scrollLeft, visibleHeight, visibleWidth } = getDomNode();
38
44
  let top = evnt.clientY - tableRect.y;
@@ -382,11 +382,9 @@ export const Cell = {
382
382
  const tableReactData = $table.reactData;
383
383
  const tableInternalData = $table.internalData;
384
384
  const { isRowGroupStatus } = tableReactData;
385
- const { computeEditOpts } = $table.getComputeMaps();
386
385
  const { editConfig } = tableProps;
387
- const editOpts = computeEditOpts.value;
388
- const { field, slots, editRender, cellRender, rowGroupNode, aggFunc } = column;
389
- const renderOpts = editConfig && isEnableConf(editOpts) && editRender ? editRender : cellRender;
386
+ const { field, slots, editRender, cellRender, rowGroupNode, aggFunc, formatter } = column;
387
+ const renderOpts = editConfig && isEnableConf(editRender) ? editRender : (isEnableConf(cellRender) ? cellRender : null);
390
388
  const defaultSlot = slots ? slots.default : null;
391
389
  const gcSlot = slots ? (slots.groupContent || slots['group-content']) : null;
392
390
  let cellValue = '';
@@ -448,7 +446,8 @@ export const Cell = {
448
446
  if (defaultSlot) {
449
447
  return renderCellBaseVNs(params, $table.callSlot(defaultSlot, params));
450
448
  }
451
- if (renderOpts) {
449
+ // formatter > (renderTableCell | renderTableDefault)
450
+ if (renderOpts && !formatter) {
452
451
  const compConf = renderer.get(renderOpts.name);
453
452
  if (compConf) {
454
453
  const rtCell = compConf.renderTableCell || compConf.renderCell;
@@ -7385,11 +7385,12 @@ export default defineVxeComponent({
7385
7385
  }
7386
7386
  else {
7387
7387
  if (!getEventTargetNode(evnt, document.body, 'vxe-table--ignore-clear').flag) {
7388
- tablePrivateMethods.preventEvent(evnt, 'event.clearCustom', {}, () => {
7389
- if ($xeTable.closeCustom) {
7388
+ if (customStore.visible && $xeTable.closeCustom) {
7389
+ tablePrivateMethods.preventEvent(evnt, 'event.clearCustom', {}, () => {
7390
7390
  $xeTable.closeCustom();
7391
- }
7392
- });
7391
+ $xeTable.dispatchEvent('custom', { type: 'close' }, evnt);
7392
+ });
7393
+ }
7393
7394
  }
7394
7395
  }
7395
7396
  }
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.17.1";
3
+ export const version = "4.17.2";
4
4
  VxeUI.version = version;
5
5
  VxeUI.tableVersion = version;
6
6
  VxeUI.setConfig({
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.17.1"}`;
3
+ const version = `table v${"4.17.2"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
package/lib/index.umd.js CHANGED
@@ -3141,7 +3141,7 @@ function eqEmptyValue(cellValue) {
3141
3141
  ;// ./packages/ui/index.ts
3142
3142
 
3143
3143
 
3144
- const version = "4.17.1";
3144
+ const version = "4.17.2";
3145
3145
  core_.VxeUI.version = version;
3146
3146
  core_.VxeUI.tableVersion = version;
3147
3147
  core_.VxeUI.setConfig({
@@ -3653,7 +3653,7 @@ var esnext_iterator_some = __webpack_require__(7550);
3653
3653
  const {
3654
3654
  log: log_log
3655
3655
  } = core_.VxeUI;
3656
- const log_version = `table v${"4.17.1"}`;
3656
+ const log_version = `table v${"4.17.2"}`;
3657
3657
  const warnLog = log_log.create('warn', log_version);
3658
3658
  const errLog = log_log.create('error', log_version);
3659
3659
  ;// ./packages/table/src/columnInfo.ts
@@ -5482,22 +5482,19 @@ const Cell = {
5482
5482
  const {
5483
5483
  isRowGroupStatus
5484
5484
  } = tableReactData;
5485
- const {
5486
- computeEditOpts
5487
- } = $table.getComputeMaps();
5488
5485
  const {
5489
5486
  editConfig
5490
5487
  } = tableProps;
5491
- const editOpts = computeEditOpts.value;
5492
5488
  const {
5493
5489
  field,
5494
5490
  slots,
5495
5491
  editRender,
5496
5492
  cellRender,
5497
5493
  rowGroupNode,
5498
- aggFunc
5494
+ aggFunc,
5495
+ formatter
5499
5496
  } = column;
5500
- const renderOpts = editConfig && isEnableConf(editOpts) && editRender ? editRender : cellRender;
5497
+ const renderOpts = editConfig && isEnableConf(editRender) ? editRender : isEnableConf(cellRender) ? cellRender : null;
5501
5498
  const defaultSlot = slots ? slots.default : null;
5502
5499
  const gcSlot = slots ? slots.groupContent || slots['group-content'] : null;
5503
5500
  let cellValue = '';
@@ -5572,7 +5569,8 @@ const Cell = {
5572
5569
  if (defaultSlot) {
5573
5570
  return renderCellBaseVNs(params, $table.callSlot(defaultSlot, params));
5574
5571
  }
5575
- if (renderOpts) {
5572
+ // formatter > (renderTableCell | renderTableDefault)
5573
+ if (renderOpts && !formatter) {
5576
5574
  const compConf = cell_renderer.get(renderOpts.name);
5577
5575
  if (compConf) {
5578
5576
  const rtCell = compConf.renderTableCell || compConf.renderCell;
@@ -9399,6 +9397,7 @@ function panel_createInternalData() {
9399
9397
  $xeTable.saveCustom();
9400
9398
  $xeTable.closeCustom();
9401
9399
  $xeTable.emitCustomEvent('confirm', $event);
9400
+ $xeTable.emitCustomEvent('close', $event);
9402
9401
  };
9403
9402
  const cancelCloseEvent = ({
9404
9403
  $event
@@ -9412,11 +9411,13 @@ function panel_createInternalData() {
9412
9411
  $xeTable.cancelCustom();
9413
9412
  $xeTable.closeCustom();
9414
9413
  $xeTable.emitCustomEvent('cancel', $event);
9414
+ $xeTable.emitCustomEvent('close', $event);
9415
9415
  };
9416
9416
  const handleResetCustomEvent = evnt => {
9417
9417
  $xeTable.resetCustom(true);
9418
9418
  $xeTable.closeCustom();
9419
9419
  $xeTable.emitCustomEvent('reset', evnt);
9420
+ $xeTable.emitCustomEvent('close', evnt);
9420
9421
  };
9421
9422
  const resetCustomEvent = ({
9422
9423
  $event
@@ -12186,6 +12187,9 @@ menu_hook_hooks.add('tableMenuModule', {
12186
12187
  computeIsContentMenu,
12187
12188
  computeMenuOpts
12188
12189
  } = $xeTable.getComputeMaps();
12190
+ const $xeGrid = $xeTable.xeGrid;
12191
+ const $xeGantt = $xeTable.xeGantt;
12192
+ const $xeGGWrapper = $xeGrid || $xeGantt;
12189
12193
  let menuMethods = {};
12190
12194
  let menuPrivateMethods = {};
12191
12195
  /**
@@ -12215,7 +12219,10 @@ menu_hook_hooks.add('tableMenuModule', {
12215
12219
  if (!visibleMethod || visibleMethod(params)) {
12216
12220
  evnt.preventDefault();
12217
12221
  $xeTable.updateZindex();
12218
- const el = refElem.value;
12222
+ const el = $xeGGWrapper ? $xeGGWrapper.getRefMaps().refElem.value : refElem.value;
12223
+ if (!el) {
12224
+ return;
12225
+ }
12219
12226
  const tableRect = el.getBoundingClientRect();
12220
12227
  const {
12221
12228
  scrollTop,
@@ -17028,7 +17035,7 @@ validator_hook_hooks.add('tableValidatorModule', {
17028
17035
 
17029
17036
 
17030
17037
 
17031
- const tableCustomMethodKeys = ['openCustom', 'closeCustom', 'toggleCustom', 'saveCustom', 'cancelCustom', 'resetCustom', 'toggleCustomAllCheckbox', 'setCustomAllCheckbox'];
17038
+ const tableCustomMethodKeys = ['openCustom', 'closeCustom', 'getCustomVisible', 'toggleCustom', 'saveCustom', 'cancelCustom', 'resetCustom', 'toggleCustomAllCheckbox', 'setCustomAllCheckbox'];
17032
17039
  core_.VxeUI.hooks.add('tableCustomModule', {
17033
17040
  setupTable($xeTable) {
17034
17041
  const {
@@ -17042,7 +17049,6 @@ core_.VxeUI.hooks.add('tableCustomModule', {
17042
17049
  const {
17043
17050
  refElem
17044
17051
  } = $xeTable.getRefMaps();
17045
- const $xeGrid = $xeTable.xeGrid;
17046
17052
  const $xeGantt = $xeTable.xeGantt;
17047
17053
  const calcMaxHeight = () => {
17048
17054
  const {
@@ -17395,8 +17401,7 @@ core_.VxeUI.hooks.add('tableCustomModule', {
17395
17401
  })) && (column.renderVisible || column.halfVisible));
17396
17402
  };
17397
17403
  const emitCustomEvent = (type, evnt) => {
17398
- const comp = $xeGrid || $xeGantt || $xeTable;
17399
- comp.dispatchEvent('custom', {
17404
+ $xeTable.dispatchEvent('custom', {
17400
17405
  type
17401
17406
  }, evnt);
17402
17407
  };
@@ -19568,7 +19573,7 @@ if(tableFilter){if(getEventTargetNode(evnt,el,'vxe-cell--filter').flag){// 如
19568
19573
  }else{if(!getEventTargetNode(evnt,document.body,'vxe-table--ignore-clear').flag){tablePrivateMethods.preventEvent(evnt,'event.clearFilter',internalData._currFilterParams,tableMethods.closeFilter);}}}// 自定义列
19569
19574
  if(tableCustom){if(customStore.btnEl===evnt.target||getEventTargetNode(evnt,document.body,'vxe-toolbar-custom-target').flag){// 如果点击了自定义列按钮
19570
19575
  }else if(getEventTargetNode(evnt,tableCustom.getRefMaps().refElem.value).flag){// 如果点击自定义列容器
19571
- }else{if(!getEventTargetNode(evnt,document.body,'vxe-table--ignore-clear').flag){tablePrivateMethods.preventEvent(evnt,'event.clearCustom',{},()=>{if($xeTable.closeCustom){$xeTable.closeCustom();}});}}}// 如果已激活了编辑状态
19576
+ }else{if(!getEventTargetNode(evnt,document.body,'vxe-table--ignore-clear').flag){if(customStore.visible&&$xeTable.closeCustom){tablePrivateMethods.preventEvent(evnt,'event.clearCustom',{},()=>{$xeTable.closeCustom();$xeTable.dispatchEvent('custom',{type:'close'},evnt);});}}}}// 如果已激活了编辑状态
19572
19577
  if(actived.row){if(!(editOpts.autoClear===false)){// 如果是激活状态,点击了单元格之外
19573
19578
  const cell=actived.args.cell;if(!cell||!getEventTargetNode(evnt,cell).flag){if($validTooltip&&getEventTargetNode(evnt,$validTooltip.$el).flag){// 如果是激活状态,且点击了校验提示框
19574
19579
  }else if(!internalData._lastCallTime||internalData._lastCallTime+50<Date.now()){// 如果是激活状态,点击了单元格之外